基于DSP的IIR數(shù)字濾波器的設(shè)計與實現(xiàn)_第1頁
基于DSP的IIR數(shù)字濾波器的設(shè)計與實現(xiàn)_第2頁
基于DSP的IIR數(shù)字濾波器的設(shè)計與實現(xiàn)_第3頁
基于DSP的IIR數(shù)字濾波器的設(shè)計與實現(xiàn)_第4頁
基于DSP的IIR數(shù)字濾波器的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、基于DSP的IIR數(shù)字濾波器的設(shè)計與實現(xiàn)摘要: 敘述了IIR數(shù)字濾波器的設(shè)計原理及其在DSP上的實現(xiàn)思路,并對用DSP實現(xiàn)IIR數(shù)字濾波的方法進行了分析。用MATLAB計算出IIR數(shù)字濾波器的系數(shù),考慮到溢出問題,采用級聯(lián)的形式對濾波器進行分解,最后在TMS320VC5416 DSP上得以實現(xiàn),并通過CCS(come composer studio)的輸入輸出功能和RTDX(real-time data exchange)的功能保證實現(xiàn)結(jié)果和仿真結(jié)果的一致性。關(guān)鍵詞: IIR數(shù)字 濾波器 DSP 算法數(shù)字濾波器在各種數(shù)字信號處理中發(fā)揮著十分重要的作用,數(shù)字濾波器設(shè)計一直是信號處理領(lǐng)域的重要研究

2、課題。常用的數(shù)字濾波器有FIR濾波器和IIR濾波器,其中IIR數(shù)字濾波器因具有結(jié)構(gòu)簡單、占用存儲空間少、運算速度快、較高的計算精度和能夠用較低的階數(shù)實現(xiàn)較好的選頻特性等特點1,得到了廣泛應(yīng)用。DSP芯片有適合于數(shù)字信號處理的軟件資源和硬件資源,是實現(xiàn)數(shù)字信號處理的重要途徑2。目前所見文獻,多數(shù)為濾波器的模型設(shè)計,所得結(jié)果也是在MATLAB等實驗環(huán)境下模擬仿真完成的,帶有很大的局限性。本文討論IIR數(shù)字濾波器在DSP上的實現(xiàn)思路,并對其實現(xiàn)方法進行了分析。1 數(shù)字IIR濾波器的理論設(shè)計分析數(shù)字濾波器實際上是一個采用有限精度算法實現(xiàn)的線性非時變離散系統(tǒng),濾波器的功能實現(xiàn)實際上是通過大量的加法運算和

3、乘法運算完成的。IIR數(shù)字濾波器差分方程的一般形式為:從IIR數(shù)字濾波器的實現(xiàn)來看,有直接型、級聯(lián)型、并聯(lián)型和格型等基本網(wǎng)絡(luò)結(jié)構(gòu)。不同的結(jié)構(gòu)形式會有不同的運算誤差,其穩(wěn)定性、運算速度、所占用的存儲空間等也有所不同3。其中直接型僅需要N級延遲單元,且可作為級聯(lián)型和并聯(lián)型結(jié)構(gòu)中的基本單元,是最常用的IIR數(shù)字濾波器結(jié)構(gòu)之一。IIR數(shù)字濾波器的設(shè)計方法有兩類4,一類是借助于模擬濾波器的設(shè)計方法設(shè)計出模擬濾波器,利用沖激響應(yīng)不變法或雙線性變換法轉(zhuǎn)換成數(shù)字濾波器,然后用硬件或軟件實現(xiàn);另一類是直接在頻域或時域中進行設(shè)計,設(shè)計時需要計算機作輔助工具。對系統(tǒng)傳遞函數(shù)為的IIR數(shù)字波濾器來說,設(shè)計的任務(wù)就是尋

4、求一種因果關(guān)系和物理上可實現(xiàn)的系統(tǒng)傳遞函數(shù)H(z),使其頻率響應(yīng)H(ej)能夠滿足所希望得到的頻域指標(biāo)。2 IIR數(shù)字濾波器在DSP上的實現(xiàn)方法及實現(xiàn)過程2.1 IIR數(shù)字濾波器在DSP上的實現(xiàn)步驟和條件IIR數(shù)字濾波器在DSP上的設(shè)計過程如下:(1)根據(jù)指標(biāo)確定濾波器的類型,設(shè)計出濾波器的參數(shù);(2)根據(jù)DSP的特點(字長、精度等)對參數(shù)進行取舍、量化,然后進行仿真;(3)根據(jù)仿真結(jié)果對濾波器的結(jié)構(gòu)、參數(shù)再次進行調(diào)整,直到滿足要求為止;(4)在DSP上用語言實現(xiàn)濾波器功能。定點DSP芯片,既可以做定點運算,也可以做浮點運算。一個算法,既可以用匯編語言編程實現(xiàn),也可以用高級語言(C,C+)實現(xiàn)

5、。而一個IIR數(shù)字濾波器是否可以在DSP上實現(xiàn),最終要看此算法是否滿足兩個條件:執(zhí)行時間和精度。一個算法的精度再高,如果做不到實時,也沒有實用價值;相反,如果執(zhí)行時間很快,但精度滿足不了要求,也就無從實現(xiàn)濾波功能。IIR數(shù)字濾波器在DSP上的實現(xiàn)思路,應(yīng)該是在滿足上面兩個條件的前提下,找到盡可能簡易的實現(xiàn)方法。2.2 IIR數(shù)字濾波器在TMS320VC5416 DSP上的實現(xiàn)過程借助于計算機強大的仿真功能,在MATLAB環(huán)境下設(shè)計一個IIR數(shù)字濾波器變得十分容易5。但是要在DSP上實現(xiàn)此濾波器功能,則需要對濾波器的結(jié)構(gòu)、系數(shù)等參數(shù)進行改進。下面以一個低通IIR數(shù)字濾波器在DSP芯片TMS320

6、VC5416上的實現(xiàn)為例,敘述其實現(xiàn)過程。TMS320VC5416是DSP芯片的主要供應(yīng)商TI公司最近推出的5000系列中的高性能DSP,該處理器為16位定點DSP,最高運算速度可達160MIPS,內(nèi)帶256KB的RAM,有128KB的數(shù)據(jù)空間,最大程序容量高達16MB,有3個McBSP和6個DMA通道并且支持外部DMA,內(nèi)核電壓低至1.5V。其CPU由于運算速度快、內(nèi)部資源充足、接口靈活、功耗低,非常適合做復(fù)雜算法運算。低通IIR數(shù)字濾波器的參數(shù)如下:采樣率為16000Hz,截止頻率為500Hz,采用butterworth模型設(shè)計時階數(shù)為7階,在MATLAB6.5環(huán)境下得到的b系數(shù)和a系數(shù)如

7、表1所示。從理論上說,可以用高階IIR數(shù)字濾波器實現(xiàn)良好的濾波效果。但由于DSP本身有限字長和精度的因素,加上IIR濾波器在結(jié)構(gòu)上存在反饋回路,是遞歸型的,再者高階濾波器參數(shù)的動態(tài)范圍很大。這樣一來造成兩個后果:結(jié)果溢出和誤差增大,從而導(dǎo)致算法無法在DSP上實現(xiàn)。解決此問題的有效方法是把高階IIR數(shù)字濾波器簡化成幾個2階濾波器來設(shè)計,即采用級聯(lián)結(jié)構(gòu)。因此系統(tǒng)函數(shù)為:H(z)=H1(z)H2(z)Hn(z)(3)上述7階IIR數(shù)字濾波器采用級聯(lián)的結(jié)構(gòu)后變成4個濾波器級聯(lián)的形式,每個濾波器的系數(shù)如表2所示。TMS320VC5416是16位DSP。在CCS下,它的浮點數(shù)格式占用兩個字,即32bit。

8、通過CCS的數(shù)據(jù)輸入輸出功能和RTDX功能,可以隨時觀察DSP結(jié)果和理論仿真結(jié)果之間的差異,及時發(fā)現(xiàn)數(shù)據(jù)的溢出和計算誤差。對表2的系數(shù)取7個有效位(在CCS下浮點數(shù)的有效位為7位),計算結(jié)果如圖1所示。圖中為輸入和濾波后的波形,信號頻率為500Hz。從圖中可以看出,濾波沒有產(chǎn)生溢出現(xiàn)象且濾波效果滿足設(shè)計要求。程序流程如圖2。采用間接尋址指向數(shù)據(jù)存儲單元,主要指令為加法、乘法和循環(huán)實現(xiàn),這些都可以通過MAC等指令直接實現(xiàn)。需注意的是要對乘法運算結(jié)果進行溢出保護。另外,因為主程序框架采用C結(jié)構(gòu),而算法由匯編語言實現(xiàn),所以要注意不同環(huán)境下尋址方式的區(qū)別,當(dāng)從C環(huán)境進入直接尋址時,要先確定DP值,以免

9、帶來不確定的計算結(jié)果。數(shù)據(jù)采集時要先通過DSP的DMA功能將輸入數(shù)據(jù)保存在外部SRAM中,采樣結(jié)束后再將要濾波的數(shù)據(jù)通過DMA載入內(nèi)部RAM中,從而提高處理速度。考慮到IIR數(shù)字濾波器的運算特點,某一時刻的輸入數(shù)據(jù)參加一次運算后不再參與下次運算,只有各級濾波器輸出結(jié)果需要參與多次運算,因此濾波結(jié)果和輸入數(shù)據(jù)可以共用同一存儲地址,從而節(jié)省存儲空間。除此之處,還要注意以下問題:(1)IIR數(shù)字濾波器是針對采樣率固定的系統(tǒng)設(shè)計的,更改系統(tǒng)或系統(tǒng)采樣率改變時應(yīng)重新設(shè)計。(2)用到的數(shù)據(jù)存儲單元,程序開始時應(yīng)對這些單元進行初始化。如果要進行連續(xù)濾波,應(yīng)保存上一次濾波的結(jié)果。(3)IIR數(shù)字濾波器的濾波結(jié)果會引起相位的延遲,故對相位嚴(yán)格要求的場合,需加全通網(wǎng)絡(luò)進行較正,或選用FIR濾波器實現(xiàn)濾波功能。IIR數(shù)字濾波器以它優(yōu)越的性能,在電力、通信和測控等領(lǐng)域得到廣泛應(yīng)用。本文針對TI公司的TMS320VC5416 DSP,敘述了IIR數(shù)字濾波

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論