JPH04278668A - Two-dimensional method and device for discrete cosine transformation - Google Patents

Two-dimensional method and device for discrete cosine transformation

Info

Publication number
JPH04278668A
JPH04278668A JP3230641A JP23064191A JPH04278668A JP H04278668 A JPH04278668 A JP H04278668A JP 3230641 A JP3230641 A JP 3230641A JP 23064191 A JP23064191 A JP 23064191A JP H04278668 A JPH04278668 A JP H04278668A
Authority
JP
Japan
Prior art keywords
data
dimensional
dimensional dct
groups
addition
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
JP3230641A
Other languages
Japanese (ja)
Inventor
Gye-Jong Kim
金 啓 鐘
Sang-Yook Lee
商 郁 李
Nam-Ik Cho
趙 南 ▲イク▼
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JPH04278668A publication Critical patent/JPH04278668A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K21/00Details of pulse counters or frequency dividers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

PURPOSE: To carry out the two-dimensional DCT at a high speed by performing the two-dimensional DCT processing to the (N×N) digital data through N times of one-dimensional DCT, the addition and a shift process. CONSTITUTION: A buffer 100 inputs the (N×N) digital data, and a reconstruction part 200 rearranges the digital data into N pieces of groups so as to ensure the addition of cosine functions equal to the core of the one-dimensional DCT and in order to transform the multiplication of cosine functions, i.e., the core of the two-dimensional DCT into the addition of cosine functions. A 1st adder 300 performs the addition or subtraction of the groups of odd order numbers corresponding to the groups of even order numbers adjacent to each other among those N pieces of rearranged groups and generates N/2 pieces of groups. These generated groups are sent to a one-dimensional pct part 400 where the one-dimensional DCT data to the 2/N pieces of groups are generated. A 2nd adder 500 generates the two-dimensional DCT data by carrying out the addition/ subtraction and a shift operation to the one-dimensional DCT data at log2 N pieces of stages.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明は、データ伝送システムの
2次元離散コサイン変換(以下“2次元DCT”と称す
る)方法および装置に関するもので、特に2次元DCT
の演算時間を短縮して高速に2次元DCTを遂行するこ
とができる方法および装置に関するものである。
TECHNICAL FIELD The present invention relates to a two-dimensional discrete cosine transform (hereinafter referred to as "two-dimensional DCT") method and apparatus for a data transmission system, and particularly to a two-dimensional discrete cosine transform (hereinafter referred to as "two-dimensional DCT") method and apparatus.
The present invention relates to a method and apparatus that can perform two-dimensional DCT at high speed by shortening calculation time.

【0002】0002

【従来の技術】一般に、データ伝送時に送信側からはデ
ータ量を圧縮して伝送し、受信側からは圧縮データを本
来のデータに変換して処理する。上記のように圧縮され
たデータを変換する場合、現在広く使用されている方式
が2次元DCT方式である。このとき、2次元のデータ
列を[X1j:i,j=0,1,2…N−1]とし、2
次元DCTの列を[Ymn:m,n=0,1,2…N−
1]であるとすると、2次元DCTは数1式のように表
現することができる。
2. Description of the Related Art Generally, when transmitting data, the transmitting side compresses the amount of data and transmits it, and the receiving side converts the compressed data into original data and processes it. When converting data compressed as described above, the two-dimensional DCT method is currently widely used. At this time, let the two-dimensional data string be [X1j:i,j=0,1,2...N-1], and 2
The column of dimensional DCT is [Ymn: m, n=0, 1, 2...N-
1], the two-dimensional DCT can be expressed as shown in Equation 1.

【0003】0003

【数1】 ここで、スケールファクタである4U(m) U(n)
 /N2 は便宜上省略し、上記の数1式は非正規化の
DCT形態Ymn(非正規形)に定義すると下記の数2
式になる。
[Equation 1] Here, the scale factor is 4U(m) U(n)
/N2 is omitted for convenience, and the above equation 1 becomes the following equation 2 when defined in the non-normalized DCT form Ymn (non-normal form)
It becomes a ceremony.

【0004】0004

【数2】 したがつて、上記の数2式を見るとymn(非正規形D
CT)は、行方向で、 N−1 Σ  COS(2i+1)mπ i=0 を実行してから、その後、 N−1 Σ  COS(2j+1)nπ/2N   j=0 を実行することにより、N回の一次元DCTにより表わ
される。
[Mathematical 2] Therefore, looking at the above formula 2, ymn (non-normal form D
CT) is repeated N times in the row direction by executing N-1 Σ COS(2i+1)mπ i=0 and then N-1 Σ COS(2j+1)nπ/2N j=0 It is expressed by one-dimensional DCT of .

【0005】即ち、上記2式は2次元DCTは下記の3
式で表現することができる。
[0005] That is, the two-dimensional DCT of the above two equations is as follows:
It can be expressed as an expression.

【0006】[0006]

【数3】 それ故、上記の2式および3式でN×Nの2次元デイジ
タルデータに対してDCTを遂行しようとする場合には
、図1のような構成を必要とする。即ち、入力するN×
Nの2次元デイジタルデータに対して行方向にN回の1
次元DCTを遂行してから、その結果をマトリツクス転
置装置(matrix transposer) 2に
より行列形式で転置され、このマトリツクス転置装置2
の結果出力を再び列方向にN個の1次元DCTを遂行す
ることによつて、2次元DCTであるYmnを求めるこ
とができる。
##EQU00003## Therefore, when performing DCT on N.times.N two-dimensional digital data using the above equations 2 and 3, a configuration as shown in FIG. 1 is required. That is, input N×
N times of 1 in the row direction for N two-dimensional digital data
After performing the dimensional DCT, the result is transposed in matrix form by a matrix transposer 2.
By again performing N one-dimensional DCTs on the resultant output in the column direction, Ymn, which is a two-dimensional DCT, can be obtained.

【0007】しかし、上記のような方式でN×Nの2次
元デイジタルデータに対して2次元DCTを遂行する場
合、2N個の1次元DCTを使用することによつて、D
CT演算時間ードウエアの具現化が難しされたが、例え
ばM.A.Haqueの“二次元高速コサイン変換(A
 two − dimensionalfast co
sine transform) ”[ IEEETr
ans.Acoust., Speech,Signa
l Processing,Vol.ASSP − 3
3,PP.1532 − 1539,Dec.1985
] と、C.Maの“高速再帰型二次元コサイン変換(
A fast recursive two dime
nsional cosine transform)
 ” [Intelligent Robotsand
 Computer Vision : Sevent
h in a Series,David P.Cas
asent,Editor,Proc.SPIE 10
02,PP.541−548,1988]等がある。
However, when performing two-dimensional DCT on N×N two-dimensional digital data using the above method, by using 2N one-dimensional DCTs, D
Although it has been difficult to implement CT calculation time software, for example, M. A. Haque's “Two-dimensional fast cosine transform (A
two - dimensionalfast co
sine transform)” [ IEEETr
ans. Acoust. , Speech, Signa
lProcessing, Vol. ASSP-3
3, PP. 1532-1539, Dec. 1985
] and C. Ma's “fast recursive two-dimensional cosine transform (
A fast recursive two dime
cosine transform)
” [Intelligent Robotsand
Computer Vision: Seven
h in a Series, David P. Cas
asent, Editor, Proc. SPIE10
02, PP. 541-548, 1988], etc.

【0008】上記のような刊行物のなかで、1次元DC
Tを利用しないでもって2次元DCTを実行する手法が
いくつか提案されている。したがつて、上記のような方
式で2次元DCTを実行すると、1次元DCT回路と無
関係に別途のハードウエアを構成しなければならなかつ
たが、DCT実行時に乗算回数も従来の方法に比べて2
5%程度減少されるので、DCT演算時間も依然として
長いままで高速DCTの実現が難しい問題点がある。
In the above-mentioned publications, one-dimensional DC
Several methods have been proposed for performing two-dimensional DCT without using T. Therefore, when performing two-dimensional DCT using the method described above, it was necessary to configure separate hardware independent of the one-dimensional DCT circuit, but the number of multiplications when performing DCT is also lower than in the conventional method. 2
Since the reduction is about 5%, the DCT operation time remains long, making it difficult to realize high-speed DCT.

【0009】[0009]

【発明が解決しようとしている課題】したがつて、本発
明の目的は、N×Nのデイジタルデータに対して、N回
の1次元DCTおよび加算,シフト工程により2次元D
CT処理を施して、高速に2次元DCTを実行すること
ができる方法および装置を提供することにある。
SUMMARY OF THE INVENTION Therefore, it is an object of the present invention to convert N×N digital data into two-dimensional DCT by N times of one-dimensional DCT, addition, and shift steps.
An object of the present invention is to provide a method and apparatus that can perform CT processing and perform two-dimensional DCT at high speed.

【0010】本発明の他の目的は、N×Nデイジタルデ
ータを2次元DCTする場合、2次元DCTでコサイン
関数の乗算形態を加算形態に変換して、これを1次元変
換の合計に作ることによつて、乗算回数を減少させるこ
とができる方法および装置を提供することにある。
Another object of the present invention is to convert the multiplication form of a cosine function into an addition form in the two-dimensional DCT when N×N digital data is subjected to two-dimensional DCT, and to create a sum of one-dimensional transformations. An object of the present invention is to provide a method and apparatus that can reduce the number of multiplications.

【0011】本発明のまた他の目的は、N×Nデイジタ
ルデータを受信して2次元DCTのコサイン関数の乗算
形態を加算形態に再配列し、再配列されたデイジタルデ
ータに第1の加算を施し、この第1加算の結果値を利用
してN回の1次元DCTを行なってから、これを第2の
加算を行なうことによつて2次元DCTを実行すること
ができる方法および装置を提供することにある。
Still another object of the present invention is to receive N×N digital data, rearrange the multiplication form of a cosine function of a two-dimensional DCT into an addition form, and perform a first addition on the rearranged digital data. Provides a method and apparatus capable of performing two-dimensional DCT by performing N times of one-dimensional DCT using the result value of the first addition, and then performing second addition. It's about doing.

【0012】本発明のまた他の目的は、N×Nデイジタ
ルデータを2次元DCTする場合、1次元変換形態が1
次元DCTと同一にすることによつて、N回の1次元D
CTで2次元DCT結果を得ることができるようにN×
NデイジタルデータをN個のグループで再配列すること
ができる方法および装置を提供することにある。
Another object of the present invention is that when N×N digital data is subjected to two-dimensional DCT, the one-dimensional transformation form is
By making it the same as the dimensional DCT, N times one-dimensional D
N× so that two-dimensional DCT results can be obtained with CT
An object of the present invention is to provide a method and apparatus capable of rearranging N digital data into N groups.

【0013】本発明のまた他の目的は2次元DCT実行
時に再配列されたNグループのデータでN/2グループ
の奇数グループデータとN/2グループの偶数グループ
データを第1加算および減算し、この結果値で1次元D
CTを実行し、この1次元DCT結果値をlog2 N
端に第2加算および減算して2次元DCTを実行するこ
とができる方法および装置を提供することにある。
Another object of the present invention is to first add and subtract N/2 groups of odd group data and N/2 groups of even group data with the rearranged N groups of data when performing two-dimensional DCT; One-dimensional D with this result value
Execute CT and convert this one-dimensional DCT result value to log2 N
The object of the present invention is to provide a method and apparatus capable of performing two-dimensional DCT by performing second addition and subtraction at the ends.

【0014】本発明のまた他の目的は、N×Nデイジタ
ルデータを2次元DCTするときに、1次元DCTをパ
イプライン構造で実行するシステムにおいて再配列され
たNグループのデータ中のN/2グループのデータを第
1加算する間に、残りN/2グループのデータを1次元
DCTし、第1加算されたN/2グループデータを1次
元DCTする間2次元DCTが実行された残りのN/2
グループデータを第1加算することによつて、1次元D
CT回数をN/2回に圧縮することができる方法および
装置を提供することにある。
Another object of the present invention is to perform two-dimensional DCT on N×N digital data, and in a system that executes one-dimensional DCT in a pipeline structure, N/2 of rearranged N groups of data is During the first addition of group data, one-dimensional DCT is performed on the remaining N/2 group data, and while one-dimensional DCT is performed on the first added N/2 group data, two-dimensional DCT is performed on the remaining N /2
By first adding the group data, one-dimensional D
The object of the present invention is to provide a method and apparatus that can compress the number of CT operations to N/2 times.

【0015】[0015]

【実施例】以下、本発明を図面を参照して詳細に説明す
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be explained in detail below with reference to the drawings.

【0016】図2は本発明を実行するための2次元DC
Tシステム構成図であり、図2Aは2次元DCTの構成
図であり、図2Bは2次元IDCTの構成図である。
FIG. 2 shows a two-dimensional DC for implementing the present invention.
FIG. 2A is a configuration diagram of a two-dimensional DCT, and FIG. 2B is a configuration diagram of a two-dimensional IDCT.

【0017】上記図2Aを参照して、2次元DCTの構
成について説明する。バッファ100はN×Nの2次元
デイジタルデータを入力する。再構成部200は上記入
力バッファ100の出力を入力する。この再構成部20
0は、2次元DCTの核(kernel) であるコサ
イン関数の乗算をコサイン関数の加算に変換するために
、上記コサイン関数の加算が1次元DCTの核と同一に
なるようにデータをN個のグループに再配列する。第1
の加算器300は、上記再配列部200の出力を入力し
て、再配列されたN個のグループの、隣接した偶数番目
のグループのデータにまたはデータから、それらに夫々
対応する奇数番目のグループのデータを加算若しくは減
算することにより、N/2個のグループの加算データと
減算データとを発生する。N/2個のグループの加算デ
ータおよび減算データは一次元DCT部400に送られ
、このDCT部400は、N/2個のグループ加算およ
び減算データに対する1次元DCTデータを発生する1
次元DCT演算を行なう。第2の加算器500は一次元
DCT部400の出力を受けて、log2 N個のステ
ージにおける加減算およびシフト動作を実行することに
よつて2次元DCTデータを発生する。出力バッファ6
00は第2加算部500の出力をバッファする。
The configuration of the two-dimensional DCT will be explained with reference to FIG. 2A. The buffer 100 receives N×N two-dimensional digital data. The reconstruction unit 200 receives the output of the input buffer 100 as input. This reconstruction unit 20
0 is the kernel of the two-dimensional DCT, in order to convert the multiplication of the cosine function into the addition of the cosine function, the data is divided into N pieces so that the addition of the cosine function is the same as the kernel of the one-dimensional DCT. Rearrange into groups. 1st
The adder 300 inputs the output of the rearrangement section 200 and adds data to or from adjacent even-numbered groups of the rearranged N groups to odd-numbered groups corresponding thereto. By adding or subtracting the data, N/2 groups of addition data and subtraction data are generated. The N/2 groups of addition data and subtraction data are sent to a one-dimensional DCT section 400, which generates one-dimensional DCT data for the N/2 groups of addition and subtraction data.
Perform dimensional DCT operations. The second adder 500 receives the output of the one-dimensional DCT section 400 and generates two-dimensional DCT data by performing addition, subtraction, and shift operations in log2N stages. Output buffer 6
00 buffers the output of the second adder 500.

【0018】また、図2Bの2次元逆DCT (以下、
二次元IDCTと称する)は図2Aのような2次元DC
Tの実行順序と逆順に実行される。
In addition, the two-dimensional inverse DCT (hereinafter referred to as
(referred to as two-dimensional IDCT) is a two-dimensional DC as shown in Figure 2A.
It is executed in the reverse order of execution of T.

【0019】図3A,図3Bは8×8の入力データを8
個のグループに再配列する工程を例示した図面である。 図3Aのように8×8の入力データを入力した後に、そ
れらのデータは、コサイン関数の和が1次元DCTの核
と同一になるように、8個のグループに再配列される。 その結果、2次元DCTの核であるコサイン関数の乗算
をコサイン関数の和の形に変換することができる。
FIGS. 3A and 3B show 8×8 input data
FIG. After inputting 8×8 input data as shown in FIG. 3A, the data are rearranged into eight groups such that the sum of the cosine functions is the same as the kernel of the one-dimensional DCT. As a result, multiplication of cosine functions, which is the core of two-dimensional DCT, can be converted into the form of a sum of cosine functions.

【0020】図4A乃至図4Cは8×8のDCTの実施
例を示す図である。この実施例では、上記再配列された
8グループのデータを入力する第1の加算器300(即
ち、301−308)は、グループ(R1a,R3a,
R5a,R7a)のデータセットを、隣接したグループ
(R1b,R3b,R5b,R7b)のデータに(デー
タから)を各々1:1に加算または減算して、2個のグ
ループの加算データと減算データを発生する。1次元D
CT部400(即ち、401−408)は、上記第1加
算部300の出力を入力し、前記加算データおよび減算
データに対する8グループのデータを各々1次元DCT
する。さらに、第2の加算器500は、1次元DCT部
400からDCTデータを入力して、log2 N個の
ステージの加減算とシフト動作を行なって、2次元DC
Tデータを発生する。
FIGS. 4A to 4C are diagrams showing an example of an 8×8 DCT. In this embodiment, the first adder 300 (i.e., 301-308) inputting the rearranged 8 groups of data has groups (R1a, R3a,
The data sets of R5a, R7a) are added or subtracted from the data of adjacent groups (R1b, R3b, R5b, R7b) at a ratio of 1:1, respectively, to obtain added data and subtracted data of the two groups. occurs. 1-dimensional D
The CT section 400 (i.e., 401-408) inputs the output of the first addition section 300, and performs one-dimensional DCT on each of the eight groups of data for the addition data and subtraction data.
do. Further, the second adder 500 inputs the DCT data from the one-dimensional DCT unit 400, performs addition/subtraction and shift operations in log2 N stages, and converts the data into two-dimensional DC data.
Generate T data.

【0021】このとき、上記図4A乃至4Cで、○は加
算器を意味し、点線部は伝達因数(transfer 
factor) が“−1”であることを意味し、実線
部は伝達因数が“1”であることを意味し、1/2を付
された[→]記号は1/2の乗算を意味し、これはシフ
ト動作に等しい。図4Aは、再配列された8グループの
データセットX1jがその任意の奇数グループとそれに
隣接するグループのデータ同志で互いに加算および減算
されてから、これらの加算データ及び減算データに対し
て1次元DCTが実行されて、加算グループデータfp
1と減算グループデータgp1とが発生する工程を示し
ている。
At this time, in FIGS. 4A to 4C, ○ means an adder, and the dotted line part represents a transfer factor.
factor) is “-1”, the solid line part means the transfer factor is “1”, and the [→] symbol with 1/2 means multiplication by 1/2. , which is equivalent to a shift operation. FIG. 4A shows that the rearranged data set X1j of 8 groups is added and subtracted between the data of any odd numbered group and its adjacent group, and then one-dimensional DCT is applied to these added data and subtracted data. is executed and the addition group data fp
1 and subtraction group data gp1 are shown.

【0022】図4Bは加算グループデータfp1に第2
の加算が施されて、2次元DCTデータymnが発生す
る工程を示している。図4Cは減算グループデータgp
1に第2の加算が施されて2次元DCTデータymnが
発生する工程を図示している。
FIG. 4B shows the second addition group data fp1.
ymn is added to generate two-dimensional DCT data ymn. Figure 4C shows subtracted group data gp
1 shows a process in which a second addition is performed on 1 to generate two-dimensional DCT data ymn.

【0023】図5A乃至図5Cは8×8のIDCTの構
成図であつて、図4のような8×8DCTの実行順序と
逆順に実行されることを図示している。
FIGS. 5A to 5C are block diagrams of the 8×8 IDCT, and illustrate that the 8×8 IDCT is executed in the reverse order of the execution order of the 8×8 DCT shown in FIG.

【0024】図6は、図1中の第1加算器300と1次
元DCT部400の他の構成を示す。図6は、入力の2
次元データを1次元DCTしてから第1の(主)加算の
動作を実行したとしても、主加算の実行後の1次元DC
T動作と同一であることを図示している。
FIG. 6 shows another configuration of the first adder 300 and one-dimensional DCT section 400 in FIG. Figure 6 shows the input 2
Even if the first (main) addition operation is performed after performing one-dimensional DCT on the dimensional data, the one-dimensional DC after the main addition is
This figure shows that the operation is the same as the T operation.

【0025】図7は8×8DCTの他の実施例図である
。同図によると、マルチプレクサ701,702および
デマルチプレクサ801,802を利用することにより
、1次元DCT部400の構成は1/2に圧縮される。
FIG. 7 is a diagram showing another embodiment of the 8×8 DCT. According to the figure, by using multiplexers 701 and 702 and demultiplexers 801 and 802, the configuration of one-dimensional DCT section 400 is compressed to 1/2.

【0026】上述の構成に基づいて本発明を図面を参照
して詳細に説明する。
The present invention will be explained in detail based on the above configuration with reference to the drawings.

【0027】本発明は、N×N個の2次元デイジタルデ
ータをDCTする場合において、2次元DCTの計算を
N回の1次元DCT演算により実現することにより、乗
算回数を大幅に圧縮すると共に、高速に2次元DCTを
実行し、併せて、規則性を向上させて、高集積化しうる
構造を提案するものである。
In the case of DCT of N×N two-dimensional digital data, the present invention greatly reduces the number of multiplications by realizing the two-dimensional DCT calculation by N one-dimensional DCT operations. We propose a structure that can perform two-dimensional DCT at high speed, improve regularity, and achieve high integration.

【0028】このために、2次元DCTの核である行方
向および列方向のコサイン関数の乗算をコサイン関数の
加算に変換する。さらに、この変換データデータが1次
元DCTの核と同じになるように、変換されたデータセ
ットがN個の1次元データグループに再配列されなけれ
ばならない。したがつて、再配列部200はN×N個の
2次元デイジタルデータを入力して、2次元DCTの核
であるコサイン関数の乗算をコサイン関数の和に変換す
るときに、上記コサイン関数の合計が1次元DCTの核
と同一になるように入力データをN個のグループに再配
列する。
For this purpose, multiplication of cosine functions in the row and column directions, which is the core of two-dimensional DCT, is converted into addition of cosine functions. Furthermore, the transformed data set must be rearranged into N one-dimensional data groups so that this transformed data data is the same as the kernel of the one-dimensional DCT. Therefore, when inputting N×N two-dimensional digital data and converting the multiplication of cosine functions, which is the core of two-dimensional DCT, into the sum of cosine functions, the rearranging unit 200 converts the sum of the cosine functions into a sum of cosine functions. The input data is rearranged into N groups such that the kernel is the same as the kernel of the one-dimensional DCT.

【0029】以後、上記再配列されたNグループのデー
タは各グループ毎に固有な特性をもつが、この特性に従
って、第1加算器300は夫々のグループのデータの加
算や減算を実行する。したがつて、上記第1加算器30
0はNグループデータを入力して加算または減算工程を
実行するが、このとき、N/2個のグループデータはす
べて2個ずつのデータを加算するものであり、一方、残
りのN/2個のグループに対しては、一つのデータセッ
トが他のデータセットから減算される。従って、第1加
算器300からの結果データは最初のN/2グループに
対する加算データと残りのN/2グループに対する減算
データとからなる。
Thereafter, each group of the rearranged N groups of data has its own characteristics, and the first adder 300 adds and subtracts the data of each group according to these characteristics. Therefore, the first adder 30
0 inputs N group data and executes the addition or subtraction process, but at this time, all N/2 group data are added by two data, while the remaining N/2 For groups of , one data set is subtracted from the other data set. Therefore, the result data from the first adder 300 consists of addition data for the first N/2 groups and subtraction data for the remaining N/2 groups.

【0030】第1加算器300から出力される加算デー
タおよび減算データは各々1次元DCT部400をによ
りDCTデータに変換され、一方、1次元DCT部40
0の出力は、log2 N個のステージでの減算が施さ
れて、第2加算器500によりシフトされて、2次元D
CTデータymnが得られる。したがつて、最終的に得
られる2次元DCTデータymnの中で、nが偶数であ
るものは、第1加算器300で両側データをすべて加算
して1次元DCTを実行した結果の合計であり、一方、
nが奇数のものは第1加算器300で一方のデータで他
方のデータを減算して1次元DCTを実行した結果の合
計になる。
The addition data and subtraction data output from the first adder 300 are each converted into DCT data by a one-dimensional DCT section 400;
The output of 0 is subjected to subtraction in log2N stages and shifted by the second adder 500 to form a two-dimensional D
CT data ymn is obtained. Therefore, among the finally obtained two-dimensional DCT data ymn, those where n is an even number are the sum of the results obtained by adding all the data on both sides in the first adder 300 and performing one-dimensional DCT. ,on the other hand,
When n is an odd number, the first adder 300 subtracts one data from the other data and performs one-dimensional DCT, resulting in the sum of the results.

【0031】上記の内容でN×Nの2次元デイジタルデ
ータを2次元DCTする工程を見てみる。上記で定義の
ように、2次元データ数の列を[Xij:i,j=0,
1,…,N−1]であるとし、2次元DCT数の列を[
Ymn:=0,1,…,N−1]であるとすると、この
関係は下記の4式のように表現される。
Let's take a look at the process of performing two-dimensional DCT on N×N two-dimensional digital data with the above content. As defined above, the column of two-dimensional data number is [Xij:i, j=0,
1,...,N-1], and the sequence of two-dimensional DCT numbers is [
Ymn:=0, 1,...,N-1], this relationship is expressed as in the following four equations.

【0032】[0032]

【数4】 ここで、スケールファクタである4U(m) U(n)
 /N2 は便宜上省略すると、Ymnの非正規化のD
CT形態は、
[Equation 4] Here, the scale factor is 4U(m) U(n)
/N2 is omitted for convenience, and the denormalized D of Ymn
The CT morphology is

【0033】[0033]

【数5】 となる。[Math 5] becomes.

【0034】従って、正規化されたYmnは、Therefore, the normalized Ymn is

【003
5】
003
5]

【数6】 で表わされる。[Math 6] It is expressed as

【0036】この場合、2次元DCTの核のコサイン関
数の乗算は、下記の7式式のようにコサイン関数の加算
に表現することができる。
In this case, the multiplication of the cosine function of the kernel of the two-dimensional DCT can be expressed as the addition of cosine functions as shown in Equation 7 below.

【0037】[0037]

【数7】 ここで、上記の7式を利用すると、上記5式の2次元D
CTのYmnは下記の8式で表現することができる。
[Equation 7] Here, using the above equation 7, the two-dimensional D of the above equation 5
Ymn of CT can be expressed by the following 8 formulas.

【0038】[0038]

【数8】 ここで、m,n=0,1,2,…,N−1である。[Math. 8] Here, m, n=0, 1, 2, . . . , N-1.

【0039】ここで、便宜上、2次元DCTをコサイン
加算の法則を利用して1次元DCTAmnおよびBmn
に分離し、下記9式,10式で定義する。
Here, for convenience, the two-dimensional DCT is transformed into one-dimensional DCTAmn and Bmn using the law of cosine addition.
and is defined by the following equations 9 and 10.

【0040】[0040]

【数9】[Math. 9]

【0041】[0041]

【数10】 であるから、2次元DCTの結果ymnは下記11式で
示すことができる。
[Formula 10] Therefore, the two-dimensional DCT result ymn can be expressed by the following equation 11.

【0042】[0042]

【数11】 いま、上記AmnとBmnに若干のデータの再配列を行
なって上記ymnがN個の1次元DCTの加算で表現で
きるので、N×NのDCTはN個の独立な1次元DCT
により実現される。上記9式および10式が示す変換の
核が1次元変換の核と同じくなるためには、[(2i+
1)m±(2j+1)n]が、ある整数の(2i+1)
倍の形表現されなければならない。このような条件を満
足するためには、(2j+1)を2Nで除算した残りが
、(2i+1)の倍数を2Nで除算した余りと同じくな
るか、あるいは、2Nから(2i+1)の倍数を減算し
たものを2Nで除算した余りと同じでなければならない
。即ち、上記関係は下記12式または13式を満たさな
くてはならない。
[Equation 11] Now, by rearranging the data in the above Amn and Bmn, the above ymn can be expressed by the addition of N one-dimensional DCTs, so the N×N DCT is N independent one-dimensional DCTs.
This is realized by In order for the transformation kernel shown by equations 9 and 10 above to be the same as the one-dimensional transformation kernel, [(2i+
1) m±(2j+1)n] is a certain integer (2i+1)
It must be expressed in double form. In order to satisfy this condition, the remainder after dividing (2j+1) by 2N must be the same as the remainder when dividing a multiple of (2i+1) by 2N, or the multiple of (2i+1) must be subtracted from 2N. It must be the same as the remainder when divided by 2N. That is, the above relationship must satisfy the following equation 12 or 13.

【0043】[0043]

【数12】[Math. 12]

【0044】[0044]

【数13】 上記12式または13式で、pは1とN−1との間の奇
数でなければならないが、これはこの領域外のpはこの
領域内のあるpを代入したときに得られるj数の列と同
一なものを生成するためである。したがつて、上記12
式または13式は14式または15式で表現することが
できる。
[Formula 13] In Equation 12 or 13 above, p must be an odd number between 1 and N-1, which means that p outside this region can be obtained by substituting a certain p within this region. This is to generate the same sequence of j numbers. Therefore, the above 12
Equation or Equation 13 can be expressed as Equation 14 or Equation 15.

【0045】[0045]

【数14】[Math. 14]

【0046】[0046]

【数15】 このとき、p=1,3,5,…,N−1である。[Math. 15] At this time, p=1, 3, 5,..., N-1.

【0047】ここで、iが0からN−1まで変化すると
き、上記12式または13式によつて決定される変数j
の列は互いに異なることを容易に理解することができる
。したがつて、N×Nの大きさの2次元データは上記1
2式または13式の関係式を満足するN個のデータ集合
に分離することができる。それで、各々のデータ集合に
対する上記式8の変換核が1次元DCTの核と同じくな
る。したがつて、p=1,3,5,…,N−1に対して
式14および式15によつて夫々生成されるj数列を相
互に区分するために、下記式16,17が定義される。
Here, when i changes from 0 to N-1, the variable j determined by the above equation 12 or 13
It can be easily understood that the columns are different from each other. Therefore, the two-dimensional data of size N×N is
It is possible to separate into N data sets that satisfy the relational expressions of Equation 2 or Equation 13. Therefore, the transformation kernel of Equation 8 above for each data set is the same as the kernel of one-dimensional DCT. Therefore, in order to mutually separate the j sequences generated by equations 14 and 15, respectively, for p = 1, 3, 5, ..., N-1, the following equations 16 and 17 are defined. Ru.

【0048】[0048]

【数16】[Math. 16]

【0049】[0049]

【数17】 このとき、p=1,3,5,…,N−1である。即ち、
与えられたpに対して[j(p;a):i=0,1,2
,…,N−1]は上記12式によって生成されるj数列
であり、[j(p;b):i=0,1,2,…,N−1
]は上記13式によつて生成されるj数の列である。 したがつて、2次元入力データと[Xij:i,j=0
,1,2,…,N−1]とは、[Xij(p;a):こ
こでi=0,1,2,…,N−1]と[Xij(p;b
) :ここで、 i=0,1,2,…,N−1]のN個
の1次元データに分離することにより、上記式8を1次
元DCTの加算に表現することができる。ここで、上記
1次元データの集合を各々RpaとRpbとで表現して
、式18,式19は次のように表わうことができる。
[Formula 17] At this time, p=1, 3, 5,..., N-1. That is,
For a given p, [j(p;a): i=0,1,2
,...,N-1] is the j sequence generated by the above equation 12, and [j(p;b):i=0,1,2,...,N-1
] is a sequence of j numbers generated by Equation 13 above. Therefore, two-dimensional input data and [Xij:i,j=0
, 1, 2, ..., N-1] are [Xij (p; a): where i = 0, 1, 2, ..., N-1] and [Xij (p; b
): Here, by separating into N one-dimensional data of i=0,1,2,...,N-1], the above equation 8 can be expressed as addition of one-dimensional DCT. Here, Expressions 18 and 19 can be expressed as follows by expressing the set of one-dimensional data as Rpa and Rpb, respectively.

【0050】[0050]

【数18】[Math. 18]

【0051】[0051]

【数19】 pi+(p−1)/2をNにより除算することにより得
られる正確な値は、しかし、前記除算の余りは上記18
式,19式から知ることができる。即ち、除算した結果
の商と前記除算を実行するを行なったときの余りすべて
知っていなければならないので、pi+(p−1)/2
をNにより除することを表わす整数数の列qp1を定義
すると、上記式18および式19で“mod”を使用し
ないで、下記17式および18式で表現することができ
る。
[Formula 19] The exact value obtained by dividing pi+(p-1)/2 by N is, however, the remainder of said division is
It can be known from Equation 19. That is, since you must know the quotient of the division result and the remainder when performing the division, pi+(p-1)/2
By defining a sequence qp1 of integers representing dividing by N, it can be expressed by the following equations 17 and 18 without using "mod" in equations 18 and 19 above.

【0052】[0052]

【数20】[Math. 20]

【0053】[0053]

【数21】 このとき、p=1,3,5,…,N−1である。[Math. 21] At this time, p=1, 3, 5,..., N-1.

【0054】上記20式,21式でデータ再配列を利用
すると、上記式10および式11で表現されたAmnお
よびBmnを下記の式22および23で表現することが
できる。
By using data rearrangement in the above equations 20 and 21, Amn and Bmn expressed in the above equations 10 and 11 can be expressed as the following equations 22 and 23.

【0055】[0055]

【数22】[Math. 22]

【0056】[0056]

【数23】 ここで、pは奇数である。[Math. 23] Here, p is an odd number.

【0057】また、ここで、上記Tpa(m,n),T
pb(m,n),Spa(m,n)およびSpb(m,
n)は下記の式24〜式27で表現される。
[0057] Also, here, the above Tpa (m, n), T
pb (m, n), Spa (m, n) and Spb (m,
n) is expressed by Equations 24 to 27 below.

【0058】[0058]

【数24】[Math. 24]

【0059】[0059]

【数25】[Math. 25]

【0060】[0060]

【数26】[Math. 26]

【0061】[0061]

【数27】 従って、式11で表現されたymnは下記の式28のよ
うに書き換えることができる。
[Formula 27] Therefore, ymn expressed by Equation 11 can be rewritten as shown in Equation 28 below.

【0062】[0062]

【数28】 したがつて、上記ymnが1次元DCTの加算であるこ
とを証明するためには、Tpa(m,n),Tpb(m
,n),Spa(m,n)およびSpb(m,n)が1
次元DCTの加算により示されることを示せばよい。こ
のために、上記式20は式24の対応項に代入すると、
下記の式29で表現することができる。
[Formula 28] Therefore, in order to prove that the above ymn is an addition of one-dimensional DCT, Tpa(m,n), Tpb(m
, n), Spa (m, n) and Spb (m, n) are 1
It suffices to show that it is indicated by addition of dimensional DCT. For this purpose, by substituting the above equation 20 into the corresponding term of equation 24, we get
It can be expressed by Equation 29 below.

【0063】[0063]

【数29】 上記の29式は再び下記の式30,31のように、nが
奇数であるときと、偶数であるときで、区分して表現す
ることができる。
##EQU29## The above equation 29 can be expressed again in terms of when n is an odd number and when it is an even number, as shown in equations 30 and 31 below.

【0064】[0064]

【数30】[Math. 30]

【0065】[0065]

【数31】 このとき、nは奇数である。[Math. 31] At this time, n is an odd number.

【0066】また、上記式11を式25に代入すると下
記の式32を得る。
Further, by substituting the above equation 11 into equation 25, the following equation 32 is obtained.

【0067】[0067]

【数32】 しかし、上記式32は、nが奇数か偶数かにより式33
,34に分けることができる。
[Equation 32] However, the above Equation 32 can be changed to Equation 33 depending on whether n is an odd number or an even number.
, 34.

【0068】[0068]

【数33】 このときnは偶数である。[Math. 33] At this time, n is an even number.

【0069】[0069]

【数34】 このとき、nは奇数である。[Math. 34] At this time, n is an odd number.

【0070】同様にして、式10の対応する項に式26
を代入すると、Spa(m,n)は下記の式35,36
のように表わすことができる。
Similarly, formula 26 is added to the corresponding term of formula 10.
By substituting , Spa (m, n) becomes the following formula 35,
It can be expressed as

【0071】[0071]

【数35】 nは偶数である。[Math. 35] n is an even number.

【0072】[0072]

【数36】 nは奇数である。[Math. 36] n is an odd number.

【0073】また、式27の対応項について式21を置
き換えると、Spbは下記の式37,38の形で表わす
ことができる。
Further, by replacing equation 21 with the corresponding term in equation 27, Spb can be expressed in the form of equations 37 and 38 below.

【0074】[0074]

【数37】 ここで、nは偶数である。[Math. 37] Here, n is an even number.

【0075】[0075]

【数38】 ここでnは奇数。[Math. 38] Here n is an odd number.

【0076】したがつて、上記の式30乃至38を式2
8の夫々の項に代入すると、ymnは下記の式39,4
0で表現することができる。
Therefore, the above equations 30 to 38 can be transformed into equation 2.
By substituting into each term of 8, ymn becomes the following equation 39, 4
It can be expressed as 0.

【0077】[0077]

【数39】 ここでnは偶数。[Math. 39] Here n is an even number.

【0078】[0078]

【数40】 ここでnは奇数。[Math. 40] Here n is an odd number.

【0079】ところが、下記の式41,42はmとnに
ついての入力データ数列[X1j(p;a) +X1j
(p;b) ]の1次元DCTの1つに該当する。
However, Equations 41 and 42 below are based on the input data sequence [X1j(p;a) +X1j
(p;b)] corresponds to one of the one-dimensional DCTs.

【0080】[0080]

【数41】[Math. 41]

【0081】[0081]

【数42】 即ち、再配列されたデータに第1の加算を施して1次元
DCTを実行した結果を示すfplは、下記の43式で
表現することができるが、式41と式42が任意のl(
l=0,1,2,…,N−1)に対して+fplまたは
−fplのいずれかに該当することが了解できる。
[Formula 42] In other words, fpl, which indicates the result of performing one-dimensional DCT by performing the first addition on the rearranged data, can be expressed by the following formula 43, but formulas 41 and 42 are arbitrary. of l(
It can be understood that this applies to either +fpl or -fpl for l=0, 1, 2, . . . , N-1).

【0082】[0082]

【数43】 また、上記の式40によつて再配列されたデータに第1
の減算を施して1次元DCTを実行した結果を示すgp
lは、下記の44式で表現することができる。
[Equation 43] Also, the first
gp showing the result of executing one-dimensional DCT with subtraction of
l can be expressed by the following equation 44.

【0083】[0083]

【数44】 このとき、44式で定義されたgplは、任意のl(l
=0,1,2,…,N−1)に対して下記の式45,4
6で示された+gplまたは−gplの一方に対応する
ものである。
[Formula 44] At this time, gpl defined by Equation 44 is given by any l(l
=0,1,2,...,N-1), the following equation 45,4
This corresponds to either +gpl or -gpl shown in 6.

【0084】[0084]

【数45】[Math. 45]

【0085】[0085]

【数46】 従って、N×NのDCTに対応する[ymn:m,n=
0,1,2,…,N−1]が唯一必要であることに留意
すべきである。このことは、N×Nの2次元DCTの計
算には、N個の1次元DCTだけが必要であることを意
味する。
[ymn:m, n=
Note that only 0, 1, 2, ..., N-1] are required. This means that only N one-dimensional DCTs are needed to calculate an N×N two-dimensional DCT.

【0086】上記したgplとfplの計算の他に、第
2の加算および減算が実行される過程を以下に見てみる
。2次元DCTであるymnは、式44乃至式44に示
されているように、fplとgplの和により表現され
ることが解る。このとき、ymnを求めるためのfpl
とgplの第2の加算は、DFT(離散フーリエ変換:
Discrete Fourier Transfor
m) とDCT(Discrete Cosine T
ransform) のアルゴリズムにおけるバタフラ
イ演算段(butterfly stage) を構成
する。上記説明により、nが偶数である場合に、下記の
式47が成立することが解る。
In addition to the gpl and fpl calculations described above, the process by which the second addition and subtraction are performed will now be seen. It can be seen that ymn, which is a two-dimensional DCT, is expressed by the sum of fpl and gpl, as shown in Equations 44 and 44. At this time, fpl to find ymn
The second addition of and gpl is a DFT (discrete Fourier transform:
Discrete Fourier Transfer
m) and DCT (Discrete Cosine T
It constitutes the butterfly stage in the algorithm. From the above explanation, it can be seen that the following equation 47 holds true when n is an even number.

【0087】[0087]

【数47】 上記の式は、任意のl(l=0,1,2,…N−1)が
与えられたとき、下記の式48,49が成立することを
意味する。
[Formula 47] The above equation means that when any l (l=0, 1, 2, . . . N-1) is given, the following equations 48 and 49 hold true.

【0088】[0088]

【数48】[Math. 48]

【0089】[0089]

【数49】 また、上述の事から、nが奇数であるとき、下記の式5
0,51が成立することが分る。
[Formula 49] Also, from the above, when n is an odd number, the following formula 5
It can be seen that 0.51 holds true.

【0090】[0090]

【数50】[Number 50]

【0091】[0091]

【数51】 故に、1次元DCTについて式48,49に示された第
1の加算を実行することにより得られた1次元DCTの
結果を示すfplは常に±f(N−P)lと一緒に現わ
れ、それ故に、バタフライ構造を形成することができる
。また、1次元DCTについて式50,51に示された
第1の減算を実行することにより得られた1次元DCT
の結果を示すgplは常に±g(N−P)(N−1)と
一緒に現われるので、これに対してもバタフライ構成を
形成することが可能となる。
[Equation 51] Therefore, fpl, which represents the result of the one-dimensional DCT obtained by performing the first addition shown in Equations 48 and 49 for the one-dimensional DCT, is always the same as ±f(N-P)l. therefore, a butterfly structure can be formed. Also, the one-dimensional DCT obtained by performing the first subtraction shown in Equations 50 and 51 for the one-dimensional DCT
Since gpl, which indicates the result of , always appears together with ±g(NP)(N-1), it is possible to form a butterfly configuration for this as well.

【0092】本発明による2次元DCTの実現過程を図
2Aを参照して説明する。N×Nの2次元デイジタルデ
ータを入力バツフア00に貯蔵してから、再配列部20
0は上記式20,21に基づいてN×Nの2次元デイジ
タルデータをN個のグループに再配列する。以後、第1
の加算器300は、上記式43,44に基づいて(X1
j(p;a) +X1j(p;b) )および(−1)
qpl(X1j(p;a) −X1j(p;b) )の
演算を実行するために、バタフライ形式の加算および減
算動作を実行する。このときの演算形態は、nが偶数で
ある場合には隣接グループの再配列されたデータを加算
し減算する動作を実行する。 一方、nが奇数である場合には隣接グループのデータセ
ットの1つの減算動作を実行する。第1加算器300に
より第1の加算と第1の減算動作を施されたデータは一
次元DCT部400に送られて、ここで、上記式43,
44のような方式で1次DCTを実行する。このときの
出力は、第1の加算データの1次元DCT結果を示すf
plおよび第1の減算データの1次元DCT結果を示す
gplの形で現われる。
The process of implementing two-dimensional DCT according to the present invention will be explained with reference to FIG. 2A. After storing N×N two-dimensional digital data in the input buffer 00, the re-arranging unit 20
0 rearranges N×N two-dimensional digital data into N groups based on Equations 20 and 21 above. From now on, the first
The adder 300 calculates (X1
j(p;a) +X1j(p;b) ) and (-1)
To perform the operation qpl(X1j(p;a)-X1j(p;b)), butterfly-style addition and subtraction operations are performed. In this case, when n is an even number, the rearranged data of adjacent groups are added and subtracted. On the other hand, if n is an odd number, one subtraction operation of the data sets of the adjacent group is performed. The data subjected to the first addition and first subtraction operations by the first adder 300 is sent to the one-dimensional DCT section 400, where the above equation 43,
First-order DCT is performed using a method such as No. 44. The output at this time is f indicating the one-dimensional DCT result of the first addition data.
pl and appears in the form of gpl indicating the one-dimensional DCT result of the first subtraction data.

【0093】それから、第2の加算器500は、上記f
plおよびgplを入力し、バタフライ形態で第2の加
算を実行してから、2次元DCTのymnを出力する。 以後、第2の加算器500の出力は出力バツフア600
に送られ、ここでは、データが出力形態に合うように再
配列されて、符号器(coder)に出力される。
Then, the second adder 500 calculates the f
Input pl and gpl, perform the second addition in butterfly form, and then output the two-dimensional DCT ymn. Thereafter, the output of the second adder 500 is sent to the output buffer 600.
Here, the data is rearranged to suit the output format and output to a coder.

【0094】上記のように、2次元DCTデータは再び
図2Bのような構成で逆変換される。即ち、図2Bは2
次元のIDCT(二次元逆離散コサイン変換)の構成図
であつて、2次元DCTの実行順序と逆順に実行される
ことを示す。
As described above, the two-dimensional DCT data is again inversely transformed using the configuration shown in FIG. 2B. That is, FIG. 2B is 2
2 is a block diagram of a dimensional IDCT (two-dimensional inverse discrete cosine transform), showing that the execution order is reverse to that of the two-dimensional DCT. FIG.

【0095】では、ここで、8×8の2次元デイジタル
データを本発明により2次元DCTする過程を具体的に
説明する。
Now, the process of performing two-dimensional DCT on 8×8 two-dimensional digital data according to the present invention will be specifically explained.

【0096】まず、N=8である場合、式8により、2
次元DCTのymnは下記のように表現される。
First, when N=8, by equation 8, 2
The dimension DCT ymn is expressed as follows.

【0097】[0097]

【数52】 ここで、m,n=0,1,2,3,4,5,6,7であ
る。
##EQU52## Here, m, n=0, 1, 2, 3, 4, 5, 6, 7.

【0098】また、上記式9,10のAmnおよびBm
nも下記のようになる。
In addition, Amn and Bm in the above formulas 9 and 10
n is also as follows.

【0099】0099

【数53】[Math. 53]

【0100】[0100]

【数54】 このとき、上記AmnとBmnがデータ再配列過程を通
じて8点のDCTと同一であることが成立すると、結局
2次元DCTは8個の独立的な1次元DCTから計算が
可能であるこが分る。従って、上記AmnとBmnが示
す変換の核核が1次元変換の核と同一になるためには、
[(2i+1)m±(2j+1)n)が(2i+1)の
倍数で表現されなければならないし、この条件を満足さ
せるためには(2j+1)が(2i+1)のmod2N
の倍数になるか、(2i+1)+Nのmod2Nの倍数
にならなければならない。であるから、8×8の二次元
入力データは、上記式16,17に夫々基づいた各々8
個のデータで構成される8個のグループに分けられるな
らば、式9,10の変換は8個の独立された1次元DC
Tとなる。従って、N=8である場合、結果はp=1,
3,5,7になり、そして、式16,17に基づいた8
×8の入力データを8個のグループに分割するためのi
およびjの値が決定される。
[Equation 54] At this time, if it is established that the above Amn and Bmn are the same as the 8-point DCT through the data rearrangement process, the 2-dimensional DCT can be calculated from 8 independent 1-dimensional DCTs. I understand. Therefore, in order for the transformation kernel indicated by Amn and Bmn above to be the same as the one-dimensional transformation kernel,
[(2i+1)m±(2j+1)n) must be expressed as a multiple of (2i+1), and in order to satisfy this condition, (2j+1) is mod 2N of (2i+1)
or (2i+1)+N mod 2N. Therefore, the 8×8 two-dimensional input data is
If the data is divided into 8 groups consisting of
It becomes T. Therefore, if N=8, the result is p=1,
3, 5, 7, and 8 based on equations 16 and 17.
i to divide ×8 input data into 8 groups
and the value of j is determined.

【0101】従って、入力データ[X1j:ij=0,
1,2,3,4,5,6,7]は上記式(17)および
式(18)によつて下記のように8個のグループに分け
られる。
[0101] Therefore, input data [X1j:ij=0,
1, 2, 3, 4, 5, 6, 7] are divided into eight groups as shown below according to the above equations (17) and (18).

【0102】   R1a={X00,X11,X22,X33,X4
4,X55,X66,X77}  R1b={X07,
X16,X25,X34,X43,X52,X61,X
70}  R3a={X01,X14,X27,X32
,X45,X50,X53,X75}  R3b={X
06,X13,X20,X35,X42,X57,X6
4,X71}  R5a={X02,X17,X24,
X31,X46,X53,X60,X75}  R5b
={X05,X10,X23,X36,X41,X54
,X67,X72}  R7a={X03,X12,X
21,X30,X47,X56,X65,X74}  
R7b={X04,X15,X26,X37,X40,
X51,X62,X73}また、p=1,3,5,7に
対する数列qpiは次のようである。
R1a={X00,X11,X22,X33,X4
4,X55,X66,X77} R1b={X07,
X16,X25,X34,X43,X52,X61,X
70} R3a={X01, X14, X27, X32
,X45,X50,X53,X75} R3b={X
06,X13,X20,X35,X42,X57,X6
4,X71} R5a={X02,X17,X24,
X31, X46, X53, X60, X75} R5b
={X05,X10,X23,X36,X41,X54
,X67,X72} R7a={X03,X12,X
21,X30,X47,X56,X65,X74}
R7b={X04,X15,X26,X37,X40,
X51, X62, X73} Also, the sequence qpi for p=1, 3, 5, 7 is as follows.

【0103】 q1i={0,0,0,0,0,0,0,0}q3i=
{0,0,0,1,1,2,2,2}q5i={0,0
,1,2,2,3,4,4}q7i={0,1,2,3
,3,4,5,6}従って、図3Aのような8×8入力
データを8個の1次元DCTを利用して2次元DCTし
ようとするとき、再配列部200からはコサイン乗算の
形態をコサインの加算の形態に変換するために、図3B
のように8個の入力データを一つのグループとして9個
のグループに再配列する。
q1i={0,0,0,0,0,0,0,0}q3i=
{0,0,0,1,1,2,2,2}q5i={0,0
,1,2,2,3,4,4}q7i={0,1,2,3
, 3, 4, 5, 6} Therefore, when attempting to perform two-dimensional DCT on 8×8 input data as shown in FIG. In order to convert into the form of cosine addition, Fig.
Rearrange the 8 input data as one group into 9 groups as shown below.

【0104】以後、上記8グループの再配列データを用
いた8つの1次元DCTの形態での2次元DCTを実行
する過程を説明する。ここで、上記式22,23に表現
されたAmnおよびBmnはN=8である場合に下記の
ようになる。
Hereinafter, a process of performing two-dimensional DCT in the form of eight one-dimensional DCTs using the eight groups of rearranged data will be described. Here, Amn and Bmn expressed in the above equations 22 and 23 are as follows when N=8.

【0105】   Amn=[T1a(m,n) +T1b(m,n)
 +T3a(m,n) +T3b(m,n)     
    +T5a(m,n) +T5b(m,n) +
T7a(m,n) +T7b(m,n) ]  Bmn
=[S1a(m,n) +S1b(m,n) +S3a
(m,n) +S3b(m,n)         +
S5a(m,n) +S5b(m,n) +S7a(m
,n) +S7b(m,n) ]ここで、Tpa(m,
n) ,Tpb(m,n) ,Spa(m,n) およ
びSpb(m,n) は、夫々、前述の式30と式31
、式33と式34、式35と式36、式37と式38に
定義されている。従って、式39と式40よつて、ym
nは、nが偶数でpが奇数の整数であるとき、
Amn=[T1a(m,n) +T1b(m,n)
+T3a(m,n) +T3b(m,n)
+T5a (m, n) +T5b (m, n) +
T7a (m, n) + T7b (m, n) ] Bmn
=[S1a(m,n) +S1b(m,n) +S3a
(m, n) +S3b(m, n) +
S5a(m,n) +S5b(m,n) +S7a(m
,n) +S7b(m,n)] Here, Tpa(m,
n) , Tpb (m, n) , Spa (m, n) and Spb (m, n) are expressed by the above equations 30 and 31, respectively.
, Equations 33 and 34, Equations 35 and 36, and Equations 37 and 38. Therefore, according to equations 39 and 40, ym
When n is an even number and p is an odd integer,

【0106】[0106]

【数55】 になり、nが奇数でpが奇数であるとき、[Math. 55] and when n is an odd number and p is an odd number,

【0107】[0107]

【数56】 となる。[Number 56] becomes.

【0108】ところが、ここで上記のymnの、However, here, the above ymn,

【01
09】
01
09]

【数57】 と、[Math. 57] and,

【0110】[0110]

【数58】 とは、与えられたm.nについての2N個の入力データ
の数列[X1j(p;a) +X1j(p;b) )]
の1次元DCTに該当する。
[Formula 58] is the given m. Sequence of 2N input data for n [X1j(p;a) +X1j(p;b) )]
This corresponds to the one-dimensional DCT of

【0111】同様に、Similarly,

【0112】[0112]

【数59】  と、[Math. 59] and,

【0113】[0113]

【数60】 とは、与えられたm,nについての入力データの数列の
1次元DCTに該当するので、上記式44のようにqp
lを定義することができる。従って、上記式43のよう
にfplを定義することができる。従って、第1加算器
300は、式43の(X1j(p;a) +X1j(p
;b) )を実行した後に第1加算データを発生し、式
44の(−1)qpl(X1j(p;a) −X1j(
p;b) )を実行した後に第1減算データを発生する
[Formula 60] corresponds to the one-dimensional DCT of the sequence of input data for given m and n, so qp
l can be defined. Therefore, fpl can be defined as shown in Equation 43 above. Therefore, the first adder 300 calculates (X1j(p;a) +X1j(p
;b)) After executing ), the first addition data is generated, and (-1)qpl(X1j(p;a) -X1j(
p; b) After executing ), first subtraction data is generated.

【0114】即ち、上記第1加算器300は、再配列さ
れた8個のグループデータを用いて第1加算データおよ
び第1減算データを発生する。即ち、加算器(301〜
304)は各々R1 グループ(R1a,R1b),R
3 グループ(R3a,R3b),R5 グループ(R
5a,R5b)およびR7 グループ(R7a,R7b
)の再配列データを加算して第1加算データを発生する
。加算器(305〜308)は、上記のR1 グループ
,R3 グループ,R5 グループおよびR7 グルー
プの再配列データセットの任意の一方から他方を減算し
て第1減算データを発生する。
That is, the first adder 300 generates first addition data and first subtraction data using the rearranged eight group data. That is, the adders (301 to
304) are R1 groups (R1a, R1b), R
3 group (R3a, R3b), R5 group (R
5a, R5b) and R7 group (R7a, R7b
) are added to generate first addition data. The adders (305 to 308) generate first subtraction data by subtracting the other from any one of the reordered data sets of the R1 group, R3 group, R5 group, and R7 group.

【0115】第1加算器300が第1加算データおよび
第1減算データを発生すると、一次元DCT部400は
、8つの1次元DCTを用い式43,44に基づいて、
第1加算データおよび第1減算データのDCTを実行す
る。即ち、一次元DCT要素(401〜404)は、加
算器(301〜304)からの第1加算データを入力し
た後にfplデータを発生し、一方、一次元DCT要素
(405〜408)は、加算器(305〜308)の第
1減算データを入力した後にgplデータを発生する。 であるから、8×8のDCT数列であるymnを計算す
るためには、fplとgplのみが必要であり、これは
8×8のDCTの計算時に8個の1次元DCTのみが必
要であるということ意味する。
When the first adder 300 generates the first addition data and the first subtraction data, the one-dimensional DCT section 400 uses eight one-dimensional DCTs to calculate the
DCT is performed on the first addition data and the first subtraction data. That is, the one-dimensional DCT elements (401-404) generate fpl data after inputting the first addition data from the adder (301-304), while the one-dimensional DCT elements (405-408) GPL data is generated after inputting the first subtraction data of the subtracters (305 to 308). Therefore, in order to calculate the 8x8 DCT sequence ymn, only fpl and gpl are required, which means that only 8 one-dimensional DCTs are required when calculating the 8x8 DCT. That means.

【0116】上記のように、ymnがfplとgplの
和の形態で発生するが、ここで、ymnとfplおよび
gpl間に存在する関係を把握するために、数個の任意
で選択されたmとnに対して観察してみる。
As mentioned above, ymn occurs in the form of the sum of fpl and gpl, but here, in order to capture the relationship that exists between ymn, fpl, and gpl, several arbitrarily selected m Let's observe this for n.

【0117】   y30=1/2(f13+f13+f33+f33
+f53+f53+f73+f73)  y52=1/
2(f17+f13−f35+f31−f51+f55
−f73−f77)  y34=1/2(f17+f1
1−f31−f37−f57−f51+f71+f77
)  y26=1/2(0  +f14−f34−f4
0+f50+f54−f74+  0)  y41=1
/2(g15+g13+g37+g31−g57+g5
1−g75+g73)  y03=1/2(g13+g
13−g37−g37+g51−g51−g75−g7
5)  y35=1/2(0  +g12−g32−g
34+g54−g56+g76+g70)  y57=
1/2(−g14+g12+g36−g30+0+g5
2−g76−g74)このとき、nが偶数であると、上
記式48,49には、fplは常に±f(N−p1)を
伴なって現われるので、バタフライ形態を作ることがで
きる。一方、nが奇数であると、上記式50,51には
gplが常に±g(n−p1)と一緒に現われるので、
バタフライ形態を作ることができる。
y30=1/2(f13+f13+f33+f33
+f53+f53+f73+f73) y52=1/
2(f17+f13-f35+f31-f51+f55
-f73-f77) y34=1/2(f17+f1
1-f31-f37-f57-f51+f71+f77
) y26=1/2(0 +f14-f34-f4
0+f50+f54-f74+ 0) y41=1
/2(g15+g13+g37+g31-g57+g5
1-g75+g73) y03=1/2(g13+g
13-g37-g37+g51-g51-g75-g7
5) y35=1/2(0 +g12-g32-g
34+g54-g56+g76+g70) y57=
1/2 (-g14+g12+g36-g30+0+g5
2-g76-g74) At this time, if n is an even number, fpl always appears with ±f(N-p1) in the above equations 48 and 49, so a butterfly form can be created. On the other hand, if n is an odd number, gpl always appears together with ±g(n-p1) in equations 50 and 51 above, so
You can create a butterfly shape.

【0118】従って、N=8であるとき、上記の例は下
記のように示すことができる。
Therefore, when N=8, the above example can be shown as follows.

【0119】 y30=1/2{(f13+f73)+(f13+f7
3)+(f33+f53)+(f33+f53)}y5
2=1/2{(f17−f77)+(f13−f73)
−(f35+f55)+(f31−f51)}y34=
1/2{(f17+f77)+(f11+f71)−(
f31+f51)+(f31+f51)}y26=1/
2{(0+0)+(f14−f74)−(f34−f5
4)−(f30+f51)}y41=1/2{(g15
+g73)+(g13−g75)+(g37+g51)
+(g31−g57)}y03=1/2{(g13−g
75)+(g13−g75)−(g37+g51)−(
g37−g57)}y35=1/2{(0+g70)+
(g12+g76)−(g32+g56)−(g34−
g54)}y57=1/2{ −(g14+g74)+
(g12−g76)+(g36+g52)−(g30−
0)}従って、第1加算器500の動作を観察してみる
ために、上記y30=1/2[(f13+f73)+(
f13+f73)+(f33+f53)+(f33+f
53)]を例に上げると、(f13+f73),(f1
3+f73),(f33+f53),(f33+f53
)は加算器501で実行され、(f13+f73)+(
f13+f73)および(f33+f53)+(f33
+f53)は加算器502で実行され、[(f13+f
73)+(f13+f73)]+[(f33+f53)
+(f33+f53)]は加算器503で実行され、“
1/2”はシフタ504で実行される。
y30=1/2 {(f13+f73)+(f13+f7
3)+(f33+f53)+(f33+f53)}y5
2=1/2 {(f17-f77)+(f13-f73)
-(f35+f55)+(f31-f51)}y34=
1/2 {(f17+f77)+(f11+f71)-(
f31+f51)+(f31+f51)}y26=1/
2{(0+0)+(f14-f74)-(f34-f5
4)-(f30+f51)}y41=1/2{(g15
+g73)+(g13-g75)+(g37+g51)
+(g31-g57)}y03=1/2{(g13-g
75)+(g13-g75)-(g37+g51)-(
g37-g57)}y35=1/2{(0+g70)+
(g12+g76)-(g32+g56)-(g34-
g54)}y57=1/2{-(g14+g74)+
(g12-g76)+(g36+g52)-(g30-
0)} Therefore, in order to observe the operation of the first adder 500, the above y30=1/2[(f13+f73)+(
f13+f73)+(f33+f53)+(f33+f
53)] as an example, (f13+f73), (f1
3+f73), (f33+f53), (f33+f53
) is executed by the adder 501, and (f13+f73)+(
f13+f73) and (f33+f53)+(f33
+f53) is executed in the adder 502, and [(f13+f
73)+(f13+f73)]+[(f33+f53)
+(f33+f53)] is executed by the adder 503, and “
1/2'' is executed by shifter 504.

【0120】図4の構成を観察してみると、図4Aにお
いては、第1加算器300が、再配列データX1jを一
次元DCT部400に供給するために、第1加算データ
および第1減算データを発生する。一次元DCT400
は、上記第1加算データおよび第1減算データにDCT
を施すことにより、fplおよびgplを出力する。
Observing the configuration of FIG. 4, in FIG. 4A, the first adder 300 adds the first addition data and the first subtraction data in order to supply the rearranged data X1j to the one-dimensional DCT section 400. Generate data. One-dimensional DCT400
is a DCT on the first addition data and first subtraction data.
By applying , fpl and gpl are output.

【0121】一方、図4Bのように構成された第2加算
器500は、一次元DCT部400が発生したfplか
らnが偶数であるymnを計算する。また、図4Cのよ
うに構成された第2加算器500は、gplから、nが
奇数であるymnを計算する。第2加算器500の加算
回数はlog2 N段により決定され、図4Bおよび4
Cに図示のようにN=8である場合には、加算回数は3
段(=log2 8)である。さらに、第2加算器50
0での1/2の乗算はシフト演算と同一であるので、実
際の実行される乗算は1次元DCT部400で実行され
る。
On the other hand, the second adder 500 configured as shown in FIG. 4B calculates ymn, where n is an even number, from fpl generated by the one-dimensional DCT unit 400. Further, the second adder 500 configured as shown in FIG. 4C calculates ymn, where n is an odd number, from gpl. The number of additions of the second adder 500 is determined by log2 N stages, and is shown in FIGS. 4B and 4.
If N=8 as shown in C, the number of additions is 3.
steps (=log2 8). Furthermore, the second adder 50
Since multiplication by 1/2 by 0 is the same as a shift operation, the actual multiplication is performed by the one-dimensional DCT unit 400.

【0122】上記のように2次元DCTを実行してから
逆変換時の動作を図5A−5Cを参照して観察してみる
[0122] After performing the two-dimensional DCT as described above, the operation during inverse transformation will be observed with reference to FIGS. 5A to 5C.

【0123】一般に、すべての直交変換の高速アルゴリ
ズムの場合、逆変換の流れはスケールフアクタ(sca
le factor)を考慮しなかつたときには、順方
向の流れと逆順して求めることができる。しかし、スケ
ールフアクタを考慮して逆変換する場合には、これを若
干修正して逆変換しなければならない。即ち、図4A−
4Cに図示のように、2次元DCTの実行時にペアを持
たないノードがいくつか存在するので、第2加算器50
0がバタフライ形態を形成することは不可能となる。
In general, for all orthogonal transform fast algorithms, the inverse transform flow depends on the scale factor (sca
When the flow rate (le factor) is not taken into consideration, the flow can be calculated in the reverse order of the forward direction flow. However, if the scale factor is to be taken into consideration when performing the inverse transformation, this must be slightly modified before the inverse transformation is performed. That is, FIG. 4A-
4C, there are some nodes that do not have pairs when executing the two-dimensional DCT, so the second adder 50
It becomes impossible for 0 to form a butterfly configuration.

【0124】従って、2次元IDCTの実行時に信号の
流れを逆とする場合は、第2加算器500と逆の演算を
実行する第1演算部350は、該当ノードの値を二倍と
して、逆変換の値に変化のないようにするとよい。即ち
、第2加算器500でf50とf70とのラインに存在
する2つのノードには対がないことがわかる。従って、
2次元のIDCTの場合には、第1演算部350が該当
ラインの値を二倍とすると、正しい結果を得ることがで
きる。また、一次元のIDCT部450は、スケールフ
アクタを考慮したときに0番目の入力に1/2を乗算し
なければならないが、これはシフト演算によつて解決さ
れる。しかし、一次元IDCT部450からはgplの
1次元IDCTの実行において、このような乗算1/2
とノード値の乗算2が相互に相殺されることができる。
[0124] Therefore, when the signal flow is reversed when performing two-dimensional IDCT, the first calculation unit 350, which performs the inverse operation to that of the second adder 500, doubles the value of the corresponding node and performs the inverse operation. It is best to make sure that the value of the conversion does not change. That is, it can be seen that there is no pair between the two nodes existing on the line f50 and f70 in the second adder 500. Therefore,
In the case of two-dimensional IDCT, if the first calculation unit 350 doubles the value of the corresponding line, a correct result can be obtained. Furthermore, the one-dimensional IDCT unit 450 must multiply the 0th input by 1/2 when the scale factor is considered, but this can be solved by a shift operation. However, when executing the gpl one-dimensional IDCT from the one-dimensional IDCT unit 450, such multiplication 1/2
and the node value multiplication 2 can cancel each other out.

【0125】ここで、X1jのスケールフアクタを本来
の状態に維持したい場合には、各ノード値に1/2を乗
算するとか、入力であるymnをN2/2で除算すると
よい。 しかし、有限ビツト数の演算を考慮すると、各ノード値
に1/2を乗算する方式が有利である。
Here, if it is desired to maintain the scale factor of X1j in its original state, it is recommended to multiply each node value by 1/2 or divide the input ymn by N2/2. However, when considering operations with a finite number of bits, it is advantageous to multiply each node value by 1/2.

【0126】また、2次元DCTを高集積化回路に具現
化したいときには、一番重要なポイントは、2次元DC
T実行に必要な乗算数を減縮することである。その理由
は、乗算器が集積回路の面積を多く占有するためである
。上記図3のような方式で2次元DCTを実行する方式
はN個の1次元DCTを必要とする。従って、N×Nの
DCTを並列で具現化する場合には、N個の1次元DC
T構造が必要であることがわかる。
[0126] Also, when you want to implement a two-dimensional DCT into a highly integrated circuit, the most important point is that the two-dimensional DC
The goal is to reduce the number of multiplications required to perform T. The reason is that multipliers occupy a large amount of integrated circuit area. The method of performing two-dimensional DCT using the method shown in FIG. 3 requires N one-dimensional DCTs. Therefore, when implementing N×N DCT in parallel, N one-dimensional DC
It can be seen that a T structure is required.

【0127】図7A−図7Cは、N×NのDCTを並列
方式で具現化するときにおいて、マルチプレクサ700
およびデマルチプレクサ800を利用してN/2個の1
次元DCTに実行する方法を提示する。このとき、図3
Aにおいて、第1加算器300は、再配列されたデータ
を夫々のグループ単位で演算して第1加算データおよび
第1減算データを発生し、この第1加算器300の出力
に対して一次元DCT部400がDCT演算を施してf
plおよびfplを発生する。しかし、図6のように、
再配列されたグループデータに対して、一次元DCT部
400が、まず1次元DCT演算を施し、以後、1次元
DCT結果を第1加算器300で処理して、同一なfp
lとgplを発生する。
FIGS. 7A to 7C show how the multiplexer 700 is used when implementing the N×N DCT in parallel.
and N/2 1s using the demultiplexer 800.
We present a method to perform dimensional DCT. At this time, Figure 3
In A, the first adder 300 calculates the rearranged data in each group to generate first addition data and first subtraction data, and adds one-dimensional data to the output of the first adder 300. The DCT unit 400 performs DCT operation to obtain f
Generate pl and fpl. However, as shown in Figure 6,
The one-dimensional DCT unit 400 first performs a one-dimensional DCT operation on the rearranged group data, and then the one-dimensional DCT result is processed by the first adder 300 to obtain the same fp.
Generate l and gpl.

【0128】即ち、R1aおよびR1bグループの再配
列データを加算器(301,302)が処理する間、一
次元DCT(403,404)が、R3 およびR3 
グループの再配列データに1次元DCT処理を施す。以
後は、加算器(301,302)から出力されたR1a
,R1bグループの第1の加算データおよび第1の減算
データと、一次元DCT(403,403)から出力さ
れたR3a,R3bグループの1次元DCTデータとを
加算器(303,304)によりたとえ処理しても、f
plおよびgplを同一になる。即ち、図6に図示のよ
うに、R3a,R3bグループの再配列データとR7a
,R7bグループの再配列データに対する第1加算過程
と1次元DCT順序とが変更されても、発生されるfp
lおよびgplは同一になる。
That is, while the adders (301, 302) process the rearranged data of the R1a and R1b groups, the one-dimensional DCT (403, 404)
One-dimensional DCT processing is performed on the rearranged data of the group. After that, R1a output from the adder (301, 302)
, the first addition data and first subtraction data of the R1b group and the one-dimensional DCT data of the R3a and R3b groups output from the one-dimensional DCT (403, 403) are processed by an adder (303, 304). Even if f
pl and gpl will be the same. That is, as shown in FIG. 6, the rearrangement data of R3a and R3b groups and R7a
, R7b group, even if the first addition process and one-dimensional DCT order are changed, the generated fp
l and gpl will be the same.

【0129】従って、図7A−7Cにおいてのように、
マルチプレクサ701は、加算器(311,315)が
R1a,R1bグループの再配列データを処理する間に
、R3a,R3bグループの再配列データを選択して、
一次元DCT要素(411,412)に出力する。
Therefore, as in FIGS. 7A-7C,
The multiplexer 701 selects the rearranged data of the R3a and R3b groups while the adders (311, 315) process the rearranged data of the R1a and R1b groups,
Output to one-dimensional DCT elements (411, 412).

【0130】また、マルチプレクサ702は、加算器(
313,317)がR5a,R5bグループの再配列デ
ータを処理する間に、R7a,R7bグループの再配列
データを選択して一次元DCT(413,414)に送
る。
[0130] Furthermore, the multiplexer 702 has an adder (
313, 317) process the rearranged data of the R5a, R5b groups, the rearranged data of the R7a, R7b groups are selected and sent to the one-dimensional DCT (413, 414).

【0131】それで、R1a,R1bグループの再配列
データおよびR5a,R5bグループの再配列データが
第1加算器300で処理される間は、一次元DCT部4
00は、R3a,R3bグループの再配列データおよび
R7a,R7bグループの再配列データに対する一次元
DCTを実行する。
Therefore, while the rearranged data of the R1a and R1b groups and the rearranged data of the R5a and R5b groups are processed by the first adder 300, the one-dimensional DCT unit 4
00 executes one-dimensional DCT on the rearranged data of the R3a and R3b groups and the rearranged data of the R7a and R7b groups.

【0132】以後は、マルチプレクサ(701,702
)は加算器(311,315)および加算器(313,
317)の出力を各々選択すると共に、デマルチプレク
サ(801,802)は、一次元DCT(411,41
2)および一次元DCT(413,414)の出力を各
々加算器(312,316)および加算器(314,3
18)側に選択出力する。従って、R1a,R1bグル
ープおよびR5a,R5bグループのデータが一次元D
CT部400で1次元DCT処理される間に、R3a,
R3bグループおよびR7a,R7bグループのデータ
が第1加算器300で処理されることがわかる。以後、
結果は第2加算器500に送られて、そこで、log2
 N段のバタフライステージによつて加算されて出力さ
れる。
[0132] From now on, the multiplexers (701, 702
) are adders (311, 315) and adders (313,
The demultiplexers (801, 802) select the outputs of the one-dimensional DCTs (411, 41), respectively.
2) and one-dimensional DCT (413, 414) to adders (312, 316) and adders (314, 3), respectively.
18) Selectively output to the side. Therefore, the data of R1a, R1b group and R5a, R5b group are one-dimensional D
During one-dimensional DCT processing in the CT unit 400, R3a,
It can be seen that the data of the R3b group and the R7a, R7b groups are processed by the first adder 300. From then on,
The result is sent to a second adder 500 where log2
The sums are added by N butterfly stages and output.

【0133】[0133]

【発明の効果】上述のように2次元N×N入力データを
2次元DCT処理するときに、N個の1次元DCTを実
行することにより、そしてバタフライ形式で第1および
第2の加算を実行することにより、2次元DCT処理が
具現することができる。また、マルチプレクサおよびデ
マルチプレクサを用いたハードウエアの並列構成時には
、N/2個の1次元DCTのみを必要とし、これによっ
て、乗算数を大幅に減縮することができ、高速に2次元
DCTを具現することができると同時に、高集積化回路
を具現することができる利点がある。
Effects of the Invention: When performing two-dimensional DCT processing on two-dimensional N×N input data as described above, by executing N one-dimensional DCTs, and performing the first and second additions in a butterfly format. By doing so, two-dimensional DCT processing can be realized. In addition, when configuring hardware in parallel using multiplexers and demultiplexers, only N/2 one-dimensional DCTs are required, which greatly reduces the number of multipliers and realizes two-dimensional DCTs at high speed. It has the advantage of being able to implement highly integrated circuits at the same time.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】  従来の2次元離散コサイン変換装置の構成
図である。
FIG. 1 is a configuration diagram of a conventional two-dimensional discrete cosine transform device.

【図2A】,[Figure 2A],

【図2B】  本発明による2次元離散コサイン変換装
置の構成図である。
FIG. 2B is a configuration diagram of a two-dimensional discrete cosine transform device according to the present invention.

【図3A】,[Figure 3A],

【図3B】  図2の8×8入力データに対する再配列
データ構成図である。
3B is a rearrangement data configuration diagram for the 8×8 input data of FIG. 2; FIG.

【図4A】,[Figure 4A],

【図4B】,[Figure 4B],

【図4C】  8×8入力データに対する2次元離散コ
サイン変換装置の第1実施例図である。
FIG. 4C is a diagram of a first embodiment of a two-dimensional discrete cosine transform device for 8×8 input data.

【図5A】,[Figure 5A],

【図5B】,[Figure 5B],

【図5C】  8×8の2次元逆離散コサイン変換装置
の構成図である。
FIG. 5C is a configuration diagram of an 8×8 two-dimensional inverse discrete cosine transform device.

【図6】  図2中の第1加算器と1次元離散コサイン
変換部のまた他の構成図である。
6 is another configuration diagram of the first adder and one-dimensional discrete cosine transform section in FIG. 2. FIG.

【図7A】,[Figure 7A],

【図7B】,[Figure 7B],

【図7C】  8×8入力データに対する2次元離散コ
サイン変換装置の第2実施例図である。
FIG. 7C is a diagram of a second embodiment of a two-dimensional discrete cosine transform device for 8×8 input data.

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

100…入力バツフア、200…再配列部、300…第
1加算器、400…1次元DCT部、500…第2加算
器、600…出力バツフア
DESCRIPTION OF SYMBOLS 100... Input buffer, 200... Re-ordering part, 300... First adder, 400... One-dimensional DCT part, 500... Second adder, 600... Output buffer

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】  N×N個の2次元入力データを高速に
離散コサイン変換する方法において、前記N×Nデータ
を、2次元離散コサイン変換の核であるコサイン関数の
乗算形態をコサイン関数の加算形態に変換するために、
上記コサイン関数の1次元離散コサイン変換の核と同一
になるように、N個のグループで再配列する工程と、上
記再配列されたグループデータ中の偶数グループと奇数
グループとの夫々の再配列データを各々加算してN/2
個の第1の加算データを発生すると共に、残りのデータ
グループに対しては一方から他方を減算してN/2個の
第1の減算データを発生する第1演算工程と、上記第1
演算工程の第1加算データおよび第1減算データを各々
1次元離散コサイン変換処理する工程と、上記1次元離
散コサイン変換出力をlog2 N段のバタフライ形態
で加減算してから、前記加減算の結果にシフト処理を行
なうことにより、2次元離散コサイン変換データを発生
する工程とからなることを特徴とする2次元離散コサイ
ン変換方法。
Claim 1. A method of performing discrete cosine transform on N×N two-dimensional input data at high speed, wherein the N×N data is transformed into a multiplication form of a cosine function, which is the core of the two-dimensional discrete cosine transform, by adding a cosine function. In order to convert it into a form,
A step of rearranging N groups so as to be the same as the kernel of the one-dimensional discrete cosine transform of the cosine function, and rearranging data of even and odd groups in the rearranged group data, respectively. Add each to N/2
a first operation step of generating N/2 first addition data and subtracting one from the other for the remaining data groups to generate N/2 first subtraction data;
A step of performing one-dimensional discrete cosine transform on each of the first addition data and first subtraction data in the calculation step, and adding and subtracting the one-dimensional discrete cosine transform output in a log2 N-stage butterfly form, and then shifting to the result of the addition and subtraction. 1. A two-dimensional discrete cosine transform method comprising the step of generating two-dimensional discrete cosine transform data by performing processing.
【請求項2】  N×N個の2次元入力データを高速に
離散コサイン変換する装置において、前記N×N2次元
データを、2次元離散コサイン変換の核であるコサイン
関数の乗算形態をコサイン関数の加算形態に変換するた
めに上記コサイン変換の1次元離散コサイン変換の核と
同一になるように、N個のグループに再配列する再配列
手段と、前記再配列されたデータの偶数グループと奇数
グループの再配列データを各々加算してN/2個の第1
加算データを発生し、残りのグループについては、一方
のデータで他方のデータを減算してN/2個の第1の減
算データを発生する手段と、第1の加算データおよび第
1の減算データを各々1次元離散コサイン変換処理する
一次元DCT処理手段と、前記一次元DCT処理手段に
接続され、log2 N段のバタフライ形態に構成され
、上記一次元DCT処理手段の出力を加算および減算し
てから1/2を乗算するシフト工程を実行して2次元離
散コサイン変換データを発生する2次元離散コサイン変
換処理とから構成されることを特徴とする2次元離散コ
サイン変換装置。
2. In an apparatus for performing discrete cosine transform on N×N two-dimensional input data at high speed, the N×N two-dimensional data is transformed into a cosine function by converting the multiplication form of a cosine function, which is the core of the two-dimensional discrete cosine transform, into a cosine function. a rearranging means for rearranging the data into N groups so as to be the same as the core of the one-dimensional discrete cosine transform of the above-mentioned cosine transform in order to convert the data into an additive form; and an even number group and an odd number group of the rearranged data. of the rearranged data of N/2 first
means for generating addition data and generating N/2 first subtraction data by subtracting one data from the other data for the remaining groups; first addition data and first subtraction data; a one-dimensional DCT processing means that performs a one-dimensional discrete cosine transform on each of the above, and a one-dimensional DCT processing means that is connected to the one-dimensional DCT processing means and configured in a log2 N-stage butterfly form, and that adds and subtracts the outputs of the one-dimensional DCT processing means. A two-dimensional discrete cosine transform apparatus comprising: a two-dimensional discrete cosine transform process that generates two-dimensional discrete cosine transform data by executing a shift step of multiplying by 1/2 from .
JP3230641A 1991-02-20 1991-09-10 Two-dimensional method and device for discrete cosine transformation Pending JPH04278668A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR2721/1991 1991-02-20
KR1019910002721A KR930008428B1 (en) 1991-02-20 1991-02-20 2 dimentional cosine transferring method and apparatus

Publications (1)

Publication Number Publication Date
JPH04278668A true JPH04278668A (en) 1992-10-05

Family

ID=19311271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3230641A Pending JPH04278668A (en) 1991-02-20 1991-09-10 Two-dimensional method and device for discrete cosine transformation

Country Status (3)

Country Link
JP (1) JPH04278668A (en)
KR (1) KR930008428B1 (en)
FR (1) FR2673012A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110705368A (en) * 2019-09-05 2020-01-17 深圳大学 Method, device and system for representing and identifying non-negative characteristics of face data in self-constructed cosine kernel space and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110705368A (en) * 2019-09-05 2020-01-17 深圳大学 Method, device and system for representing and identifying non-negative characteristics of face data in self-constructed cosine kernel space and storage medium
CN110705368B (en) * 2019-09-05 2023-04-18 深圳大学 Method, device and system for representing and identifying non-negative characteristics of face data in self-constructed cosine kernel space and storage medium

Also Published As

Publication number Publication date
KR920017367A (en) 1992-09-26
FR2673012A1 (en) 1992-08-21
KR930008428B1 (en) 1993-08-31
FR2673012B1 (en) 1994-12-16

Similar Documents

Publication Publication Date Title
JP2646778B2 (en) Digital signal processor
EP0506111B1 (en) DCT/IDCT processor and data processing method
US7127482B2 (en) Performance optimized approach for efficient downsampling operations
Cheng et al. Hardware efficient fast DCT based on novel cyclic convolution structures
JPS593790B2 (en) FFT Ensanshiyori Sochi
CN114968173A (en) Polynomial multiplication method and polynomial multiplier based on NTT and INTT structures
CN112465130A (en) Number theory transformation hardware
JPH04278668A (en) Two-dimensional method and device for discrete cosine transformation
JP2004120439A (en) Image processor and image processing method
JP2001346213A (en) Discrete cosine transform unit and its discrete cosine transform method
Wahid et al. Error-free computation of 8/spl times/8 2D DCT and IDCT using two-dimensional algebraic integer quantization
JP3727406B2 (en) Function conversion operator
Falkowski Recursive relationships, fast transforms, generalisations and VLSI iterative architecture for Gray code ordered Walsh functions
US20090112959A1 (en) Single-cycle FFT butterfly calculator
JPH04277932A (en) Image data compressing device
JPH05174046A (en) Arithmetic circuit
JPH03256455A (en) Idct processor
JP2822684B2 (en) Discrete cosine transform device and inverse discrete cosine transform device
JP3652717B2 (en) Discrete cosine high-speed calculator
JPH06195369A (en) Fast algorithm discrete cosine transformer/inverse transformer
JP2953918B2 (en) Arithmetic unit
JP4012781B2 (en) Flip arithmetic method and its hardware structure used to realize lift discrete wavelet transform hardware
JP2001084242A (en) Variable operation processor
JP3875183B2 (en) Arithmetic unit
US6308194B1 (en) Discrete cosine transform circuit and operation method thereof

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19950117