《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > TMS320VC5416器件的G.722.2的研究與實現(xiàn)

TMS320VC5416器件的G.722.2的研究與實現(xiàn)

2008-07-03
作者:黃元峰,黃學(xué)達

??? 摘 要: 提出自適應(yīng)多速率寬帶語音編碼" title="語音編碼">語音編碼標準G.722.2,重點研究了建立在代數(shù)碼激勵線性基礎(chǔ)上的信源編碼技術(shù),簡單介紹了包括活動語音檢測、舒適噪聲生成的源控制速率方案及錯誤隱藏機制。針對G.722.2算法復(fù)雜度高的特點,對TI公司的定點DSP TMS320VC5416的硬件原理進行重點研究,給出了編解碼算法實現(xiàn)的軟件架構(gòu),分析了軟件實現(xiàn)流程。
??? 關(guān)鍵詞: 語音編碼? 自適應(yīng)多速率? 代數(shù)碼激勵線性預(yù)測? 源控速率

?

??? 脈沖編碼調(diào)制(PCM)原理的出現(xiàn)標志著現(xiàn)代數(shù)字通信技術(shù)研究的開始。經(jīng)過半個多世紀的發(fā)展,數(shù)字通信系統(tǒng)以其在可靠性、抗干擾性、易集成性、保密性、交換速度和成本等方面的優(yōu)異性能取代了模擬通信系統(tǒng)。
??? 為壓縮語音編碼速率以提高通信系統(tǒng)的頻帶利用率,擴大通信容量,ITU-T先后推出PCM、ADPCM、G.728、G.729、G.723.1等語音編碼標準。2001年,3GPP和ITU-T采納G.722.2為GSM、WCDMA和3G系統(tǒng)的語音編碼解碼" title="編碼解碼">編碼解碼標準,2002年ITU-T又將其選為有線應(yīng)用的寬帶標準。
1 G.722.2寬帶語音編碼標準研究[1~7]
??? G.722.2寬帶語音編碼器是單個的集成語音編碼器,由9種速率模式組成,位速率分別為:23.85、23.05、19.85、18.25、15.85、14.25、12.65、8.85和6.6kbps。它包括活動語音檢測(VAD)、舒適噪聲生成(CNG)以及對付傳輸錯誤和丟包后的錯誤隱藏機制組成。
1.1 編碼算法部分
??? G.722.2以代數(shù)碼激勵線性預(yù)測為基礎(chǔ),通過線性預(yù)測分析、基音預(yù)測分析和在12.8kHz采樣的固定碼本參數(shù)的分析,以期最小化感覺加權(quán)差信號。處理時以幀為單位,分析每幀語音抽取CELP參數(shù),除此還計算出23.85kbps模式下高帶增益索引值。
1.2 解碼算法部分
??? 主要解碼器發(fā)送的參數(shù)(包括LP參數(shù),自適應(yīng)碼本矢量和增益,固定碼本矢量和增益以及高帶增益),分析合成重構(gòu)語音。
1.3 源控制速率方案
??? 源控制速率的作用是讓語音編碼器用一個低速率來編碼只包含背景噪音的語音幀,而不是編碼所有的語音。在GSM中,將這種模式稱為DTX(非連續(xù)傳輸)控制和操作。編碼解碼器在采用這種模式編碼時,位速率是1.75kbps。網(wǎng)絡(luò)可以調(diào)整其傳輸方案獲得可變速率。
1.4 丟幀/失幀錯誤隱藏機制
??? 由于傳輸錯誤,幀可能會出錯,而在無線網(wǎng)絡(luò)和包交換網(wǎng)絡(luò)還可能造成幀丟失。為了將單個錯幀/失幀屏蔽,錯幀/失幀發(fā)生時會通知語音解碼器,而后初始化錯誤隱藏的過程。在語音合成時使用一組預(yù)測參數(shù),網(wǎng)絡(luò)通過設(shè)置被傳輸語音幀的類型標志位來指明發(fā)生了錯幀/失幀或者丟失SID幀。
2 TMS320VC5416的硬件平臺解決方案[8][9]
??? 采用 美國TI公司的54X系列定點DSP TMS320VC5416,具有低功耗、高性能等特點。
2.1 硬件平臺介紹
??? TMS320VC5416的主要特征有:
??? (1)優(yōu)化的CPU結(jié)構(gòu):增強的多總線結(jié)構(gòu),數(shù)據(jù)總線具有總線保持特性;40bit的算術(shù)邏輯單元(ALU),包括兩個獨立的40bit的累加器,一個40bit的桶形移位器;一個17×17的乘法器連接一個40bit專用加法器,可用來進行非流水線式的單周期乘/累加(MAC)操作等。
??? (2)存儲器:擴展地址模式可最大尋址8M×16bit" title="16bit">16bit;64K×16bit雙訪問片內(nèi)RAM;64K×16bit單訪問片內(nèi)RAM;16K×16bit片內(nèi)ROM。
??? (3)指令集:支持單指令循環(huán)和塊循環(huán)操作;塊存儲器傳送指令提供了高效的程序和數(shù)據(jù)存儲器管理;支持32bit長字操作;支持并行存儲/加載" title="加載">加載指令;支持條件存儲指令和中斷快速返回;支持定點DSP的C語言編譯器。
??? (4)片上硬件資源:軟件可編程等待狀態(tài)發(fā)生器和可編程存儲單元轉(zhuǎn)換;鎖相環(huán)(PLL)時鐘發(fā)生器;一個16bit定時器;三個多通道緩沖串口(McBSPs);六通道直接存儲訪問控制器;增強型8/16bit并行主機接口(HPI)。
??? (5)速度:在3.3V(內(nèi)核電壓1.6V)供電時,執(zhí)行周期是6.25ns(160MIPS)。
??? (6)電源:功耗低,工作電源有3.3V、1.6V和1.5V(內(nèi)核電壓),用節(jié)電模式IDLE1、IDLE2、IDLE3指令作功率控制,可禁止CLKOUT。
2.2 直接存儲器訪問DMA
??? C5416的DMA擁有6個獨立的可編程通道,同時允許6個不同的DMA操作。DMA控制器可以在不影響CPU情況下,允許數(shù)據(jù)在片內(nèi)存儲器、片上外設(shè)和片外設(shè)備之間獨立傳輸。主要特點:DMA操作獨立于CPU;擁有6個通道,DMA可以跟蹤6個獨立塊傳輸情況;對于內(nèi)部和外部訪問,DMA比CPU有更高優(yōu)先級;每一通道優(yōu)先級可編程;每個通道的源、目的地址寄存器值每次讀寫后可靈活配置,讀寫一次后地址可以為常數(shù)、后加一、后減一或者被一個編程值修改;每次讀寫內(nèi)部傳送可由選擇的時間來初始化;完成一半或整個數(shù)據(jù)塊傳送,DMA向CPU發(fā)中斷;DMA可執(zhí)行雙字傳送。
2.3 多通道緩沖串行口McBSP
??? C5416內(nèi)置了3個高速、全雙工的McBSPs。通過McBSPs可直接接到其他DSP器件、CODEC器件或系統(tǒng)內(nèi)其他器件。主要特點有全雙工通信;雙緩沖數(shù)據(jù)寄存器,允許連續(xù)數(shù)據(jù)流;收發(fā)時,獨立的幀和時鐘;可直接連接T1/E1、AC97等;最大至128通道的多通道收發(fā);u律和A律壓擴可選;幀同步和數(shù)據(jù)時鐘的極性可選等。
??? CPU和DMA控制器通過內(nèi)部外設(shè)總線對McBSP進行訪問,當McBSP同步到一個DMA通道時,數(shù)據(jù)可以集中在發(fā)送和接收緩沖區(qū),并且整個緩沖區(qū)是連續(xù)的。當DMA填充完整個緩沖區(qū)后,就觸發(fā)一個中斷給CPU。這就明顯降低了中斷延時和處理時間。
2.4 Bootloader技術(shù)
??? C54x DSP芯片一般都在片內(nèi)設(shè)置有BOOT程序,其主要功能是:在上電時將用戶程序代碼從外部存儲器加載到程序存儲器并執(zhí)行。加載程序途徑有從外部8位或16位EPROM加載,由主機通過8位或16位并行I/O口、串口、HPI以及自定義的自舉" title="自舉">自舉加載。其中自舉加載的過程如圖1所示。

?

????????????????


??? 本文介紹的代碼實現(xiàn)過程用到了外部FLASH的并口自舉。并口自舉檢測過程如下:DSP首先從I/O空間的0xFFFFH位置讀取自舉表的起始地址,如果低8位地址有效,則并行加載;如果低8位數(shù)據(jù)無效,則DSP將從數(shù)據(jù)空間0xFFFFH位置讀取自舉表的起始地址,同樣低8位有效則并行加載,否則轉(zhuǎn)串行檢測。
3 編解碼算法的實時實現(xiàn)[9][10]
??? 匯編語言程序設(shè)計是TMS320VC5416應(yīng)用軟件設(shè)計的基礎(chǔ),其主要任務(wù)是利用DSP芯片提供的匯編指令和偽指令編寫源程序完成指定的功能。開發(fā)環(huán)境是TI公司的集成DSP軟件開發(fā)環(huán)境CCS,開發(fā)語言是匯編語言和C語言的混合編程。
??? 由于G.722.2是多速率語音編碼,所以在編碼解碼前要確定編碼模式,在硬件平臺實現(xiàn)時,通過修改C源代碼的編碼模式提取部分函數(shù),從而給定每次編碼的速率模式,使代碼的實現(xiàn)不需要考慮信道傳輸情況,只專注于編解碼的算法實現(xiàn)。
3.1 C語言和匯編的混合編程
??? 采用C語言與匯編的混合編程實現(xiàn)G.722.2標準的代碼。為了不破壞C環(huán)境,改寫的匯編函數(shù)必須符合C函數(shù)的參數(shù)傳遞規(guī)則。在匯編程序設(shè)計時,參數(shù)的傳遞主要遵循以下規(guī)則:
??? (1)函數(shù)的第一個參數(shù)存放在A寄存器,后面的參數(shù)以逆序壓入堆棧;如果參數(shù)有結(jié)構(gòu)體,則將結(jié)構(gòu)體的地址保存在A寄存器中。
??? (2)如果參數(shù)中存在長操作數(shù),則應(yīng)按照低位字先壓棧、高位字后壓棧的順序保存,否則容易出錯。
在編寫匯編函數(shù)時,除了遵循匯編函數(shù)的調(diào)用規(guī)則外,還必須對函數(shù)中用到的輔助寄存器進行存放堆棧的保護,防止調(diào)用時修改被調(diào)用函數(shù)中使用的輔助寄存器。
3.2 系統(tǒng)軟件結(jié)構(gòu)
??? 整個系統(tǒng)軟件主要包括以下三個部分:初始化程序、語音編碼解碼部分和語音接口程序部分,整個軟件體系結(jié)構(gòu)如圖2所示。

????????????????????????

??? 軟件各模塊的主要功能:(1)初始化部分完成編碼解碼和外設(shè)的初始化;(2)語音編碼解碼部分進行語音信號的編碼和解碼處理;(3)語音接口部分是整個系統(tǒng)的最底層,完成語音信號在串口上的接收與發(fā)送。
??? G.722.2語音編碼解碼實現(xiàn)軟件中,主函數(shù)包含在main.c文件中。主程序的處理過程為:首先對DSP芯片、A/D(D/A)芯片以及McBSP、DMA初始化,然后打開中斷屏蔽控制器(IMR),允許中斷請求,進入等
??? 待主循環(huán)啟動DMA,同時串口開始接收數(shù)據(jù)。在接收過程中每接收完一幀數(shù)據(jù)時,DMA向CPU產(chǎn)生一次中斷,將一幀數(shù)據(jù)從中取出,DMA緩沖區(qū)計數(shù)器清零以重新開始填充接收緩沖區(qū)。同時開始調(diào)用編碼解碼子程序?qū)ψx入的語音數(shù)據(jù)進行壓縮處理,存儲處理后的輸出數(shù)據(jù)等待發(fā)送;當發(fā)送完一幀數(shù)據(jù)時,DMA向CPU產(chǎn)生一次中斷,緩沖區(qū)計數(shù)器清零,并將已存儲的待輸出數(shù)據(jù)填入發(fā)送緩沖區(qū),然后繼續(xù)對接收和發(fā)送緩沖區(qū)進行檢測,重復(fù)上述循環(huán)過程。程序設(shè)計了兩個獨立并行的DMA通道,分別負責(zé)語音數(shù)據(jù)的發(fā)送和接收,在不影響CPU的情況下可同時收發(fā)數(shù)據(jù),每發(fā)送或接收完一幀數(shù)據(jù)產(chǎn)生一次DMA中斷。
重建語音的質(zhì)量是評價編碼解碼算法和系統(tǒng)性能的關(guān)鍵指標之一,可分為客觀評測和主觀評測標準。其中客觀評測標準主要是以3GPP提供的一套測試文件為DSP匯編程序正確性檢驗的標準;主觀評測一般采用的是平均判分法(MOS)。本文的主觀評測是邀請少量人員進行實驗,實驗結(jié)果具有一定的可參考性。實際測試時,利用導(dǎo)線將硬件平臺上的Mic接口和各種聲音源相連,耳機插孔輸出編碼解碼后的語音,對解碼后的語音進行試聽測試。實驗表明,以男生、女生、音樂等多種音源作為Mic輸入,系統(tǒng)具有良好的適應(yīng)性。非正式試聽測試,恢復(fù)語音保留了較好的說話人特征。通過對不同編碼速率的比較可知,高速率語音編碼方式語音質(zhì)量明顯優(yōu)于低速率語音編碼方式。
參考文獻
[1] 王炳錫.變速率語音編碼[M].西安:西安電子科技大學(xué)出版社,2004,7.
[2] 程佩青.數(shù)字信號處理教程[M].北京:清華大學(xué)出版社,2002,2.
[3] 3GPP,TS 26.091:AMR Speech Codec;Error concealment of lost frames[S].2002,6.
[4] 3GPP,TS 26.092:AMR Speech Codec;Comfort noise for AMR speech traffic channels[S].2002,6.
[5] 3GPP,TS 26.093:AMR Speech Codec;Source controlled rate operation[S].2004,4.
[6] 3GPP,TS 26.094:AMR Speech Codec;Voice activity?detector for AMR speech traffic channels[S].2002,6.
[7] 3GPP,TS 26.101:Mandatory speech codec speech processing functions;Adaptive Multi-Rate(AMR) speech codec?frame structure[S].2004,9.
[8] TMS320VC5416 Fixed-Point digital signal processor data?manual[Z],March 1999,Revised January 2005.
[9] 戴明禎.TMS320C54x數(shù)字信號處理器原理、結(jié)構(gòu)及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2001
[10] 宗戰(zhàn)華,鄭建生.TMS320VC5416并行自舉的巧妙實現(xiàn)[J].電子技術(shù)應(yīng)用,2004(12):77-80

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品一二| 亚洲精品美女久久7777777| 美女成人午夜| 久久成人综合网| 亚洲欧美久久久| 亚洲神马久久| 一区二区三区国产在线| 日韩一级二级三级| 亚洲精品国产精品乱码不99按摩| 久久精品九九| 欧美在线播放一区| 小处雏高清一区二区三区 | 日韩亚洲欧美综合| 亚洲国内精品| 亚洲精品美女在线观看| 亚洲人体1000| av成人国产| 在线中文字幕不卡| 中文成人激情娱乐网| 一区二区高清在线观看| 亚洲少妇诱惑| 亚洲欧美文学| 久久福利电影| 亚洲福利在线观看| 最近看过的日韩成人| 亚洲精品看片| 宅男66日本亚洲欧美视频| 亚洲图片激情小说| 亚洲欧美精品在线| 久久精品成人一区二区三区| 久久久精品一区二区三区| 久久综合国产精品| 欧美国产综合一区二区| 欧美日韩亚洲不卡| 国产精品美女xx| 国产三级欧美三级日产三级99| 国内成人精品一区| 亚洲大片av| 99精品免费视频| 亚洲一区三区视频在线观看 | 一区二区三区欧美| 亚洲综合色自拍一区| 久久精品国产视频| 麻豆9191精品国产| 欧美日韩的一区二区| 国产精品视频自拍| 国内精品视频在线观看| 最新国产成人在线观看| 一二美女精品欧洲| 欧美一区二区视频观看视频| 亚洲黄色影片| 亚洲女同性videos| 久久亚洲春色中文字幕| 欧美激情欧美激情在线五月| 国产精品免费一区二区三区观看| 国产真实乱子伦精品视频| 亚洲三级电影全部在线观看高清| 亚洲自啪免费| 亚洲精品视频啊美女在线直播| 亚洲一区三区电影在线观看| 久久久噜噜噜久久中文字幕色伊伊| 欧美黄色一区二区| 国产精品免费看片| 亚洲国产精品激情在线观看| 亚洲手机视频| 亚洲国产日韩一区| 欧美亚洲免费| 欧美精品国产| 国产亚洲成av人在线观看导航| 亚洲破处大片| 小辣椒精品导航| 亚洲视频欧洲视频| 久热综合在线亚洲精品| 国产精品美女| 日韩视频免费在线| 久久国产免费| 亚洲综合第一页| 欧美成人精品不卡视频在线观看| 国产精品区二区三区日本| 亚洲国产精品999| 亚洲欧美综合精品久久成人| av成人手机在线| 麻豆国产精品777777在线| 国产精品区一区| 亚洲剧情一区二区| 亚洲国产激情| 久久不见久久见免费视频1| 欧美日韩1区2区| 曰韩精品一区二区| 亚洲欧洲99久久| 亚洲伊人观看| 欧美精品一区在线播放| 国内精品久久久久久久影视蜜臀| 亚洲天堂av电影| 99riav国产精品| 免费试看一区| 国内成人自拍视频| 欧美一区二区三区精品| 亚洲欧美电影院| 欧美日韩午夜| 亚洲美女毛片| 亚洲人成网站777色婷婷| 久久露脸国产精品| 国产日韩欧美一二三区| 亚洲午夜国产成人av电影男同| 日韩视频在线一区| 奶水喷射视频一区| 狠狠色香婷婷久久亚洲精品| 香蕉久久夜色精品国产使用方法| 欧美一级精品大片| 国产精品黄色在线观看| 99国内精品| 亚洲一区国产| 欧美日韩中文在线观看| 亚洲精品午夜精品| 亚洲美女毛片| 欧美高清视频免费观看| 亚洲激情在线观看| 亚洲精品免费在线观看| 欧美aa在线视频| 1024欧美极品| 日韩视频一区| 欧美巨乳在线| 99riav久久精品riav| 亚洲视频一起| 国产精品普通话对白| 亚洲自拍偷拍色片视频| 欧美一区二区三区精品电影| 国产日韩欧美a| 欧美一区不卡| 麻豆freexxxx性91精品| 亚洲国产激情| 一本色道久久综合一区| 欧美日韩视频免费播放| 国产精品99久久久久久www| 亚洲欧美国产不卡| 国产欧美日韩不卡免费| 欧美一区二区三区精品| 久久裸体艺术| 亚洲国产三级网| 国产精品99久久99久久久二8 | 亚洲第一精品影视| 亚洲精品网址在线观看| 欧美人体xx| 在线亚洲成人| 欧美综合激情网| 很黄很黄激情成人| 亚洲人成网站777色婷婷| 欧美日韩国产电影| 亚洲一二三区视频在线观看| 久久精品国产免费观看| 亚洲第一搞黄网站| 亚洲视频二区| 国产一区二区精品丝袜| 亚洲人成亚洲人成在线观看| 欧美日韩在线一区| 午夜视频在线观看一区二区三区| 美乳少妇欧美精品| 亚洲精品综合精品自拍| 午夜久久美女| 影音欧美亚洲| 亚洲一二三区在线观看| 国产婷婷色一区二区三区在线 | 日韩视频一区二区三区| 国产精品久久久久久久久动漫| 亚洲欧美综合国产精品一区| 欧美aa国产视频| 亚洲午夜性刺激影院| 久久久最新网址| 99在线观看免费视频精品观看| 久久国产精品毛片| 91久久精品美女高潮| 欧美一区二区三区四区视频| 伊人精品成人久久综合软件| 一区二区三区回区在观看免费视频| 国产美女精品视频| 亚洲人体1000| 国产伦精品一区二区三区| 亚洲精品少妇30p| 国产精品欧美日韩| 亚洲免费观看视频| 国产视频一区欧美| 夜夜夜久久久| 国产一区二区三区久久悠悠色av | 欧美成人一区二区| 亚洲午夜在线| 欧美/亚洲一区| 亚洲免费在线观看视频| 欧美激情小视频| 午夜亚洲性色福利视频| 欧美日本国产精品| 久久国产加勒比精品无码| 欧美少妇一区| 亚洲激情综合| 国产日韩精品一区二区三区| 一区二区三区日韩欧美| 激情懂色av一区av二区av| 亚洲欧美日韩国产一区| 亚洲欧洲一区二区在线播放| 久久久久五月天|