冷鵬飛,徐朝陽
(中國船舶重工集團(tuán)公司第七二三研究所,江蘇 揚(yáng)州 225001)
寬帶數(shù)字信道化接收機(jī)的FPGA實(shí)現(xiàn)
冷鵬飛,徐朝陽
(中國船舶重工集團(tuán)公司第七二三研究所,江蘇 揚(yáng)州 225001)
寬帶數(shù)字信道化接收機(jī)具有覆蓋頻段寬、靈敏度高、動(dòng)態(tài)范圍寬、截獲概率高以及實(shí)時(shí)處理能力強(qiáng)等特點(diǎn),是目前偵察接收機(jī)中較好的解決方案。論述了一種基于多相濾波的寬帶數(shù)字信道化接收機(jī)結(jié)構(gòu),并通過FPGA布局布線后仿真驗(yàn)證其有效性及可實(shí)現(xiàn)性。
寬帶接收機(jī);信道化;多相濾波;現(xiàn)場(chǎng)可編程門陣列
電子偵察接收機(jī)是電子情報(bào)保障體系中的重要組成部分,它可以截獲、分析、識(shí)別和定位作戰(zhàn)區(qū)域內(nèi)的雷達(dá)輻射源,為己方提供直接的情報(bào)支援和決策依據(jù)[1]。在實(shí)際電子戰(zhàn)環(huán)境下,雷達(dá)信號(hào)時(shí)域分布密集且頻域覆蓋范圍大,為實(shí)現(xiàn)信號(hào)的全概率測(cè)量,數(shù)字寬帶接收機(jī)的信道化技術(shù)是一種實(shí)用且有效的方法[2]。本文論述了一種寬帶數(shù)字信道化接收機(jī)的現(xiàn)場(chǎng)可編程門陣列(FPGA)實(shí)現(xiàn)方案,并通過布局布線后仿真驗(yàn)證了方案的物理可實(shí)現(xiàn)性。
信道化的基本原理是將輸入的全帶信號(hào)進(jìn)行頻帶劃分即將偵收到的信號(hào)分解成若干個(gè)不同的頻段,又稱為子頻帶或子信道,然后對(duì)各子信道分別處理。
信道的劃分即窄帶濾波器組的設(shè)計(jì),本設(shè)計(jì)中該窄帶濾波器組的頻率響應(yīng)如圖1所示。各子信道通帶帶寬為Br=fs/K,信道帶寬為B=2fs/K,中心頻率為fk=fs/ (2K) +kfs/K,其中K=64,為子信道數(shù),k=0,1,…,63,為各子信道編號(hào)。
將截止頻率為fs/(2K)、阻帶邊界頻率為fs/K的原型低通濾波器調(diào)制至各子信道中心頻率處即可實(shí)現(xiàn)上述窄帶濾波器組。由于原型低通濾波器的頻率響應(yīng)存在過渡帶,因而各子信道在幅度損耗為-3 dB處交疊,且相鄰子信道間存在50%的頻譜交疊。將輸入信號(hào)送入各濾波通道,完成濾波后經(jīng)數(shù)字下變頻至基帶即可獲取各子信道輸入信號(hào)包絡(luò),此時(shí)各子信道輸出信號(hào)帶寬降至2fs/K,故可以K/2倍抽取率對(duì)各子信道輸出進(jìn)行抽取,以降低后續(xù)處理壓力。
由于設(shè)計(jì)面向?qū)拵?shí)信號(hào)的處理,所以根據(jù)實(shí)信號(hào)頻譜的共軛對(duì)稱性,取前32信道輸出為最終輸出結(jié)果。
設(shè)輸入信號(hào)為x(n),原型低通有限沖激響應(yīng)(FIR)濾波器的單位脈沖響應(yīng)為h(n),長(zhǎng)度為N,且滿足N=KP,P為正整數(shù),抽取率M=K/2,窄帶濾波器組第k個(gè)通道單位脈沖響應(yīng)為hk(n),于是第k個(gè)子信道輸出為:
(1)
以抽取率M對(duì)yko(n)進(jìn)行抽取后輸出為
(2)
在數(shù)字角頻域中,第k個(gè)子信道的中心頻率為:
wk=2kπ/K+π/K
(3)
將式(3)代入式(2)并化簡(jiǎn)可得:
(-1)kn(-j)nfk(n)
(4)
令i=pK+m,其中p=0,1,…,P-1,m=0,1,…,K-1,于是有:
(5)
令:
(6)
將式(5)、式(6)代入式(4),有:
(7)
式中:符號(hào)*為線性卷積運(yùn)算;em(P/2)為序列em(p)2倍內(nèi)插零的結(jié)果。
上述算法的實(shí)現(xiàn)結(jié)構(gòu)如圖2所示,x(n)按逆時(shí)針方向從信道0開始循環(huán)接通前32個(gè)信道,后32個(gè)信道的輸入是前32個(gè)信道輸入延遲1個(gè)時(shí)間單元的結(jié)果。從圖中可以看出,各信道輸入數(shù)據(jù)是對(duì)x(n)32抽取的結(jié)果,且各通道子FIR濾波器系數(shù)長(zhǎng)度為原型濾波器的1/M,因而該結(jié)構(gòu)可以降低FPGA處理數(shù)據(jù)的速度,從而節(jié)省硬件資源。此外,該結(jié)構(gòu)抽取在運(yùn)算模塊之前,相較于運(yùn)算完再抽取的方案更為高效。
分別將方波、余弦波、鋸齒波調(diào)制至信道0、信道3、信道7的中心頻率處,將其作為輸入信號(hào)送入信道化接收機(jī)。由于實(shí)信號(hào)頻譜共軛對(duì)稱,所以信道63、信道60、信道56上信號(hào)包絡(luò)分別與信道0、信道3、信道7上信號(hào)包絡(luò)相同,載頻不同。Matlab仿真結(jié)果如圖3所示。
系統(tǒng)總框圖如圖4所示,采樣后的數(shù)據(jù)經(jīng)1∶8 demux后按4抽取送入各通道進(jìn)行濾波,進(jìn)而對(duì)濾波結(jié)果進(jìn)行離散傅里葉逆變換(IDFT)運(yùn)算,最后各通道乘以對(duì)應(yīng)算子得到最終輸出結(jié)果。
從圖4可以看出,系統(tǒng)時(shí)鐘為100 MHz,模/數(shù)轉(zhuǎn)換器(ADC)輸出數(shù)據(jù)速率為1 280 Msps,1∶8 demux模塊輸出數(shù)據(jù)速率為160 Msps,因而選擇160 MHz時(shí)鐘完成數(shù)據(jù)的按4抽取,而后續(xù)的運(yùn)算模塊則以200 MHz時(shí)鐘完成運(yùn)算。
由上述分析可知,在抽取模塊與后續(xù)運(yùn)算模塊間進(jìn)行數(shù)據(jù)傳輸時(shí),存在160 MHz與200 MHz的異步時(shí)鐘域同步化問題。本設(shè)計(jì)通過握手信號(hào)在抽取模塊中實(shí)現(xiàn)同步化。
對(duì)于本設(shè)計(jì)而言,握手信號(hào)的實(shí)現(xiàn)主要考慮以下兩方面問題:
(1) 轉(zhuǎn)有效電平檢測(cè)為時(shí)鐘沿檢測(cè)
圖5描述了跨時(shí)鐘域電平檢測(cè)時(shí)產(chǎn)生的問題,由于200 M時(shí)鐘頻率高于160 M時(shí)鐘,因而以160 M時(shí)鐘域信號(hào)作為電平檢測(cè)握手信號(hào)時(shí)會(huì)出現(xiàn)重復(fù)采集數(shù)據(jù)的情況,解決方法是通過時(shí)鐘沿檢測(cè)同步。
(2) 信號(hào)采集時(shí)序
圖6給出了異步時(shí)鐘域的同步時(shí)序,由于本設(shè)計(jì)中數(shù)據(jù)傳輸速率為40 Msps,而源時(shí)鐘和目的時(shí)鐘頻率都較傳輸速率高出很多,因此,在時(shí)序問題上,主要需確保目的寄存器采樣時(shí)輸入數(shù)據(jù)穩(wěn)定。圖中,寄存器x_valid_r0,x_valid_r1,x_valid_r2用于實(shí)現(xiàn)上升沿檢測(cè),160 MHz時(shí)鐘域的輸出有效信號(hào)y_valid經(jīng)200 MHz時(shí)鐘“打兩拍”存入寄存器x_valid_r1,以降低單bit數(shù)據(jù)在異步時(shí)鐘域傳輸時(shí)出現(xiàn)亞穩(wěn)態(tài)的概率。x_valid_r1與x_valid_r2作為200 MHz時(shí)鐘域中上升沿檢測(cè)電路的輸入,輸出為200 MHz時(shí)鐘域中的x_valid,并以此信號(hào)作為電平檢測(cè)信號(hào)同步異步時(shí)鐘域間的數(shù)據(jù)傳輸。在時(shí)序上不難發(fā)現(xiàn)圖示情況為時(shí)間余量T取最小值時(shí)波形,值為10 ns。在設(shè)計(jì)時(shí),可以通過約束異步時(shí)鐘域間最大數(shù)據(jù)傳輸路徑延遲使設(shè)計(jì)滿足時(shí)序要求,本設(shè)計(jì)中,最大路徑延遲約束為160 MHz時(shí)鐘周期6.25 ns。
原型濾波器為511階FIR低通濾波器,其通帶、阻帶邊界頻率分別為π/64和π/32。各通道子FIR濾波器em(n)是對(duì)原型濾波器按64抽取并進(jìn)行2倍內(nèi)插零的結(jié)果。設(shè)計(jì)中主要有如下三方面考慮:
(1) 時(shí)序分析
濾波器輸入輸出數(shù)據(jù)速率均為40 Msps,運(yùn)算處理時(shí)鐘頻率為200 MHz,因此可通過流水復(fù)用卷積運(yùn)算模塊5次以減少硬件資源的消耗。本設(shè)計(jì)中,16個(gè)卷積運(yùn)算模塊并行處理,每個(gè)模塊由4個(gè)通道流水復(fù)用,余出1個(gè)時(shí)鐘周期用于數(shù)據(jù)緩存。
圖7給出了第m個(gè)卷積運(yùn)算模塊結(jié)構(gòu),輸入數(shù)據(jù)通過并轉(zhuǎn)串端口使數(shù)據(jù)流水輸入卷積運(yùn)算單元,輸出端則通過串轉(zhuǎn)并輸出4個(gè)并行通道運(yùn)算結(jié)果。卷積運(yùn)算單元中間結(jié)果應(yīng)暫存在寄存器、先進(jìn)先出(FIFO)或雙口隨機(jī)存儲(chǔ)器(RAM)中以確保前后運(yùn)算數(shù)據(jù)通道一致,濾波器系數(shù)存在只讀存儲(chǔ)器(ROM)中,通過地址產(chǎn)生器同步系數(shù)與對(duì)應(yīng)通道輸入數(shù)據(jù)。
(2) 卷積運(yùn)算單元
圖8為單個(gè)通道卷積運(yùn)算單元結(jié)構(gòu)圖,從圖中可以看出,該模塊由延遲單元、復(fù)乘運(yùn)算單元以及流水加法運(yùn)算單元組成。
該模塊乘數(shù)因子em(n)是對(duì)511階原型濾波器按64抽取并進(jìn)行2倍內(nèi)插零的結(jié)果,因此有效系數(shù)長(zhǎng)度為8。輸入信號(hào)xm(n)為實(shí)信號(hào),所以2個(gè)乘法器即可實(shí)現(xiàn)復(fù)乘運(yùn)算,于是可以算得整個(gè)濾波器模塊消耗乘法器資源為16×8×2=256個(gè)。
(3) 卷積運(yùn)算數(shù)據(jù)位寬的截取
卷積運(yùn)算輸入數(shù)據(jù)位寬為16 bits,em(n)是實(shí)虛部位寬均為16 bits的復(fù)序列,按上述結(jié)構(gòu)運(yùn)算輸出數(shù)據(jù)位寬為35 bits。運(yùn)算模塊中,em(n)已知,可以求得:
(8)
于是可得該運(yùn)算模塊運(yùn)算所得最大數(shù)據(jù)位寬為:
bmax=max{fbit[Imax],fbit[Qmax]}
(9)
式中:fbit[·]表示數(shù)據(jù)二進(jìn)制表示形式的最小位數(shù)。
本設(shè)計(jì)中,bmax=27,所以可截取輸出的bit26~bit11作為最終輸出結(jié)果。
設(shè)序列x(n)的DFT運(yùn)算結(jié)果為X(k),則有[3]:
(10)
式中:符號(hào)*表示共軛。
因此,IDFT運(yùn)算的實(shí)現(xiàn)即DFT運(yùn)算的實(shí)現(xiàn),本設(shè)計(jì)采用基4FFT算法實(shí)現(xiàn)64點(diǎn)DFT運(yùn)算。
64點(diǎn)基4FFT算法共3層蝶形運(yùn)算模塊,每層蝶形運(yùn)算模塊有16個(gè)蝶形運(yùn)算單元。每層蝶形運(yùn)算模塊輸入數(shù)據(jù)速率為40 Msps,運(yùn)算處理時(shí)鐘頻率為200 MHz,因此1個(gè)蝶形運(yùn)算單元最多可以流水復(fù)用5次,至少需要ceil[16/5]=4個(gè)蝶形單元并行處理,其中ceil[·]表示取整。
圖9給出了蝶形運(yùn)算模塊實(shí)現(xiàn)結(jié)構(gòu)圖。
數(shù)據(jù)緩存模塊讀取輸入數(shù)據(jù),并鎖存數(shù)據(jù)至新數(shù)據(jù)到來。各模塊間的運(yùn)算協(xié)調(diào)通過狀態(tài)機(jī)形成電子開關(guān)來實(shí)現(xiàn)。蝶形運(yùn)算單元主要完成復(fù)乘加運(yùn)算,理論上,每個(gè)蝶形運(yùn)算單元需進(jìn)行3次復(fù)乘運(yùn)算,N點(diǎn)基4FFT復(fù)乘運(yùn)算次數(shù)為:
(11)
當(dāng)N=64時(shí),CM=144。在實(shí)際應(yīng)用過程中,第1層蝶形運(yùn)算模塊中旋轉(zhuǎn)因子全為1,為減少乘法器的數(shù)目,這些旋轉(zhuǎn)因子不做復(fù)乘運(yùn)算。因此,F(xiàn)FT模塊共消耗乘法器144-16×3=96個(gè)。
算子jn、(-j)n隨n呈周期變化規(guī)律,設(shè)計(jì)中用狀態(tài)機(jī)實(shí)現(xiàn)這些乘法以減少對(duì)乘法器資源的浪費(fèi)。
表1給出了FPGA布局布線后資源消耗情況,芯片型號(hào)為XC7VX485T,各模塊輸入輸出數(shù)據(jù)位寬為16 bits。結(jié)合前文分析可以看出,卷積運(yùn)算消耗乘法器個(gè)數(shù)為256,F(xiàn)FT運(yùn)算消耗乘法器個(gè)數(shù)為96,因此整個(gè)設(shè)計(jì)共消耗乘法器個(gè)數(shù)為352。
Modelsim仿真結(jié)果如圖10所示,圖10(a)為前8個(gè)信道輸出的功能仿真結(jié)果。圖10(b)為布局布線后仿真結(jié)果,輸出為各信道與Matlab仿真輸出的誤差,從圖中可以看出兩者之間誤差很小。
表1 FPGA 布局布線后資源消耗情況
本文論述了一種基于多相濾波的寬帶數(shù)字信道化接收機(jī)的FPGA實(shí)現(xiàn)方案,詳細(xì)分析了FPGA設(shè)計(jì)過程中遇到的異步時(shí)鐘域同步化、FIR濾波器的實(shí)現(xiàn)與卷積運(yùn)算模塊的位數(shù)截取以及64點(diǎn)基4FFT算法的實(shí)現(xiàn)等問題,給出了解決方案,最后通過布局布線后仿真驗(yàn)證了方案的物理可實(shí)現(xiàn)性。
[1] 王森.寬帶數(shù)字信道化接收機(jī)FPGA實(shí)現(xiàn)技術(shù)研究[D].成都:電子科技大學(xué),2008.
[2] 余銳.寬帶DBF和數(shù)字信道化技術(shù)[D].西安:西安電子科技大學(xué),2009.
[3] 丁玉美,高西全.數(shù)字信號(hào)處理[M].3版.西安:西安電子科技大學(xué)出版社,2009.
RealizationofWidebandDigitalChannelizationReceiverBasedonFPGA
LENG Peng-fei,XU Chao-yang
(The 723 Institute of CSIC,Yangzhou 225001,China)
A wideband digital channelized receiver has the characteristics of wide coverage frequency range,high sensitivity,large dynamic range,high interception probability and strong real-time processing ability,is a satisfied solution project in current reconnaissance receivers.This paper discusses a structure of wideband digital channelized receiver based on polyphase filtering technology,and validates the validity and realizability of the design through the simulation after placing and routing in field programmable gate array (FPGA).
wideband receiver;channelization;polyphase filtering;field programmable gate array
2017-05-24
TN971
A
CN32-1413(2017)06-0067-05
10.16426/j.cnki.jcdzdk.2017.06.014