基于FPGA并行分布式算法的FIR濾波器的實(shí)現(xiàn)_第1頁
基于FPGA并行分布式算法的FIR濾波器的實(shí)現(xiàn)_第2頁
基于FPGA并行分布式算法的FIR濾波器的實(shí)現(xiàn)_第3頁
基于FPGA并行分布式算法的FIR濾波器的實(shí)現(xiàn)_第4頁
基于FPGA并行分布式算法的FIR濾波器的實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第16卷第4期2006年7月黑龍江科技學(xué)院學(xué)報(bào)JournalofHeilongjiangInstituteofScience&TechnologyVol.16No.4July2006文章編號(hào):1671-0118(2006)04-0248-03基于FPGA并行分布式算法的FIR濾波器的實(shí)現(xiàn)趙金憲,吳三,王乃飛(黑龍江科技學(xué)院電氣與信息工程學(xué)院,150027)摘要:采用FPGA實(shí)現(xiàn)FIR,行分布式算法,HDLMAX+PlusII上進(jìn)行了實(shí),既具有實(shí)時(shí)性,。另外,對(duì)優(yōu)化硬件資源利用率、提高運(yùn)。關(guān)鍵詞:FIR數(shù)字濾波器;分布式算法;FPGA;VerilogHDL中圖分類號(hào):TN71317文獻(xiàn)標(biāo)

2、識(shí)碼:AFIRfiltersrealizationonthebasisofparalledDAarithmeticusingFPGAZHAOJinxian,WUSan,WANGNaifei(CollegeofElectricalandInformationEngineering,HeilongjiangInstituteofScienceandTechnology,Harbin150027,China)Abstract:ThispaperdiscussesamethodtodesigntheFIRfilteronFPGA,onthebasisofparallel2distributedarit

3、hmeticmethod,usingROMbasedLUT.ThedesigningfileofFIRdigitalfilterisdescribedwithVerilogHDLandpassestheexperimentalsimulationandtiminganalysisinMAX+PlusII.Theresultofsimulationprovesthatthismethodisfeasible,efficient,andiscapableofovercomingthedisadvantageofsoftwareandhardwaretechniquesavailableforimp

4、lementationwhichsuffersfromthefailuretomeetthedemandforareal2timeandflexiblerequirementforsignalprocessinginthesametime.Themethodnotonlyfulfilsthereal2timerequirement,butalsoshowsgreaterflexibility.Thepaperstudiessomeprac2ticalproblemsastohowtooptimizetheutilizationpercentofthehardwareandimprovetoth

5、ecomputedspeed.Keywords:FIRdigitalfilter;DA(distributearithmetic);FPGA;VerilogHDL0引言數(shù)字濾波是語音與圖像處理、模式識(shí)別和譜分析等應(yīng)用中的一種基本的處理部件,它可以滿足濾波器對(duì)幅度和相位特性的嚴(yán)格要求,避免模擬濾波器所無法克服的電壓漂移、溫度漂移和噪收稿日期:2006-03-24聲等問題。有限沖激響應(yīng)(FIR)濾波器可以在設(shè)計(jì)任意幅頻特性的同時(shí),保證嚴(yán)格的線性相位特性。由于其實(shí)現(xiàn)結(jié)構(gòu)主要是非遞歸的,FIR濾波器可以穩(wěn)定工作。目前FIR濾波器的實(shí)現(xiàn)方法有三種:利用單片通用數(shù)字濾波器集成電路、DSP器件和可編程邏輯器

6、件。單片通用數(shù)字濾波器使用方便,但由于字長和階數(shù)的規(guī)格較少,不能完全滿足實(shí)際需要。使用DSP器件實(shí)現(xiàn)雖然簡單,但由© 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. 第4期趙金憲,等:基于FPGA并行分布式算法的FIR濾波器的實(shí)現(xiàn)249于程序順序執(zhí)行,其執(zhí)行速度必然不快。FPGA有著規(guī)整的內(nèi)部邏輯陣列和豐富的連線資源,特別適合于數(shù)字信號(hào)處理任務(wù),相對(duì)于串行運(yùn)算為主導(dǎo)的通用DSP芯片來說,其并行性和可擴(kuò)展性更好。但長期以來,FPGA一直被用于系統(tǒng)邏輯或時(shí)序控制上,很少有

7、信號(hào)處理方面的應(yīng)用。其原因主要是FPGA中缺乏實(shí)現(xiàn)乘法運(yùn)算的有效結(jié)構(gòu)。現(xiàn)在這個(gè)問題得到了解決,使FPGA在數(shù)字信號(hào)處理方面有了長足的發(fā)展。據(jù)的每一對(duì)應(yīng)位產(chǎn)生的部分積預(yù)先進(jìn)行相加,形成相應(yīng)的部分積,然后再對(duì)各個(gè)部分積累加形成最終結(jié)果,而傳統(tǒng)算法是所有乘積已經(jīng)產(chǎn)生之后再相加完成乘加運(yùn)算的。傳統(tǒng)算法的實(shí)現(xiàn)如圖1所示。與傳統(tǒng)串行算法相比,DA算法可極大地減少硬件電路的規(guī)模,提高電路的執(zhí)行速度。其實(shí)現(xiàn)如圖2(虛線為流水線寄存器)所示。11DA)早在1973Croisie提出,但由于它特別適合用FPGA來實(shí)現(xiàn),故直到FPGA出現(xiàn)以后,才被廣泛的應(yīng)用在FPGA中計(jì)算乘積和。筆者采用分布式算法設(shè)計(jì)FIR濾波器

8、,并對(duì)其進(jìn)行了改進(jìn)。一個(gè)線性時(shí)不變網(wǎng)絡(luò)的輸出可以表示為N-1y=c,x =n=0cnxn=c0x0+c1x1+cN-1xN-1。進(jìn)一步假設(shè)系數(shù)cn是已知常數(shù),xn是變量。無符號(hào)DA系統(tǒng)假設(shè)變量xn的表達(dá)式為B-1xn=b=0xN-1bn×2,xbn0,1,b2基于并行DA算法的FIR濾波器的FPGA設(shè)計(jì)當(dāng)系統(tǒng)對(duì)速度的要求不高時(shí),可以采用圖2所示的串行移位的設(shè)計(jì)方法。在這種算法中,總是計(jì)算具體位b在一個(gè)步驟中通過所有系數(shù)的乘積和。這種計(jì)算只需要一個(gè)小表和一個(gè)附帶移位器的累加器即可。這種結(jié)構(gòu)的FIR濾波器占用的面積很小,處理的速度也較低。為了使處理速度達(dá)到最優(yōu),往往采用并行式結(jié)構(gòu)。這種D

9、A結(jié)構(gòu)的改進(jìn)以增加額外的LUT、寄存器和加法器為代價(jià)來提高速度。一個(gè)N階乘積和計(jì)算的基本DA結(jié)構(gòu)接收N個(gè)字中每個(gè)字內(nèi)的一位。如果每個(gè)字中有兩個(gè)位得以接收,則計(jì)算速度就可以從根本上翻倍。在這種完全流水線式字并行結(jié)構(gòu)中,必須為向量xbn的每一位提供一個(gè)單獨(dú)的ROM(具有相同的內(nèi)容)。如果將輸入位寬加倍,就需兩倍的LUT、寄存器和加法器,這樣,最大速度的代價(jià)是非常昂貴的。如果系數(shù)N的數(shù)量限制在4個(gè)或8個(gè),這一改進(jìn)就有了吸引人的性能。由于FIR濾波器都是線性濾波器,這就意味著低階濾波器輸出的集合可以相加,并由此定義式中,xbn表示xn的第b位,xn即為x的第n次采樣。而內(nèi)積y可以表示為B-1by=n=

10、0cnxb=0B-1k2。b重新分別求和,其結(jié)果為y=c0(xB-102+xB-202B-1B-2+x002)+c1(xB-112xB-212B-2+x012)+B-1cN-1(xB-1N-12xB-2N-12B-2+x0N-12)=(c0xB-10+c1xB-11+cN-1xB-1N-1)2cN-1xB-2N-1)2B-1+(c0xB-20+c1xB-21+B-2(c0x00+c1x01+cN-1x0N-1)2。從以上推導(dǎo)可以發(fā)現(xiàn),DA算法是一種以實(shí)現(xiàn)乘加運(yùn)算為目的的運(yùn)算方法。它與傳統(tǒng)算法實(shí)現(xiàn)乘加運(yùn)算的區(qū)別在于,執(zhí)行部分積運(yùn)算的先后順序不同。DA算法在實(shí)現(xiàn)乘加功能時(shí),首先將各輸入數(shù)©

11、; 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. 250黑龍江科技學(xué)院學(xué)報(bào)第16卷一個(gè)高階濾波器的輸出。在實(shí)際應(yīng)用中,當(dāng)系數(shù)增大時(shí),可以采用級(jí)聯(lián)或串并結(jié)合的方式來減小設(shè)計(jì)規(guī)模。ALTERA公司的FELEX10K系列芯片具有查找2表結(jié)構(gòu),利用其實(shí)現(xiàn)采用全局并行的FIR數(shù)字濾波器,也即將輸入x(n)經(jīng)過不同的延遲后同時(shí)進(jìn)行處理。下面采用該系列芯片來實(shí)現(xiàn)一個(gè)長度為43的FIR濾波器,其結(jié)構(gòu)如圖3所示(虛線為流水線寄存器)。結(jié)束語文中介紹了將乘法轉(zhuǎn)化為查表運(yùn)算的分布式算法,并利用Al

12、tera的FELEX10K系列器件實(shí)現(xiàn)了一個(gè)4位FIR濾波器。盡管長度為4的FIR對(duì)大多數(shù)實(shí)際應(yīng)用來講太短了,但是它可以很容易地?cái)U(kuò)展到更高階,并且具有編緝時(shí)間比較短的優(yōu)點(diǎn),系統(tǒng)運(yùn)行速度為42119MHz,寄存器屬性為106138MHz。這些指標(biāo)明顯優(yōu)于串行分布式算法。參考文獻(xiàn):1UWEMEYERBAESE.數(shù)字信號(hào)處理的FPGA實(shí)現(xiàn)M.北設(shè)濾波器的三個(gè)系數(shù)分別為:c0=-2,c1=3,c2=1,輸入為4位(包含符號(hào)位),采用VerilogHDL語言對(duì)該FIR數(shù)字濾波器進(jìn)行描述,并在EDA京:清華大學(xué)出版社,2003.2潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程M.北京:科學(xué)出版社,2002.3ROBERTOCRISTI.現(xiàn)代數(shù)學(xué)信號(hào)處理M.徐盛譯.北京:開發(fā)工具M(jìn)AX+plus軟件中仿真,結(jié)果如圖4所示。從仿真結(jié)果可以看出,該設(shè)計(jì)所得結(jié)果與

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論