謝海霞 趙欣
摘 要: 為了解決以往設計的CIC抽取濾波器存在的數(shù)據(jù)速率高以及功耗高的問題,研究了改進型CIC抽取濾波器的FPGA實現(xiàn)過程,優(yōu)化CIC抽取濾波器硬件實現(xiàn)結構,采用FPGA實現(xiàn)抽取濾波器的設計。分析CIC抽取濾波器的硬件實現(xiàn)結構和位寬,通過Hogenauer抽取濾波器結構,得到6級16抽取的CIC硬件實現(xiàn)結構,將該結構變換成4個CIC抽取濾波器的級聯(lián)式FPGA實現(xiàn),逐級降低數(shù)據(jù)速率,提升數(shù)據(jù)位寬。以FPGA實現(xiàn)CIC抽取濾波器過程中,分析了其運算時寄存器所需的最高位寬,避免產生數(shù)據(jù)溢出問題。實驗結果表明,所設計的改進型CIC抽取濾波器是有效的,可降低數(shù)據(jù)速率和系統(tǒng)功耗。
關鍵詞: Hogenauer; CIC抽取濾波器; 數(shù)據(jù)速率; FPGA
中圖分類號: TN713?34; TP368.1 文獻標識碼: A 文章編號: 1004?373X(2017)16?0148?03
Abstract: In order to reduce the data rate and power consumption of the previously?designed CIC decimation filter, the FPGA?based realization process of the improved CIC decimation filter is studied, the hardware implementation structure of the CIC decimation filter is optimized, and FPGA is used to design the decimation filter. The hardware implementation structure and bit wide of CIC decimation filter are analyzed. The filter structure is decimated through Hogenauer to get the CIC hardware implementation structure whose decimation rate is 16 and decimation degree is 6. The structure is transformed into four cascaded CIC decimation filters implemented with FPGA, which can reduce the data rate and improve the data bit wide. In the implementation process of CIC decimation filter with FPGA, the highest bit wide required by the register while it is operating is analyzed to avoid the data overflow problem. The experimental result shows that the modified CIC decimation filter is effective, and can reduce the data rate and system power consumption.
Keywords: Hogenauer; CIC decimation filter; data rate; FPGA
0 引 言
地震檢波器是地震數(shù)據(jù)采集系統(tǒng)的核心部件,其可檢測到微弱信號,具有較高的探測性能。地震檢波器的關鍵部件是抽取濾波器芯片,芯片可對前端伺服電路調制形成的高速低位數(shù)據(jù)流實施數(shù)據(jù)濾波處理,將高速率的低位數(shù)據(jù)流變換成低速率的高位數(shù)據(jù)流,完成噪聲的限制以及數(shù)據(jù)的準確采集[1]。CIC(Cascaded Integrator Comb)抽取濾波器是無線通信中的常用模塊,其可運行在高采樣頻率環(huán)境中,實現(xiàn)去噪、降采樣以及避免混疊等功能。而以往設計的CIC抽取濾波器存在的數(shù)據(jù)速率高以及功耗高的問題[2],因此,研究改進型CIC抽取濾波器的FPGA實現(xiàn)具有重要意義。
1 改進型CIC抽取濾波器的FPGA實現(xiàn)
1.1 CIC抽取濾波器的硬件實現(xiàn)結構和位寬分析
設置CIC抽取濾波器的抽取率是M,級數(shù)是N,CIC抽取濾波器的系統(tǒng)函數(shù)為:
[H(z)=1-z-N1-z-1N] (1)
設置N=3,基于上述能夠獲取CIC抽取濾波器的實現(xiàn)結構,如圖1所示。按照易位定理再次排列圖1描述的結構,獲取圖2所示的結構。依據(jù)Nobel恒等式原理,可對CIC抽取器的先后位置進行排序,確保采用最簡單的方式完成系統(tǒng)。若線性系統(tǒng)[F(zN)]后面級聯(lián)著M倍抽取器,則有:
對CIC抽取濾波器進行優(yōu)化時,應分析其運算時的位寬問題,避免形成數(shù)據(jù)溢出問題。從圖3能夠看出CIC的前級是級聯(lián)的積分器,按照數(shù)字濾波器原理可得,極點不再單位圓內的濾波器是不穩(wěn)定的。CIC抽取濾波器結構中存在零/極點互相抵消現(xiàn)象[4],說明其是FIR濾波器,是一個因果系統(tǒng)。若獲取濾波器輸出數(shù)據(jù)的位寬[5],則濾波器運算時中間寄存器都使用該位寬,可彌補出現(xiàn)有價值數(shù)據(jù)溢出的問題。
CIC抽取濾波器僅能進行加法運算,兩個相同位寬的補碼數(shù)據(jù)融合,輸出結果位寬加1,則CIC抽取濾波器的輸出位寬運算公式是:
式中:[Wo]是CIC抽取濾波器的輸出位寬;[Win]是輸入位寬;M是CIC抽取濾波器的抽取率;N是其級數(shù)。
1.2 CIC抽取濾波器FPGA實現(xiàn)結構優(yōu)化
設計的CIC抽取濾波器的抽取率M=16,級數(shù)N=6,其系統(tǒng)函數(shù)是:endprint
通過Hogenauer抽取濾波器結構,獲取6級16抽取的CIC硬件實現(xiàn)結構,如圖4所示。
CIC抽取濾波器和sigma?delta調制器級聯(lián)后,調制器的輸出數(shù)據(jù)位寬是1 b,此時CIC抽取濾波器的輸入數(shù)據(jù)位寬按照2 b運算[6],則有[Win=2],則依據(jù)式(3)可獲取CIC抽取濾波器的輸出位寬是26 b。因此,濾波運算時的中間級寄存器的位寬應為26 b,濾波器的輸入數(shù)據(jù)速率是128 kHz,濾波運算的操作頻率為8 kHz。采用該結構FPGA實現(xiàn)[7],使得長字節(jié)在高速率下運行,極大地提升了系統(tǒng)的功耗。
為了降低CIC抽取濾波器的功耗,需要對圖4結構實施改進,將6級16抽取CIC抽取濾波器系統(tǒng)描述成:
基于式(7)能夠得出,將6級16抽取CIC抽取濾波器變換成4個CIC抽取濾波器的級聯(lián)實現(xiàn)[8],該4個CIC抽取濾波器的級數(shù)都是6,抽取率是2。改進后的CIC抽取濾波器的FPGA實現(xiàn)結構如圖5所示。圖5描述了各濾波器的輸出速率以及位寬情況。
分析圖5可得,CIC抽取濾波器級聯(lián)式FPGA實現(xiàn)后,能夠逐級降低數(shù)據(jù)速率,逐級提升數(shù)據(jù)位以寬到26 b。首個級CIC1內,其濾波運算操作頻率是128 kHz,中間級寄存器位寬為8 b,末級CIC4內的中間級寄存器的位寬是26 b,但是其濾波運算處理頻率是16 kHz,使得長字節(jié)運行在低速率狀態(tài)下,極大降低了系統(tǒng)的能耗。
2 抽取濾波器的仿真與板級調試結果
2.1 Modelsim仿真結果
Modelsim是一種FPGA仿真軟件,其線編寫檢測文件為testbendi,可向總體濾波器系統(tǒng)提供一個時鐘。Sigma?deha調制模塊調制125 Hz抽取濾波器檢測信號和500 Hz合成的正弦波信號,獲取輸出功率是128 kHz的bit數(shù)據(jù)流,該數(shù)據(jù)流是抽取濾波器的輸入端[9]。CIC抽取濾波器通過Modelsim仿真后,得到的仿真結果如圖6所示。
圖6描述的是CIC抽取濾波器輸出數(shù)據(jù)的模擬格式顯示,從圖中能夠看出CIC抽取濾波器降低了數(shù)據(jù)速率,輸出中仍然包含兩個頻率成分的正弦波,說明本文設計的抽取濾波器在結構設計以及功能上的準確性。
2.2 板級調試結果
將設計的改進型CIC抽取濾波器的程序下載到開發(fā)板上運行后,通過FPGA片上調控工具SignalTap Ⅱ采集各級CIC抽取濾波器的輸出,對檢測電路實施編譯,下載到cy?clone系列EP1C12Q240C8器件后,對改進型CIC濾波器的FPGA實施板級調試,通過Matlab讀出數(shù)據(jù)并實時處理,獲取的實時波形如圖7所示。
分析圖7中的檢測結果可得,數(shù)字正弦信號X通過4個6級CIC抽取濾波器的2倍抽取后,采樣率降低,波形粗糙。說明本文設計的改進型CIC抽取濾波器能降低采樣率、抑制噪聲,完成數(shù)據(jù)濾波操作。
2.3 資源和功耗檢測結果
實驗為了對CIC抽取濾波器的電路實施對比,通過Design compiler對常規(guī)結構CIC抽取濾波器和本文濾波器的資源以及功耗進行檢測,結果如表1所示。從表1能夠看出,相對于常規(guī)結構的抽取濾波器,本文設計的抽取濾波器的功耗更低。
表1 不同抽取濾波器的資源和功耗檢測結果
3 結 論
本文研究了改進型CIC抽取濾波器的FPGA實現(xiàn)過程,對CIC抽取濾波器硬件實現(xiàn)結構進行了優(yōu)化,采用FPGA實現(xiàn)了抽取濾波器的設計。
參考文獻
[1] 王大偉,賈榮叢,王劃一.基于Matlab的巴特沃斯濾波器設計[J].現(xiàn)代電子技術,2012,35(21):71?72.
[2] 徐遠澤,戴立新,高曉蓉,等.FIR濾波器的FPGA實現(xiàn)方法[J].現(xiàn)代電子技術,2010,33(22):64?67.
[3] 李飛,馮曉東,李華會.可變帶寬數(shù)字下變頻的設計與FPGA實現(xiàn)[J].電子技術應用,2016,42(4):35?38.
[4] 趙林軍.根升余弦脈沖成形濾波器FPGA實現(xiàn)[J].現(xiàn)代電子技術,2011,34(1):23?25.
[5] 黃猛,唐琳,甄玉,等.基于自適應遺傳算法FIR數(shù)字濾波器優(yōu)化設計[J].現(xiàn)代電子技術,2010,33(2):143?146.
[6] 聶偉,王天明,邱蓉.改進的時鐘偏斜誤差校正方法的FPGA實現(xiàn)[J].微型機與應用,2016,35(7):83?86.
[7] 李峰.一種基于寬帶信號的抽取濾波器設計[J].艦船電子對抗,2015,38(2):93?96.
[8] 鄒興宇,程樹英.優(yōu)化FIR數(shù)字濾波器的FPGA實現(xiàn)[J].現(xiàn)代電子技術,2011,34(6):151?153.
[9] 孫晨,趙毅強,劉強,等.寬帶通信芯片中級聯(lián)積分梳狀插值濾波器的優(yōu)化設計[J].計算機工程,2015,41(8):252?255.
[10] 楊曉晗,李彬華,丁旭.基于FPGA的光柵信號FIR濾波器實現(xiàn)[J].化工自動化及儀表,2016,43(3):272?276.endprint