JP2504552B2 - マルチプロセッサコンピュ―タシステムにおいてシステムリソ―スへの充分なアクセスを確保するコマンダノ―ド方法及び装置 - Google Patents

マルチプロセッサコンピュ―タシステムにおいてシステムリソ―スへの充分なアクセスを確保するコマンダノ―ド方法及び装置

Info

Publication number
JP2504552B2
JP2504552B2 JP63504650A JP50465088A JP2504552B2 JP 2504552 B2 JP2504552 B2 JP 2504552B2 JP 63504650 A JP63504650 A JP 63504650A JP 50465088 A JP50465088 A JP 50465088A JP 2504552 B2 JP2504552 B2 JP 2504552B2
Authority
JP
Japan
Prior art keywords
node
commander
lockout
access
bus
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.)
Expired - Fee Related
Application number
JP63504650A
Other languages
English (en)
Other versions
JPH02500226A (ja
Inventor
リチャード ビー ジュニア ジレット
ダグラス ディー ウィリアムズ
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH02500226A publication Critical patent/JPH02500226A/ja
Application granted granted Critical
Publication of JP2504552B2 publication Critical patent/JP2504552B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Description

【発明の詳細な説明】 先行技術 本発明は、コンピュータシステムに係り、より詳細に
は、バスによって相互接続された多数のプロセッサを有
すると共に、リソースへのアクセスコマンドを開始する
ことのできるコンピュータシステムに係る。
近代的なコンピュータシステムは、多数のプロセッサ
と、メモリリソースと、高い全計算能力を得るために共
通のバスによって相互接続された入力/出力(I/O)装
置とを有している。このような構造では、1秒当たり数
百万の命令を実行することのできる非常に能力の高いシ
ステムを構成することができる。然し乍ら、多数のプロ
セッサがメモリ又はI/Oリソースを同時にアクセスしよ
うとするときには多数のプロセッサが相互接続されてい
ることによって問題が生じる。例えば、多数のプロセッ
サの各々が読み取り−変更書き込み(RMW)動作を試み
たときに問題が生じる。RMW動作においては、1つのプ
ロセッサがメモリ位置からデータを検索し、そのデータ
に基づいて演算を実行し、そして変更したデータを元の
メモリ位置に書き戻す。1つのプロセッサが1つのメモ
リ位置に対してRMW動作を開始し、そしてこの第1プロ
セッサのRMW動作の「読み取り」動作と「書き込み」動
作との間の時間中に第2のプロセッサがその同じメモリ
位置に対してRMW動作を試みた場合には、システムの完
全性に影響を及ぼすような予想できない結果を招く。
多数のプロセッサが同じメモリ位置に対してRMW動作
を実行しないようにする1つの方法は、「インターロッ
ク読み取り」コマンドのような排他的なアクセスコマン
ドを形成することである。これには、ロックビットのよ
うな「ロック」インジケータの使用が含まれ、このビッ
トは、RMW動作の「読み取り」部分が実行されるときに
セットされると共に、RMW動作の「書き込み」部分が完
了した後にリセットされるものである。ロックビットが
セットされたときに第2のプロセッサがメモリ内の位置
に対してRMW動作を開始しようと試みると、メモリはロ
ック状態情報を返送する。このロック状態情報は、第2
のインターロック読み取りコマンドがメモリによって受
け入れられなかったことをプロセッサに指示する。
インターロック読み取り動作は、RMW動作を各々実行
しようと試みる多数のプロセッサによって生じる問題を
軽減する。プロセッサは、例えば、ラウンドロビンアル
ゴリズムを用いる仲裁プロセッサにより、このようなイ
ンターロック読み取り動作に対するバスへのアクセスが
公平に許可される。然し乍ら、依然として性能上の制約
がある。例えば、あるバフトラフィック状態のもとで
は、特定のプロセッサがロックされたメモリ位置に繰り
返し遭遇し、メモリリソースへの必要なアクセスを適時
に得ることができない。このような問題は、メモリモジ
ュールに対して多数のロックビットを設け、各ロックビ
ットをメモリモジュール全体ではなくてメモリモジュー
ルの一部分に関連させることにより軽減される。このよ
うな多数のロックビットは、メモリモジュールに対する
インターロックされた読み取り動作の微細な「粒度」を
与え、インターロック読み取り動作の後のメモリのより
小さな部分をタイピングアップすることができる。多数
のロックビットを含むシステムが米国特許出願第044,95
4号(DEC−136)に開示されている。
又、この解決策は、より高いアクセスレートでRMW動
作を実行できるようにし、これにより、システムのスル
ープットを向上させる。然し乍ら、ある状態のもとで
は、選択されたプロセッサがまだメモリアクセスの問題
に遭遇する。バスの仲裁は、ノードにシステムバスに対
する公平なアクセスを与えることによりノードがシステ
ムバスに対する充分なアクセスを得るよう助けることが
できる。然し乍ら、ある状態のもとでは、このような公
平なバスアクセスは、メモリ自体に対して充分なアクセ
スを保証しない。例えば、同時にインターロック読み取
りコマンドを実行する2つ以上のプロセッサを、他のノ
ードからのインターロック読み取りコマンドと同期さ
せ、メモリが他のノードによってロックされたときにあ
るプロセッサのみがメモリにコマンドを与えるように
し、これらのプロセッサがメモリリソースへのアクセス
を効果的に拒絶されるようにすることができる。
マルチプロセッサシステムにおいてシステムリソース
を長時間拒絶することを含む第2の例は、I/Oアダプタ
が要求に応じることのできる速度よりも高い速度で多数
のプロセッサがI/Oバスへのアクセスを試みるときであ
る。従ってI/Oアダプタの入力待ち行列は、急速にいっ
ぱいとなり、その後にI/Oバスへのアクセスを試みるプ
ロセッサに「ノー・アクノーリッジ」(NACK)指示を生
じる。
上記の説明では、プロセッサノード、メモリノード及
びI/Oノードを用いたコンピュータシステムの動作が強
調されたが、コマンダノード、即ちバス上のトランザク
ションを開始するノード、及びレスポンダノード、即ち
コマンダノードによって開始されたトランザクションに
対応するノードについてシステムを更に詳細に説明す
る。種々の時間に、1つの装置がコマンダノード又はレ
スポンダノードのいずれかとして働くことができる。
発明の要旨 そこで、本発明の目的は、システムリソースに対して
充分なアクセスが許可されるコマンダノードを提供する
ことである。
本発明の更にべつの目的は、インターロック読み取り
コマンドを発生するコマンダノードであって、メモリリ
ソースに対して充分なアクセスが許可されるコマンダノ
ードを提供することである。
本発明の更に別の目的は、別のノードがシステムリソ
ースに対する充分なアクセスを拒絶されたときにアクセ
スコマンドが禁止されるようなコマンダノードを提供す
ることである。
本発明の更に別の目的及び効果は、その一部分が以下
の説明に述べられておりそしてその一部分が以下の説明
から自明であり、もしくは本発明を実施することによっ
て学び取ることができよう。本発明の目的及び効果は、
請求の範囲に特に指摘する手段及びその組合せによって
実現及び達成することができよう。
本発明は、プロセッサによって受け取ったリソース拒
絶指示に応答し、そのリソース拒絶指示を受け取ったプ
ロセッサに対してリソースが充分な処理を与えることが
できるまでシステムリソースに付加的な要求を出すコマ
ンドの発生を制限することにより、公知の問題及び欠点
を解消する。
これらの目的を達成するためそして本発明の目的によ
れば、ここに実施して広く説明するように、バスに接続
されていて、リソースノードへのアクセスを得るために
アクセスコマンドを発生する他のノードが、ノードリソ
ースへ公平にアクセスできるよう確保する多ノードデー
タ処理システムが提供される。このシステムは、レスポ
ンダノードとして働くリソースノードを備えている。こ
のリソースノードは、アクセスコマンドを処理する手段
と、この処理手段がアクセスコマンドに応答しないよう
に阻止されたときにリソース拒絶指示を送信する手段と
を備えている。又、システムは、各々コマンダノードと
して働く複数のノードを備えており、その各々は、バス
を経てリソースノードへ上記アクセスコマンドを送信す
る手段を備えている。ノードの1つには、リソース拒絶
指示に応答して、コマンダノードからのアクセスコマン
ドが所定のロックアウトアサート基準によりリソースノ
ードから不充分な応答を受け取ったときに、ロックアウ
トアクチベータをアサートするための手段が設けられて
いる。
更に、システムは、コマンダノードの1つに接続され
たロックアウトインジケータであって、ロックアウトア
クチベータのアサート動作に応答して、ロックアウトア
クチベータがアサートされるときのアサート状態は、非
アサート状態との間で動作することのできるロックアウ
トインジケータと、このロックアウトインジケータを監
視すると共に、ロックアウトインジケータがアサート状
態にあるときに所定のアクセスゲート基準に基づいてリ
ソースノードへのアクセスコマンドの発生を阻止するた
めのロックアウトチェック手段とを備えている。
本明細書に組み込まれてその一部分を構成する添付図
面には、本発明の一実施例が示されており、これを参照
して、本発明の原理を説明する。
図面の簡単な説明 第1図は、本発明によるデータ処理システムのブロッ
ク図、 第2図は、第1図のデータ処理システムのバスに接続
されたノードのブロック図、 第3図は、第1図のデータ処理システムに用いられる
タイミング信号を示す代表的なタイミング図、 第4図は、第1図及び第2図のノードに用いられるデ
ータインターフェイス61のブロック図、 第5図は、第1図のデータ処理システムのアービタの
ブロック図、 第6図は、インターロック読み取りトランザクション
中に第1図のシステムバスに現われる信号を示すタイミ
ング図、 第7図は、第1図のデータ処理システムのプロセッサ
ノードのブロック図、 第8図は、第1図のデータ処理システムのメモリノー
ドのブロック図、 第9図は、第8図のプロセッサノードのロックアウト
チェック回路のブロック図、そして 第10図は、本発明による一連のアクセスコマンドトラ
ンザクションの一例を示す図である。
好ましい実施例の詳細な説明 以下、添付図面に示された本発明の好ましい実施例を
詳細に説明する。
A.システム全体の説明 第1図は、本発明によるデータ処理システム20の一例
を示している。システム20の中心部はシステムバス25で
あり、これは、多数のプロセッサと、メモリサブシステ
ムと、I/Oシステムとの間で通信を行なうことのできる
同期バスである。システムバス25を介しての通信は、周
期的なバスサイクルを用いて同期的に行なわれる。シス
テムバス25に対する典型的なバスサイクルタイムは、64
nSである。
第1図において、システムバス25は、2つのプロセッ
サ31及び35と、メモリ39と、1つのI/Oインターフェイ
ス41と、1つのI/Oユニット51とに接続される。I/Oユニ
ット53は、I/Oバス45及びI/Oユニットインターフェイス
41によりシステムバス25に接続される。
データ処理システム20の好ましい実施例では、中央ア
ービタ(仲裁回路)28もシステムバス25に接続されてい
る。アービタ28は、幾つかのタイミング及びバス仲裁信
号をシステムバス25上の他の装置へ直接供給し、ある信
号をこれらの装置とで共有する。
第1図に示されたものは、現在好ましいと考えられる
ものであり、必ずしも本発明をこれに限定するものでは
ない。例えば、I/Oユニット53はシステムバス25に直接
接続することができるし、アービタ28は、本発明につい
て述べるように動作しなくてもよい。
本発明を説明する上で使用する用語として、プロセッ
サ31及び35、メモリ39、I/Oインターフェイス41、及びI
/O装置51は、全て「ノード」と称する。「ノード」と
は、システムバス25に接続されるハードウェア装置と定
義する。
本発明を説明するのに用いる用語によれば、「信号」
又は「ライン」は、物理的な配線の名称を指すものとし
て交換可能に用いられる。「データ」又は「レベル」と
いう用語は、信号又はラインがとることのできる値を指
すものとして用いられる。
ノードは、システムバス25を介して他のノードとの転
送を実行する。「転送」は、共通の送信器及び共通のア
ービタを分担する1つ以上の連続サイクルである。例え
ば、あるノードがシステムバス25上の別のノードから情
報を得るために開始する読み取り動作においては、第1
のノードから第2のノードへコマンドを転送した後に、
ある程度の時間が経ってから、第2のノードから第1の
ノードへ1つ以上の戻りデータを転送することが必要で
ある。
「トランザクション」は、システムバス25において実
行される完全な論理的タスクとして定められ、2つ以上
の転送を含むことができる。例えば、コマンド転送に続
いて1つ以上の戻りデータ転送を行なう読み取り動作は
1つのトランザクションである。システムバス25の好ま
しい実施例では、許容できるトランザクションが種々の
データ長さの転送をサポートし、これは、読み取り、書
き込み(マスクされた)、インターロック読み取り、ロ
ック解除書き込み及び割り込み動作を含む。インターロ
ック読み取りと、通常の即ち非インターロック読み取り
との相違は、特定位置に対するインターロック読み取り
の場合にその位置に記憶された情報を検索しそしてその
後のインターロック読み取りコマンドによってアクセス
をその記憶された情報に制限することである。アクセス
の制限は、ロック機構をセットすることによって行なわ
れる。その後のロック解除書き込みコマンドは、その指
定の位置に情報を記憶し、そしてその位置においてロッ
ク機構をリセットすることによりその記憶された情報へ
のアクセスを復帰する。従って、インターロック読み取
り/ロック解除書き込み動作は、ある種の読み取り−変
更−書き込み動作である。
システムバス25は「保留された」バスであるから、他
のノードが応答を待機して浪費してしまうバスサイクル
を使用できるようにすることにより、バスリソースを効
率良く使用するよう促す。保留されたバスにおいては、
1つのノードがトランザクションを開始した後に、その
トランザクションが完了する前に他のノードがバスにア
クセスすることができる。従って、そのトランザクショ
ンを開始するノードは、全トランザクション時間中バス
を束縛するのではない。これに対し、非保留バスの場合
には、全トランザクション中バスが拘束される。例え
ば、システムバス25においては、ノードが読み取りトラ
ンザクションを開始しそしてコマンドの転送を行なった
後に、そのコマンド転送が向けられるノードは、その要
求されたデータを直ちに返送することができない。従っ
て、コマンド転送と、読み取りトランザクションの戻り
データ転送との間にバス25のサイクルを使用することが
できる。システムバス25は他のノードがこれらのサイク
ルを使用できるようにする。
システムバス25を使用する場合に、各ノードは、情報
の転送を行なうために異なった役割を果たすことができ
る。これらの役割の1つが「コマンダ」であり、これは
現在処理中のトランザクションを開始したノードとして
定義される。例えば、書き込み又は読み取り動作におい
ては、コマンダは、書き込み又は読み取り動作を要求し
たノードであり、これは、必ずしもデータを送信もしく
は受信するノードでなくてもよい。システムバス25の好
ましいプロトコルにおいては、ノードは、たとえば別の
ノードがトランザクションのあるサイクル中にシステム
バス25の所有権をもったとしても全トランザクションを
通じてコマンダとして保持される。例えば、あるノード
は、読み取りトランザクションのコマンド転送に応答し
てデータ転送中にシステムバス25の制御権をもつが、こ
のノードはバスのコマンダとはならない。むしろ、この
ノードは「レスポンダ」と称する。
レスボンダはコマンダに応答する。例えば、コマンダ
がノードAからノードBにデータを書き込むための買い
込み動作を開始した場合には、ノードBがレスポンダと
なる。更に、データ処理システム20においては、ノード
が同時にコマンダ及びレスポンダとなることがある。
送信器及び受信器は、個々の転送中にノードがとる役
割を果たす。「送信器」は、転送中にシステムバス25に
出される情報のソースであるノードとして定義される。
「受信器」は、送信器の相補的なものであり、転送中に
システムバス25に出された情報を受信するノードとして
定義される。例えば、読み取りトランザクション中に、
コマンダは、最初、コマンドの転送中に送信器となりそ
して戻りデータの転送中に受信器となる。
システムバス25に接続されたノードがシステムバス25
上で送信器になろうとする場合には、そのノードが中央
のアービタ28とその特定ノードとの間に接続された2本
の要求ラインCMD REQ(コマンド要求)及びRES REQ(レ
スポンダ要求)の一方を肯定する。一般に、ノードは、
そのCMD REQラインを用いてコマンダとなることを要求
しそしてシステムバス25を介してトランザクションを開
始し、そしてノードは、そのRES REQラインを用いてレ
スポンダとなってデータ又はメッセージをコマンダへ返
送する。一般に、中央アービタ28は、どのノードがバス
へのアクセスを要求しているか(即ち、どの要求ライン
が肯定されたか)を検出する。次いで、アービタは、肯
定された要求ラインの1つに応答して、優先順位アルゴ
リズムに基づいてバス25への対応するノードアクセスを
許可する。好ましい実施例では、アービタ28は、2つの
独立した円形の待ち行列を維持し、即ち、その一方の待
ち行列はコマンダ要求に対するものでありそしてもう一
方はレスポンダ要求に対するものである。好ましくは、
レスポンダ要求はコマンダ要求よりも優先順位が高く、
コマンダ要求の前に処理される。
コマンダ要求ライン及びレスポンダ要求ラインは仲裁
信号であると考えられる。第1図に示すように、仲裁信
号は、中央アービタ28から各ノードへ送られるポイント
−ポイントの条件に応じた許可信号と、マルチバスサイ
クル転送を実行するシステムバス拡張信号と、例えば、
メモリのようなノードがシステムバス上のトラヒックを
瞬間的に維持できなくなったときに新たなバストランザ
クションの開始を制御するシステムバス抑制信号とを含
む。
システムバス25を構成することのできる他の形式の信
号は、情報転送信号、応答信号、制御信号、コンソール
/フロントパネル信号、及び幾つかの種々の信号を含
む。情報転送信号は、データ信号、現在サイクル中にシ
ステムバスで行なわれるファンクションを表わすファン
クション信号、コマンダを識別する識別子信号、及びパ
リティ信号を含む。応答信号は、一般に、データ転送の
状態を送信器に通知するための受信器からの確認信号を
含む。
制御信号は、クロック信号と、低いライン電圧又は低
いDC電圧を示す信号のような警報信号と、初期化中に使
用されるリセット信号と、ノード欠陥信号と、バスのア
イドリングサイクル中に用いられる欠陥信号と、エラー
欠陥信号とを含む。コンソール/フロントパネル信号
は、直列データをシステムコンソールに送信したりそこ
から受信したりするための信号と、始動時にブートプロ
セッサの特性を制御するためのブート信号と、システム
バス25上のプロセッサの消去可能なPROMを変更できるよ
うにする信号と、フロットパネルのRUN LIGHTを制御す
る信号と、あるノードのクロック論理回路にバッテリ電
力を供給する信号とを含む。その他の信号としては、ス
ペア信号に加えて、各ノードがその識別コードを定める
ことができるようにする識別信号を含む。
第2図は、システムバス25に接続されたノード60の一
例を示している。ノード60は、プロセッサであってもよ
いし、メモリであってもよいし、I/Oユニットであって
もよいし、I/Oインターフェイスであってもよい。第2
図に示す例では、ノード60は、ノードに特定の論理回路
65と、ノードバス67と、データインターフェイス61及び
クロックデコーダ63を含むシステムバスインターフェイ
ス64とを備えている。データインターフェイス61、クロ
ックデコーダ63及びノードバス67は、システムバス25に
接続されたノードのための標準的な要素であるのが好ま
しい。ノードに特定の論理回路65は、システムバスイン
ターフェイス64とは異なった集積回路を用いており、好
ましくは、ノードの特定の機能を実行するようにユーザ
によって指定された回路に加えて、ノードバス67にイン
ターフェイスする標準的な回路を含んでいる。一般に、
データインターフェイス61は、ノード60とシステムバス
25との間の主たる論理的及び電気的なインターフェイス
であり、クロックデコーダ63は中央で発生されるクロッ
ク信号に基づいてノード60へタイミング信号を供給し、
ノードバス67はデータインターフェイス61とノードに特
定の論理回路65との間の高速インターフェイスをなす。
第2図に示されたノード60及びシステムバスインター
フェイス64の好ましい実施例では、クロックデコーダ63
は、システムバス25を経て送られるべき信号を形成する
ための制御回路を含んでおり、中央アービタ28から受け
取ったクロック信号を処理して、ノードに特定な論理回
路65及びデータインターフェイス61のためのタイミング
信号を得るようにする。クロックデコーダ63によって得
られたタイミング信号は中央で発生されたクロック信号
を用いているので、ノード60は、システムバス25と同期
して作動する。
第3図は、1つのバスサイクル、クロックデコーダ63
によって受け取ったクロック信号、及びクロックデコー
ダ63によって発生される幾つかのタイミング信号を示す
タイミング図である。クロックデコーダ63によって受け
取られるクロック信号は、第3図に示すように、Time H
信号、Time L信号及びPhase信号を含む。Time H及びTim
e Lは、基本的なクロック信号の逆数であり、そしてPha
se信号は、基本的なクロック信号を3で分割することに
よって得られる。クロックデコーダ63によって発生され
たタイミング信号は、C12、C23、C34、C45、C56及びC61
を含み、これらは全て第3図に示されている。データイ
ンターフェイス61によって要求されバスサイクル当たり
一度生じるこれらのタイミング信号は、データインター
フェイス61に送られ、そしてデータインターフェイス61
に送られたタイミング信号と等価なものを含む1組のタ
イミング信号がバッファされて、ノードに特定の論理回
路65に送られる。バッファ動作の目的は、ノードに特定
の論理回路65がタイミング信号を不適切にロードするこ
とによってシステムバスインターフェイス64の動作に悪
影響を及ぼさないようにすることである。クロック63
は、クロック進行を使用して、各バスサイクルごとに6
つのサブサイクルを形成し、そしてこれらのサブサイク
ルを使用して、6つのタイミング信号CXYを形成する。
但し、X及びYは、1つのタイミング信号を形成するよ
うに合成される2つの隣接するサブサイクルを表わして
いる。
システムバスの各ノードは、そのクロックデコーダ63
によって発生されたそれ自身の対応する1組のタイミン
グ信号を有している。通常、対応する信号は、システム
全体を通じて各ノードごとに全く同じ時間に生じるが、
クロックデコーダ63と多数のノードの他の回路との間の
変動により対応する信号間にタイミング変動を招く。こ
れらのタイミング変動は、一般に「クロックスキュー」
として知られている。
第4図は、データインターフェイス61の好ましい実施
例を示している。データインターフェイス61は、ノード
バス67の各ラインとシステムバス25の各ラインとの間に
両方向性の高速インターフェイスを与えるための一時的
な記憶回路及びバス駆動回路の両方を含んでいる。第4
図に示すように、データインターフェイス61は、ノード
バス67からシステムバス25への通信路を形成するために
記憶要素70及び72とシステムバスドライバ74とを備えて
いるのが好ましい。又、データインターフェイス61は、
システムバス25からノードバス67への通信路を形成する
ために記憶要素80及びノードバスドライバ82も備えてい
る。データインターフェイス61の説明で用いたように、
「記憶要素」という用語は、一般に、透過ラッチやマス
ター/スレーブ記憶要素のような双安定性の記憶装置を
指すものであって、特定の手段を指すものではない。当
業者であれば、どの形式の記憶要素が適当であるか明ら
かであろう。
第4図に示すように、記憶要素70は、その入力がノー
ドバス67からデータを受け取るように接続されそしてそ
の出力が記憶要素72の入力に接続される。記憶要素72の
出力は、システムバスドライバ74の入力に接続され、そ
してその出力はシステムバス25に接続される。記憶要素
70及び72は、クロックデコーダ63によって発生されたタ
イミング信号から導出されるノードバス制御信号76及び
78によって各々制御される。記憶要素70及び72は、ノー
ドバス67からシステムバス25へのデータをパイプライン
動作するための2段の一時的な記憶手段を形成する。種
々の個数の記憶段を使用することもできる。
システムバスドライバ74は、システムバスドライバイ
ネーブル信号79によって制御される。システムバスドラ
イバイネーブル信号79の状態により、システムバスドラ
イバ74の入力は、その出力に接続されて記憶要素72の出
力のデータをシステムバス25に転送するか、又はその出
力からデカップルされる。システムバスドライブイネー
ブル信号79がシステムバスドライバ74の入力と出力をデ
カップルするときには、システムバスドライバ74がシス
テムバス25に高インピーダンスを与える。又、システム
バスドライブイネーブル79は、システムバス25から受け
取ったクロック信号と、ノードに特定の論理回路65から
受け取った制御信号とに基づいてクロックデコーダ63に
よって発生される。
記憶要素80は、その入力端子がシステムバス25に接続
されそしてその出力端子がノードバスドライバ82の入力
に接続される。ノードバスドライバ82の出力はノードバ
ス67に接続されて戻される。好ましくは、透過ラッチで
ある記憶要素80は、クロックデコーダ63によって発生さ
れたタイミング信号から導出されるシステムバス制御信
号85によって制御される。ノードバスドライブ信号87
は、システムバスドライブ信号79がシステムバスドライ
バ74を制御するのと同様にノードバスドライバ82を制御
する。従って、ノードバスドライバ信号87に応答して、
ノードバスドライバ82はその入力をその出力に接続する
かその入力をその出力からデカップルし、ノードバス67
に高インピーダンスを与える。
システムバス25を経ていかにデータが転送されるかを
説明するために、システムバスドライブイネーブル信号
79と制御信号85との間の関係を理解することが重要であ
る。ここに示す実施例では、この関係が第3図に示され
ている。システムバスドライブイネーブル信号79は、通
常、バスサイクルの始めから終りまで導出される。新た
なデータは、バスサイクルにおいてドライバ伝播及びバ
ス安定時間が経過した後のある時間にシステムバス25か
ら受け取られるようになる。好ましい実施例において
は、記憶要素80は透過ラッチである。制御信号85は、ク
ロックC45と論理的に透過である。バスのタイミング
は、制御信号85が否定される若干前にシステムバス25の
データが受け取られるように確保する。記憶要素80は、
制御信号85を否定する前の少なくとも設定時間に安定し
ていて且つ制御信号85を否定した後の保持時間中安定し
たまゝであるバスデータを記憶する。
ノードバス67は、ノードに特定の論理回路65とシステ
ムバス25との間でデータインターフェイス61により両方
向性のデータ転送を行なうことのできる非常に高速度の
データバスであるのが好ましい。第2図に示されたノー
ド60の好ましい実施例では、ノードバス67は、システム
バスインターフェイス64とノードに特定の論理回路65と
の間の点/点接続を形成する相互接続手段である。然し
乍ら、本発明によれば、このような点/点相互接続は必
要とされない。
第5図は、システムバス25に接続された中央アービタ
28の好ましい実施例を示している。中央アービタ28は、
システムバス25のためのクロック信号を発生すると共
に、システムバス25上のノードに対するバスの所有者関
係を許可する。中央アービタ28は、仲裁回路90と、クロ
ック回路95と、発振器97とを備えているのが好ましい。
発振器97は、基本的なクロック信号を発生する。クロッ
ク95は、仲裁回路90のタイミング信号と、システムバス
25上でタイミングをとるための基本的なTime H、Time L
及びPhaseクロック信号とを発生する。仲裁回路90は、
コマンダ及びレスポンダの要求信号を受け取り、システ
ムバス25にアクセスしようとしているノード間の競合の
仲裁を果たし、そしてコマンダ及びレスポンダの要求に
対する上記待ち行列を維持する。又、仲裁回路90は、幾
つかの制御信号をクロンク95へ供給する。
B.インターロック動作の説明 上記で簡単に述べたように、バス25において多数の種
々の形式のトランザクションを行なうことができる。各
々の場合に、トランザクションは、1つのノードから別
のノードへの1つ以上の別々の転送で構成される。レス
ポンダノードが1つ以上のバスサイクル中にコマンド転
送を首尾良く受け取ると、レスポンダノードは、各転送
サイクル後の第2のバスサイクルの始めにアクノーリッ
ジ確認信号を発生する。このようなアクノーリッジ信号
は、元の転送に含まれたコマンドが首尾良く実行された
ことを指示するものではなく、その転送が所望のレスポ
ンダノードの入力待ち行列に首尾良く入れられたことを
単に示すだけである。本発明に関連したトランザクショ
ンについては、以下で簡単に述べる。
読み取りトランザクションは、ある領域のアドレスス
ペースを管理しているレスポンダノードの特定の位置か
らコマンダノードへ4バイト、8バイト、16バイト又は
32バイトのブロックでデータを移動するのに用いられ
る。好ましい実施例においては、メモリ及びI/O動作が
共通のアドレススペースを参照するものである。レスポ
ンダノードは、メモリノードであってもよいし、プロセ
ッサノードであってもよいし、又はI/Oノードであって
もよい。
インターロック読み取りトランザクションは、読み取
りトランザクションに類似している。しかしながら、イ
ンターロック読み取りトランザクションの厳密な作用
は、レスポンダノードにおけるロックタグの状態に基づ
くものである。ロックタグは、アドレススペース内の位
置又は位置のグループへのアクセスを阻止する。ロック
タグの作用は、システム20のアドレススペースを金属性
の“ブラックボード(黒板)”にわたって現われるもの
として心に描くことによって理解することができよう。
ロックタグは、アドレススペース“ブラックボード”上
の位置又は位置のグループの最上部に除去可能に配置さ
れた磁気タグのように動作する。インターロック読み取
りトランザクションに指定されたアドレススペース内の
位置が既にロックタグで覆われている場合、換言すれ
ば、指定のアドレススペースが“ロック”されている場
合は、レスポンダノードは“ロック”された応答メッセ
ージを有するインターロック読み取り要求に応答し、デ
ータは返送されない。これは、インターロック読み取り
コマンドで指定されたアドレススペース内の位置にアク
セスできないことをコマンダに指示する。このロックさ
れた応答メッセージは、レスポンダノードがインターロ
ック読み取りコマンドを処理した後であって且つレスポ
ンダノードが再びバス25へのアクセス権を得られるよう
になった後にコマンダへ送信される。従って、コマンダ
は、インターロック読み取りトランザクションのコマン
ド転送後の不定の時間にロックされた応答メッセージを
受け取る。
指定の位置がロックされていない場合、換言すればロ
ックタグに関連されていない場合には、インターロック
読み取りコマンドで指定されたアドレスに記憶された情
報は、応答メッセージにおいて、インターロック読み取
りコマンドを発生したコマンダノードへ返送される。
又、レスポンダノードは、インターロック読み取りコマ
ンドで指定されたアドレススペース内の位置へロックタ
グを取り付け、これにより、その後のインターロック読
み取りコマンドに対しアドレススペース内の指定の位置
へのアクセスを拒絶する。
アンロック書き込みトランザクションは、インターロ
ック読み取りトランザクションに対して相補的なもので
ある。コマンダノードが読み取りを首尾良く完了しそし
て読み取り−変更−書き込み動作において位置を変更す
ると、インターロック読み取りコマンドによって一時的
にロックされたアドレススペース内の位置をアンロック
しなければならない。コマンダは、この動作と共に、ア
ドレススペース内の指定の位置に対してアンロック書き
込みトランザクションを実行し、適当に変更されたデー
タを指定の位置に書き込む。レスポンダノードは、アド
レススペースをアンロックしてデータを必要に応じて書
き込むことによりアンロック書き込みコマンドを処理す
る。次いで、ロックタグがクリアされる。
インターロック読み取りコマンド転送中にバス25を経
て送信されるメッセージは、64本のデータライン上にデ
ータを含んでいる。このデータは、4ビットのコマンド
フィールドと、例えば、メモリ39からプロセッサノード
31へ転送されるべきワードの数を指定する2ビット長さ
のフィールドと、データを読み取ろうとするメモリ39内
のアドレス位置を指定する30ビットのアドレスとを含ん
でいる。インターロック読み取りコマンド中に情報を搬
送するシステムバス25の他のラインは、コマンド転送を
指示する4ビットファンクションコードを搬送する4本
のファンクションラインと、インターロック読み取りコ
マンドを開始したコマンダノードを識別する6ビットコ
ードを搬送する6本のIDラインと、3本のパリティライ
ンとを含む。
上記で簡単に述べたように、システムバス25は、送信
器によってバスに送られた情報が首尾良く受け取られた
ことを指示するために受信器によって使用される応答信
号を含んでいる。好ましい実施例においては、この応答
信号は、3つの同一のワイヤードOR確認(CNF)ライン
を含む。これら3本のラインが設けられる理由は、特
に、I/Oレジスタへの書き込み又はインターロックコマ
ンドの場合に、レスポンダが各コマンドに応答して何を
行なったかをコマンダが厳密に知るというバストランザ
クションの完全性のために非常に重要だからである。そ
れ故、受信器は、3本のCNFライン全部をアサートする
ことによってアクノーリッジ(ACK)確認を送るか、又
は3本のCNFライン全部をアサートしないことによって
ノーアクノーリッジ(NACK)確認を送るかのいずれかで
ある。3本のCNFライン全部が同じ論理レベルで受信器
によって受け取られないかどうかについて真のCNF状態
を判断するためにエラー修正ロジックが受信器に設けら
れている。
ACK確認は、レスポンダが位置サイクルのコマンド転
送から情報を受け入れたことを指示するか、又はコマン
ダが位置サイクルの応答メッセージから情報を受け入れ
たことを指示する。ACK確認指示を生じる読み取りコマ
ンド転送サイクルは、レスポンサが若干時間的に後で読
み取り応答メッセージを返送することを指示する。
CNFラインを経て返送されたNACK確認は、受信器がコ
マンド転送のそのバスサイクルから情報を受け入れない
ことを指示する。これは次の3つの理由が考えられる。
(1)システムバス25上にパリティエラーが生じてい
る。(2)例えば、受信器の入力待ち行列がいっぱいの
ときに、受信器が一時的にコマンドを受け入れることが
できない。又は(3)指定のアドレスに対応するレスポ
ンダノードがない。
バスサイクルに対応する確認指示は、バスサイクルの
サイクルに続く第2のサイクルの始めに受信器ノードに
よってCNFラインに送り出される。
インターロック読み取りトランザクションの一例を第
6図について説明する。第6図の上部の水平軸は、バス
25における次々のバスサイクルを表している。第6図の
左側に沿って垂直に現われる表示は、バス25に含まれた
ラインのグループ、即ちファンクションライン、データ
ライン、IDライン、確認ライン及び仲裁ラインを示して
いる。第6図の水平及び垂直軸によって形成されるマト
リックスの入力は、指定のバスサイクル中に指定のバス
ラインに現われるデータの形式を示している。
バスサイクル0において、第1のコマンダノード、例
えば、第1図のノード31は、アービタ28へ至るCMD REQ
仲裁要求ライン(ポイント−ポイントラインの1つがア
ービタ28に接続され、第1図に示されている)をアサー
トする。従って、第6図は、サイクル1にシステムバス
25の仲裁ラインに現われる“cmdr#1"要求を指示する。
それより優先順位の高い他のノードがバスへ同時にアク
セスを要求していないと仮定すれば、プロセッサ31がサ
イクル1においてバスへのアクセス権を得、システムバ
ス25にメッセージを送信する。
サイクル1の間に、バス25のファンクションラインに
送られた情報は、バスの情報がコマンド(cmd)情報で
あることを指示する。バス25のデータラインに送られた
データは、現在のトランザクションをインターロック読
み取りトランザクションとして識別すると共に、プロセ
ッサ31へデータを返送すべきところのメモリ39のアドレ
スを指定するコマンド及びアドレス(c/a)データで構
成される。バスサイクル1中のIDラインは、バス25に現
在送信しているプロセッサ(コマンダ/cmdr)ノード31
の識別コードを含む。
バスサイクル2の間には、現在のインターロック読み
取りトランザクションに関連した情報がバス25に送られ
ない。
インターロック読み取りトランザクションを開始した
2サイクル(即ち所定時間)の後のバスサイクル3の始
めにメモリ39がバスサイクル1の間に送信されたコマン
ド転送を受け取っている場合には、メモリノード39がバ
ス25の確認ラインにACK確認信号を送信する。次いで、
メモリ39は、メモリ39の入力待ち行列にコマンドメッセ
ージを入れる。
バスサイクル3の終了は、インターロック読み取りト
ランザクションにおける第1の転送の終了となる。バス
25上のトランザクションは保留される性質のものである
から、要求された情報がメモリ39からプロセッサ31へ返
送される時間は正確に定められない。応答時間は、要求
を処理するためにメモリ39によって必要とされる時間
と、システムバス25が他のノードによって発生されたバ
ス25上の付加的なトラフィックを処理するを必要な時間
とに基づく。インターロック読み取りトランザクション
の2つのトランザクション間の時間が特定されないこと
は、バスサイクル3と4との間の第6図の点線によって
示される。従って、次の情報は第6図によりバスサイク
ル4ないし7に生じるものと示されるが、これはインタ
ーロック読み取りトランザクションに含まれるタイミン
グの特定例にすぎず、このようなトランザクションの第
2の転送がバス25の次のサイクルにおいて生じることを
理解されたい。
メモリ39は、インターロック読み取り転送メッセージ
をその入力待ち行列から順次に移動しそしてその転送に
含まれたアドレス情報を検査することによりインターロ
ック読み取りコマンドを処理する。この情報は、以下で
詳細に述べるロックタグに記憶されたアドレス値と比較
される。記憶されたアドレス値とインターロック読み取
り転送のアドレス情報との間に一致がある場合には、こ
れは、所望のアドレス位置がその手前のインターロック
読み取りコマンドによってロックされたことを指示す
る。次いで、メモリ39は、“ロックされた”ファンクシ
ョンコードを含むロックされた応答メッセージを、応答
メッセージに必要とされる他の情報と共にメモリノード
39の出力待ち行列に発生する。
ロックタグに記憶されたアドレス値とインターロック
読み取り転送アドレス情報との比較によって“ヒット”
が生じない場合には、即ち、転送されたアドレスが記憶
されたアドレスに対応しない場合には、メモリノード39
は、ファンクションラインに対する“良好な読み取りデ
ータ”(grdo)コードのような有効読み取り応答モード
と、データラインに対する指定のアドレス位置の内容
と、IDラインに対するインターロック読み取りコマンド
を開始したコマンダノードのコマンダ識別コードとで構
成される応答メッセージを形成する。この応答メッセー
ジはメモリノード39の出力待ち行列にロードされる。
メモリ39がインターロック読み取りトランザクション
を処理しそして以下で詳細に述べるようにその出力待ち
行列内に応答メッセージを発生すると、メモリ39は、ア
ービタ28に至るそのRES REQ要求ライン(第1図に示す
別のポイント−ポイントライン)をアサートする。従っ
て、仲裁ラインは、バスサイクル4に第6図に示すよう
なレスポンダ要求(resp)指示を搬送する。このときに
それより高い優先順位を有する他のノードがないと仮定
すれば、アービタ28は、バスサイクル5の間にバス25へ
のメモリ39のアクセスを許可する。メモリ39は、“良好
な読み取りデータ”(grdo)信号を含む応答メッセージ
をシステムバス25のファンクションラインに送信し、プ
ロセッサ31からメモリ39への最初の転送のアドレスフィ
ールドによって指定されたメモリ位置からシステムバス
25のデータラインを経て8バイト(即ち、64ビット)の
データを送信し、そしてプロセッサ31のIDをバス25のID
ラインに送信して、そのインターロック読み取り要求を
最初に発生したコマンダ(即ち、プロセッサ31)と戻り
データとを関連させる。
バスサイクル6の間に、このインターロック読み取り
トランザクションに関連したシステムバス25にはトラフ
ィックが現われない。更に、インターロック読み取りト
ランザクションは、バスサイクル7において、プロセッ
サ31がACK確認をバス25の確認ラインに送信した時に終
了となる。
メモリ内の同じ指定位置に対する第2のインターロッ
ク読み取りトランザクションは、第6図のサイクル8−
15に示すように、バス上に現われるデータを生じさせ
る。サイクル8において、第2のコマンダ(cmdr#2)
はアービタ28へのコマンダ要求を開始する。バスサイク
ル9−12は、サイクル1−4の同一のトラフィックをバ
ス25上に生じさせる。しかしながら、メモリ39は、受け
取ったインターロック読み取りコマンドを処理すると、
ロックタグに記憶されたアドレス値と、インターロック
読み取りコマンドと共に送られたアドレスとの間に一致
を見つける。従って、例えば、サイクル13においてバス
25のファンクションラインにLOC応答が現われる。バス
サイクル14及び15はサイクル6及び7と同一である。
C.プロセッサ31の説明 第7図は、プロセッサ31におけるノードに特定のロジ
ック65の幾つかの要素の詳細なブロック図が示されてい
る。プロセッサノード31は、全てのノードにおいてそう
であるように、バスインターフェイス64を備えている。
又、プロセッサノード31は、プロセッサロジック202も
備えている。第7図に示すように、プロセッサロジック
202は、当業者に良く知られたようにソフトウエアを実
行するのに必要な中央処理ユニット(CPU)回路を備え
ている。又、プロセッサロジック202は、必要なアプリ
ケーションファンクションを実行すると共にシステムバ
ス25上での転送を制御するためにシステム20によって必
要とされるコマンド及びアドレス情報を発生する。
又、プロセッサノード31は、バスインターフェイス64
から受け取ったシステムバス25のファンクション、デー
タ、ID及びパリティライン上の情報を監視して、良く知
られたようにこれら信号に対するパリティチェック動作
を実行するためのパリティエラーチェック回路204も備
えている。パリティエラーが検出されると、信号ライン
206にパリティエラー指示が発生される。
IDライン上の情報は、比較回路208によって監視さ
れ、この比較回路には、取り付けキャビネット内のプロ
セッサ31の位置によって決定されるバックプレーン上の
固定布線接続210からプロセッサ31の識別コードも送ら
れる。比較器207からの比較結果は、パリティエラー信
号ライン206上の情報と共に、ACK確認発生器208へ送ら
れる。パリティエラーが検出されずそして応答メッセー
ジとしてバス25を経て受け取ったIDコードがプロセッサ
31のIDコードと合致する場合には、プロセッサ31に送ら
れる応答転送の各サイクル後の第2バスサイクルの始め
に確認指示発生器208によってバス25のCNFラインにACK
指示が送られる。
バス25のファンクション及びデータライン上の情報は
バスインターフェイス64を経て応答デコーダ212へ送ら
れる。デコーダ212は、バス25上のメッセージがプロセ
ッサ31に対して意図されたものであるときに比較器207
によってイネーブルされる。これは、比較器207からの
肯定比較結果によって決定される。デコーダ212が比較
器207によってイネーブルされると、デコーダ212はシス
テムバス25のファンクションラインからのファンクショ
ンコードを抽出し、そして幾つかのファンクションコー
ドに対し、バス25のデータラインからプロセッサロジッ
ク202へコマンド及びデータ情報を供給し、適当な処置
を取るようにする。
本発明によれば、プロセッサは、プロセッサからのア
クセスコマンドが所定のロックアウトアサート基準に基
づいてリソースノードから充分な応答を受け取らなかっ
たときに、リソース拒絶指示に応答してロックアウトア
クチベータをアサートするための手段を備えている。こ
こに実施するように、このような手段は拒絶検出回路21
3を含む。ロック検出器213は、ロックされた応答コード
がデコーダ212によってデコードされたようにメモリ39
(第1図)からの応答メッセージにおいて受け取られた
ときに、バス25のファンクションラインから応答デコー
ダ212によって導出されたファンクション情報に応答し
てロックアウトアクチベータ215をアサートする。ロッ
クアウトアクチベータ215はドライバ255に送られ、ロッ
クアウトアクチベータ215がアサートされたときに、プ
ロセッサ31がロックアウトインジケータ240をアサート
するようにする。
本発明によれば、プロセッサは、バスを経てメモリへ
アクセスコマンドを送信するための手段も備えている。
ここに実施するように、この送信手段はコマンド発生器
214より成る。プロセッサ31がバス25上でトランザクシ
ョンを開始しようとするときには、コマンドアドレス及
びデータ情報が、接続部210から送られたプロセッサ21
のIDと共にコマンド発生器214へ送られる。コマンド発
生器214は、コマンドメッセージを用意し、プロセッサ3
1に対するコマンダ要求(CMD REQ)仲裁ライン216をア
サートする。
以下で詳細に述べるようにロックアウトチェック回路
250によって調整されるCMD REQライン216のゲート付き
のものであるライン216gは、プロセッサ31がコマンダメ
ッセージを送信するためにバス25へのアクセスを所望し
ていることをアービタ28(第7図に示さず)に指示す
る。アービタ28は、仲裁システムを用いて、元のインタ
ーロック読み取り転送の後の不定の時間にプロセッサ31
へのバスアクセスを許可する。
アクセスが許可されると、コマンド発生器214は、バ
スインターフェイス64がコマンド発生器214からシステ
ムバス25へのコマンドメッセージを送信するようにさせ
る。
インターロック読み取りコマンドが送られるレスポン
ダノードは、インターロック読み取りコマンド転送の2
サイクル後にACK確認信号を発生する。第7図に示すよ
うに、コマンド発生器は、CNFラインを監視し、プロセ
ッサ31によってシステムバス25にコマンド転送が送られ
た2つのバスサイクル後に、CNFバスラインにおけるACK
確認の存在を検出する。ACK確認の存在が確認されない
と、適当な修正処理が取られ、これは、好ましい実施例
では、その手前のコマンドを再送信することよりなる。
転送が完了すると、レスポンダノードはインターロック
読み取りコマンドを処理しそして応答メッセージをシス
テムバス25に返送する。システムバス25上のトラフィッ
ク及び待ち行列の長さによって不確定であるために、レ
スポンダノードは、コマンド転送後の不定の時間に応答
メッセージを発生する。
システム20は、ワイヤードORラインを含むロックアウ
トインジケータ240を備えている。このロックアウトイ
ンジケータ240を備えている。このロックアウトインジ
ケータ240は、これがアサートされたときに動作して、
インターロック読み取りコマンドを発生するのを制限す
る。好ましい実施例においては、ロックアウトインジケ
ータ240は全てのノードに接続されている。しかしなが
ら、本発明では、必ずしもロックアウトインジケータ24
0が全てのノードに接続されなくても良い。
本発明によれば、プロセッサは、ロックアウトインジ
ケータを監視し、ロックアウトインジケータがアサート
状態にあるときに所定のアクセスゲート基準に基づいて
プロセッサによるアクセスコマンドの発生を阻止するた
めのロックアウトチェック手段を備えている。ここに実
施するように、ロックアウトチェック手段はロックアウ
トチェック回路250より成る。このロックアウトチェッ
ク回路250は、プロセッサ31がバス25へのアクセスを許
可されるときにアサートされるバスインターフェイス64
からのラインである許可信号252を受信する。又、ロッ
クアウトチェック回路250は、プロセッサロジック202か
らインターロック読み取りコマンド指示254を受け取
り、ロックアウト検出器213からロックアウトアクチュ
ベータ215を受け取り、そしてロックアウトインジケー
タ240から信号を受け取る。ロックアウトチェック回路2
50は、ロックアウトインジケータ240の状態を監視し、
ある状態のもとで、ロックアウトインジケータ240がア
サートされたときに、ロックアウトチェック回路がアー
ビタ28へ至るライン26g上にCND REQレベルが発生される
のを抑制し、プロセッサ31がインターロック読み取り転
送を発生しないようにする。
別の実施例においては、ロックアウトチェック手段は
プログラム可能なロジックアレイによって形成された状
態マシーンに組み込まれても良い。
D.メモリ39の説明 第8図は、レスポンダノードとして働くことのできる
メモリ39のブロック図である。第8図に示すように、メ
モリ39は、コマンドデコード/アドレス/パリティチェ
ック回路300を備えている。この回路300は、バスファン
クション、アドレス及び識別子ラインに接続され、良く
知られたようにパリティチェックを行なう。又、回路30
0は、バスアドレスライン上の情報を、レジスタ302から
送られてメモリ39により作用されるアドレススペースの
限界と比較し、この比較の結果をアドレス一致ライン30
1に供給する。バス25を経て受け取られたアドレス情報
がメモリ39により作用されるアドレススペースのレンジ
内にありそしてパリティエラーが生じていない場合に
は、回路300に接続されたACK確認発生器304が、メモリ3
9を行き先とする転送の送信サイクル後の第2サイクル
の始めに3本のCNFライン全部をアサートすることによ
り、ACK確認信号を発生する。
メモリ39は、バス25を経そしてバスインターフェイス
ユニット64を経て受け取ったメッセージ(ファンクショ
ン、ID及びデータ情報より成る)を記憶するための入力
待ち行列306を備えている。この入力待ち行列306は、バ
ス25を経て高い速度で受け取ったメッセージを、メモリ
39の比較的低速のロジックによる作用を受けられるよう
になるまで記憶することができる。入力待ち行列306
は、バス25のメッセージのデータフィールドに現われる
アドレス情報がアドレス一致信号301のレベルによって
決定されるメモリ39に対するアドレススペースの範囲内
にあるときに、バス25からメッセージを記憶することが
できる。
入力待ち行列306の出力はデコーダ308に送られ、該デ
コーダは、入力待ち行列306に記憶されたメッセージか
らアドレス及びコマンド情報を抽出する。デコーダ308
は、種々のコマンドをデコードするために多数の指示を
供給すると共に、1組の並列信号ラインにアドレス情報
を与えるが、デコーダ306のアドレス及びコマンド出力
は、第8図において、図示明瞭化のために束ねられたラ
イン309及び311として各々示されている。
本発明によれば、メモリは、プロセッサからのアクセ
スコマンドに応答する手段を含む。ここに実施するよう
に、このような手段は、ロック制御器310及びメモリア
レイ312を含む。ロック制御器310は、参考としてここに
取り上げる1987年5月1日出願の前記米国特許出願第04
4,954(D−87−073−DEC136)に詳細に説明されてい
る。アドレス及びコマンド情報はロック制御器310に送
られ、該制御器はインターロック読み取りコマンド及び
アンロック書き込みコマンドの処理を助成する。又、レ
コーダ308からのアドレス及びコマンド情報はメモリア
レイ312にも送られる。メモリアレイ312は、読み取り及
び書き込みコマンドに応答して、デコーダ308から受け
取ったアドレス情報により指定されたアレイ312内の位
置からデータを読み取ったりそこにデータを書き込んだ
りする。良く知られているように、情報は、メモリアレ
イ312において複数の別々の位置に記憶され、これらの
位置は、アレイ312に送られる読み取り及び書き込みコ
マンドによって指定されるアドレスによって識別され
る。
制御器310からのロック状態信号314と、メモリアレイ
312からのメモリデータは、応答発生器316に送られそし
てこの発生器は出力応答メッセージを発生する。発生器
312からの応答メッセージは、メモリ39が前記の仲裁プ
ロセスによってバスへのアクセス権を得るまで、出力待
ち行列318に送られて記憶される。
メモリ39は、応答発生器316及び出力待ち行列318を備
えている。応答発生器316は、メモリ312から受け取った
データと、制御器310から受け取ったロック状態信号314
のレベルと、デコーダ308から受け取ったコマンド及びI
D情報とに基づいて応答メッセージを形成する。発生器3
16によって形成された応答メッセージは、メモリ39が要
求されたデータを供給できるかどうかに基づいて2つの
形式のいずれかとなる。応答されるコマンドが非インタ
ーロック読み取りコマンドである場合又はコマンドがイ
ンターロック読み取りコマンドで且つロック状態信号31
4がアサートされない場合、応答発生器316は、メモリ31
2内の指定の位置の要求された内容を含む第1形式のメ
ッセージを形成する。しかしながら、コマンドがインタ
ーロック読み取りコマンドであり且つロック状態ライン
314がアサートされた場合には、応答発生器316は、ファ
ンクションラインに対する“ロックされた”コードを有
する第2形式のメッセージを形成し、これは、インター
ロック読み取りコマンドの指定されたアドレスがロック
された状態にあること、ひいては、要求されたデータが
その受け取ったインターロック読み取りコマンドに応答
してメモリ39によって送られた応答メッセージにないこ
とを指示する。
発生器316が応答メッセージをコイパイルすると、こ
れが出力待ち行列318に送られる。出力待ち行列318は、
メモリ39がバス25へのアクセスを望んでいることをバス
インターフェイス64に知らせる。応答メッセージは、こ
のようなアクセスが得られるまで不定の時間中出力待ち
行列318に記憶される。
メモリ39がバス25へのアクセスを許可されると、出力
待ち行列318に含まれた応答メッセージがシステムバス2
5に送られ、そのコマンドを最初に発生したコマンダノ
ードへ送られる。メモリ39がコマンダノードによって最
初に送られたコマンドの実行をいつ完了するかは分から
ず、そしてメモリ39がその要求されたデータ又はロック
状態情報のいずれかを供給するためにバス25へのアクセ
ス権をいつ得るかも確かではないので、インターロック
読み取りコマンドに対応するロック状態情報は、元のイ
ンターロック読み取りコマンドの開始に続く不定の時間
にコマンダノードにおいてバス25のファンクションライ
ンに現われる。
E.ロックアウトチェック回路250及びロック検出器213の
説明 本発明によれば、ロックアウトインジケータを監視す
ると共に、ロックアウトインジケータがアサート状態に
あるときに所定のアクセスゲート基準に基づいてプロセ
ッサによりメモリに送られるアクセスコマンドの発生を
阻止するためにロックアウトチェック手段が含まれてい
る。ここに実施するように、このロックアウトチェック
手段は、ロックアウトチェック回路250を備えている。
プロセッサは、更に、リソース拒絶指示に応答して、プ
ロセッサからのアクセスコマンドが所定のロックアウト
アサート基準に基づいてメモリにより充分な応答を受け
取らなかったときにロックアウトアクチュベータをアサ
ートするための手段を備えているのが好ましい。ここに
実施するように、このようなアサート手段は、リソース
拒絶指示に応答する拒絶検出回路213を備えており、上
記拒絶指示は、好ましい実施例では、ロックされた応答
よりなる。第9図は、拒絶検出回路213及びロックアウ
トチェック回路250のブロック図である。
デコーダ212は、ロックされた応答又は有効読み取り
データ応答の存在を各々指示する制御ライン403及び404
に信号を供給する。ロックされた応答信号403は拒絶回
路213のセット端子に送られ、該回路213は、好ましい実
施例では、セット/リセット記憶要素であり、そのリセ
ット端子は有効読み取りデータ応答信号404に接続され
る。記憶要素213の出力はロックアウトアクチュベータ2
15を構成し、これはドライバ255に送られて、ロックさ
れた応答がプロセッサ31によりバス25を経て受け取られ
たときにロックアウトインジケータ240が拒絶検出回路2
13によってアサートされるようになっている。
プロセッサ31が単一のロックされた応答を受信するこ
とが所定のロックアウトアサート基準を満たす。即ち、
単一のロックされた応答は、プロセッサ31により、プロ
セッサ31がメモリ39への充分なアクセスを得ず即ち維持
しないという指示として解釈される。本発明は、好まし
い実施例に用いられる特定のロックアウトアサート基準
に限定されるものではなく、他の基準を使用してもよい
ことを理解されたい。例えば、記憶要素213に代わって
カウンタを使用し、プロセッサ31が複数のロックされた
応答、例えば、3つのロックされた応答を受け取ったと
きにのみロックアウトインジケータ240がセットされる
ようになっていてもよい。あるいは又、拒絶検出回路と
してタイマを設けることもできる。
又、ロックアウトアクチュベータ215はロックアウト
チェック回路250に接続される。ロックアウトチェック
回路250は、3入力のアンドゲート408を含んでいる。こ
のアンドゲート408への第1入力はロックアウトインジ
ケータ240である。アンドゲート408への第2入力は、ロ
ックアウトアクチベータ215の反転されたレベルであ
る。アンドゲートへの第3入力は、プロセッサロジック
202からのインターロック読み取りライン254であり、こ
れがアサートされると、インターロック読み取りトラン
ザクションがプロセッサロジック202によって現在要求
されていることを指示する。
アンドゲート408の出力は、“抑制”インジケータを
構成し、これは反転された形態で2入力アンドゲート41
0へ送られる。このアンドゲート410の他方の入力は、コ
マンド発生器214からのCMD REQ(コマンダ要求)ライン
216である。アンドゲート410の出力は、記憶要素414の
セット端子に送られる。記憶要素414のリセット端子
は、バスインターフェイス64(第7図)から送られる許
可信号252が送られ、バスインターフェイス64は、これ
がアサートされると、プロセッサ31がバス25へのアクセ
ス権を得たことを指示する。
拒絶検出器213及びロックアウトチェック回路250は、
ロックアウトインジケータ240と共に、ノード31を含む
プロセッサノードによってメモリ39への充分なアクセス
を確保するための方法及び装置を構成する。インターロ
ック読み取りコマンドに応答してロックされた応答がプ
ロセッサ31によりメモリ39から受け取られると、これ
は、プロセッサ31がメモリ39の1部分へのアクセスを拒
絶されたことを示す。ロックアウトインジケータ240を
セットすることにより、プロセッサ31は、他の処理ノー
ドが新たなロックアウト読み取りコマンドの発生を制限
できるようにする。特に、プロセッサ31によりロックさ
れた応答を受け取りそしてロックアウトインジケータ24
0がその後にアサートされると、ロックアウトインジケ
ータ240をアサートする前にインターロック読み取りコ
マンドに対してまだバスアクセスを要求していないロッ
クアウトインジケータ24に接続されたプロセッサノード
は、新たなインターロック読み取りコマンドを発生する
ことができない。これは、アンドゲート408によりCMD R
EQラインの抑制によって行なわれる。この抑制は、好ま
しい実施例の所定のアクセスゲート基準を構成する次の
ような条件が存在する場合に行なわれる。即ち、(1)
インターロック読み取り動作がプロセッサによって要求
されている(即ち、ライン254がアサートされてい
る)。(2)このノードに対するロックアウトアクチベ
ータ215が現在アサートされていない。そして(3)ロ
ックアウトインジケータ240がアサートされている。
もちろん、他のアクセスゲート基準を設けることもで
きる。例えば、CMD REQラインの抑制は、所定時間以上
にわたって有効読み取りデータ応答を収集するためにプ
ロセッサ31の欠陥に基づいて決めることができる。
拒絶検出回路213及びロックアウト回路250の必ずしも
両方がロックアウトコマンダノードに存在しなくてもよ
い。即ち、ロックアウトインジケータ240をセットする
が、アクセスコマンド又はアクセス拒絶コマンドの発生
を阻止しないようなコマンダノードを設けることが所望
される。
多ノードシステムにおける本発明の好ましい実施例の
動作の一例が第10図に示されている。第10図は、システ
ム20と同様のシステムにおける4つのプロセッサノー
ド、より詳細には、ノード15、7、6及び2の特性を示
している。というのは、これらノードは、首尾良く行な
われるインターロック読み取りトランザクション及びア
ンロック書き込みトランザクションより成るインターロ
ックシーケンスを用いて読み取り−変更−書き込み動作
を実施するからである。最も左側の欄はバス25における
任意のトランザクション番号を示している。第10図の左
側にある次の3つの欄は、このトランザクション中コマ
ンダとなるノードを各々示しており、コマンド情報の形
式はそのノードによってバスに送られ、そして応答メッ
セージはメモリ39によりノードコマンドに応答して返送
される。第10図の次の欄は、所与の時点でロックアウト
インジケータ240をアサートするノードを示している。1
5、7、6及び2と番号が付けられた欄は、各時間の終
わりにおける各々のノード15、7、6及び2の状態を示
している。第10図におけるノードの番号は、キャビネッ
トにおけるそれらの物理的な位置を示すもので、添付図
面における参照文字ではない。
第10図に示されたトランザクション#1を開始する前
に、即ち、第10図の最も上の行の前に、ノード15、7及
び6は全てインターロック読み取りトランザクション発
生状態にある。換言すれば、これらのノードの各々は、
メモリ39内の同じ位置へのアクセス権を得ようとしてい
る。ノード2はアイドル状態にある。
トランザクション#1において、ノード15はバス25へ
のアクセス権を得て、インターロック読み取り要求をバ
スに送り出す。ノード15はメモリ39内の特定の位置への
アクセスを最初に得るものであるから、この位置がアン
ロックされそしてメモリ39は有効読み取りデータ(GR
D)応答をバス25のファンクションラインに返送する。
このときにロックアウトインジケータ240をアサートし
ているノードはない。ノード15は有効読み取りデータ応
答を受け取っているから、アンロック書き込み発生状態
へと進む。ノード7及び6は、インターロック読み取り
トランザクション発生状態に保たれる。
第10図のトランザクション#2において、ノード7は
バスのアクセス権を得そして同じメモリ位置に対してイ
ンターロック読み取りトランザクションを開始する。ノ
ード15は既にその位置をアクセスしていて、メモリ30が
その位置をロックしているので、メモリ39はロックされ
た(LOC)応答メッセージをバス25のファンクションラ
インに返送する。ここで、ノード7はロックされた応答
を受け取るので、ノード7は、第10図の第3行目に示す
ようにロックアウトインジケータ240をアサートする。
ノード7及び6は、インターロック読み取りトランザク
ション発生状態に保持される。ノード2はアイドリング
状態に保持される。
トランザクション#3において、ノード6はバスへの
アクセス権を得そしてメモリ39内の同じ位置に対してイ
ンターロック読み取りトランザクションを開始する。こ
の位置は、ノード15の最初のインターロック読み取り動
作によってまだロックされているので、ノード6はバス
25のファンクションラインを経てロックされた応答を受
ける。又、ノード6はロックアウトインジケータ240を
アサートする。この点において、ノード7および6の両
方がロックアウトインジケータ240をアサートする。ノ
ード15は、バス25へのアクセス権をまだ得ることができ
ないので、アンロック書き込み発生状態に保持される。
同様に、ノード7及び6は、インターロック読み取りト
ランザクションを首尾良く完了できないので、インター
ロック読み取りトランザクション発生状態に保持され
る。
トランザクション#3において、ノード15は、バスへ
のアクセス権を得そしてアンロック書き込みトランザク
ションを実行して、このインターロックシーケンスを完
了する。第10図に示すように、応答メッセージは必要と
されない。ノード7及び6の両方は保留中のインターロ
ック読み取り要求が首尾良く終わっていないので、ノー
ド7及び6はロックアウトインジケータ240をアサート
し続ける。ノード15はアイドリング状態に復帰し、ノー
ド7及び6はインターロック読み取り発生状態に保たれ
る。トランザクション#4において、ノード2がインタ
ーロック読み取りトランザクションを開始すると判断さ
れたと仮定する。しかし、この動作は、ノード7により
ロックアウトインジケータ240がアサートされるまで開
始されないので、ノード2は、トランザクション発生状
態に入らず、インターロック読み取り待機状態(IRW)
に入る。
トランザクション#5において、ノード7はバスへの
アクセス権を得そしてインターロック読み取りトランザ
クションを開始する。メモリ内の指定の位置はノード15
の手前のアンロック書き込みトランザクションによって
アンロックされているので、ノード7は指定のメモリ位
置に含まれた情報へのアクセス権を得ることができ、メ
モリ39は、有効読み取りデータ応答メッセージをバス25
のファンクションに供給する。ノード7はそのデータを
首尾良く得ているので、もはやロックアウトインジケー
タ240をアサートせず、アンロック書き込み状態に入
る。ノード7のインターロック読み取りトランザクショ
ンが首尾良く終わると、メモリ39は指定の位置及びメモ
リのロックビットをセットする。ノード6はロックアウ
トインジケータ240をアサートし続ける。ノード15はア
イドリング状態に保持される。ノード6はインターロッ
ク読み取り発生状態に保持されそしてノード2はインタ
ーロック読み取り待機状態に保持される。
トランザクション#6においてノード6はバス25への
アクセス権を得、インターロック読み取りトランザクシ
ョンを開始する。しかし、メモリ内の指定の位置は、ノ
ード7の直前のインターロック読み取りトランザクショ
ンによりロックされている。従って、メモリ39は、バス
25のファンクションラインを経てノード6へロックされ
た応答を返送する。これにより、ノード6はロックアウ
トインジケータ240をアサートし続ける。このとき、ノ
ード15は別のインターロック読み取りトランザクション
の開始のみを試みている。然し乍ら、このトランザクシ
ョンの開始はロックアウトインジケータ240がアサート
する前に行なわれないので、ノード15はインターロック
読み取り待機状態に入れられる。読み取り−変更−書き
込み動作の“読み取り”及び“変更”部分を完了したノ
ード7は、ここでアンロック書き込み発生状態となる。
ノード6はインターロック読み取り発生状態に保持され
そしてノード2はインターロック読み取り待機状態に保
持される。
トランザクション#7において、ノード7はバス25へ
のアクセス権を得そしてアンロック書き込みトランザク
ションを実行し、これによりこのインターロックシーケ
ンスを完了する。応答メッセージは返送されない。ノー
ド6はインターロック読み取りトランザクションを首尾
良く完了していないので、ノード6はロックアウトイン
ジケータ240をアサートし続ける。ノード15はインター
ロック読み取り待機状態に保たれ、そして読み取り−変
更−書き込み動作の全ての段階を首尾良く終了したノー
ド7はアイドリング状態に入る。ノード6は、インター
ロック読み取り発生状態に保持されそしてノード2はイ
ンターロック読み取り待機状態に保持される。メモリ39
の指定の位置のロックビットはリセットされる。
第10図のトランザクション#8において、ノード6は
バス25へのアクセス権を得そしてインターロック読み取
りトランザクションを開始する。メモリ内の指定の位置
はここで手前のトランザクションにおけるノード7のア
ンロック書き込みトランザクションによってアンロック
されるので、ノード6は指定の位置へのアクセス権を首
尾良く得ることができそしてメモリ39は有効読み取りデ
ータ応答メッセージを返送する。インターロック読み取
りトランザクションを試みた全てのノードはこのような
トランザクションを首尾良く完了しているので、ロック
アウトインジケータ240をアサートするノードはない。
従って、ノード15及び2はインターロック読み取り待機
状態からインターロック読み取り発生状態へ移行するこ
とができる。次いで、ノード6はアンロック書き込み発
生状態に入る。
第10図のトランザクション#9において、ノード6は
バス25へのアクセス権を得そしてアンロック書き込みト
ランザクションを実行し、アイドリング状態に復帰す
る。応答メッセージは返送されない。ロックされた応答
を受け取ったノードはないので、その時ロックアウトイ
ンジケータ240をアサートしているノードもない。ノー
ド15、7及び2は全てその手前のトランザクションと同
じ状態にある。
以上、メモリノードがインターロック動作によりリソ
ース拒絶指示を返送するようなインターロック読み取り
/アンロック書き込みトランザクションについて本発明
を詳細に述べたが、本発明はこれに限定されるものでは
ない。むしろ、本発明は、他の形式のリソースへの充分
なアクセスを確保するように適応できる。例えば、本発
明は、メモリノードの入力待ち行列に対する充分なアク
セスを確保するように適応できる。“ノーアクノーリッ
ジ”指示は、メモリ入力待ち行列がいっぱいであるため
にメモリへのアクセスコマンドが拒絶されたプロセッサ
ノードへ転送されるので、このような“ノーアクノーリ
ッジ”メッセージがリソース拒絶指示を構成する。従っ
て、ロックアウトインジケータ240は、ロックアウトチ
ェック手段と、“ノーアクノーリッジ”指示を送信及び
受信するための手段に組み合わせて使用されて、適当な
状態のもとで、プロセッサがメモリ内の入力待ち行列に
よる処理を必要とするそれ以上のアクセスコマンドを発
生しないよう禁止することができる。従って、メモリに
対する要求は、メモリノードがその入力待ち行列におけ
るバックログを減少できるときまで低減できる。
インターロック読み取りアンロック/書き込み動作に
ついて上記で詳細に述べたのと同様に、本発明は、全て
のノードによるメモリノード入力待ち行列リソースへの
充分なアクセスを確保できる。同様に、本発明の原理を
用いて、アダプタ41(第1図)の入力待ち行列への充分
なアクセスも確保できる。又、本発明は、I/O制御器及
びプロセッサのようなノードにおける制御/状態レジス
タへの充分なアクセスを確保するように適応することも
できる。
本発明の精神又は範囲から逸脱せずに本発明の装置及
び方法に種々の変更や修正がなされうることが当業者に
明らかであろう。本発明は、請求の範囲及びそれらの等
効物の中に入るこのような全ての変更や修正を網羅する
ものとする。
フロントページの続き (56)参考文献 特開 昭62−166464(JP,A) 特開 昭58−140862(JP,A) 特開 昭56−105521(JP,A) 特開 昭59−173866(JP,A) 特表 平2−500783(JP,A)

Claims (16)

    (57)【特許請求の範囲】
  1. 【請求項1】複数のコマンダノードと、レスポンダノー
    ドであってアクセスコマンドに応答して該レスポンダノ
    ードへのアクセスを制限すると共にリソース拒絶指示を
    送信して上記レスポンダノードへのアクセスコマンドが
    拒絶されたことの指示を与えるレスポンダノードと、ロ
    ックアウトアクチベータに応答してアサート状態と非ア
    サート状態との間を切り換わるロックアウトインジケー
    タとを備えている多ノードデータ処理システムにおける
    1つのコマンダノードであって、このコマンダノード
    は、 上記レスポンダノードへ上記アクセスコマンドを発生す
    る手段と、 上記リソース拒絶指示に応答し、上記1つのコマンダノ
    ードにより上記リソース拒絶指示が受信された後に所定
    のロックアウトアサート基準に基づいて上記ロックアウ
    トアクチベータを発生して、上記複数のコマンダノード
    の内の他のコマンダノードが上記アクセスコマンドを発
    生することを阻止する手段と、 上記ロックアウトインジケータに応答し、上記ロックア
    ウトインジケータがアサートされた後に上記1つのコマ
    ンダノードが上記アクセスコマンドの発生の開始を試み
    ている時のみ、所定のアクセスゲーティング基準に基づ
    いて、上記アクセスコマンドを発生する手段を利用不可
    能とするロックアウトチェック手段とを具備することを
    特徴とするコマンダノード。
  2. 【請求項2】複数のコマンダノードと、レスポンダノー
    ドであって排他的なアクセスコマンドに応答して該レス
    ポンダノードへのアクセスを制限すると共にロックされ
    た応答を送信して上記レスポンダノードへの排他的なア
    クセスコマンドが拒絶されたことの指示を与えるレスポ
    ンダノードと、ロックアウトアクチベータに応答してア
    サート状態と非アサート状態との間を切り換わるロック
    アウトインジケータとを備えている多ノードデータ処理
    システムにおける1つのコマンダノードであって、この
    コマンダノードは、 上記レスポンダノードへ上記排他的なアクセスコマンド
    を発生する排他的アクセスコマンド発生手段と、 上記ロックされた応答に応じて、上記1つのコマンダノ
    ードにより上記ロックされた応答が受信された後に所定
    のロックアウトアサート基準に基づいて上記ロックアウ
    トアクチベータを発生して、上記複数のコマンダノード
    の内の他のコマンダノードが上記アクセスコマンドを発
    生することを阻止する手段と、 上記ロックアウトインジケータに応答し、上記ロックア
    ウトインジケータがアサートされた後に上記1つのコマ
    ンダノードが排他的アクセスコマンドの発生の開始を試
    みている時のみ、所定のアクセスゲーティング基準に基
    づいて、上記排他的アクセスコマンド発生手段を利用不
    可能にするロックアウトチェック手段とを具備すること
    を特徴とするコマンダノード。
  3. 【請求項3】上記レスポンダノードによって発生された
    ロックされた応答に応じて、上記所定のロックアウトア
    サート基準に基づき上記ロックされた応答を受けた後に
    上記ロックアウトインジケータを非アサート状態からア
    サート状態に作動する手段を備えている請求項2記載の
    コマンダノード。
  4. 【請求項4】多ノードデータ処理システム内の複数のコ
    マンダノードの1つによってレスポンダノードへの充分
    なアクセスを確保する方法であって、上記ノードはバス
    によって相互接続され、上記レスポンダノードは、上記
    複数のコマンダノードからのアクセスコマンドに応答
    し、上記コマンダノードの1つからのアクセスコマンド
    が実行されなかったときに上記コマンダノードの1つに
    リソース拒絶指示を発生し、上記システムは、ロックア
    ウトアクチベータに応答するロックアウトインジケータ
    を含み、該インジケータは、全ての上記コマンダノード
    が所定のロックアウトアサート基準に基づいて上記レス
    ポンダノードへのアクセスを維持することを示す第1状
    態と、少なくとも1つのコマンダノードが上記所定のロ
    ックアウトアサート基準に基づき上記レスポンダノード
    へのアクセスを達成しないときの第2状態との間を切り
    換わるものであり、上記方法は、 上記アクセスコマンドを発生し、 上記ロックアウトインジケータを監視し、 そして 上記ロックアウトインジケータが上記第2状態に設定さ
    れた後に、アクセスコマンドの発生の開始を試みている
    コマンダノードによる上記アクセスコマンドの発生を所
    定のアクセスゲーティング基準に基づいて阻止する段階
    を具備することを特徴とする方法。
  5. 【請求項5】上記コマンダノードの1つによって受け取
    られた上記リソース拒絶指示の数が所定の限界値を越え
    たときにロックアウトインジケータを動作する付加的な
    段階を含む請求項4に記載の方法。
  6. 【請求項6】多ノードデータ処理システムにおいてコマ
    ンダノードによってレスポンダノードへの充分なアクセ
    スを確保する方法であって、上記ノードはバスによって
    相互接続され、上記レスポンダノードは、複数のコマン
    ダノードからの排他的なアクセスコマンドに応答し、こ
    のレスポンダノードへのアクセスを制限するためにこの
    排他的なアクセスコマンドを受け取ったときにロック機
    構をセットし、上記ロック機構がセットされる時、上記
    コマンダノードの1つからの第2の排他的アクセスコマ
    ンドを受けたときに上記コマンダノードの1つにロック
    された応答を発生し、上記システムは、ロックアウトア
    クチベータに応答するロックアウトインジケータを含
    み、該インジケータは、全ての上記コマンダノードが所
    定のロックアウトアサート基準に基づいて上記レスポン
    ダノードへのアクセスを維持することを示す第1状態
    と、少なくとも1つのコマンダノードが上記所定のロッ
    クアウトアサート状態に基づき上記レスポンダノードへ
    のアクセスを達成しないときの第2状態との間を切り換
    わるものであり、上記方法は、 上記排他的なアクセスコマンドを発生し、 上記ロックアウトインジケータを監視し、 そして 上記ロックアウトインジケータが上記第2状態に設定さ
    れた後、排他的なアクセスコマンドの発生の開始を試み
    ているコマンダノードによってのみ、所定のアクセスゲ
    ーティング基準に従って、上記排他的なアクセスコマン
    ドの発生を阻止する段階を具備することを特徴とする方
    法。
  7. 【請求項7】上記コマンダノードの1つによって受け取
    られた上記ロックされた応答の数が所定の限界値を越え
    たときにロックアウトインジケータを動作する付加的な
    段階を含む請求項6に記載の方法。
  8. 【請求項8】保留バスに接続された複数のコマンダノー
    ドを有するマルチプロセッサコンピュータシステムにお
    いてリソースノードに対して充分なアクセスを有する1
    つのコマンダノードであって、上記リソースノードは、
    アクセスコマンドに応答して、上記アクセスコマンドが
    実行されないときにリソース拒絶指示を発生し、上記シ
    ステムは、アサート状態と非アサート状態との間のロッ
    クアウトアクチベータに応答して作動するロックアウト
    インジケータを含んでおり、上記1つのコマンダノード
    は、 上記バスを経て上記リソースノードへ上記アクセスコマ
    ンドを送信する手段と、 上記リソース拒絶指示を応答し、上記アクセスコマンド
    が上記リソースノードから充分な応答を受け取られなた
    った時に所定のロックアウトアサート基準に基づいてロ
    ックアウトアクチベータをアサートし、上記複数のコマ
    ンダノードの内の他のコマンダノードが上記アクセスコ
    マンドを発生することを阻止する手段と、 上記ロックアウトインジケータに応答し、上記ロックア
    ウトインジケータがアサートされた後に、上記1つのコ
    マンダノードがアクセスコマンドの発生の開始を試みて
    いる時だけ、所定のアクセスゲーティング基準に従って
    上記アクセスコマンド発生手段を利用不可能とするロッ
    クアウトチェック手段とを具備することを特徴とするコ
    マンダノード。
  9. 【請求項9】上記ロックアウトインジケータは単一信号
    のラインより成る請求項8に記載のコマンダノード。
  10. 【請求項10】上記ロックアウトインジケータ信号ライ
    ンは、ワイヤードOR接続により上記複数のコマンダノー
    ドの各々に接続される請求項9記載のコマンダノード。
  11. 【請求項11】上記所定のロックアウトアサート基準
    は、単一のリソース拒絶指示の受信により満たされる請
    求項8に記載のコマンダノード。
  12. 【請求項12】上記所定のロックアウトアサート基準
    は、複数のリソース拒絶指示の受信により満たされる請
    求項8に記載のコマンダノード。
  13. 【請求項13】上記所定のロックアウトアサート基準
    は、所定時間以上のリソース拒絶指示の受信により満た
    される請求項8に記載のコマンダノード。
  14. 【請求項14】上記所定のロックアウトアサート基準
    は、所定時間以上上記リソースノードへのアクセスを得
    ることを上記1つのコマンダノードが失敗することによ
    り満たされる請求項8に記載のコマンダノード。
  15. 【請求項15】アクセスコマンドを送信する上記手段
    は、排他的アクセスコマンドを送信する手段を備えてい
    る請求項8に記載のコマンダノード。
  16. 【請求項16】上記排他的アクセスコマンドは、インタ
    ーロック読み取りコマンドを備えている請求項15に記載
    のコマンダノード。
JP63504650A 1987-05-01 1988-04-22 マルチプロセッサコンピュ―タシステムにおいてシステムリソ―スへの充分なアクセスを確保するコマンダノ―ド方法及び装置 Expired - Fee Related JP2504552B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US4504387A 1987-05-01 1987-05-01
US045,043 1987-05-01
US45,043 1987-05-01

Publications (2)

Publication Number Publication Date
JPH02500226A JPH02500226A (ja) 1990-01-25
JP2504552B2 true JP2504552B2 (ja) 1996-06-05

Family

ID=21935711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63504650A Expired - Fee Related JP2504552B2 (ja) 1987-05-01 1988-04-22 マルチプロセッサコンピュ―タシステムにおいてシステムリソ―スへの充分なアクセスを確保するコマンダノ―ド方法及び装置

Country Status (7)

Country Link
EP (1) EP0346401B1 (ja)
JP (1) JP2504552B2 (ja)
KR (1) KR930006309B1 (ja)
AU (1) AU596535B2 (ja)
CA (1) CA1301356C (ja)
DE (1) DE3884606T2 (ja)
WO (1) WO1988008572A1 (ja)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS592051B2 (ja) * 1980-01-26 1984-01-17 工業技術院長 相互排他要求選択装置
JPS58140862A (ja) * 1982-02-16 1983-08-20 Toshiba Corp 相互排他方式
US4490785A (en) * 1982-05-07 1984-12-25 Digital Equipment Corporation Dual path bus structure for computer interconnection
US4543628A (en) * 1983-01-28 1985-09-24 Digital Equipment Corporation Bus for data processing system with fault cycle operation
JPS59173866A (ja) * 1983-03-24 1984-10-02 Nec Corp ロツク制御方式
AU564271B2 (en) * 1983-09-22 1987-08-06 Digital Equipment Corporation Retry mechanism for releasing control of a communications path in a digital computer system
JPS60107170A (ja) * 1983-11-15 1985-06-12 Nec Corp マルチプロセッサ制御方式
JPS62166464A (ja) * 1986-01-20 1987-07-22 Nec Corp 多重化処理装置の競合制御方式

Also Published As

Publication number Publication date
EP0346401B1 (en) 1993-09-29
KR890702117A (ko) 1989-12-22
AU596535B2 (en) 1990-05-03
DE3884606T2 (de) 1994-03-17
KR930006309B1 (ko) 1993-07-12
WO1988008572A1 (en) 1988-11-03
DE3884606D1 (de) 1993-11-04
JPH02500226A (ja) 1990-01-25
AU1931488A (en) 1988-12-02
EP0346401A1 (en) 1989-12-20
CA1301356C (en) 1992-05-19

Similar Documents

Publication Publication Date Title
US4937733A (en) Method and apparatus for assuring adequate access to system resources by processors in a multiprocessor computer system
KR910007750B1 (ko) 다중 프로세서 컴퓨터 시스템에서 다중 록 표시자를 실시하기 위한 방법 및 장치
US4858116A (en) Method and apparatus for managing multiple lock indicators in a multiprocessor computer system
EP0370018B1 (en) Apparatus and method for determining access to a bus
EP0358716B1 (en) Node for servicing interrupt request messages on a pended bus
KR930000992B1 (ko) 멀티 프로세서 컴퓨터 시스템상의 인터록 판독 트랜잭션을 개시하기 위한 방법 및 장치
EP0346398B1 (en) Apparatus and method for a node to obtain access to a bus
JP2539021B2 (ja) 保留バスに割り込み要求を送る割り込み要求発生ノ―ド
US5111424A (en) Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfer
EP0358725B1 (en) Apparatus and method for servicing interrupts utilizing a pended bus
US5034883A (en) Lockhead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
US5341510A (en) Commander node method and apparatus for assuring adequate access to system resources in a multiprocessor
JP2504552B2 (ja) マルチプロセッサコンピュ―タシステムにおいてシステムリソ―スへの充分なアクセスを確保するコマンダノ―ド方法及び装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees