国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

G.723.1在DSP數(shù)字對(duì)講機(jī)基帶系統(tǒng)中的應(yīng)用

發(fā)布時(shí)間:2010-1-14 17:37    發(fā)布者:李寬
隨著通信技術(shù)的發(fā)展,傳統(tǒng)的模擬對(duì)講機(jī)已不能滿足人們的需求,對(duì)講機(jī)數(shù)字化勢(shì)在必行。信息社會(huì)的高速發(fā)展使頻譜資源變得愈加寶貴,信道利用率成為一項(xiàng)關(guān)鍵因素。如何在有限的信道資源下,通過(guò)壓縮信源以提高傳輸效率,已成為當(dāng)前急需解決的問(wèn)題之一。DSP數(shù)字信號(hào)處理器的運(yùn)算能力越來(lái)越強(qiáng),本設(shè)計(jì)采用TI公司的通用定點(diǎn)DSP TMS320C5509A作為基帶系統(tǒng)的處理器,主要對(duì)G.723.1語(yǔ)音壓縮編碼在頻帶、DSP資源有限的數(shù)字對(duì)講機(jī)基帶系統(tǒng)中的具體應(yīng)用進(jìn)行研究與實(shí)現(xiàn)。

1 G.723.1語(yǔ)音壓縮編碼原理

G.723.1標(biāo)準(zhǔn)主要用于對(duì)語(yǔ)音及其他多媒體聲音信號(hào)的壓縮。該算法是H.324系列標(biāo)準(zhǔn)的一部分,包含2種工作速率:低速率(5.3 kbps)采用代數(shù)碼本線性激勵(lì)預(yù)測(cè)(ACELP),高速率(6.3 kbps)采用多脈沖激勵(lì)最大似然量化(MP_MLQ)。2種速率的編碼器都以幀為處理單位,幀長(zhǎng)為30 ms,加上另需7.5 ms的延時(shí),總共37.5 ms的算法延時(shí)。編碼器原理如圖1所示。



輸入的16位線性PC碼流分成長(zhǎng)度為240樣點(diǎn)的語(yǔ)音幀。每幀信號(hào)先通過(guò)1個(gè)高通濾波器,去除低頻成分,再分成4個(gè)子幀,每個(gè)子幀60個(gè)樣點(diǎn)。對(duì)每個(gè)子幀進(jìn)行10階LPC預(yù)測(cè),將最后1個(gè)子幀的LPC參數(shù)轉(zhuǎn)化成線譜對(duì)LSP參數(shù)。用預(yù)測(cè)分裂矢量量化法(PSVQ)進(jìn)行量化。為了減少合成端合成語(yǔ)音信號(hào)的誤差,在分析端對(duì)LSP系數(shù)解碼、插值后,再變?yōu)長(zhǎng)PC系數(shù)。由LPC分析后的LPC系數(shù)可得到共振峰加權(quán)濾波器的系數(shù)。用共振峰加權(quán)濾波器對(duì)經(jīng)高通濾波后的語(yǔ)音信號(hào)進(jìn)行共振峰加權(quán)濾波,可得到共振峰加權(quán)濾波后的語(yǔ)音信號(hào)f(n)。由f(n)經(jīng)基音估計(jì)可求出開(kāi)環(huán)基音周期,基音周期的搜索范圍為18~142 個(gè)樣點(diǎn)。對(duì)每個(gè)子幀的語(yǔ)音信號(hào)進(jìn)行諧波噪聲整形、沖擊響應(yīng)計(jì)算,然后進(jìn)行閉環(huán)基音搜索,求出閉環(huán)基音周期及基音增益,再計(jì)算出殘差信號(hào)。然后根據(jù)不同的速率進(jìn)行激勵(lì)搜索,求出脈沖位置和幅度參數(shù),打包后形成以幀為單位的編碼數(shù)據(jù)流。

2 語(yǔ)音系統(tǒng)的結(jié)構(gòu)及硬件原理圖

原始的模擬語(yǔ)音首先要經(jīng)過(guò)模數(shù)變換,轉(zhuǎn)化為數(shù)字信號(hào)之后,通過(guò)串口輸入到DSP中,再進(jìn)行語(yǔ)音壓縮算法。G.723.1標(biāo)準(zhǔn)計(jì)算復(fù)雜和數(shù)據(jù)存儲(chǔ)量大的問(wèn)題使得語(yǔ)音編解碼方案的實(shí)時(shí)實(shí)現(xiàn)存在很多困難。為了保證該算法處理的實(shí)時(shí)性,本系統(tǒng)選用 DSP作為主控芯片,用來(lái)實(shí)現(xiàn)編解碼算法。語(yǔ)音系統(tǒng)整體硬件結(jié)構(gòu)如圖2所示。



3 語(yǔ)音系統(tǒng)的硬件設(shè)計(jì)

本基帶系統(tǒng)的核心部件采用CPLD和DSP。DSP負(fù)責(zé)基帶的數(shù)字化處理,CPLD用于外圍器件的控制。將CPLD和DSP技術(shù)相結(jié)合,一方面能利用DSP軟件控制的靈活性,另一方面又能利用CPLD硬件上的高速、高集成度和可編程性。

本系統(tǒng)選用TMS320C5509A(簡(jiǎn)稱C5509A)負(fù)責(zé)G.723.1標(biāo)準(zhǔn)的算法及后續(xù)基帶數(shù)字化的處理(信道編譯碼、交織、加擾、CRC、基帶調(diào)制解調(diào))。該芯片是TMS320C55X系列DSP中的一款,C55X系列的結(jié)構(gòu)見(jiàn)參考文獻(xiàn)[1]。

CPLD主要用來(lái)擴(kuò)展DSP的外部地址空間,實(shí)現(xiàn)地址譯碼、時(shí)序控制,并給DSP提供所需的邏輯和時(shí)序控制信號(hào)。本系統(tǒng)選用Altera公司 MAX7000系列中的EPM7128,其與DSP的接口電路如圖3(a)所示,其中FSX和FSR幀同步信號(hào)端的同步信號(hào)相同。原始模擬語(yǔ)音信號(hào)必須進(jìn)行數(shù)字化處理后,才能在DSP中進(jìn)行語(yǔ)音壓縮編解碼算法。系統(tǒng)選用的是ADI公司推出的低成本、低功耗通用模擬前端AD7311L,其與DSP的接口電路如圖3(b)所示。由于G.723.1的算法比較復(fù)雜,處理時(shí)需要大量的存儲(chǔ)空間,本設(shè)計(jì)采用4Mb×16的SDRAM,芯片為MT48LCM16,通過(guò) EMIF接口映射到C5509A的CEO空間。其與DSP的接口電路如圖3(c)所示。



4 語(yǔ)音系統(tǒng)的軟件設(shè)計(jì)

總體軟件流程如圖4所示。當(dāng)DSP處于發(fā)送狀態(tài)時(shí),通過(guò)MCBSP1接收來(lái)自 AD7311L的數(shù)字化語(yǔ)音數(shù)據(jù),調(diào)用語(yǔ)音壓縮編碼程序,編完1幀輸出數(shù)據(jù),然后繼續(xù)進(jìn)行后續(xù)的相關(guān)基帶處理。當(dāng)DSP處于接收狀態(tài)時(shí),接收來(lái)自后續(xù)基帶處理的數(shù)據(jù),調(diào)用語(yǔ)音解碼程序;解碼后的語(yǔ)音數(shù)據(jù),再以每幀的數(shù)據(jù)通過(guò)MCBSP1送入AD7311L,最后還原成原始語(yǔ)音。下面主要介紹初始化模塊及語(yǔ)音編解碼模塊。



4.1 初始化模塊

系統(tǒng)的初始化是系統(tǒng)運(yùn)行的基礎(chǔ)部分,它涉及系統(tǒng)的整體硬件設(shè)計(jì),如引腳的分配及連接、各芯片采用的工作模式等問(wèn)題。本系統(tǒng)初始化模塊劃分為3個(gè)部分:初始化微處理器、初始化語(yǔ)音處理器、初始化外部寄存器。

DSP初始化函數(shù)名為DSP_Init.c,主要是對(duì)DSP的時(shí)鐘(clock),外部存儲(chǔ)器接口(EMIF)和多通道串行緩沖串口(McBSP)進(jìn)行初始化設(shè)置。

AD7311L的初始化函數(shù)主要是對(duì)其的外部引腳配置,該模塊分為McBSP1的配置和AD7311L的硬件配置。

McBSP1的初始化函數(shù)如下:





4.2 語(yǔ)音編解碼模塊

該模塊主要是對(duì)G.723.1的代碼處理。系統(tǒng)若直接使用ITU提供的定點(diǎn)C源代碼, C5509A完成1幀的編碼需要53 400 912個(gè)周期,即使C5509A工作在最高頻率200 MHz,也需要267 ms。所以代碼必須經(jīng)過(guò)優(yōu)化,且優(yōu)化后的代碼占用DSP的資源不能過(guò)高,這樣才能保證DSP有足夠的資源對(duì)后續(xù)的基帶數(shù)字化進(jìn)行實(shí)時(shí)處理。本設(shè)計(jì)主要從編譯器、C語(yǔ)言級(jí)、匯編級(jí)和算法級(jí)4個(gè)方面對(duì)G.723.1的定點(diǎn)C代碼進(jìn)行優(yōu)化。本文主要對(duì)算法級(jí)優(yōu)化進(jìn)行介紹。

在對(duì)G.723.1算法進(jìn)行仿真的過(guò)程中發(fā)現(xiàn),基音估計(jì)、自適應(yīng)碼本搜索、固定碼本搜索和代數(shù)碼本搜索等模塊占語(yǔ)音編解碼的總時(shí)間超過(guò)70%,因此優(yōu)化措施應(yīng)著重對(duì)這幾個(gè)模塊的算法進(jìn)行優(yōu)化。

①開(kāi)環(huán)基音估測(cè)函數(shù)Estim_Pitch()中,計(jì)算圖1f[n]中的互相關(guān)值COL(j):



尋找使得COL(j)max,開(kāi)環(huán)基音周期j的搜索范圍18~142。在基音周期較短時(shí),基音頻率較大;對(duì)語(yǔ)音信號(hào)編碼質(zhì)量影響較大,而基音周期較長(zhǎng)時(shí),基音頻率較小,對(duì)語(yǔ)音信號(hào)編碼質(zhì)量較小。所以18~58之間基音周期采用逐點(diǎn)計(jì)算搜索,而59~142之間以采用隔點(diǎn)計(jì)算,可以減少運(yùn)算量。

②高速率的脈沖激勵(lì)編碼(MP-MLQ)函數(shù)Find_Best()中計(jì)算預(yù)測(cè)殘差信號(hào) 時(shí)需要進(jìn)行卷積碼預(yù)算,對(duì)其進(jìn)行優(yōu)化。計(jì)算誤差信號(hào)的均方值 時(shí),式中 先通過(guò)加減運(yùn)算完成,最后做1次增益G的乘法運(yùn)算即可得到r’[n],這樣計(jì)算1次殘差矢量最多需要60×6=360次加減運(yùn)算,而優(yōu)化前的預(yù)算量為4×8×(1+2L+58+59)=56 640。由此可見(jiàn)優(yōu)化減少了大量的運(yùn)算。

③基本運(yùn)算庫(kù)函數(shù)優(yōu)化。G.723.1代碼的基本運(yùn)算庫(kù)函數(shù)Basop.c中,存在大量數(shù)字信號(hào)處理功能的函數(shù),而且占據(jù)絕大部分運(yùn)算,如L_mac()、L_mull()、L_add()、sature()等,所以還需在這幾個(gè)函數(shù)上進(jìn)行一些優(yōu)化工作。

5 調(diào)試結(jié)果分析

最終在TMS320C5509A上實(shí)時(shí)實(shí)現(xiàn)G.723.1標(biāo)準(zhǔn)。對(duì)于1幀語(yǔ)音在高速率6.3 kbps模式下,編解碼算法占用時(shí)間7.42 ms,算法復(fù)雜度為49.5 MIPS;低速率5.3 kbps模式下,編解碼占用時(shí)間5.34 ms,算法復(fù)雜度35.6 MIPS。

其主要模塊代碼優(yōu)化前后占用的時(shí)間對(duì)比如表1所列。



整個(gè)程序優(yōu)化后,G.723.1算法占用CPU的資源不到20%,即DSP還有足夠的資源對(duì)后續(xù)的基帶算法進(jìn)行處理。

結(jié)語(yǔ)

在工作頻率為200 MHz的C5509A自制硬件電路上,實(shí)現(xiàn)了對(duì)G.723.1標(biāo)準(zhǔn)的實(shí)時(shí)處理。將2塊板子串口相連,收端揚(yáng)聲器可以傳出發(fā)端傳來(lái)的實(shí)時(shí)、連續(xù)和清晰的語(yǔ)音。最后優(yōu)化驗(yàn)證以及整體基帶系統(tǒng)的調(diào)試結(jié)果證明,語(yǔ)音壓縮編碼方案選用正確,代碼優(yōu)化結(jié)果良好,硬件電路設(shè)計(jì)合理,在頻譜帶寬、DSP資源有限的條件下,圓滿地實(shí)現(xiàn)了G.723.1語(yǔ)音壓縮編碼在對(duì)講機(jī)基帶數(shù)字化系統(tǒng)設(shè)計(jì)中的應(yīng)用。從DSP的CPU負(fù)載情況看,G.723.1的代碼還可進(jìn)一步優(yōu)化。若想進(jìn)一步降低功耗,可采用全匯編實(shí)現(xiàn)。

參考文獻(xiàn)

1. Texas Instruments.TMS320VC5509A Hardware Designer's Resource Guide,2008.
2. Texas Instruments.TMS320VC5509A Fixed-Point Digital Signal Processor Data Manual,2007.
3. 彭啟琮,武樂(lè)琴,張艦,等.TMS320VC55X系列DSP的CPU與外設(shè)[M].北京:清華大學(xué)出版社,2005.
4. 楊艷.基于DSP平臺(tái)的語(yǔ)音編解碼算法的研究與實(shí)現(xiàn)[D].湖北:武漢理工大學(xué),2006.
5. ITU-T Recommendation G.723.1-Dual rate speech coder for multimedia communication transmitting at 5.3& 6.3kpbs,1996.
6. Texas Instruments.TMS320C55x Optimizing C/C++ Compiler User's Guide,2003.

作 者:桂林電子科技大學(xué) 鐘磊  來(lái)源:《單片機(jī)嵌入式系統(tǒng)應(yīng)用》 2009 (8)
本文地址:http://m.qingdxww.cn/thread-7688-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
  • Dev Tool Bits——使用條件軟件斷點(diǎn)宏來(lái)節(jié)省時(shí)間和空間
  • Dev Tool Bits——使用DVRT協(xié)議查看項(xiàng)目中的數(shù)據(jù)
  • Dev Tool Bits——使用MPLAB® Data Visualizer進(jìn)行功率監(jiān)視
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)在線工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久99精品久久久久久野外 | 久久aa毛片免费播放嗯啊 | 韩国毛片 免费 | 欧美成人免费观看久久 | 香蕉视频国产在线观看 | 日韩毛片视频 | 国产成人久久 | 日本精品一区二区三区视频 | 亚洲精品欧美综合四区 | 日韩欧美小视频 | 国产欧美日韩综合一区二区三区 | 欧美经典成人在观看线视频 | 欧美成成人免费 | 韩日在线 | 这里只有精品在线播放 | 2019精品国产品免费观看 | 91大神大战丝袜美女在线观看 | 天堂日本 | 国产高清视频在线播放 | 精品欧美日韩一区二区 | 伊人黄网| 日韩一区国产一级 | 国产精品极品 | 黄色一级毛片看一级毛片 | 年轻的嫂子在线线观免费观看 | 国产免费色视频 | 国产精品国产三级国产普通 | 亚洲欧美激情在线 | 久久国产热这里只有精品8 久久国产热这里只有精品 久久国产热视频 | 国产精品专区第二 | 99久久免费国产精品 | 色在线免费视频 | 国产91蝌蚪| 亚洲一区二区三区精品国产 | 久久永久影院免费 | 国产一及毛片 | 日韩资源| 国产精品国产亚洲精品看不卡 | 大伊香蕉精品视频一区 | 日韩高清在线日韩大片观看网址 | 苦咖啡电视剧剧情全集免费 |