新聞中心

        EEPW首頁 > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 基于ADPCM語音編解碼VLSI芯片的設(shè)計(jì)方法

        基于ADPCM語音編解碼VLSI芯片的設(shè)計(jì)方法

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

        算法及其編器原理

        本文引用地址:http://www.104case.com/article/165873.htm

          (Adaptive Differential Pulse Code Modulation,自適應(yīng)差分脈沖編碼調(diào)制)綜合了APCM的自適應(yīng)特性和DPCM系統(tǒng)的差分特性,是一種性能較好的波形編碼。它的核心思想是:利用自適應(yīng)改變量化階的大小,即使用小的量化階去編碼小的差值,使用大的量化階去編碼大的差值;使用過去的樣本值估算下一個(gè)輸入樣本的預(yù)測(cè)值,使實(shí)際樣本值和預(yù)測(cè)值之間的差值總是最小。記錄的量化值不是每個(gè)采樣點(diǎn)的幅值,而是該點(diǎn)的幅值與前一個(gè)采樣點(diǎn)幅值之差。

          ADPCM是利用樣本與樣本之間的高度相關(guān)性和量化階自適應(yīng)來壓縮數(shù)據(jù)的一種波形編碼技術(shù)。ADPCM標(biāo)準(zhǔn)是一個(gè)代碼轉(zhuǎn)換系統(tǒng),它使用ADPCM轉(zhuǎn)換技術(shù)實(shí)現(xiàn)64kb/s A律或u律PCM(脈沖編碼調(diào)制)速率和32kb/s速率之間的相互轉(zhuǎn)換。ADPCM的簡化框圖如圖1所示。

          ADPCM編器的輸入信號(hào)是G.711 PCM代碼,采樣率是8kHz,每個(gè)代碼用8位表示,因此它的數(shù)據(jù)率為64kb/s。而ADPCM的輸出代碼是“自適應(yīng)量化器”的輸出,該輸出是用4位表示的差分信號(hào),它的采樣率仍然是8kHz,它的數(shù)據(jù)率為32kb/s,這樣就獲得了2∶1的數(shù)據(jù)壓縮。

          電路的整體結(jié)構(gòu)

          ADPCM算法,可將分成編碼、解碼、存儲(chǔ)、控制和時(shí)鐘幾個(gè)模塊。編碼模塊實(shí)現(xiàn)數(shù)據(jù)壓縮功能,將輸入的PCM信號(hào)轉(zhuǎn)換成ADPCM碼;存儲(chǔ)模塊在控制模塊的作用下,保存編碼所得的ADPCM碼;解碼模塊實(shí)現(xiàn)解壓縮功能,將ADPCM碼轉(zhuǎn)換得到PCM碼;控制模塊的作用是控制其他模塊的協(xié)調(diào)工作;時(shí)鐘模塊主要實(shí)現(xiàn)對(duì)外部晶振的原始時(shí)鐘信號(hào)進(jìn)行分頻,以得到電路系統(tǒng)實(shí)際所需的時(shí)鐘信號(hào)。

          電路整體結(jié)構(gòu)如圖2所示,其中En_en、En_de分別是編碼和解碼的使能信號(hào),RST則為復(fù)位信號(hào)。當(dāng)WE為“1”時(shí),RAM寫有效,而當(dāng) WE為“0”時(shí),RAM讀有效,CS為“1”時(shí),RAM可進(jìn)行寫或者讀操作。

          


          (a) ADPCM編碼器

          

          (b)ADPCM解碼器

          圖1 ADPCM簡化框圖

          電路過程

          本文采用Top-down進(jìn)行電路。主要流程如下:首先Verilog HDL運(yùn)用Active-HDL進(jìn)行電路的RTL級(jí)描述和功能仿真;將經(jīng)過功能仿真正確的程序在Quartus II開發(fā)系統(tǒng)中進(jìn)行綜合和適配;接下來將得到的網(wǎng)表文件(.vo)和具有時(shí)延信息的反標(biāo)文件(.sdo)調(diào)入ModelSim SE中,并加入所選器件相應(yīng)的器件庫進(jìn)行時(shí)序仿真;時(shí)序仿真通過后,將Quartus II得到的“*.sof”文件通過JTAG配置模式下載到FPGA中進(jìn)行不可掉電的實(shí)際測(cè)試,也可將“*.pof”文件通過AS配置模式下載到FPGA中進(jìn)行可掉電的實(shí)際測(cè)試。電路系統(tǒng)的頂層程序如下。

          

          圖2 電路整體結(jié)構(gòu)圖

          module ADPCM_TOP ( PCM_OUT,PCM_IN ,RECORD,PLAY,CLK, CLK8K);

          parameter ADDR_WIDTH=14;

          parameter PCM_WIDTH=8;

          input [PCM_WIDTH-1:0] PCM_IN ;

          wire [PCM_WIDTH-1:0] PCM_IN ;

          output [PCM_WIDTH-1:0] PCM_OUT ;

          wire [PCM_WIDTH-1:0] PCM_OUT ;


        上一頁 1 2 下一頁

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 名山县| 松潘县| 磐安县| 塔河县| 嘉峪关市| 江都市| 章丘市| 晴隆县| 马山县| 凉山| 新疆| 黄冈市| 古交市| 宁陕县| 清水河县| 珠海市| 清涧县| 石景山区| 兰西县| 海宁市| 抚州市| 吉林省| 姚安县| 福鼎市| 泗水县| 佛学| 前郭尔| 崇州市| 平乡县| 昔阳县| 白水县| 铁岭市| 福贡县| 仁怀市| 大庆市| 韶山市| 九江县| 榕江县| 陇南市| 海南省| 海兴县|