<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于FPGA+MATLAB的串行多階FIR濾波器設計

基于FPGA+MATLAB的串行多階FIR濾波器設計

作者: 時(shí)間:2014-04-08 來(lái)源:網(wǎng)絡(luò ) 收藏

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

本文引用地址:http://dyxdggzs.com/article/236081.htm

關(guān)鍵詞 ;FIR數字濾波器;Matlab;仿真

數字濾波器是用于過(guò)濾時(shí)間離散信號的數字系統,通過(guò)對抽樣數據進(jìn)行數學(xué)處理達到頻域濾波的目的。根據單位沖激響應函數的時(shí)域特性可分為兩類(lèi):無(wú)限沖激響應(Infinite Impulse Response,IIR)濾波器和有限沖激響應(Finite Inpulse Response,FIR)濾波器。與IIR濾波器相比,FIR濾波器的實(shí)現是非遞歸的,較穩定;且FIR濾波器可獲得嚴格的線(xiàn)性相位特性。因此,應用領(lǐng)域較廣。

FIR濾波器具有成熟的結構,使用Matlab強大的功能使得本來(lái)繁重的計算工作變得輕松。在具體應用時(shí),要根據工程當中信號的特點(diǎn):采樣速率、信號帶寬等具體使用Matlab得到FIR濾波器系數。濾波器的結構實(shí)現可以使用PC軟件、單片機、微處理器、FPGA、通用DSP芯片。其需根據信號特性選擇。文中主要使用FPGA實(shí)現高速時(shí)鐘下的串行FIR濾波器結構,達到速度和邏輯資源情況下的最佳均衡。

1 FIR的特點(diǎn)

有限長(cháng)單位沖激響應(FIR)濾波器的特點(diǎn):(1)系統的單位沖激響應h(n)在有限個(gè)n值處不為零。(2)系統函數H(z)在|z|>0處收斂,極點(diǎn)全部在z=0處。(3)結構上主要是非遞歸結構,沒(méi)有輸出到輸入的反饋,但有些結構中也包含有反饋的遞歸部分。

設FIR濾波器的單位沖激響應h(n)為一個(gè)N點(diǎn)序列,0≤n≤N-1,則濾波器的系統函數為

?

h.jpg

?

即有N-1階極點(diǎn)在z=0處,有N-1個(gè)零點(diǎn)位于有限z平面的任何位置。

2 使用MatIab Fdatool設計FIR濾波器

FDATool(Fliter Design & Analysis Tool)是Matlab信號處理工具箱專(zhuān)用的濾波器設計分析工具,操作簡(jiǎn)單、靈活,可采用多種方法設計FIR和IIR濾波器。在Matlab命令窗口輸入FDATool后回車(chē)就會(huì )彈出FDATool界面。

帶通濾波器設計已知濾波器的階數n=1 024,beta=3.4。首先在Fiher Ttype中選擇Bandpass;在Design Method選項中選擇FIRWindow,接著(zhù)在Window選項中選取Blackman—Harris;指定Filter Order項中的Specify Order為1 024;采樣頻率Fs=8 000 Hz,截止頻率Fc1=900 Hz,Fc2=1 200 Hz。設置完以后點(diǎn)擊窗口下方的Design Filter,在窗口上方就會(huì )看到所設計濾波器的幅頻響應,通過(guò)菜單選項Analysis還可看到濾波器的相頻響應、組延遲、脈沖響應、階躍響應、零極點(diǎn)配置等,如圖1所示。

?

?

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

3 FPGA設計和仿真驗證

當已知濾波器系數,信號速率為8 kHz,周期125μs。根據FIR濾波器的結構可知,只要在125μs之內完成1 024次乘加運算,那么就可達到對8 kHz速率的語(yǔ)音信號的有效濾波。文中使用QuartusII9.1開(kāi)發(fā)平臺,FPGA芯片選用EP3C5E144C8,主時(shí)鐘25 MHz,周期40 ns進(jìn)行1 024次運算,耗時(shí)40.96 μs<<125μs。

首先新建在QuartusII中新建一個(gè)工程FIR1024,然后使用原理圖和VHDL混合的方式設計出以下FPGA程序。把fircoef.mif表格文件代入到系數ROM存儲器中。

輸入管腳:CLK主時(shí)鐘25 MHz;DIN[15..0]語(yǔ)音數據輸入;AFCLK數據速率時(shí)鐘8 kHz;信號數據1 024點(diǎn)緩存RAM和濾波器系數ROM。

?

?

?

?

?

濾波器相關(guān)文章:濾波器原理


fpga相關(guān)文章:fpga是什么


濾波器相關(guān)文章:濾波器原理


電源濾波器相關(guān)文章:電源濾波器原理


數字濾波器相關(guān)文章:數字濾波器原理

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: FPGA MATLAB

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>