JPH076161A - 周波数から時間領域への変換方法及び装置 - Google Patents

周波数から時間領域への変換方法及び装置

Info

Publication number
JPH076161A
JPH076161A JP5157003A JP15700393A JPH076161A JP H076161 A JPH076161 A JP H076161A JP 5157003 A JP5157003 A JP 5157003A JP 15700393 A JP15700393 A JP 15700393A JP H076161 A JPH076161 A JP H076161A
Authority
JP
Japan
Prior art keywords
words
word
odd
input
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5157003A
Other languages
English (en)
Other versions
JP2962970B2 (ja
Inventor
Anthony M Jones
アンソニー ジョーンズ マーク
Kevin D Dewar
ダグラス デウォー ケヴィン
Martin W Sotheran
ウィリアム サズラン マーティン
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.)
Pioneer Digital Design Centre Ltd
Original Assignee
Pioneer Digital Design Centre 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 Pioneer Digital Design Centre Ltd filed Critical Pioneer Digital Design Centre Ltd
Publication of JPH076161A publication Critical patent/JPH076161A/ja
Application granted granted Critical
Publication of JP2962970B2 publication Critical patent/JP2962970B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 (修正有) 【目的】逆2次元ディスクリートコサイン変換(IDC
T)の処理能力を向上する。 【構成】二次元IDCTが二つの一次元IDCT操作に
還元され、次に偶数及び奇数ピクセル入力語に対して別
々に変換操作が行われる。共通処理ステップでは、選択
された入力値は直接出力加算器及び減算器に供給され、
他の入力値は一定の桁移動されたコサイン値で乗算され
る。前共通処理ステップでは、最下位の奇数入力語が予
め√2倍され、共通処理ステップにおいて処理される前
に対にして加算される。後共通処理ステップでは、処理
された奇数入力語に対応する中間値が所定の係数倍さ
れ、奇数結果値が形成される。高位及び下位出力は、そ
れぞれ単純に奇数結果値を偶数結果値から減算又はそれ
に加算することにより形成される。入力値は、好ましく
は√2だけ上位側に桁移動される。中間の結果のデータ
語の選択されたビットは、これらのビットを強制的に”
1”又は”0”にすることにより随意調整される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は周波数表現から時間表現
へ信号を変換する方法、及びその変換処理を行う為のデ
ィジタル回路装置に関する。
【0002】
【従来の技術】電気通信の分野における共通の目標は情
報量及び伝送速度の両方を増加させることである。しか
しながら、各通信媒体には伝送速度に限界があり、伝達
信号を処理しなければならない送受信端におけるハード
ウエアについても同様のことが言える。例えば、電信線
は、たとえ電信キーをたたいて入力することよりはタイ
プし郵送された書類を読むことの方が早いとしても、情
報を伝送するための媒体としては一般的に郵便に比較し
てずっと高速である。伝達情報を符号化する方法もまた
情報の伝達速度を制限する。例えば、遠回しの電報は同
一の情報量の簡潔なメッセージに比べて伝達するのに時
間がかかる。従って、伝送すべきデータをできる限り圧
縮し、その後通信の両端部において高速伝送媒体を用い
てできる限り高速に処理することにより最高の送受信速
度が得られ、このことはしばしばシステムのネックが低
減若しくは除去されることを意味する。
【0003】大量のデータの高速伝送を行うことが重要
である応用分野の一つにディジタルテレビジョンの分野
がある。しかしながら、従来のテレビジョンシステムは
テレビジョン画面に示されるライン内の画素(“ピクセ
ル”)の輝度及び色を制御するためにアナログの高周波
及び電気信号を用いており、それに対してディジタルテ
レビジョン伝送システムは画像のディジタル表現を生成
するためにアナログ信号をピクセルの輝度及び色値に対
応する二進“数”に変換する。最近のディジタル符号化
方式及びハードウエア構造は一般的に従来のアナログ伝
送システムに比べてずっと高速の情報伝送速度を達成し
ている。このようにして、ディジタルテレビジョンは従
来のアナログの同等物に比べてずっと高い解像度及びず
っと実物に近い画像を得ることができるのである。
【0004】産業化した国々の多くにおいては今後十年
間でいわゆる高品位テレビジョン(HDTV)システム
を含めてディジタルテレビジョンシステムが従来のアナ
ログテレビジョン技術にとって代わると予想されてい
る。アナログからディジタルへの画像処理の変化は、伝
送及び記憶の両方の面において、アナログオーディオレ
コードから現在あらゆるところにあるコンパクトディス
ク(CD)への変化と同様になると考えられる。
【0005】ディジタル画像技術の一般的有用性を高め
るために、ディジタル画像を符号化し、また復号するた
めの標準化された方式が採用されている。そのような標
準化方式の一つとしてはJPEG規格が有り、静止画に
用いられている。動画については、現在二つの規格−M
PEG及びH.261があり、その両方が動画の連続す
るフレームの各々に対してJPEG類似の処理を行う。
JPEGを繰り返し使用することに対する優位性を得る
ために、MPEG及びH.261はフレーム間の差、即
ち動き、が小であるという良く知られた事実を利用して
おり、後のフレームとの差に基づいて動作する。従っ
て、変化に対応する情報を伝送または記憶する方が一般
に、連続した画面内の各フレームが連続した画面内の最
も近いフレームと全く異なっているかの如くして同等の
静止画情報を伝送または記憶するのに比べてより少ない
時間または空間しか必要としないのである。
【0006】便宜上、全ての現行の規格は画像または映
像をタイルもしくはブロックに分割して動作するもので
あり、各ブロックは幅8ピクセル高さ8ピクセルの画面
部分から構成される。次に、各ピクセルはピクセルの
「成分」として知られる3(またはそれ以上)のディジ
タル数によって表される。有色のピクセルを成分に分割
する方法には種々の異なる方法がある。例えば、一般的
な標記法を用いれば、YUV、YCrb、RGB、等で
ある。従来のJPEG類似の方法は全て各成分に対して
別々に動作する。
【0007】目は画像内の高周波数成分(もしくはエッ
ジ)に対しては感覚が鈍いことが良く知られている。通
常、画面の視聴者が画質の大幅な低下に気がつくことな
しに、最高周波数に関する情報を完全に除去することが
可能である。この、目が情報の欠落を検出すること無し
に、高周波数情報を除去することによって画像内の情報
量を減少させるという効果を発揮するために、空間情報
(例えば輝度の実際の値)を含む8×8ピクセルブロッ
クは何らかの方法で周波数情報を得るために変換されね
ばならない。JPEG、MPEG及びH.261規格は
全て公知のディスクリートコサイン変換を用いて8×8
空間マトリクスを操作し、8×8周波数マトリクスを得
ている。
【0008】上記の如く、入力データは画面の四角の領
域を表している。入力データを周波数表現に変換する際
に、適用される変換は二次元の変換でなければならない
が、そのような二次元変換は効率的に計算するのが容易
でない。公知の二次元ディスクリートコサイン変換(D
CT)及びそれに関連する逆DCT(IDCT)は、し
かしながら、“分離”できるという特性が有る。このこ
とは8×8ピクセルブロックにおける64ピクセルを同
時に操作する代わりに、ブロックを最初に行×行の中間
値に変換し、それを次に列×列に変換して最終的な変換
周波数値を得ることが可能であることを意味している。
【0009】次数Nの一次元DCTは二つのN×Nマト
リクスを掛けることと数学的に等価である。8×8ピク
セルブロックについて必要なマトリクスの掛け算を行う
ためには512回の掛け算及び448回の足し算が必要
であり、8×8ピクセルブロックに完全な2次元DCT
を行うためには1024回の掛け算及び896回の足し
算が必要である。これらの演算操作、及び特に掛け算等
の操作は複雑で低速であり、そのため達成可能な変換速
度は低く制限される。さらにそれらはDCTを行うため
に用いられるシリコンチップ上でかなりの空間を必要と
する 。
【0010】DCT操作は必要とされる計算を少なくす
るために整理し直すことができる。現在二つの主な方法
がDCTに必要とされる計算を減少させるために用いら
れており、その両方が“二進デシメーション(decimati
on)”を用いている。“二進デシメーション”という用
語はN×N変換が2つのN/2×N/2変換と、それを
配置する際のいくらかの計算上の付帯部分とによって行
うことができることを意味している。8×8変換は51
2回の掛け算及び448回の足し算を必要とするけれど
も、4×4変換は64回の掛け算及び48回の足し算の
みでよい。こうして二進デシメーションによって384
回の掛け算及び352回の足し算が不要になり、デシメ
ーションを行う際に導入される付帯部分は通常この計算
処理の減少に比較して目立たない大きさである。
【0011】現在、二進デシメーションのためには二つ
の主な方法が、Byeong Gi Lee("ANew Algorithm to Co
mpute the DCT", IEEE Transactions on Acoustics, Sp
eech and Signal Processing, Vol. Assp 32, No. 6,
p. 1243, December 1984) 及び Wen-Hsiung Chen("A F
ast Computational Algorithm for the DCT", Wen-Hsiu
ng Chen, C. Harrison Smith, S.C. Pralick, IEEE Tra
nsactions on Communications, Vol. Com 25, No. 9,
p. 1004, September 1977)により開発されている。Lee
の方法は逆DCTの定義に本来備わっている対称性を利
用しており、単純なコサイン識別情報を用いることによ
って再帰型二進デシメーションのための方法を定義して
いる。Leeによる解決方法はIDCTに対してのみ適当
である。Chenの方法はマトリクスを対角行列のみに還元
する再帰型マトリクス識別情報を用いている。この方法
は対角行列に対する公知の識別情報を用いてDCTの容
易な二進デシメーションを与えるものである。
【0012】Lee及びChenの方法の重大な不利益は、い
つ掛け算及び足し算を行わなければならないかという点
に関してバランスがとれていないことである。本質的
に、これらの方法の両方において多数の足し算の後に多
数の掛け算、またはその逆を行う必要がある。ハードウ
エアにおいてLeeまたはChenの方法を処理する場合には
加算器及び乗算器を並列に動作させることは不可能で
る。ハードウエアの最高の利用状態はすべての加算器及
び乗算器が全ての時間に使用される時であるから、この
ことはそれらの方法の速度及び効率を低下させる。
【0013】DCT及びIDCT操作を行うためのかか
る公知の方法の更に他の不利益は、いわゆる正規化係数
を扱うことが通常困難であり、公知のアーキテクチャで
は全ての乗算器が使用されている時に余分の掛け算を追
加することが必要になる。ビデオデータに前方及び逆D
CTを適用するための、ある公知の方法はソフトウエア
デザイナーにとって計算を実行しなければならない半導
体装置のレイアウトを心配しなくて良く、非常に単純か
つ高度に効率的である。しかしながら、かかる方法は、
しばしば極度に低速であり、ディジタルビデオに必要と
される伝送速度で満足に動作するには半導体アーキテク
チャ及びハードウエアの相互の接続が極度に複雑にな
る。
【0014】現在あるビデオデータのDCT及びIDC
T操作を行う方法及びハードウエア構造の更に別の欠点
は数値の浮動小数点の内部表現が必要とされることであ
る。この不利益について説明すると、まず、人が、小数
点(もし有れば)の右側にある桁を含めて、3桁の数の
みしか扱うことができない計算機を使用すると仮定す
る。更に計算器が数12.3及び及び4.56を加算す
ると仮定する。(小数点がこれらの2つの数の数字の位
置に対して固定していないこと、換言すれば、小数点は
“浮動”可能であることに注意)この計算器は解16.
86を完全に表すのに必要な4つの数字を記憶すること
はできないため、計算器は最も右にある数字“6”を省
略することにより解を切り捨てて16.8とするか、あ
るいは解を最も近い3桁の近似値16.9にまるめるハ
ードウエアを設けて解を3桁の数に還元しなければなら
ない。
【0015】この非常に簡単な例が示すように、もし浮
動小数点の演算が想定または必要とされると、正確さを
失うか、答をまるめる際の誤差を最小にする非常に複雑
で場所をとる回路を含めるかのいずれかを受け入れなけ
ればならない。しかしながら、効率的な丸め回路を用い
たとしても丸めまたは切り捨て誤差の蓄積及び伝幡によ
りビデオ信号に容認できない歪が生じるかも知れない。
一般に浮動小数点の丸め及び切り捨て誤差は加算よりも
掛け算に対してより大であるため、この問題はビデオ信
号を処理するための方法が幾つかの掛け算を必要とする
場合により大きくなる。
【0016】ずっと効率的なDCT/IDCT処理方法
及びハードウエア構造を使用すれば、その方法において
用いられる数を固定小数点を用い、各数の完全なダイナ
ミックレンジが使用可能であるように表すことが保証さ
れる。そのようなシステムにおいては、切り捨て及び丸
め誤差は除去されるかあるいは少なくとも大きく減少さ
れる。
【0017】上記の例において、もしハードウエアが4
桁の数字を扱うことができたとすると、99.99より
大の数は全く必要が無くなり、全ての数が2番目及び3
番目の数の間に小数点を持つことになり、その結果小数
点の存在は計算に全く影響しなくなり、演算はすべての
数が整数であるかの如くして実行することが可能にな
る。解1230+0456=1686は、“1686”
が“6”と“8”との間に小数点を持たねばならないこ
とは誰でも常に知ることができるため12.30+4.
56=16.86とする場合と同じく明らかである。或
いは、もし数(定数またはそれ以外)が同一の範囲内に
入るように選択的に桁移動または調整されたとすると、
その範囲の各数はまた一組の整数として正確かつ曖昧さ
無く表すことができる。
【0018】必要とされる乗算器の数を減らす一つの方
法は単に異なる信号源からの入力データを受け入れるこ
とが可能な一つの乗算器を用いることである。換言すれ
ば、あるアーキテクチャにおいては、単一の乗算器を用
いてDCTまたはIDCTの計算の異なるステップにお
いて必要とされる掛け算を行っているのである。そのよ
うな“クロスバースイッチング”は必要とされる乗算器
の数を減少させるかも知れないけれども、その代わりに
乗算器への入力を選択し、他の入力を乗算器から分離
し、選択された信号源から適切な信号を切り替えて乗算
器の入力に供給する大規模で複雑なマルチプレクサ構造
を含めなければならないことを意味している。また、共
用された乗算器からの多数の出力を切り替えて適切な後
段の回路に供給するために追加の大規模マルチプレクサ
が必要とされる。従って、クロスバースイッチングもし
くはマルチプレクシングは複雑で、一般的に低速であり
(余分の記憶装置が必要とされるため)、最終的な半導
体として実現する段階でコストが大になる領域である。
【0019】“クロスバースイッチング”を含む現行の
アーキテクチャの更に他の欠点はそれらが汎用の乗算器
を必要とすることである。換言すれば, 現行のシステム
は両方の入力が可変である乗算器を必要とするのであ
る。良く知られているように、ディジタル乗算器を使用
する場合は一般に加算器及び桁送り器の列を、乗算器の
語の現在のビットが“1”であるならば、被乗数の値が
部分的な結果に加算されるけれども現在のビットが“ゼ
ロ”であるならば加算されない。汎用乗算器は全てのビ
ットが“1”である場合にも対処しなければならないた
め、加算器の列を乗算語の各ビットに対して設ける必要
がある。
【0020】一例として、データ語が8ビット幅であ
り、一つの入力を5倍したいと考えたと仮定すると、数
5の8ビット表現は0000101である。換言すれ
ば、ディジタルの5の乗算は入力値を左に2桁移動し、
(4の掛け算に対応する)その後、その桁移動しない値
に加算するだけで良い。係数の他の6桁はビット値が
“0”であり、それら桁移動や加算のステップを必要と
しない。
【0021】固定係数の乗算器即ち、この場合、5によ
る掛け算のみが可能な乗算器は、掛け算を行うために一
つの桁送り器と一つの加算器のみが必要である(桁上げ
ビットを処理するのに必要な回路は除く)。汎用乗算器
は、逆に、その内の6つは全く使用されないにも拘らず
8桁の各々に桁送り器及び加算器が必要である。上記の
例が示すように、固定の係数を用いることにより設計者
が係数の内のゼロに対応する加算器の列を除くことが可
能になり、シリコンチップの領域を節約し、乗算器を簡
略化することが可能である。
【0022】
【発明が解決しようとする課題】本発明は効率的であり
かつ半導体装置における占有面積を増加させることなく
かく演算操作が配置され、高い処理能力を実現する二次
元DCT/IDCT方法及び装置を提供することが目的
である。
【0023】
【課題を解決するための手段及びその作用】本発明の種
々の局面については添付の請求項に例示されている。本
発明の更に他の局面によるIDCT方法においては、N
×Nピクセルブロックの各N−行及びN−列のための一
次元IDCTは選択的に除去され、一次元IDCTがN
/2偶数番号ピクセル入力語及びN/2奇数番号ピクセ
ル入力語に対して別々に実行される。
【0024】好適な実施例において、JPEG規格に基
づき、Nは8に決められている。二次元IDCTの結果
は二つの一次元IDCT操作(中間的なデータの再整理
−位置変更−を伴う)を連続して行うことによって得ら
れる。共通処理ステップにおいては、N=8に対して、
入力値の最初の対が掛け算を行う必要なしに出力加算器
及び減算器に供給される。入力値の第2の対の各々は二
つの桁移動されたコサイン値に対応する二つの係数値の
各々によって乗算される。共通処理ステップにおいては
他に掛け算は必要でなく、一回の減算及び一回の加算の
みが必要である。第2の対が入力値の第1の対に対して
各対が対応するように加算または差が求められ、偶数ま
たは奇数の結果の値が形成される。
【0025】前共通処理ステージにおいて、最下位の奇
数入力語は前もって√2倍され、奇数入力語は共通処理
ブロックにおいて処理される前に対をなして加算され
る。後共通処理ステージにおいては処理された奇数入力
語に対応する中間値が所定の一定の係数に乗算されて奇
数の結果値が形成される。偶数及び奇数の結果値の計算
の後、N/2上位出力が偶数の結果値からの奇数の結果
値の減算により形成され、N/2下位出力が奇数の結果
値と偶数の結果値との単純な加算によって形成される。
【0026】DCT(ビデオ処理システムの伝送側端部
における変換)及びIDCT(受信側端部における変換
であり、発明の種々の局面のうちの一つ以上を含む)の
両方について、処理すべき値は好ましくは√2だけ意図
的に上位側に桁移動される。DCT/IDCT操作が実
行された後に、その結果の値は単純な二進右シフトによ
って2だけ下位方向に桁移動される。このよく考えられ
たバランスした上位方向への桁移動により従来の方法に
おいて必要とされた掛け算のうちの幾つかが除かれる。
【0027】本発明の方法の他の局面によれば、一定の
係数または中間の結果のデータ語の選ばれたビットは丸
められ或いは選ばれたビットの所定の設定により“1”
か“0”の何れかに調整される。ピクセルデータの二次
元変換は第1の一次元IDCT変換処理ステップからの
出力値に対する第2の同一の一次元操作により実行され
る。
【0028】本発明の更に他の局面によるIDCTシス
テムは前共通処理回路、共通処理回路、及び後共通処理
回路を含み、前共通、共通、後共通処理の計算が入力デ
ータ語に対して行われる。監視用コントローラによっ
て、種々のシステムラッチのロードを制御する制御信号
と、好ましくは、N/2偶数及びN/2奇数入力語の前
共通ブロックの入力ラッチへの供給を時間的に直列に多
重化するための制御信号と、偶数及び奇数の結果の値を
加算し低位出力信号を形成してラッチすることと、奇数
の結果の値を偶数の結果の値から減算して高位出力信号
を形成してラッチすることを管理する制御信号と、内部
マルチプレクサを逐次制御する制御信号とが生成され
る。
【0029】奇数及び偶数入力語は好ましくは同一の処
理ブロックにおいて別々の経路で処理される。入力デー
タ語は好ましくは(必ずではなく)厳密に昇順または降
順ではないけれども、データ経路に対する効率的な“バ
タフライ”構造を形成することを可能にする順序でラッ
チされる。少なくとも共通処理回路は純粋な論理回路と
して構成することができ、その正常な動作のためにクロ
ック又は制御信号を必要としないが、他の処理ブロック
についても個々の応用状態に依存して同様のことが言え
る。
【0030】汎用乗算器(2つの可変入力を有する)は
必要とされず、その代わりに好ましい実施例全体にわた
って一定係数の乗算器が含まれる。更に、好ましい実施
例は全ての必要な算術演算を行うために固定小数点整数
演算素子を含む。発明のいくつかの実施例は以下の特徴
の一つ以上を有するビデオデータのIDCT変換を行う
方法及びシステムを提供するように設計されていること
が明らかになる。 (1)贅沢な算術演算を常に使用すること。 (2)IDCTを実行するために必要とされるシリコン
領域を減少させるために、記憶素子(ラッチ等)は、そ
の数が好ましくはアーキテクチャの効率的なパイプライ
ン処理のために必要とされる数より多くはない程度に小
数であり、余分の記憶素子を必要とする汎用乗算器の代
わりに小数の一定係数乗算器に接続される。 (3)個々の算術演算が複雑なデザインを用いる必要が
ないように演算操作が配置されていること。例えば、も
し公知の「リップル加算器」が使用されていれば、これ
らは解を「分解し」(下を参照)または生成するのに十
分な時間を合わせる。もしデータ経路においてかかるリ
ップル加算器に先行する他の素子が加算器の動作が終了
するのを待っている間に何も動作しない状態になるよう
に演算操作が配置されているとすると、この遅れを避け
るように操作を再配置することによりより高い処理能力
(スループット)及び効率が得られる。 (4)自然な順序で結果を生成することができること。 (5)贅沢で複雑なクロスバースイッチングが必要でな
いこと。 (6)アーキテクチャが非常に高速の動作を支持するこ
とが可能であること。 (7)伝送ハードウエアを通したデータの流れを制御す
る回路がその面積を小さくできること。
【0031】
【実施例】発明のより良い理解を促し、発明が実際にど
の様に実体化されるかを示すために、以下例として、添
付図面を参照して説明する。発明の理論的背景 種々の部品の目的、機能及び本発明によるIDCTシス
テムにおいて用いられた信号処理方法の利点を理解する
ためには、システムの理論的基礎を理解することが役立
つ。
【0032】2次元IDCTの分割可能性 ピクセルのN×Nブロックのため二次元順方向ディスク
リートコサイン変換(DCT)の数学的定義は以下の通
りであり、Y(j,k) はピクセル絶対値 X(m,n)に対応する
ピクセル周波数値である。
【0033】
【数1】
【0034】項2/Nは変換の直流レベルを支配し、係
数 c(j)、c(k) は正規化因子として知られている。対応
する逆ディスクリートコサイン変換、即ちIDCT、に
対する表現は以下の通りである。
【0035】
【数2】
【0036】順方向DCTは空間値(輝度などの特性を
直接表すか、あるいはMPEG規格などにおけるように
差を表す)をその周波数表現に変換する。逆DCTはそ
の名前が示すように、他の「方向」即ち、IDCTは周
波数値を逆に空間値に戻す方向に動作する。式E2にお
いて、コサイン関数は各々が加算指数の一つにのみ依存
する。従って、式E2は以下のように書き直すことがで
きる。
【0037】
【数3】
【0038】これは、k及びnに依存するすべての項の
積に対して最初の一次元IDCTを行うことと等価であ
り、続けて、直接の標準標準的なデータ転置の後に第1
のIDCT操作の出力を入力とする第2の一次元IDC
Tが行われる。一次元IDCTの定義 一次元のN点のIDCT(Nは偶数番号)は以下の式に
より表される。
【0039】
【数4】
【0040】更に、y(n)は逆変換関数のN入力 であ
り、x(k)はその出力である。二次元の場合と同じよう
に、DCTのための式は加算記号以下で同一の構造を有
しているけれども、加算記号の外側に正規化定数が設け
られ、x及びyベクトルが式の中で位置が入れ替わって
いる。一次元IDCTの分解 上に示した如く、二次元IDCTは転置操作により分離
された一連の一次元IDCT操作をもちいることによっ
て計算することができる。一実施例によれば、これらの
一次元操作の各々は順次部分操作に区切られ、次にそれ
らは必要な半導体装置の大きさ及び複雑さを更に減少さ
せるために利用される。
【0041】係数の正規化 前述した如く、IDCTハードウエアの重要な設計目標
は回路に含めなければならない乗算器の必要数を減少さ
せることである。従ってDCTまたはIDCTを計算す
る方法の大部分は掛け算の必要回数を減少させることを
意図したものである。この実施例によれば、しかしなが
ら、全ての入力値は意図的に√2だけ上位側に桁移動さ
れている。換言すれば、この実施例による方法を用いる
とき、IDCTの式E4の右側部分は意図的に√2倍さ
れている。
【0042】この実施例によれば、2回の一次元IDC
T操作が順次実行されて(中間の転置を有する)最終的
な二次元IDCTの結果が得られる。これらの一次元操
作の各々は、同一の√2による掛け算を含む。中間の転
置は桁移動を伴わないため、2回の√2による連続した
掛け算の結果は最終的な二次元の結果は√2・√2=2
だけ上位方向に桁移動されることになる。桁移動されな
い値を求めるためには、回路は単に2でわり算するだけ
でよく、この操作は値がすべてディジタルで表現されて
いるため、データの単純な右シフトにより容易に達成で
きる。
【0043】以下の記述でより明確になる如く、各一次
元IDCT処理段階における上位方向の√2の桁移動及
び最終的な下位方向への2の桁移動はすべてシステムの
ハードウエア内の加算器、乗算器、及び桁送り器により
達成される。そのため本システムが接続され得る他の装
置に対して桁移動された入力が本システムにより要求さ
れることは無い。これにより、システムはJPEGまた
はMPEG規格により動作する従来の装置と互換性をも
つことができる。
【0044】このように、この実施例による正規化によ
って、少なくとも二つの√2の掛け算の処理のためにI
DCT半導体アーキテクチャ内にハードウエア乗算器を
設ける必要をなくすことができる。以下に詳述する如
く、各一次元操作における入力データに対する追加の単
一の掛け算ステップ(√2による上位方向への桁移動)
は、従来の方法を用いた場合に必要とされる更に他の掛
け算ステップを除去することにつながる。
【0045】一次元IDCTの高位及び低位出力への分
ここで、式E4はN/2低位出力(k=0,1,...
N/2−1)及びN/2高位出力(k=N/2,N/2
+1,...N)について別々に評価可能である。N=
8に対して、これは最初に入力を変換して y(O)、y
(1)、y(2) 及び y(3)を計算し、次に入力を変換して y
(4)、y(5)、y(6) 及び y(7) を計算することができるこ
とを意味している。
【0046】高位出力(k=N/2+1,...N)に
対して変数k’=(N−1−k)を導入すると、k’は
kが(N/2+1)からNに変化するときに(N/2
−1)から0に変化する。N=8に対しては、これはk
={4,5,6,7}に対してk’={3,2,1,
0}となることを意味している。次に、式E4が以下の
二つの部分式E5(加算の間隔以外はE4と同一であ
る)及びE6に分離できることを示す。 低位出力:
【0047】
【数5】
【0048】高位出力:
【0049】
【数6】
【0050】ただし k = {N, ..., (N/2+1)} k'→{0,
1, ..., (N/2ー1)} (すべての高位の項においてc(n) = 1 であるため c(n)
はこの式に含めていない。)E5及びE6は項 (−
1)nが加算記号以下の積の符号を上側のN/2出力値
に対する奇数番号入力(nが奇数)について変化させる
こと及び y(0) 項が c(0)=1/√2により乗算される
ことを除いて加算記号以下が同一の構造であることに注
意されたい。
【0051】一次元IDCTの偶数及び奇数入力への分
一次元IDCTの式E4における単一の和もまた二つの
和、即ち偶数番号入力(N=8に対して y(0), y(2), y
(4) 及び y(6))のための一つの和及び奇数番号入力
(N=8に対して y(1), y(3), y(5) 及び y(7))のた
めの一つの和に分離できることが注目される。g(k)が偶
数番号入力のための部分和を表し、h(k)が奇数番号入力
のための部分和を表すものとする。
【0052】これにより
【0053】
【数7】
【0054】ただし k = {0, 1, ..., (N/2−1)}
【0055】
【数8】
【0056】ただし k = {0, 1, ..., (N/2−1)} N=8に対して、式E7及びE8の両方における和がn
={0,1,2,3}に引き継がれる。ここでよく知ら
れたコサインの恒等関数を思い出すと、 2・cosA・cosB = cos(A+B) + cos(A-B)であり、A = π
(2k+1)/2N 及び B = π(2k+1)(2n+1)/2N とする。その
結果式E8の両辺に2・cos A = 1/(2・cos(π(2k+1)/2
N)) = Ck を乗算することができる。
【0057】Ckが加算指数nに依存していないため、
加算記号内で移動することができることが注目される。
次に定義に従って y(-1)=0 とすると、入力 y(7) に対
するコサイン関数はゼロに等しいことが注目される。h
(k) のため式はその結果以下の形式に書き換えることが
できる。
【0058】
【数9】
【0059】ここで k = {0, 1, ..., (N/2−1)} “入力” [y(2n+1) + y(2n-1)]は h(k)を計算する際に
奇数入力項は対にされ、N/2 “対の入力” p(n) =
[y(2n+1) + y(2n-1)]を形成することを示唆しているこ
とが注目される。N=8に対して p(n) の値は以下の通
りである。
【0060】n p(n) 0 y(-1)+y(1)=y(1) (定義により y(-1)=0) 1 y(1)+y(3) 2 y(3)+y(5) 3 y(5)+y(7) h(k) のための式E9は次に以下の如く表される。
【0061】
【数10】
【0062】ただし k = {0, 1, ..., (N/2−1)} ここで、加算記号の下のコサイン項は g(k) 及び h(k)
の両方に対して同一であり、両者は一次元IDCTの構
造(式E5と比較して)を有することが注目される。奇
数k項即ち、h(k) のためのIDCTの結果には、しか
しながら、係数Ck = 1/{2・cos[π(2k+1)/2N]} が乗算
される。換言すれば、g(k) は偶数入力y(2n) に対して
動作するN/2点IDCTであり、h(k)は [y(2n+1) +
y(2n-1)]に対して動作するN/2点IDCT、ただし定
義により y(-1)= 0 、である。
【0063】ここで以下の識別子を導入する。 yn = y(n) c1 = cos(π/8) c2 = cos(2π/8) = cos(π/4) = 1/√2 c3 = cos(3π/8) d1 = 1/[2・cos(π/16)] d3 = 1/[2・cos(3π/16)] d5 = 1/[2・cos(5π/16)] d7 = 1/[2・cos(7π/16)] さらに以下の桁移動コサイン係数を導入する。
【0064】c1s = √2・cos(π/8) c3s = √2・cos(3π/8) 公知のコサイン関数の均等性(cos(-φ) = cos(φ))及
び周期性(cos(π-φ)= -cos(φ))を用いると、式E7
及びE8はN=8に対して拡張され、以下の結果が得ら
れる(c(0)は 1/√2 である) g(0) = 1/√2・y0 + y2c1 + y4c2 + y6c3 = 1/√2・(y0 + y2・c1s + y4 + y6・c3s) g(1) = 1/√2・y0 + y2c3 - y4c2 - y6c1 = 1/√2・(y0 + y2・c3s - y4 - y6・c1s) g(2) = 1/√2・y0 - y2c2 - y4c2 + y6c1 = 1/√2・(y0 - y2・c3s - y4 + y6・c1s) g(3) = 1/√2・y0 - y2c1 + y4c2 - y6c3 = 1/√2・(y0 - y2・c1s + y4 - y6・c3s) 及び h(0) = d1・{y1 + (y1+y3)c1 + (y3+y5)c2 + (y5+y7)c
3} = d1/√2・{√2・y1 + (y1+y3)・c1s + (y3+y5) + (y5
+y7)・c3s} h(1) = d3・{y1 + (y1+y3)c3 - (y3+y5)c2 - (y5+y7)c
1} = d3/√2・{√2・y1 + (y1+y3)・c3s - (y3+y5) - (y5
+y7)・c1s} h(2) = d5・{y1 - (y1+y3)c3 - (y3+y5)c2 + (y5+y7)c
1} = d5/√2・{√2・y1 - (y1+y3)・c3s - (y3+y5) + (y5
+y7)・c1s} h(3)= d7・{y1 - (y1+y3)c1 + (y3+y5)c2 - (y5+y7)c
3} = d7/√2・{√2・y1 - (y1+y3)・c1s + (y3+y5) - (y5
+y7)・c3s} ここで、この実施例によれば、DCT及びIDCT操作
の両方に対して全ての値が√2だけ上位方向に桁移動さ
れていることを思い出されたい。言い替えれば、この実
施例によれば h(k) 及び g(k) の両方にはこの桁移動係
数が乗算される。従って g(k) 及び h(k) の式は以下の
如くなる。
【0065】(E11): g(0) = y0 + y2・c1s + y4 + y6・c3s g(1) = y0 + y2・c3s - y4 - y6・c1s g(2) = y0 - y2・c3s - y4 + y6・c1s g(3)= y0 - y2・c1s + y4 - y6・c3s 及び (E12): h(0) = d1{√2・y1 + (y1+y3)・c1s + (y3+y5) + (y5+
y7)・c3s} h(1) = d3{√2・y1 + (y1+y3)・c3s - (y3+y5) - (y5+
y7)・c1s} h(2) = d5{√2・y1 - (y1+y3)・c3s - (y3+y5) + (y5+
y7)・c1s} h(3)= d7{√2・y1 - (y1+y3)・c1s + (y3+y5) - (y5+
y7)・c3s} c2 = cos(π/4)= 1/√2 であるから、 √2による掛け
算により「桁移動された」c2の値は1になることが分
かる。式(ビデオ絶対値及び周波数値の値の桁移動に対
応する)をこの実施例に従って桁移動することにより、
c2により乗算する必要を全く無くすることが可能であ
る。更に、二つのコサイン項のみを評価すれば良く、c
1s及びc3sは両方とも一定係数であり、汎用乗算器
は必要なくなる。これによって、IDCT操作を半導体
により実行する場合に、対応するハードウエア乗算器を
用いる必要がなくなる。
【0066】g(k) 及び h(k) の構造上の類似性はこれ
らの式のセットをマトリクス形式で表わすことによって
示すことができる。Cを以下の様に定義される4×4コ
サイン係数マトリクスであるとする。
【0067】
【数11】
【0068】次に
【0069】
【数12】
【0070】そして
【0071】
【数13】
【0072】ただし D = diag[d1, d3, d5, d7] は4×
4マトリクスであって、d1,d3,d5及びd7は対
角線上にあり、全ての他の要素はゼロに等しい。E14
及びE15が示す如く、偶数番号入力を操作して g(k)
を得る操作及び奇数番号入力を操作して h(k) を得る操
作の両者はコサイン係数マトリクスCによる掛け算の共
通ステップを有する。h(k) を得るためには、入力は最
初に対として加算されねばならず(定義により y(-1) =
0)、y(1)には√2が掛け算されねばならず、Cによる
掛け算の結果にはDが掛け算されねばならない。
【0073】上述の式はまた、N点の一次元IDCT
(E4参照)は二つのN/2点一次元IDCTに分割す
ることができ、その各々はN/2奇数(グループ化され
た)及びN/2偶数入力値の共通コア操作(加算記号以
下)を含むことを示している。上記の式はこの実施例に
おいて実行されるIDCTのための以下の様な単純な構
造を生成する。
【0074】低位出力 (N=8に対して、出力k=
{0,1,2,3}): (E16): y(k) = g(k) + h(k) 高位出力 (N=8に対して、出力k={4,5,6,
7}): (E17): y(k) = y(N-1-k') = g(k') - h(k') g(k) は偶数番号入力値に対して直接作用して直接出力
値を生成するけれども、h(k')は入力値のグループ化及
び値d1,d3,d5及びd7による掛け算を含むこと
が注目される。
【0075】通常の場合と同じく、IDCT回路の設計
者は大きさ対速度、多数の素子を実装することに対して
相互接続の複雑さを減少させること等の多くの妥協点
(トレードオフ)に直面する。例えば、多くの場合にシ
リコンチップ上により多くの、或いはより複雑な、素子
を含めることにより計算の速度を高めることが可能であ
るが、このことは明らかに装置を大きくし複雑化する。
また、IDCTチップ上で利用可能な面積あるいは望ま
しい面積が洗練された複雑な回路デザイン例えば“ロッ
クアヘッド”加算器等の使用を制限もしくは除外するこ
とになるかもしれない。
【0076】精度の基準全ての計算の精度が無限大であ
り、その結果部品のスペース及び計算時間に制限が無い
と仮定すると、DCT変換された画像データに対してI
DCTを行うことによって再現された画像は元の画像を
完全に再生することになる。勿論、そのような完全性は
現行の技術を用いて得られるものではない。
【0077】しかしながら、いくらかの標準化を達成す
るために、IDCTシステムは現在国際電信電話諮問委
員会(CCITT)により「CCITT勧告H.261
の付録1−逆変換精度規格」によって提案されている標
準化された方法に従って計測されている。このテストは
ランダム整数を含む8×8ブロックの10,000個の組を生
成することを規定している。これらのブロックは次に予
め定義された精度を用いてDCT及びIDCT変換され
(予め定義された丸め処理、クリッピング処理、及び算
術演算をその前または後に行う)、8×8「基準」ID
CT出力データの10,000個の組を生成する。
【0078】IDCTの処理系をテストする際に、CC
ITTテストブロックが入力として用いられる。実際の
IDCT変換された出力は次に統計的に公知の“基準”
IDCT出力データと比較される。ピーク、平均値、不
偏分散及びブロック全体及び個々の値の平均誤差の平均
値に関しての各最大値がIDCTに対して規定されてい
る。更にIDCTは、もし対応する入力ブロックが全て
ゼロを含んでいれば、全てゼロ以外を出力しなければな
らず、全ての入力データの符号が変化した場合にもID
CTは同一の規格を満たさねばならない。IDCTの処
理系はこれらのテストが実行される際にそれらの最大誤
差が規定の最大値を越えない場合にのみ許容し得る精度
を持つと言われている。
【0079】他の公知の規格は米国電気電子学会(「I
EEE」)による「IEEE8×8ディスクリートコサ
イン変換の処理系のための標準仕様案」、P1180/D2, 19
90年7月18日におけるもの; 「8×8逆ディスクリ
ートコサイン変換」の付録、ISO委員会 CD 11172−2
草案におけるもの等がある。これらの規格は基本的には
上述のCCITT規格と同一である。
【0080】ハードウエア処理系 図1は一実施例(ハードウエア構造は以下に示して説明
した如くより簡潔かつ効率的に作られているけれども)
のIDCT処理方法におけるデータの流れを示す単純化
したブロック図である。図1において、Y[0] 及び Y[4]
等のシステムへの入力、並びに X[3] 及び X[6] など
のシステムからの出力は単一の線路上で伝送されるもの
として示されている。図1におけるこの単一に表示され
た線路の各々は、各入力及び出力が対応する数ビット幅
のデータ語を好ましくは並列に伝送するデータバスの形
をとったいくつかの導体を表していることが理解される
べきである。
【0081】図1において、大きな開いた円は2入力一
出力の加算器を表し、加算器の入力の接続点における小
さな円は対応する入力語の補数が用いられることを示し
ている。かかる相補的入力を伴う加算器は非相補的入力
から補数をとった入力を減算する。例えば、上側左の加
算器からの出力T0が Y[0] + Y[4] に等しくなるのに
対し(即ちT0=Y0+Y4)、出力T1の加算器は値
Y0+(−)・Y4=Y0−Y4を生成する。従って
単一の相補的入力を有する加算器は成分の差を取ると言
うことができる。
【0082】図1においてまた、一定係数乗算器はデー
タ経路内の塗りつぶした三角形で表される。例えば、
入力Y1はB0を生成する加算器に入力される前に √
2乗算器を通過する。その結果、中間値T3はT3=Y
2・T3=Y2・c1s+Y6・c3sとなり中間値B
2はB2=p1・c3s−p3・c1s=(Y1+Y
3)・c3s−(Y5+Y7)・c1s となる。図に示
された加算、減算及び掛け算を行うことにより、図示さ
れた構造は g(0) から g(3) 及び h(0) から h(3)に対
して式E11及びE12を実行することが分かる。
【0083】図1は実施例の重要な利点を示している。
図1が示す如く、この構造は4つの主要な領域に分けら
れている。即ち対となった入力 p(k) を形成し入力 Y
(1) に√2を乗算する前共通ブロックPRECと、定数
d1、d3、d5、d7(式E12参照)のための4つ
の乗算器を含む第1の後共通ブロックPOSTC1と、
低位出力のためにg0からg3項及びh0からh3項を
合計し、高位出力のためにg0からg3項及びh0から
h3項の差を形成する(式E16及びE17参照)第2
の後共通ブロックPOSTC2と、共通ブロックCBL
K(以下に説明する)である。
【0084】式E14及びE15が示す様に、実施例に
従って入力信号を操作することにより、偶数及び奇数入
力信号の両方を処理することはマトリクスCで表される
共通の処理を含むことになる。このことは図1から明か
であり、共通ブロックCBLKは偶数及び奇数データ経
路の両方に含まれている。この実施例による処理回路に
おいて、奇数及び偶数番号入力に対して行われる共通操
作は図1に示された重複した構造よりはむしろ単一の構
造により実行される。
【0085】操作の方法及びこの実施例で用いられた幾
つかのディジタル構造の利点を理解するためには、“桁
上げ語”はどのようなものであるか、またそれがどのよ
うにして生成されるかについて理解することが有効であ
る。最も一般的な二つの算術演算即ち足し算及び掛け算
を行う際に、ディジタル装置は“桁上げビット”の問題
を処理する必要がある。単純な例として、二つの二進数
の足し算は“1”の桁上げを伴う1+1=0であり、正
しい結果“10”(十進数“2”の二進表現)を得るた
めにかかる桁上げビットは次の高位ビットに加算されね
ばならない。換言すれば、01+01=00(桁上げ無
しの“合計”)+10(桁上げ語)であり、“合計”を
“桁上げ語”に加算することにより正しい答00+10
=10が得られる。
【0086】十進数の例として、数 “436”と “8
25”を加算する必要があると仮定する。二つの数を手
で足し算する場合の一般的な過程は通常以下の如くであ
る。 1)1の位:“6”足す“5”は“1”、及び “十
の” 位置への“1”の桁上げ。 合計:1、桁上げ入力:0、桁上げ出力:1 2)十の位:“3”足す“2”は“5”、これに前のス
テップから桁上げされた“1”を足すと“6”となり、
桁上げは無し。 合計:5、桁上げ入力:1、桁上げ出力:0 3)百の位:“4”足す“8”は“2”、及び千の位へ
の1の桁上げ、ただし前のステップから加算する桁上げ
は無し。 合計:2、桁上げ入力:0、桁上げ出力:1 4)千の位:“0”足す“0”は“0”、これに百の位
から桁上げされた“1”を足すと“1”となる。 合計:0、桁上げ入力:1、桁上げ出力:0 答 “1261”はこのように各桁への桁上げ入力が隣
接する下位位置の桁上げ出力であるときに、各桁への桁
上げ入力の合計を同一の桁のための合計に加算すること
により形成される。(このことは最下位の桁への桁上げ
入力が常に“0”であることを意味していることが注目
される。)問題は、勿論、百の位の桁の“4”及び
“8”を加算するのを10の位の桁からの桁上げ入力が
あるかどうかが分かるまで待たねばならないことであ
る。以上は基本的にこの方法で動作する“リプル(波
及)加算器”を示している。リプル加算器はこのように
して余分の記憶素子を用いる必要無しに“最終的な”答
を得るものであるが、他の方法に比べて低速である。
【0087】そのような他の方法の一つとしては各桁へ
の二つの数の合計が部分合計または結果の語(この例に
おいて、0251)及び異なる語の桁上げ値(ここでは
1010)を記憶することにより形成される、“桁上げ
保留”加算として知られたものが有る。全体の答は次に
合計と桁上げ語を以降の加算ステップで“分解”するこ
とにより得られる。こうして0251+1010=12
61が得られる。桁上げが加算されるべきかどうか決ま
るまで待つ必要無しに各桁のための加算を同時に行うこ
とができ、桁上げ語はそれが保持されている間はいつで
も部分的結果に加算することができるのである。
【0088】分解操作は通常計算の各段階で必要とされ
る時間の最大の部分を必要とするため、これらの操作を
高速化することは、変換の大きさの比較的小さな増加を
必要とするだけであり全体の演算速度に対して顕著な効
果がある。このように桁上げ保留乗算器は通常、各行に
リプル加算器を用いる構成より高速であるけれども、乗
算器内の各加算のための桁上げ語を記憶するか次の加算
のために渡さねばならないため、その時間的な利益は複
雑さが増すという犠牲があってはじめて得られるのであ
る。
【0089】更に、最終的な掛け算の結果を得るために
は、最終的な部分和及び最終的な桁上げ語が通常リプル
加算器内の加算により分解されねばならない。しかしな
がら、一つのリプル加算器のみが必要とされ、時間の節
約は実行しなければならない掛け算の大きさに比例する
ことが注目される。更に、桁上げ語は他の加算すべき数
と同じように扱われ、最終的な掛け算の答が必要になる
前のある時点で加算される限り、実際の加算は遅らすこ
とができることに注目すべきである。
【0090】この実施例において、分解を遅らせるこの
ような可能性は設計を単純化しIDCT回路の処理能力
を増加させるために用いられている。また、予め選択さ
れた桁上げ語の一定のビットは、随意、標準のテストデ
ータセットに対する発明の試験的動作の統計的分析に基
づいてIDCTの結果の期待された精度を高めるため
に、分解の前に意図的に所定の値にされる。
【0091】図2は好ましい構造を示すブロック図であ
る。この発明の好ましい実施例において、偶数及び奇数
番号入力は時間的に多重化され、共通ブロックCBLK
において別々に処理される。この入力はどちらを先に処
理しても良い。図2において、奇数番号入力Y1、Y
3、Y5、Y7が計算回路を最初に通過し、次に偶数番
号入力Y0、Y2、Y4、Y6が続くことを示すために
表記 Y[1,0], Y[5,4], Y[3,2] 及び Y[7,6]が用いられ
る。実施例においてこの順序は必須ではないが、以下に
説明した如く、一定の下流側の算術操作が奇数番号入力
に対してのみ実行され、奇数番号入力値を最初に入力す
ることにより、すべての入力に共通の算術演算が上流側
で偶数番号入力に対して行われている間にこれらの下流
側操作を同時に進行させることができる。これにより、
他の方法の場合にはいくつかの演算素子が何も動作しな
いでいたであろう時間を減少させることができる。
【0092】同様に、表記 X[0,7], X[1,6], X[3,4], X
[2,5]は下位出力X0、X1、X2、X3が最初に出力
され、次に高位出力X4、X5、X6、X7が続くこと
を示している。図1及び2が示す如く、これらの入力は
本発明によればこれは必要でないけれども、好ましくは
最初に昇順でグループ化されない。このため、上から下
に読むと、偶数番号入力はY0、Y4、Y2及びY6と
なり、奇数番号入力はY1、Y5、Y3及びY7とな
る。入力信号をこの順で並べることにより図1及び2に
示された単純な“バタフライ”データ経路構造が可能に
なり、シリコン半導体装置における本発明の処理系の相
互接続効率を大きく高めることができるのである。
【0093】図2において、加算器及び減算器は“+”
(加算器)、“−”(減算器即ち、一つの補数入力を有
する加算器)または“±”(加算及び引き算の切り替え
が可能な分解加減算器)を含む円で示される。共通ブロ
ックCBLK内の最も左側の加算器及び減算器は好まし
くは桁上げ保留加算器及び減算器であり、二つのmビッ
ト入力語の加算/減算の際のそれらの出力は加算/減算
の桁上げビットを含むmビットまたは(m−1)ビット
語に並列したmビットの部分結果である。
【0094】換言すれば、共通ブロックCBLKの最初
の足し算及び引き算は好ましくは分解されず、桁上げビ
ットの加算は以降の処理段階まで遅延される。この方法
の利点はかかる桁上げ保留加算/減算器は桁上げビット
語の結果に対する最終的な加算を実行する必要がないた
め従来の分解型の加算/減算器より高速なことである。
しかしながら、分解加算器は加算器の出力におけるバス
幅を減少させるために使用しても良い。
【0095】図2はまた発明の好ましい実施例における
1及び2入力ラッチの使用を図示している。図2におい
て、ラッチは矩形で示されており、前共通ブロックPR
EC及び後共通ブロックPOSTCの両方において使用
されている。単一入力ラッチは乗算器D1、D3、D5
及びD7の入力において、並びに出力信号X0からX7
を発生する分解加算/減算器への入力をラッチするため
に使用される。図2が示す如く、これらの分解加算/減
算器への入力はラッチ g[0,7], g[1,6], g[3,4] 及び g
[2,5] 並びに h[0,7], h[1,6], h[3,4] 及び h[2,5]か
らの各出力に対応する計算された g(k) 及び h(k) 値で
ある。この様にして分解加算/減算器は前述の式E16
及びE17によって示された加算または減算を行う。
【0096】上に説明した如く、偶数番号入力Y0、Y
2、Y4及びY6は共通ブロックCBLKにおいて処理
される前に対にされる必要は無い。奇数番号入力もその
ような対にする必要は無いけれども正しい入力値が共通
ブロックCBLKに供給されることを確実にするために
入力Y1は√2倍されねばならない。前共通ブロックP
RECは、従って各入力値のための2入力多重化(“M
UX”)ラッチC10, C54, C32及びC76を含
む。その結果2入力MUXラッチへの一つの入力は処理
されない入力値に直接結び付けられるけれども、他の入
力分解加算器に入力され、入力Y1については分解√2
乗算器に入力される。従って正しい対にされた入力また
は対にされない入力はそれらの二つの入力の間の多重化
ラッチの単純な切り替えによって容易に共通ブロックC
BLKに供給される。
【0097】図2が示す如く、√2乗算器及び乗算器D
1、D3、D5、D7は好ましくはそれらの出力を分解
する。即ち、それらは桁上げビットが加算され完全な合
計を得る結果を生成する。これにより乗算器からの出力
が確実に対応するパラレルデータ経路における乗算され
ない出力と同一のバス幅を有することになる。共通ブロ
ックの好ましい実施例はまた Y[1,0] 及び Y[5,4] の前
進データ経路内に“疑似”加算器及び“疑似”減算器を
含む。これらの装置は二つの入力を(疑似減算器の場
合、1つの入力の2の補数をとった後)それらが並列出
力として伝送されるように組み合わせる。これらの場
合、その一つの入力は後の処理段階で加算される桁上げ
ビットを含むかの如く操作される。このようにして対応
する加算及び減算引き算が、遅延されているけれども、
実行される。
【0098】このような技術により、全ての桁の加減算
器がこれらの装置において用いられなくとも良いため、
上位側の二つのデータ経路において必要とされる資源を
減少させる。こうして“結合器”は加算器及び減算器と
して動作し、次の装置への単純な導体(加算のため)、
あるいは追加の回路を殆ど必要としない一連の反転器
(引き算のため)として実現される。
【0099】かかる結合器の使用はまた、共通ブロック
CBLK内の最初の加算器及び減算器からの出力が同一
の幅を有し、それによって共通ブロックCBLK内の以
降の分解加算器及び減算器への入力が形成される、下部
の二つのデータ経路内の桁上げ保留加算/減算器の出力
と整合性をもつことになる。上述の如く、偶数番号入力
は発明のこの好ましい実施例において奇数番号入力とは
別々に処理される。奇数番号入力が最初に処理されるも
のとする。次に、監視制御回路(図2において図示せ
ず)が奇数入力語を前共通ブロックPRECに供給し、
後に対の値p0からp3(図1及び上の p(n) の定義を
参照)を記憶する多重化ラッチC10, C54, C3
2, C76の下位入力(図2における如く見て)を選択
する。その後、ラッチLh0、Lh1、Lh3及びLh
2がそれぞれラッチ値H0、H1、H3及びH2に能動
化される。
【0100】次に、監視制御回路はラッチし、次に前共
通ブロックPREC内の2入力多重化ラッチC10、C
54、C32及びC76の上位側入力を選択し、偶数番
号入力語をこれらのラッチに供給する。偶数番号入力が
g0からg3の値を形成するのに用いられるため、監視
制御回路は次に g(k) 値を記憶する後共通ブロックPO
STC内のラッチLg0からLg3も開放する。
【0101】g(k) 及び h(k) 値がいったんラッチされ
ると、後共通ブロックPOSTCは分解加算/減算器を
引き算モードに切り替えて高位出力信号X7、X6、X
5及びX4を出力する。低位出力信号X3、X2、X1
及びX0は次に分解加算/減算器を加算モードに切り替
えることにより生成される。出力データは自然な順序を
含めて任意の順序で供給され得ることが注目される。
【0102】図2において、非常に単純化され図式的に
示された好適な多重化処理系は図1に示された非多重化
構造と同一の計算を行う。しかしながら共通ブロックC
BLKにおける加算器、減算器及び乗算器の数は半分に
削減され、疑似加算/減算器の使用により更に贅沢な算
術回路の複雑さが減少されている。図3は実施例による
IDCT回路の実際の処理系の主要な構成要素とデータ
ラインを示している。主要構成要素には前共通ブロック
回路PREC、共通ブロック回路CBLK、及び後共通
ブロックPOSTCが含まれる。システムはまた、前共
通ブロックPREC及び後共通ブロックPOSTCに入
力、タイミング及び制御信号を直接的または間接的に供
給する制御回路CNTLを含んでいる。
【0103】発明の好ましい実施例において、入力信号
及び出力信号(それぞれY0からY7及びX0からX
7)は22ビット幅である。テストの結果、これは現行
の工業基準によって計測される許容可能な精度が依然と
して生成される最小の幅である。以下に詳述した如く、
この最小の幅は意図的に選択された演算素子における一
定の桁上げ語を強制的に“1”または“0”にすること
によって達成される。あるデータ語の調整に対応するこ
のビット操作は公知の入力テストデータのIDCT変換
に実施例を用いた後に実施例のIDCTシステムの結果
を統計的に分析した結果として実行される。あるビット
を所定の値にすることによって、丸めの効果及び切り捨
ての誤差が減少され、出力データIDCTシステムから
の空間出力データは公知の“正しい”空間データからあ
まりはずれることがないようにできる。
【0104】本発明は、しかしながら、実施例による回
路において用いられた構成要素は全て公知の方法を使用
して異なるバス幅に適応させることが可能であり、他の
データ語長についても同様に適用可能である。88個の
平列導体(4×22)によって一緒に処理される4つの
入力は同時に前共通ブロックPRECに入力させること
が可能であるけれども、ピクセル語は通常直列伝送デー
タから一回に一つずつ変換される。実施例によれば、従
って入力データ語は好ましくは全て単一の、22ビット
入力バスを介して伝送され、各入力語は逐次データ経路
内の正しい入力点においてラッチされる。図3におい
て、22ビット入力データバスは T_IN[21:0] として示
されている。
【0105】以降の図及び説明において、複数ビット信
号の幅は高位ビットをコロン“:”の左に、最下位のビ
ット(LSB)をコロンの右に記して括弧で示されてい
る。例えば、入力信号 T_IN[21:0] は22ビット幅であ
り、そのビットは0から21の番号が付けられる。単一
のビットは四角い括弧内の単一の数として識別される。
この様にして、T_IN[1]は信号T_INの最下位の隣の
ビットを示す。
【0106】発明の好ましい実施例において以下の制御
信号が前共通ブロックPRECの動作を制御するために
用いられている。 IN_CLK,OUT_CLK:実施例のシステムは好
ましくは重なり合わない2相のクロックを用いる。従っ
て信号IN_CLK及びOUT_CLKはそれぞれ入力
及び出力クロック信号のための信号である。これらのク
ロック信号は入力、中間、及び出力信号の値を保持する
ラッチの列を交替に可能化するために用いられる。
【0107】LATCH10、LATCH54、LAT
CH32、LATCH76:好ましくは一つの22ビッ
ト語が一回にシステムに入力される。一方、4つの入力
信号が一度に処理される。従って各入力信号は他の三つ
の入力語と処理される前にアーキテクチャ内のそれぞれ
の適切な場所にラッチされねばならない。これらのラッ
チ信号は各入力ラッチを可能化するために用いられる。
例えば、信号LATCH54は始めに入力信号Y5をラ
ッチし、後に入力信号Y4をラッチし、後者は入力信号
Y5と同一の時点であるけれども以降の処理段階で前共
通ブロックPRECに入力される(図2参照)。
【0108】LATCH:いったん偶数または奇数入力
信号が前共通ブロックPRECにラッチされると、それ
らは好ましくは同時に以後のラッチの列にシフトされ
る。信号LATCHが前共通ブロックPRECにおける
演算素子によって操作されるべき4つの入力値を保持す
る入力ラッチの第2の列を可能化するために用いられ
る。
【0109】SEL_BYP,SEL_P:図2が示す
ように、ラッチC10、C54、C32及びC76にラ
ッチされる偶数入力信号は加算器及び√2分解乗算器を
バイパスする信号でなければならない。しかしながら奇
数入力信号は対の入力 p(n)を形成するために最初に対
にされねばならず、信号Y1は√2倍されねばならな
い。制御信号SEL_BYPがグループ化されないバイ
パス入力信号(偶数番号入力)を選択するために用いら
れるいっぽう、信号SEL_Pが対にされた入力信号を
選択するために能動化される。この様にして、これらの
信号は正しい信号を前共通ブロックPRECの出力ラッ
チに渡すためにマルチプレクサとして動作するゲートを
制御するために用いられている。
【0110】上に説明した如く、入力を厳密に昇順に配
置しないことは高い相互接続効率を有する簡略化“バタ
フライ”バス構造につながっている。上に説明した如
く、奇数入力は好ましくは前共通ブロックにグループと
して最初に供給され、次に偶数番号入力が続くけれども
各奇数または偶数のグループ内ではどのような順序が用
いられても良い。また、どのような入力の順序が用いら
れても良いが、奇数及び偶数番号入力を処理する適当な
ラッチ装置が別々に設けられ、または少なくとも回路の
別々の部分に設けられている。
【0111】監視制御回路はまた後共通ブロックPOS
TCのためのタイミング及び制御信号を発生する。これ
らの制御信号は以下の通りである。 EN_BH,EN_GH:少しの間図1を考慮すると、
共通ブロックCBLKからの出力は奇数番号入力を処理
した後は、H0、H1、H3及びH2として示されてい
る。これらの信号は次に第1のブロックPOSTC1内
の係数乗算器d1、d3、d7、d5にそれぞれ供給さ
れる。信号EN_BHはH0からH3に対応する信号を
保持するラッチを可能化するのに用いられる。信号EN
_GHはg0からg3の値を保持するラッチ、及び係数
乗算器においてそれらが乗算された後にH0からH3の
値を保持するラッチを可能化するのに用いられる。
【0112】ADD,SUB:図2が示す如く、実施例
は下位及び高位出力をそれぞれ形成するために g(k) 及
び h(k) の値を合計し、またその差を求める分解加算/
減算器の組を含んでいる。信号ADD、SUBは分解加
算/減算器をそれぞれ加算及び引き算モードに設定する
ために用いられる。 EN_0:この信号は分解加算/減算器からの結果をラ
ッチする出力ラッチを可能化するために用いられる。
【0113】MUX_OUT70、MUX_OUT6
1、MUX_OUT43、MUX_OUT52:システ
ムからの出力データは好ましくは単一の22ビット出力
バスを介して伝送され、ただ一つの出力値(X0からX
7)が一度に伝送される。4つのラッチされた出力値の
内のどれが最終的な出力ラッチへラッチされるを選択す
るために、これらの信号逐次能動化される。この様にし
て、これらの信号は4から1マルチプレクサの制御信号
として動作する。
【0114】T_OUT[21:0]:このラベルは後共通ブロッ
クPOSTCからの22ビット出力信号を示す。 前共通ブロックPRECからの出力信号はラッチされて
共通ブロックCBLKへの入力信号を形成する。図3に
おいて、前共通ブロックPRECからの出力信号は、そ
れぞれ共通ブロックCBLKへの入力信号 IN[0]、IN
[1]、IN[3]、IN[2]となる4つの22ビットデータ語 CI
10[21:0]、CI54[21:0]、CI32[21:0]、CI76[21:0]として
表される。
【0115】図3が示すように、共通ブロックCBLK
からの4つの22ビットの結果は出力信号 OUT0[21:
0]、OUT1[21:0]、OUT3[21:0]、OUT2[21:0] として並列
して伝送され、それらは、次に後共通ブロックPOST
Cの入力信号 CO70[21:0]、CO61[21:0]、CO43[21:0]、C
O52[21:0] としてラッチされる。共通ブロックCBLK
のために制御信号が全く必要とされないことに特に注目
すべきである。この例におけるIDCTシステムの独特
の構造により、操作の共通ブロック純粋な論理操作とし
て実行することができ、クロック、タイミング、制御信
号等を必要としない。このことは装置の複雑さを更に減
少させている。ある種の応用例(特に、必要な全ての算
術演算を実行するのに多くの時間のあるもの)では前共
通、及び後共通ブロックPREC、POSTCをクロッ
ク、タイミング、制御信号無しに動作するようにするこ
ともできることに注目すべきである。
【0116】図4及び図5は前共通ブロックPRECの
ブロック図である。この図及び以降の図において、表記
“S1[a], S2[b], ..., SM[z]、”だだしSは任意の信号
ラベルであり、a,b,...zは信号のバス幅の範囲
内の整数である、は信号S1,S2,...SMからの
選択されたビットa,b,...zは同一のバス上を並
列に伝送され、最上位ビット(MSB)は信号S1の選
択されたビット“a”であり、最下位ビット(LSB)
は信号SMの選択されたビット“z”であることを示し
ている。選択されたビットは個々のビットである必要は
無く、完全または部分の複数ビット語が他の単一ビット
または完全または部分の複数ビット語と共に伝送されて
も良い。図において、記号Sは対応する信号ラベルによ
って置き換えられる。
【0117】例えば、図4及び図5において、√2乗算
器はR2MULとして示されている。この非分解乗算器
からの“保留”または“非分解合計”出力は21ビット
語 M5S[20:0] として示されている。乗算器R2MUL
からの “桁上げ”出力は22ビット語 M5C[21:0] とし
て示され、それはバスを介して桁上げ保留分解加算器M
5Aの“b”入力に伝送される。(“0”が保留出力の
最下位の21ビットにMSBとして、分解加算器M5A
の“a”入力に供給される前に挿入されることが思い出
されるが、このことは図4及び図5において表記 GND,M
5S[20:0]によって示される。)換言すれば、加算器M5
AへのMSB入力に対応する導体が接地に接続されるこ
とにより強制的に“0”に等しくされる。
【0118】何故このように“0”が“合計”出力の2
2番目のビットとして挿入されるかを理解するために
は、もし掛け算の部分的合計がn桁幅であるとすると、
桁上げ語も通常n桁有することに注意すべきである。し
かしながら、部分的合計に桁上げ語を加算する際には、
桁上げ語は部分的合計に対して左方に一桁だけ桁移動さ
れる。従って、桁上げ語はn+1桁まで拡張され、n+
1番目の位に有効なデータビット及び最下位の位に
“0”を有することになる(この位より前には桁上げビ
ットを単位の位に対して生成するものが何もないた
め)。もしこれらの2語が分解二進加算器への入力とし
て用いられると、桁上げ語のビット(数)が部分的合計
の対応するビットに対して正しく位置合わせされること
が確実なように注意しなければならない。このことはま
た、両方の語において小数点(整数の演算における如
く、それが使用される場合のみであるけれども)が位置
合わせされることを確実にする。加算器への入力がn+
1ビット幅であるとすると、“0”を全てのnビットの
正の部分的合計語の最高位ビットに挿入し、他の入力に
おける桁上げ語と位置合わせされたn+1ビットの入力
を提供することができる。
【0119】上記の如く、前共通ブロックPRECにお
いて一時に処理される4つの入力は入力バス T_IN[21:
0] を介して伝送される。この入力バスは4つの入力ラ
ッチIN10L、IN54L、IN32L及びIN76
Lの入力に接続される。各ラッチのそれぞれは入力クロ
ック信号IN_CLK及び対応するラッチ選択信号LA
TCH10、LATCH54、LATCH32、LAT
CH76が高であるときにのみ可能化される。従って、
4つの入力はラッチ可能化信号LATCH10、LAT
CH54、LATCH32、LATCH76が逐次能動
化されることによってIN_CLK信号の4つの期間に
それらの各々の入力ラッチにラッチされ得る。この期間
の間、入力ラッチIN10L、IN54L、IN32
L、IN76Lが4つの入力値を安定化し、ラッチする
ことを可能にするためにLATCH信号は低(または異
なる位相上)でなければならない。
【0120】ラッチのタイミングの例が図12に示され
ている。いったん4つの入力信号が選ばれた順序でラッ
チされると、それらは第2のラッチの組L10L、L5
4L、L32L、L76Lに伝送される。これらの第2
のラッチは信号OUT_CLK及びLATCHが高であ
るときに可能化される。この信号タイミングもまた図1
2に示されている。
【0121】システムは全ての8つの入力語の受け入れ
を遅らせる必要が無いことが注目される。全ての偶数ま
たは奇数入力語はIN10L、IN54L、IN32L
及びIN76Lに入力されてラッチされ、それらは次に
OUT_CLKが高になった期間にラッチL10L、L
54L、L32L及びL76Lに伝送され得る。これに
よりINラッチは解放され、それらはIN_CLKの次
の立ち上がりの時点で遅れなく他方の4つの入力信号の
入力を開始することが可能になる。
【0122】図に示された種々の要素のための2桁のサ
フィックス表記 [10, 54, 32, 76]は奇数番号信号が最
初に、続いて偶数番号信号が以後この構造を通過して処
理されることを示している。上述の如く、この順序は必
須なものではない。いったん4つの入力信号が正しい順
序で第2のラッチL10L、L54L、L32L、L7
6Lにラッチされると、対応する値が、選択されたバイ
パス信号SEL_BYPが能動化された時点で入力とし
て出力ラッチC10L、C54L、C32L及びC76
Lに伝送されるか、或いはそれらは“p選択”信号SE
L_Pが能動化した時点で、対にされ乗算された入力と
して同一の出力ラッチに伝送される。換言すれば、全て
の信号が、演算素子を通して、前共通ブロックPREC
の出力ラッチC10L、C54L、C32L、C76L
に直接的及び間接的に伝送される。しかしながら“バイ
パス選択”信号SEL_BYP(偶数番号入力Y0、Y
2、Y4、Y6のための)または“p選択”信号SEL
_P(奇数番号入力Y1、Y3、Y5及びY7のため
の)の能動化によって正しい値がこれらのラッチにロー
ドされる。これらの制御信号及び他の制御信号の所望の
タイミング及び順序はコントローラCNTLの適切な構
成及び/または(マイクロ)プログラミングによって公
知の方法で容易に得ることができる。
【0123】上述の如く、ラッチL10Lの出力におけ
る最上入力値は最初に√2乗算器R2MULに伝送さ
れ、次に分解加算器M5Aに伝送される。分解加算器M
5Aからの出力は M5[21:0] として示され、それは図1
における22ビット値p0に対応する。この22ビット
信号 M5[21:0] はラッチL10Lからの出力の√2によ
る分解された掛け算と等価になる。また他の3つのラッ
チL54L、L32L、L76Lからの出力が22ビッ
トラッチバス LCH54[21:0]、LCH32[21:0]、LCH76[21:
0] を介して直接的に、また分解加算器P2A、P1A
及びP3Aを介して間接的に対応する出力ラッチC54
L、C32L及びC76Lにそれぞれ伝送される。
【0124】各分解加算器P2A、P1A、P3Aは二
つの入力“a”及び“b”を有する。加算器P2Aにつ
いては一つの入力はラッチL32Lから入力され、他の
入力はラッチL54Lから入力される。従って、入力値
Y5(L54Lにラッチされた)及びY3(L32Lに
ラッチされた)に対しては、加算器P2Aからの出力は
Y5+Y3に等しくなり、それは上述した如く、p(2)
と等しい。この様に、加算器は奇数番号入力を“対”に
し、対にされた入力値 p(1)、p(2) 及び p(3)を形成す
る。勿論、L54L、L32L、L76Lにラッチされ
た偶数入力信号もまた、分解加算器P2A、P1A及び
P3Aをそれぞれ通過するけれども、その結果のpの
“値”は“p選択”信号SEL_P偶数番号入力に対し
ては能動化されないため、出力ラッチC54L、C32
L及びC76Lには伝送されない。
【0125】従って入力クロック信号IN_CLKが能
動化された時点で出力ラッチC10L、C54L、C3
2L及びC76Lにラッチされた値は偶数番号入力Y
0、Y2、Y4、Y6または奇数番号入力に対する対に
された入力値P0、P1、P2、P3のどちらかに等し
くなる。入力 Y(1) はゼロであると仮定された値 Y(-1)
と“対”にされることを思い出すべきである。図4及び
図5において、この仮定は値Y1に何も足さないことで
実現される。むしろ、図1及び2に示された如くY1に
は√2が掛け算されるのみである。
【0126】図6及び図7は実施例に従った共通ブロッ
クCBLKの所望のアーキテクチャを図示している。種
々の掛け算及び足し算が異なるシステムブロックに存在
するため、種々の計算を行う前に入力値を下位方向に桁
移動して共通ブロックに供給することが必要であり、ま
た有用である。これによりシステム内の種々の演算素子
への対応する入力に対して小数点(整数の演算のために
必要とされる)の位置が一定になることが確実化され
る。
【0127】従って、入力値 IN0[21:0] 及び IN1[21:
0] は4だけ下位方向に桁移動されるが、これはディジ
タル演算においては2ビット右にシフトすることに対応
する。二進表現において数の符号を保存するために(正
の値を正に、負の値を負に保持する)、最上位ビット
(MSB)は、その結果得られる右シフトされた語の二
つの最上位ビットにおいて再現されねばならない。この
処理は“符号の拡張”として知られる。従って、入力値
IN0は符号拡張とともに2ビットだけ下位方向にシフ
トされ IN0[21]、IN0[21]、IN0[21:2] として示される
シフトされた入力値を形成する。入力値 IN1[21:0] は
同様に2桁符号拡張される。入力値IN3及びIN2
(入力 Y[3,2] 及び Y[7,6] にそれぞれ対応する)は符
号拡張とともに右に一桁シフトされる。従って三番目の
入力はシフトされ、拡張されて IN3[21]、IN3[21:1] と
なる。入力IN2は同様にシフトされ、拡張され IN2[2
1]、IN2[21:1] となる。これらの一桁のシフトは2によ
る切り捨ての分割に対応する。
【0128】図2が示すように、入力IN3、IN2は
桁移動された係数c1s及びc3sが掛け算されねばな
らない入力である。入力IN3及びIN2の各々は桁移
動された係数の各々が掛け算されなければならない。図
6及び図7が示すように、これは4つの一定係数桁上げ
保留乗算器MULC1S、MULNC1S、MULC3
S3及びMULC3S2によって実行される。IN2の
ための一番下の乗算器は反転乗算器MULNC1Sであ
ることに注意すべきである。即ち、その出力は定数C1
Sが掛け算された入力の負の値に対応する。こうしてC
76にラッチされた値がC32にラッチされた値(C3
Sによる掛け算の後)から引き算される。反転乗算器M
ULNC1Sを設けることによって、この引き算は対応
する値の負の値を加算することにより実行され、それは
差を形成することと同等である。これにより以降の加算
器として同一の回路を用いることが可能になるけれど
も、非反転乗算器をそれに続く減算器とともに用いても
良い。
【0129】図示された実施例においては、4つのコサ
イン係数乗算器MULC1S、MULNC1S、MUL
C3S3及びMULC3S2が含まれている。しかしな
がら、もし信号が別々に乗算器を通過するように成され
ていれば、必要な掛け算は一つがc1s係数のため、ま
た一つがc3s係数のための二つの乗算器のみを用いる
ことによって実行され得る。
【0130】乗算器MULC1S、MULNC1S、M
ULC3S3及びMULC3S2は好ましくは桁上げ保
留型であり、そのことはそれらの乗算器は一つがハード
ウエア乗算器内で実行される種々の足し算の列の結果に
対応し、他方が生成された桁上げビットに対応する二つ
の出力語を生成することを意味している。次に、乗算器
からの出力は二つの4入力分解加算器BT2、BT3の
何れか一方の入力に接続される。
【0131】説明を容易にするためのみの目的で、乗算
器からの出力バスの5つは加算器の対応する入力バスに
接続されているようには図示されていない。これらの接
続は容易に理解されると考えられ、それらはそれぞれの
同一のラベルを有する出力及び入力として各々図示され
ている。こうして、乗算器MULC1Sの保留出力M1
S[20:0]は加算器BT3の“a保留”入力“sa”の下
位側21ビットに接続される。
【0132】図6及び図7において、加算器 BT2及
びBT3 への入力の5つは“分割”されているとして
図示されている。例えば、加算器 BT2 の“ca”入
力は M3C[20:0] の上に IN3[21]を有するとして示され
ている。これは、22ビット入力語の内、IN3[21] がM
SBとして入力され、M3C[20:0] の21ビットが最下位
の21ビットとして入力されることを意味するものと解
釈されるべきである。同様に、同じ加算器の“sa”
(“a保留”入力)は M3S[19:0] 上のGND、GND
として示されている。これは二つのゼロがこの入力語の
二つの最上位ビットとして付加されることを意味してい
る。かかる付加ビットは正しい22ビット幅の入力語が
正しい符号で形成されることを確実にする。
【0133】桁上げ保留加算器BT2及びBT3は二つ
の異なる22ビット入力の桁上げ及び保留語を加算し、
22ビット出力保留語 T3S[21:0] 及び21ビット出力
桁上げ語 T3C[21:1] を形成する。こうして、各加算器
への入力は88ビット幅であり、各加算器からの出力は
43ビット幅である。図2が示すように、ラッチC10
からの出力は最上部のデータ経路において桁上げ保留加
算器BT3からの出力と加算される前にラッチC54か
らの出力と組み合わされる。しかしながら、この“組み
合わせ”は上部のデータ経路内の以下の加算器に意至る
迄は必要ではない。 その結果、図6及び図7が示すよ
うに、シフトされ、符号拡張された入力値IN0が上部
の桁上げ入力に接続される。
【0134】加算器CS0の上部桁上げ入力はシフトさ
れ符号拡張された入力値IN0に接続され、シフトされ
符号拡張された入力IN1は同一の加算器の上部保留入
力として接続される。換言すれば、IN0及びIN1加
算器CS0において後に加算される。従って図2におい
て用いられた宛先“疑似”加減算器は、必ずしも図2に
示された点で実行されねばならないわけではないけれど
も、どの操作が実行されねばならないかを表示する。同
様に、図2に示された下部疑似減算器はラッチC54か
らの出力がラッチC10からの出力から減算されること
を必要とする。これはC10からの出力をC54の出力
の補数に加算することと同一である。
【0135】再び図6及び図7を参照すると、入力IN
1(図2におけるラッチC54の出力に対応する)の補
数は22ビット入力反転器 IN1I[21:0](その入力の各
ビットの反転論理をビット対ビットで生成する)により
生成される。IN1の補数の値− NIN1[21:0] −はシフ
トされ符号拡張された対応する上部“桁上げ”入力IN
0とともに加算器CS1の上部 “保留”入力に伝送さ
れる。従って加算器CS1の上側部分はIN0引くIN
1に対応する引き算を実行する。
【0136】図2に示された下部の二つのデータ経路に
おいて、上部の二つのデータ経路の共通ブロックCBL
Kの出力の位置に示された分解加算器の代わりに分解減
算器が使用されている。各分解加算器または減算器は、
分解加算器がその後に設けられた桁上げ保留加算器また
は減算器と等価である。これは図6及び図7に示されて
いる。減算器CS2及びCS3はそれらの入力としてI
N0からIN3を図2に示された接続構造に従って処理
した値を有する。
【0137】加算/減算器CS0からCS3の各々から
の22ビット桁上げ及び保留出力は分解加算器RES0
からRES3において分解される。桁上げ及び保留出力
の分解はディジタル設計の技術においてよく理解されて
おり、従ってここでは詳述しない。図6及び図7が示す
ように、桁上げ保留加算/減算器CS0からCS3から
の保留出力は直接22ビット入力として対応する分解加
算器RES0からRES3の“a”入力に供給される。
【0138】良く知られているように、二進数の2の補
数はそのビット(全ての“1”を“0”に、またはその
逆に変更する)の各々を反転し、次に“1”を足すこと
である。“1”がビット反転の直後に加算されても良
く、また後で加算されてもよいことに注目すべきであ
る。桁上げ語のLSBは常に“0”であり、これは図示
された実施例において、桁上げ語O0C及びO1Cが分
解加算器RES0及びRES1にそれぞれ入力される時
にそのLSBを接地GNDに接続することによって具体
化される。しかしながら、減算器CS2及びCS3の桁
上げ出力に“1”を加算して2の補数をとった値を生成
することはこれらのデータ語O2C及びO3CのLSB
を供給電圧VDDに接続し、桁上げ語の“0”LSBを
“1”によって置き換えることによって具体化され、こ
れは“1”を加算することと等価である。
【0139】上に述べた理由により、“0”がLSBと
して桁上げ保留加算器CS0及びCS1からの21ビッ
ト桁上げ語に付加され(LSBを接地GNDに接続する
ことにより)桁上げ保留減算器CS2及びCS3からの
桁上げ語のLSBが対応するデータラインを供給電圧V
DDに接続することによって“1”にセットされる。従
って分解加算器RES0からRES3が加算/減算器C
S0からCS3からの出力を分解し、22ビット出力信
号 OUT0[21:0] から OUT3[21:0] を生成する。
【0140】この実施例によるIDCT回路の二つの利
点を図6及び図7に見ることができる。第1には、共通
ブロックCBLKのために制御またはタイミング信号が
全く必要とされず、共通ブロックへの入力信号は共通ブ
ロック内の純粋論理演算素子に直接入力し得るような方
法で既に処理されていることである。第2にデータ語の
適切な桁移動により、整数演算が全体的に使用可能なこ
とである(または少なくとも、小数点が全ての値につい
て固定されていること)。これにより、浮動小数点素子
の複雑さ及び低速度を許容不可能な精度の犠牲なしに回
避することができるのである。
【0141】実施例のさらに他の利点は、図示された順
序で入力を配置し、実施例による平衡がとられデシメー
トされた方法を使用することにより、類似の設計構造が
シリコン処理系のいくつかの場所で使用できることであ
る。例えば、図6及び図7において、一定係数乗算器M
ULC1S、MULC3S3、MULC3S2及びMU
LNC1Sの全ては類似の構造を有しており、データ経
路内の同一の点でデータを受け取るため、4つの乗算器
は同時に動作可能である。これにより、“ネック”が除
去され、半導体処理系は同一に作られた、並列構造の利
点を全て享受することができる。同様に桁上げ保留加算
器BT2及びBT3は同時に動作可能であり、以下の桁
上げ保留加算器及び減算器も同様である。この設計上の
対称性及びいくつかの素子の効率的な同時使用は実施例
による構造において共通である。
【0142】図8ないし図11は後共通ブロックPOS
TCの好ましい配置を示している。図2が示す如く、後
共通ブロックのPOSTCの第1の機能は共通ブロック
の出力に係数d1、d3、d5及びd7を乗算すること
によりh0からh3の値を生成すること; g(k) 及び h
(k) の値を加算して下位出力を生成すること; h(k)の
値を対応する g(k) の値から引き算して高位出力を生成
することである。図2及び図8ないし図11の両方を参
照すると、後共通ブロックPOSTCはBHラッチが可
能化され、制御回路がEN_BH信号を高にセットし、
出力クロック信号OUT_CLK信号が高になったとき
共通ブロックCBLKからの対応する出力をラッチBH
0L、BH1L、BH3L及びBH2Lにラッチする。
g(k)、g0からg3の値は制御回路が信号EN_GHによ
りこれらのラッチを可能化し、入力クロック信号IN_
CLKが高になったときに対応するラッチG0L、G1
L、G3L及びG2Lにラッチされる。
【0143】処理された奇数番号入力、即ち、値h0か
らh3はEN_GH及びIN_CLK信号が高であると
きに一定係数乗算器D1MUL、D3MUL、D5MU
L及びD7MULを介してラッチH0L、H1L、H3
L及びH2Lにラッチされる。これらの乗算器はそれぞ
れd1、d3、d5及びd7によって乗算する。好まし
い実施例において、デザインを簡略化し、演算速度を増
加させるために、これらの一定係数乗算器は好ましくは
桁上げ保留乗算器である。図8ないし図11が示すよう
に、一定係数乗算算器からの“桁上げ”(“c”)出力
は以下に記述したいくらかの変更を伴って、分解加算器
H0A、H1A、H3A及びH2Aの入力に接続され
る。係数乗算器からの“保留”(“s”)出力は同様
に、以下に記述した強制的な変更を伴って、対応する分
解加算器の入力に接続される。
【0144】図8ないし図11が示すように、H0信号
のLSBは好ましくは対応するラインを供給電圧VDD
に接続することにより強制的に“1”にされる。H0に
ついての対応する“保留”出力のMSBは0にされ(接
地GNDに接続され)、第2のビット(H0S[1] に対応
する)は“1”にセットされる。一定係数乗算器D3M
ULの桁上げ及び保留出力からのデータ語は同様に操作
され、分解加算器H1Aへ入力される。これらの操作の
利点は以下に説明する。
【0145】係数乗算器D7MUL及びD5MULから
の桁上げ出力の22ビット全ては対応する分解加算器H
3A及びH2Aの“a”入力に直接接続される。しかし
ながら各乗算器の“保留”出力のMSBは対応するデー
タラインを接地に接続することにより強制的に“0”に
される。以上に記述したIDCTシステムは上記のCC
ITT規格に対してテストされた。桁移動及び他の良く
知られたディジタル加算器及び乗算器の特性により、精
度のいくつかは、装置の種々の処理段階において失われ
ている。発明者等は、10,000サンプルのテスト処理の統
計的分析の結果、上述の種々のビットを強制的に“0”
または“1”にすることによってディジタル変換の予測
される誤差が減少することを発見した。データ語のビッ
ト操作の結果、実施例は同様の精度を達成するのに通常
は24ビットが必要とされるところを、22ビット幅の
データ語のみを用いてCCITT規格における許容可能
な精度を達成した。
【0146】精度上の限界及び切り捨て並びに丸め誤差
のために、一般的にIDCTシステムの全てのデータ語
にはある程度の不正確さがある。勿論、データ語の選択
されたビットを強制的に対応する計算の自然の解として
のそれとは異なる値にすることは意図的に“誤差”を導
入することになる。しかしながら、発明等はハードウエ
ア内の特定の点における特定のデータ語に計画的に導入
された誤差は、統計的により良い全体的な結果を生成す
ることを発見した。ビットフォーシングはまた、例え
ば、一つ以上の桁上げビットを強制的に所定の値にする
ことによって掛け算“内”において行うことができる。
【0147】このビットフォーシング機構は特定のビッ
トが常に所定の値となるような静的なものでなくて良
く、動的な機構を用いることもできる。例えば、データ
語の選択されたビットはデータ語(もしくは更に他のデ
ータ)が偶数か奇数か、正か負か、所定のしきい値以上
か以下か、等に依存して強制的に“1”または“0”に
されるようにしても良い。
【0148】通常、全体の統計的処理能力を改善するた
めには小さな規則的な変化のみが必要である。その結
果、この実施例によれば、選択されたデータ語(これは
必須ではないけれども好ましくは一回に1ビット及び1
データ語)のLSBが強制的に“1”または“0”にさ
れる。CCITTテストが実行され、その実行に対する
CCITT統計値が収集される。
【0149】次にそのビットは強制的に“1”または
“0”の他方にされ、再びテストが実行される。その
後、他のデータ語のLSB(またはLSB)が強制的に
“1”及び“0”にされ、同様の統計値が収集される。
種々の強制語における強制ビット種々の組み合わせにつ
いての統計値を調べることにより、最良の統計的な処理
能力を決定することができる。
【0150】しかしながら、もしこの統計に基づいた改
善が必要とされなければ、一定係数乗算器D1MUL、
D3MUL、D5MUL及びD7MULからの出力は分
解加算器H0A−H3Aにおいて従来の方法で分解され
る。分解加算器H0A−H3Aからの出力の下位21ビ
ットが対応するラッチH0L−H3Lの入力において、
これらの入力のLSBを接地した状態で、上位21ビッ
トとして供給される。
【0151】H−ラッチ(H0L−H3L)及びG−ラ
ッチ(G0L−G3L)からの出力は対となって分解加
算器−減算器S70A、S61A、S43A及びS52
Aの各a−及びb−入力を形成する。上に示された如
く、これらの装置はADD信号が高レベルであるときに
それらの入力を加算し、引き算可能化信号SUBが高レ
ベルのときに“a”入力から“b”入力を引き算する。
上位二つのラッチ対H0L、G0L及びH1L、G1L
の第2のビットは以下に記述した方法で多重化装置によ
って操作される。
【0152】分解加算器−減算器S70A、S61A、
S43A及びS52Aからの出力は結果ラッチR70
L、R61L、R43L及びR52Lにおいてラッチさ
れる。図9において、加算/減算器S70A及びS61
Aへの入力語は各入力語の第2のビットが操作されてい
る。例えば、加減算器S70Aの“a”入力の入力語の
第2ビットは G0[21:2]、G0[1M]、G0[0] である。換言
すれば、この信号の第2ビットは値G01Mにセットさ
れる。加算/減算器S70A及びS61Aへの他の入力
の第2のビットは同様に操作される。このビット操作は
4つの2:1ビットマルチプレクサH01MUX、G0
1MUX、H11MUX及びG11MUX(図9の右側
に示されている)によって実行される。これらのマルチ
プレクサは、第2ビット(H01M、G01M、H11
M及びG11M)はもし各加減算器S70A、S61A
がADD(ADDは高)にセットされたならば0にセッ
トされ、またその第2のビットはSUB信号が高にセッ
トされたならばその実際のラッチ出力値にセットされる
ように制御されるようにADD及びSUB信号により制
御される。このようにして、個々のビットの設定は、容
易に実行される高速の操作となる。上述した如く、多数
のテストピクセル語の統計的分析により、より正確な結
果がそれによって得られることを示しているため、好ま
しい実施例はこのビット強制装置を含んでいる。しかし
ながら、より小さな語幅が得られるという利点が有るも
のの、第2のビットをこのように操作することは必ず必
要ではない。4つの高位または下位結果は出力ラッチR
70L、R61L、R43L及びR52Lにおいてラッ
チされる。この結果は多重化信号MUX_OUT70、
MUX_OUT61、MUX_OUT43、MUX_O
UT52の制御により、最終的な出力ラッチOUTFに
逐次ラッチされる。従って、結果の信号が出力される順
序は、単にそれらがラッチOUTFにラッチされる順序
を変えることによって制御することが可能である。ラッ
チOUTFからの出力は最終的な22ビットの結果出力
信号 T_OUT[21:0] となる。
【0153】後共通ブロックPOSTCにおけるクロッ
ク信号及び制御信号の関係は図13及び図14に示され
ている。
【0154】
【発明の効果】上に述べた如く、2つの1次元IDCT
操作は二次元IDCTを行うために、中間的なデータの
転置に対して直列的に行っても良い。従って後共通ブロ
ックPOSTCからの出力信号は、この実施例によれ
ば、最初に公知の方法で列方向に(または行方向に)従
来の素子ユニット、例えばRAMメモリ回路(図示せ
ず)に記憶され、その後、その素子ユニットから行方向
(列方向)に読み出されて、その後の前共通ブロックに
入力として供給され、このブロック、共通ブロックCB
LK及び後共通ブロックPOSTCにおいて上述の如く
処理される。
【0155】行(列)毎に記憶し、列(行)毎に読み出
すことで第2の一次元IDCTの前に必要とされるデー
タの転置が実行される。第2のPOSTCからの出力は
所望の二次元IDCT結果となり、種々の処理ブロック
において実行される桁移動シフトを相殺するためにシフ
トすることによって従来の方法で桁移動することができ
る。特に、一桁だけ右シフトする事は一次元IDCT操
作において実行される二つの√2の掛け算を相殺するの
に必要な2による割り算を行うことになる。
【0156】応用の方法に応じて、この第2のIDCT
構造(好ましくは図3に示されたものと同じ)は好まし
くは独立した半導体処理系として設けられる。これによ
って、もしピクセル−クロック速度が、単一の回路の処
理系が実時間で二つの経路を処理することが可能となる
くらい低速であれば別々の一次元変換処理系は必要でな
いけれども、もし両方の変換のために同一の回路が用い
られていたとすると発生する速度の低下を回避すること
ができる。上述のIDCT処理装置の原形において行わ
れた領域テストにおいて、全ての中間及び最終的な値は
CCITT規格を依然として満足しつつ各点において、
公知の範囲内に保たれていることが分かった。これによ
って、(例えば、選択されたデータ語のあるビットを強
制的に所望の値にすることにより)算術計算におけるオ
ーバーフローもしくはアンダーフローの虞れ無しに上述
の選択された値を少しの値だけ“調整”することができ
る。
【0157】本発明による方法及びシステムは多くの方
法で変更することができる。例えば、足し算または掛け
算を分解するために用いた構造は、公知の技術のどれを
用いても変更することができる。この様に、好ましい実
施例において別個の分解加算器を有する桁上げ保留装置
を用いている部分に分解加算器または減算器を用いるこ
とが可能である。また、発明の好ましい実施例は全ての
値がそれらの許容範囲内に留まることを確実にするため
に種々の点で下方桁移動を用いている。しかしながら、
オーバーフローまたはアンダーフローを避けるために他
の予防措置を取っても良いため、下方桁移動は必ずしも
必要ではないのである。
【0158】発明の原形において、種々のデータ語のあ
るビットはシステムのテスト結果の統計的分析に基づい
て操作されている。これらの操作はシステム内の必要と
される語幅を減少させたけれども、勿論種々の中間値は
ビット操作無しに伝送されても良い。更に、発明の図示
された例においてはデータ語のみがビット操作されてい
たけれども、同様に一定係数のビットを操作し、CCI
TT規格により結果を評価するすることもできる。も
し、結果を比較した後、特定のビットを強制的に所定の
値にすることが有用であることが示された場合には、あ
る場合には、対応する乗算器を形成するのに必要とされ
るシリコン領域を更に減少させるためにこれらの係数の
二進表現における“ゼロ”の数を増加させることが可能
である。再び、ビット操作は必須ではないのである。
【図面の簡単な説明】
【図1】 本発明による入力データのIDCTを行うた
めの方法における基本的なステップを簡潔に示す図であ
る。
【図2】 本発明によるIDCTシステムの統合化され
簡略化された2段階のアーキテクチャを示すブロック図
である。
【図3】 IDCTシステムの主要な要素を構成する集
積回路の簡略化したブロック図である。
【図4】 図5と合わせたときに主システムの構成要素
の一つに対応する前処理回路を示すブロック図である。
【図5】 図4と合わせたときに主システムの構成要素
の一つに対応する前処理回路を示すブロック図である。
【図6】 図7と合わせたときにIDCTシステムにお
ける共通処理回路を示すブロック図である。
【図7】 図6と合わせたときにIDCTシステムにお
ける共通処理回路を示すブロック図である。
【図8】 図9ないし図11と合わせたときにシステム
の他の主要な構成要素に対応する後処理回路を示すブロ
ック図である。
【図9】 図8及び図10ないし図11と合わせたとき
にシステムの他の主要な構成要素に対応する後処理回路
を示すブロック図である。
【図10】 図8、図9及び図11と合わせたときにシ
ステムの他の主要な構成要素に対応する後処理回路を示
すブロック図である。
【図11】 図8ないし図10と合わせたときにシステ
ムの他の主要な構成要素に対応する後処理回路を示すブ
ロック図である。
【図12】 好ましい実施例のIDCTシステムにおけ
るタイミングと制御信号との関係を示すタイミング図で
ある。
【図13】 好ましい実施例のIDCTシステムにおけ
るタイミングと制御信号との関係を示すタイミング図で
ある。
【図14】 好ましい実施例のIDCTシステムにおけ
るタイミングと制御信号との関係を示すタイミング図で
ある。
【主要部分の符号の説明】 CBLK 共通ブロック PREC 前共通ブロック POSTC1,POSTC2 後共通ブロック
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 7/30 H04N 7/133 Z (72)発明者 ケヴィン ダグラス デウォー イギリス国 ブリストル BS7 8HH ビショップストン バークレイアヴェニ ュー 16 (72)発明者 マーティン ウィリアム サズラン イギリス国 グロウセスターシャー GL 11 6BD ダーズリー スティンチコー ム ウィックレーン ザリディングズ (番地なし)

Claims (55)

    【特許請求の範囲】
  1. 【請求項1】 Nデータ入力語のグループとして配置さ
    れたディジタル信号を周波数から時間表現に変換するた
    めに用いるシステムであって、 共通処理手段(CBLK)が設けられ、該共通処理手段
    は奇数及び偶数番号入力データ語の両方を別々の経路を
    通過させて奇数及び偶数共通処理手段出力値をそれぞれ
    生成するように配置された複数の共通演算素子(BT
    2、BT3、c1s、c3s)を有することを特徴とす
    るシステム。
  2. 【請求項2】 前記システムは、前記入力語の奇数の入
    力語に所定の対にする操作を行い、前記入力語の偶数の
    入力語を前共通出力に伝送するように配置された前共通
    処理手段(PREC)と、 奇数共通処理手段出力値に所定の出力桁移動操作を行っ
    て後処理された奇数値を形成し、後処理された奇数値を
    偶数共通処理手段出力値に算術的に結合し、高位及び下
    位出力語を生成するように配置された後共通処理手段
    (POSTC)とを含み、出力語が入力データ語に対応
    する逆ディスクリートコサイン変換値を含むように成さ
    れていることを特徴とする請求項1に記載のシステム。
  3. 【請求項3】 前記前共通処理手段(PREC)は、前
    記入力語の前記奇数入力語に所定の桁移動操作を行い前
    記入力語の偶数入力語を直接前記前共通出力に伝送する
    ように配置された手段を有することを特徴とする請求項
    2に記載のシステム。
  4. 【請求項4】 前記後共通処理手段(POSTC)は前
    記奇数共通処理手段出力値にのみ所定の出力桁移動操作
    を行うように配置された手段を有することを特徴とする
    請求項2又は3に記載のシステム。
  5. 【請求項5】 前記前共通処理手段に接続され、N入力
    データ語の各グループをソートして前記奇数及び偶数番
    号入力語にするための手段を有する制御装置(CNT
    L)を有することを特徴とする請求項2、3又は4に記
    載のシステム。
  6. 【請求項6】 前記前共通処理手段(PREC)はN/
    2前共通入力及びN/2前共通出力を有し、前記共通処
    理手段(CBLK)は前記N/2前共通出力に接続され
    たN/2共通入力及びN/2共通出力を有し、前記後共
    通処理手段(POSTC)は前記N/2共通出力に接続
    されたN/2後共通入力及びシステム出力を形成するN
    /2後共通出力を有することを特徴とする請求項2から
    5の何れか一つに記載のシステム。
  7. 【請求項7】 選択された内部データ語の所定のビット
    を強制的に所定の二進値にするように配置された手段を
    含み、所定のテスト入力データセットに対してシステム
    の統計的精度が改善されるように成されていることを特
    徴とする請求項2から6の何れか一つに記載のシステ
    ム。
  8. 【請求項8】 前記選択された内部データ語は前記後処
    理された奇数値及び偶数共通出力であることを特徴とす
    る請求項7に記載のシステム。
  9. 【請求項9】 前記前共通手段(PREC)は最下位入
    力データラインに接続され前記最下位奇数入力データ語
    を所定の桁移動係数で乗算する単一の桁移動乗算器(R
    2MUL)を含むことを特徴とする請求項2から8の何
    れか一つに記載のシステム。
  10. 【請求項10】 前記所定の桁移動係数は2の平方根で
    あることを特徴とする請求項9に記載のシステム。
  11. 【請求項11】 前記前共通処理手段(PREC)は前
    記奇数入力データ語の所定のデータ語を対にして加算し
    対にされた入力データ語を生成する複数の加算器(P1
    A、P2A、P3A)を含むことを特徴とする請求項2
    から10の何れか一つに記載のシステム。
  12. 【請求項12】 前記前共通処理手段は更に、前記対に
    された入力データ語及び前記偶数入力データ語を交互に
    ロードし、ラッチするように配置された複数の前共通出
    力記憶素子(C10L、C54L、C32L、C76
    L)を含むことを特徴とする請求項2から11の何れか
    一つに記載のシステム。
  13. 【請求項13】 前記共通処理手段(CBLK)は選択
    された共通処理手段入力値を所定の三角関数の定数で乗
    算する共通係数乗算器(MULC1S、MULC3S
    3、MULC3S2、MULNC1S)を含むことを特
    徴とする上記の請求項の何れか一つに記載のシステム。
  14. 【請求項14】 前記共通係数乗算器(MULC1S、
    MULC3S3、MULC3S2、MULNC1S)は
    4つ有り、前記共通処理手段入力値の選択された対の各
    々が4つの係数乗算器の対応する対に接続されるように
    配置されていることを特徴とする請求項14に記載のシ
    ステム。
  15. 【請求項15】 a)前記後共通処理手段(POST
    C)は各々が加算モード及び減算モードを有する切り替
    え可能な演算素子(S70A、S61A、S43A、S
    52A)有し、 b)前記後処理された奇数値及び前記偶数共通出力は入
    力として前記切り替え可能な演算素子(S70A、S6
    1A、S43A、S52A)に接続され、 c)前記加算モードにおいて、前記切り替え可能な演算
    素子は前記後処理された奇数値及び前記偶数共通出力の
    合計として前記下位出力語を形成し、 d)前記減算モードにおいて、前記切り替え可能な演算
    素子は前記後処理された奇数値及び前記偶数共通出力の
    差として前記高位出力語を形成することを特徴とする請
    求項2から12、または請求項2に従属した場合の請求
    項13又は14の何れか一つに記載のシステム。
  16. 【請求項16】 a)前記後共通処理手段(POST
    C)は前記偶数共通出力を記憶するように配置された出
    力データラッチの第1の組(Lg0、Lg1、Lg2、
    Lg3)と前記後処理された奇数値を記憶するように配
    置された出力データラッチの第2の組(Lh0、Lh
    1、Lh2、Lh3)を含み、 b)前記第1及び第2の出力データラッチの各々は前記
    切り替え可能な演算素子のそれぞれの入力に接続されて
    いることを特徴とする請求項15に記載のシステム。
  17. 【請求項17】 前記切り替え可能な演算素子(S70
    A、S61A、S43A、S52A)に接続され前記加
    算及び減算モードの間で前記演算素子を切り替えるモー
    ド信号を発生する制御手段(CNTL)を有することを
    特徴とする請求項15又は16に記載のシステム。
  18. 【請求項18】 前記後共通処理手段(POSTC)は
    前記奇数共通処理手段出力値をそれぞれ所定の後共通、
    一定、桁移動値により乗算し、前記後処理された奇数値
    を形成する複数の後共通係数乗算器(d1、d3、d
    5、d7)を含むことを特徴とする請求項2から12及
    び15、16及び17または請求項2に従属した請求項
    13又は14の何れか一つに記載のシステム。
  19. 【請求項19】 前記共通処理手段(CBLK)はクロ
    ック制御されない、純粋論理回路であることを特徴とす
    る上記請求項の何れか一つに記載のシステム。
  20. 【請求項20】 加算器(P1A、P2A、P3A)は
    すべて固定小数点素子であることを特徴とする請求項1
    1、または請求項11に従属した場合の請求項12から
    19の何れか一つに記載のシステム。
  21. 【請求項21】 前記共通係数乗算器(MULC1S、
    MULC3S3、MULC3S2、MULNC1S)は
    すべて固定小数点素子であることを特徴とする請求項1
    3又は14または請求項13に従属した場合の請求項1
    5から20の何れか一つに記載の記載のシステム。
  22. 【請求項22】 前記切り替え可能な演算素子(S70
    A、S61A、S43A、S52A)はすべて固定小数
    点素子であることを特徴とする請求項15、16又は1
    7、または請求項15に従属した場合の請求項18から
    21の何れか一つに記載のシステム。
  23. 【請求項23】 前記共通演算素子(BT2、BT3、
    c1s、c3s) はすべて固定小数点素子であることを
    特徴とする上記請求項の何れか一つに記載のシステム。
  24. 【請求項24】 すべて固定小数点素子である複数の加
    算器(M5A、P1A、P2A、P3A、BT2、BT
    3、CS0、CS1、CS2、CS3、RES0、RE
    S1、RES2、RES3、H0A、H1A、H2A、
    H3A)及び加算/減算器(S70A、S61A、S4
    3A、S52A)を含むことを特徴とする上記請求項の
    何れか一つに記載のシステム。
  25. 【請求項25】 Nデータ入力語のグループとして配置
    されたディジタル信号を周波数から時間表現に変換する
    システムであって、全ての入力データ語を2の平方根で
    乗算する装置が設けられていることを特徴とする前記シ
    ステム。
  26. 【請求項26】 Nデータ入力語のグループとして配置
    されディジタル信号を周波数から時間表現に変換するシ
    ステムであって、選択された内部データ語の所定のビッ
    トを強制的に所定の二進値にする手段が設けられ、所定
    のテスト入力データセットに対して前記システムの統計
    的精度が改善されていることを特徴とするシステム。
  27. 【請求項27】 前記ディジタル信号を伝送するように
    配置された伝送装置と、前記システムのシステム出力に
    接続された受信装置を含むをことを特徴とする上記請求
    項の何れか一つに記載のシステム。
  28. 【請求項28】 ディジタル信号Nデータ入力語のグル
    ープとしてグループ化することを含む前記ディジタル信
    号を周波数から時間表現に変換する方法であって、 a)前共通処理手段(PREC)において所定の前記入
    力語の奇数の入力語に所定の対にする操作を行い、前記
    入力語の偶数入力語を前共通出力に伝送するステップ
    と、 b)奇数及び偶数番号入力データ語の両方を共通処理手
    段(CBLK)を通した別々の通路を通過させてそれぞ
    れ奇数及び偶数共通処理手段出力値を形成するステップ
    と、 c)後共通処理手段(POSTC)において、前記奇数
    共通手段出力値に所定の出力桁移動操作を行って後処理
    された奇数値を形成し、前記後処理された奇数値を前記
    偶数共通手段出力に算術的に結合して高位及び下位出力
    語を形成するステップを有し、 出力語が前記入力データ語に対応する逆ディスクリート
    コサイン変換値を含むようにしたことを特徴とする前記
    変換方法。
  29. 【請求項29】 a)各グループにおける前記入力デー
    タ語を奇数及び偶数番号入力データ語に分離し、前記奇
    数及び偶数入力データ語を前共通処理回路(PREC)
    に供給し、 b)選択された偶数データ入力語を少なくとも一つの共
    通係数により直接乗算し、 c)前共通処理回路(PREC)において、最下位奇数
    データ入力語を桁移動係数により予め乗算し、 d)選択された奇数入力データ語を対にして加算して対
    にされた入力データ語を形成し、 e)選択された対にされた入力データ語を前記共通係数
    (s)で乗算し、 f)中間の共通データ語を対にしてグループ化して偶数
    及び奇数共通出力データ語を形成し、 g)後共通処理回路(POSTC)において、奇数入力
    データ語に対応する各中間共通データ語に各出力桁移動
    係数を後から乗算し、 h)奇数及び偶数番号入力データ語を別々に処理し、 i)偶数及び奇数出力データ語を対にして加算及び減算
    して低位及び高位出力データ語を形成することを含むこ
    とを特徴とする請求項28に記載の方法。
  30. 【請求項30】 前記データ入力語はN×Nブロックの
    ディジタルピクセル値の周波数表現で伝送されたN2
    素に対応し、 a)複数のテキストピクセルブロックの各々について、
    出力データ語を既知の目標出力値と比較し、 b)実際の出力データ語及び出力値の間のを統計的に分
    析し、 c)選択された内部データ語の選択されたビットを強制
    的に所定の二進値にして任意の出力データ語における期
    待された丸め誤差を最小にすることを特徴とする請求項
    28又は29に記載の方法。
  31. 【請求項31】 すべてのデータ入力語を前記2の平方
    根により乗算することにより該入力語桁移動することを
    特徴とする請求項28から30の何れか一つに記載の方
    法。
  32. 【請求項32】 ディスクリートコサイン変換を表す表
    示を操作して逆ディスクリートコサイン変換を表す表示
    を得る組み合わせにおいて、 ブロック状の一連の入力語の列に対して前記ディスクリ
    ートコサイン変換の前記表示を提供する第1の手段であ
    って、前記入力語は偶数語及び奇数語を構成している第
    1の手段と、 前記奇数語を逐次処理し前記偶数語を逐次処理し、かか
    る処理に応じて表示を得る共通回路を提供する第2の手
    段と、 前記共通回路に先行する回路を提供する第3の手段であ
    って、かかる先行回路は前記ディスクリートコサイン変
    換を表す前記表示に応じて動作して前記偶数語とは異な
    る前記奇数語の処理を行う回路であって、かかる先行回
    路からの前記共通回路へ導入する表示を得る前記第3の
    手段と、 前記共通回路の後に事後回路を提供する第4の手段であ
    って、かかる事後回路は共通回路からの前記表示に応じ
    て動作し、前記偶数及び出力語からのかかる表示の特定
    の組に算術演算を行って前記逆ディスクリートコサイン
    変換に関わる表示を提供する第4の手段とからなること
    を特徴とする前記組み合わせ。
  33. 【請求項33】 前記第2の手段は前記第3の手段から
    の前記表示に前記奇数語及び前記偶数語に共通なパター
    ンにおいて逐次幾何的演算及び算術演算を行うことを特
    徴とする請求項32に記載の組み合わせ。
  34. 【請求項34】 前記第2の手段は前記幾何的操作にお
    いて定数値による乗算を行うことを特徴とする請求項3
    2又は33に記載の組み合わせ。
  35. 【請求項35】 前記第3の手段は前記奇数語及び前記
    偶数語に共通でない回路を提供し、 前記第4の手段は前記奇数語及び前記偶数語に共通でな
    い回路を提供することを特徴とする請求項32、33又
    は34に記載の組み合わせ。
  36. 【請求項36】 前記第3の手段は前記ディスクリート
    コサイン変換での前記偶数語の表示を前記第2の手段に
    直接導入するための第5の手段を含み、前記ディスクリ
    ートコサイン変換での前記奇数語の表示に幾何的及び算
    術演算を行って前記第2の手段へ導入する前記表示を得
    るための第6の手段を含むことを特徴とする請求項32
    から35のいずれか一つに記載の組み合わせ。
  37. 【請求項37】 ディスクリートコサイン変換を表す表
    示を操作して逆ディスクリートコサイン変換を表す表示
    を得る組み合わせにおいて、 ブロック内の一連の入力語の列に対して前記ディスクリ
    ートコサイン変換の前記表示を提供する第1の手段、前
    記入力語は偶数語及び奇数語を構成している前記第1の
    手段と、 前記偶数語における前記表示を前記奇数語における前記
    表示とは異なる方法で処理して第2の手段から第1の表
    示を得る前記第2の手段と、 前記第2の手段からの前記第1の表示に応じて動作し、
    前記第2の手段における前記偶数語からの出力表示及び
    前記第2の手段からの前記奇数語のための出力表示に対
    して同一の処理を行って第2の表示を提供する第3の手
    段と、 前記第3の手段からの第2の表示に応じて動作し奇数及
    び偶数語の関係する対に対して算術及び幾何的操作をか
    かる第2の表示に行い、前記逆ディスクリートコサイン
    変換に関する出力表示出力を得る第4の手段とから成る
    ことを特徴とする組み合わせ。
  38. 【請求項38】 前記第4の手段における前記対の語に
    対する前記算術演算は語の各関係する対における表示の
    合計を求めてかかる対における前記語の一つに対する第
    1の出力表示を与え、かかる関係する対での前記語にお
    ける前記表示の差を求めてかかる対における他の語に対
    する第2の出力表示を与えることを特徴とする請求項3
    7に記載の組み合わせ。
  39. 【請求項39】 前記第3の手段は特定の定数による掛
    け算を含む幾何的演算を提供し、語の対における前記表
    示の合計の計算及び語の対における前記表示の間の差の
    計算を含む算術演算を提供することを特徴とする請求項
    37又は38に記載の組み合わせ。
  40. 【請求項40】 前記第2の手段は語の対における表示
    の合計を含む算術演算を提供し、他の語における表示に
    定数を乗算する掛け算を含む幾何的演算を提供すること
    を特徴とする請求項37、38又は39に記載の組み合
    わせ。
  41. 【請求項41】 前記第3の手段は特定の三角関数の定
    数による前記奇数及び偶数語の特定の語の掛け算を含む
    幾何的演算を提供し、前記奇数語の対及び前記偶数語の
    対応する対における前記表示の合計及び前記奇数語の前
    記対における前記表示及び前記偶数語の前記対応する対
    における前記表示の差を含む算術演算を提供し、 前記第2の手段は前記奇数語の対における表示の合計を
    含む算術演算を提供し、また前記奇数語の他の一つにお
    ける前記表示の定数による掛け算を含む幾何的演算を提
    供し、 前記第4の手段における前記語の対に対する前記算術演
    算は語の各関係する対における前記表示の合計を求めて
    かかる対における前記語の一つに対する第1の出力表示
    を提供し、関係する対における前記語における前記表示
    の差を求めてかかる対における他方の語に対する第2の
    出力表示を提供することを特徴とする請求項37から4
    0にの何れか一つに記載の組み合わせ。
  42. 【請求項42】 前記第4の手段における各対における
    前記語の一つが奇数語を構成し、かかる対における前記
    語の前記他方の語が偶数語を構成することを特徴とする
    請求項37から41の何れか一つに記載の組み合わせ。
  43. 【請求項43】 ディスクリートコサイン変換を表す表
    示を操作して逆ディスクリートコサイン変換を表す表示
    を得る組み合わせにおいて、 ブロック内の一連の入力語の列に前記ディスクリートコ
    サイン変換の前記表示を提供する第1の手段であって、
    前記語は偶数語及び奇数語を構成する前記第1の手段
    と、 前記偶数語及び前記奇数語における前記ディスクリート
    コサイン変換の前記表示を処理して第1の表示を得る第
    2の手段であって、前記第2の手段からの前記第1の表
    示を保持する第1のラッチ手段を含む前記第2の手段
    と、 前記第2の手段のために、前記第2の手段からの前記第
    1の表示の前記第1のラッチ手段へ及び前記第1のラッ
    チ手段からの通過を制御するクロック信号を提供する手
    段と、 前記第2の手段における前記偶数語からの前記第1の表
    示及び前記第2の手段における前記奇数語からの前記第
    1の表示に対して同一の処理を行って第3の手段からの
    第2の表示を生成する第3の手段であって、全てのラッ
    チ手段とは独立に動作する前記第3の手段と、 第2の表示を処理し、前記逆ディスクリートコサイン変
    換に関係する第3の表示を生成する第4の手段であっ
    て、前記クロック信号に応じて動作し前記クロック信号
    の発生に応じて前記第4の手段の動作の時間を制御する
    第2のラッチ手段を含む前記第4の手段とから成ること
    を特徴とする組み合わせ。
  44. 【請求項44】 前記第2の手段は前記ディスクリート
    コサイン変換における前記偶数語の前記表示を前記ディ
    スクリートコサイン変換における前記奇数語の前記表示
    の処理とは異なる方法で処理することを特徴とする請求
    項43に記載の組み合わせ。
  45. 【請求項45】 前記第3の手段は前記奇数語に対する
    前記第1の表示を前記偶数語に対する前記第1の表示と
    は異なる方法で処理することを特徴とする請求項43又
    は44に記載の組み合わせ。
  46. 【請求項46】 前記第3の手段は前記奇数語の特定の
    語及び前記偶数語の対応する語に対する前記第1の表示
    に幾何的計算を行い、前記奇数語の特定の対及び前記偶
    数語の対応する対に対する前記第1の表示に算術的計算
    を行うことを特徴とする請求項43、44又は45に記
    載の組み合わせ。
  47. 【請求項47】 前記第2の手段は前記偶数語における
    前記ディスクリートコサイン変換の前記表示をかかる偶
    数語に対する第1の表示として前記第3の手段に伝達
    し、偶数語の対における前記ディスクリートコサイン変
    換の前記表示に算術計算を行ってかかる偶数語のための
    第1の表示を提供することを特徴とする請求項44に記
    載の組み合わせ。
  48. 【請求項48】 前記第2の手段はまた前記奇数語の個
    々の語における前記ディスクリートコサイン変換の前記
    表示に幾何的計算を行い、その後前記奇数語の対におけ
    る前記ディスクリートコサイン変換の前記表示に前記算
    術計算を行い、 前記第3の手段は前記第1の出力表示の幾何的計算を前
    記奇数語の特定の語及び前記偶数語の対応する語に対す
    る特定の定数を用いて行い、次に前記奇数語の特定の対
    及び前記偶数語の対応する対に対して前記第1の出力表
    示の算術的計算を行うことを特徴とする請求項47に記
    載の組み合わせ。
  49. 【請求項49】 前記特定の定数は三角関数の値及び2
    の平方根(√2)を構成することを特徴とする請求項4
    8に記載の組み合わせ。
  50. 【請求項50】 前記第4の手段は一方が偶数語を構成
    し他方が奇数語を構成する特定の語の対について第2の
    表示の加算を行い、前記特定の語の対における前記表示
    の間の減算を行うことを特徴とする請求項45に記載の
    組み合わせ。
  51. 【請求項51】 ディスクリートコサイン変換を表す二
    進表示を操作して逆ディスクリートコサイン変換を表す
    二進表示を得る、前記ディスクリートコサイン変換を表
    す前記二進表示は2の平方根(√2)を構成する一定値
    を表す二進係数を含んでいる組み合わせであって、 ブロック内の一連の入力語の列に前記ディスクリートコ
    サイン変換の前記二進表示を提供する第1の手段であっ
    て、前記入力語は偶数語及び奇数語を構成する前期第1
    の手段と、 前記ディスクリートコサイン変換の前記二進表示を操作
    して前記逆ディスクリートコサイン変換に関し、2の平
    方根(√2)を構成する前記二進係数を含む二進出力表
    示を得る第2の手段と、 前記二進出力表示を二進位置だけシフトさせて前記二進
    出力表示の係数二(2)による分割を得て前記逆ディス
    クリートコサイン変換に関係する二進表示を得る手段と
    からなることを特徴とする前記組み合わせ。
  52. 【請求項52】 前記第2の手段は前記奇数語または前
    記偶数語のどちらかを構成する語のグループにおける前
    記表示を処理し、前記奇数語及び前記偶数語の他方を構
    成する語のグループにおける前記表示を処理する手段を
    含むことを特徴とする請求項51に記載の組み合わせ。
  53. 【請求項53】 前記第2の手段は、前記偶数及び奇数
    語において前記ディスクリートコサイン変換を表す前記
    二進表示を個々に処理し、第1の二進表示を得る前共通
    処理手段を含み、前記前共通処理手段は前記語の一つに
    おける前記ディスクリートコサイン変換の前記二進表示
    を2の平方根(√2)を構成する二進係数で乗算する手
    段を含み、 前記第2の手段はまた始めに前記奇数語または前記偶数
    語を構成するグループ内の前記第1の二進表示を特定の
    関連で処理し、次に前記偶数語及び前記奇数語の他方を
    構成するグループ内の前記第1の二進表示を前記特定の
    関連で処理する共通処理手段を含み、前記共通処理手段
    は前記奇数語の特定の語及び前記偶数語の対応する語に
    おける前記第1の二進表示を2の平方根を構成する前記
    二進係数で乗算する手段を含むことを特徴とする請求項
    51又は52に記載の組み合わせ。
  54. 【請求項54】 前記第2の手段における前記共通処理
    手段はまた前記奇数語の特定の語及び前記偶数語の対応
    する語における前記第1の二進表示を一定の三角関数の
    値を構成する二進係数で乗算する手段を含むことを特徴
    とする請求項53に記載の組み合わせ。
  55. 【請求項55】 前記共通処理手段からの異なる語にお
    ける前記表示は個々の二進有意性を有し、 前記第2の手段は前記共通処理手段からの前記二進表示
    を処理する後共通処理手段を含み、前記後共通処理手段
    は前記共通処理手段からの高い二進有意性を有する語か
    らの前記表示を前記共通処理手段からの低い有意性を有
    する語とは異なる方法で処理する手段を有することを特
    徴とする請求項53又は54に記載の組み合わせ。
JP5157003A 1992-06-26 1993-06-28 周波数から時間領域への変換方法及び装置 Expired - Fee Related JP2962970B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
SG1996002719A SG45281A1 (en) 1992-06-26 1992-06-26 Method and arrangement for transformation of signals from a frequency to a time domain
GB923059273 1992-06-26
EP92305927A EP0575675B1 (en) 1992-06-26 1992-06-26 Method and apparatus for transformation of signals from a frequency to a time domaine

Publications (2)

Publication Number Publication Date
JPH076161A true JPH076161A (ja) 1995-01-10
JP2962970B2 JP2962970B2 (ja) 1999-10-12

Family

ID=26132088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5157003A Expired - Fee Related JP2962970B2 (ja) 1992-06-26 1993-06-28 周波数から時間領域への変換方法及び装置

Country Status (5)

Country Link
US (4) US5479364A (ja)
EP (1) EP0575675B1 (ja)
JP (1) JP2962970B2 (ja)
CA (1) CA2099146C (ja)
SG (1) SG45281A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016526854A (ja) * 2013-07-12 2016-09-05 クゥアルコム・インコーポレイテッドQualcomm Incorporated 水平および垂直変換の並行処理

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5878273A (en) 1993-06-24 1999-03-02 Discovision Associates System for microprogrammable state machine in video parser disabling portion of processing stages responsive to sequence-- end token generating by token generator responsive to received data
EP0720103A1 (en) * 1994-12-29 1996-07-03 Daewoo Electronics Co., Ltd Two-dimensional inverse discrete cosine transform circuit
US5668748A (en) * 1995-04-15 1997-09-16 United Microelectronics Corporation Apparatus for two-dimensional discrete cosine transform
US5701263A (en) * 1995-08-28 1997-12-23 Hyundai Electronics America Inverse discrete cosine transform processor for VLSI implementation
US5805482A (en) * 1995-10-20 1998-09-08 Matsushita Electric Corporation Of America Inverse discrete cosine transform processor having optimum input structure
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
US5867601A (en) * 1995-10-20 1999-02-02 Matsushita Electric Corporation Of America Inverse discrete cosine transform processor using parallel processing
US6421695B1 (en) 1995-10-28 2002-07-16 Lg Electronics Inc. Apparatus for implementing inverse discrete cosine transform in digital image processing system
KR0175352B1 (ko) * 1995-12-21 1999-04-01 정선종 8x8 블럭과 2개의 4x8 블럭을 처리하는 이산여현 변환회로
US5754456A (en) * 1996-03-05 1998-05-19 Intel Corporation Computer system performing an inverse cosine transfer function for use with multimedia information
US5754457A (en) * 1996-03-05 1998-05-19 Intel Corporation Method for performing an inverse cosine transfer function for use with multimedia information
US5854757A (en) * 1996-05-07 1998-12-29 Lsi Logic Corporation Super-compact hardware architecture for IDCT computation
JPH1063646A (ja) * 1996-08-23 1998-03-06 Nec Corp 2次元逆離散コサイン変換回路
US5883823A (en) * 1997-01-15 1999-03-16 Sun Microsystems, Inc. System and method of a fast inverse discrete cosine transform and video compression/decompression systems employing the same
US6134270A (en) 1997-06-13 2000-10-17 Sun Microsystems, Inc. Scaled forward and inverse discrete cosine transform and video compression/decompression systems employing the same
US6504871B1 (en) * 1997-07-31 2003-01-07 Lsi Logic Corporation IDCT processor for use in decoding MPEG compliant video bitstreams meeting 2-frame and letterboxing requirements
US6021228A (en) * 1997-10-14 2000-02-01 Netscape Communications Corporation Integer-only short-filter length signal analysis/synthesis method and apparatus
US6141456A (en) * 1997-12-31 2000-10-31 Hitachi America, Ltd. Methods and apparatus for combining downsampling and inverse discrete cosine transform operations
SE9802286L (sv) * 1998-06-26 1999-12-27 Ericsson Telefon Ab L M Effektiv nedskalning av DCT-komprimerade bilder
US6421696B1 (en) 1999-08-17 2002-07-16 Advanced Micro Devices, Inc. System and method for high speed execution of Fast Fourier Transforms utilizing SIMD instructions on a general purpose processor
US8335994B2 (en) * 2000-02-25 2012-12-18 Salmon Alagnak Llc Method and apparatus for providing content to a computing device
US6832232B1 (en) 2000-07-10 2004-12-14 Advanced Micro Devices, Inc. Dual-block inverse discrete cosine transform method
US6742010B1 (en) 2000-07-10 2004-05-25 Advanced Micro Devices, Inc. Dual-block discrete consine transform method
US6973469B1 (en) 2001-02-01 2005-12-06 Advanced Micro Devices, Inc. Two-dimensional discrete cosine transform using SIMD instructions
US7123655B2 (en) 2001-08-09 2006-10-17 Sharp Laboratories Of America, Inc. Method for reduced bit-depth quantization
KR100451731B1 (ko) * 2001-12-18 2004-10-08 엘지전자 주식회사 역 이산 코사인 변환 장치
CA2684418C (en) 2002-02-13 2012-07-31 Herman Miller, Inc. Back support structure
US7007055B2 (en) * 2002-03-12 2006-02-28 Intel Corporation Method of performing NxM Discrete Cosine Transform
US20050196055A1 (en) * 2004-03-04 2005-09-08 Sheng Zhong Method and system for codifying signals that ensure high fidelity reconstruction
US8335811B2 (en) * 2004-03-04 2012-12-18 Broadcom Corporation Method and system for high fidelity IDCT and DCT algorithms
CA2548927C (en) 2004-09-07 2012-03-20 Sunnen Products Company Honing feed system having full control of feed force, rate, and position and method of operation of the same
US8277280B2 (en) 2004-09-07 2012-10-02 Sunnen Products Company Honing feed system and method employing rapid tool advancement and feed force signal conditioning
BR122019024992B1 (pt) 2006-12-12 2021-04-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e. V. Codificador, decodificador e métodos para codificação e decodificação de segmentos de dados representando uma corrente de dados de domínio de tempo
JP4536109B2 (ja) * 2007-12-26 2010-09-01 富士通株式会社 半導体装置および信号処理方法
USD653061S1 (en) 2010-04-13 2012-01-31 Herman Miller, Inc. Chair
USD657166S1 (en) 2010-04-13 2012-04-10 Herman Miller, Inc. Chair
USD637423S1 (en) 2010-04-13 2011-05-10 Herman Miller, Inc. Chair
USD652657S1 (en) 2010-04-13 2012-01-24 Herman Miller, Inc. Chair
USD639091S1 (en) 2010-04-13 2011-06-07 Herman Miller, Inc. Backrest
US8449037B2 (en) 2010-04-13 2013-05-28 Herman Miller, Inc. Seating structure with a contoured flexible backrest
USD650206S1 (en) 2010-04-13 2011-12-13 Herman Miller, Inc. Chair
EP2743922A1 (en) * 2012-12-12 2014-06-18 Thomson Licensing Method and apparatus for compressing and decompressing a higher order ambisonics representation for a sound field

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3676802A (en) * 1971-06-21 1972-07-11 Us Navy Submarine propeller cavitation noise simulator
FR2599872B1 (fr) * 1986-06-06 1988-07-29 Thomson Csf Dispositifs de calcul de transformees cosinus mono-dimensionnelles, et dispositif de codage et dispositif de decodage d'images comportant de tels dispositifs de calcul
US4829465A (en) * 1986-06-19 1989-05-09 American Telephone And Telegraph Company, At&T Bell Laboratories High speed cosine transform
IT1207346B (it) * 1987-01-20 1989-05-17 Cselt Centro Studi Lab Telecom Sformata coseno discreta a coeffi circuito per il calcolo della tra cienti quantizzati di campioni di segnale numerico
NL8700843A (nl) * 1987-04-10 1988-11-01 Philips Nv Televisie-overdrachtsysteem met transformcoding.
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
US5146326A (en) * 1989-11-14 1992-09-08 Fujitsu Limited Coded picture information decoding apparatus having means for improving picture distortion
US5107345A (en) * 1990-02-27 1992-04-21 Qualcomm Incorporated Adaptive block size image compression method and system
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
US5253078A (en) * 1990-03-14 1993-10-12 C-Cube Microsystems, Inc. System for compression and decompression of video data using discrete cosine transform and coding techniques
CA2044051A1 (en) * 1990-06-29 1991-12-30 Paul C. Wade System and method for error detection and reducing simultaneous switching noise
US5202847A (en) * 1990-07-31 1993-04-13 Inmos Limited Digital signal processing
US5189526A (en) * 1990-09-21 1993-02-23 Eastman Kodak Company Method and apparatus for performing image compression using discrete cosine transform
JPH04242860A (ja) * 1990-12-28 1992-08-31 Sony Corp 演算装置
JPH04236664A (ja) * 1991-01-18 1992-08-25 Sony Corp 演算回路
US5257213A (en) * 1991-02-20 1993-10-26 Samsung Electronics Co., Ltd. Method and circuit for two-dimensional discrete cosine transform
US5870497A (en) * 1991-03-15 1999-02-09 C-Cube Microsystems Decoder for compressed video signals
JP2866754B2 (ja) * 1991-03-27 1999-03-08 三菱電機株式会社 演算処理装置
EP0514663A3 (en) * 1991-05-24 1993-07-14 International Business Machines Corporation An apparatus and method for motion video encoding employing an adaptive quantizer
US5168375A (en) * 1991-09-18 1992-12-01 Polaroid Corporation Image reconstruction by use of discrete cosine and related transforms
JP3323950B2 (ja) * 1992-03-17 2002-09-09 サン・マイクロシステムズ・インコーポレーテッド デジタル画像処理システムでidctを実施する方法及びそのためのidctプロセッサ
KR0160610B1 (ko) * 1992-04-07 1999-01-15 강진구 가변장부호화에 의한 영상압축방법과 신장방법 및 그 장치
CA2096584A1 (en) * 1992-05-28 1993-11-29 Frank H. Liao Variable length code decoder for video decompression operations
US5253055A (en) * 1992-07-02 1993-10-12 At&T Bell Laboratories Efficient frequency scalable video encoding with coefficient selection
US5345408A (en) * 1993-04-19 1994-09-06 Gi Corporation Inverse discrete cosine transform processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016526854A (ja) * 2013-07-12 2016-09-05 クゥアルコム・インコーポレイテッドQualcomm Incorporated 水平および垂直変換の並行処理

Also Published As

Publication number Publication date
JP2962970B2 (ja) 1999-10-12
EP0575675B1 (en) 1998-11-25
CA2099146A1 (en) 1993-12-27
EP0575675A1 (en) 1993-12-29
CA2099146C (en) 1998-12-08
SG45281A1 (en) 1998-01-16
US5590067A (en) 1996-12-31
US5479364A (en) 1995-12-26
US5594678A (en) 1997-01-14
US5596517A (en) 1997-01-21

Similar Documents

Publication Publication Date Title
JP2962970B2 (ja) 周波数から時間領域への変換方法及び装置
KR100308723B1 (ko) 올림수-보존 가산기회로 및 복수의 이진 데이터 비트 합산 방법
US7117236B2 (en) Parallel adder-based DCT/IDCT design using cyclic convolution
JPH0526229B2 (ja)
JPH08235159A (ja) 逆コサイン変換装置
US7308471B2 (en) Method and device for performing operations involving multiplication of selectively partitioned binary inputs using booth encoding
JPH11501420A (ja) Jpeg画像圧縮標準を実現するvlsi回路構造体
JPH06139268A (ja) 高速フーリエ変換用ディジット反転のためのアドレス発生器及び反転フィールドシーケンス発生器並びにディジット反転シーケンス信号発生方法
EP1018082A1 (en) Variable block size 2-dimensional inverse discrete cosine transform engine
JPH0715346A (ja) 2ベクトルのスカラ積を決定するためのデジタル信号の符号化方法および回路
Smith et al. Radix-4 modules for high-performance bit-serial computation
EP0871133A1 (en) Method and arrangement for transformation of signals from a frequency to a time domain
Kim et al. Digit-serial modular multiplication using skew-tolerant domino CMOS
KR100575285B1 (ko) 고속의 저전력 이산 코사인 변환 장치 및 방법
Teja et al. Implementation of vedic multiplier using modified architecture by routing rearrangement for high-optimization
CA2221181A1 (en) Method and arrangement for transformation of signals from a frequency to a time domain
Arambepola VLSI circuit architectures for Fermat number arithmetic in DSP applications
JP3575991B2 (ja) 直交変換回路
SU1116427A1 (ru) Множительное устройство
Kiran et al. Design and Analysis of a Novel High Speed Adder Based Hardware Efficient Discrete Cosine Transform (DCT)
Kaushik et al. Design of RNS Converters for moduli sets with Dynamic Ranges up to 6n-bit
CN112449199A (zh) 一种并行位矢量变换部分积相加的一维dct/idct变换器
Abdel-Raheem et al. VLSI array processors for linear-phase FIR filters
Kovac et al. A prototype VLSI chip architecture for JPEG image compression
KALINTHA et al. Performance Evaluation of FIR Filter using Faithfully Truncated Multiplier

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080806

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20080806

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090806

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090806

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100806

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 12

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 12

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 12

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 12

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 12

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120806

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees