基帶芯片及其數(shù)據(jù)處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,尤其涉及一種基帶芯片及其數(shù)據(jù)處理方法。
【背景技術(shù)】
[0002]現(xiàn)有的通信系統(tǒng)中,通信終端的基帶芯片通常由一個協(xié)議處理器,一個數(shù)字信號處理(DSP,Digital Signal Processing)內(nèi)核,加上多個硬件加速器組成,硬件加速器通常與DSP內(nèi)核緊密耦合。例如,請參考圖1所示,基帶處理架構(gòu)以DSP內(nèi)核為控制核心,所有的硬件加速器21?2n,直接內(nèi)存存取(DMA, Direct Memory Access)都需要由DSP內(nèi)核配置后才能工作,并且數(shù)據(jù)在所有的硬件加速器和DSP內(nèi)核、DMA之間的流動,也都需要DSP內(nèi)核來進行配置。
[0003]在數(shù)據(jù)處理過程中,當需要某個硬件加速器處理某些數(shù)據(jù)時,由DSP內(nèi)核通過總線訪問該硬件加速器的寄存器,配置處理參數(shù),啟動該硬件加速器進行處理;當硬件加速器完成處理后,通過中斷提請DSP內(nèi)核處理其完成的輸出。
[0004]然而,現(xiàn)有的基帶芯片架構(gòu)由于所有的硬件加速器都需要DSP內(nèi)核配合才能工作,這就使得DSP內(nèi)核的處理負荷較大。并且還存在以下問題:
[0005]DSP內(nèi)核需要有很高的資源配置,包括高的工作頻率和大容量的本地存儲器(Memory ),這些都帶來了高的能耗。
[0006]由于數(shù)據(jù)的處理和流動均需要DSP內(nèi)核的介入,當多個硬件加速器同時需要DSP內(nèi)核介入時,DSP內(nèi)核只能串行處理,這就使得基帶芯片實時性能下降。
[0007]現(xiàn)有的基帶芯片架構(gòu)在2G/3G時代尚能滿足需求,但是到了 LTE時代,隨著幀結(jié)構(gòu)的縮短,單位時間內(nèi)需要DSP內(nèi)核進行的中斷處理越來越多,越來越復雜。因為所有的硬件加速器都需要DSP內(nèi)核配合才能工作,這就產(chǎn)生了 DSP內(nèi)核的處理瓶頸。
[0008]DSP內(nèi)核本身帶有很多計算存儲資源,并且工作在很高的頻率上,即使任何一個簡單的中斷都需要把DSP內(nèi)核從正常處理或者睡眠中帶出,這些計算存儲資源產(chǎn)生了額外的耗電。這種強大的DSP內(nèi)核加上周邊“愚蠢”的硬件加速器的結(jié)構(gòu)已經(jīng)導致了 LTE基帶芯片性能的瓶頸和嚴重的發(fā)熱問題。
【發(fā)明內(nèi)容】
[0009]本發(fā)明實施例解決的是現(xiàn)有的基帶芯片架構(gòu)使得數(shù)字信號處理內(nèi)核的處理負荷大,進而導致芯片性能低的問題。
[0010]為解決上述問題,本發(fā)明實施例提供一種基帶芯片,包括:數(shù)字信號處理內(nèi)核、若干硬件加速器和對應(yīng)的控制器、消息網(wǎng)絡(luò)和數(shù)據(jù)網(wǎng)絡(luò);所述數(shù)字信號處理內(nèi)核適于通過所述消息網(wǎng)絡(luò)向控制器傳輸配置消息,所述配置消息用于配置硬件加速器;所述控制器適于通過所述消息網(wǎng)絡(luò)向其他控制器傳輸配置消息;所述數(shù)字信號處理內(nèi)核和硬件加速器適于通過所述數(shù)據(jù)網(wǎng)絡(luò)共享數(shù)據(jù)。
[0011]可選的,所述控制器還適于通過所述消息網(wǎng)絡(luò)向所述數(shù)字信號處理內(nèi)核傳輸通知消息,所述通知消息用于通知所述數(shù)字信號處理內(nèi)核通過所述數(shù)據(jù)網(wǎng)絡(luò)讀取數(shù)據(jù)。
[0012]可選的,所述基帶芯片還包括分別對應(yīng)于所述數(shù)字信號處理內(nèi)核和控制器的若干消息存儲單元;所述數(shù)字信號處理內(nèi)核和控制器適于通過所述消息網(wǎng)絡(luò)向消息存儲單元寫入消息;所述數(shù)字信號處理內(nèi)核和控制器適于從對應(yīng)的消息存儲單元讀取消息。
[0013]可選的,所述基帶芯片還包括消息池,所述數(shù)字信號處理內(nèi)核和控制器適于通過所述消息網(wǎng)絡(luò)訪問所述消息池。
[0014]可選的,所述基帶芯片還包括數(shù)據(jù)池,所述數(shù)字信號處理內(nèi)核和硬件加速器適于通過所述數(shù)據(jù)網(wǎng)絡(luò)訪問所述數(shù)據(jù)池。
[0015]可選的,所述消息網(wǎng)絡(luò)為低速網(wǎng)絡(luò),所述數(shù)據(jù)網(wǎng)絡(luò)為高速網(wǎng)絡(luò)。
[0016]可選的,所述消息網(wǎng)絡(luò)采用總線結(jié)構(gòu)或片上網(wǎng)絡(luò)。
[0017]可選的,所述數(shù)據(jù)網(wǎng)絡(luò)采用總線結(jié)構(gòu)或片上網(wǎng)絡(luò)。
[0018]可選的,所述控制器為微控制單元。
[0019]為解決上述問題,本發(fā)明實施例還提供一種上述基帶芯片的數(shù)據(jù)處理方法,包括:所述數(shù)字信號處理內(nèi)核和第一控制器通過所述消息網(wǎng)絡(luò)傳輸?shù)谝慌渲孟ⅲ凰龅谝豢刂破骰谒龅谝慌渲孟⑴渲脤?yīng)的第一硬件加速器;所述數(shù)字信號處理內(nèi)核和所述第一硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)傳輸?shù)谝粩?shù)據(jù);所述第一硬件加速器處理所述第一數(shù)據(jù)以獲得第二數(shù)據(jù);所述第一控制器和第二控制器通過所述消息網(wǎng)絡(luò)傳輸?shù)诙渲孟?;所述第二控制器基于所述第二配置消息配置對?yīng)的第二硬件加速器;所述第一硬件加速器和所述第二硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)傳輸?shù)诙?shù)據(jù);所述第二硬件加速器處理所述第二數(shù)據(jù)以獲得第三數(shù)據(jù)。
[0020]可選的,所述基帶芯片還包括分別對應(yīng)于所述數(shù)字信號處理內(nèi)核和控制器的若干消息存儲單元;所述數(shù)字信號處理內(nèi)核和第一控制器通過所述消息網(wǎng)絡(luò)傳輸?shù)谝慌渲孟?所述數(shù)字信號處理內(nèi)核通過所述消息網(wǎng)絡(luò)將所述第一配置消息寫入對應(yīng)于所述第一控制器的消息存儲單元;所述第一控制器從對應(yīng)的消息存儲單元讀取所述第一配置消息;所述第一控制器和第二控制器通過所述消息網(wǎng)絡(luò)傳輸?shù)诙渲孟?所述第一控制器通過所述消息網(wǎng)絡(luò)將所述第二配置消息寫入對應(yīng)于所述第二控制器的消息存儲單元;所述第二控制器從對應(yīng)的消息存儲單元讀取所述第二配置消息。
[0021]可選的,所述基帶芯片的數(shù)據(jù)處理方法還包括:通過第一中斷信號喚醒所述第一控制器,所述第一中斷信號由第一定時器產(chǎn)生或者由對應(yīng)于所述第一控制器的消息存儲單元產(chǎn)生或者由所述數(shù)字信號處理內(nèi)核產(chǎn)生;通過第二中斷信號喚醒所述第二控制器,所述第二中斷信號由第二定時器產(chǎn)生或者由對應(yīng)于所述第二控制器的消息存儲單元產(chǎn)生或者由所述第一控制器產(chǎn)生。
[0022]可選的,所述基帶芯片的數(shù)據(jù)處理方法還包括:所述第二控制器通過所述消息網(wǎng)絡(luò)將通知消息寫入對應(yīng)于所述數(shù)字信號處理內(nèi)核的消息存儲單元;所述數(shù)字信號處理內(nèi)核從對應(yīng)的消息存儲單元讀取所述通知消息。
[0023]可選的,所述基帶芯片還包括消息池;所述數(shù)字信號處理內(nèi)核和第一控制器通過所述消息網(wǎng)絡(luò)傳輸?shù)谝慌渲孟?所述數(shù)字信號處理內(nèi)核通過所述消息網(wǎng)絡(luò)將所述第一配置消息寫入所述消息池中對應(yīng)于所述第一控制器的位置;所述第一控制器通過所述消息網(wǎng)絡(luò)從所述消息池中的對應(yīng)位置讀取所述第一配置消息;所述第一控制器和第二控制器通過所述消息網(wǎng)絡(luò)傳輸?shù)诙渲孟?所述第一控制器通過所述消息網(wǎng)絡(luò)將所述第二配置消息寫入所述消息池中對應(yīng)于所述第二控制器的位置;所述第二控制器通過所述消息網(wǎng)絡(luò)從所述消息池中的對應(yīng)位置讀取所述第二配置消息。
[0024]可選的,所述基帶芯片的數(shù)據(jù)處理方法還包括:通過第一中斷信號喚醒所述第一控制器,所述第一中斷信號由第一定時器產(chǎn)生或者由所述數(shù)字信號處理內(nèi)核產(chǎn)生;通過第二中斷信號喚醒所述第二控制器,所述第二中斷信號由第二定時器產(chǎn)生或者由所述第一控制器產(chǎn)生。
[0025]可選的,所述基帶芯片的數(shù)據(jù)處理方法還包括:所述第二控制器通過所述消息網(wǎng)絡(luò)將通知消息寫入所述消息池中對應(yīng)于所述數(shù)字信號處理內(nèi)核的位置;所述數(shù)字信號處理內(nèi)核通過所述消息網(wǎng)絡(luò)從所述消息池中的對應(yīng)位置讀取所述通知消息。
[0026]可選的,所述基帶芯片還包括數(shù)據(jù)池;所述數(shù)字信號處理內(nèi)核和所述第一硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)傳輸?shù)谝粩?shù)據(jù)包括:所述數(shù)字信號處理內(nèi)核通過所述數(shù)據(jù)網(wǎng)絡(luò)將所述第一數(shù)據(jù)寫入數(shù)據(jù)池;所述第一硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)從所述數(shù)據(jù)池中的第一位置讀取所述第一數(shù)據(jù),所述第一位置基于所述第一數(shù)據(jù)在所述數(shù)據(jù)池中的位置信息確定;所述第一硬件加速器和所述第二硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)傳輸?shù)诙?shù)據(jù)包括:所述第一硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)將所述第二數(shù)據(jù)寫入數(shù)據(jù)池;所述第二硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)從所述數(shù)據(jù)池中的第二位置讀取所述第二數(shù)據(jù),所述第二位置基于所述第二數(shù)據(jù)在所述數(shù)據(jù)池中的位置信息確定。
[0027]可選的,所述第一數(shù)據(jù)在所述數(shù)據(jù)池中的位置信息承載于所述第一配置消息中,所述第二數(shù)據(jù)在所述數(shù)據(jù)池中的位置信息承載于所述第二配置消息中。
[0028]可選的,所述基帶芯片的數(shù)據(jù)處理方法還包括:所述第二硬件加速器處理第二數(shù)據(jù)以獲得第三數(shù)據(jù);所述第二硬件加速器通過所述數(shù)據(jù)網(wǎng)絡(luò)將所述第三數(shù)據(jù)寫入數(shù)據(jù)池;所述數(shù)字信號處理內(nèi)核通過所述數(shù)據(jù)網(wǎng)絡(luò)從所述數(shù)據(jù)池中的第三位置讀取所述第三數(shù)據(jù),所述第三位置基于所述第三數(shù)據(jù)在所述數(shù)據(jù)池中的位置信息確定。
[0029]可選的,所述第三數(shù)據(jù)在所述數(shù)據(jù)池中的位置信息承載于通知消息中,所述通知消息由所述第二控制器