黃靈
(常德市無線電管理處,湖南常德 417000)
基于多核CPU的軟件無線電平臺研發(fā)及應用技術(shù)研究
黃靈
(常德市無線電管理處,湖南常德 417000)
隨著信息技術(shù)的不斷快速發(fā)展,多核CPU無論是在運行速度上,還是在數(shù)據(jù)處理的復雜程度上,都要遠遠高于以往的CPU系統(tǒng)。本文對基于多核CPU的軟件無線電平臺進行了較為詳細的分析,在深入分析多核CPU相關(guān)原理的基礎(chǔ)之上,進而分析了整個軟件無線電平臺的研發(fā)與應用。
多核CPU 軟件無線電平臺 研發(fā)及應用技術(shù)
隨著我國國民經(jīng)濟的持續(xù)較快發(fā)展,信息技術(shù)在很多行業(yè)都得到了廣泛的應用。其中,軟件無線電平臺作為一個新興技術(shù),其發(fā)展?jié)摿Σ豢晒懒?。因此,本文在深入分析多核CPU的基礎(chǔ)之上,將多核CPU的相關(guān)原理融入到軟件無線電平臺的研發(fā)與應用中,希望能夠進一步促進我國信息技術(shù)的不斷發(fā)展。
提到多核CPU,就不得不對全球最大的CPU生產(chǎn)廠家——intel進行分析。對于計算機來說,CPU的運行速度直接決定了其數(shù)據(jù)的處理能力,想要提升CPU的運行速度,可以采取兩種方式:(1)增加單位面積CPU的數(shù)據(jù)處理能力;(2)采取并行處理模式,在此基礎(chǔ)上,多核CPU便應運而生了。
軟件無線電平臺的設(shè)計目的,可以簡單概括為:實現(xiàn)模擬信號的數(shù)字化。軟件無線電平臺之所以能夠?qū)崿F(xiàn)模擬信號的數(shù)字化,主要在于其開放性與通用性。軟件無線電平臺主要由三大部分構(gòu)成:ADC、DAC變換器以及射頻模擬前端。除此之外,一些更加先進的軟件無線電平臺還包括高速數(shù)字信號處理單元這一元件。對于軟件無線電平臺來說,最為關(guān)鍵的元件為DAC變換器和ADC,這兩大元件直接承擔了軟件無線電平臺的模擬信號數(shù)字化任務。
本文分析的軟件無線電平臺,是基于多核CPU的SORA平臺。SORA平臺是目前使用較多的軟件無線電平臺,不僅能夠依托商用個人電腦,而且能夠?qū)崿F(xiàn)可編程化。除此之外,SORA平臺既具備一般軟件無線電平臺靈活性、開放性和通用性的特點,又具備基于硬件軟件無線電平臺的高性能特征。
3.1 SORA平臺架構(gòu)
無論哪種軟件無線電平臺,其平臺架構(gòu)是最重要的研究內(nèi)容,SORA平臺也不例外。SORA平臺由兩大主要部分構(gòu)成:硬件架構(gòu)和軟件架構(gòu)。
(1)硬件架構(gòu)。SORA平臺作為一種基于多核CPU的軟件無線電平臺,其硬件設(shè)計的方式為模塊化設(shè)計。簡而言之,就是將射頻控制電路板(Radio Control Board,RCB),通過射頻轉(zhuǎn)接板(Radio Adaptor Board,RAB)連接不同的射頻前端(Radio Frontend,RF)。
從以上分析能夠看出:SORA平臺的硬件關(guān)鍵在于射頻控制板。射頻控制板不僅能夠充當主機和數(shù)字信號之間的傳輸連接,而且能夠形成一個較為獨特的緩沖區(qū)域。該緩沖區(qū)域能夠有效減少甚至消除普通基于多核CPU的軟件無線電平臺存在的數(shù)據(jù)傳輸延遲抖動的問題。
(2)軟件架構(gòu)。相比硬件架構(gòu),SORA平臺的軟件架構(gòu)更具特點。顧名思義,基于多核CPU的軟件無線電平臺,其操作應該依托商用PC,SORA平臺也不例外。SORA平臺的軟件架構(gòu)依托于windows操作系統(tǒng),同時在編程方面,由于很好地滿足了用戶的無線通訊協(xié)議,因此,不僅構(gòu)建了一種靈活、便捷的編程環(huán)境,而且使用戶實現(xiàn)了MAC層的相關(guān)功能。
3.2 多核流水線處理技術(shù)
SORA平臺作為一個有代表性的基于多核CPU的軟件無線電平臺,其必然具備多核CPU與軟件無線電平臺的兩大優(yōu)勢,其中,多核流水線處理技術(shù)就是其眾多技術(shù)優(yōu)勢中具有代表性的一大優(yōu)勢。
之所以要采用多核流水線處理技術(shù),原因在于,很多基于多核CPU的軟件無線電平臺,必須要有一些高速的無線通信協(xié)議,而在這種高速無線通信協(xié)議的條件下,單個CPU核心的計算能力仍然無法滿足物理層的計算需求。SORA平臺作為一個具有代表性的基于多核CPU的軟件無線電平臺,其必然要利用當代CPU中多核心的特性,利用多個CPU核心的并行計算,從而達到加快處理速度的目的。不僅如此,多個CPU核心的并行計算還能夠滿足物理層信號處理的計算需求。因此,這種多核技術(shù)應該是可擴展的。與此同時,由于軟件無線電平臺信號處理算法的復雜度會隨著無線技術(shù)的發(fā)展而呈現(xiàn)出越來越復雜的狀態(tài),這就要求其必須要利用多核心、多處理器以及多計算機進行并行計算才能更好地滿足物理層算法的計算需求。
所謂的多核流水線處理技術(shù),可以概括為通過多個模塊的協(xié)同配合,從而實現(xiàn)對相關(guān)物理層進行信號處理。多個模塊處于一種流水線式的信號處理狀態(tài),由于不同模塊具有不同的數(shù)據(jù)類型和數(shù)據(jù)儲存量,因此其信息處理速度也不盡相同。
SORA平臺所采用的多核流水線處理技術(shù),其調(diào)度方式為靜態(tài)調(diào)度。之所以選擇靜態(tài)的調(diào)度方式,主要原因在于:SORA平臺整體的數(shù)據(jù)流執(zhí)行為一個靜態(tài)的過程,加上整個軟件無線電平臺采用的是一個多模塊的操作模式,因此,多核流水線處理技術(shù)可以簡要概括為:首先,對相關(guān)模塊進行分類,按照執(zhí)行模式將其分為靜態(tài)和動態(tài);然后,確定分類后的模塊是否處于可調(diào)度狀態(tài);第三,對SORA平臺的數(shù)據(jù)流進行分割;最后,將分割后的各子數(shù)據(jù)流分別分配到多核CPU上,從而完成了整個模擬數(shù)字的信號化處理。
多核流水線處理技術(shù)采用靜態(tài)調(diào)度模式的優(yōu)勢在于:在進行不同子數(shù)據(jù)流的多核分配過程中,由于同步緩沖區(qū)的存在,會降低整個軟件無線電平臺的運行速度,而當實行靜態(tài)調(diào)度時,相鄰的子數(shù)據(jù)流會自動的被分配到不同的CPU核心,這樣就有效減少了同步緩沖區(qū)的存在數(shù)量,從而達到既降低同步操作帶來的額外開銷,同時又提升了SORA平臺的整體運行效率。
對于軟件無線電平臺,尤其是基于多核CPU的軟件無線電平臺,其實時性支持十分重要。
軟件無線電平臺在實時性的保證上,主要依靠嚴格的資源計算和分配,基于多核CPU的軟件無線電平臺同樣如此,軟件無線電平臺的實時性通過實時操作系統(tǒng)來實現(xiàn)。實時操作系統(tǒng)按照任務的難易程度,將平臺內(nèi)的所有資源調(diào)動起來,從而達到在最短時間內(nèi)完成最高效的任務調(diào)度。
相反,對于非實時操作系統(tǒng)來說,由于整個平臺內(nèi)部存在著上百個任務同時運行,而且非實時操作系統(tǒng)的資源配置方式較為簡對于基于多核CPU的軟件無線電平臺來說,無論是實時性操作系統(tǒng),還是非實時性操作系統(tǒng),想要保證運行速度,就要優(yōu)化整個平臺的任務分配。通常的方法是按照任務的優(yōu)先等級進行劃分,即緊迫型的任務能夠優(yōu)先進入系統(tǒng),進而優(yōu)先得到處理?;谝陨锨闆r,基于多核CPU的軟件無線電平臺引入了最高優(yōu)先權(quán)調(diào)度算法。
單,即簡單按照任務的時間長度進行區(qū)間劃分,非實時操作系統(tǒng)將各個時間區(qū)間分配到不同的數(shù)據(jù)處理任務當中。由于劃分方式較為簡單,因此容易出現(xiàn)任務暫停的情況,即如果某一時間區(qū)間已經(jīng)結(jié)束,但是相應的任務還沒有完成,那么該作業(yè)就會被暫停,從而放棄CPU,而系統(tǒng)與此同時就會將CPU分配給下一個任務。
所謂的最高優(yōu)先權(quán)調(diào)度算法,指的是:首先,系統(tǒng)將CPU分配到最高優(yōu)先權(quán)的任務中;然后,在一段時間內(nèi),這一任務就是系統(tǒng)所有任務中優(yōu)先權(quán)最高的;這時,如果出現(xiàn)一個比現(xiàn)有任務優(yōu)先權(quán)更高的任務,那么相應的調(diào)度程序就會暫停目前正在運行的任務,與此同時,將CPU分配給新的更具優(yōu)先權(quán)的任務。通過以上分析,能夠看出:優(yōu)先權(quán)調(diào)度算法的優(yōu)勢在于,在所有的任務當中,CPU的分配能夠優(yōu)先照顧到更加緊迫的任務。因此,優(yōu)先權(quán)調(diào)度算法通常運用在較為嚴格的軟件無線電平臺當中。除此之外,優(yōu)先權(quán)調(diào)度算法還運用在一些對性能要求較高的批處理以及分時系統(tǒng)當中。
當前,很多基于多核CPU的軟件無線電平臺采用的都是優(yōu)先權(quán)調(diào)度算法,其中,Windows操作系統(tǒng)采用的也是這種方法。新的多核CPU以及超線程CPU,內(nèi)部就有超過1個的CPU執(zhí)行體,可以在同一時刻同時運行多個任務。在具有多核處理器的非實時操作系統(tǒng)中,可以將某一些CPU核心分配給無線信號處理任務,使其獨占CPU核心運行,以此保證無線信號處理任務不被其它任務打斷,保證實時性。
綜上所述,對于基于多核CPU的軟件無線電平臺來說,無論是其硬件、軟件構(gòu)造、處理技術(shù)還是調(diào)度模式,都要服務于整個平臺的流暢的信息數(shù)字化過程。因此,在實際的研究當中,相關(guān)技術(shù)人員應該大力加強平臺的研發(fā)與應用研究,特別是要對其處理技術(shù)和調(diào)度模式進行深入分析。隨著我國工業(yè)化、信息化進程的不斷加快,未來基于多核CPU軟件無線電平臺的應用領(lǐng)域必將更加廣泛,這就要求廣大科研人員勇攀高峰,研發(fā)出一些更多更好的基于多核CPU的軟件無線電平臺。
[1]曹鐵軍.軟件無線電技術(shù)研究[D].大連理工大學,2008.
[2]騎志剛.基于軟件無線電的多標準基帶平臺-WCDMA向HSDPA的平滑演[D].上海:上海交通大學,2004.
[3]夏少波,許娥.軟件無線電SDR的關(guān)鍵技術(shù)研究[J].無線通信技,2010(51).
[4]楊小牛,褸才義,徐建良.軟件無線電原理與應用[M].北京:電子工業(yè)出版社,2001:1-7.
[5]鈕心沂,楊義先.軟件無線電技術(shù)與應用[M].北京:北京郵電大學出版社,2000:3-8.
[6]李忠琦.面向軟件無線電的片上網(wǎng)絡關(guān)鍵技術(shù)研究[D].電子科技大學,2009.