一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法技术

技术编号:19516235 阅读:47 留言:0更新日期:2018-11-21 10:46
本发明专利技术提出了一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法,在视频编码DCT硬件实现领域,特别是在亮度帧内预测跟DCT变换在硬件实现上在同一个流水级的时候,能有效解决由于16x16预测模式DCT运算速度过慢而导致整个流水级时间延长而降低性能的问题,同时16x16预测模式DCT跟4x4DCT共用大部分电路,降低硬件成本。本发明专利技术采用技术方案是:共用4x4hadsad电路,对16个4x4块进行hadamard变换,将每个4x4的hadamard变换中产生的16个点的和保存下来。当16x16模式预测模式完毕,就得到16x16最优预测模式16个4x4块的所有点的和,即得到16x16的DCT变换后的dc系数矩阵。本方法能够缩短16x16做完16个4x4DCT变换才能做dc系数hadamard变换这段时间,提高了16x16预测模式DCT运算的速度,并减少电路面积。

【技术实现步骤摘要】
一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法
本专利技术涉及H264编码硬件实现领域,特别涉及16x16预测模式的DCT硬件实现。
技术介绍
随着视频编解码的不断发展,应用也越来越广,硬件需要支持的视频显示格式也越来越多,720p30fps,720p60fps,1080p30fps,1080p60fps,4k30fps等。这就对硬件设计需要的处理速度越来越高。目前视频编码性能的提升的瓶颈,主要是熵编码,帧内预测,帧间预测,变换量化,反变换反量化这几大块。而目前编码的主流设计方法,为了节约硬件成本,将帧内预测、变换量化、反变换反量化,重构做到同一个流水级,这就更加抑制了硬件编码的性能。H264编码的一般变换包括4x4DCT,8x8DCT以及16x16预测模式DCT。16x16预测模式DCT需要将16x16的宏块分成16个4x4块,并依次对16个4x4块做DCT,并抽取每一个4x4块做完DCT之后的矩阵的左上角dc系数,由16个dc系数组成一个4x4矩阵,再做变换量化。而16x16在做反变换(IDCT)的时候,需要等到16个dc系数的反变换量化的结果。如果按照算法的流程去设计,则16x16预测模式DCT的处理时间将成为流水级性能的瓶颈。所以迫切需要一种提高视频编码16x16预测模式DCT运算速度的硬件实现方法。
技术实现思路
本专利技术提出了一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法,能有效减少16x16预测模式DCT运算的时间,从而减少这级流水结构的整体时间,提高H264编码硬件实现的性能。同时16x16预测模式DCT运算电路共用4x4DCT电路,降低了硬件成本。本专利技术要求处理的目标系统满足以下条件:(1)帧内预测、变换量化、反变换反量化,重构同一个流水级设计。(2)16x16和4x4每种预测模式的求残差过程并行进行,16x16预测模式与4x4预测模式的变换量化、重构回路串行进行。(3)需要保存16x16每种预测模式的hadamard变换过程中产生的16个点的和。(4)4x4hadsad电路可以通过选择切换成4x4hadamard电路。本专利技术采用技术方案是:4x4帧内预测的9种预测模式,采用三套并行预测,对于一个4x4块,9种预测模式得到最优的cost,只需要6个周期,随后对最优cost对应的预测模式得到的残差进行重构运算,做变换量化,反量化反变换,重构。其中变换量化到反量化反变换整个过程需要7个周期。16x16的帧内预测得到预测值与原像素点值的残差之后,在4x4帧内预测在做变换到反变换期间,复用4x4算cost的电路。16x16的帧内预测每3个4x4块并行预测,每个4x4块的四种预测模式流水进行预测。全部复用4x4的并行算cost预测电路。在得到16x16的4种预测模式对应的4组16个4x4分块的和之后,通过得到的最优cost,选择其中一组,将该组的16个点全部右移一位,就得到16个4x4做完DCT之后的dc系数矩阵。再进行hadamard变换,dc量化,dc反hadamard变换,dc反量化,这部分硬件上也是复用4x4的DCT,Q,IDCT,IQ电路。等4x4,16x16,8x8各自算出了最优的cost,16x16的预测模式的dc变换之后的值也在这之前就得到了。本专利技术的有益效果是:(1)16x16预测模式的dc系数的变换,在16x16宏块的最优预测模式得到之前就能求出来,使得16x16预测模式做DCT得时候,不用叠加上算dc系数变换的这部分时间,有效提高了16x16预测模式DCT运算速度。(2)16x16与4x4预测模式串行交替进行,复用大部分电路,而没有增加各自算最优cost的时间,有效减少了硬件面积,而又没有使得性能下降。(3)4x4的hadsad变换电路与4x4的hadamard变换电路通过一个选择信号就能灵活切换,增加了硬件设计的灵活性,并减少了硬件面积。附图说明图1:一般设计结构跟本设计方法在结构上的对比图。图2:采用本方法的求16x16的预测模式,16x16的dc系数的变换量化反变换反量化结构图。图3:4x4求预测模式,DCT-Q-IQ-IDCT(DCT变换-量化-反量化-DCT反变换)的流水示意图,以及16x16求预测模式,复用4x4求预测模式电路的流水示意图。图4:4x4DCT,4x4IDCT,4x4HAD(哈达玛变换),4x4IHAD,4x4HAD_SAD等变换蝶形算法。具体实施方式本专利技术的具体实现,详细描述如下:从16x16预测模式到重构整个结构来看,如图1所示,其采用本设计方法部分,先是从sram中读取每一个4x4块的原始像素,通过算最优cost电路(S103),就能得到16x16最优预测模式,并得到对应的16个4x4块dc变换(HAD-Q-IHAD-IQ(哈达玛变换-量化-反哈达玛变换-反量化))后的值。如果最终该16x16宏块的最终最优预测模式是16x16,则需要将该宏块分成16个4x4块,分别做DCT-Q-IQ-IDCT。采用本设计方法能将每个4x4块的DCT-Q-IQ-IDCT流水进行,其中在IDCT的时候,需要4x4块的经过变换后的ac系数以及dc系数,又因为dc系数的变换在S103模块已经得到,通过S104直接传输到IDCT模块。所以不会影响每个4x4块从变换到重构的流水进行。而按照算法流程设计,读取数据,算最优cost(S101),在16x16的变换重构通路,需要先求出16个4x4块DCT的结果,再将每个4x4的变换后的矩阵左上角的dc系数抽取出来,组成新的矩阵,再做HAD-Q-IHAD-IQ(S102),然后才能做IDCT,重构。所以这种设计方法比本设计方法多了算dc系数变换的时间。16x16预测模式电路的具体实现,如图2所示。16x16按4x4分成16个块,每三个块并行执行(S202),每个块内部的4种预测模式流水运行(S201),具体结构如图3所示。对16x16其中的一个4x4块,从sram读取数据,选择4种预测模式(DC的三种预测模式合并为一种,由16x16整个宏块左边以及上边是否可以参考为条件选择)的其中一种预测模式,进行预测值减去原像素值得到的残差绝对值,进行hadamard变换,hadamard采用蝶形算法设计,共用4x4的hadsad蝶形结构,如图4。Hadsad(HAD_SAD)蝶形结构的行变换跟列变换的算法结构一样,其列变换跟hadamard(HAD)的蝶形算法区别在最后的结果,hadsad的S405,S406刚好跟had的S402*2,S403*2顺序掉换一下,所以电路复用上,只需要把这个不一致的地方做成可选择就行。从图4也可以看出4x4DCT跟4x4HAD的蝶形算法结构区别在,中间的蝶形参数有差异以及列变换的最后结果是否除以2。而4x4IHAD跟4x4IDCT的蝶形算法结构仅仅是蝶形参数不一样。所以4x4DCT,4x4HAD,4x4hadsad之间都可以互相切换。另外比较重要的一点是,从4x4DCT蝶形算法可以看出,DCT变换之后得到左上角的点,其实就是4x4矩阵16个点的和。4x4HAD_SAD(hadsad)的S404也是该矩阵16个点的和,4x4HAD的S401未除以2之前也是该矩阵16本文档来自技高网...

【技术保护点】
1.一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法,其特征在于该方法的实现步骤如下:步骤1、利用4x4DCT与4x4HAD变换的特点,在做16x16预测模式的时候,就把每一个4x4HAD变换期间产生16个点的和保存下来;步骤2、在4x4预测模式做DCT‑Q‑IQ‑IDCT期间,16x16预测模式共用4x4预测模式的预测电路结构,在4x4预测模式做预测期间,16x16预测模式的dc系数做HAD‑Q‑IHAD‑IQ。

【技术特征摘要】
1.一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法,其特征在于该方法的实现步骤如下:步骤1、利用4x4DCT与4x4HAD变换的特点,在做16x16预测模式的时候,就把每一个4x4HAD变换期间产生16个点的和保存下来;步骤2、在4x4预测模式做DCT-Q-IQ-IDCT期间,16x16预测模式共用4x4预测模式的预测电路结构,在4x4预测模式做预测期间,16x16预测模式的dc系数做HAD-Q-IHAD-IQ。2.根据权利要求1所述的方法,其特征在于:其所述步骤1,4x4矩阵进行DCT变换之后,左上角的点是该4x4矩阵所有点的累和,而4x4矩阵进行HAD变换之后,左上角的点是该4x4矩阵所有点的累和再除以2,把每一个4x4HAD列变换之后未除以2之前左上角的值保存下来。3.根据权利要...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:珠海亿智电子科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1