KR100261032B1 - Inverse quantizer for digital video camera - Google Patents

Inverse quantizer for digital video camera Download PDF

Info

Publication number
KR100261032B1
KR100261032B1 KR1019970029965A KR19970029965A KR100261032B1 KR 100261032 B1 KR100261032 B1 KR 100261032B1 KR 1019970029965 A KR1019970029965 A KR 1019970029965A KR 19970029965 A KR19970029965 A KR 19970029965A KR 100261032 B1 KR100261032 B1 KR 100261032B1
Authority
KR
South Korea
Prior art keywords
data
run
output
control
inverse quantization
Prior art date
Application number
KR1019970029965A
Other languages
Korean (ko)
Other versions
KR19990005747A (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 KR1019970029965A priority Critical patent/KR100261032B1/en
Publication of KR19990005747A publication Critical patent/KR19990005747A/en
Application granted granted Critical
Publication of KR100261032B1 publication Critical patent/KR100261032B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation

Abstract

PURPOSE: An inverse quantizing apparatus of a DVC(digital video camera) is to optimize an inverse quantizing function to be fit for a specification of the DVC, thereby simplifying a circuit construction of the apparatus. CONSTITUTION: A state controlling portion(100) controls an entire timing to perform an inverse quantizing operation. An area number output portion(110) counts input VLD data in a DCT(discrete cosine transform) block unit according to control of a state controlling portion. A DC register(140) stores a class number and an inverse quantizing number according to control of a state controlling portion. An amp register(130) stores amp data according to control of a state controlling portion. A run generating portion(120) generates 0 according to input run data. An inverse quantization deciding portion(150) receives the area number output from the area number output portion, and the class number and the inverse quantizing number output from the DC register to decide an inverse quantizing step and then output the step according to control of the run generating portion.

Description

DVC의 역양자화 장치(INVERSE QUANTIZER FOR DIGITAL VIDEO CAMERA)INVERSE QUANTIZER FOR DIGITAL VIDEO CAMERA

본 발명은 DVC(Digital Video Camera)에 있어서, 압축된 영상 신호를 신장하기 위한 알고리즘을 구현하는 역양자화기에 관한 것이다.The present invention relates to an inverse quantizer for implementing an algorithm for extending a compressed video signal in a digital video camera (DVC).

일반적으로, 입력되는 DCT 데이타의 양자화는 디지탈 데이타의 압축률과 부호화 성능에 결정적인 영향을 미치는 요소로써 양자화 스텝을 변화시키므로써 압축된 비디오 데이타의 비트량을 조절할 수 있다.In general, the quantization of the input DCT data is a factor that has a decisive effect on the compression rate and the encoding performance of the digital data, so that the bit amount of the compressed video data can be adjusted by changing the quantization step.

양자화 과정은 영역 번호(Area Number), 클래스 번호(Class Number), 및 양자화 번호(Quantizing Number)에 의해 이루어지며, 8 x 8 개의 화소로 이루어지는 DCT 블럭 단위로 수행되는데, 이는 하나의 DCT 블럭을 형성하는 64개의 DCT 데이타 중 첫번째 DCT 데이타에 DC 값이 있고 나머지 63개의 DCT 데이타에 AC 값이 있기 때문이다.The quantization process is performed by an area number, a class number, and a quantization number. The quantization process is performed in units of DCT blocks including 8 x 8 pixels, which form one DCT block. This is because the first DCT data of the 64 DCT data has a DC value and the remaining 63 DCT data have an AC value.

즉, 하나의 DCT 블럭내에서 첫번째로 입력되는 16비트의 데이타는 DC 데이타이므로, 양자화는 항상 64개의 데이타를 형성하는 DCT 블럭 단위로 이루어진다.That is, since 16-bit data input first in one DCT block is DC data, quantization is always performed in units of DCT blocks forming 64 data.

한편, 상기 DCT 블럭내에서 양자화 간격은 도 1 에 도시한 바와 같이 클래스 번호, 영역 번호 및 양자화 번호에 의해 결정되는데, 이중에서 클래스 번호는 도 2에 도시한 바와 같이 DCT 블럭내에서 AC 계수 값의 크기, 즉 AC 계수의 절대값으로 쉽게 결정될 수 있고, 영역 번호는 도 3 에 도시한 바와 같이 DCT 블럭내의 위치, 즉 DCT 블럭의 계수의 위치에 따라 결정된다.On the other hand, the quantization interval in the DCT block is determined by a class number, an area number, and a quantization number, as shown in FIG. 1, wherein the class number is the value of the AC coefficient value in the DCT block as shown in FIG. The magnitude, i.e., the absolute value of the AC coefficient, can be easily determined, and the area number is determined according to the position in the DCT block, that is, the position of the coefficient of the DCT block, as shown in FIG.

또한, 양자화 번호는 6개의 DCT 블럭으로 이루어진 마크로 블럭 단위로 하나씩 결정되는데, 5개의 마크로 블럭으로 구성된 하나의 비디오 세그먼트내에서 발생된 데이타량은 DVC 규격에서 미리 일정한 비트량으로 제한하도록 설정되어 있으므로 이의 규격에 맞도록 양자화 번호를 설정해야 한다.In addition, the quantization numbers are determined one by one in macroblock units consisting of six DCT blocks. Since the amount of data generated in one video segment consisting of five macroblocks is set to be limited to a predetermined bit amount in the DVC standard, The quantization number must be set to meet the specification.

이와 같이 양자화되어 압축된 데이타를 역양자화하여 신장하기 위해서는 위의 과정과 역으로 이루어지는 역양자화 과정을 거쳐야 한다.As described above, in order to dequantize and decompress the quantized and compressed data, it is necessary to undergo an inverse quantization process in which the above process is inversely performed.

즉, 역양자화기는 양자화 번호, 클래스 번호, 영역 번호의 3 가지 변수로 역양자화 스텝을 결정하며 이 값으로 역양자화를 행한다.That is, the inverse quantizer determines the inverse quantization step by three variables of a quantization number, a class number, and an area number, and performs inverse quantization with this value.

이와 같이 설정된 역양자화 번호와 클래스 번호와 영역 번호에 따라 VLD(Variable Length Decoder) 데이타를 입력으로 역양자화하는 DVC의 역양자화기는 DVC 스펙에 맞으면서 회로가 간단해야 한다.The dequantizer of DVC which dequantizes Variable Length Decoder (VLD) data as input according to the dequantization number, class number, and area number set as described above should be simple in circuit while complying with DVC specification.

따라서 본 발명은 DVC에 있어서, 스펙에 맞는 신장을 수행하고 회로를 간단하게 하기 위한 역양자화기를 제공함에 그 목적이 있다.Accordingly, an object of the present invention is to provide an inverse quantizer for performing stretching according to a specification and simplifying a circuit in a DVC.

상기 목적을 달성하기 위해 본 발명에 의한 DVC의 역양자화기는 역양자화를 수행하기 위해 전체적인 타이밍을 조절하는 상태 제어 수단, 상기 상태 제어 수단의 제어에 따라 VLD 데이타가 입력될때마다 DCT 블럭 단위로 카운트하여 해당하는 영역 번호를 출력하는 영역 번호 출력 수단, 상기 상태 제어 수단의 제어에 따라 입력되는 클래스 번호와 역양자화 번호를 저장하는 DC 레지스터, 상기 상태 제어 수단의 제어에 따라 입력되는 앰프 데이타를 저장하는 앰프 레지스터, 상기 상태 제어 수단의 제어에 따라 입력되는 런 데이타에 따라 '0'을 발생하는 런 발생 수단, 상기 상태 제어부의 제어에 따라 상기 영역 번호 출력 수단으로 부터 출력되는 영역 번호와 상기 DC 레지스터로 부터 출력되는 클래스 번호와 역양자화 번호를 입력으로 역양자화 스텝을 결정하고 상기 런 발생 수단의 제어에 따라 출력하는 역양자화 스텝 결정 수단, 및 상기 런 발생 수단의 제어에 따라 상기 역양자화 스텝 결정 수단으로 부터 출력되는 역양자화 스텝에 따라 상기 앰프 레지스터로 부터 출력되는 앰프 데이타를 역양자화하는 역양자화 수단으로 구성됨을 특징으로 한다.In order to achieve the above object, the dequantizer of the DVC according to the present invention is a state control means for adjusting the overall timing to perform dequantization, and counts in units of DCT blocks whenever VLD data is input according to the control of the state control means. An area number output means for outputting a corresponding area number, a DC register for storing class numbers and inverse quantization numbers input under control of the state control means, and an amplifier for storing amplifier data input under control of the state control means A register generating means for generating a '0' according to the run data input under the control of the state control means, and an area number output from the area number output means under the control of the state control part and from the DC register. Dequantization step is determined by inputting output class number and dequantization number. And inverse quantization step determination means for outputting under control of the run generation means, and amplifier data output from the amplifier register in accordance with dequantization step output from the dequantization step determination means under control of the run generation means. Characterized in that it consists of inverse quantization means for inverse quantization.

도 1 은 양자화 간격 결정을 설명하기 위한 도면1 is a diagram for explaining quantization interval determination.

도 2 는 클래스 번호 결정을 설명하기 위한 도면2 is a diagram for explaining class number determination.

도 3 은 DCT 블럭내의 영역 번호를 설명하기 위한 도면3 is a diagram for explaining an area number in a DCT block;

도 4 는 본 발명에 의한 DVC의 역양자화 장치의 구성도4 is a block diagram of an inverse quantization apparatus of DVC according to the present invention

도 5 (가)는 DC 데이타의 구조도5 (a) is a structural diagram of the DC data

도 5 (나)는 AC 데이타의 구조도5 (b) is a structural diagram of the AC data

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

100 : 상태 제어부 110 : 영역 번호 출력부100: state control unit 110: area number output unit

111 : 카운터 112 : 영역 발생기111: counter 112: region generator

120 : 런 발생부 121 : 런 카운터120: run generator 121: run counter

122 : 펄스 발생기 130 : 앰프 레지스터122: pulse generator 130: amplifier resistor

140 : DC 레지스터 150 : 역양자화 스텝 결정부140: DC register 150: dequantization step determination unit

160 : 역양자화기160: inverse quantizer

이하 첨부한 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명에 의한 DVC의 양자화 장치는 도 4 에 도시한 바와 같이 상태 제어부(100), 영역 번호 출력부(110), 런 발생부(120), 앰프 레지스터(130), DC 레지스터(140), 역양자화 스텝 결정부(150), 및 역양자화기(160)로 구성된다.As shown in FIG. 4, the quantization apparatus of the DVC according to the present invention includes a state controller 100, an area number output unit 110, a run generator 120, an amplifier register 130, a DC register 140, and an inverse. It is composed of a quantization step determiner 150, and an inverse quantizer 160.

상기 상태 제어부(100)는 역양자화를 수행하기 위해 전체적인 타이밍을 조절한다.The state controller 100 adjusts the overall timing to perform dequantization.

상기 영역 번호 출력부(110)는 상기 상태 제어부(100)의 제어에 따라 VLD 데이타(ICOEF[15:0])가 입력될때마다 DCT 블럭 단위로 카운트하여 해당하는 영역 번호(AREA[1:0])를 출력하는 것으로, 상기 상태 제어부(100)의 제어에 따라 VLD 데이타(ICOEF[15:0])가 입력될때마다 카운트하고 하나의 DCT 블럭이 입력될때마다 리세트되는 카운터(111), 및 상기 카운터(111)로 부터 출력되는 카운트값에 따라 해당하는 영역 번호(AREA[1:0])를 발생하여 상기 역양자화 스텝 결정부(150)로 출력하는 영역 번호 발생기(112)로 구성된다.The area number output unit 110 counts in units of DCT blocks every time the VLD data (ICOEF [15: 0]) is input under the control of the state controller 100, and corresponds to the area number AREA [1: 0]. A counter 111 which counts each time VLD data (ICOEF [15: 0]) is input and resets each time one DCT block is input according to the control of the state controller 100, and The area number generator 112 generates an area number AREA [1: 0] corresponding to the count value output from the counter 111 and outputs the area number AREA [1: 0] to the inverse quantization step determination unit 150.

여기서, DCT 블럭은 16비트로 이루어진 1개의 DC 데이타와 63개의 AC 데이타로 이루어져, 총 64개 VLD 데이타(ICOEF[15:0])로 이루어진다. 즉, DCT 블럭은 8 x 8 개의 DCT 데이타로 이루어지며, 첫번째 DCT 데이타는 2비트의 클래스 번호와 4비트의 역양자화 번호와 DCT 블럭을 대표하는 9비트의 DC 계수값을 포함하는 DC 데이타이고, 두번째로 부터 마지막 64번째 DCT 데이타는 9비트의 앰프 데이타와 6비트의 런 데이타를 포함하는 AC 데이타이다.Here, the DCT block is composed of one DC data consisting of 16 bits and 63 AC data, and a total of 64 VLD data (ICOEF [15: 0]). That is, the DCT block is composed of 8 x 8 DCT data, the first DCT data is a DC data containing a 2-bit class number, 4-bit dequantization number and a 9-bit DC coefficient value representing the DCT block, The second to last 64th DCT data is AC data containing 9 bits of amplifier data and 6 bits of run data.

상기 DC 데이타는 도 5 (가)에 도시한 바와 같이 2비트의 클래스 번호(CL[1:0])와 3비트의 역양자화 번호(IQNO[3:0])를 포함한다. 즉, 상기 DC 데이타는 도 5 (가)에 도시한 바와 같이 2비트의 클래스 번호(ICOEF[1:0]), 1비트의 모드 번호(ICOEF[2]), 9비트의 DC 계수(ICOEF[11:3]), 및 3비트의 역양자화 번호(ICOEF[12:15])로 이루어진다.The DC data includes a 2-bit class number (CL [1: 0]) and a 3-bit dequantization number (IQNO [3: 0]) as shown in FIG. That is, the DC data is a 2-bit class number (ICOEF [1: 0]), a 1-bit mode number (ICOEF [2]), and a 9-bit DC coefficient (ICOEF [ 11: 3]), and a 3-bit inverse quantization number (ICOEF [12:15]).

또한, 상기 AC 데이타는 도 5 (나)에 도시한 바와 같이 9비트의 앰프 데이타(ICOEF[8:0])와 6비트의 런 데이타(ICOEF[14:9])를 포함한다.In addition, the AC data includes 9-bit amplifier data (ICOEF [8: 0]) and 6-bit run data (ICOEF [14: 9]) as shown in FIG.

상기 카운터(111)는 6비트 카운터로 구성되어, 상기 상태 제어부(100)로 부터 출력되는 VLD 데이타의 입력에 따라 입력되는 VLD 데이타 클럭을 '0'으로 부터 '63'까지 '64'를 카운트하므로써 64개의 VLD 데이타, 즉 한개의 DCT 블럭을 카운트하게 되고 한개의 DCT 블럭이 입력될때마다, 즉 64개의 VLD 데이타가 입력될때마다 상기 상태 제어부(100)의 제어에 따라 리세트된다.The counter 111 is composed of a 6-bit counter by counting '64' from '0' to '63' for the VLD data clock input according to the input of the VLD data output from the state controller 100. 64 VLD data, that is, one DCT block is counted and reset each time one DCT block is input, that is, whenever 64 VLD data is input, according to the control of the state controller 100.

상기 DC 레지스터(140)는 상기 상태 제어부(100)의 제어에 따라 입력되는 클래스 번호(CL[1:0])와 역양자화 번호(IQNO[3:0])를 저장한다.The DC register 140 stores a class number CL [1: 0] and an inverse quantization number IQNO [3: 0] input under the control of the state controller 100.

상기 앰프 레지스터(130)는 상기 상태 제어부(100)의 제어에 따라 입력되는 앰프 데이타(ICOEF[8:0])를 저장한다.The amplifier register 130 stores amplifier data (ICOEF [8: 0]) input under the control of the state controller 100.

상기 런 발생부(120)는 상기 상태 제어부(100)의 제어에 따라 입력되는 런 데이타(ICOFF[14:9])에 따라 '0'을 발생하는 것으로, 상기 상태 제어부(100)의 제어에 따라 입력되는 런 데이타(ICOFF[14:9]) 만큼 카운트하면서 '0'을 발생하는 런 카운터(121), 및 상기 런 카운터(121)의 카운팅값이 '0'이 되면 펄스를 발생하여 런 데이타의 출력이 완료되었음을 알리는 펄스 발생기(122)로 구성된다.The run generator 120 generates '0' according to the run data (ICOFF [14: 9]) input under the control of the state controller 100, and under the control of the state controller 100. The run counter 121 generates '0' while counting the input run data ICOFF [14: 9], and when the count value of the run counter 121 reaches '0', a pulse is generated to generate run data. It consists of a pulse generator 122 to indicate that the output is complete.

상기 역양자화 스텝 결정부(150)는 상기 상태 제어부(100)의 제어에 따라 상기 영역 번호 출력부(110)로 부터 출력되는 영역 번호(AREA[1:0])와 상기 DC 레지스터(140)로 부터 출력되는 클래스 번호(CL[1:0])와 역양자화 번호(QNO[3:0])를 입력으로 역양자화 스텝(IQSTEP[2:0])을 결정하고 상기 런 발생부(120)의 제어에 따라 출력한다.The inverse quantization step determination unit 150 controls the area number AREA [1: 0] output from the area number output unit 110 and the DC register 140 under the control of the state control unit 100. The inverse quantization step IQSTEP [2: 0] is determined by inputting the class number CL [1: 0] and the inverse quantization number QNO [3: 0], which are output from the Output according to the control.

상기 역양자화기(160)는 상기 런 발생부(120)의 제어에 따라 상기 역양자화 스텝 결정부(150)로 부터 출력되는 역양자화 스텝(IQSTEP[2:0])에 따라 상기 앰프 레지스터(130)로 부터 출력되는 앰프 데이타(AMP[8:0])를 역양자화하는 것으로, 상기 런 발생부(120)의 제어에 따라 상기 역양자화 스텝 결정부(150)로 부터 출력되는 역양자화 스텝(IQSTEP[2:0])에 따라 상기 앰프 레지스터(130)로 부터 출력되는 앰프 데이타(AMP[8:0])를 쉬프트시키는 쉬프터로 구성된다.The inverse quantizer 160 controls the amplifier register 130 according to an inverse quantization step IQSTEP [2: 0] output from the inverse quantization step determiner 150 under the control of the run generator 120. Inverse quantization of the amplifier data AMP [8: 0] outputted from the quantization of the inverse quantization step IQSTEP under the control of the run generator 120. A shifter for shifting the amplifier data AMP [8: 0] output from the amplifier register 130 according to [2: 0]).

이와 같이 구성되는 본 발명에 의한 DVC의 양자화 장치의 동작을 설명한다.The operation of the quantization device of the DVC according to the present invention configured as described above will be described.

하나의 DCT 블럭을 형성하는 64개의 VLD 데이타 중에서 첫번째 VLD 데이타인 DC 데이타가 입력되면 상기 상태 제어부(100)에서는 상기 카운터(111)를 리세트시키고 상기 카운터(111)로 DCT 데이타 클럭을 출력시킨다. 이때, 상기 카운터(111)는 상기 VLD 데이타 클럭이 입력되면 '1' 증가시켜 카운팅하게 된다.When DC data, which is the first VLD data among the 64 VLD data forming one DCT block, is input, the state controller 100 resets the counter 111 and outputs a DCT data clock to the counter 111. In this case, when the VLD data clock is input, the counter 111 increases by '1' to count.

한편, 상기 상태 제어부(100)에서는 상기 DC 레지스터(140)를 제어하여 상기 DC 데이타 내의 2비트의 클래스 번호(CL[1:0])와 4비트의 역양자화 번호(IQNO[3:0])를 저장한다.Meanwhile, the state controller 100 controls the DC register 140 to control the 2-bit class number CL [1: 0] and the 4-bit dequantization number IQNO [3: 0] in the DC data. Save it.

즉, 상기 DC 데이타에는 도 5 (가)에 도시한 바와 같이 2비트의 클래스 번호(CL[1:0])와 4비트의 역양자화 번호(IQNO[3:0])가 포함되어 있으므로, 상기 상태 제어부(100)의 제어에 따라 DC 레지스터(140)에 저장하게 된다.That is, the DC data includes a 2-bit class number CL [1: 0] and a 4-bit dequantization number IQNO [3: 0], as shown in Fig. 5A. Under the control of the state control unit 100 is stored in the DC register 140.

이와 같이 DC 레지스터(140)에 2비트의 클래스 번호(CL[1:0])와 3비트의 역양자화 번호(IQNO[3:0])가 저장된후에 하나의 DCT 블럭을 형성하는 64개의 VLD 데이타 중에서 두번째 VLD 데이타인 AC 데이타가 입력되면 상기 상태 제어부(100)에서는 상기 카운터(111)로 VLD 데이타 클럭을 출력시킨다. 이때, 상기 카운터(111)는 상기 DCT 데이타 클럭이 입력되면 '1' 증가시켜 카운팅하게 된다.As such, 64 VLD data forming one DCT block after the 2-bit class number CL [1: 0] and the 3-bit inverse quantization number IQNO [3: 0] are stored in the DC register 140. When AC data, which is the second VLD data, is input, the state controller 100 outputs a VLD data clock to the counter 111. In this case, when the DCT data clock is input, the counter 111 increases by '1' to count.

상기 카운터(111)의 카운팅값이 '1' 증가하여 '2'가 되면 상기 영역 발생기(112)에서는 상기 카운터(111)로 부터 출력되는 카운팅값 '2'를 입력으로 도 3 에 도시한 바와 같이 영역 번호 '0'을 출력하게 된다.When the counting value of the counter 111 increases to '1' and becomes '2', the area generator 112 receives a counting value '2' output from the counter 111 as shown in FIG. 3. The area number '0' will be output.

즉, 상기 DCT 블럭은 DC 계수값을 포함하는 DC 데이타가 입력되는 첫번째 VLD 데이타로 부터 마지막 64번째 VLD 데이타가 도 3 에 도시한 바와 같이 지그재그 스캔된다. 따라서 상기 카운터(111)로 부터 출력되는 '0'으로 부터 '63'까지의 64개의 카운팅값에 따라 상기 영역 발생기(112)에서는 현재의 데이타의 위치를 알고 그 위치의 영역 번호(AREA[1:0])를 출력할 수 있다.That is, the DCT block is zigzag scanned from the first VLD data into which the DC data including the DC coefficient value is input, as shown in FIG. 3. Accordingly, according to the 64 counting values from '0' to '63' output from the counter 111, the area generator 112 knows the current position of the data and the area number (AREA [1 :) of the position. 0]).

다시말해서 영역 번호는 DCT 블럭내의 위치를 카운팅해서 이를 디코딩하므로써 '0'으로 부터 '3'의 값을 갖게 된다.In other words, the area number has a value from '0' to '3' by counting the position in the DCT block and decoding it.

이와 같이 DC 레지스터(140)에 역양자화 번호와 클래스 번호가 저장된 상태에서 상기 영역 발생기(112)에서 영역 번호가 출력되면 상기 상태 제어부(100)에서 상기 DC 레지스터(140)를 제어하여 상기 DC 레지스터(140)에 저장된 클래스 번호(CL[1:0])와 역양자화 번호를 상기 역양자화 스텝 결정부(150)로 출력하도록 한다.When the area number is output from the area generator 112 while the dequantization number and the class number are stored in the DC register 140 as described above, the state control unit 100 controls the DC register 140 to control the DC register ( The class number CL [1: 0] and the inverse quantization number stored in 140 are output to the inverse quantization step determination unit 150.

이와 같이 클래스 번호(CL[1:0])와 역양자화 번호(IQNO[3:0])와 영역 번호(AREA[1:0])가 입력되면 상기 역양자화 스텝 결정부(150)에서는 도 1 에 도시한 바와 같이 dur양자화 스텝을 결정한다.In this way, when the class number CL [1: 0], the inverse quantization number IQNO [3: 0], and the area number AREA [1: 0] are input, the inverse quantization step determination unit 150 shows FIG. The dur quantization step is determined as shown.

한편, 상기 AC 데이타는 런 데이타와 앰프 데이타로 이루어지는 런-앰프값으로 일련의 유효 상수의 비트스트림화 하게 되는데, 이는 런값만큼 '0'을 출력한 다음에 앰프값을 출력하므로써 역양자화되게 된다.On the other hand, the AC data is a bitstream of a series of valid constants as run-amplifier values consisting of run data and amplifier data.

따라서 첫번째 AC 데이타가 입력되면 상기 런 발생부(120)의 런 카운터(121)는 상기 AC 데이타의 런 데이타(ICOEF[8:0])를 입력으로 리세트된후 상기 상태 제어부(100)로 부터 출력되는 클럭에 따라 카운트하면서 '0'을 출력한다. 즉, 상기 런 카운터(121)에서는 상기 런 데이타에 의해 리세트되어 입력되는 클럭에 따라 '1'씩 감소시키면서 상기 클럭에 따라 '0'을 출력한다. 다시말해서 상기 런 데이타의 값에 해당하는 갯수의 '0'을 출력하고 상기 역양자화기(160)에서는 '0'의 dur양자화 스텝에 따라 상기 런 카운터(121)로 부터 출력되는 '0'을 역양자화시켜 출력한다. 즉 상기 런 카운터(121)로 부터 출력되는 '0'은 상기 역양자화되지 않은 상태에서 그대로 DCT 데이타로 출력되게 된다.Therefore, when the first AC data is input, the run counter 121 of the run generator 120 resets the run data (ICOEF [8: 0]) of the AC data from the state control unit 100. Counts according to the output clock and outputs '0'. That is, the run counter 121 outputs '0' according to the clock while decreasing by '1' according to the clock that is reset by the run data. In other words, the number of '0' corresponding to the value of the run data is output, and the inverse quantizer 160 reverses '0' output from the run counter 121 according to the dur quantization step of '0'. Quantize and output That is, '0' output from the run counter 121 is outputted as DCT data without being dequantized.

이때, 상기 런 데이타에 해당하는 '0'을 모두 출력하여 상기 런 카운터(121)의 카운팅값이 '0'이 되면 상기 펄스 발생기(122)에서 펄스를 발생하여 런 데이타의 출력이 완료되고 앰프 데이타를 dur양자화시킬 시점임을 알려준다.At this time, when all the '0' corresponding to the run data is output and the counting value of the run counter 121 becomes '0', the pulse generator 122 generates a pulse to complete the output of the run data and the amplifier data. Indicates that it is time to quantize dur.

이와 같이 상기 펄스 발생기(122)에서 펄스가 발생되면 상기 역양자화 스텝 결정부(150)에서 역양자화 스텝(IQSTEP[2:0])을 상기 역양자화기(160)로 출력하게 된다.When the pulse is generated in the pulse generator 122 as described above, the inverse quantization step determiner 150 outputs the inverse quantization step IQSTEP [2: 0] to the inverse quantizer 160.

또한, 상기 런 데이타가 입력된후 앰프 데이타(ICOEF[8:0])가 입력되면 상기 앰프 레지스터(130)에서는 상기 상태 제어부(100)의 제어에 따라 이를 저장하고, 상기 펄스 발생기(122)에서 펄스가 발생되어 상기 앰프 레지스터(130)로 입력되면 상기 앰프 레지스터(130)에서는 저장된 앰프 데이타(AMP[8:0])를 상기 역양자화기(160)로 출력한다.In addition, if the amplifier data (ICOEF [8: 0]) is input after the run data is input, the amplifier register 130 stores it under the control of the state controller 100, and in the pulse generator 122 When a pulse is generated and input to the amplifier register 130, the amplifier register 130 outputs the stored amplifier data AMP [8: 0] to the dequantizer 160.

상기 역양자화기(160)에서는 상기 역양자화 스텝 결정부(150)로 부터 출력되는 역양자화 스텝에 따라 상기 앰프 데이타를 역양자화도록 한다. 즉 상기 입력되는 9비트의 앰프 데이타는 상기 역양자화 스텝만큼 역양자화기에서 쉬프트 레프트되므로써 양자화가 이루어져 9비트의 역양자화 데이타, 즉 DCT 데이타로 출력된다.The inverse quantizer 160 dequantizes the amplifier data according to the inverse quantization step output from the inverse quantization step determiner 150. That is, the input 9-bit amplifier data is quantized by shift left in the inverse quantizer by the inverse quantization step, and is output as 9-bit dequantization data, that is, DCT data.

이와 같은 과정을 순차적으로 설명하면 다음과 같다.When the process is described sequentially as follows.

먼저 DC 데이타가 입력되면 상기 DC 레지스터(140)에서 역양자화 번호와 클래스 번호를 저장하고, 다음으로 AC 데이타가 입력되면 상기 영역 번호 출력부(110)에서는 영역 번호를 출력하고, 역양자화 스텝 결정부(150)에서 역양자화 번호를 결정하게 된다.First, when DC data is input, the inverse quantization number and class number are stored in the DC register 140. Next, when AC data is input, the area number output unit 110 outputs an area number, and inverse quantization step determination unit. In 150, the dequantization number is determined.

상기 AC 데이타 중 런 데이타가 입력되면 상기 런 발생부(121)의 런 카운터(121)에서는 상기 런 데이타 만큼 '0'을 상기 역양자화기(160)로 출력하여 '0'으로 역양자화되도록 한다. 이때, 다시 AC 데이타 중 앰프 데이타가 입력되면 상기 앰프 레지스터(130)에서 이를 저장한다.When run data of the AC data is input, the run counter 121 of the run generator 121 outputs '0' to the dequantizer 160 as much as the run data so as to dequantize it to '0'. At this time, when the amplifier data of the AC data is input again, the amplifier register 130 stores it.

상기 런 카운터(121)에서 런 데이타값만큼 '0'의 갯수가 출력되면 상기 펄스 발생기(122)에서 펄스를 발생하게 된다.When the number of '0's is output from the run counter 121 as much as the run data value, the pulse generator 122 generates a pulse.

상기 펄스가 발생되면 상기 역양자화 스텝 결정부(150)에서 역양자화 번호를 상기 역양자화기(160)로 출력하게 되고 상기 앰프 레지스터(130)에서 앰프 데이타를 출력하여 역양자화가 이루어지도록 한다.When the pulse is generated, the inverse quantization step determination unit 150 outputs the inverse quantization number to the inverse quantizer 160 and outputs the amplifier data from the amplifier register 130 to perform inverse quantization.

다음으로 하나의 DCT 블럭을 형성하는 64개의 VLD 데이타 중에서 세번째 VLD 데이타인 AC 데이타가 입력되면 상기 상태 제어부(100)에서는 상기 카운터(111)로 VLD 데이타 클럭을 출력시킨다. 이때, 상기 카운터(111)는 상기 VLD 데이타 클럭이 입력되면 '1' 증가시켜 카운팅하게 된다.Next, when AC data, which is the third VLD data, is input among the 64 VLD data forming one DCT block, the state controller 100 outputs a VLD data clock to the counter 111. In this case, when the VLD data clock is input, the counter 111 increases by '1' to count.

상기 카운터(111)의 카운팅값이 '1' 증가하여 '3'이 되면 상기 영역 발생기(112)에서는 상기 카운터(111)로 부터 출력되는 카운팅값 '3'을 입력으로 도 3 에 도시한 바와 같이 해당하는 영역 번호을 출력하게 된다.When the counting value of the counter 111 increases to '1' and becomes '3', the area generator 112 receives the counting value '3' output from the counter 111 as shown in FIG. 3. The corresponding area number will be output.

이와 같이 영역 번호가 발생되면 위의 과정을 반복하여 세번째 VLD 데이타를 역양자화하여 DCT 데이타로 출력한다.When the area number is generated in this way, the above process is repeated to dequantize the third VLD data and output the DCT data.

이와 같은 방법으로 계속해서 나머지 64번째 VLD 데이타를 역양자화하면 하나의 DCT 블럭이 양자화되게 된다. 이와 같이 하나의 DCT 블럭이 역양자화되면 상기 카운터(111)는 '0'으로 리세트되게 된다. 그리고 나서 다시 다음의 DCT 블럭의 첫번째 VLD 데이타가 입력되면 위와 같은 방법을 반복하게 된다.By continuing to dequantize the remaining 64th VLD data in this manner, one DCT block is quantized. As such, when one DCT block is dequantized, the counter 111 is reset to '0'. Then, when the first VLD data of the next DCT block is input, the above method is repeated.

이상에서 설명한 바와 같이 본 발명에 의한 DVC의 역양자화 장치는 DVC 스펙에 맞도록 역양자화 기능을 최적화하고 회로를 간단하게 구현할 수 있다.As described above, the inverse quantization apparatus of the DVC according to the present invention can optimize the inverse quantization function to conform to the DVC specification and simply implement the circuit.

Claims (9)

역양자화를 수행하기 위해 전체적인 타이밍을 조절하는 상태 제어 수단;State control means for adjusting the overall timing to perform dequantization; 상기 상태 제어 수단의 제어에 따라 VLD 데이타가 입력될때마다 DCT 블럭 단위로 카운트하여 해당하는 영역 번호를 출력하는 영역 번호 출력 수단;Area number output means for counting in units of DCT blocks and outputting a corresponding area number each time VLD data is input under the control of the state control means; 상기 상태 제어 수단의 제어에 따라 입력되는 클래스 번호와 역양자화 번호를 저장하는 DC 레지스터;A DC register for storing a class number and an inverse quantization number input under control of the state control means; 상기 상태 제어 수단의 제어에 따라 입력되는 앰프 데이타를 저장하는 앰프 레지스터;An amplifier register for storing amplifier data input under the control of the state control means; 상기 상태 제어 수단의 제어에 따라 입력되는 런 데이타에 따라 '0'을 발생하는 런 발생 수단;Run generation means for generating a '0' in accordance with the run data input under the control of the state control means; 상기 상태 제어부의 제어에 따라 상기 영역 번호 출력 수단으로 부터 출력되는 영역 번호와 상기 DC 레지스터로 부터 출력되는 클래스 번호와 역양자화 번호를 입력으로 역양자화 스텝을 결정하고 상기 런 발생 수단의 제어에 따라 출력하는 역양자화 스텝 결정 수단; 및Under the control of the state control unit, a dequantization step is determined by inputting an area number output from the area number output means, a class number and an inverse quantization number output from the DC register, and output according to the control of the run generation means. Inverse quantization step determination means; And 상기 런 발생 수단의 제어에 따라 상기 역양자화 스텝 결정 수단으로 부터 출력되는 역양자화 스텝에 따라 상기 앰프 레지스터로 부터 출력되는 앰프 데이타를 역양자화하는 역양자화 수단로 구성됨을 특징으로 하는 DVC의 역양자화 장치.An inverse quantization unit configured to inversely quantize the amplifier data output from the amplifier register according to the inverse quantization step outputted from the inverse quantization step determination unit under the control of the run generation means. . 제 1 항에 있어서, 상기 역양자화 수단은The method of claim 1, wherein the dequantization means 상기 런 발생 수단의 제어에 따라 상기 역양자화 스텝 결정 수단으로 부터 출력되는 역양자화 스텝에 따라 상기 앰프 레지스터로 부터 출력되는 앰프 데이타를 쉬프트시키는 쉬프터로 구성됨을 특징으로 하는 DVC의 역양자화 장치.And a shifter for shifting the amplifier data output from the amplifier register according to the inverse quantization step output from the inverse quantization step determination means under the control of the run generation means. 제 1 항에 있어서, 상기 DCT 블럭은The method of claim 1, wherein the DCT block is 64개의 VLD 데이타로 이루어짐을 특징으로 하는 DVC의 역양자화 장치.Dequantization apparatus of DVC, characterized by 64 VLD data. 제 3 항에 있어서, 상기 DCT 블럭은The method of claim 3, wherein the DCT block is 16비트로 이루어진 1개의 DC 데이타와 63개의 AC 데이타로 이루어짐을 특징으로 하는 DVC의 역양자화 장치.Inverse quantization device of DVC characterized by consisting of one DC data of 16 bits and 63 AC data. 제 4 항에 있어서, 상기 DC 데이타는 2비트의 클래스 번호와 4비트의 역양자화 번호를 포함함을 특징으로 하는 DVC의 역양자화 장치.5. The apparatus of claim 4, wherein the DC data includes a 2-bit class number and a 4-bit dequantization number. 제 4 항에 있어서, 상기 AC 데이타는The method of claim 4, wherein the AC data is 9비트의 앰프 데이타와 6비트의 런 데이타를 포함함을 특징으로 하는 DVC의 역양자화 장치.DVC dequantizer, characterized in that it contains 9 bits of amplifier data and 6 bits of run data. 제 1 항에 있어서, 상기 영역 번호 출력 수단은The method of claim 1, wherein the area number output means 상기 상태 제어 수단의 제어에 따라 VLD 데이타가 입력될때마다 카운트하고 하나의 DCT 블럭이 입력될때마다 리세트되는 카운터; 및A counter that counts each time VLD data is input and resets each time one DCT block is input according to the control of the state control means; And 상기 카운터(111)로 부터 출력되는 카운트값에 따라 해당하는 영역 번호를 발생하여 상기 양자화 스텝 결정 수단으로 출력하는 영역 번호 발생기로 구성됨을 특징으로 하는 DVC의 역양자화 장치.And an area number generator for generating a corresponding area number according to the count value output from the counter 111 and outputting the area number to the quantization step determination means. 제 7 항에 있어서, 상기 카운터는The method of claim 7, wherein the counter 6비트 카운터로 구성됨을 특징으로 하는 DVC의 역양자화 장치.Dequantizer of DVC, characterized in that consisting of a 6-bit counter. 제 1 항에 있어서, 상기 런 발생수단은The method of claim 1, wherein the run generating means 상기 상태 제어 수단의 제어에 따라 입력되는 런 데이타 만큼 카운트하면서 '0'을 발생하는 런 카운터; 및A run counter that generates '0' while counting the run data input according to the control of the state control means; And 상기 런 카운터의 카운팅값이 '0'이 되면 펄스를 발생하여 런 데이타의 출력이 완료되었음을 알리는 펄스 발생기로 구성됨을 특징으로 하는 DVC의 역양자화 장치.And a pulse generator for generating a pulse when the count value of the run counter reaches '0' to indicate that output of the run data is completed.
KR1019970029965A 1997-06-30 1997-06-30 Inverse quantizer for digital video camera KR100261032B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970029965A KR100261032B1 (en) 1997-06-30 1997-06-30 Inverse quantizer for digital video camera

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970029965A KR100261032B1 (en) 1997-06-30 1997-06-30 Inverse quantizer for digital video camera

Publications (2)

Publication Number Publication Date
KR19990005747A KR19990005747A (en) 1999-01-25
KR100261032B1 true KR100261032B1 (en) 2000-07-01

Family

ID=19512845

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970029965A KR100261032B1 (en) 1997-06-30 1997-06-30 Inverse quantizer for digital video camera

Country Status (1)

Country Link
KR (1) KR100261032B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970057948A (en) * 1995-12-28 1997-07-31 이우복 Quantization Step Value Generator

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970057948A (en) * 1995-12-28 1997-07-31 이우복 Quantization Step Value Generator

Also Published As

Publication number Publication date
KR19990005747A (en) 1999-01-25

Similar Documents

Publication Publication Date Title
US11039142B2 (en) Encoding and decoding of significant coefficients in dependence upon a parameter of the significant coefficients
RU2414093C2 (en) Method and apparatus, and video coding/decoding programme
JP3688730B2 (en) Quantizer
KR100209877B1 (en) Variable length coding encoder and decoder using multiple huffman table
KR930018878A (en) Digital image signal transmission device and frame method
US7953285B2 (en) Method and circuit of high performance variable length coding and decoding for image compression
CN1160968A (en) Quantization circuitry as for video signal compression systems
JPH10243399A (en) Code amount controller and moving image encoder provided with the same
KR20000023174A (en) Encoding apparatus and method
KR20030009669A (en) multi channel image encoding apparatus and encording method thereof
KR100261032B1 (en) Inverse quantizer for digital video camera
JPH06189139A (en) Image encoding system
JPH1066079A (en) Adaptive quantization control device
US6859562B2 (en) Coded data length detection apparatus, method of the same, and image coding apparatus
JPH1066077A (en) Code amount control method for image data and its device
JPH06121171A (en) Picture encoder
KR19990005746A (en) DVC quantization device
KR100351045B1 (en) Apparatus for decoding ac factor of inverse quantizer in motion picture decoding system
KR0165405B1 (en) Bit control device of variable length code using nerve circuit
US20070036445A1 (en) Method and apparatus of efficient lossless data stream coding
KR0152015B1 (en) Variable length encode/decode method and apparatus
JP2000287208A (en) Data encoder and its method
JP4142927B2 (en) Image compression method and image compression apparatus
KR0176505B1 (en) Method and apparatus for encoding the image with a fixed amount of encoding
KR100225348B1 (en) A quantizing coefficient count apparatus for decision of quantizing number

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
LAPS Lapse due to unpaid annual fee