(57)【特許請求の範囲】
【請求項１】
演算補助セルおよびマトリックス状に配された複数のメモリセルを有する、１個または２個以上のメモリブロックを備えてなる半導体メモリ装置であって、
上記メモリセルは、
"１"または"０"のデータを記憶するメモリセル部と、
参照データを入力するための参照データ入力部と、
上記メモリセル部に記憶されている記憶データと上記参照データ入力部からの参照データとを用いた論理演算を行う演算機能部と、
上記演算機能部で演算されて得られた演算データを出力する演算データ出力部と、
セル選択信号を入力するためのセル選択信号入力部と、
上記セル選択信号入力部に入力されるセル選択信号に基づいて、上記演算機能部からの演算データを上記演算データ出力部に出力する出力制御部とを備え、
上記演算補助セルは、
上記メモリセルの演算データ出力部に出力された演算データを入力するための演算データ入力部と、
上記演算データ入力部に入力された演算データを用いた数値演算を行う演算部と、
上記演算部で演算されて得られた演算データを出力する演算データ出力部とを備え、
上記マトリックス状に配された複数のメモリセルの領域は、複数の分割領域からなり、
上記メモリブロックは、
活性化対象の分割領域に属するメモリセルの上記セル選択信号入力部が上記セル選択信号を入力するように、当該メモリセルを制御する切り換え機構を有する
ことを特徴とする半導体メモリ装置。
【請求項２】
上記メモリセルの演算機能部は、複数の論理演算を並行して行うと共に、
上記演算補助セルの演算部は、上記複数の論理演算によって得られた複数の演算データを用いた数値演算を行う
ことを特徴とする請求項１に記載の半導体メモリ装置。
【請求項３】
上記演算補助セルは、第１の演算補助セル部と第２の演算補助セル部とから構成され、
上記第１の演算補助セル部は、上記メモリセルの演算機能部で演算されて得られた演算データを用いた第１の数値演算を行うと共に、
上記第２の演算補助セル部は、複数の上記第１の演算補助セル部で演算されて得られた演算データを用いた第２の数値演算を行う
ことを特徴とする請求項１に記載の半導体メモリ装置。
【請求項４】
上記第１の数値演算は減算であり、上記第２の数値演算は絶対値演算である
ことを特徴とする請求項３に記載の半導体メモリ装置。
【請求項５】
上記１個または２個以上のメモリブロックより出力される演算データに基づく処理を行う回路ブロックをさらに備える
ことを特徴とする請求項１に記載の半導体メモリ装置。
【請求項６】
１個または２個以上のメモリブロックを備えてなる半導体メモリ装置であって、
上記メモリブロックは、
複数のビット線と、
上記複数のビット線に直交する複数のワード線と、
上記複数のビット線に平行する、参照データを入力するための参照データ入力線と、
上記複数のビット線に平行する、演算データを出力するための演算データ出力線と、
上記複数のワード線に平行する、セル選択信号を入力するためのセル選択線と、
上記ビット線、上記ワード線、上記参照データ入力線、上記演算データ出力線および上記セル選択線に接続され、マトリックス状に配された複数のメモリセルと、
上記複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行う演算補助セルとを有し、
上記メモリセルは、
"１"または"０"のデータを記憶するメモリセル部と、
上記参照データ入力線に接続され、上記参照データを入力するための参照データ入力部と、
上記メモリセル部に記憶されている記憶データと上記参照データ入力部からの参照データとを用いた論理演算を行う演算機能部と、
上記演算データ出力線に接続され、上記演算機能部で演算されて得られた演算データを上記演算データ出力線に出力するための演算データ出力部と、
上記セル選択線に接続され、上記セル選択信号を入力するためのセル選択信号入力部と、
上記セル選択信号入力部に入力されるセル選択信号に基づいて、上記演算機能部で演算されて得られた演算データを上記演算データ出力部に出力する出力制御部とを備え、
上記マトリックス状に配された複数のメモリセルの領域は、上記ワード線に沿う方向に分割された複数の分割領域からなり、
上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、
上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有する
ことを特徴とする半導体メモリ装置。
【請求項７】
上記メモリセルの演算機能部は複数の論理演算を並行して行うものであり、
上記メモリセルは、上記複数の論理演算によって得られた複数の演算データをそれぞれ出力するための複数の上記演算データ出力線に接続されている
ことを特徴とする請求項６に記載の半導体メモリ装置。
【請求項８】
上記演算補助セルは、
上記複数のセル選択線のうち選択された所定のセル選択線に対応した複数のメモリセルから出力される上記演算データを用いてそれぞれ第１の数値演算を行う複数の第１の演算補助セルと、
上記複数の第１の演算補助セルの所定個毎に、該所定個毎の第１の演算補助セルで演算されて得られた演算データを用いてそれぞれ第２の数値演算を行う複数の第２の演算補助セルとからなる
ことを特徴とする請求項６に記載の半導体メモリ装置。
【請求項９】
上記第１の数値演算は減算であり、
上記第２の数値演算は絶対値演算である
ことを特徴とする請求項８に記載の半導体メモリ装置。
【請求項１０】
上記切り換え機構は、
隣接する第１の分割領域と第２の分割領域との間に配され、
上記第１の分割領域の第１の分割セル選択線を、該第１の分割領域に隣接する第２の分割領域の、上記第１の分割セル選択線に対して上記ビット線に沿う方向に同一位置または隣接位置の第２の分割セル選択線に、選択的に接続するスイッチ回路を有してなる
ことを特徴とする請求項６に記載の半導体メモリ装置。
【請求項１１】
上記メモリブロックは、上記ワード線に沿う方向に並ぶ複数の分割セル選択線毎に、上記ワード線に平行する、上記セル選択信号を入力するためのグローバル選択線をさらに有し、
上記切り換え機構は、
各分割領域にそれぞれ対応して配され、ビット線に沿う方向に隣接する第１および第２の分割セル選択線のうちいずれかに、上記グローバル選択線から上記セル選択信号を選択的に供給するゲート回路を有してなる
ことを特徴とする請求項６に記載の半導体メモリ装置。
【請求項１２】
上記各分割領域の１つの分割セル選択線に対応する複数のメモリセルには、画像データを構成する垂直方向または水平方向の整数列分の画素データが記憶される
ことを特徴とする請求項６に記載の半導体メモリ装置。
【請求項１３】
上記１個または２個以上のメモリブロックより出力される演算データに基づく処理を行う回路ブロックをさらに備える
ことを特徴とする請求項６に記載の半導体メモリ装置。
【請求項１４】
１個または２個以上のメモリブロックを備えてなる半導体メモリ装置であって、
上記メモリブロックは、
複数のビット線と、
上記複数のビット線に直交する複数のワード線と、
上記複数のビット線に直交する、参照データを入力するための参照データ入力線と、
上記複数のビット線に直交する、演算データを出力するための演算データ出力線と、
上記複数のワード線に直交する、セル選択信号を入力するためのセル選択線と、
上記ビット線、上記ワード線、上記参照データ入力線、上記演算データ出力線および上記セル選択線に接続され、マトリックス状に配された複数のメモリセルと、
上記複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行う演算補助セルとを有し、
上記メモリセルは、
"１"または"０"のデータを記憶するメモリセル部と、
上記参照データ入力線に接続され、上記参照データを入力するための参照データ入力部と、
上記メモリセル部に記憶されている記憶データと上記参照データ入力部からの参照データとを用いた論理演算を行う演算機能部と、
上記演算データ出力線に接続され、上記演算機能部で演算されて得られた演算データを上記演算データ出力線に出力するための演算データ出力部と、
上記セル選択線に接続され、上記セル選択信号を入力するためのセル選択信号入力部と、
上記セル選択信号入力部に入力されるセル選択信号に基づいて、上記演算機能部で演算されて得られた演算データを上記演算データ出力部に出力する出力制御部とを備え、
上記マトリックス状に配された複数のメモリセルの領域は、上記ビット線に沿う方向に分割された複数の分割領域からなり、
上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、
上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有する
ことを特徴とする半導体メモリ装置。
【請求項１５】
上記メモリセルの演算機能部は複数の論理演算を並行して行うものであり、
上記メモリセルは、上記複数の論理演算によって得られた複数の演算データをそれぞれ出力するための複数の上記演算データ出力線に接続されている
ことを特徴とする請求項１４に記載の半導体メモリ装置。
【請求項１６】
上記演算補助セルは、
上記複数のセル選択線のうち選択された所定のセル選択線に対応した複数のメモリセルから出力される上記演算データを用いてそれぞれ第１の数値演算を行う複数の第１の演算補助セルと、
上記複数の第１の演算補助セルの所定個毎に、該所定個毎の第１の演算補助セルで演算されて得られた演算データを用いてそれぞれ第２の数値演算を行う複数の第２の演算補助セルとからなる
ことを特徴とする請求項１４に記載の半導体メモリ装置。
【請求項１７】
上記第１の数値演算は減算であり、
上記第２の数値演算は絶対値演算である
ことを特徴とする請求項１６に記載の半導体メモリ装置。
【請求項１８】
上記切り換え機構は、
隣接する第１の分割領域と第２の分割領域との間に配され、
上記第１の分割領域の第１の分割セル選択線を、該第１の分割領域に隣接する第２の分割領域の、上記第１の分割セル選択線に対して上記ワード線に沿う方向に同一位置または隣接位置の第２の分割セル選択線に、選択的に接続するスイッチ回路を有してなる
ことを特徴とする請求項１４に記載の半導体メモリ装置。
【請求項１９】
上記メモリブロックは、上記ビット線に沿う方向に並ぶ複数の分割セル選択線毎に、上記ビット線に平行する、上記セル選択信号を入力するためのグローバル選択線をさらに有し、
上記切り換え機構は、
各分割領域にそれぞれ対応して配され、ワード線に沿う方向に隣接する第１および第２の分割セル選択線のうちいずれかに、上記グローバル選択線から上記セル選択信号を選択的に供給するゲート回路を有してなる
ことを特徴とする請求項１４に記載の半導体メモリ装置。
【請求項２０】
上記各分割領域の１つの分割セル選択線に対応する複数のメモリセルには、画像データを構成する垂直方向または水平方向の整数列分の画素データが記憶される
ことを特徴とする請求項１４に記載の半導体メモリ装置。
【請求項２１】
上記１個または２個以上のメモリブロックより出力される演算データに基づく処理を行う回路ブロックをさらに備える
ことを特徴とする請求項１４に記載の半導体メモリ装置。
【請求項２２】
時間的に前後する参照フレームと探索フレームとから動きベクトルを検出する動きベクトル検出装置であって、
上記参照フレームを構成する複数の画素データを記憶する第１のメモリ部と、
上記探索フレームを構成する複数の画素データを記憶する第２のメモリ部と、
上記第１のメモリ部より参照ブロックの画素データを読み出して上記第２のメモリ部に参照データとして供給すると共に、上記第２のメモリ部において、上記参照ブロックに対応した探索範囲の複数の候補ブロックのそれぞれに対し、該候補ブロックの画素データと上記参照ブロックの画素データとの差分を、対応する画素データ毎に演算するように制御するメモリ制御部と、
上記第２のメモリ部で演算された複数の候補ブロックのそれぞれに対する画素データ毎の差分に基づいて、上記参照ブロックに対応した動きベクトルを検出する動きベクトル検出部とを備え、
上記第２のメモリ部は、演算補助セルおよびマトリックス状に配された複数のメモリセルを有する、１個または２個以上の半導体メモリブロックで構成され、
上記メモリセルは、
"１"または"０"のデータを記憶するメモリセル部と、
上記参照データを入力するための参照データ入力部と、
上記メモリセル部に記憶されている記憶データと上記参照データ入力部からの参照データとを用いた論理演算を行う演算機能部と、
上記演算機能部で演算されて得られた演算データを出力する演算データ出力部と、
セル選択信号を入力するためのセル選択信号入力部と、
上記セル選択信号入力部に入力されるセル選択信号に基づいて、上記演算機能部で演算されて得られた演算データを上記演算データ出力部に出力する出力制御部とを備え、
上記演算補助セルは、
上記メモリセルの演算データ出力部に出力された演算データを入力するための演算データ入力部と、
上記演算データ入力部に入力された演算データを用いた数値演算を行って上記差分を得る演算部とを備え、
上記マトリックス状に配された複数のメモリセルの領域は、複数の分割領域からなり、
上記メモリブロックは、
活性化対象の分割領域に属するメモリセルの上記セル選択信号入力部が上記セル選択信号を入力するように、当該メモリセルを制御する切り換え機構を有する
ことを特徴とする動きベクトル検出装置。
【請求項２３】
時間的に前後する参照フレームと探索フレームとから動きベクトルを検出する動きベクトル検出装置であって、
上記参照フレームを構成する複数の画素データを記憶する第１のメモリ部と、
上記探索フレームを構成する複数の画素データを記憶する第２のメモリ部と、
上記第１のメモリ部より参照ブロックの画素データを読み出して上記第２のメモリ部に参照データとして供給すると共に、上記第２のメモリ部において、上記参照ブロックに対応した探索範囲の複数の候補ブロックのそれぞれに対し、該候補ブロックの画素データと上記参照ブロックの画素データとの差分を、対応する画素データ毎に演算するように制御するメモリ制御部と、
上記第２のメモリ部で演算された複数の候補ブロックのそれぞれに対する画素データ毎の差分に基づいて、上記参照ブロックに対応した動きベクトルを検出する動きベクトル検出部とを備え、
上記第２のメモリ部は、それぞれ１個または２個以上の半導体メモリブロックで構成され、
上記半導体メモリブロックは、
複数のビット線と、
上記複数のビット線に直交する複数のワード線と、
上記複数のビット線に平行する、上記参照データを入力するための参照データ入力線と、
上記複数のビット線に平行する、演算データを出力するための演算データ出力線と、
上記複数のワード線に平行する、セル選択信号を入力するためのセル選択線と、
上記ビット線、上記ワード線、上記参照データ入力線、上記演算データ出力線および上記セル選択線に接続され、マトリックス状に配された複数のメモリセルと、
上記複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行って上記差分を得る演算補助セルとを有し、
上記メモリセルは、
"１"または"０"のデータを記憶するメモリセル部と
上記参照データ入力線に接続され、上記参照データを入力するための参照データ入力部と、
上記メモリセル部に記憶されている記憶データと上記参照データ入力部からの参照データとを用いた論理演算を行う演算機能部と、
上記演算データ出力線に接続され、上記演算機能部で演算されて得られた演算データを上記演算データ出力線に出力するための演算データ出力部と、
上記セル選択線に接続され、上記セル選択信号を入力するためのセル選択信号入力部と、
上記セル選択信号入力部に入力されるセル選択信号に基づいて、上記演算機能部で演算されて得られた演算データを上記演算データ出力部に出力する出力制御部とを備え、
上記マトリックス状に配された複数のメモリセルの領域は、上記ワード線に沿う方向に分割された複数の分割領域からなり、
上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、
上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有する
ことを特徴とする動きベクトル検出装置。
【請求項２４】
時間的に前後する参照フレームと探索フレームとから動きベクトルを検出する動きベクトル検出装置であって、
上記参照フレームを構成する複数の画素データを記憶する第１のメモリ部と、
上記探索フレームを構成する複数の画素データを記憶する第２のメモリ部と、
上記第１のメモリ部より参照ブロックの画素データを読み出して上記第２のメモリ部に参照データとして供給すると共に、上記第２のメモリ部において、上記参照ブロックに対応した探索範囲の複数の候補ブロックのそれぞれに対し、該候補ブロックの画素データと上記参照ブロックの画素データとの差分を、対応する画素データ毎に演算するように制御するメモリ制御部と、
上記第２のメモリ部で演算された複数の候補ブロックのそれぞれに対する画素データ毎の差分に基づいて、上記参照ブロックに対応した動きベクトルを検出する動きベクトル検出部とを備え、
上記第２のメモリ部は、それぞれ１個または２個以上の半導体メモリブロックで構成され、
上記半導体メモリブロックは、
複数のビット線と、
上記複数のビット線に直交する複数のワード線と、
上記複数のビット線に直交する、上記参照データを入力するための参照データ入力線と、
上記複数のビット線に直交する、演算データを出力するための演算データ出力線と、
上記複数のワード線に直交する、セル選択信号を入力するためのセル選択線と、
上記ビット線、上記ワード線、上記参照データ入力線、上記演算データ出力線および上記セル選択線に接続され、マトリックス状に配された複数のメモリセルと、
上記複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行って上記差分を得る演算補助セルとを有し、
上記メモリセルは、
"１"または"０"のデータを記憶するメモリセル部と
上記参照データ入力線に接続され、上記参照データを入力するための参照データ入力部と、
上記メモリセル部に記憶されている記憶データと上記参照データ入力部からの参照データとを用いた論理演算を行う演算機能部と、
上記演算データ出力線に接続され、上記演算機能部で演算されて得られた演算データを上記演算データ出力線に出力するための演算データ出力部と、
上記セル選択線に接続され、上記セル選択信号を入力するためのセル選択信号入力部と、
上記セル選択信号入力部に入力されるセル選択信号に基づいて、上記演算機能部で演算されて得られた演算データを上記演算データ出力部に出力する出力制御部とを備え、
上記マトリックス状に配された複数のメモリセルの領域は、上記ビット線に沿う方向に分割された複数の分割領域からなり、
上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、
上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有する
ことを特徴とする動きベクトル検出装置。
【請求項２５】
時間的に前後する参照フレームと探索フレームとから動きベクトル検出回路で動きベクトルを検出し、該動きベクトルを用いて動き補償を行う動き補償予測符号化装置であって、
上記動きベクトル検出回路は、
上記参照フレームを構成する複数の画素データを記憶する第１のメモリ部と、
上記探索フレームを構成する複数の画素データを記憶する第２のメモリ部と、
上記第１のメモリ部より参照ブロックの画素データを読み出して上記第２のメモリ部に参照データとして供給すると共に、上記第２のメモリ部において、上記参照ブロックに対応した探索範囲の複数の候補ブロックのそれぞれに対し、該候補ブロックの画素データと上記参照ブロックの画素データとの差分を、対応する画素データ毎に演算するように制御するメモリ制御部と、
上記第２のメモリ部で演算された複数の候補ブロックのそれぞれに対する画素データ毎の差分に基づいて、上記参照ブロックに対応した動きベクトルを検出する動きベクトル検出部とを備え、
上記第２のメモリ部は、演算補助セルおよびマトリックス状に配された複数のメモリセルを有する、１個または２個以上の半導体メモリブロックで構成され、
上記メモリセルは、
"１"または"０"のデータを記憶するメモリセル部と、
上記参照データを入力するための参照データ入力部と、
上記メモリセル部に記憶されている記憶データと上記参照データ入力部からの参照データとを用いた論理演算を行う演算機能部と、
上記演算機能部で演算されて得られた演算データを出力する演算データ出力部と、
セル選択信号を入力するためのセル選択信号入力部と、
上記セル選択信号入力部に入力されるセル選択信号に基づいて、上記演算機能部で演算されて得られた演算データを上記演算データ出力部に出力する出力制御部とを備え、
上記演算補助セルは、
上記メモリセルの演算データ出力部に出力された演算データを入力するための演算データ入力部と、
上記演算データ入力部に入力された演算データを用いた数値演算を行って上記差分を得る演算部とを備え、
上記マトリックス状に配された複数のメモリセルの領域は、複数の分割領域からなり、
上記メモリブロックは、
活性化対象の分割領域に属するメモリセルの上記セル選択信号入力部が上記セル選択信号を入力するように、当該メモリセルを制御する切り換え機構を有する
ことを特徴とする動き補償予測符号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体メモリ装置、動きベクトル検出装置および動き補償予測符号化装置に関する。詳しくは、メモリセルが記憶データと参照データ入力部からの参照データとを用いた論理演算を行う演算機能部を備えると共に、このメモリセルの演算データ出力部から出力された演算データを用いた数値演算を行う演算補助セルを有する構成とすることによって、幅の広いデータ・バスを用いて処理回路にデータを伝送することなく、高速かつ効率的に所望の演算処理を行わせることができる半導体メモリ装置等に係るものである。
【０００２】
【従来の技術】
従来の半導体メモリ装置における機能は入力データの記憶であり、データの演算、処理は他の半導体装置によって行われていた。これに対して、記憶機能と演算、処理機能とを１個の半導体装置中に併せ持つことにより、より高速な演算、処理が可能となる可能性がある。
【０００３】
その一つに、メモリと論理回路とを１個の半導体チップ上に併置したＳＯＣ(System On Chip)がある。また、これとはやや異なり、メモリ自身に演算機能を持たせたものに、例えばＣＡＭ（Content Addressable Memory)等の機能メモリがある。
【０００４】
【発明が解決しようとする課題】
前者は、依然として旧来のノイマン・アーキテクチャに基づくものであり、メモリと論理回路とを１チップ化したことで、これらの間のバス幅を拡げることとクロックの高速化とにより、処理の高速化を図るものである。いわゆる、フォンノイマン・ボトルネックを力で抑制するといった側面があり、必ずしも優れた解決あるいは回避の方法であるとはいえない。
【０００５】
これに対して後者では、ＳＩＭＤ(Single Instruction stream Multiple Data stream)形式の並列処理により、全データを同時に処理することで高速化が図られる。全データが揃うまでの待ち時間が生じたり、部分データ毎に異なる処理は行えない等の問題となる場合もある。また、多くの場合、１ビット毎の繰り返し演算の積み重ねによって、データを構成するビット全体の演算すなわちデータ全体の処理が行われる。
【０００６】
これらは必ずしも明確に分離されるものではなく、良いところを組み合わせることで、より適切な処理が行える可能性も考えられる。例えば、ある処理に必要なデータが全体のうちの一部分であれば、全データが揃うのを待つことなく、それらが揃ったところでそれらのデータのみを対象とした部分的な並列処理を実行すればよい。
【０００７】
またここで、メモリあるいはメモリ・セル自身が必要な演算機能を有することにより、幅の広いデータ・バスを用いてメモリから処理回路までデータを伝送させることもなく、その場で、また全ビット同時に、演算を行わせることも考えられる。さらには、記憶データの書き込みおよび読み出しと記憶データに基づいた演算、処理とを独立にすることで、全体としてより柔軟で効率的な処理を行わせることも期待できる。
そこで、この発明では、高速かつ効率的に所望の演算処理を行わせることができる半導体メモリ装置等を提供することを目的とする。
【０００８】
【課題を解決するための手段】
この発明に係る半導体メモリ装置は、演算補助セルおよびマトリックス状に配された複数のメモリセルを有する、１個または２個以上のメモリブロックからなる半導体メモリ装置であって、メモリセルは、"１"または"０"のデータを記憶するメモリセル部と、参照データを入力するための参照データ入力部と、メモリセル部に記憶されている記憶データと参照データ入力部からの参照データとの論理演算を行う演算機能部と、演算機能部で演算されて得られた演算データを出力する演算データ出力部と、セル選択信号を入力するためのセル選択信号入力部と、このセル選択信号入力部に入力されるセル選択信号に基づいて、演算機能部からの演算データを演算データ出力部に出力する出力制御部とを備え、演算補助セルは、メモリセルの演算データ出力部に出力された演算データを入力するための演算データ入力部と、この演算データ入力部に入力された演算データを用いた数値演算を行う演算部と、この演算部で演算されて得られた演算データを出力する演算データ出力部とを備え、マトリックス状に配された複数のメモリセルの領域は、複数の分割領域からなり、上記メモリブロックは、活性化対象の分割領域に属するメモリセルの上記セル選択信号入力部が上記セル選択信号を入力するように、当該メモリセルを制御する切り換え機構を有するものである。
【０００９】
また、この発明に係る半導体メモリ装置は、それぞれメモリセルおよび演算補助セルを有する、１個または２個以上のメモリブロックからなる半導体メモリ装置であって、メモリブロックは、データを転送するための複数のビット線と、この複数のビット線に直交する複数のワード線と、複数のビット線に平行する、参照データを入力するための参照データ入力線と、複数のビット線に平行する、演算データを出力するための演算データ出力線と、複数のワード線に平行する、セル選択信号を入力するためのセル選択線と、ビット線、ワード線、参照データ入力線、演算データ出力線およびセル選択線に接続され、マトリックス状に配された複数のメモリセルと、複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行う複数の演算補助セルとを有し、メモリセルは、ビット線およびワード線に接続され、"１"または"０"のデータを記憶するメモリセル部と参照データ入力線に接続され、参照データを入力するための参照データ入力部と、メモリセル部に記憶されている記憶データと参照データ入力部からの参照データとの論理演算を行う演算機能部と、演算データ出力線に接続され、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部と、セル選択線に接続され、セル選択信号を入力するためのセル選択信号入力部と、セル選択信号入力部に入力されるセル選択信号に基づいて、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部とを備え、マトリックス状に配された複数のメモリセルの領域は、上記ワード線に沿う方向に分割された複数の分割領域からなり、上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有するものである。
【００１０】
また、この発明に係る半導体メモリ装置は、それぞれメモリセルおよび演算補助セルを有する、１個または２個以上のメモリブロックからなる半導体メモリ装置であって、メモリブロックは、データを転送するための複数のビット線と、この複数のビット線に直交する複数のワード線と、複数のビット線に直交する、参照データを入力するための参照データ入力線と、複数のビット線に直交する、演算データを出力するための演算データ出力線と、複数のワード線に直交する、セル選択信号を入力するためのセル選択線と、ビット線、ワード線、参照データ入力線、演算データ出力線およびセル選択線に接続され、マトリックス状に配された複数のメモリセルと、複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行う複数の演算補助セルとを有し、メモリセルは、ビット線およびワード線に接続され、"１"または"０"のデータを記憶するメモリセル部と、参照データ入力線に接続され、参照データを入力するための参照データ入力部と、メモリセル部に記憶されている記憶データと参照データ入力部からの参照データとの論理演算を行う演算機能部と、演算データ出力線に接続され、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部と、セル選択線に接続され、セル選択信号を入力するためのセル選択信号入力部と、セル選択信号入力部に入力されるセル選択信号に基づいて、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部とを備え、マトリックス状に配された複数のメモリセルの領域は、上記ビット線に沿う方向に分割された複数の分割領域からなり、上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有するものである。
【００１１】
また、この発明に係る動きベクトル検出装置は、時間的に前後する参照フレームと探索フレームとから動きベクトルを検出する動きベクトル検出装置であって、参照フレームを構成する複数の画素データを記憶する第１のメモリ部と、探索フレームを構成する複数の画素データを記憶する第２のメモリ部と、第１のメモリ部より参照ブロックの複数の画素データを読み出して第２のメモリ部に参照データとして供給すると共に、第２のメモリ部において、参照ブロックに対応した複数の候補ブロックのそれぞれに対し、この候補ブロックの画素データを読み出し、この候補ブロックと参照ブロックとの画素データ毎の差分を演算するように制御するメモリ制御部と、第２のメモリ部より出力される複数の候補ブロックのそれぞれに対する画素データ毎の差分に基づいて、参照ブロックに対応した動きベクトルを検出する動きベクトル検出部とを備え、第２のメモリ部は、演算補助セルおよびマトリックス状に配された複数のメモリセルを有する、１個または２個以上の半導体メモリブロックで構成され、メモリセルは、"１"または"０"のデータを記憶するメモリセル部と、参照データを入力するための参照データ入力部と、メモリセル部に記憶されている記憶データと参照データ入力部からの参照データとの論理演算を行う演算機能部と、この演算機能部で演算されて得られた演算データを出力する演算データ出力部と、セル選択信号を入力するためのセル選択信号入力部と、このセル選択信号入力部に入力されるセル選択信号に基づいて、演算機能部からの演算データを演算データ出力部に出力する出力制御部とを備え、演算補助セルは、メモリセルの演算データ出力部に出力された演算データを入力するための演算データ入力部と、この演算データ入力部に入力された演算データを用いた数値演算を行って差分を得る演算部とを備え、マトリックス状に配された複数のメモリセルの領域は、複数の分割領域からなり、上記メモリブロックは、活性化対象の分割領域に属するメモリセルの上記セル選択信号入力部が上記セル選択信号を入力するように、当該メモリセルを制御する切り換え機構を有するものである。
【００１２】
また、この発明に係る動きベクトル検出装置は、時間的に前後する参照フレームと探索フレームとから動きベクトルを検出する動きベクトル検出装置であって、参照フレームを構成する複数の画素データを記憶する第１のメモリ部と、探索フレームを構成する複数の画素データを記憶する第２のメモリ部と、第１のメモリ部より参照ブロックの複数の画素データを読み出して第２のメモリ部に参照データとして供給すると共に、第２のメモリ部において、参照ブロックに対応した複数の候補ブロックのそれぞれに対し、この候補ブロックの画素データを読み出し、この候補ブロックと参照ブロックとの画素データ毎の差分を演算するように制御するメモリ制御部と、第２のメモリ部より出力される複数の候補ブロックのそれぞれに対する画素データ毎の差分に基づいて、参照ブロックに対応した動きベクトルを検出する動きベクトル検出部とを備え、第２のメモリ部は、それぞれ１個または２個以上の半導体メモリブロックで構成され、半導体メモリブロックは、データを転送するための複数のビット線と、この複数のビット線に直交する複数のワード線と、複数のビット線に平行する、参照データを入力するための参照データ入力線と、複数のビット線に平行する、演算データを出力するための演算データ出力線と、複数のワード線に平行する、セル選択信号を入力するためのセル選択線と、ビット線、ワード線、参照データ入力線、演算データ出力線およびセル選択線に接続され、マトリックス状に配された複数のメモリセルと、複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行って差分を得る複数の演算補助セルとを有し、メモリセルは、ビット線およびワード線に接続され、"１"または"０"のデータを記憶するメモリセル部と参照データ入力線に接続され、参照データを入力するための参照データ入力部と、メモリセル部に記憶されている記憶データと参照データ入力部からの参照データとの論理演算を行う演算機能部と、演算データ出力線に接続され、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部と、セル選択線に接続され、セル選択信号を入力するためのセル選択信号入力部と、セル選択信号入力部に入力されるセル選択信号に基づいて、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部とを備え、マトリックス状に配された複数のメモリセルの領域は、上記ワード線に沿う方向に分割された複数の分割領域からなり、上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有するものである。
【００１３】
また、この発明に係る動きベクトル検出装置は、時間的に前後する参照フレームと探索フレームとから動きベクトルを検出する動きベクトル検出装置であって、参照フレームを構成する複数の画素データを記憶する第１のメモリ部と、探索フレームを構成する複数の画素データを記憶する第２のメモリ部と、第１のメモリ部より参照ブロックの複数の画素データを読み出して第２のメモリ部に参照データとして供給すると共に、第２のメモリ部において、参照ブロックに対応した複数の候補ブロックのそれぞれに対し、この候補ブロックの画素データを読み出し、この候補ブロックと参照ブロックとの画素データ毎の差分を演算するように制御するメモリ制御部と、第２のメモリ部より出力される複数の候補ブロックのそれぞれに対する画素データ毎の差分に基づいて、参照ブロックに対応した動きベクトルを検出する動きベクトル検出部とを備え、第２のメモリ部は、それぞれ１個または２個以上の半導体メモリブロックで構成され、半導体メモリブロックは、データを転送するための複数のビット線と、この複数のビット線に直交する複数のワード線と、複数のビット線に直交する、参照データを入力するための参照データ入力線と、複数のビット線に直交する、演算データを出力するための演算データ出力線と、複数のワード線に直交する、セル選択信号を入力するためのセル選択線と、ビット線、ワード線、参照データ入力線、演算データ出力線およびセル選択線に接続され、マトリックス状に配された複数のメモリセルと、複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算を行って差分を得る複数の演算補助セルとを有し、メモリセルは、ビット線およびワード線に接続され、"１"または"０"のデータを記憶するメモリセル部と参照データ入力線に接続され、参照データを入力するための参照データ入力部と、メモリセル部に記憶されている記憶データと参照データ入力部からの参照データとの論理演算を行う演算機能部と、演算データ出力線に接続され、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部と、セル選択線に接続され、セル選択信号を入力するためのセル選択信号入力部と、このセル選択信号入力部に入力されるセル選択信号に基づいて、演算機能部で演算されて得られた演算データを演算データ出力線に出力するための演算データ出力部とを備え、マトリックス状に配された複数のメモリセルの領域は、上記ビット線に沿う方向に分割された複数の分割領域からなり、上記複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、上記メモリブロックは、各分割領域で同時に活性化される上記分割セル選択線を切り換えるための切り換え機構を有するものである。
【００１４】
また、この発明に係る動き補償予測符号化装置は、上述した動きベクトル検出装置で検出された動きベクトルを用いて動き補償を行うものである。
【００１５】
この発明において、半導体メモリ装置は、それぞれメモリセルおよび演算補助セルを有する、１個または２個以上のメモリブロックからなっている。メモリセルの演算機能部では、メモリセル部に記憶されている“１”または“０”の記憶データと参照データ入力部からの参照データとを用いた論理演算が行われ、セル選択信号入力部にセル選択信号が入力されることで、この演算機能部で演算されて得られた演算データが演算データ出力部に出力される。また、演算補助セルでは、メモリセルの演算データ出力部に出力された演算データを用いた数値演算が行われ、その演算データが演算データ出力部に出力される。
【００１６】
例えば、メモリセルの演算機能部では複数の論理演算が並行して行われると共に、演算補助セルの演算部では複数の論理演算によって得られた複数の演算データを用いた数値演算が行われる。
【００１７】
また例えば、演算補助セルは、第１の演算補助セル部と第２の演算補助セル部とから構成され、第１の補助セル部では、メモリセルの演算機能部で演算されて得られた演算データを用いた第１の数値演算が行われると共に、第２の演算補助セル部では、複数の第１の補助セル部で演算されて得られた演算データを用いた第２の数値演算が行われる。この場合、第１の数値演算が減算であり、第２の数値演算が絶対値演算であるとき、演算補助セルより出力される演算データとして差分絶対値が得られる。
【００１８】
このように、メモリブロックを構成するメモリセルに論理演算を行う演算機能部が含まれ、さらにこのメモリブロックに演算データを用いて数値演算を行うための演算補助セルを有するものであり、幅の広いデータ・バスを用いて処理回路にデータを伝送することなく、メモリブロック内で、高速かつ効率的に所望の演算処理を行わせることができる。
【００１９】
例えば、メモリブロックは、データを転送するための複数のビット線と、この複数のビット線に直交する複数のワード線と、複数のビット線に平行または直交する、参照データを入力するための参照データ入力線および演算データを出力するための演算データ出力線と、複数のワード線に平行または直交する、セル選択信号を入力するためのセル選択線とが配されており、これらビット線、ワード線、参照データ入力線、演算データ出力線およびセル選択線に、マトリックス状に配された複数のメモリセルのそれぞれが接続されている。そして、複数の演算補助セルで、複数の演算データ出力線で出力される演算データの少なくとも一部を用いて数値演算が行われる。
【００２０】
この場合、記憶データの書き込み、読み出しは、複数のビット線、複数のワード線を用いて行われる。一方、演算データの出力は、複数の参照データ入力線、複数の演算データ出力線および複数のセル選択線を用いて行われる。これにより、記憶データの書き込み、読み出しと、演算データの出力とを独立して行うことができ、全体としてより柔軟で効率的な処理が可能となる。
【００２１】
例えば、マトリックス状に配された複数のメモリセルの領域は、セル選択線に沿う方向に分割された複数の分割領域からなり、複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなっている。そして、メモリブロックは、各分割領域で同時に活性化される分割セル選択線を切り換えるための切り換え機構を有している。これにより、マトリックス状に配された複数のメモリセルのセル選択線に沿う方向に、分割セル選択線単位で階段状に並ぶ複数のメモリセルの演算データを演算データ出力線に出力して、演算補助セルで処理することが可能となる。
【００２２】
この場合、画像データを構成する画素データをマトリックス状に配された複数のメモリセルに適切に配置しておくことで、矩形または十字形等の任意の形状の画素ブロックを構成する複数の画素データに対応した演算データを同時に複数の演算データ出力線に出力でき、これらを用いた数値演算を複数の演算補助セルで一括、同時に行うことができ、データ処理効率の大幅な向上が図られる。また、当該画素ブロックの位置を容易に変更可能となる。
【００２３】
例えば、１つの分割セル選択線に対応する複数のメモリセルに、画像データを構成する垂直方向または水平方向の整数列分の画素データが記憶されることにより、上述の画素ブロックを水平方向または垂直方向に整数画素単位で移動させることができ、一方それと直交する方向に１画素単位で移動させることができる。
【００２４】
上述した１個または２個以上のメモリブロックの他に、メモリブロックより出力される演算データに基づく処理を行う回路ブロックを有する半導体メモリ装置においては、さらに処理の高速化、効率化を図ることが可能となる。
【００２５】
なお、上述した半導体メモリ装置を、動きベクトル検出装置、あるいは動き補償予測符号化装置の動きベクトル検出回路のメモリ部に用いることで、動きベクトル検出のための処理の高速化、効率化が図られる。
【００２６】
【発明の実施の形態】
以下、図面を参照しながら、この発明の実施の形態について説明する。
図１は、実施の形態としての動き補償予測符号化装置１００の構成を示している。
この符号化装置１００は、画像データ（動画像を構成するフレームデータ）Ｄｉを入力する入力端子１０１と、この入力端子１０１に供給される画像データＤｉと後述する動き補償回路１１０から供給される予測画像データとの差分を演算する減算器１０２と、この減算器１０２で得られる差分データに対してＤＣＴ（離散コサイン変換）を行うＤＣＴ回路１０３と、このＤＣＴ回路１０３で得られるＤＣＴ係数に対して量子化を行う量子化回路１０４と、この量子化回路１０４で得られた符号化データＤｏを出力する出力端子１０５とを有している。
【００２７】
また、符号化装置１００は、量子化回路１０４で得られた符号化データＤｏに対して逆量子化を行う逆量子化回路１０６と、この逆量子化回路１０６の出力データに対して逆ＤＣＴを行って差分データを得る逆ＤＣＴ回路１０７と、この逆ＤＣＴ回路１０７で得られる差分データと動き補償回路１１０で得られる予測画像データとを加算して元の画像データを復元する加算器１０８と、この加算器１０８で復元された画像データを記憶するフレームメモリ１０９とを有している。
【００２８】
また、符号化装置１００は、フレームメモリ１０９に記憶された画像データを読み込み、後述する動きベクトル検出回路１１１からの動きベクトルＭＶに基づいて動き補償をした後、上述したように減算器１０２および加算器１０８に予測画像データとして供給する動き補償回路１１０と、入力端子１０１に供給される画像データＤｉの動きベクトルＭＶを検出して動き補償回路１１０に供給する動きベクトル検出回路１１１とを有している。
【００２９】
図１に示す動き補償予測符号化装置１００の動作を説明する。
入力端子１０１に入力される画像データＤｉは、減算器１０２および動きベクトル検出回路１１１に供給される。減算器１０２では、この画像データＤｉと動き補償回路１１０から供給される予測画像データとの差分が演算される。
【００３０】
減算器１０２で得られる差分データはＤＣＴ回路１０３に供給されて離散コサイン変換される。このＤＣＴ回路１０３で得られるＤＣＴ係数は量子化回路１０４に供給されて量子化される。そして、この量子化回路１０４で得られた符号化データＤｏが出力端子１０５に出力される。
【００３１】
また、量子化回路１０４で得られる符号化データＤｏが逆量子化回路１０６に供給されて逆量子化され、さらにこの逆量子化回路１０６の出力データが逆ＤＣＴ回路１０７に供給されて逆ＤＣＴされ、差分データが復元される。この差分データと動き補償回路１１０からの予測データとが加算器１０８で加算されて元の画像データが復元され、この復元された画像データがフレームメモリ１０９に記憶される。
【００３２】
動き補償回路１１０では、あるフレームにおいては、その前のフレームにフレームメモリ１０９に記憶された画像データの読み込みが行われて、動きベクトル検出回路１１１からの動きベクトルＭＶに基づいて動き補償されて、予測画像データが得られる。この予測画像データは、上述したように、差分データを得るために減算器１０２に供給されると共に、画像データを復元するために加算器１０８に供給される。
【００３３】
次に、動きベクトル検出回路１１１の詳細を説明する。
この動きベクトル検出回路１１１では、ブロックマッチング法により動きベクトルが検出される。これは、図２に示すように、探索フレームの候補ブロックを所定の探索範囲内で移動し、参照フレームの参照ブロックと最も合致している候補ブロックを検出することにより、動きベクトルを求めるものである。
【００３４】
ブロックマッチング法では、図３Ａに示すように、１枚の画像、例えば水平Ｈ画素、垂直Ｖラインの１フレームの画像が図４Ｂに示すように、Ｐ画素×Ｑラインのブロックに細分化される。図３Ｂの例では、Ｐ＝５、Ｑ＝５の例である。ｃがブロックの中心画素位置である。
【００３５】
図４Ａ〜Ｃは、ｃを中心画素とする参照ブロックとｃ´を中心とする候補ブロックの位置関係を示している。ｃを中心画素とする参照ブロックは、参照フレームの注目しているある参照ブロックであり、それと一致する探索フレームの候補ブロックが探索フレームにおいてｃ´を中心とするブロックの位置にあるものとしている。ブロックマッチング法では、探索範囲内において、参照ブロックと最も合致する候補ブロックを見出すことによって、動きベクトルを検出する。
【００３６】
図４Ａの場合では、水平方向に＋１画素、垂直方向に＋１ライン、すなわち、（＋１，＋１）の動きベクトルが検出される。図４Ｂでは、（＋３，＋３）の動きベクトルＭＶが検出され、図４Ｃでは、（＋２，−１）の動きベクトルが検出される。動きベクトルは、参照フレームの参照ブロック毎に求められる。
【００３７】
動きベクトルを探索する範囲を水平方向で±Ｓ画素、垂直方向で±Ｔラインとすると、参照ブロックは、その中心ｃに対して、水平に±Ｓ、垂直に±Ｔずれたところに中心ｃ´を有する候補ブロックと比較される必要がある。
【００３８】
図５は、参照フレームのある参照ブロックの中心ｃの位置をＲとする時に、比較すべき探索フレームの（２Ｓ＋１）×（２Ｔ＋１）個の候補ブロックとの比較が必要なことを示している。すなわち、この図５のます目の位置にｃ´が存在する候補ブロックの全てが比較対象である。図５は、Ｓ＝４，Ｔ＝３とした例である。
【００３９】
探索範囲内の比較で得られた評価値（すなわち、フレーム差の絶対値和、このフレーム差の二乗和、あるいはフレーム差の絶対値のｎ乗和等）の中で、最小値を検出することによって、動きベクトルが検出される。図５の探索範囲は、候補ブロックの中心が位置する領域であり、候補ブロックの全体が含まれる探索範囲の大きさは、（２Ｓ＋Ｐ）×（２Ｔ＋Ｑ）となる。
【００４０】
図６は、動きベクトル検出回路１１１の構成を示している。
この動きベクトル検出回路１１１は、回路全体の動作を制御するコントローラ１２１と、画像データＤｉが入力される入力端子１２２と、参照フレームの画像データを蓄積するフレームメモリ１２３と、探索フレームの画像データを蓄積するフレームメモリ１２４とを有している。これらフレームメモリ１２３，１２４の書き込み、読み出し等の動作は、コントローラ１２１によって制御される。
【００４１】
入力端子１２２からあるフレームの画像データがフレームメモリ１２３に供給されて書き込まれる際に、このフレームメモリ１２３に記憶されていた１フレーム前の画像データが読み出されてフレームメモリ１２４に供給されて書き込まれる。
【００４２】
コントローラ１２１の制御に基づき、フレームメモリ１２４には、フレームメモリ１２３から参照ブロックの画素データが供給され、そしてこのフレームメモリ１２４は、この参照ブロックに対応した探索範囲の複数の候補ブロックのそれぞれに対し、この候補ブロックの画素データと参照ブロックの画素データとの差分絶対値を、対応する画素データ毎に演算して出力する。
【００４３】
また、動きベクトル検出回路１１１は、フレームメモリ１２４より出力される、複数の候補ブロックのそれぞれに対応する画素データ毎の差分絶対値を累積する累積器１２６と、この累積器１２６で得られる複数の候補ブロックのそれぞれに対する累積値を相関値として格納する相関値テーブル１２７とを有している。
【００４４】
また、動きベクトル検出回路１１１は、相関値テーブル１２７に格納された複数の候補ブロックのそれぞれに対する相関値に基づいて動きベクトルＭＶを検出する判断回路１２８と、この判断回路１２８で検出された動きベクトルＭＶを出力する出力端子１２９とを有している。判断回路１２８では、最小の相関値を発生する候補ブロックの位置を、動きベクトルＭＶとして検出する。
【００４５】
図６に示す動きベクトル検出回路１１１の動作を説明する。
入力端子１２２に入力される画像データＤｉはフレームメモリ１２３に供給され、参照フレームの画像データとして蓄積される。またこの際、フレームメモリ１２３に記憶されていた１フレーム前の画像データは、読み出されてフレームメモリ１２４に供給され、探索フレームの画像データとして蓄積される。
【００４６】
フレームメモリ１２３からフレームメモリ１２４には、参照ブロックの画像データが供給される。フレームメモリ１２４では、この参照ブロックに対応した探索範囲の複数の候補ブロックのそれぞれに対し、この候補ブロックの画素データと参照ブロックの画素データとの差分絶対値が、対応する画素データ毎に演算されて出力される。この場合、参照ブロックおよび候補ブロックがＰ画素×Ｑラインで構成されている場合には（図３Ｂ参照）、複数の候補ブロックのそれぞれに対し、Ｐ×Ｑ個の差分絶対値が得られる。
【００４７】
このように、フレームメモリ１２４より出力される、複数の候補ブロックのそれぞれに対応する画素データ毎の差分絶対値は累積器１２６に順次供給されて累積される。この累積器１２６からの複数の候補ブロックのそれぞれに対する累積値は、相関値テーブル１２７に供給され、相関値として格納される。そして、判断回路１２８では、このように相関値テーブル１２７に格納された複数の候補ブロックのそれぞれに対する相関値に基づき、最小の相関値を発生する候補ブロックの位置が動きベクトルＭＶとして検出される。
【００４８】
フレームメモリ１２３からフレームメモリ１２４には、参照フレーム内の複数の参照ブロックの画像データが順次供給される。したがって、各参照ブロックに対応して、フレームメモリ１２４、累積器１２６、相関値テーブル１２７および判断回路１２８では上述した動作が繰り返され、従って判断回路１２８では、各参照ブロックに対応した動きベクトルＭＶが順次検出される。このように、判断回路１２８で検出された動きベクトルＭＶは出力端子１２９に出力される。
【００４９】
次に、フレームメモリ１２４の詳細を説明する。
図７に示すように、本実施の形態において、フレームメモリ１２４は、４個のメモリブロック１２５ａ〜１２５ｄから構成されているが、フレームメモリ１２４を構成するメモリブロックの個数は４個に限定されるものではない。メモリブロック１２５ａ〜１２５ｄには、それぞれ、データ入力部、データ出力部、参照データ入力部、演算データ出力部が備えられている。これら、メモリブロック１２５ａ，１２５ｂ，１２５ｃ，１２５ｄには、それぞれ、探索フレームの左上、右上、左下、右下の各部分の画素データが記憶される。
【００５０】
所定の候補ブロックの中心画素の範囲が、探索フレームの左上、右上、左下、右下の各部分にある場合には、それぞれメモリブロック１２５ａ，１２５ｂ，１２５ｃ，１２５ｄのみを活性化させればよく、消費電力を少なく抑えることができる。
【００５１】
この場合、メモリブロック１２５ａ〜１２５ｄのそれぞれには、探索フレームの左上、右上、左下、右下の各部分の境界付近の画素データが重複して記憶される。このように、メモリブロック１２５ａ〜１２５ｄに画素データを重複して記憶しておくのは、中心画素が境界付近となる候補ブロックの画素データには、その境界を越えた位置の画素データも必要となるからである。
【００５２】
図８は、メモリブロック１２５ａ，１２５ｂ，１２５ｃ，１２５ｄにそれぞれ記憶される探索フレームの左上、右上、左下、右下の各部分Ｆａ，Ｆｂ，Ｆｃ，Ｆｄを示している。メモリブロック１２５ａ，１２５ｂには水平方向に重複した画素データｈa，ｈbが記憶され、メモリブロック１２５ｃ，１２５ｄには水平方向に重複した画素データｈc，ｈdが記憶され、メモリブロック１２５ａ，１２５ｃには垂直方向に重複した画素データｖa，ｖbが記憶され、メモリブロック１２５ｂ，１２５ｄには垂直方向に重複した画素データｖb，ｖdが記憶される。この画素データの水平方向および垂直方向の重複画素数は、候補ブロックの水平方向および垂直方向の大きさが大きい程大きくなる。
【００５３】
図９は、メモリブロック１２５（１２５ａ〜１２５ｄ）の構成例を示している。
メモリブロック１２５は、複数のメモリセルがマトリックス状に配されたメモリ・セル・アレイ１３１と、記憶データ入出力用ポート（カラム・アドレス・デコーダなどを含む）１３２と、記憶データ用ロウ・アドレス・デコーダ１３３と、参照データ入力用ポート＆演算補助セル（カラム・アドレス・デコーダなどを含む）１３４と、参照データ用ロウ・アドレス・デコーダ１３５とを有している。
【００５４】
メモリ・セル・アレイ１３１は、ロウ方向に延びるデータを転送するための複数のビット線ＢＬ，/ＢＬ（/ＢＬはＢＬバーを表している）と、カラム方向に延びる、複数のビット線ＢＬ，/ＢＬに直交する複数のワード線ＷＬと、複数のビット線ＢＬ，/ＢＬに平行する、参照データを入力するための参照データ入力線ＲＤＬ，/ＲＤＬ（/ＲＤＬはＲＤＬバーを表している）と、複数のビット線ＢＬ，/ＢＬに平行する、演算データを出力するための演算データ出力線ＤＡＬ，ＤＢＬと、ワード線ＷＬに平行する、セル選択信号を入力するためのセル選択線ＷＬＦと、これらビット線ＢＬ，/ＢＬ、ワード線ＷＬ、参照データ入力線ＲＤＬ，/ＲＤＬ、演算データ出力線ＤＡＬ，ＤＢＬおよびセル選択線ＷＬＦに接続され、マトリックス状に配された複数のメモリセル１４０とからなっている。
【００５５】
図１０は、図９に示したメモリブロック１２５のメモリ・セル・アレイ１３１以外の部分の構成を詳細に示したものである。
記憶データ用カラム・アドレス・デコーダ１３２ａ、アドレスバッファ１３２ｂおよびＩ／Ｏバッファ１３２ｃは、図９における記憶データ入出力用ポート１３２を構成している。カラム・アドレス・デコーダ１３２ａには、Ｉ／Ｏゲート（カラム・スイッチ）やセンスアンプ等が含まれている。カラム・アドレス・デコーダ１３２ａには、アドレス・バッファ１３２ｂを介してカラム・アドレスが入力される。
【００５６】
カラム・アドレス・デコーダ１３２ａは、アドレス・バッファ１３２ｂを介して供給されるカラム・アドレスに対応して、メモリ・セル・アレイ１３１のカラム方向の所定の複数のメモリセル１４０に接続される複数のビット線ＢＬ，/ＢＬとの接続を確保し、Ｉ／Ｏバッファ１３２ｃおよびカラム・アドレス・デコーダ１３２ａを通じて、当該カラム方向の所定のメモリセルに対する、記憶データの書き込み、読み出しが可能となるようにする。
【００５７】
また、記憶データ用ロウ・アドレス・デコーダ１３３には、アドレス・バッファ１３３ａを介してロウ・アドレスが入力される。ロウ・アドレス・デコーダ１３３は、アドレス・バッファ１３３ａを介して供給されるロウ・アドレスに対応して、メモリ・セル・アレイ１３１のロウ方向の所定のメモリセル１４０に接続されるワード線ＷＬを活性化し、Ｉ／Ｏバッファ１３２ｃおよびカラム・アドレス・デコーダ１３２ａを通じて、当該ロウ方向の所定のメモリセル１４０に対する、記憶データの書き込み、読み出しが可能となるようにする。
【００５８】
また、参照データ用カラム・アドレス・デコーダ１３４ａ、アドレス・バッファ１３４ｂ、Ｉ／Ｏバッファ１３４ｃおよび演算補助セル１３４ｄは、図９における参照データ入力用ポート＆演算補助セル１３４を構成している。カラム・アドレス・デコーダ１３４ａには、Ｉ／Ｏゲート（カラム・スイッチ）やセンスアンプ等が含まれている。カラム・アドレス・デコーダ１３４ａには、アドレス・バッファ１３４ｂを介してカラム・アドレスが入力される。
【００５９】
カラム・アドレス・デコーダ１３４ａは、アドレス・バッファ１３４ｂを介して供給されるカラム・アドレスに対応して、メモリ・セル・アレイ１３１のカラム方向の所定の複数のメモリセル１４０に接続される、複数の演算データ出力線ＤＡＬ，ＤＢＬおよび複数の参照データ入力線ＲＤＬ，/ＲＤＬとの接続を確保する。これにより、Ｉ／Ｏバッファ１３４ｃおよびカラム・アドレス・デコーダ１３４ａを介して、当該カラム方向の所定の複数のメモリセル１４０に参照データを入力し、また当該カラム方向の所定の複数のメモリセル１４０からの演算データを演算補助セル１３４ｄに供給することが可能となる。
【００６０】
また、参照データ用ロウ・アドレス・デコーダ１３５には、アドレス・バッファ１３５ａを介してロウ・アドレスが入力される。ロウ・アドレス・デコーダ１３５は、アドレス・バッファ１３５ａを介して供給されるロウ・アドレスに対応して、メモリ・セル・アレイ１３１のロウ方向の所定のメモリセル１４０に接続されるセル選択線ＷＬＦにセル選択信号を供給して活性化する。これにより、Ｉ／Ｏバッファ１３４ｃおよびカラム・アドレス・デコーダ１３４ａを通じて、当該ロウ方向の所定のメモリセル１４０に参照データを入力し、さらにはカラム・アドレス・デコーダ１３４ａおよびＩ／Ｏバッファ１３４ｃを通じて当該ロウ方向の所定のメモリセル１４０からの演算データを演算補助セル１３４ｄに供給することが可能となる。
【００６１】
また、制御回路１３６は、メモリブロック１２５の上述した各回路の動作を、制御入力に基づいて制御する。なお、後述するが、メモリ・セル・アレイ１３１にマトリックス状に配された複数のメモリセル１４０の領域はセル選択線ＷＬＦに沿う方向に分割された複数の分割領域からなり、複数のセル選択線ＷＬＦは、それぞれ複数の分割領域に対応して分割された複数の分割セル選択線からなっており、メモリ・セル・アレイ１３１には、各分割領域で同時に活性化される分割セル線を切り換えるための切り換え機構が配されている。この切り換え機構の制御も、制御回路１３６によって行われる。
【００６２】
図１１は、メモリブロック１２５（１２５ａ〜１２５ｄ）の他の構成例を示している。この図１１において、図９と対応する部分には同一符号を付して示している。この図１１に示すメモリブロック１２５の構成では、図９に示すメモリブロック１２５の構成に対して、参照データ入力線ＲＤＬ，/ＲＤＬ、演算データ出力線ＤＡＬ，ＤＢＬ、セル選択線ＷＬＦの方向が異なっている。
【００６３】
メモリブロック１２５は、複数のメモリセルがマトリックス状に配されたメモリ・セル・アレイ１３１と、記憶データ入出力用ポート（カラム・アドレス・デコーダなどを含む）１３２と、記憶データ用ロウ・アドレス・デコーダ１３３と、参照データ入力用ポート＆演算補助セル（カラム・アドレス・デコーダなどを含む）１３４と、参照データ用ロウ・アドレス・デコーダ１３５とを有している。
【００６４】
メモリ・セル・アレイ１３１は、ロウ方向に延びるデータを転送するための複数のビット線ＢＬ，/ＢＬと、カラム方向に延びる、複数のビット線ＢＬ，/ＢＬに直交する複数のワード線ＷＬと、複数のビット線ＢＬ，/ＢＬに直交する、参照データを入力するための参照データ入力線ＲＤＬ，/ＲＤＬと、複数のビット線ＢＬ，/ＢＬに直交する、演算データを出力するためのＤＡＬ，ＤＢＬと、ワード線ＷＬに直交する、セル選択信号を入力するためのセル選択線ＷＬＦと、これらビット線ＢＬ，/ＢＬ、ワード線ＷＬ、参照データ入力線ＲＤＬ，/ＲＤＬ、演算データ出力線ＤＡＬ，ＤＢＬおよびセル選択線ＷＬＦに接続され、マトリックス状に配された複数のメモリセル１４０とからなっている。
【００６５】
図１２は、図１１に示したメモリブロック１２５のメモリ・セル・アレイ１３１以外の部分の構成を詳細に示したものである。この図１２において、図１０と対応する部分には同一符号を付して示している。
【００６６】
記憶データ用カラム・アドレス・デコーダ１３２ａ、アドレスバッファ１３２ｂおよびＩ／Ｏバッファ１３２ｃは、図１１における記憶データ入出力用ポート１３２を構成している。カラム・アドレス・デコーダ１３２ａには、Ｉ／Ｏゲート（カラム・スイッチ）やセンスアンプ等が含まれている。カラム・アドレス・デコーダ１３２ａには、アドレス・バッファ１３２ｂを介してカラム・アドレスが入力される。
【００６７】
カラム・アドレス・デコーダ１３２ａは、アドレス・バッファ１３２ｂを介して供給されるカラム・アドレスに対応して、メモリ・セル・アレイ１３１のカラム方向の所定の複数のメモリセル１４０に接続される複数のビット線ＢＬ，/ＢＬとの接続を確保し、Ｉ／Ｏバッファ１３２ｃおよびカラム・アドレス・デコーダ１３２ａを通じて、当該カラム方向の所定のメモリセルに対する、記憶データの書き込み、読み出しが可能となるようにする。
【００６８】
また、記憶データ用ロウ・アドレス・デコーダ１３３には、アドレス・バッファ１３３ａを介してロウ・アドレスが入力される。ロウ・アドレス・デコーダ１３３は、アドレス・バッファ１３３ａを介して供給されるロウ・アドレスに対応して、メモリ・セル・アレイ１３１のロウ方向の所定のメモリセル１４０に接続されるワード線ＷＬを活性化し、Ｉ／Ｏバッファ１３２ｃおよびカラム・アドレス・デコーダ１３２ａを通じて、当該ロウ方向の所定のメモリセル１４０に対する、記憶データの書き込み、読み出しが可能となるようにする。
【００６９】
また、参照データ用カラム・アドレス・デコーダ１３４ａ、アドレス・バッファ１３４ｂ、Ｉ／Ｏバッファ１３４ｃおよび演算補助セル１３４ｄは、図１１における参照データ入力用ポート＆演算補助セル１３４を構成している。カラム・アドレス・デコーダ１３４ａには、Ｉ／Ｏゲート（カラム・スイッチ）やセンスアンプ等が含まれている。カラム・アドレス・デコーダ１３４ａには、アドレス・バッファ１３４ｂを介してカラム・アドレスが入力される。
【００７０】
カラム・アドレス・デコーダ１３４ａは、アドレス・バッファ１３４ｂを介して供給されるカラム・アドレスに対応して、メモリ・セル・アレイ１３１のロウ方向の所定の複数のメモリセル１４０に接続される、複数の演算データ出力線ＤＡＬ，ＤＢＬおよび複数の参照データ入力線ＲＤＬ，/ＲＤＬとの接続を確保する。これにより、Ｉ／Ｏバッファ１３４ｃおよびカラム・アドレス・デコーダ１３４ａを介して、当該ロウ方向の所定の複数のメモリセル１４０に参照データを入力し、また当該ロウ方向の所定の複数のメモリセル１４０からの演算データを演算補助セル１３４ｄに供給することが可能となる。
【００７１】
また、参照データ用ロウ・アドレス・デコーダ１３５には、アドレス・バッファ１３５ａを介してロウ・アドレスが入力される。ロウ・アドレス・デコーダ１３５は、アドレス・バッファ１３５ａを介して供給されるロウ・アドレスに対応して、メモリ・セル・アレイ１３１のカラム方向の所定のメモリセル１４０に接続されるセル選択線ＷＬＦにセル選択信号を供給して活性化する。これにより、Ｉ／Ｏバッファ１３４ｃおよびカラム・アドレス・デコーダ１３４ａを通じて、当該カラム方向の所定のメモリセル１４０に参照データを入力し、さらにはカラム・アドレス・デコーダ１３４ａおよびＩ／Ｏバッファ１３４ｃを通じて当該カラム方向の所定のメモリセル１４０からの演算データを演算補助セル１３４ｄに供給することが可能となる。
【００７２】
また、制御回路１３６は、メモリブロック１２５の上述した各回路の動作を、制御入力に基づいて制御する。なお、後述するが、メモリ・セル・アレイ１３１にマトリックス状に配された複数のメモリセル１４０の領域はセル選択線ＷＬＦに沿う方向に分割された複数の分割領域からなり、複数のセル選択線ＷＬＦは、それぞれ複数の分割領域に対応して分割された複数の分割セル選択線からなっており、メモリ・セル・アレイ１３１には、各分割領域で同時に活性化される分割セル線を切り換えるための切り換え機構が配されている。この切り換え機構の制御も、制御回路１３６によって行われる。
【００７３】
次に、メモリセル１４０について説明する。
まず、従来周知のＳＲＡＭ(Static Random Access Memory)セルおよびＤＲＡＭ(Dynamic Random Access Momory)セルを説明する。
図１３は、ＳＲＡＭセルの一例の構成を示している。負荷素子であるＰ型ＭＯＳトランジスタＱ１とＮ型ＭＯＳトランジスタＱ３とが電源と接地との間に直列に接続されてＣＭＯＳインバータ１１が形成されていると共に、負荷素子であるＰ型ＭＯＳトランジスタＱ２とＮ型ＭＯＳトランジスタＱ４とが電源と接地との間に直列に接続されてＣＭＯＳインバータ１２が形成されている。そして、これらＣＭＯＳインバータ１１，１２の各出力、すなわち記憶ノードＮ１，Ｎ２の各電位が互いに他のＣＭＯＳインバータ１２，１１の入力、すなわちＮ型ＭＯＳトランジスタＱ４，Ｑ３の各ゲート入力となっている。
【００７４】
ＣＭＯＳインバータ１１の記憶ノードＮ１は、ワード線ＷＬにゲートが接続されたアクセストランジスタＱ５を介してビット線ＢＬに接続されている。一方、ＣＭＯＳインバータ１２の記憶ノードＮ２は、ワード線ＷＬにゲートが接続されたアクセストランジスタＱ６を介してビット線/ＢＬに接続されている。
【００７５】
このような構成のＳＲＡＭセルにおいて、一対のＣＭＯＳインバータ１１，１２で構成されるメモリセル部１３に“１”または“０”のデータが記憶される。そして、このメモリセル部１３とビット線ＢＬ，/ＢＬとの間で、アクセストランジスタＱ５，Ｑ６を介して、読み出しおよび書き込みのデータ転送が行われる。
【００７６】
図１４は、ＤＲＡＭセルの一例の構成を示している。キャパシタＣ１，Ｃ２が直列に接続され、互いの中点ＰにはＶcc／２（Ｖccは電源電圧）が与えられている。キャパシタＣ１の中点Ｐとは反対側が記憶ノードＮ１とされ、この記憶ノードＮ１はワード線ＷＬにゲートが接続されたアクセストランジスタＱ７を介してビット線ＢＬに接続されている。また、キャパシタＣ２の中点Ｐとは反対側が記憶ノードＮ２とされ、この記憶ノードＮ２はワード線ＷＬにゲートが接続されたアクセストランジスタＱ８を介してビット線/ＢＬに接続されている。
【００７７】
このような構成のＤＲＡＭセルにおいて、一対のキャパシタＣ１，Ｃ２で構成されるメモリセル部１４に“１”または“０”のデータが記憶される。そして、このメモリセル部１４とビット線ＢＬ，/ＢＬとの間で、アクセストランジスタＱ７，Ｑ８を介して、読み出しおよび書き込みのデータ転送が行われる。
【００７８】
図１５は、本実施の形態におけるメモリセル１４０の構成を示している。
メモリセル部１４１の記憶ノードＮ１はワード線ＷＬにゲートが接続されたアクセストランジスタＱ１１を介してビット線ＢＬに接続されている。一方、メモリセル部１４１の記憶ノードＮ２はワード線ＷＬにゲートが接続されたアクセストランジスタＱ１２を介してビット線/ＢＬに接続されている。
【００７９】
ここで、メモリセル部１４１は、メモリセル１４０がＳＲＡＭセルをベースとするものでは例えば図１３に示すＳＲＡＭセルのメモリセル部１３と同様に構成され、メモリセル１４０がＤＲＡＭセルをベースとするものであるときは例えば図１４に示すＤＲＡＭセルのメモリセル部１４と同様に構成される。
【００８０】
この場合、メモリセル部１４１に“１”または“０”のデータが記憶される。そして、このメモリセル部１４１とビット線ＢＬ，/ＢＬとの間で、アクセストランジスタＱ１１，Ｑ１２を介して、読み出しおよび書き込みのデータ転送が行われる。すなわち、メモリセル部１４１からの記憶データの読み出し、このメモリセル部１４１への記憶データの書き込みについては、図１３、図１４に示すメモリセルと同様に行われる。
【００８１】
また、メモリセル部１４１の記憶ノードＮ１，Ｎ２にそれぞれゲートが接続されたＮ型ＭＯＳトランジスタＱ１３，Ｑ１４の互いのドレインが接続され、ＭＯＳトランジスタＱ１３のソースは参照データＲＤが入力される入力端子１４２ａに接続され、ＭＯＳトランジスタＱ１４のソースは接地されている。また、メモリセル部１４１の記憶ノードＮ１，Ｎ２にそれぞれゲートが接続されたＮ型ＭＯＳトランジスタＱ１５，Ｑ１６の互いのドレインが接続され、ＭＯＳトランジスタＱ１５のソースは入力端子１４２ａに接続され、ＭＯＳトランジスタＱ１６のソースは参照データ/ＲＤ（/ＲＤはＲＤバーを表しており、ＲＤが反転されたものである）が入力される入力端子１４２ｂに接続されている。
【００８２】
入力端子１４２ａは上述した参照データ入力線ＲＤＬに接続され、この参照データ入力線ＲＤＬを通じて参照データＲＤが入力される。一方、入力端子１４２ｂは上述した参照データ入力線/ＲＤＬに接続され、この参照データ入力線/ＲＤＬを通じて参照データ/ＲＤが入力される。
【００８３】
ここで、ＭＯＳトランジスタＱ１３〜Ｑ１８により、メモリセル部１４１に記憶されている記憶データと参照データＲＤとの排他的論理和の反転（ＥｘＮＯＲ）および論理積（ＡＮＤ）を得る演算機能部が構成されている。そして、ＭＯＳトランジスタＱ１５，Ｑ１６の接続点ＰａにはＥｘＮＯＲ出力が得られ、ＭＯＳトランジスタＱ１３，Ｑ１４の接続点ＰｂにはＡＮＤ出力が得られる。
【００８４】
また、Ｎ型ＭＯＳトランジスタＱ１７のドレインはＭＯＳトランジスタＱ１５，Ｑ１６の接続点Ｐａに接続され、このＭＯＳトランジスタＱ１７のソースは演算データＤＡを出力するための出力端子１４３に接続される。また、Ｎ型ＭＯＳトランジスタＱ１８のドレインはＭＯＳトランジスタＱ１３，Ｑ１４の接続点Ｐｂに接続され、このＭＯＳトランジスタＱ１８のソースは演算データＤＢを出力するための出力端子１４４に接続される。そして、これらＭＯＳトランジスタＱ１７，Ｑ１８のゲートはセル選択信号ＣＳが入力される入力端子１４５に接続されている。
【００８５】
出力端子１４３は上述した演算データ出力線ＤＡＬに接続され、この演算データ出力線ＤＡＬに演算データＤＡが供給される。一方、出力端子１４３は上述した演算データ出力線ＤＢＬに接続され、この演算データ出力線ＤＢＬに演算データＤＢが供給される。さらに、入力端子１４５は上述したセル選択線ＷＬＦに接続され、このセル選択線ＷＬＦを通じてセル選択信号ＣＳが入力される。
【００８６】
ここで、ＭＯＳトランジスタＱ１７，Ｑ１８は出力制御部としてのトランスファーゲートを構成しており、入力端子１４５に“１”のセル選択信号ＣＳが供給されるとき、導通する。そしてこの場合、接続点Ｐａに得られているＥｘＮＯＲ出力がＭＯＳトランジスタＱ１７を通じて演算データＤＡとして出力端子１４３に出力される。同様に、接続点Ｐｂに得られているＡＮＤ出力がＭＯＳトランジスタＱ１８を通じて演算データＤＢとして出力端子１４４に出力される。
【００８７】
このように、メモリセル部１４１の記憶データと参照データＲＤとの演算および演算データＤＡ，ＤＢの出力は、記憶データの書き込みや読み出しとは独立に行うことができ、この記憶データに影響を及ぼすことはない。
【００８８】
上述したメモリセルブロック１２５を構成するメモリセル１４０としては図１５に示す構成のものが用いられるが、同様の演算機能部を備えるその他のメモリセルも同様に構成可能である。図１６〜図１８は他のメモリセルの一例を示している。これら図１６〜図１８において、図１５と対応する部分には同一符号を付して示している。
【００８９】
図１６に示すメモリセルは、ＥｘＮＯＲ演算に係る演算機能部および出力制御部を有するものである。図１７に示すメモリセルは、ＡＮＤ演算に係る演算機能部および出力制御部を有するものである。
図１８に示すメモリセルは、論理和の反転（ＮＯＲ）の演算に係る演算機能部および出力制御部を有するものである。
【００９０】
メモリセル部１４１の記憶ノードＮ１，Ｎ２にそれぞれゲートが接続されたＮ型ＭＯＳトランジスタＱ１９，Ｑ２０の互いのドレインが接続され、ＭＯＳトランジスタＱ１９のソースは接地され、ＭＯＳトランジスタＱ２０のソースは参照データ/ＲＤが入力される入力端子１４２ｂに接続されている。ＭＯＳトランジスタＱ１９，Ｑ２０により、メモリセル部１４１に記憶されている記憶データと参照データＲＤとの論理和の反転（ＮＯＲ）を得る演算機能部が構成されており、ＭＯＳトランジスタＱ１９，Ｑ２０の接続点ＰｂにはＮＯＲ出力が得られる。
【００９１】
また、Ｎ型ＭＯＳトランジスタＱ２１のドレインはＭＯＳトランジスタＱ１９，Ｑ２０の接続点Ｐｃに接続され、このＭＯＳトランジスタＱ２１のソースは演算データＤＣを出力するための出力端子１４６に接続される。そして、ＭＯＳトランジスタＱ２１のゲートはセル選択信号ＣＳが入力される入力端子１４５に接続されている。ＭＯＳトランジスタＱ２１は出力制御部としてのトランスファーゲートを構成しており、入力端子１４５に“１”のセル選択信号ＣＳが供給されるとき、導通する。そしてこの場合、接続点Ｐｃに得られているＮＯＲ出力がＭＯＳトランジスタＱ２１を通じて演算データＤＣとして出力端子１４６に出力される。
【００９２】
次に、上述のメモリブロック１２５を構成する演算補助セル１３４ｄを説明する。
本実施の形態では、演算補助セル１３４ｄの部分に、図１９に示す加算、減算用の演算補助セル１５０と、図２０に示す差分絶対値演算用の演算補助セル１７０とが、それぞれ複数個使用される。
【００９３】
メモリ・セル・アレイ１３１にマトリックス状に配された複数のメモリセル１４０のうち、アドレス・バッファ１３５ａに入力されるロウ・アドレスおよびアドレス・バッファ１３４ｂに入力されるカラム・アドレスによって（図１０，図１２参照）、候補ブロックを構成する複数の画素データをビット毎に記憶しているｍ×ｎ個のメモリセル１４０が同時に選択される。ｍは候補ブロックを構成する画素データの個数を示し、ｎは画素データのビット数を示している。演算補助セル１３４ｄには、このｍ×ｎ個のメモリセル１４０の各出力端子１４３，１４４に出力される演算データＤＡ，ＤＢが、ｍ×ｎ対の演算データ出力線ＤＡＬ，ＤＢＬをそれぞれ介して同時に供給される。
【００９４】
まず、演算補助セル１５０について説明する。演算補助セル１３４ｄの部分には、上述したｍ×ｎ個のメモリセル１４０にそれぞれ対応してｍ×ｎ個の演算補助セル１５０が設けられる。図１９は、候補ブロックの所定の画素データのｉ番目のビットデータに対応する演算補助セル１５０を示している。ここで、ｉ＝０，１，・・・，ｎ−１であり、０番目のビットデータはＬＳＢ(Least Significant Bit)であり、ｎ−１番目のビットデータはＭＳＢ(Most Significant Bit)である。
【００９５】
図１９において、Ｎ型ＭＯＳトランジスタＱ３１，Ｑ３２の互いのドレインが接続されている。また、Ｎ型ＭＯＳトランジスタＱ３３，Ｑ３４の互いのドレインが接続されており、ＭＯＳトランジスタＱ３４のソースは接地されている。対応するメモリセル１４０からの演算データＤＡ（ＥｘＮＯＲ出力）が演算データＤＡｉとして入力される入力端子１５１はインバータＩＮ１，ＩＮ２の直列回路を介してＭＯＳトランジスタＱ３２，Ｑ３４のそれぞれのゲートに接続されると共に、インバータＩＮ１，ＩＮ２の接続点はＭＯＳトランジスタＱ３１，Ｑ３３のそれぞれのゲートに接続されている。
【００９６】
また、下位からのキャリ出力/Ｃi-1（/Ｃi-1はＣi-1バーを表しており、キャリ出力Ｃi-1が反転されたものである）が入力される入力端子１５２は、ＭＯＳトランジスタＱ３２のソースに接続されると共に、インバータＩＮ３を介して、ＭＯＳトランジスタＱ３１，Ｑ３３のそれぞれのソースに接続されている。
【００９７】
また、対応するメモリセル１４０からの演算データＤＢ（ＡＮＤ出力）が演算データＤＢiとして入力される入力端子１５３はＮＯＲゲート１５４の入力側に接続されている。また、ＭＯＳトランジスタＱ３３，Ｑ３４の接続点がＮＯＲゲート１５４の入力側に接続されている。そして、このＮＯＲゲート１５４の出力側は上位へのキャリ出力／Ｃi（/ＣiはＣiバーを表しており、キャリ出力Ｃiが反転されたものである）が出力される出力端子１５５に接続される。また、ＭＯＳトランジスタＱ３１，Ｑ３２の接続点はインバータＩＮ４を介して、演算データＳiが出力される出力端子１５６に接続されている。
【００９８】
ここで、候補ブロックの所定の画素データ（ｎビット）に対応するｎ個の演算補助セル１５０により、当該候補ブロックの所定の画素データと対応する参照ブロックの画素データとの減算値出力が得られる。すなわち、候補ブロックの所定の画素データをＸi(i=0,1,・・・,n-1)、対応する参照ブロックの画素データをＹi(i=0,1,・・・,n-1)とそれぞれ表し、上述したメモリセル１４０の参照データＲＤとして/Ｙｉ（/ＹｉはＹｉバーを表しており、Ｙｉが反転されたものである）を供給し、Ｃ-1＝１とすることで、演算出力Ｓｉおよびキャリ出力Ｃiは、それぞれ（１）式、（２）式のように得られ、減算値出力が得られる。この減算値出力は、キャリ出力Ｃn-1が正負の符号を示すオフセットバイナリで得られる。
【００９９】
【数１】
0004122774.tif 000002
【０１００】
なお、本実施の形態では、上述した減算値出力を使用するものであるが、メモリセル１４０の参照データＲＤとしてＹｉを供給し、Ｃ-1＝０とすることで、演算出力Ｓｉおよびキャリ出力Ｃiは、それぞれ（３）式、（４）式のように得られ、加算値出力を得ることができる。
【０１０１】
【数２】
0004122774.tif 000003
【０１０２】
次に、演算補助セル１７０について説明する。メモリブロック１２５の演算補助セル１３４ｄの部分には、上述したように候補ブロックおよび参照ブロックの対応する画素データの減算値出力を得るためのｎ個の演算補助セル１５０毎に、演算補助セル１７０が設けられる。すなわち、演算補助セル１３４ｄの部分には、候補ブロックを構成する画素データの個数と等しいｍ個の演算補助セル１７０が設けられる。図２０は、ｍ個の演算補助セル１７０のうちｋ番目（ｋ＝０，１，・・・，ｍ−１）の演算補助セル１７０を示している。
【０１０３】
図２０において、ｎ個の演算補助セル１５０の演算出力Ｓi(i=0,1,・・・,n-1)がそれぞれ入力される入力端子１７１0，１７１1，・・・，１７１n-1は、それぞれイクスクルーシブＯＲゲート（ＥｘＯＲゲート）１７１0，１７１1，・・・，１７１n-1に入力側に接続される。
【０１０４】
また、ｎ−１番目の演算補助セル１５０のキャリ出力/Ｃn-1が入力される入力端子１７３は、ＥｘＯＲゲート１７１0，１７１1，・・・，１７１n-1に共通に接続される。そして、このＥｘＯＲゲート１７１0，１７１1，・・・，１７１n-1の出力側はそれぞれｎビット全加算器１７４の、入力端子ａ0，ａ1，・・・，ａn-1に接続される。
【０１０５】
また、ｎビット全加算器１７４の入力端子ｂ0は上述の入力端子１７３に接続されると共に、このｎビット全加算器１７４のｂ1，・・・，ｂn-1は接地される。そして、このｎビット全加算器１７４の出力端子ｏ0，ｏ1，・・・，ｏn-1は、それぞれ差分絶対値Ｄk(Ｄk0〜Ｄkn-1）を出力する出力端子１７５0，１７５1，・・・，１７５n-1に接続される。
【０１０６】
図２０に示す演算補助セル１７０においては、Ｃn-1が１で演算出力Ｓi(i=0,1,・・・,n-1)が正であるときは、この演算出力Ｓi(i=0,1,・・・,n-1)がそのまま差分絶対値Ｄk(i=0,1,・・・,n-1)として得られ、一方Ｃn-1が０で演算出力Ｓi(i=0,1,・・・,n-1)が負であるときは、この演算出力Ｓi(i=0,1,・・・,n-1)の全てのビットがＥｘＯＲゲート１７１0，１７１1，・・・，１７１n-1で反転され、その後ｎビット全加算器１７４でＬＳＢに１が加算されて演算出力Ｓi(i=0,1,・・・,n-1)の絶対値が算出され、これが差分絶対値Ｄk(i=0,1,・・・,n-1)として得られる。
【０１０７】
図２１は、候補ブロックを構成するｋ番目の画素データに対応する差分絶対値Ｄk(i=0,1,・・・,n-1)を得るための演算補助セル１３４ｄの一部構成を示しており、ｎ個の演算補助セル１５０と、１個の演算補助セル１７０で構成される。演算補助セル１３４ｄの部分には、この図２１に示す構成が、候補ブロックを構成する画素データの個数と等しいｍ個だけ存在することになる。
【０１０８】
上述したように、メモリ・セル・アレイ１３１にマトリックス状に配された複数のメモリセル１４０のうち、アドレス・バッファ１３５ａに入力されるロウ・アドレスおよびアドレス・バッファ１３４ｂに入力されるカラム・アドレスによって、候補ブロックを構成するｍ個の画素データをビット毎に記憶しているｍ×ｎ個のメモリセル１４０が同時に選択されることで、演算補助セル１３４ｄではｍ個の画素データに対応する減算や差分絶対演算を同時並行的に行うことができる。
【０１０９】
以下、このように、候補ブロックを構成するｍ個の画素データをビット毎に記憶しているｍ×ｎ個のメモリセル１４０を同時に選択可能とするための構成について説明する。
【０１１０】
図２２Ａは、探索フレームメモリ１２４を構成する１つのメモリブロック１２５に記憶される画素データを模式的に示したものである。説明を簡単にするため、１つのメモリブロック１２５に記憶される画素データは、水平方向に１５画素、垂直方向に１０ラインの画素データであり、各画素データは１ビットデータであるとする。
【０１１１】
図２２Ｂは、各画素データのメモリ・セル・アレイ１３１内の記憶位置を示している。ここでは、升目のそれぞれがメモリセル１４０に対応している。メモリ・セル・アレイ１３１は、参照データのカラム方向（図１０のメモリブロック１２５の構成では、記憶データのカラム方向と同じ、図１２のメモリブロック１２５の構成では、記憶データのロウ方向と同じ）に５０個のメモリセル１４０が並べられた構成となっている。そして、メモリ・セル・アレイ１３１内の複数のメモリセル１４０は、カラム方向に分割され、５つの分割領域１３１ａ〜１３１ｅが形成されている。
【０１１２】
ここで、分割領域１３１ａの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「００」〜「９０」、「０５」〜「９５」および「０ａ」〜「９ａ」が記憶される。また、分割領域１３１ｂの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０１」〜「９１」、「０６」〜「９６」および「０ｂ」〜「９ｂ」が記憶される。また、分割領域１３１ｃの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０２」〜「９２」、「０７」〜「９７」および「０ｃ」〜「９ｃ」が記憶される。
【０１１３】
また、分割領域１３１ｄの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０３」〜「９３」、「０８」〜「９８」および「０ｄ」〜「９ｄ」が記憶される。さらに、分割領域１３１ｅの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０４」〜「９４」、「０９」〜「９９」および「０ｅ」〜「９ｅ」が記憶される。
【０１１４】
上述した複数のセル選択線ＷＬＦ（図９、図１１参照）は、それぞれ各分割領域１３１ａ〜１３１ｅに対応して分割された５本の分割セル選択線ＷＬＦａ〜ＷＬＦｅ（図２２Ｂには図示せず）からなっている。そして、メモリ・セル・アレイ１３１には、各分割領域１３１ａ〜１３１ｅで同時に活性化される分割セル選択線を切り換えるための切り換え機構が配されている。例えば、図２２Ｂに示すように、各分割領域１３１ａ〜１３１ｅの間に切り換え機構１８０が配されている。
【０１１５】
図２３は、切り換え機構１８０の構成例を示している。この切り換え機構１８０はＮ型ＭＯＳトランジスタとＰ型ＭＯＳトランジスタとが並列接続されてなるＣＭＯＳトランスファーゲートが使用されて構成される。この切り換え機構１８０は、同一行の分割セル選択線の間に配され、それらを接続するためのトランスファーゲートＴＧ１と、隣接行の分割セル選択線の間に配され、それらを接続するためのトランスファーゲートＴＧ２とからなっている。
【０１１６】
そして、トランスファーゲートＴＧ１のＮ型ＭＯＳトランジスタのゲートおよびトランスファーゲートＴＧ２のＰ型ＭＯＳトランジスタのゲートには切り換え制御信号φが供給され、トランスファーゲートＴＧ１のＰ型ＭＯＳトランジスタのゲートおよびトランスファーゲートＴＧ２のＮ型ＭＯＳトランジスタのゲートには切り換え制御信号/φ（/φはφバーを表し、切り換え制御信号φが反転されたものである）が供給される。なお、各分割領域１３１ａ〜１３１ｅの間に配される切り換え機構１８０には、それぞれ独立して切り換え制御信号φ，/φが供給される。
【０１１７】
切り換え機構１８０の動作を説明する。φ＝１で、/φ＝０であるとき、トランスファーゲートＴＧ１が導通し、同一行の分割セル選択線同士が接続される状態となる。一方、φ＝０で、/φ＝１であるとき、トランスファーゲートＴＧ２が導通し、隣接行の分割セル選択線同士が接続される状態となる。
【０１１８】
メモリ・セル・アレイ１３１の各分割領域１３１ａ〜１３１ｅの間に、上述したような切り換え機構１８０が配されていることから、任意の候補ブロックを構成する全画素データをビット毎に記憶している複数のメモリセル１４０を同時に選択できる。
【０１１９】
例えば、図２２Ａにハッチングをして示した範囲の候補ブロックに対しては、切り換え機構１８０によって図２２Ｂに破線で示すように接続された各分割領域１３１ａ〜１３１ｅの分割セル選択線ＷＬＦａ〜ＷＬＦｅに、参照データ用ロウ・アドレス・デコーダ１３５（図１０、図１２参照）から“１”のセル選択信号を供給して活性化すると共に、参照データ用カラム・アドレス・デコーダ１３４ａ（図１０、図１２参照）のＩ／Ｏゲート（カラム・スイッチ）により、図２２Ｂでハッチングをして示したメモリセル１４０を選択すればよい。
【０１２０】
また例えば、図２４Ａにハッチングをして示した範囲の候補ブロックに対しては、切り換え機構１８０により図２４Ｂに破線で示すように接続された各分割領域１３１ａ〜１３１ｅの分割セル選択線ＷＬＦａ〜ＷＬＦｅに、参照データ用ロウ・アドレス・デコーダ１３５から“１”のセル選択信号を供給して活性化すると共に、参照データ用カラム・アドレス・デコーダ１３４ａのＩ／Ｏゲート（カラム・スイッチ）により、図２４Ｂでハッチングをして示したメモリセル１４０を選択すればよい。
【０１２１】
このように、Ｉ／Ｏゲート（カラム・スイッチ）によるメモリセル１４０の選択により、矩形または十字形等の任意の形状の候補ブロックに対処することができる。また、１つの分割セル選択線に対応する複数のメモリセル１４０に、画像データを構成する垂直方向の１列分の画素データを記憶しているので、切り換え機構１８０とＩ／Ｏゲート（カラム・スイッチ）の共働により、候補ブロックの位置を水平、垂直の双方向に１画素単位で動かすことができる。
【０１２２】
なお、上述では説明を簡単にするため各画素データは１ビットデータであるとして説明したが、各画素データがｎビットデータ（例えばｎ＝８）である場合には、各画素データを記憶するためにｎ個のメモリセル１４０が必要となり、それらｎ個のメモリセル１４０は例えばカラム方向に連続して配される。
【０１２３】
また、上述した図２２Ｂ、図２４Ｂの例では、各分割セル選択線ＷＬＦａ〜ＷＬＦｅにそれぞれ対応した複数のメモリセル１４０にそれぞれ垂直方向の１列分の画素データが記憶されるものを示したが、各分割セル選択線ＷＬＦａ〜ＷＬＦｅにそれぞれ対応した複数のメモリセル１４０にそれぞれ水平方向の１列分の画素データが記憶されるようにしてもよい。
【０１２４】
また、各分割セル選択線ＷＬＦａ〜ＷＬＦｅにそれぞれ対応した複数のメモリセル１４０に、それぞれ画像データを構成する水平方向または垂直方向のｍ列分（ｍは２以上の整数）の画素データが記憶されるようにしてもよい。この場合、候補ブロックの位置は、水平方向のｍ列分の画素データが記憶されるときには垂直方向にはｍ画素単位で移動でき、また、垂直方向のｍ列分の画素データが記憶されるときには水平方向にはｍ画素単位で移動可能となる。
【０１２５】
図２５Ａは、探索フレームメモリ１２４を構成する１つのメモリブロック１２５に記憶される画素データを模式的に示したものである。説明を簡単にするため、１つのメモリブロック１２５に記憶される画素データは、水平方向に１０画素、垂直方向に１０ラインの画素データであり、各画素データは１ビットデータであるとする。
【０１２６】
図２５Ｂは、各画素データのメモリ・セル・アレイ１３１内の記憶位置を示している。ここでは、升目のそれぞれがメモリセル１４０に対応している。メモリ・セル・アレイ１３１は、参照データのカラム方向（図１０のメモリブロック１２５の構成では、記憶データのカラム方向と同じ、図１２のメモリブロック１２５の構成では、記憶データのロウ方向と同じ）に５０個のメモリセル１４０が並べられた構成となっている。そして、メモリ・セル・アレイ１３１内の複数のメモリセル１４０は、カラム方向に分割され、５つの分割領域１３１ａ〜１３１ｅが形成されている。
【０１２７】
ここで、分割領域１３１ａの連続する第１の行および第２の行のそれぞれの１０個のメモリセルには、それぞれ水平方向の１列分の画素データ「００」〜「０９」および「５０」〜「５９」が記憶される。また、分割領域１３１ｂの連続する第１の行および第２の行のそれぞれの１０個のメモリセルには、それぞれ水平方向の１列分の画素データ「１０」〜「１９」および「６０」〜「６９」が記憶される。また、分割領域１３１ｃの連続する第１の行および第２の行のそれぞれの１０個のメモリセルには、それぞれ水平方向の１列分の画素データ「２０」〜「２９」および「７０」〜「７９」が記憶される。
【０１２８】
また、分割領域１３１ｄの連続する第１の行および第２の行のそれぞれの１０個のメモリセルには、それぞれ水平方向の１列分の画素データ「３０」〜「３９」および「８０」〜「８９」が記憶される。さらに、分割領域１３１ｅの連続する第１の行および第２の行のそれぞれの１０個のメモリセルには、それぞれ水平方向の１列分の画素データ「４０」〜「４９」および「９０」〜「９９」が記憶される。
【０１２９】
上述した複数のセル選択線ＷＬＦ（図９、図１１参照）は、それぞれ各分割領域１３１ａ〜１３１ｅに対応して分割された５本の分割セル選択線ＷＬＦａ〜ＷＬＦｅ（図２５Ｂには図示せず）からなっている。そして、メモリ・セル・アレイ１３１には、各分割領域１３１ａ〜１３１ｅで同時に活性化される分割セル選択線を切り換えるための切り換え機構１８０（図２３参照）が配されている。
【０１３０】
このように、各分割セル選択線ＷＬＦａ〜ＷＬＦｅにそれぞれ対応した複数のメモリセル１４０にそれぞれ水平方向の１列分の画素データが記憶されるものにあっても、メモリ・セル・アレイ１３１の各分割領域１３１ａ〜１３１ｅの間に切り換え機構１８０が配されていることから、任意の候補ブロックを構成する全画素データをビット毎に記憶している複数のメモリセル１４０を同時に選択できる。
【０１３１】
例えば、図２５Ａにハッチングをして示した範囲の候補ブロックに対しては、切り換え機構１８０によって図２５Ｂに破線で示すように接続された各分割領域１３１ａ〜１３１ｅの分割セル選択線ＷＬＦａ〜ＷＬＦｅに、参照データ用ロウ・アドレス・デコーダ１３５（図１０、図１２参照）から“１”のセル選択信号を供給して活性化すると共に、参照データ用カラム・アドレス・デコーダ１３４ａ（図１０、図１２参照）のＩ／Ｏゲート（カラム・スイッチ）により、図２５Ｂでハッチングをして示したメモリセル１４０を選択すればよい。
【０１３２】
また例えば、図２６Ａにハッチングをして示した範囲の候補ブロックに対しては、切り換え機構１８０により図２６Ｂに破線で示すように接続された各分割領域１３１ａ〜１３１ｅの分割セル選択線ＷＬＦａ〜ＷＬＦｅに、参照データ用ロウ・アドレス・デコーダ１３５から“１”のセル選択信号を供給すると共に、参照データ用カラム・アドレス・デコーダ１３４ａのＩ／Ｏゲート（カラム・スイッチ）により、図２６Ｂでハッチングをして示したメモリセル１４０を選択すればよい。
【０１３３】
また、上述では、メモリ・セル・アレイ１３１の各分割領域１３１ａ〜１３１ｅで同時に活性化される分割セル選択線を切り換えるために、各分割領域１３１ａ〜１３１ｅの間に切り換え機構１８０（図２３参照）が配されるものを示したが、この切り換え機構は他の構成であってもよい。
【０１３４】
図２７は、切り換え機構の他の構成例を示している。この切り換え機構１８０Ａは、各分割領域１３１ａ〜１３１ｅに対応して配される。図２７には、分割領域１３１ｂ，１３１ｃの部分のみ示している。
【０１３５】
この切り換え機構１８０Ａを使用する場合、各セル選択線ＷＬＦ（分割セル選択線ＷＬＦａ〜ＷＬＦｅで構成される）に平行する、セル選択信号を入力するためのグローバル選択線/ＧＷＬ（/ＧＷＬはＧＷＬバーを表し、セル選択信号として“０”が入力される）が必要となる。
【０１３６】
切り換え機構１８０Ａは、ノアゲートおよびアンドゲートが使用されて構成される。すなわち、ロウ方向の奇数行に対しては、入力側がグローバル選択線/ＧＷＬに接続され、その出力側が対応する分割セル選択線に接続されるノアゲートＮＧが配され、一方ロウ方向の偶数行に対しては、入力側がグローバル選択線/ＧＷＬに接続され、その出力側が対応する分割セル選択線に接続されるオアゲートＯＧが配される。そして、ノアゲートＮＧおよびオアゲートＯＧの入力側には切り換え制御信号/φ（/φはφバーを表し、切り換え制御信号φが反転されたものである）が供給される。なお、各分割領域１３１ａ〜１３１ｅに対応して配される切り換え機構１８０Ａには、それぞれ独立して切り換え制御信号/φが供給される。
【０１３７】
切り換え機構１８０Ａを使用した、各分割領域１３１ａ〜１３１ｅにおけるセル選択線の選択動作について説明する。
例えば、図２７において、分割領域１３１ｂでは第２の行の分割セル選択線ＷＬＦｂを選択し、分割領域１３１ｃでは第１の行の分割セル選択線ＷＬＦｃを選択するものとする。
【０１３８】
この場合、第１、第２の行のグローバル選択線/ＧＷＬi，/ＧＷＬi+1にそれぞれセル選択信号として“０”が供給される。また、分割領域１３１ｂの切り換え機構１８０Ａに供給される切り換え制御信号/φjとして“１”が供給される。これにより、第２の行のオアゲートＯＧの出力側には“１”が出力されるため、第２の行の分割セル選択線ＷＬＦｂが活性化された状態となる。
【０１３９】
一方、分割領域１３１ｃの切り換え機構１８０Ａに供給される切り換え制御信号/φjとして“０”が供給される。これにより、第１の行のノアゲートＮＧの出力側には“１”が出力されるため、第１の行の分割セル選択線ＷＬＦｃが活性化された状態となる。
【０１４０】
このように、メモリ・セル・アレイ１３１の各分割領域１３１ａ〜１３１ｅに対して、上述したような切り換え機構１８０Ａが配される場合においても、各分割領域１３１ａ〜１３１ｅの間に上述した切り換え機構１８０が配される場合と同様に、各分割領域１３１ａ〜１３１ｅで同時に活性化される分割セル選択線の切り換えを行うことができ、任意の候補ブロックを構成する全画素データをビット毎に記憶している複数のメモリセル１４０を同時に選択できる。
【０１４１】
また、この切り換え機構１８０Ａを使用する場合、セル選択信号の伝送路にトランスファーゲートが配されるものではなく、切り換え機構１８０におけるように、複数のトランスファーゲートＴＧ１，ＴＧ２が伝送路に配されるもののような、セル選択信号の伝送遅延を回避することができる。
【０１４２】
図２８は、切り換え機構のさらに他の構成例を示している。この切り換え機構１８０Ｂも、各分割領域１３１ａ〜１３１ｅに対応して配される。図２８には、分割領域１３１ｂ，１３１ｃの部分のみ示している。
【０１４３】
この切り換え機構１８０Ｂを使用する場合、各セル選択線ＷＬＦ（分割セル選択線ＷＬＦａ〜ＷＬＦｅで構成される）に平行する、セル選択信号を入力するためのグローバル選択線ＧＷＬ（セル選択信号として“１”が入力される）が必要となる。
【０１４４】
切り換え機構１８０Ｂは、ＣＭＯＳトランスファーゲートが使用されて構成される。すなわち、ロウ方向の奇数行に対しては、グローバル選択線ＧＷＬと各分割セル選択線ＷＬＦａ〜ＷＬＦｅとを接続するためのトランスファーゲートＴＧ３が配され、一方ロウ方向の偶数行に対しては、グローバル選択線ＧＷＬと各分割セル選択線ＷＬＦａ〜ＷＬＦｅとを接続するためのトランスファーゲートＴＧ４が配される。
【０１４５】
そして、トランスファーゲートＴＧ３のＮ型ＭＯＳトランジスタのゲートおよびトランスファーゲートＴＧ４のＰ型ＭＯＳトランジスタのゲートには切り換え制御信号φが供給され、トランスファーゲートＴＧ３のＰ型ＭＯＳトランジスタのゲートおよびトランスファーゲートＴＧ４のＮ型ＭＯＳトランジスタのゲートには切り換え制御信号/φ（/φはφバーを表し、切り換え制御信号φが反転されたものである）が供給される。なお、各分割領域１３１ａ〜１３１ｅに対応して配される切り換え機構１８０Ｂには、それぞれ独立して切り換え制御信号φ，/φが供給される。
【０１４６】
切り換え機構１８０Ｂを使用した、各分割領域１３１ａ〜１３１ｅにおけるセル選択線の選択動作について説明する。
例えば、図２８において、分割領域１３１ｂでは第２の行の分割セル選択線ＷＬＦｂを選択し、分割領域１３１ｃでは第１の行の分割セル選択線ＷＬＦｃを選択するものとする。
【０１４７】
この場合、第１、第２の行のグローバル選択線ＧＷＬi，ＧＷＬi+1にそれぞれセル選択信号として“１”が供給される。また、分割領域１３１ｂの切り換え機構１８０Ｂに供給される切り換え制御信号φ，/φjとしてそれぞれ“０”，“１”が供給される。これにより、第２の行のトランスファーゲートＴＧ４が導通し、グローバル選択線ＧＷＬi+1から分割セル選択線ＷＬＦｃに“１”のセル選択信号が供給されるため、第２の行の分割セル選択線ＷＬＦｂが活性化された状態となる。
【０１４８】
一方、分割領域１３１ｃの切り換え機構１８０Ｂに供給される切り換え制御信号φ，/φjとして“１”，“０”が供給される。これにより、第１の行のトランスファーゲートＴＧ３が導通し、グローバル選択線ＧＷＬiから分割セル選択線ＷＬＦｃに“１”のセル選択信号が供給されるため、第１の行の分割セル選択線ＷＬＦｃが活性化された状態となる。
【０１４９】
このように、メモリ・セル・アレイ１３１の各分割領域１３１ａ〜１３１ｅに対して、上述したような切り換え機構１８０Ｂが配される場合においても、各分割領域１３１ａ〜１３１ｅの間に上述した切り換え機構１８０が配される場合と同様に各分割領域１３１ａ〜１３１ｅで同時に活性化される分割セル選択線の切り換えを行うことができ、任意の候補ブロックを構成する全画素データをビット毎に記憶している複数のメモリセル１４０を同時に選択できる。
【０１５０】
また、この切り換え機構１８０Ｂを使用する場合、セル選択信号の伝送路に配されるトランスファーゲートは１個だけとなるため、切り換え機構１８０におけるように、複数のトランスファーゲートＴＧ１，ＴＧ２が伝送路に配されるものに比べて、セル選択信号の伝送遅延を軽減することができる。
【０１５１】
次に、参照フレームの画像データを蓄積するフレームメモリ１２３（図６参照）を説明する。
図２９に示すように、フレームメモリ１２３も、上述したフレームメモリ１２４と同様に、例えば４個のメモリブロック１９１ａ〜１９１ｄから構成されている。メモリブロック１９１ａ〜１９１ｄには、それぞれ、データ入力部、データ出力部が備えられている。データ入力部より画像データＤｉが入力され、データ出力部から画像データＤｏが出力される。これら、メモリブロック１９１ａ，１９１ｂ，１９１ｃ，１９１ｄには、それぞれ、参照フレームの左上、右上、左下、右下の各部分の画素データが記憶される。
【０１５２】
所定の参照ブロックの中心画素の範囲が、参照フレームの左上、右上、左下、右下の各部分にある場合には、それぞれメモリブロック１９１ａ，１９１ｂ，１９１ｃ，１９１ｄのみを活性化させればよく、消費電力を少なく抑えることができる。
【０１５３】
この場合、メモリブロック１９１ａ〜１９１ｄには、上述したフレームメモリ１２４のメモリブロック１２５ａ〜１２５ｄと同様に、参照フレームの左上、右上、左下、右下の各部分の境界部に対応して、重複して画素データが記憶される。このように、メモリブロック１９１ａ〜１９１ｄに重複した画素データを記憶しておくのは、中心画素が境界付近となる参照ブロックの画素データには、その境界部を越えた位置の画素データも必要となるからである。
【０１５４】
図３０は、メモリブロック１９１（１９１ａ〜１９１ｄ）の構成例を示している。
メモリブロック１９１は、複数のメモリセルがマトリックス状に配されたメモリ・セル・アレイ２０１と、記憶データ入出力用ポート（カラム・アドレス・デコーダなどを含む）２０２と、記憶データ用ロウ・アドレス・デコーダ２０３とを有している。
【０１５５】
メモリ・セル・アレイ２０１は、ロウ方向に延びるデータを転送するための複数のビット線ＢＬ，/ＢＬ（/ＢＬはＢＬバーを表している）と、カラム方向に延びる、複数のビット線ＢＬ，/ＢＬに直交する複数のワード線ＷＬと，これらビット線ＢＬ，/ＢＬおよびワード線ＷＬに接続され、マトリックス状に配された複数のメモリセル２１０とからなっている。
【０１５６】
図３１は、図３０に示したメモリブロック１９１のメモリ・セル・アレイ２０１以外の部分の構成を詳細に示したものである。
【０１５７】
記憶データ用カラム・アドレス・デコーダ２０２ａ、アドレスバッファ２０２ｂおよびＩ／Ｏバッファ２０２ｃは、図３０における記憶データ入出力用ポート２０２を構成している。カラム・アドレス・デコーダ２０２ａには、Ｉ／Ｏゲート（カラム・スイッチ）やセンスアンプ等が含まれている。カラム・アドレス・デコーダ２０２ａには、アドレス・バッファ２０２ｂを介してカラム・アドレスが入力される。
【０１５８】
カラム・アドレス・デコーダ２０２ａは、アドレス・バッファ２０２ｂを介して供給されるカラム・アドレスに対応して、メモリ・セル・アレイ２０１のカラム方向の所定の複数のメモリセル２１０に接続される複数のビット線ＢＬ，/ＢＬとの接続を確保し、Ｉ／Ｏバッファ２０２ｃおよびカラム・アドレス・デコーダ２０２ａを通じて、当該カラム方向の所定のメモリセルに対する、記憶データの書き込み、読み出しが可能となるようにする。
【０１５９】
また、記憶データ用ロウ・アドレス・デコーダ２０３には、アドレス・バッファ２０３ａを介してロウ・アドレスが入力される。ロウ・アドレス・デコーダ２０３は、アドレス・バッファ２０３ａを介して供給されるロウ・アドレスに対応して、メモリ・セル・アレイ２０１のロウ方向の所定のメモリセル２１０に接続されるワード線ＷＬを活性化し、Ｉ／Ｏバッファ２０２ｃおよびカラム・アドレス・デコーダ２０２ａを通じて、当該ロウ方向の所定のメモリセル２１０に対する、記憶データの書き込み、読み出しが可能となるようにする。
【０１６０】
また、制御回路２０４は、メモリブロック１９１の上述した各回路の動作を、制御入力に基づいて制御する。なお、後述するが、メモリ・セル・アレイ２０１にマトリックス状に配された複数のメモリセルの領域はワード線ＷＬに沿う方向（カラム方向）に分割された複数の分割領域からなり、複数のワード線ＷＬは、それぞれ複数の分割領域に対応して分割された複数の分割ワード線からなっており、メモリ・セル・アレイ２０１には、各分割領域で同時に活性化される分割ワード線を切り換えるための切り換え機構が配されている。この切り換え機構の制御も、制御回路２０４によって行われる。
【０１６１】
なお、メモリセル２１０は、上述したメモリブロック１２５のメモリセル１４０とは異なり、演算機能部を持っていない。詳細説明は省略するが、このメモリセル２１０は、例えば、上述の図１３に示すＳＲＡＭセル、あるいは上述の図１４に示すＤＲＡＭセルと同様の構成とされる。
【０１６２】
メモリブロック１９１は、任意の参照ブロックを構成する全画素データをビット毎に記憶している複数のメモリセル２１０を同時に選択可能とされている。以下、そのための構成について説明する。
【０１６３】
図３２Ａは、参照フレームメモリ１２３を構成する１つのメモリブロック１９１に記憶される画素データを模式的に示したものである。説明を簡単にするため、１つのメモリブロック１９１に記憶される画素データは、水平方向に１５画素、垂直方向に１０ラインの画素データであり、各画素データは１ビットデータであるとする。
【０１６４】
図３２Ｂは、各画素データのメモリ・セル・アレイ２０１内の記憶位置を示している。ここでは、升目のそれぞれがメモリセル２１０に対応している。メモリ・セル・アレイ２０１は、カラム方向に５０個のメモリセル２１０が並べられた構成となっている。そして、メモリ・セル・アレイ２０１内の複数のメモリセル２１０は、カラム方向に分割され、５つの分割領域２０１ａ〜２０１ｅが形成されている。
【０１６５】
ここで、分割領域２０１ａの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「００」〜「９０」、「０５」〜「９５」および「０ａ」〜「９ａ」が記憶される。また、分割領域２０１ｂの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０１」〜「９１」、「０６」〜「９６」および「０ｂ」〜「９ｂ」が記憶される。また、分割領域２０１ｃの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０２」〜「９２」、「０７」〜「９７」および「０ｃ」〜「９ｃ」が記憶される。
【０１６６】
また、分割領域２０１ｄの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０３」〜「９３」、「０８」〜「９８」および「０ｄ」〜「９ｄ」が記憶される。さらに、分割領域２０１ｅの連続する第１の行、第２の行および第３の行のそれぞれの１０個のメモリセルには、それぞれ垂直方向の１列分の画素データ「０４」〜「９４」、「０９」〜「９９」および「０ｅ」〜「９ｅ」が記憶される。
【０１６７】
上述した複数のワード線ＷＬ（図３０参照）は、それぞれ各分割領域２０１ａ〜２０１ｅに対応して分割された５本の分割ワード線ＷＬａ〜ＷＬｅ（図３２Ｂには図示せず）からなっている。そして、メモリ・セル・アレイ２０１には、各分割領域２０１ａ〜２０１ｅで同時に活性化される分割ワード線を切り換えるための切り換え機構が配されている。例えば、図３２Ｂに示すように、各分割領域２０１ａ〜２０１ｅの間に切り換え機構２２０が配されている。
【０１６８】
図３３は、切り換え機構２２０の構成例を示している。この切り換え機構２２０は、上述したメモリブロック１２５のメモリ・セル・アレイ１３１内に配された切り換え機構１８０（図２３参照）と同様に構成されている。
【０１６９】
この切り換え機構２２０は、Ｎ型ＭＯＳトランジスタとＰ型ＭＯＳトランジスタとが並列接続されてなるＣＭＯＳトランスファーゲートが使用されて構成される。この切り換え機構２２０は、同一行の分割ワード線の間に配され、それらを接続するためのトランスファーゲートＴＧ１と、隣接行の分割ワード線の間に配され、それらを接続するためのトランスファーゲートＴＧ２とからなっている。
【０１７０】
そして、トランスファーゲートＴＧ１のＮ型ＭＯＳトランジスタのゲートおよびトランスファーゲートＴＧ２のＰ型ＭＯＳトランジスタのゲートには切り換え制御信号φが供給され、トランスファーゲートＴＧ１のＰ型ＭＯＳトランジスタのゲートおよびトランスファーゲートＴＧ２のＮ型ＭＯＳトランジスタのゲートには切り換え制御信号/φ（/φはφバーを表し、切り換え制御信号φが反転されたものである）が供給される。なお、各分割領域２０１ａ〜２０１ｅの間に配される切り換え機構２２０には、それぞれ独立して切り換え制御信号φ，/φが供給される。
【０１７１】
切り換え機構２２０の動作を説明する。φ＝１で、/φ＝０であるとき、トランスファーゲートＴＧ１が導通し、同一行の分割ワード線同士が接続される状態となる。一方、φ＝０で、/φ＝１であるとき、トランスファーゲートＴＧ２が導通し、隣接行の分割ワード線同士が接続される状態となる。
【０１７２】
メモリ・セル・アレイ２０１の各分割領域２０１ａ〜２０１ｅの間に、上述したような切り換え機構２２０が配されていることから、任意の参照ブロックを構成する全画素データをビット毎に記憶している複数のメモリセル２１０を同時に選択できる。これにより、参照フレームメモリ１２３から探索フレームメモリ１２４に、参照ブロックを構成する全画素データのビットデータを参照データとして同時に供給することが可能となる。
【０１７３】
例えば、図３２Ａにハッチングをして示した範囲の候補ブロックに対しては、切り換え機構２２０によって図３２Ｂに破線で示すように接続された各分割領域２０１ａ〜２０１ｅの分割ワード線ＷＬａ〜ＷＬｅに、記憶データ用ロウ・アドレス・デコーダ２０３（図３１参照）から“１”の信号を供給して活性化すると共に、記憶データ用カラム・アドレス・デコーダ２０２ａ（図３１参照）のＩ／Ｏゲート（カラム・スイッチ）により、図２２Ｂでハッチングをして示したメモリセル２１０を選択すればよい。
【０１７４】
このように、Ｉ／Ｏゲート（カラム・スイッチ）によるメモリセル２１０の選択により、矩形または十字形等の任意の形状の参照ブロックに対処することができる。また、１つの分割ワード線に対応する複数のメモリセル２１０に、画像データを構成する垂直方向の１列分の画素データを記憶しているので、切り換え機構２２０とＩ／Ｏゲート（カラム・スイッチ）の共働により、参照ブロックの位置を水平、垂直の双方向に１画素単位で動かすことができる。
【０１７５】
なお、上述では説明を簡単にするため各画素データは１ビットデータであるとして説明したが、各画素データがｎビットデータ（例えばｎ＝８）である場合には、各画素データを記憶するためにｎ個のメモリセル２１０が必要となり、それらｎ個のメモリセル２１０は例えばカラム方向に連続して配される。
【０１７６】
また、上述した図３２Ｂの例では、各分割ワード線ＷＬａ〜ＷＬｅにそれぞれ対応した複数のメモリセル２１０にそれぞれ垂直方向の１列分の画素データが記憶されるものを示したが、上述したメモリブロック１２５のメモリ・セル・アレイ１３１の場合と同様に、各分割ワード線ＷＬａ〜ＷＬｅにそれぞれ対応した複数のメモリセル２１０にそれぞれ水平方向の１列分の画素データが記憶されるようにしてもよい。
【０１７７】
また、各分割ワード線ＷＬａ〜ＷＬｅにそれぞれ対応した複数のメモリセル２１０に、それぞれ画像データを構成する水平方向または垂直方向のｍ列分（ｍは２以上の整数）の画素データが記憶されるようにしてもよい。この場合、参照ブロックの位置は、水平方向のｍ列分の画素データが記憶されるときには垂直方向にはｍ画素単位で移動でき、また、垂直方向のｍ列分の画素データが記憶されるときには水平方向にはｍ画素単位で移動可能となる。
【０１７８】
また、上述では、メモリ・セル・アレイ２０１の各分割領域２０１ａ〜２０１ｅで同時に活性化される分割ワード線を切り換えるために、各分割領域２０１ａ〜２０１ｅの間に切り換え機構２２０（図３３参照）が配されるものを示したが、この切り換え機構２２０の代わりに、上述したメモリブロック１２５のメモリ・セル・アレイ１３１の場合と同様に、図２７に示す切り換え機構１８０Ａ、あるいは図２８に示す切り換え機構１８０Ｂと同様の構成を採用することもできる。ただしこの場合には、メモリ・セル・アレイ２０１は、各ワード線ＷＬ（分割ワード線ＷＬａ〜ＷＬｅで構成される）に平行する、セル選択信号を入力するグローバルワード線を備えている必要がある。
【０１７９】
なお、詳細説明は省略するが、上述したメモリブロック１９１の構成を、上述したメモリブロック１２５の記憶データ側にも採用してもよい。これにより、任意のブロックを構成する全画素データをビット毎に記憶している複数のメモリセル１４０を同時に選択して当該ブロックを構成する全画素データの同時読み出し、または同時書き込みを行うことが可能となる。
【０１８０】
以上説明したように、本実施の形態においては、メモリブロック１２５を構成するメモリセル１４０に論理演算を行う演算機能部が含まれていると共に（図１５参照）、このメモリブロック１２５に演算データを用いて数値演算を行うための演算補助セル１３４ｄ（図１０，図１２参照）を有するものであり、幅の広いデータ・バスを用いて処理回路にデータを伝送することなく、高速かつ効率的に所望の演算処理を行わせることができる。
【０１８１】
また、メモリブロック１２５において、記憶データの書き込み、読み出しは、複数のビット線ＢＬ，/ＢＬ、複数のワード線ＷＬを用いて行われるのに対して、演算データＤ0〜Ｄm-1の出力は、複数の参照データ入力線ＲＤＬ，/ＲＤＬ、複数の演算データ出力線ＤＡＬ，ＤＢＬおよび複数のセル選択線ＷＬＦを用いて行われるものであり（図９、図１１参照）、記憶データの書き込み、読み出しと、演算データの出力とを独立して行うことができ、全体としてより柔軟で効率的な処理を行うことができる。
【０１８２】
また、探索フレームメモリ１２４を構成するメモリブロック１２５において、メモリ・セル・アレイ１３１のマトリックス状に配された複数のメモリセル１４０の領域が、セル選択線ＷＬＦに沿う方向に分割された複数の分割領域１３１ａ〜１３１ｅからなり、複数のセル選択線ＷＬＦが、それぞれ、複数の分割領域１３１ａ〜１３１ｅに対応して分割された複数の分割セル選択線ＷＬＦａ〜ＷＬＦｅからなり、各分割領域１３１ａ〜１３１ｅで同時に活性化される分割セル選択線を切り換えるための切り換え機構１８０，１８０Ａ，１８０Ｂが配されるものであり（図２２、図２３、図２７、図２８参照）、分割セル選択線単位で階段状に並ぶ複数のメモリセル１４０の演算データを複数の演算データ出力線ＤＡＬ，ＤＢＬに出力して、演算補助セル１３４ｄで処理できる。
【０１８３】
この場合、１つの分割セル選択線に対応する複数のメモリセル１４０に、画像データを構成する垂直方向または水平方向の整数列分（１列分またはｍ列分（ｍは２以上の整数））の画素データが記憶されるものであり、候補ブロックを構成する複数の画素データに対応した演算データを、同時に複数の演算データ出力線ＤＡＬ，ＤＢＬに出力でき、これらを用いた数値演算を複数の演算補助セル１５０，１７０（図１９、図２０参照）で同時並行的に行うことができる。したがって、動きベクトルＭＶを求めるための所定の候補ブロックの複数の画素データに係る複数の差分絶対値Ｄ0〜Ｄm-1を同時に得ることができ、データ処理効率を大幅に向上できる。
【０１８４】
また、メモリブロック１２５の参照データ用カラム・アドレス・デコーダ１３４ａのＩ／Ｏゲート（カラム・スイッチ）によるメモリセル１４０の選択により、矩形または十字形等の任意の形状の候補ブロックに対処できる。また、１つの分割セル選択線に対応する複数のメモリセル１４０に、画像データを構成する垂直方向または水平方向の整数列分の画素データを記憶しているので、切り換え機構１８０（１８０Ａ，１８０Ｂ）とＩ／Ｏゲート（カラム・スイッチ）の共働により、候補ブロックの位置を水平、垂直の双方向に容易に移動できる。
【０１８５】
また、参照フレームメモリ１２３を構成するメモリブロック１９１において、メモリ・セル・アレイ２０１のマトリックス状に配された複数のメモリセル２１０の領域が、ワード線に沿う方向に分割された複数の分割領域２０１ａ〜２０１ｅからなり、複数のワード線ＷＬが、それぞれ、複数の分割領域２０１ａ〜２０１ｅに対応して分割された複数の分割ワード線ＷＬａ〜ＷＬｅからなり、各分割領域２０１ａ〜２０１ｅで同時に選択される分割セル選択線を切り換えるための切り換え機構２２０が配されるものであり（図３２，図３３参照）、分割ワード線単位で階段状に並ぶ複数のメモリセル２１０を同時に選択できる。
【０１８６】
この場合、１つの分割ワード線に対応する複数のメモリセル１４０に、画像データを構成する垂直方向または水平方向の整数列分（１列分またはｍ列分（ｍは２以上の整数））の画素データが記憶されるものであり、参照ブロックを構成する複数の画素データを同時に読み出すことができ、それを探索フレームメモリ１２４に同時に供給でき、処理の高速化を図ることができる。
【０１８７】
また、メモリブロック１９１の記憶データ用カラム・アドレス・デコーダ２０２ａのＩ／Ｏゲート（カラム・スイッチ）によるメモリセル２１０の選択により、矩形または十字形等の任意の形状の参照ブロックに対処できる。また、１つの分割ワード線に対応する複数のメモリセル２１０に、画像データを構成する垂直方向または水平方向の整数列分の画素データを記憶しているので、切り換え機構２２０とＩ／Ｏゲート（カラム・スイッチ）の共働により、参照ブロックの位置を水平、垂直の双方向に容易に移動できる。
【０１８８】
また、探索フレームメモリ１２４は、複数、例えば４個のメモリブロック１２５ａ〜１２５ｄで構成され、これらには探索フレームの左上、右上、左下、右下の各部分の境界部に対応して重複した画素データが記憶されるものであり、所定の候補ブロックの中心画素の範囲が、探索フレームの左上、右上、左下、右下の各部分にある場合には、それぞれメモリブロック１２５ａ，１２５ｂ，１２５ｃ，１２５ｄのみを活性化させればよく、消費電力を少なく抑えることができる。
【０１８９】
また、参照フレームメモリ１２３は、複数、例えば４個のメモリブロック１９１ａ〜１９１ｄで構成され、これらには参照フレームの左上、右上、左下、右下の各部分の境界部に対応して重複した画素データが記憶されるものであり、所定の参照ブロックの中心画素の範囲が、参照フレームの左上、右上、左下、右下の各部分にある場合には、それぞれメモリブロック１９１ａ，１９１ｂ，１９１ｃ，１９１ｄのみを活性化させればよく、消費電力を少なく抑えることができる。
【０１９０】
このように、探索フレームメモリ１２４，参照フレームメモリ１２３においては、それぞれ候補ブロックの画素データに係る演算データ、参照ブロックの画素データを得るために、いずれか１個のメモリブロックのみを活性化すればよく、従って他のメモリブロックに関しては他の処理のために使用することも可能となる。これにより、複雑な処理を効率よく行うことが可能となる。
【０１９１】
また、上述した参照フレームメモリ１２３、探索フレームメモリ１２４を使用して構成される動きベクトル検出回路１１１および動き補償予測符号化装置１００では、動きベクトルＭＶの検出のための処理の高速化、効率化を図ることができる。
【０１９２】
なお、上述実施の形態において、探索フレームメモリ１２４はメモリブロック１２５ａ〜１２５ｄからなり、これらのメモリブロック１２５ａ〜１２５ｄからの差分絶対値Ｄ0〜Ｄm-1をそのまま出力するものであるが、この探索フレームメモリ１２４に、これら差分絶対値Ｄ0〜Ｄm-1を累積する回路、累積値を格納する回路、さらには累積値から動きベクトルＭＶを検出する回路等の回路ブロックを一体的に有する構成とすることも考えられる。これにより、さらに処理の高速化、効率化を図ることができる。
【０１９３】
また、上述実施の形態においては、フレームメモリ１２３，１２４を構成する４個のメモリブロックには、それぞれ左上、右上、左下、右下の各部分の画素データが記憶されるものを示したが、それぞれに記憶される画素データを、データ入力順、あるいは画素位置に応じた複数の位相に対応させてもよい。
【０１９４】
また、上述実施の形態においては、動きベクトル検出回路１１１では、判断回路１２８で、差分絶対値の累積値（絶対値和）に基づいて動きベクトルＭＶを検出するものであったが、二乗和または絶対値のｎ乗和などに基づいて動きベクトルを検出するものも同様に構成することができる。その場合、図６に示す動きベクトル検出回路１１１では、フレームメモリ１２４から直接、差分の二乗値あるいは差分のｎ乗値を得るようにすればよい。
【０１９５】
また、上述実施の形態においては、この発明に係る半導体メモリ装置を、動きベクトル検出回路１１１、動き補償予測符号化装置１００に適用したものを示したが、その他の装置にも同様に適用できることは勿論である。
【０１９６】
【発明の効果】
この発明に係る半導体メモリ装置によれば、メモリブロックを構成するメモリセルに論理演算を行う演算機能部が含まれていると共に、このメモリブロックに演算データを用いて数値演算を行うための演算補助セルを有するものであり、幅の広いデータ・バスを用いて処理回路にデータを伝送することなく、高速かつ効率的に所望の演算処理を行わせることができる。
【０１９７】
また、この発明に係る半導体メモリ装置によれば、記憶データの書き込み、読み出しは、複数のビット線、複数のワード線を用いて行われ、演算データの出力は、複数の参照データ入力線、複数の演算データ出力線および複数のセル選択線を用いて行われるものであり、記憶データの書き込み、読み出しと、演算データの出力とを独立して行うことができ、全体としてより柔軟で効率的な処理が可能となる。
【０１９８】
また、この発明に係る半導体メモリ装置によれば、マトリックス状に配された複数のメモリセルの領域は、セル選択線に沿う方向に分割された複数の分割領域からなり、複数のセル選択線は、それぞれ、上記複数の分割領域に対応して分割された複数の分割セル選択線からなり、メモリブロックは、各分割領域で同時に活性化される分割セル選択線を切り換えるための切り換え機構を有するものであり、マトリックス状に配された複数のメモリセルのセル選択線に沿う方向に、分割セル選択線単位で階段状に並ぶ複数のメモリセルの演算データを演算データ出力線に出力して、演算補助セルで処理することが可能となる。
【０１９９】
この場合、画像データを構成する画素データをマトリックス状に配された複数のメモリセルに適切に配置しておくことで、矩形または十字形等の任意の形状の画素ブロックを構成する複数の画素データに対応した演算データを同時に複数の演算データ出力線に出力でき、これらを用いた数値演算を複数の演算補助セルで一括、同時に行うことができ、データ処理効率の大幅な向上を図ることができ、また当該画素ブロックの位置を容易に変更可能となる。例えば、１つの分割セル選択線に対応する複数のメモリセルに、画像データを構成する垂直方向または水平方向の整数列分の画素データが記憶されることにより、上述の画素ブロックを水平方向または垂直方向に整数画素単位で移動させることができ、一方それと直交する方向に１画素単位で移動させることができる。
【０２００】
また、この発明に係る半導体メモリ装置によれば、複数のメモリブロックで構成されることで、必要なメモリブロックのみを活性化させて使用でき、消費電力を少なく抑えることができる。
【０２０１】
また、この発明に係る半導体メモリ装置によれば、１個または２個以上のメモリブロックの他に、メモリブロックより出力される演算データに基づく処理を行う回路ブロックを有するものであり、さらに処理の高速化、効率化を図ることが可能となる。
【０２０２】
また、この発明に係る動きベクトル検出装置および動き補償予測符号化装置は、この発明に係る半導体メモリ装置を用いるものであり、動きベクトル検出のための処理の高速化、効率化を図ることができる。
【図面の簡単な説明】
【図１】実施の形態としての動き補償予測符号化装置の構成を示すブロック図である。
【図２】動き検出のためのブロックマッチング法を説明するための図である。
【図３】動き検出のためのブロックマッチング法を説明するための図である。
【図４】動き検出のためのブロックマッチング法を説明するための図である。
【図５】動き検出のためのブロックマッチング法を説明するための図である。
【図６】動きベクトル検出回路の構成を示すブロック図である。
【図７】探索フレームの画像データを蓄積するフレームメモリ（探索フレームメモリ）の構成を示す図である。
【図８】探索フレームメモリを構成する各メモリブロック間の画素データの重複を説明するための図である。
【図９】探索フレームメモリを構成するメモリブロックの構成例を示す図である。
【図１０】探索フレームメモリを構成するメモリブロックの構成例を示す図である。
【図１１】探索フレームメモリを構成するメモリブロックの他の構成例を示す図である。
【図１２】探索フレームメモリを構成するメモリブロックの他の構成例を示す図である。
【図１３】ＳＲＡＭセルの構成を示す図である。
【図１４】ＤＲＡＭセルの構成を示す図である。
【図１５】演算機能部を有するメモリセルの構成を示す図である。
【図１６】演算機能部を有する他のメモリセルの構成を示す図である。
【図１７】演算機能部を有する他のメモリセルの構成を示す図である。
【図１８】演算機能部を有するさらに他のメモリセルの構成を示す図である。
【図１９】加算、減算用の演算補助セルの構成を示す図である。
【図２０】差分絶対値演算用の演算補助セルの構成を示す図である。
【図２１】差分絶対値を得るための演算補助セル（１画素データ分）の構成を示す図である。
【図２２】探索フレームの画素データとメモリ・セル・アレイ内の記憶位置を示す図である。
【図２３】分割セル選択線の切り換え機構の構成例を示す図である。
【図２４】探索フレームの画素データとメモリ・セル・アレイ内の記憶位置を示す図である。
【図２５】探索フレームの画素データとメモリ・セル・アレイ内の記憶位置を示す図である。
【図２６】探索フレームの画素データとメモリ・セル・アレイ内の記憶位置を示す図である。
【図２７】分割セル選択線の切り換え機構の他の構成例を示す図である。
【図２８】分割セル選択線の切り換え機構のさらに他の構成例を示す図である。
【図２９】参照フレームの画像データを蓄積するフレームメモリ（参照フレームメモリ）の構成を示す図である。
【図３０】参照フレームメモリを構成するメモリブロックの構成例を示す図である。
【図３１】参照フレームメモリを構成するメモリブロックの構成例を示す図である。
【図３２】参照フレームの画素データとメモリ・セル・アレイ内の記憶位置を示す図である。
【図３３】分割ワード線の切り換え機構の構成例を示す図である。
【符号の説明】
１００・・・動き補償予測符号化装置、１０１・・・入力端子、１０２・・・減算器、１０３・・・ＤＣＴ回路、１０４・・・量子化回路、１０５・・・出力端子、１０６・・・逆量子化回路、１０７・・・逆ＤＣＴ回路、１０８・・・加算器、１０９・・・フレームメモリ、１１０・・・動き補償回路、１１１・・・動きベクトル検出回路、１２１・・・コントローラ、１２２・・・入力端子、１２３，１２４・・・フレームメモリ、１２５，１２５ａ〜１２５ｄ・・・メモリブロック、１２６・・・累積器、１２７・・・相関値テーブル、１２８・・・判断回路、１２９・・・出力端子、１３１・・・メモリ・セル・アレイ、１３１ａ〜１３１ｅ・・・分割領域、１３２・・・記憶データ入出力用ポート、１３２ａ・・・記憶データ用カラム・アドレス・デコーダ、１３２ｂ・・・Ｉ／Ｏバッファ、１３２ｃ・・・アドレス・バッファ、１３３・・・記憶データ用ロウ・アドレス・デコーダ、１３３ａ・・・アドレス・バッファ、１３４・・・参照データ入力用ポート＆演算補助セル、１３４ａ・・・参照データ用カラム・アドレス・デコーダ、１３４ｂ・・・アドレス・バッファ、１３４ｃ・・・Ｉ／Ｏバッファ、１３４ｄ・・・演算補助セル、１３５・・・参照データ用ロウ・アドレス・デコーダ、１３５ａ・・・アドレス・バッファ、１３６・・・制御回路、１４０・・・メモリセル、１４１・・・メモリセル部、１５０・・・演算補助セル、１７０・・・演算補助セル、１８０，１８０Ａ，１８０Ｂ・・・切り換え機構、１９１，１９１ａ〜１９１ｅ・・・メモリブロック、２０１・・・メモリ・セル・アレイ、２０２・・・記憶データ入出力用ポート、２０３・・・記憶データ用ロウ・アドレス・デコーダ、２０４・・・制御回路、２１０・・・メモリセル、２２０・・・切り換え機構
【図１】
0004122774.tif 000004
【図２】
0004122774.tif 000005
【図３】
0004122774.tif 000006
【図４】
0004122774.tif 000007
【図５】
0004122774.tif 000008
【図６】
0004122774.tif 000009
【図７】
0004122774.tif 000010
【図８】
0004122774.tif 000011
【図９】
0004122774.tif 000012
【図１０】
0004122774.tif 000013
【図１１】
0004122774.tif 000014
【図１２】
0004122774.tif 000015
【図１３】
0004122774.tif 000016
【図１４】
0004122774.tif 000017
【図１５】
0004122774.tif 000018
【図１６】
0004122774.tif 000019
【図１７】
0004122774.tif 000020
【図１８】
0004122774.tif 000021
【図１９】
0004122774.tif 000022
【図２０】
0004122774.tif 000023
【図２１】
0004122774.tif 000024
【図２２】
0004122774.tif 000025
【図２３】
0004122774.tif 000026
【図２４】
0004122774.tif 000027
【図２５】
0004122774.tif 000028
【図２６】
0004122774.tif 000029
【図２７】
0004122774.tif 000030
【図２８】
0004122774.tif 000031
【図２９】
0004122774.tif 000032
【図３０】
0004122774.tif 000033
【図３１】
0004122774.tif 000034
【図３２】
0004122774.tif 000035
【図３３】
0004122774.tif 000036