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

?

基于FPGA的FIR數(shù)字濾波器算法的改進及仿真*

2013-08-15 02:00何學蘭魏運峰
光學儀器 2013年5期
關鍵詞:階數(shù)存儲器并聯(lián)

韓 建,何學蘭,魏運峰

(1.東北石油大學 電子科學學院,黑龍江 大慶 163318;2.東北石油大學 黑龍江省高校校企業(yè)共建測試計量技術及儀器儀表研發(fā)中心,黑龍江 大慶 163318)

引 言

基于有限長單位沖激響應濾波器(FIR)的穩(wěn)定性和線性相位的優(yōu)點,F(xiàn)IR濾波器有著更為廣泛的應用。目前,實現(xiàn)數(shù)字濾波器的方法主要有軟件實現(xiàn)和硬件實現(xiàn)。軟件實現(xiàn)的方法簡單,但是實時性差。硬件實現(xiàn)的方法有數(shù)字信號處理器(DSP),專用集成電路和現(xiàn)場可編程門陣列(FPGA)等[1]。DSP實現(xiàn)數(shù)字濾波器方法靈活,開發(fā)周期短,但其軟硬件的結合方式限制了濾波處理速度,不適合用在實現(xiàn)實時性較高要求的系統(tǒng)。ASIC器件可靠性高,實時性好,但靈活性差,不適合科研和開發(fā)。FPGA器件結合了上面兩種器件的優(yōu)點,具有很好的實時性,可靠性和靈活性,因此研究基于FPGA的數(shù)字濾波器的實現(xiàn)對于工程應用有重大的意義[2]。

本文采用FPGA技術,應用硬件描述語言實現(xiàn)數(shù)字濾波器?;贔IR數(shù)字濾波器的分布式算法提出改進算法,此算法不但不需使用乘法器而且減小了存儲器的使用數(shù)量,大幅度節(jié)約了硬件資源且可實現(xiàn)高速濾波。

1 FIR濾波器的改進算法實現(xiàn)

1.1 算法推導

FIR濾波器的輸入信號和輸出信號的關系為:

為了方便說明,假設y=y(tǒng)(n),xi=x(n-i),則:

假設xi為k位二進制數(shù)據(jù),它可以寫成以下形式:

其中,bik為xi的第k位,將式(3)代入式(2)可以得到:

為了實現(xiàn)算法,可以定制一個ROM存儲h0,h1,h2,…,hN-1的可能組合的和。對應一個N階的FIR數(shù)字濾波器,該ROM中地址和數(shù)據(jù)的對應關系如表1所示。

根據(jù)式(4)可以知道,要得出FIR濾波器的輸出,首先需要一個初始存儲全為0且長度為濾波器階數(shù)的隊列將輸入的數(shù)據(jù)存入隊列[3]。以隊列中每個數(shù)據(jù)對應的位組合為一個地址,在ROM中查出對應的值乘上位權值相加就可以得到輸出值。

1.2 算法實現(xiàn)

該算法可以用并聯(lián)和串聯(lián)來實現(xiàn)。串行結構如圖1所示,該結構是將保存在隊列中的輸入分別送入一組向右移位寄存器,移位寄存器的最右邊的一位組合成地址在ROM中查出對應值,送入累加器。當下一個時鐘上升沿,移位寄存器組向右移一位,最右邊一位組成的新的地址在ROM中查出數(shù)據(jù),再進行累加。但是,如果數(shù)據(jù)是8位的,則要8個時鐘周期才能輸出一個數(shù)據(jù),時鐘的頻率必須是采樣頻率的8倍,串行結構難以實現(xiàn)高速FIR濾波器[4]。

表1 ROM表中數(shù)據(jù)Tab.1 Data in ROM table

圖1 串聯(lián)型分布式算法實現(xiàn)硬件結構Fig.1 Hardware structure implement based on series distributed computation

圖2 流水線加法器的硬件結構Fig.2 Hardware structure of pipeline adder

當數(shù)據(jù)為8位,并型結構需要相對串型結構的8倍的硬件資源。并型結構需要8個相同的ROM,所有數(shù)據(jù)每一對應位組成的地址分別在8個ROM中查詢,再乘以權值,最后用流水線加法器相加。流水線加法器的結構如圖2所示,并聯(lián)型分布式算法的硬件實現(xiàn)如圖3所示。

圖3 并聯(lián)型分布式算法的硬件實現(xiàn)Fig.3 Hardware structure implement based on parallel distributed computation

1.3 分布式算法的改進

分布式算法不需要使用乘法器,降低了硬件資源的使用,但是卻對ROM的容量提出了很高的要求[5]。假設要實現(xiàn)一個 N 階的 FIR濾波器,系數(shù)h0,h1,h2,…,hN-1的組合的和可能性有2N中,對于并聯(lián)型的分布式結構,ROM的容量需8×2N×Mbit,其中8為輸入數(shù)據(jù)位寬,M為系數(shù)量化位數(shù)。運用該算法實現(xiàn)低階FIR濾波器時,消耗的存儲器較少,然而隨著階數(shù)不斷升高,存儲器的消耗呈指數(shù)增長,在實現(xiàn)高階FIR濾波器時,這種算法將消耗過多存儲單元,而在實際應用中FIR濾波器的階數(shù)一般都比較高,所以需考慮對分布式算法進行改進。

因為倍數(shù)增長比指數(shù)增長慢,因此改進算法是:將高階FIR數(shù)字濾波器結構轉變成多個低階FIR數(shù)字濾波器分布式算法結構的組合。

本文設計濾波器的階數(shù)是64階,8的倍數(shù),式(4)可以寫成如下形式:

其中8m+7=N-1,這樣把N個濾波器系數(shù)分成N/8組,每組可利用8階FIR濾波器的并聯(lián)型分布式算法結構實現(xiàn),最后用流水加法器相加得到結果。實現(xiàn)框圖如圖4所示,整個系統(tǒng)需要(N/8)這樣的8階FIR濾波器分布式算法結構,最后將輸出的數(shù)據(jù)用流水線加法器相加[6-7]。

這樣,采用改進算法需要用到的存儲器為M×8×(N/8)×28bit,相對于采用傳統(tǒng)的并聯(lián)分布式算法需要消耗的存儲單元為8×M×2Nbit,改進算法大幅減少了存儲器的使用。

根據(jù)以上分析,本文設計的FIR數(shù)字濾波器為64階,輸入數(shù)據(jù)量化為8位,系數(shù)量化為13位。所以采用傳統(tǒng)的并聯(lián)分布式算法需要消耗存儲單元8×264×13bit,而采用改進算法只需要消耗存儲單元13×8×8×28bit,相對于傳統(tǒng)算法,存儲器使用減少了253倍[8]。

圖4 8的倍數(shù)階數(shù)的FIR濾波器的實現(xiàn)框圖ig.4 Block diagram of implementation multiple of 8order FIR filters

2 改進算法的仿真驗證

用Verilog HDL結合分布式改進算法編寫器程序實現(xiàn)FIR濾波器。在這個仿真中,輸入正弦波的頻率為300kHz、500kHz和600kHz采樣頻率。本文中FIR濾波器是64階低通濾波器,采樣頻率為4MHz,通帶截止頻率為500kHz,阻帶截止頻率為600kHz,仿真結果如圖5所示。輸入和輸出的波形均符合正弦函數(shù),輸入輸出波形的衰減情況初步表明濾波器顯現(xiàn)出低通特性。

圖5 輸入不同正弦的采樣頻率時FIR濾波器的輸出波形Fig.5 Output wave form based on different sampling frequency

表2是仿真值與理論值的比較表,由此可見改進算法實現(xiàn)的FIR濾波器和FDA tool設計出的濾波器對信號的衰減基本一致,誤差在合理范圍內。

表2 FIR濾波器仿真與理論設計幅度數(shù)據(jù)的比較Tab.2 Comparison amplitude data of theoretical and simulation of FIR filter

3 結 論

在現(xiàn)代電子系統(tǒng)中,F(xiàn)IR數(shù)字濾波器以其良好的線性特性被廣泛使用,屬于數(shù)字信號處理的基本模塊之一,本文使用FPGA對FIR濾波器進行硬件的實現(xiàn),在分析分布式算法的基礎上提出了改進算法,解決了分布式算法占用大量存儲器空間的問題,提高了硬件資源的使用率和運算速率。通過仿真驗證進一步證明了該算法的正確性。為進一步提高數(shù)字濾波器的精度和速率打下了基礎。

[1]趙 潔,王大勇,李 艷,等.數(shù)字全息術應用于生物樣品相襯成像的實驗研究[J].中國激光,2010,37(11):2906-2911.

[2]李錦明,謝緒煜,馬游春,等.基于FPGA的FIR濾波器系統(tǒng)的設計[J].化工自動化及儀表,2011,34(8):44-48.

[3]于瀛潔,郭 路,周文靜.數(shù)字全息位相拼接實驗研究[J].光學儀器,2011,33(4):55-59.

[4]葛 鵬,劉 濤,李 奇,等.基于FPGA+ADSP的線陣CCD非接觸測量系統(tǒng)[J].光學儀器,2008,30(5):1-4.

[5]王東旭,潘廣禎.MATLAB及其在FPGA中的應用[M].北京:國防工業(yè)出版社,2006.

[6]毛 磊,李 勇,馬利紅,等.顯微數(shù)字全息圖相位的濾波法提?。跩].光學儀器,2012,34(4):16-20.

[7]吳黎慧,蒲南江,高 磊,等.基于FPGA的FIR濾波器的誤差分析[J].電子測試,2011,34(8):56-58.

[8]胡同花,周維龍.基于FPGA的 OFDM 調制器設計與實現(xiàn)[J].電子設計工程,2011,29(15):9-12.

猜你喜歡
階數(shù)存儲器并聯(lián)
識別串、并聯(lián)電路的方法
關于無窮小階數(shù)的幾點注記
靜態(tài)隨機存儲器在軌自檢算法
確定有限級數(shù)解的階數(shù)上界的一種n階展開方法
審批由“串聯(lián)”改“并聯(lián)”好在哪里?
并聯(lián)型APF中SVPWM的零矢量分配
一種軟開關的交錯并聯(lián)Buck/Boost雙向DC/DC變換器
一種新的多址信道有效階數(shù)估計算法*
關于動態(tài)電路階數(shù)的討論
存儲器——安格爾(墨西哥)▲