JP2851804B2 - 2次元直交変換装置 - Google Patents

2次元直交変換装置

Info

Publication number
JP2851804B2
JP2851804B2 JP6305909A JP30590994A JP2851804B2 JP 2851804 B2 JP2851804 B2 JP 2851804B2 JP 6305909 A JP6305909 A JP 6305909A JP 30590994 A JP30590994 A JP 30590994A JP 2851804 B2 JP2851804 B2 JP 2851804B2
Authority
JP
Japan
Prior art keywords
dimensional orthogonal
memory
row
column
dimensional
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP6305909A
Other languages
English (en)
Other versions
JPH07234863A (ja
Inventor
義史 松本
真木 豊蔵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP6305909A priority Critical patent/JP2851804B2/ja
Publication of JPH07234863A publication Critical patent/JPH07234863A/ja
Application granted granted Critical
Publication of JP2851804B2 publication Critical patent/JP2851804B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、信号処理のための2次
元直交変換装置に関するものである。
【0002】
【従来の技術】情報圧縮のための最も重要なディジタル
信号処理技術の1つとして、変換符号化が知られてい
る。画像情報の変換符号化のための装置は、例えば、対
象となる画像をn×n画素からなるブロックに分割する
ためのブロック化器と、各ブロックに対して2次元直交
変換処理を施すための直交変換装置と、その変換結果
(変換係数)に量子化処理を施すための量子化器と、量
子化された変換係数に可変長符号化処理を施すための符
号化器とで構成される。直交変換には、アダマール変換
(Hadamard transform)、スラント変換(slant transf
orm )、離散コサイン変換(discrete cosine transfor
m :略してDCT)などが含まれる。ディジタル蓄積メ
ディア用符号化標準によれば、ブロック単位の2次元D
CT処理を連続して高速実行できることが要望されてい
る。複数のブロックからなる集合はマクロブロックと呼
ばれており、マクロブロック単位のパイプライン処理を
採用した変換符号化が提案されている。
【0003】さて、米国特許4,791,598には、
2個の1次元DCTプロセッサと、その間に介在した転
置メモリとで構成された2次元DCTプロセッサが開示
されている。同様の内部構成を有する2次元DCTプロ
セッサは、特開平3−214256にも示されている。
【0004】
【発明が解決しようとする課題】上記のとおり、変換符
号化に用いられる従来の2次元DCTプロセッサは、2
個の1次元DCTプロセッサを備えた大規模な回路構成
であった。したがって、集積化されたプロセッサのチッ
プ面積が大きくなる問題があった。
【0005】本発明の目的は、マクロブロック単位のパ
イプライン処理に適した小規模かつ高速の2次元直交変
換装置を提供することにある。
【0006】
【課題を解決するための手段】本発明は、上記目的を達
成するために、転置メモリのためのアドレス生成のシー
ケンスを工夫することによって、単一の1次元DCTプ
ロセッサを用いて2次元DCT処理を高速実行できるよ
うにしたものである。
【0007】具体的には、本発明は、各々n×n要素か
らなる3m個の2次元データをA(h)、B(h)及び
C(h)(h=1〜m)とするとき、A(h)をB
(h)に1次元直交変換し、該変換により得られたB
(h)をC(h)に更に1次元直交変換することにより
2次元直交変換係数を求める一連の処理を連続的に実行
するための2次元直交変換装置において、前記2次元デ
ータA(h)、B(h)及びC(h)を格納するための
記憶装置と、n要素からなる1次元ベクトルを処理する
ようにパイプライン化された単一の1次元直交変換装置
と、前記記憶装置及び前記1次元直交変換装置を制御す
るための次のような演算制御装置とを備えることとした
ものである。すなわち、前記演算制御手段は、「前記記
憶装置からA(h)の第i行又は第i列の成分を前記1
次元直交変換装置に送って行列積を計算させ、該計算の
結果を前記記憶装置のB(h)の第i行又は第i列の成
分のアドレスに格納する操作」をX(h)i とし、「前
記記憶装置からB(h)の第j列又は第j行の成分を前
記1次元直交変換装置に送って行列積を計算させ、該計
算の結果を前記記憶装置のC(h)の第j列又は第j行
の成分のアドレスに格納する操作」をY(h)j とし、
操作X(h)i 及びY(h)j (i,j=1〜n)をそ
れぞれX(h)及びY(h)とするとき、全てのh(h
=1〜m)について操作X(h)の開始直後に前記hと
異なるkについて操作X(k)又はY(k)を開始した
後に操作Y(h)を開始するように、前記記憶装置及び
前記1次元直交変換装置を制御するものである。
【0008】
【作用】まず、1次元直交変換の方法について説明す
る。要素数nである1次元データベクトルaをn行n列
の直交変換行列Tにより1次元直交変換する場合には、
Tの第i行とデータベクトルaとの内積演算によりTa
の第i行の要素を計算し、この計算をi=1〜nの全て
について行うことにより1次元データの直交変換係数ベ
クトル(内積Ta)が求められる。要素数n×nである
2次元の行列Aをn行n列の直交変換行列Tにより1次
元直交変換する(内積TAを求める)場合には、その変
換が行方向ならばベクトルaの代わりに行列Aのn個の
行ベクトルそれぞれについて同様の操作を行えばよく、
列方向ならば行列Aの全ての列ベクトルについて同様の
操作を行えばよい。
【0009】次に、2次元直交変換の方法について説明
する。ある行列H及びKについて、「HT 」及び
「(H)T 」はともに「行列Hの転置行列」を、「H
K」は行列HとKの内積をそれぞれ表わすものとする。
n行n列の直交変換行列Tによるn行n列の2次元デー
タ(行列A)の2次元直交変換とは、TATT を計算す
ることである。ところで、 TATT = (T(TA)T T が成り立つので、この計算は、ある行列Kに対してTK
を計算する手段と、行列を転置する手段とにより実現で
きる。ここで、TKを計算する手段は1次元直交変換装
置で実現できる。また、転置手段は2次元行列を行単位
で扱うか列単位で扱うかで実現できる。
【0010】本発明によれば、マクロブロックの処理を
考慮して、m個の2次元データA(h)(h=1〜m)
が一括して記憶装置中に格納される。しかも、第1の2
次元データA(1)の行成分を1次元直交変換装置に順
次入力し終えると、直ちに第2の2次元データA(2)
の行成分が1次元直交変換装置に入力される。このよう
にしてm個の2次元データA(h)(h=1〜m)の行
成分処理を実行し終えると、m個の2次元データB
(h)(h=1〜m)が得られる。そして、B(1)に
対する列成分処理が開始する。
【0011】なお、操作X(h)i によれば、A(h)
の第i行の成分A(h)y=i に関する1次元直交変換の
処理結果がB(h)の第i行の成分B(h)y=i のアド
レスに格納されるのであるから、A(h)とB(h)を
同じ記憶領域に重ねることができる。また、操作Y
(h)j によれば、B(h)の第j列の成分B(h)
x=jに関する処理結果がC(h)の第j列の成分C
(h)x=j のアドレスに格納されるのであるから、B
(h)とC(h)を同じ記憶領域に重ねることもでき
る。このようにして記憶装置の記憶容量を低減すること
も可能である。
【0012】
【実施例】以下、本発明の実施例に係る2次元DCTプ
ロセッサについて、図面を用いて説明する。
【0013】(実施例1)図1は、本発明の第1の実施
例に係る2次元DCTプロセッサのブロック図である。
図1において、101、102は第1及び第2のメモ
リ、103は1次元DCTプロセッサ、104は演算制
御装置である。
【0014】第1のメモリ101は、各々n×n要素か
らなるm個の2次元データA(h)(h=1〜m)すな
わちm個のブロックを一括して格納する機能を有するも
のである。A(h)の2次元DCT処理結果であるC
(h)(h=1〜m)は、第1のメモリ101の中のA
(h)と同じ記憶領域に重ねて格納される。第2のメモ
リ102は、A(h)の1次元DCT処理結果であるB
(h)(h=1〜m)を一括して格納する機能を有する
ものである。以下、必要に応じて、h=1〜mなるA
(h)、B(h)、C(h)をそれぞれまとめて3次元
データA、B、Cとする。
【0015】1次元DCTプロセッサ103は、n行n
列のDCT行列Tを有し、入力されたn個の要素からな
る1次元ベクトルvに対し、行列積Tvを計算する機能
を有するものである。ここに、1次元DCTプロセッサ
103は、内部にパイプライン構成を有し、データの入
力と出力との間にパイプライン段数分の遅延サイクルが
生じる。
【0016】演算制御装置104は、「第1のメモリ1
01からA(h)の第i行の成分A(h)y=i を1次元
DCTプロセッサ103へ送って行列積Ty=i A(h)
y=iを計算させ、該計算の結果を第2のメモリ102の
B(h)の第i行の成分B(h)y=i のアドレスに格納
する操作をi=1から始めてnまで行う操作」を操作X
(h)とし、「第2のメモリ102からB(h)の第j
列の成分B(h)x=jを1次元DCTプロセッサ103
へ送って行列積Ty=j B(h)x=j を計算させ、該計算
の結果を第1のメモリ101のC(h)の第j列の成分
C(h)x=j のアドレスに格納する操作をj=1から始
めてnまで行う操作」を操作Y(h)とするとき、まず
操作X(h)をh=1から始めてmまで順に開始し(こ
の操作を操作Xとする。)、次に操作Y(h)をh=1
から始めてmまで順に開始する(この操作を操作Yとす
る。)ように、第1及び第2のメモリ101、102並
びに1次元DCTプロセッサ103を制御する機能を有
するものである。
【0017】さて、操作Xでは第2のメモリ102に行
列積ATT が行列Bとして格納され、その後の操作Yで
は第1のメモリ101に行列積TBが行列Cとして格納
されることになる。ここで、C=TB=T(ATT )=
TATT であるから、図1の2次元DCTプロセッサに
よれば、2次元データAに対してその2次元DCT係数
であるTATT が計算できる。
【0018】図2は、図1の2次元DCTプロセッサに
おける処理のタイミングチャート図であって、各々8×
8要素からなる2個の2次元データA(1)、A(2)
を連続して処理する場合の例を示している。X1は第1
の2次元データA(1)に関する行成分の1次元DCT
処理、Y1はA(1)の処理結果であるB(1)に関す
る列成分の1次元DCT処理、X2は第2の2次元デー
タA(2)に関する行成分の1次元DCT処理、Y2は
A(2)の処理結果であるB(2)に関する列成分の1
次元DCT処理である。
【0019】図2によれば、第1の2次元データA
(1)の行成分が1次元DCTプロセッサ103に順次
入力され、続いて第2の2次元データA(2)の行成分
が1次元DCTプロセッサ103に順次入力される。こ
れらの行成分は、1次元DCTプロセッサ103におい
てそれぞれパイプライン処理(処理X1、X2)され
る。A(2)の行成分入力を完了した時点では、B
(1)が処理X1で全て得られるので、直ちにB(1)
の列成分が1次元DCTプロセッサ103に入力され、
処理Y1が開始する。また、B(1)の列成分入力を完
了した時点では、B(2)が処理X2で全て得られるの
で、直ちにB(2)の列成分が1次元DCTプロセッサ
103に入力され、処理Y2が開始する。
【0020】図3に比較例を示す。図3によれば、第1
の2次元データA(1)の行成分を1次元DCTプロセ
ッサに順次入力し、その出力B(1)が処理X1で全て
得られた後に、B(1)の列成分を1次元DCTプロセ
ッサに順次入力することにより処理Y1でC(1)を得
る。また、C(1)が全て得られた後に、第2の2次元
データA(2)の行成分が1次元DCTプロセッサに順
次入力される。更に、その出力B(2)が処理X2で全
て得られた後に、B(2)の列成分を1次元DCTプロ
セッサに順次入力することにより処理Y2でC(2)を
得る。図3によれば、パイプライン由来の遅延サイクル
分だけ1次元DCTプロセッサに処理の空白期間T1が
生じる。処理Y1の実行には処理X1の実行結果B
(1)が必要なので、処理Y1の実行は処理X1が終了
するまで待たねばならない。同様に、処理Y2の実行に
は処理X2の実行結果B(2)が必要なので、処理Y2
の実行は処理X2が終了するまで待たねばならないので
ある。したがって、図3によれば、2個の2次元データ
A(1)、A(2)の処理に要する総サイクル数が51
2となる。
【0021】これに対して、図2によれば、1次元DC
Tプロセッサの処理の空白期間T1が解消される結果、
2個の2次元データA(1)、A(2)の処理に要する
総サイクル数が320となり、図3の場合に比べて複数
ブロックの2次元DCT連続処理が高速化される。ただ
し、図2及び図3の説明では、処理の対象となる2次元
データA(1)、A(2)の第1のメモリ101への書
き込みに要する時間や、処理結果C(1)、C(2)の
第1のメモリ101からの読み出しに要する時間は、簡
単のため0とした。
【0022】なお、本実施例によれば4ブロックの2次
元DCT連続処理がX1、X2、X3、X4、Y1、Y
2、Y3、Y4の順に実行されるが、例えばX1、X
2、Y1、Y2、X3、X4、Y3、Y4の順であって
も構わない。
【0023】(実施例2)図4は、本発明の第2の実施
例に係る2次元DCTプロセッサのブロック図である。
図4において、401、402は第1及び第2のシング
ルポートメモリ、403は1次元DCTプロセッサ、4
04は制御装置、405、406は第1及び第2のアド
レス生成装置である。このうち、1次元DCTプロセッ
サ403、制御装置404並びに第1及び第2のアドレ
ス生成装置405、406は、2次元DCTコア410
を構成する。
【0024】図4中の第1のシングルポートメモリ40
1、第2のシングルポートメモリ402及び1次元DC
Tプロセッサ403は、それぞれ図1中の第1のメモリ
101、第2のメモリ102及び1次元DCTプロセッ
サ103に対応するものである。
【0025】第1のアドレス生成装置405は、「第1
のシングルポートメモリ401に格納されたA(h)の
第i行の成分A(h)y=i の順次読み出しをi=1から
nまで行う動作をh=1からmまで連続して行うように
アドレスを発生する」第1のモードと、「第1のシング
ルポートメモリ401に格納すべきC(h)の第j列の
成分C(h)x=j の順次書き込みをj=1からnまで行
う動作をh=1からmまで連続して行うようにアドレス
を発生する」第2のモードとを有するものである。
【0026】第2のアドレス生成装置406は、「第2
のシングルポートメモリ402に格納すべきB(h)の
第i行の成分B(h)y=i の順次書き込みをi=1から
nまで行う動作をh=1からmまで連続して行うように
アドレスを発生する」第1のモードと、「第2のシング
ルポートメモリ402に格納されたB(h)の第j列の
成分B(h)x=j の順次読み出しをj=1からnまで行
う動作をh=1からmまで連続して行うようにアドレス
を発生する」第2のモードとを有するものである。
【0027】制御装置404は、第1のシングルポート
メモリ401に格納されたA(h)の第i行の成分A
(h)y=i を順に読み出すように第1のアドレス生成装
置405を第1のモードで起動し、該読み出したA
(h)y=i を1次元DCTプロセッサ403に送って行
列積Ty=i A(h)y=i を計算させ、該計算の結果を第
2のシングルポートメモリ402のB(h)の第i行の
成分B(h)y=i のアドレスに順に書き込むように第2
のアドレス生成装置406を第1のモードで起動した後
に、第2のシングルポートメモリ402に格納されたB
(h)の第j列の成分B(h)x=j を順に読み出すよう
に第2のアドレス生成装置406を第2のモードで起動
し、該読み出したB(h)x=j を1次元DCTプロセッ
サ403に送って行列積Ty=j B(h)x=j を計算さ
せ、該計算の結果を第1のシングルポートメモリ401
のC(h)の第j列の成分C(h)x=j のアドレスに順
に書き込むように第1のアドレス生成装置405を第2
のモードで起動する機能を有するものである。
【0028】図4の2次元DCTプロセッサによれば、
第1の実施例の場合と同様に1次元DCTプロセッサの
処理の空白期間が解消される結果(図2及び図3参
照)、複数ブロックの2次元DCT連続処理が高速化さ
れる。しかも、A(h)の行成分の1次元DCT処理結
果をB(h)の行成分とし、かつB(h)の列成分の1
次元DCT処理結果をC(h)の列成分としたので、第
1のアドレス生成装置405と第2のアドレス生成装置
406とに互いに同じ内部構成を採用できる。ただし、
両アドレス生成装置405、406によるアドレス生成
タイミングの間には、1次元DCTプロセッサ403の
パイプラインディレイに応じた遅延が設定される。
【0029】図4中のアドレス生成装置405、406
の構成例を図5に示す。図5において、501は9ビッ
トカウンタ、510〜515はセレクタ、502はカウ
ンタ制御信号(EXEC)、503はモード切替信号
(SELXY)である。また、信号520〜525及び
信号536〜538は9ビットカウンタ501のビット
出力、信号530〜535はセレクタ510〜515の
出力である。信号530〜538が当該アドレス生成装
置の出力である。
【0030】9ビットカウンタ501は、カウンタ制御
信号(EXEC)502によって制御される2進カウン
タであって、0より511までを順に繰り返しカウント
する機能を有する。セレクタ510〜515は、各々2
つの入力A及びB並びに1つの出力Cを有し、切替入力
に従って入力A及びBより一方を選んで出力する。セレ
クタ510〜515の各入力Aはそれぞれ信号520〜
525に、セレクタ510〜512の各入力Bはそれぞ
れ信号523〜525に、セレクタ513〜515の各
入力Bはそれぞれ信号520〜522に、セレクタ51
0〜515の各出力Cはそれぞれ信号530〜535
に、セレクタ510〜515の各切替入力はそれぞれモ
ード切替信号(SELXY)503に接続されている。
【0031】図5のアドレス生成装置では、カウンタ制
御信号(EXEC)502により9ビットカウンタ50
1がカウントを開始する。該カウンタ501の9ビット
出力のうち下位6ビットは、モード切替信号(SELX
Y)503によりセレクタ510〜515を切り替え
て、そのままの順序(第1のモード)か、上下3ビット
ずつを入れ替えて(第2のモード)、アドレスの下位6
ビットとして出力される。9ビットカウンタ501の上
位3ビットは、そのままアドレスの上位3ビットとして
出力される。
【0032】1個のブロック内の8×8個の要素へのメ
モリアドレスの割り当ての例を図6に示す。図5のアド
レス生成装置から出力される9ビットアドレスのうちの
下位6ビット(2進数で000000から111111
まで)はブロック内アドレスとして用いられ、上位3ビ
ット(2進数で000から111まで)はブロックの指
定に用いられる。図7に示すように、第1のモードが選
択されるとき、9ビットカウンタ501の出力が000
000000から000111111まで変化するとブ
ロックA(1)の行成分が順にアクセスされ、引き続い
て001000000から001111111まで変化
するとブロックA(2)の行成分が順にアクセスされ、
111000000から111111111まで変化す
るとブロックA(8)の行成分が順にアクセスされる。
また、第2のモードが選択されるとき、9ビットカウン
タ501の出力が000000000から000111
111まで変化するとブロックA(1)の列成分が順に
アクセスされ、引き続いて001000000から00
1111111まで変化するとブロックA(2)の列成
分が順にアクセスされ、111000000から111
111111まで変化するとブロックA(8)の列成分
が順にアクセスされる。このように、図5のアドレス生
成装置により生成したアドレスを用いれば、1次元メモ
リ空間内に展開した各々8×8要素からなる最大8個の
ブロックに対して、第1及び第2のモードによるそれぞ
れ連続したアクセスを実現できる。なお、第1及び第2
のモードを持ち、n×n要素からなるmブロックをアク
セスするためのアドレス生成装置は、(n+n+m)ビ
ットのカウンタとn個の2入力セレクタとにより同様に
構成できる。
【0033】図4中のアドレス生成装置405、406
の他の構成例を図8に示す。図8において、801は1
0ビットカウンタ、810〜815はセレクタ、802
はカウンタ制御信号(EXEC)である。また、信号8
20〜825及び信号836〜839は10ビットカウ
ンタ801のビット出力、信号830〜835はセレク
タ810〜815の出力である。信号830〜838が
当該アドレス生成装置の出力であり、信号839はモー
ド切替信号としてセレクタ810〜815の切替入力に
接続されている。
【0034】10ビットカウンタ801は、カウンタ制
御信号(EXEC)802によって制御される2進カウ
ンタであって、0より1023までを順に繰り返しカウ
ントする機能を有する。セレクタ810〜815は、各
々2つの入力A及びB並びに1つの出力Cを有し、切替
入力に従って入力A及びBより一方を選んで出力する。
セレクタ810〜815の各入力Aはそれぞれ信号82
0〜825に、セレクタ810〜812の各入力Bはそ
れぞれ信号823〜825に、セレクタ813〜815
の各入力Bはそれぞれ信号820〜822に、セレクタ
810〜815の各出力Cはそれぞれ信号830〜83
5に、セレクタ810〜815の各切替入力はそれぞれ
信号839に接続されている。
【0035】図8のアドレス生成装置では、セレクタ8
10〜815の切り替えを10ビットカウンタ801の
最上位ビット出力である信号839で行うので、第1の
モードと第2のモードとの切り替えが自動的に行われ
る。つまり、第1のモードによる8ブロックの処理が完
了すると、引き続いて第2のモードによる処理が開始す
る。なお、第1及び第2のモードを持ち、n×n画素か
らなるmブロックを第1及び第2のモードで自動的に順
次アクセスするためのアドレス生成装置は、(n+n+
m+1)ビットのカウンタとn個の2入力セレクタとに
より同様に構成できる。
【0036】さて、本実施例では2次元データA及びC
を格納するためのシングルポートメモリ401と2次元
データBを格納するためのシングルポートメモリ402
とを別個に設けたが、同一のメモリであっても構わな
い。なぜなら、操作X(h)によれば、A(h)の第i
行の成分A(h)y=i に関する処理結果がB(h)の第
i行の成分B(h)y=i のアドレスに格納されるのであ
るから、AとBを同じ記憶領域に重ねることができるの
である。また、操作Y(h)によれば、B(h)の第j
列の成分B(h)x=j に関する処理結果がC(h)の第
j列の成分C(h)x=j のアドレスに格納されるのであ
るから、BとCを同じ記憶領域に重ねることもできる。
このようにしてメモリの記憶容量を低減することも可能
である。
【0037】(実施例3)図9は、本発明の第3の実施
例に係る2次元DCTプロセッサのブロック図である。
本実施例は、図4中の第1及び第2のシングルポートメ
モリ401、402を1つに統合したものであって、図
9中の901はマルチポートメモリ、903は1次元D
CTプロセッサ、904は制御装置、905、906は
各々図5又は図8の内部構成を備えた第1及び第2のア
ドレス生成装置である。このうち、1次元DCTプロセ
ッサ903、制御装置904並びに第1及び第2のアド
レス生成装置905、906は、2次元DCTコア91
0を構成する。
【0038】マルチポートメモリ901は、各々n×n
要素からなるm個の2次元データA(h)(h=1〜
m)を一括して格納するための同時読み書きが可能なメ
モリ、例えばデュアルポートメモリである。A(h)の
1次元DCT処理結果であるB(h)(h=1〜m)
は、マルチポートメモリ901の中のA(h)と同じ記
憶領域に重ねて格納される。また、B(h)の1次元D
CT処理結果であるC(h)(h=1〜m)は、マルチ
ポートメモリ901の中のB(h)と同じ記憶領域に重
ねて格納される。1次元DCTプロセッサ903は、図
1中の1次元DCTプロセッサ103や図4中の1次元
DCTプロセッサ403と同様の機能を有するものであ
る。
【0039】第1のアドレス生成装置905は、マルチ
ポートメモリ901の読み出しを制御するための手段で
あって、「マルチポートメモリ901に格納されたA
(h)の第i行の成分A(h)y=i の順次読み出しをi
=1からnまで行う動作をh=1からmまで連続して行
うようにアドレスを発生する」第1のモードと、「マル
チポートメモリ901に格納されることとなるB(h)
の第j列の成分B(h)x=j の順次読み出しをj=1か
らnまで行う動作をh=1からmまで連続して行うよう
にアドレスを発生する」第2のモードとを有するもので
ある。
【0040】第2のアドレス生成装置906は、マルチ
ポートメモリ901の書き込みを制御するための手段で
あって、「マルチポートメモリ901に格納すべきB
(h)の第i行の成分B(h)y=i の順次書き込みをi
=1からnまで行う動作をh=1からmまで連続して行
うようにアドレスを発生する」第1のモードと、「マル
チポートメモリ901に格納すべきC(h)の第j列の
成分C(h)x=j の順次書き込みをj=1からnまで行
う動作をh=1からmまで連続して行うようにアドレス
を発生する」第2のモードとを有するものである。
【0041】制御装置904は、マルチポートメモリ9
01に格納されたA(h)の第i行の成分A(h)y=i
を順に読み出すように第1のアドレス生成装置905を
第1のモードで起動し、該読み出したA(h)y=i を1
次元DCTプロセッサ903に送って行列積Ty=i
(h)y=i を計算させ、該計算の結果をマルチポートメ
モリ901のB(h)の第i行の成分B(h)y=i のア
ドレスに順に書き込むように第2のアドレス生成装置9
06を第1のモードで起動した後に、マルチポートメモ
リ901に格納されたB(h)の第j列の成分B(h)
x=j を順に読み出すように第1のアドレス生成装置90
5を第2のモードで起動し、該読み出したB(h)x=j
を1次元DCTプロセッサ903に送って行列積Ty=j
B(h)x= j を計算させ、該計算の結果をマルチポート
メモリ901のC(h)の第j列の成分C(h)x=j
アドレスに順に書き込むように第2のアドレス生成装置
906を第2のモードで起動する機能を有するものであ
る。しかも、この制御装置904は、マルチポートメモ
リ901の読み出し制御のための第1のアドレス生成装
置905の起動より1次元DCTプロセッサ903のパ
イプラインディレイのサイクル数だけ遅れて、同マルチ
ポートメモリ901の書き込み制御のための第2のアド
レス生成装置906を起動する。
【0042】図9の2次元DCTプロセッサによれば、
第1の実施例の場合と同様に処理の空白期間が解消され
る結果(図2及び図3参照)、複数ブロックの2次元D
CT連続処理が高速化される。図2の例では、例えばメ
モリへのB(1)の書き込みとメモリからのA(2)の
読み出しとの同時実行が必要になるが、本実施例ではそ
れをマルチポートメモリ901で可能にしている。
【0043】なお、上記第1〜第3の実施例ではA
(h)の行成分をB(h)に変換し、該変換により得ら
れたB(h)の列成分をC(h)に更に変換することに
より2次元DCT係数を求めることとしたが、行に関す
る処理と列に関する処理との順序を逆にしてもよい。す
なわち、A(h)の列成分をB(h)に変換し、該変換
により得られたB(h)の行成分をC(h)に更に変換
するようにしてもよい。
【0044】(実施例4)図10は、本発明の第4の実
施例に係る2次元DCTプロセッサのブロック図であ
る。本実施例は、図9中のマルチポートメモリ901を
2バンク設けたものであって、図10中の1001は第
1のマルチポートメモリ(バンク1)、1002は第2
のマルチポートメモリ(バンク2)、1010はバンク
切替装置、1020は2次元DCTコア、1030は外
部入出力インターフェイス(以下、I/Oインターフェ
イスという。)、1011は全体の制御装置である。
【0045】第1及び第2のマルチポートメモリ100
1、1002はそれぞれ、図9中のマルチポートメモリ
901と同様の機能を有するものである。
【0046】バンク切替装置1010は、I/Oインタ
ーフェイス1030に接続されたポート#01と、2次
元DCTコア1020に接続されたポート#02と、第
1のマルチポートメモリ1001に接続されたポート#
11と、第2のマルチポートメモリ1002に接続され
たポート#12とを備え、第1及び第2のマルチポート
メモリ1001〜1002と、I/Oインターフェイス
1030及び2次元DCTコア1020との接続関係を
トグル切り替えする機能を有するものである。すなわ
ち、I/Oインターフェイス1030に第1のマルチポ
ートメモリ1001を、2次元DCTコア1020に第
2のマルチポートメモリ1002をそれぞれ割り当てた
状態と、I/Oインターフェイス1030に第2のマル
チポートメモリ1002を、2次元DCTコア1020
に第1のマルチポートメモリ1001をそれぞれ割り当
てた状態とをトグル状に切り替える。
【0047】2次元DCTコア1020は、割り当てら
れたマルチポートメモリ中のデータに対して、図9中の
2次元DCTコア910と同様の処理を実行するもので
ある。I/Oインターフェイス1030は、割り当てら
れたマルチポートメモリに外部からデータを書き込んだ
り、割り当てられたマルチポートメモリから外部へデー
タを読み出したりする機能を有する。
【0048】図10中のバンク切替装置1010の構成
例を図11に示す。図11において、1151〜115
6、1161〜1166は各々2つの入力A及びB並び
に1つの出力Cを有し、切替入力に従って入力A及びB
より一方を選んで出力する2入力バスセレクタである。
#01、#02、#11、#12の各ポートは、メモリ
の読み出し及び書き込みのために、チップ選択信号C
S、アドレス信号ADDR及びデータ信号DATAを含
んでいる。バスセレクタ1151〜1156、1161
〜1166は、トグル切替信号(TOGGLE)110
1に従って、「ポート#01がポート#11に、ポート
#02がポート#12にそれぞれ内部接続された状態」
と、「ポート#01がポート#12に、ポート#02が
ポート#11にそれぞれ内部接続された状態」とを切り
替える。
【0049】図12は、図10の2次元DCTプロセッ
サにおける処理のタイミングチャート図であって、4個
のマクロブロックA1、A2、A3、A4を連続して処
理する場合の例を示している。各マクロブロックは、各
々n×n要素からなるm個の2次元データすなわちm個
のブロックで構成されるものとする。
【0050】まず、制御装置1011は、I/Oインタ
ーフェイス1030に第1のマルチポートメモリ100
1を割り当てるように、バンク切替装置1010に指示
を出す。そして、制御装置1011は、I/Oインター
フェイス1030に割り当てられた第1のマルチポート
メモリ1001に外部から第1の2次元データ群A
(h)(h=1〜m)すなわち第1のマクロブロックA
1を読み込むように、I/Oインターフェイス1030
を制御する。
【0051】次に、制御装置1011は、バンク切替装
置1010にバンクのトグル切り替え(図12中の最も
左のSW)を指示し、I/Oインターフェイス1030
に第2のマルチポートメモリ1002を、2次元DCT
コア1020に第1のマルチポートメモリ1001を割
り当てる。そして、外部から第2の2次元データ群A
(h)(h=1〜m)すなわち第2のマクロブロックA
2を第2のマルチポートメモリ1002に読み込むよう
にI/Oインターフェイス1030を制御するととも
に、第1のマルチポートメモリ1001上の第1のマク
ロブロックA1に2次元DCT処理を施すように2次元
DCTコア1020を制御する。その結果、A1の2次
元DCT処理結果C1が第1のマルチポートメモリ10
01に上書きで格納される。この際、第3の実施例(図
9)において説明したように、2次元DCTコア102
0の中の1次元DCTプロセッサの処理の空白期間が解
消される結果(図2及び図3参照)、m個のブロックA
(h)(h=1〜m)の2次元DCT連続処理が高速に
実行される。
【0052】その後、制御装置1011は、再びバンク
切替装置1010にバンクのトグル切り替え(図12中
の次のSW)を指示し、I/Oインターフェイス103
0に第1のマルチポートメモリ1001を、2次元DC
Tコア1020に第2のマルチポートメモリ1002を
割り当てる。そして、第1のマルチポートメモリ100
1上のC1を外部へ出力しかつ第3の2次元データ群A
(h)(h=1〜m)すなわち第3のマクロブロックA
3を第1のマルチポートメモリ1001に読み込むよう
にI/Oインターフェイス1030を制御するととも
に、第2のマルチポートメモリ1002上の第2のマク
ロブロックA2に2次元DCT処理を施すように2次元
DCTコア1020を制御する。
【0053】制御装置1011は、以下同様の制御を繰
り返した後に、最後の2次元DCTの処理結果C4を外
部へ出力するようにI/Oインターフェイス1030を
制御する。
【0054】図13に複数バンクのマルチポートメモリ
を設けない比較例(図9参照)を示す。図13によれ
ば、第1のマクロブロックA1を外部からメモリに入力
し、2次元DCTコアによるその処理結果C1がメモリ
から外部へ出力された後に、第2のマクロブロックA2
を外部からメモリに入力する。更に、2次元DCTコア
によるその処理結果C2がメモリから外部へ出力された
後に、第3のマクロブロックA3を外部からメモリに入
力する。つまり、図13によれば、処理の対象となる2
次元データのメモリへの書き込みに要する時間や、処理
結果のメモリからの読み出しに要する時間が実際には0
でないため、2次元DCTコアに処理の空白期間T2が
生じる。
【0055】これに対して、図10の2次元DCTプロ
セッサによれば、図12に示すように2次元DCTコア
の処理の空白期間T2がメモリバンクのトグル切り替え
によって解消される結果、図13の場合に比べて複数マ
クロブロックの2次元DCT連続処理が高速化される。
【0056】(実施例5)図14は、本発明の第5の実
施例に係る2次元DCT及び量子化プロセッサのブロッ
ク図である。本実施例は、図10中の2バンクのマルチ
ポートメモリ1001、1002を3バンクに増やし、
更に量子化コアを加えたものであって、図14中の14
01は第1のマルチポートメモリ(バンク1)、140
2は第2のマルチポートメモリ(バンク2)、1403
は第3のマルチポートメモリ(バンク3)、1410は
バンク切替装置、1420は2次元DCTコア、143
0はI/Oインターフェイス、1440は量子化コア、
1411は全体の制御装置である。
【0057】第1〜第3のマルチポートメモリ1401
〜1403はそれぞれ、図9中のマルチポートメモリ9
01や、図10中の第1及び第2のマルチポートメモリ
1001、1002と同様の機能を有するものである。
【0058】バンク切替装置1410は、I/Oインタ
ーフェイス1430に接続されたポート#01と、2次
元DCTコア1420に接続されたポート#02と、量
子化コア1440に接続されたポート#03と、第1の
マルチポートメモリ1401に接続されたポート#11
と、第2のマルチポートメモリ1402に接続されたポ
ート#12と、第3のマルチポートメモリ1403に接
続されたポート#13とを備え、第1〜第3のマルチポ
ートメモリ1401〜1403と、I/Oインターフェ
イス1430、2次元DCTコア1420及び量子化コ
ア1440との接続関係をトグル切り替えする機能を有
するものである。すなわち、バンク切替装置1410の
内部では、「ポート#01がポート#11に、ポート#
02がポート#13に、ポート#03がポート#12に
それぞれ接続された第1のトグル状態」と、「ポート#
01がポート#12に、ポート#02がポート#11
に、ポート#03がポート#13にそれぞれ接続された
第2のトグル状態」と、「ポート#01がポート#13
に、ポート#02がポート#12に、ポート#03がポ
ート#11にそれぞれ接続された第3のトグル状態」が
切り替えられる。これにより、「第1のトグル状態」で
は、I/Oインターフェイス1430に第1のマルチポ
ートメモリ1401が、2次元DCTコア1420に第
3のマルチポートメモリ1403が、量子化コア144
0に第2のマルチポートメモリ1402がそれぞれ割り
当てられる。「第2のトグル状態」では、I/Oインタ
ーフェイス1430に第2のマルチポートメモリ140
2が、2次元DCTコア1420に第1のマルチポート
メモリ1401が、量子化コア1440に第3のマルチ
ポートメモリ1403がそれぞれ割り当てられる。ま
た、「第3のトグル状態」では、I/Oインターフェイ
ス1430に第3のマルチポートメモリ1403が、2
次元DCTコア1420に第2のマルチポートメモリ1
402が、量子化コア1440に第1のマルチポートメ
モリ1401がそれぞれ割り当てられる。
【0059】2次元DCTコア1420は、割り当てら
れたマルチポートメモリ中のデータに対して、図10中
の2次元DCTコア1010と同様の処理を実行するも
のである。量子化コア1440は、内部にパイプライン
構成を備え、割り当てられたマルチポートメモリ中のデ
ータに量子化処理を施し、その処理結果を該割り当てら
れたマルチポートメモリに格納する機能を有するもので
ある。I/Oインターフェイス1430は、割り当てら
れたマルチポートメモリに外部からデータを書き込んだ
り、該割り当てられたマルチポートメモリから外部へデ
ータを読み出したりする機能を有する。
【0060】図15は、図14の2次元DCT及び量子
化プロセッサにおける処理のタイミングチャート図であ
って、4個のマクロブロックA1、A2、A3、A4を
連続して処理する場合の例を示している。各マクロブロ
ックは、各々n×n要素からなるm個の2次元データす
なわちm個のブロックで構成されるものとする。
【0061】まず、制御装置1411は、バンク切替装
置1410に「第1のトグル状態」を指示し、I/Oイ
ンターフェイス1430に外部からのデータ入力を指示
する。これにより、I/Oインターフェイス1430に
割り当てられた第1のマルチポートメモリ1401に外
部から第1の2次元データ群A(h)(h=1〜m)す
なわち第1のマクロブロックA1が読み込まれる。
【0062】次に、制御装置1411は、バンク切替装
置1410に「第2のトグル状態」への切り替え(図1
5中の最も左のSW)を指示し、I/Oインターフェイ
ス1430に外部からのデータ入力を、2次元DCTコ
ア1420に2次元DCT処理の実行をそれぞれ指示す
る。これにより、I/Oインターフェイス1430に割
り当てられた第2のマルチポートメモリ1402に外部
から第2の2次元データ群A(h)(h=1〜m)すな
わち第2のマクロブロックA2が読み込まれるととも
に、2次元DCTコア1420によって第1のマルチポ
ートメモリ1401上の第1のマクロブロックA1に2
次元DCT処理(その結果をC1とする。)が施され
る。この際、第3の実施例(図9)において説明したよ
うに、2次元DCTコア1420の中の1次元DCTプ
ロセッサの処理の空白期間が解消される結果(図2及び
図3参照)、m個のブロックA(h)(h=1〜m)の
2次元DCT連続処理が高速に実行される。
【0063】次に、制御装置1411は、バンク切替装
置1410に「第3のトグル状態」への切り替え(図1
5中の次のSW)を指示し、I/Oインターフェイス1
430に外部からのデータ入力を、2次元DCTコア1
420に2次元DCT処理の実行を、量子化コア144
0に量子化処理の実行をそれぞれ指示する。これによ
り、I/Oインターフェイス1430に割り当てられた
第3のマルチポートメモリ1403への第3の2次元デ
ータ群A(h)(h=1〜m)すなわち第3のマクロブ
ロックA3の読み込みと、第2のマルチポートメモリ1
402上の第2のマクロブロックA2の2次元DCT処
理(その結果をC2とする。)と、第1のマルチポート
メモリ1401上のC1の量子化処理(その結果をE1
とする。)とが同時に実行される。この際、2次元DC
Tコア1420と同様に量子化コア1440において
も、m個のブロックの連続パイプライン処理が高速に実
行される。
【0064】次に、制御装置1411は、バンク切替装
置1410に「第1のトグル状態」への切り替え(図1
5中の次のSW)を指示し、I/Oインターフェイス1
410に外部へのデータ出力と引き続いて外部からのデ
ータ入力とを、2次元DCTコア1420に2次元DC
T処理の実行を、量子化コア1440に量子化処理の実
行をそれぞれ指示する。これにより、I/Oインターフ
ェイス1430に割り当てられた第1のマルチポートメ
モリ1401上のE1の外部への読み出し及びこれに引
き続く該第1のマルチポートメモリ1401への第4の
3次元データ群A(h)(h=1〜m)すなわち第4の
マクロブロックA4の読み込みと、第3のマルチポート
メモリ1403上の第3のマクロブロックA3の2次元
DCT処理(その結果をC3とする。)と、第2のマル
チポートメモリ1402上のC2の量子化処理(その結
果をE2とする。)とが同時に実行される。
【0065】制御装置1411は、以下同様の制御を繰
り返した後に、最後の2次元DCT及び量子化の処理結
果E4を外部へ出力するようにI/Oインターフェイス
1430を制御する。
【0066】図16に複数バンクのマルチポートメモリ
を設けない比較例を示す。図16によれば、第1のマク
ロブロックA1を外部からメモリに入力し、A1に2次
元DCT処理を施し、該2次元DCT処理の結果C1に
量子化処理を施し、該量子化処理の結果E1がメモリか
ら外部へ出力された後に、第2のマクロブロックA2を
外部からメモリに入力する。更に、A2に2次元DCT
処理を施し、該2次元DCT処理の結果C2に量子化処
理を施し、該量子化処理の結果E2がメモリから外部へ
出力された後に、第3のマクロブロックA3を外部から
メモリに入力する。つまり、図16によれば、データ入
出力及び量子化処理に起因して2次元DCTコアに処理
の空白期間T2が生じ、データ入出力及び2次元DCT
処理に起因して量子化コアに処理の空白期間T3が生じ
る。
【0067】これに対して、図14の2次元DCT及び
量子化プロセッサによれば、図15に示すように2次元
DCTコアの処理の空白期間T2及び量子化コアの処理
の空白期間T3がメモリバンクのトグル切り替えによっ
て解消される結果、図16の場合に比べて複数マクロブ
ロックの2次元DCT及び量子化の連続処理が高速化さ
れる。
【0068】なお、図14中の2次元DCTコア142
0を2次元逆DCT処理のためのコアに、量子化コア1
440を逆量子化処理のためのコアにそれぞれ置き換
え、バンク切替装置1410におけるトグル切り替えの
順序を第1、第3、第2、第1、第3、第2、第1のト
グル状態の順に変更すれば、復号器において要求される
「逆量子化→逆DCT」の順序の複合処理を実行するた
めのプロセッサを実現でき、複数マクロブロックの連続
処理が高速化される。また、本実施例から更にバンクの
数を増やせば、例えば符号器において要求される「DC
T→量子化→可変長符号化」といった更に複雑な連続処
理を高速化できる。
【0069】(実施例6)図17は、本発明の第6の実
施例に係る2次元DCT及び量子化プロセッサのブロッ
ク図である。本実施例は、図14中の第1〜第3のマル
チポートメモリ1401〜1403をそれぞれシングル
ポートメモリに、2次元DCTコア1420を第2の実
施例(図4)の構成から一方のシングルポートメモリ4
01を除いたものにそれぞれ置き換えたものであって、
図17中の1701は第1のシングルポートメモリ(バ
ンク1)、1702は第2のシングルポートメモリ(バ
ンク2)、1703は第3のシングルポートメモリ(バ
ンク3)、1710はバンク切替装置、1720は2次
元DCTコア、1728は該2次元DCTコア専用のシ
ングルポートメモリ、1730はI/Oインターフェイ
ス、1740は量子化コア、1711は全体の制御装置
である。
【0070】図17中の第1〜第3のシングルポートメ
モリ1701〜1703、2次元DCTコア1720、
及び、シングルポートメモリ1728は、それぞれ図4
中の第1のシングルポートメモリ401、2次元DCT
コア410、及び、第2のシングルポートメモリ402
に相当するものである。
【0071】図17中のバンク切替装置1710の構成
例を図18に示す。図18において、1851、185
2、1854、1855、1857、1858は単方向
のバスセレクタであり、1853、1856、1859
は双方向のバスセレクタである。#01、#02、#0
3、#11、#12、#13の各ポートは、メモリ読み
書き制御信号R/W、アドレス信号ADDR及びデータ
信号DATAを含んでいる。バスセレクタ1851〜1
859は、トグル切替信号(TOGGLE)1801に
従って、「ポート#01がポート#11に、ポート#0
2がポート#13に、ポート#03がポート#12にそ
れぞれ内部接続された第1のトグル状態」と、「ポート
#01がポート#12に、ポート#02がポート#11
に、ポート#03がポート#13にそれぞれ内部接続さ
れた第2のトグル状態」と、「ポート#01がポート#
13に、ポート#02がポート#12に、ポート#03
がポート#11にそれぞれ内部接続された第3のトグル
状態」とを切り替える。
【0072】図17の2次元DCT及び量子化プロセッ
サによれば、複数バンクのマルチポートメモリを備えた
第5の実施例の場合と同様に処理の空白期間が解消され
る結果(図15及び図16参照)、複数マクロブロック
の2次元DCT及び量子化の連続処理が高速化される。
図17の構成を「逆量子化→逆DCT」の処理や「DC
T→量子化→可変長符号化」の処理のためのプロセッサ
に変形できる点も、第5の実施例の場合と同様である。
【0073】なお、上記第1〜第6の実施例では2次元
DCTに話題を限定したが、本発明は他の2次元直交変
換にも適用可能である。
【0074】
【発明の効果】以上のように、本発明によれば、例えば
m個の2次元データA(h)(h=1〜m)の行成分処
理(又は列成分処理)とその処理結果であるm個の2次
元データB(h)(h=1〜m)の列成分処理(又は行
成分処理)とを各々一括して実行する構成を採用したの
で、処理の空白期間が削減され、演算処理サイクル数の
少ない2次元直交変換装置を提供することができる。し
かも、単一の1次元直交変換装置を備えることとしたの
で、集積化された2次元直交変換装置のチップ面積が小
さくなる。
【図面の簡単な説明】
【図1】本発明の第1の実施例に係る2次元DCTプロ
セッサの構成を示すブロック図である。
【図2】図1の2次元DCTプロセッサの動作を示すタ
イミングチャート図である。
【図3】図1の2次元DCTプロセッサの比較例の動作
を示すタイミングチャート図である。
【図4】本発明の第2の実施例に係る2次元DCTプロ
セッサの構成を示すブロック図である。
【図5】図4中の2つのアドレス生成装置の各々の内部
構成を示すブロック図である。
【図6】1個のブロック内の64個の要素へのメモリア
ドレスの割り当ての例を示す図である。
【図7】図4中の2つのアドレス生成装置の各々の第1
のモード及び第2のモードの説明図である。
【図8】図4中の2つのアドレス生成装置の各々の他の
内部構成を示すブロック図である。
【図9】本発明の第3の実施例に係る2次元DCTプロ
セッサの構成を示すブロック図である。
【図10】本発明の第4の実施例に係る2次元DCTプ
ロセッサの構成を示すブロック図である。
【図11】図10中のバンク切替装置の内部構成を示す
ブロック図である。
【図12】図10の2次元DCTプロセッサの動作を示
すタイミングチャート図である。
【図13】図10の2次元DCTプロセッサの比較例の
動作を示すタイミングチャート図である。
【図14】本発明の第5の実施例に係る2次元DCT及
び量子化プロセッサの構成を示すブロック図である。
【図15】図14の2次元DCT及び量子化プロセッサ
の動作を示すタイミングチャート図である。
【図16】図14の2次元DCT及び量子化プロセッサ
の比較例の動作を示すタイミングチャート図である。
【図17】本発明の第6の実施例に係る2次元DCT及
び量子化プロセッサの構成を示すブロック図である。
【図18】図17中のバンク切替装置の内部構成を示す
ブロック図である。
【符号の説明】
101、102 第1及び第2のメモリ 103 1次元DCTプロセッサ 104 演算制御装置 401、402 第1及び第2のシングルポートメモリ 403 1次元DCTプロセッサ 404 制御装置 405、406 第1及び第2のアドレス生成装置 410 2次元DCTコア 501 9ビットカウンタ 510〜515 セレクタ 801 10ビットカウンタ 810〜815 セレクタ 901 マルチポートメモリ 903 1次元DCTプロセッサ 904 制御装置 905、906 第1及び第2のアドレス生成装置 910 2次元DCTコア 1001、1002 第1及び第2のマルチポートメモ
リ 1010 バンク切替装置 1011 制御装置 1020 2次元DCTコア 1030 I/Oインターフェイス 1151〜1156、1161〜1166 バスセレク
タ 1401〜1403 第1〜第3のマルチポートメモリ 1410 バンク切替装置 1411 制御装置 1420 2次元DCTコア 1430 I/Oインターフェイス 1440 量子化コア 1701〜1703 第1〜第3のシングルポートメモ
リ 1710 バンク切替装置 1711 制御装置 1720 2次元DCTコア 1728 2次元DCTコア専用シングルポートメモリ 1730 I/Oインターフェイス 1740 量子化コア 1851〜1859 バスセレクタ
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 17/14 H03M 7/30 H04N 1/41 H04N 7/30 JICSTファイル(JOIS)

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】 各々n×n要素からなる3m個の2次元
    データをA(h)、B(h)及びC(h)(h=1〜
    m)とするとき、A(h)をB(h)に1次元直交変換
    し、該変換により得られたB(h)をC(h)に更に1
    次元直交変換することにより2次元直交変換係数を求め
    る一連の処理を連続的に実行するための2次元直交変換
    装置であって、 前記2次元データA(h)、B(h)及びC(h)を格
    納するための記憶装置と、 n要素からなる1次元ベクトルを処理するようにパイプ
    ライン化された単一の1次元直交変換装置と、 前記記憶装置及び前記1次元直交変換装置を制御するた
    めの演算制御装置とを備え、 前記演算制御装置は、 前記記憶装置からA(h)の第i行又は第i列の成分を
    前記1次元直交変換装置に送って行列積を計算させ、該
    計算の結果を前記記憶装置のB(h)の第i行又は第i
    列の成分のアドレスに格納する操作をX(h)i とし、 前記記憶装置からB(h)の第j列又は第j行の成分を
    前記1次元直交変換装置に送って行列積を計算させ、該
    計算の結果を前記記憶装置のC(h)の第j列又は第j
    行の成分のアドレスに格納する操作をY(h)j とし、 操作X(h)i 及びY(h)j (i,j=1〜n)をそ
    れぞれX(h)及びY(h)とするとき、 全てのh(h=1〜m)について操作X(h)の開始直
    後に前記hと異なるkについて操作X(k)又はY
    (k)を開始した後に操作Y(h)を開始するように、
    前記記憶装置及び前記1次元直交変換装置を制御するこ
    とを特徴とする2次元直交変換装置。
  2. 【請求項2】 請求項1記載の2次元直交変換装置にお
    いて、 前記演算制御装置は、 まずh=1〜m及びi=1〜nの全てのhとiの組合せ
    について操作X(h)i を順に開始し、次にh=1〜m
    及びj=1〜nの全てのhとjの組合せについて操作Y
    (h)j を順に開始するように、前記記憶装置及び前記
    1次元直交変換装置を制御することを特徴とする2次元
    直交変換装置。
  3. 【請求項3】 請求項1記載の2次元直交変換装置にお
    いて、 前記記憶装置は、 前記2次元データA(h)及びC(h)を格納するため
    の第1のメモリと、 前記2次元データB(h)を格納するための第2のメモ
    リとを備えたことを特徴とする2次元直交変換装置。
  4. 【請求項4】 請求項3記載の2次元直交変換装置にお
    いて、 前記演算制御装置は、 前記第1のメモリに格納されたA(h)の第i行又は第
    i列の成分の順次読み出しをi=1からnまで行う動作
    をh=1からmまで連続して行うようにアドレスを発生
    する第1のモードと、前記第1のメモリに格納すべきC
    (h)の第j列又は第j行の成分の順次書き込みをj=
    1からnまで行う動作をh=1からmまで連続して行う
    ようにアドレスを発生する第2のモードとを有する第1
    のアドレス生成装置と、 前記第2のメモリに格納すべきB(h)の第i行又は第
    i列の成分の順次書き込みをi=1からnまで行う動作
    をh=1からmまで連続して行うようにアドレスを発生
    する第1のモードと、前記第2のメモリに格納されたB
    (h)の第j列又は第j行の成分の順次読み出しをj=
    1からnまで行う動作をh=1からmまで連続して行う
    ようにアドレスを発生する第2のモードとを有する第2
    のアドレス生成装置と、 前記第1及び第2のメモリ、前記1次元直交変換装置並
    びに前記第1及び第2のアドレス生成装置を制御するた
    めの制御装置とを備え、 前記制御装置は、 前記第1のメモリに格納されたA(h)の第i行又は第
    i列の成分を順に読み出すように前記第1のアドレス生
    成装置を第1のモードで起動し、該読み出した成分を前
    記1次元直交変換装置に送って行列積を計算させ、かつ
    該計算の結果を前記第2のメモリのB(h)の第i行又
    は第i列の成分のアドレスに順に書き込むように前記第
    2のアドレス生成装置を第1のモードで起動した後に、 前記第2のメモリに格納されたB(h)の第j列又は第
    j行の成分を順に読み出すように前記第2のアドレス生
    成装置を第2のモードで起動し、該読み出した成分を前
    記1次元直交変換装置に送って行列積を計算させ、かつ
    該計算の結果を前記第1のメモリのC(h)の第j列又
    は第j行の成分のアドレスに順に書き込むように前記第
    1のアドレス生成装置を第2のモードで起動することを
    特徴とする2次元直交変換装置。
  5. 【請求項5】 請求項4記載の2次元直交変換装置にお
    いて、 前記制御装置は、前記第1のアドレス生成装置の起動よ
    り前記1次元直交変換装置のパイプラインディレイのサ
    イクル数だけ遅れて前記第2のアドレス生成装置を起動
    することを特徴とする2次元直交変換装置。
  6. 【請求項6】 請求項1記載の2次元直交変換装置にお
    いて、 前記記憶装置は、 前記2次元データA(h)、B(h)及びC(h)を格
    納するための同時読み書き可能なマルチポートメモリを
    備えたことを特徴とする2次元直交変換装置。
  7. 【請求項7】 請求項6記載の2次元直交変換装置にお
    いて、 前記演算制御装置は、 前記マルチポートメモリに格納されたA(h)の第i行
    又は第i列の成分の順次読み出しをi=1からnまで行
    う動作をh=1からmまで連続して行うようにアドレス
    を発生する第1のモードと、前記マルチポートメモリに
    格納されることとなるB(h)の第j列又は第j行の成
    分の順次読み出しをj=1からnまで行う動作をh=1
    からmまで連続して行うようにアドレスを発生する第2
    のモードとを有する第1のアドレス生成装置と、 前記マルチポートメモリに格納すべきB(h)の第i行
    又は第i列の成分の順次書き込みをi=1からnまで行
    う動作をh=1からmまで連続して行うようにアドレス
    を発生する第1のモードと、前記マルチポートメモリに
    格納すべきC(h)の第j列又は第j行の成分の順次書
    き込みをj=1からnまで行う動作をh=1からmまで
    連続して行うようにアドレスを発生する第2のモードと
    を有する第2のアドレス生成装置と、 前記マルチポートメモリ、前記1次元直交変換装置並び
    に前記第1及び第2のアドレス生成装置を制御するため
    の制御装置とを備え、 前記制御装置は、 前記マルチポートメモリに格納されたA(h)の第i行
    又は第i列の成分を順に読み出すように前記第1のアド
    レス生成装置を第1のモードで起動し、該読み出した成
    分を前記1次元直交変換装置に送って行列積を計算さ
    せ、かつ該計算の結果を前記マルチポートメモリのB
    (h)の第i行又は第i列の成分のアドレスに順に書き
    込むように前記第2のアドレス生成装置を第1のモード
    で起動した後に、 前記マルチポートメモリに格納されたB(h)の第j列
    又は第j行の成分を順に読み出すように前記第1のアド
    レス生成装置を第2のモードで起動し、該読み出した成
    分を前記1次元直交変換装置に送って行列積を計算さ
    せ、かつ該計算の結果を前記マルチポートメモリのC
    (h)の第j列又は第j行の成分のアドレスに順に書き
    込むように前記第2のアドレス生成装置を第2のモード
    で起動することを特徴とする2次元直交変換装置。
  8. 【請求項8】 請求項7記載の2次元直交変換装置にお
    いて、 前記制御装置は、前記第1のアドレス生成装置の起動よ
    り前記1次元直交変換装置のパイプラインディレイのサ
    イクル数だけ遅れて前記第2のアドレス生成装置を起動
    することを特徴とする2次元直交変換装置。
  9. 【請求項9】 各々n×n要素からなる3m個の2次元
    データをA(h)、B(h)及びC(h)(h=1〜
    m)とするとき、A(h)をB(h)に1次元直交変換
    し、該変換により得られたB(h)をC(h)に更に1
    次元直交変換することにより2次元直交変換係数を求め
    る一連の処理を連続的に実行するための2次元直交変換
    装置であって、 各々前記2次元データA(h)、B(h)及びC(h)
    を格納するための複数バンクのマルチポートメモリと、 前記複数バンクのマルチポートメモリのうちの割り当て
    られたバンクのマルチポートメモリのデータ入出力のた
    めのインターフェイスと、 前記複数バンクのマルチポートメモリのうちの割り当て
    られたバンクのマルチポートメモリに格納されたA
    (h)をB(h)に1次元直交変換し、かつ前記2次元
    直交変換係数が前記割り当てられたバンクのマルチポー
    トメモリに格納されるように前記変換により得られたB
    (h)をC(h)に更に1次元直交変換するための2次
    元直交変換コアと、 前記インターフェイスを介して外部から入力されたA
    (h)が前記2次元直交変換コアによってC(h)に変
    換されるように、前記インターフェイス及び2次元直交
    変換コアへの前記複数バンクのマルチポートメモリの割
    り当てをトグル切り替えするためのバンク切替装置とを
    備え、 前記2次元直交変換コアは、 n要素からなる1次元ベクトルを処理するようにパイプ
    ライン化された単一の1次元直交変換装置と、 前記割り当てられたバンクのマルチポートメモリに格納
    されたA(h)の第i行又は第i列の成分の順次読み出
    しをi=1からnまで行う動作をh=1からmまで連続
    して行うようにアドレスを発生する第1のモードと、前
    記割り当てられたバンクのマルチポートメモリに格納さ
    れることとなるB(h)の第j列又は第j行の成分の順
    次読み出しをj=1からnまで行う動作をh=1からm
    まで連続して行うようにアドレスを発生する第2のモー
    ドとを有する第1のアドレス生成装置と、 前記割り当てられたバンクのマルチポートメモリに格納
    すべきB(h)の第i行又は第i列の成分の順次書き込
    みをi=1からnまで行う動作をh=1からmまで連続
    して行うようにアドレスを発生する第1のモードと、前
    記割り当てられたバンクのマルチポートメモリに格納す
    べきC(h)の第j列又は第j行の成分の順次書き込み
    をj=1からnまで行う動作をh=1からmまで連続し
    て行うようにアドレスを発生する第2のモードとを有す
    る第2のアドレス生成装置と、 前記割り当てられたバンクのマルチポートメモリ、前記
    1次元直交変換装置並びに前記第1及び第2のアドレス
    生成装置を制御するための制御装置とを備え、 前記制御装置は、 前記割り当てられたバンクのマルチポートメモリに格納
    されたA(h)の第i行又は第i列の成分を順に読み出
    すように前記第1のアドレス生成装置を第1のモードで
    起動し、該読み出した成分を前記1次元直交変換装置に
    送って行列積を計算させ、かつ該計算の結果を前記割り
    当てられたバンクのマルチポートメモリのB(h)の第
    i行又は第i列の成分のアドレスに順に書き込むように
    前記第2のアドレス生成装置を第1のモードで起動した
    後に、 前記割り当てられたバンクのマルチポートメモリに格納
    されたB(h)の第j列又は第j行の成分を順に読み出
    すように前記第1のアドレス生成装置を第2のモードで
    起動し、該読み出した成分を前記1次元直交変換装置に
    送って行列積を計算させ、かつ該計算の結果を前記割り
    当てられたバンクのマルチポートメモリのC(h)の第
    j列又は第j行の成分のアドレスに順に書き込むように
    前記第2のアドレス生成装置を第2のモードで起動する
    ことを特徴とする2次元直交変換装置。
  10. 【請求項10】 各々n×n要素からなる3m個の2次
    元データをA(h)、B(h)及びC(h)(h=1〜
    m)とするとき、A(h)をB(h)に1次元直交変換
    し、該変換により得られたB(h)をC(h)に更に1
    次元直交変換することにより2次元直交変換係数を求め
    る一連の処理を連続的に実行するための2次元直交変換
    装置であって、 各々前記2次元データA(h)及びC(h)を格納する
    ための複数バンクのシングルポートメモリと、 前記複数バンクのシングルポートメモリのうちの割り当
    てられたバンクのシングルポートメモリのデータ入出力
    のためのインターフェイスと、 前記2次元データB(h)を格納するための専用シング
    ルポートメモリと、 前記複数バンクのシングルポートメモリのうちの割り当
    てられたバンクのシングルポートメモリに格納されたA
    (h)を前記専用シングルポートメモリ中のB(h)に
    1次元直交変換し、かつ前記2次元直交変換係数が前記
    割り当てられたバンクのシングルポートメモリに格納さ
    れるように前記変換により得られたB(h)をC(h)
    に更に1次元直交変換するための2次元直交変換コア
    と、 前記インターフェイスを介して外部から入力されたA
    (h)が前記2次元直交変換コアによってC(h)に変
    換されるように、前記インターフェイス及び2次元直交
    変換コアへの前記複数バンクのシングルポートメモリの
    割り当てをトグル切り替えするためのバンク切替装置と
    を備え、 前記2次元直交変換コアは、 n要素からなる1次元ベクトルを処理するようにパイプ
    ライン化された単一の1次元直交変換装置と、 前記割り当てられたバンクのシングルポートメモリに格
    納されたA(h)の第i行又は第i列の成分の順次読み
    出しをi=1からnまで行う動作をh=1からmまで連
    続して行うようにアドレスを発生する第1のモードと、
    前記割り当てられたバンクのシングルポートメモリに格
    納すべきC(h)の第j列又は第j行の成分の順次書き
    込みをj=1からnまで行う動作をh=1からmまで連
    続して行うようにアドレスを発生する第2のモードを有
    する第1のアドレス生成装置と、 前記専用シングルポートメモリに格納すべきB(h)の
    第i行又は第i列の成分の順次書き込みをi=1からn
    まで行う動作をh=1からmまで連続して行うようにア
    ドレスを発生する第1のモードと、前記専用シングルポ
    ートメモリに格納されたB(h)の第j列又は第j行の
    成分の順次読み出しをj=1からnまで行う動作をh=
    1からmまで連続して行うようにアドレスを発生する第
    2のモードとを有する第2のアドレス生成装置と、 前記割り当てられたバンクのシングルポートメモリ、前
    記専用シングルポートメモリ、前記1次元直交変換装置
    並びに前記第1及び第2のアドレス生成装置を制御する
    ための制御装置とを備え、 前記制御装置は、 前記割り当てられたバンクのシングルポートメモリに格
    納されたA(h)の第i行又は第i列の成分を順に読み
    出すように前記第1のアドレス生成装置を第1のモード
    で起動し、該読み出した成分を前記1次元直交変換装置
    に送って行列積を計算させ、かつ該計算の結果を前記専
    用シングルポートメモリのB(h)の第i行又は第i列
    の成分のアドレスに順に書き込むように前記第2のアド
    レス生成装置を第1のモードで起動した後に、 前記専用シングルポートメモリに格納されたB(h)の
    第j列又は第j行の成分を順に読み出すように前記第2
    のアドレス生成装置を第2のモードで起動し、該読み出
    した成分を前記1次元直交変換装置に送って行列積を計
    算させ、かつ該計算の結果を前記割り当てられたバンク
    のシングルポートメモリのC(h)の第j列又は第j行
    の成分のアドレスに順に書き込むように前記第1のアド
    レス生成装置を第2のモードで起動することを特徴とす
    る2次元直交変換装置。
JP6305909A 1993-12-27 1994-12-09 2次元直交変換装置 Expired - Fee Related JP2851804B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6305909A JP2851804B2 (ja) 1993-12-27 1994-12-09 2次元直交変換装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP33010693 1993-12-27
JP5-330106 1993-12-27
JP6305909A JP2851804B2 (ja) 1993-12-27 1994-12-09 2次元直交変換装置

Publications (2)

Publication Number Publication Date
JPH07234863A JPH07234863A (ja) 1995-09-05
JP2851804B2 true JP2851804B2 (ja) 1999-01-27

Family

ID=26564492

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6305909A Expired - Fee Related JP2851804B2 (ja) 1993-12-27 1994-12-09 2次元直交変換装置

Country Status (1)

Country Link
JP (1) JP2851804B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3092526B2 (ja) * 1996-09-20 2000-09-25 日本電気株式会社 2次元逆離散コサイン変換回路
EP0855657B1 (en) 1997-01-22 2007-03-14 Matsushita Electric Industrial Co., Ltd. Fast fourier transforming apparatus and method
EP1906672A1 (en) * 2005-07-15 2008-04-02 Matsushita Electric Industrial Co., Ltd. Image encoding device and image encoding method
KR101218776B1 (ko) 2006-01-11 2013-01-18 삼성전자주식회사 다운믹스된 신호로부터 멀티채널 신호 생성방법 및 그 기록매체

Also Published As

Publication number Publication date
JPH07234863A (ja) 1995-09-05

Similar Documents

Publication Publication Date Title
US6021420A (en) Matrix transposition device
US5517666A (en) Program controlled processor wherein vector distributor and vector coupler operate independently of sequencer
JP3251421B2 (ja) 半導体集積回路
US5181183A (en) Discrete cosine transform circuit suitable for integrated circuit implementation
US6105114A (en) Two-dimensional array transposition circuit reading two-dimensional array in an order different from that for writing
US4942470A (en) Real time processor for video signals
US5331585A (en) Orthogonal transformation processor for compressing information
US5583803A (en) Two-dimensional orthogonal transform processor
KR20190138815A (ko) 동형 암호화에 의한 보안 계산 가속화를 위한 동형 처리 유닛(hpu)
JP2002518730A (ja) 単一命令複数データシステムに使用するレジスタにアクセスするレジスタおよびアクセス方法
JP2690932B2 (ja) ディジタル信号処理プロセッサおよびディシタル信号処理プロセッサシステム
JPH02173860A (ja) データセル配列とかかる配列を用いる神経網システム
KR100357338B1 (ko) 데이타처리시스템
US7096312B2 (en) Data transfer device and method for multidimensional memory
JP2851804B2 (ja) 2次元直交変換装置
US5008852A (en) Parallel accessible memory device
US5359549A (en) Orthogonal transformation processor for compressing information
KR0139699B1 (ko) 이산 코사인 변환장치
CN116050492A (zh) 一种扩展单元
Panchanathan Universal architecture for matrix transposition
JPH07210545A (ja) 並列処理プロセッサ
JPH06309349A (ja) プログラム制御のプロセッサ
KR100248082B1 (ko) 이차원이산여현변환장치
JP2790911B2 (ja) 直交変換演算装置
JP2004234407A (ja) データ処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19981027

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

Free format text: PAYMENT UNTIL: 20071113

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081113

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20091113

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20091113

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20101113

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees