《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 基于FPGA實(shí)現(xiàn)FIR濾波器的研究

基于FPGA實(shí)現(xiàn)FIR濾波器的研究

2008-09-11
作者:郭曉宇 潘 登 楊同中

??? 摘? 要: 針對在FPGA中實(shí)現(xiàn)FIR濾波器的關(guān)鍵——乘法運(yùn)算的高效實(shí)現(xiàn)進(jìn)行了研究,給出了將乘法化為查表" title="查表">查表的DA算法,并采用這一算法設(shè)計(jì)了FIR濾波器。通過FPGA仿真驗(yàn)證,證明了這一方法是可行和高效的,其實(shí)現(xiàn)的濾波器的性能優(yōu)于用DSP和傳統(tǒng)方法實(shí)現(xiàn)的FIR濾波器。最后介紹了整數(shù)的CSD表示和還處于研究階段的根據(jù)FPGA實(shí)現(xiàn)的要求改進(jìn)的最優(yōu)表示。?

??? 關(guān)鍵詞: FPGA? DA? FIR濾波器? CSD

?

??? 數(shù)字濾波器" title="數(shù)字濾波器">數(shù)字濾波器是語音與圖像處理、模式識別、雷達(dá)信號處理、頻譜分析等應(yīng)用中的一種基本的處理部件,它能滿足濾波器對幅度和相位特性的嚴(yán)格要求,避免模擬濾波器所無法克服的電壓漂移?溫度漂移和噪聲等問題。有限沖激響應(yīng)(FIR)濾波器能在設(shè)計(jì)任意幅頻特性的同時保證嚴(yán)格的線性相位特性。?

??? 目前FIR濾波器的實(shí)現(xiàn)方法有三種:利用單片通用數(shù)字濾波器集成電路?DSP器件和可編程邏輯器件實(shí)現(xiàn)。單片通用數(shù)字濾波器使用方便,但由于字長和階數(shù)的規(guī)格較少,不能完全滿足實(shí)際需要。使用DSP器件實(shí)現(xiàn)雖然簡單,但由于程序順序執(zhí)行,執(zhí)行速度必然不快。FPGA有著規(guī)整的內(nèi)部邏輯陣列和豐富的連線資源,特別適合于數(shù)字信號處理" title="數(shù)字信號處理">數(shù)字信號處理任務(wù),相對于串行運(yùn)算為主導(dǎo)的通用DSP 芯片來說,其并行性和可擴(kuò)展性更好。但長期以來,FPGA一直被用于系統(tǒng)邏輯或時序控制上,很少有信號處理方面的應(yīng)用,其原因主要是因?yàn)樵贔PGA中缺乏實(shí)現(xiàn)乘法運(yùn)算的有效結(jié)構(gòu)。現(xiàn)在這個問題得到了解決,使FPGA在數(shù)字信號處理方面有了長足的發(fā)展。?

1 分布式運(yùn)算原理?

??? 分布式算法" title="分布式算法">分布式算法(DA)早在1973年就已經(jīng)被Croisier提出來了,但是直到FPGA出現(xiàn)以后,才被廣泛地應(yīng)用在FPGA中計(jì)算乘積和。?

??? 一個線性時不變網(wǎng)絡(luò)的輸出可以用下式表示:?

???

??? 假設(shè)系數(shù)c[n]是已知常數(shù),x[n]是變量,在有符號DA系統(tǒng)中假設(shè)變量x[n]的表達(dá)式如下:?

???

式中,xb[n]表示x[n]的第b位,而x[n]也就是x的第n次采樣。于是,內(nèi)積y可以表示為:?

???

??? 重新分別求和(也就是分布式算法的由來),其結(jié)果如下:?

???

??? 從(1)式可以發(fā)現(xiàn),分布式算法是一種以實(shí)現(xiàn)乘加運(yùn)算為目的的運(yùn)算方法。它與傳統(tǒng)算法實(shí)現(xiàn)乘加運(yùn)算的不同在于執(zhí)行部分積運(yùn)算的先后順序不同。分布式算法在實(shí)現(xiàn)乘加功能時,是通過將各輸入數(shù)據(jù)的每一對應(yīng)位產(chǎn)生的部分積預(yù)先進(jìn)行相加形成相應(yīng)的部分積,然后再對各個部分積累加形成最終結(jié)果的,而傳統(tǒng)算法是等到所有乘積已經(jīng)產(chǎn)生之后再來相加完成乘加運(yùn)算的。與傳統(tǒng)串行算法相比,分布式算法可極大地減少硬件電路的規(guī)模,提高電路的執(zhí)行速度。它的實(shí)現(xiàn)框圖如圖1(虛線為流水線寄存器)所示。?

?

?

2 用分布式原理實(shí)現(xiàn)FIR濾波器?

2.1 串行方式?

??? 當(dāng)系統(tǒng)對速度的要求不高時,可以采用串行的設(shè)計(jì)方法,即采用一個DA表?一個并行累加器和少量的寄存器就可以了。?

在用LUT實(shí)現(xiàn)串行分布式算法的時候,假設(shè)系數(shù)為8位,則DA表的規(guī)模為2N×8位。可以看到如果抽頭系數(shù)N過多,則DA表的規(guī)模將十分龐大。這是因?yàn)長UT的規(guī)模隨著地址空間的變化(也就是N的增加)而呈指數(shù)增加。例如EPF10K20包含1152個LC,而一個27×7位的表就需要394個LC[2]。當(dāng)N過大時,一個FPGA器件就不夠用了。?

??? 為了減小規(guī)模,可以利用部分表計(jì)算,然后將結(jié)果相加。假定長度為LN的內(nèi)積為:?

???

??? 將和分配到L個獨(dú)立的N階并行DA的LUT之中,結(jié)果如下:?

???

??? 如圖2所示,實(shí)現(xiàn)一個4N的DA設(shè)計(jì)需要3個次輔助加法器。表格的規(guī)模從一個24N×B位的LUT降到4個2N×B的位表。?

?

?

??? 如果再加上流水線寄存器,由于EPF10K20每個LC后面都跟有一個寄存器,所以并沒有增加電路規(guī)模,而速度卻得到了提高。?

2.2 并行方式?

??? 采用并行方式的好處是處理速度得到了提高。由于數(shù)據(jù)是并行輸入,所以計(jì)算速度要比串行方式快,但它的代價是硬件規(guī)模更大了。下面舉出全并行的例子。?

??? 設(shè) ? sum[0]=c[0]x0[0]+c[1]x0[1]+...+c[N-1]x0[N-1]?

???????? sum[B-1]=c[B-1]xB-1[0]+c[1]xB-1[1]+...+c[N-1]xB-1[N-1]?

??? 可將(1)式改寫成如下形式:?

??? y=sum[0]+sum[1]21+sum[2]22+...+sum[B-1]2B-1???? (2)?

??? 利用式(2)可得一種直觀的加法器樹,如圖3所示。?

?

?

??? 雖然硬件規(guī)模加大了,但是如果把系數(shù)的個數(shù)限制在4個或8個,再加上流水線寄存器,這個代價還是值得的。而且每張表都是相同的,不用為每個采樣都設(shè)計(jì)一張表,減小了設(shè)計(jì)量。?

??? DA算法的主要特點(diǎn)是巧妙地利用ROM查找表" title="查找表">查找表將固定系數(shù)的MAC運(yùn)算轉(zhuǎn)化為查表操作,其運(yùn)算速度不隨系數(shù)和輸入數(shù)據(jù)位數(shù)的增加而降低,而且相對直接實(shí)現(xiàn)乘法器而言在硬件規(guī)模上得到了極大的改善。利用ALTERA的FLEX10K實(shí)現(xiàn)的16階8位系數(shù)的并行FIR濾波器,其時鐘頻率可以達(dá)到101MHz,而實(shí)現(xiàn)的16階8位系數(shù)的串行FIR濾波器,其時鐘頻率可以達(dá)到63MHz,每9個時鐘周期可完成一次計(jì)算。但是其系數(shù)是傳統(tǒng)二進(jìn)制的,造成了很大的冗余(對于用逐位相加法實(shí)現(xiàn)的乘法器,當(dāng)系數(shù)有一位為零時不用相加,零位越多,冗余越大),而且查找表的大小隨著濾波器階數(shù)的增加成指數(shù)增加,雖然可以采用將大查找表分解為小查找表,但是無法從根本上解決這一問題,這些都是DA方法的缺點(diǎn)。后面將對FIR濾波器實(shí)現(xiàn)給出新的設(shè)計(jì)方法,進(jìn)一步降低邏輯資源的消耗。?

3 CSD碼及最優(yōu)化方法?

??? 一個整數(shù)X與另一整數(shù)Y的乘積的二進(jìn)制表示可以寫成:?

???

??? 對于標(biāo)準(zhǔn)二進(jìn)制,由于sn=0時的對應(yīng)項(xiàng)Y2n并不參與累加運(yùn)算,所以可以用另一種表示方法使非零元素的數(shù)量降低,從而使加法器的數(shù)目減少,降低硬件規(guī)模。有符號數(shù)字量(SD)有三重值?邀0,-1,+1?妖,如果任意兩個非零位均不相鄰,即為標(biāo)準(zhǔn)有符號數(shù)字量(CSD)。例如:?

???

??? 可以證明CSD表示對給定數(shù)是唯一的并且是最少非零位的[3]。CSD表示相對于標(biāo)準(zhǔn)二進(jìn)制表示的改進(jìn)在于引入了負(fù)的符號位,從而降低了非零位個數(shù),大大降低了邏輯資源的占用(大約平均降低33%的邏輯資源)[2]。?

??? 當(dāng)用硬件實(shí)現(xiàn)時,常常限制系數(shù)位數(shù),即每個系數(shù)與N個正(負(fù))2的冪次之和近似。標(biāo)準(zhǔn)二進(jìn)制數(shù)在整數(shù)軸上是緊密和均勻分布的,而CSD碼是非均勻分布的,其對實(shí)系數(shù)的量化誤差比標(biāo)準(zhǔn)二進(jìn)制大[3],雖然增加N可以減小量化誤差,但是會增大邏輯資源的消耗;而且CSD表示無法應(yīng)用流水線結(jié)構(gòu),從而降低處理速度。???

??? 還可采用優(yōu)化的方法將系數(shù)先拆分成幾個因子,再實(shí)現(xiàn)具體因子。這就是最優(yōu)化的代碼。例如對系數(shù)用最優(yōu)化法,系數(shù)93可以表示成93=3·31,每個因子需要一個加法器,如圖4所示。?

?

?

??? 從圖中可以看出,CSD碼需要三個加法器,而最優(yōu)法只需要兩個加法器;CSD碼的重要缺陷在于每一級加法都需要初節(jié)點(diǎn)參與,而最優(yōu)表示僅依賴上一級加法的結(jié)果,因此也就更適合流水線處理。Dempster等人提出了需要1到4個加法器的所有可能配置表。利用這張表,就可以合成成本在0與4個加法器之間的所有8位二進(jìn)制整數(shù)[4]。???

??? 本文首先給出了一種巧妙利用FPGA的查找表,將乘法轉(zhuǎn)化為查找表運(yùn)算的DA算法,并用ALTERA的FLEX10K器件分別實(shí)現(xiàn)了一個8位16階的串行與并行FIR濾波器,系統(tǒng)頻率分別達(dá)到63MHz與101MHz,采樣速度分別達(dá)到7MSPS與101MSPS。而DSP實(shí)現(xiàn)的FIR濾波器只能達(dá)到5MSPS,明顯低于FPGA。用傳統(tǒng)的位串行方法實(shí)現(xiàn)的一個8階8位FIR濾波器,也只能達(dá)到5MSPS,明顯低于串行式DA方法;接著,針對系數(shù)的二進(jìn)制表示非零位不是最少(即實(shí)現(xiàn)系數(shù)乘法的加法器不是最少)的問題,介紹了整數(shù)的CSD表示以及最優(yōu)表示,它們可以用較小的代價和與加法器級數(shù)無關(guān)的處理速度實(shí)現(xiàn)整數(shù)乘法運(yùn)算,能比DA方法用更少的邏輯資源實(shí)現(xiàn)FIR濾波器。這些算法都不同于傳統(tǒng)的設(shè)計(jì)觀念,為基于FPGA的DSP設(shè)計(jì)提出了新的思路,必將在高速FIR濾波器設(shè)計(jì)?高速FFT設(shè)計(jì)中得到廣泛的應(yīng)用。隨著FPGA集成規(guī)模的不斷提高,許多復(fù)雜的數(shù)學(xué)運(yùn)算已經(jīng)可以用FPGA來實(shí)現(xiàn),利用單片F(xiàn)PGA實(shí)現(xiàn)系統(tǒng)的設(shè)想即將變?yōu)楝F(xiàn)實(shí)。?

參考文獻(xiàn)?

1 ALTERA Data Book, 2001?

2 Uwe Meyer-Baese著, 劉 凌, 胡永生譯.數(shù)字信號處理的FPGA實(shí)現(xiàn).北京:清華大學(xué)出版社,2003?

3 Shousheng He,Mats Torkelson.FPGA Implementation of FIR?Filters Using Pipelined Bit-serial Canonical Signed Digit?Multipliers. IEEE Custom Integrated Circuits Conference,?1994?

4 A.Dempster,M.Macleod.Use of Minimum-Adder Multiplier?Blocks in FIR Digital Filters. IEEE Transactions on Circuits and Systems II, 1995;42:569~577

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧美日韩中文视频| 欧美激情一区在线观看| 亚洲精品你懂的| 久久精品国内一区二区三区| 性欧美大战久久久久久久免费观看| 99re这里只有精品6| 最新国产成人在线观看| 免费91麻豆精品国产自产在线观看| 欧美一级片在线播放| 亚洲日本视频| 亚洲一区三区视频在线观看 | 亚洲欧美网站| 亚洲欧美韩国| 亚洲人成人99网站| 亚洲国产精品久久久久| 国产乱人伦精品一区二区 | 国产精品亚洲综合久久| 国产精品九九| 国产欧美欧美| 欧美激情91| 欧美久久久久久蜜桃| 久久精品免费| 一区二区三欧美| 一本色道88久久加勒比精品 | 欧美在线观看网站| 9i看片成人免费高清| 国产在线视频欧美| 黄色成人在线观看| 亚洲国产一区二区视频| 国产日韩欧美三级| 欧美日韩免费在线| 国产精品vvv| 国产欧美日韩视频在线观看 | 欧美日韩综合在线| 国产精品久久久久久久久久久久久 | 国产精品青草久久久久福利99| 国产女主播一区| 欧美日韩亚洲综合在线| 欧美系列电影免费观看| 国产精品视频| 欧美日韩在线不卡一区| 国产老肥熟一区二区三区| 韩国精品在线观看| 亚洲精选中文字幕| 亚洲欧美日韩爽爽影院| 亚洲国产欧美一区| 亚洲午夜精品在线| 久久久国产一区二区| 欧美一区二区三区四区在线| 亚洲一区二区三区四区视频| 午夜影院日韩| 免费一区视频| 国产精品乱码久久久久久| 欧美午夜不卡影院在线观看完整版免费 | 一区二区三区黄色| 亚洲精品偷拍| 亚洲免费在线| 亚洲狼人综合| 亚洲精选在线| 欧美一区二区三区四区高清| 欧美成人乱码一区二区三区| 免费成人性网站| 欧美午夜欧美| 国产精品亚洲综合久久| 在线观看日韩av电影| 亚洲视频专区在线| 亚洲资源av| 亚洲精品美女在线| 久久国产毛片| 国产精品v日韩精品v欧美精品网站| 狠狠爱成人网| 在线观看欧美| 亚洲一二三区视频在线观看| 亚洲午夜免费视频| 亚洲自拍电影| 99视频超级精品| 久久视频一区| 欧美成人有码| 国产日韩av高清| 制服丝袜亚洲播放| 亚洲三级色网| 亚洲少妇一区| 欧美一区二区成人| 欧美日韩国产精品| 国产精品另类一区| 亚洲欧洲精品成人久久奇米网| 先锋影音国产精品| 亚洲伊人久久综合| 久久久久久久久久久久久9999| 老司机一区二区| 国产精品丝袜久久久久久app| 亚洲精品影院| 亚洲永久在线| 亚洲二区在线视频| 中日韩高清电影网| 久久国产免费| 国产精品一区二区久久国产| 亚洲美女诱惑| 日韩午夜在线电影| 欧美国产精品| 亚洲二区三区四区| 一本色道久久综合狠狠躁篇怎么玩 | 欧美日韩中文字幕精品| 91久久在线观看| 亚洲精品在线一区二区| 看片网站欧美日韩| 黄色一区三区| 99视频一区二区| 久久gogo国模啪啪人体图| 日韩一级黄色av| 欧美成人资源网| 亚洲第一偷拍| 亚洲欧美日韩国产另类专区| 亚洲在线电影| 国产精品久久久久久模特| 国内精品久久久久久久影视蜜臀| 亚洲欧洲一区二区三区在线观看| 亚洲精品日韩在线观看| 免费一级欧美片在线观看| 尤物精品国产第一福利三区 | 欧美影片第一页| 国产欧美日韩伦理| 欧美一区二区三区久久精品| 99这里有精品| 欧美日韩在线观看视频| 含羞草久久爱69一区| 欧美主播一区二区三区| 亚洲视频香蕉人妖| 欧美不卡视频一区发布| 国模私拍视频一区| 亚洲国产精品久久| 欧美激情在线免费观看| 日韩一级精品视频在线观看| 亚洲图片自拍偷拍| 男人的天堂亚洲在线| 亚洲电影免费| 在线一区免费观看| 国产精品久久婷婷六月丁香| 亚洲国产精品成人一区二区| 亚洲日本成人网| 久久久久久久久伊人| 黑人操亚洲美女惩罚| 亚洲人午夜精品免费| 久久亚洲图片| 91久久中文| 亚洲国产成人av在线| 欧美在线黄色| 一区二区三区在线视频观看| 亚洲欧美日韩精品一区二区| 久久久另类综合| 最新日韩在线视频| 91久久久一线二线三线品牌| 欧美精品久久久久久久免费观看| 极品av少妇一区二区| 亚洲美女av黄| 欧美精品v国产精品v日韩精品| 亚洲理论电影网| 欧美一区午夜视频在线观看| 樱花yy私人影院亚洲| 一区二区久久久久| 欧美精品一区二区三区视频| 在线欧美影院| 亚洲黄页一区| 欧美三级午夜理伦三级中视频| 亚洲欧洲在线免费| 亚洲伦理自拍| 国产精品网站在线观看| 亚洲风情亚aⅴ在线发布| 欧美日韩亚洲激情| 日韩亚洲综合在线| 欧美在线视频一区二区| 亚洲国产成人高清精品| 亚洲经典自拍| 国产精品观看| 亚洲级视频在线观看免费1级| 国产精品v亚洲精品v日韩精品 | 亚洲精品国产精品乱码不99| 亚洲伦理久久| 国产女主播视频一区二区| 亚洲综合视频一区| 欧美一区二区| 亚洲激情在线观看| 久久精品国产综合精品| 国产午夜精品一区理论片飘花| 亚洲欧洲日本国产| 国产欧美精品日韩精品| av成人免费在线| 激情成人中文字幕| 销魂美女一区二区三区视频在线| 亚洲国产精品成人va在线观看| 欧美在线看片a免费观看| 亚洲美女在线看| 榴莲视频成人在线观看| 亚洲性夜色噜噜噜7777| 欧美精品在线网站| 国产精品99久久久久久久女警| 欧美一区二区福利在线| 欧美性一二三区| 欧美顶级少妇做爰| 午夜精品久久久久久久白皮肤|