基于TMS320C6713的多路CVSD語音編解碼
64 Kb/s的A律或μ律的對數(shù)壓擴PCM編碼在大容量的光纖通信系統(tǒng)和數(shù)字微波系統(tǒng)中已得到廣泛應用,但由于占用較大的傳輸帶寬和具有復雜的成幀結(jié)構(gòu)。連續(xù)可變斜率增量(Continuously Variable Slope Delta,CVSD)調(diào)制以其較低的應用難度、成本和編碼速率,較好的語音質(zhì)量廣泛應用于戰(zhàn)術(shù)通信網(wǎng)、衛(wèi)星通信、藍牙等無線語音傳輸領(lǐng)域。于是不同碼制的網(wǎng)絡之間的互連對兩種碼制之間的轉(zhuǎn)換提出了更高的要求。針對近年來FPGA、DSP技術(shù)的不斷發(fā)展,本文提出了一種滿足此需求的設(shè)計方案,以適應通信技術(shù)日新月異的發(fā)展。
1 多路數(shù)據(jù)信號的收發(fā)
1.1 McASP(Multichannel Audio Serial Port)
McASP在C5000系列DSP處理器基礎(chǔ)上新增加的一個專門用來實現(xiàn)多通道音頻應用的通用串行端口,它包括收/發(fā)兩個功能部件,二者問即可完全同步也可各自采用完全獨立的主時鐘、位時鐘和幀同步時鐘,具備不同的數(shù)據(jù)傳輸模式和位碼流格式。支持多種數(shù)據(jù)協(xié)議:I2S,S/PDIF,IEC60958-1,AES-3等格式碼流,支持時分復用(TDM碼流),多達32個通道進行收發(fā)傳輸?shù)淖珠L可以是8位/12位/16位120位/24位/32位等。
1.2 多路數(shù)據(jù)收發(fā)的實現(xiàn)
1.2.1 TDM模式
本文討論的是音頻數(shù)據(jù)的傳輸,當MCASP工作于TDM格式時可以用于DSP和多個ADC及DAC直接相連接。數(shù)據(jù)的多路傳輸取決于每一收(發(fā))幀多達32個時隙的傳輸模式。圖1顯示了6個SLOT的傳輸模式。
[!--empirenews.page--]
TMS320C6713的多路數(shù)據(jù)輸出/輸入需經(jīng)過一個數(shù)據(jù)組合和分離的時序控制單元,這一任務由一塊FPGA完成,其功能是接收所有來自DSP的數(shù)據(jù),將相同的時隙組合在一起后根據(jù)相應的連接設(shè)備的時序送出,同時將來自不同的設(shè)備的數(shù)據(jù)組合后以TDM的方式送入DSP,如圖2所示。
1.2.2 時鐘和幀同步
通過設(shè)置DSP的收發(fā)幀同步控制寄存器可以設(shè)置TDM的具體模式,而相應的位時鐘、幀同步時鐘可由編程控制由外部產(chǎn)生或直接由內(nèi)部產(chǎn)生,圖3是時鐘的相關(guān)控制關(guān)系。高頻時鐘AHCLKX可由高頻時鐘控制寄存器設(shè)置為內(nèi)部產(chǎn)生或外部輸入,ACLKX可由時鐘控制寄存器設(shè)置為內(nèi)部產(chǎn)生或外部輸入。如果采用內(nèi)部高頻時鐘,則由AUXCLK經(jīng)分頻后得到,分頻數(shù)值由高頻時鐘控制寄存器的0~11 b決定;高頻時鐘分頻后得到位時鐘,分頻數(shù)值由時鐘控制寄存器的0~4 b決定。
1.3 AD采樣和語音信號的回放
TLV320AIC23B是輸入輸出模擬音頻接口編解碼器,該編解碼器采用了Sigma-Delta技術(shù)進行數(shù)模和模數(shù)轉(zhuǎn)換,并和McBSP直接相連,AIC23還提供了麥克風輸入、線性輸入、線性輸出和耳機輸出4個模擬接口。TLV320AIC23B的控制字可通過SPI方式或者I2C方式寫入。圖4是I2C方式控制字的讀寫時序圖。設(shè)定控制寄存器的工作方式后即可利用TLV320AIC23B對語音信號進行高精度的采樣和回放。
2 CVSD編解碼
CVSD也叫數(shù)字檢測音節(jié)壓擴增量調(diào)制,進入實用階段已有十多年的歷史。數(shù)字CVSD編譯碼器中音節(jié)平滑濾波器及編譯碼器中的主積分器的轉(zhuǎn)移函數(shù)如下:
音節(jié)平滑濾波器:
[!--empirenews.page--]
編碼器雙積分器:
譯碼器主積分器:
圖5是編譯碼器的流程圖。對上述公式做Z的反變換可以得到三個差分方程,按照相應的差分方程實現(xiàn)相應的編解碼器代碼編寫。
3 PCM碼與CVSD碼的轉(zhuǎn)換
PcM碼采樣頻率是8 kHz,CVSD編碼的采樣頻率是16 kHz,把PCM碼轉(zhuǎn)化為CVSD碼先要把PCM碼轉(zhuǎn)換成線性PCM,然后加2倍內(nèi)插低通濾波器以使采樣頻率從8 kHz變換到16 kHz,之后送入CVSD編碼器生成16 Kb/s的CVSD碼;CVSD碼轉(zhuǎn)化成PCM碼則是一個相反的過程,即將CVSD碼送入譯碼器即可得到線性的PCM碼,與此時的PCM碼相對應的采樣頻率為16 kHz,而不是8 kHz。為使采樣頻率從16 kHz變換到8 kHz,需要加2倍抽取低通濾波器,把線性PCM變換成A律PCM。而濾波器可以選擇FIR濾波器。
4 結(jié) 語
本文提出的多路音頻數(shù)據(jù)的輸入/輸出設(shè)計,利用了6000系列DSP的高速數(shù)據(jù)處理功能,同時處理多路數(shù)據(jù)的CVSD編解碼、PCM碼與CVSD碼的相互轉(zhuǎn)換,對于不同碼制的網(wǎng)絡之間的互連具有重要的應用意義。