JP2007164388A - バス調停方法及び装置及びプログラム - Google Patents

バス調停方法及び装置及びプログラム Download PDF

Info

Publication number
JP2007164388A
JP2007164388A JP2005358407A JP2005358407A JP2007164388A JP 2007164388 A JP2007164388 A JP 2007164388A JP 2005358407 A JP2005358407 A JP 2005358407A JP 2005358407 A JP2005358407 A JP 2005358407A JP 2007164388 A JP2007164388 A JP 2007164388A
Authority
JP
Japan
Prior art keywords
data length
ratio
time
long
master
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005358407A
Other languages
English (en)
Other versions
JP4468885B2 (ja
Inventor
Tomoharu Muro
知治 室
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005358407A priority Critical patent/JP4468885B2/ja
Publication of JP2007164388A publication Critical patent/JP2007164388A/ja
Application granted granted Critical
Publication of JP4468885B2 publication Critical patent/JP4468885B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】1シーケンスの開始から完了の時間を短縮することができ、1シーケンスの結果を利用する次の処理を早く行うことができるようにすること。
【解決手段】長時間比率計算手段15、16、17で長時間のデータ長から前記各マスタデバイスの長時間の転送データ長の比率を求め、短時間比率計算手段25、26、27で短時間のデータ長から各マスタデバイスの短時間の転送データ長の比率を求め、優先順位決定手段34で前記マスタデバイスの長時間の転送データ長の比率と前記短時間の転送データ長の比率の差分又は前記短時間の転送データ長の比率と前記長時間の転送データ長の比率の割算が大きいマスタデバイスに共通バスの使用権を付与する。
【選択図】図2

Description

本発明は、高速なデータ転送を必要とし、ホストからのアクセスに長期的な傾向のあるストレージシステム内等のデータ転送を効率的に行うことができるバス調停方法及び装置及びプログラムに関する。
より具体的には、ストレージシステム内において複数(3つ以上)のマスタデバイス(装置)が接続される共通バスの調停回路を、システムとして最適となるよう動的に調整する方法及び装置に関する。
従来のストレージシステムの例を説明する。図5はホスト書き込み例の説明図である。図5において、インターフェイスモジュール40がホストとディスクコントロールモジュール50と接続されている。ディスクコントロールモジュール50は複数のディスク(装置)51、52、53と接続されている。インターフェイスモジュール40には、インターフェイス41、MPU(マイクロプロセッサユニット)42、メモリコントローラ43、データバッファ44が設けてある。
インターフェイスモジュール40は、ホストとディスクコントロールモジュール50間のインターフェイス処理を行うものである。ディスクコントロールモジュール50は、複数のディスク51、52、53の制御を行うものである。ディスク51、52、53は、情報を格納するディスク装置である。インターフェイス41は、ホストと接続してインターフェイス処理を行うIF−LSI(インターフェイス集積回路)であり、共通バスと接続されるものである。MPU42は、インターフェイスモジュール40全体の制御を行うものであり、共通バスと接続されるものである。メモリコントローラ43は、MC−LSI(メモリコントローラ集積回路)であり、共通バスとディスクコントロールモジュール50に接続されるものである。データバッファ44は、バッファ処理を行うものであり、メモリコントローラ43と接続される。
(1):書き込み動作の説明
ホストからのライトが行われた場合のストレージシステムにおける一連の処理を図5の(1) 〜(8) に従って説明する。
(1) ホストからの書き込みデータを、インターフェイス41と共通バスとメモリコントローラ43を通してデータバッファ44に転送する。
(2) ホストからのライトコマンドを、インターフェイス41と共通バスを通してMPU42に通知する。
(3) MPU42は、共通バスを通してメモリコントローラ43に書き込みDMA(直接メモリアクセス)の起動指示を行う。
(4) メモリコントローラ43は、共通バスを通してMPU42から書き込みDMA用の記述子を読み出す。なお、記述子とは転送用の情報であり、例えば、転送長、どこからどこへのアドレス(ソースアドレス、デスティネーションアドレス)等である。
(5) メモリコントローラ43は、データバッファ44からディスクコントロールモジュール50にDMAによるデータ転送を行う。
(6) メモリコントローラ43は、共通バスを通してMPU42に書き込みDMAの終了を通知する。
(7) MPU42は、共通バスを通してインターフェイス41に書き込みの完了通知(完了通知DMA)の起動指示を行う。
(8) インターフェイス41は、書き込みの完了(完了通知DMA)によるホストへの通知を行う。
(2):読み出し動作の説明
図6はホスト読み出し例の説明図である。以下、ホストからのリードが行われた場合のストレージシステムにおける一連の処理を図6の(1) 〜(7) に従って説明する。
(1) ホストからリードコマンドを、インターフェイス41と共通バスを通してMPU42に通知する。
(2) MPU42は、共通バスを通してメモリコントローラ43に読み出しDMAの起動指示を行う。
(3) メモリコントローラ43は、共通バスを通してMPU42からDMA用の記述子を読み出す。
(4) メモリコントローラ43は、ディスクコントロールモジュール50から読み出しDMAによるデータ転送を行う。
(5) メモリコントローラ43は、共通バスを通してMPU42に読み出しDMAの終了を通知する。
(6) MPU42は、共通バスを通してインターフェイス41に読み出しの完了(返送DMA)の起動指示を行う。
(7) インターフェイス41は、読み出し完了(返送DMA)によるホストへの通知を行う。
図5と図6の動作は、それぞれ単独に命令が発生した場合の動作であるが、ストレージシステムでは複数のライト、リードを同時に処理することができる。コンピュータシステム、特に高速なデータ転送を必要とするストレージシステムにおいては、一連の流れ全体で効率の良いことが重要である。特定の処理のみが速くても、その他に著しく遅い処理があると全体としての処理効率は低下する。このように全体の処理効率を低下させる処理をシステムのボトルネックと呼び、これを改善することが全体の処理効率向上のために大切となる。
上記図5と図6において、インターフェイス(IF−LSI)41とMPU42とメモリコントローラ(MC−LSI)43の3つのマスタデバイスに接続される共通バスで行われる転送の、転送元デバイス、転送先デバイス、転送長は多様である。さらにホスト側のユーザーシステムの目的、運用形態によって転送長、頻度の特徴が異なる。特に図5の(1) ホストからの書き込みデータ転送、図6の(7) 返送DMAホストへのデータ転送の転送長に特徴が表れる。
例えば、共通バスに接続するマスタデバイスの2つ以上が同時にバス使用権を要求した時にこれを調停し、バス使用権を与える回路をアービタ(調停回路)と呼ぶ。このアービタは、マスタデバイスとは独立して共通バスに接続して設けられるか、または、マスタデバイスのいずれか一つに内蔵して設ける場合もある。この調停の方式には様々あるが、特定のマスタデバイスが長時間バス使用権を取得できない状況が生じないようにと配慮されたラウンドロビンと呼ばれる方式がよく用いられる。図7、図8に3つのマスタデバイスA〜Cに対するラウンドロビン方式調停の概念図を示している。
図7はラウンドロビン方式調停の説明図(1)である。図7において、左側のマスタデバイスA〜Cは、現在のバス使用権の許諾(Current GRANT )デバイスを示しており、上段のマスタデバイスA〜Cは、次のバス使用権の許諾(Next GRANT)デバイスを示している。例えば、現在マスタデバイスAがバス使用権を持っていれば、次のバス使用権の優先順位は、マスタデバイスBが1位で、マスタデバイスCが2位で、マスタデバイスAが3位となることを示している。現在マスタデバイスBがバス使用権を持っていれば、次のバス使用権の優先順位は、マスタデバイスCが1位で、マスタデバイスAが2位で、マスタデバイスBが3位となることを示している。また、現在マスタデバイスCがバス使用権を持っていれば、次のバス使用権の優先順位は、マスタデバイスAが1位で、マスタデバイスBが2位で、マスタデバイスCが3位となることを示している。
図8はラウンドロビン方式調停の説明図(2)である。図8において、丸の中のマスタデバイスA〜Cは、現在のバス使用権の許諾(Current GRANT )デバイスを示している。丸数字は優先順位を示している。例えば、現在マスタデバイスAがバス使用権を持っていれば、次のバス使用権の優先順位は、マスタデバイスCが1位で、マスタデバイスBが2位で、マスタデバイスAが3位となることを示している。
このように、ラウンドロビン方式は、同時に複数のマスタデバイスからバス使用権の要求がある場合に循環的にバス使用権を割り振っていく方式であるが、ある程度転送パターンの一定したバスに対しては効率が悪い。
また、従来例として、短期仲裁パラメータと長期仲裁パラメータを出力する仲裁パラメータ発生回路があった(特許文献1参照)。
さらに、転送特性テーブルを参照してバス調停を行うもので、この転送特性テーブルは、バスエージェント31〜36のうち何れかをマスタとし他の何れかをスレーブとして、これらマスタとスレーブとの間のトランザクション種類毎のデータ転送性能特性値を記憶するバス調停装置があった(特許文献2参照)。
特開2004−133946号公報 特開2000−250852号公報
前記従来のものは次のような課題があった。
ラウンドロビン方式は、同時に複数のマスタデバイスからバス使用権の要求がある場合に循環的にバス使用権を割り振っていく方式であるが、ある程度転送パターンの一定したバスに対しては効率が悪いものであった。
また、従来の短期仲裁パラメータと長期仲裁パラメータを出力する仲裁パラメータ発生回路には、それぞれのマスタデバイスによる過去のデータ長を記録し、短時間記録の傾向(データ長の比率)が長時間記録の傾向(データ長の比率)に追従するように、バス権割り振りの優先順位を決定して、負荷の変動に対して自律的に最適化できるものではなかった。
さらに、従来の転送特性テーブルを参照してバス調停装置では、マスタだけでなくスレーブも特定してトランザクションに要する時間を予測して、バス調停を行っていますが、それぞれのマスタデバイスによる過去のデータ長を記録し、短時間記録の傾向が長時間記録の傾向に追従するように、バス権割り振りの優先順位を決定して、負荷の変動に対して自律的に最適化できるものではなかった。
本発明は、このような従来の課題を解決し、共通バス上の転送を監視する機能を持ち、それぞれのマスタデバイスによる過去のデータ長を記録し、短時間記録の傾向(データ長の比率)が長時間記録の傾向(データ長の比率)に追従するように、バス権割り振りの優先順位を決定することで、1シーケンスの開始から完了までの時間を短縮できるようにすることを目的とする。
図2は本発明の調停回路の説明図である。図2中、調停回路(アービタ)には、10は転送監視部(手段)、11はマスタAの長時間データ長記録部(手段)、12はマスタBの長時間データ長記録部(手段)、13はマスタCの長時間データ長記録部(手段)、14は合計長時間データ長記録部(手段)、15はマスタAの長時間比率計算部(手段)、16はマスタBの長時間比率計算部(手段)、17はマスタCの長時間比率計算部(手段)、21はマスタAの短時間データ長記録部(手段)、22はマスタBの短時間データ長記録部(手段)、23はマスタCの短時間データ長記録部(手段)、24は合計短時間データ長記録部(手段)、25はマスタAの短時間比率計算部(手段)、26はマスタBの短時間比率計算部(手段)、27はマスタCの短時間比率計算部(手段)、31はマスタAの差分計算部(手段)、32はマスタBの差分計算部(手段)、33はマスタCの差分計算部(手段)、34は優先順位決定部(手段)である。
本発明は、上記の課題を解決するため次のように構成した。
(1):長時間データ長記録手段11、12、13で共通バスに接続してデータ転送を行う複数のマスタデバイスのそれぞれの過去から現在までの所定の長時間の転送データ長を記録し、長時間比率計算手段15、16、17で前記長時間のデータ長から前記各マスタデバイスの長時間の転送データ長の比率を求め、短時間データ長記録手段21、22、23で前記複数のマスタデバイスのそれぞれの過去から現在までの前記長時間よりは短い所定の短時間の転送データ長を記録し、短時間比率計算手段25、26、27で前記短時間のデータ長から前記各マスタデバイスの短時間の転送データ長の比率を求め、優先順位決定手段34で前記マスタデバイスの長時間の転送データ長の比率と前記短時間の転送データ長の比率の差分又は前記短時間の転送データ長の比率と前記長時間の転送データ長の比率の割算が大きいマスタデバイスに前記共通バスの使用権を付与する。このため、複数のシーケンスが多重に発生する場合に、1シーケンスの開始から完了の時間を短縮することができ、1シーケンスの結果を利用する次の処理を早く行うことができる。
(2):前記(1)バス調停方法及び装置において、前記長時間データ長記録手段と長時間比率計算手段を用いて長時間の転送データ長の比率を求める代わりに、予め定めた一定値を用いる。このため、長時間データ長記録手段11、12、13と長時間比率計算手段15、16、17を省くことができる。
(3):前記(1)バス調停方法及び装置において、前記マスタデバイスの長時間の転送データ長の比率と前記短時間の転送データ長の比率の差分が大きい又は前記短時間の転送データ長の比率と前記長時間の転送データ長の比率の割算が大きい同じマスタデバイスがある場合、ラウンドロビン方式調停を用いる。このため、前記比率の差分又は割算が同じ値のマスタデバイスがあっても容易に調停を行うことができる。
本発明によれば次のような効果がある。
(1):優先順位決定手段でマスタデバイスの長時間の転送データ長の比率と短時間の転送データ長の比率の差分又は短時間の転送データ長の比率と長時間の転送データ長の比率の割算が大きいマスタデバイスに共通バスの使用権を付与するため、複数のシーケンスが多重に発生する場合に、1シーケンスの開始から完了の時間を短縮することができ、1シーケンスの結果を利用する次の処理を早く行うことができる。
(2):長時間データ長記録手段と長時間比率計算手段を用いて長時間の転送データ長の比率を求める代わりに、予め定めた一定値を用いるため、長時間データ長記録手段と長時間比率計算手段を省くことができる。
(3):マスタデバイスの長時間の転送データ長の比率と短時間の転送データ長の比率の差分が大きい又は短時間の転送データ長の比率と長時間の転送データ長の比率の割算が大きい同じマスタデバイスがある場合、ラウンドロビン方式調停を用いるため、前記比率の差分又は割算が同じ値のマスタデバイスがあっても容易に調停を行うことができる。
本発明の調停回路(アービタ)は、共通バス上の転送を監視する機能を持ち、定められた長時間の過去から現在までのそれぞれのマスタデバイスによる転送の種類とデータ長を記録し更新する機能と、定められた短時間の過去から現在までのそれぞれのマスタデバイスによる転送の種類とデータ長を記録し更新する機能とを備える。
そして、アービタは、上記の短時間記録の傾向(データ長の比率)が長時間記録の傾向(データ長の比率)に追従するように、バス権割り振りの優先順位を決定する。
なお、このアービタは、低優先順位のマスタデバイスがバスを使用中に、高優先順位のマスタデバイスがバス使用権を要求した時、バス権を切り替えることができる。また、このアービタは、特定のマスタデバイスが長時間バス権を取得できない状況が生じないように、長時間記録の傾向(データ長の比率)が極端に低いマスタデバイスに対してバス権割り振りの優先順位を上げることができる。
(1):共通バスに3つのデバイスを接続する場合の説明
図1は本発明の共通バスに3つのデバイスを接続する場合の説明図である。図1において、共通バスには、マスタA(マスタデバイス1)、マスタB(マスタデバイス2)、マスタC(マスタデバイス3)、アービタ(調停回路)4が接続されている。共通バスは、複数のデバイス(マスタ)間のデータ経路を接続するものである。マスタAは、共通バスに接続されるマスタデバイス1(図5ではインターフェイス41)である。マスタBは、共通バスに接続されるマスタデバイス2(図5ではMPU42)である。マスタCは、共通バスに接続されるマスタデバイス3(図5ではメモリコントローラ43)である。調停回路4は、共通バスに接続するマスタデバイス(A〜C)の2つ以上が同時にバス使用権を要求した時に、これを調停し、バス使用権を与える調停装置である。この調停回路4は、マスタデバイスとは独立して共通バスに接続しているが、マスタデバイス(1〜3)のいずれか一つが調停機能を内蔵(内包)することもできる。
(2):調停回路の説明
図2は調停回路の説明図である。図2において、調停回路(アービタ)4には、転送監視部10、マスタAの長時間データ長記録部11、マスタBの長時間データ長記録部12、マスタCの長時間データ長記録部13、合計長時間データ長記録部14、マスタAの長時間比率計算部15、マスタBの長時間比率計算部16、マスタCの長時間比率計算部17、マスタAの短時間データ長記録部21、マスタBの短時間データ長記録部22、マスタCの短時間データ長記録部23、合計短時間データ長記録部24、マスタAの短時間比率計算部25、マスタBの短時間比率計算部26、マスタCの短時間比率計算部27、マスタAの差分計算部31、マスタBの差分計算部32、マスタCの差分計算部33、優先順位決定部34が設けてある。
転送監視部10は、マスタA〜Cが接続されている共通バスのデータ転送の監視を行う監視手段である。マスタAの長時間データ長記録部11は、マスタAの所定の長時間(例えば、1万サイクル)のデータ長(過去1万サイクル内の転送データ長)を記録する長時間データ長記録手段である。マスタBの長時間データ長記録部12は、マスタBの所定の長時間(例えば、1万サイクル)のデータ長を記録する長時間データ長記録手段である。マスタCの長時間データ長記録部13は、マスタCの所定の長時間(例えば、1万サイクル)のデータ長を記録する長時間データ長記録手段である。合計長時間データ長記録部14は、マスタA〜Cの所定の合計長時間(例えば、1万サイクル)のデータ長を記録する合計長時間データ長記録手段である。
マスタAの長時間比率計算部15は、マスタAの長時間データ長記録を合計長時間データ長記録で割った値を計算するものである。マスタBの長時間比率計算部16は、マスタBの長時間データ長記録を合計長時間データ長記録で割った値を計算するものである。マスタCの長時間比率計算部17は、マスタCの長時間データ長記録を合計長時間データ長記録で割った値を計算するものである。
マスタAの短時間データ長記録部21は、マスタAの所定の短時間(例えば、40サイクル)のデータ長(過去40サイクル内の転送データ長)を記録する短時間データ長記録手段である。マスタBの短時間データ長記録部22は、マスタBの所定の短時間(例えば、40サイクル)のデータ長を記録する短時間データ長記録手段である。マスタCの短時間データ長記録部23は、マスタCの所定の短時間(例えば、40サイクル)のデータ長を記録する短時間データ長記録手段である。合計短時間データ長記録部24は、マスタA〜Cの所定の合計短時間(例えば、40サイクル)のデータ長を記録する合計短時間データ長記録手段である。
マスタAの短時間比率計算部25は、マスタAの短時間データ長記録を合計短時間データ長記録で割った値を計算するものである。マスタBの短時間比率計算部26は、マスタBの短時間データ長記録を合計短時間データ長記録で割った値を計算するものである。マスタCの短時間比率計算部27は、マスタCの短時間データ長記録を合計短時間データ長記録で割った値を計算するものである。
マスタAの差分計算部31は、マスタAの長時間比率からマスタAの短時間比率を引いた値を計算するものである。マスタBの差分計算部32は、マスタBの長時間比率からマスタBの短時間比率を引いた値を計算するものである。マスタCの差分計算部33は、マスタCの長時間比率からマスタCの短時間比率を引いた値を計算するものである。優先順位決定部34は、マスタA〜Cの差分計算部31〜33の中で計算した値の大きいマスタにバス使用権を与えるものである。ここで、この優先順位決定部34に差分計算部31〜33を含めることもできる。
なお、上記優先順位決定部34で、差分計算部の中で計算した値の大きいマスタにバス使用権を与える説明をしたが、上記説明とは差分の順を逆に(短時間比率−長時間比率)し、優先順位決定部で、差分計算部の中で計算した値の小さいマスタにバス使用権を与えるようにすることもできる。
また、上記差分の代わりに、割算(長時間比率/短時間比率又は短時間比率/長時間比率)を用いることもできる。この場合、長時間比率/短時間比率ではこの値が大きいマスタにバス使用権を与え、短時間比率/長時間比率ではこの値が小さいマスタにバス使用権を与えることになる。
さらに、長時間データ長記録部が記録する予め定めた一定(所定)の長時間と短時間データ長記録部が記録する予め定めた一定(所定)の短時間は、システムの傾向により変化するものである。
(動作の説明)
マスタAの長時間データ長記録部11とマスタBの長時間データ長記録部12とマスタCの長時間データ長記録部13で、記録した長時間データ長がそれぞれ、a1、b1、c1とする。そして、マスタAの短時間データ長記録部21とマスタBの短時間データ長記録部22とマスタCの短時間データ長記録部23で、記録した長時間データ長がそれぞれa2、b2、c2とする。
合計長時間データ長記録部14の値は、「a1+b1+c1」となり、合計短時間データ長記録部24の値は、「a2+b2+c2」となる。このため、マスタAの長時間比率計算部15の計算結果は、「a1/(a1+b1+c1)」となり、マスタBの長時間比率計算部16の計算結果は、「b1/(a1+b1+c1)」となり、マスタCの長時間比率計算部17の計算結果は、「c1/(a1+b1+c1)」となる。
マスタAの短時間比率計算部25の計算結果は、「a2/(a2+b2+c2)」となり、マスタBの短時間比率計算部26の計算結果は、「b2/(a2+b2+c2)」となり、マスタCの短時間比率計算部27の計算結果は、「c2/(a2+b2+c2)」となる。
マスタAの差分計算部31の計算結果は、「a1/(a1+b1+c1)−a2/(a2+b2+c2)」となり、マスタBの差分計算部32の計算結果は、「b1/(a1+b1+c1)−b2/(a2+b2+c2)」となり、マスタCの差分計算部33の計算結果は、「c1/(a1+b1+c1)−c2/(a2+b2+c2)」となる。これらの差分計算部31〜33の計算結果が一番大きいマスタに優先順位決定部34がバス使用権を与えることになる。なお、差分計算部31〜33の計算結果が同じ値のマスタが有る場合は、従来のラウンドロビン方式を用いてバス使用権を割り振ることができる。
(3):調停回路の具体的動作の説明
本発明では、共通バスに接続される複数デバイス間にあって、デバイス別に異なる転送回数、異なる転送長による一連した転送からなるシーケンスが多重に発生する場合に、1シーケンスの開始から完了時間までの時間を短縮できる。ここで「シーケンスが多重に発生する」とは、1つのシーケンスの完了を待たずに別のシーケンスを開始することを意味する。
図3は4多重シーケンスの場合の説明図(1)、図4は4多重シーケンスの場合の説明図(2)である。以下、図3、図4に従って、4多重シーケンスの場合の説明をする。
マスタA、マスタB、マスタCの3つのデバイスが共通バスに接続された系にあって、以下の転送を順に行うことが1つのシーケンスであるとする。
マスタAによる10cyc (サイクル)の転送。
→ マスタBによる1cycの転送×4回。
→ マスタCによる2cycの転送。
→ マスタBによる1cycの転送×2回。
→ マスタCによる2cycの転送。
次にシーケンスが多重に発生する場合を考える。各マスタデバイス(A〜C)は、内部にキューバッファを持ち、処理すべき命令を保存し、FIFO(first-in first-out)式に順次処理するものとする。図3、図4の上段はラウンドロビンを使った4多重シーケンス例に、従来の単純なラウンドロビンによるアービトレーションを用いた場合を図示する。ここで1シーケンス(1st)〜4シーケンス(4th)が多重に発生する場合であり、それぞれ同じシーケンスの場合は同じ網かけで示してある。この手法を用いた場合、1シーケンス(1st)の終了時間(1st-end)は98サイクルとなる(図4の上段の数字参照)ため、1シーケンスの開始−完了時間が長い。これはマスタAが転送回数は少ないが、データ転送長が長いことに起因している。4多重シーケンスの例を示したが、さらに多重度を上げるとこの傾向は強くなる。
図3、図4の下段は4多重シーケンスの例に、本発明によるアービトレーションを用いた場合を図示している。これは、適当な「短時間」を設定し、短時間データ比率が長時間データ比率に追従するようにアービトレーションすることで、1シーケンスの開始−完了時間が改善できる。すなわち、複数のマスタからバス使用権の要求がある場合に、「長時間比率−短時間比率」の大きいマスタにバス使用権を与えている(なお、バスを同じマスタが使うほど短時間比率が増加するため「長時間比率−短時間比率」の値が減少することになる)。これにより、最初のシーケンスの終了(1st-end)が74サイクルと早くなる(図4の上段の数字参照)ため、このシーケンスの結果を利用する必要が有る次の処理を早く始めることができる。
なお、長時間比率の時間は、短時間比率の時間より相当長く設定するため、一定として、設定値を用いることも可能である。この場合は長時間比率を計算する回路が不要となる。
(4):プログラムインストールの説明
転送監視部(手段)10、マスタAの長時間データ長記録部(手段)11、マスタBの長時間データ長記録部(手段)12、マスタCの長時間データ長記録部(手段)13、合計長時間データ長記録部(手段)14、マスタAの長時間比率計算部(手段)15、マスタBの長時間比率計算部(手段)16、マスタCの長時間比率計算部(手段)17、マスタAの短時間データ長記録部(手段)21、マスタBの短時間データ長記録部(手段)22、マスタCの短時間データ長記録部(手段)23、合計短時間データ長記録部(手段)24、マスタAの短時間比率計算部(手段)25、マスタBの短時間比率計算部(手段)26、マスタCの短時間比率計算部(手段)27、マスタAの差分計算部(手段)31、マスタBの差分計算部(手段)32、マスタCの差分計算部(手段)33、優先順位決定部(手段)34等はプログラムで構成でき、主制御部(CPU)が実行するものであり、主記憶に格納されているものである。このプログラムは、コンピュータで処理されるものである。このコンピュータは、主制御部、主記憶、ファイル装置、表示装置等の出力装置、入力装置などのハードウェアで構成されている。
このコンピュータに、本発明のプログラムをインストールする。このインストールは、フロッピィ、光磁気ディスク等の可搬型の記録(記憶)媒体に、これらのプログラムを記憶させておき、コンピュータが備えている記録媒体に対して、アクセスするためのドライブ装置を介して、或いは、LAN等のネットワークを介して、コンピュータに設けられたファイル装置にインストールされる。
これにより、複数のシーケンスが多重に発生する場合に、1シーケンスの開始から完了の時間を短縮することができるバス調停装置を容易に提供することができる。
本発明の共通バスに3つのデバイスを接続する場合の説明図である。 本発明の調停回路の説明図である。 本発明の4多重シーケンスの場合の説明図(1)である。 本発明の4多重シーケンスの場合の説明図(2)である。 従来のホスト書き込み例の説明図である。 従来のホスト読み出し例の説明図である。 従来のラウンドロビン方式調停の説明図(1)である。 従来のラウンドロビン方式調停の説明図(2)である。
符号の説明
10 転送監視部(手段)
11 マスタAの長時間データ長記録部(手段)
12 マスタBの長時間データ長記録部(手段)
13 マスタCの長時間データ長記録部(手段)
14 合計長時間データ長記録部(手段)
15 マスタAの長時間比率計算部(手段)
16 マスタBの長時間比率計算部(手段)
17 マスタCの長時間比率計算部(手段)
21 マスタAの短時間データ長記録部(手段)
22 マスタBの短時間データ長記録部(手段)
23 マスタCの短時間データ長記録部(手段)
24 合計短時間データ長記録部(手段)
25 マスタAの短時間比率計算部(手段)
26 マスタBの短時間比率計算部(手段)
27 マスタCの短時間比率計算部(手段)
31 マスタAの差分計算部(手段)
32 マスタBの差分計算部(手段)
33 マスタCの差分計算部(手段)
34 優先順位決定部(手段)

Claims (5)

  1. 長時間データ長記録手段で、共通バスに接続してデータ転送を行う複数のマスタデバイスのそれぞれの過去から現在までの所定の長時間の転送データ長を記録し、
    長時間比率計算手段で、前記長時間のデータ長から前記各マスタデバイスの長時間の転送データ長の比率を求め、
    短時間データ長記録手段で、前記複数のマスタデバイスのそれぞれの過去から現在までの前記長時間よりは短い所定の短時間の転送データ長を記録し、
    短時間比率計算手段で、前記短時間のデータ長から前記各マスタデバイスの短時間の転送データ長の比率を求め、
    優先順位決定手段で、前記マスタデバイスの長時間の転送データ長の比率と前記短時間の転送データ長の比率の差分又は前記短時間の転送データ長の比率と前記長時間の転送データ長の比率の割算が大きいマスタデバイスに前記共通バスの使用権を付与することを特徴としたバス調停方法。
  2. 共通バスに接続してデータ転送を行う複数のマスタデバイスのそれぞれの過去から現在までの所定の長時間の転送データ長を記録する長時間データ長記録手段と、
    前記長時間のデータ長から前記各マスタデバイスの長時間の転送データ長の比率を求める長時間比率計算手段と、
    前記複数のマスタデバイスのそれぞれの過去から現在までの前記長時間よりは短い所定の短時間の転送データ長を記録する短時間データ長記録手段と、
    前記短時間のデータ長から前記各マスタデバイスの短時間の転送データ長の比率を求める短時間比率計算手段と、
    前記マスタデバイスの長時間の転送データ長の比率と前記短時間の転送データ長の比率の差分又は前記短時間の転送データ長の比率と前記長時間の転送データ長の比率の割算が大きいマスタデバイスに前記共通バスの使用権を付与する優先順位決定手段とを備えることを特徴としたバス調停装置。
  3. 前記長時間データ長記録手段と長時間比率計算手段を用いて長時間の転送データ長の比率を求める代わりに、予め定めた一定値を用いることを特徴とした請求項2記載のバス調停装置。
  4. 前記マスタデバイスの長時間の転送データ長の比率と前記短時間の転送データ長の比率の差分又は前記短時間の転送データ長の比率と前記長時間の転送データ長の比率の割算が大きい同じマスタデバイスがある場合、ラウンドロビン方式調停を用いることを特徴としたバス調停装置。
  5. 共通バスに接続してデータ転送を行う複数のマスタデバイスのそれぞれの過去から現在までの所定の長時間の転送データ長を記録する長時間データ長記録手段と、
    前記長時間のデータ長から前記各マスタデバイスの長時間の転送データ長の比率を求める長時間比率計算手段と、
    前記複数のマスタデバイスのそれぞれの過去から現在までの前記長時間よりは短い所定の短時間の転送データ長を記録する短時間データ長記録手段と、
    前記短時間のデータ長から前記各マスタデバイスの短時間の転送データ長の比率を求める短時間比率計算手段と、
    前記マスタデバイスの長時間の転送データ長の比率と前記短時間の転送データ長の比率の差分又は前記短時間の転送データ長の比率と前記長時間の転送データ長の比率の割算が大きいマスタデバイスに前記共通バスの使用権を付与する優先順位決定手段として、
    コンピュータを機能させるためのプログラム。
JP2005358407A 2005-12-13 2005-12-13 バス調停方法及び装置及びプログラム Expired - Fee Related JP4468885B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005358407A JP4468885B2 (ja) 2005-12-13 2005-12-13 バス調停方法及び装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005358407A JP4468885B2 (ja) 2005-12-13 2005-12-13 バス調停方法及び装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2007164388A true JP2007164388A (ja) 2007-06-28
JP4468885B2 JP4468885B2 (ja) 2010-05-26

Family

ID=38247219

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005358407A Expired - Fee Related JP4468885B2 (ja) 2005-12-13 2005-12-13 バス調停方法及び装置及びプログラム

Country Status (1)

Country Link
JP (1) JP4468885B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009512A (ja) * 2007-06-29 2009-01-15 Nec Electronics Corp バスシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009512A (ja) * 2007-06-29 2009-01-15 Nec Electronics Corp バスシステム

Also Published As

Publication number Publication date
JP4468885B2 (ja) 2010-05-26

Similar Documents

Publication Publication Date Title
US7032046B2 (en) Resource management device for managing access from bus masters to shared resources
KR100932359B1 (ko) 고주파수 중재자를 통해 사이클마다 복수의 버스 중재를수행하는 스위치 매트릭스 시스템
JP6072783B2 (ja) メモリコントローラおよびかかるメモリコントローラの動作方法
EP2430554B1 (en) Hierarchical memory arbitration technique for disparate sources
US6393506B1 (en) Virtual channel bus and system architecture
US6662253B1 (en) Shared peripheral architecture
JP4715801B2 (ja) メモリアクセス制御装置
KR20150017526A (ko) 메모리 명령 스케줄러 및 메모리 명령 스케줄링 방법
KR20120029366A (ko) 트래픽 클래스들과 관련된 포트들을 갖는 다중 포트 메모리 제어기
US20070239888A1 (en) Controlling transmission of data
JPH09258907A (ja) 複数の記憶ディスク部を有した高可用性の外部記憶装置
TW202141291A (zh) 分級頻寬分配匯流排仲裁器
US9817583B2 (en) Storage system and method for allocating virtual volumes based on access frequency
Jo et al. Dynamic load balancing of dispatch scheduling for solid state disks
JP5911548B1 (ja) 共有メモリへのアクセス要求をスケジューリングするための装置、方法およびコンピュータプログラム
JP4468885B2 (ja) バス調停方法及び装置及びプログラム
US20060218313A1 (en) DMA circuit and computer system
JP2012128627A (ja) データ転送システム
JP5058116B2 (ja) ストリーミングidメソッドによるdmac発行メカニズム
US7003637B2 (en) Disk array device with utilization of a dual-bus architecture dependent on data length of cache access requests
KR102190688B1 (ko) 관련된 응용들에 상호 참조하는 적응적 컨텍스트 스위칭을 수행하는 방법 및 시스템
US9367491B2 (en) Method and apparatus for on-the-fly learning traffic control scheme
JP2012084123A (ja) メモリ制御装置、メモリ制御方法
KR20090128851A (ko) 버스 중재 방법 및 장치
JP2009059276A (ja) 情報処理装置およびプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100115

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100115

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100115

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100223

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100225

R150 Certificate of patent or registration of utility model

Ref document number: 4468885

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140305

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees