基于DSP的語(yǔ)音降噪系統設計
在現實(shí)的語(yǔ)音通信中會(huì )不可避免地受到來(lái)自環(huán)境中的背景噪聲影響,致使通信質(zhì)量嚴重下降,甚至聽(tīng)不清楚對方講話(huà)的內容,因此對帶噪語(yǔ)音信號進(jìn)行降噪已經(jīng)成為語(yǔ)音通信中的一個(gè)非常迫切的課題。近年來(lái),隨著(zhù)VLSI技術(shù)的發(fā)展和高速DSP芯片的出現,語(yǔ)音增強方法走向實(shí)用化[1]。本文所介紹的語(yǔ)音降噪系統能夠有效地實(shí)現數字降噪功能,由于降噪處理時(shí)不但要進(jìn)行信號的采集與回放,還要進(jìn)行降噪算法的實(shí)時(shí)處理,采用具有高速實(shí)時(shí)處理能力的DSP TMS320VC5509進(jìn)行處理,能夠滿(mǎn)足日常生活中語(yǔ)音通信中的降噪要求。
本文引用地址:http://dyxdggzs.com/article/257888.htm1 降噪系統設計
1.1 硬件系統結構圖
本系統采用TI公司的TMS320VC5509芯片進(jìn)行信號處理和譜相減算法的處理,語(yǔ)音降噪系統如圖1所示。系統采用12 MHz的晶振為DSP提供時(shí)鐘,DSP內部工作時(shí)鐘采用PLL方式設置成16倍頻,使DSP的內部時(shí)鐘達到192 MHz。語(yǔ)音采集與回放模塊采用TLV320AIC23語(yǔ)音編解碼芯片。CPLD XC95114提供讀寫(xiě)Flash AM29LV800B和配置,啟動(dòng)語(yǔ)音編解碼模塊AIC23的控制信號。供電模塊采用TPS73HD301,分別提供DSP芯片所需的1.6 V內核電壓和3.3 V的I/O電壓。
1.2 主要電路原理分析
圖2為5509DSP與TLV320AIC23的接口原理圖。
音頻Codec芯片TLV320AIC23通過(guò)外圍器件對其內部寄存器進(jìn)行編程配置,使用靈活,其配置接口支持SPI總線(xiàn)接口和I2C總線(xiàn)接口, 數據傳輸格式支持右判斷模式、左判斷模式、I2S 模式和DSP模式4種方式,其中TI 模式專(zhuān)門(mén)針對TI DSP設計[2,3]。C5509的多通道緩沖串口MCBSP可以配置為SPI總線(xiàn)接口,其串行數據傳輸格式與TLV320AIC23的DSP模式兼容,此外,這兩款芯片的I/O電壓兼容,從而使得C5509與TLV320AIC23可以無(wú)縫連接,系統設計簡(jiǎn)單。
MODE引腳作為串行接口輸入模式選擇端,0為I2C模式,1為SPI模式;由于C5509片內外設含有I2C模塊,直接使用C5509的I2C模塊控制TLV320AIC23,此時(shí)C5509作為I2C總線(xiàn)的主設備,TLV320AIC23作為從設備,通過(guò)編程完成對TLV320AIC23的配置。
TLV320AIC23的數字音頻接口采用DSP模式,將TLV320AIC23配置為主設備。與DSP的McBSP0無(wú)縫連接,將其作為雙向的數據收發(fā)通道。輸入輸出的幀同步信號LRCIN、LRCOUT分別接McBSP串口的FSX0與FSR0,時(shí)鐘信號BCLK與McBSP的串口輸出時(shí)鐘CLKX0相連,同時(shí)通過(guò)CLKX0驅動(dòng)輸入串行時(shí)鐘CLKR0,以保證串口數據收發(fā)的一致與同步。SCL和SDI分別是 TLV320AIC23的控制端口和數據輸入端,分別和C5509的I2C模塊端口 SCL和 SDA 相連。
1.3 音頻信號的采集與回放
此系統中采用MICPHONE采集語(yǔ)音信號,把采集的語(yǔ)音信號經(jīng)過(guò)模數變換,進(jìn)入DSP后再經(jīng)過(guò)濾波存儲到DSP的片內存儲空間。然后調用譜相減算法降噪軟件進(jìn)行降噪處理,得到新的處理后的數據再經(jīng)過(guò)數模變換,放大后從耳機輸出。
通過(guò)MIC采集的語(yǔ)音信號通過(guò)TLV320AIC23語(yǔ)音編解碼芯片對語(yǔ)音進(jìn)行模數轉換。TLV320AIC23是一個(gè)高性能的多媒體數字信號編解碼器,該模塊具有模數轉換器、數模轉換器,使用了高效的 Multibit sigma-delta 和過(guò)采樣數字插補濾波技術(shù),支持 16、20、24 和 32位格式從8 kHz~96 kHz采樣頻率的音頻信號的采集與回放,并具有較高的信噪比(SNR)和較低的能耗。利用多通道緩沖串口McBSP(multiply—channel buffer interferce)與DSP通信。把通過(guò)TLV320AIC23模數轉換后的數據通過(guò)McBSP1傳送給DSP進(jìn)行降噪處理,處理后的數據經(jīng)過(guò)數模轉化后傳送到耳機輸出。
2 系統算法與軟件設計
2.1 譜相減算法[4,5]
目前降噪算法具有代表性的有自相關(guān)算法、自適應噪聲濾波法、短時(shí)譜幅度估計法、譜相減算法、小波變換等。譜相減算法因具有運算量小、容易實(shí)時(shí)實(shí)現、增強效果好等特點(diǎn),是目前在降噪系統中最常用的算法之一。
譜相減算法的基本原理是在頻域將噪聲的頻譜分量從帶噪語(yǔ)音信號的頻譜中減去。譜減的提出前提是假設語(yǔ)音信號與加性噪聲相互獨立,它假設噪聲是統計平穩的,即有語(yǔ)音期間噪聲振幅譜的期望值與無(wú)語(yǔ)音間隙噪聲的振幅譜的期望值相等,用無(wú)語(yǔ)音期間測得的噪聲頻譜的估計值取代有語(yǔ)音期間的噪聲頻譜,與含有噪音的語(yǔ)音頻譜相減,即可得到語(yǔ)音頻譜估計值。假設帶噪語(yǔ)音的模型表達式如式(1):
其中sm(n)表示純凈的語(yǔ)音,dm(n)表示噪聲,ym(n)表示帶噪語(yǔ)音。其中m=0,1,2,…,M-1;n=0,1,2,…,N-1;M、N分別表示一段語(yǔ)音中包含的幀數和每幀信號的長(cháng)度。
在實(shí)際中由于語(yǔ)音信號是不平穩的,但是具有短時(shí)平穩性,因此計算時(shí)通常要加窗處理。設Yk、Sk、dk分別表示帶噪語(yǔ)音,純凈語(yǔ)音和噪聲的傅里葉系數。對(1)式進(jìn)行傅里葉變換,由于假設的語(yǔ)音與噪音是不相關(guān)的,可得式(2),即
譜相減算法原理圖如圖3所示。
2.2 系統軟件設計
在本系統的軟件設計中,軟件系統主要包括主程序、中斷服務(wù)程序、中斷向量表和鏈接命令文件,其中最重要的是主程序和中斷服務(wù)程序,中斷服務(wù)程序主要功能是實(shí)現數據采集與數據更新。
系統主函數是程序執行的入口并完成需要的初始化工作。主函數中主要包括對時(shí)鐘、多通道緩沖串口McBSP1以及對AIC23的初始化配置。接著(zhù)啟動(dòng)串口進(jìn)行正常工作,最后進(jìn)行譜相減法降噪算法處理,輸出降噪后的語(yǔ)音信號。
在該系統中,音頻信號通過(guò)MIC被采集,然后經(jīng)過(guò)TLV320AIC23語(yǔ)音編解碼模塊,把采集的語(yǔ)音信號進(jìn)行信號保持、采樣、量化后轉換成數字信號,轉換成的數字語(yǔ)音信號以中斷方式被DSP讀取,通過(guò)DSP的多通道緩沖串口McBSP1以數據幀的方式把數據存儲到片上緩沖區里。當一幀數據采集完后,中斷返回到主程序對數據的進(jìn)行加窗處理、FFT變換,然后再進(jìn)行有聲無(wú)聲檢測,判斷是否需要進(jìn)行降噪處理。處理后的數據通過(guò)McBSP1輸出到TLV320AIC23進(jìn)行回放。軟件處理流程結構如圖4所示。
CPU在相應接收中斷服務(wù)程序后,在服務(wù)程序中將128個(gè)采樣值拷貝到處理緩沖區中等待處理,實(shí)現緩沖區的數據轉換,然后置1使程序進(jìn)入主程序中進(jìn)行降噪處理。
本系統中實(shí)時(shí)設計中的關(guān)鍵技術(shù)有加窗處理、幀間重疊、幀移位、快速傅里葉變換(FFT)、快速傅里葉反變換、定點(diǎn)數與浮點(diǎn)數的轉化。在進(jìn)行FFT變換的時(shí)候必然會(huì )產(chǎn)生大量的數據,所以在對數據進(jìn)行讀取與存儲時(shí)不可避免地要造成流水線(xiàn)沖突,為了解決這樣的問(wèn)題,可以在產(chǎn)生流水線(xiàn)沖突的兩條指令間加上三個(gè)NOP指令[6,7]。
通過(guò)譜相減算法在DSP開(kāi)發(fā)板上搭建的語(yǔ)音降噪系統中進(jìn)行降噪實(shí)驗,實(shí)驗結果表明,本系統能夠有效地降低環(huán)境噪聲對語(yǔ)音的影響,能夠有效地提高信噪比,改善語(yǔ)音通信質(zhì)量,達到降低語(yǔ)音通信中的背景噪聲的目的。
參考文獻
[1] 黃蘇雨,梁聲灼,黃蘇園.語(yǔ)音增強方法綜述[J].計算機與現代化,2007,23(3):16-20.
[2] 汪春梅,孫紅波.TMS320C5000系列DSP系統設計與開(kāi)發(fā)實(shí)例[M].北京:電子工業(yè)出版社,2004.
[3] 丁祥,余小清.音頻編解碼器TLV320AIC23及其與DSP接口設計[J].單片機與嵌入式系統,2002,2(6):35-37.
[4] 王欣,羅代升,王正勇.基于改進(jìn)譜減算法的語(yǔ)音增強研究[J].成都信息工程學(xué)院學(xué)報,2007,22(2):201-204.
[5] 張俊.基于譜減算法語(yǔ)音增強的研究[J].信息技術(shù),2009,33(3):74-76.
[6] Texas Instruments.TLV320AIC23B stereo audio CODEC datamanual[Z],2003.
[7] 北京瑞泰創(chuàng )新科技有限責任公司. ICETEK-VCS5509 EVM用戶(hù)使用手冊V1.0[Z],2004.
評論