??? 摘 要: 針對短波窄帶信號的實(shí)時(shí)處理需求,設(shè)計(jì)實(shí)現(xiàn)了一種基于軟件無線電思想的短波多路并行處理系統(tǒng)。該系統(tǒng)采用四片高性價(jià)比DSP處理器,并行實(shí)時(shí)處理四路短波信號;采用一片高性能的FPGA,實(shí)現(xiàn)全局控制和協(xié)處理工作,具有完全可重復(fù)編程和配置功能。在此基礎(chǔ)上,開發(fā)了FPGA程序和主機(jī)應(yīng)用程序,實(shí)現(xiàn)了基于DSP的短波PSK信號解調(diào)算法。通過在軟件無線電接收系統(tǒng)中的實(shí)際應(yīng)用,證實(shí)系統(tǒng)使用靈活、性能優(yōu)良。
關(guān)鍵詞: 軟件無線電;數(shù)字信號實(shí)時(shí)處理;TMS320C6711D;DFPLL
?
軟件無線電的基本思想是把硬件作為無線通信的基本平臺,通過軟件實(shí)現(xiàn)盡可能多的功能。本文基于軟件無線電的思想,應(yīng)用PCI總線協(xié)議設(shè)計(jì)實(shí)現(xiàn)了一種短波多路并行處理系統(tǒng)。該系統(tǒng)硬件體積小、成本低,集信號采集和處理于一體,能夠并行實(shí)時(shí)處理四路短波信號;DSP軟件加載靈活方便,用戶可以根據(jù)需求加載不同的軟件算法,符合軟件無線電開放化、標(biāo)準(zhǔn)化、模塊化的基本要求[1],具有較強(qiáng)的實(shí)用性和靈活性,可以廣泛應(yīng)用于短波通信、數(shù)字信號實(shí)時(shí)處理等領(lǐng)域。
1 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)
系統(tǒng)硬件結(jié)構(gòu)如圖1所示。系統(tǒng)硬件采用四DSP+FPGA架構(gòu),從功能結(jié)構(gòu)上分為以下幾個(gè)部分:運(yùn)放和A/D采樣模塊、FPGA模塊、多DSP模塊、PCI接口模塊、存儲器模塊等。運(yùn)放和A/D采樣模塊完成信號放大和模數(shù)轉(zhuǎn)換;FPGA控制管理系統(tǒng)上的各種資源,并為外部接口提供訪問的控制時(shí)序;多DSP模塊完成短波中頻數(shù)字信號的實(shí)時(shí)處理;PCI接口模塊完成主機(jī)與系統(tǒng)之間的通信和數(shù)據(jù)傳輸。
?
1.1 運(yùn)放和A/D采樣模塊
運(yùn)放的選型基于以下幾點(diǎn)考慮:頻率響應(yīng)范圍、多通道和單電源供電。經(jīng)過比較,最終選用ADI公司的低功耗、四通道運(yùn)放AD8544。
A/D采樣芯片是系統(tǒng)中一個(gè)重要的組成部分。本系統(tǒng)對A/D采樣芯片的要求有三點(diǎn):采樣率、分辨率和通道數(shù)。經(jīng)過選型,A/D采樣芯片采用AD7654[2],它是ADI公司推出的低功耗、雙通道、電荷再分布式A/D轉(zhuǎn)換器,最高采樣頻率500 kHz。設(shè)計(jì)采樣時(shí)鐘時(shí),由高穩(wěn)晶振產(chǎn)生穩(wěn)定度高達(dá)10-8、頻率為10 MHz的時(shí)鐘,經(jīng)過專用的時(shí)鐘倍頻芯片ICS501,將時(shí)鐘倍頻到20 MHz,同時(shí)提高了時(shí)鐘驅(qū)動(dòng)能力。該時(shí)鐘經(jīng)過FPGA內(nèi)設(shè)計(jì)的分頻電路后送給A/D轉(zhuǎn)換器,作為轉(zhuǎn)換時(shí)鐘,因此通過對FPGA編程可以靈活改變A/D轉(zhuǎn)換器的采樣頻率。短波中頻模擬信號送入A/D轉(zhuǎn)換器進(jìn)行16 bit采樣量化,輸出模式分為串行和并行兩種,本文采用并行輸出模式。由于FPGA的I/O接口電平為3.3 V,A/D輸出接口電平設(shè)計(jì)為3.3 V。
1.2 FPGA模塊
FPGA選用Altera Cyclone II 系列的EP2C35F484C6N芯片,該芯片內(nèi)部有33 216個(gè)邏輯單元,能夠根據(jù)需求完全重新配置,是一款高性能、高密度的可編程邏輯器件。它的管腳支持大部分的標(biāo)準(zhǔn)接口電平,能夠方便地與多種外部接口互連,實(shí)現(xiàn)高速的數(shù)據(jù)I/O,另外還提供了其他資源,方便開發(fā)者根據(jù)需要設(shè)計(jì)出更多的功能模塊。
1.3 多DSP模塊
短波中頻信號的實(shí)時(shí)處理對處理器的處理速度提出了很高的要求,因此,DSP作為系統(tǒng)的核心信號處理單元,需要選擇處理能力強(qiáng)的芯片??紤]到芯片的性價(jià)比,DSP選用TI公司的TMS320C6711D[3]。TMS320C6711D最高工作頻率250 MHz,是一款高性價(jià)比16位浮點(diǎn)型DSP。其內(nèi)核電壓1.2 V,I/O電壓3.3 V。I/O方面,該器件提供了16個(gè)獨(dú)立通道的增強(qiáng)型DMA控制器、一個(gè)32位的外部存儲器接口(EMIF)、一個(gè)16位的主機(jī)口(HPI)、兩個(gè)32位的通用定時(shí)器(TIMER)和兩個(gè)多通道緩沖串口(McBSP)。FPGA和四片DSP 之間采用星型網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì),兩片A/D的4路輸出和四片DSP之間可以兩兩任意結(jié)合,每片DSP獨(dú)立處理一路信號,四片DSP可同時(shí)實(shí)時(shí)處理四路信號;多片DSP也可以通過不同分工,處理同一路信號。因此該結(jié)構(gòu)使用靈活、處理能力強(qiáng)。
1.4 PCI接口模塊
目前常見的PCI接口電路實(shí)現(xiàn)方案主要有以下三種:采用可編程邏輯器件的IP核、采用部分可編程的PCI接口芯片、采用專用的接口芯片。其中,IP核價(jià)格昂貴,部分可編程的半定制PCI接口芯片開發(fā)成本高且控制復(fù)雜。相比之下,采用PLX公司專用的PCI-IO橋接器PCI9054實(shí)現(xiàn)PCI接口電路,該芯片應(yīng)用廣泛,具有很高的性價(jià)比。后續(xù)設(shè)備驅(qū)動(dòng)程序的開發(fā)與局部總線接口模塊的設(shè)計(jì)均以PCI9054的工作機(jī)理為基礎(chǔ),所以它是系統(tǒng)的一個(gè)很重要的組成部分。
PCI9054的主要特點(diǎn)如下:內(nèi)部具有兩個(gè)獨(dú)立的可編程DMA控制器;支持復(fù)用/非復(fù)用的32位地址/數(shù)據(jù);PCI總線端支持32位/33 MHz,本地總線端最高時(shí)鐘50 MHz,最高傳輸速率132 Mb/s。
1.5 其他模塊
高精度高穩(wěn)定性的電源是系統(tǒng)正常工作的關(guān)鍵,因此電源芯片的選型顯得尤為重要。系統(tǒng)中需要5種電源:1.2 V、2.5 V、3.3 V、5 V和12 V,其中5 V和12 V由PCI總線提供,1.2 V由TPS54612提供,2.5 V由AD780提供,3.3 V由TPS54616提供。由于TMSC320C6711D要求內(nèi)核電壓不遲于I/O電壓上電,因此1.2 V和3.3 V電源之間采用肖特基二極管進(jìn)行隔離。
存儲器模塊選用存儲容量為512 Mbit的同步RAM-MT48LC16M16A2。
2 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)
系統(tǒng)中的四片DSP是獨(dú)立并行工作的。A/D采樣后的數(shù)據(jù)直接送給FPGA。一方面,F(xiàn)PGA通過DSP的HPI口將每路數(shù)據(jù)分別送至對應(yīng)的DSP,DSP處理完畢后通過McBSP口傳回FPGA,F(xiàn)PGA中設(shè)計(jì)的合路模塊,采用輪詢機(jī)制將四路信號合并成一路,通過PCI接口傳送至主機(jī);另一方面,A/D采樣數(shù)據(jù)也可以不經(jīng)過DSP處理,直接通過PCI接口傳送至主機(jī)。根據(jù)系統(tǒng)的工作方式和功能,系統(tǒng)軟件分為幾個(gè)模塊,下面加以介紹。
2.1 4DSP復(fù)位及程序引導(dǎo)加載
系統(tǒng)的主要特點(diǎn)是四片DSP獨(dú)立并行工作,因此系統(tǒng)中四片DSP的復(fù)位初始化、程序引導(dǎo)加載等環(huán)節(jié)的設(shè)計(jì)是一項(xiàng)十分重要的工作。
系統(tǒng)中設(shè)計(jì)了三種DSP復(fù)位方式:按鍵復(fù)位、看門狗復(fù)位和FPGA復(fù)位。按鍵復(fù)位和看門狗復(fù)位屬于硬件復(fù)位,F(xiàn)PGA復(fù)位屬于軟件復(fù)位??撮T狗只在DSP工作異?;螂娫垂ぷ鳟惓r(shí),自動(dòng)復(fù)位DSP。用戶可以根據(jù)需要,靈活選擇不同的DSP復(fù)位方式。每片DSP的復(fù)位都是獨(dú)立的,任何一片DSP復(fù)位不影響其他DSP的正常工作。
DSP程序的引導(dǎo)采用HPI口引導(dǎo)方式,設(shè)計(jì)流程如下:首先將編譯好的DSP程序通過仿真器下載到DSP內(nèi)存,主機(jī)依次通過PCI通道、FPGA模塊和DSP的HPI口將DSP內(nèi)存讀取到主機(jī)存盤,DSP工作時(shí)只需將該存盤文件通過PCI通道加載至DSP內(nèi)存,然后向HPIC寄存器的DSPINT位寫1,DSP程序即可從地址0處開始運(yùn)行。與一般采用的DSP程序從Flash啟動(dòng)方式相比,該方式具有以下優(yōu)點(diǎn):
(1)省掉了Flash芯片,降低了成本,減小了系統(tǒng)硬件面積;
(2)DSP程序的更新方式與通過仿真器下載程序并對Flash編程的方式相比更方便快捷,因此該方式很好地體現(xiàn)了軟件無線電的特點(diǎn)。
調(diào)試過程中發(fā)現(xiàn),該下載方式存在以下問題:如果DSP程序使用DSP/BIOS,用仿真器將編譯好的DSP程序下載到DSP內(nèi)存,讀取內(nèi)存后存盤,使用時(shí)直接加載文件,程序即可正常啟動(dòng);如果沒有使用DSP/BIOS,按照上述步驟加載DSP程序,程序加載后不能正常運(yùn)行。通過大量實(shí)驗(yàn)找到了原因:帶DSP/BIOS的DSP程序在地址0處有一條跳轉(zhuǎn)指令,程序從地址0啟動(dòng)之后,會自動(dòng)跳轉(zhuǎn)到通過仿真器下載程序后程序指針?biāo)赶虻氖椎刂穋_int00。而研究發(fā)現(xiàn)不帶DSP/BIOS的DSP程序沒有該跳轉(zhuǎn)指令。因此如果使用不帶DSP/BIOS的DSP程序,應(yīng)該首先建立一個(gè)中斷向量表文件,在開始位置添加跳轉(zhuǎn)指令,然后在cmd文件中定義中斷向量的內(nèi)存映射從地址0處開始,這樣程序通過引導(dǎo)加載后才能正常運(yùn)行。
2.2 FPGA接口邏輯
平臺上所有數(shù)據(jù)流的交互、A/D和DSP的工作方式全由FPGA控制。針對要實(shí)現(xiàn)的功能,F(xiàn)PGA的接口邏輯分為以下幾個(gè)部分:PCI接口時(shí)序模塊、地址譯碼模塊、A/D控制模塊、DSP引導(dǎo)加載模塊、DSP內(nèi)存讀取模塊、A/D與多DSP互聯(lián)模塊、McBSP輸出模塊、合路模塊。FPGA內(nèi)部邏輯框圖如圖2所示。其中合路模塊采用狀態(tài)機(jī)輪詢機(jī)制,狀態(tài)轉(zhuǎn)移圖如圖3所示。
為了避免數(shù)據(jù)的丟失,理論上,DSP對應(yīng)的FIFO的讀時(shí)鐘最小應(yīng)等于寫時(shí)鐘的4倍,本文取為8倍,保證了四片DSP處理完的數(shù)據(jù)安全有序地傳送至主機(jī)。
2.3 PCI設(shè)備驅(qū)動(dòng)程序
驅(qū)動(dòng)程序的基本功能是對設(shè)備進(jìn)行識別和初始化,對內(nèi)存和I/O端口進(jìn)行操作,對中斷進(jìn)行設(shè)置、響應(yīng)和調(diào)用等,從而實(shí)現(xiàn)PCI總線上的數(shù)據(jù)控制[4]。本系統(tǒng)中,PCI設(shè)備的驅(qū)動(dòng)程序由PLX公司的軟件開發(fā)包(SDK)提供。
2.4 主機(jī)應(yīng)用程序
主機(jī)應(yīng)用程序完成系統(tǒng)所有的控制及主機(jī)與系統(tǒng)的交互工作,主要功能包括:控制A/D工作模式和采樣時(shí)鐘、選擇數(shù)據(jù)通道、讀取DSP內(nèi)存、加載DSP程序、設(shè)置DSP程序相關(guān)參數(shù)、顯示星座、判決存盤等。主機(jī)應(yīng)用程序的開發(fā)基于PLX SDK提供的API DLL,實(shí)際應(yīng)用時(shí)和DSP的應(yīng)用程序需進(jìn)行任務(wù)協(xié)調(diào)。
2.5 基于DSP的PSK信號解調(diào)程序
針對短波中頻信號的特點(diǎn),基于DSP的PSK信號解調(diào)程序采用了如下幾種關(guān)鍵技術(shù):數(shù)字AGC、基于判決反饋環(huán)的載波同步(DFPLL)、Gardner符號同步和基于CMA的盲均衡。其中DFPLL的基本思想是:由于在碼元同步點(diǎn)附近,信號的碼間串?dāng)_最小,因此對于每個(gè)碼元,利用碼元同步附近的采樣點(diǎn)計(jì)算碼元的相位,并根據(jù)基帶信號碼元的相位特點(diǎn),計(jì)算出參考載波與信號載波的差值,利用此差值調(diào)整VCO的相位,從而進(jìn)行載波恢復(fù)。由于DSP選用的是浮點(diǎn)型,因此信號處理算法很容易在DSP上實(shí)現(xiàn)。
經(jīng)過實(shí)際工作測試,上述各個(gè)軟件模塊較好地達(dá)到了設(shè)計(jì)的效果。
3 系統(tǒng)測試方案及結(jié)果
搭建如圖4所示的測試環(huán)境。
?
由于信號源有限,本方案只測試兩個(gè)通道。信號發(fā)生器采用安捷倫E4434B和E8267D,短波前端模塊負(fù)責(zé)將短波射頻信號下變頻至中心頻率為12 kHz的中頻信號。其中E4434B參數(shù)設(shè)置如下:信號類型8PSK,載頻12 MHz,符號速率1 500 S/s(samples per second);E8267D參數(shù)設(shè)置如下:信號類型QPSK,載頻15 MHz,符號速率2 400 S/s。信號發(fā)生器輸出信號幅度統(tǒng)一設(shè)置為-25 dBm,系統(tǒng)中A/D采樣頻率設(shè)置為96 kHz。
測試時(shí),首先對信號發(fā)生器按照上述參數(shù)進(jìn)行設(shè)置,然后啟動(dòng)系統(tǒng)主機(jī)程序,對A/D工作模式和采樣時(shí)鐘進(jìn)行如上配置。在此基礎(chǔ)上,進(jìn)行如下兩項(xiàng)測試。
3.1 信號采集實(shí)測
通過A/D數(shù)據(jù)通道直接采集經(jīng)A/D采樣后的數(shù)據(jù),將采集到的數(shù)字化中頻信號存盤,使用CoolEdit Pro軟件進(jìn)行回放,分析數(shù)據(jù)的波形和頻譜,檢驗(yàn)采集效果。
信號時(shí)域波形如圖5所示,信號頻譜如圖6所示。從時(shí)域波形可以看出:QPSK存在明顯的倒?仔現(xiàn)象。從頻譜可以看出:采樣信號信噪比為50 dB,中心頻率為12 kHz,帶寬為2 400 Hz。測試結(jié)果證明:經(jīng)過運(yùn)放、A/D變換、FPGA以及PCI接口的傳輸,系統(tǒng)可以準(zhǔn)確采集到中心頻率為12 kHz的短波中頻信號。
?
3.2 信號解調(diào)和系統(tǒng)整體性能實(shí)測
通過主機(jī)程序選擇DSP處理后的數(shù)據(jù)通道,分別設(shè)置兩片DSP的解調(diào)參數(shù)、加載DSP解調(diào)程序并運(yùn)行。主機(jī)程序界面顯示的信號星座圖如圖7所示。
從星座圖可以看出:基于DSP的PSK信號解調(diào)程序性能較好。信號發(fā)生器采用預(yù)設(shè)的基帶數(shù)據(jù)流,對I/Q數(shù)據(jù)判決存盤后檢測誤碼率為0。
本文采用多片DSP和FPGA相結(jié)合的方法,設(shè)計(jì)并實(shí)現(xiàn)了一種基于軟件無線電思想的短波多路并行處理系統(tǒng)。該系統(tǒng)具有完全可重復(fù)編程和配置功能,通過加載不同的DSP程序,實(shí)現(xiàn)對不同制式和不同規(guī)格信號的采集和處理。不僅功能配置和參數(shù)變化十分靈活,而且系統(tǒng)性能的升級和提高也十分方便,可適應(yīng)于不同短波信號環(huán)境需求;同時(shí)系統(tǒng)硬件采用PCI插卡式設(shè)計(jì),體積小、成本低,能夠并行實(shí)時(shí)處理四路短波信號,具有很高的性價(jià)比。因此該系統(tǒng)在短波通信和數(shù)字信號實(shí)時(shí)處理領(lǐng)域具有較好的應(yīng)用前景。
參考文獻(xiàn)
[1] 楊小牛,樓才義,徐建良.軟件無線電原理與應(yīng)用[M].北京:電子工業(yè)出版社,2001.
[2] 16-Bit,500 kSPS PulSAR Dual,2-Channel,Simultaneous Sampling ADC AD7654.Analog Devices,2005.
[3] TMS320C6711D FLOATING-POINT DIGITAL SIGNAL?PROCESSOR.Texas Instruments,2006.
[4] 李貴山,陳金鵬.PCI局部總線及其應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2003.