<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 消費電子 > 設計應用 > 多制式語(yǔ)音編碼及其DSP實(shí)現

多制式語(yǔ)音編碼及其DSP實(shí)現

作者: 時(shí)間:2009-02-09 來(lái)源:網(wǎng)絡(luò ) 收藏
在各種通信設備中,實(shí)時(shí)的壓縮通常在。單一的算法,由于碼率和算法固定,系統的靈活性較差。越來(lái)越多的通信服務(wù)要求能多種、多路算法,提供一定范圍內的速率和編碼算法的多種選擇,例如軟件無(wú)線(xiàn)電、IP電話(huà)、多媒體終端等。

  G.729a是ITU制定的一種高質(zhì)量的中速率編碼標準,編碼速率為8kbps,目前已在許多通信系統中得到了應用。16/32kbps的CVSD是一種抗信道誤碼非常好的編碼算法,在軍事通信、宇航通信中得到了廣泛的應用。32kbps的ADPCM是一種算法較簡(jiǎn)單的波形編碼,具有很好的話(huà)音質(zhì)量和抗噪性能,在衛星通信、數字話(huà)路倍增系統中得到了廣泛應用。綜合了這三種算法的編碼系統,在8kbps~32kbps碼率具有較高的靈活性。

本文引用地址:http://dyxdggzs.com/article/167071.htm

  由于語(yǔ)音壓縮的運算量、存儲量和精度要求都不太高,在考慮價(jià)格因素的基礎上,定點(diǎn)足以勝任語(yǔ)音編解碼的要求。本文采用了TI公司的TMS320VC5409定點(diǎn)了上述三種語(yǔ)音編解碼算法。算法DSP的實(shí)現通過(guò)了有關(guān)測試。其中G.729a和ADPCM采用ITUT有關(guān)建議提供的測試序列進(jìn)行了測試,CVSD按照我國有關(guān)標準進(jìn)行了測試。

  本文對以上三種語(yǔ)音編碼和TMS320VC5409做簡(jiǎn)單介紹后,對算法的軟件和硬件實(shí)現進(jìn)行介紹,并給出算法所需運算量以及所占用的硬件資源。

1 DSP芯片和語(yǔ)音編碼算法

  (1)TMS320VC5409簡(jiǎn)介

TMS320VC5409是TI公司生產(chǎn)的一種性?xún)r(jià)比較高的定點(diǎn)DSP芯片,運算速度為80MIPS/100MIPS。它擁有改進(jìn)的哈佛結構、一個(gè)CPU、片上存儲區(32KB的ROM和64KB的DARAM)、片上外設以及專(zhuān)用的指令結構。它具有以下主要優(yōu)點(diǎn):

  ?1條程序總線(xiàn)和3條數據總線(xiàn)。配合存儲區的雙操作數讀取能力,可以支持單周期,三操作數指令,提高了程序的運行效率和通用性;

  ?先進(jìn)的針對應用設計的CPU硬件邏輯提高了芯片的性能;

  ?高度專(zhuān)用的指令結構提供了更快的算法實(shí)現和更方便的優(yōu)化;

  ?片上外設包括3個(gè)McBSP(多通道緩沖串口)、一個(gè)6通道的DMA控制器、8bit HPI口及鎖相環(huán)時(shí)鐘發(fā)生器;

  ?模塊化結構方便了快速的后續發(fā)展;

  ?先進(jìn)的IC處理技術(shù)實(shí)現了高性能和低功耗,5V靜態(tài)CMOS技術(shù)進(jìn)一步降低了功耗。

(2)G.729a算法

  G.729是ITU在8kbps速率上的標準,采用“共軛結構代數碼本激勵線(xiàn)性預測編碼方案”(C-ASCELP)算法。這種算法綜合了波形編碼和參數編碼的優(yōu)點(diǎn),以線(xiàn)性預測編碼技術(shù)為基礎,采用了矢量量化、分析合成和感覺(jué)加權等技術(shù)。G.729a只在G.729的基礎上減少了一些運算量,保持了兼容性,質(zhì)量也基本沒(méi)有下降。

  (3)32kbps ADPCM算法

  G726是ITU制定的自適應差分脈沖編碼算法標準,有4種速率。在此項目中,使用32kbps的速率。ADPCM算法是一種波形編碼,它在PCM編碼的基礎上引入了預測和差分的概念,僅對實(shí)際值與預測值之間的差值進(jìn)行編碼。在編碼過(guò)程中,用過(guò)去樣點(diǎn)的值對當前樣點(diǎn)進(jìn)行預測,并自適應地調整預測系數,使預測誤差很小,從而在降低碼率的同時(shí),保持了很高的編碼質(zhì)量。

  (4)CVSD(32kbps/16kbps)算法

  連續可變斜率增量調制,是一種1bit的差分波形編碼方式。自適應的量階隨信號統計特性的變化而變化,在信號很大動(dòng)態(tài)范圍內,可獲得最大信噪比。并且易于實(shí)現,電路結構簡(jiǎn)單。

  主要技術(shù):三連0/三連1檢測,即若檢測到碼流中有三連0或三連1,則表示信號在驟升或驟降,調整量階以適應信號變化。

2 硬件系統

  (1)硬件板介紹

在發(fā)端,模擬信號通過(guò)前端處理電路和A/D采樣,轉換成8bit A-law PCM信號。對數PCM信號在TMS320VC5409中轉成線(xiàn)性碼,并進(jìn)行壓縮編碼。輸出的G.729a/ADPCM/CVSD碼流在信道上傳輸。

  接收端接收到的壓縮碼流在DSP中被解碼成對數PCM信號,再經(jīng)過(guò)D/A變換和用戶(hù)電路,最終得到模擬話(huà)音。其中CPLD用來(lái)產(chǎn)生8kHz的幀同步信號,使各硬件芯片之間協(xié)同工作。

A/D、D/A部分采用單片MC14557芯片。單路信號的硬件系統框圖如圖1所示。

(2)算法的硬件選擇

  程序定義了兩個(gè)標志變量flag1、flag2。利用VC5409提供的可屏蔽中斷INT0~INT3[1],在中斷服務(wù)例程中對2個(gè)標志位進(jìn)行設置,從而控制主程序的跳轉。

  系統加電后,INT0~INT3其中一個(gè)管腳給出中斷請求信號,程序執行中檢測到哪個(gè)中斷,就執行該中斷對應的編碼算法。接著(zhù),主程序對IMR寄存器置位以屏蔽這些中斷,直至下一次系統復位。其中INT0中斷在測試中是無(wú)編碼轉換的跳轉,但在應用中用于選擇32kbps的CVSD算法。表1是算法選擇的硬件中斷與標志位設置。

  (3)數據流輸入和輸出

  VC5409提供了3個(gè)McBSP (Multichannel Buffered Serial Ports)[2],并在其中集成了硬件對數PCM。串口的雙緩沖區發(fā)送、三緩沖區接收能保證數據的連續性。收發(fā)的數據流字長(cháng)可以是8、12、16、20、24、32bit,每幀最多可以有128個(gè)字。表2是本項目采用的串口配置。

  對每種算法,4路都要求全雙工工作,因此,對3個(gè)McBSP都進(jìn)行了配置。其中,McBSP0負責PCM碼流的收發(fā)。PCM碼流是4路8bit的A-law信號,因此定義字長(cháng)為8位;McBSP1收發(fā)G.729的碼流。G.729分幀編碼,幀長(cháng)10ms,每幀80bit。為了數據能夠方便、有效地收發(fā),定義串口的字長(cháng)為16bit,這樣,每5個(gè)幀同步收全一個(gè)G.729幀,共16×5×4(路)=80×4bit。

  為了取得數據格式的一致性,方便串口收發(fā)碼流,對ADPCM和CVSD定義了相同的碼流格式,并由McBSP2收發(fā)。如圖2所示。

32kbps ADPCM每樣點(diǎn)用4bit編碼,規定其碼流為每樣點(diǎn)的碼字重復2次,即占8bit。4路信號共32bit;16kbps和32kbps的CVSD是每樣點(diǎn)2bit和4bit編碼,故規定其碼流為每比特編碼碼字分別重復4次和2次,即均占8bit。4路信號也是32bit。

  (4)數據流的傳輸(串口與存儲區)

  VC5409提供了6個(gè)DMA[2]通道,用戶(hù)可以設置每個(gè)DMA通道的源地址、目的地址、一次傳輸的數據量、同步事件和中斷方式等。

  表3是本項目中各DMA通道的配置情況。

  (5)數據傳輸的控制

  


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>