JP3099564B2 - Data compression / decompression device - Google Patents

Data compression / decompression device

Info

Publication number
JP3099564B2
JP3099564B2 JP36089092A JP36089092A JP3099564B2 JP 3099564 B2 JP3099564 B2 JP 3099564B2 JP 36089092 A JP36089092 A JP 36089092A JP 36089092 A JP36089092 A JP 36089092A JP 3099564 B2 JP3099564 B2 JP 3099564B2
Authority
JP
Japan
Prior art keywords
data
output
serial
adder
data conversion
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
JP36089092A
Other languages
Japanese (ja)
Other versions
JPH06204888A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP36089092A priority Critical patent/JP3099564B2/en
Publication of JPH06204888A publication Critical patent/JPH06204888A/en
Application granted granted Critical
Publication of JP3099564B2 publication Critical patent/JP3099564B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、画像データの圧縮処理
等に用いられるデータ圧縮伸張装置に係り、詳細には小
さな回路規模でデータ圧縮を行うことが可能なデータ圧
縮伸張装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data compression / expansion apparatus used for compression processing of image data, and more particularly to a data compression / expansion apparatus capable of performing data compression with a small circuit scale.

【0002】[0002]

【従来の技術】ISDNやCD−ROMを前提とした画
像の高能率符号化技術において、DCT(Discrete Cos
ine Transform:離散コサイン変換)が高能率符号化技
術の主流になりつつある。このDCTに限らず、高能率
符号化して画素当りの平均ビット数を減らすと、画像の
品質は落ち、圧縮率を上げると、画質の劣化を引き起こ
す。例えば、現行の標準テレビ信号を1.5Mビット/
秒に圧縮した場合に問題となるのは、輪郭部分の劣化と
DCTで処理するブロック単位(例えば8×8画素)に
発生するブロック歪である。逆変換して画素を再生する
ときに、ブロック内のDCT出力をすべて線形和するこ
とになるが、8×8画素から成るブロックのDCT出力
64個のうち、一つでも情報損失があると、ブロック内
全体の再生画素に劣化が生じる。
2. Description of the Related Art A DCT (Discrete Cos
ine Transform (Discrete Cosine Transform) is becoming the mainstream of high efficiency coding technology. If the average number of bits per pixel is reduced by performing high-efficiency encoding without being limited to the DCT, the quality of the image is reduced, and if the compression ratio is increased, the image quality is deteriorated. For example, if the current standard television signal is 1.5 Mbit /
Problems that occur when compression is performed in seconds are deterioration of contour portions and block distortion generated in units of blocks (for example, 8 × 8 pixels) processed by DCT. When a pixel is reproduced by performing an inverse transformation, all the DCT outputs in the block are linearly summed. However, if any one of 64 DCT outputs of a block including 8 × 8 pixels has information loss, Degradation occurs in the reproduced pixels in the entire block.

【0003】ここで、DCT変換は、直交変換の一つで
あり、カールネン・レーベ変換と並んでエネルギの集中
度の最も高い変換法といわれるものである。
[0003] Here, the DCT transform is one of orthogonal transforms, and is called a transform method having the highest energy concentration along with the Karnen-Loeve transform.

【0004】いま、信号f(j) (j=0、1、…、
N−1)の一次元のDCT変換による結果F(u)
(u=0、1、…、N−1)は数1で定義される。
Now, a signal f (j) (j = 0, 1,...,
N-1) Result F (u) by one-dimensional DCT transform
(U = 0, 1,..., N−1) is defined by Expression 1.

【0005】[0005]

【数1】 また、逆DCT変換は、数2で定義される。(Equation 1) The inverse DCT transform is defined by Expression 2.

【0006】[0006]

【数2】 このようなDCT変換を画像に対して施すことにより、
エネルギ集中が得られることから、エネルギの多い成分
のみを符号化することが可能となり、これにより画像デ
ータの圧縮を行なうようにしている。
(Equation 2) By performing such DCT transformation on an image,
Since energy concentration can be obtained, it is possible to encode only a component having a large amount of energy, thereby compressing image data.

【0007】ところで、上記DCTを有するデータ圧縮
伸張装置に限らず、通常のデータ圧縮伸張装置では、数
値列に対し、データ変換(FFT,DCT等)を施し、
その後に量子化を行っている。
By the way, not only the data compression / expansion apparatus having the DCT but also a normal data compression / expansion apparatus performs data conversion (FFT, DCT, etc.) on a numerical sequence,
After that, quantization is performed.

【0008】図11は従来のデータ圧縮伸張装置のブロ
ック図である。10はデータ記憶装置であり、データ記
憶装置10には圧縮を施そうとする2次元データがパラ
レルデータの形で蓄えられている。データ記憶装置10
に蓄えられているデータ(例えば、画像データ)はパラ
レル−シリアル変換装置11に入力され、パラレル−シ
リアル変換装置11はデータ記憶装置10から読み込ん
だパラレルデータをシリアルデータに変換してデータ変
換演算装置12に出力する。データ変換演算装置12は
パラレル−シリアル変換装置11から出力されたデータ
に対して一次元のDCT演算をシリアル演算の形で施
す。シリアルDCT演算されたデータはシリアル−パラ
レル変換装置13に出力され、シリアル−パラレル変換
装置13はデータ変換演算装置12から出力されたシリ
アルデータをパラレルデータに変換してデータ記憶装置
10に書き込む。上記の例は一次元の場合であり、画像
等の二次元の場合には図12に示すように上述した処理
を縦横(順不同)二次元に施す。また、量子化装置14
は、データ記憶装置10に蓄えられたデータ変換演算後
のデータに対して、例えば図13に示すような量子化テ
ーブルの値で除算をする(あるいは、逆数の乗算)こと
によって量子化演算を行なう。上記各部の動作はデータ
圧縮伸張装置の全体を制御する制御装置15によって制
御される。
FIG. 11 is a block diagram of a conventional data compression / decompression device. A data storage device 10 stores two-dimensional data to be compressed in the form of parallel data. Data storage device 10
(For example, image data) stored in the parallel-to-serial conversion device 11, which converts the parallel data read from the data storage device 10 into serial data to convert the data into a serial data. 12 is output. The data conversion operation device 12 performs a one-dimensional DCT operation on the data output from the parallel-serial conversion device 11 in the form of a serial operation. The data subjected to the serial DCT operation is output to the serial-to-parallel converter 13, which converts the serial data output from the data converter 12 into parallel data and writes it to the data storage device 10. The above example is a one-dimensional case, and in the case of a two-dimensional image or the like, the above-described processing is performed in the vertical and horizontal (in any order) two-dimensional as shown in FIG. Also, the quantization device 14
Performs a quantization operation by dividing (or multiplying by a reciprocal number) the data after the data conversion operation stored in the data storage device 10 by, for example, a value of a quantization table as shown in FIG. . The operation of each unit is controlled by a control device 15 that controls the entire data compression / decompression device.

【0009】上記データ変換演算装置12により実行さ
れるシリアルDCT演算を以下に説明するシリアル演算
によって行なう。
The serial DCT operation executed by the data conversion operation device 12 is performed by the serial operation described below.

【0010】先ず、基本的な考え方としてCOS係数の値
を、数3に示すように2のべき(すなわち、2のn乗)
の和又は差で表すようにする。数3に示すように数値を
2のべきで表現する理由はシリアルの回路による演算を
実現するためである。すなわち、図14において、符号
21は、クロック入力信号に応答し、入力信号を1クロ
ック遅れた出力とするFF(フリップフロップ)からな
る1タイムディレイユニットを表すものとすると、1タ
イムディレイユニット21を通って出てくる出力と1タ
イムディレイユニット21を通らずに直接出てくる出力
とを比較すると前者が後者より1クロック分遅い。ここ
で、1タイムディレイユニット21はシフトレジスタが
並んだようなものであり、例えばLSB側から順にデー
タが入力されているものとすると、1クロック遅く出て
くるということは2倍されたことを意味する。同様に、
8倍しようとする場合には上記1タイムディレイユニッ
ト21を図15に示すように3つ並べて3クロック遅ら
せるようにすれば23で8倍となる。本実施例では上記
ユニットを組み合わせて加減算を行なうことでシリアル
演算回路を実現する。
First, as a basic idea, the value of the COS coefficient is raised to a power of 2 (that is, 2 to the power of n) as shown in Expression 3.
The sum or difference of The reason for expressing the numerical value by a power of 2 as shown in Equation 3 is to realize an operation by a serial circuit. That is, in FIG. 14, reference numeral 21 represents a one-time delay unit composed of an FF (flip-flop) that responds to a clock input signal and outputs the input signal one clock delayed, and the one time delay unit 21 is Comparing the output coming through and the output coming directly without passing through one time delay unit 21, the former is one clock later than the latter. Here, the one time delay unit 21 has a structure in which shift registers are arranged side by side. For example, if data is sequentially input from the LSB side, the fact that one clock delay comes out is doubled. means. Similarly,
When to be eight times is 8 times 2 3 If to delay three side by side three clocks, as shown in FIG. 15 the one time delay unit 21. In this embodiment, a serial operation circuit is realized by performing addition and subtraction by combining the above units.

【0011】図16は乗算部のシリアル演算構成を示し
たものであり、図16は入力データを38倍する場合の
例である。先ず、38を数4の形に分解する。
FIG. 16 shows a serial operation configuration of the multiplication unit. FIG. 16 shows an example in which input data is multiplied by 38. First, 38 is decomposed into the form of Equation 4.

【0012】数4において、ある数値xを32倍すると
いうことは、xを左(MBS方向)へ5回シフトするこ
とであり、図16では、5段の1タイムディレイユニッ
ト271を通過させることによって実現される。また、
数4で示される2×(2+1)は、実際には、6である
から、4+2と表してもよい。しかし、図16のフルア
ダー22が1タイムディレイユニットを持っており、入
力データを2倍するため、2×(2+1)という表現形
式が採用できる。この図16のユニット自体の出力は7
6倍となるが、次段の取り込みタイミングを1クロック
遅らせることにより38倍を実現している。
In Expression 4, to multiply a certain numerical value x by 32 means to shift x five times to the left (in the MBS direction). In FIG. It is realized by. Also,
Since 2 × (2 + 1) shown in Expression 4 is actually 6, it may be expressed as 4 + 2. However, since the full adder 22 in FIG. 16 has one time delay unit and doubles the input data, an expression form of 2 × (2 + 1) can be adopted. The output of the unit itself in FIG.
It is 6 times, but 38 times is realized by delaying the fetch timing of the next stage by one clock.

【0013】以下、データ圧縮伸張装置を図面に従い説
明する。
The data compression / expansion apparatus will be described below with reference to the drawings.

【0014】図17は、上記シリアルDCT演算を実行
するためのデータ変換演算装置12の回路構成を示す図
であり、I〜IVの各ステージから構成される。
FIG. 17 is a diagram showing a circuit configuration of the data conversion operation device 12 for executing the serial DCT operation, and is composed of stages I to IV.

【0015】図17において、31はステージIの演算
回路、32はステージIIの演算回路、33はステージII
Iの演算回路、34はステージIVの演算回路であり、こ
れらのステージI〜IVの演算回路31〜34はそれぞれ
スイッチ35〜39を介して直列に接続するように構成
されている。この場合、DCT演算処理では、図17に
示すように演算回路31〜34の順で直列接続され、ま
た逆DCT演算の処理では、スイッチ35〜39の切換
え動作により演算回路34〜31の順で直接接続される
ようになっている。そして、入力端子40に与えられる
入力データに対するDCTまたは逆DCT演算結果は出
力端子41から出力されるようになる。この場合、入力
データは、シリアル8系統よりなっている。
In FIG. 17, reference numeral 31 denotes a stage I operation circuit, 32 denotes a stage II operation circuit, and 33 denotes a stage II operation circuit.
The I operation circuit 34 is a stage IV operation circuit. The operation circuits 31 to 34 of these stages I to IV are configured to be connected in series via switches 35 to 39, respectively. In this case, in the DCT operation processing, the operation circuits 31 to 34 are connected in series in the order shown in FIG. It is connected directly. Then, the result of the DCT or inverse DCT operation on the input data supplied to the input terminal 40 is output from the output terminal 41. In this case, the input data consists of eight serial lines.

【0016】図18は、ステージIの演算回路31の回
路構成を示す図である。演算回路31は上述したシリア
ル演算を実行するものであり、加算器1a、1b、1
c、1dと減算器1e、1f、1g、1hから構成され
ている。
FIG. 18 is a diagram showing a circuit configuration of the operation circuit 31 of the stage I. The arithmetic circuit 31 executes the above-described serial arithmetic operation, and includes
c, 1d and subtracters 1e, 1f, 1g, 1h.

【0017】図19は、ステージIIの演算回路32の回
路構成を示す図である。演算回路32は上述したシリア
ル演算を実行するものであり、シフタ2a〜2fと、CO
S(4/16)π演算(数1参照)を行なうCOS(4/16)π演算器
2g、2hから構成されている。ここで、上記シフタ2
a〜2fは、それぞれ10個のフリップフロップを直列
接続したものであり、入力されたデータを所定時間遅延
して出力するようになっている。また、上記COS(4/16)
π演算器2gは、COS(N/16)πのN=4の場合の近似式1
81=(16-1)×(2+1)×4+1の演算を実現したものであり、
加算器2g1、この加算器2g1の出力をシフトする4個
のフリップフロップからなるシフタ2g2、このシフタ
2g2の出力より加算器2g1からの出力を減算する減算
器2g3、この減算器2g3の出力をシフトする1個のフ
リップフロップからなるシフタ2g4、このシフタ2g4
の出力と上記減算器2g3の出力を加算する加算器2g
5、この加算器2g5の出力と上記加算器2g1の出力を
加算する加算器2g6から構成されている。また、上記C
OS(4/16)π演算器2hもCOS(N/16)πのN=4の場合の
近似式181=(16-1)×(2+1)×4+1の演算を実現したもので
あり、減算器2h1、この減算器2h1の出力をシフトす
る4個のフリップフロップからなるシフタ2h2、この
シフタ2h2の出力より減算器2h1の出力を減算する減
算器2h3、この減算器2h3の出力をシフトする1個の
フリップフロップからなるシフタ2h4、このシフタ2
h4の出力と減算器2h3の出力を加算する加算器2h
5、この加算器2h5の出力と減算器2h1の出力を加算
する加算器2h6から構成されている。
FIG. 19 is a diagram showing a circuit configuration of the operation circuit 32 of the stage II. The arithmetic circuit 32 executes the above-described serial operation, and includes shifters 2a to 2f and CO
It is composed of COS (4/16) π calculators 2g and 2h for performing S (4/16) π calculation (see Equation 1). Here, the shifter 2
Reference numerals a to 2f denote serially connected ten flip-flops, which are configured to output input data with a predetermined delay. Also, the above COS (4/16)
The π computing unit 2g calculates the approximate expression 1 in the case of N = 4 of COS (N / 16) π
81 = (16-1) × (2 + 1) × 4 + 1
An adder 2g1, a shifter 2g2 composed of four flip-flops for shifting the output of the adder 2g1, a subtractor 2g3 for subtracting the output from the adder 2g1 from the output of the shifter 2g2, and shifting the output of the subtracter 2g3 A shifter 2g4 composed of one flip-flop, and this shifter 2g4
Adder 2g for adding the output of the above-described subtractor 2g3
5. An adder 2g6 for adding the output of the adder 2g5 and the output of the adder 2g1. Also, the above C
The OS (4/16) π calculator 2h also realizes the calculation of the approximate expression 181 = (16-1) × (2 + 1) × 4 + 1 when N = 4 of COS (N / 16) π A shifter 2h2 composed of four flip-flops for shifting the output of the subtractor 2h1, a subtractor 2h3 for subtracting the output of the subtractor 2h1 from the output of the shifter 2h2, and an output of the subtractor 2h3. Shifter 2h4 composed of one flip-flop for shifting
adder 2h for adding the output of h4 and the output of subtractor 2h3
5, an adder 2h6 for adding the output of the adder 2h5 and the output of the subtractor 2h1.

【0018】図20は、ステージIIIの演算回路33の
回路構成を示す図である。演算回路33は上述したシリ
アル演算を実行するものであり、加算器3a,3b、減
算器3c,3dおよび加算器3e,3f、減算器3g,
3hから構成されている。
FIG. 20 is a diagram showing a circuit configuration of the arithmetic circuit 33 of the stage III. The arithmetic circuit 33 executes the above-described serial operation, and includes adders 3a and 3b, subtractors 3c and 3d, and adders 3e and 3f, and a subtractor 3g.
3h.

【0019】図21は、ステージIVの演算回路34の回
路構成を示す図である。演算回路34は上述したシリア
ル演算を実行するものであり、各COS係数演算を行なうC
OS(4/16)π演算器4a,4b、COS(2/16)πおよびCOS(6
/16)π演算器4c,4d、COS(1/16)πおよびCOS(7/16)
π演算器4e,4f、COS(3/16)πおよびCOS(5/16)π演
算器4g,4hから構成されている。この場合、上記CO
S(4/16)π演算器4a,4bは、上述したステージIIの
演算回路32のCOS(4/16)π演算器2g,2hと同様で
あり、ここでは添字2を4に代えて同符号を付すること
で説明は省略する。
FIG. 21 is a diagram showing a circuit configuration of the arithmetic circuit 34 of the stage IV. The arithmetic circuit 34 executes the above-described serial arithmetic operation, and performs COS coefficient arithmetic operations.
OS (4/16) π arithmetic units 4a, 4b, COS (2/16) π and COS (6
/ 16) π calculators 4c, 4d, COS (1/16) π and COS (7/16)
π calculators 4e and 4f, COS (3/16) π and COS (5/16) π calculators 4g and 4h. In this case, the above CO
The S (4/16) π arithmetic units 4a and 4b are the same as the COS (4/16) π arithmetic units 2g and 2h of the stage II arithmetic circuit 32 described above. The description is omitted by attaching the reference numerals.

【0020】また、上記COS(2/16)πおよびCOS(6/16)π
演算器4cは、COS(N/16)πのN=2の場合の近似式23
6.5=4×(64-4-1)+1/2およびN=6の場合の98=2×(32+1
6+1)の演算を実現するもので、このうちCOS(2/16)πの
演算を実現するものは、7個のフリップフロップからな
るシフタ4c1、シフタ4c1の出力からシフタ4c1の
第3番目のフリップフロップの出力を減算する減算器4
c2、減算器4c2の出力からシフタ4c1の第2番目の
フリップフロップの出力を減算する減算器4c3、減算
器4c3の出力と加算器3aの出力を加算する加算器4
c4からなり、また、COS(6/16)π演算を実現するもの
は、シフタ4c1の第6番目のフリップフロップの出力
とシフタ4c1の第5番目のフリップフロップの出力を
加算する加算器4c5、加算器4c5の出力とシフタ4c
1の第2番目のフリップフロップの出力を加算する加算
器4c6からなっている。一方、上記COS(2/16)πおよび
COS(6/16)π演算器4dは、上述した演算回路4cと同
様であり、ここでは添字cをdに代えて同符号を付する
ことで説明は省略する。そして、加算器4c4と加算器
4d6の出力を加算器4c7で加算し、また、加算器4c
6の出力から加算器4d4の出力を減算器4d7で減算す
るようにしている。
The above COS (2/16) π and COS (6/16) π
The arithmetic unit 4c calculates the approximate expression 23 in the case of N = 2 of COS (N / 16) π.
6.5 = 4 × (64-4-1) +1/2 and 98 = 2 × (32 + 1 when N = 6)
6 + 1), and among them, the COS (2/16) π operation is realized by a shifter 4c1 comprising seven flip-flops, and a third shifter 4c1 output from the shifter 4c1. Subtractor 4 for subtracting the output of the flip-flop of
c2, a subtractor 4c3 for subtracting the output of the second flip-flop of the shifter 4c1 from the output of the subtractor 4c2, and an adder 4 for adding the output of the subtractor 4c3 and the output of the adder 3a.
An adder 4c5 for adding the output of the sixth flip-flop of the shifter 4c1 and the output of the fifth flip-flop of the shifter 4c1, Output of adder 4c5 and shifter 4c
It comprises an adder 4c6 for adding the output of the first second flip-flop. On the other hand, the above COS (2/16) π and
The COS (6/16) π operation unit 4d is the same as the operation circuit 4c described above, and the description is omitted here by attaching the same reference numerals instead of the subscript c to d. The outputs of the adders 4c4 and 4d6 are added by an adder 4c7.
The output of the adder 4d4 is subtracted from the output of 6 by the subtractor 4d7.

【0021】一方、上記COS(1/16)πおよびCOS(7/16)π
演算器4eは、COS(N/16)πのN=1の場合の近似式251
=(128-2)×2-1およびN=7の場合の50=2×(16+8+1)の
演算を実現するもので、このうちCOS(1/16)πの演算を
実現するものは、7個のフリップフロップからなるシフ
タ4e1、シフタ4e1の出力からシフタの第1番目のフ
リップフロップの出力を減算する減算器4e2、減算器
4e2の出力からステージIIIの演算回路33の加算器3
eの出力を減算する減算器4e3からなり、COS(7/16)π
演算を実現するもので、シフタ4e1の第3番目と第4
番目のフリップフロップの出力を加算する加算器4e
4、加算器4e4、の出力とシフタ4e1の第1番目のフ
リップフロップの出力を加算する加算器4e5からなっ
ている。また、COS(1/16)πおよびCOS(7/16)π演算器4
fは、上述した演算器4eと同様であり、ここでは添字
eをfに代えて同符号を付することで説明は省略する。
そして、減算器4e3と加算器4f5の出力を加算器4e
6で加算し、この加算器4e6の出力をシフタ4e7を介
して発生する。また加算器4e5の出力から減算器4f3
の出力を減算器4f6で減算し、シフタ4f7を介して発
生するようにしている。また、上記COS(5/16)πおよびC
OS(3/16)π演算器4gは、COS(N/16)πのN=5の場合
の近似式142=2×(64+8-1)およびN=3の場合の近似式2
13=(2+1)×(64+8-1)の演算を実現するもので、このうち
COS(5/16)πの演算を実現するものは、5個のフリップ
フロップからなるシフタ4g1、シフタ4g1の出力とシ
フタ4g1の第2番目のフリップフロップの出力を加算
する加算器4g2、加算器4g2の出力からステージIII
の演算回路3の減算器3gの出力を減算する減算器4g
3、減算器4g3の出力をシフトする2個のフリップフロ
ップからなるシフタ4g4からなり、COS(3/16)πの演算
を実現するものは、上述の構成に加えて減算器4g3と
シフタ4g4の第1番目のフリップフロップの出力を加
算する加算器4g5からなっている。また、COS(5/16)π
およびCOS(3/16)π演算器4hは、上述した演算器4g
と同様であり、ここでは添字gをhに代えて同符号を付
することで説明は省略する。そして、シフタ4g4と加
算器4h5の出力を加算器4g6で加算し、また、加算器
4g5の出力からシフタ4h4の出力を減算器4h6で減
算するようにしている。
On the other hand, COS (1/16) π and COS (7/16) π
The arithmetic unit 4e calculates the approximate expression 251 in the case of N = 1 for COS (N / 16) π.
= (128-2) × 2-1 and 50 = 2 × (16 + 8 + 1) when N = 7, of which COS (1/16) π is realized These are a shifter 4e1 composed of seven flip-flops, a subtractor 4e2 for subtracting the output of the first flip-flop of the shifter from the output of the shifter 4e1, and an adder of the operation circuit 33 of the stage III from the output of the subtractor 4e2. 3
e = subtractor 4e3, and COS (7/16) π
The third and fourth shifters 4e1 realize the operation.
Adder 4e for adding the output of the flip-flop
4, an adder 4e5 for adding the output of the adder 4e4 and the output of the first flip-flop of the shifter 4e1. In addition, COS (1/16) π and COS (7/16) π arithmetic unit 4
f is the same as that of the arithmetic unit 4e described above, and the description is omitted here by attaching the same reference numeral instead of the subscript e.
The outputs of the subtractor 4e3 and the adder 4f5 are added to the adder 4e.
The output of the adder 4e6 is generated via the shifter 4e7. The output of the adder 4e5 is subtracted from the output of the adder 4f3.
Is subtracted by a subtractor 4f6 to generate the output via a shifter 4f7. In addition, the above COS (5/16) π and C
The OS (3/16) π calculator 4g calculates the approximate expression 142 = 2 × (64 + 8−1) when C = N = 5 of COS (N / 16) π and the approximate expression 2 when N = 3.
13 = (2 + 1) × (64 + 8-1)
The one that realizes the operation of COS (5/16) π is a shifter 4g1 composed of five flip-flops, an adder 4g2 that adds the output of the shifter 4g1 and the output of the second flip-flop of the shifter 4g1, and an adder. Stage III from 4g2 output
Subtracter 4g for subtracting the output of the subtractor 3g of the arithmetic circuit 3
3. A shifter 4g4 composed of two flip-flops for shifting the output of the subtractor 4g3, and which realizes the operation of COS (3/16) π, in addition to the above-described configuration, includes a subtractor 4g3 and a shifter 4g4. It comprises an adder 4g5 for adding the output of the first flip-flop. Also, COS (5/16) π
And COS (3/16) π arithmetic unit 4h is the above-described arithmetic unit 4g
Here, the same reference numerals are used instead of the subscript g for h, and the description is omitted. The output of the shifter 4g4 and the output of the adder 4h5 are added by the adder 4g6, and the output of the shifter 4h4 is subtracted from the output of the adder 4g5 by the subtractor 4h6.

【0022】このように構成された図18〜図21に示
すステージI〜IVの演算回路31〜34は、DCT演算
処理の場合、図22に示すように接続される。また、図
23〜図25は図22中の各ユニットを示す図であり、
図23はFFからなる1タイムディレイユニット21
を、図24は加算(a+b)を行なう1タイムディレイ
ユニットフルアダー(内部Carry Type)22を、図25
は減算(a−b)を行なう1タイムディレイユニットフ
ルサブトラクタ(内部Borrow type)23をそれぞれ示
している。
The arithmetic circuits 31 to 34 of the stages I to IV shown in FIGS. 18 to 21 are connected as shown in FIG. 22 in the case of DCT arithmetic processing. 23 to 25 are diagrams showing each unit in FIG. 22,
FIG. 23 shows a one time delay unit 21 composed of FFs.
24 shows a one time delay unit full adder (internal carry type) 22 for performing addition (a + b), and FIG.
Indicates one time delay unit full subtractor (internal Borrow type) 23 for performing subtraction (ab).

【0023】次に、このように構成したデータ変換演算
装置12の動作を説明する。
Next, the operation of the data conversion arithmetic unit 12 configured as described above will be described.

【0024】まず、DCT演算処理の場合を述べると、
ここでは、ステージIの演算回路31において加算器1
aに入力データf(0)とf(7)、加算器1bに入力
データf(3)、f(4)、加算器1cに入力データf
(1)、f(6)、加算器1dに入力データf(2)、
f(5)、減算器1eに入力データf(0)、f
(7)、減算器1fに入力データf(3)、f(4)、
減算器1gに入力データf(1)、f(6)、減算器1
hに入力データf(2)、f(5)が入力される。これ
により加算器1aは入力データf(0)とf(7)の加
算結果を出力し、加算器1bは入力データf(3)とf
(4)の加算結果を出力し、加算器1cは入力データf
(1)とf(6)の加算結果f(1)+f(6)を出力
し、加算器1dは入力データf(2)とf(5)の加算
結果を出力するようになる。また、減算器1eは入力デ
ータf(0)とf(7)の減算結果を出力し、減算器1
fは入力データf(3)とf(4)の減算結果を出力
し、減算器1gは入力データf(1)とf(6)の減算
結果を出力し、減算器1hは入力データf(2)とf
(5)の減算結果を出力するようになる。この場合の入
力データは、図26に示すように7bitと1bitのサイン
ビットの8bitのデータからなっている。また、出力デ
ータは、図26のIに示すように7+1bitと1bitのサ
インビットからなっている。ここで、出力データが7+
1bitになるのは、加算器1a〜1dでの加算結果を考
慮したからである。
First, the case of DCT operation processing will be described.
Here, the adder 1 is used in the arithmetic circuit 31 of the stage I.
a, input data f (0) and f (7), adder 1b input data f (3), f (4), adder 1c input data f
(1), f (6), input data f (2) to adder 1d,
f (5), input data f (0), f
(7), the input data f (3), f (4),
The input data f (1), f (6) and the subtractor 1
Input data f (2) and f (5) are input to h. As a result, the adder 1a outputs the addition result of the input data f (0) and f (7), and the adder 1b outputs the input data f (3) and f (7).
The addition result of (4) is output, and the adder 1c outputs the input data f
The addition result f (1) + f (6) of (1) and f (6) is output, and the adder 1d outputs the addition result of the input data f (2) and f (5). The subtractor 1e outputs the result of subtraction of the input data f (0) and f (7),
f outputs the subtraction result of the input data f (3) and f (4), the subtractor 1g outputs the subtraction result of the input data f (1) and f (6), and the subtractor 1h outputs the input data f ( 2) and f
The subtraction result of (5) is output. The input data in this case is composed of 8 bits of 7 bits and 1 bit of sign bit as shown in FIG. The output data is composed of 7 + 1 bits and 1 bit sign bit as shown by I in FIG. Here, the output data is 7+
The reason why the number of bits is 1 is that the result of addition by the adders 1a to 1d is considered.

【0025】次いで、ステージIIの演算回路32に進
む。この演算回路32では、ステージIの演算回路31
の加算器1aの出力がシフタ2aに与えられ、以下、同
様にして加算器1bの出力がシフタ2c、加算器1cの
出力がシフタ2b、加算器1dの出力がシフタ2d、減
算器1eの出力がシフタ2e、減算器1fの出力がシフ
タ2f、減算器1g、1hの出力が加算器2g1および
減算器2h1にそれぞれ与えられる。この場合、図26
の入力に示す入力データに対しシフタ2a〜2eからは
同図IIに示すように10個のフリップフロップの動作だ
け遅れて出力データを発生する。つまり、シフタ2aは
加算器1aの出力を、シフタ2bは加算器1cの出力
を、シフタ2cは加算器1bの出力を、シフタ2dは加
算器1dの出力を、シフタ2eは加算器1eの出力を、
シフタ2fは加算器1fの出力を、それぞれ所定時間遅
延して出力するようになる。
Next, the operation proceeds to the operation circuit 32 of the stage II. In this arithmetic circuit 32, the arithmetic circuit 31 of stage I
The output of the adder 1a is given to the shifter 2a. Hereinafter, similarly, the output of the adder 1b is the shifter 2c, the output of the adder 1c is the shifter 2b, the output of the adder 1d is the output of the shifter 2d, and the output of the subtractor 1e. Are supplied to the shifter 2e, the output of the subtractor 1f is supplied to the shifter 2f, and the outputs of the subtractors 1g and 1h are supplied to the adder 2g1 and the subtractor 2h1, respectively. In this case, FIG.
The output data is generated from the shifters 2a to 2e with a delay of ten flip-flops as shown in FIG. That is, the shifter 2a outputs the output of the adder 1a, the shifter 2b outputs the output of the adder 1c, the shifter 2c outputs the output of the adder 1b, the shifter 2d outputs the output of the adder 1d, and the shifter 2e outputs the output of the adder 1e. To
The shifter 2f outputs the output of the adder 1f with a delay of a predetermined time.

【0026】一方、上記COS(4/16)π演算器2g、2h
では、COS(N/16)πのN=4の場合の近似式181=(16-1)
×(2+1)×4+1の演算を実行する。この場合、演算器2g
には、減算器1g、1hの出力が入力データとして与え
られ、加算器2g1で、これら入力データを加算する。
そして、この加算器2g1の出力をシフタ2g2に与え、
シフタ2g2より得られた出力より加算器2g1の出力を
減算器2g3で減算すると(16-1)が求められ、次いで、
減算器2g3の出力とシフタ2g4の出力を加算器2g5
で加算することで(16-1)×(2+1)が求められる。そし
て、この加算器2g5の出力と加算器2g1の出力を加算
器2g6で加算することによりCOS(N/16)πのN=4の場
合の近似値(16-1)×(2+1)×4+1が求められることにな
る。この場合、図26の入力に示す入力データに対して
COS(4/16)π演算器2gでは、同図IIに示すタイミング
で上述の演算結果を出力データとして発生するようにな
る。
On the other hand, the COS (4/16) π computing units 2g, 2h
Then, the approximate expression 181 = (16-1) when C = N = 4 of COS (N / 16) π
Perform the operation of × (2 + 1) × 4 + 1. In this case, the arithmetic unit 2g
, The outputs of the subtracters 1g and 1h are given as input data, and the adder 2g1 adds these input data.
Then, the output of the adder 2g1 is given to the shifter 2g2,
When the output of the adder 2g1 is subtracted by the subtractor 2g3 from the output obtained from the shifter 2g2, (16-1) is obtained.
The output of the subtracter 2g3 and the output of the shifter 2g4 are added to the adder 2g5
(16-1) × (2 + 1) is obtained by adding The output of the adder 2g5 and the output of the adder 2g1 are added by the adder 2g6 to obtain an approximate value (16-1) × (2 + 1) in the case of N = 4 of COS (N / 16) π. × 4 + 1 will be required. In this case, the input data shown in FIG.
The COS (4/16) π calculator 2g generates the above-described calculation result as output data at the timing shown in FIG.

【0027】次いで、ステージIIIの演算回路33に進
む。この演算回路33では、ステージIIの演算回路32
のシフタ2a、2cの出力が加算器3aおよび減算器3
cに与えられ、同様にしてシフタ2b、2dの出力が加
算器3bおよび減算器3dに与えられ、さらにシフタ2
eとCOS(4/16)π演算部2gの出力が加算器3eおよび
減算器3gに、シフタ2fとCOS(4/16)π演算器2hの
出力が加算器3fおよび減算器3hに与えられる。これ
により、加算器3aは、ステージIIの演算回路32のシ
フタ2aと2cの出力を加算した結果を出力し、加算器
3bはステージIIの演算回路32のシフタ2bと2dの
出力を加算した結果を出力し、減算器3cはステージII
の演算回路32のシフタ2aの出力からシフタ2cの出
力を減算した結果を出力し、減算器3dはステージIIの
演算回路32のシフタ2bの出力からシフタ2dの出力
を減算した結果を出力するようになる。また、加算器3
eはステージIIの演算回路2のシフタ2eと演算器2g
の出力を加算した結果を出力し、加算器3fはステージ
IIの演算回路2のシフタ2fと加算器2hの出力を加算
した結果を出力し、加算器3gはステージIIの演算回路
32のシフタ2eの出力から演算器2gの出力を減算し
た結果を出力し、減算器3hはステージIIの演算回路3
2のシフタ2fの出力から演算器2hの出力を減算した
結果を出力するようになる。この場合、図26の入力デ
ータに対して各加算器3a、3b、3e、3fおよび減
算器3c、3d、3g、3hでは、同図IVに示すタイミ
ングで、それぞれの演算結果を出力するようになる。
Next, the operation proceeds to the operation circuit 33 of the stage III. The operation circuit 33 includes a stage II operation circuit 32
Output from the shifters 2a and 2c are the adder 3a and the subtractor 3
c, and similarly the outputs of shifters 2b and 2d are provided to adder 3b and subtractor 3d.
e and the output of the COS (4/16) π operation unit 2g are provided to the adder 3e and the subtractor 3g, and the outputs of the shifter 2f and the COS (4/16) π operation unit 2h are provided to the adder 3f and the subtractor 3h. . Thereby, the adder 3a outputs the result obtained by adding the outputs of the shifters 2a and 2c of the stage II operation circuit 32, and the adder 3b outputs the result of adding the outputs of the shifters 2b and 2d of the stage II operation circuit 32. And the subtractor 3c outputs the stage II
The subtracter 3d outputs the result obtained by subtracting the output of the shifter 2d from the output of the shifter 2b of the operation circuit 32 of the stage II. become. Adder 3
e is a shifter 2e of the operation circuit 2 of the stage II and an operation unit 2g.
Is output, and the adder 3f outputs the result of the stage.
The result of adding the output of the shifter 2f of the II operation circuit 2 and the output of the adder 2h is output, and the adder 3g outputs the result of subtracting the output of the operation unit 2g from the output of the shifter 2e of the stage II operation circuit 32. , The subtractor 3h is a stage II arithmetic circuit 3
The result of subtracting the output of the arithmetic unit 2h from the output of the second shifter 2f is output. In this case, the adders 3a, 3b, 3e, and 3f and the subtractors 3c, 3d, 3g, and 3h output the respective calculation results at the timings shown in FIG. Become.

【0028】次いで、ステージIVの演算回路34に進
む。この演算回路34では、ステージIIIの演算回路3
3の加算器3a、3bの出力がCOS(4/16)π演算器4
a、4bに与えられ、同様にして減算器3c、3dがCO
S(2/16)πおよびCOS(6/16)π演算器4c、4dに各別に
与えられ、加算器3e、3fの出力がCOS(1/16)πおよ
びCOS(7/16)π演算器4e、4fに各別に与えられ、減
算器3g、3hの出力がCOS(5/16)πおよびCOS(3/16)π
演算器4g、4hに各別に与えられる。この場合、図2
6の入力データに対してCOS(4/16)π演算器4a、4b
では、COS(N/16)πのN=4の場合の近似値(6-1)×(2+
1)×4+1の演算を実行し、同図IVに示すタイミングで、
その演算結果を出力データF(0)、F(4)として発
生する。同様にして、COS(2/16)πおよびCOS(6/16)π演
算器4c、4dについてもCOS(N/16)πN=2の場合の
近似値4×(64-4-1)+1/2およびCOS(N/16)πのN=6の場
合の近似値2×(32+16+1)の演算を実行し、同図IVに示す
タイミングで、その演算結果を出力データF(2)、F
(6)として発生し、COS(1/16)πおよびCOS(7/16)π演
算器4e、4fについてもCOS(N/16)πのN=1の場合
の近似値251=(128-2)×2-1 およびCOS(N/16)πのN=7
の場合の近似値2×(16+8+1)の演算を実行し、同図IVに
示すタイミングで、その演算結果を出力データF
(1)、F(7)として発生し、さらに、COS(5/16)π
およびCOS(3/16)π演算器4g、4hについてもCOS(N/1
6)πのN=5の場合の近似値2×(64+8-1)およびCOS(N/1
6)πのN=3の場合の近似値(2+1)×(64+8-1)の演算を
実行し、同図IVに示すタイミングで、その演算結果を出
力データF(5)、F(3)として発生するようにな
る。
Next, the operation proceeds to the operation circuit 34 of the stage IV. In this arithmetic circuit 34, the arithmetic circuit 3 of stage III
The output of the adders 3a and 3b is COS (4/16) π arithmetic unit 4.
a, 4b, and similarly, the subtracters 3c, 3d
S (2/16) π and COS (6/16) π arithmetic units 4c and 4d are given separately, and the outputs of adders 3e and 3f are subjected to COS (1/16) π and COS (7/16) π arithmetic The outputs of the subtracters 3g and 3h are respectively given to COS (5/16) π and COS (3/16) π
The arithmetic units 4g and 4h are individually given. In this case, FIG.
COS (4/16) π arithmetic unit 4a, 4b
Then, the approximate value of COS (N / 16) π when N = 4 is (6-1) × (2+
1) × 4 + 1 operation is performed, and at the timing shown in FIG.
The calculation results are generated as output data F (0) and F (4). Similarly, for COS (2/16) π and COS (6/16) π arithmetic units 4c and 4d, the approximate value 4 × (64-4-1) + when COS (N / 16) πN = 2 The calculation of the approximate value 2 × (32 + 16 + 1) in the case of N = 6 of 1/2 and COS (N / 16) π is executed, and the calculation result is output data F at the timing shown in FIG. (2), F
(6), and the COS (1/16) π and COS (7/16) π calculators 4e, 4f also have an approximate value of 251 = (128−128) when N = 1 for COS (N / 16) π. 2) × 2-1 and N = 7 of COS (N / 16) π
Is performed, and the result of the calculation is output data F at the timing shown in FIG.
(1), generated as F (7), and COS (5/16) π
And COS (3/16) π calculators 4g and 4h also have COS (N / 1
6) Approximate value of 2 × (64 + 8-1) and COS (N / 1
6) Calculate the approximate value (2 + 1) × (64 + 8-1) in the case of N = 3 of π, and output the calculation result to the output data F (5), at the timing shown in FIG. F (3).

【0029】以上の説明は、DCT演算処理の場合であ
るが、逆DCT演算処理の場合も上述したと同様であ
る。
The above explanation is for the DCT operation, but the inverse DCT operation is the same as described above.

【0030】この場合は入力データがステージIVの演算
回路34〜ステージIの演算回路31の順で与えられる
ようになる。
In this case, the input data is given in the order of the stage IV arithmetic circuit 34 to the stage I arithmetic circuit 31.

【0031】図26は、データ変換演算装置12の入力
から出力までのタイミングチャートであり、ステージI
の演算回路31〜ステージIVの演算回路34の動作を総
合した場合のタイミングチャートを示している。同図
中、I、II、III、IVは図22における各ステージI、I
I、III、IVの出力を示している。図26では、次データ
との処理の重なりを避けるように考慮してあり全体とし
て8bitのデータを入力した場合、1ライン当りの処理
周期は28クロック必要とする。この場合の処理は、入
力データ8bitのDCT処理の場合であるが、入力デー
タのビット数が異なる場合や逆DCT処理の場合は、1
データ当りの処理周期も変化するようになる。
FIG. 26 is a timing chart from the input to the output of the data conversion operation device 12, and shows the timing of the stage I.
4 shows a timing chart when the operations of the arithmetic circuits 31 to 34 of the stage IV are integrated. In the figure, I, II, III, and IV represent the respective stages I, I in FIG.
The output of I, III, and IV is shown. In FIG. 26, consideration has been given to avoid overlapping of processing with the next data. When 8-bit data is input as a whole, a processing cycle per line requires 28 clocks. The processing in this case is the case of DCT processing of 8 bits of input data. However, when the number of bits of input data is different or in the case of inverse DCT processing, 1 processing is performed.
The processing cycle per data also changes.

【0032】このように、ステージI〜ステージIVから
なるフローグラフに基づいてディスクリートコサイン変
換処理を実行するものにおいて、各ステージをシリアル
処理するように構成することにより、入力データが各ス
テージの演算回路により順次シリアル処理されるように
なり、従来のメモリに対してレジスタ、シフタおよび加
減算器からなる演算部を並列的に設けたものに比べ、回
路規模を小さくすることができるとともに、高速処理を
実現することができる。
As described above, in the discrete cosine transform processing based on the flow graph composed of the stages I to IV, each stage is configured to be serially processed, so that the input data is processed by the arithmetic circuit of each stage. , Serial processing is performed sequentially, and the circuit scale can be reduced and high-speed processing can be achieved compared to a conventional memory in which an arithmetic unit consisting of registers, shifters, and adders / subtractors is provided in parallel. can do.

【0033】[0033]

【発明が解決しようとする課題】しかしながら、このよ
うなシリアルDCT演算処理を行なうデータ圧縮伸張装
置にあっては、DCT演算式をそのままシリアル処理回
路上で実現する構成となっていたため、DCT演算を並
列的に行なうDCT演算装置に比べて回路規模は大幅に
小さくすることはできるものの、図16に示すようにフ
リップフロップ(FF)で126個、演算器を構成する
1bit Add(Sub)unitが 62個必要となり、未だ回路規
模が大きいという欠点があった。また、FF等を1段通
るごとに1クロック分遅延するので演算段数を短くする
ようにして高速化を図りたいという要望がある。
However, in a data compression / decompression device that performs such a serial DCT operation, the DCT operation is realized on a serial processing circuit as it is. Although the circuit scale can be significantly reduced as compared with the DCT operation device which performs the operation in parallel, as shown in FIG. However, there is a disadvantage that the circuit size is still large. In addition, there is a demand for speeding up the operation by reducing the number of operation stages because the delay is one clock each time one stage passes through the FF or the like.

【0034】そこで本発明は、小さな回路規模で高速に
データの圧縮を行なうことが可能なデータ圧縮伸張装置
を提供することを目的としている。
Accordingly, an object of the present invention is to provide a data compression / decompression apparatus capable of compressing data at high speed with a small circuit scale.

【0035】[0035]

【課題を解決するための手段】請求項1記載の発明は、
上記目的達成のため、所定のデータを記憶するデータ記
憶手段と、前記データ記憶手段から出力されたデータに
対して所定の係数に基づいてシリアル演算によりデータ
変換演算を実行するデータ変換演算手段と、前記データ
変換演算手段によるデータ変換後のデータに対して量子
化演算を実行する量子化手段と、前記データ記憶手段、
前記データ変換演算手段及び前記量子化手段を制御をす
る制御手段とを備えたデータ圧縮伸張装置であって、前
記データ変換演算手段のデータ変換演算式を展開し、展
開した式に従って前記データ変換演算手段を構成するよ
うにしている。
According to the first aspect of the present invention,
To achieve the above object, data storage means for storing predetermined data, data conversion operation means for performing a data conversion operation by serial operation based on a predetermined coefficient on the data output from the data storage means, Quantization means for performing a quantization operation on the data after data conversion by the data conversion operation means, the data storage means,
What is claimed is: 1. A data compression / decompression device comprising: a data conversion operation unit; and a control unit for controlling the quantization unit, wherein the data conversion operation expression is expanded by the data conversion operation unit, and the data conversion operation Means.

【0036】請求項2記載の発明は、所定のデータを記
憶するデータ記憶手段と、前記データ記憶手段から出力
されたデータに対して所定の係数に基づいてシリアル演
算によりデータ変換演算を実行するデータ変換演算手段
と、前記データ変換演算手段によるデータ変換後のデー
タに対して量子化演算を実行する量子化手段と、前記デ
ータ記憶手段、前記データ変換演算手段及び前記量子化
手段を制御をする制御手段とを備えたデータ圧縮伸張装
置であって、前記データ変換演算手段の係数を整数の比
に置き換え、該整数の比に置き換えることにより生じた
ゲインの変化を、前記量子化手段により調整するように
するとともに、データ変換演算式を展開し、展開した式
に従って前記データ変換演算手段を構成するようにして
いる。
According to a second aspect of the present invention, there is provided a data storage means for storing predetermined data, and a data for executing a data conversion operation by a serial operation based on a predetermined coefficient with respect to the data outputted from the data storage means. Conversion operation means, quantization means for performing a quantization operation on the data after data conversion by the data conversion operation means, and control for controlling the data storage means, the data conversion operation means, and the quantization means A data compression / expansion apparatus comprising: In addition, the data conversion operation expression is expanded, and the data conversion operation means is configured according to the expanded expression.

【0037】請求項3記載の発明は所定のデータを記憶
するデータ記憶手段と、前記データ記憶手段のデータを
パラレルデータからシリアルデータに変換するパラレル
−シリアル変換手段と、前記パラレル−シリアル変換手
段から出力されたデータに対して所定の係数に基づいて
シリアル演算によりデータ変換演算を実行するデータ変
換演算手段と、前記データ変換手段から出力されるシリ
アルデータをパラレルデータに変換し、前記データ記憶
手段に書き込むシリアル−パラレル変換手段と、前記デ
ータ変換演算手段によるデータ変換後のデータに対して
量子化演算を実行する量子化手段と、前記データ記憶手
段、前記パラレル−シリアル変換手段、前記データ変換
演算手段、前記シリアル−パラレル変換手段及び前記量
子化手段を制御をする制御手段とを備えたデータ圧縮伸
張装置であって、前記データ変換演算手段の係数を整数
の比に置き換え、該整数の比に置き換えることにより生
じたゲインの変化を、前記量子化手段により調整するよ
うにするとともに、データ変換演算式を展開し、展開し
た式に従って前記データ変換演算手段を構成するように
している。
According to a third aspect of the present invention, there is provided a data storage means for storing predetermined data, a parallel-serial conversion means for converting data in the data storage means from parallel data to serial data, and A data conversion operation unit for performing a data conversion operation by a serial operation on the output data based on a predetermined coefficient, and converting the serial data output from the data conversion unit into parallel data, Serial-parallel conversion means for writing, quantization means for performing a quantization operation on the data after the data conversion by the data conversion operation means, the data storage means, the parallel-serial conversion means, and the data conversion operation means Controlling the serial-parallel conversion means and the quantization means. A data compression / expansion device comprising: a control unit that replaces a coefficient of the data conversion operation unit with an integer ratio, and adjusts a change in gain caused by replacing the coefficient with the integer ratio by the quantization unit. In addition, a data conversion operation expression is developed, and the data conversion operation means is configured according to the expanded expression.

【0038】請求項4記載の発明は、所定のデータを記
憶するデータ記憶手段と、前記データ記憶手段から出力
されたデータに対して所定の係数に基づいてシリアル演
算によりデータ変換演算を実行するデータ変換演算手段
と、前記データ変換演算手段によるデータ変換後のデー
タに対して量子化演算を実行する量子化手段と、前記デ
ータ記憶手段、前記データ変換演算手段及び前記量子化
手段を制御をする制御手段とを備えたデータ圧縮伸張装
置であって、前記データ変換演算手段のデータ変換演算
式の係数の値を2のべきで表現するとともに、該係数の
値を2のべきで表現するとき所定以上ビット数が大きく
なる部分については該係数を整数の比に置き換え、該整
数の比に置き換えることにより生じたゲインの変化を、
前記量子化手段により調整するようにするとともに、デ
ータ変換演算式を展開し、展開した式に従って前記デー
タ変換演算手段を構成するようにしている。
According to a fourth aspect of the present invention, there is provided a data storage means for storing predetermined data, and a data for executing a data conversion operation by a serial operation on the data output from the data storage means based on a predetermined coefficient. Conversion operation means, quantization means for performing a quantization operation on the data after data conversion by the data conversion operation means, and control for controlling the data storage means, the data conversion operation means, and the quantization means Means for expressing a coefficient value of a data conversion operation expression of the data conversion operation means by a power of 2 and a value which is not less than a predetermined value when expressing the value of the coefficient by a power of 2 For the portion where the number of bits is large, the coefficient is replaced with an integer ratio, and the change in gain caused by replacing the integer ratio is
In addition to the adjustment by the quantization means, a data conversion operation expression is developed, and the data conversion operation means is configured according to the expanded expression.

【0039】前記データ変換演算手段は、例えば請求項
5に記載されているように、各入力に所定の係数が表れ
るようにデータ変換演算式を展開し、該展開したデータ
変換演算式の係数部分をシリアル演算する第1のシリア
ル演算部と、該第1のシリアル演算部の出力を加減算し
て該展開したデータ変換演算式の演算を実行する第2の
シリアル演算部とにより構成するようにしてもよく、前
記第1のシリアル演算部は、例えば請求項6に記載され
ているように、前記展開したデータ変換演算式の係数を
2のべきに数値をかけた形で表現するとともに、該係数
を2のべきに数値をかけた形で表現した場合の数値部分
をシリアル演算するシリアル回路により構成するように
してもよく、前記第2のシリアル演算部は、例えば請求
項7に記載されているように、前記第1のシリアル演算
部から出力された数値を加減算して出力する複数の加減
算器により構成され、前記展開したデータ変換演算式の
係数を2のべきに数値をかけた形で表現した場合の2の
べき部分を各加減算器への入力位置により調整するよう
にしてもよい。
The data conversion operation means expands the data conversion operation expression so that a predetermined coefficient appears at each input, and a coefficient part of the expanded data conversion operation expression. And a second serial operation unit that adds and subtracts the output of the first serial operation unit and executes the operation of the expanded data conversion operation expression. The first serial operation unit may express the coefficient of the expanded data conversion operation expression in a form obtained by multiplying a numerical value by a power of two, as described in claim 6, for example. May be constituted by a serial circuit that performs a serial operation on a numerical value part when the numerical value is expressed by multiplying a numerical value by a power of 2. The second serial operation unit may be configured, for example, as described in claim 7. A plurality of adder / subtracters for adding and subtracting the numerical value output from the first serial operation unit and outputting the result. The coefficients of the expanded data conversion operation expression are multiplied by a power of two. The power of 2 in the case of expression may be adjusted by the input position to each adder / subtractor.

【0040】また、前記データ変換演算手段は、例えば
請求項8に記載されているように、データに対してシリ
アル演算により直交変換を実行する直交変換手段であっ
てもよく、前記データ変換演算手段は、例えば請求項9
に記載されているように、データに対してシリアル演算
により離散コサイン変換(DCT)を実行する離散コサ
イン変換手段であってもよい。また、前記データ変換演
算手段は、例えば請求項10に記載されているように、
入力されたデータを所定のクロックに応答して順次移動
させるシリアル演算器を含んで構成されてもよく、前記
データ変換演算手段は、例えば請求項11に記載されて
いるように、データ変換演算式の係数の値を2のべきで
表現したシリアル回路により構成し、該シリアル回路に
よるシリアル演算によりデータ変換演算を実行するよう
にしてもよく、さらには、前記データ変換演算手段は、
例えば請求項12に記載されているように、データ変換
演算式の係数の値を2のべきで表現するとともに、該係
数の値を2のべきで表現するとき所定以上ビット数が大
きくなる部分については該係数を整数の比に置き換えた
シリアル回路により構成し、該シリアル回路によるシリ
アル演算によりデータ変換演算を実行するようにしても
よい。
Further, the data conversion operation means may be orthogonal transformation means for executing orthogonal transformation by serial operation on data, for example, as set forth in claim 8. Is, for example, claim 9
, A discrete cosine transform unit that executes a discrete cosine transform (DCT) by serial operation on data may be used. Further, the data conversion operation means may be, for example, as described in claim 10.
The data conversion operation unit may be configured to include a serial operation unit that sequentially moves input data in response to a predetermined clock, wherein the data conversion operation unit includes, for example, a data conversion operation expression May be configured by a serial circuit expressing the value of the coefficient by a power of 2, and the data conversion operation may be performed by a serial operation by the serial circuit.
For example, as described in claim 12, when a value of a coefficient of a data conversion operation expression is expressed by a power of 2, and when the value of the coefficient is expressed by a power of 2, a portion where the number of bits becomes larger than a predetermined value is considered. May be constituted by a serial circuit in which the coefficient is replaced by an integer ratio, and a data conversion operation may be executed by a serial operation by the serial circuit.

【0041】また、前記データ変換演算手段で用いられ
るデータ変換演算式は、例えば請求項13に記載されて
いるように、該データ変換演算式の係数を、前記量子化
手段の量子化演算に用いる量子化係数に含ませるように
作成してもよく、前記量子化手段によるゲインの調整
は、例えば請求項14に記載されているように、前記デ
ータ変換演算手段の係数を整数の比に変えることにより
生じたゲイン変化分を吸収させるように構成された量子
化テーブルにより行なわれるものであってもよい。さら
に、前記データ変換演算手段の係数の整数の比への置き
換えは、例えば請求項15に記載されているように、該
係数を整数値に置き換えることにより行なうようにする
ものであってもよい。
In the data conversion operation expression used in the data conversion operation means, for example, the coefficients of the data conversion operation expression are used for the quantization operation of the quantization means. The gain may be adjusted so as to be included in the quantization coefficient, and the adjustment of the gain by the quantization means may be performed, for example, by changing the coefficient of the data conversion operation means to an integer ratio, as described in claim 14. May be performed by a quantization table configured to absorb the gain change caused by the above. Further, the replacement of the coefficient by the data conversion operation means with an integer ratio may be performed by replacing the coefficient with an integer value, for example.

【0042】[0042]

【作用】本発明の手段はの作用は次の通りである。The function of the present invention is as follows.

【0043】請求項1記載の発明では、データ変換演算
手段のデータ変換演算式を各項毎に展開し、展開した式
に従ってシリアル回路を構成するようにしている。この
場合、展開した式に従って構成されるシリアル回路は、
例えば各入力に共通な係数が表れるようにデータ変換演
算式を展開したときに該係数部分をシリアル演算する第
1のシリアル演算部と、このシリアル演算部の出力を加
減算して展開したデータ変換演算式の演算を実行する第
2のシリアル演算部とにより構成され、各入力がこのシ
リアル回路に入力されると第1のシリアル演算部により
各入力をシリアル演算して係数分を求めておき、このよ
うにして作成された係数に対して第2のシリアル演算部
が加減算を行なって展開したデータ変換演算式の演算が
実行される。
According to the first aspect of the present invention, a data conversion operation expression of the data conversion operation means is expanded for each term, and a serial circuit is configured according to the expanded expression. In this case, the serial circuit configured according to the expanded equation
For example, a first serial operation unit that serially operates on a coefficient portion when a data conversion operation expression is expanded so that a coefficient common to each input appears, and a data conversion operation that is expanded by adding and subtracting the output of the serial operation unit And a second serial operation unit for executing the operation of the expression. When each input is input to the serial circuit, the first serial operation unit serially operates each input to obtain a coefficient. The second serial operation unit performs addition and subtraction on the coefficients created as described above, and executes an operation of a data conversion operation expression developed.

【0044】従って、展開したデータ変換演算式に従っ
てシリアル回路を構成することによりシフトレジスタ等
のシリアル回路の段数を減少させてクロック数を減らす
ことができ、処理速度を向上させることができる。
Therefore, by configuring a serial circuit in accordance with the developed data conversion operation formula, the number of serial circuits such as a shift register can be reduced, the number of clocks can be reduced, and the processing speed can be improved.

【0045】請求項2、3、4、5、6、7、8、9、
10、11、12、13、14及び15記載の発明で
は、データ変換演算手段の係数が整数の比に置き換えら
れ、そのゲインの変化は量子化手段により調整されると
ともに、データ変換演算式を展開し、展開した式に従っ
てシリアル回路を構成するようにしている。この場合、
シリアル回路は、例えば展開したデータ変換演算式の係
数を2のべきに数値をかけた形で表現した場合の数値部
分をシリアル演算する第1のシリアル演算部と、このシ
リアル演算部から出力された数値を加減算して出力する
複数の加減算器からなる第2のシリアル演算部とにより
構成され、各入力がこのシリアル回路に入力されると第
1のシリアル演算部により各入力をシリアル演算して係
数分を求め、このようにして作成された係数に対して第
2のシリアル演算部が加減算を行なって展開したデータ
変換演算式の演算が実行される。このとき、展開したデ
ータ変換演算式の係数を2のべきに数値をかけた形で表
現した場合の2のべき部分は各加減算器への入力位置に
より調整される。
Claims 2, 3, 4, 5, 6, 7, 8, 9,
In the inventions described in 10, 11, 12, 13, 14 and 15, the coefficients of the data conversion operation means are replaced by integer ratios, the change in the gain is adjusted by the quantization means, and the data conversion operation expression is developed. Then, the serial circuit is configured according to the developed formula. in this case,
The serial circuit includes, for example, a first serial operation unit that performs a serial operation on a numerical value part in a case where a coefficient of an expanded data conversion operation expression is multiplied by a power of 2 and a serial operation unit that is output from the serial operation unit A second serial operation unit comprising a plurality of adders / subtracters for adding and subtracting numerical values and outputting the result. When each input is input to this serial circuit, the first serial operation unit serially operates each input to obtain a coefficient. The second serial operation unit performs addition and subtraction on the coefficients created in this way, and the expansion of the data conversion expression is performed. At this time, when a coefficient of the developed data conversion operation expression is expressed in a form obtained by multiplying a power of 2 by a numerical value, a power of 2 is adjusted by an input position to each adder / subtractor.

【0046】また、データ変換演算式の係数が、量子化
演算に用いる量子化係数に含まれるようにデータ変換演
算式を作成しておき、このようにして作成されたデータ
変換演算式の係数の値を2のべきで表現してシリアル回
路が構成される。このとき、該係数の値を2のべきで表
現しようとすれば所定以上ビット数が大きくなる部分に
ついては該係数が整数の比に置き換えられ、該整数の比
に置き換えられることにより生じたゲインの変化は量子
化手段により調整される。
Further, a data conversion operation expression is prepared so that the coefficients of the data conversion operation expression are included in the quantized coefficients used for the quantization operation, and the coefficients of the data conversion operation expression thus generated are calculated. The value is expressed by a power of 2 to form a serial circuit. At this time, if the value of the coefficient is to be expressed by a power of 2, for a portion where the number of bits becomes larger than a predetermined value, the coefficient is replaced with an integer ratio, and the gain caused by the replacement with the integer ratio is generated. The change is adjusted by the quantization means.

【0047】従って、単にシリアル回路を実現していた
場合に比べ、回路規模を大幅に小さくすることができる
とともに、シフトレジスタ等のシリアル回路の段数を減
少させてクロック数を減らすことができ、処理速度を向
上させることができ、画像等のデータ圧縮に利用するこ
とができる。
Therefore, as compared with the case where a serial circuit is simply realized, the circuit scale can be greatly reduced, and the number of clocks can be reduced by reducing the number of serial circuits such as shift registers. Speed can be improved, and it can be used for data compression of images and the like.

【0048】[0048]

【実施例】以下、本発明を図面に基づいて説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described below with reference to the drawings.

【0049】原理説明 (I)先ず、本実施例の基本的な考え方を説明する。図
11に示した従来のデータ圧縮伸張装置では、シリアル
演算によるDCT演算を実現するためバタフライ演算を
そのままシリアル回路上に表わしていた。具体的には、
COS係数値を2のべきで表わすことによって図22に示
すようなシリアルDCT演算回路を実現していたため、
DCT演算式の係数をすべて2のべきで表現しようとす
るとビット数が大きなものとなり、したがって、シリア
ル回路を構成するFF等の段数が大きくなってしまって
いた。
Explanation of Principle (I) First, the basic concept of this embodiment will be described. In the conventional data compression / decompression device shown in FIG. 11, a butterfly operation is directly represented on a serial circuit in order to realize a DCT operation by a serial operation. In particular,
Since the serial DCT operation circuit as shown in FIG. 22 was realized by expressing the COS coefficient value by a power of 2,
If the coefficients of the DCT operation expression are all expressed by powers of two, the number of bits becomes large, and therefore the number of stages such as FFs constituting the serial circuit becomes large.

【0050】ところで、DCT演算された画像データは
後段の量子化部(例えば、図11の量子化装置14)に
おいて量子化されることになる。
By the way, the image data subjected to the DCT operation is quantized by a quantizing unit (for example, the quantizing device 14 in FIG. 11) in the subsequent stage.

【0051】本発明者はこの点に着目して、2のべきで
表現できる部分はべきで表現して取り込みに用いる一方
で、べきで表現しようとすればビット数が大きくなって
しまう部分については敢えてべきにより表現しようとし
ないで2のべきにとらわれずにDCTの演算係数を整数
比(あるいは、整数値)に置き換え、そのゲイン変化分
を量子化部によって吸収するようにする。これによって
2のべきによりシリアル回路を実現していた場合に比
べ、回路規模を大幅に小さくすることができるととも
に、シリアルの段数を減少させて処理速度を向上させる
ことができる。
By paying attention to this point, the present inventor expresses a part which can be expressed by a power of 2 as an exponent and uses it for capturing. Instead of dare to express the power, the operation coefficient of the DCT is replaced with an integer ratio (or an integer value) without being bound to the power of 2, and the gain change is absorbed by the quantization unit. This makes it possible to greatly reduce the circuit scale and improve the processing speed by reducing the number of serial stages, as compared with a case where a serial circuit is realized by a power of two.

【0052】(II)さらに、上述したDCT演算式をシ
リアル回路により構成する場合においてもDCT演算式
を加減算及びバタフライ演算を用いて実現していたた
め、FF等の段数をある程度以上減らすのは困難であ
り、速度向上のためには一層のFF等の段数の削減が求
められていた。
(II) Further, even when the above-described DCT operation expression is constituted by a serial circuit, since the DCT operation expression is realized by using addition / subtraction and butterfly operation, it is difficult to reduce the number of stages such as FFs to a certain extent. In order to improve the speed, it has been required to further reduce the number of stages such as FFs.

【0053】そこで本実施例では、DCT演算式を展開
することによって各入力に共通な係数(必ずしも共通で
なくてもよい)が表れるように係数を分割し、このよう
に展開したDCT演算式をバタフライ演算にとらわれず
にそのままハードウェア化する。このため、先ず、前段
のシリアル回路で各入力に用いる係数分の計算をしてお
き、続く後段のシリアル回路で計算された係数出力に対
して出力方向に符号分を含めた加減算を行なうようにし
てDCT演算式をそのままハードウェア化する。これに
よってFF等の段数を減らすことができ、クロック数
(時間)を短縮することができる。
Therefore, in the present embodiment, the coefficients are divided so that a common coefficient (not necessarily common) appears in each input by expanding the DCT arithmetic expression, and the DCT arithmetic expression thus expanded is developed. The hardware is used as it is without being bound by butterfly operations. For this reason, first, the calculation of the coefficients used for each input is performed in the preceding serial circuit, and the addition and subtraction including the sign in the output direction is performed on the coefficient output calculated in the subsequent serial circuit. Then, the DCT operation expression is directly converted into hardware. Thus, the number of stages such as FFs can be reduced, and the number of clocks (time) can be reduced.

【0054】例えば、図1に示すようにDCT演算式を
展開して各入力に共通な係数17、85、48、72が
得られたとすると、先ず、前段のシリアル回路でDCT
演算式の係数に相当する部分を作成するようにする。こ
の場合、上記係数17、85、48、72を2のべきに
ある数値をかけた形で表現し、この数値の部分(図1の
破線内の数値参照)をシリアル回路で構成する。そし
て、2のべきの部分は後段のシリアル回路への入力位置
により調整するようにする。すなわち、図1に示すよう
に後段のシリアル回路はアダー(サブトラクタも含む)
が複数個つながるように構成されており、各アダーを1
段通る度に×2が入る構成となっていて、上記係数のう
ち2のべきで表現された部分は各アダーへの接続方法に
より調整する。ここで、上記係数17、85、48、7
2のうち、基本的に奇数のもの(係数17、85)につ
いての加算を先に行なうようにするがこれは以下の理由
からである。すなわち、1度加算する度に1クロック遅
れるというシリアル回路の構造上、奇数の係数を作るの
が大変であり、奇数の係数を作るために1を足すという
動作が必要となる。このため、先ず手間のかかる奇数の
係数同士を事前に足してしまうようにする。図1では、
係数85は42×21+1、係数17は16+1と考え
てこれら奇数の係数の1同士を事前に1回足してしまう
ようにする。これにより1クロック遅れて×2倍とな
る。その次に、その他の部分を足しておいたものに上記
奇数の1同士を足したものを加えるようにするためもう
1クロック必要となり全体では×4倍となる。つまり、
奇数の係数が2個以上ある場合には2回のアダーを通す
必要があり×4が最小の形となる。なお、奇数をなくす
ようにすると演算精度が落ちることになる。
For example, as shown in FIG. 1, if the DCT arithmetic expression is expanded to obtain coefficients 17, 85, 48, and 72 common to each input, first, the DCT operation is performed by the serial circuit in the preceding stage.
A part corresponding to the coefficient of the arithmetic expression is created. In this case, the coefficients 17, 85, 48, and 72 are expressed in a form multiplied by a power of 2, and a portion of the numerical value (see a numerical value in a broken line in FIG. 1) is configured by a serial circuit. The power of 2 is adjusted by the input position to the serial circuit at the subsequent stage. That is, as shown in FIG. 1, the serial circuit at the subsequent stage is an adder (including a subtractor).
Are connected so that each adder is
Each time a step is passed, x2 is entered. The part expressed by a power of 2 of the above coefficients is adjusted by the connection method to each adder. Here, the coefficients 17, 85, 48, 7
Of the two, the addition of the odd number (coefficients 17, 85) is basically performed first for the following reason. That is, it is difficult to generate odd-numbered coefficients due to the structure of the serial circuit in which the clock is delayed by one clock each time it is added once, and an operation of adding 1 to generate odd-numbered coefficients is required. For this reason, first, the complicated odd coefficients are added in advance. In FIG.
Considering that the coefficient 85 is 42 × 2 1 +1 and the coefficient 17 is 16 + 1, one of these odd coefficients is added once beforehand. As a result, it becomes × 2 times delayed by one clock. Next, another clock is required to add the sum of the other parts to the sum of the odd ones, which is × 4 times as a whole. That is,
If there are two or more odd coefficients, it is necessary to pass through the adder twice, and x4 is the minimum form. If the odd numbers are eliminated, the calculation accuracy decreases.

【0055】また、図1では、係数17は2×23
1、係数48は6×23で表わされ、2のべきが同じ23
であるからこの部分を1段目のアダーにより足してしま
う。以後、アダーを1段通る度に2倍されるので3段目
のアダーでこの係数の加算結果が揃うことになる。ま
た、係数72は18×22、係数85は42×21+1で
表わされるから2のべきに着目して係数72の18を2
番目のアダーに、係数85の42は3番目のアダーに入
力される。
In FIG. 1, the coefficient 17 is 2 × 2 3 +
1, the coefficient 48 is represented by 6 × 2 3 , and the power of 2 is the same 2 3
Therefore, this part is added by the first-stage adder. Thereafter, the coefficient is doubled each time it passes through one step of the adder, so that the result of addition of the coefficients is completed in the third step of the adder. Also, since the coefficient 72 is represented by 18 × 2 2 and the coefficient 85 is represented by 42 × 2 1 +1, the 18 of the coefficient 72
In the second adder, 42 of the coefficient 85 is input to the third adder.

【0056】このようにDCT演算式をそのままハード
ウェア化することによってFF等の段数を減らすことが
でき、クロック数(時間)を短縮することができる。
As described above, the number of stages such as FFs can be reduced and the number of clocks (time) can be reduced by using the DCT arithmetic expression as hardware as it is.

【0057】実施例 図2〜図10は上記基本原理に基づくデータ圧縮伸張装
置の実施例を示す図であり、図2〜図5は上記基本原理
(I)に基づくデータ圧縮伸張装置を、図6〜図10は
上記基本原理(II)に基づくデータ圧縮伸張装置を説明
するための図である。
Embodiment FIGS. 2 to 10 are views showing an embodiment of a data compression / expansion apparatus based on the above basic principle. FIGS. 2 to 5 are diagrams showing a data compression / expansion apparatus based on the above basic principle (I). 6 to 10 are views for explaining a data compression / decompression device based on the above basic principle (II).

【0058】先ず、上記基本原理(I)に基づくデータ
圧縮伸張装置の構成を説明する。
First, the configuration of the data compression / decompression device based on the basic principle (I) will be described.

【0059】図2はデータ圧縮伸張装置のブロック図で
あり、前記図11のデータ圧縮伸張装置に対応する図で
ある。なお、従来例と同一構成部分には同一番号を付し
ている。図2において、データ圧縮伸張装置は、圧縮を
施そうとする2次元データ及びデータ変換演算後のデー
タをパラレルデータの形で蓄えるデータ記憶装置10
と、データ記憶装置10から読み込んだパラレルデータ
をシリアルデータに変換するパラレル−シリアル変換装
置11と、DCT演算係数を簡単な整数比(あるいは、
整数値)に変えた形のシリアル回路により構成され、パ
ラレル−シリアル変換装置11から出力されたデータに
対して一次元のDCT演算をシリアル演算の形で施すデ
ータ変換演算装置50と、シリアルDCT演算されたシ
リアルデータをパラレルデータに変換してデータ記憶装
置10に書き込むシリアル−パラレル変換装置13と、
データ記憶装置10に蓄えられたデータ変換演算後のデ
ータに対して、DCT演算係数を整数比に変えることに
より生じたゲイン変化分を吸収させるようにした量子化
テーブルの値で除算する(あるいは、逆数の乗算を行な
う)ことによって量子化演算を行なう量子化装置51
と、上記各部の動作をデータ圧縮伸張装置の全体を制御
する制御装置52により構成されている。
FIG. 2 is a block diagram of the data compression / expansion device, and corresponds to the data compression / expansion device of FIG. The same components as those of the conventional example are denoted by the same reference numerals. In FIG. 2, a data compression / decompression device is a data storage device 10 for storing two-dimensional data to be compressed and data after a data conversion operation in the form of parallel data.
And a parallel-serial converter 11 for converting parallel data read from the data storage device 10 into serial data, and a simple integer ratio (or,
A data conversion operation device 50 configured by a serial circuit in a form changed to an integer value and performing one-dimensional DCT operation on the data output from the parallel-serial conversion device 11 in the form of a serial operation; A serial-to-parallel converter 13 for converting the serial data into parallel data and writing the parallel data to the data storage device 10;
The data after the data conversion operation stored in the data storage device 10 is divided by a value of a quantization table configured to absorb a gain change caused by changing a DCT operation coefficient to an integer ratio (or Quantization device 51 that performs a quantization operation by performing a reciprocal multiplication.
And a control unit 52 for controlling the operation of each of the above-described units as a whole of the data compression / decompression apparatus.

【0060】図3は、上記シリアルDCT演算を実行す
るためのデータ変換演算装置50の回路構成を示す図で
あり、I〜IVの各ステージから構成される。
FIG. 3 is a diagram showing a circuit configuration of the data conversion operation device 50 for executing the serial DCT operation, and is composed of stages I to IV.

【0061】図3において、61はステージIの演算回
路、62はステージIIの演算回路、63はステージIII
の演算回路、64はステージIVの演算回路であり、これ
らのステージI〜IVの演算回路61〜64はそれぞれス
イッチ65〜69を介して直列に接続するように構成さ
れている。この場合、DCT演算処理では、図2に示す
ように演算回路61〜64の順で直列接続され、また逆
DCT演算の処理では、スイッチ65〜69の切換え動
作により演算回路64〜61の順で直接接続されるよう
になっている。そして、入力端子70に与えられる入力
データに対するDCTまたは逆DCT演算結果は出力端
子71から出力されるようになる。この場合、入力デー
タは、シリアル8系統よりなっている。
In FIG. 3, reference numeral 61 denotes a stage I operation circuit, 62 denotes a stage II operation circuit, and 63 denotes a stage III operation circuit.
Is an operation circuit of stage IV, and operation circuits 61 to 64 of these stages I to IV are configured to be connected in series via switches 65 to 69, respectively. In this case, in the DCT operation processing, the operation circuits are connected in series in the order of the operation circuits 61 to 64 as shown in FIG. 2, and in the processing of the inverse DCT operation, the operation of the switches 65 to 69 is performed in the order of the operation circuits 64-61. It is connected directly. Then, the DCT or inverse DCT operation result for the input data supplied to the input terminal 70 is output from the output terminal 71. In this case, the input data consists of eight serial lines.

【0062】図4は前記基本原理(I)に基づくデータ
圧縮伸張装置のデータ変換演算装置50の回路構成図で
あり、前記図16に示す従来のデータ変換演算装置12
に対応する図である。
FIG. 4 is a circuit diagram of a data conversion operation device 50 of the data compression / decompression device based on the basic principle (I).
FIG.

【0063】図4において、ステージIの演算回路61
は上述したシリアル演算を実行するものであり、加算器
81a、81b、81c、81dと減算器81e、81
f、81g、81hから構成されている。このステージ
Iの演算回路61の構成は従来例と同様であるが、入力
データf0〜f7の入力は異なっている。
In FIG. 4, the operation circuit 61 of stage I
Performs the above-described serial operation, and includes adders 81a, 81b, 81c, 81d and subtracters 81e, 81d.
f, 81g and 81h. The configuration of the operation circuit 61 of this stage I is the same as that of the conventional example, but the input of the input data f0 to f7 is different.

【0064】また、ステージIIの演算回路62は、原理
説明(I)で述べたシリアル演算を実行するものであ
り、係数を簡単な整数比に近似した場合のDCTシリア
ル演算を行なうシリアル演算器82a〜82hから構成
されている。ここで、上記演算器82aは、加算器81
aの出力と加算器81dの出力とを加算する加算器82
a1、この加算器82a1の出力をシフトする3個のフリ
ップフロップ(FF)からなるシフタ82a2から構成
されている。また、上記演算器82bは、加算器81b
の出力と加算器81cの出力とを加算する加算器82b
1、この加算器82b1の出力をシフトする3個のフリッ
プフロップ(FF)からなるシフタ82b2から構成さ
れている。また、上記演算器82cは、加算器81bの
出力から加算器81cの出力を減算する減算器82c
1、この減算器82c1の出力をシフトする3個のフリッ
プフロップからなるシフタ82c2、このシフタ82c2
の第1番目のフリップフロップの出力とシフタ82c2
の出力を加算する加算器82c3、シフタ82c2の第2
番目のフリップフロップの出力と加算器82c3の出力
を加算する加算器82c4から構成されている。同様
に、上記演算器82dは、加算器81aの出力から加算
器81dの出力を減算する減算器82d1、この減算器
82d1の出力をシフトする3個のフリップフロップか
らなるシフタ82d2、このシフタ82d2の第1番目の
フリップフロップの出力とシフタ82d2の出力を加算
する加算器82d3、シフタ82d2の第2番目のフリッ
プフロップの出力と加算器82d3の出力を加算する加
算器82d4から構成されている。
The operation circuit 62 of the stage II executes the serial operation described in the principle explanation (I). The serial operation unit 82a performs the DCT serial operation when the coefficient is approximated to a simple integer ratio. ~ 82h. Here, the arithmetic unit 82a includes an adder 81
adder 82 that adds the output of a and the output of adder 81d
a1, a shifter 82a2 composed of three flip-flops (FF) for shifting the output of the adder 82a1. The arithmetic unit 82b is provided with an adder 81b.
Adder 82b that adds the output of the adder 81c and the output of the adder 81c
1. The shifter 82b2 comprises three flip-flops (FF) for shifting the output of the adder 82b1. The arithmetic unit 82c is a subtractor 82c that subtracts the output of the adder 81c from the output of the adder 81b.
1, a shifter 82c2 composed of three flip-flops for shifting the output of the subtractor 82c1, and a shifter 82c2
Of the first flip-flop and shifter 82c2
Of the adder 82c3 and the second shifter 82c2
An adder 82c4 adds the output of the flip-flop and the output of the adder 82c3. Similarly, the arithmetic unit 82d includes a subtractor 82d1 for subtracting the output of the adder 81d from the output of the adder 81a, a shifter 82d2 composed of three flip-flops for shifting the output of the subtractor 82d1, and a shifter 82d2. The adder 82d3 adds the output of the first flip-flop and the output of the shifter 82d2, and the adder 82d4 adds the output of the second flip-flop of the shifter 82d2 and the output of the adder 82d3.

【0065】上記演算器82eは、減算器81eの出力
をシフトする5個のフリップフロップからなるシフタ8
2e1、このシフタ82e1の第3番目のフリップフロッ
プの出力と第4番目のフリップフロップの出力を加算す
る加算器82e2、加算器82e2の出力をシフトするシ
フタ82e3、シフタ82e1の第1番目のフリップフロ
ップの出力と第5番目のフリップフロップの出力を加算
する加算器82e4から構成されている。また、上記演
算器82fは、減算器81gの出力から減算器81fの
出力を減算する減算器82f1、この減算器82f1の出
力をシフトする4個のフリップフロップからなるシフタ
82f2、このシフタ82f2の第2番目のフリップフロ
ップの出力と第3番目のフリップフロップの出力を加算
する加算器82f3、減算器82f1の出力とシフタ82
f2の出力を加算する加算器82f4から構成されてい
る。また、上記演算器82gは、減算器81fの出力と
減算器81gの出力を加算する加算器82g1、この加
算器82g1の出力をシフトする4個のフリップフロッ
プからなるシフタ82g2、このシフタ82g2の第2番
目のフリップフロップの出力と第3番目のフリップフロ
ップの出力を加算する加算器82g3、加算器82g1の
出力とシフタ82g2の出力を加算する加算器82g4か
ら構成されている。また、上記演算器82hは、減算器
81hの出力をシフトする5個のフリップフロップから
なるシフタ82h1、このシフタ82h1の第3番目のフ
リップフロップの出力と第4番目のフリップフロップの
出力を加算する加算器82h2、加算器82h2の出力を
シフトするシフタ82h3、シフタ82h1の第1番目の
フリップフロップの出力と第5番目のフリップフロップ
の出力を加算する加算器82h4から構成されている。
The arithmetic unit 82e is provided with a shifter 8 composed of five flip-flops for shifting the output of the subtractor 81e.
2e1, an adder 82e2 for adding the output of the third flip-flop of the shifter 82e1 and the output of the fourth flip-flop, a shifter 82e3 for shifting the output of the adder 82e2, and a first flip-flop of the shifter 82e1. And the adder 82e4 for adding the output of the fifth flip-flop. The arithmetic unit 82f includes a subtractor 82f1 for subtracting the output of the subtractor 81f from the output of the subtractor 81g, a shifter 82f2 including four flip-flops for shifting the output of the subtractor 82f1, and a second shifter 82f2. The adder 82f3 for adding the output of the second flip-flop and the output of the third flip-flop, the output of the subtractor 82f1 and the shifter 82
It comprises an adder 82f4 for adding the output of f2. The arithmetic unit 82g includes an adder 82g1 for adding the output of the subtractor 81f and the output of the subtractor 81g, a shifter 82g2 composed of four flip-flops for shifting the output of the adder 82g1, and a second shifter 82g2. It comprises an adder 82g3 for adding the output of the second flip-flop and the output of the third flip-flop, and an adder 82g4 for adding the output of the adder 82g1 and the output of the shifter 82g2. The arithmetic unit 82h shifts the output of the subtractor 81h by five flip-flops, and adds the output of the third flip-flop and the output of the fourth flip-flop of the shifter 82h1. It comprises an adder 82h2, a shifter 82h3 for shifting the output of the adder 82h2, and an adder 82h4 for adding the output of the first flip-flop and the output of the fifth flip-flop of the shifter 82h1.

【0066】また、ステージIIIの演算回路63は、原
理説明(I)で述べたシリアル演算を実行するものであ
り、演算器82aの出力と演算器82b2の出力を加算
する加算器83a、減算器82aの出力から演算器82
bの出力を減算する減算器83b、演算器82dの加算
器82d3の出力から演算器82cの加算器82c4の出
力を減算する減算器83c、演算器82cの加算器82
c3の出力と演算器82dの加算器82d4の出力を加算
する加算器83d、演算器82eの加算器82e4の出
力と演算器82fの加算器82f3の出力を加算する加
算器83e、演算器82eのシフタ82e3の出力から
演算器82fの加算器82f4の出力を減算する減算器
83f、演算器82hの加算器82h3の出力から演算
器82gの加算器82f4の出力を減算する減算器83
g、演算器82gの加算器82g3の出力と演算器82
hの加算器82h4の出力を加算する加算器83hから
構成されている。
The operation circuit 63 of the stage III executes the serial operation described in the principle explanation (I). The adder 83a adds the output of the operation unit 82a and the output of the operation unit 82b2, and the subtractor From the output of 82a,
A subtractor 83b for subtracting the output of b, a subtractor 83c for subtracting the output of the adder 82c4 of the arithmetic unit 82c from the output of the adder 82d3 of the arithmetic unit 82d, and an adder 82 for the arithmetic unit 82c
An adder 83d that adds the output of c3 and the output of the adder 82d4 of the calculator 82d, an adder 83e that adds the output of the adder 82e4 of the calculator 82e and the output of the adder 82f3 of the calculator 82f, A subtractor 83f for subtracting the output of the adder 82f4 of the arithmetic unit 82f from the output of the shifter 82e3, and a subtracter 83 for subtracting the output of the adder 82f4 of the arithmetic unit 82g from the output of the adder 82h3 of the arithmetic unit 82h.
g, the output of the adder 82g3 of the arithmetic unit 82g and the arithmetic unit 82
An adder 83h adds the output of the adder 82h4 of h.

【0067】また、ステージIVの演算回路64は、原理
説明(I)で述べたシリアル演算を実行するものであ
り、係数を簡単な整数比に近似した場合のDCTシリア
ル演算を行なうシリアル演算器84a〜84hから構成
されている。ここで、上記演算器84aは、加算器83
aの出力をシフトする6個のフリップフロップからなる
シフタ84a1、このシフタ84a1の第5番目のフリッ
プフロップの出力と第6番目のフリップフロップの出力
を加算する加算器84a2、加算器84a2の出力からシ
フタ84a1の第3番目のフリップフロップの出力を減
算して出力データF0として出力する減算器84a3から
構成されている。また、上記演算器84bは、減算器8
3bの出力をシフトする6個のフリップフロップからな
るシフタ84b1、このシフタ84b1の第5番目のフリ
ップフロップの出力と第6番目のフリップフロップの出
力を加算する加算器84b2、加算器84b2の出力から
シフタ84b1の第3番目のフリップフロップの出力を
減算して出力データF4として出力する減算器84b3か
ら構成されている。また、上記演算器84cは、減算器
83cの出力をシフトする5個のフリップフロップから
なるシフタ84c1、このシフタ84c1の第3番目のフ
リップフロップの出力と第5番目のフリップフロップの
出力を加算して出力データF6として出力する加算器8
4c2から構成されている。また、上記演算器84d
は、加算器83dの出力をシフトする5個のフリップフ
ロップからなるシフタ84d1、このシフタ84d1の第
3番目のフリップフロップの出力と第5番目のフリップ
フロップの出力を加算して出力データF2として出力す
る加算器84d2から構成されている。
The operation circuit 64 of the stage IV executes the serial operation described in the principle explanation (I). The serial operation unit 84a performs the DCT serial operation when the coefficient is approximated to a simple integer ratio. ~ 84h. Here, the arithmetic unit 84a includes an adder 83
a shifter 84a1 composed of six flip-flops for shifting the output of a, an adder 84a2 for adding the output of the fifth flip-flop of the shifter 84a1 and the output of the sixth flip-flop, and the output of the adder 84a2. The shifter 84a1 includes a subtractor 84a3 that subtracts the output of the third flip-flop of the shifter 84a1 and outputs the result as output data F0. The arithmetic unit 84b includes a subtractor 8
A shifter 84b1 comprising six flip-flops for shifting the output of 3b, an adder 84b2 for adding the output of the fifth flip-flop of the shifter 84b1 and the output of the sixth flip-flop, and the output of the adder 84b2 The shifter 84b1 includes a subtracter 84b3 that subtracts the output of the third flip-flop of the shifter 84b1 and outputs the result as output data F4. The arithmetic unit 84c shifts the output of the subtractor 83c by five flip-flops, and adds the output of the third flip-flop and the output of the fifth flip-flop of the shifter 84c1. Adder 8 which outputs as output data F6
4c2. Further, the computing unit 84d
Is a shifter 84d1 composed of five flip-flops for shifting the output of the adder 83d, and outputs the output of the third flip-flop and the output of the fifth flip-flop of the shifter 84d1 and outputs the result as output data F2. And an adder 84d2.

【0068】上記演算器84eは、加算器83eの出力
をシフトする2個のフリップフロップからなるシフタ8
4e1、加算器83eの出力とシフタ84e1の出力を加
算して出力する加算器84e2、後述するシフタ84h1
の第1番目のフリップフロップの出力からこの加算器8
4e2の出力を減算する減算器84e3、減算器84e3
の出力をシフトする2個のフリップフロップからなるシ
フタ84e4、このシフタ84e4の出力から減算器84
e3の出力を減算して出力データF7として出力する減算
器84e5から構成されている。また、上記演算器84
fは、減算器83fの出力をシフトする2個のフリップ
フロップからなるシフタ84f1、減算器83fの出力
とシフタ84f1の第1番目のフリップフロップの出力
を加算する加算器84f2、後述する加算器g2の出力か
らこのシフタ84f1の出力を減算する減算器84f3、
減算器84f3の出力をシフトする2個のフリップフロ
ップからなるシフタ84f4、減算器84f3の出力から
シフタ84f4の出力を減算して出力データF3として出
力する減算器84f5から構成されている。また、上記
演算器84gは、減算器83gの出力をシフトする2個
のフリップフロップからなるシフタ84g1、減算器8
3gの出力とシフタ84g1の第1番目のフリップフロ
ップの出力を加算する加算器84g2、上記加算器f2の
出力とシフタ84g1の出力を加算する加算器84g3、
加算器84g3の出力をシフトする2個のフリップフロ
ップからなるシフタ84g4、シフタ84g4の出力から
加算器84g3の出力を減算して出力データF5として出
力する減算器84g5から構成されている。また、上記
演算器84hは、加算器83hの出力をシフトする2個
のフリップフロップからなるシフタ84h1、加算器8
3hの出力とシフタ84h1の出力を加算して出力する
加算器84h2、上記シフタ84e1の第1番目のフリッ
プフロップの出力と加算器84h2の出力を加算する加
算器84h3、加算器84h3の出力をシフトする2個の
フリップフロップからなるシフタ84h4、シフタ84
h4の出力から加算器84h3の出力を減算して出力デー
タF1として出力する減算器84h5から構成されてい
る。
The arithmetic unit 84e includes a shifter 8 composed of two flip-flops for shifting the output of the adder 83e.
4e1, an adder 84e2 for adding and outputting the output of the adder 83e and the output of the shifter 84e1, and a shifter 84h1 described later.
From the output of the first flip-flop of the adder 8
A subtractor 84e3 for subtracting the output of 4e2, a subtractor 84e3
Shifter 84e4 composed of two flip-flops for shifting the output of
It comprises a subtractor 84e5 which subtracts the output of e3 and outputs it as output data F7. Further, the computing unit 84
f is a shifter 84f1 composed of two flip-flops for shifting the output of the subtracter 83f, an adder 84f2 for adding the output of the subtractor 83f and the output of the first flip-flop of the shifter 84f1, and an adder g2 to be described later. Subtracter 84f3 for subtracting the output of shifter 84f1 from the output of
It comprises a shifter 84f4 composed of two flip-flops for shifting the output of the subtractor 84f3, and a subtractor 84f5 for subtracting the output of the shifter 84f4 from the output of the subtractor 84f3 and outputting it as output data F3. The arithmetic unit 84g includes a shifter 84g1 composed of two flip-flops for shifting the output of the subtractor 83g, and a subtractor 8g.
An adder 84g2 for adding the output of 3g and the output of the first flip-flop of the shifter 84g1, an adder 84g3 for adding the output of the adder f2 and the output of the shifter 84g1,
The shifter 84g4 comprises two flip-flops for shifting the output of the adder 84g3, and a subtractor 84g5 for subtracting the output of the adder 84g3 from the output of the shifter 84g4 and outputting the result as output data F5. The arithmetic unit 84h includes a shifter 84h1 composed of two flip-flops for shifting the output of the adder 83h,
The adder 84h2 adds the output of the shifter 84h1 and the output of the shifter 84h1, and outputs the result. The adder 84h3 adds the output of the first flip-flop of the shifter 84e1 and the output of the adder 84h2, and shifts the output of the adder 84h3. Shifter 84h4 and shifter 84 composed of two flip-flops
It comprises a subtractor 84h5 that subtracts the output of the adder 84h3 from the output of h4 and outputs the result as output data F1.

【0069】次に、図6〜図8により前記基本原理(I
I)に基づくデータ圧縮伸張装置の構成を説明する。
Next, referring to FIGS. 6 to 8, the basic principle (I
The configuration of the data compression / decompression device based on I) will be described.

【0070】上記図4のデータ変換演算装置50に前記
基本原理(II)の考え方を適用することを考える。図4
のデータ変換演算装置50の各ステージI〜IVの構造を
みた場合、ステージIの構造はシンプルな形であり、ま
たステージIVの出力側の最終段も加減算のみのシンプル
な形であり簡略化は困難である。これに対しステージI
I、III、IVはバタフライ演算部を有し構造が複雑である
ばかりかステージIVのeven(偶数)側にはタイミン
グ合わせのFFが存在する。特に、odd(奇数)側の
ステージII、III、IVには2段のバタフライ演算部が存
在し、このodd側のバタフライ演算部を簡略化するこ
とによってデータ変換演算装置50全体の演算実行速度
を向上させることができる。本実施例では、データ変換
演算装置50のodd側に前記基本原理(II)の考え方
を適用する。
It is considered that the concept of the basic principle (II) is applied to the data conversion operation device 50 shown in FIG. FIG.
Looking at the structure of each of the stages I to IV of the data conversion operation device 50, the structure of the stage I has a simple form, and the final stage on the output side of the stage IV has a simple form of only addition and subtraction. Have difficulty. Stage I
Each of I, III, and IV has a butterfly operation unit and has a complicated structure. In addition, a timing-matching FF exists on the even (even number) side of the stage IV. In particular, the stages II, III, and IV on the odd (odd) side have a two-stage butterfly operation unit. By simplifying the butterfly operation unit on the odd side, the operation execution speed of the entire data conversion operation device 50 can be reduced. Can be improved. In this embodiment, the concept of the basic principle (II) is applied to the odd side of the data conversion operation device 50.

【0071】図6はデータ圧縮伸張装置のデータ変換演
算装置50の回路構成図であり、前記図4に示すデータ
変換演算装置50と同じものである。また、図10は7
bitデータが入力された場合のデータ変換演算装置50
の入力から出力までのタイミングチャートである。図6
において、構造を簡略化するのが困難なデータ変換演算
装置50のodd側に着目し、同図破線に示すようにデ
ータ変換演算装置50のodd側のステージII、III及
びステージIVのバタフライ演算部を一纏めにし、この部
分に前記基本原理(II)の考え方を適用して簡略化す
る。
FIG. 6 is a circuit diagram of a data conversion operation device 50 of the data compression / decompression device, which is the same as the data conversion operation device 50 shown in FIG. FIG.
Data conversion operation device 50 when bit data is input
5 is a timing chart from input to output of the system. FIG.
Attention is focused on the odd side of the data conversion operation device 50, whose structure is difficult to simplify, and as shown by the broken line in FIG. Are simplified, and the concept of the basic principle (II) is applied to this portion for simplification.

【0072】図7は前記基本原理(II)に基づくデータ
圧縮伸張装置のデータ変換演算装置90の回路構成図で
あり、前記図6に示すデータ変換演算装置50に対応す
る図である。図7に示すデータ変換演算装置90は、前
記図6の破線内を図8に示すように構成することによっ
てデータ変換演算装置90全体の速度向上を図るように
したものである。なお、図7及び図8の説明に当たり図
4と同一構成部分には同一番号を付している。
FIG. 7 is a circuit diagram of a data conversion operation device 90 of the data compression / decompression device based on the basic principle (II), and corresponds to the data conversion operation device 50 shown in FIG. The data conversion operation device 90 shown in FIG. 7 is configured to improve the speed of the entire data conversion operation device 90 by configuring the inside of the broken line in FIG. 6 as shown in FIG. In describing FIGS. 7 and 8, the same components as those in FIG. 4 are denoted by the same reference numerals.

【0073】図7において、データ変換演算装置90は
I〜IIIの各ステージから構成され、ステージIの演算
回路91はシリアル演算を実行する加算器81a、81
b、81c、81dと減算器81e、81f、81g、
81hから構成されている。
In FIG. 7, a data conversion operation device 90 is composed of stages I to III, and an operation circuit 91 of stage I includes adders 81a and 81 for executing serial operations.
b, 81c, 81d and subtractors 81e, 81f, 81g,
81h.

【0074】また、ステージIIの演算回路92は、原理
説明(I)で述べたシリアル演算を、原理説明(II)で
述べたDCT演算式をそのままハードウェア化したシリ
アル回路上で実行するものであり、even側は係数を
簡単な整数比に近似してDCTシリアル演算を行なうシ
リアル演算器92a〜92dから構成され、odd側は
DCT演算式をそのままハードウェア化したシリアル回
路100(図8)から構成されている。
The operation circuit 92 of the stage II executes the serial operation described in the principle explanation (I) on a serial circuit in which the DCT operation expression described in the principle explanation (II) is directly converted into hardware. The even side is composed of serial computing units 92a to 92d for performing DCT serial computation by approximating the coefficient to a simple integer ratio, and the odd side is composed of a serial circuit 100 (FIG. 8) in which the DCT computation expression is directly converted into hardware. It is configured.

【0075】また、上記シリアル演算器92a〜92d
の前段は、DCTシリアル演算を行なうシリアル演算器
82a〜82dと、これら演算器82a〜82dの出力
をバタフライ演算により加減算する加減算器83a〜8
3dにより構成され、前記図4のeven側のステージ
IIとステージIIIを合わせたものに相当する。ここで、
上記演算器82aは、加算器81aの出力と加算器81
dの出力とを加算する加算器82a1、この加算器82
a1の出力をシフトする3個のフリップフロップ(F
F)からなるシフタ82a2から構成され、また、上記
演算器82bは、加算器81bの出力と加算器81cの
出力とを加算する加算器82b1、この加算器82b1の
出力をシフトする3個のフリップフロップ(FF)から
なるシフタ82b2から構成されている。また、上記演
算器82cは、加算器81bの出力から加算器81cの
出力を減算する減算器82c1、この減算器82c1の出
力をシフトする3個のフリップフロップからなるシフタ
82c2、このシフタ82c2の第1番目のフリップフロ
ップの出力とシフタ82c2の出力を加算する加算器8
2c3、シフタ82c2の第2番目のフリップフロップの
出力と加算器82c3の出力を加算する加算器82c4か
ら構成されている。同様に、上記演算器82dは、加算
器81aの出力から加算器81dの出力を減算する減算
器82d1、この減算器82d1の出力をシフトする3個
のフリップフロップからなるシフタ82d2、このシフ
タ82d2の第1番目のフリップフロップの出力とシフ
タ82d2の出力を加算する加算器82d3、シフタ82
d2の第2番目のフリップフロップの出力と加算器82
d3の出力を加算する加算器82d4から構成されてい
る。また、上記シリアル演算器92a〜92dの後段
は、原理説明(I)で述べたシリアル演算を実行するも
のであり、演算器82aの出力と演算器82b2の出力
を加算する加算器83a、演算器82aの出力から演算
器82bの出力を減算する減算器83b、演算器82c
の加算器82c4の出力から演算器82dの加算器82
d3の出力を減算する減算器83c、演算器82cの加
算器82c3の出力と演算器82dの加算器82d4の出
力を加算する加算器83dから構成されている。
Further, the serial computing units 92a to 92d
Are serial operation units 82a to 82d for performing DCT serial operation, and addition and subtraction units 83a to 83 for adding and subtracting the outputs of these operation units 82a to 82d by butterfly operation.
3d, and the even-side stage of FIG.
It is equivalent to the combination of II and Stage III. here,
The arithmetic unit 82a is provided with the output of the adder 81a and the adder 81
adder 82a1 for adding the output of the
three flip-flops (F
F). The arithmetic unit 82b includes an adder 82b1 for adding the output of the adder 81b and the output of the adder 81c, and three flip-flops for shifting the output of the adder 82b1. And a shifter 82b2 composed of a flip-flop (FF). The arithmetic unit 82c includes a subtracter 82c1 for subtracting the output of the adder 81c from the output of the adder 81b, a shifter 82c2 including three flip-flops for shifting the output of the subtractor 82c1, and a second shifter 82c2. Adder 8 for adding the output of the first flip-flop and the output of shifter 82c2
2c3, an adder 82c4 for adding the output of the second flip-flop of the shifter 82c2 and the output of the adder 82c3. Similarly, the arithmetic unit 82d includes a subtractor 82d1 for subtracting the output of the adder 81d from the output of the adder 81a, a shifter 82d2 composed of three flip-flops for shifting the output of the subtractor 82d1, and a shifter 82d2. An adder 82d3 for adding the output of the first flip-flop and the output of the shifter 82d2;
The output of the second flip-flop of d2 and the adder 82
It comprises an adder 82d4 for adding the output of d3. The subsequent stages of the serial computing units 92a to 92d execute the serial computation described in the principle explanation (I), and include an adder 83a for adding the output of the computing unit 82a and the output of the computing unit 82b2, Subtractor 83b for subtracting the output of arithmetic unit 82b from the output of 82a, arithmetic unit 82c
From the output of the adder 82c4 to the adder 82 of the arithmetic unit 82d.
It comprises a subtracter 83c for subtracting the output of d3, and an adder 83d for adding the output of the adder 82c3 of the arithmetic unit 82c and the output of the adder 82d4 of the arithmetic unit 82d.

【0076】また、ステージIIの演算回路92のodd
側のシリアル回路100の構成については図8により後
述する。
The odd of the operation circuit 92 of the stage II
The configuration of the serial circuit 100 on the side will be described later with reference to FIG.

【0077】また、ステージIIIの演算回路93は、原
理説明(I)で述べたシリアル演算を実行するものであ
り、係数を簡単な整数比に近似した場合のDCTシリア
ル演算を行なうシリアル演算器93a〜93hから構成
されている。
The operation circuit 93 of the stage III executes the serial operation described in the principle explanation (I). To 93h.

【0078】ここで、上記演算器93aは、加算器83
aの出力をシフトする3個のフリップフロップからなる
シフタ93a1、このシフタ93a1の第2番目のフリッ
プフロップの出力と第3番目のフリップフロップの出力
を加算する加算器84a2、加算器84a2の出力から加
算器83aの出力を減算して出力データF0として出力
する減算器84a3から構成されている。また、上記演
算器93bは、減算器83bの出力をシフトする3個の
フリップフロップからなるシフタ93b1、このシフタ
93b1の第2番目のフリップフロップの出力と第3番
目のフリップフロップの出力を加算する加算器84b
2、加算器84b2の出力から減算器83bの出力を減算
して出力データF4として出力する減算器84b3から構
成されている。また、上記演算器93cは、減算器83
cの出力をシフトする2個のフリップフロップからなる
シフタ93c1、このシフタ93c1の第2番目のフリッ
プフロップの出力と減算器83cの出力を加算して出力
データF6として出力する加算器84c2から構成されて
いる。また、上記演算器93dは、加算器83dの出力
をシフトする2個のフリップフロップからなるシフタ9
3d1、このシフタ93d1の第2番目のフリップフロッ
プの出力と加算器83dの出力を加算して出力データF
2として出力する加算器84d2から構成されている。
Here, the arithmetic unit 93a is provided with an adder 83
a shifter 93a1 composed of three flip-flops for shifting the output of a, an adder 84a2 for adding the output of the second flip-flop of the shifter 93a1 and the output of the third flip-flop, and the output of the adder 84a2. It comprises a subtractor 84a3 which subtracts the output of the adder 83a and outputs it as output data F0. The arithmetic unit 93b shifts the output of the subtracter 83b by three flip-flops, and adds the output of the second flip-flop and the output of the third flip-flop of the shifter 93b1. Adder 84b
2. It comprises a subtractor 84b3 that subtracts the output of the subtractor 83b from the output of the adder 84b2 and outputs it as output data F4. The arithmetic unit 93c includes a subtractor 83
The shifter 93c1 is composed of two flip-flops for shifting the output of c and an adder 84c2 that adds the output of the second flip-flop of the shifter 93c1 and the output of the subtractor 83c and outputs the result as output data F6. ing. The arithmetic unit 93d is provided with a shifter 9 composed of two flip-flops for shifting the output of the adder 83d.
3d1, the output of the second flip-flop of the shifter 93d1 and the output of the adder 83d are added to generate output data F
It is composed of an adder 84d2 which outputs as 2.

【0079】また、上記演算器93eは、シリアル回路
100の出力x0をシフトする2個のフリップフロップ
からなるシフタ84e4、このシフタ84e4の出力から
減算器84e3の出力を減算して出力データF7として出
力する減算器84e5から構成され、上記演算器93f
は、シリアル回路100の出力x1をシフトする2個の
フリップフロップからなるシフタ84f4、減算器84
f3の出力からシフタ84f4の出力を減算して出力デー
タF3として出力する減算器84f5から構成されてい
る。また、上記演算器93gは、シリアル回路100の
出力x2をシフトする2個のフリップフロップからなる
シフタ84g4、シフタ84g4の出力から加算器84g
3の出力を減算して出力データF5として出力する減算器
84g5から構成され、上記演算器93hは、シリアル
回路100の出力x3をシフトする2個のフリップフロ
ップからなるシフタ84h4、加算器84h3の出力から
シフタ84h4の出力を減算して出力データF1として出
力する減算器84h5から構成されている。
The arithmetic unit 93e is a shifter 84e4 comprising two flip-flops for shifting the output x0 of the serial circuit 100. Computing unit 93f
Is a shifter 84f4 composed of two flip-flops for shifting the output x1 of the serial circuit 100, and a subtractor 84
It comprises a subtractor 84f5 that subtracts the output of the shifter 84f4 from the output of f3 and outputs the result as output data F3. The arithmetic unit 93g includes a shifter 84g4 composed of two flip-flops for shifting the output x2 of the serial circuit 100, and an adder 84g based on the output of the shifter 84g4.
The arithmetic unit 93h comprises a shifter 84h4 composed of two flip-flops for shifting the output x3 of the serial circuit 100, and an output of the adder 84h3. And a subtractor 84h5 for subtracting the output of the shifter 84h4 from the output and outputting the result as output data F1.

【0080】このように、ステージIIIのeven側の
シリアル演算器93a〜93dは、前記図4のステージ
IVのシリアル演算器84a〜84dのシフタ84a1〜
84d1から3段のフリップフロップ(FF)を取り去
った構成となっており、また、テージIIIのodd側の
シリアル演算器93e〜93hは、前記図4のステージ
IVの演算器84e〜84hからバタフライ演算部分(例
えば、演算器84eにおいては、シフタ84e1、加算
器84e2及び減算器84e3、演算器84fにおいて
は、シフタ84f1、加算器84f2及び減算器84f
3、演算器84gにおいては、シフタ84g1、加算器8
4g2及び加算器84g3、演算器84hにおいては、シ
フタ84h1、加算器84h2及び加算器84h3)を取
り去った構成となっている。
As described above, the serial computing units 93a to 93d on the even side of the stage III correspond to the stages of FIG.
IV serial operation units 84a to 84d shifters 84a1 to 84a1 to 84d
84d1 has three stages of flip-flops (FF) removed, and the serial operation units 93e to 93h on the odd side of the stage III are the stages shown in FIG.
From the calculators 84e to 84h of the IV, the butterfly calculation part (for example, the shifter 84e1, the adder 84e2 and the subtractor 84e3 in the calculator 84e, the shifter 84f1, the adder 84f2 and the subtractor 84f in the calculator 84f)
3. In the operation unit 84g, the shifter 84g1, the adder 8
The 4g2, the adder 84g3, and the arithmetic unit 84h have a configuration in which the shifter 84h1, the adder 84h2, and the adder 84h3) are removed.

【0081】図8はDCT演算式をそのままハードウェ
ア化したシリアル回路100の回路構成図である。シリ
アル回路100は、前述したように前記図6の破線に示
す部分に前記基本原理(II)の考え方を適用することに
より構成されている。
FIG. 8 is a circuit configuration diagram of the serial circuit 100 in which the DCT operation formula is directly converted into hardware. As described above, the serial circuit 100 is configured by applying the concept of the basic principle (II) to the portion indicated by the broken line in FIG.

【0082】図6の破線内の演算について、入力をb0
〜b3、出力をx0〜x3とすると、シリアル回路100
は、DCT演算式を展開して得られた各入力b0〜b3に
共通な係数を2のべきにある数値をかけた形で表現した
場合の該数値の部分を作成する前段のシリアル回路10
1と、このシリアル回路101により計算された係数出
力に対して出力方向(DCT演算式の横方向)に符号分
を含めた加減算を行なって出力x0〜x3として出力する
後段のシリアル回路102により構成されている。すな
わち、上記シリアル回路101は、入力b0について各
入力b0〜b3に共通な係数(本実施例では、17、8
5、48、72)を2のべきにある数値(本実施例で
は、2、42、6、18)をかけた形で表現した場合に
該数値の部分を作成するシリアル演算器101e、入力
b1について各入力b0〜b3に共通な係数を2のべきに
ある数値をかけた形で表現した場合に該数値の部分を作
成するシリアル演算器101f、入力b2について各入
力b0〜b3に共通な係数を2のべきにある数値をかけた
形で表現した場合に該数値の部分を作成するシリアル演
算器101g、入力b3について各入力b0〜b3に共通
な係数を2のべきにある数値をかけた形で表現した場合
に該数値の部分を作成するシリアル演算器101hから
構成されている。具体的には、シリアル演算器101e
は、入力b0をシフトする3個のフリップフロップから
なるシフタ101e1、入力b0とシフタ101e1の第
1番目のフリップフロップの出力を加算して出力する加
算器101e2、入力b0とシフタ101e1の出力を加
算して出力する加算器101e3、シフタ101e1の第
1番目のフリップフロップの出力とシフタ101e1の
出力を加算して出力する加算器101e4、入力b0と加
算器101e4の出力を加算して出力する加算器101
e5から構成されている。同様に、シリアル演算器10
1fは、入力b1をシフトする3個のフリップフロップ
からなるシフタ101f1、入力b0とシフタ101f1
の第1番目のフリップフロップの出力を加算して出力す
る加算器101f2、入力b0とシフタ101f1の出力
を加算して出力する加算器101f3、シフタ101f1
の第1番目のフリップフロップの出力とシフタ101f
1の出力を加算して出力する加算器101f4、入力b0
と加算器101f4の出力を加算して出力する加算器1
01f5から構成されている。また、シリアル演算器1
01gは、入力b2をシフトする3個のフリップフロッ
プからなるシフタ101g1、入力b0とシフタ101g
1の第1番目のフリップフロップの出力を加算して出力
する加算器101g2、入力b0とシフタ101g1の出
力を加算して出力する加算器101g3、シフタ101
g1の第1番目のフリップフロップの出力とシフタ10
1g1の出力を加算して出力する加算器101g4、入力
b3と加算器101g4の出力を加算して出力する加算器
101g5から構成されている。また、シリアル演算器
101hは、入力b0をシフトする3個のフリップフロ
ップからなるシフタ101e1、入力b0とシフタ101
h1の第1番目のフリップフロップの出力を加算して出
力する加算器101h2、入力b0とシフタ101h1の
出力を加算して出力する加算器101h3、シフタ10
1h1の第1番目のフリップフロップの出力とシフタ1
01h1の出力を加算して出力する加算器101h4、入
力b0と加算器101h4の出力を加算して出力する加算
器101h5から構成されている。
For the operation within the broken line in FIG.
Bb3 and the output is x03x3, the serial circuit 100
Is a serial circuit 10 in the preceding stage for creating a part of a numerical value when a coefficient common to each of the inputs b0 to b3 obtained by expanding the DCT arithmetic expression is multiplied by a power of two.
1 and a serial circuit 102 at the subsequent stage which performs addition and subtraction including a sign in the output direction (horizontal direction of the DCT operation expression) with respect to the coefficient output calculated by the serial circuit 101 and outputs the result as outputs x0 to x3. Have been. In other words, the serial circuit 101 uses the coefficients common to the inputs b0 to b3 for the input b0 (in this embodiment, 17 and 8
5, 48, 72) multiplied by a power of 2 (in this embodiment, 2, 42, 6, 18), a serial calculator 101e for creating a portion of the numerical value, input b1 When a coefficient common to each of the inputs b0 to b3 is expressed by multiplying a numerical value by a power of 2, a serial operation unit 101f that creates a part of the numerical value, and a coefficient common to each of the inputs b0 to b3 for the input b2 Is expressed in the form of a power of 2 multiplied by a number, a serial arithmetic unit 101g that creates a portion of the numerical value, and for input b3, a coefficient common to each of inputs b0 to b3 is multiplied by a power of 2 It is composed of a serial calculator 101h that creates the numerical value part when expressed in the form. Specifically, the serial operation unit 101e
Is a shifter 101e1 composed of three flip-flops for shifting the input b0, an adder 101e2 for adding and outputting the input b0 and the output of the first flip-flop of the shifter 101e1, and adding the input b0 and the output of the shifter 101e1. Adder 101e3 for adding and outputting the output of the first flip-flop of shifter 101e1 and the output of shifter 101e1, and adder for adding and outputting input b0 and the output of adder 101e4. 101
e5. Similarly, the serial operator 10
1f is a shifter 101f1 composed of three flip-flops for shifting the input b1, an input b0 and a shifter 101f1.
Adder 101f2 that adds and outputs the output of the first flip-flop, adder 101f3 that adds and outputs the input b0 and the output of shifter 101f1, and shifter 101f1
Output of the first flip-flop and shifter 101f
Adder 101f4 for adding and outputting the output of 1 and input b0
Adder 1 that adds and outputs the output of adder 101f4
01f5. In addition, serial computing unit 1
01g is a shifter 101g1 composed of three flip-flops for shifting the input b2, an input b0 and a shifter 101g.
1, an adder 101g2 that adds and outputs the output of the first flip-flop, an adder 101g3 that adds and outputs the input b0 and the output of the shifter 101g1, and a shifter 101
The output of the first flip-flop of g1 and the shifter 10
It comprises an adder 101g4 for adding and outputting the output of 1g1, and an adder 101g5 for adding and outputting the input b3 and the output of the adder 101g4. The serial operation unit 101h includes a shifter 101e1 composed of three flip-flops for shifting the input b0, an input b0 and the shifter 101.
The adder 101h2 adds and outputs the output of the first flip-flop of h1, the adder 101h3 adds and outputs the input b0 and the output of the shifter 101h1, and the shifter 10
1h1 output of the first flip-flop and shifter 1
It comprises an adder 101h4 for adding and outputting the output of 01h1, and an adder 101h5 for adding and outputting the input b0 and the output of the adder 101h4.

【0083】また、上記シリアル回路102は、シリア
ル演算器101e〜101hにより計算された係数出力
に対して出力方向に符号分を含めた加減算を順次行なっ
て出力x3〜x0として出力するシリアル演算器102e
〜102hにより構成されている。すなわち、上記シリ
アル演算器102eは、シリアル演算器101fの加算
器101f2の出力とシリアル演算器101eのシフタ
101e1の第1番目のフリップフロップの出力を加算
する加算器102e1、この加算器102e1の出力とシ
リアル演算器101gの加算器101g3の出力を加算
する加算器102e2、この加算器102e2の出力とシ
リアル演算器101hの加算器101h5の出力を加算
する加算器102e3、この加算器102e3の出力と入
力b3を加算する加算器102e4、この加算器102e
4の出力とシリアル演算器101eのシフタ101e1の
第1番目のフリップフロップの出力を加算して出力x3
として出力する加算器102e5から構成されている。
また、上記シリアル演算器102fは、シリアル演算器
101hの加算器101h2の出力からシリアル演算器
101fのシフタ101f1の第1番目のフリップフロ
ップの出力を減算する減算器102f1、この減算器1
02f1の出力とシリアル演算器101eの加算器10
1e3の出力を加算する加算器102f2、この加算器1
02f2の出力とシリアル演算器101gの加算器10
1g5の出力を加算する加算器102f3、この加算器1
02f3の出力と入力b2を加算する加算器102f4、
この加算器102f4の出力からシリアル演算器101
fのシフタ101f1の第1番目のフリップフロップの
出力を減算して出力x2として出力する減算器102f5
から構成されている。また、上記シリアル演算器102
gは、シリアル演算器101eの加算器101e2の出
力とシリアル演算器101gのシフタ101g1の第1
番目のフリップフロップの出力を加算する加算器102
g1、シリアル演算器101hの加算器101h3の出力
から加算器102g1の出力を減算する減算器102g
2、この減算器102g2の出力からシリアル演算器10
1fの加算器101f5の出力を減算する減算器102
g3、この減算器102g3の出力から入力b1を減算す
る減算器102g4、この減算器102g4の出力からシ
リアル演算器101gのシフタ101g1の第1番目の
フリップフロップの出力を減算して出力x1として出力
する減算器102g5から構成されている。また、上記
シリアル演算器102hは、シリアル演算器101hの
シフタ101h1の第1番目のフリップフロップの出力
からシリアル演算器101gの加算器101g2の出力
を減算する減算器102h1、この減算器102h1の出
力とシリアル演算器101fの加算器101f3の出力
を加算する加算器102h2、この加算器102h2の出
力からシリアル演算器101eの加算器101e5の出
力を減算する減算器102h3、この減算器102h3の
出力から入力b0を減算する減算器102h4、この減算
器102h4の出力とシリアル演算器101hのシフタ
101h1の第1番目のフリップフロップの出力を加算
して出力x0として出力する加算器102h5から構成さ
れている。
The serial circuit 102 sequentially performs addition and subtraction including the sign in the output direction with respect to the coefficient output calculated by the serial calculators 101e to 101h, and outputs the result as outputs x3 to x0.
H102h. That is, the serial arithmetic unit 102e is an adder 102e1 that adds the output of the adder 101f2 of the serial arithmetic unit 101f and the output of the first flip-flop of the shifter 101e1 of the serial arithmetic unit 101e, and the output of the adder 102e1. An adder 102e2 for adding the output of the adder 101g3 of the serial calculator 101g, an adder 102e3 for adding the output of the adder 102e2 and the output of the adder 101h5 of the serial calculator 101h, and the output and input b3 of the adder 102e3. Adder 102e4 that adds
4 and the output of the first flip-flop of the shifter 101e1 of the serial operation unit 101e, and the output x3
And an adder 102e5 that outputs the same as
The serial operation unit 102f includes a subtracter 102f1 for subtracting the output of the first flip-flop of the shifter 101f1 of the serial operation unit 101f from the output of the adder 101h2 of the serial operation unit 101h.
02f1 output and the adder 10 of the serial operation unit 101e
Adder 102f2 for adding the output of 1e3;
02f2 output and the adder 10 of the serial operation unit 101g
Adder 102f3 for adding the output of 1g5,
An adder 102f4 for adding the output of 02f3 and the input b2;
From the output of the adder 102f4, the serial
subtracter 102f5 that subtracts the output of the first flip-flop of shifter 101f1 of f and outputs the result as output x2
It is composed of Further, the serial computing unit 102
g is the output of the adder 101e2 of the serial operation unit 101e and the first output of the shifter 101g1 of the serial operation unit 101g.
Adder 102 for adding the output of the flip-flop
g1, a subtractor 102g that subtracts the output of the adder 102g1 from the output of the adder 101h3 of the serial operation unit 101h.
2. From the output of the subtractor 102g2,
Subtractor 102 for subtracting the output of 1f adder 101f5
g3, a subtractor 102g4 for subtracting the input b1 from the output of the subtractor 102g3, and subtracting the output of the first flip-flop of the shifter 101g1 of the serial operation unit 101g from the output of the subtractor 102g4, and outputting the result as an output x1. It comprises a subtractor 102g5. Further, the serial operation unit 102h is a subtractor 102h1 for subtracting the output of the adder 101g2 of the serial operation unit 101g from the output of the first flip-flop of the shifter 101h1 of the serial operation unit 101h, and the output of the subtracter 102h1. An adder 102h2 for adding the output of the adder 101f3 of the serial calculator 101f, a subtractor 102h3 for subtracting the output of the adder 101e5 of the serial calculator 101e from the output of the adder 102h2, and an input b0 from the output of the subtractor 102h3. , And an adder 102h5 that adds the output of the subtractor 102h4 and the output of the first flip-flop of the shifter 101h1 of the serial calculator 101h and outputs the result as an output x0.

【0084】次に、本実施例の動作を説明する。Next, the operation of this embodiment will be described.

【0085】本実施例の動作の説明にあたり、まず、デ
ータ圧縮伸張装置の全体動作を述べ、次いで前記基本原
理(I)に基づくデータ変換演算装置50における動作
及び前記基本原理(II)に基づくデータ変換演算装置9
0における動作を述べる。
In describing the operation of this embodiment, first, the overall operation of the data compression / decompression device will be described, and then the operation of the data conversion operation device 50 based on the basic principle (I) and the data based on the basic principle (II) will be described. Conversion arithmetic unit 9
The operation at 0 will be described.

【0086】全体動作 図2において、データ記憶装置10に蓄えられているパ
ラレルデータはパラレル−シリアル変換装置11に入力
され、パラレル−シリアル変換装置11はデータ記憶装
置10から読み込んだパラレルデータをシリアルデータ
に変換してデータ変換演算装置50に出力する。データ
変換演算装置50はパラレル−シリアル変換装置11か
ら出力されたデータに対して一次元のDCT演算をシリ
アル演算の形で施す。この場合のシリアル演算は、デー
タ変換演算装置50においてDCT演算係数を簡単な整
数比に変えた形のシリアル回路により行なわれる。シリ
アルDCT演算されたデータはシリアル−パラレル変換
装置13に出力され、シリアル−パラレル変換装置13
はデータ変換演算装置50から出力されたシリアルデー
タをパラレルデータに変換してデータ記憶装置10に書
き込む。上述した処理を縦横(順不同)二次元に施す。
また、量子化装置51は、データ記憶装置10に蓄えら
れたデータ変換演算後のデータに対して、DCT演算係
数を簡単な整数比に変えることにより生じたゲインの変
化分を吸収するように構成された量子化テーブルの値で
逆数の乗算をすることによって量子化演算を行なう。す
なわち、DCT演算係数を簡単な整数比に変え、整数比
として表されたことによって生ずる各出力のゲインの変
化分は量子化装置51において吸収する。本実施例で
は、量子化テーブルを所定数倍(後述)することによっ
てゲインの変化分を量子化装置51において吸収するよ
うにしている。ところで、このような量子化テーブルを
用いた場合、一見すると従来のものと比べて量子化演算
のbit幅が、従来のものよりも多く必要であるかのよう
にも考えられるが、実際には、量子化演算には、逆数の
乗算であるため、係数(例えば、7)の逆数も、7×2
/COS(N/16)πの逆数も、ともに無限小数となるため、
丸め近似を必要とし、ほぼ同じ程度の誤差を含む。すな
わち、従来のCOS係数を2進歩の小数で表現した時点で
丸め誤差が乗ってしまうので、整数の比に置き変えても
誤差を押さえるためにbit幅を大きくする必要はない。
Overall Operation In FIG. 2, parallel data stored in a data storage device 10 is input to a parallel-serial conversion device 11, which converts the parallel data read from the data storage device 10 into serial data. And outputs it to the data conversion operation device 50. The data conversion operation device 50 performs a one-dimensional DCT operation on the data output from the parallel-serial conversion device 11 in the form of a serial operation. The serial operation in this case is performed by a data conversion operation device 50 using a serial circuit in which the DCT operation coefficient is changed to a simple integer ratio. The data subjected to the serial DCT operation is output to the serial-to-parallel converter 13 and the serial-to-parallel converter 13
Converts the serial data output from the data conversion operation device 50 into parallel data and writes it to the data storage device 10. The above-described processing is performed in two dimensions vertically and horizontally (in no particular order).
The quantization device 51 is configured to absorb a change in gain caused by changing a DCT calculation coefficient into a simple integer ratio for the data after the data conversion calculation stored in the data storage device 10. A quantization operation is performed by multiplying the reciprocal by the value of the quantization table. That is, the DCT operation coefficient is changed to a simple integer ratio, and the change in the gain of each output caused by being expressed as the integer ratio is absorbed in the quantization device 51. In this embodiment, the quantization device 51 absorbs the change in gain by multiplying the quantization table by a predetermined number (described later). By the way, when using such a quantization table, it seems at first glance that the bit width of the quantization operation is required to be larger than that of the conventional one, but actually, Since the quantization operation is multiplication of the reciprocal, the reciprocal of the coefficient (for example, 7) is also 7 × 2
Since the reciprocal of / COS (N / 16) π is also an infinite decimal number,
Requires rounding approximation and contains about the same error. That is, since the rounding error is added when the conventional COS coefficient is expressed as a decimal number of two advances, it is not necessary to increase the bit width to suppress the error even if it is replaced by an integer ratio.

【0087】上記データ変換演算装置50により実行さ
れるシリアルDCT演算を以下に説明するシリアル演算
によって行なう。
The serial DCT operation executed by the data conversion operation device 50 is performed by the serial operation described below.

【0088】データ変換演算装置50における動作(図
4) データ変換演算装置50の基本的な動作は図22に示す
従来例と同様であるが、このデータ変換演算装置50に
おけるシリアル演算では後述するように一次元当りのゲ
インが65/64倍、二次元では4225/4096倍のゲインが変化
しているので、量子化時にその補正を行うように量子化
テーブルを4225/4096倍して、その値で除算(逆数の乗
算)することによって補正を行なう。
Operation in Data Conversion Operation Device 50 (FIG. 4) The basic operation of the data conversion operation device 50 is the same as that of the conventional example shown in FIG. 22, but the serial operation in the data conversion operation device 50 will be described later. Since the gain per dimension has changed by a factor of 65/64, and the gain by a factor of 4225/4096 in the two dimensions, the quantization table is multiplied by 4225/4096 so that the correction is performed during quantization. Is corrected by dividing (multiplication of the reciprocal number) by.

【0089】以下、この演算について説明する。Hereinafter, this calculation will be described.

【0090】ステージIの演算回路61の出力について
は、図18及び図22に示す従来例と同様であるので以
後、以下のように記する。
The output of the operation circuit 61 of the stage I is the same as that of the conventional example shown in FIGS. 18 and 22, and will be described as follows.

【0091】f0+f7=a0、f0-f7=b0、f1+f6=a
1、f1-f6=b1、f2+f5=a2、f2-f5=b2、f3+f4=
a3、f3-f4=b3 まず、図22に示す従来例においてF0〜F7がa0〜a3
およびb0〜b3によってどのように表わされていたかを
示す。
F0 + f7 = a0, f0-f7 = b0, f1 + f6 = a
1, f1-f6 = b1, f2 + f5 = a2, f2-f5 = b2, f3 + f4 =
a3, f3-f4 = b3 First, in the conventional example shown in FIG.
And how they were represented by b0-b3.

【0092】 F0=(724a0+724a1+724a2+724a3)×2048 F4=(724a0−724a1−724a2+724a3)×2048 F2=(473a0+192a1−192a2−473a3)×4096 F6=(192a0−473a1+473a2−192a3)×4096 F1=(295b0+16833b1+25883b2+15104b3)×16 F7=(−15104b0+25883b1−16833b2+2550b3) ×16 F3=(−18176b0−64255b1−12815b2+27264b3) ×16 F5=(27264b0+12815b1−64255b2+18176b3) ×16 この式を以下のように近似し簡略化する。F0 = (724a0 + 724a1 + 724a2 + 724a3) × 2048 F4 = (724a0−724a1−724a2 + 724a3) × 2048 F2 = (473a0 + 192a1−192a2−473 × 3 × 16963) × 4096F6 = (192 + 047 + 312) F7 = (-15104b0 + 25883b1-16833b2 + 2550b3) .times.16 F3 = (-18176b0-64255b1-12815b2 + 27264b3) .times.16 F5 = (27264b0 + 12815b1-64255b2 + 18176b3) .times.16 This equation is simplified as follows.

【0093】 F0=(92a0+92a1+92a2+92a3)×128 F4=(92a0−92a1−92a2+92a3)×128 F2=(60a0+25a1−25a2−60a3)×256 F6=(25a0−60a1+60a2−25a3)×256 F1=(17b0+48b1+72b2+85b3)×6×32 F7=(−85b0+72b1−48b2+17b3)×6×32 F3=(−48b0−85b1−17b2+72b3)×6×32 F5=(72b0+17b1−85b2+48b3)×6×32 ここで、各係数の比は従来のものと、ほぼ同等であるの
で各出力F0〜F7の比はほぼ同等と考えられるが、その
出力のゲインがどのように変化しているかについて考察
してみる。
F0 = (92a0 + 92a1 + 92a2 + 92a3) .times.128 F4 = (92a0-92a1-92a2 + 92a3) .times.128 F2 = (60a0 + 25a1-25a2-60a3) .times.256 F6 = (25a0-60a1 + 60a2 + 1 @ 2 + 2 @ 56 + 7 @ 2) + 256 + 2 @ 72 + 2 @ 6 + 2 @ 2 + 2 @ 2 + 2 @ 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 2 + 2 @ 6 + 2b2 + 2b2 + 2b2 + 2b2 + 2b2 + 2b2 Ib5b2 Ib2b2b2b2b2b2b2b2b2b2 IbF2 = (92a0 + 92a1 + 92a2 + 92a3) .times.128 × 32 F7 = (− 85b0 + 72b1−48b2 + 17b3) × 6 × 32 F3 = (− 48b0−85b1−17b2 + 72b3) × 6 × 32 F5 = (72b0 + 17b1−85b2 + 48b3) × 6 × 32 Here, the ratio of each coefficient is a conventional one. Therefore, the ratios of the outputs F0 to F7 are considered to be substantially equal, but how the gain of the output changes will be considered.

【0094】出力F0についてみると本来のDCTの計
算式では、出力F0は入力f0〜f7の和の2√2倍となっ
ているが、この比率では2のべきを除いて23倍となっ
ている。2のべき分は、取り込みのタイミングをずらす
ことによって無視できるので23に2√2を乗ずると約6
5となる。よってゲインは65/64倍となっていることが
わかる。
Regarding the output F0, the original DCT calculation formula shows that the output F0 is 2√2 times the sum of the inputs f0 to f7, but this ratio is 23 times except for the exponent of 2. I have. The power of 2 can be ignored by shifting the timing of the capture, so multiplying 23 by 2 ^ 2 gives approximately 6
It becomes 5. Therefore, it can be seen that the gain is 65/64 times.

【0095】このような演算式によりDCT変換を行な
うことにより、演算に必要な回路構成としてフリップフ
ロップ(FF)70個、1 Add unit 52個で済む。ま
た図5にあるようなタイミングによって一次元の処理を
行なうことができる。但し、図5はF0、F4についての
タイミングであり、他については最終出力については同
じであるが各ステージにおける出力に関しては異なる。
By performing the DCT transform using such an arithmetic expression, only 70 flip-flops (FFs) and 52 Add-units are required as the circuit configuration required for the arithmetic operation. Further, one-dimensional processing can be performed at the timing as shown in FIG. However, FIG. 5 shows the timings for F0 and F4, and the other outputs are the same for the final output but different for the output at each stage.

【0096】実際には上記の演算式をさらに以下のよう
に変形して回路を構成する。
In practice, the above arithmetic expression is further modified as follows to form a circuit.

【0097】 F0=((a0+a3)×16+(a1+a2)×16)×2×8×46 F4=((a0+a3)×16−(a1+a2)×16)×2×8×46 F6=((a0−a3)×40−(a1−a2)×96)×2×8×10 F2=((a0−a3)×96+(a1−a2)×40)×2×8×10 F7=(((48×(b1+b2)+68×b3)×2)×2 −((48×(b2−b1)+68×b0)×2)×10)×12 F3=(((96×b3−68×(b1+b2))×2)×6 −((96×b0−68×(b2−b1))×2)×4)×12 F5=(((96×b0−68×(b2−b1))×2)×6 −((96×b3−68×(b1+b2))×2)×4)×12 F1=(((48×(b2−b1)+68×b0)×2)×2 −((48×(b1+b2)+68×b3)×2)×10)×12 以下、上記演算式に従って構成されたデータ変換演算装
置50の動作を説明する。
F0 = ((a0 + a3) × 16 + (a1 + a2) × 16) × 2 × 8 × 46 F4 = ((a0 + a3) × 16− (a1 + a2) × 16) × 2 × 8 × 46 F6 = ((a0− a3) × 40− (a1−a2) × 96) × 2 × 8 × 10 F2 = ((a0−a3) × 96 + (a1−a2) × 40) × 2 × 8 × 10 F7 = (((48 × (B1 + b2) + 68 × b3) × 2) × 2 − ((48 × (b2−b1) + 68 × b0) × 2) × 10) × 12 F3 = (((96 × b3−68 × (b1 + b2)) × 2) × 6 − ((96 × b0−68 × (b2−b1)) × 2) × 4) × 12 F5 = (((96 × b0−68 × (b2−b1)) × 2) × 6− ((96 × b3−68 × (b1 + b2)) × 2) × 4) × 12 F1 = (((48 × (b2−b1) + 68 × b0) × 2) × 2 − ((48 × (b1 + b2) +68 × b3) × 2) × 10) × 12 The operation of the configuration data conversion operation unit 50 will be described.

【0098】まず、DCT演算処理の場合を述べると、
ここでは、ステージIの演算回路61において加算器8
1aに入力データf0とf7、加算器81bに入力データ
f1とf6、加算器81cに入力データf2とf5、加算器
81dに入力データf3とf4、減算器81eに入力デー
タf3とf4、減算器81fに入力データf2とf5、減算
器81gに入力データf1とf6、減算器81hに入力デ
ータf0とf7が入力される。これにより加算器81aは
入力データf0とf7の加算結果を出力し、加算器81b
は入力データf1とf6の加算結果を出力し、加算器81
cは入力データf2とf5の加算結果f2+f5を出力し、
加算器81dは入力データf3とf4の加算結果を出力す
るようになる。また、減算器81eは入力データf3と
f4の減算結果を出力し、減算器81fは入力データf2
とf5の減算結果を出力し、減算器81gは入力データ
f1とf6の減算結果を出力し、減算器81hは入力デー
タf0とf7の減算結果を出力するようになる。この場合
の入力データは、図4に示すように7bitと1bitのサイ
ンビットの8bitのデータからなっている。また、出力
データは、図5Iに示すように7+1bitと1bitのサイ
ンビットからなっている。
First, the case of DCT operation processing will be described.
Here, the adder 8 in the operation circuit 61 of the stage I is used.
1a, input data f0 and f7; adder 81b, input data f1 and f6; adder 81c, input data f2 and f5; adder 81d, input data f3 and f4; subtractor 81e, input data f3 and f4; Input data f2 and f5 are input to 81f, input data f1 and f6 are input to a subtractor 81g, and input data f0 and f7 are input to a subtractor 81h. As a result, the adder 81a outputs the addition result of the input data f0 and f7, and the adder 81b
Outputs the result of addition of the input data f1 and f6,
c outputs the addition result f2 + f5 of the input data f2 and f5,
The adder 81d outputs the result of adding the input data f3 and f4. The subtractor 81e outputs the result of subtraction of the input data f3 and f4, and the subtractor 81f outputs the subtraction result of the input data f2
And f5, the subtractor 81g outputs the subtraction result of the input data f1 and f6, and the subtractor 81h outputs the subtraction result of the input data f0 and f7. As shown in FIG. 4, the input data in this case is composed of 7-bit and 8-bit data of 1-bit sign bit. The output data is composed of 7 + 1 bits and 1 bit sign bit as shown in FIG. 5I.

【0099】次いで、ステージIIの演算回路62に進
む。この演算回路62のシリアル演算器82a〜82h
には、ステージIの演算回路61で加算あるいは減算さ
れた加減算結果a0、b0、a1、b1、a2、b2、a3、
b3が入力データとして与えられる。上記演算器82a
では、係数を簡単な整数比に近似した場合のDCTシリ
アル演算式F0=((a0+a3)×16+(a1+a2)
×16)×2×8×46及び、F4=((a0+a3)×
16−(a1+a2)×16)×2×8×46に共通する
(a0+a3)×16の演算を実行する。この場合、演算
器82aには、加算器81aの出力(a0)と加算器8
1dの出力(a3)とが入力され、加算器82a1でこれ
ら入力を加算し、この加算結果がシフタ82a2に与え
られる。シフタ82a2からは、図5Iに示すように、
3個のフリップフロップの動作だけ遅延して出力され
る。また上記演算器82bでは、係数を簡単な整数比に
近似した場合のDCTシリアル演算式F0=((a0+a
3)×16+(a1+a2)×16)×2×8×46及
び、F4=((a0+a3)×16−(a1+a2)×1
6)×2×8×46に共通する(a1+a2)×16の演
算を実行する。この場合、演算器82bには、加算器8
1bの出力(a1)と加算器81cの出力(a2)とが入
力され、加算器82b1でこれら入力を加算し、この加
算結果がシフタ82b2に与えられる。シフタ82b2か
らは、図5Iに示すように、3個のフリップフロップの
動作だけ遅延して出力される。
Next, the operation proceeds to the operation circuit 62 of the stage II. Serial operation units 82a to 82h of the operation circuit 62
Are the addition / subtraction results a0, b0, a1, b1, a2, b2, a3, which are added or subtracted by the operation circuit 61 of the stage I.
b3 is given as input data. The computing unit 82a
Then, the DCT serial operation equation F0 = ((a0 + a3) × 16 + (a1 + a2)) when the coefficient is approximated to a simple integer ratio
× 16) × 2 × 8 × 46 and F4 = ((a0 + a3) ×
An operation of (a0 + a3) × 16 common to 16− (a1 + a2) × 16) × 2 × 8 × 46 is executed. In this case, the output (a0) of the adder 81a and the adder 8
The output (a3) of 1d is input, and these inputs are added by an adder 82a1, and the addition result is given to a shifter 82a2. From the shifter 82a2, as shown in FIG. 5I,
The output is delayed by the operation of the three flip-flops. Further, in the arithmetic unit 82b, the DCT serial arithmetic expression F0 = ((a0 + a) when the coefficient is approximated to a simple integer ratio.
3) × 16 + (a1 + a2) × 16) × 2 × 8 × 46 and F4 = ((a0 + a3) × 16− (a1 + a2) × 1
6) Execute (a1 + a2) × 16 operations common to × 2 × 8 × 46. In this case, the arithmetic unit 82b includes the adder 8
The output (a1) of 1b and the output (a2) of the adder 81c are input, and these inputs are added by the adder 82b1, and the addition result is given to the shifter 82b2. As shown in FIG. 5I, the data is output from the shifter 82b2 with a delay of three flip-flops.

【0100】また上記演算器82cでは、係数を簡単な
整数比に近似した場合のDCTシリアル演算式F6=
((a0−a3)×40−(a1−a2)×96)×2×8
×10及び、F2=((a0−a3)×96+(a1−a
2)×40)×2×8×10の(a1−a2)×96と
(a1−a2)×40の演算を実行する。この場合、演算
器82cには、加算器81bの出力(a1)と加算器8
1cの出力(a2)とが入力され、減算器82c1で加算
器81bの出力から加算器81cの出力で減算すると
(a1−a2)が求められる。この減算器82c1の出力
をシフタ82c2に与え、このシフタ82c2の第1番目
のフリップフロップの出力とシフタ82c2の出力を加
算器82c3により加算し、またシフタ82c2の第2番
目のフリップフロップの出力と加算器82c3の出力を
82c4により加算することにより(a1−a2)×40
と(a1−a2)×96が求められることになる。この場
合、図5の入力に示す入力データに対して演算器82c
では、同図IIに示すタイミングで上述の演算結果を出力
データとして発生するようになる。また上記演算器82
dでは、係数を簡単な整数比に近似した場合のDCTシ
リアル演算式F6=((a0−a3)×40−(a1−a
2)×96)×2×8×10及び、F2=((a0−a3)
×96+(a1−a2)×40)×2×8×10の(a0
−a3)×40と(a0−a3)×96の演算を実行す
る。この場合、演算器82dには、加算器81aの出力
(a0)と加算器81dの出力(a3)とが入力され、減
算器82d1で加算器81aの出力を加算器81dの出
力で減算すると(a0−a3)が求められる。この減算器
82d1の出力をシフタ82d2に与え、このシフタ82
d2の第1番目のフリップフロップの出力とシフタ82
d2の出力を加算器82d3により加算し、またシフタ8
2d2の第2番目のフリップフロップの出力と加算器8
2d3の出力を82d4により加算することにより(a0
−a3)×40と(a0−a3)×96が求められること
になる。この場合、図5の入力に示す入力データに対し
て演算器82dでは、同図IIに示すタイミングで上述の
演算結果を出力データとして発生するようになる。
In the arithmetic unit 82c, the DCT serial arithmetic expression F6 =
((A0-a3) x 40-(a1-a2) x 96) x 2 x 8
× 10 and F2 = ((a0−a3) × 96 + (a1−a
(2) × 40) × 2 × 8 × 10 (a1−a2) × 96 and (a1−a2) × 40 are executed. In this case, the output (a1) of the adder 81b and the adder 8
The output (a2) of 1c is input, and the subtracter 82c1 subtracts the output of the adder 81b from the output of the adder 81b to obtain (a1-a2). The output of the subtractor 82c1 is supplied to a shifter 82c2, the output of the first flip-flop of the shifter 82c2 and the output of the shifter 82c2 are added by an adder 82c3, and the output of the second flip-flop of the shifter 82c2 is By adding the output of the adder 82c3 by 82c4, (a1-a2) * 40
And (a1-a2) x 96 are obtained. In this case, a computing unit 82c is applied to the input data shown in FIG.
Then, the above-described operation result is generated as output data at the timing shown in FIG. Further, the computing unit 82
In the case of d, the DCT serial operation formula F6 = ((a0−a3) × 40− (a1−a) when the coefficient is approximated to a simple integer ratio.
2) × 96) × 2 × 8 × 10 and F2 = ((a0−a3)
× 96 + (a1−a2) × 40) × 2 × 8 × 10 (a0
-A3) × 40 and (a0−a3) × 96 are executed. In this case, the output (a0) of the adder 81a and the output (a3) of the adder 81d are input to the arithmetic unit 82d. a0-a3) are obtained. The output of the subtracter 82d1 is supplied to a shifter 82d2,
The output of the first flip-flop of d2 and the shifter 82
The output of d2 is added by an adder 82d3.
2d2 output of second flip-flop and adder 8
By adding the output of 2d3 by 82d4 (a0
−a3) × 40 and (a0−a3) × 96 are obtained. In this case, the arithmetic unit 82d generates the above-described calculation result as output data at the timing shown in FIG. II with respect to the input data shown as the input in FIG.

【0101】一方、上記演算器82eでは、係数を簡単
な整数比に近似した場合のDCTシリアル演算式F7=
(((48×(b1+b2)+68×b3)×2)×2−
((48×(b2−b1)+68×b0)×2)×10)
×12とF1=(((48×(b2−b1)+68×b0)
×2)×2−((48×(b1+b2)+68×b3)×
2)×10)×12の68×b0の演算及び、F3=
(((96×b3−68×(b1+b2))×2)×6−
((96×b0−68×(b2−b1))×2)×4)×
12とF5=(((96×b0−68×(b2−b1))×
2)×6−((96×b3−68×(b1+b2))×
2)×4)×12の96×b0の演算を実行する。この
場合、演算器82eのシフタ82e1には、減算器81
eの出力(b0)が入力され、シフタ82e1の第3番目
のフリップフロップの出力が加算器82e2により加算
されるとともに、この加算結果がシフタ82e3により
1クロック遅延して出力され、また、シフタ82e1の
第1番目のフリップフロップの出力と第5番目のフリッ
プフロップの出力が加算器82e4により加算されて、
68×b0及び96×b0が求められることになる。この
場合、図5の入力に示す入力データに対して演算器82
eでは、同図IIに示すタイミングで上述の演算結果を出
力データとして発生するようになる。
On the other hand, in the arithmetic unit 82e, the DCT serial arithmetic expression F7 =
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 × (b2−b1) + 68 × b0) × 2) × 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 operation of 68 × b0 and F3 =
(((96 x b3-68 x (b1 + b2)) x 2) x 6
((96 × b0−68 × (b2−b1)) × 2) × 4) ×
12 and F5 = (((96 x b0-68 x (b2-b1)) x
2) × 6-((96 × b3−68 × (b1 + b2)) ×
2) × 4) × 12 of 96 × b0 is executed. In this case, the shifter 82e1 of the arithmetic unit 82e includes a subtractor 81
The output (b0) of e is input, the output of the third flip-flop of the shifter 82e1 is added by the adder 82e2, and the addition result is output one clock delayed by the shifter 82e3. The output of the first flip-flop and the output of the fifth flip-flop are added by an adder 82e4.
68 × b0 and 96 × b0 will be obtained. In this case, the operation unit 82
In e, the above-described operation result is generated as output data at the timing shown in FIG.

【0102】また、上記演算器82fでは、係数を簡単
な整数比に近似した場合のDCTシリアル演算式F7=
(((48×(b1+b2)+68×b3)×2)×2−
((48×(b2−b1)+68×b0)×2)×10)
×12とF1=(((48×(b2−b1)+68×b0)
×2)×2−((48×(b1+b2)+68×b3)×
2)×10)×12の48×(b2−b1)の演算及び、
F3=(((96×b3−68×(b1+b2))×2)×
6−((96×b0−68×(b2−b1))×2)×
4)×12とF5=(((96×b0−68×(b2−b
1))×2)×6−((96×b3−68×(b1+b
2))×2)×4)×12の68×(b2−b1)の演算
を実行する。この場合、演算器82fには、減算器81
fの出力(b1)と減算器81gの出力(b2)が入力さ
れ、減算器82f1で加算器81gの出力を加算器81
fの出力で減算すると(b2−b1)が求められる。この
減算器82f1の出力をシフタ82f2に与え、このシフ
タ82f2の第2番目のフリップフロップの出力と第3
番目のフリップフロップの出力を加算器82f3により
加算し、またシフタ82f2の出力と減算器82f1の出
力を82f4により加算することにより(b2−b1)×
48と(b2−b1)×68が求められることになる。こ
の場合、図5の入力に示す入力データに対して演算器8
2fでは、同図IIに示すタイミングで上述の演算結果を
入力データとして発生するようになる。
In the arithmetic unit 82f, when the coefficient is approximated to a simple integer ratio, the DCT serial arithmetic expression F7 =
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 × (b2−b1) + 68 × b0) × 2) × 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 48 × (b2−b1) operation, and
F3 = (((96 × b3−68 × (b1 + b2)) × 2) ×
6-((96 × b0-68 × (b2-b1)) × 2) ×
4) × 12 and F5 = (((96 × b0−68 × (b2−b
1)) × 2) × 6-((96 × b3−68 × (b1 + b
2)) × 2) × 4) × 12 68 × (b2−b1) calculations are executed. In this case, the arithmetic unit 82f includes the subtractor 81
The output (b1) of f and the output (b2) of the subtractor 81g are input, and the output of the adder 81g is added to the adder 81 by the subtractor 82f1.
Subtraction with the output of f yields (b2-b1). The output of the subtractor 82f1 is supplied to the shifter 82f2, and the output of the second flip-flop of the shifter 82f2 and the third
The output of the flip-flop is added by the adder 82f3, and the output of the shifter 82f2 and the output of the subtractor 82f1 are added by 82f4 to obtain (b2−b1) ×
48 and (b2-b1) * 68 are obtained. In this case, the input data shown in FIG.
In 2f, the above-described operation result is generated as input data at the timing shown in FIG.

【0103】また、上記演算器82gでは、係数を簡単
な整数比に近似した場合のDCTシリアル演算式F7=
(((48×(b1+b2)+68×b3)×2)×2−
((48×(b2−b1)+68×b0)×2)×10)
×12とF1=(((48×(b2−b1)+68×b0)
×2)×2−((48×(b1+b2)+68×b3)×
2)×10)×12の48×(b1+b2)の演算及び、
F3=(((96×b3−68×(b1+b2))×2)×
6−((96×b0−68×(b2−b1))×2)×
4)×12とF5=(((96×b0−68×(b2−b
1))×2)×6−((96×b3−68×(b1+b
2))×2)×4)×12の68×(b1+b2)の演算
を実行する。この場合、演算器82gには、減算器81
fの出力(b1)と減算器81gの出力(b2)が入力さ
れ、加算器82g1で加算器81fの出力と加算器81
gの出力を加算すると(b1+b2)が求められる。この
加算器82g1の出力をシフタ82g2に与え、このシフ
タ82g2の第2番目のフリップフロップの出力と第3
番目のフリップフロップの出力を加算器82g3により
加算し、またシフタ82g2の出力と加算器82g1の出
力を82g4により加算することにより(b1+b2)×
48と(b1+b2)×68が求められることになる。こ
の場合、図5の入力に示す入力データに対して演算器8
2gでは、同図IIに示すタイミングで上述の演算結果を
入力データとして発生するようになる。
In the arithmetic unit 82g, the DCT serial arithmetic expression F7 =
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 × (b2−b1) + 68 × b0) × 2) × 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 48 × (b1 + b2) operation, and
F3 = (((96 × b3−68 × (b1 + b2)) × 2) ×
6-((96 × b0-68 × (b2-b1)) × 2) ×
4) × 12 and F5 = (((96 × b0−68 × (b2−b
1)) × 2) × 6-((96 × b3−68 × (b1 + b
2)) × 2) × 4) × 12 68 × (b1 + b2) calculations are executed. In this case, the arithmetic unit 82g includes the subtractor 81
The output (b1) of f and the output (b2) of the subtractor 81g are input, and the output of the adder 81f and the adder 81 are added by the adder 82g1.
By adding the output of g, (b1 + b2) is obtained. The output of the adder 82g1 is supplied to a shifter 82g2, and the output of the second flip-flop of the shifter 82g2 and the third
The output of the flip-flop is added by the adder 82g3, and the output of the shifter 82g2 and the output of the adder 82g1 are added by 82g4 to obtain (b1 + b2) ×
48 and (b1 + b2) .times.68 are obtained. In this case, the input data shown in FIG.
In 2g, the above calculation result is generated as input data at the timing shown in FIG.

【0104】また、上記演算器82hでは、係数を簡単
な整数比に近似した場合のDCTシリアル演算式F7=
(((48×(b1+b2)+68×b3)×2)×2−
((48×(b2−b1)+68×b0)×2)×10)
×12とF1=(((48×(b2−b1)+68×b0)
×2)×2−((48×(b1+b2)+68×b3)×
2)×10)×12の68×b3の演算及び、F3=
(((96×b3−68×(b1+b2))×2)×6−
((96×b0−68×(b2−b1))×2)×4)×
12とF5=(((96×b0−68×(b2−b1))×
2)×6−((96×b3−68×(b1+b2))×
2)×4)×12の96×b3の演算を実行する。この
場合、演算器82hのシフタ82h1には、減算器81
hの出力(b3)が入力され、シフタ82h1の第3番目
のフリップフロップの出力と第4番目のフリップフロッ
プの出力が加算器82h2により加算されるとともに、
この加算結果がシフタ82h3により1クロック遅延し
て出力され、また、シフタ82h1の第1番目のフリッ
プフロップの出力と第5番目のフリップフロップの出力
が加算器82h4により加算されて、68×b3及び96
×b3が求められることになる。この場合、図5の入力
に示す入力データに対して演算器82hでは、同図IIに
示すタイミングで上述の演算結果を入力データとして発
生するようになる。
In the computing unit 82h, the DCT serial computing equation F7 =
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 × (b2−b1) + 68 × b0) × 2) × 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 operation of 68 × b3 and F3 =
(((96 x b3-68 x (b1 + b2)) x 2) x 6
((96 × b0−68 × (b2−b1)) × 2) × 4) ×
12 and F5 = (((96 x b0-68 x (b2-b1)) x
2) × 6-((96 × b3−68 × (b1 + b2)) ×
2) × 4) × 12 96 × b3 calculations are executed. In this case, the shifter 82h1 of the arithmetic unit 82h has a subtractor 81
h (b3) is input, the output of the third flip-flop of the shifter 82h1 and the output of the fourth flip-flop are added by the adder 82h2,
The result of this addition is output with a delay of one clock by the shifter 82h3, and the output of the first flip-flop and the output of the fifth flip-flop of the shifter 82h1 are added by the adder 82h4. 96
× b3 is required. In this case, the arithmetic unit 82h generates the above-described calculation result as input data at the timing shown in FIG. II for the input data shown in the input of FIG.

【0105】次いで、ステージIIIの演算回路63に進
む。この演算回路63では、ステージIIの演算回路62
の演算器82a、82bの出力が加算器83aおよび減
算器83bに与えられ、同様にして演算器82c、82
dの出力が減算器83c及び加算器83dに与えられ、
さらに演算器82e、82fの出力が加算器83e及び
減算器83fに、演算器82g、82hの出力が減算器
83及び加算器83hに与えられる。これにより、加算
器83aは、ステージIIの演算回路82の演算器82a
と演算器82bの出力を加算した結果((a0+a3)×
16+(a1+a2)×16)×2を出力し、減算器83
bはステージIIの演算回路62の演算器82aから演算
器82bの出力を減算した結果((a0+a3)×16−
(a1+a2)×16)×2を出力し、減算器83cはス
テージIIの演算回路62の演算器82cから演算器82
dの出力を減算した結果((a0−a3)×40−(a1
−a2)×96)×2を出力し、加算器83dは、ステ
ージIIの演算回路62の演算器82cと演算器82dの
出力を加算した結果((a0−a3)×96+(a1−a
2)×40)×2を出力するようになる。また、加算器
83eは、ステージIIの演算回路82の演算器82eと
演算器82fの出力を加算した結果(48×(b2−b
1)+68×b0)×2を出力し、減算器83fはステー
ジIIの演算回路62の演算器82eから演算器82fの
出力を減算した結果(96×b0−68×(b2−b
1))×2を出力し、減算器83gはステージIIの演算
回路62の演算器82gから演算器82hの出力を減算
した結果(96×b3−68×(b1+b2))×2を出
力し、加算器83hは、ステージIIの演算回路62の演
算器82gと演算器82hの出力を加算した結果(48
×(b1+b2)+68×b3)×2を出力するようにな
る。この場合、図5の入力データに対して各加算器83
a、83d、83e、83h及び減算器83b、83
c、83f、83gでは、同図IIIに示すタイミング
で、それぞれの演算結果を出力するようになる。
Next, the operation proceeds to the operation circuit 63 of the stage III. The operation circuit 63 includes a stage II operation circuit 62
Are output to the adder 83a and the subtractor 83b, and similarly, the arithmetic units 82c and 82b
The output of d is given to the subtractor 83c and the adder 83d,
Further, the outputs of the calculators 82e and 82f are provided to the adder 83e and the subtractor 83f, and the outputs of the calculators 82g and 82h are provided to the subtractor 83 and the adder 83h. As a result, the adder 83a is connected to the arithmetic unit 82a of the arithmetic circuit 82 of stage II.
(A + a3) ×
16+ (a1 + a2) × 16) × 2, and the subtracter 83
b is the result of subtracting the output of the arithmetic unit 82b from the arithmetic unit 82a of the arithmetic circuit 62 of the stage II ((a0 + a3) × 16−
(A1 + a2) .times.16) .times.2, and the subtractor 83c is operated by the arithmetic unit 82c of the arithmetic circuit 62 of the stage II.
The result of subtracting the output of d ((a0−a3) × 40− (a1
−a2) × 96) × 2, and the adder 83d adds the output of the arithmetic unit 82c and the output of the arithmetic unit 82d of the arithmetic circuit 62 of the stage II ((a0−a3) × 96 + (a1−a).
2) × 40) × 2 is output. The adder 83e adds the output of the arithmetic unit 82e of the arithmetic circuit 82 of the stage II and the output of the arithmetic unit 82f (48 × (b2−b
1) + 68 × b0) × 2, and the subtracter 83f subtracts the output of the arithmetic unit 82f from the arithmetic unit 82e of the arithmetic circuit 62 of the stage II (96 × b0−68 × (b2−b)
1)) × 2, and the subtracter 83g outputs (96 × b3−68 × (b1 + b2)) × 2, which is the result of subtracting the output of the arithmetic unit 82h from the arithmetic unit 82g of the arithmetic circuit 62 of the stage II. The adder 83h adds the result (48
× (b1 + b2) + 68 × b3) × 2 is output. In this case, each of the adders 83 is applied to the input data of FIG.
a, 83d, 83e, 83h and subtractors 83b, 83
In c, 83f and 83g, the respective calculation results are output at the timing shown in FIG.

【0106】次いで、ステージIVの演算回路64に進
む。この演算回路64では、ステージIIIの演算回路6
3の加算器83aの出力が演算器84aに与えられ、同
様にして減算器83bの出力が演算器84bに、減算器
83cの出力が演算器84cに、加算器83dの出力が
演算器84dに、加算器83eの出力が演算器84e
に、減算器83fの出力が演算器84fに、減算器83
gの出力が演算器84gに、加算器83hの出力が演算
器84hにそれぞれ与えられる。これにより、演算器8
4aは、ステージIIIの演算回路63の加算器83aの
出力((a0+a3)×16+(a1+a2)×16)×2
に対して×8×46の演算を実行し、その演算結果を出
力データF0として出力する。また、演算器84bは、
ステージIIIの演算回路63の減算器83bの出力
((a0+a3)×16−(a1+a2)×16)×2に対
して×8×46の演算を実行し、その演算結果を出力デ
ータF4として出力する。同様に、演算器84cは、ス
テージIIIの演算回路63の減算器83cの出力((a0
−a3)×40−(a1−a2)×96)×2に対して×
8×10の演算を実行し、その演算結果を出力データF
6として出力する。また、演算器84dは、ステージIII
の演算回路63の加算器83dの出力((a0−a3)×
96+(a1−a2)×40)×2に対して×8×10の
演算を実行し、その演算結果を出力データF2として出
力する。
Next, the operation proceeds to the operation circuit 64 of the stage IV. In this arithmetic circuit 64, the arithmetic circuit 6 of stage III
3, the output of the adder 83a is given to the arithmetic unit 84a, the output of the subtractor 83b is given to the arithmetic unit 84b, the output of the subtracter 83c is given to the arithmetic unit 84c, and the output of the adder 83d is given to the arithmetic unit 84d. , The output of the adder 83e is the arithmetic unit 84e
The output of the subtractor 83f is supplied to the arithmetic unit 84f,
The output of g is supplied to the computing unit 84g, and the output of the adder 83h is supplied to the computing unit 84h. Thereby, the computing unit 8
4a is the output of the adder 83a of the operation circuit 63 of the stage III ((a0 + a3) × 16 + (a1 + a2) × 16) × 2
, And the result of the operation is output as output data F0. The arithmetic unit 84b is
An operation of × 8 × 46 is performed on the output ((a0 + a3) × 16− (a1 + a2) × 16) × 2 of the subtracter 83b of the operation circuit 63 of the stage III, and the operation result is output as output data F4. . Similarly, the arithmetic unit 84c outputs the output ((a0) of the subtractor 83c of the arithmetic circuit 63 of stage III.
−a3) × 40− (a1−a2) × 96) × 2 ×
An 8 × 10 operation is executed, and the operation result is output data F
Output as 6. The computing unit 84d is provided for the stage III.
Of the adder 83d of the arithmetic circuit 63 ((a0−a3) ×
An operation of × 8 × 10 is performed on 96+ (a1−a2) × 40) × 2, and the operation result is output as output data F2.

【0107】また、odd側においては、演算器84e
のシフタ82e1には加算器83eの出力((48×
(b2−b1)+68×b0)×2)が入力され、このシ
フタ84e1の出力と加算器83eの出力を加算器84
e2で加算し、また、後述するシフタ84h1の第1番目
のフリップフロップの出力から、この加算器84e2の
出力を減算器84e3で減算する。減算器84e3の出力
はシフタ84e4に与えられ、このシフタ84e4の出力
から減算器84e3の出力を減算器84e5により減算
し、その演算結果を出力データF7として出力する。ま
た、演算器84fのシフタ82f1には減算器83fの
出力((96×b0−68×(b2−b1))×2)が入
力され、このシフタ84f1の第1番目のフリップフロ
ップの出力と減算器83fの出力を加算器84f2で加
算する。また、後述する加算器84g2の出力から、こ
のシフタ84f1の出力を、この減算器84f3で減算す
る。減算器84f3の出力はシフタ84f4に与えられ、
このシフタ84f4の出力から減算器84f3の出力を減
算器84f5により減算し、その演算結果を出力データ
F3として出力する。また、演算器84gのシフタ82
g1には減算器83gの出力((96×b3−68×(b
1+b2))×2)が入力され、このシフタ84g1の第
1番目のフリップフロップの出力と減算器83gの出力
を加算器84g2で加算する。また、加算器84f2の出
力と、このシフタ84g1の出力を、この加算器84g3
で加算する。加算器84g3の出力はシフタ84g4に与
えられ、このシフタ84g4の出力から加算器84g3の
出力を減算器84g5により減算し、その演算結果を出
力データF5として出力する。また、演算器84hのシ
フタ82h1には加算器83hの出力((48×(b1+
b2)+68×b3)×2)が入力され、このシフタ84
h1の出力と加算器83hの出力を加算器84h2で加算
し、また、シフタ84e1の第1番目のフリップフロッ
プの出力と、この加算器84h2の出力を加算器84h3
で減算する。加算器84h3の出力はシフタ84h4に与
えられ、このシフタ84h4の出力から加算器84h3の
出力を減算器84h5により減算し、その演算結果を出
力データF1として出力する。この場合、上記ステージI
Vの演算回路64の各演算器84a〜84hでは図5の
入力データに対してシリアル演算を実行し、同図IVに示
すタイミングで、その演算結果を出力データF0〜F7と
して発生するようになる。
On the odd side, the operation unit 84e
The output of the adder 83e ((48 ×
(B2−b1) + 68 × b0) × 2) is input, and the output of the shifter 84e1 and the output of the adder 83e are added to the adder 84.
The output of the adder 84e2 is subtracted by the subtractor 84e3 from the output of the first flip-flop of the shifter 84h1 described later. The output of the subtractor 84e3 is provided to a shifter 84e4, the output of the subtractor 84e3 is subtracted from the output of the shifter 84e4 by a subtractor 84e5, and the operation result is output as output data F7. The output ((96 × b0−68 × (b2−b1)) × 2) of the subtractor 83f is input to the shifter 82f1 of the arithmetic unit 84f, and subtracted from the output of the first flip-flop of the shifter 84f1. The output of the adder 83f is added by an adder 84f2. The output of the shifter 84f1 is subtracted from the output of an adder 84g2 described later by the subtracter 84f3. The output of the subtractor 84f3 is provided to a shifter 84f4.
The output of the subtracter 84f3 is subtracted from the output of the shifter 84f4 by the subtractor 84f5, and the operation result is output as output data F3. The shifter 82 of the arithmetic unit 84g
The output of the subtracter 83g ((96 × b3−68 × (b
1 + b2)) × 2) is input, and the output of the first flip-flop of the shifter 84g1 and the output of the subtractor 83g are added by the adder 84g2. The output of the adder 84f2 and the output of the shifter 84g1 are combined with the output of the adder 84g3.
Add with The output of the adder 84g3 is provided to a shifter 84g4, the output of the adder 84g3 is subtracted from the output of the shifter 84g4 by a subtractor 84g5, and the operation result is output as output data F5. The output of the adder 83h ((48 × (b1 +
b2) + 68 × b3) × 2) are input and the shifter 84
The output of h1 and the output of adder 83h are added by adder 84h2, and the output of the first flip-flop of shifter 84e1 and the output of adder 84h2 are added to adder 84h3.
Subtract with. The output of the adder 84h3 is provided to a shifter 84h4, the output of the adder 84h3 is subtracted from the output of the shifter 84h4 by a subtractor 84h5, and the operation result is output as output data F1. In this case, the above stage I
The arithmetic units 84a to 84h of the V arithmetic circuit 64 execute a serial operation on the input data of FIG. 5 and generate the operation results as output data F0 to F7 at the timing shown in FIG. .

【0108】以上の説明は、DCT演算処理の場合であ
るが、逆DCT演算処理の場合も上述したと同様であ
る。
The above description is for the DCT operation, but the inverse DCT operation is the same as described above.

【0109】この場合は入力データがステージIVの演算
回路64〜ステージIの演算回路61の順で与えられる
ようになる。
In this case, the input data is supplied in the order of the stage IV operation circuit 64 to the stage I operation circuit 61.

【0110】図5は、データ変換演算装置50の入力か
ら出力までのタイミングチャートであり、ステージIの
演算回路61〜ステージIVの演算回路64の動作を総合
した場合のタイミングチャートを示している。本実施例
では、2のべきにとらわれずにDCTの演算係数を整数
値に置き換え、そのゲイン変化分を量子化装置51によ
って吸収するようにすることによって図4に示すように
回路規模を大幅に小さくすることができ、8bitのデー
タを入力した場合、1ライン当りの処理周期を21クロ
ックに減少させることができる。
FIG. 5 is a timing chart from the input to the output of the data conversion operation device 50, and shows a timing chart when the operations of the operation circuits 61 of the stage I to the operation circuit 64 of the stage IV are integrated. In the present embodiment, the operation coefficient of the DCT is replaced with an integer value without being considered to be a power of 2, and the change in the gain is absorbed by the quantization device 51, thereby significantly increasing the circuit scale as shown in FIG. When 8-bit data is input, the processing cycle per line can be reduced to 21 clocks.

【0111】なお、上述の例は一次元の場合であり、画
素等の二次元の場合には、この処理を縦、横2度行うこ
とによって実現するようにする。
Note that the above example is a one-dimensional case, and a two-dimensional case of pixels or the like is realized by performing this processing twice vertically and horizontally.

【0112】データ変換演算装置90における動作(図
7、図8) データ変換演算装置90の基本的な動作は図4に示した
データ変換演算装置50と同様であるが、ステージがI
〜IIIとなっており、かつステージIIのodd側がDC
T演算式をそのままハードウェア化したシリアル回路1
00により構成されているためこの部分の動作は異なっ
ている。まず、シリアル回路100の動作について説明
し、次いで、データ変換演算装置90の全体の動作を述
べる。
Operation in Data Conversion Operation Device 90 (FIGS. 7 and 8) The basic operation of the data conversion operation device 90 is the same as that of the data conversion operation device 50 shown in FIG.
~ III, and the odd side of stage II is DC
Serial circuit 1 with T arithmetic expression as hardware
00, the operation of this part is different. First, the operation of the serial circuit 100 will be described, and then the overall operation of the data conversion operation device 90 will be described.

【0113】前記図6のデータ変換演算装置50の破線
内の演算について、入力をb0〜b3、出力をx0〜x3と
して考えてみる。同図中破線内の演算は以下のような式
で表わすことができる。
As for the operation within the broken line of the data conversion operation device 50 of FIG. 6, consider the input as b0 to b3 and the output as x0 to x3. The calculation within the broken line in FIG.

【0114】 x0=32×(−85b0+72b1−48b2+17b3) x1=32×(−48b0−85b1−17b2+72b3) x2=32×(72b0−17b1+85b2+48b3) x3=32×(17b0+48b1+72b2+85b3) 上記の式により、x0〜x3は各入力b0〜b3に対して、
17、48、72、85という一定の数値を乗じた値の
加減算によって得られることがわかる。この場合、上記
式に示すように、演算式のうち本来括弧内だけの比率で
求めればよいにもかかわらず従来のシリアル演算を行な
う場合には加減算及びバタフライ演算を用いていたため
×32が必要となり、結果的には32=25としてフリ
ップフロップ(FF)5段分の冗長性が存在していた。
X0 = 32 × (−85b0 + 72b1−48b2 + 17b3) x1 = 32 × (−48b0−85b1−17b2 + 72b3) x2 = 32 × (72b0−17b1 + 85b2 + 48b3) x3 = 32 × (17b0 + 48b1 + 72b2 + 3x0, x3 = 32x3) For each input b0-b3,
It can be seen that it is obtained by addition and subtraction of values multiplied by certain numerical values of 17, 48, 72 and 85. In this case, as shown in the above equation, when the conventional serial operation is performed, the addition / subtraction and the butterfly operation are used. As a result, there is a redundancy of 5 stages of flip-flops (FF) with 32 = 25.

【0115】上記式の係数17、48、72、85の比
率を同じままで高速化した回路が図8に示すシリアル回
路100である。
The serial circuit 100 shown in FIG. 8 is a circuit whose speed is increased while the ratios of the coefficients 17, 48, 72 and 85 in the above equation remain the same.

【0116】図8のデータ変換演算装置90のシリアル
回路100について、入力をb0〜b3、出力をx0〜x3
として考えてみる。図8に示すような回路構成にする
と、各出力x0〜x3は以下のような式によって表わされ
る。
In the serial circuit 100 of the data conversion / calculation device 90 shown in FIG.
Think about it. With the circuit configuration shown in FIG. 8, each of the outputs x0 to x3 is represented by the following equation.

【0117】 x0=4×(−85b0+72b1−48b2+17b3) x1=4×(−48b0−85b1−17b2+72b3) x2=4×(72b0−17b1+85b2+48b3) x3=4×(17b0+48b1+72b2+85b3) 従来の式と比べてゲインは4/32=1/8=2-3倍異
なっている。つまり、2-3から3クロック従来のものよ
りも速く出力することがわかる。ここでは、破線内のみ
を高速化したため偶数成分F0、F2、F4、F6と出力タ
イミングおよびゲインが異なってしまうので、タイミン
グおよびゲインを揃えるために、偶数成分側から不必要
なシフトレジスタを取り去った構成図が図8である。ま
たその時のタイミングチャートが図10であり、入力か
ら出力まで23クロックによって行なう。
X0 = 4 × (−85b0 + 72b1−48b2 + 17b3) x1 = 4 × (−48b0−85b1−17b2 + 72b3) x2 = 4 × (72b0−17b1 + 85b2 + 48b3) x3 = 4 × (17b0 + 48b1 + 72b2 + 45) / 32 = 1/8 = 2-3 times different. That is, it can be seen that 2-3 to 3 clocks are output faster than the conventional one. Here, since only the inside of the broken line has been speeded up, the output timings and gains are different from those of the even-numbered components F0, F2, F4, F6. Therefore, unnecessary shift registers have been removed from the even-numbered components in order to make the timings and the gains uniform. FIG. 8 is a configuration diagram. The timing chart at that time is shown in FIG.

【0118】以下、上記演算式をそのままハードウェア
化したシリアル回路100の動作を説明する。
Hereinafter, the operation of the serial circuit 100 in which the above-described arithmetic expression is directly converted into hardware will be described.

【0119】図8において、シリアル回路100の前段
部分を構成するシリアル回路101のシリアル演算器1
01e〜101hには、図7のステージIの演算回路9
1で減算された減算結果b0、b1、b2、b3が入力デー
タとして与えられ、各入力b0〜b3に共通な係数を2の
べきにある数値をかけた形で表現した場合の該数値の部
分が演算される。すなわち、上記シリアル演算器101
eでは、入力b0が入力されると、この入力b0をシフト
あるいはシフト加算を行なうことによって各入力b0〜
b3に共通な係数17、85、48、72を2のべきに
ある数値(本実施例では、2、42、6、18)をかけ
た形で表現した場合の該数値の部分が作成される。この
場合、上記式に示すようにDCT演算式を展開して各入
力に共通な係数17、85、48、72が得られたとす
ると、図1の原理説明(II)で説明したように係数17
は16+1、係数85は42×21+1、係数48は6
×23、係数72は18×22と表現し、この数値2、4
2、6、18の部分(図1の破線内の数値参照)をシリ
アル演算器101eにより演算する。これにより、シリ
アル演算器101eのシフタ101e1の第1番目のフ
リップフロップから1個のフリップフロップの動作だけ
遅延して出力された「2」が、入力b0とシフタ101
e1の第1番目のフリップフロップの出力を加算するこ
とによって加算器101e5から「42」が、入力b0と
シフタ101e1の第1番目のフリップフロップの出力
を加算することによって加算器101e2から「6」
が、入力b0とシフタ101e1の出力を加算することに
よって加算器101e3から「18」がそれぞれ出力さ
れることになる。同様に、上記シリアル演算器101f
では、入力b1がシフトあるいはシフト加算されること
によって、シリアル演算器101fのシフタ101f1
の第1番目のフリップフロップから「2」が、入力b0
と加算器101e4の出力を加算して出力加算器101
f5から「42」が、加算器101f2から「6」が、加
算器101f3から「18」がそれぞれ出力されること
になる。また、上記シリアル演算器101gでは、入力
b2がシフトあるいはシフト加算されることによって、
シリアル演算器101gのシフタ101g1の第1番目
のフリップフロップから「2」が、加算器101g5か
ら「42」が、加算器101g2から「6」が、加算器
101g3から「18」がそれぞれ出力されることにな
り、上記シリアル演算器101hでは、入力b3がシフ
トあるいはシフト加算されることによって、シリアル演
算器101hのシフタ101h1の第1番目のフリップ
フロップから「2」が、加算器101h5から「42」
が、加算器101h2から「6」が、加算器101h3か
ら「18」がそれぞれ出力されることになる。
Referring to FIG. 8, the serial operation unit 1 of the serial
The operation circuit 9 of the stage I of FIG.
The subtraction result b0, b1, b2, b3 obtained by subtracting 1 is given as input data, and a part of the numerical value when a coefficient common to the respective inputs b0 to b3 is expressed by multiplying the numerical value by a power of 2 Is calculated. That is, the serial computing unit 101
In e, when the input b0 is input, each of the inputs b0 to b0 is shifted or shifted and added.
When the coefficients 17, 85, 48, and 72 common to b3 are expressed by multiplying them by a power of 2 (2, 42, 6, and 18 in this embodiment), a portion of the numerical value is created. . In this case, assuming that the coefficients 17, 85, 48, and 72 common to the respective inputs are obtained by expanding the DCT operation equation as shown in the above equation, the coefficient 17 as described in the principle explanation (II) of FIG.
Is 16 + 1, coefficient 85 is 42 × 21 + 1, coefficient 48 is 6
× 23 and the coefficient 72 are expressed as 18 × 22.
The portions 2, 6, and 18 (see the numerical values in the broken lines in FIG. 1) are calculated by the serial calculator 101e. As a result, "2" output from the first flip-flop of the shifter 101e1 of the serial operation unit 101e with a delay of one flip-flop is output from the input b0 and the shifter 101e1.
The adder 101e5 to "42" adds the output of the first flip-flop of e1 and the adder 101e2 to "6" adds the input b0 and the output of the first flip-flop of the shifter 101e1.
However, by adding the input b0 and the output of the shifter 101e1, "18" is output from the adder 101e3. Similarly, the serial computing unit 101f
Then, the input b1 is shifted or shift-added, so that the shifter 101f1 of the serial operation unit 101f is shifted.
"2" from the first flip-flop of the input b0
And the output of the adder 101e4.
"42" is output from f5, "6" is output from adders 101f2, and "18" is output from adders 101f3. Further, in the serial arithmetic unit 101g, the input b2 is shifted or shift-added,
"2" is output from the first flip-flop of the shifter 101g1 of the serial arithmetic unit 101g, "42" is output from the adder 101g5, "6" is output from the adder 101g2, and "18" is output from the adder 101g3. That is, in the serial operation unit 101h, the input b3 is shifted or shift-added, so that "2" is output from the first flip-flop of the shifter 101h1 of the serial operation unit 101h, and "42" is output from the adder 101h5.
However, "6" is output from the adder 101h2, and "18" is output from the adder 101h3.

【0120】上記シリアル演算器101e〜101hで
演算されたDCT演算式の係数に相当する数値「2」、
「42」、「6」、「18」はシリアル回路100の後
段部分を構成するシリアル回路102のシリアル演算器
102e〜102hに入力され、各シリアル演算器10
2e〜102hは、シリアル演算器101e〜101h
により計算された係数出力に対してDCT演算式の横方
向に符号分を含めた加減算を順次行なって出力x3〜x0
として出力する。この場合、上記係数17、85、4
8、72を2のべきにある数値をかけた形で表現したと
きの2のべきの部分は各シリアル演算器102e〜10
2hの加減算器への入力位置により調整されるととも
に、原理説明(II)で説明した理由から係数17、8
5、48、72のうち、基本的に奇数のもの(係数1
7、85)についての加減算を先に行なうようにする。
Numerical value “2” corresponding to the coefficient of the DCT calculation formula calculated by the serial calculators 101e to 101h,
“42”, “6”, and “18” are input to the serial operators 102 e to 102 h of the serial circuit 102 constituting the latter part of the serial circuit 100,
2e to 102h are serial operation units 101e to 101h
Are successively added and subtracted in the horizontal direction of the DCT operation expression including the sign to the coefficient outputs calculated by
Output as In this case, the coefficients 17, 85, 4
When 8 and 72 are expressed in a form obtained by multiplying a numerical value by a power of 2, the power of 2 is calculated by each of the serial arithmetic units 102e to 102e.
The coefficient is adjusted by the input position to the 2h adder / subtracter, and the coefficients 17, 8 for the reason explained in the principle explanation (II).
5, 48 and 72 are basically odd numbers (coefficient 1
7, 85) is performed first.

【0121】上記シリアル演算器102eでは、DCT
演算式をそのままハードウェア化した場合のシリアル演
算式x3=4×(17b0+48b1+72b2+85b
3)を実行する。この場合、シリアル演算器102eの
加算器102e1には、シリアル演算器101fの加算
器101f2の出力とシリアル演算器101eのシフタ
101e1の第1番目のフリップフロップの出力とが入
力され、加算器102e1でこれら入力を加算し、この
加算器102e1の出力とシリアル演算器101gの加
算器101g3の出力を加算器102e2で加算し、この
加算器102e2の出力とシリアル演算器101hの加
算器101h5の出力を加算器102e3で加算し、この
加算器102e3の出力と入力b3を加算器102e4で
加算し、この加算器102e4の出力とシリアル演算器
101eのシフタ101e1の第1番目のフリップフロ
ップの出力を加算器102e5で加算すると出力x3が求
められる。
In the serial operation unit 102e, the DCT
Serial operation expression x3 = 4 × (17b0 + 48b1 + 72b2 + 85b) when the operation expression is directly converted into hardware
Perform 3). In this case, the output of the adder 101f2 of the serial calculator 101f and the output of the first flip-flop of the shifter 101e1 of the serial calculator 101e are input to the adder 102e1 of the serial calculator 102e. These inputs are added, the output of the adder 102e1 and the output of the adder 101g3 of the serial calculator 101g are added by the adder 102e2, and the output of the adder 102e2 and the output of the adder 101h5 of the serial calculator 101h are added. The output of the adder 102e3 and the input b3 are added by the adder 102e4. The output of the adder 102e4 and the output of the first flip-flop of the shifter 101e1 of the serial operation unit 101e are added to the adder 102e5. The output x3 is obtained by adding.

【0122】また、上記シリアル演算器102fでは、
DCT演算式をそのままハードウェア化した場合のシリ
アル演算式x2=4×(72b0−17b1+85b2+4
8b3)を実行する。この場合、シリアル演算器102
fの減算器102f1には、シリアル演算器101hの
加算器101h2の出力とシリアル演算器101fのシ
フタ101f1の第1番目のフリップフロップの出力と
が入力され、減算器102f1で加算器101h2の出力
からシフタ101f1の第1番目のフリップフロップの
出力を減算し、この減算器102f1の出力とシリアル
演算器101eの加算器101e3の出力を加算器10
2f2で加算し、この加算器102f2の出力とシリアル
演算器101gの加算器101g5の出力を加算器10
2f3で加算し、この加算器102f3の出力と入力b2
を加算器102f4で加算し、この加算器102f4の出
力からシリアル演算器101fのシフタ101f1の第
1番目のフリップフロップの出力を減算器102f5で
減算すると出力x2が求められる。
Further, in the serial computing unit 102f,
Serial operation expression x2 = 4 × (72b0-17b1 + 85b2 + 4) when DCT operation expression is directly converted to hardware
8b3) is executed. In this case, the serial operator 102
The output of the adder 101h2 of the serial calculator 101h and the output of the first flip-flop of the shifter 101f1 of the serial calculator 101f are input to the subtractor 102f1 of f. The output of the first flip-flop of the shifter 101f1 is subtracted, and the output of the subtractor 102f1 and the output of the adder 101e3 of the serial operation unit 101e are added to the adder 10
The output of the adder 102f2 and the output of the adder 101g5 of the serial operation unit 101g are added to the adder 10f2.
2f3, the output of the adder 102f3 and the input b2
Is added by the adder 102f4, and the output of the first flip-flop of the shifter 101f1 of the serial operation unit 101f is subtracted from the output of the adder 102f4 by the subtractor 102f5 to obtain the output x2.

【0123】また、上記シリアル演算器102gでは、
DCT演算式をそのままハードウェア化した場合のシリ
アル演算式x1=4×(−48b0−85b1−17b2+
72b3)実行する。この場合、シリアル演算器102
gの加算器102g1には、シリアル演算器101eの
加算器101e2の出力とシリアル演算器101gのシ
フタ101g1の第1番目のフリップフロップの出力と
が入力され、加算器102g1でこれら入力を加算し、
次いで減算器102g2でシリアル演算器101hの加
算器101h3の出力から加算器102g1の出力を減算
し、この減算器102g2の出力からシリアル演算器1
01fの加算器101f5の出力を減算器102g3で減
算し、この減算器102g3の出力から入力b1を減算器
102g4で減算し、この減算器102g4の出力からシ
リアル演算器101gのシフタ101g1の第1番目の
フリップフロップの出力を減算器102g5で減算する
と出力x1が求められる。
In the above-mentioned serial operation unit 102g,
Serial operation expression x1 = 4 × (−48b0−85b1−17b2 +) when the DCT expression is directly converted to hardware
72b3) Execute. In this case, the serial operator 102
The output of the adder 101e2 of the serial arithmetic unit 101e and the output of the first flip-flop of the shifter 101g1 of the serial arithmetic unit 101g are input to the adder 102g1 of g, and the adder 102g1 adds these inputs.
Next, the output of the adder 102g1 is subtracted from the output of the adder 101h3 of the serial operator 101h by the subtracter 102g2, and the serial operator 1 is subtracted from the output of the subtractor 102g2.
The output of the adder 101f5 of 01f is subtracted by the subtractor 102g3, the input b1 is subtracted from the output of the subtractor 102g3 by the subtractor 102g4, and the output of the subtracter 102g4 is used as the first shifter 101g1 of the serial calculator 101g. Is subtracted by the subtractor 102g5 to obtain the output x1.

【0124】また、上記シリアル演算器102hでは、
DCT演算式をそのままハードウェア化した場合のシリ
アル演算式x0=4×(−85b0+72b1−48b2+
17b3)実行する。この場合、シリアル演算器102
hの減算器102h1には、シリアル演算器101hの
シフタ101h1の第1番目のフリップフロップの出力
とシリアル演算器101gの加算器101g2の出力と
が入力され、減算器102h1でシフタ101h1の第1
番目のフリップフロップの出力から加算器101g2の
出力を減算し、この減算器102h1の出力とシリアル
演算器101fの加算器101f3の出力を加算器10
2h2で加算し、この加算器102h2の出力からシリア
ル演算器101eの加算器101e5の出力を減算器1
02h3で減算し、この減算器102h3の出力から入力
b0を減算器102h4で減算し、この減算器102h4
の出力とシリアル演算器101hのシフタ101h1の
第1番目のフリップフロップの出力を加算器102h5
で加算すると出力x0が求められる。
Further, in the serial computing unit 102h,
Serial operation expression x0 = 4 × (−85b0 + 72b1−48b2 +) when the DCT expression is directly converted to hardware
17b3) Execute. In this case, the serial operator 102
The output of the first flip-flop of the shifter 101h1 of the serial calculator 101h and the output of the adder 101g2 of the serial calculator 101g are input to the subtractor 102h1 of h.
The output of the adder 101g2 is subtracted from the output of the flip-flop, and the output of the subtracter 102h1 and the output of the adder 101f3 of the serial operation unit 101f are added to the adder 10
2h2, and the output of the adder 101e5 of the serial calculator 101e is subtracted from the output of the adder 102h2 by the subtractor 1
02h3, the input b0 is subtracted from the output of the subtractor 102h3 by a subtractor 102h4.
And the output of the first flip-flop of the shifter 101h1 of the serial operation unit 101h is added to the adder 102h5.
The output x0 is obtained by adding

【0125】上記シリアル演算の場合、図10の入力デ
ータに対してシリアル演算器102e〜102hから
は、同図IIに示すタイミングで、それぞれの演算結果を
出力するようになる。
In the case of the serial operation, the serial operation units 102e to 102h output respective operation results at the timing shown in FIG.

【0126】以下、上記シリアル回路100を含んで構
成されたデータ変換演算装置90の動作を説明する。
The operation of the data conversion operation device 90 including the serial circuit 100 will be described below.

【0127】まず、DCT演算処理の場合を述べると、
ここでは、ステージIの演算回路91において加算器8
1aに入力データf0とf7、加算器81bに入力データ
f3とf4、加算器81cに入力データf1とf6、加算器
81dに入力データf2とf5、減算器81eに入力デー
タf0とf7、減算器81fに入力データf3とf4、減算
器81gに入力データf1とf6、減算器81hに入力デ
ータf2とf5が入力される。これにより加算器81aは
入力データf0とf7の加算結果を出力し、加算器81b
は入力データf3とf4の加算結果を出力し、加算器81
cは入力データf1とf6の加算結果f1+f6を出力し、
加算器81dは入力データf2とf5の加算結果を出力す
るようになる。また、減算器81eは入力データf0と
f7の減算結果を出力し、減算器81fは入力データf3
とf4の減算結果を出力し、減算器81gは入力データ
f1とf6の減算結果を出力し、減算器81hは入力デー
タf2とf5の減算結果を出力するようになる。この場合
の入力データは、図10に示すように7bitと1bitのサ
インビットの8bitのデータからなっている。また、出
力データは、図10Iに示すように7+1bitと1bitの
サインビットからなっている。
First, the case of DCT calculation processing will be described.
Here, the adder 8 is used in the operation circuit 91 of the stage I.
1a, input data f0 and f7; adder 81b, input data f3 and f4; adder 81c, input data f1 and f6; adder 81d, input data f2 and f5; subtractor 81e, input data f0 and f7; Input data f3 and f4 are input to 81f, input data f1 and f6 are input to the subtractor 81g, and input data f2 and f5 are input to the subtractor 81h. As a result, the adder 81a outputs the addition result of the input data f0 and f7, and the adder 81b
Outputs an addition result of the input data f3 and f4,
c outputs the addition result f1 + f6 of the input data f1 and f6,
The adder 81d outputs the result of adding the input data f2 and f5. The subtractor 81e outputs the result of subtraction of the input data f0 and f7, and the subtractor 81f outputs the result of the input data f3
And f4, the subtractor 81g outputs the subtraction result of the input data f1 and f6, and the subtractor 81h outputs the subtraction result of the input data f2 and f5. As shown in FIG. 10, the input data in this case is composed of 7-bit and 8-bit data of 1-bit sign bit. The output data is composed of 7 + 1 bits and 1 bit sign bit as shown in FIG. 10I.

【0128】次いで、ステージIIの演算回路92に進
む。この演算回路92のeven側のシリアル演算器9
2a〜92dには、ステージIの演算回路91で加算さ
れた加算結果a0、a1、a2、a3が入力データとして与
えられ、odd側のシリアル回路100には、ステージ
Iの演算回路91で減算された減算結果b0、b1、b
2、b3が入力データとして与えられる。上記演算器92
aでは、係数を簡単な整数比に近似した場合のDCTシ
リアル演算式F0=(92a0+92a1+92a2+92
a3)×128の括弧内の演算を実行する。この場合、
シリアル演算器92aの前段部を構成する加算器82a
1には、加算器81aの出力と加算器81dの出力とが
入力され、加算器82a1でこれら入力データを加算
し、この加算結果がシフタ82a2に与えられる。ま
た、上記シリアル演算器92bでは、係数を簡単な整数
比に近似した場合のDCTシリアル演算式F4=(92
a0−92a1−92a2+92a3)×128の括弧内の
演算を実行する。この場合、シリアル演算器92bの前
段部を構成する演算器92bには、加算器81bの出力
と加算器81cの出力とが入力され、加算器82b1で
これら入力データを加算し、この加算結果がシフタ82
b2に与えられる。これにより、シフタ82a2及びシフ
タ82b2からは3個のフリップフロップの動作だけ遅
延して出力されることになる。 また、上記シリアル演
算器92cでは、係数を簡単な整数比に近似した場合の
DCTシリアル演算式F6=(25a0+60a1−60
a2−25a3)×128の括弧内の演算を実行する。こ
の場合、シリアル演算器92cの前段部を構成する演算
器82cには、加算器81bの出力と加算器81cの出
力とが入力され、減算器82c1で加算器81bの出力
を加算器81cの出力で減算すると(a1−a2)が求め
られる。この減算器82c1の出力をシフタ82c2に与
え、このシフタ82c2の第1番目のフリップフロップ
の出力とシフタ82c2の出力を加算器82c3により加
算し、また、シフタ82c2の第2番目のフリップフロ
ップの出力と加算器82c3の出力を加算器82c4によ
り加算することにより「25」、「60」が求められる
ことになる。また、上記シリアル演算器92dでは、係
数を簡単な整数比に近似した場合のDCTシリアル演算
式F2=(60a0+25a1−25a2−60a3)×1
28の括弧内の演算を実行する。この場合、シリアル演
算器92dの前段部を構成する演算器82dには、加算
器81aの出力と加算器81dの出力とが入力され、減
算器82d1で加算器81aの出力を加算器81dの出
力で減算すると(a0−a3)が求められる。この減算器
82d1の出力をシフタ82d2に与え、このシフタ82
d2の第1番目のフリップフロップの出力とシフタ82
d2の出力を加算器82d3により加算し、また、シフタ
82d2の第2番目のフリップフロップの出力と加算器
82d3の出力を加算器82d4により加算することによ
り「60」、「25」が求められることになる。
Next, the operation proceeds to the stage II arithmetic circuit 92. The even side serial operation unit 9 of the operation circuit 92
The addition results a0, a1, a2, and a3 added by the operation circuit 91 of the stage I are given as input data to 2a to 92d, and subtracted by the operation circuit 91 of the stage I to the odd-side serial circuit 100. Subtraction results b0, b1, b
2, b3 are given as input data. The computing unit 92
In a, the DCT serial operation formula F0 = (92a0 + 92a1 + 92a2 + 92) when the coefficient is approximated to a simple integer ratio.
a3) Perform the operation in parentheses of × 128. in this case,
Adder 82a forming the front stage of serial operation unit 92a
1 is supplied with the output of the adder 81a and the output of the adder 81d. The input data is added by the adder 82a1, and the addition result is given to the shifter 82a2. In the serial computing unit 92b, the DCT serial computing equation F4 = (92
a0−92a1−92a2 + 92a3) × 128. In this case, the output of the adder 81b and the output of the adder 81c are input to the arithmetic unit 92b, which constitutes the former stage of the serial arithmetic unit 92b, and the input data is added by the adder 82b1. Shifter 82
b2. As a result, the shifter 82a2 and the shifter 82b2 output the data with a delay of three flip-flops. In the serial computing unit 92c, the DCT serial computing equation F6 = (25a0 + 60a1-60) when the coefficient is approximated to a simple integer ratio.
a2-25a3) Perform the operation in parentheses of 128. In this case, the output of the adder 81b and the output of the adder 81c are input to the arithmetic unit 82c which constitutes the former stage of the serial arithmetic unit 92c, and the output of the adder 81b is output by the subtractor 82c1 to the output of the adder 81c. (A1-a2) is obtained by subtracting. The output of the subtractor 82c1 is supplied to a shifter 82c2, the output of the first flip-flop of the shifter 82c2 and the output of the shifter 82c2 are added by an adder 82c3, and the output of the second flip-flop of the shifter 82c2 By adding the output of the adder 82c3 and the output of the adder 82c3, "25" and "60" are obtained. In the serial computing unit 92d, the DCT serial computing equation F2 = (60a0 + 25a1-25a2-60a3) × 1 when the coefficient is approximated to a simple integer ratio.
Perform the operation in parentheses at 28. In this case, the output of the adder 81a and the output of the adder 81d are input to the arithmetic unit 82d, which constitutes the former stage of the serial arithmetic unit 92d, and the output of the adder 81a is output from the adder 81d by the subtractor 82d1. (A0-a3) is obtained by subtraction. The output of the subtracter 82d1 is supplied to a shifter 82d2,
The output of the first flip-flop of d2 and the shifter 82
Addition of the output of d2 by the adder 82d3, and addition of the output of the second flip-flop of the shifter 82d2 and the output of the adder 82d3 by the adder 82d4 yields "60" and "25". become.

【0129】次いで、上記演算器82a〜82dで求め
た演算結果は、シリアル演算器92a〜92dの後段部
を構成する加減算器に与えられる。具体的には、演算器
82a、82bの出力が加算器83aおよび減算器83
bに与えられ、演算器82c、82dの出力が減算器8
3c及び加算器83dに与えられ、さらに演算器82
e、82fの出力が加算器83e及び減算器83fに、
演算器82g、82hの出力が減算器83及び加算器8
3hに与えられる。これにより、加算器83aは、演算
器82aと演算器82bの出力を加算した結果(92a
0+92a1+92a2+92a3)を出力し、減算器83
bは、演算器82aから演算器82bの出力を減算した
結果(92a0−92a1−92a2+92a3)を出力
し、減算器83cは、演算器82cから演算器82dの
出力を減算した結果(25a0+60a1−60a2−2
5a3)を出力し、加算器83dは、演算器82cと演
算器82dの出力を加算した結果(60a0+25a1−
25a2−60a3)を出力するようになる。この場合、
図10の入力に示す入力データに対して演算器83a〜
83hでは、同図IIに示すタイミングで上述の演算結果
を出力データとして発生するようになる。
Next, the arithmetic results obtained by the arithmetic units 82a to 82d are given to an adder / subtractor constituting the subsequent stage of the serial arithmetic units 92a to 92d. Specifically, the outputs of the arithmetic units 82a and 82b are added to the adder 83a and the subtractor 83
b and the outputs of the arithmetic units 82c and 82d
3c and an adder 83d.
e and 82f are output to an adder 83e and a subtractor 83f,
The outputs of the arithmetic units 82g and 82h are the subtractor 83 and the adder 8
3h. As a result, the adder 83a adds the output of the arithmetic unit 82a and the output of the arithmetic unit 82b (92a
0 + 92a1 + 92a2 + 92a3), and the subtracter 83
b outputs the result (92a0-92a1-92a2 + 92a3) obtained by subtracting the output of the arithmetic unit 82b from the arithmetic unit 82a, and the subtracter 83c subtracts the output of the arithmetic unit 82d from the arithmetic unit 82c (25a0 + 60a1-60a2-). 2
5a3), and the adder 83d adds the output of the arithmetic unit 82c and the output of the arithmetic unit 82d (60a0 + 25a1−).
25a2-60a3). in this case,
Arithmetic devices 83a to 83a to input data shown in the input of FIG.
At 83h, the above calculation result is generated as output data at the timing shown in FIG.

【0130】なお、ステージIIの演算回路92のodd
側を構成するシリアル回路100の動作は前述してい
る。
The odd of the operation circuit 92 of the stage II
The operation of the serial circuit 100 constituting the side has been described above.

【0131】次いで、ステージIIIの演算回路93に進
む。この演算回路93では、ステージIIの演算回路92
の加算器83aの出力が演算器93aに与えられ、同様
にして減算器83bの出力が演算器93bに、減算器8
3cの出力が演算器93cに、加算器83dの出力が演
算器93dに、シリアル回路100の出力x0が演算器
93eに、シリアル回路100の出力x1が演算器93
fに、シリアル回路100の出力x2が演算器93g
に、シリアル回路100の出力x3が演算器93hにそ
れぞれ与えられる。これにより、演算器93aは、ステ
ージIIの演算回路92の加算器83aの出力(92a0
+92a1+92a2+92a3)に対して×128の演
算を実行し、出力F0のゲイン128を与え、その演算
結果を出力データF0として出力する。また、演算器9
3bは、ステージIIの演算回路92の減算器83bの出
力(92a0−92a1−92a2+92a3)に対して×
128の演算を実行し、出力F4のゲイン128を与
え、その演算結果を出力データF4として出力する。同
様に、演算器93cは、ステージIIの演算回路92の減
算器83cの出力(25a0+60a1−60a2−25
a3)に対して×128の演算を実行し、出力F6のゲイ
ン128を与え、その演算結果を出力データF6として
出力する。また、演算器93dは、ステージIIの演算回
路92の加算器83dの出力(60a0+25a1−25
a2−60a3)に対して×128の演算を実行し、出力
F2のゲイン128を与え、その演算結果を出力データ
F2として出力する。
Next, the operation proceeds to the operation circuit 93 of the stage III. The operation circuit 93 includes a stage II operation circuit 92
The output of the adder 83a is given to the computing unit 93a, and the output of the subtractor 83b is similarly supplied to the computing unit 93b,
The output of 3c is output to the operator 93c, the output of the adder 83d is output to the operator 93d, the output x0 of the serial circuit 100 is output to the operator 93e, and the output x1 of the serial circuit 100 is output to the operator 93d.
f, the output x2 of the serial circuit 100 is the arithmetic unit 93g
The output x3 of the serial circuit 100 is supplied to the arithmetic unit 93h. As a result, the arithmetic unit 93a outputs the output (92a0) of the adder 83a of the arithmetic circuit 92 of stage II.
+ 128a1 + 92a2 + 92a3) is executed, a gain 128 of the output F0 is given, and the operation result is output as output data F0. The arithmetic unit 9
3b is a value obtained by multiplying the output (92a0-92a1-92a2 + 92a3) of the subtractor 83b of the stage II arithmetic circuit 92 by x.
A calculation of 128 is executed, a gain 128 of the output F4 is given, and the calculation result is output as output data F4. Similarly, the operation unit 93c outputs the output (25a0 + 60a1-60a2-25) of the subtractor 83c of the operation circuit 92 of stage II.
A calculation of x128 is performed on a3), a gain 128 of the output F6 is given, and the calculation result is output as output data F6. The arithmetic unit 93d outputs the output (60a0 + 25a1-25) of the adder 83d of the stage II arithmetic circuit 92.
a2−60a3), a calculation of × 128 is performed, a gain 128 of the output F2 is given, and the calculation result is output as output data F2.

【0132】また、odd側においては、演算器93e
のシフタ84e4及び減算器84e5は、ステージIIのシ
リアル回路100の出力x0に対して×32の演算を実
行して出力F7のゲイン32を与え、その演算結果を出
力データF7として出力する。また、演算器93fのシ
フタ84f4及び減算器84f5は、ステージIIのシリア
ル回路100の出力x1に対して×32の演算を実行し
て出力F3のゲイン32を与え、その演算結果を出力デ
ータF3として出力する。同様に、演算器93gのシフ
タ84g4及び減算器84g5は、ステージIIのシリアル
回路100の出力x2に対して×32の演算を実行して
出力F5のゲイン32を与え、その演算結果を出力デー
タF5として出力する。また、演算器93hのシフタ8
4h4及び減算器84h5は、ステージIIのシリアル回路
100の出力x3に対して×32の演算を実行して出力
F1のゲイン32を与え、その演算結果を出力データF1
として出力する。この場合、上記ステージIIIの演算回
路93の各演算器93a〜93hでは図10の入力デー
タに対してシリアル演算を実行し、同図IIIに示すタイ
ミングで、その演算結果を出力データF0〜F7として発
生するようになようになる。
On the odd side, a computing unit 93e
The shifter 84e4 and the subtractor 84e5 perform a × 32 operation on the output x0 of the serial circuit 100 of the stage II to give a gain 32 of the output F7, and output the calculation result as output data F7. Further, the shifter 84f4 and the subtractor 84f5 of the arithmetic unit 93f execute a × 32 operation on the output x1 of the serial circuit 100 of the stage II to give a gain 32 of the output F3, and the calculation result is output data F3. Output. Similarly, the shifter 84g4 and the subtractor 84g5 of the operation unit 93g execute the operation of x32 on the output x2 of the serial circuit 100 of the stage II to give the gain 32 of the output F5, and output the operation result to the output data F5 Output as The shifter 8 of the arithmetic unit 93h
The 4h4 and the subtractor 84h5 execute a × 32 operation on the output x3 of the stage II serial circuit 100 to give a gain 32 of the output F1, and output the operation result to the output data F1
Output as In this case, each of the arithmetic units 93a to 93h of the arithmetic circuit 93 of the stage III executes a serial operation on the input data of FIG. 10 and outputs the arithmetic result as output data F0 to F7 at the timing shown in FIG. Will occur.

【0133】以上の説明は、DCT演算処理の場合であ
るが、逆DCT演算処理の場合も上述したと同様であ
る。
The above description is for the DCT operation, but the inverse DCT operation is the same as described above.

【0134】この場合は入力データがステージIIIの演
算回路93〜ステージIの演算回路91の順で与えられ
るようになる。
In this case, the input data is provided in the order of the stage III arithmetic circuit 93 to the stage I arithmetic circuit 91.

【0135】図10は、データ変換演算装置90の入力
から出力までのタイミングチャートであり、ステージI
の演算回路91〜ステージIIIの演算回路93の動作を
総合した場合のタイミングチャートを示している。本実
施例では、DCT演算式を展開することによって各入力
に共通な係数が表れるように係数を分割し、このように
展開したDCT演算式をバタフライ演算にとらわれずに
そのままハードウェア化することによって偶数成分側か
らタイミングおよびゲインを揃えるために設けられたシ
フトレジスタを取り去ることができ、図9に示すデータ
変換演算装置50のタイミングチャートと比較して明ら
かなように7bitのデータを入力した場合、1ライン当
りの処理周期を26クロックから23クロックに減少さ
せることができる。
FIG. 10 is a timing chart from the input to the output of the data conversion operation device 90.
3 shows a timing chart when the operations of the arithmetic circuits 91 to 93 of the stage III are integrated. In the present embodiment, the coefficients are divided so that a common coefficient appears in each input by expanding the DCT arithmetic expression, and the expanded DCT arithmetic expression is directly implemented in hardware without being bound by the butterfly operation. When the shift register provided for adjusting the timing and the gain can be removed from the even-numbered component side, and 7-bit data is input as apparent from the timing chart of the data conversion operation device 50 shown in FIG. The processing cycle per line can be reduced from 26 clocks to 23 clocks.

【0136】以上説明したように、本実施例のデータ圧
縮伸張装置は、画像データをパラレルデータの形で蓄え
るデータ記憶装置10と、データ記憶装置10から読み
込んだパラレルデータをシリアルデータに変換するパラ
レル−シリアル変換装装置11と、DCT演算係数を簡
単な整数比に変えた形のシリアル回路により構成される
とともに、odd側については演算式をそのままハード
ウェア化したシリアル回路100を含んで構成され、パ
ラレル−シリアル変換装装置11から出力されたデータ
に対して一次元のDCT演算をシリアル演算の形で施す
データ変換演算装置90と、シリアルDCT演算された
シリアルデータをパラレルデータに変換してデータ記憶
装置10に書き込むシリアル−パラレル変換装置13
と、データ記憶装置10に蓄えられたデータ変換演算後
のデータに対して、DCT演算係数を整数比に変えるこ
とにより生じたゲイン変化分を吸収させるように構成し
た量子化テーブルの値で除算することによって量子化演
算を行なう量子化装置51と、上記各部の動作をデータ
圧縮伸張装置の全体を制御する制御装置52とを有し、
シリアル回路100は、DCT演算式を展開して得られ
た各入力b0〜b3に共通な係数を2のべきにある数値を
かけた形で表現した場合の該数値の部分を作成するシリ
アル回路101と、このシリアル回路101により計算
された係数出力に対して式の横方向に符号分を含めた加
減算を行なって出力x0〜x3として出力するシリアル回
路102により構成されているので、演算式をそのまま
ハードウェア化することによってバタフライ演算部をな
くすとともにFF等の段数を減らすことができ、クロッ
ク数(時間)を短縮することができる。すなわち、図2
2に示す従来のデータ変換演算装置12の回路構成の場
合、8bitのデータを入力した場合図9に示すようにL
SB入力からMSB出力まで26クロックかかっていた
が、図7に示すデータ変換演算装置90ではステージII
のodd側にシリアル回路100を用いることにより偶
数成分側からタイミングおよびゲインを揃えるために設
けられたシフトレジスタを3段取り去ることができ、図
9に示すデータ変換演算装置50のタイミングチャート
と比較して明らかなように7bitのデータを入力した場
合、1ライン当りの処理周期を26クロックから23ク
ロックに減少させることができる。その結果、少ないク
ロック数によりデータ変換演算を実行できるという利点
があり、画像圧縮等のデータ圧縮に利用することができ
る。
As described above, the data compression / decompression device of this embodiment includes a data storage device 10 for storing image data in the form of parallel data, and a parallel data conversion device for converting parallel data read from the data storage device 10 into serial data. A serial conversion device 11 and a serial circuit in which a DCT operation coefficient is changed to a simple integer ratio, and the odd side is configured to include a serial circuit 100 in which the operation expression is directly converted into hardware; A data conversion operation device 90 that performs one-dimensional DCT operation on the data output from the parallel-serial conversion device 11 in the form of a serial operation, and converts serial DCT operation serial data into parallel data and stores the data Serial-to-parallel converter 13 for writing to device 10
Then, the data after the data conversion operation stored in the data storage device 10 is divided by the value of the quantization table configured to absorb the gain change caused by changing the DCT operation coefficient to an integer ratio. And a control device 52 for controlling the operation of each of the above components by controlling the entire data compression / decompression device.
The serial circuit 100 generates a part of a numerical value when a coefficient common to each input b0 to b3 obtained by expanding a DCT operation expression is multiplied by a power of two. And a serial circuit 102 that performs addition and subtraction including a code portion in the horizontal direction of the equation with respect to the coefficient output calculated by the serial circuit 101 and outputs the result as outputs x0 to x3. By using hardware, the butterfly operation unit can be eliminated, the number of stages such as FFs can be reduced, and the number of clocks (time) can be reduced. That is, FIG.
In the case of the circuit configuration of the conventional data conversion operation device 12 shown in FIG. 2, when 8-bit data is input, as shown in FIG.
Although it took 26 clocks from the SB input to the MSB output, the data conversion operation device 90 shown in FIG.
By using the serial circuit 100 on the odd side, it is possible to remove three stages of shift registers provided for equalizing the timing and the gain from the even-numbered component side, and compare with the timing chart of the data conversion operation device 50 shown in FIG. As is clear from the above, when 7-bit data is input, the processing cycle per line can be reduced from 26 clocks to 23 clocks. As a result, there is an advantage that the data conversion operation can be performed with a small number of clocks, and the data conversion operation can be used for data compression such as image compression.

【0137】また、本実施例のデータ圧縮伸張装置は、
画像データをパラレルデータの形で蓄えるデータ記憶装
置10と、データ記憶装置10から読み込んだパラレル
データをシリアルデータに変換するパラレル−シリアル
変換装装置11と、DCT演算係数を簡単な整数比に変
えた形のシリアル回路により構成され、パラレル−シリ
アル変換装装置11から出力されたデータに対して一次
元のDCT演算をシリアル演算の形で施すデータ変換演
算装置50と、シリアルDCT演算されたシリアルデー
タをパラレルデータに変換してデータ記憶装置10に書
き込むシリアル−パラレル変換装置13と、データ記憶
装置10に蓄えられたデータ変換演算後のデータに対し
て、DCT演算係数を整数比に変えることにより生じた
ゲイン変化分を吸収させるように構成した量子化テーブ
ルの値で除算することによって量子化演算を行なう量子
化装置51と、上記各部の動作をデータ圧縮伸張装置の
全体を制御する制御装置52とを設け、2のべきで表現
できる部分はべきで表現してシリアル回路を構成する一
方で、べきで表現しようとすればビット数が大きくなっ
てしまう部分については敢えてべきにより表現しようと
しないで2のべきにとらわれずにDCT演算式の係数を
整数比に置き換え、そのゲイン変化分を量子化部によっ
て吸収するようにしているので、単にシリアル回路を実
現していた場合に比べ、データ変換演算装置50の回路
規模を大幅に小さくすることができるとともに、シリア
ルの段数を減少させて処理速度を向上させることがで
る。すなわち、図22に示す従来例では、フリップフロ
ップ(FF)が126個、1bitAdd(Sub)unitが 62個
必要となり未だ回路規模が大きかったが、本実施例で
は、演算に必要な回路構成としてフリップフロップ(F
F)70個、1 Add unit52個で済むことになり回路
規模を大幅に小さくすることができる。また、シリアル
回路を構成するフリップフロップ(FF)等の段数が削
減されるので、図5に示すように8bitのデータを入力
した場合、1ライン当りの処理周期を従来例の27クロ
ック(図26)から21クロックに減少させることがで
きる。 また、誤差を含んだ係数による演算は量子化装
置51において一度行われるのみであり演算の大部分が
誤差を含まない整数の比によって行なうことができ、量
子化の前までの演算におけるデータビット幅を従来のも
のより大幅に小さくすることができ、小さなバス幅で高
い演算精度を得ることができる。また、データ変換演算
装置50自体が、極めて小さなFF等の組合せからなる
シリアル回路によってDCT演算を行なうようにしてい
るので、回路規模を大幅に小さくすることができ、かつ
高速に処理を行なうことが可能になる。
The data compression / decompression device of this embodiment is
A data storage device 10 for storing image data in the form of parallel data, a parallel-serial conversion device 11 for converting parallel data read from the data storage device 10 into serial data, and a DCT operation coefficient changed to a simple integer ratio. And a data conversion operation device 50 configured to perform a one-dimensional DCT operation on the data output from the parallel-serial conversion device 11 in the form of a serial operation. This is caused by changing the DCT operation coefficient to an integer ratio between the serial-parallel conversion device 13 that converts the data into parallel data and writes the data into the data storage device 10 and the data after the data conversion operation stored in the data storage device 10. Divide by the value of the quantization table configured to absorb the gain change And a control unit 52 for controlling the operation of each unit described above by controlling the whole of the data compression / decompression device. A part that can be expressed by a power of 2 is expressed by a power and a serial circuit is formed. On the other hand, in the configuration, the portion where the number of bits is increased by exponentiation is dare not expressed by exponentiation, and the coefficient of the DCT arithmetic expression is replaced by an integer ratio without being restricted to exponentiation of 2. Since the variation is absorbed by the quantization unit, the circuit scale of the data conversion operation device 50 can be significantly reduced and the number of serial stages can be reduced as compared with the case where a serial circuit is simply realized. As a result, the processing speed can be improved. In other words, the conventional example shown in FIG. 22 requires 126 flip-flops (FF) and 62 1-bit Add (Sub) units, and the circuit scale is still large. (F
F) Only 70 units and 1 Add unit are required, so that the circuit scale can be significantly reduced. Further, since the number of stages of flip-flops (FFs) constituting the serial circuit is reduced, when 8-bit data is input as shown in FIG. 5, the processing cycle per line is set to 27 clocks of the conventional example (FIG. 26). ) To 21 clocks. Further, the operation using the coefficient including the error is performed only once in the quantization device 51, and most of the operation can be performed based on the ratio of integers including no error, and the data bit width in the operation before the quantization is performed. Can be made much smaller than conventional ones, and a high calculation accuracy can be obtained with a small bus width. Further, since the data conversion operation device 50 itself performs the DCT operation using a serial circuit composed of a combination of extremely small FFs and the like, the circuit scale can be significantly reduced and high-speed processing can be performed. Will be possible.

【0138】このように高い演算精度を持ちかつ回路規
模の小さなデータ圧縮伸張装置が実現できることからD
CTを用いた画像圧縮や音声圧縮を行うデータ圧縮伸張
装置に適用して好適である。
Since a data compression / decompression device having a high calculation accuracy and a small circuit scale can be realized,
It is suitable for application to a data compression / decompression device that performs image compression or audio compression using CT.

【0139】なお、本実施例では、データ変換演算装置
90のステージIIのodd側にシリアル回路100を適
用した例を示したが、これには限定されず、データ変換
演算式を各項毎に展開し、展開した式に従ってシリアル
回路を構成するものであればどのような回路部分に適用
してもよいことは言うまでもない。
In this embodiment, an example is shown in which the serial circuit 100 is applied to the odd side of the stage II of the data conversion operation device 90. However, the present invention is not limited to this. It goes without saying that the present invention may be applied to any circuit portion as long as it is developed and forms a serial circuit according to the developed expression.

【0140】また、本実施例では係数を例えば所定の整
数の比とする例を示したが、これには限定されず、整数
の比で表されるものであればどのような整数比でもよく
整数値であってもことは言うまでもない。
Further, in this embodiment, an example is shown in which the coefficient is, for example, a ratio of a predetermined integer. However, the present invention is not limited to this, and any integer ratio may be used as long as it is expressed by the ratio of integers. It goes without saying that even an integer value is used.

【0141】また、演算係数を2のべき(2のn乗)の
和(差)で表現して図3に示すようなシリアルの回路に
より演算を行っているが、シリアルデータ処理が行われ
るものであればどのようなユニットの組合せでもよいこ
とは勿論である。
Further, the operation coefficient is expressed by the sum (difference) of a power of 2 (2 to the power of n) and the operation is performed by a serial circuit as shown in FIG. 3, but the serial data processing is performed. Of course, any combination of units may be used.

【0142】また、上記画像圧縮装置等を構成する回路
や部材の数、種類などは前述した実施例に限られないこ
とは言うまでもなく、ソフトウェア(例えば、C言語)
により実現するようにしてもよい。
Further, it goes without saying that the number and types of circuits and members constituting the image compression apparatus and the like are not limited to those in the above-described embodiment, and software (for example, C language) may be used.
May be realized.

【0143】また、本実施例では、データ変換演算装置
にDCTを適用しているが、これら符号化方式には限定
されず、符号化演算を行なうものであればどのような装
置や演算式にも適用できることは言うまでもない。例え
ば、ハール(Harr)変換、傾斜変換(スラント変換)、
対称性サイン変換などを用いたデータ圧縮伸張装置に適
用することができる。
Further, in this embodiment, DCT is applied to the data conversion operation device. However, the present invention is not limited to these encoding methods, and any device or operation expression that performs the encoding operation can be used. Needless to say, this can also be applied. For example, Harr transformation, slope transformation (slant transformation),
The present invention can be applied to a data compression / decompression device using symmetric sine transform or the like.

【0144】また、入力データに対してデータ変換を行
なうものであれば、データ変換の種類は何でもよく、D
CTによる周波数成分の変換のほか、例えばFFT,L
OT(Lapped Orthogonal Transform:重合直交変換)
等の直交データ変換に適用可能である。また、データ変
換演算部の係数を量子化部で吸収させるようにしている
が、係数を調整できるものであればどのような量子化部
で調整してもよいことは勿論である。
The type of data conversion is not limited as long as data conversion is performed on input data.
In addition to the conversion of frequency components by CT, for example, FFT, L
OT (Lapped Orthogonal Transform)
And so on. Further, although the coefficients of the data conversion operation unit are absorbed by the quantization unit, it is needless to say that any quantization unit may be used as long as the coefficients can be adjusted.

【0145】[0145]

【発明の効果】請求項1記載の発明によれば、所定のデ
ータを記憶するデータ記憶手段と、前記データ記憶手段
から出力されたデータに対して所定の係数に基づいてシ
リアル演算によりデータ変換演算を実行するデータ変換
演算手段と、前記データ変換演算手段によるデータ変換
後のデータに対して量子化演算を実行する量子化手段
と、前記データ記憶手段、前記データ変換演算手段及び
前記量子化手段を制御をする制御手段とを備えたデータ
圧縮伸張装置であって、前記データ変換演算手段のデー
タ変換演算式を展開し、展開した式に従って前記データ
変換演算手段を構成するようにしているので、シフトレ
ジスタ等のシリアル回路の段数を減少させてクロック数
を減らすことができ、処理速度を向上させることができ
る。
According to the first aspect of the present invention, a data storage means for storing predetermined data, and a data conversion operation based on a predetermined coefficient based on a predetermined coefficient for the data output from the data storage means. , A quantization unit that performs a quantization operation on the data after the data conversion by the data conversion operation unit, the data storage unit, the data conversion operation unit, and the quantization unit. A data compression / expansion device comprising control means for controlling, wherein the data conversion operation expression of the data conversion operation means is expanded, and the data conversion operation means is configured according to the expanded expression. The number of clocks can be reduced by reducing the number of stages of serial circuits such as registers, and the processing speed can be improved.

【0146】また、請求項2、3、4、5、6、7、
8、9、10、11、12、13、14及び15記記載
の発明によれば、所定のデータを記憶するデータ記憶手
段と、前記データ記憶手段から出力されたデータに対し
て所定の係数に基づいてシリアル演算によりデータ変換
演算を実行するデータ変換演算手段と、前記データ変換
演算手段によるデータ変換後のデータに対して量子化演
算を実行する量子化手段と、前記データ記憶手段、前記
データ変換演算手段及び前記量子化手段を制御をする制
御手段とを備えたデータ圧縮伸張装置であって、前記デ
ータ変換演算手段の係数を整数の比に置き換え、該整数
の比に置き換えることにより生じたゲインの変化を、前
記量子化手段により調整するようにするとともに、デー
タ変換演算式を展開し、展開した式に従って前記データ
変換演算手段を構成するようにしているので、単にシリ
アル回路を実現していた場合に比べ、回路規模を大幅に
小さくすることができるとともに、シリアルの段数を減
少させて処理速度を向上させることができ、画像等のデ
ータ圧縮に利用することができる。
Further, claims 2, 3, 4, 5, 6, 7,
According to the inventions described in 8, 9, 10, 11, 12, 13, 14 and 15, the data storage means for storing the predetermined data, and the data output from the data storage means have a predetermined coefficient. A data conversion operation unit for performing a data conversion operation by serial operation based on the data conversion unit; a quantization unit for performing a quantization operation on the data after the data conversion by the data conversion operation unit; the data storage unit; What is claimed is: 1. A data compression / decompression device comprising an arithmetic unit and a control unit for controlling said quantization unit, wherein a gain generated by replacing a coefficient of said data conversion arithmetic unit with an integer ratio and replacing said coefficient with said integer ratio. Is adjusted by the quantization means, a data conversion operation expression is developed, and the data conversion operation means is constructed in accordance with the developed expression. So that the circuit scale can be significantly reduced as compared to the case where a serial circuit is simply realized, and the processing speed can be improved by reducing the number of serial stages, and the Can be used for data compression.

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

【図1】データ圧縮伸張装置の原理説明図である。FIG. 1 is a diagram illustrating the principle of a data compression / decompression device.

【図2】データ圧縮伸張装置のブロック構成図である。FIG. 2 is a block diagram of a data compression / decompression device.

【図3】データ圧縮伸張装置のデータ変換演算装置のブ
ロック構成図である。
FIG. 3 is a block diagram of a data conversion operation device of the data compression / decompression device.

【図4】データ圧縮伸張装置のデータ変換演算装置の回
路構成図である。
FIG. 4 is a circuit configuration diagram of a data conversion operation device of the data compression / decompression device.

【図5】データ圧縮伸張装置のデータ変換演算装置の動
作を説明するためのタイミングチャートである。
FIG. 5 is a timing chart for explaining the operation of the data conversion operation device of the data compression / decompression device.

【図6】データ圧縮伸張装置のデータ変換演算装置の回
路構成図である。
FIG. 6 is a circuit configuration diagram of a data conversion operation device of the data compression / decompression device.

【図7】データ圧縮伸張装置のデータ変換演算装置の回
路構成図である。
FIG. 7 is a circuit configuration diagram of a data conversion operation device of the data compression / decompression device.

【図8】データ圧縮伸張装置のデータ変換演算装置のシ
リアル回路の回路構成図である。
FIG. 8 is a circuit configuration diagram of a serial circuit of a data conversion operation device of the data compression / decompression device.

【図9】データ圧縮伸張装置のデータ変換演算装置の動
作を説明するためのタイミングチャートである。
FIG. 9 is a timing chart for explaining the operation of the data conversion operation device of the data compression / decompression device.

【図10】データ圧縮伸張装置のデータ変換演算装置の
動作を説明するためのタイミングチャートである。
FIG. 10 is a timing chart for explaining the operation of the data conversion operation device of the data compression / decompression device.

【図11】従来のデータ圧縮伸張装置のブロック構成図
である。
FIG. 11 is a block diagram of a conventional data compression / decompression device.

【図12】従来のデータ圧縮伸張装置の画像データの処
理を説明するための図である。
FIG. 12 is a diagram for explaining processing of image data by a conventional data compression / decompression device.

【図13】従来のデータ圧縮伸張装置の量子化テーブル
の例を示す図である。
FIG. 13 is a diagram showing an example of a quantization table of a conventional data compression / decompression device.

【図14】従来のデータ圧縮伸張装置のデータ変換演算
装置におけるシリアル演算を説明するための図である。
FIG. 14 is a diagram for explaining a serial operation in a data conversion operation device of a conventional data compression / decompression device.

【図15】従来のデータ圧縮伸張装置のデータ変換演算
装置におけるシリアル演算を説明するための図である。
FIG. 15 is a diagram for explaining a serial operation in a data conversion operation device of a conventional data compression / expansion device.

【図16】従来のデータ圧縮伸張装置のデータ変換演算
装置におけるシリアル演算を説明するための図である。
FIG. 16 is a diagram for explaining a serial operation in a data conversion operation device of a conventional data compression / expansion device.

【図17】従来のデータ圧縮伸張装置のデータ変換演算
装置のブロック構成図である。
FIG. 17 is a block diagram of a data conversion operation device of a conventional data compression / decompression device.

【図18】従来のデータ圧縮伸張装置のデータ変換演算
装置のIステージの回路構成図である。
FIG. 18 is a circuit configuration diagram of an I stage of a data conversion operation device of a conventional data compression / decompression device.

【図19】従来のデータ圧縮伸張装置のデータ変換演算
装置のIIステージの回路構成図である。
FIG. 19 is a circuit configuration diagram of an II stage of a data conversion operation device of a conventional data compression / decompression device.

【図20】従来のデータ圧縮伸張装置のデータ変換演算
装置のIIIステージの回路構成図である。
FIG. 20 is a circuit configuration diagram of a stage III of a data conversion operation device of a conventional data compression / decompression device.

【図21】従来のデータ圧縮伸張装置のデータ変換演算
装置のIVステージの回路構成図である。
FIG. 21 is a circuit configuration diagram of an IV stage of a data conversion operation device of a conventional data compression / decompression device.

【図22】従来のデータ圧縮伸張装置のデータ変換演算
装置の回路構成図である。
FIG. 22 is a circuit configuration diagram of a data conversion operation device of a conventional data compression / decompression device.

【図23】従来のデータ圧縮伸張装置のシリアル演算素
子を説明する図である。
FIG. 23 is a diagram illustrating a serial operation element of a conventional data compression / decompression device.

【図24】従来のデータ圧縮伸張装置のシリアル演算素
子を説明する図である。
FIG. 24 is a diagram illustrating a serial operation element of a conventional data compression / decompression device.

【図25】従来のデータ圧縮伸張装置のシリアル演算素
子を説明する図である。
FIG. 25 is a diagram illustrating a serial operation element of a conventional data compression / decompression device.

【図26】従来のデータ圧縮伸張装置のデータ変換演算
装置の動作を説明するためのタイミングチャートであ
る。
FIG. 26 is a timing chart for explaining an operation of a data conversion operation device of a conventional data compression / decompression device.

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

10 データ記憶装置 11 パラレル−シリアル変換装装置 13 シリアル−パラレル変換装置 51 量子化装置 50,90 データ変換演算装置 52 制御装置 91 ステージIの演算回路 92 ステージIIの演算回路 93 ステージIIIの演算回路 100 シリアル回路 101 シリアル回路(第1のシリアル演算部) 102 シリアル回路(第2のシリアル演算部) REFERENCE SIGNS LIST 10 data storage device 11 parallel-serial conversion device 13 serial-parallel conversion device 51 quantizer 50, 90 data conversion operation device 52 control device 91 operation circuit of stage I 92 operation circuit of stage II 93 operation circuit of stage III 100 Serial circuit 101 Serial circuit (first serial operation unit) 102 Serial circuit (second serial operation unit)

【数3】 (Equation 3)

【数4】 (Equation 4)

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−222121(JP,A) 特開 平4−222122(JP,A) 特開 平1−276980(JP,A) 特開 平2−105792(JP,A) 「ディジタル信号処理の応用」、昭和 56年5月、(社)電子通信学会発行、井 上他編著、p61〜64 (58)調査した分野(Int.Cl.7,DB名) H03M 7/30 H03M 9/00 ────────────────────────────────────────────────── ─── Continuation of the front page (56) References JP-A-4-222121 (JP, A) JP-A-4-222122 (JP, A) JP-A-1-276980 (JP, A) JP-A-2-222 105792 (JP, A) "Application of Digital Signal Processing", May 1981, published by The Institute of Electronics and Communication Engineers, edited by Inoue et al., Pp. 61-64 (58) Fields studied (Int. Cl. 7 , DB Name) H03M 7/30 H03M 9/00

Claims (15)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 所定のデータを記憶するデータ記憶手段
と、 前記データ記憶手段から出力されたデータに対して所定
の係数に基づいてシリアル演算によりデータ変換演算を
実行するデータ変換演算手段と、 前記データ変換演算手段によるデータ変換後のデータに
対して量子化演算を実行する量子化手段と、 前記データ記憶手段、前記データ変換演算手段及び前記
量子化手段を制御をする制御手段とを備えたデータ圧縮
伸張装置であって、 前記データ変換演算手段のデータ変換演算式を展開し、
展開した式に従って前記データ変換演算手段を構成する
ようにしたことを特徴とするデータ圧縮伸張装置。
A data storage unit for storing predetermined data; a data conversion operation unit for performing a data conversion operation on the data output from the data storage unit by a serial operation based on a predetermined coefficient; Data comprising: a quantizing means for performing a quantization operation on data after data conversion by the data conversion operation means; and a control means for controlling the data storage means, the data conversion operation means, and the quantization means. A compression / decompression device, which expands a data conversion operation expression of the data conversion operation means,
A data compression / decompression device wherein the data conversion operation means is configured in accordance with an expanded expression.
【請求項2】 所定のデータを記憶するデータ記憶手段
と、 前記データ記憶手段から出力されたデータに対して所定
の係数に基づいてシリアル演算によりデータ変換演算を
実行するデータ変換演算手段と、 前記データ変換演算手段によるデータ変換後のデータに
対して量子化演算を実行する量子化手段と、 前記データ記憶手段、前記データ変換演算手段及び前記
量子化手段を制御をする制御手段とを備えたデータ圧縮
伸張装置であって、 前記データ変換演算手段の係数を整数の比に置き換え、
該整数の比に置き換えることにより生じたゲインの変化
を、前記量子化手段により調整するようにするととも
に、データ変換演算式を展開し、展開した式に従って前
記データ変換演算手段を構成するようにしたことを特徴
とするデータ圧縮伸張装置。
2. A data storage means for storing predetermined data, a data conversion operation means for performing a data conversion operation by serial operation based on a predetermined coefficient on data output from the data storage means, Data comprising: a quantizing means for performing a quantization operation on data after data conversion by the data conversion operation means; and a control means for controlling the data storage means, the data conversion operation means, and the quantization means. A compression / decompression device, wherein a coefficient of the data conversion operation means is replaced with an integer ratio,
The change in gain caused by replacing the ratio of the integers is adjusted by the quantization means, a data conversion operation expression is developed, and the data conversion operation means is configured according to the expanded expression. A data compression / decompression device characterized by the above-mentioned.
【請求項3】 所定のデータを記憶するデータ記憶手段
と、 前記データ記憶手段のデータをパラレルデータからシリ
アルデータに変換するパラレル−シリアル変換手段と、 前記パラレル−シリアル変換手段から出力されたデータ
に対して所定の係数に基づいてシリアル演算によりデー
タ変換演算を実行するデータ変換演算手段と、 前記データ変換手段から出力されるシリアルデータをパ
ラレルデータに変換し、前記データ記憶手段に書き込む
シリアル−パラレル変換手段と、 前記データ変換演算手段によるデータ変換後のデータに
対して量子化演算を実行する量子化手段と、 前記データ記憶手段、前記パラレル−シリアル変換手
段、前記データ変換演算手段、前記シリアル−パラレル
変換手段及び前記量子化手段を制御をする制御手段とを
備えたデータ圧縮伸張装置であって、 前記データ変換演算手段の係数を整数の比に置き換え、
該整数の比に置き換えることにより生じたゲインの変化
を、前記量子化手段により調整するようにするととも
に、データ変換演算式を展開し、展開した式に従って前
記データ変換演算手段を構成するようにしたことを特徴
とするデータ圧縮伸張装置。
3. A data storage means for storing predetermined data; a parallel-serial conversion means for converting data in the data storage means from parallel data to serial data; and a data output from the parallel-serial conversion means. A data conversion operation unit for performing a data conversion operation by a serial operation based on a predetermined coefficient, and a serial-parallel conversion for converting serial data output from the data conversion unit into parallel data and writing the data into the data storage unit Means, a quantization means for performing a quantization operation on the data after the data conversion by the data conversion operation means, the data storage means, the parallel-serial conversion means, the data conversion operation means, the serial-parallel. Conversion means and control means for controlling the quantization means. Example was a data compressing and expanding apparatus, replacing the coefficient of the data conversion operation means the ratio of integers,
The change in gain caused by replacing the ratio of the integers is adjusted by the quantization means, a data conversion operation expression is developed, and the data conversion operation means is configured according to the expanded expression. A data compression / decompression device characterized by the above-mentioned.
【請求項4】 所定のデータを記憶するデータ記憶手段
と、 前記データ記憶手段から出力されたデータに対して所定
の係数に基づいてシリアル演算によりデータ変換演算を
実行するデータ変換演算手段と、 前記データ変換演算手段によるデータ変換後のデータに
対して量子化演算を実行する量子化手段と、 前記データ記憶手段、前記データ変換演算手段及び前記
量子化手段を制御をする制御手段とを備えたデータ圧縮
伸張装置であって、 前記データ変換演算手段のデータ変換演算式の係数の値
を2のべきで表現するとともに、該係数の値を2のべき
で表現するとき所定以上ビット数が大きくなる部分につ
いては該係数を整数の比に置き換え、該整数の比に置き
換えることにより生じたゲインの変化を、前記量子化手
段により調整するようにするとともに、データ変換演算
式を展開し、展開した式に従って前記データ変換演算手
段を構成するようにしたことを特徴とするデータ圧縮伸
張装置。
4. A data storage means for storing predetermined data, a data conversion operation means for performing a data conversion operation by serial operation on data outputted from the data storage means based on a predetermined coefficient, Data comprising: a quantizing means for performing a quantization operation on data after data conversion by the data conversion operation means; and a control means for controlling the data storage means, the data conversion operation means, and the quantization means. A compression / expansion device, wherein a value of a coefficient of a data conversion operation expression of the data conversion operation means is expressed by a power of 2, and a bit number greater than a predetermined value when the value of the coefficient is expressed by a power of 2 The coefficient is replaced by an integer ratio, and a change in gain caused by replacing the integer ratio is adjusted by the quantization means. Rutotomoni, expand the data conversion arithmetic expression, the data compressing and expanding apparatus being characterized in that so as to constitute the data converting operation means according to the expanded expressions.
【請求項5】 前記データ変換演算手段は、各入力に所
定の係数が表れるようにデータ変換演算式を展開し、該
展開したデータ変換演算式の係数部分をシリアル演算す
る第1のシリアル演算部と、該第1のシリアル演算部の
出力を加減算して該展開したデータ変換演算式の演算を
実行する第2のシリアル演算部とにより構成するように
したことを請求項1、請求項2、請求項3又は請求項4
の何れかに記載のデータ圧縮伸張装置。
5. A first serial operation section for expanding a data conversion operation expression so that a predetermined coefficient appears at each input and serially operating a coefficient portion of the expanded data conversion operation expression. And a second serial operation unit for adding and subtracting the output of the first serial operation unit and executing the operation of the expanded data conversion operation expression. Claim 3 or Claim 4
The data compression / decompression device according to any one of the above.
【請求項6】 前記第1のシリアル演算部は、前記展開
したデータ変換演算式の係数を2のべきに数値をかけた
形で表現するとともに、該係数を2のべきに数値をかけ
た形で表現した場合の数値部分をシリアル演算するシリ
アル回路により構成するようにしたことを特徴とする請
求項5に記載のデータ圧縮伸張装置。
6. The first serial operation unit expresses a coefficient of the expanded data conversion operation expression by a power of 2 and multiplies the coefficient by a power of 2. 6. The data compression / decompression apparatus according to claim 5, wherein a numerical part represented by the following equation is constituted by a serial circuit that performs a serial operation.
【請求項7】 前記第2のシリアル演算部は、前記第1
のシリアル演算部から出力された数値を加減算して出力
する複数の加減算器により構成され、前記展開したデー
タ変換演算式の係数を2のべきに数値をかけた形で表現
した場合の2のべき部分を各加減算器への入力位置によ
り調整するようにしたことを特徴とする請求項5に記載
のデータ圧縮伸張装置。
7. The first serial operation unit includes:
And a plurality of adder / subtracters for adding and subtracting the numerical value output from the serial operation unit and outputting the result, wherein the coefficient of the expanded data conversion operation expression is expressed by a power of 2 multiplied by 2 6. The data compression / decompression device according to claim 5, wherein the portion is adjusted by an input position to each of the adders / subtracters.
【請求項8】 前記データ変換演算手段は、データに対
してシリアル演算により直交変換を実行する直交変換手
段であることを特徴とする請求項1、請求項2、請求項
3又は請求項4の何れかに記載のデータ圧縮伸張装置。
8. The data processing apparatus according to claim 1, wherein said data conversion operation means is an orthogonal transformation means for executing orthogonal transformation by serial operation on data. The data compression / decompression device according to any one of the above.
【請求項9】 前記データ変換演算手段は、データに対
してシリアル演算により離散コサイン変換(DCT)を
実行する離散コサイン変換手段であることを特徴とする
請求項1、請求項2、請求項3又は請求項4の何れかに
記載のデータ圧縮伸張装置。
9. The data conversion operation unit according to claim 1, wherein the data conversion operation unit is a discrete cosine transform unit that performs a discrete cosine transform (DCT) on the data by a serial operation. A data compression / decompression device according to claim 4.
【請求項10】 前記データ変換演算手段は、入力され
たデータを所定のクロックに応答して順次移動させるシ
リアル演算器を含んで構成されることを特徴とする請求
項1、請求項2、請求項3又は請求項4の何れかに記載
のデータ圧縮伸張装置。
10. The data conversion operation means according to claim 1, further comprising a serial operation device for sequentially moving input data in response to a predetermined clock. The data compression / decompression device according to claim 3 or 4.
【請求項11】 前記データ変換演算手段は、データ変
換演算式の係数の値を2のべきで表現したシリアル回路
により構成し、該シリアル回路によるシリアル演算によ
りデータ変換演算を実行するようにしたことを特徴とす
る請求項1、請求項2、請求項3又は請求項4の何れか
に記載のデータ圧縮伸張装置。
11. The data conversion operation means is constituted by a serial circuit in which the value of a coefficient of the data conversion operation expression is expressed by a power of 2, and the data conversion operation is executed by serial operation by the serial circuit. The data compression / decompression device according to any one of claims 1, 2, 3, and 4, wherein
【請求項12】 前記データ変換演算手段は、データ変
換演算式の係数の値を2のべきで表現するとともに、該
係数の値を2のべきで表現するとき所定以上ビット数が
大きくなる部分については該係数を整数の比に置き換え
たシリアル回路により構成し、該シリアル回路によるシ
リアル演算によりデータ変換演算を実行するようにした
ことを特徴とする請求項2、請求項3又は請求項4の何
れかに記載のデータ圧縮伸張装置。
12. The data conversion operation means expresses a value of a coefficient of the data conversion operation expression by a power of 2 and a part in which the number of bits is larger than a predetermined value when the value of the coefficient is expressed by a power of 2. 5. The data processing method according to claim 2, wherein the serial circuit comprises a serial circuit in which the coefficient is replaced by an integer ratio, and performs a data conversion operation by a serial operation performed by the serial circuit. A data compression / decompression device according to any of the claims.
【請求項13】 前記データ変換演算手段で用いられる
データ変換演算式は、該データ変換演算式の係数を、前
記量子化手段の量子化演算に用いる量子化係数に含ませ
るように作成したことを特徴とする請求項2、請求項3
又は請求項4の何れかに記載のデータ圧縮伸張装置。
13. A data conversion operation expression used by said data conversion operation means is prepared so that coefficients of said data conversion operation expression are included in quantization coefficients used for quantization operation of said quantization means. Claims 2 and 3
A data compression / decompression device according to claim 4.
【請求項14】 前記量子化手段によるゲインの調整
は、前記データ変換演算手段の係数を整数の比に変える
ことにより生じたゲイン変化分を吸収させるように構成
された量子化テーブルにより行なわれることを特徴とす
る請求項2、請求項3又は請求項4の何れかに記載のデ
ータ圧縮伸張装置。
14. The gain adjustment by the quantization means is performed by a quantization table configured to absorb a gain change caused by changing a coefficient of the data conversion operation means to an integer ratio. The data compression / decompression device according to claim 2, wherein
【請求項15】 前記データ変換演算手段の係数の整数
の比への置き換えは、該係数を整数値に置き換えること
により行なうようにしたことを特徴とする請求項2、請
求項3、請求項4、請求項12又は請求項14の何れか
に記載のデータ圧縮伸張装置。
15. The data conversion operation means according to claim 2, wherein said coefficient is replaced with an integer ratio by replacing said coefficient with an integer value. 15. The data compression / decompression device according to claim 12 or claim 14.
JP36089092A 1992-12-30 1992-12-30 Data compression / decompression device Expired - Fee Related JP3099564B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP36089092A JP3099564B2 (en) 1992-12-30 1992-12-30 Data compression / decompression device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP36089092A JP3099564B2 (en) 1992-12-30 1992-12-30 Data compression / decompression device

Publications (2)

Publication Number Publication Date
JPH06204888A JPH06204888A (en) 1994-07-22
JP3099564B2 true JP3099564B2 (en) 2000-10-16

Family

ID=18471347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP36089092A Expired - Fee Related JP3099564B2 (en) 1992-12-30 1992-12-30 Data compression / decompression device

Country Status (1)

Country Link
JP (1) JP3099564B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4806464B2 (en) * 2007-03-29 2011-11-02 富士通株式会社 Image compression apparatus, image compression method, image restoration apparatus, and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
「ディジタル信号処理の応用」、昭和56年5月、(社)電子通信学会発行、井上他編著、p61〜64

Also Published As

Publication number Publication date
JPH06204888A (en) 1994-07-22

Similar Documents

Publication Publication Date Title
JP4560033B2 (en) Method for decoding video or image data
JPH07146853A (en) Inverse discreteness cosine transformation processor
JPH08235159A (en) Inverse cosine transformation device
JPH06181438A (en) Digital delta-sigma modulator
US7236997B2 (en) Filter processing apparatus and method
JP3099564B2 (en) Data compression / decompression device
US5555321A (en) Image data binary coding method and apparatus
JPH0844708A (en) Two-dimensional discrete cosine transform arithmetic circuit
US5847980A (en) Product-summing arithmetic circuit
EP1538842A2 (en) SAD calculator
JPH06204885A (en) Data compression/expansion device
JPH08307868A (en) Moving image decoder
JPH0654307A (en) Data compressing device
JP3225614B2 (en) Data compression device
JP4738408B2 (en) Matrix operation unit
JPH06204887A (en) Data compression/expansion device
JP3136785B2 (en) Data compression device
JPH06204886A (en) Data compression/expansion device
KR100433709B1 (en) Discrete cosine transform method of distributed arithmetic
JPH06205391A (en) Data compander
JPH06205392A (en) Data compander
JP3087312B2 (en) Data compression device
JPH0583141A (en) Coding data processor
JP2001086366A (en) Digital filter and processing method thereof
JP3385866B2 (en) Inverse quantization and inverse DCT circuit

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080818

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090818

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100818

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees