在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于FPGA驗證所設(shè)計的ADPCM算法語音編解碼電路

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-07-02 08:08 ? 次閱讀

近年來,多媒體技術(shù)逐漸深入到人們的生活中。MP3播放器已經(jīng)成為流行的便攜式音頻播放設(shè)備,由于MP3編碼算法非常復(fù)雜,目前,一部分MP3播放器的錄音功能主要基于ADPCM算法和DSP來實現(xiàn)。本文闡述了ADPCM語音編解碼VLSI芯片的設(shè)計方法以及利用FPGA的硬件實現(xiàn)。

ADPCM算法及其編解碼器原理

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

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

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

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

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

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

基于FPGA驗證所設(shè)計的ADPCM算法語音編解碼電路

(a) ADPCM編碼器

基于FPGA驗證所設(shè)計的ADPCM算法語音編解碼電路

(b)ADPCM解碼器

圖1 ADPCM簡化框圖

電路設(shè)計過程

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

基于FPGA驗證所設(shè)計的ADPCM算法語音編解碼電路

圖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è)計及仿真

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

1 編碼電路

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

基于FPGA驗證所設(shè)計的ADPCM算法語音編解碼電路

圖3 編碼電路仿真波形

2 解碼電路

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

3 其他模塊

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

整體電路仿真

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

FPGA驗證及結(jié)論

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

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

基于FPGA驗證所設(shè)計的ADPCM算法語音編解碼電路

圖4 編碼電路仿真波形

基于FPGA驗證所設(shè)計的ADPCM算法語音編解碼電路

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


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1629

    文章

    21748

    瀏覽量

    603954
  • 解碼器
    +關(guān)注

    關(guān)注

    9

    文章

    1143

    瀏覽量

    40774
  • 存儲
    +關(guān)注

    關(guān)注

    13

    文章

    4320

    瀏覽量

    85911
收藏 人收藏

    評論

    相關(guān)推薦

    語音和音頻統(tǒng)一編解碼算法研究

    最近在研究MPEG-D標(biāo)準(zhǔn)的語音和音頻統(tǒng)一編解碼算法(USAC),USAC是2011年才開始提出來的,感覺挺有研究意義的,大家有興趣可以互相交流下
    發(fā)表于 07-20 15:38

    振南對ADPCM音頻編解碼原理的一些通俗闡述【附振南的ADPCM解碼原代碼】

    寫ZN-X開發(fā)板整板測試程序的后期,振南開始轉(zhuǎn)向?qū)W⒂?b class='flag-5'>ADPCM音頻的解碼算法。對于音視頻的編解碼,振南一直是很感興趣的。VS1003錄音向外輸出的數(shù)據(jù)是經(jīng)過
    發(fā)表于 06-17 14:35

    如何去設(shè)計ADPCM語音編解碼電路

    ADPCM算法及其編解碼器原理是什么?如何去設(shè)計ADPCM語音編解碼
    發(fā)表于 05-06 06:37

    如何采用FPGA實現(xiàn)汽車智能語音報警系統(tǒng)設(shè)計?

    本文采用FPGA實現(xiàn)ADPCM(Adaptive Differential Pulse CodeModulation,自適應(yīng)差分脈沖編碼調(diào)制)編解碼器設(shè)計,對語音信息進行壓縮存儲。從而
    發(fā)表于 05-17 06:26

    基于DSP Builder的ADPCM算法實現(xiàn)

    本文對ADPCM 編解碼原理進行了分析,并針對語音記錄系統(tǒng)的特點,對標(biāo)準(zhǔn)ADPCM 編解碼系統(tǒng)進行了簡化。提出了一種適合
    發(fā)表于 09-16 10:43 ?24次下載

    G.726語音編解碼器在SoPC中的實現(xiàn)

    在對G.726 語音編解碼標(biāo)準(zhǔn)分析的基礎(chǔ)上給出了基于FPGA 的DSP 設(shè)計流程,利用MATLAB/Simulink、DSP Builder 和SOPC Builder 工具設(shè)計了G.726
    發(fā)表于 11-30 14:59 ?12次下載

    G.726語音編解碼器在SoPC中的實現(xiàn)

    在對G.726語音編解碼標(biāo)準(zhǔn)分析的基礎(chǔ)上給出了基于FPGA的DSP設(shè)計流程,利用MATLAB/Simulink、DSP Builder和SOPC Builder工具設(shè)計了G.726語音
    發(fā)表于 07-16 15:06 ?18次下載

    基于ADPCM算法語音報警系統(tǒng)

    介紹了一種采用FPGA硬件實現(xiàn)ADPCM算法的方法,并基于此算法對預(yù)先采集的各種報警語音進行壓縮編碼并存儲。在遇到危險時,由單片機做出危險判
    發(fā)表于 12-11 15:59 ?28次下載
    基于<b class='flag-5'>ADPCM</b><b class='flag-5'>算法</b>的<b class='flag-5'>語音</b>報警系統(tǒng)

    基于AMR語音編解碼算法的VoIP系統(tǒng)

    本文提出了一種基于AMR語音編解碼算法的新VoIP系統(tǒng),該系統(tǒng)可以根據(jù)網(wǎng)絡(luò)信道質(zhì)量的好壞來自適應(yīng)地選擇一種最佳的傳輸速率,從而使得合成后的語音質(zhì)量有了更加良好的QoS保障。
    發(fā)表于 06-24 11:05 ?1623次閱讀
    基于AMR<b class='flag-5'>語音</b><b class='flag-5'>編解碼</b><b class='flag-5'>算法</b>的VoIP系統(tǒng)

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

      ADPCM算法及其編解碼器原理   ADPCM(Adaptive Differential Pulse Code Modulation,自適應(yīng)差分脈沖編碼調(diào)制)綜合了APCM的自
    發(fā)表于 09-03 16:58 ?2524次閱讀
    <b class='flag-5'>ADPCM</b><b class='flag-5'>語音</b><b class='flag-5'>編解碼</b>VLSI芯片的設(shè)計方法

    基于ADPCM語音壓縮算法研究

    摘 要 ADPCM算法目前已成為很受用的語音壓縮算法之一。給出PCM概念。討論DPCM,DM,ADM與ADPCM的 壓縮
    發(fā)表于 04-08 11:20 ?84次下載

    RS編解碼FPGA實現(xiàn)-說明

    RS編解碼FPGA實現(xiàn)-說明RS編解碼FPGA實現(xiàn)-說明。
    發(fā)表于 05-04 15:59 ?21次下載

    多制式語音編解碼算法的DSP設(shè)計

    的可靠性和效率。因此,研究語音處理技術(shù)并將其用基于DSP芯片硬件系統(tǒng)實現(xiàn)有著非常重要的現(xiàn)實意義和廣闊的市場前景。本文介紹了語音編解碼硬件平臺的設(shè)計思路和編解碼
    發(fā)表于 11-06 14:14 ?3次下載

    基于STM8的ADPCM音頻解碼輸出DAC語音的程序源碼

    STM8上實現(xiàn)ADPCM音頻解碼,通過DAC輸出語音的程序源碼。
    發(fā)表于 01-24 15:06 ?39次下載

    如何使用L9320實現(xiàn)ADPCM語音編解碼

    對L9320編解碼器的工作原理和使用方法 進行了分析,給出了L9320在便攜式語音系統(tǒng)中的典型應(yīng)用電路.
    發(fā)表于 12-20 17:27 ?24次下載
    如何使用L9320實現(xiàn)<b class='flag-5'>ADPCM</b><b class='flag-5'>語音</b><b class='flag-5'>編解碼</b>
    主站蜘蛛池模板: 国产亚洲精品成人a在线| 视频 在线| 三级欧美视频| 午夜啪啪片| 2018天天干天天操| 天天摸天天摸天天躁| 五月天婷婷在线观看视频| 亚洲精品在线视频| 国产成人91青青草原精品| 欧美伊人网| 亚洲swag精品自拍一区| 欧洲亚洲一区| 日本69xxⅹxxxxxx19| heyzo在线播放4k岛国| 一二三区视频| 国产精品高清免费网站| 婷婷综合亚洲| 欧美色国| 成年人网站黄色| 国内自拍网红在综合图区| 国产激情片| 美女免费视频黄| 欧美午夜在线视频| 激情啪啪网站| 亚洲午夜精品久久久久久成年 | 视频二区在线观看| 免费视频现线观看| 欧美美女一区二区三区| 亚洲国产欧美日韩一区二区三区| 深夜在线观看大尺度| 精品手机在线视频| 夜夜爽毛片| 国产xxxx极品bbw视色| 日本免费不卡一区| 天堂资源在线bt种子| 午夜精品福利在线| 男人的天堂在线视频| 欲色影院| 800免费资源网| 高清视频 一区二区三区四区| 日日摸人人拍人人澡|