CN101399977A - 解码装置中控制片内存储器的数据并行读写的方法及装置 - Google Patents
解码装置中控制片内存储器的数据并行读写的方法及装置 Download PDFInfo
- Publication number
- CN101399977A CN101399977A CN 200710046714 CN200710046714A CN101399977A CN 101399977 A CN101399977 A CN 101399977A CN 200710046714 CN200710046714 CN 200710046714 CN 200710046714 A CN200710046714 A CN 200710046714A CN 101399977 A CN101399977 A CN 101399977A
- Authority
- CN
- China
- Prior art keywords
- data
- read
- memory
- write
- piecemeal
- 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.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
现有的基于宏块的运动补偿视频解码方案,对外部数据的读取和读取已存数据以做插值运算是串行操作的,导致了设置在视频解码装置内部的片内存储装置的容量较大以及解码速度下降,本发明提供了一种在数据解码装置中用于控制并行地将外部数据写入片内存储装置并由片内存储装置读取已存数据进行解码运算的方法及其装置可以减少所需要的片内存储装置的容量和解码的时间。
Description
技术领域
本发明涉及一种数据解码装置,尤其涉及数据解码装置的片内存储装置中数据的读写控制方法及其装置。
背景技术
目前视频解码芯片对于基于宏块的运动补偿视频解码方案如下:
-由解码数据中获取当前图像或当前帧中的一个宏块(以下称“当前块”)的信息,其中包括运动矢量以及原始图像中当前块与参考块之间的残差块数据。其中,所述运动矢量用以指示当前块与参考帧中相应宏块的参考块之间的相对位置。
-基于该运动矢量在片外存储装置的参考帧数据中找到相应的参考块数据,并读入片内存储装置。其中,所述片外存储装置是视频解码装置外部的存储装置,所述片内存储装置是设置在视频解码装置内部的存储装置。
-将参考块数据与残差块数据相加,即可复原出当前块的原始图像的编码数据。
然而,实际过程中,基于运动矢量计算出的参考块位置信息可能并非是整数值。此时不能将参考块数据直接与残差块数据相加,而需要由参考块数据利用插值计算来获取与当前块对应的预测块数据。
具体的,例如当前块的象素位置为(x,y),运动矢量为(a,b),则对应的参考块象素位置应为(x’,y’),其中,x’=x-a;y’=y-b,当x’,y’并非整数值时,则不可能直接读取相应的象素值,只能由与之相邻的整数位置上的象素值进行插值计算来获取,通常可有2-4个象素值来进行插值计算,即(x1,y1),(x1,y2),(x2,y1),(x2,y2),其中,x1<x’<x2;y1<y’<y2。因此,在读取参考块数据时,除与当前块象素数量对应的象素外,还需要读取周围的额外象素数据,以用于对边缘象素进行插值计算。
而以上过程中,运动补偿的计算量主要在于两个部分:
其一是从片外存储装置读取参考块的图像的编码数据;其二是对读取的参考块的图像的编码数据进行插值计算。
现在的视频解码装置,特别是在手持设备的视频解码装置中,片外存储装置访问速度比较慢,尤其是在现有的采用AHB架构(Advanced High performance BUS,高性能总线)来访问SDRAM(Synchronous DRAM,同步动态随机存储器)的情况下,访问片外存储装置产生的延迟远大于插值计算的延迟。因此,在支持手持设备的视频解码模块中,MC(Motion Compensation,运动补偿)设计的瓶颈主要是如何减少读取参考图像的延迟。
而在现有技术中的视频解码装置中,片内存储装置只设置一个存储器,用于存储由片外存储装置中读取的参考块的图像的编码数据,且对片外存储装置中的数据读取与对所存储的参考块的图像的编码数据的插值计算进行串行处理,即对片外存储装置中的参考块的图像的编码数据的读取后才能对该部分参考块块的图像的编码数据进行插值计算且在该次插值计算完毕后才能继续对片外存储装置中下一参考块的读取。
这种方案无疑增加了由片外存储装置读取数据的间隔和访问片外存储装置的次数,因此必然导致插值计算延迟。
具体的,对于上述片外存储装置的参考块的图像的编码数据的读取与插值计算方案,现有技术包括以下两种实现方式:
第一种方式:在视频解码装置中,设置一个大容量的存储器作为片内存储装置,当一个宏块的参考块全部存储完毕后,再对保存在该存储器中的该参考块的图像的编码数据读取以进行插值计算,其中该片内存储装置的大小至少能够容纳一个宏块的参考图像的数据。
图1所示为现有技术读取片外存储装置中参考块的图像的编码数据以及对该图像的编码数据进行插值计算的第一种方式的示意图。
步骤S11中,视频解码装置计算出当前宏块的相关信息,其中所述相关信息包括该宏块的参考块的图像的编码数据。
步骤S12中,视频解码装置从片外存储装置中读取并保存该当前宏块的参考块的图像的编码数据。
步骤S13,判断当前宏块的数据是否全部读取,如果没有全部读取,则返回步骤S12继续从片外存储装置读取并保存其余的图像的编码数据,如果读取完毕,则执行步骤S14。
步骤S14中,视频解码装置对所读取的图像的编码数据进行插值
计算。步骤S15中,视频解码装置对插值计算的结果输出。
这种方式在一个宏块的数据读取时只需要对片外存储装置执行一次读取操作,因而延迟较小。
但是这种方式采用的存储器的大小必须足够大以能容纳至少一个宏块的参考块的图像的编码数据。而大容量的存储器无疑将大大增加视频解码芯片的面积和制造成本。
第二种方式:在视频解码装置中,设置一个小容量的存储器,并且每次从片外存储装置中读取宏块中的一个分块(例如4×4块)的参考块的图像的编码数据写入该存储器,保存完毕后对该存储器中的数据进行插值计算。插值计算完毕后,再将下一个分块的参考块的图像的编码数据写入该存储器,保存完毕后再进行该下一个分块的插值计算,如此往复。由于这种方式的插值计算将一个宏块分割成多个分块依次进行存储和插值,因此一个宏块的存储和插值计算分为多次进行。
图2所示为现有技术读取片外存储装置中图像的编码数据以及对该图像的编码数据进行插值计算的第二种方式的示意图。
步骤S21中,视频解码装置计算出当前宏块的相关信息,其中所述相关信息包括该宏块的参考块的图像的编码数据。
步骤S22中,视频解码装置从片外存储装置中读取一预定量的该当前宏块的参考块的图像的编码数据。
步骤S23,视频解码装置对所述预定量的图像的编码数据进行插值计算。
步骤S24,判断当前宏块的参考块的图像的编码数据是否全部读取并插值计算完毕,如果没有当前宏块的参考块的图像的编码数据没有全部读取并插值计算完毕,则返回步骤S12继续从片外存储装置读取该宏块下一预定量的图像的编码数据。
步骤S25中,视频解码装置对插值计算的结果输出。
对比第一方式,这种方式减少了所需的存储器的大小,但是由于每次读取的图像的编码数据大大减少,相同大小的宏块就需要分成多次来读取,因此增加了访问片外存储装置的次数,增加了访问片外存储装置产生的延迟。
综上所述,现有技术的上述两种方式,对片外存储装置中的图像的编码数据的读取并存入存储器的操作与对存储器中数据读取并进行插值计算的操作是串行处理的。因此不论是上述第一种方式或者是上述第二种方式,在从片外存储装置中读取数据的同时,不能进行插值计算,而插值计算的同时,也不能对片外存储装置进行读取,增加了运动补偿中读取和插值计算的总时间,从而导致了视频解码运算时间的增长。
特别是第二种方式,由于其读取次数增加,每次进行读取需要对片外存储装置,例如SDRAM,进行包括请求仲裁、激活memory的行、读数据、关闭等操作,因而,大大增加了读取的延迟时间。
而第一种方式,由于虽然由于其对片外存储装置中当前宏块的图像的编码数据一次读取完毕保存在解码装置内部的存储器中,但是为了能够完整保存当前宏块的图像的编码数据,所使用的存储器必须足够大,而大容量的存储器无疑大大增加了视频解码装置的成本。
发明内容
针对现有技术的解码装置特别是视频解码装置所采用的片外存储装置中的外部数据特别是图像的编码数据的读取和对该外部数据的解码计算的串行执行方案存在的读取延迟大和需要在解码装置内部设置大容量的存储器的问题,本发明采用了一种并行读取外部数据与对已存数据进行解码运算的控制方法及其装置。
根据本发明的第一方面,提供了一种在数据解码装置中用于控制将外部数据写入片内存储装置并由片内存储装置读取外部数据进行解码运算的方法,其特征在于该方法并行地控制将从片外存储装置读取的外部数据存入片内存储装置以及从片内存储装置读取已存数据进行解码运算的操作。
根据本发明的第二方面,提供了一种在数据解码装置中用于控制将外部数据写入片内存储装置并由片内存储装置读取已存数据进行解码运算的读写控制装置,其特征在于,并行地控制从片外存储装置读取外部数据存入所述片内存储装置以及从片内存储装置读取已存储的数据进行解码运算的操作。
根据本发明的第三方面,提供了一种用于控制将外部数据写入片内存储装置并由片内存储装置读取外部数据进行解码运算的数据解码装置,其特征在于,包括所述的读写控制装置。
与现有技术相比,本发明对片外存储装置的图像的编码数据的读取和插值计算是并行进行的,其中,对片外存储装置读取可以连续进行,因而降低了对片外存储装置的外部数据的读取延迟,而由于解码计算与对片外存储装置中的数据读取是并行处理的,解码计算完毕后的数据可以被覆盖,而不必占据解码装置内部的片内存储装置的存储空间,因而也减低了所需要的片内存储装置的大小。
附图说明
通过阅读以下参照附图所作的对非限制性实施例的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1为现有技术的外部数据的读取和解码计算的第一种方式的流程图;
图2为现有技术的图像的编码数据的读取和插值计算的第二种方式的流程图;
图3为根据本发明一个具体实施例的采用一个存储器作为片内存储装置的控制并行地进行编码数据的写入片内存储装置与从片内存储装置中读取的方法的示意图;
图4为根据本发明一个具体实施例的采用一个存储器作为片内存储装置的控制并行地进行编码数据的写入片内存储装置与从片内存储装置中读取的方法的流程图;
图5为根据本发明一个具体实施例的采用两个存储器作为片内存储装置的控制并行地进行编码数据的写入片内存储装置与从片内存储装置中读取的方法的示意图;
图6为根据本发明一个具体实施例的采用多个存储器作为片内存储装置的控制并行地进行编码数据的写入片内存储装置与从片内存储装置中读取的方法流程图;
图7a为根据本发明一个具体实施例的intel16×8格式的宏块划分为两个块的示意图;
图7b为根据本发明一个具体实施例的intel8×8格式的宏块划分为四个块的示意图;
图7c为根据本发明一个具体实施例的intel8×16格式的宏块由两个块划分为四个分块的示意图;
图8a为根据本发明一个具体实施例的intel8×16格式的宏块中一个块的相关参考块示意图;
图8b为根据本发明一个具体实施例的intel8×16格式的宏块中另一个块的相关参考块示意图;
图8c为根据本发明一个具体实施例的intel8×16格式的宏块中相邻两个分块的公共参考象素块的示意图;
图9a为根据本发明一个具体实施例的一个控制并行地进行编码数据的写入与读取的读写控制装置的结构图;
图9b为根据本发明一个具体实施例的一个控制并行地进行编码数据的写入与读取的读写控制装置的一个优选例的结构图;
图10a为根据本发明一个具体实施例的另一个控制并行地进行编码数据的写入与读取的读写控制装置的结构图;
图10b为根据本发明一个具体实施例的一个控制并行地进行编码数据的写入与读取的读写控制装置的另一个优选例的结构图。
具体实施方式
为了更好地理解本发明,下面结合本发明的具体实施例作进一步说明,但其不限制本发明。
根据本发明的第一方面,提出了一种在数据解码装置中用于控制将外部数据从片外存储装置写入片内存储装置并由片内存储装置读取已存数据进行解码运算的方法,其中,所述片外存储装置指设置在数据解码芯片外部的SDRAM(Synchronous DRAM,同步动态随机存储器),闪存卡(Flash memory card),光盘和硬盘等存储装置,所述片内存储装置指设置在数据解码芯片内部的缓存以及寄存器等存储装置,其采用了以下两种实施方案:
第一种方案,采用片内存储装置只采用一个存储器,且该片内存储装置分为已存区域和空闲区域两部分,当外部数据从片外存储装置中读取并写入片内存储装置中空闲区域中时,同时从片内已存区域中读取已存数据以进行解码计算。
第二种方案,采用片内存储装置采用多个存储器,并将待解码的数据分为多个分块,其中所述多个存储器可以是多个独立的存储装置,也可以是一个存储装置划分成的多个存储区域,所述多个存储器包括空闲存储器和已写存储器。当从片外存储装置中读取当前分块的外部数据写入空闲存储器时,同时执行从已写存储器中读取前一分块的已存数据进行解码计算。当前分块的数据全部写入所述空闲存储器且前一分块的已存数据已经全部读取,则将所述空闲存储器作为已写存储器,将存储所述前一分块数据的已写存储器作为空闲存储器,并执行下一分块数据的存储与所述当前分块数据的读取以做解码计算。
下面结合附图对本发明的两种方案进行具体说明。
首先,参照图3和图4对本发明的第一种方案即采用一个存储器作为片内存储装置12方案进行说明。
首先,在步骤S41中,数据解码装置01控制并行地将由片外存储装置11读取的外部数据写入所述存储器的空闲区域及读取所述存储器已存区域中的已存数据,以进行解码运算,例如在基于宏块的视频解码装置中,所述解码运算可以包括插值运算。
数据解码装置01从片外存储装置11中读取外部数据存入片内存储装置12,同时对已经存入片内存储装置12的数据进行解码运算。
如图3所示,片内存储装置12包括已保存数据的已存区域13,和已存区域中已存数据已被读取以做解码计算的区域14。
读写控制装置02从片外存储装置11中读取外部数据,并顺次存入片内存储装置12中空闲部分。当外部数据从片外存储装置11中写入片内存储装置12后,存储后的所述外部数据即为存储在所述片内存储装置12中的已存数据。在将片外存储装置11中的外部数据写入片内存储装置12的同时,读写控制装置02还读取片内存储装置1211中的已存数据以做解码计算。
接着,在步骤S42中,数据解码装置控制将所述空闲区域中的写入已存数据的部分由空闲区域中去除且合并入已存区域;
参考图3,片内存储装置12包括可以写入新的外部数据的空闲区域15和已经存在已存数据的已存区域13。具体地,所述空闲区域15与所述已存区域13的转换方式有以下两种:
在第一种转换方法中,当空闲区域15写入外部数据后,该写入数据部分的空闲区域15被并入已存区域13,写入的外部数据即成为已存数据。
这种转换方式在外部数据的写入过程中,随着外部数据的写入,空闲区域15减少,已存区域13增加。因此这种方法的片内存储装置12的空闲区域的存储量足够大,例如读写控制装置01是使用在在基于运动补偿的视频解码装置的读写控制装置时,对于每一个当前宏块处理开始时,其片内存储装置12中的空闲区域的存储量必须大于所要处理的宏块的图像的编码数据的最大数据量。
在第二种转换方式中,当空闲区域15写入外部数据后,该写入数据部分的空闲区域15被并入已存区域13,写入的外部数据即成为已存数据,并且在已存区域13中有已存数据被读取后,该已存数据已被读取的部分已存区域,即图3中附图标记14所示的部分已存区域,由于其所存储的已存数据已经被读取,因此该部分的已存数据可以被覆盖,所述部分已存区域14可以并入空闲区域15。
因此,在第二种转换方式中,步骤S42还可以包括以下步骤:
控制将所述已存区域中的已存数据已被读取的部分由所述已存区域中去除且合并入空闲区域。该步骤可以在读取已存数据以进行解码运算的同时进行。
另外,在对外部数据的存储和对已存数据的读取过程中,由于对片外存储装置11的读取速度通常较读取片内存储装置12中已存数据以进行解码运算的速度为慢,所以本发明还可以进一步对外部数据写入片内存储装置12的过程与从片内存储装置12读取已存数据以进行解码运算的过程进行协调处理。
所以优选地,步骤S41还进一步包括以下步骤:
检测所述已存区域中未被读取的已存数据量;其中,所述对片内存储装置12中未被读取的已存数据的数据量的检测可以通过地址指针或者地址表计算得到。
当检测到所述已存区域中未被读取的已存数据量小于第一预定阈值时,控制停止读取所述已存区域中的已存数据;
当检测到已存区域中未被读取的已存数据量大于第二预定阈值时,控制开始读取已存区域中的已存数据。
例如,参照图3,所述检测未被读取的已存数据量是否大于第一预定阈值操作在对所述存储在片内存储装置12中的已存数据的读取操作前进行,所述检测未被读取的已存数据量是否小于第一预定阈值的操作在对所述存储在片内存储装置12中的已存数据的读取操作时进行。
并设定片内存储装置12中未被读取以做解码运算的已存数据大于一第二预定阈值时,开始读取片内存储装置12中的已存数据以作解码运算,而小于一第一预定阈值时,停止读取片内存储装置12中的已存数据以作解码运算。
对于使用在基于运动补偿的视频解码装置中的读写控制方法,所述外部数据是存储在片外存储装置11中的当前宏块对应的图像的编码数据,所述第一预定阈值可以时3×3块象素对应的数据量,所述第二预定阈值可以是9×9块象素对应的图像的编码数据的数据量。由于读取片内存储装置12中的已存数据以进行解码运算的速度远大于从片外存储装置11中的读取外部数据的速度,因此,每次从片内存储装置12中读取数据进行解码运算一段时间后,片内存储装置12中未解码运算的已存数据将小于所述第一预定阈值,当已存数据小于所述第一预定阈值时,则停止对所述片内存储装置12中已存数据的读取。停止读取片内存储装置12中的已存数据后,从片外存储装置11中读取并存入片内存储装置12的已存数据的增加,当所述片内存储装置12中未解码运算的已存数据大于所述第一预定阈值时,对所述片内存储装置12中已存数据的读取重新启动。而与此已存数据的间歇性读取不同,从片外存储装置11中读取外部数据写入片内存储装置12的过程可以是连续的。
上述第一、第二阈值可以由本领域技术人员根据具体应用情况确定,在此不再累述。
其中,对片内存储装置12中未被读取作解码运算的已存数据的数据量的判断,在顺序存储的情况下,可以使用已存区域与已存区域中已存数据已读取部分的指针的地址差计算得到。
在非顺序存储的情况下,可以设置一个地址表,用来记录所有已存区域的地址段信息,以及记录所有已存区域中已读取部分的已存数据的地址段,根据地址表中所有已存区域的地址段得到已存区域的数据量,并根据所有已存区域中已读取部分的已存数据的地址段得到已存区域中已读取部分的已存数据的数据量,从而计算得到所述片内存储装置12中未被读取作解码运算的已存数据的数据量。
然后,在步骤S43中,数据解码装置01判断所述外部数据均已被读取,如果没有全部读取,则重复步骤S41和S42,直至所述外部数据均已被读取,以进行解码运算。
下面结合图3和图4,以intel16×16格式的宏块数据的读取过程为例对根据本发明的一个具体实施例的使用在基于运动补偿的视频解码装置中的片内存储器的读写控制方法作进一步说明。
其中设置在该视频解码装置内部的片内存储装置12为一个156×4字节的存储器。
intel16×16格式的宏块只包含一个16×16的块,其对应的参考块的图像的编码数据最大值为126×4字节小于156×4字节。
首先,以片内存储装置12的地址0作为存储起始地址,将保存在片外存储装置11中的当前处理的intel16×16格式的宏块的参考块的图像的编码数据作为外部数据存储到片内存储装置12中,直至该宏块的参考块的图像的所有编码数据都保存完毕。
在所述宏块的参考块的图像的编码数据存储的同时,开始检测所述作为片内存储装置12的存储器中已经保存但尚未被读取以做插值计算的已存数据的数据量,并将16×4字节作为第一预定阈值,将9×4字节作为第二预定阈值,当该数据量大于该第一预定阈值即16×4字节时,开始读取存储器中的未被读取的已存数据以作解码运算,由于对片内存储装置12中数据读取速度大于对片内存储装置12的已存数据的读取速度,随着读取过程的进行,所述未被读取的已存数据量逐渐减少。当该数据量小于该第二预定阈值即9×4字节时,读取片内存储装置12中的已存数据以作解码运算的过程停止。停止后所述未被读取的已存数据量逐渐增加,当该数据量大于第一预定阈值时,再次读取片内存储装置12中未被读取的已存数据。如此往复,直至该当前intel16×16格式的宏块的参考块的图像的编码数据全部被存储到片内存储装置12中,并全部被读取以做插值运算。上述第一、第二阈值可以由本领域技术人员根据具体应用情况确定,在此不再累述。
本发明的第二种方案是采用多个存储器作为片内存储装置12的方案,该方案中所要读取的外部数据被分为多个分块。
其中设置在数据解码装置01内部的片内存储装置12包括两个或两个以上的存储器,所述两个或者两个以上地存储器可以是物理上独立的两个或者两个以上内部存储器,也可以是也可以是一个内部存储器划分出来的两个或两个以上存储区域。
以下参照图4~图8c,以采用两个物理上独立的存储器的片内存储装置12的解码装置中的读写控制装置为例来对多个存储器的片内存储装置12的读取控制方法作进一步说明。
具体地,所述两个存储器即第一存储器51与第二存储器52交替地作为空闲存储器和已存存储器。其中,空闲存储器用于存储从片外存储装置11中读取的数据,已存存储器中的数据用于被读取以进行解码运算。
在数据解码开始时如果第一存储器51与第二存储器52中都没有存储需要进行解码运算的数据,则所述第一存储器51和所述第二存储器52都可以用来存储数据,两者都可以作为空闲存储器。随机或者缺省地选择第一存储器51或者第二存储器52用来存储从片外存储装置11中读取的外部数据。而由于第一存储器51与第二存储器52都没有写入数据,开始时不存在已写存储器,因此此时也不执行读取已写存储器中的已存数据的操作,而只执行从片外存储装置11读取外部数据的操作。从片外存储装置11中读取第一个分块的外部数据可以存入所述空闲存储器。当第一分块的数据全部存入一个空闲存储器例如第二存储器52后,所述第二存储器52则转换为已写存储器状态,继续执行如上述参照图3和图4所述的并行读写数据的处理流程。
下面参照图5a和图5b来对第一存储器51和第二存储器52交替作为空闲存储器和已写存储器执行并行读写操作的处理流程进行说明。
图5a中,第一存储器51作为空闲存储器,第二存储器52作为已写存储器。从片外存储装置11读取当前分块对应的外部数据写入空闲存储器,即第一存储器51,同时读取已写存储器,即第二存储器52中的已存数据,即存储在第二存储器52中前一分块对应的已存数据进行解码运算。由于通常读取片内存储装置12以做解码运算的速度远大于对片外存储装置11的读取速度,因此当第二存储器52中的已存数据读取完毕时,将第二存储器52作为空闲存储器,对片外存储装置11中的数据的读取可能尚未完成,即将外部数据写入第一存储器51的操作仍在继续,所述第一存储器51仍然是空闲存储器。当所述当前分块的数据全部存入第一存储器51后,所述第一存储器51转为已写存储器,继续执行如图4所示的下一分块对应的外部数据写入空闲存储器和读取已写存储器中当前分块数据的操作,如图5b所示。
图5b中,第一存储器51为已写存储器状态,第二存储器52为空闲存储器状态。将下一分块作为当前分块,从片外存储装置11中读取该当前分块即前述如图5a所示的操作中的下一分块对应的外部数据写入空闲存储器即第二存储器52,并从已写存储器即第一存储器51中,读取当前分块的数据进行解码运算。当所述已写存储器中的当前数据读取完毕,且所述下一分块的外部数据在空闲存储器中存储完毕,则将第二存储器52转换为已存存储器状态,将第一存储器转换为空闲存储器状态。
随后,执行如图5a所示的操作,即从片外存储装置11中读取所述当前分块的下一分块的外部数据写入空闲存储器,从已写存储器中读取所述当前分块的已存数据进行解码运算。如此往复,直至需要解码运算的全部外部数据解码运算完毕。
本领域技术人员根据以上描述,应可无需任何创造性劳动即可类推到两个存储区域来实现本发明的方案,在此不在累述。
当片内存储装置12包括的存储器多于两个时,情况与上述2个存储器的情况类似,将写入外部数据的存储器作为已写存储器,从未写入数据以及写入数据但已经被读取完毕的存储器中随机或者以缺省顺序选择一个存储器作为空闲存储器执行上述并行执行数据读写的操作。本领域技术人员根据以上对两个存储器的方案的描述,应能无需任何创造性劳动实现多于两个存储器的方案,在此不再累述。
图6所示的流程图为根据本发明的另一种具体实施方式即控制并行地进行编码数据的写入与读取的方法,其中,片内存储装置12包括多个存储器。
该方法包括以下步骤:
首先在步骤S61中,控制将并行地由片外存储装置11中读取的当前分块的外部数据写入所述多个存储器中的一空闲存储器中;以及控制由所述多个存储器中的已写存储器中读取前一分块的已存数据,以进行解码运算;
其次在步骤S62中,当检测到所述当前分块的外部数据已完全写入所述空闲存储器中且所述前一分块的已存数据已由所述已写存储器中完全读出,则将所述已写存储器作为空闲存储器和将所述空闲存储器作为已写存储器,
然后在步骤S63中,重复上述步骤S61,直至所述参考块的所有分块的外部数据均已被读取,以进行解码运算。
另外,作为本发明的一种优化例,当空闲存储器中已存储的数据与将要存储进该空闲存储器中的外部数据有部分重叠时,该部分重叠的数据可以不再读取从而减少读取外部数据的时间。
为实现这种功能,步骤S61还可以包括以下步骤:
检测在所述多个存储器之一中顺序写入的两个分块之间是否存在重叠冗余数据。
如果当检测在所述空闲存储器中前一写入的分块与当前分块之间存在重叠冗余数据,则控制在所述空闲存储器中保留所述重叠冗余数据而仅写入当前分块中非重叠冗余的数据。
下面结合图5a和图5b,以两个存储器的基于运动补偿的视频解码装置中的数据读写控制装置为例对根据本发明一个具体实施例的采用多个存储器的片内存储装置12的在数据解码装置中用于控制将外部数据写入片内存储装置12并由片内存储装置12读取已存数据进行解码运算的方法做进一步说明。
该读写控制装置中设置在该视频解码装置内部的片内存储装置12的大小可以由根据宏块所划分的分块的对应的参考块的图像的编码数据的大小确定。
下面以现有16×16的宏块的处理方法为例进行说明,以下实施例中的所述片内存储装置12包括第一存储器51和第二存储器52,所述第一存储器51和所述第二存储器52由一个156×4字节大小的存储装置所划分出的两个78×4字节大小的存储区域构成,即所述两个存储区域分别构成第一存储器51和第二存储器52,其中所述第一存储器的起始地址为0,所述第二存储器的起始地址为78。由于该读写控制装置使用在视频解码装置中,所述外部数据和所述已存数据为图像块的数据。进一步在所述基于运动补偿的视频解码装置的应用环境中,所述图像块包括参考宏块。
具体的,对于intel16×8类型的宏块的数据,如图7a所示,该类型的宏块包括2个16×8的块,以每个块为一个分块。下面参照图7、图5a、图5b来对本发明进行描述。
由于intel16×8类型的宏块,其对应的参考块的数据的理论最大值为2×13×21Byte,但实际的操作中,为了便于整行存储,实际上存储这些数据的最大存储量为2×13×24Byte,即156×4字节,即单个块所需的最大存储量为78×4字节。因此,78×4字节的存储器足够用来存储一个所述16×8的块对应的数据。
将当前宏块的第一个分块的对应的参考块的图像的编码数据存储到第一存储器,其存储的起始地址为第一存储器的起始地址,即从0地址开始存储。存储完毕后,将第二个分块对应的参考块的图像的编码数据存储到第二存储器52中,其存储的起始地址为第二存储器52的起始地址,即从78地址开始存储。同时对存储在第一存储器51中的第一个分块对应的图像的编码数据进行插值运算,待第二分块的数据存储完毕后,对存储在第二存储器52中的第二分块对应的图像的编码数据进行插值计算。
对于intel8×8格式的宏块,如图7b所示,宏块包含4个8×8块,且每个8×8块可以进一步划分为1个8×8分块,或者2个8×4或者4×8分块,又或者4个4×4分块。
其中,每个分块最大的理论最大值为13×13Byte,但在实际应用中,为了便于整行存储,每个分块的图像的编码数据占用的最大存储量为13×16字节,即52×4字节。由于每个块可以进一步分为1个,或者2个,或者4个分块,每个分块的图像的编码数据占用的最大存储量应是小于或者等于52×4字节,因此,不论是单个分块对应的参考块的图像的编码数据还是单个块对应的参考块图像的编码数据都小于一个存储器的存储大小,即78×4字节。
在将intel8×8格式的宏块的图像的编码数据写入片内存储装置12并从片内存储装置12中读出该宏块已写入的分块或者块对应的参考块的图像的编码数据以进行插值计算时,该分块或者块对应的参考块的图像的编码数据作为该分块或者块的外部数据,在写入片内存储装置12后,保存在该片内存储装置12的该分块或者块对应的参考块的图像的编码数据作为该分块或者块的已存数据,由于一个分块或者块对应的参考块的图像的编码数据需要的存储量都小于一个存储器的存储大小,因此,即可以以分块为单位进行写入与读出,也可以以块为单位进行写入与读出。
以分块为单位进行所述intel8×8格式的宏块图像的编码数据的写入与读取操作如下:
将第一个分块对应的外部数据存储到第一存储器51,其存储的起始地址为第一存储器51的起始地址,即从地址0开始存储。存储完毕后,将第二个分块的外部数据存储到第二存储器52中,其存储的起始地址为第二存储器52的起始地址,即从地址78开始存储。同时对存储在第一存储器51中的第一个分块的已存数据进行插值运算,待第二分块的外部数据存储完毕后,对存储在第二存储器52中的第二分块的已存数据进行插值计算,并将第三分块对应的外部数据从0地址开始存储到第一存储器51中。如此往复,直至所有分块都被插值计算完毕。
以块为单位进行所述intel8×8格式的宏块图像的编码数据的写入与读取操作如下:
将第一个块的外部数据存储到第一存储器51,其存储的起始地址为第一存储器51的起始地址,即从地址0开始存储。存储完毕后,将将第二个块对应的外部数据存储到第二存储器52中,其存储的起始地址为第二存储器52的起始地址,即从地址78开始存储。同时对存储在第一存储器51中的第一个块的已存数据进行插值运算,待第二块的数据存储完毕后,对存储在第二存储器52中的第二块的已存数据进行插值计算,并将第三块对应的已存数据从地址0开始存储到第一存储器51中。如此往复,直至所有块的已存数据都被插值计算完毕。
其中,各块或者分块的外部数据在第一存储器51或者第二存储器52中存储也可以不从该第一存储器51或者第二存储器52的起始地址开始存储,只需要保证该块或者分块的外部数据都可以保存在该第一存储器51或者第二存储器52中即可。
对于intel8×16格式的宏块,如图7c所示,该intel8×16格式的宏块包括两个8×16块,且每个块各有一个运动矢量对应。当所述8×16块对应的运动矢量的x和y值,都非整数时,该8×16块做插值运算过程中,还需要该8×16块以外的象素点,即行列各加5个象素作为插值运算的参考值。因此,运动矢量的x和y值非整数的8×16块的相关图像的编码数据理论值为21×13Byte,同理,在实际使用中,为了保持整行存储,实际需要的存储量为21×16Byte,即84×4字节。
显然,对intel8×16格式的宏块,如果使用上述的将第一存储器51与第二存储器52交替地用于存储以及读取块对应的参考块的图像的编码数据的方法,则每个块对应的参考块的图像的编码数据所需要的实际存储量为84×4字节,显然该值大于第一存储器51或者第二存储器52的存储量,即78×4字节。为了解决这个问题,如图7c所示,本发明将每个intel8×16宏块中的8×16的块进一步划分为2个分块,具体地,该2个分块可以相同大小,确保每个分块插值运算所需的已存数据小于第一存储器51或者第二存储器52的存储量。分别对每个分块进行写入第一存储器51或者第二存储器52以及从第一存储器51或者第二存储器52中读取已存的分块的已存数据以用于插值计算。开始存储时,第一存储器51和所述第二存储器52均为空闲存储器,将第一分块731的外部数据保存在第一存储器51中,保存完毕后,将该第一存储器52标记为已写存储器,将第二分块742外部数据保存在第二存储器52中,同时将第一存储器51中保存的第一分块731已存数据进行插值计算,计算完毕后将第一存储器标记为空闲存储器,当第二分块742外部数据保存完毕后,将第二存储器52设定为已存存储器,将第三分块733外部数据保存在第一存储器51即空闲存储器中,同时对已写存储器即第二存储器52中的第二分块742已存数据以进行插值计算,计算完毕将第二存储器52标记为空闲存储器,当第三分块733外部全部保存在第一存储器51中后,将第一存储器51标记为已写存储器,将第四分块744外部数据保存在空闲存储器即第二存储器52中,对已写存储器即第一存储器51中的第三分块733已存数据以进行插值计算,当插值计算完毕,对第一存储器51标记为空闲存储器,当第四分块744的外部数据保存完毕,将第二存储器52标记为已写存储器,如此往复,直至所有分块的图像的编码数据全部插值计算完毕。
其中,当一个分块的运动矢量的x或者y不为整数时,其划分出来的两个分块的参考块的象素存在重叠,如图8c所示,当分块73对应的运动矢量并非整数值,其划分出的第一分块731和第三分块733的参考象素有部分是重叠的。当分块73对应的运动矢量并非整数值,第一分块731插值计算所需的图像象素的编码数据是图8a中的附图标记81所示部分的图像象素对应的编码数据,其中阴影部分为第一分块731以外的参考象素,而第三分块733插值计算所需的图像象素的编码数据是图8b中的附图标记82所示部分的图像象素对应的编码数据,其中阴影部分为第三分块733以外的参考象素。由于第一分块731与第三分块733都是由分块73划分出来,第一分块731对应的参考块象素与第三分块733对应的参考块象素存在重叠的公共参考象素块,即附图8c中,附图标记83所示部分。
当将第一分块731的外部数据保存于第一存储器51中时,为了节省存储器的存储量可以覆盖原先保存于第一存储器51中且已经被插值计算的第三分块733的已存数据,但是公共参考象素块81对应的图像的编码数据同时也是第三分块733对应的参考块的图像的编码数据的一部分,因此在第一分块731的参考块图像的编码数据覆盖第二分块733的参考块的图像的编码数据时,公共参考象素块81对应的参考块的图像的编码数据可以保留,以减少重复读取所述公共参考象素块81对应的参考块的图像的编码数据的时间。
具体地,下面结合图5a、图5b、图6、图7c、图8a、图8b和图8c,以一种8×16格式的宏块的图像的编码数据的写入以及读取控制方法为例进行详细描述。其中为便于描述,将各分块或者各块对应的参考块的图像的编码数据作为该分块或者该块的外部数据,在写入片内存储装置12后,保存在该片内存储装置12中的该分块或者该块对应的参考块的图像的编码数据又成为该分块或者块的已存数据。
本实施例中,为了便于描述,当前宏块的各分块对应的图像的编码数据在片外存储装置11为顺序存储,且第一存储器与第二存储器由同一片内存储装置12划分而成,其中第一存储器的地址为0~77,第二存储器的地址为77~156。则第一存储器51与第二存储器52的大小都为78×4字节,由于8×16格式宏块的图像的编码数据的写入以及读取控制方法是以分块为单位写入片内存储装置12以及从片内存储装置12读取以做插值计算,因此,首先确定各分块的参考块的图像的编码数据大小方法如下:
对接收到的当前宏块中块的分块的运动矢量进行判断,确定各分块的运动矢量中的x与y值是否为整数值。
根据x与y是否整数值的判断,确定每个分块划分出地2个分块的参考块的图像的编码数据大小,以便确定需要从片外存储装置11中需要读取的参考块图像的数据量。
本实施例中,第一块73所划分出的第一分块731与第三分块733大小相同,且由于第一分块731与第三分块733都是由第一块73划分出来,第一块73只具有一个运动矢量,所以第一分块731与第三分块733的参考块的图像的编码数据量相同。同理,第二块74所划分出来的第二分块742与第四分块744的参考块的图像的编码数据量相同。
另外,根据运动矢量中x与y是否整数值的情况,可以确定第三分块733与第一分块731有多少象素重叠以及第三分块733与第一分块731所需要的参考块的图像的编码数据,因而也确定在进行第三分块存储时,未与第一分块731重叠的参考块的象素的图像的编码数据的大小,从而决定在进行第三分块存储时需要将多少图像的编码数据写入片内存储装置12。
具体地,第一块73的两个分块731与733的参考块图像象素的情况如下:
当第一块73对应的运动矢量的x与y都为整数时,第一分块731与第三分块733的参考块都是8×8的块,两者之间没有公共参考象素块,因此第一分块731对应的参考块的图像的编码数据的数据量为16×4字节,第三分块733对应的参考块的图像的编码数据的数据量也是16×4字节。
当第一块73对应的运动矢量中的x为整数,y为非整数时,其所划分出来的第一分块731与第三分块733的参考块都是13×8的块,且两者之间存在公共参考象素块,第三分块733出去公共参考象素块后为一8×8的块,因此,在存储第一分块731时,需要存储的参考块的图像的编码数据的数据量为26×4字节,而在存储第一分块731时,只需要存储一8×8的参考块的图像的编码数据,即需要存储的参考块的数据量为16×4字节。
当第一块73对应的运动矢量中的x为非整数,y为整数时,第一分块731与第三分块733的参考块都是8×13的参考块,但是在实际存储中,为了存储方便,通常在存储器中保持整行存储,通常采用8×16的参考块进行存储。而且由于第一分块731与第三分块733的参考图像都位于x方向,因此第一分块731与第三分块733之间不存在公共参考象素块,因此,在存储第一分块731时,需要存储的参考块的图像的编码数据的数据量为32×4字节,而在存储第一分块731时,需要存储的参考块的数据量为32×4字节。
当第一块73对应的运动矢量中的x为非整数,y为非整数时,第一分块731与第三分块733的参考块是13×13的块,但是在实际存储中,为了存储方便,通常在存储器中为了保持整行存储,通常采用13×16的参考块进行存储。而且第一分块731与第三分块733在x方向没有存在重叠象素,因此不存在公共参考象素块,而只在y方向存在公共参考象素块,因此第一分块731与第三分块733之间只在y方向上存在公共参考象素块,因此,在存储第一分块731时,需要存储的参考块的图像的编码数据的数据量为52×4字节,而在存储第一分块731时,y方向上的公共参考象素块对应的图像的编码数据不需要再次写入存储器,而只需要存储8×16的参考块的图像的编码数据,即需要存储的参考块的数据量为32×4字节。
第二块74划分成的第二分块742与第四分块744的存储情况与上述的第一分块731与第三分块733的情况类似,在此不再累述。
根据以上分析,将8×16格式的宏块的各分块的参考块的图像的编码数据写入片内存储装置12的方法各有不同,具体的步骤如下:
步骤1、第一分块731的外部数据存储如下:
在第一存储器51中,将写入地址设置为0地址,并从片外存储装置11中读取该8×16宏块中第一分块73对应的参考块数据如下:
当第一块73的运动矢量中x与y都是整数值时,从片外存储装置11中读取第一分块731对应的外部数据,即第一分块731对应参考块的图像的编码数据并写入第一存储器51,即从当前宏块的第一块73在片外存储装置11的存储起始地址起读取一个8×8块对应的图像的编码数据的数据量,即16×4字节的数据存入第一存储器。
当第一块73的运动矢量中x是整数,y是非整数时,从片外存储装置11中读取第一分块731对应的参考块图像的编码数据并写入第一存储器51,从当前宏块的第一块73在片外存储装置11的存储起始地址起读取一个13×8块对应的图像的编码数据的数据量,即26×4字节的数据存入第一存储器51。
当第一块73的运动矢量中x是非整数,y是整数时,从片外存储装置11中读取第一分块731对应的图像的编码数据并写入第一存储器,从当前宏块的第一块73在片外存储装置11的存储起始地址起读取一个8×16块对应的图像的编码数据的数据量,即32×4字节的数据存入第一存储器51。
当第一块73的运动矢量中x与y都是整数时,从片外存储装置11中读取第一分块731对应的图像的编码数据并写入第一存储器51,从当前宏块的第一块73在片外存储装置11的存储起始地址起读取一个13×16块对应的图像的编码数据的数据量,即52×4字节的数据存入第一存储器51。
步骤2、对第一存储器中的第一分块731的已存数据的读取如下:
在第一分块731的图像的编码数据存储完毕后,第一存储器51作为已写存储器,对第一分块的数据进行读取以做插值计算,其读取的起始地址为地址0,当读取完毕时,将该第一存储器51重新作为空闲存储器。
步骤3、对第二分块742的外部数据的存储过程如下:
在对已写存储器,即第一存储器51开始进行读取的同时,开始进行将第二分块742对应的图像的编码数据写入第二存储器52,即将写入地址设置为地址78,将第二分块742对应的图像的编码数据从78地址起存入第二存储器52。
具体地:
当第二块74的运动矢量中x与y都是整数值时,从片外存储装置11中读取第二分块742对应的外部数据,即第二分块742对应的图像的编码数据并写入第二存储器52,从当前宏块的第二块74在片外存储装置11的存储起始地址起读取一个8×8块对应的图像的编码数据的数据量,即16×4字节的数据存入第二存储器52。
当第二块74的运动矢量中x是整数,y是非整数时,从片外存储装置11中读取第二分块742对应的图像的编码数据并写入第二存储器52,从当前宏块的第二块74在片外存储装置11的存储起始地址起读取一个13×8块对应的图像的编码数据的数据量,即26×4字节的数据存入第二存储器52。
当第二块74的运动矢量中x是非整数,y是整数时,从片外存储装置11中读取第二分块742对应的图像的编码数据并写入第二存储器52,从当前宏块的第二块74在片外存储装置11的存储起始地址起读取一个8×16块对应的图像的编码数据的数据量,即32×4字节的数据存入第二存储器52。
当第二块74的运动矢量中x与y都是整数时,从片外存储装置11中读取第二分块742对应的图像的编码数据并写入第二存储器52,从当前宏块的第二分块73在片外存储装置11的存储起始地址起读取一个13×16块对应的图像的编码数据的数据量,即52×4字节的数据存入第二存储器52。
步骤4、对第二分块742的已存数据进行读取:
当第二分块742对应的参考块的图像的编码数据全部写入所述第二存储器52后,将该第二存储器52作为已写存储器,并在已写存储器,即第二存储器52中读取第二分块742的数据以做插值计算,其读取的起始地址为78地址,当第二分块742的数据读取完毕时,将该第二存储器52重新作为空闲存储器。
步骤5、对第三分块731的外部数据进行存储:
在对已写存储器,即第二存储器进行数据开始读取的同时,开始将第三分块743对应的参考块的图像的编码数据写入第一存储器51的操作,其具体过程如下:
当第三分块73的运动矢量中x与y都是整数值时,将第一存储器51的存储地址设置为16,从片外存储装置11中读取第三分块733的数据并从地址16开始写入第一存储器,即将片外存储装置11中第一块73对应的图像的编码数据中从第一分块731的数据之后再读取16×4字节的图像的编码数据写入第一存储器51。
当第一块73的运动矢量中x是整数,y是非整数时,将第一存储器51的写地址设置为6,从片外存储装置11中读取第三分块733的数据并从地址26开始写入第一存储器,即将片外存储装置11中第一分块73对应的图像的编码数据中从第一分块731的数据之后再读取下一个8×8块的图像的编码数据,即16×4字节大小的图像的编码数据写入第一存储器51。
当第一分块73的运动矢量中x是非整数,y是整数时,将第一存储器51的写地址设置为32,并从片外存储装置11中读取第三分块733中除公共参考象素块以外的图像的编码数据并从地址26开始写入第一存储器,即将片外存储装置11中第一分块73对应的图像的编码数据中从第一分块731的数据之后再读取8×16块的图像的编码数据,即再读取32×4字节的图像的编码数据写入第一存储器51。
当第一块73的运动矢量中x是非整数,y是非整数时,将第一存储器的写地址设置为52,并从片外存储装置11中读取第三分块733中除公共参考象素块以外的图像的编码数据的数据并从地址52开始写入第一存储器51,即将片外存储装置11中第一分块73对应的参考块的图像的编码数据中从第一分块731的外部数据的存储地址之后再读取一个8×16块的数据,即32×4字节的图像的编码数据写入第一存储器。其中,由于第一存储器存储量为78×4字节,而且如图8c所示,公共参考块象素的图像的编码数据位于第一分块731与第三分块733交界处,由于图像的编码数据在片外和片内存储装置12为顺序存储,所述公共参考块象素位于第一存储器的地址32~51处,因此第一存储器中地址0~5段保存的第一分块731的图像编码数据是非公共参考像素块的图像的编码数据,而且已经被差值计算完毕,因而该段地址保存的图像的编码数据是可以被覆盖的,因此,第三分块733对应的非公共参考块以外部分对应的参考块的图像的编码数据被顺次写入第一存储器的地址52~77,以及地址0~5部分中。
步骤6、读取第一存储器51中的第三分块733的已存数据以进行插值计算。
在第三分块733的图像的编码数据存储完毕后,第一存储器51作为已写存储器,对第三分块的数据进行读取以做插值计算。其中,需要指出的是,当第三分块733与第一分块731存在时,第三分块733还应包括所述公共参考块象素的图像的编码数据,而不仅仅是第三分块733的非公共参考块部分的图像的编码数据。
具体地:
当第一块73的运动矢量中x与y都是整数值时,从第一存储器11的地址16起读取一个8×8块对应参考块的图像的编码数据的数据量,即16×4字节的数据做插值计算。
当第一块73的运动矢量中x是整数,y是非整数时,从第一存储器11的地址16起读取一个13×8块对应的参考块的图像的编码数据的数据量,即读取26×4字节的数据做插值计算。
当第一块73的运动矢量中x是非整数,y是整数时,从第一存储器51的地址32起读取一个8×16块对应的参考块的图像的编码数据的数据量,即读取32×4字节的数据做插值计算。
当第一块73的运动矢量中x与y都是整数时,从第一存储器51的地址32起读取一个13×16块对应的图像的编码数据的数据量即52×4字节的数据,即读取第一存储器51中32~75,以及0~5地址存储的图像的编码数据以做插值运算。
当第一存储器51中第三分块733对应的已存数据全部被读出以做插值计算后,将所述第一存储器51作为空闲存储器。
步骤7、将第四分块744外部数据写入第二存储器52
在对第三分块733开始进行读取的同时,开始将第四分块744对应的图像的编码数据写入第二存储器52的过程的操作,该操作与上述第三分块733的写入过程类似,具体地:
在对已写存储器,即第二存储器52进行数据开始读取的同时,开始将第三分块743对应的参考块的图像的编码数据写入第一存储器51的操作,其具体过程如下:
当第四分块74的运动矢量中x与y都是整数值时,将第二存储器52的存储地址设置为94,从片外存储装置11中读取第四分块744的数据并从地址94开始写入第二存储器52,即将片外存储装置11中第二分块74对应的图像的编码数据中从第二分块742的外部数据之后再读取16×4字节的图像的编码数据写入第一存储器51。
当第四分块74的运动矢量中x是整数,y是非整数时,将第一存储器51的写地址设置为104,从片外存储装置11中读取第四分块744的数据并从地址104开始写入第二存储器,即将片外存储装置11中第二块74对应的图像的编码数据中从第二分块742的外部数据之后再读取下一个8×8块对应的参考块的图像的编码数据,即16×4字节大小的图像的编码数据写入第二存储器52中。
当第四块74的运动矢量中x是非整数,y是整数时,将第一存储器51的写地址设置为110,并从片外存储装置11中读取第四分块744中除公共参考象素块以外的图像的编码数据,并从地址110开始写入第一存储器51,即将片外存储装置11中第二块74对应的图像的编码数据中从第四分块744的图像的编码数据之后再读取32×4字节的图像的编码数据写入第一存储器51。
当第二分块74的运动矢量中x是非整数,y是非整数时,将第二存储器52的写地址设置为130,并从片外存储装置11中读取第四分块733中除公共参考象素块以外的参考块的图像的编码数据的数据并从地址52开始写入第一存储器51,即将片外存储装置11中第一块73对应参考块的图像的编码数据中从第一分块731的数据的存储地址之后再读取一个8×16块的数据,即32×4字节的图像的编码数据写入第一存储器51。与第三分块733的存储过程同理,第二分块742与第四分块744公共参考块象素位于第一存储器51的地址110~129处,因此第一存储器51中地址78~83段保存的第二分块742的图像的编码数据是非公共参考像素块,而且已经被差值计算完毕,因而该段地址保存的图像的编码数据是可以被覆盖的,因此,第四分块744对应的非公共参考块以外部分对应的图像的编码数据被顺次写入第一存储器51的地址130~155,以及地址78~83部分中。
当第四分块744的全部数据全部写入第二存储器52后,将第二存储器52作为已写存储器。
步骤8、对第四分块744的已存数据进行读取以进行插值计算
当第四分块744的图像的编码数据全部保存完毕后,开始对第四分块744的图像的编码数据进行读取以进行插值计算。
其中,需要指出的是,当第四分块744与第二分块742存在时,第四分块733的图像的编码数据还应包括所述公共参考块象素对应的参考块的图像的编码数据,而不仅仅是第四分块744的非公共参考块部分的参考块的图像的编码数据,其具体过程如下:
当第二块74的运动矢量中x与y都是整数值时,从第一存储器51的地址94起读取一个8×8块对应的图像的编码数据的数据量,即16×4字节的数据做插值计算。
当第二块74的运动矢量中x是整数,y是非整数时,从第一存储器51的地址94起读取一个13×8块对应的图像的编码数据的数据量,即26×4字节的已存数据做插值计算。
当第二块74的运动矢量中x是非整数,y是整数时,从第一存储器51的地址110起读取一个8×16块对应的图像的编码数据的数据量,即32×4字节的已存数据做插值计算。
当第二块74的运动矢量中x与y都是整数时,从第一存储器51的地址110起读取一个13×16块对应的图像的编码数据的数据量,即52×4字节的数据存入第二存储器,即读取第二存储器52中110~155,以及78~83地址存储的图像的编码数据以做插值运算。
当第二存储器52中第四分块744对应的数据全部被读出后,将所述第一存储器51作为空闲存储器。
通过以上过程,即可完成将一个intel8×16格式宏块的图像的编码数据写入片内存储装置12,以及从片内存储装置12中读取所述宏块的图像的编码数据以做插值计算。
与现有技术相比,采用了本发明的读写控制方法后,对片外存储装置11的图像的编码数据的读取和插值计算是并行进行的,其中,对片外存储装置11读取可以连续进行,因而降低了对片外存储装置11的外部数据的读取延迟时间。另外而由于解码计算与对片外存储装置11中的数据读取是并行处理的,解码计算完毕后的数据可以被覆盖,而不必占据解码装置内部的片内存储装置12的存储空间,因而也减低了所需要的片内存储装置12的大小。
根据本发明的第二方面,提供了一种在数据解码装置中用于控制将外部数据写入片内存储装置12并由片内存储装置12读取已存数据进行解码运算的读写控制装置,其特征在于,并行地控制从片外存储装置11读取外部数据存入所述片内存储装置12以及从片内存储装置12读取已存储的数据进行解码运算的操作。其中,所述读写控制装置02的片内存储装置12包括一个存储器和多个存储器两种方案。
下面参照图3、图5a、图5b以及图9a~图10b对本发明的读写控制装置做进一步说明。
如附图9a所示,采用一个存储器作为片内存储装置12的在数据解码装置中用于控制将外部数据写入片内存储装置12并由片内存储装置12读取已存数据进行解码运算的读写控制装置,包括第一控制装置91和第二控制装置92。
下面参考图3和图9a,对该采用一个存储器作为片内存储装置12读写控制装置进行进一步说明。
第一控制装置91控制将由片外存储装置11中读取数据写入所述存储器的空闲区域15及并行地执行控制读取所述存储器已存区域13中的已存储的数据,以进行解码运算。
第二控制装置92根据第一控制装置91的数据写入片内存储装置12后,片内存储装置12中已存数据的存储位置的变化,控制将所述空闲区域15中的写入已存数据的部分由空闲区域15中去除且合并入已存区域。
优选地,所述第一控制装置91还可以根据片内存储装置12中已被读取的已存数据的存储位置,控制重复地将所述由片外存储装置1112中读取数据写入所述空闲区域15及并行地读取所述已存区域15中的已存储的数据;且所述第二控制装置92还用于控制重复地将所述空闲区域中的写入数据的部分由空闲区域15中去除且合并入已存区域13,直至所述参考块的数据均已被读取,以进行解码运算。
另外,参照图9b,所述的读写控制装置具有一个优化例,该优化例中,所述第二控制装置92还用于控制将所述已存区域中的已存数据已被读取的部分由所述已存区域中去除且合并入空闲区域。
具体地,该读写控制装置还包括了第一检测装置93,并在第一控制装置91中增加了一个停止控制装置911和一个启动控制装置912。
第一检测装置93,检测所述已存区域13中未被读取的已存数据的数据量;
其中,第一控制装置91还包括:
停止控制装置911,用于当第一检测装置93检测到所述已存区域中未被读取的已存数据的数据量小于第一预定阈值时,停止控制装置911控制停止读取所述已存区域中的已存数据;
启动控制装置912,用于当检测到所述已存区域中未被读取的已存数据量大于第二预定阈值时,控制开始读取所述已存区域中的已存数据。
第一检测装置93在对已存区域中未被读取的已存数据量进行检测后,将检测到的已存信息发送第一控制装置中的停止控制装置与启动控制装置。
停止控制装置根据已存信息判断所述已存区域中未被读取的已存数据量是否小于第一预定阈值,当小于第一预定阈值时,控制停止读取所述已存区域中的已存数据。
启动控制装置根据已存信息判断所述已存区域中未被读取的已存数据量是否大于第二预定阈值,当大于第二预定阈值时,控制开始读取所述已存区域中的已存数据。
其中所述的第一预定阈值与第二预定阈值可以是预先设定的。例如第一预定阈值可以是16×4字节,第二预定阈值可以是。
采用多个存储器作为片内存储装置12的在数据解码装置中用于控制将外部数据写入片内存储装置12并由片内存储装置12读取已存数据进行解码运算的读写控制装置的结构与上述采用单个存储器作为片内存储装置12的读写控制装置不同。
下面参考附图10a、图5a和图5b,对采用多个存储器作为片内存储装置12的在数据解码装置中用于控制将外部数据写入片内存储装置12并由片内存储装置12读取已存数据进行解码运算的读写控制装置进行说明。
所述采用两个存储器作为片内存储装置12的读写控制装置包括第三控制装置101和状态转换装置102。
所述片内存储装置12包括多个存储器,例如使用两个78×4字节大小的存储器即第一存储器51和第二存储器52,所述数据包括多个分块。
第三控制装置101控制将由片外存储装置11中读取的当前分块的外部数据写入所述多个存储器中的一空闲存储器中;以及并行地控制由所述多个存储器中的已写存储器中读取前一分块的已存数据,以进行解码运算;
读写状态转换装置102,在检测到所述当前分块的外部数据已完全写入所述空闲存储器中且所述前一分块的数据已由所述已写存储器中完全读出时,将所述已写存储器作为空闲存储器和将所述空闲存储器作为已写存储器。
在各分块的数据没有全部读取完毕前,第三控制装置101重复地控制将由片外存储装置11中读取的当前分块的外部数据写入所述空闲存储器中且并行地由所述已写存储器中读取前一分块的已存数据,直至所述参考块的所有分块的已存数据均已被读取。
图10b所示为图10a所示的读写控制装置的一个优化例。该读写控制装置在图10a所示的读写控制装置的基础上,还增加了一个第二检测装置103,并在第三控制装置101中增加了一个冗余处理控制装置1011。
该第二检测装置103对所述多个存储器之一中顺序写入的两个分块之间是否存在重叠冗余数据进行检测。
第三控制装置101中的冗余处理控制装置1011,在接收了第二检测装置103检测到的重叠冗余数据的信息后,控制在空闲存储器中保留所述重叠冗余数据而仅写入所述当前分块中的非重叠冗余数据。
另外,上述读写控制装置特别适用于视频解码装置的读写控制装置,使用在视频解码装置中时,所述数据解码装置包括视频解码装置,所述数据包括参考块的图像数据。
特别的,当如图10a或者图10b所示的读写控制装置,使用在基于运动补偿的视频解码装置中时,所述数据解码装置包括基于运动补偿的视频解码装置,所述图像块包括参考宏块。所述图像块包括参考宏块且所述参考宏块的类型包括intel16×8、intel8×16、intel8×8类型,所述重叠冗余数据包括所述参考宏块的两个分块之间的重叠象素的象素数据。其中,所述第二检测装置根据接收到的当前宏块的宏块类型以及运动矢量中x和y值是否整数来对确定同一存储器中顺序写入的两个分块之间是否存在重叠冗余数据。
如本发明所述的在数据解码装置中用于控制将外部数据写入片内存储装置12并由片内存储装置12读取已存数据进行解码运算的读写控制装置,并行地控制从片外存储装置11读取外部数据存入所述片内存储装置12以及从片内存储装置12读取已存储的数据发送给数据解码装置中的解码运算装置进行解码运算,由于如上所述对片外存储装置11中的外部数据的读取与对片内存储装置12中已存数据的读取以做解码运算是并行进行的,所以包括了本发明所述用于控制将外部数据写入片内存储装置12并由片内存储装置12读取已存数据进行解码运算的读写控制装置的数据解码装置在对片外存储装置11中的外部数据进行读取并写入片内存储装置12时,同步地对已保存在片外存储装置11中的已存数据进行读取以作插值计算。
如本发明所述的读写控制装置或者包括了该读写控制装置的数据解码装置,其对片外存储装置11的图像的编码数据的读取和插值计算是并行进行的。
其中,该读写控制装置或者包括该读写控制装置的数据解码装置对片外存储装置11的读取是可以连续进行,因而降低了对片外存储装置11的外部数据的读取延迟。
而且由于解码计算与对片外存储装置11中的数据读取是并行处理的,解码计算完毕后的数据可以被覆盖,而不必占据解码装置内部的片内存储装置12的存储空间,因而也减低了所述读写控制装置或者包括该所述读写控制装置的数据解码装置所需要设置的片内存储装置12的大小,从而也降低了该读写控制装置的成本。
另一方面,本发明提出的第二种读写控制装置进一步将外部解码数据分为多个分块,以分块为单位进行写入片内存储装置12以及从片内存储装置12读取以进行解码运算的操作,因而每次需要存储的分块的存储量也大大小于整块数据的大小,因而也大大减少了所需要设置的片内存储装置12的存储量,从而大大减少了读写控制装置以及包括该读写控制装置的数据解码装置的成本。
当然,本发明还可以有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变,但这些相应的改变都应属于本发明权利要求的保护范围。
Claims (23)
1、一种在数据解码装置中用于控制将外部数据写入片内存储装置并由片内存储装置读取已存数据进行解码运算的方法,其特征在于,并行地控制将从片外存储装置读取的外部数据存入片内存储装置以及从片内存储装置读取已存数据以进行解码运算的操作。
2、根据权利要求1所述的方法,其特征在于,所述片内存储装置包括一个存储器,其中,该方法包括以下步骤:
a、控制并行地将由片外存储装置读取的外部数据写入所述存储器的空闲区域及读取所述存储器已存区域中的已存数据,以进行解码运算;
b.控制将所述空闲区域中的写入已存数据的部分由空闲区域中去除且合并入已存区域;
c.重复步骤a和b,直至所述外部数据均已被读取,以进行解码运算。
3.根据权利要求2所述的方法,其特征在于,所述步骤b还包括以下步骤:
-控制将所述已存区域中的已存数据已被读取的部分由所述已存区域中去除且合并入所述空闲区域。
4.根据权利要求2或3所述的方法,其特征在于,还包括以下步骤:
-检测所述已存区域中未被读取的已存数据量;
其中,所述步骤a还包括以下步骤:
-当检测到所述已存区域中未被读取的已存数据量小于第一预定阈值时,控制停止读取所述已存区域中的已存数据;
其中,所述步骤a还包括以下步骤:
-当检测到所述已存区域中未被读取的已存数据量大于第二预定阈值时,控制开始读取所述已存区域中的已存数据。
5、如权利要求1所述的方法,其特征在于,所述片内存储装置包括多个存储器;所述外部数据包括多个分块,其中,该方法包括以下步骤:
A.控制并行地将由片外存储装置中读取的当前分块的外部数据写入所述多个存储器中的一空闲存储器中;以及由所述多个存储器中的已写存储器中读取前一分块的已存数据,用以进行解码运算;
B.当检测到所述当前分块的外部数据已完全写入所述空闲存储器中且所述前一分块的已存数据已由所述已写存储器中完全读出,则将所述已写存储器作为空闲存储器和将所述空闲存储器作为已写存储器,重复上述步骤A和B,直至所述已存数据的所有分块的外部数据均已被读取,以进行解码运算。
6、如权利要求5所述的方法,其特征在于,还包含以下步骤:
-检测在所述多个存储器之一中顺序写入的两个分块之间是否存在重叠冗余数据;
其中,步骤A还包括:
-当检测在所述空闲存储器中前一写入的分块与当前分块之间存在重叠冗余数据,则控制在所述空闲存储器中保留所述重叠冗余数据而仅写入当前分块中非重叠冗余数据。
7、根据权利要求5或6所述的方法,其特征在于,所述片内存储装置包括两个存储器。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述数据解码装置包括视频解码装置,所述外部数据和所述已存数据包括参考块的图像的编码数据。
9.根据权利要求8所述的方法,其特征在于,所述视频解码装置包括基于运动补偿的视频解码装置,所述图像块包括参考宏块。
10、根据权利要求8或者9所述的方法,其特征在于,所述数据解码装置包括基于运动补偿的视频解码装置,且所述图像块包括参考宏块,所述重叠冗余数据包括所述参考宏块的两个分块之间的重叠象素的编码数据,且所述参考宏块的类型包括intel16×8、intel8×16、intel8×8类型。
11、根据权利要求10所述的方法,其特征在于,所述存储器的存储量为78×4字节。
12、一种在数据解码装置中用于控制将外部数据写入片内存储装置并由片内存储装置读取已存数据进行解码运算的读写控制装置,其特征在于,并行地控制从片外存储装置读取外部数据存入所述片内存储装置以及从片内存储装置读取已存储的数据以进行解码运算的操作。
13、如权利要求12所述的读写控制装置,其特征在于,所述片内存储装置包括一个存储器,其中,所述读写控制装置包括:
第一控制装置,用于控制并行地将由片外存储装置中读取数据写入所述存储器的空闲区域及执行控制读取所述存储器已存区域中的已存储的数据,以进行解码运算;
第二控制装置,用于控制将所述空闲区域中的写入已存数据的部分由空闲区域中去除且合并入已存区域;
其中,所述第一控制装置还用于控制并行地重复地将所述由片外存储装置中读取数据写入所述空闲区域及读取所述已存区域中的已存储的数据;且所述第二控制装置还用于控制重复地将所述空闲区域中的写入数据的部分由空闲区域中去除且合并入已存区域,直至所述参考块的数据均已被读取,以进行解码运算。
14、如权利要求13所述的读写控制装置,其特征在于,所述第二控制装置还用于控制将所述已存区域中的已存数据已被读取的部分由所述已存区域中去除且合并入空闲区域。
15、根据权利要求13或者14所述的读写控制装置,其特征在于还包括
第一检测装置,用于检测所述已存区域中未被读取的已存数据量;
其中,第一控制装置还包括:
停止控制装置,用于当检测到所述已存区域中未被读取的已存数据量小于第一预定阈值时,控制停止读取所述已存区域中的已存数据;
启动控制装置,用于当检测到所述已存区域中未被读取的已存数据量大于第二预定阈值时,控制开始读取所述已存区域中的已存数据。
16、根据权利要求12所述的读写控制装置,其特征在于,所述片内存储装置包括多个存储器,所述数据包括多个分块,其中,所述读写控制装置包括:
第三控制装置,用于控制并行地将由片外存储装置中读取的当前分块的外部数据写入所述多个存储器中的一空闲存储器中;以及由所述多个存储器中的已写存储器中读取前一分块的已存数据以进行解码运算;
读写状态转换装置,用于在检测到所述当前分块的外部数据已完全写入所述空闲存储器中且所述前一分块的数据已由所述已写存储器中完全读出时,将所述已写存储器作为空闲存储器和将所述空闲存储器作为已写存储器;
其中,所述第三控制装置重复地控制并行地将由片外存储装置中读取的当前分块的外部数据写入所述空闲存储器中且由所述已写存储器中读取前一分块的已存数据直至所述参考块的所有分块的已存数据均已被读取。
17、根据权利要求16所述的读写控制装置,其特征在于,还包括
第二检测装置,用于检测在所述多个存储器之一中顺序写入的两个分块之间是否存在重叠冗余数据;
其中,第三控制装置还包括
冗余处理控制装置,用于当检测在所述空闲存储器中前一写入的分块与当前分块之间存在重叠冗余数据时,控制在空闲存储器中保留所述重叠冗余数据而仅写入所述当前分块中的非重叠冗余数据。
18、根据权利要求16或者17所述的读写控制装置,其特征在于,所述片内存储装置包括两个存储器。
19、根据权利要求12~18中任一项所述的读写控制装置,其特征在于所述数据解码装置包括视频解码装置,所述数据包括参考块的图像数据。
20、根据权利要求12~19中任一项所述的读写控制装置,其特征在于,所述视频解码装置包括基于运动补偿的视频解码装置,所述图像块包括参考宏块。
21、根据权利要求17或者18所述的读写控制装置,其特征在于,所述数据解码装置包括基于运动补偿的视频解码装置,所述图像块包括参考宏块且所述参考宏块的类型包括intel16×8、intel8×16、intel8×8类型,所述重叠冗余数据包括所述参考宏块的两个分块之间的重叠象素的编码数据。
22、根据权利要求21所述的读写控制装置,其特征在于,所述存储器的存储量为78×4字节。
23、一种数据解码装置,其特征在于,包括如权利要求11-20中任一项所述的用于控制将外部数据写入片内存储装置及由片内存储装置读取外部数据以进行解码运算的读写控制装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710046714 CN101399977A (zh) | 2007-09-29 | 2007-09-29 | 解码装置中控制片内存储器的数据并行读写的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710046714 CN101399977A (zh) | 2007-09-29 | 2007-09-29 | 解码装置中控制片内存储器的数据并行读写的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101399977A true CN101399977A (zh) | 2009-04-01 |
Family
ID=40518188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710046714 Pending CN101399977A (zh) | 2007-09-29 | 2007-09-29 | 解码装置中控制片内存储器的数据并行读写的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101399977A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101888554A (zh) * | 2010-07-09 | 2010-11-17 | 西安交通大学 | 并行流水运动补偿滤波器vlsi结构设计方法 |
CN102457725A (zh) * | 2010-10-18 | 2012-05-16 | 曜鹏科技股份有限公司 | 影像编码资料暂存装置及其影像编码资料暂存方法 |
CN102665080A (zh) * | 2012-05-08 | 2012-09-12 | 美商威睿电通公司 | 用于移动补偿的电子装置及移动补偿方法 |
CN105187845A (zh) * | 2015-08-10 | 2015-12-23 | 珠海全志科技股份有限公司 | 视频数据解码装置及解码方法 |
CN105847817A (zh) * | 2015-01-14 | 2016-08-10 | 炬芯(珠海)科技有限公司 | 一种视频处理设备和方法 |
CN107111878A (zh) * | 2016-06-07 | 2017-08-29 | 深圳市大疆创新科技有限公司 | 数据处理方法、装置及系统 |
CN107992329A (zh) * | 2017-07-20 | 2018-05-04 | 上海寒武纪信息科技有限公司 | 一种计算方法及相关产品 |
CN111488297A (zh) * | 2020-04-02 | 2020-08-04 | 杭州迪普科技股份有限公司 | 用于访问寄存器的方法、装置、电子设备及可读介质 |
-
2007
- 2007-09-29 CN CN 200710046714 patent/CN101399977A/zh active Pending
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101888554A (zh) * | 2010-07-09 | 2010-11-17 | 西安交通大学 | 并行流水运动补偿滤波器vlsi结构设计方法 |
CN101888554B (zh) * | 2010-07-09 | 2013-05-22 | 西安交通大学 | 并行流水运动补偿滤波器vlsi结构设计方法 |
CN102457725A (zh) * | 2010-10-18 | 2012-05-16 | 曜鹏科技股份有限公司 | 影像编码资料暂存装置及其影像编码资料暂存方法 |
CN102665080A (zh) * | 2012-05-08 | 2012-09-12 | 美商威睿电通公司 | 用于移动补偿的电子装置及移动补偿方法 |
CN102665080B (zh) * | 2012-05-08 | 2015-05-13 | 开曼群岛威睿电通股份有限公司 | 用于移动补偿的电子装置及移动补偿方法 |
CN105847817B (zh) * | 2015-01-14 | 2019-09-17 | 炬芯(珠海)科技有限公司 | 一种视频处理设备和方法 |
CN105847817A (zh) * | 2015-01-14 | 2016-08-10 | 炬芯(珠海)科技有限公司 | 一种视频处理设备和方法 |
CN105187845B (zh) * | 2015-08-10 | 2018-07-03 | 珠海全志科技股份有限公司 | 视频数据解码装置及解码方法 |
CN105187845A (zh) * | 2015-08-10 | 2015-12-23 | 珠海全志科技股份有限公司 | 视频数据解码装置及解码方法 |
CN107111878A (zh) * | 2016-06-07 | 2017-08-29 | 深圳市大疆创新科技有限公司 | 数据处理方法、装置及系统 |
WO2017210868A1 (zh) * | 2016-06-07 | 2017-12-14 | 深圳市大疆创新科技有限公司 | 数据处理方法、装置及系统 |
CN107111878B (zh) * | 2016-06-07 | 2019-05-24 | 深圳市大疆创新科技有限公司 | 数据处理方法、装置及系统 |
US10909690B2 (en) | 2016-06-07 | 2021-02-02 | SZ DJI Technology Co., Ltd. | Data processing method, apparatus, and system |
CN107992329A (zh) * | 2017-07-20 | 2018-05-04 | 上海寒武纪信息科技有限公司 | 一种计算方法及相关产品 |
CN107992329B (zh) * | 2017-07-20 | 2021-05-11 | 上海寒武纪信息科技有限公司 | 一种计算方法及相关产品 |
US11481215B2 (en) | 2017-07-20 | 2022-10-25 | Cambricon (Xi'an) Semiconductor Co., Ltd. | Calculation method and related product |
CN111488297A (zh) * | 2020-04-02 | 2020-08-04 | 杭州迪普科技股份有限公司 | 用于访问寄存器的方法、装置、电子设备及可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101399977A (zh) | 解码装置中控制片内存储器的数据并行读写的方法及装置 | |
CN107657581B (zh) | 一种卷积神经网络cnn硬件加速器及加速方法 | |
US7552292B2 (en) | Method of memory space configuration | |
US20090132770A1 (en) | Data Cache Architecture and Cache Algorithm Used Therein | |
US20070168632A1 (en) | Non-volatile memory | |
US5600837A (en) | Multitask processor architecture having a plurality of instruction pointers | |
US20080228991A1 (en) | Ring buffer management | |
EP1880297B1 (en) | Data transfer arbitration apparatus and data transfer arbitration method | |
US20050055532A1 (en) | Method for efficiently controlling read/write of flash memory | |
CN104115134A (zh) | 复合非易失性存储设备的数据迁移 | |
CN101131671A (zh) | 控制对非易失性存储器的访问 | |
RU2008143302A (ru) | Способ обработки движущегося изображения, программа способа обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения | |
US20130251043A1 (en) | High-speed motion estimation method | |
CN101257626A (zh) | 动态随机存储器的存取方法、装置和媒体播放器 | |
CN115035128B (zh) | 基于fpga的图像重叠滑窗分割方法及系统 | |
CN115794673B (zh) | 系统级芯片non-Cacheable数据的访问方法、装置及电子设备 | |
US7401177B2 (en) | Data storage device, data storage control apparatus, data storage control method, and data storage control program | |
CN101174198A (zh) | 数据存储系统及其数据存取方法 | |
US8341372B2 (en) | Emulated electrically erasable (EEE) memory and method of operation | |
CN109375868B (zh) | 一种数据存储方法、调度装置、系统、设备及存储介质 | |
CN100444636C (zh) | 提高视频解码器中sdram总线效率的方法 | |
WO2003001449A3 (en) | Method and system for processing two-dimensional image data | |
KR100726101B1 (ko) | 메모리 제어 시스템 | |
US7464230B2 (en) | Memory controlling method | |
CN115878507B (zh) | 系统级芯片的内存访问方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090401 |