JP2003023638A - 動きベクトル検出装置および動きベクトル検出装置における自己テスト方法 - Google Patents

動きベクトル検出装置および動きベクトル検出装置における自己テスト方法

Info

Publication number
JP2003023638A
JP2003023638A JP2001206321A JP2001206321A JP2003023638A JP 2003023638 A JP2003023638 A JP 2003023638A JP 2001206321 A JP2001206321 A JP 2001206321A JP 2001206321 A JP2001206321 A JP 2001206321A JP 2003023638 A JP2003023638 A JP 2003023638A
Authority
JP
Japan
Prior art keywords
data
test
motion vector
block
self
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.)
Withdrawn
Application number
JP2001206321A
Other languages
English (en)
Inventor
Kazuya Ishihara
和哉 石原
Stefan Scotzniovsky
ステファン スコツニオヴスキー
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2001206321A priority Critical patent/JP2003023638A/ja
Priority to US10/160,002 priority patent/US20030012283A1/en
Publication of JP2003023638A publication Critical patent/JP2003023638A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

(57)【要約】 【課題】 精度よく自己テストを行なうことができる、
簡単な構成の動きベクトル検出装置を提供する。 【解決手段】 動きベクトル検出装置は、テンプレート
ブロックデータ(TBD)および探索範囲中の参照画像
ブロックデータ(SWD)を受けて、TBDとSWD中
の各ブロックとの間の相関を演算する演算部4と、テス
ト用のデータおよび外部から受ける処理対象のデータの
いずれか一方を選択して演算部4に対して与えるセレク
タを含む入力部2と、入力部2によって演算部4に処理
対象のデータが与えられたとき、演算部4の演算結果を
比較して、TBDの動きベクトルを検出するための比較
部6と、演算部4にテスト用のデータが与えられたと
き、演算部4の演算結果を圧縮する結果圧縮部8と、テ
スト時にはテスト用のデータを選択するよう入力部2を
制御するテスト制御部10、12とを含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、動画像の動き補
償に用いられる動きベクトルを検出するための装置に関
し、特に、ブロックマッチング法に従って動きベクトル
を検出するための動きベクトル検出装置に関する。
【0002】
【従来の技術】膨大なデータ量を有する画像信号の伝送
または蓄積のためには、データ量を削減するデータ圧縮
技術が必要不可欠となる。画像データは、近隣画素間の
相関関係および人間の知覚特性などに起因するかなりの
冗長度を備える。この画像データの冗長度を抑圧して伝
送データ量を削減するデータ圧縮技術は、高能率符号化
と呼ばれる。この高能率符号化方式の1つに、フレーム
(フィールド)間予測符号化方式がある。このフレーム
(フィールド)間予測符号化方式においては、以下の処
理が実行される。
【0003】符号化対象の現フレーム(またはフィール
ド)の画素データと参照する時間的に前または後のフレ
ーム(またはフィールド)の同じ位置にある画素データ
の差分である予測誤差を各画素ごとに算出する。この算
出された予測誤差を以降の符号化に用いる。この方式に
従えば、動きの少ない画像に関しては、フレーム(また
はフィールド)間の相関が大きいため予測誤差値は小さ
く、高能率な符号化を行なうことができる。しかしなが
ら、動きの大きな画像については、フレーム(またはフ
ィールド)間の相関が小さいため、誤差が大きくなり、
逆に伝送されるデータ量が増加するという欠点が生じ
る。このような問題点を解決する方法として、動き補償
付フレーム(またはフィールド)間予測符号化方式があ
る。
【0004】図29は、従来の予測符号化回路の構成を
概略的に示す図である。図29において、この予測符号
化回路は、前段の前処理回路から与えられる画像信号に
対して動きベクトルを検出し、かつこの動きベクトルに
従って動き補償された参照画像を生成する動き補償予測
器920と、動き補償予測器920から読出された参照
画像画素データに対してフィルタ処理を行なうループフ
ィルタ922と、入力画像信号とループフィルタ922
の出力信号の差分を求める減算器924と、減算器92
4の出力信号(データ)に直交変換を行なう直交変換器
926と、直交変換器926の出力データを量子化する
量子化器928とを含む。
【0005】動き補償予測器920は、先行フレーム
(またはフィールド)の画素データを格納するためのフ
レームメモリを有し、この先行フレームの画素データと
入力画像信号データとに従って動き補償された参照画像
画素データを生成しかつこの生成された動き補償参照画
像画素データを別のバッファメモリに格納する。ループ
フィルタ922は、画質を改善するために設けられる。
【0006】直交変換器926は、所定のサイズ(通
常、8×8画素)のブロック単位で減算器924から与
えられたデータにDCT(Discrete Cosine Transfor
m)変換などの直交変換を行なう。量子化器920は、
この直交変換された画素データを量子化する。
【0007】動き補償予測器920および減算器924
は、動き補償のために、フレーム間予測(またはフィー
ルド間予測)を行ない、動画像の時間的な冗長度を低減
する。また、直交変換器926による直交変換により、
動画像における空間的な冗長度が低減される。
【0008】この符号化回路は、さらに、量子化器92
8により量子化されたデータを元の信号状態に変換する
ための逆量子化器930と、逆量子化器930の出力デ
ータに逆直交変換を行なう逆直交変換器932と、ルー
プフィルタ922の出力データと逆直交変換器932の
出力データを加算する加算器934とを含む。逆量子化
器930および逆直交変換器932により、後続のフレ
ーム(またはフィールド)のためのフレーム(フィール
ド)間予測に用いられる画像データが生成される。すな
わち、この逆直交変換器から、送信される差分値コード
が生成される。加算器934により、ループフィルタ9
22の出力データと逆直交変換器932からのフレーム
(フィールド)間差分データを加算することにより、現
フレーム(フィールド)の画像データが再生される。こ
の加算器934の出力データは、動き補償予測器920
に含まれるフレームバッファに書込まれる。次に、この
動き補償予測器920における動きベクトルmvを検出
する方法について説明する。
【0009】今、図30に示すように、画像950が、
352ドット(画素)×288行で構成される場合を考
える。この画像950は、各々が16×16画素を含む
グループ単位で複数のブロックに分割される。動きベク
トルは、ブロック単位で検出される。動きベクトルを探
索する範囲を示すサーチエリアが、画素ブロック956
で構成されると仮定する。この画素ブロック(サーチエ
リア)956は、画面上水平および垂直方向において、
ブロック955に対して±16画素分大きい。ブロック
954は、対象ブロック(テンプレートブロック)95
2と同じ位置にある。テンプレートブロック952が、
現画像ブロックであり、このテンプレートブロック95
2に対し、動きベクトルが検出される。この動きベクト
ルの探索方法は、以下の手順で行なわれる。
【0010】図30において、ベクトル(i,j)で示
すブロックは、テンプレートブロック952に対し、変
位(i,j)を有し、このベクトル(i,j)が、動き
ベクトル候補である。テンプレートブロック952の各
画素データと変位ベクトル(i,j)を有するブロック
の各画素(同じ位置にある画素)の差分絶対値和(また
は差分二乗和)のような評価関数値が求められる。この
評価関数値を求める操作が、ベクトル(i,j)の(−
16,−16)から(+16,+16)の範囲のすべて
の変位について実行される。このサーチエリア956内
の画像ブロック(サーチウィンドウブロック)のすべて
のブロック(予測画像ブロック)に対して評価関数値が
求められると、最小評価関数値を有する予測画像ブロッ
クが検出される。この最小評価関数値を有する予測画像
ブロックが有するブロック954に対する変位が、この
テンプレートブロック952に対する動きベクトルとし
て決定される。
【0011】この動きベクトル検出は、予測誤差を算出
する前に行なわれる。予測画像は、現フレーム(または
フィールド)と時間的に前または後のフレーム(または
フィールド)である。この算出された動きベクトルに従
って、参照するフレーム(またはフィールド)の予測画
像を移動させる。すなわち、参照するフレーム(または
フィールド)の動きベクトルだけずれた位置の画像デー
タを参照画像とし、この参照画像の各画素を予測値とし
て用いる。移動後の参照フレーム(またはフィールド)
と現フレーム(またはフィールド)の同一位置の画素間
の予測誤差を算出し、この算出された予測誤差を動きベ
クトルとともに伝送する。
【0012】
【発明が解決しようとする課題】現画像および参照画像
をブロック分割し、この現画像ブロックと最も相関度の
高い参照画像ブロックを求める方法をブロックマッチン
グ法と称す。このブロックマッチング法に従えば、画素
ブロック単位で最も相関度の高い参照画像ブロックを検
出することができ、予測誤差を小さくすることができ、
高能率の符号化を実現することができる。この動きベク
トルは、各画素ブロックごとに伝送する必要がある。ブ
ロックサイズが小さい場合には、ブロック数が増大し、
応じて伝送情報量が増大する。一方、ブロックサイズが
大きい場合には、効果的な動き検出を行なうことができ
ない。したがって、上述のように、一般にこの画素ブロ
ックは、16・16画素の大きさに設定される。
【0013】ところで、このようにブロックマッチング
法で画素ブロック単位でもっとも相関度の高い参照画像
ブロックを検出するためには、各画像ブロックごとに、
参照画像内の一定の動きベクトル探索ウィンドウ内の全
参照画像ブロックとの誤差を計算しなければならない。
そのためには同種の計算を高速で行うための、並列に動
作する演算装置を設ける必要があり、ハードウェア量が
多大になるという問題がある。
【0014】ところが、そのようにハードウェア量が多
大となると、そのテストに要する時間も長くなるという
問題がある。仮にハードウェアに何らかの欠陥があれば
動きベクトルの検出が正確に行えず、動き補償付きフレ
ーム(フィールド)間予測符号化が正しく行えなくなる
おそれがある。
【0015】ハードウェアをテストする手法として、装
置内部のレジスタをスキャンパス化し、種々のテストデ
ータをスキャンパスを介して装置に与えて装置を動作さ
せ、その結果を再びスキャンパスを介して取り出して装
置の動作を検証するものがある。しかしこの手法では、
装置内部のレジスタをスキャンパス化することが必要と
なり、装置が複雑化し、また大型化するという問題があ
る。
【0016】それゆえ、この発明の目的は、高精度でハ
ードウェアのテストを行なうことができる、簡単な構成
の動きベクトル検出装置を提供することである。
【0017】この発明の他の目的は、高精度でハードウ
ェアに対して種々のテストを行なうことができる、簡単
な構成の動きベクトル検出装置を提供することである。
【0018】この発明のさらに他の目的は、高精度で、
外部のテスト装置を使用することなく、ハードウェアに
対するテストを行なうことができる、簡単な構成の動き
ベクトル検出装置を提供することである。
【0019】この発明のさらに他の目的は、スキャンパ
スを用いず、高精度でハードウェアに対するテストを行
なうことができる動きベクトル検出装置を提供すること
である。
【0020】この発明の別の目的は、高精度でハードウ
ェアに対するテストを行なうことができる、小型化する
ことが容易な動きベクトル検出装置を提供することであ
る。
【0021】
【課題を解決するための手段】請求項1にかかる自己テ
スト機能付き動きベクトル検出装置は、処理画像データ
中のテンプレートブロックに対して、参照画像中の探索
範囲中の画像ブロックの中で最も高い相関を示すブロッ
クを探索することによりテンプレートブロックの動きベ
クトルを検出するための、自己テスト機能付き動きベク
トル検出装置であって、テンプレートブロックのための
データおよび探索範囲中の画像ブロックのためのデータ
とを受けて、テンプレートブロックと探索範囲中の各画
像ブロックとの間のブロックマッチング法による評価値
を演算し、結果を出力するための演算手段と、テスト用
のデータおよび外部から受ける処理対象のデータのいず
れか一方を選択して演算手段に対して与えるための選択
手段を含む入力手段と、演算手段の出力に接続され、選
択手段によって演算手段に処理対象のデータが与えられ
たとき、演算手段が出力する、テンプレートブロックと
探索範囲中の画像ブロックの各々との間の演算結果を比
較することにより、テンプレートブロックの動きベクト
ルを検出するための比較手段と、演算手段の出力に接続
され、選択手段によって演算手段にテスト用のデータが
与えられたとき、テスト用のデータに対して演算手段が
出力する演算結果に対してあらかじめ定められた演算を
行なって結果を圧縮し出力するための演算結果圧縮手段
と、処理対象のデータとテスト用のデータとのいずれか
を選択するように選択手段を制御するためのテスト制御
手段とを含む。
【0022】選択手段によってテスト用のデータを選択
して演算手段に与えることにより、演算手段で所定のテ
スト用データでの演算を行ない、その結果を圧縮手段で
圧縮することができる。テスト用のデータによる演算結
果およびその圧縮結果は予めシミュレーションで知るこ
とができる。仮に演算手段中のハードウェアに欠陥があ
った場合、テスト用のデータで実際に演算手段で演算し
圧縮した結果はシミュレーションによる予想結果と異な
ってくる。したがってテスト結果によって、演算手段中
のハードウェアに欠陥があるか否かを容易にテストでき
る。演算手段自体の構成をテストのために変更する必要
はなく、回路規模が大きくなることを防ぐことができ
る。
【0023】請求項2にかかる自己テスト機能付き動き
ベクトル検出装置は、請求項1に記載の構成に加えて、
演算結果圧縮手段は、演算手段が出力する演算結果の総
和を演算するための総和手段を含む。
【0024】演算結果の総和を求めるという簡単な圧縮
のための操作でテストを行なうことができるために、簡
略な構成でテスト回路を実現することができる。
【0025】請求項3にかかる自己テスト機能付き動き
ベクトル検出装置は、請求項1または2に記載の構成に
加えて、テストデータとして擬似乱数を発生するための
テストデータ生成回路をさらに含む。
【0026】擬似乱数を用いることで、演算手段中のハ
ードウェアに種々の動作を行なわせることができ、テス
トの精度を高めることができる。
【0027】請求項4にかかる自己テスト機能付き動き
ベクトル検出装置は、請求項1または2に記載の構成に
加えて、予め定められた固定的なデータをテストデータ
として生成するためのテストデータ生成回路をさらに含
む。
【0028】予め定められた固定的なデータを用いる
と、演算手段中のハードウェアの全体にわたってその動
作をテストすることができる。その結果、テストの精度
を高めることができる。
【0029】請求項5にかかる自己テスト機能付き動き
ベクトル検出装置は、請求項1,2または4に記載の構
成に加えて、テンプレート用ブロックのためのデータと
探索範囲中の画像ブロックのデータとして、それぞれオ
ール0およびオール0、オール1およびオール1、オー
ル0およびオール1、ならびにオール1およびオール0
の組み合わせを順次生成し出力するためのテストデータ
生成回路をさらに含む。
【0030】このように特定の値を用い、順次テストを
することで、よりテストの精度を高めることができる。
【0031】請求項6にかかる自己テスト機能付き動き
ベクトル検出装置は、請求項1〜5のいずれかに記載の
構成に加えて、テスト制御手段は、外部から与えられる
テスト制御用データを記憶するための記憶手段と、記憶
手段に記憶された制御用データの予め定められたビット
が予め定められた値であることに応答して、テスト用の
データを選択するように選択手段を制御してテストを開
始させるための手段とを含む。
【0032】予め定められたビットを予め定められた値
に設定したテスト制御用データを記憶手段に書き込むこ
とにより、自動的にテストが開始される。テストのため
の操作が容易になるという効果がある。請求項7にかか
る自己テスト機能付き動きベクトル検出装置は、請求項
6に記載の構成に加えて、テスト制御手段はさらに、記
憶手段に記憶されたテスト制御用データの予め定められ
たビットによって決定される値に対応する回数だけ、テ
スト動作を繰り返し行なうように選択手段、演算手段、
および結果圧縮手段を制御するための手段を含む。
【0033】テスト制御用データの予め定められたビッ
ト中に、テストの繰り返し回数を設定しておくことによ
り、所定回数だけテストを繰り返し行なうことができ
る。その結果、テストの精度がより高くなるという効果
がある。
【0034】請求項8にかかる自己テスト機能付き動き
ベクトル検出装置は、請求項1〜7のいずれかに記載の
構成に加えて、演算手段は、テンプレートブロック中の
予め定められた位置の画素データを各々記憶するための
記憶素子と、探索範囲中の画像ブロック中の、記憶素子
によって記憶された画素データと同位置の画素データ
と、記憶素子によって記憶された画素データとに対して
予め定められる誤差演算を行なって結果を出力するため
の演算要素とを含み、記憶素子はDラッチを含む。
【0035】演算手段中の記憶素子をスキャンパス化す
る必要がない。演算手段中の、テンプレートブロックの
画素を記憶するための記憶素子として、簡単なDラッチ
を用いることができ、装置の構成を簡単にすることがで
きる。またその結果、装置を小型化することができると
いう効果がある。
【0036】請求項9にかかる動きベクトル検出装置の
自己テスト方法は、処理画像データ中のテンプレートブ
ロックに対して、参照画像中の探索範囲中の画像ブロッ
クの中で最も高い相関を示すブロックを探索することに
よりテンプレートブロックの動きベクトルを検出するた
めの、動きベクトル検出装置における自己テスト方法で
あって、テスト用のデータおよび外部から受ける処理対
象のデータのいずれか一方を選択するステップと、選択
するステップにより選択されたデータを受けて、テンプ
レートブロックと探索範囲中の各画像ブロックとの間の
ブロックマッチング法による評価値を演算し、結果を出
力するステップと、選択するステップによって演算する
ステップに処理対象のデータが与えられたとき、演算す
るステップが出力する、テンプレートブロックと探索範
囲中の画像ブロックの各々との間の演算結果を比較する
ことにより、テンプレートブロックの動きベクトルを検
出するステップと、選択するステップによって演算する
ステップにテスト用のデータが与えられたとき、テスト
用のデータに対して演算するステップが出力する演算結
果に対してあらかじめ定められた演算を行なって結果を
圧縮し出力するステップと、常には処理対象のデータ
を、テスト時にはテスト用のデータを、それぞれ選択す
るように、選択するステップを制御するステップとを含
む。
【0037】テスト用のデータを選択して演算を行なう
ことにより、所定のテスト用データでの演算を行ない、
その結果を圧縮することができる。テスト用のデータに
よる演算結果およびその圧縮結果は予めシミュレーショ
ンで知ることができる。仮に演算を行なうためのハード
ウェアに欠陥があった場合、テスト用のデータで実際に
演算し圧縮した結果はシミュレーションによる予想結果
と異なってくる。したがってテスト結果によって、演算
を行なうためのハードウェアに欠陥があるか否かを容易
にテストできる。演算のためのハードウェア自体の構成
をテストのために変更する必要はなく、回路規模が大き
くなることを防ぐことができる。
【0038】請求項10にかかる動きベクトル検出装置
の自己テスト方法は、請求項9に記載の構成に加えて、
演算結果を圧縮し出力するステップは、演算結果の総和
を演算するステップを含む。
【0039】演算結果の総和を求めるという簡単な圧縮
のための操作でテストを行なうことができるために、簡
略な構成でテスト回路を実現することができる。
【0040】請求項11にかかる動きベクトル検出装置
の自己テスト方法は、請求項9または10に記載の構成
に加えて、選択するステップは、テスト時に、テストデ
ータとして擬似乱数を発生して出力するステップを含
む。
【0041】擬似乱数を用いることで、演算のためのハ
ードウェアに種々の動作を行なわせることができ、テス
トの精度を高めることができる。
【0042】請求項12にかかる動きベクトル検出装置
の自己テスト方法は、請求項9または10に記載の構成
に加えて、選択するステップは、予め定められた固定的
なデータをテストデータとして生成し出力するステップ
を含む。
【0043】予め定められた固定的なデータを用いる
と、演算のためのハードウェアの全体にわたってその動
作をテストすることができる。その結果、テストの精度
を高めることができる。
【0044】請求項13にかかる動きベクトル検出装置
の自己テスト方法は、請求項9、10または12に記載
の構成に加えて、選択するステップは、テンプレート用
ブロックのためのデータと探索範囲中の画像ブロックの
データとして、それぞれオール0およびオール1、オー
ル1およびオール1、オール0およびオール1、ならび
にオール1およびオール0の組み合わせを順次生成し出
力するステップを含む。
【0045】このように特定の値を用い、順次テストを
することで、よりテストの精度を高めることができる。
【0046】請求項14にかかる動きベクトル検出装置
の自己テスト方法は、請求項9〜13のいずれかに記載
の構成に加えて、選択手段を制御するステップは、外部
から与えられるテスト制御用データを記憶手段に記憶す
るステップと、記憶手段に記憶された制御用データの予
め定められたビットが予め定められた値であることに応
答して、テスト用のデータを選択するように選択手段を
制御してテストを開始させるステップとを含む。
【0047】予め定められたビットを予め定められた値
に設定したテスト制御用データを記憶手段に書き込むこ
とにより、自動的にテストが開始される。テストのため
の操作が容易になるという効果がある。
【0048】請求項15にかかる動きベクトル検出装置
の自己テスト方法は、請求項14に記載の構成に加え
て、選択手段を制御するステップはさらに、記憶手段に
記憶されたテスト制御用データの予め定められたビット
によって決定される値だけ、テスト動作を繰り返し行な
うステップを含む。
【0049】テスト制御用データの予め定められたビッ
ト中に、テストの繰り返し回数を設定しておくことによ
り、所定回数だけテストを繰り返し行なうことができ
る。その結果、テストの精度がより高くなるという効果
がある。
【0050】
【発明の実施の形態】以下の説明では、現画像ブロック
で、参照画像ブロックを探索する対象となるものをテン
プレートブロックと呼ぶ。また参照画像ブロックを探索
する範囲として予め定められる範囲をサーチウィンド
ウ、サーチウィンドウ内の参照画像ブロックをサーチウ
ィンドウデータと呼ぶ。
【0051】図1は、この発明の実施の形態に従う動き
ベクトル検出装置の全体の構成を概略的に示す図であ
る。図1を参照して、動きベクトル検出装置1は、通常
動作時には入力画像データを受け、所定のサブサンプリ
ングレートでサブサンプリングしてテンプレートブロッ
クデータTBDおよびサーチウィンドウ画素データSW
Dを生成するとともに、テスト時には、テンプレートブ
ロックデータTBDおよびサーチウィンドウ画素データ
SWDとして予め定められたパターンの画像データまた
は擬似乱数からなる画像データを生成する入力部2と、
入力部2から与えられるテンプレートブロック画素デー
タTBDおよびサーチウィンドウ画素データSWDを受
け、所定の演算処理を行なって、評価値EALL、EO
DDおよびEEVNを生成する演算部4と、演算部4か
らの評価値EALL、EODDおよびEEVNを並列に
受け、これらの与えられた評価値に従って動きベクトル
MVTP、MVOS、MVOEを生成する比較部6と、
テスト時に演算部4からの評価値を繰返し受け、その評
価値に対して予め定める演算を行うことにより少ないデ
ータ量で表わされる圧縮後の評価値を出力するための結
果圧縮回路6と、入力部2、演算部4および比較部6に
よる動きベクトル検出動作を制御するための制御回路1
0と、テスト制御用のデータを受け、テスト時には入力
部2および結果圧縮回路8によるテスト動作を制御する
ためのテスト制御部12を含む。
【0052】結果圧縮回路は、演算部4から次々に与え
られる評価値に対して、次々に所定の演算を行ない、そ
の結果を保持する。たとえば、直前まで保持していた値
と、演算部からの評価値とを加算し、その結果を保持す
る。結果圧縮回路はこうした処理を繰返す。したがっ
て、一連のテストが終了したときには、結果圧縮回路は
ある値を保持していることになる。
【0053】この図1に示す動きベクトル検出装置1
は、フレームを単位として画素データを符号化する。演
算部4は、後にその構成は詳細に説明するが、要素プロ
セッサアレイを含み、フレーム単位のテンプレートブロ
ックに対する評価値EALL、奇数フィールドにおける
テンプレートブロックに対する評価値EODD、および
偶数フィールドにおけるテンプレートブロックに対する
評価値EEVNを並列に生成する。比較部6は、これら
の評価値EALL、EODDおよびEEVNを受け、テ
ンプレートブロックに対する動きベクトルMVTP、奇
数サブテンプレートブロックに対する動きベクトルMV
OS、および偶数サブテンプレートブロックに対する動
きベクトルMVOEを生成する。サブテンプレートブロ
ックは、フレーム単位におけるテンプレートブロックに
含まれるフィールド単位のテンプレートブロックを示
す。
【0054】通常動作時には、入力部2へは、サーチウ
ィンドウ画素データおよびテンプレートブロック画素デ
ータが並列に別々のポートを介して与えられてもよく、
同じポートを介して時分割態様で与えられてもよい。テ
ンプレートブロック画素データは、たとえばTVカメラ
からの画像データがメモリに格納された後、このメモリ
から所定のシーケンスで与えられる。サーチエリア画素
データは、図示しないフレームバッファに格納される予
測画像データから生成される。
【0055】この動きベクトル検出装置1の動作は、通
常動作時は制御部10により、テスト時には制御部10
とテスト制御部12とにより制御される。制御部10お
よびテスト制御部12は、またこの動きベクトル検出装
置1と同じチップ上に形成されてもよく、また別のチッ
プに形成され、他の画像データ符号化制御部に含まれて
もよい。
【0056】この図1に示す動きベクトル検出装置1
は、パイプライン的にクロック信号(図示せず)に従っ
て演算操作を行なう。演算部4においては、その内部構
成(サーチウィンドウ画素データ転送経路)が、制御部
10の制御の下に、サブサンプリングレートに応じて変
更され、サブサンプリング画素データに基づいて評価値
算出が行なわれる。
【0057】図2は、図1に示す入力部2の構成を概略
的に示す図である。図2を参照して、入力部2は、擬似
乱数発生回路および固定データ供給回路より構成され、
テスト制御部12の制御に応じて、擬似乱数または固定
データ(オール「0」、オール「1」、それらの組合わ
せ)を生成するためのテストデータ生成回路2aと、外
部から出力されるサーチウィンドウ画素データを順次格
納するサーチウィンドウメモリ2bと、外部から与えら
れるテンプレートブロック画素データを格納するテンプ
レートブロックメモリ2cと、テスト制御回路12によ
り制御され、テストデータ生成回路2aの出力するサー
チウィンドウ画素データと、サーチウィンドウメモリ2
bの出力するサーチウィンドウ画素データとのいずれか
一方を選択して出力するためのセレクタ2dと、テスト
制御回路12により制御され、テストデータ生成回路2
aの出力するテンプレートブロック画素データと、テン
プレートブロックメモリ2cの出力するテンプレート画
素データとのいずれか一方を選択して出力するためのセ
レクタ2eとを含む。
【0058】サーチウィンドウメモリ2bからは所定の
シーケンスでサーチウィンドウ画素データSWDが読出
され、テンプレートブロックメモリ2cからテンプレー
トブロック画素データTBDが読出される。
【0059】テストデータ生成回路2aから出力される
データは、擬似乱数にしろ固定データにせよ、その内容
が予め分かっている。また、演算部4で行われる演算も
知られているので、結局テストデータ生成回路2aから
出力されたデータを用いて演算部4で演算を予め定めら
れた回数だけ行ない、その結果得られた評価値を結果圧
縮回路8で圧縮した場合、結果圧縮回路8から得られる
であろう値もまた予めシミュレーションで分かる。した
がって、実際に結果圧縮回路8から出力されるテスト結
果と、予めシミュレーションで得られていた結果とを比
較することにより、演算部4内のハードウェアに欠陥が
ないかどうかを調べることができる。
【0060】なお、上述の説明においては、サブサンプ
リングレートとして2:1および4:1を説明してい
る。しかしながら、このサブサンプリングレートとして
は、8:1であってもよく、一般に2n :1であればよ
い。
【0061】[サーチエリアの構成]図3(A)は、
4:1サブサンプリングモード時におけるサーチエリア
SEの構成を概略的に示す図である。図3(A)におい
て、4:1サブサンプリングモード時においては、水平
ベクトル成分−128〜+127および垂直ベクトル成
分−48〜+47の範囲に設定する。垂直方向におい
て、96画素、すなわち96個の垂直ベクトル成分が存
在する。水平方向においては、252の水平ベクトル成
分、すなわち252画素(評価点)が存在する。この水
平方向においては、4画素を単位として1つの画素が代
表点として抽出される。ここで、図3(A)において+
127画素に対し4の倍数として示しているのは、水平
ベクトル成分0から+127の128個のうち4の倍数
のベクトル成分が評価されるためである。
【0062】図3(B)は、2:1サブサンプリングモ
ード時のサーチエリアSEの構成を示す図である。2:
1サブサンプリングモード時においては、サーチエリア
SEは、水平ベクトル成分−64〜+63および垂直ベ
クトル成分−24〜+23の範囲を有する。2:1サブ
サンプリングモード時においては、水平方向において2
画素が1画素にサブサンプリングされている。したがっ
て、この0〜+63画素(評価点)の範囲において、2
の倍数の水平ベクトル成分を有するブロックが存在す
る。
【0063】図4は、テンプレートブロックの構成を示
す図である。テンプレートブロックTBは、画面上16
行・16列に配列される画素を含む。4:1サブサンプ
リングモード時においては、水平方向において隣接4画
素が1画素にサブサンプリングされるため、テンプレー
トブロックは、16行・4列の画素で構成される。
【0064】図5は、2:1サブサンプリングモード時
のテンプレートブロックの構成を示す図である。この
2:1サブサンプリングモード時においては、テンプレ
ートブロックの画素は、隣接2画素が1画素にサブサン
プリングされるため、16行・8列の画素でテンプレー
トブロックが構成される。これらのサブサンプリングさ
れたサーチウィンドウ画素データおよびテンプレートブ
ロック画素データを用いて動きベクトル検出を行なう。
【0065】4:1サブサンプリングモード時および
2:1サブサンプリングモードにおいて探索範囲が異な
る。水平ベクトル成分の数がそれぞれ1/4および1/
2に低減されている。したがって、水平方向の探索範囲
が4倍および2倍に増加しても、何ら処理時間が増大す
ることはない。
【0066】[演算部の構成]図6は、図1に示す演算
部4の構成を概略的に示す図である。図6において、演
算部4は、それぞれが、行列状に配列される複数の要素
プロセッサを含み、サブサンプリングされた画素データ
について評価値算出を行なう複数の演算ユニットE♯0
〜E♯3と、1つの演算ユニットE♯0およびE♯2に
共有されかつこれらの演算ユニットE♯0およびE♯2
に含まれる要素プロセッサに対応して配置されるシフト
レジスタを含み、サーチウィンドウ画素データを一方方
向に沿ってシフトするサーチウィンドウデータシフトユ
ニットS♯0と、演算ユニットE♯1およびE♯3の要
素プロセッサに対応して配置されるシフトレジスタを含
み、一方方向にサーチウィンドウ画素データを転送する
サーチウィンドウデータシフトユニットS♯1と、サブ
サンプリングレートに応じてこれらのサーチウィンドウ
データシフトユニットS♯0およびS♯1に選択的に結
合され、サーチウィンドウ画素データを格納しかつ一方
方向に転送するサーチウィンドウデータバッファ34と
を含む。
【0067】演算ユニットE♯0〜E♯3の各々は、画
面上の水平方向に隣接する複数画素の代表位置(サブサ
ンプリング画素データ位置)に対応して配置される要素
プロセッサに対応の画素データを格納する。要素プロセ
ッサの各々は、格納したテンプレートブロック画素デー
タと対応のシフトレジスタから与えられるサーチウィン
ドウブロック画素データに対し所定の演算処理(本実施
例においては差分絶対値を求める)を行なう。
【0068】演算ユニットE♯0−E♯3の各々は、さ
らに要素プロセッサでの演算結果値を所定の順序で加算
して、総和を求めることにより、評価値を算出する総和
部を含む。後に説明するが、これらの要素プロセッサ
は、複数のテンプレートブロックの画素データを格納
し、時分割態様で、これら複数のテンプレートブロック
各々と共通のサーチウィンドウブロックとの相関度を示
す評価値成分を算出する。
【0069】演算ユニットE♯0〜E♯3の要素プロセ
ッサには、このテンプレートブロックに対する動きベク
トルを求めるサイクル(演算サイクル)中、テンプレー
トブロック画素データが常時格納されている。一方、サ
ーチウィンドウ画素データは、サーチウィンドウデータ
バッファ34を介してサーチウィンドウデータシフトユ
ニットS♯0およびS♯1内を1画素ずつシフトされ、
垂直ベクトル成分を1ずつシフトする。このサーチウィ
ンドウデータシフトユニットS♯0およびS♯1ならび
にサーチウィンドウデータバッファ34におけるサーチ
ウィンドウ画素データの転送経路が、サブサンプリング
レートに応じて設定される。サーチウィンドウデータバ
ッファ34は、与えられたサーチウィンドウ画素データ
を所定時間遅延して出力する遅延バッファ回路を含む。
【0070】サーチウィンドウデータバッファ34内
に、サーチウィンドウのサーチウィンドウブロック(評
価値算出が行なわれているサーチウィンドウのブロッ
ク)を除く領域(サイド領域)の画素データが格納され
る。このサーチウィンドウデータバッファ34を介して
のサーチウィンドウ画素データの転送経路を切換えるこ
とにより、垂直方向の探索の範囲変更に対処する。水平
方向成分の変更は、サブサンプリングレートの変更によ
り対応する。
【0071】図7は、図6に示す演算ユニットE♯0〜
E♯3の構成を示す図である。図7において1つの演算
ユニットE♯を代表的に示す。図7において演算ユニッ
トE♯は、16行4列に配列される要素プロセッサPE
00〜PE3Fと、これら要素プロセッサPE00〜P
E3Fの出力を受けるように接続された加算回路36と
を含む。これらの要素プロセッサPE00〜PE3Fに
対応して、サーチウィンドウデータシフトユニットのシ
フトレジスタが配置される。シフトレジスタの格納デー
タSW00〜SW3Fがそれぞれ対応の要素プロセッサ
PE00〜PE3Fへ与えられる。要素プロセッサPE
00〜PE3Fへは、データバス35を介してテンプレ
ートブロック画素データTBDがロードされる。1列に
整列して配置される要素プロセッサPEi0〜PEiF
(i=0〜3)に対して共通にこのグローバルデータバ
ス35に接続されるデータバスが配置される。すなわ
ち、要素プロセッサPE00〜PE0Fには、データバ
ス35aを介してテンプレートブロック画素データがロ
ードされ、要素プロセッサPE10〜PE1Fに対して
はデータバス35bが共通に配設されて、テンプレート
ブロック画素データが伝達される。要素プロセッサPE
20〜PE2Fに対してはデータバス35cを介してテ
ンプレートブロック画素データが伝達される。要素プロ
セッサPE30〜PE3Fに対してデータバス35dを
介してテンプレートブロック画素データが伝達される。
【0072】これらの要素プロセッサPE00〜PE3
Fにおいては、同じテンプレートブロックについて異な
る画素データが格納される。要素プロセッサPE00〜
PE3Fの各々は、この与えられたシフトレジスタから
のサーチウィンドウブロック画素データと、格納してい
るテンプレートブロック画素データとの差分絶対値AE
を求めて出力する。要素プロセッサPE00〜PE3F
からの差分絶対値AE00〜AE3Fは、並列に、加算
回路36へ与えられる。
【0073】加算回路36は、この与えられた差分絶対
値AE00〜AE3Fを所定の順序で加算し、複数の予
測モードに従う評価値MTE、MSEaおよびMSEb
を生成する。評価値MTEはテンプレートブロックの画
素データすべてについての評価値を示し、テンプレート
ブロックモードと称す。評価値MSEaは、サブテンプ
レートブロックの画素データを用いて求められた評価値
であり、また評価値MSEbは、残りのサブテンプレー
トブロックの画素データを用いて算出された評価値を示
す。
【0074】後に詳細に説明するが、1つのテンプレー
トブロックは2つのサブテンプレートブロックを含む。
テンプレートブロックがフレーム画素で構成される場
合、偶数フィールド画素および奇数フィールド画素の両
者をテンプレートブロックが含む。またテンプレートブ
ロックがフィールド画素の場合、テンプレートブロック
は上半分のテンプレートブロックおよび下半分のテンプ
レートブロックに分割することができる。
【0075】用いられる予測モードに従って、加算演算
が行なわれる。加算回路36における加算は、要素プロ
セッサPE00〜PE3Fからの差分絶対値(評価値成
分)AE00〜AE3Fを振分けることにより、実行さ
れる。これは、要素プロセッサPE00〜PE3F配置
位置が、テンプレートブロック内の代表画素位置に対応
するためであり、上側サブテンプレートブロック、下側
サブテンプレートブロック、偶数フィールドサブテンプ
レートブロックおよび奇数フィールドサブテンプレート
ブロックの画素データの分類は、要素プロセッサの位置
により容易に実現される。加算回路36における評価値
成分の振分けは単に配線を用いて実現される。
【0076】図8は、要素プロセッサPEij(i=0
〜3、j=0〜F)の構成を概略的に示す図である。図
8において、要素プロセッサPEijは、並列に設けら
れるテンプレートブロック画素データ格納用のデータレ
ジスタTMBR0〜TMBR3と、選択信号φCKに従
ってこれらのデータレジスタTMBR0〜TMBR3お
よび固定値の1つを選択するセレクタ40と、図示しな
い選択信号に従ってサーチウィンドウブロック画素デー
タSWijおよび固定値の一方を選択するセレクタ41
と、セレクタ40および41から与えられるデータの差
分絶対値(誤差絶対値)を求める差分絶対値回路42と
を含む。
【0077】データレジスタTMBR0〜TMBR3に
は、互いに異なるテンプレートブロックの同じ位置の画
素データが格納される。セレクタ40はこれらのデータ
レジスタTMBR0〜TMBR3を選択信号φCKに従
って順次選択する。セレクタ40および41は、与えら
れたサーチウィンドウブロック画素データSWijがた
とえばサーチエリア外部の画素データなどの場合には、
固定値を選択して差分絶対値回路42へ与える。固定値
が選択された場合、差分絶対値回路42においては、差
分絶対値は“0”または最大値であり、評価値成分AE
ijは、評価値に対する寄与はしない。データレジスタ
TMBR0〜TMBR3へは、データバス35b(35
a−35d)を介してテンプレートブロック画素データ
TMDが与えられる。アドレス指定されたデータレジス
タに対しテンプレートブロック画素データTMDが格納
される。
【0078】データレジスタTMBR0〜TMBR3
は、スキャン方式のテストをする必要がないので、それ
ぞれに対して単純に1ビットデータを保持するDラッチ
回路を用いることができる。
【0079】[シフトユニットの構成]図9は、図6に
示すサーチウィンドウデータシフトユニットおよびサー
チウィンドウデータバッファの構成を示す図である。図
9においては、1つのサーチウィンドウデータシフトユ
ニットS♯の構成を示す。図9において、サーチウィン
ドウデータシフトユニットS♯は、行列状に配列される
シフトレジスタSR00〜SR3Fを含む。これらのシ
フトレジスタSR00〜SR3Fは、図7に示す演算ユ
ニットE♯の要素プロセッサPE00〜PE3Fに対応
して配置される。したがって、シフトレジスタSR00
〜SR3Fは、16行・4列に配置される。シフトレジ
スタSR00〜SR3Fの格納データSW00〜SW3
Fが、対応の演算ユニットの要素プロセッサPE00〜
PE3Fへ与えられる。これらのシフトレジスタSR0
0〜SR3Fは、一方方向にサーチウィンドウ画素デー
タを転送することができる。
【0080】サーチウィンドウデータバッファ34は、
サーチウィンドウデータシフトユニットS♯に対応して
設けられるデータバッファ回路34♯を含む。このデー
タバッファ回路34♯が、サーチウィンドウデータシフ
トユニットS♯0およびS♯1それぞれに対して設けら
れる。データバッファ回路34♯は、サーチウィンドウ
データシフトユニットS♯のシフトレジスタ列SRL0
〜SRL3それぞれに対応して設けられる遅延バッファ
DLB0〜DLB3を含む。これらの遅延バッファDL
B0〜DLB3は、ファーストイン・ファーストアウト
(FIFO)構成を有し、与えられたサーチウィンドウ
画素データを順次所定時間遅延して出力する。
【0081】図9においては、サーチウィンドウデータ
シフトユニットS♯に含まれるシフトレジスタSR00
〜SR3Fと遅延バッファDLB0〜DLB3が、一方
方向に沿って画素データを転送するように接続される。
すなわち、シフトレジスタ列SRL3の最終段のシフト
レジスタSR30の出力画素データが次段の遅延バッフ
ァDLB2へ与えられる。シフトレジスタ列SRL2の
最終段のシフトレジスタSR20の出力画素データが次
段の遅延バッファDLB1へ与えられる。シフトレジス
タ列SRL1の最終段のシフトレジスタSR11の出力
画素データが、遅延バッファDLB0へ与えられる。こ
れらの遅延バッファDLB0〜DLB3の出力画素デー
タは対応のシフトレジスタ列の初段シフトレジスタSR
0F〜SR3Fへ与えられる。遅延バッファDLB3に
は、入力部2のサーチウィンドウデータメモリからのサ
ーチウィンドウ画素データSWDが与えられる。演算サ
イクルにおいては、1クロックサイクルごとに、1画素
のデータのシフトが行なわれる。したがって、演算ユニ
ットの要素プロセッサには、テンプレートブロックの画
素データが常駐し、一方サーチウィンドウデータシフト
ユニットにおいては、サーチウィンドウ画素データが1
画素シフトする。この1画素のシフトにより、サーチウ
ィンドウブロックが垂直方向に1画素移動する。この動
作については後に詳細に説明する。
【0082】この図9に示すサーチウィンドウデータシ
フトユニットS♯のシフトレジスタ列SRL0〜SRL
3とサーチウィンドウデータバッファ34♯の遅延バッ
ファDLB0〜DLB3の接続経路を、サブサンプリン
グレートに応じて変更する。
【0083】図10は、サーチウィンドウデータバッフ
ァ34の構成をより詳細に示す図である。図10におい
て、サーチウィンドウデータバッファ34は、サーチウ
ィンドウデータシフトユニットS♯0およびS♯1それ
ぞれに対応して設けられるデータバッファ回路34♯0
および34♯1と、サブサンプリングレート指示信号φ
SSRに従って、データバッファ回路34♯0および3
4♯1の一方の出力画素データを選択してサーチウィン
ドウデータシフトユニットS♯1へ伝達する選択回路5
0と、サブサンプリングレート指示信号φSSRに従っ
て、データバッファ回路34♯1の出力データおよびシ
フトユニットS♯0およびS♯1の出力画素データの一
方を選択してデータバッファ回路34♯0へ与える選択
回路52とを含む。これらの選択回路50および52に
おいて、サブサンプリングレート指示信号φSSRに従
って選択経路を切換えることにより、演算部におけるサ
ーチウィンドウ画素データの転送経路を切換え、応じ
て、サブサンプリングレートに従って、サーチウィンド
ウブロックのサイズを変更する。
【0084】データバッファ回路34♯0および34♯
1の各々は、遅延バッファDLB0−DLB3を含む。
これらの遅延バッファDLB0−DLB3の各々は、た
とえば48ワードのFIFOメモリで構成される。1ワ
ードが1画素データに対応する。
【0085】選択回路50は、サーチウィンドウデータ
シフトユニットS♯1のシフトレジスタ列SRL0〜S
RL3それぞれに対応して設けられるセレクタ50a−
50dを含む。セレクタ50aは、データバッファ34
♯0および34♯1の遅延バッファDLB0の出力デー
タの一方を選択して、シフトユニットS♯1のシフトレ
ジスタ列SRL0の初段のシフトレジスタSR0Fへ与
える。セレクタ50bは、データバッファ34♯0およ
び34♯1の遅延バッファDLB1の出力データの一方
を選択して、シフトユニットS♯1のシフトレジスタ列
SRL1の初段シフトレジスタSR1Fへ与える。セレ
クタ50cは、データバッファ34♯0および34♯1
の遅延バッファDLB2の出力データの一方を選択して
シフトユニットS♯1のシフトレジスタ列SRL2の初
段シフトレジスタSR2Fへ与える。セレクタ50a
は、データバッファ回路34♯0および34♯1の出力
データの一方を選択してシフトユニットS♯1のシフト
レジスタ列SRL3の初段シフトレジスタSR3Fへ与
える。
【0086】選択回路52は、データバッファ回路34
♯0の遅延バッファDLB0−DLB3それぞれに対応
して設けられるセレクタ52a−52dを含む。セレク
タ52aは、シフトユニットS♯0の前列のシフトレジ
スタ列SRL1の最終段のシフトレジスタSR10の出
力データとデータバッファ回路34♯1の遅延バッファ
DLB0の出力データの一方を選択して、データバッフ
ァ回路34♯0の遅延バッファDLB0へ与える。セレ
クタ52bは、シフトユニットS♯0の前列のシフトレ
ジスタ列SRL2の最終段のシフトレジスタSR20の
出力データとデータバッファ回路34♯1の遅延バッフ
ァDLB1の出力データの一方を選択して、データバッ
ファ回路34♯0の遅延バッファDLB1へ与える。セ
レクタ52cは、シフトユニットS♯0内の前列のシフ
トレジスタ列SRL3の最終段シフトレジスタSR30
の出力データとデータバッファ回路34♯1の遅延バッ
ファDLB2の出力データの一方を選択してデータバッ
ファ回路34♯0の遅延バッファDLB2へ与える。セ
レクタ52dは、シフトユニットS♯1の最終列のシフ
トレジスタ列SRL0の最終段シフトレジスタSR00
の出力データとデータバッファ回路34♯1の遅延バッ
ファDLB3の出力データの一方を選択してデータバッ
ファ回路34♯0の遅延バッファDLB3へ与える。
【0087】このデータバッファ回路34♯0の遅延バ
ッファDLB0〜DLB3の出力画素データは、シフト
ユニットS♯0の対応のシフトレジスタ列の初段シフト
レジスタSR0F−SR3Fへも与えられる。
【0088】データバッファ回路34♯1において、遅
延バッファDLB0〜DLB2は、シフトユニットS♯
1の前列のシフトレジスタ列の最終段のシフトレジスタ
SR10,SR20およびSR30の出力画素データを
それぞれ受ける。データバッファ回路34♯1の遅延バ
ッファDLB3へは、画素データ入力部からのサーチウ
ィンドウ画素データSWDが与えられる。
【0089】図11は、4:1サブサンプリングモード
時におけるデータバッファおよびシフトユニットの接続
経路を概略的に示す図である。図11において、4:1
サブサンプリングモード時においては、選択回路50
が、データバッファ回路34♯0の出力画素データを選
択してシフトユニットS♯1へ与える。選択回路52
は、データバッファ回路34♯1の出力画素データを選
択してデータバッファ回路34♯0へ与える。したがっ
て、図11に示すように、データバッファ回路34♯0
および34♯1において、同じ列に配列される遅延バッ
ファが直列に接続される。データバッファ回路34♯0
の遅延バッファDLB0〜DLB3の出力画素データは
並列に、シフトユニットS♯0およびS♯1のシフトレ
ジスタ列SRL0〜SRL3へそれぞれ与えられる。し
たがって、シフトユニットS♯0およびS♯1に、同じ
サーチウィンドウ画素データが与えられる。
【0090】シフトユニットS♯0およびS♯1の各々
は、2つの演算ユニットにより共有される。サブサンプ
リングされたテンプレートブロックのサイズは、16画
素行・4画素列となる。データバッファ回路34♯0お
よび34♯1においては、遅延バッファDLB0−DL
B3それぞれが、48画素データを格納するため、デー
タバッファ回路34♯0および34♯1各列において9
6画素のデータが格納される。シフトユニットS♯1な
らびにデータバッファ回路34♯0および34♯1が、
一方方向に沿ってサーチウィンドウ画素データSWDを
転送する。これは、データバッファ回路34♯1におい
て、遅延バッファDLB0−DLB2が、それぞれの前
列のシフトレジスタ列SRL1−SRL3の出力画素デ
ータを受けるためである。
【0091】図12は、2:1サブサンプリングモード
時におけるサーチウィンドウデータバッファ回路および
シフトユニットの接続を概略的に示す図である。2:1
サブサンプリングモード時においては、図10に示す選
択回路50は、データバッファ回路34♯1の出力画素
データを選択してシフトユニットS♯1へ与える。選択
回路52は、シフトユニットS♯1の最終列SR0の出
力データおよびシフトユニットS♯0の前列SRL1−
SRL3の出力データを選択してシフトユニットS♯0
へ与える。したがってこの2:1サブサンプリングモー
ド時においては、データバッファ回路34♯1、シフト
ユニットS♯1、データバッファ回路34♯0およびシ
フトユニットS♯0は、サーチウィンドウ画素データS
WDを、蛇行して一方方向に転送するように接続され
る。すなわち、シフトレジスタSRL0−SRL3は、
それぞれ次段に設けられた遅延バッファDLB0−DL
B3を介して一方方向にサーチウィンドウ画素データを
転送する。
【0092】この図12に示す接続においては、サーチ
ウィンドウブロックが16行・8列の画素となる(シフ
トユニットS♯0およびS♯1には同じサーチウィンド
ウブロックの画素データが格納されてシフトされるた
め)。データバッファ回路34♯0および34♯1は、
シフトレジスタ列間に、1つの遅延バッファを介挿す
る。遅延バッファDLB0−DLB3の各々は、48画
素のデータを格納する。したがって垂直方向探索範囲
は、−24〜+23となる。次に、各サブサンプリング
モード時の動きベクトル検出動作について説明する。
【0093】[4:1サブサンプリングモード動作]い
ま、フレーム画像を、図13に示すように、16画素・
16画素のマクロブロックに分割した状態を考える。図
13においては、水平方向に16ブロック、垂直方向に
7ブロックに分割された状態が一例として示される。こ
の領域はマクロブロックTB8のサーチエリアに対応す
る。マクロブロックTB8を符号化対象ブロックすなわ
ちテンプレートブロックとする。
【0094】図14に示すように、画面上のテンプレー
トブロックTBは、16画素・16画素のサイズを備え
る。テンプレートブロックTBは、フレーム画素で構成
されており、偶数フィールドおよび奇数フィールドの画
素データを含む。
【0095】入力部2により、4:1サブサンプリング
が行なわれると、水平方向の16画素が4画素にサブサ
ンプリングされる。したがって、演算部に格納されるテ
ンプレートブロックは、水平方向4画素、垂直方向16
画素のサブサンプリングテンプレートブロックとなる。
このサブサンプリングテンプレートブロックにおいて
は、奇数フィールドODDの画素データおよび偶数フィ
ールドEVNの画素データが交互に垂直方向に配列され
る。サブサンプリングされたテンプレートブロックのう
ち偶数フィールドの画素で構成される偶数サブテンプレ
ートは8行・4列の画素を備える。一方、奇数フィール
ドODDの画素で構成される奇数サブテンプレートも同
様、8行・4列の画素で構成される。このテンプレート
ブロック、偶数サブテンプレートブロックTBeおよび
奇数サブテンプレートブロックTBoについて動きベク
トルを並列に検出する。
【0096】図15に示すように、4:1サブサンプリ
ング時においては水平方向は、−128〜+127の水
平ベクトル成分の範囲で動きベクトルの探索が行なわれ
る。いま、テンプレートブロックTB8を考えると、水
平方向に整列して配置されるテンプレートブロックTB
1〜TB16は、このサーチエリア内に含まれる。これ
らの16個のテンプレートブロックTB1〜TB16に
対し、パイプライン的に、動きベクトルを検出する。演
算ユニットE♯0内においては、テンプレートブロック
TB1−TB4の画素データが格納され、演算ユニット
E♯1内においては、テンプレートブロックTB5−T
B8の画素データが格納される。演算ユニットE♯2内
においてはテンプレートブロックTB9−TB12の画
素データが格納され、演算ユニットE♯3内においては
テンプレートブロックTB13−TB16の画素データ
が格納される。これら4つのテンプレートブロックの画
素データは、図8に示すように、各要素プロセッサにお
いて4つのテンプレートブロックデータレジスタTMB
R0−TMBR3(R0−R3)にそれぞれ格納され
る。
【0097】4:1サブサンプリング時においてデータ
バッファ回路34♯0および34♯1が直列に接続され
る。この直列に接続されるデータバッファ回路34♯0
および34♯1には、垂直方向96画素のデータが格納
される。シフトユニットS♯0およびS♯1へ同じサー
チウィンドウ画素データが与えられる。シフトユニット
S♯0およびS♯1各々は、16行4列に配列されるシ
フトレジスタを備える。これらのシフトレジスタにサー
チウィンドウ画素データが格納される。
【0098】図16は、ある時点におけるサーチウィン
ドウデータの演算部内の格納状態を示す図である。図1
6において、テンプレートブロックTB8の真裏のサー
チウィンドウブロックの変位を(0,0)とする。デー
タシフトユニットS♯0およびS♯1には、変位ベクト
ル(0,−48)のサーチウィンドウブロックの画素デ
ータが格納される。96行4列のサーチウィンドウ画素
データがデータバッファ回路34♯0および34♯1内
に格納される。サーチウィンドウブロックに対し、テン
プレートブロックTB1−TB16は、それぞれ互いに
異なる変位ベクトルを有し、これらのテンプレートブロ
ックTB−TB16に対する評価値が算出される。
【0099】評価値算出は、図16に示すテンプレート
ブロックTB1−TB16について演算ユニットE♯0
−E♯3それぞれにおいて時分割態様で実行される。こ
れらのテンプレートブロックTB1−TB16各々は、
画面上16画素(水平方向)に対応しており、テンプレ
ートブロックの水平方向の変位が16ずつずれている。
【0100】この演算処理においては、サーチウィンド
ウ画素データが4クロックサイクル期間の間各要素プロ
セッサにシフトユニットから与えられる。各クロックサ
イクルにおいて、演算ユニットE♯0−E♯3それぞれ
において異なる4つのテンプレートブロックの評価値の
算出が行なわれる。
【0101】サーチウィンドウブロック1つについての
評価値算出サイクルが完了すると、テンプレートブロッ
ク画素データを各要素プロセッサPE内に保持した状態
で、サーチウィンドウ画素データを1画素転送する。す
なわち、入力部2からサーチウィンドウ画素データが1
画素分与えられ、シフトユニットおよびデータバッファ
回路34♯0および34♯1において1画素のデータ転
送が実行される。シフトユニットS♯0へはシフトユニ
ットS♯1と同じサーチウィンドウ画素データが格納さ
れる。シフトユニットS♯1ならびにデータバッファ回
路34♯0および34♯1では、データ転送経路が連続
的に形成されており、シフトユニットS♯0およびS♯
1ならびにデータバッファ回路34♯0および34♯1
において同時に1画素のデータ転送が実行される。
【0102】データバッファ回路34♯0からは、対応
のシフトレジスタ列SRL0−SRL3へ画像データが
転送される。したがって、図16に示すサーチウィンド
ウブロックにおいて最上行の画素が、転送動作によりデ
ータバッファ回路34♯1内へ転送され、逆にデータバ
ッファ回路34♯0から、シフトユニットS♯0および
S♯1へ1画素行のデータが転送される。
【0103】図17に、この1画素転送動作を行なった
ときのサーチウィンドウデータの格納状態を示す。最上
列(最終列)SRL0の最終段のシフトレジスタSR0
0の保持していたサーチウィンドウデータはシフトアウ
トされ、一方、1画素データがデータバッファ回路にシ
フトインされる。したがって、このデータバッファ回路
34♯0および34♯1の保持するサーチウィンドウ画
素データは、96画素×4画素である。一方、シフトユ
ニットS♯0およびS♯1内においては、1画素分、垂
直方向にずれたサーチウィンドウブロックSWBの画素
データが格納される。この状態で、各演算ユニットE♯
0−E♯3において、評価値算出が行なわれる。
【0104】このサーチウィンドウ画素データ転送動作
を、1水平変位についての垂直変位分(−48〜+47
の96変位分)繰返し実行する。この状態において、図
18に示すように、サーチウィンドウブロックの最も下
の位置のサーチウィンドウブロックがシフトユニットS
♯0およびS♯1内に格納される。データバッファ回路
34♯0および34♯1内においては、次の水平変位ベ
クトル成分に対応するサーチウィンドウ画素データ(9
6画素)が新たにシフトインされ、不要となった画素デ
ータはシフトアウトされる。
【0105】この図18に示す状態は、テンプレートブ
ロックTB8に対してはフレーム変位ベクトルは(0,
47)であり、偶数サブテンプレートブロックTB8e
および奇数サブテンプレートブロックTB8aはそれぞ
れ、偶数フィールドおよび奇数フィールドに対するフィ
ールド変位ベクトル(0,+23)を有する。この状態
で、評価値算出が実行される。これにより、1水平変位
成分についてのベクトル探索動作が終了する。この探索
動作が終了すると、16個のサーチウィンドウ画素デー
タをデータバッファ回路内に入力するために、16サイ
クルサーチウィンドウ画素データの転送が行なわれる。
この16サイクルの転送動作時においては、評価値演算
処理は実行されない。
【0106】図19は、この16画素をシフトインした
後のサーチウィンドウ画素データの格納状態を概略的に
示す図である。この図19に示すように、16画素シフ
トインすることにより、次の水平ベクトル成分(+4加
算される)に対応するサーチウィンドウ画素データが演
算ユニット内に格納される。シフトユニットS♯0およ
びS♯1のシフトレジスタには、テンプレートブロック
TB8に対し、変位ベクトル(+4,−48)のサーチ
ウィンドウブロックの画素データが格納される。残りの
画素データは、データバッファ回路34♯0および34
♯1内に格納される。したがって、この16画素データ
のシフトイン後、同じ処理を繰返すことにより、水平ベ
クトル成分が+4加算されたサーチウィンドウにおいて
動きベクトル探索を行なうことができる。以降、この動
作をサーチエリア内の変位ベクトルについて実行する。
【0107】図20は、図7に示す加算回路36の構成
を概略的に示す図である。図7に示すように、要素プロ
セッサPEijは、テンプレートブロックの画素に対応
して配置される。したがって、その配置位置により、各
要素プロセッサは、偶数フィールドEVENの画素に対
応して配置されているのか、奇数フィールドODDの画
素に対応して配置されているのかを識別することができ
る。加算回路36は、この特徴を利用して、3つの予測
モードについての評価値を算出する。
【0108】図20において、加算回路36は、奇数フ
ィールドの画素に対応して配置される要素プロセッサの
出力データ(評価値成分)PEo(AEo)の総和を求
める総和回路36aと、偶数フィールドEVENの画素
に対応して配置される要素プロセッサの出力データ(差
分絶対値AEe)PEeの総和を求める総和回路36b
と、総和回路36aおよび36bの出力値を加算する加
算回路36cとを含む。総和回路36aから奇数サブテ
ンプレートブロックについての動きベクトルの評価値Σ
o|a−b|が出力され、総和回路36bから、偶数サ
ブテンプレートブロックについての動きベクトル評価値
Σe|a−b|が出力される。加算回路36cから、テ
ンプレートブロックの評価値Σ|a−b|が出力され
る。したがって、フレーム予測、偶数フィールド予測、
および奇数フィールド予測の3つの予測モードに従った
評価値を並行して導出することができる。
【0109】要素プロセッサPE内においては、4つの
テンプレートブロックの画素データが格納されている。
これら4つのテンプレートブロックの評価値算出が時分
割的に行なわれる。したがって、4クロックサイクルで
4つのテンプレートブロックについての動きベクトル評
価値が算出される。4クロックサイクルごとに、サーチ
ウィンドウ画素データの転送が行なわれる。
【0110】なお、図13に示す画面分割においては、
水平方向に整列する16個のテンプレートブロックTB
1−TB16を含む領域がサーチエリアとして想定され
ている。このサーチエリアの水平方向が、1画面のサイ
ズと同じである必要はない。画面水平方向が32分割さ
れ、16個のテンプレートブロックについて動きベクト
ル検出が行なわれてもよい。
【0111】サーチエリア内においての動きベクトル評
価値がすべて算出されると、図1に示す比較部6におい
て、最小の評価値を与えるテンプレートブロックの変位
ベクトルが、各予測モードに対する動きベクトルとして
決定される。比較部6は、単にレジスタと比較器を含
み、与えられる評価値とレジスタに格納された評価値と
の比較を行ない、小さな評価値が与えられるごとにレジ
スタの内容を更新し、そのときの変位ベクトル値を併せ
て格納する構成を備える。同じ評価値成分が与えられる
とき予め定められた優先順位に従って動きベクトル候補
の変位ベクトルの更新が行なわれてもよい。
【0112】4:1サブサンプリングデータ時において
は、水平方向において、画素が4:1の割合でサブサン
プリングされており、水平ベクトル成分を4倍に拡張し
ても、算出される評価値の数は、変化せず、広いサーチ
エリアにおいて動きベクトル探索を行なうことができ
る。また、複数のテンプレートブロックについて並行し
て、動きベクトル算出が行なわれるため、高速で、動き
ベクトル検出を行なうことができる。
【0113】[2:1サブサンプリングレート時の動
作]2:1サブサンプリングモード時においては、シフ
トユニットS♯0およびS♯1およびデータバッファ回
路34♯0および34♯1は、図12に示すように、連
続的に一方方向に画素データを転送するように選択回路
50および52により接続される。すなわち、シフトユ
ニットS♯0およびS♯1においては、遅延バッファD
LB0−DLB3の有する遅延時間ずれたサーチウィン
ドウ画素データが格納される。また、1フレーム画像
を、図21に示すように水平方向8個のマクロブロック
に分割する状態を考える。この領域はテンプレートブロ
ックTB4のサーチエリアに対応する。マクロブロック
は、16画素・16画素で構成される。
【0114】図22は、2:1サブサンプリングモード
時に演算部で処理されるテンプレートブロックの構成を
概略的に示す図である。2:1サブサンプリングモード
時においては、水平方向の隣接2画素が1画素にサブサ
ンプリングされる。したがって、16画素・16画素の
テンプレートブロックTB4は、16画素行・8画素列
のフレームテンプレートブロックに縮小される。このフ
レームテンプレートブロックは偶数フィールドEVEN
および奇数フィールドODDの画素データを含んでい
る。したがって奇数サブテンプレートブロックは、8画
素行・8画素列で構成され、また偶数サブテンプレート
ブロックも、8画素行・8画素列で構成される。
【0115】テンプレートブロックTB4についての動
きベクトルを検出する動作を考える。
【0116】図23は、演算部の配置を概略的に示す図
である。図23において、シフトユニットS♯0および
データバッファ回路34♯0は、4画素列を転送するサ
ブシフトブロックSSB0を構成し、シフトユニットS
♯1およびデータバッファ回路34♯1が、4列のサー
チウィンドウ画素データを転送するサブシフトブロック
SSB1を構成する。シフトユニットS♯1からシフト
アウトされた画素データが、データバッファ回路34♯
0へ与えられる。演算ユニットE♯0には、テンプレー
トブロックTB1〜TB4それぞれの、左半分の画素デ
ータが格納され、演算ユニットE♯1においては、テン
プレートブロックTB1〜TB4の右半分の画素データ
が格納される。演算ユニットE♯2においてはテンプレ
ートブロックTB5〜TB8それぞれの、左半分の画素
データが格納され、演算ユニットE♯3に、テンプレー
トブロックTB5〜TB8の右半分の画素データが格納
される。データバッファ回路34♯0および34♯1そ
れぞれは、水平方向48画素のサーチウィンドウ画素デ
ータを格納する。2:1サブサンプリングモード時にお
いては、垂直方向の探索範囲は−24〜+23である。
したがって、シフトユニットS♯0およびS♯1には、
垂直方向に関して同じ位置のサーチウィンドウ画素デー
タが格納される。
【0117】図24は、テンプレートブロックTB4に
対する画素データの格納状態を示す図である。演算ユニ
ットE♯0内においては、16画素行・4画素列のテン
プレートブロックTB4の左半分の画像データが格納さ
れる。演算ユニットE♯1内においては、16行・4列
のテンプレートブロックTB4の右半分のブロックの画
素データが格納される。シフトユニットS♯0内におい
ては、16画素行・4画素列のサーチウィンドウ画素デ
ータが格納され、データバッファ回路34♯0内におい
て、48画素行・4画素列のサーチウィンドウ画素デー
タが格納される。
【0118】シフトユニットS♯1内においては、16
画素行・4画素列のサーチウィンドウ画素データが格納
され、データバッファ回路34♯1内においては、48
画素行・4画素列のサーチウィンドウ画素データが格納
される。サブシフトブロックSSB0およびSSB1内
に格納される画素データを合わせると、図24に示すよ
うに、シフトユニットS♯0およびS♯1内に16画素
行・8画素列のサーチウィンドウブロック画素データが
格納され、データバッファ回路34♯0および34♯1
内に48画素行・8画素列のサーチウィンドウ画素デー
タが格納される。したがって、演算ユニットE♯0にお
いてはテンプレートブロックTB4の左半分の画素デー
タについての評価値成分を生成し、演算ユニットE♯1
内においてテンプレートブロックTB4の右半分の画素
データについての評価値成分を算出する。これらの評価
値成分を加算することにより、テンプレートブロックT
B4の評価値が生成される。
【0119】図24から明らかなように、サーチウィン
ドウ画素データのシフト動作は、4:1サブサンプリン
グモード時と同じように、1画素ずつシフトインして、
サブシフトブロックSSB0およびSSB1において1
画素シフトさせることにより行なう。
【0120】図24に示すサブシフトブロックSSB0
およびSSB1におけるサーチウィンドウ画素データの
格納状態においては、フレームテンプレートブロックT
B4に対しては、変位ベクトル(0,−24)であり、
奇数サブテンプレートブロックTB4oは、奇数フィー
ルドODDに対するフィールド変位ベクトル(0,−1
2)となる。偶数サブテンプレートブロックTB4e
は、複数フィールドEVENに対するフィールド変位ベ
クトル(0,−12)となる。これらの変位ベクトルに
対し、各要素プロセッサPEijが、シフトユニットの
対応のシフトレジスタSRijから出力されるサーチウ
ィンドウ画素データSWijと格納するテンプレートブ
ロック画素データとの差分絶対値を求める。この求めら
れた差分絶対値が総和部36において総和される。すな
わち奇数サブテンプレートブロックTB4oについての
差分絶対値の総和、偶数サブテンプレートブロックTB
4eについての差分絶対値の総和がそれぞれ求められ
る。その後、これらの総和をさらに加算して、テンプレ
ートブロックTB4に対する差分絶対値の総和が求めら
れる。演算ユニットE♯0−E♯3から出力される差分
絶対値の総和値は、それぞれテンプレートブロックの半
分の画素データの差分絶対値の和である。したがって、
さらに別に設けられた総和部において、これらの各演算
ユニットから出力された変位ベクトルの差分絶対値の総
和がさらに加算される。これにより、テンプレートブロ
ックTB4に対するフレーム予測、偶数フィールド予
測、および奇数フィールド予測の3つの予測モードに従
った評価値が生成される。
【0121】要素プロセッサPEijにおいては、4つ
のテンプレートブロックの画素データが格納される。こ
れは先の4:1サブサンプリングモード時と同じであ
る。したがって、4クロックサイクル期間サーチウィン
ドウ画素データはシフトレジスタ内に保持され、4つの
テンプレートブロックそれぞれに対する評価値成分の算
出が実行される。4クロックサイクルが経過すると、サ
ーチウィンドウ画素データが1画素シフトされる。
【0122】図25は、1画素シフトした後のサーチウ
ィンドウ画素データのサブシフトブロックSSB0およ
びSSB1における格納状態を概略的に示す図である。
図25において、1画素のサーチウィンドウデータが、
データバッファ回路34♯内へシフトインされる。これ
により、サブシフトブロックSSB1およびSSB0に
おいて、1画素のシフト動作が行なわれる。シフトユニ
ットS♯1からシフトアウトされた画素データがデータ
バッファ回路34♯0にシフトインされる。また、シフ
トユニットS♯0から、1画素のデータがシフトアウト
される。サブシフトブロックSSB0内において、図の
最上行の4画素および下部の47画素・4画素が格納さ
れる。また、16画素・4画素のサーチウィンドウブロ
ック画素データがサブシフトブロックSSB0に格納さ
れる。サブシフトブロックSSB1において、図25の
最上行の4画素および下側の47画素・4画素のサーチ
ウィンドウ画素データが格納される。シフトユニットS
♯1内において、16画素・4画素のサーチウィンドウ
ブロック画素データが格納される。
【0123】この状態は、フレームテンプレートブロッ
クTB4に対して、テンプレートブロックのフレーム変
位ベクトル(0,−23)、奇数サブテンプレートブロ
ックTB4oは、偶数フィールドEVENに対するフィ
ールド変位ベクトル(0,−12)、および偶数サブテ
ンプレートブロックTB4eは、奇数フィールドODD
に対するフィールド変位ベクトル(0,−11)のサー
チウィンドウブロックがシフトユニットS♯0およびS
♯1に格納された状態に対応する。シフトユニットS♯
0およびS♯1に格納されたサーチウィンドウブロック
に対して、上述と同様の差分絶対値および総和演算が行
なわれ、フレーム予測、偶数フィールド予測および奇数
フィールド予測の各予測モードに従った評価値が算出さ
れる。
【0124】上述のサーチウィンドウ画素データの転送
動作を、1水平変位についての垂直変位分(−24〜+
23の48変位分)繰返す。この状態において、図26
に示すように、サーチウィンドウブロックが、最下部に
移動する。この状態で、テンプレートブロックTB4の
フレーム変位ベクトル(0,23)、偶数サブテンプレ
ートブロックTB4eは、偶数フィールドに対するフィ
ールド変位ベクトル(0,11)、奇数サブテンプレー
トブロックTB4oは、奇数フィールドに対するフィー
ルド変位ベクトル(0,11)のサーチウィンドウブロ
ックが格納された状態に対応する。データバッファ回路
において、すでに、48個のサーチウィンドウ画素デー
タが格納されている。この状態で、評価値算出が行なわ
れる。データバッファ回路34♯0および34♯1内に
おいては、シフトユニットS♯0およびS♯1に格納さ
れたサーチウィンドウ画素データと、水平方向について
1サブサンプリング画素ずれた位置のサーチウィンドウ
画素データが格納される。
【0125】この演算動作完了後、サーチウィンドウ画
素データの転送のみ(演算は行なわず)の動作を16回
(16クロックサイクル)繰返す。この結果、図27に
示すように、次の水平変位ベクトル(+2加算)に対す
る最初の垂直変位点についての評価を行なうことのでき
る状態となる。
【0126】すなわち、水平方向に1サブサンプリング
画素データずれた位置のサーチウィンドウの画素データ
が演算部に格納される。ここで、1サブサンプリング画
素は、画面上の2画素に対応する。以降、評価値算出動
作を、サーチエリア内の全ベクトルについてすべて実行
する。
【0127】この評価値に対し、比較部6においてテン
プレートブロックそれぞれに対する3つの予測モード
(フレーム予測、偶数フィールド予測、および奇数フィ
ールド予測)に対する最小評価値が求められ、これらの
最小評価値に対する変位ベクトルが、テンプレートブロ
ック、奇数サブテンプレートブロックおよび偶数サブテ
ンプレートブロックに対する動きベクトルとして決定さ
れる。
【0128】[テスト制御部の構成]図28を参照し
て、テスト制御部12は、外部からテスト時に与えられ
る、テスト起動ビット(ビット7)とテスト回数(ビッ
ト6:0)とからなる8ビット(1バイト)のテスト制
御データを格納するためのテスト用レジスタ64と、テ
スト時に入力部2と結果圧縮回路8とを制御するための
テスト制御回路60と、テスト制御データのビット7
(「テスト起動ビット」と呼ぶ。)に1が書込まれたこ
とを検出して、制御回路10およびテスト制御回路60
に対して起動を指示するためのテスト起動検出回路62
とを含む。
【0129】なお、制御回路10は、通常は通常起動信
号および動作モードを指定するモード信号を受けて通常
動作を行う。テスト起動検出回路62による起動を受け
た際の制御回路10の動作は、通常動作時と同一であ
る。制御回路10は、1回の動作サイクルの終了ごとに
期間指示信号を出力する機能を持つ。
【0130】テスト制御回路60は、テスト起動検出回
路62による起動を受けて動作を開始し、制御テスト用
データのビット6:0と、制御回路10の出力する期間
指示信号とに基づいて、図2に示すテストデータ生成回
路2a、セレクタ2dおよび2eの制御を行なう。すな
わちテスト制御回路60は、制御回路10から期間指示
信号が発行されるたびに、次のテストサイクルに移行
し、そのテストサイクルで用いるべきテストデータ(擬
似乱数データまたはオール「0」、オール「1」のデー
タ、またはその組合わせ)を生成するようテストデータ
生成回路2aを制御し、テストデータ生成回路2aから
の出力を選択するようセレクタ2dおよび2eを制御す
る。
【0131】テストデータ生成回路2aが出力する自己
テスト用データのうち、固定データを用いたものは以下
の組合わせを含む。
【0132】
【表1】
【0133】このような組合わせを用いて演算を行なう
と、演算部内の全てのハードウェア部分が必ず動作する
ことになり、演算部内のハードウェアの全ての部分につ
いて効率的にテストを行なうことができる。テスト制御
回路12は、レジスタ64のビット6:0が表わす値の
回数だけ、予め定められたシーケンスでテストを実行す
る。たとえば、テストは次のようなシーケンスで実行さ
れる。もちろん、テストのシーケンスがこれに限定され
るわけではない。
【0134】
【表2】
【0135】レジスタ64のビット6:0が表わす値の
回数だけのテストの実行を完了すると、テスト制御回路
60は自動的にテストを終了する。テストの結果として
結果圧縮回路から出力される値と、予めシミュレーショ
ンにより得られている正しい値とを比較することによ
り、演算部のハードウェアに誤りがないかどうかを知る
ことができる。
【0136】以上のように、この発明の実施の形態に従
えば、レジスタにテスト起動ビットとテストの実行回数
とを書込むことにより、自動的にテストが開始される。
テストでは、自動的に、かつ効率的に演算部中の全ての
ハードウェアをテストできる。また、テストのために外
部のテスト装置を用いる必要もないし、装置内部のレジ
スタをスキャンパス化する必要もない。スキャンパス化
と比較するとはるかに簡単な構成で、装置を大型化する
ことなく効率的なテストを行なうことができる。
【0137】今回開示された実施の形態はすべての点で
例示であって制限的なものではないと考えられるべきで
ある。本発明の範囲は上記した説明ではなくて特許請求
の範囲によって示され、特許請求の範囲と均等の意味お
よび範囲内でのすべての変更が含まれることが意図され
る。
【0138】
【発明の効果】以上のようにこの発明にしたがえば、高
精度でハードウェアのテストを行なうことができる動き
ベクトル検出装置を提供することができる。
【0139】すなわち、請求項1に記載の発明にによれ
ば、演算手段で所定のテスト用データでの演算を行な
い、その結果を圧縮手段で圧縮することができる。テス
ト用のデータで実際に演算手段で演算し圧縮した結果と
シミュレーションによる予想結果とを比較することで、
演算手段中のハードウェアに欠陥があるか否かを容易に
テストできる。演算手段自体の構成をテストのために変
更する必要はなく、回路規模が大きくなることを防ぐこ
とができる。
【0140】請求項2にかかる発明によれば、演算結果
の総和を求めるという簡単な圧縮のための操作でテスト
を行なうことができるために、簡略な構成でテスト回路
を実現することができる。
【0141】請求項3にかかる発明によれば、擬似乱数
を用いることで、演算手段中のハードウェアに種々の動
作を行なわせることができ、テストの精度を高めること
ができる。
【0142】請求項4にかかる発明によれば、演算手段
中のハードウェアの全体にわたってその動作をテストす
ることができる。その結果、テストの精度を高めること
ができる。
【0143】請求項5にかかる発明によれば、特定の値
を用い、順次テストをすることで、よりテストの精度を
高めることができる。
【0144】請求項6にかかる発明によれば、予め定め
られたビットを予め定められた値に設定したテスト制御
用データを記憶手段に書き込むことにより、自動的にテ
ストが開始される。テストのために操作が容易になると
いう効果がある。
【0145】請求項7にかかる発明によれば、テスト制
御用データの予め定められたビット中に、テストの繰り
返し回数を設定しておくことにより、所定回数だけテス
トを繰り返し行なうことができる。その結果、テストの
精度がより高くなるという効果がある。
【0146】請求項8にかかる発明によれば、演算手段
中の、テンプレートブロックの画素を記憶するための記
憶素子として、簡単なDラッチを用いることができ、装
置の構成を簡単にすることができる。またその結果、装
置を小型化することができるという効果がある。
【0147】請求項9にかかる発明によれば、テスト用
のデータを選択して演算を行なうことにより、所定のテ
スト用データでの演算を行ない、その結果を圧縮するこ
とができる。テスト用のデータで実際に演算し圧縮した
結果とシミュレーションによる予想結果とを比較するこ
とによって、演算を行なうためのハードウェアに欠陥が
あるか否かを容易にテストできる。演算のためのハード
ウェア自体の構成をテストのために変更する必要はな
く、回路規模が大きくなることを防ぐことができる。
【0148】請求項10にかかる発明によれば、演算結
果の総和を求めるという簡単な圧縮のための操作でテス
トを行なうことができるために、簡略な構成でテスト回
路を実現することができる。
【0149】請求項11にかかる発明によれば、擬似乱
数を用いることで、演算のためのハードウェアに種々の
動作を行なわせることができ、テストの精度を高めるこ
とができる。
【0150】請求項12にかかる発明によれば、テスト
用のデータとして予め定められた固定的なデータを用い
るので、演算のためのハードウェアの全体にわたってそ
の動作をテストすることができる。その結果、テストの
精度を高めることができる。
【0151】請求項13にかかる発明によれば、特定の
値を用い、順次テストをすることで、よりテストの精度
を高めることができる。
【0152】請求項14にかかる発明によれば、予め定
められたビットを予め定められた値に設定したテスト制
御用データを記憶手段に書き込むことにより、自動的に
テストが開始される。テストのために操作が容易になる
という効果がある。
【0153】請求項15にかかる発明によれば、テスト
制御用データの予め定められたビット中に、テストの繰
り返し回数を設定しておくことにより、所定回数だけテ
ストを繰り返し行なうことができる。その結果、テスト
の精度がより高くなるという効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態に従う動きベクトル検
出装置の全体の構成を概略的に示す図である。
【図2】 図1に示す入力部の構成を概略的に示す図で
ある。
【図3】 (A)は、4:1サブサンプリングモード時
のサーチエリアを示し、(B)は、2:1サブサンプリ
ングモード時のサーチエリアを示す図である。
【図4】 4:1サブサンプリングモード時のテンプレ
ートブロックの構成を概略的に示す図である。
【図5】 2:1サブサンプリングモード時のテンプレ
ートブロックの構成を概略的に示す図である。
【図6】 図1に示す演算部の構成を概略的に示す図で
ある。
【図7】 図6に示す演算ユニットの構成を概略的に示
す図である。
【図8】 図7に示す要素プロセッサの構成を概略的に
示す図である。
【図9】 図6に示すサーチウィンドウデータに対する
シフトユニットおよびデータバッファの構成を概略的に
示す図である。
【図10】 図9に示すサーチウィンドウデータバッフ
ァの構成を概略的に示す図である。
【図11】 4:1サブサンプリングモード時のシフト
レジスタ列および遅延バッファの接続を概略的に示す図
である。
【図12】 2:1サブサンプリングモード時のシフト
レジスタ列および遅延バッファの接続を概略的に示す図
である。
【図13】 4:1サブサンプリングモード時の画面分
割の構成の一例を示す図である。
【図14】 4:1サブサンプリングモード時のサーチ
ウィンドウブロックおよびテンプレートブロックの構成
を概略的に示す図である。
【図15】 この発明の実施の形態におけるテンプレー
トブロック画素の演算ユニットへの格納状態を示す図で
ある。
【図16】 4:1サブサンプリングモード時の演算部
の格納データの状態を概略的に示す図である。
【図17】 1評価値算出サイクル経過時の演算部に格
納されるサーチウィンドウ画素データの格納状態を示す
図である。
【図18】 1水平成分に対する評価値算出完了時のサ
ーチウィンドウ画素データの格納状態を示す図である。
【図19】 次の水平成分に対するサーチウィンドウ画
素データの格納状態を示す図である。
【図20】 図7に示す加算回路の構成を概略的に示す
図である。
【図21】 2:1サブサンプリングモード時の画面分
割の構成を概略的に示す図である。
【図22】 2:1サブサンプリングモード時のテンプ
レートブロックの構成を概略的に示す図である。
【図23】 2:1サブサンプリングモード時の演算部
の接続を概略的に示す図である。
【図24】 2:1サブサンプリングモード時の画素デ
ータ格納状態を概略的に示す図である。
【図25】 1評価値算出サイクル経過時のサーチウィ
ンドウ画素データの格納状態を示す図である。
【図26】 1水平成分についての演算完了時のサーチ
ウィンドウ画素データの格納状態を示す図である。
【図27】 次の水平成分に対するサーチウィンドウ画
素データの格納状態を示す図である。
【図28】 テスト制御部のブロック図である。
【図29】 従来の画像符号化装置の構成を概略的に示
す図である。
【図30】 動きベクトル検出を説明するための図であ
る。
【符号の説明】
1 動きベクトル検出装置、2 入力部、4 演算部、
6 比較部、10 制御部、2a テストデータ生成回
路、2b サーチウィンドウメモリ、2c テンプレー
トブロックメモリ、2d,2e セレクタ、12 テス
ト制御部、SWサーチウィンドウ、TB テンプレート
ブロック、E♯0〜E♯3 演算ユニット、S♯0,S
♯1 サーチウィンドウデータシフトユニット、34
サーチウィンドウデータバッファ、PE00−PE3F
要素プロセッサ、35,35a〜35d データバ
ス、36,36c 加算回路、36a,36b 総和回
路、TMBR0−TMBR3,R0−R3 データレジ
スタ、34♯0,34♯1,34♯2 データバッファ
回路、40,41 セレクタ、42 差分絶対値回路、
DLB0〜DLB3 遅延バッファ、SR00−SR3
F シフトレジスタ、SRL0−SRL3 シフトレジ
スタ列、50,52 選択回路、50a−50d,52
a−52d セレクタ、SSB0,SSB1 サブシフ
トブロック、60 テスト制御回路、62 テスト起動
検出回路、64 テスト用レジスタ。
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5C059 KK19 KK45 LA05 NN01 NN03 NN08 NN28 TD05 TD06 UA34 5L096 HA04 JA03

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 処理画像データ中のテンプレートブロッ
    クに対して、参照画像中の探索範囲中の画像ブロックの
    中で最も高い相関を示すブロックを探索することにより
    前記テンプレートブロックの動きベクトルを検出するた
    めの、自己テスト機能付き動きベクトル検出装置であっ
    て、 前記テンプレートブロックのためのデータおよび前記探
    索範囲中の画像ブロックのためのデータを受けて、テン
    プレートブロックと前記探索範囲中の各画像ブロックと
    の間のブロックマッチング法による評価値を演算し、結
    果を出力するための演算手段と、 テスト用のデータおよび外部から受ける処理対象のデー
    タのいずれか一方を選択して前記演算手段に対して与え
    るための選択手段を含む入力手段と、 前記演算手段の出力に接続され、前記選択手段によって
    前記演算手段に前記処理対象のデータが与えられたと
    き、前記演算手段が出力する、前記テンプレートブロッ
    クと前記探索範囲中の画像ブロックの各々との間の演算
    結果を比較することにより、前記テンプレートブロック
    の動きベクトルを検出するための比較手段と、 前記演算手段の出力に接続され、前記選択手段によって
    前記演算手段に前記テスト用のデータが与えられたと
    き、前記テスト用のデータに対して前記演算手段が出力
    する演算結果に対してあらかじめ定められた演算を行な
    って結果を圧縮し出力するための演算結果圧縮手段と、 前記処理対象のデータと前記テスト用のデータとのいず
    れかを選択するように前記選択手段を制御するためのテ
    スト制御手段とを含む、自己テスト機能付き動きベクト
    ル検出装置。
  2. 【請求項2】 前記演算結果圧縮手段は、前記演算手段
    が出力する演算結果の総和を演算するための総和手段を
    含む、請求項1に記載の自己テスト機能付き動きベクト
    ル検出装置。
  3. 【請求項3】 テストデータとして擬似乱数を発生する
    ためのテストデータ生成回路をさらに含む、請求項1ま
    たは2に記載の自己テスト機能付き動きベクトル検出装
    置。
  4. 【請求項4】 予め定められた固定的なデータをテスト
    データとして生成するためのテストデータ生成回路をさ
    らに含む、請求項1または2に記載の自己テスト機能付
    き動きベクトル検出装置。
  5. 【請求項5】 テンプレート用ブロックのためのデータ
    と前記探索範囲中の画像ブロックのデータとして、それ
    ぞれオール0およびオール0、オール1およびオール
    1、オール0およびオール1、ならびにオール1および
    オール0の組み合わせを順次生成し出力するためのテス
    トデータ生成回路をさらに含む、請求項1、2または4
    に記載の自己テスト機能付き動きベクトル検出装置。
  6. 【請求項6】 前記テスト制御手段は、 外部から与えられるテスト制御用データを記憶するため
    の記憶手段と、 前記記憶手段に記憶された前記制御用データの予め定め
    られたビットが予め定められた値であることに応答し
    て、前記テスト用のデータを選択するように前記選択手
    段を制御してテストを開始させるための手段とを含む、
    請求項1〜5のいずれかに記載の自己テスト機能付き動
    きベクトル検出装置。
  7. 【請求項7】 前記テスト制御手段はさらに、前記記憶
    手段に記憶された前記テスト制御用データの予め定めら
    れたビットによって決定される値に対応する回数だけ、
    テスト動作を繰り返し行なうように前記選択手段、演算
    手段、および前記結果圧縮手段を制御するための手段を
    含む、請求項6に記載の自己テスト機能付き動きベクト
    ル検出装置。
  8. 【請求項8】 前記演算手段は、テンプレートブロック
    中の予め定められた位置の画素データを各々記憶するた
    めの記憶素子と、 前記探索範囲中の画像ブロック中の、前記記憶素子によ
    って記憶された画素データと同位置の画素データと、前
    記記憶素子によって記憶された画素データとに対して予
    め定められる誤差演算を行なって結果を出力するための
    演算要素とを含み、 前記記憶素子はDラッチを含む、請求項1〜7のいずれ
    かに記載の自己テスト機能付き動きベクトル検出装置。
  9. 【請求項9】 処理画像データ中のテンプレートブロッ
    クに対して、参照画像中の探索範囲中の画像ブロックの
    中で最も高い相関を示すブロックを探索することにより
    前記テンプレートブロックの動きベクトルを検出するた
    めの、動きベクトル検出装置における自己テスト方法で
    あって、 テスト用のデータおよび外部から受ける処理対象のデー
    タのいずれか一方を選択するステップと、 前記選択するステップにより選択されたデータを受け
    て、テンプレートブロックと前記探索範囲中の各画像ブ
    ロックとの間でブロックマッチング法による評価値を演
    算し、結果を出力するステップと、 前記選択するステップによって前記演算するステップに
    前記処理対象のデータが与えられたとき、前記演算する
    ステップが出力する、前記テンプレートブロックと前記
    探索範囲中の画像ブロックの各々との間の演算結果を比
    較することにより、前記テンプレートブロックの動きベ
    クトルを検出するステップと、 前記選択するステップによって前記演算するステップに
    前記テスト用のデータが与えられたとき、前記テスト用
    のデータに対して前記演算するステップが出力する演算
    結果に対してあらかじめ定められた演算を行なって結果
    を圧縮し出力するステップと、 常には前記処理対象のデータを、テスト時には前記テス
    ト用のデータを、それぞれ選択するように、前記選択す
    るステップを制御するステップとを含む、動きベクトル
    検出装置における自己テスト方法。
  10. 【請求項10】 前記演算結果を圧縮し出力するステッ
    プは、前記演算結果の総和を演算するステップを含む、
    請求項9に記載の動きベクトル検出装置における自己テ
    スト方法。
  11. 【請求項11】 前記選択するステップは、テスト時
    に、テストデータとして擬似乱数を発生して出力するス
    テップを含む、請求項9または10に記載の動きベクト
    ル検出装置における自己テスト方法。
  12. 【請求項12】 前記選択するステップは、予め定めら
    れた固定的なデータをテストデータとして生成し出力す
    るステップを含む、請求項9または10に記載の動きベ
    クトル検出装置における自己テスト方法。
  13. 【請求項13】 前記選択するステップは、テンプレー
    ト用ブロックのためのデータと前記探索範囲中の画像ブ
    ロックのデータとして、それぞれオール0およびオール
    1、オール1およびオール1、オール0およびオール
    1、ならびにオール1およびオール0の組み合わせを順
    次生成し出力するステップを含む、請求項9、10また
    は12に記載の動きベクトル検出装置における自己テス
    ト方法。
  14. 【請求項14】 前記選択手段を制御するステップは、 外部から与えられるテスト制御用データを記憶手段に記
    憶するステップと、 前記記憶手段に記憶された前記制御用データの予め定め
    られたビットが予め定められた値であることに応答し
    て、前記テスト用のデータを選択するように前記選択手
    段を制御してテストを開始させるステップとを含む、請
    求項9〜13のいずれかに記載の動きベクトル検出装置
    における自己テスト方法。
  15. 【請求項15】 前記選択手段を制御するステップはさ
    らに、前記記憶手段に記憶された前記テスト制御用デー
    タの予め定められたビットによって決定される値に対応
    する回数だけ、テスト動作を繰り返し行なうステップ含
    む、請求項14に記載の動きベクトル検出装置における
    自己テスト方法。
JP2001206321A 2001-07-06 2001-07-06 動きベクトル検出装置および動きベクトル検出装置における自己テスト方法 Withdrawn JP2003023638A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001206321A JP2003023638A (ja) 2001-07-06 2001-07-06 動きベクトル検出装置および動きベクトル検出装置における自己テスト方法
US10/160,002 US20030012283A1 (en) 2001-07-06 2002-06-04 Motion vector detecting device and self-testing method therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001206321A JP2003023638A (ja) 2001-07-06 2001-07-06 動きベクトル検出装置および動きベクトル検出装置における自己テスト方法

Publications (1)

Publication Number Publication Date
JP2003023638A true JP2003023638A (ja) 2003-01-24

Family

ID=19042479

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001206321A Withdrawn JP2003023638A (ja) 2001-07-06 2001-07-06 動きベクトル検出装置および動きベクトル検出装置における自己テスト方法

Country Status (2)

Country Link
US (1) US20030012283A1 (ja)
JP (1) JP2003023638A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009268117A (ja) * 2008-04-29 2009-11-12 Sony Corp 不規則で空間的にサブサンプルされる画像に対するフィルタによる影響を受ける適応領域

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4015084B2 (ja) * 2003-08-20 2007-11-28 株式会社東芝 動きベクトル検出装置及び動きベクトル検出方法
US20090262986A1 (en) * 2008-04-22 2009-10-22 International Business Machines Corporation Gesture recognition from co-ordinate data
TW201032600A (en) * 2009-02-20 2010-09-01 Sony Corp Image processing device and method
DE112016007054B4 (de) * 2016-09-12 2021-03-25 Mitsubishi Electric Corporation Anzeigevorrichtung und Anzeigesteuerverfahren

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07250328A (ja) * 1994-01-21 1995-09-26 Mitsubishi Electric Corp 動きベクトル検出装置
JPH1079947A (ja) * 1996-09-03 1998-03-24 Mitsubishi Electric Corp 動きベクトル検出装置
JPH10327415A (ja) * 1997-05-22 1998-12-08 Mitsubishi Electric Corp 動きベクトル検出装置
JPH11346369A (ja) * 1998-06-01 1999-12-14 Nec Corp 動ベクトル検出回路
JP2000041251A (ja) * 1998-07-22 2000-02-08 Mitsubishi Electric Corp 動きベクトル検出装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009268117A (ja) * 2008-04-29 2009-11-12 Sony Corp 不規則で空間的にサブサンプルされる画像に対するフィルタによる影響を受ける適応領域

Also Published As

Publication number Publication date
US20030012283A1 (en) 2003-01-16

Similar Documents

Publication Publication Date Title
US8144777B2 (en) Motion vector detection method and apparatus
JP2000270328A (ja) 動きベクトル検出装置
KR100378636B1 (ko) 전역대지역블록이동추정방법및장치
US4937666A (en) Circuit implementation of block matching algorithm with fractional precision
EP0594936B1 (en) Apparatus for estimating real-time motion and a method thereof
US7236634B2 (en) Image encoding of moving pictures
US5949486A (en) Unit for detecting motion vector for motion compensation
KR950014343B1 (ko) 고화질 티브(hdtv)의 화상데이타 움직임 추정방법 및 그 장치
GB2332327A (en) Motion vector detecting device
KR20040047963A (ko) 움직임 예측 유닛 및 방법 및 이러한 움직임 예측 유닛을구비하는 이미지 처리 장치
JP2003023638A (ja) 動きベクトル検出装置および動きベクトル検出装置における自己テスト方法
JP4377693B2 (ja) 画像データ検索
KR0178302B1 (ko) 양방향 병렬 파이프라인 구조에 근거한 탐색 이동 예측처리기
US6968011B2 (en) Motion vector detecting device improved in detection speed of motion vectors and system employing the same devices
JP2960328B2 (ja) シストリックアーキテクチャ内に配置される「n+1」個の演算子にオペランドを供給するための装置
JP3698501B2 (ja) 動きベクトル検出装置
JP2866326B2 (ja) 動きベクトル探索装置
JP2861969B2 (ja) 動きベクトル検出回路
JP3115511B2 (ja) 動きベクトル探索装置
JPH0779436A (ja) 動きベクトル検出装置
JPH08340538A (ja) 動きベクトル探索方法および装置
JP2007151169A (ja) 動ベクトル検出装置および記録媒体
JPH11187424A (ja) 動きベクトル検出装置及び動きベクトル検出方法
JP2866324B2 (ja) 動きベクトル探索装置
US20050278401A1 (en) Apparatus and method for motion vector search and post filtering with reduced hardware resources

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081007