

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> DSP課程設計報告</b></p><p> 語音信號的FIR濾波器處理</p><p> 姓 名: </p><p> 班 級: 11電信4 </p><p> 學 號:
2、 </p><p> 指導老師: </p><p> 日期: 2014.06.03~2014.06.13 </p><p><b> 摘 要</b></p><p> DSP( Digital
3、Signal Processing) 也就是我們常說的數(shù)字信號處理, 它是利用計算機或專用處理設備, 以數(shù)字形式對信號進行采集、變換、濾波、估值、增強、壓縮、識別等處理, 以得到符合人們需要的信號形式。DSP 芯片在信號處理、通信、雷達等許多領域得到廣泛的應用。</p><p> Matlab是一款強大的軟件,它將數(shù)值分析、矩陣計算、科學數(shù)據可視化等諸多強大功能集成在一個易于使用的視窗環(huán)境中,為科學研究、工程設
4、計以及必須進行有效數(shù)值計算的眾多科學領域提供了一種全面的解決方案。</p><p> CSS集成開發(fā)環(huán)境使用CCS內置的軟件仿真simulator對程序進行編譯,調試和運行,主要用于檢測目標程序運行的正確性和連貫性,并能通過仿真器與目標板連接,在目標板上實時觀察效果。</p><p> 在本次設計中,我們選擇的課題是基于DSP的語言信號的FIR濾波處理。首先利用MATLAB進行了仿真,
5、得到濾波前后的時域波形和頻譜。然后通過調用MATLAB的分析工具FDATOOL,根據仿真結果導出了濾波器的相關參數(shù),將原始信號數(shù)據和濾波器參數(shù)輸入CCS進行DSP編程。最后在DSP中實現(xiàn)了FIR低通濾波,并通過CCS的頻譜分析功能查看了最終DSP的濾波效果。</p><p> 關鍵詞: 語音信號 DSP FIR濾波 MATLAB CCS</p><p><b> 目
6、 錄</b></p><p><b> 1.前言4</b></p><p><b> 2.設計原理4</b></p><p> 2.1數(shù)字信號處理器4</p><p> 2.2濾波器簡介5</p><p> 2.3 fir濾波器原理6&l
7、t;/p><p> 2.4窗函數(shù)簡介7</p><p> 2.5濾波器的特點7</p><p> 3.FIR濾波器的Matlab設計8</p><p> 3.1總體方案的設計8</p><p> 3.2語音信號的采集9</p><p> 3.3 MATLAP的具體處理9<
8、;/p><p> 3.4 FIR濾波器的系統(tǒng)參數(shù)11</p><p> 4.FIR濾波器的CCS設計與仿真11</p><p> 4.1 CCS程序流程圖12</p><p> 4.2 CCS仿真結果15</p><p> 5.問題及解決辦法18</p><p><b>
9、; 6.設計感想19</b></p><p><b> 參考文獻19</b></p><p><b> 7.附錄20</b></p><p><b> 1 前言</b></p><p> 隨著信息與數(shù)字技術的發(fā)展,數(shù)字信號處理已經成為當今極其重要而學
10、科與技術領域之一。它在通信、語音、圖像、自動控制、雷達、軍事、航空航天、醫(yī)療和家用電器等眾多領域得到了廣泛的應用。在數(shù)字信號處理的基本方法中,通常會涉及到變換、濾波、頻譜分析、調制解調和編碼解碼等處理。其中濾波是應用非常廣泛的一個環(huán)節(jié),數(shù)字濾波器的理論和相關設計也一直都是人們研究的重點之一。FIR濾波器的是非遞歸的,穩(wěn)定性好,精度高;更重要的是,F(xiàn)IR濾波器在滿足幅頻響應要求的同時,可以獲得嚴格的線性相位特征。因此,它在高保真的信號處理
11、,如數(shù)字音頻、圖像處理、數(shù)據傳輸和生物醫(yī)學等領域得到廣泛應用。</p><p> 在數(shù)字信號處理中,濾波占有極其重要的地位。數(shù)字濾波是語音信號處理、圖像處理、模式識別、頻譜分析等應用的基本處理算法。用DSP芯片實現(xiàn)數(shù)字濾波除了具有穩(wěn)定性好、精確度高、不受環(huán)境影響等優(yōu)點外,還具有靈活性好等特點。</p><p> 本文介紹了數(shù)字濾波器的設計基礎及用窗函數(shù)法設計FIR濾波器的方法,運用MA
12、THLAB語言實現(xiàn)了低通濾波器的設計并用CCS 2.0進行觀察效果。</p><p><b> 2 設計原理</b></p><p> 2.1 數(shù)字信號處理器</p><p> DSP(Digital Signal Processor)是一種獨特的微處理器,是以數(shù)字信號來處理大量信息的器件。其工作原理是接收模擬信號,轉換為0或1的數(shù)字信號
13、。再對數(shù)字信號進行修改、刪除、強化,并在其他系統(tǒng)芯片中把數(shù)字數(shù)據解譯回模擬數(shù)據或實際環(huán)境格式。它不僅具有可編程性,而且其實時運行速度可達每秒數(shù)以千萬條復雜指令程序,遠遠超過通用微處理器,是數(shù)字化電子世界中日益重要的電腦芯片。它的強大數(shù)據處理能力和高運行速度,是最值得稱道的兩大特色。</p><p> 由Ti公司提供專業(yè)的開發(fā)工具CCS,自帶DSP/BIOS操作系統(tǒng),能夠直接編寫適合DSP開發(fā)工程及文件,滿足DS
14、P程序設計要求。</p><p> 由MathWorks 公司和TI 公司聯(lián)合開發(fā)的DSPMATLAB Link for CCS Development Tools(簡稱CCSLink)是MATLAB6.5 版本(Release13)中增加的一個全新的工具箱,它提供了MATLAB、CCS 和DSP 目標板的接口,利用此工具可以像操作MATLAB變量一樣來操作DSP 器件的存儲器和寄存器,使開發(fā)人員在MATLAB
15、環(huán)境下完成對DSP的操作,從而極大地提高DSP應用系統(tǒng)的開發(fā)進程。</p><p> 本設計主要是使用DSP對語音噪聲信號進行處理,使用CCS開發(fā)工具編寫程序,同時利用MATLAB操作DSP 器件的存儲器和寄存器。</p><p><b> 2.2 濾波器簡介</b></p><p> (Finite Impulse Response)濾
16、波器:有限長單位沖激響應濾波器,是數(shù)字信號處理系統(tǒng)中最基本的元件,它可以在保證任意幅頻特性的同時具有嚴格的線性相頻特性,同時其單位抽樣響應是有限長的,因而濾波器是穩(wěn)定的系統(tǒng)。因此,F(xiàn)IR濾波器在通信、圖像處理、模式識別等領域都有著廣泛的應用。</p><p> 沖激響應之所以是“有限的”是因為在濾波器中沒有反饋出現(xiàn);如果你輸入一個沖激{就是一個“1”樣本后出現(xiàn)許多“0”的樣本的信號},那么零將在樣本 “1”通過
17、了所有的延遲線的系數(shù)后出現(xiàn)。</p><p> 濾波器,顧名思義,是對波進行過濾的器件?!安ā笔且粋€非常廣泛的物理概念,在電子技術領域,“波”被狹義地局限于特指描述各種物理量的取值隨時間起伏變化的過程。該過程通過各類傳感器的作用,被轉換為電壓或電流的時間函數(shù),稱之為各種物理量的時間波形,或者稱之為信號。因為自變量時間‘是連續(xù)取值的,所以稱之為連續(xù)時間信號,又習慣地稱之為模擬信號(Analog Signal)。隨
18、著數(shù)字式電子計算機(一般簡稱計算機)技術的產生和飛速發(fā)展,為了便于計算機對信號進行處理,產生了在抽樣定理指導下將連續(xù)時間信號變換成離散時間信號的完整的理論和方法。也就是說,可以只用原模擬信號在一系列離散時間坐標點上的樣本值表達原始信號而不丟失任何信息,波、波形、信號這些概念既然表達的是客觀世界中各種物理量的變化,自然就是現(xiàn)代社會賴以生存的各種信息的載體。信息需要傳播,靠的就是波形信號的傳遞。信號在它的產生、轉換、傳輸?shù)拿恳粋€環(huán)節(jié)都可能由
19、于環(huán)境和干擾的存在而畸變,有時,甚至是在相當多的情況下,這種畸變還很嚴重,以致信號及其所攜帶的信息被深深地埋在噪聲當中了。</p><p> 濾波,本質上是從被噪聲畸變和污染了的信號中提取原始信號所攜帶的信息的過程。</p><p> 濾波器特性可以用其頻率響應來描述,按其特性的不同,可以分為低通濾波器,高通濾波器,帶通濾波器和帶阻濾波器等。</p><p>
20、 2.3 FIR濾波器原理</p><p> FIR濾波器(有限長單位沖激響應濾波器)是在數(shù)字信號處理(DSP)中經常使用的兩種基本的濾波器之一,另一個為IIR濾波器。IIR濾波器是無限沖激響應濾波器。</p><p> 不論哪一種濾波器設計方法,都要求出濾波器的單位沖激響應h(n),然后才能在時域中實現(xiàn)頻域中的濾波。</p><p> 在頻域,當其輸入信號為
21、X(ejω)時,如濾波器的頻率響應為H(ejω),則其輸出信號為Y(ejω)=X(ejω)H(ejω)。</p><p> 在時域,設濾波器的單位沖激響應h(n)為一N點序列,即0≤n≤N-1時h(n)的值不為零,根據離散傅氏變換的性質,則可以將濾波器的輸入序列x(n)的響應y(n)表示為x(n)與h(n)的卷積和,即:</p><p> 這就是濾波系統(tǒng)的差分方程,它給濾波器的實現(xiàn)奠定
22、了理論基礎。即求出時域的h(n)后,便可通過卷積來實現(xiàn)頻域的濾波。</p><p> 卷積和運算主要有以下幾個步驟:</p><p> (1) h(n)序列N個點數(shù)值的存儲</p><p> 由于h(n)是根據濾波性能要求已經設計好的有限長單位沖激響應,故其N個點的數(shù)值是已知的,因此可以存放在ROM或RAM當中,且對應著N個不同的地址,便于尋址。</p&
23、gt;<p> (2) 輸入序列x(n)的移位寄存</p><p> 輸入序列x(n)是不斷變化的,因此只能對其進行移位寄存,寄存器的個數(shù)為N,即N個寄存器中分別存放著x(n)、x(n-1)……x(n-N+1),它們都隨著n的變化而變化。</p><p><b> (3) 乘法器</b></p><p> 用以完成兩個數(shù)值
24、的乘法,即h(m)x(n-m),也就是將存儲器中N地址所對應的N個固定數(shù)值h(m)分別與N個移位寄存器中的不斷變化的N個變化數(shù)值x(n-m)相乘。</p><p><b> (4) 累加器</b></p><p> 用以實現(xiàn)N個乘積的累加,即將當前x(n)所對應的N個乘積進行累加,所得到的和就是y(n)。當濾波器的下一個輸入值即x(n +1)到來時,累加器清零,并
25、重新將下一組x(n +1)所對應的N個乘積進行累加,所得到的和就是y(n +1)。</p><p><b> 2.4 窗函數(shù)簡介</b></p><p> 數(shù)字信號處理的主要數(shù)學工具是傅里葉變換。而傅里葉變換是研究整個時間域和頻率域的關系。不過,當運用計算機實現(xiàn)工程測試信號處理時,不可能對無限長的信號進行測量和運算,而是取其有限的時間片段進行分析。做法是從信號中截
26、取一個時間片段,然后用觀察的信號時間片段進行周期延拓處理,得到虛擬的無限長的信號,然后就可以對信號進行傅里葉變換、相關分析等數(shù)學處理。無線長的信號被截斷以后,其頻譜發(fā)生了畸變,原來集中在f(0)處的能量被分散到兩個較寬的頻帶中去了(這種現(xiàn)象稱之為頻譜能量泄漏)。</p><p> 為了減少頻譜能量泄漏,可采用不同的截取函數(shù)對信號進行截短,截斷函數(shù)稱為窗函數(shù),簡稱為窗。信號截短以后產生的能量泄漏現(xiàn)象是必然的,因為
27、窗函數(shù)w(t)是一個頻帶無限的函數(shù),所以即使原信號x(t)是有限帶寬信號,而在截短以后也必然成為無限帶寬的函數(shù),即信號在頻域的能量與分布被擴展了。又從采樣定理可知,無論采樣頻率多高,只要信號一經截短,就不可避免地引起混疊,因此信號截短必然導致一些誤差。</p><p> 泄漏與窗函數(shù)頻譜的兩側旁瓣有關,如果兩側瓣的高度趨于零,而使能量相對集中在主瓣,就可以較為接近于真實的頻譜,為此,在時間域中可采用不同的窗函數(shù)
28、來截短信號。</p><p> 2.5濾波器的特點 </p><p><b> 優(yōu)點:</b></p><p> (1)很容易獲得嚴格的線性相位,避免被處理的信號產生相位失真,這一特點在寬頻帶信號處理、陣列信號處理、數(shù)據傳輸?shù)认到y(tǒng)中非常重要;</p><p> (2)可以在幅度特性隨意設計的同時,保證精確、嚴格的
29、線性相位,還可得到多帶幅頻特性;</p><p> ?。?)極點全部在原點(永遠穩(wěn)定),無穩(wěn)定性問題;</p><p> (4)任何一個非因果的有限長序列,總可以通過一定的延時,轉變?yōu)橐蚬蛄?,所以因果性總是滿足;</p><p> (5)無反饋運算,運算誤差小。 </p><p><b> 缺點:</b><
30、/p><p> ?。?)因為無極點,要獲得好的過渡帶特性,需以較高的階數(shù)為代價;</p><p> ?。?)無法利用模擬濾波器的設計結果,一般無解析設計公式,要借助計算機輔助設計程序完成。</p><p> 3 FIR濾波器的Matlab設計</p><p> 3.1. 總體方案設計</p><p> 本次課程設計所
31、采用的主要軟件為Matlab。設計中用到的函數(shù)主要有wavread,sound,fft,subplot,plot,fir1,freqz,filter。</p><p> 課程設計利用窗函數(shù)法設計FIR數(shù)字濾波器,并利用MATLAB作為輔助工具仿真濾波前后的時域波形和頻譜。對于DSP的處理,首先,通過Matlab給語音信號添加高頻噪音,即將原始信號調制到某一高頻上(本設計用10000hz),再將其與原始語音信號相
32、疊加,最后將這個疊加后的信號轉化為數(shù)據(matlab編程),并存入后綴為dat的文件中。之后根據仿真結果使用MATLAB的設計分析工具FDATOOL產生濾波器參數(shù)。將混疊后的信號數(shù)據和濾波器參數(shù)輸入CCS進行DSP編程,在DSP中實現(xiàn)FIR帶通濾波,并使用CCS的頻譜分析功能,查看最終DSP的濾波效果。</p><p> 3.2 語音信號的采集</p><p> 使用PC 機上的聲卡和
33、WINDOWS 操作系統(tǒng)可以進行數(shù)字信號的采集。將話筒插入計算機的語音輸入插口上,啟動MOOo錄音專家。按下錄音按鈕,接著對話筒錄音,錄音結束后屏幕左側將顯示所錄聲音的長度。點擊放音按鈕,可以實現(xiàn)所錄音的重現(xiàn)。如圖3.1所示,以文件名“voice”保存入matlab當前工作路徑 中??梢钥吹?文件存儲器的后綴默認為.wav ,這是WINDOWS 操作系統(tǒng)規(guī)定的聲音文件存的標準。</p><p> 3.3 mat
34、lab具體處理</p><p> 3.3.1 FIR濾波器的matlab實現(xiàn)</p><p> FIR參數(shù)設定及頻域響應特性</p><p> 根據上述要求在matlab中采用fir2函數(shù)設計低通FIR濾波器,其程序代碼為:</p><p> f=[0 0.38 0.5 1];</p><p> m=[1 1
35、 0 0];</p><p> b=fir2(36,f,m);</p><p> 在MATLAB中輸入以上代碼,求出濾波器系數(shù)如下具有兩邊對稱, </p><p> h(0)=h(36)=-0.0010, h(1)=h(35)=-0.0036 ,h(2)=h(34)=0.0000</p><p> h(3)=h(33)=0.006
36、5 , h(4)=h(32)=0.0032 , h(5)=h(31)=-0.0088</p><p> h(6)=h(30)=-0.0093 , h(7)=h(29)=0.0090 , h(8)=h(28)=0.0184</p><p> h(9)=h(27)=-0.0047 , h(10)=h(26)=-0.0297 ,h(11)=h(25)=-0.0071&
37、lt;/p><p> h(12)=h(24)=0.0417 , h(13)=h(23)=0.0316 , h(14)=h(22)=-0.0524</p><p> h(15)=h(21)=-0.0848, h(16)=h(20)=0.0598, h(17)=h(19)=0.3108</p><p> h(18)=0.4375</p><
38、;p> CCS的輸入語音信號的輔助產生(MATLAB)</p><p> 1、理想情況:FIR 濾波器的輸入數(shù)據存儲在indata.dat 文件中,共300 個點,由頻率為1000Hz和2500Hz 的兩個余弦波疊加而成</p><p> 2、為了驗證設計的可行性,自身錄制一個語音片段,主要信號為低頻成分,其中夾雜著高頻成分的噪聲。</p><p>
39、在MATLAB中產生一個indata.dat文件供CCS輸入,在matlab中輸入的代碼為:</p><p> x=wavread('D:\matlab\work\XINZAO.wav'); %語音文件的路徑 </p><p> y=fft(x,1024);</p><p> plot(abs(y(1:1000)));
40、 %采樣100個點</p><p> x1=round(1024*x);</p><p> fid=fopen('indata.dat','w'); %生成一個dat文件</p><p> fprintf(fid,'1651 1 00E2 1000\n');</p>
41、<p> fprintf(fid,'%d\n',x1); %輸出</p><p> 3.4 FIR濾波器的系統(tǒng)參數(shù)</p><p> 在本設計中,使用MATLAB模擬產生合成信號,然后利用CCS進行濾波。</p><p> 本次FIR濾波器設計的的參數(shù)選取指標如下:</p><p
42、> 采用37階低通濾波器,漢明窗(Hamming Window)函數(shù),通帶截止頻率為1500 Hz,阻帶截止頻率為2000 Hz,通帶波紋為0.01,阻帶波紋為0.1,采樣頻率為8000Hz。</p><p> 在選項中選擇或輸入濾波器參數(shù),然后點擊”Design Filter”按鈕完成濾波器設計。設計成功后的結果如圖下圖所示。在fdatool中,選擇Targets->Code Composer
43、Studio?IDE。在出現(xiàn)的對話框中選擇輸出文件類型為C.header file,輸出系數(shù)類型為signed 16-bit integer。點擊Generate按鈕,選擇路徑,即可輸出前一步設計出的FIR濾波器系數(shù)表。</p><p> 4 FIR濾波器的CCS設計與仿真</p><p> CCS是一種針對TMS320系列DSP的集成開發(fā)環(huán)境,在windows操作系統(tǒng)下,采用圖形接
44、口界面,提供環(huán)境配置、源文件編輯、程序調試、跟蹤和分析等工具,提供了配置、建立、調試、跟蹤和分析程序的工具,從而完成編輯、編譯、鏈接、調試和數(shù)據分析等工作。</p><p> 在CCS中編寫匯編語言程序,進行調試,實現(xiàn)FIR濾波的功能。本課程設計使用CCS開發(fā)應用程序的一般步驟為:</p><p> ?。?)創(chuàng)建一個工程項目文件fir2.h,用匯編語言編寫處理主程序fir2.asm。另外
45、根據板上的存儲器配置方式,編寫存儲器配置文件fir.cmd文件,將MATLAB生成的fir2.h和indata.dat文件拷貝到工程文件夾下。</p><p> ?。?)編輯各類文件。使用CCS提供的集成編輯環(huán)境,對頭文件、鏈接命令文件和源程序進行編輯。</p><p> ?。?)對工程項目進行編譯,生成可執(zhí)行文件。如出現(xiàn)語法錯誤,將在構建窗口中顯示錯誤信息。用戶可以根據顯示信息定位錯誤信
46、息,更改錯誤。</p><p> (4)下載程序、輸入數(shù)據,執(zhí)行程序,對結果和數(shù)據進行分析和算法評估。利用CCS提供的探測點、圖形顯示等工具,對運行結果、輸出數(shù)據進行分析,評估算法性能。</p><p> 4.1 CCS程序流程圖</p><p> 4.1.1 程序分析</p><p> FIR濾波器的DSP實現(xiàn)主要有線性緩沖區(qū)法和循
47、環(huán)緩沖區(qū)法兩種。</p><p> 線性緩沖區(qū)法又稱延遲線法。其特點:</p><p> ?。?)對于N級的FIR濾波器,在數(shù)據存儲器中開辟一個N單元的緩沖區(qū)(滑窗),用來存放最新的N個輸入樣本;</p><p> ?。?)從最老樣本開始取數(shù),每取一個樣本后,將此樣本向下移位;</p><p> ?。?)讀完最后一個樣本后,輸入最新樣本存入
48、緩沖區(qū)的頂部。</p><p> 循環(huán)緩沖區(qū)法的特點如下:</p><p> ?。?)對于N級FIR濾波器,在數(shù)據存儲器中開辟一個N單元的緩沖區(qū)(滑窗),用來存放最新的N個輸入樣本;</p><p> ?。?)從最新樣本開始取數(shù);</p><p> ?。?)讀完最后一個樣本(最老樣本)后,輸入最新樣本來代替最老樣本,而其他數(shù)據位置不變;&l
49、t;/p><p> ?。?)用片內BK(循環(huán)緩沖區(qū)長度)寄存器對緩沖區(qū)進行間接尋址,使循環(huán)緩沖區(qū)地址首尾相鄰。</p><p> 本次設計的FIR濾波器所采用的就是循環(huán)緩沖區(qū)法。</p><p> 對DSP進行初始化,并設置好存儲單元。為數(shù)字濾波作準備,將預先設計好的有N個抽頭的FIR數(shù)字濾波器的沖激響應序列h(n)中的N個數(shù)值放入存儲單元bn中,從indata數(shù)據
50、存儲段中讀入抽樣值,將抽樣值逐一放入存儲單元xn中。</p><p><b> 主要循環(huán)程序如下:</b></p><p> 將累加器清零,將存儲單元bn與xn值對應相乘并累加到ACC中,循環(huán)N次將ACC中的值保存輸出。再從indata數(shù)據存儲段中讀入一個新的數(shù)據,代替原來的最老樣本 MVDD *AR4+,*AR2+0% ,重復循環(huán)直到數(shù)據全部處理完。</
51、p><p> 最后將處理完的數(shù)據輸入到outdata數(shù)據存儲段中。</p><p> 4.1.2 數(shù)據輸入</p><p> MATLAB輔助DSP 實現(xiàn)FIR濾波器濾波 ,其總體過程是為DSP 中編寫處理程序提供濾波器系數(shù)。在MATLAB中利用濾波器設計、分析工具( FDATOOL) ,根據指定的濾波器性能快速設計一個FIR ,然后把濾波器系數(shù)以頭文件形式導入C
52、CS 中,頭文件中包含MATLAB 輔助DSP 實現(xiàn)FIR 數(shù)字濾波器的階數(shù)和系數(shù)數(shù)組,在MATLAB中調試、運行DSP 程序并顯示、分析處理后的數(shù)據。</p><p> 打開CCS IDE 中file的data加載初始化data數(shù)據,在Address中輸入數(shù)據存放的起始地址indata,并設置數(shù)據棧長度。</p><p> 4.1.3 運行程序仿真</p><p&
53、gt; 運行程序,查看輸入輸出波形,修改相應參數(shù)進行調試。</p><p> 在View的Graph中單擊Time/frequency出現(xiàn)graph property dialog框。</p><p> 將顯示類型,圖形名稱,起始地址,抽樣點數(shù),數(shù)據類型等分別進行設置,輸出各種波形。輸出濾波前的信號時域波形。首先,設置如下圖所示,輸出濾波前的信號時域波形。</p>&l
54、t;p> 圖 16 濾波前語音信號的時域Graph Property Dialog設置參數(shù)圖</p><p> 將Display Type改為FFT Magnitude 就可以看到濾波前信號的頻譜,將Start Address改為outdata就可以看到濾波后信號的時域波形和頻譜。</p><p> 4.2 CCS仿真結果</p><p> 圖 17
55、濾波前語音信號的時域波形圖</p><p> 圖 18 濾波前信號頻譜波形圖</p><p> 4.2.2 FIR濾波器濾波后的信號</p><p> 圖 19 濾波后信號時域波形圖</p><p> 圖 20 濾波后信號頻譜圖</p><p> 圖17波前的信號,由高頻信號和原信號疊加而成的波形較為雜亂,加
56、噪后的信號幅值較大。圖19波后的信號,從圖上可以看到信號幅度較低,波形較為清晰。</p><p> 對比圖18圖20可以看到加躁后信號幅值較大,信號的能量集中在高頻段,濾波后,高頻成分大部分被濾去,信號的能量主要集中在低頻段。</p><p><b> 5 問題及解決方法</b></p><p> 1.為什么存入DAT文件的信號數(shù)據要乘上
57、32768?</p><p> 由于TMS32054X是16位定點處理器,在進行匯編程序設計時,F(xiàn)IR濾波器系數(shù)需要采用Q15格式,即必須將上述系數(shù)據轉化位Q15定點式。 </p><p> 2.matlab編譯錯誤出現(xiàn)如下錯誤?</p><p> The carrier frequency must be less than half the samplin
58、g frequency.故降低載波頻率</p><p> 3. 在View的Graph中單擊Time/frequency出現(xiàn)graph property dialog框,未修改抽樣點數(shù),顯示的圖形出現(xiàn)差異.</p><p> 4、通過load data時,在配置地址和長度時,我們沒有忘記按照自己設定的起始地址及長度,結果顯示出來的圖像與真實的有極大的偏差。</p><
59、;p> 答:把Address和Length的參數(shù)填寫自己在生成dat文件是所設置的值一致,最后濾波輸出波形正確。</p><p> 5、為了實現(xiàn)語音及噪聲的通過設計的濾波器進行驗證,需要制作一個語音及噪聲的.dat文件,以供CCS信號輸入,對軟件不熟練的我們不懂的怎么應用?</p><p> 答:通過到圖書館借相應的書來自學,學習MATLAB的生成.dat文件的相關命令語句,以
60、及請教其他同學。通過不斷的討論和研究,知道了要對信號進行采樣,再通過fopen語句等,才能生成dat文件</p><p><b> 6 設計感想</b></p><p> 通過本次課程設計,我們發(fā)現(xiàn)在課本上學到的知識實在是不能使我們有能力駕馭這個課程設計。 </p><p> 一開始決定做這個課題,我們就去查找了大量資料,通過查找資料我們
61、都清楚了大概要做些什么。首先要進行MATLAB仿真,并通過MATLAB設計的FIR濾波器輸出濾波器系數(shù)。接著便是通過CCS編程,并在DSP上運行。我們覺得思路是很清晰的,但是實際操作起來卻困難重重。</p><p> 原始信號有了,我們也得了教訓,便開始計劃開來。于是,翻書看完有關FIR濾波器的相關介紹,重點看了凱塞窗。然后查資料找出與本次設計有關的MATLAB知識。做完這些自然是開始設計,總體框架,具體步驟,
62、都在腦袋瓜里轉了幾轉。動工,這時才深刻體會到“紙上學來終覺淺,用到實際才叫真!”開始設計從噪聲選取,到低通,高通,帶阻,帶通濾波器的設計,其中是錯漏百出。當然,作為老手自然不會再去犯什么程序設計上的低級錯誤,主要還是對濾波器的認知不夠深刻。有的只是照抄書本,最后是連自己都為自己所犯的錯誤驚愕不已。其中許多錯誤差點讓自己從頭來過,一度讓自己有放棄的打算。最后還是堅持了下來,自己大嘆不容易。</p><p> 設計
63、的時間過了,但它帶來的影響我想是不滅的!要有一個良好的就業(yè)前景。擁有扎實的理論知識,認真細致的處事態(tài)度,隨機應變的實際應用方法,不拘一格的思路都將使得自己能有好的未來。</p><p><b> 參 考 文 獻</b></p><p> [1] 鄒彥,DSP原理及應用(修訂版),北京:電子工業(yè)出版社,2012.</p><p> [2]
64、王宏. MATLAB6.5及其在信號處理中的應用.[M]. 北京:清華大學出版社,2004</p><p> [3] 高西全,丁玉美,闊永紅.數(shù)字信號處理---原理、實現(xiàn)及應用.[M].北京:電子工業(yè)出版社,2006</p><p> [4] 胡廣書編著,數(shù)字信號處理理論、算法與實現(xiàn).北京:清華大學出版社,2005;</p><p><b> 附
65、 錄</b></p><p> 1.主程序fir.asm:</p><p> .title "FIR.ASM"</p><p><b> .mmregs</b></p><p> .def start</p><p> .bss yn,1<
66、/p><p> xn .usect "xn",37</p><p> hn .usect "hn",37</p><p> indata .usect "indata",300</p><p> outdata .usect "outdat
67、a",256</p><p><b> .data</b></p><p> fir_coff: </p><p> .word -10*1024/10000,-36*1024/10000</p><p> .word 0*1024/10000,65*1024/10000</p>&
68、lt;p> .word 32*1024/10000,-88*1024/10000</p><p> .word -93*1024/10000,90*1024/10000</p><p> .word 184*1024/10000,-47*1024/10000</p><p> .word -297*1024/10000,-71*1024/100
69、00</p><p> .word 417*1024/10000,316*1024/10000</p><p> .word -524*1024/10000,-848*1024/10000</p><p> .word 598*1024/10000,3108*1024/10000</p><p> .word 4375*102
70、4/10000</p><p> .word 3108*1024/10000,598*1024/10000</p><p> .word -848*1024/10000,-524*1024/10000</p><p> .word 316*1024/10000,417*1024/10000</p><p> .word -71
71、*1024/10000,-297*1024/10000</p><p> .word -47*1024/10000,184*1024/10000</p><p> .word 90*1024/10000,-93*1024/10000</p><p> .word -88*1024/10000,32*1024/10000</p><p&
72、gt; .word 65*1024/10000,0*1024/10000</p><p> .word -36*1024/10000,-10*1024/10000</p><p><b> .text</b></p><p><b> start: </b></p><p> ss
73、bx frct ;使用小數(shù)運算 </p><p> stm #hn,ar1 ;系數(shù)首地址 </p><p> rpt #36 ;將系數(shù)移入循</p><p> mvpd fir_coff,*ar1+ ;環(huán)緩沖區(qū) </p><p> stm
74、 #-1,ar0</p><p> stm #outdata,ar5</p><p> stm #indata,ar4</p><p> stm #xn+36,ar2</p><p> rpt #36 ;將輸入數(shù)據移入 </p><p> mvdd *ar4+,*
75、ar2+0% ;循環(huán)緩沖區(qū)</p><p> stm #xn+36,ar2 ;指向第一個輸入</p><p> stm #hn+36,ar3</p><p> stm #37,bk ;緩沖區(qū)大小37</p><p> stm #255,brc ;塊重復256次</p><p&
76、gt; stm #-1,ar0</p><p> rptb loop-1 ;塊程序重復大小</p><p> rptz a,#36 ;計算一個輸出</p><p> mac *ar2+0%,*ar3+0%,a</p><p> sth a,*(yn) ;保存輸出</p
77、><p> mvkd *(yn),*ar5+</p><p> mvdd *ar4+,*ar2+0% ;讀進一個輸入</p><p> loop: nop</p><p> b loop</p><p><b> .end </b></p><p&
78、gt; 2.鏈接命令文件fir.cmd:</p><p><b> MEMORY</b></p><p> { PAGE 0:</p><p> PARAM: org=00E0h len=1000h</p><p><b> PAGE 1:</b></p><
79、;p> SPRAM org=0060h len=0020h </p><p> DARAM: org=0080h len=1380h </p><p><b> }</b></p><p><b> SECTIONS</b></p><p><b>
80、 {</b></p><p> .text :> PARAM PAGE 0</p><p> .data :> PARAM PAGE 0</p><p> .bss :> SPRAM PAGE 1</p><p> xn : align (64) {} &
81、gt; DARAM PAGE 1</p><p> hn : align (64) {} > DARAM PAGE 1 </p><p> indata :> DARAM PAGE 1</p><p> outdata :> DARAM PAGE 1 </p><p>&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 語音信號處理與濾波課程設計
- 課程設計--語音信號濾波去噪使用bohman窗設計的頻率采樣型fir濾波器
- 語音信號的濾波課程設計
- 數(shù)字信號處理課程設計-基于fir的有噪聲語音信號處理
- 《數(shù)字信號處理》課程設計--fir窗函數(shù)濾波器的設計
- 數(shù)字信號處理課程設計--語音信號的處理與濾波
- 語音濾波器課程設計--語音濾波器
- fir帶通濾波器課程設計
- 語音信號處理課程設計
- 數(shù)字信號處理課程設計---語音信號的處理與濾波
- 數(shù)字信號處理課程設計---語音信號的處理與濾波
- 數(shù)字信號處理課程設計--語音信號的處理與濾波
- fir帶阻濾波器課程設計
- 數(shù)字信號處理課程設計--基于fir的有噪聲語音信號處理
- 數(shù)字信號課程設計---語音信號的處理與濾波
- 數(shù)字信號處理課程設計--語音信號濾波去噪
- fir帶通濾波器課程設計
- 數(shù)字信號處理課程設計---基于matlab的語音信號濾波處理
- dsp課程設計-- 語音信號處理,進行三種類型的濾波器的設計
- 課程設計--語音信號濾波去噪
評論
0/150
提交評論