(57)【要約】【課題】情報処理装置に設けられるバスの使用効率を図る。【解決手段】一つ実施形態の情報処理装置は、動作状態を設定する第１の動作状態レジスタとバスアクセスへの優先度を設定する第１の優先度設定レジスタを有し、第１の情報処理を実行する第１のモジュールと、動作状態を設定する第２の動作状態レジスタとバスアクセスへの優先度を設定する第２の優先度設定レジスタを有し、第２の情報処理を実行する第２のモジュールと、前記第１及び第２のモジュールを接続し、前記第１及び第２のモジュールのアクセス先への処理優先度を調停するバスアクセス調停回路を有するバスとを具備する。【選択図】  図１
2012003655.tif 000002
【特許請求の範囲】
【請求項１】
動作状態を設定する第１の動作状態レジスタとバスアクセスへの優先度を設定する第１の優先度設定レジスタを有し、第１の情報処理を実行する第１のモジュールと、
動作状態を設定する第２の動作状態レジスタとバスアクセスへの優先度を設定する第２の優先度設定レジスタを有し、第２の情報処理を実行する第２のモジュールと、
前記第１及び第２のモジュールを接続し、前記第１及び第２のモジュールのアクセス先への処理優先度を調停するバスアクセス調停回路を有するバスと、
を具備することを特徴とする情報処理装置。
【請求項２】
動作状態を設定する第１の動作状態レジスタとバスアクセスへの優先度を設定する第１の優先度設定レジスタを有し、第１の情報処理を実行する第１のモジュールと、
動作状態を設定する第２の動作状態レジスタとバスアクセスへの優先度を設定する第２の優先度設定レジスタを有し、第２の情報処理を実行する第２のモジュールと、
情報を格納する主メモリと、
前記第１のモジュール、前記第２のモジュール、及び主メモリを統括制御するメインプロセッサと、
前記第１のモジュール、前記第２のモジュール、前記主メモリ、及び前記メインプロセッサを接続し、前記第１及び第２のモジュールの前記主メモリへの処理優先度を調停するバスアクセス調停回路を有する主バスと、
を具備することを特徴とする情報処理装置。
【請求項３】
前記情報処理装置は、マルチ並列情報処理を行うことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記バスアクセス調停回路は、
バスクロックサイクルのカウントアップ割合を設定するカウントアップ部と、
各モジュールのバスクロックサイクル数を発生するクロックサイクル部と、
前記カウントアップ部から出力されるカウントアップ割合と前記クロックサイクル部から出力される次のモジュールのバスクロックサイクル数が入力され、加算処理を行い、加算処理結果を前記クロックサイクル部に出力する加算部と、
実行完了した発行済み命令数を発生する命令部と、
前記加算処理結果と前記発行済み命令数が入力され、前記加算処理結果と前記発行済み命令数に基づいて命令実行するバスアクセス優先度を設定する命令実効部と、
を具備することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
前記主バスは、
前記第１のモジュールに接続され、バスクロックに同期して処理を実行する第１のイニシエータエージェントと、
前記第２のモジュールに接続され、前記バスクロックに同期して処理を実行する第２のイニシエータエージェントと、
前記主メモリに接続され、前記バスクロックに同期して処理を実行するターゲットエージェントと、
を更に具備し、前記バスアクセス調停回路は前記第１及び第２のイニシエータエージェントと前記ターゲットエージェントの間に設けられることを特徴とする請求項２に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置に関する。
【背景技術】
【０００２】
画像や音声データを含む大規模なデータを処理する情報処理装置では、バスのバンド幅を有効活用するために、バスに接続される各モジュールのバンド幅や処理の優先度を適切に設定する必要がある。各モジュールのバスアクセス優先度は、バスアクセス調停回路やアービタなどにより設定される（例えば、特許文献１参照。）。
【０００３】
多数のモジュールを有し、マルチ並列処理を行う情報処理装置では、モジュールのビジーステート（busy state）が重なったり、モジュールがアイドル状態になったりする場合が多発する。この場合、バス使用効率が低下したり、バスのトータルバンド幅が所定のバスバンド幅上限値をオーバーするという問題点が発生する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２８２７１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、バスの使用効率を向上できる情報処理装置を提供することにある。
【課題を解決するための手段】
【０００６】
一つの実施形態の情報処理装置は、動作状態を設定する第１の動作状態レジスタとバスアクセスへの優先度を設定する第１の優先度設定レジスタを有し、第１の情報処理を実行する第１のモジュールと、動作状態を設定する第２の動作状態レジスタとバスアクセスへの優先度を設定する第２の優先度設定レジスタを有し、第２の情報処理を実行する第２のモジュールと、前記第１及び第２のモジュールを接続し、前記第１及び第２のモジュールのアクセス先への処理優先度を調停するバスアクセス調停回路を有するバスとを具備する。
【図面の簡単な説明】
【０００７】
【図１】本発明の第１の実施形態に係る情報処理装置を示すブロック図である。
【図２】本発明の第１の実施形態に係るバスアクセス調停回路を示すブロック図である。
【図３】本発明の第１の実施形態に係る主メモリへのアクセス動作を説明する図である。
【図４】本発明の第１の実施形態に係る主メモリへのアクセス動作を説明する図である。
【図５】本発明の第１の実施形態に係る主メモリへのアクセス動作を説明するフローチャートである。
【図６】本発明の第１の実施形態に係るパラレル処理でビジーステートが重なった場合を示す図である。
【図７】本発明の第１の実施形態に係るパラレル処理でビジーステートが重なった場合を示す図である。
【図８】本発明の第１の実施形態に係る比較例の情報処理装置のトータルバンド幅の推移を示す図である。
【図９】本発明の第１の実施形態に係る情報処理装置のトータルバンド幅の推移を示す図である。
【図１０】本発明の第２の実施形態に係る情報処理装置を示すブロック図である。
【図１１】本発明の第２の実施形態に係るＤＲＡＭへのアクセス動作を説明する図である。
【図１２】本発明の第１の実施形態に係るＤＲＡＭへのアクセス動作を説明する図である。
【発明を実施するための形態】
【０００８】
以下本発明の実施形態について図面を参照しながら説明する。
【０００９】
（第１の実施形態）
まず、本発明の第１の実施形態に係る情報処理装置について、図面を参照して説明する。図１は情報処理装置を示すブロック図である。図２はバスアクセス調停回路を示すブロック図である。本実施形態では、アクセス先への処理優先度を調停するバスアクセス調停回路を主バスに設けている。
【００１０】
図１に示すように、情報処理装置９０には、メインプロセッサ１、主メモリ２、モジュール３、モジュール４、モジュール５、主バス６、及び表示装置７が設けられる。情報処理装置９０は、画像、グラフィック、音声を含む種々の情報をマルチ並列処理する。ここでは、情報処理装置９０をＳｏＣ（system on a chip）で構成しているが、複数の半導体集積回路装置が搭載されるボード、複数の半導体集積回路装置が搭載されるＳｉＰ（system in package）、或いは複数の半導体集積回路装置が搭載されるマルチチップモジュールなどで構成してもよい。ここでいうモジュールとは、グラフィックプロセッサ、ビデオプロセッサ、サラウンドプロセッサ、ＤＳＰ（digital signal processor）などのコアプロセッサの場合、Ｉ／Ｆ回路の場合、各種処理回路の場合、或いはＩＰコアの場合などがある。
【００１１】
主バス６は、メインプロセッサ１、主メモリ２、モジュール３、モジュール４、モジュール５、及び表示装置７をそれぞれ接続する。主バス６はシステムバスとも呼称される。主バス６には、バスアクセス調停回路１１が設けられる。
【００１２】
メインプロセッサ１は、情報処理装置９０全体を統括制御するマスターデバイスである。メインプロセッサ１は、マイクロプロセッサである。ここでは、情報処理装置９０のシステム全体を統括制御するメインプロセッサ１を設けているが、代わりにＣＰＵ（central processing unit）などを設けてもよい。
【００１３】
主メモリ２は、外部から入力される情報や情報処理装置９０内で処理された情報などを格納するスレーブデバイスである。ここでは、主メモリ２に高速動作するＳＲＡＭ（static random access memory）を用いている。
【００１４】
モジュール３には、動作状態を設定する動作状態レジスタ１２とバスアクセスの優先度を設定する優先度設定レジスタ１１１が設けられる。モジュール３は、メインプロセッサ１に対してはスレーブ動作するスレーブデバイスであるが、例えば主メモリ２や表示装置７に対してはマスター動作するマスターデバイスである。
【００１５】
モジュール４には、動作状態を設定する動作状態レジスタ１３とバスアクセスの優先度を設定する優先度設定レジスタ１１２が設けられる。モジュール４は、メインプロセッサ１に対してはスレーブ動作するスレーブデバイスであるが、例えば主メモリ２や表示装置７に対してはマスター動作するマスターデバイスである。
【００１６】
モジュール５には、動作状態を設定する動作状態レジスタ１４とバスアクセスの優先度を設定する優先度設定レジスタ１１３が設けられる。モジュール５は、メインプロセッサ１に対してはスレーブ動作するスレーブデバイスであるが、例えば主メモリ２や表示装置７に対してはマスター動作するマスターデバイスである。
【００１７】
優先度設定レジスタをモジュール内に設けることにより、バスアクセス優先度をモジュールの処理工程ごとに適宜変更することができる。動作状態レジスタをモジュール内に設けることにより、自モジュールが他モジュールの動作状態に合わせてバスアクセス優先度を適宜変更できる。
【００１８】
図２に示すように、バスアクセス調停回路１１には、カウントアップ部２１、加算部２２、クロックサイクル部２３、命令実行部２４、及び命令部２５が設けられる。バスアクセス調停回路１１は、バスアクセスの優先度を調停する。バスアクセス調停回路１１により、例えばモジュール３乃至５の命令実行の優先度（バスアクセス優先度）が決定される。
【００１９】
カウントアップ部２１は、各モジュールのバスクロックサイクルのカウントアップ割合を設定する。カウントアップ割合は、最大値の場合に１サイクル毎にインクリメントされ、値が小さくなるにつれてインクリメントに要するバスクロックサイクル数が大きくなる。
【００２０】
クロックサイクル部２３は、加算部２２の出力が入力され、各モジュールのバスクロックサイクルを発生する。加算部２２は、カウントアップ部２１から出力されるカウントアップ割合と、クロックサイクル部２３から出力されるモジュールのバスクロックサイクル数とが入力され、加算処理を行う。加算部２２は、加算処理結果をクロックサイクル部２３に出力する。
【００２１】
命令部２５は、実行完了した発行済み命令数を発生する。命令実行部２４は、加算処理結果と発行済み命令数が入力され、加算処理結果と発行済み命令数に基づいて、命令実行に対するバスアクセス優先度を設定する。バスアクセス優先度は、１バスクロックサイクル経過する毎に加算部２２によりインクリメントされる。バスアクセス優先度は、発行済み命令数だけデクリメントされる。
【００２２】
バスアクセス優先度は、モジュール毎に最大値から最小値までの範囲で設定される。バスアクセス優先度の大きなモジュールほど、主バス６を使用しないとき（即ち、アイドル（idle）時）に高い命令実行のバスアクセス優先度を獲得でき、主バス６を使用開始するときに優先的に命令を実行できるように設定される。また、バスアクセス優先度を左右するパラメータは、主バス６内に設けられる設定レジスタによって変更でき、システムに要求される性能に合わせて調節可能となっている。
【００２３】
次に、主メモリへのアクセス動作について、画像データ処理動作を例にして図３乃至７を参照して説明する。図３及び図４は主メモリへのアクセス動作を説明する図である。
【００２４】
図３に示すように、画像データ処理動作の場合の情報処理装置９０では、例えば表示パネル７がＬＣＤパネルとなり、モジュール３がカメラインターフェースとなり、モジュール４が２Ｄ描画エンジン（コアプロセッサ）となり、モジュール５がＬＣＤ表示回路となる。
【００２５】
主バス６には、バスアクセス調停回路１１、イニシエータエージェント４１、イニシエータエージェント４２、イニシエータエージェント４３、及びターゲットエージェント４４が設けられる。バスアクセス調停回路１１は、イニシエータエージェント４１乃至４３とターゲットエージェント４４の間に設けられる。ここでは、メインプロセッサ１と表示装置７に接続され、主バス６内に設けられるエージェントについては図示及び説明を省略する。
【００２６】
イニシエータエージェント４１は、イニシエータコアであるモジュール３に接続され、バスクロックに同期して処理を行う。モジュール３は、優先度設定レジスタのアドレス３１、各動作状態に応じて決められるカウントアップ割合設定値３４を有する。モジュール３は、カメラ８から画像データ情報が入力される。
【００２７】
イニシエータエージェント４２は、イニシエータコアであるモジュール４に接続され、バスクロックに同期して処理を行う。モジュール４は、優先度設定レジスタのアドレス３２、各動作状態に応じて決められるカウントアップ割合設定値３５を有する。モジュール４は２Ｄ描画処理を実行する。
【００２８】
イニシエータエージェント４３は、イニシエータコアであるモジュール５に接続され、バスクロックに同期して処理を行う。モジュール５は、優先度設定レジスタのアドレス３３、各動作状態に応じて決められるカウントアップ割合設定値３６を有する。モジュール５は、画像処理を実行する。
【００２９】
ターゲットエージェント４４は、ターゲットコアである主メモリ２に接続され、バスクロックに同期して処理を行う。ターゲットエージェント４４は、主メモリ２へのアクセスを発行する。ターゲットエージェント４４には、図４に示すように、バスアクセス優先度の決定に必要なパラメータを格納するパラメータ設定レジスタ１５が設けられる。パラメータ設定レジスタ１５は、モジュールＡカウントアップ割合３７、モジュールＡ優先度３８、モジュールＢカウントアップ割合３９、・・・など各モジュールのカウントアップ割合及び優先度情報を有する。
【００３０】
モジュール３乃至５は、それぞれ複数の動作状態を有し、主バス６を使用するビジーステートとその他の状態とがある。ここでは、モジュール３乃至５のバスアクセス優先度は固定されず、各モジュールの動作状態に応じて自らバスアクセス優先度を動的に設定できる構造（マルチ並列処理構造）となっている。
【００３１】
また、優先度設定レジスタのアドレスとカウントアップ割合設定値は、ユーザがメインプロセッサ１を介して自由に設定値を変更できる。モジュール３乃至５は、それぞれ優先度設定レジスタのアドレスとカウントアップ割合設定値を動作状態が移行する前後に、ターゲットエージェント４４のパラメータ設定レジスタ１５に書き込み、自らバスアクセス優先度を変更する動作を行う。
【００３２】
図５は主メモリへのアクセス動作を説明するフローチャートである。ここでは、カメラ８に収納されている動画像データを読み出して画像処理を実行している。動画像データ処理動作の場合、例えば１フレーム毎に画像処理がモジュール３乃至５で平行して同時実行される。なお、音声処理については説明を省略する。
【００３３】
図５に示すように、メインプロセッサ１は情報処理装置９０内に画像データ処理動作の開始を指示する。モジュール３はメインプロセッサ１の指示に基づいて、カメラ８に収納されている画像データを読み出す（ステップＳ１１）。
【００３４】
次に、モジュール３は読みだされた画像データの色変換を実行する（ステップＳ１２）。続いて、モジュール３は読み出された画像データのスケーリングを実行する（ステップＳ１３）。そして、モジュール３はイニシエータエージェント４１、バスアクセス調停回路１１、及びターゲットエージェント４４を介して、加工処理が行われた１フレーム分の画像データを主メモリ２に書き込む（ステップＳ１４）。１フレーム分の画像データを主メモリ２に書き込んだ後、モジュール３はステップＳ１１からステップ１４までの処理を順次繰り返し実行する。
【００３５】
次に、モジュール４はターゲットエージェント４４、バスアクセス調停回路１１、及びイニシエータエージェント４２を介して主メモリ２に書き込まれた画像データを読み出す（ステップＳ２１）。
【００３６】
続いて、モジュール４は２Ｄ描画処理を実行する（ステップＳ２２）。そして、モジュール４はイニシエータエージェント４１、バスアクセス調停回路１１、及びターゲットエージェント４４を介して、１フレーム分の描画された画像データを主メモリ２に書き込む（ステップＳ２３）。１フレーム分の描画された画像データを主メモリ２に書き込んだ後、モジュール４はステップＳ２１からステップ２３までの処理を順次繰り返し実行する。
【００３７】
次に、モジュール５はターゲットエージェント４４、バスアクセス調停回路１１、及びイニシエータエージェント４３を介して主メモリ２に描画された画像データを読み出す（ステップＳ３１）。続いて、モジュール５は画像データの、例えば、色補正、輪郭補正、１フレーム前に対する補正などの画像補正処理を実行する（ステップＳ２２）。そして、モジュール５は主バス６を介して１フレーム分の画像補正された画像データを表示装置７に送信する（ステップＳ３３）。１フレーム分の画像補正された画像データを表示装置７に送信後、モジュール５はステップＳ３１からステップ３３までの処理を順次繰り返し実行する。
【００３８】
ここで、ステップＳ１４、ステップＳ２１、ステップＳ２３、及びステップＳ３１は、主バス６を介する主メモリ２との動作なので、ビジーステート（busy state）となる。ビジーステート（busy state）の処理が重なった場合、主バス６のトータルバンド幅が増大する。
【００３９】
図６及び図７は、マルチ並列処理でビジーステートが重なった場合を示す図である。
【００４０】
図６に示すように、例えば、モジュール３の動作状態レジスタ１２にはビジーステート情報（ステップＳ１４）が格納され、モジュール５の動作状態レジスタ１４にはビジーステート情報（ステップＳ３１）が格納され、モジュール４の動作状態レジスタ１３にはアイドル（idle）情報が格納され、ビジーステートが重なっている。
【００４１】
モジュール３では、例えば優先度設定レジスタのアドレス３１がＯｘＡＡＡＡＡＡＡＡと設定され、ステップＳ１１のカウントアップ割合設定値３４１が２０と設定され、ステップＳ１４のカウントアップ割合設定値が２００と設定され、モジュール３がステップＳ１４で且つモジュール５がステップＳ３１のときのカウントアップ割合設定値３４３が１４０と設定される。
【００４２】
モジュール４では、例えば優先度設定レジスタのアドレス３２がＯｘＤＤＤＤＤＤＤＤと設定される。
【００４３】
モジュール５では、例えば優先度設定レジスタのアドレス３３がＯｘＣＣＣＣＣＣＣＣと設定され、ステップＳ３１のカウントアップ割合設定値３６１が１５０と設定され、モジュール５がステップＳ３１で且つモジュール３がステップＳ１４のときのカウントアップ割合設定値３６２が１３０と設定される。
【００４４】
図７に示すように、パラメータ設定レジスタ１５では、例えばモジュールＡカウントアップ割合３７が１４０と設定され、モジュールＡ最大優先度３８１が２５０と設定され、モジュールＡ最少優先度３８１が１５０と設定され、モジュールＢカウントアップ割合３９が３０と設定される。
【００４５】
次に、情報処理装置の画像データ処理動作におけるトータルバンド幅について図８及び図９を参照して説明する。図８は比較例の情報処理装置のトータルバンド幅の推移を示す図である。図９は本実施形態の情報処理装置のトータルバンド幅の推移を示す図である。ここで、比較例の情報処理装置では、画像データ処理動作期間中、例えばアービタを用いてモジュールのバスアクセス優先度をそれぞれ設定している。
【００４６】
図８に示すように、比較例の情報処理装置では、画像データ処理動作中、モジュールＡ、モジュールＢ、及びモジュールＣのバスアクセス優先度値が固定され、それぞれ一定な値に設定される。この結果、モジュールＡ、モジュールＢ、及びモジュールＣがビジーステート（busy state）となり、ビジーステート（busy state）が重なりあう期間Ａと期間Ｂでは、主バスのトータルバンド幅がバスバンド幅上限値をオーバーする。
【００４７】
一方、図９に示すように、本実施形態の情報処理装置９０では、画像データ処理動作中、バスアクセス調停回路１１でモジュールＡ、モジュールＢ、及びモジュールＣのバスアクセス優先度値を適宜変更している。モジュールＡ、モジュールＢ、及びモジュールＣがビジーステート（busy state）となり、ビジーステート（busy state）が重なりあう期間Ａと期間Ｂでは、モジュールのバスバンド幅が比較例よりも抑制される。この結果、期間Ａと期間Ｂでは、主バス６のトータルバンド幅がバスバンド幅上限値よりも低くなる。
【００４８】
上述したように、本実施形態の情報処理装置では、メインプロセッサ１、主メモリ２、モジュール３、モジュール４、モジュール５、主バス６、及び表示装置７が設けられる。情報処理装置９０が画像データ処理動作の場合、主バス６には、バスアクセス調停回路１１、イニシエータエージェント４１、イニシエータエージェント４２、イニシエータエージェント４３、及びターゲットエージェント４４が設けられる。バスアクセス調停回路１１は、イニシエータエージェント４１乃至４３とターゲットエージェント４４の間に設けられる。イニシエータエージェント４１は、モジュール３に接続される。モジュール３は動作状態レジスタ１２、優先度設定レジスタのアドレス３１、各動作状態に応じて決められるカウントアップ割合設定値３４を有する。イニシエータエージェント４２は、モジュール４に接続される。モジュール４は動作設定レジスタ１３、優先度設定レジスタのアドレス３２、各動作状態に応じて決められるカウントアップ割合設定値３５を有する。イニシエータエージェント４３は、モジュール５に接続される。モジュール５は動作設定レジスタ１４、優先度設定レジスタのアドレス３３、各動作状態に応じて決められるカウントアップ割合設定値３６を有する。ターゲットエージェント４４は、主メモリ２に接続され、主メモリ２へのアクセスを発行する。ターゲットエージェント４４には、バスアクセス優先度の決定に必要なパラメータを格納するパラメータ設定レジスタ１５が設けられる。
【００４９】
このため、自モジュールが主バス６を頻繁に使用しないとき、モジュール自ら主バス６へのバスアクセス優先度を下げるようにパラメータを変更できる。他モジュールと主バス６を介する動作が競合するとき、バスアクセス優先度を互いに抑制できる機能をモジュールが有している。したがって、情報処理装置９０ではバス使用効率を向上できる。ビジーステートが重なった場合でも主バス６のトータルバンド幅をバスバンド幅上限値よりも低くすることができる。
【００５０】
なお、本実施形態では、ターゲットエージェント４４の出力側（receiver）にターゲットコアとして主メモリ２を設けているが、必ずしもこれに限定されるものではない。例えばターゲットエージェント４４の出力側に入出力イーターフェースなどを設けてもよい。この場合、入出力イーターフェースには、低速で大容量のＤＲＡＭ（dynamic random access memory）やＨＤＤ（hard disk drive）などが接続される。
【００５１】
また、パラメータ設定レジスタ１５をターゲットエージェント４４に設けているが必ずしもこれに限定されるものではない。例えばバスアクセス調停回路１１などに設けてもよい。他モジュールの動作状態に合わせてバスアクセス優先度を決定するとき、自モジュールが他モジュールの動作状態レジスタを読みだして他モジュールの状態を確認した後に設定値を決めてもよい。他モジュールのバスアクセス優先度の設定値との差分で相対的に決めたりしてもよい。具体的には他モジュールがアイドル（idle）でバスアクセス優先度値が低い場合は大きく、高い場合は小さく設定されるよう演算して設定するなどである。
【００５２】
更に、別途バスアクセス優先度調停を行うアービタモジュールを用意し、アービタが各モジュールの状態に応じて優先度を変更させたりしてもよい。
【００５３】
（第２の実施形態）
次に、本発明の第２の実施形態に係る情報処理装置について、図面を参照して説明する。図10は情報処理装置示すブロック図である。本実施形態では、アクセス先への処理優先度を調停するバスアクセス調停回路をローカルバスに設けている。
【００５４】
図１０に示すように、情報処理装置９１には、メインプロセッサ４１、ビデオ処理部４２、グラフィック処理部４３、主バス４４、ローカルバス４５、ＤＲＡＭ４６、モジュール４７、モジュール４８、モジュール４９、及びＤＭＡ（direct memory access）コントローラ５０が設けられる。情報処理装置９1は、画像、グラフィック、音声を含む種々の情報をマルチ並列処理する。ここでは、情報処理装置９１をＳｏＣで構成しているが、複数の半導体集積回路装置が搭載されるボード、複数の半導体集積回路装置が搭載されるＳｉＰ、或いは複数の半導体集積回路装置が搭載されるマルチチップモジュールなどで構成してもよい。
【００５５】
主バス４４は、メインプロセッサ４１、ビデオ処理部４２、グラフィック処理部４３、及びＤＭＡコントローラ５０をそれぞれ接続する。主バス４４には、図示しないバスアクセス調停回路が設けられる。ローカルバス４５は、メインプロセッサ４１、ＤＲＡＭ４６、モジュール４７、モジュール４８、モジュール４９、及びＤＭＡコントローラ５０が設けられる。ローカルバス４５には、バスアクセス調停回路５１が設けられる。
【００５６】
メインプロセッサ４１は、情報処理装置９１全体を統括制御するマスターデバイスである。メインプロセッサ４１は、マイクロプロセッサである。ビデオ処理部４２は、ビデオ情報を処理するコアプロセッサである。グラフィック処理部４３は、グラフィック情報を処理するコアプロセッサである。
【００５７】
ＤＭＡコントローラ５０は、情報処理装置９１で処理されるメモリ情報をメインプロセッサ４１の指示なしに情報処理装置９１内に高速転送する。例えば、ＤＲＡＭに格納されるメモリ情報をローカルバス４５を介して読み出し、読みだされたメモリ情報をビデオ処理部４２やグラフィック処理部４３に主バス４４を介して高速転送する。
【００５８】
ＤＲＡＭ４６は、外部から入力される情報や情報処理装置９１内で処理された情報などを格納するスレーブデバイスである。ＤＲＡＭ４６は、ＳＲＡＭと比較して低速であるが大容量なメモリである。
【００５９】
モジュール４７には、動作状態を設定する動作状態レジスタ５２とバスアクセスの優先度を設定する優先度設定レジスタ２１１が設けられる。モジュール４７は、メインプロセッサ４１に対してはスレーブ動作するスレーブデバイスであるが、例えばＤＲＡＭ４６に対してはマスター動作するマスターデバイスである。
【００６０】
モジュール４８には、動作状態を設定する動作状態レジスタ５３とバスアクセスの優先度を設定する優先度設定レジスタ２１２が設けられる。モジュール４８は、メインプロセッサ４１に対してはスレーブ動作するスレーブデバイスであるが、例えばＤＲＡＭ４６に対してはマスター動作するマスターデバイスである。
【００６１】
モジュール４９には、動作状態を設定する動作状態レジスタ５４とバスアクセスの優先度を設定する優先度設定レジスタ２１３が設けられる。モジュール４９は、メインプロセッサ４１に対してはスレーブ動作するスレーブデバイスであるが、例えばＤＲＡＭ４６に対してはマスター動作するマスターデバイスである。
【００６２】
次に、ローカルメモリへのアクセス動作について、図１１及び図１２を参照して説明する。図１１及び図１２は主メモリへのアクセス動作を説明する図である。
【００６３】
図１１に示すように、データ処理動作の場合の情報処理装置９１では、例えばモジュール４７が第１のインターフェースとなり、モジュール４８が第２のインターフェースとなり、モジュール４９が第３のインターフェースとなる。
【００６４】
ローカルバス４５には、バスアクセス調停回路５１、イニシエータエージェント６１、イニシエータエージェント６２、イニシエータエージェント６３、及びターゲットエージェント６４が設けられる。バスアクセス調停回路５１は、イニシエータエージェント６１乃至６３とターゲットエージェント６４の間に設けられる。
【００６５】
イニシエータエージェント６１は、イニシエータコアであるモジュール４７に接続され、バスクロックに同期して処理を行う。モジュール４７は、優先度設定レジスタのアドレス７１、各動作状態に応じて決められるカウントアップ割合設定値７４を有する。モジュール４７は機器５５から、例えばビデオ情報が入力される。
【００６６】
イニシエータエージェント６２は、イニシエータコアであるモジュール４８に接続され、バスクロックに同期して処理を行う。モジュール４８は、優先度設定レジスタのアドレス７２、各動作状態に応じて決められるカウントアップ割合設定値７５を有する。モジュール４８は機器５６から、例えばグラフィック情報が入力される。
【００６７】
イニシエータエージェント６３は、イニシエータコアであるモジュール４９に接続され、バスクロックに同期して処理を行う。モジュール４９は、優先度設定レジスタのアドレス７３、各動作状態に応じて決められるカウントアップ割合設定値７６を有する。モジュール４９は機器から、例えば音楽情報が入力される。
【００６８】
ターゲットエージェント６４は、ターゲットコアであるＤＲＡＭ４６に接続され、バスクロックに同期して処理を行う。ターゲットエージェント６４は、ＤＲＡＭ４６へのアクセスを発行する。
【００６９】
ターゲットエージェント６４には、図１２に示すように、バスアクセス優先度の決定に必要なパラメータを格納するパラメータ設定レジスタ５８が設けられる。パラメータ設定レジスタ５８は、モジュールＡＡカウントアップ割合７７、モジュールＡＡ優先度７８、モジュールＢＢカウントアップ割合７９、・・・など各モジュールのカウントアップ割合及び優先度情報を有する。
【００７０】
モジュール４７乃至４９は、それぞれ複数の動作状態を有し、ローカルバス４５を使用するビジーステートとその他の状態とがある。ここでは、第１の実施携帯と同様にモジュール４７乃至４９のバスアクセス優先度は固定されず、各モジュールの動作状態に応じて自らバスアクセス優先度を動的に設定できる構造（マルチ並列処理構造）となっている。
【００７１】
また、優先度設定レジスタのアドレスとカウントアップ割合設定値は、ユーザがメインプロセッサ４１を介して自由に設定値を変更できる。モジュール４７乃至４９は、それぞれ優先度設定レジスタのアドレスとカウントアップ割合設定値を動作状態が移行する前後に、ターゲットエージェント６４のパラメータ設定レジスタ５８に書き込み、自らバスアクセス優先度を変更する動作を行う。
【００７２】
上述したように、本実施形態の情報処理装置では、メインプロセッサ４１、ビデオ処理部４２、グラフィック処理部４３、主バス４４、ローカルバス４５、ＤＲＡＭ４６、モジュール４７、モジュール４８、モジュール４９、及びＤＭＡコントローラ５０が設けられる。情報処理装置９１が情報処理動作の場合、ローカルバス４５には、バスアクセス調停回路５１、イニシエータエージェント６１、イニシエータエージェント６２、イニシエータエージェント６３、及びターゲットエージェント６４が設けられる。バスアクセス調停回路５１は、イニシエータエージェント６１乃至６３とターゲットエージェント６４の間に設けられる。イニシエータエージェント６１は、モジュール４７に接続される。モジュール４７は、動作状態レジスタ５２、優先度設定レジスタのアドレス７１、各動作状態に応じて決められるカウントアップ割合設定値７４を有する。イニシエータエージェント６２は、モジュール４８に接続される。モジュール４８は動作状態レジスタ５３、優先度設定レジスタのアドレス７２、各動作状態に応じて決められるカウントアップ割合設定値７５を有する。イニシエータエージェント６３は、モジュール４９に接続される。モジュール４９は、動作状態レジスタ５４、優先度設定レジスタのアドレス７３、各動作状態に応じて決められるカウントアップ割合設定値７６を有する。ターゲットエージェント６４には、バスアクセス優先度の決定に必要なパラメータを格納するパラメータ設定レジスタ５８が設けられる。
【００７３】
このため、自モジュールがローカルバス４５を頻繁に使用しないとき、モジュール自らローカルバス４５へのバスアクセス優先度を下げるようにパラメータを変更できる。他モジュールとローカルバス４５を介する動作が競合するとき、バスアクセス優先度を互いに抑制できる機能をモジュールが有している。したがって、情報処理装置９１ではバス使用効率を向上できる。ビジーステートが重なった場合でもローカルバス４５のトータルバンド幅をバスバンド幅上限値よりも低くすることができる。
【００７４】
本発明は、上記実施形態に限定されるものではなく、発明の趣旨を逸脱しない範囲で、種々、変更してもよい。
【００７５】
実施形態では、機器を介して情報が入力されているが、ネットワーク経由で入力される情報を処理する場合でも有効である。主バスやローカルバスは必ずしも１つとは限らない。複数のバスが設けられる情報処理装置でも有効である。
【００７６】
本発明は、以下の付記に記載されているような構成が考えられる。  
（付記１）  動作状態を設定する第１の動作状態レジスタとバスアクセスへの優先度を設定する第１の優先度設定レジスタを有し、第１の情報処理を実行する第１のモジュールと、動作状態を設定する第２の動作状態レジスタとバスアクセスへの優先度を設定する第２の優先度設定レジスタを有し、第２の情報処理を実行する第２のモジュールと、前記第１及び第２のモジュールを接続し、前記第１及び第２のモジュールのアクセス先への処理優先度を調停するバスアクセス調停回路とカウントアップ割合及びバスアクセス優先度を格納するパラメータ設定レジスタとを有するバスとを具備することを特徴とする情報処理装置。
【００７７】
（付記２）  前記バスは、前記第１のモジュールに接続され、バスクロックに同期して処理を実行する第１のイニシエータエージェントと、前記第２のモジュールに接続され、前記バスクロックに同期して処理を実行する第２のイニシエータエージェントと、前記主メモリに接続され、前記パラメータ設定レジスタが設けられ、前記バスクロックに同期して処理を実行するターゲットエージェントとを更に具備し、前記バスアクセス調停回路は前記第１及び第２のイニシエータエージェントと前記ターゲットエージェントの間に設けられる付記１に記載の情報処理装置。
【００７８】
（付記３）  前記ターゲットエージェントに接続されるターゲットコアは、主メモリ或いは入出力インターフェースである付記２に記載の情報処理装置。
【００７９】
（付記４）  前記第１及び第２のモジュールは、前記ターゲットコアに対してマスターデバイスである付記３に記載の情報処理装置。
【符号の説明】
【００８０】
１、４１  メインプロセッサ
２  主メモリ
３〜５、４７〜４９  モジュール
６、４４  主バス
７  表示装置
８  カメラ
１１、５１  バスアクセス調停回路
１２〜１４、５２〜５４  動作状態レジスタ
１５、５８  パラメータ設定レジスタ
２１  カウントアップ部
２２  加算部
２３  クロックサイクル部
２４  命令実行部
２５  命令部
３１〜３３、７１〜７３  優先度設定レジスタのアドレス
３４〜３６、７４〜７６  カウントアップ割合設定値
３７  モジュールＡカウントアップ割合
３８  モジュールＡ優先度
３９  モジュールＢカウントアップ割合
４１〜４３、６１〜６３  イニシエータエージェント
４４、６４  ターゲットエージェント
４２  ビデオ処理部
４３  グラフィック処理部
４５  ローカルバス
４６  ＤＲＡＭ
５０  ＤＭＡコントローラ
５５〜５７  機器
７７  モジュールＡＡカウントアップ割合
７８  モジュールＡＡ優先度
７９  モジュールＢＢカウントアップ割合
９０、９１  情報処理装置
１１１〜１１３、２１１〜２１３  優先度設定レジスタ
３４１  Ｓ１１でのカウントアップ割合設定値
３４２  Ｓ１４でのカウントアップ割合設定値
３４３  Ｓ１４＆Ｓ３１でのカウントアップ割合設定値
３６１  Ｓ３１でのカウントアップ割合設定値
３６２  Ｓ３１＆Ｓ１４でのカウントアップ割合設定値
３８１  モジュールＡ最大優先度
３８２  モジュールＡ最小優先度
【図１】
2012003655.tif 000003
【図２】
2012003655.tif 000004
【図３】
2012003655.tif 000005
【図４】
2012003655.tif 000006
【図５】
2012003655.tif 000007
【図６】
2012003655.tif 000008
【図７】
2012003655.tif 000009
【図８】
2012003655.tif 000010
【図９】
2012003655.tif 000011
【図１０】
2012003655.tif 000012
【図１１】
2012003655.tif 000013
【図１２】
2012003655.tif 000014