《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于DSP的聲反饋抑制系統(tǒng)的研究與實(shí)現(xiàn)
基于DSP的聲反饋抑制系統(tǒng)的研究與實(shí)現(xiàn)
來(lái)源:電子技術(shù)應(yīng)用2013年第1期
肖啟洋,張忠慧,方 元
南京大學(xué) 電子科學(xué)與工程學(xué)院,江蘇 南京210093
摘要: 提出了一種基于TI公司TMS320C6713 DSP和移頻法抑制聲反饋的有效方法。該方法采用能與之無(wú)縫連接的TLV320AIC23 Codec芯片作為語(yǔ)音采集和回放工具,然后基于在Matlab進(jìn)行仿真達(dá)到抑制嘯叫相當(dāng)理想的基礎(chǔ)上完成了在DSP上的實(shí)時(shí)實(shí)現(xiàn)。最后,采用主觀(guān)法和客觀(guān)法評(píng)估了輸出語(yǔ)音的質(zhì)量。結(jié)果表明,該方法能有效抑制再生混響干擾,明顯提高了擴(kuò)聲增益,且顯著改善了頻響特性和聲音清晰度。
關(guān)鍵詞: DSP CODEC 聲反饋 嘯叫 移頻
中圖分類(lèi)號(hào): TP3
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2013)01-0013-04
Research and implementation of acoustic feedback suppression system based on DSP
Xiao Qiyang,Zhang Zhonghui,F(xiàn)ang Yuan
School of Electronic Science and Engineering,Nanjing University,Nanjing 210093,China
Abstract: This paper puts forward an effective way to suppress acoustic feedback based on TI′s TMS320C6713 and using frequency shift.It adopts the Codec chip TLV320AIC23 to capture and play back speech signal, which can connect with DSP seamlessly. Then completes real-time implementation on DSP based on simulating and suppressing screaming in Matlab ideally. The result is also evaluated subjectively and objectively. It turns out that it can suppress the interference of the regenerative reverberation, enhance the amplification gain greatly and improve frequency response characteristics and sound articulation obviously.
Key words : DSP;Codec;acoustic feedback;screaming;frequency shift

    在同時(shí)存在麥克風(fēng)與揚(yáng)聲器的場(chǎng)合,經(jīng)常會(huì)發(fā)生擴(kuò)聲器與麥克風(fēng)之間因電聲耦合而產(chǎn)生聲反饋的現(xiàn)象,其原理如圖1所示。聲反饋是擴(kuò)音系統(tǒng)中最禁忌的現(xiàn)象,它大大限制了系統(tǒng)擴(kuò)聲增益的提高,影響聲音清晰度,導(dǎo)致聲音出現(xiàn)失真,達(dá)不到擴(kuò)音效果。嚴(yán)重的嘯叫甚至可能導(dǎo)致擴(kuò)音設(shè)備燒毀,尤其是功率放大器或音箱的高頻頭[1]。因此,如何有效地抑制聲反饋,是擴(kuò)聲系統(tǒng)中一個(gè)非常重要的問(wèn)題。

    傳統(tǒng)的抑制聲反饋的方法(如改善房間聲學(xué)環(huán)境、調(diào)低音量電位器、采用均衡器拉饋點(diǎn)等方法)對(duì)調(diào)音員要求極高,不僅操作不便,且不能保證擴(kuò)聲系統(tǒng)音質(zhì),均為治標(biāo)不治本的做法。而加入聲反饋抑制器來(lái)抑制、消除嘯叫則是“一勞永逸”的做法,不僅操作簡(jiǎn)單,而且抑制嘯叫的能力比較明顯,能夠達(dá)到足夠理想的擴(kuò)聲效果。目前市場(chǎng)上所見(jiàn)的聲反饋抑制器多為國(guó)外的產(chǎn)品,價(jià)格十分昂貴。所以本著簡(jiǎn)單、經(jīng)濟(jì)實(shí)用的原則,本文介紹的系統(tǒng)采用TI公司的TMS320C6713(以下簡(jiǎn)稱(chēng)6713)浮點(diǎn)DSP處理器和移頻法來(lái)進(jìn)行嘯叫的抑制,包括Matlab仿真和DSP系統(tǒng)實(shí)時(shí)實(shí)現(xiàn),二者都達(dá)到了較明顯、較滿(mǎn)意的抑制效果。
1 移頻法抑制聲反饋
1.1 聲反饋抑制器

    與產(chǎn)生正反饋一樣,產(chǎn)生嘯叫也需同時(shí)滿(mǎn)足幅度和相位兩個(gè)條件。前者需要某頻率語(yǔ)音信號(hào)的幅度大于此信號(hào)原先的幅度,即擴(kuò)聲功放的放大系數(shù)K和系統(tǒng)的反饋系數(shù)β的乘積不能小于1;后者需滿(mǎn)足嘯叫信號(hào)與其輸入信號(hào)相位相同或相差360°的整數(shù)倍。所以理論上只要破壞二者其中一個(gè)條件即可破壞嘯叫產(chǎn)生的條件[2]。在聲反饋抑制方法中(如移頻法、移相法、陷波法和壓幅法等),移頻法較易實(shí)現(xiàn)且效果良好,它是通過(guò)改善擴(kuò)聲系統(tǒng)的頻率特性相應(yīng)地抑制再生混響干擾,使得聲源發(fā)出的聲波經(jīng)聲場(chǎng)回饋到麥克風(fēng)時(shí),不會(huì)在原頻譜上構(gòu)成反饋,提高了擴(kuò)聲增益,頻響特性和聲音清晰度也能得到明顯改善,故本系統(tǒng)采用了移頻法來(lái)抑制嘯叫。
1.2 移頻法
    所謂移頻就是將采集到的語(yǔ)音信號(hào)在其所有頻率成分上移動(dòng)(升高或降低)某一移頻數(shù)Δf,這樣輸出的語(yǔ)音信號(hào)就可以回避房間里峰點(diǎn)對(duì)其施加的影響,產(chǎn)生自激振蕩的同相條件就被破壞了,從而可抑制嘯叫的產(chǎn)生,且對(duì)原先輸入的語(yǔ)音影響甚微。Δf一般為幾赫茲,繼續(xù)變化Δf固然可以提高擴(kuò)聲增益,但一般超過(guò)7 Hz時(shí)人耳就能察覺(jué)得到,所以在本系統(tǒng)中Δf取5 Hz。
    

2.1 數(shù)字振蕩器的實(shí)現(xiàn)
    正弦、余弦等三角函數(shù)在各個(gè)領(lǐng)域常見(jiàn)的振蕩器中得到了廣泛的應(yīng)用,而如何能更精確、消耗處理器指令更少、更快地產(chǎn)生正余弦波成為一個(gè)不得不考慮的問(wèn)題。在TI公司的開(kāi)發(fā)工具CCS 中用C語(yǔ)言調(diào)用庫(kù)函數(shù)sin(double x)和cos(double x)產(chǎn)生正、余弦波序列,每次都會(huì)消耗4 000條左右的指令,這是不可取的,將對(duì)以后的實(shí)時(shí)處理產(chǎn)生很大的影響;查表法雖然只有簡(jiǎn)單的加、減操作,速度也較快,但需要消耗一定的存儲(chǔ)空間來(lái)存儲(chǔ)查找表,較大的表格所造成的驚人的開(kāi)銷(xiāo)往往使嵌入式系統(tǒng)難以承受;而數(shù)字振蕩器法不但容易實(shí)現(xiàn),且產(chǎn)生的正、余弦波頻率是可編程的,可以很方便獲得所需的振蕩器。因此,本系統(tǒng)選用數(shù)字振蕩器。如有一正弦序列,使用Z變換的線(xiàn)性性質(zhì),可得正弦序列的Z變換為:

2.2 濾波器的設(shè)計(jì)
    本系統(tǒng)中多處用到濾波器,其中最重要的是數(shù)移頻模塊中的兩處低通濾波器(如圖2所示)。在選擇濾波器時(shí),考慮到在具有同樣良好的頻譜衰減特性的情況下,F(xiàn)IR濾波器的階數(shù)要比IIR濾波器大得多,而IIR所需的運(yùn)算量(主要指乘法和加法次數(shù))較FIR小得多,所以本系統(tǒng)在此處選用IIR濾波器。
    IIR濾波器中,橢圓濾波器(elliptic)通帶和阻帶都會(huì)出現(xiàn)較大起伏,且它的相頻響應(yīng)完全是非線(xiàn)性的,在接近過(guò)渡帶的地方尤為突出;切比雪夫?yàn)V波器頻率響應(yīng)的幅頻特性在通頻帶內(nèi)存在幅度波動(dòng);而巴特沃斯濾波器的幅頻響應(yīng)的曲線(xiàn)在通帶和阻帶內(nèi)都比較平坦,具有最平特性,且相頻響應(yīng)在通帶內(nèi)幾乎是線(xiàn)性的,故本系統(tǒng)采用巴特沃斯濾波器。根據(jù)在Matlab中設(shè)計(jì)出的濾波器的參數(shù),要在DSP開(kāi)發(fā)環(huán)境下實(shí)現(xiàn)此濾波器,必須考慮兩方面:(1)IIR的單位脈沖響應(yīng)是無(wú)限長(zhǎng)的,因而不能像實(shí)現(xiàn)FIR那樣直接用卷積來(lái)計(jì)算,而要用遞推法解差分方程;(2)根據(jù)DSP字長(zhǎng)及精度的特點(diǎn)對(duì)參數(shù)進(jìn)行定標(biāo)、取舍、量化等處理,特別是對(duì)于定點(diǎn)處理器幾乎是必須要考慮的,故本系統(tǒng)選用TI公司的浮點(diǎn)處理器6713以達(dá)到更精確目的。圖5是向12階巴特沃斯濾波器輸入低頻正弦與高頻余弦疊加信號(hào)、并在DSP上運(yùn)行前后的濾波效果圖,可見(jiàn)設(shè)計(jì)的濾波器能較理想地滿(mǎn)足任務(wù)要求。

3 DSP系統(tǒng)實(shí)現(xiàn)
    DSP實(shí)現(xiàn)嘯叫抑制階段主要包含語(yǔ)音信號(hào)的采集、嘯叫通道的建立、信號(hào)移頻處理、語(yǔ)音信號(hào)的輸出等部分。
3.1 系統(tǒng)硬件結(jié)構(gòu)
    6713是TI公司6000系列的一款非常經(jīng)典的新型浮點(diǎn)DSP芯片。它最高主頻可達(dá)300 MHz,處理速度高達(dá)2 400 MPIS;片上外設(shè)資源也很豐富,本系統(tǒng)將用到其兩個(gè)多通道緩沖串口(McBSP)。6713的優(yōu)異的性能使之特別適合于高精度應(yīng)用,如在專(zhuān)業(yè)音頻、數(shù)據(jù)采集、去噪、醫(yī)療和診斷圖像應(yīng)用等領(lǐng)域[5]。
    圖6為6713 與Codec芯片TLV320AIC23(以下簡(jiǎn)稱(chēng)AIC23)的連接示意圖,即語(yǔ)音的采集(A/D轉(zhuǎn)換)和回放(D/A轉(zhuǎn)換)環(huán)節(jié)。AIC23是TI公司生產(chǎn)的一款高性能立體聲音頻編解碼器,含有模擬/數(shù)字音頻接口、控制接口、時(shí)鐘管理、電源管理等部分。AIC23內(nèi)部集成的模/數(shù)轉(zhuǎn)換和數(shù)/模轉(zhuǎn)換部件采用了先進(jìn)的Sigma-Delta過(guò)采樣技術(shù),可以在8 kHz~96 kHz的頻率范圍內(nèi)提供16 bit、20 bit、24 bit和32 bit的采樣。

    在Codec的控制環(huán)節(jié)中,根據(jù)MODE引腳電平可決定它是工作在I2C(2線(xiàn))模式還是SPI(3線(xiàn))模式,圖6中此引腳接高電平,即工作在SPI模式下,此時(shí)與之連接的McBSP1也必須配置為SPI這種全雙工通信的模式(此時(shí)CLKX和CLKR內(nèi)部相連),這也正體現(xiàn)了AIC23與McBSP之間能進(jìn)行無(wú)縫連接。此外,因?yàn)镃odec的控制接口只是用來(lái)接收DSP發(fā)出的配置寄存器的命令(即單向,只接收數(shù)據(jù)通道),所以此SPI模式中沒(méi)有串行輸出數(shù)據(jù)線(xiàn),即“三線(xiàn)”模式而非SPI傳統(tǒng)的四線(xiàn)模式。CS是幀同步信號(hào),SCLK與SDIN分別是串行數(shù)據(jù)時(shí)鐘、串行輸入數(shù)據(jù)線(xiàn)。DSP發(fā)出的控制命令是16 bit的且總是從MSB(最高位)開(kāi)始。圖7所示的時(shí)序圖中bit[15:9]為11個(gè)AIC23寄存器的7位地址,后9位是欲配置的值,所以此處編程須注意將數(shù)據(jù)移1位。本系統(tǒng)將Codec配置為16 kHz采樣、16 bit量化、雙聲道、MIC采集模擬語(yǔ)音信號(hào)輸入、HeadPhone輸出模擬語(yǔ)音信號(hào)。

    數(shù)據(jù)通道環(huán)節(jié)中,圖6中Codec芯片通過(guò)DSP的McBSP1口進(jìn)行語(yǔ)音數(shù)據(jù)的A/D和D/A轉(zhuǎn)換(即全雙工的數(shù)據(jù)通道)。芯片數(shù)字音頻接口部分有bit時(shí)鐘信號(hào)BCLK、數(shù)據(jù)輸入/輸出DIN和DOUT、幀信號(hào)LRCIN和LRCOUT。AIC23支持多種音頻接口模式,這里將其配置為主模式和與TI DSP的McBSP相兼容的DSP模式。這樣,BCLK就會(huì)輸出時(shí)鐘信號(hào),而LRCIN和LRCOUT就必須連接到DSP的幀同步信號(hào)FS引腳上。如圖8所示,采集到的數(shù)據(jù)也是從MSB開(kāi)始傳輸,這里將AIC23的Digital Audio Interface Format寄存器配置為先發(fā)送16 bit的左通道數(shù)據(jù),緊接著發(fā)送16 bit的右通道數(shù)據(jù)[6]。

3.3 系統(tǒng)運(yùn)行分析

 


    在實(shí)驗(yàn)室中建立一個(gè)簡(jiǎn)易的嘯叫通道,即麥克風(fēng)-前期放大-DSP系統(tǒng)-功放-音響。主觀(guān)上評(píng)價(jià)可通過(guò)不斷減少拾音器和擴(kuò)音器之間距離或不斷提高擴(kuò)音器增益來(lái)感受DSP中插入移頻模塊前后嘯叫的情況。本文所建嘯叫通道在處于后者的情況下,距離為零和增益到最大位置時(shí)均不會(huì)產(chǎn)生嘯叫,表明抑制效果十分明顯。圖10的上圖所示為拾音器采集到的從正常語(yǔ)音到開(kāi)始嘯叫的一段波形圖,在同樣的環(huán)境將移頻模塊加入DSP中,采集到的數(shù)據(jù)如圖10的下圖所示。對(duì)比兩圖可以明顯看到,嘯叫得到抑制甚至是被消除,嘯叫抑制效果比較理想。對(duì)采集到數(shù)據(jù)進(jìn)行計(jì)算可知,系統(tǒng)增益提高了約6 dB。
    本文詳細(xì)介紹了基于聲反饋抑制器中的移頻法來(lái)抑制、消除嘯叫的方法,并在Matlab上進(jìn)行仿真和在DSP上進(jìn)行實(shí)現(xiàn)。實(shí)驗(yàn)表明,此法對(duì)嘯叫起到了很好的抑制、消除作用,可使系統(tǒng)增益提高大約6 dB,較為理想。與其他方式相比,移頻法較容易實(shí)現(xiàn)、效果明顯、既經(jīng)濟(jì)又實(shí)用、貼近實(shí)際,具備很高的應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] 盧官明,宗昉.數(shù)字音頻原理及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2005:160-163.
[2] 謝劍躍.擴(kuò)聲系統(tǒng)中聲反饋的產(chǎn)生及抑制方法[J].音響技術(shù),2011,20(1):32-36.
[3] 樊昌信,曹麗娜.通信原理(第6版)[M].北京:國(guó)防工業(yè)出版社,2009:86-128.
[4] 林靜然.基于TI DSP的通用算法實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2008:96-109.
[5] 三恒星科技.TMS320C6713 DSP原理與應(yīng)用實(shí)例[M].北京:電子工業(yè)出版社,2009:74-87.
[6] Texas Instruments. TLV320AIC23 stereo audio Codec,8-to  96 kHz,with integrated headphone amplifier data manual  (SLWS106D)[R].2002.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。