一种应用于图像处理的帧存数据搬移模块的硬件实现的制作方法

文档序号:6381318阅读:265来源:国知局
专利名称:一种应用于图像处理的帧存数据搬移模块的硬件实现的制作方法
技术领域
本发明属于图像处理领域,具体涉及图形处理芯片中帧存数据的搬移。
背景技术
在图像处理应用中,经常需要从帧存中搬移大量数据,例如在图像应用中拷贝一幅图像的某个区域,就不用重新绘制这部分图像,而只需将该部分的图像数据从原始位置搬移到目标位置,这一技术提升了图像处理的性能。但是,传统的帧存数据搬移都是针对连续的物理地址进行搬移,这限制了图像处理的灵活性。另外,传统的帧存数据搬移没有针对源起始地址和目标起始地址字节不对齐这种特殊的情况。

发明内容
本发明要解决的技术问题是从帧存中不连续物理地址进行数据搬移,以及源起始地址和目标起始地址没有字节对齐的情况。本发明提供了一种简单、灵活的帧存数据搬移模块。
为解决上述技术问题,本发明是这样实现的:
1、源起始地址加上源STRIDE就得到源下一行的起始地址;目标起始地址加上目标STRIDE就得到目标下一行的起始地址。这样的技术能从帧存中读取不连续物理地址的数据,也能将数据写回到帧存中的不连续物理地址。
2、对于源起始地址和目标起始地址字节不对齐这种特殊的情况,通过源起始地址的最低4位和目标起始地址的最低4位的关系,进行三种不同情况的字节拼装:
(1)、源起始地址的最低4位小于目标起始地址的最低4位时的字节拼装;
(2)、源起始地址的最低4位等于目标起始地址的最低4位时的字节拼装;
(3)、源起始地址的最低4位大于目标起始地址的最低4位时的字节拼装;
采用本发明可以取得以下技术效果:
1、解决了对不连续的物理地址进行搬移的限制问题,增强了图像处理的灵活性。
2、解决了源起始地址和目标起始地址字节不对齐的特殊问题。


图1本发明所述的帧存数据搬移模块结构 图2源起始地址的最低4位小于目标起始地址的最低4位时的字节拼装;
图3源起始地址的最低4位等于目标起始地址的最低4位时的字节拼装;
图4源起始地址的最低4位大于目标起始地址的最低4位时的字节拼装;
具体实施例方式以下将结合附图与具体实施对本发明作进一步说明。
本发明公开的一种应用于图像处理的帧存数据搬移模块由六个部分构成,如图1所示,分别为指令启动模块、读帧存控制模块、读数据帧缓冲器、字节拼装模块、写数据帧缓冲器和写帧存控制模块组成。本发明适用的数据总线是128位宽,即16字节。
指令启动模块的功能是接收CPU通过总线发送的数据搬移启动命令和数据搬移参数、通过总线向CPU发送搬移模块空闲标志、向读帧存控制模块发送读帧存指令、向字节拼装模块和写帧存控制模块发送写帧存指令。
其中,数据搬移参数,具体包括:
(1)、源起始地址,该参数指定了在帧存中,数据搬移的源区域的基地址,以字节为单
位;
(2)、目标起始地址,该参数指定了在帧存中,数据搬移的目标区域的基地址,以字节为单位;
(3)、源STRIDE,该参数指定了在帧存中,数据搬移的源区域的某一行的起始地址到下一行的起始地址的长度,以字节为单位;
(4)、目标STRIDE,该参数指定了在帧存中,数据搬移的目标区域的某一行的起始地址到下一行的起始地址的长度,以字节为单位;
(5)、宽度,指定了在帧存中,数据搬移一行的宽度,以字节为单位;
(6)、高度,指定了在帧存中,数据搬移的行数;
读帧存控制模块的功能是根据指令启动模块中的读帧存指令,从帧存中指定的地址读取指定字节量大小的图像数据。读帧存控制模块从指令启动模块接收到源起始地址、源STRIDE、宽度和高度参数。其中,宽度指定了源搬移区域每一行的有效字节量;某一行的起始地址加上源STRIDE得到下一行的起始地址;高度指定了需要从源搬移区域搬移的行数。
由于从帧存中搬移的每一行数据的起始地址不一定都是16字节对齐的,因此,同样的宽度可能对应传输的数据个数不一样,这样就需要计算出每一行传输的数据个数。方法是:
a、首先根据某一行的起始地址的最低4位,可以计算出起始地址是从16个字节的第几个字节开始,从而计算出该行第一个数据的有效字节量;
b、宽度减去该行第一个数据的有效字节量,得到剩余的字节量;
C、如果宽度小于等于该行第一个数据的有效字节量,那么该行的数据个数就为I ;如果宽度大于该行第一个数据的有效字节量,根据步骤b得到的剩余字节量可以计算出该行的数据个数。
读数据帧缓冲器的功能是采用乒乓操作的方法将读帧存控制模块读回的帧存图像数据进行缓存。从帧存中读回数据时采用了两个读帧存缓冲器,当数据存满一个缓冲器时,自动切换到另一个缓冲器,这样就保证在不溢出缓冲器的前提下,提高了缓存速度。
字节拼装模块的功能是根据源起始地址的最低4位和目标起始地址的最低4位的大小关系,将读回帧存的数据进行字节拼装后产生写回帧存的数据。字节拼装模块从指令启动模块接收到目标起始地址、目标STRIDE、宽度和高度参数。由于源和目标起始地址的最低4位能表征128位(16字节)数据的字节地址,因此字节拼装分三种情况:
(I)、源起始地址的最低4位小于目标起始地址的最低4位的情况。以图2为例进行说
明:
当某一行的源起始地址的第O字节是掩码,目标起始地址的第O、I两个字节是掩码时,即源起始地址是从第I字节开始有效,目标起始地址是从第2字节开始有效,因此字节拼装需要将源区域数据的第I至第14字节搬移到目标区域的第2至第15字节,将源区域的第15字节搬移到目标区域的第二个数的第O字节。最后一个数据是将源区域的第O至第13字节搬移到目标区域的第I至第14字节。
(2)、源起始地址的最低4位等于目标起始地址的最低4位的情况。以图3为例进行说
明:
这种情况的字节拼装是将源区域的各个字节搬移到目标区域的相同字节上。
(3)、源起始地址的最低4位大于目标起始地址的最低4位的情况。以图4为例进行说
明:
当每一行的源起始地址的第O、I两个字节是掩码,目标起始地址的第O字节是掩码时,因此字节拼装需要将源区域数据的第2至第15字节搬移到目标区域的第I至第14字节,将源区域第二个数的第O字节搬移到目标区域的第15字节。最后一个数据是将源区域的第I至第14字节搬移到目标区域的第O至第13字节。
写数据帧缓冲器的功能是采用乒乓操作的方法将字节拼装模块拼装后的图像数据进行缓存。同读数据帧缓冲器一样,写数据帧缓冲器也提高了缓存速度。
写帧存控制模块的功能是根据指令启动模块中的写帧存指令,将写数据帧缓冲器中的图像数据写入帧存中指定地址。写帧存控制模块从指令启动模块接收到目标起始地址、目标STRIDE、宽度和高度参数。其中,宽度指定了目标搬移区域每一行的字节量;某一行的起始地址加上目标STRIDE得到下一行的起始地址;高度指定了需要写回目标搬移区域的行数。
写帧存控制模块也需要计算出每一行传输的数据个数,计算方法同读帧存控制模块中所使用的方法一样。
由于本发明可以对不连续物理地址的数据进行搬移,在图像处理中可以向目标区域搬移同一行源区域的数据,也可以用源区域的每一行数据来覆盖目标区域的同一行。
综上所述,鉴于传统的帧存数据搬移存在部分局限性,本发明公开了一种简单、灵活的应用于图像处理的帧存数据搬移模块,增强了帧存数据搬移的灵活性,同时也解决了源起始地址和目标起始地址字节不对齐的特殊问题。了解本领域的技术人员可以根据本发明作出一定的变形,但这些变形都应属于本发明。
权利要求
1.一种应用于图像处理的帧存数据搬移模块,其特征在于,模块由六个部分构成: (1)指令启动模块,其功能是: a、接收CPU通过总线发送的数据搬移启动命令和数据搬移参数; b、通过总线向CPU发送搬移模块空闲标志; C、向读帧存控制模块发送读帧存指令; d、向字节拼装模块和写帧存控制模块发送写帧存指令; (2)读帧存控制模块,其功能是根据指令启动模块中的读帧存指令,从帧存中指定的地址读取指定字节量大小的图像数据; (3)读数据帧缓冲器,其功能是采用乒乓操作的方法将读帧存控制模块读回的帧存图像数据进行缓存; (4)字节拼装模块,其功能是根据源起始地址的最低4位和目标起始地址的最低4位的大小关系,将读回帧存的数据进行字节拼装,然后产生写回帧存的数据; (5)写数据帧缓冲器,其功能是采用乒乓操作的方法将字节拼装模块拼装后的图像数据进行缓存; (6)写帧存控制模块,其功能是根据指令启动模块中的写帧存指令,将写数据帧缓冲器中的图像数据写入帧存中指定地址。
2.根据权利要求1所述的帧存数据搬移模块,其特征是,(I)中,所述的数据搬移参数,具体包括: (1)、源起始地址,指定了在帧存中数据搬移的源区域的基地址,以字节为单位;(2)、目标起始地址,指定了在帧存中数据搬移的目标区域的基地址,以字节为单位; (3)、源STRIDE(步长),指定了在帧存中数据搬移的源区域某一行的起始地址到下一行起始地址的长度,以字节为单位; (4)、目标STRIDE,指定了在帧存中数据搬移的目标区域某一行的起始地址到下一行的起始地址的长度,以字节为单位; (5)、宽度,指定了在帧存中数据搬移一行的宽度,以字节为单位; (6)、高度,指定了在帧存中数据搬移的行数。
3.根据权利要求1所述的帧存数据搬移模块,其特征是,(2)中,所述的字节拼装模块的拼装方式有三种情况: (1)、源起始地址的最低4位小于目标起始地址的最低4位; (2)、源起始地址的最低4位等于目标起始地址的最低4位; (3)、源起始地址的最低4位大于目标起始地址的最低4位。
全文摘要
本发明公开了一种应用于图像处理的帧存数据搬移模块的硬件实现。所述帧存数据搬移模块包括指令启动模块、读帧存控制模块、读数据帧缓冲器、字节拼装模块、写数据帧缓冲器和写帧存控制模块。传统的帧存数据搬移都是对连续的物理地址进行搬移,针对这个问题,所述的帧存数据搬移模块解决了对不连续物理地址进行搬移的限制问题,增强了图像处理的灵活性,同时也解决了源起始地址和目标起始地址字节不对齐的特殊问题。
文档编号G06T1/60GK103150703SQ201210458429
公开日2013年6月12日 申请日期2012年11月15日 优先权日2012年11月15日
发明者龚晓 申请人:长沙景嘉微电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1