基于DSP的FIR低通濾波器畢業(yè)設(shè)計(jì)_第1頁
基于DSP的FIR低通濾波器畢業(yè)設(shè)計(jì)_第2頁
基于DSP的FIR低通濾波器畢業(yè)設(shè)計(jì)_第3頁
基于DSP的FIR低通濾波器畢業(yè)設(shè)計(jì)_第4頁
基于DSP的FIR低通濾波器畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 PAGE25 / NUMPAGES31師大學(xué)本科畢業(yè)設(shè)計(jì)基于DSP的FIR濾波器設(shè)計(jì)學(xué)生333院系名稱物理與電子工程學(xué)院專業(yè)名稱電子信息工程班 級33333學(xué) 號33333指導(dǎo)教師完成時間2014年 5月 10日基于DSP的FIR濾波器設(shè)計(jì) 電子信息工程專業(yè)學(xué)生 曾慧 指導(dǎo)教師 汪文蝶摘要隨著科學(xué)技術(shù)和信息處理的高速發(fā)展,目前數(shù)字信號處理已經(jīng)在電子信息、無線電、自動控制等得到廣泛應(yīng)用。本文基于DSP完成了FIR低通濾波器設(shè)計(jì)。介紹了FIR數(shù)字濾波的特點(diǎn)和設(shè)計(jì)方法以與FIR低通濾波器的設(shè)計(jì)過程。主要采用了布拉克曼(Blackman)窗函數(shù)實(shí)現(xiàn)FIR低通濾波器,并給出了MATLAB仿真結(jié)果。最終

2、基于DSP在TMS320VC5009平臺上用C語言編程在CCS軟件上實(shí)現(xiàn)了通帶邊緣頻率10KHz,阻帶邊緣頻率22KHz,阻帶衰減75dB,采樣頻率50KHz的FIR低通濾波器。關(guān)鍵詞:FIR低通濾波器 DSP CCS 窗函數(shù) MATLABDSP-based FIR Filter DesignAbstractWith the rapid development of science and technology and information processing, the current digital signal processing has been widely applied in

3、 electronic information, radio, automatic control.Based on DSP completed the FIR low-pass filter design. Describes the characteristics and design method of FIR digital filter and FIR low-pass filter design process.The main use of Blackman (Blackman) window FIR low-pass filter function implementation

4、, and gives the MATLAB simulation results. Ultimately based on DSP using C language programming on the CCS software platform on TMS320VC5009 filter passband edge frequency 10KHz, stopband edge frequency 22KHz, stop-band attenuation 75dB, FIR 50KHz sampling frequency low-pass. Keywords: FIR low-pass

5、filter window function MATLAB DSP CCS目 錄TOC o 1-3 h u HYPERLINK l _Toc15301 摘要 PAGEREF _Toc15301 I HYPERLINK l _Toc29446 Abstract PAGEREF _Toc29446 II HYPERLINK l _Toc6856 1 引言 PAGEREF _Toc6856 1 HYPERLINK l _Toc17888 1.1 選題背景與研究意義 PAGEREF _Toc17888 1 HYPERLINK l _Toc31918 1.2 國外發(fā)展 PAGEREF _Toc31918

6、 1 HYPERLINK l _Toc4722 1.3 研究容 PAGEREF _Toc4722 2 HYPERLINK l _Toc15178 2 FIR濾波器的理論基礎(chǔ) PAGEREF _Toc15178 2 HYPERLINK l _Toc30789 2.1 FIR濾波器的特點(diǎn) PAGEREF _Toc30789 2 HYPERLINK l _Toc30974 2.1.1 FIR濾波器設(shè)計(jì)的特點(diǎn) PAGEREF _Toc30974 3 HYPERLINK l _Toc30020 2.1.2 FIR濾波器的基本結(jié)構(gòu) PAGEREF _Toc30020 3 HYPERLINK l _Toc2

7、1713 2.2 線性相位FIR濾波器的特點(diǎn) PAGEREF _Toc21713 5 HYPERLINK l _Toc2556 2.3 各種窗函數(shù) PAGEREF _Toc2556 6 HYPERLINK l _Toc15414 2.3.1 窗函數(shù)的設(shè)計(jì)思想 PAGEREF _Toc15414 6 HYPERLINK l _Toc2246 2.3.2幾種常用的窗函數(shù)介紹 PAGEREF _Toc2246 8 HYPERLINK l _Toc12300 2.4 用窗函數(shù)設(shè)計(jì)法來設(shè)計(jì)FIR低通濾波器 PAGEREF _Toc12300 9 HYPERLINK l _Toc12102 2.5 MAT

8、LAB仿真 PAGEREF _Toc12102 11 HYPERLINK l _Toc16032 3 DSP的實(shí)現(xiàn)平臺 PAGEREF _Toc16032 13 HYPERLINK l _Toc25834 3.1 DSP硬件開發(fā)環(huán)境 PAGEREF _Toc25834 13 HYPERLINK l _Toc17078 3.1.2 DSP的硬件結(jié)構(gòu)示意圖 PAGEREF _Toc17078 14 HYPERLINK l _Toc3656 3.1.3 TMS320VC5509A基本介紹 PAGEREF _Toc3656 14 HYPERLINK l _Toc14307 3.2 DSP軟件開發(fā)環(huán)境

9、PAGEREF _Toc14307 14 HYPERLINK l _Toc9358 3.3 CCS實(shí)現(xiàn)FIR低通濾波器設(shè)計(jì) PAGEREF _Toc9358 16 HYPERLINK l _Toc14021 4 結(jié)論 PAGEREF _Toc14021 19 HYPERLINK l _Toc31080 4.1 試驗(yàn)結(jié)果分析 PAGEREF _Toc31080 19 HYPERLINK l _Toc32725 4.2 總結(jié) PAGEREF _Toc32725 19 HYPERLINK l _Toc4862 致 PAGEREF _Toc4862 19 HYPERLINK l _Toc29157 參

10、考文獻(xiàn) PAGEREF _Toc29157 20 HYPERLINK l _Toc10490 附錄 PAGEREF _Toc10490 211 引言1.1 選題背景與研究意義 隨著信息技術(shù)和計(jì)算機(jī)學(xué)科的不斷發(fā)展,數(shù)字型號處理從20世紀(jì)60年代以來就迅速的發(fā)展起來。數(shù)字信號處理不僅應(yīng)用在通信、儀器 、工業(yè)控制與自動化、醫(yī)療、軍事、還廣泛應(yīng)用在濾波與變換、音頻、語音、圖象和圖形以與消費(fèi)電子等眾多領(lǐng)域中。總之?dāng)?shù)字信號處理是把信號用數(shù)字或符號表示的序列,通過計(jì)算機(jī)或通用信號處理設(shè)備,用數(shù)字的數(shù)字計(jì)算方法處理(濾波、變換,圖象的壓縮與增強(qiáng)、估值和識別等加工處理等),為了達(dá)到提取有用信息的目的。幾乎所有的

11、工程技術(shù)領(lǐng)域都涉與到數(shù)字信號處理。 在發(fā)展的過程中,與模擬信號處理相比較,數(shù)字信號處理也出現(xiàn)了很多明顯的優(yōu)點(diǎn),如高精度在高精度的系統(tǒng)中,有時只能采用數(shù)字系統(tǒng);靈活性高,數(shù)字系統(tǒng)的性能主要由乘法器的系數(shù)決定,而系數(shù)存放在系數(shù)存儲器中,因而只需改變存儲的系數(shù)就可以得到不同的系統(tǒng),比改變模擬系統(tǒng)方便很多;可靠性強(qiáng),因?yàn)閿?shù)字系統(tǒng)只有兩個信號電平“0”“1”,因而受周圍環(huán)境的溫度與噪聲影響小,因此可靠性強(qiáng);容易大規(guī)模集成,由于數(shù)字部件具有高度規(guī)性,便于大規(guī)模集成、大規(guī)模生產(chǎn)。故產(chǎn)品成品率高;可獲得高性能指標(biāo)等等。由于數(shù)字信號處理的突出優(yōu)點(diǎn),因此他在語音、雷達(dá)、地震測報(bào)、通信、遙感、生物醫(yī)學(xué)、電視、儀器中

12、得到非常廣泛的應(yīng)用。數(shù)字信號處理(DSP)的各種芯片可通過軟件改變參數(shù)來改變?yōu)V波器的特性,具有高的靈活性,而且數(shù)字信號處理應(yīng)用非常廣泛,因此我們要去理解濾波器的工作原理,研究其的設(shè)計(jì)方法,優(yōu)化其設(shè)計(jì)方法。特別是FIR低通濾波器的設(shè)計(jì),與IIR低通濾波器相比,它具有嚴(yán)格的線性相位,同時有可以具有任意的幅度特性。最重要的是FIR濾波器的單位抽樣響應(yīng)是有限長的,因而濾波器一定是穩(wěn)定的。這種獨(dú)特的優(yōu)勢,讓我想去研究關(guān)于數(shù)字處理的FIR濾波器,充分體現(xiàn)FIR濾波器的優(yōu)勢。本課題不僅具有理論意義,同時還具有實(shí)際意義。1.2 國外發(fā)展20世紀(jì)60年代起,隨著信息技術(shù)和計(jì)算機(jī)的快速發(fā)展,數(shù)字信號處理是一門廣泛

13、應(yīng)用與許多領(lǐng)域涉與許多學(xué)科的工學(xué)學(xué)科,并且得到了飛速的發(fā)展,在如今的數(shù)字化時代,它已成為計(jì)算機(jī)、通信、消費(fèi)電子等領(lǐng)域的基本器件。DSP的發(fā)展基本可以分為三個階段: 最初的DSP只是用微處理器來處理,但其處理速度非常慢,根本無法滿足人們的需求。而且只出現(xiàn)在書本上,無法應(yīng)用在實(shí)際中,應(yīng)用非常的狹窄,一般指用在航空航天、軍事上。第一代DSP芯片TMS32010伴隨著半導(dǎo)體技術(shù)和集成電路技術(shù)的發(fā)展而誕生,現(xiàn)在它的運(yùn)算速度快樂幾十倍,在實(shí)際中也得到應(yīng)用,但是它的功耗和尺寸都很大,容量也非常小,而且應(yīng)用非常不靈活。但它也給DSP產(chǎn)生了非常的影響,標(biāo)志著DSP的快速進(jìn)步。到80年代中期,隨著CMOS工藝的D

14、SP芯片應(yīng)運(yùn)而生,其運(yùn)算速度和存儲容量都得到了很大的提高,稱為語音處理和圖象硬件處理技術(shù)的基礎(chǔ)。第三代DSP芯片出現(xiàn)在80年代后期,運(yùn)算速度得到飛速的提高,通信、計(jì)算機(jī)領(lǐng)域也得到了廣泛的使用。DSP不僅在國外,而且最近在中國市場作為整個半導(dǎo)體市場一樣為國際半導(dǎo)體市場的一個組成部分,必然具有國際半導(dǎo)體市場的共性。由于它根植于中國這一特定經(jīng)濟(jì)與社會環(huán)境的土壤中。DSP在中國的發(fā)展具有非常大的市場。隨著社會的快速發(fā)展以與人們對高端產(chǎn)品的喜愛和依賴,以與高端產(chǎn)品給人們帶來的樂趣和用途,促使DSP的快速發(fā)展。MMoIP、數(shù)碼相機(jī)、數(shù)碼手表和手持電子設(shè)備、汽車電子等數(shù)碼產(chǎn)品得到廣泛的使用。在中國市場的迅速

15、發(fā)展促進(jìn)了高性能DSP的廣泛使用。中國的電子產(chǎn)品制造商眾多,對低成本、易使用的DSP需求巨大。DSP主要應(yīng)用在通訊領(lǐng)域、數(shù)字影音的產(chǎn)品,這讓DSP不得不快速的發(fā)展來適應(yīng)人們的需求,提高自身的價值,未來DSP市場競爭將越趨激烈。1.3 研究容 本論文是TI公司近年推出的高性能TMS320VC5509的DSP芯片設(shè)計(jì)濾波器系統(tǒng),基于DSP的FIR有限沖激響應(yīng)濾波器,完成了通帶邊緣頻率10KHz,阻帶邊緣頻率22KHz,阻帶衰減75dB,采樣頻率50KHz的FIR低通濾波器。采用布拉克曼(Blackman)窗函數(shù)在MATLAB和CCS上仿真實(shí)現(xiàn)FIR低通濾波器。 本論文共分為四個部分,第一章為引言部

16、分,介紹DSP與其濾波器的發(fā)展現(xiàn)狀;第二章詳細(xì)FIR濾波器的理論基礎(chǔ),F(xiàn)IR低通濾波器的設(shè)計(jì)法方法與其算法,以與在MATLAB上的仿真。介紹DSP的特點(diǎn)、性能指標(biāo)、軟件開發(fā)工具、指令系統(tǒng)與硬件結(jié)構(gòu);第三章介紹了實(shí)現(xiàn)FIR濾波器實(shí)現(xiàn)的硬件和軟件平臺以與如何在CCS上的實(shí)現(xiàn)。第四章介紹了本次設(shè)計(jì)的結(jié)果分析;其中第二、三章是本論文的核心部分。2 FIR濾波器的理論基礎(chǔ)2.1 FIR濾波器的特點(diǎn) 由于無限長單位沖激響應(yīng)(IIR)數(shù)字濾波器有非常明顯的缺點(diǎn),他的相位是非線性的,若需要線性相位,則要采用全通網(wǎng)絡(luò)進(jìn)行相位校正,然而,圖象處理以與數(shù)據(jù)傳輸都要求有嚴(yán)格的線性相位特性,而有限長單位沖激響應(yīng)(FIR

17、)濾波器就可以做成嚴(yán)格的線性相位,同時有可以具有任意的幅度特性。最重要的是FIR濾波器的單位抽樣響應(yīng)是有限長的,因而濾波器一定是穩(wěn)定的。只要經(jīng)過一定的延時,任何非因果有限長序列都能變成因果有限長序列,因而總能用因果系統(tǒng)來實(shí)現(xiàn),還可以用快速傅里葉變換(FFT)算法來實(shí)現(xiàn)濾波,從而可以提高運(yùn)算效率。因此 FIR濾波器的線性相位是我們研究的重點(diǎn)。實(shí)現(xiàn)數(shù)字濾波器的方法有很多:最開始用到的無限長沖激響應(yīng)IIR濾波器設(shè)計(jì),當(dāng)然它也有很多數(shù)字濾波器的優(yōu)點(diǎn),如:可以利用模擬濾波器設(shè)計(jì)的結(jié)果,而模擬濾波器設(shè)計(jì)有大量圖表可查,因此他方便簡單,但是它有很明顯的缺點(diǎn),就是想為的非線性,但是要想得到線性相位,那必須通用

18、全通網(wǎng)絡(luò)進(jìn)行相位校正,此過程非常復(fù)雜且不易實(shí)現(xiàn)。因此上面提到的FIR濾波器的優(yōu)點(diǎn)就得到了明顯的優(yōu)勢,因此也得到了廣泛的使用。但是要取得很好的衰減特性,F(xiàn)IR濾波器的階次比IIR濾波器的要高。因此要是對于非線性相位的FIR濾波器,一般可以用IIR濾波器來替換,同樣幅度特性,IIR濾波器所需要的階次比FIR濾波器的階次要少得多,所以讓我們最感興趣的是FIR濾波器的線性相位。 FIR濾波器具有獨(dú)到的優(yōu)點(diǎn),它可以在幅度特性隨意設(shè)計(jì)的同時,保證精確、嚴(yán)格的線性相位。2.1.1 FIR濾波器設(shè)計(jì)的特點(diǎn) (1)系統(tǒng)的單位沖激響應(yīng)在有限個值處不為0。 (2)系統(tǒng)函數(shù)在處只有零點(diǎn),即有限z平面只有零點(diǎn),而全部極

19、點(diǎn)都在處,而全部極點(diǎn)都在處(因果系統(tǒng))。 (3)結(jié)構(gòu)上主要是非遞歸結(jié)構(gòu),沒有輸出到輸入的反饋,但有些結(jié)構(gòu)中也包含有反饋的遞歸部分。 最主要的是FIR濾波器具有嚴(yán)格的線性相位和穩(wěn)定性,任何非因果有限長序列都能變成因果有限長序列,因而總能用因果系統(tǒng)來實(shí)現(xiàn)。2.1.2 FIR濾波器的基本結(jié)構(gòu) (1)FIR數(shù)字濾波器的基本原理 設(shè)為濾波器的沖激響應(yīng),輸入信號為 ,則FIR 濾波器就是要實(shí)現(xiàn)下列差分方程: (1)這就是FIR 濾波器的差分方程。FIR 濾波器的最主要的特點(diǎn)是沒有反饋回路,因此它是無條件穩(wěn)定系統(tǒng)。它的單位脈沖響應(yīng)是一個有限長序列。由上面的方程可見,F(xiàn)IR 濾波算法實(shí)際上是一種乘法累加運(yùn)算,

20、它不斷地輸入樣本,經(jīng)延時(Z)做乘法累加,再輸出濾波結(jié)果。對式(1)進(jìn)行Z 變換整理后可得FIR 濾波器的傳遞函數(shù)為: (2) 由式(2)可以看出,F(xiàn)IR 濾波器的一般結(jié)構(gòu)如圖1所示。 圖1 FIR濾波器的結(jié)果 FIR濾波器的單位沖激響應(yīng)是有限長的()其中Z變換為(3) (2)橫截型(卷積型、直接型)結(jié)構(gòu)系統(tǒng)的差分方程表達(dá)式為(4)這是線性移不變系統(tǒng)的卷積和公式,也是的延時鏈的橫向結(jié)構(gòu),也叫直接型結(jié)構(gòu)。 其結(jié)構(gòu)圖如圖2。圖2 FIR濾波器的橫截型結(jié)構(gòu) (3)級聯(lián)型結(jié)構(gòu):將分解成實(shí)數(shù)系數(shù)二階因子的乘積形式 (5) 級聯(lián)型結(jié)構(gòu)圖如圖3。圖3 FIR濾波器的級聯(lián)型結(jié)構(gòu)2.2 線性相位FIR濾波器的特

21、點(diǎn)FIR濾波器的單位沖擊響應(yīng)是有限長的()其中Z變換為(6)這是的多項(xiàng)式。線性相位的條件:的頻率響應(yīng)為(7)當(dāng)為實(shí)數(shù)序列時,可將表示成 (8) 其中是真正的幅度響應(yīng)。而是可正可負(fù)的因此有兩類準(zhǔn)確的線性相位,分別要求滿足 (9) (10) 把 (9)和(10)式的關(guān)系分別代入(8) 中并且考慮(7)式,可得 (11) (12) 化簡得: (13) (14) 化簡:兩式相除 (15) (16) (17)要使(17)成立,必須滿足(18)另一類線性相位,必須要求(19) 要使(19)成立,必須滿足 (20) (21) (22) (22)是FIR濾波器就有線性相位的因果系統(tǒng)的充分條件它要求單位沖激響應(yīng)

22、的序列以為偶對稱中心,此時時間延時等于長度為的一半,即個抽樣周期,當(dāng)N為奇數(shù)時,延時為整數(shù),N為偶數(shù)時延時為整數(shù)加半個抽樣周期,不管N為偶奇,此時都應(yīng)該滿足呈偶對稱。2.3 各種窗函數(shù)2.3.1 窗函數(shù)的設(shè)計(jì)思想一般是先給出所要求的理想的濾波器頻率響應(yīng),要求設(shè)計(jì)一個FIR濾波器頻率響應(yīng)來逼近。但是設(shè)計(jì)時在時域進(jìn)行的,因而先由的傅里葉反變換導(dǎo)出即 (23) 由于是矩形頻率特性,故一定是無限長的序列,且是非因果的,而我們要設(shè)計(jì)的是FIR濾波器,其必然是有限長的,所以要用有限長的來逼近無限長的,最有效的方法是截?cái)?,是用一個有限長度的窗函數(shù)序列來截取即因而窗函數(shù)序列的形狀與長度。 我們以一個截止頻率為

23、的線性相位的理想矩形幅度特性的低通濾波器,設(shè)低通特性的群時延為。 (24)這表明,在通帶圍,的幅度是均勻的,其值為1,相位是 (25)它是中心點(diǎn)在的偶對稱無限長非因果序列,要得到有限長的,一種簡單的方法取矩形窗。 但是按照線性相位濾波器的約束必須是偶對稱,對稱中心應(yīng)為長度的一半,即,因而,所以 (26) (27) (28) 然而加窗處理對理想矩形頻率響應(yīng)產(chǎn)生的幾點(diǎn)影響(1)使理想頻率特性不連續(xù)點(diǎn)點(diǎn)處邊沿加寬,形成一個過渡帶,過渡帶的寬度等于窗的頻率響應(yīng)的主瓣寬度,這里所說的過渡帶是指兩個肩峰之間的寬度,與濾波器的真正過渡帶還有一些區(qū)別,也就是,濾波器的過渡帶比這個數(shù)值要小。(2)在截止頻率的地

24、方,出現(xiàn)最大的肩峰值,肩峰的兩側(cè)形成起伏振蕩,其振蕩幅度取決于旁瓣的相對幅度,而振蕩的多少,則取決于旁瓣的多少。(3)增加截取長度N,則在主瓣附近的窗的頻率響應(yīng)為 (29) 其中,可見,改變N,只能改變窗譜的主瓣肯定,改變w坐標(biāo)的比例以與改變的絕對值大小,二不能改變主瓣與旁瓣的相對比例,而這個相對比列是由決定,例如在矩形窗情況下,最大相對肩峰值為8.95%,N增加時,減小,故起伏振蕩變密,最大肩峰則總是8.95%,這種現(xiàn)象稱為稱為吉布斯(Gibbs)效應(yīng)。 以上討論可以看出,最小阻帶衰減只由形狀決定,不受N的影響,而過渡帶的寬度則既和窗形狀有關(guān),且隨窗寬N的增加而減小。2.3.2幾種常用的窗函

25、數(shù)介紹(1)矩形窗 (30) (31) (32) (2)巴特列特窗(三角窗) (33) (34) 窗譜為 (35) 此時主瓣寬度為,可以看出,三角形窗頻譜密度函數(shù)永遠(yuǎn)是正值。(3)漢寧(hanning)窗漢寧窗又稱升余弦窗 (36) 當(dāng)時,,所以窗譜的幅度函數(shù)為 (37) 這三部分之和使旁瓣互相抵消,能量更集中在主瓣,但是其代價是主瓣寬度比矩形窗的主瓣寬度增加一倍,即為。(4)海明(hamming)窗對升余弦加以改進(jìn),可以得到旁瓣更小的效果,窗形式為 (38) 結(jié)果可以將99.963%的能量集中在窗譜的主瓣,與漢寧窗相比,主瓣寬度一樣,但旁瓣幅度更小,旁瓣峰值小于主瓣峰值的1%。(5)布拉克曼

26、(blackman)窗為了更進(jìn)一步抑制旁瓣,可加上余弦的二次諧波分量,得到布拉克曼窗: (39) 其頻譜的幅度函數(shù)為 (40) 此時主瓣寬度為矩形窗譜主瓣寬度的三倍,記為。表1歸納了以上幾種窗的主要性能,供FIR濾波器時參考。表1 窗函數(shù)基本參數(shù)的比較窗函數(shù)窗譜性能指標(biāo)加窗后濾波性能指標(biāo)旁瓣寬度主瓣寬度過渡帶寬阻帶最小衰減矩形窗-1320.9-21巴特列特-2543.05-25漢寧窗-3143.1-44海明窗-4143.3-53布拉克曼窗-5765.5-74凱澤窗-575-802.4 用窗函數(shù)設(shè)計(jì)法來設(shè)計(jì)FIR低通濾波器 設(shè)計(jì)基于DSP的FIR低通濾波器,其要通帶邊緣頻率10KHz,阻帶邊緣頻

27、率22KHz,阻帶衰減75dB,采樣頻率50KHz。根據(jù)FIR濾波器的設(shè)計(jì)方法和設(shè)計(jì)要求,其設(shè)計(jì)思路和設(shè)計(jì)步驟如下: (41) (42) (43) (44)設(shè)為理想線性相位濾波器: (45)首先由所需低通濾波器的過渡帶求理想低通濾波器的截止(是由兩個肩峰處中點(diǎn))而由之間的過渡帶寬并非兩個肩峰間的頻率差,所以 (46)其對應(yīng)的數(shù)字頻率為:由此可得: (47)其中為線性相位所必需的移位,我們都知道它應(yīng)該滿足。由于,通過查表1得,可以選擇布拉克曼窗函數(shù),其阻帶衰減-74dB所要求的過渡帶的數(shù)字頻域。 (48)所以 (49)代入得: 即 (50) (51) (52)布拉克曼窗函數(shù)的頻譜幅度函數(shù)為: (

28、53)頻譜幅度函數(shù)為: (54)計(jì)算結(jié)果為: (55) FIR低通濾波器的理論設(shè)計(jì)基本完成。 數(shù)字濾波與模擬濾波相比有很多優(yōu)點(diǎn),它除了可避免模擬濾波器固有的電壓漂移、溫度漂移和噪聲等問題外, 還能滿足濾波器對幅度和相位的嚴(yán)格要求。低通有限沖激響應(yīng)濾波器( F in ite ImpulseResponse Filter, FIR 濾波器) 有其獨(dú)特的優(yōu)點(diǎn), 因?yàn)镕IR系統(tǒng)只有零點(diǎn), 系統(tǒng)總是穩(wěn)定的, 且為線性相位,允許實(shí)現(xiàn)多通道濾波器。2.5 MATLAB仿真MATLAB有多種設(shè)計(jì)FIR數(shù)字濾波器的方法,本文主要介紹窗函數(shù)設(shè)計(jì)方法,它的設(shè)計(jì)思路和之前介紹的窗函數(shù)設(shè)計(jì)法一樣,而前面采用是布萊克曼窗

29、函數(shù)設(shè)計(jì)法,MATLAB中編寫程序比CCS中用C語言編寫程序要簡單,只需要把窗函數(shù)設(shè)計(jì)的公式編寫出來即可。首先跟CCS編寫程序一樣,可以編寫兩個子函數(shù),和一個主函數(shù),主函數(shù)通過調(diào)用子函數(shù)來完成。因此應(yīng)該點(diǎn)擊file-new如圖4產(chǎn)生一個.m文件。圖4 MATLAB仿真操作然后再將程序編寫到MATLAB中如圖5。圖5 MATLAB編譯程序步驟FIR濾波器的主程序wst=0.88*pi;wp=0.4*pi;deltaw=wst-wp; %過渡帶寬w的計(jì)算 N0=ceil(11*pi/deltaw); %按布萊克曼窗計(jì)算所需的濾波器長度 N=N0+mod(N0+1,2); %為了實(shí)現(xiàn)第一類偶對稱濾波

30、器,應(yīng)確保其長度N為奇數(shù) n=0:1:N-1; wc=(wst+wp)/2; %截止頻率取為兩邊緣頻率的平均值 hd=ideal(wc,N); %求理想脈沖響應(yīng) wdbla=(blackman(N); %求窗函數(shù) h=hd.*wdbla; %設(shè)計(jì)的脈沖響應(yīng)應(yīng)為理想脈沖響應(yīng)與窗函數(shù)乘積 db,mag,pha,grd,w=myfreqz(h,1); %對設(shè)計(jì)結(jié)果進(jìn)行檢驗(yàn) dw=2*pi/2000; %頻率分辨率 Rp=-(min(db(1:wp/dw+1) %檢驗(yàn)通帶波動 As=-round(max(db(wst/dw+1:501) %檢驗(yàn)最小阻帶衰減 子程序function hd=ideal(w

31、c,M); %理想的頻率響應(yīng)函數(shù)al=(M-1)/2;n=0:(M-1);m=n-al+eps;hd=sin(wc*m)./(pi*m);function db,mag,pha,grd,w=myfreqz(b,a);N=1000;H,w=freqz(b,a,N,whole);H=(H(1:1:501);w=(w(1:1:501);mag=abs(H);db=20*log10(mag+eps)/max(mag);pha=angle(H);grd=grpdelay(b,a,w);編好程序后在運(yùn)行程序,最終得到其波形圖如圖6。圖6 MATLAB仿真結(jié)果3 DSP的實(shí)現(xiàn)平臺3.1 DSP硬件開發(fā)環(huán)境D

32、SP即為數(shù)字信號處理器(DigitalSignalProcessing),是在模擬信號變換成數(shù)字信號以后進(jìn)行高速實(shí)時處理的專用處理器。它的工作原理是將現(xiàn)實(shí)世界的模擬信號轉(zhuǎn)換成數(shù)字信號,再用數(shù)學(xué)方法處理此信號。最后再還原成模擬信號,他的基本流程圖如圖7。圖7 數(shù)字信號處理系統(tǒng)的簡單方框圖 圖4所表示的是模擬信號熟悉處理系統(tǒng)的方框圖,實(shí)際的系統(tǒng)并一定包括它的所有框圖,可以是數(shù)字計(jì)算機(jī)或微處理機(jī),通過軟件編程對輸入信號進(jìn)行預(yù)期處理,這是軟件實(shí)現(xiàn)法。本次設(shè)計(jì)就是采用的軟件實(shí)現(xiàn)法則。 此框圖是DSP實(shí)現(xiàn)的主要過程,因?yàn)镈SP處理的是數(shù)字信號,所以首先應(yīng)該將輸入的前置的模擬信號通過A/D變換器轉(zhuǎn)化為數(shù)字信

33、號,并把它交給DSP處理,DSP根據(jù)設(shè)計(jì)要求經(jīng)過編程處理(如FFT、卷積等變化)得到的結(jié)果為數(shù)字信號,然后把信號傳輸出去。但是最終要在示波器上顯示,還應(yīng)該將得到的數(shù)字信號交給D/A數(shù)模轉(zhuǎn)換器(其轉(zhuǎn)換精度應(yīng)該滿足一定的要求,以達(dá)到較高的運(yùn)算速率和精度),最終再經(jīng)過平滑濾波和插就得到了連續(xù)的模擬波形模擬信號。3.1.2 DSP的硬件結(jié)構(gòu)示意圖 ICETEK-VC5509-A 評估板接口說明實(shí)物圖如圖8和ICETEK-VC5509-A 評估板原理框圖如圖9。 圖8 ICETEK-VC5509-A 實(shí)物圖 圖9 ICETEK-VC5509-A 原理框圖3.1.3 TMS320VC5509A基本介紹 T

34、MS320VC5509A是有TI公司制造的DSP芯片,它具有高性能、低功耗數(shù)字信號處理芯片。 CPU支持部structure是由一個程序總線, 3的數(shù)據(jù)讀總線,兩條數(shù)據(jù)寫總線,并additional buses專用于外周和DMA活動。這些總線提供執(zhí)行多達(dá)3個讀數(shù)據(jù)和2個寫數(shù)據(jù)的能力。與此同時,DMA控制器可以執(zhí)行最多兩個數(shù)據(jù)周期獨(dú)立于CPU的活動。通過輸入和輸出功能和10位的A/ D轉(zhuǎn)換提供足夠的狀態(tài),中斷和位I/ O的液晶顯示器,鍵盤和媒體接口。3.2 DSP軟件開發(fā)環(huán)境 本次試驗(yàn)的研究容主要就是在DSP芯片的集成軟件開發(fā)環(huán)境CCS(Code Composer Studio)中調(diào)試從而實(shí)現(xiàn)數(shù)

35、字濾波功能。(1)安裝CCS (Code Composer Studio)軟件 (點(diǎn)擊setup.exe的安裝文件,選擇安裝目錄,進(jìn)入安裝程序)。安裝完畢后,在安裝“CCS 開發(fā)軟件”目錄中的壓縮文件,“C5000-2.20.00-FULL-to-C5000-2.21.00-FULL.exe”中的升級程序,將CCS2.20 升級到CCS2.21。 (2)設(shè)置CCS工作在軟件仿真環(huán)境 CCS可以工作在純軟件的環(huán)境下,就是由軟件在PC 機(jī)存中構(gòu)造一個虛擬的DSP環(huán)境,可以調(diào)試、運(yùn)行程序。CCS 提供了配置、建立、調(diào)試、跟蹤和分析程序的工具,它便于實(shí)時、嵌入式信號處理程序的編制和測試,能夠加速開發(fā)進(jìn)

36、程,提高工作效率。但一般軟件無法構(gòu)造DSP 中的外設(shè),所以軟件仿真通常用于調(diào)試純軟件的算法和進(jìn)行效率分析等。 在使用軟件仿真方式工作時,無需連接板卡和仿真器等硬件。CCS的軟件設(shè)置過程將安裝好的CCS。 進(jìn)入設(shè)置選擇C5XX functional simulator后選擇Save and quit后點(diǎn)擊“NO”完成軟件的設(shè)置,設(shè)置過程如圖10。圖10 CCS設(shè)置步驟 設(shè)置完成后,雙擊桌面上仿真器初始化圖標(biāo),若初始化完成后出現(xiàn)窗口圖11。圖11 初始化 按“空格”或任意鍵即完成初始化。 Code Composer Studio 2.21 主要完成系統(tǒng)的軟件開發(fā)和調(diào)試。它提供一整套的程序編制、維護(hù)

37、、編譯、調(diào)試環(huán)境,能將匯編語言和C語言程序編譯連接生成COFF (公共目標(biāo)文件)格式的可執(zhí)行文件,并能將程序下載到目標(biāo)DSP 上運(yùn)行調(diào)試。 用戶系統(tǒng)的軟件部分可以由CCS 建立的工程文件進(jìn)行管理,工程一般包含以下幾種文件:瑞泰創(chuàng)新-ICETEK-VC5509-A-USB-EDU 教學(xué)實(shí)驗(yàn)系統(tǒng)軟件實(shí)驗(yàn)指導(dǎo)(1)源程序文件:(*.C 或*.ASM)(2)命令文件(*.CMD)(3)庫文件(*.LIB,*.OBJ)。3.3 CCS實(shí)現(xiàn)FIR低通濾波器設(shè)計(jì)用C語言編程實(shí)現(xiàn)FIR低通濾波器主要是根據(jù)第二章的窗函數(shù)設(shè)計(jì)法的思想進(jìn)行編程。因此C語言應(yīng)該包括兩個子函數(shù)和一個主函數(shù)。子函數(shù)主要是根據(jù)FIR低通濾

38、波器的算法進(jìn)行編程的,子函數(shù)是由和進(jìn)行相乘得到的,函數(shù)為fSum+=(fXni*fHni其函數(shù)流程圖為圖12。圖12 流程圖 根據(jù)DSP的FIR設(shè)計(jì)的原理,通過窗函數(shù)設(shè)計(jì)法,將想要得到的濾波器的截止頻率為10KHz的FIR低通濾波器。 由于窗函數(shù)的設(shè)計(jì)是由理想的和布拉克曼窗函數(shù)相乘得到的低通濾波器函數(shù),這個函數(shù)包括主函數(shù)和兩個子函數(shù),子函數(shù)一個是由和相乘的函數(shù)。另一個是由計(jì)算的結(jié)果的系數(shù)組成,通過for循環(huán)語句,調(diào)用fHni數(shù)組中的每一個參數(shù)與子函數(shù)相乘得到的結(jié)果還回到主函數(shù)中,因此主函數(shù)就包括變量的初始化,以與子函數(shù)的調(diào)用。子函數(shù)如float FIR() /濾波器函數(shù)float fSum;f

39、Sum=0;for ( i=0;i0;i- )fXni=fXni-1;fXn0=sin(double)fSignal1)+cos(double)fSignal2)/6.0;fSignal1+=fStepSignal1; if ( fSignal1=f2PI )fSignal1-=f2PI;fSignal2+=fStepSignal2;if ( fSignal2=f2PI )fSignal2-=f2PI;return(fXn0);主函數(shù)調(diào)用子函數(shù)while ( 1 ) fInput=InputWave(); /輸入函數(shù)的調(diào)用fInnIn=fInput;nIn+; nIn%=256;fOutput

40、=FIR(); /濾波器函數(shù)調(diào)用fOutnOut=fOutput;nOut+;/* break point */if ( nOut=256 )nOut=0; 首先設(shè)置在純軟件下操作,步驟見CCS開發(fā)環(huán)境,初始化完成后,點(diǎn)擊CCS進(jìn)入軟件調(diào)試中。首先新建一個工程并且命名為FIR,此時該工程下的文件為空。將編好的fir.C、clk-init.C文件都添加到工程中。如圖12圖12 CCS編譯圖(2)現(xiàn)在就編譯:選擇菜單中的“Project”的“Rebuild All”進(jìn)行編譯,編譯完成后會在CCS下方的提示框中顯示編譯信息,根據(jù)編譯的提示,修改程序。(3)在main的主函數(shù)中設(shè)置斷點(diǎn)在進(jìn)行編譯。(4

41、)下載程序:執(zhí)行FileLoad Program,然后再打開的提示框中選擇剛剛建立C:ICETEK-VC5509-EDULabLab0501-UseCCSDebugFIR.out 文件。(5)點(diǎn)擊File File I/0在彈出的對話框中進(jìn)行設(shè)置如圖13圖13 輸出設(shè)置窗口設(shè)置完成后,在點(diǎn)擊ViewGraphTime/Frequency在進(jìn)行設(shè)置如圖14。圖14 觀察設(shè)置窗口點(diǎn)擊OK完成設(shè)置。輸出結(jié)果觀察FIR濾波器濾波的結(jié)果如圖15和輸入波形圖16輸出結(jié)果。 圖15 INPUT 圖16 OUTPUT 下面是FFT的濾波結(jié)果如圖17和輸入波形和圖18 FFT輸出波形。 圖17 INPUT 圖1

42、8 OUTPUT 4 結(jié)論4.1 試驗(yàn)結(jié)果分析本次試驗(yàn)結(jié)果不僅在CCS軟件上完成了FIR濾波器的設(shè)計(jì)要求,而且在MATLAB中也得到了低通濾波器的圖形。CCS的結(jié)果分析如下:當(dāng)調(diào)用一個低頻的正弦信號和一個高頻的余弦信號,低頻信號與高頻信號的疊加就使得低頻信號的正弦上產(chǎn)生毛刺,通過FIR濾波器的設(shè)計(jì)要求編寫的C語言程序完成對高頻信號的過濾,最終得到光滑的低頻的正弦信號。而FFT的濾波圖象,就是將高頻的小信號濾掉得到低頻的小信號。MATLAB的結(jié)果分析,在幅度響應(yīng)和頻率的圖形中,在-3dB時,對應(yīng)的頻率是0.59,根據(jù)計(jì)算器截止頻率為147500HZ,相對于截止頻率高了4.75KHz,其結(jié)果不是很

43、理想。4.2 總結(jié) 通過此次畢業(yè)設(shè)計(jì)設(shè)計(jì)的FIR濾波器設(shè)計(jì),讓我對數(shù)字信號有了更深的理解,C語言的編程也更加熟悉,而且對MATLAB也有了一定的認(rèn)識,更重要的是提高了我的學(xué)習(xí)能力和解決問題的能力。如何通過軟件來實(shí)現(xiàn)低通濾波器設(shè)計(jì),而之前經(jīng)常用硬件來實(shí)現(xiàn)濾波器的設(shè)計(jì),硬件實(shí)現(xiàn)的低通濾波器濾波單一,無法改變,硬件設(shè)計(jì)一旦錯了就會造成無法挽回和經(jīng)濟(jì)的浪費(fèi),結(jié)果又得重新開始浪費(fèi)時間。而通過DSP的FIR低通濾波器可以通過改變設(shè)置的參數(shù)來改變?yōu)V波器的截止頻率,使得設(shè)計(jì)非常的靈活,方便且易于修改。而MATLAB在編程上更靈活,功能更強(qiáng)大。在FIR低通濾波器的設(shè)計(jì)中,還可以通過軟件編程和硬件的結(jié)合,通過示波

44、器來看到真實(shí)的低通濾波器的設(shè)計(jì),因?yàn)檐浖€是一個虛擬的東西,最終的成品不僅僅在于軟件上,與實(shí)際的結(jié)合才是真正意義上的設(shè)計(jì)。希望以后能對數(shù)字信號處理應(yīng)用的更廣泛。致 在經(jīng)過為期一個多月的畢業(yè)設(shè)計(jì)的過程中,非常感汪文蝶老師的辛勤指導(dǎo)和幫助,通過汪老師對畢業(yè)設(shè)計(jì)的引導(dǎo),我知道了畢業(yè)設(shè)計(jì)該如何去做,雖然她只是給了我設(shè)計(jì)的思路,但我從中發(fā)現(xiàn)要完成一個畢業(yè)設(shè)計(jì)必須要有基本的理論知識,因此我就先去了解了關(guān)于DSP的FIR濾波器的設(shè)計(jì),F(xiàn)IR濾波器設(shè)計(jì)的理論知識,然后又去了解CCS的安裝和使用原理,這使得我的畢業(yè)設(shè)計(jì)進(jìn)行的還算是順利,但是在后面程序的設(shè)計(jì)中就有一點(diǎn)點(diǎn)問題,因?yàn)槲覍語言了解的不多,但汪老師給我

45、解釋了一次,又有一點(diǎn)的了解,自己又下來不斷的學(xué)習(xí),最終把程序也修改好了,但是因?yàn)闀r間的原因。對于濾波,只在軟件上進(jìn)行。真的非常感汪老師細(xì)心的指導(dǎo)。參考文獻(xiàn)1 程佩青著.數(shù)字信號處理教程.M清華大學(xué).2003.2 順珍,馬英.基于DSP的FIR數(shù)字濾波器設(shè)計(jì)與實(shí)現(xiàn)J.3 王獻(xiàn)峰,石東.基于DSP的FIR數(shù)字濾波器的設(shè)計(jì)與實(shí)現(xiàn). 科技大學(xué)電子信息與自動化學(xué)院, 300222.4 冉茂華.基于DSP的FIR數(shù)字濾波器設(shè)計(jì),理工大學(xué).2006.5 萬松.基于DSP的FIR數(shù)字濾波器設(shè)計(jì),大學(xué).2008.6 宗瀛. DSP原理設(shè)計(jì)與應(yīng)用M. :清華大學(xué),2002.7 王獻(xiàn)峰,石東. 基于DSP的FIR數(shù)

46、字濾波器的設(shè)計(jì)與實(shí)現(xiàn). 科技大學(xué)電子信息與自動化學(xué)院, 300222.8雄偉,鐵勇. DSP芯片的原理與開發(fā)應(yīng)用. 電子工業(yè). 2000.附錄程序1#include myapp.h#include ICETEK-VC5509-EDU.h#include scancode.h#include #define FIRNUMBER 25#define SIGNAL1F 1000#define SIGNAL2F 4500#define SAMPLEF 10000#define PI 3.1415926float InputWave();float FIR();float fHnFIRNUMBER= 0

47、.0,0.0,0.001,-0.002,-0.002,0.01,-0.009, -0.018,0.049,-0.02,0.11,0.28,0.64,0.28, -0.11,-0.02,0.049,-0.018,-0.009,0.01, -0.002,-0.002,0.001,0.0,0.0 ;float fXnFIRNUMBER= 0.0 ;float fInput,fOutput;float fSignal1,fSignal2;float fStepSignal1,fStepSignal2;float f2PI;int i;float fIn256,fOut256;int nIn,nOut;

48、main()nIn=0; nOut=0;f2PI=2*PI;fSignal1=0.0;fSignal2=PI*0.1;fStepSignal1=2*PI/30;fStepSignal2=2*PI*1.4;while ( 1 )fInput=InputWave();fInnIn=fInput;nIn+; nIn%=256;fOutput=FIR();fOutnOut=fOutput;nOut+;/* break point */if ( nOut=256 )nOut=0;float InputWave()for ( i=FIRNUMBER-1;i0;i- )fXni=fXni-1;fXn0=si

49、n(double)fSignal1)+cos(double)fSignal2)/6.0;fSignal1+=fStepSignal1; if ( fSignal1=f2PI )fSignal1-=f2PI;fSignal2+=fStepSignal2;if ( fSignal2=f2PI )fSignal2-=f2PI;return(fXn0);float FIR()float fSum;fSum=0;for ( i=0;iFIRNUMBER;i+ )fSum+=(fXni*fHni);return(fSum);程序2#include myapp.hvoid SDRAM_init( void

50、) ioport unsigned int *ebsr =(unsigned int *)0 x6c00; ioport unsigned int *egcr =(unsigned int *)0 x800; ioport unsigned int *emirst=(unsigned int *)0 x801; /ioport unsigned int *emibe =(unsigned int *)0 x802; ioport unsigned int *ce01 =(unsigned int *)0 x803; /ioport unsigned int *ce02 =(unsigned i

51、nt *)0 x804; /ioport unsigned int *ce03 =(unsigned int *)0 x805; ioport unsigned int *ce11 =(unsigned int *)0 x806; /ioport unsigned int *ce12 =(unsigned int *)0 x807; /ioport unsigned int *ce13 =(unsigned int *)0 x808; ioport unsigned int *ce21 =(unsigned int *)0 x809; /ioport unsigned int *ce22 =(

52、unsigned int *)0 x80A; /ioport unsigned int *ce23 =(unsigned int *)0 x80B; ioport unsigned int *ce31 =(unsigned int *)0 x80C; /ioport unsigned int *ce32 =(unsigned int *)0 x80D; /ioport unsigned int *ce33 =(unsigned int *)0 x80E; ioport unsigned int *sdc1 =(unsigned int *)0 x80F; /ioport unsigned int *sdper =(unsigned int *)0 x810; /ioport unsigned int *sdcnt =(unsigned int *)0 x811; ioport unsigned int *init =(unsigned int *)0 x812; ioport unsigned int *sdc2 =(unsigned int *

溫馨提示

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

評論

0/150

提交評論