(57)【特許請求の範囲】
【請求項１】
記憶手段と、該記憶手段にアクセスして、データの読出しや書き込みを行う複数のプロセッサと、複数の前記プロセッサと前記記憶手段とを接続するアクセス調停手段とを備える情報処理システムにおいて、複数のプロセッサ間で、前記記憶手段の同一のアドレスに対して、アクセス要求が競合したとき、前記各プロセッサからのアクセス要求の種別を判定して、設定された調停論理に基づいて前記アクセス要求を許否するアクセス調停方法であって、
前記調停論理は、
前記複数のプロセッサのうち、第１のプロセッサから、先行するアクセス要求として、前記記憶手段の任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があった後、当該先行するアクセス要求に対する処理が完了する前に、第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理が完了するまで、当該後からのアクセス要求に対する処理を待機させる一方、前記第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴なわない読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理の完了を待たずに、当該後からのアクセス要求に対する処理を実行させる、アルゴリズムからなることを特徴とする情報処理システムのアクセス調停方法。
【請求項２】
前記調停論理は、前記記憶手段の同一のアドレスに対して、前記アクセス要求の種別毎に異なるプログラム上のアドレス空間を設定して構成されることを特徴とする請求項１記載の情報処理システムのアクセス調停方法。
【請求項３】
前記調停論理は、いずれの前記アドレス空間を介して前記アクセスが行われたか否かに基づいて前記アクセスの許否を行うことを特徴とする請求項２記載の情報処理システムのアクセス調停方法。
【請求項４】
前記調停論理は、いずれかの前記アドレス空間を介してアクセスされた前記記憶手段のアドレスに基づいて前記アクセスの許否を行うことを特徴とする請求項２記載の情報処理システムのアクセス調停方法。
【請求項５】
記憶手段と、該記憶手段にアクセスして、データの読出しや書き込みを行う複数のプロセッサと、複数の前記プロセッサと前記記憶手段とを接続すると共に、複数のプロセッサ間で、前記記憶手段の同一のアドレスに対して、アクセス要求が競合したとき、前記各プロセッサからのアクセス要求の種別を判定して、設定された調停論理に基づいて前記アクセス要求を許否するアクセス調停手段とを備えてなる情報処理システムであって、
前記調停論理は、
前記複数のプロセッサのうち、第１のプロセッサから、先行するアクセス要求として、前記記憶手段の任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があった後、当該先行するアクセス要求に対する処理が完了する前に、第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理が完了するまで、当該後からのアクセス要求に対する処理を待機させる一方、前記第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴なわない読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理の完了を待たずに、当該後からのアクセス要求に対する処理を実行させる、アルゴリズムからなることを特徴とする情報処理システム。
【請求項６】
前記競合調停手段の前記調停論理は、前記記憶手段の同一のアドレスに対して、前記アクセス要求の種別毎に異なるプログラム上のアドレス空間を設定して構成されることを特徴とする請求項５記載の情報処理システム。
【請求項７】
前記調停論理は、いずれの前記アドレス空間を介して前記アクセスが行われたか否かに基づいて前記アクセスの許否を行うことを特徴とする請求項６記載の情報処理システム。
【請求項８】
前記調停論理は、いずれかの前記アドレス空間を介してアクセスされた前記記憶手段のアドレスに基づいて前記アクセスの許否を行うことを特徴とする請求項６記載の情報処理システム。
【請求項９】
コンピータに請求項１乃至請求項４記載の情報処理システムのアクセス調停方法を実行させることを特徴とする制御プログラム。
【請求項１０】
コンピータを、請求項５乃至請求項８記載の情報通信システムとして機能させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報通信システム、そのアクセス調停方法及びその制御プログラムに係り、詳しくは処理要求に対する調停論理を改良した情報通信システム、そのアクセス調停方法及びその制御プログラムに関する。
【背景技術】
【０００２】
マルチプロセッサシステムにおいて、記憶デバイスへのアクセス競合を調停する仕組みが採用されている。その１つの例（以下、公知例という）は、図５に示すように、プロセッサ５１，５２と、共有バス５３と、調停回路５４と、記憶デバイス５５とから概略構成されている。この公知例におけるアクセスの競合は、次のように調停されて任意の時刻においてアクセスが重ならないように構成されている。
プロセッサ５１が共有バス５３を介して記憶デバイス５５へアクセスしようとするとき、そのアクセスＳ６０（図６）において調停回路５４の調停論理へアクセス中である旨を通知する。その後に、書込みのための読込みアクセスＳ６１を開始し、記憶デバイス５５内のプロセッサ５１から見たアクセス単位のアドレスＡ６０からの読込みを実施する。そして、書込みアクセスＳ６４を実行して記憶デバイス５５内のプロセッサ５１から見たアクセス単位のアドレスＡ６０内のアドレスへの書込みを行い、その完了でアクセス要求の解除のアクセスＳ６５を実行して調停回路５５の調停論理に記憶デバイス５５へのアクセスが完了したことを通知する。
【０００３】
プロセッサ５１によるアクセスＳ６０からアクセスＳ６５までの間に、プロセッサ５２からのアクセス要求が発生すると、調停回路５５の調停論理は、プロセッサ５１によるアクセスが完了するまで、プロセッサ５２からのアクセス要求を待たせる、つまり、プロセッサ５２からのアクセス要求に対してアクセス阻止中の状態（Ｓ６３）にする。
すなわち、上述のアクセスＳ６５によるアクセス要求の解除、すなわち、書込み完了の通知があると、アクセス待機中にあるプロセッサ５２は、アクセスＳ６４で書き込んだデータをアクセスＳ６６で読み込む。
そして、プロセッサ５２は、読み込んだアドレスＡ６０のデータを元にそのアドレスＡ６０内のアドレスＡ６２のデータを変更したデータを記憶デバイス５５のアクセス単位であるアドレスＡ６０に書き込む。
【０００４】
また、特許文献１には、アドレス競合を回避するマイクロプロセッサシステムが開示されている。このマイクロプロセッサシステムは、複数のノード７１−１、７１−２、…、７１−Ｎが相互結合網７２を介して接続されて構成され、その各ノードにリクエスト管理テーブル７５を設け、プロセッサ７３からアクセスがあったアドレスをリクエスト管理テーブル７５に保持し、このリクエスト管理テーブル７５に既に保持されたアドレスに対して競合したアクセスがあると、アクセスを制限して書込みを完了させた後、アクセス制限の解除を行うようにして構成されている。
【特許文献１】特開２００３−１５０５７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述の公知例は、既にアクセスが開始されているプロセッサがあれば、その後にアクセス要求を発するプロセッサがあったとしても、先行したアクセスの完了まで、後続するアクセスを待機させるようにしているので、上書きによりデータが消されてしまうことは無くなるが、アクセス中のプロセッサがあれば、その後にアクセスをしたいプロセッサのアクセスは制限されてしまうから、システムの性能が低下するという欠点を有する。
特許文献１では、アクセス中のアドレスを確認して競合が生じていないアドレスにはアクセスを許容するので、システムの性能の向上に貢献してはいるが、アクセスしたいアドレスに競合が発生しているときは、上記公知例等と同様、システムの性能低下は避けられないという欠点を有する。
【０００６】
この発明は、上述の事情に鑑みてなされたもので、システムの性能を一段と向上させることができる情報通信システム、そのアクセス調停方法及びその制御プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、この発明の第１の構成は、記憶手段と、該記憶手段にアクセスして、データの読出しや書き込みを行う複数のプロセッサと、複数の前記プロセッサと前記記憶手段とを接続するアクセス調停手段とを備える情報処理システムにおいて、複数のプロセッサ間で、前記記憶手段の同一のアドレスに対して、アクセス要求が競合したとき、前記各プロセッサからのアクセス要求の種別を判定して、設定された調停論理に基づいて前記アクセス要求を許否するアクセス調停方法に係り、前記調停論理は、前記複数のプロセッサのうち、第１のプロセッサから、先行するアクセス要求として、前記記憶手段の任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があった後、当該先行するアクセス要求に対する処理が完了する前に、第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理が完了するまで、当該後からのアクセス要求に対する処理を待機させる一方、前記第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴なわない読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理の完了を待たずに、当該後からのアクセス要求に対する処理を実行させる、アルゴリズムからなることを特徴としている。
【０００８】
この発明の第２の構成は、記憶手段と、該記憶手段にアクセスして、データの読出しや書き込みを行う複数のプロセッサと、複数の前記プロセッサと前記記憶手段とを接続すると共に、複数のプロセッサ間で、前記記憶手段の同一のアドレスに対して、アクセス要求が競合したとき、前記各プロセッサからのアクセス要求の種別を判定して、設定された調停論理に基づいて前記アクセス要求を許否するアクセス調停手段とを備えてなる情報処理システムに係り、前記調停論理は、前記複数のプロセッサのうち、第１のプロセッサから、先行するアクセス要求として、前記記憶手段の任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があった後、当該先行するアクセス要求に対する処理が完了する前に、第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴う読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理が完了するまで、当該後からのアクセス要求に対する処理を待機させる一方、前記第２のプロセッサから、後からのアクセス要求として、前記記憶手段の前記任意のアドレスに対して、「書込みアクセスを伴なわない読込みアクセス」要求があったときは、前記先行するアクセス要求に対する処理の完了を待たずに、当該後からのアクセス要求に対する処理を実行させる、アルゴリズムからなることを特徴としている。
【発明の効果】
【０００９】
この発明によれば、複数のプロセッサ間で、アクセス要求（処理要求）が競合したとき、競合するアクセス要求の種別を判定し、設定された調停論理に基づいて前記アクセス要求を許否するようにしているので、その処理システムの性能を向上させることができる。
【発明を実施するための最良の形態】
【００１０】
この発明は、複数の処理要求手段から処理要求に対応する処理を行う処理手段への処理要求が競合する構成を有するシステムに、それら処理要求の種別を判定することと、その判定結果に基づいて競合しているいずれの処理要求を許容することを仕組ませて構成される。
【実施形態１】
【００１１】
図１は、この発明の実施形態１である情報処理システムの要部の構成を示す図、図２は、同情報処理システムの各プロセッサによってアクセスされるアドレス空間を示す図、また、図３は、同情報処理システムの各プロセッサによるアクセスシーケンスを示す図である。
この実施形態の情報処理システム１０は、複数のプロセッサによる記憶手段へ書込みアクセスを伴なわない読込みアクセスに対してアクセス制限を解除するシステムに係り、図１に示すように、プロセッサ１１，１２、共有バス１３、アクセス判定回路１４、ＨＤＤへのコマンド発行デバイス１５及びＨＤＤ１６を有して概略構成されている。
【００１２】
プロセッサ１１，１２は、図示しない記憶装置に記憶されているプログラムを読み出して実行し、ＨＤＤへのコマンド発行デバイス１５及びＨＤＤ１６を用いてデータの保存や、データの読出し、データの変更を行う処理手段である。プロセッサ１１，１２の内部構成自体には、この発明とは無関係でありその詳細は省略する。プログラムは、図２及び図３に示される機能を実行し得ることは必要であるが、そのプログラムで実行されるその他の内容についてはこの発明とは無関係でありその詳細は省略する。
【００１３】
共有バス１３は、プロセッサ１１と、プロセッサ１２と、アクセス判定回路１４とを接続し、それらの間でデータを送受する信号線である。この共有バス１３にはＰＣＩバス等が使用される。この発明では共有バス１３の仕様には次に述べる条件を除いて特定の条件は付されない。その条件とは、プロセッサ１１及びプロセッサ１２とアクセス判定回路１４との間でアドレスを含むデータの送受を行い得ることと、プロセッサ１１，１２からアクセス要求が生じた場合に、アクセス対象となるデバイスへのアクセスを一定期間拒否したいとき、その期間アクセスを出来なくすることである。
【００１４】
アクセス判定回路１４は、プロセッサ１１からのアクセスとプロセッサ１２からのアクセスとを排他的に処理し得るように構成されている。
すなわち、プロセッサ１１及びプロセッサ１２からＨＤＤ１６へのアクセス要求があったとき、より早くアクセス要求があったプロセッサの処理を先行させるが、一方のプロセッサから所定の条件関係（アドレス空間ＭＡ−２を介してアクセスされていること（詳細は後述する））にある読込みアクセス（書込みアクセスを伴う読込みアクセス）が実行されていたならば、他方のプロセッサから書込みアクセスを伴う読込みアクセスが実行されんとしたとしても上記一方のプロセッサの書込みアクセスに対する処理が完了するまで上記他方のプロセッサのアクセス要求に対する処理を待機させる。
しかし、他方のプロセッサからの読込みアクセスが所定のアクセス条件（図２に示す通常のアドレス空間（アドレス空間ＭＡ−１（図２））を介するアクセスであること（詳細は後述する））を満たす場合には、上記一方のプロセッサの書込みアクセスに対する処理の完了を待たずに、上記他方のプロセッサの読込みアクセスに対する処理を実行する。
【００１５】
図２は、Ａ２０、Ａ２１、Ａ２２及びＡ２３は、プロセッサ１１及びプロセッサ１２で実行されるプログラムから見たＨＤＤ１６のアドレス空間のアドレスである。そして、記憶領域ＭＡ−１は、アドレスＡ２０からアドレスＡ２１までのアドレス空間であり、記憶領域ＭＡ−２は、アドレスＡ２２からアドレスＡ２３までのアドレス空間である。
また、Ａ２４及びＡ２５は、ＨＤＤ１６上でデータの位置を表すアドレス空間内のアドレスである。そして、記憶領域ＭＡ−３は、アドレスＡ２４からアドレスＡ２５までのアドレス空間である。
【００１６】
このようなアドレス空間関係が構築されている情報処理システムにおいて、プロセッサ１１，１２が、ＨＤＤ１６のアドレス空間ＭＡ−３に対しアクセスをしようとするときは、アドレス空間ＭＡ−１、ＭＡ−２を介して行うようにプロセッサ１１，１２で実行されるプログラムは作成される。すなわち、そのプログラム上では、例えば、プロセッサ１１，１２からアドレス空間ＭＡ−１又はＭＡ−２内の或る特定のアドレスにアクセス要求があると、ＨＤＤ１６上のアドレス空間ＭＡ−３に一意的に写像される。
【００１７】
ＨＤＤへのコマンド発行デバイス１５は、プロセッサ１１，１２からアクセス判定回路１４を介して受け付けたＨＤＤ１６へのアクセス要求を実際に実行する手段である。ＨＤＤへのコマンド発行デバイス１５は、バス１７を介してＨＤＤ１６へ接続されている。このバス１７の具体的な仕様にこの発明はなく、その詳細な説明は省略する。
【００１８】
ＨＤＤ１６は、データ記憶用の部品を組み合わされた構成であり、或るデータサイズ以上の単位でしかアクセスできない。この実施形態では、その単位の大きさは、５１２バイトとする例であるが、アクセス可能な単位のサイズは、その他の値であってもよい。また、ＨＤＤ１６の詳細な構成は広く知られており、したがって、ＨＤＤ１６の構成にこの発明はなく、その詳細な説明は省略する。
【００１９】
次に、図１乃至図３を参照して、この実施形態の動作について説明する。
情報処理システム１０において、そのプロセッサ１１からＨＤＤ１６に対するアクセスがＨＤＤ１６（図１）のアドレスＡ３０に対して開始される一方、このプロセッサ１１によるアクセスに遅れて、プロセッサ１２からもＨＤＤ１６に対するアクセスがＨＤＤ１６のアドレスＡ３０に対して行われるものとする。
【００２０】
プロセッサ１１からのアクセスは、書込みアクセスを伴う読込みアクセスであるとする。これらのアクセスには、書込みのための読込みを行う読込みアクセスＳ３０と書込みを行う書込みアクセスＳ３４とがあり、これらのアクセスは、コマンドを発行して行われる。読込みアクセスＳ３０は、書込みアクセスＳ３４で書込みを行うためのデータの読込みを実施する。この読込みの実施は、アクセス単位となるＨＤＤ１６上のアドレスＡ３０に対してアドレス空間ＭＡ−２（図２）を介して行われる。そして、書込みアクセスＳ３４は、データの書込みを実施する。この書込みの実施は、アクセス単位となるＨＤＤ１６上のアドレスＡ３０に対してアドレス空間ＭＡ−２を介して行われる。
【００２１】
また、プロセッサ１２からのアクセスは、書込みを伴わない読込みだけの読込みアクセスＳ３１と、これに続いて書込みを伴う読込みを行う読込みアクセスＳ３２，書込みアクセスＳ３６とが出されるものとする。したがって、プロセッサ１２による書込みを伴わない読込みだけの読込みアクセスＳ３１のときは、その読込みアクセスＳ３１は、図２のアドレス空間ＭＡ−１を介してＨＤＤ１６のアドレスＡ３０に対して行われる。また、書込みを伴う読込みを行う読込みアクセスのときは、その読込みアクセスＳ３２のときも、また、書込みアクセスＳ３６のときも、プロセッサ１１からの上記アクセスと同様に、図２のアドレス空間ＭＡ−２を介して行われる。いずれのアクセスにおいても、ＨＤＤ１６のアドレスＡ３０に対して行われるとする。
両プロセッサ１１，１２からアクセスされるアドレスＡ３０は、ＨＤＤ１６上のアドレスを表しており、図２に示すＨＤＤ１６上のアドレス空間ＭＡ−３の中に定義されるアドレスである。したがって、アドレスＡ３０は、ＨＤＤ１６のアクセス単位である５１２バイト毎のアドレスを示している一方、アドレスＡ３１，Ａ３２は、アクセス単位であるアドレスＡ３０内の処理対象のデータのアドレスの各各である。
【００２２】
このような設例の下で、プロセッサ１１がＨＤＤ１６に対して書込みアクセスＳ３４を伴う読込みアクセスＳ３０を発生すると、アクセス判定回路１４は、ＨＤＤ１６に対してプロセッサ１１がアクセス中であることを記憶する。
そして、プロセッサ１１が書込みアクセスＳ３４を実行する前に、プロセッサ１２が通常の読込みアクセスＳ３１（書込みアクセスを伴わない読込みアクセス）を実行して読込みが実施されたとする。この読込みアクセスＳ３１は、書込みを伴わないアクセスであるから、図２に示すアクセス空間ＭＡ−１を介してのアクセスとなっている。
したがって、アクセス判定回路１４は、アクセス空間ＭＡ−１を介しての読込み要求に対しては制限をしないので、プロセッサ１２からの読込みアクセスＳ３１は制限されずに完了する。
【００２３】
これとは異なって、プロセッサ１１が読込みアクセスＳ３０を実行した後、書込みアクセスＳ３４を実行する前に、プロセッサ１２が書込みアクセスＳ３６を伴う読込みアクセスＳ３２の実行に入り、読込みを実施しようとしたとき、読込みアクセスＳ３２は、書込みアクセスＳ３６を実行するためのアクセスであるので、その読込みアクセスＳ３２は、図２のアクセス空間ＭＡ−２を介してアクセスＳ３２の読込みを実施しているから、プロセッサ１２による読込みアクセスＳ３２は、アクセス判定回路１４によってプロセッサ１１がアクセスＳ３４を完了するまで制限される、すなわち、調停待ちの状態となる（図３のＳ３３）。
【００２４】
そして、プロセッサ１１は、書込みアクセスＳ３４によりアドレスＡ３０内のアドレスＡ３１を変更したデータのアドレスＡ３０からの書込みを実施する。この完了で、アクセス判定回路１４は、プロセッサ１１によるアクセスが完了したとして自身の内部状態を解除Ｂ３１に設定し、プロセッサ１２のアクセスが可能になったことをプロセッサ１２に通知する。
この通知を受け取ったプロセッサ１２は、アクセスＳ３５によりＨＤＤ１６のアドレスＡ３０のデータを受け取る。アクセス判定回路１４は、プロセッサ１２がアクセス中であることをその内部状態Ｂ３２として記憶する。このときには、プロセッサ１１による書込みアクセスＳ３４は完了しているので、プロセッサ１１が書込みを意図したデータは、アドレスＡ３０からのＨＤＤ１６のアクセス単位となる５１２バイト内のアドレスに反映されている。
したがって、プロセッサ１２の書込みアクセスＳ３６による書込みは、プロセッサ１１の書込みアクセスＳ３４による書込みを無効にすることなく完了させることができる。なお、書込みアクセスＳ３６による書込みは、アドレスＡ３０内のアドレスＡ３２のデータを変更したアクセス単位のデータをアドレスＡ３０から実施する。
【００２５】
このように、この実施形態の構成によれば、２つのプロセッサによるＨＤＤへのアクセスが行われんとするとき、書込みアクセスを伴う読込みアクセスがこのアクセス用のアドレス空間を介してあったときにのみ、遅れて実行されんとする書込みアクセスを伴う読込みアクセスに対して制限を掛けるようにしたので、情報処理システムの性能を向上させることができる。
【実施形態２】
【００２６】
図４は、この発明の実施例２である情報処理システムの構成を示す図である。
この実施形態の構成が、実施形態１のそれと大きく異なる点は、書込みアクセスを伴う読込みアクセスが競合する場合のアクセス制限に、先行してアクセスが開始されているアクセスアドレスを用いるようにした点である。
すなわち、この実施形態の情報処理システム１０Ａは、図４に示すように、アドレス空間ＭＡ−２を介してＨＤＤ１６にアクセスがあった場合にアクセスしたアドレスを保存するアドレス管理テーブル４１を設けたこと及びアクセス判定回路１４Ａはアドレス管理テーブル４１を参照してＨＤＤ１６へのアクセスに制限があるか否かを判定することにこの実施形態の特徴部分がある。
この構成以外のこの実施形態の構成は、実施形態１と同じであるので、同一の構成部分には同一の参照符号を付して、その逐一の説明は省略する。
【００２７】
次に、図４を参照して、この実施形態の動作について説明する。
情報処理システム１０Ａにおいて、そのプロセッサ１１からＨＤＤ１６に対するアクセスがＨＤＤ１６のアドレスＡ３０（図３）に対して開始される一方、このプロセッサ１１によるアクセスに遅れて、プロセッサ１２からもＨＤＤ１６に対するアクセスがＨＤＤ１６のアドレスＡ３０に対して行われるものとする。
【００２８】
実施形態１と同様、プロセッサ１１からのアクセスは、書込みアクセスＳ３４を伴う読込みアクセスＳ３０を行うアクセス（図３）であるとする。これらのアクセスは、コマンドを発行して行われる。また、読込みアクセスＳ３０も、また書込みアクセスＳ３４も、アクセス単位となるＨＤＤ１６上のアドレスＡ３０に対してアドレス空間ＭＡ−２（図３）を介して行われるものとする。
【００２９】
また、プロセッサ１２からのアクセスは、書込みアクセスを伴わない読込みアクセスＳ３１（図３）だけのアクセスに続いて、書込みアクセスＳ３６を伴なう読込みアクセスＳ３２（図３）が出されることも、同様である。これらのアクセスもコマンドを発行して行われる。
読込みアクセスＳ３１は、図２のアドレス空間ＭＡ−１を介してＨＤＤ１６のアドレスＡ３０に対して行われるのに対して、読込みアクセスＳ３２も、また、書込みアクセスＳ３６も、プロセッサ１１からの上記アクセスと同様に、図２のアドレス空間ＭＡ−２を介して行われることも、同様である。いずれのアクセスにおいても、ＨＤＤ１６のアドレスＡ３０に対して行われるとする。
両プロセッサ１１，１２からアクセスされるアクセスＡ３０は、ＨＤＤ１６上のアドレスを表しており、図２に示すＨＤＤ１６上のアドレス空間ＭＡ−３の中に定義されるアドレスである。したがって、アドレスＡ３０は、ＨＤＤ１６のアクセス単位である５１２バイト毎のアドレスを示している。
【００３０】
このような設例の下で、プロセッサ１１からＨＤＤ１６に対してアクセスＳ３０が実行されると、アクセス判定回路１４Ａは、アドレス空間ＭＡ−２を介して行われる読込みアクセスのアドレスをアドレス管理テーブル４１に保存する。
そして、プロセッサ１１が書込みアクセスＳ３４を実行する前に、プロセッサ１２が読込みアクセスＳ３１を実行して読込みが実施されたとする。この読込みアクセスＳ３１は、書込みアクセスを伴わないアクセスであるから、図２に示すアクセス空間ＭＡ−１を介してのアクセスとなっている。
【００３１】
読込みアクセスＳ３１が実行されるとき、アクセス判定回路１４Ａは、アドレス管理テーブル４１を参照し、アドレス空間ＭＡ−２を介してアドレスＡ３０へアクセスがあるか否かを判定する。このとき、既に、プロセッサ１１によってアドレスＡ３０へのアクセスが行われてそのアドレスＡ３０がアドレス管理テーブル４１に保存されているが、その保存は、アドレス空間ＭＡ−２を介してのものではないから、アクセス空間ＭＡ−１を介しての読込みアクセスＳ３１に対してはアドレスＡ３０へのアクセスはないと判定してその読込みアクセスＳ３１に対する制限を解除する。したがって、プロセッサ１２からのアクセスＳ３１は制限されずに完了する。
【００３２】
これとは異なって、プロセッサ１１が書込みアクセスＳ３４を伴うアクセスＳ３０を実行した後、アクセスＳ３４を実行する前に、プロセッサ１２が書込みアクセスＳ３６を伴うアクセスＳ３２の実行に入り、読込みを実施しようとしたとき、アクセス判定回路１４Ａは、アクセスＳ３２が、図２のアクセス空間ＭＡ−２を介してのアクセスであるので、アドレス管理テーブル４１を参照する。
このとき、既に、プロセッサ１１によってアドレスＡ３０へのアクセスが行われてそのアドレスＡ３０がアドレス管理テーブル４１に保存されているので、アドレス判定回路４１は、アクセス空間ＭＡ−２を介しての読込みアクセスＳ３２に対してはアドレスＡ３０へのアクセスが既に行われていると判定してその読込みアクセスＳ３２に対してはアドレスＡ３０へのアクセスを制限する。
したがって、プロセッサ１２による読込みアクセスＳ３２は、アクセス判定回路１４Ａによってプロセッサ１１によるアクセスＳ３４が完了するまで制限される、すなわち、調停待ちの状態となる（図３のＳ３３）。
【００３３】
そして、プロセッサ１１は、書込みアクセスＳ３４によりアクセス単位内のアドレスＡ３１を変更したアクセス単位のデータのアドレスＡ３０からの書込みを実施する。この完了で、アクセス判定回路１４Ａは、プロセッサ１１によるアクセスが完了したとして自身の内部状態を解除Ｂ３１に設定し、プロセッサ１２のアクセスが可能になったことをプロセッサ１２に通知する。
この通知を受け取ったプロセッサ１２は、アクセスＳ３５によりＨＤＤ１６のアドレスＡ３０のデータを受け取る。アクセス判定回路１４Ａは、プロセッサ１２がアクセス中であることをその内部状態Ｂ３２として記憶する。このときには、プロセッサ１１による書込みアクセスＳ３４は完了しているので、プロセッサ１１が書込みを意図したデータは、アドレスＡ３０からのＨＤＤ１６のアクセス単位となる５１２バイト内のアドレスに反映されている。
したがって、プロセッサ１２の書込みアクセスＳ３６による書込みは、プロセッサ１１の書込みＳ３４による書込みを無効にすることなく完了させることができる。なお、書込みアクセスＳ３６による書込みは、アドレスＡ３０内のアドレスＡ３２のデータを変更したアクセス単位のデータをアドレスＡ３０から実施する。
【００３４】
このように、この実施形態の構成によれば、２つのプロセッサによるＨＤＤへのアクセスが行われるとき、書込みアクセスを伴う読込みアクセスがこのアクセス用のアドレス空間を介してあったときそのアクセスアドレスを保存しておき、遅れて実行されんとするアクセス用アドレス空間を介しての読込みアクセスに対して制限を掛けるようにしたので、情報処理システムの性能を向上させることができる。
【００３５】
以上、この発明の実施例を、図面を参照して詳述してきたが、この発明の具体的な構成は、これらの実施例に限られるものではなく、この発明の要旨を逸脱しない範囲の設計の変更等があってもそれらはこの発明に含まれる。
例えば、上記実施形態においては２つのプロセッサからＨＤＤへアクセスするときの競合を回避するのに、アクセス種別に応じたアドレス空間を介してアクセスを行う仕組みを設ける構成を説明したが、ＨＤＤ等の記憶手段へのアクセスが発生したとき、そのアクセスがいずれのアクセス種別に属するかを判別する仕組みを設け、アクセスが記憶手段に行われるとき、判別結果に基づいて記憶手段へのアクセスを制限するようにしてもよい。
また、上述した実施形態は、記憶手段へのアクセスについての例を示したが、その他の処理手段への処理要求が競合する場合にも、この発明を実施し得る。
【産業上の利用可能性】
【００３６】
ここに開示している情報処理システムのアクセス調停方法及びそのシステム並びにそのための制御プログラムは、処理要求が競合する各種のシステムでも利用し得る。
【図面の簡単な説明】
【００３７】
【図１】この発明の実施形態１である情報処理システムの要部の構成を示す図である。
【図２】同情報処理システムの各プロセッサによってアクセスされるアドレス空間を示す図である。
【図３】同情報処理システムの各プロセッサによるアクセスシーケンスを示す図である。
【図４】この発明の実施形態２である情報処理システムの要部の構成を示す図である。
【図５】従来の１つのマルチプロセッサシステムの構成図である。
【図６】同マルチプロセッサシステムの各プロセッサによるアクセスシーケンスを示す図である。
【図７】従来の１つのマルチプロセッサシステムの構成図である。
【符号の説明】
【００３８】
１０、１０Ａ      情報処理システム
１１      プロセッサ（第１のノード）
１２      プロセッサ（第１のノード）
１３      共有バス（競合調停手段の一部）
１４、１４Ａ      アクセス判定回路（競合調停手段の一部）
１５      ＨＤＤへのコマンド発行デバイス（競合調停手段の一部）
１６      ＨＤＤ（第２のノード、記憶手段）
１７      バス（競合調停手段の残部）
【図１】
0004983632.tif 000002
【図２】
0004983632.tif 000003
【図３】
0004983632.tif 000004
【図４】
0004983632.tif 000005
【図５】
0004983632.tif 000006
【図６】
0004983632.tif 000007
【図７】
0004983632.tif 000008