• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 關(guān) 閉

    新聞中心

    EEPW首頁 > 安全與國防 > 設(shè)計應(yīng)用 > G.723.1在DSP數(shù)字對講機基帶系統(tǒng)中的應(yīng)用

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

    作者: 時間:2009-09-22 來源:網(wǎng)絡(luò) 收藏

    4.2 編解碼

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

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

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


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

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

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



    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 都江堰市| 东阳市| 泽普县| 乌兰浩特市| 昌都县| 卢龙县| 武强县| 顺义区| 华安县| 阳西县| 马关县| 紫阳县| 宝兴县| 浪卡子县| 东乡| 华池县| 东阿县| 鸡西市| 万全县| 兴山县| 无极县| 靖西县| 方正县| 白银市| 武胜县| 沽源县| 东乌珠穆沁旗| 砀山县| 潮安县| 屏东市| 田阳县| 加查县| 靖边县| 疏附县| 芦山县| 遵义市| 龙泉市| 湘潭县| 台州市| 恩平市| 五家渠市|