DSP課程設(shè)計(jì)報(bào)告_第1頁
DSP課程設(shè)計(jì)報(bào)告_第2頁
DSP課程設(shè)計(jì)報(bào)告_第3頁
DSP課程設(shè)計(jì)報(bào)告_第4頁
DSP課程設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、華北水利水電大學(xué) North China University of Water Resources and Electric Power DSP課程設(shè)計(jì)題目: FIR數(shù)字低通濾波器 學(xué) 院 信息工程學(xué)院 專 業(yè) 電子信息科學(xué)與技術(shù) 姓 名 學(xué) 號 指導(dǎo)教師 摘要1一. 緒論11.1設(shè)計(jì)背景11.2設(shè)計(jì)方法分析1二FIR濾波器設(shè)計(jì)過程22.1 FIR濾波器原理22.2 FIR濾波器的實(shí)現(xiàn)方法32.3 FIR濾波器的MATLAB實(shí)現(xiàn)42.4 設(shè)計(jì)流程圖6三 CCS操作步驟及仿真結(jié)果73.1 工程文件的建立73.2 仿真結(jié)果及分析8四心得與總結(jié)8 1 摘要 當(dāng)前,數(shù)字信號處理技術(shù)受到了人們的廣泛關(guān)

2、注,其理論及算法隨著計(jì)算機(jī)技術(shù)和微電子技術(shù)的發(fā)展得到了飛速地發(fā)展,并被廣泛應(yīng)用于語音和圖象處理、數(shù)字通信、譜分析、模式識別和自動(dòng)控制等領(lǐng)域。數(shù)字濾波器是數(shù)字信號處理中最重要的組成部分之一,幾乎出現(xiàn)在所有的數(shù)字信號處理系統(tǒng)中。設(shè)計(jì)中通過MATLAB環(huán)境中圖形化的方式建立數(shù)字信號處理的模型進(jìn)行DSP的設(shè)計(jì)和仿真驗(yàn)證,將設(shè)計(jì)的圖形文件.mdl直接轉(zhuǎn)換成C語言程序在CCS中運(yùn)行。利用MATLAB軟件開發(fā)產(chǎn)品加速了開發(fā)周期,比直接在CCs中編程方便快捷了很多,對于任何復(fù)雜功能的DSP系統(tǒng),只需要進(jìn)行少量的添加和修改就能完成功能正確的C語言程序設(shè)計(jì)。 一. 緒論1.1設(shè)計(jì)背景一個(gè)實(shí)際的應(yīng)用系統(tǒng)中,由于設(shè)備

3、或者是外界環(huán)境的原因,總存在各種干擾,使信號中混入噪聲,譬如音頻信號中高頻成分的噪聲使得音樂聽起來刺耳,失去了原有悅耳的音質(zhì)。為了提高信號質(zhì)量,可以對信號進(jìn)行濾波,從噪聲中提取信號,即對一個(gè)具有噪聲和信號的混合源進(jìn)行采樣,然后經(jīng)過一個(gè)數(shù)字濾波器,濾除噪聲,提取有用信號。DSP(數(shù)字信號處理器)與一般的微處理器相比有很大的區(qū)別,它所特有的系統(tǒng)結(jié)構(gòu)、指令集合、數(shù)據(jù)流程方式為解決復(fù)雜的數(shù)字信號處理問題提供了便利,本文選用TMS320C54X作為DSP處理芯片,通過對其編程來實(shí)現(xiàn)FIR濾波器。對數(shù)字濾波器而言,從實(shí)現(xiàn)方法上,有FIR濾波器和無限沖激響應(yīng)(IIR)濾波器之分。由于FIR濾波器只有零點(diǎn),因

4、此這一類系統(tǒng)不像IIR系統(tǒng)那樣易取得比較好的通帶與阻帶衰減特性。但是FIR系統(tǒng)有自己突出的優(yōu)點(diǎn):系統(tǒng)總是穩(wěn)定的;易實(shí)現(xiàn)線性相位;允許設(shè)計(jì)多通帶(阻帶)濾波器。其中后兩項(xiàng)是IIR系統(tǒng)不易實(shí)現(xiàn)的。1.2設(shè)計(jì)方法分析 FIR濾波器的設(shè)計(jì)方法分析數(shù)字濾波器依據(jù)沖激響應(yīng)的寬度劃分為有限沖激響應(yīng)(FIR)濾波器和無限沖激響應(yīng)濾波(IIR)。FIR 濾波器是有限長單位沖激響應(yīng)濾波器,在結(jié)構(gòu)上是非遞歸型的,有限沖激響應(yīng)濾波器(FIR),具有以下的優(yōu)點(diǎn):(1)可以在幅度特性隨意設(shè)計(jì)的同時(shí),保證精確、嚴(yán)格的線性相位;(2)由于FIR濾波器的單位脈沖響應(yīng)h(n)是有限長序列,因此F I R 濾波器沒有不穩(wěn)定的問題;

5、(3)由于FIR 濾波器一般為非遞歸結(jié)構(gòu),因此在有限精度運(yùn)算下,不會出現(xiàn)遞歸結(jié)構(gòu)中極性震蕩等不穩(wěn)定現(xiàn)象,誤差較小。FIR 濾波器的設(shè)計(jì)方法有窗函數(shù)設(shè)計(jì)法和頻率采樣設(shè)計(jì)法,下面扼要介紹窗函數(shù)設(shè)計(jì)法。窗函數(shù)法設(shè)計(jì)FIR 濾波器的基本思想是:根據(jù)給定的濾波器技術(shù)指標(biāo),選擇濾波器長度N 和窗函數(shù)(n),使其具有最窄寬度的主瓣和最小的旁瓣。其核心是從給定的頻率特性,通過加窗確定有限長單位脈沖響應(yīng)序列h(n)。給定濾波器的頻率響應(yīng)為Hd(ejw),要求設(shè)計(jì)一個(gè)頻率響應(yīng)為H(ejw)的濾波器來逼近Hd(ejw),其中: 對Hd(ejw)進(jìn)行傅立葉反變換推導(dǎo)出其時(shí)域響應(yīng)hd(n),即 由于hd(n)是無限長序

6、列,且是非因果的。要得到有限長的h(n),需要用一個(gè)有限長的窗口函數(shù)序列(n)來截取h(n),即 二FIR濾波器設(shè)計(jì)過程2.1 FIR濾波器原理數(shù)字濾波是將輸入的信號序列,按規(guī)定的算法進(jìn)行處理,從而得到所期望的輸出序列,F(xiàn)IR濾波器的差分方程為: 對上式進(jìn)行Z變換得到FIR濾波器的傳遞函數(shù)為: 由上式可以看出,H(z)是的N-1次多項(xiàng)式,它在z平面內(nèi)有N-1個(gè)零點(diǎn),同時(shí)在原點(diǎn)處有N-1個(gè)重極點(diǎn)。N階濾波器通常采用N個(gè)延遲單元、N個(gè)加法器與N+1個(gè)乘法器,取圖中(a)、(b)兩種結(jié)構(gòu)。 FIR濾波器的一般結(jié)構(gòu)因?yàn)镕IR濾波器的單位抽樣響應(yīng)是有限長的,所以它永遠(yuǎn)是穩(wěn)定的。另外,若對 h(n)提出一

7、些約束條件,那么可以很容易地使 H(z)具有線性相位,這在信號處理的很多領(lǐng)域是非常重要的。FIR濾波器的設(shè)計(jì)任務(wù),是要決定一個(gè)轉(zhuǎn)移函數(shù)H(z),使它的頻率響應(yīng)滿足給定的要求。這里所說的要求,除了通帶頻率、阻帶頻率及兩個(gè)帶上的最大和最小衰減和外,很重要的一條是保證H(z)具有線性相位。2.2 FIR濾波器的實(shí)現(xiàn)方法 (1)采用DSP(Digital Signal Processing)處理器來實(shí)現(xiàn) DSP處理器是專為數(shù)字信號處理而設(shè)計(jì)的,它的主要數(shù)字運(yùn)算單元是一個(gè)乘累加器,能夠在一個(gè)機(jī)器周期內(nèi)完成一次乘累加運(yùn)算,配有適合于信號處理的指令,具備獨(dú)特的循環(huán)尋址和倒序?qū)ぶ纺芰?。這些特點(diǎn)都非常適合數(shù)字信

8、號處理中的濾波器設(shè)計(jì)的有效實(shí)現(xiàn),并且它速度快,成本低。用DSP芯片實(shí)現(xiàn)數(shù)字濾波除了具有穩(wěn)定性好、精確度高、不受環(huán)境影響外,還具有靈活性好的特點(diǎn)。(2)用計(jì)算機(jī)軟件實(shí)現(xiàn) 軟件實(shí)現(xiàn)方法即是在通用的微型計(jì)算機(jī)上用軟件實(shí)現(xiàn)。利用計(jì)算機(jī)的存儲器、運(yùn)算器和控制器把濾波所要完成的運(yùn)算編成程序通過計(jì)算機(jī)來執(zhí)行,軟件可由使用者自己編寫,也可以使用現(xiàn)成的。但是這種方法速度慢,難以對信號進(jìn)行實(shí)時(shí)處理,雖然可以用快速傅立葉變換算法來加快計(jì)算速度,但要達(dá)到實(shí)時(shí)處理要付出很高的代價(jià)。 (3)用FPGA等可編程器件實(shí)現(xiàn) 使用相關(guān)開發(fā)工具和VHDL等硬件開發(fā)語言,通過軟件編程用硬件實(shí)現(xiàn)特定的數(shù)字濾波算法。這一方法由于具有通用

9、性的特點(diǎn)并可以實(shí)現(xiàn)算法的并行運(yùn)算,無論是作為獨(dú)立的數(shù)字信號處理,還是作為DSP芯片的協(xié)作處理器都是比較活躍的研究領(lǐng)域??梢圆捎肈SP或FPGA來實(shí)現(xiàn)硬件電路。采用固定功能的專用信號處理器實(shí)現(xiàn) (4) 專用信號處理器采用專用集成電路ASIC來實(shí)現(xiàn),適用于過程固定而又追求高速的信號處理任務(wù),是以指定的算法來確定它的結(jié)構(gòu),使用各種隨機(jī)邏輯器件組成的信號處理器。它們體積小、保密性好,具有極高的性能,然而靈活性差。2.3 FIR濾波器的MATLAB實(shí)現(xiàn)MATLAB輔助DSP 實(shí)現(xiàn)FIR ,其總體過程為在DSP中編寫處理程序,在MATLAB中利用濾波器設(shè)計(jì)、分析工具( FDATOOL) ,根據(jù)指定的濾波器

10、性能快速設(shè)計(jì)一個(gè)FIR ,再把濾波器系數(shù)以頭文件形式導(dǎo)入CCS 中,頭文件中MATLAB 輔助DSP 實(shí)現(xiàn)FIR 數(shù)字濾波器含濾波器階數(shù)和系數(shù)數(shù)組,在MATLAB中調(diào)試、運(yùn)行DSP 程序并顯示、分析處理后的數(shù)據(jù)。使用該方法,便于采用匯編語言來實(shí)現(xiàn)程序。頭文件名不變,當(dāng)MATLAB中設(shè)計(jì)的濾波器系數(shù)改變時(shí),相應(yīng)頭文件中系數(shù)也改變,方便程序調(diào)試、仿真。MATLAB集成了一套功能強(qiáng)大的濾波器設(shè)計(jì)工具FDATool(Filter Design & Analysis Tool),可以完成多種濾波器的設(shè)計(jì)、分析和性能評估。(1).打開Filter Design & Analysis Too

11、l單擊MATLAB主窗口下方的“Start”按鈕,選擇菜單“ToolBox” “Filter Design” “Filter Design & Analysis Tool(FDATool)”命令,打開FDATool,如圖1所示。 圖1(2)產(chǎn)生濾波器階數(shù)為81階,這里應(yīng)填80,比階數(shù)少1。窗函數(shù)選擇切比雪夫型(chebyshev),濾波器類型為Lowpass,采樣頻率為20000Hz,通帶截止頻率分別為1000HZ。得圖2 圖2(3).產(chǎn)生濾波器系數(shù),如圖3 圖3 (4)頭文件的產(chǎn)生 (5)選擇所需的型號:(6)生成頭文件 最后將產(chǎn)生的頭文件中的濾波器系數(shù)數(shù)組放入編寫好的濾波器函數(shù)中,

12、并在進(jìn)行CCS中進(jìn)行調(diào)試與測試。 2.4 設(shè)計(jì)流程圖 程序流程圖 (1) 對DSP進(jìn)行初始化,定義DSP的一些向量和工作模式;(2) 為數(shù)字濾波作準(zhǔn)備,將預(yù)先設(shè)計(jì)好的有N個(gè)抽頭的FIR數(shù)字濾波器的沖激響應(yīng)序列h(n)中的N個(gè)數(shù)值放入存儲單元B1BN;(3) 作好濾波準(zhǔn)備工作后,開始進(jìn)行抽樣,并讀入抽樣值,放入存儲單元A1中;(4) 之后便對抽樣值進(jìn)行運(yùn)算處理:(a) 將累加器清零,并設(shè)置兩個(gè)準(zhǔn)備相乘的存儲單元A與B的初始值K和L;(b) 將第K個(gè)抽樣值A(chǔ)K與沖激響應(yīng)序列的第L個(gè)數(shù)值BL相乘(K+L=N+1),并將乘積送入累加器進(jìn)行累加;(c) 將第K-1個(gè)抽樣值A(chǔ)K-1放入AK,此時(shí)AK中原數(shù)

13、值被覆蓋;(d) 重復(fù)(b)(c),直至共完成N次乘加運(yùn)算。(5) 輸出處理結(jié)果;(6) 重復(fù)(3)(5)。三 CCS操作步驟及仿真結(jié)果3.1 工程文件的建立在CCSV3.3中建立新工程,把c源代碼和.cmd文件導(dǎo)入后,外加rts. lib文件,它是TI提供的運(yùn)行時(shí)支持庫, 如果是C代碼寫的源程序, 必須要包含該庫,該庫由TI公司做好放在CCS cgtools lib中。添加完成后,編譯通過后,下載.out文件,導(dǎo)入.dat文件。然后運(yùn)行程序,待程序準(zhǔn)確無誤后,點(diǎn)擊File Loadprogyam mert 打開.out文件3.2 仿真結(jié)果及分析采用CCS 的圖形顯示功能, 分別觀察輸入信號x

14、 ( n)、輸出信號y ( n)的時(shí)域波形和頻域波形, 輸入信號波形如下圖所示: 輸入數(shù)據(jù)時(shí)域圖(Start Address : input) 輸入數(shù)據(jù)頻譜(DisplayType:FFT Magnitude) 輸出數(shù)據(jù)時(shí)域圖(Start Address : output) 輸出數(shù)據(jù)頻譜(DisplayType : FFT Magnitude) 四心得與總結(jié) 通過本次課程設(shè)計(jì)的學(xué)習(xí),進(jìn)一步掌握了MATLAB對濾波器設(shè)計(jì)的方法,同時(shí)也學(xué)會了利用ccs實(shí)現(xiàn)數(shù)字的濾波,而且也是對數(shù)字信號處理課程的一次復(fù)習(xí),里面的大部分知識都是其內(nèi)容。MATLAB是一個(gè)強(qiáng)大的軟件,在專業(yè)課的學(xué)習(xí)中應(yīng)用十分廣泛,今后將會更加深入了解它的功能。Ccs的為信號搭建了一個(gè)平臺,是我們運(yùn)行后能更加直觀的感受波形的變化。 雖然這次課設(shè)驗(yàn)過了,但是還是有很多的問題沒有解決,認(rèn)識到自己學(xué)習(xí)的知識都是相通的,要學(xué)會融會貫通,本設(shè)計(jì)中通過濾波,慮除了音頻信號中的高頻噪聲,改善了聲音質(zhì)量。將MATLAB 強(qiáng)大的工具箱功能與DSP 完美結(jié)合,利用MATLAB 輔助設(shè)計(jì),使得在設(shè)計(jì)過程中達(dá)到事半功倍的效果。運(yùn)用數(shù)字信號處理芯片強(qiáng)大的運(yùn)算功能,配合外圍電路,可方便地對音頻信號進(jìn)行實(shí)時(shí)濾波處理當(dāng)然本次設(shè)計(jì)中也遇到了許多問題,一是參數(shù)的設(shè)置,剛開始并沒有靈活運(yùn)用fdatool,當(dāng)真正了解它的功能后,只需在

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論