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