KR0138861B1 - Jpeg standard quantizer inverse quantizer architecture - Google Patents
Jpeg standard quantizer inverse quantizer architectureInfo
- Publication number
- KR0138861B1 KR0138861B1 KR1019940034152A KR19940034152A KR0138861B1 KR 0138861 B1 KR0138861 B1 KR 0138861B1 KR 1019940034152 A KR1019940034152 A KR 1019940034152A KR 19940034152 A KR19940034152 A KR 19940034152A KR 0138861 B1 KR0138861 B1 KR 0138861B1
- Authority
- KR
- South Korea
- Prior art keywords
- quantization
- quantizer
- inverse
- rounding
- bit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 양자화값의 역수를 미리 계산하여 별도의 롬에 저장하여 제산 동작을 승산동작으로 변환사용하므로서 별도의 제산기없이 승산회로 하나만으로 양자화 및 역 양자화가 가능하도록 즉,The present invention calculates the inverse of the quantization value in advance and stores it in a separate ROM to convert the division operation into a multiplication operation so that the quantization and inverse quantization can be performed using only one multiplication circuit without a separate divider.
FQ(u,v) = 정수라운드[F(u,v) ×1/q(u,v)]……(식 3)F Q (u, v) = integer round [F (u, v) × 1 / q (u, v) ]... … (Equation 3)
과 같이 표현되는 영상 압축/복원용 양자화기의 양자화/역양자화 회로를 제공함에 있다.An object of the present invention is to provide a quantization / dequantization circuit of an image compression / restore quantizer.
특징적인 구성으로는 영상 데이터와 함께 입력되는 블럭 데이터의 시작 신호에 의해서 래스터(RASTER) 주사순의 램 엑세스(기록/판독) 제어를 위한 주소를 발생하는 주소 생성기와 상기 주소 생성기의 6비트 출력에 양자화 메모리뱅크의 선택을 위한 선택신호가 상위 비트로 가산되어 만들어진 64×8 비트의 양자화 데이블 4개를 포함하는 양자화 테이블 램과 상기 양자화 테이블 램의 양자화 계수에 대한 역수값(1~1/225)을 저장하는 롬으로 된 메모리 회로부와, 비트열 형태로 입력되는 피승수와 승수를 이용하여 부스 부호화계수를 출력하는 부스 부호화수단과 상기 부스부호화 계수에 대한 올림수를 저장하기 위한 올림수 저장용 가산수단과 양자화기의 모드가 양자화 일 경우 양자화값의 역수에 곱해진 기준화계수를 다시 나누어 결과를 출력해 주는 병렬 덧셈기/배럴 쉬프터수단으로 된 승산기 회로부로 구성함에 있다A characteristic configuration includes an address generator for generating an address for RAM access (write / read) control in raster scanning order by a start signal of block data input together with image data and a 6-bit output of the address generator. A quantization table RAM including four 64 × 8 bit quantization tables created by adding a selection signal for selecting a quantization memory bank to upper bits and an inverse value (1 to 1/2225) of the quantization coefficients of the quantization table RAM A memory circuit section of a ROM, a booth encoding means for outputting a booth coding coefficient using a multiplicand and a multiplier input in the form of a bit string, and a rounding number storage addition means for storing a rounding number for the booth coding coefficient; If the mode of the quantizer is quantization, the result of dividing the standardization coefficient multiplied by the inverse of the quantization value is output in parallel. Consisting of a multiplier circuit part of the adder / barrel shifter means
Description
제1도는 본 발명에 의한 양자화/역양자화 회로의 내부 구조 블럭도.1 is an internal structural block diagram of a quantization / dequantization circuit according to the present invention.
제2도는 제1도의 메모리 부의 상세한 구성을 나타낸 블럭도.2 is a block diagram showing a detailed configuration of the memory section of FIG.
제3도는 제1도의 승산기 부의 상세한 구성을 나타낸 블럭도.3 is a block diagram showing a detailed configuration of the multiplier section of FIG.
*도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
U10:메모리 회로부U20:승산기 회로부U10: memory circuit section U20: multiplier circuit section
101:주소 생성기102:램(RAM)101: address generator 102: RAM
103:롬(ROM)201:부스 부호화 수단103: ROM 201: Booth encoding means
202:올림수 저장용 가산수단202: addition means for storing the rounding water
203:병렬 덧셈기/베럴쉬프터수단203: Parallel adder / barrel shifter means
301~304:디플립플롭401:비트열301 to 304: flip-flop 401: bit string
402:부스 부호화기402: booth encoder
403:올림수 저장용 가산기(CSA)트리403: CSA tree for storing rounding numbers
404,405:예견 올림수 가산기406,410,411:멀티플렉서404,405: Predicted adder 406, 410, 411: Multiplexer
407:병렬 덧셈기408:베럴쉬프터407: parallel adder 408: barrel shifter
409:오버플로 검출기409: overflow detector
본 발명은 베이스라인 JPEG(국제영상표준기구)압축 복원 알고리즘의 VLSI(Very Large Scale Inttegration) 구현을 위한 양자화회로에 관한 것으로서 보다 상세하게는 부스 승산기(BOOTH MULTIPLIER)를 이용하여 국제 영상 압축/복원 표준기구(ISO의 JPEG : JOIN PHOTOGRAPHIC EXPERTS GROUP)에서 요구하는 양자화/역양자화(QUANTIZATION/INVERSE QUANTIZATION)를 수행할 수 있는 영상 압축/복원용 양자화기의 양자화/역양자화 회로에 관한 것이다.The present invention relates to a quantization circuit for implementing a VLSI (Very Large Scale Inttegration) implementation of a baseline JPEG (Decompression and Decompression) algorithm, and more particularly, to an international image compression / restore standard using a booth multiplier. The present invention relates to a quantization / dequantization circuit of an image compression / restore quantizer capable of performing quantization / inverse quantization (QUANTIZATION / INVERSE QUANTIZATION) required by an instrument (JPEG: JOIN PHOTOGRAPHIC EXPERTS GROUP).
일반적인 양자화회로에서의 양자화 과정은 아래와 같은 (수식 1)으로 나타낼 수 있다.The quantization process in a general quantization circuit can be represented by Equation 1 below.
상기 (식 1)에서 양자화 과정은 DCT 계수 F(u,v)를 양자화 테이블에 의한 양자화 간격 Q(u,v)로 나누어 가까운 정수값으로 반올림하는 것이며, 역양 자화는 이와 반대로 양자화된 값 Fq(u,v)에 양자화 간격 Q(u,v)를 곱하는 것과 같으며 (식 2)와 같다.Intended to quantization in the (formula 1) is rounded to the nearest integer value by dividing the DCT coefficient F (u, v) the quantization interval Q (u, v) by a quantization table, yeokyang magnetization is quantized on the other hand the value F q It is equivalent to multiplying (u, v) by the quantization interval Q (u, v) and is equal to (Equation 2).
Fq(u,v) = Fq(u,v) × Q(u,v) …… (식 2)F q (u, v) = F q (u, v) x Q (u, v)... … (Equation 2)
그러나 상기와 같은 종래의 양자화기능은 양자화를 위한 제산기와 역 양자화를 위한 승산기가 별도로 구비되어야 하므로 그 구성이 복잡하고 승제산의 결과값이 매 클럭마다 나와야 한다는 제약이 있어 하나의 승산기회로에 승제산기능을 동시에 구현시킬 수가 없었다.However, since the conventional quantization function has a separate multiplier for quantization and a multiplier for inverse quantization, the configuration is complicated and the result of the multiplication is limited to every clock. The acid function could not be implemented at the same time.
본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로서 본 발명의 목적은 양자화값의 역수를 미리 계산하여 별도의 롬에 저장하여 제산동작을 승산동작으로 변환사용하므로서 별도의 제산기없이 승산회로 하나만으로 양자화 및 역양자화가 가능하도록 즉,The present invention has been made to solve the above problems, and the object of the present invention is to calculate the inverse of the quantization value in advance and store it in a separate ROM to convert the division operation into a multiplication operation. Quantization and inverse quantization
Fq(u,v) = 정수라운드[F(u,v) × 1/Q(u,v)] …… (식 3)F q (u, v) = integer round [F (u, v) x 1 / Q (u, v)]... … (Equation 3)
과 같이 표현되는 영상 압축/복원용 양자화기의 양자화/역양자화 회로를 제공함에 있다.An object of the present invention is to provide a quantization / dequantization circuit of an image compression / restore quantizer.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 영상 압축/복원용 양자화기의 양자화/역양자화 회로의 특장은 영상 데이터와 함께 입력되는 블럭 데이터의 시작 신호에 의해서 래스터(RASTER)주사순의 램 엑세스(기록/판독) 제어를 위한 주소를 발생하는 주소 생성기와 상기 주소 생성기의 6비트 출력에 양자화 메모리뱅크의 선택을 위한 선택신호가 상위 비트로 가산되어 만들어진 64×8 비트의 양자화 테이블 4개를 포함하는 양자화 테이블 램과 상기 양자화 테이블 램의 양자화 계수에 대한역수값(1-1/225)을 저장하는 롬으로 된 메모리 회로부와, 비트열 형태로 입력되는 파승수와 승수를 이용하여 부스 부호화계수를 출력하는 부스 부호화수단과 상기 부스부호화 계수에 대한 올림수를 저장하기 위한 올림수 저장용 가산수단과 양자화기의 모드가 양자화일 경우 양자화값의 역수에 곱해진 기준화 계수를 다시 나누어 결과를 출력해 주는 병렬 덧셈기/배럴 쉬프터 수단으로 된 승산기 회로부로 구성함에 있다.A special feature of the quantization / dequantization circuit of the image compression / restore quantizer according to the present invention for achieving the above object is RAM access in raster scanning order by the start signal of block data input together with image data. An address generator for generating an address for (write / read) control and four 64 × 8 bit quantization tables generated by adding a selection signal for selecting a quantization memory bank to the 6-bit output of the address generator as an upper bit. A booth coding coefficient is output using a memory circuit unit in ROM that stores quantization table RAMs and inverse values (1-1 / 225) of the quantization coefficients of the quantization table RAMs, and power and multipliers input in the form of bit strings. Both the booth encoding means, the rounding number storage addition means for storing the rounding number for the booth coding coefficient, and the modes of the quantizer If it as composed of a multiplier circuit in a parallel adder / barrel shifter means that dividing the standardized coefficients multiplied by the inverse of the quantization values back to the result.
이하 본 발명에 따른 영상 압축/복원용 양자화회로의 바람직한 하나의 실시예에 대하여 첨부도면을 참고하여 상세히 설명한다.Hereinafter, a preferred embodiment of an image compression / restore quantization circuit according to the present invention will be described in detail with reference to the accompanying drawings.
제1도는 본 발명에 따른 영상 압축/복원용 양자화회로의 구조를 나타낸 것으로, 도면에 도시된 바와 같이 메모리 회로부(U10)는 영상 데이터와 함께 입력되는 블럭 데이터의 시작 신호에 의해서 래스터(RASTER) 주사순의 램 엑세스(기록/판독) 제어를 위한 주소를 발생하는 주소 생성기(101)와, 상기 주소 생성기의 6비트 출력에 양자화 메모리뱅크의 선택을 위한 선택신호가 상위 비트로 가산되어 만들어진 진 64×8 비트의 양자화 테이블 4개를 포함하는 양자화 테이블 램(102)과, 상기 양자화 테이블 램의 양자화 계수에 대한 역수값(1-1/225)을 저장하는 롬(103)으로 구성함이 바람직하고, 승산기 회로부(U20)는 비트열형태로 입력되는 피승수와 승수를 이용하여 부스 부호화 계수를 출력하는 부스 부호화수단(BOOTH RECODER)(201)과, 상기 부스부화화 계수에 대한 올림수를 저장하기 위한 올림수 저장용 가산수단(CARRY SAVE ADDER)(202)과, 양자화기의 모드가 양자화일 경우 양자화값의 역수에 곱해진 기준화계수를 다시 나누어 결과를 출력해 주는 병렬 덧셈기/배럴 쉬프터수단(203)으로 구성한다.1 illustrates a structure of an image compression / restore quantization circuit according to the present invention. As shown in the drawing, the memory circuit unit U10 scans a raster by a start signal of block data input together with image data. An address generator 101 for generating an address for sequential RAM access (write / read) control, and a 64x8 binary code obtained by adding a selection signal for selecting a quantization memory bank to the 6-bit output of the address generator as an upper bit. A quantization table RAM 102 including four bit quantization tables, and a ROM 103 which stores the inverse values (1-1 / 225) of the quantization coefficients of the quantization table RAM. The circuit unit U20 is a booth encoding means (BOOTH RECODER) 201 for outputting a booth coding coefficient using a multiplier and a multiplier input in the form of a bit string, and a rounding number for the booth coding coefficient. A parallel adder / barrel shifter for outputting the result by dividing the CARRY SAVE ADDER 202 for storing and the reference coefficient multiplied by the inverse of the quantization value when the mode of the quantizer is quantization. Means 203.
제2도는 상기 제1도의 메모리 회로부(U10)의 상세회로도로서 도면에 도시된 바와 같이 JPEG 알고리즘에서 양자화기에서 DCT 또는 지그 재그 블럭으로 부터 입력되는 데이터와 함께 제어 신호인 블럭 데이터 시작 신호(BS:BLOCK START)가 입력되면 0부터 한 클럭마다 1씩 증가하여 63까지 총 6비트의 주소를 출력하는 주소 생성기(101)와, 상기 주소 생성기의 6비트 출력신호에 양자화테이블 선택신호(QBANK)인 2비트 데이터를 상위비트로 합성하여 256×8 비트의 데이터를 저장하는 양자화 테이블 램(102)과, 양자화 모드에서 사용될 상기 양자화 테이블 램의 양자화 계수 Q(u,v)의 역수값 1/Q(u,v)을 저장하기 위한 롬(103)과, 상기 양자화 계수 Q(u,v)의 동기를 맞추기 위한 다수의 디플립플롭(301)(302)(303)(304)과, 상기 롬의 임의의 2비트 출력을 부정논리합으로 연산하기 위한 NOR게이트(305)로 구성함이 바람직하다.FIG. 2 is a detailed circuit diagram of the memory circuit unit U10 of FIG. 1 as a block data start signal BS, which is a control signal together with data input from a DCT or a zigzag block in a quantizer in the JPEG algorithm as shown in the drawing. When the BLOCK START is input, the address generator 101 outputs a total of 6 bits from 0 to 1 in increments of 1 per clock, and 2, which is a quantization table selection signal (QBANK), to the 6-bit output signal of the address generator. A quantization table RAM 102 for storing 256x8 bits of data by combining bit data into higher bits, and an inverse value of 1 / Q (u, v) of the quantization coefficient Q (u, v) of the quantization table RAM to be used in the quantization mode. v) a ROM 103 for storing, a plurality of deflip-flops 301, 302, 303, 304 for synchronizing the quantization coefficients Q (u, v), and any of the ROMs. NOR to compute 2-bit output as a negative logic sum This desirability is composed of tree 305. The
제3도는 상기 제1도의 승산기 회로부(U20)의 상세회로도로서 도면에 도시된 바와 같이 부스 부호화 수단(201)은 12비트의 비트열(401)형태로 입력되는 피승수(A)와 승수(B)를 이용하여 부스 부호화계수(Y1~Y11)를 출력하는 부스부화화기(402)로 구성함이 바람직하고, 올림수 저장용 가상수단(202)은 상기 부스부호화 계수수(Y1~Y11)에 대한 올림수를 저장하기 위한 올림수 저장용 가산기(403)와, 상기 올림수 저장용 가산기의 반올림수 혹은 버림수를 병렬덧셈기의 연산에 반영시키기 위한 예견 올림수 가산기(404),(405)와, 상기 올림수저장용 가산기의 출력을 합성하기 위한 다수의 멀티플렉서(410),(411)(406)로 구성함이 바람직하며, 병렬덧셈기/베럴쉬프터수단(203)은 상기 두 멀티플렉서(410),(411)의 출력을 올림수(Carry)와 합(Sum)으로 사용하고 나머지 하나의 멀티플렉서(406)의 출력을 올림수(c)로 사용하는 병렬덧셈기(407)와, 양자화기의 모드가 양자화일 경우 양자화값의 역수에 곱해진 임의의 기준화 계수(Scale)에 상기 병렬덧셈기의 출력에서 최하위 비트값을 버리고 난 값을 비교하는 베럴쉬프터(408)와, 상기 베럴 쉬프터의 오버플로를 검출하여 에러신호(ERROR)및 결과신호(RESULT)를 출력하는 오버플로 검출기(409)로 구성함이 바람직하다.3 is a detailed circuit diagram of the multiplier circuit unit U20 of FIG. 1, and as shown in the figure, the booth encoding means 201 is a multiplicand A and a multiplier B inputted in the form of a 12-bit bit string 401. It is preferable to constitute a booth encoder 402 for outputting the booth coding coefficients (Y1 ~ Y11) using, and the rounding number storage virtual means 202 is rounded up to the booth coding coefficients (Y1 ~ Y11) A rounding number storage adder 403 for storing a number, a rounded-up number adder 404, 405 for reflecting the rounding or rounding number of the rounding number storage adder in the operation of the parallel adder; Preferably, the multiple adders 410, 411, and 406 for synthesizing the output of the adder for rounding number storage, and the parallel adder / barrel shifter means 203 are the multiplexers 410 and 411. ) As the sum of Carry and Sum, and the other multiplexer 406 The parallel adder 407 using the output of the rounding number c, and the least significant bit at the output of the parallel adder to an arbitrary reference coefficient (Scale) multiplied by the inverse of the quantization value when the mode of the quantizer is quantization. It is preferable to configure a barrel shifter 408 for comparing a value discarded and an overflow detector 409 for detecting an overflow of the barrel shifter and outputting an error signal ERROR and a result signal RESULT. .
이상에서와 같은 구성을 참고하여 본 발명에 따른 영상 압축 복원 양자화기의 양자화/역양자화 회로의 동작을 상세히 설명하면 다음과 같다.The operation of the quantization / dequantization circuit of the image compression decompression quantizer according to the present invention will be described in detail with reference to the configuration as described above.
우선 JPEG 알고리즘에서는 양자화기에서 DCT 또는 지그 재그 블럭으로 부터 입력되는 데이터와 함께 제어 신호인 블럭 데이터 시작 신호(BS:BLOCK START)가 주소 생성기(101)로 입력된다.First, in the JPEG algorithm, a block data start signal (BS: BLOCK START), which is a control signal, is input to the address generator 101 together with data input from a DCT or a zigzag block in the quantizer.
이 블럭 데이터 시작신호(BS)가 입력되면 6 비트 카운터로 설계된 주소 생성기(101)는 0부터 한 클럭마다 1씩 증가하여 63까지 출력한다.When the block data start signal BS is input, the address generator 101, which is designed as a 6-bit counter, increases from 0 to 1 per clock and outputs up to 63.
양자화 테이블 메모리 선택신호(QBANK) 즉, 2비트 신호는 상기 주소 생성기인 카운터에서 출력된 6비트의 상위 비트(MSB)에 추가가 되어, 전체 8비트가 양자화 테이블인 램(102)의 주소가 된다.The quantization table memory selection signal QBANK, that is, the 2-bit signal, is added to the 6-bit high order MSB output from the counter which is the address generator, so that all 8 bits are the address of the RAM 102 which is the quantization table. .
이렇게 얻어진 양자화 계수 Q(u,v)는 플립플롭(301)에 기억이된 후 양자화 모드에서 사용될 Q(u,v)의 역수값을 구하기 위한 롬(103)의 주소로 입력이 되고, 역양자화 모드에서 사용될 Q(u,v) 값은 롬과의 동기를 맞추기 위해 다음 플립플롭(302)에 기역이 된다.The quantization coefficient Q (u, v) thus obtained is stored in the flip-flop 301 and then inputted to the address of the ROM 103 for obtaining the inverse value of Q (u, v) to be used in the quantization mode. The Q (u, v) value to be used in the mode is traced back to the next flip-flop 302 to synchronize with the ROM.
롬에 기억된 값은 13 비트 정수값으로, 그 정수값 P(u,v)는 아래의 식 4와 같다.The value stored in the ROM is a 13-bit integer value whose integer value P (u, v) is given by Equation 4 below.
(식 5)는 본 발명에서 사용한 스케일 값과 사용 범위를 나타내고 있으며, (식 3)에 (식 4)를 적용하면 아래의 (식 6)과 같이 나타낼 수 있다.(Equation 5) shows the scale value and the range of use used in the present invention, it can be expressed as (Equation 6) below when (Equation 4) is applied to (Equation 3).
본 발명에서 (식 6)과 같이 1/Q(u,v)에 2B곱한 후 이를 다시 기준화계수 값으로 곱한 값을 롬에 저장하는 이유는, 기준화(scale)하는 과정 없이 1/Q(u,v)에 대해서 오차없는 승산 결과를 위해서는 13 비트 대신 20 비트가 필요하며, 20 비트 승수에 대한 승산회로를 구성하는데 따른 하드웨어의 증가와 회로 지연 속도등의 문제를 해결하기 위해서이다.In the present invention, as shown in Equation 6, 1 / Q (u, v) is multiplied by 2 B and then the result of multiplying it by the reference coefficient value is stored in the ROM, 1 / Q without scaling. For error-free multiplication results for (u, v), 20 bits are required instead of 13 bits, to solve problems such as hardware increase and circuit delay speed in constructing a multiplication circuit for a 20-bit multiplier.
그래서 (식 4)에 의해서 구해진 값은 13 비트의 유효 비트를 가진 데이터이며, 이 값들을 기억하기 위해서는 256×13 비트의 롬을 필요로 하게 된다.Thus, the value obtained by (4) is data having 13 bits of valid bits, and 256x13 bits of ROM are required to store these values.
그러나 본 발명에서는 기준화계수화 된 값 P(u,v)의 최상위 비트(MSB) 즉 P(12)는 P(11)과 P(10)이 '0'이면 항상 '1' 값을 갖는다는 성질을 이용하여 P(11)과 P(10)을 NOR 게이트(305)연산을 통해 P(12)를 구할 수 있으므로, 제2도와 같이 P(u,v)를 위한 롬의 데이터 폭을 1 비트 줄여 12 비트로 줄일 수 있다.However, in the present invention, the most significant bit (MSB), i.e., P (12), of the standardized coefficient P (u, v) always has a value of '1' when P (11) and P (10) are '0'. Since P (11) and P (10) can be obtained P (12) through the NOR gate 305 operation, the data width of the ROM for P (u, v) is reduced by 1 bit as shown in FIG. It can be reduced to 12 bits.
양자화 테이블(102)에서 얻은 양자화 계수 Q(u,v)는 역양자화 모드일 경우 승산기의 입력이 되기 위해 다음 플립플롭(303)에 기억되고, 롬(103)의 출력 P(11:0)는 P(11)과 P(10)의 NOR게이트(305) 연산으로 구해진 최상위 비트 P(12)와 함께 양자화 모드일 경우 승산기의 입력이 되기 위해 다음 플립플롭(304)에 기억된다.The quantization coefficients Q (u, v) obtained in the quantization table 102 are stored in the next flip-flop 303 to be the input of the multiplier in the inverse quantization mode, and the output P (11: 0) of the ROM 103 is In the quantization mode together with the most significant bit P 12 obtained by the NOR gate 305 operations of P 11 and P 10, it is stored in the next flip-flop 304 to become an input of a multiplier.
본 발명의 승산기 회로부는 부스부호기(402)와 올림수 저장용 가산기(CARRY SAVE ADDER) 트리(403), 병렬 덧셈기(407)로 이루어진 부스 방식 승산(BOOTH METHOD MULTIPLIER) 알고리즘을 사용하였다.The multiplier circuit part of the present invention uses a booth method multiplication (BOOTH METHOD MULTIPLIER) algorithm consisting of a booth encoder 402, a CARRY SAVE ADDER tree 403, and a parallel adder 407.
(참고로 부스 승산기의 자세한 내용은 H. DAM and A. GUPTA, A General Multibit Recoding of Two's complement Binary numbers abd its proof with application in Multiplier Implementation, IEEE Transactions on Computers, vol. 39. No 8, pp 1006~1015, August 1990에 기술되어 있다)(Please refer to H. DAM and A. GUPTA, A General Multibit Recoding of Two's complement Binary numbers abd its proof with application in Multiplier Implementation, IEEE Transactions on Computers, vol. 39. No 8, pp 1006 ~ 1015, August 1990).
승산기 회로부의 피승수(A)와 승수(B)는 양자화기의 모드가 양자화일 경우 DCT 계수 F(u,v)와 q(7:0)이 입력되고, 역양자화일 경우는 양자화된 값 FQ(u,v)와 P(12:0)이 입력된다.The multiplicators A and multipliers B of the multiplier circuit part input DCT coefficients F (u, v) and q (7: 0) when the mode of the quantizer is quantization, and in case of inverse quantization, the quantized value FQ ( u, v) and P (12: 0) are input.
피승수(A)는 11 비트 데이터이며, 승수(B)는 13 비트 데이터로서 아래 (식 7)과 같다.The multiplicand A is 11 bits of data, and the multiplier B is 13 bits of data as shown in Equation 7 below.
승산기 회로부에 입력된 피승수(A)는 부스 알고리즘에 따라 제3도의 비트열(401) 형태로 6개의 3비트 부스 부호화기(402)에 각각 나누어져 입력되며 하나의 3 비트 부스 부호화기(Y1~Y11)는 피승수(A)의 3 개의 비트와 승수(B)를 입력으로 하여 부스 부호화 계수(Y)를 출력하며, Y는 B 또는 2B, -B, 2B, 0 중에 하나의 값을 갖고 상기 6 개의 부스부호화계수(Y)는 4 개의 올림수 저정용 가산기로 구성된 CSA 트리(403)에 입력된다.The multiplier A input to the multiplier circuit part is divided into six three-bit booth encoders 402 in the form of a bit string 401 of FIG. 3 according to the booth algorithm, and one three-bit booth encoders Y1 to Y11. Outputs the booth coding coefficient Y by inputting the three bits of the multiplier A and the multiplier B, Y having one of B or 2B, -B, 2B, 0, and the six booths The coding coefficient Y is input to the CSA tree 403 composed of four rounding factor storage adders.
제3도에서와 같이 CSA 트리(403)의 출력은 22 개의 쌍이 출력되며, 이하 설명에서는 T(21:0)로 나타내었다.As shown in FIG. 3, 22 pairs of outputs of the CSA tree 403 are output, and are represented as T (21: 0) in the following description.
CSA 트리(403)의 출력 T는 병렬 덧셈기(407)의 입력으로 양자화기의 모드에 따라 그 형태가 결정되고, 병렬 덧셈기의 입력은 SUM(12:0), CARRY(12:0), C(CARRY)로 나타낸다.The output T of the CSA tree 403 is an input of the parallel adder 407 and its shape is determined according to the mode of the quantizer. The inputs of the parallel adder are SUM (12: 0), CARRY (12: 0), and C ( CARRY).
양자화기의 모드가 양자화일 경우 SUM과 CARRY는 T(21:9)의 해당 값을 가지며, 버림수의 반올림을 위해서 T(8:4)을 예견올림수 가산기(CARRY LOOKAHEAD ADDER)(404)에 입력하여 그 반올림수를 병렬 덧셈기(407)의 연산에 반영한다.If the mode of the quantizer is quantization, SUM and CARRY have the corresponding value of T (21: 9), and T (8: 4) is added to the CARRY LOOKAHEAD ADDER 404 for rounding off. The rounded number is reflected in the calculation of the parallel adder 407.
이때 합(SUM)과 올림수(CARRY)에 T의 하위 9 비트를 버리고 21:9의 비트값을 준 이유는 식 4에서 1/Q(u,v)에 2B으로 곱한 것을 다시 나누어주는 과정으로 이 과정은 결과 T를 212으로 나눈 것과 같으며, 나머지 2로 나누는 것은 병렬 덧셈기(407)의 결과 13 비트중 최하위 비트(LSB)를 버리고 나머지 12 비트를 배럴 쉬프터(408)의 입력으로 하는 과정에서 이루어진다.The reason for dropping the lower 9 bits of T and adding the bit value of 21: 9 to the sum and round number is the process of redistributing 1 / Q (u, v) multiplied by 2 B in Equation 4. This process is equivalent to dividing the result T by 2 12, and dividing by the remaining 2 discards the least significant bit (LSB) of the result 13 bits of the parallel adder 407 and uses the remaining 12 bits as inputs to the barrel shifter 408. It takes place in the process.
양자화기의 모드가 역양자화일 경우 SUM과 CARRY는 T(14:2)의 해당 값을 가지며, 버림수의 반올림을 위해서 T(1:0)을 예견올림수 가산기(405)에 입력하여 그 반올림수를 병렬 덧셈기 연산에 반영하고 이때 SUM과 CARRY에 T의 하위 2 비트를 버리고 14:2의 비트값을 준 이유는 식 7에서 q(7:0)를 승수 B에 입력할 때 5 비트 왼쪽으로 쉬프트 즉 25곱한 것을 다시 나누어주기 위해서이고, 이 과정은 24으로 나눈 것과 같으며 나머지 2로 나누는 것은 병렬 덧셈기(407)의 결과 13 비트중 LSB를 버리고 나머지 12 비트를 배럴 쉬프터(408)의 입력으로 하는 과정에서 이루어 진다.If the mode of the quantizer is inverse quantization, SUM and CARRY have a corresponding value of T (14: 2), and the result is rounded by inputting T (1: 0) into the predictor-adder 405 for rounding off. The reason for reflecting the number in the parallel adder operation and discarding the lower two bits of T in SUM and CARRY and giving the bit value of 14: 2 is 5 bit left when entering q (7: 0) into multiplier B in Equation 7. To redistribute the shift or multiplication by 2 5 , this process is equivalent to dividing by 2 4 and dividing by the remaining 2 discards the LSB of the 13 bits resulting from the parallel adder 407 and the remaining 12 bits of the barrel shifter 408. This is done in the process of input.
배럴 쉬프터(408)은 양자화기의 모드가 양자화일 경우 식 4에서 P(u,v)를 구할때 1/Q(u,v)에 곱해진 기준화계수를 다시 나누어지는 과정으로서, 기준화계수가 1, 4, 16, 64 이면 입력된 값은 각각 0, 2, 4, 6만큼 오른쪽으로 쉬프트 한다.The barrel shifter 408 is a process of dividing the reference coefficient multiplied by 1 / Q (u, v) when P (u, v) is obtained in Equation 4 when the mode of the quantizer is quantization. If 4, 16, 64, the input value is shifted to the right by 0, 2, 4, 6 respectively.
양자화기의 모드가 역양자화일 경우 배럴 쉬프터(408)은 입력값과 동일한 값을 출력하므로 승산기 회로부의 출력값은 마지막으로 오버플로 검출기(409)를 통해서 양자화기의 결과로 출력되며, 오버플로 검출기(409)는 승산기의 출력값이 양자화 모드일 경우는 -1023 ~ +1023, 역양자화 모드일 경우는 -1024 ~ +1023 범위내에 있는 지를 확인하며 만약 오버플로가 발생할 경우 에러 신호를 발생한다.When the mode of the quantizer is inverse quantization, the barrel shifter 408 outputs the same value as the input value, so the output value of the multiplier circuit part is finally output through the overflow detector 409 as a result of the quantizer. 409) checks whether the output value of the multiplier is within the range of -1023 to +1023 in the quantization mode and -1024 to +1023 in the inverse quantization mode. If an overflow occurs, an error signal is generated.
이상에서와 같이 본 발명에 따른 영상 압축 복원 양자화기의 양자화/역양자화 회로에 의하면 양자화값의 역수를 미리 계산하여 별도의 롬에 저장하여 제산동작을 승산동작으로 변환사용하도록 함으로써 별도의 제산기없이 승산회로 하나만으로 양자화 및 역 양자화가 가능하게 하는 유용함이 있다.As described above, according to the quantization / dequantization circuit of the image compression restoring quantizer according to the present invention, the inverse of the quantization value is calculated in advance and stored in a separate ROM so that the division operation is converted into a multiplication operation without a separate divider. It is useful to enable quantization and inverse quantization with only a multiplication circuit.
Claims (6)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1019940034152A KR0138861B1 (en) | 1994-12-14 | 1994-12-14 | Jpeg standard quantizer inverse quantizer architecture |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1019940034152A KR0138861B1 (en) | 1994-12-14 | 1994-12-14 | Jpeg standard quantizer inverse quantizer architecture |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR960024901A KR960024901A (en) | 1996-07-20 |
| KR0138861B1 true KR0138861B1 (en) | 1998-06-15 |
Family
ID=19401439
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1019940034152A Expired - Fee Related KR0138861B1 (en) | 1994-12-14 | 1994-12-14 | Jpeg standard quantizer inverse quantizer architecture |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR0138861B1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003317366A (en) | 2002-04-17 | 2003-11-07 | Hitachi Ltd | Control device and control method for information recording / reproducing device |
-
1994
- 1994-12-14 KR KR1019940034152A patent/KR0138861B1/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| KR960024901A (en) | 1996-07-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5623423A (en) | Apparatus and method for video decoding | |
| KR100839308B1 (en) | A method for decoding video or image information, | |
| JP2672302B2 (en) | Conversion circuit | |
| JP2914226B2 (en) | Transformation encoding of digital signal enabling reversible transformation | |
| JP2531955B2 (en) | One-dimensional cosine transform value calculation device, and image coding device and decoding device including the calculation device | |
| US5563813A (en) | Area/time-efficient motion estimation micro core | |
| US5870435A (en) | Quantization/inverse quantization unit selectably accommodating multiple video encoding standards and including differential pulse code modulator | |
| KR100246878B1 (en) | Inverse discrete cosine transform processor | |
| Chiu et al. | Real-Time Parallel and Fully-Pinelined Two-Dimensional DCT Lattice Structures with Application to HDTV Systems | |
| JPH0937271A (en) | Image compressing method | |
| KR100498457B1 (en) | The improved method of compressing look up table for reducing memory and non-linear function generating apparatus having look up table compressed using the method and the non-linear function generating method | |
| Sandri et al. | Integer alternative for the region-adaptive hierarchical transform | |
| Kim et al. | Fixed-point error analysis and word length optimization of 8/spl times/8 IDCT architectures | |
| US20050069035A1 (en) | Low-complexity 2-power transform for image/video compression | |
| JP3857308B2 (en) | Apparatus and method for performing inverse discrete cosine transform | |
| Lam et al. | A class of fast algorithms for the Peano-Hilbert space-filling curve | |
| KR0138861B1 (en) | Jpeg standard quantizer inverse quantizer architecture | |
| Chang et al. | An efficient computation of Euclidean distances using approximated look-up table | |
| US7543008B1 (en) | Apparatus and method for providing higher radix redundant digit lookup tables for recoding and compressing function values | |
| JP3102115B2 (en) | Discrete cosine transform processor | |
| Lienhart et al. | An FPGA-based video compressor for H. 263 compatible bit streams | |
| Walters III et al. | Using truncated multipliers in DCT and IDCT hardware accelerators | |
| JP3373132B2 (en) | Digital encoding device and digital decoding device | |
| Cardarilli et al. | RNS implementation of high performance filters for satellite demultiplexing | |
| Tilki et al. | Image data compression using multiple bases representation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 7 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 8 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 9 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 10 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 11 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 12 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| FPAY | Annual fee payment |
Payment date: 20100201 Year of fee payment: 13 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 13 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20110224 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20110224 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |