《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 優(yōu)化FIR數(shù)字濾波器的FPGA實現(xiàn)
優(yōu)化FIR數(shù)字濾波器的FPGA實現(xiàn)
現(xiàn)代電子技術
鄒興宇,程樹英 福州大學
摘要: 本文以FIR在FPGA中的實現(xiàn)結構為基礎,研究了提高乘法器性能的途徑,并實現(xiàn)了Booth算法的乘法器,此算法保證高速的前提下,縮小了硬件規(guī)模,使得該乘法器的設計適合工程應用及科學計算,在加法器實現(xiàn)上提出了一種結合了CSA加法器和樹型結構的新型實現(xiàn)結構。利用以上兩部分,成功設計了一個16階FIR濾波器,并且達到了高速的目的,但在實現(xiàn)面積上還有待優(yōu)化。
Abstract:
Key words :

摘要:基于提高速度和減少面積的理念,對傳統(tǒng)的FIR數(shù)字濾波器進行改良。考慮到FPGA的實現(xiàn)特點,研究并設計了采用Radix-2的Booth算法乘法器以及結合了CSA加法器和樹型結構的快速加法器,并成功應用于FIR數(shù)字濾波器的設計中。濾波器的系數(shù)由Matlab設計產生。仿真和綜合結果表明,Booth算法乘法器和CSA算法加法器樹,在滿足FIR數(shù)字濾波器的性能要求的同時,在電路實現(xiàn)面積上、尤其是速度上有明顯的優(yōu)化;并且當數(shù)據(jù)量越多時,優(yōu)化也越明顯。
關鍵詞:Matlab;Booth算法;CSA算法;ISE

    研究數(shù)字濾波器的意義就在于它們正日益成為一種主要的DSP(DigitaI Signal Processing)運算,并正在逐漸代替?zhèn)鹘y(tǒng)的模擬濾波器。它可以保證任意幅頻特性的同時具有嚴格的線性相頻特性。而現(xiàn)場可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)可并行執(zhí)行的特點決定它更加廣泛地應用于實時數(shù)字信號處理領域。不能想象今天的生活如果沒有音頻;視頻和言語交際的樣子,而這些都要應用數(shù)字信號處理技術。并且在任何時候,高性能,低規(guī)模,低成本都是設計的目標。濾波器(Finite Impulse Response,F(xiàn)IR)的實現(xiàn)方法有很多種,最常見的有串行結構和并行結構方法。前者根據(jù)FIR濾波器的實現(xiàn)表達式,將濾波器實質看作是做一個乘累加運算。一次乘累加運算的次數(shù)由濾波器的階數(shù)來決定。這種方法使用硬件資源相對較少,但速度較慢。并行結構的方法,將濾波器的串行實現(xiàn)展開,就可以直接用多個乘法器和加法器并行實現(xiàn),其可以在一個時鐘周期內完成一次濾波,但要占用大量的乘累加器,器件延遲比較大。目前為了滿足面積和速度的需要,人們通常采用Booth算法、CSD算法,分布式算法等技術對FIR設計進行優(yōu)化,優(yōu)化效果各有利弊。本文針對串行結構對乘累加運算的乘和加分
別進行優(yōu)化設計。分析了提高乘法器速度的途徑;針對多數(shù)據(jù)量的運算,提出了一種新型的快速加法器的解決方案。體現(xiàn)了優(yōu)化設計中提高速度和減小面積的設計理念。同時給出并實現(xiàn)了一個16階FIR的設計實例。

1 用Matlab設計濾波器系數(shù)
    利用Matlab軟件的FDATool模塊,選擇濾波器類型為低通FIR,設計方法為窗口法,階數(shù)為16,窗口類型為Kaiser,數(shù)據(jù)采樣頻率fs為4.8 kHz,濾波器的截止頻率fc為1.08 kHz,導出的濾波器系數(shù)為16個15位的小數(shù)。將每一個系數(shù)擴大相同的倍數(shù),最后四舍五人得到一系列整數(shù)系數(shù)。如下:
a.JPG

2 優(yōu)化FIR濾波器在FPGA中的實現(xiàn)結構
2.1 FIR濾波器的基本算法原理
    本文采用濾波器實現(xiàn)的基本的串行乘累加結構。FIR濾波器的差分方程可表示為:
    b.JPG
    式中:t為濾波器的階數(shù)。

    其直接運算結構如圖1所示。

c.JPG


    從公式(1)中可知FIR濾波器在硬件上的設計主要是完成乘累加功能,實現(xiàn)的一種方法是直接相乘累加。在實際應用中,當濾波器設計對濾波速度要求不高時,可采用串行結構或改進串行結構來實現(xiàn),這樣可以選取資源較少的器件,降低設計成本;當對濾波速度有較高要求時,可以考慮采用并行或DA來實現(xiàn)。但要進行FIR運算,尤其在階數(shù)較高時,幾乎無法在FPGA內實現(xiàn)并行結構,所以這里采用串行運算的結構,僅使用一個乘加器。所以本文的設計著重于提高串行結構FIR的速度。下面將介紹一種高速的Booth算法乘法器和高速的加法器。
2.2 乘法器設計
    乘法器是數(shù)字信號處理電路中最常用的單元,20年前就已經研究的非常成熟。高性能乘法器是實現(xiàn)高性能的FIR運算的關鍵,乘法器的運算過程可以分解為部分積的產生和部分積的相加2個步驟。部分積的產生非常簡單,實現(xiàn)速度較快;而部分積相加的過程是多個二進制數(shù)的相加,實現(xiàn)速度通常較慢。解決乘法器速度問題,需要減小部分積的個數(shù)、提高部分積相加運算的速度。在乘法器設計上這里著重研究能夠減少部分積的Booth算法。
    Booth算法乘法器可以減少乘法運算部分積個數(shù),提高乘法運算的速度。本文討論Radix-2的Booth算法,其基本算法思想是,一次看乘數(shù)的兩個位,依照當前與前一位的不同,執(zhí)行不同的操作。總結出Radix-2 Booth算法的編碼規(guī)則如表1所示。

d.JPG

2.3 累加器設計
    對于乘累加運算的加法,傳統(tǒng)的算法將使多個乘法器的結果逐一累加,效率低、運算時延大。本文提出了一種結合了CSA算法加法器和樹型結構的新型加法器結構,對乘法器的結果一次性相加。
    圖2為6個數(shù)相加的實例。如果不用其他加法器的話,6個數(shù)據(jù)的相加將耗去5個加法器,其關鍵路徑總共經過三級的加法電路延遲,有必要對電路的面積和延遲進行改進。因此在多個數(shù)據(jù)相加的情況下,CSA(Carry Save Adder)加法器是很好的選擇。
    CSA加法器仍然保留原有的全加器架構,一個n-bit的CSA器件如圖3所示。

e.JPG


    如果只有個數(shù)不多的數(shù)據(jù)相加時,采用CSA器件不管是在電路面積和時序特性上都沒有優(yōu)勢。但當多個數(shù)據(jù)相加時,CSA加法器就能在電路面積和時序特性上體現(xiàn)出它的優(yōu)越性。樹型加法器結構的關鍵特性在于利用不規(guī)則的樹形結構對所有的準備好輸入數(shù)據(jù)的運算及時并行處理,大大節(jié)省了計算延時,尤其是在多個數(shù)相加的情況下;缺點是其邏輯結構形式不規(guī)整,在VLSI設計中對布局布線的影響較大。本文用CSA加法器為單元組成樹型結構,設計出一種如圖4所示的快速加法器結構。由CSA加法器樹組成的樹型加法器中調用5個CSA加法器和一個普通加法器。R(0)~R(15)為前一級乘法器的16個輸出。在整個加法過程中,CSA加法器在電路實現(xiàn)上本身就具備快速、面積小的特點,再加上樹型結構的特點,使整個加法器在實現(xiàn)速度上進一步提升。同時整個加法過程能夠滿足最嚴格的時序要求,因為CSA電路只在最后的時間內執(zhí)行進位加法,也就是由構成樹的最后一級的Normal Adder(進位加法器)執(zhí)行進位加法。通常在大部分的應用上會有一段足夠的時間允許執(zhí)行進位加法的時間延遲。

f.JPG


2.4 FIR在FPGA中的實現(xiàn)結構
    本文設計的FIR在FPGA中的實現(xiàn)結構如圖5所示,除了必須的乘法器和加法器外,還需要一個寬度為15、深度為16的濾波器系數(shù)存儲器(ROM)和一個寬度為30、深度為16的乘結果存儲器(RAM)。分別由相應的計數(shù)器控制模塊控制,配合計數(shù)的值,執(zhí)行相應的動作。針對輸入的數(shù)據(jù)提取相應的濾波器參數(shù),送入乘法器相乘,每得到一個結果送入下一級RAM中存儲起來,最后統(tǒng)一送入加法器,一次性執(zhí)行加運算并輸出,最后得到濾波的結果。其中乘法器和加法器處理的都為符號數(shù)。

3 16階FIR的設計及仿真結果
    設計一個16階的15位FIR濾波器。設計語言使用Verilog。設計工具使用Xilinx ISE平臺。FIR的輸入和系數(shù)都為15位有符號數(shù),乘法器的位數(shù)為30位,經加法器后得到的濾波器輸出為38位有符號數(shù)。編寫testbench對設計進行邏輯仿真,隨機選取16個輸入數(shù)據(jù)。配合前面有量化后的濾波器系數(shù),即可進行行為級仿真。圖6中,rst為復位信號,clk為系統(tǒng)時鐘信號,din為輸入數(shù)據(jù),coe為濾波器系數(shù),dout為輸出信號,control為輸出同步信號。由仿真結果看出最終濾波器的輸出結果和預期的結果相一致。同時利用ISE自帶的綜合器SXT進行綜合,器件選用Xilinx公司的3s400pq208—4。綜合報告顯示,濾波器最大的頻率可達到143.328 MHz,達到高速目的。報告顯現(xiàn)資源的使用相對較大,沒有預期的理想。從RTL電路分析出在CSA構成的加法器樹部分在面積上的優(yōu)化還不夠明顯,這個問題將在以后的研究中進一步解決。



4 結語
    本文以FIR在FPGA中的實現(xiàn)結構為基礎,研究了提高乘法器性能的途徑,并實現(xiàn)了Booth算法的乘法器,此算法保證高速的前提下,縮小了硬件規(guī)模,使得該乘法器的設計適合工程應用及科學計算,在加法器實現(xiàn)上提出了一種結合了CSA加法器和樹型結構的新型實現(xiàn)結構。利用以上兩部分,成功設計了一個16階FIR濾波器,并且達到了高速的目的,但在實現(xiàn)面積上還有待優(yōu)化。

此內容為AET網站原創(chuàng),未經授權禁止轉載。
主站蜘蛛池模板: 国产高清a毛片在线看 | 日韩在线一区二区三区免费视频 | 国产成人毛片毛片久久网 | 夜夜爽夜夜叫夜夜高潮漏水 | 欧美中文小说在线观看 | 日韩福利网 | 久久久精品成人免费看 | 丁香综合激情 | 欧美精选在线 | 美女视频黄频免费大全软件 | 午夜操操操 | 日韩国产在线观看 | 欧美成人免费看片一区 | 免费在线观看的黄色网址 | 亚洲永久精品一区二区三区 | 日韩中文字幕一在线 | 中文字幕欧美日韩久久 | 国产欧美在线播放 | 国产精品99久久久 | 免费成人视屏 | 青春草在线免费观看 | 色迷迷网免费站视频在线观看 | 欧美老妇人与禽交 | 特黄一级 | 手机午夜视频 | 插鸡视频在线观看 | 九色欧美| 在线播放你懂得 | 最新欧美精品一区二区三区 | 精品在线观看一区 | a久久久久一级毛片护士免费 | 日韩欧美精品在线视频 | 亚洲精品二区中文字幕 | 国产20岁美女一级毛片 | 羞羞人成午夜爽爽影院 | 免费一级a毛片在线播出 | 国产欧美日韩在线 | 亚洲天堂精品在线观看 | 日韩欧美一区二区三区在线观看 | 国产亚洲欧美在在线人成 | 欧美一级日韩一级亚洲一级va |