來源:電子技術應用; 作者:楊 璐 張春茂 崔慧娟 唐 昆 杜 文 李 竟
摘要:介紹了一種多制式語音編解碼器,在單片TMS320VC5409上完成4路語音的全雙工通信,并實現G.729a、CVSD、ADPCM算法之間的編碼轉換,給出了算法的軟硬件實現、算法的運算量及所占用的硬件資源。
關鍵詞:多制式語音編解碼 TMS320VC5409 G.729a CVSD ADPCM在各種通信設備中,實時的語音壓縮通常在DSP上實現。單一編碼算法,由于碼率和算法固定,系統(tǒng)的靈活性較差。越來越多的通信服務要求能實現多種、多路編碼算法,提供一定范圍內的編碼速率和編碼算法的多種選擇,例如軟件無線電、IP電話、多媒體終端等。
G.729a是ITU制定的一種高質量的中速率語音編碼標準,編碼速率為8kbps,目前已在許多通信系統(tǒng)中得到了應用。16/32kbps的CVSD是一種抗信道誤碼非常好的語音編碼算法,在軍事通信、宇航通信中得到了廣泛的應用。32kbps的ADPCM是一種算法較簡單的波形編碼,具有良好的話音質量和抗噪性能,在衛(wèi)星通信、數字話路倍增系統(tǒng)中得到了廣泛應用。綜合了這三種算法的編碼系統(tǒng),在8kbps~32kbps碼率具有較高的靈活性。
由于語音壓縮的運算量、存儲量和精度要求都不太高,在考慮價格因素的基礎上,定點DSP足以勝任語音編解碼的要求。本文采用了TI公司的TMS320VC5409定點DSP實現了上述三種語音編解碼算法。算法DSP的實現通過了有關測試。其中G.729a和ADPCM采用ITUT有關建議提供的測試序列進行了測試,CVSD按照我國有關標準進行了測試。
本文對以上三種語音編碼和TMS320VC5409做簡單介紹后,對算法的軟件和硬件實現進行介紹,并給出算法所需運算量以及所占用的硬件資源。
1 DSP芯片和語音編碼算法(1)TMS320VC5409簡介
TMS320VC5409是TI公司生產的一種性價比較高的定點DSP芯片,運算速度為80MIPS/100MIPS。它擁有改進的喻佛結構、一個CPU、片上存儲區(qū)(32KB的ROM和64KB的DARAM)、片上外設以及專用的指令結構。它具有以下主優(yōu)點:
·1條程序總線和3條數據總線。配合存儲區(qū)的雙操作數讀取能力,可以支持單周期,三操作數指令,提高了程序的運行和通用性;
·先進的針對應用設計的CPU硬件邏輯提高了芯片的性能;
·高度專用的指令結構提供了更快的算法實現和更方便的優(yōu)化;
·片上外設包括3個McBSP(多通道緩沖串口)、一個6通道的DMA控制器、8bit HPI口及鎖相環(huán)時鐘發(fā)生器;
·模塊化結構方便了快速的后續(xù)發(fā)展;
·先進的IC處理技術實現了高性能和低功耗,5V靜態(tài)CMOS技術進一步降低了功耗。
(2)G.729a算法
G.729是ITU在8kbps速率上的標準,采用“共軛結構代數碼來激勵線性預測編碼方案”(C-ASCELP)算法。這種算法綜合了波形編碼和參數編碼的優(yōu)點,以線性預測編碼技術為基礎,采用了矢量量化、分析合成和感覺加權等技術。G.729a只在G.729的基礎上減少了一些運算量,保持了兼容性,質量也基本沒有下降。
(3)32kbps ADPCM算法
G726是ITU制定的自適應差分脈沖編碼算法標準,有4種速率。在此項目中,使用32kbps的速率。ADPCM算法是一種波形編碼,它在PCM編碼的基礎上引入了預測和差分的概念,僅對實際值民預測值之間的差值進行編碼。在編碼過程,用過去樣點的值對當產點進行預測,并自適應地調整預測系數數,使預測誤差很小,從而在降低碼率的同時,保持了很高編碼質量。
(4)CVSD(32kbps/16kbps)算法
連續(xù)可變分辯率增量調制,是一種1bit的差分波形編碼方式。自適用的量階隨信號統(tǒng)計特性的變化而變化,在信號很大動態(tài)范圍內,可獲得最大信噪比。并且易于實現,電路結構簡單。
主要技術:三連0/三連1檢測,即若檢測到碼流中有三連0或三連1,則表示信號在驟升或驟降,調整量階以適應信號變化。
2 硬件系統(tǒng)(1)硬件板介紹
在發(fā)端,模擬信號通過前端處理電路和A/D采樣,轉換成8bit A-law PCM信號。對數PCM信號在TMS320VC5409中轉換線性碼,并進行壓縮編碼。輸出的G.729a/ADPCM/CVSD編流在信道上傳輸。
接收端接收到的壓縮碼流在DSP中