專利名稱:一種回聲抵消功能的測試方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種通信系統(tǒng)的測試技術(shù),尤其涉及通信系統(tǒng)中回聲抵消功能的測試技術(shù)。
當(dāng)前用戶電話機(jī)都通過支持雙向傳輸?shù)亩€線路(稱為用戶環(huán)路)連到電話局,但在長途電話傳輸系統(tǒng)中,為了便于話音的傳送,必須將兩個(gè)傳輸方向分別接在分開的兩對線上,從而形成四線線路。連接二線與四線部分的裝置稱為混合電路。由于混合電路的阻抗失配產(chǎn)生了回波,使得來自于發(fā)話者的語音信號不能完全傳輸?shù)绞茉捳咴挋C(jī),反射的語音信號經(jīng)反向線路傳輸,又回到了發(fā)話者話機(jī),使發(fā)話者聽到了自己惱人的回聲。而在無線系統(tǒng)中,由于信源編解碼與信道編解碼處理產(chǎn)生的延時(shí),使得即使不在長途通話狀態(tài)下也可以明顯地聽到回聲。
現(xiàn)有的通信網(wǎng)多采用DSP數(shù)字芯片,通過自適應(yīng)數(shù)字濾波技術(shù)制成的回聲抵消器(如利用美國TI公司的TMS320C54X系列制成的回聲抵消器)設(shè)置在混合電路處、基站處或固定臺(tái)處來消除本端產(chǎn)生的回聲。
雖然利用剛才提到的方法制成的回聲抵消器從理論上可以消除回聲,但到底效果如何需要測試才能得知。眾所周知,完全在實(shí)際環(huán)境中模擬各種要求的回聲來測試其是否都能夠抵消幾乎是不可行的,而且在實(shí)際環(huán)境中測試也是極不方便的。此外,等到需要在實(shí)際環(huán)境中測試時(shí),回聲抵消器已經(jīng)到了成品階段,這時(shí)候測試才介入會(huì)大大降低開發(fā)的效率。如果采用DSP廠商提供的硬件仿真器,除了效果不理想外,也帶來了開發(fā)成本的大大上升。最為重要的一點(diǎn)是對于回聲抵消器沒有完善的測試方法,現(xiàn)有方法既無法保證抵消回聲的質(zhì)量,又不能分測試階段的提供測試結(jié)果,為開發(fā)人員分析、定位與解決問題提供依據(jù)。
美國專利US4727566就是這樣一個(gè)例子,其主要內(nèi)容為在數(shù)據(jù)通信網(wǎng)絡(luò)中(二四線轉(zhuǎn)換部分),將二線部分?jǐn)嚅_,接上測試設(shè)備,其產(chǎn)生一定編碼的數(shù)據(jù)信號,作為遠(yuǎn)端輸入,近端不輸入信號,在回聲抵消器輸出端接收數(shù)據(jù),并按正負(fù)極性與制訂的正負(fù)門限比較,當(dāng)超過門限值即記為1,認(rèn)為是誤碼,否則為0,從而得出誤碼率(即由測試點(diǎn)處二四線轉(zhuǎn)換部分產(chǎn)生的),以便評判該回聲抵消器是否合格。且該專利只適用于數(shù)據(jù)通信網(wǎng)中二四線轉(zhuǎn)換產(chǎn)生的回聲,不適用無線通信系統(tǒng)。由于其必須在實(shí)際環(huán)境中進(jìn)行測試,只能用于驗(yàn)證特定系統(tǒng)、特定實(shí)際情況下(只會(huì)有一種或幾種的回聲信道存在)的回聲抵消器的工作正確與否,而且已經(jīng)到了事后的成品階段。且根據(jù)該美國專利,還需要開發(fā)實(shí)際的設(shè)備,帶來了不便且使開發(fā)成本上升。此外,該美國專利只能夠給出在特定情況下,回聲抵消器合格與否的結(jié)論,而沒有分不同的測試階段進(jìn)行深入測試,無法提供全面相應(yīng)的測試結(jié)果,無法為分析、定位解決問題提供依據(jù)。
本發(fā)明的目的在于提供一種回聲抵消器的測試方法,該方法能夠比較全面有效地對回聲抵消器代碼的效果進(jìn)行測試,且不通過構(gòu)造實(shí)際的測試環(huán)境即可對回聲抵消效果進(jìn)行測試,從而為分析、定位解決回聲問題提供依據(jù)。
本發(fā)明提出的一種回聲抵消器的測試方法,包括以下步驟第一步將實(shí)際情況下產(chǎn)生的或根據(jù)健壯性測試等規(guī)則定制的信號進(jìn)行采集;第二步按照各測試階段假設(shè)的各種回聲信道對這些信號進(jìn)行處理,使之成為相應(yīng)的回聲信號;第三步將原來的信號以及相應(yīng)的回聲信號作為遠(yuǎn)端與近端信號輸入回聲抵消器;第四步捕捉相應(yīng)的輸出信號以及回聲抵消濾波器的系數(shù);第五步將輸出信號以及濾波器系數(shù)恢復(fù)成曲線;第六步同原遠(yuǎn)端信號輸入曲線及按測試要求模擬的回聲信道系數(shù)曲線相比較,判別回聲抵消器在各種實(shí)際情況下或者在健壯性等情況下回聲抵消功能及性能實(shí)現(xiàn)的正確性與否。
所述第一步驟使用了聲音數(shù)據(jù)的采集方式,聲音數(shù)據(jù)的采集用于定制各種實(shí)際的測試用例,并轉(zhuǎn)換為相應(yīng)的數(shù)據(jù)格式作為所述第三步驟回聲抵消器的近端或遠(yuǎn)端輸入。
所述第二步驟根據(jù)假設(shè)的不同回聲信道對采集來的數(shù)據(jù)進(jìn)行處理使之成為符合一定定制要求的回聲信號的方法,即根據(jù)回聲信道的延時(shí)數(shù)將采集來的數(shù)據(jù)進(jìn)行相應(yīng)的延時(shí)。
所述第三步驟是將延時(shí)后的回聲信號及原來的信號(遠(yuǎn)端信號)輸入回聲抵消器,通過軟件模擬仿真并調(diào)用回聲抵消代碼,取得測試數(shù)據(jù)。
所述第四步驟是由模擬仿真軟件平臺(tái)自動(dòng)將測試結(jié)果存入相應(yīng)的文件中;所述第五步驟將模擬仿真軟件平臺(tái)取得的測試數(shù)據(jù)或定制采集來的數(shù)據(jù)復(fù)原成相應(yīng)的曲線形式以便于比較判別。
采用本發(fā)明的技術(shù)方案,可以對回聲抵消器代碼進(jìn)行六個(gè)方面的測試,即回聲抵消代碼的正確實(shí)現(xiàn)性測試、功能完善性測試、回聲抵消的效率測試、回聲抵消代碼在邊界點(diǎn)處的工作情況測試、回聲抵消代碼的健壯性測試、回聲抵消代碼綜合性測試。
本發(fā)明不用借助構(gòu)建實(shí)際的測試環(huán)境而是通過全面模擬仿真的方法來測試回聲抵消器代碼的正確性,測試完全擺脫了實(shí)際環(huán)境的限制,且大大提高了開發(fā)效率;其次能夠不購買昂貴的硬件仿真設(shè)備,只需進(jìn)行計(jì)算機(jī)仿真測試,節(jié)省成本,且簡單易行;再次,對回聲抵消代碼能夠有步驟、分階段的進(jìn)行測試,使得該測試不僅僅給出一個(gè)行與不行的結(jié)論,而是全面提供一個(gè)各方面的測試方法與依據(jù),便于分析與解決問題。而且本發(fā)明不僅適用于長途話網(wǎng),還適用于無線系統(tǒng)。
下面通過附圖并結(jié)合具體的實(shí)施例對本發(fā)明進(jìn)行詳細(xì)的描述。
圖1是回聲抵消器的原理框圖;圖2a是回聲抵消自適應(yīng)濾波器系數(shù)更新過程的流程圖;圖2b是本發(fā)明回聲抵消器測試方法的主程序流程圖;圖2c是對輸入信號進(jìn)行延時(shí)定制回聲的流程圖;圖3a是遠(yuǎn)端輸入正弦信號、近端輸入為0(也無回波信號)的回聲抵消濾波器的系數(shù)曲線圖(迭代4000點(diǎn));圖3b是圖3a情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代4000點(diǎn));圖3c是遠(yuǎn)端信號為0、近端輸入正弦信號的回聲抵消濾波器的系數(shù)曲線圖(迭代4000點(diǎn));圖3d是圖3c情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代4000點(diǎn));圖3e是遠(yuǎn)端近端分別輸入正弦信號,該回聲抵消濾波器的系數(shù)曲線圖(迭代4000點(diǎn));圖3f是圖3e情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代4000點(diǎn));
圖3g是遠(yuǎn)端輸入正弦信號、近端輸入其回聲信號的回聲抵消濾波器系數(shù)曲線圖(迭代4000點(diǎn));圖3h是圖3g情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代4000點(diǎn));圖4a是遠(yuǎn)端輸入一個(gè)語音信號、近端輸入其回聲信號的回聲抵消濾波器的輸出信號曲線圖(迭代8000點(diǎn));圖4b是遠(yuǎn)端輸入為0、近端輸入一語音信號的回聲抵消濾波器的輸出信號曲線圖(迭代8000點(diǎn));圖4c是遠(yuǎn)端輸入一語音信號、近端輸入其兩重回聲信號的回聲抵消濾波器的系數(shù)曲線圖(迭代8000點(diǎn));圖4d是圖4c情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代8000點(diǎn));圖5a是遠(yuǎn)端輸入一語音信號、近端輸入其回聲信號的回聲抵消濾波器迭代1000點(diǎn)時(shí)的濾波器系數(shù)曲線圖;圖5b是遠(yuǎn)端輸入一語音信號、近端輸入其回聲信號的回聲抵消濾波器迭代3000點(diǎn)時(shí)的濾波器系數(shù)曲線圖;圖5c是遠(yuǎn)端輸入一語音信號、近端輸入其回聲信號的回聲抵消濾波器迭代5000點(diǎn)時(shí)的濾波器系數(shù)曲線圖;圖5d是遠(yuǎn)端輸入一語音信號、近端輸入其回聲信號的回聲抵消濾波器迭代8000點(diǎn)時(shí)的濾波器系數(shù)曲線圖;圖6a是近端輸入為0、遠(yuǎn)端輸入語音,且無回聲的回聲抵消濾波器的系數(shù)曲線圖(迭代2000點(diǎn));圖6b是圖6a情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代2000點(diǎn));圖6c是遠(yuǎn)端輸入語音、近端輸入延時(shí)為0的回聲抵消濾波器的系數(shù)曲線圖(迭代8000點(diǎn));圖6d是圖6c情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代8000點(diǎn));圖6e是遠(yuǎn)端輸入語音、近端輸入延時(shí)數(shù)剛等于該回聲抵消器抵消能力的回聲信號的回聲抵消濾波器的系數(shù)曲線圖(迭代20000點(diǎn))圖6f圖6e情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代20000點(diǎn));圖7a是遠(yuǎn)端輸入一受直流干擾的語音信號、近端輸入為0的該回聲抵消濾波器系數(shù)曲線圖(迭代8000點(diǎn));圖7b是圖7a情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代8000點(diǎn));圖7c是遠(yuǎn)端輸入一語音信號、近端輸入其延時(shí)數(shù)遠(yuǎn)大于該回聲抵消器回聲抵消能力的回聲信號的回聲抵消濾波器的系數(shù)曲線圖(迭代8000點(diǎn));圖7d是圖7c情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代8000點(diǎn));圖7e是遠(yuǎn)端輸入一語音信號、近端輸入其延時(shí)數(shù)遠(yuǎn)大于該回聲抵消器回聲抵消能力的回聲信號的回聲抵消濾波器的系數(shù)曲線圖(迭代40000點(diǎn));圖7f是圖7e情況下,該回聲抵消濾波器的輸出信號曲線圖(迭代40000點(diǎn));圖8a是綜合測試時(shí),遠(yuǎn)端與近端信號組合輸入的情況圖;圖8b是遠(yuǎn)端與近端信號以圖8a情況輸入時(shí),該回聲抵消濾波器的系數(shù)曲線圖(迭代30000點(diǎn));圖8c是遠(yuǎn)端與近端信號以圖8a情況輸入時(shí),該回聲抵消濾波器的系數(shù)曲線圖(迭代40000點(diǎn));圖8d是遠(yuǎn)端與近端信號以圖8a情況輸入時(shí),該回聲抵消濾波器的系數(shù)曲線圖(迭代60000點(diǎn))。
為了充分理解本發(fā)明的測試方法,首先來分析回聲抵消器的工作原理及方式。如圖1為回聲抵消器采用的基本原理,遠(yuǎn)端語音x(n),近端語音v(n),將x(n)反射離開混合電路的信號模仿為x(n)通過一未知回波信道,產(chǎn)生回波信號y(n),此回波信號與近端語音信號相加形成r(n)。自適應(yīng)濾波器的輸入為x(n),輸出為回波復(fù)制信號y^(n)]]>。用回波殘余信號e(n)=r(n)-y^(n)]]>去調(diào)節(jié)濾波器的系數(shù),使回波復(fù)制信號y^(n)]]>跟蹤回波信號y(n),以此抵消回波信號。本發(fā)明所進(jìn)行測試的對象——回聲抵消器,也是基本采用該原理實(shí)現(xiàn)的。其濾波器系數(shù)的更新遵循以下原則w(n+1)=w(n)+μe(n)*x(n)Exx(n)]]>其中w(n)為濾波器的系數(shù);x(n)為參考信號輸入矢量,即遠(yuǎn)端語音;e(n)為回波殘余信號;μ為步長;
Exx(n)=Σi=0N-1[x(n-i)]2]]>,是N個(gè)最新取樣的平方和計(jì)算的能量估計(jì)值;回聲抵消器在實(shí)現(xiàn)回聲抵消時(shí),主要工作是使回聲抵消濾波器的系數(shù)w(n)趨近于實(shí)際的回聲信道系數(shù)(系數(shù)的趨近按一定的算法實(shí)現(xiàn),其主要考慮因素是濾波器的輸出信號同實(shí)際的回聲信號的差值),從而使得遠(yuǎn)端語音通過回聲抵消自適應(yīng)濾波器輸出的信號與實(shí)際產(chǎn)生的回聲信號相抵消。
回聲抵消自適應(yīng)濾波器系數(shù)的更新過程為首先判斷遠(yuǎn)端有無語音,如果遠(yuǎn)端無語音則不進(jìn)行回聲抵消濾波器的系數(shù)更新,如果遠(yuǎn)端有語音再判斷近端有無語音,若近端也無語音則進(jìn)行回聲抵消濾波器的系數(shù)更新,若近端有語音則不進(jìn)行回聲抵消濾波器的系數(shù)更新。圖2a即是自適應(yīng)濾波器系數(shù)更新過程的流程圖。步驟201,當(dāng)遠(yuǎn)端有聲音信號時(shí),在DSP數(shù)字芯片(現(xiàn)有通信網(wǎng)多采用DSP數(shù)字芯片制成回聲抵消器)中斷調(diào)用回聲抵消代碼;步驟203,從近端、遠(yuǎn)端、回聲信號各端口的變量地址讀入輸入數(shù)據(jù);并在步驟205判斷是否已經(jīng)又重新輸入了128個(gè)樣點(diǎn)(該回聲抵消器為每隔128個(gè)樣點(diǎn)抵消回聲);若輸入樣點(diǎn)尚不足128個(gè),則轉(zhuǎn)到步驟211,繼續(xù)輸入樣點(diǎn)且樣點(diǎn)計(jì)數(shù)器加一;若輸入樣點(diǎn)已經(jīng)滿128個(gè),則步驟207計(jì)算回聲抵消濾波器的輸出并進(jìn)行回聲抵消;且步驟209將樣點(diǎn)計(jì)數(shù)器清零;步驟213,再判斷遠(yuǎn)端有信號時(shí),近端是否無信號;如果近端無信號則進(jìn)入步驟215,按一定的算法更新回聲抵消自適應(yīng)濾波器的系數(shù);如果近端有信號則不更新系數(shù),步驟217更新各端口的變量地址以便下一次調(diào)用時(shí)讀入新的數(shù)據(jù),步驟219中斷返回。
根據(jù)上述回聲抵消器的實(shí)例,本發(fā)明回聲抵消器測試方法的主要流程如圖2b所示。首先步驟301進(jìn)行一些有關(guān)參數(shù)的初始化工作,接著步驟303設(shè)置本次測試時(shí)需要運(yùn)算的樣點(diǎn)數(shù);步驟305從內(nèi)存的相應(yīng)端口讀入遠(yuǎn)端信號數(shù)據(jù),即根據(jù)不同的測試目的采集定制的信號;同理,步驟307再讀入近端及回聲信號,同樣為根據(jù)不同測試目的定制或采集的信號,且回聲信號是遠(yuǎn)端信號經(jīng)一定的延時(shí)處理產(chǎn)生的;步驟309調(diào)用回聲抵消器代碼進(jìn)行回聲抵消測試;步驟311從相應(yīng)的內(nèi)存端口讀出輸出數(shù)據(jù),即回聲抵消器輸出信號以及回聲抵消濾波器的系數(shù);步驟313判斷原先設(shè)置的運(yùn)算點(diǎn)數(shù)是否已經(jīng)滿了,如果滿了則中止程序的運(yùn)行并返回,否則返回步驟305繼續(xù)讀入遠(yuǎn)端近端及回聲信號,進(jìn)行回聲抵消;最后得出的回聲抵消濾波器系數(shù)及其輸出信號經(jīng)恢復(fù)成曲線形式后同預(yù)期結(jié)果比較。此外,由于實(shí)際的回聲抵消DSP匯編程序是由中斷觸發(fā)執(zhí)行的,因此可以根據(jù)這點(diǎn),在該測試流程中,修改模塊的輸入/輸出接口,使原來對端口的讀取,改為對內(nèi)存的讀取。在本測試主流程中,均使用DSP的模擬仿真軟件平臺(tái)SIMULATE從特定端口以文件形式讀入定制的遠(yuǎn)端數(shù)據(jù)或者近端數(shù)據(jù)(含根據(jù)假設(shè)回聲信道定制的回聲數(shù)據(jù)),并在特定的端口捕捉回聲抵消自適應(yīng)濾波器的系數(shù)(實(shí)例中為128階)以及回聲抵消器的輸出信號數(shù)據(jù)(以文件的形式存入)。
使用DSP的模擬仿真軟件平臺(tái)SIMULATE進(jìn)行模擬仿真測試時(shí),輸入定制數(shù)據(jù),調(diào)用測試對象(回聲抵消器代碼),輸出回聲抵消器輸出信號以及相應(yīng)的其自適應(yīng)濾波器的系數(shù),對于測試結(jié)果的判斷則通過將輸入、輸出信號以及自適應(yīng)濾波器系數(shù)等數(shù)據(jù)轉(zhuǎn)化為圖形形式進(jìn)行判斷。本實(shí)例中采用MATLAB軟件進(jìn)行轉(zhuǎn)化、顯示。
其中,本測試實(shí)例中作為測試對象的回聲抵消自適應(yīng)濾波器系數(shù)是128階的,因此其最多只能完成對16ms回聲(實(shí)際情況下,約為2000多公里產(chǎn)生的回聲)的抵消,且由于實(shí)際的回聲信道是緩慢變化的,所以在本測試實(shí)例中,除非對于輸入回聲信號有特定要求外,一般構(gòu)制的回聲信道為64階(實(shí)際情況下,約為1000多公里產(chǎn)生的回聲)至于回聲信號的定制則是將采集到的輸入信號即遠(yuǎn)端信號(已經(jīng)轉(zhuǎn)化為數(shù)據(jù)格式)根據(jù)假設(shè)的回聲信道的延時(shí)毫秒數(shù)進(jìn)行相應(yīng)的延時(shí)后得到的。對輸入信號進(jìn)行延時(shí)定制回聲的主流程如圖2c所示。首先步驟401讀入近端信號,其次步驟403讀入遠(yuǎn)端信號,并在步驟405判別遠(yuǎn)端信號是否存在,如果存在的話則步驟407根據(jù)要求的回聲信道延遲數(shù)對遠(yuǎn)端信號進(jìn)行相應(yīng)的延時(shí)從而產(chǎn)生回聲信號,否則不處理,最后步驟409將產(chǎn)生的回聲信號同近端信號相加構(gòu)成回聲抵消器的一個(gè)輸入信號。因此流程圖2c實(shí)際上是用來根據(jù)各個(gè)測試目中要求的回聲信道的延時(shí)數(shù),對遠(yuǎn)端信號進(jìn)行延時(shí)處理以便產(chǎn)生回聲信號(并同近端信號相加構(gòu)成一個(gè)輸入信號)的過程,其產(chǎn)生的數(shù)據(jù)最終用于測試主流程圖2b中的步驟307。
采用以上技術(shù)方案,可以針對不同的測試目的具體對回聲抵消器代碼段進(jìn)行測試,本實(shí)施例例舉以下六個(gè)目的的測試,相當(dāng)于六個(gè)測試階段,每一階段的測試目的和具體測試方法詳述如下一、測試回聲抵消代碼的正確實(shí)現(xiàn)性回聲抵消代碼正確與否的測試,即將非實(shí)際的信號作為遠(yuǎn)端信號輸入,并構(gòu)造相應(yīng)的回聲信號,經(jīng)測試主程序通過DSP的模擬仿真軟件平臺(tái)SIMULATE調(diào)用回聲抵消代碼,捕捉輸出信號及回聲抵消濾波器的系數(shù),再將這些信號恢復(fù)成曲線進(jìn)行比較判別或同定制的模擬回聲信道進(jìn)行比較,以判別該回聲抵消代碼是否正確實(shí)現(xiàn)了預(yù)期設(shè)計(jì)的回聲抵消算法。
回聲抵消器代碼應(yīng)獨(dú)立于其輸入信號。若輸入特殊信號時(shí),該代碼仍舊能夠正常運(yùn)行,則說明其對于回聲抵消算法的映射是正確的。
本發(fā)明主要通過正弦信號經(jīng)過采樣和PCM編碼后作為輸入的方法來測試該回聲抵消代碼是否運(yùn)行正確。此外,根據(jù)本實(shí)例的回聲抵消器的工作方式有遠(yuǎn)端信號才有回聲,無回聲信道時(shí),回聲抵消器不工作,在構(gòu)造測試用例時(shí)是按照無回聲信道以及遠(yuǎn)端信號引起回聲信號兩方面設(shè)計(jì)的。具體工作按如下表1進(jìn)行表1
按照表1所列的具體步驟和數(shù)據(jù),本測試階段的結(jié)果如下當(dāng)遠(yuǎn)端存在、近端無、且無回聲情況下,濾波器的系數(shù)為0(如圖3a所示),輸出信號為0(如圖3b所示)。
當(dāng)遠(yuǎn)端無、近端存在、無回聲情況下,濾波器系數(shù)為0(如圖3c所示),輸出信號為近端信號(如圖3d所示)。
當(dāng)遠(yuǎn)端、近端都存在,無回聲情況下,濾波器系數(shù)為0(如圖3e所示),輸出信號為近端信號(如圖3f所示)。
當(dāng)遠(yuǎn)端、回聲信號存在,本例濾波器系數(shù)未收斂到模擬回聲信道系數(shù)上(如圖3g所示),輸出信號未抵消至0(如圖3h所示)。
本測試階段輸出的實(shí)際結(jié)果與預(yù)期結(jié)果不同,則說明作為測試對象的回聲抵消代碼在算法實(shí)現(xiàn)上沒有完全映射,需要做修改。二、測試回聲抵消器的基本功能回聲抵消器的功能測試,即將一語音信號進(jìn)行采集,并將其處理成一定的回聲信號(根據(jù)測試要求模擬的回聲信道的不同而不同,并可以包括多重回聲),再將該語音信號及回聲信號作為回聲抵消器的遠(yuǎn)端與近端輸入,根據(jù)實(shí)際可能產(chǎn)生的各種情況以不同的組合方式,經(jīng)測試主程序通過模擬仿真軟件平臺(tái)SIMULATE模擬調(diào)用回聲抵消代碼,捕捉輸出信號以及回聲抵消濾波器的系數(shù),將這些信號恢復(fù)成曲線同近端輸入信號或模擬回聲信道比較,判別該回聲抵消器是否能夠達(dá)到預(yù)先設(shè)計(jì)的功能要求。
遠(yuǎn)端信號與近端信號是沒有相關(guān)性的,而遠(yuǎn)端信號與其回聲信號是相關(guān)的,根據(jù)這種關(guān)系,可以構(gòu)造各種實(shí)際測試用例。
為測試回聲抵消器功能實(shí)現(xiàn)的完善性,本發(fā)明主要在模擬仿真的情況下通過覆蓋所有可能出現(xiàn)的輸入情況(并考慮二次回聲存在的情況),觀察輸出情況。
當(dāng)測試一次回聲情況時(shí),具體工作按如下表2進(jìn)行表2
按照表2所列的具體步驟和數(shù)據(jù),本測試階段的結(jié)果如下
當(dāng)輸入遠(yuǎn)端及回聲信號時(shí),輸出信號逐漸趨近于0,如圖4a所示,其中信號1代表回聲信號,信號2表示輸出信號。
當(dāng)遠(yuǎn)端信號為0,只輸入近端信號時(shí),本例輸出信號近似于近端信號,為預(yù)期結(jié)果,如圖4b所示,其中信號3表示近端輸入的語音信號,信號2表示輸出信號,可以看出兩個(gè)信號近似相等。
當(dāng)遠(yuǎn)端近端都輸入信號時(shí),輸出信號為近端信號(圖略)。
根據(jù)前一階段的測試結(jié)果,本實(shí)例為經(jīng)修改后的回聲抵消器代碼。本測試階段輸出的實(shí)際結(jié)果與預(yù)期結(jié)果相同,則說明該回聲抵消器代碼能夠抵消64階回聲信道產(chǎn)生的一次回聲及該回聲抵消器的工作方式符合預(yù)期設(shè)計(jì)。
當(dāng)測試兩次回聲時(shí),具體工作按如下表3進(jìn)行表3
按照表3所列的具體步驟和數(shù)據(jù),本測試階段的結(jié)果如下當(dāng)輸入遠(yuǎn)端及回聲信號時(shí),濾波器系數(shù)曲線收斂到模擬回聲信道上(如圖4c所示);輸出信號趨近于0,如圖4d所示,其中信號1表示回聲信號,信號2表示輸出信號,可以看出,信號2是趨近0的。
當(dāng)遠(yuǎn)端輸入為0,近端輸入一語音信號,輸出信號為近端信號(圖略)。
當(dāng)遠(yuǎn)端、近端及回聲信號同時(shí)輸入,輸出信號近似于近端信號(圖略)。
以上結(jié)果均達(dá)到預(yù)期結(jié)果。
由于本測試階段輸出的實(shí)際結(jié)果與預(yù)期結(jié)果相同,則說明該回聲抵消器代碼能夠抵消64及16階階回聲信道產(chǎn)生的兩次回聲,該回聲抵消器的工作方式符合預(yù)期設(shè)計(jì)。三、測試抵消回聲的效率回聲抵消器的效率測試,即將一語音信號采集,并處理成一定的回聲信號,再將這些信號作為遠(yuǎn)端輸入與近端輸入,通過模擬仿真軟件平臺(tái)SIMULATE模擬調(diào)用回聲抵消代碼,在不同的迭代次數(shù)時(shí),捕捉相應(yīng)的回聲抵消自適應(yīng)濾波器的系數(shù),得出一組迭代次數(shù)與回波抑制效果(也即自適應(yīng)濾波器系數(shù)收斂到模擬回聲信道上)的相關(guān)聯(lián)的數(shù)據(jù),從而定性判別該回聲抵消器的性能效率。
正常情況下,作為測試對象的回聲抵消自適應(yīng)濾波器在經(jīng)過5000~6000點(diǎn)的迭代之后,濾波器的輸出應(yīng)能抵消經(jīng)回聲信道產(chǎn)生的回聲。為測試回聲抵消器的效率,構(gòu)造一個(gè)64階的回聲信道,并只加入遠(yuǎn)端語音信號,經(jīng)過1000、3000、5000、8000(次數(shù)的選取沒有特定要求)次運(yùn)行后,分別輸出濾波器的系數(shù)。觀測經(jīng)過多少次迭代后,濾波器的系數(shù)收斂到模擬回聲信道,考慮到本測試是一個(gè)效率方面的評價(jià),因此在本測試中主要進(jìn)行定性的評判。具體工作按如下表4進(jìn)行表4
按照表4所列的具體步驟和數(shù)據(jù),本測試階段的結(jié)果如下當(dāng)?shù)螖?shù)分別為1000、3000、5000及8000點(diǎn)時(shí),濾波器系數(shù)曲線收斂情況分別如圖5a、5b、5c、5d所示。根據(jù)這些曲線收斂情況的好轉(zhuǎn)與迭代次數(shù)的關(guān)系,可以看出,當(dāng)濾波器在迭代8000次后(用時(shí)1S)比較趨近于模擬信道的系數(shù)曲線。
從以上測試結(jié)果看,說明該回聲抵消器的運(yùn)行效率尚可。四、測試回聲抵消器代碼在邊界情況下的處理能力回聲抵消器代碼在邊界點(diǎn)處工作情況(考慮一人和多人講話的情況)的測試,即將一語音信號進(jìn)行采集,并將其處理成沒有回聲、回聲延時(shí)為0以及回聲延時(shí)達(dá)到該回聲抵消器的臨界狀態(tài)的信號分別作為該回聲抵消器的遠(yuǎn)端與近端輸入,通過模擬仿真軟件平臺(tái)SIMULATE模擬調(diào)用回聲抵消代碼,并捕捉相應(yīng)的輸出信號以及回聲抵消濾波器的系數(shù),并恢復(fù)成相應(yīng)的曲線,從而判斷該回聲抵消器在這些邊界點(diǎn)上的工作狀態(tài)的正確性。
由于濾波器的系數(shù)為128階,即最多可抵消16毫秒的延時(shí),所以,該回聲抵消器的邊界點(diǎn)為0~16ms。具體工作按如下表5進(jìn)行表5
按照表5所列的具體步驟和數(shù)據(jù),本測試階段的結(jié)果如下當(dāng)回聲不存在時(shí),濾波器系數(shù)為0(如圖6a所示),輸出信號為0(如圖6b所示)。
當(dāng)回聲為0秒延時(shí)時(shí),濾波器近似收斂到模擬回聲信道上(如圖6c所示),輸出信號有明顯畸變(如圖6d所示)。
當(dāng)回聲信號為16ms延時(shí)時(shí),濾波器不能收斂(如圖6e所示),輸出信號不為0(如圖6f所示)。
第二、第三種現(xiàn)象均未達(dá)到預(yù)期要求。
本測試階段第二第三種現(xiàn)象未達(dá)到預(yù)期要求,說明作為測試對象的回聲抵消代碼在兩個(gè)邊界點(diǎn)上(0階與128階)的程序處理有問題。五、測試回聲抵消代碼的健壯性回聲抵消器的健壯性測試項(xiàng)目主要分成兩種情況,第一種情況即采集一些干擾信號,如噪聲、直流信號、嘯叫,將其處理成一定的回聲信號,再將這些信號分別作為遠(yuǎn)端與近端輸入回聲抵消器,通過模擬仿真軟件平臺(tái)SIMULATE調(diào)用回聲抵消代碼,捕捉相應(yīng)的輸出信號以及濾波器系數(shù),將這些信號恢復(fù)成曲線,以判斷該回聲抵消器在干擾情況下的工作狀態(tài)。第二種情況則是將一語音信號處理成遠(yuǎn)超過該回聲抵消器設(shè)計(jì)能力的回波信號,分別作為遠(yuǎn)端與近端語音輸入回聲抵消器,通過模擬仿真軟件平臺(tái)SIMULATE調(diào)用回聲抵消代碼,捕捉相應(yīng)的輸出信號以及濾波器系數(shù),將其恢復(fù)成曲線,定性判斷該回聲抵消器在遠(yuǎn)超過其設(shè)計(jì)能力時(shí)的表現(xiàn)是否能夠忍受。
上述兩種情況具體如輸入語音受到噪聲、嘯叫聲或直流干擾時(shí)以及回聲延時(shí)超過16ms時(shí)。具體工作按如下表6進(jìn)行表6
按照表6所列的具體步驟和數(shù)據(jù),本測試階段的結(jié)果如下當(dāng)輸入受直流干擾的語音信號時(shí),濾波器系數(shù)不能收斂(如圖7a所示),輸出信號不等于0,如圖7b所示,其中信號1為回聲信號,信號3為輸入信號,信號2為輸出信號,輸出信號2有明顯畸變現(xiàn)象,該現(xiàn)象不同于預(yù)期結(jié)果。
當(dāng)輸入32ms延時(shí)的回聲信號時(shí),濾波器無法收斂,且輸出信號有明顯畸變現(xiàn)象,1秒回聲與5秒回聲采樣分別如圖7c、7d、7e、7f所示,其中信號1為回聲信號,信號3為輸入信號,信號2為輸出信號,可以看出在四個(gè)圖中輸出信號2均有明顯畸變現(xiàn)象。
本測試階段輸出的實(shí)際結(jié)果與預(yù)期結(jié)果不同,則說明該回聲抵消器代碼的健壯性能力有問題。六、綜合測試此測試階段是對回聲抵消器進(jìn)行綜合性測試,即采集近端與遠(yuǎn)端語音信號,并將遠(yuǎn)端語音處理成一定的回聲信號,對近端與遠(yuǎn)端信號進(jìn)行一定的組合(根據(jù)該組合也決定了回聲信號的組合),分別作為該回波抵消器的近端與遠(yuǎn)端輸入,通過模擬仿真軟件平臺(tái)SIMULATE調(diào)用回聲抵消代碼,捕捉相應(yīng)的回聲濾波器系數(shù)以及輸出信號,并恢復(fù)成曲線,判斷該曲線是否符合預(yù)期的情況。
當(dāng)四種不同輸入情況連續(xù)交替存在時(shí),判斷回聲抵消器代碼具體工作按如下表7進(jìn)行表7
按照表6所列的具體步驟和數(shù)據(jù),本測試階段的結(jié)果如下當(dāng)遠(yuǎn)端與近端采用圖8a方式所示時(shí),濾波器系數(shù)的收斂情況隨著測試的點(diǎn)數(shù)的不同而不同,圖8b、8c、8d分別表示迭代30000點(diǎn)、40000點(diǎn)、60000點(diǎn)后濾波器的系數(shù),可以發(fā)現(xiàn)在迭代次數(shù)增加的情況下,系數(shù)反而不收斂,這不同于預(yù)期結(jié)果。
本測試階段輸出的實(shí)際結(jié)果與預(yù)期結(jié)果不同,則說明該回聲抵消器代碼的控制部分有問題。
以上是對基于DSP數(shù)字芯片實(shí)現(xiàn)的回聲抵消器代碼進(jìn)行的測試,由于該種測試是處于研發(fā)階段的測試,因此,其中每個(gè)測試階段中的測試目的會(huì)有所不同。但每個(gè)階段中所運(yùn)用的測試方法完全是按照本發(fā)明實(shí)現(xiàn)的。對于在每個(gè)測試階段中,在使用本發(fā)明所描述的測試方法后,對未達(dá)到預(yù)期結(jié)果的測試對象的修改以及再次測試驗(yàn)證,此處就不再贅述。
此外,應(yīng)該可以理解,上面關(guān)于典型實(shí)例的討論的一些參數(shù)或數(shù)據(jù)可以在本發(fā)明揭示的范圍內(nèi)修改。例如,按本發(fā)明用模擬仿真軟件平臺(tái)SIMULATE進(jìn)行模擬仿真測試的迭代點(diǎn)數(shù)可以根據(jù)測試的要求(如時(shí)間)進(jìn)行修改,同樣也可以根據(jù)假設(shè)的回聲信道的不同,改變所定制回波數(shù)據(jù)的延時(shí)數(shù),當(dāng)然也可以定制不同的聲音信號。至于DSP的模擬仿真軟件平臺(tái)SIMULATE可以根據(jù)DSP芯片廠商提供的不同而不同。
另外,即使不采用DSP數(shù)字芯片作為回聲抵消器的硬件平臺(tái),只要采用的該芯片有相應(yīng)的軟件仿真平臺(tái)也完全可以按以上發(fā)明進(jìn)行;如果回聲抵消代碼不基于特定芯片,則可以按本發(fā)明提供的方法直接在計(jì)算機(jī)上進(jìn)行軟件仿真進(jìn)行測試即可。
上面對較佳實(shí)例的描述使本技術(shù)領(lǐng)域中的普通技術(shù)人員(尤其對于測試人員)能夠使用本發(fā)明。對這實(shí)例作種種修改對該技術(shù)領(lǐng)域內(nèi)的技術(shù)人員是顯而易見的,這里所確定的總原理可用于其他實(shí)例而不需創(chuàng)造性才能。因此,本發(fā)明不打算限定于這里所示的具體實(shí)例,而是要賦予同這里所揭示的原理和新穎特征相一致的最大范圍。
權(quán)利要求
1.一種回聲抵消功能的測試方法,包括以下步驟第一步將實(shí)際情況下產(chǎn)生的或根據(jù)各種規(guī)則定制的信號進(jìn)行采集;第二步按照各測試階段假設(shè)的各種回聲信道對這些信號進(jìn)行處理,使之成為相應(yīng)的回聲信號;第三步將原來的信號以及相應(yīng)的回聲信號作為遠(yuǎn)端與近端信號輸入回聲抵消器;第四步捕捉相應(yīng)的輸出信號以及回聲抵消濾波器的系數(shù);第五步將輸出信號以及濾波器系數(shù)恢復(fù)成曲線;第六步同原遠(yuǎn)端信號輸入曲線及按測試要求模擬的回聲信道系數(shù)曲線相比較,判別回聲抵消器在各種實(shí)際情況下、各種規(guī)則情況下回聲抵消功能及性能實(shí)現(xiàn)的正確性與否。
2.如權(quán)利要求1所述的回聲抵消功能的測試方法,其特征在于所述第一步驟使用了聲音數(shù)據(jù)的采集方式,聲音數(shù)據(jù)的采集用于定制各種實(shí)際的測試用例,并轉(zhuǎn)換為相應(yīng)的數(shù)據(jù)格式作為所述第三步驟回聲抵消器的近端或遠(yuǎn)端輸入。所述第二步驟即根據(jù)回聲信道的延時(shí)數(shù)將采集來的數(shù)據(jù)進(jìn)行相應(yīng)的延時(shí)。所述第三步驟是將延時(shí)后的回聲信號及原來的信號做為近端和遠(yuǎn)端輸入回聲抵消器,通過軟件模擬仿真并調(diào)用回聲抵消代碼,取得測試數(shù)據(jù)。所述第四步驟是由模擬仿真平臺(tái)自動(dòng)將測試數(shù)據(jù)結(jié)果存入相應(yīng)的文件;所述第五步驟是將模擬仿真平臺(tái)取得的測試數(shù)據(jù)或定制采集來的數(shù)據(jù)復(fù)原成相應(yīng)的曲線形式以便于比較判別。
3.如權(quán)利要求1或2所述的回聲抵消功能的測試方法,其特征在于所述第二步驟中各測試階段包括回聲抵消代碼的正確實(shí)現(xiàn)性測試、基本功能測試、回聲抵消的效率測試、回聲抵消代碼在邊界點(diǎn)處的工作情況測試、回聲抵消代碼的健壯性測試、回聲抵消代碼綜合性測試。
4.如權(quán)利要求3所述的回聲抵消功能的測試方法,其特征在于所述回聲抵消代碼的正確實(shí)現(xiàn)性測試,即通過正弦信號經(jīng)采樣和PCM編碼后并以各種組合方式作為輸入的方法來測試該程序是否運(yùn)行正確。
5.如權(quán)利要求3所述的回聲抵消功能的測試方法,其特征在于所述回聲抵消的基本功能測試,即在模擬仿真的情況下通過覆蓋所有可能出現(xiàn)的輸入情況,并考慮二次回聲存在的情況,觀察輸出情況是否達(dá)到預(yù)期要求。
6.如權(quán)利要求3所述的回聲抵消功能的測試方法,其特征在于所述回聲抵消的效率測試,即構(gòu)造一個(gè)一定階數(shù)的回聲信道,并只加入遠(yuǎn)端語音信號,經(jīng)過不同迭代次數(shù)的運(yùn)行后,分別輸出濾波器的系數(shù),得出系數(shù)收斂與迭代次數(shù)的關(guān)系,觀測經(jīng)過多少次迭代后,濾波器的系數(shù)收斂到模擬回聲信道。
7.如權(quán)利要求3所述的回聲抵消功能的測試方法,其特征在于所述回聲抵消代碼在邊界情況下的處理能力測試,即測試回聲抵消器代碼在無回聲、回聲延時(shí)數(shù)為0以及回聲延時(shí)數(shù)達(dá)到該回聲抵消器設(shè)計(jì)抵消回聲能力極限時(shí)的工作情況。
8.如權(quán)利要求3所述的回聲抵消功能的測試方法,其特征在于所述回聲抵消代碼的健壯性測試,即測試輸入語音受到噪聲、嘯叫聲或直流干擾時(shí)以及回聲延時(shí)超過設(shè)計(jì)能力時(shí)的工作情況。
9.如權(quán)利要求3所述的回聲抵消功能的測試方法,其特征在于所述回聲抵消代碼的綜合測試,即根據(jù)回聲抵消器,構(gòu)造多種不同輸入情況并使之連續(xù)交替存在,測試程序運(yùn)行是否正確。
全文摘要
一種回聲抵消器的測試方法,先采集實(shí)際情況下產(chǎn)生的或定制的信號;再按各階段假設(shè)的回聲信道對信號進(jìn)行處理,使之成為相應(yīng)的回聲;將原信號及回聲作為遠(yuǎn)端與近端輸入;捕捉輸出信號及濾波器系數(shù)并恢復(fù)成曲線,與預(yù)期結(jié)果比較。采用以上步驟,可以進(jìn)行回聲抵消代碼的正確實(shí)現(xiàn)性測試、功能完善性測試、效率測試、在邊界點(diǎn)處的工作情況測試、健壯性測試、綜合性測試。本發(fā)明擺脫了實(shí)際環(huán)境的限制,節(jié)省成本,并提供全面的測試依據(jù)。
文檔編號H04B17/00GK1306352SQ0011408
公開日2001年8月1日 申請日期2000年3月1日 優(yōu)先權(quán)日2000年3月1日
發(fā)明者張震瑋 申請人:深圳市中興通訊股份有限公司