KR101355892B1 - Image data processing method for real-time concurrent single memory input/output access - Google Patents

Image data processing method for real-time concurrent single memory input/output access Download PDF

Info

Publication number
KR101355892B1
KR101355892B1 KR1020130004235A KR20130004235A KR101355892B1 KR 101355892 B1 KR101355892 B1 KR 101355892B1 KR 1020130004235 A KR1020130004235 A KR 1020130004235A KR 20130004235 A KR20130004235 A KR 20130004235A KR 101355892 B1 KR101355892 B1 KR 101355892B1
Authority
KR
South Korea
Prior art keywords
order
sequence
output
input
address
Prior art date
Application number
KR1020130004235A
Other languages
Korean (ko)
Inventor
류광기
이건중
Original Assignee
한밭대학교 산학협력단
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 한밭대학교 산학협력단 filed Critical 한밭대학교 산학협력단
Priority to KR1020130004235A priority Critical patent/KR101355892B1/en
Application granted granted Critical
Publication of KR101355892B1 publication Critical patent/KR101355892B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The present invention relates to an image data processing method which is applied to an image compression codex for a real-time image signal compression. According to the present invention, the image data processing method for simultaneously inputting and outputting a single memory in real time enables a simultaneous input/output process in real time by using the single memory even in case the order of input and output is complex or irregular because the present invention solves all problems of a method using an existing single memory which is difficult to be applied in case the order of input and output is complex or irregular even though an existing buffering mode and a memory use which have disadvantages of requiring a memory space twice than data quantity to be processed are minimized. [Reference numerals] (S151) Store the fixed change pattern of an order in which each physical address approaches as an order column table; (S152) Assign a block counter which increases whenever a block is processed to each change pattern; (S153) Store as an offset table by setting the unique offset for a process order which belongs to each change pattern; (S154) Produce an actual physical address by assembling the contents of each order column table, block counter, and offset table

Description

실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법{Image data processing method for real-time concurrent single memory input/output access} Image data processing method for real-time concurrent single memory input / output access}

본 발명은 실시간 영상신호 압축을 위한 영상압축 코덱에 적용되는 데이터 처리방법에 관한 것으로, 더 상세하게는, 단일 메모리를 사용하는 경우에 불규칙한 임의의 입출력 순서에 대하여도 효율적인 실시간 메모리 입출력이 가능하도록 구성되는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법에 관한 것이다.
The present invention relates to a data processing method applied to an image compression codec for real-time video signal compression, and more particularly, to enable efficient real-time memory input / output for irregular random input / output order when using a single memory. The present invention relates to an image data processing method for real-time single memory simultaneous input / output.

일반적으로, 영상신호는, 일반적인 신호 처리와는 달리 처리해야 할 데이터의 양이 방대하며, 또한, 동영상의 경우는, 실시간 처리가 중요하다는 특징을 가지고 있다.
In general, unlike a general signal processing, a video signal has a large amount of data to be processed, and in the case of a moving picture, real-time processing is important.

아울러, 영상신호 처리는, 공간적 신호를 처리하는 분야로서, 화질 개선이나 압축, 영상인식 등의 처리를 위해, 많은 양의 공간적 신호를 효율적으로 처리하기 위하여 일정 크기의 블록 단위로 신호를 처리하며, 그 대표적인 예로서 영상압축 코덱이 있다.
In addition, video signal processing is a field for processing spatial signals, and processes signals in blocks of a certain size in order to efficiently process a large amount of spatial signals for processing such as image quality improvement, compression, and image recognition. A representative example thereof is an image compression codec.

또한, 블록 단위로 신호처리를 수행할 경우, 블록 단위로 나누어진 데이터는 필요에 따라 서로 다른 기능을 하는 연속적인 신호처리 경로를 거치게 되며, 이때, 블록 내의 데이터는, 일반적으로, 좌에서 우로, 그리고 위에서 아래로 진행되는 순서를 따른다.
In addition, when signal processing is performed in units of blocks, the data divided in units of blocks go through consecutive signal processing paths having different functions as necessary. In this case, the data in the blocks are generally from left to right, Then follow the order from top to bottom.

그러나 영상압축 코덱에 있어서는, 예를 들면, JPEG, MPEG의 지그재그 스캔(Zigzag Scan)이나 HEVC의 대각선 스캔(Diagonal Scan)과 같이, 처리순서를 변경해야 할 경우가 발생하며, 특히, 실시간 처리를 위해서는, 입력 데이터를 처리하고자 하는 블록 크기의 메모리에 저장하는 동시에, 그 이전에 저장한 데이터를 새로운 처리순서로 출력시켜야 한다.
However, in the video compression codec, the processing order may need to be changed, for example, a zigzag scan of JPEG and MPEG or a diagonal scan of HEVC. In addition, the input data must be stored in the memory of the block size to be processed, and the previously stored data must be output in a new processing order.

아울러, 영상압축은, 대량의 데이터를 일정한 속도를 유지하면서 실시간으로 처리하는 것이 요구되며, 또한, 저전력 동작을 위해 가능한 한 낮은 주파수에서 동작할 수 있는 하드웨어로 구현될 것이 요구된다.
In addition, image compression is required to process a large amount of data in real time while maintaining a constant speed, and also to be implemented in hardware capable of operating at the lowest possible frequency for low power operation.

더 상세하게는, 데이터의 처리순서를 변환하는 경우, 일반적으로, 처리하고자 하는 블록의 데이터를 동일한 블록 크기의 메모리에 저장한 후 다시 읽어내는 과정을 거친다.
More specifically, when converting the data processing order, the data of the block to be processed are generally stored in a memory having the same block size and then read again.

이때, 이미 저장된 데이터를 다시 읽어내기 위한 처리속도를 일정하게 유지하기 위해 연속하여 입력되는 데이터를 대기시킨다면 결과적으로 전체적인 처리속도를 저하시키게 된다.
At this time, if the data which is input continuously is waited to keep the processing speed for rereading already stored data constant, the overall processing speed is lowered.

따라서 종래에는, 처리하고자 하는 블록의 크기와 같은 크기의 메모리 2개를 사용하여 서로 순서를 바꿔가며 입출력 동작을 수행하는 이중 버퍼링 방식으로 데이터의 순서를 바꾸는 방법이 널리 사용되어 왔다.
Therefore, in the related art, a method of changing the order of data by a double buffering method in which input / output operations are performed by using two memories having the same size as the size of a block to be processed has been widely used.

즉, 도 1을 참조하면, 도 1은 입출력 데이터의 처리 순서를 바꾸기 위해 일반적으로 쓰이는 종래기술의 예로서, 이중 버퍼링을 이용한 입출력 순서변환방법의 개념을 개략적으로 나타내는 도면이다.
That is, referring to FIG. 1, FIG. 1 is an example of a conventional technique generally used to change the processing order of input / output data, and schematically illustrates the concept of an input / output order conversion method using double buffering.

도 1에 나타낸 바와 같이, 이중 버퍼링 방식은, 처리하고자 하는 블록 크기의 메모리 두 개를 이용하여 각각의 메모리가 입출력 동작을 블록 단위로 교대함으로써 실시간 데이터 처리를 수행하며, 범용으로 널리 사용되는 방법이나, 처리하고자 하는 데이터의 양보다 두 배의 메모리 공간이 필요하다는 단점이 있다.
As shown in FIG. 1, the double buffering method performs real-time data processing by alternately performing I / O operations in units of blocks by using two blocks of memory of a block size to be processed. The disadvantage is that twice as much memory space is required than the amount of data to be processed.

이에 대하여, 도 2를 참조하면, 도 2는 입출력 데이터의 처리 순서를 바꾸기 위해 일반적으로 쓰이는 종래기술의 다른 예로서, 단일 버퍼링을 이용한 입출력 순서변환 방법의 개념을 개략적으로 나타내는 도면이다.
On the other hand, referring to FIG. 2, FIG. 2 is a diagram schematically illustrating the concept of an input / output order conversion method using single buffering as another example of the related art which is generally used to change the processing order of input / output data.

즉, 도 2에 나타낸 바와 같이, 단일 버퍼링을 이용한 방법은, 데이터를 출력하는 동시에 같은 주소에 데이터를 입력함으로써, 처리하는 블록 크기만큼의 메모리만을 사용하는 방법이다.
That is, as shown in Fig. 2, the method using single buffering is a method of using only the memory of the block size to be processed by outputting data and inputting data at the same address.

따라서 도 2에 나타낸 바와 같은 단일 버퍼링 방식을 이용하면 메모리의 사용을 감소할 수 있으나, 단일 버퍼링 방식은, 예를 들면, 2D DCT에서의 전치버퍼의 경우와 같이, 입출력 순서가 단순하고 규칙성을 가지는 경우에 사용할 수 있는 방법으로, 입출력 순서가 복잡하거나 불규칙할 경우는 메모리 접근주소가 매번 불규칙적으로 변화하기 때문에 단일 메모리를 이용한 방식을 적용하기가 어렵다는 단점이 있다.
Therefore, the use of a single buffering scheme as shown in FIG. 2 can reduce the use of memory. However, the single buffering scheme has a simple input / output order and regularity as in the case of a pre-buffer in 2D DCT. It is a method that can be used in the case of having a simple input / output order, when the input / output order is complicated or irregular, it is difficult to apply a method using a single memory because the memory access address changes irregularly every time.

따라서 상기한 바와 같은 종래의 이중 버퍼링 및 단일 버퍼링의 문제점을 모두 해결하기 위하여는, 입출력 순서가 복잡하거나 불규칙할 경우에도 최소한의 메모리, 즉, 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 하는 새로운 영상데이터 처리방법을 제공하는 것이 바람직하나, 아직까지 그러한 요구를 모두 만족시키는 장치나 방법은 제공되지 못하고 있는 실정이다.
Accordingly, in order to solve both the problems of the conventional double buffering and single buffering as described above, even when the input / output order is complicated or irregular, it is possible to perform simultaneous input / output processing in real time using a minimum memory, that is, a single memory. It is desirable to provide a new image data processing method, but there is no device or method that satisfies all such requirements.

본 발명은 상기한 바와 같은 종래기술의 문제점을 해결하고자 하는 것으로, 따라서 본 발명의 목적은, 처리하고자 하는 데이터의 양보다 두 배의 메모리 공간이 필요한 단점이 있었던 종래의 이중 버퍼링 방식 및 메모리의 사용량은 최소화되나 입출력 순서가 복잡하거나 불규칙할 경우는 적용이 어려웠던 종래의 단일 메모리를 이용한 방식의 문제점을 모두 해결하여, 입출력 순서가 복잡하거나 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 구성되는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 제공하고자 하는 것이다.
The present invention is to solve the problems of the prior art as described above, the object of the present invention, therefore, the conventional double buffering method and the amount of use of the memory had the disadvantage of requiring twice as much memory space than the amount of data to be processed Is minimized, but if the I / O order is complicated or irregular, it solves all the problems of the conventional method using a single memory, and even if the I / O order is complicated or irregular, simultaneous I / O processing is possible using a single memory. An object of the present invention is to provide an image data processing method for real-time single memory simultaneous input / output.

또한, 본 발명에 따르면, 상기한 바와 같은 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 이용하여 입출력 순서가 복잡하거나 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 구성되는 영상압축 코덱 및 영상압축 장치를 제공하고자 하는 것이다.
In addition, according to the present invention, even when the input and output order is complicated or irregular by using the image data processing method for real-time single memory simultaneous input and output as described above, an image configured to enable simultaneous input and output processing in real time using a single memory It is to provide a compression codec and an image compression device.

상기한 바와 같은 목적을 달성하기 위해, 본 발명에 따르면, 데이터의 처리순서를 변환하기 위해 입력 데이터를 일정 크기의 블록 단위로 나누어 상기 블록과 동일한 크기의 메모리에 저장하는 동시에 그 이전에 저장한 데이터를 새로운 처리순서로 출력시키는 단일 메모리를 이용한 데이터 입출력 순서변환 처리에서 입출력 순서가 불규칙할 경우에도 실시간으로 동시 입출력 처리가 가능하도록 물리적 주소의 변환을 수행하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법에 있어서, 입력순서와 출력순서는 고정된 대응관계를 유지하므로 n번째 처리된 물리적 주소는 다음 차례에는 항상 고정된 m번째 순서에 처리되며, 1회의 블록처리에서 모든 주소가 빠짐없이 한 번씩 접근되므로, 임의의 물리적 주소가 가질 수 있는 주소는 전체 데이터의 수를 최대값으로 하는 유한하고 고정된 집합으로 제한된다는 규칙에 근거하여, 고정된 특정 물리적 주소가 접근되는 순서 변화를 블록 내 전체 데이터의 수를 최대값으로 하는 고정되고 유한한 순서열로 표현함으로써 각 물리적 주소가 접근되는 순서의 고정된 변화패턴을 순서열 테이블로서 저장하는 순서열 테이블 구성단계; 특정 순서에 처리되는 물리적 순서는 블록이 처리될 때마다 갱신되며 고정된 패턴으로 변화한다는 규칙에 따라, 블록이 한번 처리될 때마다 증가하는 블록카운터를 각각의 상기 변화패턴마다 할당하는 블록카운터 할당단계; 동일 패턴에 속한 처리순서는 시작하는 순서만 다를 뿐 같은 순서열을 보이며 변화한다는 규칙에 따라, 각각의 상기 변화패턴에 속한 처리순서에 고유한 오프셋(offset)을 설정하여 오프셋 테이블로서 저장하는 오프셋 테이블 구성단계; 및 각각의 상기 순서열 테이블과 상기 블록카운터 및 상기 오프셋 테이블의 내용을 조합하여 실제 물리적 주소를 발생시키는 주소발생단계를 포함하여 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법이 제공된다.
In order to achieve the above object, according to the present invention, in order to convert the processing order of the data, the input data is divided into blocks of a predetermined size and stored in a memory having the same size as the block, and the previously stored data. Image data processing method for real-time single-memory simultaneous I / O that converts physical addresses to enable simultaneous I / O processing in real time even if the I / O sequence is irregular in single-memory data conversion process using single memory to output the data in a new processing order Since the input order and output order maintain a fixed correspondence, the nth processed physical address is always processed in the fixed mth order next time, and all addresses are accessed once in one block processing. , Any physical address that can have Based on the rule that the number of data is limited to a finite, fixed set with a maximum value, the ordered change in which a specific fixed physical address is accessed is a fixed, finite sequence with the maximum number of total data in the block. An order sequence table constructing step of storing, as an order sequence table, a fixed change pattern of an order in which each physical address is accessed; A block counter allocation step of allocating a block counter for each of the change patterns which is incremented each time the block is processed according to the rule that the physical order processed in a specific order is updated each time the block is processed and changes to a fixed pattern. ; According to the rule that the processing sequence belonging to the same pattern changes only with the starting sequence being different, the offset table which sets an offset unique to the processing sequence belonging to each of the above changing patterns and stores it as an offset table. Construction step; And an address generation step of generating an actual physical address by combining the contents of each of the sequence table, the block counter, and the offset table. Is provided.

여기서, 상기 블록카운터 할당단계는, 각각의 순서열을 동일한 횟수 내에 반복성을 가지는 것끼리 분류하여 동일한 블록카운터를 공유하도록 설정하는 것을 특징으로 한다.
The block counter allocating step may be configured to classify each sequence to have the same repeatability within the same number of times and to share the same block counter.

또한, 상기 블록카운터 할당단계는, 동일한 블록카운터 값을 가지는 순서열들에 고유의 오프셋 값을 더하여 최종적인 블록카운터 값을 할당하도록 구성되는 것을 특징으로 한다.
The block counter allocating step may be configured to allocate a final block counter value by adding a unique offset value to sequences having the same block counter value.

아울러, 상기 주소발생단계는, 각각의 주소를 그룹화하고 각 그룹 내의 주소에 대하여 기본 순서열에 오프셋을 할당하는 것에 의해 주소를 발생하도록 구성되는 것을 특징으로 한다.
In addition, the address generation step may be configured to generate an address by grouping each address and assigning an offset to a basic sequence for the addresses in each group.

더욱이, 상기 주소발생단계는, 그룹화된 주소의 기본 순서열은 고유한 그룹의 크기를 최대값으로 하는 블록카운터에 의해 특정 값이 지정되도록 구성되는 것을 특징으로 한다.
Further, the address generation step is characterized in that the basic sequence of the grouped address is configured such that a specific value is designated by a block counter that makes the size of the unique group the maximum value.

또한, 상기 주소발생단계는, 최종 블록카운터 값을 상기 순서열 테이블의 인덱스로 사용하여 최종 주소값을 결정하도록 구성되는 것을 특징으로 한다.
The address generating step may be configured to determine a final address value by using a final block counter value as an index of the sequence table.

아울러, 본 발명에 따르면, 상기에 기재된 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 컴퓨터에 실행시키도록 구성된 프로그램이 기록된 컴퓨터에서 판독 가능한 기록매체가 제공된다.
In addition, according to the present invention, there is provided a computer-readable recording medium having recorded thereon a program configured to cause a computer to execute the image data processing method for real-time single memory simultaneous input / output described above.

더욱이, 본 발명에 따르면, 상기에 기재된 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 이용하여, 입출력 순서가 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 물리적 주소의 변환을 수행하도록 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상처리장치가 제공된다.
Furthermore, according to the present invention, by using the image data processing method for real-time single memory simultaneous input / output described above, even if the input / output order is irregular, the conversion of physical addresses is performed so that simultaneous input / output processing can be performed in real time using a single memory. Provided is an image processing apparatus for real-time single memory simultaneous input / output, which is configured to perform.

상기한 바와 같이, 본 발명에 따르면, 입출력 순서가 복잡하거나 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법이 제공됨으로써, 처리하고자 하는 데이터의 양보다 두 배의 메모리 공간이 필요한 단점이 있었던 종래의 이중 버퍼링 방식 및 메모리의 사용량은 최소화되나 입출력 순서가 복잡하거나 불규칙할 경우는 적용이 어려웠던 종래의 단일 메모리를 이용한 방식의 문제점을 모두 해결할 수 있다.
As described above, according to the present invention, there is provided a video data processing method for real-time single-memory simultaneous input / output, which enables simultaneous input / output processing using a single memory even when the input / output order is complicated or irregular. All of the problems of the conventional double buffering method, which required twice as much memory space as the amount of data to be used, and the conventional single memory method, which were difficult to apply when the input / output order was complicated or irregular, while the memory usage was minimized. I can solve it.

또한, 본 발명에 따르면, 상기한 바와 같이 입출력 순서가 복잡하거나 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 구성됨으로써, 실시간 영상압축 코덱에서 작은 면적으로 구현 가능한 동시에 블록의 크키가 커질수록 면적 감소 효과는 커지는 효율적인 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 제공할 수 있다.
In addition, according to the present invention, even when the input and output sequence is complicated or irregular as described above, it is configured to perform simultaneous input and output processing in real time using a single memory, it is possible to implement a small area in the real-time image compression codec and at the same time block size As the size increases, the area reduction effect may provide an image data processing method for efficient real-time single memory simultaneous input / output.

도 1은 입출력 데이터의 처리 순서를 바꾸기 위해 일반적으로 쓰이는 종래기술의 예로서, 이중 버퍼링을 이용한 입출력 순서변환방법의 개념을 개략적으로 나타내는 도면이다.
도 2는 입출력 데이터의 처리 순서를 바꾸기 위해 일반적으로 쓰이는 종래기술의 다른 예로서, 단일 버퍼링을 이용한 입출력 순서변환 방법의 개념을 개략적으로 나타내는 도면이다.
도 3은 영상압축에서 공간적 영역의 데이터를 주파수 영역으로 변환하기 위한 이차원 변환과정의 데이터 전치방법의 개념을 개략적으로 나타내는 도면이다.
도 4는 영상압축에서 엔트로피 코딩을 위해 중요도 순으로 데이터를 재배열 과정에 사용되는 8×8 지그재그 스캔의 입출력 순서변환의 개념을 개략적으로 나타내는 도면이다.
도 5는 8×8 지그재그 스캔에서 단일 메모리를 사용하는 방법을 적용시켰을 때의 기본 입출력 순서와 주소열 변화를 표로 나타내는 도면이다.
도 6은 불규칙한 출력 순서를 가지는 차세대 영상압축 코덱에 사용되는 4×4 대각선 스캔의 입출력 순서를 표로 나타낸 도면이다.
도 7은 4×4 블록의 대각선 스캔에서 단일 메모리를 사용한 방법을 적용할 경우의 순서열이 갱신되는 것을 표로 나타낸 도면이다.
도 8은 기본 순서열과 종속되는 순서열과의 오프셋 관계를 표로 나타내는 도면이다.
도 9는 각 순서열이 가지는 반복성과 연관성을 이용하여 구현된 본 발명의 영상데이터 처리방법에 따른 주소 변환기의 전체적인 구성을 개략적으로 나타내는 도면이다.
도 10은 입출력 순서열이 서로 다른 다양한 스캔 블록을 본 발명에 따른 방법과 종래의 이중 버퍼링을 이용한 방법으로 각각 구현하여 비교한 결과를 표로 나타내는 도면이다.
도 11은 8×8 지그재그 스캔에서 동일 순서열에 속하는 처리순서의 실제 주소변화 패턴을 표로 나타내는 도면이다.
도 12는 8×8 지그재그 스캔에서 각 물리적 주소가 접근되는 처리순서에 따른 물리적 주소의 고정된 변화패턴을 나타내는 도면이다.
도 13은 각종 스캔 방법에서 반복되는 주소집합의 크기와 최소공배수를 표로 나타낸 도면이다.
도 14는 출력 순서가 바뀌는 것을 고려하여 작성한 지그재그 8×8 스캔 블록에 대한 테스트 벡터의 예를 나타내는 도면이다.
도 15는 본 발명에 따른 실시간 단일 메모리 동시 입출력을 위한 영상 데이터 처리방법의 전체적인 구성을 개략적으로 나타내는 플로차트이다.
FIG. 1 is a diagram schematically illustrating a concept of an input / output order conversion method using double buffering as an example of a conventional technique generally used to change a processing order of input / output data.
FIG. 2 is a diagram schematically illustrating the concept of an input / output order conversion method using single buffering as another example of the related art generally used to change the processing order of input / output data.
FIG. 3 is a diagram schematically illustrating a concept of a data transposition method of a two-dimensional transformation process for converting data in a spatial domain into a frequency domain in image compression.
FIG. 4 is a diagram schematically illustrating the concept of input / output ordering of an 8 × 8 zigzag scan used for rearranging data in order of importance for entropy coding in image compression.
FIG. 5 is a table showing basic input / output order and address string changes when a method of using a single memory is applied in an 8 × 8 zigzag scan.
FIG. 6 is a table showing an input / output sequence of a 4 × 4 diagonal scan used in a next generation image compression codec having an irregular output order.
FIG. 7 is a table showing that a sequence sequence is updated when a method using a single memory is applied in a diagonal scan of 4x4 blocks.
8 is a table illustrating an offset relationship between a basic order sequence and a subordinate order sequence.
FIG. 9 is a diagram schematically showing the overall configuration of an address translator according to the image data processing method of the present invention implemented using repeatability and association of each sequence.
FIG. 10 is a table illustrating results of comparing various scan blocks having different input / output sequences by implementing the method according to the present invention and the conventional double buffering method.
FIG. 11 is a table showing actual address change patterns of processing sequences belonging to the same sequence in an 8 × 8 zigzag scan.
FIG. 12 is a view illustrating a fixed pattern of change of a physical address according to a processing sequence in which each physical address is accessed in an 8 × 8 zigzag scan.
FIG. 13 is a table showing sizes and minimum common multiples of address sets repeated in various scanning methods.
14 is a diagram illustrating an example of a test vector for a zigzag 8x8 scan block created in consideration of the change in the output order.
15 is a flowchart schematically showing the overall configuration of a video data processing method for real-time single memory simultaneous input / output according to the present invention.

이하, 첨부된 도면을 참조하여, 본 발명에 따른 실시간 단일 메모리 동시 입출력을 위한 영상 데이터 처리방법의 구체적인 실시예에 대하여 설명한다.
Hereinafter, exemplary embodiments of a video data processing method for real-time single memory simultaneous input / output according to the present invention will be described with reference to the accompanying drawings.

여기서, 이하에 설명하는 내용은 본 발명을 실시하기 위한 하나의 실시예일 뿐이며, 본 발명은 이하에 설명하는 실시예의 내용으로만 한정되는 것은 아니라는 사실에 유념해야 한다.
Hereinafter, it is to be noted that the following description is only an embodiment for carrying out the present invention, and the present invention is not limited to the contents of the embodiments described below.

즉, 본 발명은, 후술하는 바와 같이, 처리하고자 하는 데이터의 양보다 두 배의 메모리 공간이 필요한 단점이 있었던 종래의 이중 버퍼링 방식 및 메모리의 사용량은 최소화되나 입출력 순서가 복잡하거나 불규칙할 경우는 적용이 어려웠던 종래의 단일 메모리를 이용한 방식의 문제점을 모두 해결하여, 입출력 순서가 복잡하거나 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법에 관한 것이다.
That is, the present invention, as will be described later, the conventional double buffering method, which had the disadvantage of requiring twice as much memory space as the amount of data to be processed and the use of the memory is minimized, but is applied when the input and output order is complicated or irregular Solving all the problems of the conventional single-memory method, the image data processing method for real-time single-memory simultaneous input / output to enable simultaneous input / output processing using a single memory even when the input / output order is complicated or irregular. It is about.

또한, 본 발명은, 후술하는 바와 같이, 실시간 영상압축 코덱에서 작은 면적으로 구현 가능한 동시에 블록의 크키가 커질수록 면적 감소 효과는 커지는 효율적인 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법에 관한 것이다.
In addition, the present invention relates to an image data processing method for efficient real-time single-memory simultaneous input / output, which can be realized in a small area in a real-time image compression codec and at the same time as the block size increases, the area reduction effect increases.

계속해서, 첨부된 도면을 참조하여, 본 발명에 따른 실시간 단일 메모리 동시 입출력을 이용한 영상 데이터 처리방법의 구체적인 내용에 대하여 설명한다.
Subsequently, with reference to the accompanying drawings, a detailed description of the image data processing method using real-time single memory simultaneous input and output according to the present invention will be described.

먼저, 영상압축 과정에서 데이터의 입출력 변환이 발생하는 경우의 예에 대하여 설명하면, 영상압축에서 공간적 영역의 데이터를 주파수 영역으로 바꿔 주는 이차원 변환과정에 사용되는 데이터 전치과정과, 엔트로피 코딩을 위해 중요도에 따른 순서로 데이터를 재배열하는 스캔 과정이 있다.
First, an example of the case where data input / output conversion occurs in the image compression process will be described. The data preprocessing process used in the two-dimensional transformation process of converting the data in the spatial domain into the frequency domain in image compression, and the importance for entropy coding There is a scanning process to rearrange the data in the order of.

더 상세하게는, 도 3을 참조하면, 도 3은 영상압축에서 공간적 영역의 데이터를 주파수 영역으로 변환하기 위한 이차원 변환과정의 데이터 전치방법의 개념을 개략적으로 나타내는 도면이다.
More specifically, referring to FIG. 3, FIG. 3 schematically illustrates the concept of a data transposition method of a two-dimensional transformation process for converting data in a spatial domain into a frequency domain in image compression.

즉, 도 3에 나타낸 바와 같이, 이차원 변환과정의 데이터 전치과정은, 데이터 블록의 가로와 세로 방향을 바꿔서 순서를 재배열하며, 재배열 전후의 순서가 규칙적이고 간단하기 때문에 단순한 주소 비트의 재배열만으로도 구현이 가능하다는 장점이 있다.
That is, as shown in FIG. 3, the data preprocessing process of the two-dimensional transformation process rearranges the order by changing the horizontal and vertical directions of the data block, and rearranges the simple address bits because the order before and after the rearrangement is regular and simple. It can be implemented by itself.

또한, 영상압축시 변환과정과 양자화를 거친 영상 데이터는 엔트로피 코딩을 거치기에 앞서 중요도가 높은 순으로 재배열되는데, 이때 사용되는 방법의 대표적인 예로서, 예를 들면, 지그재그 스캔이 널리 사용된다.
In addition, image data that has undergone transformation and quantization during image compression are rearranged in order of importance prior to entropy coding. For example, a zigzag scan is widely used.

즉, 도 4 및 도 5를 참조하면, 먼저, 도 4는 영상압축에서 엔트로피 코딩을 위해 중요도 순으로 데이터를 재배열 과정에 사용되는 8×8 지그재그 스캔의 입출력 순서변환의 개념을 개략적으로 나타내는 도면이다.
That is, referring to FIGS. 4 and 5, first, FIG. 4 schematically illustrates the concept of input / output ordering of an 8 × 8 zigzag scan used for rearranging data in order of importance for entropy coding in image compression. to be.

아울러, 도 5를 참조하면, 도 5는 8×8 지그재그 스캔에서 단일 메모리를 사용하는 방법을 적용시켰을 때의 기본 입출력 순서와 주소열 변화를 표로 나타내는 도면이다.
In addition, referring to FIG. 5, FIG. 5 is a table illustrating basic input / output order and address string changes when a method of using a single memory is applied in an 8 × 8 zigzag scan.

더 상세하게는, 도 4에 나타낸 바와 같이, 지그재그 스캔에 의해 변환을 거친 데이터는 공간적으로 좌측 상단 방향으로 눈에 민감한 저주파 데이터가 모이게 되며, 여기서, 도 5에 나타낸 바와 같이, 단일 메모리의 적용시 지그재그 스캔에서는 불규칙한 주소열 변화 패턴이 나타남을 알 수 있다.
More specifically, as shown in FIG. 4, the data converted by the zigzag scan collects low frequency data sensitive to the eye in the upper left direction spatially, and as shown in FIG. 5, when applying a single memory, as shown in FIG. 5. In the zigzag scan, it can be seen that an irregular address string change pattern appears.

또한, 영상압축 표준에서 자주 사용되는 8x8 이차원 DCT는, 먼저 1차원 변환을 수행한 후 그 출력의 가로와 세로를 바꾸어 다시 1차원 DCT를 수행하며, 이때, 입출력 데이터의 순서를 바꾸기 위해 전치버퍼가 필요한데, 이 경우는 입출력 순서가 단순하여 단일 메모리 방식으로 간단히 동시 입출력을 위한 구조를 구현할 수 있다.
In addition, the 8x8 two-dimensional DCT, which is frequently used in the image compression standard, first performs a one-dimensional transformation, and then performs a one-dimensional DCT again by changing the width and length of the output, and the pre-buffer is used to change the order of the input / output data. In this case, since the input / output order is simple, a structure for simultaneous input / output can be simply implemented in a single memory method.

즉, 도 6을 참조하면, 도 6은 불규칙한 출력 순서를 가지는 차세대 영상압축 코덱에 사용되는 4×4 대각선 스캔(Diagonal Scan)의 입출력 순서를 표로 나타낸 도면이다.
That is, referring to FIG. 6, FIG. 6 is a table illustrating input and output procedures of a 4 × 4 diagonal scan used in a next generation image compression codec having an irregular output order.

도 6에 나타낸 바와 같이, 이 경우도 마찬가지로, 도 2에 나타낸 바와 같은 단일 메모리를 이용한 동시 입출력 방법을 사용하면, 입출력 순서열이 매번 불규칙하게 변화하기 때문에 구현하기가 어렵다.
As shown in Fig. 6, in this case as well, when the simultaneous input / output method using a single memory as shown in Fig. 2 is used, it is difficult to implement because the input / output sequence is changed irregularly every time.

여기서, 이러한 문제점을 해결하기 위해, 종래, 예를 들면, "'간접 주소접근 방법을 이용한 효율적인 Zigzag Scanning 하드웨어 설계', 이건중, et. al., 대한전자공학회 대전충남지부학술대회, 대전, 2011."에서 본 발명자 등에 의해 제시된 바와 같이, 매번 갱신되는 주소열을 별도의 주소저장용 메모리에 저장하는 방법이 제시된 바 있다.
Here, in order to solve such a problem, conventionally, for example, "'Efficient Zigzag Scanning hardware design using the indirect address approach', Kun-Joong Lee, et. Al., Daejeon Chungnam Branch Conference, Daejeon, 2011 As presented by the present inventors, etc., a method of storing the address string updated every time in a separate address storage memory has been proposed.

더 상세하게는, 상기한 방법은, 매번 바뀌는 물리적 주소를 별도의 메모리에 저장한 후, 다음 순서열은 실제 물리적 주소가 아닌 주소를 저장한 메모리의 주소를 참조하여 결정한다.
More specifically, the above method stores the changed physical address every time in a separate memory, and then determines the next sequence by referring to the address of the memory storing the address, not the actual physical address.

따라서 상기한 바와 같은 구성됨으로써 임의의 불규칙한 순서열에도 대응할 수 있는 장점이 있으나, 처리해야 하는 블록의 크기가 커질수록 주소를 저장하는 공간의 크기도 커지게 되어 효용성이 떨어지는 단점이 있다.
Therefore, the configuration as described above has the advantage that it can cope with any irregular sequence, but the larger the size of the block to be processed, the larger the size of the space for storing the address has a disadvantage that the utility is inferior.

즉, 상기한 바와 같이, 입출력 순서가 규칙적이고 간단한 경우라면 입출력 순서가 반복적으로 이루어지므로, 처리하고자 하는 블록 크기의 메모리 한 개만으로 단일 메모리 방법을 이용하여 작은 면적의 구현이 가능하다.
That is, as described above, if the input / output order is regular and simple, the input / output order is repeatedly performed. Therefore, a small area can be implemented using a single memory method with only one memory having a block size to be processed.

그러나, 불규칙한 입출력 순서의 변환이 일어나는 경우는, 상기한 바와 같은 단일 메모리를 적용한 방법을 사용하면 블록의 데이터를 한번 처리할 때마다 접근해야 하는 주소열의 순서가 새로운 불규칙한 순서열로 바뀌기 때문에 적절한 주소발생기를 구현하기가 어렵다.
However, in the case of irregular I / O sequence conversion, the method of applying a single memory as described above changes the order of the address sequence to be accessed each time the data of the block is processed once, so that an appropriate address generator is used. It is difficult to implement.

그러나 본 발명자들은, 입출력 순서가 불규칙한 경우에도 새롭게 갱신되는 입출력 순서열 패턴의 유한성 및 반복성이 있음을 발견하였다.
However, the present inventors have found that there is finiteness and repeatability of newly updated input / output sequence patterns even when the input / output order is irregular.

계속해서, 도 7을 참조하여, 입출력 순서열과 접근주소의 규칙성에 대하여 설명한다.
Subsequently, the regularity of the input / output sequence and the access address will be described with reference to FIG. 7.

즉, 도 7을 참조하면, 도 7은 상기한 4×4 블록의 대각선 스캔에서 단일 메모리를 사용한 방법을 적용할 경우의 순서열이 갱신되는 것을 표로 나타낸 도면이다.
That is, referring to FIG. 7, FIG. 7 is a table showing that a sequence sequence is updated when the method using a single memory is applied in the diagonal scan of the 4 × 4 block.

도 7에 나타낸 바와 같이, 단일 메모리를 사용하는 방법을 적용할 경우, 매번 블록을 처리할 때마다 접근하는 주소가 불규칙하게 바뀌는 것을 알 수 있다.
As shown in FIG. 7, when the method using a single memory is applied, it can be seen that the address to be accessed is changed irregularly every time a block is processed.

그러나 여기서, 입출력 순서열과 접근주소는 다음과 같은 규칙성을 가진다.
However, I / O sequence and access address have the following regularity.

[규칙 1] [Rule 1]

입력순서와 출력순서는 고정된 대응관계를 유지한다.
The input order and output order maintain a fixed correspondence.

[규칙 2] [Rule 2]

1회의 블록처리에서 모든 주소는 한 번만 그러나 빠짐없이 접근한다.
In one block process, all addresses are accessed only once but without exception.

즉, [규칙 1]에 따르면, n번째 처리된 물리적 주소는 다음 차례에는 항상 고정된 m번째 순서에 처리가 된다.
That is, according to [Rule 1], the nth processed physical address is always processed in a fixed mth order next time.

또한, [규칙 2]에 따르면, 임의의 물리적 주소가 가질 수 있는 주소는 전체 데이터의 수를 최대값으로 하는 유한하고 고정된 집합으로 제한된다.
In addition, according to [Rule 2], an address that any physical address can have is limited to a finite and fixed set having the maximum number of total data.

더 상세하게는, 예를 들면, 도 7의 4번째 행의 초기값 3에서부터 처리되는 물리적 주소를 살펴보면, 3 - 8 - 6 - 12 - 7 - 9의 순서가 반복됨을 알 수 있다.
More specifically, for example, referring to the physical address processed from the initial value 3 of the fourth row of FIG. 7, it can be seen that the order of 3-8-6-12-7-9 is repeated.

마찬가지로, 집합에 속한 다른 숫자들도 같은 순서로 변화하고, 즉, 초기값 12의 경우 12 - 7 - 9 - 3 - 8 - 6의 순서로 변화한다.
Similarly, the other numbers in the set change in the same order, that is, in the order of 12-7-9-3-8-6 for the initial value 12.

따라서 이러한 규칙에 의해 각각의 데이터를 분석해 보면, 실제 접근하는 물리적 주소는 세 가지 기본 순서열을 바탕으로 변화하고, 나머지는 각 기본 순서열에 오프셋(offset)을 더한 관계를 가지고 있음을 알 수 있다.
Therefore, when analyzing each data according to these rules, it can be seen that the physical address that is actually accessed changes based on three basic sequences, and the rest has an offset added to each basic sequence.

즉, 도 8을 참조하면, 도 8은 상기한 바와 같이 하여 기본 순서열과 종속되는 순서열과의 오프셋(offset) 관계를 표로 나타낸 도면이다.
That is, referring to FIG. 8, FIG. 8 is a table showing an offset relationship between a basic order sequence and a dependent order sequence as described above.

따라서 상기한 바와 같은 내용으로부터, 각 순서마다 처리되는 물리적 주소가 서로 다른 크기의 집합을 이루고 순서가 반복되므로, 각 집합의 크기의 최소공배수를 구하면 전체 순서열이 최소 몇 번의 순환을 거치면 최초의 순서에 이르게 되는지 알 수 있다.
Therefore, from the above description, since the physical addresses processed in each order form a set of different sizes, and the order is repeated, when the least common multiple of the size of each set is obtained, the first order is obtained when the entire sequence undergoes at least several cycles. You can see if it leads to.

즉, 4×4 대각선 스캔(Diagonal Scan)의 경우, 각 집합의 크기는 1, 4, 6이고, 최소공배수는 12이므로, 12번의 순환을 거치면 처음의 순서열로 돌아오게 됨을 알 수 있다.
That is, in the case of a 4 × 4 diagonal scan, the size of each set is 1, 4, 6, and the least common multiple is 12. Therefore, it can be seen that the 12th cycle returns to the initial sequence.

아울러, 본 발명자들은, 상기한 바와 같은 내용에 근거하여, 불규칙한 입출력 순서를 가지는 경우에도 단일 메모리 방식을 적용 가능하도록 하는 주소발생기로서의 역할을 하는 주소변환기를 구현하였다.
In addition, the present inventors have implemented an address translator that serves as an address generator to enable a single memory system to be applied even in the case of an irregular input / output order.

계속해서, 도 9를 참조하여, 상기한 바와 같이 하여 구현된 본 발명에 따른 주소 변환기의 구체적인 구성에 대하여 설명한다.
Next, with reference to FIG. 9, the specific structure of the address translator which concerns on this invention implemented as mentioned above is demonstrated.

즉, 도 9를 참조하면, 도 9는 상기한 바와 같은 각 순서열이 가지는 반복성과 연관성을 이용하여 구현된 본 발명에 따른 주소변환기의 전체적인 구성을 개략적으로 나타내는 도면이다.
That is, referring to FIG. 9, FIG. 9 is a diagram schematically illustrating the overall configuration of the address translator according to the present invention implemented by using the repeatability and association of each order sequence as described above.

더 상세하게는, 도 9에 나타낸 바와 같이, 본 발명에 따른 주소 변환기는, 하나의 픽셀카운터 및 오프셋 테이블과, 복수의 블록 카운터 및 순서열 테이블을 포함하여 구성되어 있다.
More specifically, as shown in Fig. 9, the address translator according to the present invention comprises one pixel counter and an offset table, and a plurality of block counters and an order sequence table.

더 상세하게는, 각 순서열은 같은 횟수 내에 반복성을 보이는 것끼리 분류하여 동일한 블록카운터를 공유하도록 구성되고, 같은 블록카운터 값을 가지는 순서열들은 고유의 오프셋(offset) 값과 더하여 최종적인 자신의 블록카운터 값을 가지게 된다.
More specifically, each sequence is configured to share the same block counter by classifying repeatability within the same number of times, and sequence sequences having the same block counter value have their own offset values plus their final offset. It will have a block counter value.

또한, 최종 블록카운터 값은 자신에 맞는 순서열 테이블의 인덱스로 사용되어 최종 주소값을 결정하게 된다.
Also, the final block counter value is used as an index of a sequence table suitable for itself to determine the final address value.

다음으로, 도 10을 참조하여, 상기한 바와 같이 하여 구성된 본 발명에 따른 영상데이터 처리방법과 종래의 방식을 비교 실험한 결과에 대하여 설명한다.
Next, with reference to FIG. 10, the result of having compared and compared the image data processing method and the conventional method which concerns on this invention comprised as mentioned above is demonstrated.

즉 도 10을 참조하면, 도 10은 입출력 순서열이 서로 다른 다양한 스캔 블록을 본 발명에 따른 방법과 종래의 이중 버퍼링을 이용한 방법으로 각각 구현하여 비교한 결과를 표로 나타내는 도면이다.
That is, referring to FIG. 10, FIG. 10 is a table showing the results of comparing and implementing various scan blocks having different input / output sequences using the method according to the present invention and the conventional double buffering method.

여기서, 도 10에 나타낸 비교결과에 있어서, 비교 실험은 TSMC 0.18um CMOS 공정,166MHz를 이용하여 수행되었다.
Here, in the comparison result shown in FIG. 10, a comparison experiment was performed using a TSMC 0.18um CMOS process, 166MHz.

즉, 도 10에 나타낸 바와 같이, 본 발명에 따르면, 가장 큰 부분을 차지하는 메모리의 크기가 반으로 줄어들어 전체적으로 최소 40% 이상의 면적 감소효과가 있음을 알 수 있다.
That is, as shown in Figure 10, according to the present invention, it can be seen that the size of the memory occupying the largest portion is reduced by half, reducing the overall area by at least 40%.

따라서 도 10에 나타낸 결과로부터, 최근 새로 제안된 영상표준인 HEVC에서 볼 수 있듯 영상압축의 처리블록은 점점 더 커지고 있는 추세이나, 본 발명에 따르면, 처리 블록의 크기에 상관없이 적용될 수 있을 뿐만 아니라, 블록의 크기가 커질수록 실질적 면적 감소효과는 더 커지는 효율적인 방법임을 알 수 있다.
Therefore, from the results shown in FIG. 10, as shown in HEVC, a newly proposed image standard, the processing block of image compression is increasing in size, but according to the present invention, it can be applied regardless of the size of the processing block. The larger the block size, the more efficient the area reduction effect becomes.

계속해서, 상기한 바와 같은 대각선 스캔의 경우에 더하여, 지그재그 스캔의 경우에 대하여 설명한다.
Subsequently, in addition to the diagonal scan as described above, the zigzag scan case will be described.

상기한 바와 같이, 블록크기의 단일 메모리를 사용하는 입출력 데이터 순서변환은 입력순서와 출력순서가 고정된 대응관계를 유지하며, 1회의 블록처리에서 모든 주소는 한 번만 그리고 빠짐없이 접근된다는 특성이 있다.
As described above, the input / output data ordering using a single memory of block size maintains a fixed correspondence between the input order and the output order, and has a characteristic that all addresses are accessed only once and in all in one block processing. .

이러한 특성에 따라, n번째 처리된 물리적 주소는 다음 차례에는 항상 고정된 m번째 순서로 처리되고, 또한, 1회에 처리되는 데이터의 수는 블록 내의 전체 블록 내의 데이터의 수와 같으므로, 고정된 특정 물리적 주소가 접근되는 순서 변화를 표시하면 블록 내 전체 데이터의 수를 최대값으로 하는 고정되고 유한한 순서열로 표현된다.
According to this characteristic, the nth processed physical address is always processed in a fixed mth order next time, and since the number of data processed at one time is equal to the number of data in all blocks in the block, the fixed Indicating a change in the order in which a particular physical address is accessed is represented by a fixed, finite sequence that maximizes the total number of data in the block.

즉, 도 11 및 도 12를 참조하면, 도 11은 8×8 지그재그 스캔에서 동일 순서열에 속하는 처리순서의 실제 주소변화 패턴을 표로 나타내는 도면이다.
That is, referring to FIGS. 11 and 12, FIG. 11 is a table showing actual address change patterns of processing sequences belonging to the same sequence in an 8 × 8 zigzag scan.

또한, 도 12를 참조하면, 도 12는 8×8 지그재그 스캔에서 각 물리적 주소가 접근되는 처리순서에 따른 물리적 주소의 고정된 변화패턴을 나타내는 도면이다.
In addition, referring to FIG. 12, FIG. 12 is a view illustrating a fixed change pattern of physical addresses according to a processing sequence in which each physical address is accessed in an 8 × 8 zigzag scan.

더 상세하게는, 도 11의 첫 번째 행에서 5로 처리되는 물리적 주소의 변화과정을 살펴보면, 5 - 2 - 8 - 17 - 19 - 33 - 42 - 15의 순서대로 순환하면서 반복됨을 알 수 있다.
More specifically, looking at the change of the physical address that is treated as 5 in the first row of Figure 11, it can be seen that the cycle repeats in the order of 5-2-8-17-19-33-42-15.

아울러, 순서열에 속한 다른 숫자에 해당하는 차례의 주소도 또한, 도 12에 나타낸 바와 같이, 시작 주소만 다를 뿐 같은 순서로 변화하는 것을 알 수 있다.
In addition, as shown in FIG. 12, the addresses of a sequence corresponding to other numbers in the sequence may also be changed in the same order except for the start addresses.

도 11에 나타낸 바와 같이, 각 처리 순서마다 처리되는 물리적 주소는 서로 다른 크기의 집합을 가지며 반복되고 있다.
As shown in Fig. 11, the physical addresses processed in each processing sequence are repeated with sets of different sizes.

이때, 각 집합의 크기의 최소공배수는 전체 주소변화가 원래의 초기 순서로 돌아오기까지 걸리는 최소 갱신횟수를 나타내며, 8×8 지그재그 스캔의 경우 각 집합의 크기는, 도 11에 나타낸 바와 같이, 1, 2, 8, 17이고, 최소공배수는 136이므로, 136번의 블록 처리과정을 거치면 처음의 순서열로 돌아오게 됨을 확인할 수 있다.
In this case, the least common multiple of the size of each set represents the minimum number of updates before the entire address change returns to the original initial order. In the case of 8 × 8 zigzag scan, the size of each set is 1 as shown in FIG. 11. , 2, 8, 17, and the least common multiple is 136, so it can be seen that the process returns to the first sequence after 136 block processing.

같은 방법으로, H.264나 HEVC에 사용되는 여러 스캔 방법에 대하여 단일 메모리를 사용하는 방법을 적용하였을 때의 주소변화와 처음의 순서열로 돌아오는 최소 횟수인 최소공배수를 구해보면 도 13에 나타낸 바와 같다.
In the same way, when the method of using a single memory is applied to several scan methods used for H.264 or HEVC, the least common multiple, which is the minimum number of times of returning to the first order sequence, is shown in FIG. As shown.

즉, 도 13을 참조하면, 도 13은 각종 스캔 방법에서 반복되는 주소집합의 크기와 최소공배수를 표로 나타낸 도면이다.
That is, referring to FIG. 13, FIG. 13 is a table showing sizes and minimum common multiples of address sets repeated in various scanning methods.

상기한 바와 같이, 특정 순서에 처리되는 물리적 순서는 블록이 처리될 때마다 갱신되며 고정된 패턴으로 변화하고, 또한, 동일 패턴에 속한 처리순서는 시작하는 순서만 다를 뿐 같은 순서열을 보이며 변화한다.
As described above, the physical order processed in a specific order is updated each time the block is processed and changes to a fixed pattern, and the processing order belonging to the same pattern changes and shows the same sequence except that the starting order is different. .

따라서 블록이 한번 처리될 때마다 증가하는 카운터를 각 패턴마다 할당하고 패턴에 속한 처리순서에는 고유한 오프셋을 설정하여 실제 물리적 주소를 발생시킬 수 있다.
Therefore, a counter that is incremented each time a block is processed can be assigned to each pattern, and a unique offset can be set in the processing sequence belonging to the pattern to generate the actual physical address.

즉, 8×8 지그재그 스캔의 경우, 6번째 처리 순서는 8 - 17 - 19 - 33 - 42 - 15 - 5 - 2의 주소변화패턴을 보이며, 이는 앞서 3번째 처리 순서의 변화패턴 2 - 8 - 17 - 19 - 33 - 42 - 15 - 5에 대해 오프셋 값 1을 가지는 변화패턴으로 볼 수 있다.
That is, in the case of 8 × 8 zigzag scan, the sixth processing sequence shows an address change pattern of 8-17-19-33-42-15-5-2, which is the change pattern of the third processing sequence. It can be regarded as a change pattern having an offset value of 1 with respect to 5.

따라서 4번째 갱신의 9번째 처리순서에 해당하는 주소는, 기본 주소변환 패턴 8 - 17 - 19 - 33 - 42 - 15 - 5 - 2에서 갱신 회수 4에 오프셋 값 1을 더한 5번째 숫자인 42가 됨을 알 수 있다.
Therefore, the address corresponding to the ninth processing sequence of the fourth update has 42 as the fifth digit of the number of update 4 plus the offset value 1 in the basic address translation pattern 8-17-19-33-42-15-5-2. It can be seen that.

이러한 내용에 근거하여, 하드웨어 구현을 위해 각각의 주소를 그룹화하고 각 그룹 내의 주소에 기본 순서열을 바탕으로 하여 오프셋을 할당하는 것에 의해 상기한 도 9에 나타낸 바와 같은 구조의 주소 변환기를 구현할 수 있다.
Based on this, it is possible to implement an address translator of the structure as shown in FIG. 9 by grouping each address for a hardware implementation and assigning an offset based on a base sequence to the addresses within each group. .

여기서, 도 9에 나타낸 주소 변환기의 구성에 있어서, 블록 내의 데이터를 세는 카운터가 개개의 주소를 발생시키는 가장 기본적인 요소가 되며, 그룹화된 주소의 기본 순서열은 고유한 그룹의 크기를 최대값으로 하는 카운터에 의해 특정 값이 지정된다.
Here, in the configuration of the address translator shown in FIG. 9, a counter for counting data in a block is the most basic element for generating individual addresses, and the basic order sequence of grouped addresses is defined as a maximum value of a unique group. The counter is assigned a specific value.

또한, 그룹의 기본 순서열과 카운터는 대응 관계를 가지며, 개별 주소는 자신에게 할당된 오프셋과 기본 순서열에 의해 주소를 발생시킨다.
In addition, the base order sequence and the counter of the group have a corresponding relationship, and individual addresses are generated by the offset and the base order sequence assigned thereto.

다음으로, 본 발명자들은, 상기한 바와 같이 하여 구현된 주소 변환기가 정상적으로 입출력 주소를 발생시키는지를 용이하게 확인하기 위해 입출력 순서 변화를 고려하여 출력 데이터가 순서대로 출력될 수 있도록 하는 입력 데이터를 작성하여 테스트 벡터로 사용하여 시험을 진행하였다.
Next, the present inventors create input data to allow output data to be sequentially output in consideration of the change in the input / output order to easily check whether the address translator implemented as described above normally generates an input / output address. Tests were run using the test vectors.

즉, 도 14를 참조하면, 도 14는 출력 순서가 바뀌는 것을 고려하여 작성한 지그재그 8×8 스캔 블록에 대한 테스트 벡터의 예를 나타내는 도면이다.
That is, referring to FIG. 14, FIG. 14 is a diagram illustrating an example of a test vector for a zigzag 8 × 8 scan block created in consideration of a change in the output order.

여기서, 도 14에 나타낸 예에 있어서는, 정상적인 입출력 대응관계를 고려하여, 정상적인 순서 변환이 이루어지면 출력데이터는 항상 0, 1, 2, 3, ... 이 나오도록 구성하였다.
In the example shown in Fig. 14, in consideration of the normal input / output correspondence, the output data is always 0, 1, 2, 3, ... when normal order conversion is performed.

또한, Verilog HDL로 설계 및 검증을 한 후 TSMC 0.18 CMOS 공정 라이브러리로 합성하여 타이밍과 면적을 확인하였으며, H.264, HEVC에 사용되는 지그재그 4×4, 대각선 4×4 스캔에 대하여도 동일한 방법으로 설계하고, 이중 메모리를 사용하는 기존의 방법과 비교하였으며, 그 결과는 도 10에 나타낸 바와 같다.
In addition, after designing and verifying with Verilog HDL, it was synthesized with TSMC 0.18 CMOS process library to check the timing and area.The same method was used for the zigzag 4 × 4 and diagonal 4 × 4 scans used for H.264 and HEVC. Designed and compared with the conventional method using dual memory, the results are shown in FIG.

상기한 바와 같은 내용으로부터, 통상적으로 영상신호 처리에서 많이 사용되는 데이터 블록의 실시간 입출력 순서 변환은 단순한 순서열 변환일 경우 처리하고자 하는 블록크기에 해당하는 메모리만을 가지고 실시간으로 입출력 데이터를 교환하는 방법으로 구현해 왔으나, 본 발명에 따르면, 그러한 방법을 적용하기 어려웠던 불규칙한 형태의 입출력 순서 변환에서도 갱신되는 순서열이 규칙성과 반복성이 있음을 알 수 있으며, 이에 근거하여 HDL 설계와 ASIC 라이브러리 적용을 통해 면적이나 처리속도 면에서 기존의 방법에 비해 효율적이고 보편적으로 구현할 수 있는 주소 변환기의 구성을 제공할 수 있음을 알 수 있다.
From the above description, the real-time I / O order conversion of data blocks, which are commonly used in video signal processing, is a method of exchanging I / O data in real time with only a memory corresponding to the block size to be processed in the case of simple sequence conversion. However, according to the present invention, it can be seen that even in the case of irregular input / output order conversion, which is difficult to apply such a method, the updated sequence has regularity and repeatability. Based on this, the area or processing can be achieved through HDL design and ASIC library application. In terms of speed, it can be seen that it is possible to provide an address translator that can be implemented more efficiently and universally than conventional methods.

즉, 도 15를 참조하면, 도 15는 상기한 바와 같은 내용에 근거하여 구현된 본 발명에 따른 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법의 전체적인 구성을 개략적으로 나타내는 플로차트이다.
That is, referring to FIG. 15, FIG. 15 is a flowchart schematically illustrating the overall configuration of an image data processing method for real-time single memory simultaneous input / output according to the present invention implemented based on the above contents.

더 상세하게는, 도 15에 나타낸 바와 같이, 본 발명에 따른 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법은, 상기한 [규칙 1] 및 [규칙 2]에 나타낸 바와 같이, 입력순서와 출력순서는 고정된 대응관계를 유지하므로 n번째 처리된 물리적 주소는 다음 차례에는 항상 고정된 m번째 순서에 처리되며, 1회의 블록처리에서 모든 주소가 빠짐없이 한 번씩 접근되므로 임의의 물리적 주소가 가질 수 있는 주소는 전체 데이터의 수를 최대값으로 하는 유한하고 고정된 집합으로 제한된다는 것에 근거하여, 고정된 특정 물리적 주소가 접근되는 순서 변화를 블록 내 전체 데이터의 수를 최대값으로 하는 고정되고 유한한 순서열로 표현함으로써 각 물리적 주소가 접근되는 순서의 고정된 변화패턴을 순서열 테이블로서 저장하는 순서열 테이블 구성단계(S151)와, 특정 순서에 처리되는 물리적 순서는 블록이 처리될 때마다 갱신되며 고정된 패턴으로 변화한다는 규칙에 따라, 블록이 한번 처리될 때마다 증가하는 블록카운터를 각각의 상기 변화패턴마다 할당하는 블록카운터 할당단계(S152)와, 동일 패턴에 속한 처리순서는 시작하는 순서만 다를 뿐 같은 순서열을 보이며 변화한다는 규칙에 따라, 각각의 상기 변화패턴에 속한 처리순서에 고유한 오프셋(offset)을 설정하여 오프셋 테이블로서 저장하는 오프셋 테이블 구성단계(S153) 및 각각의 상기 순서열 테이블과 상기 블록카운터 및 상기 오프셋 테이블의 내용을 조합하여 실제 물리적 주소를 발생시키는 주소발생단계(S154)를 포함하여 구성된다.
More specifically, as shown in Fig. 15, the video data processing method for real-time single memory simultaneous input / output according to the present invention, as shown in [Rule 1] and [Rule 2], the input order and the output order. Since n maintains a fixed correspondence, the nth processed physical address is always processed in a fixed mth order next time, and all addresses are accessed once in one block processing. Based on the fact that an address is limited to a finite, fixed set with a maximum number of total data, a fixed, finite order with the maximum number of total data in a block is a change in the order in which a particular fixed physical address is accessed. Representation of sequence table to store fixed change pattern of the order in which each physical address is accessed by representing as column (S151) and a block counter that is incremented each time a block is processed is allocated to each of the change patterns according to the rule that the physical order processed in a specific order is updated each time the block is processed and changes to a fixed pattern. In accordance with the rule that the block counter allocation step (S152) is performed and the processing order belonging to the same pattern is changed only with the starting order being different, the offset unique to the processing order belonging to each of the change patterns is changed. An offset table construction step (S153) of setting and storing the offset table as an offset table, and an address generation step (S154) of generating a real physical address by combining the contents of each of the sequence table, the block counter, and the offset table. It is composed.

여기서, 상기한 블록카운터 할당단계(S152)는, 각각의 순서열을 동일한 횟수 내에 반복성을 가지는 것끼리 분류하여 동일한 블록카운터를 공유하도록 설정하도록 구성된다.
Here, the above-described block counter assignment step (S152) is configured to classify each sequence sequence having the same repeatability within the same number of times and set to share the same block counter.

또한, 상기한 블록카운터 할당단계(S152)는, 동일한 블록카운터 값을 가지는 순서열들에 고유의 오프셋 값을 더하여 최종적인 블록카운터 값을 할당하도록 구성된다.
In addition, the block counter assignment step (S152) is configured to assign a final block counter value by adding a unique offset value to sequence sequences having the same block counter value.

아울러, 상기한 주소발생단계(S154)는, 각각의 주소를 그룹화하고 각 그룹 내의 주소에 대하여 기본 순서열에 오프셋을 할당하는 것에 의해 주소를 발생하도록 구성된다.
In addition, the address generation step (S154) is configured to generate addresses by grouping each address and assigning an offset to a base sequence for the addresses in each group.

여기서, 그룹화된 주소의 기본 순서열은 고유한 그룹의 크기를 최대값으로 하는 블록카운터에 의해 특정 값이 지정되도록 구성된다.
Here, the basic sequence of grouped addresses is configured such that a specific value is designated by a block counter that makes the size of the unique group the maximum value.

더욱이, 상기한 주소발생단계(S154)는, 최종적인 블록카운터 값을 순서열 테이블의 인덱스로 사용하여 최종 주소값을 결정하도록 구성된다.
Furthermore, the address generation step S154 is configured to determine the final address value by using the final block counter value as an index of the sequence table.

따라서 상기한 바와 같이 하여, 본 발명에 따른 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 구현할 수 있다.
Accordingly, as described above, the image data processing method for real-time single memory simultaneous input and output according to the present invention can be implemented.

또한, 상기한 바와 같이 하여 본 발명에 따른 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 구현함으로써, 입출력 순서가 복잡하거나 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 하는 것에 의해 처리하고자 하는 데이터의 양보다 두 배의 메모리 공간이 필요한 단점이 있었던 종래의 이중 버퍼링 방식 및 메모리의 사용량은 최소화되나 입출력 순서가 복잡하거나 불규칙할 경우는 적용이 어려웠던 종래의 단일 메모리를 이용한 방식의 문제점을 모두 해결할 수 있다.
In addition, as described above, by implementing the image data processing method for real-time single memory simultaneous input / output according to the present invention, even if the input / output order is complicated or irregular, it is possible to perform simultaneous input / output processing in real time using a single memory. The conventional double buffering method, which had twice the memory space required to be processed by the data, and the use of the conventional single memory method, which was difficult to apply when the input / output order was complicated or irregular, was minimized. You can solve all the problems.

즉, 본 발명에 따르면, 실시간 영상압축 코덱에서 작은 면적으로 구현 가능한 임의의 불규칙한 블록 데이터의 순서 변환방법 및 이를 이용한 주소 변환기를 제공할 수 있다.
That is, according to the present invention, a method for converting random irregular block data that can be implemented in a small area in a real-time image compression codec and an address translator using the same can be provided.

이상, 상기한 바와 같은 본 발명의 실시예를 통하여 본 발명에 따른 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법의 상세한 내용에 대하여 설명하였으나, 본 발명은 상기한 실시예에 기재된 내용으로만 한정되는 것은 아니며, 따라서 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 설계상의 필요 및 기타 다양한 요인에 따라 여러 가지 수정, 변경, 결합 및 대체 등이 가능한 것임은 당연한 일이라 하겠다.
As described above, the details of the image data processing method for real-time single memory simultaneous input / output according to the present invention have been described through the embodiments of the present invention as described above, but the present invention is limited only to the contents described in the above embodiments. Therefore, it is a matter of course that the present invention can be variously modified, changed, combined, and replaced by those skilled in the art according to design needs and various other factors. .

Claims (8)

데이터의 처리순서를 변환하기 위해 입력 데이터를 일정 크기의 블록 단위로 나누어 상기 블록과 동일한 크기의 메모리에 저장하는 동시에 그 이전에 저장한 데이터를 새로운 처리순서로 출력시키는 단일 메모리를 이용한 데이터 입출력 순서변환 처리에서 입출력 순서가 불규칙할 경우에도 실시간으로 동시 입출력 처리가 가능하도록 물리적 주소의 변환을 수행하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법에 있어서,
입력순서와 출력순서는 고정된 대응관계를 유지하므로 n번째 처리된 물리적 주소는 다음 차례에는 항상 고정된 m번째 순서에 처리되며, 1회의 블록처리에서 모든 주소가 빠짐없이 한 번씩 접근되므로, 임의의 물리적 주소가 가질 수 있는 주소는 전체 데이터의 수를 최대값으로 하는 유한하고 고정된 집합으로 제한된다는 규칙에 근거하여, 고정된 특정 물리적 주소가 접근되는 순서 변화를 블록 내 전체 데이터의 수를 최대값으로 하는 고정되고 유한한 순서열로 표현함으로써 각 물리적 주소가 접근되는 순서의 고정된 변화패턴을 순서열 테이블로서 저장하는 순서열 테이블 구성단계;
특정 순서에 처리되는 물리적 순서는 블록이 처리될 때마다 갱신되며 고정된 패턴으로 변화한다는 규칙에 따라, 블록이 한번 처리될 때마다 증가하는 블록카운터를 각각의 상기 변화패턴마다 할당하는 블록카운터 할당단계;
동일 패턴에 속한 처리순서는 시작하는 순서만 다를 뿐 같은 순서열을 보이며 변화한다는 규칙에 따라, 각각의 상기 변화패턴에 속한 처리순서에 고유한 오프셋(offset)을 설정하여 오프셋 테이블로서 저장하는 오프셋 테이블 구성단계; 및
각각의 상기 순서열 테이블과 상기 블록카운터 및 상기 오프셋 테이블의 내용을 조합하여 실제 물리적 주소를 발생시키는 주소발생단계를 포함하여 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법.
In order to convert the data processing order, the input data is divided into blocks of a certain size and stored in the same size memory as the block, and the data I / O sequence conversion using a single memory that outputs previously stored data in a new processing order. In the image data processing method for real-time single-memory simultaneous input / output for converting physical addresses to enable simultaneous input / output processing in real time even when the input / output order is irregular in processing,
Since the input order and output order maintain a fixed correspondence, the nth processed physical address is always processed in the fixed mth order next time, and all addresses are accessed once in one block processing. Based on the rule that an address that a physical address can have is limited to a finite, fixed set whose maximum number of data is the maximum, the maximum number of total data in the block is determined by changing the order in which a specific fixed physical address is accessed. An order sequence table constructing step of storing, as an order sequence table, a fixed change pattern of an order in which each physical address is accessed by expressing it as a fixed finite sequence sequence;
A block counter allocation step of allocating a block counter for each of the change patterns which is incremented each time the block is processed according to the rule that the physical order processed in a specific order is updated each time the block is processed and changes to a fixed pattern. ;
According to the rule that the processing sequence belonging to the same pattern changes only with the starting sequence being different, the offset table which sets an offset unique to the processing sequence belonging to each of the above changing patterns and stores it as an offset table. Construction step; And
And generating an actual physical address by combining the contents of each of the sequence table, the block counter, and the offset table.
제 1항에 있어서,
상기 블록카운터 할당단계는,
각각의 순서열을 동일한 횟수 내에 반복성을 가지는 것끼리 분류하여 동일한 블록카운터를 공유하도록 설정하는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법.
The method of claim 1,
The block counter allocation step,
And classifying each sequence to have the same repeatability within the same number of times and to share the same block counter.
제 2항에 있어서,
상기 블록카운터 할당단계는,
동일한 블록카운터 값을 가지는 순서열들에 고유의 오프셋 값을 더하여 최종적인 블록카운터 값을 할당하도록 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법.
3. The method of claim 2,
The block counter allocation step,
And assigning a final block counter value by adding a unique offset value to sequence sequences having the same block counter value.
제 1항에 있어서,
상기 주소발생단계는,
각각의 주소를 그룹화하고 각 그룹 내의 주소에 대하여 기본 순서열에 오프셋을 할당하는 것에 의해 주소를 발생하도록 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법.
The method of claim 1,
The address generation step,
And generating an address by grouping each address and assigning an offset to a basic sequence for the addresses in each group.
제 4항에 있어서,
상기 주소발생단계는,
그룹화된 주소의 기본 순서열은 고유한 그룹의 크기를 최대값으로 하는 블록카운터에 의해 특정 값이 지정되도록 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법.
5. The method of claim 4,
The address generation step,
And a basic sequence of grouped addresses is configured such that a specific value is designated by a block counter having a maximum value of a unique group.
제 4항에 있어서,
상기 주소발생단계는,
최종 블록카운터 값을 상기 순서열 테이블의 인덱스로 사용하여 최종 주소값을 결정하도록 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법.
5. The method of claim 4,
The address generation step,
And determining a final address value by using a last block counter value as an index of the sequence table.
청구항 1항 내지 6항 중 어느 한 항에 기재된 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 컴퓨터에 실행시키도록 구성된 프로그램이 기록된 컴퓨터에서 판독 가능한 기록매체.
A computer-readable recording medium having recorded thereon a program configured to cause a computer to execute the image data processing method for real-time single memory simultaneous input / output according to any one of claims 1 to 6.
청구항 1항 내지 6항 중 어느 한 항에 기재된 실시간 단일 메모리 동시 입출력을 위한 영상데이터 처리방법을 이용하여, 입출력 순서가 불규칙할 경우에도 단일 메모리를 이용하여 실시간으로 동시 입출력 처리가 가능하도록 물리적 주소의 변환을 수행하도록 구성되는 것을 특징으로 하는 실시간 단일 메모리 동시 입출력을 위한 영상처리장치.
By using the image data processing method for real-time single memory simultaneous input / output according to any one of claims 1 to 6, even if the input / output order is irregular, the physical address of the physical address can be simultaneously processed using a single memory in real time. An image processing apparatus for real-time single memory simultaneous input and output, characterized in that configured to perform the conversion.
KR1020130004235A 2013-01-15 2013-01-15 Image data processing method for real-time concurrent single memory input/output access KR101355892B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130004235A KR101355892B1 (en) 2013-01-15 2013-01-15 Image data processing method for real-time concurrent single memory input/output access

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130004235A KR101355892B1 (en) 2013-01-15 2013-01-15 Image data processing method for real-time concurrent single memory input/output access

Publications (1)

Publication Number Publication Date
KR101355892B1 true KR101355892B1 (en) 2014-01-28

Family

ID=50146516

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130004235A KR101355892B1 (en) 2013-01-15 2013-01-15 Image data processing method for real-time concurrent single memory input/output access

Country Status (1)

Country Link
KR (1) KR101355892B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100637610B1 (en) * 1997-10-31 2006-10-24 코닌클리케 필립스 일렉트로닉스 엔.브이. Cache replacement policy with locking
KR100847506B1 (en) * 2004-09-10 2008-07-22 동경 엘렉트론 디바이스 주식회사 Storage device, memory management method and program
KR20090026941A (en) * 2007-09-11 2009-03-16 삼성전자주식회사 Method for address mapping in virtual file system embodied in storage device having a plurality of non-volatile data storage and apparatus thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100637610B1 (en) * 1997-10-31 2006-10-24 코닌클리케 필립스 일렉트로닉스 엔.브이. Cache replacement policy with locking
KR100847506B1 (en) * 2004-09-10 2008-07-22 동경 엘렉트론 디바이스 주식회사 Storage device, memory management method and program
KR20090026941A (en) * 2007-09-11 2009-03-16 삼성전자주식회사 Method for address mapping in virtual file system embodied in storage device having a plurality of non-volatile data storage and apparatus thereof

Similar Documents

Publication Publication Date Title
US10939112B2 (en) Method and device for video coding and decoding
US20170332073A1 (en) Image Coding Method, Decoding Method, Coding Device and Decoding Device
CN105981389B (en) Picture coding device, picture decoding apparatus, encoding stream converting means, image encoding method and picture decoding method
CN104956662B (en) data arrangement method and data storage device
KR101946598B1 (en) Image coding and decoding method and device
KR20120049851A (en) Apparatus and method for displaying a warped version of a source image
JP2013135463A (en) Moving image compressing apparatus, image processing apparatus, moving image compressing method, image processing method, and data structure of moving image compressed file
CN113784124B (en) Block matching encoding and decoding method for fine division using multi-shape sub-blocks
US10575022B2 (en) Image encoding and decoding method, image processing device and computer storage medium
CN107748794B (en) Spatial data storage method
US10003812B2 (en) Information processing apparatus, method of controlling the same, and storage medium
US9367955B2 (en) System, method, and computer program product for tiled screen space sample scrambling for parallel deterministic consistent light transport simulation
JP2016001873A (en) Image encoding method and image encoding device
US9201781B2 (en) Data processing apparatus, data processing method and data sharing system
US8467624B2 (en) Image processing apparatus, image processing circuit, and image processing method
KR101355892B1 (en) Image data processing method for real-time concurrent single memory input/output access
US20130022265A1 (en) Method and system for interpolating index values of associated tiles in an image
KR101664112B1 (en) Method and apparatus for translating memory access address
KR20050043607A (en) Signal processing method and signal processing device
JP3168183B2 (en) Data processing device
KR100671368B1 (en) Device and method of image signal processing
JP3753678B2 (en) Multi-level image encoding / decoding device
GB2593708A (en) Methods and decompression units for decompressing image data compressed using pattern-based compression
JP6791158B2 (en) Video encoding device, video coding method, and program
US20200342566A1 (en) Managing data for transportation

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170104

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180104

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190104

Year of fee payment: 6