专利名称:运动图像编码中的运动搜索装置的制作方法
技术领域:
本发明涉及在运动图像编码中使用脉动阵列(Systolic Array)进行运动搜索的 运动图像编码中的运动搜索装置。
背景技术:
在运动图像编码中,运动矢量的检测所需的运算量庞大,为了实现其运算处理的 高速化,开发出使用了脉动阵列的运动搜索装置并得到实用(参考非专利文献1、专利文献 1、非专利文献2、专利文献2)。 脉动阵列是一种规律地排列多个处理器元件(以下记为PE),使运算对象数据以 流水线方式流过多个PE,从而并行高速地执行基于多个PE的运算处理的运算装置。也称为 PE阵列。 特别是在要求高速的运动图像编码处理的运动搜索装置中,在参考图像的运动搜 索范围内反复进行原图像的编码对象块与参考图像之间的像素值的差分绝对值和(SAD) 的计算的处理中,通过利用所述PE阵列,能够实现运动矢量检测的高速化。
图9A示出以往的运动搜索装置中的PE阵列的结构例。该例子的结构是通过8个 处理器元件PEOO PE31,来算出4X2像素的原图像与参考图像之间的差分绝对值和。也 可以是通过增加PE数,算出例如4X4像素或者8X8像素这样的单位的差分绝对值和的结 构。另外,还可以组合多个图9A所示的PE阵列40,构成nXm像素(n > 4,m > 4)的差分 绝对值和的运算电路。 在PE阵列40中,有原图像输入数据SMB、4条参考图像输入数据RA00、RA01、RA10、 RAll、以及参考图像切换控制输入信号RASW的输入端子,其中,该参考图像切换控制输入 信号RASW控制用于选择要运算的参考图像输入数据的选择器。作为输出端子,有差分绝对 值累加结果输出ADOUT的输出端子。 如图9B所示,各PE具有原图像输入数据的输入端子MBin ;来自左邻PE的加法 值的输入端子ADDin ;向右邻PE的加法值的输出端子ADDout ;以及2条参考图像输入数据 的输入端子RAinO、RAinl。 图10A IOC是说明图9A所示的PE阵列40的动作的图。假设例如对于如图10A 所示的原图像的4X2的像素组(像素值c00 c31),进行用于搜索在图10B所示的参考图 像(像素值xOO,x01,...)之中差分绝对值和最小的部分的运算。 在图IOC中,各PEOO、 PEIO、 PE20、...中,在最初的8周期(时钟CLK)中依次输 入并保持原图像的像素值c00、 clO、 c20、 。在周期1中,PEOO输入原图像的像素值cOO 与参考图像的像素值xOO,算出其差分绝对值SOO = IcOO-xOOl 。 在下一周期2中,PEOO输入参考图像的像素值xlO,算出其差分绝对值和SOI = cOO-xlO I 。 PEIO算出对PEOO在周期1中算出的值SOO加上原图像的像素值clO与参考图 像的像素值xlO的差分绝对值后的值SIO。在下一周期3中,PE00输入参考图像的像素值x20,算出其差分绝对值和S02 =
3c00-x20 I 。 PE10算出对PEOO在周期2中算出的值SOI加上原图像的像素值clO与参考图 像的像素值x20的差分绝对值后的值Sll。 PE20算出对PE10在周期2中算出的值SIO加 上原图像的像素值c20与参考图像的像素值x20的差分绝对值后的值S20。
如上那样,如果各PEOO PE31以流水线方式执行运算,则从PE阵列40的输出端 子ADOUT最初输出cOO c31与xOO x31的差分绝对值和,在下一周期输出cOO c31 与xlO x41的差分绝对值和,再下一周期输出cOO c31与x20 x51的差分绝对值和, 这样就在每个周期依次输出运动矢量的搜索范围内的差分绝对值和(详细内容参考非专 利文献1、2和专利文献1、2)。 图11示出PE阵列40的定时图。在图11中,HOL匿B表示对各PEOO PE31保持 原图像输入数据SMB并指示开始运算的启动信号,CLK表示时钟,HOLDSEL表示参考图像切 换控制输入信号。在图11中,用参考图像的像素坐标(x,y)表示参考图像的像素值。例如 (O,O)相当于图lO所示的像素值xOO。对PE阵列40依次提供参考图像的各像素值,但从 参考图像存储器的像素值读出是考虑对存储器的像素的存储方法的情况或为了减少存储 器存取的次数而通常集中多个像素进行。图11示出如下例子在CLKO,从参考图像存储器 同时输入参考图像的像素值(O,O) (6,0)和(O,l) (6,1),在CLK8,从参考图像存储器 同时输入参考图像的像素值(0,2) (6, 2)和(0,3) (6, 3)。 在CLKO读入的7像素X 2的数据,在从CLK1开始的7时钟中,最初的7像素被依 次提供给PE阵列40,在从CLK5开始的7时钟中,另外的7像素被依次提供给PE阵列40。 CLK9时,输出搜索原点位置坐标(O,O)处的差分绝对值累加结果。在CLKIO,输出搜索原点 位置坐标(l,O)处的差分绝对值累加结果。 图12示出从参考图像存储器的读取定时。如前所述,在最初的周期,从参考图像 存储器读出7像素X2的数据,但由于无法从相同的存储器(memory)存储体(bank)中同 时读出两个数据,因此例如针对图像的每行,如BankO、 Bankl、 Bank2、 BankO...这样地,将 数据分给各存储体进行存储。由此避免存储体冲突,使得能够同时从参考图像存储器中读 出例如BankO和Bankl的数据。 在具备如上所述的从参考图像存储器的读出机构的运动搜索装置中,从参考图像 的搜索范围中的最下行起为了进行下一运动搜索而移动到最上行时,为了不使PE阵列40 中的运算时间中产生空闲,需要一次读出7像素X3的数据,即在读出最下行的数据的同时 读出最上2行的数据。图12中的在周期32时的读出与此相应。S卩,在周期32中,需要同 时读出开头为(0,8)的最下行l条和开头为(4,0)与(4,1)的2条最上行的数据。这里对 搜索范围的行数为奇数时的例子进行说明,但偶数时也同样。 在MPEG-2等以往的图像编码方式中的运动搜索中,由于不需要进行参考图像的 参考位置超出画面外的搜索,因此即使同时读出最下行1条与最上行2条的数据时,各自的 存储体不同,也不会产生因存储体冲突造成的存储器读出延迟的问题。
非专利文献1 :南俊宏、近藤利夫、村主一仁、笠井良太、"1次元^ ^卜'J '7夕7 ^一型全探索動^《々卜^検出器0提案(一维脉动阵列型全搜索运动矢量检测器的提 案)"、电子信息通信学会论文志D-I, Vol. J78-D-I, No. 12, pp. 913-925, 1995年12月。
非专利文献2 :南俊宏、长沼次郎、"于^ ^ -匕° '7夕探索(適L t動t《夕卜A検 出器構成方法O提案(适用于可伸縮搜索的运动矢量检测器构成方法的提案)"、电子信息通信学会论文志D-II, Vol. J87-D-I1, No. 11, pp. 2007-2024,2004年11月。 专利文献1 :日本专利第3127980号公报 专利文献2 :日本专利公开特开2005-136455号公报 图13A 13C是示出检测运动矢量的搜索范围的图。在运动搜索中,为了找出具 有与图13A所示的原图像200中的编码对象块201最接近的像素值组的参考图像100的位 置,以参考图像100中的、例如编码对象块的坐标位置为搜索中心101,从预先决定的大小 的搜索范围102中一点一点地挪动并依次截出编码对象块尺寸的像素值组,算出与编码对 象块201的像素值的差分绝对值和(SAD)。以在搜索范围102内算出的差分绝对值为基础 进行运动评价,决定运动矢量。 例如在H. 264编码方式中规定了可以将此运动搜索扩展至参考图像100以外进 行。S卩,在H. 264中,如图13B所示,采用了当编码对象块201的位置位于靠近原图像200的 图像端部的位置时,搜索范围102扩大至参考图像100的外侧的方法。此时,参考图像100 中的画面外的像素值成为如图13C所示,对于画面上的外侧,使用复制了参考图像100的最 上段像素值的值,对于画面左的外侧,使用复制了参考图像100的最左端列的像素值的值。 对于参考图像100的最下段、最右端也同样。 作为使用图9A所示的PE阵列40进行图13C所示的对画面外使用复制了像素值 的值的情况下的运动搜索时的最简单的处理方法,可以考虑以下方法将1参考图像的参 考图像存储器的尺寸取为比参考图像的尺寸大画面外搜索范围,在存储参考图像时预先将 画面外像素值设定为与画面端部像素值相同的值。但是,这种方法存在额外需要参考图像 存储器的硬件量的问题。 作为其他方法有在从参考图像存储器读出像素值时,如果搜索范围在画面外,则 读出画面端部像素值的方法。但是,这种方法会产生如以下说明那样的存储体冲突的问题。
图14A、14B是说明存储器存储体结构与画面外像素读取时的存储体冲突的问题 的图。在图14A、14B中,LAX表示X方向的逻辑地址,LAY表示Y方向的逻辑地址。另夕卜,
#0、#1.....#5表示存储器存储体的存储体编号。在存储器存储体的存储体编号不同时,能
够同时读取数据,但来自存储体编号相同处的数据由于存储体冲突而无法同时读取。
如图14A所示,运动的搜索范围在画面内时,从搜索范围的最下行起向最上行移 动搜索时,同时读出的数据是以粗框表示的存储体编号为#2的最下行与存储体编号为 #0(以及#3)和#1(以及#4)的2条最上位行,不会产生存储体冲突。这与以往技术相同。
但是,运动的搜索范围例如在图14B所示的上画面外时,从搜索范围的最下行起 向最上行移动搜索时,由于在画面外需要使用复制了画面端部像素值的值,因此代替读出 LAY = 8的最下行与LAY = 0禾P LAY = 1的2条最上位行数据,读出LAY = 8的最下行与 LAY = 5的画面端部行的数据。但是,由图可知,LAY = 8的行和LAY = 5的行的存储体编 号都是糾,由于相同因此产生存储体冲突,无法同时读出这些数据。 为了解决这个问题,如果增加存储器的存储体数,则存在存储器存储体结构变得 复杂的问题,另外,如果使一个数据的读出等待另一个数据的读出结束为止,则存在PE阵 列40中的流水线处理流产生混乱,运算时间变长的问题。 例如假设由于存储体冲突而读出发生冲突的一个数据花费8周期的多余的时间 时,按照大概的试算则成为约25%的开销。这是因为,在没有存储体冲突时,可以考虑用4次读出时间读出纵向全部9行,与此相对,在有存储体冲突时,由于无法同时读出最后1行 与最上2行,所以读出纵向全部9行需要花费5次的时间。 归纳以上的问题点进行说明则如以下所示。使用图9A所示的PE阵列(脉动阵 列)40构成运动矢量检测时,需要同时读出多行参考图像的像素。因此,对于有同时读出可 能性的行,需要分配给存储器上的其他存储体。 为了在允许画面外运动矢量的H. 264等中适用这种方式,需要在存储器中额外存 储画面外像素(像素值为边界像素的值)。因此存在存储器的硬件量增加的问题。但是,当 不具有用于存储画面外像素的存储器时,脉动阵列的读出图案在包括画面外像素时变得不 规则,存在如图14B所示那样的产生存储体冲突,从而无法进行高速运算这样的问题。
发明内容
本发明谋求解决上述问题,其目的在于提供一种运动搜索装置,无需增加画面外 像素存储用的存储器,且不会产生存储体冲突。 本发明中,在使用利用多个处理器元件(PE)并行执行运算的PE阵列的运动搜索 中,在与编码对象块的差分绝对值和的算出中所使用的参考图像的像素组的最上行在画面 外时,读出画面内的最上行,进而为了避免同时读出搜索范围的最下行与下一搜索范围的 最上行时的存储体冲突,与之前行的读出同时地先行读出最下行,提早读出定时。先行读出 的最下行数据保持在移位寄存器等数据保持电路中,在PE阵列需要运算的时刻从数据保 持电路提供。 另外,当搜索范围的像素在参考图像的水平方向的画面外时,在行读出后,复制画 面端像素值。此外,当垂直方向之下在画面外时,可以复制已经读取的画面端行来直接使 用。 具体而言,本发明提供一种运动图像编码中的运动搜索装置,该运动搜索装置包
括PE阵列部,通过利用多个处理器元件并行执行运算,算出原图像与参考图像的差分绝
对值和;存储器,存储作为运动搜索对象的参考图像的像素数据;存储器读取部,从所述存 储器中读出参考图像的像素数据;像素排序部,对从所述存储器中读出的像素数据进行排
序并作为对所述PE阵列部的输入;评价部,基于由所述PE阵列部算出的差分绝对值和,检 测并评价参考图像的规定搜索范围中的运动矢量;以及控制部,控制这些各部进行的运动 搜索,其特征在于,所述存储器读取部包括冲突存储体先行读出控制部,该冲突存储体先行 读出控制部进行如下控制当同时向所述PE阵列部输入的多行像素数据被存储在所述存 储器中的同一存储体时,以行单位错开从所述存储器读出该多行像素数据的读出定时,在 比向所述PE阵列部的输入所需的定时更早的定时读出像素数据,所述像素排序部包括读 入数据保持电路,该读入数据保持电路将由所述存储器读取部在比向所述PE阵列部的输 入所需的定时更早的定时读出的行的像素数据保持至向所述PE阵列部的输入定时为止。
另外,在上述发明中,其特征在于,所述像素排序部包括垂直方向复制部,该垂直
方向复制部当运动搜索范围的区域在参考图像的垂直方向的画面外区域时,复制参考图像 中的画面边界部的行的像素数据作为画面外区域的像素数据,并作为对于所述PE阵列部
的输入。 另外进而,在上述发明中,其特征在于,所述像素排序部包括水平方向复制部,该水平方向复制部当运动搜索范围的区域在参考图像的水平方向的画面外区域时,在水平方 向上复制参考图像中的相同行的画面边界部的像素数据作为画面外区域的像素数据,并作 为对于所述PE阵列部的输入。 根据本发明,在使用PE阵列进行的运动搜索中,也能够检测画面外运动矢量。特 别是无需具有画面外(垂直方向)用存储器,并且也无需具有画面外(水平方向)用存储 器。另外,无需增加存储器存储体的存储体数,就能够避免存储体冲突。
图1A是说明本发明的概要的图。 图IB是说明本发明的概要的图。 图2是本实施方式所涉及的运动搜索装置的整体结构图。 图3是存储器读取部的详细结构图。 图4是像素排序部的详细结构图。 图5A是说明水平方向复制部进行的像素值的复制方式的图。 图5B是说明水平方向复制部进行的像素值的复制方式的图。 图6是示出水平方向复制部的电路结构例的图。 图7是示出垂直方向复制部的电路结构例的图。 图8是示出本实施方式中的从存储器读取参考图像数据的读取定时的图。 图9A是示出以往的运动搜索装置中的PE阵列的结构例的图。 图9B是示出PE的结构例的图。 图10A是说明PE阵列的动作的图。 图10B是说明PE阵列的动作的图。 图10C是说明PE阵列的动作的图。 图11是示出PE阵列的时序图的图。 图12是示出从参考图像存储器的读取定时的图。 图13A是示出检测运动矢量的搜索范围的图。 图13B是示出检测运动矢量的搜索范围的图。 图13C是示出检测运动矢量的搜索范围的图。 图14A是说明存储器存储体结构与画面外像素读取时的存储体冲突的问题的图。 图14B是说明存储器存储体结构与画面外像素读取时的存储体冲突的问题的图。 符号说明 1存储器读取部 2像素排序部 3存储器 4PE阵列部 5评价部 6控制部 IO冲突存储体先行读出控制部 ll逻辑地址生成部
12画面外判定部 13逻辑地址/实际地址转换部 14存储器存取部 20读入数据保持电路 21水平方向截出部 22水平方向复制部 23并行/串行转换部 24垂直方向复制部 25垂直方向排序部 30参考图像存储器
具体实施例方式
图1A、1B是说明本发明的实施方式的概要的图。在图1A所示的参考图像存储器 30中,搜索范围的最下行数据Data3位于存储器的存储体a,下一搜索范围的最上行数据 Datal和Data2分别位于存储体a、存储体b。为了将这些数据提供给PE阵列部4,想要从 参考图像存储器30同时读出时,由于Datal和Data3存在于相同的存储体a中,因此产生 存储体冲突。 所以,图1B所示的存储器读取部1的冲突存储体先行读出控制部IO,在检测画面 外的搜索范围中的运动矢量时,在搜索范围的最下行与最上2行之间产生存储体冲突的情 况下,进行控制以使与之前行的读出同时地先行读出最下行数据Data3 。
像素排序部2按照PE阵列部4中的运算顺序对从存储器3中读出的像素数据进 行排序,并提供给PE阵列部4。特别是将先行读出的最下行数据Data3保持于读入数据保 持电路20中,在PE阵列部4需要输入的时刻,提供给PE阵列部4。 另外,像素排序部2中的水平方向复制部22,在检测水平方向的画面外的搜索范 围中的运动矢量时,复制画面端的像素值并提供给PE阵列部4。垂直方向复制部24,当搜 索范围的区域在上画面外或者下画面外时,复制画面上边界或者画面下边界的像素值并提 供给PE阵列部4。 图2是本实施方式所涉及的运动搜索装置的整体结构图。另外,图3是存储器读 取部1的详细结构图,图4是像素排序部2的详细结构图。 存储器读取部1和像素排序部2以外的各部与使用以往的脉动阵列的运动搜索装 置的结构相同。存储器3存储原图像和参考图像的像素数据。此外,对于原图像的像素数 据,也可以存储于其他存储器中,并从输入端子输入。PE阵列部4按照编码对象块的尺寸使 用多个如图9A、9B中说明那样的由多个处理器元件(PE)、以及选择器或加法电路、寄存器 等组成的PE阵列40而构成。评价部5根据PE阵列部4的输出即差分绝对值和(SAD :Sum of Absolute Difference)、以及运动矢量MV与预测运动矢量PMV的差分等编码的代价信 息,评价运动矢量,并向控制部6返回评价结果。 控制部6通过程序控制进行运动搜索装置整体的控制。对于存储器读取部l,控制 部6指定要搜索的区域(中心运动矢量MV)并指示搜索的开始。存储器读取部1将表示搜 索范围的逻辑地址转换为存储器3中的实际地址,进行对于存储器3的读取请求。另外,进
8行搜索范围是否在画面外的检查,在画面外时,向像素排序部2通知该画面外信息。像素排
序部2进行从存储器3中读出的像素数据的截出和排序,提供给PE阵列部4。 如图3所示,存储器读取部1包括逻辑地址生成部11、画面外判定部12、逻辑地
址/实际地址转换部13、存储器存取部14。逻辑地址生成部11和逻辑地址/实际地址转换
部13与以往装置相同。逻辑地址生成部11根据由控制部6指定的指定要搜索的区域的中
心运动矢量MV的信息,生成表示图14A、 14B所示的搜索范围的相对的地址的逻辑地址LAX、
LAY。 画面外判定部12判定逻辑地址生成部11生成的逻辑地址是在参考图像的画面内 还是在画面外,在画面外时,向存储器存取部14和像素排序部2发送画面外信息。逻辑地 址/实际地址转换部13进行处理以将逻辑地址生成部11生成的逻辑地址转换为存储器3 中的存储有实际的像素数据的实际地址。在对存储器3存储参考图像时,存储参考图像的 开头实际地址,由此能够容易进行从该逻辑地址向实际地址的转换。此外,对于由控制部6 事先通知的原图像中的编码对象块的地址,也进行向实际地址的转换。
转换的实际地址被发送到存储器存取部14,存储器存取部14以按照图8后述的定 时发送对于存储器3的读取请求。特别是,当搜索范围包括上画面外时,冲突存储体先行读 出控制部10进行用于避免图1中说明的存储体冲突的存取控制。 如图4所示,像素排序部2包括水平方向(X方向)截出部21、水平方向复制部
22、并行/串行转换部23、垂直方向(Y方向)复制部24、以及垂直方向排序部25。其中,水
平方向截出部21、并行/串行转换部23、垂直方向排序部25与以往装置相同。 从存储器3读出到像素排序部2的数据,每1行包括16像素的数据。因此,水平
方向截出部21从读出的数据之中截出运动搜索所需的8像素X3行的数据。 水平方向复制部22在基于由画面外判定部12通知的画面外信息进行检测水平方
向的画面外运动矢量的运算时,进行复制画面边界(画面端)像素值作为画面外像素数据
的处理。 图5A、5B是说明水平方向复制部22进行的像素值的复制方式的图。在图5A、5B 中,EILRFLG为左右区域标志,其为"00"时表示搜索区域全部存在于画面内,"10"时表示画 面端存在于左侧,"01"时表示画面端存在于右侧。EIXLVAL为距左画面端的X方向的距离, EIXRVAL为距右画面端的X方向的距离。D0 D7为像素值的数据,MSB表示8像素的数据 列的最上位侧数据,LSB表示最下位侧数据。 水平方向复制部22作为画面外信息从画面外判定部12接收到EILRFLG、EIXLVAL、 EIXRVAL等信息时,根据其值,在EILRFLG = 10时,进行图5A(A1) 、 (A2)所示的X方向的像 素值的复制,在EILRFLG = 01时,进行图5B(B1)、 (B2)所示的X方向的像素值的复制。
图6示出水平方向复制部22的电路结构例。在图6中,EDI0-EDI7分别为图5A、 5B所示的D0 D7像素值的输入数据。另外,XEIXCP00 XEIXCP07分别是X方向像素复 制处理数据0 X方向像素复制处理数据7,是画面端数据如图5所示向画面外复制后的结 果的输出数据。 在水平方向复制部22中,根据EILRFLG、 EIXLVAL、 EIXRVAL的输入信号,由图6所 示的选择器选择像素值的输入数据EDIO EDI7,从而进行图5A、5B所示的X方向的数据的 复制。
9
图4所示的并行/串行转换部23将水平方向复制部22输出的8像素X3行的像素数据,对各行1像素1像素地按顺序截出,转换为1像素X3行的像素数据并输出。
垂直方向复制部24当搜索范围的区域在上画面外或者下画面外时,进行复制画面上边界或者画面下边界的像素值的处理。 图7示出垂直方向复制部24的电路结构例。在图7中,EDIO EDI2为3行的输入数据0 3。 EIUDFLG是表示在画面的上侧还是在下侧的上下区域标志,是作为画面外信息从画面外判定部12接收的信号。该标志为"00"时表示在画面内。EIYSFTSEL是输入数据Y方向移位控制信号,表示是否为了向垂直方向(Y方向)进行复制而移位输入数据。EITRG为存储器读取使能信号,表示从存储器3读取到数据的定时。 另外,XEIYCP00 XEIYCP02为3行的Y方向像素复制处理数据输出0 2,在通常的搜索中,使用其中的2行数据,但从搜索范围的最下行起向下一搜索范围的最上行移动时,输出3行数据。 定时生成电路241为控制对读入数据保持电路20的数据保持的电路。读入数据保持电路20如图1A、1B中说明那样,将先行读出的最下行数据保持8周期,使其延迟8周期输出。读入数据保持电路20例如由8级的移位寄存器构成,根据定时生成电路241的移位使能信号,使预先读取的搜索范围的最下行数据延迟8周期。 垂直方向排序部25对垂直方向复制部24输出的l像素X3行的像素数据进行排序,向PE阵列部4输出数据。垂直方向排序部25进行的像素数据的排序处理与在MPEG-2等中所使用的以往的运动搜索装置中的排序处理相同。 图8示出本实施方式中的从存储器3读取参考图像数据的读取定时。
本实施方式中的周期24(CLK24)为止的数据读出、以及对PE阵列的数据的供给定时与在图12中说明的以往的运动搜索装置的定时相同。图12所示的以往装置中,在周期24中,同时读出存储体编号为#0的(0,6)至(6, 6)和存储体编号#1的(0,7)至(6, 7)的2行像素数据,在下一个第8周期的周期32中,同时读出最下行即存储体编号为#2的(0,8)至(6,8)、最上行的存储体编号为#0和#3的(4,0)至(10,0)、次最上行的存储体编号为#1和#4的(4,1)至(10, 1)共计3行像素数据。这是因为在第32周期以后的读出中不会产生存储体冲突。 与此相对,本实施方式中,如果按照与以往装置相同的读出定时,则特别是在搜索画面外时存储器存取变得不规则,由此会产生存储体冲突,因此如下那样进行读出。在周期24中,读出存储体编号为#0的(0,6)至(6, 6)和存储体编号#1的(0,7)至(6, 7)的2行像素数据,与此同时读出最下行即存储体编号为#2的(0,8)至(6,8)的像素数据。对于该最下行读出的像素数据,在8周期后输出到PE阵列,因此在读入数据保持电路20中保持数据。 在下一个第8周期的周期32中,从存储器3同时读出最上行的存储体编号为#0和#3的(4,0)至(10,0)和次最上行的存储体编号为#1和#4的(4, 1)至(10, 1)的2行像素数据,对于PE阵列,以每个周期按照像素单位输出(4,0)至(IO,O)的像素数据和(0,8)至(6,8)的像素数据。到达周期36时,进一步向PE阵列输出(4,1)至(10, 1)行的像素数据。 如上所述,通过改变读出的定时, 此最上行在画面外时,即使存储器存取变得不
10规则,发生之前的最下行的存储体即#2的存储体读出,由于之前的最下行已经在前面读出,因此也不会产生存储体冲突。 以上说明的运动搜索装置可以由LSI构成。 本国际申请主张基于2007年9月13日申请的日本国专利申请第2007-237534号的优先权,本国际申请中援用其全部内容。
权利要求
一种运动图像编码中的运动搜索装置,该运动搜索装置包括PE阵列部,通过利用多个处理器元件并行执行运算,算出原图像与参考图像的差分绝对值和;存储器,存储作为运动搜索对象的参考图像的像素数据;存储器读取部,从所述存储器中读出参考图像的像素数据;像素排序部,对从所述存储器中读出的像素数据进行排序并作为对所述PE阵列部的输入;评价部,基于由所述PE阵列部算出的差分绝对值和,检测并评价参考图像的规定搜索范围中的运动矢量;以及控制部,控制这些各部进行的运动搜索,其特征在于,所述存储器读取部包括冲突存储体先行读出控制部,该冲突存储体先行读出控制部进行如下控制当同时向所述PE阵列部输入的多行像素数据被存储在所述存储器中的同一存储体时,以行单位错开从所述存储器读出该多行像素数据的读出定时,在比向所述PE阵列部的输入所需的定时更早的定时读出像素数据,所述像素排序部包括读入数据保持电路,该读入数据保持电路将由所述存储器读取部在比向所述PE阵列部的输入所需的定时更早的定时读出的行的像素数据保持至向所述PE阵列部的输入定时为止。
2. 根据权利要求1所述的运动图像编码中的运动搜索装置,其特征在于, 所述像素排序部包括垂直方向复制部,该垂直方向复制部当运动搜索范围的区域在参考图像的垂直方向的画面外区域时,复制参考图像中的画面边界部的行的像素数据作为画 面外区域的像素数据,并作为对于所述PE阵列部的输入。
3. 根据权利要求1所述的运动图像编码中的运动搜索装置,其特征在于, 所述像素排序部包括水平方向复制部,该水平方向复制部当运动搜索范围的区域在参考图像的水平方向的画面外区域时,在水平方向上复制参考图像中的相同行的画面边界部 的像素数据作为画面外区域的像素数据,并作为对于所述PE阵列部的输入。
4. 根据权利要求2所述的运动图像编码中的运动搜索装置,其特征在于, 所述像素排序部包括水平方向复制部,该水平方向复制部当运动搜索范围的区域在参考图像的水平方向的画面外区域时,在水平方向上复制参考图像中的相同行的画面边界部 的像素数据作为画面外区域的像素数据,并作为对于所述PE阵列部的输入。
全文摘要
本发明提供一种在使用PE阵列的运动搜索中,无需增加画面外像素存储用的存储器,就能够避免存储体冲突并实现高速运算的技术。从存储器(3)(参考图像存储器(30))中读出的多行像素数据位于同一存储体时,冲突存储体先行读出控制部(10)先行读出一行的像素数据,读入数据保持电路(20)将该数据保持至向PE阵列部(4)的输入定时。由此,避免从存储器(3)读出像素数据时的存储体冲突,顺利实现基于PE阵列部(4)的流水线处理。
文档编号H04N7/32GK101796845SQ200880105148
公开日2010年8月4日 申请日期2008年9月12日 优先权日2007年9月13日
发明者岩崎裕江, 新田高庸, 长沼次郎 申请人:日本电信电话株式会社