(57)【要約】【課題】画像データの手動フレーム転送を効率よく行なうためのシステム及び方法【解決手段】画像データの手動フレーム転送を実行するためのシステム及び方法は、中央処理装置、表示装置、及びディスプレイコントローラを有する電子デバイスを含んで構成される。ディスプレイコントローラにはコントローラロジックがあり、コントローラロジックはディスプレイコントローラのビデオメモリから表示装置にオンスクリーンデータを転送するために手動フレーム転送動作を開始するためのディスプレイコントローラ内での転送トリガー事象に応じて転送フラグをトグルする。ある特定の実施例において、転送トリガー事象は書き込みカウンタか、転送タイマーかのどちらかによって生成されて構わない。中央処理装置は応答して、ビデオメモリからホスト電子デバイスの表示装置にオンスクリーンデータを転送するために手動フレーム転送動作を調整する。【選択図】  図２
2006039549.tif 000002
【特許請求の範囲】
【請求項１】
電子情報をハンドリングするためのシステムであって、
書き込みカウンタ又は転送タイマーによって択一的に生成され、ビデオメモリからデータ宛先へのオンスクリーンデータの手動フレーム転送動作を開始する転送トリガー事象に応じて転送フラグをトグルするコントローラロジックと、
前記転送フラグに応じて前記手動フレーム転送動作を調整して前記ビデオメモリから前記データ宛先に前記オンスクリーンデータを転送する管理手段とを含む、システム。
【請求項２】
前記コントローラロジックは前記管理手段の指示の下に前記手動フレーム転送動作を実行するディスプレイコントローラの中にインプリメントされ、前記管理手段は中央処理装置を含んで構成される、請求項１に記載のシステム。
【請求項３】
前記ディスプレイコントローラは前記転送事象が発生するときにだけ前記オンスクリーンデータを転送することによって携帯用電子デバイスのデバイス資源及び動作電力を節約し、前記ディスプレイコントローラは前記携帯用電子デバイスの前記中央処理装置とディスプレイとの間のトランスペアレントなインタフェースとして機能する集積回路デバイスとしてインプリメントされる、請求項２に記載のシステム。
【請求項４】
前記データ宛先は携帯用電子デバイス用のディスプレイを含んで構成され、当該ディスプレイはランダムアクセスメモリベースの液晶ディスプレイとしてインプリメントされる、請求項１に記載のシステム。
【請求項５】
前記携帯用電子デバイスは携帯用セルラー電話デバイスとしてインプリメントされる、請求項４に記載のシステム。
【請求項６】
前記オンスクリーンデータの前記手動フレーム転送動作を実行することにより、前記転送事象が発生したことを示すために前記転送フラグがトグルされたときにしか前記手動フレーム転送動作が行なわれないので、携帯用ホスト電子デバイスのシステム資源及び動作電力を節約する、請求項１に記載のシステム。
【請求項７】
前記コントローラロジックは、ある所定の転送期間を超えた後に発生する転送タイマートリガーか、又は書き込み画素合計値がある所定の書き込み動作画素しきい値を超えたことを示す書き込みカウンタトリガーかによって択一的に生成される前記転送トリガー事象に応じて前記転送フラグをトグルする、請求項１に記載のシステム。
【請求項８】
前記コントローラロジックは、前記書き込みカウンタの書き込み動作しきい値を定義することを含むフレーム転送初期化手順を実行する、請求項１に記載のシステム。
【請求項９】
前記コントローラロジックは、前記転送タイマーのフレーム転送期間を定義することを含むフレーム転送初期化手順を実行する、請求項１に記載のシステム。
【請求項１０】
前記コントローラロジックは、前記オンスクリーンデータへの書き込み動作をモニタするための前記ビデオメモリ内の一つ以上の記憶場所を定義することを含むフレーム転送初期化手順を実行し、当該フレーム転送初期化手順には転送割り込みモードを使用可能又は使用不可にすることも含まれる、請求項１に記載のシステム。
【請求項１１】
前記コントローラロジックは初期に前記書き込みカウンタを初期設定カウンタ値にリセットし、前記コントローラロジックはその後、前記オンスクリーンデータへの書き込み動作が発生するたびに前記書き込みカウンタをインクリメントする、請求項１に記載のシステム。
【請求項１２】
前記コントローラロジックは今のカウンタ値がある所定のカウンタしきい値よりも大きいと判定し、前記コントローラロジックは次にそれに応答して前記転送フラグをトグルする、請求項１１に記載のシステム。
【請求項１３】
前記コントローラロジックは初期に前記転送タイマーを初期設定タイマー値にリセットし、前記コントローラロジックはそれからある所定の転送期間を測定するために前記転送タイマーを作動させ、前記コントローラロジックは前記所定の転送期間が経過した時に前記転送フラグをトグルする、請求項１に記載のシステム。
【請求項１４】
前記コントローラロジックは、前記所定の転送期間が経過し、前記オンスクリーンデータへの書き込み動作が少なくとも一回発生した時に、前記転送フラグをトグルする、請求項１３に記載のシステム。
【請求項１５】
前記コントローラロジックは、前記書き込みカウンタか、又は前記転送タイマーかのどちらかから前記転送トリガー事象が発生したことを示す前記転送フラグをトグルする、請求項１に記載のシステム。
【請求項１６】
前記コントローラロジック及び前記管理手段は、今の転送フラグ状態を既に分かっている前の転送フラグ状態と比較することによって前記転送フラグがトグルされたと判定する、請求項１５に記載のシステム。
【請求項１７】
前記コントローラロジックは、前記転送トリガー事象が発生したことを知らせる通知として転送割り込みを前記管理手段に能動的に送る、請求項１５に記載のシステム。
【請求項１８】
前記管理手段は、前記転送トリガー事象が発生したかどうか判定するために前記転送フラグを周期的にポーリングする、請求項１５に記載のシステム。
【請求項１９】
前記管理手段は前記オンスクリーンデータを前記データ宛先のディスプレイロジックに転送するよう前記コントローラロジックに命令する、請求項１５に記載のシステム。
【請求項２０】
前記ディスプレイロジックは前記オンスクリーンデータをある特定のローカルの記憶場所に書き込み、前記ディスプレイロジックはそれから、デバイスユーザに表示するための前記データ宛先の画面に前記オンスクリーンデータを前記特定のローカル記憶場所から供給する、請求項１９に記載のシステム。
【請求項２１】
電子情報をハンドリングするための方法であって、
書き込みカウンタ又は転送タイマーによって択一的に生成され、ビデオメモリからデータ宛先にオンスクリーンデータの手動フレーム転送を開始する転送トリガー事象に応じてコントローラロジックを用いて転送フラグをトグルするステップと、
前記転送フラグに応じて前記手動フレーム転送動作を調整して前記オンスクリーンデータを前記ビデオメモリから前記データ宛先に転送するために管理手段を使用するステップとを含む、方法。
【請求項２２】
前記コントローラロジックは前記管理手段の指示の下に前記手動フレーム転送動作を実行するディスプレイコントローラの中にインプリメントされ、前記管理手段は中央処理装置を含んで構成される、請求項２１に記載の方法。
【請求項２３】
前記ディスプレイコントローラは前記転送事象が発生するときにだけ前記オンスクリーンデータを転送することによって携帯用電子デバイスのデバイス資源及び動作電力を節約し、前記ディスプレイコントローラは前記携帯用電子デバイスの前記中央処理装置とディスプレイとの間のトランスペアレントなインタフェースとして機能する集積回路デバイスとしてインプリメントされる、請求項２２に記載の方法。
【請求項２４】
前記データ宛先は携帯用電子デバイスのディスプレイを含んで構成され、当該ディスプレイはランダムアクセスメモリベースの液晶ディスプレイとしてインプリメントされる、請求項２１に記載の方法。
【請求項２５】
前記携帯用電子デバイスは携帯用セルラー電話デバイスとしてインプリメントされる、請求項２４に記載の方法。
【請求項２６】
前記オンスクリーンデータの前記手動フレーム転送動作を実行することにより、前記転送フラグが前記転送事象が発生したことを示すためにトグルされたときにしか前記手動フレーム転送動作が行なわれないので、携帯用ホスト電子デバイスのシステム資源及び動作電力を節約する、請求項２１に記載の方法。
【請求項２７】
前記コントローラロジックは、ある所定の転送期間を超えた後に発生する転送タイマートリガーか、又は書き込み画素合計値がある所定の書き込み動作画素しきい値を超えたことを示す書き込みカウンタトリガーによって択一的に生成される前記転送トリガー事象に応じて前記転送フラグをトグルする、請求項２１に記載の方法。
【請求項２８】
前記コントローラロジックは、前記書き込みカウンタの書き込み動作しきい値を定義することを含むフレーム転送初期化手順を実行する、請求項２１に記載の方法。
【請求項２９】
前記コントローラロジックは、前記転送タイマーのフレーム転送期間を定義することを含むフレーム転送初期化手順を実行する、請求項２１に記載の方法。
【請求項３０】
前記コントローラロジックは、前記オンスクリーンデータへの書き込み動作をモニタするための前記ビデオメモリの中の一つ以上の記憶場所を定義することを含むフレーム転送初期化手順を実行し、当該フレーム転送初期化手順には転送割り込みモードを使用可能又は使用不可にすることも含まれる、請求項２１に記載の方法。
【請求項３１】
前記コントローラロジックは初期に前記書き込みカウンタを初期設定カウンタ値にリセットし、前記コントローラロジックはその後、前記オンスクリーンデータへの書き込み動作が発生するたびに前記書き込みカウンタをインクリメントする、請求項２１に記載の方法。
【請求項３２】
前記コントローラロジックは、今のカウンタ値がある所定のカウンタしきい値よりも大きいと判定し、前記コントローラロジックは次にそれに応答して前記転送フラグをトグルする、請求項２１に記載の方法。
【請求項３３】
前記コントローラロジックは初期に前記転送タイマーを初期設定タイマー値にリセットし、前記コントローラロジックはそれからある所定の転送期間を測定するために前記転送タイマーを作動させ、前記コントローラロジックは前記所定の転送期間が経過した時に前記転送フラグをトグルする、請求項２１に記載の方法。
【請求項３４】
前記コントローラロジックは、前記所定の転送期間が経過し、前記オンスクリーンデータへの書き込み動作が少なくとも一回発生した時に、前記転送フラグをトグルする、請求項３３に記載の方法。
【請求項３５】
前記コントローラロジックは、前記書き込みカウンタか、又は前記転送タイマーかのどちらかから前記転送トリガー事象が発生したことを示す前記転送フラグをトグルする、請求項２１に記載の方法。
【請求項３６】
前記コントローラロジック及び前記管理手段は、今の転送フラグ状態を既に分かっている前の転送フラグ状態と比較することによって前記転送フラグがトグルされたと判定する、請求項３５に記載の方法。
【請求項３７】
前記コントローラロジックは、前記転送トリガー事象が発生したことを知らせる通知として転送割り込みを前記管理手段に能動的に送る、請求項３５に記載の方法。
【請求項３８】
前記管理手段は、前記転送トリガー事象が発生したかどうか判定するために前記転送フラグを周期的にポーリングする、請求項３５に記載の方法。
【請求項３９】
前記管理手段は前記オンスクリーンデータを前記データ宛先のディスプレイロジックに転送するよう前記コントローラロジックに命令する、請求項３５に記載の方法。
【請求項４０】
前記ディスプレイロジックは前記オンスクリーンデータをある特定のローカルの記憶場所に書き込み、前記ディスプレイロジックはそれから、デバイスユーザに表示するための前記オンスクリーンデータを前記特定のローカル記憶場所から前記データ宛先の画面に供給する、請求項３９に記載の方法。
【請求項４１】
電子情報をハンドリングするためのシステムであって、
書き込みカウンタか又は転送タイマーによって択一的に生成され、ビデオメモリからデータ宛先へのオンスクリーンデータの手動フレーム転送動作を開始する転送トリガー事象に応じて転送フラグをトグルするための手段と、
前記転送フラグに応じて前記手動フレーム転送動作を調整して前記オンスクリーンデータを前記ビデオメモリから前記データ宛先に転送するための手段とを含む、システム。
【請求項４２】
電子情報をハンドリングするためのシステムであって、
ビデオメモリデバイスに格納されたオンスクリーンデータと、
転送トリガー事象を検出し、それに応じて前記ビデオメモリからデータ宛先への前記オンスクリーンデータの手動フレーム転送動作を開始するコントローラロジックとを含む、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的には電子ディスプレイコントローラシステムに関し、より具体的には画像データの手動フレーム転送を効率よく行なうためのシステム及び方法に関する。
【背景技術】
【０００２】
今日の電子デバイスの設計者及び製造業者は電子画像データを表示するための効率の良い方法をインプリメントすることを考慮に入れなければならない。しかしながら、電子デバイスで画像データを効率よく表示することはシステム設計者にとって実質的な課題となることがある。例えば、デバイス機能及び性能を向上させることに対する要求が増えると、必要なシステムオペレーティングパワーが増えるし、更なるハードウェア資源が必要になる。パワー又はハードウェア要件が増えると、製造コスト及び動作の非効率性が増大するので、それに相応して好ましくない経済的インパクトになることもある。
【０００３】
さらに、様々な高度のディスプレイ制御操作を行なうデバイスの機能の拡張によりシステムユーザにとってはメリットが増すかもしれないが、様々なデバイス構成要素の制御及び管理にかかる負担も増すことがある。例えば、デジタル画像データを効率よく操作、転送、及び表示する拡張型電子デバイスは、かかわるデジタルデータの量が多く且つ複雑だから、効率の良いインプリメンテーションからメリットを受けることがある。
【０００４】
【特許文献１】国際公開WO02069620号パンフレット
【発明の開示】
【発明が解決しようとする課題】
【０００５】
システム資源にかかる負担が増すと共にデータの大きさが実質的に増大するために、電子画像データの表示を制御するための新たなテクニックを開発することは関連電子技術の関心事であることは明白である。したがって、上記の全ての理由で、今日の電子デバイスの設計者、製造業者、及びユーザは、電子画像データを表示するための効率の良いシステムを開発することを依然として考慮に入れなければならない。
【課題を解決するための手段】
【０００６】
本発明によれば、画像データの手動フレーム転送を効率よく行なうためのシステム及び方法を開示している。ある特定の実施例において、中央処理装置（CPU）、ディスプレイ、ディスプレイコントローラを含むように電子デバイスをインプリメントすることができる。ディスプレイコントローラのコントローラロジックは任意のしかるべき転送トリガー事象に応じて転送フラグをトグルする。例えば、転送タイマーがある所定の転送間隔を超えてからコントローラロジックに転送フラグをトグルさせることができるし、或いは書き込みカウンタからの書き込み画素合計値がある所定の書き込み動作画素しきい値を超えたことをコントローラロジックが検出しても構わない。
【０００７】
転送トリガー事象が発生したことを示すためにコントローラロジックが転送フラグをトグルした場合には、ホスト電子デバイスのCPUは応答してディスプレイコントローラのビデオメモリの中のオンスクリーンデータのための手動フレーム転送動作を調整することがある。ある特定の実施例において、CPUはオンスクリーンデータをホスト電子デバイスのディスプレイに送るための手動フレーム転送動作を実行するようディスプレイコントローラに命令する。
【０００８】
応答して、ディスプレイのディスプレイロジックは転送されてきたオンスクリーンデータをディスプレイメモリの指定されたローカルの記憶場所に格納する。最後に、ディスプレイは、デバイスユーザがビューできるように、ディスプレイメモリからのオンスクリーンデータを一つ以上の画面に表示することができる。少なくとも上記の理由で、本発明はゆえにホスト電子デバイスのディスプレイにオンスクリーン画像データのフルフレームを効率よく供給するために手動転送動作をサポートしている。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態を図面に基づいて説明する。
【実施例１】
【００１０】
本発明はディスプレイコントローラシステムの改善に関するものである。当業者が発明を作り使用できるように以下に説明し、説明を特許出願並びにその要件の文脈において提供している。ここに開示している実施例に対する様々な修正変更は当業者ならば明白であろう。また、本書の一般的な原理はその他の実施例にも当てはまることがある。したがって、本発明を表示した実施例に限定するつもりはなく、本発明には本書で説明している原理及び構成に矛盾しない限り最も広い範囲が与えられるべきである。
【００１１】
本発明は、画像データの手動フレーム転送を実行するためのシステム及び方法からなり、中央処理装置と表示装置及びディスプレイコントローラを有する電子デバイスを含んで構成されている。ディスプレイコントローラにはコントローラロジックがあり、コントローラロジックはディスプレイコントローラのビデオメモリから表示装置にオンスクリーンデータを転送するために手動フレーム転送動作を開始するためのディスプレイコントローラ内での転送トリガー事象に応じて転送フラグをトグルする。ある特定の実施例において、転送トリガー事象は書き込みカウンタか、転送タイマーかのどちらかによって生成されて構わない。中央処理装置は応答して、ビデオメモリからホスト電子デバイスの表示装置にオンスクリーンデータを転送するために手動フレーム転送動作を調整する。
【００１２】
さて図１を見ると、本発明による、電子デバイス１１０の一つの実施例のブロック図が表示されている。図１の実施例は、中央処理装置（CPU）１２２と、入出力インタフェース（I/O）１２６、ディスプレイコントローラ１２８、デバイスメモリ１３０、及び一つ以上のディスプレイ１３４を含んで構成されているが、この構成に限定されるものではない。別の実施例において、電子デバイス１１０を図１の実施例に関して説明した素子又は機能のうちのいくつかに加えて、或いはそれらの代わりに、素子又は機能を含んで構成して構わない。
【００１３】
図１の実施例において、CPU１２２は任意のしかるべき且つ有効なプロセッサデバイス、つまり様々なソフトウェアプログラム命令に応じて電子デバイス１１０の動作を制御及び調整するためのマイクロプロセッサを含めるためにしかるべき管理手段の一部としてインプリメントされていて構わない。図１の実施例において、デバイスメモリ１３０は、ランダムアクセスメモリ（RAM）、読み取り専用メモリ（ROM）に、リムーバブルメモリ又はハードディスクドライブといった記憶デバイスを含んだ任意の所望する記憶デバイス構成を有して構わない。但し、これに限定されるものではない。図１の実施例において、デバイスメモリ１３０は電子デバイス１１０の様々な機能及び動作を実行するためにCPU１２２が実行するプログラム命令のデバイスアプリケーションを含んでいて構わない。但し、これに限定されるものではない。デバイスアプリケーションの特定の性質及び機能性は、一般的に、対応する電子デバイス１１０のタイプ及び具体的な用途といった要因いかんによって変わる。
【００１４】
図１の実施例において、上記のデバイスアプリケーションはCPU１２２が画像データ並びに対応する転送及び表示情報をホストバス１３８でディスプレイコントローラ１２８に供給できるようにするためのプログラム命令を含んでいて構わない。本発明によれば、ディスプレイコントローラ１２８は応答して、次に、受け取った画像データをディプレイバス１４２で電子デバイス１１０の一つ以上のディスプレイ１３４に供給する。図１の実施例において、入出力インタフェース（I/O）１２６は電子デバイス１１０との間で任意の必要なタイプの情報を送受信するために一つ以上のインタフェースを含んでいて構わない。入出力インタフェース１２６はデバイスユーザが電子デバイス１１０と通信できるようにするための一つ以上の手段を含んでいて構わない。さらに、様々な外部電子デバイスがI/O１２６を介して電子デバイス１１０と通信して構わない。例えば、デジタルカメラなどのデジタルイメージングデバイスは取り込んだ画像データを電子デバイス１１０に供給するために入出力インタフェース１２６を使用することができる。
【００１５】
図１の実施例において、電子デバイス１１０はディスプレイ１３４に関する様々な動作及び機能を効率よく管理するためにディスプレイコントローラ１２８を有益に使用することができる。ディスプレイコントローラ１２８のインプリメンテーション及び機能については以下に図２〜４と６〜９に関してさらに説明する。図１の実施例において、電子デバイス１１０は任意の所望するタイプの電子デバイス又はシステムとしてインプリメントされていて構わない。例えば、ある特定の実施例において、電子デバイス１１０は、携帯電話、パーソナルデジタルアシスタントデバイス、電子イメージングデバイス、もしくはコンピュータデバイスとして択一的にインプリメントされて構わない。電子デバイス１１０の動作及び利用の様々な実施例を以下に図２〜９に関してさらに説明する。
【００１６】
さて図２を見ると、本発明による、図１のディスプレイコントローラ１２８の一つの実施例のブロック図が表示されている。図２の実施例は、コントローラロジック２１２、ビデオメモリ２１６、コントローラレジスタ２２０、書き込みカウンタ２２８、及び転送タイマー２３２を含んで構成されているが、これに限定されるものではない。別の実施例において、ディスプレイコントローラ１２８は、図２の実施例に関して説明した素子又は機能のうちのいくつかに加えて、或いはそれらの代わりに、素子又は機能を含んで構成されていて構わない。
【００１７】
図２の実施例において、ディスプレイコントローラ１２８はCPU１２２（図１）から画像データ並びに対応する転送及び表示情報を受理する集積回路デバイスとしてインプリメントされていて構わない。ディスプレイコントローラ１２８はそれから、受け取った画像データをデバイスユーザに表示するためにしかるべき且つ有効な方法で電子デバイス１１０のディスプレイ１３４に供給する。図２の実施例において、コントローラロジック２１２はディスプレイコントローラ１２８の総体的な動作を管理する。ある特定の実施例において、コントローラロジック２１２は画像作成モジュールを含んで構成されているかもしれないが、これに限定されるものではない。画像作成モジュールは、ビデオメモリ２１６からの画像データの読み出しを管理すると共に、コントローラレジスタ２２０からの情報に従って表示するための対応する画像画素の形成を管理する。
【００１８】
図２の実施例において、ディスプレイコントローラ１２８は、オンスクリーンデータをビデオメモリ２３２からディスプレイ１３４（図１）に転送するためのフレーム転送動作をトリガーするために書き込みカウンタ２２８と転送タイマー２３２を用いる。コントローラロジック２１２、書き込みカウンタ２２８、及び転送タイマー２３２のインプリメンテーション並びに使用のある特定の実施例について以下に図３〜４及び図６〜９に関してさらに説明する。
【００１９】
さて図３を見ると、本発明による、図２のビデオメモリ２１６の一つの実施例のブロック図が表示されている。図３の実施例において、ビデオメモリ２１６はオンスクリーンデータ３１２及びオフスクリーンデータ３１６を含んで構成されているが、これに限定されるものではない。別の実施例において、ビデオメモリ２１６は、図３の実施例に関して説明した素子及び機能のうちのいくつかに加えて、或いはそれらの代わりに、素子及び機能を含んで構成されていて構わない。
【００２０】
図３の実施例において、ビデオメモリ２１６は任意の有効なタイプのメモリデバイス又は構成を用いることによってインプリメントされていて構わない。例えば、ある特定の実施例において、ビデオメモリ２１６をランダムアクセスメモリ（RAM）デバイスとしてインプリメントすることができる。図３の実施例において、オンスクリーンデータ３１２とオフスクリーンデータ３１６とはそれぞれビデオメモリ２１６の中の単一の連続したメモリブロックとして表示されている。しかしながら、様々な他の実施例において、オンスクリーンデータ３１２及び／又はオフスクリーンデータ３１６のいろいろな構成要素をビデオメモリ２１６内に複数の不連続メモリブロックとして容易に格納することができる。
【００２１】
図３の実施例において、CPU１２２（図１）は、デバイスユーザがビューできるように、ディスプレイコントローラ１２８が電子デバイス１１０のディスプレイ１３４に転送するためにオンスクリーンデータ３１２に画像データを書き込む。図３の実施例において、オンスクリーンデータ３１２はディスプレイ１３４（図１）の画面に表示するための任意のしかるべきタイプの情報を含んでいる。例えば、オンスクリーンデータ３１２はディスプレイ１３４上のメインウィンドウ領域に対応するメイン画像データを含んでいることがある。さらに、オンスクリーンデータ３１２はディスプレイ１３４上の上記メインウィンドウ領域内に配置された一つ以上のピクチャインピクチャ（PIP）ウィンドウ領域に対応するピクチャインピクチャ画像データを含んでいることがある。
【００２２】
図３の実施例において、オフスクリーンデータ３１６は電子デバイス１１０のディスプレイ１３４に表示されない任意のしかるべきタイプの情報又はデータを含んでいて構わない。例えば、オフスクリーンデータ３１６はディスプレイコントローラ１２８のための様々なタイプの二重バッファリングスキームをサポートするのに使用されることがあるし、或いはディスプレイコントローラ１２８が使用するためのある特定のフォント又はその他のオブジェクトをキャッシングするのに用いられることもある。ビデオメモリ２１６の使用について以下に図６〜９に関してさらに説明する。
【００２３】
さて図４を見ると、本発明による、図２のコントローラレジスタ２２０の一つの実施例のブロック図が表示されている。図４の実施例において、コントローラレジスタ２２０は、構成レジスタ４１２、転送レジスタ４１６、雑多なレジスタ４２０、及び転送フラグ４２４を含んで構成されているが、これに限定されるものではない。別の実施例において、コントローラレジスタ２２０は図４の実施例に関して説明する素子及び機能のうちのいくつかに加えて、或いはそれらの代わりに、素子及び機能を含んで構成されていて構わない。
【００２４】
図４の実施例において、CPU１２２（図１）又はその他のしかるべき構成要素はディスプレイコントローラ１２８のコントローラロジック２１２が使用するための様々タイプの動作パラメータ及びその他の関連情報を指定するためにコントローラレジスタ２２０に情報を有益に書き込むことができる。図４の実施例において、コントローラレジスタ２２０は電子デバイス１１０のディスプレイコントローラ１２８及び／又はディスプレイ１３４の構成に関する様々なタイプの情報を格納するための構成レジスタ４１２を使用することができる。例えば、構成レジスタ４１２は、ディスプレイタイプ、ディスプレイサイズ、ディスプレイのフレームレート、及び様々なディスプレイのタイミングパラメータを指定することができる。図４の実施例において、コントローラレジスタ２２０は、ビデオメモリ２１６（図３）から電子デバイス１１０のディスプレイ１３４に画素データを供給するための転送動作に関する様々なタイプの情報を格納するための転送レジスタ４１６を使用することができる。
【００２５】
図４の実施例において、コントローラレジスタ２２０は、ディスプレイコントローラ１２８が使用するための任意の所望するタイプの情報又はデータを有効に格納するための雑多なレジスタ４２０を使用することができる。図４の実施例において、コントローラロジック２１２、書き込みカウンタ２２８、転送タイマー２３２（図２）、又はその他のしかるべき構成要素は、ディスプレイ１３４への画像データのフレーム転送をトリガーするためのある特定の条件が満たされたことを示すために転送フラグ４２４をセットすることができる。応答して、図６〜９に関して以下に説明するように、対応するフレーム転送手順をCPU１２２が開始することができる。
【００２６】
さて図５を見ると、本発明による、図１のディスプレイ１３４の一つの実施例のブロック図が表示されている。図５の実施例において、ディスプレイ１３４は、ディスプレイメモリ５１２、ディスプレイロジック５１４、ディスプレイレジスタ５１６、タイミングロジック５２０、及び一つ以上の画面５２４を含んで構成されているが、これに限定されるものではない。別の実施例において、ディスプレイ１３４は、図５に関して説明した素子及び機能のうちのいくつかに加えて、或いはそれらの代わりに、素子及び機能を含んで構成されていて構わない。
【００２７】
図５の実施例において、ディスプレイ１３４はランダムアクセスメモリベースの液晶ディスプレイ（RAMベースLCDパネル）としてインプリメントされている。しかしながら、別の実施例において、ディスプレイ１３４は任意のタイプのしかるべきディスプレイ技術又は構成を用いることによってインプリメントされていて構わない。図５の実施例において、ディスプレイコントローラ１２８はディスプレイバス１４２でディスプレイレジスタ５１６に様々なタイプのディスプレイ情報を供給する。ディスプレイレジスタ５１６はそれから、タイミングロジック５２０を有効に制御するためにその受け取ったディスプレイ情報を用いることができる。図５の実施例において、ディスプレイロジック５１４はディスプレイ１３４のためのデータ転送及び表示機能を管理及び調整する。
【００２８】
図５の実施例において、CPU１２２（図１）は、ディスプレイコントローラ１２８がディスプレイバス１４２でビデオメモリ２１６（図２）からディスプレイメモリ５１２に画像データを供給する手動フレーム転送構成手順を調整する。図５の実施例において、ディスプレイメモリ５１２は一般的にランダムアクセスメモリ（RAM）としてインプリメントされる。しかしながら、様々な他の実施例において、ディスプレイメモリ５１２をインプリメントするのに任意の有効なタイプ又は構成のメモリデバイスを用いて構わない。図５の実施例において、ディスプレイメモリ５１２は次に、電子デバイス１１０のデバイスユーザがビューできるように、タイミングロジック５２０を介してディスプレイコントローラ１２８から一つ以上の画面５２４に画像データを有益に供給する。画像データをディスプレイ１３４に効率よく転送するための様々な技法を以下に図６から図９に関してさらに説明する。
【００２９】
次に図６を見ると、本発明の一つの実施例による、転送サイクル初期化手順を実行するために方法ステップのフローチャートが表示されている。図６〜９に表示されたフローチャートは合わせて、本発明を有効に用いるための一つの実施例を説明している。図６のフローチャートは例証のためのものであって、別の実施例において、本発明は図６の実施例に関して説明するステップ及びシーケンスのうちのいくつかに加えて、或いはそれらの代わりに、ステップ及びシーケンスを用いて構わない。
【００３０】
図６の実施例において、ステップ６１２は図９のステップ９２８の次に来る文字"A"にて発生する。ステップ６１２で、CPU１２２、ディスプレイコントローラ１２８、又はその他のしかるべき構成要素が、オンスクリーンデータへの書き込み動作をモニタするためのビデオメモリ２１６（図２）内の一つ以上の記憶場所を定義する。ステップ６１６で、CPU１２２、ディスプレイコントローラ１２８、又はその他のしかるべき構成要素が、書き込みカウンタ２２８を用いて手動フレーム転送動作をトリガーするための書き込みしきい値を決める。ステップ６２０で、CPU１２２、ディスプレイコントローラ１２８、又はその他のしかるべき構成要素が、転送タイマー２３２を用いて手動フレーム転送動作をトリガーするための転送期間を決める。
【００３１】
ステップ６２４で、CPU１２２、ディスプレイコントローラ１２８、又はその他のしかるべき構成要素が、転送割り込みモードで手動フレーム転送動作を実行するかどうか判定する。CPU１２２、ディスプレイコントローラ１２８、又はその他のしかるべき構成要素が転送割り込みモードで作動すると判定した場合には、ステップ６２８でCPU１２２、ディスプレイコントローラ１２８、又はその他のしかるべき構成要素が任意のしかるべき手段を用いることによって転送割り込みモードを使用可能にする。図６のプロセスは次に、接続文字"B"を経由して図７のステップ７１２及び図８のステップ８１２に進む。
【００３２】
さて図７を見ると、本発明の一つの実施例による、書き込みカウンタ２２８を使用するための方法ステップのフローチャートが表示されている。図６〜９に表示したフローチャートは合わせて、本発明を有効に使用するために一つの実施例を説明している。図７のフローチャートは例証のためのものであって、別の実施例において、図７の実施例に関して説明したステップ及びシーケンスのうちのいくつかに加えて、或いはそれらの代わりに、ステップ及びシーケンスを使用して構わない。
【００３３】
図７の実施例において、ステップ７１２は図６のステップ６２８の次に来る文字"B"にて発生する。ステップ７１２で、コントローラロジック２１２は初期にビデオメモリ２１２の中のオンスクリーンデータ３１２をモニタしている。ステップ７１６で、コントローラロジック２１２はオンスクリーンデータ３１２への書き込み動作が発生したかどうか判定する。オンスクリーンデータ３１２への書き込み動作が発生していた場合には、ステップ７２４でコントローラロジック２１２が任意の有効な手段を使用することによって書き込みカウンタ２２８をインクリメントする。
【００３４】
ステップ７２８で、コントローラロジック２１２は書き込みカウンタ２２８の今のカウンタ値がある所定の転送しきい値よりも大きいかどうか判定する。書き込みカウンタ２２８の今のカウンタ値がその所定の転送しきい値よりも大きくなければ、図７のプロセスはステップ７１２に戻り、図７の実施例の上記ステップを繰り返し行なう。しかしながら、書き込みカウンタ２２８の今のカウンタ値が所定の転送しきい値よりも大きければ、図７のプロセスは文字"C"を経由して図９のステップ９１２に進む。
【００３５】
次に図８を見ると、本発明の一つの実施例による、転送タイマー２３２を使用するための方法ステップのフローチャートが表示されている。図６〜９に表示したフローチャートは合わせて、本発明を有効に用いるための一つの実施例を説明している。図８のフローチャートは例証のためのものであって、別の実施例において、本発明は図８の実施例に関して説明するステップ及びシーケンスのうちのいくつかに加えて、或いはそれらの代わりに、ステップ及びシーケンスを使用して構わない。
【００３６】
図８の実施例において、ステップ８１２は図６のステップ６２８の次に来る文字"B"にて発生する。図８の実施例において、ステップ８１２で、ディスプレイコントローラ１２８はある所定の転送期間を測定するために転送タイマー２３２を作動させ、その転送期間の後に、オンスクリーンデータ３１２への書き込み動作が少なくも一回発生したら、フルフレーム転送動作をトリガーすることができる。ステップ８１６で、コントローラロジック２１２は上記の所定転送期間が経過したかどうかを転送タイマー２３２からの今のタイマー値を評価することによって判定する。所定転送期間が経過していた場合には、ステップ８２０で、コントローラロジック２１２が書き込みカウンタ２２８からの今のカウンタ値がゼロかどうか判定する。書き込みカウンタ２２８の今のカウンタ値がゼロならば、転送タイマーのために転送期間が決められ、図８のプロセスは上記ステップ８１２に戻って構わない。しかしながら、書き込みカウンタ２２８の今のカウンタ値がゼロでない場合には、図８のプロセスは文字"C"を経由して図９のステップ９１２に進む。
【００３７】
次に図９を見ると、本発明の一つの実施例による、手動フレーム転送動作を実行するための方法ステップのフローチャートが表示されている。図６〜９に表示したフローチャートは合わせて、本発明を有効に用いるための一つの実施例を説明している。図９のフローチャートは例証のためのものであって、別の実施例において、本発明は図９の実施例に関して説明したステップ及びシーケンスのうちのいくつかに加えて、或いはそれらの代わりに、ステップ及びシーケンスを用いて構わない。
【００３８】
図９の実施例において、ステップ９１２で、コントローラロジック２１２又はその他のしかるべき構成要素は、転送トリガー事象が発生したことを示すためにコントローラレジスタ２２０の転送フラグ４２４をトグルする。図９の実施例において、転送トリガー事象は任意のしかるべき方法でトリガーされて構わない。例えば、上記転送トリガー事象を提供するのに書き込みカウンタ２２８又は転送タイマー２３２のいずれかを用いることができる。
【００３９】
ステップ９１６で、コントローラロジック２１２は手動フレーム転送動作を実行するための転送割り込みモードが今使用可能になっているかどうか判定する。コントローラロジック２１２が転送割り込みモードを今使用可能であると判定した場合には、コントローラロジック２１２は転送トリガー事象が発生したことを示すためにCPU１２２に対して転送割り込みを生成する。応答して、ステップ９２８で、CPU１２２はディスプレイコントローラ１２８からディスプレイ１３４（図１）への今のオンスクリーンデータ３１２のフルフレーム転送を調整する。
【００４０】
しかしながら、ステップ９１６で、コントローラロジック２１２が転送割り込みモードは目下使用可能になっていないと判定した場合には、ステップ９２４で、転送フラグが既知の前の状態から新たな今の状態にすでにトグルされていることをCPU１２２が検出する。ある特定の実施例において、コントローラロジック２１２が通知として上記転送割り込みをCPU１２２に断定的に送るのではなく、CPU１２２は手動フレーム転送動作が必要かどうか判定するために転送フラグ４２４を周期的にポーリングすることができる。応答して、ステップ９２８で、CPU１２２はディスプレイコントローラ１２８からディスプレイ１３４（図１）に今のオンスクリーンデータ３１２のフルフレーム転送を手動で調整する。図９のプロセスはそれから、接続文字"A"を経由して図６のステップ６１２に戻ることができる。少なくとも上記の理由で、本発明は画像データの手動フレーム転送を効率よく行なうための改善されたシステム及び方法を提供するものである。
【００４１】
発明をある特定の好適な実施例に関して上に説明してきた。この開示に照らして当業者ならばその他の実施例が明白になるであろう。例えば、上記の実施例において説明した構成や技法以外のある特定の構成及び技法を用いて本発明をインプリメントして構わない。さらに、好適な実施例として上に説明したシステム以外のシステムと共に本発明を有効に使用することができる。したがって、上記の実施例のこれらのそしてその他の変形例は本発明によって保護されるものと考える。本発明は添付した請求項によってのみ限定されるものである。
【図面の簡単な説明】
【００４２】
【図１】本発明による、電子デバイスの一つの実施例のブロック図。
【図２】本発明による、図１のディスプレイコントローラの一つの実施例のブロック図。
【図３】本発明による、図２のビデオメモリの一つの実施例のブロック図。
【図４】本発明による、図２のコントローラレジスタの一つの実施例のブロック図。
【図５】本発明による、図１のディスプレイの一つの実施例のブロック図。
【図６】本発明の一つの実施例に従って、転送サイクル初期化手順を実行する方法ステップのフローチャート。
【図７】本発明の一つの実施例に従って、書き込みカウンタを使用する方法ステップのフローチャート。
【図８】本発明の一つの実施例に従って、転送タイマーを使用する方法ステップのフローチャート。
【図９】本発明の一つの実施例に従って、手動フレーム転送動作を実行するための方法ステップのフローチャート。
【符号の説明】
【００４３】
110  電子デバイス
122  CPU
126  入出力インタフェース
128  ディスプレイコントローラ
130  デバイスメモリ
134  ディスプレイ
138  ホストバス
142  ディスプレイバス
212  コントローラロジック
216  ビデオメモリ
220  コントローラレジスタ
228  書き込みカウンタ
232  転送タイマー
312  オンスクリーンデータ
316  オフスクリーンデータ
412  構成レジスタ
416  転送レジスタ
420  雑レジスタ
424  転送フラグ
512  ディスプレイメモリ
514  ディスプレイロジック
516  ディスプレイレジスタ
520  タイミングロジック
524  画面
【図１】
2006039549.tif 000003
【図２】
2006039549.tif 000004
【図３】
2006039549.tif 000005
【図４】
2006039549.tif 000006
【図５】
2006039549.tif 000007
【図６】
2006039549.tif 000008
【図７】
2006039549.tif 000009
【図８】
2006039549.tif 000010
【図９】
2006039549.tif 000011