(57)【要約】【課題】ストリーム画像データの転送の中断を抑止できるバッファー制御回路、表示コントローラー及び電子機器等を提供すること。【解決手段】バッファー制御回路は、ラインバッファー２００に対してストリーム画像データＳＤの書き込み処理を行う書き込み回路２２０と、ラインバッファー２００に書き込まれた画像データの読み出し処理を行う読み出し回路２３０と、を含む。ストリーム画像データＳＤの水平方向の画素数がＨであり、モード切替えの閾値画素数がＮである場合に、書き込み回路２２０は、Ｈ＞Ｎである第１のモードでは、第１、第２のバッファー領域ＢＡ１、ＢＡ２を有するダブルバッファーに設定されたラインバッファー２００に対して書き込み処理を行う。Ｈ≦Ｎである第２のモードでは、シングルバッファーに設定されたラインバッファー２００に対して書き込み処理を行う。【選択図】      図４
2011039302.tif 000002
【特許請求の範囲】
【請求項１】
ストリーム画像データを受けて、ラインバッファーに対して前記ストリーム画像データの書き込み処理を行う書き込み回路と、
前記ラインバッファーに書き込まれた画像データの読み出し処理を行う読み出し回路と、
を含み、
前記ストリーム画像データの水平方向の画素数がＨ（Ｈは自然数）であり、モード切替えの閾値画素数がＮ（Ｎは自然数）である場合に、
前記書き込み回路は、
Ｈ＞Ｎである第１のモードでは、第１のバッファー領域と第２のバッファー領域を有するダブルバッファーに設定された前記ラインバッファーに対して前記書き込み処理を行い、
Ｈ≦Ｎである第２のモードでは、シングルバッファーに設定された前記ラインバッファーに対して前記書き込み処理を行うことを特徴とするバッファー制御回路。
【請求項２】
請求項１において、
前記ストリーム画像データの垂直方向の画素数がＶ（Ｖは自然数）である場合に、
前記第１のモードでは、
前記書き込み回路は、水平方向の画素数がＨで垂直方向の画素数がｊ（ｊはｊ≦Ｖの自然数）の画像データを、ダブルバッファーに設定された前記ラインバッファーの前記第１のバッファー領域及び前記第２のバッファー領域の一方に書き込み、前記読み出し回路は、水平方向の画素数がＨで垂直方向の画素数がｊの画像データを、前記第１のバッファー領域及び前記第２のバッファー領域の他方から読み出し、
前記第２のモードでは、
前記書き込み回路は、水平方向の画素数がＨで垂直方向の画素数がＶの画像データを、シングルバッファーに設定された前記ラインバッファーに書き込み、前記読み出し回路は、水平方向の画素数がＨで垂直方向の画素数がＶの画像データを、シングルバッファーに設定された前記ラインバッファーから読み出すことを特徴とするバッファー制御回路。
【請求項３】
請求項１または２において、
前記ストリーム画像データの垂直方向の画素数Ｖが大きいほど前記閾値画素数Ｎを小さくすることを特徴とするバッファー制御回路。
【請求項４】
請求項１または２において、
前記第１のバッファー領域の記憶容量がｉ×ｊ画素（ｉはｉ≧Ｈの自然数）に対応する記憶容量であり、前記第２のバッファー領域の記憶容量がｉ×ｊ画素に対応する記憶容量である場合に、Ｎ×Ｖ≦ｉ×２ｊを満たすことを特徴とするバッファー制御回路。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記ストリーム画像データの水平方向の画素数Ｈと垂直方向の画素数Ｖを設定するレジスターを含み、
前記レジスターの設定値に基づいて、前記第１のモードと前記第２のモードを切り替えることを特徴とするバッファー制御回路。
【請求項６】
請求項１乃至５のいずれかに記載のバッファー制御回路を含むことを特徴とする表示コントローラー。
【請求項７】
請求項６において、
ホストからの前記ストリーム画像データを受けるホストインターフェース回路と、
前記読み出し回路により読み出された画像データを画像メモリーに書き込むメモリーコントローラーと、
を含むことを特徴とする表示コントローラー。
【請求項８】
請求項７において、
前記第１のモードにおいて、
前記読み出し回路は、前記ラインバッファーからの画像データをバーストモードで読み出し、前記メモリーコントローラーは、前記読み出し回路からの画像データを前記画像メモリーにバーストモードで書き込むことを特徴とする表示コントローラー。
【請求項９】
請求項６乃至８のいずれかに記載の表示コントローラーを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バッファー制御回路、表示コントローラー及び電子機器等に関する。
【背景技術】
【０００２】
種々の画像を表示する表示装置には、表示制御を行う表示コントローラーが一般に用いられている（例えば、特許文献１に開示された表示コントローラー）。表示コントローラーは、ホスト等から入力されたストリーム画像データ（広義には、画像データ）をラインバッファー等でバッファリングしてビデオメモリーに記憶し、その画像データに基づいて表示制御を行う。このとき、ビデオメモリーへの転送速度等の条件によって、ホスト等から表示コントローラーへのストリーム画像データの転送が中断してしまう場合があるという課題がある。
【０００３】
例えば、ストリーム画像データをバッファリングする手法として、ラインバッファーを２つのバッファー領域に分け、２つのバッファー領域の一方に書き込みを行い、他方から読み出しを行う動作を交互に行うダブルバッファー手法が考えられる。しかしながら、このダブルバッファー手法では、一方のバッファー領域からビデオメモリーへの転送が完了するまでの間、そのバッファー領域にストリーム画像データを書き込むことができない。そのため、ラインバッファーからビデオメモリーへのデータ転送の転送速度が遅くなると、ホスト等から表示コントローラーへのストリーム画像データの転送が中断されてしまう場合がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１８００２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の幾つかの態様によれば、ストリーム画像データの転送の中断を抑止できるバッファー制御回路、表示コントローラー及び電子機器等を提供できる。
【課題を解決するための手段】
【０００６】
本発明の一態様は、ストリーム画像データを受けて、ラインバッファーに対して前記ストリーム画像データの書き込み処理を行う書き込み回路と、前記ラインバッファーに書き込まれた画像データの読み出し処理を行う読み出し回路と、を含み、前記ストリーム画像データの水平方向の画素数がＨ（Ｈは自然数）であり、モード切替えの閾値画素数がＮ（Ｎは自然数）である場合に、前記書き込み回路は、Ｈ＞Ｎの第１のモードでは、第１のバッファー領域と第２のバッファー領域を有するダブルバッファーに設定された前記ラインバッファーに対して前記書き込み処理を行い、Ｈ≦Ｎの第２のモードでは、シングルバッファーに設定された前記ラインバッファーに対して前記書き込み処理を行うバッファー制御回路に関係する。
【０００７】
本発明の一態様によれば、Ｈ＞Ｎである第１のモードでは、ラインバッファーが、第１、第２のバッファー領域を有するダブルバッファーに設定され、そのダブルバッファーに設定されたラインバッファーに対して書き込み処理が行われる。一方、Ｈ≦Ｎである第２のモードでは、ラインバッファーがシングルバッファーに設定され、そのシングルバッファーに設定されたラインバッファーに対して書き込み処理が行われる。これにより、ホスト等からのストリーム画像データの転送中断を抑止することなどが可能になる。
【０００８】
また、本発明の一態様では、前記ストリーム画像データの垂直方向の画素数がＶ（Ｖは自然数）である場合に、前記第１のモードでは、前記書き込み回路は、水平方向の画素数がＨで垂直方向の画素数がｊ（ｊはｊ≦Ｖの自然数）の画像データを、前記第１のバッファー領域及び前記第２のバッファー領域の一方に書き込み、前記読み出し回路は、水平方向の画素数がＨで垂直方向の画素数がｊの画像データを、前記第１のバッファー領域及び前記第２のバッファー領域の他方から読み出し、前記第２のモードでは、前記書き込み回路は、水平方向の画素数がＨで垂直方向の画素数がＶの画像データを、シングルバッファーに設定された前記ラインバッファーに書き込み、前記読み出し回路は、水平方向の画素数がＨで垂直方向の画素数がＶの画像データを、シングルバッファーに設定された前記ラインバッファーから読み出してもよい。
【０００９】
このようにすれば、第１のモードにおいて、ダブルバッファーに設定されたラインバッファーに対して書き込み処理と読み出し処理を行うことが可能になる。また、第２のモードにおいて、シングルバッファーに設定されたラインバッファーに対して書き込み処理と読み出し処理を行うことが可能になる。
【００１０】
また、本発明の一態様では、前記ストリーム画像データの垂直方向の画素数Ｖが大きいほど前記閾値画素数Ｎを小さくしてもよい。
【００１１】
また、本発明の一態様では、前記第１のバッファー領域の記憶容量がｉ×ｊ画素（ｉはｉ≧Ｈの自然数）に対応する記憶容量であり、前記第２のバッファー領域の記憶容量がｉ×ｊ画素に対応する記憶容量である場合に、Ｎ×Ｖ≦ｉ×２ｊを満たしてもよい。
【００１２】
これらの本発明の一態様によれば、閾値画素数Ｎを設定し、設定したＮに基づいてＨ＞Ｎにおいて第１のモードに設定し、Ｈ≦Ｎにおいて第２のモードに設定できる。そして、第２のモードにおいて、水平方向の画素数がＨで垂直方向の画素数がＶの画像データを、シングルバッファーに設定されたラインバッファーに書き込むことができる。
【００１３】
また、本発明の一態様では、前記ストリーム画像データの水平方向の画素数Ｈと垂直方向の画素数Ｖを設定するレジスターを含み、前記レジスターの設定値に基づいて、前記第１のモードと前記第２のモードを切り替えてもよい。
【００１４】
このようにすれば、レジスターの設定値に基づいて、閾値画素数Ｎを設定し、設定したＮに基づいて、Ｈ＞Ｎの第１のモードとＨ≦Ｎの第２のモードを切り替えることができる。
【００１５】
また、本発明の他の態様は、上記のいずれかに記載のバッファー制御回路を含む表示コントローラーに関係する。
【００１６】
また、本発明の他の態様では、ホストからの前記ストリーム画像データを受けるホストインターフェース回路と、前記読み出し回路により読み出された画像データを画像メモリーに書き込むメモリーコントローラーと、を含んでもよい。
【００１７】
また、本発明の他の態様では、前記第１のモードにおいて、前記読み出し回路は、前記ラインバッファーから画像データをバーストモードで読み出し、前記メモリーコントローラーは、前記読み出し回路からの画像データを前記画像メモリーにバーストモードで書き込んでもよい。
【００１８】
また、本発明の他の態様は、上記のいずれかに記載の表示コントローラーを含む電子機器に関係する。
【図面の簡単な説明】
【００１９】
【図１】表示コントローラーの構成例。
【図２】図２（Ａ）、図２（Ｂ）は、比較例の説明図。
【図３】比較例のタイミングチャート。
【図４】本実施形態のバッファー制御回路の構成例。
【図５】図５（Ａ）、図５（Ｂ）は、ダブルバッファーモードにおけるバッファー制御回路の動作例の説明図。
【図６】ダブルバッファーモードにおけるタイミングチャート例。
【図７】図７（Ａ）、図７（Ｂ）は、シングルバッファーモードにおけるバッファー制御回路の動作例の説明図。
【図８】シングルバッファーモードにおけるタイミングチャート例。
【図９】閾値画素数Ｎの設定例。
【図１０】バッファー制御回路の詳細な構成例。
【図１１】バッファー制御回路の詳細な構成例の動作例。
【図１２】バッファー制御回路の詳細な構成例のダブルバッファーモードにおけるタイミングチャート例。
【図１３】バッファー制御回路の詳細な構成例のシングルバッファーモードにおけるタイミングチャート例。
【図１４】電子機器の構成例。
【発明を実施するための形態】
【００２０】
以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
【００２１】
１．表示コントローラーの構成例
図１に、表示コントローラー（集積回路装置）の構成例を示す。図１に示す表示コントローラー１００は、ホストＩ／Ｆ回路１１０（ホストインターフェース回路）、バスコントローラー１３０、メモリーコントローラー１４０、表示制御部１５０、ラインバッファー２００、バッファー制御回路２１０を含む。
【００２２】
ホストＩ／Ｆ回路１１０は、ホスト１０との種々のインターフェース処理を行う。例えばホスト１０との間で、データ信号、アドレス信号、或いはライト／リード信号等のインターフェース信号のやり取りを行って、ホスト１０との間のインターフェースを実現する。そして、ホストＩ／Ｆ回路１１０は、ホスト１０からのストリーム画像データ（広義には、画像データ）を受信する。
【００２３】
ラインバッファー２００（バッファー、メモリー）は、例えばＳＲＡＭにより構成され、ストリーム画像データをバッファリング（一時的に記憶）する。バッファー制御回路２１０は、ラインバッファー２００のリード／ライト制御を行う。具体的には、ホストＩ／Ｆ回路１１０を介して入力されたストリーム画像データを、ラインバッファー２００に書き込む。また、バッファー制御回路２１０は、ラインバッファー２００に書き込まれた画像データを読み出し、読み出した画像データをバスコントローラー１３０に転送する。
【００２４】
バスコントローラー１３０は、内部バスを介した各構成要素間のデータ転送（データ通信）を制御する。バスコントローラー１３０は、例えばＦＩＦＯを有し、ラインバッファー２００から読み出された画像データを、そのＦＩＦＯを介してメモリーコントローラー１４０に転送する。
【００２５】
メモリーコントローラー１４０は、画像メモリー２０（ビデオメモリー、ＶＲＡＭ。例えば、ＳＤＲＡＭ）に対するリード／ライト制御を行う。具体的には、バスコントローラー１３０からの画像データを画像メモリー２０に書き込む。また、画像メモリー２０に記憶された画像データを読み出し、読み出したデータを表示制御部１５０に転送する。
【００２６】
表示制御部１５０は、メモリーコントローラー１４０からの画像データに基づいて、電気光学装置３０（例えば、液晶ディスプレイ、電気泳動ディスプレイ）の表示制御を行う。例えば、表示制御部１５０は、表示データ信号や制御信号（同期信号等）を電気光学装置３０に出力する。電気光学装置３０は、例えば液晶パネルや電気泳動パネルなどの電気光学パネルと、電気光学パネルのデータ線（ソース線）を駆動するデータードライバー（ソースドライバー）と、電気光学パネルの走査線（ゲート線）を駆動する走査ドライバー（ゲートドライバー）などを含むことができる。
【００２７】
なお、本実施形態の表示コントローラーは図１の構成に限定されず、その構成要素の一部（例えば、バスコントローラ−、メモリーコントローラー）を省略したり、他の構成要素を追加する等の種々の変形実施が可能である。例えば、表示コントローラー１００と画像メモリー２０が別々のＩＣチップにより構成されてもよく、画像メモリー２０が表示コントローラー１００に内蔵されてもよい。また、表示コントローラー１００は、画像の回転処理等を行う画像処理回路を含んでもよい。
【００２８】
２．比較例
まず、図２（Ａ）、図２（Ｂ）、図３を用いて、本実施形態の比較例について説明する。図２（Ａ）に示すように、６４画素×６００ラインの画像のストリーム画像データＳＤが入力されるものとする。このストリーム画像データＳＤは、第１〜第６００のラインＬ１〜Ｌ６００のデータにより構成される。
【００２９】
図２（Ｂ）に示すように、ラインバッファーのアドレス空間ＬＢには、それぞれ４０９６画素×３２ライン分の記憶容量を持つ第１、第２のバッファー領域ＢＡ１、ＢＡ２が設定される。すなわち、ラインバッファーはダブルバッファー構成になっている。そしてバッファー領域ＢＡ１には、ラインＬ１〜ラインＬ３２のデータが書き込まれる。また、アドレス空間ＬＢの第２のバッファー領域ＢＡ２には、ラインＬ３３〜ラインＬ６４のデータが書き込まれる。
【００３０】
図３に、比較例のタイミングチャートを模式的に示す。図３では、ストリーム画像データとして、Ｌ１〜Ｌ６００のデータを順次受信している。Ｃ１に示すように、バッファー領域ＢＡ１に書き込まれたＬ１〜Ｌ３２のデータは、Ｃ２に示すように、Ｌ３３〜Ｌ６４のデータをバッファー領域ＢＡ２に書き込む際に、Ｃ３に示すように、画像メモリーへバースト転送される。例えば、バースト転送では、ＢＡ１の全アドレスのデータを画像メモリーに転送する。
【００３１】
このとき、ストリーム画像データのＬ３３〜Ｌ６４のデータの転送期間ＴＳは、画像の水平方向の画素数が少なくなるほど短い期間となる。そのため、画像の水平方向の画素数によっては、Ｌ３３〜Ｌ６４のデータの転送期間ＴＳがバースト転送の転送期間ＴＢよりも短くなる場合がある（Ｌ１〜Ｌ３２のバースト長が短くなることで、バースト転送のデータ転送速度が低下する）。この場合、バースト転送が終了するまでバッファー領域ＢＡ１にＣ４に示すＬ６５〜Ｌ９６のデータを書き込むことができないため、ストリーム画像データの転送が中断されてしまう。そして、その中断を防止しようとすると、ストリーム画像データの転送速度を低下させる必要性が生じてしまう。
【００３２】
３．構成例
図４に、上記課題を解決できるバッファー制御回路の構成例を示す。図４に示すバッファー制御回路２１０は、書き込み回路２２０（ライト回路）、読み出し回路２３０（リード回路）、モード制御部２４０を含む。このバッファー制御回路２１０は、ストリーム画像データＳＤ（広義には、画像データ）の水平方向の画素数に応じたバッファー制御を行うことで、ストリーム画像データＳＤの転送が中断することを防止するための回路である。
【００３３】
モード制御部２４０は、ダブルバッファーモード（広義には、第１のモード）とシングルバッファーモード（広義には、第２のモード）を切り替える。具体的には、ストリーム画像データＳＤの水平方向の画素数Ｈが閾値画素数Ｎより大きいとき（Ｈ＞Ｎ）には、第１のモードを設定する。ストリーム画像データＳＤの水平方向の画素数Ｈが閾値画素数Ｎ以下のとき（Ｈ≦Ｎ）には、第２のモードを設定する（Ｈ、Ｎは自然数）。例えば、モード制御部２４０は、モード切替信号ＭＯＤを書き込み回路２２０と読み出し回路２３０に出力することでモード切り替えを行う。あるいは、モード制御部２４０は、ラインバッファー２００の第１、第２のバッファー領域ＢＡ１、ＢＡ２を切り替えるためのバッファー選択信号ＷＳＢを出力してもよく、ＷＳＢをモードに応じて制御することでモード切り替えを行ってもよい。
【００３４】
書き込み回路２２０は、ストリーム画像データＳＤを受けて、そのＳＤをラインバッファー２００に書き込む処理（書き込み処理、ライト処理）を行う。具体的には、書き込み回路２２０は、ストリーム画像データＳＤに基づいてアドレスＷＡＤ（書き込みアドレス）とデータＷＤ（画像データ）を生成し、ラインバッファー２００のアドレスＷＡＤにデータＷＤを書き込む。ダブルバッファーモードでは、ラインバッファー２００はダブルバッファーに設定され、ラインバッファー２００には第１、第２のバッファー領域ＢＡ１、ＢＡ２が設定される。書き込み回路２２０は、そのバッファー領域ＢＡ１、ＢＡ２に対してストリーム画像データＳＤを交互に書き込む。シングルバッファーモードでは、書き込み回路２２０は、シングルバッファーに設定されたラインバッファー２００に対してＳＤを書き込む。
【００３５】
読み出し回路２３０は、ラインバッファー２００に書き込まれた画像データを読み出す処理（読み出し処理、リード処理）を行う。具体的には、読み出し回路２３０は、アドレスＲＡＤを生成し、ラインバッファー２００のアドレスＲＡＤに記憶されたデータＲＤ（画像データ）を読み出し、読み出したデータＲＤをバスコントローラー等に出力する。読み出し回路２３０は、ダブルバッファーモードでは、ダブルバッファーに設定されたラインバッファー２００から画像データを読み出す。シングルバッファーモードでは、シングルバッファーに設定されたラインバッファー２００から画像データを読み出す。
【００３６】
例えば、ラインバッファー２００は、連続するアドレス０Ｈ〜３ＦＦＦＨ（アドレス０〜１６３８３。例えば各アドレス１６ビット）により指定されるアドレス空間ＬＢを有する。そして、ダブルバッファーモードでは、書き込み回路２２０がアドレス０Ｈ〜１ＦＦＦＨを指定して画像データを書き込み、読み出し回路２３０がアドレス２０００Ｈ〜３ＦＦＦＨを指定して画像データを読み出す。あるいは、書き込み回路２２０がアドレス２０００Ｈ〜３ＦＦＦＨを指定して画像データを書き込み、読み出し回路２３０がアドレス０Ｈ〜１ＦＦＦＨを指定して画像データを読み出す。これらの処理により、アドレス０Ｈ〜１ＦＦＦＨが第１のバッファー領域ＢＡ１に設定され、アドレス２０００Ｈ〜３ＦＦＦＨが第２のバッファー領域ＢＡ２に設定され、ラインバッファー２００がダブルバッファーに設定される。また、シングルバッファーモードでは、書き込み回路２２０がアドレス０Ｈ〜３ＦＦＦＨを指定して画像データを書き込み、読み出し回路２３０がアドレス０Ｈ〜３ＦＦＦＨを指定して画像データを読み出す。この処理により、ラインバッファー２００がシングルバッファーに設定される。
【００３７】
なお、本実施形態のバッファー制御回路は図４の構成に限定されず、その構成要素の一部を省略したり、他の構成要素を追加したりする等の種々の変形実施が可能である。例えば、モード切り替え回路２４０を省略してもよく、モード切り替え回路２４０の機能を書き込み回路２２０により実現してもよい。
【００３８】
４．動作例
図５（Ａ）、図５（Ｂ）、図６を用いて、ダブルバッファーモードにおけるバッファー制御回路の動作例について説明する。なお以下では、ラインバッファーから画像メモリーへバースト転送（バーストモードによるデータ転送）を行う場合を例に説明する。但し、本実施形態では、ラインバッファーから画像メモリーへ他のモードによるデータ転送を行ってもよい。
【００３９】
図５（Ａ）に示すように、水平方向（走査方向）の画素数がＨ＝５１２であり、垂直方向の画素数（ライン数、走査線数）がＶ＝１２００である画像のストリーム画像データＳＤが供給されるものとする。このストリーム画像データＳＤは、第１〜第１２００のラインＬ１〜Ｌ１２００のデータにより構成され、Ｌ１〜Ｌ１２００の各ラインのデータは、Ｈ＝５１２画素のデータで構成される。ここで、閾値画素数（閾値ビット数）がＮ＝１２８であるとする。このとき、Ｈ＝５１２＞Ｎ＝１２８であるため、本実施形態はダブルバッファーモードに設定される。
【００４０】
図５（Ｂ）に示すように、ラインバッファーのアドレス空間ＬＢには、バッファー領域ＢＡ１、ＢＡ２が設定される。バッファー領域ＢＡ１、ＢＡ２は、それぞれ、水平方向の画素数がｉであり、垂直方向の画素数がｊである画像データに対応する記憶容量を持つ（ｉはｉ≧Ｈの自然数、ｊはｊ≦Ｖの自然数）。例えば、ＢＡ１、ＢＡ２は、それぞれ４０９６ビット×３２ビットの記憶容量を持つ。各画素のデータ長が１ビットである場合、ＢＡ１、ＢＡ２の記憶容量は、ｉ×ｊ＝４０９６画素×３２ラインの画像データの容量に対応する。このとき、バッファー領域ＢＡ１、ＢＡ２には、ｊ＝３２ライン分の画像データが交互に書き込まれる。例えば、ＢＡ１には、ラインＬ１〜Ｌ３２のデータが、ＢＡ１の先頭アドレスから順次書き込まれる。ＢＡ２には、ラインＬ３３〜６４のデータが、ＢＡ２の先頭アドレスから順次書き込まれる。
【００４１】
図６に、ダブルバッファーモードにおけるタイミングチャート例を模式的に示す。図６に示すように、ラインＬ３３〜Ｌ６４のストリーム画像データをバッファー領域ＢＡ２に書き込む際、バッファー領域ＢＡ１から画像メモリーへバースト転送を行う。このとき、３２ライン分のデータの転送期間ＴＳ（受信期間）は、ストリーム画像データの水平方向の画素数Ｈが大きいほど長くなる。本実施形態では、Ｈ＞Ｎの条件を満たす場合にダブルバッファーモードに設定することで、（Ｌ３３〜Ｌ６４の転送期間ＴＳ）＞（ＢＡ１のバースト転送の転送期間ＴＢ）にできる。
【００４２】
図７（Ａ）、図７（Ｂ）、図８を用いて、シングルバッファーモードにおけるバッファー制御回路の動作例について説明する。図７（Ａ）に示すように、Ｈ＝６４画素、Ｖ＝１２００画素のストリーム画像データＳＤが供給されるものとする。各ラインのデータは、Ｈ＝６４画素のデータで構成される。閾値画素数がＮ＝１２８であるとすると、Ｈ≦Ｎであるため、本実施形態はシングルバッファーモードに設定される。
【００４３】
図７（Ｂ）に示すように、ラインバッファーのアドレス空間ＬＢは、シングルバッファーに設定される。すなわち、ラインバッファーは、ｉ×２ｊ＝４０９６画素×６４ラインの画像データに対応する記憶容量の１つのバッファーとして制御される。そして、ラインバッファーには、ラインＬ１〜Ｌ１２００のデータが先頭アドレスから順次書き込まれ、ストリーム画像データ全体がラインバッファーに書き込まれる。
【００４４】
図８に、シングルバッファーモードにおけるタイミングチャート例を模式的に示す。図８に示すように、ラインＬ１〜Ｌ１２００のデータをラインバッファーに書き込んだ後、ラインバッファーから画像メモリーへバースト転送を行う。このように、シングルバッファーに設定されたラインバッファーにストリーム画像データ全体を書き込むため、ストリーム画像データを中断することなく受信できる。
【００４５】
なお、上記においては、各画素のデータ長が１ビット（１ｂｐｐ：１ビットパーピクセル）である場合を例に説明したが、本実施形態では、各画素のデータ長が他のビット数であってもよい。例えば、各画素のデータ長が２ビット（２ｂｐｐ）、４ビット（４ｂｐｐ）であってもよい。このとき、バッファー領域の各ラインの画素数がｉ＝１０２４画素、５１２画素であってもよく、閾値画素数がＮ＝６４画素、３２画素であってもよい。
【００４６】
ここで、前述の比較例で説明したように、ダブルバッファーを用いた場合、ストリーム画像データの水平方向の画素数によっては、ホスト等からのストリーム画像データの転送が中断されてしまう場合がある。そのため、中断により転送速度が低下したり、中断を防ぐために転送速度を低下させる必要があるという課題があった。
【００４７】
この点、本実施形態によれば、Ｈ＞Ｎのダブルバッファーモードでは、バッファー領域ＢＡ１、ＢＡ２を有するダブルバッファーに設定されたラインバッファー２００に対して書き込み処理が行われる。一方、Ｈ≦Ｎのシングルバッファーモードでは、シングルバッファーに設定されたラインバッファー２００に対して書き込み処理が行われる。
【００４８】
これにより、ホスト等からのストリーム画像データの転送中断を防止することが可能になる。すなわち、ダブルバッファーモードにおいて、水平方向の画素数Ｈが閾値画素数Ｎより大きいことで、一方のバッファー領域の書き込み中に他方のバッファー領域のバースト転送を完了できる。また、水平方向の画素数Ｈが閾値画素数Ｎ以下の場合にシングルバッファーモードに設定することで、ストリーム画像データ全体をラインバッファーに書き込むことができる。このようにして、閾値画素数Ｎを境にモードを切り替えることで、ストリーム画像データの転送中断を防止し、転送速度を向上できる。
【００４９】
具体的には、ダブルバッファーモードでは、ラインバッファー２００のバッファー領域ＢＡ１、ＢＡ２の一方にＨ×ｊ画素の画像データが書き込まれ、バッファー領域ＢＡ１、ＢＡ２の他方からＨ×ｊ画素の画像データが読み出される。一方、シングルバッファーモードでは、ラインバッファー２００にＨ×Ｖ画素の画像データが書き込まれ、ラインバッファー２００からＨ×Ｖ画素の画像データが読み出される。
【００５０】
このようにすれば、ダブルバッファーモードにおいて、ラインバッファー２００をダブルバッファーに設定し、ダブルバッファーに設定されたラインバッファー２００に対して書き込み処理と読み出し処理を行うことができる。一方、シングルバッファーモードにおいて、ラインバッファー２００をシングルバッファーに設定し、シングルバッファーに設定されたラインバッファー２００に対して書き込み処理と読み出し処理を行うことができる。
【００５１】
ここで、本実施形態では、ストリーム画像データの垂直方向の画素数Ｖが大きいほど閾値画素数Ｎを小さくしてもよい。具体的には、バッファー領域ＢＡ１、ＢＡ２の記憶容量が、それぞれｉ×ｊ画素に対応する記憶容量である場合に、Ｎ×Ｖ≦ｉ×２ｊを満たすＮを設定してもよい。
【００５２】
例えば、図９に示すように、各画素のデータ長が１ビットであるものとすると、１≦Ｖ≦１０２４の場合にＮ＝２５６、１０２４＜Ｖ≦２０４８の場合にＮ＝１２８、２０４８＜Ｖ≦４０９６の場合にＮ＝６４に設定してもよい。いずれの場合も、Ｎ×Ｖ≦ｉ×２ｊを満たす。
【００５３】
このようにすれば、閾値画素数Ｎを設定し、設定したＮに基づいてＨ＞Ｎにおいてダブルバッファーモードに設定し、Ｈ≦Ｎにおいてシングルバッファーモードに設定できる。具体的には、Ｎ×Ｖ≦ｉ×２ｊを満たすことで、Ｈ≦Ｎのシングルバッファーモードにおいて、Ｈ×Ｖのストリーム画像データをｉ×２ｊのラインバッファー２００に記憶できる。
【００５４】
本実施形態では、前述の図４に示すモード制御部２４０がレジスターを含んでもよく、ホスト等からそのレジスターに画素数Ｈ、Ｖがレジスター値として設定されてもよい。そして、設定されたレジスター値Ｈ、Ｖに基づいて、閾値画素数Ｎを設定してもよい。
【００５５】
なお、本実施形態では、モード制御部２４０は、ストリーム画像データに基づいて画素数Ｈ、Ｖの情報を取得し、取得したＨ、Ｖに基づいてＮを設定してもよい。あるいは、モード制御部２４０には、ホスト等からＮが直接設定されてもよく、設計時等にあらかじめ所定のＮが設定されてもよい。
【００５６】
５．詳細な構成例
図１０に、本実施形態のバッファー制御回路の詳細な構成例を示す。このバッファー制御回路は、シーケンサー３００、書き込み制御回路３１０、読み出し制御回路３２０、アンパック回路３３０、第１〜第３のセレクターＭＵＸ１〜ＭＵＸ３、第１、第２のリードライト回路ＲＷ１、ＲＷ２を含む。なお、本実施形態のバッファー制御回路はこの構成に限定されず、その構成要素の一部を省略したり（例えば、シーケンサー、第１〜第３のセレクター）、他の構成要素を追加したりする等の種々の変形実施が可能である。
【００５７】
シーケンサー３００は、モード切り替えや、バッファー制御回路の各構成要素の制御を行うためのものである。具体的には、シーケンサー３００は、レジスター３０２、水平カウンター３０４、垂直カウンター３０６を含む。そして、シーケンサー３００は、レジスター３０２のレジスター値や、水平カウンター３０４と垂直カウンター３０６のカウント値に基づいて、モード切替信号ＭＯＤやバッファー切替信号ＷＢＳを出力したり、各構成要素の動作タイミングを制御したりする。
【００５８】
レジスター３０２には、ホスト等から、ストリーム画像データＳＤの画素数Ｈ、Ｖが設定される。水平カウンター３０４（画素数カウンター）は、ストリーム画像データＳＤの各ラインの画素数をカウントする。垂直カウンター３０６（ライン数カウンター）は、ストリーム画像データＳＤのライン数をカウントする。これらのカウンターは、例えばドットクロックＣＬＫに基づいてカウントを行う。また、ストリーム画像データＳＤのイネーブル信号ＤＡＴＡＥＮがアクティブ（第１の論理レベル）の期間（ＳＤ受信状態）にカウントを行う。
【００５９】
書き込み制御回路３１０は、ラインバッファー２００への書き込み処理を制御する。具体的には、書き込み制御回路３１０は、書き込みアドレスＷＡＤを出力するアドレス生成回路３１２を含む。また、書き込み制御回路３１０は、セレクト信号ＳＥＬ１、ＳＥＬ２、書き込みリクエスト信号ＷＲＱ１、ＷＲＱ２を出力する。
【００６０】
読み出し制御回路３２０は、ラインバッファー２００からの読み出し処理を制御する。具体的には、読み出し制御回路３２０は、読み出しアドレスＲＡＤを出力するアドレス生成回路３２２を含む。また、読み出し制御回路３２０は、セレクト信号ＳＥＬ３、読み出しリクエスト信号ＲＲＱ１、ＲＲＱ２を出力する。
【００６１】
セレクターＭＵＸ１は、ＳＥＬ１を受けて、アドレスＷＡＤ、ＲＡＤのいずれかを選択し、選択したアドレスをＡＤ１として出力する。セレクターＭＵＸ２は、ＳＥＬ２を受けて、アドレスＷＡＤ、ＲＡＤのいずれかを選択し、選択したアドレスをＡＤ２として出力する。
【００６２】
アンパック回路３３０は、ストリーム画像データＳＤを、ラインバッファー２００の各アドレスに対応するデータにアンパック（分割）し、アンパックしたデータをライトデータＷＤとして出力する。例えば、各アドレスのデータ長が１６ビットであり、各画素のデータ長が１ビットである場合、ストリーム画像データＳＤを１６画素のデータ毎にアンパックする。
【００６３】
リードライト回路ＲＷ１、ＲＷ２は、バッファー領域ＲＡ１、ＲＡ２に対する書き込みと、ＲＡ１、ＲＡ２からの読み出しを行う。ＲＷ１は、書き込みリクエスト信号ＷＲＱ１がアクティブのとき、アドレスＡＤ１にデータＷＤを書き込む。またＲＷ１は、読み出しリクエスト信号ＲＲＱ１がアクティブのとき、アドレスＡＤ１からデータＲＤ１を読み出す。ＲＷ２は、書き込みリクエスト信号ＷＲＱ２がアクティブのとき、アドレスＡＤ２にデータＷＤを書き込む。またＲＷ２は、読み出しリクエスト信号ＲＲＱ２がアクティブのとき、アドレスＡＤ２からデータＲＤ２を読み出す。
【００６４】
セレクターＭＵＸ３は、ＳＥＬ３を受けて、データＲＤ１、ＲＤ２のいずれかを選択し、選択したデータをリードデータＲＤとして出力する。
【００６５】
なお、モード制御部の機能は、例えば、シーケンサー３００が信号ＷＢＳやＭＯＤを出力することで実現される。書き込み回路の機能は、例えば、書き込み制御回路３１０がアドレスＷＡＤ、信号ＷＲＱ１、ＷＲＱ２を出力し、セレクターＭＵＸ１、ＭＵＸ２がアドレスＷＡＤを選択し、リードライト回路ＲＷ１、ＲＷ２がアドレスＷＡＤにデータＷＤを書き込むことで実現される。読み出し回路の機能は、例えば、読み出し制御回路３２０がアドレスＲＡＤ、信号ＷＲＱ１、ＷＲＱ２を出力し、セレクターＭＵＸ１、ＭＵＸ２がアドレスＲＡＤを選択し、リードライト回路ＲＷ１、ＲＷ２がアドレスＲＡＤからデータＲＤ１、ＲＤ２を読み出すことで実現される。
【００６６】
図１１に、詳細な構成例のバッファー制御回路の動作例を示す。図１１に示すように、ダブルバッファーモード（第１のモード）では、ＭＯＤ＝０が出力され、ＷＢＳ＝０または１が出力される。ＷＢＳ＝０の場合、ＡＤ１＝ＷＡＤ、ＡＤ２＝ＲＡＤ、ＲＤ＝ＲＤ２が選択される。そして、ＷＲＱ１＝ＲＲＱ２＝１、ＷＲＱ２＝ＲＲＱ１＝０が出力され、バッファー領域ＢＡ１に書き込みが行われ、バッファー領域ＢＡ２から読み出しが行われる。一方、ＷＳＢ＝１の場合、ＡＤ１＝ＲＡＤ、ＡＤ２＝ＷＡＤ、ＲＤ＝ＲＤ１が選択される。そして、ＷＲＱ１＝ＲＲＱ２＝０、ＷＲＱ２＝ＲＲＱ１＝１が出力され、バッファー領域ＢＡ１から読み出しが行われ、バッファー領域ＢＡ１に書き込みが行われる。
【００６７】
シングルバッファーモード（第２のモード）では、ＭＯＤ＝０が出力され、ＷＢＳ＝０が出力される。書き込み時には、ＡＤ１＝ＡＤ２＝ＷＡＤが選択される。そして、ＷＲＱ１＝ＷＲＱ２＝１、ＲＲＱ１＝ＲＲＱ２＝０が出力され、バッファー領域ＢＡ１とＢＡ２に書き込みが行われる。一方、読み出し時には、ＡＤ１＝ＡＤ２＝ＲＡＤが選択され、ＲＤとしてＲＤ１またはＲＤ２が選択される。そして、ＷＲＱ１＝ＷＲＱ２＝０、ＲＲＱ１＝ＲＲＱ２＝１が出力され、バッファー領域ＢＡ１とＢＡ２から読み出しが行われる。
【００６８】
図１２に、ダブルバッファーモードにおけるタイミングチャート例を示す。図１２では、Ｎ＝６４、Ｈ＝１００（＞Ｎ）、１ｂｐｐ（ビットパーピクセル）、１アドレス＝１６ビットである場合を例に説明する。
【００６９】
図１２のＡ１に示すように、垂直カウンター（Ｖカウンター）のカウント値ＶＣは、ストリーム画像データの走査線のライン数に従ってカウントアップする。また、水平カウンター（Ｈカウンター）のカウント値ＨＣは、各ラインにおける画素数に従ってカウントアップする。Ａ２に示すように、ＶＣ＝０〜３１ではバッファー選択信号ＷＢＳ＝０が出力され、バッファー領域ＢＡ１のアドレス０〜８１９１への書き込みが選択される。例えば、Ａ３に示すように、ＨＣ＝９６〜１０７（図１２では、９６等と省略して記載）に対応する画素のデータは、Ａ４に示すように、ＢＡ１のアドレス５に書き込まれる。なお、Ｈ＝１００であるため、ＨＣ＝１００〜１０７に対応する画素のデータとして例えば０（ゼロ）が書き込まれる。
【００７０】
Ａ５に示すように、ＶＣ＝３２〜６４ではＷＢＳ＝１が出力され、バッファー領域ＢＡ２のアドレス８１９２〜１６３８３への書き込みが選択される。また、Ａ６に示すように、読み出しリクエスト信号ＲＲＱ＝１が出力され、ＢＡ１のアドレス０〜８１９１のデータが順次バースト転送される。
【００７１】
図１３に、シングルバッファーモードにおけるタイミングチャート例を示す。図１３では、Ｎ＝６４、Ｈ＝３２（≦Ｎ）、Ｖ＝１００、１ｂｐｐ（ビットパーピクセル）、１アドレス＝１６ビットである場合を例に説明する。
【００７２】
図１３のＢ１に示すように、ＷＢＳ＝０が出力され、ラインバッファーのアドレス０〜１６３８３への書き込みが行われる。具体的には、Ｂ２に示すように、ＶＣ＝０〜９９の１画面（１フレーム）のストリーム画像データが、シングルバッファーに設定されたラインバッファーのアドレス０〜２９９に書き込まれる。そして、Ｂ３に示すように、ＲＲＱ＝１が出力され、シングルバッファーのアドレス０〜１６３８３のデータが順次バースト転送される。
【００７３】
なお、次の画面のストリーム画像データは、バースト転送が終了した後に受信する。例えば、ホストＩ／Ｆ回路が、バースト転送中にホストに対してビジー信号を出力し、バースト転送終了後にホストに対してストリーム画像データの転送開始を催促するポーリング信号を出力する。そして、ホストがポーリング信号を受けて、ストリーム画像データの転送を開始する。
【００７４】
６．電子機器
図１４に、本実施形態の表示コントローラーを含む電子機器の構成例を示す。この電子機器は、ホスト１０、表示コントローラー１００、電気光学装置３０、記憶部６０、操作部７０、通信部８０を含む。なお、本実施形態はこの構成例に限定されず、その構成要素の一部を省略したり（例えば、通信部）、他の構成要素を追加したりする等の種々の変形実施が可能である。
【００７５】
本実施形態の電子機器として、例えば、携帯電話端末、携帯情報端末、電子ブック端末、携帯ゲーム端末、デジタルフォトフレーム等への適用が想定できる。
【００７６】
ホスト１０は、例えばＣＰＵで実現され、表示コントローラー１００にストリーム画像データを供給したり、各構成要素の制御を行う。表示コントローラー１００は、例えばＡＳＩＣで実現され、電気光学装置３０に表示データを供給したり、電気光学装置３０の表示制御を行う。電気光学装置３０は、ドライバー３２、電気光学パネル３４を含む。ドライバー３２は、データ電圧や走査信号を出力して電気光学パネル３４を駆動する。電気光学パネル３４は、例えば液晶パネルや電気泳動パネル（ＥＰＤ：Electrophoretic Display）で実現される。記憶部６０は、例えば、ＲＯＭ、ＲＡＭ等のメモリーや、ハードディスクドライブにより実現され、ホスト用のプログラムを記憶したり、ホストのワーキングメモリとして機能したり、ビデオメモリーとして機能したりする。操作部７０は、例えば各種ボタン、タッチパネルにより構成され、操作情報が入力される。通信部８０は、無線通信や有線通信により、画像データや動画データを取得する。
【００７７】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義又は同義な異なる用語（水平方向、第１のモード、第２のモード等）と共に記載された用語（走査方向、ダブルバッファーモード、シングルバッファーモード等）は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。またバッファー制御回路、表示コントローラー、電子機器等の構成、動作も本実施形態で説明したものに限定に限定されず、種々の変形実施が可能である。
【符号の説明】
【００７８】
１０  ホスト、２０  画像メモリー、３０  電気光学装置、３２  ドライバー、
３４  電気光学パネル、６０  記憶部、７０  操作部、８０  通信部、
１００  表示コントローラー、１１０  ホストインターフェース回路、
１３０  バスコントローラー、１４０  メモリーコントローラー、
１５０  表示制御部、２００  ラインバッファー、２１０  バッファー制御回路、
２２０  書き込み回路、２３０  読み出し回路、２４０  モード制御部、
３００  シーケンサー、３０２  レジスター、３０４  水平カウンター、
３０６  垂直カウンター、３１０  書き込み制御回路、３１２  アドレス生成回路、
３２０  読み出し制御回路、３２２  アドレス生成回路、３３０  アンパック回路、
ＢＡ１  第１のバッファー領域、ＢＡ２  第２のバッファー領域、
Ｈ  ストリーム画像データの水平方向の画素数、
Ｖ  ストリーム画像データの垂直方向の画素数、Ｎ  閾値画素数、
ＭＵＸ１〜ＭＵＸ３  第１〜第３のセレクター
【図１】
2011039302.tif 000003
【図２】
2011039302.tif 000004
【図３】
2011039302.tif 000005
【図４】
2011039302.tif 000006
【図５】
2011039302.tif 000007
【図６】
2011039302.tif 000008
【図７】
2011039302.tif 000009
【図８】
2011039302.tif 000010
【図９】
2011039302.tif 000011
【図１０】
2011039302.tif 000012
【図１１】
2011039302.tif 000013
【図１２】
2011039302.tif 000014
【図１３】
2011039302.tif 000015
【図１４】
2011039302.tif 000016