首页 / 专利库 / 视听技术与设备 / 运动估计 / 一种视频编码与解码过程中的数据传输方法及装置

一种视频编码与解码过程中的数据传输方法及装置

阅读:254发布:2021-08-01

专利汇可以提供一种视频编码与解码过程中的数据传输方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 涉及视频压缩过程中的数据传输方法及装置,包括用于 视频编码 及解码过程中的数据传输方法及装置。根据本发明,通过将欲传输的各宏 块 中各行以地址连续的方式存储,使得各宏块能够由DMA 控制器 在主 存储器 与 运动估计 /补偿模块之间一次传输完毕。对于参考 帧 的搜索窗中的各宏块,通过在运动估计/补偿模块内设置数据转移单元,分别将传输到运动估计/补偿模块内第一/第四存储单元的宏块转移到第二/第五存储单元中,并使搜索窗每行中所包含的各宏块的行在第二存储单元/第五存储单元中以地址连续的方式存储。通过本发明,可以减少DMA控制器的启动、中断次数,提高数据传输效率并减少功耗。,下面是一种视频编码与解码过程中的数据传输方法及装置专利的具体信息内容。

1. 一种视频编码过程中的数据传输方法,其特征在于, 将图像的当前的每个宏、及参考帧的每个宏块中的各行在主存储器中以地址连续的方式存储; 选定当前帧中的欲传送宏块,以及相应的参考帧中的搜索窗; 将存储于主存储器中搜索窗中的各宏块分别由DMA控制器一次传输到运动估计模块的第一存储单元A中; 将传输到第一存储单元A中的搜索窗的宏块分别转移到第二存储单元B中,并使搜索窗每行中所包含的各宏块的行在第二存储单元B中以地址连续的方式存储; 之后,将存储于主存储器中当前帧中的欲传送宏块由DMA控制器一次 传输到运动估计模块的第一存储单元A中。
2.—种视频编码过程中的数据传输方法,其特征在于, 将图像的当前帧的每个宏块、及参考帧的每个宏块中的各行在主存储器中以地址连续的方式存储; 选定当前帧中的欲传送宏块,以及相应的参考帧中的搜索窗; 将存储于主存储器中搜索窗中的各宏块分别由DMA控制器一次传输到运动估计模块的第一存储单元A中; 将传输到第一存储单元A中的搜索窗的宏块分别转移到第二存储单元B中,并使搜索窗每行中所包含的各宏块的行在第二存储单元B中以地址连续的方式存储; 还设置第三存储单元,将当前帧的宏块由DMA控制器一次传输至第三存储单元中; 在所述第一存储单元A中设置双缓冲区,对两个缓冲区进行切换。
3.根据权利要求I或2所述的数据传输方法,其特征在于, 使得所述第一存储单元A的容量至少能存储一个宏块的数据。
4.根据权利要求I或2所述的数据传输方法,其特征在于, 在所述第一存储单元A中设置双缓冲区,使得其中一个缓冲区用于接收由DMA控制器传输来的宏块的数据,另一个缓冲区用于将已接收到的宏块的数据转移至第二存储单元B中,当两个缓冲区中宏块都传输完毕后,同时对两个缓冲区进行切换,并继续宏块数据传输和转移,直至将搜索窗的宏块全部转移至第二存储单元B中。
5.根据权利要求4所述的数据传输方法,其特征在于, 使得每个缓冲区的容量至少能存储一个宏块的数据量。
6. 一种视频编码过程中的数据传输装置,其包括主存储器、DMA控制器、运动估计模块,所述主存储器存储图像的当前帧及参考帧,所述运动估计模块包括第一存储单元A、第二存储单元B,所述DMA控制器将所述主存储器中的数据传输到运动估计模块的第一存储单元A中,其特征在于,所述运动估计模块还包括数据转移单元,在所述主存储器中,当前帧中各宏块内的行及参考帧中搜索窗的各宏块内的行以地址连续的方式存储,使得DMA控制器能分别将各宏块一次传送到运动估计模块的第一存储单元A中;所述 数据转移单元用于将传送到第一存储单元A中的搜索窗中的宏块转移到第二存储单元B中,并使搜索窗每行中所包含的各宏块的行在第二存储单元B中以地址连续的方式存储;所述第一存储单元A用于在一搜索窗中的各宏块全部转移至第二存储单元B中之后,存储与该搜索窗对应的当前帧的宏块。
7. 一种视频编码过程中的数据传输装置,其包括主存储器、DMA控制器、运动估计模块,所述主存储器存储图像的当前帧及参考帧,所述运动估计模块包括第二存储单元B、第三存储单元,所述DMA控制器将所述主存储器中的宏块数据传输到运动估计模块中,其特征在于,所述运动估计模块还包括第一存储单元A、数据转移单元,在所述主存储器中,当前顿中各宏块内的行及参考帧中搜索窗的各宏块内的行以地址连续的方式存储,使得DMA控制器能将当前帧的每个宏块分别一次传送到第三存储单元中、将参考帧中的搜索窗的每个宏块分别一次传送到第一存储单元A中;所述数据转移单元用于将传送到第一存储单元A中宏块转移到第二存储单元B中,并使搜索窗每行中所包含的各宏块的行在第二存储单元B中以地址连续的方式存储。
8.根据权利要求6或7所述的数据传输装置,其特征在于,所述运动估计模块还包括切换单元,所述第一存储单元A是双缓冲区,其交替用作存储从DMA 制器传输来的宏块、转移到桌—^存储单兀B中的宏块;所述切换单元用于在DMA控制器及数据转移单元分别与相应的缓冲区数据传输完毕后,对两个缓冲区进行切换。
9.根据权利要求6或7所述的数据传输装置,其特征在于,用于视频编码器中。
10. 一种视频解码过程中的数据传输方法,其包括: 将图像的参考帧的每个宏块中各行在主存储器中以地址连续的方式存储; 在参考帧中找出对应于当前待解码宏块的搜索窗; 将搜索窗中的每个宏块由DMA控制器分别一次传输到运动补偿模块的第四存储单元中,然后转移到第五存储单元B'中,并使搜索窗每行中所包含的各宏块的行在第五存储单元B'中以地址连续的方式存储,直至将搜索窗中的宏块全部转移至第五存储单元B'中; 将当前待解码宏块对应的运动矢量传输至第四存储单元中; 由所述运动补偿模块得到解码宏块; 将该解码宏块从第四存储单元A'由DMA控制器一次传输至主存储器中。
11.根据权利要求10所述的数据传输方法,其特征在于, 使得所述第四存储单元A7的容量至少能存储一个宏块的数据。
12.根据权利要求10所述的数据传输方法,其特征在于, 在所述第四存储单元A'中设置双缓冲区,使得其中一个缓冲区用于接收由DMA控制器传输来的宏块的数据,另一个缓冲区用于将已接收到的宏块的数据转移至第五存储单元B'中,当两个缓冲区中宏块都传输完毕后,同时对两个缓冲区进行切换,并继续宏块数据传输和转移,直至将搜索窗的宏块全部转移至第五存储单元中。
13.根据权利要求12所述的数据传输方法,其特征在于, 在所述运动补偿模块内还设置第六存储单元; 将当前待解码宏块对应的运动矢量传输至第六存储单元中。
14.根据权利要求12或13所述的数据传输方法,其特征在于, 使得每个缓冲区的容量至少能存储一个宏块的数据量。
15. 一种视频解码过程中的数据传输装置,其包括主存储器、DMA控制器、运动补偿模块、用于存储运动矢量的第七存储单元D;所述主存储器存储图像的参考帧;所述运动补偿模块包括第四存储单元A'、第五存储单元B';所述DMA控制器用于在所述主存储器与运动补偿模块之间传输数据,其特征在于,还包括数据转移单元,在所述主存储器中,参考帧中搜索窗的各宏块内的行以地址连续的方式存储,使得DMA控制器能将各宏块分别一次传送到运动补偿模块的第四存储单元A'中;所述数据转移单元用于将传送到第四存储单元中的搜索窗中的宏块转移到第五存储单元B'中,并使搜索窗每行中所包含的各宏块的行在第五存储单元中以地址连续的方式存储;所述运动补偿模块由存储于第五存储单元B7中的搜索窗及由第七 存储单元D传输到第四存储单元A'中的运动矢量得到解码宏块,并存储于第四存储单元A'中,然后由DMA控制器传输到主存储器中。
16. 一种视频解码过程中的数据传输装置,其包括主存储器、DMA控制器、运动补偿模块、用于存储运动矢量的第七存储单元D;所述主存储器存储图像的参考帧,所述运动补偿模块包括第五存储单元B'、第六存储单元,所述DMA控制器用于在所述主存储器与运动补偿模块之间传输数据,其特征在于,所述运动补偿模块还包括第四存储单元、数据转移单元,所述第六存储单元用于存储从第七存储单元D传送来的运动矢量;在所述主存储器中,参考帧中搜索窗的各宏块内的行以地址连续的方式存储,使得DMA控制器能将各宏块分别一次传送到运动补偿模块的第四存储单元A'中;所述数据转移单元用于将传送到第四存储单元A'中的宏块转移到第五存储单元B'中,并使搜索窗每行中所包含的各宏块的行在第五存储单元B,中以地址连续的方式存储;所述运动补偿模块由存储于第五存储单元B^中的搜索窗及所述第六存储单元中的运动矢量得到解码宏块,并存储于第四存储单元中,然后由DMA控制器传输到主存储器中。
17.根据权利要求15或16的数据传输装置,其特征在于,所述运动补偿模块还包括切换单元,所述第四存储单元A7是双缓冲区,其交替用作存储从DMA控制器传输来的宏块、转移到第五存储单元B'中的宏块;所述切换单元用于在DMA控制器及数据转移单元分别与相应的缓冲区数据传输完毕后,对两个缓冲区进行切换。
18.根据权利要求15或16所述的数据传输装置,其特征在于,用于视频解码器

说明书全文

一种视频编码与解码过程中的数据传输方法及装置

技术领域

发明涉及视频压缩技术,尤其涉及一种视频压缩过程中数据传输的方法及装置。

背景技术

在视频压缩标准中,涉及到内编码及帧间编码,而帧间编码主要是通过运动估计来计算运动向量,并根据该运动向量对参考帧进行预测。在具体实现方案中,运动估计模块因其计算复杂度比较高,多数情况下通过硬件专用电路来实现,以加速计算过程。
在运动估计模块中,包括一些内部存储单元,用来保存参考帧中的搜索窗、当前帧中的待处理宏块、中间计算结果及最终计算结果。DMA控制器负责将搜索窗的数据及待处理宏块数据从主存储器中通过数据总线传输到内部存储单元中。
在现有的方法中,一帧图象是逐行连续存在主存储区中的。这样的存储方式导致每个宏块(16X16)实际上是分成16个不连续的小区间,每个小区间是宏块中的一行,在小区间里地址是连续的。同理可知,搜索窗也是一些不连续的小区间,在各个小区间里地址是连续的。而通过DMA控制器每次只能传输地址空间连续的数据,这样为了传输16X16的宏块,或一个搜索窗,就需要启动16次DMA控制器,极大地增加了配置DMA控制器、启动DMA控制器、DMA中断处理服务执行时间等额外开销,降低了数据传输的效率。

发明内容

本发明的目的是提高视频编码或解码过程中数据传输效率。
为了实现本发明的目的,一方面,本发明提供一种视频编码过程中的数据传输方法。该方法包括:将图像的当前帧的每个宏块、及参考帧的每个宏块中的各行在主存储器中地址连续地存储;选定当前帧中的欲传送宏块,以及相应的参考帧中的搜索窗;将存储于主存储器中搜索窗中的各宏块分别由DMA控制器一次传输到运动估计模块的第一存储单元A中;将传输到第一存储单元A中的搜索窗的宏块分别转移到第二存储单元B中,并使搜索窗每行中所包含的各宏块的行在第二存储单元B中以地址连续的方式存储,•之后,将存储于主存储器中当前帧中的欲传送宏块由DMA控制器一次传输到运动估计模块的第一存储单元A中。
根据本发明的上述视频编码过程中的数据传输方法,使得所述第一存储单元A的容量至少能存储一个宏块的数据。
根据本发明的上述视频编码过程中的数据传输方法,在所述第一存储单元A中设置双缓冲区,使得其中一个缓冲区用于接收由DMA控制器传输来的宏块的数据,另一个缓冲区用于将已接收到的宏块的数据转移至第二存储单元B中,当两个缓冲区中宏块都传输完毕后,同时对两个缓冲区进行切换,并继续宏块数据传输和转移,直至将搜索窗的宏块全部转移至第二存储单元 B中;将当前帧的宏块传输至第一存储单元A中。
根据本发明的上述视频编码过程中的数据传输方法,可以在所述运动估计模块内设置第三存储单元,专用于存储由DMA控制器从主存储器中传输来的当前帧的宏块。
根据本发明的上述视频编码过程中的数据传输方法,其中每个缓冲区的容量至少能存储一个宏块的数据量。
另一方面,本发明提供一种视频编码过程中的数据传输装置,其包括主存储器、DMA控制器、运动估计模块,所述主存储器存储图像的当前帧及参考帧,所述运动估计模块包括第一存储单元A、第二存储单元B,所述DMA控制器将所述主存储器中的数据传输到运动估计模块的第一存储单元A中,其特征在于,所述运动估计模块还包括数据转移单元,在所述主存储器中,当前帧中各宏块内的行及参考帧中搜索窗的各宏块内的行以地址连续的方式存储,使得DMA控制器能分别将各宏块一次传送到运动估计模块的第一存储单元A中;所述数据转移单元用于将传送到第一存储单元A中的搜索窗中的宏块转移到第二存储单元B中,并使搜索窗每行中所包含的各宏块的行在第二存储单元B中以地址连续的方式存储;所述第一存储单元A用于在一搜索窗中的各宏块全部转移至第二存储单元B中之后,存储与该搜索窗对应的当前帧的宏块。根据本发明的上述视频编码过程中的数据传输装置,所述运动估计模块还可以包括第三存储单元,其专门用于存储从主存储器传送来的当前帧的宏块。
根据本发明的上述视频编码过程中的数据传输装置,所述运动估计模块还包括切换单元,所述第一存储单元A是双缓冲区,其交替用作存储从DMA控制器传输来的宏块、转移到第二存储单元B中的宏块;所述切换单元用于在DMA控制器及数据转移单元分别与相应的缓冲区数据传输完毕后,对两个缓冲区进行切换。所述切换单元也可以设置于数据转移单元中。
根据本发明的上述视频编码过程中的数据传输装置,可用于视频编码器中。
还一方面,本发明提供一种视频解码过程中的数据传输方法,其包括:将图像的参考帧的每个宏块中各行在主存储器中地址连续地存储;在参考帧中找出对应于当前待解码宏块的搜索窗;将搜索窗中的每个宏块由DMA控制器分别一次传输到运动补偿模块的第四存储单元A'中,然后转移到第五存储单元B'中,并使搜索窗每行中所包含的各宏块的行在第五存储单元B,中以地址连续的方式存储,直至将搜索窗中的宏块全部转移至第五存储单元中;将当前待解码宏块对应的运动矢量传输至第四存储单元A'中;
由所述运动补偿模块得到解码宏块;将该解码宏块从第四存储单元由DMA控制器一次传输至主存储器中。
根据本发明的上述视频解码过程中的数据传输方法,使得所述第四存储单元A,的容量至少能存储一个宏块的数据。
根据本发明的上述视频解码过程中的数据传输方法,在所述第四存储单元A'中设置双缓冲区,使得其中一个缓冲区用于接收由DMA控制器传输来的宏块的数据,另一个缓冲区用于将已接收到的宏块的数据转移至第五存储单元B'中,当两个缓冲区中宏块都传输完毕后,同时对两个缓冲区进行切换,并继续宏块数据传输和转移,直至将搜索窗的宏块全部转移至第五存储单元B'中;将当前待解码宏块对应的运动矢量传输至所述第四存储单元A7中。
根据本发明的上述视频解码过程中的数据传输方法,还可以在运动补偿模块中设置第六存储单元,用于存储当前待解码宏块对应的运动矢量。
根据本发明的上述视频解码过程中的数据传输方法,使得每个缓冲区的容量至少能存储一个宏块的数据量。
又一方面,本发明提供一种视频解码过程中的数据传输装置,其包括主存储器、DMA控制器、运动补偿模块、.用于存储运动矢量的第七存储单元D;所述主存储器存储图像的参考帧;所述运动补偿模块包括第四存储单元A'、第五存储单元B';所述DMA控制器用于在所述主存储器与运动补偿模块之间传输数据,其特征在于,还包括数据转移单元,在所述主存储器中,参考帧中搜索窗的各宏块内的行以地址连续的方式存储,使得DMA控制器能将各宏块分别一次传送到运动补偿模块的第四存储单元A'中;所述数据转移单元用于将传送到第四存储单元A'中的搜索窗中的宏块转移到第五存储单元B7中,并使搜索窗每行中所包含的各宏块的行在第五存储单元中以地址连续的方式存储;所述运动补偿模块由存储于第五存储单元B'中的搜索窗及由第七存储单元D传输到第四存储单元A'中的运动矢量得到解码宏块,并存储于第四存储单元A'中,然后由DMA控制器传输到主存储器中。
在根据本发明的上述视频解码过程中的数据传输装置中,在运动补偿模块中还可以设置第六存储单元,用于存储从第七存储单元D传送来的运动矢
Mo
在根据本发明的上述视频解码过程中的数据传输装置中,所述运动补偿模块还包括切换单元,所述第四存储单元A'是双缓冲区,其交替用作存储从DMA控制器传输来的宏块、转移到第五存储单元B,中的宏块;所述切换单元用于在DMA控制器及数据转移单元分别与相应的缓冲区数据传输完毕后,对两个缓冲区进行切换。其中,所述切换单元还可以设置于数据转移单元中。
根据本发明的上述视频解码过程中的数据传输装置,可以用于视频解码器
利用本发明,通过将每个宏块中的各行在主存储器中地址连续地存储,使得每个宏块能够由DMA控制器一次传输到运动估计模块中,从而克服了现有技术中因每个宏块中各行地址不连续而引起的多次启动DMA控制器、中断DMA控制器的问题,提高了数据传输效率,并且能够减少能耗。
本发明主要用于视频压缩芯片,如MPEG4、H.264等。
附图说明
图I示出了根据本发明的视频编码过程中的数据传输方法的一个实施例流程图
图2示出了根据本发明的视频编码过程中的数据传输装置的一个实施例的示意图;
图3示出了根据本发明的视频解码过程中的数据传输方法的流程图; 图4示出了根据本发明的视频解码过程中的数据传输装置的一个实施例的不意图。

具体实施方式

下面参照附图详细说明本发明。所给出的附图仅用于说明,并不限制本发明。
图I示出了根据本发明的视频编码过程中的数据传输方法的一个实施例的流程图。
如图I所示,将图像当前帧存储于主存储器中,并使其中每个16X16宏块的16行在主存储器中以地址连续的方式存储,但各宏块之间地址可以不连续;选定当前帧的一个宏块Ei,并在主存储器中找出参考帧中相应该宏块Ei的搜索窗S所对应的各个宏块Si的起始地址;其中参考帧中每个16X16宏块Si的16行在主存储器中也是按地址连续的方式存储的;将参考帧的搜索窗中的16X16宏块S,分别由DMA控制器经数据总线依次传输到运动估计模块的256字节的第一存储单元A中,然后将宏块S1R移到的第二存储单元B的B1处,其中i=l,……9,直到将参考帧的搜索窗中的所有宏块Si全部转移到第二存储单元B (48x48=2304字节)中,并使搜索窗每行中所包含的各宏块的行在第二存储单元B中以地址连续的方式存储,例如,BI的第I行与B2的第I行在地址上是连续的,但BI的第I行与BI的第2行在地址上是不连续的。这与在主存储区域中不同,SI的第I行与S2的第I行在地址上是不连续的,但SI的第I行与SI的第2行在地址上是连续的。然后,将当前帧的宏块E1由DMA控制器经数据总线传输至第一存储单元A中;至此,完成进行一次运动估计运算所需数据的传输。以此方式,传输主存储器中当前帧及参考帧的搜索窗中的各宏块。在后续的传输中,如果所选定的搜索窗与前一个搜索窗部分重合时,则只将未重合部分的宏块分别传送到第一存储单元A中,然后转移至第二存储单元B中并将未重合部分相应宏块覆盖
在上述方法中,所述第一存储单元A的存储容量并不限于256字节,可以大于等于256字节。
在上述方法中,为了进一步提高数据传输效率,设置第一存储单元A包含2个256字节的缓冲区Al和A2。DMA控制器首先通过数据总线传送参考中贞内搜索窗的一个宏块Si到Al中;待宏块Sj全部传至Al中之后,将Al中的数据搬运到第二存储单元B中对应的宏块位置Bi上,与此同时,DMA控制器将参考帧内搜索窗的下一宏块Srn传送至A2中;当两者均完成后,Al和A2同时以乒乓方式进行切换。如此继续,直到搜索窗内待传的宏块全部传送完毕。
在上述方法中,所述缓冲区Al和A2的存储容量并不限于256字节,可以分别大于等于256字节。
当然,可以将图I所示的例子稍作修改,在运动估计模块中设置第三存储单元,用于存储当前帧的宏块氏。
图2示出了根据本发明的视频编码过程中的数据传输装置的一个实施例的示意图。如图2所示,视频编码过程中的数据传输装置包括主存储器I、DMA控制器2、运动估计模块3,主存储器I中存储有图像的当前帧E及参考帧R,运动估计模块3包括第一存储单元A、第二存储单元B、数据转移单元5,其中,当前帧E的每个16X16宏块Ei中的16行地址连续,在参考帧R中选定一个48X48搜索窗S,其中每个16X16宏块S1 (其中I二 1,……9)中的行地址连续,从而DMA控制器能将每个宏块经数据总线一次传送到运动估计模块的256字节的第一存储单元A中。对于传输到第一存储单元A中的搜索窗S的宏块S,,数据转移单元5将其相应地转移到第二存储单元B的氏(其中I二 1,……9)处。
在图2中,为了进一步提高数据传输效率,在第一存储单元A中设置了两个256字节的缓冲区Al和A2,在运动估计模块3中设置切换单元7nDMA控制器2首先通过数据总线4传送参考帧R内搜索窗S的一个宏块Si到Al中;待宏块S,全部传至Al中之后,数据转移单元5幵始将Al中的数据搬运到第二存储单元B中对应的宏块位置B,上,与此同时,DMA控制器2将参考帧内搜索窗S的下一宏块Sm传送至A2中;当两者均完成后,切换单元7以乒乓方式同时切换Al和A2。如此继续,直到搜索窗S内的9个宏块全部转移至第二存储单元B中。
当为当前帧下一待传宏块E1+1所选定的搜索窗S1+1与前一搜索窗Si有部分相同是,则相同部分不用再重新传送,而只传送不相同的部分,并替代第二存储单元B中相应的部分。
在上述的视频编码过程中的数据传输装置中,可以在运动估计模块3中设置256字节的第三存储单元,当首先传输当前帧的宏块E1时,用于存储从DMA控制器传送到运动估计模块3中的当前帧宏块E-
在上述实施例中,所述的第一、第二、第三存储单元可以为一般的存储单元,如SRAM,SDRAM。所述的数据转移单元可以由地址发生器与寄存器构成,然后通过地址映射将第一存储单元A中的搜索窗的宏块数据转移到第二存储单元B中。所述的切换单元可以是转换开关
在上述实施例中,在视频编码过程中由运动估计模块所生成的各宏块的运动矢量,由于数据量很少,可以直接用CPU传送,而不必利用DMA控制器进行传送。
上述的视频编码过程中的数据传输装置可以用于视频编码器中。
图3示出了本发明的解码过程中数据传输方法的一个实施例的流程图。
将图像参考帧R存储于主存储器I中,并使其中每个16X16宏块的256个数据在主存储器中地址连续;选定参考帧R中对应于当前待解码宏块E/的48X48的搜索窗S;将参考帧R的搜索窗S中的16X16宏块Si分别由DMA控制器2经数据总线4依次传输到运动补偿模块3,的256字节的第四存储单元A,中,然后将宏块S1分别转移到的第五存储单元的B/处,其中1=1,……9,直到将搜索窗S中的所有宏块Si全部转移到第五存储单元BZ(48X48=23O4字节)中,并使搜索窗每行中所包含的各宏块的行在第五存储单元W中以地址连续的方式存储,例如,BI,的第I行与B2,的第I行在地址上是连续的,但Br的第I行与BI,的第2行在地址上是不连续的。这与在主存储区域中不同,Sr的第I行与S2'的第I行在地址上是不连续的,但sr的第I行与sr的第2行在地址上是连续的;然后,将当前待解码宏块e/对应的运动矢量传输至第四存储单元a'中;至此,一次运动补偿运算所需的数据已经传输完毕。待运动补偿运算完成后,插值得到的解码宏块E/存放在第四存储单元A'中,然后启动一次DMA将该宏块传送到主存储器中。
在上述解码过程中的数据传输方法,所述第四存储单元A'的容量至少能存储一个宏块的数据量。
在上述方法中,为了进一步提高数据传输效率,设置第四存储单元A'包含2个256字节的缓冲区Ar和A2,。DMA控制器首先通过数据总线传送参考帧内搜索窗的一个宏块Sjij Ar中;待宏块Si全部传至Al'中之后, 将Al'中的数据搬运到第五存储单元B'中对应的宏块位置B/上,与此同时,DMA控制器将参考帧内搜索窗的下一宏块Sm传送至A2'中;当两者均完成后,Al和A2'同时以乒乓方式进行切换。如此继续,直到搜索窗内待传的宏块全部传送完毕。
在上述解码过程中的数据传输方法中,所述每个缓冲区Al'和A2'的容量至少能存储一个宏块的数据量。
在上述解码过程中的数据传输方法,也可以在运动补偿模块中设置第六存储单元,用于存储当前帧的宏块E1'。
图4是视频解码过程中的数据传输装置的一个实施例的示意图。如图4所示,视频解码过程中的数据传输装置包括主存储器I、DMA控制器2、运动补偿模块3'、用于存储运动矢量的第七存储单元D、及数据总线4;所述主存储器I存储图像的参考帧R;所述运动补偿模块3'包括第四存储单元M 、第五存储单元B'、数据转移单元5';在所述主存储器I中,参考帧R中搜索窗S的各宏块内的行以地址连续的方式存储,使得DMA控制器2能分别将各宏块一次传送到运动补偿模块V的第四存储单元PJ中;所述数据转移单元2用于将传送到第四存储单元W中的搜索窗中的宏块转移到第二存储单元B'中,并使搜索窗每行中所包含的各宏块的行在第五存储单元B'中以地址连续的方式存储;所述运动补偿模块3'由存储于第五存储单元中的搜索窗S及由第七存储单元D传输到第四存储单元中的运动矢量得到解码宏块E1,,并存储于第四存储单元A7中,然后由DMA控制器2经数据总线4传输到主存储器I中。
在图4所示的视频解码过程中的数据传输装置中^在运动补偿模块3'中还可以设置第六存储单元,用于存储从第七存储单元D中传输来的运动矢量。
在上述视频解码过程中的数据传输装置中,所述第四存储单元A'至少能存储一个宏块的数据。
为了进一步提高数据传输效率,在上述视频解码过程中的数据传输装置中,所述运动补偿模块3'还可以包括切换单元7'所述第四存储单元A设置为双缓冲区Al'和A2, ,DMA控制器2首先通过数据总线4传送参考帧R内搜索窗S的一个宏块SjljAl'中;待宏块S1全部传至Al7中之后,数据转移单元5开始将Al,中的数据搬运到第五存储单元B'中对应的宏块位置BJ上,与此同时,DMA控制器2将参考帧内搜索窗S的下一宏块Sm ^传送至Kl'中;当两者均完成后,切换单元7以乒乓方式同时切换AP和A2/。如此继续,直到搜索窗S内的宏块全部转移至第五存储单元B'中。
在上述视频解码过程中的数据传输装置中,所述切换单元7'也可以设置于数据转移单元5 z中。
在上述实施例中,所述的第四、第五、第六、第七存储单元可以为一般的存储单元,如SRAM, SDRAM。所述的数据转移单元可以由地址发生器与寄存器构成,然后通过地址映射将第四存储单元中搜索窗的宏块数据转移到第五存储单元中。所述的切换单元可以是转换开关。
在上述实施例中,在视频解码过程中,由于各待解码宏块的运动矢量的数据量很少,可以直接用CPU将其传送至运动补偿模块中,而不必利用DMA控制器进行传送。
上述视频解码过程中的数据传输装置可以用于视频解码器。
在上述实施例中,根据需要,可以一次传送两个或两个以上的宏块。
运动补偿模块中根据需要可以增设存储单元,专门用于存储运动补偿模块所得到的解码宏块。 上述实施方式只是为了更清楚地说明本发明,而本发明并不限于上述实施方式。可以明白的是,本领域的技术人员对本发明所做的任何显而易见的修改、变更,在不背离本发明的精神和本质的情况下都将落入本发明的保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈