(57)【要約】【課題】  色数や各色成分の有効ビット数の異なるカラーデータをバス幅を変えることなく効率よくバス転送できるようにする。【解決手段】  画像データを、各色成分毎にバッファ領域Ｘ１〜Ｘ４に格納する。テーブル２１に、各色成分の有効データ長、バスのバス幅、及び色成分数を入力し、これに基づきバス連結モードを設定する。ステートカウンタ２３で、モードに基づいて、クロック毎に各色成分の画像データを連結するためのステート信号を生成する。モードとステート信号に基づき、バッファ領域Ｘ１〜Ｘ４から各色成分の画像データのアドレスを発生し、バッファ領域Ｘ１〜Ｘ４からデータを読み出す。連結部２８により、モードとステート信号に基づき、バッファ領域Ｘ１〜Ｘ４出力された各色成分の画像データを選択的に連結してバス４に出力する。【選択図】        図３
2006148808.tif 000002
【特許請求の範囲】
【請求項１】
各画素の、各色成分の画像データを連結してバスに転送するデータ転送装置であって、
画像データが、各色成分毎に画素に対応したアドレスに格納されるメモリと、
前記メモリに格納された各色成分毎の画像データの有効データ長、前記バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力するモード設定部と、
前記モード設定部からのモード設定信号に基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成するステート信号生成部と、
前記モード設定部からのモード設定信号と前記ステート信号生成部からのステート信号に基づき、前記メモリから出力させる各色成分の画像データのアドレスを発生するアドレス発生部と、
前記ステート信号生成部からのステート信号に基づき、前記メモリから出力された各色成分の画像データを選択的に連結して前記バスに出力するデータ連結部と
からなるデータ転送装置。
【請求項２】
前記モード設定部は、バス幅、有効データ長、及び色成分数に対応するバス連結モードを設定するためのモード設定信号が記憶されたテーブルを備えていることを特徴とする請求項１に記載のデータ転送装置。
【請求項３】
前記アドレス発生部は、前記ステート信号により、クロック同期によるカウント動作が制御され、そのカウント値を第１のアドレスとして出力するアドレスカウンタと、前記第１のアドレスを遅延して第２のアドレスを出力する遅延回路とを有することを特徴とする請求項１に記載のデータ転送装置。
【請求項４】
各画素の、各色成分の画像データを連結してバスに転送するデータ転送方法であって、
画像データが、各色成分毎に画素に対応したメモリのアドレスに格納され、前記メモリに格納された各色成分毎の画像データの有効データ長、前記バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力し、
設定されたバス連結モードに基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成し、
前記設定されたバス連結モードと前記ステート信号に基づき、前記メモリから出力させる各色成分の画像データのアドレスを生成し、
前記ステート信号に基づき、前記メモリから出力された各色成分の画像データを選択的に連結して前記バスに出力する
ことを特徴とするデータ転送方法。
【請求項５】
コンピュータに、各画素の、各色成分の画像データを連結してバスに転送する処理を実行させるデータ転送プログラムであって、
各色成分毎に画素に対応したメモリのアドレスに画像データを格納する処理と、
前記メモリに格納された各色成分毎の画像データの有効データ長、前記バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力する処理と、
設定されたバス連結モードに基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成する処理と、
前記設定されたバス連結モードと前記ステート信号に基づき、前記メモリから出力させる各色成分の画像データのアドレスを生成する処理と、
前記ステート信号に基づき、前記メモリから出力された各色成分の画像データを選択的に連結して前記バスに出力する処理と
を実行させるデータ転送プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルカメラ等における連続したデータの読み出しに適したデータ転送装置、データ転送方法、及びディジタル転送プログラムに関する。
【背景技術】
【０００２】
近年、ディジタルカメラでは、撮影した画像の高画質化に向けた画像処理を行うだけでなく、様々なユーザーインターフェースとの互換をとるための制御が必要となっている。そのため、ディジタルカメラ内に、それらの制御を担うＣＰＵ（Center Processing Unit）を組み込むことが不可欠となっている。しかしながら、ＣＰＵでは並列処理ができないため、例えばＣＰＵを介さなくても制御が可能であるデータ転送においては、ＤＭＡ（Direct Memory Access）方式を用いることで、ディジタルカメラのデータ処理の高速化を図っている。ここでＤＭＡ方式とは、ＣＰＵに負荷をかけることなく、バスに接続されているデバイス間のデータ転送を円滑に行うデータ転送方式の一つである。
【０００３】
以下、図２１を用いてＤＭＡ方式を採用した従来のディジタルカメラの処理を述べる。図２１において、撮像系１０１は、ＣＣＤ(Charge Coupled Device)などの撮像素子や、Ａ／Ｄ(Analog to Digital)変換などのアナログデバイス及び単板式のカラーフィルターなどを含んでいる。ＣＰＵ１０２は、各デバイスの制御や画像処理などを行う。フレームメモリ１０３は、１画面分のデータを格納できる。バス１０４は、フレームメモリ１０３と、接続されたデバイス間でデータ転送を行う。表示系１０７は、ＣＰＵ１０２で処理された画像を表示する。ＤＭＡ装置１０５は、撮像系１０１からフレームメモリ１０３へのデータ転送を行う。ＤＭＡ装置１０６は、フレームメモリ１０３から表示系１０７へのデータ転送を行う。
【０００４】
図２１において、ディジタルカメラ内でのデータ転送手順を説明する。先ず、撮像系１０１で処理された画像データは、ＤＭＡ装置１０５を介してバス１０４を通り、フレームメモリ１０３へ送られる。この時点では、フレームメモリ１０３に格納されるディジタルデータは、単一画素に１色の色成分しか存在しないデータである。また、前述したカラーフィルターがベイヤー配列型の場合、この画像データはベイヤーデータと呼ばれている。フレームメモリ１０３に格納されているベイヤーデータは、ＣＰＵ１０２に取り込まれ、画像処理が行われた後に、再びフレームメモリ１０３に格納される。
【０００５】
ここで、ＣＰＵ１０２では、ベイヤーデータをカラーデータに同時化する補間処理や、画質を向上するための輪郭強調や階調変換などの画像処理が行われる。カラーデータとは、画像処理後の単一画素に複数の色成分が含まれるデータである。例えば色成分がＲ（赤）、Ｇ（緑）、Ｂ（青）の３色で、１色あたり８ビットの場合、１画素あたり２４ビットのカラーデータとなる。
【０００６】
フレームメモリ１０３内のカラーデータは、バス１０４を通り、ＤＭＡ装置１０６を介して、表示系１０７へ送出される。ここでも、扱うデータは、例えば色成分がＲ（赤）、Ｇ（緑）、Ｂ（青）の３色のカラーデータである。
【０００７】
以上の手順でデータ転送を行う際には、特許文献１で述べられている二種類のデータ転送方法がある。
【０００８】
１つ目は、１画素に含まれる色成分データを、それぞれの色成分毎に分離し、同一成分のデータをまとめたプレーナ形式とよばれるデータを扱う転送方法で、例えば３２ビット幅のバスを用いて１画素８ビットのベイヤーデータを転送する場合、１クロックで４画素分のデータを転送することが可能である。もう一つの方法は、チャンキー形式とよばれるデータを扱う転送方法で、例えば３２ビット幅のバスを用いてカラーデータを転送する場合、上位８ビット分は空きとなるが、１クロックで１画素分のカラーデータを転送することが可能である。
【特許文献１】特開平１０−２４０４９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
前述した例では、１色あたりのデータ幅が８ビットといった、一般的なカラーデータにおける転送方法であったが、今後、高画質化を狙ったシステムでは、画像処理後のカラーデータにおいて、１色あたり１０ビット以上のデータ幅を持ったデータを扱うことが必須となる。１色あたり１２ビットとすると、原色系では、Ｒ、Ｇ、Ｂからなる３色のカラーデータは１画素当たり３６ビットとなり、データ幅が３２ビットのバス幅に収まらなくなる。このため、カラーデータの転送効率が低下する。また、補色系では、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（黄）、Ｇ（緑）の４色のカラーデータが用いられる。４色のカラーデータの場合には、１色あたり１０ビットデータ幅を持つとすると、１画素あたりのデータが４０ビットとなり、データ幅が３２ビットのバス幅に収まらなくなる。
【００１０】
近年、こうしたバスは、オンチップバスとしてシステムＬＳＩ(Large Scale Integration)に実装される。転送効率を上げるために、バス幅を増やすことが考えられるが、バス幅を増やした場合には、ＬＳＩ規模の増加や、バスをＬＳＩ以外のデバイスに接続するためのＬＳＩ端子数が増加し、システムのコストが上昇する。特許文献１には、１色あたりのデータ幅が増えた場合の効率的なデータ転送方法については、何ら示唆されていない。
【００１１】
本発明は、上述の従来の課題を鑑み、画像処理後において、３色の色成分からなるカラーデータや４色の色成分からなるカラーデータを処理する場合に、1色あたりのデータ幅が増大しても、バス幅を変えることなく、簡単な回路構成で効率よくデータ転送が行えるデータ転送装置、データ転送方法、及びデータ転送プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
請求項１の発明は、各画素の、各色成分の画像データを連結してバスに転送するデータ転送装置であって、  画像データが、各色成分毎に画素に対応したアドレスに格納されるメモリと、前記メモリに格納された各色成分毎の画像データの有効データ長、前記バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力するモード設定部と、前記モード設定部からのモード設定信号に基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成するステート信号生成部と、前記モード設定部からのモード設定信号と前記ステート信号生成部からのステート信号に基づき、前記メモリから出力させる各色成分の画像データのアドレスを発生するアドレス発生部と、前記ステート信号生成部からのステート信号に基づき、前記メモリから出力された各色成分の画像データを選択的に連結して前記バスに出力するデータ連結部とからなることを特徴とする。
【００１３】
請求項２の発明では、モード設定部は、バス幅、有効データ長、及び色成分数に対応するバス連結モードを設定するためのモード設定信号が記憶されたテーブルを備えていることを特徴とする。
【００１４】
請求項３の発明では、アドレス発生部は、ステート信号により、クロック同期によるカウント動作が制御され、そのカウント値を第１のアドレスとして出力するアドレスカウンタと、第１のアドレスを遅延して第２のアドレスを出力する遅延回路とを有することを特徴とする。
【００１５】
請求項４の発明は、各画素の、各色成分の画像データを連結してバスに転送するデータ転送方法であって、画像データが、各色成分毎に画素に対応したメモリのアドレスに格納され、前記メモリに格納された各色成分毎の画像データの有効データ長、前記バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力し、設定されたバス連結モードに基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成し、前記設定されたバス連結モードと前記ステート信号に基づき、前記メモリから出力させる各色成分の画像データのアドレスを生成し、前記ステート信号に基づき、前記メモリから出力された各色成分の画像データを選択的に連結して前記バスに出力することを特徴とする。
【００１６】
請求項５の発明は、コンピュータに、各画素の、各色成分の画像データを連結してバスに転送する処理を実行させるデータ転送プログラムであって、各色成分毎に画素に対応したメモリのアドレスに画像データを格納する処理と、前記メモリに格納された各色成分毎の画像データの有効データ長、前記バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力する処理と、設定されたバス連結モードに基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成する処理と、前記設定されたバス連結モードと前記ステート信号に基づき、前記メモリから出力させる各色成分の画像データのアドレスを生成する処理と、前記ステート信号に基づき、前記メモリから出力された各色成分の画像データを選択的に連結して前記バスに出力する処理とを実行させることを特徴とする。
【発明の効果】
【００１７】
請求項１の発明によれば、画像データを、各色成分毎に画素に対応したアドレスに格納するメモリと、メモリに格納された各色成分毎の画像データの有効データ長、バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力するモード設定部と、モード設定部からのモード設定信号に基づいて、クロック毎に連結対象となる各色成分の画像データの指定に係るステート信号を生成するステート信号生成部と、モード設定部からのモード設定信号とステート信号生成部からのステート信号に基づき、メモリから出力させる各色成分の画像データのアドレスを発生するアドレス発生部と、ステート信号生成部からのステート信号に基づき、メモリから出力された各色成分の画像データを選択的に連結してバスに出力するデータ連結部とからなる。これにより、バス幅を変更することなく、各色成分毎の画像データの有効データ長、バス幅、及び色成分数に応じた色成分の画像データの連結を行い、バスに出力することができる。
【００１８】
請求項２の発明によれば、モード設定部は、バス幅、有効データ長、及び色成分数に対応するバス連結モードを設定するためのモード設定信号が記憶されたテーブルを備えている。これにより、バス幅、有効データ長、及び色成分数に応じたモード設定信号を速やかに得ることが可能となり、また、各モードに応じて遷移するステート信号を速やかに得ることが可能となる。
【００１９】
請求項３の発明によれば、アドレス発生部は、ステート信号により、クロック同期によるカウント動作が制御され、そのカウント値を第１のアドレスとして出力するアドレスカウンタと、第１のアドレスを遅延して第２のアドレスを出力する遅延回路とを有する。これにより、モード設定信号とステート信号に応じて歩進する各色成分毎のメモリのアドレスを、簡易な回路で得ることができる。
【００２０】
請求項４の発明によれば、各画素の、各色成分の画像データを連結してバスに転送するデータ転送方法であって、画像データを各色成分毎に画素に対応したメモリのアドレスに格納し、メモリに格納された各色成分毎の画像データの有効データ長、前記バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力し、設定されたバス連結モードに基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成し、設定されたバス連結モードと前記ステート信号に基づき、前記メモリから出力させる各色成分の画像データのアドレスを生成し、ステート信号に基づき、メモリから出力された各色成分の画像データを選択的に連結して前記バスに出力している。これにより、バス幅を変更することなく、各色成分毎の画像データの有効データ長、バス幅、及び色成分数に応じた色成分の画像データの連結を行い、バスに出力することができる。
【００２１】
請求項５の発明によれば、コンピュータに、各画素の、各色成分の画像データを連結してバスに転送する処理を実行させるデータ転送プログラムであって、各色成分毎に画素に対応したメモリのアドレスに画像データを格納する処理と、メモリに格納された各色成分毎の画像データの有効データ長、バスのバス幅、及び色成分数に基づき、各色成分の画像データを連結する態様に係る複数のモードから、モードを選択し、モード設定信号として出力する処理と、設定されたバス連結モードに基づいて、クロック毎に、連結対象となる各色成分の画像データの指定に係るステート信号を生成する処理と、設定されたバス連結モードとステート信号に基づき、メモリから出力させる各色成分の画像データのアドレスを生成する処理と、ステート信号に基づき、メモリから出力された各色成分の画像データを選択的に連結してバスに出力する処理とを実行させるようにしている。これにより、バス幅を変更することなく、各色成分毎の画像データの有効データ長、バス幅、及び色成分数に応じた色成分の画像データの連結を行い、バスに出力することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施の形態について図面を参照しながら説明する。
１．データ処理回路の構成．
図１は、本発明が適用されるディジタルカメラのデータ処理回路を示すものである。図１において、撮像系１は、ＣＣＤ(Charge Coupled Device)などの撮像素子や、Ａ／Ｄ(Analog to Digital)変換などのアナログデバイス及び単板式のカラーフィルターなどを含んでいる。ＣＰＵ(Central Processing Unit)２は、各デバイスの制御や画像処理などを行っている。フレームメモリ３は、１画面分のデータを格納できる。
【００２３】
撮像系１で処理された画像データは、ＤＭＡ装置７によりバス４に送られ、フレームメモリ３へ送られる。フレームメモリ３に格納されるディジタルデータは、単一画素に１色の色成分のデータである。また、カラーフィルターがベイヤー配列型の場合、この画像データはベイヤーデータと呼ばれている。フレームメモリ３に格納されているベイヤーデータは、バス４に転送され、ＤＭＡ装置８によりバッファメモリ５に一時的に格納され、バッファメモリ５からＣＰＵ２に送られる。そして、ＣＰＵ２で画像処理が行われた後に、バッファメモリ６に一時的に格納され、ＤＭＡ装置９によりバス４に転送され、再びフレームメモリ３に格納される。
【００２４】
ＣＰＵ２では、ベイヤーデータをカラーデータに同時化する補間処理や、画質を向上するための輪郭強調や階調変換などの画像処理が行われる。カラーデータとは、画像処理後の単一画素に複数の色成分が含まれるデータである。原色系の場合には、例えばＲ（赤）、Ｇ（緑）、Ｂ（青）の３色の色成分のデータが１画素のカラーデータとなる。また、補色系の場合には、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（黄）、Ｇ（緑）の４色の色成分のデータが１画素のカラーデータとなる。
【００２５】
フレームメモリ３内のカラーデータは、バス４を通り、ＤＭＡ装置１０を介して、表示系１１へ送出される。表示系１１により、撮像系１で撮像した画像が表示される。
【００２６】
図１に示すように、ディジタルカメラのデータ処理回路では、ＣＰＵ２の前後にバッファメモリ５及びバッファメモリ６が設けられている。このようにバッファメモリ５及びバッファメモリ６をＣＰＵ２の前後に設けることにより、ＣＰＵ２は直接フレームメモリ３へアクセスすることなく、バッファメモリ５及びバッファメモリ６に溜められるデータ分だけの処理を随時行っていく仕組みになるため、ＣＰＵ２には負荷がかからず、高速処理が可能になる。
【００２７】
バッファメモリ６は、図２に示すように、２つのメモリ６ａ、６ｂを設け、一方のメモリ６ａ又は６ｂが書き込み状態のときに他方のメモリ６ｂ又は６ａが読み出し状態となるように制御することで、読み出しと書き込みとが同時に行えるようになっている。
【００２８】
つまり、図２に示すように、バッファメモリ６には、メモリ６ａ及びメモリ６ｂと、セレクタ１２及び１３とが用意される。メモリ６ａが書き込み状態のときには、メモリ６ｂが読み出し状態に設定され、セレクタ１２はメモリ６ａ側に設定され、セレクタ１３はメモリ６ｂ側に設定される。ＣＰＵ２からのデータは、セレクタ１２を介してメモリ６ａに書き込まれ、このとき同時に、メモリ６ｂからデータが読み出され、このデータがセレクタ１３を介して、ＤＭＡ装置９に送られる。
【００２９】
次に、メモリ６ｂが書き込み状態になり、メモリ６ａが読み出し状態になり、セレクタ１２はバッファメモリ６ｂ側に設定され、セレクタ１３はメモリ６ａ側に設定される。ＣＰＵ２からのデータは、セレクタ１２を介してメモリ６ｂに書き込まれ、このとき同時に、メモリ６ａからデータが読み出され、このデータがセレクタ１３を介して、ＤＭＡ装置９に送られる。以下、同様の処理が繰り返される。これにより、データの読み出しとデータの書き込みが同時に行える。
【００３０】
バッファメモリ５についても、基本的にはバッファメモリ６と同様の構成であり、２つのメモリを一方が書き込み状態のときに他方が読み出し状態となるように交互に用いることで、データの書き込みと読み出しとを同時に行うことができるようになっている。
【００３１】
また、データ処理回路では、ＣＰＵ２からのカラーデータをバス４に効率的に転送できるように、バス４のバス幅と、バッファメモリ６に記憶されるカラーデータの色成分の数と、各色成分毎の画像データの有効データ長に基づいて、バス詰め込みモードを設定している。つまり、ＣＰＵ２からは、例えば色成分がＲ、Ｇ、Ｂの３色の色成分のデータで１画素のカラーデータが出力され、この３色のカラーデータがバス４に転送される。又は、例えばＣ、Ｍ、Ｙ、Ｇの４色の色成分のデータで１画素のカラーデータが出力され、この４色のカラーデータがバス４に転送される。バス４のバス幅は、例えば、３２ビットである。各色成分のデータのビット長は、８ビット、１０ビット、１２ビット等、様々なものが考えられている。データ処理回路では、このような各種の形態やビット数のカラーデータに対して、効率的にバス４にカラーデータを転送できるように、バス詰め込みモードを設定して、カラーデータを連結して、バス４に出力するようにしている。
【００３２】
２．データ転送装置．
２−１．データ転送装置の構成．
図３〜図９は本発明に係るデータ転送装置の構成を示すものである。本データ転送装置は、上述のように、ＣＰＵ２からのカラーデータをバッファメモリ６に一時的に格納し、バス４に転送する際に用いられる。図３〜図９において、バッファメモリ６は、バッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４の４つの領域からなる。なお、バッファメモリ６は、図２に示したように、２つのメモリ６ａ、６ｂを交互に使用するように構成されているが、ここでは、説明を簡単とするために、１つのメモリで読み出しと書き込みが同時に行えるものとして説明する。
【００３３】
バッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４には、ＣＰＵ２により画像処理されたカラーデータが色成分毎に格納される。カラーデータとしては、Ｒ、Ｇ、Ｂの３色の色成分のデータを１画素とするものと、Ｃ、Ｍ、Ｙ、Ｇの４色の色成分を１画素とするものが想定される。
【００３４】
図３〜図５に示すように、Ｒ、Ｇ、Ｂの３色の色成分のデータを１画素とするカラーデータを扱う場合には、バッファ領域Ｘ１にＲの色成分のデータが格納され、バッファ領域Ｘ２にＧの色成分のデータが格納され、バッファ領域Ｘ３にＢの成分のデータが格納される。バッファ領域Ｘ４は、利用されない。
【００３５】
図６〜図９に示すように、Ｃ、Ｍ、Ｙ、Ｇの４色の色成分のデータを１画素とするカラーデータを扱う場合には、バッファ領域Ｘ１にＣの色成分のデータが格納され、バッファ領域Ｘ２にＭの色成分のデータが格納され、バッファ領域Ｘ３にＹの色成分のデータが格納され、バッファ領域Ｘ４にＧの色成分のデータが格納される。
【００３６】
なお、後に説明するように、４色のうちの３色の色成分データを１つのバスに詰め込み、４クロックで３画素のカラーデータを転送するバス詰め込みモード（４色３分割モード）のときには、図７に示すように、アドレスカウンタ２５ａから遅延部Ｄ１、Ｄ２を介されたアドレスがバッファ領域Ｘ１、Ｘ４に供給され、アドレスカウンタ２５ｂから遅延部Ｄ５、Ｄ６を介されたアドレスがバッファ領域Ｘ２、Ｘ３に供給される。それ以外では、アドレスカウンタ２５ｂは用いられず、アドレスカウンタ２５ａから遅延部Ｄ１、Ｄ２、Ｄ３、Ｄ４を介されたアドレスがバッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４に供給される。
【００３７】
図３〜図９において、テーブル２１は、バス４のバス幅と、色成分の数と、各色成分毎の画像データの有効データ長の情報を基に、バス詰め込みモードを設定し、モード設定信号を出力する。ステート制御部２２は、テーブル２１からのモード設定信号に応じて、ステートカウンタ２３を制御する。ステートカウンタ２３は、各バス詰め込みモードに応じて、バスの状態を示すステート信号を発生する。イネーブル信号発生部２４は、テーブル２１からのモード設定信号と、ステートカウンタ２３からのステート信号に応じて、アドレスカウンタ２５ａ、２５ｂの歩進を制御するためのイネーブル信号を発生する。アドレスカウンタ２５ａ、２５ｂは、各バッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４に対するリード及びライトアドレスを発生する。遅延部Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ６は、テーブル２１からのモード設定信号に応じた遅延量を、各バッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４に対して供給されるアドレスに与える。遅延制御部２６は、テーブル２１からのモード設定信号に応じて、Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ６の遅延量の設定を行う。連結部２８は、テーブル２１からのモード設定信号と、ステートカウンタ２３からのステート信号に応じて読み出された各バッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４からのデータを連結してバス４に出力する。連結制御部２９は、テーブル２１からのモード設定信号と、ステートカウンタ２３からのステート信号に応じて、連結部２８の制御を行う。
【００３８】
２−２．バス詰め込みモードについて．
図３〜図９において、テーブル２１には、バス幅と、色成分の数と、各色成分毎の画像データの有効データ長とが入力される。テーブル２１には、バス幅と、色成分の数と、各色成分毎の画像データの有効データ長に対応するバス詰め込みモードを設定するためのテーブルが設けられている。
【００３９】
バス詰め込みモードとしては、Ｒ、Ｇ、Ｂの３色の色成分のデータを１画素とするカラーデータを扱う場合には、図１０（Ａ）に示すように、３色の色成分データを１つのバスに詰め込み、１クロックで１画素のカラーデータを転送するバス詰め込みモード（以下、３色３分割モードと称する）と、図１０（Ｂ）に示すように、３色のうちの２色の色成分データを１つのバスに詰め込み、３クロックで２画素分のカラーデータを転送するバス詰め込みモード（以下、３色２分割モードと称する）と、図１０（Ｃ）に示すように、３色のうち１色ずつの色成分データをバスに詰め込み、３クロックで１画素のカラーデータを転送するバス詰め込みモード（以下、３色１分割モードと称する）とが設定できるようになっている。
【００４０】
また、Ｃ、Ｍ、Ｙ、Ｇの４色の色成分のデータを１画素とするカラーデータを扱う場合には、図１１（Ａ）に示すように、４色の色成分データを１つのバスに詰め込み、１クロックで１画素のカラーデータを転送するバス詰め込みモード（以下、４色４分割モードと称する）と、図１１（Ｂ）に示すように、４色のうちの３色の色成分データを１つのバスに詰め込み、４クロックで３画素のカラーデータを転送するモード（以下、４色３分割モードと称する）と、図１１（Ｃ）に示すように、４色のうちの２色の色成分データを１つのバスに詰め込み、２クロックで１画素のカラーデータを転送するバス詰め込みモード（以下、４色２分割モードと称する）と、図１１（Ｄ）に示すように、４色のうち１色ずつの色成分データをバスに詰め込み、４クロックで１画素のカラーデータを転送するバス詰め込みモード（以下、４色１分割モードと称する）とが設定できるようになっている。
【００４１】
図１２は、テーブル２１の一例である。図１２に示すように、テーブル２１には、バス幅と、色成分数と、各色のデータ幅と、それに対応するバス詰め込みモードが記述されている。図１２に示すように、バス幅が３２ビットの場合、色成分が３色で、各色のデータ幅が１ビットから１０ビットなら、３色３分割モードとなる。色成分が３色で、各色のデータ幅が１１ビットから１６ビットなら、３色２分割モードとなる。色成分が３色で、各色のデータ幅が１７ビットから３２ビットなら、３色１分割モードとなる。色成分が４色で、各色のデータ幅が１ビットから８ビットなら、４色４分割モードとなる。色成分が４色で、各色のデータ幅が９ビットから１０ビットなら、４色３分割モードとなる。色成分が４色で、各色のデータ幅が１１ビットから１６ビットなら、４色２分割モードとなる。色成分が４色で、各色のデータ幅が１７ビットから３２ビットなら、４色１分割モードとなる。
【００４２】
２−３．各モードでのステート信号について．
３色３分割モードでは、図１０（Ａ）に示すように、１クロックで１画素分のカラーデータが転送できるので、バスの状態は、Ｒ、Ｇ、Ｂを転送している状態（ステート（００））の１通りである。
【００４３】
３色２分割モードでは、図１０（Ｂ）に示すように、３クロックで２画素分のカラーデータが転送され、バスの状態は、ＲとＧの色成分を転送している状態（ステート（００））と、ＢとＲの色成分を転送している状態（ステート（０１））と、ＧとＢの色成分を転送している状態（ステート（１０））の３通りの状態がある。
【００４４】
３色３分割モードでは、図１０（Ｃ）に示すように、３クロックで１画素分のカラーデータが転送され、バスの状態は、Ｒの色成分を転送している状態（ステート（００））と、Gの色成分を転送している状態（ステート（０１））と、Bの色成分を転送している状態（ステート（１０））の３通りの状態がある。
【００４５】
４色４分割モードでは、図１１（Ａ）に示すように、１クロックで１画素分のカラーデータが転送できるので、バスの状態は、Ｃ、Ｍ、Ｙ、Ｇの色成分のデータを転送している状態（ステート（００））の１通りである。
【００４６】
４色３分割モードでは、図１１（Ｂ）に示すように、４クロックで３画素分のカラーデータが転送され、バスの状態は、ＣとＭとＹの色成分を転送している状態（ステート（００））と、ＧとＣとＭの色成分を転送している状態（ステート（０１））と、ＹとＧとＣの色成分を転送している状態（ステート（１０））と、ＭとＹとＧの色成分を転送している状態（ステート（１１））との４通りの状態がある。
【００４７】
４色２分割モードでは、図１１（Ｃ）に示すように、２クロックで１画素分のカラーデータが転送され、バスの状態は、ＣとＭの色成分を転送している状態（ステート（００））と、ＹとＧの色成分を転送している状態（ステート（０１））との２通りの状態がある。
【００４８】
４色１分割モードでは、図１１（Ｄ）に示すように、４クロックで１画素分のカラーデータが転送され、バスの状態は、Ｃの色成分を転送している状態（ステート（００））と、Ｍの色成分を転送している状態（ステート（０１））と、Ｙの色成分を転送している状態（ステート（１０））と、Ｇの色成分を転送している状態（ステート（１１））の４通りの状態がある。
【００４９】
図３〜図９において、ステートカウンタ２３は、バスの状態を示すステート信号を発生する。各バス詰め込みモードでのステート信号は、以下のような意味を持つ。
（ａ）３色３分割モード
ステート（００）  ＲＧＢ転送ステート
（ｂ）３色２分割モード
ステート（００）  ＲＧ転送ステート
ステート（０１）  ＢＲ転送ステート
ステート（１０）  ＧＢ転送ステート
（ｃ）３色１分割モード
ステート（００）  Ｒ転送ステート
ステート（０１）  Ｇ転送ステート
ステート（１０）  Ｂ転送ステート
（ｄ）４色４分割モード
ステート（００）  ＣＭＹＧ転送ステート
（ｅ）４色３分割モード
ステート（００）  ＣＭＹ転送ステート
ステート（０１）  ＧＣＭ転送ステート
ステート（１０）  ＹＧＣ転送ステート
ステート（１１）  ＭＹＧ転送ステート
（ｆ）４色２分割モード
ステート（００）  ＣＭ転送ステート
ステート（０１）  ＹＧ転送ステート
（ｇ）４色１分割モード
ステート（００）  Ｃ転送ステート
ステート（０１）  Ｍ転送ステート
ステート（１０）  Ｙ転送ステート
ステート（１１）  Ｇ転送ステート
【００５０】
図３は３色３分割モードに設定されたときの状態を示し、図４は３色２分割モードに設定されたときの状態を示し、図５は３色１分割モードに設定されたときの状態を示し、図６は４色４分割モードに設定されたときの状態を示し、図７は４色３分割モードに設定されたときの状態を示し、図８は４色２分割モードに設定されたときの状態を示し、図９は４色１分割モードに設定されたときの状態を示している。また、図１３は３色３分割モードのときの各部のタイミングを示し、図１４は３色２分割モードのときの各部のタイミングを示し、図１５は３色１分割モードのときの各部のタイミングを示し、図１６は４色４分割モードのときの各部のタイミングを示し、図１７は４色３分割モードのときの各部のタイミングを示し、図１８は４色２分割モードのときの各部のタイミングを示し、図１９は４色１分割モードのときの各部のタイミングを示している。
【００５１】
図３〜図９において、ステート制御部２２は、テーブル２１からのモード設定信号を用いて、上述のようなステート信号が発生されるように、ステートカウンタ２３のカウンタ値を制御する。
【００５２】
すなわち、ステートカウンタ２３は、例えば、２ビットのカウンタで構成される。３色３分割モードのときには、図３及び図１３（Ｂ）に示すように、ステート制御部２２により、ステートカウンタ２３は、常に、（００）にリセットされる。
【００５３】
３色２分割モードのときには、図４及び図１４（Ｂ）に示すように、ステート制御部２２により、ステートカウンタ２３が（１０）までカウントされると、リセットされるように制御される。これにより、ステートカウンタ２３は、ＲとＧの色成分を転送している状態（ステート（００））と、ＢとＲの色成分を転送している状態（ステート（０１））と、ＧとＢの色成分を転送している状態（ステート（１０））の３通りの状態を示すようになる。
【００５４】
３色１分割モードのときには、図５及び図１５（Ｂ）に示すように、ステート制御部２２により、ステートカウンタ２３が（１０）までカウントされると、リセットされるように制御される。これにより、ステートカウンタ２３は、Ｒの色成分を転送している状態（ステート（００））と、Ｇの色成分を転送している状態（ステート（０１））と、Ｂの色成分を転送している状態（ステート（１０））の３通りの状態を示すようになる。
【００５５】
４色４分割モードのときには、図６及び図１６（Ｂ）に示すように、ステート制御部２２により、ステートカウンタ２３は、常に、（００）にリセットされる。
【００５６】
４色３分割モードのときには、図７及び図１７（Ｂ）に示すように、ステート制御部２２により、ステートカウンタ２３が（１１）までカウントされると、リセットされるように制御される。これにより、ステートカウンタ２３は、ＣとＭとＹの色成分を転送している状態（ステート（００））と、ＧとＣとＭの色成分を転送している状態（ステート（０１））と、ＹとＧとＣの色成分を転送している状態（ステート（１０））と、ＭとＹとＧの色成分を転送している状態（ステート（１１））との４通りの状態を示すようになる。
【００５７】
４色２分割モードのときには、図８及び図１８（Ｂ）に示すように、ステート制御部２２により、ステートカウンタ２３が（０１）までカウントされると、リセットされるように制御される。これにより、ステートカウンタ２３は、ＣとＭの色成分を転送している状態（ステート（００））と、ＹとＧの色成分を転送している状態（ステート（０１））との２通りの状態を示すようになる。
【００５８】
４色１分割モードのときには、図９及び図１９（Ｂ）に示すように、ステート制御部２２により、ステートカウンタ２３が（１１）までカウントされると、リセットされるように制御される。これにより、ステートカウンタ２３は、Ｃの色成分を転送している状態（ステート（００））と、Ｍの色成分を転送している状態（ステート（０１））と、Ｙの色成分を転送している状態（ステート（１０））と、Ｇの色成分を転送している状態（ステート（１１））の４通りの状態を示すようになる。
【００５９】
２−４．アドレス制御及び遅延制御について．
イネーブル信号発生部２４は、テーブル２１からのモード設定信号と、ステートカウンタ２３からのステート信号に基づいて、アドレスカウンタ２５ａ、２５ｂを制御するためのイネーブル信号を発生する。
【００６０】
なお、アドレスカウンタ２５ｂは、４色３分割モードのときには、バッファ領域Ｘ２、Ｘ３へのアドレスを発生するために用意される。それ以外のバス詰め込みモードのときには、アドレスカウンタ２５ａのみ使用され、アドレスカウンタ２５ｂは使用されない。
【００６１】
遅延制御部２６は、テーブル２１からのモード設定信号に基づいて、各バッファへのアドレスの遅延を行う遅延部Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ６に対する遅延量を設定する。
【００６２】
アドレスカウンタ２５ａ、２５ｂ、及び遅延部Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ６の遅延量は、モード信号と、ステート信号に応じて、以下のように制御される。
【００６３】
３色３分割モードのときには、図３及び図１３（Ｃ）に示すように、アドレスカウンタ２５ａは、１クロック毎に歩進するアドレスが生成されるように制御される。そして、図３に示すように、遅延制御部２６により、遅延部Ｄ１〜Ｄ３の遅延量は全て「０」に設定される。アドレスカウンタ２５ｂ及び遅延部Ｄ４〜Ｄ６は使用されない。なお、図１３〜図１９において、「＊」は使用されていないことを示している。
【００６４】
３色２分割モードのときには、図４及び図１４（Ｃ）に示すように、アドレスカウンタ２５ａは、ステートカウンタ２３がステート（０１）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、イネーブル信号発生部２４により歩進が制御される。そして、図４に示すように、遅延制御部２６により、遅延部Ｄ１の遅延量は「０」で、遅延部Ｄ２の遅延量は「０」で、遅延部Ｄ３の遅延量が「１クロック」に設定される。アドレスカウンタ２５ｂ及び遅延部Ｄ４〜Ｄ６は使用されない。
【００６５】
３色１分割モードのときには、図５及び図１５（Ｃ）に示すように、アドレスカウンタ２５ａは、ステートカウンタ２３がステート（００）を示すときにと、ステート（０１）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、イネーブル信号発生部２４により歩進が制御される。そして、図５に示すように、遅延制御部２６により、遅延部Ｄ１の遅延量は「０」で、遅延部Ｄ２の遅延量が「１クロック」で、遅延部Ｄ３の遅延量が「２クロック」に設定される。アドレスカウンタ２５ｂ及び遅延部Ｄ４〜Ｄ６は使用されない。
【００６６】
４色４分割モードのときには、図６及び図１６（Ｃ）に示すように、アドレスカウンタ２５ａは、１クロック毎に歩進するアドレスが生成されるように制御される。そして、図６に示すように、遅延制御部２６により、遅延部Ｄ１〜Ｄ４の遅延量は全て「０」に設定される。アドレスカウンタ２５ｂ及び遅延部Ｄ５〜Ｄ６は使用されない。
【００６７】
４色３分割モードのときには、図７及び図１７（Ｃ）に示すように、アドレスカウンタ２５ａは、ステートカウンタ２３がステート（１０）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、イネーブル信号発生部２４により歩進が制御される。アドレスカウンタ２５ｂは、図７及び図１７（Ｄ）に示すように、ステートカウンタ２３がステート（０１）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、イネーブル信号発生部２４により歩進が制御される。そして、図７に示すように、遅延制御部２６により、遅延部Ｄ１の遅延量は「０」で、遅延部Ｄ２の遅延量が「１クロック」で、遅延部Ｄ５の遅延量は「０」で、遅延部Ｄ６の遅延量は「０」に設定される。遅延部Ｄ３、Ｄ４は使用されない。
【００６８】
４色２分割モードのときには、図８及び図１８（Ｃ）に示すように、アドレスカウンタ２５ａは、ステートカウンタ２３がステート（００）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、イネーブル信号発生部２４により歩進が制御される。そして、図８に示すように、遅延制御部２６により、遅延部Ｄ１の遅延量は「０」で、遅延部Ｄ２の遅延量は「０」で、遅延部Ｄ３の遅延量は「１クロック」で、遅延部Ｄ４の遅延量が「１クロック」に設定される。アドレスカウンタ２５ｂ及び遅延部Ｄ５、Ｄ６は使用されない。
【００６９】
４色１分割モードのときには、図９及び図１９（Ｃ）に示すように、アドレスカウンタ２５ａは、ステートカウンタがステート（００）を示すときと、ステート（０１）を示すときと、ステート（１０）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、イネーブル信号発生部２４により歩進が制御される。そして、図９に示すように、遅延制御部２６により、遅延部Ｄ１の遅延量は「０」で、遅延部Ｄ２の遅延量は「１クロック」で、遅延部Ｄ３の遅延量は「２クロック」で、遅延部Ｄ４の遅延量は「３クロック」に設定される。アドレスカウンタ２５ｂ及び遅延部Ｄ５、Ｄ６は使用されない。
【００７０】
２−５．連結制御について．
図３〜図９において、連結部２８は、各バッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４から読み出された各色成分のデータを、連結制御部２９からの連結信号に基づいて連結して、バスに送出する。
【００７１】
３色３分割モードのときには、図３及び図１３（Ｍ）に示すように、連結部２８により、バッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３から、Ｒのデータと、Ｇのデータと、Ｂのデータが読み出され、このＲのデータと、Ｇのデータと、Ｂのデータが順に連結されて、バス４に転送される。
【００７２】
３色２分割モードのときには、図４及び図１４（Ｍ）に示すように、連結部２８により、ステート（００）のときにはバッファ領域Ｘ１、バッファ領域Ｘ２から、Ｒのデータと、Ｇのデータが読み出され、このＲのデータと、Ｇのデータとが順に連結されて、バス４に転送される。ステート（０１）のときにはバッファ領域Ｘ３、バッファ領域Ｘ１から、Ｂのデータと、Ｒのデータが読み出され、このＢのデータと、Ｒのデータとが順に連結されて、バス４に転送される。ステート（１０）のときにはバッファ領域Ｘ２、バッファ領域Ｘ３から、Ｇのデータと、Ｂのデータが読み出され、このＧのデータと、Ｂのデータとが順に連結されて、バス４に転送される。
【００７３】
３色１分割モードのときには、図５及び図１５（Ｍ）に示すように、連結部２８により、ステート（００）のときにはバッファ領域Ｘ１からＲのデータが読み出され、このＲのデータのみがバス４に転送される。ステート（０１）のときにはバッファ領域Ｘ２からＧのデータが読み出され、このＧのデータのみがバス４に転送される。ステート（１０）のときにはバッファ領域Ｘ３からＢのデータが読み出され、このＢのデータのみがバス４に転送される。
【００７４】
４色４分割モードのときには、図６及び図１６（Ｍ）に示すように、連結部２８により、バッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３、バッファ領域Ｘ４から、Ｃのデータと、Ｍのデータと、Ｙのデータと、Ｇのデータとが読み出され、このＣのデータと、Ｍのデータと、Ｙのデータと、Ｇのデータが順に連結されて、バス４に転送される。
【００７５】
４色３分割モードのときには、図７及び図１７（Ｍ）に示すように、連結部２８により、ステート（００）のときにはバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３から、Ｃのデータと、Ｍのデータと、Ｙのデータが読み出され、このＣのデータと、Ｍのデータと、Ｙのデータが順に連結されて、バス４に転送される。ステート（０１）のときにはバッファ領域Ｘ４、バッファ領域Ｘ１、バッファ領域Ｘ２から、Ｇのデータと、Ｃのデータと、Ｍのデータが読み出され、このＧのデータと、Ｃのデータと、Ｍのデータが順に連結されて、バス４に転送される。ステート（１０）のときにはバッファ領域Ｘ３、バッファ領域Ｘ４、バッファ領域Ｘ１から、Ｙのデータと、Ｇのデータと、Ｃのデータが読み出され、このＹのデータと、Ｇのデータと、Ｃのデータとが順に連結されて、バス４に転送される。ステート（１１）のときにはバッファ領域Ｘ２、バッファ領域Ｘ３、バッファ領域Ｘ４から、Ｍのデータと、Ｙのデータと、Ｇのデータが読み出され、このＭのデータと、Ｙのデータと、Ｇのデータとが順に連結されて、バス４に転送される。
【００７６】
４色２分割モードのときには、図８及び図１８（Ｍ）に示すように、連結部２８により、ステート（００）のときにはバッファ領域Ｘ１、バッファ領域Ｘ２から、Ｃのデータと、Ｍのデータが読み出され、このＣのデータと、Ｍのデータとが順に連結されて、バス４に転送される。ステート（０１）のときにはバッファ領域Ｘ３、バッファ領域Ｘ４から、Ｙのデータと、Ｇのデータが読み出され、このＹのデータと、Ｇのデータとが順に連結されて、バス４に転送される。
【００７７】
４色１分割モードのときには、図９及び図１９（Ｍ）に示すように、連結部２８により、ステート（００）のときにはバッファ領域Ｘ１からＣのデータが読み出され、このＣのデータのみがバス４に転送される。ステート（０１）のときにはバッファ領域Ｘ２からＭのデータが読み出され、このＭのデータのみがバス４に転送される。ステート（１０）のときにはバッファ領域Ｘ３からＹのデータが読み出され、このＹのデータのみがバス４に転送される。ステート（１１）のときにはバッファ領域Ｘ４からＧのデータが読み出され、このＧのデータのみがバス４に転送される。
【００７８】
２−６．色成分が３色でデータ幅が１ビットから１０ビットの場合の動作．
色成分が３色でデータ幅が１ビットから１０ビットの場合には、テーブル２１（図１２）から、３色３分割モードのモード設定信号が出力される。３色３分割モードのときには、ステートカウンタ２３の値は（図１３（Ｂ））常に（００）となる。
【００７９】
また、クロックＣＬＫ（図１３（Ａ））に同期して、図１３（Ｃ）に示すように、１クロック毎に歩進するように、アドレスカウンタ２５ａが進められる。
【００８０】
アドレスカウンタ２５ａからのアドレスは、遅延部Ｄ１、Ｄ２、Ｄ３を介して、バッファ領域Ｘ１、Ｘ２、Ｘ３に供給される。３色３分割モードでは、遅延部Ｄ１〜Ｄ３の遅延量は全て「０」に設定される。したがって、バッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３のリード／ライトアドレスは、図１３（Ｅ）、図１３（Ｆ）、図１３（Ｇ）に示すように、アドレスカウンタ２５ａからのアドレス（図１３（Ｃ））と同様になる。図１３（Ｉ）、図１３（Ｊ）、図１３（Ｋ）は、以上のアドレスにより指定されたバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３に係るＲの色成分のデータ、Ｇの色成分のデータ、Ｂの色成分を示している。
【００８１】
３色３分割モードのときには、ステートは１つで、Ｒのカラーデータと、Ｇのカラーデータと、Ｂのカラーデータとが連結されて、バス４に送出されることとなる。連結部２８は、図１３（Ｍ）に示すように、Ｒのデータと、Ｇのデータと、Ｂのデータとを連結しバス４に送出する。
【００８２】
２−７．色成分が３色でデータ幅が１１ビットから１６ビットの場合の動作．
色成分が３色でデータ幅が１１ビットから１６ビットの場合には、テーブル２１（図１２）から、３色２分割モードのモード設定信号が出力される。３色２分割モードのときには、クロックＣＬＫ（図１４（Ａ））に同期して、図１４（Ｂ）に示すように、ステートカウンタ２３は、（００）、（０１）、（１０）に進められる。
【００８３】
また、クロックＣＬＫに同期して、図１４（Ｃ）に示すように、ステートカウンタ２３がステート（０１）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、アドレスカウンタ２５ａが進められる。
【００８４】
アドレスカウンタ２５ａからのアドレスは、遅延部Ｄ１、Ｄ２、Ｄ３を介して、バッファ領域Ｘ１、Ｘ２、Ｘ３に供給される。３色２分割モードでは、遅延部Ｄ１の遅延量は「０」、遅延部Ｄ２の遅延量は「０」、遅延部Ｄ３の遅延量は「１クロック」に設定される。したがって、バッファ領域Ｘ１、バッファ領域Ｘ２、のリード／ライトアドレスは、図１４（Ｅ）、図１４（Ｆ）に示すように、アドレスカウンタ２５ａからのアドレスと同様になる。バッファ領域Ｘ３のリード／ライトアドレスは、図１４（Ｇ）に示すように、アドレスカウンタ２５ａからのアドレスが１クロック遅延されたものとなる。図１４（Ｉ）、図１４（Ｊ）、図１４（Ｋ）は、以上のアドレスにより指定されたバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３に係るＲの色成分のデータ、Ｇの色成分のデータ、Ｂの色成分のデータを示している。
【００８５】
３色２分割モードでは、ステート（００）のときにはＲのデータとＧのデータとが連結され、ステート（０１）のときにはＢのデータとＲのデータとが連結され、ステート（１０）のときにはＧのデータとＢのデータとが連結されることとなる。連結部２８は、図１４（Ｍ）に示すように、ＲＧを連結したカラーデータと、ＢＲを連結したカラーデータと、ＧＢを連結したカラーデータをバス４に順に送出する。
【００８６】
２−８．色成分が３色でデータ幅が１７ビットから３２ビットの場合の動作．
色成分が３色でデータ幅が１７ビットから３２ビットの場合には、テーブル２１（図１２）から、３色１分割モードのモード設定信号が出力される。３色１分割モードのときには、クロックＣＬＫ（図１５（Ａ））に同期して、図１５（Ｂ）に示すように、ステートカウンタ２３は、（００）、（０１）、（１０）に進められる。
【００８７】
また、クロックＣＬＫに同期して、図１５（Ｃ）に示すように、ステートカウンタ２３がステート（００）、（０１）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、アドレスカウンタ２５ａが進められる。
【００８８】
アドレスカウンタ２５ａからのアドレスは、遅延部Ｄ１、Ｄ２、Ｄ３を介して、バッファ領域Ｘ１、Ｘ２、Ｘ３に供給される。３色１分割モードのときには、遅延部Ｄ１の遅延量が「０」で、遅延部Ｄ２の遅延量は「１クロック」で、遅延部Ｄ３の遅延量が「２クロック」に設定される。したがって、バッファ領域Ｘ１のリード／ライトアドレスは、図１５（Ｅ）に示すように、アドレスカウンタ２５ａからのアドレス（図１５（Ｃ））と同様になる。バッファ領域Ｘ２のリード／ライトアドレスは、図１５（Ｆ）に示すように、アドレスカウンタ２５ａからのアドレスが１クロック遅延されたものとなる。バッファ領域Ｘ３のリード／ライトアドレスは、図１５（Ｇ）に示すように、アドレスカウンタ２５ａからのアドレスが２クロック遅延されたものとなる。図１５（Ｉ）、図１５（Ｊ）、図１５（Ｋ）は、以上のアドレスにより指定されたバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３に係るＲの色成分のデータ、Ｇの色成分のデータ、Ｂの色成分のデータを示している。
【００８９】
３色１分割モードでは、ステート（００）のときにはＲのデータが出力され、ステート（０１）のときにはＧデータが転送され、ステート（１０）のときにはＢのデータが転送される。連結部２８は、図１５（Ｍ）に示すように、Ｒ、Ｇ、Ｂのカラーデータをバス４に順に送出する。
【００９０】
２−９．色成分が４色でデータ幅が１ビットから８ビットの場合の動作．
色成分が４色でデータ幅が１ビットから８ビットの場合には、テーブル２１（図１２）から、４色４分割モードのモード設定信号が出力される。４色４分割モードのときには、ステートカウンタ２３（図１６（Ｂ））の値は常に（００）となる。
【００９１】
また、クロックＣＬＫ（図１６（Ａ））に同期して、図１６（Ｃ）に示すように、１クロック毎に歩進するように、アドレスカウンタ２５ａが進められる。
【００９２】
アドレスカウンタ２５ａからのアドレスは、遅延部Ｄ１、Ｄ２、Ｄ３、Ｄ４を介して、バッファ領域Ｘ１、Ｘ２、Ｘ３に供給される。４色４分割モードのときには、遅延部Ｄ１〜Ｄ４の遅延量は全て「０」に設定される。したがって、バッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３、バッファ領域Ｘ４のリード／ライトアドレスは、図１６（Ｅ）、図１６（Ｆ）、図１６（Ｇ）、図１６（Ｈ）に示すように、アドレスカウンタ２５ａからのアドレス（図１６（Ｃ））と同様になる。図１６（Ｉ）、図１６（Ｊ）、図１６（Ｋ）、図１６（Ｌ）は、以上のアドレスにより指定されたバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３、バッファ領域Ｘ４に係るＣの色成分のデータ、Ｍの色成分のデータ、Ｙの色成分のデータ、Ｇの色成分のデータを示している。
【００９３】
４色４分割モードでは、ステートは１つで、Ｃのデータと、Ｍのデータと、Ｙのデータと、Ｇのデータとが連結されることとなる。連結部２８は、図１６（Ｍ）に示すようにＣＭＹＧを連結したカラーデータをバス４に送出する。
【００９４】
２−１０．色成分が４色でデータ幅が９ビットから１０ビットの場合の動作．
色成分が４色でデータ幅が９ビットから１０ビットの場合には、テーブル２１（図１２）から、４色３分割モードのモード設定信号が出力される。４色３分割モードでは、クロックＣＬＫ（図１７（Ａ））に同期して、図１７（Ｂ）に示すように、ステートカウンタ２３は、（００）、（０１）、（１０）、（１１）に進められる。
【００９５】
また、アドレスカウンタ２５ａは、図１７（Ｃ）に示すように、クロックＣＬＫに同期して、ステートカウンタ２３がステート（１０）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、進められる。
【００９６】
アドレスカウンタ２５ｂは、図１７（Ｄ）に示すように、クロックＣＬＫに同期して、ステートカウンタ２３がステート（０１）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、進められる。
【００９７】
アドレスカウンタ２５ａからのアドレスは、遅延部Ｄ１及びＤ２を介して、バッファ領域Ｘ１及びＸ４に供給される。４色３分割モードのときには、遅延部Ｄ１の遅延量は「０」に設定され、遅延部Ｄ２の遅延量は「１クロック」に設定される。したがって、図１７（Ｅ）に示すように、バッファＸ１に対するリード／ライトアドレスは、アドレスカウンタ２５ａからのアドレスと同様になる。バッファＸ４に対するリード／ライトアドレスは、図１７（Ｈ）に示すように、アドレスカウンタ２５ａからのアドレスが１クロック遅延されたものとなる。
【００９８】
アドレスカウンタ２５ｂからのアドレスは、遅延部Ｄ５及びＤ６を介して、バッファ領域Ｘ２及びＸ３に供給される。４色３分割モードのときには、遅延部Ｄ５及びＤ６の遅延量は「０」に設定されている。したがって、図１７（Ｆ）及び図１７（Ｇ）に示すように、バッファＸ２に対するリード／ライトアドレス及びバッファＸ３に対するリード／ライトアドレスは、アドレスカウンタ２５ｂからのアドレスと同様になる。
【００９９】
図１７（Ｉ）、図１７（Ｊ）、図１７（Ｋ）、図１７（Ｌ）は、以上のアドレスにより指定されたバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３、バッファ領域Ｘ４に係るＣの色成分のデータ、Ｍの色成分のデータ、Ｙの色成分のデータ、Ｇの色成分のデータを示している。
【０１００】
４色３分割モードでは、ステート（００）のときには、Ｃのデータと、Ｍのデータと、Ｙのデータとが連結され、ステート（０１）のときには、Ｇのデータと、Ｃのデータと、Ｍのデータとが連結され、ステート（１０）のときには、Ｙのデータと、Ｇのデータと、Ｃのデータとが連結され、ステート（１１）のときには、Ｍのデータと、Ｙのデータと、Ｇのデータとが連結されることとなる。連結部２８は、図１７（Ｍ）に示すように、ＣＭＹを連結したカラーデータと、ＧＣＭを連結したカラーデータと、ＹＧＣを連結したカラーデータと、ＭＹＧを連結したカラーデータとを順にバス４に送出する。
【０１０１】
２−１１．色成分が４色でデータ幅が１１ビットから１６ビットの場合の動作．
色成分が４色でデータ幅が１１ビットから１６ビットの場合には、テーブル２１（図１２）から、４色２分割モードのモード設定信号が出力される。４色２分割モードのときには、クロックＣＬＫ（図１８（Ａ））に同期して、図１８（Ｂ）に示すように、ステートカウンタ２３は、（００）、（０１）に進められる。
【０１０２】
また、クロックＣＬＫに同期して、図１８（Ｃ）に示すように、ステートカウンタ２３がステート（００）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、アドレスカウンタ２５ａが進められる。
【０１０３】
アドレスカウンタ２５ａからのアドレスは、遅延部Ｄ１、Ｄ２、Ｄ３、Ｄ４を介して、バッファ領域Ｘ１、Ｘ２、Ｘ３に供給される。４色２分割モードのときには、遅延部Ｄ１、Ｄ２の遅延量は「０」で、遅延部Ｄ３、Ｄ４の遅延量は「１クロック」に設定される。したがって、バッファＸ１及びバッファＸ２に対するリード／ライトアドレスは、図１８（Ｅ）及び図１８（Ｆ）に示すように、アドレスカウンタ２５ａからのアドレスと同様になる。また、図１８（Ｇ）及び図１８（Ｈ）に示すように、バッファＸ３及びバッファＸ４に対するリード／ライトアドレスは、アドレスカウンタ２５ａからのアドレスが１クロック遅延されたものとなる。図１８（Ｉ）、図１８（Ｊ）、図１８（Ｋ）、図１８（Ｌ）は、以上のアドレスにより指定されたバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３、バッファ領域Ｘ４に係るＣの色成分のデータ、Ｍの色成分のデータ、Ｙの色成分のデータ、Ｇの色成分のデータを示している。
【０１０４】
４色２分割モードでは、ステート（００）のときには、Ｃのデータと、Ｍのデータとが連結され、ステート（０１）のときには、Ｙのデータと、Ｇのデータとが連結されることとなる。連結部２８は、図１８（Ｍ）に示すように、ＣＭを連結したカラーデータと、ＹＧを連結したカラーデータとを順にバス４に送出する。
【０１０５】
２−１２．色成分が４色でデータ幅が１７ビットから３２ビットの場合の動作．
色成分が４色でデータ幅が１７ビットから３２ビットの場合には、テーブル２１（図１２）から、４色１分割モードのモード設定信号が出力される。４色１分割モードのときには、クロックＣＬＫ（図１９（Ａ））に同期して、図１９（Ｂ）に示すように、ステートカウンタ２３は、（００）、（０１）、（１０）、（１１）に進められる。
【０１０６】
また、クロックＣＬＫに同期して、図１９（Ｃ）に示すように、ステートカウンタ２３がステート（００）、（０１）、（１０）を示すときにホールドとなり、それ以外では、１クロックずつ歩進するように、アドレスカウンタ２５ａが進められる。
【０１０７】
アドレスカウンタ２５ａからのアドレスは、遅延部Ｄ１、Ｄ２、Ｄ３、Ｄ４を介して、バッファ領域Ｘ１、Ｘ２、Ｘ３、Ｘ４に供給される。４色１分割モードのときには、遅延部Ｄ１の遅延量は「０」で、遅延部Ｄ２の遅延量は「１クロック」で、遅延部Ｄ３の遅延量は「２クロック」で、遅延部Ｄ４の遅延量は「３クロック」に設定される。したがって、バッファ領域Ｘ１に対するリード／ライトアドレスは、図１９（Ｅ）に示すように、アドレスカウンタ２５ａからのアドレスと同様になり、バッファ領域Ｘ２に対するリード／ライトアドレスは、図１９（Ｆ）に示すように、アドレスカウンタ２５ａからのアドレスが１クロック遅延されたものとになり、バッファ領域Ｘ３に対するリード／ライトアドレスは、図１９（Ｇ）に示すように、アドレスカウンタ２５ａからのアドレスが２クロック遅延されたものとになり、バッファ領域Ｘ４に対するリード／ライトアドレスは、図１９（Ｈ）に示すように、アドレスカウンタ２５ａからのアドレスが３クロック遅延されたものとになる。図１９（Ｉ）、図１９（Ｊ）、図１９（Ｋ）、図１９（Ｌ）は、以上のアドレスにより指定されたバッファ領域Ｘ１、バッファ領域Ｘ２、バッファ領域Ｘ３、バッファ領域Ｘ４に係るＣの色成分のデータ、Ｍの色成分のデータ、Ｙの色成分のデータ、Ｇの色成分のデータを示している。
【０１０８】
４色１分割モードでは、ステート（００）のときにはＣのデータが転送され、ステート（０１）のときにはＭのデータが転送され、ステート（１０）のときにはＹのデータが転送され、ステート（１１）のときにはＧのデータが転送される。連結部２８は、図１８（Ｍ）に示すように、Ｃのデータと、Ｍのデータと、Ｙのデータと、Ｇのデータとを順にバス４に送出する。
【０１０９】
３．変形例．
なお、上述の例では、３色の色成分を１画素とするモードと、４色の色成分を１画素とするモードが設定可能なため、バッファ領域をＸ１からＸ４まで４つ設けているが、３色の色成分を１画素とするモードだけであれば、バッファ領域はＸ１からＸ３までの３つで良い。また、２つのアドレスカウンタが必要なのは、４色３分割モードのときだけであるから、３色の色成分を１画素とするモードだけであれば、１つのアドレスカウンタだけで良い。
【０１１０】
また、上述の例では、バス幅を３２ビットとしているが、本発明は、バス幅が３２ビットの場合に限定されるものではなく、バス幅が１６ビットの場合や、６４ビットの場合にも、同様に適用できる。また、色数についても、３色や４色の場合に限定されるものではない。
【０１１１】
４．動作に基づくフローチャート．
図２０は、本実施の形態に係るデータ転送処理をコンピュータによりプログラムにより実現した場合のフローチャートを示すものである。
【０１１２】
本実施の形態に係るデータ転送フローは、テーブル２１にバス幅、各色成分の有効データ長、色成分数を設定する設定ステップ（ステップＳ１）と、設定ステップＳ１の情報に基づきバス連結モードを設定するモード設定ステップ（ステップＳ２）と、クロック毎にステート信号を生成するステート信号生成ステップ（ステップＳ３）と、ステート信号生成ステップＳ３で生成された信号により、メモリの読み出しアドレスを生成するアドレス生成ステップ（ステップＳ４）と、メモリからデータを読み出すデータ読み出しステップ（ステップＳ５）と、ステート信号生成ステップＳ３で生成されたステート信号に基づいて、読み出されたデータの色成分を選択し、連結する連結ステップ（ステップＳ６）と、連結ステップＳ６で連結されたデータをバスへ送る転送ステップ（ステップＳ７）とで構成される。
【０１１３】
設定ステップＳ１でバス幅、各色成分の有効データ長、色成分数を設定した後、モード設定ステップＳ２でバス詰め方のモードを決定する。さらに、ステート信号生成ステップＳ３では、各組み合わせ毎にステート信号を生成し、そのステート信号に基づき、アドレス生成ステップＳ４ではアドレスを生成する。読み出しステップＳ５では、生成されたアドレス信号に基づき、メモリからデータを読み出す。連結ステップＳ６では、読み出されたデータを、前述のとおり、ステート信号に基づいて選択し、選択したデータを連結する。転送ステップＳ７では、連結したデータをバスへ送り出す。なお、組み合わせ毎のステート信号及びアドレス生成及び連結方法については、前述の実施形態の通りである。
【０１１４】
本発明は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【産業上の利用可能性】
【０１１５】
本発明は、ディジタルカメラの撮像信号をＲＧＢからなる３色の色成分信号又はＣＭＹＧからなる４色の色成分信号をバスに転送する場合に用いて好適である。
【図面の簡単な説明】
【０１１６】
【図１】本発明が適用されるディジタルカメラのデータ処理回路の一例のブロック図である。
【図２】本発明が適用されるディジタルカメラのデータ処理回路におけるバッファメモリの一例のブロック図である。
【図３】本発明に係るデータ転送装置の説明に用いるブロック図である。
【図４】本発明に係るデータ転送装置の説明に用いるブロック図である。
【図５】本発明に係るデータ転送装置の説明に用いるブロック図である。
【図６】本発明に係るデータ転送装置の説明に用いるブロック図である。
【図７】本発明に係るデータ転送装置の説明に用いるブロック図である。
【図８】本発明に係るデータ転送装置の説明に用いるブロック図である。
【図９】本発明に係るデータ転送装置の説明に用いるブロック図である。
【図１０】本発明に係るデータ転送装置におけるモード及びステートの説明図である。
【図１１】本発明に係るデータ転送装置におけるモード及びステートの説明図である。
【図１２】本発明に係るデータ転送装置におけるテーブルの説明図である。
【図１３】本発明に係るデータ転送装置の説明に用いるタイミング図である。
【図１４】本発明に係るデータ転送装置の説明に用いるタイミング図である。
【図１５】本発明に係るデータ転送装置の説明に用いるタイミング図である。
【図１６】本発明に係るデータ転送装置の説明に用いるタイミング図である。
【図１７】本発明に係るデータ転送装置の説明に用いるタイミング図である。
【図１８】本発明に係るデータ転送装置の説明に用いるタイミング図である。
【図１９】本発明に係るデータ転送装置の説明に用いるタイミング図である。
【図２０】本発明に係るデータ転送装置の説明に用いるフローチャートである。
【図２１】従来のディジタルカメラのデータ処理回路の一例のブロック図である。
【符号の説明】
【０１１７】
２１  テーブル
２２  ステート制御部
２３  ステートカウンタ
２４  イネーブル信号発生部
２５ａ  アドレスカウンタ
２５ｂ  アドレスカウンタ
２６  遅延制御部
２８  連結部
２９  連結制御部
Ｄ１〜Ｄ６  遅延部
Ｘ１〜Ｘ４  バッファ領域
【図１】
2006148808.tif 000003
【図２】
2006148808.tif 000004
【図３】
2006148808.tif 000005
【図４】
2006148808.tif 000006
【図５】
2006148808.tif 000007
【図６】
2006148808.tif 000008
【図７】
2006148808.tif 000009
【図８】
2006148808.tif 000010
【図９】
2006148808.tif 000011
【図１０】
2006148808.tif 000012
【図１１】
2006148808.tif 000013
【図１２】
2006148808.tif 000014
【図１３】
2006148808.tif 000015
【図１４】
2006148808.tif 000016
【図１５】
2006148808.tif 000017
【図１６】
2006148808.tif 000018
【図１７】
2006148808.tif 000019
【図１８】
2006148808.tif 000020
【図１９】
2006148808.tif 000021
【図２０】
2006148808.tif 000022
【図２１】
2006148808.tif 000023