新聞中心

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

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

作者: 時(shí)間:2010-09-21 來源:網(wǎng)絡(luò) 收藏

  input CLK, RECORD,PLAY;

  output CLK8K;

  wire[3:0] code_in,code_out;

  wire en_encoder,en_decoder,re_rst,pl_rst,WE,CS,CLK_8K;

  wire [ADDR_WIDTH-1:0] ADDRESS;

  assign CLK8K =CLK_8K;

  CLOCK_GE U0 (CLK,RECORD, CLK_8K);

  encoder_new U1 ( PCM_IN,re_rst ,en_encoder, CLK_8K ,code_in );

  RAM U2 (ADDRESS,WE,CS,CLK_8K,code_in,code_out);

  decoder_new U3 (pl_rst, CLK_8K ,code_out ,en_decoder,PCM_OUT);

  controllogic U4(CS,re_rst,pl_rst,en_encoder,en_decoder,WE,ADDRESS,RECORD,PLAY,CLK_8K);

  endmodule

  子模塊電路及仿真

  整個(gè)包括編碼電路、電路、存儲(chǔ)電路、控制電路和時(shí)鐘電路幾個(gè)部分。下面分別具體描述關(guān)鍵電路的。

  1 編碼電路

  編碼電路實(shí)現(xiàn)數(shù)據(jù)壓縮功能,將輸入的PCM信號(hào)轉(zhuǎn)換成均勻的PCM碼,然后與預(yù)測(cè)信號(hào)進(jìn)行差分,得到的差分信號(hào)經(jīng)過“自適應(yīng)量化器”進(jìn)行壓縮編碼得到碼,碼被返回經(jīng)過“逆自適應(yīng)量化器”以及“自適應(yīng)預(yù)測(cè)器”用來構(gòu)建下一個(gè)預(yù)測(cè)信號(hào)。編碼電路仿真波形如圖3所示,其中PCM_IN為編碼器輸入信號(hào)(PCM碼),CODE為編碼后得到的輸出信號(hào)(碼)。

  

  圖3 編碼電路仿真波形

  2 電路

  解碼電路實(shí)現(xiàn)解壓縮功能,將ADPCM碼經(jīng)過“逆自適應(yīng)量化器”得到量化差分信號(hào),量化差分信號(hào)與預(yù)測(cè)值相加得到重構(gòu)信號(hào),然后轉(zhuǎn)換成PCM碼。解碼電路仿真波形如圖4所示,其中CODE為解碼器輸入信號(hào)(ADPCM碼),PCM_OUT為解碼后得到的輸出信號(hào)(PCM碼)。與圖3中編解碼前的PCM_IN對(duì)比,可以看出解碼誤差很小。

  3 其他模塊

  控制電路控制其他電路模塊的協(xié)調(diào)工作,在編碼的同時(shí)使能存儲(chǔ)器寫入信號(hào),使編碼電路輸出數(shù)據(jù)可以及時(shí)存入存儲(chǔ)器;在解碼的同時(shí)使能存儲(chǔ)器讀出信號(hào),編碼和解碼不能同時(shí)進(jìn)行。時(shí)鐘電路主要實(shí)現(xiàn)對(duì)外部晶振的原始時(shí)鐘信號(hào)進(jìn)行分頻,以得到電路系統(tǒng)實(shí)際所需的時(shí)鐘信號(hào)。本系統(tǒng)采用的外部晶振固有頻率為14.318MHz,經(jīng)過分頻后可以獲得8kHz時(shí)鐘。存儲(chǔ)電路在控制電路的作用下,保存編碼所得的ADPCM碼(32kb/s),由于只需驗(yàn)證電路的功能,所以只設(shè)定了2s的錄音存儲(chǔ)空間,即64kb存儲(chǔ)容量。

  整體電路仿真

  [table][/table] 在子模塊電路仿真正確后,對(duì)系統(tǒng)整體進(jìn)行仿真,可以得到圖5所示波形。此次仿真輸入信號(hào)PCM_IN激勵(lì)采用Testbench產(chǎn)生。在編碼使能信號(hào)RECORD為“0”時(shí),開始編碼,RECORD跳變到“1”時(shí),編碼被屏蔽;此時(shí)解碼使能信號(hào)PLAY為“0”,開始解碼,PLAY跳變到“1”時(shí),解碼被屏蔽。從圖中可以看出編碼前輸入信號(hào)PCM_IN的激勵(lì)和解碼后輸出PCM_OUT的響應(yīng)基本符合。由于ADPCM算法本身是有損壓縮,可以確定本電路系統(tǒng)的是正確可靠的。

  FPGA驗(yàn)證及結(jié)論

  本文基于FPGA驗(yàn)證所設(shè)計(jì)的電路。這里選用Altera公司Cyclone系列的EP1C6Q240C8器件,其內(nèi)部有90kb的存儲(chǔ)容量,6k個(gè)邏輯單元,2 個(gè)PLL。由于電路采用8kHz采樣頻率,編碼后的ADPCM碼為4位,設(shè)定錄音時(shí)間為2s,所以需要64kb存儲(chǔ)容量;同時(shí),設(shè)計(jì)需要大約400個(gè)左右的邏輯單元。所以選用此低成本的FPGA即可滿足設(shè)計(jì)要求,而且基本上充分利用了內(nèi)部資源。此的引腳有240 個(gè),能滿足外面的引腳連接,而且價(jià)格也易于接受。

  FPGA驗(yàn)證表明:電路的最大時(shí)鐘延遲為26.903ns,最高工作頻率可達(dá)37.17MHz,可以很好地再現(xiàn)被錄入的,具有較高的保真度和很好的實(shí)時(shí)性。在電子地圖、車載信息終端播報(bào)、治安報(bào)警系統(tǒng),特別是便攜式語音記錄裝置等方面具有較高的應(yīng)用價(jià)值。同時(shí),也指明了數(shù)字語音壓縮處理高效設(shè)計(jì)的方向。

  

  圖4 編碼電路仿真波形

  

  圖5 系統(tǒng)仿真波形


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

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

關(guān)閉