DSP課程設計報告FIR濾波器的設計

2021-03-04 02:46:50 字數 5212 閱讀 5107

本科課程設計報告

課程名稱: dsp原理及應用

設計專案: fir濾波器的設計

實驗地點多學科樓機房

專業班級學號

學生姓名

指導教師

2023年1月8日

一、設計目的:

1、掌握數字濾波器的設計過程;

2、了解fir的原理和特性;

3、熟悉設計fir數字濾波器的原理和方法;

4、學習fir濾波器的dsp的實現原理;

5、學習使用ccs的波形觀察視窗觀察輸入/輸出訊號波形和頻譜變化情況。

二、設計內容:

1、通過matlab來設計乙個低通濾波器,對它進行模擬**確定fir濾波器係數;

2、用dsp組合語言進行程式設計,實現fir運算,對產生的合成訊號,濾除訊號中高頻成分,觀察濾波前後波形的變化。

三、設計原理:

fir數字濾波器是一種非遞迴系統,其傳遞函式為:

h(z)=y(z)/x(z)=∑b(n)z-n

由此可得到系統的差分方程為:y(n)=∑h(i)x(n-i),其衝擊響應h(n)是有限長序列,它其實就是濾波器係數向量b(n),n為fir濾波器的階數。

為了使濾波器滿足線性相位條件,要求其單位脈衝響應h(n)為實序列,且滿足偶對稱或奇對稱條件,即h(n)=h(n-1-n)或h(n)=- h(n-1-n)

這樣,當n為偶數時,偶對稱線性相位fir濾波器的差分方程表示式為:y(n)=∑h(i)x(n-i)+x((n-1-n-i)

應用matlab設計fir濾波器的主要任務就是根據給定的效能指標設計乙個h(z),使其逼近這一指標,進而計算並確定濾波器的係數b(n),再將所設計濾波器的幅頻響應、相頻響應曲線作為輸出,與設計要求進行比較,對設計的濾波器進行優化,設計完成之後將得到fir濾波器的單位衝擊響應序列h(n)的各個引數值。

matlab用fir1函式設計fir濾波器:

fir1函式用來設計標準頻率響應的基於窗函式的fir濾波器,可實現加窗線性相位fir數字濾波器的設計。具體語法如下:

b=fir1(n,wn)

b=fir1(n,wn,『ftype』)

b=fir1(n,wn,window)

b=fir1(n,wn,『ftype』,window)

其中n為濾波器的階數;wn為濾波器的截止頻率; ftype為用來決定濾波器的型別,當ftype=high時,可設計高通濾波器;當ftype=stop時,可設計帶阻濾波器。window為用來指定濾波器採用的窗函式型別,window引數可採用的視窗函式有: boxcar,hanning,bartlett,blackman,kasier和chebwin等,其預設時為hamming窗,從而得到濾波器的係數。

matlab用fir2函式設計fir濾波器:

fir2函式用來設計有任意頻率響應的各種加窗fir濾波器。具體語法如下:

b=fir2(n,f,m)

b=fir2(n,f,m,window)

b=fir2(n,f,m,npt)

b=fir2(n,f,m,npt,window)

b=fir2(n,f,m,npt,lap)

b=fir2(n,f,m,nptt,lap,window)

其中n為濾波器的階數;f為頻率點向量;m為幅度點向量;window用來指定所使用的窗函式型別,預設值為漢明(hamming)窗;npt用來指定fir2函式對頻率響應進行內插的點數;lap用來指定fir2函式在重複頻率點附近插入的區域大小,從而得到濾波器的係數。

四、主要引數:

濾波器階數n為40,截止頻率為wp=0.35, ws=0.4。

五、總體方案設計:

1、由給定的設計引數確定濾波器的係數:

根據給定的設計引數,濾波器係數可由matlab中的fir2函式產生,函式呼叫格式為:

f =[0 0.35 0.4 1];

m =[1 1 0 0];

b =fir2(39, f, m)

求得的係數為:

b = columns 1 through 6

-0.0007 0.003 0.0014 0.0010 -0.0016 -0.0038

columns 7 through 12

-0.0008 0.0064 0.0081 -0.0030 -0.0169 -0.0118

columns 13 through 18

0.0162 0.0353 0.0083 -0.0515 -0.0689 0.0247

columns 19 through 24

0.2051 0.3523 0.3523 0.2051 0.0247 -0.0689

columns 25 through 30

-0.0515 0.0083 0.0353 0.0162 -0.0118 -0.0169

columns 31 through 36

-0.0030 0.0081 0.0064 -0.0008 -0.0038 -0.0016

columns 37 through 40

0.0010 0.0014 0.0003 -0.0007

2、用ccs進行彙編程式設計,實現fir濾波器濾波。

六、源程式:

title "fir.a**"

mmregs

bss y,1

k_fir_bffr .set 40

pa0set 0

pa1set 1

fir_coff .usect "fir_coff",40定義資料儲存空間

d_data_buffer .usect "fir_bfr",40定義資料儲存空間

data

coff_fir_start: .word -7*32768/10000,3*32768/10000 ;b0,b1

word 14*32768/10000,10*32768/10000 ;b2,b3

word -16*32768/10000,-38*32768/10000 ;b4,b5

word -8*32768/10000,64*32768/10000 ;b6,b7

word 81*32768/10000,-30*32768/10000 ;b8,b9

word -169*32768/10000,-118*32768/10000 ;b10,b11

word 162*32768/10000,353*32768/10000 ;b12,b13

word 83*32768/10000,-515*32768/10000 ;b14,b15

word -689*32768/10000,247*32768/10000 ;b16,b17

word 2051*32768/10000,3523*32768/10000 ;b18,b19

word 3523*32768/10000,2051*32768/10000 ;b20,b21

word 247*32768/10000,-689*32768/10000 ;b22,b23

word -515*32768/10000,83*32768/10000 ;b24,b25

word 353*32768/10000,162*32768/10000 ;b26,b27

word -118*32768/10000,-169*32768/10000 ;b28,b29

word -30*32768/10000,81*32768/10000 ;b30,b31

word 64*32768/10000,-8*32768/10000 ;b32,b33

word -38*32768/10000,-16*32768/10000 ;b34,b35

word 10*32768/10000,14*32768/10000 ;b36,b37

word 3*32768/10000,-7*32768/10000 ;b38,b39

text

def fir_init

def fir_task

fir_init: ssbx frct設定小數乘法

stmfir_coff,ar5ar1指向b0單元

rptk_fir_bffr-1設定傳輸次數

mvpd #coff_fir_start,*ar5係數bi傳輸至資料區

s***_data_buffer,ar4 ;d_data_buffer緩衝區清0

rptz a,#k_fir_bffr-1

stla,*ar4

s***_data_buffer+k_fir_bffr-1),ar4

stmfir_coff+k_fir_bffr-1),ar5

stm1,ar0設定雙運算元減量

ldd_data_buffer,dp設定頁指標

portr pa1,@d_data_buffer輸入x(n)

fir_task: stmk_fir_bffr,bk

rptz a,#k_fir_bffr-1重複操作

macar4+0%,*ar5+0%,a雙運算元乘法-累加

stha,@y暫存y(n)

portw @y,pa0輸出y(n)

bdfir_task迴圈

portr pa1,*ar4+0輸入最新樣本,並修正ar3

end(命令程式)

vectors.obj

fir.obj

-o fir.obj

-m fir.map

-e fir_init

memory

sections

{ .text> eprompage 0

.vectors : > vecspage 0

.data> eprampage 1

.bss> sprampage 1

FIR數字濾波器的設計

實驗報告 專業班級電科0803姓名班雙江 學號 200848360304 實驗名稱 fir數字濾波器的設計 一 實驗目的 設計fir數字濾波器 二 實驗內容 設計乙個帶通fir數字濾波器,設計指標 通帶衰減1db,阻帶衰減40db,通帶截止頻率 500hz,700hz 阻帶截止頻率 400hz,80...

實驗四用窗函式法設計FIR濾波器

h,w freqz h,1 1024 求濾波器h n 的頻率響應 對fir而言,h z 分子分母多項式的係數向量b 1 a h 返回向量h的點數n 1024 db 20 log10 abs h eps 得到幅值 pha angle h 得到相位 繪製單位脈衝響應h n 幅頻衰減特性20lg h ej...

基於DSP的低 高通濾波器的設計

摘要數字濾波技術是數字訊號處理 dsp 的乙個重要組成部分。數字濾波器的實現方法有兩種,即軟體實現和硬體實現。本文採用的是軟體實現法,即用電腦程式實現,根據數字濾波器的系統函式和差分方程可以推導出其實現結構。dsp晶元是具有特殊結構的微處理器,專門為快速實現各種數字訊號處理演算法而設計。本文設計的是...