• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      采用單片機(jī)壓縮編碼的數(shù)碼錄放系統(tǒng)設(shè)計(jì)

      2014-01-16 09:22:04柯俊霄
      電子設(shè)計(jì)工程 2014年5期
      關(guān)鍵詞:解碼編碼器語(yǔ)音

      柯俊霄

      (四川托普信息技術(shù)職業(yè)學(xué)院 四川 成都 611743)

      隨著計(jì)算機(jī)通信技術(shù)的迅猛發(fā)展,語(yǔ)音信號(hào)處理技術(shù)的重要性日益突出,已經(jīng)成為現(xiàn)代工業(yè)發(fā)展的一個(gè)必備的基本技術(shù)。數(shù)字化語(yǔ)音存儲(chǔ)與回放系統(tǒng),具有操作方便、可靠簡(jiǎn)單、便于攜帶、成本低廉等特點(diǎn),在各類(lèi)公共設(shè)施、智能儀表、家用電子產(chǎn)品等領(lǐng)域有著廣泛的應(yīng)用。

      目前一般的數(shù)字語(yǔ)音錄放系統(tǒng)[1]以單片機(jī)為主體來(lái)控制語(yǔ)音芯片,從而實(shí)現(xiàn)語(yǔ)音的數(shù)字化存儲(chǔ)與回放,但其數(shù)據(jù)量較大;為節(jié)約存儲(chǔ)空間,在一些應(yīng)用中[2]采用DSP實(shí)現(xiàn)對(duì)語(yǔ)音信號(hào)的壓縮存儲(chǔ),其實(shí)現(xiàn)要求高,專(zhuān)業(yè)性強(qiáng),研發(fā)成本較高;為了降低實(shí)現(xiàn)成本和使用方便,有研究[3]提出采用簡(jiǎn)單快捷的IMA-ADPCM編碼算法在C8051F系列單片機(jī)上具體實(shí)現(xiàn)語(yǔ)音信號(hào)的編解碼和壓縮解壓。

      文中介紹了一種基于單片機(jī)實(shí)現(xiàn)語(yǔ)音信號(hào)編碼壓縮的數(shù)碼錄放系統(tǒng)設(shè)計(jì)方案,詳細(xì)論述了該系統(tǒng)的硬件結(jié)構(gòu),并根據(jù)G.726標(biāo)準(zhǔn)ADPCM語(yǔ)音編解碼的算法原理,針對(duì)語(yǔ)音記錄系統(tǒng)的特點(diǎn)進(jìn)行了算法的改進(jìn)和優(yōu)化,降低了算法的復(fù)雜程度以及算法的運(yùn)算量,提高了程序的執(zhí)行效率。運(yùn)行結(jié)果表明,解碼后語(yǔ)音還原質(zhì)量較好,波形失真度符合預(yù)期。

      1 硬件設(shè)計(jì)

      數(shù)碼錄放機(jī)的總體設(shè)計(jì)如圖1所示,聲音信號(hào)通過(guò)ML2308采樣處理后送到單片機(jī)內(nèi),單片機(jī)壓縮編碼后把數(shù)據(jù)傳送到FLASH中保存。需要時(shí),可從FLASH調(diào)用數(shù)據(jù)經(jīng)單片機(jī)解碼由ML2308處理后濾波輸出。為了操作方便,還配備了控制鍵盤(pán)、GXM12864液晶顯示模塊和DS1302低功耗實(shí)時(shí)時(shí)鐘電路,單片機(jī)可以通過(guò)232總線與PC機(jī)連接。

      圖1 數(shù)碼錄放機(jī)的總體設(shè)計(jì)圖Fig. 1 Overall design of digital recorders

      MCU采用STC12C5410單片機(jī),這是一款兼容51內(nèi)核的增強(qiáng)型8位機(jī),它內(nèi)部包含10K用戶(hù)程序空間,片上集成512字節(jié)SRAM,1K的EEPROM空間,支持ISP/IAP,具有低功耗和超強(qiáng)的抗干擾能力,片上還集成了看門(mén)狗電路及MAX810專(zhuān)用復(fù)位電路。它支持單時(shí)鐘/機(jī)器周期,工作頻率范圍為0~35 MHz,比普通8051速度快8~12倍,其速度完全有能力處理語(yǔ)音信號(hào)的編解碼和壓縮解壓。

      ML2308是立體聲錄音/播放LSI,在單個(gè)芯片中集成了錄音和播放音頻數(shù)據(jù)所需的所有功能。話筒或線入的模擬信號(hào)被模-數(shù)轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字信號(hào),經(jīng)由緩沖存儲(chǔ)器輸出到外部設(shè)備。此外,從外部設(shè)備輸入的數(shù)字信號(hào)由1比特?cái)?shù)-模轉(zhuǎn)換器轉(zhuǎn)換為PWM信號(hào),然后由 PWM驅(qū)動(dòng)器輸出,PWM驅(qū)動(dòng)器可以直接驅(qū)動(dòng)耳機(jī)。其音頻數(shù)據(jù)輸出信號(hào)模式支持μ律G.711 適應(yīng)性8比特PCM 編碼和8 比特/16 比特線性PCM編碼,取樣頻率為4~32 kHz。

      FLASH采用SAMSUNG公司生產(chǎn)的NAND型存儲(chǔ)器K9F5608U0C,工作電壓為2.7~3.6 V;其存儲(chǔ)空間是按塊和頁(yè)來(lái)組織的,芯片容量為(32 M+1024 K)×8 Bit,由2 048塊組成,每個(gè)塊由32頁(yè)組成,每個(gè)頁(yè)的大小是(512+16)×8 Bit;讀和寫(xiě)以頁(yè)為單位,擦除以塊為單位,寫(xiě)一頁(yè)的時(shí)間約200 μs,擦除一塊的時(shí)間約2 ms;可擦寫(xiě)十萬(wàn)次,數(shù)據(jù)可保存十年;數(shù)據(jù)口、地址口和命令口是8個(gè)管腳分時(shí)復(fù)用的,是一款性?xún)r(jià)比很高的大容量數(shù)據(jù)存儲(chǔ)器件,尤其適用于嵌入式系統(tǒng)的數(shù)據(jù)存儲(chǔ),可以很大程度上提高應(yīng)用系統(tǒng)的總體功能。

      圖2 STC12C5410單片機(jī)電路Fig. 2 The circuit diagram of STC12C5410 MCU

      圖3 立體聲錄音/播放芯片ML2308電路Fig. 3 The ML2308 circuit diagram

      2 ADPCM編碼算法優(yōu)化

      語(yǔ)音編碼是語(yǔ)音信號(hào)數(shù)字處理的核心理論基礎(chǔ),通常分為3類(lèi):波形編碼、參數(shù)編碼、混合編碼。波形編碼力圖使重建后的語(yǔ)音時(shí)域信號(hào)的波形與原語(yǔ)音信號(hào)波形保持一致,它具有適應(yīng)能力強(qiáng)、話音質(zhì)量好等優(yōu)點(diǎn),但需要用到的編碼速率高,其主要代表就是自適應(yīng)差分脈沖編碼調(diào)制(Adaptive Differential Pulse Code Modulation,ADPCM)。

      圖4 存儲(chǔ)器K9F5608U0C電路Fig. 4 The K9F5608U0C circuit diagram

      它的核心思想是利用自適應(yīng)改變量化階的大小,即使用小的量化階去編碼小的差值,使用大的量化階去編碼大的差值;使用過(guò)去的樣本值估算下一個(gè)輸入樣本的預(yù)測(cè)值,使實(shí)際樣本值和預(yù)測(cè)值之間的差值總是最小。ADPCM 記錄的量化值不是每個(gè)采樣點(diǎn)的幅值,而是該點(diǎn)的幅值與前一個(gè)采樣點(diǎn)幅值之差。它是利用語(yǔ)音樣本之間的相關(guān)性,并針對(duì)語(yǔ)音信號(hào)的非平穩(wěn)特點(diǎn),使用自適應(yīng)預(yù)測(cè)和自適應(yīng)量化,在保證可接受恢復(fù)語(yǔ)音質(zhì)量的同時(shí),能有效降低比特流數(shù)。

      根據(jù)1990年ITU通過(guò)的G.726標(biāo)準(zhǔn)[4],其編碼器組成框圖如圖5所示。其編碼器的基本工作原理是:輸入的非線性PCM信號(hào)S(k)經(jīng)格式轉(zhuǎn)換后變成線性PCM信號(hào)Sl(k),然后與預(yù)測(cè)信號(hào)Se(k)相減得到二者的差分信號(hào)d(k),自適應(yīng)量化器以量化定標(biāo)因子自適應(yīng)產(chǎn)生的定標(biāo)因子y(k)來(lái)定標(biāo),對(duì)該差分信號(hào)進(jìn)行量化得到ADPCM編碼I(k);一方面I(k)作為編碼輸出,另一方面逆自適應(yīng)量化器利用I(k)得到量化后的差分信號(hào)dq(k),再同重建信號(hào)計(jì)算器產(chǎn)生的重建信號(hào)Sr(k)一起,送到自適應(yīng)預(yù)測(cè)器,產(chǎn)生預(yù)測(cè)信號(hào)Se(k),自適應(yīng)預(yù)測(cè)器采用二階極點(diǎn)、六階零點(diǎn)的混合預(yù)測(cè)器,利用Sr(k)、 dq(k)以及前幾個(gè)時(shí)刻的值,對(duì)下一時(shí)刻將要輸入的信號(hào)Sl(k+1)進(jìn)行預(yù)測(cè),計(jì)算出預(yù)測(cè)值Se(k+1)。自適應(yīng)還要依據(jù)輸入信號(hào)的特性自動(dòng)改變自適應(yīng)速度參數(shù)來(lái)控制量階,這由定標(biāo)因子自適應(yīng)量化器、自適應(yīng)速度控制、單音和轉(zhuǎn)移(瞬變音)檢測(cè)器等3個(gè)功能模塊完成。ADPCM算法的一個(gè)重要特點(diǎn)是解碼器中的解碼算法已嵌入在編碼器中,故在設(shè)計(jì)中可以只設(shè)計(jì)編碼器,而解碼器可以直接由編碼器中的模塊組合得到。

      經(jīng)過(guò)對(duì)編碼器中各個(gè)模塊作用的分析,針對(duì)本文所設(shè)計(jì)的語(yǔ)音記錄系統(tǒng)的特點(diǎn),同時(shí)為減輕單片機(jī)運(yùn)算復(fù)雜度和減少代碼量,對(duì)標(biāo)準(zhǔn)G.726算法進(jìn)行了如下一些優(yōu)化。

      1)考慮到所采用的是8位單片機(jī),進(jìn)行大量浮點(diǎn)小數(shù)運(yùn)算比較困難,所以設(shè)定整個(gè)程序中所有變量的字長(zhǎng)最大為兩字節(jié),并且程序不涉及浮點(diǎn)運(yùn)算;利用查表和乘法功能完成變量自由移位,用數(shù)據(jù)指針與條件轉(zhuǎn)移配合完成對(duì)數(shù)變換。標(biāo)準(zhǔn)G.726算法提供了5位編碼40kbps、4位編碼32kbps、3位編碼24kbps和2位編碼16kbps四種輸出信號(hào)方案,因?yàn)镕LASH存儲(chǔ)格式也是8位的,系統(tǒng)采用了4位編碼32kbps和2位編碼16kbps兩種輸出形式。經(jīng)實(shí)際測(cè)試,我們認(rèn)為系統(tǒng)播放的語(yǔ)音音質(zhì)是可以接受的,滿足設(shè)計(jì)要求。

      圖5 G.726編碼器組成框圖Fig. 5 The Composition block diagram of G.726

      2)標(biāo)準(zhǔn)算法中為了在原有的30(32)路PCM方式數(shù)字通信設(shè)備中進(jìn)行60路ADPCM方式的數(shù)字通信,設(shè)計(jì)了將μ/A 律8位非線性PCM輸入信號(hào)轉(zhuǎn)換為14位線性PCM信號(hào)的格式轉(zhuǎn)換單元。本設(shè)計(jì)不涉及設(shè)備復(fù)用問(wèn)題,并且ML2308的數(shù)據(jù)輸出格式支持線性PCM信號(hào),因此在編譯碼過(guò)程中省略了格式轉(zhuǎn)換模塊。

      3)由于語(yǔ)音記錄系統(tǒng)無(wú)需對(duì)語(yǔ)音信號(hào)進(jìn)行異地傳輸,所以取消了因ASCII字符傳輸時(shí)產(chǎn)生誤碼而實(shí)施補(bǔ)償?shù)膯我艉娃D(zhuǎn)移檢測(cè)單元,同時(shí)也取消了解碼器中為實(shí)現(xiàn)通信同步而設(shè)的同步碼調(diào)整模塊。

      4)在標(biāo)準(zhǔn)算法自適應(yīng)速度的控制部分中,為了使量化器對(duì)數(shù)據(jù)調(diào)制解調(diào)器(MODEM)和音頻信令信號(hào)與語(yǔ)音信號(hào)都能獲得最佳自適應(yīng)特性,采用了快速和慢速兩種不同定標(biāo)因子的自適應(yīng)算法。錄放機(jī)的輸入信號(hào)只有語(yǔ)音,從而可以取消針對(duì)數(shù)據(jù)調(diào)制解調(diào)或音頻[6]信令信號(hào)的慢速標(biāo)度因子yl(k)的計(jì)算;對(duì)于語(yǔ)音信號(hào),自適應(yīng)速度控制系數(shù) al(k)→1,因此直接把計(jì)算得到的快速量化標(biāo)度因子yu (k)作為新的量化器標(biāo)度因子y(k),從而可以在保證合成語(yǔ)音質(zhì)量的前提下極大的降低算法的復(fù)雜程度。

      圖6 原始語(yǔ)音信號(hào)與解碼信號(hào)的波形圖對(duì)比Fig. 6 Contrast figure of the original speech signal and the decoding signal

      圖6為原始語(yǔ)音信號(hào)與解碼信號(hào)的波形圖對(duì)比情況,可以看出,解碼信號(hào)沒(méi)有出現(xiàn)嚴(yán)重失真,基本保持了原始信號(hào)的全部信息量,語(yǔ)音信號(hào)的自然度保持較好,雖然信噪比稍差,但系統(tǒng)播放的語(yǔ)音音質(zhì)仍然是可以接受的,對(duì)整個(gè)系統(tǒng)的性能沒(méi)有大的影響。

      3 結(jié) 論

      文中所設(shè)計(jì)的語(yǔ)音錄放系統(tǒng),應(yīng)用單片機(jī)進(jìn)行信號(hào)的編碼壓縮,采用基于標(biāo)準(zhǔn)ADPCM的優(yōu)化算法,提高了編碼效率,實(shí)現(xiàn)了對(duì)語(yǔ)音信號(hào)的實(shí)時(shí)處理。運(yùn)行結(jié)果表明,本設(shè)計(jì)達(dá)到了預(yù)期的語(yǔ)音壓縮效果,具有實(shí)現(xiàn)方便、低功耗、功能可擴(kuò)展等特點(diǎn),降低了這項(xiàng)技術(shù)的門(mén)檻和產(chǎn)品成本,在一些對(duì)音頻性能要求不是很高的低端消費(fèi)領(lǐng)域具有較大的應(yīng)用價(jià)值。

      [1] 許春冬,劉亦晴,劉鈞彬,等.一種嵌入式數(shù)字語(yǔ)音錄放系統(tǒng)的設(shè)計(jì)[J].電子元器件應(yīng)用,2010,12(12):42-44.XU Chun-dong,LIU Yi-qing,LIU Jun-bing,et al. A design of embedded digital audio playback system[J].Electronic Applications,2010,12(12):42-44.

      [2] 胥霖,穆道生,唐曉剛.基于DSP和單片機(jī)的數(shù)字壓縮語(yǔ)音錄放系統(tǒng)[J].通信市場(chǎng),2008(1):65-69.XU Lin,MU Dao-sheng,TANG Xiao-gang.Compressed digital voice recording system based on DSP and MCU[J].Communications Market,2008(1): 65-69.

      [3] 萬(wàn)曉華,陳連坤.一種適用于單片機(jī)的語(yǔ)音編碼算法及應(yīng)用[J]. 計(jì)算機(jī)工程, 2005,31(6):184-185.WAN Xiao-hua,CHENG Lian-kun. A kind of applied to singlechip voice coding algorithm and its application[J].Computer Engineering,2005,31(6):184-185.

      [4] CCITT.Recommendation G.726 40, 32, 24, 16 kb/s Adaptive Differential Pulse Code Modulation(ADPCM)[S].1990.

      [5] 趙力.語(yǔ)音信號(hào)處理[M].2版.北京:機(jī)械工業(yè)出版社,2010.

      [6] 吳繼偉.雙聲道混合音頻系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子科技,2013(7):94-96.WU Ji-wei.Design and implementation of the dual-channel mixing audio system[J].Electronic Science and Technology,2013(7):94-96.

      猜你喜歡
      解碼編碼器語(yǔ)音
      《解碼萬(wàn)噸站》
      解碼eUCP2.0
      魔力語(yǔ)音
      基于MATLAB的語(yǔ)音信號(hào)處理
      電子制作(2019年14期)2019-08-20 05:43:38
      基于MQ3與MP3的價(jià)廉物美的酒駕語(yǔ)音提醒器
      電子制作(2019年9期)2019-05-30 09:42:10
      NAD C368解碼/放大器一體機(jī)
      Quad(國(guó)都)Vena解碼/放大器一體機(jī)
      對(duì)方正在輸入……
      基于FPGA的同步機(jī)軸角編碼器
      基于PRBS檢測(cè)的8B/IOB編碼器設(shè)計(jì)
      揭西县| 利津县| 威宁| 西城区| 鄂尔多斯市| 自治县| 蕉岭县| 巴马| 新营市| 迁西县| 桃江县| 平陆县| 宝丰县| 镇赉县| 昆明市| 肃南| 福清市| 巫溪县| 白河县| 夏河县| 遵义县| 定州市| 冷水江市| 兴城市| 海南省| 黔西县| 温泉县| 正定县| 青州市| 萨迦县| 萨嘎县| 弥渡县| 营口市| 孟州市| 明溪县| 襄樊市| 临高县| 榆社县| 来凤县| 肃北| 太原市|