KR100248653B1 - Method for transitioning a state of blocks during address generation in a frame memory - Google Patents

Method for transitioning a state of blocks during address generation in a frame memory Download PDF

Info

Publication number
KR100248653B1
KR100248653B1 KR1019970022368A KR19970022368A KR100248653B1 KR 100248653 B1 KR100248653 B1 KR 100248653B1 KR 1019970022368 A KR1019970022368 A KR 1019970022368A KR 19970022368 A KR19970022368 A KR 19970022368A KR 100248653 B1 KR100248653 B1 KR 100248653B1
Authority
KR
South Korea
Prior art keywords
block
state
macroblock
frame
inspection
Prior art date
Application number
KR1019970022368A
Other languages
Korean (ko)
Other versions
KR19980086109A (en
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 KR1019970022368A priority Critical patent/KR100248653B1/en
Publication of KR19980086109A publication Critical patent/KR19980086109A/en
Application granted granted Critical
Publication of KR100248653B1 publication Critical patent/KR100248653B1/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation

Landscapes

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

Abstract

움직임 보상장치에 사용되는 프레임 메모리에 있어서 어드레스 발생시 블럭상태 천이방법이 개시된다. 이 블럭상태 천이방법에서는 예측된 매크로블럭의 움직임 추정 및 보상모드를 검사하는 단계; 예측된 매크로블럭의 매클록블럭 패턴을 검사하는 단계; 움직임 추정 및 보상모드가 필드 혹은 16*8이고 매크로블럭 패턴이 순방향 예측인 경우, 블럭 b0, b1, b2, b3 상태 순으로 천이하면서 페치하는 단계; 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고 매크로블럭 패턴이 순방향 예측인 경우, 블럭 b0, b2, b1, b3 상태 순으로 천이하면서 페치하는 단계; 움직임 추정 및 보상모드가 필드 혹은 16*8이고 매크로블럭 패턴이 양방향 예측인 경우, 블럭 b0, b1, b0, b1, b2, b3, b2, b3 상태 순으로 천이하면서 페치하는 단계; 및 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고 매크로블럭 패턴이 양방향 예측인 경우, 블럭 b0, b2, b0, b2, b1, b3, b1, b3 상태 순으로 천이하면서 페치하는 단계로 구성된다.Disclosed is a block state transition method when an address is generated in a frame memory used in a motion compensation device. The block state transition method includes the steps of checking the motion estimation and the compensation mode of the predicted macroblock; Examining the macroblock pattern of the predicted macroblock; If the motion estimation and compensation mode is a field or 16 * 8 and the macroblock pattern is forward prediction, fetching while transitioning to block b0, b1, b2, b3 state order; If the motion estimation and compensation mode is frame or dual prime and the macroblock pattern is forward prediction, fetching while transitioning to block b0, b2, b1, b3 state order; If the motion estimation and compensation mode is a field or 16 * 8 and the macroblock pattern is bidirectional prediction, fetching while transitioning to blocks b0, b1, b0, b1, b2, b3, b2, b3 states; And when the motion estimation and compensation mode is frame or dual prime and the macroblock pattern is bidirectional prediction, transitioning and fetching in the order of blocks b0, b2, b0, b2, b1, b3, b1, b3 states.

Description

프레임 메모리에 있어서 어드레스 발생시 블럭상태 천이방법Block state transition method when address occurs in frame memory

본 발명은 움직임 보상장치용 프레임 메모리에 관한 것으로서, 특히 예측된 매크로블록을 프레임 메모리로 부터 읽어오기 위해 행 어드레스(row address;RA)와 열 어드레스(column address;CA)를 발생시킬 경우, 해당 매크로블럭의 움직임 추정 및 보상모드와 매크로블럭 패턴에 따라서 페치해야 할 블럭 상태를 천이시키기 위한 블럭 상태 천이방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a frame memory for a motion compensation device, and more particularly, when generating a row address (RA) and a column address (CA) for reading a predicted macroblock from the frame memory. A block state transition method for transitioning a block state to be fetched according to a motion estimation and compensation mode of a block and a macroblock pattern.

MPEG(Moving Picture Experts Group)-2 표준안에 사용되는 움직임 보상기술은 매크로블록 단위로 시간적으로 인접한 두 화면간의 움직임을 추정하여 보상함으로써 시간적 중복성(temporal redundancy)을 줄이기 위한 것이다. 즉, 움직임 추정 및 보상과정에서는 인접한 영상과 현재 영상을 비교하여 물체의 움직임에 관한 정보인 움직임 벡터를 검출해 내고, 이 움직임 벡터를 이용하여 현재 영상을 예측해 낸다.The motion compensation technique used in the Moving Picture Experts Group (MPEG) -2 standard is to reduce temporal redundancy by estimating and compensating for motion between two adjacent temporal pictures in macroblock units. That is, in the motion estimation and compensation process, a neighboring image is compared with the current image to detect a motion vector, which is information about an object's motion, and the current image is predicted using the motion vector.

이러한 움직임 보상기술을 이용하는 MPEG-2 영상 복호화기(video encoder)에 있어서, P 픽쳐는 현재 영상에 대해서 이전 영상의 I 픽쳐 또는 P 픽쳐를 기준으로 하여 순방향 움직임 보상을 수행하고, B 픽쳐는 현재 영상에 대해서 이전 영상의 I 픽쳐 혹은 P 픽쳐, 및 다음 영상의 I 픽쳐 혹은 P 픽쳐를 기준으로 하여 순방향 움직임 보상, 역방향 움직임 보상 및 보간형 움직임 보상을 수행하여 얻은 움직임 보상 블록 중 최선의 것을 선택한다.In an MPEG-2 video encoder using such a motion compensation technique, the P picture performs forward motion compensation on the basis of the I picture or P picture of the previous picture with respect to the current picture, and the B picture performs the current picture. The best one is selected from among motion compensation blocks obtained by performing forward motion compensation, reverse motion compensation, and interpolated motion compensation based on the I picture or P picture of the previous picture and the I picture or P picture of the next picture.

그리고, 움직임 추정 및 보상을 위한 방법으로는 프레임 움직임 추정 및 보상 모드, 필드 움직임 추정 및 보상 모드, 듀얼 프라임(dual prime) 움직임 추정 및 보상 모드 등이 있으며, 기본적으로 모든 움직임 추정 및 보상은 반화소(half-pel) 단위까지 하는 것을 규정하고 있다.Methods for motion estimation and compensation include frame motion estimation and compensation mode, field motion estimation and compensation mode, dual prime motion estimation and compensation mode, and basically all motion estimation and compensation are half pixel. It is specified to have a half-pel unit.

이 중, 프레임 움직임 추정 및 보상 모드는 MPEG-1에서 부터 사용하여 온 것으로서, 상위 필드(top field 혹은 even field)와 하위 필드(bottom field 혹은 odd field)의 구분없이 프레임 구조로 움직임을 추정하고 보상한다. 이를 위하여, 현재 프레임의 부호화하고자 하는 매크로블럭(MB)에 대해 기준 프레임의 탐색 영역내에서 반화소 정밀도까지 완전 탐색(full search)을 수행하여, 가장 작은 평균 절대 에러(MAE: Mean Absolute Error)를 발생시키는 위치를 해당 매크로블럭에 대한 움직임 벡터로 결정한다. 실제로는 데이터가 화소 단위로 주어지므로 화소 단위의 1차 완전 탐색을 통해 화소 단위 움직임 벡터를 구한 다음, 반화소 단위의 보간 및 2차 완전 탐색을 통해 반화소 단위 움직임 벡터를 구한다. 프레임 움직임 추정의 경우, P 픽쳐에 대해서는 한 개의 매크로블록당 1 개의 움직임 벡터를 전송하고, B 픽쳐에 대해서는 한 개의 매크로블록당 1 개 혹은 2 개의 움직임 벡터를 전송하므로, 필드 움직임 추정에 비해 움직임 벡터 전송에 소요되는 비트 수가 적다.Among these, frame motion estimation and compensation mode has been used since MPEG-1, and motion estimation and compensation are performed in a frame structure without distinguishing a top field or even field and a bottom field or odd field. do. To this end, a full search is performed on the macroblock MB to be encoded of the current frame up to half-pixel precision in the search region of the reference frame, thereby obtaining the smallest mean absolute error (MAE). The position to generate is determined as a motion vector for the macroblock. In fact, since data is given in units of pixels, a pixel-by-pixel motion vector is obtained through the first-order full search in pixel units, and then a half-pixel motion vector is obtained through interpolation and a second full search in half-pixel units. In the case of frame motion estimation, one motion vector is transmitted per one macroblock for a P picture, and one or two motion vectors are transmitted per one macroblock for a B picture. The number of bits required for transmission is small.

다음, 필드 움직임 추정 및 보상 모드는 프레임 구조의 픽쳐에 있어서 각 필드별로 움직임 추정 및 보상을 수행한다. 이를 위하여, 현재 프레임의 상위 필드와 하위 필드, 기준 프레임의 상위 필드와 하위 필드 사이에서 각각 16*8 (pixels) 서브 매크로블록 단위로 상위에서 하위, 상위에서 상위, 하위에서 상위, 하위에서 하위의 4 가지 움직임 벡터를 구한 뒤, 현재 프레임의 상위 필드와 하위 필드 각각에 대하여 최소의 움직임 보상에러를 발생시키는 하나씩의 움직임 벡터를 선택한다. 따라서, P 픽쳐에 대해서는 한 개의 매크로블록당 2 개의 움직임 벡터, B 픽쳐에 대해서는 한 개의 매크로블록당 2 개 혹은 4 개의 움직임 벡터를 전송한다. MPEG-2 영상 부호화기에서는 모든 매크로블록에 대하여 프레임/필드 예측 모드를 모두 적용한 다음, 그 중 보다 작은 예측 오차를 갖는 예측 모드를 사용한다. 한편, MPEG-2 영상 복호화기에서는 부호화기에서 사용한 예측 모드가 전송되므로 이에 따라 움직임 보상을 수행하여 영상을 복원한다.Next, the field motion estimation and compensation mode performs motion estimation and compensation for each field in the picture of the frame structure. For this purpose, the upper and lower, upper and upper, lower and upper, lower and lower positions in the unit of 16 * 8 (pixels) sub macroblocks between upper and lower fields of the current frame and upper and lower fields of the reference frame, respectively. After four motion vectors are obtained, one motion vector is generated to generate a minimum motion compensation error for each of the upper and lower fields of the current frame. Therefore, two motion vectors per macroblock for a P picture and two or four motion vectors per macroblock for a B picture are transmitted. The MPEG-2 image encoder applies all the frame / field prediction modes to all macroblocks, and then uses the prediction mode having the smaller prediction error. Meanwhile, since the prediction mode used by the encoder is transmitted in the MPEG-2 image decoder, motion compensation is performed to restore the image.

한편, 필드 움직임 추정 및 보상 모드의 변형 모드로서 16*8(pixels) 움직임 추정 및 보상 모드가 있는데, 이 모드에서는 각각의 매크로블럭에 대하여 2개의 움직임 벡터가 사용되는데, 제1움직임 벡터는 상위 16*8 영역에 대하여, 제2움직임 벡터는 하위 16*8 영역에 대하여 사용된다. 양방향 예측된 매크로블럭의 경우, 순방향 예측에 대하여 2개, 역방향 예측에 대하여 2개, 총 4개의 움직임 벡터가 사용된다.On the other hand, as a variation of the field motion estimation and compensation mode, there are 16 * 8 (pixels) motion estimation and compensation modes. In this mode, two motion vectors are used for each macroblock, and the first motion vector is the top 16. For the * 8 region, the second motion vector is used for the lower 16 * 8 region. In the case of a bidirectional predicted macroblock, four motion vectors are used, two for forward prediction and two for backward prediction.

다음, 듀얼 프라임 움직임 추정 및 보상 모드는 한 개의 매크로블록당 1 개의 움직임 벡터와 차분 움직임 벡터(dmv)만을 전송하는 것으로, 비교적 느린 움직임을 갖는 시퀀스에 효과적인 것으로 알려져 있다. 이 모드는 B 픽쳐를 사용하지 않는 경우에만 사용되도록 규정하고 있다. 즉, B 픽쳐가 허용되는 경우에는 이를 이용하여 더 좋은 화질을 얻을 수 있으나, B 픽쳐가 허용되지 않는 경우에는 듀얼 프라임 예측 모드를 사용함으로써, 가능한 한 적은 비트 발생량으로 화질의 향상을 가져 올 수 있다. 듀얼 프라임 예측 모드에서는 먼저, 필드 예측 모드에서 구한 상위에서 하위, 상위에서 상위, 하위에서 상위, 하위에서 하위의 4 가지 움직임 벡터 중 상위에서 상위와 하위에서 하위의 움직임 벡터는 그대로 기본 움직임 벡터로 사용하고, 상위에서 하위와 하위에서 상위의 움직임 벡터는 각각 스케일링(*2, *2/3)과 트렁케이션(truncation)을 하여 기본 움직임 벡터를 만든다. 다음, 이와 같이 만들어진 4개의 기본 움직임 벡터 각각에 대하여 수평 방향과 수직 방향으로 -1, 0, 1씩의 미세 조정을 가하여 두 개의 16*8 (pixels) 서브 매크로블록에 대해 움직임 보상에러가 최소가 되도록 하는 움직임 벡터와 차분 움직임 벡터를 전송한다. 듀얼 프라임 예측 모드는 영상 부호화기에서의 계산량이 상당히 많은 편으로 한 개의 기본 움직임 벡터당 9 개의 예측 후보값을 계산해 내야 하므로 총 36 가지의 후보 중 한 개의 기본 움직임 벡터와 차분 움직임 벡터를 계산해야 한다. 한편, 영상 복호화기에서는 전송되어 온 기본 움직임 벡터와 차분 움직임 벡터로 부터 2 개의 필드움직임 벡터를 계산하기만 하면 되므로 비교적 간단하게 구현 가능하다.Next, the dual prime motion estimation and compensation mode transmits only one motion vector and differential motion vector (dmv) per macroblock, and is known to be effective for sequences with relatively slow motion. This mode is specified to be used only when the B picture is not used. That is, when the B picture is allowed, a better picture quality can be obtained using the B picture. However, when the B picture is not allowed, the dual prime prediction mode can be used to improve the picture quality with as little bit generation as possible. . In the dual prime prediction mode, first, the motion vectors of the upper, upper, and lower part of the four motion vectors obtained from the field prediction mode from upper to lower, upper to upper, lower to upper, lower to lower are used as the basic motion vectors. The upper and lower motion vectors and upper and lower motion vectors are scaled (* 2, * 2/3) and truncated, respectively, to form a basic motion vector. Next, each of the four basic motion vectors thus created is fine-tuned by -1, 0, and 1 in the horizontal and vertical directions to minimize the motion compensation error for the two 16 * 8 (pixels) sub macroblocks. A motion vector and a differential motion vector are transmitted. Since the dual prime prediction mode has a large amount of computation in the image encoder, it is necessary to calculate nine prediction candidate values per one basic motion vector. Therefore, the basic motion vector and the differential motion vector of one of 36 candidates must be calculated. Meanwhile, the image decoder can be implemented relatively simply because only two field motion vectors need to be calculated from the transmitted basic motion vector and the differential motion vector.

프레임 메모리는 이와 같이 움직임 보상을 위한 참조영상인 이전 영상의 I 픽쳐 혹은 P 픽쳐, 및 다음 영상의 I 픽쳐 혹은 P 픽쳐를 저장하기 위하여 사용된다. 또한, 프레임 메모리는 MPEG-2 영상 복호화기에 있어서 복호화 순서와 디스플레이 순서가 서로 다른 관계로, 복호화가 완료된 픽쳐를 일시적으로 저장한 다음 디스플레이 순서에 맞게 페치하기 위하여 사용된다.The frame memory is used to store the I picture or P picture of the previous picture and the I picture or P picture of the next picture as the reference picture for motion compensation. In addition, the frame memory is used to temporarily store a decoded picture and fetch it according to the display order since the decoding order and the display order are different in the MPEG-2 video decoder.

그러나, 상기한 바와 같은 프레임 메모리는 I 픽쳐와 P 픽쳐 혹은 P 픽쳐와 P 픽쳐간의 거리(M)에 따라 적어도 3 프레임 분의 영상 데이타를 저장할 수 있는 용량을 가져야 하므로 그 가격이 비싸고, 따라서 전체 영상 복호화기의 가격을 상승시키는 요인이 될 뿐 아니라, 복호화 완료 이후 디스플레이까지의 지연시간이 증가하는 문제점이 있었다.However, the frame memory as described above must have a capacity to store at least three frames of image data according to the I picture and the P picture or the distance M between the P picture and the P picture, and thus the price thereof is expensive, and therefore, the entire picture. In addition to raising the price of the decoder, there is a problem that the delay time from the completion of decoding to the display increases.

따라서 본 발명은 상술한 문제점을 해결하기 위하여 안출된 것으로서, 움직임 보상시 참조 영상 데이터를 저장하는 영역, 디스플레이를 위해 복호화가 완료된 영상 데이터를 저장하는 영역 및 영상 복호화기로 입력되는 부호화된 비트스트림을 저장하는 영역이 하나의 메모리 모듈 상에 구현된 프레임 메모리에 있어서, 예측된 매크로블록을 프레임 메모리로 부터 읽어오기 위해 행 어드레스와 열 어드레스를 발생시킬 경우, 해당 매크로블럭의 움직임 추정 및 보상모드와 매크로블럭 패턴에 따라서 페치해야 할 블럭 상태를 천이시키기 위한 블럭 상태 천이방법을 제공하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above-described problem, and includes an area for storing reference image data when compensating for motion, an area for storing decoded image data for display, and an encoded bitstream input to an image decoder. In the frame memory implemented on one memory module, when generating a row address and a column address to read the predicted macroblock from the frame memory, the motion estimation and compensation mode and the macroblock of the corresponding macroblock are generated. It is an object of the present invention to provide a block state transition method for transitioning a block state to be fetched according to a pattern.

상기 목적을 달성하기 위하여 프레임 메모리에 있어서 어드레스 발생시 본 발명에 따른 블럭상태 천이방법은 각각 소정의 RAS 박스 구조와 소정의 매크로블록 구조를 가지며 1 프레임 분의 영상신호를 저장하는 제1 내지 제4프레임 저장영역으로 이루어진 프레임 메모리에 있어서, 움직임 보상에 의해 예측된 매크로블럭의 휘도 블럭 b0 내지 블럭 b3을 페치하는 경우, 각각 소정의 RAS 박스 구조와 소정의 매크로블록 구조를 가지며 1 프레임 분의 영상신호를 저장하는 제1 내지 제4프레임 저장영역으로 이루어진 프레임 메모리에 있어서, 움직임 보상에 의해 예측된 매크로블럭의 휘도 블럭 b0 내지 블럭 b3을 페치하는 경우, 상기 예측된 매크로블럭의 움직임 추정 및 보상모드를 검사하는 제1검사단계; 상기 예측된 매크로블럭의 매클록블럭 패턴을 검사하는 제2검사단계; 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 필드 혹은 16*8이고 매크로블럭 패턴이 순방향 예측인 경우, 상기 블럭 b0 상태에서 블럭 b1, 블럭 b2, 블럭 b3 상태 순으로 천이하면서 페치하는 단계; 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고 매크로블럭 패턴이 순방향 예측인 경우, 상기 블럭 b0 상태에서 블럭 b2, 블럭 b1, 블럭 b3 상태 순으로 천이하면서 페치하는 단계; 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 필드 혹은 16*8이고 매크로블럭 패턴이 양방향 예측인 경우, 블럭 b0 상태에서 블럭 b1, 블럭 b0 상태, 블럭 b1, 블럭 b2, 블럭 b3, 블럭 b2, 블럭 b3 상태 순으로 천이하면서 페치하는 단계; 및 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고 매크로블럭 패턴이 양방향 예측인 경우, 블럭 b0 상태에서 블럭 b2, 블럭 b0 상태, 블럭 b2, 블럭 b1, 블럭 b3, 블럭 b1, 블럭 b3 상태 순으로 천이하면서 페치하는 단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, a block state transition method according to the present invention when an address is generated in a frame memory includes first to fourth frames each having a predetermined RAS box structure and a predetermined macroblock structure and storing one frame of an image signal. In a frame memory composed of a storage area, when fetching luminance blocks b0 to b3 of a macroblock predicted by motion compensation, each frame has a predetermined RAS box structure and a predetermined macroblock structure, and outputs one frame of video signal. A frame memory comprising first to fourth frame storage areas for storing, when fetching luminance blocks b0 to b3 of a macroblock predicted by motion compensation, a motion estimation and a compensation mode of the predicted macroblock are examined. The first inspection step to; A second inspection step of inspecting the macroblock pattern of the predicted macroblock; As a result of the inspection in the first and second inspection steps, when the motion estimation and compensation mode is a field or 16 * 8 and the macroblock pattern is forward prediction, in the block b0 state, block b1, block b2, and block b3 states Fetching while transitioning; As a result of the inspection in the first and second inspection steps, when the motion estimation and compensation mode is frame or dual prime and the macroblock pattern is forward prediction, transition from block b0 state to block b2, block b1, block b3 state Fetching while; As a result of the inspection in the first and second inspection steps, when the motion estimation and compensation mode is a field or 16 * 8 and the macroblock pattern is bidirectional prediction, in the block b0 state, block b1, block b0 state, block b1, block b2 Fetching while transitioning to block b3, block b2, and block b3 states; And when the motion estimation and compensation mode is frame or dual prime and the macroblock pattern is bidirectional prediction in the first and second inspection steps, in the block b0 state, block b2, block b0 state, block b2, block b1. Fetching and transitioning in the order of block b3, block b1, and block b3 states.

도 1은 본 발명에서 채택한 프레임 메모리의 구조를 나타낸 도면,1 is a diagram showing the structure of a frame memory adopted in the present invention;

도 2는 도 1에 도시된 프레임 메모리의 스케쥴링 순서를 나타낸 도면,2 is a diagram illustrating a scheduling order of the frame memory shown in FIG. 1;

도 3은 도 1에 도시된 프레임 메모리에 있어서 1 프레임에 대한 RAS 박스 설정방법의 예를 나타낸 도면,3 is a diagram illustrating an example of a method for setting a RAS box for one frame in the frame memory shown in FIG. 1;

도 4는 도 3에 도시된 RAS 박스에 있어서 매크로블록 구조의 예를 나타낸 도면,4 is a view showing an example of a macroblock structure in the RAS box shown in FIG.

도 5는 본 발명에 의한 어드레스 발생시 블럭상태 천이방법을 나타낸 상태도,5 is a state diagram showing a block state transition method when an address is generated according to the present invention;

도 6은 도 5에 도시된 블럭상태 천이방법이 실행되는 장치를 나타낸 블록도이다.FIG. 6 is a block diagram illustrating an apparatus in which the block state transition method illustrated in FIG. 5 is executed.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

100 : 프레임 메모리 200 : 메모리 제어부100: frame memory 200: memory control unit

100-1~100-4 : 제1 내지 제4프레임 저장영역100-1 to 100-4: First to fourth frame storage areas

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 일실시예에 대해 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention.

도 1은 본 발명에서 채택한 프레임 메모리의 구조를 나타낸 것으로서, 프레임 메모리(100)는 복원된 영상 데이터 쓰기 동작, 움직임 보상을 위한 데이터 읽기 동작, 디스플레이를 위한 데이터 읽기 동작이 메모리 제어부(미도시)에 의해 제어되며, 버스트 길이(burst length)가 8인 SDRAM(Synchronous-DRAM)을 예로 들기로 한다. 프레임 메모리(100)는 뱅크 1과 뱅크 2의 두 개의 메모리 뱅크를 가지며, 뱅크 1에는 제1 및 제2프레임 저장영역(100-1,100-2)이 있고, 뱅크 2에는 제3 및 제4프레임 저장영역(100-3,100-4)이 있다. 여기서, 제1 내지 제4프레임 저장영역(100-1,100-2,100-3,100-4)은 각각 1 프레임 분량의 화소 데이터를 저장할 수 있는 용량을 가지며, 제1 내지 제4프레임 저장영역(100-1,100-2,100-3,100-4)은 각각 1,024 개의 행 어드레스(row address)를 가지고, 256워드(여기서, 1워드는 8비트)의 열 어드레스(column address)를 가진다. 그리고, 하나의 어드레스에는 8개의 Y 화소, 2개의 Cr 화소 및 2 개의 Cb 화소, 총 12 화소 데이터가 저장된다. 여기서, 1,024 개의 행 어드레스는 RAS 박스의 번호를 의미한다. 그리고, 256워드의 열 어드레스는 하나의 RAS 박스당 8개의 매크로블록*한개의 매크로블록당 32개의 화소(=256 화소)에 의해 나온 것이다.1 illustrates a structure of a frame memory adopted in the present invention, in which the frame memory 100 includes a restored image data write operation, a data read operation for motion compensation, and a data read operation for display to a memory controller (not shown). Synchronous-DRAM (SDRAM) controlled by a burst length of 8 will be taken as an example. The frame memory 100 has two memory banks, bank 1 and bank 2, bank 1 has first and second frame storage areas 100-1 and 100-2, and bank 2 stores third and fourth frames. There are regions 100-3 and 100-4. Here, the first to fourth frame storage areas 100-1, 100-2, 100-3, and 100-4 have a capacity for storing pixel data of one frame, respectively, and the first to fourth frame storage areas 100-1, 100-. 2,100-3 and 100-4 each have 1,024 row addresses, and have a column address of 256 words (where 1 word is 8 bits). One address stores eight Y pixels, two Cr pixels, two Cb pixels, and a total of 12 pixel data. Here, 1,024 row addresses mean the number of RAS boxes. The column address of 256 words is derived by 8 macroblocks per one RAS box * 32 pixels per macroblock (= 256 pixels).

한편, 프레임 메모리(100)의 실제 물리적인 행 어드레스(physical row address)는 제1 내지 제4프레임 저장영역(100-1~100-4)에 대하여 각각 000H~ 3FFH, 400H~ 7FFH, 800H~ BFFH, C00H~ FFFH로 할당된다. 그러나, 제1 내지 제4프레임 저장영역(100-1~100-4)은 각각 독립적으로 존재하며, 제1프레임 저장영역(100-1)의 소정 행 어드레스에 위치한 매크로블록에 대응하는 제2 및 제3프레임 저장영역(100-2,100-3)의 매크로블록은 동일한 행 어드레스를 가진다. 이와 같이, 제1 내지 제3프레임 저장영역(100-1~100-3) 내에서의 행 어드레스를 가상적인 행 어드레스(virtual row address)라 한다. 그리고, 움직임 보상시 도 2에 도시된 바와 같은 프레임 메모리(100)의 스케쥴링 순서에 의거하여, 참조 영상이 위치한 해당 저장영역에서의 가상적인 행 어드레스를 물리적인 행 어드레스로 변환시키는데 사용되는 어드레스를 프레임 옵셋 어드레스(frame offset address)라 하며, RA[11:10]라 둔다. 즉, RA[11:10]이 '00'이면 제1프레임 저장영역(100-1), '01'이면 제2프레임 저장영역(100-2), '10'이면 제3프레임 저장영역(100-3), '11'이면 제4프레임 저장영역(100-4)을 각각 나타낸다.The actual physical row address of the frame memory 100 is 000 H to 3FF H , 400 H to 7FF H for the first to fourth frame storage areas 100-1 to 100-4, respectively. , 800 H to BFF H and C00 H to FFF H. However, the first to fourth frame storage regions 100-1 to 100-4 exist independently, and the second and fourth frames corresponding to the macroblocks located at predetermined row addresses of the first frame storage region 100-1 are respectively provided. The macroblocks of the third frame storage areas 100-2 and 100-3 have the same row address. As such, the row address in the first to third frame storage areas 100-1 to 100-3 is referred to as a virtual row address. Then, based on the scheduling order of the frame memory 100 as shown in FIG. 2 during motion compensation, an address used to convert a virtual row address in a corresponding storage area in which a reference image is located into a physical row address is framed. It is called the frame offset address and is called RA [11:10]. That is, if RA [11:10] is '00', the first frame storage area 100-1, if '01', the second frame storage area 100-2, and if the '10', the third frame storage area 100 -3) and '11' indicate the fourth frame storage areas 100-4, respectively.

여기서, 제1 및 제2프레임 저장영역(100-1,100-2)은 복원된 I 픽쳐 혹은 움직임 보상된 P 픽쳐 영상 데이터를 움직임 보상을 위한 기준 영상으로 사용하는 것과 동시에 디스플레이하기 위하여 저장하는데 사용되고, 제3프레임 저장영역(100-3)은 움직임 보상된 B 픽쳐 영상 데이터를 디스플레이하기 위하여 저장하는데 사용되고, 제4프레임 저장영역(100-4)은 영상 복호화기로 입력되는 부호화된 비트스트림을 소정의 비트 단위로 저장하는데 사용된다.Here, the first and second frame storage areas 100-1 and 100-2 are used to store reconstructed I-picture or motion-compensated P-picture image data for use as a reference image for motion compensation and simultaneously for display. The three-frame storage area 100-3 is used to store the motion compensated B-picture image data, and the fourth frame storage area 100-4 stores the encoded bitstream input to the image decoder in units of predetermined bits. Used to save.

도 2는 도 1에 도시된 프레임 메모리(100)의 스케쥴링 순서를 나타낸 것으로서, 복호화 순서가 I,P,B,B,P,B,B,P,B,B,P,B,B,I,P,B,B,... 이고, 디스플레이 순서가 I,B,B,P,B,B,P,B,B,P,B,B,P,I,B,B,... 이고, 디스플레이 잠복기(display latency)가 2 픽쳐인 경우를 예로 든 것이다. 여기서, 밑줄이 그어져 있는 부분이 현재 복호화되고 있는 픽쳐를 나타내고, 화살표는 움직임 보상을 위해 참조되는 픽쳐를 나타내고, 'D'가 부가되어 있는 저장영역은 디스플레이를 위해 영상 데이터가 페치되고 있음을 나타낸다.FIG. 2 shows a scheduling order of the frame memory 100 shown in FIG. 1, and the decoding order is I, P, B, B, P, B, B, P, B, B, P, B, B, I. , P, B, B, ... and the display order is I, B, B, P, B, B, P, B, B, P, B, B, P, I, B, B, ... For example, the display latency is 2 pictures. Here, the underlined portion indicates the picture currently being decoded, the arrow indicates the picture to be referred for motion compensation, and the storage area to which 'D' is added indicates that image data is fetched for display.

도 3은 도 1에 도시된 프레임 메모리(100)에 있어서 1 프레임에 대한 RAS 박스 설정방법의 예를 나타낸 것으로서, 예를 들어 1 프레임이 1,920 화소*1,088 화소로 이루어지는 경우, 30 개 RAS 박스*34 개 RAS 박스, 총 1,020 개의 RAS(Row Address Strobe) 박스로 분할된다. 즉, RAS 박스의 번호가 프레임 메모리(100)의 행 어드레스(row address:RA)가 된다. 여기서, 하나의 RAS 박스는 4 개 매크로블록*2개 매크로블록, 총 8 개의 매크로블록(MB0~MB7)으로 이루어진다. 그리고, 각 매크로블록은 휘도(Y) 블록을 예로 들 경우, 4개의 블록(b0~b3)로 나누어진다.FIG. 3 shows an example of a method for setting a RAS box for one frame in the frame memory 100 shown in FIG. 1. For example, when one frame includes 1,920 pixels * 1,088 pixels, 30 RAS boxes * 34 It is divided into RAS boxes, a total of 1,020 Row Address Strobe (RAS) boxes. That is, the number of the RAS box is the row address (RA) of the frame memory 100. Here, one RAS box is composed of four macroblocks * 2 macroblocks and a total of eight macroblocks MB0 to MB7. Each macroblock is divided into four blocks b0 to b3 when the luminance Y block is taken as an example.

도 4는 도 3에 도시된 RAS 박스에 있어서 매크로블록 구조의 예를 나타낸 것으로서, 4개의 휘도(Y) 블록(b0~b3), 1개의 색차(Cr) 블록 및 1개의 색차(Cb) 블록으로 구성되고, 4개의 휘도(Y) 블록은 각각 8개의 박스(b0-0~b0-7, b1-0~b1-7, b2-0~b2-7, b3-0~b3-7)로 구성되고, 2개의 색차(Cr,Cb) 블록은 각각 8개의 서브 박스(sb0-0~sb0-7, sb1-0~sb1-7, sb2-0~sb2-7, sb3-0~sb3-7)로 구성된다. 그리고, Y 블록을 구성하는 각 박스에는 8*1 포맷의 8개의 화소 데이터, Cr 블록을 구성하는 각 박스에는 2*1 포맷의 2개의 화소 데이터, Cb 블록을 구성하는 각 박스에는 2*1 포맷의 2개의 화소 데이터가 존재한다.FIG. 4 shows an example of a macroblock structure in the RAS box shown in FIG. 3, with four luminance (Y) blocks b0 to b3, one color difference (Cr) block, and one color difference (Cb) block. Four luminance (Y) blocks are composed of eight boxes (b0-0 to b0-7, b1-0 to b1-7, b2-0 to b2-7, and b3-0 to b3-7), respectively. Each of the two color difference (Cr, Cb) blocks has eight sub boxes (sb0-0 to sb0-7, sb1-0 to sb1-7, sb2-0 to sb2-7, and sb3-0 to sb3-7). It consists of. Then, 8 pixel data in 8 * 1 format for each box constituting the Y block, 2 pixel data in 2 * 1 format for each box constituting the Cr block, and 2 * 1 format for each box constituting the Cb block. There are two pixel data of.

도 3 및 도 4에 있어서, 열어드레스(CA[7:0])를 살펴보면, 하나의 RAS 박스내에서의 매크로블럭의 위치를 CA[7:5], 해당 매크로블럭 내에서의 블럭의 위치를 CA[4:3], 해당 블럭내에서의 박스의 위치를 CA[2:0]이라 한다. 또한, 1 프레임내에서 행어드레스가 변경되는 라인을 RAS(Row Address Strobe) 라인, 열어드레스가 변경되는 라인을 CAS(Column Address Strobe) 라인이라 한다.3 and 4, when the open dress CA [7: 0] is examined, the position of the macro block in one RAS box is CA [7: 5] and the position of the block in the macro block. CA [4: 3], the position of the box in the block is called CA [2: 0]. In addition, a line in which the row address is changed in one frame is called a RAS line, and a line in which the open address is changed is called a CAS (Column Address Strobe) line.

도 5는 본 발명에 의한 어드레스 발생시 블럭상태 천이방법을 나타낸 상태도이다. 여기서는, 프레임 메모리(100)로 부터 하나의 매크로블록을 읽어오고자 할 때, 1 회 페치에 2개 블럭씩 페치하는 것으로 가정한다. 일반적인 경우, 블럭 b0, 블럭 b1을 페치한 다음, 소정 시간이 경과한 다음 블럭 b2, 블럭 b3를 페치한다. 그러나, 여기에는 다음과 같은 몇가지 예외적인 상황이 발생한다. 즉, 양방향 예측인 경우와 그렇지 않은 경우 블럭 페치 패턴이 변경되어야 하고, 1 프레임이 필드 구조의 매크로블럭으로 이루어지는데 비하여 프레임 예측이거나 필드 예측인 경우 블럭 페치 패턴이 변경되어야 한다. 몇가지 경우에 대하여 예를 들면 다음과 같다.5 is a state diagram illustrating a method for transitioning a block state when an address is generated according to the present invention. Herein, when one macroblock is to be read from the frame memory 100, it is assumed that two blocks are fetched in one fetch. In general, blocks b0 and b1 are fetched, and then a predetermined time elapses, then blocks b2 and b3 are fetched. However, there are some exceptions to this. That is, in the case of bidirectional prediction, otherwise, the block fetch pattern should be changed, and in the case of frame prediction or field prediction, the block fetch pattern should be changed, whereas one frame is composed of macroblocks of the field structure. Some examples are as follows.

첫째, mb_forward='1', mb_backward(도 5에서는 mb_b라 약함)='1'이고 즉 양방향 예측이고, 움직임 형태(motion_type;도 5에서는 mt라 약함)가 필드 예측인 경우에는, b0, b1, b0, b1, b2, b3, b2, b3 순으로 블럭을 페치한다.First, when mb_forward = '1', mb_backward (weak mb_b in FIG. 5) = '1', that is, bidirectional prediction, and motion type (motion_type (weak in mt in FIG. 5) is field prediction), b0, b1, Fetch blocks in the order b0, b1, b2, b3, b2, b3.

둘째, mb_forward='0', mb_backward='1'이고 즉 역방향 예측이고, 움직임 형태가 필드 예측인 경우에는, b0, b1, b2, b3 순으로 블럭을 페치한다.Second, when mb_forward = '0', mb_backward = '1', that is, backward prediction, and the motion type is field prediction, the blocks are fetched in the order of b0, b1, b2, and b3.

셋째, mb_forward='1', mb_backward='0'이고 즉 순방향 예측이고, 움직임 형태가 프레임 예측인 경우에는, b0, b2, b1, b3 순으로 블럭을 페치한다.Third, when mb_forward = '1', mb_backward = '0', that is, forward prediction, and the motion type is frame prediction, the blocks are fetched in the order of b0, b2, b1, and b3.

그러면, 도 5를 참조하여 상기한 세가지 경우 이외의 상황에 대하여 살펴보기로 한다.Next, a situation other than the above three cases will be described with reference to FIG. 5.

도 5에 있어서, 초기에는 "IDLE' 상태에 있다가, 매크로블럭의 시작을 나타내는 "pds" 신호가 '1'이면 "블럭 b0" 상태로 천이한다. "블럭 b0" 상태에서는 움직임 추정 및 보상 모드를 검사하여, 움직임 추정 및 보상 모드가 필드 혹은 16*8인 경우에는 "블럭 b1" 상태로 천이한다. "블럭 b1" 상태에서는 매크로블럭 패턴을 검사하여, 양방향 예측(즉, mb_b='1')이면 mb_b를 클리어시키면서 "블럭 b0" 상태, "블럭 b1" 상태로 순차적으로 천이한다. 한편, "블럭 b1" 상태에서 mb_b='1'이 아니면 매크로블럭 패턴을 업데이트시키면서 "블럭 b2", "블럭 b3" 상태로 순차적으로 천이한다. "블럭 b3" 상태에서는 매크로블럭 패턴을 검사하여, 양방향 예측(즉, mb_b='1')이면 mb_b를 클리어시키면서 "블럭 b2" 상태, "블럭 b3" 상태로 순차적으로 천이한다. 한편, "블럭 b3" 상태에서 mb_b='1'이 아니면 "IDLE" 상태로 천이한다.In Fig. 5, it is initially in the "IDLE" state, and then transitions to the "block b0" state when the "pds" signal indicating the start of the macroblock is "1." In the "block b0" state, the motion estimation and compensation mode is performed. When the motion estimation and compensation mode is a field or 16 * 8, the state transitions to the "block b1" state, and in the "block b1" state, the macroblock pattern is examined and bidirectional prediction (i.e., mb_b = '1') is performed. ), The transition to the "block b0" state and the "block b1" state is cleared while mb_b is cleared, while the "block b2" and "block b2" and " Block b3 "state. In the" block b3 "state, the macroblock pattern is examined, and in the case of bidirectional prediction (i.e., mb_b = '1'), mb_b is cleared while the" block b2 "state and" block b3 "state. Transitions sequentially to "block b3", unless mb_b = '1'. Transition to the "IDLE" state.

다음, "IDLE' 상태에서 매크로블럭의 시작을 나타내는 "pds" 신호가 '1'이면 "블럭 b0" 상태로 천이한다. "블럭 b0" 상태에서는 움직임 추정 및 보상 모드를 검사하여, 움직임 추정 및 보상 모드가 프레임 혹은 듀얼 프라임인 경우에는 "블럭 b2" 상태로 천이한다. "블럭 b2" 상태에서는 매크로블럭 패턴을 검사하여, 양방향 예측(즉, mb_b='1')이면 mb_b를 클리어시키면서 "블럭 b0" 상태, "블럭 b2" 상태로 순차적으로 천이한다. 한편, "블럭 b2" 상태에서 mb_b='1'이 아니면 매크로블럭 패턴을 업데이트시키면서 "블럭 b1", "블럭 b3" 상태로 순차적으로 천이한다. "블럭 b3" 상태에서는 매크로블럭 패턴을 검사하여, 양방향 예측(즉, mb_b='1')이면 mb_b를 클리어시키면서 "블럭 b1" 상태, "블럭 b3" 상태로 순차적으로 천이한다. 한편, "블럭 b3" 상태에서 mb_b='1'이 아니면 "IDLE" 상태로 천이한다.Next, when the "pds" signal indicating the start of the macroblock in the "IDLE" state is "1", the state transitions to the "block b0" state. In the "block b0" state, the motion estimation and compensation mode is checked to determine the motion estimation and compensation. When the mode is frame or dual prime, the state transitions to the "block b2" state. In the "block b2" state, the macroblock pattern is examined, and in the bidirectional prediction (ie, mb_b = '1'), mb_b is cleared and "block b0" is checked. Transition to "block b2" state sequentially while transitioning to "block b1" and "block b3" states while updating the macroblock pattern if mb_b = '1' is not in the "block b2" state In the " block b3 " state, the macroblock pattern is examined, and in the case of bidirectional prediction (i.e., mb_b = '1'), mb_b is cleared and the block is sequentially shifted to the " block b1 " state and " block b3 " state. Block b3 "state, if mb_b = '1', then" IDLE "state Transition

상술한 상태 천이를 요약하면, 움직임 추정 및 보상모드가 필드 혹은 16*8 이고, 순방향 예측인 경우에는 "블럭 b0"→ "블럭 b1"→ "블럭 b2"→ "블럭 b3"로 상태천이하고, 움직임 추정 및 보상모드가 필드 혹은 16*8이고, 양방향 예측인 경우에는 "블럭 b0"→ "블럭 b1"→ "블럭 b0"→ "블럭 b1"→ "블럭 b2"→ "블럭 b3"→ "블럭 b2"→ "블럭 b3"로 상태천이한다. 한편, 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고, 순방향 예측인 경우에는 "블럭 b0"→ "블럭 b2"→ "블럭 b1"→ "블럭 b3"로 상태천이하고, 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고, 양방향 예측인 경우에는 "블럭 b0"→ "블럭 b2"→ "블럭 b0"→ "블럭 b2"→ "블럭 b1"→ "블럭 b3"→ "블럭 b1"→ "블럭 b3"로 상태천이한다.Summarizing the above state transitions, the motion estimation and compensation mode is a field or 16 * 8, and in the case of forward prediction, state transitions from "block b0" to "block b1" to "block b2" to "block b3", If the motion estimation and compensation mode is field or 16 * 8, and bidirectional prediction, "block b0"-> "block b1"-> "block b0"-> "block b1"-> "block b2"-" block b3 " b2 "→ State transition from" block b3 ". On the other hand, when the motion estimation and compensation mode is frame or dual prime, and in the forward prediction, the state transitions from "block b0" to "block b2" → "block b1" to "block b3", and the motion estimation and compensation mode is framed. Or in the case of dual prime and bidirectional prediction, "block b0"-> "block b2"-> "block b0"-> "block b2"-" block b1 " → " block b3 " → " block b1 " → " block b3 " State transition.

도 6은 도 5에 도시된 블럭상태 천이방법이 실행되는 장치를 나타낸 블록도로서, 통상 메모리 제어부(200)에서 수행된다. 즉, 메모리 제어부(200)는 움직임 보상하고자 하는 픽쳐에 있어서 현재 매크로블록의 시작 어드레스, 움직임 벡터 및 각종 파라미터들을 입력하여, 참조하고자 하는 픽쳐의 해당 매크로블록을 블럭 단위 혹은 박스 단위로 페치하기 위한 어드레스를 어드레스 버스를 통해 프레임 메모리(100)로 인가한다. 이와 아울러, 프레임 메모리(100)의 쓰기 및 읽기 동작을 제어하기 위한 각종 제어신호들을 프레임 메모리(100)로 인가한다.FIG. 6 is a block diagram illustrating an apparatus in which the block state transition method of FIG. 5 is executed, and is typically performed by the memory controller 200. That is, the memory controller 200 inputs a start address, a motion vector, and various parameters of a current macroblock in a picture to be motion compensated, and fetches a corresponding macroblock of a picture to be referred to in units of blocks or boxes. Is applied to the frame memory 100 via the address bus. In addition, various control signals for controlling write and read operations of the frame memory 100 are applied to the frame memory 100.

한편, 상기한 상세한 설명은 여기에 제시된 특정의 실시예를 설명하고자 한 것이며, 본 발명을 한정하려는 의도는 아니다. 당업자라면, 상기한 상세한 설명 및 도면을 참조하여 본 발명의 기술적 사상내에서 RAS 박스의 구조 및 매크로블록 블록의 구조에 따라 여러 가지 변형 및 수정을 가할 수 있을 것이다.On the other hand, the above detailed description is intended to describe particular embodiments presented herein and is not intended to limit the present invention. Those skilled in the art may make various changes and modifications according to the structure of the RAS box and the structure of the macroblock block within the technical spirit of the present invention with reference to the above detailed description and drawings.

상술한 바와 같이 본 발명에 따르면, 제1 내지 제4프레임 저장영역이 하나의 메모리 모듈 상에 구현된 프레임 메모리에 있어서, 예측된 매크로블록을 프레임 메모리로 부터 읽어오기 위해 행 어드레스와 열 어드레스를 발생시킬 경우, 해당 매크로블럭의 움직임 추정 및 보상모드와 매크로블럭 패턴에 따라서 페치해야 할 블럭 상태를 천이시킬 수 있다.As described above, in the frame memory in which the first to fourth frame storage areas are implemented on one memory module, a row address and a column address are generated to read the predicted macroblock from the frame memory. In this case, the block state to be fetched can be shifted according to the motion estimation and compensation mode and the macroblock pattern of the macroblock.

Claims (2)

각각 소정의 RAS 박스 구조와 소정의 매크로블록 구조를 가지며 1 프레임 분의 영상신호를 저장하는 제1 내지 제4프레임 저장영역으로 이루어진 프레임 메모리에 있어서, 움직임 보상에 의해 예측된 매크로블럭의 휘도 블럭 b0 내지 블럭 b3을 페치하는 경우,A frame memory comprising first to fourth frame storage areas each having a predetermined RAS box structure and a predetermined macroblock structure and storing one frame of an image signal, the luminance block b0 of the macroblock predicted by motion compensation. To fetch block b3, 상기 예측된 매크로블럭의 움직임 추정 및 보상모드를 검사하는 제1검사단계;A first inspection step of examining a motion estimation and a compensation mode of the predicted macroblock; 상기 예측된 매크로블럭의 매클록블럭 패턴을 검사하는 제2검사단계;A second inspection step of inspecting the macroblock pattern of the predicted macroblock; 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 필드 혹은 16*8이고 매크로블럭 패턴이 순방향 예측인 경우, 상기 블럭 b0 상태에서 블럭 b1, 블럭 b2, 블럭 b3 상태 순으로 천이하면서 페치하는 단계;As a result of the inspection in the first and second inspection steps, when the motion estimation and compensation mode is a field or 16 * 8 and the macroblock pattern is forward prediction, in the block b0 state, block b1, block b2, and block b3 states Fetching while transitioning; 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고 매크로블럭 패턴이 순방향 예측인 경우, 상기 블럭 b0 상태에서 블럭 b2, 블럭 b1, 블럭 b3 상태 순으로 천이하면서 페치하는 단계;As a result of the inspection in the first and second inspection steps, when the motion estimation and compensation mode is frame or dual prime and the macroblock pattern is forward prediction, transition from block b0 state to block b2, block b1, block b3 state Fetching while; 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 필드 혹은 16*8이고 매크로블럭 패턴이 양방향 예측인 경우, 블럭 b0 상태에서 블럭 b1, 블럭 b0 상태, 블럭 b1, 블럭 b2, 블럭 b3, 블럭 b2, 블럭 b3 상태 순으로 천이하면서 페치하는 단계; 및As a result of the inspection in the first and second inspection steps, when the motion estimation and compensation mode is a field or 16 * 8 and the macroblock pattern is bidirectional prediction, in the block b0 state, block b1, block b0 state, block b1, block b2 Fetching while transitioning to block b3, block b2, and block b3 states; And 상기 제1 및 제2검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임이고 매크로블럭 패턴이 양방향 예측인 경우, 블럭 b0 상태에서 블럭 b2, 블럭 b0 상태, 블럭 b2, 블럭 b1, 블럭 b3, 블럭 b1, 블럭 b3 상태 순으로 천이하면서 페치하는 단계를 포함하는 것을 특징으로 하는 프레임 메모리에 있어서 어드레스 발생시 블럭상태 천이방법.As a result of the inspection in the first and second inspection steps, when the motion estimation and compensation mode is frame or dual prime and the macroblock pattern is bidirectional prediction, in block b0 state, block b2, block b0 state, block b2, block b1, And a step of fetching and transitioning in the order of block b3, block b1, and block b3 states. 각각 소정의 RAS 박스 구조와 소정의 매크로블록 구조를 가지며 1 프레임 분의 영상신호를 저장하는 제1 내지 제4프레임 저장영역으로 이루어진 프레임 메모리에 있어서, 움직임 보상에 의해 예측된 매크로블럭의 휘도 블럭 b0 내지 블럭 b3을 페치하는 경우,A frame memory comprising first to fourth frame storage areas each having a predetermined RAS box structure and a predetermined macroblock structure and storing one frame of an image signal, the luminance block b0 of the macroblock predicted by motion compensation. To fetch block b3, 매크로블럭의 시작을 나타내는 신호가 인가되면 블럭 b0 상태로 천이하는 단계;Transitioning to a block b0 state when a signal indicating the start of the macroblock is applied; 상기 블럭 b0 상태에서 상기 예측된 매크로블럭의 움직임 추정 및 보상모드를 검사하는 제1검사단계;A first checking step of checking a motion estimation and a compensation mode of the predicted macroblock in the block b0 state; 상기 제1검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 필드 혹은 16*8인 경우, 상기 블럭 b0 상태에서 블럭 b1 상태로 천이하는 제1천이단계;A first transition step of transitioning from the block b0 state to the block b1 state if the motion estimation and compensation mode is a field or 16 * 8 in the first inspection step; 상기 제1검사단계에서의 검사 결과, 움직임 추정 및 보상모드가 프레임 혹은 듀얼 프라임인 경우, 상기 블럭 b0 상태에서 블럭 b2 상태로 천이하는 제2천이단계;A second transition step of transitioning from the block b0 state to the block b2 state when the motion estimation and compensation mode is a frame or dual prime in the first inspection step; 상기 제1 및 제2천이단계에서 각각 천이된 블럭 b1 상태와 블럭 b2 상태에서 상기 예측된 매크로블럭의 매크로블럭 패턴을 각각 검사하는 제2검사단계;A second inspection step of examining the macroblock patterns of the predicted macroblocks in the block b1 state and the block b2 state respectively transitioned in the first and second transition steps; 상기 제2검사단계에서의 검사 결과 매크로블럭 패턴이 순방향 예측인 경우, 상기 블럭 b1 상태에서 블럭 b2, 블럭 b3 상태로 천이하고, 상기 블럭 b2 상태에서 블럭 b1, 블럭 b3 상태로 천이하는 제3천이단계; 및In the second inspection step, when the macroblock pattern is the forward prediction, a third transition is made from the block b1 state to the block b2 and the block b3 states, and from the block b2 state to the block b1 and block b3 states. step; And 상기 제2검사단계에서의 검사 결과 매크로블럭 패턴이 양방향 예측인 경우, 상기 블럭 b1 상태에서 블럭 b0, 블럭 b1, 블럭 b2, 블럭 b3, 블럭 b2, 블럭 b3 상태로 천이하고, 상기 블럭 b2 상태에서 블럭 b0, 블럭 b2, 블럭 b1, 블럭 b3, 블럭 b1, 블럭 b3 상태로 천이하는 제4천이단계를 포함하는 것을 특징으로 하는 프레임 메모리에 있어서 어드레스 발생시 블럭상태 천이방법.If the macroblock pattern is bidirectional predicted as a result of the inspection in the second inspection step, the block b1 state is changed to block b0, block b1, block b2, block b3, block b2, block b3, and in the block b2 state. And a fourth transition step of transitioning to the block b0, block b2, block b1, block b3, block b1, and block b3 states.
KR1019970022368A 1997-05-31 1997-05-31 Method for transitioning a state of blocks during address generation in a frame memory KR100248653B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970022368A KR100248653B1 (en) 1997-05-31 1997-05-31 Method for transitioning a state of blocks during address generation in a frame memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970022368A KR100248653B1 (en) 1997-05-31 1997-05-31 Method for transitioning a state of blocks during address generation in a frame memory

Publications (2)

Publication Number Publication Date
KR19980086109A KR19980086109A (en) 1998-12-05
KR100248653B1 true KR100248653B1 (en) 2000-03-15

Family

ID=19508126

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970022368A KR100248653B1 (en) 1997-05-31 1997-05-31 Method for transitioning a state of blocks during address generation in a frame memory

Country Status (1)

Country Link
KR (1) KR100248653B1 (en)

Also Published As

Publication number Publication date
KR19980086109A (en) 1998-12-05

Similar Documents

Publication Publication Date Title
KR100248653B1 (en) Method for transitioning a state of blocks during address generation in a frame memory
KR100243469B1 (en) Address generator in frame memory
KR100235486B1 (en) Method for compensating a slice position during an address generation 0f a predicted macroblock in a frame memory and circuit using the same
KR100243473B1 (en) Apparatus for compensating a motion vector during an address generation of a predicted macroblock in a frame memory
KR100235485B1 (en) Method for compensating a reference point during an address generation 0f a predicted macroblock in a frame memory and circuit using the same
KR100226705B1 (en) Method for transitioning a frame memory during address generation and apparatus using the same
KR100255795B1 (en) Method for compensating a reference point during an address generation of a predicted macroblock with consisting of a half pel in a frame memory
KR100243475B1 (en) Jump address generator in frame memory
KR100243471B1 (en) Address generator in frame memory
KR100243470B1 (en) Address generator in frame memory
KR100255221B1 (en) Method for compensating a pel address and counter for compensating a box in case of compensating a half-pel in a frame memory
KR100243474B1 (en) Jump address generator in frame memory
KR19990005602A (en) Dual Prime Field Prediction Method in Frame Memory
KR100226702B1 (en) Method for transitioning block status during address generation in a frame memory
KR100243478B1 (en) Method for compensating a moving vector during an address generation of a predicted macroblock with consisting of a half pel in a frame memory
KR100226703B1 (en) Method for calculating address distances in a frame memory
KR19990019198A (en) Slice Position Compensation Method for Address Generation of Predicted Macroblock in Frame Memory
KR100269427B1 (en) Method for generating address in a frame memory
KR100243472B1 (en) Method for reading a field-pictured macroblock in a frame memory
KR100226704B1 (en) Method for calculating address distances in a frame memory
KR19990026428A (en) Address generator in frame memory
KR19990026427A (en) Motion vector distance calculation method in frame memory
KR19990032813A (en) Address distance calculation method in frame memory
KR19990026426A (en) Address generator in frame memory
KR19990005587A (en) Jump address generator in frame memory

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: 20031126

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee