国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

陣列互耦誤差FIR校正濾波器設(shè)計(jì)與FPGA實(shí)現(xiàn)

2019-10-23 12:23姚志成吳智慧楊劍張盛魁
計(jì)算機(jī)應(yīng)用 2019年8期

姚志成 吳智慧 楊劍 張盛魁

摘 要:?針對傳統(tǒng)型FIR濾波器在高階條件下運(yùn)算速度變慢與耗費(fèi)資源增多這一問題,提出一種基于分段卷積的高速高階FIR濾波器設(shè)計(jì)方法,通過在頻域并行處理的方式實(shí)現(xiàn)了數(shù)據(jù)的快速處理。首先,確定濾波器的設(shè)計(jì)階數(shù)M并將其作為基準(zhǔn)序列長度,對輸入的數(shù)字信號進(jìn)行M周期延時(shí);然后,將原序列與延時(shí)序列分別作快速傅里葉變換(FFT);其次,將變換后的頻域結(jié)果分別與濾波器相乘后作快速傅里葉逆變換(IFFT);最后,通過重疊保留的方法實(shí)現(xiàn)兩路數(shù)據(jù)的拼接。理論分析與仿真測試表明,與基于查找表(LUT)的傳統(tǒng)分布式方法相比,同等階數(shù)下所提方法的寄存器資源節(jié)省了30%以上。在此基礎(chǔ)上利用實(shí)驗(yàn)平臺的實(shí)測數(shù)據(jù)進(jìn)行驗(yàn)證,結(jié)果表明,與互耦誤差校正前相比,校正后的幅度失配均方根小于1dB,相位失配均方根小于0.1rad,實(shí)驗(yàn)數(shù)據(jù)充分展示了該方法對互耦誤差校正的有效性。

關(guān)鍵詞:數(shù)字陣導(dǎo)引頭;互耦誤差;FIR濾波器;現(xiàn)場編程門陣列;快速傅立葉變換

中圖分類號:?TN911

文獻(xiàn)標(biāo)志碼:A

FIR correction filter design and FPGA implementation for array mutual coupling error

YAO Zhicheng,WU Zhihui*,YANG Jian,ZHANG Shengkui

Rocket Force University of Engineering Missile Engineering college, Xian Shaanxi 710025, China

Abstract:?Focusing on the issue that the traditional Finite Impulse Response (FIR) filter slows down operation speed and consumes more resources under high-order conditions, a high-speed and high-order FIR filter design method based on piecewise convolution was proposed. Faster data processing was realized by the method of parallel processing in the frequency domain. Firstly, the design order M of the filter was determined and used as the reference sequence length, and the input digital signal was subjected to M period delay. Secondly, the original sequence and the delay sequence were respectively subjected to Fast Fourier Transform (FFT). Thirdly, the transformed sequences were respectively multiplied by the filter and then subjected to Inverse Fast Fourier Transform. Finally, the merging of the two way data was realized by the method of overlapping reservation. Theoretical analysis and simulation tests show that compared with the traditional distributed method based on Look Up Table (LUT), more than 30% of register resources were saved under the same order by the proposed method. On this basis, the measured data of the experimental platform were used for verification. Experimental results show that compared with the result of uncorrected mutual coupling error, the square root of the corrected amplitude mismatch is less than 1dB and the root mean square of phase mismatch is less than 0.1rad. Experimental data fully demonstrate the effectiveness of the method for mutual coupling error correction.

Key words:?digital array seeker; mutual coupling error; Finite Impulse Response (FIR) filter; Field-Programmable Gate Array (FPGA); Fast Fourier Transform (FFT)

0 引言

數(shù)字陣列雷達(dá)作為當(dāng)今雷達(dá)發(fā)展的重要組成部分,在遠(yuǎn)距離目標(biāo)探測、跟蹤以及定位上扮演著越來越重要的角色。相比傳統(tǒng)雷達(dá)體制來說,數(shù)字陣列雷達(dá)擁有著數(shù)量龐大的天線陣列,能夠靈活控制波束、有效提高信號增益[1]。

然而在實(shí)際系統(tǒng)中,會存在各種誤差使得天線方向圖的主波束方向產(chǎn)生偏差、寬度變窄以及零陷與副瓣抬高[2]等,導(dǎo)致數(shù)字陣列雷達(dá)對空間信號到達(dá)方向(Direction of Arrival, DOA)的估計(jì)產(chǎn)生較為嚴(yán)重的偏差,陣列的輸出信干噪比(Signal-to-Interference plus Noise Ratio, SINR)降低。其中,數(shù) 字陣列陣元間不可避免的互耦誤差給陣列信號處理帶來的影響非常惡劣。對數(shù)字陣導(dǎo)引頭來說,互耦誤差將直接影響到測角算法對目標(biāo)的定位以及后續(xù)的成像識別,因此在數(shù)字陣導(dǎo)引頭的生產(chǎn)與日常維護(hù)中,對互耦誤差的校正顯得尤為重要。

作為互耦誤差校正的關(guān)鍵,校正濾波器承擔(dān)著對各個陣元互耦誤差的校正作用。為解決濾波器階數(shù)與硬件資源之間的矛盾,文獻(xiàn)[3]通過理論推導(dǎo)與實(shí)驗(yàn)分析得出在均衡帶寬內(nèi),疊加的固定相移對均衡效果沒有影響。文獻(xiàn)[4]設(shè)計(jì)了一系列對比性仿真分析,深入研究了影響均衡效果的原因,得出了均衡算法的最優(yōu)應(yīng)用設(shè)計(jì),對工程應(yīng)用具有理論參考價(jià)值。 文獻(xiàn)[5]提出了一種基于傅里葉變換的通道均衡算法,通過實(shí)驗(yàn)發(fā)現(xiàn)該算法受到許多實(shí)際因素的影響導(dǎo)致算法性能的嚴(yán)重下降。文獻(xiàn)[6]分析了逆傅里葉變換算法均衡性能不理想的原因,基于此提出在逆傅里葉變換之前先對頻域抽樣點(diǎn)進(jìn)行優(yōu)化設(shè)計(jì)的方法,使得均衡性能得到改善,同時(shí)其運(yùn)算量也得到有效減少。文獻(xiàn)[7]借鑒快速卷積的實(shí)現(xiàn)方法,提出了一種基于快速傅里葉變換(Fast Fourier Transform, FFT)的高速率均衡器實(shí)現(xiàn)方法,與時(shí)域方法相比,該方法在濾波器階數(shù)大于32階時(shí)能明顯降低對乘法資源的損耗。

文獻(xiàn)[8]提出了一種改進(jìn)的離散傅里葉逆變換法(Inverse Discrete Fourier Transform,IDFT),成功地克服了帶外噪聲帶來的影響。文獻(xiàn)[9]為了克服帶外噪聲的影響,采用的是對帶內(nèi)幅度特性進(jìn)行梯形擴(kuò)展和對帶內(nèi)相位特性進(jìn)行線性外推的方法。傅立葉變換法作為頻域最小二乘擬合法的延伸,它最大的優(yōu)點(diǎn)就是在工程上算法簡單、易于實(shí)現(xiàn),這也是多數(shù)數(shù)字陣列雷達(dá)均衡器設(shè)計(jì)實(shí)例選擇該方法的原因。除了上述優(yōu)點(diǎn)以外,對于傅立葉變換法而言,帶外噪聲會影響系數(shù)的截取,進(jìn)而影響均衡器的設(shè)計(jì)與均衡結(jié)果,所以對于帶外噪聲的處理以及系數(shù)截取方式

這兩方面仍需進(jìn)一步研究。

根據(jù)上述研究,結(jié)合實(shí)際處理需求,本文采用分段卷積的方法對FIR(Finite Impulse Response)濾波器進(jìn)行了優(yōu)化設(shè)計(jì),使其能夠在濾波器輸入為長序列時(shí)仍能實(shí)現(xiàn)快速計(jì)算?;赬ilinx Zynq-7000系列現(xiàn)場編程門陣列(Field-Programmable Gate Array, FPGA)板卡對FIR濾波器了進(jìn)行硬件設(shè)計(jì),利用測試文件對濾波器的功能進(jìn)行了測試驗(yàn)證。最后利用實(shí)測數(shù)據(jù)對基于FIR濾波器的寬帶互耦誤差校正算法的校正效果進(jìn)行了驗(yàn)證,實(shí)驗(yàn)結(jié)果表明本文設(shè)計(jì)的FIR濾波器能夠滿足系統(tǒng)對于誤差校正的需求,也進(jìn)一步驗(yàn)證了基于FIR濾波器的寬帶互耦誤差校正算法的有效性與實(shí)用性。

1 FIR濾波器的優(yōu)化設(shè)計(jì)

1.1 FIR濾波器設(shè)計(jì)方案選擇

隨著數(shù)字技術(shù)的快速發(fā)展,現(xiàn)場可編程門陣列(FPGA)得到了迅速發(fā)展和普及,整個器件的集成度與功能的多樣性以及器件可靠性都非常出色。目前基于FPGA的高速高階FIR濾波器的設(shè)計(jì)主要有兩種方式:分布式算法(Distributed Arithmetic, DA)以及快速傅里葉變換法。

1)分布式算法。

分布式算法是一種實(shí)現(xiàn)乘法與加法運(yùn)算的算法。其主要原理如下:

一個FIR濾波器的時(shí)域表達(dá)形式為:

y (n)= ∑ N-1 n=0? h (n)× x (n)= h (0) x (0)+ h (1) x (1)+L+ h (N-1) x (n-1)

(1)

進(jìn)一步假設(shè) h (n)為已知常數(shù),而 x (n)為輸入變量。對于有符號DA系統(tǒng)中假設(shè)變量 x (n)的表達(dá)式為:

x (n)=-2B· x B(n)+∑ B-1 b=0? x b(n)·2b;? x b(n)∈[0,1]

(2)

式中: x b(n)代表的是 x (n)的第b位, x (n)代表信號 x 的第n個采樣。將式(2)代入式(1)可得:

y (n)=∑ N-1 n=0? h (n)· { -2B· x B(n)+∑ B-1 b=0? x b(n)·2b }

(3)

重新分別求和,可得:

y (n)= -2B·∑ N-1 n=0? h (n)· x B(n)+∑ B-1 b=0 2b·∑ N-1 n=0? h (n)· x b(n)

(4)

對于∑ B-1 b=0 2b·∑ N-1 n=0? h (n)· x b(n)的硬件實(shí)現(xiàn),就是使用一個查找表(Look Up Table, LUT)實(shí)現(xiàn)映射,并提前設(shè)定程序的LUT接收一個N位輸入向量:

x b(n)=[xb(0),xb(1),…,xb(N-1)]

(5)

輸出為:

h (n)· x b(n)= [h(0)·xb(0),h(1)·xb(1),…,h(N-1)·xb(N-1)]

(6)

輸出由相應(yīng)的二次冪加權(quán)并累加,得到最終結(jié)果。

2)FFT法。

在頻域?qū)崿F(xiàn)FIR濾波器便是利用時(shí)域上的卷積等效于頻域上相乘的原理。

y (n)=? x (n) h (n)=IFFT{FFT[ x (n)]×FFT[ h (n)]}

(7)

在實(shí)際系統(tǒng)中,濾波器的輸入序列為有限長序列。假設(shè)兩個有限長序列 x (n)與 h (n)的長度分別為N與M,將兩序列進(jìn)行補(bǔ)零操作使得兩序列長度均為L(L=N+M-1):

x ′(n)=? x (n),?? 0≤n≤N-10, N≤n≤L-1

(8)

h ′(n)=? h (n),?? 0≤n≤M-10, M≤n≤L-1

(9)

獲得了兩個長度為L的序列后,利用循環(huán)卷積代替線性卷積:

y L(n)= x (n) h (n)= y C(n)= x ′(n) h ′(n)

(10)

式中,與分別表示線性卷積與循環(huán)卷積。

利用FFT計(jì)算 y L(n)的步驟為:

1)對 x ′(n)做L點(diǎn)DFT得到 X ′(k);

2)對 h ′(n)做L點(diǎn)DFT得到 H ′(k);

3)計(jì)算 Y (k)= X ′(k) H ′(k);

4)對 Y (k)做L點(diǎn)IDFT得到 y L(n)。

3)方案比較分析。

數(shù)字陣導(dǎo)引頭系統(tǒng)各陣元通道接收數(shù)據(jù)帶寬較寬,基帶信號采樣率較高,數(shù)字正交解調(diào)后的I/Q兩路信號的數(shù)據(jù)量較大,因此對于濾波器的處理速度有較高的要求。除此之外,為了保證信號校正的精度,需要設(shè)計(jì)較高階數(shù)的濾波器進(jìn)行校正。綜上所述,校正濾波器對于階數(shù)與處理速度均有較高的要求。

基于FFT的FIR濾波器的頻域方法與時(shí)域方法相比減少了大量的運(yùn)算量,并且濾波階數(shù)越高其速度提高得更為明顯。與基于分布式算法的FIR濾波器相比,同等階數(shù)下基于FFT的FIR濾波器的處理速度更快,但資源消耗得更多。隨著未來數(shù)字技術(shù)的發(fā)展,硬件資源的集成度將越來越高,同等階數(shù)下基于FFT的FIR濾波器在處理速度上將越來越占有優(yōu)勢[10]。

綜上所述,選擇基于FFT的FIR濾波器作為數(shù)字陣導(dǎo)引頭校正濾波器的設(shè)計(jì)方案。

2 基于分段卷積的FIR濾波器優(yōu)化設(shè)計(jì)

在實(shí)際數(shù)字陣導(dǎo)引頭互耦誤差校正中,通常濾波器處理的序列 x (n)的序列長度較長。如果利用有限長序列進(jìn)行卷積處理,快速傅里葉變換(FFT)與快速傅里葉逆變換(Inverse Fast Fourier Transform,IFFT)點(diǎn)數(shù)會很大,給硬件造成較大的負(fù)擔(dān);并且硬件的處理能力有限,并不能完成對于過長序列的FFT與IFFT;除此之外, h (n)還需要補(bǔ)較多的零。因此使用分段卷積的方式進(jìn)行處理。

分段卷積是將 x (n)分成與 h (n)點(diǎn)數(shù)相仿的序列,分別使用FFT的方法得到每段的卷積結(jié)果,然后按一定的方式將序列接合在一起以最終得到總的輸出序列。分段卷積主要有兩種方法:重疊相加法與重疊保留法。

2.1 設(shè)計(jì)方法分析

1)重疊相加法。

重疊相加法需要將 x (n)分為若干個點(diǎn)數(shù)為N的序列 x m(n),并且將序列 x m(n)與M點(diǎn)序列 h (n)補(bǔ)零至點(diǎn)數(shù)為N+M-1,再進(jìn)行 N+M-1點(diǎn)的FFT。通過觀察,各分段卷積結(jié)果有重疊,需將重疊的部分相加得到最終的結(jié)果。整個方法需要對 x m(n)與 h (n)均進(jìn)行補(bǔ)零,且FFT的點(diǎn)數(shù)較多,在實(shí)際FPGA實(shí)現(xiàn)中浪費(fèi)了較多時(shí)間在補(bǔ)零上[11]。

2)重疊保留法。

重疊保留法需要將 x (n)分成若干個點(diǎn)數(shù)為N的序列 x m(n),保證前后兩個序列有M-1個點(diǎn)是重疊的,將 h (n)補(bǔ)零至點(diǎn)數(shù)為N,并對兩序列進(jìn)行M點(diǎn)FFT。最后保留各段卷積后結(jié)果的后 N+M-1個樣本,構(gòu)成最終的序列。重疊保留法與重疊相加法的本質(zhì)結(jié)果是相同的,但是重疊保留法的運(yùn)算過程不需要對輸入序列進(jìn)行過多的補(bǔ)零操作,并且序列 h (n)可以提前進(jìn)行補(bǔ)零以及FFT操作進(jìn)而存入ROM中,因此選擇重疊保留法進(jìn)行分段卷積。

2.2 基于重疊保留法的校正濾波器優(yōu)化設(shè)計(jì)

重疊保留法的具體原理如下:首先將 x (n)進(jìn)行分段,使前后兩序列中有M-1個點(diǎn)的重疊部分, x m(n)表示將 x (n)分段后的第m部分:

x m(n)= x (n+m(N-M+1)); 0≤n≤N-1

(11)

其長度為N,此時(shí)M≤N。對 h (n)進(jìn)行補(bǔ)零操作得到 h ′(n),使得序列長度為M。利用循環(huán)卷積得到序列 h ′(n)與 x m(n)的卷積結(jié)果:

y ′m(n)= x m(n) h ′(n)

(12)

舍棄 y ′m(n)的前M-1個樣本,保留剩下的N+M-1個樣本,得到:

y m(n)=

0,??? 0≤n≤M-2

y ′m(n), M-1≤n≤N-1

(13)

將 y m(n)拼接起來,得到 x (n)與 h (n)的線性卷積 y L(n)。

由上可知,單線程的卷積使得整個信號處理的效率較低,難以實(shí)現(xiàn)整個模塊的快速操作,并且重疊保留法需要對長序列進(jìn)行特殊的分段。因此結(jié)合實(shí)際設(shè)計(jì)一種基于重疊保留法的校正濾波器。具體步驟如下:

1)確定濾波器 h (n)的階數(shù)為M,即序列長度為M,針對輸入的數(shù)據(jù)序列 x (n),對其進(jìn)行延時(shí)M個周期得到 x (n-M+1);

2)對 x (n)與 x (n-M+1)兩序列進(jìn)行均勻分段得到 x m(n)與 x m(n-M+1),每段長度為N點(diǎn)滿足N=2(M-1)且N為2的乘冪;對兩序列分別做FFT,得到 X ′m(k)與 X ″m(k)(k=0,1,…,N-1);

3)對 h (n)進(jìn)行補(bǔ)零操作得到 h ′(n),其點(diǎn)數(shù)為N,做FFT得到 H ′(k);

4)分別將 X ′m(k)與 X ″m(k)于 H ′(k)做乘積,繼而做IFFT,得到N點(diǎn)的序列 y ′m(n)與 y ″m(n);

5)分別取 X ′m(k)的與 X ″m(k)的后M-1個點(diǎn),拼接成完整的N點(diǎn)的輸出序列 y L(n)。

通過對上述步驟分析可知, x (n)延時(shí)后得到 x (n-M+1),兩序列再進(jìn)行分段,此時(shí)兩序列之間相差M-1個時(shí)鐘。在實(shí)際FPGA中,數(shù)據(jù)是按時(shí)鐘輸入的,所以 x m(n)與 x m+1(n)之間相差M-1個時(shí)鐘。對于重疊保留法,每個子序列經(jīng)過循環(huán)卷積舍棄前M-1個數(shù)據(jù),并保留剩余M-1個數(shù)據(jù)作為最終線性卷積的結(jié)果。當(dāng) x m(n)與 x m(n-M+1)兩序列同時(shí)輸入進(jìn)行FFT與IFFT后,分別經(jīng)過重疊保留的操作,再進(jìn)行拼接得到的序列等于常規(guī)方法中前兩個序列重疊保留后的序列。

兩路數(shù)據(jù)并行處理相比一路數(shù)據(jù)處理來說大大縮短了數(shù)據(jù)處理的時(shí)間,兩路輸出可以無縫拼接為完整的輸出,不需要浪費(fèi)多余的RAM對輸出數(shù)據(jù)進(jìn)行延時(shí)拼接,并且該設(shè)計(jì)流程能夠充分發(fā)揮FPGA中FFT IP核Pipelined Streaming I/O結(jié)構(gòu)在數(shù)據(jù)處理上的優(yōu)勢[12],再加上分段卷積的方式在高階高速校正濾波器上比其他方式擁有明顯優(yōu)勢,所以這一優(yōu)化設(shè)計(jì)能夠較好地滿足校正濾波器的設(shè)計(jì)需求。

3 基于FPGA的FIR濾波器設(shè)計(jì)與實(shí)現(xiàn)

3.1 校正濾波器總體設(shè)計(jì)框架

本節(jié)基于Xilinx Zynq-7000系列 XA7Z020CLG484設(shè)計(jì)一款64階FIR濾波器[13-14]。根據(jù)2.2節(jié)中所提的設(shè)計(jì)方法,首先將信號分為兩路并對其中一路信號進(jìn)行延時(shí)63周期,將輸入數(shù)據(jù)進(jìn)行分段,每段長度均為128點(diǎn),分別做FFT,得到對應(yīng)的頻域輸出;其次從ROM中讀取提前存入的濾波器系數(shù),并將兩路頻域輸出與存儲在ROM中的FIR濾波器頻域數(shù)據(jù)進(jìn)行相乘(乘法器輸出也是用過流水實(shí)現(xiàn)的);經(jīng)過上述兩步后經(jīng)過IFFT處理模塊,只保留原始輸出信號的后63點(diǎn)與延時(shí)后輸出信號的65點(diǎn),共同組成最終輸出的128點(diǎn),得到完整的線性卷積結(jié)果,進(jìn)而可以實(shí)現(xiàn)待校正數(shù)據(jù)在校正濾波器中的流水線操作。具體設(shè)計(jì)如圖3所示。

其中:

data_delay模塊:通過調(diào)用RAM IP核實(shí)現(xiàn)對輸入數(shù)據(jù)x_data的讀寫,進(jìn)而對x_data進(jìn)行延時(shí)處理;

fft_top_xfft模塊:通過調(diào)用FFT IP核實(shí)現(xiàn)對輸入數(shù)據(jù)x_data的FFT;

fft_top_x63fft模塊:通過調(diào)用FFT IP核實(shí)現(xiàn)對輸入數(shù)據(jù)x_63data的FFT;

fft_result_multiple模塊:調(diào)用事先存入ROM的hfft_real_data與hfft_imag_data,并且通過調(diào)用Complex Multiplier IP核,實(shí)現(xiàn)對數(shù)據(jù)的頻域相乘;

fft_top_xifft模塊:通過調(diào)用FFT IP核實(shí)現(xiàn)對xfftXhfft_data_imag與xfftXhfft_data_real的IFFT;

fft_top_x63ifft模塊:通過調(diào)用FFT IP核實(shí)現(xiàn)對x63fftXhfft_data_imag與x63fftXhfft_data_real的IFFT;

chongdie_out模塊:通過調(diào)用RAM IP核實(shí)現(xiàn)對數(shù)據(jù)的緩存,進(jìn)而實(shí)現(xiàn)對輸出序列的保留與拼接。

3.2 FFT/IFFT模塊設(shè)計(jì)

該設(shè)計(jì)利用Xilinx FFT IP核實(shí)現(xiàn)各模塊的FFT/IFFT功能,F(xiàn)FT IP核可以支持點(diǎn)數(shù)較大的FFT運(yùn)算,F(xiàn)FT內(nèi)核可以實(shí)現(xiàn)N點(diǎn)DFT或IDFT計(jì)算,其中N=2m(m=3,4,…,16)。FFT內(nèi)核有四種可選擇的結(jié)構(gòu):Pipelined Streaming I/O、Radix-4 Burst I/O、Radix-2 Burst I/O以及Radix-2 Lite Burst I/O,其中Pipelined Streaming I/O結(jié)構(gòu)允許連續(xù)對輸入數(shù)據(jù)進(jìn)行變換。

本設(shè)計(jì)的四個模塊中128點(diǎn)的FFT/IFFT均采用Pipelined Streaming I/O結(jié)構(gòu)實(shí)現(xiàn)。Pipelined Streaming I/O結(jié)構(gòu)利用多個基2蝶形運(yùn)算處理單元級聯(lián)的方式實(shí)現(xiàn)對連續(xù)數(shù)據(jù)的處理。每個處理單元都有自己的存儲模塊用于存儲輸入數(shù)據(jù)和中間運(yùn)算數(shù)據(jù)(如圖4所示)。FFT IP核可以在執(zhí)行當(dāng)前幀數(shù)據(jù)運(yùn)算的同時(shí)讀取下一幀的數(shù)據(jù),并輸出上一幀數(shù)據(jù)運(yùn)算的結(jié)果。這種架構(gòu)也可以單獨(dú)計(jì)算一幀的數(shù)據(jù)或者計(jì)算間斷的數(shù)據(jù)輸入。輸入數(shù)據(jù)是以順序的方式輸入到FFT IP核中,而數(shù)據(jù)輸出可采用順序輸出或者是倒序輸出。在選擇順序輸出的時(shí)候,會占用更多的存儲器資源[15]。根據(jù)上述分析對Xilinx FFT IP核進(jìn)行配置,如圖5所示。

上述四個模塊中,fft_top_xfft與fft_top_x63fft模塊實(shí)現(xiàn)的是對輸入數(shù)據(jù)的FFT,而fft_top_xifft與fft_top_x63ifft實(shí)現(xiàn)的是對輸入數(shù)據(jù)的IFFT,在FFT IP核的配置過程中,利用模塊中的輸入fft_or_ifft對FFT IP核進(jìn)行配置實(shí)現(xiàn)響應(yīng)的功能。

3.3 頻域相乘模塊設(shè)計(jì)

在整個結(jié)構(gòu)中fft_result_multiple模塊的作用是從濾波器系數(shù)存儲器中讀取濾波器系數(shù)并與FFT的輸出相乘,得到頻域相乘的結(jié)果。頻域相乘模塊包括地址控制單元與復(fù)數(shù)乘法器兩部分。其中核心復(fù)數(shù)乘法器主要利用了Xilinx中的Complex Multiplier IP核實(shí)現(xiàn)復(fù)數(shù)的相乘的功能,具體IP核的配置如圖6所示。

3.4 存儲模塊設(shè)計(jì)

在整體設(shè)計(jì)中,存儲器模塊的主要作用是利用ROM存儲濾波器系數(shù)和利用RAM實(shí)現(xiàn)了對輸入數(shù)據(jù)的延時(shí)以及利用RAM完成數(shù)據(jù)的緩存以及讀取進(jìn)而實(shí)現(xiàn)兩路輸出數(shù)據(jù)的重疊保留。

存儲器模塊是采用XA7Z020CLG484片內(nèi)的嵌入式Block

RAM模塊組成的單口RAM存儲器。本設(shè)計(jì)采用Xilinx提供

的Block Memory Generator IP核對存儲器模塊進(jìn)行設(shè)計(jì)。其

中data_delay模塊、fft_result_multiple模塊和chongdie_out模

塊的設(shè)計(jì)指標(biāo)如表1所示。

3.5 仿真驗(yàn)證及分析

為進(jìn)一步驗(yàn)證FIR濾波器的設(shè)計(jì)效果,本節(jié)基于上述設(shè)計(jì)的濾波器,設(shè)計(jì)了測試文件對濾波器的濾波效果進(jìn)行測試,測試文件內(nèi)部結(jié)構(gòu)如圖7所示。測試文件利用DDS Complier IP核構(gòu)成兩個模塊dds_signal1和dds_signal2分別生成10MHz與80MHz的單頻信號,信號采樣頻率為640MHz,然后將兩路信號合成一路作為輸入送入設(shè)計(jì)的FIR濾波器top模塊中。在此基礎(chǔ)上,利用Matlab中Filter Designer生成64階截止頻率為64MHz的低通濾波器,并將濾波器系數(shù)存入hfft_imag和hfft_real中。最后在VIVADO軟件中利用測試文件進(jìn)行功能測試。

測試結(jié)果表明所設(shè)計(jì)的濾波器可以將輸入數(shù)據(jù)的高頻部分剔除出去,只保留低頻部分的單頻信號。在64MHz工作時(shí)鐘下,F(xiàn)IR濾波器完成運(yùn)算只需要1ms左右,可以滿足對濾波器速度的要求。

對于該設(shè)計(jì),通過編譯得到資源占用情況如圖8所示。

為了比較本文算法與傳統(tǒng)分布式算法在硬件資源的消耗上的差別,同樣在Xilinx ZYNQ-7000芯片上實(shí)現(xiàn)64階濾波器,對比分析結(jié)果如表2所示。

分析表2可知,基于分段卷積的并行算法與傳統(tǒng)分布式算法相比,其寄存器、LUT(Look-Up-Table)和DSP(Digital Signal Processor)等資源占用率都得到明顯降低,這是由于采用了分段卷積的方法實(shí)現(xiàn)高階FIR濾波器可以有效減少運(yùn)算部件的數(shù)量。

4 校正效果測試

4.1 實(shí)驗(yàn)設(shè)計(jì)

本文針對校正濾波器階數(shù)較高、處理序列較長的特點(diǎn),采用第2章中的設(shè)計(jì)方法對FIR濾波器進(jìn)行設(shè)計(jì)。為了進(jìn)一步驗(yàn)證校正濾波器對于誤差校正的效果,利用八陣元數(shù)字陣列接收系統(tǒng)實(shí)驗(yàn)平臺得到各通道的頻域特性,進(jìn)而對校正濾波器的校正效果進(jìn)行驗(yàn)證。由于陣列接收到的采樣信號中包括多種誤差的影響,其中最主要的便是幅相誤差與互耦誤差。為了驗(yàn)證寬帶互耦誤差校正方法的性能以及本文設(shè)計(jì)的FIR濾波器的校正效果,利用文獻(xiàn)[6]中的寬帶幅相誤差校正方法對陣列接收數(shù)據(jù)幅相誤差進(jìn)行了校正。經(jīng)過寬帶幅相誤差校正后的數(shù)據(jù)中主要包含互耦誤差,進(jìn)而消除了幅相誤差對實(shí)驗(yàn)的影響。

本文利用八陣元數(shù)字陣列接收系統(tǒng)實(shí)驗(yàn)平臺,通過該平臺獲取實(shí)驗(yàn)數(shù)據(jù)驗(yàn)證校正濾波器的校正效果。平臺框架如圖9所示。該系統(tǒng)的接收天線為八陣元均勻線陣,接收天線可工作頻段為0.6~3.0GHz,具有窄帶和寬帶兩種模式,窄帶瞬時(shí)帶寬為8MHz,寬帶瞬時(shí)帶寬為500MHz。數(shù)字接收組件由高速ADC(Analog-to-Digital-Converter)、高性能FPGA組成。

具體實(shí)驗(yàn)步驟如下:

1)將實(shí)驗(yàn)系統(tǒng)調(diào)整為校正模式,利用暗室中設(shè)置的信號源生成帶寬為500MHz、中心頻點(diǎn)為2.7GHz的線性調(diào)頻信號射向陣列,進(jìn)而得到各通道頻率響應(yīng);

2)利用寬帶幅相誤差校正方法對陣列各通道頻率響應(yīng)進(jìn)行幅相誤差校正進(jìn)而得到僅含有互耦誤差的陣列接收數(shù)據(jù);

3)利用互耦誤差校正算法得到校正濾波器矩陣,該矩陣由64個濾波器組成;

4)在得到了濾波器系數(shù)的基礎(chǔ)上,將濾波器系數(shù)存入ROM中,利用FPGA分別對各個濾波器進(jìn)行設(shè)計(jì)與實(shí)現(xiàn);

5)將各通道接收數(shù)據(jù)輸入相應(yīng)濾波器中得到輸出數(shù)據(jù),并將對應(yīng)通道的輸出數(shù)據(jù)進(jìn)行相加,最終得到校正后的完整通道頻率特性。

4.2 實(shí)驗(yàn)結(jié)果與分析

為了便于觀察寬帶互耦誤差校正方法的校正效果,本文以第一通道為參考,給出了其他通道相對于第一通道的幅度差與相位差。

由圖10可知,未對互耦誤差進(jìn)行校正時(shí),幅度起伏可達(dá)到8.4dB,各通道的相位特性隨頻率非線性變化,經(jīng)過寬帶幅相誤差校正后的數(shù)據(jù)一致性較好;但是受互耦誤差的影響,各通道特性存在較明顯抖動。經(jīng)過處理后,幅度起伏降低至3.5dB以下,各通道相位基本呈線性變化。由此可見,寬帶互耦誤差校正算法是有效的。

為了定量地描述陣列各通道間的一致性,定義第i個通道的失配特性為:

Di(f)= Ci(f) Cref(f) =ai(f)exp(ji(f))

(14)

式中,Ci(f)和Cref(f)分別為第i個通道和參考通道的頻率響應(yīng)。

幅度失配均方根和相位失配均方根定義如下:

Δai=? 1 B ∫B/2-B/2 ai(f)- i(f) 2df

(15)

Δi=? 1 B ∫B/2-B/2 i(f)- i(f) 2df

(16)

其中:B為帶寬, i(f)和 i(f)分別表示理想條件下的幅頻與相頻特性。

以第一通道為參考,各通道的幅度與相位失配均方根如表3所示。未校正時(shí),最大幅度失配達(dá)到了2.5dB,最大相位失配達(dá)0.32rad,并且各通道之間的幅相失配差異較大;經(jīng)過基于FIR濾波器的寬帶互耦誤差校正方法校正后,幅度失配均方根小于1dB,相位失配均方根小于0.1rad。這充分說明了本文方法對于互耦誤差校正的有效性。

5 結(jié)語

為了進(jìn)一步將理論算法應(yīng)用于實(shí)際工程中,本文設(shè)計(jì)了一種基于分段卷積的高速高階FIR濾波器。首先分析了基于分布式算法與基于FFT法的FIR濾波器的設(shè)計(jì)方案,并比較了它們的優(yōu)缺點(diǎn),發(fā)現(xiàn)基于FFT法的FIR濾波器頻域設(shè)計(jì)方案更適合系統(tǒng)對濾波器高速高階的需求;然后結(jié)合實(shí)際處理需求,基于分段卷積的方法對FIR濾波器進(jìn)行了優(yōu)化設(shè)計(jì),使其能夠在濾波器輸入為長序列時(shí)仍能實(shí)現(xiàn)快速計(jì)算;基于Xilinx Zynq-7000系列FPGA板卡對FIR濾波器進(jìn)行設(shè)計(jì),利用測試文件對濾波器的功能進(jìn)行了測試驗(yàn)證,并利用實(shí)測數(shù)據(jù)對基于FIR濾波器的寬帶互耦誤差校正算法的校正效果進(jìn)行了驗(yàn)證,實(shí)驗(yàn)結(jié)果表明本文設(shè)計(jì)的FIR濾波器能夠滿足系統(tǒng)對于誤差校正的需求,也進(jìn)一步驗(yàn)證了基于FIR濾波器的寬帶互耦誤差校正算法的有效性與實(shí)用性。

參考文獻(xiàn)

[1]?陳曾平,張?jiān)拢U慶龍.數(shù)字陣列雷達(dá)及其關(guān)鍵技術(shù)進(jìn)展[J].國防科技大學(xué)學(xué)報(bào),2010,32(6):1-7. (CHEN Z P, ZHANG Y, BAO Q L. Advance in digital array radar and its key technologies [J]. Journal of National University of Defense Technology, 2010, 32(6):1-7.)

[2]?李衛(wèi)星,張?jiān)拢愒?一種寬帶陣列幅相與互耦誤差聯(lián)合校正算法[J].航空學(xué)報(bào),2016,37(3):1025-1035. (LI W X, ZHANG Y, CHEN Z P. Wideband calibration algorithm for amplitude-phase and mutual coupling errors [J]. Acta Aeronautica et Astronautica Sinica, 2016, 37(3):1025-1035.)

[3]?彭小亮,李榮鋒.固定相移對自適應(yīng)通道均衡性能影響的分析[J].空軍預(yù)警學(xué)院學(xué)報(bào),2004,18(2):11-13. (PENG X L, LI R F. Analysis of effect of constant phase-shifting on adaptive channel equalization performance [J]. Journal of Air Force Radar Academy, 2004, 18(2): 11-13.)

[4]?楊虔靜.數(shù)字陣列雷達(dá)自適應(yīng)通道均衡算法研究[D].西安:西安電子科技大學(xué),2011:47-53. (YANG Q J. Research on adaptive channel equalization algorithm for digital array radar [D]. Xian: Xidian University, 2011: 47-53.)

[5]?王峰,傅有光,孟兵.基于傅里葉變換的雷達(dá)通道均衡算法性能分析及改進(jìn)[J].電子學(xué)報(bào),2006,34(9):1677-1680. (WANG F, FU Y G, MENG B. Performance analysis and improvement of the equalization algorithm based on Fourier transform for radar channel [J]. Acta Electronica Sinica, 2006, 34(9):1677-1680.)

[6]?徐明燦.一種改進(jìn)的雷達(dá)通道均衡算法[J]. 科技視界,2012(2):69-72. (XU M C. An improved algorithm of the radar channel equalization [J]. Science & Technology View, 2012(2): 97-98.)

[7]?賈可新,柳桃榮,劉振華.一種寬帶陣列通道均衡器設(shè)計(jì)[J].航天電子對抗,2013,29(6):62-64. (JIA K X, LIU T R, LIU Z H. A design of wideband array channel equalizer [J]. Aerospace Electronic Warfare, 2013, 29(6): 62-64.)

[8]?袁上策,何子述.改進(jìn)的多通道系統(tǒng)頻域信道均衡算法[J].雷達(dá)科學(xué)與技術(shù),2014, 12(5):517-521. (YUAN S C, HE Z S. An improved frequency-domain equalization algorithm in multi-channel system [J]. Radar Science & Technology, 2014, 12(5): 517-521.)

[9]?張?jiān)?,鮑慶龍,楊劍,等.寬帶數(shù)字陣列雷達(dá)通道均衡方法的設(shè)計(jì)與實(shí)現(xiàn)[J].信號處理,2010,26(3):453-457. (ZHANG Y, BAO Q L, YANG J, et al. Design and Implementation of channel equalization method for wideband digital array radar [J]. Signal Processing, 2010, 26(3): 453-457.)

[10]?王宇峰.基于FFT的快速卷積算法的FPGA實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2011:11-17. (WANG Y F. FPGA implementation of FFT-based fast convolution algorithm[D]. Harbin: Harbin Institute of Technology, 2011: 11-17.)

[11]?王法棟,劉宇.高階數(shù)字濾波器分布式算法結(jié)構(gòu)比較[J].聲學(xué)技術(shù),2009,28(3):307-311. (WANG F D, LIU Y. Comparison between distributed arithmetic architectures of high-order digital filters [J]. Technical Acoustics, 2009, 28(3): 307-311.)

[12]?李大習(xí).基于FPGA的可配置FFT IP核實(shí)現(xiàn)研究[J].電子科技,2014, 27(6):46-49, 53. (LI D X. Research on and implementation of reconfigurable FFT IP core based on FPGA [J]. Electronic Science & Technology, 2014, 27(6): 46-49, 53.)

[13]?張震. 基于FPGA的通用型FIR數(shù)字濾波器的研究與設(shè)計(jì)[J]. 軟件, 2015, 36(6):125-128. (ZHANG Z. Research and design of universal FIR digital filter based on FPGA[J]. Computer Engineering & Software, 2015, 36(6): 125-128.)

[14]?盧雍卿, 李劍文, 許雯雯. 基于FPGA的數(shù)字濾波器設(shè)計(jì)與仿真[J]. 軟件導(dǎo)刊, 2017, 16(2): 85-88. (LU Y Q, LI J W, XU W W. Design and simulation of digital filter based on FPGA [J]. Software Guide, 2017, 16(2): 85-88.)

[15]?錢慧玲,左明鑫,黃紅星,等.基于FPGA的數(shù)字濾波器設(shè)計(jì)[J].大眾科技,2010(10):65-66. (QIAN H L, ZUO M X, HUANG H X, et al. Digital filter design based on FPGA [J]. Dazhong Keji, 2010(10): 65-66.)

大安市| 大港区| 松溪县| 利辛县| 东海县| 承德市| 昭通市| 淮滨县| 连城县| 托克逊县| 宁蒗| 确山县| 山东| 高安市| 沙湾县| 平潭县| 攀枝花市| 汪清县| 德保县| 策勒县| 杭锦后旗| 洛阳市| 浠水县| 铜梁县| 麻城市| 鸡西市| 桃园县| 醴陵市| 满洲里市| 久治县| 济宁市| 融水| 松溪县| 兰州市| 鄂尔多斯市| 板桥市| 瑞丽市| 青铜峡市| 武乡县| 友谊县| 万安县|