JPH0526229B2 - - Google Patents
Info
- Publication number
- JPH0526229B2 JPH0526229B2 JP63501201A JP50120187A JPH0526229B2 JP H0526229 B2 JPH0526229 B2 JP H0526229B2 JP 63501201 A JP63501201 A JP 63501201A JP 50120187 A JP50120187 A JP 50120187A JP H0526229 B2 JPH0526229 B2 JP H0526229B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- dct
- bit
- data
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/008—Vector quantisation
-
- 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Discrete Mathematics (AREA)
- Multimedia (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Description
請求の範囲
1 入力データマトリツクスを列ごとに一次元変
換の計算を行つて一次元N×N中間変換マトリツ
クスを形成する第1のN×1 DCTプロセツサ
と、 前記中間変換マトリツクスを記憶するN×N転
位メモリと、 前記転位メモリの中に記憶された前記中間変換
マトリツクスの転移の一次元変換を計算して所望
の2次元DCTを得る第2のN×1 DCTプロセ
ツサと、 を有しており、前記両N×1 DCTプロセツサ
は、 前記入力データのマトリツクスの列、又は前記
記憶中間変換マトリツクスの行又は列がビツト直
列の形式で印加される入力N段入力レジスタと、 前記入力レジスタの対応段に接続された段と、
前記入力レジスタの内容をビツト並列形式で前記
入力レジスタが一杯になつた度ごとにホールデイ
ングレジスタにトランスフアする装置とを有する
前記N段ホールデイングレジスタと、 前記ホールデイングレジスタに接続され、N個
のベクトル内積を同時に計算する装置であつて、
前記装置は前記ホールデイングレジスタに接続さ
れて第1段デシメーシヨン−イン−フレクエンシ
ーを実行して前記ホールデイングレジスタから受
取つたNビツトワードから一対のN/2ビツトワ
ードを作出す回路装置を有する装置と、 前記回路装置に接続されたN個のRACであつ
て、前記各RACは1又はそれ以上のリードオン
リーメモリ(ROM)と累算器とを有し、前記各
RACは一方又は他方の前記N/2ビツトワード
によつてアドレスされるN個のRACと、 前記RACの夫々対応する対応累算器に接続さ
れたその夫々の段を有するN段出力レジスタと、
更に、 前記N個の計算済みベクトル内積を前記出力レ
ジスタに同時にトランスフアする装置と、 を有する、 一対の一次元DCTプロセツサを使用して行−
列デコンポジシヨン法で入力データのN×Nマト
リツクスの2次元DCTを作出す2次元離散余弦
変換(DCT)プロセツサ。 2 前記RACは夫々部分和特性(又は装置)を
有し、前記各RACは前記回路装置から受取つた
前記N/2ビツトワードの一法又は他方の相違す
る部分によつてアドレスされ、前記各RACは更
に前記2又はそれ以上のROMから検索したワー
ドを加算する装置とこれによつて出来た加算され
たワードをRACに付設された累算器に加える装
置とを有する、特許請求の範囲第1項に記載の2
次元DCT。 3 前記入力データマトリツクスの一次元変換を
一時に一列ごとに計算して一次元中間変換マトリ
ツクスを作出す第1のN×1 DCTプロセツサ
と、 前記中間変換マトリツクスを記憶するN×N転
位メモリと、更に、 前記転位メモリ内に記憶された前記中間変換マ
トリツクスの転位の一次元変換を計算して所望の
2次元DCTを得る為の第2のN×1 DCTプロ
セツサとを有して成り、 前記両N×1 DCTプロセツサは、 入力データの前記マトリツクスの列又は前記記
憶中間変換マトリツクスの行又は列がビツト直列
形式で加えられるN段入力レジスタと、 前記入力レジスタの対応段に接続された段と、
前記入力レジスタの内容をビツト並列形式で前記
入力レジスタが一杯になつた度ごとに前記ホール
デイングレジスタに引渡す装置とを有するN段ホ
ールデイングレジスタと、 N個のベクトル内積を同時に計算する、前記ホ
ールデイングレジスタに接続された分布アリスマ
テイツク回路装置であつて、前記分布アリスマテ
イツク回路装置は、前記ホールデイングレジスタ
の出力に接続された第1段デシメーシヨン−イン
−フレクエンシー回路装置を有し、前記デシメー
シヨン−イン−フレクエンシー回路装置は前記ホ
ールデイングレジスタから受取つた各Nビツトワ
ードから一対のN/2ビツトワードを作出す装置
を有する分布アリスマテイツク回路装置と、 前記分布アリスマテイツク回路装置は更に、
夫々が1乃至数個のROMプラス累算器を有し、
前記RACは前記デシメーシヨン−イン−フレク
エンシー回路装置の出力に接続されており、更
に、 その各々の段が前記RACの対応累算器に接続
され、前記累算器からビツト並列で前記ベクトル
内積を受取る装置と、前記内積をビツト直列にシ
フトアウトする装置とを有するN段出力レジスタ
と、 を有する、一対の一次元DCTプロセツサを有し、
行−列デコンポジシヨン法によつて入力データの
N×Nマトリツクスの2次元DCTを作出す2次
元離散余弦変換(DCT)プロセツサ。 4 N=16であり、前記入力データマトリツクス
は8ビツト2進ワードでエンコードされたビデオ
ピクセルであり、前記回路装置は単一チツプに造
り上げられている、特許請求の範囲第3項に記載
のプロセツサ。 5 入力データの列又は行がビツト直列形式で加
えられるN段入力レジスタと、 その各段が前記入力レジスタの対応各段に接続
された各段と、前記入力レジスタが一杯になつた
度毎に前記入力レジスタの内容をビツト並列の形
式で前記ホールデイングレジスタにトランスフア
する装置とを有するN段ホールデイングレジスタ
と、 N個のベクトル内積を同時に計算する、前記ホ
ールデイングレジスタに接続された分布アリスマ
テイツク回路装置であつて、前記分布アリスマテ
イツク回路装置は、前記ホールデイングレジスタ
の出力に接続された第1段デシメーシヨン−イン
−フレクエンシー回路装置を有し、前記デシメー
シヨン−イン−フレクエンシー回路装置は前記ホ
ールデイングレジスタから受取つた各Nビツトワ
ードから一対のN/2ビツトワードを作出す装置
を有する分布アリスマテイツク回路装置と、 前記分布アリスマテイツク回路装置は更に、
夫々が1乃至数個のROMプラス累算器を有する
N個のRACを有し、前記RACは前記デシメーシ
ヨン−イン−フレクエンシー回路装置の出力に接
続されており、更に、 前記夫々のRACの対応する累算器に接続され
た段を有する出力レジスタであつて、前記出力レ
ジスタはビツト並列方式で前記累算器からの前記
ベクトル内積を受取る装置と、前記内積をビツト
直列形式にシフトアウトする装置とを有する出力
レジスタと、 を有するN×1離散余弦変換(DCT)プロセツ
サ。 6 前記RACは夫々部分和特性を有し、前記
RACは2又はそれ以上のROMを有し、その夫々
が前記デシメーシヨン−イン−フレクエンシー回
路装置から受取つた前記N/2ビツトワードの一
方又は他方の別々の部分でアドレスされ、前記
RACは夫々更に前記N/2ビツトワードの前記
別々の部分で前記2又はそれ以上のROMから検
索されたワードを加える装置と、これによつて作
られた加算されたワードを前記RACに対応する
累算器に印加する装置とを有する、特許請求の範
囲第5項に記載のDCTプロセツサ。 7 入力データのN×Nマトリツクスの2次元
DCTを作り出す2次元離散余弦変換プロセツサ
において、 第1および第2のN×1 DCTプロセツサと
N×N転位メモリと、 入力データの該N×Nマトリツクスの転位を前
記第1のDCTプロセツサに加えることにより、
中間N×Nマトリツクスを計算する装置と、 該中間マトリツクスを該転位メモリ内に記憶す
る装置と、 前記記憶された中間マトリツクスの転位を前記
第2のN×1 DCTプロセツサに読み出すこと
により入力データの前記マトリツクスの2次元
DCTを計算する装置とを有し、 前記N×1 DCTプロセツサは夫々第1段デ
シメーシヨン−イン−フレクエンシーおよび部分
和により分布アリスマテイツクを行う回路装置に
よつてN個のベクトル内積を同時に計算する手段
を有し、 前記転位メモリは別々の読取り書込み端子およ
びこれに接続された読取り書込み制御回路付きN
×Nランダム・アクセス・メモリ(RAM)アレ
イを有し、記憶されたマトリツクスの転位が前記
第2のN×1 DCTプロセツサへの印加のため
に行われるように、前記第1のDCTプロセツサ
の出力が行方向と列方向に交互に読み取られ、前
記第2のDCTプロセツサの入力が行方向と列方
向に交互に読み出される、2次元離散余弦変換プ
ロセツサ。 発明の分野 本発明は空間ドメイン信号、例えばビデオ信号
を離散余弦変換(DCT)として周知の数学的手
順で周波数ドメイン信号に変換するプロセツサに
関する。 発明の背景 DCTはイメージ圧縮即ちビデオ帯域幅圧縮に
関して各種の変換コーデイング法の中で最も効果
的な技術と考えられている。DCTは離散フーリ
エ変換(DFT)に類似してはいるが、余弦項の
みを有する。この方法で帯域幅圧縮を実行する事
によつて、デジタルにエンコードされた画像素子
即ちピクセルの正方形ブロツクが、N×Nブロツ
クのピクセルデータが印加される2次元(N×
N)DCTプロセツサによつて周波数ドメインに
変換される事が出来るが、その際入力データマト
リツクスはN×N離散余弦マトリツクスに乗算さ
れて中間マトリツクスが作られ、中間マトリツク
スの転位が同一離散余弦マトリツクスに乗算され
て所望の2次元変換マトリツクスを得る。変換さ
れたマトリツクスの各要素は量子化する事が出
来、その中で最もエネルギーの大きいもののみが
伝送の必要がある。受信機においては、空間ドメ
インの最初のビデオ信号を再構成する為に逆の変
換が行われる。N×N DCTにおいては、Nが
大きい程圧縮比が大きくなるが、計算が大変にな
る。 マトリツクス乗算は2個のN×1ベクトルの内
積を計算して積のマトリツクスの単一要素を得
る。即ち、入力マトリツクスの列の各要素は余弦
マトリツクスの行の各対応要素と乗算されて、積
は加算されて積のマトリツクスの単一要素を得
る。即ち、16×16ブロツクのピクセルの変換に対
しては、16の積が、夫々が256要素を有する中間
及び変換マトリツクスの単一要素又は係数を得る
為に加算されねばならない。多数の高速アルゴリ
ズムが必要とする計算の数を減少する為に誘導さ
れた。例えば、DCTマトリツクスが若干数のス
パース(sparse)マトリツクスに分解されたが、
その結果バタフライ構造となつた。これらのバタ
フライ構造は計算を相当に減少させはするが、し
かし尚集積回路の為に大面積のシリコンを必要と
する多数の高速乗算器が必要で、これは繁雑な内
部配線、チツプ内の悪い接続配線、不規則な形
状、と言う結果を生む。DCTは使用しないがア
ダマール及びハール(Hadamard and Haar)
変換を使用するマトリツクスデコンポジシヨン技
術(matrix−decomposition technique)がフイ
リツプス テクニカル レビユー第38巻第4号/
第5号、1978/79年第119−130頁に、「カラーテ
レビジヨン画像のリアルタイム直交変換」、の題
名で記載されている。ここに説明の方式において
は、変換に必要とされる加算及び減算は、その中
の第10図及び第11図に記載されている高速ア
ルゴリズムによつて並列に実行されている。 これらの全ての要因はバタフライ構造のVLSI
(大規模集積)装置を非常に非能率なものにして
しまう。この種の構造を使用するDCTのVLSI装
置の例としては、JEEE Journal on Selected
Areas in Communication 1986年1月第49−61
頁記載の「離散フーリエ余弦変換チツプ」に記載
されている。その中の第17図に示す出来上りチ
ツプは多数の乗算器を有し、シリコン表面を能率
的に使用してはおらず、8×1一次元変換が行い
得るのみである。2次元変換は2つの一次元変換
を含み、中間の計算結果の一時的な記憶及びマト
リツクス転位が必要であり、従つてこれは一次元
変換に比較して非常に複雑になる。又、IEEE
Transactions on Computers、第C−32巻第12
号、1983年第1128−1136頁に記載の、「パイプラ
イン化分布アリスメテイツクPFFTプロセツサ」
には、プライムフアクタフーリエ変換(Prime
Facter Fourier Transform−PFFT)が記載さ
れているが、これは離散フーリエ変換を比較的短
いプライム長さの変換(relatively short prime
length transform)の組に分解する事を含んで
おり、上述した形式に類似したマトリツクス分解
技術である。PFFTの実行にはROMに記憶され
たルツクアツプテーブルを含む分布アリスメテイ
ツクを利用している。ROMに記憶されているル
ツクアツプテーブルにデータを供給する入力回路
装置はコーナーターニング(corner turning)回
路と、一対のRAMのワード選択カウンタと、
「パイプラインラツチ」(”pipeline latch)とを
含んでいる。エキストラの小型ROMと加算器と
を加えてROMのサイズを減少させる技術も又、
その第8図に公開されている。 本発明は現在の技術状態におけるVLSI技術を
効果的に使用できる2次元DCTのリアルタイム
処理に対する必要性に応えるものである。本発明
は単一チツプ上の16×16DCTのリアルタイム処
理を提供するものである。これは、ビデオカメラ
によつて16×16入力マトリツクスが作られるのと
同じ割合で量子化装置に印加する変換16×16マト
リツクスをプロセツサから作らねばならぬ事を意
味する。プロセツサは現在のMOS技術によるデ
イジタルビデオシステムで通常使用される定格で
ある14.3MHzの入力サンプル又はピクセルレイト
を取扱う事が可能であるべきである。必要とする
大量の計算の為に、この定格でのリアルタイム処
理は、装置内での固有な同時性と並列性とを開発
する事によつてのみ達成可能である。 発明の要約 高速アルゴリズムをシリコンの中にマツピング
する代りに、本発明においては、ベクトル内積を
同時に得る為及びROM寸法を最小限度にするた
めデシメーシヨン−イン−フレクエンシー
(decimation−in−frequency)と組合わせた分
布アリスメテイツク(distributed arithmetic)
と、ビツト直列(bit−serial)とビツト並列
(bit−parallel)データ構造と、部分和とを使用
する。新しい入出力装置と能率的なマトリツクス
転位回路が考案された。その結果は非常に規則正
しい構造で乗算器の無い構成体即ち回路装置であ
る。変換演算の固有の性質、即ち、(1)変換マトリ
ツクス係数が定数でその為分布アリスメテイツク
の使用が可能であるが、その中で乗算器をメモリ
ルツクアツプテーブル又はROMで置換えが可能
であること、又、(2)マトリツクスベクトル積が若
干数の同時ベクトル内積によつて実現される事の
為にこれが可能となる。デシメーシヨン−イン−
フレクエンシーと部分和は必要とするルツクアツ
プテーブルのサイズを減少させるのに利用され
る。ビツト直列構造はデシメーシヨン−イン−フ
レクエンシーの実施に使用されるがその為シリコ
ンの面積は非常に小さく内部配線(routing)は
非常に単純化された。その結果はメモリと、加算
器と、レジスタのみから構成される2次元DCT
プロセツサであり、乗算器は必要ではない。回路
回りの高度な同時的操作の規則性はモジユール設
計を可能とするが、これはVLSI実現に対する理
想的な特徴である。又、この構成体はビツト直列
とビツト並列回路装置を最大限に組合わせてあ
る。この新規な構造体は他の2次元線形演算にも
応用可能である。 本発明による2次元DCTプロセツサは、N×
N入力データブロツクが列ごとに順番に印加され
る一次元(N×1)列DCTプロセツサを有する。
入力装置即ち列プロセツサは入力データの列変換
を、必要とされるROMの量を低下させる為にデ
シメーシヨン−イン−フレクエンシーの加算特性
と部分和を有する分布アリスメチツクスを使用す
る回路によつて行う様に設計されている。入力用
N×1プロセツサがN回路設けられておりその
夫々がリードオンリーメモリー(ROM)とカス
ケード接続された累算機とを有し、RACと呼ば
れている。この累算機はROMから引出されたデ
ータをシフトの上加算して列転位の要素を同時に
計算する。結果の中間ベクトルはRAMから成る
N×N転位メモリの一行に記憶される。データマ
トリツクスの各列は入力用N×1プロセツサーに
順次加えられてN×N中間マトリツクス(Y)を作る
が、これはデータマトリツクスの転位(Xt)と
ROMに記憶された定数で表示された離散余弦と
マトリツクス(C)との積(XtC)である。上記信
号tはマトリツクスの転位を示す。第2の出力行
N×1DCTプロセツサが次に使用されてXtCの各
列用の一次元N×1DCTを計算するのに使用され
るが、これはメモリー内の記憶から引出される。
この第2の行変換操作結果は従つてCtXCを得る
事となるが、これが所望の2次元N×N DCT
である。プロセツサには制御回路が設けられる
が、これはクロツクその他の制御信号を作り、上
記の各部品の操作を制御する。 入力N×1 DCTプロセツサはn1本の並列線
路によつて順番に入力データが加えられるN段の
入力レジスタを有するが、ここでn1は入力データ
のワード又はピクセル当りのビツト数である。入
力レジスタがデータ列で一杯になると直ちに、列
の全部はビツト並列形式でホールデイングレジス
タに同時にシフトされ、そして入力レジスタは次
のデータ列の収集を開始する。ホールデイングレ
ジスタのN段の夫々のデータは、最下位ビツトを
先頭にして一時に1ビツト、同時にシフトアウト
される。この様にして形成されたN−ビツトのワ
ードは、これはいわゆる第1段デシメーシヨン−
イン−フレクエンシー(decimation−in−
frequency)技術の一部として2個のN/2ビツ
トワードに変換され、出来たN/2ビツトのワー
ドはRACのすべてのROMのアドレスに同時に使
用される。第1段デシメーシヨン(decimation)
は符号なしのn1個の入力データを(n1+2)ビツ
トの2の補数に変換するので、同一操作はn1+2
回繰返されて各のROMから読み出されたn1+2
ワードはハードワイアド(hard−wired)1ビツ
ト右シフトを有するシフトレジスタを有する累算
機の内容に順次加算される。データワードの一部
である符号ビツトにより加算ではなく減算が行わ
れる。各列の入力データがプロセスされた後のこ
れらのRACの夫々の累算出力は列変換の要素で
ある単一係数から成る。RACの全ての内容がN
段出力レジスタへ同時にビツト並列の形でトラン
スフアされ、その後、その内容はn2並列線の変換
メモリの一行(又は一列)に順次シフトされる。
N×Nメモリがこの要領で一杯になると、第2即
ち出力N×1列DCTプロセツサーが列ごとに
(又は行ごとに)RAMメモリ中に記憶されたマ
トリツクスを読み出して、これによつてXtCの
変換が得られる。第2N×1 DCTは第1即ち入
力プロセツサが行つたのと同様な要領で所望のN
×2次元DCTを発生する。両方のN×1プロセ
ツサは、第2N×1プロセツサのデータを表示す
るのに多数のビツトを必要とすることを除けば、
同様な回路で構成し得る。 この新規な2次元N×Nプロセツサは第1N×
1プロセツサを有するが、これには最初のマトリ
ツクスを列ごとに読み出して入力データのN×N
ブロツクの転位が印加され、この第1N×1プロ
セツサは分布アリスマテイツクを使用して前記入
力データの各列のNベクトル内積を同時に計算す
る装置を有するが、ここでN×N離散余弦マトリ
ツクスはN個のRACに記憶され、この夫々は
ROMと累算機から成り、このROMは入力デー
タの前記列のデータワードから誘導されたN/2
ビツトワードによつてアドレスされる。この要領
でROMから検索されたワーズはシフト及び加算
操作によつてシフトレジスタに累算され、N個の
RACの各々の出力は、入力データブロツクのN
×1変換を有するN×N中間マトリツクスの一行
(又は一列)の各要素又は係数を有する。N×N
RAMアレーに中間マトリツクスを記憶し、そ
の転位を第2N×1 DCTプロセツサに読み出す
回路が設けられるが、この第2プロセツサは所望
の2次元N×N DCTを、前記中間N×Nマト
リツクスを発生するのに使用したものと類似の回
路によつて発生する。適当な制御回路が所要の制
御信号を発生する為に設置される。 従つて、リアルタイムベースで2進化コードビ
デオデータの16×16ブロツクの変換を発生する事
の出来る2次元DCTプロセツサを提供する事が
本発明の目的であるが、この場合、前記プロセツ
サの構造体、回路、及びアルゴリズムは実現の容
易性からして現在状態でのVLSI技術が選定され、
これが単一CMOSチツプの上に実現される事を
目的とするものである。 本発明の別の目的は入力データマトリツクスか
らのデータ列(又は行)を瞬時に処理して、入力
データの列(又は行)と、プロセツサ内のN
RACに記憶されている離散余弦マトリツクスの
N列とのベクトル内積を有する要素の行を形成す
る一次元N×1 DCTプロセツサを提供する事
であり、ここで、このN×1プロセツサはベクト
ル内積を計算するのに分布アリスマテイツクと、
第1段デシメーシヨン−イン−フレクエンシー
と、部分和とを利用しており、このプロセツサは
レジスタと、小容量のメモリと、加算器とのみを
有するものである。 本発明の更に別の目的は、入力データの列と
RACの中に記憶されている離散余弦マトリツク
スのベクトル内積を構成する複数の要素を効果的
に、瞬時に計算する為に、分布アリスマテイツク
と、RACsと、デシメーシヨン−イン−フレクエ
ンシーと、部分和とを使用する回路を有する一次
元DCTで構成された2次元DCTを提供する事で
あるが、この際、入力データの列は順次に処理さ
れてRAMアレーに記憶される中間N×Nマトリ
ツクスを発生し、次に中間マトリツクスの転位
が、所望の2次元N×N DCTを同様に発生す
る類似の一次元DCTプロセツサに読み出される
ものである。 本発明の別の目的は、プロセツサの構造体、回
路、及びアルゴリズムが、構造物乃至回路が少な
く、且つ制御が簡単で、高速で、複雑な計算を達
成する様に選定された、16×16ビデオピクセルの
ブロツクのリアルタイム処理可能の16×16 2次
元DCTを提供する事である。選定された構造と
回路とは、乗算器を使用する事なしに小容量の
ROMを使用して若干数のベクトル内積の瞬時
(又は同時)計算を可能とし、又、ビツト直列及
びビツト並列フオーマツトが組合わせて使用され
て、シリコンチツプ面積を減少させ、回路内配線
の簡単化を図り、ビデオ信号のリアルタイム処理
を行うために高速操作を可能とするものである。 【図面の簡単な説明】 第1図は本発明を単一チツプに実現した時に必
要な接続を示す。 第2図は本発明の一実施例の全体のブロツク図
を示す。 第3図は分布アリスマテイツクその他の特徴を
使用するDCTプロセツサを示す。 第4図はRACのブロツク図である。 第5図はデシメーシヨン−イン−フレクエンシ
ーを使用するDCTプロセツサのブロツク図であ
る。 第6図は部分和を使用しないRACの回路図で
ある。第7図と第8図とは部分和を使用する
RACの回路図である。 第9図は第2図のN×1 DCTの完成回路図
である。 詳細な説明 離散余弦変換(DCT)は、余弦関数によつて
サンプリングされた基礎ベクトルの組から成る直
交変換である。N式のDCT変換マトリツクス、
C、は次の式で示される、 ここに、k=1、2、3、…l=1、2、3、
…、又、l=1に対して、Ck、l=N-1/2である。
DCTによつて帯域幅圧縮を行う為には、符号無
しの2進コード化ピクセルの形のN×Nビデオデ
ータのブロツクは2次元変換を行わねばならな
い。N次の2次元DCTは、 Y=CtXC (2) ここに、Yは変換されたマトリツクス、Xはデ
ータ即ちビデオピクセルマトリツクス、Ctは式(1)
で定義された離散余弦マトリツクス、Cの転位で
ある。 2次元N×N DCTの実行は行−列デコンポ
ジシヨン技術と称される公知技術によつてなされ
るが、その詳細は1984年刊行のプレンテイスホー
ル信号処理シリーズのダツジオン、マーサロー
(Dudgeon & Mersareau)共著の著書“多次
元デジタル信号処理”を参照されたい。この公知
技術において、2次元DCTは2つの逐次型一次
元DCTによつてなされるが、データマトリツク
スは第1の一次元DCTに行ごとに印加される。
本発明においては、この技術の変形が使用された
が、ここでは、上述の様に、データマトリツクス
の転位が行われるように、行ごとにではなく列ご
とに読み出す事によつてデータマトリツクスの転
位がなされて、これが第1の一次元DCTプロセ
ツサに加えられる。これは回路の簡単化をもたら
す。従つて本発明においては、第1の一次元N×
1 DCTプロセツサの出力はXtCであり、これ
は一時的に転位メモリに記憶され、次に別のN×
1 DCTが記憶されたマトリツクスの転位から
計算されて所望の式(2)の2次元DCT(Y)を得る。
速度が重要ではない場合には、2つのN×1DCT
計算は同一回路で時分割処理する事も出来るが、
リアルタイム操作が必要な現在の場合には2個の
N×1プロセツサを使用する。 第1図は単一チツプ上に実施した本発明を示す
図である。このチツプへの接続はバイアス電圧
Vcc、接地、サンプルクロツク、及びブロツクの
始動(Start−of−Block)ストローブを有する。
入力データはn1本の並列線を介して並列に、ピク
セルワードの各ビツト毎に印加される。変換出力
データは長い変換ワードに対してはn3並列線で構
成されよう。入出力データは同一クロツクレート
で連続的にチツプにシフトして出し入れされる。 第2図は、n1本の並列線で入力データが印加さ
れる第1の列N×1 DCT、3、を有し、DCT
3の出力は一時的に、行又は列状にN×N変換メ
モリ5に記憶されるが、これは図示の通り別々の
入出力端を有するランダムアクセスメモリ
(RAM)を有する。DCT3からメモリ5へのn2
本の並列線は、必要とされる精度によつて変化は
するが、通常は入力データよりもビツト数が大き
くなる。記憶されたマトリツクスは列又は行ごと
に(中間マトリツクスの記憶の仕方に応じて)n2
本の並列線を介して第2の行N×1DCT7に印加
される。即ち、記憶マトリツクスの転位が読み出
される。変換出力データはN×1 DCTプロセ
ツサからn3本の並列線を介して得られる。タイミ
ング及び制御回路9はクロツク信号と、外部回路
からこれに印加されたブロツクの始動ストローブ
とを有し、また、回路9は若干のタイミング及び
制御信号11及び12をプロセツシング回路に供
給している。読取り/書込みアドレス及び制御回
路16は回路9から制御信号12を受取り、線1
4を介して適当な読取り/書込みアドレスその他
の制御信号をメモリ5に加える。 前述のベクトル内積は夫々N個の積の和を有す
る。この計算はROMから成るルツクアツプテー
ブルを使用して乗算なしで出来る事は数学的に証
明する事も出来るが、この場合、変換されたマト
リツクスの必要とする係数はROMから得たルツ
クアツプテーブル値のシフトと加算によつて得ら
れる。これも又当業者に取つて公知の計算技術で
あるが分布アリスマテイツクとも称されている。
シフトと加算が行われるROMと累算機とはRAC
と称するユニツトを形成し、各RACは離散余弦
マトリツクスの各列を表示する定数を記憶する。 第3図と第4図とは、分布アリスマテイツクが
いかに機能するかと言う事、及び本発明に使用さ
れた若干の回路の特徴を示すものである。第3図
において、入力レジスタ13はN段Q1−Qoを有
する。各ピクセル列又はその他の2次元データ、
X1k…XNKは1/Tのデータ又はクロツクレート
でビツト並列形式でレジスタ13の段Q1に印加
される。ピクセルデータマトリツクスを列ごとに
読む事によつて、その変換が完成する。ビデオデ
イジタルピクセルデータは通常ピクセルの輝度を
表示する8ビツト無符号ワードにエンコードされ
ている。即ちデータ入力はQ1に8(又はn1)並列
線で印加され、各レジスタ段Q1−QNは並列8(又
はn1)ビツトで構成される。Nクロツクサイクル
の後、列はレジスタ13のN段に完全に負荷され
る。この時第2図の回路9からの制御信号11a
と11bとが全部の8(又はn1)ビツトワーズを
並列にQ1−QNからホールデイングレジスタ15
の対応段R1−RNにトランスフアする。入力デー
タの次の列が入力レジスタ13への入力開始を始
めるが、その時回路の残りはホールデイングレジ
スタ内のデータの一次元変換を得る為にNベクト
ル内積計算を平行して行う。この同時計算を行う
事によつてホールデイングレジスタ内のデータは
1ビツトずつ下の桁の数字を先頭にして制御信号
11cに応じてシフトアウトされる。レジスタ1
5のN段からのNラインはN−ビツトバスを形成
するが、そのすべての線にはN個の別々のRAC
(RAC(1)−RAC(N))が印加される。即ち、各ク
ロツクサイクル毎に相違するN−ビツトワード
が、各RACの部品であるROMの同時アドレスに
使用される。RAC(1)はそのROMにマトリツ
クスCの第1列の係数の可能な組み合わせを表示
する2N個の定数を有する。例えば、第1列係数が
c1、1、c2、1、c3、1…cN,1、だつたりするとROMは
これらの係数を個々に、又は可能な全ての和、即
ち、c1、1+c2、1、c1、1+c3、1、c1、1+cN,1、c1、1
′+
c2、1+c3、1′など、これらの列係数の全ての和を含
むまでの全てを尽す事となる。例えば、N=4に
対して列変換の各要素、yk,lの計算は次の様に表
示される。即ち、c1、1(110101001)+c2、1
(00101010)+c3、1(1100111)+c4、1(10101110)
、
ここで8ビツトワードはデータの列を構成する各
データピクセルを表す。この例において全てのデ
ータワーズの最も下の桁のビツトはワード1010を
形成する。このワードはRAC(1)のROMから記憶
値c1、1+c3、1を検索するが、これは第4図に示す
様にRAC(1)のシフトレジスタ25に加えられる。
次のクロツクサイクルにおいて、全てのデータワ
ードの次に下の桁のデジツトが全てのRACに加
えられてどのRACがアドレスされたか、及びN
デジツトワードが何であつたかに応じてこれから
各種の値を検索する。この検索されたワードは又
第4図の加算/減算回路23を介してシフトレジ
スタに加えられるが、ここで加算/減算回路にフ
イードバツクされるシフトレジスタの前の内容は
1ビツトの右シフトされたデータが加えられる。
即ち、ROM21の第2アドレシングの後、シフ
トレジスタ25はその中にレスシグニフイカンス
なデータワードのビツトを表示すると言う事実を
反映して最初のワードに1/2の重みを付け(又は
2で割る)をしたデータと次のデータとの2検索
ワードの和を記憶する事となる。このプロセスは
データワードの各ビツトに対して繰返される。加
算/減算回路23は正規データビツトに対して加
算を行い、符号ビツトに対しては減算を行う。
ROMからのこれらの検索の上重みを付けられた
全てのワードの最終加算は積マトリツクスの係数
の一つ又は一次元変換の一係数に等しい。例え
ば、積マトリツクスXtCの要素がyk,lである場合、
この要領で第1列の入力データを処理した後の
RAC(1)の出力はy1、1で、同様にRAC(N)の出力は
y1,Nとなろう。即ち、積マトリツクスXtCの第1
行の全体はこの計算の完成後RAC出力で得られ
る。回路9からの制御信号11dに応じて、各
RACの累算された内容物、yk,1−yK,N、は出力レ
ジスタ19の段、U1−UNにn2(又はn3)並列線を
介して並列して同時に負荷されるが、これはエキ
ストラ2入力マルチプレクサ付の入力レジスタに
類似している。レジスタ19の内容は次に順次そ
の段U1かn2(又はn3)並列線を介して転位メモリ
又は2次元プロセツサ出力に制御信号11eに応
動してシフトされる。例えば、N=16の場合、デ
ータの1列を入力レジスタ13に負荷するのに16
クロツクサイクルを要し、従つて16サイクル毎に
制御回路9はホールデイングレジスタ15へのデ
ータ列のトランスフアを行うのに信号11bを提
供する事が必要である。レジスタ19はその内容
物yk,lを順番にシフトウト可能であるが、その間
RACは積のマトリツクスの次の行の計算を行い、
入力レジスタは入力データを集めている。第4図
に示すように、ROM21の出力はワードレング
スn4ビツトを有するが、これはROMの中に記憶
されたワードの長さによつて決定される。回路9
から回路23に加えられた信号11fは、この回
路が加算用か減算用かを決定する。シフトレジス
タ25に加えられた制御信号11g及び11hは
リセツト及び並列負荷信号である。 一次元DCTプロセツサの両方の回路装置はワ
ード当りのビツト数を除けば同一である。第2図
に示すように、第1プロセツサは入力ワード長さ
n1と出力ワード長さn2とを有する。第2のDCT
プロセツサ7は入出力ワード長さn2とn3とを夫々
有する。 第3図及び第4図の回路は乗算器を必要としな
いが、これはこれに付属する各ROMに記憶させ
るべき定数の数の為に重大な制限を受ける。例え
ば、今N=16とすると、各RACの各ROMに要求
されるワード数は2の16乗即ち65536個である。
このサイズのROMは、全プロセツサを単一チツ
プに収めようとすると現在のVLSI技術では実現
できない。ROMのサイズを減少させる為に2つ
のアプローチがなされたが、これらは共に僅かな
付加回路を要するのみである。第1のアプローチ
はデシメーシヨン−イン−フレクエンシー技術の
翻案であるが、上記技術は従来の高速フーリエ変
換(FFT)アルゴリズムで従来技術として使用
されているものである。積マトリツクスY=Xt
Cの(k、l)番目の要素は、 Yk,l=x t k・c l=iN 〓m=1 xn,k、cn,l (3) ここに、x kはXのk番目の列ベクトルであり、
又、c lはCの1番目の列ベクトルである。式(1)
で定義されたN×N DCT変換マトリツクスC
を参照すると、偶数のNに対して、l=1、3、
…N−1において、ck,l+cN+1-k,lであり、1=2、
4、…Nに対してck,l=−cN+1-k,lである事を示す
事が出来る。これらの関係から式(3)は次の様にな
る、 Yk,l=N/2 〓m=1 uk,ncm、l (4) l=1、3、…N−1に対しては uk,n=xn,R、+xN-n+1,k′なので、 Yk、l=N/2 〓m=1 vkncm、l (5) l=2、4、…Nに対しては Vk,n=xn,k -XN−m+1、k′となる。式(4)と(5)
とは、変数uとvとが最初のデータシークエンス
xと置換された場合、1からNまでの和は1から
N/2までの和になる事を意味する。即ち、各
ROMにアドレスすべきデータビツト数は2分の
1に減少され、必要とする記憶すべきワード数は
2のN/2乗で減少する。原則的には、このデシ
メーシヨン−イン−フレクエンシー技術は、殆ど
のFFTアルゴリズムが行つているようにこの上
の段階にまで展開可能である。しかし、この節約
は、不規則性が増大するので実施の価値に値しな
い。即ち、モジユール構造を残す為に、第1段の
デシメーシヨンのみを適用した。発明のこの特徴
を第5図の回路で示す。 第5図において、N/2シリアル加算器31は
レジスタ15からの最初のデータシークエンスの
N/2個の相違する対から変数uを作る為に設け
られている。図示の通り、変数uk,1はx1,kとxN,k′の
和から、uk,2はx2,k、プラスxN-1,k′から、又,uk,N/2
はxN/2,kプラスxN/2+1,k′によつて得られる。入力デ
ータ要素の同一の対がN/2一ビツトシリアル減
算機33で相互に減算されて新変換vk,lvk,2…vk,N/2
を作る。即ち、入力データの各列のデータ要素の
対は列の最初の及び最後の行の要素から、第2の
及び最後から一つ手前の要素から、第3の及び最
後の要素から3番目の要素から、などで構成され
る。第5図の入力データビツトxk、lは一時に1
ビツトの割合で(ビツト直列形式で)第3図のそ
れと類似のホールデイングレジスタから得られ、
シリアル加算器31と減算器33の出力は一時に
1ビツトずつ現れて2個のN/2ラインバスを形
成するがこの各バスはN/2個のRACの2個の
別のグループの入力を構成してい。加算器31に
付設されているN/2ラインバスはこれに接続さ
れた奇数個のRAC、1、3、N−1、を有し、
これらのRACは奇数列のベクトル内積の全ての
要素、即ち、yk,1、yk,3、yk,N-1を計算する。減算
回路33に付設されたN/2ラインバス36は偶
数個のRAC 2、4、N、を有し、ベクトル内積
の偶数列の要素を計算する。 第5図のそれの様な第1段デシメーシヨン回路
の使用は各ROMのサイズを16×16マトリツクス
に対して256ワードに減少させる、と言うのは各
RACがこの場合8ビツトワードでアドレスされ
るからである。 本発明はROMサイズを更に減少する為に付加
技術を使用する。この付加技術は、式(4)及び式(5)
のデータ点の数である指数mに関する和は部分和
に分割し得る、と言う観察に基ずくものである。
(3)を2つの部分和に分割しようとするならば、次
の通りである。N 〓m=1 xn,kcn,1=F1(c 1、x k)+F2(c 1、x 1) …(6) ここで、 F(Ci、xk)=i N/2 〓+(i-1)N/2 xn,kcm、1′、i=1、2 F1とF2との和にはNサンプルではなく、N/
2サンプルしか含まれていない事に注意された
い。この様にして分割する事によつて2のN乗ワ
ードのROMは2のN/2乗ワードに2個の小型
のROMに置換される。更に詳細に説明すると、
各RACの入力時のデータワードは2グループに
分割され、第1グループは1からN/2のビツト
から成り、第2グループはデータ数(N/2)+
1からNに至るものである。即ち、RACをアド
レスするのに普通使用されるワードはその前半及
び後半から成る2つの等しい部分に分割される。
夫々の短いワードは分割されたROMのアドレス
用に使用され、ROMの出力は並列に加算されて
和は累算器に印加される。この分割技術で使用さ
れる部分和の数は任意の偶数でよい。N=16に対
して各ROMは2個の小型ROMに置換される。
N=32の場合、各ROMは4個のROMに置換し
得るが、この場合加算を行う付加段が必要とな
る。N=8に対しては、ROMのサイズが既に十
分に小さいので分割は必要としない。 部分和及び第1段デシメーシヨン−イン−フレ
クエンシー技術の両者に使用するRACの構造を
第6図、第7図、及び第8図に夫々8×1、16×
1、及び32×1用のものを示す。第5図のそれと
類似の第1段デシメーシヨン−イン−フレクエン
シー特性を有する8×1用の第6図のRACは、
ROMにアドレスする2個の4デジツトバスを含
んでいる。各ROM37は2の4乗即ち16ワード
の記憶を行うのみで、従つて部分和の必要はな
く、ROM37の出力は加算/減算回路39とシ
フトレジスタ11とを介して出力43に加えられ
る。第7図の16×1DCT RACはデシメーシヨン
特性の為に2個の8ビツトバスを有するが、類似
した16ワードROM45と47に印加される2個
の4ビツトワードに、上述した様にして分割され
る。加算器49は2つのROMから検索されたn4
ビツトワードを加算して単一のn4+1ビツトワー
ドを作るが、これは加算/減算回路51と、シフ
トレジスタ53と、シフトレジスタの出力と加算
一減算器51の間の1ビツト右シフトフイードバ
ツク回路とを有する累算器に印加される。55に
おけるRAC出力はn2(又はn3)ビツトを有する
が、これはn4+1ビツトよりも若干長い。 第8図のDCT RACは、夫々が16ワードを記
憶し得る4個の同様なROM、61,63,65
及び67にアドレスする4個の4ビツトワードに
分割される、16ビツトライン入力バスを含んであ
る。ROM61と63の出力でのn4ビツトワード
は加算器69で加算され、又、ROM65と67
からの類似したワードは加算器71に加えられ
る。これらの3個の加算器は加算器73に加えら
れるそれらの出力端を有し、これは累算器に加え
られる出力端を有し、この累算器はベクトル内積
の要素の一つを計算する為に前述したものと同様
に作用する。 これら2技術を繰合わせる事によつて、若干の
回路装置が増大するものの、所要のROMサイズ
を小さくする事ができる。例えば、N=16に対し
て、16×16 2次元DCTの直接の実行には216×
16×2=221ワードのROMを必要とする。反対
に、上述の2技術を使う事によつて第7図の回路
は24×2×16×2=210、約1kワードのROM、を
必要とするのみとなる。このサイズのROMにお
いては、本発明の新規な回路装置が実現可能であ
るばかりでなく、ICの実現という見地からして
も非常に有効である。 第9図はデシメーシヨン−イン−フレクエンシ
ー特性を備えるN×1 DCTの完全ブロツク図
である。第9図のブロツク図はこの回路設計の規
則性と単位性とが強調されている。この図におい
て、入力レジスタはN段Q1−QNを有し、その
夫々がn1(又はn2)ビツトを有するが、これはこ
の回路が第2図の第1、第2プロセツサのどちら
に属するかによつて相違しており、データの入力
列、x1,k、x2,k、…xN,kはn1(又はn2)並列線のQ1
に加えられる。N/2直列加算器81と同様な直
列減算器83が設けられて、その夫々がこれに接
続されたホールデイングレジスタの各段R1−RN
からの一対の単線を有する。N/2ビツトバス8
5は加算器81から誘導のビツトを有し、N/2
ビツトバス87は減算器83からのビツトを有す
る。N/2両ビツトバスの第1ビツト、uk,1及び
vk,1を発生する加算器と減算器は共に第1及び最
後のホールデイングレジスタ段R1とRNに接続さ
れていることに注意されたい。同様に、2つのバ
スにおける各ワードの第2ビツトを発生する加算
器と減算器とは第2及び最後の一つ手前のホール
デイングレジスタ段、R2及びRN-1に接続、以下
同様、となつている。この理論規則に従つて、
夫々のバスの最後のビツトはホルデイングレジス
タ段N/2及び(N/2)+1に接続された加算
器と減算器から導出される。第9図のN個の
RACは番号の順に並んでいるが、奇数番号のも
のは全ての加算器81に接続されているバス85
に接続され、又、全ての偶数番号のRACはバス
87を介して減算器83に接続されている。列変
換係数、yk,1、yk,2、…yk,NはRAC出力から出力レ
ジスタの段U1−UNへビツト並列に同時にシフト
される事は、前の実施例と同じてあるが、このレ
ジスタの内容は次に順次にシフトアウトされる。 N×1 DCTプロセツサの一部としての入力、
出力、及びホールデイングレジスタの設置はチツ
プの入出力ピンの数を減少すると共に、各レジス
タアレーがその隣の物とのみ接続されている為に
接続が簡単になる。又、この回路装置は殆ど全て
の回路が別々の仕事をしながら連続的に作業して
いる同時操作を容易ならしめている。この事は、
リアルタイムプロセツシングを単一チツプによつ
て達成しようとする時には重要な事である。更
に、第1段デシメーシヨン−イン−フレクエンシ
ーを実行する為のビツト直列構造の使用は、所要
の回路装置を減少させ、回路接続を簡単化する。 変換メモリの読取り、書込みアドレツシングの
適当な制御によつて、N×NワードのRAMのみ
が中間結果(又はマトリツクス)の記憶用に及び
記憶された中間結果の読み出し用に要求されるマ
トリツクス転位を行う為の両者に対して要求され
るのみである。転移メモリ(又はRAM)はN=
16の場合16×16ワードを含むが、第2図に示すよ
うに別々の読取り、書込み端を有する。現在流れ
ているブロツクの中間結果は第1のN×1プロセ
ツサからメモリ内に連続的に書込まれ、一方前の
ブロツクの中間結果は第2のN×1プロセツサに
読み出されるので、読取り、書込み操作は、これ
が読み出される前には損壊されない様に配列され
ねばならない。これを達成する一つの方法は、読
取り、書込み制御及びアドレスを、前のブロツク
のサンプルが読み出されたのと同一の位置に各サ
ンプル(又はワード)が書込まれる様にアレンジ
する事である。この様にすると、読取り、書込み
各操作はクロツクサイクルの半分(T/2)を必
要とする。これを実行する別の方法は、書込みア
ドレスを一行又は一列読出しアドレスよりも遅ら
せる事である。この様にすると、各読取り、書込
み操作はフルサイクル(T)を取り得るが、2組のア
ドレスデコーダを使用しなければならなくなる。 所望のマトリツクス転位を行うために、前のブ
ロツクが既にRAMに行ごとに書込まれている場
合は、データはメモリ5から列ごとに読み出さ
れ、これが続く。従つて、例えばN=16の場合、
前のブロツクのデータがRAMに0、1、2、
3、…等、の順で書込まれたとすると、データは
0、16、32、48、…等、の順で読み出され、それ
と同時に現在のブロツクのデータは同じ順番
(0、16、32、48、等、)でRAMに書込まれる。
次のブロツクにおいてはデータは再び1、2、3
…、等、と読み出され/書込まれ、この操作が繰
返される。アドレスは8ビツトカウンタによつて
作り出す事が出来、順番の変更は上位4桁と下位
4桁を入れ替える事で容易に行い得る。この回路
装置は第2図の回路16の一部である。ブロツク
の始動ストローブは読み/書き操作のアドレスの
リセツトに使用される。この要領でのRAMアド
レスの制御の為に必要なカウンタはROMで作ら
れた制御信号によつて加算器とレジスタとによつ
て作ることが出来る事に注意されたい。 この2次元プロセツサにおいては、殆どの応用
においてn1は8である。n2、n3及びn4は回路のコ
ンピユータシミユレーシヨンによつて決定される
が、この回路の中では多数の像がデジタル化され
てそのピクセルが本発明の回路装置で変換されて
逆の変換が次に行われて、像が再現される。n24
=12、n3=16、n4=9によつて非常な精度が得ら
れた。この様な精度を必要としない、例えば低ビ
ツトレートビデオにおいては、n2、n3、及びn4は
1又は2に減少させ得る。 本発明は例示的な実施例に関連して説明した
が、その中での自明的な変形は本発明の実行なし
に当業者には明らかな所であり、従つて、本発明
は添付請求の範囲の範囲からのみ限定されるべき
ものである。 開示の抄録 このプロセツサは、2次元離散余弦変換
(DCT)を行う為にビデオ信号或いはその他の2
次元データのリアルタイムプロセツシングが可能
なものである。プロセツサはビデオ帯域幅或いは
イメージ圧縮システムの一部として使用する事が
出来る。回路装置は、分布アリスマテイツクを使
用して、又、デシメーシヨン−イン−フレクエン
シーを使用して全行又は全列のベクトル内積を同
時に計算する第1の一次元DCTプロセツサ3を
有し必要とするメモリ容量(ROM)の量を減少
させている。ROMのサイズを更に減少する為に
部分和も使用する事が出来る。第1のプロセツサ
からの一次元の変換されたマトリツクスは転位メ
モリ5に記憶されて、記憶されたマトリツクスの
転位は、入力データマトリツクスの所望の2次元
DCTを計算する類似の回路装置である第2の一
次元DCTプロセツサ7に印加される。
換の計算を行つて一次元N×N中間変換マトリツ
クスを形成する第1のN×1 DCTプロセツサ
と、 前記中間変換マトリツクスを記憶するN×N転
位メモリと、 前記転位メモリの中に記憶された前記中間変換
マトリツクスの転移の一次元変換を計算して所望
の2次元DCTを得る第2のN×1 DCTプロセ
ツサと、 を有しており、前記両N×1 DCTプロセツサ
は、 前記入力データのマトリツクスの列、又は前記
記憶中間変換マトリツクスの行又は列がビツト直
列の形式で印加される入力N段入力レジスタと、 前記入力レジスタの対応段に接続された段と、
前記入力レジスタの内容をビツト並列形式で前記
入力レジスタが一杯になつた度ごとにホールデイ
ングレジスタにトランスフアする装置とを有する
前記N段ホールデイングレジスタと、 前記ホールデイングレジスタに接続され、N個
のベクトル内積を同時に計算する装置であつて、
前記装置は前記ホールデイングレジスタに接続さ
れて第1段デシメーシヨン−イン−フレクエンシ
ーを実行して前記ホールデイングレジスタから受
取つたNビツトワードから一対のN/2ビツトワ
ードを作出す回路装置を有する装置と、 前記回路装置に接続されたN個のRACであつ
て、前記各RACは1又はそれ以上のリードオン
リーメモリ(ROM)と累算器とを有し、前記各
RACは一方又は他方の前記N/2ビツトワード
によつてアドレスされるN個のRACと、 前記RACの夫々対応する対応累算器に接続さ
れたその夫々の段を有するN段出力レジスタと、
更に、 前記N個の計算済みベクトル内積を前記出力レ
ジスタに同時にトランスフアする装置と、 を有する、 一対の一次元DCTプロセツサを使用して行−
列デコンポジシヨン法で入力データのN×Nマト
リツクスの2次元DCTを作出す2次元離散余弦
変換(DCT)プロセツサ。 2 前記RACは夫々部分和特性(又は装置)を
有し、前記各RACは前記回路装置から受取つた
前記N/2ビツトワードの一法又は他方の相違す
る部分によつてアドレスされ、前記各RACは更
に前記2又はそれ以上のROMから検索したワー
ドを加算する装置とこれによつて出来た加算され
たワードをRACに付設された累算器に加える装
置とを有する、特許請求の範囲第1項に記載の2
次元DCT。 3 前記入力データマトリツクスの一次元変換を
一時に一列ごとに計算して一次元中間変換マトリ
ツクスを作出す第1のN×1 DCTプロセツサ
と、 前記中間変換マトリツクスを記憶するN×N転
位メモリと、更に、 前記転位メモリ内に記憶された前記中間変換マ
トリツクスの転位の一次元変換を計算して所望の
2次元DCTを得る為の第2のN×1 DCTプロ
セツサとを有して成り、 前記両N×1 DCTプロセツサは、 入力データの前記マトリツクスの列又は前記記
憶中間変換マトリツクスの行又は列がビツト直列
形式で加えられるN段入力レジスタと、 前記入力レジスタの対応段に接続された段と、
前記入力レジスタの内容をビツト並列形式で前記
入力レジスタが一杯になつた度ごとに前記ホール
デイングレジスタに引渡す装置とを有するN段ホ
ールデイングレジスタと、 N個のベクトル内積を同時に計算する、前記ホ
ールデイングレジスタに接続された分布アリスマ
テイツク回路装置であつて、前記分布アリスマテ
イツク回路装置は、前記ホールデイングレジスタ
の出力に接続された第1段デシメーシヨン−イン
−フレクエンシー回路装置を有し、前記デシメー
シヨン−イン−フレクエンシー回路装置は前記ホ
ールデイングレジスタから受取つた各Nビツトワ
ードから一対のN/2ビツトワードを作出す装置
を有する分布アリスマテイツク回路装置と、 前記分布アリスマテイツク回路装置は更に、
夫々が1乃至数個のROMプラス累算器を有し、
前記RACは前記デシメーシヨン−イン−フレク
エンシー回路装置の出力に接続されており、更
に、 その各々の段が前記RACの対応累算器に接続
され、前記累算器からビツト並列で前記ベクトル
内積を受取る装置と、前記内積をビツト直列にシ
フトアウトする装置とを有するN段出力レジスタ
と、 を有する、一対の一次元DCTプロセツサを有し、
行−列デコンポジシヨン法によつて入力データの
N×Nマトリツクスの2次元DCTを作出す2次
元離散余弦変換(DCT)プロセツサ。 4 N=16であり、前記入力データマトリツクス
は8ビツト2進ワードでエンコードされたビデオ
ピクセルであり、前記回路装置は単一チツプに造
り上げられている、特許請求の範囲第3項に記載
のプロセツサ。 5 入力データの列又は行がビツト直列形式で加
えられるN段入力レジスタと、 その各段が前記入力レジスタの対応各段に接続
された各段と、前記入力レジスタが一杯になつた
度毎に前記入力レジスタの内容をビツト並列の形
式で前記ホールデイングレジスタにトランスフア
する装置とを有するN段ホールデイングレジスタ
と、 N個のベクトル内積を同時に計算する、前記ホ
ールデイングレジスタに接続された分布アリスマ
テイツク回路装置であつて、前記分布アリスマテ
イツク回路装置は、前記ホールデイングレジスタ
の出力に接続された第1段デシメーシヨン−イン
−フレクエンシー回路装置を有し、前記デシメー
シヨン−イン−フレクエンシー回路装置は前記ホ
ールデイングレジスタから受取つた各Nビツトワ
ードから一対のN/2ビツトワードを作出す装置
を有する分布アリスマテイツク回路装置と、 前記分布アリスマテイツク回路装置は更に、
夫々が1乃至数個のROMプラス累算器を有する
N個のRACを有し、前記RACは前記デシメーシ
ヨン−イン−フレクエンシー回路装置の出力に接
続されており、更に、 前記夫々のRACの対応する累算器に接続され
た段を有する出力レジスタであつて、前記出力レ
ジスタはビツト並列方式で前記累算器からの前記
ベクトル内積を受取る装置と、前記内積をビツト
直列形式にシフトアウトする装置とを有する出力
レジスタと、 を有するN×1離散余弦変換(DCT)プロセツ
サ。 6 前記RACは夫々部分和特性を有し、前記
RACは2又はそれ以上のROMを有し、その夫々
が前記デシメーシヨン−イン−フレクエンシー回
路装置から受取つた前記N/2ビツトワードの一
方又は他方の別々の部分でアドレスされ、前記
RACは夫々更に前記N/2ビツトワードの前記
別々の部分で前記2又はそれ以上のROMから検
索されたワードを加える装置と、これによつて作
られた加算されたワードを前記RACに対応する
累算器に印加する装置とを有する、特許請求の範
囲第5項に記載のDCTプロセツサ。 7 入力データのN×Nマトリツクスの2次元
DCTを作り出す2次元離散余弦変換プロセツサ
において、 第1および第2のN×1 DCTプロセツサと
N×N転位メモリと、 入力データの該N×Nマトリツクスの転位を前
記第1のDCTプロセツサに加えることにより、
中間N×Nマトリツクスを計算する装置と、 該中間マトリツクスを該転位メモリ内に記憶す
る装置と、 前記記憶された中間マトリツクスの転位を前記
第2のN×1 DCTプロセツサに読み出すこと
により入力データの前記マトリツクスの2次元
DCTを計算する装置とを有し、 前記N×1 DCTプロセツサは夫々第1段デ
シメーシヨン−イン−フレクエンシーおよび部分
和により分布アリスマテイツクを行う回路装置に
よつてN個のベクトル内積を同時に計算する手段
を有し、 前記転位メモリは別々の読取り書込み端子およ
びこれに接続された読取り書込み制御回路付きN
×Nランダム・アクセス・メモリ(RAM)アレ
イを有し、記憶されたマトリツクスの転位が前記
第2のN×1 DCTプロセツサへの印加のため
に行われるように、前記第1のDCTプロセツサ
の出力が行方向と列方向に交互に読み取られ、前
記第2のDCTプロセツサの入力が行方向と列方
向に交互に読み出される、2次元離散余弦変換プ
ロセツサ。 発明の分野 本発明は空間ドメイン信号、例えばビデオ信号
を離散余弦変換(DCT)として周知の数学的手
順で周波数ドメイン信号に変換するプロセツサに
関する。 発明の背景 DCTはイメージ圧縮即ちビデオ帯域幅圧縮に
関して各種の変換コーデイング法の中で最も効果
的な技術と考えられている。DCTは離散フーリ
エ変換(DFT)に類似してはいるが、余弦項の
みを有する。この方法で帯域幅圧縮を実行する事
によつて、デジタルにエンコードされた画像素子
即ちピクセルの正方形ブロツクが、N×Nブロツ
クのピクセルデータが印加される2次元(N×
N)DCTプロセツサによつて周波数ドメインに
変換される事が出来るが、その際入力データマト
リツクスはN×N離散余弦マトリツクスに乗算さ
れて中間マトリツクスが作られ、中間マトリツク
スの転位が同一離散余弦マトリツクスに乗算され
て所望の2次元変換マトリツクスを得る。変換さ
れたマトリツクスの各要素は量子化する事が出
来、その中で最もエネルギーの大きいもののみが
伝送の必要がある。受信機においては、空間ドメ
インの最初のビデオ信号を再構成する為に逆の変
換が行われる。N×N DCTにおいては、Nが
大きい程圧縮比が大きくなるが、計算が大変にな
る。 マトリツクス乗算は2個のN×1ベクトルの内
積を計算して積のマトリツクスの単一要素を得
る。即ち、入力マトリツクスの列の各要素は余弦
マトリツクスの行の各対応要素と乗算されて、積
は加算されて積のマトリツクスの単一要素を得
る。即ち、16×16ブロツクのピクセルの変換に対
しては、16の積が、夫々が256要素を有する中間
及び変換マトリツクスの単一要素又は係数を得る
為に加算されねばならない。多数の高速アルゴリ
ズムが必要とする計算の数を減少する為に誘導さ
れた。例えば、DCTマトリツクスが若干数のス
パース(sparse)マトリツクスに分解されたが、
その結果バタフライ構造となつた。これらのバタ
フライ構造は計算を相当に減少させはするが、し
かし尚集積回路の為に大面積のシリコンを必要と
する多数の高速乗算器が必要で、これは繁雑な内
部配線、チツプ内の悪い接続配線、不規則な形
状、と言う結果を生む。DCTは使用しないがア
ダマール及びハール(Hadamard and Haar)
変換を使用するマトリツクスデコンポジシヨン技
術(matrix−decomposition technique)がフイ
リツプス テクニカル レビユー第38巻第4号/
第5号、1978/79年第119−130頁に、「カラーテ
レビジヨン画像のリアルタイム直交変換」、の題
名で記載されている。ここに説明の方式において
は、変換に必要とされる加算及び減算は、その中
の第10図及び第11図に記載されている高速ア
ルゴリズムによつて並列に実行されている。 これらの全ての要因はバタフライ構造のVLSI
(大規模集積)装置を非常に非能率なものにして
しまう。この種の構造を使用するDCTのVLSI装
置の例としては、JEEE Journal on Selected
Areas in Communication 1986年1月第49−61
頁記載の「離散フーリエ余弦変換チツプ」に記載
されている。その中の第17図に示す出来上りチ
ツプは多数の乗算器を有し、シリコン表面を能率
的に使用してはおらず、8×1一次元変換が行い
得るのみである。2次元変換は2つの一次元変換
を含み、中間の計算結果の一時的な記憶及びマト
リツクス転位が必要であり、従つてこれは一次元
変換に比較して非常に複雑になる。又、IEEE
Transactions on Computers、第C−32巻第12
号、1983年第1128−1136頁に記載の、「パイプラ
イン化分布アリスメテイツクPFFTプロセツサ」
には、プライムフアクタフーリエ変換(Prime
Facter Fourier Transform−PFFT)が記載さ
れているが、これは離散フーリエ変換を比較的短
いプライム長さの変換(relatively short prime
length transform)の組に分解する事を含んで
おり、上述した形式に類似したマトリツクス分解
技術である。PFFTの実行にはROMに記憶され
たルツクアツプテーブルを含む分布アリスメテイ
ツクを利用している。ROMに記憶されているル
ツクアツプテーブルにデータを供給する入力回路
装置はコーナーターニング(corner turning)回
路と、一対のRAMのワード選択カウンタと、
「パイプラインラツチ」(”pipeline latch)とを
含んでいる。エキストラの小型ROMと加算器と
を加えてROMのサイズを減少させる技術も又、
その第8図に公開されている。 本発明は現在の技術状態におけるVLSI技術を
効果的に使用できる2次元DCTのリアルタイム
処理に対する必要性に応えるものである。本発明
は単一チツプ上の16×16DCTのリアルタイム処
理を提供するものである。これは、ビデオカメラ
によつて16×16入力マトリツクスが作られるのと
同じ割合で量子化装置に印加する変換16×16マト
リツクスをプロセツサから作らねばならぬ事を意
味する。プロセツサは現在のMOS技術によるデ
イジタルビデオシステムで通常使用される定格で
ある14.3MHzの入力サンプル又はピクセルレイト
を取扱う事が可能であるべきである。必要とする
大量の計算の為に、この定格でのリアルタイム処
理は、装置内での固有な同時性と並列性とを開発
する事によつてのみ達成可能である。 発明の要約 高速アルゴリズムをシリコンの中にマツピング
する代りに、本発明においては、ベクトル内積を
同時に得る為及びROM寸法を最小限度にするた
めデシメーシヨン−イン−フレクエンシー
(decimation−in−frequency)と組合わせた分
布アリスメテイツク(distributed arithmetic)
と、ビツト直列(bit−serial)とビツト並列
(bit−parallel)データ構造と、部分和とを使用
する。新しい入出力装置と能率的なマトリツクス
転位回路が考案された。その結果は非常に規則正
しい構造で乗算器の無い構成体即ち回路装置であ
る。変換演算の固有の性質、即ち、(1)変換マトリ
ツクス係数が定数でその為分布アリスメテイツク
の使用が可能であるが、その中で乗算器をメモリ
ルツクアツプテーブル又はROMで置換えが可能
であること、又、(2)マトリツクスベクトル積が若
干数の同時ベクトル内積によつて実現される事の
為にこれが可能となる。デシメーシヨン−イン−
フレクエンシーと部分和は必要とするルツクアツ
プテーブルのサイズを減少させるのに利用され
る。ビツト直列構造はデシメーシヨン−イン−フ
レクエンシーの実施に使用されるがその為シリコ
ンの面積は非常に小さく内部配線(routing)は
非常に単純化された。その結果はメモリと、加算
器と、レジスタのみから構成される2次元DCT
プロセツサであり、乗算器は必要ではない。回路
回りの高度な同時的操作の規則性はモジユール設
計を可能とするが、これはVLSI実現に対する理
想的な特徴である。又、この構成体はビツト直列
とビツト並列回路装置を最大限に組合わせてあ
る。この新規な構造体は他の2次元線形演算にも
応用可能である。 本発明による2次元DCTプロセツサは、N×
N入力データブロツクが列ごとに順番に印加され
る一次元(N×1)列DCTプロセツサを有する。
入力装置即ち列プロセツサは入力データの列変換
を、必要とされるROMの量を低下させる為にデ
シメーシヨン−イン−フレクエンシーの加算特性
と部分和を有する分布アリスメチツクスを使用す
る回路によつて行う様に設計されている。入力用
N×1プロセツサがN回路設けられておりその
夫々がリードオンリーメモリー(ROM)とカス
ケード接続された累算機とを有し、RACと呼ば
れている。この累算機はROMから引出されたデ
ータをシフトの上加算して列転位の要素を同時に
計算する。結果の中間ベクトルはRAMから成る
N×N転位メモリの一行に記憶される。データマ
トリツクスの各列は入力用N×1プロセツサーに
順次加えられてN×N中間マトリツクス(Y)を作る
が、これはデータマトリツクスの転位(Xt)と
ROMに記憶された定数で表示された離散余弦と
マトリツクス(C)との積(XtC)である。上記信
号tはマトリツクスの転位を示す。第2の出力行
N×1DCTプロセツサが次に使用されてXtCの各
列用の一次元N×1DCTを計算するのに使用され
るが、これはメモリー内の記憶から引出される。
この第2の行変換操作結果は従つてCtXCを得る
事となるが、これが所望の2次元N×N DCT
である。プロセツサには制御回路が設けられる
が、これはクロツクその他の制御信号を作り、上
記の各部品の操作を制御する。 入力N×1 DCTプロセツサはn1本の並列線
路によつて順番に入力データが加えられるN段の
入力レジスタを有するが、ここでn1は入力データ
のワード又はピクセル当りのビツト数である。入
力レジスタがデータ列で一杯になると直ちに、列
の全部はビツト並列形式でホールデイングレジス
タに同時にシフトされ、そして入力レジスタは次
のデータ列の収集を開始する。ホールデイングレ
ジスタのN段の夫々のデータは、最下位ビツトを
先頭にして一時に1ビツト、同時にシフトアウト
される。この様にして形成されたN−ビツトのワ
ードは、これはいわゆる第1段デシメーシヨン−
イン−フレクエンシー(decimation−in−
frequency)技術の一部として2個のN/2ビツ
トワードに変換され、出来たN/2ビツトのワー
ドはRACのすべてのROMのアドレスに同時に使
用される。第1段デシメーシヨン(decimation)
は符号なしのn1個の入力データを(n1+2)ビツ
トの2の補数に変換するので、同一操作はn1+2
回繰返されて各のROMから読み出されたn1+2
ワードはハードワイアド(hard−wired)1ビツ
ト右シフトを有するシフトレジスタを有する累算
機の内容に順次加算される。データワードの一部
である符号ビツトにより加算ではなく減算が行わ
れる。各列の入力データがプロセスされた後のこ
れらのRACの夫々の累算出力は列変換の要素で
ある単一係数から成る。RACの全ての内容がN
段出力レジスタへ同時にビツト並列の形でトラン
スフアされ、その後、その内容はn2並列線の変換
メモリの一行(又は一列)に順次シフトされる。
N×Nメモリがこの要領で一杯になると、第2即
ち出力N×1列DCTプロセツサーが列ごとに
(又は行ごとに)RAMメモリ中に記憶されたマ
トリツクスを読み出して、これによつてXtCの
変換が得られる。第2N×1 DCTは第1即ち入
力プロセツサが行つたのと同様な要領で所望のN
×2次元DCTを発生する。両方のN×1プロセ
ツサは、第2N×1プロセツサのデータを表示す
るのに多数のビツトを必要とすることを除けば、
同様な回路で構成し得る。 この新規な2次元N×Nプロセツサは第1N×
1プロセツサを有するが、これには最初のマトリ
ツクスを列ごとに読み出して入力データのN×N
ブロツクの転位が印加され、この第1N×1プロ
セツサは分布アリスマテイツクを使用して前記入
力データの各列のNベクトル内積を同時に計算す
る装置を有するが、ここでN×N離散余弦マトリ
ツクスはN個のRACに記憶され、この夫々は
ROMと累算機から成り、このROMは入力デー
タの前記列のデータワードから誘導されたN/2
ビツトワードによつてアドレスされる。この要領
でROMから検索されたワーズはシフト及び加算
操作によつてシフトレジスタに累算され、N個の
RACの各々の出力は、入力データブロツクのN
×1変換を有するN×N中間マトリツクスの一行
(又は一列)の各要素又は係数を有する。N×N
RAMアレーに中間マトリツクスを記憶し、そ
の転位を第2N×1 DCTプロセツサに読み出す
回路が設けられるが、この第2プロセツサは所望
の2次元N×N DCTを、前記中間N×Nマト
リツクスを発生するのに使用したものと類似の回
路によつて発生する。適当な制御回路が所要の制
御信号を発生する為に設置される。 従つて、リアルタイムベースで2進化コードビ
デオデータの16×16ブロツクの変換を発生する事
の出来る2次元DCTプロセツサを提供する事が
本発明の目的であるが、この場合、前記プロセツ
サの構造体、回路、及びアルゴリズムは実現の容
易性からして現在状態でのVLSI技術が選定され、
これが単一CMOSチツプの上に実現される事を
目的とするものである。 本発明の別の目的は入力データマトリツクスか
らのデータ列(又は行)を瞬時に処理して、入力
データの列(又は行)と、プロセツサ内のN
RACに記憶されている離散余弦マトリツクスの
N列とのベクトル内積を有する要素の行を形成す
る一次元N×1 DCTプロセツサを提供する事
であり、ここで、このN×1プロセツサはベクト
ル内積を計算するのに分布アリスマテイツクと、
第1段デシメーシヨン−イン−フレクエンシー
と、部分和とを利用しており、このプロセツサは
レジスタと、小容量のメモリと、加算器とのみを
有するものである。 本発明の更に別の目的は、入力データの列と
RACの中に記憶されている離散余弦マトリツク
スのベクトル内積を構成する複数の要素を効果的
に、瞬時に計算する為に、分布アリスマテイツク
と、RACsと、デシメーシヨン−イン−フレクエ
ンシーと、部分和とを使用する回路を有する一次
元DCTで構成された2次元DCTを提供する事で
あるが、この際、入力データの列は順次に処理さ
れてRAMアレーに記憶される中間N×Nマトリ
ツクスを発生し、次に中間マトリツクスの転位
が、所望の2次元N×N DCTを同様に発生す
る類似の一次元DCTプロセツサに読み出される
ものである。 本発明の別の目的は、プロセツサの構造体、回
路、及びアルゴリズムが、構造物乃至回路が少な
く、且つ制御が簡単で、高速で、複雑な計算を達
成する様に選定された、16×16ビデオピクセルの
ブロツクのリアルタイム処理可能の16×16 2次
元DCTを提供する事である。選定された構造と
回路とは、乗算器を使用する事なしに小容量の
ROMを使用して若干数のベクトル内積の瞬時
(又は同時)計算を可能とし、又、ビツト直列及
びビツト並列フオーマツトが組合わせて使用され
て、シリコンチツプ面積を減少させ、回路内配線
の簡単化を図り、ビデオ信号のリアルタイム処理
を行うために高速操作を可能とするものである。 【図面の簡単な説明】 第1図は本発明を単一チツプに実現した時に必
要な接続を示す。 第2図は本発明の一実施例の全体のブロツク図
を示す。 第3図は分布アリスマテイツクその他の特徴を
使用するDCTプロセツサを示す。 第4図はRACのブロツク図である。 第5図はデシメーシヨン−イン−フレクエンシ
ーを使用するDCTプロセツサのブロツク図であ
る。 第6図は部分和を使用しないRACの回路図で
ある。第7図と第8図とは部分和を使用する
RACの回路図である。 第9図は第2図のN×1 DCTの完成回路図
である。 詳細な説明 離散余弦変換(DCT)は、余弦関数によつて
サンプリングされた基礎ベクトルの組から成る直
交変換である。N式のDCT変換マトリツクス、
C、は次の式で示される、 ここに、k=1、2、3、…l=1、2、3、
…、又、l=1に対して、Ck、l=N-1/2である。
DCTによつて帯域幅圧縮を行う為には、符号無
しの2進コード化ピクセルの形のN×Nビデオデ
ータのブロツクは2次元変換を行わねばならな
い。N次の2次元DCTは、 Y=CtXC (2) ここに、Yは変換されたマトリツクス、Xはデ
ータ即ちビデオピクセルマトリツクス、Ctは式(1)
で定義された離散余弦マトリツクス、Cの転位で
ある。 2次元N×N DCTの実行は行−列デコンポ
ジシヨン技術と称される公知技術によつてなされ
るが、その詳細は1984年刊行のプレンテイスホー
ル信号処理シリーズのダツジオン、マーサロー
(Dudgeon & Mersareau)共著の著書“多次
元デジタル信号処理”を参照されたい。この公知
技術において、2次元DCTは2つの逐次型一次
元DCTによつてなされるが、データマトリツク
スは第1の一次元DCTに行ごとに印加される。
本発明においては、この技術の変形が使用された
が、ここでは、上述の様に、データマトリツクス
の転位が行われるように、行ごとにではなく列ご
とに読み出す事によつてデータマトリツクスの転
位がなされて、これが第1の一次元DCTプロセ
ツサに加えられる。これは回路の簡単化をもたら
す。従つて本発明においては、第1の一次元N×
1 DCTプロセツサの出力はXtCであり、これ
は一時的に転位メモリに記憶され、次に別のN×
1 DCTが記憶されたマトリツクスの転位から
計算されて所望の式(2)の2次元DCT(Y)を得る。
速度が重要ではない場合には、2つのN×1DCT
計算は同一回路で時分割処理する事も出来るが、
リアルタイム操作が必要な現在の場合には2個の
N×1プロセツサを使用する。 第1図は単一チツプ上に実施した本発明を示す
図である。このチツプへの接続はバイアス電圧
Vcc、接地、サンプルクロツク、及びブロツクの
始動(Start−of−Block)ストローブを有する。
入力データはn1本の並列線を介して並列に、ピク
セルワードの各ビツト毎に印加される。変換出力
データは長い変換ワードに対してはn3並列線で構
成されよう。入出力データは同一クロツクレート
で連続的にチツプにシフトして出し入れされる。 第2図は、n1本の並列線で入力データが印加さ
れる第1の列N×1 DCT、3、を有し、DCT
3の出力は一時的に、行又は列状にN×N変換メ
モリ5に記憶されるが、これは図示の通り別々の
入出力端を有するランダムアクセスメモリ
(RAM)を有する。DCT3からメモリ5へのn2
本の並列線は、必要とされる精度によつて変化は
するが、通常は入力データよりもビツト数が大き
くなる。記憶されたマトリツクスは列又は行ごと
に(中間マトリツクスの記憶の仕方に応じて)n2
本の並列線を介して第2の行N×1DCT7に印加
される。即ち、記憶マトリツクスの転位が読み出
される。変換出力データはN×1 DCTプロセ
ツサからn3本の並列線を介して得られる。タイミ
ング及び制御回路9はクロツク信号と、外部回路
からこれに印加されたブロツクの始動ストローブ
とを有し、また、回路9は若干のタイミング及び
制御信号11及び12をプロセツシング回路に供
給している。読取り/書込みアドレス及び制御回
路16は回路9から制御信号12を受取り、線1
4を介して適当な読取り/書込みアドレスその他
の制御信号をメモリ5に加える。 前述のベクトル内積は夫々N個の積の和を有す
る。この計算はROMから成るルツクアツプテー
ブルを使用して乗算なしで出来る事は数学的に証
明する事も出来るが、この場合、変換されたマト
リツクスの必要とする係数はROMから得たルツ
クアツプテーブル値のシフトと加算によつて得ら
れる。これも又当業者に取つて公知の計算技術で
あるが分布アリスマテイツクとも称されている。
シフトと加算が行われるROMと累算機とはRAC
と称するユニツトを形成し、各RACは離散余弦
マトリツクスの各列を表示する定数を記憶する。 第3図と第4図とは、分布アリスマテイツクが
いかに機能するかと言う事、及び本発明に使用さ
れた若干の回路の特徴を示すものである。第3図
において、入力レジスタ13はN段Q1−Qoを有
する。各ピクセル列又はその他の2次元データ、
X1k…XNKは1/Tのデータ又はクロツクレート
でビツト並列形式でレジスタ13の段Q1に印加
される。ピクセルデータマトリツクスを列ごとに
読む事によつて、その変換が完成する。ビデオデ
イジタルピクセルデータは通常ピクセルの輝度を
表示する8ビツト無符号ワードにエンコードされ
ている。即ちデータ入力はQ1に8(又はn1)並列
線で印加され、各レジスタ段Q1−QNは並列8(又
はn1)ビツトで構成される。Nクロツクサイクル
の後、列はレジスタ13のN段に完全に負荷され
る。この時第2図の回路9からの制御信号11a
と11bとが全部の8(又はn1)ビツトワーズを
並列にQ1−QNからホールデイングレジスタ15
の対応段R1−RNにトランスフアする。入力デー
タの次の列が入力レジスタ13への入力開始を始
めるが、その時回路の残りはホールデイングレジ
スタ内のデータの一次元変換を得る為にNベクト
ル内積計算を平行して行う。この同時計算を行う
事によつてホールデイングレジスタ内のデータは
1ビツトずつ下の桁の数字を先頭にして制御信号
11cに応じてシフトアウトされる。レジスタ1
5のN段からのNラインはN−ビツトバスを形成
するが、そのすべての線にはN個の別々のRAC
(RAC(1)−RAC(N))が印加される。即ち、各ク
ロツクサイクル毎に相違するN−ビツトワード
が、各RACの部品であるROMの同時アドレスに
使用される。RAC(1)はそのROMにマトリツ
クスCの第1列の係数の可能な組み合わせを表示
する2N個の定数を有する。例えば、第1列係数が
c1、1、c2、1、c3、1…cN,1、だつたりするとROMは
これらの係数を個々に、又は可能な全ての和、即
ち、c1、1+c2、1、c1、1+c3、1、c1、1+cN,1、c1、1
′+
c2、1+c3、1′など、これらの列係数の全ての和を含
むまでの全てを尽す事となる。例えば、N=4に
対して列変換の各要素、yk,lの計算は次の様に表
示される。即ち、c1、1(110101001)+c2、1
(00101010)+c3、1(1100111)+c4、1(10101110)
、
ここで8ビツトワードはデータの列を構成する各
データピクセルを表す。この例において全てのデ
ータワーズの最も下の桁のビツトはワード1010を
形成する。このワードはRAC(1)のROMから記憶
値c1、1+c3、1を検索するが、これは第4図に示す
様にRAC(1)のシフトレジスタ25に加えられる。
次のクロツクサイクルにおいて、全てのデータワ
ードの次に下の桁のデジツトが全てのRACに加
えられてどのRACがアドレスされたか、及びN
デジツトワードが何であつたかに応じてこれから
各種の値を検索する。この検索されたワードは又
第4図の加算/減算回路23を介してシフトレジ
スタに加えられるが、ここで加算/減算回路にフ
イードバツクされるシフトレジスタの前の内容は
1ビツトの右シフトされたデータが加えられる。
即ち、ROM21の第2アドレシングの後、シフ
トレジスタ25はその中にレスシグニフイカンス
なデータワードのビツトを表示すると言う事実を
反映して最初のワードに1/2の重みを付け(又は
2で割る)をしたデータと次のデータとの2検索
ワードの和を記憶する事となる。このプロセスは
データワードの各ビツトに対して繰返される。加
算/減算回路23は正規データビツトに対して加
算を行い、符号ビツトに対しては減算を行う。
ROMからのこれらの検索の上重みを付けられた
全てのワードの最終加算は積マトリツクスの係数
の一つ又は一次元変換の一係数に等しい。例え
ば、積マトリツクスXtCの要素がyk,lである場合、
この要領で第1列の入力データを処理した後の
RAC(1)の出力はy1、1で、同様にRAC(N)の出力は
y1,Nとなろう。即ち、積マトリツクスXtCの第1
行の全体はこの計算の完成後RAC出力で得られ
る。回路9からの制御信号11dに応じて、各
RACの累算された内容物、yk,1−yK,N、は出力レ
ジスタ19の段、U1−UNにn2(又はn3)並列線を
介して並列して同時に負荷されるが、これはエキ
ストラ2入力マルチプレクサ付の入力レジスタに
類似している。レジスタ19の内容は次に順次そ
の段U1かn2(又はn3)並列線を介して転位メモリ
又は2次元プロセツサ出力に制御信号11eに応
動してシフトされる。例えば、N=16の場合、デ
ータの1列を入力レジスタ13に負荷するのに16
クロツクサイクルを要し、従つて16サイクル毎に
制御回路9はホールデイングレジスタ15へのデ
ータ列のトランスフアを行うのに信号11bを提
供する事が必要である。レジスタ19はその内容
物yk,lを順番にシフトウト可能であるが、その間
RACは積のマトリツクスの次の行の計算を行い、
入力レジスタは入力データを集めている。第4図
に示すように、ROM21の出力はワードレング
スn4ビツトを有するが、これはROMの中に記憶
されたワードの長さによつて決定される。回路9
から回路23に加えられた信号11fは、この回
路が加算用か減算用かを決定する。シフトレジス
タ25に加えられた制御信号11g及び11hは
リセツト及び並列負荷信号である。 一次元DCTプロセツサの両方の回路装置はワ
ード当りのビツト数を除けば同一である。第2図
に示すように、第1プロセツサは入力ワード長さ
n1と出力ワード長さn2とを有する。第2のDCT
プロセツサ7は入出力ワード長さn2とn3とを夫々
有する。 第3図及び第4図の回路は乗算器を必要としな
いが、これはこれに付属する各ROMに記憶させ
るべき定数の数の為に重大な制限を受ける。例え
ば、今N=16とすると、各RACの各ROMに要求
されるワード数は2の16乗即ち65536個である。
このサイズのROMは、全プロセツサを単一チツ
プに収めようとすると現在のVLSI技術では実現
できない。ROMのサイズを減少させる為に2つ
のアプローチがなされたが、これらは共に僅かな
付加回路を要するのみである。第1のアプローチ
はデシメーシヨン−イン−フレクエンシー技術の
翻案であるが、上記技術は従来の高速フーリエ変
換(FFT)アルゴリズムで従来技術として使用
されているものである。積マトリツクスY=Xt
Cの(k、l)番目の要素は、 Yk,l=x t k・c l=iN 〓m=1 xn,k、cn,l (3) ここに、x kはXのk番目の列ベクトルであり、
又、c lはCの1番目の列ベクトルである。式(1)
で定義されたN×N DCT変換マトリツクスC
を参照すると、偶数のNに対して、l=1、3、
…N−1において、ck,l+cN+1-k,lであり、1=2、
4、…Nに対してck,l=−cN+1-k,lである事を示す
事が出来る。これらの関係から式(3)は次の様にな
る、 Yk,l=N/2 〓m=1 uk,ncm、l (4) l=1、3、…N−1に対しては uk,n=xn,R、+xN-n+1,k′なので、 Yk、l=N/2 〓m=1 vkncm、l (5) l=2、4、…Nに対しては Vk,n=xn,k -XN−m+1、k′となる。式(4)と(5)
とは、変数uとvとが最初のデータシークエンス
xと置換された場合、1からNまでの和は1から
N/2までの和になる事を意味する。即ち、各
ROMにアドレスすべきデータビツト数は2分の
1に減少され、必要とする記憶すべきワード数は
2のN/2乗で減少する。原則的には、このデシ
メーシヨン−イン−フレクエンシー技術は、殆ど
のFFTアルゴリズムが行つているようにこの上
の段階にまで展開可能である。しかし、この節約
は、不規則性が増大するので実施の価値に値しな
い。即ち、モジユール構造を残す為に、第1段の
デシメーシヨンのみを適用した。発明のこの特徴
を第5図の回路で示す。 第5図において、N/2シリアル加算器31は
レジスタ15からの最初のデータシークエンスの
N/2個の相違する対から変数uを作る為に設け
られている。図示の通り、変数uk,1はx1,kとxN,k′の
和から、uk,2はx2,k、プラスxN-1,k′から、又,uk,N/2
はxN/2,kプラスxN/2+1,k′によつて得られる。入力デ
ータ要素の同一の対がN/2一ビツトシリアル減
算機33で相互に減算されて新変換vk,lvk,2…vk,N/2
を作る。即ち、入力データの各列のデータ要素の
対は列の最初の及び最後の行の要素から、第2の
及び最後から一つ手前の要素から、第3の及び最
後の要素から3番目の要素から、などで構成され
る。第5図の入力データビツトxk、lは一時に1
ビツトの割合で(ビツト直列形式で)第3図のそ
れと類似のホールデイングレジスタから得られ、
シリアル加算器31と減算器33の出力は一時に
1ビツトずつ現れて2個のN/2ラインバスを形
成するがこの各バスはN/2個のRACの2個の
別のグループの入力を構成してい。加算器31に
付設されているN/2ラインバスはこれに接続さ
れた奇数個のRAC、1、3、N−1、を有し、
これらのRACは奇数列のベクトル内積の全ての
要素、即ち、yk,1、yk,3、yk,N-1を計算する。減算
回路33に付設されたN/2ラインバス36は偶
数個のRAC 2、4、N、を有し、ベクトル内積
の偶数列の要素を計算する。 第5図のそれの様な第1段デシメーシヨン回路
の使用は各ROMのサイズを16×16マトリツクス
に対して256ワードに減少させる、と言うのは各
RACがこの場合8ビツトワードでアドレスされ
るからである。 本発明はROMサイズを更に減少する為に付加
技術を使用する。この付加技術は、式(4)及び式(5)
のデータ点の数である指数mに関する和は部分和
に分割し得る、と言う観察に基ずくものである。
(3)を2つの部分和に分割しようとするならば、次
の通りである。N 〓m=1 xn,kcn,1=F1(c 1、x k)+F2(c 1、x 1) …(6) ここで、 F(Ci、xk)=i N/2 〓+(i-1)N/2 xn,kcm、1′、i=1、2 F1とF2との和にはNサンプルではなく、N/
2サンプルしか含まれていない事に注意された
い。この様にして分割する事によつて2のN乗ワ
ードのROMは2のN/2乗ワードに2個の小型
のROMに置換される。更に詳細に説明すると、
各RACの入力時のデータワードは2グループに
分割され、第1グループは1からN/2のビツト
から成り、第2グループはデータ数(N/2)+
1からNに至るものである。即ち、RACをアド
レスするのに普通使用されるワードはその前半及
び後半から成る2つの等しい部分に分割される。
夫々の短いワードは分割されたROMのアドレス
用に使用され、ROMの出力は並列に加算されて
和は累算器に印加される。この分割技術で使用さ
れる部分和の数は任意の偶数でよい。N=16に対
して各ROMは2個の小型ROMに置換される。
N=32の場合、各ROMは4個のROMに置換し
得るが、この場合加算を行う付加段が必要とな
る。N=8に対しては、ROMのサイズが既に十
分に小さいので分割は必要としない。 部分和及び第1段デシメーシヨン−イン−フレ
クエンシー技術の両者に使用するRACの構造を
第6図、第7図、及び第8図に夫々8×1、16×
1、及び32×1用のものを示す。第5図のそれと
類似の第1段デシメーシヨン−イン−フレクエン
シー特性を有する8×1用の第6図のRACは、
ROMにアドレスする2個の4デジツトバスを含
んでいる。各ROM37は2の4乗即ち16ワード
の記憶を行うのみで、従つて部分和の必要はな
く、ROM37の出力は加算/減算回路39とシ
フトレジスタ11とを介して出力43に加えられ
る。第7図の16×1DCT RACはデシメーシヨン
特性の為に2個の8ビツトバスを有するが、類似
した16ワードROM45と47に印加される2個
の4ビツトワードに、上述した様にして分割され
る。加算器49は2つのROMから検索されたn4
ビツトワードを加算して単一のn4+1ビツトワー
ドを作るが、これは加算/減算回路51と、シフ
トレジスタ53と、シフトレジスタの出力と加算
一減算器51の間の1ビツト右シフトフイードバ
ツク回路とを有する累算器に印加される。55に
おけるRAC出力はn2(又はn3)ビツトを有する
が、これはn4+1ビツトよりも若干長い。 第8図のDCT RACは、夫々が16ワードを記
憶し得る4個の同様なROM、61,63,65
及び67にアドレスする4個の4ビツトワードに
分割される、16ビツトライン入力バスを含んであ
る。ROM61と63の出力でのn4ビツトワード
は加算器69で加算され、又、ROM65と67
からの類似したワードは加算器71に加えられ
る。これらの3個の加算器は加算器73に加えら
れるそれらの出力端を有し、これは累算器に加え
られる出力端を有し、この累算器はベクトル内積
の要素の一つを計算する為に前述したものと同様
に作用する。 これら2技術を繰合わせる事によつて、若干の
回路装置が増大するものの、所要のROMサイズ
を小さくする事ができる。例えば、N=16に対し
て、16×16 2次元DCTの直接の実行には216×
16×2=221ワードのROMを必要とする。反対
に、上述の2技術を使う事によつて第7図の回路
は24×2×16×2=210、約1kワードのROM、を
必要とするのみとなる。このサイズのROMにお
いては、本発明の新規な回路装置が実現可能であ
るばかりでなく、ICの実現という見地からして
も非常に有効である。 第9図はデシメーシヨン−イン−フレクエンシ
ー特性を備えるN×1 DCTの完全ブロツク図
である。第9図のブロツク図はこの回路設計の規
則性と単位性とが強調されている。この図におい
て、入力レジスタはN段Q1−QNを有し、その
夫々がn1(又はn2)ビツトを有するが、これはこ
の回路が第2図の第1、第2プロセツサのどちら
に属するかによつて相違しており、データの入力
列、x1,k、x2,k、…xN,kはn1(又はn2)並列線のQ1
に加えられる。N/2直列加算器81と同様な直
列減算器83が設けられて、その夫々がこれに接
続されたホールデイングレジスタの各段R1−RN
からの一対の単線を有する。N/2ビツトバス8
5は加算器81から誘導のビツトを有し、N/2
ビツトバス87は減算器83からのビツトを有す
る。N/2両ビツトバスの第1ビツト、uk,1及び
vk,1を発生する加算器と減算器は共に第1及び最
後のホールデイングレジスタ段R1とRNに接続さ
れていることに注意されたい。同様に、2つのバ
スにおける各ワードの第2ビツトを発生する加算
器と減算器とは第2及び最後の一つ手前のホール
デイングレジスタ段、R2及びRN-1に接続、以下
同様、となつている。この理論規則に従つて、
夫々のバスの最後のビツトはホルデイングレジス
タ段N/2及び(N/2)+1に接続された加算
器と減算器から導出される。第9図のN個の
RACは番号の順に並んでいるが、奇数番号のも
のは全ての加算器81に接続されているバス85
に接続され、又、全ての偶数番号のRACはバス
87を介して減算器83に接続されている。列変
換係数、yk,1、yk,2、…yk,NはRAC出力から出力レ
ジスタの段U1−UNへビツト並列に同時にシフト
される事は、前の実施例と同じてあるが、このレ
ジスタの内容は次に順次にシフトアウトされる。 N×1 DCTプロセツサの一部としての入力、
出力、及びホールデイングレジスタの設置はチツ
プの入出力ピンの数を減少すると共に、各レジス
タアレーがその隣の物とのみ接続されている為に
接続が簡単になる。又、この回路装置は殆ど全て
の回路が別々の仕事をしながら連続的に作業して
いる同時操作を容易ならしめている。この事は、
リアルタイムプロセツシングを単一チツプによつ
て達成しようとする時には重要な事である。更
に、第1段デシメーシヨン−イン−フレクエンシ
ーを実行する為のビツト直列構造の使用は、所要
の回路装置を減少させ、回路接続を簡単化する。 変換メモリの読取り、書込みアドレツシングの
適当な制御によつて、N×NワードのRAMのみ
が中間結果(又はマトリツクス)の記憶用に及び
記憶された中間結果の読み出し用に要求されるマ
トリツクス転位を行う為の両者に対して要求され
るのみである。転移メモリ(又はRAM)はN=
16の場合16×16ワードを含むが、第2図に示すよ
うに別々の読取り、書込み端を有する。現在流れ
ているブロツクの中間結果は第1のN×1プロセ
ツサからメモリ内に連続的に書込まれ、一方前の
ブロツクの中間結果は第2のN×1プロセツサに
読み出されるので、読取り、書込み操作は、これ
が読み出される前には損壊されない様に配列され
ねばならない。これを達成する一つの方法は、読
取り、書込み制御及びアドレスを、前のブロツク
のサンプルが読み出されたのと同一の位置に各サ
ンプル(又はワード)が書込まれる様にアレンジ
する事である。この様にすると、読取り、書込み
各操作はクロツクサイクルの半分(T/2)を必
要とする。これを実行する別の方法は、書込みア
ドレスを一行又は一列読出しアドレスよりも遅ら
せる事である。この様にすると、各読取り、書込
み操作はフルサイクル(T)を取り得るが、2組のア
ドレスデコーダを使用しなければならなくなる。 所望のマトリツクス転位を行うために、前のブ
ロツクが既にRAMに行ごとに書込まれている場
合は、データはメモリ5から列ごとに読み出さ
れ、これが続く。従つて、例えばN=16の場合、
前のブロツクのデータがRAMに0、1、2、
3、…等、の順で書込まれたとすると、データは
0、16、32、48、…等、の順で読み出され、それ
と同時に現在のブロツクのデータは同じ順番
(0、16、32、48、等、)でRAMに書込まれる。
次のブロツクにおいてはデータは再び1、2、3
…、等、と読み出され/書込まれ、この操作が繰
返される。アドレスは8ビツトカウンタによつて
作り出す事が出来、順番の変更は上位4桁と下位
4桁を入れ替える事で容易に行い得る。この回路
装置は第2図の回路16の一部である。ブロツク
の始動ストローブは読み/書き操作のアドレスの
リセツトに使用される。この要領でのRAMアド
レスの制御の為に必要なカウンタはROMで作ら
れた制御信号によつて加算器とレジスタとによつ
て作ることが出来る事に注意されたい。 この2次元プロセツサにおいては、殆どの応用
においてn1は8である。n2、n3及びn4は回路のコ
ンピユータシミユレーシヨンによつて決定される
が、この回路の中では多数の像がデジタル化され
てそのピクセルが本発明の回路装置で変換されて
逆の変換が次に行われて、像が再現される。n24
=12、n3=16、n4=9によつて非常な精度が得ら
れた。この様な精度を必要としない、例えば低ビ
ツトレートビデオにおいては、n2、n3、及びn4は
1又は2に減少させ得る。 本発明は例示的な実施例に関連して説明した
が、その中での自明的な変形は本発明の実行なし
に当業者には明らかな所であり、従つて、本発明
は添付請求の範囲の範囲からのみ限定されるべき
ものである。 開示の抄録 このプロセツサは、2次元離散余弦変換
(DCT)を行う為にビデオ信号或いはその他の2
次元データのリアルタイムプロセツシングが可能
なものである。プロセツサはビデオ帯域幅或いは
イメージ圧縮システムの一部として使用する事が
出来る。回路装置は、分布アリスマテイツクを使
用して、又、デシメーシヨン−イン−フレクエン
シーを使用して全行又は全列のベクトル内積を同
時に計算する第1の一次元DCTプロセツサ3を
有し必要とするメモリ容量(ROM)の量を減少
させている。ROMのサイズを更に減少する為に
部分和も使用する事が出来る。第1のプロセツサ
からの一次元の変換されたマトリツクスは転位メ
モリ5に記憶されて、記憶されたマトリツクスの
転位は、入力データマトリツクスの所望の2次元
DCTを計算する類似の回路装置である第2の一
次元DCTプロセツサ7に印加される。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US029761 | 1987-03-24 | ||
| US07/029,761 US4791598A (en) | 1987-03-24 | 1987-03-24 | Two-dimensional discrete cosine transform processor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02501601A JPH02501601A (ja) | 1990-05-31 |
| JPH0526229B2 true JPH0526229B2 (ja) | 1993-04-15 |
Family
ID=21850746
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63501201A Granted JPH02501601A (ja) | 1987-03-24 | 1987-12-15 | 2次元離散余弦変換プロセッサ |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4791598A (ja) |
| EP (1) | EP0353223B1 (ja) |
| JP (1) | JPH02501601A (ja) |
| CA (1) | CA1290854C (ja) |
| DE (1) | DE3789116T2 (ja) |
| WO (1) | WO1988007725A1 (ja) |
Families Citing this family (105)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6336180B1 (en) | 1997-04-30 | 2002-01-01 | Canon Kabushiki Kaisha | Method, apparatus and system for managing virtual memory with virtual-physical mapping |
| NL8700845A (nl) * | 1987-04-10 | 1988-11-01 | Philips Nv | Een-dimensionale lineaire beeldtransformator. |
| FR2617621B1 (fr) * | 1987-07-03 | 1989-12-01 | Thomson Semiconducteurs | Memoire de transposition pour circuit de traitement de donnees |
| JPH0795320B2 (ja) * | 1988-10-11 | 1995-10-11 | 日本電子株式会社 | 大容量高速フーリエ変換装置 |
| IT8921420V0 (it) * | 1989-07-13 | 1989-07-13 | Telettra Spa | Sistema e circuito per il calcolo di trasformata discreta bidimensionale. |
| US5299025A (en) * | 1989-10-18 | 1994-03-29 | Ricoh Company, Ltd. | Method of coding two-dimensional data by fast cosine transform and method of decoding compressed data by inverse fast cosine transform |
| US5053985A (en) * | 1989-10-19 | 1991-10-01 | Zoran Corporation | Recycling dct/idct integrated circuit apparatus using a single multiplier/accumulator and a single random access memory |
| US5268853A (en) * | 1989-12-01 | 1993-12-07 | Ricoh Company, Ltd. | Orthogonal transformation processor for compressing information |
| US5359549A (en) * | 1989-12-01 | 1994-10-25 | Ricoh Company, Ltd. | Orthogonal transformation processor for compressing information |
| JP2646778B2 (ja) * | 1990-01-17 | 1997-08-27 | 日本電気株式会社 | ディジタル信号処理装置 |
| US5191548A (en) * | 1990-03-14 | 1993-03-02 | C-Cube Microsystems | System for compression and decompression of video data using discrete cosine transform and coding techniques |
| US5128754A (en) * | 1990-03-30 | 1992-07-07 | New York Institute Of Technology | Apparatus and method for encoding and decoding video |
| US5319724A (en) * | 1990-04-19 | 1994-06-07 | Ricoh Corporation | Apparatus and method for compressing still images |
| US5126962A (en) * | 1990-07-11 | 1992-06-30 | Massachusetts Institute Of Technology | Discrete cosine transform processing system |
| US5196930A (en) * | 1990-07-20 | 1993-03-23 | Matsushita Electric Industrial Co., Ltd. | High efficienccy coding and decoding apparatus for lowering transmission or recording rate of transmitted or recorded video signal without reducing picture quality |
| US7142720B1 (en) * | 1990-07-31 | 2006-11-28 | Fujitsu Limited | Image data processing method and apparatus |
| US5875266A (en) * | 1990-07-31 | 1999-02-23 | Fujitsu Limited | Image data processing a method and apparatus |
| EP0469855B1 (en) * | 1990-07-31 | 1999-12-01 | Fujitsu Limited | Image data processing method and apparatus |
| US5933538A (en) * | 1990-07-31 | 1999-08-03 | Fujitsu Limited | Image data processing method and apparatus |
| JP2646844B2 (ja) * | 1990-11-16 | 1997-08-27 | 日本電気株式会社 | 離散コサイン変換装置 |
| JPH04242860A (ja) * | 1990-12-28 | 1992-08-31 | Sony Corp | 演算装置 |
| JPH04236664A (ja) * | 1991-01-18 | 1992-08-25 | Sony Corp | 演算回路 |
| JP2964172B2 (ja) * | 1991-03-08 | 1999-10-18 | 富士通株式会社 | Dctマトリクス演算回路 |
| JP2866754B2 (ja) * | 1991-03-27 | 1999-03-08 | 三菱電機株式会社 | 演算処理装置 |
| FR2681962B1 (fr) * | 1991-09-30 | 1993-12-24 | Sgs Thomson Microelectronics Sa | Procede et circuit de traitement de donnees par transformee cosinus. |
| US5285402A (en) * | 1991-11-22 | 1994-02-08 | Intel Corporation | Multiplyless discrete cosine transform |
| US5361220A (en) * | 1991-11-29 | 1994-11-01 | Fuji Photo Film Co., Ltd. | Discrete cosine transformation with reduced components |
| US5410500A (en) * | 1992-02-21 | 1995-04-25 | Sony Corporation | Discrete cosine transform apparatus and inverse discrete cosine transform apparatus |
| US5528736A (en) * | 1992-04-28 | 1996-06-18 | Polytechnic University | Apparatus and method for performing a two-dimensional block data transform without transposition |
| US5394349A (en) * | 1992-07-10 | 1995-02-28 | Xing Technology Corporation | Fast inverse discrete transform using subwords for decompression of information |
| US5654910A (en) * | 1992-08-26 | 1997-08-05 | Sony Corporation | Processing method and apparatus for performing 4 ×4 discrete cosine transformation or inverse discrete cosing transformation |
| KR940004467A (ko) * | 1992-08-26 | 1994-03-15 | 오오가 노리오 | 이산코사인 변환장치 및 그 역변환장치 |
| US5339265A (en) * | 1992-08-31 | 1994-08-16 | University Of Maryland At College Park | Optimal unified architectures for the real-time computation of time-recursive discrete sinusoidal transforms |
| JPH06103301A (ja) * | 1992-09-17 | 1994-04-15 | Sony Corp | 8x8離散コサイン変換回路および8x8離散コサイン逆変換回路 |
| US5523847A (en) * | 1992-10-09 | 1996-06-04 | International Business Machines Corporation | Digital image processor for color image compression |
| JPH06149862A (ja) * | 1992-11-13 | 1994-05-31 | Sony Corp | 行列データ乗算方法及び行列データ乗算装置 |
| KR950000386B1 (ko) * | 1992-12-30 | 1995-01-16 | 재단법인 한국전자통신연구소 | 이산여현 변환회로 |
| US6002809A (en) * | 1993-04-15 | 1999-12-14 | International Business Machines Corporation | Digital image processor for image scaling |
| US5345408A (en) * | 1993-04-19 | 1994-09-06 | Gi Corporation | Inverse discrete cosine transform processor |
| US5572691A (en) * | 1993-04-21 | 1996-11-05 | Gi Corporation | Apparatus and method for providing multiple data streams from stored data using dual memory buffers |
| US5483475A (en) * | 1993-09-15 | 1996-01-09 | Industrial Technology Research Institute | Fast pipelined 2-D discrete cosine transform architecture |
| US5638068A (en) * | 1993-11-24 | 1997-06-10 | Intel Corporation | Processing images using two-dimensional forward transforms |
| JPH07152730A (ja) * | 1993-11-30 | 1995-06-16 | Toshiba Corp | 離散コサイン変換装置 |
| US5583803A (en) * | 1993-12-27 | 1996-12-10 | Matsushita Electric Industrial Co., Ltd. | Two-dimensional orthogonal transform processor |
| JP2677969B2 (ja) * | 1993-12-27 | 1997-11-17 | 松下電器産業株式会社 | 直交変換装置 |
| KR0130446B1 (ko) * | 1994-01-18 | 1998-04-15 | 배순훈 | 이차원 역이산코사인 변환방법 및 장치 |
| US5481487A (en) * | 1994-01-28 | 1996-01-02 | Industrial Technology Research Institute | Transpose memory for DCT/IDCT circuit |
| JP3133601B2 (ja) * | 1994-02-09 | 2001-02-13 | 株式会社東芝 | パラレル・シリアル変換装置及びこれを用いた線形変換装置 |
| US5729484A (en) * | 1994-02-28 | 1998-03-17 | Intel Corporation | Processes, apparatuses, and systems of encoding and decoding signals using transforms |
| KR0150350B1 (ko) * | 1994-05-10 | 1998-10-15 | 모리시다 요이치 | 직교변환 프로세서 |
| TW284869B (ja) * | 1994-05-27 | 1996-09-01 | Hitachi Ltd | |
| KR100357338B1 (ko) * | 1994-08-02 | 2003-02-11 | 가부시끼가이샤 히다치 세이사꾸쇼 | 데이타처리시스템 |
| US5574798A (en) * | 1994-08-03 | 1996-11-12 | International Business Machines Corporation | Visual presentation system which determines length of time to present each slide or transparency |
| JP4035789B2 (ja) * | 1994-10-13 | 2008-01-23 | 富士通株式会社 | 逆離散コサイン変換装置 |
| US5717468A (en) * | 1994-12-02 | 1998-02-10 | International Business Machines Corporation | System and method for dynamically recording and displaying comments for a video movie |
| US5623423A (en) * | 1994-12-12 | 1997-04-22 | Univ. Of Texas | Apparatus and method for video decoding |
| JPH08186723A (ja) * | 1994-12-28 | 1996-07-16 | Ricoh Co Ltd | 画像処理装置用エンコーダ |
| GB2301203B (en) * | 1995-03-18 | 2000-01-12 | United Microelectronics Corp | Real time two dimensional discrete cosine transform/inverse discrete cosine transform circuit |
| GB2302421B (en) * | 1995-03-18 | 1999-11-03 | United Microelectronics Corp | Apparatus for two-dimensional inverse discrete cosine transform |
| US5668748A (en) * | 1995-04-15 | 1997-09-16 | United Microelectronics Corporation | Apparatus for two-dimensional discrete cosine transform |
| US5610849A (en) * | 1995-06-23 | 1997-03-11 | United Microelectronics Corporation | Real time two-dimensional discrete cosine transform/inverse discrete cosine transform circuit |
| JPH0981541A (ja) * | 1995-09-12 | 1997-03-28 | Matsushita Electric Ind Co Ltd | 累算器 |
| US5729691A (en) * | 1995-09-29 | 1998-03-17 | Intel Corporation | Two-stage transform for video signals |
| 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 |
| US5959690A (en) * | 1996-02-20 | 1999-09-28 | Sas Institute, Inc. | Method and apparatus for transitions and other special effects in digital motion video |
| US5764553A (en) * | 1996-02-28 | 1998-06-09 | Lsi Logic Corporation | Generalized data processing path for performing transformation and quantization functions for video encoder systems |
| US5999958A (en) * | 1996-04-24 | 1999-12-07 | National Science Council | Device for computing discrete cosine transform and inverse discrete cosine transform |
| US5894430A (en) * | 1996-05-20 | 1999-04-13 | Matsushita Electric Industrial Co., Ltd. | Orthogonal transform processor |
| US5949920A (en) * | 1996-08-13 | 1999-09-07 | Hewlett-Packard Co. | Reconfigurable convolver circuit |
| US6819783B2 (en) | 1996-09-04 | 2004-11-16 | Centerframe, Llc | Obtaining person-specific images in a public venue |
| US6044176A (en) * | 1996-11-12 | 2000-03-28 | Samsung Electronics Co., Ltd. | Method of performing inverse discrete cosine transform |
| JPH10207868A (ja) * | 1997-01-21 | 1998-08-07 | Sharp Corp | 2次元配列転置回路 |
| KR100538607B1 (ko) * | 1997-03-12 | 2005-12-22 | 마츠시타 덴끼 산교 가부시키가이샤 | 부호화방법, 부호화장치 및 기록매체와, 복호화방법, 복호화장치 및 기록매체 |
| AUPO648397A0 (en) | 1997-04-30 | 1997-05-22 | Canon Information Systems Research Australia Pty Ltd | Improvements in multiprocessor architecture operation |
| US6061749A (en) * | 1997-04-30 | 2000-05-09 | Canon Kabushiki Kaisha | Transformation of a first dataword received from a FIFO into an input register and subsequent dataword from the FIFO into a normalized output dataword |
| US6414687B1 (en) | 1997-04-30 | 2002-07-02 | Canon Kabushiki Kaisha | Register setting-micro programming system |
| US6707463B1 (en) | 1997-04-30 | 2004-03-16 | Canon Kabushiki Kaisha | Data normalization technique |
| AUPO647997A0 (en) * | 1997-04-30 | 1997-05-22 | Canon Information Systems Research Australia Pty Ltd | Memory controller architecture |
| US6195674B1 (en) | 1997-04-30 | 2001-02-27 | Canon Kabushiki Kaisha | Fast DCT apparatus |
| US6289138B1 (en) | 1997-04-30 | 2001-09-11 | Canon Kabushiki Kaisha | General image processor |
| CN1147155C (zh) * | 1998-12-14 | 2004-04-21 | 松下电器产业株式会社 | Dct运算装置 |
| KR100313217B1 (ko) * | 1998-12-23 | 2001-12-28 | 서평원 | 파이프라인dct장치 |
| US6499045B1 (en) * | 1999-10-21 | 2002-12-24 | Xilinx, Inc. | Implementation of a two-dimensional wavelet transform |
| US7292730B1 (en) * | 1999-12-09 | 2007-11-06 | Intel Corporation | Two-dimensional inverse discrete cosine transforming |
| US6684235B1 (en) | 2000-11-28 | 2004-01-27 | Xilinx, Inc. | One-dimensional wavelet system and method |
| US6901422B1 (en) | 2001-03-21 | 2005-05-31 | Apple Computer, Inc. | Matrix multiplication in a vector processing system |
| US6870885B2 (en) * | 2001-05-16 | 2005-03-22 | Qualcomm Incorporated | Apparatus and method for decoding and computing a discrete cosine transform using a butterfly processor |
| US6996595B2 (en) * | 2001-05-16 | 2006-02-07 | Qualcomm Incorporated | Apparatus and method for consolidating output data from a plurality of processors |
| TWI220716B (en) * | 2003-05-19 | 2004-09-01 | Ind Tech Res Inst | Method and apparatus of constructing a hardware architecture for transfer functions |
| US7756351B2 (en) * | 2003-12-19 | 2010-07-13 | Stmicroelectronics, Inc. | Low power, high performance transform coprocessor for video compression |
| KR100754167B1 (ko) * | 2004-10-06 | 2007-09-03 | 삼성전자주식회사 | 다양한 크기의 블록에 대한 변환/역변환 방법 및 그 장치 |
| US7730116B2 (en) * | 2004-12-14 | 2010-06-01 | Stmicroelectronics, Inc. | Method and system for fast implementation of an approximation of a discrete cosine transform |
| US8081830B2 (en) * | 2005-01-11 | 2011-12-20 | Hewlett-Packard Development Company, L.P. | Enhancement of digital images |
| WO2006091869A2 (en) | 2005-02-25 | 2006-08-31 | Youfinder Intellectual Property Licensing Limited Liability Company | Automated indexing for distributing event photography |
| US20070009166A1 (en) * | 2005-07-05 | 2007-01-11 | Ju Chi-Cheng | Scalable system for discrete cosine transform and method thereof |
| US8306284B2 (en) | 2005-07-18 | 2012-11-06 | Hysterical Sunset Limited | Manually-assisted automated indexing of images using facial recognition |
| EP2474155A1 (en) | 2009-09-02 | 2012-07-11 | Image Holdings | Method and system for displaying, managing and selling digital images |
| EP2478499A1 (en) | 2009-09-16 | 2012-07-25 | Image Holdings | Method and system of displaying, managing and selling images in an event photography environment |
| US10356440B2 (en) * | 2014-10-01 | 2019-07-16 | Qualcomm Incorporated | Scalable transform hardware architecture with improved transpose buffer |
| US9716852B2 (en) * | 2015-04-03 | 2017-07-25 | Semiconductor Energy Laboratory Co., Ltd. | Broadcast system |
| US10482155B2 (en) * | 2016-12-30 | 2019-11-19 | Intel Corporation | Winograd algorithm on a matrix processing architecture |
| US20230267167A1 (en) * | 2020-07-15 | 2023-08-24 | Nippon Telegraph And Telephone Corporation | Two-dimensional data conversion device, method, and program |
| CN115425988B (zh) * | 2022-07-29 | 2024-02-09 | 北京融为科技有限公司 | 一种高速ldpc全模式列变换方法 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4385363A (en) * | 1978-12-15 | 1983-05-24 | Compression Labs, Inc. | Discrete cosine transformer |
| US4293920A (en) * | 1979-09-04 | 1981-10-06 | Merola Pasquale A | Two-dimensional transform processor |
| GB2091526B (en) * | 1981-01-13 | 1985-10-02 | Harris Corp | Digital map generator and display system |
| US4449194A (en) * | 1981-09-25 | 1984-05-15 | Motorola Inc. | Multiple point, discrete cosine processor |
| US4541012A (en) * | 1982-01-04 | 1985-09-10 | Compression Labs, Inc. | Video bandwidth reduction system employing interframe block differencing and transform domain coding |
| FR2561010B1 (fr) * | 1984-03-09 | 1986-09-12 | Cit Alcatel | Processeur de calcul d'une transformee discrete du cosinus |
-
1987
- 1987-03-24 US US07/029,761 patent/US4791598A/en not_active Expired - Lifetime
- 1987-12-15 JP JP63501201A patent/JPH02501601A/ja active Granted
- 1987-12-15 DE DE3789116T patent/DE3789116T2/de not_active Expired - Fee Related
- 1987-12-15 WO PCT/US1987/003347 patent/WO1988007725A1/en not_active Ceased
-
1988
- 1988-03-23 CA CA000562276A patent/CA1290854C/en not_active Expired - Lifetime
- 1988-10-18 EP EP88900977A patent/EP0353223B1/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH02501601A (ja) | 1990-05-31 |
| EP0353223B1 (en) | 1994-02-16 |
| WO1988007725A1 (en) | 1988-10-06 |
| DE3789116T2 (de) | 1994-10-06 |
| CA1290854C (en) | 1991-10-15 |
| US4791598A (en) | 1988-12-13 |
| EP0353223A1 (en) | 1990-02-07 |
| DE3789116D1 (de) | 1994-03-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4791598A (en) | Two-dimensional discrete cosine transform processor | |
| US5249146A (en) | Dct/idct processor and data processing method | |
| Chan et al. | On the realization of discrete cosine transform using the distributed arithmetic | |
| KR0130772B1 (ko) | 고속디지탈신호처리프로세서 | |
| US20050004963A1 (en) | Parallel adder-based DCT/IDCT design using cyclic convolution | |
| JPS63136167A (ja) | 直交変換プロセッサ | |
| KR950009472A (ko) | 2차원 이산코사인 변환장치, 2차원 역이산코사인 변환장치 및 디지탈 신호처리 장치 | |
| US6282555B1 (en) | Orthogonal transform processor | |
| JPS62269519A (ja) | ディスクリ−トコサイン変換回路 | |
| US5952685A (en) | Signal processing applications of massively parallel charge domain computing devices | |
| US5867414A (en) | Compact pipelined matrix multiplier utilizing encoding and shifting circuit configurations | |
| US6003058A (en) | Apparatus and methods for performing arithimetic operations on vectors and/or matrices | |
| JP3577325B2 (ja) | 離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路 | |
| KR0139699B1 (ko) | 이산 코사인 변환장치 | |
| JPH06149861A (ja) | Dct及び逆dct演算装置並びにその演算方法 | |
| Hsiao et al. | A cost-efficient and fully-pipelinable architecture for DCT/IDCT | |
| KR100444729B1 (ko) | 레딕스-8 단일 경로 지연 전달 구조의 고속 퓨리에 변환장치 및 그 방법 | |
| US5999958A (en) | Device for computing discrete cosine transform and inverse discrete cosine transform | |
| Hsiao et al. | Parallel, pipelined and folded architectures for computation of 1-D and 2-D DCT in image and video codec | |
| JP3970442B2 (ja) | 離散コサイン変換装置及び逆離散コサイン変換装置 | |
| JP3652717B2 (ja) | 離散コサイン高速演算器 | |
| Amira et al. | A novel architecture for Walsh Hadamard transforms using distributed arithmetic principles | |
| KR0154919B1 (ko) | 2차원 역이산 코사인 변환 회로 | |
| JPH05153402A (ja) | 離散コサイン変換器 | |
| Demassieux et al. | Orthogonal transforms |