(57)【要約】      （修正有）【課題】高速低電力逆離散コサイン変換計算をゼロ値のＤＣＴ係数の相対的出現を利用することによって実行する装置を提供する。【解決手段】この発明は、２つの１次元逆離散コサイン変換（１−Ｄ  ＩＤＣＴ）を実行することによって、バッテリー駆動の移動体通信におけるＭＰＥＧ圧縮解除にとって重要である、高速かつ低電力の２次元逆離散コサイン変換計算を実現する。第１の１−Ｄ  ＩＤＣＴが離散コサイン変換された係数データマトリックスの行において実行され、次に既に１−Ｄ  ＩＤＣＴ変換されたデータマトリックスの列においてゼロ値データの出現を利用する可変速度で実行される。１−Ｄ  ＩＤＣＴは、割り当てられた時間内の実現された高速１−Ｄ  ＩＤＣＴアルゴリズムに対応する、一連の最大演算計算ステップによって計算される。【選択図】  図１
2004206535.tif 000002
【特許請求の範囲】
【請求項１】
２つの１次元逆離散コサイン変換（１−Ｄ  ＩＤＣＴ）を、ゼロ値入力データの出現を利用する可変速度で、先ず離散コサイン変換された（ＤＣＴ）係数の行において、次に既に１−Ｄ  ＩＤＣＴ変換されたデータの列において、実行することによって、２次元逆離散コサイン変換（２−Ｄ  ＩＤＣＴ）を実行する装置であって、
ｎ行ＤＣＴ係数マトリックスの各々において１−Ｄ  ＩＤＣＴを、および前記既に１−Ｄ  ＩＤＣＴ変換されたデータのｎ列の各々において前記１−Ｄ  ＩＤＣＴを実行することによって、ＤＣＴ係数マトリックスのｎ×ｎブロックにおいて２−Ｄ  ＩＤＣＴに対して全順序制御を実行する２−Ｄ  ＩＤＣＴ順序付け手段と、
ゼロ値入力データ分配のいくつかのパターンに対する、かつ全てのゼロ値入力データに対する、計算ステップのスキップによって可変速度で１−Ｄ  ＩＤＣＴを処理するゼロ値入力データ従属１−Ｄ  ＩＤＣＴ可変速度処理手段であって、全ての該計算ステップは全てをゼロにセットする信号を用いてスキップされて、データ記憶手段の対応する行を全てゼロ値であるようにセットし、全てのゼロ値データを出力する手段と、
入力データをＤＣＴ係数のｎ×ｎブロックの行、または既に１−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの列から１−Ｄ  ＩＤＣＴ処理手段に多重送信するデータイン多重化手段と、
１−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの対応する行として、または２−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの列として、前記１−Ｄ  ＩＤＣＴ処理手段の計算されたデータを逆多重化するデータアウト逆多重化手段と、
前記ＤＣＴ係数の１−Ｄ  ＩＤＣＴ変換されたデータを格納する、ｎ×ｎブロックのデータ記憶手段とを備える装置。
【請求項２】
１−Ｄ  ＩＤＣＴ処理手段へのゼロ値入力データ分配のいくつかのパターン、およびスキップされ得るそれらの対応する計算ステップを識別するスキップ計算ステップ識別手段と、
計算ステップのスキップによって、算術計算手段においてデータの転送を制御するデータ転送制御信号を発生するデータ転送制御信号発生手段と、
１−Ｄ  ＩＤＣＴデコーディングフローの全ての計算ステップに対して、算術計算手段においてデータフローを制御する制御信号を発生するデータフロー制御信号発生手段と、
複数の算術装置、乗算器および加算器から成り、データを前記スキップされた計算ステップから現行の計算ステップへ転送する機構を備える算術計算手段と、或るゼロ値入力データ分配に基づいて可変数の計算ステップによって、１−ＤＩＤＣＴ処理を実行するために必要な一連の計算ステップを表わす一連の計算ステップ表示信号を発生する計算ステップ表示発生手段とを備える、請求項１に記載のゼロ値データ従属１−Ｄ  ＩＤＣＴ可変速度処理手段。
【請求項３】
１−Ｄ  ＩＤＣＴ処理手段の各入力データに対してゼロ値データを検出し、また１−Ｄ  ＩＤＣＴ処理手段に対して全てのゼロ値入力データも検出するゼロ検出手段と、
ゼロ値入力データ分配のいくつかのパターンに基づいてスキップされ得る計算ステップを識別する計算ステップスキップ識別手段と、
計算ステップをスキップした後に、次の計算ステップ用の計算ステップ表示を発生する計算ステップを発生する手段とを備える、請求項２に記載のスキップ計算ステップ識別手段。
【請求項４】
１−Ｄ  ＩＤＣＴ変換の算術演算を実行する、複数の算術装置、乗算器および加算器と、
前の計算ステップの計算結果と１−Ｄ  ＩＤＣＴ処理された出力データとを格納するレジスタから成るレジスタファイルと、
レジスタファイル内の算術装置およびレジスタ用のオペランドデータを算術計算手段への入力データおよび前の計算ステップの登録データから多重化するオペランドデータ多重化手段と
スキップされた計算ステップの前記登録データを現行の計算ステップへ転送するデータ転送多重化手段とを備える、請求項２に記載の算術計算手段。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、低電力かつ高速の逆離散コサイン変換（ＩＤＣＴ）計算を専用ハードウェアの実現によって実行する装置に適用できる。本発明の典型的な用途は、バッテリー駆動の移動体通信におけるＭＰＥＧビットストリームデコーディングのような、ディジタルビデオデコーディング装置である。
【０００２】
【従来の技術】
離散コサイン変換（ＤＣＴ）は、ＭＰＥＧビデオ規格のような、空間定義域の画素情報のブロックをＤＣＴ定義域のＤＣＴ係数に変換して伝送および記憶用に画像のより圧縮した表現を得るビデオ圧縮で広く使用される。２次元逆離散コサイン変換（２−Ｄ  ＩＤＣＴ）が、空間定義域のブロック画素情報を得るためにデコーディング処理によって実行される必要があるであろう。２−Ｄ  ＩＤＣＴは分離可能な変換であり、したがって２つの１次元逆離散コサイン変換（１−ＤＩＤＣＴ）を実行することによって、先ずＤＣＴ係数のブロックの行において１−Ｄ  ＩＤＣＴを実行することによって、それから前に１−Ｄ  ＩＤＣＴ変換された結果の列において別の１−Ｄ  ＩＤＣＴを実行することによって得られる。１−Ｄ  ＩＤＣＴが、１−Ｄ  ＩＤＣＴ式の直接計算に比べると、より少数の算術演算、乗算、および加算で以って計算され得るように、種々の高速アルゴリズムが開発された。これらの高速アルゴリズムは並列アーキテクチャで通常実現されて、いくつかの算術演算を並列に実行して、目標応用、例えば、ＭＰＥＧ２ＭＰ＠ＭＬまたはＭＰＥＧ４シンプルプロファイルのリアルタイム処理のために十分に速く処理速度を大きくする。２−Ｄ  ＩＤＣＴは依然として計算が集中したステップの１つであり、引いては算術演算の数の減少後でさえも、ＭＰＥＧデコーディングにおける電力消費の多いステップである。
【０００３】
【発明が解決しようとする課題】
圧縮ピクチャに対するＤＣＴ係数のｎ×ｎブロックの大部分が、多数のゼロ値係数、および５つまたは６つ、低空間周波数範囲に通常位置付けられる少数の非ゼロ値係数から成ることが留意される。これによってまた、かなりの数の１−ＤＩＤＣＴ変換された中間結果がゼロ値になるであろう。これらのゼロ値データで算術演算を実行しても、計算時間および電力は効率的にならないであろう。
【０００４】
【課題を解決するための手段】
高速１−Ｄ  ＩＤＣＴアルゴリズムが、乗算および加算の数を減らして、複数の乗算器および加算器から成る計算手段で実行される。計算手段は、算術演算、乗算および加算が並列に実行され、それらの結果が１クロック期間内に格納される１段演算実行装置である。利用できる乗算器および加算器の数が、最大数の乗算および加算演算が１つの計算ステップで並列に実行されることを可能にする。
１−Ｄ  ＩＤＣＴが、データを計算手段に渡し、一連の計算ステップを行なうことによって実行される。
【０００５】
各ステップの計算時間がＶＬＳＩプロセス技術の進歩によって小さくなるにつれて、その目標応用のリアルタイムデコーディング用のビデオデコーディング装置による１−Ｄ  ＩＤＣＴ計算に割り当てられた期限内に、見込まれる実行ステップ、クロックサイクルの最大数が増える。本装置は、１−Ｄ  ＩＤＣＴを見込まれる最大数の計算ステップで実行するために必要な最小数の算術演算装置から成る。これによって、現在並列に実行される、もっと多い１−Ｄ  ＩＤＣＴ算術演算が、各計算ステップにおいてより少数の算術演算によって順次に実行されることが可能になった。例えば、１６の乗算が実現された１−Ｄ  ＩＤＣＴ高速アルゴリズムに必要であり、見込まれる計算ステップの最大数は１６より多い場合は、１６の乗算全てを１６の計算ステップで順次に計算する単一の乗算器だけが必要である。各計算ステップで実行される算術演算を減らすことによって、必要なハードウェア算術演算装置の量が減り、計算ステップをスキップする確率が大きくなる。
【０００６】
２−Ｄ  ＩＤＣＴ計算用の本発明装置が、ＤＣＴ係数用にゼロ値データ、および１−Ｄ  ＩＤＣＴ計算中に１−Ｄ  ＩＤＣＴ変換された中間データを利用して、必要な時間および電力を減らす。１−Ｄ  ＩＤＣＴは、実現された１−Ｄ  ＩＤＣＴ高速アルゴリズムにもとづく算術計算ステップの所定のシーケンスによって計算される。１−Ｄ  ＩＤＣＴによって計算されるデータが、ゼロ値データの存在を検出するために先ず解析される。そしてこの情報は、計算ステップがゼロ値データで実行されることになるのでどんな算術演算も必要ではない、計算ステップを識別するために使用される。そしてこれらの計算ステップはスキップされ、これらの計算ステップのデータが算術演算のために次の計算ステップに転送される。１−Ｄ  ＩＤＣＴのための全ての入力データがゼロ値であると検出される場合は、どんな計算も行なわれる必要がなく、１−Ｄ  ＩＤＣＴ変換されたデータ用の記憶手段がデータ記憶手段への信号によって直接ゼロ値に設定され得る。
【０００７】
【作用】
この装置は、２つの１−Ｄ  ＩＤＣＴ演算を、先ずＤＣＴ係数のｎ×ｎブロックの各行で、次に１−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの各列で実行することによって、高速低電力２−Ｄ  ＩＤＣＴを実行する。この装置は、中間の１−Ｄ  ＩＤＣＴ変換されたデータを格納し移送するデータ記憶手段のｎ×ｎブロックから成る。
【０００８】
１−Ｄ  ＩＤＣＴ処理手段は、定義済み数の算術計算ステップによって１−ＤＩＤＣＴアルゴリズムを実行する。１−Ｄ  ＩＤＣＴ処理手段は、計算のために入力されたゼロ値データ分配パターンのいくつかのタイプを識別し、この情報を用いて、全ての算術演算がゼロ値データで実行されるいくつかの算術計算ステップをスキップすることが可能である。スキップ計算ステップの識別用に使用されるゼロ値データ分配のパターンが、ゼロ値データの統計的分配に基づいて、かつまたゼロ値データ分配のパターンはスキップされる計算ステップの数において重大なリターンを生ずるであろうかどうかに基づいて得られる。これは、計算ステップをスキップするのに必要な識別およびデータ転送を支持するのに必要なハードウェアの量を最小限にするためである。算術計算手段は、スキップされた計算ステップからのデータが現行の計算ステップの算術演算のために転送されるデータ転送機構を有する。
【０００９】
【発明の実施の形態】
高速低電力２−Ｄ  ＩＤＣＴを実行する、本発明の好ましい実施形態が、付帯図面を参照して詳細に後述されるであろう。図１が、この実施形態によるＤＣＴ係数のｎ×ｎブロックで２−Ｄ  ＩＤＣＴを実行する装置の構成のブロック図を示す。図１に示されたように、この装置は、２−Ｄ  ＩＤＣＴ順序付け手段（１００）と、データイン多重化手段（１０１）と、データアウト逆多重化手段（１０２）と、ゼロ値データ従属１−Ｄ  ＩＤＣＴ可変速度処理手段（１０３）と、ｎ×ｎブロックのデータ記憶手段（１０４）とを備える。
【００１０】
この実施形態によって２−Ｄ  ＩＤＣＴを実行する演算が図１を参照して説明される。先ず、ＤＣＴ係数のｎ×ｎブロックの１行（１１０）がこの装置に入力され、それから１−Ｄ  ＩＤＣＴ処理手段（１０３）にデータイン多重化手段（１０１）によって多重送信される。１−Ｄ  ＩＤＣＴの計算されたデータ（１１２）がデータアウト逆多重化手段（１０２）によって逆多重化されて、データ記憶手段（１０４）に格納される。これはｎ回行なわれて、２−Ｄ  ＩＤＣＴ順序付け手段（１００）の制御の下でＤＣＴ係数のｎ行全てを計算して１−Ｄ  ＩＤＣＴ変換されたデータにする。
【００１１】
１−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの１列（１１４）がデータ記憶手段（１０４）から読取られ、そして計算手段にデータイン多重化手段（１０１）によって多重送信される。計算されたデータ（１１２）は、１−Ｄ  ＩＤＣＴ処理手段（１０３）の出力に接続されたデータアウト逆多重化手段（１０２）によって本装置の出力に逆多重送信される。これはｎ回実行されて、２−ＤＩＤＣＴ順序付け手段（１００）の制御の下で２−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの１列（１１５）を出力する。
【００１２】
２−Ｄ  ＩＤＣＴ順序付け手段（１００）は装置用の全体制御であり、それはインタフェースハンドシェーク信号を他のビデオデコーディングブロックと共に有する。例えば、ＤＣＴ係数のｎ×ｎブロックの行（１１０）を装置に受け入れる、かつ２−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの列（１１５）を装置の外に転送するハンドシェーク信号。２−Ｄ  ＩＤＣＴ順序付け手段は、１−Ｄ  ＩＤＣＴ開始信号（１１７）によって１−Ｄ  ＩＤＣＴの処理を起動し、処理が１−Ｄ  ＩＤＣＴ終了信号（１１８）によって終わる場合に通知されるであろう。それはまた、１−Ｄ  ＩＤＣＴ処理手段へのデータ入力を制御する、かつ計算されたデータをデータ記憶手段（１０４）へ逆多重送信するか、またはそれを２−Ｄ変換されたデータの１列（１１５）として出力する、行または列選択信号（１１９）を与える。
【００１３】
１−Ｄ  ＩＤＣＴは、１−Ｄ  ＩＤＣＴ処理手段（１０３）によって多重化データ（１１１）において多重化データのゼロ値データ分配に依存する可変速度で実行される。１−Ｄ  ＩＤＣＴ処理手段は、多重化データ（１１１）をゼロ値に対して解析するであろう、そして解析結果がいくつかの算術計算ステップをスキップするために使用される。ＤＣＴ係数の全ての多重化データ（１１１）がゼロ値である場合は、１−Ｄ  ＩＤＣＴ処理手段は信号、全てをゼロにセットする信号（１１７）を発生し、データ記憶手段（１０４）へ送って、１−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの対応する行をゼロにセットするか、またはどんな計算も無しにデータ記憶手段のｎ×ｎブロックの対応する行に書き込まれる全てのゼロ入力値を転送する。１−Ｄ  ＩＤＣＴ変換されたデータ（１１４）の列１−Ｄ  ＩＤＣＴ変換を行なう場合に、入力値が全てゼロであることが検出される場合は、それらはデータアウト逆多重化手段（１０２）によって送られて、装置の外へ転送されるであろう。
【００１４】
図２に示された別の実施形態が、図１に示されたゼロ値データ従属１−Ｄ  ＩＤＣＴ可変速度処理手段を示す。
【００１５】
スキップ計算ステップ識別手段（２００）が多重化データ（２１１）を解析して、ゼロ値データ検出のために算術計算手段（２０１）に送る。そして解析結果が、算術演算がゼロ値データにおいて実行されるようにスケジュールされている時にスキップされ得る計算ステップを識別するために使用される。現行の計算ステップ表示信号（２１２）に基づいて、スキップ計算ステップ識別手段（２００）は、スキップ計算ステップ信号（２１３）および次の計算ステップ表示信号（２１４）を発生するであろう。スキップ計算ステップ識別手段（２００）はまた、全ての計算ステップをスキップするために全てのゼロ値入力データの存在を検出し、全てのゼロ値多重化データ（２１１）を計算されたデータ（２１５）として送ることが可能であり、全てをゼロにセットする信号（２１６）を発生する。
【００１６】
データ転送制御信号発生手段（２０１）が、算術計算手段（２０２）内のデータの転送を計算ステップのスキップによって制御するデータ転送制御信号を発生するであろう。データ転送制御信号（２１７）が現行の計算ステップ表示（２１２）、次の計算ステップ表示（２１４）、およびスキップ計算ステップ信号（２１３）に基づいて発生される。
【００１７】
データフロー制御信号発生手段（２０３）が、１−Ｄ  ＩＤＣＴデコーディングフローの全ての計算ステップに対して算術計算手段（２０２）内のデータフローを制御する制御信号（２１８）を発生するであろう。これらの制御信号（２１８）は計算ステップ表示信号（２１２）に基づいて発生されるであろう。
【００１８】
１−Ｄ  ＩＤＣＴ開始信号（２１９）の表明において、計算ステップ表示発生手段（２０４）が、１−Ｄ  ＩＤＣＴ処理の第１の計算ステップを表わす計算ステップ表示信号（２１２）を発生するであろう。そしてそれは、スキップ計算ステップ信号（２１３）が表明されない場合は、１−Ｄ  ＩＤＣＴ処理フローにおいて第２の計算ステップを表わす計算ステップ表示信号（２１２）を発生することに進む。このように、スキップ計算ステップ信号（２１３）が表明されない場合は、計算ステップ表示発生手段（２０４）は、全ての計算ステップのシーケンスを表わす一連の計算ステップ表示信号を発生するであろう。スキップ計算ステップ信号（２１３）が表明される場合は、いくつかの計算ステップがスキップされるであろう、そしてその後に計算ステップ表示信号（２１２）は次の計算ステップ表示信号（２１４）の値を取るであろう。１−Ｄ  ＩＤＣＴ処理の終わりに、最後の計算ステップを表わす計算ステップ表示信号（２１２）を出力後に、１−Ｄ  ＩＤＣＴ終了信号（２２０）が続いて表明されるであろう。
【００１９】
算術計算手段（２０２）は複数の算術装置、乗算器、および加算器から成り、これらは、割り当てられた時間内に割り当てられた最大数の計算ステップを用いて、実現された１−Ｄ  ＩＤＣＴ高速アルゴリズムを実行するのに全く十分である。それはまた、その後の計算ステップのために使用される計算ステップの計算されたデータを登録するレジスタから成る。算術演算は、算術計算手段に入る多重化データ（２１１）、コサイン定数、および前の計算ステップからの登録データにおいて実行される。スキップ計算ステップ信号（２１３）が表明されない場合は、これらの算術装置のためのオペランドデータ、およびこれらのレジスタへのデータが、データフロー制御信号（２１８）だけに基づいて選択されつつある。他方、スキップ計算ステップ信号（２１３）が表明される場合は、これらの算術装置のためのオペランドデータ、およびこれらのレジスタへのデータは、データ転送制御信号（２１７）およびデータフロー制御信号（２１８）に基づいて選択される。１−Ｄ  ＩＤＣＴ処理の終わりに、変換された結果が算術計算手段（２０２）によって計算されたデータ（２１５）として出力されるであろう。
【００２０】
別の実施形態が図３に示され、図２に示されたスキップ計算ステップ識別手段を例示する。ゼロ検出手段（３００）が、１−Ｄ  ＩＤＣＴ処理手段へ入力された、ＤＣＴ係数データまたは１−Ｄ  ＩＤＣＴ変換されたデータから、ゼロ値多重化データを検出するために使用される。ｎ個の多重化データ（３１１）が、対応するゼロ値入力データの検出を示すｎ個のゼロ検出信号（３１２）を出力するであろうｎ個のゼロ検出手段（３００）によって解析される。
【００２１】
ゼロ検出信号（３１２）は、算術演算がゼロ値データにおいて実行されるようにスケジュールされている時にどんな算術演算も必要としない計算ステップの識別のために、計算ステップスキップ識別手段（３０１）によって使用される。対応する計算ステップがスキップされ得るか、またはされ得ないかどうかを示す計算ステップスキップ識別信号（３１３）が、計算ステップスキップ識別手段（３０１）によって出力される。
【００２２】
計算ステップスキップ識別手段（３０１）は、多重化データ（３１１）、ゼロ値多重化データのゼロ検出信号（３１２）の全ての可能な組合せを識別する能力を有する必要がない。好ましい実施は、ゼロ値多重化データの統計的分配に基づいて、スキップ計算ステップ機構実施に対するハードウェアの増加を犠牲にして、計算ステップの数、引いては電力消費の減少においてよいリターンを生ずる１組のゼロ値多重化データ（３１１）に対する識別能力があるであろう、そして計算ステップの可能な数がゼロ値多重化データの特定の組合せに対してスキップされる。
【００２３】
計算ステップスキップ識別信号（３１３）と共に現行の計算ステップ表示信号（３１４）が次の計算ステップ発生手段（３０２）によって使用されて、スキップ計算ステップ信号（３１５）および次の計算ステップ表示信号（３１６）を発生する。
【００２４】
全ての多重化データのためのゼロ検出信号が、全てをゼロにセットする信号（３１７）によって示されるまで全ての算術実行のスキップを可能にするゼロ値データを有する全ての入力の検出のために再びゼロ検出手段（３０３）によって解析される。
【００２５】
別の実施形態が、図４に示され、図３に示された算術計算手段を例示する。それは、複数の算術装置、乗算器（４００）および加算器（４０１）、前の計算ステップの計算結果を格納するレジスタファイル（４０２）、オペランドデータ多重化手段（４０３）、ならびにデータ転送多重化手段（４０４）から成る。
【００２６】
計算ステップの実行中、前の計算ステップがスキップされない場合は、スキップ計算ステップ信号（４１１）が表明されないであろう。従って算術装置およびレジスタ用のオペランドデータが、オペランドデータ多重化手段（４０３）によって前の計算ステップの多重化データ（４１２）または登録データ（４１３）から多重化されるであろう。
【００２７】
他方、現行の計算ステップに対して計算ステップにおけるスキップが有る場合は、登録データ（４１３）は、データ転送制御信号（４１５）によって制御された転送データ多重化手段（４０４）から転送データ（４１４）のそれであるように選択されるであろう。スキップ計算ステップ信号（４１１）によって転送データ（４１４）から多重化された、登録データ（４１３）は、データフロー制御信号（４１６）の選択に基づいてオペランド多重化手段（４０３）を通過後に、現行の計算ステップにおいて使用されるであろう。
【００２８】
前記の乗算手段（４００）、選択されたコサイン定数（４１７）、および乗算のために選択されたデータ（４１８）が、データフロー制御信号（４１６）に基づいてオペランドデータ多重化手段（４０３）によって選択される。乗算の結果が、レジスタファイル（４０２）内の専用レジスタ（４０５）に登録される。スキップ計算ステップが起きて、乗算のために選択されたデータ（４１８）はゼロ値である場合は、乗算結果はゼロ値である。ゼロ値転送データ（４１４）が、スキップ計算ステップ信号（４１１）に基づいてＭＵＸ（４０６）によって選択された乗算結果を登録する専用レジスタ（４０５）の登録データであるようにセットされる。このゼロ値登録データ（４１９）は、オペランド多重化手段（４０３）によって現行の計算ステップ用のデータソースとして使用される。
【００２９】
２つの加算のために選択されたデータ（４２０）を加算し、この加算をレジスタファイル（４０２）内の専用レジスタ（４０７）に登録する前記の加算手段（４０１）。スキップ計算ステップが起り、２つの加算のために選択されたデータ（４２０）のうちの１つがゼロ値である場合は、転送データ（４２１）が、データ転送制御信号（４１５）によって制御された転送データ多重化手段（４０４）によって、他の非ゼロ値データであるように選択される。この転送データ（４２１）は、その加算器（４０１）専用のレジスタ（４０７）のための登録データ（４２２）として多重化される。そして登録データ（４２２）は、オペランド多重化手段（４０３）によって現行の計算ステップ用のオペランドデータのソースとして使用される。
【００３０】
レジスタファイル（４０２）は、各加算および乗算手段用の計算結果を格納する専用レジスタ、およびまた前の計算ステップからの登録計算結果を格納する少数の追加レジスタから成り、レジスタファイル内のデータ移動を可能にする。登録のために選択されるデータ（４２３）が、オペランドデータ多重化手段（４０３）を介してデータフロー制御信号によって選択されつつある。計算されたデータ（４２４）、１−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの１行または逆離散コサイン変換変換されたデータのｎ×ｎブロックの１列、がレジスタファイル（４０２）内の専用レジスタに格納される。
【００３１】
【発明の効果】
この発明は、速度および電力消費の観点から、ＤＣＴ係数のｎ×ｎブロックにおいて２−Ｄ  ＩＤＣＴを実行する効果的手段を提供する。この発明において、２−Ｄ  ＩＤＣＴは２つの１−Ｄ  ＩＤＣＴを実行することによって計算され、これはゼロ値ＤＣＴデータおよび１−Ｄ  ＩＤＣＴ変換された中間データの出現を利用して、算術演算をゼロ値データにおいて実行するようにスケジュールされる計算ステップをスキップすることによって、計算速度を向上させる。従って、２−Ｄ  ＩＤＣＴの全計算時間を減らし、引いては電力消費を減らす。
【図面の簡単な説明】
【図１】ゼロ値ＤＣＴ係数の配分に依存する、２つの可変速度１−Ｄ  ＩＤＣＴ変換の計算による２−Ｄ  ＩＤＣＴ用の装置を示す図である。
【図２】ゼロ値ＤＣＴ係数の相対的出現を利用する、可変速度１−Ｄ  ＩＤＣＴ変換用の装置を示す図である。
【図３】１−Ｄ  ＩＤＣＴ変換のためにゼロ値データ入力の配分に基づいてスキップされ得る計算ステップの識別を示すブロック図である。
【図４】スキップされた計算ステップのデータを転送するデータ転送機構を備える算術計算用の装置を示す図である。
【符号の説明】
１００  ２−Ｄ  ＩＤＣＴ順序付け手段
１０１  データイン多重化手段
１０２  データアウト逆多重化手段
１０３  ゼロ値データ従属１−Ｄ  ＩＤＣＴ可変速度処理手段
１０４  ｎ×ｎブロックの記憶手段
１１０  ＤＣＴ係数のｎ×ｎブロックの１行
１１１  多重化データ
１１２  １−Ｄ  ＩＤＣＴの計算されたデータ
１１４  １−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの１列
１１５  ２−Ｄ  ＩＤＣＴ変換されたデータのｎ×ｎブロックの１列
１１７  １−Ｄ  ＩＤＣＴ開始信号（６頁２７行、図１）
１１７  全てをゼロにセットする信号（７頁６行、図１）
１１８  １−Ｄ  ＩＤＣＴ終了信号
１１９  行または列選択信号
２００  スキップ計算ステップ識別手段
２０１  データ転送制御信号発生手段
２０２  算術計算手段
２０３  データフロー制御信号発生手段
２０４  計算ステップ表示発生手段
２１１  多重化データ
２１２  計算ステップ表示信号
２１３  スキップ計算ステップ信号
２１４  次の計算ステップ表示信号
２１５  計算されたデータ
２１６  全てをゼロにセットする信号
２１７  データ転送制御信号
２１８  データフロー制御信号
２１９  １−Ｄ  ＩＤＣＴ開始信号
２２０  １−Ｄ  ＩＤＣＴ終了信号
３００  ゼロ検出手段
３０１  計算ステップスキップ識別手段
３０２  計算ステップ発生手段
３０３  ゼロ検出手段
３１１  多重化データ
３１２  ゼロ検出信号
３１３  計算ステップスキップ識別信号
３１４  計算ステップ表示信号
３１５  スキップ計算ステップ信号
３１６  次の計算ステップ表示信号
３１７  全てをゼロにセットする信号
４００  乗算手段
４０１  加算手段
４０２  レジスタファイル
４０３  オペランドデータ多重化手段
４０４  データ転送多重化手段
４０５  レジスタ
４０６  ＭＵＸ
４０７  専用レジスタ
４１１  スキップ計算ステップ信号
４１２  多重化データ
４１３  登録データ
４１４  転送データ
４１５  データ転送制御信号
４１６  データフロー制御信号
４１７  選択されたコサイン定数
４１８  乗算のために選択されたデータ
４１９  登録データ
４２０  加算のために選択されたデータ
４２１  転送データ
４２２  登録データ
４２３  登録のために選択されたデータ
４２４  計算されたデータ
【図１】
2004206535.tif 000003
【図２】
2004206535.tif 000004
【図３】
2004206535.tif 000005
【図４】
2004206535.tif 000006