(57)【特許請求の範囲】
【請求項１】
表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算部と、
前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けて保持する更新頻度別保存部と、
前記更新頻度演算部により前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理部と、
前記保存領域管理部により前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画部と、
前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成部と
を備えることを特徴とする表示制御装置。
【請求項２】
前記描画部は、前記表示要素を前記表示部に表示する際の表示内容を変更するときに前記属性を更新することを特徴とする請求項１記載の表示制御装置。
【請求項３】
前記保存領域管理部は、前記更新頻度演算部により求められた前記属性の更新頻度が属する前記更新頻度範囲に対応する前記表示内容保存領域が前記更新頻度別保存部に保持されていないときは、当該表示内容保存領域の生成を前記更新頻度別保存部に要求し、前記更新頻度別保存部により保持されている前記表示内容保存領域のうちで、対応する前記更新頻度範囲に属する前記属性の更新頻度が前記更新頻度演算部により求められていないときは、当該更新頻度範囲に対応する前記表示内容保存領域の破棄を前記更新頻度別保存部に要求することを特徴とする請求項１または２記載の表示制御装置。
【請求項４】
前記更新頻度別保存部は、前記表示内容保存領域として、一の更新頻度範囲に対応する一の表示内容保存領域、および他の更新頻度範囲に対応する他の表示内容保存領域を保持し、
前記保存領域管理部は、一の表示要素の描画先を前記一の表示内容保存領域から前記他の表示内容保存領域に変更したときに、前記一の表示要素と前記一の表示内容保存領域に保存されている他の表示要素との重なりの有無、および前記一の表示要素と前記他の表示内容保存領域に保存されている他の表示要素との重なりの有無を判定し、重なりがあるために再描画が必要な表示要素を前記描画部に通知し、
前記描画部は、前記一の表示内容保存領域および前記他の表示内容保存領域に保存されている他の表示要素のうち、前記保存領域管理部から通知された再描画が必要な表示要素のみを描画先の前記表示内容保存領域に再描画することを特徴とする請求項１〜３のいずれかに記載の表示制御装置。
【請求項５】
前記更新頻度別保存部は、前記表示内容保存領域として、第１の更新頻度範囲に対応する第１の表示内容保存領域、前記第１の更新頻度範囲に対応する前記第１の表示内容保存領域と異なる第２の表示内容保存領域、および前記第１の更新頻度範囲と異なる第２の更新頻度範囲に対応する第３の表示内容保存領域を保持し、
前記更新頻度演算部は、前記表示要素として、第１、第２および第３表示要素の属性の更新頻度をそれぞれ求め、
前記保存領域管理部は、前記第１および第２の表示要素の前記属性の更新頻度がいずれも前記第１の更新頻度範囲に属し、前記第３の表示要素の前記属性の更新頻度が前記第２の更新頻度範囲に属する場合には、前記第３の表示内容保存領域を前記第３の表示要素の描画先として決定し、前記３の表示要素に対する前記第１および第２の表示要素の前後関係をそれぞれ判定し、前記第１の表示要素と前記第２の表示要素との前記第３の表示要素に対する前後関係が異なるときは、前記第１および第２の表示内容保存領域の一方を前記第１の表示要素の描画先として決定し、他方を前記第２の表示要素の描画先として決定することを特徴とする請求項１〜４のいずれかに記載の表示制御装置。
【請求項６】
前記表示内容保存領域は、前記表示要素の前記表示内容を保存できる必要最小限の保存容量を有し、
前記保存領域管理部は、前記表示要素の前記属性に基づき、前記表示要素を前記表示部に表示する際の前記表示部における位置情報を取得して前記合成部に通知し、
前記合成部は、前記保存領域管理部から通知された前記位置情報を用いて、前記表示内容保存領域の内容を合成することを特徴とする請求項１〜５のいずれかに記載の表示制御装置。
【請求項７】
表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算ステップと、
前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けて準備する保存領域準備ステップと、
前記更新頻度演算ステップにおいて前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理ステップと、
前記保存領域管理ステップにおいて前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画ステップと、
前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成ステップと
を含むことを特徴とする表示制御方法。
【請求項８】
コンピュータを、
表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算部と、
前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けて保持する更新頻度別保存部と、
前記更新頻度演算部により前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理部と、
前記保存領域管理部により前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画部と、
前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成部
として機能させることを特徴とする表示制御プログラム。
【請求項９】
表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算回路と、
前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けた前記表示内容保存領域のうち、前記更新頻度演算回路により前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理回路と、
前記保存領域管理回路により前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画回路と、
前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成回路と
を備えることを特徴とする集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＣＤやＣＲＴなどのモニター上の画面表示を制御する技術に関するものであり、特に表示更新処理を高速に行うための表示制御装置、表示制御方法、表示制御プログラムおよび集積回路に関するものである。
【背景技術】
【０００２】
従来の表示制御装置として、一般にフレームバッファやプレーンと呼ばれる表示内容を保存するための表示内容保存領域を、画面上に表示される文字や画像などの表示要素のうち移動するものが描画される移動物専用の表示内容保存領域と、移動しないものが描画される固定物専用の表示内容保存領域とに分け、アニメーションなど表示要素が移動する際には、移動物専用の表示内容保存領域のみを更新することで表示更新速度を向上するものがあった（例えば、特許文献１参照）。上記従来の特許文献１に記載の装置では、表示要素のうち画面上の表示位置や大きさなどの表示に関する属性が変化しないものは固定物専用の表示内容保存領域に描画し、表示に関する属性が変化するものは移動物専用の表示内容保存領域に描画する。そして、これら固定物専用および移動物専用の各表示内容保存領域が持つ表示内容が合成されて、表示部に表示される。【０００３】
かかる構成により、アニメーション表示を行うために、画面の表示内容を更新する際には、移動物専用の表示内容保存領域の内容だけを描画することで、固定物に対する描画処理を省略し、表示更新処理の高速化を実現していた。【０００４】
しかしながら、前記従来の構成では、表示に関する属性が変化する可能性が少しでもある表示要素が存在する場合には、移動物の表示要素を保存するための表示内容保存領域が必要になる。このような表示要素としては、ユーザへのエラー通知など、極めて稀な状態でのみ表示に関する属性が変化する表示要素など、実際には属性が更新される可能性が低いものが含まれる。そして、このような、稀に属性が更新される表示要素、つまり長いサイクルで表示に関する属性が更新される表示要素に加えて、短いサイクルで表示に関する属性が更新される表示要素が存在することがある。このように属性の更新頻度が異なる２種類の表示要素が存在する場合には、前記従来の構成では、長いサイクルで更新される表示要素についても短いサイクルで更新される表示要素と同じ頻度で、表示更新処理が行われることになり、表示更新処理に要する時間が増大するという課題を有していた。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平９−３１１９４９号公報
【発明の概要】
【０００６】
本発明は、前記従来の課題を解決するもので、高速な表示更新処理を実現する表示制御装置、表示制御方法、表示制御プログラムおよび集積回路を提供することを目的とする。
【０００７】
本発明の一局面に係る表示制御装置は、表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算部と、前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けて保持する更新頻度別保存部と、前記更新頻度演算部により前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理部と、前記保存領域管理部により前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画部と、前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成部とを備える。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態１における表示装置の構成を示すブロック図。
【図２】本発明の実施の形態１における更新頻度演算部の更新頻度情報を示す図。
【図３】本発明の実施の形態１における保存領域管理部の保存領域情報を示す図。
【図４】本発明の実施の形態１における表示処理を示すフローチャート。
【図５】本発明の実施の形態１における描画先決定処理を示すフローチャート。
【図６】本発明の実施の形態２における描画先決定処理を示すフローチャート。
【図７】本発明の実施の形態３における描画先決定処理を示すフローチャート。
【図８】本発明の実施の形態３における保存領域管理部の保存領域情報を示す図。
【図９】本発明の実施の形態４における保存領域管理部の保存領域情報を示す図。
【図１０】本発明の実施の形態４におけるフレームバッファを示す図。
【図１１】更新頻度演算部の更新頻度情報の別の例を示す図。
【図１２】更新頻度演算部が行う更新頻度決定の別の例を示すフローチャート。
【図１３】描画先決定処理の別の例を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１０】
（実施の形態１）
図１は本発明の実施の形態１における表示装置の構成を示すブロック図、図２は更新頻度演算部が保持している更新頻度情報の内容を示す図、図３は保存領域管理部が管理している保存領域情報の内容を示す図である。
【００１１】
この表示装置は、入力部１、表示要素保存部２、表示部３、表示制御部４を備えている。入力部１は、キーボードやポインティングデバイスなどのユーザ操作を入力するためのものであり、ユーザの操作結果を表示制御部４の描画部４１に通知する。表示要素保存部２は、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）やメモリなどで構成され、表示要素を保存するためのものであり、画像や文字などの表示要素を保存している。表示要素は、表示部３に表示される画面を構成するもので、例えばユーザの操作画面における選択ボタンや決定ボタンなどのように一つのまとまりある内容を持ち、表示部３に表示される表示内容を構成する部品として機能する。表示部３は、ＬＣＤやＣＲＴなどで構成される画面を表示するためのものであり、表示制御部４の合成部４５から通知された表示内容を画面上に表示する。表示制御部４は、表示要素保存部２に保存されている表示要素の表示部３への表示を制御するもので、描画部４１、更新頻度演算部４２、保存領域管理部４３、更新頻度別保存部４４および合成部４５を備えている。
【００１２】
描画部４１は、入力部１から通知されたユーザの操作結果を受け、表示要素保存部２に保存されている画像や文字などの表示要素を更新頻度別保存部４４により保持されている表示内容保存領域に描画するものである。このとき、描画部４１は、各表示要素の描画先となる表示内容保存領域を保存領域管理部４３に問い合わせ、保存領域管理部４３から通知された表示内容保存領域に表示要素を描画する。また、描画部４１は、ユーザ操作やアニメーションの内容に従って、色、大きさ、座標などの表示に関する属性を変更した表示要素の名前を更新頻度演算部４２に通知する。また、描画部４１は、自らが表示要素の属性を変更していないため描画対象に含んでいなくとも、描画先の表示内容保存領域が変更されたため再描画が必要な旨を保存領域管理部４３から通知された場合は、再描画対象として通知された表示要素も描画対象に含める。
【００１３】
更新頻度演算部４２は、画像や文字などの表示要素に基づき、描画部４１により描画される内容が変更される頻度、つまり色、大きさ、座標などの表示に関する属性が更新される頻度を表示要素毎に求める。図２に示す通り、更新頻度演算部４２は、各表示要素の描画更新の頻度を管理できるように、表示要素名、更新頻度および更新時刻を対応付けたものを更新頻度情報４２０としてメモリに保持している。
【００１４】
更新頻度別保存部４４は、更新頻度を所定範囲ずつに区分した更新頻度範囲毎にそれぞれ対応付けた表示内容保存領域を保持している。各表示内容保存領域は、表示部３に表示要素を表示するための各ピクセルの色や透過度、Ｚ値などの情報を保持している。また、更新頻度別保存部４４は、初期状態では、表示内容保存領域を保持しておらず、保存領域管理部４３の指示に従い必要に応じて表示内容保存領域を生成し、破棄する。図１には、更新頻度別保存部４４により保持された第１〜第３表示内容保存領域４４１〜４４３が示されている。なお、この実施の形態１では、表示内容保存領域のメモリ容量としては、表示部３の画面全体の表示内容を保持できる容量、つまりフレームバッファ５と同一容量のメモリを確保している。
【００１５】
保存領域管理部４３は、表示要素保存部２に保存されている文字や画像などの表示要素の属性の、更新頻度演算部４２により求められた更新頻度に基づき、更新頻度別保存部４４に表示内容保存領域の生成、破棄を指示する。図３に示す通り、保存領域管理部４３は、更新頻度の範囲毎に、それに対応する表示内容保存領域名、その表示内容保存領域名が更新頻度別保存部４４に保持されているか否かの生成状態に関する情報、及び、各表示内容保存領域に描画される表示要素の名前を保存領域情報４３０としてメモリに保持している。
【００１６】
この実施の形態１では、図３に示すように、更新頻度Ｆ［回／分］の範囲として、０≦Ｆ＜１、１≦Ｆ＜６０、６０≦Ｆの３つの更新頻度範囲に区分しており、それぞれ第１〜第３表示内容保存領域４４１〜４４３に対応させている。ここで、低頻度範囲（０≦Ｆ＜１）は例えば移動しない固定画像や長いサイクルで更新される画像に対応し、中頻度範囲（１≦Ｆ＜６０）は中程度のサイクルで更新される画像、例えばユーザ操作によって移動するカーソル画像に対応し、高頻度範囲（６０≦Ｆ）は短いサイクルで更新される画像、例えばアニメーション画像に対応する。なお、図３に示す更新頻度Ｆの範囲は一例であって、異なる値で区分するようにしてもよい。また、図３では、３つの更新頻度範囲に区分しているが、２つまたは４つ以上に区分するようにしてもよい。
【００１７】
なお、図３（Ａ）に示す通り、更新頻度の範囲、表示内容保存領域名、表示内容保存領域の生成状態は、初期値として予め設定された値を持つが、各表示内容保存領域に描画されている表示要素は初期値では何も設定されておらず、後述する描画先決定処理を行った際に図３（Ｂ）、（Ｃ）のように設定される。また、保存領域管理部４３は、更新頻度の変更により表示要素の描画先となる表示内容保存領域が変更された際に、再描画が必要な表示要素を描画部４１に通知する。
【００１８】
合成部４５は、更新頻度別保存部４４が保持する全ての表示内容保存領域の内容を合成して表示部３に表示するものである。すなわち、上述したように、更新頻度別保存部４４は保存領域管理部４３からの指示に応じて表示内容保存領域を生成、破棄するため、更新頻度別保存部４４が保持する全ての表示内容保存領域には、表示要素が描画されている。そこで、合成部４５は、更新頻度別保存部４４が保持する全ての表示内容保存領域（つまり表示要素が描画されている全ての表示内容保存領域）の内容を合成する。そして、合成部４５は、その合成した内容をフレームバッファ５に描画し、このフレームバッファ５に描画した内容を表示部３に表示する。なお、フレームバッファ５は、表示部３の内部に設けられていてもよい。
【００１９】
図４は図１に示す表示装置の表示処理を示すフローチャートである。まず、入力部１からユーザ操作が描画部４１に通知された場合、もしくは、アニメーションなど一定間隔で表示内容を自動更新する場合は、各フレームの描画開始時刻になると、描画部４１は、ユーザの操作もしくはアニメーションの内容に応じて、表示要素保存部２に保存されている各表示要素の属性値を更新し、属性を更新した表示要素を描画対象に設定するとともに、属性を更新したことを更新頻度演算部４２に通知する（ステップＳ１）。
【００２０】
より具体的には、まずユーザ操作により初期画面を表示する際には、表示部３に表示する全ての表示要素の色、座標、大きさなどの属性に初期表示時のデフォルト値を設定し、初期表示される表示要素名を全て更新頻度演算部４２に通知する。次に、入力部１から通知されたユーザ操作によりフォーカス位置を変更する場合や、スクロール等のアニメーションを行うために一定間隔で表示要素の座標を変更する場合には、表示部３に表示されている表示要素のうち、フォーカス位置変更やスクロールのために、表示内容を変更する必要がある表示要素の属性を変更し、変更した表示要素の名前を全て更新頻度演算部４２に通知する。この際、表示要素の表示に関する属性が変更されず表示内容が変わらない表示要素は描画対象に含めない。なお、表示要素の属性変更を全く行わない場合は、変更しない旨を更新頻度演算部４２に通知するようにしても良い。
【００２１】
次に、更新頻度演算部４２は、描画部４１から属性が変更された表示要素名が通知されると、その表示要素名に対応した更新頻度を変更する（ステップＳ２）。より具体的には、更新頻度演算部４２は、描画部４１から属性を更新した表示要素名が通知されると、通知された時から過去一定の期間内に何回属性が変更されたかに基づいて将来における更新頻度を予測し、その値を更新頻度として保持する。
【００２２】
具体的な振る舞いを、以下に図２を参照しつつ例を挙げて示す。まず、更新頻度演算部４２の更新頻度情報４２０には、初期状態として何も記憶されていない。ここで、初期表示のために、表示要素Ａ、表示要素Ｂ、表示要素Ｃの属性更新が描画部４１から通知されると、更新頻度演算部４２は、図２（Ａ）に示すように、通知された表示要素名である表示要素Ａ、Ｂ、Ｃを更新頻度情報４２０に追加し、更新頻度を０に設定し、その時刻ｔ１を記憶する。次に、ユーザ操作などによる表示内容変更のために表示要素Ｂ、Ｃの属性のみを更新した旨が描画部４１から通知されると、前回更新した時刻と今回更新した時刻から更新頻度情報４２０に保持されている全ての表示要素の更新頻度を計算する。例えば前回の更新時刻ｔ１から今回の更新時刻ｔ２まで１０秒経過していた場合は、表示要素Ｂ、Ｃの更新頻度Ｆ＝６［回／分］、表示要素Ａの更新頻度Ｆ＝０［回／分］となる。最後に、今回計算した値と既に更新頻度情報４２０に記載されている更新頻度の平均を計算し、これを将来における更新頻度の予測値として、更新頻度情報４２０に設定する。前記例の場合では、図２（Ｂ）に示す通り、表示要素Ｂ、Ｃの更新頻度Ｆ＝３［回／分］、表示要素Ａの更新頻度Ｆ＝０［回／分］となる。
【００２３】
次に、描画部４１は、表示部３に表示する各表示要素を描画する描画先の表示内容保存領域を保存領域管理部４３に問い合わせる（ステップＳ３）。具体的には、描画部４１がステップＳ１で描画対象に設定した、表示に関する属性を更新した表示要素名の一覧を、保存領域管理部４３に通知する。通知を受けた保存領域管理部４３は、独自に決定した描画対象の表示要素名と、各表示要素の描画先を示す表示内容保存領域名の一覧を描画部４１に返す。この保存領域管理部４３により実行される描画先決定処理の詳細については後述する。
【００２４】
次に描画部４１は、保存領域管理部４３から通知された一覧に記された各表示要素を、表示要素毎に指定された表示内容保存領域名に従い、更新頻度別保存部４４の各表示内容保存領域に描画する（ステップＳ４）。その後、合成部４５が、更新頻度別保存部４４が保持する全ての表示内容保存領域の内容を合成する（ステップＳ５）。最後に、合成部４５が合成した結果を表示部３に表示する（ステップＳ６）。
【００２５】
次に、保存領域管理部４３が行う描画先決定処理について説明する。図５は図４のステップＳ３の描画先決定処理を示すフローチャートである。以下、図５を参照して、最初に初期描画時の流れについて説明し、次に表示要素の更新頻度が変化して描画先の表示内容保存領域が分割されて再描画される場合の流れについて説明し、次に同じ更新頻度で一部の表示要素が再描画される場合の流れについて説明し、最後に表示要素の更新頻度が変化して描画先の表示内容保存領域が統合されて再描画される場合の流れについて説明する。
【００２６】
まず、初期描画時の流れについて説明する。保存領域管理部４３は、描画部４１から描画する表示要素名の一覧が通知されると、一覧に記載された各表示要素の更新頻度を更新頻度演算部４２から取得する（ステップＳ３１）。初期描画の際は、表示部３に表示される全ての表示要素Ａ，Ｂ，Ｃが一覧に記載されることになり、初期描画時は全表示要素が未更新なので、図２（Ａ）に示す通り、表示要素Ａ、Ｂ、Ｃともに更新頻度Ｆ＝０［回／分］を取得する。
【００２７】
次に、保存領域管理部４３は、描画部４１から通知された描画する表示要素名の一覧に記載された各表示要素に対して、ステップＳ３１で取得した更新頻度に対応する表示内容保存領域名を保存領域情報４３０から選択する（ステップＳ３２）。初期状態として、図３（Ａ）に示す保存領域情報４３０を保持している状態では、更新頻度Ｆ＝０［回／分］の表示要素Ａ、Ｂ、Ｃともに第１表示内容保存領域４４１（図１）が選択される。
【００２８】
そして、保存領域管理部４３は、保存領域情報４３０に記載されている各表示内容保存領域に描画される表示要素と、ステップＳ３２で選択した各表示内容保存領域の表示要素を比較し、描画される表示要素が異なる表示内容保存領域が存在するかを判定する（ステップＳ３３）。描画される表示要素が異なる表示内容保存領域が存在する場合は（ステップＳ３３でＹＥＳ）、保存領域管理部４３は、保存領域情報４３０において、変更があった表示内容保存領域の描画される表示要素として記載されている表示要素を描画対象に追加する（ステップＳ３４）。
【００２９】
初期表示時は、図３（Ａ）に示す通り、表示要素Ａ，Ｂ，Ｃが描画される第１表示内容保存領域４４１には描画されている表示要素はないため、第１表示内容保存領域４４１に描画される表示要素が異なると判断し（ステップＳ３３でＹＥＳ）、変更があった第１表示内容保存領域４４１に描画されていた表示要素を描画対象に追加する（ステップＳ３４）。ただし、今回は、図３（Ａ）に示す通り第１表示内容保存領域４４１に描画されていた表示要素がないため、実際には描画対象に何も追加されない。一方、描画される表示要素が異なっている表示内容保存領域が存在しない場合は（ステップＳ３３でＮＯ）、ステップＳ４０に進むが、初期表示時には、描画される表示要素が異なっている表示内容保存領域が存在しないということはないため、ステップＳ３３でＮＯとなることはない。
【００３０】
次に、保存領域管理部４３は、保存領域情報４３０の「描画される表示要素」を更新する（ステップＳ３５）。今回は、ステップＳ３２において表示要素Ａ，Ｂ，Ｃともに第１表示内容保存領域４４１に描画されると判断されたので、図３（Ｂ）に示す通り、第１表示内容保存領域４４１の「描画される表示要素」に表示要素Ａ，Ｂ，Ｃが追加される。
【００３１】
次に、保存領域管理部４３は、表示要素が描画される表示内容保存領域で未生成のものがあるか否かを判定する（ステップＳ３６）。未生成のものが存在する場合は（ステップＳ３６でＹＥＳ）、該当する表示内容保存領域の生成を更新頻度別保存部４４に要求し、保存領域情報４３０の「表示内容保存領域生成状態」を生成済みに変更する（ステップＳ３７）。ここで、更新頻度別保存部４４は、表示内容保存領域として表示内容を保存するためのメモリ領域を確保する。未生成のものがない場合は（ステップＳ３６でＮＯ）、ステップＳ３７を省略し、ステップＳ３８へ進む。今回は、初期状態で未生成であった第１表示内容保存領域４４１に表示要素Ａ，Ｂ，Ｃが描画されるため、第１表示内容保存領域４４１を生成し（ステップＳ３７）、図３（Ｂ）に示すように、第１表示内容保存領域４４１の生成状態を生成済みに変更する。
【００３２】
次に、保存領域管理部４３は、描画される表示要素が存在しない生成済みの表示内容保存領域があるか否かを判断する（ステップＳ３８）。描画される表示要素が存在しない生成済みの表示内容保存領域が存在する場合は（ステップＳ３８でＹＥＳ）、更新頻度別保存部４４に該当する表示内容保存領域の破棄を要求し、保存領域情報４３０の表示内容保存領域生成状態を未生成に変更する（ステップＳ３９）。ここで、更新頻度別保存部４４は、表示内容保存領域として表示要素を保存するために確保していたメモリ領域を解放する。
【００３３】
一方、描画される表示要素が存在しない生成済みの表示内容保存領域がない場合は（ステップＳ３８でＮＯ）、ステップＳ３９を省略し、ステップＳ４０へ進む。初期表示の際は、図３（Ｂ）に示す通り、描画される表示要素が存在しない生成済みの表示内容保存領域は存在しないため、ステップＳ３８でＮＯとなり、ステップＳ４０へ進む。
【００３４】
最後に、保存領域管理部４３は、描画対象の表示要素と各表示要素の描画先となる表示内容保存領域を、描画部４１に通知し（ステップＳ４０）、処理を終了する。今回は描画対象として表示要素Ａ，Ｂ，Ｃと各表示要素の描画先の表示内容保存領域として第１表示内容保存領域４４１が通知される。
【００３５】
次に、表示要素の更新頻度が変化し、描画先の表示内容保存領域が分割（つまり別の未生成の表示内容保存領域に変更）されて再描画される場合の処理の流れを示す。例として、図２（Ａ）の状態から、図２（Ｃ）に示すように、表示要素Ｃだけが再描画されて更新頻度Ｆ＝３［回／分］になった場合について説明する。
【００３６】
まず、描画部４１から表示要素Ｃが描画対象の表示要素として通知されると、保存領域管理部４３は、表示要素Ｃの更新頻度Ｆ＝３［回／分］を更新頻度演算部４２から取得する（ステップＳ３１）。次に、保存領域管理部４３は、保存領域情報４３０を参照し、表示要素Ｃの描画先として第２表示内容保存領域４４２を選択する（ステップＳ３２）。次に、保存領域管理部４３は、描画される表示要素に変更がある表示内容保存領域の有無を判定する（ステップＳ３３）。今回は、表示要素Ｃの描画先が第１表示内容保存領域４４１から第２表示内容保存領域４４２に変更されたため、第１表示内容保存領域４４１と第２表示内容保存領域４４２に変更ありと判定し（ステップＳ３３でＹＥＳ）、第１表示内容保存領域４４１と第２表示内容保存領域４４２に描画されていた表示要素を描画対象に追加する（ステップＳ３４）。今回は、第１表示内容保存領域４４１に表示要素Ａ，Ｂが描画されており、第２表示内容保存領域４４２には何も描画されていないため、表示要素Ａ，Ｂを描画対象に追加する。
【００３７】
次に、保存領域管理部４３は、ステップＳ３２で選択した内容に従って、保存領域情報４３０の各表示内容保存領域の「描画される表示要素」を更新する（ステップＳ３５）。今回は、表示要素Ｃが第２表示内容保存領域４４２に描画されるので、図３（Ｃ）に示されるとおり、「描画される表示要素」を更新する。すなわち、表示要素Ｃの記載箇所が、更新頻度の範囲０≦Ｆ＜１の欄から範囲１≦Ｆ＜６０の欄に変更される。次に、保存領域管理部４３は、描画される表示要素がある未生成の表示内容保存領域の有無を判定し（ステップＳ３６）、今回は表示要素Ｃが描画される第２表示内容保存領域４４２が未生成なので（ステップＳ３６でＹＥＳ）、第２表示内容保存領域４４２の生成を更新頻度別保存部４４に要求し、図３（Ｃ）に示す通り、第２表示内容保存領域４４２を生成済みに変更する（ステップＳ３７）。更新頻度別保存部４４は要求された第２表示内容保存領域４４２を生成する。そして、保存領域管理部４３は、描画される表示要素がない未生成の表示内容保存領域の有無を判定し（ステップＳ３８）、図３（Ｃ）に示す通り、そのような表示内容保存領域は存在しないため（ステップＳ３８でＮＯ）、ステップＳ４０へ進む。
【００３８】
最後に、保存領域管理部４３は、ステップＳ３４で決定した描画対象として、表示要素Ａ，Ｂ，Ｃと、表示要素Ａ、Ｂの描画先として第１表示内容保存領域４４１、表示要素Ｃの描画先として第２表示内容保存領域４４２を描画部４１に通知する（ステップＳ４０）。その結果、描画部４１は、第１表示内容保存領域４４１に表示要素Ａ，Ｂを描画し、第２表示内容保存領域４４２に表示要素Ｃを描画し（図４のステップＳ４）、合成部４５は、第１表示内容保存領域４４１と第２表示内容保存領域４４２との内容を合成して表示部３に表示する（図４のステップＳ５，Ｓ６）。
【００３９】
次に、同じ更新頻度で一部の表示要素が再描画される場合の処理の流れを示す。例として、図２（Ｃ）に示すように、表示要素Ｃが前回と同様に更新頻度Ｆ＝３［回／分］で再描画される場合について説明する。
【００４０】
まず、描画部４１から表示要素Ｃが描画する表示要素名の一覧として通知されると、保存領域管理部４３は、表示要素Ｃの更新頻度Ｆ＝３［回／分］を更新頻度演算部４２から取得する（ステップＳ３１）。次に、保存領域管理部４３は、保存領域情報４３０を参照し、表示要素Ｃの描画先として第２表示内容保存領域４４２を選択する（ステップＳ３２）。次に、保存領域管理部４３は、「描画される表示要素」に変更がある表示内容保存領域の有無を判定する（ステップＳ３３）。今回は、更新頻度に変化がないため変更がある表示内容保存領域はないと判定され（ステップＳ３３でＮＯ）、ステップＳ４０に進む。最後に保存領域管理部４３は、描画対象として描画部４１から通知された表示要素Ｃと描画先の第２表示内容保存領域４４２を描画部４１に通知する（ステップＳ４０）。その結果、描画部４１は、第２表示内容保存領域４４２に表示要素Ｃを描画し（図４のステップＳ４）、合成部４５は、第１表示内容保存領域４４１と第２表示内容保存領域４４２との内容を合成して、表示部３に表示する（図４のステップＳ５，Ｓ６）。
【００４１】
最後に、表示要素の更新頻度が変化し、描画先の表示内容保存領域が統合（つまり別の生成済みの表示内容保存領域に変更）されて再描画される場合の処理の流れを示す。例として、図３（Ｃ）の状態において、表示要素Ｃの更新頻度がＦ＝０．１［回／分］まで落ちた場合について説明する。
【００４２】
まず、描画部４１から表示要素Ｃが描画する表示要素名の一覧として通知されると、保存領域管理部４３は、表示要素Ｃの更新頻度Ｆ＝０．１［回／分］を更新頻度演算部４２から取得する（ステップＳ３１）。次に、保存領域管理部４３は、保存領域情報４３０を参照し、表示要素Ｃの描画先として第１表示内容保存領域４４１を選択する（ステップＳ３２）。
【００４３】
次に、保存領域管理部４３は、描画される表示要素に変更がある表示内容保存領域の有無を判定する（ステップＳ３３）。今回は、表示要素Ｃの描画先が第２表示内容保存領域４４２から第１表示内容保存領域４４１に変更されたため、第１表示内容保存領域４４１と第２表示内容保存領域４４２に変更ありと判定し（ステップＳ３３でＹＥＳ）、第１表示内容保存領域４４１と第２表示内容保存領域４４２に描画されていた表示要素を描画対象に追加する（ステップＳ３４）。今回は、第１表示内容保存領域４４１に表示要素Ａ，Ｂが描画されており、第２表示内容保存領域４４２に表示要素Ｃが描画されているため、表示要素Ａ，Ｂ，Ｃを描画対象に追加する。ただし、既に表示要素Ｃは描画対象になっているため、重複の追加は行わない。
【００４４】
次に、保存領域管理部４３は、ステップＳ３２で選択した内容に従って、各表示内容保存領域の描画される表示要素を更新する（ステップＳ３５）。今回は、表示要素Ｃが第１表示内容保存領域４４１に描画されるので、図３（Ｂ）に示されるとおり、「描画される表示要素」を更新する。すなわち、表示要素Ｃの記載箇所が、更新頻度の範囲１≦Ｆ＜６０の欄から範囲０≦Ｆ＜１の欄に変更される。次に、保存領域管理部４３は、描画される表示要素がある未生成の表示内容保存領域の有無を判定し（ステップＳ３６）、今回は未生成の表示内容保存領域はないと判定し（ステップＳ３６でＮＯ）、ステップＳ３８へ進む。
【００４５】
そして、保存領域管理部４３は、描画される表示要素がない生成済みの表示内容保存領域の有無を判定し（ステップＳ３８）、今回は表示要素Ｃが第２表示内容保存領域４４２から第１表示内容保存領域４４１に変更されたため、第２表示内容保存領域４４２に表示要素がないと判定され（ステップＳ３８でＹＥＳ）、保存領域管理部４３は、更新頻度別保存部４４に第２表示内容保存領域４４２の破棄を要求し、第２表示内容保存領域４４２を未生成に変更する（ステップＳ３９）。更新頻度別保存部４４は、破棄を要求された第２表示内容保存領域４４２を破棄し、メモリ領域を解放する。最後に保存領域管理部４３は、ステップＳ３４で決定した描画対象として、表示要素Ａ，Ｂ，Ｃと、全ての描画先として第１表示内容保存領域４４１を描画部４１に通知する（ステップＳ４０）。その結果、描画部４１は、第１表示内容保存領域４４１に表示要素Ａ，Ｂ，Ｃを描画し（図４のステップＳ４）、合成部４５は、第１表示内容保存領域４４１の内容を表示部３に表示する（図４のステップＳ５，Ｓ６）。
【００４６】
以上説明したように、この実施の形態１によれば、描画部４１が表示要素保存部２に保存されている表示要素を描画する際に、更新頻度演算部４２が各表示要素の属性の更新頻度を求め、描画部４１は、各表示要素の属性の更新頻度が属する更新頻度範囲に対応する表示内容保存領域に各表示要素を描画している。したがって、実際の更新頻度に応じて必要な表示内容保存領域への描画処理のみを実行することが可能となり、高速な表示更新処理を実現することが可能となる。
【００４７】
また、この実施の形態１によれば、保存領域管理部４３は、求められた更新頻度に対応して必要な表示内容保存領域を動的に生成し、破棄することを更新頻度別保存部４４に要求している。したがって、更新頻度に対応して必要な表示内容保存領域のみを確保することが可能となり、表示内容保存領域として消費されるメモリ容量を抑えることができる。また、不要な合成処理を省略することができ、その結果、さらに高速な表示更新処理を実現することが可能となる。
【００４８】
（実施の形態２）
図６は実施の形態２において保存領域管理部４３が行う描画先決定処理を示すフローチャートである。上記実施の形態１では、図５のステップＳ３４において、表示内容保存領域に描画される表示要素が変更された場合、表示内容保存領域に描画されていた全ての表示要素を描画対象に追加するものとした。つまり、図３（Ｃ）に示す状態から図３（Ｂ）に示す状態に変化したとき、保存領域管理部４３は、第１表示内容保存領域４４１に描画されている表示要素Ａ，Ｂの両方とも描画対象に追加した。これに対して、この実施の形態２では、重なりがあるか否かを判定し、重なりがあって再描画が必要な表示要素のみを描画対象に追加している。以下、実施の形態１と異なる点を中心に説明する。
【００４９】
図６において、ステップＳ５０〜Ｓ５２，Ｓ５５〜Ｓ６０は、図５のステップＳ３１〜Ｓ３３，Ｓ３５〜Ｓ４０と同様である。ステップＳ５２でＹＥＳのとき、保存領域管理部４３は、変更があった表示要素の表示内容保存領域上での座標や大きさに基づいて重なり判定を行い（ステップＳ５３）、変更があった表示要素と重なる位置に描画されているため再描画が必要な表示要素だけを描画対象に追加する（ステップＳ５４）。具体的には、例えば図３（Ｃ）に示す状態から図３（Ｂ）に示す状態に変化したとき、保存領域管理部４３は、第１表示内容保存領域４４１に描画されている表示要素Ａ，Ｂと表示要素Ｃとの重なり判定を行い、表示要素Ａ，Ｂのうちで、表示要素Ｃと重なる位置に描画されている表示要素のみを描画対象に追加する。
【００５０】
この実施の形態２によれば、重なりがあって再描画が必要な表示要素のみが描画対象に追加されるため、重なり判定を行わない上記実施の形態１に比べて、表示更新処理をより高速に行うことができる。
【００５１】
（実施の形態３）
図７は実施の形態３において保存領域管理部４３が行う描画先決定処理を示すフローチャート、図８は実施の形態３において保存領域管理部４３が保持する保存領域情報４３１を示す図である。なお、実施の形態３における表示装置の構成は、図１に示した実施の形態１における構成と同様である。以下、実施の形態１と異なる点を中心に説明する。
【００５２】
上記実施の形態１では、描画部４１および合成部４５は、表示要素間の前後関係はＺバッファを用いて判定しており、属性の更新頻度が同じ更新頻度範囲に属する表示要素は、全て同じ表示内容保存領域に描画するものとした。これに対して、この実施の形態３では、描画部４１および合成部４５は、Ｚバッファを用いず、表示要素間の前後関係に合わせて描画順序を変える必要があるＺソート法を用いて表示要素の描画および合成を行う。そこで、保存領域管理部４３は、同じ更新頻度範囲に属する２つの表示要素が、違う更新頻度範囲に対応する表示内容保存領域に描画される表示要素の前後にそれぞれ分かれて描画しないといけないときは、さらに表示内容保存領域を分割する。
【００５３】
図７において、ステップＳ７１〜Ｓ７９は、それぞれ図５のステップＳ３１〜Ｓ３９と同様である。但し、ステップＳ７３でＮＯのときはステップＳ８２に進み、ステップＳ７８でＮＯのときはステップＳ８０に進む。ステップＳ７９に続いて、保存領域管理部４３は、描画される表示要素が複数ある表示内容保存領域があるか否かを判定する（ステップＳ８０）。そのような表示内容保存領域がないときは（ステップＳ８０でＮＯ）、ステップＳ８２に進む。一方、描画される表示要素が複数ある表示内容保存領域が存在するときは（ステップＳ８０でＹＥＳ）、保存領域管理部４３は、それらの表示要素について他の表示内容保存領域の表示要素との前後関係を判定し、必要な表示内容保存領域の生成を更新頻度別保存部４４に要求する（ステップＳ８１）。
【００５４】
具体的には、例えば図３（Ｃ）の状態になったとき（ステップＳ８０でＹＥＳ）、保存領域管理部４３は、同一の更新頻度範囲の表示要素Ａ，Ｂと、異なる更新頻度範囲の表示要素Ｃとの前後関係をそれぞれ判定する。つまり表示要素Ａと表示要素Ｃとの前後関係を判定するとともに、表示要素Ｂと表示要素Ｃとの前後関係を判定する。そして、表示要素Ａ，Ｂの表示要素Ｃに対する前後関係が互いに異なる場合、例えば表示要素Ａが表示要素Ｃの前方に位置し、表示要素Ｂが表示要素Ｃの後方に位置する場合には、同一の更新頻度範囲に対応する表示内容保存領域を更に生成する（ステップＳ８１）。すなわち、図８に示すように、更新頻度の範囲０≦Ｆ＜１に対応する表示内容保存領域として、第１表示内容保存領域に加えて、第４表示内容保存領域の生成を更新頻度別保存部４４に要求する。続くステップＳ８２は図５のステップＳ４０と同様である。
【００５５】
この実施の形態３によれば、異なる更新頻度範囲の表示要素と前後関係が互いに異なる複数の表示要素が同一の更新頻度範囲に存在するときは、複数の表示内容保存領域を生成しているため、描画部４１および合成部４５は、Ｚソート法を用いて表示要素の描画および合成をそれぞれ好適に行うことができる。
【００５６】
（実施の形態４）
図９は実施の形態４において保存領域管理部４３が保持する保存領域情報４３２を示す図、図１０は実施の形態４におけるフレームバッファ５を示す図で、合成部４５による合成処理を説明するための図である。なお、実施の形態４における表示装置の構成は、図１に示した実施の形態１における構成と同様である。また、基本的な処理の流れは、図４、図５で示した実施の形態１と同様である。以下、実施の形態１と異なる点を中心に説明する。
【００５７】
上記実施の形態１では、表示内容保存領域のメモリ容量として、表示部３の画面全体の表示内容を保持できる容量（つまりフレームバッファ５と同一容量）のメモリを確保するものとした。これに対して、この実施の形態４では、表示内容保存領域に描画される表示要素の描画領域を保存できる必要最小限の容量を確保し、合成部４５の合成処理において、表示部３の画面上のどの位置に各表示内容保存領域の表示要素を表示するかに合わせて、オフセットを考慮した合成を行う。
【００５８】
具体的には、例えば図９に示すように、描画される表示要素として表示要素Ａを設定するときは、保存領域管理部４３は、表示要素Ａの属性に基づき、表示要素Ａの描画領域の大きさ、形状や表示部３における描画位置などに関する情報を取得する。そして、保存領域管理部４３は、表示要素Ａの描画領域の大きさに応じた容量の第１表示内容保存領域４４１の生成を更新頻度別保存部４４に要求する。また、保存領域管理部４３は、保存領域情報４３２として、表示要素Ａ（第１表示内容保存領域４４１）の形状や描画位置などに関する情報を保持する。そして、保存領域管理部４３は、表示要素Ａ（第１表示内容保存領域４４１）の形状や描画位置などに関する情報を、更新頻度別保存部４４を介して合成部４５に通知する。
【００５９】
合成部４５は、図１０に示すように、表示要素Ａ（第１表示内容保存領域４４１）の形状や描画位置などに関する情報に基づき、フレームバッファ５に第１表示内容保存領域４４１の内容を描画して合成処理を行う。具体的には、合成部４５は、表示要素Ａ（第１表示内容保存領域４４１）の形状（図９および図１０では矩形）、左上隅座標Ｑ1（X1，Y1）、右下隅座標Ｑ2（X2，Y2）、およびフレームバッファ５の左上隅座標Ｐ（X0，Y0）などの情報を考慮して、合成処理を行う。
【００６０】
この実施の形態４によれば、更新頻度別保存部４４は、表示内容保存領域として、表示要素の描画領域の大きさに応じたメモリ容量を確保しているため、上記実施の形態１に比べて、表示内容保存領域として必要なメモリ消費量を低減することが可能になる。したがって、更新頻度範囲の区分数が多くなった場合でも、表示内容保存領域として必要なメモリ容量を抑えることができる。なお、この実施の形態４では、保存領域管理部４３は、表示要素Ａ（第１表示内容保存領域４４１）の描画位置などに関する情報を、更新頻度別保存部４４を介して合成部４５に通知しているが、直接、合成部４５に通知するようにしてもよい。
【００６１】
（その他）
上記実施の形態１では、更新頻度演算部４２は、現在計算した更新頻度と既に更新頻度情報４２０に記載されている過去の更新頻度との平均をとるものとしたが、各値に重み付けを行って、過去、現在の値のどちらを重視するかを設定できるようにしても良い。また、過去の更新頻度がＦ＝０［回／分］の場合は、平均をとらず現在の値をそのまま更新頻度に設定するようにしても良い。さらには、過去の更新頻度と現在の更新頻度の間に、一定の閾値以上の差がある場合は、状況が変化したと判断し、平均を取らずに現在の値だけを用いるようにしても良い。
【００６２】
また、上記実施の形態１では、更新頻度演算部４２は、過去の実績値から将来における更新頻度を予測するものとしたが、過去の実績値だけを用いて、更新頻度を決定しても良い。この場合は、図１１に示すように、更新頻度情報４２１に更新回数を保持する領域を設けており、更新頻度演算部４２は、一定時間Ｔの経過を報知するタイマー機能を有している。図１２は更新頻度演算部４２が行う更新頻度決定の別の例を示すフローチャートである。この図１２に示す動作は、図４に示すステップＳ２に代えて、図４に示す処理とは別に実行される。
【００６３】
図１２において、初回描画時に属性が更新（図４に示すステップＳ１）されたときに（ステップＳ９１でＹＥＳ）、一定時間Ｔの経過を報知するタイマーをスタートさせ（ステップＳ９２）、更新があった表示要素（図１１では表示要素Ｃ）の更新回数を１回に設定する（ステップＳ９３）。次に一定時間が経過するまでの間に（ステップＳ９４でＮＯ）、描画が終了せず（ステップＳ９５でＮＯ）、再度描画処理が行われて属性が更新された場合は（ステップＳ９６でＹＥＳ）、更新があった表示要素の更新回数を１ずつ増加させ（ステップＳ９７）、ステップＳ９４に戻る。一方、描画が終了すると（ステップＳ９５でＹＥＳ）、この処理を終了し、描画処理が行われなければ（ステップＳ９６でＮＯ）、ステップＳ９４に戻る。
【００６４】
その後、初回描画時にスタートさせたタイマーが一定時間の経過を報知すると（ステップＳ９４でＹＥＳ）、それまで記録されていた更新回数Ｎを一定時間Ｔで割り、更新頻度Ｆ１（＝Ｎ／Ｔ）として設定する（ステップＳ９８）。最後に、更新回数を０回にクリアして（ステップＳ９９）、タイマーを再スタートし（ステップＳ１００）、ステップＳ９４に戻って、同様の処理を繰り返す。
【００６５】
なお、この際も、上記実施の形態１と同様に、前回設定されていた更新頻度と平均を取るようにしても良い。また、各値に重み付けを行うようにしても良いし、状況が変化した場合のみ平均をとらずに最新の値だけを用いるようにしても良い。
【００６６】
また、上記実施の形態１では、更新頻度情報４２０において、表示要素毎に更新頻度を保持するものとしたが、複数の表示要素をまとめてグループ化し、そのグループごとに更新頻度を保持するようにしてもよい。また、表示要素名は、当該表示要素を特定するＩＤやデータを指し示すポインタ（当該表示要素が保存されている表示要素保存部２のアドレス）であってもよい。また、上記実施の形態１では、例えば図２（Ａ）に示すように、表示要素毎に更新時刻を保持するものとしたが、更新時刻毎にまとめて表示要素を保持するようにしてもよい。
【００６７】
また、上記実施の形態１では、表示内容保存領域を全て動的に生成、破棄する場合の例を示したが、更新頻度Ｆ＝０［回／分］の表示要素の描画先となる表示内容保存領域（上記実施の形態１では第１表示内容保存領域４４１）など、あらかじめ利用される可能性が高い表示内容保存領域は、初期状態として生成済みにしておき、破棄対象からも除外するようにしても良い。
【００６８】
また、上記実施の形態１では、図５のステップＳ３８、Ｓ３９において、何も描画されない表示内容保存領域が存在した場合は即座に破棄するものとしたが、表示内容保存領域の破棄後に直ぐ更新頻度が変更され表示内容保存領域が再生成されるような状況では、描画される表示要素がなくなった後、一定時間経過したタイミングで破棄するようにしても良い。
【００６９】
また、上記実施の形態１では、更新頻度演算部４２は、表示要素の属性の変更を動的に検出することで更新頻度を決定するものとしたが、アニメーションなど、開始から終了まで一定の更新間隔で更新されることが分かる場合には、アニメーション開始時に、描画部４１が、直接、更新頻度演算部４２が保持する更新頻度情報４２０の表示要素の更新頻度をアニメーションに合わせた値に設定し、アニメーション終了時に設定した値をクリアするようにしても良い。
【００７０】
また、上記実施の形態１では、表示部３の１つの画面上で表示要素が更新される場合を想定し、保存領域情報４３０と更新頻度情報４２０とを１つずつ持つものとしたが、画面遷移などにより表示部３の画面上に表示される表示要素が切り替えられる場合においては、画面毎に保存領域情報４３０と更新頻度情報４２０とを用意し、画面遷移に合わせて、これらを切り替えるようにしても良い。その際、画面遷移が行われるときに、更新頻度別保存部４４が保持する表示内容保存領域は破棄し、保存領域情報４３０の表示内容保存領域生成状態は未生成に変更するが、その他の情報はそのまま保持しておき、再度同じ画面に戻ってきた場合に、継続して利用できるようにしても良い。
【００７１】
また、上記実施の形態１では、表示要素の属性の更新頻度が異なる更新頻度範囲に属する場合は、必ず表示内容保存領域を分割する（つまり別の表示内容保存領域を生成する）ものとしたが、これに限られない。図１３は保存領域管理部４３が行う描画先決定処理の別の例を示すフローチャートである。
【００７２】
図１３において、ステップＳ１０１〜Ｓ１０５は、図５のステップＳ３１〜Ｓ３５と同様である。そして、ステップＳ１０５で各表示要素の描画先を決定した後、表示内容保存領域を分割するか否かを判定する（ステップＳ１０６）。このとき、更新頻度が低い範囲に対応する表示内容保存領域に描画される表示要素が一定数より少ない場合は、分割後合成する（つまり別の表示内容保存領域に表示要素を描画した後でそれらを合成する）より、更新頻度が低い表示要素も含めて再描画する方が高速になると判断し（ステップＳ１０７でＹＥＳ）、ステップＳ３１〜Ｓ３５の処理をキャンセルし、分割を中止する（ステップＳ１０８）ようにしてもよい。なお、分割をキャンセルしない場合は（ステップＳ１０７でＮＯ）、ステップＳ１０９に進む。ステップＳ１０９〜Ｓ１１３は、図５のステップＳ３６〜Ｓ４０と同様である。
【００７３】
ステップＳ１０６，Ｓ１０７では、更新頻度が低い範囲に対応する表示内容保存領域に描画される表示要素の数だけではなく、表示内容保存領域に描画される表示要素の描画面積の合計や描画処理時間の合計が一定数より少ない場合も同様に分割を中止するようにしても良い。さらには、各表示要素を表示内容保存領域に描画する時間と各表示内容保存領域を合成して表示する時間を計測しておき、計測した時間を基にステップＳ１０５で判定した分割を行った際の描画処理時間を算出し、算出した描画処理時間が分割しない場合の描画処理時間よりも一定時間以上短くならない場合には、分割処理を中断するようにしても良い。
【００７４】
また、上記各実施の形態において、描画部４１、更新頻度演算部４２、保存領域管理部４３、更新頻度別保存部４４および合成部４５の各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されても良いし、一部又は全てを含むように１チップ化されても良い。
【００７５】
ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００７６】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
【００７７】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
【００７８】
なお、描画部４１、更新頻度演算部４２、保存領域管理部４３、更新頻度別保存部４４および合成部４５の各機能ブロックを実現する集積回路は、例えば、入力部１、表示要素保存部２、表示部３、表示内容保存領域（例えば第１〜第３表示内容保存領域４４１〜４４３）およびフレームバッファ５を備えた情報処理装置に接続されて用いられる。
【００７９】
また、図１に示す表示装置の具体的な適用例としては、例えばテレビやレコーダなどのリモコンを用いて、テレビ（表示部３）の画面に表示される内容を更新する形態を挙げることができる。
【００８０】
なお、上述した具体的実施形態には以下の構成を有する発明が主に含まれている。すなわち、本発明の一局面に係る表示制御装置は、表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算部と、前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けて保持する更新頻度別保存部と、前記更新頻度演算部により前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理部と、前記保存領域管理部により前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画部と、前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成部とを備える。
【００８１】
この構成によれば、表示に関する属性の更新頻度を表示要素ごとに求め、その属性の更新頻度が属する更新頻度範囲に対応する表示内容保存領域に、各表示要素の表示内容を描画しているため、更新頻度に応じて必要最低限の描画処理のみを実行することが可能となり、高速な表示更新処理を行うことが可能となる。
【００８２】
また、上記の表示制御装置において、前記描画部は、前記表示要素を前記表示部に表示する際の表示内容を変更するときに前記属性を更新することが好ましい。
【００８３】
この構成によれば、表示に関する属性は、表示要素が表示部に表示される際の表示内容が変更されるときに更新されるため、属性の更新頻度は、表示要素の表示内容が変更される頻度に相当する。したがって、属性の更新頻度を表示要素ごとに求めることにより、各表示要素を描画することが必要な頻度を求めることが可能になっている。
【００８４】
また、上記の表示制御装置において、前記保存領域管理部は、前記更新頻度演算部により求められた前記属性の更新頻度が属する前記更新頻度範囲に対応する前記表示内容保存領域が前記更新頻度別保存部に保持されていないときは、当該表示内容保存領域の生成を前記更新頻度別保存部に要求し、前記更新頻度別保存部により保持されている前記表示内容保存領域のうちで、対応する前記更新頻度範囲に属する前記属性の更新頻度が前記更新頻度演算部により求められていないときは、当該更新頻度範囲に対応する前記表示内容保存領域の破棄を前記更新頻度別保存部に要求することが好ましい。
【００８５】
この構成によれば、求められた属性の更新頻度が属する更新頻度範囲に対応する表示内容保存領域が生成され、対応する更新頻度範囲に属する属性の更新頻度が求められていない表示内容保存領域は破棄されるため、表示内容保存領域として消費される保存容量を必要最小限に抑えることが可能となる。
【００８６】
また、上記の表示制御装置において、前記更新頻度別保存部は、前記表示内容保存領域として、一の更新頻度範囲に対応する一の表示内容保存領域、および他の更新頻度範囲に対応する他の表示内容保存領域を保持し、前記保存領域管理部は、一の表示要素の描画先を前記一の表示内容保存領域から前記他の表示内容保存領域に変更したときに、前記一の表示要素と前記一の表示内容保存領域に保存されている他の表示要素との重なりの有無、および前記一の表示要素と前記他の表示内容保存領域に保存されている他の表示要素との重なりの有無を判定し、重なりがあるために再描画が必要な表示要素を前記描画部に通知し、前記描画部は、前記一の表示内容保存領域および前記他の表示内容保存領域に保存されている他の表示要素のうち、前記保存領域管理部から通知された再描画が必要な表示要素のみを描画先の前記表示内容保存領域に再描画することが好ましい。
【００８７】
この構成によれば、一の表示要素の描画先を一の表示内容保存領域から他の表示内容保存領域に変更したときに、一の表示内容保存領域および他の表示内容保存領域にそれぞれ保存されている他の表示要素のうち、一の表示要素との重なりがあるために再描画が必要な表示要素のみが表示内容保存領域に再描画される。したがって、重なりの有無を判定することなく全ての他の表示要素を各表示内容保存領域に再描画する場合に比べて、表示更新処理に要する時間を低減することができる。
【００８８】
また、上記の表示制御装置において、前記更新頻度別保存部は、前記表示内容保存領域として、第１の更新頻度範囲に対応する第１の表示内容保存領域、前記第１の更新頻度範囲に対応する前記第１の表示内容保存領域と異なる第２の表示内容保存領域、および前記第１の更新頻度範囲と異なる第２の更新頻度範囲に対応する第３の表示内容保存領域を保持し、前記更新頻度演算部は、前記表示要素として、第１、第２および第３表示要素の属性の更新頻度をそれぞれ求め、前記保存領域管理部は、前記第１および第２の表示要素の前記属性の更新頻度がいずれも前記第１の更新頻度範囲に属し、前記第３の表示要素の前記属性の更新頻度が前記第２の更新頻度範囲に属する場合には、前記第３の表示内容保存領域を前記第３の表示要素の描画先として決定し、前記３の表示要素に対する前記第１および第２の表示要素の前後関係をそれぞれ判定し、前記第１の表示要素と前記第２の表示要素との前記第３の表示要素に対する前後関係が異なるときは、前記第１および第２の表示内容保存領域の一方を前記第１の表示要素の描画先として決定し、他方を前記第２の表示要素の描画先として決定することが好ましい。
【００８９】
この構成によれば、第１の表示要素と第２の表示要素との第３の表示要素に対する前後関係が異なるとき、例えば第１の表示要素が第３の表示要素の前方で、第２の表示要素が第３の表示要素の後方のときは、第１および第２の表示内容保存領域の一方が第１の表示要素の描画先として決定され、他方が第２の表示要素の描画先として決定される。また、第３の表示内容保存領域が第３の表示要素の描画先として決定される。つまり、第１〜第３の表示要素が、それぞれ異なる表示内容保存領域に描画される。したがって、前後関係に応じて表示要素の描画順序を変更する必要がある構成、例えば後方から順番に表示要素を描画する構成が採用されている場合であっても、第１〜第３の表示要素がそれぞれ異なる表示内容保存領域に描画されているため、各表示内容保存領域の内容を好適に合成することができる。
【００９０】
また、上記の表示制御装置において、前記表示内容保存領域は、前記表示要素の前記表示内容を保存できる必要最小限の保存容量を有し、前記保存領域管理部は、前記表示要素の前記属性に基づき、前記表示要素を前記表示部に表示する際の前記表示部における位置情報を取得して前記合成部に通知し、前記合成部は、前記保存領域管理部から通知された前記位置情報を用いて、前記表示内容保存領域の内容を合成することが好ましい。
【００９１】
この構成によれば、表示内容保存領域は、表示要素の表示内容を保存できる必要最小限の保存容量を有しているため、表示部の画面全体の表示内容を保存できる保存容量を有する場合に比べて、表示内容保存領域として消費される保存容量を低減することが可能となっている。したがって、更新頻度範囲の区分数が多くなった場合でも、表示内容保存領域として消費される保存容量の増大を抑制することができる。
【００９２】
本発明の他の局面に係る表示制御方法は、表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算ステップと、前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けて準備する保存領域準備ステップと、前記更新頻度演算ステップにおいて前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理ステップと、前記保存領域管理ステップにおいて前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画ステップと、前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成ステップとを含む。
【００９３】
この構成によれば、表示に関する属性の更新頻度を表示要素ごとに求め、その属性の更新頻度が属する更新頻度範囲に対応する表示内容保存領域に、各表示要素の表示内容を描画しているため、更新頻度に応じて必要最低限の描画処理のみを実行することが可能となり、高速な表示更新処理を行うことが可能となる。
【００９４】
本発明の他の局面に係る表示制御プログラムは、コンピュータを、表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算部と、前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けて保持する更新頻度別保存部と、前記更新頻度演算部により前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理部と、前記保存領域管理部により前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画部と、前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成部として機能させる。
【００９５】
この構成によれば、表示に関する属性の更新頻度を表示要素ごとに求め、その属性の更新頻度が属する更新頻度範囲に対応する表示内容保存領域に、各表示要素の表示内容を描画しているため、更新頻度に応じて必要最低限の描画処理のみを実行することが可能となり、高速な表示更新処理を行うことが可能となる。
【００９６】
本発明の他の局面に係る集積回路は、表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度を前記表示要素ごとに求める更新頻度演算回路と、前記表示要素を前記表示部に表示する際の表示内容を保存するための表示内容保存領域を、更新頻度を所定範囲ずつに区分した更新頻度範囲ごとにそれぞれ対応付けた前記表示内容保存領域のうち、前記更新頻度演算回路により前記表示要素ごとに求められた前記属性の更新頻度がそれぞれ属する前記更新頻度範囲に対応する前記表示内容保存領域を、前記各表示要素の描画先として決定する保存領域管理回路と、前記保存領域管理回路により前記各表示要素の描画先として決定された前記表示内容保存領域に前記各表示要素の前記表示内容をそれぞれ描画する描画回路と、前記各表示要素の前記表示内容が描画された前記表示内容保存領域の内容を合成して前記表示部に表示する合成回路とを備える。
【００９７】
この構成によれば、表示に関する属性の更新頻度を表示要素ごとに求め、その属性の更新頻度が属する更新頻度範囲に対応する表示内容保存領域に、各表示要素の表示内容を描画しているため、更新頻度に応じて必要最低限の描画処理のみを実行することが可能となり、高速な表示更新処理を行うことが可能となる。
【００９８】
本発明によれば、表示部に表示される画面を構成する表示要素の表示に関する属性の更新頻度が属する更新頻度範囲に対応する表示内容保存領域に表示要素の表示内容が描画されるため、実際の表示内容の更新頻度に応じて、更新が必要な表示内容保存領域への描画処理のみを行うことで、高速な表示更新処理を実現することができる。
【産業上の利用可能性】
【００９９】
本発明にかかる表示制御装置、表示制御方法、表示制御プログラムおよび集積回路は、アニメーションやユーザ操作等により画面上の一部の表示内容を更新する表示制御機器等として有用である。
【図１】
0005507681.tif 000002
【図２】
0005507681.tif 000003
【図３】
0005507681.tif 000004
【図４】
0005507681.tif 000005
【図５】
0005507681.tif 000006
【図６】
0005507681.tif 000007
【図７】
0005507681.tif 000008
【図８】
0005507681.tif 000009
【図９】
0005507681.tif 000010
【図１０】
0005507681.tif 000011
【図１１】
0005507681.tif 000012
【図１２】
0005507681.tif 000013
【図１３】
0005507681.tif 000014