當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]摘要 FIR濾波器的設(shè)計(jì)分為濾波器系數(shù)計(jì)算和濾波器結(jié)構(gòu)的具體兩個(gè)部分。為說明使用FPGA實(shí)現(xiàn)FIR的靈活性,文中列舉了一個(gè)多階串行FIR濾波器實(shí)例,并給出主要的源代碼和相關(guān)模塊的時(shí)序和功能說明,最后使用Matlab和Quar

摘要 FIR濾波器的設(shè)計(jì)分為濾波器系數(shù)計(jì)算和濾波器結(jié)構(gòu)的具體兩個(gè)部分。為說明使用FPGA實(shí)現(xiàn)FIR的靈活性,文中列舉了一個(gè)多階串行FIR濾波器實(shí)例,并給出主要的源代碼和相關(guān)模塊的時(shí)序和功能說明,最后使用Matlab和Quartusii聯(lián)合仿真驗(yàn)證了FPGA硬濾波器工程的正確性。
關(guān)鍵詞 FPGA;FIR數(shù)字濾波器;Matlab;仿真

    數(shù)字濾波器是用于過濾時(shí)間離散信號的數(shù)字系統(tǒng),通過對抽樣數(shù)據(jù)進(jìn)行數(shù)學(xué)處理達(dá)到頻域?yàn)V波的目的。根據(jù)單位沖激響應(yīng)函數(shù)的時(shí)域特性可分為兩類:無限沖激響應(yīng)(Infinite Impulse Response,IIR)濾波器和有限沖激響應(yīng)(Finite Inpulse Response,F(xiàn)IR)濾波器。與IIR濾波器相比,F(xiàn)IR濾波器的實(shí)現(xiàn)是非遞歸的,較穩(wěn)定;且FIR濾波器可獲得嚴(yán)格的線性相位特性。因此,應(yīng)用領(lǐng)域較廣。
    FIR濾波器具有成熟的結(jié)構(gòu),使用Matlab強(qiáng)大的功能使得本來繁重的計(jì)算工作變得輕松。在具體應(yīng)用時(shí),要根據(jù)工程當(dāng)中信號的特點(diǎn):采樣速率、信號帶寬等具體使用Matlab得到FIR濾波器系數(shù)。濾波器的結(jié)構(gòu)實(shí)現(xiàn)可以使用PC軟件、單片機(jī)、微處理器、FPGA、通用DSP芯片。其需根據(jù)信號特性選擇。文中主要使用FPGA實(shí)現(xiàn)高速時(shí)鐘下的串行FIR濾波器結(jié)構(gòu),達(dá)到速度和邏輯資源情況下的最佳均衡。

1 FIR的特點(diǎn)
   
有限長單位沖激響應(yīng)(FIR)濾波器的特點(diǎn):(1)系統(tǒng)的單位沖激響應(yīng)h(n)在有限個(gè)n值處不為零。(2)系統(tǒng)函數(shù)H(z)在|z|>0處收斂,極點(diǎn)全部在z=0處。(3)結(jié)構(gòu)上主要是非遞歸結(jié)構(gòu),沒有輸出到輸入的反饋,但有些結(jié)構(gòu)中也包含有反饋的遞歸部分。
    設(shè)FIR濾波器的單位沖激響應(yīng)h(n)為一個(gè)N點(diǎn)序列,0≤n≤N-1,則濾波器的系統(tǒng)函數(shù)為
   
    即有N-1階極點(diǎn)在z=0處,有N-1個(gè)零點(diǎn)位于有限z平面的任何位置。

2 使用MatIab Fdatool設(shè)計(jì)FIR濾波器
    FDATool(Fliter Design & Analysis Tool)是Matlab信號處理工具箱專用的濾波器設(shè)計(jì)分析工具,操作簡單、靈活,可采用多種方法設(shè)計(jì)FIR和IIR濾波器。在Matlab命令窗口輸入FDATool后回車就會(huì)彈出FDATool界面。
    帶通濾波器設(shè)計(jì)已知濾波器的階數(shù)n=1 024,beta=3.4。首先在Fiher Ttype中選擇Bandpass;在Design Method選項(xiàng)中選擇FIRWindow,接著在Window選項(xiàng)中選取Blackman—Harris;指定Filter Order項(xiàng)中的Specify Order為1 024;采樣頻率Fs=8 000 Hz,截止頻率Fc1=900 Hz,F(xiàn)c2=1 200 Hz。設(shè)置完以后點(diǎn)擊窗口下方的Design Filter,在窗口上方就會(huì)看到所設(shè)計(jì)濾波器的幅頻響應(yīng),通過菜單選項(xiàng)Analysis還可看到濾波器的相頻響應(yīng)、組延遲、脈沖響應(yīng)、階躍響應(yīng)、零極點(diǎn)配置等,如圖1所示。


    這樣選擇File菜單當(dāng)中的Export導(dǎo)出濾波器系數(shù)到文件中。因?yàn)榈玫较禂?shù)是浮點(diǎn)數(shù),為適合在FPGA中使用,要編寫一個(gè)M文件對系數(shù)進(jìn)行整型量化處理并在此文件當(dāng)中生成FPGA能夠使用的.mif表格文件。

3 FPGA設(shè)計(jì)和仿真驗(yàn)證
   
當(dāng)已知濾波器系數(shù),信號速率為8 kHz,周期125μs。根據(jù)FIR濾波器的結(jié)構(gòu)可知,只要在125μs之內(nèi)完成1 024次乘加運(yùn)算,那么就可達(dá)到對8 kHz速率的語音信號的有效濾波。文中使用QuartusII9.1開發(fā)平臺,F(xiàn)PGA芯片選用EP3C5E144C8,主時(shí)鐘25 MHz,周期40 ns進(jìn)行1 024次運(yùn)算,耗時(shí)40.96 μs<<125μs。
    首先新建在QuartusII中新建一個(gè)工程FIR1024,然后使用原理圖和VHDL混合的方式設(shè)計(jì)出以下FPGA程序。把fircoef.mif表格文件代入到系數(shù)ROM存儲器中。
    輸入管腳:CLK主時(shí)鐘25 MHz;DIN[15..0]語音數(shù)據(jù)輸入;AFCLK數(shù)據(jù)速率時(shí)鐘8 kHz;信號數(shù)據(jù)1 024點(diǎn)緩存RAM和濾波器系數(shù)ROM。


    時(shí)序控制單元是設(shè)計(jì)的核心部分。AFCLK作為整個(gè)FIR濾波器系統(tǒng)的啟動(dòng)信號,此模塊檢測到AFCLK上升沿到來時(shí)會(huì)進(jìn)行以下幾個(gè)步驟的處理:(1)首先啟動(dòng)WEN寫使能信號把當(dāng)前DIN寫入緩存中,寫地址WRADDER累加一次。(2)然后啟動(dòng)讀地址計(jì)數(shù)器RDADDER開始進(jìn)行1 024次計(jì)數(shù),同時(shí)把信號緩存和系數(shù)ROM中的數(shù)據(jù)送到乘加器中做1 024乘加運(yùn)算,RST的作用是在第一個(gè)有效數(shù)據(jù)到來時(shí)進(jìn)行累加器清零,RST_EN的作用是在完成1 024次運(yùn)算時(shí),準(zhǔn)確地把結(jié)果鎖存到輸出端口,如圖6所示。


    因?yàn)檎Z音信號數(shù)據(jù)位寬是16位,經(jīng)過1 024次乘加,和濾波器系數(shù)是32位整型量化處理的所有最終結(jié)果要做必要的量化處理,以得到正確的結(jié)果。


    經(jīng)過編譯綜合后,發(fā)現(xiàn)占用邏輯單元158,僅占EP3C5邏輯單元的3%,RAM單元約占12%,9位乘法器4個(gè),如圖7所示,效果理想。

4 FPGA數(shù)字濾波器功能仿真驗(yàn)證
    QuartusII不支持Testbench,采用*.vwf文件進(jìn)行仿真需要手工輸入激勵(lì),人工檢查輸出結(jié)果,此程序反饋,且效率較低。由于Quartus II的工程文件都是文本文件,所有的數(shù)據(jù)都以文件形式存儲,所以可以編寫文本過濾程序,將文本文件中的有用數(shù)據(jù)提取出來,然后進(jìn)行后期處理,既提高了靈活性,又提高了效率。
    QuartusII支持*.vwf、*.vec等激勵(lì)輸入,由于*.vec的文本操作性優(yōu)于*.vwf文件,所以文中選擇*.vec文件作為激勵(lì)輸入。使用Matlab產(chǎn)生8 000 Hz速率800 Hz,1000 Hz,1 300 Hz共3種頻率的混合信號的仿真樣本序列,帶入到QuartusII中進(jìn)行仿真,產(chǎn)生的仿真文件再導(dǎo)出到Matlab中進(jìn)行顯示,結(jié)果如圖8所示。


    由圖中可以看出,經(jīng)過FPGA濾波過后,800 Hz和1 300 Hz的信號都被濾波器濾除,僅有1 000 Hz信號保留。

5 結(jié)束語
   
通過設(shè)計(jì)實(shí)例,介紹了高速串行多階FIR濾波器的設(shè)計(jì)思路和流程。仿真結(jié)果說明,FPGA在FIR數(shù)字濾波器實(shí)現(xiàn)方面相比通用和專用DSP芯片具有更靈活的使用方法,可以做到速度和邏輯資源占用方面的均衡。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉