九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網! | 幫助中心 裝配圖網zhuangpeitu.com!
裝配圖網
ImageVerifierCode 換一換
首頁 裝配圖網 > 資源分類 > DOC文檔下載  

DSP課程設計 基于DSP開發(fā)板的語言信號濾波處理 電信畢業(yè)設計

  • 資源ID:28425512       資源大小:1.41MB        全文頁數:42頁
  • 資源格式: DOC        下載積分:15積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要15積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

DSP課程設計 基于DSP開發(fā)板的語言信號濾波處理 電信畢業(yè)設計

DSP原理與接口技術課程設計報告基于DSP開發(fā)板的語言信號濾波處理姓 名: 班 級: 09電信1 學 號: 2009305901 2009305901 2009305901 指導老師: 日期: 2012. XX.XX2012.XX.XX 華南農業(yè)大學工程學院 摘 要 通過語音傳遞信息是人類最重要、最有效、最常用、最方便的交換信息的方法,因此,如何去除混雜在有用信號中的噪聲并獲得低損甚至無損的有用語音信號成為語音信號處理(即用數字信號處理技術和語言學知識對語音信號進行處理并提取有用信息)至關重要的問題。但是因為語音識別技術對信號噪聲非常敏感,系統(tǒng)本身和器件對系統(tǒng)的處理結果都有著不可忽視的干擾,因此很難實現效果較好的語音信號濾波處理。而DSP因為運算速度快,片上資源豐富和能夠實現復雜的線性和非線性算法等特性,在語音信號處理技術方面有明顯的優(yōu)勢。雖然DSP自身在一定程度上也是語音信號干擾源,但綜其上述良好特性,以及干擾源的不可避免性,我們選擇用DSP實現語音信號濾波處理。 為了實現基于DSP開發(fā)板的語音信號濾波處理,我們對混雜噪聲信號的有用信號音頻進行時域和頻譜分析,得出其頻譜特性后,在軟件編程方面,我們用匯編語言在CCS中設計出三個濾波器,分別是:低通濾波器、高通濾波器以及帶通濾波器,同時實現A/D和D/A轉換。在硬件方面,通過接口電路從電腦下載混雜噪聲的有用音頻,以及將程序下載到芯片中。語音信號在硬件電路芯片上進行ADC轉換變?yōu)閿底中盘?,通過濾波、壓縮等變化濾去噪聲之后再進行DA轉換返回模擬語音信號并從硬件電路輸出。從而實現DSP的語音信號濾波處理。 關鍵詞: 語音信號處理 濾波 DSP39目 錄1 方案比較與選擇1.1 方案目標 基于DSP開發(fā)板,在CCS中用匯編語言設計一個濾波器,運用該濾波器能將混雜有高頻噪聲的歌聲中的噪聲信號去除。濾波的整個過程通過DSP開發(fā)板上實現,并且要滿足以下要求: 1、根據被處理對象設置濾波器參數;2、該濾波器要用匯編語言實現;3、待處理語音信號采集通過開發(fā)板上的信號采集模塊輸入;4、所設計的濾波器能濾除語音信號中的高頻噪聲;5、實現濾除噪聲功能后,能在電腦上顯示濾波器的頻譜;6、通過開發(fā)板上的語音模塊播放處理后的語音信號;我們組將合成信號(混有高頻噪聲與有用的歌曲信號)通過DSP開發(fā)板的耳機輸入接口輸入TMS320VC5416芯片,該音頻信號的時域波形和頻域波形如圖1、圖2、圖3、圖4所示:圖1 混合時域波形(1)圖2 混合時域波形(2)圖3 混合時域波形(3)圖4 混合頻域波形 通過濾波器對高頻噪聲的濾除后,理想情況下的有用信號輸出時域波形和頻域波形如圖5、圖6所示:圖5 理想結果時域圖6 理想結果頻域而被濾除的高頻噪聲信號的時域波形和頻域波形則分別如圖7、圖8所示:圖7 噪聲時域圖8 噪聲頻域1.2方案選擇1.2.1 濾波器選擇A.IIR數字濾波器IIR數字濾波器具有無限的脈沖響應,具有如下特點:1. IIR數字濾波器的系統(tǒng)函數可以寫成封閉函數的形式;2. IIR數字濾波器采用遞歸型結構;3. IIR數字濾波器在設計上可借助成熟的模擬濾波器的結果;4. IIR數字濾波器需要加相位校準網絡; IIR數字濾波器的相位特性不好控制,當對相位要求較高的時候,需要外加相位校準網絡。由于IIR數字濾波器采用遞歸型結構,結構上帶有反饋回路,在運算的舍入處理過程中,會使誤差不斷累積,致使有時會產生微弱的寄生振蕩。但是在設計上,IIR數字濾波器能借助成熟的模擬濾波器結果,如巴特沃斯、契比雪夫等,因有現成的設計數據或圖表可以查閱,使設計工作量相對比較小,對計算工具的要求也不高。B.FIR濾波器FIR濾波器為有限長單位沖激響應濾波器,是數字信號處理系統(tǒng)中最基本的原件,它能夠保證任意幅頻特性的同時又具有嚴格的線性相頻特性,與此同時,它的單位抽樣響應是有限長的,因此,FIR濾波器是穩(wěn)定的系統(tǒng)。它具有如下特點:1. FIR濾波器系統(tǒng)的單位沖激響應h(n)在有限個n值處不為零;2. FIR濾波器的系統(tǒng)函數H(z)在|z|>0處收斂,極點全部在z=0處,是因果系統(tǒng);3. FIR濾波器在結構上主要為非遞歸結構,沒有輸出到輸入的反饋;FIR濾波器能夠在DSP芯片中實現,DSP芯片中有專用的數字信號處理函數可以調用,因此,在DSP芯片中,FIR濾波器的實現相對簡單。但是由于程序是順序執(zhí)行的,它的速度會受到限制。1.2.2 DSP芯片選擇 A.TMS320C5402 TI公司第五代16bit定點DSP處理器,它適用于語音通信等實施嵌入應用場合,其特性為:操作速度可以達100MIPS;先進的多總線結構;整合維特比加速器;數據/程序尋址從、空間為1M16bit,內置4K16bit的ROM和16K16bit的RAM;內置可編程等待狀態(tài)發(fā)生器、鎖相環(huán)(PLL)時鐘產生器、兩個多通道緩沖串口、兩個16位定時器,與C54X系列的其他芯片相比,C5402具有高性能,低功耗和低價格等特點,它采用6級流水線,而且當RPT(重復指令)有效時,一些多周期的指令就編程單周期的指令;芯片內部RAM和ROM可以根據PMST寄存器中的OVLY和DROM位靈活設置,這些都是有利于算法的優(yōu)化。 B.TMS320VC5416 TMS320VC5416芯片的運行速度為160M,具有低功耗設計;其工作速度可以高達160MIPS;它的片內RAM存儲空間為128K16Bit;而其擴張的2路6bitA/D接口TLV0832的最大采樣速率為20K;具有2路的TLC7528D/A轉換,10M/S,8Bit;具有UAET串行接口,符合RS232標準;有8M bit的擴展Flash,能存儲大量固化程序和數據;設計配置有用戶可以自定義的開關盒測試指示燈,方便用戶進行調試;4組標準化擴展連接器,為用戶進行二次開發(fā)提供條件;具有能與IEEE1149.1相兼容的僅用于測試和仿真的邏輯掃描電路;+5V電源輸入,內部為+3.3V、+1.6V電源管理;四層板設計工藝,工作穩(wěn)定可靠;具有自啟動功能設計,可以實現脫機工作;可以選配多張應用接口板,包括USB板。1.3方案選擇1.3.1 濾波器選擇在很多實際應用中如語音和音頻信號處理中,常用數字濾波器來實現選頻功能。因此,應將頻域中的幅度和相位響應設為選頻功能的指標。在通帶中,線性相位響應常是被希望的,但精確的線性相位在FIR濾波器中可以得到,而在IIR濾波器中通帶的相位卻不可能得到的。在幅度指標的考量方面,IIR數字濾波器的設計和模擬濾波器的設計有著緊密的聯(lián)系,通常是在設計出適當的模擬濾波器后,再通過一定的頻帶變換把它轉換成為所需要的數字IIR濾波器。此外,任何數字信號處理系統(tǒng)中也還不可避免地用到模擬濾波器,比如A/D變換器前的抗混疊濾波器及D/A轉換后的平緩濾波器,因此模擬濾波器設計也是數字信號處理中應當掌握的技術。從性能上來說,IIR數字濾波器傳遞函數包括零點和極點兩組可調因素,對極點的唯一限制是在單位圓內。因此可用較低的階數獲得高的選擇性,所用的存儲單元少、計算量小、效率高。但是這個高效率是以相位的非線性為代價的。IIR數字濾波器的選擇性越好,則相位非線性越嚴重。因為在計算量相等的情況下,雖然IIR 數字濾波器比FIR濾波器的幅頻特性優(yōu)越,頻率選擇性也好,但是它有著致命的缺點:相位特性不好控制。它的相位特性是非線性函數。例如雙線性變換法產生的IIR 濾波器模擬指標的頻率與數字化指標的頻率轉換關系是 ,這是使頻率產生嚴重的非線性的原因,這種W與w的非線性關系,使數字濾波器與模擬濾波器在響應與頻率的對應關系上發(fā)生了畸變。而FIR濾波器傳遞函數的極點是固定在原點,是不能動的,它只能靠改變零點位置來改變它的性能,所以要達到高的選擇性,必須用高的階數,對于同樣的濾波器設計指標,FIR濾波器所要求的階數可能比IIR濾波器高5-10倍,結果成本高信號延時也較大,如果按線性相位要求來說,則IIR濾波器就必須加全通網絡進行相位校正,但是,在對程序運行周期數要求十分嚴格的DSP處理中加上一個全通均衡器是十分浪費資源的,另外即使加上全通均衡器 對于因果的IIR 濾波器仍將得不到線性的相位,反而會大大增加了濾波器的階數和復雜性。而FIR濾波器卻可以在幅度特性隨意設計的同時保證精確嚴格的線性相位。FIR濾波器的這一特點在現代電子系統(tǒng)中諸如圖像處理數據傳輸等波形傳遞系統(tǒng)中都越來越多的要求信道具有線性相位特性的情況下,成為了FIR濾波器獨特的優(yōu)點。另外,從結構上看,IIR濾波器必須采用遞歸結構來配置極點,并保證極點位置在單位圓內。由于有限字長效應,運算過程中將對系數進行舍入處理,引起極點的偏移,這種情況有時會造成穩(wěn)定性問題,甚至造成寄生振蕩。相反,FIR濾波器只要采用非遞歸結構,不論在理論上還是實際的有限精度運算中都不存在穩(wěn)定性問題,因此造成的頻率特性誤差也較小。此外FIR濾波器可以采用快速傅立葉變換算法,在相同的階數條件下運算速度可以快的多。因此,我們小組選擇FIR濾波器進行后續(xù)的語音信號濾波處理。1.3.2 DSP芯片選擇 綜合分析TMS320C5402芯片和TMS320VC5416的功能特點,在同樣具有低功耗、高穩(wěn)定性的條件下,TMS320C5402芯片具有先進的多總線結構,能整合維特比加速器,同時它采用6級流水線,使工作能同時進行,工作速率提高,其芯片內部RAM和ROM可以根據PMST寄存器中的OVLY和DROM位靈活設置等有利于算法的優(yōu)化,并且價格較低,適合于學生進行開發(fā)。但是,TMS320VC5416芯片具有更高的運行速度,是目前為止,C54X系列產品中最快的,其速度是C5410的1.6倍,其內部空間更大,是C5410的2倍。同時配置有較大的ROM能存儲大量的固化程序和數據,有利于運行速度的提升和減少因處理數據量太大而死機的可能,能處理信息量的音頻信號。TMS320VC5416芯片配置有用戶可以自定義的開關盒測試指示燈和4組標準化擴展連接器,為用戶調試和進行二次開發(fā)提供便利條件,此外,它能夠選配諸如USB接口的應用接口板,便于與電腦進行數據交換。 因此,我們小組選擇TMS320VC5416芯片來進行開發(fā)。2 硬件電路概述2.1 DSP開發(fā)系統(tǒng) 通用DSP開發(fā)系統(tǒng)的三大要素為:1.界面友好、調試方便、具有圖形顯示功能以及能對程序問題快速定位的開發(fā)軟件;2.與PC機接口方便、與目標板連接方便、硬件可靠以及通用性好的開發(fā)系統(tǒng);3.具有流行DSP芯片、具有A/D、D/A等豐富外圍接口、擴展方便意見實驗軟件豐富的目標板;此處僅對開發(fā)系統(tǒng)以及目標板進行具體描述。2.2 開發(fā)系統(tǒng) 在這次語音信號濾波處理設計中,我們小組采用ICETEK-5100PP系列開發(fā)系統(tǒng),其外觀圖如圖9所示: 圖9 ICETEK-5100PP開發(fā)系統(tǒng)外觀圖其各部件的說明如下:a.仿真頭:JTAG接口,其各管腳定義如圖10所示:圖10 JTAG管腳定義b.仿真頭:MPSD接口,其各管腳定義如圖11所示:圖11 MPSD仿真接口各管腳定義c.開發(fā)系統(tǒng)電源接口d.并口電纜e.開發(fā)系統(tǒng)供電指示燈f.正確運行指示燈2.2.1 系統(tǒng)工作環(huán)境 ICETEK-5100PP開發(fā)系統(tǒng)對主的硬件要求如下:ICETEK-5100PP采用并口與計算機相連接,在使用開發(fā)系統(tǒng)之前需要正確配置并行端口和開發(fā)系統(tǒng)的相應設置。一般的,臺式機并行端口有三種工作模式,分別是:SPP、EPP、ECP;而筆記本電腦則只支持其中的SPP和ECP兩種工作模式。ICETEK-5100PP可以再SPP和EPP模式下工作,所以要把計算機的并行端口配置為SPP或EPP模式。如果主機支持EPP工作模式,則推薦使用EPP模式。其中,修改并行端口工作模式需要在計算機的BIOS中操作。2.2.2 安裝步驟 在使用ICETEK-5100PP系列開發(fā)系統(tǒng)之前,需要先安裝開發(fā)軟件,其安裝步驟如下:1. 關閉計算機電源;2. +5V電源與開發(fā)系統(tǒng)的電源接口相接;3. 仿真頭與目標板相接;4. 打開目標板電源,這是開發(fā)系統(tǒng)供電指示燈會亮;5. 打開計算機;注意:在安裝過程中,要在避免接通計算機電源和目標板電源的情況下插播接口,否則會燒壞計算機并口或開發(fā)系統(tǒng)。2.3 系統(tǒng)板 本次設計中,我們將會選用ICETEKVC5416-A作系統(tǒng)板,其實物圖如圖12所示:圖12 ICETEKVC5416-A實物圖其中各接口具體如下:A. JTAG仿真插座,與ICETEK-5100PP開發(fā)板的a接口相連;B. 四位設置撥碼開關;C. HPI設置跳線J1、J2;D. U320:四位撥動開關輸入;E. +5V電源插座;F. 電源指示;G. 四位用戶可控指示燈:D3D6;H. P3擴展插座;I. PI擴展插座;J. 標準RS232接口;K. 語音輸入輸出接口:MIC IN、LINE IN、HEDA PHONE、LINE OUT; L. P2擴展插座;M. P4擴展插座;N. 復位按鈕;DSP系統(tǒng)板ICETEKVC5416-A的模數轉換模塊:精度為12bit,同相位最多采集路數為6,兩路工作時,最高采集數率為450K/路,而6路工作時,則是150K/路,信號輸入范圍為05V,而信號耦合方式既可以是直流也可以使交流;DSP系統(tǒng)板ICETEKVC5416-A的數模轉換:精度為12bit,路數為4路,其交換數率為100K(10us),輸出范圍為05V;DSP系統(tǒng)板ICETEKVC5416-A的周邊設計:其主處理器是TMS320VC5416,內部存儲空間為128K16bit,具有看門狗功能設計。它的上位機接口為RS232串行數據接口,即接口J,同時具有DSP擴展總線。2.4 硬件電路連接1.將DSP開發(fā)系統(tǒng)ICETEK-5100PP的JTAG仿真插座連接到實驗系統(tǒng)的DSP模塊ICETEKVC5416-A的JTAG上,如圖13所示:計算機開發(fā)系統(tǒng)ICETEK-5100PP系統(tǒng)板ICETEKVC5416-ASPP/EPP/ECPJTAG 圖13 硬件電路各部件連接說明2.系統(tǒng)上電后,將開發(fā)系統(tǒng)ICETEK-5100PP與計算機相連;3.雙擊桌面的SET UP CCS圖標,配置并啟動CCS軟件;3軟件編程實現分功能模塊寫,代碼&代碼功能說明,以及代碼算法思想,和流程圖為實現本設計,需在MATLAB協(xié)助中進行軟件仿真,仿真成功后,再通過CCS進行硬件仿真、編譯并通過串口將程序下載到DSP芯片之中執(zhí)行。3.1 軟件仿真實現3.1.1 MATLAB簡介MATLAB是美國Mathworks公司于1984年正式推出的一套高性能的數值計算和可視化軟件,適用于工程應用各個領域的分析設計和復雜計算,是一種功能性很強、效率高、便于進行科學和工程計算的交互式軟件包,它集數值分析、矩陣運算、信號處理和圖形顯示于一體,為用戶提供方便和友好的界面環(huán)境。 MATLAB中的工具箱中包含了很多使用程序,如數值分析、矩陣運算、數字信號處理、建模和系統(tǒng)控制等。濾波器的設計就包含在該工具箱的Signal中,它提供了很多種FIR濾波器設計方法。 MATLAB因其語言簡潔緊湊,使用方便靈活,庫函數極其豐富,又具有結構化的控制語句(如for循環(huán),while循環(huán),break語句和if語句),又有面向對象編程的特性;程序的可移植性很好,基本上不做修改就可以在各種型號的計算機和操作系統(tǒng)上運行,等等優(yōu)點。因此在各個學科和領域得到了廣泛的應用。3.1.2 數字濾波器在MATLAB的實現 其設計流程如圖14所示:初始化產生需要慮波信號 畫出原始信號頻譜圖 生成fir濾波器 進行濾波 畫出濾波后信號頻譜圖 圖14 Matlab中設計流程圖在Matlab中,可以利用矩形窗、三角窗、漢寧窗、漢明窗、布萊克曼窗、凱塞窗等設計FIR濾波器,在本次課程設計中主要應用漢寧窗設計出FIR濾波器。利用Matlab中的函數freqz畫出各濾波器的頻率響應,首先利用數字信號處理里面學過的知識,根據自己選定的參數,用漢寧窗函數法設計FIR數字濾波器,得到數字濾波器的參數b,a。其中b為系統(tǒng)函數的分子系數,a為系統(tǒng)函數分母系數。再調用freqz(b,a,512,fs)即可得到該濾波器的頻率響應。主程序如下:fpd=1700;fsd=1750;fsu=1850;fpu=1900; % FIR濾波器的上下截止頻率Rp=1;As=36; % 帶阻濾波器設計指標fcd=(fpd+fsd)/2;fcu=(fpu+fsu)/2;df=min(fsd-fpd),(fpu-fsu); % 計算上下邊帶中心頻率,和頻率間隔wcd=fcd/fs*2*pi;wcu=fcu/fs*2*pi;dw=df/fs*2*pi; % 將Hz為單位的模擬頻率換算為rad為單位的數字頻率wsd=fsd/fs*2*pi;wsu=fsu/fs*2*pi;M=ceil(6.2*pi/dw)+1; % 計算漢寧窗設計該濾波器時需要的階數n=0:M-1; % 定義時間范圍w_ham=hanning(M); % 產生M階的漢寧窗 hd_bs=ideal_lp(wcd,M)+ideal_lp(pi,M)-ideal_lp(wcu,M); % 調用自編函數計算理想帶阻濾波器的脈沖響應h_bs=w_ham.*hd_bs; % 用窗口法計算實際濾波器脈沖響應db,mag,pha,grd,w=freqz_m(h_bs,1); % 調用自編函數計算濾波器的頻率特性阻帶最大衰減為-75dB,FIR濾波器的主瓣寬度很小,這樣可以使過渡帶很陡,旁瓣相對于主瓣也比較小。3.2 硬件仿真實現3.2.1 CCS簡介DSP芯片的開發(fā)需要一套完整的軟、硬件開發(fā)工具,可以分為代碼生成工具和代碼調試工具兩類.而CCS(CodeComPoserStudio)就是TI推出的用于開發(fā)其DSP芯片的集成開發(fā)環(huán)境,它采用Windows風格界面,集編輯、編譯、鏈接軟件仿真、硬件調試及實時跟蹤等功能于一體,極大的方便了DSP程序的設計與開發(fā)。CCS集成開發(fā)環(huán)境中包含Simulator(軟件仿真器)和Emulator(硬件仿真器)兩部分。它們使用的是同一個集成開發(fā)環(huán)境。在本設計中,采用軟件仿真器進行程序的調試。3.2.2 MATLAB與CCS的連接 MATLAB輔助DSP開發(fā)實現的關鍵是建立MATLAB與DSP間的連接。以往一般是由開發(fā)工具MATLAB把仿真結果先保存,再調入CCS中,在CCS中的仿真中間結果與MATLAB的仿真結果進行比較,以此發(fā)現DSP程序的不足,這需要反復操作,比較麻煩。 MathWorkS公司和TI公司共同開發(fā)的MATLABLinkforCCS開發(fā)工具(CCSLink),實現了在MATLAB,TICCS開發(fā)環(huán)境和DSP硬件間的雙向連接,開發(fā)者可以利用MATLAB強大的數據處理、分析、可視化功能來處理CCS和目標DSP中的數據,可以大大簡化DSP軟件開發(fā)的分析、調試和驗證過程,縮短軟件開發(fā)周期。MATLAB可通過3種方式與CCS、目標DSI,進行連接、數據交換。CCSLink提供了3種連接對象:與CCS的連接對象可從MATLAB命令窗運行CCS中的應用程序,向目標DSP的存貯器、寄存器讀出/寫人數據,檢查DSP狀態(tài),開始/停止目標DSP中運行的程序。與RTDX(實時數據交換)的連接對象使MATLAB與目標DSP直接通信,MATLAB可以實時地向目標DSP取出/發(fā)送數據,并不停止DSP中正在執(zhí)行的程序。嵌入式對象在MATLAB環(huán)境中創(chuàng)建,該對象可代表嵌入在目標C程序中的變量,由其可以直接對嵌入在目標DSP存貯器/寄存器中的變量進行操作。3.2.3 數字濾波器在CCS中的實現其設計流程如圖15所示:圖15 DSP程序設計流程圖3.1音頻文件生成y,fs,nbits=wavread(dsp.wav);y=y(:,1);n=length(y);f=fs*(0:511)/1024;t=0:1/22050:(n-1)/22050;Au=0.3;d=Au*cos(pi*6000*t); %噪聲為6kHz的余弦信號x2=y+d; %加噪聲后的語音信號%sound(x2,fs); %播放加噪聲后的語音信號wavwrite(x2,input.wav);n2=length(x2); y1=fft(y,n);y2=fft(x2,1024); figure(1);subplot(2,1,1);plot(y);title(原始的信號波形);subplot(2,1,2);plot(x2);title(加噪后的信號波形); figure(2);plot(f,abs(y2(1:512);title(噪音信號頻譜); figure(3);subplot(2,1,1)plot(abs(y1);title(原始信號頻譜);subplot(2,1,2)plot(abs(x2);title(加噪后信號頻譜);xout=x2/max(x2);% 歸一化? xto_ccs=round(32767*xout) ;%clear playsnd;fid=fopen(dspindata.dat,w);% 打開文件fprintf(fid,1651 1 0 0 0n);% 輸出文件頭fprintf(fid,%dn,xto_ccs);% 輸出fclose(fid); 用Malab生成混入雜聲后的音頻文件3.2音頻數據讀入:STM #temp,AR1 ;temp存輸入左聲道樣本STM #temp+1,AR2;temp+1存輸入右聲道樣本LDM DRR10,ASTL A,*AR1 ;AR1存左聲道,AR2存右聲道LDM DRR20,ASTL A,*AR2分左右聲道分別讀入音頻樣本數據,放入寄存器,等待進行處理3.3判斷是否進入FIR處理的分支:STM #Echo,AR4;是否FIR處理的分支CMPM *AR4,#1BC FIR,TCB NOFIR根據寄存器數據內容,判斷是否進入FIR處理的分支3.4FIR處理分支內容(核心部分) FIR:SSBX FRCTSTM #temp,AR1;temp存輸入左聲道樣本LD *AR1,A;STM #buffer+1,AR3;STL A,*AR3;將最新樣本存入fx1,fx0保留空間,存FIR后的輸出暫存STM #buffer+25,AR2;將AR2指針指向最高位(最老數據)RPTZA,#24;24MACD*AR2-,COEF,ASTHA,*AR2;把FIR后的數據放在fx0RSBXFRCTLD*AR2,ASTLM A,DXR10;把FIR后的數據輸出語音端口NOPSTLM A,DXR20;這里兩個聲道一起輸出同一個數據RSBXFRCTNOPB L1把讀入的聲音樣本數據在芯片內進行FIR處理4結果分析4.1 軟件仿真運行結果及分析 為了更好的實現語音信號的濾波處理,我們在MATLAB上進行軟件仿真。在MATLAB中模擬語音濾波器的功能,將語音信號中的高頻噪聲去除,還原歌曲音頻。 圖16 濾波器頻率響應圖4.2 硬件仿真運行結果及分析 未經濾波的混有噪聲的音頻頻域波形和經過CCS濾波后還原的歌曲音頻的時域和頻域波形分別如圖: 圖17 濾波前的音頻時域波形圖圖18 濾波后的音頻時域波形圖圖19 濾波前的音頻頻域波形圖圖20 濾波后的音頻頻域域波形圖 比較硬件仿真后得到的還原音頻和MATLAB軟件仿真得到的還原音頻,可得經CCS硬件仿真后的還原的音頻不及MATLAB中的還原的音頻與原來的相近,這是因為數字濾波器的性能主要取決于乘法器的各系數,而這些洗漱在MATLAB上仿真的時候是沒有經過處理的真實數據,因此在MATLAB上仿真是理想的仿真,因而效果比較好。而在CCS上的各個系數是經過量化處理的,因此系數和原始系數比較會有變化,令在CCS中仿真濾波的結果不如MATLAB中的好,但是并不影響它的正確性。5問題,調試 1.用CCS3.3進行硬件仿真時,無法打開仿真軟件,判斷為軟硬件不兼容,改用CCS2.3實現,問題解決。2.繪制出濾波后的波形,發(fā)現FIR濾波器沒有濾掉單頻噪聲。通過自己的仔細檢查,是單頻噪聲的頻率改動后,FIR濾波器的頻率沒有改動。所以單頻噪聲的頻率也應該自己先定義,FIR濾波器的截止頻率應該以單頻噪聲的頻率為中心,這樣重新運行后,結果正確。3.采集的語音信號中高頻噪音不很明顯,使得最后不能較好的觀察到濾波器的性能。解決的方法是:利用matlab產生一個6khz的高頻信號與原來的語音信號相加,這時可以明顯的聽到語音信號中同時伴隨著刺耳的高頻噪音。4.在選擇濾波器的參數時,對具體的音頻信息沒有整體的了解,使得最后FIR濾波器不能達到很好的濾波效果。解決的方法是,首先對音頻信息進行采集,加上高頻噪聲后,再整體的觀察語音信號的波形、頻譜,對高頻段進行分析,設計滿足要求的濾波器。5.在ccs調試過程中,導入indata.dat文件沒有完全體現在波形圖和頻譜圖上。解決的方法是,經過仔細的推敲,原因是導入時沒有正確的設定數據的起始地址,再重新設定地址為0x00E5和長度為256后,正確的顯示出了對應的波形圖和頻譜圖。6.在編寫ccs程序時,沒有正確的設定緩沖區(qū)長度,引起了對濾波器性能的誤判斷。解決方法是,重新設定緩沖區(qū)的長度為40。6 設計改進 FIR數字濾波器的設計有多種方法:有窗函數法,頻率采樣法,切比雪夫逼近法等。其中,窗函數不僅有截斷作用,而且能夠起到平滑的功能。加窗雖然會使原信號時域波形發(fā)生較大變化,但卻更有效地保留了原信號的頻率信息,在很多領域得到了應用。對不同類型的信號,因為由不同的窗函數實現的FIR濾波器其性能不同,因此在截斷處理中不同的濾波器所用的窗函數也不相同。在各種窗函數中,三角窗阻帶最小衰減最小,其次是漢寧窗,再次是哈明窗,布萊克曼窗阻帶最小衰減最大。主瓣寬度方面,三角形窗,漢寧窗以及哈明窗一樣,布萊克曼窗比以三種的主瓣要寬,表現在用布萊克曼窗的濾波器的過渡帶比用其他三種窗函數的要寬。主瓣高度與第一旁瓣高度的差值方面,三角窗高度差最小,其次是漢寧窗,再次是哈明窗,Blackman窗高度差最大。旁瓣衰減的速率,三角形窗和哈明窗比較緩慢,漢寧窗相對前麗種要快,布萊克曼窗很快。旁瓣幅度漢寧窗和哈明窗較大,三角形窗和布萊克曼窗較小。所設計的FIR數字濾波器的階數N不同,所得到的濾波器的過渡帶會不一樣,N越小,過渡帶越寬。而對于同一種窗,N的值越大主瓣寬度越小,相應地,濾波器的過渡帶就越窄,主瓣高度與第一旁瓣高度的差值方面基本不變 而旁瓣的個數越來越多,但旁瓣的寬度隨著N的加大而減小。因為hamming窗的FIR濾波器使99963的能量集中在主瓣內,旁瓣峰值小于主瓣峰值的1,是各種窗函數中性能較好的一種,因此它被廣泛應用。而在四種窗函數中,因為布萊克曼窗的旁瓣峰值最低為一57db可以充分抑制干擾頻譜的旁瓣泄露,所以它的干擾抑制性能最為穩(wěn)定。 針對采用不同的窗函數所造成的頻譜泄露問題,則要采用采用hamming窗,因為它可將9999的能量集中在窗譜的主瓣內,有效地消除頻譜泄漏,并能在一定程度上減少柵欄效應。7 課程設計心得 在本次課程設計的過程中,雖然遇到很多問題,讓組內成員一度灰心喪氣,但經過組內各成員同心協(xié)力的查找問題,翻閱資料以及討論解決方案后,成功的完成了課程設計的內容。此過程中,我們不但能夠將課堂上學到的知識加以運用,通過實際應用掌握DSP的操作以及原理。同時,也培養(yǎng)了我們克服困難戰(zhàn)勝困難的能力,讓我們懂得了團隊合作的重要性,學會根據組內每個成員自己的特點以及長處不同,針對每個成員對該設計的完成在不同方面的獨特作用,充分地了解各成員特性,更好的發(fā)揮團隊的作用,最大化的提升團隊的人員配置,對更好的完成該設計有著不可忽視的作用。 另外,此次設計的過程中,除了增加了對濾波器的設計、實現的認識外,還增加了對MATLAB和CCS的認識和了解,MATLAB具有強大的數值計算和圖形功能,雖然其執(zhí)行效率較低,但其編程效率與可讀性、可移植性要遠高于其他高級語言。它集數值分析、矩陣運算、信號處理和圖形顯示于一體,構成了一個界面友好的用戶環(huán)境,是一個非常優(yōu)秀的算法研究與輔助設計的工具。運用它來進行輔助設計,在系統(tǒng)的準確性和高效率方面起到了至關重要的作用。而CCS加速和增強了實時,嵌入信號處理的開發(fā)過程,它提供配置、構造、調試、跟蹤和分析程序的工具,在基本代碼產生工具的基礎上增加了調試和實時分析的功能。開發(fā)設計人員可在不中斷程序運行的情況下檢查算法的對錯,實現對硬件的實時跟蹤調試,從而大大縮減了程序的開發(fā)時間。另外,也學會了利用CCSLINL命令在MATLAB 和CCS之間進行通信,提高操作的方便度和速度。 附錄主函數:.title"FIR.ASM".mmregs.defstart.def rxDatalevelN.set 25buffer.usect"buffer",levelN+2;25級數組空間,有1個是保留空間IN.usect"IN",8192;輸入的數據保存區(qū)OUT.usect"OUT",8192;輸出的數據保存區(qū)STACK.usect"stack",400h;堆棧的長度 .bss kong,2 .bss Echo,1.bssncount,1.bsstemp,5.bss temp1,1.bss temp2,5;*;* 系統(tǒng)變量定義 *;*CPU_SPEED_160M.set9007hLEFT_PTRq.set4000hRIGHT_PTR.set8000hFLAG.set0060hDataBuffSize .set 8192DELAYTIME.set 0 ;6134;*;* mcBSP變量預定義 *;*SPSA0.set38hSPSD0 .set39hSPSA1.set48hSPSD1.set49hSPCR1.set00hSPCR2.set01hRCR1.set02hRCR2.set03hXCR1.set04hXCR2.set05hSRGR1.set06hSRGR2.set07hMCR1.set08hMCR2.set09hRCERA.set0ahRCERB.set0bhXCERA.set0chXCERB.set0dhPCR.set0ehRCERC.set10hRCERD.set11hXCERC.set12hXCERD.set13hRCERE.set14hRCERF.set15hXCERE.set16hXCERF.set17hRCERG.set18hRCERH.set19hXCERG.set1ahXCERH.set1bhDRR20.set 20hDRR10 .set 21hDXR20 .set22hDXR10 .set 23hDRR21.set 40hDRR11 .set 41hDXR21 .set42hDXR11 .set 43h;*;* 語音AIC23的參數預定義 *;*AIC23_RESET_REG.set0fhAIC23_POWER_DOWN_CTL.set06hAIC23_ANALOG_AUDIO_CTL.set04hANAPCTL_DAC.set10hAIC23_DIGITAL_AUDIO_CTL.set05hAIC23_LT_LINE_CTL.set00hAIC23_RT_LINE_CTL.set01hAIC23_DIGITAL_IF_FORMAT.set07hDIGIF_FMT_LRP.set10hDIGIF_FMT_MS.set40hDIGIF_FMT_IWL_16.set00hDIGIF_FMT_FOR_DSP.set03hAIC23_SAMPLE_RATE_CTL.set08hSRC_SR_08.set0chAIC23_DIG_IF_ACTIVATE.set09hDIGIFACT_ACT.set01hSRC_BOSR.set02hSRC_MO.set01hHECHENGDIGIF.set DIGIF_FMT_LRP|DIGIF_FMT_MS|DIGIF_FMT_IWL_16|DIGIF_FMT_FOR_DSP;*;* FIR濾波器的系數 *;*.dataCOEF:.word20*32768/10000,16*32768/10000;b24,b23.word0*32768/10000,-44*32768/10000;b22,b21.word-117*32768/10000, -181*32768/10000;b20,b19.word-168*32768/10000,0*32768/10000;b18,b17.word359*32768/10000,870*32768/10000;b16,b15.word1415*32768/10000,1835*32768/10000;b14,b13.word1992*32768/10000,1835*32768/10000 ;b12,b11 .word1415*32768/10000,870*32768/10000;b10,b9.word359*32768/10000,0*32768/10000;b8,b7.word-168*32768/10000, -181*32768/10000;b6,b5.word-117*32768/10000,-44*32768/10000;b4,b3.word0*32768/10000,16*32768/10000;b2,b1.word20*32768/10000;b0;*;* 主程序 *;*.textstart:STM#STACK+400h,SP;設置堆棧STM#temp,AR1;向3005h的IO端口寫1ST #1,*AR1PORTW*AR1,3005hSTM #0,CLKMD;初始化頻率RPT #50NOPSTM#CPU_SPEED_160M,CLKMDRPT #50NOP;*STM #SPCR1,SPSA1;mcBSP1的初始化STM #0,SPSD1STM #SPCR2,SPSA1STM #0,SPSD1STM #SPCR1,SPSA1STM#1800h,SPSD1STM #RCR1,SPSA1STM#040h,SPSD1STM#XCR1,SPSA1STM#040h,SPSD1STM#SRGR2,SPSA1STM#2000h,SPSD1STM #SRGR1,SPSA1STM#0FFh,SPSD1STM #XCR2,SPSA1STM#0,SPSD1STM #RCR2,SPSA1STM#0,SPSD1STM #PCR,SPSA1STM#0A08h,SPSD1STM#SPCR2,SPSA1ORM#40h,SPSD1RPT 100NOPSTM #SPCR1,SPSA1ORM#01h,SPSD1STM #SPCR2,SPSA1ORM #01h,SPSD1RPT 100NOP;*STM #temp,AR1 ;AIC23初始化AIC23_Write(AIC23_RESET_REG, 0);ST #AIC23_RESET_REG,*AR1STM #temp+1,AR2ST #0,*AR2LD *AR1,9,AADD *AR2,ASTL A,*AR1STM #SPCR2,SPSA1Testma1:;MVKD SPSD1,*AR2LDM SPSD1,ASTL A,*AR2BITF *AR2,#02hBC SendReady1,TCB Testma1SendReady1:;MVKM,*AR1,DXR11;LD *AR1,ASTLM A,DXR11;STM #temp,AR1 ;AIC23_Write(AIC23_POWER_DOWN_CTL, 0); ST #AIC23_POWER_DOWN_CTL,*AR1STM #temp+1,AR2ST #0,*AR2LD *AR1,9,AADD *AR2,ASTL A,*AR1STM #SPCR2,SPSA1Testma2:;MVMD SPSD1,*AR2LDM SPSD1,ASTL A,*AR2BITF *AR2,#02hBC SendReady2,TCB Testma2SendReady2:;MVDM,*AR1,DXR11;LD *AR1,ASTLM A,DXR11;STM #temp,AR1 ; AIC23_Write(AIC23_ANALOG_AUDIO_CTL, ANAPCTL_DAC );ST #AIC23_ANALOG_AUDIO_CTL,*AR1STM #temp+1,AR2ST #ANAPCTL_DAC,*AR2LD *AR1,9,AADD *AR2,ASTL A,*AR1STM #SPCR2,SPSA1Testma3:;MVMD SPSD1,*AR2LDM SPSD1,ASTL A,*AR2BITF *AR2,#02hBC SendReady3,TCB Testma3SendReady3:;MVDM,*AR1,DXR11;LD *AR1,ASTLM A,DXR11;STM #temp,AR1 ; AIC23_Write(AIC23_DIGITAL_AUDIO_CTL, 0);ST #AIC23_DIGITAL_AUDIO_CTL,*AR1STM #temp+1,AR2ST #0,*AR2LD *AR1,9,AADD *AR2,ASTL A,*AR1STM #SPCR2,SPSA1Testma4:;MVMD SPSD1,*AR2LDM SPSD1,ASTL A,*AR2BITF *AR2,#02hBC SendReady4,TCB Testma4SendReady4:;MVDM,*AR1,DXR11;LD *AR1,ASTLM A,DXR11;STM #temp,AR1 ;AIC23_Write(AIC23_LT_LINE_CTL, 0x17);ST #AIC23_LT_LINE_CTL,*AR1STM #temp+1,AR2ST #017h,*AR2LD *AR1,9,AADD *AR2,ASTL A,*AR1STM #SPCR2,SPSA1Testma5:;MVMD SPSD1,*AR2LDM SPSD1,ASTL A,*AR2BITF *AR2,#02hBC SendReady5,TCB Testma5SendReady5:;MVDM,*AR1,DXR11;LD *AR1,ASTLM A,DXR11;STM #temp,AR1 ; AIC23_Write(AIC23_RT_LINE_CTL,0x17);ST #AIC23_RT_LINE_CTL,*AR1STM #temp+1,AR2ST #017h,*AR2LD *AR1,9,AADD *AR2,ASTL A,*AR1STM #SPCR2,SPSA1Testma6:;MVMD SPSD1,*AR2LDM SPSD1,ASTL A,*AR2BITF *AR2,#02hBC SendReady6,TCB Testma6SendReady6:;MVDM,*AR1,DXR11;LD *AR1,ASTLM A,DXR11;STM #temp,AR1 ;ST #AIC23_DIGITAL_IF_FORMAT,*AR1STM #temp+1,AR2ST #HECHENGDIGIF,*AR2LD *AR1,9,AADD *AR2,ASTL A,*AR1STM #SPCR2,SPSA1Testma7:;MVMD SPSD1,*AR2LDM SPSD1,ASTL A,*AR2BITF *AR2,#02hBC SendReady7,TCB Testma7SendReady7:;MVDM,*AR1,DXR11;LD

注意事項

本文(DSP課程設計 基于DSP開發(fā)板的語言信號濾波處理 電信畢業(yè)設計)為本站會員(仙***)主動上傳,裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知裝配圖網(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。




關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!