国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM946E處理器的MP3解碼優(yōu)化設(shè)計(jì)

基于ARM946E處理器的MP3解碼優(yōu)化設(shè)計(jì)

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

0 引 言

本文引用地址:http://m.ptau.cn/article/152480.htm

(MPEG I Audio Layer 3)格式是電影專家組系統(tǒng)(Motion Picture Expert Group,MPEG)壓縮標(biāo)準(zhǔn)的一種聲音文件格式,其壓縮比根據(jù)采樣頻率、壓縮位率和聲音模式的不同而有所變化。具有很高的壓縮率,可以達(dá)到1:12。一分鐘左右的CD音樂經(jīng)過格式壓縮編碼后,可以壓縮到1兆左右的容量,其音色和音質(zhì)還可以保持基本完整而不失真。隨著數(shù)字音樂的不斷普及,現(xiàn)在MP3音樂已經(jīng)不僅局限于MPEG視頻應(yīng)用中,而是以一種獨(dú)立的數(shù)字音樂壓縮技術(shù)出現(xiàn)在計(jì)算機(jī)、網(wǎng)絡(luò)和各種電子設(shè)備上。目前市場(chǎng)流行的MP3播放器是DSP和專用芯片的解決方案,通過硬件或?qū)S盟惴▽?shí)現(xiàn),具有良好的實(shí)時(shí)性。而消費(fèi)類電子產(chǎn)品正朝著多功能、低成本的方向發(fā)展。隨著ARM9功能的不斷增強(qiáng),利用系統(tǒng)本身實(shí)現(xiàn)MP3軟成為可能。另外,軟件實(shí)現(xiàn)更便于產(chǎn)品功能的升級(jí)和維護(hù),可以預(yù)見,嵌入式MP3軟器的應(yīng)用將越來越廣泛。這里在分析MPEG I Audio Lay-er3解碼算法的基礎(chǔ)上,提出實(shí)現(xiàn)解碼算法的軟件方法。

1 MPEG Audio Layer3的解碼流程
MP3解碼算法流程如圖1所示。

主要過程包括:數(shù)據(jù)流解碼、Huffman解壓縮、反量化與重排序、立體聲解碼、IMDCT和子帶合成運(yùn)算等。其中Huffman解碼與反量化、IMDCT和子帶合成等3個(gè)過程在MP3解碼過程中占用了最多的CPU和內(nèi)存資源,是嵌入式系統(tǒng)實(shí)現(xiàn)軟件解碼的關(guān)鍵。


2
處理器屬于ARM9內(nèi)核帶有E擴(kuò)展的一個(gè)可綜合版本,執(zhí)行v5TE架構(gòu)指令。采用5級(jí)流水線,存儲(chǔ)器系統(tǒng)根據(jù)哈佛體系結(jié)構(gòu)重新,獨(dú)立的數(shù)據(jù)和指令總線。帶有一套存儲(chǔ)器子系統(tǒng),以提高系統(tǒng)性能和支持大型操作系統(tǒng)。
如圖2所示,存儲(chǔ)器子系統(tǒng)包含1個(gè)存儲(chǔ)器保護(hù)單元(MPU)、高速緩存(Cache)和寫緩沖(Write Buffer);CPU通過該子系統(tǒng)與系統(tǒng)存儲(chǔ)器相連。

相對(duì)于ARM7,ARM9E性能上的提高主要表現(xiàn)在工作頻率、改進(jìn)的硬件特性及的指令執(zhí)行效率。另外,ARM9E集成了輕量級(jí)的DSP處理能力,以很小的成本(CPU增加功能需要增加硬件)換來非常實(shí)用的DSP性能。充分利用好芯片資源是實(shí)現(xiàn)MP3解碼的關(guān)鍵。


3 算法優(yōu)化
針對(duì)MP3中涉及較大運(yùn)算的Huffman解碼與反量化、IMDCT和子帶合成,分別提出算法優(yōu)化處理。3.1 定長(zhǎng)查找冗余表Huffman解碼算法Huffman可以通過從頭至尾逐一檢測(cè)各符號(hào),以查表比較的方式進(jìn)行解碼。即從一維的bit流中分辨出各個(gè)長(zhǎng)度不同的Huffman碼字,然后進(jìn)行復(fù)雜的匹配。
由于LayeIⅢ中的Huffman碼表組長(zhǎng)度不一,會(huì)增加碼字的搜索時(shí)間。定長(zhǎng)查找冗余表法擴(kuò)充Huff_man查找表,每次選取定長(zhǎng)N bit碼流作為查找索引。查找表中包括跳轉(zhuǎn)指針和編碼值。若節(jié)點(diǎn)索引值為跳轉(zhuǎn)指針時(shí),將通過擴(kuò)充Huff-man查找表得知此Huffman編碼的后續(xù)bit數(shù),并跳轉(zhuǎn)到另外一個(gè)節(jié)點(diǎn);然后再根據(jù)后續(xù)bit數(shù)從碼流中取值;接著從上次跳轉(zhuǎn)節(jié)點(diǎn)開始查找,如此重復(fù)直到找出對(duì)應(yīng)huffman編碼的內(nèi)容。查找表利用Union數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),可減小Huffman表占用的空間。假設(shè)一Huff-man編碼長(zhǎng)度為l,采用傳統(tǒng)算法需要1次移位操作和1次比較,使用定長(zhǎng)查找法只需[z/N]次查找和[l/N]次比較操作。
表1,表2是Huffman解碼的舉例說明:


上一頁 1 2 3 下一頁

評(píng)論


相關(guān)推薦

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

關(guān)閉