一種新的基于改進的ADALINE神經網絡的DTMF解碼器方
![]() |
圖7 |
圖6和圖7中紅色虛線表示非線性環節的門限。由此可以看出,系統判斷出輸入信號中含有941Hz/1209Hz的信號,不含697/770/852/1336/1477/1633Hz信號,從而實現*鍵號碼的正確解碼。
當輸入DTMF信號為其他頻率組合時的情況與上述結果類似,都能正確解碼。其他仿真結果表明它在信噪比為-3dB以下仍能準確檢測。
五、工程應用方案設計
采用上述基于改進的ADALINE神經網絡的DTMF檢測算法,在TMS320C5402 DSP和TLV320AIC10 AIC上實現DTMF信號檢測器硬件結構如圖8所示。
TMS320C5402是一款性價比很高的16位定點DSP[9],采用改進的哈佛結構,速度達100MIPS,并具有豐富的片上外設資源,非常適合于語音信號處理,有線或無線通信等通信類應用場合。TLV320AIC10是一款模擬接口芯片(AIC) [10],具有一對采用Sigma-Delta調制技術的16位采樣頻率達22KHz的ADC/DAC,還內含相關的濾波與增益控制等電路。TLV320AIC10能與TMS320C5402實現無縫接口,配合使用。
需要說明的是:DTMF解碼功能通常只是由DSP與AIC組成的通信處理系統的一部分。TMS320C5402強大的處理能力與DSP/AIC豐富的片上資源再配以外圍電路足以實現系統所需的其他功能。本文只談及DTMF解碼功能。
TLV320AIC10設置為采樣頻率8KHz,Master模式,幀同步為Pulse模式。如圖8所示,來自電話線的信號經過接口預處理電路后送入AIC的ADC進行模數轉換,然后通過McBSP串口與TMS320C5402通信,把采樣數據送入DSP,同時進行A律擴展,以備后續處理。
![]() |
圖8 |
對每個樣點逐個計算8個神經網絡單元的輸出值并按照LMS算法更新網絡參數,然后等待下一個新樣點的到來。經過20ms周期即180個樣點處理,可以得到8個網絡單元的輸出幅值,它定義為從12ms到20ms之間的輸出值平均。
當8個網絡單元的輸出幅值計算出來后,還要進行DTMF有效性檢驗,以判定是否為有效的DTMF信號。有效性檢驗包括以下幾項內容:(1)高、低頻段的最大幅值都必須大于某個門限值,而且二者之和也要大于某個門限值。(2)高、低頻段的最大幅值與各自頻段其它三個幅值相比,其差值必須大于某個門限值。(3)逆向絞度檢驗即低頻段最大幅值不得超過高頻段最大幅值8dB,標準絞度檢驗即高頻段最大幅值不得超過低頻段最大幅值4dB。(4)高、低頻段最大幅值之和與其它6個幅值之和之比,必須大于某個門限值。
若上述檢驗通過,判定當前周期DTMF信號有效,根據頻率組合可確定是對應哪個號碼。但要確認接收到一個有效的號碼,還要滿足兩個條件,一是要有兩個以上連續周期的有效且相同的DTMF信號,以保證信號持續時間,二是前面有足夠的靜音時間,以避免重復識別。由于每個周期是20ms信號,可以保證一位號碼能接收到兩個完整的DTMF信號周期。程序流程圖如圖9所示。
![]() |
圖9 |
六、結語
傳統DTMF信號的解碼方法有兩種:濾波器組法和Goertzel/DFT算法。針對傳統DTMF信號檢測方法抗干擾能力不足的問題,本文提出了一種新的基于改進的ADALINE神經網絡的DTMF信號檢測算法,并介紹了在TMS320C5402 DSP和TLV320AIC10 AIC上采用此算法的DTMF信號檢測器工程應用方案設計。仿真結果和實際工程實驗均表明它比傳統方法具有更強的抗干擾能力,該方案具有一定的實用和參考價值。
評論