(57)【要約】【課題】  回路規模を縮小して低コスト化を図るメモリコントローラ、画像処理コントローラ及び電子機器を提供する。【解決手段】  メモリコントローラ２００は、表示領域内に矩形領域を指定するための矩形領域指定レジスタ２１０と、矩形領域内の各画素の位置に対応するメモリのアドレスを生成するアドレス生成回路２２０と、指定画素データが指定される色指定レジスタ２３０と、ビットブロック転送制御レジスタ２４０とを含む。ビットブロック転送がイネーブルのとき、ビットブロック転送用の矩形領域に対応してアドレス生成回路２２０が生成したアドレスに基づきメモリに指定画素データを書き込む。ビットブロック転送がディセーブルに設定されたとき、入力画素データ転送用の矩形領域に対応してアドレス生成回路２２０が生成したアドレスに基づきメモリに入力画素データを書き込む制御を行う。【選択図】      図５
2006277521.tif 000002
【特許請求の範囲】
【請求項１】
メモリに画素データを書き込むためのメモリコントローラであって、
表示装置の表示領域内に矩形領域を指定するための設定データが設定される矩形領域指定レジスタと、
前記矩形領域内の各画素の位置に対応する前記メモリの記憶位置を特定するアドレスを、前記矩形領域指定レジスタの設定データに基づいて生成するアドレス生成回路と、
ビットブロック転送される画素データが指定画素データとして指定される画素データ指定レジスタと、
ビットブロック転送をイネーブル制御するためのビットブロック転送制御レジスタとを含み、
前記ビットブロック転送制御レジスタによりビットブロック転送がイネーブルに設定されたとき、
ビットブロック転送用の矩形領域に対応して前記アドレス生成回路により生成されたアドレスに基づいて、前記矩形領域内の各画素の位置に対応する前記メモリの記憶位置のすべてに、前記指定画素データを書き込む制御を行い、
前記ビットブロック転送制御レジスタによりビットブロック転送がディセーブルに設定されたとき、
入力画素データ転送用の矩形領域に対応して前記アドレス生成回路により生成されたアドレスに基づいて、前記矩形領域内の各画素の位置に対応する前記メモリの記憶位置に、所与の入力画像の各画素データを書き込む制御を行うことを特徴とするメモリコントローラ。
【請求項２】
請求項１において、
前記指定画素データに基づいて、複数のビットブロック転送パターンを生成するビットブロック転送パターン生成回路を含み、
前記ビットブロック転送制御レジスタによりビットブロック転送がイネーブルに設定されたとき、
前記矩形領域内の各画素の位置、又は前記アドレス生成回路により生成されたアドレスに基づいて、前記複数のビットブロック転送パターンのうち１つのビットブロック転送パターンを選択し、選択されたビットブロック転送パターンを用いて前記メモリの記憶位置に書き込む制御を行うことを特徴とするメモリコントローラ。
【請求項３】
請求項２において、
画素データのフォーマットを指定するためのフォーマット指定レジスタを含み、
前記ビットブロック転送パターン生成回路が、
１画素当たり前記フォーマットに対応したビット数の前記指定画素データを用いて、各ビットブロック転送パターンが前記メモリに書き込まれるデータのバス幅のビット数の前記複数のビットブロック転送パターンを生成することを特徴とするメモリコントローラ。
【請求項４】
請求項２又は３において、
前記指定画素データのビット数をｓ（ｓは２以上の整数）、前記メモリに書き込まれるデータのバス幅のビット数をｍ（ｍ＞ｓ、ｍは整数）、ｓとｍの最小公倍数をＭ（Ｍは整数）とした場合に、
前記ビットブロック転送パターン生成回路が、
Ｍビットのデータを保持するバッファを含み、
Ｍ／ｓ個の前記指定画素データが書き込まれた前記バッファの保持データから、ビットの並び順にｍビット単位に分割することで、各ビットブロック転送パターンがｍビットのＭ／ｍ個のビットブロック転送パターンを生成することを特徴とするメモリコントローラ。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記矩形領域指定レジスタが、
前記表示領域の水平方向の前記矩形領域の開始位置が設定される水平方向開始位置設定レジスタと、
前記表示領域の垂直方向の前記矩形領域の開始位置が設定される垂直方向開始位置設定レジスタと、
前記表示領域の水平方向の前記矩形領域の終了位置が設定される水平方向終了位置設定レジスタと、
前記表示領域の垂直方向の前記矩形領域の終了位置が設定される垂直方向終了位置設定レジスタと、
前記表示領域の水平方向のサイズが設定される水平方向サイズ設定レジスタと、
前記表示領域の垂直方向のサイズが設定される垂直方向サイズ設定レジスタとを含み、
前記アドレス生成回路が、
前記水平方向開始位置設定レジスタ、前記垂直方向開始位置設定レジスタ、前記水平方向終了位置設定レジスタ、前記垂直方向終了位置設定レジスタ、前記水平方向サイズ設定レジスタ、及び前記垂直方向サイズ設定レジスタの設定データに基づいて、前記矩形領域内の各画素の位置に対応する前記メモリのアドレスを生成することを特徴とするメモリコントローラ。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記メモリの記憶領域は、
ビットブロック転送データ記憶領域と入力画素データ記憶領域とを含み、
前記指定画素データを、前記ビットブロック転送データ記憶領域内で前記矩形領域内の各画素の位置に対応する記憶位置すべてに書き込む制御を行い、
前記入力画像の各画素データを、前記入力画素データ記憶領域内で前記矩形領域内の各画素の位置に対応する記憶位置に書き込む制御を行うことを特徴とするメモリコントローラ。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記ビットブロック転送制御レジスタの設定内容をモニタするためのステータスレジスタを含むことを特徴とするメモリコントローラ。
【請求項８】
入力画素データが入力される画素データ入力インタフェースと、
請求項１乃至７のいずれか記載のメモリコントローラと、
前記メモリコントローラによって書き込み制御されるメモリと、
前記メモリから読み出された画素データを出力するための画素データ出力インタフェースとを含むことを特徴とする画像処理コントローラ。
【請求項９】
表示装置と、
請求項８記載の画像処理コントローラと、
前記画像処理コントローラによって供給される画素データに基づいて前記表示装置を駆動する表示ドライバとを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリコントローラ、画像処理コントローラ及び電子機器に関する。
【背景技術】
【０００２】
従来より、表示システムの制御を司るホストの処理負荷を軽減するために、液晶表示（Liquid Crystal Display：以下、ＬＣＤと略す）パネルやＣＲＴ等の表示装置の画面に表示させる画像の加工等の画像処理をホストに代行する画像処理コントローラがある。画像処理コントローラは、表示メモリ（広義にはメモリ）を用いて画像処理を行う。
【０００３】
表示メモリには、表示装置の表示領域内の各画素の位置に対応した記憶位置に、該各画素の画素データが記憶される。そのため、表示装置に表示させるための画像のデータを生成する場合、画像処理コントローラは、この画像の各画素の画素データを、該各画素の位置に対応した表示メモリの記憶位置に格納していく。
【０００４】
例えば、特許文献１には、このような画像処理コントローラとして機能するビデオ表示コントローラが開示されている。このビデオ表示コントローラでは、ＶＧＡコアが表示装置に表示させるための画像のデータを生成する。そして、ビデオ表示コントローラでは、ＶＧＡコアに接続されたビットブロック転送エンジンが、ＶＧＡコアとＤＲＡＭのアクセス制御を行うＤＲＡＭコントローラとの間で、表示される画像のデータのビットのブロック転送を行う。
【特許文献１】特開平１０−４９１２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、ホスト等からの入力画像のデータに基づいて表示装置の表示領域内の所定の矩形領域内に該入力画像を表示させる場合、画像処理コントローラは、該矩形領域内の各画素の位置に対応した表示メモリの記憶位置に、該入力画像の各画素のデータを書き込む必要がある。
【０００６】
その一方で、表示領域内の矩形領域内を、背景色で塗りつぶされた背景画像を表示させる場合には、画像処理コントローラは、該矩形領域内の各画素の位置に対応した表示メモリの記憶位置に、背景画像の各画素のデータを書き込む必要がある。この背景画像の画素データの書き込みは、ビットブロック転送動作のソリッドフィル（Solid Fill）と呼ばれる機能で実現される。
【０００７】
しかしながら、従来の画像処理コントローラでは、矩形領域内の画像の画素データの書き込みという同じ機能であるにもかかわらず、入力画像の画素データの表示メモリへの書き込むための回路とソリッドフィル機能を実現する回路とが別個に設けられていた。そのため、表示メモリの書き込み制御を行うメモリコントローラの回路規模が大きくなって画像処理コントローラのコスト高を招いていた。
【０００８】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、回路規模を縮小して低コスト化を図るメモリコントローラ、画像処理コントローラ及び電子機器を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために本発明は、
メモリに画素データを書き込むためのメモリコントローラであって、
表示装置の表示領域内に矩形領域を指定するための設定データが設定される矩形領域指定レジスタと、
前記矩形領域内の各画素の位置に対応する前記メモリの記憶位置を特定するアドレスを、前記矩形領域指定レジスタの設定データに基づいて生成するアドレス生成回路と、
ビットブロック転送される画素データが指定画素データとして指定される画素データ指定レジスタと、
ビットブロック転送をイネーブル制御するためのビットブロック転送制御レジスタとを含み、
前記ビットブロック転送制御レジスタによりビットブロック転送がイネーブルに設定されたとき、
ビットブロック転送用の矩形領域に対応して前記アドレス生成回路により生成されたアドレスに基づいて、前記矩形領域内の各画素の位置に対応する前記メモリの記憶位置のすべてに、前記指定画素データを書き込む制御を行い、
前記ビットブロック転送制御レジスタによりビットブロック転送がディセーブルに設定されたとき、
入力画素データ転送用の矩形領域に対応して前記アドレス生成回路により生成されたアドレスに基づいて、前記矩形領域内の各画素の位置に対応する前記メモリの記憶位置に、所与の入力画像の各画素データを書き込む制御を行うメモリコントローラに関係する。
【００１０】
本発明においては、表示装置の表示領域内に設定される矩形領域内の各画素の位置に対応したメモリの記憶位置に、入力画素データ、又は画素データ指定レジスタによって指定された指定画素データのいずれかが書き込まれる。このとき、指定画素データの書き込みについては、いわゆるソリッドフィル機能により実現できる。
【００１１】
本発明によれば、入力画素データ及びビットブロック転送用の指定画素データを書き込む際に、矩形領域指定レジスタによってそれぞれ別個に設定された矩形領域に対応したメモリのアドレスをアドレス生成回路により生成し、該アドレスに基づいてそれぞれの画素データを書き込むことができる。従って、入力画素データ及びビットブロック転送用の指定画素データを書き込む際に、アドレス生成回路及び矩形領域指定レジスタを共用化でき、メモリコントローラの回路規模を縮小できるようになる。
【００１２】
また本発明に係るメモリコントローラでは、
前記指定画素データに基づいて、複数のビットブロック転送パターンを生成するビットブロック転送パターン生成回路を含み、
前記ビットブロック転送制御レジスタによりビットブロック転送がイネーブルに設定されたとき、
前記矩形領域内の各画素の位置、又は前記アドレス生成回路により生成されたアドレスに基づいて、前記複数のビットブロック転送パターンのうち１つのビットブロック転送パターンを選択し、選択されたビットブロック転送パターンを用いて前記メモリの記憶位置に書き込む制御を行うことができる。
【００１３】
本発明においては、画素データ指定レジスタによって指定された指定画素データを用いてビットブロック転送パターンが生成される。そして、ビットブロック転送を行う際に、画素データ指定レジスタによって指定された指定画素データを、その都度メモリに書き込むことなく、ビットブロック転送パターンをメモリに書き込む。そのため、メモリコントローラがメモリにアクセスする回数を低減できる。この結果、ビットブロック転送の高速化と転送に伴う消費電力の低減とを図ることができる。
【００１４】
また本発明に係るメモリコントローラでは、
画素データのフォーマットを指定するためのフォーマット指定レジスタを含み、
前記ビットブロック転送パターン生成回路が、
１画素当たり前記フォーマットに対応したビット数の前記指定画素データを用いて、各ビットブロック転送パターンが前記メモリに書き込まれるデータのバス幅のビット数の前記複数のビットブロック転送パターンを生成することができる。
【００１５】
また本発明に係るメモリコントローラでは、
前記指定画素データのビット数をｓ（ｓは２以上の整数）、前記メモリに書き込まれるデータのバス幅のビット数をｍ（ｍ＞ｓ、ｍは整数）、ｓとｍの最小公倍数をＭ（Ｍは整数）とした場合に、
前記ビットブロック転送パターン生成回路が、
Ｍビットのデータを保持するバッファを含み、
Ｍ／ｓ個の前記指定画素データが書き込まれた前記バッファの保持データから、ビットの並び順にｍビット単位に分割することで、各ビットブロック転送パターンがｍビットのＭ／ｍ個のビットブロック転送パターンを生成することができる。
【００１６】
上記のいずれかの発明によれば、複数のビットブロック転送パターンの中から１つを選択してメモリに書き込むことができ、ビットブロック転送の高速化と転送に伴う消費電力の低減とを図ることができる。
【００１７】
例えば、メモリのデータのバス幅が指定画素データのビット数で割り切れない（余りが０ではない）場合、メモリへの余分なアクセスを増加させてしまう。これに対して本発明によれば、１アドレス当たりメモリに書き込まれるデータのビットの区切りや指定画素データのビットの区切りを考慮することなく、メモリのデータのバス幅単位で指定画素データをメモリに書き込むことができるようになる。これにより、ビットのアライン制御等の余分な制御を不要とし、且つメモリへの余分なアクセスを無くすことができる。
【００１８】
また本発明に係るメモリコントローラでは、
前記矩形領域指定レジスタが、
前記表示領域の水平方向の前記矩形領域の開始位置が設定される水平方向開始位置設定レジスタと、
前記表示領域の垂直方向の前記矩形領域の開始位置が設定される垂直方向開始位置設定レジスタと、
前記表示領域の水平方向の前記矩形領域の終了位置が設定される水平方向終了位置設定レジスタと、
前記表示領域の垂直方向の前記矩形領域の終了位置が設定される垂直方向終了位置設定レジスタと、
前記表示領域の水平方向のサイズが設定される水平方向サイズ設定レジスタと、
前記表示領域の垂直方向のサイズが設定される垂直方向サイズ設定レジスタとを含み、
前記アドレス生成回路が、
前記水平方向開始位置設定レジスタ、前記垂直方向開始位置設定レジスタ、前記水平方向終了位置設定レジスタ、前記垂直方向終了位置設定レジスタ、前記水平方向サイズ設定レジスタ、及び前記垂直方向サイズ設定レジスタの設定データに基づいて、前記矩形領域内の各画素の位置に対応する前記メモリのアドレスを生成することができる。
【００１９】
本発明によれば、指定した矩形領域に応じて簡素な構成でアドレスを生成することができる。
【００２０】
また本発明に係るメモリコントローラでは、
前記メモリの記憶領域は、
ビットブロック転送データ記憶領域と入力画素データ記憶領域とを含み、
前記指定画素データを、前記ビットブロック転送データ記憶領域内で前記矩形領域内の各画素の位置に対応する記憶位置すべてに書き込む制御を行い、
前記入力画像の各画素データを、前記入力画素データ記憶領域内で前記矩形領域内の各画素の位置に対応する記憶位置に書き込む制御を行うことができる。
【００２１】
本発明によれば、メモリの記憶領域を、ビットブロック転送データ記憶領域と入力画素データ記憶領域とに区分するようにしたので、例えば重ね合わせ処理後の画像のデータをメモリに格納する必要がなくなり、必要なときのみ重ね合わせ処理を行えばよい構成を採用できる。その結果、メモリコントローラの回路規模をより小さくできる。
【００２２】
また本発明に係るメモリコントローラでは、
前記ビットブロック転送制御レジスタの設定内容をモニタするためのステータスレジスタを含むことができる。
【００２３】
本発明によれば、ステータスレジスタを参照することでビットブロック転送がイネーブルに設定されているか、ディセーブルに設定されているかを判別できるため、ビットブロック転送がイネーブルに設定されているときは、例えば入力画素データの供給を中断する等の画素データの供給制御を行い、入力画素データのあふれ等を防止するバッファの容量を削減できる。
【００２４】
また本発明は、
入力画素データが入力される画素データ入力インタフェースと、
上記のいずれか記載のメモリコントローラと、
前記メモリコントローラによって書き込み制御されるメモリと、
前記メモリから読み出された画素データを出力するための画素データ出力インタフェースとを含む画像処理コントローラに関係する。
【００２５】
本発明によれば、回路規模を縮小して低コスト化を図るメモリコントローラを含む画像処理コントローラを提供できる。
【００２６】
また本発明は、
表示装置と、
上記記載の画像処理コントローラと、
前記画像処理コントローラによって供給される画素データに基づいて前記表示装置を駆動する表示ドライバとを含む電子機器に関係する。
【００２７】
本発明によれば、回路規模を縮小して低コスト化を図る画像処理コントローラが適用された電子機器を提供できる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
【００２９】
１．  電子機器
図１に、本実施形態における画像処理コントローラとしての表示コントローラが適用された電子機器の構成例を示す。ここでは、電子機器として携帯電話機の構成例のブロック図を示すが、本実施形態における画像処理コントローラとしての表示コントローラが適用される電子機器が携帯電話機に限定されるものではない。
【００３０】
携帯電話機７００は、カメラモジュール７１０を含む。カメラモジュール７１０は、ＣＣＤ（Charge Coupled Device）センサ又はＣＭＯＳ（Complementary Metal-Oxide-Semiconductor）センサを含み、ＣＣＤセンサ又はＣＭＯＳセンサで撮像した画像の画素データを、表示コントローラ（広義には画像処理コントローラ）１００に供給する。
【００３１】
携帯電話機７００は、表示パネル（広義には電気光学装置、更に広義には表示装置）７２０を含む。表示パネル７２０として、ＬＣＤパネルを採用できる。この場合、表示パネル７２０は、表示ドライバ７３０によって駆動される。表示パネル７２０は、複数の走査線、複数のデータ線、複数の画素を含む。表示ドライバ７３０は、複数の走査線の１又は複数本単位で走査線を選択する走査ドライバの機能を有すると共に、画像の画素データに対応した電圧を複数のデータ線に供給するデータドライバの機能を有する。
【００３２】
表示コントローラ１００は、表示ドライバ７３０に接続され、表示ドライバ７３０に対してＲＧＢフォーマットの画素データを供給する。
【００３３】
ホスト１０は、表示コントローラ１００に接続される。ホスト１０は、表示コントローラ１００を制御する。またホスト１０は、アンテナ７４０を介して受信された、画像の画素データを含む受信データを、変復調部７５０で復調した後、表示コントローラ１００に供給できる。表示コントローラ１００は、この画素データに基づき、表示ドライバ７３０により表示パネル７２０に表示させる。
【００３４】
ホスト１０は、カメラモジュール７１０で生成された画像の画素データを変復調部７５０で変調した後、アンテナ７４０を介して他の通信装置への送信を指示できる。
【００３５】
ホスト１０は、操作入力部７６０からの操作情報に基づいて画像の画素データを含む通信データの送受信処理、カメラモジュール７１０の撮像、表示パネルの表示処理を行う。
【００３６】
なお、図１では、表示パネル７２０としてＬＣＤパネルを例に説明したが、これに限定されるものではない。表示パネル７２０は、エレクトロクミネッセンス、プラズマディスプレイ装置であってもよく、これらを駆動する表示ドライバに画素データを供給する表示コントローラであればよい。
【００３７】
２．  表示コントローラ
図２に、図１の表示コントローラ１００の構成例のブロック図を示す。
【００３８】
なお本実施形態における表示コントローラ１００は、図２のブロックのすべてを含む必要はなく、図２のブロックの少なくとも１つが省略された構成であってもよい。
【００３９】
表示コントローラ（画像処理コントローラ）１００は、画素データ入力インタフェース（InterFace：以下、Ｉ／Ｆと略す）としてのカメラＩ／Ｆ１１０、ホストＩ／Ｆ１２０、メモリコントローラ２００、表示メモリ（広義にはメモリ）１３０、重ね合わせ処理部１４０、画素データ出力Ｉ／ＦとしてのドライバＩ／Ｆ１５０を含む。従って、表示コントローラ１００は、画素データ入力Ｉ／Ｆ、メモリコントローラ、メモリ、画素データ出力Ｉ／Ｆを含むことができる。
【００４０】
カメラＩ／Ｆ１１０には、カメラモジュール７１０からの画素データが入力される。即ち、カメラＩ／Ｆ１１０には、カメラモジュール７１０の撮像素子の有効画素領域内の画素データが入力される。より具体的には、カメラＩ／Ｆ１１０は、該画素データのインタフェース処理（カメラモジュールとの間の受信処理や、信号のバッファリング）を行い、インタフェース処理後の画素データをメモリコントローラ２００に供給する。
【００４１】
ホストＩ／Ｆ１２０には、ホスト１０によって生成された画像の画素データや、ホスト１０からの表示コントローラ１００を制御するための制御データが入力される。このとき、ホストＩ／Ｆ１２０は、インタフェース処理（ホストとの間の受信処理や、信号のバッファリング）を行い、インタフェース処理後の画素データをメモリコントローラ２００に供給する。またホストＩ／Ｆ１２０には、メモリコントローラ２００によって表示メモリ１３０から読み出された画素データや、メモリコントローラ２００等に設定された制御データやステータスレジスタのデータが入力される。ホストＩ／Ｆ１２０は、インタフェース処理（ホストとの間の送信処理や、信号のバッファリング）を行い、インタフェース処理後の画素データをホスト１０に出力する。
【００４２】
メモリコントローラ２００は、表示メモリ１３０に画素データを書き込む制御を行うことができる。表示メモリ１３０に画素データを書き込む場合、メモリコントローラ２００は、表示パネル７２０の表示領域内の各画素の位置に対応した表示メモリ１３０の記憶位置に、該各画素の画素データを書き込む。また、メモリコントローラ２００は、表示メモリ１３０から画素データを読み出す制御を行うこともできる。
【００４３】
図３に、図２のメモリコントローラ２００及び表示メモリ１３０の説明図を示す。
【００４４】
表示パネル７２０の表示領域ＡＲ１の水平方向に画素Ｐ１、Ｐ２、Ｐ３、・・・が並び、表示領域ＡＲ１の表示画像の画素Ｐ１、Ｐ２、Ｐ３、・・・の順に画素データが表示メモリ１３０に格納される。
【００４５】
表示メモリ１３０には、表示領域ＡＲ１に表示させるための画像の画素データが格納されるメモリ空間が決められている。そして、このメモリ空間内に、画素Ｐ１、Ｐ２、Ｐ３、・・・の各画素データが順に格納される。表示メモリ１３０からは、所定のリフレッシュ周期で１画面分の画素データを予め決められた順序で読み出せばよい。
【００４６】
図２において、メモリコントローラ２００は、カメラＩ／Ｆ１１０又はホストＩ／Ｆ１２０から入力画像の画素データを、表示領域の矩形領域内の各画素の位置に対応した表示メモリ１３０の記憶位置に書き込むことができる。更にメモリコントローラ２００は、ソリッドフィル機能を有し、例えば背景画像の画素データといった１又は複数画素分の指定画素データで、表示領域の矩形領域内の各画素の位置に対応した表示メモリ１３０の記憶領域を埋めることができる。
【００４７】
このように表示メモリ１３０には、複数の画像の画素データを格納できる。そして、重ね合わせ処理部１４０が、表示メモリ１３０に格納された複数の画像の画素データを重ね合わせる処理を行う。例えば、背景画像と、カメラＩ／Ｆ１１０又はホストＩ／Ｆ１２０からの入力画像とを重ね合わせた画像の画素データを生成し、ドライバＩ／Ｆ１５０に出力できる。
【００４８】
図４に、図２の重ね合わせ処理部１４０の処理の説明図を示す。
【００４９】
表示メモリ１３０の記憶領域は、ビットブロック転送データ記憶領域ＢＲと入力画素データ記憶領域ＩＲとを含む。
【００５０】
ビットブロック転送データ記憶領域ＢＲには、表示領域ＡＲ１内の矩形領域ＳＲ１内を、１又は複数画素分の指定画素データで埋め尽くした背景画像の画素データが書き込まれる。メモリコントローラ２００は、ソリッドフィル機能により、背景画像の画素データを表示メモリ１３０のビットブロック転送データ記憶領域ＢＲに書き込む。
【００５１】
入力画素データ記憶領域ＩＲには、表示領域ＡＲ１内の矩形領域ＳＲ２内に、カメラモジュール又はホストからの入力画像の画素データが書き込まれる。メモリコントローラ２００は、背景画像の画素データの書き込み前又は書き込み後に、入力画像の画素データを表示メモリ１３０の入力画素データ記憶領域ＩＲに書き込む。
【００５２】
その後、重ね合わせ処理部１４０が、表示メモリ１３０のビットブロック転送データ記憶領域ＢＲからの画素データと、入力画素データ記憶領域ＩＲからの画素データとを読み出して重ね合わせ処理する。
【００５３】
このように、ビットブロック転送データ記憶領域ＢＲと入力画素データ記憶領域ＩＲとを区分し、表示メモリ１３０からの画素データの読み出し後に重ね合わせ処理を行うことで、重ね合わせ処理後の画像のデータを表示メモリ１３０に格納する必要がなくなる。そして、必要なときのみ重ね合わせ処理を行って、処理後の画像のデータを出力すればよい。
【００５４】
図２において、ドライバＩ／Ｆ１５０は、重ね合わせ処理部１４０から出力された画素データを表示ドライバ７３０に出力する。ドライバＩ／Ｆ１５０は、画素データのインタフェース処理（表示ドライバとの間の送信処理や、信号のバッファリング）を行い、インタフェース処理後の画素データを表示ドライバ７３０に出力する。
【００５５】
３．  メモリコントローラ
図５に、図２のメモリコントローラ２００の構成例のブロック図を示す。
【００５６】
このメモリコントローラ２００は、矩形領域指定レジスタ２１０、アドレス生成回路２２０、色指定レジスタ（画素データ指定レジスタ）２３０、ビットブロック転送制御レジスタ２４０を含む。
【００５７】
矩形領域指定レジスタ２１０には、ＬＣＤパネル（広義には表示装置）の表示領域内に矩形領域を指定するための設定データが設定される。この設定データは、ホスト１０がホストＩ／Ｆ１２０を介して設定する。
【００５８】
図６に、図５の矩形領域指定レジスタ２１０の構成の概要を示す。
【００５９】
図７に、図６の矩形領域指定レジスタ２１０の設定データの説明図を示す。
【００６０】
図６に示すように矩形領域指定レジスタ２１０は、Ｘ方向開始位置設定レジスタ（水平方向開始位置設定レジスタ）２１１、Ｙ方向開始位置設定レジスタ（垂直方向開始位置設定レジスタ）２１２、Ｘ方向終了位置設定レジスタ（水平方向終了位置設定レジスタ）２１３、Ｙ方向終了位置設定レジスタ（垂直方向終了位置設定レジスタ）２１４、Ｘ方向サイズ設定レジスタ（水平方向サイズ設定レジスタ）２１５、Ｙ方向サイズ設定レジスタ（垂直方向サイズ設定レジスタ）２１６を含む。
【００６１】
図７では、表示領域ＡＲ１内に指定される矩形領域ＳＲを示している。表示領域の画像の水平方向をＸ方向、該画像の垂直方向をＹ方向とし、表示領域の左上角の画素の位置を原点（０，０）としている。矩形領域ＳＲは、矩形領域ＳＲの左上の画素の位置（Ｘｓｔａｒｔ，Ｙｓｔａｒｔ）と、矩形領域ＳＲの右下の画素の位置（Ｘｅｎｄ，Ｙｅｎｄ）により定義される。Ｘ方向開始位置設定レジスタ２１１には、Ｘｓｔａｒｔが設定される。Ｙ方向開始位置設定レジスタ２１２には、Ｙｓｔａｒｔが設定される。Ｘ方向終了位置設定レジスタ２１３には、Ｘｅｎｄが設定される。Ｙ方向終了位置設定レジスタ２１４には、Ｙｅｎｄが設定される。
【００６２】
その他にＸ方向サイズ設定レジスタ２１５にはＸｓｉｚｅ、Ｙ方向サイズ設定レジスタ２１６にはＹｓｉｚｅが設定され、矩形領域内の画素データを表示メモリ１３０の記憶位置を特定するアドレスのオフセット値の計算に用いられる。
【００６３】
図７に示す矩形領域指定レジスタ２１０の各レジスタの設定データは、ホストＩ／Ｆ１２０を介してホスト１０により設定される。
【００６４】
図５に戻って説明を続ける。アドレス生成回路２２０は、矩形領域内の各画素の位置に対応する表示メモリ１３０の記憶位置を特定する書き込みアドレスを、矩形領域指定レジスタ２１０の設定データに基づいて生成する。なおアドレス生成回路２２０は、表示メモリ１３０の読み出しアドレスも生成することができる。
【００６５】
図８に、図５のアドレス生成回路２２０の構成例のブロック図を示す。
【００６６】
アドレス生成回路２２０は、表示領域内の位置（画素位置）に対応した表示メモリ１３０の（書き込み）アドレスを生成することができる。そのためアドレス生成回路２２０は、メモリアドレス生成回路２２１を含む。メモリアドレス生成回路２２１は、表示領域のサイズ、矩形領域及び画素の位置に基づいて表示メモリ１３０のアドレスを生成する。画素位置は、Ｘ方向画素位置及びＹ方向画素位置により特定される。
【００６７】
Ｘ方向画素位置は、ピクセルクロックに同期して画素位置をカウントアップしていくピクセルカウンタ２２２により生成される。ピクセルクロックは、各画素の画素データに同期して変化するクロックである。ピクセルカウンタ２２２は、初期状態ではＸ方向開始位置Ｘｓｔａｒｔを、ピクセルクロックに同期してカウンタアップし、その後、ピクセルカウンタ２２２の出力をカウントアップしていく。そして、コンパレータ２２３によって、画素位置がＸ方向終了位置Ｘｅｎｄに達したことが検出されたとき、その旨をメモリアドレス生成回路２２１に通知する。
【００６８】
Ｙ方向画素位置もまた、ラインクロックに同期して画素位置をカウントアップしていくラインカウンタ２２４により生成される。ラインクロックは、画像の１水平ラインを規定するクロックである。ラインカウンタ２２４は、初期状態ではＹ方向開始位置Ｙｓｔａｒｔを、ラインクロックに同期してカウンタアップし、その後、ラインカウンタ２２４の出力をカウントアップしていく。そして、コンパレータ２２５によって、画素位置がＹ方向終了位置Ｙｅｎｄに達したことが検出されたとき、その旨をメモリアドレス生成回路２２１に通知する。
【００６９】
更にアドレス生成回路２２０は、オフセットアドレス生成回路２２６を含む。オフセットアドレス生成回路２２６は、表示領域内に設定された矩形領域の画素位置に対応した表示メモリ１３０のアドレスを生成するためのオフセット値としてのオフセットアドレスを生成する。
【００７０】
図９に、本実施形態におけるオフセットアドレスの説明図を示す。
【００７１】
例えば図９に示すように、表示領域ＡＲ１内に矩形領域ＳＲが設定されているものとする。そして、矩形領域ＳＲ内のあるラインの画素位置Ｐ１１、Ｐ１２、・・・、Ｐ１（Ｎ−１）、Ｐ１Ｎのそれぞれに対応する表示メモリ１３０のアドレスを求めた後、次のラインの画素位置Ｐ２１を求めるものとする。このとき、画素位置Ｐ１Ｎ、Ｐ２１の表示メモリ１３０の書き込みアドレスは連続しない。
【００７２】
従って画素位置Ｐ１Ｎに対応するアドレスから、画素位置Ｐ２１に対応するアドレスを求めるために、表示領域ＡＲ１のサイズ及び矩形領域ＳＲの位置に対応した加算値を画素位置Ｐ１Ｎに対応するアドレスに加算すればよい。この加算値が、オフセットアドレスに相当する。
【００７３】
オフセットアドレス生成回路２２６は、Ｘ方向開始位置Ｘｓｔａｒｔ、Ｘ方向終了位置Ｘｅｎｄ、Ｘ方向サイズＸｓｉｚｅ、Ｙ方向開始位置Ｙｓｔａｒｔ、Ｙ方向終了位置Ｙｅｎｄ及びＹ方向サイズＹｓｉｚｅに基づいてオフセットアドレスを生成する。このオフセットアドレスは、メモリアドレス生成回路２２１に供給される。
【００７４】
メモリアドレス生成回路２２１は、コンパレータ２２３、２２５によって矩形領域ＳＲの領域に達したことが通知されたことを条件に、オフセットアドレスを用いて表示メモリ１３０のアドレスを生成する。
【００７５】
以上のように、アドレス生成回路２２０は、Ｘ方向開始位置設定レジスタ２１１、Ｙ方向開始位置設定レジスタ２１２、Ｘ方向終了位置設定レジスタ２１３、Ｙ方向終了位置設定レジスタ２１４、Ｘ方向サイズ設定レジスタ２１５、及びＹ方向サイズ設定レジスタ２１６の設定データに基づいて、表示メモリ１３０のアドレス生成することができる。
【００７６】
なお本実施形態では、図８に示すアドレス生成回路２２０の構成に限定されるものではない。図８では、表示メモリ１３０の書き込みアドレスを生成する構成について説明したが、表示メモリ１３０の読み出しアドレスもまた同様に生成することができる。
【００７７】
図５に戻って説明を続ける。
【００７８】
図５において、色指定レジスタ（画素データ指定レジスタ）２３０には、ビットブロック転送される１又は複数画素分の画素データが指定画素データとして指定される。この指定画素データは、ホスト１０がホストＩ／Ｆ１２０を介して設定する。
【００７９】
ビットブロック転送制御レジスタ２４０には、ビットブロック転送をイネーブル制御するためのレジスタである。このビットブロック転送制御レジスタ２４０には、ホスト１０がホストＩ／Ｆ１２０を介してアクセスする。
【００８０】
メモリコントローラ２００は、ステータスレジスタ２６０を含むことができる。ステータスレジスタ２６０は、ビットブロック転送制御レジスタ２４０の設定内容をモニタするためのレジスタである。ホスト１０は、ホストＩ／Ｆ１２０を介してステータスレジスタ２６０を参照することで、ビットブロック転送制御レジスタ２４０によりビットブロック転送がイネーブルに設定されているか、ディセーブルに設定されているかを判別できる。そのため、ビットブロック転送制御レジスタ２４０によりビットブロック転送がイネーブルに設定されているときは、入力画素データの供給を中断する等の画素データの供給制御を行い、入力画素データのあふれ等を防止するバッファの容量を削減できる。
【００８１】
ビットブロック転送制御レジスタ２４０によりビットブロック転送がイネーブルに設定されたとき、メモリコントローラ２００は、ビットブロック転送用の矩形領域に対応してアドレス生成回路２２０により生成されたアドレスに基づいて、矩形領域内の各画素の位置に対応する表示メモリ１３０の記憶位置のすべてに、指定画素データを書き込む制御を行う。
【００８２】
またビットブロック転送制御レジスタ２４０によりビットブロック転送がディセーブルに設定されたとき、メモリコントローラ２００は、入力画素データ転送用の矩形領域に対応してアドレス生成回路２２０により生成されたアドレスに基づいて、矩形領域内の各画素の位置に対応する表示メモリ１３０の記憶位置に、カメラＩ／Ｆ１１０又はホストＩ／Ｆ１２０を介して入力された入力画像（所与の入力画像）の各画素データを書き込む制御を行う。
【００８３】
このためメモリコントローラ２００は、表示メモリ１３０への書き込みデータとして、入力画像の画素データである入力画素データ又はビットブロック転送用の画素データを、ビットブロック転送制御レジスタ２４０の設定データ（設定値、アクセス結果、制御データ、制御結果）に応じて切り替えるセレクタ２５０を含むことができる。
【００８４】
このように、入力画素データを書き込むための矩形領域、ビットブロック転送用の画素データを書き込むための矩形領域をそれぞれ矩形領域指定レジスタ２１０で指定し、同じアドレス生成回路２２０を用いて表示メモリ１３０の書き込みアドレスを生成する。このため、入力画素データ及びビットブロック転送用の画素データを書き込む際に、アドレス生成回路２２０及び矩形領域指定レジスタ２１０を共用化でき、メモリコントローラ２００の回路規模を縮小できるようになる。
【００８５】
なお、図５のメモリコントローラ２００において、ビットブロック転送は、色指定レジスタ２３０に指定された１又は複数画素分の画素データを、その都度表示メモリ１３０に書き込むことなく、該画素データを用いてビットブロック転送パターンを生成し、該ビットブロック転送パターンを表示メモリ１３０に書き込むことが望ましい。そのため、メモリコントローラ２００は、ビットブロック転送パターン生成回路２７０を含むことが望ましい。こうすることで、メモリコントローラ２００が表示メモリ１３０にアクセスする回数を低減できる。この結果、ビットブロック転送の高速化と転送に伴う消費電力の低減とを図ることができる。
【００８６】
より具体的には、ビットブロック転送パターン生成回路２７０は、色指定レジスタ２３０によって指定された画素データに基づいて、複数のビットブロック転送パターンを生成することが望ましい。そしてメモリコントローラ２００は、アドレス生成回路２２０により生成されたアドレスに基づいて、複数のビットブロック転送パターンのうち１つのビットブロック転送パターンを選択し、選択されたビットブロック転送パターンを用いて表示メモリ１３０に書き込む制御を行う。
【００８７】
表示メモリ１３０に書き込まれるデータのバス幅が、色指定レジスタ２３０によって指定される１又は複数画素分の画素データのビット数と異なる場合がある。この場合、予め生成された複数のビットブロック転送パターンの中から１つを選択して表示メモリ１３０に書き込むことができ、ビットブロック転送の高速化と転送に伴う消費電力の低減とを図ることができる。
【００８８】
更にメモリコントローラ２００は、画素データのフォーマットを指定するためのフォーマット指定レジスタ２８０を含むことが望ましい。画素データのフォーマットは、１画素の画素データが色成分データにより表現されるＲＧＢフォーマットや、１又は複数の画素データが輝度成分データと色差成分データとにより表現されるＹＵＶフォーマットがある。またＲＧＢフォーマットの中でも、色成分データの表現方法によって種々のフォーマットがあり、１画素分の画素データのビット数が異なる。同様にＹＵＶフォーマットの中でも色差成分データの表現方法によって種々のフォーマットがあり、１画素分の画素データのビット数が異なる。
【００８９】
従って、表示メモリ１３０のデータのバス幅が１又は複数の画素データのビット数で割り切れない（余りが０ではない）場合、表示メモリ１３０への余分なアクセスを増加させてしまう。この場合、ビットブロック転送パターン生成回路が、１画素当たり、色指定レジスタ２３０によって指定されたフォーマットに対応したビット数の指定画素データを用いて、各ビットブロック転送パターンが表示メモリ１３０に書き込まれるデータのバス幅のビット数の複数のビットブロック転送パターンを生成する。
【００９０】
こうすることで、表示メモリ１３０のデータのバス幅単位で画素データを表示メモリ１３０に書き込むことができるようになるので、表示メモリ１３０への余分なアクセスを無くすことができる。
【００９１】
より具体的には、色指定レジスタ２３０によって指定される指定画素データのビット数をｓ（ｓは２以上の整数）、表示メモリ１３０のデータのバス幅のビット数をｍ（ｍ＞ｓ、ｍは整数）、ｓとｍの最小公倍数をＭ（Ｍは整数）とする。このとき、ビットブロック転送パターン生成回路２７０は、Ｍビットのデータを保持できるバッファを含むことができる。そして、Ｍ／ｓ個の指定画素データをバッファに保持させ、このバッファの保持データから、ビットの並び順にｍビット単位に分割する。この結果、各ビットブロック転送パターンがｍビットのＭ／ｍ種類のビットブロック転送パターンを生成することができる。
【００９２】
図１０に、図５のビットブロック転送パターン生成回路２７０の動作説明図を示す。
【００９３】
図１０では、フォーマット指定レジスタ２８０によって、ＲＧＢ８８８フォーマットが指定されたものとする。ＲＧＢ８８８フォーマットは、１画素分の画素データの各色成分データが８ビットで表現される。そのため、指定画素データ「ＲＧＢ」のビット数ｓが２４である。
【００９４】
更に図１０では、表示メモリ１３０のデータのバス幅のビット数ｍが３２であるものとする。従って、バッファが保持できるデータのビット数Ｍが９６となる。
【００９５】
まずバッファに、２４ビットの指定画素データを連続して順次隣のビットに書き込んでいく。その結果、バッファには、４（＝９６／２４＝Ｍ／ｓ）個の指定画素データがバッファに保持される。即ち、バッファの保持データは、「ＲＧＢＲＧＢＲＧＢＲＧＢ」となる。
【００９６】
その後、このバッファの保持データから、ビットの並び順に３２（＝ｍ）ビット単位に分割する。この結果、各ビットブロック転送パターンが３２（＝ｍ）ビットの３（＝９６／３２＝Ｍ／ｍ）種類のビットブロック転送パターンである第１〜第３のビットブロック転送パターンを生成することができる。即ち、第１のビットブロック転送パターンは「ＲＧＢＲ」、第２のビットブロック転送パターンは「ＧＢＲＧ」、第３のビットブロック転送パターンは「ＢＲＧＢ」となる。
【００９７】
図１１に、図１０のビットブロック転送パターンの書き込み動作の説明図を示す。
【００９８】
図１１では、表示領域のＸ方向サイズＸｓｉｚｅが５、Ｙ方向サイズＹｓｉｚｅが２である。この表示領域内に、Ｘ方向開始位置Ｘｓｔａｒｔが２、Ｙ方向開始位置Ｙｓｔａｒｔが０である矩形領域を設定するものとする。
【００９９】
表示メモリ１３０には３２ビット単位でデータが書き込まれるが、各画素の画素データは２４ビットである。ここで、矩形領域内の画素位置（Ｘｓｔａｒｔ，Ｙｓｔａｒｔ）に対応した表示メモリ１３０の記憶位置にビットブロック転送パターンを書き込む場合を考える。
【０１００】
本実施形態では、画素位置（Ｘｓｔａｒｔ，Ｙｓｔａｒｔ）又は該画素位置に対応したアドレスに基づいて、図１０の第１〜第３のビットブロック転送パターンから、第２のビットブロック転送パターンを選択する。そして、第２のビットブロック転送パターンを、画素位置（Ｘｓｔａｒｔ，Ｙｓｔａｒｔ）に対応した表示メモリ１３０の記憶位置に書き込む。ここで、画素位置（１，０）は矩形領域外であるため、第２のビットブロック転送パターンのうち、画素位置（１，０）のＧ、Ｂのデータを上書きしないように制御する。矩形領域内のその他の画素位置については、画素位置又は該画素位置に対応したアドレスに基づいて、第１〜第３のビットブロック転送パターンの１つを選択して、各画素位置に対応した表示メモリ１３０の記憶位置に書き込んでいく。
【０１０１】
このようにビットブロック転送パターン生成回路２７０により、複数のビットブロック転送パターンを生成し、画素位置又は該画素位置に対応した表示メモリ１３０のアドレスに基づいてビットブロック転送パターンを書き込むようにしたので、余分なアクセスを伴うことなく高速に表示メモリ１３０にビットブロック転送を行うことができるようになる。
【０１０２】
図１０及び図１１では、フォーマット指定レジスタ２８０によりＲＧＢフォーマットを指定する例について説明したが、ＹＵＶフォーマットを指定する例についても同様である。
【０１０３】
なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。例えば、本発明は上述の液晶表示パネルの駆動に適用されるものに限らず、エレクトロクミネッセンス、プラズマディスプレイ装置の駆動に適用可能である。
【０１０４】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【図面の簡単な説明】
【０１０５】
【図１】本実施形態における画像処理コントローラとしての表示コントローラが適用された電子機器の構成例を示す図。
【図２】図１の表示コントローラの構成例のブロック図。
【図３】図２のメモリコントローラ及び表示メモリの説明図。
【図４】図２の重ね合わせ処理部の処理の説明図。
【図５】図２のメモリコントローラの構成例のブロック図。
【図６】図５の矩形領域指定レジスタの構成の概要を示す図。
【図７】図６の矩形領域指定レジスタの設定データの説明図。
【図８】図５のアドレス生成回路の構成例のブロック図。
【図９】本実施形態におけるオフセットアドレスの説明図。
【図１０】図５のビットブロック転送パターン生成回路の動作説明図。
【図１１】図１０のビットブロック転送パターンの書き込み動作の説明図。
【符号の説明】
【０１０６】
１０  ホスト、  １００  表示コントローラ、  １１０  カメラＩ／Ｆ、
１２０  ホストＩ／Ｆ、  １３０  表示メモリ、  １４０  重ね合わせ処理部、
１５０  ドライバＩ／Ｆ、  ２００  メモリコントローラ、
２１０  矩形領域指定レジスタ、  ２１１  Ｘ方向開始位置設定レジスタ、
２１２  Ｙ方向開始位置設定レジスタ、  ２１３  Ｘ方向終了位置設定レジスタ、
２１４  Ｙ方向終了位置設定レジスタ、  ２１５  Ｘ方向サイズ設定レジスタ、
２１６  Ｙ方向サイズ設定レジスタ、  ２２０  アドレス生成回路、
２３０  色指定レジスタ、  ２４０  ビットブロック転送制御レジスタ、
２５０  セレクタ、  ２６０  ステータスレジスタ、
２７０  ビットブロック転送パターン生成回路、  ２８０  フォーマット指定レジスタ、
７００  携帯電話機、  ７１０  カメラモジュール、  ７２０  表示パネル、
７３０  表示ドライバ、  ７４０  アンテナ、  ７５０  変復調部、７６０  操作入力部
【図１】
2006277521.tif 000003
【図２】
2006277521.tif 000004
【図３】
2006277521.tif 000005
【図４】
2006277521.tif 000006
【図５】
2006277521.tif 000007
【図６】
2006277521.tif 000008
【図７】
2006277521.tif 000009
【図８】
2006277521.tif 000010
【図９】
2006277521.tif 000011
【図１０】
2006277521.tif 000012
【図１１】
2006277521.tif 000013