(57)【要約】  【課題】データを列単位で読み出すモジュールと行単位で読み出すモジュールを有する画像処理装置について、メモリーの設置に基づく回路規模の増大化を防ぐための技術を提供する。  【解決手段】行アクセスする第１のモジュール（行アクセス処理部１０７）と、列アクセスする第２のモジュール（列アクセス処理部１０８）と、で共用されるラインメモリー１０６を備える画像処理装置１００における画像読み出し方法である。ラインメモリー１０６は、複数のバンク（１０６１Ａ〜Ｈ）を有しており、第１のモジュールは、別々のバンクの同アドレス位置に格納されているデータをそれぞれ読み出し、第２のモジュールは、同一バンク内において同行に格納されている複数のデータを読み出す。【選択図】図１
2012043126.tif 000002
【特許請求の範囲】
【請求項１】
行アクセスする第１のモジュールと、
列アクセスする第２のモジュールと、
前記第１のモジュールと前記第２のモジュールとで共用されるメモリーと、
前記メモリーにデータを書き込む書込制御部と、を備え
前記書き込み制御部は、前記メモリーの書き込み処理において、前記第１のモジュールと前記第２のモジュールとは共通の処理でデータを書き込み、
前記第１のモジュールは、前記メモリーの読み出し処理において、行アクセスによって前記データを読み出し、
前記第２のモジュールは、前記メモリーの読み出し処理において、列アクセスによって前記データを読み出すことを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記メモリーは、複数のバンクを有しており、
前記第１のモジュールは、別々のバンクの同アドレス位置に格納されているデータをそれぞれ読み出し、
前記第２のモジュールは、同一バンク内において同行に格納されている複数のデータを読み出す、
ことを特徴とする画像処理装置。
【請求項３】
請求項１又は２に記載の画像処理装置であって、
前記書込制御部は、
処理単位の行方向に連続したデータを、別々のバンクの同アドレス位置に格納し、
処理単位の列方向に連続したデータを、同一バンク内の同行に格納する、
ことを特徴とする画像処理装置。
【請求項４】
請求項１乃至３のいずれか１項に記載の画像処理装置であって、
モード決定部をさらに備え、
当該モード決定部は、
データに施す処理内容に応じて、行アクセスするか列アクセスするか決定する、
ことを特徴とする画像処理装置。
【請求項５】
行アクセスする第１のモジュールと、列アクセスする第２のモジュールと、で共用されるメモリーを備える画像処理装置におけるメモリー制御方法であって、
前記メモリーは、複数のバンクを有しており、
前記第１のモジュールと前記第２のモジュールとは共通の処理で前記複数のバンクにデータを書き込み、
前記第１のモジュールは、別々のバンクの同アドレス位置に格納されているデータをそれぞれ読み出し、
前記第２のモジュールは、同一バンク内において同行に格納されている複数のデータを読み出す、
ことを特徴とする画像処理装置におけるメモリー制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリー、画像処理装置、および、画像読み出し方法に関する。
【背景技術】
【０００２】
画像処理装置では、メインメモリーに格納されている元の画像データを部分的に抽出して、サブメモリー（例えば、ラインメモリー）に順次格納し、所定の画像処理モジュールがサブメモリーからデータを取得しながら加工処理を施す。
【０００３】
例えば、フィルタリング処理などを行う画像処理モジュールでは、フィルタリング対象の画像データを列単位で取得したい場合がある。一方、他の処理時において、画像データを行単位で取得したい場合もある。
【０００４】
画像データを列単位で読み出す処理と行単位で読み出す処理では、動作が大きく異なる。そのため、従来の画像処理装置では、画像データを列単位で読み出すモジュールと、行単位で読み出すモジュールと、にそれぞれ異なるサブメモリーを用意している（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−７２８６７号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、画像データを列単位で読み出すモジュールと行単位で読み出すモジュールに、異なるサブメモリーを用意することは、回路規模の増大化をまねき、好ましくない。
【０００７】
本発明は、データを列単位で読み出すモジュールと行単位で読み出すモジュールを有する画像処理装置について、メモリーの設置に基づく回路規模の増大化を防ぐための技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するための本願発明は、行アクセスする第１のモジュールと、列アクセスする第２のモジュールと、前記第１のモジュールと前記第２のモジュールとで共用されるメモリーと、前記メモリーにデータを書き込む書込制御部と、を備え、前記書き込み制御部は、前記メモリーの書き込み処理において、前記第１のモジュールと前記第２のモジュールとは共通の処理でデータを書き込み、前記第１のモジュールは、前記メモリーの読み出し処理において、行アクセスによって前記データを読み出し、前記第２のモジュールは、前記メモリーの読み出し処理において、列アクセスによって前記データを読み出す。
【図面の簡単な説明】
【０００９】
【図１】本発明の画像処理装置１００の概略構成の一例を示すブロック図である。
【図２】（Ａ）メインメモリー１０２に格納される概略データ構成、及び、メインメモリー１０２に行アクセスする場合の処理を説明するための図である。（Ｂ）メインメモリー１０２に列アクセスする場合の処理を説明するための図である。
【図３】ラインメモリー１０６の概略構成の一例を示すブロック図である。
【図４】ラインメモリー１０６に格納される概略データ構成、及び、行アクセス時のラインメモリー１０６における入出力について説明するための図である。
【図５】（Ａ）行アクセス時において、各バンク（１０６１Ａ〜Ｈ）からそれぞれ入力されたデータのうち、セレクター１０６２が選択して転送するデータを示す図である。（Ｂ）列アクセス時においてラインメモリー１０６から出力されるデータ構成について説明するための図である。
【図６】列アクセス時においてラインメモリー１０６から画像データを出力する例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態の一例を図面を参照して説明する。
【００１１】
図１は、本発明の一実施形態が適用された画像処理装置１００の概略構成の一例を示すブロック図である。
【００１２】
画像処理装置１００は、フィルタリング処理等の各種画像処理を行う装置である。本実施形態の画像処理装置１００には、例えば、スキャナー、プリンター、複合機、複写機、デジタルカメラ、パーソナルコンピューター等の一般的な情報処理装置、等が適用できる。
【００１３】
画像処理装置１００は、図示するように、ＣＰＵ（Central Processing Unit）１０１と、メインメモリー１０２と、メインメモリーアクセス制御部１０３と、入力データ制御部１０４と、出力データ制御部１０５と、ラインメモリー１０６と、行アクセス処理部１０７と、列アクセス処理部１０８と、を備える。
【００１４】
行アクセス処理部１０７は、メインメモリー１０２に格納されている画像データに対して、行アクセスを必要とする画像処理を施す。例えば、行アクセス処理部１０７は、フィルタリング処理、シェーディング補正等の画像処理を行う。なお、行アクセスとは、メインメモリー１０２に格納されているデータの配置を基準として、行アクセス処理部１０７が行単位でデータを取得することを指す。
【００１５】
また、列アクセス処理部１０８は、メインメモリー１０２に格納されている画像データに対して、列アクセスを必要とする画像処理を施す。例えば、列アクセス処理部１０８は、フィルタリング処理等の画像処理を行う。なお、列アクセスとは、メインメモリー１０２に格納されているデータの配置を基準として、列アクセス処理部１０８が列単位でデータを取得することを指す。
【００１６】
ところで、メインメモリー１０２に格納されているデータは、行アクセスでも列アクセスでも共通の方法で一旦ラインメモリー１０６に転送される。そして、行アクセス処理部１０７がラインメモリー１０６からデータを取得する場合と、列アクセス処理部１０８がラインメモリー１０６からデータを取得する場合と、に応じて、データの取得方法を変更することで、行単位のデータ取得と列単位のデータ取得を可能にする。
【００１７】
ＣＰＵ１０１は、バスを介して他のユニット（１０２〜１０６）と接続されており、各ユニット（１０２〜１０６）を制御する。ＣＰＵ１０１は、メインメモリー１０２に格納されている各種プログラムを読み出し、読み出したプログラムに従って各種制御を行う。
【００１８】
例えば、ＣＰＵ１０１は、行アクセス処理部１０７がメインメモリー１０２内の画像データに対して画像処理を行う場合には、メインメモリー１０２から行アクセスによって画像データを読み出す制御を行う。一方、ＣＰＵ１０１は、列アクセス処理部１０８がメインメモリー１０２内の画像データに対して画像処理を行う場合には、メインメモリー１０２から列アクセスによって画像データを読み出す制御を行う。
【００１９】
メインメモリー１０２は、ＣＰＵ１０１が実行する各種プログラム、各種画像データ、等を格納する。メインメモリー１０２は、例えば、ＤＲＡＭ（Dynamic Random Access Memory）、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）、フラッシュメモリー等で構成される。
【００２０】
図２（Ａ）は、メインメモリー１０２に格納される概略データ構成、及び、メインメモリー１０２に行アクセスする場合の処理を説明するための図である。
【００２１】
図示する例では、メインメモリー１０２には、１２８行×１２８列のバイト単位の格納領域がある。そして、図示するように、行アクセス時には、行アクセス処理部１０７が、同行に格納されていたデータ（図示する太線）をまとめて取得できる。なお、行アクセスといっても、同行に格納されている全てのデータをまとめて取得する必要はなく、例えば、フィルタリング処理等の画像処理を３２ビット単位で行う場合には、同行に格納されているデータのうち、一部のデータ（図示する楕円で囲まれたデータ）をまとめて取得するようにしてもよい。
【００２２】
一方、図２（Ｂ）は、メインメモリー１０２に列アクセスする場合の処理を説明するための図である。図示するように、列アクセス時には、列アクセス処理部１０８が、同列に格納されていたデータ（図示する太線）をまとめて取得できる。なお、列アクセスといっても、同列に格納されている全てのデータをまとめて取得する必要はなく、例えば、フィルタリング処理等の画像処理を３２ビット単位で行う場合には、同列に格納されているデータのうち、一部のデータ（図示する楕円で囲まれたデータ）をまとめて取得するようにしてもよい。
【００２３】
図１に戻り、メインメモリーアクセス制御部１０３は、行アクセス処理部１０７からメインメモリー１０２へのアクセスと、列アクセス処理部１０８からメインメモリー１０２へのアクセスと、を制御する。具体的には、メインメモリーアクセス制御部１０３は、メインメモリー１０２に格納されている画像データを、行アクセス処理部１０７或いは列アクセス処理部１０８へ読み出す場合に、入力データ制御部１０４に対して、データ読み出しの指示を行う。一方、メインメモリーアクセス制御部１０３は、行アクセス処理部１０７或いは列アクセス処理部１０８で各種画像処理が施されたデータを、メインメモリー１０２に格納する場合に、出力データ制御部１０５に対して、データ書き込みの指示を行う。
【００２４】
入力データ制御部１０４は、メインメモリー１０２に格納されている画像データを、ラインメモリー１０６へ入力する制御を行う。なお、ラインメモリー１０６へ画像データを入力する場合には、入力先の格納領域を指定（後述するバンクの選択、アドレス位置の指定）して行う。
【００２５】
出力データ制御部１０５は、行アクセス処理部１０７で処理されたデータや、列アクセス処理部１０８で処理されたデータを、メインメモリー１０２へ書き込む制御を行う。
【００２６】
なお、ＣＰＵ１０１、メインメモリー１０２、メインメモリーアクセス制御部１０３、入力データ制御部１０４、出力データ制御部１０５を相互に接続するバスのバス幅Ｎは、例えば、６４ビットとする。
【００２７】
ラインメモリー１０６は、画像処理用に設けられるサブメモリーであり、行アクセス処理部１０７と、列アクセス処理部１０８と、で共用されるメモリーである。ラインメモリー１０６には、行アクセス処理部１０７および列アクセス処理部１０８による画像処理対象の画像データがメインメモリー１０２から読み出されて格納される。
【００２８】
図３は、ラインメモリー１０６の概略構成の一例を示すブロック図である。図示するように、ラインメモリー１０６は、複数のバンクを有している。各バンクは、例えば、ＳＲＡＭ（Static Random Access Memory）で構成される。
【００２９】
なお、図示する例では、ラインメモリー１０６は、８個のバンク（第１のバンク１０６１Ａ、第２のバンク１０６１Ｂ、第３のバンク１０６１Ｃ、第４のバンク１０６１Ｄ、第５のバンク１０６１Ｅ、第６のバンク１０６１Ｆ、第７のバンク１０６１Ｇ、第８のバンク１０６１Ｈ）を有している。そして、メインメモリー１０２から転送された画像データは、入力データ制御部１０４によって選択（ＣＳ０〜７）されたバンクに格納される。
【００３０】
ここで、各バンク（１０６１Ａ〜Ｈ）は、それぞれ、例えば、１６行×４列の記憶領域を有しており、６４バイトの記憶容量を有する。なお、各バンク（１０６１Ａ〜Ｈ）は、例えば、１バイト単位で画像データを格納可能に設計されている。具体的には、各バンク（１０６１Ａ〜Ｈ）は、入力データ制御部１０４によってアドレス位置（行アドレスＡ[３：０]、列アドレスＢ[３：０]）が指定されると、指定されたアドレス位置に１バイト分の画像データを格納する。
【００３１】
なお、各バンク（１０６１Ａ〜Ｈ）のアドレス位置（行アドレスＡ[３：０]、列アドレスＢ[３：０]）の指定には、共通の信号が用いられる。そのため、アドレス位置を１回指定するだけで、全バンク（１０６１Ａ〜Ｈ）の同アドレス位置を一斉に指定できる。そして、メインメモリー１０２から入力されたＮビット（例えば、６４ビット）の画像データは、各バンク（１０６１Ａ〜Ｈ）の同アドレス位置に、１バイトずつ格納される。
【００３２】
また、各バンク（１０６１Ａ〜Ｈ）は、行アクセス処理部１０７或いは列アクセス処理部１０８からの要求に応じて、バンク内に格納されている画像データを出力する。具体的には、各バンク（１０６１Ａ〜Ｈ）は、行アクセス処理部１０７或いは列アクセス処理部１０８から行アドレス位置（行アドレスＡ[３：０]）が指定されると、指定された行アドレス位置の画像データ（１ライン分）を出力する。
【００３３】
このとき、各バンク（１０６１Ａ〜Ｈ）の行アドレス位置（行アドレスＡ[３：０]）の指定には、共通の信号が用いられているため、指定された行アドレス位置の画像データ（１ライン分）が各バンク（１０６１Ａ〜Ｈ）から一斉に出力される。
【００３４】
また、ラインメモリー１０６は、図３に示すように、セレクター１０６２を備える。セレクター１０６２は、各バンク（１０６１Ａ〜Ｈ）とＭビット（例えば、３２ビット）幅のバスを介して接続されており、各バンク（１０６１Ａ〜Ｈ）から転送された画像データを選択的に行アクセス処理部１０７、或いは、列アクセス処理部１０８へ転送する。
【００３５】
ここで、セレクター１０６２は、行アクセス処理部１０７へ画像データを転送する場合には、別々のバンクの同アドレス位置に格納されているデータを選択して転送する。具体的には、セレクター１０６２は、図示するＭｏｄｅ信号を参照して行アクセスモードか列アクセスモードか決定し、行アクセスモードに決定した場合には、各バンク（１０６１Ａ〜Ｈ）からそれぞれＭビット単位（１ライン分）で転送された画像データのうち、同アドレス位置の１バイト分の画像データを選択（抽出）して転送する。
【００３６】
一方、セレクター１０６２は、列アクセス処理部１０７へ画像データを出力する場合には、同一バンク内において同行（同ライン）に格納されているデータを選択して転送する。具体的には、セレクター１０６２は、図示するＭｏｄｅ信号を参照して行アクセスモードか列アクセスモードか決定し、列アクセスモードに決定した場合には、１つのバンクを選択して、選択したバンクから転送されたＭビット単位（１ライン分）の画像データを転送する。
【００３７】
本実施形態が適用された画像処理装置１００は、以上のような構成からなる。ただし、この構成は、本願発明の特徴を説明するにあたって主要構成を説明したのであって、上記の構成に限られない。また、一般的な画像処理装置が備える他の構成を排除するものではない。
【００３８】
また、上記した各構成要素は、画像処理装置１００の構成を理解容易にするために、主な処理内容に応じて分類したものである。構成要素の分類の仕方や名称によって、本願発明が制限されることはない。画像処理装置１００の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、１つの構成要素がさらに多くの処理を実行するように分類することもできる。また、各構成要素の処理は、１つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
【００３９】
次に、上記構成からなる画像処理装置１００の特徴的な動作について説明する。
【００４０】
＜行アクセスモード＞
まず、行アクセス処理部１０７がメインメモリー１０２へ行アクセスする場合の動作について説明する。
【００４１】
行アクセス処理部１０７は、メインメモリー１０２から画像データを読み出す場合には、画像処理を開始することをＣＰＵ１０１に通知する、これとともに、行アクセス処理部１０７は、ラインメモリー１０６のセレクター１０６２に行アクセスモードを指定する信号（Ｍｏｄｅ信号）を供給する。
【００４２】
このとき、ＣＰＵ１０１は、メインメモリーアクセス制御部１０３に対して、メインメモリー１０２から画像データを読み出す指示を通知する。そして、この通知を受けたメインメモリーアクセス制御部１０３は、入力データ制御部１０４に対して、データ読み出しの指示を行う。
【００４３】
それから、入力データ制御部１０４は、メインメモリー１０２に格納されている画像データをラインメモリー１０６へ転送する。具体的には、入力データ制御部１０４は、メインメモリー１０２内において同列に格納されているデータを、ラインメモリー１０６の各バンク（１０６１Ａ〜Ｈ）内で同行（同ライン）となるように格納する。
【００４４】
図４は、ラインメモリー１０６に格納される概略データ構成、及び、行アクセス時のラインメモリー１０６における入出力について説明するための図である。
【００４５】
図示する例では、図２（Ａ）に示す画像データをラインメモリー１０６に格納している。すなわち、入力データ制御部１０４は、メインメモリー１０２内の１、９、１７、・・・、８ｎ＋１列目（ただし、ｎは０以上の整数）の画像データを、４バイト単位で第１のバンク１０６１Ａの同行（同ライン）に格納する。同様に、入力データ制御部１０４は、メインメモリー１０２内の８ｎ＋２列目の画像データを、４バイト単位で第２のバンク１０６１Ｂの同行に格納し、メインメモリー１０２内の８ｎ＋３列目の画像データを、４バイト単位で第３のバンク１０６１Ｃの同行に格納し、メインメモリー１０２内の８ｎ＋４列目の画像データを、４バイト単位で第４のバンク１０６１Ｄの同行に格納し、メインメモリー１０２内の８ｎ＋５列目の画像データを、４バイト単位で第５のバンク１０６１Ｅの同行に格納し、メインメモリー１０２内の８ｎ＋６列目の画像データを、４バイト単位で第６のバンク１０６１Ｆの同行に格納し、メインメモリー１０２内の８ｎ＋７列目の画像データを、４バイト単位で第７のバンク１０６１Ｇの同行に格納し、メインメモリー１０２内の８ｎ＋８列目の画像データを、４バイト単位で第８のバンク１０６１Ｈの同行に格納する。
【００４６】
なお、入力データ制御部１０４は、メインメモリー１０２内の画像データをラインメモリー１０６に格納するとき、上述した通りに、格納先となるバンクに信号（ＣＳ０〜７）を供給し、それから、アドレス位置（行アドレスＡ[３：０]、列アドレスＢ[３：０]）を指定して画像データをラインメモリー１０６に格納していく。
【００４７】
こうして、メインメモリー１０２内において行方向に連続したデータは、ラインメモリー１０６内の別々のバンク（１０６１Ａ〜Ｈ）の同アドレス位置に格納される。また、メインメモリー１０２内において列方向に連続したデータは、ラインメモリー１０６の同一バンク（１０６１Ａ〜Ｈ）内の同行（同ライン）に格納されることになる。
【００４８】
そして、行アクセス処理部１０７は、以上のようにラインメモリー１０６に格納された画像データを、ラインメモリー１０６から読み出す。具体的には、行アクセス処理部１０７は、ラインメモリー１０６の各バンク（１０６１Ａ〜Ｈ）に対して行アドレス位置（行アドレスＡ[３：０]）を指定して、１行（１ライン）ずつ画像データを出力させる。
【００４９】
そして、各バンク（１０６１Ａ〜Ｈ）から出力された画像データは、セレクター１０６２に入力される。
【００５０】
セレクター１０６２は、行アクセス処理部１０７から供給されたＭｏｄｅ信号を参照して、行アクセスモードか列アクセスモードか決定する。セレクター１０６２は、行アクセス処理部１０７からＭｏｄｅ信号が供給されている場合には、行アクセスモードと決定する。
【００５１】
行アクセスモードと決定されると、セレクター１０６２は、各バンク（１０６１Ａ〜Ｈ）からそれぞれ入力された画像データ（１ライン分）のうち、同アドレス位置の１バイト分の画像データを選択（抽出）し、まとめて行アクセス処理部１０７へ転送する。
【００５２】
ここで、本実施形態ではバンクの個数を８個としているため、セレクター１０６２が行アクセス処理部１０７へ転送する画像データは８バイトとなる。もちろん、８バイト分の画像データをまとめて行アクセス処理部１０７へ転送できない場合には、複数回にわけて行アクセス処理部１０７へ転送するようにしてもよい。
【００５３】
図５（Ａ）は、行アクセスモードにおいて、各バンク（１０６１Ａ〜Ｈ）からそれぞれ入力された画像データのうち、セレクター１０６２が選択して転送するデータを示す図である。
【００５４】
図示するように、セレクター１０６２は、各バンク（１０６１Ａ〜Ｈ）から入力されたそれぞれの画像データについて、同アドレス位置（例えば、０ビット目から７ビット目）の画像データ（Ｄｏｕｔ０[７：０]、Ｄｏｕｔ１[７：０]、 Ｄｏｕｔ２[７：０] 、Ｄｏｕｔ３[７：０]、 Ｄｏｕｔ４[７：０]、Ｄｏｕｔ５[７：０]、Ｄｏｕｔ６[７：０]、 Ｄｏｕｔ７[７：０]）を選択して、行アクセス処理部１０７へ転送する。２回にわけて転送する場合には、図示するように、セレクター１０６２は、同アドレス位置の画像データを、第１〜第４のバンク（１０６１Ａ〜Ｄ）から選択したデータ（Ｄｏｕｔ３[７：０]、Ｄｏｕｔ２[７：０]、 Ｄｏｕｔ１[７：０] 、Ｄｏｕｔ０[７：０]）と、第５〜第８のバンク（１０６１Ｅ〜Ｈ）から選択したデータ（Ｄｏｕｔ７[７：０]、Ｄｏｕｔ６[７：０]、 Ｄｏｕｔ５[７：０] 、Ｄｏｕｔ４[７：０]）と、にわけて転送すればよい。
【００５５】
以上の転送を、各バンク（１０６１Ａ〜Ｈ）とセレクター１０６２は、各バンク（１０６１Ａ〜ｈ）内の全データについて転送し終えるまで繰り返し実行する。こうして、ラインメモリー１０６から、図４の太線で囲まれているようなデータ、すなわち、別々のバンク（１０６１Ａ〜Ｈ）の同アドレス位置に格納されているデータを、まとめて行アクセス処理部１０７へ転送できる。
【００５６】
その後、行アクセス処理部１０７は、ラインメモリー１０６から転送された画像データに対して画像処理（例えば、シェーディング補正等）の画像処理を施す。
【００５７】
それから、行アクセス処理部１０７は、画像処理済みの画像データを出力データ制御部１０５に転送し、出力データ制御部１０７は、転送された画像データをメインメモリー１０２へ書き込む。
【００５８】
以上のように、行アクセス処理部１０７は、ラインメモリー１０６を用いてメインメモリー１０２から画像データを読み出し、画像処理を行う。
【００５９】
＜列アクセスモード＞
次に、列アクセス処理部１０８がメインメモリー１０２へ列アクセスする場合の動作について説明する。
【００６０】
列アクセス処理部１０８は、メインメモリー１０２から画像データを読み出す場合には、画像処理を開始することをＣＰＵ１０１に通知する、これとともに、列アクセス処理部１０８は、ラインメモリー１０６のセレクター１０６２に列アクセスモードを指定する信号（Ｍｏｄｅ信号）を供給する。
【００６１】
このとき、ＣＰＵ１０１は、メインメモリーアクセス制御部１０３に対して、メインメモリー１０２から画像データを読み出す指示を通知する。そして、この通知を受けたメインメモリーアクセス制御部１０３は、入力データ制御部１０４に対して、データ読み出しの指示を行う。
【００６２】
すなわち、入力データ制御部１０４は、メインメモリー１０２に格納されている画像データをラインメモリー１０６へ転送して格納する。具体的な転送方法については、行アクセス時の転送方法と同様なので省略する。
【００６３】
そして、列アクセス処理部１０８は、ラインメモリー１０６に格納された画像データを、ラインメモリー１０６から読み出す。具体的には、列アクセス処理部１０８は、ラインメモリー１０６の各バンク（１０６１Ａ〜Ｈ）に対して行アドレス位置（行アドレスＡ[３：０]）を指定して、１行（１ライン）ずつ画像データを出力させる。
【００６４】
なお、図６は、列アクセス時においてラインメモリー１０６から画像データを出力する例を示す図である。
【００６５】
図示するように各バンク（１０６１Ａ〜Ｈ）から出力された画像データは、セレクター１０６２に入力される。
【００６６】
セレクター１０６２は、列アクセス処理部１０８から供給されたＭｏｄｅ信号を参照して、行アクセスモードか列アクセスモードか決定する。セレクター１０６２は、列アクセス処理部１０８からＭｏｄｅ信号が供給されている場合には、列アクセスモードと決定する。
【００６７】
列アクセスモードと決定されると、セレクター１０６２は、各バンク（１０６１Ａ〜Ｈ）からそれぞれ入力された画像データ（１ライン分）のうち、１つのバンクから入力された１ライン分の画像データを選択して、列アクセス処理部１０８へ転送する。
【００６８】
図５（Ｂ）は、列アクセスモードにおいて、各バンク（１０６１Ａ〜Ｈ）からそれぞれ入力された画像データのうち、セレクター１０６２が選択して転送するデータを示す図である。
【００６９】
図示するように、セレクター１０６２は、各バンク（１０６１Ａ〜Ｈ）から入力されたそれぞれの画像データのうち、１つのバンクから入力された１ライン分（例えば、０ビット目から３１ビット目）の画像データ（Ｄｏｕｔ０[３１：０]）を選択して、列アクセス処理部１０８へ転送する。
【００７０】
以上の転送を、ラインメモリー１０６の各バンク（１０６１Ａ〜Ｈ）とセレクター１０６２は、ラインメモリー１０６内の全データについて転送し終えるまで繰り返し実行する。こうして、ラインメモリー１０６は、図６の太線で囲まれているようなデータ、すなわち、同一バンク内において同行（同ライン）に格納されているデータを、まとめて列アクセス処理部１０８へ転送できる。
【００７１】
そして、列アクセス処理部１０８は、ラインメモリー１０６から転送された画像データに対して画像処理（例えば、フィルタリング処理等）の画像処理を施す。
【００７２】
それから、列アクセス処理部１０８は、画像処理済みの画像データを出力データ制御部１０５に転送し、出力データ制御部１０５は、転送された画像データをメインメモリー１０２へ書き込む。
【００７３】
以上のように、列アクセス処理部１０８は、行アクセス処理部１０７と共用のラインメモリー１０６を用いて、メインメモリー１０２から画像データを読み出し、画像処理を行う。
【００７４】
従って、本実施形態の画像処理装置１００では、行アクセス処理部１０７と列アクセス処理部１０８に、異なるラインメモリー１０６を用意する必要がなく、ラインメモリー１０６の設置に基づく回路規模の増大化を防ぐことができる。
【００７５】
なお、上記の実施形態は、本発明の要旨を例示することを意図し、本発明を限定するものではない。多くの代替物、修正、変形例は当業者にとって明らかである。
【００７６】
例えば、上記の実施形態では、ラインメモリー１０６に画像データを格納する処理と、ラインメモリー１０６から行アクセス処理部１０７へ転送する処理を、連続して行うものとして説明している。同様に、ラインメモリー１０６に画像データを格納する処理と、ラインメモリー１０６から列アクセス処理部１０８へ転送する処理も、連続して行うものとして説明している。しかし、本発明は、これに限定されない。例えば、ラインメモリー１０６に画像データが格納された後、画像データを行アクセス処理部１０７や列アクセス処理部１０８に転送するのは任意のタイミングでよい。
【００７７】
また、画像処理装置１００内のバス幅や、各バンク（１０６１Ａ〜Ｈ）の記憶容量について、上記の実施形態のように限定する必要はない。
【符号の説明】
【００７８】
１００・・・画像処理装置、１０１・・・ＣＰＵ、１０２・・・メインメモリー、１０３・・・メインメモリーアクセス制御部、１０４・・・入力データ制御部、１０５・・・出力データ制御部、１０６・・・ラインメモリー、１０７・・・行アクセス処理部、１０８・・・列アクセス処理部、１０６１Ａ・・・第１のバンク、１０６１Ｂ・・・第２のバンク、１０６１Ｃ・・・第３のバンク、１０６１Ｄ・・・第４のバンク、１０６１Ｅ・・・第５のバンク、１０６１Ｆ・・・第６のバンク、１０６１Ｇ・・・第７のバンク、１０６１Ｈ・・・第８のバンク、１０６２・・・セレクター
【図１】
2012043126.tif 000003
【図２】
2012043126.tif 000004
【図３】
2012043126.tif 000005
【図４】
2012043126.tif 000006
【図５】
2012043126.tif 000007
【図６】
2012043126.tif 000008