JP3385866B2 - Inverse quantization and inverse DCT circuit - Google Patents

Inverse quantization and inverse DCT circuit

Info

Publication number
JP3385866B2
JP3385866B2 JP22810596A JP22810596A JP3385866B2 JP 3385866 B2 JP3385866 B2 JP 3385866B2 JP 22810596 A JP22810596 A JP 22810596A JP 22810596 A JP22810596 A JP 22810596A JP 3385866 B2 JP3385866 B2 JP 3385866B2
Authority
JP
Japan
Prior art keywords
output
memory
input
selector
dct
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
Application number
JP22810596A
Other languages
Japanese (ja)
Other versions
JPH1070721A (en
Inventor
伊藤  隆
真木 豊蔵
良之 後井
弘雅 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP22810596A priority Critical patent/JP3385866B2/en
Publication of JPH1070721A publication Critical patent/JPH1070721A/en
Application granted granted Critical
Publication of JP3385866B2 publication Critical patent/JP3385866B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は画像データの符号化
または復号化で用いられるDCT(Discrete Cosine Tr
ansform)、量子化、逆量子化、逆DCTを行うための
画像処理装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a DCT (Discrete Cosine Tr) used for encoding or decoding image data.
ansform), quantization, inverse quantization, and inverse DCT.

【0002】[0002]

【従来の技術】近年、ディジタル画像を光ディスクなど
の記録媒体にそのデータを記録したり、光ファイバなど
のケーブルや通信衛星などを介してそのデータを伝送し
たりする際に、記録媒体の節約や、伝送レートの低減の
ために画像データの圧縮及び伸長が用いられる。画像デ
ータの圧縮手段でよく用いられるものにDCTと量子化
を組み合わせる方式があり、代表的なものに画像圧縮符
号化の国際標準であるMPEG1やMPEG2などがあ
る。この方式の復号化器の概略構成を図2に示し、以下
に簡単に動作を説明する。図2において圧縮画像符号化
データを可変長復号部201に入力して逆量子化レベル
値や動きベクトルを抽出する。次に逆量子化レベル値
は、逆量子化部202に入力され、動きベクトルは動き
補償部204に入力される。逆量子化部202で逆量子
化された係数を逆DCT部203により差分データを生
成し、動き補償部204では動きベクトルに対応する参
照データをフレームメモリ205から読み出す。最後に
加算器206により差分データと参照データを加算して
復号データとして出力する。また、復号データは参照デ
ータとなるため、フレームデータ205に書き込まれ
る。パラメータの変更や動き補償は、輝度成分16×1
6画素と2個の色差成分8×8画素からなるマクロブロ
ック単位で処理され、逆量子化や逆DCTは、8×8画
素からなるブロック単位で処理される。
2. Description of the Related Art In recent years, when a digital image is recorded on a recording medium such as an optical disk or the data is transmitted via a cable such as an optical fiber or a communication satellite, it is possible to save the recording medium. , Image data compression and decompression are used to reduce the transmission rate. A method that is often used as a means for compressing image data is a method that combines DCT and quantization, and representative methods include MPEG1 and MPEG2, which are international standards for image compression encoding. A schematic configuration of the decoder of this system is shown in FIG. 2, and its operation will be briefly described below. In FIG. 2, the compressed image coded data is input to the variable length decoding unit 201 to extract the dequantization level value and the motion vector. Next, the dequantization level value is input to the dequantization unit 202, and the motion vector is input to the motion compensation unit 204. The inverse DCT unit 203 generates difference data from the coefficient inversely quantized by the inverse quantization unit 202, and the motion compensation unit 204 reads out reference data corresponding to the motion vector from the frame memory 205. Finally, the adder 206 adds the difference data and the reference data and outputs the result as decoded data. Further, since the decoded data serves as reference data, it is written in the frame data 205. Luminance component 16 x 1
Processing is performed in macroblock units each including 6 pixels and two color difference components 8 × 8 pixels, and inverse quantization and inverse DCT are performed in block units each including 8 × 8 pixels.

【0003】以下に逆量子化・逆DCTの演算について
説明する。まず、MPEG2で用いられる逆量子化の演
算の一つの例について説明する。逆量子化の演算は、補
正演算を除いて(数1)で表すことができる。
The operation of inverse quantization / inverse DCT will be described below. First, an example of the inverse quantization operation used in MPEG2 will be described. The inverse quantization operation can be represented by (Equation 1) except for the correction operation.

【0004】[0004]

【数1】 [Equation 1]

【0005】ここで、fijkはDCT係数、Qijkは逆量
子化レベル値、Wijlは重み係数、qsは量子化スケー
ル値である。また、i,jは各ブロック内の8×8デー
タの位置(i=0〜7,j=0〜7)、kはブロック番
号(k=0〜5)、lは係数群番号(l=0〜1)であ
る。
Here, f ijk is a DCT coefficient, Q ijk is an inverse quantization level value, W ijl is a weighting coefficient, and qs is a quantization scale value. Further, i and j are positions of 8 × 8 data in each block (i = 0 to 7, j = 0 to 7), k is a block number (k = 0 to 5), and l is a coefficient group number (l = 0-1).

【0006】図3に一つのマクロブロックに対応する逆
量子化の演算の説明図を示す。逆量子化レベル値Qijk
は、符号化処理においてDCT係数を量子化した結果で
あり、マクロブロック中の6個のブロック毎に64個ず
つ入力される。重み係数Wij lは周波数成分依存の量子
化テーブルであり、マクロブロックのタイプによって2
種類の重み係数群が用意されている。量子化スケールq
sは、マクロブロック毎に与えられる一定値であり、符
号量の制御に用いられる。復号化処理では、マクロブロ
ック毎に可変長復号化されて逆量子化レベル値Q
ijkと、量子化スケールqsと、抽出されたマクロブロ
ックタイプによって重み係数Wiklが決定され、(数
1)の計算を行う。
FIG. 3 shows an explanatory diagram of an inverse quantization operation corresponding to one macroblock. Inverse quantization level value Q ijk
Is a result of quantizing the DCT coefficient in the encoding process, and 64 pieces are input for every 6 blocks in the macroblock. The weighting coefficient W ij l is a frequency component-dependent quantization table, and is 2 depending on the type of macroblock.
A kind of weighting coefficient group is prepared. Quantization scale q
s is a constant value given for each macroblock and is used for controlling the code amount. In the decoding process, variable length decoding is performed for each macroblock and the inverse quantization level value Q
The weighting coefficient W ikl is determined by ijk , the quantization scale qs, and the extracted macroblock type, and the calculation of ( Equation 1) is performed.

【0007】また(数1)の結果得られたDCT係数f
ijkを2次元逆DCTして逆量子化・逆DCTの結果を
得る。k番目のブロックのDCT係数を8×8の行列F
kで表し、1次元逆DCTの8×8の行列Dで表わすと
2次元逆DCTは、DFkTである。Dの要素をdij
表し、Fkの要素fijkは、(数1)で用いられている値
である。8点逆DCTの要素dijは(数2)である。
The DCT coefficient f obtained as a result of (Equation 1)
Two-dimensional inverse DCT is performed on ijk to obtain the result of inverse quantization / inverse DCT. The DCT coefficient of the kth block is the 8 × 8 matrix F
Represented by k , the two-dimensional inverse DCT is DF k D T when represented by an 8 × 8 matrix D of the one-dimensional inverse DCT. The elements of D expressed in d ij, elements f ijk of F k is a value used in the equation (1). The element d ij of the 8-point inverse DCT is (Equation 2).

【0008】[0008]

【数2】 [Equation 2]

【0009】またDFkT=D(FkT)と表される。
kTはFkを行方向に取り出して8行分の1次元逆D
CTを行うことに相当し、D(FkT)は(FkT)を
列方向に取り出して8列分の1次元逆DCTを行うこと
に相当するので2次元逆DCTは、1次元逆DCTと転
置により実現できる。
Further, DF k D T = D (F k D T ) is expressed.
F k D T is a one-dimensional inverse D for 8 lines by extracting F k in the row direction.
This is equivalent to performing CT, and D (F k D T ) is equivalent to performing (F k D T ) in the column direction and performing 1-dimensional inverse DCT for 8 columns. It can be realized by dimensional inverse DCT and transposition.

【0010】次にDCT・量子化の演算について説明す
る。k番目のブロックの入力データを8×8の行列Gk
で表し、1次元DCTの8×8の行列Cで表わすと2次
元DCTは、Fk=CGkTである。DCTは直交変換
であるのでC=D-1=DTであり、Gkの要素gijkに対
してi,jは各ブロック内の8×8データの位置(i=
0〜7,j=0〜7)、kはブロック番号(k=0〜
5)である。量子化は、W’ijl=1/Wijl,qs’=
1/qsと表せば、(数1)と同様に(数3)と表され
る。
Next, the calculation of DCT / quantization will be described. The input data of the kth block is the 8 × 8 matrix G k
The two-dimensional DCT is F k = CG k C T when expressed by the matrix C of 8 × 8 of the one-dimensional DCT. Since DCT is an orthogonal transform, C = D −1 = D T , and i and j are the positions of 8 × 8 data (i = j) in each block with respect to the element g ijk of G k.
0 to 7, j = 0 to 7), k is a block number (k = 0 to 0)
5). The quantization is W'ijl = 1 / Wijl , qs' =
When expressed as 1 / qs, it is expressed as (Equation 3) as in (Equation 1).

【0011】[0011]

【数3】 [Equation 3]

【0012】ここで、fijkはDCT係数、Qijkは逆量
子化レベル値、W’ijlは重み係数、qs’は量子化ス
ケール値である。また、i,jは各ブロック内の8×8
データの位置(i=0〜7,j=0〜7)、kはブロッ
ク番号(k=0〜5)、lは係数群番号(l=0〜1)
である。
Here, f ijk is a DCT coefficient, Q ijk is an inverse quantization level value, W'ijl is a weighting coefficient, and qs' is a quantization scale value. Also, i and j are 8 × 8 in each block.
Data position (i = 0 to 7, j = 0 to 7), k is block number (k = 0 to 5), l is coefficient group number (l = 0 to 1)
Is.

【0013】従来の逆量子化・逆DCT回路を図8に示
す。図8は、逆量子化・逆DCTを手順に従って実現し
たものであり、図8において801は重み係数メモリ、
802は第1の乗算器、803は第2の乗算器、804
は係数バッファメモリ、805はセレクタ、806は1
次元逆DCT部、807はデータ転置用メモリである。
FIG. 8 shows a conventional inverse quantization / inverse DCT circuit. FIG. 8 is a diagram in which inverse quantization / inverse DCT is realized according to a procedure. In FIG. 8, 801 is a weight coefficient memory,
802 is a first multiplier, 803 is a second multiplier, 804
Is a coefficient buffer memory, 805 is a selector, and 806 is 1
A dimension inverse DCT unit, 807 is a data transposing memory.

【0014】以下に図8に基づいて従来の逆量子化・逆
DCT回路の動作を説明する。第1段階の処理では1マ
クロブロックの量子化レベルQijkの逆量子化を行い、
その結果を係数バッファメモリ804に書き込む。重み
係数メモリ801からマクロブロックタイプに従ってl
が決定された重み係数Wijlを行方向に読み出し、第1
の乗算器802により重み係数Wijlと入力される量子
化レベルQijkとの乗算をi=0〜7,j=0〜7,k
=0〜5について行いQijk×Wijlを得、第2の乗算器
803により第1の乗算器802の結果Qijk×Wijl
量子化スケールqsの乗算をi=0〜7,j=0〜7,
k=0〜5について行いDCT係数fijk=Qijk×W
ijl×qsを得、DCT係数fijkをi=0〜7,j=0
〜7,k=0〜5について係数バッファメモリ804に
書き込む。
The operation of the conventional inverse quantization / inverse DCT circuit will be described below with reference to FIG. In the processing of the first stage, the quantization level Q ijk of one macroblock is inversely quantized,
The result is written in the coefficient buffer memory 804. L from the weighting factor memory 801 according to the macroblock type
There read the determined weight coefficient W ijl in the row direction, the first
Of the weighting coefficient W ijl and the input quantization level Q ijk by the multiplier 802 of i = 0 to 7, j = 0 to 7, k
= 0 to 5 to obtain Q ijk × W ijl , and the second multiplier 803 multiplies the result Q ijk × W ijl of the first multiplier 802 by the quantization scale qs at i = 0 to 7, j = 0-7,
Performed for k = 0 to 5 DCT coefficient f ijk = Q ijk × W
ijl × qs, and the DCT coefficient f ijk is i = 0 to 7, j = 0
.About.7 and k = 0 to 5 are written in the coefficient buffer memory 804.

【0015】第2段階の処理では係数バッファメモリ8
04に格納されたDCT係数fijkを読み出し、逆DC
Tを実現する。係数バッファメモリ804からDCT係
数f ijkを行方向に読み出し、セレクタ805により係
数バッファメモリ804の出力を選択して、1次元逆D
CT部806によりDCT係数fijkの8点1次元逆D
CTを行方向に対して1ブロック中の行数8と1マクロ
ブロック中のブロック数6に対応した8×6回行い、1
次元逆DCT部806の出力をデータ転置用メモリ80
7に行方向に書き込む。次にデータ転置用メモリ807
から列方向に読み出し、セレクタ805によりデータ転
置用メモリ807の出力を選択して1次元逆DCT部8
06に入力し、1次元逆DCT部806により8点1次
元逆DCTを列方向に対して1ブロック中の列数8と1
マクロブロック中のブロック数6に対応した8×6回行
い、1次元逆DCT部806の出力結果を逆量子化・逆
DCT回路の出力とする。
In the second stage processing, the coefficient buffer memory 8
DCT coefficient f stored in 04ijkRead out and reverse DC
Realize T. Coefficient buffer memory 804 to DCT
Number f ijkIs read out in the row direction, and the selector 805
The output of the number buffer memory 804 is selected, and the one-dimensional inverse D is selected.
The DCT coefficient f by the CT unit 806ijk8 points 1-dimensional inverse D
Number of rows in 1 block for CT in the row direction and 1 macro
Perform 8 x 6 times corresponding to the number of blocks in the block, 1
The output of the three-dimensional inverse DCT unit 806 is used as the data transposing memory 80.
Write to 7 in the row direction. Next, the data transposing memory 807
Data is read in the column direction from the
The output of the storage memory 807 is selected and the one-dimensional inverse DCT unit 8 is selected.
06, and the 1-dimensional inverse DCT unit 806 makes 8 points primary
The number of columns in one block of the original inverse DCT is 8 and 1
8x6 times corresponding to 6 blocks in a macroblock
Inverse quantization / inverse of the output result of the one-dimensional inverse DCT unit 806
This is the output of the DCT circuit.

【0016】この構成で逆量子化部の1マクロブロック
当たりの乗算回数は、第1の乗算器は入力される量子化
レベルQijkと重み係数Wijlの乗算を8×8×6=38
4回行い、第2の乗算器は第1の乗算器の結果と量子化
スケール値の乗算を8×8×6=384回行うので合計
768回の乗算を行う。
With this configuration, the number of multiplications per macroblock of the dequantization unit is 8 × 8 × 6 = 38 when the first multiplier multiplies the input quantization level Q ijk by the weighting coefficient W ijl.
This is performed four times, and the second multiplier performs multiplication of the result of the first multiplier and the quantization scale value by 8 × 8 × 6 = 384 times, so that a total of 768 times of multiplication are performed.

【0017】[0017]

【発明が解決しようとする課題】従来の逆量子化・逆D
CT回路では、逆量子化部に2個の乗算器と、384ワ
ードの係数バッファメモリと384ワードの転置用メモ
リを必要とするので、LSI化する場合にチップ上の大
きな面積を占めてしまう。また、乗算器による乗算回数
は、1マクロブロックあたり768回の乗算を行うので
消費電力が大きくなってしまう。
[Problems to be Solved by the Invention] Conventional inverse quantization / inverse D
In the CT circuit, two multipliers, a 384-word coefficient buffer memory, and a 384-word transposing memory are required in the dequantization unit, so that a large area on the chip is occupied in the case of LSI implementation. In addition, since the number of multiplications by the multiplier is 768 times per macroblock, power consumption increases.

【0018】本発明はかかる点に鑑みて、演算器の構成
数が少なく、乗算回数が少ない逆量子化・逆DCT回路
またはDCT・量子化回路を提供することを目的とす
る。
In view of the above points, the present invention has an object to provide an inverse quantization / inverse DCT circuit or a DCT / quantization circuit having a small number of arithmetic units and a small number of multiplications.

【0019】[0019]

【課題を解決するための手段】第1に、逆量子化または
量子化の乗算回数を減らし乗算器の個数を減らす手段と
しては、重み係数と量子化スケールを乗算してバッファ
メモリに書き込み、この乗算結果と入力データとを乗算
して逆量子化または量子化を実行する構成とした。
First, as a means for reducing the number of multiplications for dequantization or quantization and reducing the number of multipliers, a weighting coefficient and a quantization scale are multiplied and written in a buffer memory. The multiplication result and the input data are multiplied to perform inverse quantization or quantization.

【0020】第2に、逆量子化・逆DCT回路の係数バ
ッファメモリを削減する手段としては、逆量子化の演算
と1回目の1次元逆DCTを各データ毎に連続で行い、
その結果を転置用メモリに書き込み、1回目の1次元逆
DCTの結果を転置用メモリから読み出し、2回目の1
次元逆DCTを実行する構成とし、DCT・量子化回路
の係数バッファメモリを削減する手段としては、1回目
の1次元DCTを行い、その結果を転置用メモリに書き
込み、1回目の1次元DCTの結果を転置用メモリから
読み出し、2回目の1次元DCTと量子化の演算を各デ
ータ毎に連続で実行する構成とした。
Second, as means for reducing the coefficient buffer memory of the inverse quantization / inverse DCT circuit, the inverse quantization operation and the first one-dimensional inverse DCT are continuously performed for each data,
The result is written in the transposing memory, the result of the first one-dimensional inverse DCT is read from the transposing memory, and the second one is read.
As a means for reducing the coefficient buffer memory of the DCT / quantization circuit by performing the three-dimensional inverse DCT, the first one-dimensional DCT is performed and the result is written in the transposing memory. The result is read from the transposing memory, and the second one-dimensional DCT and the quantization operation are continuously executed for each data.

【0021】第3に、逆量子化・逆DCT回路またはD
CT・量子化回路のデータ転置用メモリを削減する手段
としては、転置用メモリに書き込むデータの単位をブロ
ックデータの整数倍とする構成とした。
Third, an inverse quantization / inverse DCT circuit or D
As a means for reducing the data transposing memory of the CT / quantization circuit, the unit of data to be written in the transposing memory is set to an integral multiple of the block data.

【0022】第4に、逆量子化または量子化の乗算回数
を平均的に減らす手段としては、重み係数を選択するた
めの信号であるマクロブロックタイプと、量子化スケー
ル値が1マクロブロック前から変化したかどうかを判断
し、両方の値が変化していなければ、重み係数と量子化
スケール値の乗算を行わず、1マクロブロック前の、量
子化スケール値×重み係数の乗算結果を用いる構成とし
た。
Fourth, as means for reducing the number of times of inverse quantization or quantization on average, a macroblock type which is a signal for selecting a weighting coefficient and a quantization scale value from one macroblock before It is determined whether or not there is a change, and if both values have not changed, the multiplication of the weighting coefficient and the quantization scale value is not performed, and the result of multiplication of the quantization scale value × the weighting coefficient one macroblock before is used. And

【0023】[0023]

【発明の実施の形態】以下に本発明の実施の形態を詳細
に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described in detail below.

【0024】(実施の形態1)図1は本発明の実施の形
態の逆量子化・逆DCT回路のブロック構成図である。
図1において101は第1のセレクタ、102は重み係
数用メモリ、103は第2のセレクタ、104は乗算
器、105はバッファメモリ、106は第3のセレク
タ、107は1次元逆DCT部、108はデータ転置用
メモリである。
(Embodiment 1) FIG. 1 is a block diagram of an inverse quantization / inverse DCT circuit according to an embodiment of the present invention.
In FIG. 1, 101 is a first selector, 102 is a weight coefficient memory, 103 is a second selector, 104 is a multiplier, 105 is a buffer memory, 106 is a third selector, 107 is a one-dimensional inverse DCT unit, 108 Is a data transposing memory.

【0025】第1段階の処理では量子化スケール値qs
と重み係数Wijlの乗算を行い、乗算結果qs×Wijl
バッファメモリ105に書き込む。第1段階の処理にお
いて、第1のセレクタ101により量子化スケール値q
sを選択し、重み係数用メモリ102からマクロブロッ
クタイプによってlが決定された重み係数Wijlをi=
0〜7,j=0〜7について順次読み出し、第2のセレ
クタ103により重み係数用メモリ102の出力である
重み係数Wijlを選択し、次に乗算器104により量子
化スケール値qsと重み係数Wijlの乗算を順次行い、
乗算器104の出力をバッファメモリ105に書き込
む。
In the first stage processing, the quantization scale value qs
And the weighting factor W ijl are multiplied, and the multiplication result qs × W ijl is written in the buffer memory 105. In the processing of the first stage, the quantization scale value q
s, and the weighting coefficient W ijl for which l is determined by the macroblock type from the weighting coefficient memory 102 is i =
0 to 7 and j = 0 to 7 are sequentially read, the weight coefficient W ijl output from the weight coefficient memory 102 is selected by the second selector 103, and the multiplier 104 then selects the quantization scale value qs and the weight coefficient. Multiply W ijl sequentially,
The output of the multiplier 104 is written in the buffer memory 105.

【0026】第2段階の処理ではバッファメモリ105
に格納されたqs×Wijlと逆量子化レベル値Qijkとの
乗算と行方向の1次元逆DCTを行い、その結果をデー
タ転置用メモリ108に書き込む。第2段階の処理にお
いて、逆量子化レベル値Q ijkをi=0〜7,j=0〜
7,k=0〜5について行方向に順次入力し、第2のセ
レクタ103により逆量子化レベル値Qijkを選択し、
バッファメモリ105から第1段階の処理で求めたqs
×Wijlを行方向に順次読み出し、第1のセレクタ10
1によりバッファメモリ105の出力であるqs×W
ijlを選択し、乗算器104により逆量子化レベル値Q
ijkと量子化スケール値×重み係数の乗算結果qs×W
ijlとのi,jが対応する乗算をi=0〜7,j=0〜
7,k=0〜5について行い、セレクタ106により乗
算器104の出力を選択して乗算結果Qijk×(qs×
ijl)であるDCT係数を1次元逆DCT部107に
入力し、1次元逆DCT部107により8点1次元逆D
CTを行方向に対して1ブロック中の行数8と1マクロ
ブロック中のブロック数6に対応した8×6回行い、1
次元逆DCT部107の出力をデータ転置用メモリ10
8に行方向に書き込む。
In the second stage processing, the buffer memory 105
Qs × W stored inijlAnd the inverse quantization level value QijkWith
Multiplies and performs one-dimensional inverse DCT in the row direction and outputs the result.
The data is written in the transposing memory 108. For the second stage processing
And the inverse quantization level value Q ijkI = 0 to 7, j = 0
7, k = 0 to 5 are sequentially input in the row direction, and the second sec
Inverse quantization level value QijkSelect
Qs obtained from the buffer memory 105 in the first stage processing
× WijlAre sequentially read in the row direction, and the first selector 10
1, the output of the buffer memory 105 is qs × W
ijlAnd the inverse quantization level value Q
ijkAnd quantization scale value x weighting factor multiplication result qs x W
ijlI and j corresponding to i and j are i = 0 to 7 and j = 0 to
7, k = 0 to 5, and the selector 106
The output of the calculator 104 is selected and the multiplication result QijkX (qs x
Wijl) To the one-dimensional inverse DCT unit 107
Input and input 1-dimensional inverse DCT unit 107 to 8 points 1-dimensional inverse D
Number of rows in 1 block for CT in the row direction and 1 macro
Perform 8 x 6 times corresponding to the number of blocks in the block, 1
The output of the three-dimensional inverse DCT unit 107 is used as the data transposing memory 10
Write 8 in the row direction.

【0027】第3段階の処理ではデータ転置用メモリ1
08で行と列が転置されたデータを入力とした列方向の
1次元逆DCTを行う。第3段階の処理では、データ転
置用メモリ108から列方向に読み出し、セレクタ10
6によりデータ転置用メモリ108の出力を選択して1
次元逆DCT部107に入力し、1次元逆DCT部10
7により8点1次元逆DCTを列方向に対して1ブロッ
ク中の列数8と1マクロブロック中のブロック数6に対
応した8×6回行い、1次元逆DCT部107の出力結
果を逆量子化・逆DCT回路の出力とする。
In the process of the third stage, the data transposing memory 1
At 08, the one-dimensional inverse DCT in the column direction is performed using the data in which the rows and columns are transposed as input. In the third stage processing, the data is transposed from the data transposing memory 108 in the column direction, and the selector 10
1 selects the output of the data transposing memory 108 by 6
The one-dimensional inverse DCT unit 10 is input to the one-dimensional inverse DCT unit 107.
The 8-point one-dimensional inverse DCT is performed 7 times 8 × 6 times corresponding to the number of columns in one block and the number of blocks in one macroblock of 6 in the column direction, and the output result of the one-dimensional inverse DCT unit 107 is inverted. This is the output of the quantization / inverse DCT circuit.

【0028】第1の実施の形態では、逆量子化・逆DC
Tの処理を第1段階、第2段階、第3段階の順に処理を
進めて実現する。
In the first embodiment, inverse quantization / inverse DC
The process of T is realized by proceeding in the order of the first stage, the second stage, and the third stage.

【0029】上記の構成で、乗算器の個数は1個で済
む。また、一旦、ブロック内のデータの個数に対応する
qs×Wijlを計算しているので、Qijkの属するブロッ
クが変わる度にqs×Wijlを計算せずに済み、乗算の
回数が削減できる。具体的には第1段階のqs×Wijl
の生成に8×8=64回の乗算、第2段階のQijk×
(qs×Wijl)の生成に8×8×6=384回の乗算
の合計448回の乗算で済むことになる。さらに逆量子
化と逆DCTを連続に実行することにより、間の係数バ
ッファメモリを削減することができる。
With the above configuration, the number of multipliers is only one. Further, once qs × W ijl corresponding to the number of data in the block is calculated, it is not necessary to calculate qs × W ijl every time the block to which Q ijk belongs changes, and the number of multiplications can be reduced. . Specifically, qs × W ijl in the first stage
8 × 8 = 64 multiplications for the generation of Q ijk × 2
For the generation of (qs × W ijl ), 8 × 8 × 6 = 384 multiplications, that is, 448 multiplications in total. Further, by performing inverse quantization and inverse DCT successively, it is possible to reduce the coefficient buffer memory between them.

【0030】尚、データ転置用メモリ108を2ポート
メモリとし、行方向の1次元逆DCT結果の書き込みと
列方向の1次元逆DCTへのデータ読みだしを同時に行
えるようにすると、第2段階と第3段階の処理を時間的
にオーバーラップすることが可能となり、処理サイクル
数を削減できる。
If the data transposing memory 108 is a two-port memory and writing of the one-dimensional inverse DCT result in the row direction and data reading into the one-dimensional inverse DCT in the column direction can be performed at the same time, the second step is performed. It is possible to temporally overlap the processing of the third stage, and the number of processing cycles can be reduced.

【0031】また、第1のセレクタ101の入力である
量子化スケール値と第2のセレクタ103の入力である
重み係数とを入れ換えてもよい。
Further, the quantization scale value which is the input of the first selector 101 and the weighting coefficient which is the input of the second selector 103 may be exchanged.

【0032】(実施の形態2)実施の形態1の第2段
階、第3段階のデータ処理単位を変えることによってデ
ータ転置用メモリサイズを削減することが可能である。
実施の形態2では6ブロックから構成されるマクロブロ
ックを2ブロックをデータ処理単位とする場合を説明す
る。実施の形態1と同様に図1を用いて動作を説明す
る。
(Embodiment 2) It is possible to reduce the memory size for data transposition by changing the data processing unit in the second stage and the third stage of the first embodiment.
In the second embodiment, a case will be described in which a macro block composed of 6 blocks has 2 blocks as a data processing unit. The operation will be described with reference to FIG. 1 as in the first embodiment.

【0033】第1段階の処理では量子化スケール値qs
と重み係数Wijlの乗算を行い、乗算結果qs×Wijl
バッファメモリ105に書き込む。第1段階の処理にお
いて、第1のセレクタ101により量子化スケール値q
sを選択し、重み係数用メモリ102からマクロブロッ
クタイプによってlが決定された重み係数Wijlをi=
0〜7,j=0〜7について順次読み出し、第2のセレ
クタ103により重み係数用メモリ102の出力である
重み係数Wijlを選択し、次に乗算器104により量子
化スケール値qsと重み係数Wijlの乗算を順次行い、
乗算器104の出力をバッファメモリ105に書き込
む。
In the first stage processing, the quantization scale value qs
And the weighting factor W ijl are multiplied, and the multiplication result qs × W ijl is written in the buffer memory 105. In the processing of the first stage, the quantization scale value q
s, and the weighting coefficient W ijl for which l is determined by the macroblock type from the weighting coefficient memory 102 is i =
0 to 7 and j = 0 to 7 are sequentially read, the weight coefficient W ijl output from the weight coefficient memory 102 is selected by the second selector 103, and the multiplier 104 then selects the quantization scale value qs and the weight coefficient. Multiply W ijl sequentially,
The output of the multiplier 104 is written in the buffer memory 105.

【0034】第2段階の処理ではバッファメモリ105
に格納されたqs×Wijlと逆量子化レベル値Qijkとの
乗算と行方向の1次元逆DCTを行い、その結果をデー
タ転置用メモリ108に書き込む。第2段階の処理にお
いて、逆量子化レベル値Q ijkをi=0〜7,j=0〜
7,k=0〜1について行方向に順次入力し、第2のセ
レクタ103により逆量子化レベル値Qijkを選択し、
バッファメモリ105から第1段階の処理で求めたqs
×Wijlを行方向に順次読み出し、第1のセレクタ10
1によりバッファメモリ105の出力であるqs×W
ijlを選択し、乗算器104により逆量子化レベル値Q
ijkと量子化スケール値×重み係数の乗算結果qs×W
ijlとのi,jが対応する乗算をi=0〜7,j=0〜
7,k=0〜1について行い、セレクタ106により乗
算器104の出力を選択して乗算結果Qijk×(qs×
ijl)であるDCT係数を1次元逆DCT部107に
入力し、1次元逆DCT部107により8点1次元逆D
CTを行方向に対して1ブロック中の行数8と1マクロ
ブロック中のブロック数2に対応した8×2回行い、1
次元逆DCT部107の出力をデータ転置用メモリ10
8に行方向に書き込む。
In the second stage processing, the buffer memory 105
Qs × W stored inijlAnd the inverse quantization level value QijkWith
Multiplies and performs one-dimensional inverse DCT in the row direction and outputs the result.
The data is written in the transposing memory 108. For the second stage processing
And the inverse quantization level value Q ijkI = 0 to 7, j = 0
7, k = 0 to 1 are sequentially input in the row direction, and the second sec
Inverse quantization level value QijkSelect
Qs obtained from the buffer memory 105 in the first stage processing
× WijlAre sequentially read in the row direction, and the first selector 10
1, the output of the buffer memory 105 is qs × W
ijlAnd the inverse quantization level value Q
ijkAnd quantization scale value x weighting factor multiplication result qs x W
ijlI and j corresponding to i and j are i = 0 to 7 and j = 0 to
7, k = 0 to 1, and the selector 106
The output of the calculator 104 is selected and the multiplication result QijkX (qs x
Wijl) To the one-dimensional inverse DCT unit 107
Input and input 1-dimensional inverse DCT unit 107 to 8 points 1-dimensional inverse D
Number of rows in 1 block for CT in the row direction and 1 macro
Perform 8 × 2 times corresponding to the number of blocks in the block, 1
The output of the three-dimensional inverse DCT unit 107 is used as the data transposing memory 10
Write 8 in the row direction.

【0035】第3段階の処理ではデータ転置用メモリ1
08で行と列が転置されたデータを入力とした列方向の
1次元逆DCTを行う。第3段階の処理では、データ転
置用メモリ108から列方向に読み出し、セレクタ10
6によりデータ転置用メモリ108の出力を選択して1
次元逆DCT部107に入力し、1次元逆DCT部10
7により8点1次元逆DCTを列方向に対して1ブロッ
ク中の列数8と1マクロブロック中のブロック数2に対
応した8×2回行い、1次元逆DCT部107の出力結
果を逆量子化・逆DCT回路の出力とする。
In the third stage processing, the data transposing memory 1
At 08, the one-dimensional inverse DCT in the column direction is performed using the data in which the rows and columns are transposed as input. In the third stage processing, the data is transposed from the data transposing memory 108 in the column direction, and the selector 10
1 selects the output of the data transposing memory 108 by 6
The one-dimensional inverse DCT unit 10 is input to the one-dimensional inverse DCT unit 107.
7, the 8-point one-dimensional inverse DCT is performed 8 × 2 times corresponding to the number of columns in one block and the number of blocks in one macroblock of 2 in the column direction, and the output result of the one-dimensional inverse DCT unit 107 is inverted. This is the output of the quantization / inverse DCT circuit.

【0036】第2段階の処理と第3段階の処理をk=2
〜3に対して行い、第2段階の処理と第3段階の処理を
k=4〜5に対して行い、1マクロブロック分の処理を
終了する。
The second stage process and the third stage process are k = 2.
3 to 3, the second stage process and the third stage process are performed on k = 4 to 5, and the process for one macroblock is completed.

【0037】図4(a)にm=6で、データ処理単位を6
ブロック=1マクロブロックとした場合と、図4(b)に
データ処理単位を2ブロックとした場合の処理フローを
示す。第2段階、第3段階のデータ処理単位を1マクロ
ブロック(mブロック)とした場合、実施の形態1のよ
うに第1段階、第2段階、第3段階の処理はそれぞれ1
回ずつで済むが、データ転置用メモリのサイズが1マク
ロブロック分(384ワード)必要となる。一方、第2
段階、第3段階のデータ処理単位を2ブロックとした場
合は、上述したように第1段階の処理は1回、第2段階
と第3段階の処理はm/2回必要となる。従って第2段
階、第3段階のレイテンシによるオーバヘッドが前者の
方法に比べてm/2倍となり処理サイクル数が増加する
が、データ転置用メモリの容量を2ブロック分(128
ワード)にすることができる。
In FIG. 4A, m = 6 and the data processing unit is 6
FIG. 4B shows a processing flow when the block is one macroblock and when the data processing unit is two blocks. When the data processing unit of the second stage and the third stage is one macroblock (m block), the first stage, the second stage, and the third stage of processing are each 1 as in the first embodiment.
Although it is sufficient for each time, the size of the memory for data transposition requires one macroblock (384 words). Meanwhile, the second
When the data processing unit of the stage and the third stage is two blocks, the process of the first stage needs to be performed once, and the processes of the second and third stages need to be performed m / 2 times as described above. Therefore, although the overhead due to the latency in the second and third steps is m / 2 times that of the former method, the number of processing cycles increases, but the capacity of the data transposing memory for two blocks (128
Word).

【0038】1マクロブロック中のブロック数mの約数
に対応してデータ処理単位を変えることができ、所望の
処理サイクル数内でデータ転置用メモリサイズを最適化
することができる。
The data processing unit can be changed corresponding to a divisor of the number m of blocks in one macroblock, and the data transposing memory size can be optimized within a desired number of processing cycles.

【0039】(実施の形態3)図5は本発明の実施の形
態の逆量子化・逆DCT回路のブロック構成図である。
図5において501は量子化スケール値生成部、502
は第1のセレクタ、503はマクロブロックタイプと量
子化スケールコードとピクチャ切り換え信号を入力とす
る判定制御部、504は重み係数用メモリ、505は第
2のセレクタ、506は乗算器、507はバッファメモ
リ、508は第3のセレクタ、509は1次元逆DCT
部、510はデータ転置用メモリである。
(Embodiment 3) FIG. 5 is a block diagram of an inverse quantization / inverse DCT circuit according to an embodiment of the present invention.
In FIG. 5, 501 is a quantization scale value generation unit, 502
Is a first selector, 503 is a determination control unit that receives a macroblock type, a quantized scale code, and a picture switching signal, 504 is a weighting coefficient memory, 505 is a second selector, 506 is a multiplier, and 507 is a buffer. Memory, 508 is third selector, 509 is one-dimensional inverse DCT
Reference numeral 510 denotes a data transposing memory.

【0040】判定制御の処理では同じピクチャ内におい
て、前のマクロブロックで用いた量子化スケール値qs
と重み係数Wijlの乗算結果が現マクロブロックでも用
いることができるかどうかの判定を行い、以下に述べる
第1段階の処理をするかどうかの制御を行う。判定制御
部503により量子化スケール値を決定する因子である
量子化スケールコードと2種類の重み係数群の選択に用
いるマクロブロックタイプについて現在の値と1マクロ
ブロック前の値を比較し、どちらか一方でも1マクロブ
ロック前と違っていた場合は、以下に述べる第1段階、
第2段階、第3段階の処理を順に行う制御をする。上記
2つの値とも1マクロブロック前から変化していない場
合は、バッファメモリ507に格納してある1マクロブ
ロック前の量子化スケール値×重み係数の結果が利用で
きるので、第1段階の処理を行わず、以下に述べる第2
段階、第3段階の処理を順に行う制御をする。
In the decision control process, the quantization scale value qs used in the previous macroblock within the same picture.
And whether the multiplication result of the weighting factor W ijl can be used in the current macroblock as well, and whether or not to perform the first-stage processing described below is controlled. The determination control unit 503 compares the current value and the value one macroblock before with respect to the quantization scale code, which is a factor for determining the quantization scale value, and the macroblock type used to select the two types of weighting coefficient groups. If one of them is different from the one macroblock before, the first stage described below,
The control is performed such that the processes of the second stage and the third stage are performed in order. If neither of the above two values has changed from the previous one macroblock, the result of the quantization scale value of one previous macroblock × weighting coefficient stored in the buffer memory 507 can be used. No, the second described below
The step and the third step are sequentially controlled.

【0041】第1段階の処理では量子化スケール値qs
と重み係数Wijlの乗算を行い、乗算結果qs×Wijl
バッファメモリ507に書き込む。第1段階の処理にお
いて、量子化スケール値生成部501により量子化スケ
ールタイプと量子化スケールコードから量子化スケール
値qsを生成し、第1のセレクタ502により量子化ス
ケール値qsを選択し、重み係数用メモリ504からマ
クロブロックタイプによってlが決定された重み係数W
ijlをi=0〜7,j=0〜7について順次読み出し、
第2のセレクタ505により重み係数用メモリ504の
出力である重み係数Wijlを選択し、次に乗算器506
により量子化スケール値qsと重み係数Wijlの乗算を
順次行い、乗算器506の出力をバッファメモリ507
に書き込む。
In the first stage processing, the quantization scale value qs
And the weighting factor W ijl are multiplied, and the multiplication result qs × W ijl is written in the buffer memory 507. In the processing of the first stage, the quantization scale value generation unit 501 generates a quantization scale value qs from the quantization scale type and the quantization scale code, and the first selector 502 selects the quantization scale value qs and weights it. Weighting coefficient W for which 1 is determined by the macroblock type from the coefficient memory 504
ijl is sequentially read for i = 0 to 7 and j = 0 to 7,
The second selector 505 selects the weighting factor W ijl output from the weighting factor memory 504, and then the multiplier 506.
The quantization scale value qs and the weighting coefficient W ijl are sequentially multiplied by, and the output of the multiplier 506 is output to the buffer memory 507.
Write in.

【0042】第2段階の処理ではバッファメモリ507
に格納されたqsXWijlと逆量子化レベル値Qijkとの
乗算と行方向の1次元逆DCTを行い、その結果をデー
タ転置用メモリ510に書き込む。第2段階の処理にお
いて、逆量子化レベル値Q ijkをi=0〜7,j=0〜
7,k=0〜5について順次入力し、第2のセレクタ5
02により逆量子化レベル値Qijkを選択し、バッファ
メモリ507から第1段階の処理で求めたqs×Wijl
を順次読み出し、第1のセレクタ502によりバッファ
メモリ507の出力であるqs×Wijlを選択し、乗算
器506により逆量子化レベル値Qijkと量子化スケー
ル値×重み係数の乗算結果qs×Wijlとのi,jが対
応する乗算をi=0〜7,j=0〜7,k=0〜5につ
いて行い、セレクタ508により乗算器506の出力を
選択して乗算結果Qijk×(qs×Wijl)であるDCT
係数を1次元逆DCT部509に入力し、1次元逆DC
T部509により8点1次元逆DCTを行方向に対して
1ブロック中の行数8と1マクロブロック中のブロック
数6に対応した8X6回行い、1次元逆DCT部509
の出力をデータ転置用メモリ510に行方向に書き込
む。
In the second stage processing, the buffer memory 507
Stored in qsXWijlAnd the inverse quantization level value QijkWith
Multiplies and performs one-dimensional inverse DCT in the row direction and outputs the result.
The data is written in the transposing memory 510. For the second stage processing
And the inverse quantization level value Q ijkI = 0 to 7, j = 0
7, k = 0 to 5 are sequentially input, and the second selector 5
Dequantization level value Q by 02ijkSelect the buffer
Qs × W obtained from the memory 507 in the first stage processingijl
Are sequentially read out and buffered by the first selector 502.
The output of the memory 507 is qs × WijlSelect and multiply
Inverse quantization level value QijkAnd quantization scale
Value x weighting factor multiplication result qs x WijlAnd i and j are
The corresponding multiplications are i = 0 to 7, j = 0 to 7, k = 0 to 5
The output of the multiplier 506 by the selector 508.
Select and multiply result QijkX (qs x Wijl) Is the DCT
The coefficient is input to the one-dimensional inverse DCT unit 509, and the one-dimensional inverse DCT is input.
The 8-point one-dimensional inverse DCT is performed in the row direction by the T unit 509.
Number of rows in 1 block and block in 1 macroblock
Performing 8 × 6 times corresponding to Equation 6, one-dimensional inverse DCT unit 509
Write the output of the data to the data transposing memory 510 in the row direction
Mu.

【0043】第3段階の処理ではデータ転置用メモリ5
10で行と列が転置されたデータを入力とした列方向の
1次元逆DCTを行う。第3段階の処理において、デー
タ転置用メモリ510から列方向に読み出し、セレクタ
508によりデータ転置用メモリ510の出力を選択し
て1次元逆DCT部509に入力し、1次元逆DCT部
509により8点1次元逆DCTを列方向に対して1ブ
ロック中の列数8と1マクロブロック中のブロック数6
に対応した8×6回行い、1次元逆DCT部509の出
力結果を逆量子化・逆DCT回路の出力とする。
In the third stage processing, the data transposing memory 5
In step 10, the one-dimensional inverse DCT in the column direction is performed using the data in which the rows and columns are transposed as input. In the process of the third stage, the data transposing memory 510 is read out in the column direction, the output of the data transposing memory 510 is selected by the selector 508 and input to the one-dimensional inverse DCT unit 509. Point 1-dimensional inverse DCT is 8 columns in one block in the column direction and 6 blocks in one macroblock
Is performed 8 × 6 times, and the output result of the one-dimensional inverse DCT unit 509 is used as the output of the inverse quantization / inverse DCT circuit.

【0044】第3の実施の形態では、逆量子化・逆DC
Tの処理を判定制御、第1段階(判定制御によりやらな
い場合がある)、第2段階、第3段階の処理を順に行
う。
In the third embodiment, inverse quantization / inverse DC
The process of T is performed in the order of determination control, first stage (may not be performed by the determination control), second stage, and third stage.

【0045】上記の構成によると、判定制御の処理に従
って第1段階におけるqs×Wijlの生成のための8×
8=64回の乗算が省略することができる。
According to the above configuration, 8 × for the generation of qs × W ijl in the first stage according to the determination control process.
8 = 64 multiplications can be omitted.

【0046】(実施の形態4)図6は本発明の実施の形
態のDCT・量子化回路のブロック構成図である。図6
において601は第1のセレクタ、602は重み係数用
メモリ、603は第2のセレクタ、604は1次元DC
T部、605はデータ転置用メモリ、606は第3のセ
レクタ、607は乗算器、608はバッファメモリであ
る。
(Embodiment 4) FIG. 6 is a block diagram of a DCT / quantization circuit according to an embodiment of the present invention. Figure 6
601 is a first selector, 602 is a weighting coefficient memory, 603 is a second selector, and 604 is a one-dimensional DC.
T section, 605 is a data transposing memory, 606 is a third selector, 607 is a multiplier, and 608 is a buffer memory.

【0047】第1段階の処理では量子化スケール値q
s’と重み係数W’ijlの乗算を行い、乗算結果qs’
×W’ijlをバッファメモリ608に書き込み、行方向
のDCTを行う。第1段階の処理において、第1のセレ
クタ601により量子化スケール値qs’を選択し、重
み係数用メモリ602からマクロブロックタイプによっ
てlが決定された重み係数W’ijlをi=0〜7,j=
0〜7について順次読み出し、第3のセレクタ606に
より重み係数用メモリ602の出力である重み係数W’
ijlを選択し、次に乗算器607により量子化スケール
値qs’と重み係数W’ijlの乗算を順次行い、乗算器
607の出力をバッファメモリ608に書き込む。
In the first stage processing, the quantization scale value q
s 'is multiplied by the weighting coefficient W'ijl , and the multiplication result qs'
Write × W ′ ijl to the buffer memory 608 and perform DCT in the row direction. In the processing of the first stage, the first selector 601 selects the quantization scale value qs ′, and the weighting coefficient W ′ ijl for which 1 is determined by the macroblock type from the weighting coefficient memory 602 is i = 0 to 7, j =
0 to 7 are sequentially read, and the weighting coefficient W ′ output from the weighting coefficient memory 602 is output by the third selector 606.
ijl is selected, and then the multiplier 607 sequentially multiplies the quantization scale value qs ′ and the weighting coefficient W ′ ijl , and writes the output of the multiplier 607 in the buffer memory 608.

【0048】第2段階の処理では入力データに対して行
方向の1次元DCTを行い、データ転置用メモリ605
に書き込む。第2段階の処理において、入力データg
ijkをi=0〜7,j=0〜7,k=0〜5について行
方向に順次入力し、第2のセレクタ603により入力デ
ータを選択して1次元DCT部604に入力し、1次元
DCT部604により8点1次元DCTを行方向に対し
て1ブロック中の行数8と1マクロブロック中のブロッ
ク数6に対応した8×6回行い、1次元DCT部604
の出力をデータ転置用メモリ605に行方向に書き込
む。
In the second stage processing, one-dimensional DCT in the row direction is performed on the input data, and the data transposing memory 605 is used.
Write in. In the processing of the second stage, input data g
ijk is sequentially input in the row direction for i = 0 to 7, j = 0 to 7, and k = 0 to 5, input data is selected by the second selector 603 and input to the one-dimensional DCT unit 604, and one-dimensional The DCT unit 604 performs 8-point one-dimensional DCT 8 × 6 times corresponding to the number of rows in one block and the number of blocks in one macroblock in the row direction by 8 × 6 times.
Is written in the data transposing memory 605 in the row direction.

【0049】第3段階の処理ではデータ転置用メモリ6
05で行と列が転置されたデータを入力とした列方向の
1次元DCTを行ってDCT係数fijkを得、バッファ
メモリ608に格納されたqs’×W’ijlとDCT係
数fijkとの乗算を行い、その結果をDCT・量子化回
路の出力とする。第3段階の処理において、データ転置
用メモリ605から列方向に読み出し、第2のセレクタ
603によりデータ転置用メモリ605の出力を選択し
て1次元DCT部604に入力し、1次元DCT部60
4により8点1次元DCTを列方向に対して1ブロック
中の列数8と1マクロブロック中のブロック数6に対応
した8×6回行いDCT係数fijkをi=0〜7,j=
0〜7,k=0〜5について行方向に順次得、第3のセ
レクタ606により1次元DCT部604の出力を選択
してDCT係数fijkを得、バッファメモリ608から
第1段階の処理で求めたqs’×W’ijlを列方向に順
次読み出し、第1のセレクタ601によりバッファメモ
リ608の出力であるqs’×W’ijlを選択し、乗算
器607によりDCT係数fijkと量子化スケール値×
重み係数の乗算結果qs’×W’ijlとのi,jが対応
する乗算をi=0〜7,j=0〜7,k=0〜5につい
て行い、乗算結果fijk×(qs’×W’ijl)をDCT
・量子化回路の出力とする。
In the third stage processing, the data transposing memory 6
In step 05, one-dimensional DCT in the column direction is performed using the data in which the rows and columns are transposed as input to obtain DCT coefficients f ijk, and qs ′ × W ′ ijl stored in the buffer memory 608 and the DCT coefficients f ijk The multiplication is performed, and the result is used as the output of the DCT / quantization circuit. In the process of the third stage, the data is read from the data transposing memory 605 in the column direction, the output of the data transposing memory 605 is selected by the second selector 603, and the selected output is input to the one-dimensional DCT unit 604.
4, the 8-point one-dimensional DCT is performed 8 × 6 times corresponding to the number of columns in one block and the number of blocks in one macroblock of 6 in the column direction, and the DCT coefficient f ijk is i = 0 to 7, j =
0 to 7 and k = 0 to 5 are sequentially obtained in the row direction, the output of the one-dimensional DCT unit 604 is selected by the third selector 606 to obtain the DCT coefficient f ijk , and the first stage processing is performed from the buffer memory 608. The obtained qs ′ × W ′ ijl is sequentially read out in the column direction, the first selector 601 selects qs ′ × W ′ ijl which is the output of the buffer memory 608, and the multiplier 607 selects the DCT coefficient f ijk and the quantization scale. Value ×
The multiplication result qs ′ × W ′ ijl of the weighting factor is multiplied by i and j for i = 0 to 7, j = 0 to 7 and k = 0 to 5, and the multiplication result f ijk × (qs ′ × DCT of W'ijl )
-The output of the quantization circuit.

【0050】第4の実施の形態では、DCT・量子化の
処理を第1段階、第2段階、第3段階の順に処理を進め
て実現する。
In the fourth embodiment, the DCT / quantization process is realized by proceeding in the order of the first stage, the second stage, and the third stage.

【0051】尚、第1段階と第2段階の処理は互いに演
算器が共用されていないので同時に実行することもで
き、さらに実施の形態2と同様に第2段階と第3段階の
処理のデータ処理単位を変更することができる。また、
実施の形態1で述べたような構成の一部変更も可能であ
る。
The processing of the first and second steps can be executed simultaneously because the arithmetic units are not shared with each other. Further, as in the second embodiment, the data of the processing of the second and third steps can be executed. The processing unit can be changed. Also,
It is also possible to partially change the configuration as described in the first embodiment.

【0052】(実施の形態5)図7は本発明の実施の形
態の逆量子化・逆DCT/DCT・量子化回路のブロッ
ク構成図である。図7において701は第1の2入力セ
レクタ、702は重み係数用メモリ、703は第1の3
入力セレクタ、704は乗算器、705はバッファメモ
リ、706は第2の3入力セレクタ、707は1次元逆
DCT/DCT部、708はデータ転置用メモリ、70
9は第2の2入力セレクタである。重み係数メモリ70
2には逆量子化用の重み係数Wijlと量子化用の重み係
数W’ijlが格納され、切り換え信号によりどちらかが
選択される。1次元逆DCT/DCT部707は切り換
え信号により1次元逆DCTか1次元DCTの機能が選
定され、例えば1次元逆DCT部と1次元DCT部のそ
れぞれの入力と出力をセレクタで選択することで実現で
きる。
(Embodiment 5) FIG. 7 is a block diagram of an inverse quantization / inverse DCT / DCT / quantization circuit according to an embodiment of the present invention. In FIG. 7, 701 is a first two-input selector, 702 is a weighting coefficient memory, and 703 is a first three-input selector.
Input selector, 704 is a multiplier, 705 is a buffer memory, 706 is a second three-input selector, 707 is a one-dimensional inverse DCT / DCT unit, 708 is a data transposing memory, 70
Reference numeral 9 is a second 2-input selector. Weighting coefficient memory 70
2 stores a weighting coefficient W ijl for inverse quantization and a weighting coefficient W ′ ijl for quantization, and either one is selected by a switching signal. The one-dimensional inverse DCT / DCT unit 707 selects the function of one-dimensional inverse DCT or one-dimensional DCT according to the switching signal. For example, by selecting each input and output of the one-dimensional inverse DCT unit and the one-dimensional DCT unit with a selector. realizable.

【0053】まず、逆量子化・逆DCTを行う場合の動
作を説明する。第1段階の処理では量子化スケール値q
sと重み係数Wijlの乗算を行い、乗算結果qs×Wijl
をバッファメモリ705に書き込む。第1段階の処理に
おいて、第1の2入力セレクタ701により量子化スケ
ール値qsを選択し、重み係数用メモリ702からマク
ロブロックタイプによってlが決定された重み係数W
ijlをi=0〜7,j=0〜7について順次読み出し、
第1の3入力セレクタ703により重み係数用メモリ7
02の出力である重み係数Wijlを選択し、次に乗算器
704により量子化スケール値qsと重み係数Wijl
乗算を順次行い、乗算器704の出力をバッファメモリ
705に書き込む。
First, the operation when performing inverse quantization and inverse DCT
Explain the work. In the first stage processing, the quantization scale value q
s and weighting factor WijlAnd the multiplication result qs × Wijl
Is written in the buffer memory 705. For the first stage processing
Then, the first two-input selector 701 causes the quantization scale
The weight value qs and select from the weighting coefficient memory 702.
Weighting factor W for which l is determined by the block type
ijlAre sequentially read for i = 0 to 7 and j = 0 to 7,
By the first 3-input selector 703, the weight coefficient memory 7
02 output of weighting factor WijlAnd then the multiplier
According to 704, the quantization scale value qs and the weight coefficient Wijlof
The multiplication is sequentially performed, and the output of the multiplier 704 is stored in the buffer memory.
Write to 705.

【0054】第2段階の処理ではバッファメモリ705
に格納されたqs×Wijlと逆量子化レベル値Qijkとの
乗算と行方向の1次元逆DCTを行い、その結果をデー
タ転置用メモリ708に書き込む。第2段階の処理にお
いて、逆量子化レベル値Q ijkをi=0〜7,j=0〜
7,k=0〜5について行方向に順次入力し、第1の3
入力セレクタ703により逆量子化レベル値Qijkを選
択し、バッファメモリ705から第1段階の処理で求め
たqs×Wijlを行方向に順次読み出し、第1の2入力
セレクタ701によりバッファメモリ705の出力であ
るqs×Wij lを選択し、乗算器704により逆量子化
レベル値Qijkと量子化スケール値×重み係数の乗算結
果qs×Wijlとのi,jが対応する乗算をi=0〜
7,j=0〜7,k=0〜5について行い、第2の3入
力セレクタ706により乗算器704の出力を選択して
乗算結果Qijk×(qs×Wijl)であるDCT係数を1
次元逆DCT/DCT部707に入力し、1次元逆DC
T/DCT切り換え信号により1次元逆DCTの機能に
選定された1次元逆DCT/DCT部707により8点
1次元逆DCTを行方向に対して1ブロック中の行数8
と1マクロブロック中のブロック数6に対応した8×6
回行い、1次元逆DCT/DCT部707の出力をデー
タ転置用メモリ708に行方向に書き込む。
In the second stage processing, the buffer memory 705
Qs × W stored inijlAnd the inverse quantization level value QijkWith
Multiplies and performs one-dimensional inverse DCT in the row direction and outputs the result.
The data is written in the transposing memory 708. For the second stage processing
And the inverse quantization level value Q ijkI = 0 to 7, j = 0
7, k = 0 to 5 are sequentially input in the row direction, and the first 3
Inverse quantization level value Q by input selector 703ijkChoose
Selected from the buffer memory 705 in the first stage processing
Qs × WijlAre sequentially read in the row direction, and the first two inputs
The output of the buffer memory 705 is output by the selector 701.
Qs × Wij l, And inverse quantization by the multiplier 704
Level value QijkAnd quantization scale value x weighting factor
Fruit qs × WijlAnd i, j correspond to multiplications i = 0 to
7, j = 0 to 7, k = 0 to 5 and the second 3
Select the output of the multiplier 704 with the force selector 706.
Multiplication result QijkX (qs x Wijl) Is a DCT coefficient of 1
Input to the three-dimensional inverse DCT / DCT unit 707 and input the one-dimensional inverse DC
1-dimensional inverse DCT function by T / DCT switching signal
8 points by the selected one-dimensional inverse DCT / DCT unit 707
Number of rows in one block for one-dimensional inverse DCT in the row direction is 8
And 8 × 6 corresponding to 6 blocks in one macroblock
The output of the one-dimensional inverse DCT / DCT unit 707.
The data is written in the transposing memory 708 in the row direction.

【0055】第3段階の処理ではデータ転置用メモリ7
08で行と列が転置されたデータを入力とした列方向の
1次元逆DCTを行う。第3段階の処理では、データ転
置用メモリ708から列方向に読み出し、第2の3入力
セレクタ706によりデータ転置用メモリ708の出力
を選択して1次元逆DCT/DCT部707に入力し、
1次元逆DCT/DCT切り換え信号により1次元逆D
CTの機能に選定された1次元逆DCT/DCT部70
7により8点1次元逆DCTを列方向に対して1ブロッ
ク中の列数8と1マクロブロック中のブロック数6に対
応した8×6回行い、第2の2入力セレクタにより1次
元逆DCT/DCT部707の出力結果を選択して逆量
子化・逆DCT/DCT・量子化回路の出力とする。
In the third stage processing, the data transposing memory 7
At 08, the one-dimensional inverse DCT in the column direction is performed using the data in which the rows and columns are transposed as input. In the process of the third stage, the data transposing memory 708 is read in the column direction, the output of the data transposing memory 708 is selected by the second three-input selector 706, and is input to the one-dimensional inverse DCT / DCT unit 707.
1-dimensional inverse DCT / DCT switching signal for 1-dimensional inverse D
One-dimensional inverse DCT / DCT unit 70 selected for CT function
7. The 8-point one-dimensional inverse DCT is performed 8 × 6 times by 7 corresponding to the number of columns in one block and the number of blocks in one macroblock of 6 in the column direction, and the one-dimensional inverse DCT is performed by the second 2-input selector. The output result of the / DCT unit 707 is selected and used as the output of the inverse quantization / inverse DCT / DCT / quantization circuit.

【0056】逆量子化・逆DCTの処理を第1段階、第
2段階、第3段階の順に処理を進めて実現する。
The inverse quantization / inverse DCT processing is realized by proceeding in the order of the first step, the second step, and the third step.

【0057】次に、DCT・量子化を行う場合の動作を
説明する。第1段階の処理では量子化スケール値qs’
と重み係数W’ijlの乗算を行い、乗算結果qs’×
W’ijlをバッファメモリ705に書き込み、行方向の
DCTを行う。第1段階の処理において、第1の2入力
セレクタ701により量子化スケール値qs’を選択
し、重み係数用メモリ702からマクロブロックタイプ
によってlが決定された重み係数W’ijlをi=0〜
7,j=0〜7について順次読み出し、第1の3入力セ
レクタ703により重み係数用メモリ702の出力であ
る重み係数W’ijlを選択し、次に乗算器704により
量子化スケール値qs’と重み係数W’ijlの乗算を順
次行い、乗算器704の出力をバッファメモリ705に
書き込む。
Next, the operation when performing DCT / quantization will be described. In the first stage processing, the quantization scale value qs'
And the weighting coefficient W ′ ijl are multiplied, and the multiplication result qs ′ ×
W ′ ijl is written in the buffer memory 705, and DCT in the row direction is performed. In the processing of the first stage, the first two-input selector 701 selects the quantization scale value qs ′, and the weighting coefficient W ′ ijl for which 1 is determined by the macroblock type is selected from the weighting coefficient memory 702 at i = 0 to 0.
7, j = 0 to 7 are sequentially read, the first 3-input selector 703 selects the weighting coefficient W ′ ijl which is the output of the weighting coefficient memory 702, and the multiplier 704 outputs the quantization scale value qs ′. The weighting factors W ′ ijl are sequentially multiplied, and the output of the multiplier 704 is written in the buffer memory 705.

【0058】第2段階の処理では入力データに対して行
方向の1次元DCTを行い、データ転置用メモリ708
に書き込む。第2段階の処理において、入力データg
ijkをi=0〜7,j=0〜7,k=0〜5について行
方向に順次入力し、第2の3入力セレクタ706により
入力データを選択して1次元逆DCT/DCT部707
に入力し、1次元逆DCT/DCT切り換え信号により
1次元DCTの機能に選定された1次元逆DCT/DC
T部707により8点1次元DCTを行方向に対して1
ブロック中の行数8と1マクロブロック中のブロック数
6に対応した8×6回行い、1次元逆DCT/DCT部
707の出力をデータ転置用メモリ708に行方向に書
き込む。
In the second-stage processing, row-direction one-dimensional DCT is performed on the input data, and the data transposing memory 708 is used.
Write in. In the processing of the second stage, input data g
ijk is sequentially input in the row direction for i = 0 to 7, j = 0 to 7, k = 0 to 5, and input data is selected by the second three-input selector 706 to select the one-dimensional inverse DCT / DCT unit 707.
1-dimensional inverse DCT / DC selected by the 1-dimensional inverse DCT / DCT switching signal for the function of 1-dimensional DCT
Eight-point one-dimensional DCT is set to 1 in the row direction by the T unit 707.
The output of the one-dimensional inverse DCT / DCT unit 707 is written in the row direction in the data transposing memory 708 by performing 8 × 6 times corresponding to the number of rows in a block and the number of blocks in one macroblock.

【0059】第3段階の処理ではデータ転置用メモリ7
08で行と列が転置されたデータを入力とした列方向の
1次元DCTを行ってDCT係数fijkを得、バッファ
メモリ705に格納されたqs’×W’ijlとDCT係
数fijkとの乗算を行い、その結果をDCT・量子化回
路の出力とする。第3段階の処理において、データ転置
用メモリ708から列方向に読み出し、第2の3入力セ
レクタ706によりデータ転置用メモリ708の出力を
選択して1次元逆DCT/DCT部707に入力し、1
次元逆DCT/DCT切り換え信号により1次元DCT
の機能に選定された1次元逆DCT/DCT部707に
より8点1次元DCTを列方向に対して1ブロック中の
列数8と1マクロブロック中のブロック数6に対応した
8×6回行いDCT係数fijkをi=0〜7,j=0〜
7,k=0〜5について行方向に順次得、第1の3入力
セレクタ703により1次元逆DCT/DCT部707
の出力を選択してDCT係数fijkを得、バッファメモ
リ705から第1段階の処理で求めたqs’×W’ijl
を列方向に順次読み出し、第1の2入力セレクタ701
によりバッファメモリ705の出力であるqs’×W’
ijlを選択し、乗算器704によりDCT係数fijkと量
子化スケール値×重み係数の乗算結果qs’×W’ijl
とのi,jが対応する乗算をi=0〜7,j=0〜7,
k=0〜5について行い、第2の2入力セレクタ709
により乗算器704の出力を選択して乗算結果fijk×
(qs’×W’ijl)を逆量子化・逆DCT/DCT・
量子化回路の出力とする。
In the third stage processing, the data transposing memory 7
In step 08, the one-dimensional DCT in the column direction is performed using the data in which the rows and columns are transposed as input to obtain the DCT coefficient f ijk, and qs ′ × W ′ ijl stored in the buffer memory 705 and the DCT coefficient f ijk The multiplication is performed, and the result is used as the output of the DCT / quantization circuit. In the process of the third step, the data is read from the data transposing memory 708 in the column direction, the output of the data transposing memory 708 is selected by the second three-input selector 706, and is input to the one-dimensional inverse DCT / DCT unit 707.
One-dimensional DCT by three-dimensional inverse DCT / DCT switching signal
The one-dimensional inverse DCT / DCT unit 707 selected for the function performs eight-point one-dimensional DCT 8 × 6 times in the column direction corresponding to the number of columns in one block and the number of blocks in one macroblock. The DCT coefficient f ijk is i = 0 to 7, j = 0
7, k = 0 to 5 are sequentially obtained in the row direction, and the first three-input selector 703 operates the one-dimensional inverse DCT / DCT unit 707.
Output is selected to obtain the DCT coefficient f ijk, and qs ′ × W ′ ijl obtained from the buffer memory 705 in the first stage processing.
Are sequentially read out in the column direction, and the first 2-input selector 701
Output qs '× W' of the buffer memory 705
ijl is selected, and the multiplier 704 multiplies the DCT coefficient f ijk by the quantization scale value × weighting coefficient qs ′ × W ′ ijl.
And i, j correspond to multiplications i = 0 to 7, j = 0 to 7,
The second 2-input selector 709 is performed for k = 0 to 5
The output of the multiplier 704 is selected by and the multiplication result f ijk ×
Inverse quantization / inverse DCT / DCT · (qs ′ × W ′ ijl )
This is the output of the quantization circuit.

【0060】DCT・量子化の処理を第1段階、第2段
階、第3段階の順に処理を進めて実現する。
The DCT / quantization processing is realized by advancing the processing in the order of the first step, the second step, and the third step.

【0061】尚、DCT・量子化の処理で第1段階と第
2段階の処理は互いに演算器が共用されていないので同
時に実行することもできる。さらに逆量子化・逆DCT
の処理とDCT・量子化の処理について実施の形態2と
同様に第2段階と第3段階の処理のデータ処理単位を変
更することができ、実施の形態1で述べたような構成の
一部変更も可能である。
In the DCT / quantization processing, the processings of the first and second steps can be executed at the same time because the arithmetic units are not shared. In addition, inverse quantization and inverse DCT
The data processing unit of the processing of the second stage and the processing of the third stage can be changed in the same manner as in the second embodiment for the processing of 1) and the processing of DCT / quantization, and part of the configuration as described in the first embodiment. It can be changed.

【0062】[0062]

【発明の効果】以上述べたように、本発明によれば、逆
量子化または量子化の乗算回数を減らし乗算器の個数を
減らすことができる。また逆量子化・逆DCT回路また
はDCT・量子化回路の係数バッファメモリを削減し、
データ転置用メモリを削減できる。さらに、逆量子化ま
たは量子化の乗算回数を平均的に減らすことができる。
従って、LSI化する場合に占有面積を削減し、また消
費電流を減らすことができるのでこの実用的効果は大き
い。
As described above, according to the present invention, the number of multiplications for inverse quantization or quantization can be reduced and the number of multipliers can be reduced. Also, the coefficient buffer memory of the inverse quantization / inverse DCT circuit or the DCT / quantization circuit is reduced,
Data transposition memory can be reduced. Further, the number of multiplications for inverse quantization or quantization can be reduced on average.
Therefore, in the case of an LSI, the occupied area can be reduced and the current consumption can be reduced, so that this practical effect is great.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1の実施の形態である逆量子化・逆
DCT回路のブロック構成図
FIG. 1 is a block configuration diagram of an inverse quantization / inverse DCT circuit according to a first embodiment of the present invention.

【図2】圧縮画像符号化データの復号化器のブロック構
成図
FIG. 2 is a block configuration diagram of a decoder for compressed image coded data.

【図3】逆量子化演算の説明図FIG. 3 is an explanatory diagram of an inverse quantization operation.

【図4】本発明の第1の実施の形態及び第2の実施の形
態における演算処理フローの説明図
FIG. 4 is an explanatory diagram of an arithmetic processing flow according to the first and second embodiments of the present invention.

【図5】本発明の第3の実施の形態である逆量子化・逆
DCT回路のブロック構成図
FIG. 5 is a block configuration diagram of an inverse quantization / inverse DCT circuit according to a third embodiment of the present invention.

【図6】本発明の第4の実施の形態であるDCT・量子
化回路のブロック構成図
FIG. 6 is a block configuration diagram of a DCT / quantization circuit according to a fourth embodiment of the present invention.

【図7】本発明の第5の実施の形態である逆量子化・逆
DCT回路/DCT・量子化回路のブロック構成図
FIG. 7 is a block configuration diagram of an inverse quantization / inverse DCT circuit / DCT / quantization circuit according to a fifth embodiment of the present invention.

【図8】従来の逆量子化・逆DCT回路のブロック構成
FIG. 8 is a block configuration diagram of a conventional inverse quantization / inverse DCT circuit.

【符号の説明】[Explanation of symbols]

101 第1のセレクタ 102 重み係数用メモリ 103 第2のセレクタ 104 乗算器 105 バッファメモリ 106 第3のセレクタ 107 1次元逆DCT部 108 データ転置用メモリ 101 first selector 102 Weighting coefficient memory 103 second selector 104 multiplier 105 buffer memory 106 third selector 107 one-dimensional inverse DCT section 108 Data transposing memory

フロントページの続き (72)発明者 中島 弘雅 大阪府門真市大字門真1006番地 松下電 器産業株式会社内 (56)参考文献 特開 平5−145765(JP,A) 特開 平3−140065(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04N 7/24 - 7/68 H04N 1/41 - 1/419 Front page continued (72) Inventor Hiromasa Nakajima 1006 Kadoma, Kadoma City, Osaka Prefecture Matsushita Electric Industrial Co., Ltd. (56) References JP-A-5-145765 (JP, A) JP-A-3-140065 (JP , A) (58) Fields surveyed (Int.Cl. 7 , DB name) H04N 7/ 24-7/68 H04N 1/41-1/419

Claims (7)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 入力データに重み係数と量子化スケール
値を乗算する量子化または逆量子化回路であって、 重み係数を保持し、マクロブロックタイプにより2種類
の係数群から1つの係数群を選択し順次データを出力す
る第1のメモリと、第1及び第2のセレクタと、乗算器
と、乗算結果を保持するための第2のメモリを具備し、 第1のメモリの出力と入力データを第1のセレクタの入
力とし、前記量子化スケール値と第2のメモリの出力を
第2のセレクタの入力とし、第1のセレクタの出力と第
2のセレクタの出力を前記乗算器の入力とし、前記乗算
器の出力を第2のメモリの入力とし、 第1段階の処理において、第1のセレクタにより第1の
メモリから順次読み出される出力を選択し、第2のセレ
クタにより前記量子化スケール値を選択して前記乗算器
に入力して得られた乗算結果を第2のメモリに格納し、 第2段階の処理において、第1のセレクタにより入力デ
ータを選択し、第2のセレクタにより第2のメモリから
順次読み出される出力を選択して前記乗算器に入力して
得られた乗算結果を出力とすることを特徴とする量子化
または逆量子化回路。
1. A quantization or dequantization circuit for multiplying input data by a weighting coefficient and a quantization scale value, which holds the weighting coefficient, and selects one coefficient group from two kinds of coefficient groups according to a macroblock type. The output of the first memory and the input data are provided with a first memory for selecting and sequentially outputting data, first and second selectors, a multiplier, and a second memory for holding a multiplication result. As the input of the first selector, the quantization scale value and the output of the second memory as the input of the second selector, and the output of the first selector and the output of the second selector as the input of the multiplier. , The output of the multiplier is used as an input of the second memory, the first selector selects the output sequentially read from the first memory in the process of the first step, and the second selector selects the quantization scale value. choose Then, the multiplication result obtained by inputting to the multiplier is stored in the second memory, and in the processing of the second stage, the input data is selected by the first selector and the second memory is selected by the second selector. A quantizing or dequantizing circuit, which selects an output sequentially read from the above and outputs the multiplication result obtained by inputting to the multiplier.
【請求項2】 入力データに重み係数と量子化スケール
値を乗算する量子化または逆量子化回路であって、 重み係数を保持し、マクロブロックタイプにより2種類
の係数群から1つの係数群を選択し順次データを出力す
る第1のメモリと、量子化スケールコードと量子化スケ
ールタイプから量子化スケール値を求める量子化スケー
ル値生成部と、第1及び第2のセレクタと、乗算器と、
乗算結果を保持するための第2のメモリと、マクロブロ
ックタイプと量子化スケールコードとピクチャ切り換え
信号を入力とする比較器を具備し、 第1のメモリの出力と入力データを第1のセレクタの入
力とし、前記量子化スケール値生成部の出力と第2のメ
モリの出力を第2のセレクタの入力とし、第1のセレク
タの出力と第2のセレクタの出力を前記乗算器の入力と
し、前記乗算器の出力を第2のメモリの入力とし、 第1段階の処理において、前記比較器により同じピクチ
ャ内において、マクロブロックタイプと量子化スケール
コードの両方とも現在の値と1マクロブロック前の値を
比較した結果、どちらかが異なる場合にのみ、第1のセ
レクタにより第1のメモリから順次読み出される出力を
選択し、第2のセレクタにより前記量子化スケール値を
選択して前記乗算器に入力して得られた乗算結果を第2
のメモリに格納し、 第2段階の処理において、第1のセレクタにより入力デ
ータを選択し、第2のセレクタにより第2のメモリから
順次読み出される出力を選択して前記乗算器に入力して
得られた乗算結果を出力とすることを特徴とする量子化
または逆量子化回路。
2. A quantizing or inverse quantizing circuit for multiplying input data by a weighting coefficient and a quantization scale value, which holds the weighting coefficient, and selects one coefficient group from two kinds of coefficient groups depending on a macroblock type. A first memory for selecting and sequentially outputting data, a quantization scale value generation unit for obtaining a quantization scale value from a quantization scale code and a quantization scale type, first and second selectors, a multiplier,
A second memory for holding a multiplication result and a comparator having a macroblock type, a quantized scale code, and a picture switching signal as an input are provided, and the output of the first memory and the input data are stored in the first selector. The output of the quantization scale value generation unit and the output of the second memory as the input of the second selector, the output of the first selector and the output of the second selector as the input of the multiplier, The output of the multiplier is used as the input of the second memory, and in the first stage processing, both the macroblock type and the quantized scale code in the same picture are processed by the comparator in the current value and the value one macroblock before. Only when either of them is different as a result of comparison, the first selector selects the output sequentially read from the first memory, and the second selector selects the quantum output. A multiplication result obtained by selecting the scale value input to the multiplier second
In the memory of the second stage, and in the second stage processing, the input data is selected by the first selector, the output sequentially read from the second memory is selected by the second selector, and the selected output is input to the multiplier. A quantization or dequantization circuit, which outputs the multiplication result obtained.
【請求項3】 入力データに重み係数と量子化スケール
値を乗算し、2次元逆DCTを施す逆量子化・逆DCT
回路であって、 重み係数を保持し、マクロブロックタイプにより2種類
の係数群から1つの係数群を選択し順次データを出力す
る第1のメモリと、第1及び第2、第3のセレクタと、
乗算器と、乗算結果を保持するための第2のメモリと、
n点1次元逆DCTを行う1次元逆DCT部と、データ
転置用の第3のメモリを具備し、 第1のメモリの出力と入力データを第1のセレクタの入
力とし、前記量子化スケール値と第2のメモリの出力を
第2のセレクタの入力とし、第1のセレクタの出力と第
2のセレクタの出力を前記乗算器の入力とし、前記乗算
器の出力と第3のメモリの出力を第3のセレクタの入力
とし、前記乗算器の出力を第2のメモリの入力とし、第
3のセレクタの出力を前記1次元逆DCT部の入力と
し、前記1次元逆DCT部の出力を第3のメモリの入力
とし、 第1段階の処理において、第1のセレクタにより第1の
メモリから順次読み出される出力を選択し、第2のセレ
クタにより前記量子化スケール値を選択して前記乗算器
に入力し、前記乗算器の出力結果を第2のメモリに格納
し、 第2段階の処理において、第1のセレクタにより入力デ
ータを選択し、第2のセレクタにより第2のメモリから
順次読み出される出力を選択して前記乗算器に入力し、
第3のセレクタにより前記乗算器の出力を選択してその
結果を前記1次元逆DCT部に入力して得られた結果を
第3のメモリに格納し、 第3段階の処理において、第3のセレクタにより行方向
と列方向を入れ替えて読み出された第3のメモリの出力
を選択して前記1次元逆DCT部に入力して得られた結
果を出力とすることを特徴とする逆量子化・逆DCT回
路。
3. An inverse quantization / inverse DCT for multiplying input data by a weighting coefficient and a quantization scale value and performing a two-dimensional inverse DCT.
A first memory for holding a weighting coefficient, selecting one coefficient group from two kinds of coefficient groups according to a macroblock type, and sequentially outputting data; a first memory, a second memory, and a third selector; ,
A multiplier and a second memory for holding the multiplication result,
A one-dimensional inverse DCT unit for performing n-point one-dimensional inverse DCT and a third memory for data transposition are provided, and the output of the first memory and the input data are used as the input of the first selector, and the quantization scale value is used. And an output of the second memory as an input of the second selector, an output of the first selector and an output of the second selector as an input of the multiplier, and an output of the multiplier and an output of the third memory. The output of the multiplier is input to the second memory, the output of the third selector is input to the one-dimensional inverse DCT unit, and the output of the one-dimensional inverse DCT unit is input to the third selector. In the first stage processing, the first selector selects the output sequentially read from the first memory, the second selector selects the quantization scale value, and inputs it to the multiplier. And the output result of the multiplier The input data is stored in the second memory, the input data is selected by the first selector in the second stage processing, the output sequentially read from the second memory is selected by the second selector, and the output is input to the multiplier. ,
The output of the multiplier is selected by the third selector, the result is input to the one-dimensional inverse DCT unit, the obtained result is stored in the third memory, and the third step is performed in the third step. Inverse quantization, characterized in that the output of the third memory read by switching the row direction and the column direction by the selector is selected and the result obtained by inputting to the one-dimensional inverse DCT unit is output. -Inverse DCT circuit.
【請求項4】 入力データに重み係数と量子化スケール
値を乗算し、2次元逆DCTを施す逆量子化・逆DCT
回路であって、 重み係数を保持し、マクロブロックタイプにより2種類
の係数群から1つの係数群を選択し順次データを出力す
る第1のメモリと、第1及び第2、第3のセレクタと、
乗算器と、乗算結果を保持するための第2のメモリと、
n点1次元逆DCTを行う1次元逆DCT部と、データ
転置用の第3のメモリを具備し、 第1のメモリの出力と入力データを第1のセレクタの入
力とし、前記量子化スケール値と第2のメモリの出力を
第2のセレクタの入力とし、第1のセレクタの出力と第
2のセレクタの出力を前記乗算器の入力とし、前記乗算
器の出力と第3のメモリの出力を第3のセレクタの入力
とし、前記乗算器の出力を第2のメモリの入力とし、第
3のセレクタの出力を前記1次元逆DCT部の入力と
し、前記1次元逆DCT部の出力を第3のメモリの入力
とし、 第1段階の処理において、第1のセレクタにより第1の
メモリから順次読み出される出力を選択し、第2のセレ
クタにより前記量子化スケール値を選択して前記乗算器
に入力し、前記乗算器の出力結果を第2のメモリに格納
し、 第2段階の処理において、第1のセレクタによりNブロ
ック分(Nは1マクロブロック中に含まれるブロックの
個数以下の自然数)の入力データを選択し、第2のセレ
クタにより第2のメモリから順次読み出される出力を選
択して前記乗算器に入力し、第3のセレクタにより前記
乗算器の出力を選択してその結果を前記1次元逆DCT
部に入力して得られた結果を第3のメモリに格納し、 第3段階の処理において、第3のセレクタにより行方向
と列方向を入れ替えて読み出されたNブロック分第3の
メモリの出力を選択して前記1次元逆DCT部に入力し
て得られた結果を出力とし、第2、第3段階の処理をN
ブロック分毎に行なうことすることを特徴とする逆量子
化・逆DCT回路。
4. An inverse quantization / inverse DCT which multiplies input data by a weighting coefficient and a quantization scale value and performs a two-dimensional inverse DCT.
A first memory for holding a weighting coefficient, selecting one coefficient group from two kinds of coefficient groups according to a macroblock type, and sequentially outputting data; a first memory, a second memory, and a third selector; ,
A multiplier and a second memory for holding the multiplication result,
A one-dimensional inverse DCT unit for performing n-point one-dimensional inverse DCT and a third memory for data transposition are provided, and the output of the first memory and the input data are used as the input of the first selector, and the quantization scale value is used. And an output of the second memory as an input of the second selector, an output of the first selector and an output of the second selector as an input of the multiplier, and an output of the multiplier and an output of the third memory. The output of the multiplier is input to the second memory, the output of the third selector is input to the one-dimensional inverse DCT unit, and the output of the one-dimensional inverse DCT unit is input to the third selector. In the first stage processing, the first selector selects the output sequentially read from the first memory, the second selector selects the quantization scale value, and inputs it to the multiplier. And the output result of the multiplier The input data stored in the second memory is selected by the first selector for N blocks (N is a natural number equal to or less than the number of blocks included in one macroblock) in the second process, An output sequentially read from the second memory is selected by the selector and input to the multiplier, and an output of the multiplier is selected by the third selector, and the result is selected as the one-dimensional inverse DCT.
The result obtained by inputting to the section is stored in the third memory, and in the processing of the third stage, N blocks of the third memory which are read out by switching the row direction and the column direction by the third selector are stored. An output is selected and the result obtained by inputting it to the one-dimensional inverse DCT unit is set as an output, and the second and third stage processing is performed as N
An inverse quantization / inverse DCT circuit, which is performed for each block.
【請求項5】 入力データに2次元DCTを施し、重み
係数と量子化スケール値を乗算するDCT・量子化回路
であって、 重み係数を保持し、マクロブロックタイプにより2種類
の係数群から1つの係数群を選択し順次データを出力す
る第1のメモリと、第1及び第2、第3のセレクタと、
乗算器と、乗算結果を保持するための第2のメモリと、
n点1次元DCTを行う1次元DCT部と、データ転置
用の第3のメモリを具備し、 第1のメモリの出力と前記1次元DCT部の出力を第1
のセレクタの入力とし、前記量子化スケール値と第2の
メモリの出力を第2のセレクタの入力とし、第1のセレ
クタの出力と第2のセレクタの出力を前記乗算器の入力
とし、入力データと第3のメモリの出力を第3のセレク
タの入力とし、第3のセレクタの出力を前記1次元DC
T部の入力とし、前記1次元DCT部の出力を第3のメ
モリの入力とし、前記乗算器の出力を第2のメモリの入
力とし、 第1段階の処理において、第1のセレクタにより第1の
メモリから順次読み出される出力を選択し、第2のセレ
クタにより前記量子化スケール値を選択して前記乗算器
に入力してその結果を第2のメモリに格納し、第3のセ
レクタにより入力データを選択してその結果を前記1次
元DCT部に入力して得られた結果を第3のメモリに格
納し、 第2段階の処理において、第3のセレクタにより行方向
と列方向を入れ替えて読み出された第3のメモリの出力
を選択して前記1次元DCT部に入力し、第1のセレク
タにより前記1次元DCT部の出力を選択し、第2のセ
レクタにより第2のメモリの出力を選択し、前記乗算器
によって得られた結果を出力とすることを特徴とするD
CT・量子化回路。
5. A DCT / quantization circuit that applies two-dimensional DCT to input data and multiplies a weighting coefficient by a quantization scale value, holds a weighting coefficient, and selects from one of two types of coefficient groups depending on a macroblock type. A first memory that selects one coefficient group and sequentially outputs data; first, second, and third selectors;
A multiplier and a second memory for holding the multiplication result,
A one-dimensional DCT unit for performing n-point one-dimensional DCT and a third memory for data transposition are provided, and the output of the first memory and the output of the one-dimensional DCT unit are
The input of the quantization scale value and the output of the second memory as the input of the second selector, and the output of the first selector and the output of the second selector as the input of the multiplier, And the output of the third memory as the input of the third selector, and the output of the third selector as the one-dimensional DC
The input of the T section, the output of the one-dimensional DCT section is the input of the third memory, the output of the multiplier is the input of the second memory, and the first selector selects the first Output sequentially read from the memory, the second selector selects the quantization scale value, inputs it to the multiplier, stores the result in the second memory, and outputs the input data by the third selector. Is selected, the result is input to the one-dimensional DCT unit, the result obtained is stored in the third memory, and in the processing of the second stage, the third selector switches the row direction and the column direction to read. The output of the output third memory is selected and input to the one-dimensional DCT unit, the output of the one-dimensional DCT unit is selected by the first selector, and the output of the second memory is output by the second selector. Select the multiplier D, wherein Accordingly the results obtained to the output
CT / quantization circuit.
【請求項6】 入力データに2次元DCTを施し、重み
係数と量子化スケール値を乗算するDCT・量子化回路
であって、 重み係数を保持し、マクロブロックタイプにより2種類
の係数群から1つの係数群を選択し順次データを出力す
る第1のメモリと、第1及び第2、第3のセレクタと、
乗算器と、乗算結果を保持するための第2のメモリと、
n点1次元DCTを行う1次元DCT部と、データ転置
用の第3のメモリを具備し、 第1のメモリの出力と前記1次元DCT部の出力を第1
のセレクタの入力とし、前記量子化スケール値と第2の
メモリの出力を第2のセレクタの入力とし、第1のセレ
クタの出力と第2のセレクタの出力を前記乗算器の入力
とし、入力データと第3のメモリの出力を第3のセレク
タの入力とし、第3のセレクタの出力を前記1次元DC
T部の入力とし、前記1次元DCT部の出力を第3のメ
モリの入力とし、前記乗算器の出力を第2のメモリの入
力とし、 第1段階の処理において、第1のセレクタにより第1の
メモリから順次読み出される出力を選択し、第2のセレ
クタにより前記量子化スケール値を選択して前記乗算器
に入力してその結果を第2のメモリに格納し、 第2段階の処理において、第3のセレクタによりNブロ
ック分(Nは1マクロブロック中に含まれるブロックの
個数以下の自然数)の入力データを選択してその結果を
前記1次元DCT部に入力して得られた結果を第3のメ
モリに格納し、 第3段階の処理において、第3のセレクタにより行方向
と列方向を入れ替えて読み出されたNブロック分の第3
のメモリの出力を選択して前記1次元DCT部に入力
し、第1のセレクタにより前記1次元DCT部の出力を
選択し、第2のセレクタにより第2のメモリの出力を選
択し、前記乗算器によって得られた結果を出力とし、第
2、第3段階の処理をNブロック分毎に行なうことを特
徴とするDCT・量子化回路。
6. A DCT / quantization circuit that applies two-dimensional DCT to input data and multiplies a weighting coefficient by a quantization scale value, holds a weighting coefficient, and selects one from two types of coefficient groups depending on a macroblock type. A first memory that selects one coefficient group and sequentially outputs data; first, second, and third selectors;
A multiplier and a second memory for holding the multiplication result,
A one-dimensional DCT unit for performing n-point one-dimensional DCT and a third memory for data transposition are provided, and the output of the first memory and the output of the one-dimensional DCT unit are
The input of the quantization scale value and the output of the second memory as the input of the second selector, and the output of the first selector and the output of the second selector as the input of the multiplier, And the output of the third memory as the input of the third selector, and the output of the third selector as the one-dimensional DC
The input of the T section, the output of the one-dimensional DCT section is the input of the third memory, the output of the multiplier is the input of the second memory, and the first selector selects the first Of the output sequentially read from the memory, the second selector selects the quantization scale value, inputs it to the multiplier, stores the result in the second memory, and in the second-stage processing, The third selector selects N blocks of input data (N is a natural number equal to or less than the number of blocks included in one macroblock), inputs the result to the one-dimensional DCT unit, and outputs the result. No. 3 of the N blocks stored in the memory No. 3 and read in the third step by switching the row direction and the column direction by the third selector.
Output of the memory of 1) is input to the one-dimensional DCT unit, the output of the one-dimensional DCT unit is selected by the first selector, the output of the second memory is selected by the second selector, and the multiplication is performed. A DCT / quantization circuit, wherein the result obtained by the converter is used as an output, and the second and third stage processing is performed every N blocks.
【請求項7】 入力データに重み係数と量子化スケール
値を乗算し、2次元逆DCTを施す逆量子化・逆DCT
処理を行い、入力データに2次元DCTを施し、重み係
数と量子化スケール値を乗算するDCT・量子化処理を
行う逆量子化・逆DCT/DCT・量子化回路であっ
て、 重み係数を保持し、マクロブロックタイプと切り換え信
号により4種類の係数群から1つの係数群を選択し順次
データを出力する第1のメモリと、第1及び第2の2入
力セレクタと第1及び第2の3入力セレクタと、乗算器
と、乗算結果を保持するための第2のメモリと、切り換
え信号によりn点1次元逆DCTとn点1次元DCT処
理を選択できる1次元逆DCT/DCT部と、データ転
置用の第3のメモリを具備し、 第1のメモリの出力と入力データと1次元逆DCT/D
CT部の出力を第1の3入力セレクタの入力とし、前記
量子化スケール値と第2のメモリの出力を第1の2入力
セレクタの入力とし、第1の3入力セレクタの出力と第
1の2入力セレクタの出力を前記乗算器の入力とし、前
記乗算器の出力と第3のメモリの出力と入力データを第
2の3入力セレクタの入力とし、前記乗算器の出力を第
2のメモリの入力とし、第2の3入力セレクタの出力を
前記1次元逆DCT/DCT部の入力とし、前記1次元
逆DCT/DCT部の出力を第3のメモリの入力とし、
前記乗算器の出力と前記1次元逆DCT/DCT部の出
力を第2の2入力セレクタの入力とし、 逆量子化・逆DCT処理の場合に、 第1段階の処理において、第1のメモリからマクロブロ
ックタイプと切り換え信号により決定された逆量子化用
の重み係数を順次読み出し、第1の3入力セレクタによ
り第1のメモリの出力を選択し、第1の2入力セレクタ
により前記量子化スケール値を選択して前記乗算器に入
力し、前記乗算器の出力結果を第2のメモリに格納し、 第2段階の処理において、第1の3入力セレクタにより
入力データを選択し、第1の2入力セレクタにより第2
のメモリから順次読み出される出力を選択して前記乗算
器に入力し、第2の3入力セレクタにより前記乗算器の
出力を選択してその結果を切り換え信号により1次元逆
DCTの機能を選定された前記1次元逆DCT/DCT
部に入力して得られた結果を第3のメモリに格納し、 第3段階の処理において、第2の3入力セレクタにより
行方向と列方向を入れ替えて読み出された第3のメモリ
の出力を選択して切り換え信号により1次元逆DCTの
機能を選定された前記1次元逆DCT/DCT部に入力
して第2の2入力セレクタにより前記1次元逆DCT/
DCT部の出力を選択して得られた結果を出力とし、 DCT・量子化処理の場合に、 第1段階の処理において、第1のメモリからマクロブロ
ックタイプと切り換え信号により決定された量子化用の
重み係数を順次読み出し、第1の3入力セレクタにより
第1のメモリの出力を選択し、第1の2入力セレクタに
より前記量子化スケール値を選択して前記乗算器に入力
してその結果を第2のメモリに格納し、第2の3入力セ
レクタにより入力データを選択してその結果を切り換え
信号により1次元DCTの機能を選定された前記1次元
逆DCT/DCT部に入力して得られた結果を第3のメ
モリに格納し、 第2段階の処理において、第2の3入力セレクタにより
行方向と列方向を入れ替えて読み出された第3のメモリ
の出力を選択して切り換え信号により1次元DCTの機
能を選定された前記1次元逆DCT/DCT部に入力
し、第1の3入力セレクタにより前記1次元逆DCT/
DCT部の出力を選択し、第1の2入力セレクタにより
第2のメモリの出力を選択し、第2の2入力セレクタに
より前記乗算器の出力を選択して得られた結果を出力と
することを特徴とする逆量子化・逆DCT/DCT・量
子化回路。
7. An inverse quantization / inverse DCT for multiplying input data by a weighting coefficient and a quantization scale value and performing a two-dimensional inverse DCT.
It is a DCT that performs processing, performs two-dimensional DCT on input data, and multiplies a weighting coefficient by a quantization scale value, an inverse quantization, an inverse DCT / DCT, and a quantization circuit that performs quantization processing, and retains the weighting coefficient. Then, a first memory that selects one coefficient group from four types of coefficient groups according to the macroblock type and the switching signal and sequentially outputs data, a first and a second 2-input selector, and a first and a second 3 An input selector, a multiplier, a second memory for holding a multiplication result, a one-dimensional inverse DCT / DCT unit capable of selecting n-point one-dimensional inverse DCT and n-point one-dimensional DCT processing by a switching signal, and data. A third memory for transposition is provided, and output and input data of the first memory and one-dimensional inverse DCT / D
The output of the CT unit is the input of the first 3-input selector, the quantization scale value and the output of the second memory are the inputs of the first 2-input selector, and the output of the first 3-input selector and the first The output of the 2-input selector is used as the input of the multiplier, the output of the multiplier, the output of the third memory and the input data are used as the input of the second 3-input selector, and the output of the multiplier is used as the output of the second memory. The input of the second three-input selector is the input of the one-dimensional inverse DCT / DCT unit, and the output of the one-dimensional inverse DCT / DCT unit is the input of the third memory,
The output of the multiplier and the output of the one-dimensional inverse DCT / DCT unit are used as the inputs of the second two-input selector, and in the case of inverse quantization / inverse DCT processing, in the first stage processing, from the first memory The dequantization weighting factors determined by the macroblock type and the switching signal are sequentially read, the output of the first memory is selected by the first 3-input selector, and the quantization scale value is selected by the first 2-input selector. Is input to the multiplier, the output result of the multiplier is stored in the second memory, and the input data is selected by the first 3-input selector in the second stage processing, and the first 2 Second by input selector
The output sequentially read out from the memory is selected and input to the multiplier, the output of the multiplier is selected by the second 3-input selector, and the result is selected as the one-dimensional inverse DCT function by the switching signal. The one-dimensional inverse DCT / DCT
The result obtained by inputting to the section is stored in the third memory, and in the processing of the third stage, the output of the third memory read by the second three-input selector with the row direction and the column direction switched. Is selected and the function of the one-dimensional inverse DCT is input to the selected one-dimensional inverse DCT / DCT unit by the switching signal, and the second two-input selector selects the one-dimensional inverse DCT /
The output obtained by selecting the output of the DCT section is used as the output. In the case of the DCT / quantization processing, the quantization for the quantization determined by the macroblock type and the switching signal from the first memory in the first stage processing. Sequentially read out the weighting factors of, the first 3-input selector selects the output of the first memory, the first 2-input selector selects the quantization scale value, and inputs the result to the multiplier. The data is stored in the second memory, the input data is selected by the second 3-input selector, and the result is input to the selected one-dimensional inverse DCT / DCT unit by the switching signal. The result is stored in the third memory, and in the second stage processing, the output of the third memory read by switching the row direction and the column direction by the second 3-input selector is selected and switched. 1D the function is selected the DCT type to the one-dimensional inverse DCT / DCT unit, the first 3 wherein the input selector one-dimensional inverse DCT by No. /
Selecting the output of the DCT section, selecting the output of the second memory by the first two-input selector, and selecting the output of the multiplier by the second two-input selector, and using the result obtained as the output. An inverse quantization / inverse DCT / DCT / quantization circuit characterized by:
JP22810596A 1996-08-29 1996-08-29 Inverse quantization and inverse DCT circuit Expired - Fee Related JP3385866B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22810596A JP3385866B2 (en) 1996-08-29 1996-08-29 Inverse quantization and inverse DCT circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22810596A JP3385866B2 (en) 1996-08-29 1996-08-29 Inverse quantization and inverse DCT circuit

Publications (2)

Publication Number Publication Date
JPH1070721A JPH1070721A (en) 1998-03-10
JP3385866B2 true JP3385866B2 (en) 2003-03-10

Family

ID=16871286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22810596A Expired - Fee Related JP3385866B2 (en) 1996-08-29 1996-08-29 Inverse quantization and inverse DCT circuit

Country Status (1)

Country Link
JP (1) JP3385866B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4592185B2 (en) * 1998-05-04 2010-12-01 ジェネラル・インスツルメント・コーポレイション Method and apparatus for inverse quantization of MPEG-4 video
KR100703799B1 (en) 2005-07-19 2007-04-06 삼성전자주식회사 unquantization method, unqauntization apparatus, method and apparatus for video decoding using the unquantization method

Also Published As

Publication number Publication date
JPH1070721A (en) 1998-03-10

Similar Documents

Publication Publication Date Title
JP4425561B2 (en) 2-D conversion for image and video coding
US5299025A (en) Method of coding two-dimensional data by fast cosine transform and method of decoding compressed data by inverse fast cosine transform
KR960003648B1 (en) Devices and method of dealing picture data
US5371611A (en) Method for and system of decoding compressed continuous-tone digital image data
KR100944928B1 (en) Apparatus and method for encoding and computing a discrete cosine transform using a butterfly processor
US6181831B1 (en) Spatial frequency-domain video signal processing
JPH09212484A (en) Discrete cosine transformation method
US20040258320A1 (en) Data transform processing apparatus and method
JP3385866B2 (en) Inverse quantization and inverse DCT circuit
JPH07143488A (en) Method and device for decoding image data
EP0686940B1 (en) Image processing systems and methods
US6111989A (en) 1/4 size real time decoding of digital video
JPH0844708A (en) Two-dimensional discrete cosine transform arithmetic circuit
Elbadri et al. Hardware support of JPEG
US6279062B1 (en) System for reducing data transmission between coprocessors in a video compression/decompression environment by determining logical data elements of non-zero value and retrieving subset of the logical data elements
JPH10111792A (en) Picture processor
JPH08307868A (en) Moving image decoder
JP2802158B2 (en) Inverse orthogonal transform method and inverse orthogonal transform circuit
JPH08180194A (en) Method and device for coding
JP2845098B2 (en) Decoding method and apparatus for multi-level image compression code
JPH10116267A (en) Arithmetic unit and information processor
JPH08289290A (en) Image reproducing device
JP3954032B2 (en) Image coding apparatus, image coding method, image coding program, and computer-readable recording medium on which image coding program is recorded
JP3371481B2 (en) Digital arithmetic unit
JPH04211575A (en) Orthogonal convertion operation device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees