作者:王 斌 解放軍91413部隊
在信號處理系統(tǒng)中,數(shù)字濾波器是一項重要且普遍應用的技術(shù)。它通過一定的數(shù)學函數(shù)關(guān)系來改變輸入濾波器信號中所含頻率成分的相對比例或濾除某些頻率成分。IIR濾波是數(shù)字信號處理領域中最基本的一種處理方法,可用較低階數(shù)獲得較高的選擇性,在相同的時鐘采樣速率和相同的晶體管數(shù)量的前提下能提供更好的過渡帶下降速率,已廣泛應用于通信等眾多領域。
1 基本原理
1.1 Visual DSP++簡介
Visual DSP++是ADI公司提供的用于DSP程序開發(fā)的可視化集成開發(fā)環(huán)境,支持對Tiger SHARC系列DSP芯片的編程、調(diào)試和開發(fā)。Visual DSP++通過圖形窗口的方式與用戶進行信息交換,采用直觀的、易于使用的用戶界面,針對處理器進行操作。
1.2 算法及實現(xiàn)原理
無限脈沖響應(IIR)的系統(tǒng)函數(shù)為
2 實現(xiàn)方法及步驟
2.1 算法實現(xiàn)及編程
將1.2中提到的算法進行編程實現(xiàn),利用Visual DSP++中的函數(shù),用C語言編程實現(xiàn)。程序結(jié)構(gòu)見圖1。
2.2 調(diào)入并編譯程序
將編好的源代碼插入到建好的工程中,注意需將相應頭文件加入。然后進行編譯、鏈接。注意選擇session為ADSP-TS201 Rev.1.0 Single Processor Simulator。
3 結(jié)果分析
查看inputs[]和output[]的時域圖和頻譜圖,并把output[]的時域圖和頻譜圖與expected output[]的時域圖和頻譜圖進行比較。
時域圖如圖2所示,頻譜圖如圖3所示。也可以通過存儲空問直接比較output[]和expectedoutput[]的值。比較結(jié)果見表1。
由圖2可以看出,經(jīng)IIR濾波后,輸出時域變得平滑,且趨近于止弦曲線。
圖3顯示的是經(jīng)過IIR濾波后的輸出頻譜??梢钥吹?,經(jīng)濾波后,輸出數(shù)據(jù)的頻譜較輸入數(shù)據(jù)已有了較大程度的改善。
4 結(jié)束語
本文介紹了IIR數(shù)字濾波器的原理、設計以及在Visual DSP++中的實現(xiàn)力法。在實際使用中,可以根據(jù)不同精度要求,方便地對該IIR濾波器參數(shù)進行修改以滿足不同的指標要求,靈活地組成任意階不同類型的濾波器。在Visual DSP++軟環(huán)境中調(diào)試濾波器,可進一步節(jié)省硬件資源和縮短運行周期。