版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第一章 數(shù)字濾波器概述數(shù)字濾波器是指用有限精度算法實現(xiàn)的,完成信號濾波處理的離散時間線性非時變系統(tǒng),其輸入是一組由模擬信號取樣和量化得到的數(shù)字量,其輸出是經(jīng)過變換的另一組數(shù)子量。數(shù)字濾波器具有高穩(wěn)定性、高精度、靈活性大等突出特點。這章主要講述了數(shù)字濾波器的基本概念、及數(shù)學建模,以便在后續(xù)章節(jié)中實現(xiàn)濾波算法做好準備1。1.1數(shù)字濾波器的基本概念濾波器是一種能使有用頻率信號通過而同時抑制無用頻率信號的電子裝置,或者說是可以人為調整參數(shù)來滿足給定要求的硬件或軟件系統(tǒng)1。 濾波器也就是一個線性移不變離散系統(tǒng),其基本輸入輸出關系為: (1-1)其中h(n)為系統(tǒng)的單位沖激響應。在Z域上,有: (1-2)
2、分析式(1.2)可知,只要分母多項式ai(i=1,2,n)中有一個不為零,濾波器的的內部就存在反饋環(huán)。這種內部有反饋環(huán)的濾波器稱為遞歸型濾波器。相反,所有系數(shù)ai(i=1,2,n)都為零的濾波器稱為非遞歸型濾波器由于非遞歸型濾波器的內部沒有反饋環(huán),所以這種濾波器總是穩(wěn)定的。從濾波器的單位沖激響應來看,濾波器可以分為IIR濾波器和FIR濾波器。由于IIR濾波器的傳遞函數(shù)存在0之外的極點,所以單位沖激響應是無限持續(xù)的。因而IIR濾波器與遞歸型濾波器是一致的。而FIR濾波器的傳遞函數(shù)不存在0之外的極點,所以,本質上FIR濾波器與非遞歸型濾波器是一致的。但是,如果穩(wěn)定的遞歸型濾波器與非遞歸型濾波器級聯(lián)
3、后,其極點與零點相互抵消,使濾波器在0之外不存在極點,這種濾波器也是FIR濾波器2。這種情況下,由于濾波器內部存在反饋環(huán),因而這種濾波器就成為遞歸型濾波器。頻率采樣濾波器就是這種結構的濾波器。具有頻率選擇功能的數(shù)字濾波器按功能分類有低通濾波器(LPF)、高通濾波器(HPF)、帶通濾波器(BPF)、帶阻濾波器3。另外,在全頻帶幅頻特性固定的濾波器稱為全通濾波器,可用于改善濾波器的相頻特性。1.2 數(shù)字濾波器的頻率特性幅頻特性設采樣周期為T,令z=jwT,從z變換理論即可得到H(z)的頻率特性,可表示為: (1-3)圖1-1 理想幅頻特性 H(ejwT)其中,| H(ejwT)|表示數(shù)字濾波器的幅
4、頻特性;H(ejwT)、(wT)表示相頻特性3。另外,H(ejwT)是數(shù)字濾波器的頻率傳遞函數(shù),它表示決定數(shù)字濾波器的幅頻特性與相頻特性的頻率特性。各種數(shù)字濾波器的理想幅頻特性示于圖1-1。 相頻特性設計數(shù)字濾波器時,不僅要考慮它的幅頻特性,相頻特性也是需要考慮的重要問題。特別是在線性相位濾波器中,相位的延遲不會造成波形失真,所以在波形要求很高時,濾波器具有線性相位是非常重要的4。我們知道,一般情況下要減小(增大)通帶與阻帶的波紋,會造成過渡帶的截止特性變差(變好)。根據(jù)濾波器的使用目的,其重點是不一樣的,在濾波器的階次確定后,合理的折中方案是必要的。但是當幅頻特性要求很高,不能得到滿意結果時
5、,不僅要采用更高階次FIR濾波器,還必須考慮采用IIR濾波器。1.3 數(shù)字濾波器的數(shù)學建模任何線性時不變集總參數(shù)離散系統(tǒng)都可用下列數(shù)學形式之一來表述其輸入輸出關系,在時域中,濾波器的功能可以用差分方程(1.4)或卷積公式(1.5)來描述: (1-4) (1-5)在變換域中可用系統(tǒng)傳遞函數(shù)(1.6)來表示:(1-6)這三種方法是等價的,從任何一個都能推導出其他兩個5。即使用同一類表示方法。也存在著許多等價的算法結構。不同的算法會影響系統(tǒng)的某些實際性能。濾波器的工程實現(xiàn)要用計算機的硬件或軟件幫助完成,這需要考慮許多的問題:(1)計算的效率,即完成整個濾波所需要的乘法和加法次數(shù);(2)需要的存儲量;
6、(3)濾波器系數(shù)的量化影響;(4)運算中的舍入和截斷誤差、飽和和溢出。不同的濾波器結構可以實現(xiàn)同樣的傳遞函數(shù),但不同的算法在滿足上述的要求方面是有差別的,有的差別還很大,改變計算結構對提高計算效率和節(jié)省存儲量能起很大的作用。1.4本章小結本章主要討論了數(shù)字濾波器的一些基本概念。數(shù)字濾波器按單位沖激響應可以分為FIR和IIR濾波器,按頻率選擇功能的數(shù)字濾波器按功能分類有低通濾波器(LPF)、高通濾波器(HPF)、帶通濾波器(BPF)、帶阻濾波器。數(shù)字濾波的作用是濾除信號中某一部分頻率分量。信號經(jīng)過濾波處理,就相當于信號頻譜與濾波器的頻率相應相乘。從時域來看,就好似輸入信號與濾波器的沖激相應作卷積
7、和。數(shù)字濾波器具有幅度特性和相位特性。第二章 數(shù)字濾波器的設計準則及基本步驟上一章主要討論的是數(shù)字濾波器的數(shù)學表示及一些特性和分類的問題,并沒有解決如何去設計一個數(shù)字濾波器。眾所周知,計算機或DSP芯片處理的是數(shù)字信號,那么對于一個數(shù)字濾波器,要知道它設計準則。在這章主要討論數(shù)字濾波器的設計準則和基本步驟。2.1 數(shù)字濾波器的設計準則濾波器設計誤差是濾波器的期望響應與實際響應之間的差別。在FIR濾波器設計中通常采用3種準則6。(1)最小平方(LS)近似,它是期望濾波器與設計濾波器頻率響應之間平方誤差的平均值。(2)切比雪夫(Chebjyshe)近似,它是頻率響應指定區(qū)域內的最大誤差。(3)巴特
8、沃思(Butterworth)近似,它是基于泰勒級數(shù)近似的期望響應近似。大多數(shù)的有源濾波器設計算法都是以這3種近似法的一種和Parks McCllan(最優(yōu))算法。頻率采用快速,簡單,但其對整體頻率響應的控制最弱。傅立葉設計的頻率響應中存在不合乎要求的震蕩或過沖,可以使用窗口函數(shù)控制這些效應。加窗方法的重要優(yōu)點在于其簡單性,其主要缺點是缺少對通帶和阻帶紋波控制的靈活性。Parks-McCllan算法生成一個線性相位FIR濾波器,并使切比雪夫誤差最小,但是如果不利用計算軟件,其設計非常慢6。2.2數(shù)字濾波器設計的基本步驟 指標在設計一個濾波器之前,必須首先根據(jù)工程實際的需要確定濾波器的技術指標。
9、在很多實際應用中,數(shù)字濾波器常常被用來實現(xiàn)選頻操作。因此,指標的形式一般在頻域中給出幅度和相位響應。幅度指標主要以兩種方式給出。第一種是絕對指標。它提供對幅度響應函數(shù)的要求,一般應用于FIR濾波器的設計。第二種指標是相對指標。它以分貝值的形式給出要求。在工程實際中,這種指標最受歡迎。對于相位響應指標形式,通常希望系統(tǒng)在通頻帶中有線性相位。運用線性相位響應指標進行濾波器設計具有如下優(yōu)點7:(1)只包含實數(shù)算法,不涉及復數(shù)運算;(2)不存在延遲失真,只有固定數(shù)量的延遲;(3)長度為N的濾波器(階數(shù)為N-1),計算量為N/2數(shù)量級。因此,本文中濾波器的設計就以線性相位FIR濾波器的設計為例。 逼近確
10、定了技術指標后,就可以建立一個目標的數(shù)字濾波器模型。通常采用理想的數(shù)字濾波器模型。之后,利用數(shù)字濾波器的設計方法,設計出一個實際濾波器模型來逼近給定的目標。 性能分析和計算機仿真上兩步的結果是得到以差分方程或系統(tǒng)函數(shù)或沖激響應描述的濾波器。根據(jù)這個描述就可以分析其頻率特性和相位特性,以驗證設計結果是否滿足指標要求;或者利用計算機仿真實現(xiàn)設計的濾波器,再分析濾波結果來判斷。一些FIR濾波器的設計方法可能比較簡單,如傅立葉技術。但是,不存在對于所有濾波器特性都是最優(yōu)的單一方法。濾波器系數(shù)可以通過一些合理的公式來生成。但是,采用最優(yōu)方法來獲得最優(yōu)濾波器需要大量的計算。此外,在定點DSP處理器實現(xiàn)實時
11、濾波器的主要問題就是有限精度和動態(tài)范圍。分析有限長效應的理論過于復雜,不適與手工計算,所以通常依靠計算機軟件來設計數(shù)字濾波器7。2.3 本章小結本章主要討論了數(shù)字濾波器的設計準則,和設計數(shù)字濾波器的基本步驟。設計準則有最小平方(LS)近似、切比雪夫(Chebjyshe)近似、巴特沃思(Butterworth)近似,這三種方法各有優(yōu)缺點,在工程實現(xiàn)時由于現(xiàn)在有了高效的濾波器設計軟件包(如MATLAB)可供利用,所以Parks-McCllan算法被廣泛應用于大多數(shù)應用中。設計一個數(shù)字濾波器時有一些基本的步驟,首先要按照實際需要,確定濾波器的性能指標,尋找一個滿足預定性能要求的離散線性非時變系統(tǒng),然
12、后通過模擬,驗證所設計的系統(tǒng)是否符合給定的性能指標。第三章 濾波器的選擇上一章我們解決了兩個問題,那就是數(shù)字濾波器的設計準則及基本步驟。濾波器包括模擬濾波器和數(shù)字濾波器。但在許多信號處理應用中,使用數(shù)字濾波器代替模擬濾波器是有利的。數(shù)字濾波器不僅具有高可靠性、高精度,而且它是用可編程的處理器實現(xiàn)的,因而容易改變?yōu)V波器的參數(shù)。在應用環(huán)境改變時,這個特性方便設計工程師升級或修改已有的濾波器特性。并且數(shù)字濾波器容易實現(xiàn)不同的幅度和相位頻率特性指標,克服與模擬濾波器器件相關的電壓漂移、溫度漂移和噪聲問題,因此這里選擇使用數(shù)字濾波器。而數(shù)字濾波器的設計又分為FIR(有限長單位沖激響應)濾波器和IIR(無
13、限長單位沖激響應)濾波器。在這一章中,就專門討論濾波器的選擇問題及FIR濾波器的定義和FIR的幾種基本結構。3.1 FIR與IIR濾波器的比較從性能上說,IIR濾波器可用較低的階數(shù)獲得高的選擇性,所用的存儲單元少,計算量小,效率高。但是這個高效率是以相位的非線性為代價的。選擇性越好,則相位非線性越嚴重。FIR濾波器要達到高的選擇性,必須用較高的階數(shù)。對于同樣的濾波器設計指標,F(xiàn)IR濾波器所要求的階數(shù)可能比IIR濾波器高510倍,成本較高,信號延時也較大。如果按線性相位要求來說,則IIR濾波器就必須加全通網(wǎng)絡進行相位校正,同樣要大大增加濾波器的階數(shù)和復雜性。而FIR濾波器卻可以得到嚴格的線性相位
14、1。從結構上看,IIR濾波器必須采用遞歸結構來配置極點,并保證極點位置在單位圓內。由于有限字長效應,運算過程中將對系數(shù)進行舍入處理,引起極點的偏移。這種情況有時會造成穩(wěn)定性問題,甚至產(chǎn)生寄生振蕩。相反,F(xiàn)IR濾波器只采用非遞歸結構,不論是在理論上還是在實際的有限精度運算中都不存在穩(wěn)定性問題,因此造成的頻率特性誤差也較小。此外FIR濾波器可以采用快速傅立葉變換算法,在相同階數(shù)的條件下,運算速度可以快的多1。另外,也應看到,IIR濾波器雖然設計簡單,但主要是用于設計具有分段常數(shù)特性的濾波器,如低通、高通、帶通及帶阻等,往往脫離不了模擬濾波器的格局。而FIR濾波器則要靈活的多,尤其是他易于適應某些特
15、殊應用,如構成數(shù)字微分器或西爾波特變換器等,因而有更大的適應性和廣闊的應用領域。3.2 FIR濾波器的定義根據(jù)上面的比較,在這次設計中我們選擇的是FIR數(shù)字濾波器,所以我們只簡單介紹FIR濾波器的結構。FIR網(wǎng)絡結構特點是沒有反饋支路,即沒有環(huán)路,其單位脈沖響應是有限長的8。設單位脈沖響應h(n)長度為N,其系統(tǒng)函數(shù)H(z)和差分方程分別為 (3-1) (3-2)其單位脈沖響應h(n)是有限長的,按照式(3-1)的Z反變換,h(n)表示為(3-3)bn 0Nn-10 其他h(n)= 濾波器的階數(shù)N-1。它的長度(等于系數(shù)的個數(shù))為N。FIR 濾波器總是穩(wěn)定的,同IIR結構相比而言,相對簡單一些
16、。而且,F(xiàn)IR濾波器可設計成具有線性相位,這是某些應用所希望的。3.3 FIR濾波器的結構直接型設N=5(即四階FIR濾波器),按照H(Z)或者差分方程式畫出的直接結構圖如圖3-1所示,它可以用抽頭延遲線實現(xiàn)3。則可以寫出: (3-4)圖3-1直接型結構x(n)y(n)z-1z-1z-1z-1z-1b0b1b2b3b4根據(jù)此信號流圖可以直接寫出方程式(3-4),而且不必寫出聯(lián)立方程了。級聯(lián)型將H(Z)進行因式分解,并將共軛成對的零點放在一起,形成一個系數(shù)對稱為實數(shù)的二階形式。這樣級聯(lián)型網(wǎng)絡結構是由一階或二階實系數(shù)因式級聯(lián)構成的,其中每一個因式都可以用直接型實現(xiàn)。設FIR網(wǎng)絡系統(tǒng)函數(shù)H(Z)如式
17、(3-5),要求畫出H(Z)的直接型和級聯(lián)型結構。 (3-5)將H(Z)進行因式分解,得到: (3-6)其級聯(lián)型結構和直接型結構如圖3-2所示。ax(n)z-1bz-1z-1decy(n)x(n)y(n)z-1z-1z-1a1a2a3a4圖3-2 H(Z)的直接型和級聯(lián)型結構級聯(lián)型結構每個一階因式控制一個零點,每個二階因式控制一對共軛零點,因此調整零點位置比直接型方便,但H(Z)中的系數(shù)比直接型多,因而需要的乘法器多。在上例中直接型需要四個乘法器,而級聯(lián)型則需要五個乘法器。分解的因式越多,需要的乘法器也越多。當H(Z)的階次高于三階時,不易分解,需要用Matlab協(xié)助。 線性相位形式一般的,理
18、想的低通濾波器具有線性相位,如(3-7)式所示。 (3-7)其中=0或±/2,為時延的拍數(shù)。要得到線性相位,實際濾波器的脈沖響應序列應當具有對稱性。利用這種對稱性可以簡化濾波器的結構。線性相位結構在本質上仍然是直接形式,只是縮減了乘法計算量。因此,傳遞函數(shù)多項式的組成形式上,線性相位結構仍等于直接形式。3.4本章小結經(jīng)過對FIR和IIR的比較得知:FIR濾波器可以得到嚴格的線性相位;FIR濾波器只采用非遞歸結構,有限精度的計算不會產(chǎn)生震蕩;FIR濾波器可以采用FFT算法,在相同階數(shù)下,運算速度可以快的多;IIR濾波器可以借助于模擬濾波器的成果;而設計FIR需要借助計算機輔助設計;FI
19、R易于適用某些特殊應用。這里,選擇的是FIR濾波器。FIR是沒有反饋支路,即沒有環(huán)路,其單位脈沖響應是有限長的。FIR的結構有直接型、接連型、轉置型和線形相位型等結果,在實際中要根據(jù)不同的要求來選擇不同的結構。第四章 FIR濾波器的Matlab工具箱實現(xiàn) 本章介紹了設計濾波器的Matlab工具箱SPTool和FDATool,這兩種數(shù)字信號處理工具箱都是一種圖形用戶界面,能夠方便快捷的讓我們設計自己的數(shù)字濾波器。這兩種工具箱都能查看所設計濾波器的幅度響應、相位響應、群延遲、零點極點圖、沖激響應和階躍響應。4.1 Matlab SPTool工具箱的FIR濾波器設計 SPTool工具箱簡介SPToo
20、l是一個圖形環(huán)境,提供了一種用于信號查看、濾波器設計和頻譜分析的多圖形環(huán)境。它為信號處理工具箱中的很多函數(shù)提供了易于使用的界面,只需要操縱鼠標就可以觀察、分析和打印數(shù)字信號,分析、實現(xiàn)和設計數(shù)字濾波器,以及頻譜分析等6。用SPTool工具箱設計FIR濾波器啟動Matlab后在命令窗口輸入SPTool回車就可以打開SPTool的主窗口。如圖 41 所示,由SPTool的主窗口可以看出,SPTool有3個列表框:Signals列表框,F(xiàn)ilters列表框和Spectra列表框,它們對應著SPTool工具中的4個功能模塊6:(1)信號瀏覽器;(2)濾波器設計器;(3)濾波器觀察器;(4)譜觀察器;圖
21、4-1 SPTool的主窗口在用SPTool進行信號處理時,必須先載入數(shù)據(jù)或先設計好濾波器。按照不同的數(shù)據(jù)類型,數(shù)據(jù)載入可以分為信號數(shù)據(jù)載入、濾波器數(shù)據(jù)載入以及功率譜數(shù)據(jù)載入。首先在Matlab工作空間創(chuàng)建信號數(shù)據(jù)。這里以低通為例,創(chuàng)建信號數(shù)據(jù)時的Gen_Signal.m文件如下9 10:fs=1000; t=0:1/fs:1;x=sin(2*pi*5*t);xn=x+rand(size(t); B,A=butter(20,0.6);plot(t,xn)可以利用File菜單中的Import選項將其他信號、濾波器或頻譜由Matlab工作區(qū)中導入到SPTool工作區(qū)內。如圖4-2所示:圖4-2 導
22、入信號 xn圖4-3 信號sig1已經(jīng)從工作區(qū)中選擇數(shù)據(jù)xn導入到Signals列中,所導入的數(shù)據(jù)命名為sig1。這時單擊OK按鈕,將以此信號sig1更新原來的SPTool窗口。選擇Signals列中信號的名稱,并單擊列表下面的View按鈕,就可以查看信號了。如圖4-3給出了受干擾的正弦波sig1。Signals Browser窗口允許查看、測試和分析時域信號的特定區(qū)域。它包括有水平和垂直標記、帶有軌跡和范圍的標記,并顯示信號的波峰和波谷,用于測試和對比。接下來的任務是設計一個FIR低通濾波器去濾除高頻噪聲分量。將濾波器導入到Matlab工作區(qū)中最簡單的方法是單擊 File|Import,并導
23、入分子B和分母A系數(shù),如圖4-4所示。并單擊View來查看所導入濾波器的特性。Filter Viewer窗口允許用戶查看所設計濾波器的特性,包括濾波器的幅度響應、相位響應、群延遲、零點極點圖、沖激響應和階躍響應。圖4-4 導入分子分母系數(shù)圖4-5 Filter Designer窗口SPTool工具箱中還可以根據(jù)自己定義的規(guī)格設計FIR和IIR濾波器,可以通過單擊SPTool中Filters列之下的New按鈕來完成這一操作。這里選擇SPTool/Filters中的Edit,對輸入信號進行濾波設計,將出現(xiàn)如圖4-5所示設計的Filter Designer窗口,這里也允許自己去選擇一個濾波器設計算法
24、、濾波器類型和頻率規(guī)格。最后通過單擊SPTool窗口中的Apply按鈕,可以選擇所設計的濾波器或所導入的濾波器LSLp,并將其應用至輸入信號sig3。如下圖4-6所示:圖4-6 信號sig3將出現(xiàn)一個新的窗口,他允許我們選擇濾波器的結構,并指定輸出信號的名稱為sig3。由SPTool窗口中選擇sig1和sig3,并單擊Signal列下面的 View按鈕,可以查看輸入信號(見圖4-11)和濾波后輸出信號的時域圖。如圖4-7(a) 、(b)所示(a)濾波前信號 (b)濾波后的信號 圖4-7 從濾波前后波形對比,我們可以看出,高頻分量被濾除掉了。4.2 FIR濾波器的Matlab FDATool工具
25、箱的簡介Matlab中包括一組用于設計、分析和實現(xiàn)FIR濾波器的函數(shù)。利用FDATool來為實際應用設計、分析和量化FIR濾波器,F(xiàn)DATool中整合了濾波器設計工具箱和信號處理工具箱。這一強大的工具將傳統(tǒng)的命令行濾波器設計功能集成在一個圖形窗口環(huán)境中。 濾波器設計與FDATool工具箱簡介在Matlab命令窗口中鍵入FDATool啟動FDATool。FDATool打開默認設計模式,如圖4-8所示。圖4-8 FDATool窗口FDATool包含一個交互式GUI,它允許使用者指定以下濾波器設計參數(shù)6: (1) 濾波器類型可以為低通、高通、帶通、帶阻、多頻器、微分器、Hibert轉換器、任意幅度、
26、任意相位、升余弦。(2) 濾波器設計方法可以是用于FIR濾波器的等紋波、最小平方和加窗法。(3) 濾波器階數(shù)可由使用者指定,也可以是由濾波器設計方法確定的最小階數(shù)。(4) 窗口技術要求僅可用于采用傅立葉方法的FIR設計。其中共有16種窗口可供選擇。(5) 頻率設計要求可以是采樣頻率(fs) 、通帶截止頻率或阻帶截止頻率。(6) 幅度技術要求可以是通帶紋波和阻帶紋波,單位可以為線性單位或dB. 有限長單位沖激響應濾波器的指標這里以一個具體例子為例利用FDATool設計FIR濾波器的過程。濾波器的技術要求給出如下:(1)應使用等紋波設計方法以最低階數(shù)設計一個帶通FIR濾波器。 (2)以Hz為單位的
27、頻率技術要求為Fstop1=800Hz, Fstop2=1 500Hz,F(xiàn)pass1=1 000Hz,F(xiàn)pass2=1 300Hz,采樣頻率Fs=8 000Hz。(3)低阻與高阻帶紋波的幅度技術要求分別為50dB(As1)和60dB(As2)。通帶紋波限制為1dB(Ap)。4.3 Matlab FDATool工具箱的FIR濾波器設計有了帶通濾波器的技術要求后,就可以進行Matlab軟件設計了。首先打開MATLAB進入命令窗口,在命令窗口中敲入“FDATool”命令,然后回車,就進入了FDATool的默認設計模式如上圖4-7所示。在FDATool的默認設計模式中有“Response Type”,
28、可以從中選擇“Lowpass”,“Bandpass”,“Highpass”等濾波器類型,這里以“Bandpass”為例。把技術指標填入相應的筐中,再點擊“Design Filter”,設計的濾波器就如圖4-9 Bandpass所示。完成濾波器的設計之后,可以分析濾波器的特性。如圖4-8所示,可以通過選擇Analysis菜單中所列的方法或單擊工具欄按鈕來訪問分析方法。從Analysis菜單中選擇Magnitude Response,在右上窗口中顯示幅度響應曲線,如圖4-10所示,還可以選擇Phase Response如圖4-11所示:圖4-9 Bandpass 圖4-10 Magnitude R
29、esponse 圖4-11 Phase Response Response FDATool還提供了給出濾波器特性的附加顯示。這些曲線包括相位響應、群延遲、沖激響應、階躍響應、極零圖和濾波器系數(shù)。FIR濾波器的沖激響應顯示所設計濾波器的系數(shù)。極零圖顯示極點和零點的位置。例如,相位響應和沖激響應分別顯示于圖4-11和圖4-12中。相位響應顯示的濾波器在通帶內具有線性相位,這是FIR濾波器的一個重要特性。獲得對稱系數(shù)即可獲得線性相位濾波器,如沖激響應中所示(圖4-12)圖4-12 Impulse Response已經(jīng)利用FDATool根據(jù)給定技術要求設計了一個FIR濾波器。濾波器系數(shù)以雙精度浮點格式
30、表示,需要64位字長。需要將這些系數(shù)量化為定點數(shù)(14位或32位),以便在定點DSP處理器上實現(xiàn)。如圖4-13所示:圖4-13 量化窗口在Analysis菜單中選擇Filter Coefficents選項可以查看量化系數(shù)。在圖 圖4-14 Filter Coefficients圖4-15 Generate C Header4-14Filter Coefficients 中可以顯示以格式Q.16格式表示的量化系數(shù)??梢栽诹斜淼淖钭罅酗@示符號+、-和0。符號+表示量化系數(shù)向+溢出,符號-表示量化系數(shù)向-溢出,符號0標志著系數(shù)已經(jīng)被量化為零6。系數(shù)量化后,在Filter Design & A
31、nalysis Tool界面下,單擊菜單中的Targets的下拉菜單中的Generate C Header,如圖4-15所示,以此可以完成導出過程。濾波器系數(shù)存儲在長度為BL的數(shù)組B中。然后進入Generate C Header界面,選擇Export as為signed 16-bit integer,然后單擊按紐Generate,將所得到的文件進行保存,在該文件中就可以得到一組16進制有符號數(shù)據(jù),這組數(shù)據(jù)就是后面DSP實現(xiàn)中編程所要用到的濾波器參數(shù)。所生成的濾波系數(shù)如下(68階):.word -93, 21, 130, 194, 104, -117, -299, -257, 15.word 3
32、05, 360, 136, -154, -251, -127, -3, -76, -232.word -131, 369, 895, 783, -223, -1490, -1843, -621, 1498.word 2813, 1988, -635, -3078, -3274, -869, 2339, 3802, 2339.word -869, -3274, -3078, -635, 1988, 2813, 1498, -621, -1843.word -1490, -223, 783, 895, 369, -131, -232, -76, -3.word -127, -251, -154,
33、136, 360, 305, 15, -257, -299.word -117, 104, 194, 130, 21, -93從這組濾波器數(shù)據(jù)我們可以看出,這是一組對稱的數(shù)據(jù).4.4本章小結SPTool和FDATool工具箱都是一種圖形用戶界面,能夠方便快捷的設計自己的數(shù)字濾波器。這兩種工具箱都能查看所設計濾波器的幅度響應、相位響應、群延遲、零點極點圖、沖激響應和階躍響應。為設計數(shù)字濾波器提供了方便,為后面的DSP硬件實現(xiàn)提供了快捷的方法。第五章 FIR濾波器的DSP實現(xiàn)本章采用上面MATLAB仿真得到的濾波系數(shù),用循環(huán)尋址的方法,使用C54X匯編語言來實現(xiàn)FIR濾波器,并基于Code Com
34、poser Studio開發(fā)平臺進行的濾波運算。輸入數(shù)據(jù)通過開發(fā)系統(tǒng)File I/O功能完成待處理數(shù)據(jù)的輸入,并將輸入數(shù)據(jù)送入輸入數(shù)據(jù)Buffer,運算結果也輸出到輸出Buffer中,通過開發(fā)系統(tǒng)的相應圖形功能加以顯示。5.1 FIR DSP芯片內的循環(huán)尋址循環(huán)尋址(circular addressing)是DSP中經(jīng)常用到的一種尋址方式。該尋址方法可以對一塊特定存儲區(qū)實現(xiàn)循環(huán)的操作。可以把循環(huán)尋址理解為實現(xiàn)一個滑動窗,新數(shù)據(jù)引入后將覆蓋老的數(shù)據(jù),使得該窗中包含了需處理的最新數(shù)據(jù)。在數(shù)字信號處理中的FIR、卷積等運算中,循環(huán)尋址具有極其重要的意義11。在TI的DSP中,循環(huán)尋址通過如下方法實現(xiàn)
35、12。(1)設定BK(寄存器塊大?。┲?,以確定循環(huán)尋址緩沖區(qū)的大小,也可將它看作是循環(huán)的周期。(2)設定緩沖區(qū)的底部地址。必須注意:其低N位為零,其中N為滿足式(4-3)的最小N值。 (4-3)(3) 用輔助寄存器間接尋址循環(huán)緩沖區(qū)。5.2 帶通FIR濾波器DSP硬件實現(xiàn)先準備好實驗箱,打開CCS軟件,連接好USB接口,設置DSP工作在MP方式。設置Code Composer Studio為Emulator 方式。新建一個工程,加載程序,然后編譯并下載程序到定點DSP處理器上。在接著打開觀察窗口:選擇菜單“View”、“Graph”、“Time/Frequency”進行如下圖5-1設置,點擊“
36、OK”后,就打開了變量input的顯示圖形窗。同上操作,選擇菜單“View”、“Graph”、“Time/Frequency”進行如下圖5-2設置,點擊“OK”后,就打開了變量output的顯示圖形窗。然后在程序中設置斷點就可以了。圖5-2 output圖5-1 input斷點設置好 后運行并觀察結果:(1)選擇“Debug”菜單的“Animate”項(快捷鍵,F(xiàn)12 鍵)運行程序。(2)觀察“Input”、“Output”窗口中時域圖形,如下圖5-3所示;(3)鼠標右鍵單擊“Input”和“Output”窗口,選擇“Properties”項,設置“Display Type”為“FFT Mag
37、itude”,如下圖5-5所示。(4)按F12 運行程序。圖5-4 FFT Magitude圖5-3時域圖形圖5-3為input、output的時域波形,圖5-4為input、output作FFT變換后的頻域波形,其中橫坐標顯示實信號的歸一化頻率(f0=f/fs=00.5,式中f為實信號的實際頻率,fs為采樣頻率。縱坐標顯示幅度的相對值,可設置圖形屬性,改為dB作單位6。通過觀察頻域和時域圖,結果表明,輸入波形為一個1 000Hz1 300Hz的正弦波與一個高頻的正弦波疊加而成,輸入波形中1 000Hz1 300Hz的波形很好的通過了,輸出波形中的低于800Hz和高于1 500Hz的信號波形都
38、很好的過濾掉了,實現(xiàn)了帶通濾波效果。5.3 誤差分析因為在用定點DSP實現(xiàn)時,所有的數(shù)據(jù)都是定長的,運算也都是定點運算,因而會產(chǎn)生有限字長效應。所產(chǎn)生的誤差主要包括:數(shù)模轉換引起的量化誤差、系數(shù)量化引起的誤差以及運算過程中的舍入誤差3。在用定點DSP時,產(chǎn)生誤差是不能避免的,但是可以通過一些方法減小誤差。如,可以用兩個存儲單元來表示一個數(shù),運算時使用雙字運算;可以根據(jù)需要要將濾波器系數(shù)都用雙字表示,也可以只將一半的系數(shù)用雙字表示,視需要而定14。另外,F(xiàn)IR數(shù)字濾波器和IIR數(shù)字濾波器所引入的量化誤差是不一樣的。FIR數(shù)字濾波器主要采用非遞歸結構,因而在有限精度的運算中都是穩(wěn)定的。除了有限字長
39、效應以外,不同結構引入的誤差也有所不同15。在實際設計中,要注意實現(xiàn)中的誤差問題。在選擇不同的結構時,應考慮它們所引入的誤差,并用高級語言進行定點仿真,以比較不同結構下誤差的大小,從而作出合理選擇。結束 語在數(shù)字信號處理中,數(shù)字濾波占有極其重要的地位。幾乎每一科學和工程領域,例如聲學、物理學、通信、數(shù)據(jù)通信、控制系統(tǒng)和雷達都涉及信號。在許多應用中,都希望根據(jù)期望的指標把一個信號的頻譜加以修改、整形或運算。這些過程可能包含衰減一個頻率范圍、阻止或隔離一些頻率成分。任何顯示出上述頻率選擇特性的系統(tǒng)或網(wǎng)絡稱做一個濾波器。數(shù)字濾波是譜分析、雷達信號處理、通信信號處理等應用中的基本處理算法,它能夠滿足濾
40、波器對幅度和相位的嚴格要求,解決了模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題,同時有很高的可編程性和靈活性。數(shù)字濾波器是DSP最基本的應用領域,一個DSP芯片執(zhí)行數(shù)字濾波算法的能力反映了這種芯片的功能強弱,用DSP實現(xiàn)的數(shù)字濾波器可以十分方便地改變?yōu)V波器特性。實時數(shù)字信號處理的應用需求和超大規(guī)模集成電路技術水平的飛速發(fā)展,推動著數(shù)字信號處理器性能的不斷提高,使其在信號處理、軍事及民用電子技術領域發(fā)揮著越來越重要的作用,其應用廣度和深度正在不斷地擴展和深化。近幾年,DSP技術發(fā)展很快,主要表現(xiàn)在:更新速度快;速度越來越高,內部結構越來越復雜,功能越來越強等;軟件開發(fā)工具越來越完善,用高
41、級語言設計已經(jīng)成為一種趨勢。未來DSP的理想設計模式是,設計人員編寫通用的C程序,其中調用名稱和參數(shù)規(guī)范的優(yōu)化算法函數(shù),當DSP或DSP電路板升級時,只要將C程序在新的DSP開發(fā)環(huán)境下重新編譯和鏈接,就能生成與實際電路匹配的可執(zhí)行代碼。這樣的開發(fā)研制過程是十分快捷的,也節(jié)省了大量的人力資源、軟件開發(fā)與維護費用。附錄 濾波器匯編程序asm文件:.globalstart,fir.mmregsCOFF_FIR_START: .sect "coff_fir".include"bandpassbandpass68.inc" /68階帶通濾波系數(shù)K_FIR_BFFR
42、.set 32d_data_buffer.usect"fir_bfr",64FIR_DP.usect"fir_vars",0d_filin.usect"fir_vars",1output.usect"fir_vars",1input.usect "fir_vars",1d_filout .usect"fir_vars",100hstacksize .set 256stack .usect "fir_vars",stacksize.asgAR4,FIR_DA
43、TA_P.asgAR6,INBUF_P.asgAR7,OUTBUF_P.asgAR3,OUTBUF.asgAR2,INBUF.sect"fir_prog" nopstart:stm #stack+stacksize,SPLD#FIR_DP,DPSTM#d_data_buffer,FIR_DATA_PRPTZ A,#K_FIR_BFFR-1STLA,*FIR_DATA_P+STM#d_filin,INBUF_PSTM#d_filout,OUTBUF_P STM#output,OUTBUFSTM#input,INBUFSTM#100h,BKfir_loop: NOP ;Add Breakpoint & porbe pointLD*INBUF_P,ASTLA,*INBUFCALLfirSTHA,*OUTBUF_P+%S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學生處工作計劃
- 幼兒園保教工作計劃大全
- 買賣合同范文七篇
- 幼兒教育工作計劃集合七篇
- 中國卡座連接器項目投資可行性研究報告
- 棉花姑娘教案四篇
- 網(wǎng)絡對戰(zhàn)小游戲課程設計
- 產(chǎn)科護士一天的工作計劃
- 全新大一軍訓心得筆記10篇
- 畢業(yè)生自我介紹(15篇)
- 2024年北京市學業(yè)水平合格性地理試卷(第一次)
- 黑龍江哈爾濱六中2025屆高三第六次模擬考試數(shù)學試卷含解析
- GB/T 36547-2024電化學儲能電站接入電網(wǎng)技術規(guī)定
- 會議記錄培訓教材課件幻燈片
- 期末 (試題) -2024-2025學年人教PEP版(2024)英語三年級上冊
- 2025年高考政治時政熱點 延遲退休政策(知識銜接+練習+解析)
- 2.1 網(wǎng)絡改變世界 (教案) -2024-2025學年道德與法治八年級上冊 統(tǒng)編版
- 中華傳統(tǒng)文化之戲曲瑰寶學習通超星期末考試答案章節(jié)答案2024年
- 裝飾裝修設備表
- 基于老舊小區(qū)加裝電梯特殊安全及風險控制的研究
- 甘肅省蘭州市(2024年-2025年小學三年級語文)人教版綜合練習(上學期)試卷(含答案)
評論
0/150
提交評論