JPH10207867A - Dct circuit - Google Patents
Dct circuitInfo
- Publication number
- JPH10207867A JPH10207867A JP681397A JP681397A JPH10207867A JP H10207867 A JPH10207867 A JP H10207867A JP 681397 A JP681397 A JP 681397A JP 681397 A JP681397 A JP 681397A JP H10207867 A JPH10207867 A JP H10207867A
- Authority
- JP
- Japan
- Prior art keywords
- dct
- signal
- matrix
- operation unit
- matrix operation
- 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.)
- Pending
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Complex Calculations (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明はデジタル画像圧縮技
術に使用される符号化回路に関し、より詳細には2次元
DCT(Discrete Cosine Transform )演算するための
DCT回路に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an encoding circuit used in digital image compression technology, and more particularly to a DCT circuit for performing a two-dimensional DCT (Discrete Cosine Transform) operation.
【0002】[0002]
【従来の技術】MPEG2では、画面(ピクチャ)にフ
レームを割り当てるフレーム構造とフィールドを割り当
てるフィールド構造が混在して取り扱われる。従って符
号化回路に含まれるDCT回路は、フレーム構造に対す
るDCT、即ち、フレームDCTとフィールド構造に対
するDCT、即ち、フィールドDCTの両者に対応する
ことができるように構成される。2. Description of the Related Art In MPEG2, a frame structure for allocating a frame to a picture (picture) and a field structure for allocating a field are mixed and handled. Therefore, the DCT circuit included in the encoding circuit is configured to be able to support both the DCT for the frame structure, that is, both the frame DCT and the DCT for the field structure, that is, the field DCT.
【0003】フレームDCTもフィールドDCTも、共
にブロックサイズは8×8(画素)である。ところで、
8×8サイズのDCTをフレームにて実行すると実際の
画面でもブロックサイズは8×8となるが、8×8サイ
ズのDCTをフィールドにて実行すると実際の画面では
ブロックサイズが16×8の縦長となる。実際の画面上
のブロックサイズが8を超えると、画質の劣化が目立
つ。[0003] Both the frame DCT and the field DCT have a block size of 8 x 8 (pixels). by the way,
When an 8 × 8 size DCT is executed on a frame, the block size becomes 8 × 8 even on an actual screen, but when an 8 × 8 size DCT is executed on a field, the block size is 16 × 8 vertically on an actual screen. Becomes When the actual block size on the screen exceeds 8, the deterioration of image quality is conspicuous.
【0004】従って、8×8サイズのDCT(8×8D
CTと称する。)をフィールドにて実行する場合には、
8×4サイズのDCT(8×4DCTと称する。)に切
り換えて実行することが好ましい。Accordingly, an 8 × 8 DCT (8 × 8D
Called CT. ) In the field,
It is preferable to switch to a DCT of 8 × 4 size (referred to as 8 × 4 DCT) for execution.
【0005】[0005]
【発明が解決しようとする課題】従来のDCT回路に
て、上述のように、フレームDCTは8×8DCTであ
り、フィールドDCTは8×4DCTである場合には、
フレームDCT用のDCT回路とフィールドDCT用の
DCT回路を別個に供える必要があった。しかしなが
ら、それでは回路規模が大きくなる欠点がある。In the conventional DCT circuit, as described above, when the frame DCT is 8 × 8 DCT and the field DCT is 8 × 4 DCT,
It was necessary to provide a DCT circuit for frame DCT and a DCT circuit for field DCT separately. However, this has the disadvantage of increasing the circuit scale.
【0006】本発明は斯かる点に鑑み、フレーム構造及
びフィールド構造に対応したDCT回路を提供すること
を目的とする。[0006] In view of the above, it is an object of the present invention to provide a DCT circuit corresponding to a frame structure and a field structure.
【0007】本発明は斯かる点に鑑み、フレーム構造及
びフィールド構造に対応したより簡単な構成の2次元D
CT回路を提供することを目的とする。In view of the above, the present invention provides a two-dimensional D having a simpler structure corresponding to a frame structure and a field structure.
An object is to provide a CT circuit.
【0008】[0008]
【課題を解決するための手段】本発明によると、DCT
回路は、入力データをDCT演算するためのDCT演算
部と8×8DCT又は8×4DCTのいずれかを指示す
るセレクト信号を発生し該信号をDCT演算部に供給す
るDCTコントローラとを有し、DCT演算部に含まれ
る加算器、乗算器及びメモリは8×8DCTと8×4D
CTの両者に対して共用することができるように構成さ
れている。According to the present invention, a DCT is provided.
The circuit has a DCT operation unit for performing a DCT operation on input data, and a DCT controller that generates a select signal indicating one of 8 × 8 DCT and 8 × 4 DCT and supplies the signal to the DCT operation unit. The adder, multiplier and memory included in the operation unit are 8 × 8 DCT and 8 × 4D
It is configured so that it can be shared by both CTs.
【0009】[0009]
【発明の実施の形態】先ず本発明にて用いられる2次元
DCT演算のアルゴリズムを説明する。2次元DCT演
算は次の式に示すように、64行64列の直交行列の6
つの積によって表される。DESCRIPTION OF THE PREFERRED EMBODIMENTS First, an algorithm of a two-dimensional DCT operation used in the present invention will be described. As shown in the following equation, the two-dimensional DCT operation is performed by using an orthogonal matrix of 64 rows and 64 columns.
Represented by the product of two.
【0010】[0010]
【数1】COUT =〔T3〕〔M〕〔A2〕〔T2〕〔A
1〕〔T1〕XIN ## EQU1 ## C OUT = [T3] [M] [A2] [T2] [A
1] [T1] X IN
【0011】この逆変換演算IDCTは64行64列の
転置行列の6つの積によって次のように表される。The inverse transform operation IDCT is expressed as follows by six products of a transposition matrix of 64 rows and 64 columns.
【0012】[0012]
【数2】XIN=〔T3〕T 〔M〕T 〔A2〕T 〔T2〕
T 〔A1〕T 〔T1〕T COUT X IN = [T3] T [M] T [A2] T [T2]
T [A1] T [T1] T C OUT
【0013】XIN、COUT は入力及び出力データを表す
行列である。〔T1〕〔T2〕〔T3〕は、データの並
び換えをする行列であり、DCT回路ではメモリ(RA
M)によって実行される。〔A1〕〔A2〕は0、1、
−1のみで構成された行列であり、DCT回路では加算
器によって演算される。〔M〕は三角関数に起因する実
数を係数として乗算する行列であり、DCT回路では乗
算器によって実行される。X IN and C OUT are matrices representing input and output data. [T1], [T2], and [T3] are matrices for rearranging data.
M). [A1] [A2] is 0, 1,
This is a matrix composed of only −1, and is calculated by an adder in the DCT circuit. [M] is a matrix for multiplying a real number resulting from a trigonometric function as a coefficient, and is executed by a multiplier in the DCT circuit.
【0014】8×8DCTの場合も8×4DCTの場合
も、DCT演算及びIDCT演算は数1の式及び数2の
式によってなされ、各行列は64行64列であり、0で
ない有効係数の位置は同じ位置にある。これについて以
下に説明する。以下にブロックサイズが8×8の場合及
び8×4の場合にそれぞれ添字8×8及び8×4を付し
て示す。In both the 8 × 8 DCT and the 8 × 4 DCT, the DCT operation and the IDCT operation are performed according to the equations (1) and (2). Are in the same position. This will be described below. In the following, the case where the block size is 8 × 8 and the case where the block size is 8 × 4 are indicated by adding the suffixes 8 × 8 and 8 × 4, respectively.
【0015】(1)Tマトリックス 行列〔T1〕〔T2〕〔T3〕はデータの並ベ換えをす
る。データの並べ替えの内容を知るために、入力データ
Xを次のように仮定する。(1) T matrix The matrices [T1], [T2] and [T3] are used to rearrange the data. In order to know the contents of the data rearrangement, the input data X is assumed as follows.
【0016】[0016]
【数3】XIN=(0,1,2,3,4,5,6,7,8,9,10,11,12,13,1
4,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,4
7,48,49,50,51,52,53,54,56,57,58,59,60,61,62,63)X IN = (0,1,2,3,4,5,6,7,8,9,10,11,12,13,1
4,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,4
7,48,49,50,51,52,53,54,56,57,58,59,60,61,62,63)
【0017】ここに0〜31はフィールド1(8h×4
v)、32〜63はフィールド2(8h×4v)の画像
ブロックのデータを示す。Here, 0 to 31 correspond to field 1 (8h × 4
v) and 32 to 63 indicate image block data of field 2 (8h × 4v).
【0018】8×8DCTの場合、入力データXINを行
列〔T1〕8X8 によって並べ替えると次のようになる。In the case of 8 × 8 DCT, the following is obtained by rearranging the input data X IN by the matrix [T1] 8 × 8.
【0019】[0019]
【数4】COUT =〔T1〕8X8 XIN=(0,7,56,63,1,6,
57,62,2,5,58,61,3,4,59,60,32,39,24,31,33,38,25,30,
34,37,26,29,35,36,27,28,8,15,48,55,9,14,49,54,10,1
3,50,53,11,12,51,52,40,47,16,23,41,46,17,22,42,45,
18,21,43,44,19,20 )## EQU4 ## C OUT = [T1] 8X8 X IN = (0,7,56,63,1,6,
57,62,2,5,58,61,3,4,59,60,32,39,24,31,33,38,25,30,
34,37,26,29,35,36,27,28,8,15,48,55,9,14,49,54,10,1
3,50,53,11,12,51,52,40,47,16,23,41,46,17,22,42,45,
18,21,43,44,19,20)
【0020】このようにデータの並び替えだけの演算
は、数3の式のXINの値をメモリ(RAM)のライトア
ドレスに書き込み、数4の式のCOUT の値をメモリ(R
AM)のリードアドレスより読み出すことによって実行
される。As described above, in the operation only for rearranging the data, the value of X IN in the equation (3) is written to the write address of the memory (RAM), and the value of C OUT in the equation (4) is stored in the memory (R).
AM) is executed by reading from the read address.
【0021】同様に、入力データXINを行列〔T2〕
8X8 、〔T3〕8X8 によって並べ替えると次のようにな
る。Similarly, the input data X IN is converted into a matrix [T2]
8X8 , [T3] Rearrangement by 8X8 is as follows.
【0022】[0022]
【数5】COUT =〔T2〕8X8 XIN=(0,60,4,56,8,5
2,12,48,16,44,20,40,24,36,28,32,13,61,29,45,9,57,2
5,41,5,53,21,37,1,49,17,33,50,62,54,58,34,46,38,4
2,18,30,22,26,2,14,6,10,63,3,59,7,55,11,51,47,19,4
3,23,39,27,35,31) COUT =〔T3〕8X8 XIN=(0,16,32,8,48,12,17,39,
23,33,1,52,4,57,2,18,44,27,43,28,34,9,56,14,49,10,
54,13,19,41,24,45,29,40,25,35,60,6,61,3,62,7,63,2
0,38,30,46,22,36,53,11,50,15,59,31,37,21,47,58,5,5
5,26,42,51 )## EQU5 ## C OUT = [T2] 8X8 X IN = (0,60,4,56,8,5
2,12,48,16,44,20,40,24,36,28,32,13,61,29,45,9,57,2
5,41,5,53,21,37,1,49,17,33,50,62,54,58,34,46,38,4
2,18,30,22,26,2,14,6,10,63,3,59,7,55,11,51,47,19,4
3,23,39,27,35,31) C OUT = [T3] 8X8 X IN = (0,16,32,8,48,12,17,39,
23,33,1,52,4,57,2,18,44,27,43,28,34,9,56,14,49,10,
54,13,19,41,24,45,29,40,25,35,60,6,61,3,62,7,63,2
0,38,30,46,22,36,53,11,50,15,59,31,37,21,47,58,5,5
5,26,42,51)
【0023】8×4DCTの場合、入力データXINを行
列〔T1〕8X4 、〔T2〕8X4 、〔T3〕8X4 によって
並べ替えると次のようになる。In the case of 8 × 4 DCT, the input data X IN is rearranged by matrices [T1] 8X4 , [T2] 8X4 , [T3] 8X4 as follows.
【0024】[0024]
【数6】COUT =〔T1〕8X4 XIN=(0,7,1,6,2,5,3,
4,8,15,9,14,10,13,11,12,16,23,17,22,18,21,19,20,2
4,31,25,30,26,29,27,28,32,29,33,38,34,37,35,36,40,
47,41,46,42,45,43,44,48,55,49,54,50,53,51,52,56,6
3,57,62,58,61,59,60 ) COUT =〔T2〕8X4 XIN=(0,30,8,22,16,14,24,6,
2,28,10,20,18,12,26,4,7,25,15,17,23,9,31,1,5,27,1
3,19,21,11,29,3,32,62,40,54,48,46,56,38,34,60,42,5
2,50,44,58,36,39,57,47,49,55,41,63,33,37,59,45,51,
53,43,61,35 ) COUT =〔T3〕8X4 XIN=(0,1,8,16,9,2,3,10,17,2
4,25,18,11,4,5,12,19,26,27,20,13,6,7,14,21,28,29,2
2,15,23,30,31,32,33,40,48,41,34,35,42,49,56,57,50,
43,36,37,44,51,58,59,52,45,38,39,46,53,60,61,54,4
7,55,62,63 )C OUT = [T1] 8X4 X IN = (0,7,1,6,2,5,3,
4,8,15,9,14,10,13,11,12,16,23,17,22,18,21,19,20,2
4,31,25,30,26,29,27,28,32,29,33,38,34,37,35,36,40,
47,41,46,42,45,43,44,48,55,49,54,50,53,51,52,56,6
3,57,62,58,61,59,60) C OUT = [T2] 8X4 X IN = (0,30,8,22,16,14,24,6,
2,28,10,20,18,12,26,4,7,25,15,17,23,9,31,1,5,27,1
3,19,21,11,29,3,32,62,40,54,48,46,56,38,34,60,42,5
2,50,44,58,36,39,57,47,49,55,41,63,33,37,59,45,51,
53,43,61,35) C OUT = [T3] 8X4 X IN = (0,1,8,16,9,2,3,10,17,2
4,25,18,11,4,5,12,19,26,27,20,13,6,7,14,21,28,29,2
2,15,23,30,31,32,33,40,48,41,34,35,42,49,56,57,50,
43,36,37,44,51,58,59,52,45,38,39,46,53,60,61,54,4
7,55,62,63)
【0025】(2)Aマトリックス 行列〔A1〕〔A2〕は0、1、−1のみの要素よりな
る。行列〔A1〕は、次に示すように、対角線に沿って
16個の4×4行列〔a1〕0 を含み、他の部分は0で
ある。(2) A matrix The matrix [A1] [A2] is composed of only 0, 1, and -1 elements. The matrix [A1] includes 16 4 × 4 matrices [a1] 0 along the diagonal as shown below, and the other parts are 0.
【0026】[0026]
【数7】 (Equation 7)
【0027】この4×4行列〔a1〕0 は、8×8DC
Tの場合及び8×4DCTの場合、それぞれ次のように
表される。This 4 × 4 matrix [a1] 0 is 8 × 8 DC
In the case of T and the case of 8 × 4 DCT, they are expressed as follows, respectively.
【0028】[0028]
【数8】 (Equation 8)
【0029】行列〔A2〕は、次に示すように、対角線
に沿って4個の16×16行列〔a2〕0 、〔a
2〕1 、〔a2〕2 、〔a2〕3 を含み、他の部分は0
である。The matrix [A2] is composed of four 16 × 16 matrices [a2] 0 , [a
2] 1 , [a2] 2 , [a2] 3 , and the other parts are 0
It is.
【0030】[0030]
【数9】 (Equation 9)
【0031】この4個の16×16行列〔a2〕i (i
=0,1,2,3)は次のように表される。The four 16 × 16 matrices [a2] i (i
= 0, 1, 2, 3) is expressed as follows.
【0032】[0032]
【数10】 (Equation 10)
【0033】この16×16行列〔a2〕i (i=0,
1,2,3)に含まれる4個の8×8行列〔a
211〕i 、〔a212〕i 、〔a221〕i 、〔a222〕i
(i=0,1,2,3)は次のように表される。This 16 × 16 matrix [a2] i (i = 0,
4, 8 × 8 matrix [a
2 11 ] i , [a 2 12 ] i , [a 2 21 ] i , [a 2 22 ] i
(I = 0, 1, 2, 3) is expressed as follows.
【0034】[0034]
【数11】 [Equation 11]
【0035】[0035]
【数12】 (Equation 12)
【0036】[0036]
【数13】 (Equation 13)
【0037】[0037]
【数14】 [Equation 14]
【0038】尚、+は1、−は−1を表す。Note that + represents 1 and-represents -1.
【0039】(3)Mマトリックス 行列〔M〕は、次に示すように、対角線に沿って16個
の4×4行列〔m〕i(i=0,1,2,3・・・1
5)を含み、他の部分は0である。(3) M Matrix The matrix [M] is a 16 × 4 matrix [m] i (i = 0, 1, 2, 3,... 1) along the diagonal as shown below.
5), and the other parts are zero.
【0040】[0040]
【数15】 (Equation 15)
【0041】8×8DCTの場合、この行列〔M〕に含
まれる16個の4×4行列〔m〕i(i=0,1,2,
3・・・15)は、次のように表される。In the case of 8 × 8 DCT, 16 4 × 4 matrices [m] i (i = 0, 1, 2, 2) included in this matrix [M]
3... 15) are expressed as follows.
【0042】[0042]
【数16】 (Equation 16)
【0043】ここで各行列〔m〕i (i=0,1,2,
3・・・15)の係数はcos(nπ/16)(n=
0,1,2,3・・・15)によって表される無理数で
ある。具体的な係数の例として、16進数で16ビット
に丸めたものを示す。Here, each matrix [m] i (i = 0, 1, 2,
The coefficient of 3 ... 15) is cos (nπ / 16) (n =
0, 1, 2, 3... 15). As a specific example of the coefficient, a coefficient rounded to 16 bits by a hexadecimal number is shown.
【0044】[0044]
【数17】 [Equation 17]
【0045】同様に、8×4DCTの場合、行列〔M〕
に含まれる16個の4×4行列〔m〕i (i=0,1,
2,3・・・15)は、次のように表される。Similarly, in the case of 8 × 4 DCT, matrix [M]
16 × 4 matrix [m] i (i = 0,1,
2, 3... 15) are expressed as follows.
【0046】[0046]
【数18】 (Equation 18)
【0047】ここで各行列〔m〕i (i=0,1,2,
3・・・15)の係数は√2cos(nπ/16)(n
=0,1,2,3・・・15)によって表される無理数
である。具体的な係数の例として、16進数で16ビッ
トに丸めたものを示す。Here, each matrix [m] i (i = 0, 1, 2,
3... 15) is √2cos (nπ / 16) (n
= 0, 1, 2, 3... 15). As a specific example of the coefficient, a coefficient rounded to 16 bits by a hexadecimal number is shown.
【0048】[0048]
【数19】 [Equation 19]
【0049】上述の説明にて、8×4DCTと8×8D
CTでは、行列の有効成分(0以外の要素)は位置が同
一で値のみが異なることが判る。従って、これらの行列
に対応するメモリ(RAM)、加算器、乗算器は共用化
することができる。In the above description, 8 × 4 DCT and 8 × 8D
In CT, it can be seen that the effective components (elements other than 0) of the matrix have the same position and only different values. Therefore, a memory (RAM), an adder, and a multiplier corresponding to these matrices can be shared.
【0050】図1は本発明による2次元DCT回路の構
成例を示す。本例のDCT回路は、DCT・コントロー
ラ101とヘッド・レジスタ102とDCTの各行列を
演算するマトリックス演算部103〜108とヘッド・
セレクタ109とを含む。FIG. 1 shows a configuration example of a two-dimensional DCT circuit according to the present invention. The DCT circuit according to the present embodiment includes a DCT controller 101, a head register 102, matrix operation units 103 to 108 for calculating respective matrices of the DCT, and a head controller.
And a selector 109.
【0051】入力信号は8ビットの映像信号と16ビッ
トのヘッダ信号等を含む。DCT・コントローラ101
はヘッダ信号を入力して、8×4DCTと8×8DCT
の切替えを指示するセレクト信号(SEL信号)、各回
路の演算開始を指示する開始コントロール信号(CTR
L信号)を生成し、ヘッド・レジスタ102、マトリッ
クス演算部103〜108及びヘッド・セレクタ109
へ供給する。The input signal includes an 8-bit video signal and a 16-bit header signal. DCT / Controller 101
Inputs a header signal and outputs 8 × 4 DCT and 8 × 8 DCT
Signal (SEL signal) for instructing the switching of the signals, and a start control signal (CTR) for instructing the start of the operation of each circuit.
L signal), a head register 102, matrix operation units 103 to 108, and a head selector 109.
Supply to
【0052】ヘッド・レジスタ102は、映像信号をD
CT演算する間、ヘッダ信号を蓄積する。マトリックス
演算部103〜106は8ビットの映像信号を入力して
DCT演算し、得られた16ビットの信号をヘッド・セ
レクタ109へ供給する。The head register 102 outputs the video signal to D
During the CT operation, the header signal is accumulated. The matrix operation units 103 to 106 receive an 8-bit video signal, perform a DCT operation, and supply the obtained 16-bit signal to the head selector 109.
【0053】先ずT1マトリックス演算部103は、8
ビットの映像信号を数4の式(8×8DCT)又は数6
の式の第1式(8×4DCT)によって表されるデータ
の並べ換えを行う。4クロック分のデータを4クロック
分だけ保持し、8ビット×4ラインの信号にて出力す
る。First, the T1 matrix operation unit 103
The bit video signal is calculated by the equation (8 × 8 DCT) of Equation 4 or Equation 6
Rearrangement of data represented by the first expression (8 × 4 DCT) of the following expression is performed. Data for 4 clocks is held for 4 clocks, and output as a signal of 8 bits × 4 lines.
【0054】A1マトリックス演算部104は、8ビッ
ト×4ラインの信号を入力し、数7の式及び数8の式に
よって表される加算演算をする。8ビット×4ラインの
信号を4回加算し、10ビット×4ラインの信号を出力
する。T2マトリックス演算部105は、10ビット×
4ラインの信号を入力し、数5の式の第1式(8×8D
CT)及び数6の式の第2式(8×4DCT)によって
表されるデータの並べ換えを行う。16クロック分のデ
ータを16クロック分だけ保持し、10ビット×16ラ
インの信号にて出力する。The A1 matrix operation unit 104 receives an 8-bit × 4 line signal and performs an addition operation represented by the equations (7) and (8). The signal of 8 bits × 4 lines is added four times to output a signal of 10 bits × 4 lines. The T2 matrix operation unit 105 has 10 bits ×
A signal of four lines is input, and the first equation (8 × 8D
CT) and the data expressed by the second expression (8 × 4 DCT) of Expression 6 are rearranged. Data for 16 clocks is held for 16 clocks and output as a signal of 10 bits × 16 lines.
【0055】A2マトリックス演算部106は、10ビ
ット×16ラインの信号を入力し、数9の式〜数14の
式によって表される加算演算をする。13ビット×4ラ
インの信号を出力する。Mマトリックス演算部107
は、13ビット×4ラインの信号を入力し数15の式〜
数19の式によって表される乗算演算をする。16ビッ
トの信号にて出力する。The A2 matrix operation unit 106 receives a signal of 10 bits × 16 lines and performs an addition operation represented by the equations (9) to (14). A signal of 13 bits × 4 lines is output. M matrix operation unit 107
Is obtained by inputting a signal of 13 bits × 4 lines,
A multiplication operation represented by Expression 19 is performed. It is output as a 16-bit signal.
【0056】T3マトリックス演算部108は、16ビ
ットの信号を入力して数5の式の第1式(8×8DC
T)及び数6の式の第3式(8×4DCT)によって表
されるデータの並べ換えを行う。16クロック分のデー
タを16クロック分だけ保持し、16ビットの信号にて
出力する。ヘッド・セレクタ107は、DCT演算して
得られた16ビットの信号をヘッド・レジスタ102よ
り出力されたヘッダ信号に乗せ換え、16ビットの信号
として出力する。The T3 matrix operation unit 108 receives a 16-bit signal and inputs the first expression (8 × 8 DC
T) and the third expression (8 × 4 DCT) of Expression 6 is rearranged. The data for 16 clocks is held for 16 clocks and output as a 16-bit signal. The head selector 107 replaces the 16-bit signal obtained by the DCT operation with the header signal output from the head register 102 and outputs it as a 16-bit signal.
【0057】図2を参照して、T1、T2、T3マトリ
ックス演算部103、105、108の構成及び動作を
説明する。各マトリックス演算部は、カウンタ201と
メモリ・コントローラ202と2つのRAM203A、
203Bとセレクタ204とを有する。Referring to FIG. 2, the configuration and operation of the T1, T2, and T3 matrix calculation units 103, 105, and 108 will be described. Each matrix operation unit includes a counter 201, a memory controller 202, two RAMs 203A,
203B and a selector 204.
【0058】カウンタ201は64クロック周期のカウ
ント信号を生成し、それをメモリ・コントローラ202
に供給する。メモリ・コントローラ202はカウンタ2
01より供給されたカウント信号を積算し、64クロッ
ク毎に2つのRAM203A、203Bを交互に切り換
えることを指示するための切替え信号を生成する。2つ
のRAM203A、203Bは、交互に、64ワード毎
に、書き込み(ライト)と読み出し(リード)を繰り返
す。即ち、2つのRAM203A、203Bの一方が読
み出しのとき、他方は書き込みとなる。The counter 201 generates a count signal having a period of 64 clocks, and outputs the count signal to the memory controller 202.
To supply. The memory controller 202 has a counter 2
A switching signal for instructing to alternately switch between the two RAMs 203A and 203B is generated every 64 clocks by accumulating the count signals supplied from 01. The two RAMs 203A and 203B alternately repeat writing (writing) and reading (read) every 64 words. That is, when one of the two RAMs 203A and 203B is for reading, the other is for writing.
【0059】上述のように、各RAM203A、203
Bのライト・アドレスより、数1の式に示す入力データ
XINが書き込まれ、リード・アドレスより、並べ替えら
れたデータCOUT が読み出される。As described above, each RAM 203A, 203
The input data X IN shown in Expression 1 is written from the write address of B, and the rearranged data C OUT is read from the read address.
【0060】メモリ・コントローラ202は、DCT・
コントローラ101より供給されたセレクト信号を入力
し、セレクタ204に8×8DCTと8×4DCTの切
替えを指示するセレクト信号を出力する。また、各RA
M203A、203Bのライト・アドレスとリード・ア
ドレスは、8×8DCTと8×4DCTとの切替えに対
応して切り換えられる。The memory controller 202 has a DCT
A select signal supplied from the controller 101 is input, and a select signal for instructing the selector 204 to switch between 8 × 8 DCT and 8 × 4 DCT is output. In addition, each RA
The write address and read address of M203A and 203B are switched in response to switching between 8 × 8 DCT and 8 × 4 DCT.
【0061】図3を参照して本例のA1マトリックス演
算部104の構成及び動作の例を説明する。A1マトリ
ックス演算部104は、カウンタ301と2つの符号反
転器302A、302Bとセレクタ303と3つの加算
器304A、304B及び305とを有する。カウンタ
301は4クロック周期のクロック信号を発生し、符号
反転器302A、302Bに供給する。符号反転器30
2A、302Bは、減算の場合には符号を反転する。2
つの符号反転器302A、302Bのうち、一方は8×
8DCT用であり他方は8×4DCT用である。Referring to FIG. 3, an example of the configuration and operation of the A1 matrix operation unit 104 of this embodiment will be described. The A1 matrix operation unit 104 includes a counter 301, two sign inverters 302A and 302B, a selector 303, and three adders 304A, 304B and 305. The counter 301 generates a clock signal having a period of four clocks and supplies the clock signal to the sign inverters 302A and 302B. Sign inverter 30
2A and 302B invert the sign in the case of subtraction. 2
One of the two sign inverters 302A and 302B is 8 ×
One for 8DCT and the other for 8 × 4 DCT.
【0062】セレクタ303はDCT・コントローラ1
01より供給されたセレクト信号を入力し、2つの符号
反転器302A、302Bを経由した入力データ信号を
切り換える。セレクタ303を経由した4個のデータ信
号は3つの加算器304A、304B及び305によっ
て加算される。The selector 303 is a DCT / controller 1
01, and switches the input data signal via two sign inverters 302A and 302B. The four data signals passed through the selector 303 are added by three adders 304A, 304B and 305.
【0063】図4を参照して本例のA2マトリックス演
算部106の構成及び動作の例を説明する。A2マトリ
ックス演算部106は、カウンタ401と2つの符号反
転器402A、402Bとセレクタ403と7つの加算
器404A、404B、404C、404D、406
A、406B、408と3つの符号反転器405A、4
05B、407とを有する。Referring to FIG. 4, an example of the configuration and operation of the A2 matrix operation unit 106 of this embodiment will be described. The A2 matrix operation unit 106 includes a counter 401, two sign inverters 402A and 402B, a selector 403, and seven adders 404A, 404B, 404C, 404D, and 406.
A, 406B, 408 and three sign inverters 405A, 4
05B and 407.
【0064】カウンタ401は64クロック周期のクロ
ック信号を発生し、符号反転器402A、402Bに供
給する。符号反転器302A、302Bは、減算の場合
には符号を反転する。2つの符号反転器402A、40
2Bのうち、一方は8×8DCT用であり他方は8×4
DCT用である。The counter 401 generates a clock signal having a period of 64 clocks and supplies it to the sign inverters 402A and 402B. The sign inverters 302A and 302B invert the sign in the case of subtraction. Two sign inverters 402A, 40
2B, one for 8 × 8 DCT and the other for 8 × 4
For DCT.
【0065】セレクタ403はDCT・コントローラ1
01より供給されたセレクト信号を入力し、2つの符号
反転器402A、402Bの出力信号を切り換える。即
ち、8×8DCTの場合には第1の符号反転器402A
の出力側に接続し、8×4DCTの場合には第2の符号
反転器402Bの出力側に接続する。The selector 403 is a DCT / controller 1
01, and switches the output signals of the two sign inverters 402A and 402B. That is, in the case of 8 × 8 DCT, the first sign inverter 402A
And in the case of 8 × 4 DCT, it is connected to the output side of the second sign inverter 402B.
【0066】セレクタ403を経由した8個のデータは
7つの加算器404A〜404D、406A、406B
及び408によって加算される。尚、加算器406A、
406B及び408は符号反転器405A、405B及
び407を経由したデータを加算する。The eight data passed through the selector 403 are added to seven adders 404A to 404D, 406A and 406B.
And 408. The adder 406A,
406B and 408 add the data passed through the sign inverters 405A, 405B and 407.
【0067】図5を参照して本例のMマトリックス演算
部107の構成及び動作の例を説明する。Mマトリック
ス演算部107は、カウンタ501と2つの係数選択器
502A、502Bとセレクタ503と4つの乗算器5
04A、504B、504C、504Dと3つの加算器
505A、505B、506とラウンダ507とを有す
る。Referring to FIG. 5, an example of the configuration and operation of the M matrix operation unit 107 of this embodiment will be described. The M matrix operation unit 107 includes a counter 501, two coefficient selectors 502A and 502B, a selector 503, and four multipliers 5
04A, 504B, 504C, and 504D, three adders 505A, 505B, and 506, and a rounder 507.
【0068】カウンタ501は64クロック周期のクロ
ック信号を発生し、係数選択器502A、502Bに供
給する。2つの係数選択器502A、502Bのうち、
一方は8×8DCT用であり他方は8×4DCT用であ
る。The counter 501 generates a clock signal having a period of 64 clocks and supplies it to the coefficient selectors 502A and 502B. Of the two coefficient selectors 502A and 502B,
One is for 8 × 8 DCT and the other is for 8 × 4 DCT.
【0069】セレクタ503はDCT・コントローラ1
01より供給されたセレクト信号を入力し、2つの係数
選択器502A、502Bの出力信号を切り換える。即
ち、8×8DCTの場合には第1の係数選択器502A
の出力側に接続し、8×4DCTの場合には第2の係数
選択器502Bの出力側に接続する。The selector 503 is a DCT / controller 1
01, and switches the output signals of the two coefficient selectors 502A and 502B. That is, in the case of 8 × 8 DCT, the first coefficient selector 502A
, And in the case of 8 × 4 DCT, to the output side of the second coefficient selector 502B.
【0070】セレクタ503より出力された4個の係数
はそれぞれ4つの乗算器504A、504B、504
C、504Dに供給される。各乗算器504A、504
B、504C、504Dは、入力データに係数を乗算す
る。乗算器504A、504B、504C、504Dの
出力は3つの加算器505A、505B、506によっ
て加算される。The four coefficients output from the selector 503 correspond to four multipliers 504A, 504B, 504, respectively.
C, 504D. Each multiplier 504A, 504
B, 504C and 504D multiply input data by coefficients. The outputs of the multipliers 504A, 504B, 504C, 504D are added by three adders 505A, 505B, 506.
【0071】最後の加算器506の出力はラウンダ50
7に供給され、出力データは16ビットに丸められる。The output of the last adder 506 is
7 and the output data is rounded to 16 bits.
【0072】以上本発明の実施の形態について詳細に説
明したが、本発明はこれらの例に限定されることなく特
許請求の範囲に記載された発明の範囲にて様々な変更等
が可能であることは当業者にとって理解されよう。Although the embodiments of the present invention have been described in detail, the present invention is not limited to these examples, and various modifications can be made within the scope of the invention described in the claims. It will be understood by those skilled in the art.
【0073】[0073]
【発明の効果】本発明によると、8×8DCTと8×4
DCTを適応的に切り替えるように構成されたDCT回
路において、演算回路を共通化しているため回路構成を
簡単化することができる利点を有する。According to the present invention, 8 × 8 DCT and 8 × 4
The DCT circuit configured to adaptively switch the DCT has an advantage that the circuit configuration can be simplified because the arithmetic circuit is shared.
【0074】本発明によると、8×8DCTと8×4D
CTを適応的に切り替えるように構成されたDCT回路
において、加算器、乗算器、メモリを共通化しているた
め、DCT回路の製造費用を低減化することができる利
点を有する。According to the present invention, 8 × 8 DCT and 8 × 4D
In the DCT circuit configured to adaptively switch the CT, since the adder, the multiplier, and the memory are shared, there is an advantage that the manufacturing cost of the DCT circuit can be reduced.
【図1】本発明によるDCT回路の構成例を示すブロッ
ク図である。FIG. 1 is a block diagram showing a configuration example of a DCT circuit according to the present invention.
【図2】本発明によるT1、T2、T3マトリックス演
算部の構成例を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration example of a T1, T2, and T3 matrix operation unit according to the present invention.
【図3】本発明によるA1マトリックス演算部の構成例
を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration example of an A1 matrix operation unit according to the present invention.
【図4】本発明によるA2マトリックス演算部の構成例
を示すブロック図である。FIG. 4 is a block diagram illustrating a configuration example of an A2 matrix operation unit according to the present invention.
【図5】本発明によるMマトリックス演算部の構成例を
示すブロック図である。FIG. 5 is a block diagram illustrating a configuration example of an M matrix operation unit according to the present invention.
101 DCTコントローラ、 102 ヘッド・レジ
スタ、 103 T1マトリックス演算部、 104
A1マトリックス演算部、 105 T2マトリックス
演算部、 106 A2マトリックス演算部、 107
Mマトリックス演算部、 108 T3マトリックス
演算部、 109 ヘッド・セレクタ101 DCT controller, 102 head register, 103 T1 matrix operation unit, 104
A1 matrix operation unit, 105 T2 matrix operation unit, 106 A2 matrix operation unit, 107
M matrix operation unit, 108 T3 matrix operation unit, 109 head selector
Claims (3)
T演算部と8×8DCT又は8×4DCTのいずれかを
指示するセレクト信号を発生し該信号を上記DCT演算
部に供給するDCTコントローラとを有し、上記DCT
演算部に含まれる加算器、乗算器及びメモリは8×8D
CTと8×4DCTの両者に対して共用することができ
るように構成されていることを特徴とするDCT回路。1. A DC for performing a DCT operation on input data.
And a DCT controller for generating a select signal indicating one of 8 × 8 DCT and 8 × 4 DCT and supplying the signal to the DCT calculator.
The adder, multiplier and memory included in the operation unit are 8 × 8D
A DCT circuit characterized in that it can be shared by both CT and 8 × 4 DCT.
て入力データの並べ替えをするように構成されているこ
とを特徴とするDCT回路。2. The DCT circuit according to claim 1, wherein the DCT operation unit is configured to rearrange input data using the memory.
レジスタと該ヘッドレジスタからのヘッダ信号と上記D
CT演算部からの出力信号を組み合わせるためのヘッド
セレクタとを有することを特徴とするDCT回路。3. A head register for storing a head signal of an input signal, a header signal from the head register,
A DCT circuit, comprising: a head selector for combining output signals from a CT operation unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP681397A JPH10207867A (en) | 1997-01-17 | 1997-01-17 | Dct circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP681397A JPH10207867A (en) | 1997-01-17 | 1997-01-17 | Dct circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10207867A true JPH10207867A (en) | 1998-08-07 |
Family
ID=11648651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP681397A Pending JPH10207867A (en) | 1997-01-17 | 1997-01-17 | Dct circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10207867A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011035677A (en) * | 2009-07-31 | 2011-02-17 | Canon Inc | Animation encoding device, animation encoding method, computer program |
-
1997
- 1997-01-17 JP JP681397A patent/JPH10207867A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011035677A (en) * | 2009-07-31 | 2011-02-17 | Canon Inc | Animation encoding device, animation encoding method, computer program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5331585A (en) | Orthogonal transformation processor for compressing information | |
JP2628493B2 (en) | Image coding device and image decoding device provided with cosine transform calculation device, calculation device and the like | |
JPH11225334A (en) | Dispersion value calculation accelerator for mpeg-2 image decoder | |
US4891779A (en) | Apparatus for arithmetic processing | |
JP3577325B2 (en) | Data processing method by discrete cosine transform (DCT), DCT method, and DCT data processing circuit | |
JPH01269183A (en) | Spatial filter picture processor | |
JP2000338935A (en) | Gradation correction device, image display device and gradation correction method | |
JPH06223099A (en) | Signal processing system provided with reduced memory space | |
US5359549A (en) | Orthogonal transformation processor for compressing information | |
JPH10207867A (en) | Dct circuit | |
JP2790911B2 (en) | Orthogonal transform operation unit | |
JP2802158B2 (en) | Inverse orthogonal transform method and inverse orthogonal transform circuit | |
KR960014197B1 (en) | Distributed arithmetic unit | |
KR0124169B1 (en) | 2-dimensional discrete cosine transformer | |
JP2610817B2 (en) | Address generator | |
JP3396818B2 (en) | DCT operation circuit and IDCT operation circuit | |
JP3697716B2 (en) | Matrix data multiplier | |
JP3371481B2 (en) | Digital arithmetic unit | |
JPH05153402A (en) | Discrete cosine transformation device | |
JP2889244B2 (en) | Image processing device | |
JPH05153403A (en) | Discrete cosine transformation device | |
JP3513262B2 (en) | Image processing device | |
JP2958966B2 (en) | Discrete cosine converter | |
JP2000270207A (en) | Image processor and display device using it | |
KR960028549A (en) | Fast Affine Inverter for Fractal Image Coding |