(57)【要約】【課題】出力データセレクタを構成する論理回路の回路規模を小さくすることを可能にする画素データ転送制御装置及び画素データ転送制御方法を提供する。【解決手段】本願発明の画素データ転送制御装置１００は、ｍ色の色要素の画素データにより構成されるカラー画素データが格納されるメモリからｎバイト幅を有する入力バス１６０を介して読み出して、該色要素に対応づけた出力バス（１７０〜１７２）を介して画像処理回路に転送する制御を行う装置であり、カラー画素データを構成する１の色要素の画素データを格納する記憶容量を備えるバッファであって、ｍとｎとの公倍数に相当する個数のバッファ（１０１〜１１２）と、カラー画素データをバッファ列（１０１〜１１２）のバッファに順次格納させる入力データセレクタ１２０と、同一色要素の画素データを格納する複数のバッファから、画素データを各色要素に対応づけられた出力バス（１７０〜１７２）に出力する出力データセレクタ（１３０〜１３２）と、を備える。【選択図】図１
2008199351.tif 000002
【特許請求の範囲】
【請求項１】
ｍ色の色要素の画素データにより構成されるカラー画素データが格納されるメモリからｎバイト幅を有する第１のバスを介して読み出して、該色要素に対応づけた第２のバスを介して画像処理回路に転送する制御を行う画素データ転送制御装置において、
前記カラー画素データを構成する１の色要素の画素データを格納する記憶容量を備えるバッファであって、前記ｍと前記ｎとの公倍数に相当する個数のバッファを、配列したバッファ列と、
前記第１のバスを介して転送されるカラー画素データを前記バッファ列のバッファに順次格納させる第１のセレクタと、
前記バッファ列のうち、同一色要素の画素データを格納する複数のバッファから、当該格納される画素データを、各色要素に対応づけられた第２のバスに、出力する第２のセレクタと、を備える、
ことを特徴とする画素データ転送制御装置。
【請求項２】
請求項１に記載の画素データ転送制御装置であって、
前記第１のセレクタは、前記メモリから、各画素について予め定められた色要素の順に、画素データを読み出し、前記バッファ列の各バッファに、前記色要素ごとに、順次格納する、
ことを特徴とする画素データ転送制御装置。
【請求項３】
請求項１又は２に記載の画素データ転送制御装置であって、
前記ｍ色の色要素は、赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）の３色である、
ことを特徴とする画素データ転送制御装置。
【請求項４】
請求項１乃至３のいずれか一項に記載の画素データ転送制御装置であって、
前記バッファ列を構成する各バッファの記憶容量が１バイトである、
ことを特徴とする画素データ転送制御装置。
【請求項５】
ｍ色の色要素の画素データにより構成されるカラー画素データが格納されるメモリからｎバイト幅を有する第１のバスを介して読み出して、該色要素に対応づけた第２のバスを介して画像処理回路に転送する制御を行う画素データ転送制御装置における画素データ転送制御方法であって、
前記画素データ転送制御装置は、
前記カラー画素データを構成する１の色要素の画素データを格納する記憶容量を備えるバッファであって、前記ｍと前記ｎとの公倍数に相当する個数のバッファを、配列したバッファ列と、第１のセレクタと、第２のセレクタと、を備え、
前記第１のセレクタが、前記第１のバスを介して転送されるカラー画素データを前記バッファ列のバッファに順次格納させる格納過程と、
前記第２のセレクタが、前記バッファ列のうち、同一色要素の画素データを格納する複数のバッファから、当該格納される画素データを、各色要素に対応づけられた第２のバスに、出力する出力過程と、
を有する、
ことを特徴とする画素データ転送制御方法。
【請求項６】
請求項５に記載の画素データ転送制御方法であって、
前記格納過程は、
前記第１のセレクタが、前記メモリから、各画素について予め定められた色要素の順に、画素データを読み出し、前記バッファ列の各バッファに、前記色要素ごとに順次格納することである、
ことを特徴とする画素データ転送制御装置。
【請求項７】
請求項５又は６に記載の画素データ転送制御方法であって、
前記ｍ色の色要素は、赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）の３色である、
ことを特徴とする画素データ転送制御方法。
【請求項８】
請求項５乃至７のいずれか一項に記載の画素データ転送制御方法であって、
前記バッファ列を構成する各バッファの記憶容量は、１バイトである、
ことを特徴とする画素データ転送制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送方式による画素データの転送制御を行う技術に関する。
【背景技術】
【０００２】
スキャン機能を利用して画素データ（例えば、ＲＧＢデータ）を生成する画像処理装置として、例えば、コピー、スキャナ、プリンタ、ファクシミリ、等の複合機が知られている。これらの画像処理装置が生成する画素データには、例えば、ＲＧＢデータがある。ＲＧＢデータは、赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）、の各色データを、１画素に含む。また、各色データのサイズは８ビットであることが多く、その場合、１画素のデータサイズは２４ビットとなる。
【０００３】
一般に、上述した画像処理装置において、メモリ内に生成されたＲＧＢデータは、ＲＧＢデータに対して各種処理を実行する画像処理回路に転送される。ここでの転送は、ＤＭＡ転送方式等により行われることが多く、例えば、３２ビットや６４ビット単位で転送される。例えば、特許文献１には、ＤＭＡ転送方式によるデータ転送を行うシステムについて記載されている。
【０００４】
このとき、ＲＧＢデータは、画素単位で、画像処理回路に入力されることが望まれる。しかしながら、ＤＭＡ転送方式では、上述したように、ＲＧＢデータは３２ビットや６４ビット単位で転送されるため、ＲＧＢデータを１画素（２４ビット）単位で画像処理回路に入力することができない。そこで、ＤＭＡ転送方式で転送されるＲＧＢデータは、画素単位で同期して出力可能なブリッジ回路を介して、画像処理回路に入力される。このブリッジ回路は、少なくとも、複数のバッファと、ＤＭＡ転送方式で転送された各色データを各バッファに順次格納するための入力データセレクタと、各バッファに格納した各色データの１画素分を同期させて画像処理回路に出力するための出力データセレクタを備える。ここで、出力データセレクタには、赤色（Ｒ）の色データだけを出力する赤色データ出力セレクタと、緑色（Ｇ）色データだけを出力する緑色データ出力セレクタと、青色（Ｂ）の色データだけを出力する青色データ出力セレクタの３つのセレクタが含まれていなければならない。
【特許文献１】特開２０００−３２２３７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したブリッジ回路では、各バッファに格納される各色データの色の種類は不定であるため、各色に対応する出力データセレクタから、決められた色の色データを出力させるためには、出力データセレクタを構成する論理回路の回路規模が大きくならざるを得ない。
【０００６】
本発明は、上述した出力データセレクタを構成する論理回路の回路規模を小さくすることを可能にするための技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明では、ｍ色の色要素の画素データにより構成されるカラー画素データが格納されるメモリからｎバイト幅を有する第１のバスを介して読み出して、該色要素に対応づけた第２のバスを介して画像処理回路に転送する制御を行う画素データ転送制御装置において、前記第１のバスを介して前記メモリから転送されるカラー画素データを一時的に格納する一の色要素の画素データを格納する記憶容量を備えるバッファであって、前記ｍと前記ｎとの公倍数に相当する個数のバッファを配列したバッファ列と、前記第１のバスを介して転送されるカラー画素データを前記バッファ列のバッファに順次格納させる第１のセレクタと、前記バッファ列のうち、同一色要素の画素データを格納する複数のバッファから、当該格納される画素データを、各色要素に対応づけられた第２のバスに、出力する第２のセレクタと、を備える、画素データ転送制御装置を提供する。
【発明の効果】
【０００８】
本発明のデータ転送装置によれば、出力データセレクタを構成する論理回路の回路規模を小さくすることが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の最良の実施形態を、図面を参照して説明する。
【００１０】
本発明の実施形態に適用される画素データ転送制御装置１００のハードウェア構成の一例を、図１のブロック図に示す。画素データ転送制御装置１００は、図示するように、ＲＧＢデータを格納するためのバッファ（１０１〜１１２）と、入力データセレクタ１２０と、出力データセレクタ（１３０〜１３２）と、転送制御回路１４０と、カウンタ１５０と、を有する。
【００１１】
画素データ転送制御装置１００は、例えば、図２に示すような画素データ転送制御システム５０で使用される。
図示するように、画素データ転送制御システム５０は、画素データ転送制御装置１００と、メインメモリ２００と、ＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）３００と、画像処理回路４００と、を備えている。画素データ転送制御システム５０において、メインメモリ２００に格納されているＲＧＢデータは、３２ビット幅の入力バス１６０を介して、ＤＭＡ転送方式で画素データ転送制御装置１００に転送される。そして、画素データ転送制御装置１００は、メインメモリ２００から転送されたＲＧＢデータを、１画素分ずつ同期させて、出力バス（１７０〜１７２）を介して、画像処理回路４００に転送する。これにより、画像処理回路４００は、画素データ転送制御装置１００から同期して転送されたデータを１画素分のデータと認識した上で、画像処理を行うことができる。
【００１２】
なお、メインメモリ２００は、スキャン機能を利用してＲＧＢデータを生成する、例えば、コピー、スキャナ、プリンタ、ファクシミリ、等の複合機に内蔵されるメモリである。メインメモリ２００には、図３に示すように、生成されたＲＧＢデータの各色データ（赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）、の色データ）が、アドレス順に格納される。ここで、各色データのサイズは８ビット（１バイト）であり、３色の色データでＲＧＢデータの１画素を構成する。従って、ＲＧＢデータの１画素分のデータサイズは２４ビットとなる。
【００１３】
図２に戻って、ＤＭＡＣ３００は、ＣＰＵを介すことなくデータ転送を行なうＤＭＡ転送方式によるデータ転送（メインメモリ２００から画素データ転送制御装置１００へのデータ転送）の制御を行なう専用のＬＳＩである。ここでのＤＭＡ転送方式によるデータ転送は、入力バス１６０を介して、３２ビットのバス幅で行われる。
【００１４】
画像処理回路４００は、画素データ転送制御装置１００から転送されたＲＧＢデータに対して、各種画像処理を行う回路である。ここで、各種画像処理には、「２値化処理」、「エッジ検出処理」、「補正処理」等の処理が含まれる。また、画像処理回路４００には、ＲＧＢデータの１画素を構成する各色データ（赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）、の色データ）が、同期して入力される。ここで、各色データの転送（画像処理回路４００への入力）には、それぞれの色専用に設けたバスを使用して行われる。例えば、赤色（Ｒ）データは、赤色データ専用バス１７０、緑色（Ｇ）データは、緑色データ専用バス１７１、青色（Ｂ）データは、青色データ専用バス１７２、を介して、画像処理回路４００に同期して入力される。
【００１５】
図１に戻り、画素データ転送制御装置１００のバッファ（１０１〜１１２）は、メインメモリ２００から転送されたＲＧＢデータを格納するためのバッファである。バッファ（１０１〜１２）は、第１のバッファ１０１、第２のバッファ１０２、第３のバッファ１０３、第４のバッファ１０４、第５のバッファ１０５、第６のバッファ１０６、第７のバッファ１０７、第８のバッファ１０８、第９のバッファ１０９、第１０のバッファ１１０、第１１のバッファ１１１、第１２のバッファ１１２といった、１２個のバッファから構成される。本実施形態では、バッファ（１０１〜１１２）の個数を１２個としているが、これは、「｛ＤＭＡ転送方式によるデータ転送のバス幅（４バイト（３２ビット））｝×｛色データの色の種数（３色）｝の公倍数」になるようにする。
また、各バッファ（１０１〜１１２）は、全て、１個の色データ（１バイト（８ビット））を格納するためのデータ記憶容量を有している。入力セレクタ１２０を介して入力されるＲＧＢデータは、転送されてきた色データの順番に、各バッファ（１０１〜１１２）に格納される。例えば、ＲＧＢデータが、赤色データ（Ｒ１）、緑色データ（Ｇ１）、青色データ（Ｂ１）、赤色データ（Ｒ２）の順に、メインメモリ２００から転送されてきた場合、第１のバッファ１０１に赤色データ（Ｒ１）、第２のバッファ１０２に緑色データ（Ｇ１）、第３のバッファ１０３に青色データ（Ｂ１）、第４のバッファ１０４に赤色データ（Ｒ２）が、順次格納される。そして、第１２のバッファ１１２に青色データ（Ｂ４）が格納されると、次に転送されてきた赤色データ（Ｒ５）は、第１のバッファ１０１に格納される。
このように、バッファ（１０１〜１１２）の個数を１２個にすることで、第１のバッファ１０１、第４のバッファ１０４、第７のバッファ１０７、第１０のバッファ１１０には、赤色（Ｒ）データが格納される。また、第２のバッファ１０２、第５のバッファ１０５、第８のバッファ１０８、第１１のバッファ１１１には、緑色（Ｇ）データが格納される。さらに、第３のバッファ１０３、第６のバッファ１０６、第９のバッファ１０９、第１２のバッファ１１２には、青色（Ｂ）データが格納される。
さらに、各バッファ（１０１〜１１２）は、出力データセレクタ（１３０〜１３２）に接続され、格納された色データは出力データセレクタ（１３０〜１３２）に出力される。
【００１６】
入力データセレクタ１２０は、メインメモリ２００からＤＭＡ転送方式で３２ビットずつ転送されてきたＲＧＢデータを、各色データごとに、各バッファ（１０１〜１１２）に、順次格納可能なように、各色データの格納先のバッファ（１０１〜１１２）を決定する回路である。
【００１７】
出力データセレクタ（１３０〜１３２）は、各バッファ（１０１〜１１２）に格納されている各色データのうち、先にバッファ（１０１〜１１２）に格納された色データの順に、１つの画素を構成する色データ（赤色（Ｒ）データ、緑色（Ｇ）データ、青色（Ｂ）データ）、を同期させて画像処理回路４００に出力する回路である。例えば、出力データセレクタ（１３０〜１３２）は、赤色データ出力専用セレクタ１３０、緑色データ出力専用セレクタ１３１、青色データ出力専用セレクタ１３２、から構成される。赤色データ出力専用セレクタ１３０は、第１のバッファ１０１、第４のバッファ１０４、第７のバッファ１０７、第１０のバッファ１１０に接続され、赤色データを、赤色データ専用バス１７０を介して画像処理回路４００に出力する回路である。また、緑色データ出力専用セレクタ１３１は、第２のバッファ１０２、第５のバッファ１０５、第８のバッファ１０８、第１１のバッファ１１１に接続され、緑色データを、緑色データ専用バス１７２を介して画像処理回路４００に出力する回路である。さらに、青色データ出力専用セレクタ１３２は、第３のバッファ１０３、第６のバッファ１０６、第９のバッファ１０９、第１２のバッファ１１２に接続され、青色データを、青色データ専用バス１７２を介して画像処理回路４００に出力する回路である。
【００１８】
転送制御回路１４０は、入力データセレクタ１２０、各バッファ（１０１〜１１２）、出力データセレクタ１３０制御して、メインメモリ２００から転送されてきたＲＧＢデータを、１画素を構成する各色データを同期させて、画像処理回路４００に出力させる回路である。例えば、転送制御回路１４０には、カウンタ１５０が接続される。そして、転送制御回路１４０は、ＲＧＢデータが格納されていないバッファ（１０１〜１１２）の個数と、バッファ（１０１〜１１２）から出力されたＲＧＢデータのデータ数を、カウンタ１５０にカウントさせる。これにより、転送制御回路１４０は、ＲＧＢデータが格納されていないバッファ（１０１〜１１２）が４個以上あるときに、入力データセレクタ１２０に、３２ビット分のＲＧＢデータ（４個の色データ）を、バッファ（１０１〜１１２）に格納させるように制御することができる。また、転送制御回路１４０は、バッファ（１０１〜１１２）に３個以上のＲＧＢデータが格納されたときに、赤色データ、緑色データ、青色データ、の各色データを、それぞれ、赤色データ出力専用セレクタ１３０、緑色データ出力専用セレクタ１３１、青色データ出力専用セレクタ１３２に、出力させることができる。
【００１９】
カウンタ１５０は、各バッファ（１０１〜１１２）に３２ビット分のＲＧＢデータが格納された回数をカウントするためのカウンタと、各バッファ（１０１〜１１２）に格納されているＲＧＢデータを１画素単位で出力した回数をカウントするカウンタと、含む。カウンタ１５０は、転送制御回路１４０に接続され、転送制御回路１４０からの要求に応じて、カウント値をインクリメント、デクリメント、リセット、等することができる。
【００２０】
以上のような構成により、画素データ転送制御装置１００は、メインメモリ２００から転送されたＲＧＢデータを、１画素を構成する各色データを、同期させて、出力バス（１７０〜１７２）を介して、画像処理回路４００に転送することができる。
【００２１】
また、ここで、本実施形態に係る画素データ転送制御装置１００と、従来のデータ転送装置とを比較する。従来のデータ転送装置は、上述したように、各バッファに格納される各色データの色の種類は不定である。これは、データ転送装置に備わるバッファの個数が、「｛ＤＭＡ転送方式によるデータ転送のバス幅（４バイト（３２ビット））｝×｛色データの色の種数（３色）｝の公倍数」になっていないためである。これにより、各バッファから、１画素を構成する各色データを、同期させて出力させるように制御する出力データセレクタは、（入力：出力）が（バッファ数：１）とせざるを得ない。
しかしながら、本実施形態に係る画素データ転送制御装置１００は、画素データ転送制御装置１００に備わるバッファ（１０１〜１１２）の個数が、「｛ＤＭＡ転送方式によるデータ転送のバス幅（４バイト（３２ビット））｝×｛色データの色の種数（３色）｝の公倍数」になっているため、１つのバッファ（１０１〜１１２）に格納される色データは、必ず同色の色データとなる。これにより、各バッファ（１０１〜１１２）から、１画素を構成する各色データを、同期させて出力させるように制御する出力データセレクタ（１３０〜１３２）は、（入力：出力）が（（（バッファ数×（１／３））：１）となる。
このことは、出力データセレクタ（１３０〜１３２）の論理が、従来に比べて浅くなる（回路規模が小さくなる）ことを意味し、これにより、ＲＧＢデータの転送処理は高速化される。
【００２２】
図４は、画素データ転送制御装置１００で行うＲＧＢデータの格納処理を示すフローチャートである。
【００２３】
画素データ転送制御装置１００の転送制御回路１４０は、入力データセレクタ１２０にＲＧＢデータが転送されてきたときに、格納処理を開始する。例えば、転送制御回路１４０は、入力データセレクタ１２０にＲＧＢデータが転送されてきたことを示す信号を、入力データセレクタ１２０から供給されたときに、格納処理を開始する。
【００２４】
転送制御回路１４０は、格納処理を開始すると、入力データセレクタ１２０が、３２ビット分のＲＧＢデータを受け付ける（ステップＳ１０１）。
【００２５】
このとき、転送制御回路１４０は、ＲＧＢデータが格納されていないバッファ（１０１〜１１２）の個数データを取得して、３２ビットの空き容量が有るか否かを判別する（ステップＳ１０２）。具体的には、転送制御回路１４０は、カウンタ１５０にアクセスして、バッファ（１０１〜１１２）へのＲＧＢデータ（３２ビット分）の入力回数値を示す信号と、バッファ（１１０〜１１２）へのＲＧＢデータ（１画素分）の出力回数値を示す信号とを、取得する。ここで、転送制御回路１４０は、（出力回数値×３）−（入力回数値×４）を演算し、演算結果が４以上であるか否かを判別する。
【００２６】
ステップＳ１０２で、転送制御回路１４０は、３２ビットの空き容量がないと判別した場合（ステップＳ１０２；Ｎｏ）、３２ビットの空き容量がバッファ（１０１〜１１２）にできるまで待機する。
【００２７】
一方、ステップＳ１０２で、転送制御回路１４０は、３２ビットの空き容量が有ると判別した場合（ステップＳ１０２；Ｙｅｓ）、入力データセレクタ１２０を制御して、３２ビット分のＲＧＢデータを、順次、バッファ（１０１〜１１２）に格納させる（ステップＳ１０３）。具体的には、転送制御回路１４０は、入力データセレクタ１２０に転送された色データから順に、３２ビット分（４個の色データ）を、バッファ（１０１〜１１２）に格納させる。例えば、第６のバッファ１０６〜第１０のバッファ１１０に、ＲＧＢデータが格納されていない場合、転送制御回路１４０は、入力データセレクタ１２０に転送されてきた順に、３２ビット分（４個）の色データを、第６のバッファ１０６、第７のバッファ１０７、第８のバッファ１０８、第９のバッファ１０９へと格納させるように、入力データセレクト１２０を制御する。また、例えば、第１のバッファ１０１〜第３のバッファ１０３、及び、第１０のバッファ１１０〜第１２のバッファ１１２に、ＲＧＢデータが格納されていない場合、転送制御回路１４０は、３２ビット（４個）の色データを、第１０のバッファ１１０、第１１のバッファ１１１、第１１２のバッファ１１２、第１のバッファ１０１へと格納させるように、入力データセレクタ１２０を制御する。
【００２８】
３２ビット分のＲＧＢデータをバッファ（１０１〜１１２）に格納後、転送制御回路１４０は、カウンタ１５０の入力回数値をインクリメントして、格納処理を終了させる。
【００２９】
図５は、画素データ転送制御装置１００で行うＲＧＢデータの出力処理を示すフローチャートである。
【００３０】
画素データ転送制御装置１００の転送制御回路１４０は、図示しない電源から画素データ転送制御装置１００に電力が供給されたときに、出力処理を開始する。
【００３１】
まず、転送制御回路１４０は、１画素分のＲＧＢデータが、バッファ（１０１〜１１２）に格納されているか否かを判別する（ステップＳ２０１）。具体的には、転送制御回路１４０は、カウンタ１５０にアクセスして、バッファ（１０１〜１１２）へのＲＧＢデータ（３２ビット分）の入力回数値を示す信号と、バッファ（１１０〜１１２）へのＲＧＢデータ（１画素分）の出力回数値を示す信号とを、取得する。ここで、転送制御回路１４０は、（入力回数値×４）−（出力回数値×３）を演算し、演算結果が３以上であるか否かを判別する。
【００３２】
ステップＳ２０１で、転送制御回路１４０は、バッファ（１０１〜１１２）に、１画素分のＲＧＢデータが格納されていないと判別した場合（ステップＳ２０１；Ｎｏ）、バッファ（１０１〜１１２）に１画素分のＲＧＢデータが格納されるまで待機する。
【００３３】
一方、ステップＳ２０１で、転送制御回路１４０は、バッファ（１０１〜１１２）に、１画素分のＲＧＢデータが格納されていると判別した場合（ステップＳ２０１；Ｙｅｓ）、出力データセレクタ（１３０〜１３２）を制御して、１画素分のＲＧＢデータを画像処理回路４００に出力させる（ステップＳ２０２）。具体的には、転送制御回路１４０は、バッファ（１０１〜１１２）に最も先に格納された、赤色（Ｒ）データ、緑色（Ｇ）データ、青色（Ｂ）データ、の各色データを、それぞれ、赤色データ出力専用セレクタ１３０、緑色データ出力専用セレクタ１３１、青色データ出力専用セレクタ１３２に、出力させる。例えば、第４のバッファ１０４、第７のバッファ１０７に赤色（Ｒ）データ、第５のバッファ１０５に緑色（Ｇ）データ、第６のバッファ１０６に青色（Ｂ）データ、が格納されている場合、転送制御回路１４０は、赤色データ出力専用セレクタ１３０に、第４のバッファ１０４に格納されている赤色（Ｒ）データを、赤色データ専用バス１７０を介して、画像処理回路４００に出力させる。また、これと同期させて、転送制御回路１４０は、緑色データ出力専用セレクタ１３１に、第５のバッファ１０５に格納されている緑色（Ｇ）データを、緑色データ専用バス１７１を介して、画像処理回路４００に出力させる。さらに、これと同期させて、転送制御回路１４０は、青色データ出力専用セレクタ１３２に、第６のバッファ１０６に格納されている青色（Ｂ）データを、青色データ専用バス１７２を介して、画像処理回路４００に出力させる。
【００３４】
このとき、転送制御回路１４０は、ＲＧＢデータが出力されたバッファ（１０１〜１１２）に残っているデータは削除しておく。
【００３５】
また、ステップＳ２０２で１画素分のＲＧＢデータを画像処理回路４００に出力した後、転送制御回路１４０は、カウンタ１５０の出力回数値をインクリメントして、処理をステップＳ２０３に移行させる。
【００３６】
ステップＳ２０３では、転送制御回路１４０は、バッファ（１０１〜１１２）にＲＧＢデータが格納されているか否かを判別する（ステップＳ２０３）。具体的には、転送制御回路１４０は、カウンタ１５０にアクセスして、バッファ（１０１〜１１２）へのＲＧＢデータ（３２ビット分）の入力回数値を示す信号と、バッファ（１１０〜１１２）へのＲＧＢデータ（１画素分）の出力回数値を示す信号とを、取得する。ここで、転送制御回路１４０は、（出力回数値×３）−（入力回数値×４）を演算し、演算結果が０であるか否かを判別する。
【００３７】
ステップＳ２０３で、転送制御回路１４０は、バッファ（１０１〜１１２）にＲＧＢデータが格納されていると判別した場合（ステップＳ２０３；Ｙｅｓ）、処理をステップＳ２０１に移行させる。一方、転送制御回路１４０は、バッファ（１０１〜１１２）にＲＧＢデータが格納されていないと判別した場合（ステップＳ２０３；Ｎｏ）、出力処理を終了させる。
【００３８】
なお、本発明は、上記実施形態に限定されず、種々の変形、応用が可能である。
【００３９】
例えば、上記実施形態では、転送制御回路１４０が入力データセレクタ１２０、各バッファ（１０１〜１１２）、出力データセレクタ（１３０〜１３２）を制御して、ＲＧＢデータを構成する各色データを同期させて、画像処理回路４００に出力するようにしている。しかしながら、本発明はこれに限定されず、例えば、所定のプログラムを格納した記憶装置や、このプログラムを処理するＣＰＵ、等を備えて、ＣＰＵにプログラムを処理させて、ＲＧＢデータを転送する制御を行うようにしてもよい。
【００４０】
また、上記実施形態では、ＤＭＡ転送方式によるデータ転送のバス幅は３２ビットとしている。しかしながら、本発明はこれに限定されず、６４ビットや１２８ビットのバス幅で、ＲＧＢデータを転送させてもよい。
【００４１】
さらに、上記実施形態では、画素データ転送制御装置１００のバッファ（１０１〜１１２）の個数は１２個にしている。しかしながら、本発明は、これに限定されず、バッファの個数は、「｛ＤＭＡ転送方式によるデータ転送のバス幅（バイト）｝×｛色データの色の種類数｝の公倍数」であれば、任意の個数でよい。ただし、１個のバッファ（１０１〜１１２）には、１（バイト）の各色データを格納することができる。
【００４２】
また、上記実施形態では、画素データ転送制御装置１００は、ＲＧＢデータといった３色の色データを有する画素データの転送を制御するものとしている。しかしながら、本発明は、これに限定されず、転送する画素データは、３色より多い種類又は３色より少ない種類の色データを有していてもよい。
【００４３】
さらに、上記実施形態では、画素データ転送制御装置１００を、図２に示す画素データ転送制御システム５０に適用して、メインメモリ２００から画像処理回路４００への画素データの転送を制御する場合について説明している。しかしながら、本発明は、これに限定されず、画像処理回路４００が画像処理した後の画素データをメインメモリ２００へ転送する場合にも、その転送を画素データ転送制御装置１００に制御させるようにしてもよい。
この場合、例えば、画像処理回路２００は、画像処理した後のＲＧＢデータの各色データ（赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）、の色データ）を、それぞれ、赤色データ専用バス１７０、緑色データ専用バス１７１、青色データ専用バス１７２を介して、画素データ転送制御装置１００に入力する。このとき、画素データ転送制御装置１００は、赤色データ出力専用セレクタ１３０、緑色データ出力専用セレクタ１３１、青色データ出力専用セレクタ１３２に対応する逆向きのセレクタを介して、第１バッファ１０１〜第１２のバッファ１１２に、画素データを順次格納していく。この場合、赤色データは、第１のバッファ１０１、第４のバッファ１０４、第７のバッファ１０７、第１０のバッファに順次格納される。また、緑色データは、第２のバッファ１０２、第５のバッファ１０５、第８のバッファ１０８、第１１のバッファ１１１に順次格納される。さらに、青色データは、第３のバッファ１０３、第６のバッファ１０６、第９のバッファ１０９、第１２のバッファ１１２に順次格納される。画素データ転送制御装置１００は、第１のバッファ１０１〜第１２のバッファ１１２に格納された画素データを、３２ビット単位で、入力データセレクタ１２０に対応する逆向きのセレクタを介して、メインメモリ２００に、順次、転送する。これにより、図１と同様の構成で、画像処理回路２００からメインメモリ２００への画素データの転送を実現することも可能である。
【図面の簡単な説明】
【００４４】
【図１】本発明の実施形態に係る画素データ転送制御装置のハードウェア構成図である。
【図２】本発明の実施形態に係る画素データ転送制御システムの構成の一例を示すブロック図である。
【図３】メインメモリに格納される画素データのデータ構造を概念的に示す説明図である。
【図４】画素データ転送制御装置で実行される格納処理を説明するためのフローチャートである。
【図５】画素データ転送制御装置で実行される出力処理を説明するためのフローチャートである。
【符号の説明】
【００４５】
５０…画素データ転送制御システム、１００…画素データ転送制御装置、１０１…第１のバッファ、１０２…第２のバッファ、１０３…第３のバッファ、１０４…第４のバッファ、１０５…第５のバッファ、１０６…第６のバッファ、１０７…第７のバッファ、１０８…第８のバッファ、１０９…第９のバッファ、１１０…第１０のバッファ、１１１…第１１のバッファ、１１２…第１２のバッファ、１２０…入力データセレクタ、１３０…赤色データ出力専用セレクタ、１３１…緑色データ出力専用セレクタ、１３２…青色データ出力専用セレクタ、１４０…転送制御回路、１５０…カウンタ、１６０…入力バス、１７０…赤色データ専用バス、１７１…緑色データ専用バス、１７２…青色データ専用バス、２００…メインメモリ、３００…ＤＭＡＣ、４００…画像処理装置。
【図１】
2008199351.tif 000003
【図２】
2008199351.tif 000004
【図３】
2008199351.tif 000005
【図４】
2008199351.tif 000006
【図５】
2008199351.tif 000007