基于FPGA的FIR數(shù)字濾波器設(shè)計(jì)方案
3.2 從模型文件到Verilog代碼的RTL級(jí)轉(zhuǎn)換和編譯適配
本文引用地址:http://butianyuan.cn/article/221566.htm利用Signal Compiler模塊將電路模型文件即Simu-link 模塊文件(。mdl)轉(zhuǎn)換成RTL 級(jí)的Verilog 代碼表述和Tcl(工具命令語(yǔ)言)腳本。這種轉(zhuǎn)換是用來(lái)對(duì)數(shù)字濾波器Simulink模型進(jìn)行結(jié)構(gòu)化分析的[5]。獲得轉(zhuǎn)換好的VHDL描述后就可以調(diào)用 Verilog綜合器,這里我們選用Quartus Ⅱ,用來(lái)生成底層網(wǎng)表文件,同時(shí)也就可以得到其網(wǎng)表文件對(duì)應(yīng)的RTL電路圖。如圖9所示。
3.3 數(shù)字濾波器的ModelSim功能仿真
ModelSim軟件可支持VHDL和Verilog混合仿真,無(wú)論是FPGA設(shè)計(jì)的RTL級(jí)和門(mén)級(jí)電路仿真,還是系統(tǒng)的功能仿真都可以用ModelSim來(lái)實(shí)現(xiàn)[4-5]。由Signal Com-piler生成的Verilog硬件描述語(yǔ)言模塊,在ModelSim中可以直接對(duì)Verilog代碼進(jìn)行仿真,檢測(cè)源代碼是否符合功能要求。圖 10所示的16階FIR數(shù)字濾波器的功能仿真結(jié)果圖。與圖8的Simulink仿真結(jié)果圖的波形一致,表明經(jīng)過(guò)轉(zhuǎn)換的Verilog源代碼可以實(shí)現(xiàn)正常的濾波功能。
3.4 FIR數(shù)字濾波器的FPGA硬件實(shí)現(xiàn)
FIR數(shù)字濾波器一般是嵌入在采集器的采集板卡中進(jìn)行工作的,把由數(shù)字濾波器的Verilog源代碼生成的模塊嵌入到采集板卡的FPGA邏輯中,如圖11所示。
在Quartus Ⅱ環(huán)境下,數(shù)字濾波器的內(nèi)部邏輯經(jīng)過(guò)編譯適配之后,以。sof文件的形式直接加載到FPGA中。
4 FIR 數(shù)字濾波器的FPGA 實(shí)時(shí)測(cè)試
進(jìn)行實(shí)時(shí)測(cè)試的電路是應(yīng)用FPGA和USB的數(shù)據(jù)采集電路,如圖12所示。
測(cè)試時(shí)把信號(hào)發(fā)生器設(shè)置好的輸入信號(hào)輸入到A/D,采樣得到的數(shù)據(jù)經(jīng)過(guò)FPGA,再通過(guò)USB與PC機(jī)相連,應(yīng)用QuartusⅡ中的SignalTapⅡ工具進(jìn)行實(shí)時(shí)檢測(cè),結(jié)果如圖13所示,其中,上面的波形為輸入波形,頻率為200 Hz,下面的波形為輸出波形,由于200 Hz在低通的帶通內(nèi),所以?xún)烧叩牟ㄐ蜗嗖畈淮?。?dāng)輸入波形為頻率533 Hz時(shí),由于是在截頻點(diǎn),其輸出波形的幅值約為輸入波形幅值的71%,如圖13和14所示。
5 結(jié)束
FIR數(shù)字濾波器在數(shù)字信號(hào)處理領(lǐng)域有著廣泛的使用,本文通過(guò)仿真和實(shí)時(shí)驗(yàn)證兩種方式實(shí)現(xiàn)了一種基于FPGA和DSP Builder的FIR數(shù)字濾波器。先根據(jù)FIR濾波器的基本原理和結(jié)構(gòu)框圖搭建了濾波器的模型,再根據(jù)濾波器的性能指標(biāo)通過(guò)FDATool工具對(duì)其進(jìn)行設(shè)計(jì),并通過(guò)系統(tǒng)級(jí)仿真和ModelSim功能仿真進(jìn)行了簡(jiǎn)要的可行性分析,最后通過(guò)QuartusⅡ軟件對(duì)FIR數(shù)字濾波器進(jìn)行實(shí)時(shí)驗(yàn)證,表明本方案所設(shè)計(jì)的FIR 濾波器功能正確,性能良好。
濾波器相關(guān)文章:濾波器原理
fpga相關(guān)文章:fpga是什么
濾波器相關(guān)文章:濾波器原理
電源濾波器相關(guān)文章:電源濾波器原理
數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理
評(píng)論