(57)【要約】【課題】簡易なハードウェア構成で、かつ特別なソフトウェア処理を必要とせず、高速アクセス可能なオンチップメモリを効率的に利用できる情報処理装置を提供する。【解決手段】データ処理手段３は、外部インタフェース６を介して外部記憶装置１０の所定のアドレス範囲に一様にアクセスして読み出した一連のデータを所望の情報処理に利用する。判定手段１１は、データ処理手段３によって外部記憶装置１０から読み出されたデータを内部記憶手段４に書き込むべきか否か判定し、内部記憶手段４に書き込むべきと判定したデータを内部記憶手段４に書き込む。データ処理手段３は、外部記憶装置１０の同じアドレス範囲のデータを再び読出すとき、その代わりに内部記憶手段４からデータを読出す。【選択図】      図１
2005018428.tif 000002
【特許請求の範囲】
【請求項１】
外部インタフェースを介して接続された外部記憶装置を用いて動作する情報処理装置であって、
前記外部インタフェースを介さずにアクセス可能な内部記憶手段と、
前記外部インタフェースを介して前記外部記憶装置の所定のアドレス範囲に一様にアクセスして読み出した一連のデータを所望の情報処理に利用する少なくとも１つのデータ処理手段と、
前記データ処理手段によって前記外部記憶装置から読み出された前記データを前記内部記憶手段に書き込むべきか否か判定し、該内部記憶手段に書き込むべきと判定したデータを、所定のルールに従ってアドレス変換して前記内部記憶手段の変換されたアドレスに書き込む判定手段とを有する情報処理装置。
【請求項２】
前記データ処理手段は、前記外部記憶装置の前記アドレス範囲のデータを更新した旨の通知を他のデータ処理手段から受けた後の初回はアドレス変換せずに前記外部記憶装置にアクセスして前記データを読出し、
前記判定手段は、前記データ処理手段がアドレス変換せずに前記外部記憶装置の前記アドレス範囲から読み出した前記データを前記内部記憶手段に書き込む、請求項１記載の情報処理装置。
【請求項３】
前記データ処理手段は、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記ルールに従ってアドレス変換して前記内部記憶手段から前記データを読出す、請求項２記載の情報処理装置。
【請求項４】
前記データ処理手段は、前記外部記憶装置の複数のアドレス範囲を切り替えてデータを読み出しており、前記アドレス範囲を切り替えた後の初回はアドレス変換せずに前記外部記憶装置から前記データを読出し、同じ前記アドレス範囲のデータを繰り返し読み出す際の２回目以降はアドレス変換して前記内部記憶手段から前記データを読み出し、
前記判定手段は、前記データ処理手段がアドレス変換せずに前記外部記憶装置から読み出した前記データを前記内部記憶手段に上書きする、請求項１記載の情報処理装置。
【請求項５】
前記アドレス範囲の各々に対して部分アドレス範囲が予め定められており、
前記データ処理手段は、該部分アドレス範囲以外にデータの変更がなければ、前記アドレス範囲を切り替えた後の初回には、該部分アドレス範囲についてだけアドレス変換せずに前記外部記憶装置から前記データを読出し、前記アドレス範囲の前記部分アドレス範囲以外の部分についてはアドレス変換して前記内部記憶手段から前記データを読出す、請求項４記載の情報処理装置。
【請求項６】
前記判定手段によって前記内部記憶手段に書き込まれるデータを一旦蓄積した後に該内部記憶手段に書き込むバッファ手段をさらに有する請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記バッファ手段は、一旦蓄積した前記データを、前記内部記憶手段への書き込みができない状態の間、保持し、書き込みができる状態となった後に前記内部記憶手段に書き込む、請求項６に記載の情報処理装置。
【請求項８】
外部インタフェースを介して接続された外部記憶装置を用いて動作する情報処理装置であって、
前記外部インタフェースを介さずにアクセス可能な内部記憶手段と、
前記外部インタフェースを介して前記外部記憶装置の所定のアドレス範囲に一様にアクセスして読み出した一連のデータを所望の情報処理に利用し、前記内部記憶手段に書き込むべきと判定された旨の通知を受けると、前記データを、所定のルールに従ってアドレス変換して前記内部記憶手段の変換されたアドレスに書き込む少なくとも１つのデータ処理手段と、
前記データ処理手段によって前記外部記憶装置から読み出された前記データを前記内部記憶手段に書き込むべきか否か判定し、該内部記憶手段に書き込むべきと判定すると、その旨を前記データ処理手段に通知する判定手段とを有する情報処理装置。
【請求項９】
前記データ処理手段は、前記判定手段にて前記内部記憶手段に書き込むべきと判定された前記データに対して前記所望の情報処理のための演算を行った結果のデータを前記内部記憶手段に書き込む、請求項８記載の情報処理装置。
【請求項１０】
前記データ処理手段は、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記ルールに従ってアドレス変換して前記内部記憶手段から前記データを読出し、前記演算をせずに前記所望の情報処理に用いる、請求項９に記載の情報処理装置。
【請求項１１】
前記データ処理手段の各々に固有の識別番号が割り当てられており、
前記判定手段は、所定の識別番号のデータ処理手段により読み出されたデータのみを前記内部記憶手段に書き込むべきと判定する、請求項１〜１０のいずれか１項に記載の情報処理装置。
【請求項１２】
前記データ処理手段は、所定時間内にデータが読み出されないときに間引き処理としてアドレスを間引いてデータを読出すことによりリアルタイム性を確保する機能を有している場合、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記アドレス範囲内に前記間引き処理により更新されていないデータが残っていれば、前記アドレス範囲全体についてアドレス変換せずに再び前記外部記憶装置から前記データを読出す、請求項３、４、または１０に記載の情報処理装置。
【請求項１３】
前記データ処理手段は、所定時間内にデータが読み出されないときに間引き処理としてアドレスを間引いてデータを読出すことによりリアルタイム性を確保する機能を有している場合、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記アドレス範囲内に前記間引き処理により更新されていないデータが残っていれば、間引かれたアドレスのみについてアドレス変換せずに再び前記外部記憶装置から前記データを読出す、請求項３、４、または１０に記載の情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、特定領域の外部メモリに対するアクセスが繰り返し生じるような用途に用いられる、オンチップメモリを備えたプロセッサ、ＡＳＩＣ、ＳＯＣなどに関し、特に、ＬＣＤまたはＣＲＴなどの画像表示装置に対して画面表示を行う機能を備えた情報処理装置に関する。
【０００２】
【従来の技術】
ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）またはＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などの画面に画像を表示するために、フレームバッファと呼ばれる、各画素に対応した輝度や色の情報を格納したメモリからデータが読み出され、ＬＣＤまたはＣＲＴに与えられる。通常、このフレームバッファへのアクセスは１秒間に６０〜７５回程度繰り返される。
【０００３】
単純な構成では、画面を書き換えるとき（情報更新時）のフレームバッファへのライトアクセスと、フレームバッファからのデータをＬＣＤまたはＣＲＴに与えるときのリードアクセスとが競合すると画面が乱れるという現象が生じる。そのため、通常、フレームバッファを２画面分以上用意しておき、書き込み側のバッファと読み出し側のバッファを切り替えながら使用する。このようなバッファの構造は、ダブルバッファ構造と呼ばれている。
【０００４】
一方、近年の、画像表示機能を有する携帯端末用アプリケーションプロセッサでは、アプリケーションの高度化、集積度向上、実装上の制約などの理由から、画像出力用のＬＣＤコントローラ、データ転送用のＤＭＡコントローラ、画像処理用のプロセッサまたはＤＳＰ、およびオンチップメモリなどが１チップに集積されている。
【０００５】
図１０は、従来の典型的なアプリケーションプロセッサの構成をブロック図である。図１０を参照すると、従来のアプリケーションプロセッサのチップには、プロセッサコア１００１、周辺能動コア１００２、ＬＣＤ表示制御装置１００３、オンチップメモリ１００４、周辺受動コア１００５、およびメモリインタフェース１００６のコアが集積されている。そして、これらがオンチップアドレスバス１００７、オンチップデータバス１００８を介して相互に接続されている。また、ＬＣＤ表示制御装置３は、チップ外のＬＣＤパネル１００９と接続される。メモリインタフェース６はチップ外の外部メモリ１０１０と接続される。
【０００６】
プロセッサコア１００１は、コア内にオンチップのキャッシュを持つ場合もある。
【０００７】
オンチップメモリ１００４は、ソフトウェアによって用途が決定され、プログラムコード領域、ワーク領域、フレームバッファ領域などに用いられる。
【０００８】
ＬＣＤ表示制御装置１００３は、フレームバッファの開始アドレスとフレームバッファサイズの情報を内部レジスタ（不図示）に保持しており、ＬＣＤパネル１００９の表示速度に合わせて、オンチップメモリ１００４または外部メモリ１０１０上に配置されたフレームバッファからデータを読み出し、ＬＣＤパネル１００９に与える。
【０００９】
フレームバッファがダブルバッファ構成の場合、ＬＣＤ表示制御装置１００３は、２カ所以上のフレームバッファのアドレスを保持し、画像の表示に用いるフレームバッファをプロセッサコア１００１によって設定する。そして画像を書き換えるときに、この設定を変更することによって、ちらつき等の乱れのない画像の表示を実現する。
【００１０】
図１１は、画面切り替えについて説明するための図である。この例ではフレームバッファＡ、Ｂの２つのフレームバッファがある。一方が新たな画像のデータの作成に用いられているとき、他方は画像の表示に用いられる。画像のデータの作成に用いられているフレームバッファを描画フレームバッファと称し、画像の表示に用いられているフレームバッファを表示フレームバッファと称する。描画フレームバッファと表示フレームバッファとは交互に切り替えられる。
【００１１】
これにより、ＬＣＤ表示制御装置１００３が一方のフレームバッファを用いて１秒間に６０枚の画面のデータをＬＣＤパネル１００９に与えるのと並行して、例えば、プロセッサコア１が他のフレームバッファに新しい画像のデータを作成することができる。
【００１２】
図１１を参照すると、フレームバッファの切り替えは６７ｍｓ（１／１５秒）毎に行われる。最初、ＬＣＤ表示制御装置１００３は外部メモリ１０１０に配置されたフレームバッファＡを表示フレームバッファとしてデータの表示に用いる。ＬＣＤパネル１００９は、約１６ｍｓに１回の画像を表示することが必要なので、ＬＣＤ表示制御装置１００３は、フレームバッファＡのデータを数回繰り返し読み出してＬＣＤパネル１００９に与える。この間、プロセッサコア１００１は、外部メモリ１０１０の別アドレス空間に配置されたフレームバッファＢを描画フレームバッファとして、そこに次に表示する画像を描画する。６７ｍｓが経過すると、フレームバッファＢが表示フレームバッファとなり、フレームバッファＡが描画フレームバッファとなる。
【００１３】
近年、画面サイズや表示色の増大に伴ってフレームバッファへのアクセス回数が増え、このアクセスによりバスの混雑が目立ってきた。
【００１４】
オンチップメモリ１００４は、高速なアクセスが可能であるが、チップ面積の制約から容量には制限がある。このため、複数のフレームバッファをオンチップメモリ４に割り付けることは難しい。
【００１５】
実際、オンチップメモリ１００４は、大量データの処理が必要な高負荷アプリケーションが実行されるとき、命令メモリや作業用の一時ワーク領域として用いられる。そして、必要があれば、オンチップメモリ１００４と外部メモリ１０１０のデータがやりとりされる。オンチップメモリ１００４にアクセス頻度の高いデータを配置することにより、アクセス速度の遅い外部メモリ１０１０へのアクセス回数を減らし、全体として処理速度を向上させることができる。
【００１６】
外部メモリ１０１０とオンチップメモリ１００４とのデータを交換する方法には、後述するキャッシュメモリのようにハードウェアがソフトウェアに対して暗黙的に行う方法や、ソフトウェアからＤＭＡコントローラを起動して行う方法などがある。
【００１７】
キャッシュメモリの技術は、プログラムコード中のアクセス先のアドレスの局所性を利用するものであり、ハードウェアが大容量のメモリの内容の一部を小容量の高速なメモリにコピーすることにより、全体として高速化を図るというものである。キャッシュメモリの技術は、マイクロプロセッサをはじめとして幅広く利用されている。
【００１８】
キャッシュメモリの技術においては、プログラムによって参照されたデータを含むその近傍のデータを一括して高速メモリにコピーすると共に、コピーしたデータのアドレスを保持しておく。そして、それに続くアクセスにおいて、アクセス先のアドレスと、保持しておいたアドレスとを比較し、一致すれば大容量メモリのデータの代わりに高速メモリのデータを供給する。
【００１９】
従来から、フレームデータをキャッシュメモリによって効率的に扱う表示制御システムが知られている（例えば、特許文献１参照）。図１２は、従来の表示制御システムの構成の一例を示すブロック図である。
【００２０】
図１２を参照すると、従来の表示制御システムは、表示コントローラ１２０７およびＣＰＵ１２０１がキャッシュコントローラ１２０２を介してキャッシュメモリ１２０４に接続されている。ＣＲＴ１２０８に表示されるデータがキャッシュメモリ１２０４に存在すれば、メインメモリ１２０６ａの一部の領域に割り付けたフレームバッファ１２０６ｂのデータの代わりに、キャッシュメモリ１２０４のデータが読み出される。
【００２１】
本従来例では、さらに、このキャッシュメモリの２つのタグ１２０３ａ，１２０３ｂを設けられている。２つのタグ１２０３ａ，１２０３ｂをＣＰＵ１２０１からのアクセス用と表示コントローラ１２０７からのアクセス用に使い分けることにより、ＣＰＵ１２０１からと表示コントローラ１２０７から同時にアクセスが可能となっている。これによってアクセスの高速化が実現される。
【００２２】
このようにキャッシュメモリを利用するメリットは、ソフトウェアを特別に書き換えることなく、高速メモリの恩恵を享受できることにある。さらに、キャッシュの構造に合わせたデータアクセスを行い、またデータ配置の最適化を施すことによって、高速なキャッシュメモリを最大限に活用することが可能となる。
【００２３】
【特許文献１】
特開平９−１９０１６９号公報
【００２４】
【発明が解決しようとする課題】
キャッシュメモリを設けた場合、アクセスアドレスとキャッシュされたデータのアドレスとをアクセスの度に比較する必要がある。そのためハードウェアのコストが増大し、また消費電力が増大するという弊害が生じる。
【００２５】
また、キャッシュメモリの容量の制限や、キャッシュメモリの連想数によっては、フレームバッファの後半部分のデータにアクセスするときに、前半部分のデータがキャッシュメモリから追い出されてしまうことがある。そうなると、キャッシュメモリを効率的に利用できないという現象が生じる。
【００２６】
また、オンチップメモリをキャッシュメモリとしてハードウェア管理下で使用すると、上述したような高負荷アプリケーションを実行するときにオンチップメモリをワークメモリとして使用するのが困難になるという問題がある。
【００２７】
他方、小容量のメモリしか必要としないアプリケーションを実行するときには、このオンチップメモリをフレームバッファメモリとして利用することによって、外部メモリへのアクセス回数を低減し、消費電力を削減することが可能である。
【００２８】
しかしながら、画面サイズや発色数の向上により、２枚分のフレームバッファ領域をオンチップメモリに確保するのはコスト的に難しい場合も多い。例えば、ＱＶＧＡ（３２０ｘ２４０ｄｏｔ）サイズで２６万色の発色を行うためには、約１７０Ｋｂｙｔｅのフレームバッファが必要となる。その２枚分をオンチップメモリに確保するためには、３４０Ｋｂｙｔｅものメモリが必要である。これにオンチップメモリに割り付けられるアプリケーションのワーク領域などを含めて１チップに集積すると、チップ面積が増大し、コスト高となってしまう。
【００２９】
一方、表示に用いるフレームバッファのみをオンチップメモリに置く方法をとると、描画したフレームデータを外部メモリからオンチップメモリへ転送する処理をソフトウェアによって実現しなければならず、処理負荷が増大する。
【００３０】
本発明の目的は、簡易なハードウェア構成で、かつ特別なソフトウェア処理を必要とせず、高速アクセス可能なオンチップメモリを効率的に利用することのできる情報処理装置を提供することである。
【００３１】
【課題を解決するための手段】
上記目的を達成するために、本発明の情報処理装置は、外部インタフェースを介して接続された外部記憶装置を用いて動作する情報処理装置であって、
前記外部インタフェースを介さずにアクセス可能な内部記憶手段と、
前記外部インタフェースを介して前記外部記憶装置の所定のアドレス範囲に一様にアクセスして読み出した一連のデータを所望の情報処理に利用する少なくとも１つのデータ処理手段と、
前記データ処理手段によって前記外部記憶装置から読み出された前記データを前記内部記憶手段に書き込むべきか否か判定し、該内部記憶手段に書き込むべきと判定したデータを、所定のルールに従ってアドレス変換して前記内部記憶手段の変換されたアドレスに書き込む判定手段とを有している。
【００３２】
したがって、本発明の情報処理装置によれば、データ処理手段が所定のアドレス範囲のデータを外部記憶装置から読み出すとき、判定手段は、それ以降にも再び利用されるであろうデータを、アドレス変換して内部記憶手段に書き込む。
【００３３】
また、前記データ処理手段は、前記外部記憶装置の前記アドレス範囲のデータを更新した旨の通知を他のデータ処理手段から受けた後の初回はアドレス変換せずに前記外部記憶装置にアクセスして前記データを読出し、
前記判定手段は、前記データ処理手段がアドレス変換せずに前記外部記憶装置の前記アドレス範囲から読み出した前記データを前記内部記憶手段に書き込むこととしてもよい。
【００３４】
したがって、データが更新された後のデータ処理手段による初回の外部記憶装置への一連のアクセスの際に、判定手段がデータを内部記憶装置に書き込むので、データが更新された後の初回の一連のアクセスに伴って内部記憶手段のデータが更新される。
【００３５】
また、前記データ処理手段は、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記ルールに従ってアドレス変換して前記内部記憶手段から前記データを読出すこととしてもよい。
【００３６】
したがって、データ処理手段は、データが更新された後の初回の一連のアクセスに伴って更新された内部記憶手段のデータを、それ以降、外部記憶装置上のデータの代わりに利用できる。
【００３７】
また、前記データ処理手段は、前記外部記憶装置の複数のアドレス範囲を切り替えてデータを読み出しており、前記アドレス範囲を切り替えた後の初回はアドレス変換せずに前記外部記憶装置から前記データを読出し、同じ前記アドレス範囲のデータを繰り返し読み出す際の２回目以降はアドレス変換して前記内部記憶手段から前記データを読み出し、
前記判定手段は、前記データ処理手段がアドレス変換せずに前記外部記憶装置から読み出した前記データを前記内部記憶手段に上書きすることとしてもよい。
【００３８】
したがって、ダブルバッファ構成を適用した場合にも、バッファ切り替え後の初回のアクセスで内部記憶手段のデータが更新されるので、同じデータの繰り返し利用に、内部記憶手段は１つのアドレス範囲分のメモリ容量で効率的に利用でき、また外部インタフェースを介した外部記憶装置へのアクセス回数が低減できる。
【００３９】
また、前記アドレス範囲の各々に対して部分アドレス範囲が予め定められており、
前記データ処理手段は、該部分アドレス範囲以外にデータの変更がなければ、前記アドレス範囲を切り替えた後の初回には、該部分アドレス範囲についてだけアドレス変換せずに前記外部記憶装置から前記データを読出し、前記アドレス範囲の前記部分アドレス範囲以外の部分についてはアドレス変換して前記内部記憶手段から前記データを読出すこととしてもよい。
【００４０】
したがって、頻繁に更新される部分を部分アドレス範囲とし、切り替えの際に、他の部分のデータの更新がなければ、その部分についてはそのまま内部記憶手段のデータを利用し、部分アドレス範囲のみを外部記憶装置から読み出しなおす。
【００４１】
また、前記判定手段によって前記内部記憶手段に書き込まれるデータを一旦蓄積した後に該内部記憶手段に書き込むバッファ手段をさらに有することとしてもよい。
【００４２】
また、前記バッファ手段は、一旦蓄積した前記データを、前記内部記憶手段への書き込みができない状態の間、保持し、書き込みができる状態となった後に前記内部記憶手段に書き込むこととしてもよい。
【００４３】
したがって、通常のバスからの内部記憶手段へのアクセスと、判定手段からの内部記憶手段へのアクセスが同時に起こったときバッファ手段がデータを待ち合わせることができる。
【００４４】
本発明の他の情報処理装置は、外部インタフェースを介して接続された外部記憶装置を用いて動作する情報処理装置であって、
前記外部インタフェースを介さずにアクセス可能な内部記憶手段と、
前記外部インタフェースを介して前記外部記憶装置の所定のアドレス範囲に一様にアクセスして読み出した一連のデータを所望の情報処理に利用し、前記内部記憶手段に書き込むべきと判定された旨の通知を受けると、前記データを、所定のルールに従ってアドレス変換して前記内部記憶手段の変換されたアドレスに書き込む少なくとも１つのデータ処理手段と、
前記データ処理手段によって前記外部記憶装置から読み出された前記データを前記内部記憶手段に書き込むべきか否か判定し、該内部記憶手段に書き込むべきと判定すると、その旨を前記データ処理手段に通知する判定手段とを有している。
【００４５】
したがって、外部記憶手段から読み出されたデータを、データ処理手段が通常のアクセスにより内部記憶手段に書き込むことができる。
【００４６】
また、前記データ処理手段は、前記判定手段にて前記内部記憶手段に書き込むべきと判定された前記データに対して前記所望の情報処理のための演算を行った結果のデータを前記内部記憶手段に書き込むこととしてもよい。
【００４７】
したがって、データ処理手段は、所望の情報処理にそのまま利用できる演算後のデータを内部記憶手段に書き込むことができる。
【００４８】
また、前記データ処理手段は、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記ルールに従ってアドレス変換して前記内部記憶手段から前記データを読出し、前記演算をせずに前記所望の情報処理に用いることとしてもよい。
【００４９】
したがって、データ処理手段は、所望の情報処理にそのまま利用できる演算後のデータを内部記憶手段から読み出して用いることができる。
【００５０】
また、前記データ処理手段の各々に固有の識別番号が割り当てられており、
前記判定手段は、所定の識別番号のデータ処理手段により読み出されたデータのみを前記内部記憶手段に書き込むべきと判定することとしてもよい。
【００５１】
したがって、判定手段は、同じアドレス範囲の一連のデータの読出しを繰り返すようなデータ処理手段を識別番号によって識別し、その読みしデータを内部記憶手段に書き込むべきと判定することができる。
【００５２】
また、前記データ処理手段は、所定時間内にデータが読み出されないときに間引き処理としてアドレスを間引いてデータを読出すことによりリアルタイム性を確保する機能を有している場合、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記アドレス範囲内に前記間引き処理により更新されていないデータが残っていれば、前記アドレス範囲全体についてアドレス変換せずに再び前記外部記憶装置から前記データを読出すこととしてもよい。
【００５３】
したがって、データ処理手段は、間引き処理が発生すると、アドレス範囲全体について再び外部記憶装置からデータを読み込み、間引きされたデータを内部記憶手段に取り込むことができる。
【００５４】
あるいは、前記データ処理手段は、所定時間内にデータが読み出されないときに間引き処理としてアドレスを間引いてデータを読出すことによりリアルタイム性を確保する機能を有している場合、前記外部記憶装置の同じ前記アドレス範囲の前記データを再び読出すとき、前記アドレス範囲内に前記間引き処理により更新されていないデータが残っていれば、間引かれたアドレスのみについてアドレス変換せずに再び前記外部記憶装置から前記データを読出すこととしてもよい。
【００５５】
したがって、データ処理手段は、間引き処理が発生すると、間引かれたアドレスについてのみ再び外部記憶装置からデータを読み込み、間引きされたデータを内部記憶手段に取り込むことができる。
【００５６】
【発明の実施の形態】
本発明の一実施形態について図面を参照して詳細に説明する。
【００５７】
図１は、本発明の一実施形態のアプリケーションプロセッサチップの構成を示すブロック図である。図１を参照すると、アプリケーションプロセッサ（ＳＯＣ：Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ）１４は、プロセッサコア１、周辺能動コア２、ＬＣＤ表示制御装置３、オンチップメモリ４、周辺受動コア５、およびメモリインタフェース６を有している。
【００５８】
ＬＣＤ表示制御装置３は、ＬＣＤ表示制御部１３およびアドレス変換部１２を有している。ＬＣＤ表示制御部１３はアドレス変換部１２を介してオンチップアドレスバス７およびオンチップデータバス８に接続されている。
【００５９】
アドレス変換部１２の他に、プロセッサコア１、周辺能動コア２、オンチップメモリ４、および周辺受動コア５がオンチップアドレスバス７およびオンチップデータバス８に接続されている。また、メモリインタフェース６はオンチップデータバス８に接続されているが、オンチップアドレスバス７にはアドレス比較器１１を介して接続されている。また、アドレス比較器１１はオンチップメモリ４とも接続されている。
【００６０】
また、オンチップメモリ４には、外部メモリ１０から読み出されたデータを書き込むためのフレームデータ書き込み用データバス１５が接続されている。
【００６１】
また、ＬＣＤ表示制御装置３には、チップ外のＬＣＤパネル９が接続されている。メモリインタフェース６には、チップ外の外部メモリ１０が接続されている。
【００６２】
アプリケーションプロセッサ１４は、ダブルバッファ構造の２つのフレームバッファを外部メモリ１０に置いている。
【００６３】
プロセッサコア１は、ソフトウェアプログラムを実行することにより、各部を統轄してアプリケーションプロセッサ１４の動作を実現する。また、プロセッサコア１は、外部メモリ１０上のフレームバッファに対する画像のデータの書き込み（描画）を行う。フレームバッファへの描画を完了すると、プロセッサコア１はＬＣＤ表示装置３にその旨を通知する。
【００６４】
ＬＣＤ表示制御装置３は、フレームバッファの開始アドレスとフレームバッファサイズのデータをフレームバッファアドレス範囲指定レジスタ（不図示）に保持している。
【００６５】
ＬＣＤ表示制御部１３は、プロセッサコア１が描画した画像のデータを、ＬＣＤパネル９の表示速度に合わせて、フレームバッファアドレス範囲指定レジスタに指定されたアドレスのフレームバッファからデータを読み出し、ＬＣＤパネル９に与える。
【００６６】
アドレス変換部１２は、ＬＣＤ表示制御部１３からフレームバッファへのアクセスのアドレスを変換し、アクセス先を外部メモリ１０またはオンチップメモリ４を選択する。その際、アドレス変換部１２は、プロセッサコア１から描画が完了した旨の通知を受けた後の初回は外部メモリ１０を、２回目以降はオンチップメモリ４を選択する。
【００６７】
オンチップメモリ４は、アプリケーションプロセッサ１４のチップ内に設けられた高速アクセス可能なメモリである。
【００６８】
メモリインタフェース６は、外部メモリ１０とのインタフェース回路である。
【００６９】
アドレス比較器１１は、外部メモリ１０上のフレームバッファのアドレスは予め記憶しているか、あるいは外部から与えられている。そして、アドレス比較器１１は、ＬＣＤ表示制御装置３からのリードアクセスのアドレスと予め記憶しているアドレスとを比較する。ＬＣＤ表示制御装置３からのリードアクセスのアドレスが予め記憶しているアドレスと一致すれば、つまりアクセスが外部メモリ１０上のフレームバッファへのリードアクセスであれば、外部メモリ１０から読み出されたデータをＬＣＤ表示制御装置３に与えると共に、オンチップメモリ４０７にも書き込まれるようにオンチップメモリ４のアドレスを出力する。それ以降、ＬＣＤ制御装置３は、アドレス変換部１２によるアドレス変換によって、外部メモリ１０ではなく、オンチップメモリ４へリードアクセスする。これにより外部メモリ４１０へのアクセスが削減される。
【００７０】
周辺能動コア２は、能動的な動作（アクセス）を行うことのできる周辺回路である。周辺受動コア５は、能動的な動作を行うことができない受動的な周辺回路である。
【００７１】
図２は、本実施形態のアプリケーションプロセッサの詳細構成および動作を説明するための図である。図３は、本実施形態のアプリケーションプロセッサの動作を示すフローチャートである。
【００７２】
図２を参照すると、図１では不図示であったフレームバッファアドレス範囲指定レジスタ２１が示されている。フレームバッファアドレス範囲指定レジスタ２１は、フレームバッファのアドレス範囲をアドレス変換部１２およびアドレス比較器１１に与えている。このアドレス範囲は、例えばプロセッサコア１がフレームバッファアドレス範囲指定レジスタ２１に対して値を書き込むことにより設定される。
【００７３】
また、オンチップメモリ４は、メモリ部２２およびオンチップメモリインタフェース２３を有している。
【００７４】
メモリ部２２は、データを記憶する記憶回路である。オンチップメモリインタフェース２３はオンチップバスとのインタフェース回路である。
【００７５】
アドレス比較器１１からオンチップインタフェース２３へはデータ書き込み要求信号２４、データ書き込み有効信号２６、およびデータ書き込みアドレス２７が送られる。オンチップメモリインタフェース２３からアドレス比較器１１へはデータ書き込み可能状態信号２５が送られる。
【００７６】
データ書き込み要求信号２４は、外部メモリ１０から読み出されたデータをオンチップメモリ４へ書き込むことを要求するための信号である。データ書き込み可能状態信号２５は、アドレス比較器１１によるメモリ部２２へのデータの書き込みが可能であることを通知するための信号である。
【００７７】
図３を参照すると、まず、ＬＣＤ表示制御装置３が外部メモリ１０のフレームバッファへ読み出しアクセスを行う（ステップ３０１）。アドレス比較器１１は、予めフレームバッファアドレス範囲指定レジスタ２１にて指定されているアドレス範囲へのアクセスか否か判断する（ステップ３０２）。
【００７８】
ＬＣＤ表示制御装置３からのアクセスが、予め指定されたアドレス範囲外のアドレスへのアクセスであれば、通常の外部メモリ１０へのアクセスとして実行され、ＬＣＤ表示制御装置３によって所望のデータが読み出される（ステップ３０４）。
【００７９】
ＬＣＤ表示制御装置３からのアクセスが、予め指定されたアドレス範囲内のアドレスへのアクセスであれば、アドレス比較器１１は、そのリードアクセスが初回のアクセスか否か判断する（ステップ３０３）。
【００８０】
初回アクセスであれば、アドレス比較器１１は、オンチップメモリインタフェース２３に対して、データ書き込み要求信号２４を送り、メモリ部２２への書き込みポート確保を要求する。これは、プロセッサコア１や周辺能動コア２がオンチップメモリ４にアクセスしているときに外部メモリ１０からデータを読み出してもオンチップメモリ４に書き込むことができないので、アドレス比較器１１がオンチップメモリ４へデータを書き込める状態を確保するためである。
【００８１】
アドレス比較器１１がデータ書き込み可能状態信号２５によって、オンチップメモリインタフェース２３から、書き込みポートが確保された旨の通知を受けると、データの書き込みが可能な状態となる（ステップ３０５）。
【００８２】
次に、ＬＣＤ表示制御装置３が外部メモリ１０のフレームバッファへの読み出しアクセスを行うと（ステップ３０６）、アドレス変換部１２が所定のルールに従って外部メモリ１０のアドレスをオンチップメモリ４のアドレスに変換することにより（ステップ３０７）、外部メモリ１０から読み出されたデータがオンチップメモリ４に書き込まれる（ステップ３０８）。その際のアドレスは、アドレス比較器１１からデータ書き込みアドレス２７としてオンチップメモリインタフェース２３に与えられる。また、データ書き込み有効信号２６によりデータ書き込みアドレス２７が有効であることが伝えられる。所定のルールとは、外部メモリ１０のフレームバッファのアドレスがオンチップメモリ４のフレームキャッシュ領域に変換されるように設定されている。
【００８３】
ステップ３０３の判断において、初回のアクセスでなければ、アドレス変換器１２が外部メモリ１０のアドレスをオンチップメモリ４のアドレスに変換することにより（ステップ３０９）、オンチップメモリ４のフレームバッファ領域からデータが読み出され（ステップ３１０）、ＬＣＤ表示制御装置３からＬＣＤパネル９に与えられ、ＬＣＤパネル９に画像が表示される。
【００８４】
なお、ステップ３０３において、アドレス変換部１２は初回参照フラグによって初回アクセスか否かを判断する。プロセッサコア４０１が外部メモリ１０に新しい画像を生成し終えたときに初回参照フラグをセットする。また、ＬＣＤ表示制御装置３が指定されたアドレス範囲へのリードアクセスを一巡すると初回参照フラグをクリアする。
【００８５】
アドレス変換部１２は、新たに画像の表示を開始するときだけ初回参照フラグを参照する。これにより、１つの画像の表示の途中からデータの供給元がオンチップメモリ４０４と外部メモリ４１０の間で切り替わることが防止される。
【００８６】
以上説明したように、本実施形態のアプリケーションプロセッサ１４によれば、プロセッサコア１が新たな画像を外部メモリ１０のフレームバッファに書き込むと、ＬＣＤ表示制御部１３からの初回アクセスのときに外部メモリ１０のデータがオンチップメモリ４に書き込まれ、その後、画像が書き換えられるまで、オンチップメモリ４のデータがＬＣＤパネル９の表示に用いられるので、外部メモリ１０へのアクセス回数を低減され、それに伴って消費電力も低減される。
【００８７】
なお、本実施形態では、アドレス比較器１１は、オンチップメモリ４に取り込むデータをアドレス範囲だけで判断しているが、本発明はそれに限定されない。
【００８８】
例えばＬＣＤ表示制御装置３のように特定コアからのアクセスに限定するために、各コアに識別番号を付与しておき、その識別番号をも比較対象に含めることとしてもよい。
【００８９】
これによれば、例えばプロセッサコア１が外部メモリ１０のフレームバッファ空間をリードアクセスしたときに読み出されたデータがオンチップメモリ４にコピーされてしまうという事態を防ぐことができる。
【００９０】
また、本実施形態のアプリケーションプロセッサ１４は、オンチップメモリ４へ書き込まれるデータを一時蓄積するオンチップメモリ書き込みバッファを有する構成であってもよい。
【００９１】
図４は、オンチップメモリ書き込みバッファを有するアプリケーションプロセッサの詳細構成および動作について説明するための図である。図４のアプリケションプロセッサは、アドレス比較器１１とオンチップメモリインタフェース２３の間にオンチップメモリ書き込みバッファ４１を有する点で図２に示したものと異なる。
【００９２】
ＬＣＤ表示制御装置３が外部メモリ１０上のフレームバッファへリードアクセスするとき、読み出されたデータは同時にオンチップメモリ４に書き込まれることが必要である。そのため、プロセッサコア１や各種周辺能動コア２がオンチップメモリ４にアクセスしているときに、ＬＣＤ表示制御装置３が外部メモリ１０上のフレームバッファへリードアクセスするイベントが発生すると、図２の構成では、オンチップメモリ４へのアクセスが終了するまで外部メモリ１０からのデータの読み出しを待たせる必要がある。通常、ＬＣＤ表示制御装置３によるフレームバッファへのアクセスは時間的な制約が厳しい場合があり、この待ち時間によって画像の欠落を招く可能性がある。
【００９３】
図４の構成では、他のコアがオンチップメモリ４へアクセスしている間、オンチップメモリ書き込みバッファ４１が外部メモリ１０から読み込まれたデータを一時的に格納しておき、アクセスが終了した後にオンチップメモリ４に書き込む。
【００９４】
これによれば、ＬＣＤ表示制御装置３は、他コアによるオンチップメモリ４へのアクセスの有無に関係なく、外部メモリ１０から即座にデータを読み出すことができる。
【００９５】
なお、当然のことながら、オンチップメモリ書き込みバッファ４１の容量は有限である。そのため、外部メモリ１０から読み出されたデータがその容量を上回われば、外部メモリ１０からの読み出しを待ち合わせるという動作との併用が必要となる。しかし、オンチップメモリ書き込みバッファ４１の容量を各コアの動作特性に基づいて設定すれば、一定量のオンチップメモリ書き込みバッファ４１によって実用的な動作効率の向上を期待できる。
【００９６】
なお、ここまでは、ダブルバッファ構造の採用の有無に関わり無く適用可能な実施形態について例示してきたが、ダブルバッファ構造の採用を前提とした他の実施形態をとることもできる。
【００９７】
ダブルバッファ構成では、画像のデータの作成に用いられているフレームバッファ（描画フレームバッファ）と、画像の表示に用いられているフレームバッファ（表示フレームバッファ）とが別個にされている。描画フレームバッファと表示フレームバッファとは交互に切り替えられる。
【００９８】
図５は、ダブルバッファ構成を採用した実施形態におけるフレームバッファの各メモリへの割り付けについて説明するための図である。アプリケーションプロセッサの構成は図１、２に示したものと同じである。
【００９９】
図５を参照すると、外部メモリ１０空間にはフレームバッファＡとフレームバッファＢの２枚のフレームバッファが割り付けられている。一方、オンチップメモリ４空間には１枚分のフレームキャッシュ領域が確保されている。
【０１００】
図５の例では、０ｘ３０００００００番地から０ｘ３１ｆｆｆｆｆｆ番地に割り付けられた外部メモリ１０上の０ｘ３０１００００番地から０ｘ３０１３７ａｆｆ番地にフレームバッファＡが割り付けられ、０ｘ３０１４００００番地から０ｘ３０１７７ａｆｆ番地にフレームバッファＢが割り付けられている。また、０ｘａ０００００００番地から０ｘａ００３ｆｆｆｆ番地に割り付けられたオンチップメモリ４上の０ｘａ０００００００番地から０ｘａ００３７ａｆｆ番地にフレームキャッシュ領域Ｃが割り付けられている。これらのアドレスの指定は、例えばプロセッサコア１がフレームバッファアドレス範囲指定レジスタ２１に書き込むことによって行われる。
【０１０１】
ＬＣＤ表示制御装置３は、ある一定間隔毎にＬＣＤに表示するフレームを、フレームバッファＡとフレームバッファＢの間で切り替える。従来では、切り替えと切り替えの間、同一フレームバッファのデータが複数回連続して表示に用いられる。
【０１０２】
本実施形態では、連続する複数回のうち２回目以降については、オンチップメモリ４上のフレームキャッシュ領域Ｃのデータが供給される。
【０１０３】
図６は、本発明の他の実施形態における画面の切り替えについて説明するための図である。
【０１０４】
フレームバッファＡ、Ｂの切り替えは、画像を生成するプロセッサコア１あるいは他の周辺能動コア２がＬＣＤ表示制御装置３に対して切り替えを通知することによって行われる。このとき初回参照フラグがセットされる。
【０１０５】
ＬＣＤ表示制御装置３からの次の読出しでは、外部メモリ１０上の新しいフレームバッファのデータが読み出される。このとき、併せてオンチップメモリ４０４上のフレームキャッシュ領域が更新される。
【０１０６】
例えば、フレームバッファＢの初回参照時にはフレームキャッシュ領域Ｃに未だフレームバッファＡと同一の内容が保持されている。しかし、フレームバッファＢのデータが一度読み出されてＬＣＤパネル９に表示されると、フレームキャッシュ領域ＣはフレームバッファＢの内容に更新され、初回参照フラグがクリアされる。
【０１０７】
したがって、フレームバッファＢのデータを２回目以降に表示するとき、初回参照フラグはクリアされており、アドレス変換部１２のアドレス変換によってフレームキャッシュ領域ＣのデータがＬＣＤ表示制御部１３に供給される。
【０１０８】
オンチップメモリ４を用いない場合と比べて本実施形態において必要となるソフトウェア処理は、初期化を行うとき、フレームバッファアドレス範囲指定レジスタ２１に対して、フレームバッファＡ、ＢおよびフレームキャッシュＣのアドレス範囲を予め指定する処理だけである。その他の変更、例えば画面描画処理用のソフトウェアに変更の必要はない。
【０１０９】
また、従来のキャッシュメモリのようにキャッシングしているアドレスを多数ハードウェア的に記憶しておき、そのアドレスとアクセスされるアドレスとを比較する必要がないため、大幅なハードウェアのコストダウンが可能である。
【０１１０】
また、このフレームキャッシュ機能が必要ないときにはオンチップメモリ４を通常の高速な汎用メモリとして利用可能であり、ソフトウェアの自由度を高めることができる。
【０１１１】
なお、本実施形態では、ここまで、更新時に画面は画面単位で書き換えられる例を示してきたが、画面更新の方法としては画面の一部のみが書き換えられるものもある。その場合には外部メモリ１０へのアクセスをさらに削減することができる。
【０１１２】
通常の外部メモリ１０空間上に割り付けられたフレームバッファＡ、Ｂの各々に対して常時更新領域Ａ’、Ｂ’を設定する。フレームバッファアドレス範囲指定レジスタ４１は、常時更新領域のアドレス設定が可能になるように拡張しておく必要がある。常時更新領域とは、他の領域に比べて更新される可能性が高い領域である。
【０１１３】
常時更新領域だけが更新され、他の領域で更新がなければ、他の領域ではフレームバッファＡとフレームバッファＢの内容は同じとなる。したがって、新たな画像を作成するとき、常時更新領域外に更新が無ければ、フレームバッファＡとフレームバッファＢを切り替えるとき、常時更新領域以外の領域はフレームキャッシュＣの内容を書き換える必要がない。
【０１１４】
図７は、常時更新領域を設けた場合のメモリの割り付けを示す図である。
【０１１５】
常時更新領域Ａ’、Ｂ’以外に更新が無ければ、ＬＣＤ表示制御装置３は、初回参照時、常時更新領域Ａ’、Ｂ’に指定されたアドレス範囲のみを外部メモリ１０からリードすればよい。そのデータはオンチップメモリ４に取り込まれる。また、ＬＣＤ表示装置３は、初回参照フラグがセットされていても、それ以外の領域についてはオンチップメモリ４上のフレームキャッシュ領域Ｃから必要なデータを読み込む。
【０１１６】
その後、フレームバッファへのリードアクセスが一巡して初回参照フラグがクリアされた後には、ＬＣＤ表示制御装置３は画面の全てのデータをオンチップメモリ４上のフレームキャッシュ領域Ｃから読み込む。
【０１１７】
また、常時更新領域以外の領域が書き替えられたときには、ＬＣＤ表示制御装置３は常時更新領域Ａ’、Ｂ’の設定を解除する。これにより初回参照フラグセットされたとき、ＬＣＤ表示制御装置３は、画面の全てのデータを外部メモリ４のフレームバッファＡまたはフレームバッファＢから読み出す。
【０１１８】
これによれば、画面の一部のみが書き換えられるような画面更新がされる場合に、常時更新領域Ａ’、Ｂ’以外の領域に更新が無ければ、描画フレームバッファと表示フレームバッファを切り替えるとき常時更新領域のみを更新することにより外部メモリ１０へのアクセスをさらに削減することができる。
【０１１９】
ここまでの実施形態では、ＬＣＤ表示制御装置３が外部メモリ１０からデータを読み込み、それと共にオンチップメモリ４に書き込むとき、各データのアドレスを保持していない。これにはハードウェアコストを低減するという効果がある。
【０１２０】
しかしながら、バスやメモリの混雑によってデータの供給が滞ったとき、ＬＣＤ表示制御装置３は、画像の中の幾つかのラインの表示をあきらめ、次のラインの表示に処理を進める間引き処理が用いられることがある。これは、画像表示のリアルタイム性を保つための処理である。
【０１２１】
ＬＣＤ表示制御装置３が外部メモリ１０から読み出したデータを単にオンチップメモリ４に書き込むだけでは、間引き処理が行われたとき、間引かれたラインついては、オンチップメモリ４上に外部メモリ１０のフレームバッファのデータが正しく反映されず、前画面のデータが残ってしまう。
【０１２２】
間引き処理の対策として、オンチップメモリ４上のフレームキャッシュ更新時に間引き処理が行われたら、初回参照フラグをクリアせず、次回の表示も外部メモリ４のフレームバッファからデータを読出すこととすればよい。
【０１２３】
その場合、ＬＣＤ表示制御装置３は、初回参照フラグ５１９がセットされているため一画面分の画像を外部メモリ１０からリードする間に、１度でも間引き処理が発生すれば、画面の全てのデータの転送が終了しても初回参照フラグをクリアしない。
【０１２４】
これにより、次回の表示においてアドレス変換装置１２でアドレス変換が行われず、オンチップメモリ４ではなく、外部メモリ１０からデータが読み出される。そして、ＬＣＤ表示制御装置３が表示すべきデータを読み出す動作を行うときに、再度、外部メモリ１０からオンチップメモリ４へのデータの取り込みが行われる。
【０１２５】
このときに間引き処理が発生しなければ、初回参照フラグがクリアされ、次に同一フレームを表示するときには、ＬＣＤ表示制御装置３はオンチップメモリ４からデータを取り出すことになる。それにより、間引き処理が発生すれば、外部メモリ１０のデータを繰り返して読み出し、間引き処理が発生しなければ、オンチップ４のデータを用いて外部メモリ１０へのアクセスを低減することができる。
【０１２６】
また、間引き処理の他の対策として、間引き処理が行われたラインのアドレスを記憶しておき、次回にはそのアドレスのデータのみ外部メモリ４から読出すことにより、さらに効率向上を図ることとしてもよい。
【０１２７】
図８は、間引き処理が行われたアドレスのみ外部メモリから再度読出すこととしたアプリケーションプロセッサの詳細構成および動作を説明するための図である。
【０１２８】
図８のアプリケーションプロセッサは間引き発生アドレスバッファ８１を有する点で図４のものと異なる。また、図８には、処理参照フラグ８２が図示されている。
【０１２９】
ＬＣＤ表示制御装置３は、リードアクセスにおいて間引き処理が発生したアドレスを間引き発生アドレスバッファ８１に記録する。そして、ＬＣＤ表示制御装置３は、次回、同じフレームを表示するとき間引きアドレスバッファ８１を検索し、間引き処理が発生して外部メモリ１０のデータがオンチップメモリ４に反映されていないアドレスのみについて再び外部メモリ１０から読み出す。
【０１３０】
間引き処理が発生しなかったアドレスのデータは、次回以降、オンチップメモリ４上のフレームキャッシュ領域からデータがＬＣＤ表示制御装置３に供給される。
【０１３１】
そして、間引き処理が発生したアドレスのデータが外部メモリ１０から正常に読み出せると、そのデータはオンチップメモリ４に取り込まれるので、ＬＣＤ表示制御装置３は、間引き発生アドレスバッファ８１からそのアドレスを削除する。
【０１３２】
これにより、外部メモリ１０へのアクセスが混雑し、間引き処理が頻発するような状況においても、外部メモリ１０のフレームバッファのデータを徐々にオンチップメモリ４に取り込み、外部メモリ１０へのアクセスを削減することができる。
【０１３３】
当然のことながら、間引き発生アドレスバッファ８１に登録できるアドレスの数（エントリ数）は有限である。各コアの動作特性に基づいて間引き発生アドレスバッファ８１の許容するエントリ数を選択すれば実用的な範囲で上述の効果が得られる。
【０１３４】
それでも、一時的に、間引き発生アドレスバッファ８１の許容するエントリ数を上回るアドレスで間引き処理が発生することがある。その場合には、初回参照フラグをクリアせず、次回、同一フレームの画像を表示するとき、画面の全てのデータを外部メモリ１０上のフレームバッファからＬＣＤ表示制御装置３に供給することとすればよい。
【０１３５】
なお、図１に示したアプリケーションプロセッサでは、ＬＣＤ表示制御装置３が外部メモリ１０上のフレームバッファからデータを読み出したときにオンチップメモリ４にデータを書き込むために専用のフレームデータ書き込み用データバス１５が用意されていた。しかし、ＬＣＤ表示制御装置３がフレームデータをオンチップメモリ４に書き込むこととしてもよい。
【０１３６】
図９は、ＬＣＤ表示制御装置が画像のデータをオンチップメモリに書き込む構成のアプリケーションプロセッサの構成を示すブロック図である。図９のアプリケーションプロセッサは、オンチップメモリ４へのフレームデータ書き込み用データバスがなく、その代わりにアドレス比較器１１からＬＣＤ表示制御装置３に対して書き込み要求信号９１が送られる点で図１のものと異なる。
【０１３７】
ＬＣＤ表示制御装置３が外部メモリ１０からフレームバッファのデータを読み出して必要な処理を行うと、アドレス比較器１１が書き込み要求信号９１をＬＣＤ表示制御装置３に送る。
【０１３８】
書き込み要求信号９１を受けると、ＬＣＤ表示制御装置３は、通常のデータ書き込みのバスプロトコルに準じ、アドレス変換部１２を介して、データをオンチップメモリ４の所定の領域に書き込む。そして、画面の全てのフレームのデータをオンチップメモリ４に書き込むと、ＬＣＤ表示制御装置３は初回参照フラグをクリアする。
【０１３９】
そして、それ以降、再び、同一フレームバッファ領域の画面を表示するとき、ＬＣＤ表示制御装置３は、外部メモリ１０上のフレームバッファへのアクセスを内部メモリ４のフレームキャッシュ領域にアドレス変換し、フレームキャッシュ領域からデータを読み出す。
【０１４０】
通常、ＬＣＤ表示制御装置３の処理として、外部メモリ１０から読み出した画像のデータに対してフォーマット変換などの処理を行ってＬＣＤパネル９に表示することがある。その場合、同一フレームバッファを繰り返して表示するとき、ＬＣＤ表示制御装置３は、毎回同じフォーマット変換の処理を繰り返すことになる可能性がある。これに対して、図９のアプリケーションプロセッサによれば、オンチプップメモリ４へ書き込むデータをフォーマット変換後のデータとすることにより、外部メモリ１０へのアクセス回数を削減すると共にフォーマット変換の処理を低減することもできる。
【０１４１】
【発明の効果】
本発明の情報処理装置によれば、データ処理手段が所定のアドレス範囲のデータを外部記憶装置から読み出すとき、判定手段は、それ以降にも再び利用されるであろうデータをアドレス変換して内部記憶手段に書き込むので、簡易なハードウェア構成で、かつ特別なソフトウェア処理を必要とせずに、それ以降、データ処理手段は、所定のアドレス範囲のデータについては高速アクセス可能な内部記憶手段のデータを利用でき、外部インタフェースを介した外部記憶装置へのアクセスの回数が低減でき、また電力消費量も低減される。
【０１４２】
また、データが更新された後のデータ処理手段による初回の外部記憶装置への一連のアクセスの際に、判定手段がデータを内部記憶装置に書き込むので、初回のアクセスに伴って内部記憶手段のデータが更新され、それ以降は内部記憶手段のデータが利用可能となり、外部インタフェースを介した外部記憶装置へのアクセスの回数が低減できる。
【０１４３】
また、ダブルバッファ構成を適用した場合にも、バッファ切り替え後の初回のアクセスで内部記憶手段のデータが更新されるので、同じデータの繰り返し利用に内部記憶手段は１つのアドレス範囲分のメモリ容量で効率的に利用でき、また外部インタフェースを介した外部記憶装置へのアクセス回数が低減できる。
【０１４４】
また、頻繁に更新される部分を部分アドレス範囲とし、切り替えの際に、他の部分のデータの更新がなければ、その部分についてはそのまま内部記憶手段のデータを利用し、部分アドレス範囲のみを外部記憶装置から読み出しなおすので、外部インタフェースを介した外部記憶装置へのアクセスの回数をさらに低減することができる。
【０１４５】
また、通常のバスからの内部記憶手段へのアクセスと、判定手段からの内部記憶手段へのアクセスが同時に起こったとき、バッファ手段がデータを待ち合わせるので、アクセスが同時に起こっても双方のアクセスを矛盾なく正常に終了させることができる。
【０１４６】
また、外部記憶手段から読み出されたデータをデータ処理手段が通常のアクセスにより内部記憶手段に書き込むことができるので、専用の信号線が必要なく、ハードウェアを小型化できる。
【０１４７】
また、データ処理手段は、所望の情報処理にそのまま利用できる演算後のデータを内部記憶手段に書き込むので、その後、同じ演算を繰り返す必要がない。
【０１４８】
また、データ処理手段は、所望の情報処理にそのまま利用できる演算後のデータを内部記憶手段から読み出して用いるので、データ処理手段の処理負荷が軽減される。
【０１４９】
また、判定手段は、同じアドレス範囲の一連のデータの読出しを繰り返すようなデータ処理手段を識別番号によって識別し、その読みしデータを内部記憶手段に書き込むべきと判定するので、内部記憶手段の利用が有効なデータを容易に判定することができる。
【０１５０】
また、データ処理手段は、間引き処理が発生すると、アドレス範囲全体について再び外部記憶装置からデータを読み込むので、間引き処理が発生しても、内部記憶手段内の古いデータがデータ処理手段に利用されてしまうことが防止できる。
【０１５１】
あるいは、データ処理手段は、間引き処理が発生すると、間引かれたアドレスについてのみ再び外部記憶装置からデータを読み込むので、間引き処理が発生しても、内部記憶手段内の古いデータがデータ処理手段に利用されてしまうことがなく、かつ外部記憶装置へのアクセス回数を可能な限り低減することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態のアプリケーションプロセッサチップの構成を示すブロック図である。
【図２】本実施形態のアプリケーションプロセッサの詳細構成および動作を説明するための図である。
【図３】本実施形態のアプリケーションプロセッサの動作を示すフローチャートである。
【図４】本実施形態のアプリケーションプロセッサの動作を示すフローチャートである。
【図５】ダブルバッファ構成を採用した実施形態におけるフレームバッファの各メモリへの割り付けについて説明するための図である。
【図６】本発明の他の実施形態における画面の切り替えについて説明するための図である。
【図７】常時更新領域を設けた場合のメモリの割り付けを示す図である。
【図８】間引き処理が行われたアドレスのみ外部メモリから再度読出すこととしたアプリケーションプロセッサの詳細構成および動作を説明するための図である。
【図９】ＬＣＤ表示制御装置が画像のデータをオンチップメモリに書き込む構成のアプリケーションプロセッサの構成を示すブロック図である。
【図１０】従来の典型的なアプリケーションプロセッサの構成をブロック図である。
【図１１】従来の画面切り替えについて説明するための図である。
【図１２】従来の表示制御システムの構成の一例を示すブロック図である。
【符号の説明】
１    プロセッサコア
２    周辺能動コア
３    ＬＣＤ表示制御装置
４    オンチップメモリ
５    周辺受動コア
６    メモリインタフェース
７    オンチップアドレスバス
８    オンチップデータバス
９    ＬＣＤパネル
１０    外部メモリ
１１    アドレス比較器
１２    アドレス変換部
１３    ＬＣＤ制御表示部
１４    アプリケーションプロセッサ（ＳＯＣ）
２１    フレームバッファアドレス範囲指定レジスタ
２２    メモリ部
２３    オンチップメモリインタフェース
２４    データ書き込み要求信号
２５    データ書き込み可能状態信号
２６    データ書き込み有効信号
２７    データ書き込みアドレス
３０１〜３１０    ステップ
４１    オンチップメモリ書き込みバッファ
８１    間引き発生アドレスバッファ
８２    初回参照フラグ
９１    書き込み要求信号
【図１】
2005018428.tif 000003
【図２】
2005018428.tif 000004
【図３】
2005018428.tif 000005
【図４】
2005018428.tif 000006
【図５】
2005018428.tif 000007
【図６】
2005018428.tif 000008
【図７】
2005018428.tif 000009
【図８】
2005018428.tif 000010
【図９】
2005018428.tif 000011
【図１０】
2005018428.tif 000012
【図１１】
2005018428.tif 000013
【図１２】
2005018428.tif 000014