KR100300277B1 - Apparatus for decoding a variable length code - Google Patents

Apparatus for decoding a variable length code Download PDF

Info

Publication number
KR100300277B1
KR100300277B1 KR1019970053033A KR19970053033A KR100300277B1 KR 100300277 B1 KR100300277 B1 KR 100300277B1 KR 1019970053033 A KR1019970053033 A KR 1019970053033A KR 19970053033 A KR19970053033 A KR 19970053033A KR 100300277 B1 KR100300277 B1 KR 100300277B1
Authority
KR
South Korea
Prior art keywords
code
variable length
length
bit string
detecting means
Prior art date
Application number
KR1019970053033A
Other languages
Korean (ko)
Other versions
KR19990032096A (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 KR1019970053033A priority Critical patent/KR100300277B1/en
Publication of KR19990032096A publication Critical patent/KR19990032096A/en
Application granted granted Critical
Publication of KR100300277B1 publication Critical patent/KR100300277B1/en

Links

Images

Abstract

압축 화상 데이터의 부호 비트열로부터 가변 길이 부호를 복호하는 가변 길이 부호 복호 처리부는 N단의 부호 길이 검출부와, 각각 다른 가변 길이 부호를 검출하는 가변 길이 부호 검출부를 구비한다. 부호 길이 검출부는, 동일 부호 길이의 가변 길이 부호에서 공통되는 최소 비트열(부호 길이 검출 엔트리)과 부호 길이가 대응된 부호 길이 테이블을 갖고, 이 부호 길이 테이블을 참조하여 가변 길이 부호 비트열로부터 각 가변 길이 부호의 부호 길이를 검출한다. N=2로 할 경우, 우선 부호 길이 검출부에서 얻어지는 부호 길이에 기초하여, 2단째 가변 길이 부호 검출부에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트가 결정된다. 또한, 가산기가 부호 길이 검출부에서 각각 검출되는 부호 길이를 가산하고, 얻어진 값에 기초하여 비트 위치 처리부가 다음의 머신 사이클에서 부호 격납 레지스터(32)에 격납시켜 복호 처리에 제공되는 부호 비트열의 개시 위치를 제어한다. 이로 인해, 1머신 사이클 내에 단수에 따른 가변 길이 부호의 복호 데이터가 각 가변 길이 부호 검출부로부터 출력되게 된다.The variable length code decoding processing unit for decoding the variable length code from the code bit string of the compressed image data includes an N length code length detection unit and a variable length code detection unit for detecting different variable length codes, respectively. The code length detection unit has a code length table in which a minimum bit string (code length detection entry) common to a variable length code having the same code length and a code length are associated with each other. The code length of the variable length code is detected. When N = 2, first, the detection start bit of the variable length code with respect to the code bit string in the second-stage variable length code detector is determined based on the code length obtained by the code length detector. In addition, the adder adds the code lengths respectively detected by the code length detection unit, and based on the obtained value, the bit position processing unit stores the code storage register 32 in the code storage register 32 in the next machine cycle and provides the start position of the code bit string provided to the decoding process. To control. For this reason, the decoded data of variable length code according to the stage in one machine cycle is output from each variable length code detection part.

Description

가변 길이 부호 복호 장치{APPARATUS FOR DECODING A VARIABLE LENGTH CODE}Variable Length Code Decoding Device {APPARATUS FOR DECODING A VARIABLE LENGTH CODE}

본 발명은 화상 압축 데이터의 복호화 장치, 특히 가변 길이 부호로 이루어진 화상 압축 데이터의 부호 비트열에 기초하여 가변 길이 부호를 복호하는 복호화 장치의 구성에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a decoding apparatus for picture compressed data, and more particularly, to a configuration of a decoding device for decoding a variable length code based on a code bit string of picture compressed data consisting of variable length codes.

화상 압축 부호화 방식으로서 공지되어 있는 JPEG, MPEG1 및 MPEG2 규격 등에서는 이산 코사인 변환(DCT)한 정지(靜止) 화상 데이터 또는 동화상(動畵像) 데이터를 양자화화고, 얻어진 양자화 DCT 계수에 대해 허프만 부호 등을 더 이용한 가변 길이 부호화를 행하여 압축 데이터를 얻고 있다.In the JPEG, MPEG1 and MPEG2 standards, etc., which are known as image compression coding schemes, quantization of discrete cosine transformed (DCT) still image data or moving image data, and Huffman code or the like are performed on the obtained quantized DCT coefficients. The compressed data is further subjected to variable length encoding to obtain compressed data.

이렇게 해서 압축된 화상 데이터를 복호하기 위한 복호 장치를 LSI로 구성한경우, 압축 화상 데이터를 가변 길이 부호 복호하는 가변 길이 부호 복호부, 복호된 데이터를 역양자화하는 역양자화부, 그리고 역양자화 DCT 계수를 역이산 코사인 변환하여 화상 데이터를 얻는 역이산 코사인 변환부를 구비하고, 또한 MPEG1이나 MPEG2의 경우에는 동화상 압축을 행하고 있기 때문에, 역이산 코사인 변환에 의해 얻어진 화상 데이터에 대해 동작 보상을 행하기 위한 동작 보상부를 구비하고 있다.In the case where the decoding device for decoding the compressed image data is thus configured with LSI, a variable length code decoder for variable length code decoding the compressed image data, an inverse quantizer for dequantizing the decoded data, and an inverse quantization DCT coefficient An inverse discrete cosine transform unit for inverse discrete cosine transforming to obtain image data, and in the case of MPEG1 or MPEG2, since moving picture compression is performed, motion compensation for performing motion compensation on image data obtained by inverse discrete cosine transform. It is equipped with a part.

이와 같은 압축 화상 복호 장치에서는, 수신이나 축적 매체로부터 얻어진 화상 압축 데이터를 복호화하여, 복호 표시 화상을 순차 표시부에 공급하여 표시시키지 않으면 안되기 때문에, 각 복호 부분을 이루는 회로 블럭에서 그 처리의 고속화가 요구되고 있고, 역양자화부나 역이산 코사인 변환부 등에 대해서는 고속의 회로가 실현되고 있다.In such a compressed image decoding apparatus, it is necessary to decode the image compressed data obtained from the reception or storage medium and supply the decoded display image to the display unit in order to display it, so that the processing speed is required in the circuit block constituting each decoded portion. High speed circuits have been realized for inverse quantization units, inverse discrete cosine transform units, and the like.

또한, 가변 길이 부호 복호 회로에 대해서도, 다른 회로와 마찬가지로 처리의 고속화가 요구되고 있다. 그렇지만, 가변 길이 부호 회로에서는 복호화의 대상이 되는 부호가 가변 길이이기 때문에, 어떤 가변 길이 부호의 복호가 종료하지 않으면, 다음의 가변 길이 부호의 개시 비트를 특정할 수 없고, 병렬 처리에 의한 고속화가 곤란하다라는 특성을 갖는다.In addition, also for the variable length code decoding circuit, the processing speed is demanded as in the other circuits. However, in the variable length code circuit, since the code to be decoded is of variable length, if the decoding of any variable length code does not end, the start bit of the next variable length code cannot be specified, and the speedup by parallel processing is achieved. It is difficult.

그래서, 예컨대{신학지보(信學枝報) ICD 94-86(1994-08)「110MHz MPEG2 대응 가변 길이 부호의 복호 LSI의 개발」} 등에는, 가변 길이 복호 처리의 고속화를 도모하기 위해, 복호 회로를 분리하여 파이프 라인화하는 구성이 개시되어 있다. 이 구성에서, 가변 길이 부호 복호 회로는 가변 길이 부호 복호 회로를 가변 길이 부호의 절단부나, 가변 길이 부호로부터의 런·레벨(run·level)의 검출부 등으로 분리되어 있고, 가변 길이 부호의 절단부에서의 처리중에, 절단이 끝난 가변 길이 부호에 대해 런·레벨 검출을 행하고 있다. 또한, 상기 레벨(level)은 제공된 1블럭 데이터(양자화된 DCT 계수)를 지그재그 스캔하여 얻어진 부호 비트열에서의 "0"이 아닌 DCT 계수를 나타내고, 런(run)은 상기 레벨에 선행하여 연속되는 "0"의 수를 나타내고 있다.Thus, for example, in (Theology Bulletin ICD 94-86 (1994-08) "Development of a Decoding LSI of a 110 MHz MPEG2-adaptive variable length code"), the decoding is performed to speed up the variable length decoding process. Disclosed is a configuration in which circuits are separated and pipelined. In this configuration, the variable length code decoding circuit separates the variable length code decoding circuit into a cut section of the variable length code, a run level detection unit from the variable length code, and the like. During the processing, run level detection is performed on the truncated variable length code. In addition, the level represents a DCT coefficient other than "0" in the code bit string obtained by zigzag scanning of the provided one-block data (quantized DCT coefficients), and the run is continued prior to the level. The number of "0" is shown.

그러나, 종래의 가변 길이 부호 복호 회로에서는, 규격화된 허프만 부호를 이용한 가변 길이 부호 데이터를 이용하여, 가변 길이 부호를 절단하여 그 가변길이 부호와 대응한 런·레벨 출력을 얻음과 동시에, 절단된 가변 길이 부호로부터 그 부호 길이를 검출하고 있었다. 이 때문에, 가변 길이 부호의 부호 길이를 알기 위해서는, 테이블에 격납되어 있는 114가지의 가변 길이 부호 전부와, 부호 비트열과의 비교를 행하지 않으면 안된다. 따라서, 가변 길이 부호 복호 처리에서의 처리 속도의 고속화는 그다지 진전되지 않는다.However, in the conventional variable length code decoding circuit, the variable length code is cut using the variable length code data using the standardized Huffman code to obtain a run level output corresponding to the variable length code, and at the same time, The code length was detected from the length code. For this reason, in order to know the code length of the variable length code, all of the 114 variable length codes stored in the table must be compared with the code bit string. Therefore, the speedup of the processing speed in the variable length code decoding process does not progress very much.

또한, 상술한 바와 같은 가변 길이 부호 복호 회로의 구성에서, 가변 길이 부호의 절단 처리 자체는 병렬화되어 있지 않고, 압축 화상 데이터의 부호 비트열로부터의 가변 길이 부호의 절단은 1부호/1사이클(1머신 사이클)이며, 처리 속도의 대폭 향상에는 이르지 못한다.Further, in the above-described configuration of the variable length code decoding circuit, the cutting process of the variable length code itself is not parallelized, and the cutting of the variable length code from the code bit string of the compressed image data is performed by one code / 1 cycle (1 Machine cycle), and the processing speed is not significantly improved.

또한, 동화상의 복호의 경우, 특히 1초간에 복호 표시되는 픽쳐(picture)의 개수(프레임 레이트)를 유지하면서 고해상도화에 대응하지 않으면 안된다. 그래서, 상기 1사이클, 즉 회로의 동작 주파수를 상승시켜 이와 같은 고해상도화에 대응하는 것이 고려된다. 여기서, 디지털·비디오·디스크나 디지털 TV 등에서 사용되는 해상도는 720화소×480화소로, 동작 주파수의 향상에 의해 어느 정도 대응될 수 있다. 그러나, 보다 고해상도의 1440화소×1080화소에 대응할 경우, 회로의 동작 주파수를 상승시켜 대응시키기에는 한계가 있었다.In the case of decoding a moving image, in particular, it is necessary to cope with high resolution while maintaining the number (frame rate) of the pictures decoded and displayed for one second. Therefore, it is considered to correspond to such high resolution by increasing the operation frequency of the one cycle, that is, the circuit. Here, the resolution used in a digital video disk, a digital TV, or the like is 720 pixels x 480 pixels, which can be coped to some extent by the improvement of the operating frequency. However, when corresponding to a higher resolution of 1440 pixels x 1080 pixels, there is a limit in raising the operating frequency of the circuit to correspond.

한편, LSI 회로에서의 소비 전력의 저감의 요청에 대응하지 않으면 안되고, 이를 위해서는 회로의 동작 주파수를 하강시키는 것이 유효하다. 그러나, 표시 화상의 복호는 상기 프레임 레이트를 유지하지 않으면 안되기 때문에, 프레임 레이트를 유지하면서 동작 주파수를 하강시키기 위해서는, 1부호/1사이클의 가변 길이 부호의 절단 속도로는 복호 처리가 수반되지 않는다는 문제가 있다.On the other hand, it is necessary to respond to a request for reduction of power consumption in the LSI circuit, and for this purpose, it is effective to lower the operating frequency of the circuit. However, since decoding of the display image must maintain the frame rate, in order to lower the operating frequency while maintaining the frame rate, the decoding process is not accompanied by the cutting speed of a variable length code of 1 code / 1 cycle. There is.

본 발명은 상기 과제를 해결하기 위해 이루어진 것으로, 가변 길이 부호의 복호 처리의 고속화를 도모함을 목적으로 한다. 또한, 1머신 사이클 내에서 복수의 가변 길이 부호에 대한 복호화 처리가 가능한 가변 길이 부호 복호 장치를 제공함을 목적으로 한다.This invention is made | formed in order to solve the said subject, and it aims at speeding up the decoding process of a variable length code. Another object of the present invention is to provide a variable length code decoding apparatus capable of decoding a plurality of variable length codes in one machine cycle.

상기 목적을 달성하기 위해, 본 발명에 따른 가변 길이 부호의 복호화 장치는 이하와 같은 특징을 갖는다.In order to achieve the above object, the variable length code decoding apparatus according to the present invention has the following features.

즉, 가변 길이 부호로 이루어진 데이터의 부호 비트열에 대하여 복호화 처리를 행하는 가변 길이 부호 복호 장치에 있어서, 부호 비트열로부터 상기 가변 길이 부호의 부호 길이를 검출하는 복수단의 부호 길이 검출 수단과, 부호 비트열로부터 상기 가변 길이 부호를 검출하여 대응하는 가변길이 부호 복호 데이터를 출력하는복수단의 가변 길이 부호 검출수단을 갖는다. 그리고, 상기 복수단의 부호 길이 검출 수단에서 검출된 부호 길이에 기초하여, 각 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어한다.That is, in a variable length code decoding apparatus for performing a decoding process on a code bit string of data having a variable length code, a plurality of stages of code length detection means for detecting a code length of the variable length code from a code bit string and a code bit And variable length code detecting means for decoding means for detecting the variable length code from a column and outputting corresponding variable length code decoded data. The detection start bit of the variable length code with respect to the code bit string in each variable length code detection means is controlled based on the code length detected by the plurality of code length detection means.

이와 같이, 복수단(N단)의 부호 길이 검출 수단과 가변 길이 부호 검출 수단이 설치되고, 부호 길이 검출 수단이 각각 검출하는 부호 길이에 기초하여, 각 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트를 제어한다.In this way, a plurality of stages (N stage) of code length detection means and variable length code detection means are provided, and based on the code lengths detected by the code length detection means, respectively, for the code bit strings in the variable length code detection means. Controls the detection start bit of variable length code.

또한, 가변 길이 부호로 이루어진 데이터의 부호 비트열에 대하여 복호화 처리를 행하는 가변 길이 부호 복호 장치에 있어서, 상기 부호 비트열로부터 상기 가변 길이 부호의 부호 길이를 각각 검출하는 복수단의 부호 길이 검출 수단, 상기 부호 비트열로부터 상기 가변 길이 부호를 검출하여 대응하는 가변 길이 부호 복호 데이터를 출력하는 복수단의 가변 길이 부호 검출 수단, 및 상기 복수단중 소정 단째까지의 부호 길이 검출 수단에서 검출된 상기 부호 길이의 합계 길이에 기초하여, 다음 단의 상기 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어하는 검출 개시 비트 제어 수단을 구비한다.Further, in a variable length code decoding apparatus for performing a decoding process on a code bit string of data having a variable length code, a plurality of stages of code length detection means for detecting a code length of the variable length code from the code bit string, respectively, A plurality of stages of variable length code detecting means for detecting the variable length code from a code bit string and outputting corresponding variable length code decoded data, and the code length detected by code length detecting means up to a predetermined stage of the plurality of stages. Detection start bit control means for controlling the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means in the next stage based on the total length.

N=2로 한 경우를 예로 들면, 1단째의 부호 길이 검출 수단에서 얻어진 부호 길이에 기초하여, 2단째의 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트가 결정된다. 또한, 1단째의 부호 길이 검출 수단과 2단째의 부호 길이 검출 수단에서 각각 검출되는 부호 길이에 기초하여, 다음의 머신 사이클에서 처리하는 가변 길이 부호의 부호 비트열의 개시 위치를 제어한다.Taking N = 2 as an example, the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means in the second stage is determined based on the code length obtained in the code length detection means in the first stage. Further, based on the code lengths detected by the code length detection means in the first stage and the code length detection means in the second stage, the start position of the code bit string of the variable length code to be processed in the next machine cycle is controlled.

따라서, 단위 머신 사이클 기간 내, 즉 1머신 사이클 내에 단수에 따른 가변 길이 부호의 복호 데이터가 각 가변 길이 부호 검출 수단으로부터 출력된다.Therefore, decoded data of variable length code in the unit machine cycle period, i.e., in one machine cycle, is output from each variable length code detecting means.

이와 같이 가변 길이 부호의 복호 처리부를 병렬화하여, 복수의 가변 길이 부호를 1머신 사이클 내에서 복호함으로써, 본 발명에서는 복호 처리 속도의 현격한 고속화를 도모할 수 있게 된다.As described above, by parallelizing the decoding processing units having the variable length codes and decoding the plurality of variable length codes within one machine cycle, the present invention can achieve a markedly higher speed of the decoding processing speed.

또한, 1머신 사이클 내에서 복수의 가변 길이 부호를 검출할 수 있기 때문에, 가변 길이 부호 복호 장치의 동작 주파수를 하강시킬 수 있고, 장치를 LSI화한 경우에서의 소비 전력의 저감이 가능하게 된다.In addition, since a plurality of variable length codes can be detected within one machine cycle, the operating frequency of the variable length code decoding device can be lowered, and power consumption can be reduced when the device is LSI-ized.

또한, 취급할 화상 데이터가 보다 고해상도로 될 경우, 예컨대 HDTV 등의 고해상도 시스템에 본 발명이 이용될 경우에도, 1머신 사이클 내에서 복수의 가변 길이 부호를 검출할 수 있기 때문에, 장치의 동작 주파수를 상승시키지 않고서 필요한 가변 길이 부호의 복호화 처리 속도를 얻을 수 있다.In addition, when the image data to be handled becomes higher resolution, for example, even when the present invention is used in a high resolution system such as an HDTV, a plurality of variable length codes can be detected within one machine cycle, so that the operating frequency of the apparatus is increased. It is possible to obtain the decoding processing speed of the required variable length code without raising.

또한, 본 발명에서는 상기 구성 외에, 검출 개시 비트 제어 수단(이하의 실시 형태에서는 포인트 셀렉터)과, 부호 격납 레지스터 및 비트 위치 제어 수단을 갖는다. 그리고, 검출 개시 비트 제어 수단이 소정 단째까지의 부호 길이 검출 수단에서 검출된 부호 길이에 기초하여, 다음 단의 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트를 제어한다. 부호 격납 레지스터는 부호 비트열을 단위 머신 사이클마다 순차 격납하여 각 가변 길이 부호 검출 수단 및 각 부호 길이 검출 수단에 공급하고, 비트 위치 제어 수단이 각 부호 길이 검출 수단에서 각각 검출된 부호 길이의 가산치에 기초하여, 다음의 머신 사이클의 타이밍에서의 상기 부호 격납 레지스터에 격납되는 상기 부호 비트열의 격납 개시 비트 위치를 제어한다.In addition to the above configuration, the present invention includes detection start bit control means (point selector in the following embodiment), code storage register, and bit position control means. Then, the detection start bit control means controls the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means in the next stage based on the code length detected by the code length detection means up to the predetermined stage. The code storing register sequentially stores the code bit strings for each unit machine cycle and supplies them to the variable length code detecting means and the code length detecting means, and the bit position control means adds the code lengths respectively detected by the code length detecting means. Based on this, the storage start bit position of the code bit string stored in the code storage register at the timing of the next machine cycle is controlled.

또한, 본 발명에 따른 가변 길이 부호 복호 장치는 이하와 같은 다른 관점을 갖는다.In addition, the variable length code decoding device according to the present invention has another aspect as follows.

가변 길이 부호로 이루어진 데이터의 부호 비트열에 대하여 복호화 처리를 행하는 가변 길이 부호 복호 장치에 있어서, 부호 비트열로부터 상기 가변 길이 부호의 부호 길이를 검출하는 부호 길이 검출 수단과, 부호 비트열로부터 상기 가변 길이 부호를 검출하여 대응하는 가변 길이 부호 복호 데이터를 출력하는 가변 길이 부호 검출 수단을 갖는다. 또한, 상기 각 부호 길이 검출 수단은 동일 부호 길이의 가변 길이 부호에서 공통되는 공통 최소 비트열과, 대응하는 가변 길이 부호의 부호 길이가 관련되어 격납된 부호 길이 테이블을 구비하고, 이 각 부호 길이 검출 수단은 부호 길이 테이블의 공통 최소 비트열과, 공급되는 부호 비트열을 비교하여, 공통 최소 비트열을 검출하여, 대응하는 가변 길이 부호의 부호 길이를 출력한다.A variable length code decoding apparatus for decoding a code bit string of data having a variable length code, comprising: code length detection means for detecting a code length of the variable length code from a code bit string, and the variable length from a code bit string And variable length code detecting means for detecting a code and outputting corresponding variable length code decoded data. The code length detection means further includes a code length table in which the common minimum bit strings common in the variable length codes of the same code length and the code lengths of the corresponding variable length codes are stored. Compares the common minimum bit string of the code length table with the supplied code bit string, detects the common minimum bit string, and outputs the code length of the corresponding variable length code.

부호 길이 검출 수단은 이와 같은 부호 길이 테이블을 참조하여, 가변 길이 부호 자체를 절단하지 않고서 테이블에 격납된 공통 최소 비트열에 대응하는 비트열을 가변 길이 부호 비트열로부터 절단하여 부호 길이를 얻는다.The code length detection means refers to such a code length table, and obtains the code length by cutting the bit string corresponding to the common minimum bit string stored in the table from the variable length code bit string without truncating the variable length code itself.

규정되어 있는 가변 길이 부호는, 예컨대 114가지로 많지만, 부호 길이를 특정하기에 필요한 공통 최소 비트열의 수는 상기 114가지와 비교하여 매우 작다. 이 때문에, 가변 길이 부호 검출부가 부호 비트열로부터 가변 길이 부호를 절단하여 복호 데이터를 얻기에 필요한 시간과 비교하여, 매우 짧은 기간 내에 부호 길이 검출이 가능하게 된다. 또한, 부호 길이의 검출에 필요한 회로 규모도 작게 된다.Although there are many 114 variable length codes defined, the number of common minimum bit strings required to specify the code length is very small compared with the 114 types. For this reason, the code length detection can be performed within a very short period compared with the time required for the variable length code detector to cut the variable length code from the code bit string to obtain the decoded data. In addition, the circuit scale required for the detection of the code length is also reduced.

또한, 본 발명의 또 다른 관점에서는 상기 구성 외에, 상기 부호 길이 검출 수단이 부호 비트열로부터 연속되는 상기 가변 길이 부호의 부호 길이를 각각 검출하는 복수단의 부호 길이 검출 수단으로 이루어지고, 가변 길이 부호 검출 수단이 부호 비트열로부터 부호 길이 검출 수단에서 검출되는 부호 길이에 대응하는 가변 길이 부호를 각각 검출하는 복수단의 가변 길이 부호 검출 수단으로 이루어지며, 상기 복수의 부호 길이 검출 수단에서 검출된 부호 길이에 기초하여, 각 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트를 제어하는 것이다.Further, in still another aspect of the present invention, in addition to the above configuration, the code length detecting means includes a plurality of stages of code length detecting means for detecting the code lengths of the variable length codes consecutive from the code bit strings. The detecting means comprises a plurality of stages of variable length code detecting means for detecting a variable length code corresponding to the code length detected by the code length detecting means from the code bit string, and the code lengths detected by the plurality of code length detecting means. Based on this, the detection start bit of the variable length code with respect to the code bit string in each variable length code detection means is controlled.

또한, 본 발명은 상기 구성 외에, 소정 단째까지의 부호 길이 검출 수단에서 검출된 부호 길이에 기초하여, 다음 단의 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트를 제어하는 검출 개시 비트 제어 수단을 갖는다. 또한, 부호 비트열을 단위 머신 사이클마다 순차 격납하여 각 가변 길이 부호 검출 수단 및 각 부호 길이 검출 수단에 공급하는 부호 격납 레지스터와, 각 부호 길이 검출 수단에서 각각 검출된 각 부호 길이의 가산치에 기초하여, 다음의 머신 사이클의 타이밍에서의 부호 격납 레지스터에 격납되는 부호 비트열의 격납 개시 비트 위치를 제어하는 비트 위치 제어 수단을 갖는다.In addition to the above configuration, the present invention controls the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means of the next stage based on the code length detected by the code length detection means up to the predetermined stage. Detection start bit control means. The code storage register is sequentially stored for each unit machine cycle and supplied to the variable length code detecting means and the code length detecting means, and based on the addition value of each code length detected by each code length detecting means. And bit position control means for controlling the storage start bit position of the code bit string stored in the code storage register at the timing of the next machine cycle.

또한, 본 발명에서, 단위 머신 사이클 기간 내에 각 가변 길이 부호 검출 수단에서 각각 다른 가변 길이 부호가 검출되고, 검출된 가변 길이 부호에 대응하는복수의 복호 데이터가 출력되는 것을 특징으로 한다.Further, the present invention is characterized in that different variable length codes are detected by respective variable length code detecting means within a unit machine cycle period, and a plurality of decoded data corresponding to the detected variable length codes are output.

또한, 본 발명에서는 상기 구성에서, 상기 부호 길이 검출 수단은 상기 부호 비트열로부터 연속되는 상기 가변 길이 부호의 부호 길이를 각각 검출하는 복수단의 부호 길이 검출 수단으로 이루어지고, 상기 가변 길이 부호 검출 수단은 상기 부호 비트열로부터 상기 부호 길이 검출 수단에서 검출되는 부호 길이에 대응하는 가변 길이 부호를 각각 검출하는 복수단의 가변 길이 부호 검출 수단으로 이루어지며, 상기 복수단의 가변 길이 부호 검출 수단 중 소정 단째까지의 부호 길이 검출 수단에서 검출된 상기 부호 길이의 합계 길이에 기초하여, 다음 단의 상기 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어하는 검출 개시 비트 제어 수단을 구비한다.In the present invention, the code length detecting means comprises a plurality of code length detecting means for detecting the code lengths of the variable length codes consecutive from the code bit string, and the variable length code detecting means. Is composed of a plurality of stages of variable length code detection means for respectively detecting a variable length code corresponding to the code length detected by the code length detection means from the code bit string, and a predetermined stage of the plurality of stages of variable length code detection means. Detection start bit control means for controlling the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means of the next stage based on the total length of the code lengths detected by the code length detection means up to It is provided.

이상과 같은 구성에서는, N단의 부호 길이 검출 수단과 가변 길이 부호 검출 수단이 설치되고, 부호 길이 검출 수단에서 각각 검출되는 부호 길이에 기초하여, 각 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트를 제어한다.In the above configuration, the N-stage code length detection means and the variable length code detection means are provided, and are variable with respect to the code bit string in each variable length code detection means based on the code lengths detected by the code length detection means, respectively. Controls the detection start bit of the length code.

이와 같이 가변 길이 부호 자체를 절단하지 않고서, 부호 길이 테이블을 참조함으로써 부호 길이를 검출하고, 각 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 가변 길이 부호의 검출 개시 비트를 제어함으로써, 가변 길이 부호의 복호 장치를 다단화 구성으로 하기가 용이하게 된다. 따라서, 1머신 사이클 내에서 복수의 가변 길이 부호를 검출할 수 있고, 가변 길이 부호 복호 장치의 동작 주파수를 하강시킬 수 있게 되며, 장치를 LSI화한 경우에서의 소비 전력이 저감된다.Thus, without cutting off the variable length code itself, the code length is detected by referring to the code length table, and the detection start bit of the variable length code with respect to the code bit string in each variable length code detection means is controlled. It becomes easy to make a decoding apparatus into a multistage structure. Therefore, a plurality of variable length codes can be detected within one machine cycle, the operating frequency of the variable length code decoding device can be lowered, and power consumption when the device is LSI-ized is reduced.

또한, 취급하는 화상 데이터가 보다 고해상도로 될 경우, 예컨대 HDTV 등의 고해상도 시스템에 본 장치가 이용될 경우에도, 1머신 사이클 내에서 복수의 가변 길이 부호를 검출할 수 있기 때문에, 장치의 동작 주파수를 상승시키지 않고서, 필요한 가변 길이 부호의 복호화 처리 속도를 얻을 수 있다.In addition, when the image data to be handled becomes higher resolution, for example, even when the apparatus is used in a high resolution system such as an HDTV, a plurality of variable length codes can be detected within one machine cycle. It is possible to obtain the decoding processing speed of the necessary variable length code without raising.

도 1은 본 발명의 실시 형태에 따른 압축 화상 데이터의 복호 장치의 개략 구성을 나타낸 도면.BRIEF DESCRIPTION OF DRAWINGS Fig. 1 is a diagram showing a schematic configuration of a decoding device of compressed image data according to an embodiment of the present invention.

도 2는 도 1의 가변 길이 부호 복호 처리부(12)의 구성을 나타낸 도면.FIG. 2 is a diagram showing the configuration of the variable length code decoding processing unit 12 of FIG.

도 3은 도 2의 부호 길이 테이블의 구성을 나타낸 도면.3 is a diagram illustrating a configuration of a code length table of FIG. 2.

도 4는 가변 길이 부호 테이블의 구성을 나타낸 도면.4 is a diagram illustrating a configuration of a variable length code table.

도 5는 도 1의 가변 길이 부호 복호 처리부(12)의 다른 구성을 나타낸 도면.5 is a diagram showing another configuration of the variable length code decoding processing unit 12 of FIG.

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

10 : 헤더 검출·파라미터 분리부10: header detection parameter separation unit

12 : 가변 길이 부호 복호 처리부12: variable length code decoding processing unit

14 : 역양자화부14: dequantization unit

16 : 역이산 코사인 변환부16: inverse discrete cosine transform unit

18 : 동작 보상부18: motion compensation unit

20 : 화상 메모리20: picture memory

22 : I 픽쳐용 메모리 영역22: Memory area for I picture

24 : P 픽쳐용 메모리 영역24: Memory area for P picture

26 : 표시 메모리26: display memory

32 : 부호 격납 레지스터32: sign storage register

34, 44 : 가변 길이 부호 테이블34, 44: variable length code table

36, 38, 46, 48 : 비교기36, 38, 46, 48: comparators

40, 50 : 부호 길이 테이블40, 50: Sign length table

42, 42-2 : 포인트 셀렉터42, 42-2: point selector

52, 52-2 : 가산기52, 52-2: adder

54 : 비트 위치 처리부54: bit position processing unit

60-1, 60-2, 60-3 : 가변 길이 검출부60-1, 60-2, 60-3: variable length detector

62-1, 62-2, 62-3 : 부호 길이 검출부62-1, 62-2, 62-3: code length detector

(발명의 실시 형태)(Embodiment of the Invention)

이하, 본 발명의 실시 형태(이하, 실시 형태라고 칭함)에 대해 도면을 이용하여 설명한다. 또한, 이미 설명한 도면과 대응하는 부분에는 동일 부호를 사용하여 설명을 생략한다.EMBODIMENT OF THE INVENTION Hereinafter, embodiment (henceforth an embodiment) of this invention is described using drawing. In addition, the same code | symbol is attached | subjected to the part corresponding to drawing already demonstrated, and description is abbreviate | omitted.

[압축 화상 데이터의 복호 장치의 구성][Configuration of Decoding Device for Compressed Image Data]

도 1은 본 실시 형태에 따른 압축 화상 데이터의 복호 장치의 개략 구성을 나타내고 있다. 또한, 본 실시 형태에서는 동화상 압축 데이터의 복호 장치를 예로 들어 설명한다.1 shows a schematic configuration of a decoding device of compressed image data according to the present embodiment. In the present embodiment, an explanation will be given taking an apparatus for decoding moving image compressed data as an example.

축적 매체 등이나 통신 등에 의해 얻어진 동화상 압축 데이터의 부호 비트열은 헤더 검출·파라미터 분리부(10)에 공급되고, 여기서 우선 계층 구조를 갖는 부호 비트열로부터 각 층의 헤더가 검출된다. 그리고, 검출된 각 층의 헤더에 기초하여 파라미터마다 분리, 즉 GOP(Group of Pictures), I, B, P의 픽쳐, 각 픽쳐를 구성하는 마크로 블럭(MB), 또한 마크로 블럭을 구성하는 8×8화소 단위의 블럭이 분리된다.The code bit string of the moving picture compressed data obtained by the storage medium or the like or the like is supplied to the header detection / parameter separator 10, where the header of each layer is first detected from the code bit string having a hierarchical structure. On the basis of the detected header of each layer, the parameters are separated for each parameter, that is, GOP (Group of Pictures), pictures of I, B, and P, a macro block (MB) constituting each picture, and 8 × constituting the macro block. 8 pixel blocks are separated.

다음에, 본 실시 형태의 특징인 가변 길이 부호 복호 처리부(12)는 이와 같이 단위 블럭마다 분리된 가변 길이 부호 비트열로부터, 후술하는 바와 같이 다수(N) 부호/1사이클로, 가변 길이 부호를 절단하여 그 가변 길이 부호에 대응하는 런·레벨 출력, 즉 양자화된 DCT 계수 부호열을 출력한다.Next, the variable length code decoding processing unit 12, which is a feature of the present embodiment, cuts the variable length code into multiple (N) codes / 1 cycle as described later from the variable length code bit string separated for each unit block. The run-level output corresponding to the variable length code, that is, the quantized DCT coefficient code string is output.

가변 길이 부호 복호 처리부(12)로부터의 양자화 DCT 계수의 부호열은 역양자화부(14)에 공급되어 역양자화되고, 역이산 코사인 변환부(16)에서 이 역양자화된 DCT 계수가 DCT 변환전의 화소마다의 데이터로 역변환된다.The code string of the quantized DCT coefficients from the variable length code decoding processing unit 12 is supplied to the inverse quantization unit 14 to inverse quantization, and the inverse discrete cosine transform unit 16 converts the inverse quantized DCT coefficients before the DCT conversion. The data is inversely converted into each data.

동작 보상부(18)는 역이산 코사인 변환에 의해 얻어진 화상 데이터가 I 픽쳐(프레임내 부호화 화상)의 경우, 이것을 화상 메모리(20)의 표시 메모리(26)로 그대로 출력하고, 또한 I 픽쳐용 메모리 영역(22)으로도 출력한다. 그리고, 이 I 픽쳐용 메모리 영역(22)에는 I픽쳐의 데이터가 참조 화상(1)으로서 다음 I 픽쳐가 얻어질 때까지 기억된다.When the image data obtained by the inverse discrete cosine transform is an I picture (in-frame coded image), the motion compensation unit 18 outputs this to the display memory 26 of the image memory 20 as it is, and furthermore, the memory for the I picture. It also outputs to the area 22. The I picture memory area 22 is then stored with the data of the I picture until the next I picture is obtained as the reference image 1.

P 픽쳐(프레임간 순방향 예측 부호화 화상)의 경우, 동작 보상부(18)는 P 픽쳐 데이터를 P 픽쳐용 메모리 영역(24)으로 출력함과 동시에, I 픽쳐 데이터를 메모리 영역(22)으로부터 판독하여 P 픽쳐 데이터에 가산하여 동작 보상을 행하고, 얻어진 복호 표시 화상을 표시 메모리(26)에 일단 기억시킨다. 또한, 상기 P 픽쳐용 메모리 영역(24)에는 I 픽쳐와 마찬가지로, 다음의 P 픽쳐가 얻어질 때까지 참조 화상(2)으로서 기억된다.In the case of a P picture (inter-frame forward predictive coded image), the motion compensator 18 outputs P picture data to the P picture memory area 24, and simultaneously reads I picture data from the memory area 22. Operation compensation is performed by adding to the P picture data, and the obtained decoded display image is stored in the display memory 26 once. In addition, similarly to the I picture, the P picture memory area 24 is stored as the reference picture 2 until the next P picture is obtained.

역이산 코사인 변환에 의해 얻어진 화상 데이터가 B 픽쳐(쌍방향 예측 부호화 화상)의 경우에는, 메모리 영역(22, 24)에 각각 기억된 I 또는 P 픽쳐 데이터가 B 픽쳐 데이터에 가산되어 동작 보상이 행해지고, 얻어진 복호 표시 화상이 표시메모리(26)에 일단 기억된다.In the case where the image data obtained by the inverse discrete cosine transform is a B picture (bidirectional predictively coded image), I or P picture data stored in the memory areas 22 and 24, respectively, is added to the B picture data to perform motion compensation. The obtained decoded display image is once stored in the display memory 26.

이상과 같이 I 픽쳐, P 픽쳐, B 픽쳐에 기초하여 순차 얻어진 동작 보상 후의 복호 표시 화상은 도시하지 않은 디스플레이에 예컨대[I 픽쳐, B 픽쳐, B 픽쳐, P 픽쳐, B 픽쳐, B 픽쳐, P 픽쳐, …, I 픽쳐]에 대응한 순으로 표시된다.As described above, the decoded display image after the motion compensation sequentially obtained based on the I picture, the P picture, and the B picture is displayed on a display (not shown), for example, [I picture, B picture, B picture, P picture, B picture, B picture, P picture. ,… , I picture].

[가변 길이 부호 복호 처리부의 구성][Configuration of Variable Length Code Decoding Processing Unit]

다음에, 가변 부호 검출부 및 부호 길이 검출부를 갖는 도1의 가변 길이 부호 복호 처리부(12)의 구체적 구성에 대해 도 2를 이용하여 설명한다.Next, the specific configuration of the variable length code decoding processing unit 12 of FIG. 1 having the variable code detection unit and the code length detection unit will be described with reference to FIG.

부호 격납 레지스터(32)에는, 도 1의 헤더 검출·파라미터 분리부(10)로부터 가변 길이 부호 비트열이 공급된다. 부호 격납 레지스터(32)에는, 비트 위치 처리부(54)의 제어에 기초하여, 1머신 사이클마다 가변 길이 부호 비트열이 소정 비트수만큼(구체적으로는, 가변 길이 부호의 최대 비트수×단수(N))씩 격납된다. 도 1의 헤더 검출·파라미터 분리부(10)로부터 출력되는 가변 길이 부호 비트열이 가변 길이 부호(A, B, C, D, …)의 순인 것으로 하면, 본 실시 형태에서는 단수(N=2)로 했기 때문에, 부호 격납 레지스터(32)에는 최초의 1머신 사이클에서 예컨대 2개의 가변 길이 부호(A, B)의 비트열이 격납되게 된다.The variable length code bit string is supplied to the code storage register 32 from the header detection and parameter separation unit 10 of FIG. In the code storing register 32, the variable length coded bit string has a predetermined number of bits per one machine cycle (specifically, the maximum number of bits × number of stages (N) based on the control of the bit position processing unit 54. Are stored one by one. In the present embodiment, when the variable length coded bit string output from the header detection and parameter separation unit 10 shown in FIG. 1 is in the order of the variable length codes A, B, C, D, ..., the singular number (N = 2) In this case, the code storing register 32 stores, for example, a bit string of two variable length codes A and B in the first one machine cycle.

부호 격납 레지스터(32)로부터 출력되는 가변 길이 부호 비트열은 각각 제1단째의 가변 길이 부호 검출부(60-1) 및 부호 길이 검출부(62-1)에 공급된다. 또한, 이 가변 길이 부호 비트열은 포인트 셀렉터(42)에 공급된다. 포인트 셀렉터(42)는 후술하는 바와 같이 부호 길이 검출부(62-1)에서 검출되는 부호 길이(LA)에 기초하여, 후단의 가변 길이 부호 검출부(60-2) 및 부호 길이검출부(62-2)로의 가변 길이 부호 비트열의 공급 개시 비트 포인트, 즉 가변 길이 부호(A)에 계속되는 가변 길이 부호(B)의 개시 비트를 지정한다. 따라서, 포인트 셀렉터(42)로부터는 지정된 비트로부터 가변 길이 부호 비트열, 여기서는 가변 길이 부호(B)의 비트열이 제2단째의 가변 길이 부호 검출부(60-2) 및 부호 길이 검출부(62-2)에 공급되게 된다.The variable length code bit strings output from the code storage register 32 are supplied to the variable length code detector 60-1 and the code length detector 62-1 in the first stage, respectively. This variable length coded bit string is also supplied to the point selector 42. The point selector 42 is a variable length code detection unit 60-2 and code length detection unit 62-2 at a later stage, based on the code length LA detected by the code length detection unit 62-1 as described later. The start start bit point of the variable length code bit stream into the row, i.e., the start bit of the variable length code B following the variable length code A. Therefore, from the point selector 42, the variable length code bit string, that is, the bit string of the variable length code B from the designated bit, is the variable length code detector 60-2 and the code length detector 62-2 of the second stage. ) Will be supplied.

N단(N=2)의 부호 길이 검출부(62-1, 62-2)는 비교기(38, 48)와, 부호 길이 테이블(40, 50)을 각각 구비하고, 부호 길이 테이블(40, 50)은 후술하는 도 3에 나타낸 바와 같이, 가변 길이 부호의 공통 최소 비트열과 부호 길이가 대응되어 격납되어 있다. 그리고, 각 비교기(38, 48)는 각각에 공급되는 가변 길이 부호 비트열과, 부호 길이 테이블(40, 50)에 격납되어 있는 공통 최소 비트열을 비교하여, 대응하는 부호 길이(LA, LB)를 출력한다.The code length detectors 62-1 and 62-2 of the N-stage (N = 2) include the comparators 38 and 48 and the code length tables 40 and 50, respectively, and the code length tables 40 and 50 respectively. As shown in Fig. 3 to be described later, the common minimum bit string and the code length of the variable length code are stored correspondingly. Each of the comparators 38 and 48 compares the variable length coded bit strings supplied to the common minimum bit strings stored in the code length tables 40 and 50, and compares the corresponding code lengths LA and LB. Output

1단째의 부호 길이 검출부(62-1)로부터 출력되는 부호 길이(LA)는 상술한 바와 같이 포인트 셀렉터(42)에 공급되어, 가변 길이 부호 비트열의 공급 개시 비트 포인트의 지정에 이용됨과 동시에, 가산기(52)에도 공급된다.The code length LA output from the first-stage code length detection section 62-1 is supplied to the point selector 42 as described above, used for designating the supply start bit point of the variable length code bit string, and adder. It is also supplied to 52.

이 가산기(52)에는, 상기 부호 길이(LA)와, 2단째의 부호 길이 검출부(62-2)에서 검출되는 부호 길이(LB)가 공급된다. 그리고, 가산기(52)는 이들에 기초하여 부호 길이(LA)와 부호 길이(LB)의 합을 구하고, 연산 결과를 비트 위치 처리부(54)로 출력한다.The code length LA and the code length LB detected by the second code length detection part 62-2 are supplied to the adder 52. The adder 52 obtains the sum of the code length LA and the code length LB on the basis of these, and outputs the operation result to the bit position processor 54.

비트 위치 처리부(54)는 가산기(52)로부터의 부호 길이의 합 출력에 기초하여, 가변 길이 부호 비트열에서 가변 길이 부호(A, B)의 다음에 계속되는 가변 길이 부호(C)의 개시 비트를 구하고, 다음의 머신 사이클에서의 부호 격납 레지스터(32)로의 부호 비트열의 판독 개시 위치를 제어한다.The bit position processing unit 54 selects the start bit of the variable length code C following the variable length codes A and B in the variable length code bit string based on the sum output of the code lengths from the adder 52. The read start position of the code bit string to the code storage register 32 in the next machine cycle is controlled.

또한, 각 가변 길이 부호 검출부(60-1, 60-2)는 비교기(36, 46)와, 가변 길이 부호 테이블(34, 44)을 각각 구비하고, 각 가변 길이 부호 테이블(34, 44)은 도 4에 나타낸 바와 같은 구성이고, 허프만 부호 등의 표준 가변 길이 부호와 이들에 대응하는 런·레벨이 대응되어 격납되어 있다. 각 비교기(36, 46)는 각각 공급되는 가변 길이 부호 비트열과, 도 4의 114가지의 가변 길이 부호를 비교하여, 가변 길이 부호 비트열로부터 가변 길이 부호(A, B)를 절단하고, 이 가변 길이 부호(A, B)에 대응하는 런·레벨 출력(A', B')을 출력한다.In addition, each variable length code detection unit 60-1, 60-2 includes comparators 36, 46 and variable length code tables 34, 44, respectively. It is the structure as shown in FIG. 4, Comprising: Standard variable length codes, such as a Huffman code, and the run level corresponding to these are stored correspondingly. Each of the comparators 36 and 46 compares the variable length code bit strings supplied with the 114 variable length codes in Fig. 4 to cut variable length codes A and B from the variable length code bit strings. The run level outputs A 'and B' corresponding to the length codes A and B are output.

[부호 길이 검출부의 구성][Configuration of Code Length Detection Unit]

다음에, 본 실시 형태의 각 부호 길이 검출부(62-1, 62-2)의 구성, 보다 구체적으로는 부호 길이 테이블(40, 50)의 구성에 대해 설명한다.Next, the structure of each code length detection part 62-1, 62-2 of this embodiment, and more specifically, the structure of code length table 40, 50 is demonstrated.

도 3은 상기 부호 길이 테이블(40, 50)의 구성을 나타내고 있다. 도시된 부호 길이 테이블의 특징은 가변 길이 부호의 부호 길이를 알기 위해 필요한 공통 최소 비트열(부호 길이 검출 엔트리)과 부호 길이가 대응되어 격납되어 있는 것이고, 이와 같은 부호 길이 테이블의 구성으로 함으로써, 본 실시 형태의 부호 길이 검출부(62-1, 62-2)는 가변 길이 부호 자체를 검출하지 않고서 부호 길이를 검출할 수 있게 되어 있다.3 shows the configuration of the code length tables 40 and 50. A characteristic of the code length table shown is that a common minimum bit string (code length detection entry) and a code length necessary for knowing the code length of the variable length code are stored in correspondence with each other. The code length detectors 62-1 and 62-2 of the embodiment can detect the code length without detecting the variable length code itself.

가변 길이 부호는 도 4에 나타낸 바와 같이, 런·레벨의 발생 확률에 따라 고정적으로 할당되어 있기 때문에, 가변 길이 부호를 특정하여 가변 길이 부호의부호 길이를 검출할 경우에는, 예컨대, 현재 규정되어 있는 114가지의 가변 길이 부호 전부와, 부호 격납 레지스터(32)로부터의 가변 길이 부호 비트열을 비교하지 않으면 안된다.Since the variable length code is fixedly assigned in accordance with the probability of occurrence of the run level as shown in Fig. 4, when the variable length code is specified and the code length of the variable length code is detected, for example, currently defined All of the 114 variable length codes and the variable length code bit strings from the code storage register 32 must be compared.

그렇지만, 이 가변 길이 부호는 도 4에 나타낸 바와 같이 114가지 중 어느 것인가를 특정하지 않아도, 그 부호 길이를 검출할 수 있다. 예컨대, 도 4에서 부호 길이(9)의 가변 길이 부호는 8종류이다. 즉, 부호 비트열로서, 예컨대[00100110s] 또는 [00100001s]중 어느 것이 입력된 경우이더라도, 그 부호 길이는 9이다. 그리고, 이들 부호 길이(9)의 각 가변 길이 부호는 그 최초의 5비트[00100]가 공통하고 있다. 따라서, 도 3에 나타낸 부호 길이 테이블에서는, 이와 같이 동일 부호 길이를 갖는 가변 길이 부호의 공통 최소 비트열에 대해, 일정한 부호 길이가 설정되어 있고, 예컨대, 공통 최소 비트열[00100]에 대해서는 부호 길이(9)가 설정되어 있다.However, this variable length code can detect the code length without specifying any of 114 types as shown in FIG. For example, in Fig. 4, there are eight kinds of variable length codes of code lengths 9. That is, even if either of [00100110s] or [00100001s] is input as the code bit string, the code length is nine. Each variable length code of these code lengths 9 has the first 5 bits in common. Therefore, in the code length table shown in FIG. 3, a constant code length is set for a common minimum bit string of a variable length code having the same code length. For example, a code length (for a common minimum bit string) is set. 9) is set.

이와 같이, 공통 최소 비트열을 부호 검출 엔트리로서 부호 길이 테이블을 구성함으로써, 가변 길이 부호의 최후의 비트까지 확인하지 않아도, 그 부호 길이를 검출할 수 있다.In this way, by configuring the code length table as the code detection entry using the common minimum bit string, the code length can be detected without checking even the last bit of the variable length code.

또한, 가변 길이 부호의 비트수가 많게 됨에 따라, 동일 부호 길이를 갖는 가변 길이 부호의 종류는 증대하지만, 부호 길이 검출부(62-1, 62-2)에서 가변 길이 부호 자체를 특정할 필요가 없다. 따라서, 도 3에 나타낸 바와 같이 부호 길이 테이블은, 예컨대 16개의 공통 최소 비트열과 이것에 대응한 부호 길이만의 구성이 된다. 따라서, 가변 길이 부호 검출부에서 114가지의 가변 길이 부호 전부와의 비교를 행할 경우에 비해, 부호 길이 검출부(62-1, 62-2)의 각 비교기(38, 48)에서의 비교수는 현격하게 적게 된다. 이와 같은 이유 때문에도, 부호 길이의 검출은 보다 신속하게 행해지게 된다.Further, as the number of bits of the variable length code increases, the type of the variable length code having the same code length increases, but it is not necessary to specify the variable length code itself in the code length detectors 62-1 and 62-2. Therefore, as shown in Fig. 3, the code length table has only 16 common minimum bit strings and the code length corresponding thereto. Therefore, the number of comparisons in each of the comparators 38 and 48 of the code length detection units 62-1 and 62-2 is remarkably compared with the case where the variable length code detection unit compares with all 114 variable length codes. Less. Also for this reason, the detection of the code length is performed more quickly.

또한 도 3에서, 부호 길이 검출 엔트리「11」에 대해서는, 부호 길이「2」 또는 「3」이 대응되어 있다. 그리고, 어느 것의 부호 길이인가의 특정은, 예컨대 그 부호 비트열이 마크로 블럭을 구성하는 블럭의 선두인지 아닌지로 행한다. 또한, 블럭의 선두인지 아닌지는 도 1의 헤더 검출·파라미터 분리부(10)로부터 별도 공급되는 헤더 검출 신호와 도 1의 가변 길이 부호 복호 처리부(12)가 구비하는 블럭 선두 위치 검출 수단에 의해 알 수 있다.3, code length "2" or "3" is associated with code length detection entry "11". The code length is determined by, for example, whether the code bit string is the head of a block constituting the macro block. In addition, it is determined by the block detection position signal provided in the header detection signal supplied separately from the header detection and parameter separation unit 10 of FIG. 1 and the variable length code decoding processing unit 12 of FIG. Can be.

또한, 도면 중 부호 길이 검출 엔트리「000001」에 대응하는 부호 길이「Escape」는 화상 압축 방식에 의해 다르게 되고, 예컨대 MPEG2의 경우에는 부호 길이는 「24」이다.In the figure, the code length "Escape" corresponding to the code length detection entry "000001" differs depending on the image compression method. For example, in the case of MPEG2, the code length is "24".

이상 설명한 바와 같이, 본 실시 형태에서 부호 길이 검출부(62-1, 62-2)를 설치하고, 이 부호 길이 검출부(62-1, 62-2)에서 가변 길이 부호 자체를 절단하지 않고서 공통 최소 비트열을 절단함으로써, 매우 단기간에 각 부호 길이(LA, LB)를 검출할 수 있게 된다. 이 때문에, 상술한 바와 같이, 가변 길이 부호 복호 처리부를 병렬화한 경우에는, 2단째의 가변 길이 부호 검출부(60-2)에서, 보다 빠르게 가변 길이 부호(B)를 절단할 수 있게 된다.As described above, in the present embodiment, the code length detectors 62-1 and 62-2 are provided, and the code length detectors 62-1 and 62-2 do not cut the variable length code itself in common, and thus the common minimum bits. By cutting the columns, it is possible to detect the respective code lengths LA and LB in a very short period of time. Therefore, as described above, when the variable length code decoding processing unit is parallelized, the variable length code detection unit 60-2 in the second stage can cut the variable length code B more quickly.

또한, 가산기(52)에는 1머신 사이클이 종료하기 전의 비교적 빠른 시기에 부호 길이[A; 다단화한 경우에는 부호 길이(LA 및 LB)]의 데이터가 공급되기 때문에,비트 위치 처리부(54)는 이 부호 길이의 합에 기초하여 다음의 머신 사이클에서 부호 격납 레지스터(32)에 격납해야 하는 가변 길이 부호 비트열의 개시 위치를 보다 빠르게 특정할 수 있다.In addition, the adder 52 has a code length A at a relatively early time before one machine cycle ends. Since the data of code lengths LA and LB] are supplied in the case of multiplexing, the bit position processing section 54 must store the code storage register 32 in the next machine cycle based on the sum of these code lengths. The starting position of the variable length code bit string can be specified more quickly.

또한, 본 실시 형태와 같이, 가변 길이 부호 검출을 병렬화하면, 1머신 사이클 내에서 단수(N)에 따른 수의 가변 길이 부호가 N개 각각 절단되어, 대응하는 N개의 런레벨 출력이 얻어지고, 1단으로 가변 길이 부호의 복호화 처리의 고속화를 도모할 수 있게 된다.In addition, when the variable length code detection is parallelized as in the present embodiment, N variable length codes corresponding to the number N in each machine cycle are truncated, and corresponding N run level outputs are obtained. However, it is possible to speed up the decoding process of the variable length code.

또한, 도 2에 나타낸 가변 길이 부호 복호 처리부에서, 단수(N)가 2보다 클 경우에는 N=3을 예로 들면, 예컨대 도 5와 같은 구성으로 하면 대응 가능하다.In the variable length code decoding processing unit shown in Fig. 2, when the number N is larger than 2, N = 3 is taken as an example, for example, the configuration shown in Fig. 5 is applicable.

우선, 1단째 및 2단째의 가변 길이 부호 검출부 및 부호 길이 검출부의 구성은 도 2와 동일하게 한다. 그리고, 부호 격납 레지스터(32)로부터 3단째의 가변 길이 부호 검출부(60-3) 및 부호 길이 검출부(62-3)에 공급되는 부호 비트열의 공급 개시 비트 위치에 대해서는, 증설된 포인트 셀렉터(42-2)가 가산기(52)로부터의 부호 길이(LA와 LB)의 합 출력에 기초하여 제어하고, 가변 길이 부호(C)의 비트열의 최초부터로 한다.First, the configurations of the variable length code detector and the code length detector of the first and second stages are the same as in FIG. The extended point selector 42-for the supply start bit positions of the code bit strings supplied from the code storage register 32 to the variable-length code detector 60-3 and the code length detector 62-3 in the third stage. 2) is controlled based on the sum output of the code lengths LA and LB from the adder 52, and it is set from the beginning of the bit string of the variable length code C.

또한, 가산기(52)로부터의 부호 길이(LA와 LB)의 합 출력과, 3단째의 부호 길이 검출부가 검출하는 부호 길이(LC)를 증설한 가산기(52-2)에 입력하고, 이 가산기(52-2)가 이들 3개의 합(LA+LB+LC)을 구해, 이것을 비트 위치 처리부(54)로 출력한다.The sum output of the code lengths LA and LB from the adder 52 and the code length LC detected by the third-length code length detection unit are inputted into the adder 52-2, and the adder ( 52-2) obtains these three sums (LA + LB + LC) and outputs them to the bit position processor 54.

그리고, N>3의 경우이더라도, 마찬가지로 포인트 셀렉터 및 가산기를 증설하면 대응될 수 있다.Even in the case of N> 3, it is possible to cope with the addition of the point selector and the adder as well.

상기한 바와 같이 본 발명에 따른 가변 길이 부호 복호 장치는 가변 길이 부호의 복호 처리를 고속화할 수 있고, 또한 1머신 사이클 내에서 복수의 가변 길이 부호에 대한 복호화 처리를 행할 수 있다.As described above, the variable length code decoding apparatus according to the present invention can speed up the decoding process of the variable length code, and can perform the decoding process for the plurality of variable length codes in one machine cycle.

Claims (9)

가변 길이 부호로 이루어진 데이터의 부호 비트열에 대해 복호화 처리를 행하는 가변 길이 부호 복호 장치에 있어서,A variable length code decoding apparatus for performing a decoding process on a code bit string of data having a variable length code, 상기 부호 비트열로부터 상기 가변 길이 부호의 부호 길이를 검출하는 복수단의 부호 길이 검출 수단,A plurality of code length detection means for detecting a code length of the variable length code from the code bit string; 상기 부호 비트열로부터 상기 가변 길이 부호를 검출하여 대응하는 가변 길이 부호 복호 데이터를 출력하는 복수단의 가변 길이 부호 검출 수단,A plurality of stages of variable length code detecting means for detecting the variable length code from the code bit string and outputting corresponding variable length code decoded data; 소정 단째까지의 부호 길이 검출 수단에서 검출된 상기 부호 길이에 기초하여, 다음 단의 상기 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어하는 검출 개시 비트 제어 수단,Detection start bit control means for controlling the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means in the next step based on the code length detected by the code length detection means up to a predetermined stage; 상기 부호 비트열을 단위 머신 사이클마다 순차 격납하여, 상기 각 가변 길이 부호 검출 수단 및 상기 각 부호 길이 검출 수단에 공급하는 부호 격납 레지스터, 및A code storage register for sequentially storing the code bit strings for each unit machine cycle and supplying the variable length code detection means and the code length detection means; and 상기 각 부호 길이 검출 수단에서 각각 검출된 상기 부호 길이의 가산치에 기초하여, 다음의 머신 사이클 타이밍에서 상기 부호 격납 레지스터에 격납되는 상기 부호 비트열의 격납 개시 비트 위치를 제어하는 비트 위치 제어 수단Bit position control means for controlling the storing start bit position of the code bit string stored in the code storing register at the next machine cycle timing based on the addition value of the code length detected by the respective code length detecting means, respectively. 을 구비한 것을 특징으로 하는 가변 길이 부호 복호 장치.Variable length code decoding device comprising a. 제1항에 있어서, 단위 머신 사이클 기간 내에, 상기 각 가변 길이 부호 검출수단에서 각각 다른 가변 길이 부호를 검출하고, 검출된 복수의 가변 길이 부호에 대응하는 복수의 복호 데이터를 출력하는 것을 특징으로 하는 가변 길이 부호 복호 장치.The variable length code detecting means for detecting the different variable length codes in the unit machine cycle period and outputting a plurality of decoded data corresponding to the detected plurality of variable length codes in the unit machine cycle period. Variable length code decoding device. 가변 길이 부호로 이루어진 데이터의 부호 비트열에 대하여 복호화 처리를 행하는 가변 길이 부호 복호 장치에 있어서,A variable length code decoding apparatus for performing a decoding process on a code bit string of data having a variable length code, 상기 부호 비트열로부터 상기 가변 길이 부호의 부호 길이를 각각 검출하는 복수단의 부호 길이 검출 수단,A plurality of code length detection means for detecting the code length of the variable length code from the code bit string, respectively; 상기 부호 비트열로부터 상기 가변 길이 부호를 검출하여 대응하는 가변 길이 부호 복호 데이터를 출력하는 복수단의 가변 길이 부호 검출 수단,A plurality of stages of variable length code detecting means for detecting the variable length code from the code bit string and outputting corresponding variable length code decoded data; 상기 복수단 중 소정 단째까지의 부호 길이 검출 수단에서 검출된 상기 부호 길이의 합계 길이에 기초하여, 다음 단의 상기 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어하는 검출 개시 비트 제어 수단,Based on the total length of the code lengths detected by the code length detection means up to a predetermined one of the plurality of stages, the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means of the next stage is controlled. Detection start bit control means 상기 부호 비트열을 단위 머신 사이클마다 순차 격납하여 상기 각 가변 길이 부호 검출 수단 및 상기 각 부호 길이 검출 수단에 공급하는 부호 격납 레지스터, 및A code storage register for sequentially storing the code bit strings for each unit machine cycle and supplying the variable length code detecting means and the code length detecting means to each of the variable length code detecting means, and 상기 각 부호 길이 검출 수단에서 각각 검출된 상기 각 부호 길이의 가산치에 기초하여, 다음의 머신 사이클의 타이밍에서 상기 부호 격납 레지스터에 격납되는 상기 부호 비트열의 격납 개시 비트 위치를 제어하는 비트 위치 제어부A bit position control unit for controlling the storing start bit position of the code bit string stored in the code storing register at the next machine cycle timing based on the addition value of the respective code lengths detected by the respective code length detecting means, respectively. 를 구비한 것을 특징으로 하는 가변 길이 부호 복호 장치.Variable length code decoding device comprising a. 가변 길이 부호로 이루어진 데이터의 부호 비트열에 대하여 복호화 처리를 행하는 가변 길이 부호 복호 장치에 있어서,A variable length code decoding apparatus for performing a decoding process on a code bit string of data having a variable length code, 상기 부호 비트열로부터 상기 가변 길이 부호의 부호 길이를 검출하는 부호 길이 검출 수단, 및Code length detecting means for detecting a code length of the variable length code from the code bit string; and 상기 부호 비트열로부터 상기 가변 길이 부호를 검출하여 대응하는 가변 길이 부호 복호 데이터를 출력하는 가변 길이 부호 검출 수단Variable length code detecting means for detecting the variable length code from the code bit string and outputting corresponding variable length code decoded data 을 구비하고,And 상기 부호 길이 검출 수단은 동일 부호 길이의 가변 길이 부호에서 공통되는 공통 최소 비트열과, 대응하는 가변 길이 부호의 부호 길이가 관련되어 격납된 부호 길이 테이블을 구비하고, 이 부호 길이 테이블의 상기 공통 최소 비트열과, 상기 부호 비트열을 비교하여 가변 길이 부호의 부호 길이를 검출하며,The code length detecting means comprises a code length table in which a common minimum bit string common to a variable length code having the same code length and a code length of a corresponding variable length code are stored in association with each other, and the common minimum bit of the code length table. A code length of a variable length code is detected by comparing a string and the code bit string; 상기 부호 길이 검출 수단은 상기 부호 비트열로부터 연속되는 상기 가변 길이 부호의 부호 길이를 각각 검출하는 복수단의 부호 길이 검출 수단으로 이루어지고,The code length detecting means comprises a plurality of code length detecting means each detecting a code length of the variable length code consecutive from the code bit string; 상기 가변 길이 부호 검출 수단은 상기 부호 비트열로부터 상기 부호 길이 검출 수단에서 검출되는 부호 길이에 대응하는 가변 길이 부호를 각각 검출하는 복수단의 가변 길이 부호 검출 수단으로 이루어지며,The variable length code detecting means comprises a plurality of stages of variable length code detecting means for detecting variable length codes corresponding to code lengths detected by the code length detecting means from the code bit string, 상기 복수의 부호 길이 검출 수단에서 검출된 상기 부호 길이에 기초하여,상기 각 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어하는 것을 특징으로 하는 가변 길이 부호 복호 장치.A variable length code decoding device characterized by controlling the detection start bit of the variable length code with respect to the code bit string in the variable length code detection means based on the code lengths detected by the plurality of code length detection means . 제4항에 있어서, 단위 머신 사이클 기간 내에, 상기 각 가변 길이 부호 검출 수단에서 각각 다른 가변 길이 부호를 검출하고, 검출된 복수의 가변 길이 부호에 대응하는 복수의 복호 데이터를 출력하는 것을 특징으로 하는 가변 길이 부호 복호 장치.The variable length code of the variable length code detecting means detects a different variable length code and outputs a plurality of decoded data corresponding to the detected plurality of variable length codes within a unit machine cycle period. Variable length code decoding device. 제4항에 있어서, 소정 단째까지의 부호 길이 검출 수단에서 검출된 상기 부호 길이에 기초하여, 다음 단의 상기 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어하는 검출 개시 비트 제어 수단,5. The method according to claim 4, wherein the detection start bit of the variable length code with respect to the code bit string in the variable length code detecting means of the next stage is controlled based on the code length detected by the code length detecting means up to a predetermined stage. Detection start bit control means, 상기 부호 비트열을 단위 머신 사이클마다 순차 격납하여 상기 각 가변 길이 부호 검출 수단 및 상기 각 부호 길이 검출 수단에 공급하는 부호 격납 레지스터, 및A code storage register for sequentially storing the code bit strings for each unit machine cycle and supplying the variable length code detecting means and the code length detecting means to each of the variable length code detecting means, and 상기 각 부호 길이 검출 수단에서 각각 검출된 상기 각 부호 길이의 가산치에 기초하여, 다음의 머신 사이클의 타이밍에서 상기 부호 격납 레지스터에 격납되는 상기 부호 비트열의 격납 개시 비트 위치를 제어하는 비트 위치 제어부A bit position control unit for controlling the storing start bit position of the code bit string stored in the code storing register at the next machine cycle timing based on the addition value of the respective code lengths detected by the respective code length detecting means, respectively. 를 더 구비한 것을 특징으로 하는 가변 길이 부호 복호 장치.Variable length code decoding device further comprising. 제6항에 있어서, 단위 머신 사이클 기간 내에, 상기 각 가변 길이 부호 검출 수단에서 각각 다른 가변 길이 부호를 검출하고, 검출된 복수의 가변 길이 부호에 대응하는 복수의 복호 데이터를 출력하는 것을 특징으로 하는 가변 길이 부호 복호 장치.7. The method according to claim 6, wherein different variable length codes are detected by the variable length code detecting means in unit machine cycle periods, and a plurality of decoded data corresponding to the detected plurality of variable length codes are output. Variable length code decoding device. 제4항에 있어서, 상기 복수단의 가변 길이 부호 검출 수단 중 소정 단째까지의 부호 길이 검출 수단에서 검출된 상기 부호 길이 합계 길이에 기초하여, 다음 단의 상기 가변 길이 부호 검출 수단에서의 부호 비트열에 대한 상기 가변 길이 부호의 검출 개시 비트를 제어하는 검출 개시 비트 제어 수단을 더 구비한 것을 특징으로 하는 가변 길이 부호 복호 장치.The code bit string in the variable length code detecting means of the next stage is based on the total length of the code lengths detected by the code length detecting means up to a predetermined stage among the variable length code detecting means of the plurality of stages. And a detection start bit control means for controlling a detection start bit of the variable length code for the variable length code. 제8항에 있어서, 상기 부호 비트열을 단위 머신 사이클마다 순차 격납하여 상기 각 가변 길이 부호 검출 수단 및 상기 각 부호 길이 검출 수단에 공급하는 부호 격납 레지스터, 및9. The apparatus according to claim 8, further comprising: a code storage register for sequentially storing the code bit strings for each unit machine cycle and supplying the variable length code detection means and the code length detection means; 상기 각 부호 길이 검출 수단에서 각각 검출된 상기 각 부호 길이의 가산치에 기초하여, 다음의 머신 사이클의 타이밍에서의 상기 부호 격납 레지스터에 격납되는 상기 부호 비트열의 격납 개시 비트 위치를 제어하는 비트 위치 제어부A bit position control unit for controlling the storing start bit position of the code bit string stored in the code storing register at the next machine cycle timing based on the addition value of the respective code lengths detected by the respective code length detecting means, respectively. 를 더 구비한 것을 특징으로 하는 가변 길이 부호 복호 장치.Variable length code decoding device further comprising.
KR1019970053033A 1997-10-16 1997-10-16 Apparatus for decoding a variable length code KR100300277B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970053033A KR100300277B1 (en) 1997-10-16 1997-10-16 Apparatus for decoding a variable length code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970053033A KR100300277B1 (en) 1997-10-16 1997-10-16 Apparatus for decoding a variable length code

Publications (2)

Publication Number Publication Date
KR19990032096A KR19990032096A (en) 1999-05-06
KR100300277B1 true KR100300277B1 (en) 2001-09-22

Family

ID=66041957

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970053033A KR100300277B1 (en) 1997-10-16 1997-10-16 Apparatus for decoding a variable length code

Country Status (1)

Country Link
KR (1) KR100300277B1 (en)

Also Published As

Publication number Publication date
KR19990032096A (en) 1999-05-06

Similar Documents

Publication Publication Date Title
US7215707B2 (en) Optimal scanning method for transform coefficients in coding/decoding of image and video
USRE40980E1 (en) Adaptive variable-length coding and decoding methods for image data
US6157741A (en) Image processing apparatus and image processing method
JP5173990B2 (en) Encoding method, encoding apparatus, decoding method, and decoder
US20030067984A1 (en) Apparatus and method of coding/decoding moving picture and storage medium for storing coded moving picture data
JPH09191448A (en) Video signal coder and its method
US20060233447A1 (en) Image data decoding apparatus and method
JPH09162749A (en) Variable length code coder
JPH0522715A (en) Picture encoder
KR100300277B1 (en) Apparatus for decoding a variable length code
JPH1022832A (en) Multistage variable length code decoder
JPH10145789A (en) Animation encoding and decoding method
JP2000333180A (en) Skip macro block inhibit control method, skip macro block inhibit controller and medium recording skip macro block inhibit control program
JPH1022833A (en) Variable length code decoder
KR100195715B1 (en) A variable length decoder
KR100195717B1 (en) A variable length decoder
KR0148155B1 (en) Esc coding apparatus and method of image coding
JPH10261967A (en) Multi-stage variable length coding and decoding device
KR100195716B1 (en) A variable length decoder
KR100195722B1 (en) A variable length decoder
JPH06244736A (en) Encoder
JP2004007778A (en) Motion compensating and decoding method
KR100293369B1 (en) Digital video compression coding and decoding system using shape adaptive selection and thereof method
JP4238408B2 (en) Image compression device
JPH10257493A (en) Motion vector detector and image encoder provided with the same

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

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee