CN100534193C - 图像解码装置 - Google Patents

图像解码装置 Download PDF

Info

Publication number
CN100534193C
CN100534193C CNB2005800262624A CN200580026262A CN100534193C CN 100534193 C CN100534193 C CN 100534193C CN B2005800262624 A CNB2005800262624 A CN B2005800262624A CN 200580026262 A CN200580026262 A CN 200580026262A CN 100534193 C CN100534193 C CN 100534193C
Authority
CN
China
Prior art keywords
mentioned
image
piece
unit
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CNB2005800262624A
Other languages
English (en)
Other versions
CN1993992A (zh
Inventor
田中健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1993992A publication Critical patent/CN1993992A/zh
Application granted granted Critical
Publication of CN100534193C publication Critical patent/CN100534193C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明的图像解码装置,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,具备:存储器,保存有参照图像组;补偿单元,具有用来保存参照图像的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;参照图像传送单元,在各周期时间内,只要有对应于1个块的参照图像,就依次从上述存储器读出所有参照图像,并写入到上述输入缓冲器中;判断单元,在各周期时间中,判断上述参照图像传送单元从上述存储器读出的参照图像的总量是否比规定基准量多;禁止单元,在通过上述判断单元判断为多的周期时间内,禁止用来进行参照图像的读出的访问以外的向上述存储器的访问。

Description

图像解码装置
技术领域
本发明涉及将压缩图像解码即展开的图像解码装置,特别涉及适合基于MPEG4AVC标准(Moving Picture Experts Group phase 4Advanced Video Coding,ISO14496-10)的压缩图像的解码的图像解码技术。
背景技术
以往在传送运动图像时或记录到记录介质中时,已知有实施遵循MPEG(Moving Picture Experts Group)标准、例如MPEG2视频标准(ISO/IEC18818-2)及MPEG4视觉标准(ISO/IEC14496-2)的压缩的技术,此外,还已知有将按照这些标准压缩的图像解码的图像解码装置。
这样的图像解码装置通过下述的步骤,对有关取入到大容量的DRAM(Dynamic Random Access Memory)等存储器中的压缩图像的、进行了可变长编码的流进行解码,所述的步骤是:将该流从存储器读出来进行可变长解码,对每个宏块(MB:Marcroblock)提取运动矢量及块数据等,对每个块,参照根据运动矢量而确定的参照图像,对块数据进行相当于运动检测的反处理的补偿处理(以下将该处理称作“运动补偿处理”),将作为运动补偿处理的结果而得到的解码图像记录在存储器中。这里,被解码而保存在存储器中的解码图像组在后续的压缩图像的解码时作为参照图像组使用。
另外,以往的图像解码装置为了高速进行压缩图像的解码,进行使以宏块单位进行解码所需的各处理的各结构要素并列动作的流水线控制。
图13是例示以往的图像解码装置的流水线控制的执行次序的图。在该图中,可变长解码(VLD:Variable-Length Decoder)处理单元、运动补偿处理单元与DMA(Direct Memory Access,即直接存储器存取)控制器能够并列动作,DMA控制器在流水线控制中的作为同步周期的各周期时间内时分割来执行下述处理:将1宏块量的可变长编码后的流从存储器向可变长解码处理单元进行DMA传送的流传送处理;将对应于1宏块的参照图像从存储器向运动补偿处理单元进行DMA传送的参照图像传送处理;和将通过运动补偿处理单元得到的对应于1宏块的解码图像向存储器进行DMA传送的解码图像传送处理。这里,将各个周期时间也称作时隙(TS)。
根据图13所例示的流水线控制,设n为任意的整数,在TS=n即第n个时隙中,由DMA控制器执行与MB#n即第n个宏块对应的流传送处理;在TS=n+1即第n+1个时隙中,由可变长解码处理单元执行与该宏块对应的可变长解码处理;在第n+2个时隙中由DMA控制器执行与该宏块对应的参照图像传送处理;在第n+3个时隙中由运动补偿处理单元执行与该宏块对应的运动补偿处理;在第n+4个时隙中由DMA控制器执行与该宏块对应的解码图像传送处理。
这样,以往的图像解码装置设定了执行参照图像传送处理、可变长解码处理、运动补偿处理等的各结构要素进行1个宏块单位的处理所需的时间的最大值、即可满足对图像解码装置要求的1宏块单位的解码性能的周期时间,实施流水线控制,以使各结构要素与每个时间周期同步执行处理。即,以往为了以1宏块单位的处理时间为基准而最优地进行流水线控制,用来将与各宏块对应的参照图像向运动补偿处理单元供给的存储器访问即参照图像传送处理,分别在1个周期时间进行。另外,在MPEG2视频标准及MPEG4视觉标准中,由于设定了对应于1个宏块的运动矢量的数量的上限,所以通过估算与该运动矢量的数量对应的数量的参照图像的量等,决定了有关图像解码装置中的存储器总线带宽的必要条件。
近年来制定的MPEG4AVC标准(参照非特许文献1)对于对象图像具有可测量性,是以从QCIF(Quarter Common IntermediateFormat)那样的较小的图像到HD(High Definition)图像那样的较大的图像为对象,根据图像的大小来划分为多个等级的内容的标准。与1个宏块对应的运动矢量的最大值在MPEG2视频标准中为4条,与此相对,在MPEG4AVC标准中增加为32条。由此,在运动图像的压缩时,能够更有效地进行动画的时间轴方向的冗长性的削减。但是,在与HD图像那样的较大的图像对应的等级中,虽然与1个宏块对应的运动矢量的数量增大了,但从将用来进行动画再现的解码处理的运算量禁止在一定范围内的观点等出发,对于其1个宏块与其前或后的宏块之间的运动矢量的数量合计规定了上限。
非特许文献1:ISO/IEC 14496-10 Information technology-Codingof audiovisual objects-Par t10:Advanced Video Coding。
如果要使上述以往的图像解码装置进行依据MPEG4AVC标准的对应于较大图像的等级的规定而压缩的图像的解码,则为了应对能够在1个周期时间内将以往的2倍以上量的参照图像从存储器传送给运动补偿处理单元,需要将存储器总线带宽增大很多。因此,图像保存用的大容量存储器需要以例如更高的频率动作,其结果,图像解码装置的制造成本大幅上升。
发明内容
所以,本申请是鉴于上述问题而做出的,目的是提供一种能够将依据MPEG4AVC标准的对应于较大图像的等级的规定而压缩的图像进行解码的图像解码装置、具备用来禁止需要的存储器带宽的结构的图像解码装置。
为了解决上述课题,有关本发明的图像解码装置,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:存储器,保存有参照图像组;补偿单元,具有用来保存参照图像的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;参照图像传送单元,在各周期时间内,只要有对应于1个块的参照图像,就依次从上述存储器读出所有参照图像,并写入到上述输入缓冲器中;判断单元,在各周期时间中,判断上述参照图像传送单元从上述存储器读出的参照图像的总量是否比规定基准量多;禁止单元,在通过上述判断单元判断为多的周期时间内,除了读出参照图像时访问上述存储器以外禁止访问上述存储器;输出缓冲器,保存由补偿单元进行了补偿处理后的块的解码图像;以及解码图像传送单元,依次从上述输出缓冲器读出1个块的解码图像,写入到上述存储器中;上述禁止单元在上述判断单元判断为多的周期时间内,禁止上述解码图像传送单元访问上述存储器,上述输出缓冲器的容量是能够保存两个块量的解码图像的容量,上述解码图像传送单元在上述禁止单元禁止的周期时间的下个周期时间内,从上述输出缓冲器连续读出两个块量的解码图像而写入到上述存储器中,在除此之外的周期时间内,从上述输出缓冲器读出1个块量的解码图像而写入到上述存储器中。
这里,周期时间是周期性的规定时间量的期间,例如是流水线控制中的单位时间。
根据上述的结构,有关本发明的图像解码装置在从存储器读出参照图像量较多的周期时间内,由于禁止了参照图像的读出以外的存储器访问,所以能够禁止周期时间内的最大数据传送量,由此能够禁止存储器总线带宽。
另外,在为了成本削减而限制存储器的个数、例如使用单一的存储器进行相当于运动检测的逆处理的补偿处理等而将运动图像进行解码的情况下,对于该存储器,除了用来读出参照图像的存储器访问以外,还发生用来进行之后能够作为参照图像使用的解码图像的写入的存储器访问、以及用来读出压缩图像的编码流的存储器访问等,根据有关本发明的图像解码装置,将参照图像的读出以外的这些存储器访问的至少一部分在某个周期时间中暂时禁止。
此外,在图像解码装置中,在例如根据能够以宏块单位等的块单位独立进行处理的状况而适当地进行流水线控制的情况下,在周期时间中需要与存储器之间进行最大数据传送量的传送的是对参照图像的传送,此外,鉴于MPEG4AVC标准的对应于较大的图像的等级的规定中设定了两个宏块量的运动矢量数的上限,对于由有关本发明的图像解码装置在某个周期时间A内暂时禁止的存储器访问,只要在关于参照图像的数据传送量变少的下个周期时间B中实施就可以。因而,有关本发明的图像解码装置不会因禁止了某个周期时间的存储器访问而发生特别的问题。
通过将用来将一定以1宏块单位迅速写入到存储器中的必要性较低的解码图像写入到存储器中的存储器访问作为禁止控制对象,能够不需要特别变更分担压缩图像的解码的VLD处理单元及运动补偿处理单元等的各单元间的处理时间的关系等,比较容易禁止存储器总线带宽。
由于在某个周期时间中被禁止的解码图像向存储器的写入是在参照图像的传送量相对较少的下个周期时间中进行,所以可在几乎不增大帧单位的图像的解码时间的情况下进行压缩图像的解码。这里,也可以是,上述图像解码装置还具备取得单元,该取得单元依次取得与根据参照图像压缩的1个块对应的运动矢量;上述补偿单元参照上述参照图像,根据由上述取得单元取得的运动矢量,进行对块的补偿处理;上述参照图像传送单元传送的、对应于1个块的所有的参照图像分别是根据由上述取得单元取得的对应于该块的各运动矢量来确定的;关于在各周期时间中从上述存储器读出的对应于块的参照图像的总量是否比规定基准量多,上述判断单元根据由上述取得单元取得的对应于该块的运动矢量的数量是否比规定的阈值多来进行判断。
由此,通过得到运动矢量的数量而与规定的阈值比较的简单的结构,能够间接地判断参照图像的总量是否比规定基准量多。
此外,也可以是,上述存储器除了参照图像以外,还保存有编码流,该编码流是将对每个块包含有块头信息和块数据而成的数据进行可变长编码而成的,上述块头信息包括表示是否是根据参照图像压缩的块的信息和运动矢量;上述图像解码装置还具备:可变长解码单元,如果被输入了编码流,则进行可变长解码;流传送单元,从上述存储器中依次读出编码流,输入到上述可变长编码单元中;以及帧内处理单元,对依次传递来的块的块数据实施不参照参照图像的解码处理;上述取得单元根据由上述可变长解码单元进行了可变长解码的结果取得上述运动矢量,再将根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述补偿单元,将没有根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述帧内处理单元;在上述输出缓冲器中,除了由上述补偿单元进行了补偿处理后的块的解码图像以外,还保存有由上述帧内处理单元实施了解码处理后的块的解码图像。
此外,也可以是,上述存储器除了参照图像以外,还保存有编码流,该编码流是将对每个块包含有块头信息和块数据而成的数据进行可变长编码而成的,上述块头信息包括表示是否是根据参照图像压缩的块的信息和运动矢量;上述图像解码装置还具备:可变长解码单元,如果被输入了编码流数据,则进行可变长解码;流传送单元,从上述存储器中依次读出编码流,输入到上述可变长编码单元中;以及帧内处理单元,对依次传递来的块的块数据实施不参照参照图像的解码处理;上述取得单元根据由上述可变长解码单元进行了可变长解码的结果取得上述运动矢量,再将根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述补偿单元,将没有根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述帧内处理单元;上述禁止单元在由上述判断单元判断为多的周期时间内,禁止上述流传送单元访问上述存储器。
由此,由于每单位时间的与存储器之间的数据传送量一般较参照图像低的关于编码流的存储器访问成为禁止控制的对象,所以即使将在某个周期时间中被禁止的部分在下个周期时间中传送,也不会成为必须增大存储器总线带宽的原因,作为禁止的结果,能够实现存储器总线带宽的禁止。
此外,有关本发明的图像解码装置,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:存储器,保存有参照图像组;补偿单元,具有用来保存参照图像的、足够保存两个块量的参照图像的容量的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;以及参照图像传送单元,在连续的两个周期时间内,只要有分别对应于两个块的参照图像,就依次从上述存储器读出所有的参照图像,并写入到上述输入缓冲器中。
由此,即使不将存储器总线带宽决定为能够在1个周期时间内传送对应于1个宏块量的参照图像的最大数据传送量也可以,所以能够相应地缓和关于存储器总线带宽的必要条件。
这里,也可以是,上述图像解码装置还具备处理单元,该处理单元对由上述补偿单元进行了补偿处理后的解码图像进行处理;上述处理单元及上述补偿单元中的1个单元与上述参照图像传送单元并列地在每个周期时间中进行对应于1个块的处理,并且通过上述参照图像传送单元,将对应于在某个周期时间内开始传送的块的处理,在两个该周期时间后的周期时间内开始执行。
由此,能够在适当的时刻处理依赖于与各宏块对应的参照图像的处理。
此外,有关本发明的图像解码方法,对于与参照图像组一同保存到存储器中的压缩图像,对每个块进行解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,从用于保存进行了该补偿处理之后的块的解码图像的输出缓冲器,依次将一个块的解码图像传送至上述存储器,其特征在于,包括:参照图像传送步骤,在各周期时间内,只要有对应于1个块的参照图像,就依次从上述存储器读出所有的参照图像,并写入到规定的缓冲器中;判断步骤,在各周期时间中,判断由上述参照图像传送步骤从上述存储器读出的参照图像的总量是否比规定基准量多;禁止步骤,在通过上述判断步骤判断为多的周期时间内,除了读出参照图像时访问上述存储器以外禁止访问上述存储器;补偿步骤,参照保存在上述规定的缓冲器中的参照图像,依次进行对1个块的补偿处理;以及解码图像传送步骤,依次从上述输出缓冲器读出1个块的解码图像,写入到上述存储器中,上述禁止步骤在由上述判断步骤判断为多的周期时间内,禁止上述解码图像传送步骤对上述存储器的访问,上述输出缓冲器的容量是能够保存两个块量的解码图像的容量,上述解码图像传送步骤在由上述禁止步骤禁止的周期时间的下个周期时间内,从上述输出缓冲器连续读出两个块量的解码图像而写入到上述存储器中,在除此之外的周期时间内,从上述输出缓冲器读出1个块量的解码图像而写入到上述存储器中。
由此,在从存储器读出参照图像的量较多的周期时间内禁止了其他的存储器访问,所以能够禁止有关压缩图像的解码的流水线控制中的周期时间内的最大数据传送量,由此能够禁止存储器总线带宽。
此外,有关本发明的图像解码方法,对于与参照图像组一同保存到存储器中的压缩图像,对每个块进行解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,并列执行:图像传送步骤,在连续的两个周期时间内,只要有分别对应于两个块的参照图像,就依次从上述存储器读出所有参照图像,并写入到规定的缓冲器中;以及补偿步骤,参照保存在上述规定的缓冲器中的参照图像,依次进行对1个块的补偿处理。
由此,在通过基本上在1个周期时间内执行流水线阶段对应于1宏块量的处理那样的流水线控制来实现压缩图像的解码的情况下,对于从存储器传送参照图像解除了在1周期时间内结束的制约,所以即使不将存储器总线带宽决定为在1个周期时间内能够传送对应于1宏块量的参照图像的最大数据传送量也可以,能够相应地缓和关于存储器总线带宽的必要条件。
此外,有关本发明的半导体集成电路,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:存储器,保存有参照图像组;补偿电路部,具有用来保存参照图像的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;参照图像传送电路部,在各周期时间内,只要有对应于1个块的参照图像,就依次从上述存储器读出所有参照图像,并写入到上述输入缓冲器中;判断电路部,在各周期时间中,判断上述参照图像传送电路部从上述存储器读出的参照图像的总量是否比规定基准量多;禁止电路部,在由上述判断电路部判断为多的周期时间内除了读出参照图像时访问上述存储器以外禁止访问上述存储器;输出缓冲器,用来保存由上述补偿电路部进行了补偿处理后的块的解码图像;以及解码图像传送电路部,依次从上述输出缓冲器读出1个块的解码图像,并写入到上述存储器中;上述禁止电路部在由上述判断电路部判断为多的周期时间内,禁止上述解码图像传送电路部访问上述存储器,上述输出缓冲器的容量是能够保存两个块量的解码图像的容量,上述解码图像传送电路部在由上述禁止电路部禁止的周期时间的下个周期时间内,从上述输出缓冲器连续读出两个块量的解码图像而写入到上述存储器中,在除此之外的周期时间内,从上述输出缓冲器读出1个块量的解码图像而写入到上述存储器中。
在该半导体集成电路中,在从存储器读出参照图像的量较多的周期时间内,禁止参照图像的读出以外的存储器访问,所以能够禁止周期时间内的最大数据传送量,由此能够禁止存储器总线带宽。
此外,有关本发明的半导体集成电路,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:存储器,保存有参照图像组;补偿电路部,具有用来保存参照图像的、足够保存两个块量的参照图像的容量的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;以及参照图像传送电路部,在连续的两个周期时间内,只要有分别对应于两个块的参照图像,就依次从上述存储器读出所有的参照图像,并写入到上述输入缓冲器中。
在该半导体集成电路中,即使不将存储器总线带宽决定为在1个周期时间内能够传送对应于1宏块量的参照图像的最大数据传送量也可以,所以能够相应地缓和关于存储器总线带宽的必要条件。
附图说明
图1是有关本发明的实施方式1的图像解码装置100的结构图。
图2是表示压缩图像的流数据的构造的图。
图3是表示宏块与参照图像的关系的图。
图4是表示控制部110对宏块进行的解码控制内容的流程图。
图5是表示控制部110进行的流水线控制的执行次序的图。
图6是表示图像解码装置100中的DMA传送的控制的图。
图7是有关本发明的实施方式2的图像解码装置500的结构图。
图8是表示控制部510对宏块进行的解码控制内容的流程图。
图9是表示控制部510进行的流水线控制的执行次序的图。
图10是表示控制部510进行的DMA传送指示发出处理的流程图。
图11是表示图像解码装置500中的DMA传送的控制的图。
图12是表示将除了存储器120以外作为半导体集成电路101实现的图像解码装置100的概况的图。
图13是例示以往的图像解码装置中的流水线控制的执行次序的图。
标记说明
100、500 图像解码装置
110、510 控制部
111 流传送控制部
112 取得部
113、513 参照图像传送控制部
114、514 解码图像传送控制部
115 未输出信息保存部
116 禁止判断部
117 阈值存储部
120 存储器
130 DMA 控制器
140 VLD 处理单元
140 处理单元
150 逆频率变换处理单元
160、560 运动补偿处理单元
161、561 输入缓冲器
170 帧内处理单元
180 解块过滤处理单元
190、590 输出缓冲器
551 缓冲器551
具体实施方式
<实施方式1>
以下,对本发明的实施方式1的图像解码装置100进行说明。
<结构>
图1是本发明的实施方式1的图像解码装置100的结构图。
如该图所示,图像解码装置100具备:控制部110、存储器120、DMA控制器130、可变长解码(VLD)处理单元140、逆频率变换处理单元150、运动补偿处理单元160、帧内处理单元170、解块过滤处理单元180及输出缓冲器190。
这里,存储器120是用来保存将压缩的图像等进行可变长编码而成的编码流、并保存参照图像的DRAM。另外,这里,图像用作表示还包括一种图像数据的概念的用语,该图像数据表现所显示的图像内容。
DMA控制器130具有从控制部110接受伴随着存储器地址指定等的指示的队列,担负按照接受到的指示进行存储器120与VLD处理单元140、运动补偿处理单元160或输出缓冲器190之间的数据传送的功能。
VLD处理单元140具有如下的功能:如果被输入了将压缩图像的流数据进行可变长编码而成的编码流,则将编码流进行可变长解码,从压缩图像的流数据中提取宏块类型与运动矢量,传递给控制部,并且提取宏块的实体即表现频率变换后的所谓的差值的块数据,传递给逆频率变换处理单元150。另外,如图2中表示数据构造那样,压缩图像的流数据构成为,接着表示I图像、P图像、B图像的图像类型等的条头210而对每个宏块连接宏块头220及块数据230。该宏块头220包括表示是根据参照图像以帧间模式压缩的帧间宏块、还是不基于参照图像而以帧内模式压缩的帧内宏块的区别的宏块类型、和运动矢量。
逆频率变换处理单元150具有输出对从VLD处理单元140传递来的块数据进行逆频率变换而得到的差值的功能。
运动补偿处理单元160具有输入缓冲器161,具有如下的功能:通过根据存储在输入缓冲器161中的参照图像计算1/4像素(Quarter-PEL)精度的图像,并将计算出的图像与关于逆频率变换处理单元150输出的宏块的差值相加,执行再构成图像的补偿处理即相当于所谓的运动补偿的逆处理的处理(这里称作“运动补偿处理”)。
帧内处理单元170具有实施帧内处理的功能,即通过将逆频率变换处理单元150输出的关于该宏块的差值与该宏块的周边图像相加来再构成图像的功能。
解块过滤处理单元180具有对运动补偿处理单元160或帧内处理单元170输出的再构成图像实施解块过滤处理的功能,即通过施加用来禁止块噪音的解块过滤来得到解码图像、并向输出缓冲器190送出的功能。
输出缓冲器190是具有足够将解码图像保存两个宏块量的容量的缓冲器存储器。
此外,控制部110在硬件方面包括处理器、ROM(Read OnlyMemory)、定时器等而构成,通过处理器执行保存在ROM中的程序,实现使图像解码装置100的各结构要素在规定的每个周期时间并列地进行有关宏块单位的解码的各处理的流水线控制,具体而言,控制DMA控制器130、VLD处理单元140、逆频率变换处理单元150、运动补偿处理单元160、帧内处理单元170及解块过滤处理单元180,作为功能方面的结构要素,具有流传送控制部111、取得部112、参照图像传送控制部113、解码图像传送控制部114及禁止判断部116。
这里,流传送控制部111具有如下的功能:进行对DMA控制器130的指示,以使编码流从存储器120向VLD处理单元140传送。
取得部112具有如下的功能:从VLD处理单元140取得运动矢量及宏块类型并传递给参照图像传送控制部113,计运动矢量的数量,并将该运动矢量的数量传递给禁止判断部116。
参照图像传送控制部113具有如下的功能:在宏块类型为帧内宏块的情况下,根据各运动矢量确定参照图像的位置,指定各参照图像的地址,进行向DMA控制器130的指示,以使其在各周期时间,将对应于1个宏块的所有的参照图像从存储器120向运动补偿处理单元160的输入缓冲器161传送。
解码图像传送控制部114包括保存表示在1个周期时间内是否从输出缓冲器190被送出到存储器120的信息的未输出信息保存部115,具有如下的功能:进行向DMA控制器130的指示,以使其将输出缓冲器190内的解码图像向存储器120传送。
禁止判断部116包括预先存储有有关运动矢量数的阈值的阈值存储部117,具有如下的功能:将从取得部112传递来的运动矢量的数量与该阈值比较,来判断运动矢量的数量是否超过了阈值,根据判断结果来禁止解码图像传送控制部114进行向存储器120的传送指示。另外,禁止判断部116中的运动矢量的数量是否超过阈值的判断成为间接地判断对应于该运动矢量的参照图像的数据传送量是否比规定量多;在某个周期时间中的参照图像的数据传送量比规定量多的情况下,禁止判断部116禁止指示在该周期时间中向存储器120写入解码图像。
图3是表示宏块与参照图像的关系的图。
划分压缩图像300而成的多个宏块由亮度信号和色差信号构成,在该图中表示了亮度信号,亮度信号是1个宏块16像素×16像素的信号。在1个宏块311与参照图像320中的一部分参照图像321类似的情况下,运动矢量301表示宏块311与参照图像321的空间位置之差,其中,参照图像320是处于与压缩图像300不同时间的图像帧。另外,参照图像320相当于参照图像321等的部分参照图像的集合。
另外,在阈值存储部117中存储有阈值S,该阈值S是满足下面的式1中的最小整数。
[式1]f(S)≥f(V—S)+C
这里,函数f(x)是表示运动矢量的数量为x时的参照图像的总比特量的函数,V是横跨连续的两个宏块的运动矢量的上限数,C是1宏块量的解码图像的总比特量。
因而,通过基于阈值S的判断,进行DMA传送图像的参照图像的量是否比f(V—S)+C以上的规定量多的判断。
<动作>
以下,就控制部110的控制的流程,说明具备上述结构的图像解码装置100以宏块单位进行的图像解码的动作。
控制部110决定构成压缩图像的各宏块中的依次作为解码对象的宏块,通过流水线控制在各周期时间内分别使图像解码装置100的各结构要素依次处理6个宏块的任一个,而这里首先说明对1个宏块实施怎样的处理。
图4是表示控制部110对宏块进行的解码控制内容的流程图。
首先,控制部110的流传送控制部111对DMA控制器130发出传送指示,以使其将编码流从存储器120向VLD处理单元140传送(步骤S11)。通过队列接受到该编码流的传送指示的DMA控制器130进行1个宏块量的编码流的传送。
控制部110启动VLD处理单元140(步骤S12),VLD处理单元140从编码流中提取运动矢量和宏块类型而传递给取得部112,并且提取块数据而传递给逆频率变换处理单元150。
控制部110启动逆频率变换处理单元150(步骤S13),逆频率变换处理单元150对块数据实施逆频率变换并输出。
控制部110判断有关宏块的宏块类型是帧间宏块还是帧内宏块(步骤S14),如果是帧间宏块,则控制部110的取得部112将运动矢量传递给参照图像传送控制部113,参照图像传送控制部113通过根据宏块的位置和各运动矢量计算各参照图像的位置来计算各参照图像在存储器120内的地址(步骤S15),指定该地址并对DMA控制器130发出指示以使其将参照图像从存储器120传送给输入缓冲器161(步骤S16),启动运动补偿处理单元160(步骤S17),启动解块过滤处理单元180(步骤S18)。通过队列接受到该步骤S16的参照图像的传送指示的DMA控制器130将对应于1个宏块的所有的参照图像传送给输入缓冲器161。
此外,作为步骤S17的结果,运动补偿处理单元160根据输入缓冲器161内的参照图像和逆频率变换后的块数据,再构成图像,向解块过滤处理单元180送出,此外,作为步骤S18的结果,解块过滤处理单元180禁止再构成的图像的块噪音,储存到输出缓冲器190中。
另一方面,在步骤S14中,在判断出有关宏块的宏块类型是帧内宏块的情况下,控制部110跳过步骤S15~S17而启动帧内处理单元170(步骤S19),启动解块过滤处理单元180(步骤S18)。作为该步骤S19的结果,帧内处理单元170根据逆频率变换后的块数据,再构成图像,向解块过滤处理单元180送出。
此外,控制部110的禁止判断部116将由取得部112取得的运动矢量数与存储在阈值存储部117中的阈值S进行比较,在运动矢量数超过阈值S的情况下(步骤S20),不对解码图像传送控制部114发出有关将解码图像送出到存储器120中的DMA传送的指示,而是将未输出信息保存部115内的未输出信息设定为表示没有进行该解码图像向存储器送出的信息(步骤S21)。相对于此,在步骤S20中,在运动矢量数没有超过阈值S的情况下,解码图像传送控制部114参照未输出信息,判断前面的宏块量的解码图像是否没有向存储器送出(步骤S22),在没有进行该送出的情况下,解码图像传送控制部114对DMA控制器130发出指示,以使其将某个宏块的解码图像与其前面的宏块量的解码图像合在一起,将两个宏块量的解码图像从输出缓冲器190传送给存储器120(步骤S23),然后将未输出信息清空,即未输出信息更新为表示不存在未送出的解码图像的信息(步骤S24),在不进行前面的宏块量的解码图像的送出的情况下,解码图像传送控制部114对DMA控制器130发出指示,以使其将某个宏块的解码图像从输出缓冲器190传送给存储器120(步骤S25),并将未输出信息清空(步骤S24)。
根据该步骤S23或S25,通过解块过滤处理单元180禁止块噪音,将保存在输出缓冲器190中的解码图像向存储器120进行DMA传送。
以上,基本上就图4按照顺序说明了对1个宏块的处理,但控制部110实际上进行流水线控制,图4的流程图中的各步骤所示的动作是在流水线控制的周期性时间即各周期时间中最初执行的。另外,虽然作为处理对象的宏块不相同,但是步骤S11、步骤S12、步骤S13、步骤S15~S16、步骤S17或步骤S19、步骤S18、步骤S20~S25的各个步骤只要是在各周期时间的最初执行,则以怎样的顺序执行都可以。
此外,控制部110进行的各单元的启动具有传达各周期的开始的意义,各单元在各周期时间内基本上进行对应于1个宏块的处理。
图5是表示控制部110进行的流水线控制的执行次序的图。
在该图中,时隙TS=n(n为任意的整数)意味着第n个周期时间。此外,MB#n表示第n个宏块是处理对象。
如图5所示,在控制部110的流水线控制之下,并列进行如下处理:按照流传送控制部111的指示由DMA控制器130实施的流传送处理;由VLD处理单元140实施的可变长解码处理;由逆频率变换处理单元150实施的逆频率变换处理;按照参照图像传送控制部113的指示,由DMA控制器130实施的参照图像传送处理;由运动补偿处理单元160实施的运动补偿处理或由帧内处理单元170实施的帧内处理;由解块过滤处理单元180实施的解块过滤处理;按照解码图像传送控制部114的指示,由DMA控制器130实施的解码图像传送处理。
因而,在某1个周期时间内,通过各单元等,将6个宏块并行地作为处理对象。周期时间的长度设定为使其满足解码所要求的速度,各单元需要发挥并列动作的各单元中的1个宏块单位的处理所需的时间最长的单元的其处理时间为1周期时间以内的处理性能。
另外,在图5中例示了解码图像传送处理,但在该例中,表示了假设在TS=n+2所示的周期时间内有关作为参照图像传送处理的对象的第n个宏块的运动矢量数超过了阈值S、此外在TS=n+4所示的周期时间内有关作为参照图像传送处理的对象的第n+2个宏块的运动矢量数超过了阈值S的情况的例子。
因此,在TS=n+2所示的周期时间内,在参照图像传送处理中传送的数据量比规定量多,所以通过上述的步骤S20~S25所示的控制,禁止了以第n—3个宏块为对象的解码图像传送处理,因此,在TS=n+3所示的周期时间内,实施以第n—3个宏块和第n—2个宏块两者为对象的解码图像传送处理,此外,在TS=n+4所示的周期时间内,在参照图像传送处理中传送的数据量比规定量多,所以禁止了以第n—1个宏块为对象的解码图像传送处理,因此,在TS=n+5所示的周期时间内,实施以第n—1个宏块和第n个宏块两者为对象的解码图像传送处理。
图6是表示图像解码装置100中的DMA传送的控制的图。
DMA控制器130在各周期时间内时分割来执行如下的处理:将1宏块量的可变长编码后的流从存储器120向VLD处理单元140进行DMA传送的流传送处理;将对应于1个宏块的参照图像从存储器120向运动补偿处理单元160的输入缓冲器161进行DMA传送的参照图像传送处理;和将保存在输出缓冲器190中的对应于1个宏块的解码图像向存储器120进行DMA传送的解码图像传送处理。
在该图中,用符号A表示作为流传送处理的对象的对应于1个宏块量的编码流的传送时间,用符号B表示作为参照图像传送处理的对象的对应于1个宏块量的各种量的参照图像的传送时间的例子,用符号C表示作为解码图像传送处理的对象的对应于1个宏块量的解码图像的传送时间。另外,图6的例子与图5的例子对应。
该例子表示,在TS=n+2所示的周期时间内进行DMA传送的参照图像的总量超过了规定量,在图4的步骤S20的判断模块中判断为是,在该周期时间内不进行解码图像的DMA传送,而在接下来的TS=n+3所示的周期时间进行两个宏块量的解码图像的DMA传送。另外,根据MPEG4AVC标准的对应于较大的图像的等级的规定,将连续的两个宏块量的运动矢量的总数的上限固定地设定为16等,所以在TS=n+2中被进行DMA传送的参照图像的量较多的情况下,相对地在TS=n+3中被进行DMA传送的参照图像的量较少或为0。另外,相对于与1个宏块所对应的参照图像的最大量,与1个宏块对应的解码图像的量足够小。
因而,步骤S20~S25所示那样的禁止判断部116及解码图像传送控制部114的动作的结果,在TS=n+2所示的周期时间内禁止了解码图像的传送,能够缩减该周期时间内的存储器访问带来的最大数据传送量,所以,在图像解码装置100中,能够使关于存储器带宽的必要条件变得比较缓和。
<实施方式2>
以下,对有关本发明的实施方式2的图像解码装置500进行说明。
上述的有关实施方式1的图像解码装置100具有在各周期时间内进行对应于1个宏块的所有的参照图像的DMA传送的结构。相对于此,有关实施方式2的图像解码装置500具有如下的结构:还允许在1个周期时间内不能结束对应于1个宏块的所有的参照图像的DMA传送的情况,控制成使分别对应于连续的两个宏块的所有的参照图像的DMA传送在两个周期时间内结束。
<结构>
图7是本发明的实施方式2的图像解码装置500的结构图。
如该图所示,图像解码装置500具备:控制部510、存储器120、DMA控制器130、可变长解码(VLD)处理单元140、逆频率变换处理单元150、缓冲器551、运动补偿处理单元560、帧内处理单元170、解块过滤处理单元180及输出缓冲器590。另外,对于图7所示的图像解码装置500的各结构要素中的与实施方式1所示的图像解码装置100相同的结构要素,赋予与图1相同的标记,对于它们省略详细说明。
运动补偿处理单元560具备具有足够保存对应于连续的两个宏块的所有参照图像的容量的输入缓冲器561,具有如下的功能:执行根据存储在输入缓冲器161中的参照图像计算1/4像素精度的图像,并通过将计算出的图像与关于逆频率变换处理单元150输出的宏块的差值相加,来执行再构成图像的运动补偿处理。
输出缓冲器590是具有足够将解码图像保存1个宏块量的容量的缓冲器存储器。
此外,控制部510在硬件方面包括处理器、ROM(Read OnlyMemory)、定时器等而构成,通过处理器执行保存在ROM中的程序,实现使图像解码装置500的各结构要素在规定的每个周期时间中并列地进行有关宏块单位的解码的各处理的流水线控制。具体而言,控制DMA控制器130、VLD处理单元140、逆频率变换处理单元150、运动补偿处理单元560、帧内处理单元170及解块过滤处理单元180,作为功能方面的结构要素,具有流传送控制部111、取得部112、参照图像传送控制部513及解码图像传送控制部514。
这里,参照图像传送控制部513具有如下的功能:在取得部112取得的宏块类型为帧内宏块的情况下,根据各运动矢量确定参照图像的位置,指定各参照图像的地址,向DMA控制器130指示,以使其将各参照图像从存储器120向运动补偿处理单元560的输入缓冲器561传送。另外,该指示是每当周期时间的开始时刻进行的,但是开始对应于保存在DMA控制器130的队列中的指示的DMA传送的时刻并不限于该周期时间的开始时刻。但是,在从进行了参照图像的DMA传送的指示开始两个周期时间以内必须结束与其对应的DMA传送的执行。
解码图像传送控制部514具有如下的功能:进行向DMA控制器130的指示,以使其在1个周期时间内将输出缓冲器590内的1个宏块量的解码图像向存储器120传送。
此外,缓冲器551是用来暂时储存逆频率变换处理单元150所输出的数据的缓存器,是为了对逆频率变换处理单元150在某个周期时间中处理后的宏块,在其下下个周期时间,由运动补偿处理单元560或帧内处理单元170进行处理而设置的。
<动作>
以下,就控制部510的进行的控制的流程,对具备上述结构的图像解码装置500以宏块单位进行的图像解码动作进行说明。
控制部510决定构成压缩图像的各宏块中的依次作为解码对象的宏块,通过流水线控制,在各周期时间内分别使图像解码装置500的各结构要素依次处理6个或7个宏块中的某一个,而这里首先说明对1个宏块实施怎样的处理。
图8是表示控制部510对宏块进行的解码控制内容的流程图。
首先,控制部510的流传送控制部111对DMA控制器130发出传送指示,以使其将编码流从存储器120向VLD处理单元140传送(步骤S51)。通过队列接受到该编码流的传送指示的DMA控制器130进行1个宏块量的编码流的传送。
控制部510启动VLD处理单元140(步骤S52),VLD处理单元140从编码流中提取运动矢量和宏块类型而传递给取得部112,并且提取块数据而传递给逆频率变换处理单元150。
控制部510启动逆频率变换处理单元150(步骤S53),逆频率变换处理单元150对块数据实施逆频率变换并输出。
控制部510判断有关宏块的宏块类型是帧间宏块还是帧内宏块(步骤S54),如果是帧间宏块,则控制部510的取得部112将运动矢量传递给参照图像传送控制部513,参照图像传送控制部513通过根据宏块的位置和各运动矢量计算各参照图像的位置,来计算各参照图像在存储器120内的地址(步骤S55),指定该地址并对DMA控制器130发出指示以使其将参照图像从存储器120传送给输入缓冲器561(步骤S56),启动运动补偿处理单元560(步骤S57),启动解块过滤处理单元180(步骤S58)。通过队列接受到该步骤S56的参照图像的传送指示的DMA控制器130,将对应于1个宏块的所有的参照图像传送给输入缓冲器561。
此外,作为步骤S57的结果,运动补偿处理单元560根据输入缓冲器161内的参照图像和逆频率变换后的块数据,再构成图像,向解块过滤处理单元180送出,此外,作为步骤S58的结果,解块过滤处理单元180禁止再构成的图像的块噪音,储存到输出缓冲器590中。
另一方面,在步骤S54中,在判断出有关宏块的宏块类型是帧内宏块的情况下,控制部510跳过步骤S55~S57而启动帧内处理单元170(步骤S59),启动解块过滤处理单元180(步骤S58)。作为该步骤S59的结果,帧内处理单元170根据逆频率变换后的块数据,再构成图像,向解块过滤处理单元180送出。
控制部510的解码图像传送控制部514对DMA控制器130发出指示,以使其将有关在进行了步骤S58后作为其结果保存在输入缓冲器590中的宏块的解码图像传送给存储器120(步骤S60)。
以上,基本上就图8按照顺序说明了对1个宏块的处理,但控制部510实际上进行流水线控制,图8的流程图中的各步骤所示的动作是在流水线控制的周期性时间即各周期时间中最初执行的。即,虽然作为处理对象的宏块不相同,但是步骤S51、步骤S52、步骤S53、步骤S55~S56、步骤S57或步骤S59、步骤S58、步骤S60的各个步骤分别在各周期时间的最初执行。另外,在此时,对于步骤S51、步骤S55~S56、和步骤S60如后述那样设定了执行顺序,但对于其他步骤以怎样的顺序执行都可以。
此外,控制部510进行的各单元的启动具有传达各周期的开始的意义,各单元在各周期时间内基本上进行对应于1个宏块的处理。但是,DMA控制器130进行的对与1个宏块对应的所有参照图像的DMA传送在1个周期时间内没有结束也可以,只要在两个周期时间内结束对分别与连续的两个宏块对应的所有的参照图像的DMA传送就可以。
图9是表示控制部510进行的流水线控制的执行次序的图。
在该图中,时隙TS=n(n为任意的整数)意味着第n个周期时间。此外,MB#n表示第n个宏块是处理对象。
如图9所示,在控制部510的流水线控制之下,并列进行如下处理:按照流传送控制部111的指示由DMA控制器130实施的流传送处理、由VLD处理单元140实施的可变长解码处理、由逆频率变换处理单元150实施的逆频率变换处理、按照参照图像传送控制部513的指示由DMA控制器130实施的参照图像传送处理、由运动补偿处理单元560实施的运动补偿处理或由帧内处理单元170实施的帧内处理、由解块过滤处理单元180实施的解块过滤处理、按照解码图像传送控制部514的指示由DMA控制器130实施的解码图像传送处理。
因而,在某1个周期时间内,通过各单元等将6个或7个宏块并行地作为处理对象。周期时间的长度设定为使其满足解码所要求的速度,各单元需要发挥如下的处理性能:使并列动作的各单元中的1个宏块单位的处理所需的时间最长的单元的处理时间在1周期时间以内。
另外,在图9中,对于参照图像传送处理,仅表示了能够进行与各宏块对应的参照图像的DMA传送的期间有两个周期时间的情况,根据MPEG4AVC标准的对应于较大的图像的等级的规定,由于固定地设定了连续的两个宏块量的运动矢量的总数的上限,所以在进行对这样的较大的图像的解码时,实际上若例如将对应于第n个宏块的参照图像的传送和对应于第n+1个宏块的参照图像的传送合在一起来看,则在两个时间周期内结束。
图10是表示控制部510进行的DMA传送指示发出处理的流程图。
在各周期时间的最初,设定了控制部510的流传送控制部111、参照图像传送控制部513及解码图像传送控制部514进行DMA传送指示的顺序,如该图所示,首先通过流传送控制部111进行对应于第n个宏块的编码流的DMA传送的指示的发出(步骤S71),通过解码图像传送控制部514进行对应于第n—6个宏块的解码图像的DMA传送指示的发出(步骤S72),最后进行对应于第n—2个宏块的所有参照图像的DMA传送指示的发出。
图11是表示图像解码装置500中的DMA传送的控制的图。
DMA控制器130在各周期时间内时分割来执行如下的处理:将1宏块量的可变长编码后的流从存储器120向VLD处理单元140进行DMA传送的流传送处理;将对应于1个宏块的参照图像从存储器120向运动补偿处理单元560的输入缓冲器561进行DMA传送的参照图像传送处理;和将保存在输出缓冲器590中的对应于1个宏块的解码图像向存储器120进行DMA传送的解码图像传送处理。
在该图中,用符号A表示作为流传送处理的对象的对应于1个宏块量的编码流的传送时间,用符号B表示作为参照图像传送处理的对象的对应于1个宏块量的各种量的参照图像的传送时间的例子,用符号C表示作为解码图像传送处理的对象的对应于1个宏块量的解码图像的传送时间。
该例子是在TS=n+2所示的周期时间内,由于与进行DMA传送1个宏块对应的参照图像的总量较多,所以在该时间周期内DMA传送没有完成,而进入到TS=n+3所示的周期时间内后才完成该DMA传送的例子。在包括TS=n+3所示的周期时间的全部的周期时间的最初,以按照图10的顺序进行DMA传送指示。即,DMA控制器130在DMA传送结束后才从队列按照被指示的顺序取出DMA传送指示,来进行接下来的DMA传送。
另外,根据MPEG4AVC标准的对应于较大的图像的等级的规定,即使是较大的图像,也将连续的两个宏块量的运动矢量的总数的上限固定地设定为16等,所以在TS=n+2中DMA传送的参照图像的量较多的情况下,相对地在TS=n+3中被DMA传送的参照图像的量较少或成为0。
因而,即使在1个周期时间内没有结束对应于1个宏块的所有的参照图像的DMA传送,只要在两个周期时间内结束就可以,所以能够缩减各周期时间内的存储器访问带来的最大数据传送量,在该图像解码装置500中,能够使关于存储器带宽的必要条件变得比较缓和。
<补充>
以上,根据实施方式1、2对有关本发明的图像解码装置进行了说明,但也可以如以下这样变形,本发明当然并不限于上述实施方式所示的图像解码装置。
(1)在实施方式1、2中,运动补偿处理单元包括输入缓冲器,但也可以将缓冲器存储器设置在运动补偿处理单元的外部。此外,构成图像解码装置的各单元也可以分别包括输入缓冲器及输出缓冲器。另外,各单元也可以并不一定是独立的个体,也可以是多个成形为一体的。
(2)在实施方式1、2中,在通过参照图像传送处理完成了对应于某个宏块的所有的参照图像从存储器向输入缓冲器的DMA传送后的周期时间中,运动补偿处理单元进行对该宏块的运动补偿处理,但是运动补偿处理单元也可以在将参照图像保存在输入缓冲器中后、在DMA传送结束前开始对该宏块的运动补偿处理,在此情况下,也可以在例如该DMA传送结束后的周期时间中接受运动补偿处理的结果,解块过滤处理单元进行解块过滤处理。即,就实施方式2来看,也可以将实施方式2所示的图像解码装置变形为如下:在取得参照图像后,动补偿处理单元马上开始运动补偿处理的情况下,在开始与处于某个周期时间内的宏块对应的参照图像的DMA传送时,在该周期时间的两个以后的周期时间内开始执行对应于该宏块的解块过滤处理。
(3)在实施方式1中,在1个周期时间内将超过规定量的参照图像从存储器进行DMA传送时,禁止了该周期时间内的解码图像向存储器进行DMA传送,但是,只要在超过规定量的参照图像进行DMA传送的周期时间内,禁止该参照图像的除了DMA传送以外的任何存储器访问就可以,例如也可以禁止编码流从存储器进行DMA传送。另外,参照图像的传送量如果以只要在某个周期时间中比规定量多则在下个周期时间中变少为前提,则可以控制成使能够利用例如该禁止的存储器周期的下个存储器周期执行所禁止的存储器访问。在将编码流的DMA传送作为禁止控制的对象的情况下,也可以例如将编码流与实施方式1中图5所示的情况相比总是先读出对应于1个宏块的量、并在VLD处理单元中设置可存储1个宏块多余量的输入缓冲器。
(4)实施方式1所示的阈值S为满足式1的最小的整数,但也可以并不一定是最小的整数。但是,如果是最小的整数,则能够最大限度地禁止存储器总线带宽。此外,在实施方式1中,表示了根据比较阈值S与运动矢量的数量的结果来决定是否暂时禁止解码图像的DMA传送的结构,但也可以将图像解码装置做成根据作为DMA传送对象的参照图像的数据量与规定量的比较结果来决定是否暂时禁止解码图像的DMA传送的结构。
(5)在实施方式1、2中,表示了以宏块单位进行解码的图像解码装置,但是也可以以更细分化的单位对宏块进行解码,本发明可以适用于将图像分割为较小的任意尺寸的块单位来进行解码的情况。
也可以不以宏块单位、而是以该块单位进行如实施方式2所示那样的流水线控制(参照图9),将该块单位基本上在1个周期时间中处理。块单位是例如作为宏块的1/16的4×4像素的尺寸、或作为1/2的8×16像素的尺寸等。另外,在以块单位进行流水线控制的情况下,对于参照图像传送处理的流水线阶段,解除在1个时间周期中执行对1个块的传送的限制。
(7)实施方式1、2所示的图像解码装置100、500也可以分别作为半导体集成电路而构成在1个半导体芯片上,此外,在将该半导体集成电路封装为1个的情况下,存储器120也可以存储于该封装的外部。另外,图12是表示将除了存储器120以外作为半导体集成电路101实现的图像解码装置100的概况的图。
工业实用性
有关本发明的图像解码装置可以用在将按照MPEG4AVC标准压缩的运动图像再现的DVD播放器、数字电视机等的图像再现装置中。

Claims (12)

1、一种图像解码装置,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:
存储器,保存有参照图像组;
补偿单元,具有用来保存参照图像的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;
参照图像传送单元,在各周期时间内,只要有对应于1个块的参照图像,就依次从上述存储器读出所有参照图像,并写入到上述输入缓冲器中;
判断单元,在各周期时间中,判断上述参照图像传送单元从上述存储器读出的参照图像的总量是否比规定基准量多;
禁止单元,在通过上述判断单元判断为多的周期时间内,除了读出参照图像时访问上述存储器以外禁止访问上述存储器;
输出缓冲器,保存由补偿单元进行了补偿处理后的块的解码图像;以及
解码图像传送单元,依次从上述输出缓冲器读出1个块的解码图像,写入到上述存储器中,
上述禁止单元在上述判断单元判断为多的周期时间内,禁止上述解码图像传送单元访问上述存储器,
上述输出缓冲器的容量是能够保存两个块量的解码图像的容量,
上述解码图像传送单元在上述禁止单元禁止的周期时间的下个周期时间内,从上述输出缓冲器连续读出两个块量的解码图像而写入到上述存储器中,在除此之外的周期时间内,从上述输出缓冲器读出1个块量的解码图像而写入到上述存储器中。
2、如权利要求1所述的图像解码装置,其特征在于,
上述图像解码装置还具备取得单元,该取得单元依次取得与根据参照图像压缩的1个块对应的运动矢量;
上述补偿单元参照上述参照图像,根据由上述取得单元取得的运动矢量,进行对块的补偿处理;
上述参照图像传送单元传送的、对应于1个块的所有的参照图像分别是根据由上述取得单元取得的对应于该块的各运动矢量来确定的;
关于在各周期时间中从上述存储器读出的对应于块的参照图像的总量是否比规定基准量多,上述判断单元根据由上述取得单元取得的对应于该块的运动矢量的数量是否比规定的阈值多来进行判断。
3、如权利要求2所述的图像解码装置,其特征在于,
上述存储器除了参照图像以外,还保存有编码流,该编码流是将对每个块包含有块头信息和块数据而成的数据进行可变长编码而成的,上述块头信息包括表示是否是根据参照图像压缩的块的信息和运动矢量;
上述图像解码装置还具备:
可变长解码单元,如果被输入了编码流,则进行可变长解码;
流传送单元,从上述存储器中依次读出编码流,输入到上述可变长编码单元中;以及
帧内处理单元,对依次传递来的块的块数据实施不参照参照图像的解码处理,
上述取得单元根据由上述可变长解码单元进行了可变长解码的结果取得上述运动矢量,再将根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述补偿单元,将没有根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述帧内处理单元;
在上述输出缓冲器中,除了由上述补偿单元进行了补偿处理后的块的解码图像以外,还保存有由上述帧内处理单元实施了解码处理后的块的解码图像。
4、如权利要求3所述的图像解码装置,其特征在于,
上述块是宏块。
5、如权利要求2所述的图像解码装置,其特征在于,
上述存储器除了参照图像以外,还保存有编码流,该编码流是将对每个块包含有块头信息和块数据而成的数据进行可变长编码而成的,上述块头信息包括表示是否是根据参照图像压缩的块的信息和运动矢量;
上述图像解码装置还具备:
可变长解码单元,如果被输入了编码流数据,则进行可变长解码;
流传送单元,从上述存储器中依次读出编码流,输入到上述可变长编码单元中;以及
帧内处理单元,对依次传递来的块的块数据实施不参照参照图像的解码处理,
上述取得单元根据由上述可变长解码单元进行了可变长解码的结果取得上述运动矢量,再将根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述补偿单元,将没有根据参照图像压缩的块的、由可变长解码单元进行了可变长解码的结果的块数据传递给上述帧内处理单元;
上述禁止单元在由上述判断单元判断为多的周期时间内,禁止上述流传送单元访问上述存储器。
6、一种图像解码装置,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:
存储器,保存有参照图像组;
补偿单元,具有用来保存参照图像的、足够保存两个块量的参照图像的容量的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;以及
参照图像传送单元,在连续的两个周期时间内,只要有分别对应于两个块的参照图像,就依次从上述存储器读出所有的参照图像,并写入到上述输入缓冲器中。
7、如权利要求6所述的图像解码装置,其特征在于,
上述图像解码装置还具备处理单元,该处理单元对由上述补偿单元进行了补偿处理后的解码图像进行处理;
上述处理单元及上述补偿单元中的1个单元与上述参照图像传送单元并列地在每个周期时间中进行对应于1个块的处理,并且通过上述参照图像传送单元,将对应于在某个周期时间内开始传送的块的处理,在两个该周期时间后的周期时间内开始执行。
8、如权利要求7所述的图像解码装置,其特征在于,
上述块是宏块。
9、一种图像解码方法,对于与参照图像组一同保存到存储器中的压缩图像,对每个块进行解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,从用于保存进行了该补偿处理之后的块的解码图像的输出缓冲器,依次将一个块的解码图像传送至上述存储器,其特征在于,包括:
参照图像传送步骤,在各周期时间内,只要有对应于1个块的参照图像,就依次从上述存储器读出所有的参照图像,并写入到规定的缓冲器中;
判断步骤,在各周期时间中,判断由上述参照图像传送步骤从上述存储器读出的参照图像的总量是否比规定基准量多;
禁止步骤,在通过上述判断步骤判断为多的周期时间内,除了读出参照图像时访问上述存储器以外禁止访问上述存储器;
补偿步骤,参照保存在上述规定的缓冲器中的参照图像,依次进行对1个块的补偿处理;以及
解码图像传送步骤,依次从上述输出缓冲器读出1个块的解码图像,写入到上述存储器中,
上述禁止步骤在由上述判断步骤判断为多的周期时间内,禁止上述解码图像传送步骤对上述存储器的访问,
上述输出缓冲器的容量是能够保存两个块量的解码图像的容量,
上述解码图像传送步骤在由上述禁止步骤禁止的周期时间的下个周期时间内,从上述输出缓冲器连续读出两个块量的解码图像而写入到上述存储器中,在除此之外的周期时间内,从上述输出缓冲器读出1个块量的解码图像而写入到上述存储器中。
10、一种图像解码方法,对于与参照图像组一同保存到存储器中的压缩图像,对每个块进行解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,并列执行:
图像传送步骤,在连续的两个周期时间内,只要有分别对应于两个块的参照图像,就依次从上述存储器读出所有参照图像,并写入到规定的缓冲器中;以及
补偿步骤,参照保存在上述规定的缓冲器中的参照图像,依次进行对1个块的补偿处理。
11、一种半导体集成电路,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:
存储器,保存有参照图像组;
补偿电路部,具有用来保存参照图像的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;
参照图像传送电路部,在各周期时间内,只要有对应于1个块的参照图像,就依次从上述存储器读出所有参照图像,并写入到上述输入缓冲器中;
判断电路部,在各周期时间中,判断上述参照图像传送电路部从上述存储器读出的参照图像的总量是否比规定基准量多;
禁止电路部,在由上述判断电路部判断为多的周期时间内,除了读出参照图像时访问上述存储器以外禁止访问上述存储器;
输出缓冲器,用来保存由上述补偿电路部进行了补偿处理后的块的解码图像;以及
解码图像传送电路部,依次从上述输出缓冲器读出1个块的解码图像,并写入到上述存储器中,
上述禁止电路部在由上述判断电路部判断为多的周期时间内,禁止上述解码图像传送电路部访问上述存储器,
上述输出缓冲器的容量是能够保存两个块量的解码图像的容量,
上述解码图像传送电路部在由上述禁止电路部禁止的周期时间的下个周期时间内,从上述输出缓冲器连续读出两个块量的解码图像而写入到上述存储器中,在除此之外的周期时间内,从上述输出缓冲器读出1个块量的解码图像而写入到上述存储器中。
12、一种半导体集成电路,对每个块进行压缩图像的解码,对于根据参照图像压缩的块进行包括对应于运动补偿的补偿处理的解码,其特征在于,具备:
存储器,保存有参照图像组;
补偿电路部,具有用来保存参照图像的、足够保存两个块量的参照图像的容量的输入缓冲器,参照保存在输入缓冲器中的参照图像,依次进行对1个块的补偿处理;以及
参照图像传送电路部,在连续的两个周期时间内,只要有分别对应于两个块的参照图像,就依次从上述存储器读出所有的参照图像,并写入到上述输入缓冲器中。
CNB2005800262624A 2004-08-04 2005-07-04 图像解码装置 Active CN100534193C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP228433/2004 2004-08-04
JP2004228433 2004-08-04

Publications (2)

Publication Number Publication Date
CN1993992A CN1993992A (zh) 2007-07-04
CN100534193C true CN100534193C (zh) 2009-08-26

Family

ID=35786985

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005800262624A Active CN100534193C (zh) 2004-08-04 2005-07-04 图像解码装置

Country Status (5)

Country Link
US (1) US8428126B2 (zh)
EP (1) EP1775961B1 (zh)
JP (1) JP4668914B2 (zh)
CN (1) CN100534193C (zh)
WO (1) WO2006013690A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2595583A1 (en) * 2005-01-28 2006-08-10 Thomson Licensing Method and apparatus for real-time frame encoding
EP2026585A4 (en) 2006-05-24 2016-08-31 Panasonic Ip Man Co Ltd IMAGE ENCODING DEVICE AND METHOD, AND IMAGE ENCODING INTEGRATED CIRCUIT
JP2007318517A (ja) * 2006-05-26 2007-12-06 Sony Corp 画像データの処理方法、画像データの処理方法のプログラム、画像データの処理方法のプログラムを記録した記録媒体及び画像データの処理装置
JP2008072647A (ja) * 2006-09-15 2008-03-27 Toshiba Corp 情報処理装置、デコーダおよび再生装置の動作制御方法
CN102263950B (zh) * 2007-05-17 2014-10-01 索尼株式会社 编码设备和编码方法以及解码设备和解码方法
KR20090011223A (ko) * 2007-07-25 2009-02-02 삼성전자주식회사 방송처리장치 및 그 제어방법
KR101439848B1 (ko) * 2008-01-08 2014-09-17 삼성전자주식회사 움직임 보상 방법 및 장치
JP5275454B2 (ja) * 2009-03-31 2013-08-28 パナソニック株式会社 画像復号装置
US8186876B2 (en) * 2009-04-20 2012-05-29 Welch Allyn, Inc. Calibrated assembly for IR thermometer apparatus
US8136985B2 (en) * 2009-05-05 2012-03-20 Welch Allyn, Inc. IR thermometer thermal isolation tip assembly
US9877033B2 (en) * 2009-12-21 2018-01-23 Qualcomm Incorporated Temporal and spatial video block reordering in a decoder to improve cache hits
US10033997B2 (en) * 2010-06-23 2018-07-24 Panasonic Intellectual Property Management Co., Ltd. Image decoding apparatus, image decoding method, integrated circuit, and program
US20130114727A1 (en) * 2010-08-03 2013-05-09 Sony Corporation Image processing device and image processing method
JP5736863B2 (ja) * 2011-03-15 2015-06-17 富士通株式会社 トランスコード装置及びトランスコード方法
JPWO2013136678A1 (ja) * 2012-03-16 2015-08-03 パナソニックIpマネジメント株式会社 画像復号装置および画像復号方法
JP2014078891A (ja) * 2012-10-11 2014-05-01 Canon Inc 画像処理装置、画像処理方法
CN103402086B (zh) * 2013-07-22 2017-02-15 华为技术有限公司 一种用于视频编码系统的性能控制方法及编码器
KR102285940B1 (ko) 2015-05-29 2021-08-05 에스케이하이닉스 주식회사 데이터 처리 회로, 데이터 처리 회로를 포함하는 데이터 저장 장치 및 그것의 동작 방법
US11515897B2 (en) 2015-05-29 2022-11-29 SK Hynix Inc. Data storage device
US10396827B2 (en) * 2015-09-25 2019-08-27 SK Hynix Inc. Data storage device
US11177835B2 (en) 2015-09-25 2021-11-16 SK Hynix Inc. Data storage device
US11611359B2 (en) 2015-05-29 2023-03-21 SK Hynix Inc. Data storage device
US11087428B2 (en) * 2018-03-23 2021-08-10 Canon Kabushiki Kaisha Image processing apparatus, data processing apparatus, and image processing method
US11558637B1 (en) * 2019-12-16 2023-01-17 Meta Platforms, Inc. Unified search window to support multiple video encoding standards

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293486A (en) * 1991-06-28 1994-03-08 Digital Equipment Corporation Deterministic method for allocation of a shared resource
JPH07240844A (ja) * 1993-03-19 1995-09-12 Mitsubishi Electric Corp 画像データ処理装置および画像データ処理方法
JPH07336689A (ja) * 1994-06-07 1995-12-22 Hitachi Ltd 動き補償回路
JP3824678B2 (ja) * 1995-05-09 2006-09-20 株式会社ルネサステクノロジ 画像復号表示装置
JP3810830B2 (ja) * 1995-07-20 2006-08-16 株式会社日立製作所 符号化映像信号の復号化処理方法及びそれを用いた復号化装置
CN1110963C (zh) 1997-03-26 2003-06-04 松下电器产业株式会社 图象解码装置
JPH10327412A (ja) * 1997-03-26 1998-12-08 Matsushita Electric Ind Co Ltd 画像復号化装置
CN1156171C (zh) * 1997-04-07 2004-06-30 松下电器产业株式会社 提高处理效率的图象声音处理装置
JP3589565B2 (ja) * 1997-04-07 2004-11-17 松下電器産業株式会社 映像音声処理装置
JPH11252549A (ja) * 1998-02-27 1999-09-17 Toshiba Corp 画像符号化/復号化装置

Also Published As

Publication number Publication date
JP4668914B2 (ja) 2011-04-13
US20070206675A1 (en) 2007-09-06
WO2006013690A1 (ja) 2006-02-09
US8428126B2 (en) 2013-04-23
EP1775961B1 (en) 2017-06-14
JPWO2006013690A1 (ja) 2008-05-01
EP1775961A1 (en) 2007-04-18
EP1775961A4 (en) 2012-02-08
CN1993992A (zh) 2007-07-04

Similar Documents

Publication Publication Date Title
CN100534193C (zh) 图像解码装置
US6023553A (en) Method and apparatus for achieving video data reduction through the use of re-encoding
US7876829B2 (en) Motion compensation image coding device and coding method
CN100508585C (zh) 用于控制数字视频比特流逆向播放的装置和方法
CN101895765B (zh) 代码转换器、记录装置和代码转换方法
US9509992B2 (en) Video image compression/decompression device
US20070071099A1 (en) External memory device, method of storing image data for the same, and image processor using the method
US9560361B2 (en) Adaptive single-field/dual-field video encoding
US20110243218A1 (en) Method of implementing improved rate control for a multimedia compression and encoding system
US20060062311A1 (en) Graceful degradation of loop filter for real-time video decoder
CN101755462A (zh) 图像编码装置以及图像编码方法
JP5947641B2 (ja) 動画像符号化装置及びその制御方法、コンピュータプログラム
US9615095B2 (en) Coding device, imaging device, coding transmission system, and coding method
US20070064808A1 (en) Coding device and coding method enable high-speed moving image coding
US20060088097A1 (en) Moving picture encoding apparatus having increased encoding speed and method thereof
CN103109535B (zh) 图像再生方法、图像再生装置、摄像系统及再生系统
JP2002320228A (ja) 信号処理装置
EP1045592A2 (en) Image processing method, image processing apparatus and data storage media
JPH11298903A (ja) ディジタル画像復号装置及び方法、並びに提供媒体
KR100670495B1 (ko) 동영상 압축 부호화 장치 및 방법
KR100891116B1 (ko) 대역폭 인식 움직임 보상 장치 및 그 방법
CN100474914C (zh) 控制数字视频数据的比特率的方法和装置
US20050169375A1 (en) Read/write separation in video request manager
US20060224646A1 (en) System (s), method (s), and apparatus for converting unsigned fixed length codes (decoded from exponential golomb codes) to signed fixed length codes
US20090016437A1 (en) Information processing apparatus

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant