當(dāng)前位置:首頁 > 消費(fèi)電子 > 消費(fèi)電子
[導(dǎo)讀]ADPCM算法及其編解碼器原理  ADPCM(Adaptive Differential Pulse Code Modulation,自適應(yīng)差分脈沖編碼調(diào)制)綜合了APCM的自適應(yīng)特性和DPCM系統(tǒng)的差分特性,是一種性能較好的波形編碼。它的核心思想是:利用自適應(yīng)改

ADPCM算法及其編解碼器原理

  ADPCM(Adaptive Differential Pulse Code Modulation,自適應(yīng)差分脈沖編碼調(diào)制)綜合了APCM的自適應(yīng)特性和DPCM系統(tǒng)的差分特性,是一種性能較好的波形編碼。它的核心思想是:利用自適應(yīng)改變量化階的大小,即使用小的量化階去編碼小的差值,使用大的量化階去編碼大的差值;使用過去的樣本值估算下一個(gè)輸入樣本的預(yù)測(cè)值,使實(shí)際樣本值和預(yù)測(cè)值之間的差值總是最小。ADPCM記錄的量化值不是每個(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算法,可將語音編解碼VLSI芯片分成編碼、解碼、存儲(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簡化框圖

  電路設(shè)計(jì)過程

  本文采用Top-down方法進(jìn)行電路設(shè)計(jì)。主要設(shè)計(jì)流程如下:首先基于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 ;
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

  子模塊電路設(shè)計(jì)及仿真

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

  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)行壓縮編碼得到ADPCM碼,ADPCM碼被返回經(jīng)過“逆自適應(yīng)量化器”以及“自適應(yīng)預(yù)測(cè)器”用來構(gòu)建下一個(gè)預(yù)測(cè)信號(hào)。編碼電路仿真波形如圖3所示,其中PCM_IN為編碼器輸入信號(hào)(PCM碼),CODE為編碼后得到的輸出信號(hào)(ADPCM碼)。

  

 

  圖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)的設(shè)計(jì)是正確可靠的。

  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)仿真波形

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉