JPH06204885A - Data compression/expansion device - Google Patents

Data compression/expansion device

Info

Publication number
JPH06204885A
JPH06204885A JP4360889A JP36088992A JPH06204885A JP H06204885 A JPH06204885 A JP H06204885A JP 4360889 A JP4360889 A JP 4360889A JP 36088992 A JP36088992 A JP 36088992A JP H06204885 A JPH06204885 A JP H06204885A
Authority
JP
Japan
Prior art keywords
data
output
adder
serial
shifter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4360889A
Other languages
Japanese (ja)
Inventor
Toru Watanabe
亨 渡邉
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 JP4360889A priority Critical patent/JPH06204885A/en
Publication of JPH06204885A publication Critical patent/JPH06204885A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PURPOSE:To provide a data compression/expansion device capable of compressing data at a high speed with a small circuit scale. CONSTITUTION:This data compression expansion device is constituted of serial circuits in a form for which a DCT arithmetic coefficient is changed to a simple integral ratio and is provided with a data conversion arithmetic unit 50 for performing a linear DCT operation to the data outputted from a parallel/serial converter 11 in the form of a serial operation, a quantizer 51 for performing a quantization operation to the data after a data conversion operation stored in a data storage device 10 so as to absorb gain fluctuation generated by changing the DCT arithmetic coefficient to the integral ratio and a controller 52 for controlling the operations of respective above-mentioned parts and the entire data compression device. Then, parts expressable by the power of two is expressed by the power and the serial circuit is constituted. On the other hand, the part whose bit number becomes large when it is tried to be expressed by the power is not tried to be expressed by the power, the coefficient of a DCT arithmetic formula is replaced by the integral ratio without being swayed by the power of two and the gain fluctuation is absorbed by a quantization part.

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 device used for image data compression processing, and more particularly to a data compression / expansion device capable of performing data compression with a small circuit scale.

【0002】関する。[0002] Related.

【従来の技術】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 In the high-efficiency image coding technique based on ISDN and CD-ROM, DCT (Discrete Cos.
ine Transform: Discrete Cosine Transform) is becoming the mainstream of high-efficiency coding technology. Not limited to this DCT, if the high-efficiency encoding is performed to reduce the average number of bits per pixel, the image quality deteriorates, and if the compression rate is increased, the image quality deteriorates. For example, the current standard television signal is 1.5 Mbit /
The problem in the case of compressing in seconds is the deterioration of the contour portion and the block distortion occurring in the block unit (eg 8 × 8 pixels) processed by DCT. When the inverse conversion is performed to reproduce the pixels, the DCT outputs in the block are all linearly summed. However, if there is information loss even in one of the 64 DCT outputs of the block including 8 × 8 pixels, The reproduced pixels in the entire block are deteriorated.

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

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

【0005】[0005]

【数1】 また、逆DCT変換は、数2で定義される。[Equation 1] Also, the inverse DCT transform is defined by Equation 2.

【0006】[0006]

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

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

【0008】図6は従来のデータ圧縮伸張装置のブロッ
ク図である。10はデータ記憶装置であり、データ記憶
装置10には圧縮を施そうとする2次元データがパラレ
ルデータの形で蓄えられている。データ記憶装置10に
蓄えられているデータ(例えば、画像データ)はパラレ
ル−シリアル変換装置11に入力され、パラレル−シリ
アル変換装置11はデータ記憶装置10から読み込んだ
パラレルデータをシリアルデータに変換してデータ変換
演算装置12に出力する。データ変換演算装置12はパ
ラレル−シリアル変換装置11から出力されたデータに
対して一次元のDCT演算をシリアル演算の形で施す。
シリアルDCT演算されたデータはシリアル−パラレル
変換装置13に出力され、シリアル−パラレル変換装置
13はデータ変換演算装置12から出力されたシリアル
データをパラレルデータに変換してデータ記憶装置10
に書き込む。上記の例は一次元の場合であり、画像等の
二次元の場合には図7に示すように上述した処理を縦横
(順不同)二次元に施す。また、量子化装置14は、デ
ータ記憶装置10に蓄えられたデータ変換演算後のデー
タに対して、例えば図8に示すような量子化テーブルの
値で除算をする(あるいは、逆数の乗算)ことによって
量子化演算を行なう。上記各部の動作はデータ圧縮伸張
装置の全体を制御する制御装置15によって制御され
る。
FIG. 6 is a block diagram of a conventional data compression / expansion apparatus. A data storage device 10 stores two-dimensional data to be compressed in the form of parallel data in the data storage device 10. The data (for example, image data) stored in the data storage device 10 is input to the parallel-serial conversion device 11, and the parallel-serial conversion device 11 converts the parallel data read from the data storage device 10 into serial data. It outputs to the data conversion arithmetic unit 12. The data conversion calculation device 12 performs one-dimensional DCT calculation on the data output from the parallel-serial conversion device 11 in the form of serial calculation.
The data subjected to the serial DCT operation is output to the serial-parallel conversion device 13, and the serial-parallel conversion device 13 converts the serial data output from the data conversion operation device 12 into parallel data to convert the data to the data storage device 10.
Write in. The above example is a one-dimensional case, and in the case of a two-dimensional image or the like, as shown in FIG. Further, the quantizing device 14 divides the data after the data conversion calculation stored in the data storage device 10 by the value of the quantization table as shown in FIG. 8 (or the reciprocal multiplication). Quantization operation is performed by. The operation of each of the above parts is controlled by the control device 15 which 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のべきで表現する理由はシリアルの回路による演算を
実現するためである。すなわち、図9において、符号2
1は、クロック入力信号に応答し、入力信号を1クロッ
ク遅れた出力とするFF(フリップフロップ)からなる
1タイムディレイユニットを表すものとすると、1タイ
ムディレイユニット21を通って出てくる出力と1タイ
ムディレイユニット21を通らずに直接出てくる出力と
を比較すると前者が後者より1クロック分遅い。ここ
で、1タイムディレイユニット21はシフトレジスタが
並んだようなものであり、例えばLSB側から順にデー
タが入力されているものとすると、1クロック遅く出て
くるということは2倍されたことを意味する。同様に、
8倍しようとする場合には上記1タイムディレイユニッ
ト21を図10に示すように3つ並べて3クロック遅ら
せるようにすれば23で8倍となる。本実施例では上記
ユニットを組み合わせて加減算を行なうことでシリアル
演算回路を実現する。
First, as a basic idea, the value of the COS coefficient is a power of 2 (ie, 2 to the n-th power) as shown in Equation 3.
Be expressed as the sum or difference of. The reason why the numerical value is expressed as a power of 2 as shown in Expression 3 is to realize the operation by the serial circuit. That is, in FIG. 9, reference numeral 2
1 represents a 1-time delay unit composed of an FF (flip-flop) that outputs an input signal delayed by 1 clock in response to a clock input signal, and an output that comes out through the 1-time delay unit 21. Comparing the output that directly comes out without passing through the 1 time delay unit 21, the former is one clock later than the latter. Here, the 1-time delay unit 21 is like a series of shift registers. For example, assuming that data is sequentially input from the LSB side, the fact that the data comes out one clock later means that it is doubled. means. Similarly,
When it is desired to multiply by 8 times, if three 1 time delay units 21 are lined up and delayed by 3 clocks as shown in FIG. 10, 2 3 is multiplied by 8. In this embodiment, a serial operation circuit is realized by combining the above units and performing addition and subtraction.

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

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

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

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

【0015】図12において、31はステージIの演算
回路、32はステージIIの演算回路、33はステージII
Iの演算回路、34はステージIVの演算回路であり、こ
れらのステージI〜IVの演算回路31〜34はそれぞれ
スイッチ35〜39を介して直列に接続するように構成
されている。この場合、DCT演算処理では、図12に
示すように演算回路31〜34の順で直列接続され、ま
た逆DCT演算の処理では、スイッチ35〜39の切換
え動作により演算回路34〜31の順で直接接続される
ようになっている。そして、入力端子40に与えられる
入力データに対するDCTまたは逆DCT演算結果は出
力端子41から出力されるようになる。この場合、入力
データは、シリアル8系統よりなっている。
In FIG. 12, 31 is a stage I arithmetic circuit, 32 is a stage II arithmetic circuit, and 33 is a stage II.
An I arithmetic circuit, 34 is a stage IV arithmetic circuit, and these arithmetic circuits 31 to 34 of 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 designed to be directly connected. Then, the DCT or inverse DCT calculation result for the input data given to the input terminal 40 is outputted from the output terminal 41. In this case, the input data consists of 8 serial systems.

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

【0017】図14は、ステージ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. 14 is a diagram showing the circuit configuration of the arithmetic circuit 32 of stage II. The arithmetic circuit 32 executes the above-described serial arithmetic operation, and includes shifters 2a to 2f and CO
It is composed of COS (4/16) π calculators 2g and 2h that perform S (4/16) π calculation (see the equation 1). Here, the shifter 2
Each of a to 2f is composed of 10 flip-flops connected in series, and is designed to delay input data by a predetermined time and output it. Also, the above COS (4/16)
The π calculator 2g is an approximate expression 1 in the case of N = 4 of COS (N / 16) π
81 = (16-1) × (2 + 1) × 4 + 1 is realized,
Adder 2g1, shifter 2g2 consisting of four flip-flops that shift the output of this adder 2g1, subtractor 2g3 that subtracts the output of adder 2g1 from the output of this shifter 2g2, shifts the output of this subtractor 2g3 Shifter 2g4 consisting of one flip-flop, this shifter 2g4
2g for adding the output of the above and the output of the above subtractor 2g3
5, it is composed of an adder 2g6 for adding the output of the adder 2g5 and the output of the adder 2g1. Also, above C
The OS (4/16) π calculator 2h also realizes the approximate formula 181 = (16-1) × (2 + 1) × 4 + 1 when COS (N / 16) π is N = 4. And a subtracter 2h1, 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, an output of the subtractor 2h3 Shifter 2h4 consisting of one flip-flop that shifts
Adder 2h that adds the output of h4 and the output of subtractor 2h3
5, it is composed of an adder 2h6 for adding the output of the adder 2h5 and the output of the subtractor 2h1.

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

【0019】図16は、ステージ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. 16 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 operation, and C for executing each COS coefficient operation.
OS (4/16) π calculators 4a, 4b, COS (2/16) π and COS (6
/ 16) π calculators 4c, 4d, COS (1/16) π and COS (7/16)
It is composed of π calculators 4e and 4f, COS (3/16) π and COS (5/16) π calculators 4g and 4h. In this case, the CO
The S (4/16) π calculators 4a and 4b are the same as the COS (4/16) π calculators 2g and 2h of the arithmetic circuit 32 of the stage II described above, and here, the subscript 2 is replaced by 4. The explanation 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で減算す
るようにしている。
Further, the above COS (2/16) π and COS (6/16) π
The computing unit 4c uses 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 these, the one that realizes COS (2/16) π is the shifter 4c1 consisting of seven flip-flops, and the third output of shifter 4c1 from the output of shifter 4c1. Subtractor 4 for subtracting the output of the flip-flop of
c2, a subtracter 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.
c4, which realizes COS (6/16) π operation, is an adder 4c5 for adding the output of the sixth flip-flop of shifter 4c1 and the output of the fifth flip-flop of shifter 4c1, Output of adder 4c5 and shifter 4c
It is composed of an adder 4c6 for adding the outputs of the 1st and 2nd flip-flops. On the other hand, COS (2/16) π and
The COS (6/16) π calculator 4d is the same as the above-described calculator 4c, and here, the subscript c is replaced with d and the same reference numeral is given, and the description thereof is omitted. Then, the outputs of the adder 4c4 and the adder 4d6 are added by the adder 4c7, and the adder 4c is added.
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番目のフ
リップフロップの出力を加算する加算器4g5からなっ
ている。また、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番目のフリップフロップの出力を加
算する加算器4e5からなっている。また、COS(5/16)π
およびCOS(3/16)π演算器4hは、上述した演算器4g
と同様であり、ここでは添字gをhに代えて同符号を付
することで説明は省略する。そして、シフタ4g4と加
算器4h5の出力を加算器4g6で加算し、また、加算器
4g5の出力からシフタ4h4の出力を減算器4h6で減
算するようにしている。 このように構成された図13
〜図16に示すステージI〜IVの演算回路31〜34
は、DCT演算処理の場合、図17に示すように接続さ
れる。また、図18〜図20は図17中の各ユニットを
示す図であり、図18はFFからなる1タイムディレイ
ユニット21を、図19は加算(a+b)を行なう1タ
イムディレイユニットフルアダー(内部Carry Type)2
2を、図20は減算(a−b)を行なう1タイムディレ
イユニットフルサブトラクタ(内部Borrow type)23
をそれぞれ示している。
On the other hand, the above COS (1/16) π and COS (7/16) π
The calculator 4e is an approximate expression 251 in the case of N = 1 in COS (N / 16) π.
= (128-2) × 2-1 and 50 = 2 × (16 + 8 + 1) when N = 7, of which COS (1/16) π is calculated. 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 arithmetic circuit 33 of the stage III from the output of the subtractor 4e2. Three
It consists of a subtractor 4e3 that subtracts the output of e, and COS (7/16) π
The third and fourth shifters 4e1 that realize the operation.
Adder 4e for adding the outputs of the th flip-flops
4, an adder 4g4 for adding the output of the adder 4e4 and the output of the first flip-flop of the shifter 4e1. Also, COS (1/16) π and COS (7/16) π calculator 4
f is the same as the above-described arithmetic unit 4e, and here, the subscript e is replaced with f and the same reference numeral is given, and the description thereof is omitted.
Then, the outputs of the subtracter 4e3 and the adder 4f5 are added to the adder 4e.
Addition is performed by 6 and the output of the adder 4e6 is generated via the shifter 4e7. Also, the output of the adder 4e5 is subtracted from the subtractor 4f3
Is subtracted by the subtractor 4f6 and generated through the shifter 4f7. Also, the above COS (5/16) π and C
The OS (3/16) π calculator 4g uses the approximate expression 142 = 2 × (64 + 8-1) in the case of N = 5 of COS (N / 16) π and the approximate expression 2 in the case of N = 3.
13 = (2 + 1) × (64 + 8-1) arithmetic operation, of which
The one that realizes the calculation 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
Subtractor 4g for subtracting the output of the subtractor 3g of the arithmetic circuit 3
3. A shifter 4g4 composed of two flip-flops that shifts the output of the subtractor 4g3, which realizes the calculation of COS (3/16) π, is provided in addition to the above-mentioned configuration by the subtractor 4g3 and the shifter 4g4. It is composed of an adder 4e5 for adding the outputs of the first flip-flops. Also, COS (5/16) π
And COS (3/16) π calculator 4h is the calculator 4g described above.
The description is omitted here by substituting the subscript g for the same reference numeral. The outputs of the shifter 4g4 and the adder 4h5 are added by the adder 4g6, and the output of the shifter 4h4 is subtracted by the subtractor 4h6 from the output of the adder 4g5. FIG. 13 configured in this way
-Stage I-IV arithmetic circuits 31-34 shown in FIG.
Are connected as shown in FIG. 17 in the case of DCT calculation processing. 18 to 20 are diagrams showing the respective units in FIG. 17. FIG. 18 shows a 1-time delay unit 21 including an FF, and FIG. 19 shows a 1-time delay unit full adder (internal Carry Type) 2
20 is a time delay unit full subtractor (internal Borrow type) 23 for performing subtraction (ab) in FIG.
Are shown respectively.

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

【0023】まず、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)の減算結果を出力するようになる。この場合の入
力データは、図21に示すように7bitと1bitのサイン
ビットの8bitのデータからなっている。また、出力デ
ータは、図21のIに示すように7+1bitと1bitのサ
インビットからなっている。ここで、出力データが7+
1bitになるのは、加算器1a〜1dでの加算結果を考
慮したからである。
First, the case of the DCT arithmetic processing will be described.
Here, the adder 1 in the arithmetic circuit 31 of the stage I is
Input data f (0) and f (7) in a, input data f (3) and f (4) in adder 1b, and input data f in adder 1c
(1), f (6), input data f (2) to the adder 1d,
f (5), input data f (0), f to the subtractor 1e
(7), input data f (3), f (4) to the subtractor 1f,
Input data f (1), f (6), subtracter 1 to subtractor 1g
Input data f (2) and f (5) are input to h. Thereby, 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). Further, the subtractor 1e outputs the subtraction result of the input data f (0) and f (7), and the subtracter 1e
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 consists of 8-bit data of 7-bit and 1-bit sign bit as shown in FIG. The output data is composed of 7 + 1 bit and 1 bit sign bit as shown by I in FIG. Here, the output data is 7+
The reason why it becomes 1 bit is that the addition results of the adders 1a to 1d are taken into consideration.

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

【0025】一方、上記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が求められることにな
る。この場合、図20の入力に示す入力データに対して
COS(4/16)π演算器2gでは、同図IIに示すタイミング
で上述の演算結果を出力データとして発生するようにな
る。
On the other hand, the COS (4/16) π calculators 2g, 2h
Then, the approximate expression 181 = (16-1) when COS (N / 16) π is N = 4
The operation of × (2 + 1) × 4 + 1 is executed. In this case, calculator 2g
The outputs of the subtractors 1g and 1h are given as input data to the input terminal, and the input data are added by the adder 2g1.
Then, the output of the adder 2g1 is given to the shifter 2g2,
Subtracting the output of the adder 2g1 by the subtractor 2g3 from the output obtained from the shifter 2g2 yields (16-1).
The output of the subtractor 2g3 and the output of the shifter 2g4 are added to the adder 2g5
(16-1) × (2 + 1) is obtained by adding in. Then, by adding the output of the adder 2g5 and the output of the adder 2g1 by the adder 2g6, the approximate value of COS (N / 16) π when N = 4 (16-1) × (2 + 1) × 4 + 1 will be required. In this case, for the input data shown in the input of FIG.
The COS (4/16) π calculator 2g generates the above-mentioned calculation result as output data at the timing shown in FIG.

【0026】次いで、ステージ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の出力を減算した
結果を出力するようになる。この場合、図21の入力デ
ータに対して各加算器3a、3b、3e、3fおよび減
算器3c、3d、3g、3hでは、同図IVに示すタイミ
ングで、それぞれの演算結果を出力するようになる。
Next, the operation circuit 33 of the stage III is proceeded to. In this arithmetic circuit 33, the arithmetic circuit 32 of stage II
Outputs of the shifters 2a and 2c of the adder 3a and the subtractor 3
c, and the outputs of the shifters 2b and 2d are similarly given to the adder 3b and the subtractor 3d.
e and the output of the COS (4/16) π calculator 2g are given to the adder 3e and the subtractor 3g, and the outputs of the shifter 2f and COS (4/16) π calculator 2h are given to the adder 3f and the subtractor 3h. . As a result, the adder 3a outputs the result of adding the outputs of the shifters 2a and 2c of the arithmetic circuit 32 of the stage II, and the adder 3b outputs the result of adding the outputs of the shifters 2b and 2d of the arithmetic circuit 32 of the stage II. And the subtractor 3c outputs the stage II
Output the result of subtracting the output of the shifter 2c from the output of the shifter 2a of the arithmetic circuit 32, and the subtractor 3d outputs the result of subtracting the output of the shifter 2d from the output of the shifter 2b of the arithmetic circuit 32 of stage II. become. Also, adder 3
e is a shifter 2e of the arithmetic circuit 2 of the stage II and an arithmetic unit 2g
Output the result of adding the outputs of the
The output of the shifter 2f of the arithmetic circuit 2 of II and the output of the adder 2h are added, and the adder 3g outputs the result of subtracting the output of the arithmetic unit 2g from the output of the shifter 2e of the arithmetic circuit 32 of stage II. , The subtractor 3h is the arithmetic circuit 3 of the stage II.
The result of subtracting the output of the calculator 2h from the output of the second shifter 2f is output. In this case, the adders 3a, 3b, 3e, 3f and the subtractors 3c, 3d, 3g, 3h output the respective calculation results at the timing shown in FIG. Become.

【0027】次いで、ステージ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
1の入力データに対して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 circuit 34 of the stage IV is proceeded to. In this arithmetic circuit 34, the arithmetic circuit 3 of stage III
The outputs of the adders 3a and 3b of COS (4/16) π calculator 4
a and 4b, and in the same way, the subtractors 3c and 3d are
S (2/16) π and COS (6/16) π calculators 4c and 4d are separately provided, and the outputs of the adders 3e and 3f are COS (1/16) π and COS (7/16) π calculators. The output of the subtracters 3g and 3h are respectively given to the converters 4e and 4f, and the outputs of the subtracters 3g and 3h are COS (5/16) π and COS (3/16) π.
It is separately given to the arithmetic units 4g and 4h. In this case,
COS (4/16) π calculators 4a, 4b for 1 input data
Then, the approximate value of COS (N / 16) π when N = 4 is (6-1) × (2+
1) × 4 + 1 calculation is executed, and at the timing shown in FIG.
The calculation result is generated as output data F (0) and F (4). Similarly, for COS (2/16) π and COS (6/16) π calculators 4c and 4d, the approximate value of COS (N / 16) π when N = 2 is 4 × (64-4-1 ) +1/2 and COS (N / 16) π where N = 6, the approximate value 2 × (32 + 16 + 1) is calculated and the calculation result is output at the timing shown in Fig. IV. Data F (2),
It occurs as F (6), and COS (1/16) π and COS (7/16) π
Also for the arithmetic units 4e and 4f, an approximate value 251 = (128-2) × 2-1 and COS (N / 16) π N = when COS (N / 16) π is N = 1.
In case of 7, the calculation of approximate value 2 × (16 + 8 + 1) is executed.
At the timing shown in, the calculation result is output data F
(1), F (7), and COS (5/16) π
Also for COS (3/16) π calculators 4g, 4h, COS (N / 1
6) Approximate value of π for N = 5 2 × (64 + 8-1) and COS (N / 1
6) Approximate value (2 + 1) × (64 + 8-1) when π is N = 3 is calculated, and the calculation result is output data F (5) at the timing shown in FIG. It occurs as F (3).

【0028】以上の説明は、DCT演算処理の場合であ
るが、逆DCT演算処理の場合も上述したと同様であ
る。
Although the above description is for the case of the DCT calculation process, the same applies to the case of the inverse DCT calculation process.

【0029】この場合は入力データがステージ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.

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

【0031】このように、ステージI〜ステージIVから
なるフローグラフに基づいてディスクリートコサイン変
換処理を実行するものにおいて、各ステージをシリアル
処理するように構成することにより、入力データが各ス
テージの演算回路により順次シリアル処理されるように
なり、従来のメモリに対してレジスタ、シフタおよび加
減算器からなる演算部を並列的に設けたものに比べ、回
路規模を小さくすることができるとともに、高速処理を
実現することができる。
As described above, in the case where the discrete cosine transform process is executed based on the flow graph consisting of the stages I to IV, each stage is configured to be serially processed so that the input data is the arithmetic circuit of each stage. With this, serial processing can be 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 including a register, a shifter, and an adder / subtractor is provided in parallel. can do.

【0032】[0032]

【発明が解決しようとする課題】しかしながら、このよ
うなシリアルDCT演算処理を行なうデータ圧縮伸張装
置にあっては、DCT演算式をそのままシリアル処理回
路上で実現する構成となっていたため、DCT演算を並
列的に行なうDCT演算装置に比べて回路規模は大幅に
小さくすることはできるものの、図17に示すようにフ
リップフロップ(FF)で126個、演算器を構成する
1bit Add(Sub)unitが 62個必要となり、未だ回路規
模が大きいという欠点があった。また、FF等を1段通
るごとに1クロック分遅延するので演算段数を短くする
ようにして高速化を図りたいという要望がある。
However, in the data compression / expansion device for performing such serial DCT arithmetic processing, since the DCT arithmetic expression is directly realized on the serial processing circuit, the DCT arithmetic operation is performed. Although the circuit scale can be significantly reduced as compared with a DCT arithmetic unit that operates in parallel, as shown in FIG. 17, 126 flip-flops (FF) are provided, and a 1-bit Add (Sub) unit constituting an arithmetic unit is 62 units. There is a drawback that the circuit scale is still large because individual pieces are required. In addition, there is a demand to reduce the number of operation stages and increase the speed because one clock is delayed for each passage through the FF or the like.

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

【0034】[0034]

【課題を解決するための手段】請求項1記載の発明は、
上記目的達成のため、所定のデータを記憶するデータ記
憶手段と、前記データ記憶手段から出力されたデータに
対して所定の係数に基づいてシリアル演算によりデータ
変換演算を実行するデータ変換演算手段と、前記データ
変換演算手段によるデータ変換後のデータに対して量子
化演算を実行する量子化手段と、前記データ記憶手段、
前記データ変換演算手段及び前記量子化手段を制御をす
る制御手段とを備えたデータ圧縮伸張装置であって、前
記データ変換演算手段の係数を整数の比に置き換えると
ともに、該整数の比に置き換えることにより生じたゲイ
ンの変化を、前記量子化手段により調整するようにして
いる。
The invention according to claim 1 is
To achieve the above object, data storage means for storing predetermined data, data conversion operation means for performing data conversion operation by serial operation on the data output from the data storage means based on a predetermined coefficient, Quantization means for performing a quantization operation on the data after the data conversion by the data conversion operation means, and the data storage means,
A data compression / expansion apparatus comprising: the data conversion calculation means and a control means for controlling the quantization means, wherein the coefficient of the data conversion calculation means is replaced with an integer ratio and also with an integer ratio. The change in gain caused by is adjusted by the quantizing means.

【0035】請求項2記載の発明は、所定のデータを記
憶するデータ記憶手段と、前記データ記憶手段のデータ
をパラレルデータからシリアルデータに変換するパラレ
ル−シリアル変換手段と、前記パラレル−シリアル変換
手段から出力されたデータに対して所定の係数に基づい
てシリアル演算によりデータ変換演算を実行するデータ
変換演算手段と、前記データ変換手段から出力されるシ
リアルデータをパラレルデータに変換し、前記データ記
憶手段に書き込むシリアル−パラレル変換手段と、前記
データ変換演算手段によるデータ変換後のデータに対し
て量子化演算を実行する量子化手段と、前記データ記憶
手段、前記パラレル−シリアル変換手段、前記データ変
換演算手段、前記シリアル−パラレル変換手段及び前記
量子化手段を制御をする制御手段とを備えたデータ圧縮
伸張装置であって、前記データ変換演算手段の係数を整
数の比に置き換えるとともに、該整数の比に置き換える
ことにより生じたゲインの変化を、前記量子化手段によ
り調整するようにしている。
According to a second aspect of the present invention, data storage means for storing predetermined data, parallel-serial conversion means for converting data in the data storage means from parallel data to serial data, and the parallel-serial conversion means. Data conversion operation means for executing data conversion operation by serial operation on the data output from the data conversion means, and serial data output from the data conversion means to parallel data, and the data storage means Serial-parallel conversion means for writing into the memory, quantization means for performing a quantization operation on the data converted by the data conversion operation means, the data storage means, the parallel-serial conversion means, the data conversion operation Means, said serial-parallel conversion means and said quantization means A data compression / expansion device comprising: a control unit for converting the coefficient of the data conversion calculation unit to an integer ratio, and a change in gain caused by replacing the coefficient to an integer ratio by the quantization unit. I am trying to adjust it.

【0036】請求項3記載の発明は、所定のデータを記
憶するデータ記憶手段と、前記データ記憶手段から出力
されたデータに対して所定の係数に基づいてシリアル演
算によりデータ変換演算を実行するデータ変換演算手段
と、前記データ変換演算手段によるデータ変換後のデー
タに対して量子化演算を実行する量子化手段と、前記デ
ータ記憶手段、前記データ変換演算手段及び前記量子化
手段を制御をする制御手段とを備えたデータ圧縮伸張装
置であって、前記データ変換演算手段のデータ変換演算
式の係数の値を2のべきで表現するとともに、該係数の
値を2のべきで表現するとき所定以上ビット数が大きく
なる部分については該係数を整数の比に置き換え、該整
数の比に置き換えることにより生じたゲインの変化を、
前記量子化手段により調整するようにしている。
According to a third aspect of the present invention, data storage means for storing predetermined data, and data for performing data conversion operation on the data output from the data storage means by serial operation based on a predetermined coefficient. Transform operation means, quantization means for performing a quantization operation on data after data conversion by the data conversion operation means, control for controlling the data storage means, the data conversion operation means, and the quantization means A data compression / decompression device including means for expressing the value of the coefficient of the data conversion arithmetic expression of the data conversion operation means by a power of 2, and when expressing the value of the coefficient by a power of 2, a predetermined value or more For the part where the number of bits becomes large, the coefficient is replaced with an integer ratio, and the change in gain caused by replacing the coefficient with an integer ratio is
Adjustment is made by the quantizing means.

【0037】前記データ変換演算手段は、例えば請求項
4に記載されているように、データに対してシリアル演
算により直交変換を実行する直交変換手段であってもよ
く、また、前記データ変換演算手段は、例えば請求項5
に記載されているように、データに対してシリアル演算
により離散コサイン変換(DCT)を実行する離散コサ
イン変換手段であってもよい。
The data conversion calculation means may be, for example, an orthogonal conversion means for performing orthogonal conversion on data by serial calculation as described in claim 4, and the data conversion calculation means. Is, for example, claim 5.
As described in (1), it may be a discrete cosine transform means for performing discrete cosine transform (DCT) on data by serial operation.

【0038】また、前記データ変換演算手段は、例えば
請求項6に記載されているように、入力されたデータを
所定のクロックに応答して順次移動させるシリアル演算
器を含んで構成されてもよく、前記データ変換演算手段
は、例えば請求項7に記載されているように、データ変
換演算式の係数の値を2のべきで表現したシリアル回路
により構成し、該シリアル回路によるシリアル演算によ
りデータ変換演算を実行するようにしてもよく、さらに
は、前記データ変換演算手段は、例えば請求項8に記載
されているように、データ変換演算式の係数の値を2の
べきで表現するとともに、該係数の値を2のべきで表現
するとき所定以上ビット数が大きくなる部分については
該係数を整数の比に置き換えたシリアル回路により構成
し、該シリアル回路によるシリアル演算によりデータ変
換演算を実行するようにしてもよい。
Further, the data conversion operation means may be configured to include, for example, as described in claim 6, a serial operation device for sequentially moving the input data in response to a predetermined clock. The data conversion arithmetic means comprises, for example, as described in claim 7, a serial circuit in which the value of the coefficient of the data conversion arithmetic expression is expressed as a power of 2, and data conversion is performed by the serial operation by the serial circuit. Calculation may be executed, and further, the data conversion calculation means expresses the value of the coefficient of the data conversion calculation expression as a power of 2 as described in claim 8, and When the value of the coefficient is expressed as a power of 2, a portion where the number of bits becomes larger than a predetermined value is configured by a serial circuit in which the coefficient is replaced by an integer ratio, and the serial circuit It may be executed a data conversion operation by serial operation by.

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

【0040】[0040]

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

【0041】請求項1、2、3、4、5、6、7、8、
9、10及び11記載の発明では、データ変換演算手段
の係数が整数の比に置き換えられ、そのゲインの変化は
量子化手段により調整される。この場合、データ変換演
算式の係数が、量子化演算に用いる量子化係数に含まれ
るようにデータ変換演算式を作成しておき、このように
して作成されたデータ変換演算式の係数の値を2のべき
で表現してシリアル回路が構成される。このとき、該係
数の値を2のべきで表現しようとすれば所定以上ビット
数が大きくなる部分については該係数が整数の比に置き
換えられ、該整数の比に置き換えられることにより生じ
たゲインの変化は量子化手段により調整される。
Claims 1, 2, 3, 4, 5, 6, 7, 8,
In the inventions described in 9, 10, and 11, the coefficient of the data conversion calculation means is replaced with an integer ratio, and the change in the gain is adjusted by the quantization means. In this case, the data conversion calculation formula is created so that the coefficient of the data conversion calculation formula is included in the quantized coefficient used for the quantization calculation, and the value of the coefficient of the data conversion calculation formula thus created is set. A power of 2 is used to form a serial circuit. At this time, if an attempt is made to express the value of the coefficient as a power of 2, the coefficient is replaced with an integer ratio in a portion where the number of bits becomes larger than a predetermined value, and the gain generated by the replacement with the integer ratio is changed. The changes are adjusted by the quantizing means.

【0042】従って、単にシリアル回路を実現していた
場合に比べ、回路規模を大幅に小さくすることができる
とともに、シリアルの段数を減少させて処理速度を向上
させることができ、画像等のデータ圧縮に利用すること
ができる。
Therefore, as compared with the case where only a serial circuit is realized, the circuit scale can be greatly reduced, the number of serial stages can be reduced to improve the processing speed, and the data compression of images and the like can be performed. Can be used for.

【0043】[0043]

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

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

【0045】ところで、DCT演算された画像データは
後段の量子化部(例えば、図6の量子化装置14)にお
いて量子化されることになる。
By the way, the DCT-computed image data is quantized in the quantizer (eg, the quantizer 14 in FIG. 6) in the subsequent stage.

【0046】本発明者はこの点に着目して、2のべきで
表現できる部分はべきで表現して取り込みに用いる一方
で、べきで表現しようとすればビット数が大きくなって
しまう部分については敢えてべきにより表現しようとし
ないで2のべきにとらわれずにDCTの演算係数を整数
比(あるいは、整数値)に置き換え、そのゲイン変化分
を量子化部によって吸収するようにする。これによって
2のべきによりシリアル回路を実現していた場合に比
べ、回路規模を大幅に小さくすることができるととも
に、シリアルの段数を減少させて処理速度を向上させる
ことができる。
Focusing on this point, the inventor of the present invention expresses a part that can be represented by a power of 2 as a power and uses it for capturing, while regarding a part where the number of bits becomes large when attempting to express by a power. The calculation coefficient of the DCT is replaced with an integer ratio (or an integer value) without being restricted by the power of 2 without intentionally expressing it by power, and the gain variation is absorbed by the quantizer. As a result, the circuit scale can be significantly reduced and the processing speed can be improved by reducing the number of serial stages as compared with the case where a serial circuit is realized by the power of 2.

【0047】実施例 図1〜図5は上記基本原理に基づくデータ圧縮伸張装置
の実施例を示す図である。
Embodiment FIG. 1 to FIG. 5 are views showing an embodiment of a data compression / decompression device based on the above-mentioned basic principle.

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

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

【0050】図2において、61はステージIの演算回
路、62はステージIIの演算回路、63はステージIII
の演算回路、64はステージIVの演算回路であり、これ
らのステージI〜IVの演算回路61〜64はそれぞれス
イッチ65〜69を介して直列に接続するように構成さ
れている。この場合、DCT演算処理では、図2に示す
ように演算回路61〜64の順で直列接続され、上記ス
テージI〜IVの演算回路61〜64に対応する逆DCT
演算処理時のステージI〜IVの演算回路71〜74とす
ると、基本的にはスイッチ65〜69の切換え動作によ
り演算回路74〜71の順で直接接続される。そして、
入力端子75に与えられる入力データに対するDCTま
たは逆DCT演算結果は出力端子76から出力されるよ
うになる。この場合、入力データは、シリアル8系統よ
りなっている。
In FIG. 2, 61 is a stage I arithmetic circuit, 62 is a stage II arithmetic circuit, and 63 is a stage III.
, 64 is an arithmetic circuit of stage IV, and arithmetic 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, as shown in FIG. 2, the inverse DCTs connected in series in the order of the operation circuits 61 to 64 and corresponding to the operation circuits 61 to 64 of the above stages I to IV.
Assuming that the arithmetic circuits 71 to 74 of the stages I to IV at the time of arithmetic processing are basically, the arithmetic circuits 74 to 71 are directly connected in order by the switching operation of the switches 65 to 69. And
The DCT or inverse DCT operation result for the input data supplied to the input terminal 75 is output from the output terminal 76. In this case, the input data consists of 8 serial systems.

【0051】図3はデータ圧縮伸張装置のデータ圧縮時
のデータ変換演算装置50の回路構成図であり、前記図
17に示す従来のデータ変換演算装置12に対応する図
である。
FIG. 3 is a circuit configuration diagram of the data conversion arithmetic unit 50 at the time of data compression of the data compression / expansion device, and is a diagram corresponding to the conventional data conversion arithmetic unit 12 shown in FIG.

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

【0053】また、ステージIIの演算回路62は、原理
説明で述べたシリアル演算を実行するものであり、係数
を簡単な整数比に近似した場合のDCTシリアル演算を
行なうシリアル演算器82a〜82hから構成されてい
る。ここで、上記演算器82aは、加算器81aの出力
と加算器81dの出力とを加算する加算器82a1、こ
の加算器82a1の出力をシフトする3個のフリップフ
ロップ(FF)からなるシフタ82a2から構成されて
いる。また、上記演算器82bは、加算器81bの出力
と加算器81cの出力とを加算する加算器82b1、こ
の加算器82b1の出力をシフトする3個のフリップフ
ロップ(FF)からなるシフタ82b2から構成されて
いる。また、上記演算器82cは、加算器81bの出力
から加算器81cの出力を減算する減算器82c1、こ
の減算器82c1の出力をシフトする3個のフリップフ
ロップからなるシフタ82c2、このシフタ82c2の第
1番目のフリップフロップの出力とシフタ82c2の出
力を加算する加算器82c3、シフタ82c2の第2番目
のフリップフロップの出力と加算器82c3の出力を加
算する加算器82c4から構成されている。同様に、上
記演算器82dは、加算器81aの出力から加算器81
dの出力を減算する減算器82d1、この減算器82d1
の出力をシフトする3個のフリップフロップからなるシ
フタ82d2、このシフタ82d2の第1番目のフリップ
フロップの出力とシフタ82d2の出力を加算する加算
器82d3、シフタ82d2の第2番目のフリップフロッ
プの出力と加算器82d3の出力を加算する加算器82
d4から構成されている。
Further, the arithmetic circuit 62 of the stage II executes the serial operation described in the explanation of the principle, and the serial arithmetic units 82a to 82h for performing the DCT serial operation when the coefficient is approximated to a simple integer ratio. It is configured. Here, the arithmetic unit 82a includes an adder 82a1 for adding the output of the adder 81a and an output of the adder 81d, and a shifter 82a2 including three flip-flops (FF) for shifting the output of the adder 82a1. It is configured. The arithmetic unit 82b is composed of an adder 82b1 for adding the output of the adder 81b and an output of the adder 81c, and a shifter 82b2 composed of three flip-flops (FF) for shifting the output of the adder 82b1. Has been done. Further, 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 composed of three flip-flops for shifting the output of the subtractor 82c1, and a shifter 82c2 of the shifter 82c2. It is composed of an adder 82c3 for adding the output of the first flip-flop and the output of the shifter 82c2, and 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 changes the output of the adder 81a from the adder 81a.
Subtractor 82d1 for subtracting the output of d, and this subtractor 82d1
Shifter 82d2 consisting of three flip-flops for shifting the output of the shifter, an adder 82d3 for adding the output of the first flip-flop of this shifter 82d2 and the output of the shifter 82d2, and the output of the second flip-flop of the shifter 82d2 And an adder 82 for adding the output of the adder 82d3
It is composed of d4.

【0054】上記演算器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 a shifter 8 including five flip-flops for shifting the output of the subtractor 81e.
2e1, an adder 82e2 that adds the output of the third flip-flop of the shifter 82e1 and an output of the fourth flip-flop of the shifter 82e1, a shifter 82e3 that shifts the output of the adder 82e2, and a first flip-flop of the shifter 82e1 Of the fifth flip-flop and an adder 82e4 for adding the output of the fifth flip-flop. The arithmetic unit 82f includes a subtracter 82f1 for subtracting the output of the subtractor 81f from the output of the subtractor 81g, a shifter 82f2 composed of four flip-flops for shifting the output of the subtractor 82f1, and a shifter 82f2 of the shifter 82f2. The output of the second flip-flop and the output of the third flip-flop are added by the adder 82f3, the output of the subtractor 82f1 and the shifter 82.
It is composed of 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 an output of the subtractor 81g, a shifter 82g2 composed of four flip-flops for shifting the output of the adder 82g1, and a shifter 82g2 of the shifter 82g2. It is composed of 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. Further, the arithmetic unit 82h adds a shifter 82h1 composed of five flip-flops for shifting the output of the subtractor 81h, and an output of the third flip-flop of the shifter 82h1 and an output of the fourth flip-flop of the shifter 82h1. The adder 82h2 includes a shifter 82h3 that shifts the output of the adder 82h2, and an adder 82h4 that adds the output of the first flip-flop and the output of the fifth flip-flop of the shifter 82h1.

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

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

【0057】上記演算器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、シフタ84f4の出力から
減算器84f3の出力を減算して出力データ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 is 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
Subtractor 84e3 for subtracting the output of 4e2, Subtractor 84e3
Shifter 84e4 composed of two flip-flops for shifting the output of
It is composed of a subtracter 84e5 which subtracts the output of e3 and outputs it as output data F7. In addition, the arithmetic unit 84
f is a shifter 84f1 composed of two flip-flops for shifting the output of the subtractor 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 described later. Subtractor 84f3 for subtracting the output of this shifter 84f1 from the output of
The shifter 84f4 is composed of two flip-flops for shifting the output of the subtractor 84f3, and the subtracter 84f5 is provided for subtracting the output of the subtractor 84f3 from the output of the shifter 84f4 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, and an adder 84g3 for adding the output of the adder f2 and the output of the shifter 84g1;
The shifter 84g4 is composed of two flip-flops for shifting the output of the adder 84g3, and the subtracter 84g5 is provided for subtracting the output of the adder 84g3 from the output of the shifter 84g4 and outputting it as output data F5. The arithmetic unit 84h includes a shifter 84h1 including two flip-flops for shifting the output of the adder 83h and an adder 8h.
An adder 84h2 for adding and outputting the output of 3h and the output of the shifter 84h1, an adder 84h3 for adding the output of the first flip-flop of the shifter 84e1 and the output of the adder 84h2, and an output of the adder 84h3 are shifted. Shifter 84h4 and shifter 84 consisting of two flip-flops
It is composed of a subtractor 84h5 which subtracts the output of the adder 84h3 from the output of h4 and outputs it as output data F1.

【0058】図4はデータ圧縮伸張装置のデータ伸張時
のデータ変換演算装置50の回路構成図であり、前記図
3に示すデータ変換演算装置50の逆変換装置に対応す
る図である。
FIG. 4 is a circuit configuration diagram of the data conversion arithmetic unit 50 at the time of data expansion of the data compression expansion unit, and is a diagram corresponding to the inverse conversion unit of the data conversion arithmetic unit 50 shown in FIG.

【0059】図4において、ステージIVの演算回路74
は、原理説明で述べたシリアル演算を実行するものであ
り、係数を簡単な整数比に近似した場合の逆DCTシリ
アル演算を行なうシリアル演算器94c〜94hから構
成されている。ここで、上記演算器94aは、逆変換の
入力データF0をシフトする3個のフリップフロップ
(FF)からなるシフタ94a1、このシフタ94a1の
第2番目のフリップフロップの出力と第3番目のフリッ
プフロップの出力を加算する加算器94a2、加算器9
4a2の出力から入力データF0を減算する減算器94a
3から構成されている。また、上記演算器94bは、逆
変換の入力データF4をシフトする3個のフリップフロ
ップからなるシフタ94b1、このシフタ94b1の第2
番目のフリップフロップの出力と第3番目のフリップフ
ロップの出力を加算する加算器94b2、加算器94b2
の出力から入力データF4を減算する減算器94b3から
構成されている。また、上記演算器94cは、逆変換の
入力データF6をシフトする2個のフリップフロップか
らなるシフタ94c1、このシフタ94c1の出力と入力
データF6の出力を加算する加算器94c2、この加算器
94c2の出力をシフトする2個のフリップフロップか
らなるシフタ94c3、このシフタ94c3の出力と加算
器94c2の出力を加算する加算器94c4、この加算器
94c4の出力とシフタ94c4の第1番目のフリップフ
ロップの出力を加算する加算器94c5から構成されて
いる。また、上記演算器94dは、逆変換の入力データ
F2をシフトする2個のフリップフロップからなるシフ
タ94d1、このシフタ94d1の出力と入力データF2
の出力を加算する加算器94d2、この加算器94d2の
出力をシフトする2個のフリップフロップからなるシフ
タ94d3、このシフタ94d3の出力と加算器94d2
の出力を加算する加算器94d4、この加算器94d4の
出力とシフタ94d4の第1番目のフリップフロップの
出力を加算する加算器94d5から構成されている。
In FIG. 4, the arithmetic circuit 74 of the stage IV.
Is for executing the serial operation described in the principle description, and is composed of serial operation units 94c to 94h for performing the inverse DCT serial operation when the coefficient is approximated to a simple integer ratio. Here, the arithmetic unit 94a is composed of a shifter 94a1 composed of three flip-flops (FF) for shifting the input data F0 of the inverse conversion, the output of the second flip-flop of the shifter 94a1 and the third flip-flop. 94a2 and 9 for adding the outputs of
Subtractor 94a for subtracting the input data F0 from the output of 4a2
It consists of three. The arithmetic unit 94b is a shifter 94b1 composed of three flip-flops for shifting the input data F4 of the inverse conversion, and a second shifter 94b1 of the shifter 94b1.
An adder 94b2 and an adder 94b2 for adding the output of the third flip-flop and the output of the third flip-flop
It is composed of a subtractor 94b3 for subtracting the input data F4 from the output of. The arithmetic unit 94c includes a shifter 94c1 composed of two flip-flops for shifting the input data F6 of the inverse conversion, an adder 94c2 for adding the output of the shifter 94c1 and the output of the input data F6, and an adder 94c2 of the adder 94c2. A shifter 94c3 composed of two flip-flops for shifting the output, an adder 94c4 for adding the output of the shifter 94c3 and the output of the adder 94c2, the output of the adder 94c4 and the output of the first flip-flop of the shifter 94c4 It is composed of an adder 94c5 for adding. Further, the arithmetic unit 94d is a shifter 94d1 composed of two flip-flops for shifting the input data F2 of the inverse conversion, the output of the shifter 94d1 and the input data F2.
94d2 for adding the outputs of the two, a shifter 94d3 composed of two flip-flops for shifting the output of the adder 94d2, the output of the shifter 94d3 and the adder 94d2
It is composed of an adder 94d4 for adding the output of the adder 94d4 and an adder 94d5 for adding the output of the adder 94d4 and the output of the first flip-flop of the shifter 94d4.

【0060】また、上記演算器94eは、逆変換の入力
データF7をシフトする2個のフリップフロップからな
るシフタ94e1、このシフタ94e1の出力から入力デ
ータF7を減算する減算器94e2から構成され、上記演
算器94fは、逆変換の入力データF3をシフトする2
個のフリップフロップからなるシフタ84f1、このシ
フタ84f1の出力から入力データF3を減算する減算器
84f2から構成されている。また、上記演算器93g
は、逆変換の入力データF5をシフトする2個のフリッ
プフロップからなるシフタ94g1、シフタ94g1の出
力から入力データF5を減算する減算器94g2から構成
され、上記演算器93hは、逆変換の入力データF1を
シフトする2個のフリップフロップからなるシフタ94
h1、シフタ94h1の出力から入力データF1を減算す
る減算器94h2から構成されている。
The arithmetic unit 94e is composed of a shifter 94e1 composed of two flip-flops for shifting the input data F7 of the inverse conversion and a subtractor 94e2 for subtracting the input data F7 from the output of the shifter 94e1. The calculator 94f shifts the input data F3 of the inverse transform 2
It is composed of a shifter 84f1 composed of a plurality of flip-flops, and a subtractor 84f2 for subtracting the input data F3 from the output of the shifter 84f1. In addition, the computing unit 93g
Is composed of a shifter 94g1 composed of two flip-flops for shifting the inverse-transformed input data F5, and a subtractor 94g2 for subtracting the input data F5 from the output of the shifter 94g1. Shifter 94 consisting of two flip-flops for shifting F1
It is composed of a subtractor 94h2 for subtracting the input data F1 from the output of h1 and the shifter 94h1.

【0061】また、ステージIIIの演算回路73は、原
理説明で述べたシリアル演算を実行するものであり、係
数を簡単な整数比に近似した場合の逆DCTシリアル演
算を行なうシリアル演算器93a〜93hから構成され
ている。ここで、上記演算器93aは、減算器94aの
出力と減算器94bの出力とを加算する加算器93a
1、この加算器93a1の出力をシフトする3個のフリッ
プフロップからなるシフタ93a2から構成されてい
る。また、上記演算器93bは、加算器94c4の出力
と加算器94d5の出力とを加算する加算器93b1、こ
の加算器93b1の出力をシフトする1個のフリップフ
ロップからなるシフタ93b2から構成されている。ま
た、上記演算器93cは、加算器94d4の出力から加
算器94c5の出力を減算する減算器82c1、この減算
器82c1の出力をシフトする1個のフリップフロップ
からなるシフタ93c2から構成されている。また、上
記演算器93dは、減算器94a3の出力から減算器9
4b3の出力を減算する減算器93d1、この減算器93
d1の出力をシフトする3個のフリップフロップからな
るシフタ82d2から構成されている。
The stage III arithmetic circuit 73 executes the serial arithmetic described in the explanation of the principle, and serial arithmetic units 93a to 93h for performing the inverse DCT serial arithmetic when the coefficient is approximated to a simple integer ratio. It consists of Here, the arithmetic unit 93a is an adder 93a that adds the output of the subtractor 94a and the output of the subtractor 94b.
1. The shifter 93a2 is composed of three flip-flops for shifting the output of the adder 93a1. The computing unit 93b is composed of an adder 93b1 for adding the output of the adder 94c4 and the output of the adder 94d5, and a shifter 93b2 composed of one flip-flop for shifting the output of the adder 93b1. . The arithmetic unit 93c is composed of a subtracter 82c1 for subtracting the output of the adder 94c5 from the output of the adder 94d4, and a shifter 93c2 composed of one flip-flop for shifting the output of the subtractor 82c1. Further, the arithmetic unit 93d uses the output of the subtractor 94a3 to subtract the
Subtractor 93d1 for subtracting the output of 4b3
The shifter 82d2 is composed of three flip-flops for shifting the output of d1.

【0062】上記演算器93eは、減算器94e2の出
力をシフトする5個のフリップフロップからなるシフタ
93e1、このシフタ93e1の第3番目のフリップフロ
ップの出力と第4番目のフリップフロップの出力を加算
する加算器93e2、加算器93e2の出力をシフトする
シフタ93e3、シフタ93e1の第1番目のフリップフ
ロップの出力と第5番目のフリップフロップの出力を加
算する加算器93e4から構成されている。また、上記
演算器93fは、減算器94f2の出力から減算器94
g2の出力を減算する減算器93f1、この減算器93f
1の出力をシフトする4個のフリップフロップからなる
シフタ93f2、このシフタ93f2の第2番目のフリッ
プフロップの出力と第3番目のフリップフロップの出力
を加算する加算器93f3、減算器93f1の出力とシフ
タ93f2の出力を加算する加算器93f4から構成され
ている。また、上記演算器93gは、減算器94f2の
出力と減算器94g2の出力を加算する加算器93g1、
この加算器93g1の出力をシフトする4個のフリップ
フロップからなるシフタ93g2、このシフタ93g2の
第2番目のフリップフロップの出力と第3番目のフリッ
プフロップの出力を加算する加算器93g3、減算器9
3g1の出力とシフタ93g2の出力を加算する加算器9
3g4から構成されている。また、上記演算器93h
は、減算器94h2の出力をシフトする5個のフリップ
フロップからなるシフタ93h1、このシフタ93h1の
第3番目のフリップフロップの出力と第4番目のフリッ
プフロップの出力を加算する加算器93h2、加算器9
3h2の出力をシフトするシフタ93h3、シフタ93h
1の第1番目のフリップフロップの出力と第5番目のフ
リップフロップの出力を加算する加算器93h4から構
成されている。
The arithmetic unit 93e adds a shifter 93e1 composed of five flip-flops for shifting the output of the subtractor 94e2, an output of the third flip-flop of the shifter 93e1 and an output of the fourth flip-flop of the shifter 93e1. And an adder 93e4 for adding the output of the first flip-flop of the shifter 93e1 and the output of the fifth flip-flop of the shifter 93e1. Further, the arithmetic unit 93f calculates the subtracter 94f2 from the output of the subtractor 94f2.
Subtractor 93f1 for subtracting the output of g2, this subtractor 93f
A shifter 93f2 composed of four flip-flops for shifting the output of 1; an adder 93f3 for adding the output of the second flip-flop of the shifter 93f2 and an output of the subtractor 93f1 It is composed of an adder 93f4 for adding the outputs of the shifter 93f2. The arithmetic unit 93g adds the output of the subtractor 94f2 and the output of the subtractor 94g2 to an adder 93g1,
A shifter 93g2 composed of four flip-flops for shifting the output of the adder 93g1, an adder 93g3 for adding the output of the second flip-flop of the shifter 93g2 and an output of the third flip-flop, and a subtracter 9
Adder 9 for adding the output of 3g1 and the output of shifter 93g2
It is composed of 3g4. In addition, the computing unit 93h
Is a shifter 93h1 composed of five flip-flops for shifting the output of the subtractor 94h2, an adder 93h2 for adding the output of the third flip-flop of the shifter 93h1 and an output of the fourth flip-flop of the shifter 93h1, and an adder 9
Shifter 93h3, shifter 93h for shifting the output of 3h2
It is composed of an adder 93h4 for adding the output of the 1st first flip-flop and the output of the 5th flip-flop.

【0063】また、ステージIIの演算回路72は、原理
説明で述べたシリアル演算を実行するものであり、係数
を簡単な整数比に近似した場合の逆DCTシリアル演算
を行なうシリアル演算器92a〜92hから構成されて
いる。ここで、上記演算器92aは、シフタ93a2の
出力とシフタ93b2の出力とを加算する加算器92a
1、この加算器92a1の出力をシフトする3個のフリッ
プフロップからなるシフタ92a2から構成されてい
る。また、上記演算器92bは、シフタ93a2の出力
からシフタ93b2の出力を減算する減算器92b1、こ
の加算器92b1の出力をシフトする3個のフリップフ
ロップからなるシフタ92b2から構成されている。ま
た、上記演算器92cは、シフタ93d2の出力からシ
フタ93c2の出力を減算する減算器92c1、この減算
器92c1の出力をシフトする3個のフリップフロップ
からなるシフタ92c2から構成されている。また、上
記演算器92dは、シフタ93c2の出力とシフタ93
d2の出力を加算する加算器92d1、この加算器92d
1の出力をシフトする3個のフリップフロップからなる
シフタ92d2から構成されている。
The stage II arithmetic circuit 72 executes the serial arithmetic described in the explanation of the principle, and serial arithmetic units 92a to 92h which perform the inverse DCT serial arithmetic when the coefficient is approximated to a simple integer ratio. It consists of Here, the arithmetic unit 92a is an adder 92a for adding the output of the shifter 93a2 and the output of the shifter 93b2.
1. The shifter 92a2 is composed of three flip-flops for shifting the output of the adder 92a1. The arithmetic unit 92b is composed of a subtracter 92b1 for subtracting the output of the shifter 93b2 from the output of the shifter 93a2, and a shifter 92b2 composed of three flip-flops for shifting the output of the adder 92b1. The arithmetic unit 92c is composed of a subtracter 92c1 for subtracting the output of the shifter 93c2 from the output of the shifter 93d2, and a shifter 92c2 composed of three flip-flops for shifting the output of the subtractor 92c1. Further, the arithmetic unit 92d is provided with the output of the shifter 93c2 and the shifter 93c2.
Adder 92d1 for adding the outputs of d2, this adder 92d
The shifter 92d2 is composed of three flip-flops for shifting the output of 1.

【0064】上記演算器92eは、加算器93e3の出
力から加算器93f4の出力を減算する減算器92e1、
この減算器92e1の出力をシフトするシフタ92e2、
減算器92e1の出力とシフタ92e2の第1番目のフリ
ップフロップの出力を加算する加算器92e3、後述す
る加算器92f3からシフタ92e2の出力を減算する減
算器92e4から構成されている。また、上記演算器9
2fは、加算器93h3の出力から加算器93g4の出力
を減算する減算器92f1、この減算器92f1の出力を
シフトするシフタ92f2、減算器92f1の出力とシフ
タ92f2の第1番目のフリップフロップの出力を加算
する加算器92f3、加算器92e3とシフタ92f2の
出力を加算する加算器92f4から構成されている。ま
た、上記演算器92gは、加算器93f3の出力と加算
器93e4の出力を加算する加算器92g1、この加算器
92g1の出力をシフトする2個のフリップフロップか
らなるシフタ92g2、この加算器92g1の出力とシフ
タ92g2の出力を加算する加算器92g3、後述するシ
フタh2の第1番目のフリップフロップの出力から加算
器92g3の出力を減算する減算器92g4から構成され
ている。また、上記演算器92hは、加算器93g3の
出力と加算器93h4の出力を加算する加算器92h1、
この加算器92h1の出力をシフトする2個のフリップ
フロップからなるシフタ92h2、この加算器92h1の
出力とシフタ92h2の出力を加算する加算器92h3、
シフタg2の第1番目のフリップフロップの出力と加算
器92h3の出力を加算する加算器92h4から構成され
ている。
The computing unit 92e subtracts the output of the adder 93f4 from the output of the adder 93e3,
A shifter 92e2 for shifting the output of the subtractor 92e1,
It is composed of an adder 92e3 for adding the output of the subtractor 92e1 and the output of the first flip-flop of the shifter 92e2, and a subtractor 92e4 for subtracting the output of the shifter 92e2 from an adder 92f3 described later. In addition, the arithmetic unit 9
2f is a subtractor 92f1 for subtracting the output of the adder 93g4 from the output of the adder 93h3, a shifter 92f2 for shifting the output of the subtractor 92f1, an output of the subtractor 92f1 and an output of the first flip-flop of the shifter 92f2. Is added by an adder 92f3, an adder 92e3, and an adder 92f4 that adds the outputs of the shifter 92f2. The arithmetic unit 92g includes an adder 92g1 for adding the output of the adder 93f3 and an output of the adder 93e4, a shifter 92g2 composed of two flip-flops for shifting the output of the adder 92g1, and the adder 92g1. It is composed of an adder 92g3 for adding the output and the output of the shifter 92g2, and a subtractor 92g4 for subtracting the output of the adder 92g3 from the output of the first flip-flop of the shifter h2 described later. The arithmetic unit 92h adds the output of the adder 93g3 and the output of the adder 93h4 to the adder 92h1,
A shifter 92h2 composed of two flip-flops for shifting the output of the adder 92h1, an adder 92h3 for adding the output of the adder 92h1 and the shifter 92h2,
It is composed of an adder 92h4 for adding the output of the first flip-flop of the shifter g2 and the output of the adder 92h3.

【0065】また、ステージIの演算回路71は上述し
たシリアル演算を実行して逆変換の出力データf0〜f7
を出力するものであり、加算器91a、91b、91
c、91dと減算器91e、91f、91g、91hか
ら構成されている。
Further, the arithmetic circuit 71 of the stage I executes the above-mentioned serial arithmetic operation to output the inversely converted output data f0 to f7.
And adders 91a, 91b, 91
c, 91d and subtractors 91e, 91f, 91g, 91h.

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

【0067】全体動作 図1において、データ記憶装置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. 1, the parallel data stored in the data storage device 10 is input to the parallel-serial conversion device 11, and the parallel-serial conversion device 11 converts the parallel data read from the data storage device 10 into serial data. And output to the data conversion arithmetic unit 50. The data conversion calculation device 50 performs one-dimensional DCT calculation on the data output from the parallel-serial conversion device 11 in the form of serial calculation. The serial operation in this case is performed in the data conversion operation device 50 by 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-parallel conversion device 13, and the serial-parallel conversion device 13
Converts serial data output from the data conversion arithmetic unit 50 into parallel data and writes the parallel data in the data storage unit 10. The above-described processing is performed in the vertical and horizontal (in no particular order) two-dimensional manner.
Further, the quantizer 51 is configured to absorb a change in gain caused by changing the DCT operation coefficient into a simple integer ratio for the data after data conversion operation stored in the data storage device 10. The quantization operation is performed by performing the reciprocal multiplication with the value of the quantization table thus generated. That is, the quantizer 51 absorbs the change in the gain of each output caused by changing the DCT calculation coefficient to a simple integer ratio and expressing it as an integer ratio. In this embodiment, the quantizer 51 absorbs the gain change by multiplying the quantization table by a predetermined number (described later). By the way, when such a quantization table is used, it can be considered that the bit width of the quantization operation is required to be larger than that of the conventional one at first glance, but in reality, it is actually Since the quantization operation is multiplication of reciprocal numbers, the reciprocal number of the coefficient (for example, 7) is also 7 × 2.
Since the reciprocal of / COS (N / 16) π is also an infinite decimal,
It requires rounding approximation and contains about the same error. That is, since the rounding error is added at the time when the conventional COS coefficient is expressed by a fractional number of two advances, it is not necessary to increase the bit width to suppress the error even if it is replaced with an integer ratio.

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

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

【0070】以下、この演算について説明する。The calculation will be described below.

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

【0072】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 まず、図17に示す従来例において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. 17, F0 to F7 are a0 to a3.
And b0 to b3.

【0073】 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 + 1 + 32 + 1 + 32 + 32 + 32 + 3 + 2 + 2 + 3 + 2 + 2 + 3 + 2 + 2 + 3 + 2 + 4 + 2 + 4 + 2 + 4 + 4 + 2 + 4 + 4 + 2 + 4 + 2 + 4 + 4 + 2 + 4 + 4 + 2 + 4 + 4 + 4 + 4 + 4 + 2 + 4 + 4 + 4 + 6 + 6. F7 = (-15104b0 + 25883b1-16833b2 + 2550b3) × 16 F3 = (-18176b0−64255b1-12815b2 + 27264b3) × 16 F5 = (27264b0 + 12815b1−64255b2 + 18176b3) × 16 A simplified expression is approximated as follows.

【0074】 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) × 128 F4 = (92a0-92a1−92a2 + 92a3) × 128 F2 = (60a0 + 25a1-25a2-60a3) × 256 F6 = (25a0-60a1 + 60a2-25a3 + 25a3) × 25 × 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 conventional. Since it is almost the same, the ratios of the outputs F0 to F7 are considered to be almost the same, but let us consider how the output gain changes.

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

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

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

【0078】 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 Follow the above formula The operation of the configuration data conversion operation unit 50 will be described.

【0079】まず、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のサイ
ンビットからなっている。 次いで、ステージIIの演算
回路62に進む。この演算回路62のシリアル演算器8
2a〜82hには、ステージIの演算回路61で加算あ
るいは減算された加減算結果a0、b0、a1、b1、a
2、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)と加算器81dの出力(a3)とが入力され、加
算器82a1でこれら入力を加算し、この加算結果がシ
フタ82a2に与えられる。シフタ82a2からは、図5
Iに示すように、3個のフリップフロップの動作だけ遅
延して出力される。また上記演算器82bでは、係数を
簡単な整数比に近似した場合のDCTシリアル演算式F
0=((a0+a3)×16+(a1+a2)×16)×2
×8×46及び、F4=((a0+a3)×16−(a1+
a2)×16)×2×8×46に共通する(a1+a2)
×16の演算を実行する。この場合、演算器82bに
は、加算器81bの出力(a1)と加算器81cの出力
(a2)とが入力され、加算器82b1でこれら入力を加
算し、この加算結果がシフタ82b2に与えられる。シ
フタ82b2からは、図5Iに示すように、3個のフリ
ップフロップの動作だけ遅延して出力される。
First, the case of the DCT calculation processing will be described.
Here, the adder 8 in the arithmetic circuit 61 of the stage I is
1a has input data f0 and f7, adder 81b has input data f1 and f6, adder 81c has input data f2 and f5, adder 81d has input data f3 and f4, and subtractor 81e has input data f3 and f4. Input data f2 and f5 are input to 81f, input data f1 and f6 are input to the subtractor 81g, and input data f0 and f7 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 the addition result of the input data f1 and f6, and the adder 81
c outputs the addition result f2 + f5 of the input data f2 and f5,
The adder 81d outputs the addition result of the input data f3 and f4. The subtracter 81e outputs the subtraction result of the input data f3 and f4, and the subtractor 81f outputs the input data f2.
And the subtraction result of f5 is output, the subtracter 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. The input data in this case consists of 8-bit data of 7-bit and 1-bit sign bit as shown in FIG. The output data is composed of 7 + 1 bit and 1 bit sign bit as shown in FIG. 5I. Next, the operation circuit 62 of stage II is proceeded to. Serial arithmetic unit 8 of the arithmetic circuit 62
2a to 82h include addition / subtraction results a0, b0, a1, b1, a added or subtracted by the arithmetic circuit 61 of the stage I.
2, b2, a3, b3 are given as input data. In the arithmetic unit 82a, the DCT serial arithmetic expression F0 = ((a0 + a3) × 16 + when the coefficients are approximated to a simple integer ratio
(A1 + a2) × 16) × 2 × 8 × 46 and F4 =
((A0 + a3) × 16− (a1 + a2) × 16) × 2 × 8
The operation of (a0 + a3) * 16 which is common to * 46 is 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 82a, these inputs are added by the adder 82a1, and the addition result is given to the shifter 82a2. . From the shifter 82a2, see FIG.
As shown by I, the output is delayed by the operation of the three flip-flops. Further, in the arithmetic unit 82b, the DCT serial arithmetic expression F when the coefficient is approximated to a simple integer ratio is used.
0 = ((a0 + a3) × 16 + (a1 + a2) × 16) × 2
× 8 × 46 and F4 = ((a0 + a3) × 16− (a1 +
a2) × 16) × 2 × 8 × 46 (a1 + a2)
The operation of × 16 is executed. In this case, the output (a1) of the adder 81b and the output (a2) of the adder 81c are input to the arithmetic unit 82b, these inputs are added by the adder 82b1, and the addition result is given to the shifter 82b2. . From the shifter 82b2, as shown in FIG. 5I, the output is delayed by the operations of the three flip-flops.

【0080】また上記演算器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に示すタイミングで上述の
演算結果を出力データとして発生するようになる。
Further, in the arithmetic unit 82c, the DCT serial arithmetic expression F6 = when the coefficient is approximated to a simple integer ratio
((A0-a3) x 40- (a1-a2) x 96) x 2 x 8
X10 and F2 = ((a0-a3) * 96 + (a1-a)
2) The operation of (a1-a2) * 96 and (a1-a2) * 40 of (x40) * 2 * 8 * 10 is executed. In this case, the calculator 82c includes the output (a1) of the adder 81b and the adder 8c.
The output (a2) of 1c is input, and the subtracter 82c1 subtracts the output of the adder 81b from the output of the adder 81c to obtain (a1-a2). The output of the subtracter 82c1 is given to the shifter 82c2, the output of the first flip-flop of the shifter 82c2 and the output of the shifter 82c2 are added by the adder 82c3, and the output of the second flip-flop of the shifter 82c2 is added. (A1−a2) × 40 by adding the output of the adder 82c3 by 82c4
And (a1−a2) × 96 will be obtained. In this case, the arithmetic unit 82c is applied to the input data shown in the input of FIG.
Then, the above calculation result is generated as output data at the timing shown in FIG. In addition, the arithmetic unit 82
In d, the DCT serial arithmetic expression F6 = ((a0-a3) * 40- (a1-a) when the coefficient is approximated to a simple integer ratio
2) x 96) x 2 x 8 x 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 calculator 82d, and when the output of the adder 81a is subtracted by the output of the adder 81d by the subtractor 82d1 ( a0-a3) is required. The output of the subtractor 82d1 is given to the shifter 82d2,
The output of the first flip-flop d2 and the shifter 82
The output of d2 is added by the adder 82d3, and the shifter 8
The output of the second 2d2 flip-flop and the adder 8
By adding the output of 2d3 by 82d4 (a0
-A3) * 40 and (a0-a3) * 96 will be obtained. In this case, with respect to the input data shown in the input of FIG. 5, the calculator 82d generates the above-mentioned calculation result as output data at the timing shown in FIG.

【0081】一方、上記演算器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 = when the coefficient is approximated to a simple integer ratio
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 x (b2-b1) + 68 x b0) x 2) x 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 68 × b0 operation and F3 =
(((96 × b3−68 × (b1 + b2)) × 2) × 6−
((96 × b0-68 × (b2-b1)) × 2) × 4) ×
12 and F5 = (((96 * b0-68 * (b2-b1))) *
2) x 6-((96 x b3 -68 x (b1 + b2)) x
2) × 4) × 12 96 × b0 operations are executed. In this case, the subtracter 81 is included in the shifter 82e1 of the arithmetic unit 82e.
The output (b0) of e is input, the output of the third flip-flop of the shifter 82e1 is added by the adder 82e2, the result of this addition is output by the shifter 82e3 delayed by one clock, and the shifter 82e1 is also output. The output of the first flip-flop of and the output of the fifth flip-flop are added by the adder 82e4,
68 × b0 and 96 × b0 will be obtained. In this case, the arithmetic unit 82 is applied to the input data shown in the input of FIG.
In the case of e, the above calculation result is generated as output data at the timing shown in FIG.

【0082】また、上記演算器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に示すタイミングで上述の演算結果を
入力データとして発生するようになる。
Further, in the arithmetic unit 82f, the DCT serial arithmetic expression F7 = when the coefficient is approximated to a simple integer ratio
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 x (b2-b1) + 68 x b0) x 2) x 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 48 × (b2-b1) operations 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) operations are executed. In this case, the calculator 82f includes a subtracter 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.
Subtracting with the output of f gives (b2-b1). The output of the subtractor 82f1 is applied to the shifter 82f2, and the output of the second flip-flop of the shifter 82f2 and the third
The output of the second 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 (b2-b1) *
48 and (b2-b1) * 68 will be obtained. In this case, the arithmetic unit 8 is used for the input data shown in the input of FIG.
In 2f, the above calculation result is generated as input data at the timing shown in FIG.

【0083】また、上記演算器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に示すタイミングで上述の演算結果を
入力データとして発生するようになる。
Further, in the arithmetic unit 82g, the DCT serial arithmetic expression F7 = when the coefficient is approximated to a simple integer ratio
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 x (b2-b1) + 68 x b0) x 2) x 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 48 × (b1 + b2) operations 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 calculator 82g includes a subtracter 81
The output (b1) of f and the output (b2) of the subtractor 81g are input, and the adder 82g1 outputs the output of the adder 81f and the adder 81g.
By adding the outputs of g, (b1 + b2) is obtained. The output of the adder 82g1 is given to the shifter 82g2, and the output of the second flip-flop of the shifter 82g2 and the third
The output of the th 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 (b1 + b2) ×
48 and (b1 + b2) * 68 will be obtained. In this case, the arithmetic unit 8 is used for the input data shown in the input of FIG.
In 2g, the above calculation result is generated as input data at the timing shown in FIG.

【0084】また、上記演算器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に
示すタイミングで上述の演算結果を入力データとして発
生するようになる。
Further, in the arithmetic unit 82h, the DCT serial arithmetic expression F7 = when the coefficient is approximated to a simple integer ratio
(((48 × (b1 + b2) + 68 × b3) × 2) × 2-
((48 x (b2-b1) + 68 x b0) x 2) x 10)
× 12 and F1 = (((48 × (b2-b1) + 68 × b0)
× 2) × 2-((48 × (b1 + b2) + 68 × b3) ×
2) × 10) × 12 68 × b3 operation and F3 =
(((96 × b3−68 × (b1 + b2)) × 2) × 6−
((96 × b0-68 × (b2-b1)) × 2) × 4) ×
12 and F5 = (((96 * b0-68 * (b2-b1))) *
2) x 6-((96 x b3 -68 x (b1 + b2)) x
2) × 4) × 12 96 × b3 operations are executed. In this case, the subtracter 81 is included in the shifter 82h1 of the arithmetic unit 82h.
The output (b3) of h is input, the outputs of the third and fourth flip-flops of the shifter 82h1 are added by the adder 82h2, and
This addition result is output by the shifter 82h3 with a delay of one clock, and the output of the first flip-flop of the shifter 82h1 and the output of the fifth flip-flop of the shifter 82h1 are added by the adder 82h4 to obtain 68 × b3 and 96
Xb3 is required. In this case, with respect to the input data shown in the input of FIG. 5, the calculator 82h generates the above-mentioned calculation result as the input data at the timing shown in FIG.

【0085】次いで、ステージ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 circuit 63 of the stage III is proceeded to. In this arithmetic circuit 63, the arithmetic circuit 62 of stage II
The outputs of the arithmetic units 82a and 82b are given to the adder 83a and the subtractor 83b.
The output of d is given to the subtractor 83c and the adder 83d,
Further, the outputs of the arithmetic units 82e and 82f are given to the adder 83e and the subtractor 83f, and the outputs of the arithmetic units 82g and 82h are given to the subtractor 83 and the adder 83h. As a result, the adder 83a becomes the arithmetic unit 82a of the arithmetic circuit 82 of the stage II.
And the output of the calculator 82b ((a0 + a3) ×
16+ (a1 + a2) × 16) × 2 is output, and the subtracter 83
b is the result of subtracting the output of the computing unit 82b from the computing unit 82a of the computing circuit 62 of stage II ((a0 + a3) × 16−
(A1 + a2) × 16) × 2 is output, and the subtractor 83c outputs the arithmetic unit 82c from the arithmetic unit 82c of the arithmetic circuit 62 of the stage II.
The result of subtracting the output of d ((a0-a3) x 40- (a1
-A2) × 96) × 2 is output, and the adder 83d adds the outputs of the arithmetic unit 82c and the arithmetic unit 82d of the arithmetic circuit 62 of stage II ((a0-a3) × 96 + (a1-a)
2) x 40) x 2 will be output. Further, the adder 83e adds the outputs of the arithmetic units 82e and 82f of the arithmetic circuit 82 of the stage II (48 × (b2-b)
1) + 68 × b0) × 2 is output, and the subtractor 83f subtracts the output of the arithmetic unit 82f from the arithmetic unit 82e of the arithmetic circuit 62 of stage II (96 × b0-68 × (b2-b)
1)) × 2 is output, and the subtractor 83g subtracts the output of the arithmetic unit 82h from the arithmetic unit 82g of the arithmetic circuit 62 of stage II to output (96 × b3−68 × (b1 + b2)) × 2, The adder 83h adds the output of the arithmetic unit 82g of the arithmetic circuit 62 of the stage II and the output of the arithmetic unit 82h (48
Outputs x (b1 + b2) + 68 × b3) × 2. In this case, each adder 83 is added 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.

【0086】次いで、ステージ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 circuit 64 of the stage IV is proceeded to. In this arithmetic circuit 64, the arithmetic circuit 6 of stage III
The output of the adder 83a of 3 is given to the calculator 84a, and similarly, the output of the subtractor 83b is given to the calculator 84b, the output of the subtractor 83c is given to the calculator 84c, and the output of the adder 83d is given to the calculator 84d. , The output of the adder 83e is the calculator 84e
The output of the subtractor 83f is supplied to the calculator 84f
The output of g is given to the calculator 84g, and the output of the adder 83h is given to the calculator 84h. As a result, the computing unit 8
4a is the output of the adder 83a of the arithmetic circuit 63 of stage III ((a0 + a3) × 16 + (a1 + a2) × 16) × 2
The calculation of × 8 × 46 is executed with respect to, and the calculation result is output as output data F0. Further, the computing unit 84b is
The operation of the output ((a0 + a3) * 16- (a1 + a2) * 16) * 2 of the subtractor 83b of the operation circuit 63 of the stage III is executed by * 8 * 46 and the operation result is output as the output data F4. . Similarly, the arithmetic unit 84c outputs the output of the subtractor 83c ((a0
-A3) x 40- (a1-a2) x 96) x 2 for x
8 × 10 calculation is executed, and the calculation result is output data F
Output as 6. The computing unit 84d is the stage III.
Output of the adder 83d of the arithmetic circuit 63 ((a0-a3) ×
96+ (a1−a2) × 40) × 2 is subjected to an operation of × 8 × 10 and the result of the operation is output as output data F2.

【0087】また、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 arithmetic unit 84e
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 given to the shifter 84e4, the output of the subtractor 84e3 is subtracted from the output of the shifter 84e4 by the subtractor 84e5, and the operation result is output as output data F7. The output of the subtractor 83f ((96 * b0-68 * (b2-b1)) * 2) 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 device 83f is added by the adder 84f2. The subtractor 84f3 subtracts the output of the shifter 84f1 from the output of the adder 84g2 described later. The output of the subtractor 84f3 is given to the shifter 84f4,
The output of the subtracter 84f3 is subtracted from the output of the shifter 84f4 by the subtractor 84f5, and the calculation result is output as output data F3. Also, the shifter 82 of the computing 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. Further, the output of the adder 84f2 and the output of the shifter 84g1 are compared with the adder 84g3.
Add with. The output of the adder 84g3 is given to the shifter 84g4, the output of the adder 84g3 is subtracted from the output of the shifter 84g4 by the subtractor 84g5, and the operation result is output as output data F5. Further, the output of the adder 83h ((48 × (b1 +
b2) + 68 × b3) × 2) is input, and this shifter 84
The output of h1 and the output of the adder 83h are added by the adder 84h2, and the output of the first flip-flop of the shifter 84e1 and the output of this adder 84h2 are added by the adder 84h3.
Subtract with. The output of the adder 84h3 is given to the shifter 84h4, the output of the adder 84h3 is subtracted from the output of the shifter 84h4 by the subtractor 84h5, and the operation result is output as output data F1. In this case, Stage I above
Each of the arithmetic units 84a to 84h of the V arithmetic circuit 64 executes the serial arithmetic operation on the input data of FIG. 5 and generates the arithmetic result as the output data F0 to F7 at the timing shown in FIG. Like

【0088】以上の説明は、DCT演算処理の場合であ
るが、データ変換演算装置51による逆DCT演算処理
の場合も上述した場合と同様である。
The above description is for the case of the DCT calculation process, but the case of the inverse DCT calculation process by the data conversion calculation device 51 is similar to the above case.

【0089】この場合は図5に示すように入力データF
0〜F7がステージIVの演算回路74〜ステージIの演算
回路71の順で与えられるようになる。
In this case, as shown in FIG. 5, the input data F
0 to F7 are given in the order of the arithmetic circuit 74 of stage IV to the arithmetic circuit 71 of stage I.

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

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

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

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

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

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

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

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

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

【0099】[0099]

【発明の効果】請求項1、2、3、4、5、6、7、
8、9、10及び11記載の発明によれば、データ変換
演算手段の係数を整数の比に置き換えるとともに、該整
数の比に置き換えることにより生じたゲインの変化を、
前記量子化手段により調整するようにしているので、単
にシリアル回路を実現していた場合に比べ、回路規模を
大幅に小さくすることができるとともに、シリアルの段
数を減少させて処理速度を向上させることができる。
The effects of the present invention are set forth in claims 1, 2, 3, 4, 5, 6, 7.
According to the inventions of 8, 9, 10 and 11, the coefficient of the data conversion calculation means is replaced with an integer ratio, and the change in the gain caused by the replacement with the integer ratio,
Since the adjustment is performed by the quantizing means, the circuit scale can be significantly reduced and the processing speed can be improved by reducing the number of serial stages as compared with the case where only a serial circuit is realized. You can

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

10 データ記憶装置 11 パラレル−シリアル変換装装置 13 シリアル−パラレル変換装置 51 量子化装置 50 データ変換演算装置 52 制御装置 61,71 ステージIの演算回路 62,72 ステージIIの演算回路 63,73 ステージIIIの演算回路 64,74 ステージIVの演算回路 65〜69 スイッチ 10 Data Storage Device 11 Parallel-Serial Conversion Device 13 Serial-Parallel Conversion Device 51 Quantization Device 50 Data Conversion Operation Device 52 Control Device 61,71 Stage I Operation Circuit 62,72 Stage II Operation Circuit 63,73 Stage III Arithmetic circuit 64,74 Stage IV arithmetic circuit 65-69 switch

【数3】 [Equation 3]

【数4】 [Equation 4]

Claims (11)

【特許請求の範囲】[Claims] 【請求項1】 所定のデータを記憶するデータ記憶手段
と、 前記データ記憶手段から出力されたデータに対して所定
の係数に基づいてシリアル演算によりデータ変換演算を
実行するデータ変換演算手段と、 前記データ変換演算手段によるデータ変換後のデータに
対して量子化演算を実行する量子化手段と、 前記データ記憶手段、前記データ変換演算手段及び前記
量子化手段を制御をする制御手段とを備えたデータ圧縮
伸張装置であって、 前記データ変換演算手段の係数を整数の比に置き換える
とともに、該整数の比に置き換えることにより生じたゲ
インの変化を、前記量子化手段により調整するようにし
たことを特徴とするデータ圧縮伸張装置。
1. Data storage means for storing predetermined data; data conversion operation means for performing data conversion operation on data output from the data storage means by serial operation based on a predetermined coefficient; Data including a quantizing means for executing a quantizing operation on the data after the data conversion by the data converting and calculating means, and a control means for controlling the data storing means, the data converting and calculating means and the quantizing means A compression / expansion device, wherein the coefficient of the data conversion calculation means is replaced with an integer ratio, and a change in gain caused by the replacement with the integer ratio is adjusted by the quantization means. Data compression / expansion device.
【請求項2】 所定のデータを記憶するデータ記憶手段
と、 前記データ記憶手段のデータをパラレルデータからシリ
アルデータに変換するパラレル−シリアル変換手段と、 前記パラレル−シリアル変換手段から出力されたデータ
に対して所定の係数に基づいてシリアル演算によりデー
タ変換演算を実行するデータ変換演算手段と、 前記データ変換手段から出力されるシリアルデータをパ
ラレルデータに変換し、前記データ記憶手段に書き込む
シリアル−パラレル変換手段と、 前記データ変換演算手段によるデータ変換後のデータに
対して量子化演算を実行する量子化手段と、 前記データ記憶手段、前記パラレル−シリアル変換手
段、前記データ変換演算手段、前記シリアル−パラレル
変換手段及び前記量子化手段を制御をする制御手段とを
備えたデータ圧縮伸張装置であって、 前記データ変換演算手段の係数を整数の比に置き換える
とともに、該整数の比に置き換えることにより生じたゲ
インの変化を、前記量子化手段により調整するようにし
たことを特徴とするデータ圧縮伸張装置。
2. Data storage means for storing predetermined data, parallel-serial conversion means for converting the data of the data storage means from parallel data to serial data, and data output from the parallel-serial conversion means. On the other hand, data conversion operation means for executing data conversion operation by serial operation based on a predetermined coefficient, and serial-parallel conversion for converting serial data output from the data conversion means into parallel data and writing the parallel data in the data storage means. 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 A conversion means and a control means for controlling the quantization means; In the data compression / expansion device, the coefficient of the data conversion calculation means is replaced with an integer ratio, and a change in gain caused by the replacement with the integer ratio is adjusted by the quantization means. A data compression / expansion device.
【請求項3】 所定のデータを記憶するデータ記憶手段
と、 前記データ記憶手段から出力されたデータに対して所定
の係数に基づいてシリアル演算によりデータ変換演算を
実行するデータ変換演算手段と、 前記データ変換演算手段によるデータ変換後のデータに
対して量子化演算を実行する量子化手段と、 前記データ記憶手段、前記データ変換演算手段及び前記
量子化手段を制御をする制御手段とを備えたデータ圧縮
伸張装置であって、 前記データ変換演算手段のデータ変換演算式の係数の値
を2のべきで表現するとともに、該係数の値を2のべき
で表現するとき所定以上ビット数が大きくなる部分につ
いては該係数を整数の比に置き換え、該整数の比に置き
換えることにより生じたゲインの変化を、前記量子化手
段により調整するようにしたことを特徴とするデータ圧
縮伸張装置。
3. Data storage means for storing predetermined data, data conversion operation means for executing data conversion operation on the data output from said data storage means by serial operation based on a predetermined coefficient, Data including a quantizing means for executing a quantizing operation on the data after the data conversion by the data converting and calculating means, and a control means for controlling the data storing means, the data converting and calculating means and the quantizing means A compression / expansion device, wherein the value of the coefficient of the data conversion arithmetic expression of the data conversion arithmetic means is represented by a power of 2, and when the value of the coefficient is represented by a power of 2, the number of bits becomes larger than a predetermined number. As for, the coefficient is replaced with an integer ratio, and a change in gain caused by replacing the coefficient with an integer ratio is adjusted by the quantizing means. Data compression and expansion device, characterized in that the.
【請求項4】 前記データ変換演算手段は、データに対
してシリアル演算により直交変換を実行する直交変換手
段であることを特徴とする請求項1、請求項2又は請求
項3の何れかに記載のデータ圧縮伸張装置。
4. The data conversion calculation means is an orthogonal conversion means for performing orthogonal conversion on data by serial operation, according to claim 1, claim 2 or claim 3. Data compression and decompression device.
【請求項5】 前記データ変換演算手段は、データに対
してシリアル演算により離散コサイン変換(DCT)を
実行する離散コサイン変換手段であることを特徴とする
請求項1、請求項2又は請求項3の何れかに記載のデー
タ圧縮伸張装置。
5. The data transformation calculation means is a discrete cosine transformation means for performing a discrete cosine transformation (DCT) on the data by a serial computation, wherein the data transformation calculation means is a discrete cosine transformation means. The data compression / decompression device according to any one of 1.
【請求項6】 前記データ変換演算手段は、入力された
データを所定のクロックに応答して順次移動させるシリ
アル演算器を含んで構成されることを特徴とする請求項
1、請求項2又は請求項3の何れかに記載のデータ圧縮
伸張装置。
6. The data conversion calculation means is configured to include a serial calculation unit that sequentially moves input data in response to a predetermined clock. Item 4. The data compression / decompression device according to any one of Items 3.
【請求項7】 前記データ変換演算手段は、データ変換
演算式の係数の値を2のべきで表現したシリアル回路に
より構成し、該シリアル回路によるシリアル演算により
データ変換演算を実行するようにしたことを特徴とする
請求項1、請求項2又は請求項3の何れかに記載のデー
タ圧縮伸張装置。
7. The data conversion calculation means comprises a serial circuit in which the coefficient values of the data conversion calculation expression are expressed as powers of 2, and the data conversion calculation is executed by serial calculation by the serial circuit. The data compression / decompression device according to any one of claims 1, 2 and 3.
【請求項8】 前記データ変換演算手段は、データ変換
演算式の係数の値を2のべきで表現するとともに、該係
数の値を2のべきで表現するとき所定以上ビット数が大
きくなる部分については該係数を整数の比に置き換えた
シリアル回路により構成し、該シリアル回路によるシリ
アル演算によりデータ変換演算を実行するようにしたこ
とを特徴とする請求項1、請求項2又は請求項3の何れ
かに記載のデータ圧縮伸張装置。
8. The data conversion calculation means expresses a coefficient value of a data conversion calculation expression as a power of 2, and when a value of the coefficient is expressed as a power of 2, the number of bits becomes larger than a predetermined value. 4. A serial circuit in which the coefficient is replaced with an integer ratio, and a data conversion operation is executed by a serial operation by the serial circuit. A data compression / decompression device according to claim 1.
【請求項9】 前記データ変換演算手段で用いられるデ
ータ変換演算式は、該データ変換演算式の係数を、前記
量子化手段の量子化演算に用いる量子化係数に含ませる
ように作成したことを特徴とする請求項1、請求項2又
は請求項3の何れかに記載のデータ圧縮伸張装置。
9. The data conversion calculation formula used in the data conversion calculation means is created such that the coefficient of the data conversion calculation formula is included in the quantized coefficient used in the quantization calculation of the quantization means. The data compression / decompression device according to any one of claims 1, 2 and 3.
【請求項10】 前記量子化手段によるゲインの調整
は、前記データ変換演算手段の係数を整数の比に変える
ことにより生じたゲイン変化分を吸収させるように構成
された量子化テーブルにより行なわれることを特徴とす
る請求項1、請求項2又は請求項3の何れかに記載のデ
ータ圧縮伸張装置。
10. The adjustment of the gain by the quantizing means is performed by a quantizing table configured to absorb a gain change caused by changing the coefficient of the data conversion calculating means to an integer ratio. The data compression / decompression device according to any one of claims 1, 2 and 3.
【請求項11】 前記データ変換演算手段の係数の整数
の比への置き換えは、該係数を整数値に置き換えること
により行なうようにしたことを特徴とする請求項1、請
求項2、請求項3、請求項8又は請求項10の何れかに
記載のデータ圧縮伸張装置。
11. The method according to claim 1, wherein replacement of the coefficient of the data conversion calculation means by an integer ratio is performed by replacing the coefficient by an integer value. The data compression / decompression device according to claim 8 or 10.
JP4360889A 1992-12-30 1992-12-30 Data compression/expansion device Pending JPH06204885A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4360889A JPH06204885A (en) 1992-12-30 1992-12-30 Data compression/expansion device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4360889A JPH06204885A (en) 1992-12-30 1992-12-30 Data compression/expansion device

Publications (1)

Publication Number Publication Date
JPH06204885A true JPH06204885A (en) 1994-07-22

Family

ID=18471343

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4360889A Pending JPH06204885A (en) 1992-12-30 1992-12-30 Data compression/expansion device

Country Status (1)

Country Link
JP (1) JPH06204885A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0816951A2 (en) * 1996-06-28 1998-01-07 Sony Corporation Image data converting method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0816951A2 (en) * 1996-06-28 1998-01-07 Sony Corporation Image data converting method
EP0816951A3 (en) * 1996-06-28 1998-08-12 Sony Corporation Image data converting method
US6108440A (en) * 1996-06-28 2000-08-22 Sony Corporation Image data converting method

Similar Documents

Publication Publication Date Title
Shams et al. NEDA: A low-power high-performance DCT architecture
JP4560033B2 (en) Method for decoding video or image data
US5825680A (en) Method and apparatus for performing fast division
US7730116B2 (en) Method and system for fast implementation of an approximation of a discrete cosine transform
JPH098665A (en) Transforming and encoding system for digital signal for enabling reversible transformation
US7236997B2 (en) Filter processing apparatus and method
US5555321A (en) Image data binary coding method and apparatus
JPH06204885A (en) Data compression/expansion device
JP3099564B2 (en) Data compression / decompression device
US7555510B2 (en) Scalable system for inverse discrete cosine transform and method thereof
JPH08307868A (en) Moving image decoder
JP3052516B2 (en) Encoded data processing device
JPH06204887A (en) Data compression/expansion device
JP3225614B2 (en) Data compression device
US20090030964A1 (en) Matrix operation device
JP3547567B2 (en) Discrete cosine transformer
JPH06204886A (en) Data compression/expansion device
JPH04222122A (en) Data compressor
JP2816295B2 (en) Discrete cosine transform method and discrete cosine transform circuit
JPH04222121A (en) Data compressor
JPH0646269A (en) Expansion method and compression method for still picture data or device executing the methods
JPH06205391A (en) Data compander
KR100249088B1 (en) Apparatus and method of idct for compressing and restoring image signal
KR100240002B1 (en) Image signal compression and discrete cosine transform device for decompression
JP2734131B2 (en) Discrete cosine converter

Legal Events

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

Free format text: PAYMENT UNTIL: 20090109

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100109

Year of fee payment: 12

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100109

Year of fee payment: 12