吉首大學(xué)物理與機(jī)電工程學(xué)院 宋治國 譚明濤 張銀行
在信號的產(chǎn)生和傳輸過程中,難免會混雜噪聲,因此在信號的接收端必須消除或減弱噪聲干擾。根據(jù)噪聲與信號的不同特性,濾除或消弱信號中的噪聲成分就稱為濾波。數(shù)字濾波器由于其精度高,穩(wěn)定性好,使用靈活等特點(diǎn),廣泛應(yīng)用在數(shù)據(jù)通信、語音信號處理及圖像處理等眾多領(lǐng)域[1]。帶通濾波器濾波器作為濾波器中重要的一種,它主要功能是使某一頻率范圍內(nèi)的信號通過,而其它頻率范圍的信號被衰減或濾除。DSP作為通用的數(shù)字信號處理芯片,內(nèi)部具有專門針對信號處理的硬件單元,使其在數(shù)字信號處理領(lǐng)域具體獨(dú)特的優(yōu)勢。
IIR濾波器可以用較少的階數(shù)獲得很高的傳輸特性,所用的存儲單元少,運(yùn)算次數(shù)少,具有經(jīng)濟(jì)高效的特點(diǎn)。N階無限沖擊響應(yīng)濾波器的脈沖傳遞函數(shù)可以表達(dá)為:
它的差分方程表達(dá)式為:
IIR濾波器的一般結(jié)構(gòu)[3]如圖1所示:
Matlab信號處理工具箱中包含了許多執(zhí)行信號處理算法的函數(shù),方便了濾波器的設(shè)計[4]。利用matlab的信號處理函數(shù)設(shè)計了一個切比雪夫帶通濾波器,濾波器參數(shù)為:采樣頻率Fs為16kHz,通頻帶在3.2kHz和4.8kHz之間,內(nèi)損耗不大于1dB;頻率小于2.4kHz和大于5.6kHz為阻帶,阻帶衰減大于20dB。
核心程序為:
wp=[3.2,4.8];ws=[2.4,5.6];rp=1;rs=20;
[n,wn]=cheb1ord(wp/8,ws/8,rp,rs);
[b,a]=cheby1(n,rp,wn);
由以上程序計算出濾波器的系數(shù)如表1所示:
表1 濾波器系數(shù)
仿真所得帶通濾波器的幅頻特性如圖2所示。
采用TMS320C5402為目標(biāo)芯片,它是是16位定點(diǎn)DSP,具有改進(jìn)的哈佛結(jié)構(gòu)、一組程序總線和三組數(shù)據(jù)總線,高度并行性的算術(shù)邏輯單元ALU,專用硬件邏輯,片內(nèi)存儲器,片內(nèi)外設(shè)和專業(yè)的指令集,使該芯片在信號處理領(lǐng)域得到了廣泛應(yīng)用[5]。
在用DSP匯編編程時,將濾波器的系數(shù)定標(biāo)為Q15,將變量和系數(shù)都存放在DARAM中,并采用循環(huán)緩沖區(qū)方式尋址,共開辟4個循環(huán)緩沖區(qū),用來存放變量和系數(shù)。這4個循環(huán)緩沖區(qū)的定義如下:
BN .usect "BN",7; 存放系數(shù)bi
AN .usect "AN",7; 存放系數(shù)ai
IN .usect “IN”,256;輸入緩沖區(qū)
OUT .usect “OUT”,256;輸出緩沖區(qū)
實現(xiàn)IIR帶通濾波器的核心程序為:
IIR: SUB A, A
STM #BN,BCOFF_P
STM #AN,ACOFF_P
RPT #5; 計算前向通道
MAC *XN_P+,*BCOFF_P+,A
MAC *XN_P,*BCOFF_P,A
MAR *XN_P-0; 將AR2指向x(n-N) RPT #5; 計算反饋通道
MAC *YN_P+,*ACOFF_P+,A
STH A,*YN_P-0; 保存y(n)
EEND B EEND;
.end
圖1 IIR濾波器結(jié)構(gòu)
利用c語言編程產(chǎn)生一個含有4kHz和6.5kHz混合的正弦信號作為測試輸入信號,經(jīng)過帶通濾波器濾波后輸出。利用DSP集成開發(fā)環(huán)境CCS的圖形顯示功能,分別對輸入信號x(n)、輸出信號y(n)的時域和頻域波形進(jìn)行了觀察分析,波形如圖3-4所示:
圖2 帶通濾波器幅頻特性
圖3 輸入信號波形和頻譜
圖4 輸出信號波形和頻譜
從圖3和圖4的輸入信號頻譜和輸出信號的頻譜比較可以看出,經(jīng)過濾波器濾波處理后,原輸入信號中頻率為6.5kHz的信號也衰減的很小,只剩下頻率為4kHz的信號。
IIR濾波器在信號處理領(lǐng)域有著廣泛的應(yīng)用,而DSP作為通用數(shù)字信號處理器,在信號處理方面具體其它硬件無法比擬的優(yōu)勢。本文首先根據(jù)數(shù)字濾波器的性能指標(biāo),用matlab編程計算出了濾波器的系數(shù),然后以TMS320C5402為目標(biāo)芯片,在ccs集成開發(fā)環(huán)境下,用匯編編程實現(xiàn)了該濾波器,并對濾波器的濾波效果進(jìn)行了測試分析,結(jié)果表明:該濾波器能有效實現(xiàn)對信號的帶通濾波。
[1]王亞軍,李艷芳.基于GA-BP網(wǎng)絡(luò)的FIR數(shù)字濾波器優(yōu)化設(shè)計[J].電測與儀表,2010,47(7):13-15.
[2]戴明楨,周建江.TMS320C54x DSP結(jié)構(gòu)原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2001.
[3]程佩青.數(shù)字信號處理教程(第三版)[M].北京:清華大學(xué)出版社,2010.
[4]朱習(xí)軍,隋思漣 等. Matlab在信號與圖像處理中的應(yīng)用[M].北京:電子工業(yè)出版社,2009.
[5]鄒翼.基于DSP的G.729語音編碼的研究與實現(xiàn)[D].長沙:湖南大學(xué),2009.