(57)【要約】【課題】バスマスタ装置からの共有リソースに対するアクセスを、タスクの優先度に応じて適応的に管理可能なリソース管理装置及び方法を提供すること。【解決手段】複数のバス１１２〜１１４にそれぞれ少なくとも１つのバスマスタ１０１〜１０５が接続され、かつ各バスマスタが、複数のバスのいずれかを介して少なくとも１つの共有リソース１１９に接続され、かつ、複数のバスマスタが連携して動作する、タスク優先度が付与されたグループＸ，Ｙが少なくとも１つ存在するリソース管理装置において、調停情報管理部１２１が、現在、どのグループによってどのバスマスタが使用されているかを示す情報を各グループＸ，Ｙから得て、タスク優先度情報１３０を参照しつつ、バス調停情報１１６やバスマスタ調停情報１０６，１０８，１１０の内容を適応的に変更する【選択図】図１
2007164713.tif 000002
【特許請求の範囲】
【請求項１】
複数のバスにそれぞれ少なくとも１つのバスマスタが接続され、かつ各バスマスタが前記複数のバスのいずれかを介して少なくとも１つの共有リソースに接続され、かつ前記複数のバスマスタが連携して動作するグループが少なくとも１つ存在するデータ処理システムのリソース管理装置であって、
各グループの前記バスマスタ毎の要求リソースアクセスバンド幅を有するグループ情報に基づいて、前記複数のバスに関する前記共有リソースへの接続の優先順位と、前記複数のバスから前記共有リソースへのアクセスバンド幅を確保するためのバスアクセス最優先パターンとをバス調停情報として管理する調停情報管理部と、
前記調停情報管理部に管理されているバス調停情報に基づいて、複数のバスから前記共有リソースへのアクセス量を調停するバス調停部と、
前記バス調停部でアクセス権を獲得したバスから前記共有リソースへのアクセスを当該共有リソースの特性に基づいて制御するリソース制御部と
を備え、
前記調停情報管理部は、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バス調停情報に反映させるリソース管理装置。
【請求項２】
請求項１に記載のリソース管理装置であって、
前記調停情報管理部は、どのグループに属するどのバスマスタが使用中であるかを検出し、前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バス調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更するリソース管理装置。
【請求項３】
請求項１に記載のリソース管理装置であって、
前記データ処理システムは、前記複数のバスのいずれかに複数の前記バスマスタが接続され、かつ当該バスは前記複数のバスマスタのバス使用権を調停するためのバスマスタ調停部を有するものであり、
前記調停情報管理部は、前記グループ情報に基づいて、前記複数のバスマスタに関する前記共有リソースへの接続の優先順位と、前記複数のバスマスタから前記共有リソースへのアクセスバンド幅を確保するためのバスマスタアクセス最優先パターンとをバスマスタ調停情報として管理し、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バスマスタ調停情報に反映させるリソース管理装置。
【請求項４】
請求項３に記載のリソース管理装置であって、
前記調停情報管理部は、どのグループに属するどのバスマスタが使用中であるかを検出し、前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バスマスタ調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更するリソース管理装置。
【請求項５】
複数のバスにそれぞれ少なくとも１つのバスマスタが接続され、かつ各バスマスタが前記複数のバスのいずれかを介して少なくとも１つの共有リソースに接続され、かつ前記複数のバスマスタが連携して動作するグループが少なくとも１つ存在するデータ処理システムのリソース管理方法であって、
各グループの前記バスマスタ毎の要求リソースアクセスバンド幅を有するグループ情報に基づいて、前記複数のバスに関する前記共有リソースへの接続の優先順位と、前記複数のバスから前記共有リソースへのアクセスバンド幅を確保するためのバスアクセス最優先パターンとをバス調停情報として管理し、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バス調停情報に反映させるステップと、
前記調停情報管理部に管理されているバス調停情報に基づいて、複数のバスから前記共有リソースへのアクセス量を調停するステップと、
前記バス調停部でアクセス権を獲得したバスから前記共有リソースへのアクセスを当該共有リソースの特性に基づいて制御するステップと
を有するリソース管理方法。
【請求項６】
請求項５に記載のリソース管理方法であって、
どのグループに属するどのバスマスタが使用中であるかを検出するステップと、
前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バス調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更するステップと
を更に有するリソース管理方法。
【請求項７】
請求項５に記載のリソース管理方法であって、
前記データ処理システムは、前記複数のバスのいずれかに複数の前記バスマスタが接続され、かつ当該バスは前記複数のバスマスタのバス使用権を調停するためのバスマスタ調停部を有するものであり、
前記リソース管理方法は、前記グループ情報に基づいて、前記複数のバスマスタに関する前記共有リソースへの接続の優先順位と、前記複数のバスマスタから前記共有リソースへのアクセスバンド幅を確保するためのバスマスタアクセス最優先パターンとをバスマスタ調停情報として管理し、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バスマスタ調停情報に反映させるステップを更に有するリソース管理方法。
【請求項８】
請求項７に記載のリソース管理方法であって、
どのグループに属するどのバスマスタが使用中であるかを検出するステップと、
前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バスマスタ調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更するステップと
を更に有するリソース管理方法。
【請求項９】
請求項１ないし４のいずれか一項に記載のリソース管理装置を備える移動体通信システム。
【請求項１０】
請求項１ないし４のいずれか一項に記載のリソース管理装置を備えるカーナビゲーションシステム。
【請求項１１】
請求項１ないし４のいずれか一項に記載のリソース管理装置を備えるＡＶ（オーディオビジュアル）システム。
【請求項１２】
コンピュータに、請求項５ないし８のいずれか一項に記載の各ステップを実行するプログラム。
【請求項１３】
請求項１２に記載のプログラムが記録されている情報記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のバスにそれぞれ少なくとも１つのバスマスタが接続されてなるマルチバスマスタかつマルチバス構成のデータ処理システムにおいて、各バスマスタから共有リソースへのアクセスを管理するためのリソース管理装置に関する。
【背景技術】
【０００２】
システムＬＳＩにおいて複数のバスマスタが共通バスを介してリソースを共有する場合、当該リソースへのアクセスを効率的に調停する必要がある。ここに、バスマスタはマイクロプロセッサＤＳＰ（Digital Signal Processor）、ＤＭＡ（Direct Memory access）コントローラなどであり、共有リソースはメモリ、周辺Ｉ／Ｏ（Input／Output）コントローラなどである。
【０００３】
複数のバスマスタが複数のバスを介して共有リソースにアクセスする、マルチバスマスタかつマルチバス構成のデータ処理システムにおいて、各バスマスタから共有リソースへのアクセスを管理するリソース管理装置が、例えば、特許文献１に記載されている。以下、図６〜図１０を用いて、特許文献１に記載される従来のリソース管理装置の一例の、具体的な構成及び動作を説明する。
【０００４】
なお、本明細書の図６は、特許文献１の図８に相当し、本明細書の図７は、特許文献１の図３に相当し、本明細書の図８は、特許文献１の図９に相当し、本明細書の図９は、特許文献１の図１０に相当し、また、本明細書の図１０は、特許文献１の図１１に相当する。また、本明細書の図６〜図１０に示される装置の構成やデータ構造等は、特許文献１の各図に示されるものと同じあるが、参照符号については、本明細書において独自の参照符号を使用する場合がある。
【０００５】
具体的な説明を行う前に、この特許文献１に記載の従来のリソース管理装置の要点をまとめておく。すなわち、マルチバスマスタかつマルチバス構成のデータ処理システムにおいて、各バスマスタから共有リソースへのアクセスを管理するということは、要するに、各バスマスタの共有リソースへのアクセスを時分割で切り替え、そして、その時分割の割合を調整することである。
【０００６】
そして、従来のリソース管理装置は、その調整のための手法として、以下の３つの方法を採用している。
【０００７】
（１）バス調停情報によってバス調停を行う第１の方法。この第１の方法では、調停情報管理部がバス調停情報を管理しており、調停情報管理部は、バスマスタ毎の共有リソースへのアクセス許可割合の要求変更により、必要に応じて、そのバス調停情報を更新する。
【０００８】
（２）バスマスタ調停情報によってバスマスタの調停を行う第２の方法。この第２の方法では、同じく、調停情報管理部がバスマスタ調停情報を管理しており、調停情報管理部は、バスマスタ毎の共有リソースへのアクセス許可割合の要求変更により、必要に応じて、そのバスマスタ調停情報更新する。
【０００９】
（３）複数のバスマスタが連携して一つのグループとして機能を発揮する場合に、どのバスマスタがどのグループに属しているかを示すグループ情報を保持しておき、そして、各グループのメモリアクセスの頻度やデータ転送量に着目し、グループ毎にリソース使用率を割り当て、その割り当てられたグループ毎の使用率の範囲内で、各グループに属するバスマスタのバスアクセスに関して、上記（１），（２）の方法による調停を実施する第３の方法。この第３の方法では、調停情報管理部は、グループ情報を参照しつつ、上記バスマスタ調停情報やバス調停情報を管理し、バスマスタ毎の共有リソースへのアクセス許可割合の要求変更により、必要に応じて、そのバスマスタ調停情報やバス調停情報を更新する。
【００１０】
このように、３つの方法を用いて、結果的に、各バスマスタが共有リソースにアクセスしようとした場合における、そのアクセスが許可される割合を最適化することが可能である。
【００１１】
このように、各バスマスタの共有リソースに対するアクセス許可割合を、最低限どれだけ保証したいかが決まれば、バス調停情報管理部が、バス調停情報やバスマスタ調停情報の内容（具体的には、バス優先順位及びバスアクセス最優先パターン、バスマスタ優先順位とバスマスタアクセス最優先パターン）を最適化し、これによって、各バスマスタの共有リソースに対するアクセス許可割合を、目標値のとおりに保証することが可能となる。なお、一度、バス調停情報やバスマスタ調停情報の内容の最適化がなされた後は、バスマスタ毎の共有リソースへのアクセス許可割合の要求変更があり、かつ、バス調停情報管理部が、アクセス許可割合の変更の必要があると認めるまで、そのバス調停情報やバスマスタ調停情報の内容が維持される。以上が、従来技術の概要である。
【００１２】
以下、特許文献１に記載された技術について、順を追って、具体的に説明する。図６は、従来のリソース管理装置の構成の一例を示すブロック図である。図６において、１０１、１０２、１０３、１０４、１０５はバスマスタ、１１２、１１３、１１４はバス、１０６、１０８、１１０はバスマスタ調停情報、１０７、１０９、１１１はバスマスタ調停部、１１５はリソース管理部、１１６はバス調停情報、１１７はバス調停部、１１８はリソース制御部、１１９は共有リソース、１２１は調停情報管理部、１２４はグループ情報である。
【００１３】
特許文献１に記載される従来のリソース管理装置は、図６に示すように、複数のバス（１１２〜１１４：以下の説明では各々をバス０〜バス２と呼ぶこともある）の各々に少なくとも１つのバスマスタ（１０１〜１０５：以下の説明では各々を、バスマスタＡ〜バスマスタＥと呼ぶことがある）が接続され、かつ、各バスマスタ（１０１〜１０５）が前記複数のバスのいずれかを介して少なくとも１つの共有リソース１１９に接続されてなるデータ処理システムのリソース管理装置である。
【００１４】
そして、複数のバス（１１２〜１１４）から共有リソース１１９へのアクセス量を調停するためのバス調停部１１７と、このバス調停部１１７における調停処理のために、バス優先順位と、複数のバスから共有リソースへのアクセスバンド幅を確保するためのバスアクセス最優先パターンとをバス調停情報として管理するための調停情報管理部１２１と、バス調停部でアクセス権を獲得したバスから共有リソースへのアクセスを当該共有リソースの特性に基づいて制御するためのリソース制御部１１８と、を備えている。
【００１５】
この方法によれば、バス選択の基準となるバス優先順位と、リソースアクセスバンド幅確保の時間分解能を単位時間とするバスアクセス最優先パターンとがバス調停情報１１６として用意される。このバス調停情報１１６は、個々のバス（１１２〜１１４）とは独立して存在するため、アクセスバンド幅確保の単位時間は、個々のバスのバスサイクルとは独立に共有リソースに合わせて設定することができ、個々のバスのバスサイクルに影響されない。そのため、アクセス権を獲得したバスからのアクセスはそのリソース固有のアクセス効率で、その時間単位に見合ったアクセスが行われる。
【００１６】
共有リソースへのデータ転送量はリソース毎でのアクセス効率と時間単位の長さで決まる。個々のバスの転送能力はそれぞれのバスサイクル長やデータ転送幅などに依存するが、このようなそれぞれのバスの転送能力とは独立に、それぞれのリソース毎に、そのリソースとしての固有のアクセス効率に添った形でのアクセスバンド幅の保証を行うことができる。
【００１７】
各バスマスタ１０１〜１０５は、バス１１２〜１１４を通して共有リソース１１９にアクセスするためのトランザクションを発生する。トランザクションは、共通のメモリやデータベース等に対する、接続、検索、データ更新、切断等の一連の処理である。
【００１８】
バス１１２（バス０）は、バスマスタ１０１，１０２を持つバスである。バスマスタ調停部１０７は、バスマスタ調停情報１０６を基に、バス１１２に接続されているバスマスタ１０１，１０２からのアクセス要求を調停する。バス１１３（バス１）は、バスマスタ１０３，１０４を持つバスである。バスマスタ調停部１０９は、バスマスタ調停情報１０８をもとに、バス１１３に接続されているバスマスタ１０３，１０４からのアクセス要求を調停する。バス１１４（バス２）は、バスマスタ１０５を持つバスである。バスマスタ調停部１１１は、バスマスタ調停情報１１０をもとに、バス１１４に接続されているバスマスタ１０５からのアクセス要求を調停する。
【００１９】
リソース管理部１１５は、バス１１２〜１１４から共有リソース１１９に対するアクセスを管理するように、バス調停部１１７とリソース制御部１１８とで構成される。バス調停部１１７は、バス１１２〜１１４から共有リソース１１９に対するアクセスをバス調停情報１１６に基づき調停する。リソース制御部１１８は、バス調停部１１７により調停されたバスからのアクセスを共有リソース１１９に伝える。
【００２０】
調停情報管理部１２１は、バスマスタ調停情報１０６，１０８，１１０、バス調停情報１１６をそれぞれ管理し、これらをバスマスタ毎の共有リソース１１９へのアクセス許可割合の要求変更により必要に応じて更新する。なお、上記のとおり、バスマスタ１０１，１０２，１０３，１０４，１０５を適宜バスマスタA，B，Ｃ，Ｄといい、バス１１２，１１３，１１４を適宜バス０，１，２という。また、グループ情報１２４を基に、それぞれバスマスタ調停情報１０６，１０８，１１０、バス調停情報１１６を管理し、バスマスタ毎の共有リソース１１９へのアクセス許可割合の要求変更により必要に応じて更新する。
【００２１】
また、１２２はバスマスタ１０１，１０２からなるグループＸであり、１２３はバスマスタ１０２，１０３，１０４，１０５からなるグループＹであり、１２４は各バスマスタのグループ所属情報と各バスマスタのグループ毎での共有リソース１１９へのアクセス許可割合の情報とを格納するグループ情報である。
【００２２】
リソース１１９は、例えばＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）などのメモリ、又は周辺Ｉ／Ｏコントローラである。
【００２３】
以上の構成をもつリソース管理装置において、それぞれのバスマスタＡ〜Ｅが共有リソース１１９へアクセスする場合、共有リソース１１９へのアクセスを希望するバスマスタは接続されるバスへのアクセス要求をそれぞれのバスマスタ調停部１０７，１０９，１１１に対して行う。それぞれのバスマスタ調停部１０７，１０９，１１１は、それぞれのバスマスタ調停情報１０６，１０８，１１０に基づき、要求してきたバスマスタのうちの１つにそれぞれのバスへのアクセス許可を与える。それぞれのバス０，１，２においてアクセス許可を与えられたバスマスタはそれぞれのバスを通して、リソース制御部１１８へのアクセス要求をバス調停部１１７に対して行う。バス調停部１１７はバス調停情報１１６に基づき、要求してきたバスのうちの１つにリソース制御部１１８へのアクセス許可を与える。アクセス許可を与えられたバスへのアクセス許可を与えられているバスマスタはリソース制御部１１８を通して、共有リソース１１９にアクセスできる。
【００２４】
図７は、図６中のバス調停情報１１６をテーブル形式の情報とした例を示す図である。図７の最も左の列はバス間の固定的な優先順位を表し、上の行にあるバスほど高い優先順位を有する。これは上記の「バス優先順位」にあたる。次の１０列は、バス間の最優先順位を表し、「１」で表示されるバスが最優先順位を有する。これは、上記の「バスアクセス最優先パターン」にあたる。各列を「スロット」と呼び、各列の一番上の数値を「スロット番号」と呼ぶ。ここで、バス優先順位、アクセス最優先パターン、スロットの数は実施の環境により異なり、それぞれの実施の環境において各バスで保証したいアクセス許可の割合に基づいて設定することができる。
【００２５】
バス調停部１１７は、アクセスバンド幅確保の時間分解能に相当する一定期間毎に参照するスロットを切り替えて選択し、その期間の間に受けたバスからのアクセス要求に対して、その時点で参照しているスロットの情報をもとに調停を行う。ここで、バスからのアクセス要求はバスの動作クロックで行われるが、スロットの遷移時間はバスの動作サイクルとは独立に設定することができる。
【００２６】
スロットの選択はスロット番号０からスロット番号９まで順に切り替え、再びスロット番号０から繰り返す。バス調停部１１７が行う調停は、一定期間の間に受けたアクセス要求と、参照しているスロット中の値とを比較し当該スロットにおいて「１」で表されているバスからのアクセス要求があれば、そのバスに対してリソース制御部１１８へのアクセス許可を与える。「１」で表されているバスからのアクセス要求がなければ、上記のバス優先順位に従って、アクセスを要求しているバスの中から最も優先順位の高いバスに対してアクセス許可を与える。
【００２７】
これらの調停を期間毎に参照するスロットを切り替えながら繰り返す。バス調停部１１７が一定期間の間にアクセス要求を受けなかった場合は、参照するスロットの切り替えだけを行う。
【００２８】
次に、１つのバスに複数のバスマスタが接続される場合の例を挙げる。グループＸは、バスマスタＡ、バスマスタＢを使用してグループＸとしての機能を実現する。つまり、バスマスタＡとバスマスタＢが連携することによって、グループＸの機能が実現される。また、グループＹは、バスマスタＢ、バスマスタＣ、バスマスタＤ、バスマスタＥを使用してグループＹとしての機能を実現する。つまり、バスマスタＢ、バスマスタＣ、バスマスタＤ、バスマスタＥが連携することによって、グループＹの機能が実現される。
【００２９】
図８は、バスマスタ調停情報及びバス調停情報の具体例を示す図であり、（ａ）はバスマスタ調停情報（参照符号１０６）をテーブル形式の情報とした例を示す図であり、（ｂ）は、バスマスタ調停情報（参照符号１０８）をテーブル形式の情報とした例を示す図であり、（ｃ）はバス調停情報（参照符号１１６）をテーブル形式の情報とした例を示す図である。
【００３０】
バス調停部１１７が、図８（ｃ）に示すバス調停情報１１６を用いて調停を行うことにより、各バスに対してリソース制御部１１８へのアクセス許可を与える割合を保証できることは、前述したものと同様である。
【００３１】
さらに同様に、バスマスタ調停部１０７が図８（ａ）のバスマスタ調停情報１０６を、バスマスタ調停部１０９が図８（ｂ）のバスマスタ調停情報１０８を用いることで、各バスマスタに対して、それぞれのバスへのアクセス許可を与える割合を保証することができる。
【００３２】
次に、複数のアプリケーションが並列に実行されるシステムにおいて、アプリケーション毎に共有リソース１１９へのアクセスバンド幅を保証したい場合、グループ情報１２４を使用することで、これが可能になる。
【００３３】
具体的な例として、２つのアプリケーションＸ，Ｙが並列に実行される場合を考える。アプリケーションＸで使用されるバスマスタの組み合わせはバスマスタＡ，Ｂであり、グループ（Ｘ）１２２で表される。またアプリケーションＹで使用されるバスマスタの組み合わせはバスマスタＢ，Ｃ，Ｄ，Ｅであり、グループ（Ｙ）１２３で表される。
【００３４】
図９は、グループ情報（参照符号１２４）の一例を示す図であり、図９（ａ）は各グループにおける使用されるバスマスタの組み合わせと、そのグループに割り当てられる共有リソース（参照符号１１９）へのアクセス許可を各バスマスタに割り振る割合を示す図であり、図９（ｂ）は各グループに対しての共有リソース（参照符号１１９）へのアクセス許可の割合を示す図である。
【００３５】
バスマスタＡ，Ｂ，Ｃ，Ｄ，Ｅに対して割り当てられる共有リソース１１９へのアクセス許可割合は、それぞれ１割、３割、１割６分、２割４分、２割となる。それぞれのバスマスタに対する、共有リソース１１９へのアクセス許可割合をもとに、前に述べた方法で、バスマスタ調停情報１０６，１０８，１１０並びにバス調停情報１１６を設定することができる。
【００３６】
図１０は、図９のグループ情報を考慮したバスマスタ調停情報及びバス調停情報の一例を示す図であり、（ａ）はバスマスタＡ，Ｂに関係するバスマスタ調停情報（参照符号１０６）の例を示す図であり、（ｂ）はバスマスタＣ，Ｄに関係するバスマスタ調停情報（参照符号１０８）を例を示す図であり、（ｃ）はバス調停情報（参照符号１１６）の例を示す図である。
【００３７】
図１０（ａ）〜（ｃ）のように、バス優先順位及びバスアクセス最優先パターンを決定し、そして、図９（ｂ）のようにグループ毎のリソース使用率を設定することによって、各バスマスタに関して、図９（ａ）に示される割合で、アクセスバンド幅の保証が行なわれる。
【００３８】
以上より、グループ情報１２４を用いることにより、複数アプリケーションが並列に動作する場合であっても、アプリケーション毎に共有リソース１１９へのアクセス許可割合を保証することができる。また、動作するアプリケーションが変化した場合においても、グループ情報１２４を変更することにより、アプリケーション毎に共有リソース１１９へのアクセス許可割合を変化させることができる。
【特許文献１】特開２００４−２４６８６２号公報
【発明の開示】
【発明が解決しようとする課題】
【００３９】
従来のマルチバスかつマルチバスマスタ方式のシステムでは、各バスマスタからの共有リソースへのアクセスを、バス調停情報とバスマスタ調停情報に基づいて管理しているが、これらの情報は、一旦、設定されると、バスマスタがアクセス許可割合の変更要求を出し、かつ、調停情報管理部が、アクセス許可割合の変更の必要性ありと認めるまでは、変更されることがない。
【００４０】
しかし、複数のバスマスタをもつシステムにおける各バスマスタの稼働状況は、刻一刻と変化するものであり、いろいろな稼働状況が存在する。例えば、同程度の優先度をもつタスクの処理が競合する場合のあれば、優先度の異なるタスクの処理が競合する場合もある。
【００４１】
ここで、後者の場合の例として、複数のバスマスタが優先度が低いタスクの処理を同時に行っている状態で、他のバスマスタが極めて優先度の高いタスクの処理を開始した状況を想定する。なお、「優先度が高い処理」というのは、例えば、「決して破綻させてはならず、リアルタイム性が厳密に要求されるような処理」であり、「優先度が低い処理」というのは、例えば、「他の競合するバスマスタが処理した後の余った時間で処理ができればよいような、厳密なリアルタイム性が要求されない処理」である。
【００４２】
この状況下では（つまり、複数のバスマスタが優先度が低いタスクの処理を同時に行っている状態で、他のバスマスタが極めて優先度の高いタスクの処理を開始し、そして、そのタスク処理が継続している状況下では）、先行している処理は優先度の低い処理であるため、後発の優先度の高い処理を最優先させ、その処理を迅速に終了させるのが、現実のニーズに即しているといえる。また、優先度が低い処理は、本来、少々の遅延は許容される処理であるため、その優先度の高い処理が実行中の短い期間においてのみ、優先度の高い処理を優先させたからといって、現実的には何も問題は生じないはずである。
【００４３】
しかし、上記従来の技術では、一度決められた調停規則は、バスマスタ等によりアクセス許可割合の変更要求を出し、かつ、調停情報管理部がアクセス許可割合の変更の必要性ありと認めるまでは、変更されることがない。したがって、上記の状況下でも、既存の調停規則に縛られたまま、適応的な、融通をきかせた処理ができない。
【００４４】
このように、従来のリソースアクセス管理技術では、複数のバスマスタの現実の稼働状況（例えば、いくつのバスマスタが稼働しているか等）、及び、どのような優先度の処理が行われているか、という観点からみた稼働状況によっては、現実のニーズに合致しているとは、必ずしも言えないようなアクセス調停がなされる場合があり得る。
【００４５】
本発明は、上記従来の事情に鑑みてなされたものであって、バスマスタ装置からの共有リソースに対するアクセスを、タスクの優先度に応じて適応的に管理可能なリソース管理装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００４６】
本発明のリソース管理装置は、複数のバスにそれぞれ少なくとも１つのバスマスタが接続され、かつ各バスマスタが前記複数のバスのいずれかを介して少なくとも１つの共有リソースに接続され、かつ前記複数のバスマスタが連携して動作するグループが少なくとも１つ存在するデータ処理システムのリソース管理装置であって、各グループの前記バスマスタ毎の要求リソースアクセスバンド幅を有するグループ情報に基づいて、前記複数のバスに関する前記共有リソースへの接続の優先順位と、前記複数のバスから前記共有リソースへのアクセスバンド幅を確保するためのバスアクセス最優先パターンとをバス調停情報として管理する調停情報管理部と、前記調停情報管理部に管理されているバス調停情報に基づいて、複数のバスから前記共有リソースへのアクセス量を調停するバス調停部と、前記バス調停部でアクセス権を獲得したバスから前記共有リソースへのアクセスを当該共有リソースの特性に基づいて制御するリソース制御部とを備え、前記調停情報管理部は、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バス調停情報に反映させる。
【００４７】
この構成により、各グループのタスク優先度を有するタスク優先度情報をバス調停情報に反映させることが可能となる。すなわち、複数グループのタスク優先度に基づいて、当該グループがバスマスタを利用する際に、バス優先順位及びバスアクセス最優先パターンを適応的に変更することによって、タスク優先度が高いグループ（のバスマスタ）についての、処理開始要求から処理完了までの最大遅れ時間を減少させることができ、また、その優先度の高いグループに関して高負荷がかかった場合に、より多くの処理を実行することができる。
【００４８】
また、本発明のリソース管理装置において、前記調停情報管理部は、どのグループに属するどのバスマスタが使用中であるかを検出し、前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バス調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更する。
【００４９】
この構成により、現実のタスク処理状況に応じた融通性のある適応的な共有リソースに対するアクセス管理を実現することができる。
【００５０】
また、本発明のリソース管理装置において、前記データ処理システムは、前記複数のバスのいずれかに複数の前記バスマスタが接続され、かつ当該バスは前記複数のバスマスタのバス使用権を調停するためのバスマスタ調停部を有するものであり、前記調停情報管理部は、前記グループ情報に基づいて、前記複数のバスマスタに関する前記共有リソースへの接続の優先順位と、前記複数のバスマスタから前記共有リソースへのアクセスバンド幅を確保するためのバスマスタアクセス最優先パターンとをバスマスタ調停情報として管理し、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バスマスタ調停情報に反映させる。
【００５１】
この構成により、各グループのタスク優先度を有するタスク優先度情報をバスマスタ調停情報に反映させることが可能となる。すなわち、複数グループのタスク優先度に基づいて、当該グループがバスマスタを利用する際に、バスマスタ優先順位及びバスマスタアクセス最優先パターンを適応的に変更することによって、タスク優先度の高いグループの、処理開始要求から処理完了までの最大遅れ時間を減少させることができ、また、その優先度の高いグループに関して高負荷がかかった場合に、より多くの処理を実行することができる。
【００５２】
また、本発明のリソース管理装置において、前記調停情報管理部は、どのグループに属するどのバスマスタが使用中であるかを検出し、前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バスマスタ調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更する。
【００５３】
この構成により、現実のタスク処理状況に応じた融通性のある適応的な共有リソースに対するアクセス管理を実現することができる。
【００５４】
本発明のリソース管理方法は、複数のバスにそれぞれ少なくとも１つのバスマスタが接続され、かつ各バスマスタが前記複数のバスのいずれかを介して少なくとも１つの共有リソースに接続され、かつ前記複数のバスマスタが連携して動作するグループが少なくとも１つ存在するデータ処理システムのリソース管理方法であって、各グループの前記バスマスタ毎の要求リソースアクセスバンド幅を有するグループ情報に基づいて、前記複数のバスに関する前記共有リソースへの接続の優先順位と、前記複数のバスから前記共有リソースへのアクセスバンド幅を確保するためのバスアクセス最優先パターンとをバス調停情報として管理し、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バス調停情報に反映させるステップと、前記調停情報管理部に管理されているバス調停情報に基づいて、複数のバスから前記共有リソースへのアクセス量を調停するステップと、前記バス調停部でアクセス権を獲得したバスから前記共有リソースへのアクセスを当該共有リソースの特性に基づいて制御するステップとを有する。
【００５５】
この方法により、各グループのタスク優先度を有するタスク優先度情報をバス調停情報に反映させることが可能となる。すなわち、複数グループのタスク優先度に基づいて、当該グループがバスマスタを利用する際に、バス優先順位及びバスアクセス最優先パターンを適応的に変更することによって、タスク優先度が高いグループ（のバスマスタ）についての、処理開始要求から処理完了までの最大遅れ時間を減少させることができ、また、その優先度の高いグループに関して高負荷がかかった場合に、より多くの処理を実行することができる。
【００５６】
また、本発明のリソース管理方法は、どのグループに属するどのバスマスタが使用中であるかを検出するステップと、前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バス調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更するステップとを更に有する。
【００５７】
この方法により、現実のタスク処理状況に応じた融通性のある適応的な共有リソースに対するアクセス管理を実現することができる。
【００５８】
また、本発明のリソース管理方法において、前記データ処理システムは、前記複数のバスのいずれかに複数の前記バスマスタが接続され、かつ当該バスは前記複数のバスマスタのバス使用権を調停するためのバスマスタ調停部を有するものであり、前記リソース管理方法は、前記グループ情報に基づいて、前記複数のバスマスタに関する前記共有リソースへの接続の優先順位と、前記複数のバスマスタから前記共有リソースへのアクセスバンド幅を確保するためのバスマスタアクセス最優先パターンとをバスマスタ調停情報として管理し、前記バスマスタが前記共有リソースにアクセスする際に、各グループのタスク優先度を有するタスク優先度情報を前記バスマスタ調停情報に反映させるステップを更に有する。
【００５９】
この方法により、各グループのタスク優先度を有するタスク優先度情報をバスマスタ調停情報に反映させることが可能となる。すなわち、複数グループのタスク優先度に基づいて、当該グループがバスマスタを利用する際に、バスマスタ優先順位及びバスマスタアクセス最優先パターンを適応的に変更することによって、タスク優先度の高いグループの、処理開始要求から処理完了までの最大遅れ時間を減少させることができ、また、その優先度の高いグループに関して高負荷がかかった場合に、より多くの処理を実行することができる。
【００６０】
また、本発明のリソース管理方法は、どのグループに属するどのバスマスタが使用中であるかを検出するステップと、前記タスク優先度情報を参照して、タスク優先度の高いグループに属する前記バスマスタのリソース使用率を高める方向に、前記バスマスタ調停情報の前記バス優先順位及びバスアクセス最優先パターンの少なくとも一方を適応的に変更するステップとを更に有する。
【００６１】
この方法により、現実のタスク処理状況に応じた融通性のある適応的な共有リソースに対するアクセス管理を実現することができる。
【００６２】
また、本発明は、上記のいずれかのリソース管理装置を備える移動体通信システムを提供する。これにより、上記いずれかに記載のリソース管理装置と同様の作用効果を移動体通信システムにおいて実現することができる。
【００６３】
また、本発明は、上記のいずれかのリソース管理装置を備えるカーナビゲーションシステムを提供する。これにより、上記いずれかに記載のリソース管理装置と同様の作用効果をカーナビゲーションシステムにおいて実現することができる。
【００６４】
また、本発明は、上記のいずれかのリソース管理装置を備えるＡＶ（オーディオビジュアル）システムを提供する。これにより、上記いずれかに記載のリソース管理装置と同様の作用効果をＡＶシステムにおいて実現することができる。
【００６５】
また、本発明は、コンピュータに、上記のいずれかのリソース管理方法の各ステップを実行するプログラムを提供する。このプログラムにより、タスク優先度を考慮した柔軟なリソース管理を行うことができる。
【００６６】
また、本発明は、上記のプログラムが記録されている情報記録媒体を提供する。この記録媒体により、タスク優先度を考慮した柔軟なリソース管理を行うことができる。
【発明の効果】
【００６７】
本発明によれば、バスマスタ装置からの共有リソースに対するアクセスを、タスクの優先度に応じて適応的に管理可能なリソース管理装置及び方法を提供することができる。
【発明を実施するための最良の形態】
【００６８】
図１は、本発明の実施形態に係るリソース管理装置を含むデータ処理システムの構成の一例を示すブロック図である。図１において、図６と共通する部分には同じ参照符号を付してある。
【００６９】
図１において、１０１、１０２、１０３、１０４、１０５はバスマスタ、１１２、１１３、１１４はバス、１０６、１０８、１１０はバスマスタ調停情報、１０７、１０９、１１１はバスマスタ調停部、１１５はリソース管理部、１１６はバス調停情報、１１７はバス調停部、１１８はリソース制御部、１１９は共有リソース、１２１は調停情報管理部、１２４はグループ情報である。なお、リソース管理装置は、少なくともリソース管理部１１５の機能を有する。
【００７０】
バスマスタＡ，ＢはグループＸ（参照符号１２２）に属する。バスマスタＡ，Ｂは、連携して、グループＸ（参照符号１２２）としての機能を実現する。また、バスマスタＢ，Ｃ，Ｄ，ＥはグループＹ（参照符号１２３）に属する。バスマスタＢ，Ｃ，Ｄ，Ｅは、連携して、グループＹ（参照符号１２３）としての機能を実現する。
【００７１】
以上の構成は、図６と同じである。また、調停情報管理部１２１がもつ基本的な機能も同じである。
【００７２】
つまり、すなわち、マルチバスマスタかつマルチバス構成のデータ処理システムにおいて、各バスマスタから共有リソースへのアクセスを管理するということは、要するに、各バスマスタの共有リソースへのアクセスを時分割で切り替え、そして、その時分割の割合を調整することであり、その調整のための手法として、バス調停情報１１６によってバス調停を行う第１の方法と、バスマスタ調停情報（１０６，１０８，１１０）によってバスマスタの調停を行う方法と、複数のバスマスタが連携して一つのグループとして機能を発揮する場合に、どのバスマスタがどのグループに属しているかを示すグループ情報を保持しておき、そして、各グループのメモリアクセスの頻度やデータ転送量に着目し、グループ毎にリソース使用率を割り当て、その割り当てられたグループ毎の使用率の範囲内で、各グループに属するバスマスタのバスアクセスに関して、上記バス調停情報１１６やバスマスタ調停情報（１０６，１０８，１１０）に基づく調停を実施する第３の方法と、がある。
【００７３】
そして、各バスマスタ（１０１〜１０５）の共有リソースに対するアクセス許可割合を、最低限どれだけ保証したいかが決まれば、バス調停情報管理部１２１が、バス調停情報１１６やバスマスタ調停情報１０６，１０８，１１０の内容（具体的には、バス優先順位及びバスアクセス最優先パターン、バスマスタ優先順位とバスマスタアクセス最優先パターン）を最適化し、これによって、各バスマスタの共有リソースに対するアクセス許可割合を、目標値のとおりに保証することが可能となる。
【００７４】
「バス優先順位」及び「バスアクセス最優先パターン」、あるいは、「バスマスタ優先順位」と「バスマスタアクセス最優先パターン」の概念も、先に説明したとおりであり、何ら変更はない。
【００７５】
すなわち、図７のバス調停情報を例にとると、図７の最も左の列はバス間の固定的な優先順位を表しており、上の行にあるバスほど高い優先順位を有する。これが「バス優先順位」である。また、次の１０列は、バス間の最優先順位を表し、「１」で表示されるバスが最優先順位を有する。これが「バスアクセス最優先パターン」である。
【００７６】
各列を「スロット」と呼び、各列の一番上の数値を「スロット番号」と呼ぶ。ここで、バス優先順位、アクセス最優先パターン、スロットの数は実施の環境により異なり、それぞれの実施の環境において各バスで保証したいアクセス許可の割合に基づいて設定することができる。
【００７７】
バス調停部１１７は、基本的には、以下の動作を行う。
【００７８】
すなわち、アクセスバンド幅確保の時間分解能に相当する一定期間毎に参照するスロットを切り替えて選択し、その期間の間に受けたバスからのアクセス要求に対して、その時点で参照しているスロットの情報をもとに調停を行う。ここで、バスからのアクセス要求はバスの動作クロックで行われるが、スロットの遷移時間はバスの動作サイクルとは独立に設定することができる。
【００７９】
スロットの選択はスロット番号０からスロット番号９まで順に切り替え、再びスロット番号０から繰り返す。バス調停部１１７が行う調停は、一定期間の間に受けたアクセス要求と、参照しているスロット中の値とを比較し当該スロットにおいて「１」で表されているバスからのアクセス要求があれば、そのバスに対してリソース制御部１１８へのアクセス許可を与える。「１」で表されているバスからのアクセス要求がなければ、上記のバス優先順位に従って、アクセスを要求しているバスの中から最も優先順位の高いバスに対してアクセス許可を与える。
【００８０】
これらの調停を期間毎に参照するスロットを切り替えながら繰り返す。バス調停部１１７が一定期間の間にアクセス要求を受けなかった場合は、参照するスロットの切り替えだけを行う。
【００８１】
図１のリソース管理装置は、以上の基本構成の他に、適応的なリソース管理を行うための新規な構成を有している。次に、図１の本発明の実施形態に係るリソース管理装置の、特徴的な構成を説明する。
【００８２】
図６の従来例の場合、各グループの優先度は考慮されていないが、図１の本実施形態のリソース管理装置では、まず、グループＸ，グループＹにタスク優先度が付与されている。つまり、一つのグループで行っている処理が、決して破綻させてはならない処理である場合もあれば、他のグループで行っている処理が、余った時間で処理ができればよい処理である場合もあり、その処理の重要度を考慮し、各グループには、タスク優先度が与えられており、各グループは、そのタスク優先度に基づいて動作するものとする。
【００８３】
ここでは、グループＹの優先度が、グループＸの優先度よりも高いものとする。グループＹは、例えば、破綻させてはならない処理であり、グループＸは、例えば、余った時間で処理ができればよい（出来高でよい）処理である。
【００８４】
なお、各グループは、各グループに属する複数のバスマスタを同時に使用している必要はなく、グループの処理実行中（プロセス実行中）のいずれかの時間において、いずれかのバスマスタが使用されればよい。
【００８５】
そして、図１の本実施形態のリソース管理装置では、上記各グループのタスク優先度を管理するために、タスク優先度情報１３０が新規に追加されており、調停情報管理部１２１は、このタスク優先度情報１３０を、適宜、参照することができる。
【００８６】
タスク優先度情報１３０は、グループＸ及びグループＹの実行優先度を表わすものである。図２は、タスク優先度情報の一例を示す図である。図２において、数字の小さい方が、優先度は高いものとする。すなわち、図２のような優先度の設定の場合、グループＹの優先度は、グループＸの優先度の３倍である。
【００８７】
また、図１のリソース管理装置では、さらに、グループＸ，グループＹの各々が、調停情報管理部１３０に、使用しているバスマスタを知らせるための情報伝達経路Ｌ１，Ｌ２が設けられている。
【００８８】
グループＸは、バスマスタＡ又はバスマスタＢを使用する場合に、調停情報管理部１２１に対して、その旨を伝える。使用済みになった場合も、同様に、その旨を伝える。また、グループＹも、バスマスタＢ、バスタスタＣ、バスマスタＤ、バスマスタＥを使用する場合には、調停情報管理部１２１に対して、その旨を伝える。同様に、使用済みになった場合も、その旨を伝える。これにより、調停情報管理部が、今現在使用されているバスマスタが、どのグループによって使用されているのか（つまり、どのグループに属するどのバスマスタが現在使用中であるのか）を検出することができる。
【００８９】
すなわち、例えば、各々のバスマスタが使用開始・終了時に、どのグループにて使用されるかと共に調停情報管理部１３０に通知することで、調停情報管理部はどのグループのどのバスマスタが使用中であるかを検出することができる。なお、調停情報管理部１３０から、各バスマスタに対して問い合わせを行い、使用しているバスマスタを検出してもよい。
【００９０】
そして、調停情報管理部１２１は、各バスマスタ１０１〜１０５が、どのグループから実際に使用されているかを管理し、グループ情報１２４及びタスク優先度情報１３０に基いて、バス優先順位とバスアクセス最優先パターンを含むバス調停情報１１６に反映させる。また、バスマスタ優先順位とバスマスタアクセス最優先パターンを含むバス調停情報１０６，１０８，１１０に反映させる。
【００９１】
これによって、バスマスタＡ〜Ｅ（の少なくとも一部）による共有リソース１１９への時分割のアクセス管理が進行している途中において、タスクの優先度の観点からみた場合の各グループのバスマスタ利用状況に変化が生じたとき、その変化に対応して、タスクバス調停情報１１６及びバス調停情報１０６，１０８，１１０の適応的な変更が行われる。
【００９２】
以下、具体的に説明する。なお、バス１１４（バス２）を使用するのはバスマスタＥだけであるため、バスマスタ調整情報１１０を用いたバスマスタの調停を行う必要がない。したがって、以下の説明では、バスマスタＥについての説明は省略する。
【００９３】
まず、バス調停情報１１６及びバスマスタ調停情報１０６，１０８の現在の状況が、図１０に示されるような状況であるとする。
【００９４】
すなわち、バスマスタ調停情報１０６によって決定される、バスマスタＡ，Ｂについてのバスマスタ優先順位とバスマスタアクセス最優先パターンが、図１０（ａ）に示すような状態であるとする。また、バスマスタ調停情報１０８によって決定される、バスマスタＣ，Ｄについてのバスマスタ優先順位とバスマスタアクセス最優先パターンが、図１０（ｂ）に示すような状態であるとする。また、バス調停情報１１６によって決定される、バス０〜バス２についてのバス優先順位とバスアクセス最優先パターンが図１０（ｃ）に示すような状態であるとする。
【００９５】
この状態で、タスク優先度が低いグループＸが、実際にバスマスタＡ及びバスマスタＢを使用して処理を実行している最中に、タスク優先度が高いグループＹのバスマスタＤの処理が行なわれる場合には、バス調停情報１１６及びバスマスタ調停情報１０６，１０８の内容が、図３（ａ）〜（ｃ）に示されるように変更される。
【００９６】
ここで、その変更の内容について考察する。ここで、図３は、図９（ｂ）に示されるグループ毎のリソース使用率を考慮して決定される、バスマスタ調停情報及びバス調停情報の他の例（適応的な変更後の情報の例）を示す図であり、（ａ）はバスマスタＡ，Ｂに関係するバスマスタ調停情報（参照符号１０６）の例を示す図であり、（ｂ）はバスマスタＣ，Ｄに関係するバスマスタ調停情報（参照符号１０８）の例を示す図であり、（ｃ）はバス調停情報（参照符号１１６）の例を示す図である。
【００９７】
ここで、図３（ａ）に示されるバスマスタＡ，Ｂについてのバスマスタ優先順位とバスマスタアクセス最優先パターンは、図１０（ａ）と同じである。バスマスタＡ，Ｂは、図１０の状況と同じく、所定の処理を実行しているのであり、何も状況の変化がないから、これは当然のことである。
【００９８】
図３（ｂ）に示される、バスマスタＣ，Ｄについてのバスマスタ優先順位とバスマスタアクセス最優先パターンは、図１０（ｂ）とは異なっている。この変更の結果、図３（ｂ）の右端に示されるように、バスマスタＤについてのアクセス許可割合は、７０％となり、図１０（ｂ）の場合（６０％）よりも、その値が１０％増加している。つまり、優先度の高いグループＹが使用するバスマスタＤについてのアクセス許可割合が、適応的に増加し、これによって、バスマスタＤの、共有リソース１１９についての使用率が高くなる。
【００９９】
また、図３（ｃ）に示されるバス０〜バス２についてのバス優先順位とバスアクセス最優先パターンも変更されており、この結果、図３（ｃ）の右端に示されるように、バス０〜バス２の各々のアクセス許可割合は、「１０％」，「７０％」，「２０％」となる。図１０（ｃ）の右端に示されるアクセス許可割合は、「４０％」，「４０％」，「２０％」であるから、バス１（１１３）についてのアクセス許可割合が、他のバスのアクセス許可割合に比べて意図的に高められているのがわかる。
【０１００】
つまり、バスマスタＤが使用するのはバス１（１１３）であるため、バス１（１１３）のアクセス許可割合を高めることによって、バスマスタＤの共有リソース１１９についての使用率を高めていることになる。
【０１０１】
図４は、バス調停情報及びバスマスタ調停情報が、図３に示されるように適応的に変更された後の、グループ毎（及びバスマスタ毎）の共有リソース使用率を示す図である。図４は、本来は図９のように記載されるものであるが、図４では、一部を省略して記載している。
【０１０２】
図示されるように、バスマスタＤの共有リソース使用率が４９％となり、他のバスマスタ（Ａ，Ｂ，Ｃ，Ｅ）の使用率よりも格段に高くなっている。つまり、図３（ｂ），（ｃ）のようなバスマスタアクセス最優先パターン及びバスアクセス最優先パターンの変更によって、グループＹのバスマスタＤを使っている間のグループ毎のリソース使用率は、図４のようになり、バスマスタＤの処理についてのアクセス許可割合が増え、したがってその処理が早く終わる可能性が高くなる。
【０１０３】
その結果、グループＹが実施するトランザクションの処理（プロセス）の開始要求から処理完了までの最大遅れ時間が減少し、また、グループＹに対して高負荷がかかったときには、より多くの処理を実行することができるようになる。
【０１０４】
このように、本実施形態では、優先度が高い処理が実施される時点で、優先度の低い処理が実施されているような状況下では、優先度の低い処理についてのリソース使用率を一時的に減らし、その減らした分を優先度の高い処理に振り分けるというような適応的な、融通をきかせた制御を行うことで、優先度の高い処理を効率的に処理することを可能とし、現実的なニーズに、より即したリソース管理を実現することができる。
【０１０５】
次に、変形例について説明する。図５は、バス調停情報及びバスマスタ調停情報を適応的に変更する場合に、その変更を、より簡易に行う方法（バス優先順位又はバスマスタ優先順位を入れ替える方法）を説明するための図である。つまり、図５は、図９（ｂ）に示されるグループ毎のリソース使用率を考慮して決定される、バスマスタ調停情報及びバス調停情報のさらに他の例（適応的な変更後の情報の他の例）を示す図であり、（ａ）はバスマスタＡ，Ｂに関係するバスマスタ調停情報（参照符号１０６）の例を示す図であり、（ｂ）はバスマスタＣ，Ｄに関係するバスマスタ調停情報（参照符号１０８）の例を示す図であり、（ｃ）はバス調停情報（参照符号１１６）の例を示す図である。
【０１０６】
先に説明した図３（ｂ），（ｃ）のパターンは、図１０（ｂ），（ｃ）のパターンとは異なる、オリジナル（すなわち独自性のある）パターンとなっていた。これに対し、図５（ｂ），（ｃ）のパターン自体にオリジナリティ（パターンの独自性）はなく、パターンだけみれば、図１０（ｂ），（ｃ）と同じである。
【０１０７】
ただし、図５（ｂ）では、図１０（ｂ）と比較したとき、「バスマスタの入れ替え」が行われており、図１０（ｂ）において「バスマスタＣ」についてのパターンであったものが、図５（ｂ）では、「バスマスタＤ」のパターンとなっており、また、図１０（ｂ）において「バスマスタＣ」についてのパターンであったものが、図５（ｂ）では、「バスマスタＤ」のパターンとなっており、図１０（ｂ）において「バスマスタＤ」についてのパターンであったものが、図５（ｂ）では、「バスマスタＣ」のパターンとなっている。
【０１０８】
これにより、図１０（ｂ）では、「バスマスタＣ」についてのアクセス許可割合が「４０％」であったものが、図５（ｂ）では、「バスマスタＤ」についてのアクセス許可割合が「４０％」である、というように切り替わる。同様に、図１０（ｂ）では、「バスマスタＤ」についてのアクセス許可割合が「６０％」であったものが、図５（ｂ）では、「バスマスタＣ」についてのアクセス許可割合が「４０％」である、というように切り替わる。
【０１０９】
なお、図５（ｂ）のようにパターンを変更すると、この例では、最優先パターンによるアクセス許可割合はバスマスタＣの方が高いことになるが、バスマスタＤの優先度を高めることができるので、パターンの変更といった処理が不要で、簡易にタスク優先度に応じたリソースのアクセス管理を行うことができる。
【０１１０】
図５（ｃ）の場合も、図１０（ｃ）と比較して、「バス０のパターン」と「バス１のパターン」が入れ替わっている。ただし、この場合、元々、バス０とバス１についてのアクセス許可割合は各々、４０％と４０％で同等であったため、各パターンの入れ替えによるバス調停情報の１１６の適応的な変更を行っても、この場合には、バス毎のアクセス許可割合を変更する効果は得られない。
【０１１１】
つまり、タスク優先度が高いグループが新たにバスマスタを使用するとき、既存のパターンとの入れ替えを行うことによって、効果のある、適応的なパターン変更を簡単にできる場合があるということであり、この手法を効果的に使用することによって、アクセス最優先パターンのダイナミックな変更を効率的に（つまり、ハードやソフトに大きな負担を与えることを防止しつつ）行うことができるということである。
【０１１２】
このように、本実施形態では、優先度が高い処理が実施される時点で、優先度の低い処理が実施されているような状況下では、優先度の低い処理についてのリソース使用率を一時的に減らし、その減らした分を優先度の高い処理に振り分けるというような適応的な、融通をきかせた制御を行うことで、優先度の高い処理を効率的に処理することを可能とし、現実的なニーズに、より即したリソース管理を実現することができる。
【０１１３】
なお、本発明は、上記の実施形態にて説明した内容に限定されるものではなく、本発明の趣旨を逸脱しない範囲で、変形、応用が可能である。例えば、上記の例では、バスアクセス最優先パターン及びバスマスタアクセス最優先パターンの両方、又はバス優先順位及びバスマスタ優先順位の両方を変更したが、すべて変更しても構わないし、いずれか一つの変更であってもよい。
【０１１４】
また、バスアクセス最優先パターン及びバスマスタアクセス最優先パターンをすべて０に設定し、バス優先順位及びバスマスタ優先順位のみを入れ替えるような変更であってもよい。
【０１１５】
以上説明したように、本発明の実施形態によれば、各グループのタスク優先度を有するタスク優先度情報を、バス調停情報及びバスマスタ調停情報に反映させることが可能となる。すなわち、複数グループのタスク優先度に基づいて、当該グループがバスマスタを利用する際に、バス優先順位及びバスアクセス最優先パターン、あるいは、バスマスタ優先順位及びバスマスタアクセス最優先パターンを適応的に変更することができる。
【０１１６】
これによって、タスク優先度の高いグループの、処理開始要求から処理完了までの最大遅れ時間を減少させることができ、また、その優先度の高いグループに関して高負荷がかかった場合に、より多くの処理を実行することができる。
【０１１７】
また、調停情報管理部が、どのグループに属するどのバスマスタが現在使用中であるかを検出し、タスク優先度の高いグループに属するバスマスタのリソース使用率を高める方向に、バス調停情報あるいはバスマスタ調停情報を適応的に変更することにより、現実のタスク処理状況に応じた融通性のあるリソース管理を実現することができる。
【０１１８】
本発明は、移動体通信システムにおけるトランザクション処理に利用可能である。つまり、移動体通信システムにおいて、優先度の高い処理（トランザクション）を、破綻させることなく効率的に実行することが、通信の品質を保証する上で最も重要であり、本発明によれば、この現実のニーズを即した、融通性のあるリソース管理が可能となる。
【０１１９】
つまり、移動体通信では、例えば、ＡＴＭ（非同期転送モード）通信のように、異なる優先度の通信信号を処理する場合があり、このとき、優先度の高い処理（トランザクション）を、破綻させることなく効率的に実行することが、通信の品質を保証する上で最も重要である。本発明によれば、この現実のニーズに即した、融通性のあるリソース管理が可能であり、移動体通信の通信品質の維持、向上に寄与する。
【０１２０】
また、本発明は、カーナビゲーションシステムにも利用可能である。カーナビゲーションシステムも、一種の移動体通信システムと見ることができる。本実施形態のリソース管理装置を利用することによって、移動体通信システムの場合と同様の効果を得ることができる。
【０１２１】
また、本発明は、ＡＶ（オーディオビジュアル）システムにも利用することができる。すなわち、高品質なマルチメディア信号を処理するＡＶシステムでは、タスク優先度に基づく優先処理が行われる場合があり、本実施形態のリソース管理装置は、ＡＶシステムにおける効率的なリソース管理に寄与する。
【０１２２】
また、上記の適応的なリソース管理は、実際には、リソース管理用のプログラムにより実現される。本実施形態のプログラムは、本実施形態のリソース管理方法を実行する、コンピュータが読み取り可能なプログラムであり、本実施形態のプログラムを、制御装置（ＣＰＵ）を備えるデータ処理装置のメモリにインストールすることによって、タスク優先度を考慮した柔軟なリソース管理を、容易に行うことが可能となる。
【０１２３】
また、本実施形態のプログラムを情報記録媒体に記録することによって、プログラムを容易に持ち運ぶことが可能となり、本実施形態のプログラムを、種々の機器に導入するのが容易化される。
【産業上の利用可能性】
【０１２４】
本発明のリソース管理装置及びリソース管理方法は、バスマスタ装置からの共有リソースに対するアクセスを、タスクの優先度に応じて適応的に管理可能な効果を有し、移動体通信システム、カーナビゲーションシステム、ＡＶシステム等におけるメモリリソースのアクセス管理等に有用である。
【図面の簡単な説明】
【０１２５】
【図１】本発明の実施形態に係るリソース管理装置の構成の一例を示すブロック図
【図２】タスク優先度情報の一例を示す図
【図３】バスマスタ調停情報およびバス調停情報の他の例（適応的な変更後の情報の例）を示す図
【図４】バス調停情報ならびにバスマスタ調停情報が、図３に示されるように適応的に変更された後の、グループ毎（およびバスマスタ毎）の共有リソース使用率を示す図
【図５】バスマスタ調停情報およびバス調停情報のさらに他の例（適応的な変更後の情報の他の例）を示す図
【図６】従来のリソース管理装置の構成の一例を示すブロック図
【図７】図６中のバス調停情報をテーブル形式の情報とした例を示す図
【図８】バスマスタ調停情報ならびにバス調停情報の具体例を示す図
【図９】グループ情報の一例を示す図
【図１０】バスマスタ調停情報およびバス調停情報の一例を示す図
【符号の説明】
【０１２６】
１０１〜１０５  バスマスタ
１０６，１０８，１１０  バスマスタ調停情報
１０７，１０９，１１１  バスマスタ調停部
１１２〜１１４  バス（バス０〜バス１）
１１５  リソース管理部
１１６  バス調停情報
１１７  バス調停部
１１８  リソース制御部
１１９  共有リソース
１２１  調停情報管理部
１２４  グループ情報
１３０  タスク優先度情報
【図１】
2007164713.tif 000003
【図２】
2007164713.tif 000004
【図３】
2007164713.tif 000005
【図４】
2007164713.tif 000006
【図５】
2007164713.tif 000007
【図６】
2007164713.tif 000008
【図７】
2007164713.tif 000009
【図８】
2007164713.tif 000010
【図９】
2007164713.tif 000011
【図１０】
2007164713.tif 000012