《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > EDA與制造 > 設(shè)計應(yīng)用 > FIR濾波器的FPGA實現(xiàn)方法
FIR濾波器的FPGA實現(xiàn)方法
現(xiàn)代電子技術(shù)
徐遠澤,戴立新,高曉蓉,王 黎,郭建強
摘要: 為了給實際應(yīng)用中選擇合適FIR濾波器的FPGA實現(xiàn)結(jié)構(gòu)提供參考,首先從FIR數(shù)字濾波器的基本原理出發(fā),分析了FIR濾波器的結(jié)構(gòu)特點,然后分別介紹了基于FPGA的FIR濾波器的串行、并行、轉(zhuǎn)置型、FFT型和分布式結(jié)構(gòu)型的實現(xiàn)方法,對于各種實現(xiàn)的結(jié)構(gòu)做了分析、比較以及優(yōu)化處理,特別是對基于FFT的FIR濾波器與傳統(tǒng)卷積結(jié)構(gòu)進行了精確的數(shù)值計算比較,最后得出滿足于低階或高階的各種FIR濾波器實現(xiàn)結(jié)構(gòu)的適用范圍及其優(yōu)缺點,并針對實際工程應(yīng)用提出了下一步需解決的問題。
關(guān)鍵詞: FIR FFT FPGA
Abstract:
Key words :

    在數(shù)字信號處理系統(tǒng)中,有限脈沖響應(yīng)(finite impulse response,FIR)數(shù)字濾波器是一個非常重要的基本單元。近年來,由于FPGA具有高速度、高集成度和高可靠性的特點而得到快速發(fā)展。隨著現(xiàn)代數(shù)字通信系統(tǒng)對于高精度、高處理速度的需求,越來越多的研究轉(zhuǎn)向采用FPGA來實現(xiàn)FIR濾波器。而對于FIR濾波器要充分考慮其資源與運行速度的合理優(yōu)化,各種不同的FIR濾波結(jié)構(gòu)各具優(yōu)缺點,在了解各種結(jié)構(gòu)優(yōu)缺點后才能更好地選擇合適結(jié)構(gòu)來實現(xiàn)FIR濾波。

1 FIR數(shù)字濾波器
   
FIR數(shù)字濾波器由有限個采樣值組成,設(shè)計中在滿足幅值特性時,還能保證精確、嚴(yán)格的相位特性,因此在信號處理等領(lǐng)域得到廣泛的應(yīng)用。
    對于FIR濾波器,其輸出y(n)表示為如下形式:
   
    式中:N為濾波器的階數(shù)(或抽頭數(shù));x(i)表示第i時刻的輸入樣本;h(i)為FIR濾波器的第i級抽頭系數(shù)。
    由于FIR濾波器的沖擊響應(yīng)為一個有限序列,其系統(tǒng)函數(shù)可表示為:
   
    FIR濾波器的基本結(jié)構(gòu)如圖1所示。FIR濾波器只在原點處存在極點,所以這使得FIR濾波器具有全局穩(wěn)定性。同時FIR濾波器滿足線性相位條件,其沖擊響應(yīng)序列為實數(shù)且滿足奇對稱或偶對稱條件,即:
   



2 實現(xiàn)方法
   
運用FPGA來實現(xiàn)FIR數(shù)字濾波器的結(jié)構(gòu)多種多樣,但是主要有以下幾類:串行結(jié)構(gòu)、并行結(jié)構(gòu)、轉(zhuǎn)置型結(jié)構(gòu)、基于FFT算法結(jié)構(gòu)、分布式結(jié)構(gòu)。其他類型的FIR濾波器結(jié)構(gòu)都可以由以上幾種結(jié)構(gòu)衍生而來。
2.1 串行結(jié)構(gòu)
   
由表達式(1)可知,F(xiàn)IR濾波器實質(zhì)是做一個乘累加運算,其濾波器的階數(shù)決定了一次乘累加的次數(shù),其串行結(jié)構(gòu)如圖2所示。


    串行結(jié)構(gòu)的FIR濾波器結(jié)構(gòu)簡單,硬件資源占用少,只需要復(fù)用1個乘法器和1個加法器,所以成本較低。但是,這種結(jié)構(gòu)的FIR濾波器要經(jīng)過多個時鐘周期才有輸出,同時,內(nèi)部時鐘周期還受到乘法器運算速度的影響,所以該結(jié)構(gòu)的FIR濾波器處理速度慢,只適用于濾波階數(shù)較低且處理速度要求低的系統(tǒng)。
2.2 并行結(jié)構(gòu)
   
將串行結(jié)構(gòu)的FIR濾波器展開就可以得到并行結(jié)構(gòu)的FIR濾波器,并行FIR濾波器結(jié)構(gòu)又稱作直接型FIR濾波器結(jié)構(gòu),這種結(jié)構(gòu)是直接根據(jù)圖1的濾波器結(jié)構(gòu),用多個乘法器和加法器并行實現(xiàn)。通常考慮到其濾波器系數(shù)的對稱性,先對輸入值進行加法運算,再進行乘法運算,最后累加輸出,以此來減少乘法器的個數(shù),其結(jié)構(gòu)如圖3所示。


    并行結(jié)構(gòu)的FIR濾波器在1個周期內(nèi)可以完成1次濾波,運行速度快,雖然利用濾波系數(shù)對稱性,但仍要占用大量的乘法器和加法器,特別對于濾波階數(shù)高的濾波器,其資源占用較多,如對于256階的濾波器,其需要128個乘法器來實現(xiàn)。為提高濾波器速度,常引入流水線結(jié)構(gòu),即在每次加法或者乘法運算后加入1個寄存器存儲數(shù)據(jù),使得濾波器可以運行在更高的頻率上。
2.3 轉(zhuǎn)置型結(jié)構(gòu)
   
根據(jù)轉(zhuǎn)置定理,如果將網(wǎng)絡(luò)中所有的支路方向倒轉(zhuǎn),并將輸入x(n)和輸出y(n)相互交換,則其系統(tǒng)函數(shù)H(z)不變。通過轉(zhuǎn)置定理,將并行結(jié)構(gòu)的FIR濾波器變換就可以得到轉(zhuǎn)置型FIR濾波器,其結(jié)構(gòu)如圖4所示。


    基于并行結(jié)構(gòu)的轉(zhuǎn)置型FIR濾波器實現(xiàn)了數(shù)據(jù)的并行輸入,在1個周期內(nèi)就能完成1次濾波,并且各級結(jié)構(gòu)相同,在每個階段都可以讀出數(shù)據(jù),可以對濾波階數(shù)進行擴展或者縮減,實現(xiàn)任意階數(shù)的濾波器。但是由于基于的是并行結(jié)構(gòu),便有著并行結(jié)構(gòu)的一些缺點,主要是對于高階的濾波器,其資源占用量是巨大的,設(shè)計成本高。雖然這樣,轉(zhuǎn)置型FIR濾波器仍是應(yīng)用廣泛的一種濾波器。
2.4 基于FFT的結(jié)構(gòu)
   
應(yīng)用快速傅里葉變換(fast fourier transform,F(xiàn)FT)實現(xiàn)FIR濾波器是一種快速實現(xiàn)濾波算法的重要途徑。由式(1)可知,F(xiàn)IR濾波器的輸出y(n)是輸入x(n)與系統(tǒng)沖擊響應(yīng)序列h(n)的卷積,應(yīng)用FFT可以快速實現(xiàn)卷積變換。如圖5所示,先將輸入信號x(n)通過FFT變換為它的頻譜采樣值X(k),然后再與FIR濾波器的頻響采樣值H(k)相乘,H(k)可事先存放在存儲器中,最后再將乘積X(k)H(k)通過快速傅里葉反變換(IF-FT)還原為時域序列,即得到輸出y(n)。


    為實現(xiàn)FFT,根據(jù)兩有限長序列的線性卷積可用其循環(huán)卷積代替而不發(fā)生混疊,必須選擇循環(huán)卷積長度N≥N1+N2-1,即將x(n)和h(n)補零至長度為N的序列,即:
   
    在基于FFT的FIR濾波器結(jié)構(gòu)中,求X(k),H(k)以及反傅里葉變換y(n)需要的乘法次數(shù)均為N/2log2N,而計算X(k)H(k)需要N次乘法,所以基于FFT的總乘法次數(shù)為mf=3/2Nlog2N+N。由于h(n)滿足式(3)條件,所以直接卷積所需的乘法次數(shù)為md=1/2N1N2。假設(shè)N1=N2,則比較這兩種乘法計算量有:
   
    從表1可知,當(dāng)N1<42時,F(xiàn)FT法的運算量小于直接卷積的運算量,當(dāng)N1=42時,F(xiàn)FT法的運算量與直接卷積的運算量相當(dāng),當(dāng)N1>42時,F(xiàn)FT法的運算量大于直接卷積的運算量,并且隨著N1增加,F(xiàn)FT法的運算速度越來越快,特別是N1=8 192時,F(xiàn)FT法的運算速度與直接卷積相比快上將近100倍。


2.5 分布式結(jié)構(gòu)
2.5.1 分布式算法原理

    分布式算法(distributed arithmetic,DA)于1973年就由Croisier提出,但是直到FPGA出現(xiàn),才廣泛的被應(yīng)用于FPGA中計算乘累積和。
    對于有符號數(shù)x(n)可以用下式的補碼形式表示:
 
    對于式(7)中的h(i)xb(n-i)代表著輸入數(shù)據(jù)x(n-i)的第i位與抽頭系數(shù)h(i)的乘積,對于FIR濾波器,其系數(shù)h(i)是常數(shù),所以可以事先構(gòu)造一個查找表。該查找表存儲所有h(i)xb(n-i)的乘積值,通過輸入(xb(N-1),xb(N-2),…,xb(0))對該表尋址,然后將查得的值乘上2b后移位累加便得到濾波器輸出y(n)。該查找表構(gòu)造規(guī)則如表2所示。


2.5.2 基于分布式算法的FIR濾波器結(jié)構(gòu)
   
基于分布式算法的FIR濾波器主要有3種結(jié)構(gòu)類型。
    (1)第一種結(jié)構(gòu)為串行分布式結(jié)構(gòu)。串行分布式FIR濾波器的原理為,首先用所有N個輸入量的最低位對DA查找表進行尋址查值,得到一個部分積,將部分積右移一位即相當(dāng)于除以2后放到寄存器中暫存。同時,N個輸入量的次低位開始對DA查找表進行尋址查值,得到另一個部分積,把該部分積與上一個儲存在寄存器中的值進行相加,相加后的值再右移一位放到寄存器中。以此重復(fù)循環(huán)累加,直到所有位數(shù)都尋址完
成,注意最高位尋址后的部分積是相減,最后所得到的值就是所需要的結(jié)果。
    當(dāng)N過大,即FIR濾波器的濾波階數(shù)很高時,采用一個查找表來實現(xiàn)將使得存儲查找表的ROM變得十分龐大。為此可采用部分表結(jié)構(gòu),即將查找表劃分為多個部分,N個輸入量的同一位對應(yīng)不同的部分表尋址。圖6所示即為基于4輸入部分表結(jié)構(gòu)的串行DA結(jié)構(gòu)。


    (2)第二種結(jié)構(gòu)為并行分布式結(jié)構(gòu)。并行分布式結(jié)構(gòu)就是將N個輸入量的不同位進行同時查表,而相同位送入同一個ROM尋址,不同位有不同的ROM。其結(jié)構(gòu)如圖7所示。


    第三種結(jié)構(gòu)為串并結(jié)合分布式結(jié)構(gòu)。它是一種折中方案,既要求速度不太高又要求資源占用少。對于串行分布式算法,是一次一位(one bit-at-a-time,1BAAT)查找表,而并行分布式算法是一次B位(B bits-at-a-time)。所以串并結(jié)合分布式算法采用一次多位,如2BAAT,3BA-AT。圖8所示為4BAAT查找表結(jié)構(gòu)圖。
    圖8中位數(shù)B是4的倍數(shù),SRL為移位寄存器。SRL中第1行從右邊數(shù)第1列為數(shù)據(jù)的0位,第2列為數(shù)據(jù)的1位,第3列為數(shù)據(jù)的2位,第4列為數(shù)據(jù)的3位。類似地,第2行右數(shù)第1列為數(shù)據(jù)的4位,第2列為數(shù)據(jù)的5位,第3列為數(shù)據(jù)的6位,第4列為數(shù)據(jù)的7位。以后各行按相似的數(shù)位順序排列。在第一個時鐘周期,數(shù)據(jù)的0,4,…,B-4位同時進入查找表ROM中,查出所要的數(shù)據(jù),第二個時鐘周期,1,5,…,B-3位同時進入ROM中,查出所要的數(shù)據(jù),所查得的數(shù)據(jù)傳遞給下一級累加器進行累加,這樣依次對剩下的各數(shù)據(jù)位進行同樣的操作。由于每個塊之間相差4位,即16倍,為了對應(yīng)位相加,所以乘16。FIR濾波器的分布式算法結(jié)構(gòu)比單獨用乘法器實現(xiàn)的速度快,特別是濾波階數(shù)越高,其優(yōu)勢更加明顯。分布式結(jié)構(gòu)中,串行結(jié)構(gòu)是1次查詢1位,所以對B位的數(shù)據(jù)在不算上移位寄存等的時間,完成1次濾波需要B個時鐘周期;而并行結(jié)構(gòu)只需要1個時鐘周期便完成濾波,所以并行結(jié)構(gòu)是速度最優(yōu)的結(jié)構(gòu),但是并行結(jié)構(gòu)需要B個DA查找表,需要大量的ROM來儲存,加大了硬件資源的消耗,特別是階數(shù)越高,硬件規(guī)模將十分膨大;串并結(jié)構(gòu)綜合兩種結(jié)構(gòu)優(yōu)勢,實現(xiàn)在速度和規(guī)模上的協(xié)調(diào)。實際應(yīng)用中。需根據(jù)系統(tǒng)的要求來選擇合適的結(jié)構(gòu)。

3 結(jié)語
    本文定性地分析了各種FIR濾波器的FPGA實現(xiàn)方法。對于低階的FIR濾波器可采用串行結(jié)構(gòu)、并行結(jié)構(gòu)以及轉(zhuǎn)置型結(jié)構(gòu)來實現(xiàn),而并行結(jié)構(gòu)和轉(zhuǎn)置型結(jié)構(gòu)的FIR濾波器以犧牲資源損耗來實現(xiàn)了速度上優(yōu)勢;對于高階的FIR濾波器,基于乘法器結(jié)構(gòu)的串行結(jié)構(gòu)、并行結(jié)構(gòu)及轉(zhuǎn)置型結(jié)構(gòu)在速度上難以達到高速處理的要求,而分布式算法將乘法轉(zhuǎn)換為查表和累加的結(jié)構(gòu),使得分布式結(jié)構(gòu)的FIR濾波器在速度上得到了提高,但三種不同形式的分布式結(jié)構(gòu)要在綜合考慮資源以及速度的基礎(chǔ)上進行合理選擇;同樣采用FFT實現(xiàn)的FIR濾波器以減少運算量來獲得了速度上的提高,特別是濾波階數(shù)越高其速度提升越明顯。
    現(xiàn)代工程技術(shù)領(lǐng)域?qū)V波系統(tǒng)的帶寬、高速、信號的實時性處理等方面要求越來越高,在運用FPGA來實現(xiàn)FIR濾波中,基于乘法器結(jié)構(gòu)的FIR濾波器無法滿足以上要求,而分布式結(jié)構(gòu)的FIR濾波器巧妙地運用ROM查找表來實現(xiàn)固定系數(shù)的乘累加運算,避免了乘法運算,并且在隨后的每級加法運算中引入流水線結(jié)構(gòu),提高了速度。因此采用分布式算法實現(xiàn)FIR濾波器是目前研究的熱點,同時無論哪種分布式算法都要使用ROM來做查找表,但是隨著濾波階數(shù)的增加,ROM的數(shù)量將會增加,在進一步提高速度的情況下如何減少ROM的數(shù)量是今后亟待解決的問題。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美xxxx在线观看| 欧美精品国产| 亚洲美女中文字幕| 久久精品国产精品| 亚洲欧美日韩在线观看a三区 | 欧美亚洲免费| 亚洲自拍偷拍一区| 亚洲自拍偷拍福利| 亚洲欧美精品伊人久久| 亚洲淫片在线视频| 亚洲欧美一区二区原创| 午夜精品久久久久久久久久久久久 | 最新日韩在线| 欧美精品999| 免费在线欧美黄色| 美日韩精品免费| 欧美va日韩va| 欧美暴力喷水在线| 欧美凹凸一区二区三区视频| 欧美成人一区二免费视频软件| 麻豆久久久9性大片| 欧美成人资源| 欧美日韩国语| 欧美四级伦理在线| 国产精品视频免费| 国产女主播在线一区二区| 国产精品揄拍500视频| 国产午夜精品理论片a级探花| 国产一区二区看久久| 狠狠色狠色综合曰曰| 亚洲第一成人在线| 亚洲精品美女在线| 亚洲色诱最新| 欧美一级电影久久| 久久精品国产久精国产思思| 亚洲国产精品一区| 一区二区三区国产精华| 亚洲免费网址| 久久久久久久999| 亚洲免费观看视频| 99视频在线观看一区三区| 一本一本久久a久久精品综合麻豆| 亚洲一卡二卡三卡四卡五卡| 亚洲欧美日韩国产精品| 欧美在线网址| 欧美va天堂在线| 欧美视频精品一区| 国内外成人免费激情在线视频 | 中日韩男男gay无套| 欧美一区二区视频在线观看| 亚洲人成久久| 亚洲欧美日产图| 久久日韩粉嫩一区二区三区| 欧美成人免费全部| 国产精品久久午夜| 伊人久久婷婷色综合98网| 一本色道久久综合狠狠躁篇的优点 | 免费不卡在线观看| 国产精品啊v在线| 国产一区二三区| 亚洲精选在线观看| 激情五月***国产精品| 亚洲人成在线播放| 亚洲午夜一区二区| 亚洲福利国产精品| 亚洲午夜伦理| 另类专区欧美制服同性| 欧美性理论片在线观看片免费| 韩日在线一区| 宅男噜噜噜66一区二区| 亚洲国产精品久久久久秋霞蜜臀 | 99人久久精品视频最新地址| 欧美一区二区久久久| 一区二区电影免费观看| 久久久国产午夜精品| 欧美日韩在线一区| 亚洲高清免费| 欧美专区在线观看| 亚洲一区一卡| 欧美精品久久一区| 国产在线欧美| 日韩一级免费| 午夜视频精品| 欧美人与性动交a欧美精品| 国产日韩欧美不卡| 99re8这里有精品热视频免费| 久久激五月天综合精品| 亚洲制服av| 欧美绝品在线观看成人午夜影视 | 午夜精品久久久久| 一区二区三区四区蜜桃| 免费高清在线视频一区·| 国产美女精品在线| 一区二区欧美亚洲| 亚洲伦理在线观看| 欧美xxxx在线观看| 韩日在线一区| 欧美在线免费一级片| 午夜伦理片一区| 欧美日韩一区高清| 亚洲破处大片| 亚洲激情影院| 久久天天躁狠狠躁夜夜爽蜜月| 国产精品色婷婷久久58| 在线亚洲欧美视频| 亚洲视频中文字幕| 欧美日韩国产欧美日美国产精品| **性色生活片久久毛片| 亚洲第一级黄色片| 久久久久久免费| 国产精品美腿一区在线看| 日韩视频在线免费观看| 日韩亚洲不卡在线| 欧美大片在线观看| 亚洲承认在线| 亚洲日本aⅴ片在线观看香蕉| 久久嫩草精品久久久精品一| 国产一区二区三区在线观看免费 | 亚洲精品欧美日韩| 亚洲国产欧美日韩精品| 久久人人爽爽爽人久久久| 国产综合色产在线精品| 欧美中文字幕不卡| 久久夜精品va视频免费观看| 国产在线不卡| 亚洲国产成人久久综合| 久久综合图片| 亚洲国产欧美一区二区三区久久 | 亚洲免费成人av| 欧美黄色aa电影| 最新日韩欧美| 欧美黄色免费| 欧美一区二区免费| 欧美一区二区三区成人| 国产精品视频福利| 欧美亚洲一区| 久久阴道视频| 亚洲黄色天堂| 一区二区高清| 国产精品久久久久久久久久ktv| 亚洲午夜精品一区二区三区他趣| 亚洲欧美日韩精品一区二区 | 午夜亚洲激情| 国产一区二区三区免费不卡| 久久国产一区二区| 欧美gay视频激情| 亚洲精选一区| 亚洲欧美综合v| 国产欧美日韩精品专区| 欧美在现视频| 欧美电影电视剧在线观看| 亚洲精选久久| 欧美与黑人午夜性猛交久久久| 国产资源精品在线观看| 亚洲人精品午夜| 国产精品国产三级国产aⅴ9色| 亚洲欧美乱综合| 美女爽到呻吟久久久久| 亚洲精品影院| 欧美专区亚洲专区| 在线免费观看日本一区| 一区二区三区免费网站| 国产乱码精品一区二区三区av| 欧美在线视频导航| 欧美精品一区二区三区在线看午夜| 99热这里只有成人精品国产| 欧美中文字幕视频在线观看| 99精品国产在热久久| 国产伦精品一区二区三区免费 | 免费看精品久久片| 亚洲精品欧美日韩| 欧美一区=区| 亚洲高清在线视频| 亚洲综合二区| 激情六月婷婷综合| 在线一区二区日韩| 国产在线精品成人一区二区三区 | 欧美极品在线观看| 亚洲欧美在线观看| 欧美激情一区二区三区全黄 | 国产精品国产三级国产普通话99 | 亚洲欧美日本在线| 久热综合在线亚洲精品| 99国产精品久久久久久久| 久久精品在线视频| 亚洲精选成人| 久久嫩草精品久久久精品一| 日韩午夜视频在线观看| 久久视频这里只有精品| 这里只有精品丝袜| 男女激情久久| 性刺激综合网| 欧美日韩精品在线观看| 久久狠狠婷婷| 国产精品色一区二区三区| 日韩亚洲一区二区| 国产综合久久久久影院| 亚洲一区欧美| 亚洲高清123| 久久久国产精品一区二区中文|