- 相關推薦
ADPCM語音編解碼電路設計及FPGA實現(xiàn)
近年來,多媒體技術逐漸深入到人們的生活中。MP3播放器已經(jīng)成為流行的便攜式音頻播放設備,由于MP3編碼算法非常復雜,目前,一部分MP3播放器的錄音功能主要基于ADPCM算法和DSP來實現(xiàn)。本文闡述了ADPCM語音編解碼VLSI芯片的設計方法以及利用FPGA的硬件實現(xiàn)。
ADPCM算法及其編解碼器原理
ADPCM(Adaptive DifferentialPulse Code Modulation,自適應差分脈沖編碼調制)綜合了APCM的自適應特性和DPCM系統(tǒng)的差分特性,是一種性能較好的波形編碼。它的核心思想是:利用自適應改變量化階的大小,即使用小的量化階去編碼小的差值,使用大的量化階去編碼大的差值,使用過去的樣本值估算下一個輸入樣本的預測值,使實際樣本值和預測值之間的差值總是最小。ADPCM記錄的量化值不是每個采樣點的幅值,而是該點的幅值與前一個采樣點幅值之差。
ADPCM是利用樣本與樣本之間的高度相關性和量化階自適應來壓縮數(shù)據(jù)的一種波形編碼技術。ADPCM標準是一個代碼轉換系統(tǒng),它使用ADPCM轉換技術實現(xiàn)64Kb/s A律或u律PCM(脈沖編碼調制)速率和32Kb/s速率之間的相互轉換。ADPCM的簡化框圖如圖1所示。
ADPCM編解碼器的輸入信號是G.711 PCM代碼,采樣率是8kHz,每個代碼用8位表示,因此它的數(shù)據(jù)率為64Kb/s。而ADPCM的輸出代碼是“自適應量化器”的輸出,該輸出是用4位表示的差分信號,它的采樣率仍然是8kHz,它的數(shù)據(jù)率為32Kb/s,這樣就獲得了2:1的數(shù)據(jù)壓縮。
電路的整體結構
基于ADPCM算法,可將語音編解碼VLSI芯片分成編碼、解碼、存儲、控制和時鐘幾個模塊。編碼模塊實現(xiàn)數(shù)據(jù)壓縮功能,將輸入的PCM信號轉換成ADPCM碼,存儲模塊在控制模塊的作用下,保存編碼所得的ADPCM碼,解碼模塊實現(xiàn)解壓縮功能,將ADPCM碼轉換得到PCM碼;控制模塊的作用是控制其他模塊的協(xié)調工作;時鐘模塊主要實現(xiàn)對外部晶振的原始時鐘信號進行分頻,以得到電路系統(tǒng)實際所需的時鐘信號。
電路整體結構如圖2所示,其中En_en、En_de分別是編碼和解碼的使能信號,RST則為復位信號。當WE為“1”時,RAM寫有效,而當WE為“0”時,RAM讀有效,CS為“1”時,RAM可進行寫或者讀操作。
電路設計過程
本文采用Top-down方法進行電路設計。主要設計流程如下:首先基于Verilog HDL運用Active-HDL進行電路的RTL級描述和功能仿真,將經(jīng)過功能仿真正確的程序在QuartusⅡ開發(fā)系統(tǒng)中進行綜合和適配,接下來將得到的網(wǎng)表文件(.vo)和具有時延信息的反標文件(.sdo)調入ModelSim SE中,并加入所選器件相應的器件庫進行時序仿真,時序仿真通過后,將Quartus II得到的“*.sof”文件通過JTAG配置模式下載到FPGA中進行不可掉電的實際測試,也可將“*.pof”文件通過AS配置模式下載到FPGA中進行可掉電的實際測試。電路系統(tǒng)的頂層程序如下。
module ADPCM_TOP(PCM_OUT,PCM_IN,RECORD,PLAY,CLK,CLK8K):
parameter ADDR_WIDTH=14;
parameter PCM_WIDTH=8;
input PCM_IN;
wire PCM_IN;
output PCM_OUT;
wire PCM_OUT;
input CLK,RECORD,PLAY;
output CLK8K;
wire code_in,code_out;
wire en_encoder,en_decoder,re_rst,pl_rst,WE,CS,CLK_8K;
wire ADDRESS;
assign CLK8K=CLK_8K,
CLOCK—GE U0 (ClK,RECORD,CLK_8K);
encoder_new U1(PCM_INre_rst,en_encoder,CLK_8Kcode_in);
RAM U2(ADDRESS,WECS,CLK_8K,code_in,code_out);
decoder_new U3(pl_rstCLK_8K,code_out,en_decoderPCM_OUT);
controllogic U4(CS,re_rstpl_rst,en_encoder,en_decoder,WEADDRESS,RECORD,PLAYCLK_8K);
endmodule
予模塊電路設計及仿真
整個語音編解碼VLSI芯片包括編碼電路、解碼電路、存儲電路、控制電路和時鐘電路幾個部分。下面分別具體描述關鍵電路的設計。
下一頁
【ADPCM語音編解碼電路設計及FPGA實現(xiàn)】相關文章:
基于TMS320C549DSP實現(xiàn)CVSD語音編解碼03-07
自適應算術編碼的FPGA實現(xiàn)03-18
用AC4830xC和TCM38C17實現(xiàn)四路語音編解碼系統(tǒng)03-18
基于FPGA的TS over lP的設計與實現(xiàn)03-21
數(shù)字下變頻技術的研究及其FPGA實現(xiàn)03-07
- 網(wǎng)絡交際的語用探討
- 基于SOM網(wǎng)絡的城市分類探討及實證分析
- 利用FPGA實現(xiàn)MMC2107與SDRAM接口設計論文
- 談談提高輸入數(shù)據(jù)正確性的方法
- 淺談計算機網(wǎng)絡中服務的概念
- 支持多系統(tǒng)網(wǎng)絡批量安裝的服務器實現(xiàn)
- 計算機網(wǎng)絡管理系統(tǒng)應用現(xiàn)狀及發(fā)展前景
- TD—LTE與TD—SCDMA雙網(wǎng)互操作
- 一種數(shù)字語音通信系統(tǒng)的DSP實現(xiàn)
- 淺析高校計算機網(wǎng)絡安全問題及其防護措施的研究
- 電氣自動化專業(yè)介紹
- 2012造價師考試真題
- 商務禮儀的相關論文
- 大學生涯與職業(yè)規(guī)劃
- 大學生勞動心得
- 村委會換屆工作總結
- 研究生面試英語介紹
- 銷售助理求職信
- 護士應聘個人簡歷
- 實習簡歷表格模板