(57)【特許請求の範囲】
【請求項１】
ビデオ符号化時にビデオの動き予測を実行する方法であって、フレーム（ＦＲ１、ＦＲ２）からビデオ信号を構成し、ビデオ・フレームはブロック（Ｘ，Ｙ，Ｙ’）を含み、符号化対象フレーム（ＦＲ１）の現在のビデオ・ブロック（Ｘ）と、別のフレーム（ＦＲ２）の少なくとも１つの別のビデオ・ブロック（Ｙ，Ｙ’）とを用いることにより、組み合わされた比較値を形成し、さらに、前記符号化対象フレーム（ＦＲ１）の前記現在のビデオ・ブロック（Ｘ）が第１のデータ値のセット（｛ｘ1，…，ｘK｝）を含み、別のフレーム（ＦＲ２）の前記少なくとも１つの別のビデオ・ブロック（Ｙ，Ｙ’）が第２のデータ値のセット（｛ｙ1，…，ｙK｝）を含み、前記第１のデータ値のセット（｛ｘ1，…，ｘK｝）から得られるデータ値と、前記第２のデータ値のセット（｛ｙ1，…，ｙK｝）から得られる等しい数の対応するデータ値とからデータ値対を形成し、前記データ値対の１つのデータ値対のデータ値を用いることにより前記比較値の各々を定めることによって前記組み合わされた比較値を形成し、さらに、前記データ値対を少なくとも２つのデータ値対のサブセットに分割し、各サブセットに等しい数のデータ値の対を含め、前記サブセットに含まれるデータ値の対同士の比較値を複数の計算ユニットからなる計算ユニットの組によって計算する、ビデオの動き予測を実行する方法において、
データ値対の複数のサブセットについての比較値の計算を、計算開始時間が所定の時間間隔づつ離れた異なる組の前記計算ユニットによって並列に行い、
前記異なる計算ユニットの組のうちから、前記比較値の計算を完了した組をマルチプレクサにより選択する、
ことを特徴とする方法。
【請求項２】
請求項１に記載の方法において、データ値対間の差分を計算することにより比較値を定めることを特徴とする方法。
【請求項３】
請求項２に記載の方法において、データ値対の各サブセットの各データ値対について比較値を定めることを特徴とする方法。
【請求項４】
請求項１、２または３のいずれか一項に記載の方法において、前記比較値を合計することにより前記組み合わされた比較値を定めることを特徴とする方法。
【請求項５】
請求項１乃至４のいずれか一項に記載の方法において、前記所定の時間間隔で前記サブセットを入力することを特徴とする方法。
【請求項６】
請求項５に記載の方法において、前記計算ユニットは１つの比較値の計算を、前記異なる組の計算ユニットにより並列して計算される演算数に前記所定の時間間隔を乗じた時間よりも短い時間で行う計算ユニットであることを特徴とする方法。
【請求項７】
請求項１乃至６のいずれか一項に記載の方法において、符号化対象フレーム（ＦＲ１）の現在のビデオ・ブロック（Ｘ）と、別のフレーム（ＦＲ２）のビデオ・ブロック（Ｙ，Ｙ’）との間で、前記組み合わされた比較値を計算し、さらに、動き予測のために最小の組み合わされた比較値を生成する別のフレーム（ＦＲ２）のブロックを選択することを特徴とする方法。
【請求項８】
請求項１乃至７のいずれか一項に記載の方法において、各ブロックが１６行×１６個の画素データ値を含み、１６個の画素データ値の対から成る１６個のサブセットに前記画素データ値を分割し、各サブセットについて１６個の比較値を定め、２５６個の比較値を組み合わせることにより前記組み合わされた比較値を定めることを特徴とする方法。
【請求項９】
請求項１乃至７のいずれか一項に記載の方法において、各ブロックが１６行×１６画素のデータ値を含み、１つのブロック（Ｘ）の画素データ値が、別のブロック（Ｙ）の１６×１６の画素データ値と対を成し、各々４個の画素データ値の対から成る６４のサブセットＤ1、Ｄ2…、Ｄ64に前記画素データ値の対を分割し、前記サブセット値の対Ｄi（ｉ＝１，２，…，６４）についての比較値の計算を処理ステップｔ＝ｉ＋１で開始し、処理ステップｔ＝ｉ＋４で完了し、前記６４個のサブセットＤ1，Ｄ2…，Ｄ64について計算された比較値を組み合わせることにより、前記組み合わされた比較値を定め、その場合、前記サブセットＤi、（ｉ＝１，２，…，６４）の比較値の組み合せを処理ステップｔ＝ｉ＋５で実行することを特徴とする方法。
【請求項１０】
ブロック（Ｘ，Ｙ，Ｙ’）を含むフレーム（ＦＲ１、ＦＲ２）からビデオ信号を構成する、ビデオ符号化時にビデオの動き予測を実行するためのシステムであり、符号化対象フレーム（ＦＲ１）の現在のビデオ・ブロック（Ｘ）と、別のフレーム（ＦＲ２）の少なくとも１つの別のビデオ・ブロック（Ｙ，Ｙ’）とにより、組み合わされた比較値を形成する手段（１）を具備するシステムであって、前記符号化対象フレーム（ＦＲ１）の前記現在のビデオ・ブロック（Ｘ）は第１のデータ値のセット（｛ｘ1，…，ｘK｝）を含み、別のフレーム（ＦＲ２）の前記少なくとも１つの別のビデオ・ブロック（Ｙ，Ｙ’）は第２のデータ値のセット（｛ｙ1，…，ｙK｝）を含み、
組み合わされた比較値を形成する前記手段（１）は、前記第１のデータ値のセット（｛ｘ1，…，ｘK｝）から得られるデータ値と、前記第２のデータ値のセット（｛ｙ1，…，ｙK｝）から得られる等しい数の対応するデータ値と、の等しい数のデータ値対からそれぞれ成る、一連の少なくとも２つのサブセットを入力する入力手段と、
前記サブセットに含まれるデータ値の対同士の比較値を計算する複数の計算ユニット（２）からなる計算ユニットの組と、
を具備するシステムにおいて、
複数の前記サブセットについての比較値の計算を並列に行う、互いに計算開始時間が所定の時間間隔づつ離れた複数個の前記計算ユニットの組と、
前記複数個の計算ユニットの組のうちから、前記比較値の計算を完了した組を選択するマルチプレクサ（４、５）と、
を備えることを特徴とするシステム。
【請求項１１】
請求項１０に記載のシステムにおいて、組み合わされた比較値の計算を実行する前記手段（１）が計算ユニットからなるｓ個のグループ（３）を含み、各グループ（３）が、
ｐ個の計算ユニット（２）と、
一度に１つのデータ値対を入力する一対の入力手段と、
マルチプレクサ（４、５）と、
レジスタ（７、８）と、を具備し、
その場合、前記比較値の計算を行うために、ｓ対のデータ値からなる前記サブセットを前記グループ（３）のｓ対の入力手段へ入力し、グループ（３）へ入力される一連の値の対を前記グループ（３）の前記計算ユニット（２）の間で適時配分して、前回のデータ値対に対する計算の後で、かつ、前回のデータ値対に対する計算の完了前に、すべての次のデータ値対についての比較値の計算を開始するように構成されることを特徴とするシステム。
【請求項１２】
請求項１０または１１に記載のシステムにおいて、比較値を定める前記手段（２）が１対の値の間の差分を計算する手段を具備することを特徴とするシステム。
【請求項１３】
請求項１０乃至１２のいずれか一項に記載のシステムにおいて、組み合わされた比較値を定める手段（１）が圧縮アレイ（６）を具備することを特徴とするシステム。
【請求項１４】
請求項１３に記載のシステムにおいて、前記圧縮アレイ（６）に比較値を入力する入力数が前記計算ユニット（２）の数よりも少ないことを特徴とするシステム。
【請求項１５】
請求項１０乃至１４のいずれか一項に記載のシステムにおいて、前記ビデオ・ブロックをＫ個のデータ値から構成し、前記システムが計算ユニット（２）から成るｓ個のグループ（３）を具備し、各グループ（３）はｐ個の計算ユニット（２）を具備し、１より大きい所定の整数であるｐに対して、Ｋ＝ｓ×ｐとなるように前記値ｓとｐとを選択することを特徴とするシステム。
【請求項１６】
請求項１０乃至１５のいずれか一項に記載のシステムにおいて、組み合わされた比較値を定める前記手段（１）が加算手段（１２）を具備することを特徴とするシステム。
【請求項１７】
ビデオ符号化装置であって、ブロック（Ｘ，Ｙ，Ｙ’）を含むフレーム（ＦＲ１、ＦＲ２）からなるビデオ信号を符号化する手段（３２）と、ビデオの動き予測を実行する手段（３２）と、符号化対象フレーム（ＦＲ１）の現在のビデオ・ブロック（Ｘ）と、別のフレーム（ＦＲ２）の少なくとも１つの別のビデオ・ブロック（Ｙ，Ｙ’）との間で、組み合わされた比較値を計算する手段（１）を具備し、前記符号化対象フレーム（ＦＲ１）の前記現在のビデオ・ブロック（Ｘ）は第１のデータ値のセット（｛ｘ1，…，ｘK｝）を含み、別のフレーム（ＦＲ２）の前記少なくとも１つの別のビデオ・ブロック（Ｙ，Ｙ’）は第２のデータ値のセット（｛ｙ1，…，ｙK｝）を含み、
組み合わされた比較値を形成する前記手段（１）は、前記第１のデータ値のセット（｛ｘ1，…，ｘK｝）から得られるデータ値と、前記第２のデータ値のセット（｛ｙ1，…，ｙK｝）から得られる等しい数の対応するデータ値と、の等しい数のデータ値対からそれぞれ成る、一連の少なくとも２つのサブセットを入力する入力手段と、
前記サブセットに含まれるデータ値の対同士の比較値を計算する複数の計算ユニット（２）からなる計算ユニットの組と、
を具備する装置において、
複数の前記サブセットについての比較値の計算を並列に行う、互いに計算開始時間が所定の時間間隔づつ離れた複数個の前記計算ユニットの組と、
前記複数個の計算ユニットの組のうちから、前記比較値の計算を完了した組を選択するマルチプレクサ（４、５）と、
を備えることを特徴とする装置。
【請求項１８】
請求項１７に記載の装置において、移動通信を実行する手段（３１）を具備することを特徴とする装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ビデオ符号化時にビデオの動き予測を実行する方法に関し、その場合、フレームからビデオ信号を構成し、ビデオ・フレームはブロックを含み、符号化対象フレームの現在のビデオ・ブロックと、別のフレームの少なくとも１つの別のビデオ・ブロックとを用いることにより、組み合わされた比較値を形成し、さらに、上記符号化対象フレームの前記現在のビデオ・ブロックは第１のデータ値のセットを含み、別のフレームの前記少なくとも１つの別のビデオ・ブロックは第２のデータ値のセットを含み、前記第１のデータ値のセットから得られるデータ値と、前記第２のデータ値のセットから得られる等しい数の対応するデータ値とからデータ値対を形成し、比較値を定めることにより前記組み合わされた比較値を形成し、前記データ値対の１つのデータ値対のデータ値を用いることによりこれら比較値の各々を定め、さらに、データ値対から成る少なくとも２つのサブセットに前記データ値対を分割し、上記各サブセットは等しい数のデータ値対を含む。また本発明は、ブロックを含むフレームからビデオ信号を構成する、ビデオ符号化時にビデオの動き予測を実行するビデオ符号化システムにも関し、上記システムは、符号化対象フレームの現在のビデオ・ブロックと、別のフレームの少なくとも１つの別のビデオ・ブロックとを利用することにより、組み合わされた比較値を形成する手段を具備し、上記符号化対象フレームの前記現在のビデオ・ブロックは第１のデータ値のセットを含み、前記別のフレームの少なくとも１つの別のビデオ・ブロックは第２のデータ値のセットを含む。組み合わされた比較値を形成する前記手段は、一連の少なくとも２つのサブセットを入力する入力手段を具備し、上記各サブセットは、前記第１のデータ値のセットから得られるデータ値と、前記第２のデータ値のセットから得られる等しい数の対応するデータ値との等しい数のデータ値対から成るように構成されるシステムであり、さらに、該システムは、前記データ値対の１つのデータ値対のデータ値を用いることにより各々定められる比較値を定める手段を具備する。本発明はさらにビデオ符号化装置に関し、上記ビデオ符号化装置は、ブロックを含むフレームから成るビデオ信号を符号化する手段と、ビデオの動き予測を実行する手段と、符号化対象フレームの現在のビデオ・ブロックと、別のフレームの少なくとも１つの別のビデオ・ブロックとの間で、組み合わされた比較値を計算する手段であって、上記符号化対象フレームの前記現在のビデオ・ブロックは第１のデータ値のセットを含み、前記別のフレームの少なくとも１つの別のビデオ・ブロックは第２のデータ値のセットを含み、組み合わされた比較値を形成する前記手段は、各々のサブセットが前記第１のデータ値のセットから得られるデータ値と前記第２のデータ値のセットから得られる等しい数の対応するデータ値の等しい数のデータ値対から成る、一連の少なくとも２つのサブセットを入力する入力手段を具備し、該装置は、前記データ値対の１つのデータ値対のデータ値を用いることにより各々定義される比較値を定義する手段を具備する。
【０００２】
【従来の技術】
符号化対象画像をブロックに分割するビデオ符号化システムが知られている。次いで、これらのブロックは符号化され、復号化装置へ伝送されたり、記憶媒体の中へ記憶されたりする。伝送対象の情報量を減らすために、ＭＰＥＧ２（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）のような様々な圧縮方法が開発されてきた。ビデオ画像の伝送時に、フレーム間圧縮、フレーム内圧縮、あるいはこれらの圧縮の組み合せとして画像圧縮の実行が可能である。フレーム間圧縮の目的は、連続する画像フレーム内の冗長な情報の除去である。一般に、画像には、例えば動きのない背景などを示す上記のような多量の変化しない情報や、被写体がゆっくりと動くときのようなゆっくりと変化する情報が含まれる。フレーム間圧縮では動き補償の利用も可能である。動き補償を利用する目的は、画像内での、動きのある大きな要素の検出である。その場合、エンティティ全体を表す画素を伝送する代わりに、このエンティティの動きベクトル及びある種の差分情報の伝送が行われる。このようにして、当該エンティティの動きの方向と速度とが定義され、この動きベクトルが確定される。圧縮を行うために、送信用及び受信用ビデオ端末装置では、リアルタイムでの圧縮及び解凍ができるような非常に高い処理レートが要求される。
【０００３】
一般に、画像ブロックは一緒にグループ化されて、複数のブロックが形成される。この各ブロックには通常、１６行×１６個の画素の輝度サンプルと、モード情報と、生じる可能性のある動きベクトルとが含まれる。このブロックは４つの８×８の輝度ブロックと２つの８×８の色差ブロックに分割される。通常、走査（及び符号化／復号化）は、フレームの最上部左側から最下部右側コーナーへ１ブロックずつ進行する。１ブロックの内部では、走査（及び符号化／復号化）の順序はブロックの最上部左側から最下部右側コーナーへの方向となる。
【０００４】
ＭＰＥＧ２の圧縮では画像に対するブロック内での離散余弦変換（ＤＣＴ）符号化が行われるため、ブロック・サイズは８×８の画素となる。変換される輝度レベルは最大解像度のレベルである。双方の色差信号はサブサンプル化される。例えば１６×１６の画素フィールドが８×８の画素フィールドの中へサブサンプル化される。ブロック・サイズの差は、人間の目が輝度の変化ほどには等しく良好に色差の変化を識別できないという事実に主に起因する。この場合、２×２の画素フィールドが同じ色差の値で符号化される。
【０００５】
ＭＰＥＧ２では３つのフレーム・タイプすなわちＩフレーム（フレーム内）、Ｐフレーム（予測フレーム）、Ｂフレーム（双方向フレーム）が定義される。Ｉフレームは専ら画像自体に含まれる情報に基づいて生成され、受信端で、このＩフレームを用いて画像全体の形成が可能となる。Ｐフレームは先行するＩフレームまたはＰフレームに基づいて形成され、受信段で、この先行するＩフレームまたはＰフレームは、受信されたＰフレームと共に対応して利用される。Ｐフレームの構成では、例えば動き補償を利用して情報量の圧縮が行われる。Ｂフレームは、先行するＩフレーム及び次のＰフレームまたは次のＩフレームに基づいて形成される。同様に、受信段において、対応するＩフレーム及びＰフレームまたはＩフレームの受信が完了するまでは、Ｂフレームを構成することはできない。さらに、送信段において、これらのＰフレームとＢフレームの順序の変更が行われる。その場合Ｂフレームに後続するＰフレームが最初に受信され、受信装置での画像の再構成が高速化される。
【０００６】
これら３つの画像タイプの中で、Ｂフレームの圧縮時に最も高い効率が達成される。所定時に使用されるアプリケーションにおいて、Ｉフレーム、Ｐフレーム、Ｂフレームの数の変更が可能であることは言及しておくべきである。但し、この場合、受信装置の表示装置で正しい画像の再構成が可能となるためには、受信端で少なくとも１つのＩフレームの受信が必要であることに注意しなければならない。
【０００７】
動き予測の目的は、ビデオ・シーケンス内のある参照フレームの探索領域の範囲内で、現在のフレームの範囲内の所定ブロック（チェック中のブロック）に最も類似しているようなブロック（参照ブロック）を見つけることである。多様な動き予測アルゴリズムの中で、最もポピュラーなものはブロック・マッチングに基づくアルゴリズムであり、フレーム・ブロック間の類似度の基準として絶対差（ＳＡＤ）の合計が利用される。順に並べられた２つのデータのセットＸ＝｛ｘ１，…，ｘＫ｝とＹ＝｛ｙ１，…，ｙＫ｝とが与えられたとすると、ＳＡＤの値は以下のように定義される：
【数１】
0004188647.tif 000002
【０００８】
いくつかの文献では、ＳＡＤは、合計ＳＡＤ（ｘ，ｙ）をその加数Ｋで除したものとして定義されている。その場合、ＳＡＤを平均絶対誤差（ＭＡＥ）と呼ぶこともある。ほとんどの場合Ｋは２のべき乗であるため、上記２つの定義は実施構成から見た場合実質的に同値である。なぜなら、後者の定義は単にあるビット数だけ前者の定義の値をシフトすることにより得ることができるからである。
【０００９】
ビデオ符号化コンテキストでは、ＳＡＤは、すべての現在のフレーム間のすべての１６×１６ブロックＸ（実際にはビデオ・シーケンスのほとんどすべてのフレーム）と、１以上の参照フレームの探索領域（図９を参照）の範囲内の複数の１６×１６ブロックＹ、Ｙ’との間で計算される。このようにして、ＳＡＤが何回も適用されるため、ＳＡＤの１回の演算処理の実行時間のちょっとした向上だけでも総ビデオ処理時間のかなりの節減をもたらす。一方、当然のことながら、特に携帯用／無線ビデオ処理用アプリケーションで、ＳＡＤの計算に利用されるハードウェアが大きすぎたり、電力を消費するものであったりしてはならない。
【００１０】
符号化されたビデオの品質劣化の少ないＳＡＤの演算処理回数及び／又はサイズを少なくするための様々な探索方法を利用する様々な動き予測アルゴリズムが数多く存在する。これらの動き予測アルゴリズムは、次のＸブロックとＹブロックの対の選択肢が前回のステップで得られたＳＡＤ値に依存しないデータ非依存型探索と、データ依存型探索との２つのカテゴリに大まかにグループ化することができる。通常、データ依存型探索方法は、より少ない回数のＳＡＤの演算処理の実行を必要とする。しかし、データ非依存型動き予測アルゴリズムに典型的な規則的データ移動を単純に組織できることに起因して、ハードウェアの実施構成のほとんどはデータ非依存型動き予測アルゴリズムに基づいている。データ依存型方法に共通のものとして、次のＸブロックとＹブロックの対を選択するいくつかのオプションが存在するという点が挙げられ、この次の対は現在のＳＡＤ値に対応して選択される。
【００１１】
最近の調査によれば、汎用プロセッサ（ＧＰＰ）で実行する場合、様々な動き予測アルゴリズムによって総ビデオ符号化時間のほぼ４０％〜８０％が費やされている。ブロック・マッチング動き予測アルゴリズムにおける基本演算処理はＳＡＤであり、このＳＡＤはビデオ符号化処理中何回も適用される。典型的高速動き予測アルゴリズムでは、ＳＡＤ計算は、ビデオ・シーケンス内で（通常１６×１６のサイズの）ほとんどすべてのブロックについておよそ３０回繰り返される。ＱＣＩＦ（Ｑｕａｒｔｅｒ  Ｃａｎｎｏｎ  Ｉｎｔｅｒｍａｄｉａｔｅ  Ｆｏｒｍａｔ）解像度のビデオ・シーケンスで毎秒１５フレームの場合でさえ、毎秒少なくとも２５６個（１６×１６）の点に対してＳＡＤ計算が４４５５０回行われることを意味することになる。組込み型システムにおける典型的マイクロプロセッサであるＡＲＭＥ９Ｅマイクロプロセッサ上の全くのソフトウェアによる実施構成では、２５６個の点に対する１回のＳＡＤの計算は数千クロック・サイクルを要する。これは、ビデオ符号化のソフトウェアによる実施構成における動き予測だけのために毎秒数億サイクルが費やされることを意味する。
【００１２】
この問題の重要性に起因して、最近多くの動き予測装置が文献の中に報告されている。これらの文献は２つのカテゴリ、すなわち、動き予測に対する何らかの探索方法をサポートするが、ＳＡＤの実施構成の細部については考慮しない文献と、動き予測方法とは無関係の、ＳＡＤ計算用の専用アーキテクチャを本質的に提案する文献とに分類することができる。例えば、ビデオ画像処理時の動き予測を実行するためのブロック・マッチング・アルゴリズムを実現する装置が開示されている（例えば特許文献１）。この装置は原画像ブロックの画素データと、ビデオ画像処理中複数の比較対象画像ブロックから選択された比較対象画像ブロックの画素データとを受信するものである。これらの選択された画像ブロックは、運動ベクトルを決定するために比較される。上記装置は、４つの段階を含む多段階パイプライン化ツリー・アーキテクチャを有する。第１パイプライン段（計算段）によって対応する一対の差分データと符号データとが生成される。第２パイプライン段（圧縮段階）にはすべての差分データと符号データを受信する圧縮アレイが含まれ、これらのデータは一緒に加算されて、圧縮された差分データと符号データの２つの列（合計項と桁上げ項）が生成される。パイプラインの第３パイプライン段（合計段）は、上記圧縮された合計と符号データとを受信し、比較対象画像ブロックの画素の各々について平均絶対誤差を生成するものである。最後のパイプライン段（最小化段）は、比較対象画像ブロックの各々について上記平均絶対誤差を受信し、上記比較対象画像ブロックの中から最小平均絶対誤差を決定するものである。上記圧縮アレイには、マルチレベル構成で配設された複数の全加算器及び半加算器、または、複数の４／２圧縮装置が含まれ、この構成では、加算器オペランド入力及びキャリインのいずれも未接続のままに放置されることはない。
【００１３】
特許文献１（米国特許５，８６４，３７２）に開示されている装置が図１に例示されている。第１パイプライン段はいくつかの（ｍ個の）計算ユニット（ＤＳ、Ｄｉｆｆｅｒｅｎｃｅ−Ｓｉｇｎ：差分−符号）から構成される。図１はｍ＝４のケースに対応するものである。計算ユニットの構造は図２に示されている。ｉ番目の計算ユニット、ｉ＝１，…，ｍは２つのｎビット入力ＸｉとＹｉと、１つのｎビット出力Ａｉと、１つの単一ビット出力Ｂｉとを有する。（符号データ）出力Ｂｉは差分Ｘｉ−Ｙｉの符号ビットであり、（差分データ）出力Ａｉは差分のｎ個の最下位ビットから形成され、これらの最下位ビットは、Ｂｉ＝１（差分が負である）の場合、反転されるか、Ｂｉ＝０（差分が負でない）の場合、反転されないかのいずれかとなる。したがって、計算ユニットの入出力関係は以下のようなものとなる：
【数２】
0004188647.tif 000003
但し、ｘとｙとは、計算ユニットの入力での値で、ａはそのｎビット出力（差分データ）での値、ｂはその１ビット出力（符号データ）での値である。
【００１４】
第２パイプライン段は圧縮アレイであり、このアレイは実質的に、第１パイプライン段から着信する２ｍ個の入力値ＡｉとＢｉ、ｉ＝１，…，ｍと、アレイ自身の合計と桁上げ出力から得られる２つのフィードバック入力とを有する桁上げ保存加算器ツリーである。この圧縮アレイは全加算器（ＦＡ）または４／２比圧縮装置のいずれかから構成されるものであってもよい。この圧縮アレイの幅と深さ（段数）、したがって遅延は、実質的に第１段の並列チャネル（計算ユニット）の数ｍに依存する。この依存状態が表１に示されている。この表では、ＮＦＡとＮ４／２とは、全加算器ベースの構成及び４／２比圧縮装置ベースの構成用圧縮アレイでの段数をそれぞれ表す。ＤＦＡとＤ４／２とは、対応する圧縮アレイ構成の予測遅延時間を表し、この予測遅延時間は１つの２入力ＮＡＮＤ論理ゲートに対する基本時間遅延量τの単位で表現される。１つの全加算器が、２つの連続接続されたＮＡＮＤゲートの遅延を持ち、１つの４／２比圧縮装置エレメントが３つの連続接続されたＮＡＮＤゲートの遅延を生じることが想定されている点に留意されたい。
【００１５】
第３パイプライン段は実質的に、圧縮アレイの合計出力と桁上げ出力の最終値を加算する加算器である。事実、ＳＡＤは第３段の出力部で得られる。正確なＳＡＤ値を計算するために、第３段の加算器はｎ＋ｌｏｇ２Ｋビット（実際のビデオ符号化コンテキストでは１６ビットとなる）の精度を持つことが望ましいという点に留意されたい。
【表１】
0004188647.tif 000004
【００１６】
上記装置の第４段は最小値評価段である。第３パイプライン段で新しいＳＡＤ値が得られるたびに、この新しいＳＡＤ値は、最小値評価ユニットＭに保持される現在の最小ＳＡＤ値と比較される。小さな方の値が選択され、新しい最小値として最小値評価ユニットの中に記憶される。現在のフレームの範囲内の所定のブロックＸ（ｃ）と、参照フレームの探索領域の範囲内のすべての対応するブロックＹ（ｒ，ｃ）との間のＳＡＤの計算がいったん完了すると、Ｘ（ｃ）と、最小値が達成されたブロックＹ（ｒ，ｃ）との間の相対的シフトがＸ（ｃ）に対する動きベクトルとして特定される。
【００１７】
装置の作動中、入力値｛ｘ１，…，ｘＫ｝と｛ｙ１，…，ｙＫ｝とは１部分ずつ第１パイプライン段へ入力される。ｔ番目の処理ステップで、
【数３】
0004188647.tif 000005
データ部分｛ｘ（ｔ−１）ｍ＋１，…，ｘｔｍ｝及び｛ｙ（ｔ−１）ｍ＋１，…，ｙｔｍ｝が入力値Ｘ１，…，ＸｍとＹ１，…，Ｙｍへそれぞれ入力される。次の処理ステップで、対応する差分と符号データとが、圧縮アレイへ入力する計算ユニットの出力部で形成され、アレイの合計出力と桁上げ出力の現在値へ累積される。
【数４】
0004188647.tif 000006
処理ステップ後、圧縮アレイの出力部で最終合計項と桁上げ項とが形成され、さらに１つの処理ステップ後、第３パイプライン段の加算器の出力部でＳＡＤ値が計算されることは明らかである。最小値評価ユニットは、現在の動きベクトルの座標を選択する別の処理ステップを使用する。
【００１８】
最も速度の遅いパイプライン段のスループットにより処理ステップの持続時間が決定される。特許文献１（米国特許公報５，８６４，３７２）による装置では、最も速度の遅い部分が最小値評価ユニットとなると考えられる。しかし、このユニット並びに第３段の加算器は、所定の一対の入力データのセットのための２つのサイクルしか処理しないが、最初の２段は
【数５】
0004188647.tif 000007
サイクルを処理する。（実際のケースである）ｍに関してＫが十分に大きい場合、
【数６】
0004188647.tif 000008
サイクル後、次の一対の入力データのセットの処理を直ちに開始する代わりに、最後の２段が機能を開始したとき、最初の２段を停止するとさらに有利である。このようにして、最初の２段だけの間の最も速度の遅い段のスループットによりクロック・サイクルの持続時間が決定される。
【００１９】
第１パイプライン段のスループットは、実質的に、ｎビット（８ビット）加算器／減算器のスループットである。様々な加算器／減算器を使用し、その結果として様々なスループットを得ることもできる。説明を容易にするために、本明細書では標準的な８ビットのキャリ・リプル型（ｃａｒｒｙ−ｒｉｐｐｌｅ）加算器の使用について考察する。特許文献１（米国特許５，８６４，３７２）では、全加算器の遅延は、２つの連続接続されたＮＡＮＤゲートの遅延にほぼ等しいと想定されている。したがって、計算ユニットの２つの連続する出力間の遅延は１６τにほぼ等しい。但し、τは基本処理クロック・サイクルの持続時間（ＮＡＮＤゲートの遅延）である。表１に示されている圧縮アレイの遅延と比較すると、第１パイプライン段の範囲内の３２個までの計算ユニットの場合については、第１パイプライン段の方が第２パイプライン段よりも速度が遅いということがわかる。それより多い数の計算ユニット（実際には、必要とされる広いシリコン面積と入力バス幅のために実行不可能であるが）の場合、圧縮アレイは２つのパイプライン段に分割され、それによって第１パイプライン段は最も速度の遅い段のままとなる。したがって、第１パイプライン段に関与している計算ユニット数に関係なく、装置の処理ステップの持続時間は１６τとなる。圧縮アレイは、たとえ実際のほとんどのケースにおいてさらに高速なクロック入力が可能であっても、同じ処理ステップでクロック入力されることが望ましい。なぜなら、表１に示されているように圧縮アレイへの入力数が３２よりも少ない場合、圧縮アレイの遅延の方が１６τよりも少なくなるからである。
【００２０】
従来技術の装置にはいくつかの欠点がある。装置のパイプライン段（その内の最初の２段が重要な段である）は、この段が実質的に異なる遅延を生じることに起因して、そのバランスが悪い。最初の段の範囲内の並列計算ユニットが、妥当な数（例えば、ｍ＝４、８、１６）の場合、第２の段の圧縮アレイは、表１からわかるように計算ユニット内で標準的なキャリ・リプル型加算器を使用する場合、最初の段よりも２．７倍、１．６倍、及び１．３倍それぞれ高速である。したがって、装置の圧縮アレイはその容量のおおよそ３７％、６２．５％、７７％しか利用されていない。
【００２１】
（装置の最初の２つの）パイプライン段の間でより良好なバランスを達成するためのパイプライン段の遅延調整は、計算ユニット内でさらに高速な加算器／減算器を使用するか、パイプラインの段数を増やすかのいずれかによってしか可能ではない。両ケースともシリコン面積と、電力消費量との著しい増加につながる。
【００２２】
圧縮アレイの幅と深さは最初の段の範囲内の計算ユニット数と共に実質的に大きくなる（表１を参照）。圧縮アレイの方が計算ユニットよりも高速であるため、圧縮アレイは従来技術のシステムでは効率的に利用されていない。圧縮アレイのサイズの減少は、ゲート・カウントだけでなくその少ない段数に起因する遅延をも減らすことになる。圧縮アレイ・サイズの減少の可能性は、最初の２つのパイプライン段の調整時の柔軟性を付加することにもなる。
【００２３】
従来技術の装置の入力バス幅は、最初の段の並列計算ユニット数に比例して大きくなり、したがって、汎用プロセッサやデジタル信号プロセッサ（ＤＳＰ）のほとんどでは、アクセラレータとの相互接続用としてかなり狭いバスが提供されているために、実際の用途が制限されることになる。装置の中に入力バッファを設けることにより、この問題の解決を図ることも可能ではあるものの、この解決方法はゲート・カウントの著しい増加を意味することになる。
【００２４】
【特許文献１】
米国特許第５８６４３７２号明細書
【００２５】
【発明が解決しようとする課題】
ビデオ符号化時に動き予測を実行するための改善された方法、システム及び装置を提供することが本発明の目的である。
【００２６】
【課題を解決するための手段】
本発明は、入力データの対をグループ化し、同じ一対のビデオ・ブロックのデータ対の前回のグループについての差分データと符号データの計算が完了する前に、新しいグループのデータ対についての差分データと符号データの計算処理を開始するという着想に基づくものである。ＳＡＤ計算手段の第１パイプライン段の計算ユニットのグループを２以上の実質的に類似するサブグループに分割すること、及び、差分データと符号データの計算プロセスをこれらのグループ間で配分して行うことにより上記の着想は達成される。各サブグループの計算ユニットは、同じ入出力ラインを共用し、１処理ステップの時間オフセットの間隔で時間的にインターレースされる方法で作動する。本発明による方法は、別のサブセットのデータ値対の比較値の計算の開始後かつ該計算の完了前のある時間内に、１つのサブセットのデータ値対の比較値の計算が開始されるように、前記比較値の計算がインターレースされることを主たる特徴とするものである。本発明によるビデオ符号化システムは、上記システムが前記比較値のインターレースされた計算を行う手段であって、別のサブセットのデータ値対の比較値の計算の開始後かつ該計算の完了前のある時間内に、１つのサブセットのデータ値対の比較値の計算を開始する手段を含む手段をさらに具備することを主たる特徴とするものである。本発明によるビデオ符号化装置は、前記比較値のインターレースされた計算を行う手段であって、別のサブセットのデータ値対の値の対との間の比較値の計算の開始後かつ該計算の完了前の或る時間内に、１つのサブセットのデータ値対の比較値の計算を開始する手段を含む手段をさらに具備することを主たる特徴とするものである。
【００２７】
本発明は、従来技術による解決方法と比較したとき著しい利点を提供するものである。圧縮アレイはより少ない数の入力部を備え、アレイのゲート・カウントと遅延の双方の減少につながる。これは、本発明と従来技術の双方が同数の並列チャネル（第１パイプライン段内の計算ユニット）から構成される場合、本発明の実現に必要な総シリコン面積が、従来技術と比較して著しい減少を示すことを意味する。
【００２８】
本発明の好適な実施例の最初の２つのパイプライン段はより良好なバランスがとれている。本発明の方法によるＳＡＤ計算の処理ステップの持続時間は第２の段の遅延とほぼ同じである。この遅延は、特許文献１（米国特許公報５，８６４，３７２）による装置が使用される場合の処理ステップの持続時間の下限である第１パイプライン段の遅延と比較するとずっと短い遅延である。総処理ステップ数は多くなるが、段間の良好なバランスに起因して総処理時間はさらに短くなる。
【００２９】
また圧縮アレイのサイズの減少は、さらに多くの並列計算ユニットを持つ高速のアーキテクチャが実際に実行可能になりつつあることをも意味する。
【００３０】
アーキテクチャのさらに高速な実現を実際に実行可能にする別の理由として、計算ユニットのグループ間で入力バスを共用できる可能性がある。本発明によるアーキテクチャでは、バス幅が従来技術による解決方法の場合のようにチャネル数に比例して大きくなることはない。
【００３１】
このハードウェアはさらに効率的に利用され、従来技術の場合と同じスループットに対する狭いチップ面積を意味するだけでなく、低い電力消費量も意味するものである。この狭いチップ面積と低い電力消費量を達成できる理由として、圧縮アレイが第１パイプライン段のデータ出力を待つ時間が短くてすむこと、及び、処理中少数のゲートしか起動されないこととが挙げられる。
【００３２】
本発明の実際の実施構成では、特に第１パイプライン段の範囲内のさらに大きな数ｍの計算ユニットの場合、ＳＡＤ計算手段のゲート・カウントを減らすことができることは明らかである。従来技術の装置では圧縮アレイの幅と深さはｍと関連して実質的に大きくなるが、本発明に準拠するＳＡＤ計算手段では大きくならない。また本発明によって、第１パイプライン段の持続時間から第２パイプライン段の持続時間まで（またはこの持続時間近くまで）処理ステップの持続時間を短くすることが可能となる。この第２パイプライン段は従来技術の装置ですでに短かったが、本発明による装置ではさらに短くなる。それは、圧縮アレイが縮小化され、したがって、さらに小さな深さ（少ない段数）を持つことになるからである。したがって、本発明によって、従来技術による解決方法と比較するとゲート・カウントと処理時間の双方が減少する。また、１つのグループのすべての計算ユニットが１つの入力ポートを共用しているため、入力バス幅の要件が今度は簡略化される。計算ユニットのグループ数と、各グループの範囲内の計算ユニット数とは、本発明の実際の実施構成での最初の２段の間でより良好なバランスを達成するための柔軟性を加えるパラメータの役割を果たす。
【００３３】
【発明の実施の形態】
以下、添付図面を参照してより詳細に本発明について説明する。
【００３４】
以下、Ｋ対のｎビット入力データが想定される一般的ケースについて本発明の説明を行う。但し、ビデオ符号化コンテキストでは、Ｋ＝２５６、ｎ＝８は最も一般的なケースである。ビデオ符号化だけでなく、医療用画像処理システムやレーダー画像処理システムのような他のアプリケーションにおいても、また、パターン認識がリアルタイムで実行される他の信号処理タスク（心電図（ＥＣＧ）装置、心臓機能を記録する植え込み型電気的除細動器−細動除去器（ＩＣＤ）装置、音声処理など）においても、絶対差の合計が利用できる可能性があることに留意されたい。
【００３５】
図９は、ビデオ符号化時のビデオの動き予測を実行する方法の原理を示す。図９には、図を明瞭にするために２つのフレームＦＲ１、ＦＲ２しか示されていない。符号化対象フレームＦＲ１には、画素値Ｘｉ，ｊを含む１以上のブロックＸが含まれる。これらの画素値Ｘｉ，ｊのうちの２、３しか図には示されていない。参照フレームＦＲ２の中で探索領域Ｓが定義される。符号化対象フレームＦＲ１の現在のブロックＸと、参照フレームＦＲ２の参照ブロックＹとの間の比較実行領域が探索領域Ｓにより定義される。しかし、実施例によっては、探索領域Ｓとして参照フレームＦＲ２の全領域の利用が可能であることは言うまでもない。本方法では、現在のブロックＸとの比較を行うために参照ブロックＹ、Ｙ’が１ブロックずつ選択される。この探索処理は、全探索領域Ｗがチェックされるまで継続されるか、探索終了のための他に定めうる条件が満たされるまで継続される。以下、この探索についてさらに詳細に説明する。
【００３６】
本発明の好適な実施例によるＳＡＤ計算手段１が図３に描かれている。ＳＡＤ計算手段１は、最初の２つのパイプライン段Ｐ１、Ｐ２との間に、従来技術と比べて良好なバランスを持つ４つのパイプライン段Ｐ１、Ｐ２、Ｐ３、Ｐ４を具備する。このバランスは第１パイプライン段Ｐ１の計算ユニット２（ＤＳ）をグループ３の中へ設けることにより達成される。第１パイプライン段は、ｍ＝ｓｐ個の計算ユニット２（ＤＳ１，１，…，ＤＳ１，ｐ，ＤＳ２，１，…，ＤＳ２，ｐ，…，ＤＳｓ，１，…，ＤＳｓ，ｐ）から構成される。これらのユニットは、各々がｐ個の計算ユニットから成るｓ個のグループにグループ化される。グループ３の各計算ユニット２は、同じ入力Ｘ１、Ｙ１；Ｘ２、Ｙ２；…；Ｘｓ、Ｙｓを共用するが、この共用は異なるクロック・サイクルで行われる。グループ３の計算ユニット２の出力は２つのマルチプレクサ４、５の入力と接続されており、計算ユニット２のｎビット出力が第１のマルチプレクサ４のｎビット入力の中の１つと接続され、計算ユニット２の１ビット出力が第２のマルチプレクサ５の１ビット入力の中の１つと接続されるようになる。第１のマルチプレクサ４はｐ個のｎビット入力と１つのｎビット出力とを具備する。それぞれ、第２のマルチプレクサ５はｐ個の１ビット入力と１個のｎビット出力とを具備する。この構成によって、第２の段Ｐ２の圧縮アレイ６の縮小が可能になる。１つのグループ３の計算ユニット２はほぼ１回分の処理ステップの時間オフセットで動作し、この場合この処理ステップは圧縮アレイの遅延にほぼ等しい持続時間Ｔｐを有することになる。それぞれ、やはりほぼ１回分の処理ステップの時間オフセットを用いて、符号データと差分データとが計算ユニット２の出力で形成される。１つのグループ３のすべての計算ユニット２の出力の対は、マルチプレクサ４、５を介して圧縮アレイ６の単一対の入力と接続されるため、処理ステップ毎に、符号データと差分データとを計算したばかりの計算ユニット２が圧縮アレイ６と接続されることになる。したがって、すべてのグループ３の異なる計算ユニット２間で交番することにより、上記圧縮アレイは、新しい符号データと差分データ部分の受信及び累積を処理ステップ毎に行う。
【００３７】
処理ステップの持続時間Ｔｐは、従来技術の装置における最初の段の遅延とほぼ等しく、その場合、本発明によるＳＡＤ計算手段１を使用することにより著しい処理時間の改善を図ることが可能となる。
【００３８】
第１パイプライン段Ｐ１の計算ユニット２の１つの好適な実施例が図４に示されているが、本発明と共に計算ユニット２の別の実施例を用いることが可能であることは言うまでもない。すべての計算ユニット２（ＤＳｉ，ｊ（ｉ＝１，…，ｓ、ｊ＝１，…，ｐ））は、２つの入力値Ｘｉ，ｊとＹｉ，ｊと、１つのｎビット出力値Ａｉ，ｊと、１つの単一ビット出力値Ｂｉ，ｊとを有し、これは、特許文献１（米国特許５，８６４，３７２）の装置の場合と同じ入出力関係である。この場合、各計算ユニット２のスループットは一対の入力データ当たりｐ回の処理ステップであると想定されている。計算ユニット２は、２つのｎビットデータ入力Ａ、Ｂと、１つのｎビットデータ出力Ｓと、キャリイン（ｃａｒｒｙ−ｉｎ）ＣＩ及びキャリアウト（ｃａｒｒｙ−ｏｕｔ）ＣＯとを備えた加算器１６を具備する。第１のデータのセットＸの値が第１のデータ入力Ａに入力され、次いで、インバータ・ユニット１７を介して第２のデータのセットＹの値が第２のデータ入力Ｂに入力される。インバータ・ユニット１７は第２のデータのセットの値の１の補数を形成する。キャリインＣＩが論理１の値にセットされ、データ入力に入力された値の差分（Ｘ−Ｙ）が加算器１６によって計算される。計算ユニット２は、ＸＯＲユニット１８をさらに有し、キャリアウトＣＯがセットされた（計算された差分が負（Ｘ＜Ｙ））場合、このＸＯＲユニット１８によって加算器１６の出力ビットＳが反転される。そうでない場合、加算器１６の出力ＳはＸＯＲユニット１８によって現状のまま、すなわち計算された差分が負でない（Ｘ≧Ｙ）状態に放置される。キャリアウト信号が符号値として用いられ、ＸＯＲユニット１８の出力が差分値として用いられる。第１パイプライン段で計算ユニット２の別の実施構成の使用が可能であることは言うまでもない。
【００３９】
上述のように、ＳＡＤ計算手段１はｓ対のｎビット入力を有し、ｉ番目の対（Ｘｉ，Ｙｉ）（ｉ＝１，…，ｓ）は、ｉ番目のグループのすべての計算ユニットＤＳｉ，１，…，ＤＳｉ，ｐにより共用される。ＳＡＤ計算手段１の入力値（Ｘｉ，Ｙｉ）（ｉ＝１，…，ｓ）対は、入力レジスタ７を介して、ｉ番目のグループのすべての計算ユニットＤＳｉ，ｊ、ｊ＝１，…，ｐの一対の入力値（Ｘｉ，ｊ，Ｙｉ，ｊ）と接続される。第１パイプライン段のこれらの入力レジスタ７のすべては、ＳＡＤ計算手段１のｐ回に１回の処理サイクル中だけ開いている。これがタイミング図として図５（ａ）に示されている。このようにして、すべての処理ステップにおいて、ＳＡＤ計算手段１の各入力対（Ｘｉ，Ｙｉ）（ｉ＝１，…，ｓ）が唯一の計算ユニットの一対の入力値（Ｘｉ，ｊ，Ｙｉ，ｊ）と実際に接続されるが、一方で、第１パイプライン段の対応する入力レジスタが書込みに対して閉じられるため、その他の接続部は活動状態にはならない。すべてのグループ（ｉ＝１，…，ｓ）の第１の計算ユニットＤＳｉ，１の入力部における第１パイプライン段の入力レジスタは、ｐ回の処理ステップのうちの最初の回のステップ中開かれ、すべてのグループの第２の計算ユニットＤＳｉ，２の入力部における第１パイプライン段の入力レジスタはｐ回の処理ステップのうち第２回のステップ中開かれる。一般に、処理ステップ
【数７】
0004188647.tif 000009
において、ＳＡＤ計算手段１の一対の入力値（Ｘｉ，Ｙｉ）（ｉ＝１，…，ｓ）は、ｉ番目のグループの計算ユニットのｕ番目の計算ユニットＤＳｉ，ｕの入力レジスタと実際に接続される。但しｕ＝（ｔ−１）ｍｏｄｐ＋１である。したがって、ＳＡＤ計算手段１のすべての対の入力値（Ｘｉ，Ｙｉ）（ｉ＝１，…，ｓ）は、ｉ番目のグループの計算ユニットにより空間的に共用されるが、ｉ番目のグループの計算ユニットにわたって時間に沿って配分される。
【００４０】
本発明によるＳＡＤ計算手段１の作動中、データのセットＸ＝｛ｘ１，…，ｘＫ｝とＹ＝｛ｙ１，…，ｙＫ｝とが１部分ずつＳＡＤ計算手段１の入力値に入力される。ｔ番目の処理ステップ
【数８】
0004188647.tif 000010
において、データ部分｛ｘ（ｔ−１）ｓ＋１，…，ｘｔｓ｝と｛ｙ（ｔ−１）ｓ＋１，…，ｙｔｓ｝とは、それぞれ、入力値Ｘ１，…，ＸｓとＹ１，…，Ｙｓへ入力され、次いで、１回の処理ステップ後、第１パイプライン段の対応する入力レジスタを介して、計算ユニットＤＳ１，ｕ，…，ＤＳｓ，ｕの入力値Ｘ１，ｕ，…，Ｘｓ，ｕとＹ１，ｕ，…，Ｙｓ，ｕ（ｕ−（ｔ−１）ｍｏｄｐ＋１）へ渡される。入力データの当該部分に対応する差分データ｛ａ（ｔ−１）ｓ＋１，…，ａｔｓ｝と符号データ｛ｂ（ｔ−１）ｓ＋１，…，ｂｔｓ｝（ａｉ＋ｂｉ＝｜ｘｉ−ｙｉ｜）は、計算ユニット２の出力部におけるほぼｐ回の処理ステップ（すなわちｔ＋ｐ＋１番目の処理ステップ後）の遅延を伴って生成される。以上はタイミング図として図５（ｂ）に示されている。
【００４１】
計算ユニット２の出力は、ｎビットのｐ対１マルチプレクサ４または１ビットのｐ対１マルチプレクサ５と接続される。ｉ番目のグループ（ｉ＝１，…，ｓ）のすべての計算ユニットＤＳｉ，ｊ（ｊ＝１，…，ｐ）の出力値Ａｉ，ｊ（ｊ＝１，…，ｐ）は、単一ｎビット出力値Ａｉを有するｎビットのｐ対１マルチプレクサ４（ｎ−ＭＵＸｉ）の入力と接続される。同様に、ｉ番目のグループ（ｉ＝１，…，ｓ）のすべての計算ユニットＤＳｉ，ｊの出力値Ｂｉ，ｊ（ｊ＝１，…，ｐ）は、単一１ビット出力値Ｂｉを有する１ビットのｐ／１マルチプレクサ５（１−ＭＵＸｉ）の入力と接続される。マルチプレクサ４、５は、ｐによる余剰の循環ルール（ｃｉｒｃｕｌａｒ  ｍｏｄ  ｐ  ｒｕｌｅ）に従って、その入力からその出力へ信号を渡し、それによって、処理ステップ
【数９】
0004188647.tif 000011
で、グループ（ｉ＝１，…，ｓ）のｕ番目の（ｕ＝（ｔ−１）ｍｏｄｐ＋１）の計算ユニットＤＳｉ，ｕの出力がマルチプレクサｎ−ＭＵＸｉ、１−ＭＵＸｉによりマルチプレクサの出力と接続される。如上の考察から、処理ステップ
【数１０】
0004188647.tif 000012
において、計算ユニットＤＳｉ，ｕ（ｕ＝（ｔ−１）ｍｏｄｐ＋１）がデータ部分｛ｘ（ｔ−１）ｓ＋１，…，ｘｔｓ｝と｛ｙ（ｔ−１）ｓ＋１，…，ｙｔｓ｝に対応する差分データと、符号データの計算を正確に実行したことの判定が可能となる。このようにして、マルチプレクサ４、５は好適に作動し、その結果、処理ステップ
【数１１】
0004188647.tif 000013
の最後で、符号データと差分データ｛ｂ（ｔ−１）ｓ＋１，…，ｂｔｓ｝とはマルチプレクサ４、５の出力へ渡される。これがタイミング図として図５（ｃ）に例示されている。
【００４２】
マルチプレクサ４、５の出力は、第１パイプライン段の出力レジスタ８を介して第２パイプライン段Ｐ２の入力と接続される。第２パイプライン段Ｐ２は圧縮アレイ６であり、この圧縮アレイ６は、（従来技術の装置の場合のようなｍ＝ｐｓ個の入力の代わりに）第１パイプライン段Ｐ１からのｓ個の入力信号と、第２パイプライン段Ｐ１の合計出力９と桁上げ出力１０とから得られる２つのフィードバック信号とを有する。圧縮アレイ６は、マルチプレクサ４、５の出力における符号データと差分データとを累積することにより、処理ステップ毎に圧縮アレイ６の合計項と桁上げ項の値を更新する。この場合、圧縮アレイの遅延はＳＡＤ計算手段の処理ステップの持続時間に等しいと想定されている。マルチプレクサ４、５の出力において第１の符号データ部分と差分データ部分とが利用可能な場合、処理ステップｐ＋２から累積が開始され処理ステップの最後まで行われる。すべての値の対の累積が実行された後、圧縮アレイ６の出力には符号データと差分データとが含まれる
【００４３】
また第２パイプライン段Ｐ２は圧縮アレイ６によって計算された合計項と桁上げ項の値を一時的に記憶する出力レジスタ１１も備えている。これは同期されたパイプライン・クロック・タイミングを適切に制御するために必要である。出力レジスタ１１も使用して、合計項と桁上げ項とが記憶され、これらの項は圧縮アレイ６の入力へフィードバックされ、後続する処理ステップで合計される。
【００４４】
第２パイプライン段Ｐ２の圧縮アレイ６は、好適には、公知の全加算器（ＦＡ）もしくは４／２比圧縮装置のいずれかから構成される桁上げ保存加算器のツリーである。このツリーの様々な構成が可能である。特に、従来技術で使用されているツリー構造の利用が可能である。提案されたアーキテクチャの従来技術との主要な相違点として、（ｍではなく）ｓ＝ｍ／ｐのｎビット値及び圧縮アレイ６自体の合計出力値９と桁上げ出力値１０からの２つのフィードバック入力値に加えて、圧縮アレイが同じ値の単一ビット入力値しか必要としないという点が挙げられる。したがって、第１パイプライン段Ｐ１の中にｍ個の計算ユニット２を備えた、本発明の好適な実施例によるＳＡＤ計算手段１では、ｓ＝ｍ／ｐ個の計算ユニットだけの場合に構成されるような従来技術の装置の圧縮アレイと実質的に同様の圧縮アレイを利用してもよい。さらに、圧縮アレイの出力値９、１０からのフィードバック値により、圧縮アレイの第１段の出力だけでなく圧縮アレイの任意の段の出力との接続が可能となる。
【００４５】
同数の計算ユニット２を備えた従来技術の装置と比較したとき、圧縮アレイ６の入力の数が少ないため、少ない数の全加算器または４／２比圧縮装置を用いて圧縮アレイ６の構成が可能となる。また圧縮アレイ６の段数がさらに少ないため、結果としてさらに遅延が短くできる。本発明の好適な実施例に従うＳＡＤ計算手段の処理ステップの持続時間すなわち処理上の基本クロック時間単位Ｔｐは、パラメータｐとｓを適切に選択すれば、圧縮アレイの遅延６として定められる。
【００４６】
ｍ個のサンプルの２個の各データのセット間の絶対差の合計の合計項と桁上げ項を計算するために必要な処理ステップの総数はｂで与えられることが上述の考察から理解できる。
【数１２】
0004188647.tif 000014
上式は、特許文献１（米国特許５，８６４，３７２）のｓ＝ｍの装置と、本発明のＳＡＤ計算手段１の双方に対するものであるが、本発明のＳＡＤ計算手段１の処理ステップの持続時間Ｔｐの方が、特許文献１（米国特許５，８６４，３７２）の装置の処理ステップの持続時間よりも短い。圧縮アレイ内の狭い幅と少ない段数とに起因して、本発明のＳＡＤ計算手段１の実現に必要なシリコン面積の方が、特許文献１（米国特許５，８６４，３７２）の装置面積と比べて狭くなることも明らかである。
【００４７】
第３パイプライン段Ｐ３は加算器１２を具備し、この加算器１２により、計算された合計項と桁上げ項とが加算され、チェック中のブロックと現在の参照ブロックとの間の絶対差の合計が生成される。本願で前述したように、絶対誤差ＳＡＤ（Ｘ，Ｙ）の合計を加算器１２の加数Ｋで除することにより、加算器１２によって例えば平均絶対誤差（ＭＡＥ）の計算を行うことも可能である。第４パイプライン段Ｐ４の最小値評価装置１３において、最も新しい計算結果が前回の計算結果の最小ＳＡＤ値と比較される。最も新しい計算結果の方が前回得られた最小ＳＡＤ値よりも小さい場合、最小ＳＡＤ値は新しい計算結果と置き換えられる。最小値評価装置１３は最小ＳＡＤ値を記憶する手段１４（記憶手段など）を有する。チェック中のブロックに対するＳＡＤ計算の開始時に、最小ＳＡＤ値が大きなデフォルト値にセットされて、第１の計算結果が最小ＳＡＤ値として記憶されることが保証される。これは、比較の対象となる、チェック中のブロックに対する前回の計算値が存在しないためである。
【００４８】
上記比較段の後、本発明のこの好適な実施例で、チェック中のブロックについてＳＡＤ値を計算するためにすべての参照ブロックが使用されたかどうかがチェックされる。現在のブロックについてのＳＡＤ値の計算時にまだ使用されていない少なくとも１つの参照ブロックが依然として存在する場合、上述の処理手順が反復される。使用されていない参照ブロックが存在しない場合、得られた最小ＳＡＤ値がビデオ符号化処理の後の段階で使用され、現在のブロックをそのまま符号化するか、動き補償を行うかの判定が行われる。最小値評価装置１３は、現在のブロックの最小ＳＡＤ値を生成したブロックの座標を判定し、判定手段１５へ最小ＳＡＤ値と共にこの座標情報を転送する。判定手段１５では、最小ＳＡＤ値がチェックされて、現在のブロックをそのまま符号化するか、動き補償を行うかの判定が行われる。判定手段１５は、例えば、ブロックの転送に必要な情報量の評価や、動き補償情報の転送に必要な情報量の評価を行うことが可能である。次いで、情報転送容量の少ない方の選択肢が判定手段１５により好適に選択される。
【００４９】
ブロック自体の代わりに、動き補償情報を伝送することを選択した状況で、伝送対象情報の中には少なくとも座標情報と動きエラー情報とが好適に含まれる。座標情報を利用して、以前に受信され、復号化されたどの参照ブロックが動きベクトルの形成に利用されたかについての情報が復号器に与えられる。この動き誤差情報とは現在のブロックと参照ブロックのそれぞれの画素値間の差分である。次いで、動き誤差情報により訂正された前記参照ブロックを用いることにより、復号器は現在のブロックの画像情報の形成が可能となる。
【００５０】
以下、パラメータｓとｐの選択について説明する。第１の例では、第１パイプライン段Ｐ１の範囲内の計算ユニット２の総数は一定であると仮定する。本例では、第１パイプライン段Ｐ１に含まれる計算ユニット２の数は８（ｍ＝８）である。この場合、表２と３に要約されているように、圧縮アレイ６を構成するために全加算器（ＦＡ）を使用するか４／２比圧縮装置を使用するかの２つのケースに対応して、パラメータｐとｓを選択するいくつかの可能性が存在する。これらの表では、ＮＦＡは対応する圧縮アレイ６の範囲内の段数であり、ＧｔｏｔａｌはＳＡＤ計算ユニット１の最初の２つのパイプライン段Ｐ１、Ｐ２の総ゲート・カウント数の予測値であり（パイプライン・レジスタはカウントされない）、ＤＦＡは圧縮アレイの遅延であり、ＴｐとＴｔｏｔａｌとは数式（３）と同じものである。表の最後の列は圧縮アレイ６の相対的利用時間を示す。Ｇｔｏｔａｌの数は、合計Ｇｔｏｔａｌ＝ＧＤＳ＋ＧＭＵＸ＋ＧＣＡとして与えられる。但し上記加数は、マルチプレクサ４、５用及び圧縮アレイ６用の計算ユニット２のブロックのゲート・カウントをそれぞれ表す。これらの数は表４に要約されているような等価ＮＡＮＤゲートについて基本構成要素のゲートカウントの概算を用いてカウントされたものである。
【００５１】
表２と３の第１行は、ｐ＝１のケースに対応する特許文献１（米国特許５，８６４，３７２）の装置を表す。これらの表の第２行によって示されるアーキテクチャは図６に描かれている。同様にしてその他のケースに対応するアーキテクチャが得られる。これらの表から解るように、ｐの値の増加につれてゲート・カウントと処理時間の双方が減少している。
【００５２】
【表２】
0004188647.tif 000015
【００５３】
【表３】
0004188647.tif 000016
【００５４】
【表４】
0004188647.tif 000017
【００５５】
別の例では、ＳＡＤ計算手段１がシステムの中に組み込まれている（但しＳＡＤ計算手段１自身のクロックでそのまま作動している）状況で、例えば６４ビットなどに入力バス幅を限定することが想定される。バッファが利用されなかったり、（ゲート・カウントを上げる何らかの）別の技術が利用されたりした場合、これは、第１パイプライン段の範囲に含まれるＤＳユニット数の上限が、特許文献１（米国特許５，８６４，３７２）の装置の場合ｍ＝４（ｓ＝４、ｐ＝１）であることを意味する。上記装置の圧縮アレイは、４つのｎビットと、４つの単一ビットと、２つの（２ｎ−１）ビット入力とを備えた桁上げ保存加算器ツリーである。表１から、圧縮アレイの遅延が６τであり、これに対して、第１パイプライン段のスループットが１６τであるため、その結果として段間に不適切なバランスが生じるということがわかる。しかし、本発明によって、特許文献１（米国特許５，８６４，３７２）の装置内のものと同じ圧縮アレイをそのまま使用して、ｍ＝１６（ｓ＝４、ｐ＝４）まで最初の段内のＤＳユニット数の増加が可能になる。表５は、結果として得られるアーキテクチャの（ｐに依存する）面積／時間特性を要約するものである（ｐ＝１を持つ第１行は特許文献１（米国特許５，８６４，３７２）の装置に対応する）。本例では全加算器をベースとする圧縮アレイが用いられた。表でわかるように、特許文献１（米国特許５，８６４，３７２）（ｐ＝１）の装置の代わりに、ｐ＝３を用いる本発明を用いることにより、同じ入力バス幅を保持しながら、最初の２つのパイプライン段Ｐ１、Ｐ２の総処理時間数を２．５９倍だけ減らすことが可能となる。当然のことであるが、ゲート・カウントもほとんど比例して増加する（２．３７倍）。この場合第１パイプライン段Ｐ１が圧縮アレイ６よりも不必要に高速になるため、パラメータｐのさらなる増加は必ずしも改善につながるとはかぎらない。
【００５６】
【表５】
0004188647.tif 000018
【００５７】
圧縮アレイ６を２つのパイプライン段に分割し、フィードバック・ループをより短くすることによりにさらなる改善が可能である。本発明の場合、計算ユニット２から成る各グループ３内の計算ユニット２の数ｐが非常に大きな数になったため、最初の段Ｐ１の方が第２の段Ｐ２（圧縮アレイ６）よりも高速になるすべての場合に上記改善は有益である。表５の最後の行はこの種の構成が有益なものとなり得る一例に対応するものである。この場合、２つのパイプライン段に圧縮アレイを分割し、各々が、４つの入力を備えた圧縮アレイとなるようにし、それによって、その後、処理ステップの持続時間となる４τの遅延を生じるようにすることも可能である。次いで、第２の圧縮アレイの出力時にＳＡＤの最終合計項と桁上げ項を見つけるための時間Ｔｔｏｔａｌは、
【数１３】
0004188647.tif 000019
まで減少することになる（特許文献１（米国特許５，８６４，３７２）の装置よりも３．７７倍高速になる）。
【００５８】
本発明によるＳＡＤ計算ユニット１のパラメータｓとｐとを選択して、実際の実施構成の中でパフォーマンス全体が最適となるようにすることが可能となる。
【００５９】
次に、図８のブロック図を参照しながら、好適な実施例によるビデオ伝送システムについて説明する。伝送対象のビデオ信号はビデオカメラ１９などにより得られるか、あるいは、例えば、ビデオ録画装置、デジタル・ディスクなどのビデオ記憶手段（図示せず）から取り出されたものであってもよい。ビデオ信号は符号器２０へ転送され、符号器２０は本発明による動き予測を含むビデオ信号の符号化を実行する。次いで、符号化されたビデオ信号は、必要に応じてチャネル符号器２１でチャネル符号化される。チャネル符号化の目的は伝送チャネル２２を介する伝送に適した形に符号化されたビデオ信号の変換を行うことである。チャネル符号化の細部はビデオ符号化システムの様々な実施構成で変更が可能であり、これらの細部について当業者は周知である。
【００６０】
受信装置では、チャネル復号器２３でチャネル符号化ビデオ信号のチャネル復号化が行われ、符号化されたビデオ信号の取出しが行われる。その後、復号器２４によりビデオ信号が復号化され、原信号とほぼ一致することが予想されるビデオ信号が生成される。しかし、実際問題として、いくつかの潜在的誤差の源が存在し、これらの誤差の源は転送されたビデオ信号に影響を与える可能性があり、復号化されたビデオ信号が原ビデオ信号とは異なるものとなる可能性がある。このような伝送エラーの影響を最小限にするための誤差訂正メカニズムが開発されている。
【００６１】
ビデオ・モニタ２５上に復号化されたビデオ信号の表示を行うこと及び／又は記憶手段２６の中へ該ビデオ信号を記憶することが可能である。
【００６２】
図７は、本発明の好適な実施例によるビデオ符号化装置２７を簡略に示すものである。当該端末装置は伝送及び受信の双方に適したものであるが、本発明は単純な端末装置と接続して利用することも可能である。ビデオ符号化装置２７では、図７のブロック図に提示されているすべての機能特性は必ずしも必要ではないが、本発明の範囲内で、例えばキーボード２８とオーディオ手段２９とが設けられていないさらに単純なビデオ符号化装置２７を利用することも可能である。前記キーボード２８とオーディオ手段２９とに加えて、ビデオ端末装置は、ビデオ・モニタ２５、ビデオカメラ１９またはその類のビデオ手段も具備する。
【００６３】
ビデオ符号化装置２７の機能を制御するために、ビデオ符号化装置２７は制御ユニット３０を具備し、この制御ユニット３０は、例えば、マイクロ制御用ユニット（ＭＣＵ）、マイクロ処理用ユニット（ＭＰＵ）、デジタル信号プロセッサ及び／又はその類のものを具備する。さらに、制御ユニット３０には、例えばアプリケーション・プログラムとデータとを記憶する記憶手段３４と、制御ユニット３０と別の機能ブロックとの間で信号を伝送するためのバス・インターフェース手段Ｉ／Ｏとが含まれる。ビデオ符号化装置２７は、ビデオ情報の符号化／復号化及び圧縮／伸長を行うビデオ・コーデック３２も具備する。圧縮はＤＣＴ変換と量子化などに基づいて行われ、その場合、伸長段階で、公知のように受信情報が逆量子化され、逆ＤＣＴ変換が行われる。チャネル・コーデック３３により伝送対象情報のチャネル符号化と、受信情報のチャネル復号化とが行われる。移動通信手段３１などによりチャネル符号化ビデオ信号の伝送を行うことが可能である。
【００６４】
本発明が、単に前記の実施例のみに限定されるものではなく、特許請求の範囲内で修正が可能であることは言うまでもない。
【図面の簡単な説明】
【図１】従来技術のＳＡＤ計算手段を示す簡略なブロック図である。
【図２】従来技術のＳＡＤ計算手段の従来技術のＤＳ（差分符号）ユニットの構造を示す簡略なブロック図である。
【図３】本発明によるＳＡＤの計算手段を示す簡略なブロック図である。
【図４】本発明の好適な実施例によるＳＡＤの計算手段のＤＳユニットの構造を示す簡略なブロック図である。
【図５】（ａ）は、本発明の好適な実施例によるＳＡＤ計算手段の第１パイプライン段の入力レジスタの処理サイクルを示すタイミング図であり、（ｂ）は、本発明の好適な実施例によるＳＡＤ計算手段の計算ユニットの処理サイクルを示すタイミング図であり、（ｃ）は、本発明の好適な実施例によるＳＡＤ計算手段の第１パイプライン段のマルチプレクサの処理サイクルを示すタイミング図である。
【図６】本発明の好適な実施例によるＳＡＤ計算手段を示す簡略なブロック図である。
【図７】本発明の好適な実施例による通信装置を示す簡略なブロック図である。
【図８】本発明の好適な実施例によるビデオ伝送システムを示す簡略なブロック図である。
【図９】ビデオ符号化時にビデオの動き予測を実行する方法を示す図である。
【符号の説明】
１…ＳＡＤ計算手段
２…計算ユニット
３…グループ
４…マルチプレクサ
５…マルチプレクサ
６…圧縮アレイ
７…第１パイプライン段の入力レジスタ
８…第１パイプライン段の出力レジスタ
９…合計出力
１０…桁上げ出力
１１…出力レジスタ
１２…加算器
１３…最小値評価装置
１４…最小値
Ｐ１、Ｐ２、Ｐ３、Ｐ４…パイプライン段
【図１】
0004188647.tif 000020
【図２】
0004188647.tif 000021
【図３】
0004188647.tif 000022
【図４】
0004188647.tif 000023
【図５】
0004188647.tif 000024
【図６】
0004188647.tif 000025
【図７】
0004188647.tif 000026
【図８】
0004188647.tif 000027
【図９】
0004188647.tif 000028