CN101216933B - 一种图像数据内存投影方法、访问方法及装置 - Google Patents
一种图像数据内存投影方法、访问方法及装置 Download PDFInfo
- Publication number
- CN101216933B CN101216933B CN 200710125696 CN200710125696A CN101216933B CN 101216933 B CN101216933 B CN 101216933B CN 200710125696 CN200710125696 CN 200710125696 CN 200710125696 A CN200710125696 A CN 200710125696A CN 101216933 B CN101216933 B CN 101216933B
- Authority
- CN
- China
- Prior art keywords
- view data
- row
- memory
- bank
- internal 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开了一种内存投影方法、访问方法及装置,通过将图像的每一行图像数据划分为若干个行段;将同一行段所包含的图像数据存放于内存中同一bank的同一行中,并使划分出的位置相邻的任意两个行段所包含的图像数据分别存放于内存中不同的bank中。在对内存中的图像进行图像块访问时,首先确定图像块在图像中的位置;确定出图像数据块存放于内存中的对应bank及对应bank中的对应行段;从对应bank中的对应行段中读取图像数据块的数据。本发明实施例提供的方案,当与图像数据的内存访问同时存在其它对内存的实时访问时,依然可以通过内存中的bank间的切换来屏蔽内存访问准备时间,显著提高内存访问效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种图像数据内存投影方法、访问方法及装置。
背景技术
近年来,计算机系统特别是嵌入式计算机系统越来越多地被应用在视频播放中。视频播放系统主要包括文件读取、视频解码和视频输出处理三个主要的功能模块。其中,视频解码模块和视频输出模块占据了整个处理过程的绝大部分系统内存带宽。
在计算机视频处理中,对内存的访问主要有两种方式:扫描行访问方式和图像数据块访问方式。对于扫描行访问方式,因为符合内存的连续迸发访问方式的要求,因此很容易就可以获得高的访问效率。而图像数据块访问方式中要不断地改变内存的行地址,导致访问准备时间过多,影响了整体访问效率。目前,业界已经出现多种方法用以提高图像数据块访问方式的效率问题,其中最常用的是内存重新投影方法。
内存投影一般在计算机系统中的内存控制器完成,如图1所示,为现有的计算机系统的一般结构示意图,其中,CPU用以控制计算机系统的整体工作进程;显示组件、FIFO存储器以及LCD/TV输出模块用于完成系统的显示与输出;内存控制器控制内存模块进行相应的读写操作。图1所示的计算机系统,除了实现一般图像到内存的线性投影外,也能根据需求,按照一定的方式对图像到内存实现图像数据块投影访问,图像数据块投影访问一般都设计内存存储体(bank)交错访问技术。采用bank交错机制的优势在于内存中各个bank的控制命令可以并行,因而可以减少内存读写的准备时间。图中示意出了内存中存在4个bank的情形,现有内存的内部控制电路都基本采用多bank机制,而最多使用的就是4 bank机制。
如图2所示,是一种常用的图像数据块内存投影方法示意图,首先把图像分割成多个图像数据块,图像数据块的大小由内存一行大小决定。将每个图像数据块存放于内存中不同的bank,对应于内存中一个行(row)的空间,并将其占满。例如,假设内存中一行大小为1024bytes,图2中第0-31行的,第一个64bytes组成一个图像块,大小为1024byts,其占据了bank0的第一行,第0-31行的,第二个64bytes组成一个图像块,大小为1024byts,其占据了bank1的第一行,如此类推,第一行的图像数据块交错的存放于内存中的bank0与bank1中;第二行的2、3、2、3、2,表示将第二行的图像数据块交错的存放于内存中的bank2与bank3中。也就是说,奇数行中每个图像数据块轮流放在内存的bank0与bank1中,偶数行中每个图像数据块则轮流存放于bank2与bank3中。这样保证了每个图像数据块与其左右、上下位置相邻的图像数据块,都存放于内存的不同bank中。按照视频播放逐行扫描的顺序,每个图像数据块存放于内存一个bank中的一个行(row)里面,每个图像数据块不能超过内存一个row的容量。这种投影方法,可以带来如下的优点:
首先,如果对图像的访问出现在图像分割后的图像数据块内部的话,那么图像数据块都存放于内存的同一row的空间内,图像每行切换,在内存中不需要进行换行处理。
其次,如果对图像的访问跨越多个图像数据块,由于相邻的图像数据块存放于内存中不同的bank里面,当访问跨越多个图像数据块的时候,可以通过bank的切换,屏蔽内存准备时间,保持内存访问的效率。
但是,上述的图像数据块内存投影方法,仅限于对内存只有一个访问的理想状态下,才可以提高图像数据访问的效率。此时,没有任何的其它应用会打断对内存中图像数据块的访问。如果存在多个应用,其中有的应用必须符合实时反应的要求,那么,当图像数据访问和实时访问同时发生时,因为实时访问不允许长时间等待,势必只能在图像数据访问过程中间插入实时访问。由于两个访问的异步发生,因此无法保证插入的实时访问的访问地址和图像数据访问的访问地址处于不同的bank,则无法通过对bank的切换对插入的实时访问进行优化,访问效率会变得低下。
因此,现有技术中的图像数据块内存投影方法,当同时存在其它对内存的实时访问时,无法通过内存中的bank间的切换来屏蔽内存访问准备时间,造成访问效率低下。其关键是该方法对图像块进行访问时,最多只能在2个bank之间进行切换,加入插入的实时进程所访问的内存位置如果也是位于这2个bank的话,则无法通过bank切换进行内存准备时间的屏蔽。
发明内容
本发明实施例提供一种内存投影方法、访问方法及装置,用以解决现有技术中对图像数据的内存访问效率低下的问题。
一种将图像数据投影到内存的方法,该方法包括:
将图像的每一行图像数据划分为若干个行段;
将同一所述行段所包含的图像数据存放于内存中同一存储体的同一行中,并使划分出的上下左右位置相邻的任意两个所述行段所包含的图像数据分别存放于内存中不同的存储体中,所述不同的存储体的数量为4个或8个。
所述使划分出的上下左右位置相邻的任意两个所述行段所包含的图像数据分别存放于内存中不同的存储体中,包括:
将内存中的存储体分为两组,每组包括两个存储体;
将奇数行图像数据划分成的行段所包含的图像数据按照行段交错地存放于内存中第一组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中;以及将偶数行图像数据划分成的行段所包含的图像数据按照行段交错地存放于内存中第二组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中。
较佳地,每一所述行段所包含的图像数据长度相同。
较佳地,内存中同一存储体的同一行中存储了一个以上包含图像数据的所述行段。
一种访问内存中图像数据的方法,包括:
确定访问图像数据块在原图像中的位置;
确定出所述图像数据块的每行,存放于内存中的对应存储体及对应存储体中的对应行段;
从所述对应存储体中的对应行段中读取所述图像数据块的数据;
其中,所述行段为一帧图像的每一行图像数据划分成的若干个部分之一;同一所述行段所包含的图像数据被存放于内存中同一存储体的同一行中,并且划分出的上下左右位置相邻的任意两个所述行段所包含的图像数据分别被存放于内存中不同的存储体中,所述不同的存储体的数量为4个。
较佳地,所述图像数据块包括一个或多个行段所包含的数据,或所述图像数据块包括一个或多个行段的部分数据。
较佳地,所述图像数据块包括一个或两个行段所包含的数据,或所述图像数据块包括一个或两个行段的部分数据。
较佳地,该方法进一步包括:
在访问内存中图像数据过程中,实时进程需要访问内存中存储体存储的对应数据时,将所述实时进程访问插入到所述图像数据访问过程中的两个存储体切换之间,并使所述两个存储体均与所述实时进程访问的存储体不同。
一种图像数据投影装置,包括:行段划分单元和投影单元;
所述行段划分单元,将图像的每一行图像数据划分为若干个行段;
所述投影单元,用于将同一所述行段所包含的图像数据存放于内存中同一存储体的同一行中,并使上下左右位置相邻的任意两个所述行段所包含的图像数据分别存放于内存中不同的存储体中,所述存储体的数量为四个。
所述投影单元包括奇偶交错子单元、存储体分组子单元和存放子单元;
所述奇偶交错子单元,用于将所述行段分为由奇数行图像数据划分成的第一组行段和由偶数行图像数据划分成的第二组行段;
所述存储体分组子单元,用于将内存中的存储体划分为两组,每组包括两个存储体;
所述存放子单元,用于将所述第一组行段所包含的图像数据按照行段交错地存放于内存中的第一组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中;以及将所述第二组行段所包含的图像数据按照行段交错地存放于内存中的第二组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中。
一种图像数据访问装置,包括:数据块划分单元和行段确定单元及读取单元;
所述数据块划分单元,用于确定所需访问图像数据块处于原图像中的位置;所述行段确定单元,用于确定出所述数据块划分单元划分出的所述图像数据块存放于内存中的对应存储体及对应存储体中的对应行段;所述读取单元,用于从所述对应存储体中的对应行段中读取所述图像数据块的数据;
其中,所述行段为图像的每一行图像数据划分成的若干个部分之一;同一所述行段所包含的图像数据被存放于内存中同一存储体的同一行中,并且划分出的上下左右位置相邻的任意两个所述行段所包含的图像数据分别被存放于内存中不同的存储体中,所述不同的存储体的数量为4个。
较佳地,所述装置进一步包括插入单元,用于在访问内存中图像数据过程中,实时进程需要访问内存中存储体存储的对应数据时,将所述实时进程访问插入到所述图像数据访问过程中的两个存储体切换之间,并使所述两个存储体均与所述实时进程访问的存储体不同。
本发明实施例通过将图像的每一行图像数据划分为若干个行段;将同一行段所包含的图像数据存放于内存中同一bank的同一行中,并使划分出的位置相邻的任意两个行段所包含的图像数据分别存放于内存中不同的bank中。在访问内存中的图像数据时,将图像数据划分为若干个图像数据块;确定出图像数据块存放于内存中的对应bank及对应bank中的对应行段;从对应bank中的对应行段中读取图像数据块的数据。本发明实施例提供的图像数据内存投影方法与访问方法,在保证了图像数据块单独访问内存时的效率与传统的图像数据块内存访问方式效率相同的情况下,当同时存在其它对内存的实时访问时,依然可以通过内存中的bank间的切换来屏蔽内存访问准备时间,显著提高内存访问效率,有利于图像数据播放系统以更低的内存频率、更低的功耗、更高的内存访问效率完成同样的工作。
附图说明
图1为现有技术中计算机系统的一般结构示意图;
图2为一种常用的图像数据块内存投影方法示意图;
图3为本发明实施例提供的图像数据投影到内存方法的主要实现原理流程图;
图4为本发明实施例提供的图像数据内存投影示意图;
图5为本发明实施例提供的访问内存中图像数据的方法的主要实现原理流程图;
图6为现有技术中图像数据内存投影结果示意图;
图7为本发明实施例提供的图像数据内存投影结果示意图;
图8为本发明实施例提供的图像数据投影装置结构示意图;
图9为本发明实施例提供的图像数据访问装置结构示意图。
具体实施方式
本发明实施例提供的图像数据内存投影方法、访问方法及装置,将现有的以图像数据块为单位进行内存投影改为以行段为单位进行内存投影,同一行段存放于内存中的一个bank中的一行(row)中,并且,每个行段与上下左右相邻的其它行段均存放于不同的bank中,这样可以保证在对图像数据访问的过程中,有效的利用内存中不同bank间的并行控制来屏蔽同一个bank中跨row操作时的准备时间,从而提高图像数据内存访问的效率。
本发明实施例可以应用于任何对内存进行投影于访问的过程中,尤其适用于对图像数据进行实时访问的应用中,例如,视频播放、图像实时显示以及其它的图像处理技术。
下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。
如图3所示,本发明实施例提供的将图像数据投影到内存的方法的主要实现原理流程如下:
步骤11,将图像的每一行图像数据划分为若干个行段。
由于现有的显示设备(例如LCD/TV等)的显示扫描特性都是逐行扫描或隔行扫描,为了适应显示设备的这种特性,现有的图像数据大多以分行存放,因而,图像数据可以划分为多个行数据。一个图像划分行的多少,根据图像的大小以及解析度确定。
在将图像数据划分为多个图像行之后,进一步的需要将每行数据划分为多个行段。例如,可以把图像的每行,按照每64像素一个段落大小进行划分,得到多个行段。当然,划分的段落也可以是32像素、128像素或其它数量的像素。每个行段具有相同数量的像素数。
步骤12,将同一行段所包含的图像数据存放于内存中同一bank的同一行中,并使划分出的位置相邻的任意两个行段所包含的图像数据分别存放于内存中不同的bank中。
现有技术中的内存大都采用bank机制,每个内存中包括多个bank(最常用的为4个bank),每个bank都由一个相互独立的bank控制器控制,负责对这个bank进行读写操作。每个bank控制器之间相互独立,也就是说,bank0进行一些数据读写动作时,bank1、bank2或bank3可以独立进行自己的数据读写准备工作,以便在下一次读取bank1、bank2或bank3时,可以马上输出数据。这种操作上的重叠并行,是bank机制的核心思想。
在每个bank的内部,都是以行(row)和列(column)的方式存放数据。如果连续读写同一row内的数据,效率非常高,但是,如果在同一个bank读写不同row的话,因为无法在同一个bank中同时进行数据访问以及准备动作,效率就会低很多。因此,要提高内存的读写效率,就绪要尽可能的避免在同一个bank连续读写不同row。
因此,本发明实施例中,将同一行段所包含的数据存放于内存中的同一bank的同一行中,并且,使位置相邻的任意两个行段所包含的数据分别存放于不同的bank中。这里的位置相邻,是指每个行段的上下左右位置相邻的行段,不仅包括同一行中相邻的行段,还包括不同行中相邻的行段。例如,第一行的第一个行段不仅与第一行的第二个行段左右相邻,而且,还与第二行的第一个行段上下相邻,第一行的第二个行段与第二行的第一个行段都是第一行的第一个行段的相邻行段,因而都必须与第一行的第一个行段分别存放于不同的bank中。
基于bank内部的设计原理,为了提高读写效率,每个行段所包含的数据长度都需要均不能大于bank中一行(row)的数据容量,以避免在对每个行段进行操作时出现bank内的跨row的处理而造成的延时。
为了保证位置相邻的两个行段所包含的数据均存放于不同的bank中,本实施例以常用的4 bank机制为例,详细描述行段所包含的数据与bank的对应关系。在实际应用中,本发明实施例提供的图像数据内存投影方法,可以适用于多种bank机制的具体应用,例如,2bank机制,8bank机制等。
如图4所示,为本发明实施例提供的图像数据内存投影示意图,其中,图像数据划分为长度为64像素的多个行段,每个行段所包含的数据对应占用内存中的64字节存放空间。图中,第一行(line0)的第一个行段所包含的数据存放于bank0的第一行row0中,第一行(line0)的第二个行段所包含的数据存放于bank1的第一行row0中。第二行(line1)的第一个行段所包含的数据存放于bank2的第一行row0中,第二行(line1)的第二个行段所包含的数据存放于bank3的第一行row0中。以此类推,第三行(line2)的第一个行段所包含的数据存放于bank0的第一行row0中,第三行(line2)的第二个行段所包含的数据存放于bank1的第一行row0中。第四行(line3)的第一个行段所包含的数据存放于bank2的第一行row0中,第四行(line3)的第二个行段所包含的数据存放于bank3的第一行row0中。
由此可知,图像数据与内存bank之间的对应关系为:将奇数行的行段所包含的数据交错的存放于内存中不同的两个bank中,将偶数行的行段所包含的数据交错的存放于内存中另外的不同的两个bank中。
上述实施例中,放在同一bank同一行中的不同行段数据(因为内存中一行可以存放至少一个或多个行段数据),在图像上是上下关系。例如,将图像数据的第一行的第一行段和图像数据的第三行第一行段,都存放在内存bank0的第一行中,并且连续先后存放。图像第二行的第一行段和第四行第一行段,都是存放在bank2第一行中,并且连续先后存放。在奇数行或偶数行上下连续的行段,连续存放在同一bank同一行中,直到该行被存放满。
在实际应用中,不仅限于上述的图像数据内存投影方法,还可以有多种投影方法,只要能够满足位置相邻的两个行段所包含的数据分别存放于不同的bank中即可。
相应的,如图5所示,本发明实施例还提供一种访问内存中图像数据的方法,具体流程如下:
步骤21,确定访问图像数据块在原图像的中的位置。
在视频解码及图像处理技术中,对图像数据的访问主要采用数据块访问的方式。也就是根据图像大小、质量等因素,将图像数据划分为多个图像数据块。每个图像数据块的大小可以相同,也可以不同。例如,可以取每个图像数据块的大小为64像素×32像素。
步骤22,确定出图像数据块存放于内存中的对应bank及对应bank中的对应行段。
确定图像数据块存放于内存中的对应bank及对应bank中的对应行段,也就是找到图像数据块与行段的对应关系。图像数据块与行段之间并没有一一对应的关系,将图像数据划分为图像数据块的方式以及图像数据块划分的大小均与图像数据内存投影过程中的行段中包含的数据长度没有必然的关系,图像数据块的宽度可能小于一个行段中包含数据的长度,也可能大于或等于一个行段中包含数据的长度,但一般不会超过2个行段的长度。因此,一个图像数据块可能对应一个或多个行段中包含的数据,也可能对应一个或多个行段中每个行段中包含的一部分数据。
由于在图像数据内存投影的时,位置相邻两个行段所包含的数据都分别存放于不同的bank中,因而,无论图像数据块与行段的对应关系如何,在访问每个图像数据块的过程中以及在访问各个图像数据块之间,都可以充分利用bank间的交错达到屏蔽内存准备时间的效果。
步骤23,从对应bank中的对应行段中读取图像数据块的数据。
较佳地,上述实施例中,当图像数据访问过程中,存在另外的对内存中相应的bank的实时访问时,也就是说,在图像数据访问的过程中需要插入其它的实时程序对内存相应bank的访问时,需要确定该实时访问针对的bank,将该实时访问插入图像数据访问中bank切换之间,并且使切换前后的两个bank均与该实时访问针对的bank不同。例如,如果该实时访问需要访问bank2,则将其插入bank0与bank1切换之间,由于bank0、bank1均与bank2不同,因而即使插入对bank2的访问,也可以实现切换访问的同时切换bank,屏蔽内存准备时间。
为了进一步说明本发明实施例所带来的有益效果,下面结合图6与图7,比较说明本发明与现有技术中图像数据内存投影方法与访问方法的不同以及由此带来的有益效果。
图6为现有技术中图像数据内存投影结果示意图,其中,图像数据以图像数据块为单位存放于内存中,每行图像数据块被分别存放于不同的bank中。如图中虚线框所示,当对图像数据进行访问时,如果访问设定的图像数据块大小为图中虚线框划定的范围,对图像数据的访问,将对内存4个bank产生如下序列的访问:
bank0->bank1->bank0->bank1->......
在每个访问切换的时候,都会产生bank切换,因此内存准备时间可以被屏蔽掉(在访问当前bank的时候,可以预先对下一个访问的bank做充电、行激活、列激活等的准备动作),因此效率会比较高。
当图像数据访问过程中出现其它对内存的实时访问时,由于实时性的要求,必须把该访问插入到图像数据访问当中,否则等待图像数据访问的时间会造成该访问不能达到实时性的要求。由于该实时访问进程和图像数据访问进程的异步特性,因此对于忽然插入的实时内存访问,无法预先判断要访问的具体内存地址,也就是说,对于内存的4个bank,该实时访问均有可能访问。
如果该实时访问需要访问bank2或bank3的数据,那么对于正在访问bank0与bank1的图像数据访问,可以做插入调整:
bank0->bank2->bank1->bank3->bank0->bank1->......
可见,在图像数据访问的序列中,插入实时显示对于bank2或bank3的访问,由于访问的是内存不同的bank,在访问切换的时候,会发生bank的切换,因此可以屏蔽掉内存准备时间,效率较高。
但是如果该实时访问需要访问bank0或bank1的数据,那么对于图像数据访问,我们假设做以下插入调整:
bank0->bank0(display)->bank1->bank1(display)->bank0->bank1->......
其中,bank0(display)与bank1(display)为该实时访问对内存的访问。可以看出,由于该实时访问与图像数据访问针对的是内存同一个bank,因此不可避免地在访问切换的时候,必然会出现访问同一个bank的情况,如bank0->bank0(display),图像数据访问和该实时访问同时访问内存同一个bank,并且,两个访问的异步性决定了两个访问针对同一行内容可能性极低,此时访问切换必然要经历一个无法屏蔽的内存准备时间,效率变得低下。
如图7所示,为本发明实施例提供的图像数据内存投影结果示意图,其中,图像数据以行段为单元存放于内存中,相邻行段被分别存放于不同的bank中。如图中虚线框所示,当对图像数据进行访问时,如果访问设定的图像数据块大小为图中虚线框划定的范围,对图像数据的访问,将对内存4个bank产生如下序列的访问:
bank0->bank1->bank2->bank3->bank0->......
在每个访问切换的时候,都会产生一个bank间的切换,因此内存访问准备时间可以被屏蔽掉(在访问当前bank的时候,可以预先对下一个访问的bank做充电,行激活,列激活等的准备动作),因此效率与图6所示的现有技术中的图像数据内存投影方法同样高。
当图像数据访问过程中出现其它对内存的实时访问时,由于实时性的要求,必须把该访问插入到图像数据访问当中。从本发明实施例原本的访问序列bank0->bank1->bank2->bank3->bank0->......可以明显地看出,插入的实时内存访问无论处于任何一个bank,都可以在其中找到适当的地方插入,而不影响内存访问效率。
例如,如果该实时访问需要访问bank0,则插入顺序如下:
bank0->bank1->bank0(display)->bank2->bank0(display)->bank3->bank0->...
如果该实时访问需要访问bank2则插入顺序如下:
bank0->bank2(display)->bank1->bank2->bank3->bank2(display)->bank0->......
本发明实施例中,图像数据内存访问的序列在内存4个bank中顺序轮换,总可以把对任意一个bank的实时访问插入其中,并保证该访问前后图像数据访问与其不在一个bank中,最终达到切换访问同时能做到bank的切换,屏蔽内存准备时间。可以做到图像数据访问和其它的实时内存访问同时发生的访问效率同只有图像数据访问内存的效率一样高。
相应地,本发明实施例还提供了一种图像数据投影装置,如图8所示,该装置包括行段划分单元101和投影单元102,具体如下:
行段划分单元101,用于将图像的每一行数据划分为若干个行段,并将划分结果发送给投影单元102;
投影单元102,用于将位置相邻的两个行段分别存放于不同的bank中。
较佳地,上述实施例中的投影单元102进一步包括奇偶交错子单元1021、bank分组子单元1022和存放子单元1023,具体如下:
奇偶交错子单元1021,用于将行段划分为奇数行数据划分成的第一组行段和偶数行数据划分成的第二组行段;
存储体分组子单元1022,用于将内存中的bank划分为两组;
如果内存中包括4个bank,则每组包括2个bank;如果内存中包括8个bank,则每组包括4个bank。
存放子单元1023,用于将第一组行段所包含的图像数据交错地存放于内存中的一组bank中,以及将第二组行段所包含的图像数据交错地存放于内存中的另一组bank中。。
存放的过程中,应该确保奇数行数据划分成的行段数据交错的存放于一组bank中,偶数行数据划分成的行段数据交错的存放于另外一组bank中。
相应的,本发明实施例还提供一种图像数据访问装置,如图9所示,该装置包括数据块划分单元201、行段确定单元202和读取单元203,具体如下:
数据块划分单元201,用于将图像数据划分为若干个图像数据块;
特别的,这里对图像数据的划分,与图像数据内存投影时划分行段没有必然的关联。
行段确定单元202,用于确定出数据块划分单元201划分出的图像数据块存放于内存中的对应bank及对应bank中的对应行段。
读取单元203,用于从对应bank中的对应行段中读取图像数据块的数据.
较佳地,上述实施例中的图像数据内存访问装置进一步还包括插入单元204,用于在访问内存中图像数据过程中,另外的实时进程需要访问内存中存储体存储的对应数据时,将实时进程访问插入到图像数据访问过程中的两个bank切换之间,并使两个bank均与实时进程访问的存储体不同。
将该实时访问插入图像数据访问中两个bank切换之间时,要确保切换前后的bank均与插入的bank不同。
本发明实施例通过将图像的每一行图像数据划分为若干个行段;将同一行段所包含的图像数据存放于内存中同一bank的同一行中,并使划分出的位置相邻的任意两个行段所包含的图像数据分别存放于内存中不同的bank中。在访问内存中的图像数据时,将图像数据划分为若干个图像数据块;确定出图像数据块存放于内存中的对应bank及对应bank中的对应行段;从对应bank中的对应行段中读取图像数据块的数据。本发明实施例提供的图像数据内存投影方法与访问方法,在保证了图像数据块单独访问内存时的效率与传统的图像数据块内存访问方式效率相同的情况下,当同时存在其它对内存的实时访问时,依然可以通过内存中的bank间的切换来屏蔽内存访问准备时间,显著提高内存访问效率,有利于图像数据播放系统以更低的内存频率、更低的功耗、更高的内存访问效率完成同样的工作。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (4)
1.一种将图像数据投影到内存的方法,其特征在于,该方法包括:
将图像的每一行图像数据划分为若干个行段;
将同一所述行段所包含的图像数据存放于内存中同一存储体的同一行中,并使划分出的上下左右位置相邻的任意两个所述行段所包含的图像数据分别存放于内存中不同的存储体中,所述不同的存储体的数量为四个;
所述使划分出的上下左右位置相邻的任意两个所述行段所包含的图像数据分别存放于内存中不同的存储体中,包括:
将内存中的存储体分为两组,每组包括两个存储体;
将奇数行图像数据划分成的行段所包含的图像数据按照行段交错地存放于内存中第一组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中;以及将偶数行图像数据划分成的行段所包含的图像数据按照行段交错地存放于内存中第二组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中。
2.如权利要求1所述的方法,其特征在于,每一所述行段所包含的图像数据长度相同。
3.如权利要求1所述的方法,其特征在于,内存中同一存储体的同一行中存储了一个以上包含图像数据的所述行段。
4.一种将图像数据投影到内存的装置,其特征在于,包括:行段划分单元和投影单元;
所述行段划分单元,将图像的每一行图像数据划分为若干个行段;
所述投影单元,用于将同一所述行段所包含的图像数据存放于内存中同一存储体的同一行中,并使上下左右位置相邻的任意两个所述行段所包含的图像数据分别存放于内存中不同的存储体中,所述存储体的数量为四个;
所述投影单元包括奇偶交错子单元、存储体分组子单元和存放子单元;
所述奇偶交错子单元,用于将所述行段分为由奇数行图像数据划分成的第一组行段和由偶数行图像数据划分成的第二组行段;
所述存储体分组子单元,用于将内存中的存储体划分为两组,每组包括两个存储体;
所述存放子单元,用于将所述第一组行段所包含的图像数据按照行段交错地存放于内存中的第一组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中;以及将所述第二组行段所包含的图像数据按照行段交错地存放于内存中的第二组的两个存储体中,且左右位置相邻的任意两个所述行段所包含的图像数据分别存放于不同的存储体中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710125696 CN101216933B (zh) | 2007-12-29 | 2007-12-29 | 一种图像数据内存投影方法、访问方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710125696 CN101216933B (zh) | 2007-12-29 | 2007-12-29 | 一种图像数据内存投影方法、访问方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101216933A CN101216933A (zh) | 2008-07-09 |
CN101216933B true CN101216933B (zh) | 2010-09-08 |
Family
ID=39623362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710125696 Expired - Fee Related CN101216933B (zh) | 2007-12-29 | 2007-12-29 | 一种图像数据内存投影方法、访问方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101216933B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101859280B (zh) * | 2010-06-03 | 2012-04-04 | 杭州海康威视软件有限公司 | 一种二维图像数据的并行传输计算方法及系统 |
CN102662853A (zh) * | 2012-03-22 | 2012-09-12 | 北京北大众志微系统科技有限责任公司 | 实现使用存储级并行的内存管理方法及装置 |
US8832158B2 (en) * | 2012-03-29 | 2014-09-09 | International Business Machines Corporation | Fast predicate table scans using single instruction, multiple data architecture |
CN104469228A (zh) * | 2014-04-04 | 2015-03-25 | 西安交通大学 | 一种兼容2d与多视点裸眼3d的视频数据存储读写方法 |
CN105335296B (zh) * | 2014-07-30 | 2018-08-14 | 华为技术有限公司 | 一种数据处理方法、装置及系统 |
CN105551456A (zh) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于图像旋转显示的ddr2分块存储方法 |
-
2007
- 2007-12-29 CN CN 200710125696 patent/CN101216933B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101216933A (zh) | 2008-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101216933B (zh) | 一种图像数据内存投影方法、访问方法及装置 | |
JP3816907B2 (ja) | 表示データの記憶装置 | |
KR101477849B1 (ko) | 메모리 모듈 및 메모리 모듈 제어 방법 | |
US8407405B2 (en) | Semiconductor storage device with a plurality of memories divided into groups and a controller that performs write control by interleaving data between the groups | |
JPH0792952A (ja) | 像編集用窓メモリ構造 | |
CN101446924A (zh) | 一种数据存储及获取方法、系统 | |
CN102016809A (zh) | 存储器控制装置、存储器系统、半导体集成电路和存储器控制方法 | |
CN102055973B (zh) | 存储器地址映射方法及存储器地址映射电路 | |
KR101243933B1 (ko) | 비디오 데이터의 인터리브된 스토리지를 위한 시스템 | |
US20180314640A1 (en) | Memory Device Accessed In Consideration Of Data Locality And Electronic System Including The Same | |
JP2008048258A (ja) | 画像データ記憶装置、および記憶方法 | |
CN100444636C (zh) | 提高视频解码器中sdram总线效率的方法 | |
JP4586627B2 (ja) | データアクセス装置、データアクセス方法、プログラムおよび記録媒体 | |
CN100403276C (zh) | 存储器存取方法 | |
CA2619358C (en) | Content data storage device and its control method | |
JP4890807B2 (ja) | メモリアクセス装置およびメモリアクセス方法 | |
JP4983160B2 (ja) | 動画像処理装置 | |
JP2000232623A (ja) | 映像メモリ回路 | |
JP2005109856A (ja) | 画像回転回路及びそれを有する画像処理装置 | |
JP3764622B2 (ja) | 画像記憶装置 | |
CN105551456A (zh) | 一种基于图像旋转显示的ddr2分块存储方法 | |
JP4643494B2 (ja) | 実時間映像処理システム | |
JP2004320314A (ja) | 画像読取装置 | |
EP0741902A1 (en) | Improved memory devices | |
JP5449287B2 (ja) | メモリアクセス装置 |
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 | ||
C56 | Change in the name or address of the patentee | ||
CP02 | Change in the address of a patent holder |
Address after: 519085 hi tech Zone, Guangdong, Zhuhai science and Technology Innovation Coast Road, No. four, No. 1 Patentee after: Juli Integrated Circuit Design Co., Ltd. Address before: 519085 No. 1, unit 15, building 1, 1 Da Ha Road, Tang Wan Town, Guangdong, Zhuhai Patentee before: Juli Integrated Circuit Design Co., Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100908 Termination date: 20161229 |
|
CF01 | Termination of patent right due to non-payment of annual fee |