基于Matlab的FIR帶通濾波器設(shè)計與實現(xiàn)
摘要:借助Matlab的FDATOOL濾波器設(shè)計分析軟件,設(shè)計了一種FIR數(shù)字帶通濾波器,并對一段含噪語音信號進行濾波。利用匯編語言編程,在DSP上實現(xiàn)了該濾波器。實驗結(jié)果表明,該數(shù)字帶通濾波器精確,穩(wěn)定性好,易于移植,具有很強的實用性與靈活性。
關(guān)鍵詞:FIR數(shù)字帶通濾波器;語音去噪;DSP;Matlab
引言
隨著電子技術(shù)的飛速發(fā)展,人們正逐步進入數(shù)字化時代,數(shù)字濾波器越來越受到人們的關(guān)注,并且在近代電信設(shè)備和各類控制系統(tǒng)中的應(yīng)用極為廣泛,如語音處理、圖像處理、通信、電視、雷達、生物醫(yī)學信號處理等。數(shù)字濾波器根據(jù)其沖激響應(yīng)函數(shù)的時域特性,可分為有無限長單位沖激響應(yīng)(IIR)濾波器和有限長單位沖擊響應(yīng)(FIR)濾波器。IIR濾波器雖然可以利用模擬濾波器設(shè)計的結(jié)果,而模擬濾波器的設(shè)計有大量的圖表可查,方便簡單,但它的相位是非線性的。圖像處理以及數(shù)據(jù)傳輸都要求信道具有線性相位,同時又可以具有任意的幅度特性。此外,F(xiàn)IR濾波器的單位沖激響應(yīng)是有限長的,因而濾波器一定是穩(wěn)定的。隨著Matlab軟件和信號處理工具箱的不斷完善,可以利用Matl ab信號處理工具箱快速有效地實現(xiàn)數(shù)字濾波器的設(shè)計、分析和仿真。本文首先使用Matlab設(shè)計了一個FIR數(shù)字帶通濾波器,并對一段含噪語音信號進行濾波,然后在TI公司生產(chǎn)的TMS320C5402芯片上具體實現(xiàn)了該濾波器。
1 FIR數(shù)字帶通濾波器設(shè)計原理
設(shè)FIR濾波器單位脈沖響應(yīng)h(n)長度為N,其系統(tǒng)函數(shù)H(z)為:
FIR濾波器的設(shè)計任務(wù)是選擇有限長度的h(n),使傳輸函數(shù)滿足技術(shù)要求。一般是先給定所要求的理想濾波器頻率響應(yīng),導出hd(n)。因為理想濾波器的沖激響應(yīng)hd(n)是無限長的非因果序列,而所要設(shè)計的是hd(n)是有限長的FIR濾波器,所以要用有限長序列hd(n)來逼近無限長序列h(n)。設(shè):
由此可見,窗函數(shù)不僅影響原信號在時域內(nèi)的波形,而且也影響頻域內(nèi)的波形。
2 用Matlab輔助設(shè)計與仿真
設(shè)計一個FIR濾波器,關(guān)鍵是要得到正確的h(n)系數(shù)。把生成的濾波器系數(shù)加載到目標DSP程序中有兩種方式:
(1)把濾波器系數(shù)輸人到一個C語言的頭文件,在所建工程中添加該頭文件;
?。?)直接把生成的濾波器系數(shù)加載到DSP程序的一個變量中。
本文采用第二種方法。選擇菜單File→Export打開Export對話框,選擇Coefficient File(ASCII),指定輸出文件名,生成*fcf文件
電源濾波器相關(guān)文章:電源濾波器原理
數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理
評論