CN102200947A - Memory management method and related memory device - Google Patents
Memory management method and related memory device Download PDFInfo
- Publication number
- CN102200947A CN102200947A CN2010101432288A CN201010143228A CN102200947A CN 102200947 A CN102200947 A CN 102200947A CN 2010101432288 A CN2010101432288 A CN 2010101432288A CN 201010143228 A CN201010143228 A CN 201010143228A CN 102200947 A CN102200947 A CN 102200947A
- Authority
- CN
- China
- Prior art keywords
- memory
- data corresponding
- image
- data
- image block
- 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
- 230000015654 memory Effects 0.000 title claims abstract description 144
- 238000007726 management method Methods 0.000 title claims abstract description 27
- 239000013598 vector Substances 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 8
- 238000000034 method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 8
- 238000001914 filtration Methods 0.000 description 6
- 230000003139 buffering effect Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000006837 decompression Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Image Input (AREA)
Abstract
Description
技术领域technical field
本发明是关于存储器管理,尤指一种存储器管理方法与一相关存储器装置,用以有效率地配置一缓冲存储器,以储存影像压缩技术中的动态区块。The present invention relates to memory management, especially a memory management method and a related memory device, which are used to efficiently configure a buffer memory to store dynamic blocks in image compression technology.
背景技术Background technique
动态补偿是影像压缩与影像解压缩技术中相当重要的一环,在多种动态补偿技术中,又以可变区块大小的动态补偿最常使用于如:H.264与MPEG-4等热门影像压缩技术之中。这种动态补偿技术利用动态区块来记录相关的动态向量。而在还原影像压缩文件的过程中,对应于动态区块的数据必须被载入来进行后续运算处理。然而,因为对应于动态区块的数据从数据源(如:动态随机存取存储器)被载入的速度不同于其被运算处理的速度,因此现有技术会事先撷取对应于多个动态区块的数据,并将这些数据储存于一缓冲存储器中,之后,再对这些数据进行后续的影像处理操作(如:一滤波操作)。Motion compensation is a very important part of image compression and image decompression technology. Among various motion compensation technologies, motion compensation with variable block size is most commonly used in popular applications such as H.264 and MPEG-4. image compression technology. This motion compensation technique utilizes motion blocks to record relative motion vectors. In the process of restoring compressed image files, the data corresponding to the dynamic blocks must be loaded for subsequent calculation and processing. However, because the data corresponding to the dynamic block is loaded from the data source (such as: dynamic random access memory) at a speed different from the speed at which it is processed, the prior art fetches data corresponding to multiple dynamic blocks in advance. block data, and store the data in a buffer memory, and then perform a subsequent image processing operation (such as a filtering operation) on the data.
在可变区块大小的动态补偿的技术中,不同动态区块所对应的数据大小可能有所不同。于是,缓冲存储器的宽度(总线宽度)将会受限于动态区块中最大的动态区块的数据宽度。因此,当这种宽度有所限制的缓冲存储器在储存较小的动态区块时,会有一部分的空间被浪费。请参考图1,其解释了在现有技术中,缓冲存储器的空间被浪费的情形。如图所示,动态区块A、B与C分别为包含有21x13个像素、9x9个像素以及9x13个像素,并且分别储存于具有相同容量大小的缓冲存储器101、102以及103,该容量符合最大动态区块A的数据大小。如图所示,除了储存动态区块A的缓冲存储器101的容量刚好相同于储存动态区块A的数据量外,其余的缓冲存储器102与103中均有相当多的储存空间被浪费。再者,从另一面来说,缓冲存储器101、102以及103中的每一个缓冲存储器,在进行数据缓冲的过程中,都必需等到其内部所储存的数据已被读取出来,并供后续操作处理完毕后,才得以释放其空间,进而继续储存其它的动态区块。显然,现有技术在动态区块的数据缓冲操作中,有相当多的时间被无谓地浪费,故在现有缓冲存储器的管理与配置方式上,仍有许多亟待改进的不足之处。In the technology of dynamic compensation of variable block size, the data sizes corresponding to different dynamic blocks may be different. Therefore, the width of the buffer memory (bus width) will be limited by the data width of the largest dynamic block in the dynamic blocks. Therefore, when the buffer memory with a limited width stores small dynamic blocks, a part of the space will be wasted. Please refer to FIG. 1 , which illustrates the situation where the space of the buffer memory is wasted in the prior art. As shown in the figure, the dynamic blocks A, B, and C respectively include 21x13 pixels, 9x9 pixels, and 9x13 pixels, and are respectively stored in
发明内容Contents of the invention
有鉴于此,本发明提供一种存储器管理方法与相关存储器装置,其可更有效率地配置一缓冲存储器,以对图像区块(特别是可变区块大小的动态区块)进行数据缓冲,进而改善现有技术中缓冲存储器的储存空间浪费的情形。此外,本发明也可改善现有数据缓冲操作中时间浪费的情形。In view of this, the present invention provides a memory management method and a related memory device, which can more efficiently configure a buffer memory for data buffering of image blocks (especially dynamic blocks with variable block sizes), Furthermore, the situation of wasting storage space of the buffer memory in the prior art is improved. In addition, the present invention can also improve the time wasting situation in the existing data buffering operation.
依据本发明的一实施例,其提供一种存储器管理方法。该存储器管理方法包含:撷取对应于多个图像区块的数据,其中该多个图像区块中包含有至少两个区块大小不同的图像区块;以及利用具有多个存储器组(memory bank)的一存储器来储存对应于该多个图像区块的数据。According to an embodiment of the present invention, a memory management method is provided. The memory management method includes: retrieving data corresponding to a plurality of image blocks, wherein at least two image blocks with different block sizes are included in the plurality of image blocks; ) to store data corresponding to the plurality of image blocks.
依据本发明的另一实施例,其提供一种存储器装置,该存储器装置包含:一存储器、一撷取单元以及一配置单元。该存储器包含有多个存储器组(memory bank)。该撷取单元用以撷取对应于多个图像区块的数据,其中,该多个图像区块中包含有至少两个区块大小不同的图像区块。该配置单元耦接于该撷取单元以及该存储器,并且用以利用该存储器来储存对应于该多个图像区块的数据。According to another embodiment of the present invention, a memory device is provided, and the memory device includes: a memory, a capture unit, and a configuration unit. The memory contains multiple memory banks. The capturing unit is used for capturing data corresponding to a plurality of image blocks, wherein the plurality of image blocks include at least two image blocks with different block sizes. The configuration unit is coupled to the capture unit and the memory, and is used for using the memory to store data corresponding to the plurality of image blocks.
优选地,该多个图像区块为动态区块,并且依据用于一影像处理操作中的不同动态向量,撷取对应于该多个动态区块的数据。Preferably, the plurality of image blocks are dynamic blocks, and data corresponding to the plurality of dynamic blocks is retrieved according to different motion vectors used in an image processing operation.
优选地,该多个图像区块中的一图像区块中不同列所对应于的数据储存于该多个存储器组中的不同存储器组内同一列地址的空间。Preferably, data corresponding to different columns in an image block of the plurality of image blocks is stored in a space of the same column address in different memory groups of the plurality of memory groups.
优选地,该图像区块内的该不同列的数目大于该不同存储器组的数目。Preferably, the number of different columns within the image block is greater than the number of different memory banks.
优选地,该多个图像区块中的一图像区块中的一列所对应的数据储存于该多个存储器组中的不同存储器组内同一列地址的空间。Preferably, the data corresponding to a column in an image block of the plurality of image blocks is stored in a space of the same column address in different memory groups of the plurality of memory groups.
附图说明Description of drawings
图1为现有存储器配置方法的示意图。FIG. 1 is a schematic diagram of an existing memory configuration method.
图2为本发明存储器管理方法的第一实施例的示意图。FIG. 2 is a schematic diagram of a first embodiment of the memory management method of the present invention.
图3为本发明存储器管理方法的第二实施例的示意图。FIG. 3 is a schematic diagram of a second embodiment of the memory management method of the present invention.
图4为本发明存储器管理方法的第三实施例的示意图。FIG. 4 is a schematic diagram of a third embodiment of the memory management method of the present invention.
图5为本发明存储器管理方法的第四实施例的示意图。FIG. 5 is a schematic diagram of a fourth embodiment of the memory management method of the present invention.
图6为一动态区块与其所对应的数据的关系示意图。FIG. 6 is a schematic diagram of the relationship between a dynamic block and its corresponding data.
图7为本发明存储器装置的一实施例的示意图。FIG. 7 is a schematic diagram of an embodiment of a memory device of the present invention.
【主要元件符号说明】[Description of main component symbols]
200、300、400、500、712 存储器200, 300, 400, 500, 712 memory
700 影像处理系统700 Image processing system
710 存储器装置710 memory device
714 撷取单元714 Extraction unit
716 配置单元716 hive
720 影像处理单元720 Image processing unit
730 高速缓存装置730 cache device
740 数据源740 data source
具体实施方式Detailed ways
依据本发明的一实施例,提供用于一影像处理操作中的一存储器管理方法包含有:撷取对应于多个图像区块(例如:动态区块)的数据,其中该多个图像区块中包含有至少两个区块大小不同的图像区块;以及利用具有多个存储器组(memory bank)的一存储器来储存对应于该多个图像区块的数据。该影像处理操作可能为可变区块大小的动态补偿技术的滤波操作。通常来说,这种滤波操作可能会利用包含有一动态区块的数据,以及邻近于该动态区块的邻近动态区块的部分数据来进行处理。因此,在后续的说明中,所谓“对应于一动态区块的数据”实际上包含有该动态区块本身的数据以及其它相邻动态区块的部分数据。由于对应于动态区块的数据应用于可变区块大小的动态补偿技术中,因此动态区块可能会有不同大小。此外,对应于动态区块的数据可能与滤波处理中所欲处理的动态向量有所关联,并且,基于不同的影像处理架构,数据可能由一数据源(例如:动态随机存取存储器)之中所撷取,或者是由一高速缓存装置中所撷取。这两种方式都可用于本发明的存储器管理方法。According to an embodiment of the present invention, a memory management method used in an image processing operation includes: retrieving data corresponding to a plurality of image blocks (eg, dynamic blocks), wherein the plurality of image blocks including at least two image blocks with different block sizes; and using a memory with a plurality of memory banks to store data corresponding to the plurality of image blocks. The image processing operation may be a filtering operation of a variable block size motion compensation technique. Generally speaking, the filtering operation may utilize data including a dynamic block and part of data of neighboring dynamic blocks adjacent to the dynamic block for processing. Therefore, in the subsequent description, the so-called "data corresponding to a dynamic block" actually includes the data of the dynamic block itself and part of the data of other adjacent dynamic blocks. Since the data corresponding to the dynamic block is used in the dynamic compensation technique of variable block size, the dynamic block may have different sizes. In addition, the data corresponding to the dynamic block may be related to the motion vector to be processed in the filtering process, and, based on different image processing architectures, the data may be stored in a data source (such as DRAM) retrieved, or retrieved from a cache device. Both ways can be used in the memory management method of the present invention.
为了利用具有该多个存储器组的该存储器来储存对应于该多个动态区块的数据,本发明提供了数种不同的存储器配置方式。这些存储器配置方式随着每个动态区块的高度与宽度而有所不同。因此,以下的说明中会搭配数个不同的实施例来解释本发明所包含的存储器配置方法。然而,需注意的是,这些配置方式可能单独被使用,或者是整合地使用。而这些变化均属本发明的范畴。In order to use the memory with the memory banks to store data corresponding to the dynamic blocks, the present invention provides several different memory configurations. These memory configurations vary with the height and width of each dynamic block. Therefore, the following description will be combined with several different embodiments to explain the memory configuration method included in the present invention. However, it should be noted that these configuration methods may be used individually or in combination. These changes all belong to the category of the present invention.
请参考图2,其绘示当动态区块的一列(也即,一像素列)的数据宽度大于存储器组中一列地址所对应的存储器宽度时,如何储存该动态区块的数据的方式。如图所示,假设动态区块A的每一列含有水平排列的21个像素,而每一个像素包含8位的数据量,此时,每一列的总数据宽度将会是168位。若存储器200是由存储器组0与存储器组1所组成,且其一的宽度为80位,以及另一的宽度则为88位,则由前一步骤所撷取的数据中,其中对应于动态区块中的一列的数据将会被储存于不同存储器组的同一列地址的空间中。举例来说,对应于动态区块A的第1列的数据会分别被储存于存储器组0内,列地址为0的空间中,以及存储器组1内,列地址为0的空间中。而对应于动态区块A的第2列的数据会分别被储存于存储器组0内,列地址为1的空间中,以及存储器组1内,列地址为1的空间中,以此类推。因此,在本实施例中,对应于动态区块A的每一列的数据会刚好储存于存储器组0与1的同一列地址的空间中。此外,在本实施例中,当动态区块A被储存于存储器200时,没有任何的空间会被浪费。Please refer to FIG. 2 , which shows how to store the data of the dynamic block when the data width of a row (ie, a pixel row) of the dynamic block is larger than the memory width corresponding to a column address in the memory bank. As shown in the figure, assuming that each column of the dynamic block A contains 21 horizontally arranged pixels, and each pixel contains 8 bits of data, at this time, the total data width of each column will be 168 bits. If the
请参考图3,其绘示了当动态区块中每一列的数据宽度接近于存储器组中一列地址所对应的存储器宽度时,如何储存该动态区块的数据的方式。如图所示,假设动态区块B的每一列含有水平排列的11个像素,而每一个像素包含8位的数据量,此时,每一列的总数据宽度将会是88位。若存储器300是由存储器组0与存储器组1所组成,且其一的宽度为80位以及另一的宽度则为88位,则所撷取的对应动态区块C中不同列的数据将会被储存于不同存储器组中的同一列地址的空间中。举例来说,对应于动态区块B的第1列的数据将会被储存于存储器组0内,列地址为0的空间中、对应于动态区块B的第2列的数据则会被储存于存储器组1内,列地址为0的空间中、对应于动态区块B的第3列的数据则会被储存于存储器组0内,列地址为1的空间中,以及对应于动态区块B的第4列的数据则会被储存于存储器组1内,列地址为1的空间中,依此类推。其中,在存储器组1中,列地址为2的空间将会被保留,或者用以储存对应于其它动态区块的数据。而在图3的另一个范例中,对应于动态区块C中每一列的数据将会对称地且分别储存于存储器组0与1内,并且不会有任何空间余留于存储器组0或存储器组1之中。Please refer to FIG. 3 , which illustrates how to store the data of the dynamic block when the data width of each column in the dynamic block is close to the memory width corresponding to a column address in the memory bank. As shown in the figure, assuming that each column of the dynamic block B contains 11 pixels arranged horizontally, and each pixel contains 8 bits of data, at this time, the total data width of each column will be 88 bits. If the
请再参考图4,其绘示了当动态区块中每一列的数据宽度小于存储器组中一列地址所对应的存储器宽度时,如何储存该动态区块的数据的方式。如图所示,假设动态区块D的每一列含有水平排列的3个像素,而每一个像素包含8位的数据量,此时,每一列的总数据宽度将会是24位。若存储器400是由存储器组0与存储器组1所组成,且其一的宽度为80位以及另一的宽度为88位,则所撷取的对应动态区块D中不同列的数据将会被储存于同一记忆组中的同一列地址的空间中。举例来说,对应于动态区块D的第1、2、3与4列的数据会全部被储存于存储器组0内,列地址为0的空间中,且在此空间中余留部分可用空间(即,8位)。而若对应于动态区块D的第1、2、3与4列的数据全部被储存于存储器组1内,列地址为0的空间中时,则此时,存储器空间中会余留16位的可用空间。故,当将图2、3与4中所示的存储器配置方式结合,进而用来储存具有不同大小的动态区块时,缓冲存储器的运用可较现有技术来得更有效率,并且浪费更少的空间。Please refer to FIG. 4 again, which illustrates how to store the data of the dynamic block when the data width of each column in the dynamic block is smaller than the memory width corresponding to a column address in the memory bank. As shown in the figure, assuming that each column of the dynamic block D contains 3 pixels arranged horizontally, and each pixel contains 8 bits of data, at this time, the total data width of each column will be 24 bits. If the
请参考图5,其绘示了如何以一个不同于上述实施例的存储器配置方式,进而将一动态区块所对应的数据储存于具有两个以上的存储器组的一存储器中。如图所示,假设动态区块E的每一列含有水平排列的11个像素,而每一个像素包含8位的数据量,此时,每一列的总数据宽度将会是88位。若存储器500是由存储器组0、存储器组1、存储器组2以及存储器组3所组成,并且每一存储器组的宽度均为88位,则所撷取的对应动态区块E中不同列的数据将会被储存于不同记忆组中的同一列地址的空间中。举例来说,对应于动态区块E的第1、4、7与10列的数据将会被储存于存储器组0、1、2与3内,列地址为0的空间中,依此类推。由此一实施例可知,本发明对于配置如何储存动态区块的每一列数据的方式以及所使用的存储器所包含的存储器组的数量均未有所限制。同时,本发明也未对所应用的每一存储器组的宽度以及动态区块的每一列的数据长度有所限制,故其可能随着实践方式的不同而有所变化。因此,前述段落中的所引用具体数字仅是为解释本发明概念之用,并非本发明的限制。Please refer to FIG. 5 , which illustrates how to store data corresponding to a dynamic block in a memory with more than two memory banks in a memory configuration different from the above-mentioned embodiments. As shown in the figure, assuming that each column of the dynamic block E contains 11 pixels arranged horizontally, and each pixel contains 8 bits of data, at this time, the total data width of each column will be 88 bits. If the
此外,由于可变区块大小的动态补偿中的滤波操作可能同时对一动态区块的数据以及该动态区块周边的邻近区块的部分数据进行处理,因此本发明方法中,撷取对应于该动态区块的数据的步骤可能会造成对相同的数据进行重复的撷取,关于更进一步的解释,请参照图6。如图所示,图6绘示了5个相邻的动态区块。事实上,本发明中所谓“撷取对应于动态区块A”的数据代表撷取由虚线区域600所包围的动态区块所对应的数据。其中,在撷取对应于动态区块A的数据的步骤中,动态区块B、C、D以及E的一部份数据也会一并被撷取(也即,被虚线区域600所包围之处)。因此,为了避免从该数据源中对相同的数据反复进行撷取,本发明运用一高速缓存(cache)装置来储存曾经撷取过的数据。依此,在撷取对应于一动态区块的数据之前,本发明将先检查是否对应于该动态区块的数据中的至少一部份数据已储存于该高速缓存装置。并且,当对应于该动态区块的数据中的一部份数据已储存于该高速缓存装置时,会在该高速缓存装置中撷取对应于该图像区块的该部份数据,并在该数据源中撷取对应于该动态区块的剩余部份数据(也即,未储存于高速缓存装置的部分数据),以及将对应于该动态区块的该剩余部份数据储存于该高速缓存装置中。再者,当未有任何对应于该动态区块的数据储存于该高速缓存装置时,本发明会在该数据源中撷取对应于该动态区块的数据,并且将对应于该动态区块的数据储存于该高速缓存装置中。In addition, because the filtering operation in the dynamic compensation of variable block size may simultaneously process the data of a dynamic block and part of the data of adjacent blocks around the dynamic block, so in the method of the present invention, the extraction corresponding to The step of data in the dynamic block may result in repeated retrieval of the same data. For further explanation, please refer to FIG. 6 . As shown, FIG. 6 shows 5 adjacent dynamic blocks. In fact, the so-called “retrieving data corresponding to the dynamic block A” in the present invention means retrieving data corresponding to the dynamic block surrounded by the dotted line area 600 . Wherein, in the step of retrieving the data corresponding to the dynamic block A, part of the data of the dynamic blocks B, C, D and E will also be retrieved together (that is, those surrounded by the dotted line area 600 place). Therefore, in order to avoid retrieving the same data from the data source repeatedly, the present invention uses a cache device to store previously retrieved data. Accordingly, before retrieving the data corresponding to a dynamic block, the present invention first checks whether at least a part of the data corresponding to the dynamic block has been stored in the cache device. And, when a part of the data corresponding to the dynamic block has been stored in the cache device, the part of the data corresponding to the image block will be retrieved in the cache device, and stored in the cache device Retrieving the remaining part of data corresponding to the dynamic block (that is, part of the data not stored in the cache device) from the data source, and storing the remaining part of the data corresponding to the dynamic block in the cache device. Furthermore, when there is no data corresponding to the dynamic block stored in the cache device, the present invention will retrieve the data corresponding to the dynamic block from the data source, and will correspond to the dynamic block The data is stored in the cache device.
此外,由于撷取数据时发送地址与指令的频率会造成影像处理系统的负担(特别是对数据源来说),因此,在本发明中,连续撷取对应于该多个图像区块中的两个图像区块之间的一时间间隔为可调整。更详细地说,本发明动态地依据该数据源的延迟状态,以调整该时间间隔。若该数据源的延迟状态严重,则必须更频繁地撷取动态区块的数据。否则,数据被撷取的速度将会落后于数据被处理的速度。因此,在延迟严重的情形中,连续截取对应于两动态区块的数据的该时间间隔将会被缩短,而在延迟轻微的情形中,该时间间隔将会被延长。以上的操作,可以通过存取该数据源的一存储器接口来发出一延迟信号而达成。In addition, since the frequency of sending addresses and instructions when capturing data will cause a burden on the image processing system (especially for the data source), in the present invention, the images corresponding to the plurality of image blocks are continuously captured. A time interval between two image blocks is adjustable. More specifically, the present invention dynamically adjusts the time interval according to the delay state of the data source. If the delay state of the data source is serious, the data of the dynamic block must be retrieved more frequently. Otherwise, the speed at which data is captured will lag behind the speed at which data is processed. Therefore, in the case of severe delay, the time interval for continuously capturing data corresponding to two dynamic blocks will be shortened, and in the case of slight delay, the time interval will be extended. The above operations can be achieved by sending a delay signal through a memory interface accessing the data source.
基于以上的存储器管理方法,本发明依此提供一种存储器装置。请参考图7,其为本发明存储器装置应用于一影像处理系统的功能方块示意图。如图所示,影像处理系统700包含有(但不限定于)一存储器装置710,一影像处理单元720,一高速缓存装置730以及一数据源740。影像处理系统700可能是影像解压缩架构中的一动态补偿系统的一部份,其中此一影像解压缩架构可能用于处理H.263、H.264、MPEG-4AVC或VC-1等格式的多媒体文件。详言之,影像处理单元720可能用来对可变区块大小的动态区块进行一滤波操作,其中,动态区块的数据源自于数据源740(例如,动态随机存取存储器)。换句话说,具有不同大小的动态区块的数据可能储存于数据源740,并且会被影像处理单元720进行处理。而当影像处理单元720处理对应于多个动态区块的数据前,这些数据会先被暂存于本发明存储器装置710,这是因为数据从数据源740所读取的速度通常会与数据被影像处理单元720处理的速度有所不同。Based on the above memory management method, the present invention accordingly provides a memory device. Please refer to FIG. 7 , which is a functional block diagram of a memory device of the present invention applied to an image processing system. As shown in the figure, the
存储器装置710用以储存对应于多个动态区块的数据。存储器装置710包含有一存储器712、一撷取单元714以及一配置装置。存储器712具有多个存储器组,并且用以储存对应于具有不同大小的动态区块的数据。撷取单元714用以撷取对应于该多个动态区块的数据。详言之,撷取单元714可能依据不同动态向量所对应的动态区块,进而传送地址与指令至数据源740或高速缓存装置730来取得相关数据。配置单元716耦接于撷取单元714与存储器712,并且利用(或是说:配置)存储器712的空间以储存对应于该多个动态区块的数据。由于配置单元716配置存储器712的方式已于先前详细说明,故在此不另作赘述。此外,高速缓存装置730(其可能包含于一存储器接口之中)用于数据从数据源740搬移至存储器712的过程中,将数据进行缓存。The
事实上,影像处理单元720所使用的“对应于一动态区块的数据”通常会超过该动态区块本身所包含的数据内容,这是一种常见于动态补偿操作中的技巧。进一步来说,在这种技巧中,影像处理单元720所处理的数据包含有该动态区块本身所具有的数据以及邻近于该动态区块的邻近动态区块的部分数据。依此,当对应于一动态区块的数据被撷取时,通常连邻近动态区块的部分数据也会一并被撷取,因此,当撷取单元714从数据源740处撷取数据时,可能会重复地对先前已经撷取过的数据进行撷取,故高速缓存装置730正是设计来避免对数据源740进行重复的存取。In fact, the "data corresponding to a dynamic block" used by the image processing unit 720 usually exceeds the data content contained in the dynamic block itself, which is a common technique in motion compensation operations. Furthermore, in this technique, the data processed by the image processing unit 720 includes data of the dynamic block itself and partial data of adjacent dynamic blocks adjacent to the dynamic block. Accordingly, when the data corresponding to a dynamic block is retrieved, usually some data of adjacent dynamic blocks will also be retrieved together. Therefore, when the
在撷取单元714从数据源740或高速缓存装置730处撷取对应于一动态区块的数据之前,撷取单元714会先检查是否对应于该动态区块的数据中的至少一部份数据已储存于高速缓存装置730中。依此,若撷取单元714发现对应于该动态区块的数据中的一部份数据已储存于高速缓存装置730时,撷取单元714会从高速缓存装置730中撷取对应于该动态区块的该部份数据,并且从数据源740中撷取对应于该动态区块的一剩余部份数据。最后,对应于该动态区块的该剩余部份数据会一并被储存于高速缓存装置730中。反之,若撷取单元714发现未有任何对应于该动态区块的数据储存于高速缓存装置730时,撷取单元714将从数据源740中撷取对应于该动态区块的数据,并且对应于该动态区块的数据会一并存于高速缓存装置730中。Before the
此外,由于撷取单元714撷取数据时发送地址与指令的频率会造成影像处理系统700的负担(特别是对数据源740来说),因此,在本发明中,连续撷取对应于该多个图像区块中的两个图像区块之间的一时间间隔为可调整。更详细地说,撷取单元714依据数据源740的延迟状态,动态地调整该时间间隔。其中,撷取单元714会依据数据源740的延迟状态来决定该时间间隔的长度。若数据源740的延迟状态严重,则必须更频繁地撷取动态区块的数据。否则,数据被撷取的速度将会落后于数据被处理的速度。因此,在延迟严重的情形中,连续截取对应于两动态区块的数据的该时间间隔将会被缩短,而在延迟轻微的情形中,该时间间隔将会被延长。以上的操作,可以通过用以存取数据源740的一存储器接口所发出的一延迟信号而达成。In addition, because the frequency of sending addresses and commands when the
纵观之,本发明提供一种存储器管理方法以及一种相关的存储器装置,相较于现有技术,本发明可更有效率地对缓冲存储器进行配置。再者,本发明的概念是将缓冲存储器视为一记忆池(memory pool),因此在现有技术中,用以等待存储器释放所耗费的时间将会被减少。详言之,由于本发明存储器管理方法可有效率地在缓冲存储器中找到可用空间配置予动态区块,因此,在本发明中,不再会有现有技术所需的等待时间,也即,本发明所提供的技术可不间歇地储存动态区块。对于采用可变区块大小的动态补偿,如:H.264影像压缩技术来说,本发明更是显著地提升了缓冲存储器的效能。In general, the present invention provides a memory management method and a related memory device. Compared with the prior art, the present invention can configure the buffer memory more efficiently. Furthermore, the concept of the present invention regards the buffer memory as a memory pool, so in the prior art, the time spent waiting for memory release will be reduced. In detail, since the memory management method of the present invention can efficiently find the available space in the buffer memory and allocate it to the dynamic block, therefore, in the present invention, there is no longer the waiting time required by the prior art, that is, the present invention The technology provided by the invention can store dynamic blocks without interruption. For dynamic compensation using variable block size, such as: H.264 image compression technology, the present invention significantly improves the performance of the buffer memory.
以上所述仅为本发明的优选实施例,凡依本发明权利要求所做的等同变化与修饰,都应属本发明的涵盖范围。The above descriptions are only preferred embodiments of the present invention, and all equivalent changes and modifications made according to the claims of the present invention shall fall within the scope of the present invention.
Claims (18)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2010101432288A CN102200947A (en) | 2010-03-24 | 2010-03-24 | Memory management method and related memory device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2010101432288A CN102200947A (en) | 2010-03-24 | 2010-03-24 | Memory management method and related memory device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN102200947A true CN102200947A (en) | 2011-09-28 |
Family
ID=44661637
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN2010101432288A Pending CN102200947A (en) | 2010-03-24 | 2010-03-24 | Memory management method and related memory device |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN102200947A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103165105A (en) * | 2011-12-15 | 2013-06-19 | 希姆通信息技术(上海)有限公司 | Mobile communication terminal and graphic display method |
| CN114339255A (en) * | 2020-09-30 | 2022-04-12 | 瑞昱半导体股份有限公司 | Method for storing image frame in memory and related image processor |
| CN116166190A (en) * | 2022-12-30 | 2023-05-26 | 苏州盛科通信股份有限公司 | Data storage method, device, storage medium and electronic equipment |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1144361A (en) * | 1994-10-27 | 1997-03-05 | 佳能株式会社 | Signal processor |
| US20030016748A1 (en) * | 2001-07-20 | 2003-01-23 | Divio, Inc. | Memory control apparatus and efficient search pattern for block-matching motion estimation |
| US20080126812A1 (en) * | 2005-01-10 | 2008-05-29 | Sherjil Ahmed | Integrated Architecture for the Unified Processing of Visual Media |
-
2010
- 2010-03-24 CN CN2010101432288A patent/CN102200947A/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1144361A (en) * | 1994-10-27 | 1997-03-05 | 佳能株式会社 | Signal processor |
| US20030016748A1 (en) * | 2001-07-20 | 2003-01-23 | Divio, Inc. | Memory control apparatus and efficient search pattern for block-matching motion estimation |
| US20080126812A1 (en) * | 2005-01-10 | 2008-05-29 | Sherjil Ahmed | Integrated Architecture for the Unified Processing of Visual Media |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103165105A (en) * | 2011-12-15 | 2013-06-19 | 希姆通信息技术(上海)有限公司 | Mobile communication terminal and graphic display method |
| CN114339255A (en) * | 2020-09-30 | 2022-04-12 | 瑞昱半导体股份有限公司 | Method for storing image frame in memory and related image processor |
| CN114339255B (en) * | 2020-09-30 | 2025-01-17 | 瑞昱半导体股份有限公司 | Method for storing image frame in memory and related image processor |
| CN116166190A (en) * | 2022-12-30 | 2023-05-26 | 苏州盛科通信股份有限公司 | Data storage method, device, storage medium and electronic equipment |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107704923B (en) | Convolutional neural network operation circuit | |
| CN108733344A (en) | Data read-write method, device and circle queue | |
| JP2011258207A (en) | Processing system, data structure, and data processing method for simultaneous retrieval of multi-dimensional data without data conflict | |
| US10070134B2 (en) | Analytics assisted encoding | |
| US20040250011A1 (en) | Storage device capable of increasing transmission speed | |
| CN101751993A (en) | Apparatus and method for cache control | |
| US20120147023A1 (en) | Caching apparatus and method for video motion estimation and compensation | |
| CN102200947A (en) | Memory management method and related memory device | |
| TWI341976B (en) | Systems and methods for performing a bank swizzle operation to reduce bank collisions | |
| CN109508782B (en) | Neural network deep learning-based acceleration circuit and method | |
| WO2023193405A1 (en) | Video data reading and writing method and related apparatus | |
| US8732384B1 (en) | Method and apparatus for memory access | |
| US8473679B2 (en) | System, data structure, and method for collapsing multi-dimensional data | |
| US20110194606A1 (en) | Memory management method and related memory apparatus | |
| US20180107616A1 (en) | Method and device for storing an image into a memory | |
| CN104581357A (en) | Cache logic structure and method suitable for image extraction in FPGA | |
| CN103927269B (en) | A reconfigurable configuration information cache system and compression method based on block matching | |
| CN108073548A (en) | Convolution algorithm device and convolution algorithm method | |
| WO2024114505A1 (en) | Universal and configurable system and method for image filtering computation and multi-row output | |
| US20140040570A1 (en) | On Die/Off Die Memory Management | |
| CN100345436C (en) | Image processing apparatus | |
| CN103034455A (en) | Method and system for managing data information buffer based on pre-decoding and analyzing | |
| CN107168660B (en) | Image processing cache system and method | |
| US20160063349A1 (en) | Apparatus and Method for Detecting a Feature in an Image | |
| CN113596486A (en) | Data information storage method, reading device, terminal and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110928 |