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