基于SOPC技術(shù)的軟件無線電系統(tǒng)研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在軟件無線電的早期實(shí)現(xiàn)方案中多是用DSP和ASIC來完成。然而這種方案有2個(gè)突出的缺點(diǎn):一是系統(tǒng)的速度很難滿足高速動(dòng)態(tài)實(shí)時(shí)數(shù)字信號處理的要求;二是系統(tǒng)的體積大、功耗高。這2個(gè)突出缺點(diǎn)制約了軟件無線電的推廣和應(yīng)用。隨著可編程邏輯器件密度、規(guī)模和速度的快速增長,各個(gè)可編程邏輯器件廠商開始提出自己的SOPC片上可編程系統(tǒng)的軟件和硬件一體化解決方案,為實(shí)現(xiàn)高速數(shù)字信號處理提供了可能。本文運(yùn)用基于FPGA的SOPC技術(shù)構(gòu)建了軟件無線電平臺,極大地提高了數(shù)字信號處理的能力和速度,減少了系統(tǒng)的功耗和體積。
1 軟件無線電的結(jié)構(gòu)
軟件無線電的核心思想是將A/D、D/A盡可能地靠近天線,減少模擬處理的環(huán)節(jié)。在接收端:由天線接收的無線電信號經(jīng)過必要的低噪聲放大后,就直接對其進(jìn)行數(shù)字化(ADC),數(shù)字化后的信號經(jīng)過DSP完成數(shù)字下變頻、數(shù)字濾波、數(shù)字解調(diào)等信號處理任務(wù);在發(fā)射端:需要發(fā)射的基帶信號通過DSP完成數(shù)字調(diào)制、數(shù)字上變頻和數(shù)字濾波等信號處理任務(wù)后,經(jīng)DAC轉(zhuǎn)變?yōu)槟M信號,然后通過功率放大器放大到足夠功率,最后由天線發(fā)射出去。理想的軟件無線電結(jié)構(gòu)如圖1所示。
實(shí)際上,上述的軟件無線電結(jié)構(gòu)是很難實(shí)現(xiàn)的。首先,根據(jù)奈奎斯特采樣定理,A/D的采樣速率至少是其工作帶寬的2倍。例如:對于工作在2 MHz~2 000 MHz的JTRS電臺,其采樣頻率至少要達(dá)到4 GHz。目前A/D器件的采樣頻率很難達(dá)到這個(gè)要求,而且,如果A/D采樣后的大量數(shù)據(jù)流直接交由DSP處理,將給DSP帶來巨大的運(yùn)算壓力。以A/D采樣速率僅為100 MHz的A/D器件為例,DSP每處理1個(gè)采樣信號,大約需要100次運(yùn)算,則總的運(yùn)算速率為100×100 M=104 MIPS。這樣高的運(yùn)算速率,目前的DSP芯片還難以達(dá)到。
針對上述問題,目前最常用的一種解決方案為:基于帶通采樣的寬帶中頻軟件無線電結(jié)構(gòu)。它的主要思想是:把射頻信號通過混頻搬移到中頻再帶通采樣,使得A/D采樣率、輸入帶寬滿足系統(tǒng)要求,同時(shí)在DSP前加數(shù)字下變頻器。
中頻帶通采樣軟件無線電結(jié)構(gòu)采用多次混頻體制,即超外差體制,把工作頻段上的某一感興趣的寬帶射頻信號經(jīng)過放大、混頻和濾波變換到統(tǒng)一的中頻FIF上,最后由A/D轉(zhuǎn)換器對中頻信號進(jìn)行采樣數(shù)字化。它的最大好處就是降低了對A/D采樣速率的要求,使軟件無線電可實(shí)現(xiàn)性更強(qiáng),但是也使得射頻前端復(fù)雜化。
限于目前DSP的處理瓶頸,A/D采樣后的大量數(shù)據(jù)一般先交由數(shù)字下變頻器進(jìn)行一些前期的處理再傳遞給DSP進(jìn)行處理。數(shù)字下變頻器一方面從包含所有信道的寬帶信號中分離出某一用戶窄帶信道,另一方面對分離出的某一用戶通道信號抽取、濾波和降低數(shù)據(jù)速率。數(shù)字下變頻器可采用專用的ASIC芯片,如TI公司生產(chǎn)的GC5016芯片等,也可采用FPGA編程來實(shí)現(xiàn)。與專用的數(shù)字下變頻器件相比,F(xiàn)PGA具有更大的靈活性,不會(huì)過分依賴于硬件,只需對軟件進(jìn)行修改就可以對系統(tǒng)進(jìn)行升級和維護(hù)。
圖2所示為一種典型的帶通采樣的寬帶中頻軟件無線電結(jié)構(gòu)。該設(shè)計(jì)方案中DSP主要完成基帶信號處理(如定時(shí)同步、信道估計(jì)、FFT變換、解交織、編譯碼等)。通用微處理器GPP(General Purpose Processor)一般使用實(shí)時(shí)操作系統(tǒng)RTOS(Real Time Operation System)來進(jìn)行任務(wù)調(diào)度和存儲器管理。
2 軟件無線電的解決方案
本文主要實(shí)現(xiàn)圖2中的高速數(shù)字信號處理部分,數(shù)字信號處理模塊是軟件無線電的核心部分。在圖2中的是高速數(shù)字信號處理部分的一種常用方案,通常是采用分離部件搭建的系統(tǒng)存在體積大、功耗高、成本高、各個(gè)單元之間的數(shù)據(jù)傳輸速率受限等缺點(diǎn)。SOPC方案可解決以上問題,并且還具有極高的靈活性和可擴(kuò)展性。
SOPC技術(shù)是美國Altrea公司于2000年最早提出的。SOPC是一種特殊的嵌入式系統(tǒng):首先,它是系統(tǒng)芯片(SOC),即由單個(gè)芯片完成整個(gè)系統(tǒng)的主要邏輯功能;其次,它是可編程系統(tǒng),具有靈活的設(shè)計(jì)方式,可裁剪、可升級、可擴(kuò)充,并具備軟硬件在系統(tǒng)可編程的功能。它結(jié)合了SOC和FPGA的優(yōu)點(diǎn),具有以下基本特征:至少包含1個(gè)以上的嵌入式處理器IP核;具有小容量片內(nèi)高速RAM資源;豐富的IP核資源可供靈活選擇;有足夠的片上可編程邏輯資源;處理器調(diào)試接口和FPGA編程接口共用或并存;可包含部分可編程模擬電路;單芯片、低功耗[3]。
目前主要的嵌入式處理器IP核有軟核和硬核2種,本文采用Altera公司的Nios II軟核處理器。Nios II核是用戶可隨意配置和構(gòu)建的32位總線指令集和數(shù)據(jù)通道的嵌入式微處理器IP核,采用Avalon總線結(jié)構(gòu)通信接口。Nios II有3種性能的處理器內(nèi)核可供選擇:快速的內(nèi)核(Nios II/f)提供高性能;經(jīng)濟(jì)的內(nèi)核(Nios II/e)滿足低成本;標(biāo)準(zhǔn)的內(nèi)核(Nios II/s)則用于性能和尺寸的平衡。此外,Nios II核含有許多可配置的接口模塊核,包括:可配置高速緩存(包括片內(nèi)ESB、外部SRAM或SDRAM)模塊、可配置RS232通信口、SDRAM控制器、標(biāo)準(zhǔn)以太網(wǎng)協(xié)議接口、DMA、定時(shí)器、協(xié)處理器等。在下載進(jìn)FPGA前,用戶可根據(jù)設(shè)計(jì)要求,利用Quartus II和SOPC Builder,對Nios II及其外圍系統(tǒng)進(jìn)行構(gòu)建,使該嵌入式系統(tǒng)在硬件結(jié)構(gòu)、功能特點(diǎn)、資源占用等方面全面滿足用戶系統(tǒng)設(shè)計(jì)的要求。Nios II核在同一FPGA中被植入的數(shù)量沒有限制,只要FPGA的資源允許[4]。
采用SOPC技術(shù)對圖2中的高速數(shù)字信號處理部分進(jìn)行改進(jìn),設(shè)計(jì)的SOPC方案如下:將原來由ASIC、DSP和GPP完成的工作全部交由1片F(xiàn)PGA構(gòu)成的SOPC系統(tǒng)來完成。本文介紹了一種基于SOPC技術(shù)的軟件無線電系統(tǒng)解決方案,如圖3所示。[!--empirenews.page--]
該系統(tǒng)的功能實(shí)現(xiàn)如下:由Nios II處理器1完成原來由ASIC完成的數(shù)字上、下變頻處理,可通過調(diào)用直接數(shù)字合成器DDS(Direct Digital Synthesizer)IP模塊來實(shí)現(xiàn);Nios II處理器2主要完成調(diào)制/解調(diào)工作;Nios II處理器4主要完成編碼/解碼工作;Nios II處理器3用來替代原系統(tǒng)中的GPP完成系統(tǒng)參數(shù)的動(dòng)態(tài)配置、人機(jī)交互界面、電臺管理和控制以及系統(tǒng)中Flash配置內(nèi)容的在線更新工作。其中,Nios II處理器1、2、4都采用Nios II/f高速型32位內(nèi)核; Nios II處理器3采用Nios II/s標(biāo)準(zhǔn)內(nèi)核。此外,利用PCI IP核在FPGA中增加了32 bit的PCI Slave總線接口,省去傳統(tǒng)方案中所需的1塊專用PCI接口芯片;加入了以太網(wǎng)IP核,配合外部以太網(wǎng)PHY接口芯片為系統(tǒng)擴(kuò)展了以太網(wǎng)接口,以便支持設(shè)備通過網(wǎng)絡(luò)遠(yuǎn)程對系統(tǒng)進(jìn)行配置和管理;增加了SDRAM控制器,為系統(tǒng)外擴(kuò)了SDRAM存儲器,進(jìn)一步增強(qiáng)了系統(tǒng)的數(shù)據(jù)處理能力。
3 系統(tǒng)的軟硬件實(shí)現(xiàn)
下面就高速數(shù)字信號處理部分的硬件選型以及SOPC技術(shù)的開發(fā)流程、開發(fā)工具和編程技術(shù)作簡要介紹。
3.1 高速ADC和DAC設(shè)計(jì)
軟件無線電要求ADC、DAC盡可能地靠近天線,這需要ADC具有很高的采樣率、采樣精度和動(dòng)態(tài)范圍等特征。本系統(tǒng)的ADC采用BB公司的ADS5520,它具有12位的分辨率,125 MS/s的采樣速率;在100 M信號輸入情況下,信噪比(SNR)高達(dá)69.7 dBFS,無寄生動(dòng)態(tài)范圍(SFDR)高達(dá)82 dBC;芯片既支持3.3 V的單電壓供電,也支持2.3 V的差分輸入電壓;具有串行編程接口,可對內(nèi)部寄存器進(jìn)行編程,使器件工作在不同的狀態(tài)。
DAC采用BB公司的DAC904芯片,14位的分辨率,165 MS/s的轉(zhuǎn)換速率;可以3.3 V或5 V單電壓供電。信號輸出端使用截止頻率為120 MHz的低通濾波器,以及雙端到單端變換電路。
3.2 FPGA的設(shè)計(jì)
本平臺的FPGA器件選用Altera公司的Stratix II FPGA。在Stratix II FPGA中,Altera引入了全新的邏輯單元體系結(jié)構(gòu)——自適應(yīng)邏輯模塊(ALM),以及經(jīng)過改進(jìn)的片內(nèi)TriMatrix存儲器和數(shù)字信號處理(DSP)模塊,進(jìn)一步提高了性能[5]。根據(jù)現(xiàn)有的實(shí)驗(yàn)室條件本系統(tǒng)選用ALTERA公司的Stratix II EP2S60F1020C3型號的FPGA,它的主要特性如表1所示。
考慮到在Stratix II系列器件上,Nios II/f內(nèi)核僅占用1 800個(gè)邏輯單元卻可以達(dá)到超過200 DMIPS的性能,可以計(jì)算出前面設(shè)計(jì)的4個(gè)Nios II處理器再加上一些外圍接口模塊和用戶邏輯,總共占用的LE資源不會(huì)超過40 000。這款FPGA完全滿足系統(tǒng)的需求,剩余的資源可以留為以后系統(tǒng)升級所用。
3.3 SOPC的軟硬件開發(fā)技術(shù)
SOPC設(shè)計(jì)包括以Nios II軟核處理器為核心的嵌入式系統(tǒng)的硬件配置、硬件設(shè)計(jì)、硬件仿真、IDE環(huán)境的軟件設(shè)計(jì)、軟件調(diào)試等。SOPC系統(tǒng)設(shè)計(jì)的基本軟件工具包括:(1)Quartus II,用于完成Nios II系統(tǒng)的分析綜合、硬件優(yōu)化、適配、配置文件編程下載以及硬件系統(tǒng)測試等;(2)SOPC Builder,它是Nios II軟核處理器的開發(fā)包,用于實(shí)現(xiàn)Nios II系統(tǒng)配置、生成以及與Nios II系統(tǒng)相關(guān)的監(jiān)控和軟件調(diào)試平臺的生成;(3)ModelSim,用于對SOPC Builder生成的Nios II的HDL描述語言程序進(jìn)行系統(tǒng)功能仿真;(4)Matlab/DSP Builder,用于生成Nios II系統(tǒng)的硬件加速器,進(jìn)而為Nios II系統(tǒng)定制新的指令;(5)Nios II IDE,用于完成基于Nios II系統(tǒng)的軟件開發(fā)和調(diào)試,并可借助其自帶的Flash編程器完成對Flash以及EPCS的編程操作。此外,Nios II IDE還包括1個(gè)指令集成模擬器、MicroC/OS-II實(shí)時(shí)操作系統(tǒng)、文件系統(tǒng)以及小型TCP/IP協(xié)議棧[6]。
SOPC的開發(fā)流程通常包括2個(gè)方面:基于Quartus II、SOPC Builder的硬件設(shè)計(jì)和基于Nios II IDE的軟件設(shè)計(jì)[7]。三者之間的關(guān)系如圖4所示。
特別值得一提的是,通過Matlab和DSP Builder或直接使用VHDL等硬件描述語言設(shè)計(jì),用戶可以為Nios嵌入式處理器設(shè)計(jì)各類加速器,并以指令的形式加入Nios的指令系統(tǒng),從而成為Nios系統(tǒng)的一個(gè)接口設(shè)備,與整個(gè)片內(nèi)嵌入式系統(tǒng)融為一體。用戶可以根據(jù)設(shè)計(jì)項(xiàng)目按具體要求構(gòu)建自己的DSP處理器系統(tǒng),而不必拘于具體的DSP處理器型號。
使用SOPC解決方案帶來了整個(gè)系統(tǒng)開發(fā)平臺的統(tǒng)一,和其他解決方案相比,具有體積小、功耗低、成本低的優(yōu)點(diǎn)。此外,開發(fā)環(huán)境的集成統(tǒng)一、IP核的使用等縮短了系統(tǒng)的開發(fā)周期?;贔PGA的SOPC技術(shù)具有很高的靈活性和開放性,這充分體現(xiàn)了軟件無線電的優(yōu)勢,是實(shí)現(xiàn)軟件無線電系統(tǒng)的理想方案。