国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

FIR 濾波器的DSP 實現(xiàn)*

2012-12-22 06:01:36謝海霞孫志雄
電子器件 2012年5期
關(guān)鍵詞:低通濾波器脈沖響應(yīng)信號處理

謝海霞,孫志雄

(瓊州學(xué)院電子信息工程學(xué)院,海南 三亞572022)

從20 世紀(jì)60 年代以來,隨著信息技術(shù)、計算機和半導(dǎo)體集成電路的飛速發(fā)展,數(shù)字信號處理DSP(Digital Signal Processing)技術(shù)應(yīng)運而生并得到迅速發(fā)展。在數(shù)字信號處理中,濾波占有極其重要的地位。數(shù)字濾波器可分為無限脈沖響應(yīng)(IIR)數(shù)字濾波器和有限脈沖響應(yīng)(FIR)數(shù)字濾波器。IIR 濾波器的最大缺點就是不容易實現(xiàn)線性相位,而在語音、圖像、數(shù)據(jù)通信等系統(tǒng)普遍都要求數(shù)字濾波器具有線性相位特性,F(xiàn)IR 濾波器正是因為具有線性相位特性而獲得了廣泛的應(yīng)用。用DSP 芯片實現(xiàn)數(shù)字濾波除了具有穩(wěn)定性好、精確度高、不受環(huán)境影響等優(yōu)點外,還具有靈活性好的特點。用可編程DSP 芯片實現(xiàn)數(shù)字濾波可通過修改濾波器的參數(shù)十分方便地改變?yōu)V波器的特性[1-4]。

1 FIR 數(shù)字濾波器的結(jié)構(gòu)

FIR 濾波器只存在N 個抽頭h(n),N 也稱為濾波器的階數(shù),單位脈沖響應(yīng)h(n)是有限長序列,則濾波器的輸出是每一分節(jié)的輸出加權(quán)累加,其數(shù)學(xué)表達(dá)式為:

很明顯,這就是線性時不變系統(tǒng)的卷積和公式,也就是輸入信號x(n)的延時級聯(lián)的橫向結(jié)構(gòu)。根據(jù)式(1)可得FIR 濾波器的橫向結(jié)構(gòu),如圖1 所示[5-6]。

圖1 FIR 濾波器的橫向結(jié)構(gòu)示意圖

因此,要設(shè)計一個FIR 濾波器關(guān)鍵是從所需的FIR 濾波器性能指標(biāo)來確定單位脈沖響應(yīng)h(n)。下面以設(shè)計一個FIR 低通濾波器為例,說明采用MALTAB 和DSP 相結(jié)合來設(shè)計FIR 濾波器的實現(xiàn)方法。其設(shè)計的流程如圖2 所示。

圖2 用MATLB 和CCS 實現(xiàn)FIR 濾波器的流程圖

2 FIR 濾波器的系數(shù)設(shè)計

2.1 設(shè)計指標(biāo)

本文設(shè)計的FIR 數(shù)字濾波器是低通濾波器,其設(shè)計指標(biāo)為:采樣頻率是100 kHz,通帶截止頻率5 kHz,阻帶截止頻率10 kHz,通帶最大衰減0.1 dB,阻帶最小衰減65 dB。

2.2 抽頭系數(shù)確定

FDATool 是MATLAB 信號處理工具箱里專用的濾波器設(shè)計分析工具。FDATool 中可以靈活地采用不同方法設(shè)計幾乎所有的經(jīng)典濾波器,查看濾波器的各種指標(biāo),并得到所設(shè)計濾波器的系數(shù)[7-9]。圖3是FDATool 操作界面,圖中下半部分是用來設(shè)置濾波器的設(shè)計參數(shù),根據(jù)設(shè)計指標(biāo),選擇Kaiser 窗設(shè)計方法,填寫數(shù)據(jù),F(xiàn)s=100 kHz,F(xiàn)pss=5 kHz,F(xiàn)stop=10 kHz,Ap=0.1 dB,Astop=65 dB,上半部分是顯示濾波器各種特性,其中包括設(shè)計濾波器所需最少的階數(shù)是80、直接型結(jié)構(gòu)及良好的幅頻響應(yīng)特性。

圖3 FIR 數(shù)字低通濾波器頻域特性圖

最后導(dǎo)出C header file 類型文件,得到設(shè)計的濾波器的參數(shù),其長度和抽頭系數(shù)如下:

const int BL=81;

const int16_T B[81]={0,-2,-6,-10,-13,-13,-7,5,21,39,53,57,44,14,-32,-86,-134,-161,-152,-97,0,127,256,355,387,325,161,-92,-394,-679,-871,-893,-683,-214,504,1411,2410,3380,4189,4727,4915,4727,4189,3380,2410,1411,504,-214,-683,-893,-871,-679,-394,-92,161,325,387,355,256,127,0,-97,-152,-161,-134,-86,-32,14,44,57,53,39,21,5,-7,-13,-13,-10,-6,-2,0};

3 MATLAB 產(chǎn)生輸入信號

用MALTAB 產(chǎn)生該濾波器的待測信號,該信號包含輸入信號頻率fa為3 kHz、fb為5 kHz 和fc為12 kHz 3 種合成信號,用于濾波器濾波效果測試,采樣頻率Fs為100 kHz,通過設(shè)計的低通濾波器將12 kHz 信號濾除。下面是MALTB 輸入信號程序,導(dǎo)出名為input.dat 文件,方便導(dǎo)入CCS 環(huán)境。

fa=3000; % /Hz

fb=5000;

fc=12000;

fs=100000; % /采樣頻率100 kHz

N=1200 %數(shù)據(jù)個數(shù)

T=1/fs; %采樣周期

n=0:N;

xa=cos(2* pi* fa* n* T);

xb=sin(2* pi* fb* n* T);

xc=0.5* cos(2* pi* fc* n* T);

x_lubo=(xa+xb+xc);

figure(1)

plot(x_lubo) %待濾波信號波形

figure(2)

yff=abs(fftshift(fft(x_lubo)));

df=n* (fs/N)-fs/2

plot(df,yff) %待濾波信號頻譜

xout=x_lubo/max(x_lubo); %歸一化

x_ccs=round(32768* xout); %采用定點Q15 表示,然后四舍五入取整

fid=fopen('input.dat','w'); %打開文件,將此文件定義為可寫,fid 是此文件的整數(shù)標(biāo)示

fprintf(fid,'1651 1 0 0 0 '); %輸出文件頭,只有此文件頭DSP 芯片才能識別

fprintf(fid,'%d ',x_ccs); %輸出x_ccs,并寫到input.

dat 文件里

fclose(fid);

運行以上的程序,可得到三種合成信號如圖4所示,利用MATLAB 中的fftshift(x)函數(shù)該信號的頻譜重排,其頻譜圖如圖5 所示,在3 kHz、5 kHz 和12 kHz 處有譜線。

圖4 待濾波信號波形

圖5 待濾波信號頻譜

4 FIR 濾波器的DSP 實現(xiàn)

TI 公司推出可視化的CCS 集成開發(fā)工具,它集代碼生成軟件和代碼調(diào)試工具于一體,具有強大的應(yīng)用開發(fā)功能,為DSP 用戶提供了十分便利的開發(fā)環(huán)境[10-12]。

在CCS 上建立FIRfilter 工程,編寫實現(xiàn)FIR 低通濾波器的FIRfilter.c 程序:

#include "stdio.h"

#include "coef.h"

//coef.h 為Matlab 生成的系數(shù)表頭文件

#define N 81 //FIR 濾波器的級數(shù)+1,本例中濾波器級數(shù)為80

#define LEN 200 //待濾波的數(shù)據(jù)長度

long yn;

int input[LEN]; //輸入緩沖,在仿真時將從內(nèi)存載入

int output[LEN]; //輸出緩沖,直接存放在內(nèi)存中

void main()

{

int i,j;

int * x;

for(j=0;j<LEN-1;j++)

{

x=&input[j];

yn=0;

for(i=0;i<N-1;i++)

yn+=B[i]* (* x++);

output[j]=yn?15;

}

while(1);

}

最后將MATLAB 導(dǎo)出的頭文件coef. h 和鏈接文件FIRfilter.cmd 添加到工程中,對程序進(jìn)行調(diào)試、鏈接;調(diào)試無誤后生成FIRfilter. out 程序,將該文件裝載入內(nèi)存,然后進(jìn)行仿真。仿真時用MATLAB 生成的input.dat 作為仿真測試文件。

采用CCS 圖形顯示功能,圖6 和圖7 左邊是觀察到的輸入信號時域波形,而右邊對應(yīng)的是頻域波形。和圖6 的仿真波形相比較可知,圖7 中12 kHz信號被濾掉,仿真結(jié)果與輸出信號理論吻合,仿真結(jié)果正確。

圖6 輸入信號時域和頻域波形圖

圖7 輸出信號時域和頻域波形圖

5 結(jié)束語

采用MATLAB 軟件來輔助DSP 平臺實現(xiàn)FIR低通濾波器,大大簡化了數(shù)字濾波器的設(shè)計,并且通過CCS 仿真圖形說明了該設(shè)計、驗證的方法都是可行的,而且根據(jù)不同實際應(yīng)用來改變?yōu)V波器參數(shù)即可實現(xiàn)各種類型的濾波器,靈活性好,具有很高的實用性。

[1] 張雄偉,曹鐵勇,陳亮,等. DSP 芯片的原理與開發(fā)應(yīng)用[M].北京:電子工業(yè)出版社,2008.

[2] 劉悅.FIR 數(shù)字濾波器的設(shè)計與實現(xiàn)[J]. 信息技術(shù),2009(2):8-9.

[3] 史明泉.基于DSP 的FIR 濾波器的C 語言算法實現(xiàn)[J]. 無線電工程,2011,41(1):13-14.

[4] 趙順珍,馬英.基于DSP 的FIR 數(shù)字濾波器設(shè)計與實現(xiàn)[J].微計算機信息,2009,25(2):162-163.

[5] 謝海霞,孫志雄.可編程FIR 濾波器的FPGA 實現(xiàn)[J]. 電子器件,2012,35(2):232-235.

[6] 陳后金,薛健,胡健.數(shù)字信號處理[M].2 版. 北京:高等教育出版社,2008.

[7] 鄭爭兵.基于MATLAB 和DSP 的數(shù)字濾波器設(shè)計[J]. 電子質(zhì)量,2011(10):30-31.

[8] 李娟. MATLAB 平臺下的FIR 數(shù)字濾波器設(shè)計與分析[J].Journal of Science of Teachers’College and University,2010,30(3):64-67.

[9] 彭啟琮.DSP 集成開發(fā)環(huán)境:CCS 及DSP/BIOS 的原理與應(yīng)用[M].北京:電子工業(yè)出版社,2004.

[10] 萬永革.數(shù)字信號處理的MATLAB 實現(xiàn)[M]. 北京:科學(xué)出版社,2007.

[11] 趙紅怡. DSP 技術(shù)與應(yīng)用實例[M]. 北京:電子工業(yè)出版社,2003.

[12] 戴明楨,周建江. TMS320C54xDSP 結(jié)構(gòu)、原理及應(yīng)用[M]. 4版.北京:北京航空航天大學(xué)出版社,2008.

猜你喜歡
低通濾波器脈沖響應(yīng)信號處理
基于重復(fù)脈沖響應(yīng)的發(fā)電機轉(zhuǎn)子繞組匝間短路檢測技術(shù)的研究與應(yīng)用
IIR數(shù)字濾波器設(shè)計中頻率轉(zhuǎn)換探究
《信號處理》征稿簡則
信號處理(2018年5期)2018-08-20 06:16:02
《信號處理》第九屆編委會
信號處理(2018年5期)2018-08-20 06:16:00
《信號處理》征稿簡則
信號處理(2018年8期)2018-07-25 12:25:42
《信號處理》第九屆編委會
信號處理(2018年8期)2018-07-25 12:24:56
基于瞬時無功理論的諧波檢測中低通濾波器的改進(jìn)
機電信息(2018年6期)2018-03-05 03:44:16
脈沖響應(yīng)函數(shù)下的我國貨幣需求變動與決定
基于有限元素法的室內(nèi)脈沖響應(yīng)的仿真
電大理工(2015年3期)2015-12-03 11:34:12
后置低通濾波器對沖擊負(fù)荷電能計量的影響
電測與儀表(2015年8期)2015-04-09 11:49:50
交城县| 深水埗区| 布尔津县| 顺昌县| 且末县| 东城区| 陇川县| 云和县| 湄潭县| 肥西县| 东安县| 彭阳县| 繁峙县| 大安市| 枣庄市| 蓬莱市| 金溪县| 濮阳县| 松滋市| 华容县| 都安| 克山县| 鄂托克前旗| 青浦区| 栾城县| 饶平县| 霍山县| 临夏市| 张家界市| 宁河县| 镇平县| 广河县| 京山县| 嵩明县| 迭部县| 时尚| 电白县| 陇西县| 永顺县| 泰和县| 梁山县|