JP2004159314A - メモリ装置、動きベクトルの検出装置および検出方法 - Google Patents

メモリ装置、動きベクトルの検出装置および検出方法 Download PDF

Info

Publication number
JP2004159314A
JP2004159314A JP2003354007A JP2003354007A JP2004159314A JP 2004159314 A JP2004159314 A JP 2004159314A JP 2003354007 A JP2003354007 A JP 2003354007A JP 2003354007 A JP2003354007 A JP 2003354007A JP 2004159314 A JP2004159314 A JP 2004159314A
Authority
JP
Japan
Prior art keywords
frame
data
bit line
memory unit
unit
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
JP2003354007A
Other languages
English (en)
Other versions
JP4543307B2 (ja
JP2004159314A5 (ja
Inventor
Tetsujiro Kondo
哲二郎 近藤
Naoki Kobayashi
小林  直樹
Wataru Niitsuma
渉 新妻
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2003354007A priority Critical patent/JP4543307B2/ja
Publication of JP2004159314A publication Critical patent/JP2004159314A/ja
Publication of JP2004159314A5 publication Critical patent/JP2004159314A5/ja
Application granted granted Critical
Publication of JP4543307B2 publication Critical patent/JP4543307B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Dram (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】第1、第2のフレームの画素データの差分データを高速に、かつ安価に得るようにする。
【解決手段】第1のフレーム(参照フレーム)の画素データを、メモリセルアレイ部20aの、ビット線BLが延びる方向に並ぶ複数のメモリセルからなるユニットAに、ストレートバイナリの形式で記憶する。第2のフレーム(探索フレーム)の画素データを、メモリセルアレイ部20bの、ビット線BLが延びる方向に並ぶ複数のメモリセルからなるユニットBに2の補数の形式で記憶する。この第1、第2のフレームの画素データに係るワードWL線を同時に活性化し、この複数のワード線WLに接続された複数のメモリセルのキャパシタの蓄積電荷を1つのビット線BL上で結合する。A/Dコンバータ53は、その電荷総量に対応した値のデジタル信号、つまり差分絶対値を出力する。画素データの読み出し時に同時に減算、絶対値変換などの処理が実行される。
【選択図】 図8



Description

この発明は、メモリ装置、動きベクトルの検出装置および検出方法に関する。
詳しくは、この発明は、第1のフレームの画素データをビット線が延びる方向に並ぶ複数のメモリセルからなるユニットにストレートバイナリの形式で記憶し、第2のフレームの画素データをビット線が延びる方向に並ぶ複数のメモリセルからなるユニットに2の補数の形式で記憶しておき、この第1、第2のフレームの画素データに係るワード線を同時に活性化し、この複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷を1つのビット線上で結合し、その電荷総量に対応した値のデジタル信号を出力する構成とすることによって、第1、第2のフレームの画素データの差分データを高速に、かつ安価に得ることができるようにしたメモリ装置に係るものである。
また、この発明は、ビット線が延びる方向に並ぶ複数のメモリセルからなるユニットのそれぞれにデータを記憶しておき、複数のデータに係るワード線を同時に活性化し、この複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷を1つのビット線上で結合し、その電荷総量に対応した値のデジタル信号を出力する構成とすることによって、複数のデータの加算データを高速に、かつ安価に得ることができるようにしたメモリ装置に係るものである。
また、この発明は、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成し、この生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックおよびこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックの間の差分絶対値和を生成し、参照フレームの各参照ブロック毎に、生成された複数の差分絶対値和に基づいて、この参照ブロックに対応した動きベクトルを検出する構成とすることによって、動きベクトルの検出を高速に、かつ安価に行い得るようにした動きベクトルの検出装置および検出方法に係るものである。
画像処理においては、動きベクトル検出は重要な要素の一つであり、その代表的な方法としてブロックマッチング法がある。これは、あるフレーム(参照フレーム)の一部を構成するある画素ブロック(参照ブロック)について、時間の異なるフレーム(探索フレーム)における様々な位置での同一形状画素ブロック(候補ブロック)との相関を評価し、その中で相関が最も高い候補ブロックとの間の相対的な位置ずれを、その参照ブロックにおける動きベクトルとみなすものである。
ここで、候補ブロックを想定する領域が探索範囲である。相関の評価には、参照ブロックと候補ブロックとの対応する各画素間の画素データの差分絶対値のブロック内各画素についての総和、すなわち差分絶対値和が用いられることが多い。1個の参照ブロックにつき探索範囲内の候補ブロック分の差分絶対値和が得られるが、その中で最も差分絶対値和の小さいところが、画素を単位とした動きベクトルと見なされる。
図22は、従来の動きベクトル検出回路200の構成例を示している。
この動きベクトル検出回路200は、参照フレームの画像信号Diが入力される入力端子201と、この参照フレームの画像信号Diを蓄積する参照フレームメモリ202と、探索フレームの画像信号を蓄積する探索フレームメモリ203とを有している。入力端子201からあるフレームの画像信号Diがフレームメモリ202に供給されて書き込まれる際に、このフレームメモリ202に記憶されていた1フレーム前の画像信号が読み出されてフレームメモリ203に供給されて書き込まれる。
また、動きベクトル検出回路200は、フレームメモリ202からの参照ブロックの画素データと、フレームメモリ203からの当該参照ブロックに対応した探索範囲の複数の候補ブロックの画素データとを入力し、複数の候補ブロックのそれぞれに対し、この候補ブロックの画素データと参照ブロックの画素データとの差分絶対値を、対応する画素データ毎に演算して出力する演算回路204を有している。
この演算回路204は、参照ブロックの画素データと、2の補数変換部204aでストレートバイナリ形式のデータから2の補数形式のデータに変換された候補ブロックの画素データを、加算部204bで加算することで差分データを得ると共に、この差分データの絶対値を絶対値変換部204cでとることによって、差分絶対値を得るようになっている。
また、動きベクトル検出回路200は、演算回路204より出力される、複数の候補ブロックのそれぞれに対応する画素データ毎の差分絶対値を累積して差分絶対値和を得る総和演算部205と、この総和演算部205で得られる複数の候補ブロックのそれぞれに対する差分絶対値和を保持する差分絶対値和保持部206とを有している。
また、動きベクトル検出回路200は、差分絶対値和保持部206に保持された複数の候補ブロックのそれぞれに対する差分絶対値和に基づいて動きベクトルを検出する最小値判定部207と、この最小値判定部207で検出された動きベクトルを保持する動きベクトル保持部208と、この動きベクトル保持部208に保持された各参照ブロックの動きベクトルMVを順次出力する出力端子209とを有している。最小値判定部207では、最小の差分絶対値和を発生する候補ブロックの位置を、動きベクトルとして検出する。
図22に示す動きベクトル検出回路200の動作を説明する。
入力端子201に入力される画像信号Diは参照フレームメモリ202に供給され、参照フレームの画像信号として蓄積される。またこの際、フレームメモリ202に記憶されていた1フレーム前の画像信号は、読み出されてフレームメモリ203に供給され、探索フレームの画像信号として蓄積される。
演算回路204には、フレームメモリ202から参照ブロックの画像データが読み出されて供給される。また、この演算回路204には、当該参照ブロックに対応した探索範囲の複数の候補ブロックの画素データが読み出されて供給される。そして、この演算回路204では、複数の候補ブロックのそれぞれに対し、この候補ブロックの画素データと参照ブロックの画素データとの差分絶対値が、対応する画素データ毎に演算されて出力される。
このように、演算回路204より出力される、複数の候補ブロックのそれぞれに対応する画素データ毎の差分絶対値は総和演算部205に順次供給されて差分絶対値和が得られる。この総和演算部205からの複数の候補ブロックのそれぞれに対する差分絶対値和は、差分絶対値和保持部206に供給されて保持される。そして、最小値判定部207では、このように差分絶対値和保持部206に保持された複数の候補ブロックのそれぞれに対する差分絶対値和に基づき、最小の差分絶対値和を発生する候補ブロックの位置が動きベクトルとして検出され、この動きベクトルが動きベクトル保持部208に保持される。
フレームメモリ202から演算回路204には参照フレーム内の複数の参照ブロックの画素データが順次供給される。そして、各参照ブロックの画素データに対応して、フレームメモリ203から演算回路204には複数の候補ブロックの画素データが供給される。したがって、各参照ブロックに対応して、演算回路204、総和演算部205、差分絶対値和保持部206、最小値判定部207および動きベクトル保持部208では上述した動作が繰り返され、従って最小値判定部207では各参照ブロックに対応した動きベクトルが順次検出され、この動きベクトルが動きベクトル保持部208に順次保持される。
そして、動きベクトル保持部208に保持された各参照ブロックに対応した動きベクトルは順次読み出される。そして、読み出された動きベクトルMVが出力端子209に出力される。このように出力される動きベクトルMVは、例えば動き補償予測符号化を行う際の動き補償処理に用いられる。
図23のフローチャートは、上述した動きベクトル検出回路200における動きベクトルMVの検出処理の手順を示している。
まず、ステップST21で、処理を開始し、ステップST22で、参照フレームメモリ202に記憶されている画像信号を読み出し、この画像信号を探索フレームの画像信号として探索フレームメモリ203に書き込む。また、ステップST23で、入力端子201から参照フレームの画像信号Diを入力し、この画像信号を参照フレームメモリ202に書き込む。
次に、ステップST24で、参照フレームメモリ202から参照ブロックの画素データを読み出し、またステップST25で、探索フレームメモリ203からその参照ブロックに対応した探索範囲内にある候補ブロックの画素データを読み出し、2の補数変換部204aで、ストレートバイナリ形式のデータから2の補数形式のデータに変換する。
そして、ステップST27で、参照ブロックのストレートバイナリ形式の画素データと2の補数形式のデータに変換された候補ブロックの画素データの加算を行って、差分データを求める。そして、ステップST28で、その差分データの絶対値を取り、参照ブロックおよび候補ブロックの画素データの間の差分絶対値を生成する。
次に、ステップST29で、ある参照ブロックと所定の候補ブロックとの間の差分絶対値和を総和演算部205で演算し、保持部206に保存する。そして、ステップST31で、ある参照ブロックと全ての候補ブロックとの間の差分絶対値和の生成が終了したか否かを判定する。終了していないときは、ステップST25に戻って、ある参照ブロックと次の候補ブロックとの間の差分絶対値和を生成する処理に移る。一方、終了したときは、ステップST32に進む。
ステップST32では、ある参照ブロックに対応して保持部206に保持された差分絶対値和に基づき、最小の差分絶対値和を発生する候補ブロックの位置を動きベクトルとして検出する。そして、ステップST33で、この検出された動きベクトルを動きベクトル保持部208に保存する。
次に、ステップST34で、参照フレームの全参照ブロックでの上述した動きベクトルの検出処理が終了したか否かを判定する。終了していないときは、ステップST24に戻って、次の参照ブロックに対応した動きベクトルを検出する処理に移る。一方、終了したときは、ステップST35で、動きベクトル保持部208に保持された各参照ブロックに対応した動きベクトルMVを順次出力し、ステップST36で処理を終了する。
上述した動きベクトル検出回路200においては、演算回路として、差分データ演算用、絶対値演算用、総和演算用等の回路が必要であることから、その分高価になるという不都合があった。
そこで、この発明の目的は、第1、第2のフレームの画素データの差分データを高速に、かつ安価に得ることができるメモリ装置を提供することにある。また、この発明の目的は、複数のデータの加算データを高速に、かつ安価に得ることができるようにしたメモリ装置を提供することにある。さらに、この発明の目的は、動きベクトルの検出を高速に、かつ安価に行い得るようにした動きベクトルの検出装置および検出方法を提供することにある。
この発明に係るメモリ装置は、それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなり、第1のフレームの画像信号を記憶する第1のフレームメモリ部と、それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなり、第2のフレームの画像信号を記憶する第2のフレームメモリ部とを備え、第1のフレームメモリ部および上記第2のフレームメモリ部はビット線が延びる方向である行方向に連続して形成され、第1のフレームメモリ部および第2のフレームメモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能とされ、第1のフレームメモリ部および第2のフレームメモリ部は、それぞれのビット線に接続される複数のメモリセルが所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、この分割された各ユニットにそれぞれ1個の画素データが記憶され、第1のフレームメモリ部の各ユニットには、それぞれ第1のフレームの画像信号を構成する画素データがストレートバイナリの形式で記憶され、第2のフレームメモリ部の各ユニットには、それぞれ第2のフレームの画像信号を構成する画素データが2の補数の形式で記憶され、第1のフレームメモリ部の所定データに係る複数のワード線および第2のフレームメモリ部の所定データに係る複数のワード線を同時に活性化する活性化手段と、複数のビット線のうちいずれか1つのビット線を選択するビット線選択手段と、このビット線選択手段で選択されたビット線上に得られた電荷総量に対応した値のデジタル信号を出力する信号出力手段とをさらに備えるものである。
この発明においては、第1および第2のフレームメモリ部を備えている。これらのフレームメモリ部は、それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなっている。これらのフレームメモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能となっている。これらのフレームメモリ部は、ビット線が延びる方向である行方向(ロウ方向)に連続して形成されている。
また、これらのフレームメモリ部は、それぞれのビット線に接続される複数のメモリセルが所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、この分割された各ユニットにそれぞれ1個の画素データが記憶される。第1のフレームメモリ部の各ユニットには、それぞれ第1のフレームの画像信号を構成する画素データがストレートバイナリの形式で記憶され、第2のフレームメモリ部の各ユニットには、それぞれ第2のフレームの画像信号を構成する画素データが2の補数の形式で記憶される。
ここで、第1のフレームメモリ部の所定データに係る複数のワード線および第2のフレームメモリ部の所定データに係る複数のワード線を同時に活性化することで、各ビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷が結合される。そして、選択された1つのビット線上に得られた電荷総量に対応した値のデジタル信号が出力される。
上述したように、第1のフレームメモリ部の各ユニットには、それぞれ第1のフレームの画像信号を構成する画素データがストレートバイナリの形式で記憶され、第2のフレームメモリ部の各ユニットには、それぞれ第2のフレームの画像信号を構成する画素データが2の補数の形式で記憶されているため、各ビット線上に得られる電荷総量は、第1、第2のフレームの画素データの差分値に対応したものとなる。これにより、上述したデジタル信号として、第1、第2のフレームの画素データの減算結果が得られる。
このように、第1のフレームの画素データをビット線が延びる方向に並ぶ複数のメモリセルからなるユニットにストレートバイナリの形式で記憶し、第2のフレームの画素データをビット線が延びる方向に並ぶ複数のメモリセルからなるユニットに2の補数データの形式で記憶しておき、この第1、第2のフレームの画素データに係るワード線を同時に活性化し、この複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷を1つのビット線上で結合し、その電荷総量に対応した値のデジタル信号を出力する構成とすることで、第1、第2のフレームの画素データの差分データを高速に、かつ安価に得ることができる。
ここで、第1のフレームメモリ部で活性化されるラインに対して、第2のフレームメモリ部で活性化されるラインの位置を変更することで、第1のフレームの所定ラインと、これと垂直方向(行方向)に所定ライン数だけずれた位置の第2のフレームのラインとの間における画素データの減算結果を得ることが可能となる。
また、第1のフレームメモリ部または第2のフレームメモリ部に記憶されている画素データの記憶位置を水平方向(列方向)に移動することで、第1のフレームの所定画素と、これと水平方向に所定画素数だけずれた位置の第2のフレームの画素との間における画素データの減算結果を得ることが可能となる。
なお、第1のフレームメモリ部の所定データに係る複数のワード線および第2のフレームメモリ部の所定データに係る複数のワード線が同時に活性化された場合には、上述したようにビット線上でこれらのワード線に接続された複数のメモリセルのキャパシタにおける蓄積電荷が結合されることから、これら複数のメモリセルの記憶データが破壊された状態となる。そのため、第1および第2のフレームメモリ部にそれぞれ記憶されている各1ライン分の画素データをワード線を活性化する前にキャッシュメモリ等に待避しておくことで、破壊された複数のメモリセルの記憶データを元に戻すことができる。
例えば、1つの画素データがNビット(Nは正の整数)のデータであるとき、この1つのデータに係るワード線はN本であり、このN本のワード線に接続されたN個のメモリセルのキャパシタは、Nビットのデータの各ビットの重みに対応した容量を持つようにされる。これにより、Nビットのデータを記憶するためのメモリセルの個数はN個で済む。これに対して、各メモリセルのキャパシタの容量が同じものであるとすると、Nビットのデータを記憶するためのメモリセルは2N−1個必要となる。
また、この発明に係るメモリ装置は、それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなるメモリ部を備え、メモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能とされ、メモリ部は、それぞれのビット線に接続される複数のメモリセルが、所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、この分割された各ユニットにそれぞれ1個のデータが記憶され、複数のデータに係るワード線を同時に活性化する活性化手段と、複数のビット線のうちいずれか1つのビット線を選択するビット線選択手段と、このビット線選択手段で選択されたビット線上に得られた電荷総量に対応した値のデジタル信号を出力する信号出力手段とをさらに備えるものである。
この発明においては、それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなっているメモリ部を備えている。このメモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能となっている。このメモリ部は、それぞれのビット線に接続される複数のメモリセルが、所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、この分割された各ユニットにそれぞれ1個のデータが記憶される。
ここで、複数のデータに係るワード線を同時に活性化することで、各ビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷が結合される。そして、選択された1つのビット線上に得られた電荷総量に対応した値のデジタル信号が出力される。このデジタル信号は、複数のデータの加算結果に対応したものとなる。
このように、ビット線が延びる方向に並ぶ複数のメモリセルからなるユニットのそれぞれにデータを記憶しておき、複数のデータに係るワード線を同時に活性化し、この複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷を1つのビット線上で結合し、その電荷総量に対応した値のデジタル信号を出力する構成とすることで、複数のデータの加算データを高速に、かつ安価に得ることができる。
例えば、メモリ部は、ビット線が延びる方向である行方向には1フレームの複数の画素位置に対応した個数のユニットを有し、ワード線が延びる方向である列方向には探索位置に対応した個数のユニットを有する。このメモリ部の各行の複数のユニットには、それぞれ対応する参照フレームの画素位置の画素データと探索フレームの複数の探索位置の画素データとの差分絶対値のデータが記憶される。ここで、参照フレームの参照ブロックを構成する各画素の画素位置に対応するユニットに係るワード線が同時に活性化されることで、デジタル信号として、参照フレームの参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対和が得られる。
また、この発明に係る動きベクトル検出装置は、参照フレームの画像信号および探索フレームの画像信号を用い、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成する差分絶対値生成手段と、この差分絶対値生成手段で生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成する差分絶対値和生成手段と、参照フレームの各参照ブロック毎に、差分絶対値和生成手段で生成された複数の差分絶対値和に基づいて、参照ブロックに対応した動きベクトルを検出する動きベクトル検出手段とを備えるものである。
また、この発明に係る動きベクトル検出方法は、参照フレームの画像信号および探索フレームの画像信号を用い、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成する工程と、この生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成する工程と、参照フレームの各参照ブロック毎に、生成された複数の差分絶対値和に基づいて、参照ブロックに対応した動きベクトルを検出する工程とを備えるものである。
この発明においては、参照フレームの画像信号および探索フレームの画像信号を用い、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値が生成される。この場合、参照フレームの全参照ブロックの動きベクトルをブロックマッチング法で求めるために必要となる全ての差分絶対値が生成される。
この生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和が生成される。この場合、例えば、参照ブロックと所定の候補ブロックとの間の差分絶対値を一度に加算して差分絶対値和を得ることが可能となる。
この生成された複数の差分絶対値和に基づいて、参照ブロックに対応した動きベクトルが検出される。この場合、ある参照ブロックに関しては、最小値の差分絶対値和に対応した候補ブロックの位置が動きベクトルとして検出される。
このように、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成し、この生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成し、参照フレームの各参照ブロック毎に、生成された複数の差分絶対値和に基づいて、この参照ブロックに対応した動きベクトルを検出する構成とすることで、動きベクトルの検出を高速に、かつ安価に行い得る。
この発明に係るメモリ装置によれば、第1のフレームの画素データをビット線が延びる方向に並ぶ複数のメモリセルからなるユニットにストレートバイナリの形式で記憶し、第2のフレームの画素データをビット線が延びる方向に並ぶ複数のメモリセルからなるユニットに2の補数の形式で記憶しておき、この第1、第2のフレームの画素データに係るワード線を同時に活性化し、この複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷を1つのビット線上で結合し、その電荷総量に対応した値のデジタル信号を出力するものであり、第1、第2のフレームの画素データの差分データを高速に、かつ安価に得ることができる。
また、この発明に係るメモリ装置によれば、ビット線が延びる方向に並ぶ複数のメモリセルからなるユニットのそれぞれにデータを記憶しておき、複数のデータに係るワード線を同時に活性化し、この複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷を1つのビット線上で結合し、その電荷総量に対応した値のデジタル信号を出力するものであり、複数のデータの加算データを高速に、かつ安価に得ることができる。
また、この発明に係る動きベクトルの検出装置および検出方法によれば、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成し、この生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成し、参照フレームの各参照ブロック毎に、生成された複数の差分絶対値和に基づいて、この参照ブロックに対応した動きベクトルを検出するものであり、動きベクトルの検出を高速に、かつ安価に行い得る。
以下、図面を参照しながら、この発明の実施の形態について説明する。
図1は、実施の形態としての動き補償予測符号化装置100の構成を示している。
この符号化装置100は、画像信号Diを入力する入力端子101と、この入力端子101に供給される画像信号Diと後述する動き補償回路110から供給される予測画像信号との差分を演算する減算器102と、この減算器102で得られる差分信号に対してDCT(離散コサイン変換)を行うDCT回路103と、このDCT回路103で得られるDCT係数に対して量子化を行う量子化回路104と、この量子化回路104で得られた符号化信号Doを出力する出力端子105とを有している。
また、符号化装置100は、量子化回路104で得られた符号化信号Doに対して逆量子化を行う逆量子化回路106と、この逆量子化回路106の出力信号に対して逆DCTを行って差分信号を得る逆DCT回路107と、この逆DCT回路107で得られる差分信号と動き補償回路110で得られる予測画像信号とを加算して元の画像信号を復元する加算器108と、この加算器108で復元された画像信号を記憶するフレームメモリ109とを有している。
また、符号化装置100は、フレームメモリ109に記憶された画像信号を読み込み、この画像信号を、後述する動きベクトル検出回路111からの動きベクトルMVに基づいて動き補償をした後、上述したように減算器102および加算器108に予測画像信号として供給する動き補償回路110と、入力端子101に供給される画像信号Diの動きベクトルMVを検出して動き補償回路110に供給する動きベクトル検出回路111とを有している。
図1に示す動き補償予測符号化装置100の動作を説明する。
入力端子101に入力される画像信号Diは、減算器102および動きベクトル検出回路111に供給される。減算器102では、この画像信号Diと動き補償回路110から供給される予測画像信号との差分が演算される。
減算器102で得られる差分信号はDCT回路103に供給されて離散コサイン変換される。このDCT回路103で得られるDCT係数は量子化回路104に供給されて量子化される。そして、この量子化回路104で得られた符号化信号Doが出力端子105に出力される。
また、量子化回路104で得られる符号化信号Doが逆量子化回路106に供給されて逆量子化され、さらにこの逆量子化回路106の出力信号が逆DCT回路107に供給されて逆DCTされ、差分信号が復元される。この差分信号と動き補償回路110からの予測画像信号とが加算器108で加算されて元の画像信号が復元され、この復元された画像信号がフレームメモリ109に記憶される。
動き補償回路110では、あるフレームにおいては、その前のフレームにフレームメモリ109に記憶された画像信号の読み込みが行われて、動きベクトル検出回路111からの動きベクトルMVに基づいて動き補償されて、予測画像信号が得られる。この予測画像信号は、上述したように、差分信号を得るために減算器102に供給されると共に、画像信号を復元するために加算器108に供給される。
次に、動きベクトル検出回路111の詳細を説明する。
この動きベクトル検出回路111では、ブロックマッチング法により動きベクトルが検出される。これは、図2に示すように、探索フレームの候補ブロックを所定の探索範囲内で移動し、参照フレームの参照ブロックと最も合致している候補ブロックを検出することにより、動きベクトルを求めるものである。
ブロックマッチング法では、図3Aに示すように、1枚の画像、例えば水平H画素、垂直Vラインの1フレームの画像が図3Bに示すように、P画素×Qラインのブロックに細分化される。図3Bの例では、P=5、Q=5の例である。cがブロックの中心画素位置である。
図4A〜Cは、cを中心画素とする参照ブロックとc´を中心とする候補ブロックの位置関係を示している。cを中心画素とする参照ブロックは、参照フレームの注目しているある参照ブロックであり、それと合致する探索フレームの候補ブロックが探索フレームにおいてc´を中心とするブロックの位置にあるものとしている。ブロックマッチング法では、探索範囲内において、参照ブロックと最も合致する候補ブロックを見出すことによって、動きベクトルを検出する。
図4Aの場合では、水平方向に+1画素、垂直方向に+1ライン、すなわち、(+1,+1)の動きベクトルが検出される。図4Bでは、(+3,+3)の動きベクトルMVが検出され、図4Cでは、(+2,−1)の動きベクトルが検出される。動きベクトルは、参照フレームの参照ブロック毎に求められる。
動きベクトルを探索する範囲を水平方向で±S画素、垂直方向で±Tラインとすると、参照ブロックは、その中心cに対して、水平に±S、垂直に±Tずれたところに中心c´を有する候補ブロックと比較される必要がある。
図5は、探索範囲を水平方向で±S画素、垂直方向で±Tラインとしたときの、参照ブロックと比較すべき候補ブロックの中心を示した図である。この場合、参照フレームのある参照ブロックの中心cの位置をRとする時に、比較すべき探索フレームの(2S+1)×(2T+1)個の候補ブロックとの比較が必要なことが分かる。すなわち、この図5のます目の位置にc´が存在する候補ブロックの全てが比較対象である。図5は、S=4,T=3とした例である。
探索範囲内の比較で得られた差分絶対値和の中で最小値を検出することによって、動きベクトルが検出される。図5の探索範囲は、候補ブロックの中心が位置する領域であり、P×Q画素の大きさの候補ブロックの全体が含まれる探索範囲の大きさは、(2S+P)×(2T+Q)となる。
図6は、動きベクトル検出回路111の構成を示している。
この動きベクトル検出回路111は、画像信号Diを参照フレームの信号としてメモリ部122に入力する入力端子121と、この参照フレームの画像信号Diおよび探索フレームの画像信号を蓄積するメモリ部122とを有している。このメモリ部122は、差分絶対値生成手段を構成している。
このメモリ部122は、参照フレームおよび探索フレームの画像信号を用い、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成するためのものである。このメモリ部122は、参照フレームの画像信号Diを蓄積するための参照フレームメモリ部122aと、探索フレームの画像信号を蓄積するための探索フレームメモリ部122bと、キャッシュメモリ122c,122dとを備えている。
キャッシュメモリ122c,122dは、それぞれフレームメモリ部122a,122bの所定ラインの記憶データを用いて差分絶対値を得る際に、当該所定ラインの記憶データを一時的に待避させておく待避手段を構成している。
入力端子121からあるフレームの画像信号Diがメモリ部122の参照フレームメモリ部122aに供給されて書き込まれる際に、この参照フレームメモリ部122aに記憶されていた1フレーム前の画像信号が読み出されて探索フレームメモリ部122bに供給されて書き込まれる。
この場合、参照フレームメモリ部122aより読み出された8ビットのストレートバイナリ形式の画素データが、メモリ部122の外部に設けられた2の補数変換部123で2の補数形式の画素データに変換され、9ビットの画素データとして探索フレームメモリ部122bに書き込まれる。ここで、2の補数の形式のデータを9ビットとするのは、8ビットのデータが「00000000」であるとき、2の補数の形式のデータは「100000000」となり、これへの対応のためである。なお、2の補数変換部123は、メモリ部122の内部に設けられていてもよい。
図7は、参照フレームメモリ部122aおよび探索フレームメモリ部122bを構成するメモリブロック10の構成を示している。
このメモリブロック10は、メモリセルアレイ20と、記憶データ入出力用ポート30と、ロウアドレスデコーダ40と、演算データ出力用ポート50と、制御回路80とを有している。
メモリセルアレイ20は、図8に示すように、参照フレームメモリ部122aに対応したメモリセルアレイ部20aと、探索フレームメモリ部122bに対応したメモリセルアレイ部20bとからなっている。
メモリセルアレイ部20aは、それぞれビット線BLおよびワード線WLに接続され、マトリクス状に配された複数のメモリセルMLからなっている。ビット線BLは、ロウ方向(行方向)に延びる、データを転送するための線である。また、ワード線WLは、カラム方向(列方向)に延びる、複数のビット線BLに直交する線である。同様に、メモリセルアレイ部20bは、それぞれビット線BLおよびワード線WLに接続され、マトリクス状に配された複数のメモリセルMLからなっている。図8においては、メモリセルMLを図示していないが、このメモリセルMLは、後述するように、ユニットA,Bを構成している。
これらメモリセルアレイ部20a,20bは、ビット線BLが延びる方向である行方向(ロウ方向)に連続して形成されている。ここで、メモリセルアレイ部20a,20bは、メモリセルMLが例えばDRAM構造のものであり、1つのビット線BL上で、活性化された複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷の結合が可能となっている。
メモリセルアレイ部20aにおいては、それぞれのビット線BLに接続される複数のメモリセルMLが8個毎のユニットAに分割されており、各ユニットAにそれぞれ1個の画素データ(ストレートバイナリ形式の8ビットデータ)が記憶される。図9Aは、ユニットAの構成を示している。
このユニットAは、8本のワード線WLに接続され、8個のメモリセルMLで構成されている。メモリセルMLは、DRAM構造のものであって、アクセストランジスタTとキャパシタCとで構成されている。キャパシタCの一端は接地され、その他端はアクセストランジスタTを介してビット線BLに接続されている。また、アクセストランジスタTのゲートはワード線WLに接続されている。このメモリセルMLに対する読み出しおよび書き込みは、従来周知のように、ワード線WLを活性化してアクセストランジスタTをオン状態とすることで行われる。
このユニットAの8個のメモリセルMLのそれぞれには、1個の8ビットデータの各ビットがそれぞれ記憶される。この場合、8個のメモリセルMLのキャパシタCは、上述の8ビットデータの各ビットの重みに対応した容量を持つようにされている。
図9Aにおいては、上側がLSB(least significant bit)側であり、下側がMSB(most significant bit)側である。ユニットAを構成する8個のメモリセルMLのキャパシタCの容量は、LSB側からMSB側に向かって順次倍にされている。つまり、この8個のメモリセルMLのキャパシタCの容量は、LSBのキャパシタCの容量をpとすると、LSB側から、それぞれp,2p,4p,8p,16p,32p,64p,128pとされる。
メモリセルアレイ部20bにおいては、それぞれのビット線BLに接続される複数のメモリセルMLが9個毎のユニットBに分割されており、各ユニットBにそれぞれ1個の画素データ(2の補数形式の9ビットデータ)が記憶される。図9Bは、ユニットBの構成を示している。
このユニットBは、9本のワード線WLに接続され、9個のメモリセルMLで構成されている。メモリセルMLは、DRAM構造のものであって、アクセストランジスタTとキャパシタCとで構成されている。キャパシタCの一端は接地され、その他端はアクセストランジスタTを介してビット線BLに接続されている。また、アクセストランジスタTのゲートはワード線WLに接続されている。このメモリセルMLに対する読み出しおよび書き込みは、従来周知のように、ワード線WLを活性化してアクセストランジスタTをオン状態とすることで行われる。
このユニットBの9個のメモリセルMLのそれぞれには、1個の9ビットデータの各ビットがそれぞれ記憶される。この場合、9個のメモリセルMLのキャパシタCは、上述の9ビットデータの各ビットの重みに対応した容量を持つようにされている。
図9Bにおいては、上側がLSB側であり、下側がMSB側である。ユニットBを構成する9個のメモリセルMLのキャパシタCの容量は、LSB側からMSB側に向かって順次倍にされている。つまり、この9個のメモリセルMLのキャパシタCの容量は、LSBのキャパシタCの容量をpとすると、LSB側から、それぞれp,2p,4p,8p,16p,32p,64p,128p,256pとされる。
ここで、各フレームがH本のラインで構成されると共に、各ラインがW画素で構成されるものとすると、メモリセルアレイ部20aは少なくともカラム方向にW個、ロウ方向にH個のユニットAが配置された構造とされ、メモリセルアレイ部20bも少なくともカラム方向にW個、ロウ方向にH個のユニットBが配置された構造とされる。
図7に戻って、記憶データ入出力用ポート30は、記憶データ用カラムアドレスデコーダ31、アドレスバッファ32およびI/Oバッファ33で構成されている。カラムアドレスデコーダ31には、I/Oゲート(カラム・スイッチ)やセンスアンプ等が含まれている。カラムアドレスデコーダ31には、アドレスバッファ32を介してカラムアドレスが入力される。
カラムアドレスデコーダ31は、アドレスバッファ32を介して供給されるカラムアドレスに対応して、メモリセルアレイ20のカラム方向の所定のメモリセルMLに接続されるビット線BLとの接続を確保し、I/Oバッファ33およびカラムアドレスデコーダ31を通じて、当該カラム方向の所定のメモリセルMLに対する、記憶データの書き込み、読み出しが可能となるようにする。
また、ロウアドレスデコーダ40には、アドレスバッファ41を介してロウアドレスが入力される。ロウアドレスデコーダ40は、アドレスバッファ41を介して供給されるロウアドレスに対応して、メモリセルアレイ20のロウ方向の所定のメモリセルMLに接続されるワード線WLを活性化し、I/Oバッファ33およびカラムアドレスデコーダ31を通じて、当該ロウ方向の所定のメモリセルMLに対する、記憶データの書き込み、読み出しが可能となるようにする。
また、演算データ出力用ポート50は、演算データ出力用カラムアドレスデコーダ51、アドレスバッファ52およびA/Dコンバータ53で構成されている。カラムアドレスデコーダ51には、I/Oゲート(カラム・スイッチ)やセンスアンプ等が含まれている。カラムアドレスデコーダ51には、アドレスバッファ52を介してカラムアドレスが入力される。カラムアドレスデコーダ51はビット線選択手段を構成している。また、カラムアドレスデコーダ51、A/Dコンバータ53は信号出力手段を構成している。
カラムアドレスデコーダ51は、アドレスバッファ52を介して供給されるカラムアドレスに対応して、メモリセルアレイ20のカラム方向の所定のメモリセルMLに接続される1つのビット線BLとの接続を確保し、その1つのビット線BL上に得られた電荷総量に対応した値の電圧信号を出力する。A/Dコンバータ53は、カラムアドレスデコーダ51から出力される電圧信号(アナログ信号)を所定ビット、例えば8ビットのデジタル信号に変換して出力する。
また、制御回路80は、メモリブロック10の上述した各回路の動作を、制御入力に基づいて制御する。
次に、図7に示すメモリブロック10の動作を説明する。
このメモリブロック10は、演算データ出力用ポート50を除く部分のみで、メモリセルアレイ20の所定のメモリセルMLに対する、記憶データの書き込み、読み出しが可能である。
すなわち、カラムアドレスデコーダ31には、アドレスバッファ32を介してカラムアドレスが入力される。カラムアドレスデコーダ31は、このカラムアドレスに対応して、メモリセルアレイ20のカラム方向の所定のメモリセルMLに接続されるビット線BLとの接続を確保する。また、ロウアドレスデコーダ40には、アドレスバッファ41を介してロウアドレスが入力される。ロウアドレスデコーダ40は、このロウアドレスに対応して、メモリセルアレイ20のロウ方向の所定のメモリセルMLに接続されるワード線WLを活性化する。これにより、I/Oバッファ33およびカラムアドレスデコーダ31を通じて、カラム方向およびロウ方向の所定のメモリセルMLに対する、記憶データの書き込み、読み出しが行われる。
演算データ出力用ポート50を使用した、差分絶対値の出力動作について説明する。メモリセルアレイ20のメモリセルアレイ部20aの各ユニットAの8個のメモリセルMLには、上述したように、それぞれストレートバイナリ形式の8ビットの画素データの各ビットが記憶される。また、メモリセルアレイ20のメモリセルアレイ部20bの各ユニットBの9個のメモリセルMLには、上述したように、それぞれ2の補数形式の9ビットの画素データの各ビットが記憶される。
ロウアドレスデコーダ40には、アドレスバッファ41を介してロウアドレスが入力される。ロウアドレスデコーダ40は、このロウアドレスに対応して、メモリセルアレイ20を構成するメモリセルアレイ部20a,20bの各1ラインの画素データ、つまり各1行のユニットに係る複数のワード線WLを同時に活性化する。これにより、各ビット線BL上で、それぞれ、活性化された2つの画素データに係る複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷が結合される。
ここで、複数のメモリセルMLのキャパシタCの総容量をCmとし、そこに蓄積されている電荷総量をQcとし、さらにビット線BLの容量をCbとすると、ビット線電荷総量Qbは、次式のようになる。つまり、ビット線電荷総量Qbは、複数のメモリセルMLのキャパシタCに蓄積されている電荷総量Qcに比例したものとなる。
Qb=Qc×Cb/(Cm+Cb) ・・・(1)
この状態で、カラムアドレスデコーダ51には、アドレスバッファ52を介してカラムアドレスが入力される。カラムアドレスデコーダ51は、このカラムアドレスに対応して、メモリセルアレイ20のカラム方向の所定のメモリセルMLに接続される1つのビット線BLとの接続を確保する。これにより、カラムアドレスデコーダ51からは、接続が確保されたビット線BL上に得られた電荷総量に対応した値の電圧信号が出力される。そのため、A/Dコンバータ53からは、その接続が確保されたビット線BL上に得られた電荷総量に対応した値のデジタル信号が得られる。
上述したように、メモリセルアレイ部20aの各ユニットAには、それぞれ参照フレームの画像信号Diを構成する画素データがストレートバイナリの形式で記憶され、メモリセルアレイ部20bの各ユニットBには、それぞれ探索フレームの画像信号を構成する画素データが2の補数の形式で記憶されている。そのため、各ビット線BL上に得られる電荷総量は、参照フレームおよび探索フレームの画素データの差分値に対応したものとなる。また、上述せずも、A/Dコンバータ53は、アナログ信号からデジタル信号への変換と共に、絶対値変換も行う。したがって、上述したようにA/Dコンバータ53から得られるデジタル信号は、参照フレームの画素データから探索フレームの画素データを差し引いて得られる差分データをさらに絶対値変換してなる差分絶対値となる。
この場合、カラムアドレスデコーダ51で接続を確保する1つのビット線BLを順次変更することで、A/Dコンバータ53から、各ビット線BLの部分に対応した差分絶対値が順次得られる。つまり、参照フレームの所定ラインと探索フレームの所定ラインとの間の1ライン分の差分絶対値が順次得られる。
ここで、図10を参照して、減算演算の具体例を説明する。この具体例は、被減数データとしての8ビットのデータから減数データとしての8ビットのデータを減算する例である。ユニットAの部分には被減算データとしての8ビットのデータがそのままストレートバイナリの形式で記憶されている。この8ビットのデータは「10000101」であって、10進数表現では「133」である。一方、ユニットBの部分には減数データとしての8ビットのデータが2の補数の形式のデータに変換された9ビットのデータが記憶されている。この8ビットのデータは「00010100」であって、10進数表現では「20」である。また、2の補数の形式に変換した後の9ビットのデータは「011101100」である。
このようにユニットA、ユニットBのそれぞれに被減数、減数のデータが記憶されることで、これらユニットA、ユニットBのメモリセルMLのうち、ハッチングが施されていないキャパシタCのみが電荷が蓄積された状態となる。この場合、ユニットAの8個のメモリセルMLの全てのキャパシタCに蓄積された電荷の総量は、LSBのメモリセルMLのキャパシタCに蓄積される電荷をqとすると、133qとなる。同様に、ユニットBの9個のメモリセルMLの全てのキャパシタCに蓄積された電荷の総量は、236qとなる。
このような状態で、2つのユニットA、ユニットBに係る複数のワード線WLが同時に活性化されて各メモリセルMLのアクセストランジスタTがオン状態になると、ビット線BL上で、それぞれのユニットA、ユニットBにおける蓄積電荷が結合される。これにより、ビット線BL上で結合された電荷の総量は10進数で「369」に相当するものとなる。つまり、上述の(1)式から、ビット線電荷総量Qbは、Qb=369q×Cb/(Cm+Cb)となる。
したがって、カラムアドレスデコーダ51からはこの電荷総量「369」に対応した値の電圧信号が出力される。ここで、「369」は、2進数表現では「101110001」である。このときのMSBは符号ビットであり、「1」の場合は正を、「0」の場合は負を表すものとなる。そのため、A/Dコンバータ53では、この符号ビットを考慮したA/D変換が行われ、2つのユニットA、ユニットBに記憶されていたデータの差分絶対値が得られる。
図11は、ビット線電荷総量とA/Dコンバータ53の出力値との関係を示している。この場合、ビット線電荷量「1」〜「255」に対応して「255」〜「1」、「256」〜「511」に対応して「0」〜「255」のデジタル信号を出力する。図11における横軸のビット線電荷総量は、q×Cb/(Cm+Cb)が1となるように正規化したものである。後述する図12,図20における横軸のビット線電荷総量も同様である。
なお、ビット線電荷総量とA/Dコンバータ53の出力値との関係を、図12に示すように設定し、このA/Dコンバータ53から差分データを得るようにし、この差分データを別個の絶対値化回路で絶対値に変換することも考えられる。この場合、A/Dコンバータ53は、ビット線電荷総量「1」〜「511」に対応して「−255」〜「255」のデジタル信号を出力する。
ところで、被減数データが8ビットのデータの場合には10進数で「0」〜「255」の範囲の値を取り得るが、減数データも8ビットのデータの場合には10進数で「0」〜「255」の範囲の値を取り得る。この場合に、被減数、減数のデータがそれぞれユニットA、ユニットBに正しく記憶され、これらユニットA、ユニットBに係る複数のワード線WLが同時に活性化された場合には、ビット線電荷総量は10進数で「1」〜「511」となり、「0」となることはあり得ない。そのため、図11、図12においては、ビット線電荷総量が「0」の場合に関しても変換を行っているが、その変換後のデジタル値自体には特に意味はない。
上述したように、このメモリブロック10においては、メモリセルアレイ20を構成するメモリセルアレイ部20a,20bの各1ラインの画素データに係る複数のワード線WLを同時に活性化することで、参照フレームの所定ラインと探索フレームの所定ラインとの間の1ライン分の差分絶対値を得ることができる。
ここで、メモリセルアレイ部20aで活性化されるラインに対して、メモリセルアレイ部20bで活性化されるラインの位置を変更することで、参照フレームの所定ラインと、これと垂直方向(行方向)に所定ライン数だけずれた位置の探索フレームのラインとの間における画素データの差分絶対値を得ることができる。
なお、メモリセルアレイ部20a,20bの各1ラインの画素データに係る複数のワード線WLが同時に活性化された場合には、上述したようにビット線BL上でこれらのワード線WLに接続された複数のメモリセルMLのキャパシタCにおける蓄積電荷が結合され、出力される。そのため、蓄積電荷の結合後、これら複数のメモリセルMLの記憶データは意味のない値(破壊された状態)となる。
そのため、活性化されるワード線WLに対応したメモリセルアレイ部20a,20bの複数のメモリセルMLに記憶されている各1ライン分の画素データは、ワード線WLの活性化の前にキャッシュメモリ122c,122d(図6参照)に待避される。そして、上述したように、A/Dコンバータ53から1ライン分の差分絶対値が得られた後に、このキャッシュメモリ122c,122dの記憶データを用いて、複数のメモリセルMLの意味のない記憶データが元に戻される。
また、メモリセルアレイ部20aまたはメモリセルアレイ部20bに記憶されている画素データの記憶位置を水平方向(列方向)に移動することで、参照フレームの所定画素と、これと水平方向に所定画素数だけずれた位置の探索フレームの画素との間における画素データの差分絶対値を得ることができる。
ここで、メモリセルアレイ部20aまたはメモリセルアレイ部20bに記憶されている画素データの記憶位置を水平方向(列方向)に移動する際には、上述したキャッシュメモリ122c,122dが一時記憶メモリとして使用される。
メモリ部122は、上述したような構成により、参照フレームおよび探索フレームの画像信号を用い、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成する。
ここで、1フレームの画像サイズがW×H画素であるとする。また、探索範囲が、水平方向にsw画素(ここでは、+xa〜−xb)であり、垂直方向にsh画素(ここでは、+ya〜−yb)であるとする。この場合、図13に示すように、参照フレームのW×H画素の各画素毎に、その画素データと探索フレームのsw×sh個の探索位置の画素データとの差分絶対値が生成される。
図13において、差分絶対値a(x,y),(0,0)は、参照フレームの(x,y)の位置の画素と探索フレームの(x,y)の位置の画素との間の画素データの差分絶対値を示しており、同様に差分絶対値a(x,y),(+xa,+ya)、a(x,y),(-xb,+ya)、a(x,y),(+xa,-yb)、a(x,y),(-xb,-yb)は、参照フレームの(x,y)の位置の画素とそれぞれ探索フレームの(x+xa,y+ya)、(x−xb,y+ya)、(x+xa,y−yb)、(x−xb,y−yb)の位置の画素との間の画素データの差分絶対値を示している。
ここで、参照フレームの(x,y)の位置の画素と探索フレームの(x+xa,y)〜(x−xb,y)の位置の画素との間の画素データの差分絶対値は、図14に示すように、例えばメモリセルアレイ部20bに記憶されている探索フレームの(x,y)の位置の画素データの記憶位置を水平方向(列方向)に−xa〜+xbだけ移動することによって得ることができる。
同様に、参照フレームの(x,y)の位置の画素と探索フレームの(x,y+ya)〜(x,y−yb)の位置の画素との間の画素データの差分絶対値は、図15に示すように、メモリセルアレイ部20bで活性化されるラインの位置をy+ya〜y−ybに変更することによって得ることができる。
図6に戻って、動きベクトル検出回路111は、メモリ部122で生成される差分絶対値を保持する差分絶対値保持部124を有している。この差分絶対値保持部124は、差分絶対値和生成手段を構成している。
この差分絶対値保持部124は、メモリ部122で生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内のsw×sh個の候補ブロックのそれぞれとの間の差分絶対値和を生成するものである。
図16は、差分絶対値保持部124を構成するメモリブロック60の構成を示している。このメモリブロック60は、メモリセルアレイ70と、記憶データ入出力用ポート30と、ロウアドレスデコーダ40と、演算データ出力用ポート50と、制御回路80とを有している。
このメモリブロック60は、メモリセルアレイ70の部分を除いて、上述した参照フレームメモリ部122a,122bを構成するメモリブロック10(図7参照)と同様に構成される。そのため、ここでは、メモリセルアレイ70の部分を詳細に説明し、その他の部分の説明は適宜省略する。
メモリセルアレイ70は、図17に示すように、それぞれビット線BLおよびワード線WLに接続され、マトリクス状に配された複数のメモリセルMLからなっている。図17においては、メモリセルMLを図示していないが、このメモリセルMLは、後述するように、ユニットAを構成している。ここで、メモリセルアレイ70は、メモリセルMLが例えばDRAM構造のものであり、1つのビット線BL上で、活性化された複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷の結合が可能となっている。
メモリセルアレイ70においては、それぞれのビット線BLに接続される複数のメモリセルMLが8個毎のユニットAに分割されており、各ユニットAにそれぞれ1個の差分絶対値(ストレートバイナリ形式の8ビットデータ)が記憶される。ユニットAは、上述したように、図9Aに示す構成とされている。
メモリセルアレイ70は、上述したように、1フレームの画像サイズがW×H画素であり、また探索範囲が、水平方向にsw画素、垂直方向にsh画素であるとき、少なくともカラム方向にsw×sh個、ロウ方向にW×H個のユニットAが配置された構造とされる。
上述したように、メモリ部122においては、参照フレームのW×H画素の各画素毎に、その画素データと探索フレームのsw×sh個の探索位置の画素データとの差分絶対値が生成される。上述のメモリセルアレイ70は、図18に示すように、ロウ方向の各ユニットAの位置が、参照フレームのW×H個の画素位置に対応したものとされ、カラム方向の各ユニットAの位置が、探索フレームのsw×sh個の探索位置に対応したものとされる。このメモリセルアレイ70の各ユニットAには、対応する差分絶対値が保持される。例えば、ロウ方向の(x,y)に対応したsw×sh個のユニットAの行には、参照フレームの(x,y)の位置の画素と探索フレームの水平方向x+xa〜x−xb、垂直方向y+ya〜y−ybの範囲にあるsw×sh個の探索位置の画素データとの差分絶対値が保持される。
次に、図16に示すメモリブロック60の動作を説明する。
このメモリブロック60は、演算データ出力用ポート50を除く部分のみで、メモリセルアレイ70の所定のメモリセルMLに対する、記憶データの書き込み、読み出しが可能である。
すなわち、カラムアドレスデコーダ31には、アドレスバッファ32を介してカラムアドレスが入力される。カラムアドレスデコーダ31は、このカラムアドレスに対応して、メモリセルアレイ70のカラム方向の所定のメモリセルMLに接続されるビット線BLとの接続を確保する。
また、ロウアドレスデコーダ40には、アドレスバッファ41を介してロウアドレスが入力される。ロウアドレスデコーダ40は、このロウアドレスに対応して、メモリセルアレイ70のロウ方向の所定のメモリセルMLに接続されるワード線WLを活性化する。これにより、I/Oバッファ33およびカラムアドレスデコーダ31を通じて、カラム方向およびロウ方向の所定のメモリセルMLに対する、記憶データの書き込み、読み出しが行われる。
演算データ出力用ポート50を使用した、差分絶対値和の出力動作について説明する。
ロウアドレスデコーダ40には、アドレスバッファ41を介してロウアドレスが入力される。ロウアドレスデコーダ40は、このロウアドレスに対応して、メモリセルアレイ70の、所定の参照ブロックのbw×bh個の画素位置に対応したロウ方向のユニットAに係る複数のワード線WLを同時に活性化する(図18参照)。ここで、bwは参照ブロックの水平方向の画素数、bhは参照ブロックの垂直方向の画素数を示している。これにより、各ビット線BL上で、それぞれ、活性化されたbw×bh個のユニットAに係る複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷が結合される。
この状態で、カラムアドレスデコーダ51には、アドレスバッファ52を介してカラムアドレスが入力される。カラムアドレスデコーダ51は、このカラムアドレスに対応して、メモリセルアレイ70のカラム方向の所定のメモリセルMLに接続される1つのビット線BLとの接続を確保する。これにより、カラムアドレスデコーダ51からは、接続が確保されたビット線BL上に得られた電荷総量に対応した値の電圧信号が出力される。そのため、A/Dコンバータ53からは、その接続が確保されたビット線BL上に得られた電荷総量に対応した値のデジタル信号が得られる。
上述したように、メモリセルアレイ70の、所定の参照ブロックのbw×bh個の画素位置に対応したロウ方向のユニットAに係る複数のワード線WLが同時に活性化される。そのため、各ビット線BL上に得られる電荷総量は、所定の参照ブロックとこの所定の参照ブロックに対応した探索フレームの探索範囲内の所定の候補ブロックとの間のbw×bh個の差分絶対値の加算結果に対応したものとなる。したがって、A/Dコンバータ53からは、その加算結果を示す差分絶対値和(デジタル信号)が得られることとなる。
この場合、カラムアドレスデコーダ51で接続を確保する1つのビット線BLを順次変更することで、A/Dコンバータ53から、所定の参照ブロックとこの所定の参照ブロックに対応した探索フレームの探索範囲内のsw×sh個の候補ブロックのそれぞれとの間の差分絶対値和が順次得られる。また、メモリセルアレイ70の、活性化すべきbw×bh個の画素位置に対応したロウ方向のユニットAに係る複数のワード線WLを、他の参照ブロックに対応したものとすることで、他の参照ブロックに係る差分絶対値和が得られる。
ここで、図19を参照して、加算演算の具体例を説明する。この具体例は、説明を簡単にするため、2つの8ビットデータを加算する例である。
ユニットA1の部分には被加数データとしての8ビットのデータが記憶されている。この8ビットのデータは「00010100」であって、10進数表現では「20」である。一方、ユニットA2の部分には加数データとしての8ビットのデータが記憶されている。この8ビットのデータは「10000101」であって、10進数表現では「133」である。
このようにユニットA1,A2のそれぞれに被加数、加数のデータが記憶されることで、これらユニットA1,A2のメモリセルMLのうち、ハッチングが施されていないキャパシタCのみが電荷が蓄積された状態となる。この場合、ユニットA1の8個のメモリセルMLの全てのキャパシタCに蓄積された電荷の総量は、LSBのメモリセルMLのキャパシタCに蓄積される電荷をqとすると、20qとなる。同様に、ユニットA2の8個のメモリセルMLの全てのキャパシタCに蓄積された電荷の総量は、133qとなる。
このような状態で、ユニットA1,A2に係る複数のワード線WLが同時に活性化されて各メモリセルMLのアクセストランジスタTがオン状態になると、ビット線BL上で、それぞれのユニットA1,A2における蓄積電荷が結合される。これにより、ビット線BL上で結合された電荷の総量は10進数で「153」に相当するものとなる。
したがって、カラムアドレスデコーダ51からはこの電荷総量「153」に対応した値の電圧信号が出力される。これにより、A/Dコンバータ53からは、ユニットA1,A2に記憶されていたデータの加算結果に対応した加算データが得られる。
ユニットA1、ユニットA2は、8ビット出力であるため、この加算データは、9ビット分の値になる。そこで、9ビット出力のA/Dコンバータを用いると、加算データをユニットA1、ユニットA2に格納された値の精度で出力することができる。また、8ビット出力のA/Dコンバータを利用することもできる。その場合、出力は8ビット出力であるため、出力値の精度は低くなる。
図20は、ビット線電荷総量と8ビット出力のA/Dコンバータ53の出力値(加算データ)との関係例を示している。図20の場合には、このような変換特性によって、512階調から256階調への階調変換も行える。図20では512階調から256階調へと階調が変化しているため、この出力値の2倍の値が実際の加算結果となる。
なお、メモリセルアレイ70の所定の参照ブロックのbw×bh個の画素位置に対応したロウ方向のユニットAに係る複数のワード線WLが同時に活性化された場合には、上述したようにビット線BL上でこれらのワード線WLに接続された複数のメモリセルMLのキャパシタCにおける蓄積電荷が結合される。そのため、結合後、これら複数のメモリセルMLの記憶データが意味のない値となる。しかし、この複数のメモリセルMLの部分の記憶データは、この所定の参照ブロックとは画素位置が異なる他の参照ブロックに係る差分絶対値和を得る際には必要としないので、この複数のメモリセルMLの記憶データをワード線WLを活性化する前に例えばキャッシュメモリに待避しておくことは不要である。
図6に戻って、また、動きベクトル検出回路111は、差分絶対値保持部124で生成された、参照ブロック毎のそれぞれ複数の差分絶対値和を保持する差分絶対値和保持部125を有している。
また、動きベクトル検出回路111は、差分絶対値和保持部125に保持された参照ブロック毎のそれぞれ複数の差分絶対値和に基づいて、参照ブロック毎に動きベクトルを検出する最小値判定部126と、この最小値判定部126で検出された動きベクトルを保持する動きベクトル保持部127と、この動きベクトル保持部127に保持された各参照ブロックの動きベクトルMVを順次出力する出力端子128とを有している。最小値判定部126では、最小の差分絶対値和を発生する候補ブロックの位置を、動きベクトルとして検出する。
図6に示す動きベクトル検出回路111の動作を説明する。
入力端子121に入力される画像信号Diはメモリ部122を構成する参照フレームメモリ部122aに、参照フレームの画像信号として蓄積される。またこの際、参照フレームメモリ部122bに記憶されていた1フレーム前の画像信号は、読み出されて探索フレームメモリ部122bに、探索フレームの画像信号として蓄積される。この場合、参照フレームメモリ部122aより読み出された8ビットのストレートバイナリ形式の画素データが、メモリ部122の外部に設けられた2の補数変換部123で2の補数形式の画素データに変換され、9ビットの画素データとして探索フレームメモリ部122bに書き込まれる。
参照フレームメモリ部122aおよび探索フレームメモリ部122bはメモリブロック10で構成されている(図7参照)。そして、そのメモリセルアレイ20は、参照フレームメモリ部122aに対応したメモリセルアレイ部20aと、探索フレームメモリ部122bに対応したメモリセルアレイ部20bとからなっている(図8参照)。メモリセルアレイ部20a,20bは、ビット線BLが延びる方向である行方向(ロウ方向)に連続して形成されている。
メモリセルアレイ部20a,20bの各1ラインの画素データに係る複数のワード線WLが同時に活性化されることで、各ビット線BL上で、それぞれ、活性化された2つの画素データに係る複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷が結合される。
カラムアドレスデコーダ51は、メモリセルアレイ20のカラム方向の所定のメモリセルMLに接続される1つのビット線BLとの接続を確保し、その接続を確保したビット線BL上に得られた電荷総量に対応した値の電圧信号を出力する。そして、A/Dコンバータ53からは、その電荷総量に対応した値のデジタル信号が得られる。
このデジタル信号は、メモリセルアレイ部20aの各ユニットAには、それぞれ参照フレームの画像信号Diを構成する画素データがストレートバイナリの形式で記憶され、メモリセルアレイ部20bの各ユニットBには、それぞれ探索フレームの画像信号を構成する画素データが2の補数の形式で記憶されていると共に、A/Dコンバータ53は、アナログ信号からデジタル信号への変換と共に、絶対値変換も行うことから、参照フレームの画素データから探索フレームの画素データを差し引いて得られる差分データをさらに絶対値変換してなる差分絶対値となる。
カラムアドレスデコーダ51で接続を確保する1つのビット線BLを順次変更することで、A/Dコンバータ53から、各ビット線BLの部分に対応した差分絶対値が順次得られる。つまり、参照フレームの所定ラインと探索フレームの所定ラインとの間の1ライン分の差分絶対値が順次得られる。
また、メモリセルアレイ部20aで活性化されるラインに対して、メモリセルアレイ部20bで活性化されるラインの位置が変更され、参照フレームの所定ラインと、これと垂直方向(行方向)に所定ライン数だけずれた位置の探索フレームのラインとの間における画素データの差分絶対値が得られる。
また、メモリセルアレイ部20aまたはメモリセルアレイ部20bに記憶されている画素データの記憶位置が水平方向(列方向)に移動され、参照フレームの所定画素と、これと水平方向に所定画素数だけずれた位置の探索フレームの画素との間における画素データの差分絶対値が得られる。
これにより、メモリ部122では、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値が生成される。ここで、1フレームの画像サイズがW×H画素であり、また探索範囲が、水平方向にsw画素(+xa〜−xb)、垂直方向にsh画素(+ya〜−yb)であるとき、参照フレームのW×H画素の各画素毎に、その画素データと探索フレームのsw×sh個の探索位置の画素データとの差分絶対値が生成される(図13参照)。
なお、活性化されるワード線WLに対応した複数のメモリセルアレイ部20a,20bのメモリセルMLに記憶されている各1ライン分の画素データは、ワード線WLの活性化の前にキャッシュメモリ122c,122d(図6参照)に待避される。そして、上述したように、A/Dコンバータ53から1ライン分の差分絶対値が得られた後に、このキャッシュメモリ122c,122dの記憶データを用いて、破壊された複数のメモリセルMLの記憶データが元に戻される。
メモリ部122で生成される差分絶対値は差分絶対値保持部に124に供給されて保持される。この差分絶対値保持部124は、メモリブロック60で構成されている(図16参照)。そして、そのメモリセルアレイ70は、1フレームの画像サイズがW×H画素であり、また探索範囲が、水平方向にsw画素、垂直方向にsh画素であるとき、少なくともカラム方向にsw×sh個、ロウ方向にW×H個のユニットAが配置された構造とされる(図17参照)。
このメモリセルアレイ70は、図18に示すように、ロウ方向の各ユニットAの位置が、参照フレームのW×H個の画素位置に対応したものとされ、カラム方向の各ユニットAの位置が、探索フレームのsw×sh個の探索位置に対応したものとされる。このメモリセルアレイ20の各ユニットAには、対応する差分絶対値が保持される(図18参照)。
メモリセルアレイ70の、所定の参照ブロックのbw×bh個の画素位置に対応したロウ方向のユニットAに係る複数のワード線WLが同時に活性化されることで、各ビット線BL上で、それぞれ、活性化されたbw×bh個のユニットAに係る複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷が結合される。
この状態で、カラムアドレスデコーダ51には、アドレスバッファ52を介してカラムアドレスが入力される。カラムアドレスデコーダ51は、このカラムアドレスに対応して、メモリセルアレイ70のカラム方向の所定のメモリセルMLに接続される1つのビット線BLとの接続を確保する。これにより、カラムアドレスデコーダ51からは、接続が確保されたビット線BL上に得られた電荷総量に対応した値の電圧信号が出力される。そのため、A/Dコンバータ53からは、その接続が確保されたビット線BL上に得られた電荷総量に対応した値のデジタル信号が得られる。
このデジタル信号は、各ビット線BL上に得られる電荷総量が、所定の参照ブロックとこの所定の参照ブロックに対応した探索フレームの探索範囲内の所定の候補ブロックとの間のbw×bh個の差分絶対値の加算結果に対応したものとなることから、その加算結果を示す差分絶対値和となる。
この場合、カラムアドレスデコーダ51で接続を確保する1つのビット線BLを順次変更することで、A/Dコンバータ53から、所定の参照ブロックとこの所定の参照ブロックに対応した探索フレームの探索範囲内のsw×sh個の候補ブロックのそれぞれとの間の差分絶対値和が順次得られる。また、メモリセルアレイ70の、活性化すべきbw×bh個の画素位置に対応したロウ方向のユニットAに係る複数のワード線WLを、他の参照ブロックに対応したものとすることで、他の参照ブロックに係る差分絶対値和が得られる。
これにより、差分絶対値和保持部124では、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内のsw×sh個の候補ブロックのそれぞれとの間の差分絶対値和が生成される。
この参照ブロック毎のそれぞれ複数の差分絶対値和は、差分絶対値和保持部125に供給されて保持される。そして、最小値判定部126は、参照ブロック毎に、このように差分絶対値和保持部125に保持された複数の差分絶対値和に基づき、最小の差分絶対値和を発生する候補ブロックの位置を動きベクトルとして検出する。このように検出される動きベクトルは動きベクトル保持部127に保持される。
そして、動きベクトル保持部127に保持された各参照ブロックに対応した動きベクトルは順次読み出される。そして、読み出された動きベクトルMVが出力端子128に出力される。このように出力される動きベクトルMVは、上述した動き補償回路110(図1参照)に供給され、動き補償処理に用いられる。
図21のフローチャートは、上述した動きベクトル検出回路111における動きベクトルMVの検出処理の手順を示している。
まず、ステップST1で、処理を開始し、ステップST2で、メモリ部122の参照フレームメモリ部122aに記憶されている画像信号Diを読み出し、2の補数変換部123によってストレートバイナリ形式のデータから2の補数形式のデータに変換し、その後に探索フレームの画像信号としてメモリ部122の探索フレームメモリ部122bに書き込む。また、ステップST3で、入力端子121から参照フレームの画像信号Diを入力し、この画像信号をメモリ部122の参照フレームメモリ122aに書き込む。
次に、ステップST4で、フレームメモリ部122a,122bに対応したメモリセルアレイ部20a,20bの各1ラインの画素データに係る複数のワード線WLを同時に活性化するために、その各1ラインの画素データ(参照ラインデータ、探索ラインデータ)をメモリセルアレイ部20a,20bから読み出し、キャッシュメモリ122c,122dに待避する。
次に、メモリセルアレイ部20a,20bの各1ラインの画素データに係る複数のワード線WLを同時に活性化し、参照ラインデータおよび探索ラインデータ)を同時に読み出し、1ライン分の差分絶対値を得て、差分絶対値保持部124に保持する。そして、ステップST6で、キャッシュメモリ122cに待避していた参照ラインデータを参照フレームメモリ部122aに書き戻す。また、ステップST7で、キャッシュメモリ122dに待避していた探索ラインデータを、その記憶位置を水平方向(列方向)に移動して、探索フレームメモリ部122bに書き戻す。
そして、ステップST8で、対象となっている参照ラインデータと探索範囲に対応した全ての探索ラインデータとの差分絶対値を得る処理が終了したか否かを判定する。なお、1つの参照ラインデータに関しては、最終的にsw×shライン分の差分絶対値を生成する必要がある(図13参照)。処理を終了していないときは、ステップST4に戻って、対象となっている参照ラインデータと、次の探索ラインデータとの差分絶対値を得る処理に移る。
ステップST8で、処理を終了したときは、ステップST9に進む。ステップST9では、全ての参照ラインデータにおける差分絶対値を得る処理が終了したか否かを判定する。終了をしていないときは、ステップST4に戻って、次の参照ラインデータにおける差分絶対値を得る処理に移る。
ステップST9で、処理を終了したときは、ステップST10に移る。このステップST10では、差分絶対値保持部124から、対象となっている参照ブロックに関して、この参照ブロックとその探索範囲内の各候補ブロックのそれぞれとの間の差分絶対値和を順次得て、差分絶対値和保持部125に保持する。
次に、ステップST11で、差分絶対値和保持部125に保持された、対象となっている参照ブロックに関する複数の差分絶対値和に基づき、最小の差分絶対値和を発生する候補ブロックの位置を動きベクトルとして検出する。そして、ステップST12で、この検出された動きベクトルを動きベクトル保持部127に保持する。
次に、ステップST13で、参照フレームの全参照ブロックでの上述した動きベクトルの検出処理が終了したか否かを判定する。終了していないときは、ステップST10に戻って、次の参照ブロックに対応した動きベクトルを検出する処理に移る。一方、終了したときは、ステップST14で、動きベクトル保持部127に保持された各参照ブロックに対応した動きベクトルMVを順次出力し、ステップST15で処理を終了する。
このように、本実施の形態においては、メモリ部122で、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成する。このメモリ部122は、参照フレームの画素データをビット線BLが延びる方向に並ぶ複数のメモリセルMLからなるユニットAにストレートバイナリの形式で記憶し、探索フレームの画素データをビット線BLが延びる方向に並ぶ複数のメモリセルMLからなるユニットBに2の補数の形式で記憶しておき、これら参照フレーム、探索フレームの画素データに係るワード線WLを同時に活性化し、この複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷を1つのビット線BL上で結合し、その電荷総量に対応した値のデジタル信号を差分絶対値として得るものである。
したがって、参照フレーム、探索フレームの画素データの差分絶対値を得る処理が画素データの読み出しと同時に行われるものであり、差分絶対値を高速に得ることができる。また、減算器、絶対値化回路を別個に必要とするものではなく、安価に構成することができる。
また、本実施の形態においては、差分絶対値保持部124で、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成する。この差分絶対値保持部124は、ビット線BLが延びる方向に並ぶ複数のメモリセルMLからなるユニットAのそれぞれに差分絶対値を記憶しておき、複数の差分絶対値に係るワード線WLを同時に活性化し、この複数のワード線WLに接続された複数のメモリセルMLのキャパシタCの蓄積電荷を1つのビット線BL上で結合し、その電荷総量に対応した値のデジタル信号を差分絶対値和として得るものである。したがって、複数の差分絶対値の加算が差分絶対値の読み出しと同時に行われるものであり、差分絶対値和を高速に得ることができる。また、加算器を別個に必要とするものではなく、安価に構成することができる。
また、本実施の形態においては、メモリ部122で、参照フレームの各画素毎に、その画素データと探索フレームの複数の探索位置の画素データとの差分絶対値を生成し、次に差分絶対値保持部124で、この生成された差分絶対値を用いて、参照フレームの各参照ブロック毎に、この参照ブロックとこの参照ブロックに対応した探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成し、そして参照フレームの各参照ブロック毎に、生成された複数の差分絶対値和に基づいて、この参照ブロックに対応した動きベクトルを検出するものである。したがって、動きベクトルの検出を高速に、かつ安価に行い得るようになる。
なお、上述実施の形態においては、メモリセルアレイ20,70のメモリセルMLがDRAM構造であるものを示したが、この発明はこれに限定されるものではない。要は、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷を結合し得るものであればよい。
また、上述実施の形態においては、動きベクトル検出に適用したものであり、第1のフレームが参照フレーム、第2のフレームが探索フレームであるものを示したが、この発明はこれに限定されるものではない。
また、上述実施の形態においては、8個または9個のメモリセルMLで1つのデータを記憶するユニットAあるいはユニットBが構成されるものを示したが、ユニットAあるいはユニットBを構成するメモリセルMLの個数はこれに限定されるものではない。
上述実施の形態では、各ビットのデータを記憶するメモリセルMLのキャパシタCの容量を、そのビットの重みに対応した大きさにすることで、8ビットのデータを記憶するユニットAを8個のメモリセルMLのみで構成可能としている。しかし、メモリセルMLのキャパシタCの容量が全て同じであるとした場合、256階調の電荷量の蓄積を可能とする必要があることから、28−1個のメモリセルMLでユニットAを構成できる。これは、ユニットBにおいても、同様である。
また、例えば8ビットのデータを記憶するユニットAは、8個のメモリセルMLではなく、これより少ないメモリセルMLで構成することもできる。例えばユニットAを4個のメモリセルMLで構成することもできる。その場合、各メモリセルMLのキャパシタCには、それぞれ2ビット分の電荷が蓄積される。
例えば、8ビットのデータが「10000101」である場合、LSB側から、1番目のメモリセルMLには「01」、つまり10進数で「1」に相当する電荷量の電荷を蓄積し、2番目のメモリセルMLには「0100」、つまり10進数で「4」に相当する電荷量の電荷を蓄積し、3番目のメモリセルMLには「000000」、つまり10進数で「0」に相当する電荷量の電荷を蓄積し、4番目のメモリセルMLには「10000000」、つまり10進数で「128」に相当する電荷量の電荷を蓄積すればよい。この場合、4個のメモリセルMLのキャパシタCの容量は、1番目のメモリセルMLのキャパシタCの容量をpとした場合、2番目は4p、3番目は16p、4番目は64pとすればよい。
また、上述実施の形態においては、各ユニットAに2進データを記憶するものを示したが、各ユニットAのメモリセルMLにn進の各桁のデータを記憶すれば、n進の演算を行うこともできる。この場合、各ユニットAのメモリセルMLのキャパシタCに、該当する桁の値に応じた電荷量を蓄積することでデータの記憶が可能となる。
例えば、10進数で「235」のデータを記憶する場合、1の桁を記憶するメモリセルMLのキャパシタCには、「5」に相当する電荷量の電荷を蓄積し、10の桁を記憶するメモリセルMLのキャパシタCには、「3×10」に相当する電荷量の電荷を蓄積し、100の桁を記憶するメモリセルMLのキャパシタCには、「2×100」に相当する電荷量の電荷を蓄積すればよい。勿論、各桁に対応したメモリセルMLのキャパシタCは、それぞれの桁の最大蓄積電荷量を蓄積できるだけの容量を持つことが必要となる。
この発明は、第1、第2のフレームの画素データの差分データを高速に、かつ安価に得ることができ、また複数のデータの加算データを高速に、かつ安価に得ることができるものであり、例えばブロックマッチング法によって動きベクトルを検出する用途に適用できる。
実施の形態としての動き補償予測符号化装置の構成を示すブロック図である。 ブロックマッチング法を説明するための図である。 ブロックマッチング法を説明するための図である。 ブロックマッチング法を説明するための図である。 ブロックマッチング法を説明するための図である。 動きベクトル検出回路の構成を示すブロック図である。 メモリブロックの構成例を示すブロック図である。 メモリセルアレイの構成を説明するための図である。 メモリセルアレイを構成するユニットの構成を示す図である。 減算演算の具体例を説明するための図である。 ビット線電荷総量と出力値との関係(減算の場合、絶対値変換あり)を示す図である。 ビット線電荷総量と出力値との関係(減算の場合、絶対値変換なし)を示す図である。 生成される差分絶対値を説明するための図である。 差分計算処理を説明するための図である。 差分計算処理を説明するための図である。 メモリブロックの構成例を示すブロック図である。 メモリセルアレイの構成を説明するための図である。 メモリセルアレイの構成を説明するための図である。 加算演算の具体例を説明するための図である。 ビット線電荷総量と出力値との関係(加算の場合)を示す図である。 動きベクトル検出の処理手順を示すフローチャートである。 従来の動きベクトル検出回路の構成を示すブロック図である。 従来の動きベクトル検出の処理手順を示すフローチャートである。
符号の説明
10,60・・・メモリブロック、20,70・・・メモリセルアレイ、20a,20b・・・メモリセルアレイ部、30・・・記憶データ入出力用ポート、40・・・ロウアドレスデコーダ、50・・・演算データ出力用ポート、80・・・制御回路、100・・・動き補償予測符号化装置、101・・・入力端子、102・・・減算器、103・・・DCT回路、104・・・量子化回路、105・・・出力端子、106・・・逆量子化回路、108・・・加算器、109・・・フレームメモリ、110・・・動き補償回路、111・・・動きベクトル検出回路、121・・・入力端子、122・・・メモリ部、122a・・・参照フレームメモリ部、122b・・・探索フレームメモリ部、122c,122d・・・キャッシュメモリ、123・・・2の補数変換部、124・・・差分絶対値保持部、125・・・差分絶対値和保持部、126・・・最小値判定部、127・・・動きベクトル保持部、128・・・出力端子

Claims (11)

  1. それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなり、第1のフレームの画像信号を記憶する第1のフレームメモリ部と、
    それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなり、第2のフレームの画像信号を記憶する第2のフレームメモリ部とを備え、
    上記第1のフレームメモリ部および上記第2のフレームメモリ部は上記ビット線が延びる方向である行方向に連続して形成され、
    上記第1のフレームメモリ部および上記第2のフレームメモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能とされ、
    上記第1のフレームメモリ部および上記第2のフレームメモリ部は、それぞれのビット線に接続される複数のメモリセルが所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、該分割された各ユニットにそれぞれ1個の画素データが記憶され、
    上記第1のフレームメモリ部の上記各ユニットには、それぞれ上記第1のフレームの画像信号を構成する画素データがストレートバイナリの形式で記憶され、上記第2のフレームメモリ部の上記各ユニットには、それぞれ上記第2のフレームの画像信号を構成する画素データが2の補数の形式で記憶され、
    上記第1のフレームメモリ部の所定データに係る複数のワード線および上記第2のフレームメモリ部の所定データに係る複数のワード線を同時に活性化する活性化手段と、
    複数のビット線のうちいずれか1つのビット線を選択するビット線選択手段と、
    上記ビット線選択手段で選択されたビット線上に得られた電荷総量に対応した値のデジタル信号を出力する信号出力手段とをさらに備える
    ことを特徴とするメモリ装置。
  2. 上記活性化手段で活性化されるワード線に対応して上記第1のフレームメモリ部および上記第2のフレームメモリ部にそれぞれ記憶されている1ライン分の画素データを待避しておく待避手段をさらに備える
    ことを特徴とする請求項1に記載のメモリ装置。
  3. 上記第1のフレームメモリ部または上記第2のフレームメモリ部に記憶されている画素データの記憶位置を列方向に移動する記憶位置移動手段をさらに備える
    ことを特徴とする請求項1に記載のメモリ装置。
  4. 1つの画素データがNビット(Nは正の整数)のデータであるとき、該1つの画素データに係るワード線はN本であり、上記N本のワード線に接続されたN個のメモリセルのキャパシタは、上記Nビットのデータの各ビットの重みに対応した容量を持つ
    ことを特徴とする請求項1に記載のメモリ装置。
  5. それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなるメモリ部を備え、
    上記メモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能とされ、
    上記メモリ部は、それぞれのビット線に接続される複数のメモリセルが、所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、該分割された各ユニットにそれぞれ1個のデータが記憶され、
    複数のデータに係るワード線を同時に活性化する活性化手段と、
    複数のビット線のうちいずれか1つのビット線を選択するビット線選択手段と、
    上記ビット線選択手段で選択されたビット線上に得られた電荷総量に対応した値のデジタル信号を出力する信号出力手段とをさらに備える
    ことを特徴とするメモリ装置。
  6. 1つのデータがNビット(Nは正の整数)のデータであるとき、該1つのデータに係るワード線はN本であり、上記N本のワード線に接続されたN個のメモリセルのキャパシタは、上記Nビットのデータの各ビットの重みに対応した容量を持つ
    ことを特徴とする請求項5に記載のメモリ装置。
  7. 上記メモリ部は、上記ビット線が延びる方向である行方向には1フレームの複数の画素位置に対応した個数のユニットを有し、上記ワード線が延びる方向である列方向には探索位置に対応した個数のユニットを有し、
    上記メモリ部の各行の複数のユニットには、それぞれ対応する参照フレームの画素位置の画素データと探索フレームの複数の探索位置の画素データとの差分絶対値のデータが記憶され、
    上記活性化手段は、上記参照フレームの参照ブロックを構成する各画素の画素位置に対応するユニットに係るワード線を同時に活性化する
    ことを特徴とする請求項5に記載のメモリ装置。
  8. 参照フレームの画像信号および探索フレームの画像信号を用い、上記参照フレームの各画素毎に、その画素データと上記探索フレームの複数の探索位置の画素データとの差分絶対値を生成する差分絶対値生成手段と、
    上記差分絶対値生成手段で生成された差分絶対値を用いて、上記参照フレームの各参照ブロック毎に、該参照ブロックと該参照ブロックに対応した上記探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成する差分絶対値和生成手段と、
    上記参照フレームの各参照ブロック毎に、上記差分絶対値和生成手段で生成された複数の差分絶対値和に基づいて、上記参照ブロックに対応した動きベクトルを検出する動きベクトル検出手段と
    を備えることを特徴とする動きベクトル検出装置。
  9. 上記差分絶対値生成手段は、
    それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなり、上記参照フレームの画像信号を記憶する第1のフレームメモリ部と、
    それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなり、上記探索フレームの画像信号を記憶する第2のフレームメモリ部とを備え、
    上記第1のフレームメモリ部および上記第2のフレームメモリ部は上記ビット線が延びる方向である行方向に連続して形成され、
    上記第1のフレームメモリ部および上記第2のフレームメモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能とされ、
    上記第1のフレームメモリ部および上記第2のフレームメモリ部は、それぞれのビット線に接続される複数のメモリセルが、所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、該分割された各ユニットにそれぞれ1個の画素データが記憶され、
    上記第1のフレームメモリ部の上記各ユニットには、それぞれ上記参照フレームの画像信号を構成する画素データがストレートバイナリの形式で記憶され、上記第2のフレームメモリ部の上記各ユニットには、それぞれ上記探索フレームの画像信号を構成する画素データが2の補数の形式で記憶され、
    上記第1のフレームメモリ部の所定データに係る複数のワード線および上記第2のフレームメモリ部の所定データに係る上記複数のワード線を同時に活性化する活性化手段と、
    上記第1のフレームメモリ部または上記第2のフレームメモリ部に記憶されている画素データの記憶位置を列方向に移動する記憶位置移動手段と、
    複数のビット線のうちいずれか1つのビット線を選択するビット線選択手段と、
    上記ビット線選択手段で選択されたビット線上に得られた電荷総量に対応した値のデジタル信号を出力する信号出力手段とをさらに備える
    ことを特徴とする請求項8に記載の動きベクトル検出装置。
  10. 差分絶対値和生成手段は、
    それぞれビット線およびワード線に接続され、マトリクス状に配された複数のメモリセルからなるメモリ部を備え、
    上記メモリ部では、1つのビット線上で、活性化された複数のワード線に接続された複数のメモリセルのキャパシタの蓄積電荷の結合が可能とされ、
    上記メモリ部は、それぞれのビット線に接続される複数のメモリセルが、所定数のワード線に接続される所定数のメモリセル毎のユニットに分割され、
    上記メモリ部は、上記ビット線が延びる方向である行方向には1フレームの複数の画素位置に対応した個数のユニットを有し、上記ワード線が延びる方向である列方向には探索位置に対応した個数のユニットを有し、
    上記メモリ部の各行の複数のユニットには、それぞれ対応する参照フレームの画素位置の画素データと探索フレームの複数の探索位置の画素データとの差分絶対値のデータが記憶され、
    上記参照フレームの参照ブロックを構成する各画素の画素位置に対応するユニットに係るワード線を同時に活性化する活性化手段と、
    複数のビット線のうちいずれか1つのビット線を選択するビット線選択手段と、
    上記ビット線選択手段で選択されたビット線上に得られた電荷総量に対応した値のデジタル信号を出力する信号出力手段とをさらに備える
    ことを特徴とする請求項8に記載の動きベクトル検出装置。
  11. 参照フレームの画像信号および探索フレームの画像信号を用い、上記参照フレームの各画素毎に、その画素データと上記探索フレームの複数の探索位置の画素データとの差分絶対値を生成する工程と、
    上記生成された差分絶対値を用いて、上記参照フレームの各参照ブロック毎に、該参照ブロックと該参照ブロックに対応した上記探索フレームの探索範囲内の複数の候補ブロックのそれぞれとの間の差分絶対値和を生成する工程と、
    上記参照フレームの各参照ブロック毎に、上記生成された複数の差分絶対値和に基づいて、上記参照ブロックに対応した動きベクトルを検出する工程と
    を備えることを特徴とする動きベクトル検出方法。
JP2003354007A 2002-10-15 2003-10-14 メモリ装置、および動きベクトルの検出装置 Expired - Fee Related JP4543307B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003354007A JP4543307B2 (ja) 2002-10-15 2003-10-14 メモリ装置、および動きベクトルの検出装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002300903 2002-10-15
JP2003354007A JP4543307B2 (ja) 2002-10-15 2003-10-14 メモリ装置、および動きベクトルの検出装置

Publications (3)

Publication Number Publication Date
JP2004159314A true JP2004159314A (ja) 2004-06-03
JP2004159314A5 JP2004159314A5 (ja) 2006-11-30
JP4543307B2 JP4543307B2 (ja) 2010-09-15

Family

ID=32827906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003354007A Expired - Fee Related JP4543307B2 (ja) 2002-10-15 2003-10-14 メモリ装置、および動きベクトルの検出装置

Country Status (1)

Country Link
JP (1) JP4543307B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100804895B1 (ko) 2005-06-30 2008-02-20 세이코 엡슨 가부시키가이샤 표시 장치 및 전자 기기
KR100828792B1 (ko) 2005-06-30 2008-05-09 세이코 엡슨 가부시키가이샤 집적 회로 장치 및 전자 기기
KR100850614B1 (ko) 2005-06-30 2008-08-05 세이코 엡슨 가부시키가이샤 집적 회로 장치 및 전자 기기
KR20160136463A (ko) * 2009-07-16 2016-11-29 쥐에스아이 테크놀로지 이스라엘 리미티드 연산을 수행하기 위해 기억 셀을 이용하는 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07203457A (ja) * 1993-12-27 1995-08-04 Oki Electric Ind Co Ltd 動きベクトル検出装置
JPH09244875A (ja) * 1996-03-13 1997-09-19 Tadahiro Omi 半導体演算回路
JPH11177892A (ja) * 1997-12-08 1999-07-02 Nikon Corp 動き検出用固体撮像装置
JP2000035878A (ja) * 1998-07-17 2000-02-02 Texas Instr Japan Ltd 加算演算装置及び加算演算機能付き半導体メモリ装置
JP2000333183A (ja) * 1999-05-25 2000-11-30 Matsushita Electric Ind Co Ltd 動きベクトル検出方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07203457A (ja) * 1993-12-27 1995-08-04 Oki Electric Ind Co Ltd 動きベクトル検出装置
JPH09244875A (ja) * 1996-03-13 1997-09-19 Tadahiro Omi 半導体演算回路
JPH11177892A (ja) * 1997-12-08 1999-07-02 Nikon Corp 動き検出用固体撮像装置
JP2000035878A (ja) * 1998-07-17 2000-02-02 Texas Instr Japan Ltd 加算演算装置及び加算演算機能付き半導体メモリ装置
JP2000333183A (ja) * 1999-05-25 2000-11-30 Matsushita Electric Ind Co Ltd 動きベクトル検出方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100804895B1 (ko) 2005-06-30 2008-02-20 세이코 엡슨 가부시키가이샤 표시 장치 및 전자 기기
KR100828792B1 (ko) 2005-06-30 2008-05-09 세이코 엡슨 가부시키가이샤 집적 회로 장치 및 전자 기기
KR100850614B1 (ko) 2005-06-30 2008-08-05 세이코 엡슨 가부시키가이샤 집적 회로 장치 및 전자 기기
KR20160136463A (ko) * 2009-07-16 2016-11-29 쥐에스아이 테크놀로지 이스라엘 리미티드 연산을 수행하기 위해 기억 셀을 이용하는 장치 및 방법
KR101714559B1 (ko) 2009-07-16 2017-03-09 쥐에스아이 테크놀로지 인코포레이티드 연산을 수행하기 위해 기억 셀을 이용하는 장치 및 방법

Also Published As

Publication number Publication date
JP4543307B2 (ja) 2010-09-15

Similar Documents

Publication Publication Date Title
KR100966129B1 (ko) 메모리 장치
US7573939B2 (en) Memory cell circuit, memory device, motion vector detection device, and motion compensation prediction coding device
TW302444B (en) Full-search block matching motion estimation processor
US5576772A (en) Motion vector detection apparatus and method
US8218635B2 (en) Systolic-array based systems and methods for performing block matching in motion compensation
US20040258154A1 (en) System and method for multi-stage predictive motion estimation
US20060002471A1 (en) Motion estimation unit
US20050163220A1 (en) Motion vector detection device and moving picture camera
US7002587B2 (en) Semiconductor device, image data processing apparatus and method
JPH04150284A (ja) 動ベクトル検出方法およびその装置
US20070092008A1 (en) Context-aware frame memory scheme for motion compensation in video decoding
JP4543307B2 (ja) メモリ装置、および動きベクトルの検出装置
US7113416B2 (en) Associative memory apparatus for searching data in which manhattan distance is minimum
US20060203905A1 (en) Video coding system
JP2008060836A (ja) 動きベクトル探索方法及び装置
CN110213592B (zh) 适用于hevc标准中运动估计的电路及其工作方法
US7773673B2 (en) Method and apparatus for motion estimation using adaptive search pattern for video sequence compression
JP2564504B2 (ja) 画像メモリ−
US5930403A (en) Method and apparatus for half pixel SAD generation utilizing a FIFO based systolic processor
WO2000064182A1 (en) Motion estimation
JP4003529B2 (ja) 動きベクトル検出回路と動きベクトル検出方法
Acken et al. An architectural design for parallel fractal compression
US20050078120A1 (en) Apparatus for processing data, memory bank used therefor, semiconductor device, and memory for reading out pixel data
JP2003208789A (ja) 半導体メモリ装置、動きベクトル検出装置および動き補償予測符号化装置
JP2003208789A5 (ja)

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061012

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090825

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091008

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20091102

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100603

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100616

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

Free format text: PAYMENT UNTIL: 20130709

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130709

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees