駱 希,陶 偉,黃榮鑫
(重慶金美通信有限責(zé)任公司,重慶400030)
基于FPGA的高速FIR濾波器并行結(jié)構(gòu)設(shè)計
駱 希,陶 偉,黃榮鑫
(重慶金美通信有限責(zé)任公司,重慶400030)
提出了一種基于FPGA平臺的并行FIR濾波器結(jié)構(gòu),能大幅提升濾波器的計算能力。與傳統(tǒng)的串行濾波器結(jié)構(gòu)相比,并行結(jié)構(gòu)的運算速度可以提高N倍,N為并行路數(shù),同時運算延遲也會相應(yīng)減小,在處理時鐘速率有限的情況下,通過使用并行結(jié)構(gòu)的FIR濾波器,可大幅提高運算吞吐量。以寬帶數(shù)據(jù)鏈為應(yīng)用背景介紹了并行FIR濾波器的使用與實現(xiàn),以兩路并行結(jié)構(gòu)設(shè)計為例,通過Matlab對FIR濾波器運算進行了浮點級的仿真驗證,然后用經(jīng)典符號數(shù)表示以及優(yōu)化定點濾波器系數(shù),最后在Xilinx的K7系列芯片實現(xiàn)了定點并行濾波器。通過Xilinx提供的編譯軟件Vivado編譯以及下載測試結(jié)果表明,該濾波器僅占用少量的資源,其等效吞吐量可達到1GHz。
可編程邏輯陣列;有限脈沖響應(yīng)濾波器;吞吐量;浮點;定點運算;并行仿真
有限脈沖響應(yīng)(FIR)濾波器由于其優(yōu)良的線性相位特性以及全穩(wěn)定特點,在許多領(lǐng)域都得到了廣泛應(yīng)用。在某些應(yīng)用中,如寬帶數(shù)據(jù)鏈,在現(xiàn)代戰(zhàn)場中需要對大量信息及時、準確地分發(fā),劇增的遠程多媒體通信流量必須依靠高速的無線數(shù)據(jù)傳輸系統(tǒng),而無線傳輸系統(tǒng)中大量會用到FIR濾波器,隨著數(shù)據(jù)傳輸速率越來越高,也就必然導(dǎo)致對FIR濾波器的運算速率要求也越來越高。
目前,對FIR濾波器的運算速率要求已經(jīng)達到1GHz,這對硬件提出了非常苛刻的要求。本設(shè)計采用Xilinx公司K7系列FPGA芯片,芯片內(nèi)部理論上可運行500MHz處理時鐘,但在芯片極限的最高時鐘下電路設(shè)計受約束的條件過多,并且電路的穩(wěn)定性也缺乏穩(wěn)定可靠的保證。通常在工程實踐時,最高500MHz時鐘可在電路中局部運行,在大規(guī)模布線運算時將FPGA處理時鐘控制在350MHz以內(nèi),設(shè)計自由度較大,電路穩(wěn)定性高[1]。
顯然,現(xiàn)有FPGA芯片無法滿足1GHz處理時鐘的要求,因此需要采用并行架構(gòu)進行設(shè)計實現(xiàn),以增加電路面積倍數(shù)來換取電路處理的速率。
傳統(tǒng)串行FIR濾波器的時域表達式是:
串行結(jié)構(gòu)對應(yīng)的電路結(jié)構(gòu)如圖1所示,將串行濾波器運算改為并行運算時,需增加電路面積來換取等效的高速運算結(jié)果。濾波器表達式仍然不變,但輸入、輸出數(shù)據(jù)為并行多路[2]。
設(shè)計實現(xiàn)的思路如圖2所示的并行結(jié)構(gòu)濾波器,每一種顏色表示一路信號進入濾波器,對應(yīng)上圖中的5種不同顏色。在某一時刻,第一路濾波器輸入數(shù)據(jù)是x(n)、x(n-1)…x(n-N+1);第二路濾波器輸入數(shù)據(jù)是x(n+1)、x(n)...x(n-N+2),依次類推,第5路濾波器輸入數(shù)據(jù)是x(n+4)、x(n+3)...x(n-N+5),完成5路濾波器的一輪計算。把該時刻的5路信號輸出按照串行輸出,與串行的濾波器輸出一致。相對于串行處理架構(gòu),并行處理降低了5倍的處理速率,五路并行200MHz的濾波器輸出波形等效為一路串行1GHz的濾波器輸出波形,但并行結(jié)構(gòu)設(shè)計實現(xiàn)時,電路面積是串行結(jié)構(gòu)的5倍。并行濾波器表達式為:
上述為通用的FIR并行架構(gòu)濾波器的設(shè)計框架,在具體運用時可根據(jù)實際情況進行資源優(yōu)化[3]。
圖1 FIR濾波器串行設(shè)計實現(xiàn)內(nèi)部結(jié)構(gòu)框圖
圖2 FIR濾波器并行設(shè)計實現(xiàn)內(nèi)部結(jié)構(gòu)框圖
基帶成型濾波器是決定發(fā)射信號帶寬和頻譜包絡(luò)的主要決定因素。高速成型濾波器采用并行架構(gòu)進行設(shè)計實現(xiàn),通過并行處理的方式換取電路運行速率的降低?;鶐С尚蜑V波器需要先對符號數(shù)據(jù)進行N倍插值后,再進行FIR結(jié)構(gòu)形式的濾波處理[4]。
在K7系統(tǒng)芯片中,考慮到電路布局布線的穩(wěn)定性,選定若常規(guī)的串行2X插值濾波需400MHz的時鐘速率進行運算。這里采用并行濾波的電路設(shè)計,基帶成型濾波工作在200MHz時鐘下,2路并行運算插值濾波,輸出2路并行200Mbps的IQ調(diào)制成型波形。2X并行濾波器設(shè)計實現(xiàn)框圖如圖3所示。每一路信號表達式為:
運算時先插值再濾波,2倍插值需對輸入信號進行插零。在設(shè)計實現(xiàn)時,由于濾波器輸入數(shù)據(jù)中有一半的數(shù)值為“0”,在實際運算時每一時刻只有一半的濾波器系數(shù)參與乘累加,另一半濾波器系數(shù)與全零的輸入數(shù)據(jù)相乘,即可省略。在編程設(shè)計時,首先將濾波器系數(shù)分為兩組,對并行濾波器輸入的其中一路置全零,成型濾波器數(shù)據(jù)端口兩路輸入,兩路輸出,如圖4所示。
圖3 兩路并行2X成型濾波器內(nèi)部結(jié)構(gòu)示圖
圖4 兩路并行2X成型濾波器優(yōu)化后的內(nèi)部結(jié)構(gòu)示意圖
將并行架構(gòu)的2X基帶成型濾波器資源優(yōu)化后,利用減少的冗余計算量,恰好可抵消因并行架構(gòu)設(shè)計所帶來的資源增量[5-6]。
加電調(diào)試時,將并行濾波器輸出的并行信號采集到Matlab上進行分析,通過并串轉(zhuǎn)換還原為串行波形數(shù)據(jù),在此基礎(chǔ)上繪制眼圖,2X成型濾波的輸出信號每個符號由2個樣點組成一個“眼睛”。π/4—DQPSK信號的調(diào)制發(fā)端存在差分編碼的星座映射關(guān)系,所以眼圖是交替的一個“大眼睛”和兩個“小眼睛”的形式,具體圖形如圖5所示。
圖5 Matlab眼圖
經(jīng)示波器觀測DAC輸出波形如圖6所示,其波形較為光滑。DOQPSK信號在基帶成型之前存在五電平的波形:±1、±0.707、0,目前成型濾波器輸入端口采用10比特數(shù)據(jù)位寬進行量化[7-8]。
寬帶數(shù)據(jù)鏈的傳輸帶寬一般在幾百兆量級及其以上,傳統(tǒng)的設(shè)計實現(xiàn)手段已遇到器件工藝的限制,必須提升設(shè)計思路及實現(xiàn)方式以克服芯片器件的參數(shù)上限來滿足帶寬需求。此處提出的并行架構(gòu)設(shè)計方式可以使FPGA在穩(wěn)定工作的處理時鐘下,等效實現(xiàn)超過芯片最高處理時鐘上限的運算。
圖6 示波器上基帶成型波形及資源消耗量
經(jīng)調(diào)試,F(xiàn)PGA芯片內(nèi)部可完全實現(xiàn)調(diào)制、解調(diào)的400MHz比特速率的寬帶信號處理,具有較強的工程應(yīng)用價值,可根據(jù)需求靈活應(yīng)用到其他系統(tǒng)的高速信號處理中。
[1]丁玉美,高西全.數(shù)字信號處理(2版)[M].西安:西安電子科技大學(xué)出版社,2002. DING Yu-mei,GAO Xi-quan.Digital signal processing[M]. Xi’an:Xidian University Press,2002.
[2]CHEN Zhi-zhang(David),WILCOX R,SAMPSON A,et al. The implementation of a new all-digital phase-locked loopon an FPGA and its testing in a complete wireless transceiver architecture[C].Seventh Annual Communications Networks and Services Research Conference.Moncton,Canada:CNSR, 2009:238-244.
[3]SARI H,MORIDI S.New phase and frequency detectors for carrier recovery in PSK and QAM systems[J].IEEE Trans Commun,1988,36(9):1035-1043.
[4]SHIHONG D,YAMU H,SAWAN M.A high data rate QPSK demodulator for inductively powered electronics implants[C]. IEEE International Symposium on Circuits and Systems Island of Kos.Greece:IEEE,2006:2577-2580
[5]陳大夫,朱江,時信華,等.全數(shù)字寬帶接收機的并行結(jié)構(gòu)[J].飛行器測控學(xué)報,2003,22(1):54-59. CHEN Da-fu,ZHU Jiang,SHI Xin-hua,et al.An parallel architecture for fully digital broadband receivers[J].Journalof Spacecraft TT&C Technology,2003,22(1):54-59.
[6]HELWIG A P,HU Bin.High rate Ka-band downlink digital receiver for MUOS[C]-IEEE Military Communications Conference,2007.Orlando,Florida,USA:IEEE,2007:1-7
[7]YI Hong-feng,GU Chun-yan,YI Ke-chu,et al.A high precise method for symbol timing synchronization[J].Journal of Xidian University(Natural Science),2005,32(6):915-919.
[8]王俊勝.全數(shù)字BPSK/QPSK解調(diào)器原理和應(yīng)用[J].無線電通信技術(shù),1992,18(4):255-263. WANG Jun-sheng.Priciple and application of all digital BPSK/QPSK demodulator[J].Radio Communications Technology,1992,18(4):255-263.
Design of High Speed Parallel FIR Filters Base on FPGA
Luo Xi,Tao Wei,Huang Rongxin
(Chongqing Jinmei Communication Co.,Ltd.,Chongqing 400030,China)
Based on FPGA,a new finite impulse response(FIR)filter structure is proposed,which increases the capability of processing by N (the number of subfilters)times compared with the serial FIR filter,and decreases the corresponding delay,with low clock rate,the throughout is highly improved by the parallel FIR filter.Under the background of the Wideband Data Chaining,the implement and application of the parallel FIR filter are introduced.An example of the floating point parallel 2-channel FIR filter is given to verify the algorithm on Matlab.Then a fixed point parallel FIR filter is designed on the Xilinx's K7 chips,which has optimum canonical signed digits coefficients. Compiling and deployment results show that the pareallel FIR filters run at the sampling rate up to 1GHz on the Xilinx's Vivado.
Field programmable gate array;Finite impulse response filter;Throughout;Floating point;Fixed point;Parallel simulation
10.3969/j.issn.1002-2279.2017.01.003
TN918
B
1002-2279-(2017)01-0009-04
駱希(1983-),男,重慶市人,碩士研究生,主研方向:信號處理,F(xiàn)PGA。
2016-08-31