LMS自適應(yīng)濾波器的仿真與實現(xiàn)
(3)信噪比
當(dāng)信噪比升高時,LMS算法的性能將急劇惡化。故可采用頻域LMS算法來克服時域LMS算法的性能局限。本文引用地址:http://cafeforensic.com/article/188468.htm
2.2 DSP Builder建模
采用Altera公司的FPGA器件可進行數(shù)字信號的處理設(shè)計。Altera公司提供有可視化的開發(fā)工具軟件DSP Builder。利用它可在MATIAB的圖形仿真環(huán)境Simulink中建立一個*mdl模型文件,同時在DSP Builder和其他Simulink庫中找到相應(yīng)的圖形模塊并調(diào)入Simulink窗口。圖2所示為4階LMS濾波器模型界面。利用其強大的圖形化仿真和分析功能,可以分析系統(tǒng)的正確性。
圖中以shuru.mat為輸入信源,qiwang.mat為期望,信宿為Scope。除圖中這些模塊外,還有一些總線控制模塊和權(quán)系數(shù)控制模塊。其運行模型觀察的顯示結(jié)果如圖3所示。在這種FIR濾波器的LMS算法中,其誤差將隨著權(quán)的逼近逐漸減小,但沒有等于零,而是在零值上下起伏,這說明了LMS算法是用平方誤差代替均方誤差而造成的誤差缺點。
3 基于FPGA的實現(xiàn)方法
模型通過以后,運行SigalCompiler可將模型轉(zhuǎn)化成VHDL語言和Tcl腳本。由于在Simuilnk中進行的模型仿真是算法級的,屬于系統(tǒng)驗證性質(zhì)的仿真,并沒有對VHDL代碼進行仿真。而生成的VHDL代碼是RTL級且是針對具體的硬件結(jié)構(gòu)的,因此,轉(zhuǎn)化后的VHDL代碼實現(xiàn)就可能與*mdl模型描述的情況不符,故有必要再對生成的RTL級VHDL代碼進行功能驗證。ALTERA公司的ModelSim平臺是使用最廣泛的基于單內(nèi)核的VerilogHDL/VHDL混合仿真器,利用它可方便地將信號波形顯示為類似模擬信號的格式,特別適合顯示復(fù)雜信號的波形。這給仿真調(diào)試帶來了極大的方便。在QuartusⅡ調(diào)用上述文件,便可用ModelSim對生成的VHDL代碼進行功能級仿真。轉(zhuǎn)化成功后再調(diào)用VHDL綜合器進行綜合并生成底層網(wǎng)表文件。然后再調(diào)用OuartusⅡ進行編譯,接著用QuartusⅡ根據(jù)網(wǎng)表文件及設(shè)置的優(yōu)化約束條件進行布線布局和優(yōu)化設(shè)計的適配,最后生成編程文件和仿真文件。這樣,生成的POF/SOF FPGA配置文件便可用于對目標(biāo)器件的編程配置和硬件實現(xiàn)。
4 結(jié)束語
本文采用自上而下的設(shè)計思想,并用FPGA實現(xiàn)了自適應(yīng)濾波器。同時用MATIAB和OuartersⅡ混合仿真實現(xiàn)了LMS算法的設(shè)計方案。結(jié)果表明,該自適應(yīng)濾波器具有良好的消燥能力。
評論