(57)【要約】【課題】フロー制御対象のアクセス元の指定期間内の目標転送量を保障でき、しかも、フロー制御対象のアクセス元のバスアクセスを拡散し、フロー制御対象以外のアクセス元のアクセスレイテンシを向上させ、システム全体の性能向上を図ることができる情報処理装置を提供する。【解決手段】アービトレーション判定回路２４は、アクセス元２１＿２について、ａｃ＿ｔａｒｇｅｔ（指定期間の開始時刻から現在時刻までの目標転送量）を「ＴＡ（目標転送量保持レジスタ３１＿２の値）＊ｔｉｍｅ（時間測定カウンタ２９の値）／ＴＩＭＥ＿ＭＡＸ（指定期間保持レジスタ２８の値）」なる計算で求める。ａｃ＿ｔａｒｇｅｔ＞ａｃ（転送量カウンタ３０＿２の値）の場合は、アクセス元２１＿２にバス権を与え、ａｃ＿ｔａｒｇｅｔ≦ａｃの場合は、アクセス元２１＿１、２１＿３〜２１＿Ｎにラウンドロビン又は固定優先の手法に従いバス権を与える。【選択図】図１
2007323473.tif 000002
【特許請求の範囲】
【請求項１】
フロー制御対象のアクセス元を含む複数のアクセス元と、該複数のアクセス元に共有されるバスと、アクセス先と、前記複数のアクセス元のバスアクセスを調停するアービトレーション判定回路を有する情報処理装置において、
前記アービトレーション判定回路は、前記フロー制御対象のアクセス元には、指定期間の開始時刻から現在時刻までの転送量が「前記指定期間内の目標転送量×前記指定期間の開始時刻から現在時刻までの時間／前記指定期間」未満の場合にバス権を付与することを特徴とする情報処理装置。
【請求項２】
フロー制御対象のアクセス元を含む複数のアクセス元と、該複数のアクセス元に共有されるバスと、アクセス先と、前記複数のアクセス元のバスアクセスを調停するアービトレーション判定回路を有する情報処理装置において、
前記アービトレーション判定回路は、前記フロー制御対象のアクセス元については、指定期間の開始時刻から現在時刻までの転送量が「前記指定期間内の目標転送量×前記指定期間の開始時刻から現在時刻までの時間／前記指定期間」未満の場合はバス権優先度を上げ、前記指定期間の開始時刻から現在時刻までの転送量が「前記指定期間内の目標転送量×前記指定期間の開始時刻から現在時刻までの時間／前記指定期間」以上の場合はバス権優先度を下げることを特徴とする情報処理装置。
【請求項３】
前記指定期間を保持する指定期間保持レジスタと、
前記指定期間の開始時刻から現在時刻までの時間を測定する時間測定カウンタと、
前記フロー制御対象のアクセス元の転送量をカウントする転送量カウンタと、
前記フロー制御対象のアクセス元の前記指定期間内の目標転送量を保持する目標転送量保持レジスタを有することを特徴とする請求項１又は２記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタデバイスである複数のアクセス元と、該複数のマスタデバイスに共有されるバスと、スレーブデバイスであるアクセス先を備える情報処理装置に関する。
【背景技術】
【０００２】
図１８は従来の情報処理装置の一例の構成図である。図１８中、１＿１、１＿２、１＿Ｎはアクセス元であり、アクセス元１＿３〜１＿Ｎ−１は図示を省略している。アクセス元１＿１〜１＿Ｎは、ＣＰＵ（central processing unit）やＤＭＡＣ（direct memory access controller）などのマスタデバイスである。
【０００３】
２＿１、２＿ｎはアクセス先であり、アクセス先２＿２〜２＿ｎ−１は図示を省略している。アクセス先２＿１〜２＿ｎはメモリなどのスレーブデバイスである。３はアクセス元１＿１〜１＿Ｎに共有されるバス、４はアービトレーション判定回路であり、アクセス元１＿１〜１＿Ｎのバスアクセスを調停するものである。５はバス権要求信号線、６はバス権返送信号線である。
【０００４】
ここで、例えば、アクセス元１＿２が一定期間（指定時間）内に一定量のデータ転送を完了させるように制御する必要があるデバイス、いわゆるフロー制御対象デバイスである場合、アービトレーション判定回路４は、アクセス元１＿２のバスアクセスを最高優先とし、それ以外のアクセス元１＿１、１＿３〜１＿Ｎのバスアクセスは、ラウンドロビンや固定優先などのアルゴリズムで優先度を決定することになる。
【０００５】
図１９は図１８に示す従来の情報処理装置における転送例を示すタイムチャートであり、図１８に示す従来の情報処理装置が４個のアクセス元１＿１〜１＿４を持ち、かつ、アクセス元１＿２がフロー制御対象デバイスである場合を例にしている。
【０００６】
図１９（Ａ）はアクセス元１＿１、１＿３、１＿４のバス権優先度をラウンドロビンで決定している場合である。この例の場合、アクセス元１＿１、１＿３、１＿４の間では、アクセス元１＿１→アクセス元１＿３→アクセス元１＿４の順に繰り返してバスアクセスが行われている。
【０００７】
図１９（Ｂ）はアクセス元１＿１、１＿３、１＿４のバス権優先度を固定優先で決定している場合である。この例の場合、アクセス元１＿１、１＿３、１＿４の間では、アクセス元１＿１のバス権が第１優先、アクセス元１＿３のバス権が第２優先、アクセス元１＿４のバス権が第３優先としてバスアクセスが行われている。
【特許文献１】特開平１０−３３４０４２号公報
【特許文献２】特開平０９−１８５５８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
図１８に示す従来の情報処理装置においては、フロー制御対象デバイスであるアクセス元１＿２のアクセスが常に優先的に処理されるため、その期間は、他のアクセス元１＿１、１＿３〜１＿Ｎのアクセスは処理が後回しにされる。この結果、例えば、図１９（Ａ）に示す転送例では、矢印線ＸＡで示すように、アクセス元１＿１にアクセスレイテンシが大きくなる場合が発生している。また、図１９（Ｂ）に示す転送例では、矢印線ＸＢで示すように、アクセス元１＿４にアクセスレイテンシが大きくなる場合が発生している。
【０００９】
図１９（Ａ）に示す転送例において、アクセス元１＿１がＣＰＵなどのようにアクセスレイテンシが性能に影響するデバイスである場合には、アクセス元１＿１の処理性能が低下してしまうという問題点がある。また、図１９（Ｂ）に示す転送例においては、アクセス元１＿４がＣＰＵなどのようにアクセスレイテンシが性能に影響するデバイスである場合、アクセス元１＿４の処理性能が低下してしまうという問題点がある。
【００１０】
図２０及び図２１は図１８が示す従来の情報処理装置が有する他の問題点を説明するための図である。図２０はＳＤＲＡＭ（synchronous dynamic random access memory）の一例を示しており、図２０中、１０はＳＤＲＡＭ本体、１１はバンクアドレスをＢ１とするバンク、１２はバンクアドレスをＢ２とするバンク、１３はバンクアドレスをＢ３とするバンク、１４はバンクアドレスをＢ４とするバンクである。
【００１１】
１５、１６、１７はバンク１１内のメモリセルであり、メモリセル１５はロウアドレスをＲ１、コラムアドレスをＣ１とするもの、メモリセル１６はロウアドレスをＲ１、コラムアドレスをＣ２とするもの、メモリセル１７はロウアドレスをＲ１、コラムアドレスをＣ３とするものである。
【００１２】
図２１は図２０に示すＳＤＲＡＭへのアクセス例を示す図であり、図２１（Ａ）はメモリセル１５、１６、１７に離散的にアクセスする場合、図２０（Ｂ）はメモリセル１５、１６、１７に連続的にアクセスする場合を示している。
【００１３】
即ち、メモリセル１５、１６、１７に離散的にアクセスする場合には、図２１（Ａ）に示すように、メモリセル１５へのアクセス時には、コマンドＲＡＳ及びページアドレスＢ１Ｒ１を与えた後、コマンドＣＡＳ及びコラムアドレスＣ１を与える必要があり、メモリセル１６へのアクセス時には、コマンドＲＡＳ及びページアドレスＢ１Ｒ１を与えた後、コマンドＣＡＳ及びコラムアドレスＣ２を与える必要があり、メモリセル１７へのアクセス時には、コマンドＲＡＳ及びページアドレスＢ１Ｒ１を与えた後、コマンドＣＡＳ及びコラムアドレスＣ３を与える必要がある。
【００１４】
これに対して、メモリセル１５、１６、１７に連続的にアクセスする場合には、図２１（Ｂ）に示すように、メモリセル１５へのアクセス時には、コマンドＲＡＳ及びページアドレスＢ１Ｒ１を与えた後、コマンドＣＡＳ及びコラムアドレスＣ１を与える必要があるが、メモリセル１６へのアクセス時には、コマンドＣＡＳ及びコラムアドレスＣ２を与えれば足り、メモリセル１７へのアクセス時には、コマンドＣＡＳ及びコラムアドレスＣ３を与えれば足りる。即ち、メモリセル１６へのアクセス時及びメモリセル１７へのアクセス時には、コマンドＲＡＳ及びページアドレスＢ１Ｒ１を与えなくとも、ページミスは発生しない。
【００１５】
そこで、例えば、図１８に示す従来の情報処理装置において、アクセス先２＿１が図２０に示すＳＤＲＡＭであり、図１９に示すアクセス元１＿１の転送期間Ｔ１がメモリセル１５へのアクセスによるものであり、転送期間Ｔ２がメモリセル１６へのアクセスによるものであり、転送期間Ｔ３がメモリセル１７へのアクセスによるものである場合には、連続的にアクセスする場合に比較して無駄なサイクルが発生してしまい、その分、高速化が妨げられることになる。
【００１６】
このような場合、アクセス元１＿１からのメモリセル１５、１６、１７へのアクセスを連続的に行うことができれば、高速化を図ることができるが、図１８に示す従来の情報処理装置においては、アクセス元１＿２がフロー制御対象デバイスである場合、アクセス元１＿２のアクセスが常に優先的に処理されるので、アクセス元１＿２の転送期間中は、アクセス元１＿１のアクセスは処理が後回しにされ、この結果、アクセス元１＿１はメモリセル１５、１６、１７へのアクセスを連続的に行うことができず、高速化が妨げられる場合があるという問題点があった。
【００１７】
本発明は、かかる点に鑑み、フロー制御対象のアクセス元の指定期間内の目標転送量を保障することができ、しかも、フロー制御対象のアクセス元のバスアクセスを拡散し、フロー制御対象以外のアクセス元のアクセスレイテンシを向上させ、システム全体の性能向上を図ることができるようにした情報処理装置を提供することを第１の目的とする。
【００１８】
また、本発明は、フロー制御対象のアクセス元の指定期間内の目標転送量を保障することができ、しかも、フロー制御対象のアクセス元のバスアクセスを拡散し、かつ、同一のアクセス元の転送処理を或る程度まとめて行うことができるようにし、高速化を図ることができるようにした情報処理装置を提供することを第２の目的とする。
【課題を解決するための手段】
【００１９】
本発明中、第１の発明は、フロー制御対象のアクセス元を含む複数のアクセス元と、該複数のアクセス元に共有されるバスと、アクセス先と、前記複数のアクセス元のバスアクセスを調停するアービトレーション判定回路を有する情報処理装置において、前記アービトレーション判定回路は、前記フロー制御対象のアクセス元には、指定期間の開始時刻から現在時刻までの転送量が「前記指定期間内の目標転送量×前記指定期間の開始時刻から現在時刻までの時間／前記指定期間」未満の場合にバス権を付与するというものである。
【００２０】
本発明中、第２の発明は、フロー制御対象のアクセス元を含む複数のアクセス元と、該複数のアクセス元に共有されるバスと、アクセス先と、前記複数のアクセス元のバスアクセスを調停するアービトレーション判定回路を有する情報処理装置において、前記アービトレーション判定回路は、前記フロー制御対象のアクセス元については、指定期間の開始時刻から現在時刻までの転送量が「前記指定期間内の目標転送量×前記指定期間の開始時刻から現在時刻までの時間／前記指定期間」未満の場合はバス権優先度を上げ、前記指定期間の開始時刻から現在時刻までの転送量が「前記指定期間内の目標転送量×前記指定期間の開始時刻から現在時刻までの時間／前記指定期間」以上の場合はバス権優先度を下げるというものである。
【発明の効果】
【００２１】
本発明中、第１の発明によれば、フロー制御対象のアクセス元は、指定期間の開始時刻から現在時刻までの転送量が「指定期間内の目標転送量×指定期間の開始時刻から現在時刻までの時間／指定期間」未満の場合にバス権が付与されるので、フロー制御対象のアクセス元の指定期間内の目標転送量を保障することができ、しかも、フロー制御対象のアクセス元のバスアクセスを拡散し、フロー制御対象以外のアクセス元のアクセスレイテンシを向上させ、システム全体の性能向上を図ることができる。
【００２２】
本発明中、第２の発明によれば、フロー制御対象のアクセス元は、指定期間の開始時刻から現在時刻までの転送量が「指定期間内の目標転送量×指定期間の開始時刻から現在時刻までの時間／指定期間」未満の場合はバス権優先度が上げられ、指定期間の開始時刻から現在時刻までの転送量が「指定期間内の目標転送量×指定期間の開始時刻から現在時刻までの時間／指定期間」以上の場合はバス権優先度が下げられるので、フロー制御対象のアクセス元の指定期間内の目標転送量を保障することができ、しかも、フロー制御対象のアクセス元のバスアクセスを拡散し、かつ、同一のアクセス元の転送処理を或る程度まとめて行うことができるようにし、高速化を図ることができる。
【発明を実施するための最良の形態】
【００２３】
（第１実施形態）
図１は本発明の第１実施形態の構成図である。図１中、２１＿１、２１＿２、２１＿Ｎはアクセス元であり、アクセス元２１＿３〜２１＿Ｎ−１は図示を省略している。アクセス元２１＿１〜２１＿ＮはＣＰＵやＤＭＡＣなどのマスタデバイスである。なお、本発明の第１実施形態では、アクセス元２１＿２がフロー制御対象デバイス、アクセス元２１＿１、２１＿３〜２１＿Ｎがフロー制御対象以外のデバイスの場合である。
【００２４】
２２＿１、２２＿ｎはアクセス先であり、アクセス先２２＿２〜２２＿ｎ−１は図示を省略している。アクセス先２２＿１〜２２＿ｎはメモリなどのスレーブデバイスである。２３はアクセス元２１＿１〜２１＿Ｎに共有されるバス、２４はアービトレーション判定回路であり、アクセス元２１＿１〜２１＿Ｎのバスアクセスを調停するものである。２５はバス権要求信号線、２６はバス権返送信号線である。
【００２５】
２７は指定期間保持レジスタ・時間測定カウンタ部であり、２８はフロー制御対象アクセス元が一定量のデータを転送すべき期間として指定される期間が書き込まれる指定期間保持レジスタ、２９は時間を測定する時間測定カウンタである。
【００２６】
３０＿２はアクセス元２１＿２に対応して設けられた転送量カウンタであり、図２に示すように、アクセス元２１＿２がオペレーション発行時に出力するアクセスサイズ情報を入力し、アクセス元２１＿２の転送量をカウントするものである。なお、転送量カウンタ３０＿２の値は、毎時、アービトレーション判定回路２４に通知される。
【００２７】
３１＿２はアクセス元２１＿２に対応して設けられた目標転送量保持レジスタであり、アクセス元２１＿２の指定期間内の目標転送量が書き込まれるものである。本発明の第１実施形態では、目標転送量保持レジスタ３１＿２は、アートビレーション判定回路２４に対して、その値を垂れ流しするように構成される。
【００２８】
３２＿２はアクセス元２１＿２に対応して設けられた転送完了／未完了判定・通知回路であり、指定期間終了時の転送量カウンタ３０＿２の値と目標転送量保持レジスタ３１＿２の値から、アクセス元２１＿２による指定期間内の目標転送量の転送が完了したか否かの判定を行い、未完了の場合には、その結果を必要に応じてＣＰＵなどに通知するものである。
【００２９】
図３は時間測定カウンタ２９及び転送量カウンタ３０＿２の動作を示すフローチャートである。本発明の第１実施形態では、指定期間が開始すると、時間測定カウンタ２９はカウントを開始することにより現在時刻を進める（ステップＳ３＿１）。そして、時間測定カウンタ２９による現在時刻が指定期間終了時に到達したか否かが判定される（ステップＳ３＿２）。
【００３０】
そして、現在時刻が指定期間終了時に到達しない間（ステップＳ３＿２の結果がＮＯである間）は、転送量カウンタ３０＿２は、アクセス元２１＿２がオペレーションを発行したか否かを判定し（ステップＳ３＿３）、アクセス元２１＿２がオペレーションを発行した場合（ステップＳ３＿３でＹＥＳの場合）には、アクセス元２１＿２が出力するアクセスサイズ情報を入力してアクセス元２１＿２の転送量を累積加算する（ステップＳ３＿４）。
【００３１】
これに対して、現在時刻が指定期間終了時に到達しない場合において、アクセス元２１＿２がオペレーションを発行しない場合（ステップＳ３＿３でＮＯの場合）には、転送量カウンタ３０＿２は、アクセス元２１＿２のオペレーションの発行を待つ。
【００３２】
そして、その後、時間測定カウンタ２９による現在時刻が指定期間終了時に到達した場合（ステップＳ３＿２でＹＥＳの場合）には、時間測定カウンタ２９のクリア処理と、転送量カウンタ３０＿２のクリア処理が行われる（ステップＳ３＿５）。
【００３３】
図４はアービトレーション判定回路２４の第１動作例を示すフローチャートである。即ち、アービトレーション判定回路２４は、第１動作例においては、時間測定カウンタ２９による現在時刻が指定期間終了時に到達したか否かを判定する（ステップＳ４＿１）。
【００３４】
そして、時間測定カウンタ２９による現在時刻が指定期間終了時に到達していない場合（ステップＳ４＿１でＮＯの場合）には、アクセス元２１＿２について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝を「目標転送量保持レジスタ３１＿２の値｛ＴＡ｝×時間測定カウンタ２９の値｛ｔｉｍｅ｝／指定期間保持レジスタ２８の値｛ＴＩＭＥ＿ＭＡＸ｝」なる計算で求め（ステップＳ４＿２）、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝＞転送量カウンタ３０＿２の値｛ａｃ｝であるか否かを判定する（ステップＳ４＿３）。
【００３５】
そして、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝＞転送量カウンタ３０＿２の値｛ａｃ｝の場合、即ち、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達していない場合（ステップＳ４＿３でＹＥＳの場合）には、アクセス元２１＿２にバス権を与え（ステップＳ４＿４）、ステップＳ４＿１に戻る。
【００３６】
これに対して、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝≦転送量カウンタ３０＿２の値｛ａｃ｝でない場合、即ち、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達している場合（ステップＳ４＿３でＮＯの場合）には、アクセス元２１＿１、２１＿３〜２１＿Ｎにラウンドロビン又は固定優先の手法に従いバス権を与え（ステップＳ４＿５）、ステップＳ４＿１に戻る。そして、指定期間が終了した場合（ステップＳ４＿１でＹＥＳの場合）には、処理を終了する。
【００３７】
図５はアービトレーション判定回路２４が第１動作例に従って動作した場合の本発明の第１実施形態における転送例を従来方式による場合と比較して示すタイムチャートであり、本発明の第１実施形態が４個のアクセス元２１＿１〜２１＿４を備えている場合を例にしている。
【００３８】
図５（Ａ）は従来方式による場合、図５（Ｂ）は本発明の第１実施形態の場合を示しているが、いずれの場合も、アクセス元２１＿２のアクセスを最高優先とし、アクセス元２１＿１、２１＿３、２１＿４のバス権優先度をラウンドロビンの手法で決定している場合を示しており、アクセス元２１＿１、２１＿３、２１＿４の間では、アクセス元２１＿１→アクセス元２１＿３→アクセス元２１＿４の順にバスアクセスが行われている。
【００３９】
ここで、従来方式による場合には、アクセス元２１＿２のバスアクセスが常に優先的に処理されるため、その期間は、他のアクセス元２１＿１、２１＿３、２１＿４のバスアクセスは処理が後回しにされる。この結果、例えば、図５（Ａ）に示す転送例では、矢印線ＸＣで示すように、アクセス元２１＿１にアクセスレイテンシが大きくなる場合が発生している。
【００４０】
これに対して、アービトレーション判定回路２４は、アクセス元２１＿２について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝を「目標転送量保持レジスタ３１＿２の値｛ＴＡ｝×時間測定カウンタ２９の値｛ｔｉｍｅ｝／指定期間保持レジスタ２８の値｛ＴＩＭＥ＿ＭＡＸ｝」なる計算で求めるとしている。
【００４１】
そして、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達していない場合には、アクセス元２１＿２にバス権を与え、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達している場合には、アクセス元２１＿１、２１＿３〜２１＿Ｎにラウンドロビン又は固定優先の手法に従いバス権を与えるとしている。
【００４２】
この結果、アクセス元２１＿２の指定期間内の目標転送量｛ＴＡ｝を保障することができ、しかも、アクセス元２１＿２のバスアクセスを拡散することができる。図５（Ｂ）に示す例では、期間Ｔ４〜Ｔ７は、アクセス元２１＿２がバス権要求を行っているにも関わらず、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達している状態であり、アクセス元２１＿２にバス権が与えられていない期間を示している。
【００４３】
このように、本発明の第１実施形態においては、アービトレーション判定回路２４が第１動作例に従って動作する場合には、アクセス元２１＿２のバスアクセスを拡散させることができるので、アクセス元２１＿１のアクセスレイテンシを矢印線ＸＤで示すように、小さくすることができる。
【００４４】
図６は本発明の第１実施形態の第１具体例の構成図である。本発明の第１実施形態の第１具体例は、本発明の第１実施形態が２個のアクセス元と、２個のアクセス先を持ち、かつ、２個のアクセス元がＣＰＵ４１＿１とＤＭＡＣ４１＿２、２個のアクセス先がＳＤＲＡＭ４２＿１とＶＧＡ（video graphics array）デバイス４２＿２であり、バス２３の帯域が１００ＭＢ／secの場合である。
【００４５】
本発明の第１実施形態の第１具体例においては、ＣＰＵ４１＿１は、ＳＤＲＡＭ４２＿１に保持されているＭＰＥＧ２やＨ.２６８などのストリームデータをフレームデータにデコードしてＳＤＲＡＭ４２＿１に格納し、ＤＭＡＣ４１＿２は、ＣＰＵ４１＿１がＳＤＲＡＭ４２＿１に格納したフレームデータを１／３０秒毎に１フレームずつＶＧＡデバイス４２＿２に転送するものとする。但し、フレームデータのサイズは１ＭＢ／１フレームとする。
【００４６】
このような動作をＣＰＵ４１＿１及びＤＭＡＣ４１＿２に実行させるためには、指定期間保持レジスタ２８に設定すべき値は１／３０秒となる。また、ＤＭＡＣ４１＿２は、ＳＤＲＡＭ４２＿１からリードを行い、ＶＧＡデバイス４２＿２にライトを行うことになるので、目標転送量保持レジスタ３１＿２に設定すべき値は１ＭＢ×２＝２ＭＢとなる。
【００４７】
図７はＣＰＵ４１＿１の動作を示すフローチャートである。即ち、本発明の第１実施形態の第１具体例では、まず、ＣＰＵ４１＿１は、プログラムの指示により、指定期間保持レジスタ２８に指定期間として１／３０秒を設定する（ステップＳ７＿１）。次に、ＣＰＵ４１＿１は、プログラムの指示により、目標転送量保持レジスタ３１＿２に指定期間内における目標転送量として２ＭＢを設定する（ステップＳ７＿２）。
【００４８】
次に、ＣＰＵ４１＿１は、プログラムの指示により、ＶＧＡデバイス４２＿２からＤＭＡＣ４１＿２への起動トリガ信号でＤＭＡＣ４１＿２の転送動作が開始するように設定する（ステップＳ７＿３）。
【００４９】
次に、ＣＰＵ４１＿１は、ＳＤＲＡＭ４２＿１に格納されているストリームデータを読み出してデコード処理を行う（ステップＳ７＿４）。そして、ストリームデータの全てのデコード処理が終了したか否かを判定し（ステップＳ７＿５）、ストリームデータの全てのデコード処理が終了していない場合（ステップＳ７＿５でＮＯの場合）には、ステップＳ７＿４に戻る。
【００５０】
そして、ストリームデータの全てのデコード処理が終了した場合（ステップＳ７＿５でＹＥＳの場合）には、ＣＰＵ４１＿１は、プログラムの指示により、ＤＭＡＣ４１＿２を停止させる（ステップＳ７＿６）。
【００５１】
なお、ＣＰＵ４１＿１によるストリームデータのデコード処理に並行して、１／３０秒毎に、ＶＧＡデバイス４２＿２からＤＭＡＣ４１＿２にトリガがかかり、ＤＭＡＣ４１＿２により、１／３０秒ごとに、ＳＤＲＡＭ４２＿１からのリード分として１ＭＢ、ＶＧＡデバイス４２＿２へのライト分として１ＭＢの合計２ＭＢのフレームデータの転送が行われる。
【００５２】
図８はアービトレーション判定回路２４が第１動作例に従って動作した場合の本発明の第１実施形態の第１具体例における転送例を従来方式による場合と比較して示すタイムチャートである。図８（Ａ）は従来方式による場合、図８（Ｂ）は本発明の第１実施形態の第１具体例の場合を示しているが、いずれの場合も、アクセス元２１＿２のアクセスを最高優先として転送が行われている。
【００５３】
ここで、従来方式による場合には、ＤＭＡＣ４１＿２のアクセスが常に優先的に処理されるため、その期間は、ＣＰＵ４１＿１のアクセスは処理が後回しにされる。この結果、例えば、図８（Ａ）に示す転送例では、矢印線ＸＥ１〜ＸＥ３で示すように、ＣＰＵ４１＿１にアクセスレイテンシが大きくなる場合が発生している。
【００５４】
これに対して、本発明の第１実施形態の第１具体例においては、ＤＭＡＣ４１＿２について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝が「目標転送量保持レジスタ３１＿２の値｛ＴＡ＝２ＭＢ｝×時間測定カウンタ２９の値｛ｔｉｍｅ｝／指定期間保持レジスタ２８の値｛ＴＩＭＥ＿ＭＡＸ＝１／３０秒｝」なる計算で求められる。
【００５５】
そして、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達していない場合には、ＤＭＡＣ４１＿２にバス権が与えられ、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達している場合には、ＣＰＵ４１＿１にバス権が与えられる。
【００５６】
この結果、図８（Ｂ）に示すように、ＤＭＡＣ４１＿２の指定期間｛１／３０秒｝内の目標転送量｛ＴＡ＝２ＭＢ｝を保障することができ、しかも、ＤＭＡＣ４１＿２のバスアクセスを拡散することができる。
【００５７】
図９はアービトレーション判定回路２４が第１動作例に従って動作した場合の本発明の第１実施形態の第１具体例における指定期間内の時間とＤＭＡＣ４１#２の累積転送量との関係を示す図であり、図９（Ａ）は図８（Ｂ）に示す転送例、図９（Ｂ）は図９（Ａ）に示す転送例の場合の指定期間内の時間とＤＭＡＣ４１＿２の累積転送量との関係を示している。
【００５８】
図１０は本発明の第１実施形態の第２具体例の構成図である。本発明の第１実施形態の第２具体例は、バス２３の帯域を５０ＭＢ／secとし、その他については、本発明の第１実施形態の第１具体例と同様に構成したものである。
【００５９】
本発明の第１実施形態の第２具体例においても、本発明の第１実施形態の第１具体例の場合と同様に、ＣＰＵ４１＿１は、ＳＤＲＡＭ４２＿１に保持されているＭＰＥＧ２やＨ.２６８などのストリームデータをフレームデータにデコードしてＳＤＲＡＭ４２＿１に格納し、ＤＭＡＣ４１＿２は、ＣＰＵ４１＿１がＳＤＲＡＭ４２＿１に格納したフレームデータを１／３０秒毎に１フレームずつＶＧＡデバイス４２＿２に転送するものとする。
【００６０】
このような動作をＣＰＵ４１＿１及びＤＭＡＣ４１＿２に実行させるためには、指定期間保持レジスタ２８に設定すべき値は１／３０秒となる。また、ＤＭＡＣ４１＿２は、ＳＤＲＡＭ４２＿１からリードを行い、ＶＧＡデバイス４２＿２にライトを行うことになるので、目標転送量保持レジスタ３１＿２に設定すべき値は１ＭＢ×２＝２ＭＢとなる。
【００６１】
しかしながら、バス２３の帯域が５０ＭＢ／secとされているので、ＤＭＡＣ４１＿２の１／３０秒あたりの可能な転送量は１.６７ＭＢとなる。アービトレーション判定回路２４は、ＤＭＡＣ４１＿２による累積転送量が目標転送量｛２ＭＢ｝に到達するように全てのバス帯域をＤＭＡＣ４１＿２に割り当てるように動作するが、結果的には、図１１に示すように、１／３０秒間に２ＭＢを転送することができない。
【００６２】
この場合、指定期間終了時に、転送完了／未完了判定・通知回路３２＿２は、ＤＭＡＣ４１＿２による累積転送量が目標転送量｛２ＭＢ｝に到達しなかったことを判定し、ＣＰＵ４１＿１にエラーを通知することになる。
【００６３】
図１２は本発明の第１実施形態におけるアービトレーション判定回路２４の第２動作例を示すフローチャートである。即ち、アービトレーション判定回路２４は、第２動作例においては、時間測定カウンタ２９による現在時刻が指定期間終了時に到達したか否かを判定する（ステップＳ１２＿１）。
【００６４】
そして、時間測定カウンタ２９による現在時刻が指定期間終了時に到達していない場合（ステップＳ１２＿１でＮＯの場合）には、アクセス元２１＿２について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝を「目標転送量保持レジスタ３１＿２の値｛ＴＡ｝×時間測定カウンタ２９の値｛ｔｉｍｅ｝／指定期間保持レジスタ２８の値｛ＴＩＭＥ＿ＭＡＸ｝」なる計算で求め（ステップＳ１２＿２）、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝＞転送量カウンタ３０＿２の値｛ａｃ｝であるか否かを判定する（ステップＳ１２＿３）。
【００６５】
そして、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝＞転送量カウンタ３０＿２の値｛ａｃ｝の場合、即ち、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達していない場合（ステップＳ１２＿３でＹＥＳの場合）には、アクセス元２１＿２のバス権優先度を上げ｛ステップＳ１２＿４｝、アクセス元２１＿１〜２１＿Ｎに対してバス権優先度に基づきバス権を与え（ステップＳ１２＿６）、ステップＳ１２＿１に戻る。
【００６６】
これに対して、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝≦転送量カウンタ３０＿２の値｛ａｃ｝でない場合、即ち、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達している場合（ステップＳ１２＿３でＮＯの場合）には、アクセス元２１＿２のバス権優先度を下げ（ステップＳ１２＿５）、アクセス元２１＿１〜２１＿Ｎに対してバス権優先度に基づきバス権を与え（ステップＳ１２＿６）、ステップＳ１２＿１に戻る。
【００６７】
なお、ステップＳ１２＿６において、バス権優先度が同一のアクセス元には、ラウンドロビン又は固定優先の手法でバス優先権を与える。そして、指定期間が終了したときは、指定期間内の処理を終了し、次の指定期間内の動作を開始する。
【００６８】
図１３はアービトレーション判定回路２４が第２動作例に従って動作した場合の本発明の第１実施形態における転送例を従来方式による場合と比較して示すタイムチャートであり、本発明の第１実施形態が４個のアクセス元２１＿１〜２１＿４を備えている場合を例にしている。
【００６９】
図１３（Ａ）は従来方式による場合、図１３（Ｂ）は本発明の第１実施形態の場合を示しているが、いずれの場合も、アクセス元２１＿２のアクセスを最高優先とし、アクセス元２１＿１、２１＿３、２１＿４のバス権優先度をラウンドロビンの手法で決定している場合を示しており、アクセス元２１＿１、２１＿３、２１＿４の間では、アクセス元２１＿１→アクセス元２１＿３→アクセス元２１＿４の順にバスアクセスが行われている。
【００７０】
ここで、従来方式による場合には、アクセス元２１＿２のバスアクセスが常に優先的に処理されるため、その期間は、他のアクセス元２１＿１、２１＿３、２１＿４のバスアクセスは処理が後回しにされる。この結果、例えば、図１３（Ａ）に示す転送例では、アクセス元２１＿１、２１＿３、２１＿４は、転送を或る程度まとめて行うことができないという状態が発生している。
【００７１】
これに対して、本発明の第１実施形態は、アービトレーション判定回路２４の第２動作例の下では、アクセス元２１＿２について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝を「目標転送量保持レジスタ３１＿２の値｛ＴＡ｝×時間測定カウンタ２９の値｛ｔｉｍｅ｝／指定期間保持レジスタ２８の値｛ＴＩＭＥ＿ＭＡＸ｝」なる計算で求めるとしている。
【００７２】
そして、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達していない場合には、アクセス元２１＿２のバス権優先度を上げ、転送量カウンタ３０＿２の値｛ａｃ｝が指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ｝に到達している場合には、アクセス元２１＿２のバス権優先度を下げるとしている。
【００７３】
この結果、アクセス元２１＿２の指定期間内の目標転送量を保障することができ、しかも、アクセス元２１＿２のバスアクセスを拡散し、かつ、アクセス元２１＿１、２１＿３、２１＿４の転送処理を或る程度まとめて行うことができる。したがって、アクセス元２１＿１、２１＿３、２１＿４のバスアクセスが、それぞれ、例えば、ＳＤＲＡＭの同一バンクの同一ページアドレス、かつ、異なるコラムアドレスに対するものである場合には、必要なサイクルを減らし、高速化を図ることができる。
【００７４】
表１は本発明の第１実施形態の性能と図１７に示す従来の情報処理装置の性能を比較した表である。
【００７５】
【表１】
2007323473.tif 000003
【００７６】
以上のように、本発明の第１実施形態においては、アービトレーション判定回路２４に第１動作例に従った動作を行わせる場合には、アクセス元２１＿２の指定期間内の目標転送量を保障することができ、しかも、アクセス元２１＿２のバスアクセスを拡散し、アクセス元２１＿１、２１＿３〜２１＿Ｎのアクセスレイテンシを向上させ、システム全体の性能向上を図ることができる。
【００７７】
また、本発明の第１実施形態においては、アービトレーション判定回路２４に第２動作例に従った動作を行わせる場合には、アクセス元２１＿２の指定期間内の目標転送量を保障することができ、しかも、アクセス元２１＿２のバスアクセスを拡散し、かつ、アクセス元２１＿１、２１＿３〜２１＿Ｎの転送処理を或る程度まとめて行うことができ、高速化を図ることができる。
【００７８】
（第２実施形態）
図１４は本発明の第２実施形態の構成図である。本発明の第２実施形態は、アクセス元２１＿１に対応させて、転送量カウンタ３０＿１、目標転送量保持レジスタ３１＿１及び転送完了／未完了判定・通知回路３２＿１を設けると共に、アクセス元２１＿２に対応させて、転送量カウンタ３０＿２、目標転送量保持レジスタ３１＿２及び転送完了／未完了判定・通知回路３２＿２を設け、その他については、本発明の第１実施形態と同様に構成したものである。
【００７９】
図１５は本発明の第２実施形態における時間測定カウンタ２９及び転送量カウンタ３０＿１、３０＿２の動作を示すフローチャートである。即ち、指定期間が開始すると、時間測定カウンタ２９は、カウントを開始することにより現在時刻を進める（ステップＳ１５＿１）。そして、時間測定カウンタ２９による現在時刻が指定期間終了時に到達したか否かが判定される（ステップＳ１５＿２）。
【００８０】
そして、現在時刻が指定期間終了時に到達しない間（ステップＳ１５＿２の結果がＮＯである間）は、転送量カウンタ３０＿１は、アクセス元２１＿１がオペレーションを発行したか否かを判定し（ステップＳ１５＿３＿１）、アクセス元２１＿１がオペレーションを発行した場合（ステップＳ１５＿３＿１でＹＥＳの場合）には、アクセス元２１＿１が出力するアクセスサイズ情報を入力してアクセス元２１＿１の転送量を累積加算する（ステップＳ１５＿４＿１）。これに対して、アクセス元２１＿１がオペレーションを発行しない場合（ステップＳ１５＿３＿１でＮＯの場合）には、転送量カウンタ３０＿１は、アクセス元２１＿１のオペレーションの発行を待つ。
【００８１】
また、転送量カウンタ３０＿２は、アクセス元２１＿２がオペレーションを発行したか否かを判定し（ステップＳ１５＿３＿２）、アクセス元２１＿２がオペレーションを発行した場合（ステップＳ１５＿３＿２でＹＥＳの場合）には、アクセス元２１＿２が出力するアクセスサイズ情報を入力してアクセス元２１＿２の転送量を累積加算する（ステップＳ１５＿４＿２）。これに対して、アクセス元２１＿２がオペレーションを発行しない場合（ステップＳ１５＿３＿２でＮＯの場合）には、転送量カウンタ３０＿２は、アクセス元２１＿２のオペレーションの発行を待つ。
【００８２】
そして、その後、時間測定カウンタ２９による現在時刻が指定期間終了時に到達した場合（ステップＳ１５＿２でＹＥＳの場合）には、時間測定カウンタ２９のクリア処理と、転送量カウンタ３０＿２のクリア処理が行われる（ステップＳ１５＿５）。
【００８３】
図１６は本発明の第２実施形態におけるアービトレーション判定回路２４の第１動作例を示すフローチャートである。即ち、アービトレーション判定回路２４は、第２動作例においては、時間測定カウンタ２９による現在時刻が指定期間終了時に到達したか否かを判定する（ステップＳ１６＿１）。
【００８４】
そして、時間測定カウンタ２９による現在時刻が指定期間終了時に到達していない場合（ステップＳ１６＿１でＮＯの場合）には、アクセス元２１＿１について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（１）｝を「目標転送量保持レジスタ３１＿１の値｛ＴＡ（１）｝×時間測定カウンタ２９の値（ｔｉｍｅ）／指定期間保持レジスタ２８の値（ＴＩＭＥ＿ＭＡＸ）」なる計算で求め（ステップＳ１６＿２＿１）、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（１）｝＞転送量カウンタ３０＿１の値｛ａｃ（１）｝であるか否かを判定する（ステップＳ１６＿３＿１）。
【００８５】
また、アクセス元２１＿２について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（２）｝を「目標転送量保持レジスタ３１＿２の値｛ＴＡ（２）｝×時間測定カウンタ２９の値（ｔｉｍｅ）／指定期間保持レジスタ２８の値（ＴＩＭＥ＿ＭＡＸ）」なる計算で求め（ステップＳ１６＿２＿２）、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（２）｝＞転送量カウンタ３０＿２の値｛ａｃ（２）｝であるか否かを判定する（ステップＳ１６＿３＿２）。
【００８６】
そして、ａｃ＿ｔａｒｇｅｔ（１）＞ａｃ（１）（ステップＳ１６＿３＿１でＹＥＳ）、かつ、ａｃ＿ｔａｒｇｅｔ（２）｝≦ａｃ（２）（ステップＳ１６＿３＿２でＮＯ）の場合には、アクセス元２１＿１にバス権を与える（ステップＳ１６＿４）。
【００８７】
これに対して、ａｃ＿ｔａｒｇｅｔ（１）≦ａｃ（１）（ステップＳ１６＿３＿１でＮＯ）、かつ、ａｃ＿ｔａｒｇｅｔ（２）＞ａｃ（２）（ステップＳ１６＿３＿２でＹＥＳ）の場合には、アクセス元２１＿２にバス権を与え（ステップＳ１６＿４）、ステップＳ１６＿１に戻る。
【００８８】
また、ａｃ＿ｔａｒｇｅｔ（１）＞ａｃ（１）｝（ステップＳ１６＿３＿１でＹＥＳ）、かつ、ａｃ＿ｔａｒｇｅｔ（２）＞ａｃ（２）（ステップＳ１６＿３＿２でＹＥＳ）の場合には、アクセス元２１＿１、２１＿２にラウンドロビン又は固定優先の手法でバス権を与え（ステップＳ１６＿４）、ステップＳ１６＿１に戻る。
【００８９】
また、ａｃ＿ｔａｒｇｅｔ（１）≦ａｃ（１）（ステップＳ１６＿３＿１でＮＯ）、かつ、ａｃ＿ｔａｒｇｅｔ（２）｝≦ａｃ（２）（ステップＳ１６＿３＿２でＮＯ）の場合には、アクセス元２１＿１〜２１＿Ｎにラウンドロビン又は固定優先の手法に従いバス権を与え（ステップＳ１６＿５）、ステップＳ１６＿１に戻る。そして、指定期間が終了した場合（ステップＳ１６＿１でＹＥＳの場合）には、指定期間内の処理を終了し、次の指定期間内の動作を開始する。
【００９０】
図１７は本発明の第２実施形態におけるアービトレーション判定回路２４の第２動作例を示すフローチャートである。即ち、アービトレーション判定回路２４は、第２動作例においては、時間測定カウンタ２９による現在時刻が指定期間終了時に到達したか否かを判定する（ステップＳ１７＿１）。
【００９１】
そして、時間測定カウンタ２９による現在時刻が指定期間終了時に到達していない場合（ステップＳ１７＿１でＮＯの場合）には、アクセス元２１＿１について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（１）｝を「目標転送量保持レジスタ３１＿１の値｛ＴＡ（１）｝×時間測定カウンタ２９の値｛ｔｉｍｅ｝／指定期間保持レジスタ２８の値｛ＴＩＭＥ＿ＭＡＸ｝」なる計算で求め（ステップＳ１７＿２＿１）、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（１）｝＞転送量カウンタ３０＿１の値｛ａｃ（１）｝であるか否かを判定する（ステップＳ１７＿３＿１）。
【００９２】
また、アクセス元２１＿２について、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（２）｝を「目標転送量保持レジスタ３１＿２の値｛ＴＡ（２）｝×時間測定カウンタ２９の値｛ｔｉｍｅ｝／指定期間保持レジスタ２８の値｛ＴＩＭＥ＿ＭＡＸ｝」なる計算で求め（ステップＳ１７＿２＿２）、指定期間の開始時刻から現在時刻までの目標転送量｛ａｃ＿ｔａｒｇｅｔ（２）｝＞転送量カウンタ３０＿２の値｛ａｃ（２）｝であるか否かを判定する（ステップＳ１７＿３＿２）。
【００９３】
そして、ａｃ＿ｔａｒｇｅｔ（１）＞ａｃ（１）（ステップＳ１７＿３＿１でＹＥＳ）、かつ、ａｃ＿ｔａｒｇｅｔ（２）≦ａｃ（２）（ステップＳ１７＿３＿２でＮＯ）の場合には、アクセス元２１＿１のバス権優先度を上げ（ステップＳ１７＿４＿１）、かつ、アクセス元２１＿２のバス権優先度を下げ（ステップＳ１７＿５＿２）、アクセス元２１＿１〜２１＿Ｎに対してバス権優先度に基づきバス権を与え（ステップＳ１７＿６）、ステップＳ１７＿１に戻る。
【００９４】
これに対して、ａｃ＿ｔａｒｇｅｔ（１）≦ａｃ（１）（ステップＳ１７＿３＿１でＮＯ）、かつ、ａｃ＿ｔａｒｇｅｔ（２）＞ａｃ（２）（ステップＳ１７＿３＿２でＹＥＳ）の場合には、アクセス元２１＿１のバス権優先度を下げ（ステップＳ１７＿５＿１）、かつ、アクセス元２１＿２のバス権優先度を上げ（ステップＳ１７＿４＿２）、アクセス元２１＿１〜２１＿Ｎに対してバス権優先度に基づきバス権を与え（ステップＳ１７＿６）、ステップＳ１７＿１に戻る。
【００９５】
また、ａｃ＿ｔａｒｇｅｔ（１）＞ａｃ（１）（ステップＳ１７＿３＿１でＹＥＳ）、かつ、ａｃ＿ｔａｒｇｅｔ（２）＞ａｃ（２）（ステップＳ１７＿３＿２でＹＥＳ）の場合には、アクセス元２１＿１、２１＿２のバス権優先度を上げ（ステップＳ１７＿４＿１、Ｓ１７＿４＿２）、アクセス元２１＿１〜２１＿Ｎに対してバス権優先度に基づきバス権を与え（ステップＳ１７＿６）、ステップＳ１７＿１に戻る。
【００９６】
なお、ステップＳ１７＿６において、バス権優先度が同一の場合には、ラウンドロビン又は固定優先の手法でバス優先権を与える。そして、指定期間が終了した場合（ステップＳ１７＿１でＹＥＳの場合）には、指定期間内の処理を終了し、次の指定期間内の動作を開始する。
【００９７】
本発明の第２実施形態においては、アービトレーション判定回路２４に第１動作例に従った動作を行わせる場合には、アクセス元２１＿１、２１＿２の指定期間内の目標転送量を保障することができ、しかも、アクセス元２１＿１、２１＿２のバスアクセスを拡散し、アクセス元２１＿３〜２１＿Ｎのアクセスレイテンシを向上させ、システム全体の性能向上を図ることができる。
【００９８】
また、本発明の第２実施形態においては、アービトレーション判定回路２４に第２動作例に従った動作を行わせる場合には、アクセス元２１＿１、２１＿２の指定期間内の目標転送量を保障することができ、しかも、アクセス元２１＿１、２１＿２のバスアクセスを拡散し、かつ、アクセス元２１＿３〜２１＿Ｎの転送処理を或る程度まとめて行うことができ、高速化を図ることができる。
【００９９】
なお、本発明の第２実施形態においては、アクセス元２１＿１〜２１＿Ｎのうち、２個のアクセス元２１＿１、２１＿２をフロー制御対象とし、これに対応させて転送量カウンタ３０＿１、３０＿２、目標転送量保持レジスタ３１＿１、３１＿２及び転送完了／未完了判定・通知回路３２＿１、３２＿２を設けた場合について説明したが、更に、アクセス元２１＿３〜２１＿Ｎの一部又は全部をフロー制御対象とし、これらに転送量カウンタ、目標転送量保持レジスタ、転送完了／未完了判定・通知回路を設けるようにしても良い。
【図面の簡単な説明】
【０１００】
【図１】本発明の第１実施形態の構成図である。
【図２】本発明の第１実施形態が備える転送量カウンタの動作を説明するための図である。
【図３】本発明の第１実施形態における時間測定カウンタ及び転送量カウンタの動作を示すフローチャートである。
【図４】本発明の第１実施形態におけるアービトレーション判定回路の第１動作例を示すフローチャートである。
【図５】本発明の第１実施形態が備えるアービトレーション判定回路が第１動作例に従って動作した場合の本発明の第１実施形態における転送例を従来方式による場合と比較して示すタイムチャートである。
【図６】本発明の第１実施形態の第１具体例の構成図である。
【図７】本発明の第１実施形態の第１具体例が備えるＣＰＵの動作を示すフローチャートである。
【図８】本発明の第１実施形態の第１具体例が備えるアービトレーション判定回路が第１動作例に従って動作した場合の本発明の第１実施形態の第１具体例における転送例を従来方式による場合と比較して示すタイムチャートである。
【図９】本発明の第１実施形態の第１具体例が備えるアービトレーション判定回路が第１動作例に従って動作した場合の本発明の第１実施形態の第１具体例における指定期間内の時間とＤＭＡＣの累積転送量との関係を示す図である。
【図１０】本発明の第１実施形態の第２具体例の構成図である。
【図１１】本発明の第１実施形態の第２具体例が備える転送完了／未完了判定・通知回路の動作を説明するための図である。
【図１２】本発明の第１実施形態におけるアービトレーション判定回路の第２動作例を示すフローチャートである。
【図１３】本発明の第１実施形態が備えるアービトレーション判定回路が第２動作例に従って動作した場合の本発明の第１実施形態における転送例を従来方式による場合と比較して示すタイムチャートである。
【図１４】本発明の第２実施形態の構成図である。
【図１５】本発明の第２実施形態における時間測定カウンタ及び転送量カウンタの動作を示すフローチャートである。
【図１６】本発明の第２実施形態におけるアービトレーション判定回路の第１動作例を示すフローチャートである。
【図１７】本発明の第２実施形態におけるアービトレーション判定回路の第２動作例を示すフローチャートである。
【図１８】従来の情報処理装置の一例の構成図である。
【図１９】図１８に示す従来の情報処理装置における転送例を示すタイムチャートである。
【図２０】ＳＤＲＡＭの一例を示す図である。
【図２１】図２０に示すＳＤＲＡＭへのアクセス例を示す図である。
【符号の説明】
【０１０１】
１＿１、１＿２、１＿Ｎ…アクセス元
２＿１、２＿ｎ…アクセス先
３…バス
４…アービトレーション判定回路
５…バス権要求信号線
６…バス権返送信号線
１０…ＳＤＲＡＭ本体
１１〜１４…バンク
１５〜１７…メモリセル
２１＿１、２１＿２、２１＿Ｎ…アクセス元
２２＿１、２２＿ｎ…アクセス先
２３…バス
２４…アービトレーション判定回路
２５…バス権要求信号線
２６…バス権返送信号線
２７…指定期間保持レジスタ・時間測定カウンタ部
２８…指定期間保持レジスタ
２９…時間測定カウンタ
３０＿１、３０＿２…転送量カウンタ
３１＿１、３１＿２…目標転送量保持レジスタ
３２＿１、３２＿２…転送完了／未完了判定・通知回路
４１＿１…ＣＰＵ
４１＿２…ＤＭＡＣ
４２＿１…ＳＤＲＡＭ
４２＿２…ＶＧＡデバイス
【図１】
2007323473.tif 000004
【図２】
2007323473.tif 000005
【図３】
2007323473.tif 000006
【図４】
2007323473.tif 000007
【図５】
2007323473.tif 000008
【図６】
2007323473.tif 000009
【図７】
2007323473.tif 000010
【図８】
2007323473.tif 000011
【図９】
2007323473.tif 000012
【図１０】
2007323473.tif 000013
【図１１】
2007323473.tif 000014
【図１２】
2007323473.tif 000015
【図１３】
2007323473.tif 000016
【図１４】
2007323473.tif 000017
【図１５】
2007323473.tif 000018
【図１６】
2007323473.tif 000019
【図１７】
2007323473.tif 000020
【図１８】
2007323473.tif 000021
【図１９】
2007323473.tif 000022
【図２０】
2007323473.tif 000023
【図２１】
2007323473.tif 000024