KR19980018884A - An image processor (Image Processor) - Google Patents

An image processor (Image Processor) Download PDF

Info

Publication number
KR19980018884A
KR19980018884A KR1019970040045A KR19970040045A KR19980018884A KR 19980018884 A KR19980018884 A KR 19980018884A KR 1019970040045 A KR1019970040045 A KR 1019970040045A KR 19970040045 A KR19970040045 A KR 19970040045A KR 19980018884 A KR19980018884 A KR 19980018884A
Authority
KR
South Korea
Prior art keywords
slot
field
memory
picture
register
Prior art date
Application number
KR1019970040045A
Other languages
Korean (ko)
Other versions
KR100472564B1 (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 모리시다 요이치
Publication of KR19980018884A publication Critical patent/KR19980018884A/en
Application granted granted Critical
Publication of KR100472564B1 publication Critical patent/KR100472564B1/en

Links

Classifications

    • 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
    • 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/423Methods 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 characterised by memory arrangements
    • H04N19/426Methods 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 characterised by memory arrangements using memory downsizing methods
    • H04N19/427Display on the fly, e.g. simultaneous writing to and reading from decoding memory
    • 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/423Methods 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 characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

각각 N개의 슬롯으로 이루어진 5개의 필드와, 3개의 부가 슬롯을 포함한 프레임 메모리를 설치한다. 각 슬롯은 화상 8 라인분을 기억할 만큼의 용량을 갖는다. 5개의 필드 중 임의의 4개는 움직임 보상을 위한 참조 프레임을 저장한다. 나머지 1개의 필드와 3개의 부가 슬롯은 B 픽쳐의 인터레이스 변환에 제공된다. 제어부 중에 슬롯 관리 메모리와 기입 슬롯용 포인터 및 판독 슬롯용 포인터가 설치되고, 화상 출력부가 프레임 메모리를 올바른 슬롯 순서로 판독시키도록 비트스트림 해석부에 의한 프레임 메모리로의 기입시에 슬롯 관리 메모리의 내용이 갱신된다.There are provided five fields each consisting of N slots and a frame memory including three additional slots. Each slot has a capacity to store eight lines of an image. Any four of the five fields store reference frames for motion compensation. The remaining one field and three additional slots are provided for the interlace conversion of the B picture. The control unit includes a slot management memory, a pointer for a write slot, and a pointer for a read slot, and when writing to the frame memory by the bit stream analyzing unit such that the image output unit reads the frame memory in the correct slot order, Is updated.

Description

화상처리장치Image processing apparatus

본 발명은 화상 정보의 디코드 처리에 적합하게 사용되는 화상처리장치에 관한 것이다.The present invention relates to an image processing apparatus suitably used for decode processing of image information.

동화상 데이터의 압축 및 신장에 관한 국제 표준으로서, ISO/IEC의 워킹 그룹의 이름을 취하여 일반적으로 MPEG(Moving Picture Image Coding Experts Group)이라 불리우는 국제 표준이 알려져 있다. 동화상 데이터를 재생하기 위한 MPEG 디코드는 가변길이 복호기(Variable Length Decoder : VLD)와 역양자화기(Inverse Quantizer : IQ)와, 역이산 코사인 변환기(Inverse Discrete Cosine Transformer : IDCT)와, 움직임 보상기(Motion Compensator: MC)로 구성된 데이터 처리부를 주된 구성 요소로 한다. MPEG 디코더는 움직임 보상이나 인터레이스 변환을 위하여 복수 프레임분의 메모리도 필요로 한다.As an international standard for compressing and expanding moving picture data, an international standard called Moving Picture Coding Experts Group (MPEG) is generally known by taking the name of a working group of ISO / IEC. An MPEG decode for reproducing moving picture data includes a variable length decoder (VLD), an inverse quantizer (IQ), an inverse discrete cosine transformer (IDCT), a motion compensator : MC) as a main component. The MPEG decoder also requires a plurality of frames of memory for motion compensation or interlaced conversion.

MPEG은 움직임 보상의 참조용으로 시간적으로 전반 화상과 후반 화상의 2 프레임을 사용하는 것이 큰 특징으로 되어 있다. 한편, 만일 모든 화상에 움직임 보상을 이용하면 에러 전파나 특수 재생 등의 문제가 있기 때문에 I(Intra-coded) 픽쳐, P(Predictive-coded) 픽쳐 및 B(Bidirectionally predictive-coded) 픽쳐가 도입되어 있다. I 픽쳐, 즉 코딩형 I 픽쳐는 전혀 다른 화상을 참조하지 않는다. P 픽쳐, 즉 코딩형 P 픽쳐는 시간적으로 전의 프레임으로부터의 움직임 보상만을 행한다. B 픽쳐, 즉 코딩형 B 픽쳐는 시간적으로 전반의 프레임과 후반의 프레임으로부터 쌍방향의 움직임 보상을 행한다. B 픽쳐는 다른 프레임의 디코드시의 참조 프레임으로서 사용되는 것은 없다.MPEG is a feature that two frames of a general picture and a second-half picture are temporally used for reference of motion compensation. On the other hand, an I (Intra-coded) picture, a P (Predictive-coded) picture and a B (Bidirectionally predictive-coded) picture are introduced because of the problem of error propagation or special reproduction if motion compensation is used for all pictures . An I picture, that is, a coded I picture does not refer to a completely different picture. A P picture, i.e., a coded P picture, temporally performs motion compensation from the previous frame. The B picture, that is, the coded B picture, temporally performs bidirectional motion compensation from the first half frame and the second half frame. The B picture is not used as a reference frame at the time of decoding another frame.

각각의 코딩형의 예측 상태에 대하여 설명하기로 한다. I0, P3, B1, B2 측에서 입력 픽쳐의 비트스트림이 MPEG 디코더에 주어지는 것이라 하자. P3는 I0로부터 움직임 보상되고, B1은 I0 및 P3으로부터 움직임 보상되고, B2는 IO 및 P3로부터 움직임 보상된다. 표시는 I0, B1, B2, P3의 순번으로 이루어진다. 이와 같이 MPEG 디코더에서는 디코드의 순번과 표시의 순번이 일치하지 않기 때문에 MPEG 디코더 중에서 순번을 변화시킬 필요가 있다. 또, B1, B2의 디코드에는 I0, P3의 화상 2 프레임의 데이터가 필요하게 되기 때문에 움직임 보상의 참조용으로서 화상 2 프레임분의 프레임 메모리가 필요하게 된다. 따라서, MPEG 디코더는 움직임 보상의 참조용으로 2 프레임을 필요로 한다.The prediction state of each coding type will be described. It is assumed that the bit stream of the input picture is given to the MPEG decoder at the I0, P3, B1, and B2 sides. P3 is motion compensated from I0, B1 is motion compensated from I0 and P3, and B2 is motion compensated from IO and P3. The indication consists of I0, B1, B2, P3 in order. As described above, in the MPEG decoder, since the order of decoding and the order of display do not coincide, it is necessary to change the order of the MPEG decoders. Since the data of I0 and P3 image 2 frames are required for decoding of B1 and B2, a frame memory for two frames of image is required for reference of motion compensation. Therefore, the MPEG decoder requires two frames for reference of motion compensation.

다음에, MPEG의 화소단위에서의 디코드의 순번과, 화상출력될 때의 화소단위에서의 순번에 대하여 설명하기로 한다. 텔레비젼 등에서는 처음에는 짝수 라인만 출력하고, 다음에 홀수 라인만을 출력하는 것 처럼 1라인 점프하여 왼쪽 위에서부터 오른쪽 아래의 순번으로 화소의 출력이 행해진다. 상기 짝수 라인만의 부분을 최상 필드, 홀수 라인만을 최저 필드라 부른다. 인터레이스 출력은 우선 최상 필드를 왼쪽 위에서부터 오른쪽 아래의 순번으로 출력하고, 다음에 최저 필드를 왼쪽 위에서부터 오른쪽 아래의 순번으로 출력하는 것이라고 할 수 있다.Next, the order of decoding in pixel units for MPEG and the order in pixel units for image output will be described. In the case of a television or the like, only an even number line is output first, and then a single line is jumped as if only an odd number line is output, so that pixels are output in order from the upper left to the lower right. Only the even-numbered line is called the best field and only the odd-numbered line is called the lowest field. The interlaced output is first to output the top field in the order from left to right and then to the bottom field in order from top left to bottom right.

화상 데이터는 2차원이고, 공간적으로 가까운 위치의 데이터는 상호 관련이 높다고 생각되지만, 인터레이스 출력의 경우, 예를 들면 최상 필드의 어느 1 라인을 생각하면, 그 1 라인 상은 최저 필드에 속하게 된다. 즉, 1 라인 상의 화소는 공간적으로는 매우 가깝지만, 시간적으로는 떨어져 있게 된다. 그래서, 만약 움직임이 격심한 경우는 1 라인 상 보다도 시간적으로 가까운 2 라인 상의 쪽이 상관이 높은 경우가 있을 수 있다. 이와 같은 경우를 상정하여, MPEG에서는 화소 단위의 디코드의 순번으로서는 크게 나누어 프레임 구조와 필드 구조의 2 종류의 순번이 있다.The image data is two-dimensional, and the data at spatially close positions are thought to be related to each other. However, in the case of an interlaced output, for example, when one line of the best field is considered, the one line image belongs to the lowest field. That is, the pixels on one line are very close in space, but are spaced apart in time. Therefore, in the case where the movement is severe, there may be a case where the correlation on the two lines closer in time than the one line is high. Assuming such a case, in MPEG, there are two types of order, namely, a frame structure and a field structure, roughly divided into the order of decoding in pixel units.

또 MPEG에서는 16×16 화소를 하나의 매크로 블록이라 불리우는 기본 단위로서 디코드를 행하도록 되어 있다. 매크로 블록은 왼쪽으로부터 오른쪽의 순번으로 디코드되지만, 여기에서 예를 들면 화상의 최상부의 1 라인의 첫 번째 오른쪽의 화소는 그 화면의 첫 번째 오른쪽의 매크로 블록 중에 포함되어 있다. 한편, 첫 번째 오른쪽의 매크로 블록의 디코드가 종료되면 결과적으로 16라인의 데이터가 디코드된다. 따라서, MPEG 에서는 16 라인 정도의 데이터는 거의 동시에 디코드가 종료된다.In MPEG, 16 x 16 pixels are decoded as a basic unit called one macroblock. The macroblocks are decoded in order from left to right, but here, for example, the first right pixel of one line at the top of the picture is included in the first right macroblock of the picture. On the other hand, when the decoding of the first right macroblock ends, the data of the 16 lines are decoded as a result. Therefore, in MPEG, data of about 16 lines are almost simultaneously decoded.

프레임 구조의 경우에는 화상 1 프레임의 데이터가 그대로 세로 16화소, 가로 16화소의 매크로 블록을 구성하여 그 매크로 블록마다 디코드되어 간다. 따라서, 최상 필드와 최저 필드가 거의 동시에 디코드된다. 따라서, 화상 출력의 순서와는 완전히 일치하지 않기 때문에 순서 변환이 필요하게 된다.In the case of the frame structure, the data of one frame of the image constitutes a macroblock of 16 pixels in the vertical direction and 16 pixels in the horizontal direction, and is decoded for each macroblock. Thus, the best field and the lowest field are decoded almost simultaneously. Therefore, the order of image output is not completely coincident with the order of image output.

필드 구조의 경우에는 화상 프레임을 최상 필드와 최저 필드로 분할하고, 각각의 필드에서 세로 16화소, 가로 16화소의 매크로 블록을 구성하고, 그 매크로 블록마다 디코드되어 간다. 이 경우, 1 매크로 블록은 최상 필드만, 혹은 최저 필드만이고, 최상 필드의 데이터를 모두 디코드한 후에 최저 필드의 데이터가 디코드된다. 이 경우는 화상 출력과 대체로 일치하는 순번으로 되고 있지만, 디코드의 순서는 매크로 블록 단위로 행해지므로 화상 출력의 순서와 완전하게는 일치하지 않는다.In the case of the field structure, an image frame is divided into a best field and a minimum field, and macroblocks of 16 pixels in the vertical direction and 16 pixels in the horizontal direction are formed in each field, and they are decoded for each macroblock. In this case, one macroblock contains only the best field or the lowest field, and the data of the lowest field is decoded after all the data of the best field is decoded. In this case, although the order is substantially the same as that of the image output, the order of decoding is not completely coincident with the order of image output because it is performed in units of macroblocks.

화상 출력은 최상 필드, 최저 필드의 순번으로 행해진다. 최상 필드의 최종 8 라인을 출력 개시하는 시점에 주목하면, 상기 최종 8 라인 출력 개시 전에는 그 화상 프레임의 마지막의 16 라인분의 매크로 블록의 디코드를 종료해야만 한다. 왜냐하면, 최종 8 라인 중 가장 오른쪽의 16 화소는 그 화소의 가장 마지막의 매크로 블록을 디코드하기 시작하여 값을 확정하기 때문이다. 따라서, 상기의 시점에는 최상 필드, 최저 필드 모두 디코드를 완료하여야만 한다. 한편, 상기 시점 이후에는 최상 필드 8 라인과, 최저 필드 모두를 차례로 출력해야만 하지만, 상기 데이터는 이미 디코드되어 있다. 따라서, 상기 최상 필드 8 라인과, 최저 필드의 데이터 모두를 프레임 메모리에 기억하여 두면 데이터가 출력되기 전에 소멸되어 버리고, 화상 출력이 이루어지지 않는다. 결국, 최저 필드의 데이터 모두와 최상 필드의 8 라인분의 데이터량을 기억하는 만큼의 약 절반 프레임의 용량을 갖는 프레임 메모리가 필요하게 된다.The image output is performed in the order of the highest field and the lowest field. When attention is paid to the point in time at which the output of the last 8 lines of the best field is started, the decoding of the last 16 macroblocks of the image frame must be completed before the output of the last 8 lines is started. This is because the rightmost 16 pixels of the last 8 lines start decoding the last macroblock of the pixel to determine the value. Therefore, at this time, both the best field and the lowest field must be decoded. On the other hand, after this point in time, both the best field 8 line and the lowest field should be output in order, but the data has already been decoded. Therefore, if both the best field 8 line and the data of the lowest field are stored in the frame memory, the data is destroyed before the data is output, and image output is not performed. As a result, a frame memory having a capacity of about half a frame for storing all the data of the minimum field and the data amount of eight lines of the best field is required.

이상을 정리하면, 움직임 보상을 행하기 위하여 2 프레임분의 메모리를 필요로 하고, 또 B 픽쳐의 인터레이스 변환을 행하기 위하여 약 절반 프레임분의 메모리를 필요로 한다. 결국, 총 약 2.5 프레임분의 메모리가 최소한 필요하게 된다.To summarize the above, a memory for two frames is required to perform motion compensation, and a memory for about half a frame is required to perform the interlace conversion of the B picture. As a result, at least a total of about 2.5 frames of memory is required.

석도준일(石渡俊一) 외 「MPEG 2 디코더 LSI의 개발--효율적인 메모리 할당」, 1994년 전자정보 통신학회 춘계대회 강연 논문집, C-659, 1994년 3월에는 B 픽쳐의 인터레이스 변환용으로 1.5 프레임분의 메모리를 사용하는 MPEG 디코더의 예가 기재되어 있다. 또, 다카 하타케 아키히코 외 「MPEG 2 비디오 디코더 LSI에 있어서의 DRAM 인터페이스」, 1995년 전자정보 통신학회 총합대회 강연 논문집, C-586, 1995년 3월에는 B 픽쳐의 인터레이스 변환용으로 1 프레임분의 메모리를 사용하는 MPEG 디코더의 예가 기재되어 있다."Development of MPEG 2 Decoder LSI - Effective Memory Allocation", Lecture Meeting of the Institute of Electronics, Information and Communication Engineers, 1994, C-659, March 1994, An example of an MPEG decoder using a memory of 1/2 < th > In addition, Akihiko Takahata et al., &Quot; DRAM Interface in MPEG 2 Video Decoder LSI ", C-586, Lecture Papers of the Conference of the Institute of Electronics, Information and Communication Engineers, 1995, Lt; RTI ID = 0.0 > of MPEG < / RTI >

상기 종래의 양 MPEG 디코더는 B 픽쳐의 인터페이스 변환용으로 1.0∼1.5 프레임분의 메모리를 필요로 하기 때문에 MPEG 디코더가 가격이 비싸진다는 문제점이 있었다. 상기와 같이 원리적으로는 인터레이스 변환용으로 약 1/2 프레임분의 메모리로 충분하다는 것을 고려하면 개선의 여지가 있다.Since both of the conventional MPEG decoders require 1.0 to 1.5 frames of memory for interface conversion of B pictures, there is a problem that the price of the MPEG decoder is expensive. There is room for improvement in consideration of the fact that a memory of about 1/2 frame is sufficient for interlace conversion as described above.

본 발명의 목적은 MPEG 디코더가 갖는 프레임 메모리의 용량을 삭감하고, 또한 상기 프레임 메모리를 효율적으로 이용하는 것에 있다.An object of the present invention is to reduce the capacity of a frame memory of an MPEG decoder and efficiently utilize the frame memory.

도 1은 본 발명에 의한 MPEG 디코더의 구체예를 도시한 블록도.1 is a block diagram showing a specific example of an MPEG decoder according to the present invention;

도 2는 도 1 중의 프레임 메모리의 내부 구성을 도시한 개념도.2 is a conceptual diagram showing the internal structure of the frame memory shown in Fig. 1;

도 3은 도 2 중의 1개의 메모리 블록의 내부 구성을 도시한 개념도.3 is a conceptual diagram showing an internal configuration of one memory block in Fig.

도 4는 도 2 중의 부가 메모리 블록의 내부 구성을 도시한 개념도.4 is a conceptual diagram showing an internal configuration of an additional memory block in Fig.

도 5는 도 1 중의 비트 스트림 해석부의 내부 구성을 도시한 블록도.5 is a block diagram showing an internal configuration of a bit stream analyzing unit shown in FIG. 1;

도 6은 도 1 중의 화상 출력부의 내부 구성을 도시한 블록도.6 is a block diagram showing the internal configuration of the image output unit in Fig.

도 7은 도 1 중의 화상 출력부의 개략 동작을 도시한 도면.7 is a diagram showing a schematic operation of the image output unit in Fig.

도 8은 도 1 중의 제어부의 내부 구성을 도시한 블록도.8 is a block diagram showing an internal configuration of the control unit in Fig.

도 9는 도 1 의 MPEG 디코더의 개략 동작예를 도시한 도면.9 is a diagram showing a schematic operation example of the MPEG decoder of FIG.

도 10은 도 1의 MPEG 디코더의 상세 동작예를 도시한 도면.FIG. 10 is a diagram showing a detailed operation example of the MPEG decoder of FIG. 1; FIG.

도 11은 도 10에 계속되는 도면.Fig. 11 is a view subsequent to Fig. 10; Fig.

도 12는 도 11에 계속되는 도면.Fig. 12 is a view subsequent to Fig. 11; Fig.

도 13은 도 12에 계속되는 도면.Fig. 13 is a view subsequent to Fig. 12; Fig.

도 14는 도 13에 계속되는 도면.Fig. 14 is a view subsequent to Fig. 13; Fig.

도 15는 도 14에 계속되는 도면.Fig. 15 is a view subsequent to Fig. 14; Fig.

도 16은 도 8 중의 슬롯 관리 메모리의 갱신 과정의 예를 도시한 도면.16 is a diagram showing an example of a process of updating the slot management memory in Fig. 8;

도 17은 도 16에 계속되는 도면.Fig. 17 is a view subsequent to Fig. 16; Fig.

도 18은 도 2 중의 부가 블록이 2개의 부가 슬롯으로 구성된 경우의 도 16에 상당하는 도면.Fig. 18 is a view corresponding to Fig. 16 when the additional block in Fig. 2 is composed of two additional slots. Fig.

도 19는 도 2 중의 부가 블록이 1개의 부가 슬롯으로 구성된 경우의 도 16에 상당하는 도면.Fig. 19 is a view corresponding to Fig. 16 when the additional block in Fig. 2 is composed of one additional slot; Fig.

* 도면의 주요 부분에 대한 부호의 설명 *Description of the Related Art [0002]

10 : MPEG 디코더 11 : 프레임 메모리10: MPEG decoder 11: Frame memory

12 : 비트스트림 해석부 13 : 화상 출력부12: bitstream analyzing unit 13: image output unit

14 : 제어부 15 : 데이터 버스14: control unit 15: data bus

16 : 어드레스 버스 17 : 레지스터 버스16: address bus 17: register bus

31 : 헤더 해석부 32 : 가변길이 복호기(VLD)31: header analyzing unit 32: variable length decoder (VLD)

33 : 역양자화기(IQ) 34 : 역이산 코사인 변환기(IDCT)33: Inverse quantizer (IQ) 34: Inverse discrete cosine transformer (IDCT)

35 : 움직임 보상기(MC) 36 : 내부 레지스터35: Motion compensator (MC) 36: Internal register

52 : 워크 메모리 RSLP : 판독 슬롯용 포인터52: Work memory RSLP: Pointer for read slot

SCM : 슬롯 관리 메모리 WSLP : 기입 슬롯용 포인터SCM: Slot management memory WSLP: Pointer for write slot

상기 목적을 달성하기 위하여, 본 발명에서는 다음의 점에 착안하였다. 즉, B 픽쳐는 화상 출력을 마치면 이미 사용되는 것은 없다는 점과, 현재 디코드 중의 매크로 블록의 영역이 언제 출력되는지를 입력 픽쳐의 부가 정보의 부분(헤더)의 해석에 의하여 예측할 수 있다는 점에 착안한 것이다.In order to achieve the above object, the present invention has focused on the following points. In other words, it has been pointed out that the B picture is not already used when the picture output ends and that the area of the current macroblock being outputted is predicted by the analysis of the part (header) of the additional information of the input picture will be.

구체적으로는, 본 발명에 의하면 프레임 메모리를 포함한 화상 처리장치에 있어서, 상기 프레임 메모리는 각각 화상 1/2 프레임분의 용량을 갖는 5개의 블록과, 상기 5개 블록의 각각보다 작은 용량을 갖는 1개의 부가 블록으로 구성되고, 일단, 상기 5개의 블록 중에서 선택된 4개의 블록은 움직임 보상의 참조용을 위한 I 및/또는 P 픽쳐의 저장에 이용되고, 나머지 1개의 블록과 상기 부가 블록으로 B 픽쳐의 인터레이스 변환에 이용되는 1개의 데이터 메모리를 구성하고, 그 후, 상기 B 픽쳐용의 데이터 메모리는 상기 4개의 블록 내의 1개의 블록과 상기 부가 블록으로 재구성된다. 이로써, 약 2.5 프레임분의 메모리로서, B 픽쳐의 인터레이스 변환 뿐만 아니라 모든 타입의 픽쳐의 움직임 보상도 실현할 수 있다. 게다가, I 및/또는 P 픽쳐가 3개 이상 연속한 경우에 B 픽쳐를 위하여 데이터 메모리를 사용하지 않기 때문에 상기 데이터 메모리의 일부를 구성하는 1개의 블록을 I 및/또는 P 픽쳐의 저장용으로 이용할 수 있는 이점이 있다.Specifically, according to the present invention, in an image processing apparatus including a frame memory, each of the frame memories includes five blocks each having a capacity of 1/2 frame of image, and 1 block having a capacity smaller than that of each of the five blocks Four blocks selected from the five blocks are used for storing I and / or P pictures for reference of motion compensation, and the remaining one block and the additional block are used for storing the B picture The data memory for the B picture is reconstructed into one block in the four blocks and the additional block. As a result, it is possible to realize not only the interlace conversion of the B picture but also the motion compensation of all types of pictures as a memory of about 2.5 frames. In addition, since the data memory is not used for the B picture when three or more I and / or P pictures are consecutive, one block constituting a part of the data memory is used for storing the I and / or P pictures There is an advantage to be able to.

상기 5개의 블록의 각각과 상기 부가 블록은 각각 일정한 용량을 갖는 복수개의 슬롯으로 각각 분할된다. 게다가, 본 발명에 의한 화상 처리장치는 슬롯번호를 기억하기 위한 슬롯 관리 메모리와, 상기 슬롯 관리 메모리에 기억된 슬롯번호를 이용하여 상기 데이터 메모리의 판독을 제어하기 위한 콘트롤러를 추가로 포함한 구성을 채용한 것으로서, 상기 콘트롤러는 데이터 메모리의 판독을 위하여 상기 데이터 메모리의 기입시에 이용한 슬롯번호를 슬롯 관리 메모리에 기입한다. 이로써, 데이터 메모리가 올바른 슬롯 순서로 판독되도록 상기 데이터 메모리의 기입시에 슬롯 관리 메모리의 내용을 갱신할 수 있다. 따라서, 상기 데이터 메모리 중의 어느 슬롯의 판독이 행해진 직후에 상기 슬롯의 기입이 행해지도록 함으로써 약 1/2 프레임분의 메모리로 B 픽쳐의 인터레이스 변환을 실현할 수 있다.Each of the five blocks and the additional blocks are each divided into a plurality of slots each having a constant capacity. The image processing apparatus according to the present invention further includes a slot management memory for storing the slot number and a controller for controlling the reading of the data memory using the slot number stored in the slot management memory The controller writes the slot number used at the time of writing the data memory into the slot management memory for reading the data memory. This allows the contents of the slot management memory to be updated at the time of writing of the data memory such that the data memory is read in the correct slot order. Therefore, by writing the slot immediately after reading any slot in the data memory, the interlace conversion of the B picture can be realized in the memory of about 1/2 frame.

상술한 목적 및 기타의 목적과 본 발명의 특징 및 이점은 첨부도면과 관련한 다음의 상세한 설명을 통해 보다 분명해질 것이다.The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings.

이하, 동화상 데이터의 리얼 타임 재생처리를 실현하기 위한 MPEG 디코더의 구체예에 대하여 도면을 참조하여 설명하기로 한다.Hereinafter, specific examples of an MPEG decoder for real time reproduction processing of moving image data will be described with reference to the drawings.

도 1은 본 발명에 의한 MPEG 디코더의 구성예를 도시한다. 도 1의 MPEG 디코더(10)는 약 2.5 프레임분의 화상 데이터를 기억하기 위한 프레임 메모리(11)와, 입력 비트스트림(IN)을 해석하기 위한 비트스트림 해석부(12)와, 화상출력신호(OUT) 및 인터럽트신호(INTR)를 공급하기 위한 화상 출력부(13)와, 인터럽트신호(INTR)에 응답하여 비트스트림 해석부(12)로 기동신호(INIT)를 공급하기 위한 제어부 (14)로 구성되어 있다. 도 1에 있어서, 15는 데이터 버스, 16은 어드레스 버스, 17은 레지스터 버스이다. 비트스트림 해석부(12)는 입력 비트스트림(IN) 중의 헤더부를 해석하는 기능외에 매크로 블록을 디코드하고, 그 결과를 프레임 메모리(11)에 기입하는 기능을 갖는다. 이들 2개의 기능은 제어부(14)로부터의 기동신호(INIT)에 의하여 기동된다. 프레임 메모리(11)는 움직임 보상의 참조용의 화상의 저장과 인터레이스 변환을 위하여 이용되는 것이다. 화상 출력부(13)는 재구성된 화상 데이터를 프레임 메모리(11)로부터 판독하고, 인터레이스 순서의 화상 출력신호(OUT)를 공급한다. 상기 화상 출력신호(OUT)를 디스플레이에 연결함으로써 디코드된 동화상을 볼 수 있다. 또, 화상 출력부(13)는 출력의 타이밍에 맞추어 인터럽트신호(INTR)를 제어부(14)로 송신한다. 제어부(14)는 레지스터 버스(17)를 통하여 비트스트림 해석부(12) 및 화상 출력부(13) 각각의 내부 레지스터를 판독하거나 각 내부 레지스터로 값을 설정할 수 있다.Fig. 1 shows a configuration example of an MPEG decoder according to the present invention. The MPEG decoder 10 of FIG. 1 includes a frame memory 11 for storing image data of about 2.5 frames, a bit stream analyzing section 12 for analyzing an input bit stream IN, And a control unit 14 for supplying a start signal INIT to the bit stream analyzing unit 12 in response to the interrupt signal INTR Consists of. In Fig. 1, 15 is a data bus, 16 is an address bus, and 17 is a register bus. The bitstream analyzing unit 12 has a function of decoding the macroblock in addition to the function of interpreting the header portion in the input bitstream IN and writing the result into the frame memory 11. [ These two functions are activated by the start signal INIT from the control unit 14. [ The frame memory 11 is used for storage of an image for motion compensation and for interlace conversion. The image output unit 13 reads the reconstructed image data from the frame memory 11 and supplies the image output signal OUT in the interlaced order. The decoded moving image can be seen by connecting the image output signal OUT to the display. The image output section 13 transmits the interrupt signal INTR to the control section 14 in accordance with the timing of the output. The control unit 14 can read the internal registers of the bit stream analyzing unit 12 and the image output unit 13 via the register bus 17 or set values in the respective internal registers.

도 2는 프레임 메모리(11)의 개략 구성을, 도 3 및 도 4는 그 상세 구성을 각각 도시한다. 프레임 메모리(11)는 도 2에 도시된 바와 같이, 0 부터 4 까지의 필드번호가 부여된 5개의 블록(20, 21, 22, 23, 24)과, 1개의 부가 블록(25)으로 구성되어 있다. 1개의 블록(20)은 도 3에 도시된 바와 같이 0부터 N-1까지의 슬롯번호가 부여된 N개의 슬롯으로 구성되어 있다. 여기에서, N은 MPEG 디코더(10)가 디코드를 행하는 화상 사이즈에 의존하는 량이고, 예를 들면 NTSC(National Television System Committee)의 화상에서는 N이 30으로 된다. 각 슬롯은 화상 8 라인분의 기억용량을 갖는다. 결국, 1개의 블록(20)은 240 라인분의 데이터, 즉 NTSC의 화상 1필드(1/2 프레임)분의 데이터를 기억할 수 있다. 다른 4개의 블록(21, 22, 23, 24)도 각각 N개의 슬롯으로 구성되어 있다. 부가 블록(25)은 도 4에 도시된 바와 같이 N부터 N+2까지의 슬롯번호가 부여된 3개의 부가 슬롯으로 구성되어 있다.Fig. 2 shows a schematic configuration of the frame memory 11, and Fig. 3 and Fig. 4 show the detailed configuration thereof. 2, the frame memory 11 is composed of five blocks 20, 21, 22, 23, and 24 to which field numbers 0 to 4 are assigned, and one additional block 25 have. One block 20 is composed of N slots assigned slot numbers 0 to N-1 as shown in FIG. Here, N is an amount depending on the picture size for which the MPEG decoder 10 decodes, and N is 30 for example in an image of NTSC (National Television System Committee). Each slot has a storage capacity for eight lines of an image. As a result, one block 20 can store 240 lines of data, i.e., NTSC image 1 field (1/2 frame) data. The other four blocks 21, 22, 23, and 24 are also each composed of N slots. The additional block 25 is composed of three additional slots assigned slot numbers from N to N + 2 as shown in FIG.

프레임 메모리(11)는 슬롯을 단위로 하여 관리된다. 상기 관리 단위인 1 슬롯(8라인)은 매크로 블록의 세로 사이즈(16 라인)의 1/2 이고, 프레임 구조, 필드 구조의 양쪽에 대응하기 위한 가장 적합한 단위이다. 구체적으로는, 필드 번호와 슬롯번호로 1개의 슬롯이 지정된다. 예를 들면, 블록(20) 중의 첫 번째의 슬롯은 필드번호 0, 슬롯번호 0으로 지정된다. 부가블록(25) 중의 첫 번째 슬롯은 필드번호 0, 슬롯번호 N으로 지정된다. 부가블록(25) 중 동일 슬롯을 필드번호 1, 슬롯번호 N으로 지정할 수도 있다.The frame memory 11 is managed in units of slots. One slot (8 lines) serving as the management unit is 1/2 of the vertical size (16 lines) of the macroblock and is the most suitable unit for coping with both the frame structure and the field structure. Specifically, one slot is designated by a field number and a slot number. For example, the first slot in block 20 is designated field number 0, slot number 0. The first slot of the additional block 25 is designated as field number 0 and slot number N. [ The same slot of the additional block 25 may be designated as the field number 1 and the slot number N. [

5개의 블록(20, 21, 22, 23, 24) 중 4개의 블록은 움직임 보상의 참조용의 화상의 저장에 이용되고, 나머지 1개의 블록과 부가 블록(25)은 B 픽쳐의 인터레이스 변환에 이용된다. 다음의 설명에서는 B 픽쳐를 위하여 사용되는 슬롯의 수, 즉 N+3을 Sn으로 표기한다. 예를 들면, I 픽쳐의 최상 필드가 필드번호 0의 번호 0부터 N-1까지의 슬롯에, 상기 I 픽쳐의 최저 필드가 필드번호 1의 번호 0부터 N-1까지의 슬롯에, P 픽쳐의 최상 필드가 필드번호 2의 번호 0부터 N-1까지의 슬롯에, 상기 P 픽쳐의 최저 필드가 필드번호 3의 번호 0부터 N-1까지의 슬롯에 각각 저장된다. 이 때, 최상 필드가 저장되어 있는 필드의 슬롯 0에는 상기 최상 필드의 최초의 8 라인이, 슬롯 1에는 다음의 8 라인이, 이러한 식으로 순서대로 저장된다. B 픽쳐는, 예를 들면 필드번호 4의 번호 0부터 Sn-1까지의 슬롯에 저장된다. 이 때, N 부터 N+2 까지의 슬롯번호가 부여된 3개의 부가 슬롯이 사용된다. 다만, 어느 슬롯이 최상 필드를 저장하고 있는가 라는 것은 프레임 구조인지 필드 구조인지라는 화상의 스트럭쳐에 따라 변화된다. 또, 초기상태에서는 프레임 메모리(11)의 각 필드에 디폴트의 화상 데이터가 이미 기입되어 있는 것으로 한다. 예를 들면, 검은색에 상당하는 데이터가 기입되어 있다. 디코드 결과의 화상이 출력되기까지는 디폴트 화상이 출력된다.Four of the five blocks 20, 21, 22, 23, and 24 are used for storing an image for reference of motion compensation, and the remaining one block and the additional block 25 are used for interlace conversion of the B picture do. In the following description, the number of slots used for the B picture, that is, N + 3 is denoted by Sn. For example, when the best field of the I picture is in a slot from 0 to N-1 of the field number 0, and the lowest field of the I picture is assigned to a slot from the number 0 to N-1 of the field number 1, The best field is stored in slots 0 to N-1 of field number 2, and the lowest field of the P picture is stored in slots of number 0 to N-1 of field number 3, respectively. In this case, the first 8 lines of the best field are stored in the slot 0 of the field where the best field is stored, and the next 8 lines are stored in this order in the slot 1. The B picture is stored, for example, in a slot from No. 0 to Sn-1 in field number 4. At this time, three additional slots assigned slot numbers from N to N + 2 are used. However, the slot in which the best field is stored varies depending on the structure of the image, which is a frame structure or a field structure. It is assumed that default image data is already written in each field of the frame memory 11 in the initial state. For example, data corresponding to black is written. A default image is output until the decoded result image is output.

도 5는 도 1 중의 비트스트림 해석부(12)의 내부 구성을 도시한다. 비트스트림 해석부(12)는 헤더 해석부(31)와 VLD(가변길이 복호기)(32)와, IQ(역양자화기)(33)와, IDCT(역이산 코사인 변환기)(34)와, MC(움직임 보상기)(35)와, 내부 레지스터(36)로 구성되어 있다. 내부 레지스터(36)는 10개의 레지스터, 즉,Fig. 5 shows the internal structure of the bit stream analyzing unit 12 in Fig. The bitstream analyzing unit 12 includes a header analyzing unit 31, a VLD (Variable Length Decoder) 32, an IQ (Inverse Quantizer) 33, an IDCT (Inverse Discrete Cosine Transform) (Motion compensator) 35, and an internal register 36. The internal register 36 has ten registers,

코딩형 레지스터 CTYRCoding type register CTYR

스트럭쳐 레지스터 STRRStructure Register STRR

최상용 전방 참조필드 레지스터 T_FRFRBest Forward Reference Field Register T_FRFR

최저용 전방 참조필드 레지스터 B_FRFRLowest forward reference field register B_FRFR

최상용 후방 참조필드 레지스터 T_BRFRBest Forward Reference Field Register T_BRFR

최저용 후방 참조필드 레지스터 B_BRFRLowest Used Rear Reference Field Register B_BRFR

최상용 기입 필드 레지스터 T_WFDRBest write field register T_WFDR

최저용 기입필드 레지스터 B_WFDRLowest write field register B_WFDR

제 1 기입 슬롯 레지스터 WSR1The first write slot register WSR1

제 2 기입 슬롯 레지스터 WSR2The second write slot register WSR2

를 포함한다. 코딩형 레지스터(CTYR)는 입력 화상의 코딩형을 저장하기 위한 레지스터이다. 스트럭쳐 레지스터(STRR)는 입력 화상의 구조가 프레임 구조인지 필드 구조인지를 나타내는 레지스터이다. 4개의 참조필드 레지스터(T_FRFR, B_FRFR, T_BRFR, B_BRFR)는 프레임 메모리(11) 중의 움직임 보상의 참조용 화상의 저장위치를 나타내는 필드번호를 지정하기 위한 레지스터이다. 2개의 기입필드 레지스터(T_WFDR, B_WFDR)는 프레임 메모리(11) 중의 기입 필드의 번호를 지정하기 위한 레지스터이다. 제 1 및 제 2 기입 슬롯 레지스터(WSR1, WSR2)는 프레임 메모리(11) 중의 기입 슬롯의 번호를 지정하기 위한 레지스터이다.. The coding type register CTYR is a register for storing the coding type of the input image. The structure register STRR is a register indicating whether the structure of the input image is a frame structure or a field structure. The four reference field registers T_FRFR, B_FRFR, T_BRFR, and B_BRFR are registers for designating a field number indicating a storage position of a motion compensation reference image in the frame memory 11. The two write field registers T_WFDR and B_WFDR are registers for specifying the number of the write field in the frame memory 11. [ The first and second write slot registers WSR1 and WSR2 are registers for specifying the write slot number in the frame memory 11. [

제어부(14)로부터의 기동신호(INIT)에 의하여 헤더 해석부(31) 또는 VLD(32)가 기동한다. 헤더 해석부(31)는 기동하면 입력 비트스트림 (IN) 중의 화상 헤더 정보를 디코드하고, 내부 레지스터(36) 중의 코딩형 레지스터(CTYR)에 화상의 코딩형을, 스트럭쳐 레지스터(STRR)에 화상의 구조를 각각 기입한다. VLD(32)가 기동하면 VLD(32)의 출력을 수신하여 IQ(33), IDCT(34) 및 MC(35)가 차례로 기동되고, 16 라인분의 화상 데이터의 디코드 결과가 데이터 버스(15)를 통하여 프레임 메모리(11)에 기입된다. 상기 16라인분이라는 것은 가로 720 화소의 경우에는 45 매크로 블록에 상당한다. 그 중에서 MC(35)는 움직임 보상을 행하여 최종적인 화상 데이터를 작성하고, 또한 재구성된 데이터를 프레임 메모리(11)에 기입하는 역할을 한다. VLD(32)는 움직임 보상을 위하여 움직임 벡터 MV를 MC(35)로 보낸다. 또, 프레임 메모리(11)의 슬롯은 어드레스 버스(16) 상의 어드레스에 의하여 특정된다.The header analyzing unit 31 or the VLD 32 is activated by the start signal INIT from the control unit 14. [ The header analyzing unit 31 decodes the picture header information in the input bit stream IN when started and stores the coding type of the picture in the coding type register CTYR in the internal register 36 and the coding type of the picture in the structure register STRR Respectively. When the VLD 32 is activated, the IQ 33, the IDCT 34 and the MC 35 are sequentially activated, and the decoded result of the image data for 16 lines is output to the data bus 15, To the frame memory 11 via the bus. The 16 lines corresponds to 45 macroblocks in the case of 720 pixels in the horizontal direction. Among them, the MC 35 performs motion compensation to create final image data, and also writes the reconstructed data into the frame memory 11. [ The VLD 32 sends a motion vector MV to the MC 35 for motion compensation. The slot of the frame memory 11 is specified by the address on the address bus 16. [

비트스트림 해석부(12) 중에서 메모리 관리에 관계하는 부분은 MC(35) 뿐이다. MC(35)는 움직임 보상을 위하여 예측용의 화상이 프레임 메모리(11)의 어느 위치에 저장되는지를 알려야만 한다. 따라서, 최상용 전방 참조필드 레지스터(T_FRFR), 최저용 전방 참조필드 레지스터(B_FRFR), 최상용 후방 참조필드 레지스터 (T_BRFR), 최저용 후방 참조필드 레지스터(B_BRFR)를 사용한다. 여기에서, 예를 들면 전방 참조를 위한 데이터 중 최상 필드 부분은 최상용 전방 참조필드 레지스터(T_FRFR)로 지정된 번호의 필드 슬롯 0으로부터 슬롯 N-1에 저장되어 있다.The MC 35 only has a part related to memory management among the bit stream analyzing unit 12. The MC 35 has to inform where in the frame memory 11 the predictive image is stored for motion compensation. Therefore, the best forward reference field register T_FRFR, the lowest forward forward reference field register B_FRFR, the best rearward reference field register T_BRFR, and the lowest forward reference field register B_BRFR are used. Here, for example, the best field portion of the data for the forward reference is stored in the slot N-1 from the field slot 0 of the number designated by the best forward reference field register (T_FRFR).

재구성한 화상 데이터를 기입하는 슬롯을 결정하기 위해서는 최상용 기입필드 레지스터(T-WFDR)와, 최저용 기입필드 레지스터(B-WFDR)와, 제 1 기입슬롯 레지스터(WSR1)와, 제 2 기입슬롯 레지스터(WSR2) 및 스트럭쳐 레지스터(STRR)를 사용한다. 구체적으로는, 다음과 같이 하여 기입 위치를 결정한다. 프레임 구조의 경우에는 최상용 기입필드 레지스터(T_WFDR)의 필드번호와 제 1 기입슬롯 레지스터(WSR1)의 슬롯번호로 지정된 슬롯에 최상 8 라인분을 각각 기입한다. 필드 구조의 경우에는 최상 필드(최초의 1/2 프레임)에 대해서는 최상용 기입필드 레지스터 (T_WFDR)의 필드번호와 제 1 기입슬롯 레지스터(WSR1)의 슬롯번호로 지정된 슬롯에 상부 8라인분을, 최상용 기입필드 레지스터(T_WFDR)의 필드번호와 제 2 기입슬롯 레지스터(WSR2)의 슬롯번호로 지정된 슬롯에 하부 8라인분을 각각 기입한다. 또, 최저 필드(다음의 1/2 프레임)에 대해서는 최저용 기입필드 레지스터(B_WFDR)의 필드번호와 제 1 기입슬롯 레지스터(WSR1)의 슬록번호로 지정된 슬롯에 상부 8 라인분을, 최저용 기입필드 레지스터(B_WFDR)의 필드번호와 제 2 기입슬롯 레지스터(WSR2)의 슬롯번호로 지정된 슬롯에 하부 8 라인분을 각각 기입한다. 이상과 같이, 최상 필드와 최저 필드가 하나의 슬롯 중에 혼재하는 것은 없도록 되어 있다. 또, 내부 레지스터(36) 중의 메모리 관리에 관계하는 레지스터는 레지스터 버스(17)를 통하여 제어부(14)에 의해 설정된다.In order to determine the slot into which the reconstructed image data is to be written, the most significant write field register (T-WFDR), the lowest write field register (B-WFDR), the first write slot register WSR1, (WSR2) and a structure register (STRR). More specifically, the writing position is determined as follows. In the case of the frame structure, the top eight writing lines are written in the slots designated by the field number of the best write field register T_WFDR and the slot number of the first write slot register WSR1. In the case of the field structure, for the best field (first half frame), the upper 8 lines are allocated to the slot designated by the field number of the best write field register (T_WFDR) and the slot number of the first write slot register (WSR1) The lower eight lines are written into the slot designated by the field number of the write field register T_WFDR and the slot number of the second write slot register WSR2. For the lowest field (next half frame), the upper eight lines are written in the slot designated by the field number of the lowest use write field register B_WFDR and the row number of the first write slot register WSR1, The lower eight lines are written into the slot designated by the field number of the field register B_WFDR and the slot number of the second write slot register WSR2. As described above, the best field and the lowest field are not mixed in one slot. The register related to the memory management in the internal register 36 is set by the control unit 14 via the register bus 17. [

도 6은 도 1 중의 화상 출력부(13)의 내부 구성도이다. 화상 출력부(13)는 타이밍 발생부(41)와 판독부(42) 및 내부 레지스터(43)로 구성되어 있다. 내부 레지스터(43)는 4개의 레지스터, 즉,6 is an internal configuration diagram of the image output unit 13 in Fig. The image output section 13 includes a timing generating section 41, a reading section 42, and an internal register 43. The internal register 43 has four registers,

판독 필드 레지스터 RFDRRead Field Register RFDR

판독 슬롯 레지스터 RSLRRead slot register RSLR

출력 로우 레지스터 ORWROutput low register ORWR

출력 패리티 레지스터 OPYROutput parity register OPYR

를 포함한다. 판독 필드 레지스터(RFDR)는 프레임 메모리(11) 중의 판독필드의 번호를 지정하기 위한 레지스터이다. 판독 슬롯 레지스터(RSLR)는 프레임 메모리(11) 중의 판독 슬롯의 번호를 지정하기 위한 레지스터이다. 출력 로우 레지스터(ORWR)는 현재 출력 중의 라인이 1 필드 중의 어느 위치인지를 나타내는 레지스터이다. 출력 패리티 레지스터(OPYR)는 현재 최상 필드와 최저 필드의 어느쪽을 출력하고 있는지를 나타내는 레지스터이다.. The read field register (RFDR) is a register for specifying the number of the read field in the frame memory (11). The read slot register RSLR is a register for specifying the number of the read slot in the frame memory 11. [ The output low register (ORWR) is a register that indicates which one of the fields in the current output line. The output parity register (OPYR) is a register that indicates which of the current top field and the bottom field is being output.

도 7은 화상 출력부(13)의 개략 동작도이다. 출력의 1 사이클은 수직 귀선 구간(VB), 최상 필드 출력기간, 수직 귀선 구간 및 최저 필드 출력 기간으로 구성되어 있다. 예를 들면, NTSC의 경우에는 1초간에 30 사이클의 출력이 이루어진다. 타이밍 발생부(41)는 화상 출력부(13)가 일정 주기로 동작하기 위한 타이밍 신호(TMNG)를 발생하고, 또한 화면 출력의 8 라인마다 인터럽트 신호(INTR)를 제어부(14)로 송신한다. 인터럽트 신호(INTR)는 도 7의 (a)에 도시된 바와 같이 각 필드의 출력 개시시에 1회 발생하고, 그 후 8 라인 출력 종료마다 발생한다. 판독부(42)는 타이밍 발생부(41)에서 발생된 타이밍 신호(TMNG)에 동기하여 지정된 슬롯을 스캔 순서로 판독하여 화상출력신호(OUT)를 공급한다. 판독 슬롯은 내부 레지스터(43) 중의 판독 필드 레지스터(RFDR)와 판독 슬롯 레지스터(RSLR)의 조로 지정된다. 이들의 판독 슬롯 설정용의 레지스터는 인터럽트 발생시에 제어부(14)가 레지스터 버스(17)를 통하여 설정을 행한다. 또, 타이밍 발생부(41)는 내부 레지스터(43) 중의 출력 로우 레지스터(ORWR)와 출력 패리티 레지스터(OPYR)를 다음과 같이 변화시킨다. 즉, 출력 패리티 레지스터(OPYR)의 값은 도 7의 (b)에 도시된 바와 같이 각 필드의 출력 개시의 인터럽트 직전에, 다음에 최상 필드를 출력하는 상태라면 0으로 되고, 다음에 최저 필드를 출력하는 상태라면 1로 된다. 출력 로우 레지스터(ORWR)의 값은 도 7의 (c)에 도시된 바와 같이 출력 개시의 인터럽트 직전에 0으로 되고, 이하 8 라인 종료의 인터럽트 직전에 하나씩 증가한다.7 is a schematic operation diagram of the image output section 13. Fig. One cycle of output consists of a vertical retrace interval (VB), a best field output period, a vertical retrace interval and a minimum field output period. For example, in the case of NTSC, the output is 30 cycles per second. The timing generating section 41 generates a timing signal TMNG for the image output section 13 to operate at a constant cycle and also transmits an interrupt signal INTR to the control section 14 every eight lines of the screen output. The interrupt signal INTR occurs once at the start of the output of each field as shown in Fig. 7A, and then every 8 lines after the output of the interrupt signal INTR. The reading section 42 reads the designated slot in the scanning order in synchronization with the timing signal TMNG generated by the timing generating section 41 and supplies the image output signal OUT. The read slot is designated as a combination of a read field register (RFDR) and a read slot register (RSLR) in the internal register (43). The register for setting the read slot sets the control unit 14 via the register bus 17 when an interrupt occurs. The timing generator 41 changes the output low register ORWR and the output parity register OPYR in the internal register 43 as follows. That is, the value of the output parity register OPYR is set to 0 immediately before the interruption of the output start of each field as shown in FIG. 7B, and becomes 0 if it is in the state of outputting the next best field. If it is in the output state, it becomes 1. The value of the output low register (ORWR) becomes 0 immediately before the interruption of the output start as shown in FIG. 7 (c), and increases by one immediately before the interruption of the end of the 8 lines.

도 8은 도 1 중의 제어부(14)의 내부 구성을 도시한 블록도이다. 제어부(14)는 콘트롤러(51)와 워크 메모리(52) 및 프로그램 메모리(53)로 구성되어 있다. 워크 메모리(52)는 슬롯 관리 메모리(SCM)와 12개의 워크 즉,8 is a block diagram showing an internal configuration of the control unit 14 in Fig. The control unit 14 includes a controller 51, a work memory 52, and a program memory 53. The work memory 52 includes a slot management memory (SCM)

최상용 전방 참조필드 워크 T_FRFWBest forward reference field work T_FRFW

최저용 전방 참조필드 워크 B_FRFWLowest forward reference field work B_FRFW

최상용 후방 참조필드 워크 T_BRFWBest Practice Rear Reference Field Work T_BRFW

최저용 후방 참조필드 워크 B_BRFWLowest Rear Reference Field Work B_BRFW

디코드 로우 번호 워크 DRNWDecode row number work DRNW

디코드형 워크 DTYWDecoded work DTYW

출력형 워크 OTYWOutput type work OTYW

디코드 스트럭쳐 워크 DSTWDecode Structure Work DSTW

최상용 출력필드 워크 T_OFDWBest output field work T_OFDW

최저용 출력필드 워크 B_OFDWLowest output field work B_OFDW

기입 슬롯용 포인터 WSLPPointer WSLP for write slot

판독 슬롯용 포인터 RSLPPointer RSLP for read slot

를 포함한다. 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)는 각각 비트 스트림 해석부(12) 중의 4개의 참조필드 레지스터(T_FRFR, B_FRFR, T_BRFR, B_BRFR)에 대응하는 워크로서, 프레임 메모리(11) 중의 움직임 보상의 참조용 화상의 저장 위치를 나타내는 필드 번호를 지정하는 것이다. 디코드 로우번호 워크(DRNW)는 1 프레임 중 어느 부분까지 디코드가 행해지는가를 나타내는 로우번호를 저정하기 위한 워크로서, 예를 들면 최초의 16 라인의 디코드 중은 0, 다음의 16 라인의 디코드 중은 1 이라고 하는 것처럼 로우 번호가 증가되어 간다. 디코드형 워크(DTYW)는 현재 디코드 중의 화상의 코딩형을 나타내는 워크이다. 출력형 워크(OTYW)는 현재 출력 중의 화상의 코딩형이 B인지의 여부를 나타내는 워크로서, 코딩형 B와 그 이외에서는 메모리 관리방식이 다르기 때문에 그 식별을 위하여 이용된다. 디코드 스트럭쳐 워크(DSTW)는 현재 디코드 중의 화상의 구조가 프레임 구조인지 필드 구조인지를 나타내는 워크로서, 기입 슬롯의 설정이나 슬롯 관리 메모리(SCM)로의 액세스에 영향을 미친다. 2개의 출력필드 워크(T_OFDW, B_OFDW)는 출력화상의 필드번호를 나타내는 워크이다. 기입슬롯용 포인터(WSLP) 및 판독 슬롯용 포인터(RSLP)는 후술하는 바와 같이 코딩형 B의 경우의 메모리 관리에 이용되는 워크로서, 슬롯 관리 메모리(SCM) 중의 워드를 나타내는 어드레스를 항상 유지하고 있다.. The four reference field works T_FRFW, B_FRFW, T_BRFW and B_BRFW correspond respectively to the four reference field registers T_FRFR, B_FRFR, T_BRFR and B_BRFR in the bitstream analyzing section 12, And designates a field number indicating a storage position of an image for reference of motion compensation. The decode row number work (DRNW) is a work for decreasing a row number indicating which portion of one frame is decoded. For example, during the decoding of the first 16 lines, 0 is set, while the next 16 lines are decoded 1, the row number is increased. The decoded work DTYW is a work that indicates the coding type of an image currently being decoded. The output type work OTYW is a work that indicates whether or not the coding type of the image currently being output is B, and is used for identification because the coding type B is different from the memory management method. The decoded structure work DSTW is a work which indicates whether the structure of the image currently being decoded is a frame structure or a field structure and affects the setting of the write slot and the access to the slot management memory SCM. The two output field works T_OFDW and B_OFDW are works that represent the field numbers of the output image. The write slot pointer WSLP and the read slot pointer RSLP are used for memory management in the case of the coding type B as described later and always hold the address indicating the word in the slot management memory SCM .

워크 메모리(52) 중의 슬롯 관리 메모리(SCM)의 어드레스 0으로부터 Sn-1까지의 각 워드에는 0부터 Sn-1 까지 차례로 하나씩 증가하는 초기값이 저장된다. 이들의 초기값은 최초로 오는 코딩형 B의 화상을 디코드할 때 사용되는 기입 슬롯의 번호를 차례로 지정한 값이다. 워크 메모리(52) 중 10개의 워크는,The initial values incrementing from 0 to Sn-1 are sequentially stored in each word from address 0 to Sn-1 of the slot management memory (SCM) in the work memory 52. The initial values of these values are values sequentially designating the number of write slots used when decoding the picture of the coding type B coming first. The ten works in the work memory 52,

T_FRFW=0T_FRFW = 0

B_FRFW=1B_FRFW = 1

T_BRFW=2T_BRFW = 2

B_BRFW=3B_BRFW = 3

DTYW=IDTYW = I

OTYW=IPOTYW = IP

T_OFDW=0T_OFDW = 0

B_OFDW=1B_OFDW = 1

WSLP=0WSLP = 0

RSLP=SnRSLP = Sn

와 같이 초기화된다..

콘트롤러(51)는 프로그램 메모리(53)에 기입된 명령(INST)을 차례로 실행한다. 우선, 콘트롤러(51)는 통상 루틴을 실행한다. 이로써, 비트스트림 해석부(12) 중의 내부 레지스터(36)의 설정이 이루어진다. 화상 출력부(13)로부터 인터럽트 신호(INTR)가 송신되면 콘트롤러(51)는 인터럽트 처리 루틴으로 이행한다. 이로써, 화상 출력부(13) 중의 내부 레지스터(43)의 설정이 이루어지게 된다.The controller 51 sequentially executes the command INST written in the program memory 53. [ First, the controller 51 executes a routine. Thereby, the setting of the internal register 36 in the bitstream analyzing unit 12 is performed. When the interrupt signal INTR is transmitted from the image output unit 13, the controller 51 shifts to the interrupt processing routine. Thereby, the setting of the internal register 43 in the image output unit 13 is performed.

제어부(14)는 통상 루틴의 실행에 의해 비트 스트림 해석부(12)를 제어한다. 상세하게는 다음의 순서 1.1 로부터 순서 1.14 까지가 실행된다.The control unit 14 controls the bit stream analyzing unit 12 by executing a normal routine. In detail, the following steps 1.1 to 1.14 are executed.

순서 1.1 : 헤더 해석부(31)를 기동한다. 이에 응답하여 헤더 해석부(31)는 내부 레지스터(36) 중의 코딩형 레지스터(CTYR) 및 스트럭쳐 레지스터(STRR)에 각각 값을 설정한다.Step 1.1: The header analyzing unit 31 is activated. In response to this, the header analyzing unit 31 sets the values in the coding type register CTYR and the structure register STRR in the internal register 36, respectively.

순서 1.2 : 코딩형 레지스터(CTYR)의 값을 디코드형 워크(DTYW)에 기입한다.Step 1.2: Write the value of the coding type register (CTYR) to the decode type work (DTYW).

순서 1.3 : 스트럭쳐 레지스터(STRR)의 값을 디코드 스트럭쳐(DSTW)에 기입한다.Step 1.3: Write the value of the structure register (STRR) to the decode structure (DSTW).

순서 1.4 : 디코드형 워크(DTYW)가 I 또는 P이고, 또한 출력형 워크(OTYW)가 IP이라면 각각 기입 필드를 지정하기 위한 제 1 및 제 2 필드번호를 다음과 같이하여 결정한다. 즉, 우선, 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 어느 하나에도 포함되지 않은 필드의 번호를 선택한다. 예를 들면, 이들 워크에 0, 1, 2, 3 이라는 값이 들어 있으면 4를 선택하고, 또, 2, 3, 4, 0 이라는 값이 들어 있으면 1을 선택한다. 그리고, 선택한 필드의 번호를 제 1 필드 번호로 한다. 또, 최상용 전방 참조필드 워크(T_FRFW)의 값을 제 2 필드번호로 한다.Step 1.4: If the decoded work DTYW is I or P and the output type work OTYW is IP, the first and second field numbers for designating the write field are determined as follows. That is, first, the number of a field not included in any of the four reference field works T_FRFW, B_FRFW, T_BRFW, and B_BRFW is selected. For example, if these works have values of 0, 1, 2, and 3, select 4, and if they contain values of 2, 3, 4, and 0, select 1. The number of the selected field is set as the first field number. The value of the best forward reference field work T_FRFW is set as the second field number.

순서 1.5 : 디코드형 워크(DTYW)가 I 또는 P이고, 또한 출력형 워크(OTYW)가 B라면 최상용 전방 참조필드 워크(T_FRFW)의 값을 제 1 필드 번호로 하고, 최저용 전방 참조필드 워크(B_FRFW)의 값을 제 2 필드번호로 한다.Step 1.5: If the decoded type work DTYW is I or P and the output type work OTYW is B, the value of the best use forward reference field work T_FRFW is set as the first field number, B_FRFW) is set as the second field number.

순서 1.6 : 디코드형 워크(DTYW)가 I 또는 P이라면 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)를 갱신한다. 구체적으로는, 최상용 후방 참조필드 워크(T_BRFW)의 값을 최상용 전방 참조필드 워크(T_FRFW)에, 최저용 후방 참조필드 워크(B_BRFW)의 값을 최저용 전방 참조필드 워크(B_FRFW)에, 상기 결정된 제 1 필드번호를 최상용 후방 참조필드 워크(T_BRFW)에, 상기 결정된 제 2 필드번호를 최저용 후방 참조필드 워크(B_BRFW)에 각각 기입한다.Step 1.6: If the decoded work (DTYW) is I or P, update the four reference field works (T_FRFW, B_FRFW, T_BRFW, B_BRFW). Specifically, the value of the best-use backward reference field work T_BRFW is set to the best-use forward reference field work T_FRFW, the value of the lowest forward rear reference field work B_BRFW is set to the lowest forward forward reference field work B_FRFW, The first field number is written to the best-practice backward reference field work T_BRFW, and the determined second field number is written to the lowest backward reference field work B_BRFW.

순서 1.7 : 비트스트림 해석부(12)의 내부 레지스터(36)에 움직임 보상의 참조용 필드를 설정한다. 구체적으로는, 최상용 전방 참조필드 워크(T_FRFW)의 값을 최상용 전방 참조필드 레지스터(T_FRFR)에, 최저용 전방 참조필드 워크(B_FRFW)의 값을 최저용 전방 참조필드 레지스터(B_FRFR)에, 최상용 후방 참조필드 워크(T_BRFW)의 값을 최상용 후방 참조필드 레지스터(T_BRFR)에, 최저용 후방 참조필드 워크(B_BRFW)의 값을 최저용 후방 참조필드 레지스터(B_BRFR)에 각각 기입한다.Step 1.7: The reference field for motion compensation is set in the internal register 36 of the bitstream analysis unit 12. [ More specifically, the value of the best forward reference field work T_FRFW is set to the highest priority forward reference field register T_FRFR, the value of the lowest forward forward reference field work B_FRFW is set to the lowest forward forward reference field register B_FRFR, The value of the reference field work T_BRFW is written to the best-suited backward reference field register T_BRFR and the value of the lowermost rear reference field work B_BRFW is written to the lowermost rearward reference field register B_BRFR, respectively.

순서 1.8 : 비트스트림 해석부(12)의 내부 레지스터(36)에 기입용의 필드를 설정한다. 구체적으로는, 디코드형 워크(DTYW)가 I 또는 P인 경우에는 최상용 후방 참조필드 레지스터(T_BRFR)의 값을 최상용 기입필드 레지스터(T_WFDR)에, 최저용 후방 참조필드 레지스터(B_BRFR)의 값을 최저용 기입필드 레지스터(B_WFDR)에 각각 기입한다. 디코드형 워크(DTYW)가 B인 경우에는 4개의 참조필드 레지스터(T_FRFR, B_FRFR, T_BRFR, B_BRFR)의 어느 하나에도 포함되지 않은 필드의 번호를 선택하고, 상기 선택한 필드의 번호를 최상용 기입필드 레지스터(T_WFDR) 및 최저용 기입필드 레지스터(B_WFDR)에 기입한다.Step 1.8: A field for writing is set in the internal register 36 of the bitstream analysis unit 12. [ Concretely, when the decoded work DTYW is I or P, the value of the best-use backward reference field register T_BRFR is set to the best use write field register T_WFDR and the value of the lowest use rearward reference field register B_BRFR is set to the lowest Write field register B_WFDR, respectively. When the decoded work DTYW is B, the number of fields not included in any one of the four reference field registers T_FRFR, B_FRFR, T_BRFR, and B_BRFR is selected and the number of the selected field is stored in the most- T_WFDR and the lowest write field register B_WFDR.

순서 1.9 : 디코드 로우번호 워크(DRNW)에 0을 기입한다.Step 1.9: Write 0 to the decode row number work (DRNW).

순서 1.10 : 기입슬롯을 설정한다. 또, 상기 기입슬롯 설정순서의 상세한 내용에 대해서는 후술하기로 한다.Step 1.10: Set the write slot. Details of the write slot setting procedure will be described later.

순서 1.11 : 16 라인분의 매크로 블록의 디코드를 비트스트림 해석부(12)로 행해지게 한다.Step 1.11: The decoding of the macroblocks for 16 lines is performed by the bitstream analyzing unit 12.

순서 1.12 : 1 프레임의 디코드가 종료되면 순서 1.1로 복귀한다.Step 1.12: When decoding of one frame is finished, return to step 1.1.

순서 1.13 : 디코드 로우번호 워크(DRNW)를 1만큼 증가시킨다.Step 1.13: Increase decode row number work (DRNW) by one.

순서 1.14 : 다음의 16 라인분의 매크로 블록의 디코드를 행하도록 순서 1.10으로 복귀한다.Step 1.14: The procedure returns to Step 1.10 to decode the next 16 macroblocks.

그런데 제어부(14)는 인터럽트 처리루틴의 실행에 의해 화상 출력부(13)를 제어한다. 구체적으로는, 우선 출력화상이 B 픽쳐인지의 여부를 판정하고, 판독 필드번호를 결정하며, 다음에 슬롯번호를 결정하는 동작을 행한다. I 픽쳐 또는 P 픽쳐의 디코드 중이라면 그보다 전에 디코드된 화상을 출력하면 되고, 이것은 꼭 전방 참조에 이용되는 화상이다. B 픽쳐는 그 디코드의 개시로부터 1/2 프레임 늦게 출력된다. 따라서, 다음의 프레임을 출력할 때 B 픽쳐의 디코드 중이라면 상기 B 픽쳐를 출력하면 된다. 상세하게는 인터럽트의 발생마다 다음의 순서 2.1 로부터 순서 2.6 까지가 실행된다.However, the control unit 14 controls the image output unit 13 by executing the interrupt processing routine. Specifically, first, it is determined whether or not the output image is a B picture, the read field number is determined, and then an operation for determining the slot number is performed. If the I picture or the P picture is being decoded, an image decoded earlier may be output, which is an image used for forward reference. The B picture is output one frame later than the start of the decoding. Therefore, if the B picture is being decoded when the next frame is output, the B picture can be output. More specifically, the next steps 2.1 to 2.6 are executed for each occurrence of an interrupt.

순서 2.1 : 출력 로우 레지스터(ORWR)가 0이고, 또한 출력 패리티 레지스터(OPYR)가 0(최상필드의 출력개시)이라면 디코드형 워크(DTYW)의 값을 출력형 워크(OTYW)에 기입한다. 출력형 워크(OTYW)는 다음에 출력할 화상의 코딩형이 B인지 B가 아닌지를 의미한다. 구체적으로는, 디코드형 워크(DTYW)가 I 또는 P인 경우에는 출력형 워크(OTYW)에 IP가, 디코드형 워크(DTYW)가 B인 경우에는 출력형 워크(OTYW)에 B가 각각 기입된다.Step 2.1: If the output low register (ORWR) is 0 and the output parity register (OPYR) is 0 (output of the best field), the value of the decode type work (DTYW) is written to the output type work (OTYW). The output type work OTYW means whether the coding type of the image to be output next is B or B or not. More specifically, when the decoded work DTYW is I or P, IP is written to the output type work OTYW, and B is written to the output type work OTYW when the decoded type work DTYW is B .

순서 2.2 : 출력로우 레지스터(ORWR)가 0이고, 출력 패리티 레지스터(OPYR)가 0(최상필드의 출력개시)이고, 또한 출력형 워크(OTYW)가 IP이라면 최상용 전방 참조필드 워크(T_FRFW)의 값을 최상용 출력필드 워크(T_OFDW)에, 최저용 전방 참조필드 워크(B_FRFW)의 값을 최저용 출력필드 워크(B_OFDW)에 각각 기입한다. 이 때, 전방 참조용의 화상은 그 이전에 디코드된 I 픽쳐 또는 P 픽쳐이다. 따라서, I 픽쳐 또는 P 픽쳐의 디코드 중에는 그 이전에 디코드된 화상이 출력되게 된다.Step 2.2: If the output low register (ORWR) is 0, the output parity register (OPYR) is 0 (output of the best field), and the output type work (OTYW) is IP, the value of the best forward reference field work (T_FRFW) And the value of the lowest forward forward reference field work B_FRFW to the lowest use output field work B_OFDW, respectively. At this time, the picture for forward reference is an I-picture or a P-picture decoded before. Therefore, during the decoding of the I picture or the P picture, the decoded picture is output before that.

순서 2.3 : 출력로우 레지스터(ORWR)가 0이고, 출력 패리티 레지스터(OPYR)가 0(최상필드의 출력개시)이며, 또한 출력형 워크(OTYW)가 B이라면 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 어느 하나에도 포함되지 않은 필드를 선택하고, 상기 선택된 필드의 번호를 최상용 출력필드 워크(T_OFDW) 및 최저용 출력필드 워크(B_OFDW)에 기입한다. 프레임 메모리(11) 중의 코딩형 B의 화상이 기입되어 있는 필드는 전방 예측용 및 후방 예측용 출력필드의 어느쪽에서도 당연히 없을 것이다.Step 2.3: If the output low register (ORWR) is 0, the output parity register (OPYR) is 0 (output of the best field is output), and the output type work (OTYW) is B, then 4 reference field works (T_FRFW, B_FRFW, T_BRFW, and B_BRFW), and writes the number of the selected field to the best effort output field work T_OFDW and the lowest use output field work B_OFDW. The field in which the image of the coding type B in the frame memory 11 is written will not be present in any of the forward prediction output field and the backward prediction output field.

순서 2.4 : 이미 결정된 최상용 출력필드 워크(T_OFDW) 및 최저용 필드 워크(B_OFDW)의 값을 화상 출력부(13)에 설정한다. 구체적으로는, 출력 패리티 레지스터(OPYR)가 0(최상필드를 다음에 출력함)이라면 최상용 출력필드 워크(T_OFDW)의 필드번호를 화상 출력부(13)의 판독 필드 레지스터(RFDR)로 설정한다. 또, 출력 패리티 레지스터(OPYR)가 1(최저필드를 다음에 출력함)이라면 최저용 출력필드 워크(B_OFDW)의 필드번호를 화상 출력부(13)의 판독 필드 레지스터(RFDR)로 설정한다.Step 2.4: The values of the best-effort output field work T_OFDW and the minimum field work B_OFDW that have been determined are set in the image output unit 13. More specifically, if the output parity register OPYR is 0 (outputs the next best field), the field number of the best output field work T_OFDW is set to the read field register RFDR of the image output unit 13. [ If the output parity register OPYR is 1 (the lowest field is output next), the field number of the lowest use output field work B_OFDW is set to the read field register RFDR of the image output unit 13. [

순서 2.5 : 판독 슬롯을 설정한다. 또, 상기 판독 슬롯 설정순서의 상세한 내용에 대해서는 후술하기로 한다.Step 2.5: Set the read slot. Details of the read slot setting procedure will be described later.

순서 2.6 : 인터럽트 처리를 종료한다.Step 2.6: Terminate interrupt processing.

그런데 도 9는 도 1의 MPEG 디코더(10)의 개략 동작, 즉 기입 필드 및 판독 필드의 취급도이다. 도 9에서는 I0, P1, P4, B2, B3, P5의 차례로 입력 비트스트림(IN)이 비트스트림 해석부(12)에 부여되는 것으로 하고 있다. 또, I0나 P4라는 표현은 최초의 I, P, B라는 기호로 코딩형을 나타내고, 다음의 숫자로 표시(출력)의 순서를 나타내고 있다.9 is a schematic operation of the MPEG decoder 10 of FIG. 1, that is, a handling diagram of a write field and a read field. In FIG. 9, it is assumed that the input bit stream IN is given to the bit stream analyzing unit 12 in order of I0, P1, P4, B2, B3, and P5. In addition, the expressions I0 and P4 denote coding types with the first I, P, and B symbols, and show the order of display (output) by the following numbers.

픽쳐(I0)의 디코드 기간 즉, 기간 1의 개시 시점에서는 출력형 워크(OTYW)의 값이 IP이다. 따라서, 기간 1에서는 순서 1.4 및 순서 1.6에 따라 또한 기간 0의 초기값에 기초하여 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 값이 각각 2, 3, 4, 0으로 갱신된다. 그리고, 최상용 후방 참조필드 워크(T_BRFW)의 값 즉, 4가 최상용 기입필드의 번호로 되고, 또한 최저용 후방 참조필드 워크(B_BRFW)의 값 즉, 0이 최저용 기입필드의 번호로 된다. 따라서, 프레임 메모리(11) 중의 필드 4 및 0에 픽쳐(I0)가 기입된다.At the decode period of the picture I0, that is, at the start time of the period 1, the value of the output type work OTYW is IP. Therefore, in period 1, the values of the four reference field works T_FRFW, B_FRFW, T_BRFW, and B_BRFW are updated to 2, 3, 4, and 0, respectively, based on the initial values of period 0 and in accordance with steps 1.4 and 1.6. The value of the best-use backward reference field work T_BRFW, that is, 4 is the number of the best-effort writing field, and the value of the lowest forward rearward reference field work B_BRFW, that is, 0 is the number of the lowest writing field. Therefore, the picture 10 is written to the fields 4 and 0 in the frame memory 11.

픽쳐(P1)의 의 디코드 기간 즉, 기간 2에서는 순서 1.4 및 순서 1.6에 따라 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 값이 각각 4, 0, 1, 2로 갱신된다. 그리고, 최상용 후방 참조필드 워크(T_BRFW)의 값, 즉 1이 최상용 기입필드의 번호로 되고, 또한 최저용 후방 참조필드 워크(B_BRFW)의 값 즉, 2가 최저용 기입필드의 번호로 된다. 따라서, 필드 4 및 0 중의 픽쳐(I0)를 전방 참조함으로써 움직임 보상된 픽쳐(P1)가 필드 1 및 필드 2에 기입된다.The values of the four reference field works T_FRFW, B_FRFW, T_BRFW, and B_BRFW are updated to 4, 0, 1, and 2, respectively, in the decode period of the picture P1, Then, the value of the best-use backward reference field work T_BRFW, that is, 1 is the number of the best-fit write field, and the value of the lowest use backward reference field work B_BRFW, that is, 2 is the number of the lowest write field. Therefore, the motion compensated picture P1 is written to the field 1 and the field 2 by referring forward to the picture I0 in the fields 4 and 0.

픽쳐(P4)의 디코드 기간 즉, 기간 3에서는 순서 1.4 및 순서 1.6에 따라 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 값이 각각 1, 2, 3, 4로 갱신된다. 그리고, 최상용 후방 참조필드 워크(T_BRFW)의 값, 즉 3이 최상용 기입필드의 번호로 되고, 또한 최저용 후방 참조필드 워크(B_BRFW)의 값 즉, 4가 최저용 기입필드의 번호로 된다. 따라서, 필드 1 및 2 중 픽쳐(P1)를 전방 참조함으로써 움직임 보상된 픽쳐(P4)가 필드 3 및 4에 기입된다.The values of the four reference field works T_FRFW, B_FRFW, T_BRFW, and B_BRFW are updated to 1, 2, 3, and 4, respectively, in the decode period of the picture P4, that is, The value of the best-use backward reference field work T_BRFW, that is, 3 is the number of the best-effort writing field, and the value of the lowest forward rearward reference field work B_BRFW, that is, 4 is the number of the lowest writing field. Therefore, the motion compensated picture P4 is written in the fields 3 and 4 by forward reference to the field 1 and the double picture P1.

픽쳐(B2)의 디코드 기간 즉, 기간 4에서는 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 갱신이 행해지지 않는다. 그리고, 상기 4개의 참조필드 워크의 어느 하나에도 포함되지 않은 필드의 번호 즉, 0이 최상용 및 최저용의 기입 필드의 번호로 된다. 따라서, 프레임 메모리(11) 중의 필드 0 및 3개의 부가슬롯에 움직임 보상된 픽쳐(B2)가 기입된다. 이 때, 필드 1 및 2 중의 픽쳐(P1)가 전방 참조되고, 필드 3 및 4 중의 픽쳐(P4)가 후방 참조된다.The four reference field works T_FRFW, B_FRFW, T_BRFW, and B_BRFW are not updated in the decoding period of the picture B2, that is, in the period 4. The number of fields not included in any of the four reference field works, that is, 0 is the number of the write fields for the best use and the lowest use. Therefore, the picture B2 is motion-compensated in the field 0 and three additional slots in the frame memory 11. At this time, the picture P1 in the fields 1 and 2 is referred to in the forward direction, and the picture P4 in the fields 3 and 4 is referred to in the backward direction.

픽쳐(B3)의 디코드 기간 즉, 기간 5에서는 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 갱신이 행해지지 않는다. 그리고, 상기 4개의 참조필드 워크의 어느 하나에도 포함되지 않은 필드의 번호 즉, 0이 최상용 및 최저용의 기입필드의 번호로 된다. 따라서, 움직임 보상된 픽쳐(B3)가 필드 0 및 3개의 부가슬롯에 기입된다. 이 때, 필드 1 및 2 중의 픽쳐(P1)가 전방 참조되고, 필드 3 및 4 중의 픽쳐(P4)가 후방 참조된다.The four reference field works T_FRFW, B_FRFW, T_BRFW, and B_BRFW are not updated in the decoding period of the picture B3, that is, in the period 5. The number of fields not included in any of the four reference field works, that is, 0 is the number of the write fields for the best use and the lowest use. Therefore, the motion compensated picture B3 is written in the field 0 and three additional slots. At this time, the picture P1 in the fields 1 and 2 is referred to in the forward direction, and the picture P4 in the fields 3 and 4 is referred to in the backward direction.

픽쳐(P5)의 디코드 기간 즉, 기간(6)의 개시 시점에서는 출력형 워크(OTYW)의 값이 B이다. 따라서, 기간 6에서는 순서 1.5 및 순서 1.6에 따라 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW)의 값이 각각 3, 4, 1, 2로 갱신된다. 그리고, 최상용 후방 참조필드 워크(T_BRFW)의 값 즉, 1이 최상용 기입필드의 번호로 되고, 또한 최저용 후방 참조필드 워크(B_BRFW)의 값 즉, 2가 최저용 기입필드의 번호로 된다. 따라서, 움직임 보상된 픽쳐(P5)가 필드 1 및 2에 기입된다. 이 때, 필드 3 및 4 중의 픽쳐(P4)가 전방 참조된다.The value of the output type work OTYW is B at the decode period of the picture P5, that is, at the start time of the period 6. Therefore, in period 6, the values of the four reference field works T_FRFW, B_FRFW, T_BRFW, and B_BRFW are updated to 3, 4, 1, and 2, respectively, in accordance with steps 1.5 and 1.6. The value of the best-use backward reference field work T_BRFW, that is, 1 is the number of the best-effort write field, and the value of the lowest forward reference field work B_BRFW, that is, 2 is the number of the lowest write field. Therefore, the motion compensated picture P5 is written in fields 1 and 2. At this time, the picture P4 in the fields 3 and 4 is referred to forward.

한편, 도 7의 (b)에서 설명한 바와 같이, 화상 출력부(13) 중의 출력 패리티 레지스터(OPYR)의 값은 각 필드의 출력 개시의 인터럽트 직전에 다음에 최상 필드를 출력하는 상태라면 0으로 되고, 다음에 최저 필드를 출력하는 상태라면 1로 된다. 결국, 최상 필드의 출력 개시 시점에서 출력 패리티 레지스터(OPYR)의 값 '1로부터 0으로 변한다. 도 9는 상기 출력 패리티 레지스터(OPYR)의 1로부터 0으로의 변화에 동기하여 최상용 출력 필드 워크(T_OFDW) 및 최저용 출력 필드 워크(B_OFDW)가 갱신되는 것을 나타낸다.7 (b), the value of the output parity register OPYR in the image output unit 13 becomes 0 if it is in the state of outputting the next best field immediately before interruption of output of each field , And is 1 if the lowest field is output next. As a result, the value '1' of the output parity register OPYR changes from 0 to 0 at the output start time of the best field. Fig. 9 shows that the top output field work (T_OFDW) and the lowest use output field work (B_OFDW) are updated in synchronization with the change from 1 to 0 of the output parity register (OPYR).

구체적으로 설명하면, 기간 2의 후반의 개시 시점에서 순서 2.2에 따라 2개의 전방 참조필드 워크(T_FRFW, B_FRFW)의 값을 이용하여 2개의 출력필드 워크(T_OFDW, B_OFDW)의 값이 각각 4, 0으로 갱신된다. 따라서, 프레임 메모리(11) 중의 필드 4에 저장되어 있던 픽쳐(I0)의 최상 필드가 기간 2의 후반에, 필드 0에 저장되어 있던 픽쳐(I0)의 최저 필드가 기간 3의 전반에 각각 출력된다.More specifically, the values of the two output fieldworks (T_OFDW and B_OFDW) are set to 4 and 0, respectively, using the values of the two forward reference field works (T_FRFW, B_FRFW) . Therefore, the best field of the picture I0 stored in the field 4 of the frame memory 11 is output in the second half of the period 2 and the lowest field of the picture I0 stored in the field 0 in the first half of the period 3 respectively .

기간 3의 후반의 개시 시점에서는 순서 2.2에 따라 2개의 출력 필드 워크(T_OFDW, B_OFDW)의 값이 각각 1, 2로 갱신된다. 따라서, 필드 1에 저장되어 있던 픽쳐(P1)의 최상 필드가 기간 3의 후반에, 필드 2에 저장되어 있던 픽쳐(P1)의 최저 필드가 기간(4)의 전반에 각각 출력된다.At the start of the second half of period 3, the values of the two output fieldworks T_OFDW and B_OFDW are updated to 1 and 2, respectively, in accordance with step 2.2. The minimum field of the picture P1 in which the best field of the picture P1 stored in the field 1 is stored in the second half of the period 3 and the picture P1 that is stored in the field 2 is outputted in the first half of the period 4 respectively.

기간 4의 후반의 개시 시점에서는 순서 2.3에 따라 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW) 중 어느 하나에도 포함되지 않은 필드의 번호 즉, 0이 2개의 출력 필드 워크(T_OFDW, B_OFDW)에 기입된다. 따라서, 픽쳐(B2)의 디코드 개시로부터 1/2 프레임 늦게 픽쳐(B2)의 출력이 개시되고, 픽쳐(B2)의 최상 필드가 기간 4의 후반에, 픽쳐(B2)의 최저 필드가 기간 5의 전반에 각각 출력된다.(T_OFDW, B_OFDW), which is not included in any one of the four reference field works (T_FRFW, B_FRFW, T_BRFW, B_BRFW) according to step 2.3, . Therefore, the output of the picture B2 is started at a half frame later than the start of the decoding of the picture B2, the highest field of the picture B2 is in the second half of the period 4 and the lowest field of the picture B2 is in the period 5 Respectively.

기간 5의 후반의 개시 시점에서도 순서 2.3에 따라 4개의 참조필드 워크(T_FRFW, B_FRFW, T_BRFW, B_BRFW) 중 어느 하나에도 포함되지 않는 필드의 번호 즉, 0이 2개의 출력 필드 워크(T_OFDW, B_OFDW)에 기입된다. 따라서, 픽쳐(B3)의 디코드 개시로부터 1/2 프레임 늦게 픽쳐(B3)의 출력이 개시되고, 픽쳐(B3) 의 최상 프레임이 기간 5의 후반에, 픽쳐(B3)의 최저 필드가 기간 6의 전반에 각각 출력된다.(T_OFDW, B_OFDW), which is not included in any of the four reference field works (T_FRFW, B_FRFW, T_BRFW, B_BRFW) according to the procedure 2.3 at the start of the second half of period 5, . Therefore, the output of the picture B3 is started at a half frame later than the start of the decoding of the picture B3, the highest frame of the picture B3 is in the latter half of the period 5, the lowest field of the picture B3 is in the period 6 Respectively.

기간 6의 후반의 개시 시점에서는 순서 2.2에 따라 2개의 전방 참조 필드 워크(T_FRFW, B_FRFW)의 값을 이용하여 2개의 출력 필드 워크(T_OFDW, B_OFDW)의 값이 각각 3, 4로 갱신된다. 따라서, 필드 3에 저장되어 있던 픽쳐(P4)의 최상 필드가 기간 6의 후반에, 필드 4에 저장되어 있던 픽쳐(P4)의 최저 필드가 다음 기간의 전반에 각각 출력된다.At the start of the second half of the period 6, the values of the two output fieldworks T_OFDW and B_OFDW are updated to 3 and 4, respectively, by using the values of the two forward reference field works T_FRFW and B_FRFW in accordance with the procedure 2.2. Therefore, the lowest field of the picture P4 stored in the field 4 and the highest field of the picture P4 stored in the field 3 are output respectively in the latter half of the period 6 and the first half of the next period.

이상과 같이 도 9에 의하면 I0, P1, B2, B3, P4의 순서로 출력 화상이 얻어진다. 또, 도 9에 의하면, 기간 2의 후반에서 필드 4로부터 픽쳐(I0)의 최상 필드가 판독된 직후에, 기간 3의 전반에서 상기 필드 4에 픽쳐(P4)의 최저 필드가 기입되고 있는 것을 알 수 있다. 결국, 프레임 메모리(11) 중의 필드의 효율적인 이용이 이루어지고 있다. 또, 기간 4의 후반의 개시 시점으로부터 기간 5의 후반의 종료 시점까지는 코딩형 B의 화상에 대하여 필드 0 및 3개의 부가 슬롯으로의 기입과 판독이 동시에 행해지고 있으나, 다음에 설명하는 슬롯 관리에 의해 문제가 생기지 않도록 되어 있다.As described above, according to Fig. 9, an output image is obtained in the order of I0, P1, B2, B3, and P4. 9, immediately after the best field of the picture I0 is read from the field 4 in the second half of the period 2, it is found that the minimum field of the picture P4 is written in the field 4 in the first half of the period 3 . As a result, efficient use of the field in the frame memory 11 is being achieved. In addition, writing and reading to the field 0 and three additional slots are simultaneously performed for the coding type B picture from the start time of the second half of the period 4 to the end time of the second half of the period 5, There is no problem.

여기에서, 순서 1.10에 의한 기입 슬롯 설정 순서의 상세한 내용에 대하여 설명하기로 한다. 대충 말하면, 제어부(14)는 비트스트림 해석부(12) 중의 제 1 및 제 2 기입 슬롯 레지스터(WSR1, WSR2)의 설정을 행한 후, 일정한 조건이 갖춰질 때까지 대기한다.Here, the details of the write slot setting procedure in step 1.10 will be described. The control unit 14 sets the first and second write slot registers WSR1 and WSR2 in the bitstream analyzing unit 12 and waits until a predetermined condition is satisfied.

우선, 제 1 및 제 2 기입 슬롯 레지스터(WSR1, SWR2)의 설정에 대하여 설명하기로 한다. 디코드형 워크(DTYW)가 I 또는 P이고, 또한 디코드 스트럭쳐 워크(DSTW)가 프레임 구조를 지시하고 있다면 디코드 로우 번호 워크(DRNW)의 값을 제 1 및 제 2 기입 슬롯 레지스터(WSR1, WSR2)에 기입한다. 디코드형 워크(DTYW)가 I 또는 P이고, 또한 디코드 스트럭쳐 워크(DSTW)가 필드 구조를 지시하고 있다면, (디코드 로우 번호 워크(DRNW)의 값)×2를 제 1 기입 슬롯 레지스터(WSR1)에, (디코드 로우 번호 워크(DRNW)의 값)×2+1을 제 2 기입 슬롯 레지스터(WSR2)에 각각 기입한다. 다만, DRNW×2≥N 이라면 DRNW×2가 DRNW×2-N으로, DRNW×2+1이 DRNW×2+1-N으로 각각 변경된다. 이상의 설정에 의해 디코드형 워크(DTYW)가 I 또는 P인 경우에는 프레임 구조이거나 필드 구조인 것을 묻지 않고, 최상 필드는 최상용 기입 필드 레지스터(T-WFDR)에서 지시되는 필드로, 최저용 필드는 최저용 기입 필드 레지스터(B-WFDR)에서 지시되는 필드로 각각 기입된다. 각각의 필드 내에서는 최초의 8 라인이 슬롯 0에, 다음의 8 라인이 슬롯 1에 라고 하는 것처럼 기입된다.First, the setting of the first and second write slot registers WSR1 and SWR2 will be described. If the decoded work DTYW is I or P and the decode structure work DSTW indicates the frame structure, the value of the decode row number work DRNW is written to the first and second write slot registers WSR1 and WSR2 . If the decoded work DTYW is I or P and the decode structure work DSTW indicates the field structure, (the value of the decode row number work DRNW) x2 is written to the first write slot register WSR1 (Value of the decode row number work DRNW) x 2 + 1 into the second write slot register WSR2, respectively. However, if DRNW × 2 ≥ N, DRNW × 2 is changed to DRNW × 2-N and DRNW × 2 + 1 is changed to DRNW × 2 + 1-N, respectively. When the decoded work DTYW is I or P, the frame structure or the field structure is not required. In this case, the best field is the field indicated by the best write field register (T-WFDR) (B-WFDR), respectively. Within each field, the first 8 lines are written to slot 0, and the next 8 lines are written to slot 1.

디코드형 워크(DTYW)가 B이라면 제어부(14)는 다음의 순서 3.1로부터 순서 3.7까지를 실행함으로써 제 1 및 제 2의 기입 슬롯 레지스터(WSR1, WSR2)를 설정한다.If the decoded work DTYW is B, the control unit 14 sets the first and second write slot registers WSR1 and WSR2 by executing the following procedures 3.1 to 3.7.

순서 3.1 : 슬롯 관리 메모리(SCM) 중의 기입 슬롯용 포인터(WSLP)에서 지시된 어드레스의 워크로부터 제 1 슬롯번호 X를 인출한다.Step 3.1: The first slot number X is fetched from the work of the address indicated by the pointer WSLP for the write slot in the slot management memory (SCM).

순서 3.2 : 슬롯 관리 메모리(SCM) 중의 다음 어드레스의 워드로부터 제 2 슬롯번호 Y를 인출한다.Step 3.2: fetch the second slot number Y from the next address word in the slot management memory (SCM).

순서 3.3 : 제 1 슬롯번호 X를 제 1 기입 슬롯 레지스터(WSR1)에 기입한다.Step 3.3: Write the first slot number X into the first write slot register WSR1.

순서 3.4 : 제 2 슬롯번호 Y를 제 2 기입 슬롯 레지스터(WSR2)에 기입한다.Step 3.4: Write the second slot number Y to the second write slot register WSR2.

순서 3.5 : 판독 슬롯 레지스터(RSLR)의 설정 기준을 위하여 슬롯 관리 메모리(SCM) 중에 제 1 슬롯번호(X)를 기입한다. 구체적으로는, 디코드 스트럭쳐 워크(DSTW)가 프레임 구조를 지시하는 경우에는 슬롯 관리 메모리(SCM) 중의 (기입 슬롯용 포인터(WSLP)의 값)+Sn-(디코드 로우 번호 워크(DRNW)의 값)에서 지시된 어드레스의 워드에 제 1 슬롯번호(X)를 기입한다. 디코드 스트럭쳐 워크(DSTW)가 필드 구조를 지시하는 경우에는 슬롯 관리 메모리(SCM) 중의 (기입 슬롯용 포인터(WSLP)의 값)+Sn에서 지시된 어드레스의 워드에 제 1 슬롯번호(X)를 기입한다.Step 3.5: Write the first slot number (X) in the slot management memory (SCM) for the setting reference of the read slot register (RSLR). More specifically, when the decode structure work DSTW indicates a frame structure, the value of the write slot pointer WSLP + Sn- (the value of the decode row number work DRNW) in the slot management memory SCM And writes the first slot number (X) in the word of the indicated address. When the decode structure work DSTW indicates the field structure, the first slot number X is written into the word of the address indicated by (the value of the write slot pointer WSLP) + Sn in the slot management memory SCM .

순서 3.6 : 마찬가지로 판독 슬롯 레지스터(RSLR)의 설정 준비를 위하여 슬롯 관리 메모리(SCM) 중에 제 2 슬롯번호(Y)를 기입한다. 구체적으로는, 디코드 스트럭쳐 워크(DSTW)가 프레임 구조를 지시하는 경우에는 슬롯 관리 메모리(SCM) 중의 (기입 슬롯용 포인터(WSLP)의 값)+Sn-(디코드 로우 번호 워크(DRNW)의 값)+N에서 지시된 어드레스의 워드에 제 2 슬롯번호(Y)를 기입한다. 디코드 스트럭쳐 워크(DSTW)가 필드 구조를 지시하는 경우에는 슬롯 관리 메모리(SCM) 중의 (기입 슬롯용 포인터(WSLP)의 값)+Sn+1에서 지시된 어드레스의 워드에 제 2 슬롯번호(Y)를 기입한다.Step 3.6: Similarly, to prepare for setting of the read slot register (RSLR), write the second slot number (Y) in the slot management memory (SCM). Specifically, when the decode structure work DSTW indicates the frame structure, the value of the write slot pointer WSLP + Sn- (the value of the decode row number work DRNW) in the slot management memory SCM + N And writes the second slot number (Y) in the word of the address indicated by the second slot number. When the decode structure work DSTW indicates the field structure, the second slot number Y is written into the word of the address indicated by (the value of the write slot pointer WSLP) + Sn + 1 in the slot management memory SCM .

순서 3.7 : 기입 슬롯용 포인터(WSLP)를 2만큼 증가시킨다.Step 3.7: Increase the write slot pointer (WSLP) by 2.

그런데 제어부(14)는 비트스트림 해석부(12) 중의 제 1 및 제 2 기입 슬롯 레지스터(WSR1, WSR2)의 설정을 행한 후, 다음의 조건 1부터 4 까지의 조건 중 어느 하나의 조건이 만족될 때 까지 대기한다. 이것은 어느 슬롯으로부터 데이터가 판독되기 전에 상기 슬롯으로 기입을 행하는 것이 없도록 하기 위하여 필요하다.The control unit 14 sets the first and second write slot registers WSR1 and WSR2 in the bitstream analyzing unit 12 and then selects one of the following conditions 1 to 4 Wait until. This is necessary to prevent writing to the slot before data is read from any slot.

조건 1 : 디코드형 워크(DTYW)가 I 또는 P이고, 최상용 출력 필드 워크(T_OFDW)의 값이 최상용 후방 참조필드 워크(T_BRFW)의 값과 다르고, 또한 최저용 출력필드 워크(B_OFDW)의 값이 최저용 후방 참조필드 워크(B_BRFW)의 값과 다를 것. 이 조건이 만족되는 경우에는 기입을 행하기로 하는 필드의 출력이 이미 종료되기 때문에 그 필드로의 기입을 행할 수 있다.Condition 1: If the decoded work DTYW is I or P, the value of the best use output field work T_OFDW is different from the value of the best use backward reference field work T_BRFW and the value of the lowest use output field work B_OFDW is Must be different from the value of the Lowest Rear Reference Fieldwork (B_BRFW). When this condition is satisfied, the output of the field to be written is already finished, so that writing into that field can be performed.

조건 2 : 디코드형 워크(DTYW)가 I 또는 P이고, 디코드 스트럭쳐 워크(DSTW)가 프레임 구조를 지시하고 있으며, 또한 출력 로우 레지스터(ORWR)의 값이 디코드 로우 번호 워크(DRNW)의 값보다 클 것. 이 조건이 만족되는 경우에는 출력 로우 레지스터(ORWR)의 값보다 작은 번호를 갖는 슬롯이 출력 완료되므로 기입을 행할 수 있다.Condition 2: If the decoded work (DTYW) is I or P and the decode structure work (DSTW) indicates the frame structure and the value of the output row register (ORWR) is larger than the value of the decode row number work (DRNW) that. When this condition is satisfied, a slot having a number smaller than the value of the output low register (ORWR) is output, and writing can be performed.

조건 3 : 디코드형 워크(DTYW)가 I 또는 P이고, 디코드 스트럭쳐 워크(DSTW)가 필드 구조를 지시하고 있으며, 또한 최상 필드의 디코드 기간일 것. 코딩형 I 또는 P의 디코드를 행하는 경우, 적어도 1 필드는 사용 가능하다. 최상 필드는 상기 사용 가능한 필드에 기입되므로 기입을 행할 수 있다.Condition 3: The decoded work (DTYW) is I or P, the decode structure work (DSTW) indicates the field structure, and the decode period of the best field. When decoding of the coding type I or P is performed, at least one field is usable. Since the best field is written in the usable field, writing can be performed.

조건 4 : 디코드형 워크(DTYW)가 B이고, 또한 판독 슬롯용 포인터(RSLP)의 값이 기입 슬롯용 포인터(WSLP)의 값 이상일 것. 슬롯 관리 메모리(SCM) 중 판독 슬롯용 포인터(RSLP)에서 지시된 어드레스에 저장되는 슬롯번호는 나중에 설명하는 바와 같이 현재 출력 중의 슬롯번호이다. 따라서, 상기 번호보다 작은 번호를 갖는 슬롯은 이미 당연히 판독되어 있기 때문에 기입을 행할 수 있다.Condition 4: The decoded work (DTYW) is B and the value of the read slot pointer (RSLP) is greater than the value of the write slot pointer (WSLP). The slot number stored in the address indicated by the pointer (RSLP) for the read slot in the slot management memory (SCM) is the slot number during the current output as described later. Therefore, since the slot having the number smaller than the number is already read out, the writing can be performed.

다음에, 순서 2.5에 의한 판독 슬롯 설정 순서의 상세한 내용에 대하여 설명하기로 한다. 출력형 워크(OTYW)가 IP라면 제어부(14)는 화상 출력부(13) 중의 판독 슬롯 레지스터(RSLR)에 동일 화상 출력부(13)의 출력 로우 레지스터(ORWR)의 값을 설정하는 것만으로 된다. 코딩형 I 또는 P의 화상 출력시에는 판독 필드 중의 판독 슬롯의 번호가 0으로부터 차례로 하나씩 증가하면 된다. 그런데, 출력 로우 레지스터(ORWR) 중의 출력 로우 번호도 0으로부터 차례로 하나씩 증가하여 간다. 따라서, 판독 슬롯 레지스터(RSLR)에 출력 로우 레지스터(ORWR)의 값을 설정하면 된다.Next, the details of the read slot setting procedure in step 2.5 will be described. If the output type work OTYW is an IP, the control unit 14 merely sets the value of the output row register ORWR of the same image output unit 13 to the read slot register RSLR of the image output unit 13 . At the time of image output of the coding type I or P, the number of reading slots in the reading field may be incremented by one in order from zero. However, the output row number in the output row register (ORWR) also increases by one from 0 in order. Therefore, the value of the output row register ORWR may be set in the read slot register RSLR.

출력형 워크(OPTW)가 B이라면 제어부(14)는 다음의 순서 4.1로부터 순서 4.3까지의 단순한 처리를 실행함으로써 판독 슬롯 레지스터(RSLR)를 설정한다. 이것은, 상기 순서 3.5 및 순서 3.6에 나타낸 준비 처리의 성과이다. 또, 판독 슬롯용 포인터(RSLP)는 8 라인 출력마다 하나씩 증가한다.If the output type work (OPTW) is B, the control unit 14 sets the read slot register (RSLR) by executing the following simple procedure from step 4.1 to step 4.3. This is the result of the preparatory process shown in the above-mentioned steps 3.5 and 3.6. In addition, the pointer RSLP for the read slot is incremented by one every eight line outputs.

순서 4.1 : 슬롯 관리 메모리(SCMN) 중의 판독 슬롯용 포인터(RSLP)에서 지시된 어드레스의 워드로부터 슬롯번호(Z)를 인출한다.Step 4.1: Retrieve the slot number (Z) from the word of the address indicated by the pointer (RSLP) for the read slot in the slot management memory (SCMN).

순서 4.2 : 판독 슬롯 어드레스(RSLR)에 슬롯번호(Z)를 기입한다.Step 4.2: Write the slot number (Z) in the read slot address (RSLR).

순서 4.3 : 판독 슬롯용 포인터(RSLP)를 1만큼 증가시킨다.Step 4.3: Increase the pointer for the read slot (RSLP) by one.

도 10∼도 17은 도 1의 MPEG 디코더(10)의 상세 동작예를 도시한 것이다. 도 10∼도 15는 각종 레지스터의 갱신 과정을, 도 16 및 도 17은 슬롯 관리 메모리(SCM)의 갱신 과정을 각각 도시한 도면이다. 도 10∼도 17에서는 도 9의 경우와 마찬가지로, I0, P1, P4, B2, B3, P5의 순서로 입력 비트 스트림(IN)이 비트스트림 해석부(12)에 부여되는 것으로 하고 있다. 그 중, 픽쳐(P1, P4, B2, P5)는 프레임 구조를 갖고, 픽쳐(I0, B3)는 필드 구조를 갖는 것으로 한다. 또, 설명의 간략화를 위하여 N=6 또는 Sn=9로 한다. 또, 16 라인의 디코드에 16 라인 출력분의 시간이 걸리고, 게다가 수직 귀선 구간에는 디코드를 행하지 않는 것으로 한다.Figs. 10 to 17 show detailed operational examples of the MPEG decoder 10 of Fig. Figs. 10 to 15 are diagrams for explaining the updating process of various registers, and Fig. 16 and Fig. 17 are diagrams showing the updating process of the slot management memory (SCM), respectively. 10 to 17, the input bit stream IN is given to the bit stream analyzing unit 12 in the order of I0, P1, P4, B2, B3, and P5, as in the case of FIG. It is assumed that the pictures P1, P4, B2 and P5 have a frame structure and the pictures I0 and B3 have a field structure. For the sake of simplicity, N = 6 or Sn = 9. It is assumed that 16 lines of decode takes 16 lines of output time and decode is not performed in the vertical retrace interval.

도 10∼도 15에 있어서, 0으로부터 71까지 번호 부여된 각 기간은 화상의 8 라인 출력 기간에 대응되어 있고, 출력(표시)은 I0, P1, B2, B3, P4의 순서로 이루어진다. 각 프레임의 디코드 개시 시점은 최상 필드(OPYR=0)의 최후의 8 라인의 출력개시 시점이다. 디코드 스트럭쳐 워크(DSTW) 란의 FR은 프레임 구조를, FD는 필드 구조를 각각 나타낸다. 여기에서, 도 12 중의 기간(24)에 주목하면 최저용 기입필드 레지스터(B_WFDR)의 값 및 판독 필드 레지스터(RFDR)의 값이 모두 4이다. 결국, 필드 4로의 데이터 기입과 동시에 상기 필드 4로부터의 데이터 판독이 생기고 있다. 그러나, 기간 24에서는 판독 슬롯 레지스터(RSLR)의 값이 이미 5에 달해 있고, 제 1 및 제 2 기입 슬롯 레지스터(WSR1, WSR2)의 값이 모두 0이므로 전혀 문제가 생기지 않는다. 또, 기간 43으로부터 기간 59까지는 최상용 기입 필드 레지스터(T_WFDR)의 값, 최저용 기입 필드 레지스터(B_WFDR)의 값 및 판독 필드 레지스터(RFDR)의 값이 모두 0이다. 결국, 코딩형 B의 화상에 대하여 필드 0 및 3개의 부가 슬롯으로의 기입과 판독이 동시에 행해진다. 그러나, 기간 43으로부터 기간 59까지의 어떠한 기간에도 제 1 기입 슬롯 레지스터(WSR1)의 값과 제 2 기입 슬롯 레지스터(WSR2)의 값 및 판독 슬롯 레지스터(RSLR)의 값이 서로 다르므로 전혀 문제는 생기지 않는다.10 to 15, each period numbered from 0 to 71 corresponds to the 8-line output period of the image, and the output (display) is made in the order of I0, P1, B2, B3, and P4. The decode start timing of each frame is the output start timing of the last 8 lines of the best field (OPYR = 0). The FR in the Decode Structure Work (DSTW) field indicates the frame structure, and the FD indicates the field structure. Here, paying attention to period 24 in Fig. 12, the value of the lowest use write field register B_WFDR and the value of the read field register RFDR are all 4. As a result, data is written to the field 4 and data is read from the field 4 at the same time. However, in the period 24, since the value of the read slot register RSLR already reaches 5 and the values of the first and second write slot registers WSR1 and WSR2 are all 0, no problem occurs at all. From the period 43 to the period 59, the value of the most useful write field register T_WFDR, the value of the least use write field register B_WFDR, and the value of the read field register RFDR are all zero. As a result, writing and reading to and from the field 0 and three additional slots are performed simultaneously for the coding type B picture. However, there is no problem since the value of the first write slot register WSR1 differs from the value of the second write slot register WSR2 and the value of the read slot register RSLR in any period from period 43 to period 59 Do not.

도 16 및 도 17은 디코드형 워크(DTYW)가 B인 경우의 기입 슬롯 설정순서(순서 3.1∼순서 3.7)와, 출력형 워크(OTYW)가 B인 경우의 판독 슬롯 설정순서(순서 4.1∼순서 4.3)에 의한 슬롯 관리 메모리(SCM)의 갱신 과정을 도시한다. 도 16 및 도 17에 있어서, 각 행은 슬롯 관리 메모리(SCM)의 워드를 나타내고, 각 열은 화상의 8 라인 출력 기간에 대응한다. 슬롯 관리 메모리(SCM)의 어드레스 0으로부터 8 까지의 각 워드에는 도 16 중의 좌단 열에 도시된 바와 같이 0으로부터 8까지 차례로 하나씩 증가하는 초기값이 저장된다. 기입 슬롯용 포인터(WSLP)의 초기값은 0이고, 판독 슬롯용 포인터(RSLP)의 초기값은 9이다. 또, 슬롯 관리 메모리(SCM)는 20워드의 용량을 갖는 것으로 한다.Figs. 16 and 17 show the write slot setting procedure (procedure 3.1 to procedure 3.7) in the case where the decoded work DTYW is B and the read slot setting procedure in the case where the output type work OTYW is B 4.3) to update the slot management memory (SCM). 16 and 17, each row represents the word of the slot management memory (SCM), and each column corresponds to the 8-line output period of the image. As shown in the leftmost column in FIG. 16, each word from addresses 0 to 8 of the slot management memory (SCM) stores an initial value incremented by one from 0 to 8 in order. The initial value of the write slot pointer WSLP is 0, and the initial value of the read slot pointer RSLP is 9. It is assumed that the slot management memory (SCM) has a capacity of 20 words.

도 16 중의 왼쪽에서 2번째 및 3번째 열은 프레임 구조를 갖는 픽쳐(B2) 최초의 16 라인의 디코드 기간 즉, 도 13 중의 기간 36 및 기간 37에 대응하는 것이다. 이들 기간에서는 슬롯 관리 메모리(SCM) 중의 기입 슬롯용 포인터(WSLP)에서 지시된 어드레스(어드레스 0)의 워드로부터 슬롯번호 0이 인출되고, 다음 어드레스(어드레스 1)의 워드로부터 슬롯번호 1이 인출되어 제 1 기입 슬롯 레지스터(WSR1)에 슬롯번호 0이, 제 2 기입 슬롯 레지스터(WSR2)에 슬롯번호 1이 각각 기입된다. 이 때, 순서 3.5 및 순서 3.6에 따라 판독 슬롯 레지스터(RSLR)의 설정 준비를 위하여 슬롯 관리 메모리(SCM) 중의 어드레스(9)의 워드에 슬롯번호 0이, 어드레스(15)의 워드에 슬롯번호 1이 각각 기입된다. 그리고, 기입 슬롯용 포인터(WSLP)가 2만큼 증가한다.The second and third columns from the left in Fig. 16 correspond to the decode periods of the first 16 lines of the picture (B2) having the frame structure, that is, the periods 36 and 37 in Fig. In these periods, slot number 0 is extracted from the address (address 0) indicated by the write slot pointer WSLP in the slot management memory SCM and slot number 1 is extracted from the next address (address 1) A slot number 0 is written to the first write slot register WSR1 and a slot number 1 is written to the second write slot register WSR2. At this time, in order to prepare for the setting of the read slot register (RSLR) in accordance with steps 3.5 and 3.6, the slot number 0 is assigned to the word of the address 9 in the slot management memory (SCM) Respectively. Then, the write slot pointer WSLP is increased by two.

도 16 중의 왼쪽에서 9번째의 열은 픽쳐(B2)의 최상 필드의 최초의 8 라인의 출력 기간 즉, 도 13 중의 기간 43에 대응하는 것이다. 이 기간에서는 슬롯 관리 메모리(SCM) 중의 판독 슬롯용 포인터(RSLP)에서 지시된 어드레스(어드레스 9)의 워드로부터 슬롯번호 0이 인출되어 판독 슬롯 레지스터(RSLR)에 슬롯번호 0이 기입된다. 이 슬롯번호 0은 1/2 프레임 기간만큼 전에 슬롯 관리 메모리(SCM) 중에 기입된 번호이다. 그리고, 판독 슬롯용 포인터(RSLP)가 1만큼 증가한다.The ninth column from the left in Fig. 16 corresponds to the output period of the first eight lines of the best field of the picture B2, that is, the period 43 in Fig. In this period, the slot number 0 is extracted from the word (address 9) indicated by the pointer RSLP for the read slot in the slot management memory SCM and the slot number 0 is written in the read slot register RSLR. The slot number 0 is a number written in the slot management memory (SCM) by a half frame period before. Then, the pointer (RSLP) for the read slot is incremented by one.

도 16 중의 왼쪽에서 14번째 및 15번째의 열은 필드 구조를 갖는 픽쳐(B3) 최초의 16 라인의 디코드 기간 즉, 도 14 중의 기간(48) 및 기간(49)에 대응하는 것이다. 이들 기간에서는 슬롯 관리 메모리(SCM) 중의 기입 슬롯용 포인터(WSLP)로 지시된 어드레스(어드레스 12)의 워드로부터 슬롯번호 6이 인출되고, 다음 어드레스(어드레스 13)의 워드로부터 슬롯번호 8이 인출되어 제 1 기입 슬롯 레지스터(WSR1)에 슬롯번호 6이, 제 2 기입 슬롯 레지스터(WSR2)에 슬롯번호 8이 각각 기입된다. 이 때, 순서 3.5 및 순서 3.6에 따라 판독 슬롯 레지스터(RSLR)의 설정 준비를 위하여 슬롯 관리 메모리(SCM) 중의 어드레스 1의 워드에 슬롯번호 6이, 어드레스 2의 워드에 슬롯번호 8이 각각 기입된다. 그리고, 기입 슬롯용 포인터(WSLP)가 2만큼 증가한다.The 14th and 15th columns from the left in Fig. 16 correspond to the decode periods of the first 16 lines of the picture (B3) having the field structure, that is, the periods 48 and 49 in Fig. In these periods, slot number 6 is fetched from the address (address 12) indicated by pointer WSLP for write slot in the slot management memory SCM and slot number 8 is fetched from the next address (address 13) The slot number 6 is written to the first write slot register WSR1 and the slot number 8 is written to the second write slot register WSR2. At this time, in order to prepare for setting of the read slot register (RSLR) in accordance with steps 3.5 and 3.6, slot number 6 is written to the address 1 word and slot number 8 is written to the word address 2 respectively in the slot management memory (SCM) . Then, the write slot pointer WSLP is increased by two.

도 17 중의 왼쪽에서 5번째의 열은 픽쳐(B3)의 최상 필드의 최초의 8 라인의 출력기간 즉, 도 14 중의 기간 55에 대응하는 것이다. 이 기간에서는 슬롯 관리 메모리(SCM) 중의 판독 슬롯용 포인터(RSLP)에서 지시된 어드레스(어드레스 1)의 워드로부터 슬롯번호 6이 인출되어 판독 슬롯 레지스터(RSLR)에 슬롯번호 6이 기입된다. 상기 슬롯번호 6은 1/2 프레임 기간만큼 전에 슬롯 관리 메모리(SCM) 중에 기입된 번호이다. 그리고, 판독 슬롯용 포인터(RSLP)가 1만큼 증가한다.The fifth column from the left in Fig. 17 corresponds to the output period of the first eight lines of the best field of the picture B3, that is, the period 55 in Fig. In this period, slot number 6 is extracted from the word (address 1) indicated by the pointer RSLP for the read slot in the slot management memory SCM and slot number 6 is written in the read slot register RSLR. The slot number 6 is a number written in the slot management memory (SCM) by a half frame period. Then, the pointer (RSLP) for the read slot is incremented by one.

그런데, 도 16 및 도 17에서는 어떠한 기간에서도 부호 W가 부여된 워드(기입 슬롯의 설정에 이용되는 2 워드)의 어드레스 보다 부호 R이 부여된 워드(판독 슬롯의 설정에 이용되는 1 워드)의 어드레스 쪽이 항상 크게 되어 있다. 따라서, 기입 대상의 슬롯은 판독이 종료된 슬롯인 것이 보증되고 있다. 또, 만일 고속 디코드가 달성되어 16 라인의 출력 기간에 비하여 16 라인의 디코드 기간 쪽이 짧아진다 하여도 상기 조건 4가 만족될 때 까지 제어부(14)가 대기 상태로 되어 있으므로 문제는 생기지 않는다.16 and 17, the address of the word assigned with the code R (one word used for the setting of the read slot) than the address of the word given the code W (two words used for setting the write slot) Is always large. Therefore, it is guaranteed that the slot to be written is the slot whose reading has been completed. Even if the high-speed decode is achieved and the decode period of the 16 lines becomes shorter than the output period of the 16 lines, no problem arises because the control section 14 is in the standby state until the above condition 4 is satisfied.

이상 설명한 바와 같이, 도 1의 MPEG 디코더(10)에 의하면 수직 귀선 구간에서는 입력 비트 스트림(IN)의 디코드를 행하지 않는 조건 하에서, 각각 1 필드분의 용량을 갖는 5개의 메모리 블록(20, 21, 22, 23, 24) 중 1개와, 3개의 부가 슬롯(25)으로 B 픽쳐의 인터레이스 변환을 실현할 수 있으므로 프레임 메모리(11)의 용량이 약 2.5 프레임분의 용량까지 삭감된다.As described above, according to the MPEG decoder 10 of Fig. 1, under the condition that the input bit stream IN is not decoded in the vertical retrace interval, the memory blocks 20, 21, 22, 23, and 24 and the three additional slots 25, the capacity of the frame memory 11 is reduced to the capacity of about 2.5 frames.

또, 부가 슬롯의 수를 줄일 수 있다. 도 18은 N+2개의 슬롯으로 B 픽쳐의 인터레이스 변환을 실현한 경우를 나타낸다(N=6). 다만, 도 18 중의 오른쪽에서 5번째의 열은 다른 열에 비하여 2배의 디코드 속도를 요구한다. 도 19는 N+1개의 슬롯으로 B 픽쳐의 인터레이스 변환을 실현한 경우를 나타낸다(N=6). 다만, 도 19 중의 오른쪽에서 5번째의 열은 수평 귀선 기간 내에 16 라인분의 디코드가 완료할 것을 요구한다. 따라서, N+3개의 슬롯으로 B 픽쳐의 인터레이스 변환을 실현하면 되고, 그 경우에도 16M비트의 기억 용량을 갖는 1개의 메모리 칩으로 MPEG 2에 필요한 모든 메모리 기능을 실현할 수 있다.In addition, the number of additional slots can be reduced. Fig. 18 shows a case where interlace conversion of a B picture is realized by N + 2 slots (N = 6). However, the fifth column from the right in Fig. 18 requires a decoding speed twice as high as the other columns. FIG. 19 shows a case where interlace conversion of a B picture is realized by N + 1 slots (N = 6). However, the fifth column from the right in Fig. 19 requires that decoding for 16 lines be completed within the horizontal retrace period. Therefore, the interlace conversion of B pictures can be realized with N + 3 slots, and even in this case, one memory chip having a storage capacity of 16 Mbits can realize all the memory functions required for MPEG2.

본 발명의 바람직한 실시예들은 예시의 목적을 위해 개시된 것이며, 당업자라면 첨부된 특허청구범위에 개시된 본 발명의 사상과 범위를 통해 각종 수정, 변경, 대체 및 부가가 가능할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is evident that many alternatives, modifications, and variations will be apparent to those skilled in the art.

Claims (12)

프레임 메모리를 포함한 화상 처리장치에 있어서,An image processing apparatus including a frame memory, 상기 프레임 메모리는 각각 화상 1/2 프레임분의 용량을 갖는 5개의 블록과, 상기 5개 블록의 각각 보다 작은 용량을 갖는 1개의 부가 블록으로 구성되고,Wherein the frame memory is composed of five blocks each having a capacity of 1/2 frame of image and one additional block having a capacity smaller than that of each of the five blocks, 일단, 상기 5개의 블록 중에서 선택된 4개의 블록은 움직임 보상의 참조용을 위한 I 및/또는 P 픽쳐의 저장에 이용되고, 나머지 1개의 블록과 상기 부가 블록으로 B 픽쳐의 인터레이스 변환에 이용되는 1개의 데이터 메모리를 구성하며,First, four blocks selected from the five blocks are used for storing I and / or P pictures for reference of motion compensation, and one block and one additional block used for interlace conversion of the B picture Constitute a data memory, 그 후, 상기 B 픽쳐용의 데이터 메모리는 상기 4개의 블록 내의 1개의 블록과 상기 부가 블록으로 재구성되는 것을 특징으로 하는 화상처리장치.And then the data memory for the B picture is reconstructed into one block in the four blocks and the additional block. 제 1 항에 있어서,The method according to claim 1, 상기 5개의 블록의 각각과 상기 부가 블록은 각각 일정한 용량을 갖는 복수개의 슬롯으로 각각 분할되고,Each of the five blocks and the additional block are each divided into a plurality of slots each having a constant capacity, 상기 화상처리장치는,The image processing apparatus includes: 슬롯번호를 기억하기 위한 슬롯 관리 메모리와,A slot management memory for storing a slot number, 상기 슬롯 관리 메모리에 기억된 슬롯번호를 이용하여 상기 데이터 메모리의 판독을 제어하기 위한 콘트롤러를 추가로 포함하고,Further comprising a controller for controlling reading of the data memory using the slot number stored in the slot management memory, 상기 콘트롤러는 상기 데이터 메모리의 판독을 위하여 상기 데이터 메모리의 기입시에 이용한 슬롯번호를 슬롯 관리 메모리에 기입하는 것을 특징으로하는 화상처리장치.Wherein the controller writes the slot number used for writing the data memory into the slot management memory for reading the data memory. 제 2 항에 있어서,3. The method of claim 2, 상기 데이터 메모리의 기입시에 이용되는 슬롯 번호의 상기 슬롯 관리 메모리 중의 기억 위치를 지정하기 위한 기입 슬롯용 포인터와,A write slot pointer for designating a storage position in the slot management memory of a slot number used at the time of writing the data memory, 상기 데이터 메모리의 판독시에 이용되는 슬롯 번호의 상기 슬롯 관리 메모리 중의 기억 위치를 지정하기 위한 판독 슬롯용 포인터를 추가로 포함하고,Further comprising a pointer for a read slot for specifying a storage position in the slot management memory of a slot number used in reading the data memory, 상기 기입 슬롯용 포인터 및 상기 판독 슬롯용 포인터는 상기 데이터 메모리 중의 어느 슬롯의 판독이 행해진 직후에 상기 슬롯의 기입이 행해지도록 갱신되는 것을 특징으로 하는 화상처리장치.And the pointer for the write slot and the pointer for the read slot are updated so that writing of the slot is performed immediately after any slot of the data memory is read. 제 2 항에 있어서,3. The method of claim 2, 상기 데이터 메모리의 각 슬롯은 디코드 처리 단위의 라인 수의 1/2에 상당하는 라인수 분량의 데이터 단위의 용량을 갖는 것을 특징으로 하는 화상처리장치.Wherein each slot of said data memory has a capacity of data units of a number of lines corresponding to 1/2 of the number of lines of decoding processing units. 제 4 항에 있어서,5. The method of claim 4, 상기 콘트롤러는 2개의 슬롯번호를 이용하여 상기 데이터 메모리의 기입을 제어하는 것을 특징으로 하는 화상처리장치.Wherein the controller controls writing of the data memory using two slot numbers. 제 4 항에 있어서,5. The method of claim 4, 상기 콘트롤러는 상기 B 픽쳐가 프레임 구조를 갖는 경우에는 상기 B 픽쳐를 구성하는 최상 필드 및 최저 필드 각각의 데이터 단위가 각각 상기 데이터 메모리에 기입되도록 2개의 슬롯 번호를 이용하여 상기 데이터 메모리의 기입을 제어하는 것을 특징으로 하는 화상처리장치.When the B picture has the frame structure, the controller controls the writing of the data memory using the two slot numbers so that the data units of the top field and the bottom field constituting the B picture are respectively written to the data memory The image processing apparatus comprising: 제 6 항에 있어서,The method according to claim 6, 상기 콘트롤러는 판독 슬롯용 포인터가 상기 최상 필드의 데이터 판독으로부터 상기 최저 필드의 데이터 판독까지 변화하는 정도만큼 상기 2개의 슬롯번호를 분리시켜 상기 슬롯 관리 메모리에 기입하는 것을 특징으로 하는 화상처리장치.Wherein the controller separates the two slot numbers by an amount that the pointer for the read slot changes from the data read of the best field to the data read of the lowest field and writes the two slot numbers into the slot management memory. 제 4 항에 있어서,5. The method of claim 4, 상기 콘트롤러는 상기 B 픽쳐가 필드 구조를 갖는 경우에는 상기 B 픽쳐를 구성하는 상반부 및 하반부 데이터 단위가 각각 상기 데이터 메모리에 기입되도록 2개의 슬롯 번호를 이용하여 상기 데이터 메모리의 기입을 제어하는 것을 특징으로 하는 화상처리장치.The controller controls writing of the data memory by using two slot numbers so that upper and lower half data units constituting the B picture are written in the data memory when the B picture has a field structure, To the image processing apparatus. 제 8 항에 있어서,9. The method of claim 8, 상기 콘트롤러는 판독 슬롯용 포인터가 상기 상반부 및 하반부 분량의 필드 데이터를 연속하여 판독시키도록 각각 2개의 슬롯 번호를 상기 슬롯 관리 메모리에 기입하는 것을 특징으로 하는 화상처리장치.Wherein the controller writes two slot numbers into the slot management memory so that the pointer for the read slot continuously reads the field data of the upper half and the lower half. 제 2 항에 있어서,3. The method of claim 2, 상기 데이터 메모리의 기입시에 이용되는 슬롯번호의 상기 슬롯 관리 메모리 중의 기억 위치를 지정하기 위한 기입 슬롯용 포인터와,A write slot pointer for designating a storage position in the slot management memory of a slot number used at the time of writing the data memory, 상기 데이터 메모리의 판독시에 이용되는 슬롯번호의 상기 슬롯 관리 메모리 중의 기억위치를 지정하기 위한 판독 슬롯용 포인터를 추가로 포함하고,Further comprising a pointer for a read slot for specifying a storage position in the slot management memory of a slot number used in reading the data memory, 상기 콘트롤러는 상기 기입 슬롯용 포인터의 값이 항상 상기 판독 슬롯용 포인터의 값보다 작아지도록 제어하는 것을 특징으로 하는 화상처리장치.Wherein the controller controls the value of the write slot pointer to be always smaller than the value of the pointer for the read slot. 복수개의 슬롯을 갖는 데이터 메모리와,A data memory having a plurality of slots, 슬롯번호를 기억하기 위한 슬롯 관리 메모리와,A slot management memory for storing a slot number, 상기 슬롯 관리 메모리에 기억된 슬롯번호를 이용하여 상기 데이터 메모리의 판독과 기입을 제어하기 위한 콘트롤러를 포함하고,And a controller for controlling reading and writing of the data memory using the slot number stored in the slot management memory, 상기 콘트롤러는 상기 데이터 메모리 중의 어느 슬롯의 판독이 행해진 직후에 상기 슬롯의 기입이 행해지고, 또한 상기 기입에 할당된 시간 중 전반 기간에 다른 슬롯의 판독이 행해지도록 상기 데이터 메모리의 판독과 기입을 제어하는 것을 특징으로 하는 화상처리장치.The controller controls reading and writing of the data memory so that the slot is written immediately after reading of any slot in the data memory and reading of another slot is performed in the first half of the time allotted to the writing And the image processing apparatus. 제 11 항에 있어서,12. The method of claim 11, 각각 화상 1/2 프레임분의 용량을 갖는 5개의 블록과, 상기 5개의 블록의 각각보다 작은 용량을 갖는 1개의 부가블록으로 구성된 프레임 메모리를 추가로 포함하고,Further comprising a frame memory composed of five blocks each having a capacity of an image of one half frame and one additional block having a capacity smaller than that of each of the five blocks, 일단, 상기 5개의 블록 중에서 선택된 4개의 블록은 움직임 보상의 참조용을 위한 I 및/또는 P 픽쳐의 저장에 이용되고, 나머지 1개의 블록과 상기 부가 블록으로 B 픽쳐의 인터레이스 변환에 이용되는 상기 데이터 메모리를 구성하고,First, the four blocks selected from the five blocks are used for storing I and / or P pictures for reference of motion compensation, and the remaining one block and the additional block are used for interlace conversion of the B picture Configure the memory, 그 후, 상기 B 픽쳐용의 데이터 메모리는 상기 4개의 블록 내의 1개의 블록과 상기 부가 블록으로 재구성되는 것을 특징으로 하는 화상처리장치.And then the data memory for the B picture is reconstructed into one block in the four blocks and the additional block.
KR1019970040045A 1996-08-22 1997-08-22 Image processor KR100472564B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP22088896 1996-08-22
JP8-220,888 1996-08-22
JP???8-220,888 1996-08-22

Publications (2)

Publication Number Publication Date
KR19980018884A true KR19980018884A (en) 1998-06-05
KR100472564B1 KR100472564B1 (en) 2005-05-16

Family

ID=16758114

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970040045A KR100472564B1 (en) 1996-08-22 1997-08-22 Image processor

Country Status (6)

Country Link
US (1) US6356317B1 (en)
EP (1) EP0825781B1 (en)
KR (1) KR100472564B1 (en)
CN (2) CN1495599A (en)
DE (1) DE69731342T2 (en)
SG (1) SG99841A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6198773B1 (en) 1997-12-18 2001-03-06 Zoran Corporation Video memory management for MPEG video decode and display system
US6765625B1 (en) * 1998-03-09 2004-07-20 Divio, Inc. Method and apparatus for bit-shuffling video data
JP2002520638A (en) * 1998-07-06 2002-07-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Multiple image display by reading image data from memory
EP1758403A3 (en) * 1998-12-23 2007-09-26 Zoran Corporation Video memory management for MPEG video decode and display system
EP1142345A1 (en) * 1998-12-23 2001-10-10 Zoran Corporation Video memory management for mpeg video decode and display system
US6614437B1 (en) 1999-01-25 2003-09-02 Sony Corporation Apparatus and method for efficient memory utilization in an electronic system
JP2000358193A (en) * 1999-06-15 2000-12-26 Matsushita Electric Ind Co Ltd Video device with image memory function
JP3406255B2 (en) * 1999-09-29 2003-05-12 松下電器産業株式会社 Image decoding apparatus and method
EP1383339A1 (en) 2002-07-15 2004-01-21 Matsushita Electric Industrial Co., Ltd. Memory management method for video sequence motion estimation and compensation
JP4315731B2 (en) * 2003-05-16 2009-08-19 株式会社ルネサステクノロジ Image decoding display device

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6143885A (en) 1984-08-08 1986-03-03 Sanyo Electric Co Ltd Scan converter
JPH03241963A (en) 1990-02-20 1991-10-29 Canon Inc Memory controller
KR0134177B1 (en) * 1992-03-24 1998-04-22 Toshiba Kk Variable length code recording playback apparatus
FR2703535A1 (en) * 1993-03-31 1994-10-07 Philips Electronique Lab Method and apparatus for decoding compressed images
FR2707118B1 (en) * 1993-06-30 1995-10-06 Sgs Thomson Microelectronics Processor system, in particular of image processing, comprising a memory bus of variable size.
JP3256627B2 (en) 1993-11-11 2002-02-12 株式会社東芝 Video decoding method and apparatus
JPH0818953A (en) 1994-07-01 1996-01-19 Hitachi Ltd Dynamic picture decoding display device
JPH08107482A (en) 1994-10-07 1996-04-23 Graphics Commun Lab:Kk Image decoder
EP0710028A3 (en) * 1994-10-28 2000-01-19 Kabushiki Kaisha Toshiba Image decoding apparatus
JP2823809B2 (en) 1995-01-26 1998-11-11 株式会社グラフィックス・コミュニケーション・ラボラトリーズ Image decoding method and image decoding device
US6064803A (en) * 1995-03-01 2000-05-16 Matsushita Electric Industrial Co., Ltd. Image information decoder with a reduced capacity frame memory
FR2731864B1 (en) 1995-03-14 1997-06-06 Sgs Thomson Microelectronics MPEG DECODER WITH REDUCED MEMORY CAPACITY
JP2935340B2 (en) 1995-03-17 1999-08-16 日本電気株式会社 Video decoding device
JPH08289302A (en) 1995-04-14 1996-11-01 Toshiba Corp Image decoding device
EP0793389B1 (en) * 1996-02-27 2001-08-16 STMicroelectronics S.r.l. Memory reduction in the MPEG-2 main profile main level decoder
JPH09247614A (en) * 1996-03-14 1997-09-19 Matsushita Electric Ind Co Ltd Image signal processing unit
US5907372A (en) * 1996-06-28 1999-05-25 Hitachi, Ltd. Decoding/displaying device for decoding/displaying coded picture data generated by high efficiency coding for interlace scanning picture format
US5847771A (en) * 1996-08-14 1998-12-08 Bell Atlantic Network Services, Inc. Digital entertainment terminal providing multiple digital pictures
US5926227A (en) * 1997-07-28 1999-07-20 Lsi Logic Corporation Video decoder dynamic memory allocation system and method with error recovery
US6072548A (en) * 1997-07-28 2000-06-06 Lsi Logic Corporation Video decoder dynamic memory allocation system and method allowing variable decoded image size
US6088047A (en) * 1997-12-30 2000-07-11 Sony Corporation Motion compensated digital video decoding with buffered picture storage memory map
US6118488A (en) * 1998-08-31 2000-09-12 Silicon Integrated Systems Corporation Method and apparatus for adaptive edge-based scan line interpolation using 1-D pixel array motion detection

Also Published As

Publication number Publication date
KR100472564B1 (en) 2005-05-16
EP0825781A2 (en) 1998-02-25
US6356317B1 (en) 2002-03-12
CN1175029A (en) 1998-03-04
CN1165836C (en) 2004-09-08
DE69731342T2 (en) 2005-03-17
EP0825781B1 (en) 2004-10-27
CN1495599A (en) 2004-05-12
DE69731342D1 (en) 2004-12-02
SG99841A1 (en) 2003-11-27
EP0825781A3 (en) 2001-11-07

Similar Documents

Publication Publication Date Title
US5841475A (en) Image decoding with dedicated bidirectional picture storage and reduced memory requirements
US5850483A (en) Image decompressing apparatus with efficient image data transfer
US6320909B1 (en) Picture decoding and display unit including a memory having reduce storage capacity for storing pixel data
KR100201981B1 (en) The memory control apparatus and image decoder using that
US6081298A (en) MPEG decoder with reduced memory capacity
KR19980018884A (en) An image processor (Image Processor)
US6064803A (en) Image information decoder with a reduced capacity frame memory
US6104752A (en) Apparatus and method of decoding high efficiency coded picture data with picture size resizing
JPH0865686A (en) Image decoding device
JP3307856B2 (en) Image processing device
JP3307822B2 (en) Image processing device
KR20030057690A (en) Apparatus for video decoding
US5946036A (en) Image decoding using read/write memory control based on display region setting
KR100269426B1 (en) Motion compensator having an improved frame memory
JP3262464B2 (en) Image decoding device
KR100269427B1 (en) Method for generating address in a frame memory
KR0141303B1 (en) Apparatus for selecting still image in moving image decoder
JPH114443A (en) Information processing unit
KR100243479B1 (en) Rearrange apparatus of output data of frame memory
KR100243472B1 (en) Method for reading a field-pictured macroblock in a frame memory
KR0180168B1 (en) An apparatus for reordering frames in a video coder
Wang et al. SDRAM bus schedule of HDTV video decoder
KR19990026427A (en) Motion vector distance calculation method in frame memory
KR19990005576A (en) The address distance calculation method in the frame memory
KR19990005579A (en) Address generator in frame memory

Legal Events

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

Payment date: 20110126

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee