基于MATLAB與QUARTUS II的 FIR濾波器設計與驗證
完成Simulink軟件中的模型設計,仿真成功后,需要在ModelSim中仿真。因為Simulink中的仿真屬于系統驗證性質(zhì),是對mdl文件進(jìn)行算法級仿真,而生成VHDL描述是RTL級,針對具體硬件結構。二者之間可能存在軟件理解上的差異,轉換后的VHDL代碼實(shí)現可能與mdl模型描述的情況不完全相符,這就需要使用ModelSim進(jìn)行RTL級功能仿真。圖5所示是采用ModelSim仿真的結果,即低通濾波器的輸出??煽闯?,與simulink中的仿真結果基本一致。本文引用地址:http://dyxdggzs.com/article/195605.htm
6 使用Quartus實(shí)現時(shí)序仿真
ModelSim完成的RTL級仿真只是功能仿真,其仿真結果并不能精確反映電路的全部硬件特性,因此,時(shí)序仿真仍十分重要。圖6是用QuartusⅡ實(shí)現的時(shí)序仿真,可看出,時(shí)序仿真滿(mǎn)足設計要求。
7 使用嵌入式邏輯分析儀SignalTap II測試
只進(jìn)行工程軟件仿真遠遠不夠,還必須進(jìn)行硬件仿真。signalTap II邏輯分析儀是Quartus II軟件中集成的一個(gè)內部邏輯分析軟件,使用它可以觀(guān)察設計的內部信號波形,方便用戶(hù)查找引起設計的缺陷。從Simulink建模仿真到Mod-elsim RTL仿真和Quartus II時(shí)序仿真,輸入正弦波都是仿真信號,而不是實(shí)際信號源。在硬件實(shí)際運行時(shí),可以從外部信號源接入器件內部或者在其內部存儲正弦波數據。這里采用后者,即在頂層文件中引入LPM_ROM宏模塊,在其中存入正弦波數據的mif文件(存儲初始化文件),FIR濾波器模塊直接從ROM中讀取數據。實(shí)際測試發(fā)現,經(jīng)過(guò)設計的低通濾波器后,高頻信號被濾除,只有輸出低頻信號(標準的正弦波),濾波效果滿(mǎn)足系統要求,嵌入式邏輯分析儀中的輸出波形如圖7所示。
8 結束語(yǔ)
本文在FPGA內利用DSPBuilder實(shí)現FIR數字低通濾波器,通過(guò)Simulink算法仿真和ModelSim進(jìn)行RTL仿真,接著(zhù)在Quartus中進(jìn)行時(shí)序仿真。最后用嵌入式邏輯分析儀SignalTapII進(jìn)行實(shí)際測試,結果證明采用該方法設計的FIR數字低通濾波器功能正確,性能良好,可以提高FIR濾波器的設計質(zhì)量,加快設計進(jìn)程,驗證結果直觀(guān)明了。隨著(zhù)各類(lèi)數字信號處理的IP Cores的進(jìn)一步完善,基于FPGA的DSP系統的應用會(huì )更加廣泛。
評論