《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > H.264中插補(bǔ)算法的VLSI設(shè)計(jì)與實(shí)現(xiàn)

H.264中插補(bǔ)算法的VLSI設(shè)計(jì)與實(shí)現(xiàn)

2008-05-06
作者:李 欣,,趙 為,,趙興亮,葛海

  摘 要: 提出了H.264標(biāo)準(zhǔn)中插補(bǔ)" title="插補(bǔ)">插補(bǔ)運(yùn)算的硬件設(shè)計(jì)方法。對(duì)亮度1/2像素插補(bǔ),,采用易于硬件實(shí)現(xiàn)" title="硬件實(shí)現(xiàn)">硬件實(shí)現(xiàn)的4抽頭濾波器取代6抽頭濾波器,;對(duì)色度1/8像素的插補(bǔ),,利用移位器和加法器實(shí)現(xiàn)了乘法運(yùn)算,。提出一種可重用的基于4×4塊的插補(bǔ)流水線結(jié)構(gòu)。
  關(guān)鍵詞: 插補(bǔ) 濾波器 VLSI設(shè)計(jì) H.264標(biāo)準(zhǔn)


  H.264/AVC[1]是由ITU和ISO/IEC的專(zhuān)家共同組成的聯(lián)合視頻小組JVT(Joint Video Team)發(fā)展和制定的新一代視頻編碼國(guó)際標(biāo)準(zhǔn),。在相同的視覺(jué)感知質(zhì)量下,,H.264的傳輸碼率比以往的H.263、MPEG-4等降低了50%左右[2],。
  運(yùn)動(dòng)矢量位移的精度越高,,則幀間剩余誤差越小,壓縮比越高,。H.263中采用了半像素估計(jì),,在H.264中則進(jìn)一步采用1/4像素精度的運(yùn)動(dòng)估計(jì)。分?jǐn)?shù)運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償用到的非整數(shù)像素點(diǎn)必須通過(guò)插補(bǔ)(interpolation)運(yùn)算來(lái)實(shí)現(xiàn),,因而插補(bǔ)運(yùn)算的硬件加速對(duì)整個(gè)H.264編解碼系統(tǒng)性能的提高有重要意義,。在H.264中采用了6抽頭FIR濾波器的內(nèi)插" title="內(nèi)插">內(nèi)插獲得1/2像素位置的值,則1/4像素值可通過(guò)線性?xún)?nèi)插獲得,。而對(duì)于常用的4:2:0的視頻格式,,亮度信號(hào)的1/4像素精度對(duì)應(yīng)于色度的1/8像素的運(yùn)動(dòng)矢量,因此需要對(duì)色度信號(hào)進(jìn)行1/8像素的插補(bǔ)運(yùn)算,。在H.264的幀間預(yù)測(cè)中,,4×4是最基本的處理單元,其7種模式都可以劃分為4×4塊來(lái)進(jìn)行處理,,因而基于面積和時(shí)間考慮的4×4模塊的插補(bǔ)電路具有良好的可重用性,。
  文獻(xiàn)[3]提出了使用4抽頭濾波器取代6抽頭濾波器的算法來(lái)實(shí)現(xiàn)亮度的1/2像素插補(bǔ),,利于硬件實(shí)現(xiàn)。本文在4抽頭濾波器的基礎(chǔ)上提出了可以處理4×4塊的流水線結(jié)構(gòu),,可以在一個(gè)時(shí)鐘內(nèi)完成27個(gè)1/2像素位置的插補(bǔ)運(yùn)算,。對(duì)色度1/8像素的插補(bǔ),本文提出的兩級(jí)處理的結(jié)構(gòu),,巧妙地利用移位器和加法器取代了乘法器" title="乘法器">乘法器,,節(jié)省了硬件開(kāi)支。


1 插補(bǔ)算法原理
  插補(bǔ)原理示意圖如圖1所示,。2個(gè)整數(shù)像素位置之間的1/2像素點(diǎn)像素如圖1(a)中的a,、b、aa等,,是利用一個(gè)帶權(quán)重的6抽頭有限沖擊響應(yīng)(FIR)濾波器對(duì)相鄰整數(shù)位置的像素值進(jìn)行內(nèi)插得到的,,權(quán)重值是(1/32,-5/32,,5/8,5/8,,-5/32,,1/32)。如:
  a=round((A-5*B+20*C+20*D-5*E+F)/32)      (1)
  h=round((A-5*G+20*H+20*I-5*J+K)/32)      (2)
  aa=round((a-5*b+20*c+20*d-5*e+f)/32)      (3)
   =round((h-5*i+20*j+20*k-5*l+m)/32)
  由于6抽頭FIR的結(jié)構(gòu)比較復(fù)雜,,文獻(xiàn)[3]提出的權(quán)重值為(-1/8,,5/8,5/8,,-1/8)4抽頭FIR在對(duì)圖像質(zhì)量" title="圖像質(zhì)量">圖像質(zhì)量和比特率影響很小的情況下,,可以很大程度地節(jié)省硬件資源。如圖1(b)中:
  a=round((-1*B+5*C+5*D-1*E)/8)          (4)
  h=round((-1*G+5*H+5*I-1*J)/8)          (5)
  aa=round((-1*b+5*c+5*d-1*e)/8)          (6)
   =round((-1*i+5*j+5*k-1*l)/8)
  最匹配的1/2像素位置確定以后,,1/4像素位置的像素由周?chē)恼麛?shù)像素位置像素和1/2像素位置像素線性插補(bǔ)得到,。
  在常用的4:2:0采樣中,亮度分量1/4像素精度的運(yùn)動(dòng)矢量應(yīng)用到色度分量需要1/8的像素精度,。在色度空間,,對(duì)整數(shù)位置的像素值進(jìn)行線性插補(bǔ)可以得到1/8像素精度的插補(bǔ)值。如圖1(b)所示,,1/8像素位置的像素a是周?chē)麛?shù)位置像素A,,B,C,,D的線性組合:
  a=round(8-x)*(8-y)*A+x*(8-y)*B+y*(8-x)*C+x*y*D/64 (7)
2 硬件結(jié)構(gòu)
2.1 亮度1/2像素插補(bǔ)電路
  4抽頭FIR與6抽頭FIR結(jié)構(gòu)比較如圖2所示,。由圖2可以看出,4抽頭FIR的結(jié)構(gòu)比6抽頭FIR易于硬件實(shí)現(xiàn),。實(shí)驗(yàn)表明前者的電路面積和關(guān)鍵路徑延時(shí)比后者分別減少了36.2%和16.0%,。


  4×4塊的1/2像素精度插補(bǔ)電路的流水線結(jié)構(gòu)圖如圖3所示,,共有16個(gè)4抽頭FIR,利用一個(gè)6×4的整數(shù)像素點(diǎn)陣列作為緩沖區(qū),,每次從存儲(chǔ)器中讀出8個(gè)整數(shù)像素點(diǎn),,分別用于5個(gè)水平4抽頭FIR的輸入。每個(gè)時(shí)鐘所有的像素點(diǎn)都會(huì)向下傳送一級(jí),,圖中虛線框處已經(jīng)計(jì)算出了整數(shù)像素點(diǎn)周?chē)乃?7個(gè)1/2像素值,,可以輸出到并行處理單元同時(shí)計(jì)算9個(gè)半像素位置的SAD(Sum of Absolute Difference)。該架構(gòu)處理一個(gè)4×4單元需要8個(gè)時(shí)鐘,,處理一個(gè)具有相同運(yùn)動(dòng)矢量的4×16塊需要20個(gè)時(shí)鐘,。


2.2 亮度1/4像素插補(bǔ)電路
  亮度1/4像素的線性插補(bǔ)可以用一個(gè)加法器和一個(gè)移位器實(shí)現(xiàn)。圖4為4×4塊1/4像素插補(bǔ)電路的結(jié)構(gòu)圖,, 采用兩級(jí)流水線,,輸入部分為18個(gè)像素點(diǎn),利用線性插補(bǔ)生成所需要的1/4像素位置像素,。在圖中虛線框部分可以計(jì)算出最佳1/2像素點(diǎn)周?chē)乃?/4像素點(diǎn),,輸出給并行處理單元計(jì)算9個(gè)1/4像素位置的SAD。該架構(gòu)完成一個(gè)4×4單元需要6個(gè)時(shí)鐘,,完成一個(gè)具有相同運(yùn)動(dòng)矢量的4×16塊需要18個(gè)時(shí)鐘,。


  H.264的幀間預(yù)測(cè)中,一個(gè)宏塊(MB)可劃分成16×16,、16×8,、8×16、8×8,、8×4,、4×8、4×4不同模式,。這7種模式都可以劃分為16個(gè)4×4塊分別進(jìn)行處理,。具有相同整像素運(yùn)動(dòng)矢量的縱向相鄰4×4塊可以連續(xù)處理以節(jié)省時(shí)鐘數(shù)。表1列出了亮度為1/2像素插補(bǔ)和1/4像素插補(bǔ)時(shí)流水線處理一個(gè)宏塊不同模式分別需要的時(shí)鐘數(shù),。


2.3 色度1/8像素插補(bǔ)電路
  如果利用乘法器來(lái)實(shí)現(xiàn)色度1/8像素精度的插補(bǔ)電路,,對(duì)每一個(gè)點(diǎn)的插補(bǔ)運(yùn)算都要用到8個(gè)乘法器,無(wú)論是面積還是時(shí)間都會(huì)有很大的開(kāi)銷(xiāo),。變換公式(7)可得公式(8),,可以看出其中含有如(9)式所示的公共運(yùn)算單元。
  a=round{{(8-y)[(8-x)×A+x×B]+y[(8-x)×C+x×D]}/64}        (8)
  cf=(8-h)×M+h×N                          (9)
  硬件設(shè)計(jì)采用兩級(jí)處理的結(jié)構(gòu),,采用圖5所示的CU單元處理公式(9),,色度1/8插補(bǔ)電路結(jié)構(gòu)如圖6所示。由于該結(jié)構(gòu)的兩級(jí)間比較平衡,,非常容易插入寄存器以減少關(guān)鍵路徑的延時(shí),。

3 實(shí)驗(yàn)結(jié)果
  使用VerilogHDL對(duì)本文中提到的設(shè)計(jì)進(jìn)行了實(shí)現(xiàn),,仿真工具使用VCS7.2,綜合工具使用Synopsys Design Compiler(SMIC 0.18μm工藝),。


  文獻(xiàn)[4]中使用6抽頭FIR的4×4塊插補(bǔ)電路流水線結(jié)構(gòu),,與本文使用的4抽頭FIR結(jié)構(gòu)進(jìn)行了比較,其電路性能如表2所示,。本文的設(shè)計(jì)在速度和面積方面均具有非常明顯的優(yōu)勢(shì),。使用H.264參考軟件JM7.3分別對(duì)亮度1/2像素插補(bǔ)運(yùn)算中使用6抽頭FIR和4抽頭FIR進(jìn)行仿真比較,采用了4個(gè)視頻序列Container,、Foreman,、News和Tenis。其中每個(gè)序列由30個(gè)QCIF(Quarter Common Intermediate Format)幀組成,,序列形式為IBBPBBPBBP,。H.264主要檔次,搜索半徑16,,使用5個(gè)參考幀,。4抽頭FIR與6抽頭FIR圖像質(zhì)量比較如表3所示。表中△b為平均碼率的增加,,△P為峰值信噪比(PSNR)的增加,。可以看出,,使用4抽頭FIR對(duì)圖像質(zhì)量和比特率的影響非常小。
  與其他的設(shè)計(jì)方法相比較,,本文提出的色度1/8像素的插補(bǔ)電路可以很大程度上節(jié)省硬件資源,。其性能比較如表4所示。與文獻(xiàn)[5]中的設(shè)計(jì)相比,,本文的設(shè)計(jì)關(guān)鍵路徑延時(shí)僅增加了1.5%,,門(mén)數(shù)減少了26%。


  本文介紹了亮度1/4像素精度下,,最常用的4:2:0采樣模式時(shí)插補(bǔ)電路的硬件設(shè)計(jì),,通過(guò)4抽頭FIR代替6抽頭FIR來(lái)實(shí)現(xiàn)亮度1/2像素插補(bǔ),通過(guò)移位器和加法器組成的兩級(jí)處理結(jié)構(gòu)來(lái)實(shí)現(xiàn)色度1/8像素插補(bǔ),,設(shè)計(jì)的電路具有面積小,、速度快的優(yōu)點(diǎn)。在此基礎(chǔ)上基于功耗和性能考慮的4×4塊的流水線結(jié)構(gòu)具有良好的可重用性,,可作為硬件加速器用于基于H.264的編解碼系統(tǒng),。
參考文獻(xiàn)
1 Joint Video Team.Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification.ITU-T Rec.H.264 and ISO/IEC 14496-10 AVC,2003
2 Wiegand T.Rate-constrained coder control and comparison of video coding standards.IEEE Trans on Circuits and Systems for Video Technology,,2003,;13(7):688~703
3 Lie, W N.Hardware-Efficient computing architecture for motion compensation interpolation in H.264 video coding. ISCAS′05,,2005:2136~2139
4 Chen T C,Huang Y W,,Chen L G.Fully utilized and reusable architecture for fractional motion estimation of H.264/AVC.In:Proc of ICASSP,,2004
5 Wang S Z.A new motion compensation design for H.264/AVC decoder.In:IEEE international symposium on ISCAS′05, 2005

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。