當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]摘要:二維離散余弦(DCT)在H.264視頻編碼中承擔(dān)者信號(hào)從時(shí)域到頻域變換的作用。在現(xiàn)場可編程邏輯門陣列(FPGA)上設(shè)計(jì)了高效的采用流水線結(jié)構(gòu)的H.264 DCT硬件電路。首先,把二維4×4 DCT變換轉(zhuǎn)換成二次一維DCT變

摘要:二維離散余弦(DCT)在H.264視頻編碼中承擔(dān)者信號(hào)從時(shí)域到頻域變換的作用。在現(xiàn)場可編程邏輯門陣列(FPGA)上設(shè)計(jì)了高效的采用流水線結(jié)構(gòu)的H.264 DCT硬件電路。首先,把二維4×4 DCT變換轉(zhuǎn)換成二次一維DCT變換;其次,DCT變換之間加一個(gè)兩端口的RAM,以實(shí)現(xiàn)數(shù)列的轉(zhuǎn)置;最后,在頂層設(shè)計(jì)一個(gè)有限狀態(tài)機(jī)控制整個(gè)流程。該設(shè)計(jì)采用較少的資源實(shí)現(xiàn)了較好的功能,獲得了可靠的實(shí)驗(yàn)結(jié)果。
關(guān)鍵詞:二維離散余弦變換;FPGA;H.264;DCT

0 引言
    目前,基于分塊DCT的編碼技術(shù)已成為圖像/視頻編碼國際標(biāo)準(zhǔn)的核心技術(shù),一方面是因?yàn)镈CT具有良好的去相關(guān)性和能量壓縮性,另一方面是因?yàn)镈CT具有快速實(shí)現(xiàn)算法。隨著數(shù)字多媒體技術(shù)的快速發(fā)展,H.264視頻壓縮標(biāo)準(zhǔn)在多個(gè)領(lǐng)域得到了廣泛的應(yīng)用。然而,在當(dāng)前有限的網(wǎng)絡(luò)帶寬、FPGA有限的資源以及要求更高壓縮速率情況下,對(duì)二維離散余弦變換(DCT)提出了更高的要求。H.264對(duì)圖像或預(yù)測殘差采用了4×4整數(shù)離散余弦變換技術(shù),避免了以往標(biāo)準(zhǔn)中使用的通用8×8離散余弦變換、逆變換經(jīng)常出現(xiàn)的失配問題。

1 H.264的整數(shù)DCT變換
    一維N點(diǎn)離散余弦變挽(DCT)可以表示為:
    
    式中:xn是輸入時(shí)域序列中第n項(xiàng);yK是輸出頻域序列中的第K項(xiàng);系數(shù)CK定義如下:

    H.264對(duì)4×4圖像塊進(jìn)行操作,則相應(yīng)的4×4DCT變換矩陣A為:


    
    A中的a,b和c是實(shí)數(shù),而圖像塊X中的元素是整數(shù)。對(duì)實(shí)數(shù)的DCT,由于在解碼端的浮點(diǎn)運(yùn)算精度問題,會(huì)造成解碼后的數(shù)據(jù)的失配,進(jìn)而引起漂移。H.264比其他圖像編碼使用了更多的預(yù)測過程,甚至內(nèi)部編碼模式也依賴于空間預(yù)測。因此,H.264對(duì)預(yù)測漂移是十分敏感的。為此,H.264對(duì)4×4 DCT中的A進(jìn)行了改造,采用了整數(shù)DCT技術(shù),有效地減少計(jì)算量,同時(shí)不損失圖像準(zhǔn)確度。式(1)可以等效為:
    
    式中:d=c/b≈0.414;符號(hào)表示結(jié)果中的每個(gè)元素乘以矩陣E中對(duì)應(yīng)位置上系數(shù)值的運(yùn)算。為了簡化計(jì)算,去d為0.5,同時(shí)又要保持變換的正交性,對(duì)b進(jìn)行修正,取。對(duì)矩陣C中的第2行和第4行,以及矩陣CT中的第2列和第4列元素乘以2,相應(yīng)地改造矩陣E為Ef,以保持式(7)成立,得到:
    
    式中運(yùn)算對(duì)每個(gè)矩陣元素只進(jìn)行一次乘法,同時(shí)它將被歸納到量化運(yùn)算中。這樣,中只剩下整數(shù)的加法、減法和移位運(yùn)算。式(8)的矩陣乘法運(yùn)算可以改造成兩次一維整數(shù)DCT變換,例如先對(duì)圖像或其殘差塊的每行進(jìn)行一維整數(shù)DCT,然后對(duì)經(jīng)行變換塊的每列再應(yīng)用一維整數(shù)DCT變換。每次一維整數(shù)DCT可以采用蝶形快速算法,以節(jié)省時(shí)間,如圖1所示。


    整數(shù)DCT變換是基于DCT的,但是又有一些不同:
    (1)它是一個(gè)整數(shù)變換(所有的操作都可以使用整數(shù)算法,而不丟失解碼精度);
    (2)它可以實(shí)現(xiàn)編碼端正變換與解碼端反變換之間的零誤差匹配;
    (3)變換的核心部分可以僅僅使用加法和移位操作實(shí)現(xiàn);
    (4)變換中的一部分尺度乘法運(yùn)算可以和量化器結(jié)合到一起,減少了乘法的數(shù)量。

2 H.264整數(shù)DCT變換的FPGA實(shí)現(xiàn)
    H.264中以4×4塊為單位,運(yùn)算過程中只有移位和加法,降低了算法的復(fù)雜度,易于硬件實(shí)現(xiàn)。設(shè)計(jì)時(shí)可把二維DCT變換分割為兩次一維整數(shù)變換,而一維變換可以用蝶形快速算法實(shí)現(xiàn),整個(gè)過程只需64次加法和16次移位運(yùn)算。


    圖2為H.264整數(shù)DCT變換的框圖。首先,輸入的數(shù)據(jù)在控制單元的控制下進(jìn)行一維DCT變換;然后,將結(jié)果存入雙端口RAM中,待整個(gè)4× 4塊一維變換后,將數(shù)據(jù)按照轉(zhuǎn)置的概念取出,再進(jìn)行一維DCT變換;最后,將其結(jié)果輸出即可。在設(shè)計(jì)中,為了加快系統(tǒng)的速度,采用兩個(gè)一維DCT變換模塊。
2.1 一維DCT蝶形算法模塊
    根據(jù)圖1所示的快速算法,在加法器之間插入寄存器,以提高時(shí)鐘頻率和流水線處理,乘法運(yùn)算可用移位操作,因此可以快速地實(shí)現(xiàn)一維DCT蝶形算法。產(chǎn)生的結(jié)果存入雙端口RAM,以實(shí)現(xiàn)二維矩陣的轉(zhuǎn)置。在設(shè)計(jì)中,為了實(shí)現(xiàn)并行處理和最大的速率,設(shè)置兩個(gè)一維DCT蝶形算法模塊和4個(gè)雙端口RAM,在雙端口RAM的前后分別設(shè)計(jì)了數(shù)據(jù)選擇通路。第一個(gè)一維DCT實(shí)現(xiàn)行變換,第二個(gè)一維DCT實(shí)現(xiàn)列變換,由于在從行變換到列變換中間經(jīng)過1個(gè)矩陣轉(zhuǎn)置過程,所以在給列變換單元輸入數(shù)據(jù)時(shí),輸入的數(shù)據(jù)需要重新組合后再送給每個(gè)列變換單元。
    在設(shè)計(jì)矩陣轉(zhuǎn)置是用4個(gè)RAM代替1個(gè)RAM,再增加兩個(gè)4通道的旋轉(zhuǎn)多路器,同時(shí)配合對(duì)4個(gè)RAM的編址讀操作,一次輸入原始矩陣的一列。并行矩陣轉(zhuǎn)置模塊的寫操作:每個(gè)時(shí)鐘周期變換一次RAM_BANK的接入順序,每個(gè)RAM_BANK每次寫入地址隨時(shí)鐘周期按順序遞增。
2.2 控制單元FSM
    圖3顯示共有11個(gè)狀態(tài),主要對(duì)2個(gè)一維DCT變換模塊,4個(gè)RAM塊和2個(gè)數(shù)據(jù)選擇通路進(jìn)行控制,采用獨(dú)熱編碼,較好地實(shí)現(xiàn)了各底層模塊電路的鏈接。在設(shè)計(jì)中,采用異步復(fù)位,其好處是:重要綜合工具工藝庫有可異步復(fù)位觸發(fā)器,那么該觸發(fā)器的數(shù)據(jù)輸入通道就不需要額外的組合邏輯。同時(shí),采用了專用握手信號(hào)實(shí)現(xiàn)各模塊間有序的數(shù)據(jù)交換。



3 結(jié)論
    通過圖4可以看出,在50 MHz的時(shí)鐘頻率下電路很好地完成了二維DCT的轉(zhuǎn)換,遲滯也比較小,實(shí)驗(yàn)結(jié)果與所設(shè)計(jì)的電路功能完全一致。仿真界面如圖5所示。


    在Altera的CycloneⅡ平臺(tái)上,通過QuartusⅡ編譯報(bào)告可以看出,此電路共消耗了732個(gè)LE和256 b的RAM。

4 結(jié)語
    本文采用高效的流水線結(jié)構(gòu),并基于FPGA設(shè)計(jì)實(shí)現(xiàn)了H.264硬件電路,無論是硬件占用資源,還是處理精度,完全可以滿足H.264視頻偏碼的需要。

本站聲明: 本文章由作者或相關(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ì)日本游戲市場的投資。

關(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ù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(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)場 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)閉