(57)【要約】【課題】アクセスパターンの各設定位置で、そのパターンに対応した複数の画素データの同時取得を容易とする。【解決手段】制御部１２０は、開始位置に設定されたパターンＡＣＰで特定されるＮ個の初期アクセス画素のデータが夫々異なるバンクに格納されるように、各画素データをＮ個のバンクに振り分けて格納する。パターンＡＣＰは、複数の中心画素とその周辺画素とからなるパターンである。制御部１４０は、パターンＡＣＰで特定されるＮ個のアクセス画素のデータをＮ個のバンクから同時に読み出し、またパターンＡＣＰの設定位置が画素列方向に移動した際に、Ｎ個のアクセス画素のデータが夫々異なるバンクに格納されているように、画素データを移動する。セレクタ１６０は、Ｎ個の画素データＤo0〜Ｄo(N-1)から、入出力の対応情報ＩＮＦに基づいて、各中心画素に対応した各画素群に対応させて画素データＤ1a〜Ｄ1c，Ｄ2a〜Ｄ2cを出力する。【選択図】        図１
2006323604.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリバンクからなるメモリ部と、
水平または垂直の方向に伸びる画素列が垂直または水平の方向に順次配列された所定画面における各画素列の画素を順に注目画素とし、該注目画素の画素データを、複数の中心画素および各中心画素の周辺に位置する周辺画素からなり、上記所定画面上に設定される複数の画素のパターンであるアクセスパターンの情報に基づき、上記複数のメモリバンクに振り分けて格納するための制御を行うデータ格納制御部と、
上記複数のメモリバンクから、上記アクセスパターンの設定位置を開始位置から画素列方向に移動した各設定位置で、上記アクセスパターンで特定される複数の画素の画素データを同時に取得するための制御を行うデータアクセス制御部と、
上記複数のメモリバンクから同時に取得される上記アクセスパターンで特定される複数の画素の画素データを入力し、入出力の対応情報に基づいて、それぞれ中心画素と該中心画素の周辺に位置する周辺画素からなる各画素群を構成するそれぞれの画素に対応させて複数の画素データを出力するセレクタとを備え、
上記データ格納制御部は、
上記設定位置の開始位置における上記アクセスパターンで特定される複数の画素に基づき、上記注目画素が上記複数の画素のいずれかに最初に該当するとき、上記注目画素の画素データを最初のメモリバンクに格納することを開始し、その後上記注目画素が上記複数の画素のいずれかに該当するとき、上記注目画素の画素データを格納するメモリバンクを順次切り替え、
上記データアクセス制御部は、
上記設定位置が所定位置にあるとき、該所定位置における上記アクセスパターンで特定される複数の画素の画素データを上記複数のメモリバンクから同時に読み出し、上記設定位置が上記画素列方向に移動した際に、上記設定位置における上記アクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納されているように、上記所定のメモリバンクから読み出した画素データを該画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納する
ことを特徴とするデータアクセス装置。
【請求項２】
上記データ格納制御部は、
上記注目画素が、上記設定位置の開始位置における上記アクセスパターンで特定される複数の画素に一致する画素であるか否かを判定する一致判定部と、
上記一致判定部の判定出力に基づいて、上記注目画素毎に、上記メモリ部に対する書き込みアドレスを生成するアドレス生成部とを有する
ことを特徴とする請求項１に記載のデータアクセス装置。
【請求項３】
上記データ格納制御部は、
上記複数のメモリバンクのそれぞれに対応した読み出し開始アドレスおよび書き込み開始アドレスを生成する開始アドレス生成部をさらに有し、
上記開始アドレス生成部は、それぞれのメモリバンクに対して、最初の画素データが格納されたアドレスを上記読み出し開始アドレスとし、最後の画素データが格納されたアドレスの次のアドレスを上記書き込み開始アドレスとする
ことを特徴とする請求項２に記載のデータアクセス装置。
【請求項４】
上記データ格納制御部は、
上記複数のメモリバンクのそれぞれに対応した、読み出しを行うか否かを示す読み出しフラグを生成する読み出しフラグ生成部をさらに有し、
上記読み出しフラグ生成部は、上記複数の画素のいずれかに対応する画素データが格納されるメモリバンクについての読み出しフラグを読み出しを行うことを示すフラグオンの状態とし、その他のメモリバンクについての読み出しフラグを読み出しを行わないことを示すフラグオフの状態とする
ことを特徴とする請求項２に記載のデータアクセス装置。
【請求項５】
上記データアクセス制御部は、
上記複数のメモリバンクの読み出しアドレスを生成する読み出しアドレス生成部と、
上記複数のメモリバンクの書き込みアドレスを生成する書き込みアドレス生成部とを有し、
上記読み出しアドレス生成部は、
上記複数のメモリバンクのそれぞれに対し、
最初の読み出しアドレスを、外部から与えられる読み出し開始アドレスにセットし、各設定位置で画素データの読み出しが行われるとき、上記読み出しアドレスをインクリメントして次の読み出しアドレスを生成し、
上記書き込みアドレス生成部は、
上記複数のメモリバンクのそれぞれに対し、
最初の書き込みアドレスを、外部から与えられる書き込み開始アドレスにセットし、各設定位置で画素データの書き込みが行われるとき、上記書き込みアドレスをインクリメントして次の書き込みアドレスを生成する
ことを特徴とする請求項１に記載のデータアクセス装置。
【請求項６】
上記外部から与えられる上記書き込み開始アドレスおよび上記読み出し開始アドレスは、上記データ格納制御部から与えられる
ことを特徴とする請求項５に記載のデータアクセス装置。
【請求項７】
上記データアクセス制御部は、
上記複数のメモリバンクの、読み出しを行うか否かを示す読み出しフラグを生成する読み出しフラグ生成部をさらに備え、
上記読み出しフラグ生成部は、
上記複数のメモリバンクのそれぞれに対し、外部から与えられる読み出しフラグに基づき、上記設定位置の開始位置における上記アクセスパターンで特定される複数の画素の画素データのいずれかが格納されているメモリバンクについての読み出しフラグを読み出しを行うことを示すフラグオンの状態とし、その他のメモリバンクについての読み出しフラグを読み出しを行わないことを示すフラグオフの状態とする
ことを特徴とする請求項５に記載のデータアクセス装置。
【請求項８】
上記外部から与えられる上記読み出しフラグは、上記データ格納制御部から与えられる
ことを特徴とする請求項７に記載のデータアクセス装置。
【請求項９】
上記アクセスパターンの情報を発生すると共に、上記入出力の対応情報を発生するセレクタ設定部をさらに備え、
上記セレクタ設定部は、
上記複数の中心画素の座標情報および上記周辺の情報に基づいて、上記各画素群を構成するそれぞれの画素の座標情報を得るアクセスパターン拡張部と、
上記アクセスパターン拡張部で得られる上記各画素群を構成するそれぞれの画素の座標情報に基づいて、該各画素群を構成するそれぞれの画素が上記注目画素となる順番を示す順番情報を求め、上記各画素群を構成するそれぞれの画素の座標情報を上記順番情報で表した上記アクセスパターンの情報を発生するソート部と、
上記ソート部で求められた、上記各画素群を構成するそれぞれの画素の順番情報に基づいて、上記入出力の対応情報を発生するセレクタ位置設定部とを有する
ことを特徴とする請求項１に記載のデータアクセス装置。
【請求項１０】
水平または垂直の方向に伸びる画素列が垂直または水平の方向に順次配列された所定画面における各画素列の画素を順に注目画素とし、該注目画素の画素データを、複数の中心画素および各中心画素の周辺に位置する周辺画素からなり、上記所定画面上に設定される複数の画素のパターンであるアクセスパターンの情報に基づき、上記複数のメモリバンクに振り分けて格納するデータ格納工程と、
上記複数のメモリバンクから、上記アクセスパターンの設定位置を開始位置から画素列方向に移動した各設定位置で、上記アクセスパターンで特定される複数の画素の画素データを同時に取得するデータアクセス工程と、
上記複数のメモリバンクから同時に取得される上記アクセスパターンで特定される複数の画素の画素データを入力し、入出力の対応情報に基づいて、それぞれ中心画素と該中心画素の周辺に位置する周辺画素からなる各画素群を構成するそれぞれの画素に対応させて複数の画素データを出力するセレクト工程とを備え、
上記データ格納工程では、
上記設定位置の開始位置における上記アクセスパターンで特定される複数の画素に基づき、上記注目画素が上記複数の画素のいずれかに最初に該当するとき、上記注目画素の画素データを最初のメモリバンクに格納することを開始し、その後上記注目画素が上記複数の画素のいずれかに該当するとき、上記注目画素の画素データを格納するメモリバンクを順次切り替え、
上記データアクセス工程では、
上記設定位置が所定位置にあるとき、該所定位置における上記アクセスパターンで特定される複数の画素の画素データを上記複数のメモリバンクから同時に読み出し、上記設定位置が上記画素列方向に移動した際に、上記設定位置における上記アクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納されているように、上記所定のメモリバンクから読み出した画素データを該画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納する
ことを特徴とするデータアクセス方法。
【請求項１１】
水平または垂直の方向に伸びる画素列が垂直または水平の方向に順次配列された所定画面における各画素列の画素を順に注目画素とし、該注目画素の画素データを、複数の中心画素および各中心画素の周辺に位置する周辺画素からなり、上記所定画面上に設定される複数の画素のパターンであるアクセスパターンの情報に基づき、上記複数のメモリバンクに振り分けて格納するデータ格納工程と、
上記複数のメモリバンクから、上記アクセスパターンの設定位置を開始位置から画素列方向に移動した各設定位置で、上記アクセスパターンで特定される複数の画素の画素データを同時に取得するデータアクセス工程と、
上記複数のメモリバンクから同時に取得される上記アクセスパターンで特定される複数の画素の画素データを入力し、入出力の対応情報に基づいて、それぞれ中心画素と該中心画素の周辺に位置する周辺画素からなる各画素群を構成するそれぞれの画素に対応させて複数の画素データを出力するセレクト工程とを備え、
上記データ格納工程では、
上記設定位置の開始位置における上記アクセスパターンで特定される複数の画素に基づき、上記注目画素が上記複数の画素のいずれかに最初に該当するとき、上記注目画素の画素データを最初のメモリバンクに格納することを開始し、その後上記注目画素が上記複数の画素のいずれかに該当するとき、上記注目画素の画素データを格納するメモリバンクを順次切り替え、
上記データアクセス工程では、
上記設定位置が所定位置にあるとき、該所定位置における上記アクセスパターンで特定される複数の画素の画素データを上記複数のメモリバンクから同時に読み出し、上記設定位置が上記画素列方向に移動した際に、上記設定位置における上記アクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納されているように、上記所定のメモリバンクから読み出した画素データを該画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納する
データアクセス方法をコンピュータに実行させるためのプログラム。
【請求項１２】
水平または垂直の方向に伸びる画素列が垂直または水平の方向に順次配列された所定画面における各画素列の画素を順に注目画素とし、該注目画素の画素データを、複数の中心画素および各中心画素の周辺に位置する周辺画素からなり、上記所定画面上に設定される複数の画素のパターンであるアクセスパターンの情報に基づき、上記複数のメモリバンクに振り分けて格納するデータ格納工程と、
上記複数のメモリバンクから、上記アクセスパターンの設定位置を開始位置から画素列方向に移動した各設定位置で、上記アクセスパターンで特定される複数の画素の画素データを同時に取得するデータアクセス工程と、
上記複数のメモリバンクから同時に取得される上記アクセスパターンで特定される複数の画素の画素データを入力し、入出力の対応情報に基づいて、それぞれ中心画素と該中心画素の周辺に位置する周辺画素からなる各画素群を構成するそれぞれの画素に対応させて複数の画素データを出力するセレクト工程とを備え、
上記データ格納工程では、
上記設定位置の開始位置における上記アクセスパターンで特定される複数の画素に基づき、上記注目画素が上記複数の画素のいずれかに最初に該当するとき、上記注目画素の画素データを最初のメモリバンクに格納することを開始し、その後上記注目画素が上記複数の画素のいずれかに該当するとき、上記注目画素の画素データを格納するメモリバンクを順次切り替え、
上記データアクセス工程では、
上記設定位置が所定位置にあるとき、該所定位置における上記アクセスパターンで特定される複数の画素の画素データを上記複数のメモリバンクから同時に読み出し、上記設定位置が上記画素列方向に移動した際に、上記設定位置における上記アクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納されているように、上記所定のメモリバンクから読み出した画素データを該画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納する
データアクセス方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、所定画面上に設定される複数の画素のパターンをアクセスパターンとし、このアクセスパターンの設定位置を開始位置から画素列方向に順次移動した各設定位置で、このアクセスパターンで特定される複数の画素の画素データを同時に取得するデータアクセス装置、データアクセス方法、プログラムおよび記録媒体に関する。
【０００２】
詳しくは、この発明は、アクセスパターンの設定位置を開始位置から画素列方向に順次移動した各設定位置で、当該アクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納された状態として、当該複数の画素データを同時にアクセスできるようにしたことによって、当該複数の画素データの同時取得を容易としたデータアクセス装置等に係るものである。
【背景技術】
【０００３】
従来、半導体メモリＭＹは、図３１に示すように、ワード線ＷＬとビット線ＢＬを指定してメモリセルＭＣをアクセスする構造となっており、指定されたワード線ＷＬとビット線ＢＬが交差する位置にあるメモリセルＭＣに格納されたデータが読み出される。このような構造の半導体メモリＭＹでは、複数のワード線ＷＬで同じビット線ＢＬを共有している。したがって、図３２のように、例えば２つのワード線ＷＬ１，ＷＬ２を指定すると、ビット線ＢＬにはこれらワード線ＷＬ１，ＷＬ２のデータが混じり合って出てくるため、異なるワード線ＷＬのデータには同時アクセスできない。
【０００４】
これに対して、図３３のように、メモリＭＹを複数のメモリバンクＢＫ０〜ＢＫｎ−１に分け、それぞれのメモリバンクＢＫ０〜ＢＫｎ−１に異なるアドレスを指定することで、複数のワード線ＷＬのデータに同時にアクセスできるが、メモリバンク内の異なるワード線ＷＬのデータには同時にアクセスできない。
【０００５】
一般に、同時に複数データにアクセスが可能なのは、その複数データが異なるメモリバンクに格納されているか、あるいはその複数データが同一ワード線上に格納されているかのいずれかである。
【０００６】
また従来、入力データに含まれる特定のデータ配列を認識することにより、パターン認識や動き検出等の処理が行われている。例えば、数ラインの画素データを蓄積でき画素単位で出力できるバッファメモリと、数ビット幅データを処理し得る複数のプロセッサエレメントを含み、この複数のプロセッサエレメントで同時並行してデータ処理ができるデータ処理器と、マッチング参照データと制御データを格納する制御情報メモリとを備え、データ処理器の各プロセッサエレメントが、バッファメモリが出力した画像データの中の、自己に宛てられた注目画素中心のマトリクスの画素データ群を、閾値を用いて２値化して該プロセッサエレメントが処理可能なシリアル配列のビット幅に区切った対象データに変換し、同形式で制御情報メモリにあった参照データと合致するか否かを判定することが行われている（例えば、特許文献１参照）。
【０００７】
また、動画像の処理の分野において、動き、すなわち、時間的に異なる画像中の物体の動き方向と大きさ（または速さ）が用いられており、例えば画像の高能率符号化における動き補償フレーム間符号化や、フレーム間時間領域フィルタによるテレビジョン雑音低減装置における動きによるパラメータ制御等に動きが用いられる。動きを求める動き検出方法としては、ブロックマッチング法が知られている。本件出願人は、画像信号中の動きを検出する動き検出方法において、（ａ）１画面全体または１画面を複数に分割した比較的大きなブロック毎に、マッチング法によって積算値テーブルを生成し、この積算値テーブルを用いて、１画面全体または１画面を複数に分割した比較的大きなブロック毎に、１または複数の候補ベクトルを抽出するステップと、（ｂ）この候補ベクトルのみを対象としてマッチングを行い、１画素または比較的小さいブロック毎に動きベクトルを検出するステップとからなる２ステップの動き検出方法を先に提案している。この２ステップの動き検出方法では、画像の動き検出を２ステップ方式の代表点マッチングにより行う代表点マッチング、ベクトル割り当ての２ステップの過程において、いずれも画面内における任意の複数の画素データを同時に読み出す必要がある（例えば、特許文献２参照）。
【０００８】
【特許文献１】特開２００３−２０３２３６号公報
【特許文献２】特開２００１−６１１５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ここで、水平または垂直の方向に伸びる画素列が垂直または水平の方向に順次配列された所定画面の上に複数の画素のパターンをアクセスパターンとして設定し、このアクセスパターンの設定位置を開始位置から画素列方向に１画素ずつ順に移動した各設定位置で、アクセスパターンで特定される複数の画素の画素データを同時に取得することを考える。
【００１０】
例えば、図３４に示すように、水平方向に伸びる画素列が垂直方向に順次配列された画面ＳＲＮの上に５個の画素ＩＭ１〜ＩＭ５のパターンをアクセスパターンＡＣＰとして設定し、このアクセスパターンＡＣＰの設定位置を開始位置から画素列方向に移動していく場合を考える。この場合、画素列方向は水平方向であり、アクセスパターンＡＣＰの設定位置はラスタスキャン順に移動していく。また、図３４の「□」は１画素を示しており、この図３４におけるアクセスパターンＡＣＰの設定位置は、開始位置を示している。
【００１１】
この画面ＳＲＮの各画素列の画素のデータを、左上の画素からラスタスキャン順に、図３５に示すように、５個のメモリバンクＢＫ０〜ＢＫ４に１画素ずつ順に格納したとする。図３５の□内の数字はバンクアドレス０〜４を示している。この場合、アクセスパターンＡＣＰの設定位置が開始位置にあるとき、図３６に示すように、アクセスパターンＡＣＰで特定される５個の画素ＩＭ１〜ＩＭ５の画素データは、メモリバンクＢＫ０〜ＢＫ４の○印で示すアドレス位置に格納されていることから、５個の画素データに同時にアクセスして読み出すことができる。
【００１２】
アクセスパターンＡＣＰの設定位置が開始位置から１画素ずつ移動して４画素の移動までは、上述した設定位置が開始位置にある場合と同様に、５個の画素データに同時にアクセスして読み出すことができる。しかし、図３７に示すように、アクセスパターンＡＣＰの設定位置が５画素移動したとき、アクセスパターンＡＣＰで特定される５個の画素ＩＭ１〜ＩＭ５の画素データは、図３８に示すように、メモリバンクＢＫ０〜ＢＫ４の○印で示すアドレス位置に格納されており、メモリバンクＢＫ０で複数のワード線のデータにアクセスすることが必要になるので、５個の画素データに同時アクセスして読み出すことができなくなる。
【００１３】
アクセスパターンによっては、格納場所を上手く選べば同時にアクセスできるが、どのようなアクセスパターンでも複数の画素データに同時にアクセスできるようにするためには、１メモリバンクが１ワード線だけで構成されるぐらい細かく、バンク分割する必要がある。しかし、細かく分割するほどバンク数は多くなり、（ａ）それぞれのバンクに異なるアドレスを指定するのでアドレスバスが膨大になる、（ｂ）デコーダやセレクタがバンクの数だけ必要なのでチップ面積が大きくなる、（ｃ）同時に複数のバンクが動作するため消費電力が多くなる、等の問題点が出てくる。
【００１４】
なお、アクセスパターンに対応した複数の画素データに時分割でアクセスし、キャッシュやバッファに一時記憶し、見かけ上の同時アクセスを達成することが提案されているが（実開昭６３−３５１４６号公報、実開平８−８９６号公報参照）、時間的な遅れが発生するという問題点があった。
【００１５】
この発明の目的は、アクセスパターンの設定位置を開始位置から画素列方向に移動した各設定位置で、当該アクセスパターンで特定される複数の画素の画素データを同時に取得することを容易に行い得るようにすることにある。
【課題を解決するための手段】
【００１６】
この発明の概念は、
複数のメモリバンクからなるメモリ部と、
水平または垂直の方向に伸びる画素列が垂直または水平の方向に順次配列された所定画面における各画素列の画素を順に注目画素とし、該注目画素の画素データを、複数の中心画素および各中心画素の周辺に位置する周辺画素からなり、上記所定画面上に設定される複数の画素のパターンであるアクセスパターンの情報に基づき、上記複数のメモリバンクに振り分けて格納するための制御を行うデータ格納制御部と、
上記複数のメモリバンクから、上記アクセスパターンの設定位置を開始位置から画素列方向に移動した各設定位置で、上記アクセスパターンで特定される複数の画素の画素データを同時に取得するための制御を行うデータアクセス制御部と、
上記複数のメモリバンクから同時に取得される上記アクセスパターンで特定される複数の画素の画素データを入力し、入出力の対応情報に基づいて、それぞれ中心画素と該中心画素の周辺に位置する周辺画素からなる各画素群を構成するそれぞれの画素に対応させて複数の画素データを出力するセレクタとを備え、
上記データ格納制御部は、
上記設定位置の開始位置における上記アクセスパターンで特定される複数の画素に基づき、上記注目画素が上記複数の画素のいずれかに最初に該当するとき、上記注目画素の画素データを最初のメモリバンクに格納することを開始し、その後上記注目画素が上記複数の画素のいずれかに該当するとき、上記注目画素の画素データを格納するメモリバンクを順次切り替え、
上記データアクセス制御部は、
上記設定位置が所定位置にあるとき、該所定位置における上記アクセスパターンで特定される複数の画素の画素データを上記複数のメモリバンクから同時に読み出し、上記設定位置が上記画素列方向に移動した際に、上記設定位置における上記アクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納されているように、上記所定のメモリバンクから読み出した画素データを該画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納する
ことを特徴とするデータアクセス装置にある。
【００１７】
この発明においては、水平または垂直の方向に伸びる画素列が垂直または水平の方向に順次配列された所定画面における各画素列の画素を順に注目画素とし、この注目画素の画素データを複数のメモリバンクに振り分けて格納する。
【００１８】
例えば、データ格納制御部は、注目画素が、開始位置に設定されたアクセスパターンで特定される複数の画素（初期アクセス画素）に一致する画素であるか否かを判定する一致判定部と、この一致判定部の判定出力に基づいて、注目画素毎に、メモリ部に対する書き込みアドレスを生成するアドレス生成部とを有する。
【００１９】
この場合、注目画素がアクセスパターンで特定される複数の画素のいずれかに最初に該当するとき、この注目画素の画素データを最初のメモリバンクに格納することが開始される。その後、注目画素が複数の画素のいずれかに該当するとき、この注目画素の画素データを格納するメモリバンクが順次切り替えられる。これにより、開始位置に設定されたアクセスパターンで特定される複数の初期アクセス画素の画素データはそれぞれ異なるメモリバンクに格納された状態となって同時アクセスが可能となる。
【００２０】
また、この発明においては、アクセスパターンの設定位置が開始位置から画素列方向に移動した各設定位置で、アクセスパターンで特定される複数の画素（アクセス画素）の画素データを、複数のメモリバンクから同時に取得する。
【００２１】
例えば、データアクセス制御部は、複数のメモリバンクの読み出しアドレスを生成する読み出しアドレス生成部と、複数のメモリバンクの書き込みアドレスを生成する書き込みアドレス生成部とを有する。そして、読み出しアドレス生成部は、複数のメモリバンクのそれぞれに対し、最初の読み出しアドレスを、外部から与えられる読み出し開始アドレスにセットし、各設定位置で画素データの読み出しが行われるとき、読み出しアドレスをインクリメントして次の読み出しアドレスを生成する。また、書き込みアドレス生成部は、複数のメモリバンクのそれぞれに対し、最初の書き込みアドレスを、外部から与えられる書き込み開始アドレスにセットし、各設定位置で画素データの書き込みが行われるとき、書き込みアドレスをインクリメントして次の書き込みアドレスを生成する。
【００２２】
また例えば、データアクセス制御部は、複数のメモリバンクの、読み出しを行うか否かを示す読み出しフラグを生成する読み出しフラグ生成部をさらに備える。そして、この読み出しフラグ生成部は、複数のメモリバンクのそれぞれに対し、外部から与えられる読み出しフラグに基づき、設定位置の開始位置におけるアクセスパターンで特定される複数の画素の画素データのいずれかが格納されているメモリバンクについての読み出しフラグを読み出しを行うことを示すフラグオンの状態とし、その他のメモリバンクについての読み出しフラグを読み出しを行わないことを示すフラグオフの状態とする。
【００２３】
この場合、アクセスパターンの設定位置が所定位置にあるとき、この所定位置におけるアクセスパターンで特定される複数の画素（アクセス画素）の画素データが複数のメモリバンクから同時に読み出されると共に、この設定位置が画素列方向に移動した際に、設定位置におけるアクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納されているように、所定のメモリバンクから読み出した画素データは、その画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納される。これにより、アクセスパターンの設定位置が開始位置から移動した全ての位置で、当該アクセスパターンで特定される複数のアクセス画素の画素データがそれぞれ異なるメモリバンクに格納された状態となって同時アクセスが可能となる。
【００２４】
例えば、データアクセス制御部に与えられる読み出しフラグは、データ格納制御部から与えられる。この場合、データ格納制御部は、複数のメモリバンクのそれぞれに対応した、読み出しを行うか否かを示す読み出しフラグを生成する読み出しフラグ生成部をさらに有する。そして、この読み出しフラグ生成部は、複数の画素のいずれかに対応する画素データが格納されるメモリバンクについての読み出しフラグを読み出しを行うことを示すフラグオンの状態とし、その他のメモリバンクについての読み出しフラグを読み出しを行わないことを示すフラグオフの状態とする。
【００２５】
このように、データ格納制御部からデータアクセス制御部に読み出しフラグを与えることで、例えばこれらデータ格納制御部およびデータアクセス制御部を制御する制御装置が、アクセスパターンの情報に基づいて読み出しフラグを生成して、データアクセス制御部に与えることが必要でなくなる。
【００２６】
また例えば、データアクセス制御部に与えられる読み出し開始アドレスおよび書き込み開始アドレスは、データ格納制御部から与えられる。この場合、データ格納制御部は、複数のメモリバンクのそれぞれに対応した、読み出し開始アドレスおよび書き込み開始アドレスを生成する開始アドレス生成部をさらに有する。そして、この開始アドレス生成部は、それぞれのメモリバンクに対して、最初の画素データが格納されたアドレスを読み出し開始アドレスとし、最後の画素データが格納されたアドレスの次のアドレスを書き込み開始アドレスとする。
【００２７】
このように、データ格納制御部からデータアクセス制御部に読み出し開始アドレスおよび書き込み開始アドレスを与えることで、例えばこれらデータ格納制御部およびデータアクセス制御部を制御する制御装置が、アクセスパターンの情報に基づいて読み出し開始アドレスおよび書き込み開始アドレスを生成して、データアクセス制御部に与えることが必要でなくなる。
【００２８】
また、この発明において、アクセスパターンは、複数の中心画素および各中心画素の周辺に位置する周辺画素からなり、所定画面上に設定される複数の画素のパターンである。ここで、一個の中心画素と当該一個の中心画素の周辺に位置する周辺画素とからなるまとまりを画素群と呼ぶ。この場合、複数の中心画素の位置関係によっては、複数の中心画素に対応した複数の画素群を構成するそれぞれの画素が注目画素となる順序は、各画素群毎に連続したものとならない。またこの場合、複数の中心画素の位置関係によっては、複数の画素群を構成する画素同士が重なり、アクセスパターンを構成する画素の個数は、一個の画素群を構成する画素の個数を画素群の個数倍したものより小さくなる。
【００２９】
上述したように、複数のメモリバンクからアクセスパターンで特定される複数の画素の画素データが同時に取得される。この場合、複数の画素は、初期格納時において、注目画素となる順番で並んだものとなる。この発明においては、複数のメモリバンクから同時に取得される複数の画素の画素データから、入出力の対応情報に基づいて、各画素群を構成するそれぞれの画素に対応させて複数の画素データを選択的に出力する。これにより、各画素群毎に連続した画素データを得ることが可能となる。
【００３０】
例えば、アクセスパターンの情報および入出力の対応情報は、セレクタ設定部で発生される。このセレクタ設定部は、複数の中心画素の座標情報および周辺の情報に基づいて、各画素群を構成するそれぞれの画素の座標情報を得るアクセスパターン拡張部と、このアクセスパターン拡張部で得られる各画素群を構成するそれぞれの画素の座標情報に基づいて、各画素群を構成するそれぞれの画素が注目画素となる順番情報を求め、各画素群を構成するそれぞれの画素の座標情報を順番情報で表したアクセスパターンの情報を発生するソート部と、このソート部で求められた、各画素群を構成するそれぞれの画素の順番情報に基づいて、入出力の対応情報を発生するセレクタ位置設定部とを有する。これにより、複数の中心画素の座標情報と周辺の情報を与えて、任意のアクセスパターンを設定できる。
【発明の効果】
【００３１】
この発明によれば、アクセスパターンの設定位置を開始位置から画素列方向に順次移動した各設定位置で、当該アクセスパターンで特定される複数の画素の画素データがそれぞれ異なるメモリバンクに格納された状態として、当該複数の画素データを同時にアクセスできるようにしたものであり、当該複数の画素データの同時取得を容易に行うことができる。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照しながら、この発明の実施の形態について説明する。図１は、実施の形態としてのデータアクセス装置１００の構成を示している。
【００３３】
このデータアクセス装置１００は、メモリ部１１０と、データ格納制御部１２０と、データアクセス制御部１４０と、セレクタ１６０と、セレクタ設定部１７０とを備えている。
【００３４】
メモリ部１１０は、図示しない制御装置から入力端子１８０を介して与えられる制御信号ＳＣＬに基づいて動作する。このメモリ部１１０には、初期格納時に、入力端子１１１から、格納すべき所定画面の画素データＤｉが入力される。ここで、所定画面は、水平方向に伸びる画素列が垂直方向に順次配列された構成となっており、メモリ部１１０には、各画素列の画素データが、注目画素としてラスタスキャン順に入力されていく。メモリ部１１０は、複数個のメモリバンクからなっている。本実施の形態においては、後述するように、画面上に設定される複数の画素のパターンであるアクセスパターンＡＣＰが最大６画素で構成されることから、メモリ部１１０は６個のメモリバンクＢＫ０〜ＢＫ５からなっている。このメモリ部１１０に入力されていく各注目画素の画素データは、アクセスパターンＡＣＰを構成する画素の個数がＮ個（Ｎ≦６）であるとき、Ｎ個のメモリバンクＢＫ０〜ＢＫ(N-1)に振り分けて格納される。
【００３５】
図２〜図４は、それぞれ、本実施の形態で取り扱う、画面ＳＲＮ上に設定されるアクセスパターンＡＣＰの一例を示している。本実施の形態では、アクセスパターンＡＣＰは、２個の中心画素ＩＭ１，ＩＭ２および各中心画素の上下に位置する周辺画素のパターンとされる。ここで、一個の中心画素と当該一個の中心画素の周辺に位置する周辺画素とからなるまとまりを画素群と呼ぶ。この図２〜図４の「□」は、画面ＳＲＮを構成する画素を示している。また、図２〜図４に示すアクセスパターンＡＣＰの設定位置は、それぞれ、その開始位置である。また、本実施の形態では、画面の水平方向に伸びる画素列の画素数は２２個とされている。
【００３６】
図２に示すアクセスパターンＡＣＰは、２個の中心画素ＩＭ１，ＩＭ２が、水平方向に２画素ずれ、垂直方向に２画素ずれた状態となっている。中心画素ＩＭ１と周辺画素ＩＭ1U，ＩＭ1Dとから、中心画素ＩＭ１に対応した画素群Ｇ１が構成されている。また、中心画素ＩＭ２と周辺画素ＩＭ2U，ＩＭ2Dとから、中心画素ＩＭ２に対応した画素群Ｇ２が構成されている。この場合、２個の画素群Ｇ１，Ｇ２を構成するそれぞれの画素が注目画素となる順序は、各画素群毎に連続したものとなる。ここで、画素ＩＭ１，ＩＭ２，ＩＭ1U，ＩＭ1D，ＩＭ2U，ＩＭ2Dに付された数字は、注目画素となる順序を示している。またこの場合、２個の画素群Ｇ１，Ｇ２を構成する画素同士の重なりはなく、アクセスパターンＡＣＰを構成する画素の個数は６個であり、一個の画素群を構成する画素の個数を２倍したものとなっている。
【００３７】
図３に示すアクセスパターンＡＣＰは、２個の中心画素ＩＭ１，ＩＭ２が、水平方向に２画素ずれ、垂直方向に１画素ずれた状態となっている。中心画素ＩＭ１と周辺画素ＩＭ1U，ＩＭ1Dとから、中心画素ＩＭ１に対応した画素群Ｇ１が構成されている。また、中心画素ＩＭ２と周辺画素ＩＭ2U，ＩＭ2Dとから、中心画素ＩＭ２に対応した画素群Ｇ２が構成されている。この場合、２個の画素群Ｇ１，Ｇ２を構成するそれぞれの画素が注目画素となる順序は、各画素群毎に連続したものとならない。ここで、画素ＩＭ１，ＩＭ２，ＩＭ1U，ＩＭ1D，ＩＭ2U，ＩＭ2Dに付された数字は、注目画素となる順序を示している。またこの場合、２個の画素群Ｇ１，Ｇ２を構成する画素同士の重なりはなく、アクセスパターンＡＣＰを構成する画素の個数は６個であり、一個の画素群を構成する画素の個数を２倍したものとなっている。
【００３８】
図４に示すアクセスパターンＡＣＰは、２個の中心画素ＩＭ１，ＩＭ２が、水平方向に同一位置にあり、垂直方向に１画素ずれた状態となっている。中心画素ＩＭ１，ＩＭ２と周辺画素ＩＭ1Uとから、中心画素ＩＭ１に対応した画素群Ｇ１が構成されている。また、中心画素ＩＭ１，ＩＭ２と周辺画素ＩＭ2Dとから、中心画素ＩＭ２に対応した画素群Ｇ２が構成されている。この場合、２個の画素群Ｇ１，Ｇ２を構成するそれぞれの画素が注目画素となる順序は、各画素群毎に連続したものとならない。ここで、画素ＩＭ１，ＩＭ２，ＩＭ1U，ＩＭ2Dに付された数字は、注目画素となる順序を示している。またこの場合、２個の画素群Ｇ１，Ｇ２を構成する画素同士の重なりがあり、アクセスパターンＡＣＰを構成する画素の個数は４個であり、一個の画素群を構成する画素の個数を２倍したものより小さくなっている。
【００３９】
また、データアクセス時に、アクセスパターンＡＣＰの設定位置が開始位置（図２〜図４参照）からラスタスキャン順に移動していくが、このアクセスパターンＡＣＰが画素列方向に１画素ずつ移動した各設定位置で、当該アクセスパターンＡＣＰで特定される複数の画素（以下、適宜、「アクセス画素」という）の画素データが、各メモリバンクから同時に読み出される。この場合、アクセスパターンＡＣＰを構成する画素の個数がＮ個（Ｎ≦６）であるとき、メモリバンクＢＫ０〜ＢＫ(N-1)から、アクセスパターンＡＣＰで特定されるＮ個の画素データが同時に読み出される。なお、このように各設定位置で読み出されるＮ個の画素データＤo0〜Ｄo(N-1)は、他のメモリバンクに格納すべき画素データとして、メモリ部１１０に再入力される。
【００４０】
データ格納制御部１２０は、図示しない制御装置から入力端子１８０を介して供給される制御信号ＳＣＬに基づいて動作する。このデータ格納制御部１２０は、上述したように、各注目画素の画素データをメモリ部１１０の各メモリバンクに振り分けて格納するための制御を行う。つまり、このデータ格納制御部１２０は、注目画素がアクセスパターンＡＣＰで特定されるＮ個の画素（以下、適宜、「初期アクセス画素」という）のいずれかに最初に該当するとき、この注目画素の画素データを最初のメモリバンク、つまりメモリバンクＢＫ０に格納することを開始し、その後注目画素が初期アクセス画素のいずれかに該当するとき、この注目画素の画素データを格納するメモリバンクを順次切り替える。
【００４１】
データアクセス制御部１４０は、図示しない制御装置から入力端子１８０を介して供給される制御信号ＳＣＬに基づいて動作する。このデータアクセス制御部１４０は、アクセスパターンＡＣＰの設定位置を開始位置から画素列方向に移動した各設定位置で、このアクセスパターンＡＣＰで特定されるＮ個（Ｎ≦６）のアクセス画素の画素データを、Ｎ個のメモリバンクＢＫ０〜ＢＫ(N-1)から同時に読み出すための制御を行う。ここで、画素列方向は水平方向であり、アクセスパターンＡＣＰの設定位置はラスタスキャン順に移動していく。
【００４２】
データアクセス制御部１４０は、アクセスパターンＡＣＰの設定位置が画素列方向に移動した際に、その設定位置におけるアクセスパターンＡＣＰで特定されるＮ個のアクセス画素の画素データがそれぞれ異なるメモリバンクに格納されているように、所定のメモリバンクから読み出した画素データを、その画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納する。
【００４３】
セレクタ１６０は、メモリ部１１０のＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)から同時に取得されるＮ個のアクセス画素の画素データＤo0〜Ｄo(N-1)を入力し、入出力の対応情報ＩＮＦに基づいて、上述した中心画素ＩＭ１，ＩＭ２に対応した画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a〜Ｄ1c，Ｄ2a〜Ｄ2cを出力する。この場合、Ｎ個のアクセス画素は、初期格納時において、注目画素となる順序で並んだものとなっている。
【００４４】
上述したように、中心画素ＩＭ１，ＩＭ２の位置関係によっては、画素群Ｇ１，Ｇ２を構成するそれぞれの画素が注目画素となる順序が各画素群毎に連続したものとならない場合（図３参照）、あるいは画素群Ｇ１，Ｇ２を構成する画素同士が重なってアクセスパターンＡＣＰを構成する画素の個数が６個より小さくなる場合（図４参照）がある。
【００４５】
セレクタ１６０は、画素群Ｇ１，Ｇ２を構成するそれぞれの画素が注目画素となる順序が各画素群毎に連続したものとならない場合には、Ｎ個のアクセス画素の画素データＤo0〜Ｄo(N-1)の順序を変更し、画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a〜Ｄ1c，Ｄ2a〜Ｄ2cを出力する。
【００４６】
また、このセレクタ１６０は、画素群Ｇ１，Ｇ２を構成する画素同士が重なってアクセスパターンＡＣＰを構成する画素の個数が６個より小さくなる場合には、Ｎ個のアクセス画素の画素データＤo0〜Ｄo(N-1)のうち所定の画素データを複数の出力画素データとし、画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a〜Ｄ1c，Ｄ2a〜Ｄ2cを出力する。
【００４７】
セレクタ設定部１７０は、図示しない制御装置から入力端子１８０を介して供給される制御信号ＳＣＬに基づいて動作する。このセレクタ設定部１７０は、中心画素ＩＭ１，ＩＭ２の情報および周辺の情報に基づいて、上述したアクセスパターンＡＣＰの情報ＩＡＰを発生する。本実施の形態において、周辺の情報は、「上下位置」を示すものである。また、セレクタ設定部１７０は、画素群Ｇ１，Ｇ２を構成するそれぞれの画素が初期格納時に注目画素となる順番情報に基づいて、上述した入出力の対応情報ＩＮＦを発生する。この場合、当該順番情報により、画素群Ｇ１，Ｇ２を構成するそれぞれの画素が注目画素となる順序が各画素群毎に連続したものとなるか否かがわかる。また、当該順番情報により、画素群Ｇ１，Ｇ２を構成する画素同士が重なってアクセスパターンＡＣＰを構成する画素の個数が６個より小さくなるか否かがわかる。
【００４８】
図１に示すデータアクセス装置１００の動作を説明する。
【００４９】
セレクタ設定部１７０には、制御信号ＳＣＬのひとつとして、中心画素ＩＭ１，ＩＭ２の情報および周辺の情報が供給される。そして、このセレクタ設定部１７０では、中心画素ＩＭ１，ＩＭ２の情報および周辺の情報に基づいて、アクセスパターンＡＣＰの情報ＩＡＰおよび入出力の対応情報ＩＮＦが発生される。アクセスパターンＡＣＰの情報ＩＡＰはデータ格納制御部１２０に供給され、入出力の対応情報ＩＮＦはセレクタ１６０に供給される。
【００５０】
初期格納時には、入力端子１１１からメモリ部１１０に、格納すべき所定画面の画素データＤｉが入力される。この初期格納時における動作は、データ格納制御部１２０により制御される。この場合、開始位置に設定されたアクセスパターンＡＣＰで特定されるＮ個（Ｎ≦６）の初期アクセス画素のいずれかに最初に注目画素が該当するとき、この注目画素の画素データを最初のメモリバンク、つまりメモリバンクＢＫ０に格納することが開始され、その後注目画素が初期アクセス画素のいずれかに該当するとき、この注目画素の画素データを格納するメモリバンクが順次切り替えられる。
【００５１】
これにより、メモリ部１１０に入力されていく各注目画素の画素データは、Ｎ個のメモリバンクＢＫ０〜ＢＫ(N-1)に振り分けられて格納され、開始位置に設定されたアクセスパターンＡＣＰで特定される複数の初期アクセス画素の画素データはそれぞれ異なるメモリバンクに格納された状態となって同時アクセスが可能となる。
【００５２】
また、データアクセス時に、アクセスパターンＡＣＰの設定位置を開始位置から画素列方向に移動した各設定位置で、メモリ部１１０のＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)から、アクセスパターンＡＣＰで特定されるＮ個の画素データＤo0〜Ｄo(N-1)が同時に読み出される。このデータアクセス時における動作はデータアクセス制御部１４０により制御される。
【００５３】
この場合、アクセスパターンＡＣＰの設定位置が画素列方向に移動した際に、その設定位置におけるアクセスパターンＡＣＰで特定されるＮ個のアクセス画素の画素データがそれぞれ異なるメモリバンクに格納されているように、所定のメモリバンクから読み出された画素データは、その画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納される。これにより、アクセスパターンＡＣＰの設定位置が開始位置から移動した全ての位置で、当該アクセスパターンＡＣＰで特定されるＮ個のアクセス画素の画素データがそれぞれ異なるメモリバンクに格納された状態となって同時アクセスが可能となる。
【００５４】
データアクセス時に、アクセスパターンＡＣＰの各設定位置で、メモリ部１１０のＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)から取得されるＮ個の画素データＤo0〜Ｄo(N-1)は、セレクタ１６０に入力される。そして、このセレクタ１６０からは、中心画素ＩＭ１，ＩＭ２に対応した画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cが出力され、この６個の画素データが出力端子１１２に導出される。
【００５５】
この場合、セレクタ１６０では、画素群Ｇ１，Ｇ２を構成するそれぞれの画素が初期格納時に注目画素となる順序が各画素群毎に連続したものとならない場合には、Ｎ個のアクセス画素の画素データＤo0〜Ｄo(N-1)の順序が変更される。またこの場合、画素群Ｇ１，Ｇ２を構成する画素同士が重なってアクセスパターンＡＣＰを構成する画素の個数が６個より小さくなる場合には、Ｎ個のアクセス画素の画素データＤo0〜Ｄo(N-1)のうち所定の画素データが複数の出力画素データとされる。
【００５６】
例えば、アクセスパターンＡＣＰが上述した図２に示すものであった場合には、アクセスパターンＡＣＰの各設定位置で、メモリ部１１０の６個のメモリバンクＢＫ０〜ＢＫ５から、６個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ1D，ＩＭ2U，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が同時に読み出される。この場合、セレクタ１６０からは６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cとして、それぞれ、画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が出力される。
【００５７】
また例えば、アクセスパターンＡＣＰが上述した図３に示すものであった場合には、アクセスパターンＡＣＰの各設定位置で、メモリ部１１０の６個のメモリバンクＢＫ０〜ＢＫ５から、６個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ2U，ＩＭ1D，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が同時に読み出される。この場合、セレクタ１６０からは６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cとして、それぞれ、画素データＤo0，Ｄo1，Ｄo3，Ｄo2，Ｄo4，Ｄo5が出力される。
【００５８】
また例えば、アクセスパターンＡＣＰが上述した図４に示すものであった場合には、アクセスパターンＡＣＰの各設定位置で、メモリ部１１０の４個のメモリバンクＢＫ０〜ＢＫ３から、４個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3が同時に読み出される。この場合、セレクタ１６０からは６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cとして、それぞれ、画素データＤo0，Ｄo1，Ｄo2，Ｄo1，Ｄo2，Ｄo3が出力される。
【００５９】
次に、データ格納制御部１２０、データアクセス制御部１４０、セレクタ１６０およびセレクタ設定部１７０の詳細を説明する。
【００６０】
まず、データ格納制御部１２０を説明する。図５は、このデータ格納制御部１２０の構成を示している。このデータ格納制御部１２０は、カウンタ１２１と、一致判定部１２２と、バンクアドレスカウンタ１２３と、ビット線アドレスカウンタ１２４と、ワード線アドレスカウンタ１２５と、アドレス生成部１２６と、読み出しフラグ生成部１２７とを有している。
【００６１】
カウンタ１２１は、上述したメモリ部１１０に順に入力される各注目画素の画素データの入力個数をカウントする。このカウンタ１２１には、メモリ部１１０に入力される各注目画素の画素データに同期したデータクロックＤＣＫが供給される。このデータクロックＤＣＫは、上述した制御信号ＳＣＬのひとつを構成しており、図示しない制御装置から供給される。このカウンタ１２１は、最初にそのカウント値が０とされ、その後はメモリ部１１０に各注目画素の画素データが入力される毎に、データクロックＤＣＫによってインクリメントされていく。
【００６２】
一致判定部１２２は、上述したメモリ部１１０に所定の注目画素の画素データが入力される毎に、その注目画素が、開始位置に設定されたアクセスパターンＡＣＰで特定されるＮ個の画素（初期アクセス画素）のいずれかに一致するか否かを判定する。そのため、この一致判定部１２２には、注目画素が当該Ｎ個の画素のそれぞれとなるときに上述したカウンタ１２１から出力されるカウント値ＣＮ１〜ＣＮＮが、アクセスパターン情報ＩＡＰとして供給される。このアクセスパターン情報ＩＡＰは、セレクタ設定部１７０から供給される。一致判定部１２２は、ある注目画素におけるカウンタ１２１のカウント値がカウント値ＣＮ１〜ＣＮＮと一致するとき、それぞれ、当該注目画素は１番目〜Ｎ番目の初期アクセス画素であると判定する。
【００６３】
バンクアドレスカウンタ１２３は、６個のメモリバンクＢＫ０〜ＢＫ５のうち注目画素の画素データを格納すべきメモリバンクを示すカウント値、つまりバンクアドレスを出力する。このカウンタ１２３には、上述した一致判定部１２２の判定出力が供給される。このカウンタ１２３は、最初はそのカウント値が０とされ、その後注目画素が２番目以降の初期アクセス画素となるとき、インクリメントされる。このカウンタ１２１のカウント値０〜５、つまりバンクアドレス０〜５は、それぞれメモリバンクＢＫ０〜ＢＫ５を示している。
【００６４】
ビット線アドレスカウンタ１２４は、６個のメモリバンクＢＫ０〜ＢＫ５にそれぞれ対応した６個のカウンタ１２４-0〜１２４-5からなっている。このカウンタ１２４には、メモリ部１１０に入力される各注目画素の画素データに同期したデータクロックＤＣＫが供給される。カウンタ１２４-0〜１２４-5は、それぞれ、最初は、そのカウント値、つまりビット線アドレスが０とされる。その後は、メモリ部１１０に各注目画素の画素データが入力されて格納される毎に、カウンタ１２４-0〜１２４-5のうちバンクアドレスに対応したカウンタがインクリメントされていく。本実施の形態では、各メモリバンクＢＫ０〜ＢＫ５のワード線長は１０とされている。そのため、カウンタ１２４-0〜１２４-5は、それぞれ、カウント値９の次はカウント値０となり、１０進カウンタの構成となっている。
【００６５】
ワード線アドレスカウンタ１２５は、６個のメモリバンクＢＫ０〜ＢＫ５にそれぞれ対応した６個のカウンタ１２５-0〜１２５-5からなっている。カウンタ１２５-0〜１２５-5には、それぞれ上述したカウンタ１２４-0〜１２４-5の桁上げ信号であるキャリーＣＡが供給される。カウンタ１２５-0〜１２５-5は、それぞれ、カウンタ１２４-0〜１２４-5からキャリーＣＡが供給される毎に、インクリメントされていく。
【００６６】
アドレス生成部１２６は、メモリ部１１０に供給する書き込みアドレスＷを生成する。このアドレス生成部１２６には、カウンタ１２３〜１２５のカウント値が供給される。このアドレス生成部１２６は、カウンタ１２５のカウント値（バンクアドレス）、カウンタ１２４を構成する６個のカウンタ１２６-0〜１２６-5のうちバンクアドレスに対応したカウンタのカウント値（ビット線アドレス）、およびカウンタ１２５を構成する６個のカウンタ１２５-0〜１２５-5のうちバンクアドレスに対応したカウンタのカウント値（ワード線アドレス）を合成して、メモリ部１１０に供給する書き込みアドレスＷを生成する。
【００６７】
また、このアドレス生成部１２６は、初期格納時に画素データが格納されるＮ個（Ｎ≦６）のメモリバンクＢＫ０〜ＢＫ(N-1)に対する、読み出し開始アドレスＲＳおよび書き込み開始アドレスＷＳを生成する。これら開始アドレスＲＳ，ＷＳは、それぞれ、データアクセス制御部１４０で用いられる。この場合、アドレス生成部１２６は、メモリバンクＢＫ０〜ＢＫ(N-1)の、最初の画素データが格納された書き込みアドレスを、それぞれ、メモリバンクＢＫ０〜ＢＫ(N-1)に対する読み出し開始アドレスＲＳとする。また、アドレス生成部１２６は、メモリバンクＢＫ０〜ＢＫ(N-2)の、最後の画素データが格納されたアドレスの次のアドレスを、それぞれ、メモリバンクＢＫ０〜ＢＫ(N-2)に対する書き込み開始アドレスＷＳとする。
【００６８】
読み出しフラグ生成部１２７は、データアクセス制御部１４０で用いられる、それぞれのメモリバンクＢＫ０〜ＢＫ５に対する読み出しフラグＲＦＧを生成する。この読み出しフラグ生成部１２７には、一致判定部１２２の判定出力が供給されると共に、バンクアドレスカウンタ１２３のカウント値（バンクアドレス）が供給される。この読み出しフラグ生成部１２７は、６個のメモリバンクＢＫ０〜ＢＫ５のうち、開始位置に設定されたアクセスパターンＡＣＰで特定されるＮ個の初期アクセス画素のいずれかに対応する画素データが格納されるメモリバンクに対する読み出しフラグＲＦＧを読み出しを行うことを示すフラグオンの状態、例えば１とし、その他のメモリバンクに対する読み出しフラグＲＦＧを読み出しを行わないことを示すフラグオフの状態、例えば０とする。
【００６９】
次に、図５に示すデータ格納制御部１２０の制御による初期格納時の動作を、図６のフローチャートを用いて説明する。なお、データ格納制御部１２０は、例えばマイクロプロセッサで構成され、図示しないプログラムメモリに格納されたデータ格納制御プログラムに従って制御動作をする。
【００７０】
ステップＳＴ１で、動作を開始し、ステップＳＴ２で、バンクアドレスカウンタ１２３のカウント値（バンクアドレス）、ビット線アドレスカウンタ１２４を構成する６個のカウンタ１２４-0〜１２４-5のカウント値（ビット線アドレス）、およびワード線アドレスカウンタ１２５を構成する６個のカウンタ１２５-0〜１２５-5のカウント値（ワード線アドレス）をそれぞれ０にし、カウンタ１２１のカウント値を０にし、さらに読み出しフラグ生成部１２７から出力される各メモリバンクＢＫ０〜ＢＫ５に対応する読み出しフラグＲＦＧを全て読み出しを行わないことを示すフラグオフの状態、例えば０にする。
【００７１】
次に、ステップＳＴ３で、注目画素の画素データが入力されたか否かを判定する。この場合、データクロックＤＣＫが供給されるとき、注目画素の画素データが入力されたと判定する。注目画素の画素データが入力されたと判定するとき、ステップＳＴ４で、カウンタ１２１をインクリメントする。
【００７２】
次に、ステップＳＴ５で、ステップＳＴ３で入力された注目画素が初期アクセス画素であるか否かを、一致判定部１２２で判定する。この場合、カウンタ１２１のカウント値が、アクセスパターン情報ＩＡＰとしてのカウント値ＣＮ１〜ＣＮＮのいずれかと一致するとき、注目画素が初期アクセス画素であると判定する。
【００７３】
注目画素が初期アクセス画素であると判定するとき、ステップＳＴ６で、その初期アクセス画素が最初の初期アクセス画素であるか否かを判定する。最初の初期アクセス画素であると判定するとき、直ちに、ステップＳＴ９に進む。一方、最初の初期アクセス画素でないと判定するとき、ステップＳＴ７で、書き込みアドレスＷを、バンクアドレスに対応したメモリバンクの書き込み開始アドレスＷＳにする。
【００７４】
ここで、書き込みアドレスＷは、アドレス生成部１２６で、上述したバンクアドレスの他に、ビット線アドレスおよびワード線アドレスを合成することで生成されている。ビット線アドレスは、バンクアドレスに対応したカウンタ１２４内のカウンタのカウント値で与えられる。ワード線アドレスは、バンクアドレスに対応したカウンタ１２５内のカウンタのカウント値で与えられる。
【００７５】
次に、ステップＳＴ８で、バンクアドレスカウンタ１２３のカウント値（バンクアドレス）をインクリメントする。その後に、ステップＳＴ９に進む。ステップＳＴ９では、読み出しフラグ生成部１２７は、バンクアドレスに対応したメモリバンクの読み出しフラグＲＦＧを読み出しを行うことを示すフラグオンの状態、例えば１にする。そして、ステップＳＴ１０で、アドレス生成部１２６で生成されている書き込みアドレスＷを、バンクアドレスに対応したメモリバンクの読み出し開始アドレスＲＳにする。その後に、ステップＳＴ１１に進む。
【００７６】
上述のステップＳＴ５で、注目画素が初期アクセス画素でないと判定されるとき、ステップＳＴ１２で、注目画素が最初の初期アクセス画素の後の画素であるか否かを判定する。注目画素が最初の初期アクセス画素の後の画素でないと判定するとき、ステップＳＴ３に戻り、次の注目画素の画素データの入力を待つ。一方、注目画素が最初の初期アクセス画素の後の画素であると判定するとき、直ちに、ステップＳＴ１１に進む。
【００７７】
このステップＳＴ１１では、アドレス生成部１２６で生成されている書き込みアドレスＷに基づき、当該書き込みアドレスＷのバンクアドレスで指定されるメモリバンクの、当該書き込みアドレスＷのビット線アドレスおよびワード線アドレスで指定されるアドレス位置に、注目画素の画素データを格納する。
【００７８】
次に、ステップＳＴ１３で、ビット線アドレスカウンタ１２４のバンクアドレスに対応したカウンタのカウント値（ビット線アドレス）をインクリメントする。そして、ステップＳＴ１４で、ステップＳＴ１３で、カウンタのカウント値が０となったとき、そのカウンタから出力されるキャリーＣＡにより、ワード線アドレスカウンタ１２５のバンクアドレスに対応したカウンタのカウント値（ワード線アドレス）をインクリメントする。その後に、ステップＳＴ１５に進む。
【００７９】
ステップＳＴ１５では、画面ＳＲＮの全ての画素の画素データが入力されたか否かを判定する。この場合、カウンタ１２１のカウント値が、画面ＳＲＮを構成する画素の個数に等しいとき、全ての画素の画素データが入力されたと判定する。全ての画素の画素データが入力されたと判定するとき、ステップＳＴ１６で、動作を終了する。一方、全ての画素の画素データが入力されていないと判定するとき、ステップＳＴ３に戻り、次の注目画素の画素データの入力を待つ。
【００８０】
上述した初期格納時の動作により、画面ＳＲＮの各画素のデータは、各メモリバンクに振り分けられて格納される。
【００８１】
図７は、アクセスパターンＡＣＰが上述した図２に示すものであった場合における、各画素の画素データの初期格納状態を示している。この図７の□内の数字は、その画素の画素データが格納されるメモリバンクのバンクアドレスを示している。ここで、「０」〜「５」は、それぞれ、メモリバンクＢＫ０〜ＢＫ５を示している。また、図８は、その場合における、メモリバンクＢＫ０〜ＢＫ５のデータ格納状態を示している。ここで、「■」は画素データが格納されているメモリセルＭＣを示し、「□」は画素データが格納されていないメモリセルＭＣを示している。これは、以下の図においても同様である。
【００８２】
最初、バンクアドレスは「０」となっている。この状態で、第１列の先頭画素が注目画素となる。この注目画素は、アクセスパターンＡＣＰで特定される最初の初期アクセス画素ＩＭ1Uである。そのため、メモリバンクＢＫ０の読み出しフラグＲＦＧは、読み出しを行うことを示すフラグオンの状態、例えば１に変更される。また、この画素ＩＭ1UからメモリバンクＢＫ０への画素データの格納が開始される。この場合、この画素ＩＭ1Uの画素データを格納すべきアドレス位置を示す書き込みアドレスＷが、当該メモリバンクＢＫ０の読み出し開始アドレスＲＳとされる（図８のバンクＢＫ０参照）。
【００８３】
その後、この画素ＩＭ1Uに続く画素が順に注目画素となり、その画素データがメモリバンクＢＫ０に格納されていくが、第２列の１番目の画素は２番目の初期アクセス画素ＩＭ１であり、この画素ＩＭ１が注目画素となるとき、バンクアドレスがインクリメントされて「１」となり、画素データを格納すべきメモリバンクはＢＫ１となる。
【００８４】
そのため、メモリバンクＢＫ０は、２２画素の画素データが格納された状態となる（図８のバンクＢＫ０の最初の２２個のアドレス位置参照）。この場合、このメモリバンクＢＫ０の書き込み開始アドレスＷＳは、最後の画素データ、つまり２２画素目の画素データが格納されたアドレス位置の次のアドレス位置を示すアドレスとされる（図８のバンクＢＫ０参照）。
【００８５】
上述したように画素ＩＭ１が注目画素となるとき画素データを格納すべきメモリバンクはＢＫ１となる。そのため、このメモリバンクＢＫ１の読み出しフラグＲＦＧは、読み出しを行うことを示すフラグオンの状態、例えば１に変更される。また、この画素ＩＭ１からメモリバンクＢＫ１への画素データの格納が開始される。この場合、この画素ＩＭ１の画素データを格納すべきアドレス位置を示す書き込みアドレスＷが、当該メモリバンクＢＫ１の読み出し開始アドレスＲＳとされる（図８のバンクＢＫ１参照）。
【００８６】
その後、この画素ＩＭ１に続く画素が順に注目画素となり、その画素データがメモリバンクＢＫ１に格納されていくが、第３列の１番目の画素は３番目の初期アクセス画素ＩＭ1Dであり、この画素ＩＭ1Dが注目画素となるとき、バンクアドレスがインクリメントされて「２」となり、画素データを格納すべきメモリバンクはＢＫ２となる。
【００８７】
そのため、メモリバンクＢＫ１は、２２画素の画素データが格納された状態となる（図８のバンクＢＫ１の最初の２２個のアドレス位置参照）。この場合、このメモリバンクＢＫ１の書き込み開始アドレスＷＳは、最後の画素データ、つまり２２画素目の画素データが格納されたアドレス位置の次のアドレス位置を示すアドレスとされる（図８のバンクＢＫ１参照）。
【００８８】
上述したように画素ＩＭ1Dが注目画素となるとき画素データを格納すべきメモリバンクはＢＫ２となる。そのため、このメモリバンクＢＫ２の読み出しフラグＲＦＧは、読み出しを行うことを示すフラグオンの状態、例えば１に変更される。また、この画素ＩＭ1DからメモリバンクＢＫ２への画素データの格納が開始される。この場合、この画素ＩＭ1Dの画素データを格納すべきアドレス位置を示す書き込みアドレスＷが、当該メモリバンクＢＫ２の読み出し開始アドレスＲＳとされる（図８のバンクＢＫ２参照）。
【００８９】
その後、この画素ＩＭ1Dに続く画素が順に注目画素となり、その画素データがメモリバンクＢＫ２に格納されていくが、第３列の３番目の画素は４番目の初期アクセス画素ＩＭ2Uであり、この画素ＩＭ2Uが注目画素となるとき、バンクアドレスがインクリメントされて「３」となり、画素データを格納すべきメモリバンクはＢＫ３となる。
【００９０】
そのため、メモリバンクＢＫ２は、２画素の画素データが格納された状態となる（図８のバンクＢＫ２の最初の２個のアドレス位置参照）。この場合、このメモリバンクＢＫ２の書き込み開始アドレスＷＳは、最後の画素データ、つまり２画素目の画素データが格納されたアドレス位置の次のアドレス位置を示すアドレスとされる（図８のバンクＢＫ２参照）。
【００９１】
上述したように画素ＩＭ2Uが注目画素となるとき画素データを格納すべきメモリバンクはＢＫ３となる。そのため、このメモリバンクＢＫ３の読み出しフラグＲＦＧは、読み出しを行うことを示すフラグオンの状態、例えば１に変更される。また、この画素ＩＭ2UからメモリバンクＢＫ３への画素データの格納が開始される。この場合、この画素ＩＭ2Uの画素データを格納すべきアドレス位置を示す書き込みアドレスＷが、当該メモリバンクＢＫ３の読み出し開始アドレスＲＳとされる（図８のバンクＢＫ３参照）。
【００９２】
その後、この画素ＩＭ2Uに続く画素が順に注目画素となり、その画素データがメモリバンクＢＫ３に格納されていくが、第４列の３番目の画素は５番目の初期アクセス画素ＩＭ２であり、この画素ＩＭ２が注目画素となるとき、バンクアドレスがインクリメントされて「４」となり、画素データを格納すべきメモリバンクはＢＫ４となる。
【００９３】
そのため、メモリバンクＢＫ３は、２２画素の画素データが格納された状態となる（図８のバンクＢＫ３の最初の２２個のアドレス位置参照）。この場合、このメモリバンクＢＫ３の書き込み開始アドレスＷＳは、最後の画素データ、つまり２２画素目の画素データが格納されたアドレス位置の次のアドレス位置を示すアドレスとされる（図８のバンクＢＫ３参照）。
【００９４】
上述したように画素ＩＭ２が注目画素となるとき画素データを格納すべきメモリバンクはＢＫ４となる。そのため、このメモリバンクＢＫ４の読み出しフラグＲＦＧは、読み出しを行うことを示すフラグオンの状態、例えば１に変更される。また、この画素ＩＭ２からメモリバンクＢＫ４への画素データの格納が開始される。この場合、この画素ＩＭ２の画素データを格納すべきアドレス位置を示す書き込みアドレスＷが、当該メモリバンクＢＫ４の読み出し開始アドレスＲＳとされる（図８のバンクＢＫ４参照）。
【００９５】
その後、この画素ＩＭ２に続く画素が順に注目画素となり、その画素データがメモリバンクＢＫ４に格納されていくが、第５列の３番目の画素は６番目の初期アクセス画素ＩＭ2Dであり、この画素ＩＭ2Dが注目画素となるとき、バンクアドレスがインクリメントされて「５」となり、画素データを格納すべきメモリバンクはＢＫ５となる。
【００９６】
そのため、メモリバンクＢＫ４は、２２画素の画素データが格納された状態となる（図８のバンクＢＫ４の最初の２２個のアドレス位置参照）。この場合、このメモリバンクＢＫ４の書き込み開始アドレスＷＳは、最後の画素データ、つまり２２画素目の画素データが格納されたアドレス位置の次のアドレス位置を示すアドレスとされる（図８のバンクＢＫ４参照）。
【００９７】
上述したように画素ＩＭ2Dが注目画素となるとき画素データを格納すべきメモリバンクはＢＫ５となる。そのため、このメモリバンクＢＫ５の読み出しフラグＲＦＧは、読み出しを行うことを示すフラグオンの状態、例えば１に変更される。また、この画素ＩＭ2DからメモリバンクＢＫ５への画素データの格納が開始される。この場合、この画素ＩＭ2Dの画素データを格納すべきアドレス位置を示す書き込みアドレスＷが、当該メモリバンクＢＫ５の読み出し開始アドレスＲＳとされる（図８のバンクＢＫ５参照）。
【００９８】
その後、この画素ＩＭ2Dに続く画素が順に注目画素となり、その画素データがメモリバンクＢＫ５に格納されていく。そして、画面ＳＲＮを構成する最後の画素の画素データまで、メモリバンクＢＫ５に格納されて、画素データの格納動作が終了する。なお、図８のバンクＢＫ５には、画素データが格納されているメモリセルＭＣ（「■」で図示）の一部のみを示している。
【００９９】
上述の初期格納の動作の説明は、アクセスパターンＡＣＰが上述した図２に示すものであった場合である。詳細説明は省略するが、アクセスパターンＡＣＰが上述した図３、図４に示すものであった場合における初期格納の動作も同様にして行われる。
【０１００】
なお、図９は、アクセスパターンＡＣＰが上述した図３に示すものであった場合における、各画素の画素データの初期格納状態を示している。また、図１０は、その場合における、メモリバンクＢＫ０〜ＢＫ５のデータ格納状態を示している。この場合、アクセスパターンＡＣＰで特定される初期アクセス画素の個数は６個であり、各画素の画素データは、メモリバンクＢＫ０〜ＢＫ５に振り分けられて格納される。
【０１０１】
さらに、図１１は、アクセスパターンＡＣＰが上述した図４に示すものであった場合における、各画素の画素データの初期格納状態を示している。また、図１２は、その場合における、メモリバンクＢＫ０〜ＢＫ５のデータ格納状態を示している。この場合、アクセスパターンＡＣＰで特定される初期アクセス画素の個数は４個であり、各画素の画素データは、メモリバンクＢＫ０〜ＢＫ３に振り分けられて格納され、メモリバンクＢＫ４，ＢＫ５には画素データは格納されない。
【０１０２】
次に、データアクセス制御部１４０を説明する。図１３は、このデータアクセス制御部１４０の構成を示している。このデータアクセス制御部１４０は、カウンタ１４１と、アドレスカウンタ制御部１４２と、読み出しアドレスカウンタ１４３と、書き込みアドレスカウンタ１４４と、読み出しアドレス生成部１４５と、書き込みアドレス生成部１４６とを有している。
【０１０３】
カウンタ１４１は、アクセスパターンＡＣＰの設定位置を示すカウント値を出力する。このカウンタ１４1には、アクセスパターンＡＣＰの設定位置を移動するための移動クロックＭＣＫが供給される。この移動クロックＭＣＫは、上述した制御信号ＳＣＬのひとつを構成しており、図示しない制御装置から供給される。このカウンタ１４1は、最初にそのカウント値が０とされ、その後アクセスパターンＡＣＰの設定位置を開始位置とするとき最初の移動クロックＭＣＫでインクリメントされてカウント値が１となり、その後はこの設定位置が画素列方向に１画素ずつ移動する毎に、移動クロックＭＣＫでインクリメントされていく。
【０１０４】
読み出しアドレスカウンタ１４３は、６個のメモリバンクＢＫ０〜ＢＫ５にそれぞれ対応した６個のカウンタ１４３-0〜１４３-5からなっている。この６個のカウンタ１４３-0〜１４３-5のそれぞれは、ビット線アドレスを示すカウント値を得るためのビット線アドレスカウンタと、ワード線アドレスを示すカウント値を得るためのワード線アドレスカウンタとからなっている（図５のビット線アドレスカウンタ１２４およびワード線アドレスカウンタ１２５参照）。カウンタ１４３内の６個のカウンタ１４３-0〜１４３-5は、アドレスカウンタ制御部１４２の制御のもと、それぞれ、６個のメモリバンクＢＫ０〜ＢＫ５に対する読み出しアドレス（ビット線アドレスおよびワード線アドレス）を示すカウント値を出力する。
【０１０５】
書き込みアドレスカウンタ１４４は、５個のメモリバンクＢＫ０〜ＢＫ４にそれぞれ対応した５個のカウンタ１４４-0〜１４４-4からなっている。この５個のカウンタ１４４-0〜１４４-4のそれぞれも、ビット線アドレスを示すカウント値を得るためのビット線アドレスカウンタと、ワード線アドレスを示すカウント値を得るためのワード線アドレスカウンタとからなっている。カウンタ１４４内の５個のカウンタ１４４-0〜１４４-4は、アドレスカウンタ制御部１４２の制御のもと、それぞれ、５個のメモリバンクＢＫ０〜ＢＫ４に対する書き込みアドレス（ビット線アドレスおよびワード線アドレス）を示すカウント値を出力する。
【０１０６】
アドレスカウンタ制御部１４２は、上述した読み出しアドレスカウンタ１４３および書き込みアドレスカウンタ１４４の動作を制御する。このアドレスカウンタ制御部１４２には、アクセスパターンＡＣＰの設定位置を移動するための移動クロックＭＣＫ、上述したデータ格納制御部１２０のアドレス生成部１２６で生成された、Ｎ個（Ｎ≦６）のメモリバンクＢＫ０〜ＢＫ(N-1)に対する読み出し開始アドレスＲＳおよび書き込み開始アドレスＷＳ、および上述したデータ格納制御部１２０の読み出しフラグ生成部１２７で生成されたメモリバンクＢＫ０〜ＢＫ５に対する読み出しフラグＲＦＧが供給される。ここで、Ｎ個（Ｎ≦６）のメモリバンクＢＫ０〜ＢＫ(N-1)は、上述した初期格納時に、画素データが格納されるメモリバンクである。
【０１０７】
このアドレスカウンタ制御部１４２は、最初に、Ｎ個（Ｎ≦６）のメモリバンクＢＫ０〜ＢＫ(N-1)のそれぞれに対する読み出し開始アドレスＲＳをカウンタ１４３内のＮ個のカウンタ１４３-0〜１４３-(N-1)にセットし、（Ｎ−１）個のメモリバンクＢＫ０〜ＢＫ(N-2)のそれぞれに対する書き込み開始アドレスＷＳをカウンタ１４４内の（Ｎ−１）個のカウンタ１４４-0〜１４４-(N-2)にセットする。
【０１０８】
また、アドレスカウンタ制御部１４２は、アクセスパターンＡＣＰの各設定位置で、画素データの読み出しが行われる毎にカウンタ１４３内のＮ個のカウンタ１４３-0〜１４３-(N-1)のカウント値をインクリメントすると共に、画素データの書き込みが行われる毎にカウンタ１４４内の（Ｎ−１）個のカウンタ１４４-0〜１４４-(N-2)のカウント値をインクリメントする。
【０１０９】
また、アドレスカウンタ制御部１４２は、読み出しフラグ生成部を構成し、それぞれのメモリバンクＢＫ０〜ＢＫ５に対する読み出しフラグＲＦＧを生成する。この場合、アドレスカウンタ制御部１４２は、上述したようにデータ格納制御部１２０から供給されるそれぞれのメモリバンクＢＫ０〜ＢＫ５に対する読み出しフラグＲＦＧに基づき、初期格納時に画素データが格納されたＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)についての読み出しフラグＲＦＧを読み出しを行うことを示すフラグオンの状態、例えば１とし、その他のメモリバンクについての読み出しフラグを読み出しを行わないことを示すフラグオフの状態、例えば０とする。
【０１１０】
読み出しアドレス生成部１４５は、６個のメモリバンクＢＫ０〜ＢＫ５のそれぞれに対する読み出しアドレスＲを生成する。この読み出しアドレス生成部１４５には、読み出しアドレスカウンタ１４３を構成する各カウンタのカウント値（ビット線アドレスおよびワード線アドレス）が供給される。読み出しアドレス生成部１４５は、各カウンタのカウント値（ビット線アドレスおよびワード線アドレス）に、それぞれ、メモリバンクＢＫ０〜ＢＫ５のバンクアドレスを合成することで、それぞれのメモリバンクＢＫ０〜ＢＫ５に対する読み出しアドレスＲを生成する。
【０１１１】
書き込みアドレス生成部１４６は、５個のメモリバンクＢＫ０〜ＢＫ４のそれぞれに対する書き込みアドレスＷを生成する。この書き込みアドレス生成部１４６には、書き込み込みアドレスカウンタ１４４を構成する各カウンタのカウント値（ビット線アドレスおよびワード線アドレス）が供給される。書き込みアドレス生成部１４６は、各カウンタのカウント値（ビット線アドレスおよびワード線アドレス）に、それぞれ、メモリバンクＢＫ０〜ＢＫ４のバンクアドレスを合成することで、それぞれのメモリバンクＢＫ０〜ＢＫ４に対する書き込みアドレスＷを生成する。
【０１１２】
次に、図１３に示すデータアクセス制御部１４０の制御によるデータアクセス時の動作を、図１４のフローチャートを用いて説明する。なお、データアクセス制御部１４０は、例えばマイクロプロセッサで構成され、図示しないプログラムメモリに格納されたデータアクセス制御プログラムに従って制御動作をする。
【０１１３】
ステップＳＴ３１で、動作を開始し、ステップＳＴ３２で、アドレスカウンタ制御部１４２は、読み出しフラグＲＦＧ、読み出しアドレスＲ、および書き込みアドレスＷをセットし、またカウンタ１４１のカウント値を０にする。この場合、メモリバンクＢＫ０〜ＢＫ５に対する読み出しフラグＲＦＧは、それぞれ、データ格納制御部１２０から供給された読み出しフラグＲＦＧと等しくなるようにセットされる。またこの場合、読み出しアドレスカウンタ１４３内のＮ個のカウンタ１４３-0〜１４３-(N-1)のカウント値（読み出しアドレス）は、それぞれ、データ格納制御部１２０から供給された読み出し開始アドレスＲＳと等しくなるようにセットされる。また、書き込みアドレスカウンタ１４４内の（Ｎ−１）個のカウンタ１４４-0〜１４４-(N-2)のカウント値（書き込みアドレス）は、それぞれ、データ格納制御部１２０から供給された書き込み開始アドレスＷＳと等しくなるようにセットされる。
【０１１４】
次に、ステップＳＴ３３で、移動クロックＭＣＫにより、カウンタ１４１をインクリメントする。そして、ステップＳＴ３４で、読み出しフラグＲＦＧがフラグオンの状態、例えば１となっているＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)の、読み出しアドレス生成部１４５で生成された読み出しアドレスＲで示されるアドレス位置から、アクセスパターンＡＣＰで特定されるＮ個（Ｎ≦６）のアクセス画素の画素データＤo0〜Ｄo(N-1)を読み出して出力する。
【０１１５】
次に、ステップＳＴ３５で、上述のステップＳＴ３４で画素データの読み出しを行ったＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)に対応する、読み出しアドレスカウンタ１４３内のＮ個のカウンタ１４３-0〜１４３-(N-1)のカウント値（読み出しアドレス）を、インクリメントする。
【０１１６】
次に、ステップＳＴ３６で、所定のメモリバンクから読み出した画素データを、１つ前のメモリバンクに格納する。この場合、（Ｎ−１）個のメモリバンクＢＫ０〜ＢＫ(N-2)の、書き込みアドレス生成部１４６で生成された書き込みアドレスＷで示されるアドレス位置に、それぞれ、メモリバンクＢＫ１〜ＢＫ(N-1)から読み出された画素データが書き込まれる。
【０１１７】
次に、ステップＳＴ３７で、上述のステップＳＴ３６で画素データの書き込みを行った（Ｎ−１）個のメモリバンクＢＫ０〜ＢＫ(N-2)に対応する、書き込みアドレスカウンタ１４４内の（Ｎ−１）個のカウンタ１４４-0〜１４４-(N-2)のカウント値（書き込みアドレス）を、インクリメントする。
【０１１８】
次に、ステップＳＴ３８で、全てアクセスしたか否か、つまりアクセスパターンＡＣＰが、開始位置から終了位置まで移動したか否かを判定する。この場合、カウンタ１４１のカウント値が終了位置を示す値となるとき、全てアクセスしたと判定する。全てアクセスしたと判定するときは、ステップＳＴ３９で、動作を終了する。全てアクセスしていないと判定するときは、ステップＳＴ３３に戻って、アクセスパターンＡＣＰの次の設定位置の処理に移る。
【０１１９】
上述したデータアクセス時の動作をさらに説明する。上述したように、アクセスパターンＡＣＰが上述した図２に示すものであった場合、初期格納時の動作により、画面ＳＲＮの各画素の画素データは、６個のメモリバンクＢＫ０〜ＢＫ５に振り分けて格納される。図１５は、アクセスパターンＡＣＰが開始位置にある状態を示している。この図１５の□内の数字は、その画素の画素データが格納されているメモリバンクのバンクアドレスを示している。
【０１２０】
データアクセスの動作開始時に、メモリバンクＢＫ０〜ＢＫ５のアドレスＲ，Ｗが、上述したように、データ格納制御部１２０から供給された開始アドレスＲＳ，ＷＳにセットされる。また、このデータアクセスの動作開始時に、６個のメモリバンクＢＫ０〜ＢＫ５の読み出しフラグＲＦＧは、全てフラグオンの状態、例えば１とされる。図１６は、初期状態における、メモリバンクＢＫ０〜ＢＫ５のデータ格納状態および読み出しアドレスＲおよび書き込みアドレスＷのアドレス位置を示している。
【０１２１】
カウンタ１４１のカウントが開始され、上述の図１５に示すように、アクセスパターンＡＣＰの設定位置が開始位置とされると、６個のメモリバンクＢＫ０〜ＢＫ５の、読み出しアドレスＲで示されるアドレス位置から、開始位置のアクセスパターンＡＣＰで特定される６個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ1D，ＩＭ2U，ＩＭ２，ＩＭ2Dの画素データＤo0〜Ｄo5が同時に読み出される。そして、この６個のメモリバンクＢＫ０〜ＢＫ５の読み出しアドレスＲはそれぞれインクリメントされる。
【０１２２】
また、メモリバンクＢＫ１〜ＢＫ５から読み出された画素データは、図１７に示すように、１つ前のメモリバンクＢＫ０〜ＢＫ４の、書き込み込みアドレスＷで示されるアドレス位置に書き込まれる（画素データの移動）。そして、この５個のメモリバンクＢＫ０〜ＢＫ４の書き込みアドレスＷはそれぞれインクリメントされる。
【０１２３】
その後、移動クロックＭＣＫの入力に伴ってアクセスパターンＡＣＰの設定位置が画素列方向（水平方向）に１画素移動する毎に、上述したと同様に、アクセスパターンＡＣＰで特定される６個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ1D，ＩＭ2U，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が同時に読み出され、読み出しアドレスＲのインクリメント、画素データの移動、書き込みアドレスＷのインクリメントの処理が行われる。
【０１２４】
図１８は、アクセスパターンＡＣＰが１画素移動した状態を示している。図１９は、アクセスパターンＡＣＰが１画素移動した状態における、メモリバンクＢＫ０〜ＢＫ５のデータ格納状態および読み出しアドレスＲおよび書き込みアドレスＷのアドレス位置を示している。
【０１２５】
また、図２０は、アクセスパターンＡＣＰが２２画素移動した状態を示している。図２１は、アクセスパターンＡＣＰが２２画素移動した状態における、メモリバンクＢＫ０〜ＢＫ５のデータ格納状態および読み出しアドレスＲおよび書き込みアドレスＷのアドレス位置を示している。
【０１２６】
この場合、図２０に示すように、アクセスパターンＡＣＰの設定位置は、開始位置から画素列方向に直交する方向に１画素分ずれた列の先頭に移動する。以下、アクセスパターンＡＣＰが２２画素移動する毎に、アクセスパターンＡＣＰの設定位置は、画素列方向に直交する方向に１画素分ずれた列の先頭に移動する。そして、アクセスパターンＡＣＰの設定位置が終了位置まで移動したとき、データアクセスの動作が終了する。
【０１２７】
上述の図１５〜図２１を使用した説明は、アクセスパターンＡＣＰが上述した図２に示すものであった場合である。詳細説明は省略するが、アクセスパターンＡＣＰが上述した図３、図４に示すものであった場合におけるデータアクセスの動作も同様にして行われる。
【０１２８】
なお、アクセスパターンＡＣＰが上述した図３に示すものであった場合には、アクセスパターンＡＣＰの設定位置を開始位置から画素列方向に移動した各設定位置で、６個のメモリバンクＢＫ０〜ＢＫ５から、当該アクセスパターンＡＣＰで特定される６個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ2U，ＩＭ1D，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が同時に読み出される。また、アクセスパターンＡＣＰが上述した図４に示すものであった場合には、アクセスパターンＡＣＰの設定位置を開始位置から画素列方向に移動した各設定位置で、４個のメモリバンクＢＫ０〜ＢＫ３から、当該アクセスパターンＡＣＰで特定される４個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3が同時に読み出される。
【０１２９】
次に、セレクタ１６０を説明する。図２２は、セレクタ１６０の構成を示している。このセレクタ１６０は、６×６のマトリックス状に配置された３６個のスイッチ素子１６１(0,0)〜１６１(5,5)で構成されている。
【０１３０】
１行目の６個のスイッチ素子１６１(0,0)〜１６１(0,5)の入力側は、メモリバンクＢＫ０の出力画素データＤo0が入力される入力線１６２-0に接続される。２行目の６個のスイッチ素子１６１(1,0)〜１６１(1,5)の入力側は、メモリバンクＢＫ１の出力画素データＤo1が入力される入力線１６２-1に接続される。３行目の６個のスイッチ素子１６１(2,0)〜１６１(2,5)の入力側は、メモリバンクＢＫ２の出力画素データＤo2が入力される入力線１６２-2に接続される。４行目の６個のスイッチ素子１６１(3,0)〜１６１(3,5)の入力側は、メモリバンクＢＫ３の出力画素データＤo3が入力される入力線１６２-3に接続される。５行目の６個のスイッチ素子１６１(4,0)〜１６１(4,5)の入力側は、メモリバンクＢＫ４の出力画素データＤo4が入力される入力線１６２-4に接続される。そして、６行目の６個のスイッチ素子１６１(5,0)〜１６１(5,5)の入力側は、メモリバンクＢＫ５の出力画素データＤo5が入力される入力線１６２-5に接続される。
【０１３１】
１列目の６個のスイッチ素子１６１(0,0)〜１６１(5,0)の出力側は、画素データＤ1aを出力する出力線１６３-0に接続される。２列目の６個のスイッチ素子１６１(0,1)〜１６１(5,1)の出力側は、画素データＤ1bを出力する出力線１６３-1に接続される。３列目の６個のスイッチ素子１６１(0,2)〜１６１(5,2)の出力側は、画素データＤ1cを出力する出力線１６３-2に接続される。４列目の６個のスイッチ素子１６１(0,3)〜１６１(5,3)の出力側は、画素データＤ2aを出力する出力線１６３-3に接続される。５列目の６個のスイッチ素子１６１(0,4)〜１６１(5,4)の出力側は、画素データＤ2bを出力する出力線１６３-4に接続される。そして、６列目の６個のスイッチ素子１６１(0,5)〜１６１(5,5)の出力側は、画素データＤ2cを出力する出力線１６３-5に接続される。
【０１３２】
このセレクタ１６０には、上述したように、セレクタ設定部１７０から入出力の対応情報ＩＮＦが供給される。この入出力の対応情報ＩＮＦは、出力線１６３-0〜１６３-5のそれぞれに、入力線１６２-0〜１６２-5のうちいずれを接続するかを示す情報であって、本実施の形態ではスイッチ素子１６１(0,0)〜１６１(5,5)のうち接続すべきスイッチ素子を特定する情報となっている。
【０１３３】
例えば、アクセスパターンＡＣＰが上述した図２に示すものであった場合を考える。この場合、上述したように６個のメモリバンクＢＫ０〜ＢＫ５から６個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ1D，ＩＭ2U，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が同時に読み出され、この画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5がそれぞれ入力線１６２-0，１６２-1，１６２-2，１６２-3，１６２-4，１６２-5に出力される。
【０１３４】
この場合、入出力の対応情報ＩＮＦは、スイッチ素子１６１(0,0)，１６１(1,1)，１６１(2,2)，１６１(3,3)，１６１(4,4)，１６１(5,5)を、接続すべきスイッチ素子として特定する。そのため、図２３にハッチングを施して示すスイッチ素子１６１(0,0)，１６１(1,1)，１６１(2,2)，１６１(3,3)，１６１(4,4)，１６１(5,5)が接続状態となり、その他のスイッチ素子は非接続状態となる。
【０１３５】
そのため、入力線１６２-0，１６２-1，１６２-2，１６２-3，１６２-4，１６２-5は、それぞれ出力線１６３-0，１６３-1，１６３-2，１６３-3，１６３-4，１６３-5に接続される。そして、図２４に示すように、６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cとして、それぞれ、画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が出力される。これにより、セレクタ１６０からは、中心画素ＩＭ１，ＩＭ２に対応した画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cが出力され、画素群Ｇ１，Ｇ２毎に連続した画素データを得ることができる。
【０１３６】
また例えば、アクセスパターンＡＣＰが上述した図３に示すものであった場合を考える。この場合、上述したように６個のメモリバンクＢＫ０〜ＢＫ５から６個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ2U，ＩＭ1D，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5が同時に読み出され、この画素データＤo0，Ｄo1，Ｄo2，Ｄo3，Ｄo4，Ｄo5がそれぞれ入力線１６２-0，１６２-1，１６２-2，１６２-3，１６２-4，１６２-5に出力される。
【０１３７】
この場合、入出力の対応情報ＩＮＦは、スイッチ素子１６１(0,0)，１６１(1,1)，１６１(2,3)，１６１(3,2)，１６１(4,4)，１６１(5,5)を、接続すべきスイッチ素子として特定する。そのため、図２５にハッチングを施して示すスイッチ素子１６１(0,0)，１６１(1,1)，１６１(2,3)，１６１(3,2)，１６１(4,4)，１６１(5,5)が接続状態となり、その他のスイッチ素子は非接続状態となる。
【０１３８】
そのため、入力線１６２-0，１６２-1，１６２-2，１６２-3，１６２-4，１６２-5は、それぞれ出力線１６３-0，１６３-1，１６３-3，１６３-2，１６３-4，１６３-5に接続される。そして、図２６に示すように、６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cとして、それぞれ、画素データＤo0，Ｄo1，Ｄo3，Ｄo2，Ｄo4，Ｄo5が出力される。これにより、セレクタ１６０からは、中心画素ＩＭ１，ＩＭ２に対応した画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cが出力され、画素群Ｇ１，Ｇ２毎に連続した画素データを得ることができる。
【０１３９】
また例えば、アクセスパターンＡＣＰが上述した図４に示すものであった場合を考える。この場合、上述したように４個のメモリバンクＢＫ０〜ＢＫ３から４個のアクセス画素ＩＭ1U，ＩＭ１，ＩＭ２，ＩＭ2Dの画素データＤo0，Ｄo1，Ｄo2，Ｄo3が同時に読み出され、この画素データＤo0，Ｄo1，Ｄo2，Ｄo3がそれぞれ入力線１６２-0，１６２-1，１６２-2，１６２-3に出力される。
【０１４０】
この場合、入出力の対応情報ＩＮＦは、スイッチ素子１６１(0,0)，１６１(1,1)，１６１(1,3)，１６１(2,2)，１６１(2,4)，１６１(3,5)を、接続すべきスイッチ素子として特定する。そのため、図２７にハッチングを施して示すスイッチ素子１６１(0,0)，１６１(1,1)，１６１(1,3)，１６１(2,2)，１６１(2,4)，１６１(3,5)が接続状態となり、その他のスイッチ素子は非接続状態となる。
【０１４１】
そのため、入力線１６２-0は出力線１６３-0に接続され、入力線１６２-1は出力線１６３-1，１６３-3に接続され、入力線１６２-2は出力線１６３-2，１６３-4に接続され、さらに入力線１６２-3は出力線１６３-5に接続される。そして、図２８に示すように、６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cとして、それぞれ、画素データＤo0，Ｄo1，Ｄo2，Ｄo1，Ｄo2，Ｄo3が出力される。これにより、セレクタ１６０からは、中心画素ＩＭ１，ＩＭ２に対応した画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cが出力され、画素群Ｇ１，Ｇ２毎に連続した画素データを得ることができる。
【０１４２】
次に、セレクタ設定部１７０を説明する。図２９は、セレクタ設定部１７０の構成を示している。このセレクタ設定部１７０は、アクセスパターン拡張部１７１と、ソート部１７２と、セレクタ位置設定部１７３とを有している。
【０１４３】
アクセスパターン拡張部１７１は、開始位置のアクセスパターンＡＣＰを構成する中心画素ＩＭ１，ＩＭ２の座標情報（ｘ1，ｙ1），（ｘ2，ｙ2）および周辺の情報ＰＥＩに基づいて、画素群Ｇ１，Ｇ２を構成するそれぞれの画素の座標情報を得る。本実施の形態において、上述したように周辺の情報ＰＥＩは「上下位置」を示しており、画素群Ｇ１を構成する３個の画素の座標情報は（ｘ1，ｙ1−１），（ｘ1，ｙ1），（ｘ1，ｙ1＋１）となり、画素群Ｇ２を構成する３個の画素の座標情報は（ｘ2，ｙ2−１），（ｘ2，ｙ2），（ｘ2，ｙ2＋１）となる。
【０１４４】
ソート部１７２は、アクセスパターン拡張部１７１で得られる画素群Ｇ１，Ｇ２を構成するそれぞれの画素の座標情報に基づいて、それぞれの画素が初期格納時に注目画素となる順番を示す順番情報を求める。画面ＳＲＮが、図３０に示すように、ｍ×ｎ個（水平方向にｍ個、垂直方向にｎ個）の画素で構成されている場合、一般に座標情報が（ｘ，ｙ）である画素の順番情報ＮＯは、ＮＯ＝ｘ＋（ｙ−１）ｍの式で求めることができる。
【０１４５】
また、ソート部１７２は、このように求められた画素群Ｇ１，Ｇ２を構成するそれぞれの画素の順番情報を、アクセスパターンＡＣＰの情報ＩＡＰとして、上述したデータ格納制御部１２０に供給する。この場合、上述したように、中心画素ＩＭ１，ＩＭ２の位置関係によっては、画素群Ｇ１，Ｇ２を構成する画素同士が重なることもあるため、画素群Ｇ１，Ｇ２を構成するそれぞれの画素の順番情報の一部が同じものとなり、従ってアクセスパターンＡＣＰを構成する画素の個数が６個より小さくなることもある（図４参照）。
【０１４６】
セレクタ位置設定部１７３は、ソート部１７２で求められた、画素群Ｇ１，Ｇ２を構成するそれぞれの画素の順番情報に基づいて、上述したセレクタ１６０のスイッチ素子１６１(0,0)〜１６１(5,5)のうち接続すべきスイッチ素子を特定する情報である入出力の対応情報ＩＮＦを発生し、セレクタ１６０に供給する。この場合、画素群Ｇ１，Ｇ２を構成するそれぞれの画素の順番情報により、画素群Ｇ１，Ｇ２を構成するそれぞれの画素が注目画素となる順序が各画素群毎に連続したものとなるか否かがわかる。また、当該順番情報により、画素群Ｇ１，Ｇ２を構成する画素同士が重なってアクセスパターンＡＣＰを構成する画素の個数が６個より小さくなるか否かがわかる。
【０１４７】
そのため、セレクタ位置設定部１７３では、画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a，Ｄ1b，Ｄ1c，Ｄ2a，Ｄ2b，Ｄ2cを出力させるために、セレクタ１６０において、出力線１６３-0〜１６３-5のそれぞれに、入力線１６２-0〜１６２-5のうちいずれを接続すべきかを判断でき、入出力の対応情報ＩＮＦを良好に発生できる。
【０１４８】
図１に示すデータアクセス装置１００によれば、初期格納時に、開始位置に設定されたアクセスパターンＡＣＰで特定されるＮ個の初期アクセス画素の画素データがそれぞれ異なるメモリバンクに格納された状態とし、またデータアクセス時に、アクセスパターンＡＣＰの設定位置が所定位置にあるとき、この所定位置におけるアクセスパターンＡＣＰで特定されるＮ個のアクセス画素の画素データをＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)から同時に読み出すと共に、この設定位置が画素列方向に移動した際に、設定位置におけるアクセスパターンＡＣＰで特定されるＮ個の画素の画素データがそれぞれ異なるメモリバンクに格納されているように、所定のメモリバンクから読み出した画素データを、その画素データが格納されていたメモリバンクの１つ前のメモリバンクに格納するものであり、アクセスパターンＡＣＰの設定位置を開始位置から画素列方向に移動した各設定位置で、当該アクセスパターンＡＣＰで特定されるＮ個の画素の画素データを同時に取得することを容易に行い得る。
【０１４９】
また、図１に示すデータアクセス装置１００によれば、セレクタ１６０は、Ｎ個のメモリバンクＢＫ０〜ＢＫ(N-1)から同時に取得されるＮ個のアクセス画素の画素データＤo0〜Ｄo(N-1)から、入出力の対応情報ＩＮＦに基づいて、画素群Ｇ１，Ｇ２を構成するそれぞれの画素に対応させて６個の画素データＤ1a〜Ｄ1c，Ｄ2a〜Ｄ2cを選択的に出力するものであり、中心画素ＩＭ１，ＩＭ２の位置関係に依らず、画素群Ｇ１，Ｇ２毎に連続した画素データを得ることができる。
【０１５０】
また、図１に示すデータアクセス装置１００によれば、セレクタ設定部１７０は、中心画素ＩＭ１，ＩＭ２の座標情報（ｘ1，ｙ1），（ｘ2，ｙ2）と周辺の情報ＰＥＩに基づいてアクセスパターンＡＣＰの情報ＩＡＰおよび入出力の対応情報ＩＮＦを発生するものであり、ユーザは中心画素ＩＭ１，ＩＭ２の座標情報（ｘ1，ｙ1），（ｘ2，ｙ2）および周辺の情報ＰＥＩを与えるだけで任意のアクセスパターンＡＣＰを設定できる。
【０１５１】
また、図１に示すデータアクセス装置１００によれば、データ格納制御部１２０からデータアクセス制御部１４０に各メモリバンクＢＫ０〜ＢＫ５の読み出しフラグＲＦＧを与えるものであり、例えばこれらデータ格納制御部１２０およびデータアクセス制御部１４０を制御する制御装置が、アクセスパターンＡＣＰの情報に基づいて各メモリバンクＢＫ０〜ＢＫ５の読み出しフラグＲＦＧを生成して、データアクセス制御部１４０に与えることが必要でなくなる。
【０１５２】
また、図１に示すデータアクセス装置１００によれば、データ格納制御部１２０からデータアクセス制御部１４０に各メモリバンクＢＫ０〜ＢＫ５の開始アドレスＲＳ，ＷＳを与えるものであり、例えばこれらデータ格納制御部１２０およびデータアクセス制御部１４０を制御する制御装置が、アクセスパターンＡＣＰおよび一定数Ｎの情報に基づいて各メモリバンクＢＫ０〜ＢＫ５の開始アドレスＲＳ，ＷＳを生成して、データアクセス制御部１４０に与えることが必要でなくなる。
【０１５３】
なお、上述の実施の形態においては、中心画素の個数が２個であり、また周辺の情報ＰＥＩが「上下位置」を示すものを示したが、この発明は、中心画素の個数が３個以上、また周辺の情報が「上下位置」以外の場合にも同様に適用できる。なおこの場合、中心画素の個数がｐ個であって、一個の中心画素に対する周辺の画素の個数がｑ個であるとき、ｐ個の中心画素がいかなる位置関係であっても適用可能とするためには、メモリ部１１０にはｐ×ｑ個のメモリバンクを用意しておく必要がある。
【０１５４】
また、上述実施の形態においては、画面ＳＲＮが水平方向に伸びる画素列が垂直方向に順次配列された構成であるとし、初期格納時には、各画素列の画素を順に注目画素とし、この注目画素の画素データをＮ個のメモリバンクＢＫ０〜ＢＫ(N-1)に振り分けて格納し、データアクセス時には、アクセスパターンＡＣＰの設定位置を画素列方向に移動した各設定位置で当該アクセスパターンＡＣＰで特定されるＮ個のアクセス画素の画素データＤo1〜Ｄo(N-1)を同時に得るものを示したが、画面ＳＲＮが垂直方向に伸びる画素列が水平方向に順次配列された構成であるとして、初期格納時およびデータアクセス時の動作を行うように構成することもできる。
【０１５５】
また、上述実施の形態においては、データ格納制御部１２０からデータアクセス制御部１４０に開始アドレスＲＳ，ＷＳおよび読み出しフラグＲＦＧを与えるものを示したが、これら開始アドレスＲＳ，ＷＳおよび読み出しフラグＲＦＧを、データ格納制御部１２０およびデータアクセス制御部１４０の動作を制御する制御装置から、データアクセス制御部１４０に与える構成とすることもできる。
【産業上の利用可能性】
【０１５６】
この発明は、アクセスパターンの設定位置を開始位置から画素列方向に順次移動した各設定位置で、当該アクセスパターンで特定される複数の画素の画素データの同時取得を容易に行い得るものであり、例えば特定のデータ配列を認識してパターン認識や動き検出等の処理を行う装置に適用できる。
【図面の簡単な説明】
【０１５７】
【図１】実施の形態としてのデータアクセス装置の構成を示すブロック図である。
【図２】画面上に設定されたアクセスパターンの一例を示す図である。
【図３】画面上に設定されたアクセスパターンの一例を示す図である。
【図４】画面上に設定されたアクセスパターンの一例を示す図である。
【図５】データアクセス装置を構成するデータ格納制御部の構成を示すブロック図である。
【図６】データ格納制御部の制御による初期格納時の動作を示すフローチャートである。
【図７】図２のアクセスパターンにおける、画素データの初期格納状態を示す図である。
【図８】図２のアクセスパターンにおける、初期格納後の各メモリバンクのデータ格納状態を示す図である。
【図９】図３のアクセスパターンにおける、画素データの初期格納状態を示す図である。
【図１０】図３のアクセスパターンにおける、初期格納後の各メモリバンクのデータ格納状態を示す図である。
【図１１】図４のアクセスパターンにおける、画素データの初期格納状態を示す図である。
【図１２】図４のアクセスパターンにおける、初期格納後の各メモリバンクのデータ格納状態を示す図である。
【図１３】データアクセス装置を構成するデータアクセス制御部の構成を示すブロック図である。
【図１４】データアクセス制御部の制御によるデータアクセス時の動作を示すフローチャートである。
【図１５】アクセスパターンが画面上の開始位置にある状態を示す図である。
【図１６】各メモリバンクの初期状態における、データ格納状態、読み出しおよび書き込みのアドレスを示す図である。
【図１７】画素データの読み出し後の移動処理を説明するための図である。
【図１８】画面上に設定されたアクセスパターンが開始位置から１画素移動した状態を示す図である。
【図１９】アクセスパターンが１画素移動後の各メモリバンクのデータ格納状態、読み出しおよび書き込みのアドレスを示す図である。
【図２０】画面上に設定されたアクセスパターンが開始位置から２２画素移動した状態を示す図である。
【図２１】アクセスパターンが２２画素移動後の各メモリバンクのデータ格納状態、読み出しおよび書き込みのアドレスを示す図である。
【図２２】データアクセス装置を構成するセレクタの構成を示すブロック図である。
【図２３】図２のアクセスパターンにおける、セレクタの選択例を示す図である。
【図２４】図２のアクセスパターンにおける、各メモリバンクと出力データとの対応例を示す図である。
【図２５】図３のアクセスパターンにおける、セレクタの選択例を示す図である。
【図２６】図３のアクセスパターンにおける、各メモリバンクと出力データとの対応例を示す図である。
【図２７】図４のアクセスパターンにおける、セレクタの選択例を示す図である。
【図２８】図４のアクセスパターンにおける、各メモリバンクと出力データとの対応例を示す図である。
【図２９】データアクセス装置を構成するセレクタ設定部の構成を示すブロック図である。
【図３０】画面の垂直、水平の画素数を示す図である。
【図３１】一般的な半導体メモリの構造を概略的に示す図である。
【図３２】同時アクセスできない状態を示す図である。
【図３３】複数メモリバンクのメモリ構成を示す図である。
【図３４】画面上に設定されたアクセスパターンの一例を示す図である。
【図３５】４個のメモリバンクへの画素データの格納例を示す図である。
【図３６】アクセスパターンが開始位置にあるときの各メモリバンクにおけるデータアクセス位置を示す図である。
【図３７】アクセスパターンを５画素移動した状態を示す図である。
【図３８】アクセスパターンが５画素移動した位置にあるときの各メモリバンクにおけるデータアクセス位置を示す図である。
【符号の説明】
【０１５８】
１００・・・データアクセス装置、１１０・・・メモリ部、１１１・・・入力端子、１１２・・・出力端子、ＢＫ０〜ＢＫ５・・・メモリバンク、１２０・・・データ格納制御部、１２１・・・カウンタ、１２２・・・一致判定部、１２３・・・バンクアドレスカウンタ、１２４・・・ビット線アドレスカウンタ、１２５・・・ワードアドレス線カウンタ、１２６・・・アドレス生成部、１２７・・・読み出しフラグ生成部、１４０・・・データアクセス制御部、１４１・・・カウンタ、１４２・・・アドレスカウンタ制御部、１４３・・・読み出しアドレスカウンタ、１４４・・・書き込みアドレスカウンタ、１４５・・・読み出しアドレス生成部、１４６・・・書き込みアドレス生成部、１６０・・・セレクタ、１６１(0,0)〜１６１(5,5)・・・スイッチ素子、１６２-0〜１６２-5・・・入力線、１６３−１〜１６３−５・・・出力線、１７０・・・セレクタ設定部、１７１・・・アクセスパターン拡張部、１７２・・・ソート部、１７３・・・セレクタ位置設定部、１８０・・・入力端子
【図１】
2006323604.tif 000003
【図２】
2006323604.tif 000004
【図３】
2006323604.tif 000005
【図４】
2006323604.tif 000006
【図５】
2006323604.tif 000007
【図６】
2006323604.tif 000008
【図７】
2006323604.tif 000009
【図８】
2006323604.tif 000010
【図９】
2006323604.tif 000011
【図１０】
2006323604.tif 000012
【図１１】
2006323604.tif 000013
【図１２】
2006323604.tif 000014
【図１３】
2006323604.tif 000015
【図１４】
2006323604.tif 000016
【図１５】
2006323604.tif 000017
【図１６】
2006323604.tif 000018
【図１７】
2006323604.tif 000019
【図１８】
2006323604.tif 000020
【図１９】
2006323604.tif 000021
【図２０】
2006323604.tif 000022
【図２１】
2006323604.tif 000023
【図２２】
2006323604.tif 000024
【図２３】
2006323604.tif 000025
【図２４】
2006323604.tif 000026
【図２５】
2006323604.tif 000027
【図２６】
2006323604.tif 000028
【図２７】
2006323604.tif 000029
【図２８】
2006323604.tif 000030
【図２９】
2006323604.tif 000031
【図３０】
2006323604.tif 000032
【図３１】
2006323604.tif 000033
【図３２】
2006323604.tif 000034
【図３３】
2006323604.tif 000035
【図３４】
2006323604.tif 000036
【図３５】
2006323604.tif 000037
【図３６】
2006323604.tif 000038
【図３７】
2006323604.tif 000039
【図３８】
2006323604.tif 000040