KR19980043656A - High speed MPEG decoder and its run length error processing method - Google Patents

High speed MPEG decoder and its run length error processing method Download PDF

Info

Publication number
KR19980043656A
KR19980043656A KR1019960061608A KR19960061608A KR19980043656A KR 19980043656 A KR19980043656 A KR 19980043656A KR 1019960061608 A KR1019960061608 A KR 1019960061608A KR 19960061608 A KR19960061608 A KR 19960061608A KR 19980043656 A KR19980043656 A KR 19980043656A
Authority
KR
South Korea
Prior art keywords
macroblock
block
run
signal
decoding
Prior art date
Application number
KR1019960061608A
Other languages
Korean (ko)
Other versions
KR100209913B1 (en
Inventor
김성봉
Original Assignee
김광호
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김광호, 삼성전자 주식회사 filed Critical 김광호
Priority to KR1019960061608A priority Critical patent/KR100209913B1/en
Publication of KR19980043656A publication Critical patent/KR19980043656A/en
Application granted granted Critical
Publication of KR100209913B1 publication Critical patent/KR100209913B1/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

본 발명은 복수개의 경로로 나누어 복호화할 때 런길이 에러가 발생하면 해당 슬라이스에 대해 적절한 처리를 할 수 있도록 한 고속 MPEG 복호화장치 및 그의 런길이 에러 처리방법에 관한 것이다. 이러한 본 발명은 헤더정보로부터 검출한 슬라이스의 수직위치정보 및 매크로블럭의 순서정보를 그때의 행카운터값 및 매크로블럭 카운터값과 비교하여 스킵된 매크로블럭 플래그 신호를 결정하는 헤더복호화기를 구비한다. 가변길이 복호화장치에서 런길이 에러를 검출하여 관련정보를 보내면, 헤더복호화기는 스킵된 매크로블럭 플래그 신호를 인에이블시키고 블럭패턴신호를 0으로 복호화하여 출력한다. 복수개의 런/레벨 복호화기에서는 블럭패턴 및 블럭판독신호가 0인 동안의 모든 블럭에 대해 64개의 0값을 런/레벨 복호화된 데이타로 출력한다. 따라서, 시스템클럭에 대한 부담을 줄이고 시스템에 치명적인 영향이 미치는 것을 방지할 수 있는 효과가 있다.The present invention relates to a fast MPEG decoding apparatus and a run length error processing method thereof, which enable proper processing of a corresponding slice when a run length error occurs when decoding into a plurality of paths. The present invention includes a header decoder which determines the skipped macroblock flag signal by comparing the vertical position information of the slice and the macroblock order information detected from the header information with the row counter value and the macroblock counter value at that time. When the variable length decoding apparatus detects a run length error and sends related information, the header decoder enables the skipped macroblock flag signal and decodes the block pattern signal to 0 and outputs it. The plurality of run / level decoders output 64 zero values as run / level decoded data for all blocks while the block pattern and the block read signal are zero. Therefore, there is an effect that can reduce the burden on the system clock and prevent the harmful effects on the system.

Description

고속 MPEG 복호화장치 및 그의 런길이 에러 처리방법High speed MPEG decoder and its run length error processing method

본 발명은 고속의 처리속도를 요구하는 MPEG 복호화장치에 관한 것으로, 특히 여러개의 경로(Path)로 나누어 복호화하는 과정에서 런길이(Run-length) 에러가 발생했을 경우 해당 슬라이스(Slice)에 대해 적절한 처리를 할 수 있도록 한 고속 MPEG 복호화장치 및 그의 런길이 에러 처리방법에 관한 것이다.The present invention relates to an MPEG decoding device that requires a high processing speed. In particular, when a run-length error occurs during decoding by dividing into multiple paths, the present invention is suitable for a corresponding slice. A high speed MPEG decoder and its run length error processing method are provided.

최근 고선명 텔레비젼(HD-TV), 디지탈 VTR 및 캠코더, 멀티미디어(Multimedia), 영상 전화기등과 같은 시스템에서는 영상과 음성을 디지탈 신호로 부호화한 후 전송하거나 기록매체에 저장하고, 이를 다시 복호화하여 재생하는 방식이 주로 사용되고 있다. 이러한 부호화 및 복호화 시스템에서는 데이타의 전송효율을 극대화시키기 위해 전송데이타량을 보다 더 효과적으로 압축하기 위한 기술이 요구되고 있다. 일반적으로 MPEG(Moving Picture Experts Group) 복호화장치는 압축 부호화되어 전송되는 비트열(Bit stream)을 입력받아 비트열에 부가된 헤더(Header)정보를 해석하고, 입력비트열을 부호화의 역과정을 통해 원래의 신호로 복원시킨다. 이때 헤더정보의 복호화 및 부호화된 계수의 복호화는 단일경로를 통하여 행해진다.Recently, in systems such as high-definition television (HD-TV), digital VTR and camcorder, multimedia, video telephone, etc., video and audio are encoded into digital signals, transmitted or stored on a recording medium, and decoded and played back. The method is mainly used. In such an encoding and decoding system, a technique for compressing a transmission data amount more effectively is required to maximize data transmission efficiency. In general, a MPEG (Moving Picture Experts Group) decoding apparatus receives a bit stream that is compressed and encoded, interprets header information added to the bit stream, and converts the input bit stream into an original process through an inverse process of encoding. Restore to the signal of. At this time, decoding of the header information and decoding of the encoded coefficient are performed through a single path.

이와 같이 복호화를 수행하는데 있어, 부호화량이 작은 비트열을 처리해야 하는 메인레벨(Main Level; ML)에 속하는 매체에서는 일반적인 시스템클럭을 사용한다. 그러나 고선명 텔레비젼(HD-TV)과 같이 하이레벨(High Level; HL)에 속하는 매체의 경우에는 많은 량의 데이타를 처리해야 하므로 복호화 동작이 고속으로 행해져야 한다. 고속동작을 위해서는 적어도 100MHz이상의 시스템클럭이 필요한데, 이러한 시스템클럭을 사용하여 동작이 가능한 하드웨어는 구현하기가 어렵고, 만일 상기 하드웨어를 구현하더라도 제조원가를 과도하게 상승시키게 되는 문제점이 있었다.In performing decoding as described above, a general system clock is used in a medium belonging to a main level (ML) that needs to process a bit string having a small encoding amount. However, in the case of a medium belonging to a high level (HL) such as high-definition television (HD-TV), since a large amount of data must be processed, the decoding operation must be performed at a high speed. A system clock of at least 100 MHz is required for high speed operation. Hardware capable of operating using such a system clock is difficult to implement, and even if the hardware is implemented, there is a problem of excessively increasing manufacturing costs.

종래에는 이러한 문제점을 해결하기 위하여, 매크로블럭(Macroblock)에서 4개의 휘도신호블럭과 2개의 색차신호블럭과 DC(직류성분)계수를 복수개의 경로를 통해 복호화하는 장치를 개발하였다. 이 복호화장치는 고속의 처리속도를 요구하는 매체에서 시스템클럭의 속도를 증가시키지 않고도 입력비트열을 고속으로 처리할 수 있으므로 시스템클럭에 대한 부담을 줄일 수 있는 장점이 있다. 아울러, 고주파수의 시스템클럭을 발생시키는 하드웨어를 구현할 필요가 없으므로 제조원가를 절감할 수 있는 장점이 있다.Conventionally, to solve this problem, an apparatus for decoding four luminance signal blocks, two color difference signal blocks, and a DC (direct current component) coefficient in a macroblock through a plurality of paths has been developed. This decoding apparatus has the advantage of reducing the burden on the system clock because it can process the input bit stream at a high speed without increasing the system clock speed in a medium requiring a high processing speed. In addition, there is no need to implement the hardware to generate a high-frequency system clock has the advantage of reducing the manufacturing cost.

상기와 같이 단일경로로 복호화하는 일반적인 복호화장치는 가변길이 복호화장치(Variable Length Decoder, VLD)에서 런길이 에러가 발생했을 경우 에러가 발생한 슬라이스에 대해 적절한 처리를 하기 위한 회로를 구비하고 있다. 그러나 고속의 처리속도를 고려하여 복수개의 경로로 복호화하는 장치는 가변길이 복호화장치에서 런길이 에러가 발생하더라도 이에 대처할 수 있는 회로가 없으므로 부호화된 데이타를 제대로 복원할 수 없다는 문제점이 있었다.As described above, a general decoding apparatus for decoding in a single path includes a circuit for appropriately processing a slice in which an error occurs when a run length error occurs in a variable length decoder (VLD). However, a device that decodes a plurality of paths in consideration of a high processing speed has a problem in that encoded data cannot be properly restored because there is no circuit that can cope with a run length error in a variable length decoder.

본 발명의 목적은 고속의 처리속도를 요구하는 매체에서 시스템클럭의 속도를 증가시키지 않고 부호화된 데이타를 복수개의 경로로 복호화함으로써 복수개의 복호화기 및 시스템클럭에 대한 부담을 줄일 수 있도록 한 고속 MPEG 복호화장치 및 그의 런길이 에러 처리방법을 제공하는데 있다.It is an object of the present invention to reduce the burden on a plurality of decoders and system clocks by decoding encoded data into a plurality of paths without increasing the system clock speed in a medium requiring a high processing speed. An apparatus and its run length error handling method are provided.

본 발명의 다른 목적은 복수개의 경로로 복호화하는 과정에서 런길이 에러가 발생하면 전송된 에러관련정보를 검사하여 현재 복호화중인 슬라이스부터 다음 개시부호(Start Code)가 검출될 때까지의 슬라이스에 대해 적절한 처리를 할 수 있도록 한 고속 MPEG 복호화장치 및 그의 런길이 에러 처리방법을 제공하는데 있다.Another object of the present invention is to check the transmitted error-related information when a run length error occurs in the process of decoding a plurality of paths, and to check the slice from the slice currently being decoded until the next start code is detected. The present invention provides a high speed MPEG decoder and its run length error processing method.

도 1은 본 발명이 적용되는 고속 MPEG 복호화장치의 개략적인 구성을 나타낸 블럭도.1 is a block diagram showing a schematic configuration of a fast MPEG decoding apparatus to which the present invention is applied.

도 2는 부호화된 입력비트열을 복호화할 때 런길이 에러가 발생한 슬라이스에 대한 처리방법을 설명하기 위한 타이밍 관계도.2 is a timing relationship diagram for explaining a processing method for a slice in which a run length error occurs when decoding an encoded input bit string.

※ 도면의 주요부분에 대한 부호의 설명※ Explanation of code for main part of drawing

1,7,15 : 역다중화기2∼4 : FIFO메모리1,7,15 Demultiplexers 2 to 4 FIFO memory

5,13 : 런/레벨 복호화기6,14 : 스캔변환부5,13: run / level decoder 6,14: scan converter

10,18 : 다중화기11,19 : 역양자화기10,18: multiplexer 11,19: inverse quantizer

12,20 : 역DCT부22 : 헤더복호화기12,20: reverse DCT 22: header decoder

상기와 같은 목적들을 달성하기 위한 본 발명의 고속 MPEG 복호화장치는 입력된 비트열로부터 런길이 에러를 검출하여 가변길이 복호화된 데이타와 상기 에러관련정보를 복수개의 경로로 보내는 가변길이 복호화장치를 구비한다. 복수개의 FIFO메모리는 가변길이 복호화장치를 거쳐 복수개의 경로로 분리된 데이타 및 헤더정보를 저장한다. 하나의 FIFO메모리에 연결된 헤더복호화기는 헤더정보로부터 검출한 슬라이스의 수직위치정보 및 매크로블럭의 순서정보를 그때의 행카운터값 및 매크로블럭 카운터값과 비교하여 스킵된 매크로블럭 플래그 신호를 결정한다. 아울러 이 신호가 인에이블된 상태이면 블럭패턴신호를 0으로 복호화한다. 나머지 FIFO메모리에 각각 연결된 복수개의 런/레벨 복호화기는 블럭패턴신호에 따라 블럭판독신호를 결정하고 이 블럭판독신호에 따라 데이타를 런/레벨 복호화한다. 이때 블럭패턴 및 블럭판독신호가 0인 동안의 모든 블럭에 대해서는 64개의 0값을 런/레벨 복호화된 데이타로 출력하게 된다.The high speed MPEG decoding apparatus of the present invention for achieving the above object is provided with a variable length decoding apparatus for detecting a run length error from the input bit string and sending the variable length decoded data and the error-related information to a plurality of paths . The plurality of FIFO memories store data and header information separated into a plurality of paths through a variable length decoding apparatus. The header decoder connected to one FIFO memory determines the skipped macroblock flag signal by comparing the vertical position information of the slice and the macroblock order information detected from the header information with the row counter value and the macroblock counter value at that time. If the signal is enabled, the block pattern signal is decoded to zero. A plurality of run / level decoders respectively connected to the remaining FIFO memories determine the block read signal according to the block pattern signal and run / level decode the data according to the block read signal. At this time, 64 zero values are output as run / level decoded data for all blocks while the block pattern and the block read signal are zero.

또한 본 발명의 고속 MPEG 복호화장치에서의 런길이 에러 처리방법은 복호화된 헤더정보로부터 슬라이스의 수직위치정보와 매크로블럭의 순서정보를 검출하여 레지스터에 래치하는 제 1과정과, 래치된 슬라이스의 수직위치정보 및 매크로블럭의 순서정보를 그때의 행카운터값 및 매크로블럭 카운터값과 비교하여 스킵된 매크로블럭 플래그 신호를 인에이블 또는 디스에이블시키는 제 2과정과, 스킵된 매크로블럭 플래그 신호에 따라 정상적으로 매크로블럭의 런/레벨 복호화를 수행하거나 일정기간동안 런/레벨 복호화 출력을 0으로 하여 출력하는 제 3과정으로 이루어진다.In addition, the run length error processing method of the high-speed MPEG decoding apparatus of the present invention detects the vertical position information of the slice and the order information of the macroblock from the decoded header information and latches them in the register, and the vertical position of the latched slice. A second step of enabling or disabling the skipped macroblock flag signal by comparing the information and the sequence information of the macroblock with the row counter value and the macroblock counter value at that time; and the macroblock normally according to the skipped macroblock flag signal. A third process may be performed to perform run / level decoding or to output the run / level decoding output as 0 for a predetermined period.

이하, 첨부된 도 1 및 도 2를 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다.Hereinafter, an embodiment of the present invention will be described in detail with reference to FIGS. 1 and 2 as follows.

도 1은 본 발명이 적용되는 고속 MPEG 복호화장치의 개략적인 구성을 나타낸 블럭도이다. 본 발명의 장치는 전단의 가변길이 복호화장치(VLD, 도시되지 않음)로부터 가변길이 복호화된 데이타와 런길이 에러가 발생했음을 알려주는 정보를 입력받는다. 부호 1은 제 1역다중화기(Demultiplexer)로, 입력된 비트열을 분할하여 헤더정보와 2개의 경로(A,B)로 나눈 데이타를 각각 해당 경로로 출력한다. 제 1역다중화기(1)의 출력단에는 3개의 FIFO(First In First Out)메모리(2∼4)가 연결된다. 이 FIFO메모리(2∼4)들은 데이타를 입력된 순서대로 저장해 두었다가 출력요구가 있을 때마다 먼저 입력된 데이타부터 출력시킨다.1 is a block diagram showing a schematic configuration of a fast MPEG decoding apparatus to which the present invention is applied. The apparatus of the present invention receives data indicating that a variable length decoded data and a run length error have occurred from a variable length decoding apparatus (VLD) (not shown). Reference numeral 1 is a first demultiplexer. The input demultiplexer divides the input bit string and outputs header information and data divided into two paths A and B, respectively, through the corresponding path. Three FIFOs (First In First Out) memories 2 to 4 are connected to an output terminal of the first demultiplexer 1. These FIFO memories (2 to 4) store data in the order in which they are input, and then output the data first inputted when there is an output request.

제 1FIFO메모리(2)는 하나의 매크로블럭에서 상위에 위치하는 2개의 휘도신호블럭(1,3)과 1개의 색차신호블럭(U)에 해당하는 데이타를 저장한다. 이와 마찬가지로, 제 2FIFO메모리(3)는 하나의 매크로블럭에서 하위에 위치하는 2개의 휘도신호블럭(2,4)과 1개의 색차신호블럭(V)에 해당하는 데이타를 저장한다. 제 3FIFO메모리(4)는 제 1역다중화기(1)로부터 헤더정보를 입력받아 일시 저장했다가 순서대로 출력한다. 상기 제 1 및 제 2FIFO메모리(2)(3)의 출력단에는 경로 A와 경로 B에서 동일하게 병렬처리를 할 수 있도록 2개씩의 동일한 장치들이 연결된다.The first FIFO memory 2 stores data corresponding to two luminance signal blocks 1 and 3 and one color difference signal block U positioned above one macro block. Similarly, the second FIFO memory 3 stores data corresponding to two luminance signal blocks 2 and 4 and one chrominance signal block V positioned lower in one macro block. The third FIFO memory 4 receives the header information from the first demultiplexer 1, temporarily stores the header information, and outputs the data in order. Two identical devices are connected to the output terminals of the first and second FIFO memories 2 and 3 so as to perform parallel processing in the path A and the path B in the same manner.

제 1FIFO메모리(2)의 출력단에 연결된 제 1런/레벨 복호화기(5)는 입력데이타를 런/레벨 부호화의 역과정을 통해 복호화하여 압축된 데이타를 신장시킨다. 제 1런/레벨 복호화기(5)의 출력단에는 2개의 메모리와 역다중화기 및 다중화기(Multiplexer)로 이루어진 제 1스캔변환부(6)가 연결된다. 제 1스캔변환부(6)에서 제 2역다중화기(7)는 제 1런/레벨 복호화기(5)에서 출력된 데이타를 분할하여 제 1메모리(8)와 제 2메모리(9)에 각각 입력시킨다. 제 1다중화기(10)는 상기 두 메모리(8)(9)로부터 저장된 데이타를 읽어들여 제 1스캔변환부(6)로 입력되기 전과는 다른 방식으로 데이타를 다중화한 후 출력한다. 그러면 제 1스캔변환부(6)를 거친 데이타는 부호화장치에서 행한 주사(Scan)의 역과정을 거친 다른 주사방식의 동영상 신호로 바뀌게 된다.The first run / level decoder 5 connected to the output of the first FIFO memory 2 decodes the input data through the reverse process of run / level encoding to extend the compressed data. A first scan converter 6 composed of two memories, a demultiplexer, and a multiplexer is connected to an output terminal of the first run / level decoder 5. In the first scan converter 6, the second demultiplexer 7 divides the data output from the first run / level decoder 5 and inputs the data to the first memory 8 and the second memory 9, respectively. Let's do it. The first multiplexer 10 reads the data stored in the two memories 8 and 9 and multiplexes the data in a manner different from that before the data is input to the first scan converter 6. The data that has passed through the first scan converter 6 is then converted into a video signal of another scan method which has undergone the reverse process of the scan performed by the encoding apparatus.

제 1스캔변환부(6)의 출력단에 연결된 제 1역양자화기(11)는 입력된 동영상 데이타에 대해 부호화장치의 양자화에 대응하는 역양자화를 실행한다. 제 1역양자화기(11)의 출력단에는 제 1역DCT(Discrete Cosine Transform)부(12)가 연결되고, 이 제 1역DCT부(12)는 역양자화된 데이타 및 DC계수를 역DCT 변환하여 부호화되기 이전의 동영상 데이타로 복원하게 된다. 한편, 제 2FIFO메모리(3)의 출력단에는 전술된 경로 A에서와 동일한 장치들이 연결되어 경로 B를 형성하게 된다. 즉, 제 2FIFO메모리(3), 제 2런/레벨 복호화기(13), 제 3역다중화기(15)와 제 3 및 제 4메모리(16)(17)와 제 2다중화기(18)로 이루어진 제 2스캔변환부(14), 제 2역양자화기(19), 제 2DCT부(20)가 순서대로 연결되어 경로 A에서와 동일한 동작을 하는 것이다.The first inverse quantizer 11 connected to the output terminal of the first scan converter 6 performs inverse quantization on the input video data corresponding to the quantization of the encoding apparatus. A first inverse DCT (Discrete Cosine Transform) unit 12 is connected to an output terminal of the first inverse quantizer 11, and the first inverse DCT unit 12 inverse-DCT transforms the inverse quantized data and the DC coefficient. It reconstructs the moving picture data before encoding. On the other hand, the same devices as in the aforementioned path A are connected to the output terminal of the second FIFO memory 3 to form the path B. That is, the second FIFO memory 3, the second run / level decoder 13, the third demultiplexer 15, and the third and fourth memories 16, 17, and the second multiplexer 18 are formed. The second scan converter 14, the second inverse quantizer 19, and the second DCT unit 20 are connected in order to perform the same operation as in the path A.

상기 제 1 및 제 2FIFO메모리(2)(3)의 출력단에는 DC복호화기(21)도 연결된다. 이 DC복호화기(21)는 두 FIFO메모리(2)(3)로부터 입력된 데이타에서 인트라(Intra) 매크로블럭의 DC계수를 읽어내어 역양자화한다. 여기서 역양자화된 DC계수는 상기 제 1 및 제 2역DCT부(12)(20)로 각각 입력되어진다. 상기 제 3FIFO메모리(4)의 출력단에는 헤더복호화기(22)와 양자화행렬 복호화기(23)가 연결된다. 헤더복호화기(22)는 제 3FIFO메모리(4)로부터 분리된 헤더정보를 입력받아 계수데이타의 복호화에 필요한 각종 파라미터들(Parameters)을 발생시킨다. 또한 양자화행렬 복호화기(23)는 분리된 헤더정보를 입력받아 계수데이타를 역양자화할 때 필요한 양자화행렬(Quantiser Matrix)을 발생시킨다.A DC decoder 21 is also connected to the output terminals of the first and second FIFO memories 2 and 3. The DC decoder 21 reads the DC coefficient of the Intra macroblock from the data input from the two FIFO memories 2 and 3 and dequantizes it. The dequantized DC coefficients are input to the first and second inverse DCT units 12 and 20, respectively. A header decoder 22 and a quantization matrix decoder 23 are connected to an output terminal of the third FIFO memory 4. The header decoder 22 receives header information separated from the third FIFO memory 4 and generates various parameters necessary for decoding coefficient data. In addition, the quantization matrix decoder 23 receives separated header information and generates a quantization matrix necessary for dequantizing coefficient data.

상기와 같이 구성된 고속 MPEG 복호화장치의 동작 및 본 발명의 런길이 에러 처리방법을 도 2의 타이밍도를 참조하여 설명한다.The operation of the high speed MPEG decoding apparatus configured as described above and the run length error processing method of the present invention will be described with reference to the timing diagram of FIG.

일반적으로 가변길이 부호화란 런(연속되는 0의 갯수)과 레벨(0이 아닌 임의의 값)을 한쌍으로 묶어 하나의 부호로 만드는 것이다. 동영상 데이타를 이 방식으로 부호화하면 정상상태일 때 임의의 블럭에서 런의 합은 64이하가 된다. 본 발명에서 처리하고자 하는 런길이 에러는 어느 하나의 블럭에 해당하는 런의 합이 64이상일 때 발생하는데, 통상 가변길이 복호화장치에서 발견된다. 가변길이 복호화장치는 임의의 한 블럭에 해당하는 런의 합을 계산하여 64이상이면 런길이 에러인 것으로 판단하고 에러에 대한 정보를 제 1역다중화기(1)로 보낸다. 아울러 에러가 발견되는 즉시 다음의 개시부호를 찾게 되고, 개시부호를 찾을 때까지의 모든 데이타는 출력하지 않는다. 여기서, 런의 합을 계산하는 방법은 MPEG자료 ISO/IEC 13818-2 가변길이 복호화에 설명되어 있다.In general, variable-length coding is a pair of runs (number of consecutive zeros) and levels (any nonzero value) paired together to form a single sign. When video data is encoded in this manner, the sum of the runs in any block is less than or equal to 64 in a steady state. The run length error to be processed in the present invention occurs when the sum of runs corresponding to any one block is 64 or more, and is usually found in a variable length decoding apparatus. The variable length decoding apparatus calculates the sum of runs corresponding to any one block and determines that the run length error is 64 or more, and sends information about the error to the first demultiplexer 1. In addition, as soon as an error is found, the next start code is found, and all data until the start code is found is not output. Here, the method of calculating the sum of the runs is described in MPEG data ISO / IEC 13818-2 variable length decoding.

도 2는 도 1의 장치에서 부호화된 입력비트열을 복호화할 때 런길이 에러가 발생한 슬라이스에 대한 처리방법을 설명하기 위한 타이밍 관계도이다. 도 1에서 제 1역다중화기(1)는 전술된 바와 같이 하나의 매크로블럭에서 1, 3, U블럭에 해당하는 데이타는 경로 A로, 2, 4, V블럭에 해당하는 데이타는 경로 B로 각각 보내준다. 이때 에러에 대한 정보는 발견되는 즉시 경로 A와 경로 B로 동시에 보내주게 된다. 제 1역다중화기(1)에서 보내준 데이타를 저장하는 제 1 내지 제 3FIFO메모리(2∼4)는 에러가 발생한 이후부터 다음 슬라이스의 개시부호를 찾을 때까지의 데이타를 저장하지 않는다.FIG. 2 is a timing relationship diagram for describing a processing method for a slice in which a run length error occurs when decoding an input bit string encoded by the apparatus of FIG. 1. In FIG. 1, as described above, the first demultiplexer 1 has data corresponding to 1, 3, and U blocks in one macroblock as path A, and data corresponding to 2, 4, and V blocks as path B, respectively. Send it. At this time, information about the error is sent to both path A and path B as soon as they are found. The first to third FIFO memories 2 to 4 storing the data sent from the first demultiplexer 1 do not store the data after the error occurs until the start code of the next slice is found.

제 1 및 제 2FIFO메모리(2)(3)에서 판독된 데이타를 런/레벨 복호화할 때 경로 A와 경로 B의 복호화는 블럭단위로 동기화되어 시작되고, 매크로블럭 단위로도 동기화된다(도 2의 c,d파형 참조). 또 제 1역다중화기(1)에서 보내준 헤더정보를 저장하는 제 3FIFO메모리(4)는 도 2의 a와 같은 헤더판독신호가 인가될 때마다 매크로블럭 단위로 헤더정보를 읽어 출력한다(도 2의 b파형 참조). 이때 임의의 매크로블럭의 헤더정보는 그 매크로블럭 데이타의 런/레벨 복호화보다 한개의 매크로블럭만큼 앞서서 제 3FIFO메모리(4)로부터 읽혀진 후 복호화된다. 즉, 제 1 및 제 2런/레벨 복호화기(5)(13)에서 m+1번째 매크로블럭[MB(m+1)]을 복호화할 때(도 2의 c,d파형 참조) 제 3FIFO메모리(4)에서는 다음 슬라이스의 첫번째 매크로블럭의 헤더정보가 출력되는 것이다(도 2의 b파형 참조).When run / level decoding the data read out from the first and second FIFO memories 2 and 3, the decoding of the path A and the path B starts synchronously in block units, and also in macroblock units (Fig. 2). c, d waveform). The third FIFO memory 4, which stores the header information sent from the first demultiplexer 1, reads the header information in units of macroblocks every time the header read signal shown in FIG. b waveform). At this time, the header information of any macroblock is read from the third FIFO memory 4 before the run / level decoding of the macroblock data and then decoded. That is, when decoding the m + 1th macroblock [MB (m + 1)] in the first and second run / level decoders 5 and 13 (see c and d waveforms in FIG. 2), the third FIFO memory. In (4), header information of the first macroblock of the next slice is output (see b waveform in FIG. 2).

헤더복호화기(22)는 입력된 헤더정보에서 슬라이스의 수직위치정보(slice_vertical _position, 도 2의 e파형 참조)와 매크로블럭의 순서정보(mb_column, 도 2의 g파형 참조)가 검출되면 즉시 이들을 레지스터에 래치(Latch)해 놓는다. 이때 래치된 슬라이스의 수직위치정보(slice _vertical_position)와 매크로블럭의 순서정보(mb_column)는 에러가 하나 또는 몇개의 슬라이스에 걸쳐 발생했더라도 이와 상관없이 에러 발생이 완료된 후의 슬라이스의 값이 된다. 예를 들어, 도 2의 타이밍도에서와 같이 A경로의 m+1번째 매크로블럭[MB(m+1)]에서 에러가 발생했다면, 래치된 슬라이스의 수직위치(slice _vertical_position)는 (n+α)이고 매크로블럭의 순서(mb_column)는 β가 된다. 도 2의 e에 도시된 다음 슬라이스의 수직위치에 대한 정보[slice_vertical_position(n+α)]에서 α는 0 또는 1이상이 될 수 있다. 만약, 하나의 행(Row, 가로줄)이 여러개의 슬라이스로 나뉘어져 있고, 에러가 발생한 슬라이스가 현재 복호화중인 행에 포함되어 있으며, 다음 슬라이스가 마찬가지로 현재 복호화중인 행에 포함되어 있다면 α는 0이 된다. 그러나 다음 슬라이스가 에러난 슬라이스와 다른 행에 위치한다면 α는 1 또는 그 이상의 값이 된다.When the header decoder 22 detects the vertical position information of the slice (slice_vertical_position (see e-waveform in FIG. 2)) and the order information of the macroblock (mb_column (see g-waveform in FIG. 2)) from the input header information, the header decoder 22 registers them. Latch on the At this time, the vertical position information (slice _vertical_position) of the latched slice and the order information (mb_column) of the macroblock are the values of the slices after the error occurrence is completed regardless of whether the error occurs over one or several slices. For example, if an error occurs in the m + 1th macroblock MB (m + 1) of path A as shown in the timing diagram of FIG. 2, the vertical position (slice _vertical_position) of the latched slice is (n + α). ) And the macroblock order (mb_column) is β. In the information [slice_vertical_position (n + α)] of the next slice shown in FIG. 2E, α may be 0 or 1 or more. If one row is divided into multiple slices, an errored slice is included in the current decoding row, and the next slice is included in the current decoding row, α becomes zero. However, if the next slice is on a different row than the failed slice, α is one or more.

한편, 전술된 헤더판독신호(도 2의 a파형 참조)는 제 1 및 제 2런/레벨 복호화기(5)(13)에서 2번째 블럭의 복호화를 시작할 때 인에이블(Enable)되었다가 그 매크로블럭의 마지막 헤더데이타 위치에서 디스에이블(Disable)된다. 이때 스킵된(Skipped) 매크로블럭 플래그(Flag) 신호는 도 2의 i에 도시된 바와 같이 0상태여야 한다. 이와 같이 매크로블럭 단위로 헤더판독신호를 인에이블시킬 수 있게 하는 스킵된 매크로블럭 플래그 신호는 상기에서 래치된 슬라이스의 수직위치정보(slice_vertical_position) 및 매크로블럭의 순서정보(mb_column)를 그때의 행카운터(Row Counter)값 및 매크로블럭 카운터값과 비교하여 인에이블 또는 디스에이블시킨다.Meanwhile, the above-described header readout signal (see waveform a in FIG. 2) is enabled when the first and second run / level decoders 5 and 13 start decoding the second block, and then the macro is enabled. It is disabled at the last header data position of the block. In this case, the skipped macroblock flag must be in a zero state as shown in FIG. The skipped macroblock flag signal that enables the header readout signal in macroblock units may be configured to convert the vertical position information (slice_vertical_position) of the latched slice and the sequence information (mb_column) of the macroblock to the row counter at that time. Enable or disable by comparing with the Row Counter) value and the macroblock counter value.

스킵된 매크로블럭 플래그 신호를 인에이블시키는 조건은 슬라이스의 수직위치값(slice_vertical_position)과 행카운터값이 같지 않거나 매크로블럭의 순서값(mb_column)과 매크로블럭 카운터값이 같지 않을 경우이다. 이것은 에러가 발생한 경우로, 도 2에서 래치된 슬라이스의 수직위치값(도 2의 e파형 참조)은 (n+α)이지만 행카운터값(도 2의 f파형 참조)은 n인 경우이다. 또한 래치된 매크로블럭의 순서값(도 2의 g파형 참조)은 β이지만 매크로블럭 카운터값(도 2의 h파형 참조)은 m+2, m+3,…인 경우이다.The condition for enabling the skipped macroblock flag signal is when the slice_vertical_position and the row counter value of the slice are not the same or the order value (mb_column) and the macroblock counter value of the macroblock are not the same. This is a case where an error occurs, in which the vertical position value (see e-waveform in FIG. 2) of the slice latched in FIG. 2 is (n + α) but the row counter value (see f-waveform in FIG. 2) is n. In addition, the ordered value of the latched macroblock (see g waveform in FIG. 2) is β, but the macroblock counter value (see h waveform in FIG. 2) is m + 2, m + 3,... If

스킵된 매크로블럭 플래그 신호가 디스에이블되는 시점은 헤더판독신호를 인에이블시키는 타이밍과 같이 제 1 및 제 2런/레벨 복호화기(5)(13)에서 2번째 블럭의 복호화를 시작할 때이다. 에러가 발생하지 않은 상황에서 매크로블럭 카운터값은 매크로블럭의 순서값(mb_column)과 같거나 1만큼 크다. 따라서, 스킵된 매크로블럭 플래그 신호가 0상태일 때 슬라이스의 수직위치값(slice_vertical_position)과 행카운터값은 똑같이 (n+α)이고, 매크로블럭의 순서값(mb_column)과 매크로블럭 카운터값은 β가 된다.The time when the skipped macroblock flag signal is disabled is when the first and second run / level decoders 5 and 13 start decoding the second block, such as the timing for enabling the header read signal. In an error-free situation, the macroblock counter value is equal to or larger than the macroblock order value (mb_column). Therefore, when the skipped macroblock flag signal is in the 0 state, the slice_vertical_position and the row counter value of the slice are equal to (n + α), and the order value (mb_column) and macroblock counter value of the macroblock are β. do.

여기서, β는 다음 슬라이스의 첫번째 매크로블럭으로, β+1번째 매크로블럭[MB(β+1)]의 헤더를 읽기 위한 헤더판독신호가 인에이블되는 시점은 β번째 매크로블럭[MB(β)]의 2번째 블럭을 런/레벨 복호화하기 시작하는 때가 된다. 이렇게 함으로써 에러가 발생하더라도 매크로블럭의 헤더를 읽는 타이밍과 경로 A와 경로 B에서 런/레벨 복호화를 하는 타이밍이 적절하게 조절된다. 전술된 행카운터와 매크로블럭 카운터는 제 1 및 제 2런/레벨 복호화기(5)(13)에서 복호화를 수행할 때 행 및 매크로블럭 단위로 각각 변화하게 된다. 즉, 행카운터는 매크로블럭 카운터가 매크로블럭폭(mb_width, MPEG자료 참조바람)이면서 다음 매크로블럭의 런/레벨 복호화를 시작할 때 변화하고, 매크로블럭 카운터는 매크로블럭 단위로 첫번째 블럭의 복호화를 시작할 때 변화하는 것이다.Here, β is the first macroblock of the next slice, and the point at which the header read signal for reading the header of the β + 1st macroblock [MB (β + 1)] is enabled is the β-th macroblock [MB (β)]. It is time to start run / level decoding the second block of. By doing so, even when an error occurs, the timing of reading the header of the macroblock and the run / level decoding of the paths A and B are properly adjusted. The above-described row counter and macroblock counter are changed in units of rows and macroblocks when decoding is performed by the first and second run / level decoders 5 and 13, respectively. That is, the row counter changes when the macro block counter starts the run / level decoding of the next macro block with the macro block width (mb_width, refer to MPEG data), and the macro block counter starts decoding the first block in units of macro blocks. It is changing.

헤더복호화기(22)는 헤더판독신호에 따라 제 3FIFO메모리(4)로부터 어떠한 매크로블럭의 헤더를 읽어내게 된다. 이때 헤더판독 완료시점은 도 2에서와 같이 제 1 및 제 2런/레벨 복호화기(5)(13)에서 현재 복호화중인 매크로블럭의 복호화 완료시점이어야 한다. 특히, 헤더복호화기(22)는 매크로블럭의 런/레벨 복호화를 끝내기 전에 스킵된 매크로블럭 플래그의 상태를 조사한다. 스킵된 매크로블럭 플래그 신호가 1이면 무조건 부호화된 블럭패턴신호(coded_block_pattern)를 0으로 복호화하여 제 1 및 제 2런/레벨 복호화기(5)(13)로 보낸다. 제 1 및 제 2런/레벨 복호화기(5)(13)에서는 매 블럭의 복호화를 시작하기 전에 부호화된 블럭패턴신호(coded_block_pattern)를 조사하여 각 블럭의 블럭판독신호(block_read)를 결정한다. 이 블럭판독신호(block_read)는 에러가 발생한 매크로블럭 다음의 매크로블럭부터 다음 슬라이스 이전까지의 모든 매크로블럭에 대해서만 0상태가 된다. 제 1 및 제 2런/레벨 복호화기(5)(13)에서는 블럭판독신호(block_read)가 0인 동안의 모든 블럭에 대해 64개의 0값을 출력한다.The header decoder 22 reads the header of any macro block from the third FIFO memory 4 in accordance with the header read signal. At this time, the header reading completion time should be the decoding completion time of the macroblock currently being decoded by the first and second run / level decoders 5 and 13 as shown in FIG. In particular, the header decoder 22 checks the state of the skipped macroblock flag before ending the run / level decoding of the macroblock. If the skipped macroblock flag signal is 1, the coded block pattern signal coded_block_pattern is decoded to 0 and sent to the first and second run / level decoders 5 and 13. The first and second run / level decoders 5 and 13 determine the block read signal block_read of each block by checking the coded block pattern signal coded_block_pattern before starting decoding of every block. This block read signal (block_read) is zero only for all macroblocks from the macroblock after the error-producing macroblock to the next slice. The first and second run / level decoders 5 and 13 output 64 zero values for all blocks while the block read signal block_read is zero.

제 1 및 제 2런/레벨 복호화기(5)(13)는 런길이 에러가 발생하면 각각 개별적으로 동작하여 적절한 처리를 하게 된다. 예를 들어, 경로 A의 m+1번째 매크로블럭[MB(m+1)]에서 에러가 발생하였다면(도 2의 타이밍도 참조), 제 1런/레벨 복호화기(5)는 에러정보가 발견된 시점부터 다음 슬라이스의 첫번째 매크로블럭 이전까지의 복호화 출력을 0으로 하여 출력한다. 이와 같이 런길이 에러가 발생하였을 때 스킵된 매크로블럭 플래그를 발생시켜 처리하는 방법은 MPEG에서 정의한 스킵된 매크로블럭을 처리하기 위해 스킵된 매크로블럭 플래그를 발생시키는 방법과 동일하다.When the run length error occurs, the first and second run / level decoders 5 and 13 operate individually to perform appropriate processing. For example, if an error occurs in the m + 1th macroblock MB (m + 1) of path A (see also the timing in FIG. 2), the first run / level decoder 5 detects that the error information is found. The decoding output from the time point until the first macroblock of the next slice is set to 0 and output. As described above, a method of generating and processing a skipped macroblock flag when a run length error occurs is the same as a method of generating a skipped macroblock flag to process a skipped macroblock defined in MPEG.

이상에서와 같이 본 발명은 고속의 처리속도를 요구하는 매체에서 시스템클럭의 속도를 증가시키지 않고 부호화된 데이타를 여러개의 경로로 나누어 복호화하므로 복수개의 복호화기 및 시스템클럭에 대한 부담을 줄일 수 있는 효과가 있다. 아울러 런길이 에러가 발생하면 에러가 발견된 시점부터 다음 슬라이스의 첫번째 매크로블럭 이전까지의 복호화 출력을 0으로 대체하므로 시스템에 치명적인 영향이 미치는 것을 방지하고 사용자가 에러가 발생했음을 잘 느끼지 못하도록 하는 효과가 있다.As described above, the present invention reduces the burden on a plurality of decoders and system clocks by decoding the encoded data into multiple paths without increasing the system clock speed in a medium requiring a high processing speed. There is. In addition, if a run-length error occurs, the decoding output from the time the error is detected to the first macroblock of the next slice is replaced with 0, which prevents a fatal effect on the system and prevents the user from feeling that an error has occurred. have.

Claims (11)

부호화된 비트열을 복수개의 경로로 나누어 복호화하는 장치에 있어서,An apparatus for decoding a coded bit string divided into a plurality of paths, 입력된 비트열로부터 런길이 에러를 검출하여 가변길이 복호화된 데이타와 상기 에러관련정보를 복수개의 경로로 보내고 에러가 검출된 후부터 다음 슬라이스의 개시부호를 찾을 때까지는 데이타를 출력하지 않는 가변길이 복호화장치와;Variable length decoding apparatus that detects a run length error from an input bit string and sends the variable length decoded data and the error related information through a plurality of paths and outputs no data until the start code of the next slice is detected after the error is detected. Wow; 가변길이 복호화장치를 거쳐 복수개의 경로로 분리된 데이타 및 헤더정보를 저장해 두었다가 출력요구가 있을 때마다 먼저 입력된 데이타부터 출력시키는 복수개의 FIFO메모리와;A plurality of FIFO memories for storing data and header information separated into a plurality of paths through a variable length decoding apparatus and outputting the first input data whenever an output request is made; 헤더정보로부터 검출한 슬라이스의 수직위치정보 및 매크로블럭의 순서정보를 그때의 행카운터값 및 매크로블럭 카운터값과 비교하여 스킵된 매크로블럭 플래그 신호를 결정하고 이 신호가 인에이블된 상태이면 블럭패턴신호를 0으로 복호화하는 헤더복호화기와;The sliced macroblock flag signal is determined by comparing the vertical position information of the slice and the macroblock order information detected from the header information with the row counter value and the macroblock counter value at that time, and if the signal is enabled, the block pattern signal A header decoder that decodes 0 into 0; 상기 블럭패턴신호에 따라 각 블럭의 블럭판독신호를 결정하고 이 블럭판독신호에 따라 FIFO메모리에서 판독된 데이타를 런/레벨 복호화하거나 블럭패턴 및 블럭판독신호가 0인 동안의 모든 블럭에 대해 64개의 0값을 런/레벨 복호화된 데이타로 출력하는 복수개의 런/레벨 복호화기를 구비한 것을 특징으로 하는 고속 MPEG 복호화장치.The block read signal of each block is determined according to the block pattern signal, and 64 blocks of all blocks while the block pattern and the block read signal are zero are run / level decoded or the block pattern and the block read signal are 0 according to the block read signal. And a plurality of run / level decoders for outputting zero values as run / level decoded data. 제 1항에 있어서, 상기 가변길이 복호화장치는 입력된 비트열중 임의의 한 블럭에 해당하는 런의 합을 계산하여 64이상이면 런길이 에러가 발생한 것으로 판정하도록 한 것을 특징으로 하는 고속 MPEG 복호화장치.The high-speed MPEG decoding apparatus of claim 1, wherein the variable length decoding apparatus calculates a sum of runs corresponding to any one block of the input bit strings and determines that a run length error has occurred when 64 or more. 제 1항에 있어서, 상기 FIFO메모리들은 매크로블럭에서 상위 2개의 휘도신호블럭(1,3)과 1개의 색차신호블럭(U) 데이타를 저장하는 제 1FIFO메모리와; 하위 2개의 휘도신호블럭(2,4)과 1개의 색차신호블럭(V) 데이타를 저장하는 제 2FIFO메모리와; 헤더판독신호가 인에이블될 때마다 매크로블럭 단위로 헤더정보를 읽어 출력하는 제 3FIFO메모리로 구성되는 것을 특징으로 하는 고속 MPEG 복호화장치.The FIFO memory of claim 1, further comprising: a first FIFO memory for storing upper two luminance signal blocks (1,3) and one color difference signal block (U) data in a macro block; A second FIFO memory for storing the lower two luminance signal blocks 2 and 4 and one color difference signal block V data; And a third FIFO memory configured to read and output header information in units of macroblocks each time a header read signal is enabled. 제 3항에 있어서, 상기 헤더판독신호는 스킵된 매크로블럭 플래그 신호가 디스에이블된 상태일 때 런/레벨 복호화기에서 2번째 블럭의 복호화를 시작하면 인에이블되었다가 그 매크로블럭의 마지막 헤더데이타 위치에서 디스에이블되도록 한 것을 특징으로 하는 고속 MPEG 복호화장치.4. The header read signal of claim 3, wherein the header read signal is enabled when the run / level decoder starts decoding the second block when the skipped macroblock flag signal is in a disabled state, and then the last header data position of the macroblock. A high speed MPEG decoding apparatus, characterized in that disabled in the. 제 1항에 있어서, 상기 헤더복호화기는 임의의 매크로블럭의 헤더정보를 그 매크로블럭 데이타의 런/레벨 복호화보다 한개의 매크로블럭만큼 앞서서 복호화하도록 한 것을 특징으로 하는 고속 MPEG 복호화장치.2. The high speed MPEG decoding apparatus of claim 1, wherein the header decoder is configured to decode header information of an arbitrary macroblock by one macroblock before run / level decoding of the macroblock data. 부호화된 비트열을 복수개의 경로로 나누어 복호화하는 방법에 있어서,In the method of decoding a coded bit string divided into a plurality of paths, 복호화된 헤더정보로부터 슬라이스의 수직위치정보와 매크로블럭의 순서정보를 검출하여 레지스터에 래치하는 제 1과정과;A first step of detecting vertical position information of the slice and order information of the macroblock from the decoded header information and latching them in a register; 래치된 슬라이스의 수직위치정보 및 매크로블럭의 순서정보를 그때의 행카운터값 및 매크로블럭 카운터값과 비교하여 스킵된 매크로블럭 플래그 신호를 인에이블 또는 디스에이블시키는 제 2과정과;A second step of enabling or disabling the skipped macroblock flag signal by comparing the vertical position information of the latched slice and the sequence information of the macroblock with the row counter value and the macroblock counter value at that time; 스킵된 매크로블럭 플래그 신호에 따라 정상적으로 매크로블럭의 런/레벨 복호화를 수행하거나 일정기간동안 런/레벨 복호화 출력을 0으로 하여 출력하는 제 3과정으로 이루어짐을 특징으로 하는 고속 MPEG 복호화장치에서의 런길이 에러 처리방법.Run length in a high speed MPEG decoding apparatus comprising a third process of normally performing run / level decoding of a macroblock according to a skipped macroblock flag signal or outputting the run / level decoding output to 0 for a predetermined period of time Error handling method. 제 6항에 있어서, 상기 제 1과정에서 래치된 슬라이스의 수직위치정보와 매크로블럭의 순서정보는 에러 발생이 완료된 후의 슬라이스의 값이 되도록 한 것을 특징으로 하는 고속 MPEG 복호화장치에서의 런길이 에러 처리방법.7. The run length error process of claim 6, wherein the vertical position information of the slice latched in the first process and the sequence information of the macro block are set to the value of the slice after the occurrence of an error. Way. 제 6항에 있어서, 상기 제 2과정에서 스킵된 매크로블럭 플래그 신호를 인에이블시키는 조건은 에러가 발생하여 슬라이스의 수직위치값과 행카운터값이 같지 않거나 매크로블럭의 순서값과 매크로블럭 카운터값이 같지 않을 경우인 것을 특징으로 하는 고속 MPEG 복호화장치에서의 런길이 에러 처리방법.7. The method of claim 6, wherein the condition for enabling the skipped macroblock flag signal in the second step is that an error occurs and the vertical position value and the row counter value of the slice are not the same, or the order value and the macroblock counter value of the macroblock are different. A run length error processing method in a high speed MPEG decoding apparatus, characterized in that the case is not equal. 제 6항에 있어서, 상기 제 2과정에서 스킵된 매크로블럭 플래그 신호를 디스에이블시키는 조건은 슬라이스의 수직위치값과 행카운터값이 같거나 매크로블럭 카운터값이 매크로블럭의 순서값과 같거나 1만큼 클 경우로, 매크로블럭의 2번째 블럭을 런/레벨 복호화하기 시작할 때 디스에이블되도록 한 것을 특징으로 하는 고속 MPEG 복호화장치에서의 런길이 에러 처리방법.7. The method of claim 6, wherein the condition for disabling the macroblock flag signal skipped in the second process is equal to the vertical position value of the slice and the row counter value, or the macroblock counter value is equal to or equal to the order value of the macroblock. In a large case, the run length error processing method of the high speed MPEG decoding apparatus, characterized in that it is disabled when the second block of the macro block starts to run / level decoding. 제 6항에 있어서, 상기 제 2과정에서 행카운터값은 매크로블럭 카운터값이 매크로블럭폭이면서 다음 매크로블럭의 런/레벨 복호화를 시작할 때 행단위로 변화하고, 매크로블럭 카운터값은 매크로블럭 단위로 첫번째 블럭의 복호화를 시작할 때 변화하도록 한 것을 특징으로 하는 고속 MPEG 복호화장치에서의 런길이 에러 처리방법.7. The method of claim 6, wherein in the second process, the row counter value is changed in units of rows when the macro block counter value is the macro block width and the start / level decoding of the next macro block is started, and the macro block counter value is the first in the macro block unit. A run length error processing method in a high speed MPEG decoding apparatus characterized by changing at the start of decoding a block. 제 6항에 있어서, 상기 제 3과정은 스킵된 매크로블럭 플래그 신호를 조사하여 인에이블된 상태이면 부호화된 블럭패턴신호를 0으로 복호화하는 단계와; 매 블럭의 복호화를 시작하기 전에 블럭패턴신호를 조사하여 0이면 각 블럭의 블럭판독신호를 0으로 결정하는 단계와; 블럭판독신호가 0인 동안의 모든 블럭에 대해 64개의 0값을 런/레벨 복호화된 데이타로 출력하는 단계로 이루어짐을 특징으로 하는 고속 MPEG 복호화장치에서의 런길이 에러 처리방법.7. The method of claim 6, wherein the third step comprises: examining the skipped macroblock flag signal and decoding the encoded block pattern signal to 0 when the enabled macroblock flag signal is enabled; Examining a block pattern signal and determining a block read signal of each block as 0 before starting decoding of every block; And outputting 64 zero values for all blocks while the block read signal is zero as run / level decoded data.
KR1019960061608A 1996-12-04 1996-12-04 High speed mpeg decoder and its run length error recovery method KR100209913B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960061608A KR100209913B1 (en) 1996-12-04 1996-12-04 High speed mpeg decoder and its run length error recovery method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960061608A KR100209913B1 (en) 1996-12-04 1996-12-04 High speed mpeg decoder and its run length error recovery method

Publications (2)

Publication Number Publication Date
KR19980043656A true KR19980043656A (en) 1998-09-05
KR100209913B1 KR100209913B1 (en) 1999-07-15

Family

ID=19485671

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960061608A KR100209913B1 (en) 1996-12-04 1996-12-04 High speed mpeg decoder and its run length error recovery method

Country Status (1)

Country Link
KR (1) KR100209913B1 (en)

Also Published As

Publication number Publication date
KR100209913B1 (en) 1999-07-15

Similar Documents

Publication Publication Date Title
KR100256005B1 (en) Image signal compression device
KR960002730B1 (en) High efficiency coding signal processing apparatus
EP0482864B1 (en) An image data processing apparatus
KR100253473B1 (en) Scrambling apparatus, descrambling apparatus and scramble transmission apparatus
KR0166722B1 (en) Encoding and decoding method and apparatus thereof
KR0134299B1 (en) Vlc
KR100234839B1 (en) Apparatus for recombining prioritized video data
JP3343250B2 (en) HDTV compression system
EP0888008B1 (en) Scramble apparatus
US5379070A (en) Parallel encoding/decoding of DCT compression/decompression algorithms
US20030039309A1 (en) Video data compression apparatus and method of same
US9288487B2 (en) Methods and electronic devices for quantization and de-quantization
KR100274524B1 (en) Apparatus for concealing errors in a digital video processing system
JPH04221465A (en) Recording device
KR0157570B1 (en) Decoder for mpeg 2 bit
EP0925555B1 (en) Dual-speed variable length decoder and decoding architecture for mpeg-2 video data
KR20000028928A (en) Programmable filter for removing selected user data from an MPEG-2 bit-stream
KR100296527B1 (en) Apparatus and method for variable length encoding and transmission of digital video signals
US5995171A (en) Coding and/or decoding apparatus for decoding variable-length coded image information
EP0946062B1 (en) Data compression
US7170939B2 (en) Compression-encoded data decoding apparatus
US5973744A (en) Apparatus for decoding video data
KR100209913B1 (en) High speed mpeg decoder and its run length error recovery method
KR0171443B1 (en) Apparatus and method of variable length code decoding of digital video cassette recorder
JP3158603B2 (en) Digital image signal transmission equipment

Legal Events

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

Payment date: 20080328

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee