當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]本文的研究目標(biāo)是設(shè)計(jì)H.264標(biāo)準(zhǔn)中的Exp-Golomb解碼器,在對(duì)其算法進(jìn)行深入探討的基礎(chǔ)上,提出了一種高效且低成本的ASIC實(shí)現(xiàn)方案。 Exp-Golomb編碼原理及解碼算法分析 在H.264基本規(guī)范中,除了殘差變

本文的研究目標(biāo)是設(shè)計(jì)H.264標(biāo)準(zhǔn)中的Exp-Golomb解碼器,在對(duì)其算法進(jìn)行深入探討的基礎(chǔ)上,提出了一種高效且低成本的ASIC實(shí)現(xiàn)方案。

Exp-Golomb編碼原理及解碼算法分析

        在H.264基本規(guī)范中,除了殘差變換系數(shù)采用CAVLC編碼方式外,其它句法元素均使用Exp-Golomb編碼。Exp-Golomb編碼是一種有規(guī)則的變長編碼方式,在各類視頻編碼標(biāo)準(zhǔn)中被廣泛應(yīng)用。Exp-Golomb編碼基于符號(hào)的概率統(tǒng)計(jì)進(jìn)行編碼,用短碼字來表示出現(xiàn)概率高的信息,用長碼字來表示出現(xiàn)概率低的信息,碼長與被編碼數(shù)成指數(shù)對(duì)應(yīng)關(guān)系,從而使總體平均碼字最短。與定長編碼方式相比,節(jié)省了大量存儲(chǔ)空間。

        在H.264中采用的是0階Exp-Golomb編碼,編碼規(guī)則如圖1所示。
 

        Exp-Golomb碼字的邏輯結(jié)構(gòu)為:[M zeros][1][INFO]。其中M個(gè)0和中間的1稱為前綴,INFO是M位的信息值,因此,每個(gè)Exp-Golomb碼字的長度都為2M+ 1。每個(gè)索引字codenum經(jīng)過編碼都可以對(duì)應(yīng)一個(gè)如上結(jié)構(gòu)的碼字,它們之間的關(guān)系是:

codenum=2M+INFO-1 (1)

        由式1可知,進(jìn)行Exp-Golomb解碼可先探測(cè)出碼字前連續(xù)O的個(gè)數(shù),再取出后綴,經(jīng)該公式計(jì)算即可得到codenum值。在H.264中存在四種Exp-Golomb碼:無符號(hào)型ue(v)、有符號(hào)型se(v)、映射型me(v)和截?cái)嘈蛅e(v)。因此,對(duì)于解出的codenum值,根據(jù)句法元素類型的不同有四種映射方式,如表2所示。根據(jù)相應(yīng)描述完成映射后,輸出syntax即為解碼值。
 

Exp-Golomb解碼器硬件結(jié)構(gòu)設(shè)計(jì)

        基于以上解碼算法設(shè)計(jì)的Exp-Golomb解碼器硬件結(jié)構(gòu)如圖1所示。整個(gè)系統(tǒng)主要由以下模塊組成:輸入碼流緩沖移位模塊、碼長檢測(cè)模塊、 codenum生成模塊以及句法元素映射模塊。系統(tǒng)上電復(fù)位后,首先由碼流緩沖移位模塊提供待解碼字,然后由碼長檢測(cè)模塊中的首一檢測(cè)器探測(cè)出連續(xù)0 的個(gè)數(shù),即時(shí)計(jì)算得出當(dāng)前碼長送至累加器。同時(shí),首一檢測(cè)的結(jié)果和待解碼字一起送至codenum計(jì)算模塊,經(jīng)移位、相減得到codenum值。最后將 codenum送至四個(gè)映射單元處理,最終解碼句法元素由選擇器輸出至寄存器。整個(gè)解碼流程用一個(gè)時(shí)鐘周期完成。下文將詳細(xì)敘述各功能子模塊的硬件結(jié)構(gòu)。
 

輸入碼流緩沖移位模塊

        輸入碼流緩沖移位模塊是實(shí)現(xiàn)H.264實(shí)時(shí)解碼的關(guān)鍵模塊。由于在每個(gè)變長解碼流程中,碼長不可能事先確定,所以在解出碼值的同時(shí)必須定位下一個(gè)碼字。這就要求該模塊具有快速響應(yīng)和并行輸出的特點(diǎn)。由于H.264中定義Exp-Golomb碼最大碼長不超過32,設(shè)計(jì)中采用兩個(gè)32位寄存器,一個(gè)32位桶形移位器及一個(gè)累加器的組合來實(shí)現(xiàn)該功能,如圖1左端所示。其中,寄存器Rn負(fù)責(zé)從外部模塊讀取數(shù)據(jù),并和寄存器R1一起作為桶形移位器的輸入; 在每個(gè)解碼周期,桶形移位器移出已解碼流的同時(shí)還要裝載新的待解碼流;而累加器則計(jì)數(shù)已處理碼長,傳送桶形移位器移位長度,判斷并控制R0的讀取和R1的更新。這樣就為后續(xù)處理單元提供了連續(xù)不間斷的碼流。

碼長檢測(cè)模塊

        該模塊的主要組成部件是一個(gè)16位的首一檢測(cè)器,其功能是檢測(cè)出輸入序列中第一個(gè)1之前連續(xù)0的個(gè)數(shù)。碼長(2M+1)的獲取只需將首一檢測(cè)的結(jié)果與一個(gè)1位進(jìn)行位拼接即可實(shí)現(xiàn),無需額外電路。另外,考慮到響應(yīng)速度和路徑延時(shí),首一檢測(cè)器的設(shè)計(jì)采用分組并行探測(cè)方式,其硬件結(jié)構(gòu)如圖2所示。輸入的16位碼流分成4組,每組4位均通過一個(gè)4輸入與門,得到4位輸出信號(hào)后送至優(yōu)先編碼器1,從而判斷出首1所在區(qū)間。同時(shí)與門的四個(gè)輸出還作為選擇器MUX的控制信號(hào),片選出存在首1的4位數(shù)據(jù),并將其送至優(yōu)先編碼器2,判斷出首1的具體位置。最后將兩個(gè)編碼器的輸出進(jìn)行位拼接即可得到首 1前連續(xù)O的個(gè)數(shù)M。

codenum計(jì)算模塊和句法元素映射模塊

        codenum計(jì)算模塊用于實(shí)現(xiàn)公式1的功能,設(shè)計(jì)中采用一個(gè)16位的桶形移位器結(jié)合一個(gè)16位減法器實(shí)現(xiàn)。桶形移位器根據(jù)首一檢測(cè)結(jié)果,重新定位碼流指針,正確輸出碼字中[1][INFO]部分,最后將[1][INFO]減去1即可得到codenum值。

        關(guān)于句法元素映射模塊,由于H.264中定義了四種:Exp-Golomb碼,如前文表2所描述,存在四種不同的映射方式,本設(shè)計(jì)中采用四塊組合映射邏輯加一個(gè)多選器實(shí)現(xiàn),具體結(jié)構(gòu)如圖1右端所示。其中ue直接等于codenum,se與te的映射則分別采用包含二選一電路的簡單組合邏輯實(shí)現(xiàn),而me的實(shí)現(xiàn)較復(fù)雜,需查找H.264標(biāo)準(zhǔn)中定義的運(yùn)動(dòng)矢量、量化參數(shù)的映射表格,設(shè)計(jì)中采用ROM結(jié)構(gòu)實(shí)現(xiàn)查表。

綜合、仿真結(jié)果與性能分析

        在上述硬件架構(gòu)下,使用Verilog HDL進(jìn)行Exp-Golomb解碼器電路設(shè)計(jì),并在Xilinx公司的ISE 8.2開發(fā)環(huán)境下進(jìn)行了功能驗(yàn)證,選擇Virtex 2系列的XC2V250器件。使用Synplify 7.7軟件進(jìn)行邏輯優(yōu)化與綜合,系統(tǒng)時(shí)鐘頻率可達(dá)104MHz。ISE完成布局布線后,通過ModelSim 5.8調(diào)用JM86生成的測(cè)試向量進(jìn)行后仿真,最后與軟件的計(jì)算結(jié)果相比較,驗(yàn)證了設(shè)計(jì)的正確性。

        使用Synopsys公司的Design Compiler工具在0.18μm的SIMC CMOS工藝條件下,對(duì)RTL代碼進(jìn)行綜合優(yōu)化,時(shí)鐘頻率最高可以達(dá)到200MHz。通過設(shè)置不同的面積、時(shí)序及功耗約束條件,縮短關(guān)鍵路徑的延時(shí),綜合出等效門數(shù)2276門、時(shí)鐘頻率為162MHz的最優(yōu)設(shè)計(jì)。在此工作頻率下,該Exp-Golomb硬件解碼器電路解出一個(gè)句法元素只需耗用單個(gè)時(shí)鐘周期,因此本設(shè)計(jì)可滿足H.264高清晰度視頻實(shí)時(shí)解碼的要求。

 

結(jié)語

        本文在分析H.264標(biāo)準(zhǔn)中Exp-Golomb解碼算法的基礎(chǔ)上,提出了一種高效、省面積的Exp-Golomb解碼器架構(gòu)。在Xilinx公司的 ISE 8.2開發(fā)環(huán)境下使用Virtex 2平臺(tái)對(duì)設(shè)計(jì)進(jìn)行了驗(yàn)證,使用Synopsys公司的DC工具在SMIC 0.18μm CMOS工藝條件下,對(duì)設(shè)計(jì)進(jìn)行了面積和時(shí)間的優(yōu)化,在162MHz時(shí)鐘頻率下工作時(shí),電路等效門數(shù)為2276門,達(dá)到了預(yù)期目標(biāo),為下一步工作打下了良好的基礎(chǔ)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉