JPH07121507A - 離散コサイン変換装置 - Google Patents
離散コサイン変換装置Info
- Publication number
- JPH07121507A JPH07121507A JP5267376A JP26737693A JPH07121507A JP H07121507 A JPH07121507 A JP H07121507A JP 5267376 A JP5267376 A JP 5267376A JP 26737693 A JP26737693 A JP 26737693A JP H07121507 A JPH07121507 A JP H07121507A
- Authority
- JP
- Japan
- Prior art keywords
- data
- output
- case
- sum
- register
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete 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)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Discrete Mathematics (AREA)
- Complex Calculations (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
(57)【要約】 (修正有)
【目的】 装置全体のサイズを小さくする。
【構成】 2N個の入力データのうち、偶数次のN個の
データの同一桁のビット値をアドレスとし、このアドレ
スに同一桁のビット値と変換行列成分との積和データが
格納されている第1の記憶手段6a、奇数次のN個のデ
ータの同一桁のビット値をアドレスとし、このアドレス
に同一桁のビット値と変換行列成分との積和データが格
納されている第2の記憶手段6b、順方向変換の際は第
2の記憶手段からの読出しデータのうち1部のデータを
そのまま出力し、逆方向変換の際は上記1部のデータを
反転して出力する反転手段71 ,72 、第1の記憶手段
からの読出しデータを累積加算する第1の累積加算手
段、並びに第2の記憶手段からの読出しデータから上記
1部のデータを除いた残りのデータ及び反転手段の出力
を各々累積加算する第2の累積加算手段を備え、第1の
記憶手段には順方向変換と逆方向変換とで異なるデータ
を記憶し、第2の記憶手段には同一のデータを記憶す
る。
データの同一桁のビット値をアドレスとし、このアドレ
スに同一桁のビット値と変換行列成分との積和データが
格納されている第1の記憶手段6a、奇数次のN個のデ
ータの同一桁のビット値をアドレスとし、このアドレス
に同一桁のビット値と変換行列成分との積和データが格
納されている第2の記憶手段6b、順方向変換の際は第
2の記憶手段からの読出しデータのうち1部のデータを
そのまま出力し、逆方向変換の際は上記1部のデータを
反転して出力する反転手段71 ,72 、第1の記憶手段
からの読出しデータを累積加算する第1の累積加算手
段、並びに第2の記憶手段からの読出しデータから上記
1部のデータを除いた残りのデータ及び反転手段の出力
を各々累積加算する第2の累積加算手段を備え、第1の
記憶手段には順方向変換と逆方向変換とで異なるデータ
を記憶し、第2の記憶手段には同一のデータを記憶す
る。
Description
【0001】
【産業上の利用分野】本発明は、離散コサイン変換装置
に関するもので、特に画像データの圧縮や伸長に使用さ
れるものである。
に関するもので、特に画像データの圧縮や伸長に使用さ
れるものである。
【0002】
【従来の技術】近年の半導体技術の進歩に加えて画像デ
ータの符号化の国際標準が固まったことで、画像データ
圧縮伸長用専用LSIの開発が行われている。画像デー
タ圧縮伸長方式の規格の中心は2次元の離散コサイン変
換である。N×N点の2次元の順方向の離散コサイン変
換は、次式で示される。
ータの符号化の国際標準が固まったことで、画像データ
圧縮伸長用専用LSIの開発が行われている。画像デー
タ圧縮伸長方式の規格の中心は2次元の離散コサイン変
換である。N×N点の2次元の順方向の離散コサイン変
換は、次式で示される。
【0003】
【数1】 ここでx(i,j)(i,j=0,1,…,N−1)は
原信号(画像データ)、X(u,v)(u,v=0,
1,…,N−1)は変換された係数である。そして、u
=v=0のときC(0)=C(0)=2-1/2で、u,v
≠0のときC(u)=C(v)=1である。
原信号(画像データ)、X(u,v)(u,v=0,
1,…,N−1)は変換された係数である。そして、u
=v=0のときC(0)=C(0)=2-1/2で、u,v
≠0のときC(u)=C(v)=1である。
【0004】又、逆方向の離散コサイン変換は次の
(2)式によって表わされる。
(2)式によって表わされる。
【0005】
【数2】 今、X(u,v)を第u行、第v列の成分とするN×N
の大きさの行列をXとし、x(i,j)を第i行、第j
行の成分とするN×Nの大きさの行列をxとし、 Cu,i =(2/N)1/2 C(u)cos((2i+1)
uπ/N) を第u行、第i列の成分とするN×Nの大きさの行列を
変換行列Cとすると、上述の(1)式および(2)式は
各々(3)式および(4)式のように表わされる。
の大きさの行列をXとし、x(i,j)を第i行、第j
行の成分とするN×Nの大きさの行列をxとし、 Cu,i =(2/N)1/2 C(u)cos((2i+1)
uπ/N) を第u行、第i列の成分とするN×Nの大きさの行列を
変換行列Cとすると、上述の(1)式および(2)式は
各々(3)式および(4)式のように表わされる。
【0006】 X=C・x・Ct ……(3) x=Ct ・X・C ……(4) ここでCt は行列Cの転置行列を表わす。(3)および
(4)式から分かるように2次元の離散コサイン変換は
1次元の離散コサイン変換を2回行うことによっても達
成することができる。
(4)式から分かるように2次元の離散コサイン変換は
1次元の離散コサイン変換を2回行うことによっても達
成することができる。
【0007】一般に画像圧縮伸長で用いられる2次元の
離散コサイン変換は垂直8画素×水平8画素のブロック
を1ブロックとして変換を行う場合が多いのでN=8の
場合を例にとって説明する。この場合、変換行列Cは8
×8の行列となるから、単純に4096回の積和演算を
行う必要があった。このため、大量の積和演算を小規模
回路で高速に行なうことが離散コサイン変換専用のLS
Iを実現する上で重要な問題点となっていた。
離散コサイン変換は垂直8画素×水平8画素のブロック
を1ブロックとして変換を行う場合が多いのでN=8の
場合を例にとって説明する。この場合、変換行列Cは8
×8の行列となるから、単純に4096回の積和演算を
行う必要があった。このため、大量の積和演算を小規模
回路で高速に行なうことが離散コサイン変換専用のLS
Iを実現する上で重要な問題点となっていた。
【0008】この大量の積和演算を効率良く行う技術が
知られている。この技術は2次元離散コサイン変換を、
行方向と列方向の2つの1次元離散コサイン変換に分解
して行うものである。上記技術においては、まず、入力
データは行方向の1次元離散コサイン変換が施され、そ
の演算結果は転置RAMによって転置されて記憶され
る。そして、この転置されたデータは列方向の1次元離
散コサイン変換によって変換され、2次元離散コサイン
変換の係数が得られる。又、上記の技術においては、1
次元離散コサイン変換には高速アルゴリズムが用いられ
ており、この高速アルゴリズムによる順方向の離散コサ
イン変換は次の(5),(6)式で表わされる。
知られている。この技術は2次元離散コサイン変換を、
行方向と列方向の2つの1次元離散コサイン変換に分解
して行うものである。上記技術においては、まず、入力
データは行方向の1次元離散コサイン変換が施され、そ
の演算結果は転置RAMによって転置されて記憶され
る。そして、この転置されたデータは列方向の1次元離
散コサイン変換によって変換され、2次元離散コサイン
変換の係数が得られる。又、上記の技術においては、1
次元離散コサイン変換には高速アルゴリズムが用いられ
ており、この高速アルゴリズムによる順方向の離散コサ
イン変換は次の(5),(6)式で表わされる。
【0009】
【数3】 ここで、A=cos(π/4)、B=cos(π/
8)、C=sin(π/8)、D=cos(π/1
6)、E=cos(3π/16)、F=sin(3π/
16)、G=sin(π/16)となる変換行列成分で
あって、xi (i=0,1,…,7)は原信号、X
j (j=0,1,…,7)は変換係数を表している。
8)、C=sin(π/8)、D=cos(π/1
6)、E=cos(3π/16)、F=sin(3π/
16)、G=sin(π/16)となる変換行列成分で
あって、xi (i=0,1,…,7)は原信号、X
j (j=0,1,…,7)は変換係数を表している。
【0010】又、逆方向の離散コサイン変換は次の
(7)、(8)式で表される。
(7)、(8)式で表される。
【0011】
【数4】 上述の(5)、(6)、(7)、(8)式を用いて分散
演算を行う従来の順逆両用の離散コサイン変換装置の構
成を図5に示す。この離散コサイン変換装置は、データ
入力装置1と、加算器31 ,…34 と、減算器41 ,…
44 と、選択スイッチ51 ,…58 と、リードオンリメ
モリ6a,6dと、パイプラインレジスタ81 ,…816
と、加算器91 ,…98 と、パイプラインレジスタ10
1 ,…108 と、加算器111 ,…118 と、レジスタ
121 ,…128 と、加算器171 ,…174 と、減算
器181 ,…184 と、選択スイッチ211 ,…218
と、出力レジスタ221 ,…228 とを有している。
演算を行う従来の順逆両用の離散コサイン変換装置の構
成を図5に示す。この離散コサイン変換装置は、データ
入力装置1と、加算器31 ,…34 と、減算器41 ,…
44 と、選択スイッチ51 ,…58 と、リードオンリメ
モリ6a,6dと、パイプラインレジスタ81 ,…816
と、加算器91 ,…98 と、パイプラインレジスタ10
1 ,…108 と、加算器111 ,…118 と、レジスタ
121 ,…128 と、加算器171 ,…174 と、減算
器181 ,…184 と、選択スイッチ211 ,…218
と、出力レジスタ221 ,…228 とを有している。
【0012】データ入力装置1は外部から入力される入
力データ、例えば順方向変換の場合は画像データx0 ,
…x7 、逆方向変換の場合は変換係数X0 ,…X7 を保
持するものであって、例えば図6に示すようにパラレル
シリアル変換を行う直交メモリ(Corner Turn Memory)
を2バンクにした構成となっている。上記直交メモリは
8個のワードWORD0 ,…WORD7 を有しており、
ワードWORDi (i=0,…7)には入力データxi
又はXi を保持する。したがって、各ワードは入力デー
タのビット数と同数のビット数を有している。例えば、
入力データxi又はXi が16ビットのデータとすれ
ば、直交メモリの各ワードのビット数は16となる。一
般に直交メモリは書込みはワード方向に行い、読み出し
はビット方向に1列に行うため、パラレルシリアル変換
を行うことができる。図7に示すデータ入力装置におい
ては、まず8個の入力データx0 ,…x7 又はX0 ,…
x7がAバンクの直交メモリに書き込まれ、この書き込
まれたデータの読み出し中に次の8個の入力データがB
バンクの直交メモリに書き込まれる。したがってデータ
入力を連続的に行うことができる。なお、この際の読み
出しは1サイクルに2ビットずつ入力データが読み出さ
れる。そして、この読み出しは下位ビットから順に行わ
れる。今、入力データの各々が16ビットとすれば入力
データが完全に読み出されるのに8サイクルが必要とな
る。又、データ入力装置1は図5に示すように8個の出
力端21 …28 を有しており、出力端2i (i=1,…
8)からは各サイクル毎に入力データxi 又はXi の2
桁の2ビットデータが出力される。例えば、入力データ
(xi 又はXi )をd15d14…d1 d0 とすればj(j
=1、…8)サイクル時には出力端2i からは2桁の2
ビットデータd2j-1d2j-2が出力される。
力データ、例えば順方向変換の場合は画像データx0 ,
…x7 、逆方向変換の場合は変換係数X0 ,…X7 を保
持するものであって、例えば図6に示すようにパラレル
シリアル変換を行う直交メモリ(Corner Turn Memory)
を2バンクにした構成となっている。上記直交メモリは
8個のワードWORD0 ,…WORD7 を有しており、
ワードWORDi (i=0,…7)には入力データxi
又はXi を保持する。したがって、各ワードは入力デー
タのビット数と同数のビット数を有している。例えば、
入力データxi又はXi が16ビットのデータとすれ
ば、直交メモリの各ワードのビット数は16となる。一
般に直交メモリは書込みはワード方向に行い、読み出し
はビット方向に1列に行うため、パラレルシリアル変換
を行うことができる。図7に示すデータ入力装置におい
ては、まず8個の入力データx0 ,…x7 又はX0 ,…
x7がAバンクの直交メモリに書き込まれ、この書き込
まれたデータの読み出し中に次の8個の入力データがB
バンクの直交メモリに書き込まれる。したがってデータ
入力を連続的に行うことができる。なお、この際の読み
出しは1サイクルに2ビットずつ入力データが読み出さ
れる。そして、この読み出しは下位ビットから順に行わ
れる。今、入力データの各々が16ビットとすれば入力
データが完全に読み出されるのに8サイクルが必要とな
る。又、データ入力装置1は図5に示すように8個の出
力端21 …28 を有しており、出力端2i (i=1,…
8)からは各サイクル毎に入力データxi 又はXi の2
桁の2ビットデータが出力される。例えば、入力データ
(xi 又はXi )をd15d14…d1 d0 とすればj(j
=1、…8)サイクル時には出力端2i からは2桁の2
ビットデータd2j-1d2j-2が出力される。
【0013】出力端21 の出力(x0 又はX0 )は加算
器31 、減算器44 、および選択スイッチ51 に送ら
れ、出力端22 の出力(x1 又はX1 )は加算器32 、
減算器43 、および選択スイッチ52 に送られる。出力
端23 の出力(x2 又はX2 )は加算器33 、減算器4
2 および選択スイッチ53 に送られ、出力端24 の出力
(x3 又はX3 )は加算器34 、減算器41 、および選
択スイッチ54 に送られる。又、出力端25 の出力(x
4 又はX4 )は加算器34 、減算器41 、および選択ス
イッチ55 に送られ、出力端26 の出力(x5 又は
X5 )は加算器35 、減算器42 、および選択スイッチ
56 に送られる。出力端27 の出力(x6 又はX6 )は
加算器32 、減算器43 、および選択スイッチ57 に送
られ、出力端28 の出力(x7 又はX7 )は加算器
31 、減算器44 、および選択スイッチ58に送られ
る。
器31 、減算器44 、および選択スイッチ51 に送ら
れ、出力端22 の出力(x1 又はX1 )は加算器32 、
減算器43 、および選択スイッチ52 に送られる。出力
端23 の出力(x2 又はX2 )は加算器33 、減算器4
2 および選択スイッチ53 に送られ、出力端24 の出力
(x3 又はX3 )は加算器34 、減算器41 、および選
択スイッチ54 に送られる。又、出力端25 の出力(x
4 又はX4 )は加算器34 、減算器41 、および選択ス
イッチ55 に送られ、出力端26 の出力(x5 又は
X5 )は加算器35 、減算器42 、および選択スイッチ
56 に送られる。出力端27 の出力(x6 又はX6 )は
加算器32 、減算器43 、および選択スイッチ57 に送
られ、出力端28 の出力(x7 又はX7 )は加算器
31 、減算器44 、および選択スイッチ58に送られ
る。
【0014】加算器31 は出力端21 および28 の出力
の和(x0 +x7 、又はX0 +X7)を演算してその演
算結果を選択スイッチ51 に送出し、加算器32 は出力
端22 および27 の出力の和(x1 +x6 、又はX1 +
X6 )を演算してその演算結果を選択スイッチ53 に送
出する。又、加算器33 は出力端23 および26 の出力
の和(x2 +x5 、又はX2 +X5 )を演算してその演
算結果を選択スイッチ55 に送出し、加算器34 は出力
端24 および25 の出力の和(x3 +x4 、又はX3 +
X4 )を演算してその演算結果を選択スイッチ57 に送
出する。一方、減算器41 は出力端21 と28 の出力の
差(x0 −x7 、又はX0 −X7 )を演算してその演算
結果を選択スイッチ58 に送出し、減算器42 は出力端
22 と27 の出力の差(x1 −x6 、又はX1 −X6 )
を演算してその演算結果を選択スイッチ56 に送出す
る。又、減算器43 は出力端23 と26 の出力の差(x
2 −x5 、又はX2 −X5 )を演算してその演算結果を
選択スイッチ54 に送出し、減算器44 は出力端24 と
25 の出力の差(x3 −x4 、又はX3 −X4 )を演算
してその演算結果を選択スイッチ52 に送出する。
の和(x0 +x7 、又はX0 +X7)を演算してその演
算結果を選択スイッチ51 に送出し、加算器32 は出力
端22 および27 の出力の和(x1 +x6 、又はX1 +
X6 )を演算してその演算結果を選択スイッチ53 に送
出する。又、加算器33 は出力端23 および26 の出力
の和(x2 +x5 、又はX2 +X5 )を演算してその演
算結果を選択スイッチ55 に送出し、加算器34 は出力
端24 および25 の出力の和(x3 +x4 、又はX3 +
X4 )を演算してその演算結果を選択スイッチ57 に送
出する。一方、減算器41 は出力端21 と28 の出力の
差(x0 −x7 、又はX0 −X7 )を演算してその演算
結果を選択スイッチ58 に送出し、減算器42 は出力端
22 と27 の出力の差(x1 −x6 、又はX1 −X6 )
を演算してその演算結果を選択スイッチ56 に送出す
る。又、減算器43 は出力端23 と26 の出力の差(x
2 −x5 、又はX2 −X5 )を演算してその演算結果を
選択スイッチ54 に送出し、減算器44 は出力端24 と
25 の出力の差(x3 −x4 、又はX3 −X4 )を演算
してその演算結果を選択スイッチ52 に送出する。
【0015】選択スイッチ51 は順方向変換の場合には
加算器31 の出力(x0 +x7 )を、逆方向変換の場合
には出力端21 の出力(X0 )を選択して出力する。選
択スイッチ52 は順方向変換の場合には減算器44 の出
力(x0 −x7 )を、逆方向変換の場合には出力端22
の出力(X1 )を選択して出力する。選択スイッチ53
は順方向変換の場合には加算器32 の出力(x1 +
x6 )を、逆方向変換の場合には出力端23 の出力(X
2 )を選択して出力する。選択スイッチ54 は順方向変
換の場合には減算器43 の出力(x1 −x6 )を、逆方
向変換の場合には出力端24 の出力(X3 )を選択して
出力する。又、選択スイッチ55 は順方向変換の場合に
は加算器33 の出力(x2 +x5 )を、逆方向変換の場
合には変換器25 の出力(X4 )を選択して出力する。
選択スイッチ56 は順方向変換の場合には減算器42 の
出力(x2 −x5 )を、逆方向変換の場合には出力端2
6 の出力(X5 )を選択して出力する。選択スイッチ5
7 は順方向変換の場合には加算器34 の出力(x3 +x
4 )を、逆方向変換の場合には出力端27 の出力
(X6)を選択して出力する。選択スイッチ58 は順方
向変換の場合には減算器41 の出力(x3 −x4 )を、
逆方向変換の場合には出力端28 の出力(X7 )を選択
して出力する。
加算器31 の出力(x0 +x7 )を、逆方向変換の場合
には出力端21 の出力(X0 )を選択して出力する。選
択スイッチ52 は順方向変換の場合には減算器44 の出
力(x0 −x7 )を、逆方向変換の場合には出力端22
の出力(X1 )を選択して出力する。選択スイッチ53
は順方向変換の場合には加算器32 の出力(x1 +
x6 )を、逆方向変換の場合には出力端23 の出力(X
2 )を選択して出力する。選択スイッチ54 は順方向変
換の場合には減算器43 の出力(x1 −x6 )を、逆方
向変換の場合には出力端24 の出力(X3 )を選択して
出力する。又、選択スイッチ55 は順方向変換の場合に
は加算器33 の出力(x2 +x5 )を、逆方向変換の場
合には変換器25 の出力(X4 )を選択して出力する。
選択スイッチ56 は順方向変換の場合には減算器42 の
出力(x2 −x5 )を、逆方向変換の場合には出力端2
6 の出力(X5 )を選択して出力する。選択スイッチ5
7 は順方向変換の場合には加算器34 の出力(x3 +x
4 )を、逆方向変換の場合には出力端27 の出力
(X6)を選択して出力する。選択スイッチ58 は順方
向変換の場合には減算器41 の出力(x3 −x4 )を、
逆方向変換の場合には出力端28 の出力(X7 )を選択
して出力する。
【0016】リードオンリメモリ(以下、ROMともい
う)6a,6dは分散演算を行うのに用いられる、積和
演算の結果を格納した読出し専用メモリである。ROM
6aには偶数次係数、ROM6dには奇数次係数の積和
データが格納されている。そして各ROM6a,6dは
各々第1から第4までの4個のメモリ部を有している。
う)6a,6dは分散演算を行うのに用いられる、積和
演算の結果を格納した読出し専用メモリである。ROM
6aには偶数次係数、ROM6dには奇数次係数の積和
データが格納されている。そして各ROM6a,6dは
各々第1から第4までの4個のメモリ部を有している。
【0017】これらの第1乃至第4のメモリ部は順方向
変換の場合と逆方向変換の場合とで格納するデータが異
なるので、図6に示すような2バンク構成のROMであ
る。これはコンタクトプログラムのROMであり、ワー
ド線42にゲートが接続されているNMOSトランジス
タをメモリセルとし、上記トランジスタのビット線43
と反対側のドレインが4本のプログラム線46,47,
48,49のうちのどのプログラム線によって接続され
ているかによってプログラムされるものである。
変換の場合と逆方向変換の場合とで格納するデータが異
なるので、図6に示すような2バンク構成のROMであ
る。これはコンタクトプログラムのROMであり、ワー
ド線42にゲートが接続されているNMOSトランジス
タをメモリセルとし、上記トランジスタのビット線43
と反対側のドレインが4本のプログラム線46,47,
48,49のうちのどのプログラム線によって接続され
ているかによってプログラムされるものである。
【0018】選択スイッチ5i (i=1,…8)の出力
である連続した2桁の2ビットデータのうちの下位ビッ
トデータをyai-1、上位ビットデータをybi-1とする
と、ROM6aの第1乃至第4のメモリ部の各々は選択
スイッチ51 ,53 ,55 ,57 の出力ya0,yb0,y
a2,yb2,ya4,yb4,ya6,yb6に基づいて、下位の
4ビットデータya0,ya2,ya4,ya6および上位の4
ビットデータyb0,yb2,yb4,yb6を各々アドレスと
するメモリセルに格納されている2個の積和データを出
力する。又ROM6dの第1乃至第4のメモリ部の各々
は選択スイッチ52 ,54 ,56 ,58 の出力ya1,y
b1,ya3,yb3,ya5,yb5,ya7,yb7に基づいて、
下位の4ビットデータya1,ya3,ya5,ya7および上
位の4ビットデータyb1,yb3,yb5,yb7を各々アド
レスとするメモリセルに格納されている2個の積和デー
タを出力する。例えば、ROM6aの第1のメモリ部
の、アドレスがy0 ,y2 ,y4 ,y6 であるメモリセ
ルには、順方向変換の場合は(5)式の右辺第1行の積
和に対応するデータ、すなわち、 (Ay0 +Ay2 +Ay4 +Ay6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第1行の積和に対応するデータ、すなわち (Ay0 +By2 +Ay4 +Cy6 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはパイプラインレジスタ81 および82
に各々読出され保持される。
である連続した2桁の2ビットデータのうちの下位ビッ
トデータをyai-1、上位ビットデータをybi-1とする
と、ROM6aの第1乃至第4のメモリ部の各々は選択
スイッチ51 ,53 ,55 ,57 の出力ya0,yb0,y
a2,yb2,ya4,yb4,ya6,yb6に基づいて、下位の
4ビットデータya0,ya2,ya4,ya6および上位の4
ビットデータyb0,yb2,yb4,yb6を各々アドレスと
するメモリセルに格納されている2個の積和データを出
力する。又ROM6dの第1乃至第4のメモリ部の各々
は選択スイッチ52 ,54 ,56 ,58 の出力ya1,y
b1,ya3,yb3,ya5,yb5,ya7,yb7に基づいて、
下位の4ビットデータya1,ya3,ya5,ya7および上
位の4ビットデータyb1,yb3,yb5,yb7を各々アド
レスとするメモリセルに格納されている2個の積和デー
タを出力する。例えば、ROM6aの第1のメモリ部
の、アドレスがy0 ,y2 ,y4 ,y6 であるメモリセ
ルには、順方向変換の場合は(5)式の右辺第1行の積
和に対応するデータ、すなわち、 (Ay0 +Ay2 +Ay4 +Ay6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第1行の積和に対応するデータ、すなわち (Ay0 +By2 +Ay4 +Cy6 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはパイプラインレジスタ81 および82
に各々読出され保持される。
【0019】又、ROM6aの第2のメモリ部の、アド
レスがy0 ,y2 ,y4 ,y6 であるメモリセルには、
順方向変換の場合は(5)式の右辺第2行の積和に対応
するデータ、すなわち (By0 +Cy2 −Cy4 −By6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第2行の積和に対応するデータ、すなわち (Ay0 −Cy2 −Ay4 +By6 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ83 および84 に各々読出さ
れ保持される。
レスがy0 ,y2 ,y4 ,y6 であるメモリセルには、
順方向変換の場合は(5)式の右辺第2行の積和に対応
するデータ、すなわち (By0 +Cy2 −Cy4 −By6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第2行の積和に対応するデータ、すなわち (Ay0 −Cy2 −Ay4 +By6 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ83 および84 に各々読出さ
れ保持される。
【0020】又ROM6aの第3のメモリ部の、アドレ
スがy0 ,y2 ,y4 ,y6 であるメモリセルには、順
方向変換の場合は(5)式の右辺第3行の積和に対応す
る積和データ、すなわち (Ay0 −Ay2 −Ay4 +Ay6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第3行の積和に対応する積和データ、すなわち、 (Ay0 −By2 +Ay4 −Cy6 )/2 が格納されている。そして、下位および上位ビットに対
応する積和データはレジスタ85 および86 に各々読出
され保持される。
スがy0 ,y2 ,y4 ,y6 であるメモリセルには、順
方向変換の場合は(5)式の右辺第3行の積和に対応す
る積和データ、すなわち (Ay0 −Ay2 −Ay4 +Ay6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第3行の積和に対応する積和データ、すなわち、 (Ay0 −By2 +Ay4 −Cy6 )/2 が格納されている。そして、下位および上位ビットに対
応する積和データはレジスタ85 および86 に各々読出
され保持される。
【0021】又ROM6aの第4のメモリ部の、アドレ
スがy0 ,y2 ,y4 ,y6 であるメモリセルには、順
方向変換の場合は(5)式の右辺第4行の積和に対応す
る積和データ、すなわち (Cy0 −By2 +By4 −Cy6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第4行の積和に対応するデータ、すなわち (Ay0 +Cy2 −Ay4 −By6 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ87 および88 に各々読出さ
れ保持される。
スがy0 ,y2 ,y4 ,y6 であるメモリセルには、順
方向変換の場合は(5)式の右辺第4行の積和に対応す
る積和データ、すなわち (Cy0 −By2 +By4 −Cy6 )/2 が格納され、逆方向変換の場合は(7)式の右辺第1項
第4行の積和に対応するデータ、すなわち (Ay0 +Cy2 −Ay4 −By6 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ87 および88 に各々読出さ
れ保持される。
【0022】又ROM6dの第1のメモリ部の、アドレ
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第1行の積和に対応す
る積和データ、すなわち (Dy1 +Ey3 +Fy5 +Gy7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第4行の積和に対応する積和データ、すなわち (Dy1 +Ey3 +Fy5 +Gy7 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ89 および810に各々読出さ
れ保持される。
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第1行の積和に対応す
る積和データ、すなわち (Dy1 +Ey3 +Fy5 +Gy7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第4行の積和に対応する積和データ、すなわち (Dy1 +Ey3 +Fy5 +Gy7 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ89 および810に各々読出さ
れ保持される。
【0023】又ROM6dの第2のメモリ部の、アドレ
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第2行の積和に対応す
る積和データ、すなわち (Ey1 −Gy3 −Dy5 −Fy7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第3行の積和に対応する積和データ、すなわち (Fy1 −Dy3 +Gy5 +Ey7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データはトランジスタ811および812に
各々読出され保持される。
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第2行の積和に対応す
る積和データ、すなわち (Ey1 −Gy3 −Dy5 −Fy7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第3行の積和に対応する積和データ、すなわち (Fy1 −Dy3 +Gy5 +Ey7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データはトランジスタ811および812に
各々読出され保持される。
【0024】又ROM6dの第3のメモリ部の、アドレ
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第3行の積和に対応す
る積和データ、すなわち (Fy1 −Dy3 +Gy5 +Ey7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第2行の積和に対応する積和データ、すなわち (−Gy1 +Fy3 −Fy5 +Dy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データはレジスタ813および814に各々
読出され保持される。
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第3行の積和に対応す
る積和データ、すなわち (Fy1 −Dy3 +Gy5 +Ey7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第2行の積和に対応する積和データ、すなわち (−Gy1 +Fy3 −Fy5 +Dy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データはレジスタ813および814に各々
読出され保持される。
【0025】又ROM6dの第4のメモリ部の、アドレ
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第4行の積和に対応す
る積和データ、すなわち (Gy1 −Fy3 +Ey5 −Dy7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第1行の積和に対応する積和データ、すなわち (−Ey1 +Gy3 +Dy5 +Fy7 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ815および816に各々読出さ
れ保持される。
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、順
方向変換の場合は(6)式の右辺第4行の積和に対応す
る積和データ、すなわち (Gy1 −Fy3 +Ey5 −Dy7 )/2 が格納され、逆方向変換の場合は(8)式の右辺第2項
第1行の積和に対応する積和データ、すなわち (−Ey1 +Gy3 +Dy5 +Fy7 )/2 が格納されている。そして下位および上位ビットに対応
する積和データはレジスタ815および816に各々読出さ
れ保持される。
【0026】以上述べたことから分かるようにROM6
aおよび6dの第1乃至第4のメモリ部の各サイズは、
積和データの語長を16ビットとすると、16ワード×
24ビット=16ワード×16ビットとなる。
aおよび6dの第1乃至第4のメモリ部の各サイズは、
積和データの語長を16ビットとすると、16ワード×
24ビット=16ワード×16ビットとなる。
【0027】レジスタ82i-1(i=1,…8)の出力で
ある下位ビットに対応する積和データai と、レジスタ
82iの出力である上位ビットに対応する積和データbi
とは加算器9i において加算され、その和(ai +2・
bi )はパイプラインレジスタ10i に送出され、保持
される。そして、この保持されたデータは累積加算する
ための加算器11i を介してレジスタ12i に送られ、
累積加算される。この累積加算は、離散コサイン変換器
の入力(xi-1 又はXi-1 )が16ビットであって、パ
ラレルシリアル変換器2i から1サイクルに下位ビット
から順に2ビットずつ読出されるので、8サイクルで完
了することになる。そして第j(j=1,…8)サイク
ルの累積加算を行う場合は、第j−1サイクルの累積加
算の終了値をzj-1 とし、第jサイクルにおけるレジス
タ10i の出力をCj とすると、第jサイクルにおける
累積加算の終了値zj は zj =2j-1 ・Cj +zj-1 となる。
ある下位ビットに対応する積和データai と、レジスタ
82iの出力である上位ビットに対応する積和データbi
とは加算器9i において加算され、その和(ai +2・
bi )はパイプラインレジスタ10i に送出され、保持
される。そして、この保持されたデータは累積加算する
ための加算器11i を介してレジスタ12i に送られ、
累積加算される。この累積加算は、離散コサイン変換器
の入力(xi-1 又はXi-1 )が16ビットであって、パ
ラレルシリアル変換器2i から1サイクルに下位ビット
から順に2ビットずつ読出されるので、8サイクルで完
了することになる。そして第j(j=1,…8)サイク
ルの累積加算を行う場合は、第j−1サイクルの累積加
算の終了値をzj-1 とし、第jサイクルにおけるレジス
タ10i の出力をCj とすると、第jサイクルにおける
累積加算の終了値zj は zj =2j-1 ・Cj +zj-1 となる。
【0028】したがって、累積加算が完了した場合を考
えると、レジスタ121 には順方向変換の場合、(5)
式の右辺第1行の積和、すなわち {A(x0 +x7 )+A(x1 +x6 )+A(x2 +x5 ) +A(x3 +x4 )}/2 …(9) が保持され、逆方向変換の場合、(7)式の右辺第1項
第1行の積和、すなわち (AX0 +BX2 +AX4 +CX6 )/2 …(10) が保持される。
えると、レジスタ121 には順方向変換の場合、(5)
式の右辺第1行の積和、すなわち {A(x0 +x7 )+A(x1 +x6 )+A(x2 +x5 ) +A(x3 +x4 )}/2 …(9) が保持され、逆方向変換の場合、(7)式の右辺第1項
第1行の積和、すなわち (AX0 +BX2 +AX4 +CX6 )/2 …(10) が保持される。
【0029】又レジスタ122 には順方向変換の場合、
(5)式の右辺第2行の積和、すなわち {B(x0 +x7 )+C(x1 +x6 )−C(x2 +x5 ) −B(x3 +x4 )}/2 …(11) が保持され、逆方向変換の場合、(7)式の右辺第1項
第2行の積和、すなわち (AX0 −CX2 −AX4 +BX6 )/2 …(12) が保持される。
(5)式の右辺第2行の積和、すなわち {B(x0 +x7 )+C(x1 +x6 )−C(x2 +x5 ) −B(x3 +x4 )}/2 …(11) が保持され、逆方向変換の場合、(7)式の右辺第1項
第2行の積和、すなわち (AX0 −CX2 −AX4 +BX6 )/2 …(12) が保持される。
【0030】又レジスタ123 には順方向変換の場合、
(5)式の右辺第3行の積和、すなわち {A(x0 +x7 )−A(x1 +x6 )−A(x2 +x5 ) +A(x3 +x4 )}/2 …(13) が保持され、逆方向変換の場合、(7)式の右辺第1項
第3行の積和、すなわち (AX0 −BX2 +AX4 −CX6 )/2 …(14) が保持される。
(5)式の右辺第3行の積和、すなわち {A(x0 +x7 )−A(x1 +x6 )−A(x2 +x5 ) +A(x3 +x4 )}/2 …(13) が保持され、逆方向変換の場合、(7)式の右辺第1項
第3行の積和、すなわち (AX0 −BX2 +AX4 −CX6 )/2 …(14) が保持される。
【0031】又レジスタ124 には順方向変換の場合、
(5)式の右辺第4行の積和、すなわち {C(x0 +x7 )−B(x1 +x6 )+B(x2 +x5 ) −C(x3 +x4 )}/2 …(15) が保持され、逆方向変換の場合、(7)式の右辺第1項
第4行の積和、すなわち (AX0 +CX2 −AX4 −BX6 )/2 …(16) が保持される。
(5)式の右辺第4行の積和、すなわち {C(x0 +x7 )−B(x1 +x6 )+B(x2 +x5 ) −C(x3 +x4 )}/2 …(15) が保持され、逆方向変換の場合、(7)式の右辺第1項
第4行の積和、すなわち (AX0 +CX2 −AX4 −BX6 )/2 …(16) が保持される。
【0032】又レジスタ125 には順方向変換の場合、
(6)式の右辺第1行の積和、すなわち {D(x0 −x7 )+E(x1 −x6 )+F(x2 −x5 ) +G(x3 −x4 )}/2 …(17) が保持され、逆方向変換の場合、(8)式の右辺第2項
第4行の積和、すなわち (DX1 +EX3 +FX5 +GX7 )/2 …(18) が保持される。
(6)式の右辺第1行の積和、すなわち {D(x0 −x7 )+E(x1 −x6 )+F(x2 −x5 ) +G(x3 −x4 )}/2 …(17) が保持され、逆方向変換の場合、(8)式の右辺第2項
第4行の積和、すなわち (DX1 +EX3 +FX5 +GX7 )/2 …(18) が保持される。
【0033】又レジスタ126 には順方向変換の場合、
(6)式の右辺第2行の積和、すなわち {E(x0 −x7 )−G(x1 −x6 )−D(x2 −x5 ) −F(x3 −x4 )}/2 …(19) が保持され、逆方向変換の場合、(8)式の右辺第2項
第3行の積和、すなわち (FX1 −DX3 +GX5 +EX7 )/2 …(20) が保持される。
(6)式の右辺第2行の積和、すなわち {E(x0 −x7 )−G(x1 −x6 )−D(x2 −x5 ) −F(x3 −x4 )}/2 …(19) が保持され、逆方向変換の場合、(8)式の右辺第2項
第3行の積和、すなわち (FX1 −DX3 +GX5 +EX7 )/2 …(20) が保持される。
【0034】又レジスタ127 には順方向変換の場合、
(6)式の右辺第3行の積和、すなわち {F(x0 −x7 )−D(x1 −x6 )+G(x2 −x5 ) +E(x3 −x4 )}/2 …(21) が保持され、逆方向変換の場合、(8)式の右辺第2項
第2行の積和、すなわち (−GX1 +FX3 −EX5 +DX7 )/2 …(22) が保持される。
(6)式の右辺第3行の積和、すなわち {F(x0 −x7 )−D(x1 −x6 )+G(x2 −x5 ) +E(x3 −x4 )}/2 …(21) が保持され、逆方向変換の場合、(8)式の右辺第2項
第2行の積和、すなわち (−GX1 +FX3 −EX5 +DX7 )/2 …(22) が保持される。
【0035】又レジスタ128 には順方向変換の場合、
(6)式の右辺第4行の積和、すなわち {G(x0 −x7 )−F(x1 −x6 )+E(x2 −x5 ) −D(x3 −x4 )}/2 …(23) が保持され、逆方向変換の場合、(8)式の右辺第2項
第1行の積和、すなわち (−EX1 +CX3 +DX5 +FX7 )/2 …(24) が保持される。
(6)式の右辺第4行の積和、すなわち {G(x0 −x7 )−F(x1 −x6 )+E(x2 −x5 ) −D(x3 −x4 )}/2 …(23) が保持され、逆方向変換の場合、(8)式の右辺第2項
第1行の積和、すなわち (−EX1 +CX3 +DX5 +FX7 )/2 …(24) が保持される。
【0036】そして、加算器171 はレジスタ121 と
レジスタ125 の出力の和を演算し、加算器172 はレ
ジスタ122 とレジスタ126 の出力の和を演算する。
また加算器173 はレジスタ123 とレジスタ127 の
出力の和を演算し、加算器174 はレジスタ124 とレ
ジスタ128 の出力の和を演算する。
レジスタ125 の出力の和を演算し、加算器172 はレ
ジスタ122 とレジスタ126 の出力の和を演算する。
また加算器173 はレジスタ123 とレジスタ127 の
出力の和を演算し、加算器174 はレジスタ124 とレ
ジスタ128 の出力の和を演算する。
【0037】一方、減算器181 はレジスタ124 の出
力とレジスタ125 の出力との差を演算し、減算器18
2 はレジスタ123 の出力とレジスタ126 の出力との
差を演算する。また減算器183 はレジスタ122 の出
力とレジスタ127 の出力との差を演算し、減算器18
4 はレジスタ121 の出力とレジスタ128 の出力との
差を演算する。
力とレジスタ125 の出力との差を演算し、減算器18
2 はレジスタ123 の出力とレジスタ126 の出力との
差を演算する。また減算器183 はレジスタ122 の出
力とレジスタ127 の出力との差を演算し、減算器18
4 はレジスタ121 の出力とレジスタ128 の出力との
差を演算する。
【0038】選択スイッチ211 は順方向変換の場合に
レジスタ121 の出力X0 を選択し、逆方向変換の場合
に加算器171 の出力x0 を選択して出力レジスタ22
1 に送出する。また選択スイッチ212 は順方向変換の
場合にレジスタ122 の出力X2 を選択し、逆方向変換
の場合に加算器172 の出力x2 を選択して出力レジス
タ223 に送出する。
レジスタ121 の出力X0 を選択し、逆方向変換の場合
に加算器171 の出力x0 を選択して出力レジスタ22
1 に送出する。また選択スイッチ212 は順方向変換の
場合にレジスタ122 の出力X2 を選択し、逆方向変換
の場合に加算器172 の出力x2 を選択して出力レジス
タ223 に送出する。
【0039】選択スイッチ213 は順方向変換の場合に
レジスタ123 の出力X4 を選択し、逆方向変換の場合
に加算器173 の出力x4 を選択して出力レジスタ22
5 に送出する。また選択スイッチ214 は順方向変換の
場合にレジスタ124 の出力X6 を選択し、逆方向変換
の場合に加算器174 の出力x6 を選択して出力レジス
タ227 に送出する。
レジスタ123 の出力X4 を選択し、逆方向変換の場合
に加算器173 の出力x4 を選択して出力レジスタ22
5 に送出する。また選択スイッチ214 は順方向変換の
場合にレジスタ124 の出力X6 を選択し、逆方向変換
の場合に加算器174 の出力x6 を選択して出力レジス
タ227 に送出する。
【0040】選択スイッチ215 は順方向変換の場合に
レジスタ125 の出力X1 を選択し、逆方向変換の場合
に減算器181 の出力x1 を選択して出力レジスタ22
1 に送出する。また選択スイッチ216 は順方向変換の
場合にレジスタ126 の出力X3 を選択し、逆方向変換
の場合に減算器182 の出力x3 を選択して出力レジス
タ224 に送出する。
レジスタ125 の出力X1 を選択し、逆方向変換の場合
に減算器181 の出力x1 を選択して出力レジスタ22
1 に送出する。また選択スイッチ216 は順方向変換の
場合にレジスタ126 の出力X3 を選択し、逆方向変換
の場合に減算器182 の出力x3 を選択して出力レジス
タ224 に送出する。
【0041】選択スイッチ217 は順方向変換の場合に
レジスタ127 の出力X5 を選択し、逆方向変換の場合
に減算器183 の出力x5 を選択して出力レジスタ22
6 に送出される。また選択スイッチ218 は順方向変換
の場合にレジスタ128 の出力X7 を選択し、逆方向変
換の場合に減算器184 の出力x7 を選択して出力レジ
スタ228 に送出する。
レジスタ127 の出力X5 を選択し、逆方向変換の場合
に減算器183 の出力x5 を選択して出力レジスタ22
6 に送出される。また選択スイッチ218 は順方向変換
の場合にレジスタ128 の出力X7 を選択し、逆方向変
換の場合に減算器184 の出力x7 を選択して出力レジ
スタ228 に送出する。
【0042】したがって、出力レジスタ22i (i=
1,…8)には順方向変換の場合には変換後のデータX
i-1 が保持され、逆方向変換の場合には変換後のデータ
xi-1が保持されて順次外部に出力されることになる。
1,…8)には順方向変換の場合には変換後のデータX
i-1 が保持され、逆方向変換の場合には変換後のデータ
xi-1が保持されて順次外部に出力されることになる。
【0043】
【発明が解決しようとする課題】上述の分散演算方式を
用いた従来の離散コサイン変換装置においては、リード
オンリメモリ6a,6dを順変換と逆変換とで共用する
ために、順変換と逆変換とで格納データを換えることの
できる2バンク構成のコンタクトプログラム方式を用い
ている。2バンク構成のメモリは制御線が4本必要なた
めに面積が大きくなり、これにより離散コサイン変換装
置のサイズも大きくなるという問題があった。
用いた従来の離散コサイン変換装置においては、リード
オンリメモリ6a,6dを順変換と逆変換とで共用する
ために、順変換と逆変換とで格納データを換えることの
できる2バンク構成のコンタクトプログラム方式を用い
ている。2バンク構成のメモリは制御線が4本必要なた
めに面積が大きくなり、これにより離散コサイン変換装
置のサイズも大きくなるという問題があった。
【0044】本発明は上記事情を考慮してなされたもの
であって、サイズを可及的に小さくすることのできる離
散コサイン変換装置を提供することを目的とする。
であって、サイズを可及的に小さくすることのできる離
散コサイン変換装置を提供することを目的とする。
【0045】
【課題を解決するための手段】本発明による離散コサイ
ン変換装置は、番号付けされた2N個の入力データのう
ち偶数次のN個のデータの同一桁のビット値をアドレス
とし、このアドレスに前記同一桁のビット値と変換行列
成分との積和データが格納されている第1の記憶手段
と、前記2N個の入力データのうち奇数次のN個のデー
タの同一桁のビット値をアドレスとし、このアドレスに
前記同一桁のビット値と変換行列成分との積和データが
格納されている第2の記憶手段と、順方向変換の際には
前記第2の記憶手段からの読出しデータのうち1部のデ
ータをそのまま出力し、逆方向変換の際には前記1部の
データを反転して出力する反転手段と、前記第1の記憶
手段からの読出しデータを累積加算する第1の累積加算
手段と、前記第2の記憶手段からの読出しデータから前
記1部のデータを除いた残りのデータおよび前記反転手
段の出力を各々累積加算する第2の累積加算手段と、を
備え、前記第1の記憶手段には順方向変換と逆方向変換
とでは異なるデータが記憶され前記第2の記憶手段は同
一のデータが記憶されていることを特徴とする。
ン変換装置は、番号付けされた2N個の入力データのう
ち偶数次のN個のデータの同一桁のビット値をアドレス
とし、このアドレスに前記同一桁のビット値と変換行列
成分との積和データが格納されている第1の記憶手段
と、前記2N個の入力データのうち奇数次のN個のデー
タの同一桁のビット値をアドレスとし、このアドレスに
前記同一桁のビット値と変換行列成分との積和データが
格納されている第2の記憶手段と、順方向変換の際には
前記第2の記憶手段からの読出しデータのうち1部のデ
ータをそのまま出力し、逆方向変換の際には前記1部の
データを反転して出力する反転手段と、前記第1の記憶
手段からの読出しデータを累積加算する第1の累積加算
手段と、前記第2の記憶手段からの読出しデータから前
記1部のデータを除いた残りのデータおよび前記反転手
段の出力を各々累積加算する第2の累積加算手段と、を
備え、前記第1の記憶手段には順方向変換と逆方向変換
とでは異なるデータが記憶され前記第2の記憶手段は同
一のデータが記憶されていることを特徴とする。
【0046】
【作用】このように構成された本発明の離散コサイン変
換装置によれば、第2の記憶手段に格納されているデー
タは順方向変換と逆方向変換との間で共用可能となり、
これにより変換装置のサイズを従来の場合に比べて小さ
くすることができる。
換装置によれば、第2の記憶手段に格納されているデー
タは順方向変換と逆方向変換との間で共用可能となり、
これにより変換装置のサイズを従来の場合に比べて小さ
くすることができる。
【0047】
【実施例】本発明による離散コサイン変換装置の第1の
実施例の構成を図1に示す。この実施例の離散コサイン
変換装置は図5に示す従来の離散コサイン変換装置にお
いて、ROM6dの代わりにROM6bを、加算器17
1 ,…174 の代わりに加算器131 ,…134 を、減
算器182 ,…184 の代わりに減算器141 ,…14
4 を、選択スイッチ211 ,…218 の代わりに選択ス
イッチ191 ,…198 を用い、更に補数生成器71 ,
72 を新たに設けたものである。
実施例の構成を図1に示す。この実施例の離散コサイン
変換装置は図5に示す従来の離散コサイン変換装置にお
いて、ROM6dの代わりにROM6bを、加算器17
1 ,…174 の代わりに加算器131 ,…134 を、減
算器182 ,…184 の代わりに減算器141 ,…14
4 を、選択スイッチ211 ,…218 の代わりに選択ス
イッチ191 ,…198 を用い、更に補数生成器71 ,
72 を新たに設けたものである。
【0048】補数生成器7i (i=1,2)は順方向変
換の場合にはROM6bから送出される2個のn(この
例ではn=16)ビットデータをそのまま出力し、逆方
向変換の場合には上記2個のnビットデータの2の補数
を各々生成して出力する。この補数生成器7i は例えば
図3(a)に示す回路によって構成される。図3(a)
において、nビットデータをdn-1 dn-2 …d1 d0 と
すると、補数生成器7i は、2n−1個のOR回路と、
2n個のAND回路と、2n個の排他的論理和回路とか
らなっている。そして、制御信号は順方向変換の場合に
は“L”であり逆方向変換の場合には“H”となる。又
キャリー入力は逆方向変換の場合に“L”となる信号で
ある。このような図3(a)に示す構成において、順方
向変換の場合は排他的論理和回路から入力データと同一
のデータが出力され、逆方向変換の場合は2の補数が出
力される。なお、図3(a)においては2の補数を生成
したが、図3(b)又は(c)に示すように1の補数を
生成する補数生成器を用いてもよい。この場合は、次段
の加算器35(図1の実施例では加算器9i )において
最下位ビット(LSB)にキャリー入力をする必要があ
る。
換の場合にはROM6bから送出される2個のn(この
例ではn=16)ビットデータをそのまま出力し、逆方
向変換の場合には上記2個のnビットデータの2の補数
を各々生成して出力する。この補数生成器7i は例えば
図3(a)に示す回路によって構成される。図3(a)
において、nビットデータをdn-1 dn-2 …d1 d0 と
すると、補数生成器7i は、2n−1個のOR回路と、
2n個のAND回路と、2n個の排他的論理和回路とか
らなっている。そして、制御信号は順方向変換の場合に
は“L”であり逆方向変換の場合には“H”となる。又
キャリー入力は逆方向変換の場合に“L”となる信号で
ある。このような図3(a)に示す構成において、順方
向変換の場合は排他的論理和回路から入力データと同一
のデータが出力され、逆方向変換の場合は2の補数が出
力される。なお、図3(a)においては2の補数を生成
したが、図3(b)又は(c)に示すように1の補数を
生成する補数生成器を用いてもよい。この場合は、次段
の加算器35(図1の実施例では加算器9i )において
最下位ビット(LSB)にキャリー入力をする必要があ
る。
【0049】一方ROM6bは奇数次係数の積和演算結
果を格納してあり、従来の場合と同様に第1乃至第4の
メモリ部を有している。しかし、このROM6bの第1
乃至第4のメモリ部は各々従来の場合と異なり図3に示
すような2本のプログラム線44,45によってプログ
ラムされる1バンク構成のROMとなっている。したが
って順方向変換であるか又は逆方向変換であるかを問わ
ず同一の値となる。そしてROM6bの第1乃至第4の
メモリ部の各々は選択スイッチ52 ,54 ,56 ,58
の出力ya1, yb1,ya3,yb3,ya5,yb5,ya7,y
b7に基づいて、下位の4ビットデータya1, ya3,
ya5,ya7および上位の4ビットデータyb1,yb3,y
b5,yb7を各々アドレスとするメモリセルに格納されて
いる2個の積和データを出力する。例えばROM6bの
第1のメモリ部の、アドレスがy1 ,y3 ,y5 ,y7
であるメモリセルには、(6)式の右辺第1行の積和に
対応する積和データ、すなわち (Dy1 +Ey3 +Fy5 +Gy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データがレジスタ89 および810に各々
読出され保持される。
果を格納してあり、従来の場合と同様に第1乃至第4の
メモリ部を有している。しかし、このROM6bの第1
乃至第4のメモリ部は各々従来の場合と異なり図3に示
すような2本のプログラム線44,45によってプログ
ラムされる1バンク構成のROMとなっている。したが
って順方向変換であるか又は逆方向変換であるかを問わ
ず同一の値となる。そしてROM6bの第1乃至第4の
メモリ部の各々は選択スイッチ52 ,54 ,56 ,58
の出力ya1, yb1,ya3,yb3,ya5,yb5,ya7,y
b7に基づいて、下位の4ビットデータya1, ya3,
ya5,ya7および上位の4ビットデータyb1,yb3,y
b5,yb7を各々アドレスとするメモリセルに格納されて
いる2個の積和データを出力する。例えばROM6bの
第1のメモリ部の、アドレスがy1 ,y3 ,y5 ,y7
であるメモリセルには、(6)式の右辺第1行の積和に
対応する積和データ、すなわち (Dy1 +Ey3 +Fy5 +Gy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データがレジスタ89 および810に各々
読出され保持される。
【0050】又ROM6bの第2のメモリ部の、アドレ
スが、y1 ,y3 ,y5 ,y7 であるメモリセルには、
(6)式の右辺第2項の積和に対応する積和データ、す
なわち (Ey1 −Gy3 −Dy5 −Fy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データは補数生成器71 に送られて順方
向変換の場合はそのままレジスタ811および812に各々
出力され、逆方向変換の場合は2の補数が演算されてレ
ジスタ811および812に各々出力される。
スが、y1 ,y3 ,y5 ,y7 であるメモリセルには、
(6)式の右辺第2項の積和に対応する積和データ、す
なわち (Ey1 −Gy3 −Dy5 −Fy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データは補数生成器71 に送られて順方
向変換の場合はそのままレジスタ811および812に各々
出力され、逆方向変換の場合は2の補数が演算されてレ
ジスタ811および812に各々出力される。
【0051】又ROM6bの第3のメモリ部の、アドレ
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、
(6)式の右辺第3行の積和に対応する積和データ、す
なわち (Fy1 −Dy3 +Gy5 +Ey7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データがレジスタ813および814に各々
読出され保持される。
スがy1 ,y3 ,y5 ,y7 であるメモリセルには、
(6)式の右辺第3行の積和に対応する積和データ、す
なわち (Fy1 −Dy3 +Gy5 +Ey7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データがレジスタ813および814に各々
読出され保持される。
【0052】ROM6bの第4のメモリ部の、アドレス
が、y1 ,y3 ,y5 ,y7 であるメモリセルには、
(6)式の右辺第4行の積和に対応する積和データ、す
なわち (Gy1 −Fy3 +Ey5 −Dy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データは補数生成器72 に送られて順方
向変換の場合はそのままレジスタ815および816に各々
出力され、逆方向変換の場合は2の補数が演算されてレ
ジスタ815および816に各々出力される。
が、y1 ,y3 ,y5 ,y7 であるメモリセルには、
(6)式の右辺第4行の積和に対応する積和データ、す
なわち (Gy1 −Fy3 +Ey5 −Dy7 )/2 が格納されている。そして下位ビットおよび上位ビット
に対応する積和データは補数生成器72 に送られて順方
向変換の場合はそのままレジスタ815および816に各々
出力され、逆方向変換の場合は2の補数が演算されてレ
ジスタ815および816に各々出力される。
【0053】レジスタ82i-1(i=1,…8)の出力で
ある下位ビットに対応する積和データai と、レジスタ
82iの出力である上位ビットに対応する積和データとは
加算器9i において加算され、その和(ai +2・
bi )はパイプラインレジスタ10i に送出され、保持
される。そして、この保持されたデータは累積加算する
ための加算器11i を介してレジスタ12i に送られ、
累積加算される。
ある下位ビットに対応する積和データai と、レジスタ
82iの出力である上位ビットに対応する積和データとは
加算器9i において加算され、その和(ai +2・
bi )はパイプラインレジスタ10i に送出され、保持
される。そして、この保持されたデータは累積加算する
ための加算器11i を介してレジスタ12i に送られ、
累積加算される。
【0054】したがって累積加算が完了すると、従来の
場合と同様にレジスタ121 ,122 ,123 ,124
には、順方向変換の場合(9),(11),(13),(1
5)式の積和データが各々保持され、逆方向変換の場合
(10),(12),(14),(16)式の積和データが各々
保持される。又レジスタ125 ,126 ,127 ,18
8 には順方向変換の場合、従来の場合と同様に(17),
(19),(21),(23)式の積和データが各々保持され
る。しかし、逆方向変換の場合は従来の場合と異なり、
レジスタ125 ,126 ,127 ,128 には(18),
(24),(20),(22)式の積和データが各々保持され
る。
場合と同様にレジスタ121 ,122 ,123 ,124
には、順方向変換の場合(9),(11),(13),(1
5)式の積和データが各々保持され、逆方向変換の場合
(10),(12),(14),(16)式の積和データが各々
保持される。又レジスタ125 ,126 ,127 ,18
8 には順方向変換の場合、従来の場合と同様に(17),
(19),(21),(23)式の積和データが各々保持され
る。しかし、逆方向変換の場合は従来の場合と異なり、
レジスタ125 ,126 ,127 ,128 には(18),
(24),(20),(22)式の積和データが各々保持され
る。
【0055】そして、加算器131 はレジスタ121 と
レジスタ125 の出力の和を演算し、加算器132 はレ
ジスタ122 とレジスタ127 の出力の和を演算する。
また加算器133 はレジスタ123 とレジスタ128 の
出力の和を演算し、加算器134 はレジスタ124 とレ
ジスタ126 の出力の和を演算する。
レジスタ125 の出力の和を演算し、加算器132 はレ
ジスタ122 とレジスタ127 の出力の和を演算する。
また加算器133 はレジスタ123 とレジスタ128 の
出力の和を演算し、加算器134 はレジスタ124 とレ
ジスタ126 の出力の和を演算する。
【0056】一方、減算器141 はレジスタ124 の出
力とレジスタ126 の出力の差を演算し、減算器142
はレジスタ123 の出力とレジスタ128 の出力の差を
演算する。また減算器143 はレジスタ122 の出力と
レジスタ127 の出力の差を演算し、減算器144 はレ
ジスタ121 の出力とレジスタ125 の出力の差を演算
する。
力とレジスタ126 の出力の差を演算し、減算器142
はレジスタ123 の出力とレジスタ128 の出力の差を
演算する。また減算器143 はレジスタ122 の出力と
レジスタ127 の出力の差を演算し、減算器144 はレ
ジスタ121 の出力とレジスタ125 の出力の差を演算
する。
【0057】選択スイッチ191 は順方向変換の場合に
レジスタ121 の出力X0 を選択し、逆方向変換の場合
に加算器131 の出力x0 を選択して出力レジスタ22
1 に送出する。また選択スイッチ192 は順方向変換の
場合にレジスタ122 の出力X2 を選択し、逆方向変換
の場合に加算器132 の出力x2 を選択して出力レジス
タ223 に送出する。
レジスタ121 の出力X0 を選択し、逆方向変換の場合
に加算器131 の出力x0 を選択して出力レジスタ22
1 に送出する。また選択スイッチ192 は順方向変換の
場合にレジスタ122 の出力X2 を選択し、逆方向変換
の場合に加算器132 の出力x2 を選択して出力レジス
タ223 に送出する。
【0058】選択スイッチ193 は順方向変換の場合に
レジスタ123 の出力X4 を選択し、逆方向変換の場合
に加算器133 の出力x4 を選択して出力レジスタ22
5 に送出する。また選択スイッチ194 は順方向変換の
場合にレジスタ124 の出力X6 を選択し、逆方向変換
の場合に加算器134 の出力x6 を選択して出力レジス
タ227 に送出する。
レジスタ123 の出力X4 を選択し、逆方向変換の場合
に加算器133 の出力x4 を選択して出力レジスタ22
5 に送出する。また選択スイッチ194 は順方向変換の
場合にレジスタ124 の出力X6 を選択し、逆方向変換
の場合に加算器134 の出力x6 を選択して出力レジス
タ227 に送出する。
【0059】選択スイッチ195 は順方向変換の場合に
レジスタ125 の出力X1 を選択し、逆方向変換の場合
に減算器141 の出力x1 を選択して出力レジスタ22
2 に送出する。また選択スイッチ196 は順方向変換の
場合にレジスタ126 の出力X3 を選択し、逆方向変換
の場合に減算器142 の出力x3 を選択して出力レジス
タ224 に送出する。
レジスタ125 の出力X1 を選択し、逆方向変換の場合
に減算器141 の出力x1 を選択して出力レジスタ22
2 に送出する。また選択スイッチ196 は順方向変換の
場合にレジスタ126 の出力X3 を選択し、逆方向変換
の場合に減算器142 の出力x3 を選択して出力レジス
タ224 に送出する。
【0060】選択スイッチ197 は順方向変換の場合に
レジスタ127 の出力X5 を選択し、逆方向変換の場合
に減算器143 の出力x5 を選択して出力レジスタ22
6 に送出する。また選択スイッチ198 は順方向変換の
場合にレジスタ128 の出力X7 を選択し、逆方向変換
の場合に減算器144 の出力x7 を選択して出力レジス
タ228 に送出する。
レジスタ127 の出力X5 を選択し、逆方向変換の場合
に減算器143 の出力x5 を選択して出力レジスタ22
6 に送出する。また選択スイッチ198 は順方向変換の
場合にレジスタ128 の出力X7 を選択し、逆方向変換
の場合に減算器144 の出力x7 を選択して出力レジス
タ228 に送出する。
【0061】したがって、出力レジスタ22i (i=
1,…8)には順方向変換の場合には変換後のデータX
i-1 が保持され、逆方向変換の場合には変換後のデータ
xi-1が保持されて順次外部に出力される。
1,…8)には順方向変換の場合には変換後のデータX
i-1 が保持され、逆方向変換の場合には変換後のデータ
xi-1が保持されて順次外部に出力される。
【0062】以上説明したように本実施例によれば、奇
数次係数に関する積和データがROM6bにおいて順方
向変換と逆方向変換との場合で共用することが可能とな
る。これによりROM6bのメモリセルを1バンク構造
とすることができ、ROM6bのサイズを小さくするこ
とができる。なお、本実施例においては、補数生成器7
1 ,72 が設けられているが、この補数生成器の占有面
積はそれほど大きくない。したがって変換装置全体とし
ては占有面積(サイズ)を従来の場合に比べて小さくす
ることができる。
数次係数に関する積和データがROM6bにおいて順方
向変換と逆方向変換との場合で共用することが可能とな
る。これによりROM6bのメモリセルを1バンク構造
とすることができ、ROM6bのサイズを小さくするこ
とができる。なお、本実施例においては、補数生成器7
1 ,72 が設けられているが、この補数生成器の占有面
積はそれほど大きくない。したがって変換装置全体とし
ては占有面積(サイズ)を従来の場合に比べて小さくす
ることができる。
【0063】次に本発明による離散コサイン変換装置の
第2の実施例の構成を図2に示す。この実施例の離散コ
サイン変換装置は図1に示す第1の実施例において、補
数生成器71 ,72 の代わりに補数生成器73 ,7
4 を、加算器131 ,…134 の代わりに減算器1
51 ,…154 を、減算器141 ,…144 の代わりに
加算器161 ,…164 を、選択スイッチ191 ,…1
98 の代わりに選択スイッチ201 ,…208 を設けた
ものである。そして、この変換装置は逆方向変換が下記
の(25),(26)式を用いて行うものである。
第2の実施例の構成を図2に示す。この実施例の離散コ
サイン変換装置は図1に示す第1の実施例において、補
数生成器71 ,72 の代わりに補数生成器73 ,7
4 を、加算器131 ,…134 の代わりに減算器1
51 ,…154 を、減算器141 ,…144 の代わりに
加算器161 ,…164 を、選択スイッチ191 ,…1
98 の代わりに選択スイッチ201 ,…208 を設けた
ものである。そして、この変換装置は逆方向変換が下記
の(25),(26)式を用いて行うものである。
【0064】
【数5】 (25),(26)式の変換式は各々(7),(8)式にお
いて右辺第2項の式の演算符号を反転するとともに第2
項の係数行列の成分を反転したものである。
いて右辺第2項の式の演算符号を反転するとともに第2
項の係数行列の成分を反転したものである。
【0065】補数生成器73 ,74 は第1の実施例の補
数生成器71 ,72 と同一の機能を有している。補数生
成器73 はROM6bの第1のメモリ部の出力を、順方
向変換の場合にそのまま出力し、逆方向変換の場合に2
の補数を演算してレジスタ89 ,810に送出する。ま
た、補数生成器74 はROMの第3のメモリ部の出力を
順方向変換の場合にそのまま出力し、逆方向変換の場合
に2の補数を演算してレジスタ813,814に送出する。
なお、第2の実施例においてはROM6bの第2のメモ
リ部の出力はレジスタ811,812に直接に送出され、第
4のメモリ部の出力はレジスタ815,816に直接に送出
される。
数生成器71 ,72 と同一の機能を有している。補数生
成器73 はROM6bの第1のメモリ部の出力を、順方
向変換の場合にそのまま出力し、逆方向変換の場合に2
の補数を演算してレジスタ89 ,810に送出する。ま
た、補数生成器74 はROMの第3のメモリ部の出力を
順方向変換の場合にそのまま出力し、逆方向変換の場合
に2の補数を演算してレジスタ813,814に送出する。
なお、第2の実施例においてはROM6bの第2のメモ
リ部の出力はレジスタ811,812に直接に送出され、第
4のメモリ部の出力はレジスタ815,816に直接に送出
される。
【0066】したがって、累積加算が完了すると、第1
の実施例の場合と同様にレジスタ121 ,122 ,12
3 ,124 には、順方向変換の場合(9),(11),
(13),(15)式の積和データが各々保持され、逆方向
変換の場合(10),(12),(14),(16)式の積和デ
ータが各々保持される。又レジスタ125 ,126 ,1
27 ,128 には順方向変換の場合、第1の実施例と同
様に(17),(19),(21),(23)式の積和データが
各々保持される。しかし逆方向変換の場合には、第1の
実施例の場合と異なり、レジスタ125 ,126 ,12
7 ,128 には(18),(24),(20),(22)式の積
和データの符号を反転させたものが各々保持される。
の実施例の場合と同様にレジスタ121 ,122 ,12
3 ,124 には、順方向変換の場合(9),(11),
(13),(15)式の積和データが各々保持され、逆方向
変換の場合(10),(12),(14),(16)式の積和デ
ータが各々保持される。又レジスタ125 ,126 ,1
27 ,128 には順方向変換の場合、第1の実施例と同
様に(17),(19),(21),(23)式の積和データが
各々保持される。しかし逆方向変換の場合には、第1の
実施例の場合と異なり、レジスタ125 ,126 ,12
7 ,128 には(18),(24),(20),(22)式の積
和データの符号を反転させたものが各々保持される。
【0067】そして減算器151 はレジスタ121 の出
力とレジスタ125 の出力との差を演算し、減算器15
2 はレジスタ122 の出力とレジスタ127 の出力との
差を演算する。また減算器153 はレジスタ123 の出
力とレジスタ128 の出力との差を演算し、減算器15
4 はレジスタ124 の出力とレジスタ126 の出力との
差を演算する。
力とレジスタ125 の出力との差を演算し、減算器15
2 はレジスタ122 の出力とレジスタ127 の出力との
差を演算する。また減算器153 はレジスタ123 の出
力とレジスタ128 の出力との差を演算し、減算器15
4 はレジスタ124 の出力とレジスタ126 の出力との
差を演算する。
【0068】一方、加算器161 はレジスタ124 の出
力とレジスタ126 の出力との和を演算し、加算器16
2 はレジスタ123 の出力とレジスタ128 の出力との
和を演算する。また加算器163 はレジスタ122 の出
力とレジスタ127 の出力との和を演算し、加算器16
4 はレジスタ121 の出力とレジスタ125 の出力との
和を演算する。
力とレジスタ126 の出力との和を演算し、加算器16
2 はレジスタ123 の出力とレジスタ128 の出力との
和を演算する。また加算器163 はレジスタ122 の出
力とレジスタ127 の出力との和を演算し、加算器16
4 はレジスタ121 の出力とレジスタ125 の出力との
和を演算する。
【0069】選択スイッチ201 は順方向変換の場合に
レジスタ121 の出力X0 を選択し、逆方向変換の場合
に減算器151 の出力x0 を選択して出力レジスタ22
1 に送出する。また選択スイッチ202 は順方向変換の
場合にレジスタ122 の出力X2 を選択し、逆方向変換
の場合に減算器152 の出力x2 を選択して出力レジス
タ223 に送出する。
レジスタ121 の出力X0 を選択し、逆方向変換の場合
に減算器151 の出力x0 を選択して出力レジスタ22
1 に送出する。また選択スイッチ202 は順方向変換の
場合にレジスタ122 の出力X2 を選択し、逆方向変換
の場合に減算器152 の出力x2 を選択して出力レジス
タ223 に送出する。
【0070】選択スイッチ203 は順方向変換の場合に
レジスタ123 の出力X4 を選択し、逆方向変換の場合
に減算器153 の出力x4 を選択して出力レジスタ22
5 に送出する。また選択スイッチ204 は順方向変換の
場合にレジスタ124 の出力X6 を選択し、逆方向変換
の場合に減算器154 の出力x6 を選択して出力レジス
タ227 に送出する。
レジスタ123 の出力X4 を選択し、逆方向変換の場合
に減算器153 の出力x4 を選択して出力レジスタ22
5 に送出する。また選択スイッチ204 は順方向変換の
場合にレジスタ124 の出力X6 を選択し、逆方向変換
の場合に減算器154 の出力x6 を選択して出力レジス
タ227 に送出する。
【0071】選択スイッチ205 は順方向変換の場合に
レジスタ125 の出力X1 を選択し、逆方向変換の場合
に加算器161 の出力x1 を選択して出力レジスタ22
2 に送出する。また選択スイッチ206 は順方向変換の
場合にレジスタ126 の出力X3 を選択し、逆方向変換
の場合に加算器162 の出力x3 を選択して出力レジス
タ224 に送出する。
レジスタ125 の出力X1 を選択し、逆方向変換の場合
に加算器161 の出力x1 を選択して出力レジスタ22
2 に送出する。また選択スイッチ206 は順方向変換の
場合にレジスタ126 の出力X3 を選択し、逆方向変換
の場合に加算器162 の出力x3 を選択して出力レジス
タ224 に送出する。
【0072】選択スイッチ207 は順方向変換の場合に
レジスタ127 の出力X5 を選択し、逆方向変換の場合
に加算器163 の出力x5 を選択して出力レジスタ22
6 に送出する。また選択スイッチ208 は順方向変換の
場合にレジスタ128 の出力X7 を選択し、逆方向変換
の場合に加算器164 の出力x7 を選択して出力レジス
タ228 に送出する。
レジスタ127 の出力X5 を選択し、逆方向変換の場合
に加算器163 の出力x5 を選択して出力レジスタ22
6 に送出する。また選択スイッチ208 は順方向変換の
場合にレジスタ128 の出力X7 を選択し、逆方向変換
の場合に加算器164 の出力x7 を選択して出力レジス
タ228 に送出する。
【0073】したがって、出力レジスタ22i (i=
1,…8)には順方向変換の場合には変換後のデータX
i-1 が保持され、逆方向変換の場合には変換後のデータ
xi-1が保持されて順次外部に出力される。
1,…8)には順方向変換の場合には変換後のデータX
i-1 が保持され、逆方向変換の場合には変換後のデータ
xi-1が保持されて順次外部に出力される。
【0074】この第2の実施例も第1の実施例と同様の
効果を有することは言うまでもない。
効果を有することは言うまでもない。
【0075】
【発明の効果】以上述べたように本発明によればサイズ
を従来の場合に比べて小さくすることができる。
を従来の場合に比べて小さくすることができる。
【図1】本発明の第1の実施例の構成を示すブロック
図。
図。
【図2】本発明の第2の実施例の構成を示すブロック
図。
図。
【図3】補数生成器の具体例を示す回路図。
【図4】1バンク構造のROMの構成を示す回路図。
【図5】従来の離散コサイン変換装置の構成を示すブロ
ック図。
ック図。
【図6】2バンク構造のROMの構成を示す回路図。
【図7】データ入力装置の構成の具体例を示す模式図。
1i データ入力装置 2i (i=1,…8) データ入力装置の出力端 3i (i=1,…4) 加算器 4i (i=1,…4) 減算器 5i (i=1,…8) 選択スイッチ 6a ROM 6b ROM 7i (i=1,2) 補数生成器 8i (i=1,…16) パイプラインレジスタ 9i (i=1,…8) 加算器 10i (i=1,…8) パイプラインレジスタ 11i (i=1,…8) 加算器 12i (i=1,…8) レジスタ 13i (i=1,…4) 加算器 14i (i=1,…4) 減算器 19i (i=1,…8) 選択スイッチ 22i (i=1,…8) 出力レジスタ
Claims (1)
- 【請求項1】番号付けされた2N個の入力データのうち
偶数次のN個のデータの同一桁のビット値をアドレスと
し、このアドレスに前記同一桁のビット値と変換行列成
分との積和データが格納されている第1の記憶手段と、 前記2N個の入力データのうち奇数次のN個のデータの
同一桁のビット値をアドレスとし、このアドレスに前記
同一桁のビット値と変換行列成分との積和データが格納
されている第2の記憶手段と、 順方向変換の際には前記第2の記憶手段からの読出しデ
ータのうち1部のデータをそのまま出力し、逆方向変換
の際には前記1部のデータを反転して出力する反転手段
と、 前記第1の記憶手段からの読出しデータを累積加算する
第1の累積加算手段と、 前記第2の記憶手段からの読出しデータから前記1部の
データを除いた残りのデータおよび前記反転手段の出力
を各々累積加算する第2の累積加算手段と、 を備え、 前記第1の記憶手段には順方向変換と逆方向変換とでは
異なるデータが記憶され前記第2の記憶手段は同一のデ
ータが記憶されていることを特徴とする離散コサイン変
換装置。
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5267376A JP2997613B2 (ja) | 1993-10-26 | 1993-10-26 | 離散コサイン変換装置 |
| DE69425101T DE69425101T2 (de) | 1993-10-26 | 1994-10-26 | Rechner für die diskrete Cosinustransformation |
| KR1019940027398A KR0139703B1 (ko) | 1993-10-26 | 1994-10-26 | 이산코사인변환장치 |
| EP94116934A EP0650128B1 (en) | 1993-10-26 | 1994-10-26 | Discrete cosine transform processor |
| US08/329,382 US5598361A (en) | 1993-10-26 | 1994-10-26 | Discrete cosine transform processor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5267376A JP2997613B2 (ja) | 1993-10-26 | 1993-10-26 | 離散コサイン変換装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH07121507A true JPH07121507A (ja) | 1995-05-12 |
| JP2997613B2 JP2997613B2 (ja) | 2000-01-11 |
Family
ID=17443985
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5267376A Expired - Fee Related JP2997613B2 (ja) | 1993-10-26 | 1993-10-26 | 離散コサイン変換装置 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5598361A (ja) |
| EP (1) | EP0650128B1 (ja) |
| JP (1) | JP2997613B2 (ja) |
| KR (1) | KR0139703B1 (ja) |
| DE (1) | DE69425101T2 (ja) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW284869B (ja) * | 1994-05-27 | 1996-09-01 | Hitachi Ltd | |
| JP2778622B2 (ja) * | 1995-06-06 | 1998-07-23 | 日本電気株式会社 | 2次元dct回路 |
| US5801979A (en) * | 1995-10-20 | 1998-09-01 | Matsushita Electric Corporation Of America | Carry logic that produces a carry value from NLSBs for a ROM accumulator in an inverse discrete cosine transform processor |
| US5805482A (en) * | 1995-10-20 | 1998-09-08 | Matsushita Electric Corporation Of America | Inverse discrete cosine transform processor having optimum input structure |
| US5867601A (en) * | 1995-10-20 | 1999-02-02 | Matsushita Electric Corporation Of America | Inverse discrete cosine transform processor using parallel processing |
| US5999958A (en) * | 1996-04-24 | 1999-12-07 | National Science Council | Device for computing discrete cosine transform and inverse discrete cosine transform |
| US5854757A (en) * | 1996-05-07 | 1998-12-29 | Lsi Logic Corporation | Super-compact hardware architecture for IDCT computation |
| GB0405283D0 (en) * | 2004-03-09 | 2004-04-21 | Aspex Technology Ltd | Multi-port memory for flexible and space efficient corner turning networks in associative processors |
| US20070009166A1 (en) * | 2005-07-05 | 2007-01-11 | Ju Chi-Cheng | Scalable system for discrete cosine transform and method thereof |
| US10642921B2 (en) * | 2011-11-03 | 2020-05-05 | Texas Instruments Incorporated | Unified forward and inverse transform architecture |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4829465A (en) * | 1986-06-19 | 1989-05-09 | American Telephone And Telegraph Company, At&T Bell Laboratories | High speed cosine transform |
| FR2603719B1 (fr) * | 1986-09-04 | 1991-10-31 | Duhamel Pierre | Dispositif de determination de la transformee numerique d'un signal |
| US5268853A (en) * | 1989-12-01 | 1993-12-07 | Ricoh Company, Ltd. | Orthogonal transformation processor for compressing information |
| JP2511173B2 (ja) * | 1990-05-11 | 1996-06-26 | 株式会社グラフィックス・コミュニケーション・テクノロジーズ | 離散コサイン順変換・逆変換装置 |
| JP2866754B2 (ja) * | 1991-03-27 | 1999-03-08 | 三菱電機株式会社 | 演算処理装置 |
| JP3046115B2 (ja) * | 1991-11-29 | 2000-05-29 | 富士フイルムマイクロデバイス株式会社 | 離散コサイン変換器 |
| US5361220A (en) * | 1991-11-29 | 1994-11-01 | Fuji Photo Film Co., Ltd. | Discrete cosine transformation with reduced components |
| KR950000386B1 (ko) * | 1992-12-30 | 1995-01-16 | 재단법인 한국전자통신연구소 | 이산여현 변환회로 |
-
1993
- 1993-10-26 JP JP5267376A patent/JP2997613B2/ja not_active Expired - Fee Related
-
1994
- 1994-10-26 EP EP94116934A patent/EP0650128B1/en not_active Expired - Lifetime
- 1994-10-26 DE DE69425101T patent/DE69425101T2/de not_active Expired - Fee Related
- 1994-10-26 KR KR1019940027398A patent/KR0139703B1/ko not_active Expired - Fee Related
- 1994-10-26 US US08/329,382 patent/US5598361A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| EP0650128A2 (en) | 1995-04-26 |
| KR0139703B1 (ko) | 1998-07-01 |
| EP0650128B1 (en) | 2000-07-05 |
| KR950012271A (ko) | 1995-05-16 |
| DE69425101T2 (de) | 2001-03-22 |
| EP0650128A3 (en) | 1995-06-07 |
| DE69425101D1 (de) | 2000-08-10 |
| JP2997613B2 (ja) | 2000-01-11 |
| US5598361A (en) | 1997-01-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5249146A (en) | Dct/idct processor and data processing method | |
| US5361220A (en) | Discrete cosine transformation with reduced components | |
| US4791598A (en) | Two-dimensional discrete cosine transform processor | |
| US5331585A (en) | Orthogonal transformation processor for compressing information | |
| JP2630802B2 (ja) | 変換符号化を用いたテレビジョン転送システム | |
| JPH07236143A (ja) | 高速デジタル信号復号化方法 | |
| JPS63136167A (ja) | 直交変換プロセッサ | |
| JP2997613B2 (ja) | 離散コサイン変換装置 | |
| WO1999010818A1 (en) | Variable block size 2-dimensional inverse discrete cosine transform engine | |
| KR0139699B1 (ko) | 이산 코사인 변환장치 | |
| US5359549A (en) | Orthogonal transformation processor for compressing information | |
| JPH06149861A (ja) | Dct及び逆dct演算装置並びにその演算方法 | |
| US5825420A (en) | Processor for performing two-dimensional inverse discrete cosine transform | |
| JPH07200539A (ja) | 二次元dct演算装置 | |
| Sjostrom et al. | Discrete cosine transform chip for real-time video applications | |
| JP2901896B2 (ja) | 直交変換プロセッサ | |
| JP3046115B2 (ja) | 離散コサイン変換器 | |
| JP2960328B2 (ja) | シストリックアーキテクチャ内に配置される「n+1」個の演算子にオペランドを供給するための装置 | |
| JP3046116B2 (ja) | 離散コサイン変換器 | |
| JP3214831B2 (ja) | データ処理装置 | |
| EP0720103A1 (en) | Two-dimensional inverse discrete cosine transform circuit | |
| KR100248082B1 (ko) | 이차원이산여현변환장치 | |
| KR0154919B1 (ko) | 2차원 역이산 코사인 변환 회로 | |
| CN1061190C (zh) | 二维反离散余弦转换装置 | |
| JP3977003B2 (ja) | 離散コサイン変換・逆離散コサイン変換手法及びその装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |