新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > IP電話回聲消除器的設計及其DSP實現(xiàn)

IP電話回聲消除器的設計及其DSP實現(xiàn)

作者: 時間:2011-07-05 來源:網(wǎng)絡 收藏

  其中,H(z)傳遞函數(shù)用來表示通道的特性。NLMS自適應濾波器就是要盡快地調(diào)整自己的系數(shù),使其沖擊響應盡量逼近H(z)的沖擊響應,這樣才能使誤差信號e(n)逼近0。具體的過程如下。
自適應濾波器的輸出由式(1)給出:

其中:N是NLMS自適應濾波器的階數(shù)。BT=〔b0,b1Λ,bN-1〕是濾波器的系數(shù)矢量。-1),Λ,y(n-N+1)〕是濾波器n時刻的輸入信號矢量。
  由于前面已經(jīng)假設為遠端說話模式,故,近端語音信號x(n)為0。誤差信號e(n)可由式(2)給出:

其中:μ為步長因子,是一個常數(shù),由試驗來確定,μ的選取至關重要,為了確保收斂,必須滿足0<μ<2。μ取值過大,雖然可以加快自適應濾波器的收斂速度,但是誤差信號e(n)也會大,μ取值過小,則使收斂速度變慢。e(n)由式(2)計算。P(n)是n時刻輸入信號矢量yn的短時平均功率,。

4 語音檢測器
  語音檢測器在整個消除系統(tǒng)中也占據(jù)非常重要的地位,這是因為不同的語音模式自適應濾波器所要求執(zhí)行的功能是不相同的,下面分別說明。
4.1 遠端說話檢測器
  當近端用戶不說話而只有遠端用戶說話的時候,就是遠端說話模式。式(4)用于檢測遠端說話模式。

代表遠端信號和近端信號的較短窗功率估計值。是閥值常量,要由實驗來確定,取得太大或者太小都會導致檢測錯誤。
  如果檢測出為遠端說話模式,那么,應該通過圖1中的NLMS控制器同時打開NLMS自適應濾波器的濾波功能和系數(shù)更新功能。
4.2 雙端說話檢測器
  當近端用戶和遠端用戶同時說話的時候,就是雙端說話模式。式(5)用于檢測雙端說話模式。

表誤差信號和近端信號的短窗功率估計值。C是系數(shù)常量,C=10ERLE/10,一般ERLE取為8dB。D是閥值常量,要由實驗來確定,取得太大或者太小都會導致檢測錯誤,影響濾波效果。
  如果檢測出為雙端說話模式,則要凍結FIR濾波器的系數(shù)更新功能,只需要完成濾波功能,即只要計算濾波器輸出r(n)的值。
4.3 近端說話檢測器
  當只有近端用戶說話而遠端用戶不說話的時候,就是近端說話模式。式(6)用于檢測近端說話模式。

表近端信號短窗功率估計值和長窗功率估計值。NES MARGIN是閥值常量,要由實驗來確定。
  如果檢測出為近端說話模式,那么,應該通過圖1中的NLMS控制器同時凍結NLMS自適應濾波器的濾波功能和系數(shù)更新功能。
5 粗略時延估計器
  由于遠端信號y(n)通過通道要經(jīng)過編碼、打包和壓縮的處理,會花費大量的時間,這就必然會產(chǎn)生延時。而且這種延時還是在一定范圍內(nèi)隨機波動的,這就增加了估計的難度,要想準確地計算出延時的大小是不可能的,只能是一個粗略的估計值,故稱為粗略時
  延估計器??梢园凑帐剑?)和式(8)來估計延時值:

  首先按照式(7)計算從近端傳到遠端的聲學信號和誤差信號的互相關函數(shù),然后從中選出絕對值最大者,作為延時的估計參數(shù)。
6 芯片簡介及關鍵代碼介紹
  本文選擇TI公司的TMS320C5402為硬件平臺來回聲消除,TMS320C54x是一款低功耗、高性能的定點數(shù)字信號處理器,運行速度可達到100MS。有兩個40位累加器A、B,192K字可尋址空間(64K字的程序存儲器、64K字數(shù)據(jù)存儲器及64K字I/O空間)。采用8總線增強型哈佛結構,多級流水線操作,專用的硬件乘法器,的專用指令(如FIRS,LMS)。
  下面是用DSP回聲消除的NLMS算法的關鍵代碼:



評論


相關推薦

技術專區(qū)

關閉