KR100235488B1 - Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory - Google Patents

Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory Download PDF

Info

Publication number
KR100235488B1
KR100235488B1 KR1019970042511A KR19970042511A KR100235488B1 KR 100235488 B1 KR100235488 B1 KR 100235488B1 KR 1019970042511 A KR1019970042511 A KR 1019970042511A KR 19970042511 A KR19970042511 A KR 19970042511A KR 100235488 B1 KR100235488 B1 KR 100235488B1
Authority
KR
South Korea
Prior art keywords
block
frame memory
pixel
box
data
Prior art date
Application number
KR1019970042511A
Other languages
Korean (ko)
Other versions
KR19990019195A (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 KR1019970042511A priority Critical patent/KR100235488B1/en
Publication of KR19990019195A publication Critical patent/KR19990019195A/en
Application granted granted Critical
Publication of KR100235488B1 publication Critical patent/KR100235488B1/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/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/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

본 발명은 프레임 메모리의 독출 방법에 따른 출력 데이터 재배열장치에 관한 것이다.The present invention relates to an output data rearrangement apparatus according to a method of reading a frame memory.

이러한 본 발명의 장치는, 움직임 보상시 참조를 위한 화소 데이터를 매크로블록 단위로 저장하는 필드 구조의 프레임 메모리(300)에 있어서, 종래의 첫 번째 블록, 두 번째 블록, 세 번째 블록순으로 프레임 메모리(300)를 독출하는 방법과 달리 본 발명에서는 첫 번재 블록을 독출한 후 두 번째, 세 번째 블록을 함께 독출하기 위하여, 예측된 매크로블록의 화소 데이터를 기준 포인트(R.P)가 위치한 1개 블록과 기준 포인터가 위치한 블록의 다음 블록에서부터 우측의 진행 방향으로 2개 블록에 걸쳐 상기 프레임 메모리(300)로부터 박스 단위로 순차적으로 독출하여 저장하는 데이터 저장부(310), 및 상기 데이터 저장부(310)로부터 3개 블록에 걸쳐 박스 단위로 출력되는 화소 데이터를 상기 예측된 매크로블록의 기준 포인트(R.P)의 화소 어드레스(P.A)에 따라서 소정 횟수만큼 쉬프팅함으로써, 상기 예측된 매크로블록에 해당하는 유효 화소 데이터를 반화소까지 고려하여 추출하는 데이터 소팅부(350)로 구성된다. 따라서 예측된 매크로블록의 기준 포인트의 화소 어드레스에 따라서 최대 3개 블록에 걸쳐 박스 단위로 읽은 다음, 최대 7회 만큼 좌로 쉬프팅시킴으로써, 예측된 매크로블록에 해당하는 화소 데이터로 재배열할 수 있다.Such an apparatus of the present invention is a frame memory 300 having a field structure for storing pixel data for reference in motion compensation in macroblock units, and includes a conventional frame memory in order of first block, second block, and third block. Unlike the method of reading 300, in the present invention, in order to read the second and third blocks together after reading the first block, the pixel data of the predicted macroblock is one block in which the reference point RP is located. And a data storage unit 310 which sequentially reads and stores the frame memory 300 in a box unit from two blocks in a progressing direction to the right from the next block of the block where the reference pointer is located, and the data storage unit 310. Pixel data output in units of boxes over three blocks according to the pixel address PA of the reference point RP of the predicted macroblock. By shifting by positive number, it comprises the effective pixel data corresponding to the predictive macro block with the data sorting unit 350 for extracting considering up to half a pixel. Therefore, by reading a box unit over a maximum of three blocks in accordance with the pixel address of the reference point of the predicted macroblock, and shifting left by up to seven times, it is possible to rearrange the pixel data corresponding to the predicted macroblock.

Description

프레임 메모리의 독출 방법에 따른 출력 데이터 재배열장치(Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory)Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory

본 발명은 움직임 보상장치에 관한 것으로서, 특히 프레임 메모리의 출력 데이터를 재배열하기 위한 장치에 관한 것이다.The present invention relates to a motion compensation device, and more particularly, to an apparatus for rearranging output data of a frame memory.

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.

프레임 메모리는 이와 같이 움직임 보상을 위한 참조영상인 이전 영상의 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 has 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 therefore, the price is expensive, and thus, 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.

이에 본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로, 움직임 보상시 참조 영상 데이터를 저장하는 영역, 디스플레이를 위해 복호화가 완료된 영상 데이터를 저장하는 영역 및 영상 복호화기로 입력되는 부호화된 비트스트림을 저장하는 영역이 하나의 메모리 모듈 상에 구현된 프레임 메모리에 있어서, 현재 매크로블록의 시작 어드레스 및 움직임 벡터에 의해 예측된 매크로블록에 해당하는 화소 데이터를 최대 3개 블록에 걸쳐 박스 단위로 독출한 후, 예측된 매크로블록에 해당하는 화소 데이터로 재배열하기 위한 장치를 제공하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above problems, and includes a region for storing reference image data, a region for storing decoded image data for display, and an encoded bitstream input to an image decoder. In a frame memory in which an area to be stored is implemented on one memory module, pixel data corresponding to a macroblock predicted by a start address and a motion vector of a current macroblock is read in box units over a maximum of three blocks. It is an object of the present invention to provide an apparatus for rearranging pixel data corresponding to a predicted macroblock.

상기와 같은 목적을 제공하기 위한 본 발명의 장치는, 움직임 보상시 참조를 위한 화소 데이터를 매크로블록 단위로 저장하는 필드 구조의 프레임 메모리에 있어서, 움직임 보상하고자 하는 현재 매크로블록의 시작 어드레스와 움직임 벡터로 부터 예측된 매크로블록의 화소 데이터를 기준 포인트(R.P)가 위치한 1개 블록과 기준 포인터가 위치한 블록의 다음 블록에서부터 우측의 진행 방향으로 2개 블록에 걸쳐 상기 프레임 메모리로부터 박스 단위로 순차적으로 독출하여 저장하는 데이터 저장부, 및 상기 데이터 저장부로부터 3개 블록에 걸쳐 박스 순으로 출력되는 화소 데이터를 상기 예측된 매크로블록의 기준 포인트(R.P)의 화소 어드레스(P.A)에 따라서 소정 횟수만큼 쉬프팅함으로써, 상기 예측된 매크로블록에 해당하는 유효 화소 데이터를 반화소까지 고려하여 추출하는 데이터 소팅부를 포함하는 것을 특징으로 한다.An apparatus of the present invention for providing the above object, in the frame memory of the field structure for storing the pixel data for reference in the motion block in macroblock units, the start address and the motion vector of the current macroblock to be motion compensated The pixel data of the macroblock predicted from is sequentially read out from the frame memory in units of two blocks in the direction of progress toward the right from one block in which the reference point RP is located and the next block of the block in which the reference pointer is located. And shifting the pixel data output in the box order over the three blocks from the data storage unit by a predetermined number of times according to the pixel address PA of the reference point RP of the predicted macroblock. Half-pixel the effective pixel data corresponding to the predicted macroblock. It is characterized in that it comprises a data sorting unit to be extracted in consideration.

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

도 2는 도 1에 도시된 프레임 메모리에 있어서 1 프레임에 대한 RAS 박스 설정방법 의 일 예를 나타낸 도면,FIG. 2 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;

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

도 4a 및 도 4b는 예측된 매크로블록의 위치에 대한 일 예를 나타낸 도면,4A and 4B illustrate an example of a position of a predicted macroblock;

도 5a 및 도 5b는 본 발명에 의한 프레임 메모리의 독출 방법에 따른 출력 데이터5A and 5B illustrate output data according to a method of reading a frame memory according to the present invention.

재배열장치의 구성을 나타낸 블록도이다.It is a block diagram which shows the structure of a rearrangement apparatus.

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

200 : 메모리 제어부 300 : 프레임 메모리200: memory controller 300: frame memory

310 : 데이터 저장부 330 : FIFO310: data storage unit 330: FIFO

350 : 데이터 소팅부 35a~35g : 제1 내지 제7쉬프팅기350: data sorting unit 35a to 35g: first to seventh shifting machine

F11~F18,F41~F64 : 플립플롭 L11~L1,L2,L3,L41~L47 : 래치F11 ~ F18, F41 ~ F64: Flip-flop L11 ~ L1, L2, L3, L41 ~ L47: Latch

M1~M23 : 멀티플렉서 C1~C7 : 카운터M1 ~ M23: Multiplexer C1 ~ C7: Counter

300-1~300-4 : 제1 내지 제4프레임 저장영역 500 : 공통 버스300-1 to 300-4: First to fourth frame storage areas 500: Common bus

이하, 첨부된 도면을 참조하여 본 발명에 따른 실시예에 대하여 자세히 살펴보기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에서 채택한 프레임 메모리의 구조를 나타낸 것으로서, 프레임 메모리(100)는 복원된 영상 데이터 쓰기 동작, 움직임 보상을 위한 데이터 읽기 동작, 디스플레이를 위한 데이터 읽기 동작이 메모리 제어부(미도시)에 의해 제어되며, SRAM을 예로 들기로 한다. 프레임 메모리(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). Controlled by SRAM. 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. And the 256-word column address comes from (8 macroblocks per RAS box * 32 boxes per macroblock = 256 boxes).

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

도 3은 도 2에 도시된 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. 3 shows an example of a macroblock structure in the RAS box shown in FIG. 2, 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. 8 pixel data in 8 * 1 format is included in each box constituting the Y block, 2 pixel data in 2 * 1 format is formed in each sub box constituting the Cr block, and 2 * is in each sub box constituting the Cb block. There are two pixel data in one format.

본 발명에 적용되는 프레임 메모리는 필드 구조로 맵핑되어 있는 바, 도 4a는 상위 필드에 있어서 예측된 매크로블록(MBp)의 위치에 대한 일 예를 나타낸 것이고 도 4b는 하위 필드에 있어서 예측된 매크로블록(MBp)의 위치에 대한 일 예를 나타낸 것으로, 움직임 보상하고자 하는 현재 매크로블록의 시작 어드레스 및 움직임 벡터에 의해 예측된 매크로블록(MBp)이 4개의 매크로블록 즉, 매크로블록(MB7), 매크로블록(MB8), 매크로블록(MB127)과 매크로블록(MB128)에 걸쳐 위치하는 예를 나타낸 것이다. 달리 말하면, 예측된 매크로블록(MBp)이 4개의 RAS 박스 즉, RAS박스 0, RAS박스 1, RAS박스 15와 RAS박스 16에 걸쳐 위치한다. 그리고 도 4a내지 4b에 도시된 바와 같이 기본 리드 스캐일로서 2개 블록단위로 읽기 위해서는 6개의 점프 어드레스(JA0~JA5)가 요구된다.The frame memory applied to the present invention is mapped to a field structure. FIG. 4A shows an example of the position of the predicted macroblock MBp in the upper field, and FIG. 4B shows the predicted macroblock in the lower field. As an example of the position of (MBp), the macroblock MBp predicted by the start address and the motion vector of the current macroblock to be motion compensated is divided into four macroblocks, that is, the macroblock MB7 and the macroblock. An example is shown of the symbol MB8, the macroblock MB127, and the macroblock MB128. In other words, the predicted macroblock (MBp) is located across four RAS boxes, RAS box 0, RAS box 1, RAS box 15 and RAS box 16. As shown in FIGS. 4A to 4B, six jump addresses JA0 to JA5 are required to read in two block units as a basic read scale.

도 5a 및 도 5b는 본 발명에 따른 프레임 메모리의 독출 방법에 따른 출력 데이터 재배열 장치를 도시한 블록도로서, 크게 메모리 제어부(200), 프레임 메모리(300), 데이터 저장부(310), 데이터 소팅부(350) 및 공통 버스(500)로 구성된다. 또한, 데이터 저장부(310)는 FIFO(330)와 제2 내지 제3 래치(L2,L3)로 이루어진다. 상기 FIFO(330)는 상측 또는 하측의 반화소를 고려하여 파이프라인 형태인 9개의 박스군(33a~33i)으로 구성된다. 여기서, 제1 박스군(33a)을 제외한 각각의 박스군(33b~33i)은 동일한 구성을 가지며, 예를 들어 박스군(33b)의 경우 래치(L11)와 8개의 플립플롭(F11~F18)으로 이루어진다. 한편, 데이터 소팅부(350)는 제1 내지 제7쉬프팅기(35a~35g)로 이루어진다. 여기서, 제1 내지 제7쉬프팅기(35a~35g)는 도 5b에서와 같이 파이프라인 형태로 동일한 구성을 가지며, 예를 들어 제1쉬프팅기(35a)의 경우 한 개의 래치(L41), 23개의 멀티플렉서(M1~M23), 한 개의 카운터(C1) 및 24개의 플립플롭(F41~F64)로 이루어진다.5A and 5B are block diagrams illustrating an output data rearrangement apparatus according to a method of reading a frame memory according to an exemplary embodiment of the present invention. The memory control unit 200, the frame memory 300, the data storage unit 310, and the data are largely shown. It is composed of a sorting unit 350 and the common bus 500. In addition, the data storage unit 310 includes a FIFO 330 and second to third latches L2 and L3. The FIFO 330 is composed of nine box groups 33a to 33i in a pipeline form in consideration of upper and lower half pixels. Here, each of the box groups 33b to 33i except for the first box group 33a has the same configuration. For example, in the case of the box group 33b, the latch L11 and the eight flip-flops F11 to F18 are used. Is done. The data sorting unit 350 may include first to seventh shifters 35a to 35g. Here, the first to seventh shifters 35a to 35g have the same configuration in a pipeline form as shown in FIG. 5B. For example, in the case of the first shifter 35a, one latch L41 and 23 It consists of multiplexers M1-M23, one counter C1, and 24 flip-flops F41-F64.

그러면, 본 발명의 작용 및 효과에 대하여 도 1 내지 도 5를 참조하여 상세히 설명하면 다음과 같다. 여기서, 움직임 형태가 필드 추정 및 보상인 경우의 휘도신호를 예로 들기로 한다.Then, the operation and effects of the present invention will be described in detail with reference to FIGS. 1 to 5. Here, the luminance signal in the case where the motion form is the field estimation and compensation will be taken as an example.

발생할 수 있는 최악의 경우(worst case)를 고려하기 위하여, 움직임 보상하고자 하는 현재 매크로블록의 시작 어드레스 즉, 슬라이스 위치(slice-position) 및 매크로블록 위치(mb-position)와, 수직 및 수평 움직임 벡터로 부터 예측된 매크로블록(MBp)이 도 4에서와 같이 위치하는 경우를 살펴보기로 한다.In order to consider the worst case that may occur, the starting address of the current macroblock to be motion compensated, that is, the slice position and the macroblock position (mb-position), and the vertical and horizontal motion vectors The case in which the macroblock MBp predicted from is located as shown in FIG. 4 will be described.

도 4에 있어서, 예측된 매크로블록(MBp)에 해당하는 화소 데이터는 박스 단위 즉, 8 화소 단위로 읽혀진다. 따라서, 주사 패턴이 도 4에 도시된 바와 같은 순서에 의하고, 예측된 매크로블록(MBp)을 2 개 블록 단위로 읽을 경우, 먼저 기준 포인트(R.P)가 위치하는 매크로블록(MB7)의 블록(b3)의 박스(b3-2)에서부터 8개의 박스가 읽혀져 공통 버스(500) 상에 올려진다. 이어서 다음 매크로블록(MB8)의 블록(b2)의 박스(b2-2)와 매크로블록(MB8)의 블록(b3)의 박스(b3-2)의 2개 박스가 읽혀지고, 매크로블록(MB128)의 블록(b2)의 박스(b2-0)와 매크로블록(MB128)의 블록(b3)의 박스(b3-0)까지 순차적으로 2개씩의 박스가 읽혀져, 두 블록에 걸친 16개의 박스가 공통버스(500)상에 올려진다.In FIG. 4, pixel data corresponding to the predicted macroblock MBp is read in box units, that is, in units of 8 pixels. Therefore, when the scanning pattern is in the order as shown in FIG. 4 and the predicted macroblock MBp is read in units of two blocks, the block b3 of the macroblock MB7 in which the reference point RP is located first is read. Eight boxes are read from the box b3-2 and loaded onto the common bus 500. Subsequently, two boxes of the box b2-2 of the block b2 of the next macroblock MB8 and the box b3-2 of the block b3 of the macroblock MB8 are read, and the macroblock MB128 Two boxes are read sequentially from the box b2-0 of the block b2 of the block to the box b3-0 of the block b3 of the macroblock MB128. It is put on 500.

이와 같이 박스 단위로 화소 데이터를 읽게 되면, 기준 포인트(R.P)가 각 매크로블록의 시작 위치에 놓이게 되는 경우를 제외하고는 총 3개의 블록에 걸쳐 8개의 박스를 읽어야 하고, 따라서 각 박스군(33a~33i)에 대하여 총 8개의 화소 데이터가 읽혀지고 제 2 내지 제 3 래치(L2,L3)에 대하여 나머지 16개 화소 데이터가 읽혀진다. 본 발명은 이와 같이 프레임 메모리(300)의 해당 저장영역에서 최대 3개의 블록에 걸쳐 박스 단위로 독출되는 화소 데이터로 부터 예측된 매크로블록(MBp)에 해당하는 화소 데이터를 추출해내기 위한 것이다.When pixel data is read in a box unit as described above, eight boxes should be read over a total of three blocks except that the reference point RP is placed at the start position of each macroblock. Thus, each box group 33a is read. A total of eight pixel data are read for ˜33i), and the remaining sixteen pixel data are read for the second to third latches L2 and L3. The present invention is to extract the pixel data corresponding to the predicted macroblock (MBp) from the pixel data read out in a box unit over a maximum of three blocks in the storage area of the frame memory 300 as described above.

도 5a에 있어서, 메모리 제어부(200)는 움직임 보상하고자 하는 현재 매크로블록의 시작 어드레스와 움직임 벡터 및 각종 파라미터들을 입력으로 하여, 쓰기/읽기 어드레스와 각종 제어신호들(예를 들어, flow_en,wr1,wr2)을 프레임 메모리(300)로 공급하는 것과 동시에 데이터 저장부(310)로 공급한다. 플로우 인에이블신호(flow_en)와 제1 및 제2 읽기 제어신호(wr1,wr2)는 예측된 매크로블록(MBp)의 각 블록이 위치하는 RAS 박스 번호, 해당 RAS 박스에서의 블록 위치, 해당 블록에서의 박스 위치 및 해당 박스에서의 화소 위치로 부터 결정되는 기준 포인트(R.P)에 의해 결정된다.In FIG. 5A, the memory controller 200 inputs a start address, a motion vector, and various parameters of a current macroblock to be motion compensated, and writes / reads an address and various control signals (eg, flow_en, wr1, The wr2 is supplied to the frame memory 300 and simultaneously supplied to the data storage 310. The flow enable signal flow_en and the first and second read control signals wr1 and wr2 may include a RAS box number where each block of the predicted macroblock MBp is located, a block position in a corresponding RAS box, and a corresponding block. It is determined by the reference point RP determined from the box position of and the pixel position in the box.

도 4a에 도시된 예측된 매크로블록(MBp)을 예로 들면, 플로우 인에이블신호(flow_en)는 기준 포인트(R.P)가 위치하는 매크로블록(MB7)의 블록(b3)의 박스(b3-2)에서부터 8개 화소를 읽기 위한 신호이고, 제1 읽기 제어신호(wr1)는 다음 매크로블록(MB8)의 블록(b2)의 박스(b2-2)에서부터 1블록에 걸쳐 8개 화소를 읽기 위한 신호이고, 제2 읽기 제어신호(wr2)는 제2 래치(L2)의 출력 데이터와 프레임 메모리(300)로부터 바로 출력되는 매크로블록(MB8)의 블록(b3)의 박스(b3-2)에서부터의 8개 화소 데이터를 읽기 위한 신호이다. 본 발명에서는 예측된 매크로블록(MBp)에 대하여 프레임 메모리(300)로부터 2개 블록 단위로 움직임 보상기(미도시)에 입력하는 것을 가정한 것이다.Taking the predicted macroblock MBp shown in FIG. 4A as an example, the flow enable signal flow_en starts from the box b3-2 of the block b3 of the macroblock MB7 in which the reference point RP is located. A signal for reading eight pixels, the first read control signal wr1 is a signal for reading eight pixels from one box b2-2 of the block b2 of the next macroblock MB8 to one block, The second read control signal wr2 is outputted from the second latch L2 and eight pixels from the box b3-2 of the block b3 of the macroblock MB8 directly output from the frame memory 300. Signal for reading data. In the present invention, it is assumed that the predicted macroblock MBp is input to the motion compensator (not shown) in units of two blocks from the frame memory 300.

데이터 저장부(310)는 프레임 메모리(300)의 해당 저장영역으로 부터 최대 3개 블록에 걸쳐 순차적으로 공통 버스(500)상에 올려진 박스 단위의 화소 데이터를 저장하기 위한 것이다.The data storage unit 310 is for storing pixel data in a box unit loaded on the common bus 500 sequentially over a maximum of three blocks from the corresponding storage area of the frame memory 300.

FIFO(330)는 플로우 인에이블신호(flow_en)에 따라서 매크로블록(MB7)의 블록(b3)의 박스(b3-2)에서부터 8개의 화소 데이터를 8개 박스에 걸쳐 각각 8개의 플립플롭(F11~F18)에 순차적으로 저장한다. 제2 래치(L2)는 제1 읽기 제어신호(wr1)에 따라서 공통 버스(500)로부터 공급되는 매크로블록(MB8)의 블록(b2)의 박스(b2-2)에서부터 8개 화소 데이터를 래치한다. 제3 래치(L3)는 제2 읽기 제어신호(wr2)에 따라서 제2 래치(L2)로부터 공급되는 한 박스에 해당하는 8개 화소 데이터와 프레임 메모리(300)로부터 공급되는 매크로블록(MB8)의 블록(b3)의 박스(b3-2)의 8개 화소 데이터를 래치한다.According to the flow enable signal flow_en, the FIFO 330 transmits eight pixel data from the box b3-2 of the block b3 of the macroblock MB7 to the eight boxes, respectively, over eight boxes. Are stored sequentially in F18). The second latch L2 latches eight pixel data from the box b2-2 of the block b2 of the macroblock MB8 supplied from the common bus 500 according to the first read control signal wr1. . The third latch L3 includes eight pixel data corresponding to one box supplied from the second latch L2 and a macroblock MB8 supplied from the frame memory 300 according to the second read control signal wr2. The eight pixel data of the box b3-2 of the block b3 is latched.

도 5b에 있어서, 데이터 소팅부(350)는 데이터 저장부(310)로 부터 공급되는 3개 블록에 걸친 화소 데이터(즉, 24개 화소 데이터)로부터 예측된 매크로블록(MBp)의 2개 블록에 대한 화소 데이터(즉, 16개 화소 데이터)를 각 박스군에 대하여 추출하기 위한 것이다. 이를 위하여, 예측된 매크로블록(MBp)의 기준 포인트(R.P)에 대한 화소 어드레스(P.A)를 이용한다.In FIG. 5B, the data sorting unit 350 is applied to two blocks of the macroblock MBp predicted from pixel data (that is, 24 pixel data) over three blocks supplied from the data storage unit 310. To extract the pixel data (i.e., 16 pixel data) for each box group. To this end, the pixel address P.A for the reference point R.P of the predicted macroblock MBp is used.

제1 쉬프팅기(35a)에 있어서 래치(L41)는 데이터 저장부(310)로부터 공급되는 24개 화소 데이터를 래치한다. 카운터(C1)는 예측된 매크로블록(MBp)의 기준 포인트(R.P)에 대한 화소 어드레스(P.A)에 따라서, 선택제어신호를 멀티플렉서(M1~M23)로 공급된다. 멀티플렉서(M1~M23)는 선택제어신호에 따라서, 화소 데이터를 1 화소씩 좌로 쉬프트시켜서 출력한다. 플립플롭(F41~F63)은 각각 멀티플렉서(M1~M23)에서 출력되는 화소 데이터를 일시적으로 저장한 후 제2 쉬프팅기(35b)의 래치(L42)로 공급하고, 플립플롭(F64)은 래치(L41)로 부터 24 번째 화소데이터를 일시적으로 저장한 후 제2 쉬프팅기(35b)의 래치(L42)로 공급한다. 여기서, 카운터(C1)는 다운 카운터(down counter)로 동작하며, 화소 어드레스(P.A)를 1 감소시켜 카운터(C2)로 공급한다.In the first shifter 35a, the latch L41 latches 24 pixel data supplied from the data storage 310. The counter C1 supplies the selection control signal to the multiplexers M1 to M23 according to the pixel address P.A for the reference point R.P of the predicted macroblock MBp. The multiplexers M1 to M23 shift the pixel data left by one pixel in accordance with the selection control signal and output it. The flip-flops F41 to F63 temporarily store pixel data output from the multiplexers M1 to M23, and then supply them to the latch L42 of the second shifter 35b, and the flip-flop F64 is a latch ( The 24th pixel data is temporarily stored from L41 and then supplied to the latch L42 of the second shifter 35b. Here, the counter C1 operates as a down counter, and decreases the pixel address P.A by 1 to supply it to the counter C2.

제2 쉬프팅기(35b)에 있어서 래치(L42)는 제1 쉬프팅기(35a)로 부터 공급되는 24 개 화소 데이터를 래치한다. 카운터(C2)는 1 감소된 화소 어드레스에 따라서, 선택제어신호를 멀티플렉서(M1~M23)로 공급된다. 멀티플렉서(M1~M23)는 선택제어신호에 따라서, 화소 데이터를 1 화소씩 좌로 쉬프트시켜서 출력한다. 플립플롭(F41~F63)은 각각 멀티플렉서(M1~M23)에서 출력되는 화소 데이터를 일시적으로 저장한 후 제3 쉬프팅기(미도시)의 래치(미도시)로 공급하고, 플립플롭(F64)은 래치(L42)로 부터 24 번째 화소데이터를 일시적으로 저장한 후 제3 쉬프팅기(미도시)의 래치(미도시)로 공급한다. 여기서, 카운터(C2)는 다운 카운터(down counter)로 동작하며, 1 감소된 화소 어드레스를 다시 1 감소시켜 제3 쉬프팅기(미도시)의 카운터(미도시)로 공급한다.In the second shifter 35b, the latch L42 latches 24 pixel data supplied from the first shifter 35a. The counter C2 supplies the selection control signal to the multiplexers M1 to M23 according to the pixel address by one. The multiplexers M1 to M23 shift the pixel data left by one pixel in accordance with the selection control signal and output it. The flip-flops F41 to F63 temporarily store pixel data output from the multiplexers M1 to M23, and then supply them to a latch (not shown) of a third shifter (not shown). The 24th pixel data is temporarily stored from the latch L42 and then supplied to the latch (not shown) of the third shifter (not shown). Here, the counter C2 operates as a down counter, and decreases the pixel address by one by one and supplies it to the counter (not shown) of the third shifter (not shown).

제7 쉬프팅기(35g)에 있어서 래치(L47)는 제6 쉬프팅기(미도시)로 부터 공급되는 24 개 화소 데이터를 래치한다. 카운터(C7)는 제6 쉬프팅기(미도시)의 카운터(미도시)에서 1 감소된 화소 어드레스에 따라서, 선택제어신호를 멀티플렉서(M1~M23)로 공급된다. 멀티플렉서(M1~M23)는 선택제어신호에 따라서, 화소 데이터를 1 화소씩 좌로 쉬프트시켜서 출력한다. 플립플롭(F41~F63)은 각각 멀티플렉서(M1~M23)에서 출력되는 화소 데이터를 일시적으로 저장한 후 움직임 보상기(미도시)로 출력하고, 플립플롭(F64)은 제6쉬프팅기(미도시)의 래치(미도시)로 부터 24 번째 화소데이터를 일시적으로 저장한 후 움직임 보상기(미도시)로 출력한다.In the seventh shifter 35g, the latch L47 latches 24 pixel data supplied from the sixth shifter (not shown). The counter C7 supplies the selection control signal to the multiplexers M1 to M23 according to the pixel address reduced by one at the counter (not shown) of the sixth shifter (not shown). The multiplexers M1 to M23 shift the pixel data left by one pixel in accordance with the selection control signal and output it. The flip-flops F41 to F63 temporarily store pixel data output from the multiplexers M1 to M23, and then output them to a motion compensator (not shown), and the flip-flop F64 is a sixth shifter (not shown). The 24th pixel data is temporarily stored from the latch (not shown) and then output to the motion compensator (not shown).

상기 제1 내지 제7쉬프팅기(35a~35g)에 있어서, 멀티플렉서(M1~M23)는 각각 선택제어신호에 따라서, 인접하는 2 개의 화소 데이터에 대하여 왼쪽의 제1입력신호 혹은 오른쪽의 제2입력신호를 선택적으로 출력한다. 즉, 카운터(C1~C7)에 입력되는 어드레스 값이 있는 경우에는 선택제어신호에 의해 멀티플렉서(M1~M23)가 각각 제2입력신호를 출력하도록 함으로써, 각 쉬프팅기에서 좌로 쉬프팅이 이루어지도록 하고, 카운터(C1~C7)에 입력되는 어드레스 값이 없는 경우에는 선택제어신호에 의해 멀티플렉서(M1~M23)가 각각 제1입력신호를 출력하도록 함으로써, 쉬프팅이 이루어지지 않도록 한다. 화소 어드레스(P.A)에 따라서 최대 7번의 쉬프팅 동작이 행해지는데, 예를 들어 도 4에서 기준 포인트(R.P)의 화소 어드레스가 0112인 경우, 제1 내지 제3 쉬프팅기(35a~35c)에 의한 3 번의 쉬프팅 동작이 행해지고, 제4 내지 제7쉬프팅기(35d~35g)에서는 쉬프팅없이 그대로 출력된다.In the first to seventh shifters 35a to 35g, the multiplexers M1 to M23 respectively have a first input signal on the left or a second input on the right with respect to two adjacent pixel data according to a selection control signal. Output the signal selectively. That is, when there is an address value input to the counters C1 to C7, the multiplexers M1 to M23 respectively output the second input signals by the selection control signal, so that the shifters are shifted to the left. When there is no address value input to the counters C1 to C7, the multiplexers M1 to M23 output the first input signals by the selection control signal, thereby preventing shifting. A maximum of seven shifting operations are performed according to the pixel address PA. For example, when the pixel address of the reference point RP is 011 2 in FIG. 4, the first to third shifters 35a to 35c may be used. Three shifting operations are performed, and the fourth to seventh shifters 35d to 35g are output as they are without shifting.

즉, 데이터 소팅부(350)에서는 24 개의 화소데이터를 화소 어드레스(P.A)에 따라 소정 횟수만큼 1 화소씩 좌로 쉬프팅시킴으로써, 반화소까지 고려하여 17 개의 유효 화소데이터를 추출해 낸다.That is, the data sorting unit 350 shifts the 24 pixel data left by one pixel a predetermined number of times according to the pixel address P.A, thereby extracting 17 effective pixel data in consideration of half a pixel.

한편, 상기한 상세한 설명은 여기에 제시된 특정의 실시예를 설명하고자 한 것이며, 본 발명을 한정하려는 의도는 아니다. 당업자라면, 상기한 상세한 설명 및 도면을 참조하여 본 발명의 기술적 사상내에서 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, the structure of the macroblock block, the picture type, and the motion compensation form within the spirit of the present invention with reference to the above description and drawings.

이상에서 살펴본 바와 같이, 본 발명의 장치는 움직임 보상하고자 하는 현재 매크로블록의 시작 어드레스와 움직임 벡터에 의해 예측된 매크로블록을 프레임 메모리의 해당 저장영역으로부터 독출할 경우, 예측된 매크로블록의 화소 어드레스에 따라서 최대 3개 블록에 걸쳐 박스 단위로 읽은 다음, 최대 7회 만큼 좌로 쉬프팅시킴으로써, 예측된 매크로블록에 해당하는 화소 데이터로 재배열할 수 있다.As described above, in the apparatus of the present invention, when a macroblock predicted by a motion vector and a start address of a current macroblock to be motion compensated is read out from a corresponding storage area of a frame memory, the apparatus determines the pixel address of the predicted macroblock. Therefore, by reading in units of boxes over a maximum of three blocks and shifting left by up to seven times, the data can be rearranged into pixel data corresponding to the predicted macroblock.

Claims (4)

움직임 보상시 참조를 위한 화소 데이터를 매크로블록 단위로 저장하는 필드 구조의 프레임 메모리(300)에 있어서,In the frame memory 300 having a field structure that stores pixel data for reference in motion compensation in macroblock units, 움직임 보상하고자 하는 현재 매크로블록의 시작 어드레스와 움직임 벡터로 부터 예측된 매크로블록의 화소 데이터를 기준 포인트(R.P)가 위치한 1개 블록과 기준 포인터가 위치한 블록의 다음 블록에서부터 우측의 진행 방향으로 2개 블록에 걸쳐 상기 프레임 메모리(300)로부터 박스 단위로 순차적으로 독출하여 저장하는 데이터 저장부(310); 및The pixel data of the macroblock predicted from the start address and the motion vector of the current macroblock to be compensated for motion is one block in which the reference point RP is located and two blocks in the right direction from the next block of the block in which the reference pointer is located. A data storage unit 310 sequentially reading and storing the data from the frame memory 300 in a box unit over a block; And 상기 데이터 저장부(310)로부터 3개 블록에 걸쳐 박스 순으로 출력되는 화소 데이터를 상기 예측된 매크로블록의 기준 포인트(R.P)의 화소 어드레스(P.A)에 따라서 소정 횟수만큼 쉬프팅함으로써, 상기 예측된 매크로블록에 해당하는 유효 화소 데이터를 반화소까지 고려하여 추출하는 데이터 소팅부(350)를 포함하는 것을 특징으로 하는 프레임 메모리의 독출 방법에 따른 출력 데이터 재배열장치.The predicted macro is shifted by shifting pixel data output in the box order from the data storage unit 310 over a predetermined number of times according to the pixel address PA of the reference point RP of the predicted macroblock. And a data sorting unit (350) for extracting effective pixel data corresponding to blocks up to half pixels. 제 1 항에 있어서, 상기 프레임 메모리(300)에 저장되는 1 프레임 픽쳐는 복수개의 RAS 박스로 이루어지며, 상기 RAS 박스는 8 개의 매크로블록으로 이루어지며, 상기 매크로블록은 휘도 블록에 대하여 4 개의 블록으로 이루어지며, 상기 블록은 1 박스 * 8 박스 포맷을 가지며, 상기 박스는 8 화소 * 1 화소 포맷을 가지는 것을 특징으로 하는 프레임 메모리의 독출 방법에 따른 출력 데이터 재배열장치.The method of claim 1, wherein one frame picture stored in the frame memory 300 comprises a plurality of RAS boxes, the RAS box is composed of eight macroblocks, and the macroblocks are four blocks for luminance blocks. Wherein the block has a 1 box * 8 box format, and the box has an 8 pixel * 1 pixel format. 제 1 항에 있어서, 상기 데이터 저장부(310)는 각각 파이프라인 형태로 구성되는 9개 박스군(33a~33i)으로 구성된 FIFO(330)와 제1 및 제2 읽기 제어신호(wr1,wr2)에 따라서 동작하는 2개의 래치(L2,L3)로 이루어지며, 상기 각 박스군은 플로우 인에이블신호(flow_en)에 따라서 동작하는 8개의 플립플롭(F11~F18)으로 이루어지는 것을 특징으로 하는 프레임 메모리의 독출 방법에 따른 출력 데이터 재배열장치.The data storage unit 310 of claim 1, wherein the data storage unit 310 comprises a FIFO 330 composed of nine box groups 33a to 33i each having a pipeline shape, and first and second read control signals wr1 and wr2. Frame consists of two latches (L2, L3) operating in accordance with each of the box group is composed of eight flip-flops (F11 ~ F18) in accordance with the flow enable signal (flow_en). Output data rearrangement device according to the reading method. 제 1 항에 있어서, 상기 데이터 소팅부(350)는 각각 파이프라인 형태로 구성되며, 상기 데이터 저장부(310)와 프레임 메모리(300)로부터 출력되는 화소 데이터를 1 화소씩 좌로 쉬프트시키는 제1 내지 제7쉬프팅기(35a~35g)로 이루어지는 것을 특징으로 하는 프레임 메모리의 독출 방법에 따른 출력 데이터 재배열장치.The data sorting unit 350 is configured in a pipeline form, and the first to second pixel data output from the data storage unit 310 and the frame memory 300 are shifted left by one pixel. Output data rearrangement apparatus according to the reading method of the frame memory, characterized in that it comprises a seventh shifter (35a ~ 35g).
KR1019970042511A 1997-08-29 1997-08-29 Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory KR100235488B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970042511A KR100235488B1 (en) 1997-08-29 1997-08-29 Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970042511A KR100235488B1 (en) 1997-08-29 1997-08-29 Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory

Publications (2)

Publication Number Publication Date
KR19990019195A KR19990019195A (en) 1999-03-15
KR100235488B1 true KR100235488B1 (en) 1999-12-15

Family

ID=19519272

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970042511A KR100235488B1 (en) 1997-08-29 1997-08-29 Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory

Country Status (1)

Country Link
KR (1) KR100235488B1 (en)

Also Published As

Publication number Publication date
KR19990019195A (en) 1999-03-15

Similar Documents

Publication Publication Date Title
KR100235488B1 (en) Apparatus for rearranging data output from a frame memory according to scanning pattern of a frame memory
KR100269425B1 (en) Apparatus for rearranging data output from a frame memory
KR19990019200A (en) Output data rearrangement device according to the method of reading frame memory
KR19990019199A (en) Output data rearrangement device according to the method of reading frame memory
KR100237486B1 (en) Apparatus for rearranging data output from a frame memory
KR19990005584A (en) Output data rearrangement device in frame memory
KR100243479B1 (en) Rearrange apparatus of output data of frame memory
KR19990026422A (en) Output data rearrangement device according to scan type of frame memory
KR100243469B1 (en) Address generator in frame memory
KR100243477B1 (en) Apparatus of generating display address in a frame memory
KR100226702B1 (en) Method for transitioning block status during address generation in a 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
KR19990032812A (en) Address generator in frame memory
KR100248653B1 (en) Method for transitioning a state of blocks during address generation in a frame memory
KR100269427B1 (en) Method for generating address in a 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
KR19990034351A (en) Output data rearrangement device of frame memory
KR100243470B1 (en) Address generator in frame memory
KR100226703B1 (en) Method for calculating address distances in a frame memory
KR100226705B1 (en) Method for transitioning a frame memory during address generation and apparatus using the same
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
KR100243473B1 (en) Apparatus for compensating a motion vector during an address generation of a predicted macroblock in a frame memory
KR19990032813A (en) Address distance calculation method in 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
KR19980086113A (en) Output data rearrangement device 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: 20110901

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20120903

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee