【摘 要】DSP技術(shù)一般指將DSP 處理器用于完成數(shù)字信號處理的方法與技術(shù)。目前的DSP芯片以其強大的數(shù)據(jù)處理功能在通信和其他信號處理領(lǐng)域得到廣泛注意并已成為開發(fā)應用的熱點技術(shù)。本文深入研究基于美國德州儀器公司(TI)TMS320C5410 DSP芯片的濾波器系統(tǒng)軟件實現(xiàn)方法,用Blackman窗口設(shè)計法實現(xiàn)FIR濾波器,給出了MATLAB仿真結(jié)果,實驗結(jié)果表明濾波結(jié)果效果良好。利用MATLAB軟件開發(fā)產(chǎn)品加速了開發(fā)周期,比直接在CCS中編程方便快捷了很多,對于任何復雜功能的DSP系統(tǒng),只需要進行少量的添加和修改就能完成功能正確的C語言程序設(shè)計。
【關(guān)鍵詞】FIR濾波 DSP CCS 自適應濾波器 Blackman窗函數(shù)法 MATLAB
一、概述
1.1設(shè)計背景
在信號處理中,濾波占有十分重要的地位。數(shù)字濾波與模擬濾波相比有很多優(yōu)點,它除了可避免模擬濾波器固有的電壓漂移、溫度漂移和噪聲等問題外,還能滿足濾波器對幅度和相位的嚴格要求。
數(shù)字信號處理就是用數(shù)字信號處理器(DSP)來實現(xiàn)各種算法,由于具有精度高、靈活性強等優(yōu)點,已廣泛應用在數(shù)字圖像處理、數(shù)字通信、數(shù)字音響、聲納、雷達等領(lǐng)域。文選用TMS320C54X作為DSP處理芯片,通過對其編程來實現(xiàn)FIR濾波器。
1.2設(shè)計要求
利用C語言在CCS環(huán)境中編寫一個FIR濾波器程序,并能利用已設(shè)計好的濾波器對常用信號進行濾波處理。
1.3設(shè)計思路簡介
在TMS320C54x系統(tǒng)開發(fā)環(huán)境CCS(Code Composer Studio)下對FIR濾波器的DSP實現(xiàn)原理進行討論。利用C語言設(shè)計相應的濾波器,通過實驗仿真,從輸入信號和輸出信號的時域和頻域曲線可看出在DSP上實現(xiàn)的FIR濾波器能完成預定的濾波任務。
二、系統(tǒng)設(shè)計與原理
2.1 FIR濾波器的基本理論
2.1.1 FIR濾波器的特點
本來在計算量相等的情況下,IIR數(shù)字濾波器比FIR濾波器的幅頻特性優(yōu)越,頻率選擇性也好,但是,它有著致命的缺點,相位特性不好控制。它的相位特性f(w)=argH( )是使頻率產(chǎn)生嚴重的非線性的原因,這種‘與’的非線性關(guān)系,使數(shù)字濾波器與模擬濾波器在響應與頻率的對應關(guān)系上發(fā)生了畸變。如果需要線性相位,就必須用全通網(wǎng)絡進行復雜的相位校正,但是,在對程序運行周期數(shù)要求十分嚴格的DSP處理中加上一個全通均衡器是十分浪費資源的。另外,即使加上全通均衡器,對于因果的IIR濾波器,仍將得不到線性的相位。
在現(xiàn)代電子系統(tǒng)中,如圖像處理、數(shù)據(jù)傳輸?shù)炔ㄐ蝹鬟f系統(tǒng)中都越來越多的要求信道具有線性的相位特性。在這方面 FIR濾波器具有獨到的優(yōu)點,它可以在幅度特性隨意設(shè)計的同時,保證精確、嚴格的線性相位,因此這類濾波器應用很廣泛。
2.1 FIR濾波器設(shè)計總框圖
2.1.2 FIR濾波器的基本結(jié)構(gòu)
2.2.2 頻率抽樣法
窗函數(shù)法是從時域出發(fā),用窗函數(shù)截取理想的 得到h(n),以此有限長的h(n)近似 ,這樣得到的頻率響應 逼近于理想的頻響 。頻率抽樣法是從頻率出發(fā),將給定的理想頻響 加以等間隔抽樣。
然后以此 作為FIR濾波器的頻率響應抽樣值H(k),再根據(jù)DFT(離散付氏變換)定義由頻域這N個抽樣值來唯一確定一個有限長序列h(n),同樣也可以算出FIR濾波器的系統(tǒng)函數(shù)H(z)及頻率響應 ,可以推出頻率響應 是頻率抽樣值H(k)與線性相位因子 及如下內(nèi)插函數(shù)S(ω,k)的線性組合。
所以,在各頻率取樣點上,實際濾波器的頻響是嚴格地和所要求的濾波器的頻響一致的,逼近誤差為零,但在抽樣點之間的頻響是各取樣點的內(nèi)插函數(shù)的延伸疊加而成,有一定的逼近誤差,誤差大小取決于頻率響應曲線的圓滑程度和抽樣點的密度,為了減少誤差,就要增加抽樣點數(shù)目即增大采樣頻率,抽樣點之間的理想頻率特性變化越陡。頻率抽樣法的優(yōu)點是可以直接在頻域設(shè)計,適于利用最優(yōu)化方法,而且這種方法特別適用于窄帶選頻濾波器,但頻率抽樣法的抽樣頻率只能是2π/ N 的整數(shù)倍或2π/ N 的整數(shù)倍加上π/ N不能保證截止頻率ωc的準確取值,要實現(xiàn)精確的ωc就必須取N大,相應的計算量也大。此外,它的阻帶最大衰減一般,也只有30-50dB左右,很難滿足頻域特性要求較高的場合。
2.2.3 Chebyshev逼近法
切比雪夫最佳一致逼近的基本思想是,對于給定區(qū)間[a,b]上的連續(xù)函數(shù) ,在所有n次多項式的集合 中,尋找一個多項式 p(x),使它在[a,b]上對 的偏差和其它一切屬于 的多項式 p(x)對f(x)的偏差相比是最小的.
切比雪夫逼近理論,這樣的多項式是存在的,且是唯一的,并指出了構(gòu)造這種最佳一致逼近多項式的方法,就是有名的“交錯點組定理”。
切比雪夫逼近理論解決了p(x)的存在性、唯一性和如何構(gòu)造等問題。但它的效率依賴于初始極值頻率點的估計,且通帶和阻帶內(nèi)波紋數(shù)較多,這是Chebyshev方法的兩個主要缺點。本文選擇使用布萊克曼窗函數(shù)法進行FIR濾波器的設(shè)計
三、FIR濾波器的MATLAB實現(xiàn)
3.1 MATLAB中的濾波器設(shè)計工具
MATLAB共有五種設(shè)計FIR數(shù)字濾波器的方法。第一種是窗函數(shù)法,對應的MATLAB函數(shù)有fir l,fir2,Kaiserord;第二種方法是含過渡帶的設(shè)計方法,它利用等紋波或者最小均方取逼近理想濾波器的頻域響應,對應的MATLAB函數(shù)有firls,remenz,remezord;第三種方法是最小二乘約束設(shè)計法,它是使設(shè)計的濾波器和理想濾波器的誤差在整個頻段上積分,使得積分值最小,對應的MATLAB函數(shù)有fircls,firclsl;第四種設(shè)計方法是非線性相位濾波器設(shè)計方法,它設(shè)計出FIR濾波器是非線性相位的,對應的MATLAB函數(shù)為cremez;第五種設(shè)計方法是升余弦設(shè)計方法,采用升余弦函數(shù)將進行濾波器設(shè)計,對應MATLAB函數(shù)為firrcosf。
在MATLAB環(huán)境下,利用它已有的大量濾波器設(shè)計函數(shù),加上日益成熟且方便的界面技術(shù),己經(jīng)可以把所有的設(shè)計方法和過程集成在一起,構(gòu)成一個濾波器綜合設(shè)計的工具。在信號處理工具箱中,這個工具的名稱為fdatool(Filter Design and Analysis Tool的縮寫)。在MATLAB命令窗中,鍵入fdatool,就得到界面。這個工具界面包含了全部濾波器設(shè)計的功能。窗函數(shù)為kaiser函數(shù),采樣頻率為10KHz,由于所選用的低頻信號為500Hz,最小干擾噪聲為2KHz,通帶截止頻率Fc選取1KHz,阻帶截止頻率選取2KHz,通帶最大衰減為1dB,阻帶最大衰減為60dB。
四、FIR濾波器的結(jié)果檢驗
總結(jié)
當最初面對這個課題時說實話其實挺茫然的,不知從何下手,雖然之前學過一些相關(guān)知識,但還是第一次做如此全面具體的課題設(shè)計。還好之前有一定的編程基礎(chǔ)和對MATLAB有一定程度的學習和掌握,對于不了解的部分,同學大家互相了解和學習,從復習課本,到相互探討編程思路,上網(wǎng)搜索查閱資料,下載CCS軟件進行安裝與運行等,我們都收獲了太多太多??偟膩碚f,我對FIR的濾波器性能和作用有了更深一層的了解。FIR濾波器的設(shè)計是數(shù)字信號處理技術(shù)的基礎(chǔ),也是DSP芯片的重要組成部分。運用mathlab語言,我們能夠很容易的設(shè)計出具有嚴格線性相位的FIR濾波系統(tǒng),以及比較容易的實現(xiàn)。
通過此次課題設(shè)計,我對DSP的基礎(chǔ)知識又有了很大的鞏固。其次,通過對用Matlab實現(xiàn)FIR濾波器的設(shè)計,熟悉了matlab軟件的一些相關(guān)的窗口函數(shù)以及相關(guān)功能的調(diào)用,如怎樣實現(xiàn)窗函數(shù)的調(diào)用,怎樣實現(xiàn)濾波,等等。更加熟悉了對MATLAB的使用。在空余時間里,面對不懂的問題我也會主動提出來尋求解答,此時大家總會互相探討,發(fā)表自己的看法,幫忙解決遇到的問題,分享自己的心得,取長補短,讓困難瞬間迎刃而解,在學習到新的知識的同時也加深了同學間的友誼。我也認識到了自己的不足,希望在以后的學習道路中我能更加完善自己!
【參考文獻】
[1] 趙剛,黃建明. 基于數(shù)字濾波器設(shè)計的討論[J].南開大學報(自然科學版),2003.26(3):15218
[2] 潘松,黃繼業(yè),王國棟. 現(xiàn)代DSP技術(shù). 西安電子科技大學出版社. 2003
[3] 陳金鷹.DSP技術(shù)及應用. 機械工業(yè)出版社.2004.6
[4] 周霖. DSP算法設(shè)計與系統(tǒng)方案. 國防工業(yè)出版社,2004.7
[5] 喬瑞萍,崔濤,張芳娟.TMS320C54xDSP原理及應用[M].西安:西安電子科技大學出版社.005