有限沖擊響應(yīng)FIR 濾波器的設(shè)計(jì)_第1頁
有限沖擊響應(yīng)FIR 濾波器的設(shè)計(jì)_第2頁
有限沖擊響應(yīng)FIR 濾波器的設(shè)計(jì)_第3頁
有限沖擊響應(yīng)FIR 濾波器的設(shè)計(jì)_第4頁
有限沖擊響應(yīng)FIR 濾波器的設(shè)計(jì)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、一 設(shè)計(jì)題目 有限沖擊響應(yīng)FIR 濾波器的設(shè)計(jì)二 設(shè)計(jì)目的1掌握數(shù)字濾波器的設(shè)計(jì)過程;2了解FIR 的原理和特性;3熟悉設(shè)計(jì)FIR 數(shù)字濾波器的原理和方法;4 學(xué)習(xí)FIR 濾波器的DSP 實(shí)現(xiàn)原理;5 學(xué)習(xí)使用ccs 的波形觀察窗口觀察輸入、輸出信號波形和頻譜變化情況。三 設(shè)計(jì)內(nèi)容 1 通過MATLAB 來設(shè)計(jì)一個(gè)低通濾波器,對它進(jìn)行模擬仿真確定FIR 濾波器系數(shù);2 用DSP 匯編語言及C 語言進(jìn)行編程,實(shí)現(xiàn)FIR 運(yùn)算,對產(chǎn)生的合成信號,濾除信號中高頻成分,觀察濾波前后的波型變化四 設(shè)計(jì)原理 濾波器就是在時(shí)間域或頻域內(nèi),對已知激勵產(chǎn)生規(guī)定響應(yīng)的網(wǎng)絡(luò)使其能夠從信號中提取有用的信號,抑制并衰減

2、不需要的信號,濾波器的設(shè)計(jì)實(shí)質(zhì)上就是對提出的要求給出相應(yīng)的性能指標(biāo)再通過計(jì)算,使物理可實(shí)現(xiàn)的實(shí)際濾波器響應(yīng)特性逼近給出的頻率響應(yīng)特性。 FIR 數(shù)字濾波器是一種非遞歸系統(tǒng),其傳遞函數(shù)為:H (z) =Y(Z)/X(Z)=b(n)z-n由此可得到系統(tǒng)的差分方程為:y(n ) = h ( i ) x ( n -i) 其激響應(yīng)h(n)是有限長序列,它其實(shí)就是濾波器系數(shù)向量b ( n ) , N 為FIR 濾波器的階數(shù)在數(shù)字信號處理應(yīng)用中往往需要設(shè)計(jì)線性相位的濾波器,F(xiàn)IR 濾波器在保證幅度特性滿足技術(shù)要求的同時(shí),易做到嚴(yán)格的線性相位特性。為了使濾波器滿足線性相位條件,要求其單位脈沖響應(yīng)h(n)為實(shí)序

3、列,且滿足偶對稱或奇對稱條件,即h ( n )=h(N-1-n)或h(n)=h(N-1-n)。這樣,當(dāng)N 為偶數(shù)時(shí),偶對稱線性相位F 訊濾波器的差分方程表達(dá)式為Y(n)= h ( i ) (x ( n -i)+x(N-1-n-i)由上可見,F(xiàn)IR 濾波器不斷地對輸入樣本x(n)延時(shí)后,再做乘法累加算法,將濾波器結(jié)果y(n)輸出。因此,F(xiàn)IR 實(shí)際上是一種乘法累加運(yùn)算。而對于線性相位FIR 而言,利用線性相位FIR 濾波器系數(shù)的對稱特性,可以采用結(jié)構(gòu)精簡的FIR 結(jié)構(gòu)將乘法器數(shù)目減少一半。 應(yīng)用MATLAB 設(shè)計(jì)FIR 濾波器的主要任務(wù)就是根據(jù)給定的性能指標(biāo)設(shè)計(jì)一個(gè)H(z) ,使其逼近這一指標(biāo),

4、進(jìn)而計(jì)算并確定濾波器的系數(shù)b ( n ) ,再將所設(shè)計(jì)濾波器的幅頻響應(yīng)、相頻響應(yīng)曲線作為輸出,與設(shè)計(jì)要求進(jìn)行比較,對設(shè)計(jì)的濾波器進(jìn)行優(yōu)化,設(shè)計(jì)完成之后將得到FIR 濾波器的單位沖激響應(yīng)序列h ( n )的各個(gè)參數(shù)值。五 MATLAB 設(shè)計(jì)FIR 濾波器的方法 FIR 濾波器最大的優(yōu)點(diǎn)就是在滿足幅頻特性的同時(shí),還可以獲得嚴(yán)格的線性相位特性,這使得它在語音處理、圖像處理等要求高保真的數(shù)字信號處理中顯得十分重要。設(shè)計(jì)FIR 濾波器主要有窗函數(shù)法、最優(yōu)化設(shè)計(jì)法及約束最小二乘法等設(shè)計(jì)方法。用MATLAB 設(shè)計(jì)FIR 數(shù)字濾波器方法有很多種,最常用的有窗函數(shù)設(shè)計(jì)方法、最優(yōu)化設(shè)計(jì)方法等。1 窗函數(shù)設(shè)計(jì)方法

5、窗函數(shù)法一般是基于直接程序設(shè)計(jì)法來設(shè)計(jì)標(biāo)準(zhǔn)頻率響應(yīng)的,可實(shí)現(xiàn)加窗線性相位FIR 數(shù)字濾波器設(shè)計(jì)。Fir1是用來設(shè)計(jì)標(biāo)準(zhǔn)頻率響應(yīng)的基于窗函數(shù)的FIR 濾波器函數(shù),可實(shí)現(xiàn)加窗線性相位FIR 數(shù)字濾波器的設(shè)計(jì),使用firl 函數(shù)可設(shè)計(jì)標(biāo)準(zhǔn)的低通、高通、帶通和帶阻四種濾波器;fir2是用來設(shè)計(jì)有任意頻率響應(yīng)的各種加窗FIR 濾波器函數(shù)。 利用firl 和fir2 兩種函數(shù)可以設(shè)計(jì)有任意頻率響應(yīng)的各種加窗FIR 濾波器濾波器系數(shù)包含在返回值b 中,可表示為 b(z)=b(1)+b(2)z-n+b(n+1)z-n fir1 函數(shù)的使用格式有以下幾種:b=fir(n,Wn),可得到低通濾波器;參數(shù)n 為濾波

6、器的階數(shù);Wn 為濾波器的截止頻率:其中,0Wn 1 , Wn=1 相當(dāng)于0.5fs 當(dāng)Wn=W1 W2時(shí),為帶通濾波器,其通帶為wl Ww2,w1.w2分別為通帶的下限頻率和上限頻率b=fir1(n,Wn,ftype),當(dāng)ftype=high 時(shí),可設(shè)計(jì)高通濾波器;當(dāng)ftype=stop時(shí),可設(shè)計(jì)帶阻濾波器b = firl (n,Wn window ) ,參數(shù)window 用來指定的窗函數(shù)類型,默認(rèn)值為hamming 窗,參數(shù)可以使用的窗口函數(shù)有boxcar、hamming 、blackman 、kasier 和chebwin.b=firl ( n , wn, ftype, window )

7、 ,ftype參數(shù)用來決定濾波器的類型:參數(shù)window用來指定所使用的窗函數(shù)類型 這里需要注意的是,用firl 函數(shù)設(shè)計(jì)高通和低通池波器時(shí),所使用的階數(shù)n 為偶數(shù),當(dāng)輸入的階數(shù)n 為奇數(shù)時(shí)firl 函數(shù)會自動將階數(shù)增加1 形成偶數(shù)。 fir2 函數(shù)的使用格式有以下幾種:b = fir2 ( n ,f,m ,參數(shù)n 為濾波器的階數(shù)b = fir2 ( n ,f,m ,window) ,參數(shù)f 為頻率點(diǎn)矢量,f 屬于0,l ,對應(yīng)于0.5 fs.矢量f 按升序排列,且第一個(gè)元素必須為0 ,最后一個(gè)必須為l ,并可以包含重復(fù)的頻率點(diǎn)b = fir2 ( n ,f,m ,npt ) ,參數(shù)m 為幅度

8、點(diǎn)矢量,在矢量m 中包含了與f 相對應(yīng)的期望得到的濾波器幅度b = fir2 (n ,f,m ,npt,window ) ,參數(shù)window用來指定所使用的窗函數(shù)類型,其默認(rèn)為漢明( hamming )窗b = fir2 (n ,f,m ,npt,lap),參數(shù)npt 用來指定fir2函數(shù)對頻率響應(yīng)進(jìn)行內(nèi)插的點(diǎn)數(shù)b = fir2 (n ,f,m ,npt,lap, window ) ,參數(shù)laP 用來指定fir2 函數(shù)在重復(fù)頻率點(diǎn)附近插入的區(qū)域大小2 最優(yōu)化設(shè)計(jì)法Remez 函數(shù)可采用Parks 一Mcclellan 算法設(shè)計(jì)線性相位FIR 濾波器,Parks 一Mcclellan 算法使用R

9、emez 交換算法和chebyshev 逼近理論來設(shè)計(jì)最優(yōu)擬合濾波器,這種濾波器使期望頻率響應(yīng)與實(shí)際頻率響應(yīng)之間的最大誤差最小,使其頻率響應(yīng)呈現(xiàn)出等波形特性,因此有時(shí)也稱為等波紋濾波器。由于這種濾波器具有等波紋特性,因此在其沖激響應(yīng)的頭部和尾部會表現(xiàn)出不連續(xù)性。remez 函數(shù)的使用格式有以下幾種:b=remez(n,f,a),可得到一個(gè)n 階FIR 訊數(shù)字濾波器,其幅頻特勝由f 和a 指定f 是頻帶邊緣頻率矢量,且f 屬于0 , 1 ,當(dāng)f=1 時(shí)相當(dāng)于n(Nyquist 頻率)。矢量f 按升序排列,且第一個(gè)元素必須為0。最后一個(gè)必須為1 。a 是頻率矢量f 處的期望幅值響應(yīng)。f 和a 的長

10、度必須相等,而且為偶數(shù)。b=remez(n,f,a,w),可利用加權(quán)矢量w 對各頻率段的誤差進(jìn)行加權(quán)處理,w 的長度是f 和a 長度的一半,用以指定各頻率段的權(quán)值。b=remez(n,f,a,ftype )和b=remez(n,f,a,w, ftype) ,可指定濾波器的類型,當(dāng)ftype=hilbert時(shí),設(shè)計(jì)的濾波器為奇對稱的線性相位濾波器(型和型).當(dāng)ftype=differentiator 時(shí),采用了特殊的加權(quán)技術(shù)設(shè)計(jì)型和型濾波器。n,f0,a0,w = remezord (f,a,dev ) ,可找到近似的階n ,歸一化頻帶邊緣矢量f0 、頻帶內(nèi)輻值響應(yīng)矢量勻及加權(quán)矢量w ,使由re

11、mez 函數(shù)構(gòu)成的濾波器滿足f,a 及dev 指定的性能要求。其中f 和a 分別指定頻段的邊緣矢量與相應(yīng)的幅值響應(yīng),dev 用于指定各頻帶允許的偏差 n , f0 ,a0,w=remezord ( f , a , dev,fs ) ,可指定取樣頻率fs , fs 的缺省值為2Hz .六 設(shè)計(jì)步驟1 利用MATLAB 來確定FIR 濾波器的參數(shù)2 啟動CCS ,在CCS 中建立一個(gè)匯編源文件、建立一個(gè)C 源文件和一個(gè)命令文件,并將這三個(gè)文件添加到工程,再編譯并裝載程序3 設(shè)置波形時(shí)域觀察窗口,得到其濾波前后波形變化圖;4 設(shè)置頻域觀察窗口,得到其濾波前后頻譜變化圖。七 利用MATLAB 來確定F

12、IR 濾波器的參數(shù)用雙線性法設(shè)計(jì)低通濾波器,并確定FIR 濾波器的參數(shù):fp=1000;fc=1200;as=100;ap=1;fs=22000;wp=2*fp/fs;wc=2*fc/fs; n,wn=ellipord(wp,wc,ap,as); b,a=ellip(n,ap,as,wn); freqz(b,a,512,fs); 八 源程序1、匯編源文件.global _fir,_init,_B,_outdata_fir bset frct amov #_B,xdp mov #_B,cdp mov t0,ac0 sub #1,ac0 mov ac0,mmap(csr) add ac0,ar0

13、mov #0,ac0 rpt csr macmz *ar0-,*cdp+,ac0 mov hi(ac0),t0 ret_init mov mmap(t0),ac0 sub #1,ac0 mov ac0,ar7 rptz ac0,ar7 mov ac0,*ar0+ ret_outdata mov t1,ac0 sub #2,ac0 mov ac0,mmap(csr) add ac0,ar0 rpt csr delay *ar0- mar *ar0+ mov t0,*ar0 ret2、C 源文件extern int fir(int *,int);extern int init(int *,int#

14、include "s.h"#include "math.h"#define signal_1_f 200#define signal_2_f 620#define signal_sample_f 2000#define pi 3.1415926#define coff_L 23#define bufer_L 256int data_inbufer_L;int outbufer_L ;int firout;int xcoff_L+1;int k=0;int bufer=bufer_L;);extern int outdata(int *,int,int);

15、void inputwave();void main()inputwave();init(x,BL);while(1)x0=data_ink;firout=fir(x,BL);outdata(out,firout,bufer);k+;if(k>=bufer_L)k=0;void inputwave()float wt1;float wt2;int i;for(i=0;i<=bufer_L;i+)wt1=2*pi*i*signal_1_f;wt1=wt1/signal_sample_f;wt2=2*pi*i*signal_2_f;wt2=wt2/signal_sample_f;dat

16、a_ini=(cos(wt1)+cos(wt2)/2*32768;3、命令文件-stack 0x500-sysstack 0x500-heap 0x1000-c-u _Reset-l rts55.libMEMORY PAGE 0: RAM(RWIX): origin=0x000100, length=0x01ff00 ROM(RIX): origin=0x020100, length=0x01ff00 VECS(RIX): origin=0xffff00, length=0x000200PAGE 2: IOPORT(RWI):origin=0x000000, length=0x020000 S

17、ECTIONS .text >ROM PAGE 0 .data >ROM PAGE 0 .bss >RAM PAGE 0 .const >RAM PAGE 0 .sysmem >RAM PAGE 0 .stack >RAM PAGE 0 .sysstack >RAM PAGE 0 .switch >RAM PAGE 0 .cinit >RAM PAGE 0 .pinit >RAM PAGE 0 .vectors >VECS PAGE 0 .ioport >IOPORT PAGE 2 九 實(shí)驗(yàn)結(jié)果及分析1、設(shè)置波形時(shí)域觀察窗口,得到其濾波前后波形變化圖濾波前的波形輸入濾波前的波形輸出2、設(shè)置頻域觀察窗口,得到其濾波前后頻譜變化圖濾波前頻譜圖濾波后頻譜圖十 設(shè)計(jì)總結(jié)通過這次DSP課程設(shè)計(jì),我初步掌握和熟悉了數(shù)字濾波器的設(shè)計(jì)過程、其DSP實(shí)現(xiàn)原理與CCS的使用方法。數(shù)字濾波是語音處理、圖像處理、模式識別、頻譜分析等應(yīng)用的基本處理算法。用DSP 實(shí)現(xiàn)FIR數(shù)字濾波,具有穩(wěn)定性好、準(zhǔn)確度高、靈活性好、不受環(huán)境影響等優(yōu)點(diǎn)。這

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論