基于DSP的自適應(yīng)濾波器設(shè)計(jì)_第1頁
基于DSP的自適應(yīng)濾波器設(shè)計(jì)_第2頁
基于DSP的自適應(yīng)濾波器設(shè)計(jì)_第3頁
基于DSP的自適應(yīng)濾波器設(shè)計(jì)_第4頁
基于DSP的自適應(yīng)濾波器設(shè)計(jì)_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目錄:摘要1一設(shè)計(jì)目的2二設(shè)計(jì)原理及程序分析32.1數(shù)字濾波器的基本概念32.2自適應(yīng)濾波器原理42.3自適應(yīng)濾波算法52.3.1最小均方算法(LMS)算法52.4 基于DSP實(shí)現(xiàn)自適應(yīng)濾波器112.4.1自適應(yīng)濾波算法的DSP實(shí)現(xiàn)11三設(shè)計(jì)步驟14四設(shè)計(jì)心得15五參考文獻(xiàn)15附件源程序清單:15摘要在科學(xué)技術(shù)高速發(fā)展的今天,由于在實(shí)際應(yīng)用中,沒有充足的信息來設(shè)計(jì)固定系數(shù)的數(shù)字濾波器,或者設(shè)計(jì)規(guī)則會(huì)在濾波器正常運(yùn)行時(shí)改變,因此自適應(yīng)濾波器成為統(tǒng)計(jì)信號(hào)處理的一個(gè)重要組成部分。自適應(yīng)濾波器在需要處理未知統(tǒng)計(jì)環(huán)境下運(yùn)算結(jié)果所產(chǎn)生的信號(hào)或需要處理非平穩(wěn)信號(hào)時(shí),有非常優(yōu)異的解決方法,而且其性能通常遠(yuǎn)優(yōu)于

2、用常方法設(shè)計(jì)的固定濾波器。此外,自適應(yīng)濾波器還有非自適應(yīng)方法所不可能提供的新的信號(hào)處理能力。本文從高速數(shù)字信號(hào)處理器的特點(diǎn)、自適應(yīng)濾波器的原理及主要應(yīng)用領(lǐng)域入手,介紹了自適應(yīng)濾波器的基本理論思想,具體闡述了自適應(yīng)濾波器的基本原理、算法及設(shè)計(jì)方法。本文中,對(duì)兩種最基本的自適應(yīng)算法,即最小均方誤差(LMS)算法和遞歸最小二乘(RLS)算法進(jìn)行了詳細(xì)的介紹和分析,并針對(duì)兩種算法的優(yōu)缺點(diǎn)進(jìn)行了詳細(xì)的比較。最后用DSP實(shí)現(xiàn)了自適應(yīng)濾波器。實(shí)驗(yàn)結(jié)果表明,該自適應(yīng)濾波器濾波效果優(yōu)越。關(guān)鍵詞:DSP 自適應(yīng)濾波器 LMS RLS一設(shè)計(jì)目的我們是電子信息工程專業(yè),數(shù)字信號(hào)處理在我們今后的學(xué)習(xí)與應(yīng)用中扮演著舉足輕

3、重的地位,是我們所學(xué)知識(shí)的重點(diǎn),所以,對(duì)于自適應(yīng)信號(hào)處理知識(shí)需要我們?nèi)W(xué)習(xí)與研究。目前,對(duì)自適應(yīng)濾波算法的研究是當(dāng)今自適應(yīng)信號(hào)處理中最為活躍的研究課題之一。Windrow等于1967年提出的自適應(yīng)濾波系統(tǒng)的參數(shù)能自動(dòng)的調(diào)整而達(dá)到最優(yōu)狀況,而且在設(shè)計(jì)時(shí),只需要很少的或根本不需要任何關(guān)于信號(hào)與噪聲的先驗(yàn)統(tǒng)計(jì)知識(shí)。自適應(yīng)濾波器本身有一個(gè)重要的自適應(yīng)算法,這個(gè)算法可以根據(jù)輸入、輸出及原參量信號(hào)按照一定準(zhǔn)則修改濾波參量,以使它本身能有效的跟蹤外部環(huán)境的變化。因此,自適應(yīng)數(shù)字系統(tǒng)具有很強(qiáng)的自學(xué)習(xí)、自跟蹤能力和算法的簡(jiǎn)單易實(shí)現(xiàn)性。自適應(yīng)濾波技術(shù)的核心問題是自適應(yīng)算法的性能問題,提出的自適應(yīng)算法主要有最小均方

4、(LMS)算法、遞歸最小二乘(RLS)算法及相應(yīng)的改進(jìn)算法如:歸一化(NLMS)算法、變步長(SVSLMS)算法、遞歸最小二乘方格形(RLSL)算法等。這些算法各有特點(diǎn),適用于不同的場(chǎng)合。所以,對(duì)發(fā)展通信業(yè)務(wù)有著不可或缺的作用的自適應(yīng)濾波,更需要我們?nèi)W(xué)習(xí)與研究,并應(yīng)用到實(shí)際應(yīng)用中。二設(shè)計(jì)原理及程序分析 2.1數(shù)字濾波器的基本概念從輸入信號(hào)中濾出噪聲和干擾以提取有用信息的過程稱為濾波,相應(yīng)的裝置稱為濾波器。如果濾波器的輸入和輸出均為離散信號(hào),稱該濾波器為數(shù)字濾波器。當(dāng)濾波器的輸出信號(hào)為輸入端的線性函數(shù)時(shí),該濾波器稱為線性濾波器,否則就稱為非線性濾波器。一個(gè)典型的數(shù)字濾波器的框圖如圖2-1所示。

5、設(shè)輸入信號(hào)為x(n),輸出信號(hào)為y(n),該數(shù)字濾波器可用以下差分方程來表示: (2-1)式中,稱為濾波器系數(shù)。當(dāng)時(shí),上式變?yōu)椋?(2-2)這種濾波器稱為全零點(diǎn)濾波器。如果,時(shí),則稱為全極點(diǎn)濾波器或遞歸濾波器。由上式,可知數(shù)字濾波器的傳遞函數(shù)為: (2-3)其單位沖擊響應(yīng)函數(shù)為: (2-4) (2-5)如果當(dāng)n<0時(shí),有h(n)=0,這樣的濾波器系統(tǒng)稱之為因果系統(tǒng)。如果沖激響應(yīng)函數(shù)是有限長的,即 (2-6)則稱此濾波器為有限沖激響應(yīng)FIR(FiniteImpulseResponse)濾波器,否則,稱之為無限沖激響應(yīng)IIR(InfiniteImpulseResponse)濾波器。如果h(n

6、)滿足如下條件:則稱此濾波器是因果的,并且是穩(wěn)定的。2.2自適應(yīng)濾波器原理所謂的自適應(yīng)濾波,就是利用前一時(shí)刻以獲得的濾波器參數(shù)的結(jié)果,自動(dòng)的調(diào)節(jié)現(xiàn)時(shí)刻的濾波器參數(shù),以適應(yīng)信號(hào)和噪聲未知的或隨時(shí)間變化的統(tǒng)計(jì)特性,從而實(shí)現(xiàn)最優(yōu)濾波。自適應(yīng)濾波器實(shí)質(zhì)上就是一種能調(diào)節(jié)其自身傳輸特性以達(dá)到最優(yōu)的維納濾波器。自適應(yīng)濾波器不需要關(guān)于輸入信號(hào)的先驗(yàn)知識(shí),計(jì)算量小,特別適用于實(shí)時(shí)處理。由于無法預(yù)先知道信號(hào)和噪聲的特性或者它們是隨時(shí)間變化的,僅僅用FIR和II種具有固定濾波系數(shù)的濾波器無法實(shí)現(xiàn)最優(yōu)濾波。在這種情況下,必須設(shè)計(jì)自適應(yīng)濾波器,以跟蹤信號(hào)和噪聲的變化。自適應(yīng)濾波器的特性變化是由自適應(yīng)算法通過調(diào)整濾波器系

7、數(shù)來實(shí)現(xiàn)的。一般而言,自適應(yīng)濾波器由兩部分組成,一是濾波器結(jié)構(gòu),二是調(diào)整濾波器系數(shù)的自適應(yīng)算法。自適應(yīng)濾波器的結(jié)構(gòu)采用FIR或IIR結(jié)構(gòu)均可,由于IIR濾波器存在穩(wěn)定性問題,因此一般采用FIR濾波器作為自適應(yīng)濾波器的結(jié)構(gòu)。圖2.2示出了自適應(yīng)濾波器的一般結(jié)構(gòu)。圖2.2為自適應(yīng)濾波器結(jié)構(gòu)的一般形式,圖中x (k)輸入信號(hào),通過權(quán)系數(shù)可調(diào)的數(shù)字濾波器后產(chǎn)生輸出信號(hào)y (k),將輸出信號(hào)y (k)與標(biāo)準(zhǔn)信號(hào)(又稱期望信號(hào))d(k)進(jìn)行比較,得到誤差信號(hào)e (k)。e (k)和x (k)通過自適應(yīng)算法對(duì)濾波器的權(quán)系數(shù)進(jìn)行調(diào)整,調(diào)整圖2.2 自適應(yīng)濾波器結(jié)構(gòu)的一般形式 圖2.3 自適應(yīng)濾波器的系統(tǒng)識(shí)別框

8、圖的目的使得誤差信號(hào)e (k)最小。重復(fù)上面過程,濾波器在自己的工作過程中逐漸了解到輸入信號(hào)和噪聲的統(tǒng)計(jì)規(guī)律,并以此為根據(jù)自動(dòng)調(diào)整濾波器權(quán)系數(shù),從而達(dá)到最佳的濾波效果。一旦輸入的統(tǒng)計(jì)規(guī)律發(fā)生了變化,濾波器能夠自動(dòng)跟蹤輸入信號(hào)變化,自動(dòng)調(diào)整濾波器的權(quán)系數(shù),最終達(dá)到濾波效果,實(shí)現(xiàn)自適應(yīng)過程。圖2-3是使用自適應(yīng)濾波器的系統(tǒng)識(shí)別原理圖。自適應(yīng)濾波器的結(jié)構(gòu)可以采用FIR或IIR濾波器存在穩(wěn)定性問題,因此一般采用FIR濾波器作為自適應(yīng)濾波器的結(jié)構(gòu)。自適應(yīng)FIR濾波器結(jié)構(gòu)又可分為3種結(jié)構(gòu)類型:橫向型結(jié)構(gòu)(Transversal Structure)、對(duì)稱橫向型結(jié)構(gòu)(Symmetric Transversa

9、l Structure)以及格型結(jié)構(gòu)(Lattice Struture)。本文采用自適應(yīng)濾波器設(shè)計(jì)中最常用的FIR橫向型結(jié)構(gòu)。2.3自適應(yīng)濾波算法2.3.1最小均方算法(LMS)算法由Widrow和Hoff引入的最小均方(LMS)算法,由于其簡(jiǎn)單性、運(yùn)算高效性各種運(yùn)行條件下良好的性能,而被廣泛應(yīng)用?;谔荻鹊淖钚【?LMS)算法是最基本的算法,其含義相對(duì)簡(jiǎn)單明了。選定均方誤差為權(quán)矢量二次函數(shù)時(shí),性能度量曲線可以形象地看成一個(gè)碗形曲面這樣自適應(yīng)處理器的任務(wù)便是不斷地向最低點(diǎn)逼近,即可以通過計(jì)算梯度的方法實(shí)現(xiàn)性能度量的最優(yōu)化。而基于梯度的算法中,最簡(jiǎn)單的一種就是最小均方算法LMS算法,LMS算法

10、使用的準(zhǔn)則是使均衡器的期望輸出值和實(shí)際輸出值之間的均方誤差(MSE)最小化的準(zhǔn)則,依據(jù)輸入信號(hào)在迭代過程中估計(jì)梯度矢量,并更新權(quán)系數(shù)以達(dá)到最優(yōu)的自適應(yīng)迭代算法。這算法不需要計(jì)算相應(yīng)的相關(guān)函數(shù),也不需要進(jìn)行矩陣運(yùn)算。自適應(yīng)濾波器最普通的應(yīng)用就是橫向結(jié)構(gòu)。濾波器的輸出信號(hào)y(n)是y(n) (2-7)T表示轉(zhuǎn)置矩陣, n是時(shí)間指針,N是濾波器次數(shù)。這個(gè)例子就是有限脈沖響應(yīng)濾波器的形式,為x(n)和w(n)兩個(gè)矩陣卷積。這種自適應(yīng)算法使用誤差信號(hào) (2-8)為了方便起見,將上述式子表示為向量形式,則上述式子表示為: (2-9)誤差序列可寫為 (2-10)其中d(n)是期望信號(hào),y(n)是濾波器的輸出

11、。使用輸入向量x(n)和e(n)來更新自適應(yīng)濾波器的最小化標(biāo)準(zhǔn)的相關(guān)系數(shù)。顯然,自適應(yīng)濾波器控制機(jī)理是用誤差序列e(n)按照某種準(zhǔn)則和算法對(duì)其系數(shù)wi(n),i=1,2,N進(jìn)行調(diào)節(jié)的,最終使自適應(yīng)濾波的目標(biāo)(代價(jià))函數(shù)最小化,達(dá)到最佳濾波狀態(tài)。本節(jié)所用的標(biāo)準(zhǔn)是最小均方誤差(MSE)。 (2-11)E表示算子期望。假如公式中的y(n)被公式(3.3)取代,公式(3.5)就可以表示為 (2-12)是自相關(guān)矩陣,是輸入信號(hào)的自相關(guān)矩陣。是互相關(guān)向量,也指出了期望信號(hào)d(n)和輸入信號(hào)向量x(n)的相互關(guān)矢量。由式(2-12)可見,自適應(yīng)濾波器的代價(jià)函數(shù)是延遲線抽頭系數(shù)的二次函數(shù)。當(dāng)矩陣R和矢量P己知

12、時(shí),可以由權(quán)系數(shù)矢量w直接求其解。最優(yōu)解最小化MSE,源自解這個(gè)公式 (2-13)將式(2-12)對(duì)w求其偏導(dǎo)數(shù),并令其等于零,假設(shè)矩陣R滿秩(非奇異),可得代價(jià)函數(shù)最小的最佳濾波系數(shù) (2-14)這個(gè)解稱為維納解,即最佳濾波系數(shù)值。因?yàn)榫秸`差(MSE)函數(shù)是濾波系數(shù)w的二次方程,由此形成一個(gè)多維的超拋物面,這好像一個(gè)碗狀曲面又具有唯一的碗底最小點(diǎn),通常稱之為自適應(yīng)濾波器的誤差性能曲面。當(dāng)濾波器工作在平穩(wěn)隨機(jī)過程的環(huán)境下,這個(gè)誤差性能曲面就具有固定邊緣的恒定形狀。自適應(yīng)濾波系數(shù)的起始值wi(0),i=1,2,N是任意值,位于誤差性能曲面上某一點(diǎn),經(jīng)過自適應(yīng)調(diào)節(jié)過程,使對(duì)應(yīng)于濾波系數(shù)變化的點(diǎn)移

13、動(dòng),朝碗底最小點(diǎn)方向移動(dòng),最終到達(dá)碗底最小點(diǎn),實(shí)現(xiàn)了最佳維納濾波。自適應(yīng)過程是在梯度矢量的負(fù)方向接連的校正濾波系數(shù)的,即在誤差性能曲面的最陡下降法方向移動(dòng)和逐步校正濾波系數(shù),最終到達(dá)均方誤差為最小的碗底最小點(diǎn),獲得最佳濾波或準(zhǔn)最優(yōu)工作狀態(tài)。廣泛使用的LMS算法是一種選擇性法適應(yīng)采樣和采樣基礎(chǔ)。這個(gè)方法可以避免復(fù)雜的計(jì)算。LMS算法是最陡下降法,在這個(gè)算法中,向量w(n+1)通過改變對(duì)最小均方誤差性能的負(fù)梯度比例自適應(yīng)濾波算法及應(yīng)用研究來增強(qiáng)。對(duì)于LMS算法梯度v(n)通過假設(shè)平方誤差。2(n)作為公式2-13的MSE來預(yù)測(cè)。因此,梯度預(yù)測(cè)可以單一化表示為: (2-15)在實(shí)際應(yīng)用中,2u經(jīng)常用

14、來代替u。瞬間梯度預(yù)測(cè)產(chǎn)生的Widrow一Hoff LMS算法,w(n)為自適應(yīng)濾波器在n時(shí)刻的濾波系數(shù)或權(quán)矢量。按照最陡下降法調(diào)節(jié)濾波系數(shù),則在n+1時(shí)刻的濾波系數(shù)或權(quán)矢量w(n+l)可以用下列簡(jiǎn)單遞歸關(guān)系來計(jì)算: (2-16)u是自適應(yīng)步長來控制穩(wěn)定性和收斂率。這種瞬時(shí)估計(jì)是無偏的,因?yàn)樗钠谕礒等于最陡下降法的梯度矢量。以任意初始向量w(0)來開始,向量w(n)集中在最佳解決方法,假如選擇u (2-17)為矩陣R的最大特征值,受限制于 (2-18)Tr.為指示矩陣的軌跡,是平均輸入功率。對(duì)于自適應(yīng)信號(hào)處理應(yīng)用,最重要的實(shí)際考慮是收斂速度,決定濾波器跟蹤不穩(wěn)定型號(hào)的能力??傮w來說,權(quán)向量

15、要獲得收斂只有當(dāng)最緩慢的權(quán)集中一點(diǎn)。這個(gè)最慢的時(shí)間 (2-19)這個(gè)指出時(shí)間連續(xù)相反的以u(píng)的比例收斂,并且依靠輸入矩陣的自相關(guān)特征值。具有全異的特征值,規(guī)定時(shí)間是受最慢模式的限制。以梯度預(yù)測(cè)為基礎(chǔ)的自適應(yīng)導(dǎo)致噪聲矩陣的權(quán)向量,因此會(huì)有性能的損失。這個(gè)自適應(yīng)處理的噪聲導(dǎo)致穩(wěn)態(tài)權(quán)向量隨意的改變?yōu)樽钸m宜的權(quán)向量。穩(wěn)態(tài)權(quán)向量的精度通過超額的最小均方誤差來測(cè)量。這個(gè)LMS算法超過EMS的是 (2-20)是MSE在穩(wěn)態(tài)的最小值。公式(2-19)和(2-20)產(chǎn)生LMS算法基本協(xié)定:為了在穩(wěn)態(tài)獲得高精度(低超自適應(yīng)濾波算法及應(yīng)用研究額MSE),需要u的最小值,但是也會(huì)降低收斂率。后面會(huì)有進(jìn)一步關(guān)于LMS算法

16、特征的討論。對(duì)于N維更新u*e(n)是常數(shù),誤差信號(hào)e(n)乘以u(píng)得到u*e(n)。這個(gè)常數(shù)首先計(jì)算,然后乘以x(n)來更新w(n)。自適應(yīng)LMS算法如同最陡下降法,利用時(shí)間n=0的濾波系數(shù)矢量為任意的起始值w(0),然后開始LMS算法的計(jì)算,其步驟如下:l)由現(xiàn)在時(shí)刻n的濾波器濾波系數(shù)矢量估值w(n),輸入信號(hào)矢量x(n)及期望信號(hào)d(n),計(jì)算誤差信號(hào)e(n): (2-21)2)利用遞歸法計(jì)算濾波系數(shù)矢量的更新估值。3)將時(shí)間指數(shù)n增加1,回到第一步驟,重復(fù)上述計(jì)算步驟,一直到達(dá)穩(wěn)定狀態(tài)為止。由此可見,自適應(yīng)LMS算法簡(jiǎn)單,它既不需要計(jì)算輸入信號(hào)的相關(guān)函數(shù),又不要求矩陣之逆。因而得到了廣泛

17、的應(yīng)用。2.3.2遞推最小二乘法(RLS)算法 從2.1節(jié)的分析得知,LMS算法的收斂速度很慢,為了得到較塊的收斂速度,有必要設(shè)計(jì)包含附加參數(shù)的更復(fù)雜的算法。特別是,如果矩陣R是N×N的且特征值為,則可以使用一種含有N個(gè)參數(shù)的算法,其中每個(gè)參數(shù)對(duì)應(yīng)一個(gè)特征值。 在快速收斂算法的推導(dǎo)中,我們將采用最小二乘法。因此,將直接處理接收數(shù)據(jù),使二次性能指數(shù)最小,而以前是使平方誤差的期望值最小。這意味著,用時(shí)間平均而不是統(tǒng)計(jì)平均來表示性能指數(shù)。 基于時(shí)間平均的最小平方誤差被定義如下: (2-22)式中,是接近1,但是小于1的加權(quán)因子,e*(i,n)是e(i,n)的復(fù)共軛,且誤差e(i,n)為:

18、(2-23)且 (2-24)式中,x(i)是i時(shí)刻的輸入數(shù)據(jù)向量,w(n)是n時(shí)刻的新的抽頭增益向量。因而e(i,n)是用n時(shí)刻的抽頭增益向量測(cè)試i時(shí)刻的舊數(shù)據(jù)所得的誤差,J(n)是在所有舊數(shù)據(jù)上用新抽頭增益所得的累計(jì)平方誤差。要完成RLS算法就要找到均衡器的抽頭增益向量w(n),使得累計(jì)平方誤差J(n)最小。為了測(cè)試新的抽頭增益向量,會(huì)用到那些先前的數(shù)據(jù)。而因子會(huì)在計(jì)算時(shí)更依賴于新近的數(shù)據(jù),也就是說,J(n)會(huì)丟掉非穩(wěn)定環(huán)境中的較舊的數(shù)據(jù)。如果信道是穩(wěn)定的,那么可以設(shè)為1。為了獲得J(n)的最小值,可使J(n)的梯度為0,即,通過運(yùn)算可知: (2-25)式中,是RLS均衡其的最佳抽頭增益向量

19、。 (2-26) (2-27)式(2-26)中的方陣R(n)是輸入數(shù)據(jù)向量x(i)的確定相關(guān)矩陣,式(2-26)中向量P(n)是輸入向量x(i)和期望輸出d(i)之間的確定互相關(guān)矩陣。要用式(2-25)計(jì)算均衡器的抽頭增益向量,就需要計(jì)算。 從式(2-26)中R(n)的定義可知,我們可以得到關(guān)于R(n-1)的遞歸公式。 (2-28)由于式(2-28)中的三項(xiàng)都是N×N的方陣,我們可以使用方程倒數(shù)的引理得到遞歸公式: (2-29)式中 (2-30)根據(jù)上述遞歸公式,可知: (2-31)式中 (2-32)初始化:是一個(gè)正常數(shù)計(jì)算:對(duì)于n=1,2,計(jì)算 是一個(gè)可以改變均衡器性能的抽頭系數(shù)。

20、如果信道是非時(shí)變的,那么可以設(shè)為1。而通常的取值為0.8<<1。值對(duì)收斂速率沒有影響,但是它影響著RLS算法的跟蹤能力。值越小,均衡器的跟蹤能力更強(qiáng)。但是,如果值太小,均衡器將會(huì)不穩(wěn)定。2.4 基于DSP實(shí)現(xiàn)自適應(yīng)濾波器2.4.1自適應(yīng)濾波算法的DSP實(shí)現(xiàn)為了提高LMS 算法的處理速度及減小系統(tǒng)的硬件規(guī)模, 在實(shí)現(xiàn)濾波器算法時(shí), 采用了TMS320C54xx 作為核心芯片。由于該處理器采用改進(jìn)型結(jié)構(gòu),具有高度并行性,同時(shí)擁有高度集成的指令系統(tǒng),簡(jiǎn)化編程過程,模塊化結(jié)構(gòu)程序設(shè)計(jì)增強(qiáng)了程序的可移植性。利用TMS320C54xx實(shí)現(xiàn)LMS 自適應(yīng)算法時(shí),存儲(chǔ)器中數(shù)據(jù)的存放形式對(duì)DSP 的

21、有效運(yùn)用有著特殊的意義,合理的存放形式,可以使算法實(shí)現(xiàn)起來更加快速和高效,為了實(shí)現(xiàn)算法中輸入樣值x(n) 和濾波器系數(shù)W(n) 的對(duì)應(yīng)項(xiàng)相乘,他們?cè)诖鎯?chǔ)器中的存放形式如圖2.4 所示。圖2.4 TMS320C54xx自適應(yīng)濾波器存儲(chǔ)器組織形式實(shí)驗(yàn)中采用的自適應(yīng)濾波器采用16階FIR濾波器,采用相同的信號(hào)作為參考d(n)和輸入信號(hào)x(n),并采用上一時(shí)刻的誤差值來修正本時(shí)刻的濾波器系數(shù),2取值0.0005,對(duì)濾波器輸出除128進(jìn)行幅度限制。程序設(shè)計(jì)的整個(gè)實(shí)現(xiàn)過程主要分為3個(gè)步:(1) 濾波運(yùn)算前的相關(guān)運(yùn)算單元、寄存器以及變量的初始化;原始信號(hào)xxi=256*sin(i*2*PI/34); (2)

22、 根據(jù)輸入的采樣值計(jì)算濾波器的輸出并求出誤差; 這一步是最重要的濾波計(jì)算,我們用FIRLMS(int *nx,float *nh,int nError,int nCoeffNumber) 這個(gè)函數(shù)來實(shí)現(xiàn)。其完整代碼是int FIRLMS(int *nx,float *nh,int nError,int nCoeffNumber)int i,r;float fWork;r=0;for ( i=0;i<nCoeffNumber;i+ )fWork=nxi*nError*fU;nhi+=fWork;r+=(nxi-i*nhi);r/=128;return r;收斂因子fU=0.0005。nEr

23、ror是上一次的誤差值, fWork是當(dāng)前的濾波器權(quán)系數(shù),輸出值r。這里實(shí)現(xiàn)自適應(yīng)算法中的公式。輸出值y(n)等于輸入值x(n-1)*w(i)的積分。½½½ (3) 根據(jù)LMS算法的迭代公式更新濾波器參數(shù),有新的采樣輸入后轉(zhuǎn)到第二步循環(huán)執(zhí)行。把一信號(hào)進(jìn)行采樣。把采樣點(diǎn)放在數(shù)字中。這里用到了輸入信號(hào)數(shù)組xx,輸出信號(hào)數(shù)組rr,誤差數(shù)組wc,以及濾波器權(quán)系數(shù)h。通過for循環(huán)語句進(jìn)行一個(gè)一個(gè)樣點(diǎn)值濾波計(jì)算。得到想要的結(jié)果。for ( i=COEFFNUMBER+1;i<INPUTNUMBER;i+ )nLastOutput=FIRLMS(xx+i,h,nLast

24、Output-xxi-1,COEFFNUMBER);rri=nLastOutput;wci=rri-xxi;用FIRLMS函數(shù)得到了一個(gè)濾波后的樣點(diǎn)信號(hào)值nLastOutput 存放在輸出信號(hào)數(shù)組rr中。for循環(huán)一個(gè)一個(gè)得到濾波過的信號(hào)值第INPUTNUMBER=1024個(gè)為止。根據(jù)算法和DSP程序, 在CCS 環(huán)境下編譯,連接生成公共目標(biāo)代碼文件,在線下載到DSP 中運(yùn)行。為了能觀察到相應(yīng)的波形, 在CCS 環(huán)境下選擇View Grap h Time Freqency 進(jìn)入圖形觀察窗口,在“Graph Property Dialog”窗口中選定相應(yīng)類型的值。將編譯產(chǎn)生的可執(zhí)行文件下載到DS

25、P芯片中,經(jīng)過運(yùn)行得到圖4.5輸入波形、圖4.6濾波后輸出信號(hào)波形與圖2.7自適應(yīng)誤差e(n)波形圖2.5輸出信號(hào)原始波形圖2.6濾波后輸出信號(hào)的波形圖2.7 自適應(yīng)誤差e(n)波形三設(shè)計(jì)步驟1. 查找有關(guān)自適應(yīng)濾波器資料,從而了解自適應(yīng)濾波器原理以及與其他濾波器區(qū)別。2. 查找與自適應(yīng)濾波器與DSP實(shí)現(xiàn)資料,從中學(xué)習(xí)DSP實(shí)驗(yàn)自適應(yīng)濾波器方法。3. 學(xué)習(xí)LMS算法。4. 根據(jù)LMS算法編寫DSP程序,調(diào)試并下載到DSP芯片中,在CCS 環(huán)境下編譯,連接生成公共目標(biāo)代碼文件,在線下載到DSP 中運(yùn)行,并觀察相應(yīng)的波形。5. 記錄所編寫代碼,撰寫課程設(shè)計(jì)。四設(shè)計(jì)心得通過此次課程設(shè)計(jì),使我了解到自

26、適應(yīng)濾波器在統(tǒng)計(jì)信號(hào)處理的中的重要性,了解到在實(shí)際應(yīng)用中,由于沒有充足的信息來設(shè)計(jì)固定系數(shù)的數(shù)字濾波器,或者設(shè)計(jì)規(guī)則會(huì)在濾波器正常運(yùn)行時(shí)改變,自適應(yīng)濾波器所能發(fā)揮的關(guān)鍵作用。并且在設(shè)計(jì)過程中,我學(xué)會(huì)到自適應(yīng)濾波器設(shè)計(jì)原理以及最小均方(LMS)算法、遞歸最小二乘(RLS)算法等自適應(yīng)算法,同時(shí)初步認(rèn)識(shí)到DSP芯片在數(shù)字信號(hào)處理方面巨大的優(yōu)勢(shì),這對(duì)我今后的學(xué)習(xí)與工作有很深遠(yuǎn)的影響。五參考文獻(xiàn) 1鄒彥等. DSP原理及應(yīng)用. 北京.電子工業(yè)出版社,2008.2趙洪亮等. TMS320C55xDSP應(yīng)用系統(tǒng)設(shè)計(jì). 北京:北京航空航天大學(xué)出版社,2008.3張志勇.精通MATLAB6.5M.北京:北京航

27、空航天大學(xué)出版社,20034西蒙赫金.自適應(yīng)濾波器原理.北京:電子工業(yè)出版社,2003 5 何振亞.自適應(yīng)信號(hào)處理.北京:科學(xué)出版社,2002附件源程序清單:/*Main()主函數(shù)。 */ Example For ICETEK-VC5416-EDU / CTR Version : V4 / Filename: FirLms.c / Project : FirLms.pjt / Version : 2.00 / Write by: Daniel Hawk / Company : Realtimedsp Co.Ltd. / / All Rights opened & no Onus 200

28、5.06 /#include"math.h"#define PI 3.1415926#define COEFFNUMBER 16#define INPUTNUMBER 1024int FIRLMS(int *nx,float *nh,int nError,int nCoeffNumber);float hCOEFFNUMBER,fU;int xxINPUTNUMBER,rrINPUTNUMBER,wcINPUTNUMBER;main()int i,nLastOutput;nLastOutput=0;fU=0.0005;for ( i=0;i<COEFFNUMBER;i

29、+ )hi=0;for ( i=0;i<INPUTNUMBER;i+ )xxi=256*sin(i*2*PI/34);rri=wci=0;for ( i=COEFFNUMBER+1;i<INPUTNUMBER;i+ )nLastOutput=FIRLMS(xx+i,h,nLastOutput-xxi-1,COEFFNUMBER);/ break pointrri=nLastOutput;wci=rri-xxi;exit(0);int FIRLMS(int *nx,float *nh,int nError,int nCoeffNumber)int i,r;float fWork;r=

30、0;for ( i=0;i<nCoeffNumber;i+ )fWork=nxi*nError*fU;nhi+=fWork;r+=(nxi-i*nhi);r/=128;return r;/* func .h 頭文件*/void interrupt tint( void );void CLK_init( void );void SDRAM_init( void );void INTR_init( void );void TIME_init(void);void TMCR_Reset( void );void SetDSPPLL(unsigned int uPLL);/* scancode.

31、h 頭文件*/#define SCANCODE_0 0x70#define SCANCODE_1 0x69#define SCANCODE_2 0x72#define SCANCODE_3 0x7A#define SCANCODE_4 0x6B#define SCANCODE_5 0x73#define SCANCODE_6 0x74#define SCANCODE_7 0x6C#define SCANCODE_8 0x75#define SCANCODE_9 0x7D#define SCANCODE_Del 0x49#define SCANCODE_Enter 0x5A#define SCA

32、NCODE_Plus 0x79#define SCANCODE_Minus 0x7B#define SCANCODE_Mult 0x7C#define SCANCODE_Divid 0x4A#define SCANCODE_Num 0x77/* util.h 頭文件*/* * Copyright (C) 2001, Spectrum Digital, Inc. All Rights Reserved. */ #define DSP_CLKIN 20#define NULLLOOP_CLK 20typedef struct int freq; / DSP operating clock int c

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論