李元帥



摘要:文章以雙核SoC、低功耗FPGA芯片和自適應射頻處理前端為核心,構建并實現了一種新型的軟件無線電信號處理硬件平臺,設計了SCA架構的軟件,滿足便攜式寬頻帶無線通信設備對低功耗、高性能、多通信波形加載的應用需求。
關鍵詞:軟件無線電;SoC; SCA
隨著大規模集成電路技術的不斷進步,軟件無線電作為一種接近理想化的通信技術越來越成熟。軟件無線電的核心是把硬件作為無線通信的基本平臺,把盡可能多的無線通信功能用軟件實現[1],其決定性的部分在于通用高速數字信號處理能力和中頻信號的高速A/D,D/A變換,這之后整個處理都可用通用可編程數字器件特別是軟件來實現。針對便攜設備的嵌入式軟件無線電信號處理平臺主要受到功耗、體積和成本的制約,因此,結合近期集成電路技術的發展,利用新的處理器開發新的平臺以降低功耗、減少體積是軟件無線電便攜設備的必經之路。本文結合TI公司的低功耗多核雙核系統級芯片(System of Chip,SoC)OMAP138和xilinx公司的低功耗現場可編程門陣列(Field Programmable GateArray,FPGA)芯片,設計了滿足寬頻段便攜無線通信設備需求的信號處理平臺及軟件架構。
1 軟件無線電信號處理平臺方案設計
傳統的寬頻段軟件無線電平臺為了滿足信號處理能力和多波形軟件加載能力,一般需要獨立的CPU芯片、FPGA芯片、DSP芯片和AD/DA中頻前端處理電路來實現,造成在體積、功耗、成本等方面一直較高,在便攜設備上一般難以適用。隨著半導體工藝的發展,多核集成芯片已經相當成熟,便攜設備的軟件無線電設備成為可能。
按照設計需求,無線便攜設備需要支持80?500 MHz的頻段,在射頻前端混頻到56 MHz的中頻信號后,由本平臺完成中頻采樣和信號處理工作。工作帶寬支持窄帶通信200 kHz帶寬以及寬帶通信20 MHz帶寬的自動切換,支持多種通信波形的動態加載,因此,需要考慮信號處理能力與功耗之間的平衡以及AD/DA的高速采樣能力。該設計以低功耗SoC芯片OMAPL138為核心,以低功耗FPGA芯片XC7A100T為上下變頻協處理器,構建低功耗硬件平臺。整體設計如圖1所示,接收通路中,中頻信號經過中頻調理濾波處理后模數轉換采樣,經FPGA的數字下變頻到基帶信號,送到OMAP L138的DSP處理核心進行解調解碼,然后送到ARM內核進行協議解析,識別語音或數據后送到語音處理電路或送到數據顯示終端。
發射流程與接收流程反向,信息經數字信號處理后轉模擬中頻輸出。
2 信號處理平臺的硬件系統設計
2.1 控制及信號處理部分設計
控制及信號處理部分以雙核嵌入式處理器OMAP L138為核心,設計了OMAP L138的周邊系統,包括Flash存儲、雙倍內存(Double Data Rate,DDR)內存、以太網接口以及調試串口等,OMAP L138的硬件系統設計如圖2所示。
2.1.1 核心處理器OMAP L138的應用
核心處理器采用TI的達芬奇(Davinci)架構的雙核嵌入式處理器OMAP L138。OMAP L138是理想的便攜式、低功耗和高性能適用于通信算法的多核SoC集成了ARM內核的微處理器和適用于通信算法處理的DSP內核及通信算法中常用的維特比譯碼(Viterbi Decoder Coprocessor,VCP)和Turbo譯碼協處理器(Turbo Decoder Coprocessor,TCP),最大功耗只有840 MW,通過對定時不用的功能的凍結,可以進一步降低運行功耗,提升便攜設備的運行時間。
其中的ARM內核兼容ARM926ET-S系列,其時鐘頻率最高500 MHz,主要用于進行設備的集中控制處理,完成分組網絡協議處理,數據話音業務的處理功能以及LCD屏的顯示控制等。
內嵌的DSP內核兼容TI的DSP C674x系列的高性能浮點DSP,采用C674TM內核,其中的VCP和VCP能夠大大提升無線通信算法的執行效率,簡化程序設計。DSP內核主要完成基帶信號進行信號調制解調、信道編解碼、信號檢測估計、收發同步抗干擾處理等復雜算法功能。
OMAP L138通過內部的交換中心實現外部接口與ARM內核和DSP內核之間以及ARM與DSP兩個內核之間的交互。
本設計通過GMII接口實現以太網接口,通過DDR接口擴展1 GB的運行內存,通過SPI接口擴展512 MB的Flash存儲器,滿足多波形算法存儲空間需求;通過多通道音頻串口(Multichannel Audio Serial Port,McASP)實現語音AD/DA的通道,利用LCD接口外掛OLED顯示屏,與FPGA的接口則利用外部存儲接口來實現。
2.1.2 OMAP L138最小系統設計
OMAP L138的最小系統包括外圍的電源、時鐘、DDR內存、Flash存儲器等。
電源控制是低功耗設計的重要組成部分,本設計通過高集成電源穩壓芯片TPS65070實現OMAP 138以及外圍電路的電源供給和控制。TPS65070具有3路DC-DC轉換器、2個低壓差線性穩壓器(Low Dropout Regulator,LDO);具備IIC電源管理接口和充電管理接口,在電源通路的管理下可以為移動設備的鋰電池進行充電。3個高效的降壓轉換器可以提供核心電壓、內存及10口的電壓;在輕載的時候可通過調整PWM頻率使得降壓轉換器進入低功耗模式;如果對低噪要求較高,可以通過IIC接口對芯片編程使芯片強制工作在定頻PWM模式下。此芯片還提供了 2路通用LDO電源,可以提供200 mA的輸出電流。LDO口的輸入電壓可以由DC/DC電源或電池提供,LDO具有相對DC/DC電源更低的電源噪聲,用于音頻處理等對噪聲敏感的電路供電。
時鐘部分采用外部貼片晶振提供24 MHz的源時鐘,通過內部DLL倍頻后作為ARM內核和DSP內核的運行時鐘以及作為DDR接口時鐘。
DDR芯片選用Micron公司的MT46H64M16-6L-IT,具備DDR接口和SDRAM接口,可作為先進先出(First Input FirstOutput,FIFO)應用。FPGA可以通過SDRAM存儲器控制器訪問控制訪問存儲空間;OMAP L138通過DDR2接口控制器來訪問控制存儲空間,從而實現二者之間的快速數據交互,滿足多路通信數據交互需求,減少FPGA內部存儲器資源的消耗。
Flash程序存儲器采用ST的低功耗小體積SPI接口的非遺失存儲器M25P128,封裝兼容容量256 MB?1 GB的同系列存儲器,方便擴展和更新迭代。
2.2 中頻前端設計
中頻前端處理包括中頻收通路處理和中頻發通路處理。中頻收通路處理主要作用是對射頻前端一次變頻處理后的中頻信號進行模擬濾波處理、低噪聲放大、AD采樣后,由FPGA進行數字濾波和二次變頻,轉化成數字基帶信號,送到控制及信號處理系統進行解調和協議解析。中頻發通路
正好相反,把數字基帶信號在FPGA內上變頻到中頻信號,然后送DA芯片進行模擬化后通過放大濾波送給射頻前端進一步變頻處理成射頻信號。
中頻收發通路采用多通道聲表濾波器在200 kHz窄帶和20 MHz寬帶可切換模式,滿足寬窄帶無線同通道的不同業務需求。聲表濾波器相較于傳統的LC濾波器,具有體積小、重量輕、傳輸損耗小、阻抗誤差小等優點,能實現電子器件的超小型化設計,靈活性高,同時具有很好的一致性、極高的溫度穩定性,動態范圍也很大,頻率選擇性優良。利用聲表濾波器這些優良特性實現對收發信號的帶外噪聲抑制,提高中頻接收的靈敏度和發射信號的帶外輻射。
FPGA采用XC7A100T完成收發通路的數字上下變頻。XC7A100T針對低功耗應用進行優化,與Spartan-6系列性相比,性能提高30%,成本降低35%,功耗降低50%,占用面積縮減50%,能滿足便攜軟件無線電通信設備對大小、重量、功耗和成本的要求。
3 軟件設計
軟件無線電的設計思想需要在硬件平臺資源能夠支撐算法需求的同時,軟件架構也要能夠對多種無線通信算法的靈活支持,必然需要標準化的開發架構,方便的軟件接口。因此,軟件設計上采用服務組件框架(Service Component Architecture,SCA)架構進行設計。設計分層如圖3所示。
操作系統選擇高實時性的VxWorks,驅動軟件主要包括外部的LCD接口、USB接口以及內部的DDR接口、SPI接口、McASP 接口等。
第二層的硬件抽象層的主要功能是封裝底層驅動、屏蔽操作系統,為上層提供統一接口并實現數據傳輸,根據不同的計算單元可分為通用目標處理器(General Purpose Processor,GPP)通用微處理器硬件抽象層和FPGA硬件抽象層。
3.1 GPP內核硬件抽象層
GPP硬件抽象層通常指能夠在支持SCA定義的中間件的計算單元中運行的硬件抽象層[2],這里主要指的是OMAPL138中ARM處理器的硬件抽象層。它由設備模塊、端口模塊、映射模塊和驅動適配模塊組成,軟件框架如圖4所示。
3.1.1設備模塊
GPP硬件抽象層實現了核心框架的設備接口,由核心框架統一管理。設備模塊主要功能就是提供GPP硬件抽象層被SCA核心框架管理時所需的方法和接口,以及中間件初始化、注冊、服務等功能。
3.1.2 端口模塊
端口模塊主要實現標準所規定的接口,是GPP硬件抽象層核心功能的實現部分[3]。它為上層組件提供了讀取數據、寫入數據、配置映射等功能方法。
該模塊與映射模塊以及驅動適配模塊相關聯,其先訪問映射模塊獲取相應的地址映射信息、信號量信息和標志信息,然后據此調用驅動模塊完成具體的數據收發功能。
3.1.3 映射模塊
映射模塊提供與組件讀寫操作相關的映射信息的增、刪、改、查等功能。該模塊設計了地址映射表、信號量映射表和標志映射表等,用于存儲硬件抽象層所需的所有映射信息。
3.1.4 驅動適配模塊
驅動適配模塊是GPP硬件抽象層與底層驅動接口的交互部分,其主要功能是對GPP硬件抽象層所需的底層驅動進行封裝。
3.2 FPGA硬件抽象層
FPGA硬件抽象層的主要功能是封裝底層驅動,提供統一接口供算法波形組件使用,提高算法波形組件的可移植性。它由驅動適配模塊、接收管理模塊、發送管理模塊、接收端口和發送端口組成,軟件框架如圖5所示。
3.2.1 驅動適配模塊
驅動適配模塊用于封裝驅動接口,使FPGA抽象層適配不同的底層傳輸方式。它接收底層驅動信號并將其轉換成硬件抽象層收發信號。
3.2.2 接收管理模塊
接收管理模塊是將由驅動適配模塊適配后的接收信號作進一步解析,轉換成接收總線供接收端口使用。
3.2.3 發送管理模塊
發送管理模塊用于分發FPGA硬件抽象層的發送數據,其主要功能是:根據發送機制響應發送請求將算法組件的數據通過底層驅動發送到GPP側。
3.2.4 接收端口
接收端口的主要功能是存儲已接收到的數據并將其轉發到算法波形組件中。首先,根據硬件抽象層運行時鐘將接收到的數據寫入到FIFO中,然后給波形組件接收信號,最后根據波形組件運行時鐘從FIFO中讀出數據并傳送到波形組件中。
3.2.5發送端口
發送端口的主要功能是存儲波形組件的待發送數據并由發送管理模塊分發發送數據。
應用服務層主要包括通信控制軟件、通信算法軟件和人機接口服務。通信控制軟件和通信算法軟件作為組件通過調用硬件抽象層實現與底層硬件的完全隔離,保持算法軟件、控制軟件和服務軟件的獨立性。人機接口服務軟件由初始化模塊、按鍵控制模塊和菜單顯示模塊組成。
整個軟件按照小型化SCA架構剪裁簡化,以方便波形組件開發和加載,同時滿足便攜設備的資源要求。
4 結語
結合新的SoC技術,實現了便攜式無線通信設備中頻信號處理平臺設計和軟件架構設計,具備了軟件無線電性能和SCA標準的軟件靈活性。本設計在某型便攜設備中得到實際應用,相較于前一代設備在運算性能上提升一倍,功耗卻降低了 1/3,同時實現了3種算法波形的快速切換和加載,有效提升了設備性能。
[參考文獻]
[1]楊小牛.軟件無線電原理與應用[M].北京:電子工業出版社,2014.
[2]周新.SCA在通信系統中的應用研究[D].成都:電子科技大學,2014.
[3]趙秋明.基于SCA的小型化核心框架研究[J].計算機測量與控制,2010(5):1145-1147.