视频编码运动估计单元硬件电路的制作方法

文档序号:7816616阅读:275来源:国知局
视频编码运动估计单元硬件电路的制作方法
【专利摘要】为了克服现有技术中的缺陷,本发明所提出了一种视频编码运动估计单元的整像素运动估计电路,采用简化的1D脉冲阵列的电路结构。该电路提高了数据吞吐率,同时相比于之前设计的电路,节省了电路面积降低了功耗。
【专利说明】视频编码运动估计单元硬件电路

【技术领域】
[0001]本发明属于数字视频编解码【技术领域】,尤其涉及一种视频编码运动估计单元的整像素运动估计电路。
[0002]

【背景技术】
[0003]HEVC (H.265)是新一代的视频压缩标准,它大幅度提高了编码效率和图像质量,但增加了运算复杂度,运动估计、帧内预测、变换/量化等需要大量运算,尤其是运动估计模块的运算量占整个编码器运算量的70%以上,成为编码速度提高的瓶颈,因此有必要对运动估计单元进行硬件加速。虽然运动估计算法的运算量较大,但是运算过程简单且可并行处理,有利于使用硬件加速,能够极大提高该单元的处理速度。
[0004]基于上述情况先后提出许多运动估计单元的硬件电路,有六边形算法(HBS)的硬件实现、非对称十字型多层次六边形格点搜索算法(UMHexagonS)的硬件实现、全搜索运动估计算法的硬件实现等。这些电路结构能够有效地提高运动估计单元的计算速度,但是其数据吞吐率及电路的复杂度较高,不适合于HEVC的实现。
[0005]虽然,非专利文献1:《面向HEVC的高性能运动估计VLSI设计》,陈伟伟,上海交通大学,提出了一种面向HEVC的高性能运动估计电路,但是该电路的PE阵列使用的2D脉动架构,结构复杂且数据吞吐量小。
[0006]


【发明内容】

[0007]为了克服现有技术中的缺陷,本发明所提出了一种视频编码运动估计单元的整像素运动估计电路,采用简化的1D脉冲阵列的电路结构。该电路提高了数据吞吐率,同时相比于之前设计的电路,节省了电路面积降低了功耗。
[0008]本发明通过如下技术方案实现:
一种视频编码运动估计单元的整像素运动估计电路包括:控制器、搜索区RAM单元、绝对差值和SAD计算阵列单元、多分割模式PU计算单元和MV代价计算单元;控制器对电路各个组成单元进行控制,以流水的形式对数据进行处理;所述SAD计算阵列单元计算一个完整的IXU单元的所有⑶块的最佳运动匹配参数,所述SAD计算阵列单元由32X32个PEA运算单元构成,每个PEA能够计算4个相对应像素的SAD值,每个PEA由4个PE基本单元组成,每个PE计算一个当前像素与对应搜索区像素的差值;所述PE电路为1D结构的电路,其包括搜索区像素数据SRD寄存器、当前的像素数据CMD寄存器和残差绝对值计算器,当时钟脉冲到来时,SRD与CMD在残差绝对值计算器中求绝对值后输出,与此同时SRD传送给相邻的搜索区的SRD寄存器,在时钟的作用下,整个搜索区的数据依次通过SRD寄存器,从而并行地完成整个运动匹配区域的搜索。
[0009]所述整像素运动估计电路的工作原理为:流水一级根据所要计算的当前IXU的地址获取当前块的像素值,同时获得搜索区的像素数据存入搜索区RAM单元;流水二级将当前像素值和搜索区像素值依次输出到SAD计算阵列单元,进行SAD的计算;流水的第三级将SAD进行合并计算各种分割模式下的SAD值,同时根据匹配块的向量和预测向量来计算MV的代价值。
[0010]所述PU计算单元结构计算当前64X64像素块内所有I3U块的最佳匹配运动向量MV。
[0011 ] 根据HEVC协议,编码器的运动估计单元对每个IXU进行率失真优化模式选择时,即要确定每个LCU的一系列的编码参数,包括CU树分割,以及PU的分割,编码器需要遍历所有深度的CU块,每个CU块需要遍历所有可能的分割。这造成了运动估计编码的复杂度非常高。为了降低复杂度,本发明将每个CU块及运动估计块编码参数计算并行执行。
[0012]本发明的有益效果是:本发明为视频压缩整像素精度运动估计模块提供硬件实现的方法。该电路克服了前面所述的电路的缺点,能够提高数据吞吐率,同时相比于之前设计的电路,节省了电路面积降低了功耗。
[0013]

【专利附图】

【附图说明】
[0014]图1是本发明的视频编码运动估计单元的整像素运动估计电路结构示意图;
图2是本发明的SAD计算阵列单元结构图;
图3是本发明的PEA电路结构图;
图4是本发明的PE的电路结构图。
[0015]

【具体实施方式】
[0016]下面结合【专利附图】
附图
【附图说明】及【具体实施方式】对本发明进一步说明。
[0017]附图1是本发明视频编码运动估计单元的整像素运动估计电路结构图。硬件电路由控制器、搜索区RAM单元、SAD计算阵列单元、多分割模式PU计算单元和MV代价计算单元组成。该电路由控制器对电路各个组成单元进行控制,以流水的形式对数据进行处理。其流水处理过程如下:流水一级根据所要计算的当前LCU的地址获取当前块的像素值,同时获得搜索区的像素数据存入搜索区RAM单元;流水二级将当前像素值和搜索区像素值依次输出到计算SAD单元阵列,进行SAD的计算;流水的第三级将SAD进行合并计算各种分割模式下的SAD值,同时根据匹配块的向量和预测向量来计算MV的代价值。
[0018]附图2是SAD计算阵列单元的结构示意图。该阵列可以计算一个完整的IXU单元的所有⑶块的最佳运动匹配参数。该阵列由1024个PEA运算单元构成,每个PEA能够计算4个相对应像素的SAD值。ΡΕΑ(0,0)表示位于第一行第一列的计算单元,计算IXU左上角的2 X 2单元的像素SAD值。
[0019]附图3是SAD计算阵列单元中的每个PEA的电路结构示意图。每个PEA由4个PE基本单元组成,每个PE计算一个当前像素与对应搜索区像素的差值。
[0020]图4是PEA中PE的电路结构示意图。SRD为搜索区像素数据,CMD为当前的像素数据。当时钟脉冲到来时,搜索区数据与当前块数据求绝对值后输出,与此同时SRD数据传送给相邻的搜索区的SRD寄存器。在时钟的作用下,整个搜索区的数据依次通过SRD寄存器,从而并行的完成整个运动匹配区域的搜索。NSR (Next search Reg)即在下一个时钟到来时,搜索数据移动到NSR寄存器中。
[0021]本发明电路使用的是64x64的预算矩阵,是非专利文献1中的32x32预算矩阵运算能力的4倍,并且由于一次即可计算完整的一个LCU的代价,所以节约了非专利文献1中用于重构的缓存器。另外上文的PE阵列使用的2D脉动架构,结构复杂且数据吞吐量小。本发明使用的是1D脉动结构,更加简单,且数据吞吐量大,增加了运算速度。1D脉动结构,数据流只能往一个方向流动本发明中是从左到右,而2D脉动结构的数据流可以往两个方向流动(左右流动和上下流动)。
[0022]以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属【技术领域】的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
【权利要求】
1.一种视频编码运动估计单元的整像素运动估计电路,其特征在于:所述电路包括:控制器、搜索区RAM单元、绝对差值和SAD计算阵列单元、多分割模式PU计算单元和MV代价计算单元;控制器对电路各个组成单元进行控制,以流水的形式对数据进行处理;所述SAD计算阵列单元计算一个完整的IXU单元的所有⑶块的最佳运动匹配参数,所述SAD计算阵列单元由32 X 32个PEA运算单元构成,每个PEA能够计算4个相对应像素的SAD值,每个PEA由4个PE基本单元组成,每个PE计算一个当前像素与对应搜索区像素的差值;所述PE电路为ID结构的电路,其包括搜索区像素数据SRD寄存器、当前的像素数据CMD寄存器和残差绝对值计算器,当时钟脉冲到来时,SRD与CMD在残差绝对值计算器中求绝对值后输出,与此同时SRD传送给相邻的搜索区的SRD寄存器,在时钟的作用下,整个搜索区的数据依次通过SRD寄存器,从而并行地完成整个运动匹配区域的搜索。
2.根据权利要求1所述的整像素运动估计电路,其特征在于:所述整像素运动估计电路的工作原理为:流水一级根据所要计算的当前LCU的地址获取当前块的像素值,同时获得搜索区的像素数据存入搜索区RAM单元;流水二级将当前像素值和搜索区像素值依次输出到SAD计算阵列单元,进行SAD的计算;流水的第三级将SAD进行合并计算各种分割模式下的SAD值,同时根据匹配块的向量和预测向量来计算MV的代价值。
3.根据权利要求1所述的整像素运动估计电路,其特征在于:所述PU计算单元结构计算当前64X64像素块内所有I3U块的最佳匹配运动向量MV。
【文档编号】H04N19/436GK104301732SQ201410537198
【公开日】2015年1月21日 申请日期:2014年10月13日 优先权日:2014年10月13日
【发明者】左石凯, 王明江 申请人:哈尔滨工业大学深圳研究生院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1