《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于矩陣乘法器的MP3解碼優(yōu)化設(shè)計(jì)
基于矩陣乘法器的MP3解碼優(yōu)化設(shè)計(jì)
李仕專 李維濤 符 天 孟憲軍
摘要: 介紹了MP3解碼器的工作原理,分析了各個(gè)解碼環(huán)節(jié)的計(jì)算量和消耗時(shí)間。將MP3解碼過程中耗時(shí)最多的子帶綜合濾波環(huán)節(jié)使用矩陣乘法器單元做了優(yōu)化和改進(jìn),提出一種可大幅度提高M(jìn)P3實(shí)時(shí)解碼效率的軟硬件協(xié)同設(shè)計(jì)方法,并在SoC仿真平臺(tái)上得到實(shí)時(shí)驗(yàn)證,達(dá)到了較好的優(yōu)化效果。由于SoC的設(shè)計(jì)方法比較靈活,可以根據(jù)實(shí)際需要設(shè)計(jì)硬件模塊,所以該設(shè)計(jì)具有方便、靈活和可靠性高等特點(diǎn),是工程實(shí)用價(jià)值較高的解碼器。
Abstract:
Key words :

0 引言
    MP3(MPEG Audio Layer 3)是一種以高保真為前提實(shí)現(xiàn)的高效壓縮技術(shù)。MP3音頻編碼器復(fù)雜,壓縮率很高,但其音色和音質(zhì)還可以保持基本完整,因此該音頻格式文件在計(jì)算機(jī)、網(wǎng)絡(luò)和各種電子設(shè)備上都得到了廣泛運(yùn)用。
    由于MP3音頻解碼相對(duì)比較復(fù)雜,為了達(dá)到在控制成本的范圍內(nèi)實(shí)現(xiàn)快速解碼的要求,提出了在SoC上通過增加矩陣乘法器" title="乘法器">乘法器運(yùn)行快速的兩個(gè)16點(diǎn)DCT算法,進(jìn)一步提高M(jìn)P3解碼速度的可行性方案。

1 MP3解碼流程分析
   
MP3解碼的流程如圖1所示,解碼的主要過程包括同步處理、解幀頭、解邊帶信息、解比例因子、Huffman解碼、逆量化、頻率線重排序、立體聲處理、混疊重建、改進(jìn)離散余弦逆變換(IMDCT)、頻率倒置處理、子代綜合濾波,最后輸出原始的PCM數(shù)據(jù)。


    在這些過程中由于IMDCT和子帶綜合濾波的算法比較復(fù)雜,占用硬件資源較多,處理時(shí)間長,因此功耗所占比例相應(yīng)較高。表1是在DSP平臺(tái)上成功移植后,對(duì)代碼進(jìn)行耗時(shí)分析的結(jié)果。
    根據(jù)表1可知,子帶綜合濾波占了整個(gè)解碼時(shí)間的60 %以上,是決定解碼速度的最關(guān)鍵模塊;其次是長塊IMDCT運(yùn)算,占了整個(gè)解碼時(shí)間的10%以上。若采用MPEG-1建議的算法流程,數(shù)值計(jì)算主要集中在子帶綜合濾波上。以兩聲道48 kHz采樣率為例,乘法運(yùn)算量為(48 000/32)×(64×32+512)×2=7 680 000次/s。因此,子帶綜合濾波是MP3解碼器的優(yōu)化重點(diǎn),減少子帶綜合濾波的計(jì)算量和計(jì)算時(shí)間是MP3解碼器實(shí)現(xiàn)的核心。



2 子帶綜合濾波分析
   
子帶綜合濾波是MP3解碼的最后一部分,也是解碼過程中最為耗時(shí)的關(guān)鍵步驟。它負(fù)責(zé)從IMDCT的輸出值中把PCM值還原出來,可以分成5個(gè)步驟。首先是Matrixing(矩陣)運(yùn)算,即,2,…,63。由公式可知,它從32個(gè)子帶Sk的每個(gè)子帶中取出一個(gè)值組成32個(gè)值送入一個(gè)矩陣中進(jìn)行運(yùn)算,然后把輸出Vi的64個(gè)結(jié)果放入一個(gè)1 024的先入先出(FIFO)緩存中,再從1 024值中取出一半,組成一個(gè)512矢量Ui,并對(duì)這512矢量進(jìn)行加窗運(yùn)算,即Wi=UiDi,i=1,2,…,511,加窗系數(shù)Di由MP3官方協(xié)議AnnexB Table3-B.3提供。最后將加窗結(jié)果Wi進(jìn)行疊加生成32個(gè)時(shí)域PCM輸出。
    1次矩陣運(yùn)算" title="矩陣運(yùn)算">矩陣運(yùn)算乘法和加法運(yùn)算過程分別為1 024次和992次,完成1個(gè)聲道的解碼需要18次矩陣運(yùn)算。矩陣運(yùn)算是子帶綜合濾波的關(guān)鍵步驟。實(shí)際上,Konstantinos Konstantinides提出的方法,只需要做一些變化就可以通過32點(diǎn)DCT變換成矩陣運(yùn)算。
2.1 32點(diǎn)快速DCT算法分析
   
快速DCT變換算法主要基于系數(shù)矩陣分裂方法,增加輸入的預(yù)處理,使得乘法和加法計(jì)算量減半。32點(diǎn)的DCT變換到矩陣運(yùn)算如圖2所示。其中V(1×64)表示矩陣的輸出,A,B都是長度為1×16的矢量,(A,B)表示32點(diǎn)DCT的輸出。


    由于32點(diǎn)的DCT可以分解成2個(gè)16點(diǎn)的DCT變換,依次類推可以分解成8點(diǎn)的DCT變換,考慮到定點(diǎn)數(shù)字信號(hào)處理中的有限字長效應(yīng),實(shí)際只需分解1次,將32點(diǎn)DCT化成2個(gè)16點(diǎn)的DCT。簡化子帶濾波流程以及使用快速DCT變換后,子帶綜合濾波部分的運(yùn)算量可以減少約60 %。
    由32點(diǎn)DCT分解為2個(gè)16點(diǎn)DCT過程推導(dǎo)如下:

2.2 基于矩陣乘法器的快速DCT算法優(yōu)化
   
3×3矩陣乘法器由觸發(fā)器和乘累加器組成,是高性能DSP處理器的重要部件,也是實(shí)時(shí)處理的核心,其速度直接影響DSP處理器的速度。矩陣乘法器的實(shí)現(xiàn)有很多種,基本上都基于并行計(jì)算" title="并行計(jì)算">并行計(jì)算原則。由于每列結(jié)果與其他列不相關(guān),因此可以通過增加乘法器多列同時(shí)計(jì)算,經(jīng)過n次乘累加就可以得到最后結(jié)果。圖3給出矩陣乘法器的結(jié)構(gòu)。


    顯然,這種結(jié)構(gòu)的計(jì)算速度很快,但是使用乘法器會(huì)因矩陣維數(shù)n的增加而快速增加,使用的觸發(fā)器也很多。在很多場合下,只要滿足處理速度的要求,完全沒有必要浪費(fèi)這么多硬件資源,而是只要1個(gè)乘累加單元" title="乘累加單元">乘累加單元流水作業(yè),分步計(jì)算每1列結(jié)果既可。在做乘累加計(jì)算1個(gè)元素時(shí)候,準(zhǔn)備下一組參與運(yùn)算的數(shù)據(jù),如此循環(huán),同樣可以獲得較高的處理速度。
    在該設(shè)計(jì)中,由于B矩陣是1×n的一維向量輸入數(shù)據(jù),A矩陣為DCT系數(shù)矩陣,A矩陣中的元素為n個(gè)系數(shù)的線性組合" title="線性組合">線性組合,因此整個(gè)矩陣乘法器需要2組n個(gè)觸發(fā)器分別存放輸入數(shù)據(jù)和n個(gè)系數(shù),1個(gè)乘累加單元。輸入數(shù)據(jù)X[0:n],從X[O]到X[n]循環(huán)n次進(jìn)入乘法器,使用選擇信號(hào)Assi-gn[0:n]選擇系數(shù)C[0:n],另外系數(shù)符號(hào)由Sign信號(hào)軟件控制,基本結(jié)構(gòu)如圖4所示。


    由于DCT計(jì)算本質(zhì)上就是n×n矩陣乘法運(yùn)算,而n×n矩陣乘法器是在通用乘法器的基礎(chǔ)上增加2組分別存放系數(shù)矩陣的系數(shù)C(n)和輸入X(n)的n個(gè)寄存器,使之實(shí)現(xiàn)長度為n的乘累加功能,同時(shí)還需保存上次乘法結(jié)果。其中,DCT中的系數(shù)是一組n維基的n種線性組合。只需1次輸入n個(gè)系數(shù),使用軟件進(jìn)行選擇和符號(hào)控制就可實(shí)現(xiàn)這些不同系數(shù)組合,無需反復(fù)往寄存器中置數(shù),大大提高了取數(shù)/置數(shù)的效率,節(jié)省了整個(gè)DCT的運(yùn)算時(shí)間。
    因此在計(jì)算32點(diǎn)的DCT,可將32點(diǎn)DCT分解為2個(gè)16點(diǎn)的DCT計(jì)算,計(jì)算量也減少1倍。可以使用2組16×16的矩陣乘法器并行計(jì)算,使得計(jì)算時(shí)間大幅減少。表2是通過增加矩陣乘法器優(yōu)化處理后,子帶綜合濾波使用不同實(shí)現(xiàn)方式所需要的時(shí)間。


    結(jié)果表明,第2.1節(jié)中使用快速32點(diǎn)DCT算法改進(jìn)子帶綜合濾波計(jì)算是有效的,直接減少59%的計(jì)算時(shí)間。在采用并行2個(gè)16×16矩陣乘法器加速快速32點(diǎn)DCT的計(jì)算,可以取得明顯的效果:使得計(jì)算時(shí)間比原算法減少了約91.4%,而且硬件上只增加1個(gè)乘法器和30個(gè)數(shù)據(jù)鎖存器,以及部分控制電路。使用軟硬件協(xié)同操作就可以獲得子帶綜合濾波計(jì)算速度上的大幅度上升。

3 結(jié)語
   
該設(shè)計(jì)面向SoC實(shí)現(xiàn)了利用增加矩陣乘法器就可加快基于32點(diǎn)快速DCT算法的MP3解碼中子帶綜合濾波的處理速度,大大緩解了系統(tǒng)的頸瓶,使得采用系統(tǒng)主頻比較低(fs≤100 MHz)的SoC平臺(tái)進(jìn)行MP3的解碼成為可能。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品国产三级国产aⅴ入口| 精品成人国产| 久久人人超碰| 久久精品二区| 欧美综合激情网| 亚洲欧美第一页| 亚洲一区二区三区午夜| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲第一区色| 欧美一级淫片播放口| 亚洲综合精品四区| 午夜视频在线观看一区| 午夜在线精品偷拍| 欧美在线视频观看| 亚洲国产精品va在线看黑人 | 欧美日韩另类综合| 欧美日韩国产三级| 欧美日韩中文另类| 欧美网站在线观看| 国产精品久久久久久久午夜片| 国产精品白丝jk黑袜喷水| 国产精品v欧美精品v日韩精品| 欧美日韩一区二区在线播放| 欧美日韩精品| 国产精品久久久久久久久搜平片 | 国产精品一区亚洲| 国产午夜一区二区三区| 国产主播喷水一区二区| 在线观看亚洲视频| 亚洲精品久久久久久久久久久久| 亚洲乱码精品一二三四区日韩在线 | 午夜日韩福利| 久久精品国产久精国产一老狼 | 午夜一区二区三区在线观看| 久久国产精品免费一区| 91久久黄色| 欧美日本高清| 欧美日韩国产一区二区| 国产精品成人一区二区三区夜夜夜| 国产精品wwwwww| 国产一区二区日韩精品欧美精品| 影音先锋亚洲视频| 99xxxx成人网| 欧美一区亚洲| 亚洲精品之草原avav久久| 亚洲一区www| 欧美专区在线| 欧美精品1区2区| 国产精品麻豆va在线播放| 激情久久影院| 一本色道久久综合狠狠躁篇怎么玩| 亚洲欧美变态国产另类| 亚洲国产精选| 亚洲欧美日韩精品久久久| 久久在线91| 欧美午夜美女看片| 一区二区在线视频| 宅男精品导航| 欧美中文在线字幕| 亚洲韩国一区二区三区| 亚洲国产精品久久久久秋霞不卡 | 女同性一区二区三区人了人一| 欧美理论电影在线播放| 国产九九精品视频| 亚洲韩国青草视频| 亚洲欧美日韩另类| 日韩一级二级三级| 久久精品国产2020观看福利| 欧美日韩成人网| 国精品一区二区三区| 一区二区三区|亚洲午夜| 久久国产精品亚洲va麻豆| 中国女人久久久| 久久色在线观看| 国产精品爱久久久久久久| 在线电影院国产精品| 亚洲一区国产| 99精品国产福利在线观看免费| 欧美一区久久| 欧美日韩在线观看一区二区| 激情综合网激情| 亚洲综合国产精品| 在线视频欧美一区| 免费成人激情视频| 国产午夜精品理论片a级大结局 | 亚洲欧美国产精品桃花 | 欧美三日本三级少妇三2023| 韩国v欧美v日本v亚洲v| 亚洲天堂男人| 中文在线资源观看网站视频免费不卡| 玖玖精品视频| 国产亚洲精品bv在线观看| 一区二区日韩伦理片| 亚洲精品专区| 狂野欧美性猛交xxxx巴西| 国产欧美精品日韩| 亚洲视频观看| 中文av字幕一区| 欧美国产先锋| 亚洲成人自拍视频| 亚洲国产高潮在线观看| 久久国产欧美精品| 国产精品视频免费一区| 99国产精品国产精品久久| 日韩视频第一页| 欧美国产日产韩国视频| 亚洲成色777777女色窝| 亚洲高清不卡| 老司机aⅴ在线精品导航| 国外精品视频| 欧美与欧洲交xxxx免费观看| 欧美一级电影久久| 国产精品日韩精品| 亚洲制服丝袜在线| 亚洲欧美日韩国产另类专区| 欧美视频三区在线播放| 一本色道婷婷久久欧美| 日韩亚洲欧美成人| 欧美人交a欧美精品| 亚洲精选久久| 宅男66日本亚洲欧美视频| 欧美精品久久99久久在免费线| 亚洲精品1区2区| 夜夜狂射影院欧美极品| 欧美日韩国产在线看| 亚洲美女av网站| 亚洲午夜电影网| 国产精品成人v| 亚洲一区二区在线看| 欧美一区二区三区成人| 国产女精品视频网站免费| 亚洲欧美成人精品| 久久精品99无色码中文字幕| 国产一区二区日韩精品| 久久精精品视频| 老司机午夜精品视频在线观看| 在线视频国产日韩| 亚洲免费av网站| 欧美日韩视频在线一区二区| 一区二区三区精品在线| 午夜老司机精品| 国产性做久久久久久| 久久国产欧美精品| 欧美成人一区二区三区在线观看 | 欧美在线视频全部完| 国内精品久久久久久久影视蜜臀 | 国产日韩欧美亚洲一区| 久久精品一区二区国产| 欧美黄在线观看| 中文精品99久久国产香蕉| 欧美一区二区视频97| 狠狠色狠狠色综合日日小说| 亚洲精品国产精品国产自| 欧美人妖在线观看| 亚洲欧美成人网| 美女国内精品自产拍在线播放| 亚洲精品视频免费观看| 亚洲欧美三级在线| 韩国av一区二区三区| 日韩小视频在线观看专区| 国产精品久久久久三级| 久久精彩免费视频| 欧美日韩免费看| 欧美一区二区久久久| 欧美暴力喷水在线| 亚洲视频一区在线观看| 玖玖视频精品| 在线视频一区观看| 久久久精品一区| 亚洲免费观看| 久久久久国色av免费观看性色| 亚洲国产成人精品女人久久久 | 伊人春色精品| 亚洲一区二区在线视频| 国产亚洲在线| 一区二区高清视频在线观看| 国产日韩一区二区三区在线播放 | 永久域名在线精品| 亚洲综合色婷婷| 亚洲二区在线视频| 性亚洲最疯狂xxxx高清| 亚洲国产精品成人综合色在线婷婷| 亚洲一区二区免费视频| 韩国成人福利片在线播放| 亚洲一区二区三区精品动漫| 激情综合色丁香一区二区| 亚洲欧美激情诱惑| 91久久久精品| 久久精品国产免费看久久精品| 亚洲精品综合| 麻豆乱码国产一区二区三区| 亚洲视频综合在线| 欧美国产日韩二区| 久久精品免费| 国产麻豆精品theporn| 中文在线不卡视频| 亚洲丶国产丶欧美一区二区三区| 欧美一区二区三区免费在线看| 99精品国产高清一区二区| 欧美a级片网站|