基于DSP的IIR數(shù)字濾波器的設計資料_第1頁
基于DSP的IIR數(shù)字濾波器的設計資料_第2頁
基于DSP的IIR數(shù)字濾波器的設計資料_第3頁
基于DSP的IIR數(shù)字濾波器的設計資料_第4頁
基于DSP的IIR數(shù)字濾波器的設計資料_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、高通 IIR 濾波器的設計及DSP實現(xiàn)1 緒論1.1 基于DSP的IIR 濾波器設計課題背景隨著集成電路技術的發(fā)展,各種新型的大規(guī)模和超大規(guī)模集成電路不斷涌現(xiàn), 集成電路技術與計算機技術結合在一起,使得數(shù)字信號處理系統(tǒng)的功能越來越強。 數(shù)字信號處理技術逐漸發(fā)展成為一門主流技術,數(shù)字信號處理技術就是基于 VLSI 技術和計算機技術發(fā)展起來的一門重要技術。DSP 技術已在通信、控制、信號處理、儀器儀表、醫(yī)療、家電等很多領域得到了越來越廣泛的應用。數(shù)字濾波器在各種數(shù)字信號處理中發(fā)揮著十分重要的作用,用數(shù)字濾波器設計一直是信號處理領域的重要研究課題。常用的數(shù)字濾波器有IIR 濾波器和FIR濾波器,其中

2、IIR 濾波器因具有結構簡單、占用存儲空間少、運算速度快、較高的計算精度和能夠用較低的階數(shù)實現(xiàn)、較好的選頻特性等優(yōu)點,得到了廣泛應用。1.2 本設計主要研究內(nèi)容與方法主要是在學習信號分析與處理的基礎知識后,應用MATLAB 軟件、CCS軟件結合來設計基于DSP 的 IIR 濾波器設計。應用 MATLAB 軟件設計IIR 數(shù)字濾波器:應用 MATLAB 中的工具FDATOOL工具設計濾波器的系數(shù);在 MATLAB 中編譯 M 文件, 產(chǎn)生輸入數(shù)據(jù)。應用 DSP芯片的匯編語言與C 語言進行編寫程序,應用 DSP集成軟件開發(fā)環(huán)境CCS調(diào)試匯編程序與C 程序,并用TMS320C54 結合軟件開發(fā)環(huán)境C

3、CS 來實現(xiàn)了IIR 數(shù)字濾波的仿真。2 IIR 數(shù)字濾波器的設計2.1 IIR 數(shù)字濾波器的基本概念無限脈沖響應濾波器是數(shù)字濾波器的一種,簡稱IIR 數(shù)位濾波器(infiniteimpulse response filter) 。由于無限脈沖響應濾波器中存在反饋回路,因此對于脈沖輸入信號的響應是無限延續(xù)的。iir 濾波器有以下幾個特點1 IIR 數(shù)字濾波器的系統(tǒng)函數(shù)可以寫成封閉函數(shù)的形式。2 IIR 數(shù)字濾波器采用遞歸型結構,即結構上帶有反饋環(huán)路。iir 濾波器運算結構通常由延時、乘以系數(shù)和相加等基本運算組成,可以組合成直接型、正準型、級聯(lián)型、并聯(lián)型四種結構形式,都具有反饋回路。由于運算中的

4、舍入處理,使誤差不斷累積,有時會產(chǎn)生微弱的寄生振蕩。3 IIR 數(shù)字濾波器在計上可以借助成熟的模擬濾波器的成果,如巴特沃斯、契比雪夫和橢圓濾波器等,有現(xiàn)成的設計數(shù)據(jù)或圖表可查,其設計工作量比較小,對計算工具的要求不高。在設計一個iir 數(shù)字濾波器時,我們根據(jù)指標先寫出模擬濾波器的公式,然后通過一定的變換,將模擬濾波器的公式轉換成數(shù)字濾波器的公式。4 IIR 數(shù)字濾波器的相位特性不好控制,對相位要求較高時,需加相位校準網(wǎng)絡。5 IIR 單位響應為無限脈沖序列fir 單位響應為有限的6 IIR 幅頻特性精度很高,不是線性相位的,可以應用于對相位信息不敏感的音頻信號上;FIR 幅頻特性精度較之于ii

5、r 低,但是線性相位,就是不同頻率分量的信號經(jīng)過FIR 濾波器后他們的時間差不變。這是很好的性質(zhì)。無限脈沖響應濾波器的缺點:( 1 )脈沖響應為無限長:造成當輸入數(shù)位訊號為有限長的時候,輸出數(shù)位訊號會變成無限長。( 2)比有限脈沖響應濾波器較不易最佳化。( 3)不一定是穩(wěn)定的:因為Z 轉換后所有的極點不一定都在單位圓內(nèi)2.2 IIR 濾波器的結構IIR 數(shù)字濾波器的單位脈沖響應h(n)是無限長的,結構上有輸出到輸入的反饋(頻率采樣結構除外),是遞歸型。濾波器的系統(tǒng)函數(shù)為:2.1)z Bzb0b1z1bmz MA z 1 a1z 1a2z 2 aNz N由傳遞函數(shù)可知,用兩個向量bm an就可以

6、對一個IIR 濾波器進行表征。實現(xiàn) IIR 濾波器可以采用直接形式、級聯(lián)形式和并聯(lián)形式3 種結構。2.2.1 直接型直接型 :IIR 濾波器的系統(tǒng)函數(shù)M brz rH z r 0N( 2.3)1 akz k k1對應的差分方程為MNy nbi x n iai y n i10 i1M 從上式可以看出,y n 是有兩部分相加構成的: 第一部分bi x n i 是一個對輸i0入信號 x n 的節(jié)延時結構,每節(jié)延時抽頭后加權相加,這是一個實現(xiàn)零點的橫向N結構網(wǎng)絡;第二部分ai y n i 是一個對y n 的延時結構,每級延時抽頭后加11權相加,因此是一個反饋網(wǎng)絡。直接型:IIR 濾波器的系統(tǒng)函數(shù)又可寫

7、為HzXYzzWYzzWX zzrM0brz1N1 akz kk1MrNH z 可視為分子多項式brz與分母多項式1akz k 的倒數(shù)所構成的r0k1兩個子系統(tǒng)函數(shù)的乘積,這相應與子系統(tǒng)級聯(lián)。第一個子系統(tǒng)實現(xiàn)零點,第二個子系統(tǒng)實現(xiàn)極點,而且已知一個線性時不變系統(tǒng),如果交換其子系統(tǒng)的次序,系統(tǒng)函數(shù)不發(fā)生改變。這種結構形式稱為直接型。2.2.2 級聯(lián)型將 IIR 濾波器的系統(tǒng)函數(shù)的分子分母表達為因子的形式,即1 giz 11 hiz 1 1 hiH z A Ni111 Ni21I piz 1 qiz 1 1qiz1II i1由于系統(tǒng)函數(shù)的系數(shù)都是實系數(shù),故零、極點只有兩種情況:或者是實根,或者是共

8、軛復根。式中A為歸一化常數(shù),M M 1 M 2, N N1 N2 , gi表示實零點,pi表示實極點,hi和 h 表示復共軛零點,qi和 qi 表示復共軛極點。每一對共軛因子合并起來,就可以構成一個實系數(shù)的二階因子。因此, 任意系統(tǒng)均可由一階和二階子系統(tǒng)級聯(lián)構成。級聯(lián)結構的一個重要的優(yōu)點是存儲單元比較少,用硬件實現(xiàn)時,可以用一個二階進行分時復用。級聯(lián)結構的另一個特點是,其每一個基本節(jié)都關系到濾波器的一對極點和一對零點。2.2.3 并聯(lián)型將 IIR 濾 波 器 的 系 統(tǒng) 函 數(shù) H z 展 成 部 分 分 式 之 和 , 即HzN1Ak1 N2Bk11ekz11MNGkzkk 1 1 gkz

9、k 1 1 dkz 1 dkz k 0式中 N N1 2N2, dk是 d k的共軛復數(shù)。由于系統(tǒng)函數(shù)的系數(shù)都是實系數(shù),故MNAk,Bk,Gk , gk以及ek全是實數(shù)。如果M<N則上式不包括,GKz k 項;如果M=N,k0MN則 GKz k項變?yōu)镚0。 一般 IIR 系統(tǒng)皆滿足M N的條件。當 M=N時, 上式變?yōu)閗0N1Hzk1Ak1 gkz1N2k1r0kr1kz 1121 a1kz a2kzG0總系統(tǒng)函數(shù)為各部分悉數(shù)函數(shù)之和時,則表示其為各相應子系統(tǒng)的并聯(lián)。所以上式可理解為一階和二階系統(tǒng)的并聯(lián)組合。顯然, 并聯(lián)結構速度快,也可以單獨調(diào)整極點位置,但不能像級聯(lián)那樣直接調(diào)整零極點,

10、因為并聯(lián)型各二階網(wǎng)絡的零點,并非整個系統(tǒng)函數(shù)的零點。因此,當要求準確傳輸零點時,以采用級聯(lián)型為宜。另外, 并聯(lián)型各基本節(jié)的誤差互不影響。3 信號產(chǎn)生程序設計應用說明:例:設計內(nèi)容及要求: 要求設計一個基于DSP的IIR 高通濾波器,把f11 濾掉,保留 f12 。IIR 高通濾波器的系數(shù)由Matlab 中的 fdatool 產(chǎn)生,信號也由Matlab 產(chǎn)生已知 x1(n)=sin(2*pi*f11*n*T);X2(n)=0.5*sin(2*pi*f12*n*T);x(n) = x1(n)+ x2(n)其中: f11=500Hz; f12=4000Hz; fs=10000Hz。程序:f11=50

11、0; %/Hzf12=4000; %/Hzfs=10000; %/ 采樣 HzN=1000 %數(shù)據(jù)個數(shù)T=1/fs; % 采樣周期n=0:N;x11=sin(2*pi*f11*n*T);x12=0.5*sin(2*pi*f12*n*T);x_base=(x11+x12);%待濾波信號波形figure(1)plot(x_base)%待濾波信號頻譜figure(2)yff=abs(fft(x_base)df=n*(fs/N)plot(df,yff)xout=x_base/max(x_base);% 歸一化xto_ccs=round(32767*xout)fid=fopen('input.d

12、at','w');% 打開文件fprintf(fid,'1651 1 0 0 0n');%輸出文件頭fprintf(fid,'%dn',xto_ccs);% 輸出fclose(fid);頻譜圖和時域圖分別如下圖:4.IIR 高通濾波器濾波程序設計#include "stdio.h"#include "C:MATLAB6p5externincludetmwtypes.h"#define LEN 200 / 待濾波的數(shù)據(jù)長度#define IIRORDER 2float yn;float yb;floa

13、t ya;int inputLEN; / 輸入緩沖,在仿真時將從內(nèi)存載入float outputLEN; / 輸出緩沖,直接存放在內(nèi)存中float bIIRORDER+1= 1.0000,-2.0000,1.0000;float aIIRORDER+1= 1.0000, 1.0622,0.3786;void main()int j,i;for(i=0;i<IIRORDER;i+)outputi = inputi;for(j=IIRORDER;j<LEN;j+)yb=0;ya=0;for(i=0;i<=IIRORDER;i+)yb+= bi*(float)inputj-i;fo

14、r(i=0;i<=(IIRORDER-1);i+)ya+= ai+1*(float)outputj-i-1;yn= yb-ya;outputj = yn;while(1);5 DSP、CCS和MATLAB的有關介紹5.1 DSP 特點數(shù)字信號處理器與數(shù)字信號處理有著密不可分的關系,我們通常說的“ DSP”可以指信號處理(digital signal processing ),也可以代表數(shù)字信號處理器(digital signal processor ),本文中均指數(shù)字信號處理器。DSP是一種獨特的微處理器是以數(shù)字信號來處理大量信息的器件。其工作原理是接收模擬信號,轉換為0 或 1 的數(shù)字

15、信號。再對數(shù)字信號進行修改、刪除、強化,并在其他系統(tǒng)芯片中把數(shù)字數(shù)據(jù)解譯回模擬數(shù)據(jù)或實際環(huán)境格式。它不僅具有可編程性,而且其實時運行速度可達每秒數(shù)以千萬條復雜指令程序,遠遠超過通用微處理器,是數(shù)字化電子世界中日益重要的電腦芯片。它的強大數(shù)據(jù)處理能力和高運行速度,是最值得稱道的兩大特色。DSP已經(jīng)成為信號處理技術的主流。因為與早期的模擬信號相比,數(shù)字信號處理有著巨大的優(yōu)勢。早期的模擬信號處理主要通過運算放大電路進行不同的電阻組配實現(xiàn)算術運算,通過電阻、電容的組配實現(xiàn)濾波處理等,其中有一個很明顯的問題是不靈活、不穩(wěn)定,參數(shù)修改困難,需要采用多種阻值、容值的電阻、電容,并通過電子開關選通才能修改處理

16、參數(shù);而且對周圍環(huán)境變化的敏感性強,溫度、電路噪聲等都會造成處理結果的改變而數(shù)字信號處理可以通過軟件修改處理參數(shù), 因此具有很大的靈活性。由于數(shù)字電路采用廠二值邏輯,只要環(huán)境溫度、電路噪聲的變化不造成電路邏輯的翻轉,數(shù)字電路都可以不受影響地完成工作,因此具有很好的穩(wěn)定性。5.2 DSP 在本設計中的運用本設計是基于DSP的 FIR 濾波器的設計,是在DSP芯片上實現(xiàn)的,在模擬 DSP芯片上進行仿真,需要用到DSP芯片的匯編語言,及地址分配,和處理數(shù)據(jù)精度等方面的知識,總之,DSP是本設計的基礎。5.3 CCS特點CCS, 即 code composer studio,是TI 公司在 1999年

17、推出的一個開放、具有強大集成開發(fā)環(huán)境,它最初是由GO DSP公司為TI 的 C6000系列 DSP開發(fā)的。在 TI 收購了 GO DSP后,將CCS擴展到了其他系列?,F(xiàn)在所有TI 犯人DSP都可以使用CCS進行開發(fā),但是其中的DSP/BIOS功能只有C5000和 C6000的 CCS中才提供。以前的 DSP 軟件開發(fā)都是在一個分散的開發(fā)環(huán)境新進行,程序的編寫、代碼的生成以及調(diào)試等都是通過命令來完成,類似于以前的Dos,十分煩雜。而CCS的出現(xiàn)是DSP開發(fā)軟件的一個革命性的變化,CCS主要有代碼生成工具,CCS集成開發(fā)環(huán)境、DSP/BIOS和 API 函數(shù)以及RTDX 組成。5.5 MATLAB

18、的有關介紹與應用20 世紀 70 年代,美國新墨西哥大學計算機科學系主任Cleve Moler 為了減輕學生編程的負擔,用FORTRAN 編寫了最早的MATLAB 。 1984 年由Little 、 Moler 、 Steve Bangert 合作成立了的MathWorks 公司正式把MATLAB推向市場。到20 世紀 90 年代, MATLAB 已成為國際控制界的標準計算軟件 MATLAB 是矩陣實驗室(Matrix Laboratory)的簡稱,是美國MathWorks 公司出品的商業(yè)數(shù)學軟件,運用于算法開發(fā)、數(shù)據(jù)分析、數(shù)據(jù)可視化以及數(shù)值計算的高級技術計算語言和交互式環(huán)境,主要包括MATL

19、AB 和 Simulink 兩大部分。5.5.1 MATLAB在本文中應用在本文中運用到MATLAB 的地方主要有三處:( 1)在MATLAB 中編譯 M 文件,并保存,產(chǎn)生輸入數(shù)據(jù)(在節(jié)中有詳解)( 2)運用MATLAB 中的 fdatool 工具,根據(jù)濾波器指標要求,設計濾波器,并保存,以頭文件的形式導入ccs編譯過程(在節(jié)中有詳細介紹)( 3)在CCS 編譯成功,生成.out文件后,導入MATLAB 中的產(chǎn)生的數(shù)據(jù)。6 仿真結果6.1 在 MATLAB中啟動FDATOO及設置LFDATOOL點擊桌面上的MATLA,在B MATLAB的左下角點擊“Start ”,選Toolsboxes F

20、ilter design FilterDesign &Analyis Tool (FDATOOL”)FDATOO,如圖 L5-2 所示。5-2 FDATOOL界面6.2 使用MATLAB生成輸入數(shù)據(jù)點擊桌面上的MATLA,生成輸入數(shù)據(jù)的方法有兩種。B(一)直接在MATLAB界面中直接輸入程序,在輸完程序后點擊回車,將會input 文件”。(二) 編譯M文件,在 M文件中直接運行和修改,按程序產(chǎn)生所需輸入文件,第一種方法簡單直觀,運行方便但修改麻煩,第二種方法容易修改,運行方M文件,M文件在附錄中。6.3 通過CCS查看濾波結果查看濾波結果步驟如下:步驟一:打開“ViewGraphTim

21、e/Frequency”,彈出圖形屬性對話框(GraphProperty Dialog) 。 其中包括Display Type(顯示類型)、 Graph Title(圖形名稱)、 StartAddress(開始地址)、 Page、 Acquisition Buffer Size(采樣緩沖器大小)、 Display DataSize(顯示數(shù)據(jù)多少)、 DSP Data Size( DSP數(shù)據(jù)類型)等。步驟二: 查看濾波前的輸入數(shù)據(jù)的時域波形。打開圖形對話框后,各屬性設置如圖所示,點擊“OK”后出現(xiàn)如圖所示的輸入數(shù)據(jù)的時域波形6-13 圖形屬性對話框6-14 時域波形圖步驟三: 查看輸入數(shù)據(jù)的頻域

22、波形圖,打開圖形對話框后,各屬性設置如圖6-15 所示;點擊“OK”后出現(xiàn)出現(xiàn)如圖 所示的輸入數(shù)據(jù)的頻域波形圖所示。6-15 圖形屬性對話框圖 6-16 頻域波形圖步驟四: 重復步驟一到步驟三,在步驟二和步驟三中把“ Start Address” 由 “ input”改為“output”,把“Graph Title”由“input”改為“output”,顯示的濾波后的時域和頻域波形如圖6-17 和圖 6-18 所示。 圖 6-17和 6-18及為經(jīng)過濾波后的波形。6-17 時域波形圖6-18 頻域波形圖7 結論本設計是基于DSP的 FIR 濾波器設計,當下濾波器設計技術已相當成熟,在前人的基礎上,本設計采用的分塊處理的方法。一共將設計的整天分為了三大部分部分:MATLAB產(chǎn)生輸入數(shù)據(jù)、由FDATOO產(chǎn)生濾波器系數(shù)、由LCCS進行仿真濾波?;?于 DSP的 FIR 濾波器的設計只是一個計算過程, 可靠性高,并且不存在阻抗匹配、特性波動、非一致性等問題。由 FDATOO產(chǎn)生濾波器系數(shù)且可修改,L所以 只要適當改變?yōu)V波器設計有關參數(shù),就能方便的改變?yōu)V波特性,因此數(shù)字濾波使用時方便靈活。DSP運算

溫馨提示

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

評論

0/150

提交評論