<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DSP芯片的MELP聲碼器的算法方案設(shè)計

          基于DSP芯片的MELP聲碼器的算法方案設(shè)計

          作者: 時間:2012-01-02 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/149912.htm

          4 軟件設(shè)計及其關(guān)鍵問題

          軟件設(shè)計包括編碼流程和解碼流程,編碼流程圖如圖3所示。由于解碼過程相對簡單,故此處只給出編碼流程圖。

          此軟件流程設(shè)計完全按照原理,在實際編程過程中需要注意以下幾個關(guān)鍵問題。

          圖3 編碼流程圖

          ⑴存儲器分配問題

          由于TMS320VC5416采用雙總線結(jié)構(gòu),提供了許多多功能指令,在實際實現(xiàn)時要充分考慮到這些特點,盡量用多功能指令,并且合理分配使用各個寄存器和指針。例如:MAC指令可以在一個指令周期內(nèi)完成乘加操作,還可以結(jié)合寄存器的合理安排實現(xiàn)連續(xù)乘加,而不需要緩存中間數(shù)據(jù),從而大大提高了運算效率。另外,要充分利用TMS320VC5416提供的專用的硬件結(jié)構(gòu)、尋址方式及特殊指令。如:環(huán)形存儲器尋址方式、雙操作數(shù)尋址方式、EXP指令和NORM指令、舍入操作等,恰當(dāng)使用這些方式和指令可以大大提高軟件效率。

          ⑵ 數(shù)的定標(biāo)

          TMS320VC5416采用定點數(shù)進行數(shù)值運算,其操作數(shù)一般采用整型數(shù)表示。但它的指令支持小數(shù)模式和整數(shù)模式兩種運算模式。對而言,參與數(shù)值運算的數(shù)就是16位的整型數(shù)。在多數(shù)情況下,數(shù)學(xué)運算過程中的數(shù)不一定都是整數(shù),這就需要程序員來確定小數(shù)點的位置,即數(shù)的定標(biāo)。TMS320VC5416中數(shù)的定標(biāo)有兩種表示法:Q表示法和S表示法。在此軟件中用Q表示法表示。

          在程序中需要經(jīng)常判斷運算結(jié)果是否溢出。TMS320VC5416本身設(shè)有溢出保護功能,溢出的處理是通過設(shè)置中PMST寄存器的OVM位自動執(zhí)行的??梢栽诔绦虻拈_始就設(shè)置溢出功能有效,一旦出現(xiàn)溢出異常,則累加器ACC的結(jié)果置為最大的飽和值(上溢位7FFFH,下溢位8001H),從而達到防止溢出引起精度嚴重惡化的目的。

          ⑶防止流水線沖突

          流水線是TMS320VC5416最具特色的部分,它大大的提高了TMS320VC5416的性能,但當(dāng)資源同時被不在同一流水線階段的指令使用,或在存取某些寄存器時容易引起流水線沖突。編譯時會編譯器將自動插入一個或幾個空操作,從而增加了所需的計算量,降低了軟件效率,因此軟件設(shè)計開發(fā)中需要避免流水線沖突。

          5 測試結(jié)果

          目前該編解碼器已通過的全部測試矢量驗證。系統(tǒng)實時實現(xiàn)編解碼時,經(jīng)過非正式的主觀測試結(jié)果表明,MELP的MOS分在3.3左右,其清晰度、自然度和抗噪聲性能明顯優(yōu)于傳統(tǒng)LPC。表1和2分別給出了在定點TMS320VC5416上實時實現(xiàn)MELP的編解碼器所需的存儲量和計算量。

          從表1可見,程序和數(shù)據(jù)存儲區(qū)總存儲量共25.2K字,由于TMS320VC5416內(nèi)部RAM的大小為128K字,因此,程序boot時,可以一次將所有程序和數(shù)據(jù)直接搬移到芯片內(nèi)部RAM里運行。表2顯示了對該聲碼器所用資源的統(tǒng)計結(jié)果。在全雙工時,最大運算量為39.9MIPS,完成滿足實時實現(xiàn)的要求。

          以上分析結(jié)果顯示,單片TMS320VC5416芯片最多可實現(xiàn)4路語音編解碼,片上剩余的資源還可以實現(xiàn)其它附加功能。

          表1 編解碼器占用存儲器資源

          表2 編解碼器運算量分析

          7 總結(jié)

          創(chuàng)新點:本文介紹了混合激勵線性預(yù)測(MELP)聲碼器算法,簡要分析了該算法的編解碼原理。同時,本文選用TI公司的TMS320VC5416 DSP芯片進行了實時實現(xiàn),指出了在軟件實現(xiàn)中需要注意的關(guān)鍵問題。經(jīng)非正式主觀測試結(jié)果表明,該算法自然度、清晰度和抗噪聲性能明顯優(yōu)于傳統(tǒng)LPC算法,適用于短波窄帶數(shù)字保密通信、無線通信等需要低速率的語音編碼場合,具有廣闊的應(yīng)用前景。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();