在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 消費(fèi)電子 > 設(shè)計應(yīng)用 > H.264解碼器中CABAC硬件加速器的實(shí)現(xiàn)

            H.264解碼器中CABAC硬件加速器的實(shí)現(xiàn)

            ——
            作者:同濟(jì)大學(xué)超大規(guī)模集成電路研究所 洪佳華 林濤 時間:2007-05-24 來源:電子設(shè)計應(yīng)用 收藏
            引言

            是由國際電信聯(lián)盟(ITU)和國際標(biāo)準(zhǔn)化組織(ISO)共同制定的新一代視頻編碼標(biāo)準(zhǔn),該標(biāo)準(zhǔn)采用一系列先進(jìn)的編碼技術(shù),在編碼效率、網(wǎng)絡(luò)適應(yīng)性等諸多方面都超越了以往的視頻標(biāo)準(zhǔn)。有兩種熵編碼方案:一種是從可變長編碼方案發(fā)展而來的基于上下文的自適應(yīng)可變長編碼CAVLC;另一種是從算術(shù)編碼發(fā)展而來的基于上下文的自適應(yīng)二進(jìn)制算術(shù)編碼CABAC。與CAVLC相比,CABAC可以節(jié)省約7%的碼流,但增加了10%的計算時間。在解高清碼流時,用軟件來做CABAC這樣復(fù)雜的熵解碼,無法完成實(shí)時解碼的任務(wù),因此,設(shè)計是非常必要的。

            CABAC解碼算法

            解碼器的輸入碼流中,數(shù)據(jù)的基本單位是句法元素(Syntax Element),碼流是由一個個句法元素依次銜接而成的。每個句法元素由若干比特組成,表示某個特定的物理意義。在H.264定義的碼流中,句法元素被組織成有層次的結(jié)構(gòu),分別描述序列(Sequence)、圖像(Picture)、片(Slice)、宏塊(Macroblock)、子宏塊(Subblock)五個層次的信息,CABAC主要負(fù)責(zé)對片層 以下的句法元素進(jìn)行解碼。

            CABAC解碼的總體過程可以分為三個步驟:初始化、二進(jìn)制算術(shù)解碼歸一化、反二進(jìn)制。

            初始化

            該過程在每一個片開始時執(zhí)行,包括上下文模型變量(Context Variable)的初始化和解碼引擎(Decoding Engine)的初始化。

            二進(jìn)制算術(shù)解碼和歸一化

            二進(jìn)制算術(shù)解碼是CABAC解碼的核心部分,該過程實(shí)現(xiàn)1bit數(shù)據(jù)的解碼,對每個句法元素進(jìn)行解碼都需要調(diào)用該過程。H.264中二進(jìn)制算術(shù)解碼有三種模式:規(guī)則解碼(Decode Decision)、旁路解碼(Decode Bypass)和結(jié)束解碼(Decode Terminate)。對不同句法元素進(jìn)行解碼時,分別調(diào)用這三種模式的一種或多種。

            反二進(jìn)制化

            CABAC定義了四種二進(jìn)制化方法:一元碼(Unary)、截斷一元碼(Truncated Unary)、K階指數(shù)哥倫布碼(kth order Exp-Golomb)和定長碼(Fixed-Length)。一個句法元素可以對應(yīng)一種或兩種上述二進(jìn)制化方法,但特殊的是,句法元素mb_type和sub_mb_type的反二進(jìn)制化獨(dú)立于上述四種方法,它們通過查表來實(shí)現(xiàn)。

            CABAC的架構(gòu)設(shè)計

            H.264解碼器的軟/硬件劃分

            H.264解碼過程采用軟/硬件聯(lián)合的解碼方案,整個解碼器由32位CPU、DSP結(jié)構(gòu)的運(yùn)算單元和組成。CABAC熵解碼部分,主要是一些判斷和分支操作,數(shù)據(jù)接口、吞吐量不大,這些任務(wù)由軟件和硬件加速器共同完成。本文設(shè)計的CABAC解碼模塊就是一個CABAC硬件加速器。

            CABAC硬件加速器的總體構(gòu)架

            CABAC硬件加速器的總體架構(gòu)如圖1所示。其總體架構(gòu)分為兩層:頂層是CABAC_TOP;底層有7個模塊,包括CABAC_Center_ Control_Unit、Context、 Neighbor_MB_Information, Context_Init、AC_next_ state_LPS、 AC_next_state_MPS和RangeLPS。

            CABAC_Center_Control_Unit模塊負(fù)責(zé)上下文模型變量的初始化,解句法元素,更新Context,并將解出的殘差數(shù)據(jù)傳給IQ&IDCT模塊;Context模塊是雙口RAM,存放459個上下文模型變量,可同時對一個地址的上下文模型變量進(jìn)行讀操作并對另外一個地址的上下文模型變量進(jìn)行寫操作;Neighbor_MB_Information模塊是SRAM,存放宏塊信息,CABAC解碼器在解析當(dāng)前宏塊中的句法元素時,需要參考上面和左面宏塊的信息,因此,需要在該SRAM內(nèi)保存圖像中當(dāng)前宏塊的上一行宏塊和該行之前宏塊的信息,每解完一個宏塊更新該SRAM;Context_Init模塊是一塊片內(nèi)ROM,用于初始化變量;3個查找表模塊AC_next_state_LPS、AC_next_ state_MPS和RangeLPS由組合邏輯實(shí)現(xiàn),用于二進(jìn)制算術(shù)解碼過程中的查表運(yùn)算。

            CABAC的硬件化分析

            本設(shè)計的目標(biāo)是使整個H.264解碼器的芯片能夠?qū)Ω咔鍒D像(1920



            評論


            相關(guān)推薦

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

            關(guān)閉