基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)與實(shí)現(xiàn)
摘要:簡(jiǎn)要介紹了FIR數(shù)字濾波器的結(jié)構(gòu)特點(diǎn)和基本原理,提出基于FPGA和DSP Builder的FIR數(shù)字濾波器的基本設(shè)計(jì)流程和實(shí)現(xiàn)方案。在Mat lab/Simulink環(huán)境下,采用DSP Builder模塊搭建FIR模型,根據(jù)FDATool工具對(duì)FIR濾波器進(jìn)行了設(shè)計(jì),然后進(jìn)行系統(tǒng)級(jí)仿真和ModelSim功能仿真,其仿真結(jié)果表明其數(shù)字濾波器的濾波效果良好。通過(guò)SignalCompiler把模型轉(zhuǎn)換成VHDL語(yǔ)言加入到FPGA的硬件設(shè)計(jì)中,從QuartusⅡ軟件中的虛擬邏輯分析工具SignalTapⅡ中得到數(shù)字濾波器實(shí)時(shí)的結(jié)果波形圖,結(jié)果符合預(yù)期。
關(guān)鍵詞:FPGA;DSP Builder;FIR數(shù)字濾波器;ModelSim功能仿真
在信息信號(hào)處理過(guò)程中,數(shù)字濾波器是信號(hào)處理中使用最廣泛的一種方法。通過(guò)濾波運(yùn)算,將一組輸入數(shù)據(jù)序列轉(zhuǎn)變?yōu)榱硪唤M輸出數(shù)據(jù)序列,從而實(shí)現(xiàn)時(shí)域或頻域中信號(hào)屬性的改變。常用的數(shù)字濾波器可分為有限脈沖響應(yīng)(FIR)濾波器和無(wú)限脈沖響應(yīng)(IIR)濾波器兩種。其中FIR數(shù)字濾波器具有嚴(yán)格的線性相位,而且非遞歸結(jié)構(gòu)也保證了運(yùn)算的穩(wěn)定性。在實(shí)時(shí)性要求比較高的應(yīng)用場(chǎng)合,采用可編程芯片F(xiàn)PGA加以實(shí)現(xiàn),相比于DSP芯片或?qū)S眯酒膶?shí)現(xiàn)方法,具有高速、高精度、高靈活性的優(yōu)點(diǎn)。本文在采取了一種基于FPGA和DSP Builder的方法設(shè)計(jì)FIR數(shù)字濾波器時(shí),采用了層次化、模塊化的設(shè)計(jì)思想,遵循DSP Builder的設(shè)計(jì)開發(fā)流程,在Matlab/Simulink中建立模型并進(jìn)行系統(tǒng)級(jí)仿真,再進(jìn)行Verilog語(yǔ)言轉(zhuǎn)換,ModelSim仿真驗(yàn)證無(wú)誤后實(shí)現(xiàn)了FIR數(shù)字濾波器的實(shí)時(shí)測(cè)試。
1 FIR數(shù)字濾波器的基本原理及結(jié)構(gòu)
對(duì)于一個(gè)FIR濾波器系統(tǒng),它的沖擊響應(yīng)總是有限長(zhǎng)的,其系統(tǒng)函數(shù)可以記為:
式中:x(n)是輸入采樣序列;h(i)是濾波器系數(shù);k是濾波器階數(shù);y(n)表示濾波器的輸出序列。
圖1為k階FIR數(shù)字濾波器的結(jié)構(gòu)框圖。
2 FIR數(shù)字濾波器的設(shè)計(jì)流程
該設(shè)計(jì)流程主要涉及到Matlab/Simulink、DSPBuilder和QuartusⅡ等工具軟件的開發(fā)設(shè)計(jì)。整個(gè)設(shè)計(jì)流程,包括從系統(tǒng)描述直至硬件實(shí)現(xiàn),可以在一個(gè)完整的設(shè)計(jì)環(huán)境中完成,如圖2所示。
(1)Matlab/Simulink中設(shè)計(jì)輸入,即在Matlab的Simulink環(huán)境中建立一個(gè)擴(kuò)展名為mdl的模型文件,用圖形方式調(diào)用Altera DSP Build er和其他Simulink庫(kù)中的圖形模塊(Block),構(gòu)成系統(tǒng)級(jí)或算法級(jí)設(shè)計(jì)框圖(或稱Simulink設(shè)計(jì)模型)。
(2)利用Simulink的圖形化仿真、分析功能,分析此設(shè)計(jì)模型的正確性,完成模型仿真,也叫系統(tǒng)級(jí)仿真。
(3)DSP Builder設(shè)計(jì)實(shí)現(xiàn)的關(guān)鍵一步,通過(guò)SignalCompiler把Simulink的模型文件轉(zhuǎn)化成通用的硬件描述語(yǔ)言Verilog文件。
(4)轉(zhuǎn)換好的Verilog源代碼用ModelSim軟件進(jìn)行功能仿真,驗(yàn)證Verilog文件的正確性。接下來(lái)的幾個(gè)步驟是對(duì)以上設(shè)計(jì)產(chǎn)生的Verilog的RTL代碼和仿真文件在QuartusⅡ工具軟件中進(jìn)行綜合、編譯適配,生成擴(kuò)展名為.sof的文件加載到FPGA硬件系統(tǒng)中。
電源濾波器相關(guān)文章:電源濾波器原理
數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理
評(píng)論