惠騰飛,楊 磊,龔險(xiǎn)峰
(空間電子信息技術(shù)研究院通信技術(shù)研究室,陜西西安 710000)
由于具有高集成度、高速、可編程等優(yōu)點(diǎn),現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)已經(jīng)被廣泛應(yīng)用于中高速群路解調(diào)處理領(lǐng)域。數(shù)字分路技術(shù)是全數(shù)字群解調(diào)器的重要組成部分[1],也是群解調(diào)器實(shí)現(xiàn)過程中消耗硬件資源較大的部分,所以設(shè)計(jì)合理的分路實(shí)現(xiàn)結(jié)構(gòu)將對(duì)整個(gè)解調(diào)器的處理速度和硬件開銷產(chǎn)生較大影響。目前,采用FPGA實(shí)現(xiàn)數(shù)字分路主要存在的問題是FPGA芯片中乘法器資源受限。因此,在已知硬件FPGA芯片乘法器資源約束條件下,設(shè)計(jì)更為有效的數(shù)字分路實(shí)現(xiàn)結(jié)構(gòu)是目前重要的研究?jī)?nèi)容。32 MHz。
圖1 輸入信號(hào)各子帶頻譜分布示意圖
針對(duì)輸入信號(hào)各子帶在頻域中是按偶型堆積排列和均勻分割的,如圖1所示,可采用均勻DFT濾波器組實(shí)現(xiàn)其有效數(shù)字分路[2]。在圖1中,輸入信號(hào)的基本參數(shù)如下:(1)每路載波的符號(hào)速率為R=2 Msample·s-1;(2)載波間隔為Δf=3.2 MHz;(3)采樣速率為Fs=為第 k個(gè)子帶的中心頻率,K為分路路數(shù));然后再將調(diào)制后的信號(hào)經(jīng)過低通濾波器進(jìn)行濾波;最后將濾波后的信號(hào)進(jìn)行降采樣(降采樣率為M),得到第k個(gè)子帶信號(hào)。該數(shù)學(xué)模型可表示為
圖2給出了單個(gè)支路信號(hào)處理原理示意圖。輸入信號(hào)首先采用復(fù)指數(shù)序列 e-jωk進(jìn)行調(diào)制(其中,ωk=
圖2 DFT濾波器組分析器(分路)模型
由于輸入信號(hào)速率為32 MHz,各子帶頻率間隔為3.2 MHz,則分路路數(shù)K=32/3.2=10。又由于每路輸出信號(hào)速率為2×4=8 MHz,則降采樣率M=32/8=4,因此邏輯上可以按照K=MI(其中,I=2.5)形式的多相結(jié)構(gòu)實(shí)現(xiàn)數(shù)字分路。
在式(1)中,通過變量置換 n=rK+ ρ,ρ=0,1,…,K -1,得到
式(5)的括號(hào)中定義了一個(gè)I個(gè)抽樣的內(nèi)插器,令yρ(m)是內(nèi)插器的輸出,則該項(xiàng)對(duì)應(yīng)的數(shù)學(xué)模型如圖3所示[3]。
圖3 I個(gè)抽樣的內(nèi)插器
根據(jù)式(5)所示,則基于均勻DFT濾波器組數(shù)字分路技術(shù)實(shí)現(xiàn)結(jié)構(gòu)如圖4所示,具體實(shí)現(xiàn)步驟如下[4-5]
(1)對(duì)輸入信號(hào)x(n)進(jìn)行10路并行轉(zhuǎn)換,得到10 路子信號(hào) xρ(r),ρ=0,1,…,9,此時(shí)信號(hào)速率由 fs=32 MHz變?yōu)?f=32 MHz/10=3.2 MHz。
圖4 基于均勻DFT濾波器組數(shù)字分路技術(shù)的多相結(jié)構(gòu)實(shí)現(xiàn)示意圖
(2)對(duì)每一路子信號(hào)xρ(r)進(jìn)行5倍速率內(nèi)插,并分別采用對(duì)應(yīng)的濾波器pρ(m)進(jìn)行濾波,得到 10 路輸出信號(hào)yρ(m),每一路對(duì)應(yīng)的濾波器pρ(m)可以由分析濾波器h(n)按照式(4)得到,此時(shí)信號(hào)yρ(m)的速率由3.2 MHz變?yōu)?.2 MHz×5=16 MHz。
(3)對(duì)10路yρ(m)信號(hào)分別進(jìn)行2倍下采樣,變?yōu)?zρ(m)。
(4)對(duì)上述得到的10路并行信號(hào)進(jìn)行10點(diǎn)FFT計(jì)算,得到分路后的10路信號(hào)。
在圖4中,出現(xiàn)了10點(diǎn)FFT計(jì)算,為有效節(jié)省乘法器的資源,對(duì)10點(diǎn)FFT計(jì)算進(jìn)行變換處理,分解為5點(diǎn)FFT的計(jì)算[6]。10點(diǎn)FFT變換可表示為式(6)
由式(8)可得,一個(gè)10點(diǎn)的FFT運(yùn)算可等效為一級(jí)5點(diǎn)FFT和2點(diǎn)FFT的級(jí)聯(lián)運(yùn)算。具體實(shí)現(xiàn)框圖如圖5所示。
圖5 10點(diǎn)FFT等效實(shí)現(xiàn)結(jié)構(gòu)
5點(diǎn)FFT變換可表示為
將式(9)展開,得
根據(jù)上述算法分析,結(jié)合FPGA資源與速度互換的處理思路[7],對(duì)10路信號(hào)的數(shù)字分路FPGA實(shí)現(xiàn)結(jié)構(gòu)進(jìn)行設(shè)計(jì),具體處理流程如圖6所示。
圖6 10路信號(hào)數(shù)字分路的FPGA實(shí)現(xiàn)流程圖
在圖6中,整個(gè)10路信號(hào)數(shù)字分路模塊共分為2大部分,第1部分是多相濾波計(jì)算單元,第2部分為10點(diǎn)FFT計(jì)算單元,兩個(gè)模塊在調(diào)度控制模塊的控制下工作。整個(gè)模塊的工作時(shí)鐘fclk=96 MHz,原型濾波器選用110階的匹配濾波器,濾波器的幅頻特性曲線如圖7所示。整個(gè)10點(diǎn)數(shù)字分路的FPGA處理流程如下。
(1)輸入信號(hào)同時(shí)進(jìn)入11組并行工作的RAM存儲(chǔ)區(qū),每進(jìn)20個(gè)數(shù)據(jù)做一次流水處理,每個(gè)流水處理共有60個(gè)處理時(shí)鐘,共進(jìn)行5次10點(diǎn)FFT計(jì)算;也就是說每進(jìn)20個(gè)數(shù),輸出50個(gè)數(shù),每路5個(gè)點(diǎn)。
圖7 原型濾波器的幅頻特性曲線
(2)調(diào)度控制模塊控制11個(gè)存儲(chǔ)RAM在每個(gè)時(shí)鐘周期產(chǎn)生11個(gè)不同數(shù)據(jù),同時(shí)控制原型濾波器系數(shù)組產(chǎn)生11個(gè)多相濾波系數(shù),11個(gè)數(shù)據(jù)和11個(gè)多相濾波系數(shù)進(jìn)行相乘及累加產(chǎn)生1個(gè)FFT計(jì)算輸入點(diǎn);每10個(gè)FFT計(jì)算輸入點(diǎn)組成1個(gè)10點(diǎn)FFT計(jì)算組,并用使能信號(hào)標(biāo)識(shí),串行送給10點(diǎn)FFT計(jì)算單元。
(3)根據(jù)10點(diǎn)FFT拆分為2個(gè)5點(diǎn)FFT和5個(gè)2點(diǎn)FFT計(jì)算流程及式(11)的數(shù)學(xué)計(jì)算公式,對(duì)多相濾波計(jì)算單元串行輸入的10個(gè)數(shù)據(jù)復(fù)制成相同的5組,第1組延遲4個(gè)時(shí)鐘周期輸出,第2~5組在調(diào)度控制模塊的控制下分時(shí)乘以不同的FFT計(jì)算系數(shù),然后對(duì)5組輸出數(shù)據(jù)進(jìn)行時(shí)延調(diào)整及累加求和,分別串行輸出2組5點(diǎn)FFT計(jì)算結(jié)果;對(duì)第1組數(shù)據(jù)在調(diào)度控制模塊的控制下分時(shí)乘以不同相位調(diào)整系數(shù),對(duì)第2組延遲4個(gè)時(shí)鐘周期輸出;最后對(duì)2組輸出數(shù)據(jù)進(jìn)行時(shí)延調(diào)整及累加求和,串行輸出10個(gè)FFT計(jì)算結(jié)果,并通過使能信號(hào)對(duì)10個(gè)FFT計(jì)算結(jié)果進(jìn)行標(biāo)識(shí),使能信號(hào)的上升沿代表第1路數(shù)據(jù)。
文中的10路信號(hào)數(shù)字分路結(jié)構(gòu)在Xilinx的Vitex-4器件上實(shí)現(xiàn),具體型號(hào)是xc4vsx55-11ff1148,圖8給出了10路信號(hào)數(shù)字分路的輸入輸出接口,表1給出了算法的硬件資源占用情況[8]。
圖8 10路信號(hào)數(shù)字分路結(jié)構(gòu)的輸入輸出接口
表1 10路信號(hào)數(shù)字分路硬件實(shí)現(xiàn)占用資源情況
在ISE9.2.1環(huán)境下,采用VHDL完成了10路信號(hào)的數(shù)字分路模塊的開發(fā),并采用ModeMm 6.2 b軟件進(jìn)行仿真驗(yàn)證。同時(shí),為驗(yàn)證設(shè)計(jì)的10路信號(hào)的數(shù)字分路模塊的正確性,將10路信號(hào)的數(shù)字分路模塊連同解調(diào)模塊在搭建的測(cè)試系統(tǒng)中進(jìn)行了實(shí)際測(cè)試。測(cè)試輸入信號(hào)源為10路QPSK信號(hào),10路8PSK信號(hào)以及10路16APSK信號(hào);測(cè)試輸出為10路信號(hào)的分路輸出星座圖及解調(diào)位同步后的星座圖。圖9為3種調(diào)制方式的分路輸出星座圖,圖10為3種調(diào)制方式位同步后的星座圖[9]。
圖10 位同步輸出的單路信號(hào)不同調(diào)制方式下的星座圖
本文介紹了一種基于FPGA的10路信號(hào)的數(shù)字分路實(shí)現(xiàn)結(jié)構(gòu),在ISE9.2.1環(huán)境下,采用VHDL語言進(jìn)行了實(shí)現(xiàn),并在硬件平臺(tái)上對(duì)分路程序的性能進(jìn)行了測(cè)試。該結(jié)構(gòu)能夠有效降低FPGA的硬件資源消耗,尤其是乘法器的資源消耗,在全數(shù)字群解調(diào)器工程實(shí)現(xiàn)中有著良好的應(yīng)用前景。
[1] HARRIS F J,DICK C,RICE M.Digital receivers and transmitters using polyphase filter banks for wireless communications[J].IEEE Transactions on Communication,2003(4):1395-1412.
[2] 文增譯.多抽樣數(shù)字信號(hào)處理[M].北京:人民郵電出版社,1986.
[3] VAIDYANATHAN P P.Multirate systems and filter banks[M].NJ:Prentice Hall Englewood Cliffs,1993.
[4] 任紅建.基于FPGA的 FIR數(shù)字濾波器的設(shè)計(jì)[D].南京:東南大學(xué),2009.
[5] R E克勞切,L R拉賓納.多抽樣率數(shù)字信號(hào)處理[M].酆廣增,譯.北京:人民郵電出版社,1988.
[6] 孫重磊.基于FPGA的24點(diǎn)離散傅里葉變換結(jié)構(gòu)設(shè)計(jì)[J].電子科技,2012,25(9):132 -135.
[7] 朱明程,董爾令.可編程邏輯器件及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2004.
[8] 林敏,方穎立.VHDL數(shù)字系統(tǒng)設(shè)計(jì)與高層次綜合[M].北京:電子工業(yè)出版社,2002.
[9] 樊昌信.通信原理[M].北京:國防工業(yè)出版社,2001.