发明名称 高并行度的帧内预测器的实现方法
摘要 本发明属于视频编解码的集成电路设计领域,其特征在于:对于每个4×4大小块的16个像素点的17种不同预测模式的预测公式之间的相同运算,采用数字计算强度缩减的方法去除计算的冗余,提出了一种高并行度的帧内预测器的系统结构,可以每个时钟周期处理16个像素点的预测值。从实现结果来看,与采用可重构方法的设计相比,本发明在相同的并行度下减小了电路面积,简化了控制逻辑。
申请公布号 CN100413344C 申请公布日期 2008.08.20
申请号 CN200610113868.8 申请日期 2006.10.20
申请人 清华大学 发明人 李树国;杨晨
分类号 H04N7/32(2006.01);H04N7/26(2006.01) 主分类号 H04N7/32(2006.01)
代理机构 代理人
主权项 1. 高并行度的帧内预测器,其特征在于,该帧内预测器是用FPGA实现的,含有加法器模块adders,线性plane函数模块plane,选择模块select,以及控制模块control,其中:加法器模块adders,由8位加法器组、9位加法器组、10位加法器组、寄存器组、11位加法器组以及12位加法器组依次串接而成,用于计算当前每个4×4大小块的16个像素点的H.264的帧内预测模式0到帧内预测模式14的预测值,其中:8位加法器组,由22个8位加法器组成,其中每个加法器的输入信号是参考像素h1~h17以及v2~v17中的某两个像素,对于一个当前4×4大小块,设定如下坐标系:水平向右为x轴的正方向,竖直向下为y轴的正方向,x、y两轴的起点坐标都为-1,h1~h17表示当前4×4大小块上方的参考像素点,v2~v17表示当前4×4大小块左方的参考像素点,下同;9位加法器组,由21个9位加法器组成,其中每个加法器的输入信号是22个8位加法器的输出以及参考像素h9和v5中的某两个;10位加法器组,由8个10位加法器组成,其中每个加法器的输入信号是21个9位加法器的输出中的某两个;寄存器组,由8个10位寄存器组成,分别存储8个10位加法器的输出值;11位加法器组,由2个11位加法器组成,其中每个加法器的输入信号是8个10位寄存器的输出中的某两个;12位加法器组,由1个12位加法器组成,其输入信号是2个11位加法器的输出;线性plane函数模块plane,由常数计算模块和预测值计算模块依次串接而成,该plane模块根据块位置信号,对16×16大小的亮度块或者8×8大小的色度块中不同位置的4×4大小的块,计算16个像素点的H.264的预测模式15或者预测模式16的预测值,其中:常数计算模块,有两个输入端,其中的一个输入参考像素h1~h17和v2~v17,另一个输入信号指示当前要预测的块是亮度块还是色度块,输出是预测模式15或者预测模式16中的常数值a、b和c,其中:预测模式15是16×16大小的亮度块的预测模式,表示为:pred16×16<sub>L</sub>[x,y]=Clip1((a+b×(x-7)+c×(y-7)+16))/32,a=16×(p[-1,15]+p[15,-1]),b=(5×H+32)/64,c=(5×V+32)/64,<maths num="0001"><![CDATA[<math><mrow><mi>H</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>x</mi><mo>=</mo><mn>0</mn></mrow><mn>7</mn></munderover><mrow><mo>(</mo><mi>x</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><mi>p</mi><mo>[</mo><mn>8</mn><mo>+</mo><mi>x</mi><mo>,</mo><mo>-</mo><mn>1</mn><mo>]</mo><mo>-</mo><mi>p</mi><mo>[</mo><mn>6</mn><mo>-</mo><mi>x</mi><mo>,</mo><mo>-</mo><mn>1</mn><mo>]</mo><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths><maths num="0002"><![CDATA[<math><mrow><mi>V</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>y</mi><mo>=</mo><mn>0</mn></mrow><mn>7</mn></munderover><mrow><mo>(</mo><mi>y</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><mi>p</mi><mo>[</mo><mo>-</mo><mn>1,8</mn><mo>+</mo><mi>y</mi><mo>]</mo><mo>-</mo><mi>p</mi><mo>[</mo><mo>-</mo><mn>1,6</mn><mo>-</mo><mi>y</mi><mo>]</mo><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>其中Clip1函数的意义是:<img file="C2006101138680003C3.GIF" wi="485" he="186" />其中(x,y)是像素点的坐标,下同;预测模式16是8×8大小的色度块的预测模式,表示为:pred8×8<sub>c</sub>[x,y]=Clip1((a+b×(x-3)+c×(y-3)+16))/32,a=16×(p[-1,7]+p[7,-1]),b=(17×H+16)/32,c=(17×V+16)/32,<maths num="0003"><![CDATA[<math><mrow><mi>H</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>x</mi><mo>=</mo><mn>0</mn></mrow><mn>3</mn></munderover><mrow><mo>(</mo><mi>x</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><mi>p</mi><mo>[</mo><mn>4</mn><mo>+</mo><mi>x</mi><mo>,</mo><mo>-</mo><mn>1</mn><mo>]</mo><mo>-</mo><mi>p</mi><mo>[</mo><mn>2</mn><mo>-</mo><mi>x</mi><mo>,</mo><mo>-</mo><mn>1</mn><mo>]</mo><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths><maths num="0004"><![CDATA[<math><mrow><mi>V</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>y</mi><mo>=</mo><mn>0</mn></mrow><mn>3</mn></munderover><mrow><mo>(</mo><mi>y</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><mi>p</mi><mo>[</mo><mo>-</mo><mn>1,4</mn><mo>+</mo><mi>y</mi><mo>]</mo><mo>-</mo><mi>p</mi><mo>[</mo><mo>-</mo><mn>1,2</mn><mo>-</mo><mi>y</mi><mo>]</mo><mo>)</mo></mrow><mo>;</mo></mrow></math>]]></maths>预测值计算模块,有两个输入端,一个输入端接收所述的常数计算模块输出的H.264预测模式15或者预测模式16的常数a、b、c,另一个输入端指示当前要预测的块是亮度块还是色度块,按下式完成对16×16大小的亮度块或者8×8大小的色度块的每个像素点的预测值的计算:(a+b×dx+c×dy)-[b×(3-xp)+c×(3-yp)]其中(dx,dy)是由该4×4大小块在16×16大小的亮度块或者8×8大小的色度块内的位置(xb,yb)决定的一对系数,(xp,yp)是像素点在该4×4大小块内的位置坐标:dx=4×(xb-1),dy=4×(yb-1),用于16×16大小的亮度块,dx=4×xb,dy=4×yb,用于8×8大小的色度块,所述预测值计算模块共用28个加法器来实现对每个4×4大小块的16个像素点的预测值的计算;选择模块select,共有两个数据信号输入端,一个接收从模块adders输出的预测模式0到预测模式14的预测值,另一个接收从模块plane输出的预测模式15或者预测模式16的预测值,还有两个控制信号输入端,一个输入预测模式选择控制信号,另一输入是否存在参考像素的判别控制信号,该select模块通过一个多路选择器选择相应预测模式的四种可能的输出预测值:参考像素值,取相应的参考像素值作为输出值;效字128,表示4×4大小的亮度块按照2号预测模式进行预测时,当参考像素h2~h5和v2~v5都不存在时的预测值,或者16×16大小的亮度块按照11号预测模式进行预测时,当参考像素h2~h17和v2~v17都不存在时的预测值,或者8×8大小的色度块按照12号预测模式进行预测时,当参考像素h2~h5和v2~v5,或者h6~h9和v2~v5,或者h2~h5和v6~v9,或者h6~h9和v6~v9都不存在时的预测值;加法器的编号,表示取相应编号的加法器的输出作为预测值;plane模块的输出,表示取plane模块的输出作为预测值,总计输出16个像素点的预测值;控制模块control,输入信号指示当的要预测的块是亮度块还是色度块,输出是16×16大小的亮度块或者8×8大小的色度块中不同位置的4×4大小块的块位置(xb,yb)。
地址 100084北京市100084-82信箱