(57)【要約】【課題】キャッシュを有効利用することにより、ソフトウェアモジュールの汎用性を維持しながら高い性能を得る。【解決手段】本発明の情報機器は、符号化データが格納されるデータ記憶部２１と、第１のキャッシュ領域２２１と第２のキャッシュ領域２２２とを有して構成され、データ記憶部２１に格納された符号化データの一部を格納可能なキャッシュ記憶部２２と、データ記憶部２１に記憶された符号化データを復号化する復号化処理部１３と、を備え、復号化処理部１３は、符号化データのヘッダ情報および当該ヘッダ情報に対応する符号化データを第１のキャッシュ領域、または第２のキャッシュ領域へ格納し、第１のキャッシュ領域と第２のキャッシュ領域に格納されたヘッダ情報、および符号化データをアクセスして符号化データの復号化処理を行う。【選択図】図２
2008211681.tif 000002
【特許請求の範囲】
【請求項１】
符号化データが格納されるデータ記憶部と、
第１のキャッシュ領域と第２のキャッシュ領域とを有して構成され、前記データ記憶部に格納された符号化データの一部を格納可能なキャッシュ記憶部と、
前記データ記憶部に記憶された符号化データを復号化する復号化処理部と、
を備え、
前記復号化処理部は、
前記符号化データのヘッダ情報および前記ヘッダ情報に対応する符号化データを前記第１のキャッシュ領域、または前記第２のキャッシュ領域へ格納し、前記第１のキャッシュ領域と第２のキャッシュ領域に格納されたヘッダ情報、および符号化データをアクセスして前記符号化データの復号化処理を行う
ことを特徴とする情報機器。
【請求項２】
前記キャッシュ記憶部は、
前記復号化処理部での復号化処理時における前記第１のキャッシュ領域と第２のキャッシュ領域へのアクセス頻度を監視し、前記第１のキャッシュ領域と第２のキャッシュ領域のうち、前記アクセス頻度の低いキャッシュ領域に格納された符号化データの更新を優先して行う
ことを特徴とする請求項１に記載の情報機器。
【請求項３】
第１のキャッシュ領域と第２のキャッシュ領域とを有し、ヘッダ情報および前記ヘッダ情報に対応する符号化データが前記第１のキャッシュ領域または前記第２のキャッシュ領域に格納されるキャッシュ記憶部を備えた情報機器における復号化処理方法であって、
前記ヘッダ情報に基づき、前記キャッシュ記憶部に格納された符号化データをアクセスして復号化処理を実行するステップと、
前記第１のキャッシュ領域および前記第２のキャッシュ領域へのアクセス頻度を検出するステップと、
前記キャッシュ記憶部の更新時、前記検出されたアクセス頻度に応じて、前記アクセス頻度の低いキャッシュ領域を優先的に更新するステップと、
を有することを特徴とする情報機器における復号化処理方法。
【請求項４】
前記第１のキャッシュ領域または前記第２のキャッシュ領域に格納された符号化データの復号化処理が終了し、所定時間経過した後、前記アクセス頻度の高いキャッシュ領域に対するアクセスが無い場合、前記アクセス頻度の高いキャッシュ領域の内容更新を行うステップと、
を更に有することを特徴とする請求項３に記載の情報機器における復号化処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報機器および同機器における復号化処理方法に関する。
【背景技術】
【０００２】
動画像圧縮符号化の標準規格であるＭＰＥＧ（Moving Picture Experts Group）−４のパート１４で規定されているファイルフォーマットＭＰ４（MPEG level 4）は、ＢＯＸと呼ばれるオブジェクトの集まりで構成されている。
このオブジェクトの中でも大きく分けて、データを管理する情報が含まれるＢＯＸ（以下、ヘッダ情報と呼ぶ）と、データ本体が含まれるＢＯＸ（以下、サンプル情報と呼ぶ）がある。上記した動画像データを復号化するには、ヘッダ情報に基づき対応する各サンプル情報をデコードすることにより実現される。
【０００３】
一方、ソフトウェアのモジュール化が進み、上記した復号化処理を行う機能、あるいはデータ管理を行う機能もモジュール化され、これらのソフトウェアを組み合わせることによって動画像の再生を行うことができる。
各モジュールはそれぞれによって特定の機能を実現させ、どのようなソフトウェアにも組み込みができるように汎用的に設計されるため、他のモジュールの性能等にはついては考慮されることがない。すなわち、復号化処理を行うモジュールは、動画像フォーマットの構成にのみ着目し、データ管理モジュールへのアクセス方法については考慮していない。
【０００４】
このため、復号化処理中、復号化処理モジュールはヘッダ情報とサンプル情報の読み出しをそれぞれ行うが、このとき、データ管理モジュールへのアクセスが頻繁に発生し、また、ヘッダ情報の読み込み、サンプル情報の読み出しの都度、読み出し位置の変更も伴う。
【０００５】
これに対し、データ管理モジュールは、さまざまな形式のデータへのアクセス要求があることから、特定のデータ形式に依存した処理にはなっておらず、したがって、上記した復号化処理モジュールからの要求に対し、「頻繁にアクセスされるデータ読み出し処理の負荷」、ファイルの読み出し位置が変更されることによる「読み出し位置検索処理の負荷」が発生する。特に、高フレームレートの動画像ファィルにおいては、上記した処理負荷の圧迫により、全フレームのデータを再生することができなくなることがある。
【０００６】
上記した問題を解決するために、従来、複数のキャッシュを用い、頻繁にアクセスが行われるデータをキャッシュすることで、ソフトウェアモジュールに対する処理負荷を軽減する方法が提案されている。
【特許文献１】特開２００５−１０２１４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記した特許文献１に開示された技術によれば、ハードウェアの制御が必要であり、このため、使用頻度の高いデータであることを把握している復号化処理モジュールが上記したハードウェアを制御する必要がある。この結果、復号化処理モジュールは、ハードウェアに依存した非汎用的なものになってしまい、したがってどのようなソフトウェアにも組み込めるようにモジュール化した意味が無くなってしまう。
【０００８】
本発明は上記した課題を解決するためになされたものであり、キャッシュを有効利用することにより、ソフトウェアモジュールの汎用性を維持しながら高い性能を得ることのできる、情報機器および同機器における復号化処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記した課題を解決するため、本発明の情報機器は、符号化データが格納されるデータ記憶部と、第１のキャッシュ領域と第２のキャッシュ領域とを有して構成され、前記データ記憶部に格納された符号化データの一部を格納可能なキャッシュ記憶部と、前記データ記憶手段に記憶された符号化データを復号化する復号化処理部と、を備え、前記復号化処理部は、前記符号化データのヘッダ情報および前記ヘッダ情報に対応する符号化データを前記第１のキャッシュ領域、または前記第２のキャッシュ領域へ格納し、前記第１のキャッシュ領域と第２のキャッシュ領域に格納されたヘッダ情報、および符号化データをアクセスして前記符号化データの復号化処理を行う。
【００１０】
また、本発明の情報機器において、前記キャッシュ記憶部は、前記復号化処理部での復号化処理時における前記第１のキャッシュ領域と第２のキャッシュ領域へのアクセス頻度を監視し、前記第１のキャッシュ領域と第２のキャッシュ領域のうち、前記アクセス頻度の低いキャッシュ領域に格納された符号化データの更新を優先して行うように構成してもよい。
【００１１】
上記した課題を解決するために本発明の情報機器における復号化処理方法は第１のキャッシュ領域と第２のキャッシュ領域とを有し、ヘッダ情報および前記ヘッダ情報に対応する符号化データが前記第１のキャッシュ領域または前記第２のキャッシュ領域に格納されるキャッシュ記憶部を備えた情報機器における復号化処理方法であって、前記ヘッダ情報に基づき、前記キャッシュ記憶部に格納された符号化データをアクセスして復号化処理を実行するステップと、前記第１のキャッシュ領域および前記第２のキャッシュ領域へのアクセス頻度を検出するステップと、前記キャッシュ記憶部の更新時、前記検出されたアクセス頻度に応じて、前記アクセス頻度の低いキャッシュ領域を優先的に更新するステップと、を有する。
【００１２】
また、本発明の情報機器における復号化処理方法において、好適には、前記第１のキャッシュ領域または前記第２のキャッシュ領域に格納された符号化データの復号化処理が終了し、所定時間経過した後、前記アクセス頻度の高いキャッシュ領域に対するアクセスが無い場合、前記アクセス頻度の高いキャッシュ領域の内容更新を行うステップと、を更に有する。
【発明の効果】
【００１３】
本発明によれば、キャッシュを有効利用することにより、ソフトウェアモジュールの汎用性を維持しながら高い性能を得ることのできる、情報機器および同機器における復号化処理方法を提供することができる。
【発明を実施するための最良の形態】
【００１４】
図１は、本発明の実施の形態に係る情報機器の内部構成を示すブロック図である。ここでは、情報機器として、携帯電話機が例示されている。
図１に示されるように、携帯電話機は、制御装置１と、主記憶装置２と、通信装置３と、表示装置４と、入力装置５と、音声処理装置６と、外部記憶装置７とがアドレス、データ、コントロールのためのラインが複数本で構成されるシステムバス８に共通接続され、構成されている。
【００１５】
制御装置１は後述するキャッシュシステムを内蔵し、キャッシュバッファを用いて主記憶装置２に格納された複数のアプリケーションプログラムを切替え実行するとともに、後述する動画再生のための復号化処理を実行する。また、システムバス８に接続される通信装置３、表示装置４、入力装置５、音声処理装置６、外部記憶装置７を制御する、携帯電話機としての制御中枢となる。
【００１６】
通信装置３は、不図示の基地局のいずれかによって割り当てられるチャネルを介し、当該基地局との間で無線信号の送受信を行う。また、制御装置１による制御の下、不図示の情報ネットワーク経由で接続されたサーバから動画像データを取得することができる。通信装置３が取得した動画像データは、制御装置１による制御の下で主記憶装置２に保存される。
【００１７】
主記憶装置２には、上記したアプリケーションプログラムの他に、制御装置１において処理に利用される各種のデータが記憶される。例えば、携帯電話機として機能するために、通信相手の電話番号や電子メールアドレス等の個人情報を管理するアドレス帳、着信音やアラーム音を再生するための音声ファイル、待ち受け画面用の画像ファイル、各種設定データ、プログラムの処理過程で利用される一時的なデータ、更には、制御装置１により生成される表示画像（ＶＲＡＭ）なども保持するものとする。
また、外部記憶装置７には、上記したように通信装置３により取得された、例えば、動画像データ、音声ファイル等、比較的大容量のメディア情報が格納可能とされる。
【００１８】
上記した主記憶装置２は、ランダムアクセス可能な記憶デバイス（例えば、ＳＲＡＭ、ＤＲＡＭ）などによって構成され、また、外部記憶装置７は、メモリカードのような外部メモリ等により構成され、携帯電話機に脱着可能とされている。
【００１９】
表示装置４は、例えば、液晶表示パネルや有機ＥＬ（Electro-Luminescence）パネルなどの表示デバイスを用いて構成されており、制御装置によって生成される映像信号に応じた画像を表示する。１フレームは、例えば、携帯電話機の場合、ＱＶＧＡ（Quarter Video Graphics Array）フォーマットでは３２０×２４０画素、モバイルＰＣに用いられるＶＧＡフォーマットで６４０×４８０画素である。
ＭＰＥＧ符号化データは、１画素あたり、１．５バイトとして考えると、それぞれ、１１５ｋバイト、４５０ｋバイト程度の容量が必要となり、それに応じて制御装置１に内蔵されるキャッシュを設計する必要がある。
【００２０】
なお、表示装置４には、発信時における発信先の電話番号、着信時における着信相手の電話番号、受信メールや送信メールの内容、日付、時刻、バッテリ残量、発信成否、待ち受け画面、情報ネットワークを介して取得した動画像等、各種の情報や画像が表示される。
また、入力装置は５、例えば、電源キー、通話キー、数字キー、文字キー、方向キー、決定キー、発信キーなど、各種の機能が割り当てられたキーを有しており、これらのキーがユーザによって操作された場合に、その操作内容に対応する信号を発生し、これをユーザの指示として制御装置１に入力する。
【００２１】
音声処理装置６は、例えば、通信装置によってダウンロード取得され、記憶装置に格納された音楽ファイル等を復号して再生制御を行う。また、不図示のスピーカから出力される音声信号やマイクロフォンにおいて入力される音声信号の処理も行う。すなわち、マイクフォンから入力される音声を増幅し、アナログ／デジタル変換を行い、更に符号化等の信号処理を施し、デジタルの音声データに変換して制御装置に出力する。また、制御装置から供給される音声データに復号化、デジタル／アナログ変換、増幅等の信号処理を施し、アナログの音声信号に変換してスピーカに出力する。
【００２２】
図２は、図１に示す制御装置１と主記憶装置２とのインタフェース（メモリインタフェース）に着目してその詳細を示したブロック図である。
図２において、制御装置１は、携帯電話機の各種制御を行うメイン制御部１１と、アプリケーション実行制御部１２と、復号化処理部１３と、キャッシュシステム１４と、データ管理部１５と、アクセス頻度管理部１６とを有して構成される。また、主記憶装置２は、メイン記憶部２１と、キャッシュ記憶部２２とを有して構成され、キャッシュ記憶部２２は、第１のキャッシュ領域２２１と第２のキャッシュ領域２２２とを有して構成され、復号化処理の対象となる符号化データがメイン記憶部２１に記憶（格納）されるとともに、このメイン記憶部２１に記憶された符号化データの一部がキャッシュ記憶部２２に一時的に記憶（格納）可能とされている。
【００２３】
アプリケーション実行制御部１２は、例えば、メールや動画再生等の各種アプリケーションプログラムを切替え実行する。また、復号化処理部１３は、例えば、動画再生のためのアプリケーションプログラムを実行する際に、主記憶装置２のメイン記憶部２１に保存された動画像データ（符号化データ）を、キャッシュ記憶部２２に転送して復号化処理を実行する。キャッシュシステム１４は、キャッシュ記憶部２２のアクセス頻度に基づく重み付けを行う。詳細は後述する。
【００２４】
データ管理部１５は、使用するＯＳ（Operating System）に依存して主記憶装置２に格納される符号化データを管理する機能ブロックであり、ここでは、主記憶装置２に格納される符号化データが指定されると、当該データの主記憶装置２におけるアドレス情報を特定する。
【００２５】
一方、主記憶装置２のキャッシュ記憶部２２は、メイン記憶部２１と比較して容量が小さく高速アクセス可能なキャッシュバッファで構成され、制御装置１は、最近アクセスしたメイン記憶部２１内のデータをこのキャッシュバッファ（キャッシュ記憶部２２）に格納し、アクセス頻度管理部１３による管理の下、一度アクセスしてから長時間アクセスが無いデータをキャッシュバッファから掃き出し、メイン記憶部２１へ戻す制御を行う。
【００２６】
すなわち、制御装置１は、一度アクセスした内容（データ）を、その後直ちにアクセスする限りにおいてはキャッシュバッファにその内容が残っているため、制御装置１のマシンサイクル内においてアクセスが可能である（キャッシュヒット）。しかしながら、未だアクセスしてないデータ、あるいはキャッシュバッファに一度記憶された後、長時間アクセスがなかったデータについては上記したようにキャッシュバッファから既に掃き出されているため、再度メイン記憶部２１から読み出してくる必要があり（ミスヒット）、この場合、制御装置１のマシンサイクルの数倍の時間を要する。
【００２７】
なお、キャッシュ記憶部２２は、複数の領域に領域分けされ、ここでは、符号化データのヘッダ情報が格納される第１キャッシュ領域と、このヘッダ情報に対応する符号化データが格納される第２キャッシュ領域とに区分けされている。
制御装置１がメイン記憶部２１に記憶されている符号化データの復号化処理を実行するとき、符号化データのヘッダ情報をキャッシュ記憶部２２の第１キャッシュ領域２２１へ格納するとともに、ヘッダ情報に対応する符号化データを第２キャッシュ領域２２２へ格納し、これらキャッシュ記憶部２２に格納されたヘッダ情報、および符号化データをアクセスして復号化処理を行う。詳細は後述する。
【００２８】
また、アクセス頻度管理部１６は、復号化処理時におけるキャッシュ記憶部２２（第１キャッシュ領域２２１と第２キャッシュ領域２２２）へのアクセス頻度を監視し、アクセス頻度の低いキャッシュ領域に格納されたデータを優先的に更新させるためのデータを出力する。ここでは、各キャッシュ領域２２１、２２２に対するアクセス発生の都度、読み出されるＲｅａｄサイズに対しポイントを付与し、このポイントの高低によりアクセス頻度を管理する構成とした。
【００２９】
図３は、本発明の実施の形態に係る情報機器の復号化処理時におけるキャッシュ記憶部２２のアクセス手順を示すフローチャートである。
以下、図３のフローチャートを参照しながら図２に示すメモリインタフェースの動作について説明する。
【００３０】
制御装置１は、まず、アプリケーション実行制御部１２によりアプリケーションプログラムを実行し、データアクセス要求を生成する（ステップＳ３０１）。制御装置１は、キャッシュ記憶部２２の第１キャッシュ領域２２１に格納されているヘッダ情報を参照し、対応する第２キャッシュ領域２２２における目的のサンプル情報（符号化データ）の有無を判定する（スップＳ３０２）。
ここで、目的とするサンプル情報がキャッシュ記憶部２２の第２キャッシュ領域２２２に格納されており、すなわち、キャッシュヒットした場合（スップＳ３０３“Ｙｅｓ”）、制御装置１の復号化処理部１３は、第２キャッシュ領域２２２から読み出したサンプル情報の復号化処理を実行する（ステップＳ３０４、およびＳ３０６）。ここで復号化処理されたサンプル情報は、システムバス８経由で表示装置４に転送され、表示装置４にて所望の再生画像を得ることができる（ステップＳ３０７）。
【００３１】
なお、上記した復号化処理に先立ち、制御装置１は、アクセス頻度管理部１６にて、参照された、ヘッダ情報、およびサンプル情報に対してポイントを付与（＋１更新）し、各ポイントをキャッシュバッファ更新操作のために内部に保持しておくものとする（ステップＳ３０５）。
【００３２】
一方、ステップＳ３０３にて、ミスヒットした場合（ステップＳ３０３“Ｎｏ”）、制御装置１は、データ管理部１５により、メイン記憶部２１を参照することによって目的のサンプル情報（符号化データ）を取得する（ステップＳ３０８）。ここで、取得されたサンプル情報は、キャッシュ記憶部２２の第２キャッシュ領域２２２に転送される。
このとき、制御装置１内のキャッシュシステム１４が起動され、キャッシュ記憶部２２内のキャッシュバッファの更新操作が行われる。キャッシュバッファの更新操作において、サプルデータ毎、先にアクセス頻度管理部１６で付与されたポイントを比較し、低いポイントを持つサンプル情報が掃き出され、メイン記憶部２１から取得したサンプル情報がキャッシュ記憶部２２の第２キャッシュ領域２２２に書き込まれる（ステップＳ３０９）。
【００３３】
次に、制御装置１は、キャッシュ記憶部２２の第２キャッシュ２２２から目的のサンプル情報（符号化データ）を読み出し（ステップＳ３０４）、復号化処理を実行する（Ｓ３０６）。復号化処理されたサンプル情報は、システムバス８経由で表示装置４に転送され、このことにより、所望の表示を得ることができる（ステップＳ３０７）。
【００３４】
ところで、上記したように、データ管理モジュールの負荷が過大になる点は、「頻繁にアクセスされるデータの読み出処理」と、「読み出し位置（アドレス）の検索処理」である。
「頻繁にアクセスされるデータの読み出し処理」に関しては、データ管理モジュールと、復号化処理モジュールとの間にキャッシュシステムによる処理を挿入することでアクセス回数を減らすことができ、このため、データ管理モジュールの負荷を軽減することができる。但し、キャッシュバッファを１個のみとした場合には、ヘッダ情報の読み込み、サンプル情報の読み出しに際し、読み出し位置を前後に変更制御しながらのアクセスする必要があるため、キャッシュ記憶部２２にキャッシュされているデータにキャッシュヒットするためには、ヘッダ情報とサンプル情報の全てをキャッシュするための巨大なキャッシュバッファを用意する必要があり、メモリの使用効率としては非常に悪い。
【００３５】
このため、本発明の実施の形態では、キャッシュ記憶部２２を領域分けすることで、メモリの有効利用をはかることとした。すなわち、ヘッダ情報が格納される第１キャッシュ領域２２１と、サンプル情報が格納される第２キャッシュ領域２２２とを設けることで、分散配置されたデータを連続してキャッシュすることができるため、巨大なバッファを用意する必要がなくなる。
【００３６】
一方、「読み出し位置の検索処理」については、各サンプルを復号化処理するためには、該当するヘッダ情報にアクセスする必要があるため、都度、読み出し位置が前後に変更されるが、ヘッダ情報のキャッシュバッファを維持すれば、データ管理モジュールに対する前後へのアクセスを抑えることができる。
ヘッダ情報は、対応するサンプル情報よりデータサイズが小さいため、一定サイズ内に格納できる情報は、ヘッダ情報の方が多くキャッシュすることができる。したがって、ヘッダ情報がキャッシュされている第１キャッシュ領域２２１は長い間利用（アクセス）される場合が多い。この長い間利用されるデータがキャッシュされている第１キャッシュ領域２２１のキャッシュを維持し、１回のみのアクセスで終了するデータ（サンプル）情報がキャッシュされている第２キャッシュ領域２２２は、次のデータへの更新時に上書きするようにすればよい。
【００３７】
しかしながら、ヘッダ情報の読み出しに関しては、復号化処理部１３のみ感知するため、キャッシュシステム１４では判断することができない。このため、ヘッダ情報の管理データ（Ｒｅａｄサイズ）がサンプル情報と比べて小さいことに着目して、ある閾値以下のサイズでデータがキャッシュされているキャッシュバッファは、アクセス頻度が高く、ヘッダ情報がキャッシュされている可能性が高いため、高いポイント（重み付け）を付与して更新されないように、また、アクセス毎にポイントを付与することにより、ヘッダ情報をキャッシュする第１キャッシュ領域２２１が更新されないように配慮した。
但し、第２キャッシュ領域２２２にキャッシュされているサンブル情報のすべての利用が終了された後もヘッダ情報が保持され続ければ、逆にメモリの使用効率が悪くなるため、ある一定期間アクセスされなかった場合には、第１キャッシュ領域２２１も更新される仕組みとした。
【００３８】
以下、図４、図５に示すＭＰＥＧ４データフォーマットを用い、復号化処理時のデータアクセス順序について説明する。ここでは、従来例との差異を明確にする意味で従来例と本発明の実施の形態とを対比して示してある。
図４を参照しながら既知のアクセス順序から説明する。図４に示されるように、復号化処理モジュール（復号化処理部１３）は、まず、メイン記憶部２１に記憶されている符号化データからヘッダ情報０を読み出し、同データから対応するサンプル情報０を読み出す（Ｓ４０１）。このとき、データ管理モジュールでのデータ読み出し位置が後方に移動する。この後、復号化処理モジュールは、次のサンプル情報を復号化処理するために次のサンプル情報に対応するヘッダ情報１を読む（Ｓ４０２）。このとき、データ管理モジュール（データ管理部１５）でのデータ読み出し位置が前方へ移動する。そして、このヘッダ情報１に対応するサンプル情報１を読み出す（Ｓ４０３）。このときに管理モジュールでのデータ読み出し位置が後方へ移動する。
以上の手順を繰り返すことにより復号化処理を行うが、復号化処理モジュールがデータ管理モジュールに対してアクセスする回数は多く、また、読み出し位置も頻繁に前後に移動することがわかる。
【００３９】
次に、本発明の実施の形態に係る情報機器の復号化処理のアクセス順序について説明する。ここでは、キャッシュバッファは、２個（第１キャッシュ領域２２１と第２キャッシュ領域２２２）とするが、２個以上のキャッシュバッファを確保してもよい。ヘッダ情報がキャッシュバッファ＃１（図２の第１キャッシュ領域２２１）に、サンプル情報がキャッシュバッファ＃２（図２の第２キャッシュ領域２２２）にキャッシュされているものとする。
この場合、サンプル０から２まで復号化するためには、データ管理モジュールへのアクセス回数は２回である。ここでは連続したデータの読み出しになるため、読み出し位置の変更は発生しない。これに対し、図４に示した既存の方法では、ヘッダ０、ヘッダ１、ヘッダ２、サンプル０、サンプル１、サンプル２の読み出しのために、データ管理モジュールへのアクセス回数は計６回であり、読み出し位置の変更は計５回である。このことから、データ管理モジュールへのアクセス回数を削減できることは明白である。
【００４０】
次に、サンプルｋを復号化する場合、キャッシュバッファ＃１にはそのサンプルｋに対応するヘッダ情報がキャッシュされているが、そのキャッシュバッファ＃２にはサンプルｋがキャッシュされていないため、サンプルｋをキャッシュバッファ＃１またはキャッシュバッファ２にキャッシュする必要がある。
上記したアクセス頻度管理部１３による重み付けの結果、キャッシュバッファ＃１は、キャッシュバッファ＃２に比べてアクセス頻度が高く、ポイント値が高くなっているため、キャッシュバッファ＃１にヘッダ情報がキャッシュされていると判断し、キャッシュバッファ＃１の内容は保持を継続し、キャッシュバッファ＃２の内容を優先して更新することとして、サンプルｋ以降のサンプル情報をキャッシュバッファ＃２にキャッシュすることができる。このことにより、用意した複数のメモリ（キャッシュバッファ＃１、＃２）を有効に使用することができる。
【００４１】
図６は、復号化処理モジュール（復号化処理部２２）により実行される、ＭＰＥＧの伸長アルゴリズムを示すフローチャートである。
ＭＰＥＧの伸長アルゴリズムは、周知のように、おおまかには、可変長符号の復号処理と、逆量子化処理と、逆離散コサイン変換処理とおよび動き補償処理とからなる。すなわち、１フレーム分の伸長処理において、フレームデコードの開始時（ステップＳ６０１）、１マクロブロック毎に可変調復号（ステップＳ６０２）と、逆量子化（ステップＳ６０３）と、逆離散コサイン変換（ステップＳ６０４）と、動き補償（ステップＳ６０５）とが繰り返される。１フレームの最後のマクロブロックを処理することで（ステップＳ６０６）、１フレーム分の伸長処理が終了し、その結果として主記憶装置２の画像メモリに格納され、更に、制御装置１のソフトウェアにより表示用フォーマットに変換され、表示装置４に転送され、所望の動画像表示を得ることができる。
【００４２】
以上説明のように本発明の実施の形態に係る情報機器によれば、データ管理モジュール（データ管理部１５）と復号化処理モジュール（復号化処理部１３）との間にキャッシュシステム１４を設けることにより、復号化処理モジュール１３からデータ管理モジュール１５へのアクセス回数を減らすことができ、また、ヘッダ情報が格納されるキャッシュ（キャッシュ記憶部２２の第１キャッシュ領域２２１）を保持し続けることにより、キャッシュの使用効率を向上させることができ、データ管理モジュールに対する読み出し位置の変更回数を抑えることができる。
このことにより、データ管理モジュールの負荷が大幅に軽減され、かつ、復号化処理モジュールはハードウェアに依存することなく設計できるため汎用性を維持することができ、したがって、モジュール構造のソフトウェアが持つ利点を生かすことができる。本発明は、特に、高フレームレートの動画像ファィルの再生に用いて顕著な効果が得られる。
【００４３】
なお、本発明の情報機器における復号化処理方法は、例えば、図２において、第１のキャッシュ領域（キャッシュ記憶部２２の第１キャッシュ２２１）と、第２キャッシュ領域（キャッシュ記憶部２２の第２キャッシュ領域２２２）とを有するキャッシュ記憶部２２を備えた情報機器における復号化処理方法であって、例えば図３のフローチャートに示されるように、第１のキャッシュ領域または第２のキャッシュ領域の一方に格納されるヘッダ情報に基づき、第１のキャッシュ領域または第２のキャッシュ領域の他方に格納される符号化データをアクセスして復号化処理を実行するステップ（Ｓ３０１〜Ｓ３０４、Ｓ３０６）と、第１のキャッシュ領域および第２のキャッシュ領域へのアクセス頻度に応じ、前記両キャッシュ領域のそれぞれに対してポイントを付与するステップ（Ｓ３０５）と、前記キャッシュ記憶部の更新時、前記付与されたポイントを参照し、前記アクセス頻度の低いキャッシュ領域を優先的に更新するステップ（Ｓ３０８、Ｓ３０９）と、を有するものである。
【００４４】
本発明の情報機器における復号化処理方法によれば、ヘッダ情報に基づき、キャッシュ記憶部２２のキャッシュ領域に格納された符号化データをアクセスして復号化処理を実行し、複数のキャッシュ領域のそれぞれへのアクセス頻度に応じてそれぞれにポイントを付与することで、キャッシュ記憶部の更新時、ポイントを参照してアクセス頻度の低いキャッシュ領域を優先的に更新することでキャッシュを有効利用することができ、このことにより、ソフトウェアモジュールの汎用性を維持しながら高い性能を得ることができる。
【００４５】
なお、上記した本発明の実施の形態によれば、キャッシュ記憶部２２を第１のキャッシュ領域２２１と第２のキャッシュ領域２２２とに領域分けし、それぞれに、ヘッダ情報とサンプル情報を格納するものとして説明したが、それぞれに独立したキャッシュバッファを割当てても同様の効果が得られる。
また、上記した本発明の実施の形態によれば、情報機器として携帯電話機を例示したが、携帯電話機に限らず、ＰＤＡ（Personal Digital Assistants）、やゲーム機、あるいはＰＣ等にも同様に適用が可能である。
【００４６】
なお、上記した本発明の実施の形態に係る情報機器が持つ各構成ブロックの機能は、全てをソフトウェアによって実現しても、あるいはその少なくとも一部をハードウェアで実現してもよい。例えば、アプリケーション実行制御部１２における処理や、復号化処理部１３、キャッシュシステム部１４、データ管理部１５におけるデータ処理は、１または複数のプログラムによりコンピュータ上で実現してもよく、また、その少なくとも一部をハードウェアで実現してもよい。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施の形態に係る情報機器の内部構成を示すブロック図である。
【図２】図１に示す制御装置１と主記憶装置２とのインタフェースに着目してその詳細を示したブロック図である。
【図３】本発明の実施の形態に係る情報機器の復号化処理時におけるキャッシュ記憶部のアクセス手順を示すフローチャートである。
【図４】従来の復号化処理時のデータアクセス順序について、ＭＰＥＧ４データフォーマットを用いて説明した動作概念図である。
【図５】本発明の実施の形態に係る情報機器の復号化処理時のデータアクセス順序について、ＭＰＥＧ４データフォーマットを用いて説明した動作概念図である。
【図６】本発明の実施の形態に係る情報機器の復号化処理のアルゴリズムをフローチャートで示した図である。
【符号の説明】
【００４８】
１…制御装置、２…主記憶装置、３…通信装置、４…表示装置、５…入力装置、６…音声処理装置、７…外部記憶装置、８…システムバス、１１…メイン制御部、１２…アプリケーション実行制御部、１３…復号化処理部、１４…キャッシュシステム、１５…データ管理部、１６…アクセス頻度管理部、２１…メイン記憶部、２２…キャッシュ記憶部、２２１…第１キャッシュ領域、２２２…第２キャッシュ領域
【図１】
2008211681.tif 000003
【図２】
2008211681.tif 000004
【図３】
2008211681.tif 000005
【図４】
2008211681.tif 000006
【図５】
2008211681.tif 000007
【図６】
2008211681.tif 000008