JPH0587855B2 - - Google Patents
Info
- Publication number
- JPH0587855B2 JPH0587855B2 JP63504366A JP50436688A JPH0587855B2 JP H0587855 B2 JPH0587855 B2 JP H0587855B2 JP 63504366 A JP63504366 A JP 63504366A JP 50436688 A JP50436688 A JP 50436688A JP H0587855 B2 JPH0587855 B2 JP H0587855B2
- Authority
- JP
- Japan
- Prior art keywords
- lock
- node
- command
- bus
- interlock
- 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 - Lifetime
Links
- 230000004044 response Effects 0.000 claims description 85
- 230000000977 initiatory effect Effects 0.000 claims description 28
- 238000000034 method Methods 0.000 claims description 19
- 238000012790 confirmation Methods 0.000 claims description 18
- 238000012546 transfer Methods 0.000 description 55
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
- G06F13/4217—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30087—Synchronisation or serialisation instructions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
- Hardware Redundancy (AREA)
Description
先行技術
本発明はコンピユータシステムに係り、より詳
細には、保留バスによつて相互接続された多数の
プロセツサを有するコンピユータシステムに係
る。
細には、保留バスによつて相互接続された多数の
プロセツサを有するコンピユータシステムに係
る。
近代的なコンピユータシステムは、高い全計算
能力を得るために共通のバスによつて相互接続さ
れた多数のプロセツサ、メモリリソース及び入
力/出力(I/O)装置を有している。このよう
な構造では、1秒当り数百万の命令を実行するこ
とのできる非常に強力なシステムを形成すること
ができる。しかしながら、多数のプロセツサを相
互接続することにより、読み取り−変更−書き込
み(RMW)動作として知られている命令シーケ
ンスを実行することが必要なときに問題が生じ
る。RMW動作において、一方のプロセツサはメ
モリ位置からデータを検索し、そのデータに基づ
いて動作を実行しそしてその変更したデータを元
のメモリ位置に書き込む。1つのプロセツサが1
つのメモリ位置に対してRMW動作を開発してい
て第2のプロセツサがその第1のプロセツサの
RMW動作の“読み取り”動作とそのRMW動作
の“書き込み”部分との間の時間中にその同じメ
モリ位置に対してRMW動作を試みた場合には、
データの完全性に影響を及ぼす予測できない結果
を招くことがある。
能力を得るために共通のバスによつて相互接続さ
れた多数のプロセツサ、メモリリソース及び入
力/出力(I/O)装置を有している。このよう
な構造では、1秒当り数百万の命令を実行するこ
とのできる非常に強力なシステムを形成すること
ができる。しかしながら、多数のプロセツサを相
互接続することにより、読み取り−変更−書き込
み(RMW)動作として知られている命令シーケ
ンスを実行することが必要なときに問題が生じ
る。RMW動作において、一方のプロセツサはメ
モリ位置からデータを検索し、そのデータに基づ
いて動作を実行しそしてその変更したデータを元
のメモリ位置に書き込む。1つのプロセツサが1
つのメモリ位置に対してRMW動作を開発してい
て第2のプロセツサがその第1のプロセツサの
RMW動作の“読み取り”動作とそのRMW動作
の“書き込み”部分との間の時間中にその同じメ
モリ位置に対してRMW動作を試みた場合には、
データの完全性に影響を及ぼす予測できない結果
を招くことがある。
多数のプロセツサが同じメモリ位置に対して
RMW動作を実行しないようにする1つの方法
は、“インターロツク読み取り”機能を与えるこ
とである。これは、ロツクビツトとして知られて
いる“ロツク”インジケータを使用することであ
り、このビツトは、RMW動作の“読み取り”部
分が実行されているときにセツトされそして
RMW動作の“書き込み”部分が完了した後にリ
セツトされる。このロツクビツトがセツトされて
いるときにメモリ内の位置にRMW動作を開始し
ようと試みる第2のプロセツサは、この第2のプ
ロセツサがインターロツク読み取りコマンドを発
生した所定数のバスサイクルの後にそのメモリが
“ビジー”又は“リエントリー”確認によつてロ
ツク状態情報を返送するようにさせる。このビジ
ー確認は、第2のインターロツク読み取りコマン
ドがメモリによつて受け入れられないことをプロ
セツサに指示するものである。
RMW動作を実行しないようにする1つの方法
は、“インターロツク読み取り”機能を与えるこ
とである。これは、ロツクビツトとして知られて
いる“ロツク”インジケータを使用することであ
り、このビツトは、RMW動作の“読み取り”部
分が実行されているときにセツトされそして
RMW動作の“書き込み”部分が完了した後にリ
セツトされる。このロツクビツトがセツトされて
いるときにメモリ内の位置にRMW動作を開始し
ようと試みる第2のプロセツサは、この第2のプ
ロセツサがインターロツク読み取りコマンドを発
生した所定数のバスサイクルの後にそのメモリが
“ビジー”又は“リエントリー”確認によつてロ
ツク状態情報を返送するようにさせる。このビジ
ー確認は、第2のインターロツク読み取りコマン
ドがメモリによつて受け入れられないことをプロ
セツサに指示するものである。
このインターロツク読み取り動作は、RMW動
作を実行しようと各々試みている多数のプロセツ
サによつて生じる問題を軽減する。プロセツサ
は、例えば、ラウンドロビンアルゴリズムを用い
た仲裁プロセスによりこのようなインターロツク
読み取り動作に対してバスへの均等なアクセスが
許可される。しかしながら、それでも性能上のネ
ツクが生じる。例えば、あるバストラフヒツク状
態のもとでは、特定のプロセツサがロツクされた
メモリ位置に繰り返し遭遇し、メモリリソースに
対して必要とされるアクセスを適時に得ることが
できない。このような問題は、メモリノードに対
して多数のロツクビツトを与えることによつて減
少することができ、各々のロツクビツトは全メモ
リノードではなくてメモリノードの一部分に関連
したものである。このような多数のロツクビツト
は、メモリノードにおけるインターロツク読み取
り動作の微細な“粒度”を与え、これはインター
ロツク読み取り動作の後にメモリの小さな部分を
結び付けるものである。このようなやり方では、
RMW動作のより高いアクセス速度が得られ、シ
ステムのスループツトを改善することができる。
しかしながら、公知の保留バス式マルチプロセツ
サシステムにおいて多数のロツクビツトを実施す
る場合には、ロツク状態情報を検出して送信する
ための精度の低い複雑な回路となる。
作を実行しようと各々試みている多数のプロセツ
サによつて生じる問題を軽減する。プロセツサ
は、例えば、ラウンドロビンアルゴリズムを用い
た仲裁プロセスによりこのようなインターロツク
読み取り動作に対してバスへの均等なアクセスが
許可される。しかしながら、それでも性能上のネ
ツクが生じる。例えば、あるバストラフヒツク状
態のもとでは、特定のプロセツサがロツクされた
メモリ位置に繰り返し遭遇し、メモリリソースに
対して必要とされるアクセスを適時に得ることが
できない。このような問題は、メモリノードに対
して多数のロツクビツトを与えることによつて減
少することができ、各々のロツクビツトは全メモ
リノードではなくてメモリノードの一部分に関連
したものである。このような多数のロツクビツト
は、メモリノードにおけるインターロツク読み取
り動作の微細な“粒度”を与え、これはインター
ロツク読み取り動作の後にメモリの小さな部分を
結び付けるものである。このようなやり方では、
RMW動作のより高いアクセス速度が得られ、シ
ステムのスループツトを改善することができる。
しかしながら、公知の保留バス式マルチプロセツ
サシステムにおいて多数のロツクビツトを実施す
る場合には、ロツク状態情報を検出して送信する
ための精度の低い複雑な回路となる。
上記説明では、プロセツサノード、メモリノー
ド及びI/Oノードを用いたコンピユータシステ
ムの動作について強調したが、コマンダノード、
即ちバス上のトランザクシヨンを開始するノード
と、レスポンダノード、即ちコマンダノードによ
つて開始されたトランザクシヨンに応答するノー
ドとについてこのようなシステムをより詳細に説
明する。種々の時間に、1つの装置は、コマンダ
ノード又はレスポンダノードのいずれかとして機
能することができる。
ド及びI/Oノードを用いたコンピユータシステ
ムの動作について強調したが、コマンダノード、
即ちバス上のトランザクシヨンを開始するノード
と、レスポンダノード、即ちコマンダノードによ
つて開始されたトランザクシヨンに応答するノー
ドとについてこのようなシステムをより詳細に説
明する。種々の時間に、1つの装置は、コマンダ
ノード又はレスポンダノードのいずれかとして機
能することができる。
各々が異なつた特性を有する多数のバスを介し
て装置が相互接続されているようなコンピユータ
システムを提供することが望まれる。しかしなが
ら、これは、ロツク状態情報が最初のインターロ
ツクされた読み取りコマンドに対して固定時間関
係で送信されるようなインターロツク読み取り動
作を用いた公知の保留バスシステムで実行するこ
とが著しく困難である。
て装置が相互接続されているようなコンピユータ
システムを提供することが望まれる。しかしなが
ら、これは、ロツク状態情報が最初のインターロ
ツクされた読み取りコマンドに対して固定時間関
係で送信されるようなインターロツク読み取り動
作を用いた公知の保留バスシステムで実行するこ
とが著しく困難である。
発明の要旨
そこで、本発明の目的は、多数のロツクビツト
を有すると共に、状態ロツク情報を送信するため
の簡単な回路を有するマルチプロセツサシステム
を提供することである。
を有すると共に、状態ロツク情報を送信するため
の簡単な回路を有するマルチプロセツサシステム
を提供することである。
本発明の更に別の目的は、ロツク状態情報の最
初のインターロツク読み取りコマンドに対して固
定時間関係で送信されないようなインターロツク
読み取り動作を有するマルチプロセツサ保留バス
コンピユータシステムを提供することである。
初のインターロツク読み取りコマンドに対して固
定時間関係で送信されないようなインターロツク
読み取り動作を有するマルチプロセツサ保留バス
コンピユータシステムを提供することである。
本発明の更に別の目的及び効果は、その一部分
が以下の説明で述べられそしてその一部分が以下
の説明から明らかであり、或いは本発明を実施す
ることによつて学び取ることができよう。本発明
の目的及び効果は、請求の範囲に特に指摘された
手段及びその組み合わせによつて実現及び達成す
ることができる。
が以下の説明で述べられそしてその一部分が以下
の説明から明らかであり、或いは本発明を実施す
ることによつて学び取ることができよう。本発明
の目的及び効果は、請求の範囲に特に指摘された
手段及びその組み合わせによつて実現及び達成す
ることができる。
本発明は、インターロツク読み取りコマンドの
所定時間後にアクノーリツジ確認信号を発生する
と共に、インターロツク読み取りメツセージの後
の不定の時間にロツク状態情報を発生することに
より、公知の問題及び欠点を克服するものであ
る。
所定時間後にアクノーリツジ確認信号を発生する
と共に、インターロツク読み取りメツセージの後
の不定の時間にロツク状態情報を発生することに
より、公知の問題及び欠点を克服するものであ
る。
本発明の原理によれば、保留バス上の排他的な
読み取り−変更−書き取り動作を実行するための
システムであつて、これらの動作は保留バス上の
1組の別々のトランザクシヨンを有し、そしてこ
れは、指定の位置に記憶された情報を検索すると
共に次のインターロツク読み取りコマンドによる
記憶情報へのアクセスを制限するためのインター
ロツク読み取りコマンドと、指定の位置に情報を
記憶すると共にその記憶された情報へのアクセス
を復帰するためのアンロツク書き込みコマンドと
を含むものであるようなシステムが提供される。
このシステムは、バスと、バスに接続された複数
の第1ノードとを具備し、各ノードは、インター
ロツク読み取り及びアンロツク書き込みコマンド
を開始するためのコマンダノードとして働く。第
1ノードは、インターロツク読み取りコマンドの
開始に続く不定の時間に、インターロツク読み取
りコマンドが実行されたかどうかを指示するロツ
ク状態メツセージを受け取るための手段を備えて
いる。更に、システムは、レスポンダノードとし
て働くようにバスに接続された第2ノードも具備
している。この第2ノードは、第1ノードからの
インターロツク読み取りコマンドを受け取るため
の手段と、情報を記憶するための指定の位置を含
む記憶手段と、この記憶手段に関連されそしてア
ンロツク状態とロツク状態との間で動作して、ア
ンロツク状態においては記憶手段へのアクセスを
許すと共に、ロツク状態においては記憶手段への
アクセスを拒絶するようなロツク手段と、第1ノ
ードの1つからのインターロツク読み取りコマン
ドに応答して、ロツク手段がアンロツク状態にあ
る場合には指定の位置からの情報を第1ノードの
1つに供給しそしてロツク手段をアンロツク状態
からロツク状態に切り替えるためのコマンド手段
と、変更された情報を指定の位置に記憶すると共
にロツク手段をロツク状態からアンロツク状態に
切り替えるためのアンロツク書き込みコマンド手
段と、インターロツク読み取りコマンドの開始に
続く不定の時間に、インターロツク読み取りコマ
ンドを発生した第1ノードにロツク手段の状態に
対応するロツク状態メツセージを送信するための
状態応答手段とを備えている。
読み取り−変更−書き取り動作を実行するための
システムであつて、これらの動作は保留バス上の
1組の別々のトランザクシヨンを有し、そしてこ
れは、指定の位置に記憶された情報を検索すると
共に次のインターロツク読み取りコマンドによる
記憶情報へのアクセスを制限するためのインター
ロツク読み取りコマンドと、指定の位置に情報を
記憶すると共にその記憶された情報へのアクセス
を復帰するためのアンロツク書き込みコマンドと
を含むものであるようなシステムが提供される。
このシステムは、バスと、バスに接続された複数
の第1ノードとを具備し、各ノードは、インター
ロツク読み取り及びアンロツク書き込みコマンド
を開始するためのコマンダノードとして働く。第
1ノードは、インターロツク読み取りコマンドの
開始に続く不定の時間に、インターロツク読み取
りコマンドが実行されたかどうかを指示するロツ
ク状態メツセージを受け取るための手段を備えて
いる。更に、システムは、レスポンダノードとし
て働くようにバスに接続された第2ノードも具備
している。この第2ノードは、第1ノードからの
インターロツク読み取りコマンドを受け取るため
の手段と、情報を記憶するための指定の位置を含
む記憶手段と、この記憶手段に関連されそしてア
ンロツク状態とロツク状態との間で動作して、ア
ンロツク状態においては記憶手段へのアクセスを
許すと共に、ロツク状態においては記憶手段への
アクセスを拒絶するようなロツク手段と、第1ノ
ードの1つからのインターロツク読み取りコマン
ドに応答して、ロツク手段がアンロツク状態にあ
る場合には指定の位置からの情報を第1ノードの
1つに供給しそしてロツク手段をアンロツク状態
からロツク状態に切り替えるためのコマンド手段
と、変更された情報を指定の位置に記憶すると共
にロツク手段をロツク状態からアンロツク状態に
切り替えるためのアンロツク書き込みコマンド手
段と、インターロツク読み取りコマンドの開始に
続く不定の時間に、インターロツク読み取りコマ
ンドを発生した第1ノードにロツク手段の状態に
対応するロツク状態メツセージを送信するための
状態応答手段とを備えている。
別の特徴において、本発明は、保留バスによつ
て接続されたコマンダノード及びレスポンダノー
ドを含むシステムにおいて排他的な読み取り−変
更−書き込み動作を実行するための方法であつ
て、これらの動作が保留バス上での1組の別々の
トランザクシヨンを有し、そしてこれが、指定の
位置に記憶された情報を検索してその次のインタ
ーロツク読み取りコマンドによる記憶情報へのア
クセスを制限するためのインターロツク読み取り
コマンドと、指定の位置に情報を記憶しそしてそ
の記憶された情報へのアクセスを復帰するための
アンロツク書き込みコマンドとを含むものである
ような方法を提供する。この方法は、コマンダノ
ードからレスポンダノードへインターロツク読み
取りコマンドを開始し、コマンドの開始に続く所
定の時間にレスポンダノードからコマンダノード
へのインターロツク読み取りコマンドの受信を指
示するアクノーリツジ確認を送信し、ロツクイン
ジケータを検査し、ロツクインジケータがアンロ
ツク状態にある場合にはロツクインジケータをア
ンロツク状態からロツク状態に切り換え、インタ
ーロツク読み取りコマンドの開始に続く不定の時
間に、ロツクインジケータの状態に対応するロツ
ク状態メツセージをコマンダノードへ送信し、そ
して変更された情報を指定の位置に記憶し、レス
ポンダノードによるアンロツク書き込みコマンド
の受信の際にロツクインジケータをロツク状態か
らアンロツク状態に切り換えるという段階を具備
している。
て接続されたコマンダノード及びレスポンダノー
ドを含むシステムにおいて排他的な読み取り−変
更−書き込み動作を実行するための方法であつ
て、これらの動作が保留バス上での1組の別々の
トランザクシヨンを有し、そしてこれが、指定の
位置に記憶された情報を検索してその次のインタ
ーロツク読み取りコマンドによる記憶情報へのア
クセスを制限するためのインターロツク読み取り
コマンドと、指定の位置に情報を記憶しそしてそ
の記憶された情報へのアクセスを復帰するための
アンロツク書き込みコマンドとを含むものである
ような方法を提供する。この方法は、コマンダノ
ードからレスポンダノードへインターロツク読み
取りコマンドを開始し、コマンドの開始に続く所
定の時間にレスポンダノードからコマンダノード
へのインターロツク読み取りコマンドの受信を指
示するアクノーリツジ確認を送信し、ロツクイン
ジケータを検査し、ロツクインジケータがアンロ
ツク状態にある場合にはロツクインジケータをア
ンロツク状態からロツク状態に切り換え、インタ
ーロツク読み取りコマンドの開始に続く不定の時
間に、ロツクインジケータの状態に対応するロツ
ク状態メツセージをコマンダノードへ送信し、そ
して変更された情報を指定の位置に記憶し、レス
ポンダノードによるアンロツク書き込みコマンド
の受信の際にロツクインジケータをロツク状態か
らアンロツク状態に切り換えるという段階を具備
している。
本明細書の一部分を構成する添付図面には本発
明の1実施例が示されており、これを参照して本
発明の原理を説明する。
明の1実施例が示されており、これを参照して本
発明の原理を説明する。
第1図は、本発明によるデータ処理システムの
ブロツク図、 第2図は、第1図のデータ処理システムのノー
ドを示すブロツク図、 第3図は、第1図のデータ処理システムに用い
られるタイミング信号を示すタイミング図、 第4図は、第2図のノードにおけるデータイン
ターフエイス61を示すブロツク図、 第5図は、第1図のデータ処理システムにおけ
るアービタを示すブロツク図、 第6図は、インターロツク読み取りトランザク
シヨン中に第1図のシステムバスに現われる信号
を示すタイミング図、 第7図は、第1図のデータ処理システムにおけ
るプロセツサノードを示すブロツク図、 第8図は、第1図のデータ処理システムにおけ
るメモリノードを示すブロツク図、そして 第9図は、第8図のメモリノードにおけるロツ
ク制御器を示すブロツク図である。
ブロツク図、 第2図は、第1図のデータ処理システムのノー
ドを示すブロツク図、 第3図は、第1図のデータ処理システムに用い
られるタイミング信号を示すタイミング図、 第4図は、第2図のノードにおけるデータイン
ターフエイス61を示すブロツク図、 第5図は、第1図のデータ処理システムにおけ
るアービタを示すブロツク図、 第6図は、インターロツク読み取りトランザク
シヨン中に第1図のシステムバスに現われる信号
を示すタイミング図、 第7図は、第1図のデータ処理システムにおけ
るプロセツサノードを示すブロツク図、 第8図は、第1図のデータ処理システムにおけ
るメモリノードを示すブロツク図、そして 第9図は、第8図のメモリノードにおけるロツ
ク制御器を示すブロツク図である。
好ましい実施例の説明
A システム全体の説明
第1図は、本発明によるデータ処理システム2
0の一例を示している。システム20の中心部は
システムバス25であり、これは、多数のプロセ
ツサと、メモリサブシステムと、I/Oシステム
との間で通信を行なうことのできる同期バスであ
る。システムバス25を介しての通信は、周期的
なバスサイクルを用いて同期的に行なわれる。シ
ステムバス25に対する典型的なバスサイクルタ
イムは、64nSである。
0の一例を示している。システム20の中心部は
システムバス25であり、これは、多数のプロセ
ツサと、メモリサブシステムと、I/Oシステム
との間で通信を行なうことのできる同期バスであ
る。システムバス25を介しての通信は、周期的
なバスサイクルを用いて同期的に行なわれる。シ
ステムバス25に対する典型的なバスサイクルタ
イムは、64nSである。
第1図において、システムバス25は、2つの
プロセツサ31及び35と、メモリ39と、1つ
のI/Oインターフエイス41と、1つのI/O
ユニツト51とに接続される。I/Oユニツト5
3は、I/Oバス45及びI/Oユニツトインタ
ーフエイス41によりシステムバス25に接続さ
れる。
プロセツサ31及び35と、メモリ39と、1つ
のI/Oインターフエイス41と、1つのI/O
ユニツト51とに接続される。I/Oユニツト5
3は、I/Oバス45及びI/Oユニツトインタ
ーフエイス41によりシステムバス25に接続さ
れる。
データ処理システム20の好ましい実施例で
は、中央アービタ(仲裁回路)28もシステムバ
ス25に接続されている。アービタ28は、幾つ
かのタイミング及びバス仲裁信号をシステムバス
25上の他の装置へ直接供給し、ある信号をこれ
らの装置とで共有する。
は、中央アービタ(仲裁回路)28もシステムバ
ス25に接続されている。アービタ28は、幾つ
かのタイミング及びバス仲裁信号をシステムバス
25上の他の装置へ直接供給し、ある信号をこれ
らの装置とで共有する。
第1図に示されたものは、現在好ましいと考え
られるものであり、必ずしも本発明をこれに限定
するものではない。例えば、I/Oユニツト53
はシステムバス25に直接接続することができる
し、アービタ28は、本発明について述べるよう
に動作しなくてもよい。
られるものであり、必ずしも本発明をこれに限定
するものではない。例えば、I/Oユニツト53
はシステムバス25に直接接続することができる
し、アービタ28は、本発明について述べるよう
に動作しなくてもよい。
本発明を説明する上で使用する用語として、プ
ロセツサ31及び33、メモリ39、I/Oイン
ターフエイス41、及びI/O装置51は、全て
「ノード」と称する。「ノード」とは、システムバ
ス25に接続されるハードウエア装置と定義す
る。
ロセツサ31及び33、メモリ39、I/Oイン
ターフエイス41、及びI/O装置51は、全て
「ノード」と称する。「ノード」とは、システムバ
ス25に接続されるハードウエア装置と定義す
る。
本発明を説明するのに用いる用語によれば、
「信号」又は「ライン」は、物理的な配線の名称
を指すものとして交換可能に用いられる。「デー
タ」又は「レベル」という用語は、信号又はライ
ンがとることのできる値を指すものとして用いら
れる。
「信号」又は「ライン」は、物理的な配線の名称
を指すものとして交換可能に用いられる。「デー
タ」又は「レベル」という用語は、信号又はライ
ンがとることのできる値を指すものとして用いら
れる。
ノードは、システムバス25を介して他のノー
ドとの転送を実行する。「転送」は、共通の送信
器及び共通のアービタを分担する1つ以上の連続
サイクルである。例えば、あるノードがシステム
バス25上の別のノードから情報を得るために開
始する読み取り動作においては、第1のノードか
ら第2のノードへコマンドを転送した後に、ある
程度の時間が経つてから、第2のノードから第1
のノードへ1つ以上の戻りデータを転送すること
が必要である。
ドとの転送を実行する。「転送」は、共通の送信
器及び共通のアービタを分担する1つ以上の連続
サイクルである。例えば、あるノードがシステム
バス25上の別のノードから情報を得るために開
始する読み取り動作においては、第1のノードか
ら第2のノードへコマンドを転送した後に、ある
程度の時間が経つてから、第2のノードから第1
のノードへ1つ以上の戻りデータを転送すること
が必要である。
「トランザクシヨン」は、システムバス25に
おいて実行される完全な論理的タスクとして定め
られ、2つ以上の転送を含むことができる。例え
ば、コマンド転送に続いて1つ以上の戻りデータ
転送を行なう読み取り動作は1つのトランザクシ
ヨンである。システムバス25の好ましい実施例
では、許容できるトランザクシヨンが種々のデー
タ長さの転送をサポートし、これは、読み取り、
書き込み(マスクされた)、インターロツク読み
取り、ロツク解除書き込み及び割り込み動作を含
む。インターロツク読み取りと、通常の即ち非イ
ンターロツク読み取りとの相違は、特定位置に対
するインターロツク読み取りの場合にその位置に
記憶された情報を検索しそしてその後のインター
ロツク読み取りコマンドによつてアクセスをその
記憶された情報に制限することである。アクセス
の制限は、ロツク機構をセツトすることによつて
行なわれる。その後のロツク解除書き込みコマン
ドは、その指定の位置に情報を記憶し、そしてそ
の位置においてロツク機構をリセツトすることに
よりその記憶された情報へのアクセスを復帰す
る。従つて、インターロツク読み取り/ロツク解
除書き込み動作は、ある種の読み取り−変更−書
き込み動作である。
おいて実行される完全な論理的タスクとして定め
られ、2つ以上の転送を含むことができる。例え
ば、コマンド転送に続いて1つ以上の戻りデータ
転送を行なう読み取り動作は1つのトランザクシ
ヨンである。システムバス25の好ましい実施例
では、許容できるトランザクシヨンが種々のデー
タ長さの転送をサポートし、これは、読み取り、
書き込み(マスクされた)、インターロツク読み
取り、ロツク解除書き込み及び割り込み動作を含
む。インターロツク読み取りと、通常の即ち非イ
ンターロツク読み取りとの相違は、特定位置に対
するインターロツク読み取りの場合にその位置に
記憶された情報を検索しそしてその後のインター
ロツク読み取りコマンドによつてアクセスをその
記憶された情報に制限することである。アクセス
の制限は、ロツク機構をセツトすることによつて
行なわれる。その後のロツク解除書き込みコマン
ドは、その指定の位置に情報を記憶し、そしてそ
の位置においてロツク機構をリセツトすることに
よりその記憶された情報へのアクセスを復帰す
る。従つて、インターロツク読み取り/ロツク解
除書き込み動作は、ある種の読み取り−変更−書
き込み動作である。
システムバス25は「保留された」バスである
から、他のノードが応答を待機して浪費してしま
うバスサイクルを使用できるようにすることによ
り、バスリソースを効率良く使用するよう促す。
保留されたバスにおいては、1つのノードがトラ
ンザクシヨンを開始した後に、そのトランザクシ
ヨンが完了する前に他のノードがバスにアクセス
することができる。従つて、そのトランザクシヨ
ンを開始するノードは、全トランザクシヨン時間
中バスを束縛するのではない。これに対し、非保
留バスの場合には、全トランザクシヨン中バスが
拘束される。例えば、システムバス25において
は、ノードが読み取りトランザクシヨンを開始し
そしてコマンドの転送を行なつた後に、そのコマ
ンド転送が向けられるノードは、その要求された
データを直ちに返送することができない。従つ
て、コマンド転送と、読み取りトランザクシヨン
の戻りデータ転送との間にバス25のサイクルを
使用することができる。システムバス25は他の
ノードがこれらのサイクルを使用できるようにす
る。
から、他のノードが応答を待機して浪費してしま
うバスサイクルを使用できるようにすることによ
り、バスリソースを効率良く使用するよう促す。
保留されたバスにおいては、1つのノードがトラ
ンザクシヨンを開始した後に、そのトランザクシ
ヨンが完了する前に他のノードがバスにアクセス
することができる。従つて、そのトランザクシヨ
ンを開始するノードは、全トランザクシヨン時間
中バスを束縛するのではない。これに対し、非保
留バスの場合には、全トランザクシヨン中バスが
拘束される。例えば、システムバス25において
は、ノードが読み取りトランザクシヨンを開始し
そしてコマンドの転送を行なつた後に、そのコマ
ンド転送が向けられるノードは、その要求された
データを直ちに返送することができない。従つ
て、コマンド転送と、読み取りトランザクシヨン
の戻りデータ転送との間にバス25のサイクルを
使用することができる。システムバス25は他の
ノードがこれらのサイクルを使用できるようにす
る。
システムバス25を使用する場合に、各ノード
は、情報の転送を行なうために異なつた役割を果
たすことができる。これらの役割の1つが「コマ
ンダ」であり、これは現在処理中のトランザクシ
ヨンを開始したノードとして定義される。例え
ば、書き込み又は読み取り動作においては、コマ
ンダは、書き込み又は読み取り動作を要求したノ
ードであり、これは、必ずしもデータを送信もし
くは受信するノードでなくてもよい。システムバ
ス25の好ましいプロトコルにおいては、ノード
は、たとえ別のノードがトランザクシヨンのある
サイクル中にシステムバス25の所有権をもつた
としても全トランザクシヨンを通じてコマンダと
して保持される。例えば、あるノードは、読み取
りトランザクシヨンのコマンド転送に応答してデ
ータ転送中にシステムバス25の制御権をもつ
が、このノードはバスのコマンダとはならない。
むしろ、このノードは「レスポンダ」と称する。
は、情報の転送を行なうために異なつた役割を果
たすことができる。これらの役割の1つが「コマ
ンダ」であり、これは現在処理中のトランザクシ
ヨンを開始したノードとして定義される。例え
ば、書き込み又は読み取り動作においては、コマ
ンダは、書き込み又は読み取り動作を要求したノ
ードであり、これは、必ずしもデータを送信もし
くは受信するノードでなくてもよい。システムバ
ス25の好ましいプロトコルにおいては、ノード
は、たとえ別のノードがトランザクシヨンのある
サイクル中にシステムバス25の所有権をもつた
としても全トランザクシヨンを通じてコマンダと
して保持される。例えば、あるノードは、読み取
りトランザクシヨンのコマンド転送に応答してデ
ータ転送中にシステムバス25の制御権をもつ
が、このノードはバスのコマンダとはならない。
むしろ、このノードは「レスポンダ」と称する。
レスポンダはコマンダに応答する。例えば、コ
マンダがノードAからノードBにデータを書き込
むための書き込み動作を開始した場合には、ノー
ドBがレスポンダとなる。更に、データ処理シス
テム20においては、ノードが同時にコマンダ及
びレスポンダとなることがある。
マンダがノードAからノードBにデータを書き込
むための書き込み動作を開始した場合には、ノー
ドBがレスポンダとなる。更に、データ処理シス
テム20においては、ノードが同時にコマンダ及
びレスポンダとなることがある。
送信器及び受信器は、個々の転送中にノードが
とる役割を果たす。「送信器」は、転送中にシス
テムバス25に出される情報のソースであるノー
ドとして定義される。「受信器」は、送信器の相
補的なものであり、転送中にシステムバス25に
出された情報を受信するノードとして定義され
る。例えば、読み取りトランザクシヨン中に、コ
マンダは、最初、コマンドの転送中に送信器とな
りそして戻りデータの転送中に受信器となる。
とる役割を果たす。「送信器」は、転送中にシス
テムバス25に出される情報のソースであるノー
ドとして定義される。「受信器」は、送信器の相
補的なものであり、転送中にシステムバス25に
出された情報を受信するノードとして定義され
る。例えば、読み取りトランザクシヨン中に、コ
マンダは、最初、コマンドの転送中に送信器とな
りそして戻りデータの転送中に受信器となる。
システムバス25に接続されたノードがシステ
ムバス25上で送信器になろうとする場合には、
そのノードが中央のアービタ28とその特定ノー
ドとの間に接続された2本の要求ラインCMD
REQ(コマンド要求)及びRES REQ(レスポンダ
要求)の一方を肯定する。一般に、ノードは、そ
のCMD REQラインを用いてコマンダとなるこ
とを要求しそしてシステムバス25を介してトラ
ンザクシヨンを開始し、そしてノードは、その
RES REQラインを用いてレスポンダとなつてデ
ータ又はメツセージをコマンダへ返送する。一般
に、中央アービタ28は、どのノードがバスへの
アクセスを要求しているか(即ち、どの要求ライ
ンが肯定されたか)を検出する。次いで、アービ
タは、肯定された要求ラインの1つに応答して、
優先順位アルゴリズムに基づいてバス25への対
応するノードアクセスを許可する。好ましい実施
例では、アービタ28は、2つの独立した円形の
待ち行列を維持し、即ち、その一方の待ち行列は
コマンダ要求に対するものでありそしてもう一方
はレスポンダ要求に対するものである。好ましく
は、レスポンダ要求はコマンダ要求よりも優先順
位が高く、コマンダ要求の前に処理される。
ムバス25上で送信器になろうとする場合には、
そのノードが中央のアービタ28とその特定ノー
ドとの間に接続された2本の要求ラインCMD
REQ(コマンド要求)及びRES REQ(レスポンダ
要求)の一方を肯定する。一般に、ノードは、そ
のCMD REQラインを用いてコマンダとなるこ
とを要求しそしてシステムバス25を介してトラ
ンザクシヨンを開始し、そしてノードは、その
RES REQラインを用いてレスポンダとなつてデ
ータ又はメツセージをコマンダへ返送する。一般
に、中央アービタ28は、どのノードがバスへの
アクセスを要求しているか(即ち、どの要求ライ
ンが肯定されたか)を検出する。次いで、アービ
タは、肯定された要求ラインの1つに応答して、
優先順位アルゴリズムに基づいてバス25への対
応するノードアクセスを許可する。好ましい実施
例では、アービタ28は、2つの独立した円形の
待ち行列を維持し、即ち、その一方の待ち行列は
コマンダ要求に対するものでありそしてもう一方
はレスポンダ要求に対するものである。好ましく
は、レスポンダ要求はコマンダ要求よりも優先順
位が高く、コマンダ要求の前に処理される。
コマンダ要求ライン及びレスポンダ要求ライン
は仲裁信号であると考えられる。第1図に示すよ
うに、仲裁信号は、中央アービタ28から各ノー
ドへ送られるポイント−ポイントの条件に応じた
許可信号と、マルチバスサイクル転送を実行する
システムバス拡張信号と、例えば、メモリのよう
なノードがシステムバス上のトラヒツクを瞬間的
に維持できなくなつたときに新たなバストランザ
クシヨンの開始を制御するシステムバス抑制信号
とを含む。
は仲裁信号であると考えられる。第1図に示すよ
うに、仲裁信号は、中央アービタ28から各ノー
ドへ送られるポイント−ポイントの条件に応じた
許可信号と、マルチバスサイクル転送を実行する
システムバス拡張信号と、例えば、メモリのよう
なノードがシステムバス上のトラヒツクを瞬間的
に維持できなくなつたときに新たなバストランザ
クシヨンの開始を制御するシステムバス抑制信号
とを含む。
システムバス25を構成することのできる他の
形式の信号は、情報転送信号、応答信号、制御信
号、コンソール/フロントパネル信号、及び幾つ
かの種々の信号を含む。情報転送信号は、データ
信号、現在サイクル中にシステムバスで行なわれ
るフアンクシヨンを表わすフアンクシヨン信号、
コマンダを識別する識別子信号、及びパリテイ信
号を含む。応答信号は、一般に、データ転送の状
態を送信器に通知するための受信器からの確認信
号を含む。
形式の信号は、情報転送信号、応答信号、制御信
号、コンソール/フロントパネル信号、及び幾つ
かの種々の信号を含む。情報転送信号は、データ
信号、現在サイクル中にシステムバスで行なわれ
るフアンクシヨンを表わすフアンクシヨン信号、
コマンダを識別する識別子信号、及びパリテイ信
号を含む。応答信号は、一般に、データ転送の状
態を送信器に通知するための受信器からの確認信
号を含む。
制御信号は、クロツク信号と、低いライン電圧
又は低いDC電圧を示す信号のような警報信号と、
初期化中に使用されるリセツト信号と、ノード欠
陥信号と、バスのアイドリングサイクル中に用い
られる欠陥信号と、エラー欠陥信号とを含む。コ
ンソール/フロントパネル信号は、直列データを
システムコンソールに送信したりそこから受信し
たりするための信号と、始動時にブートプロセツ
サの特性を制御するためのブート信号と、システ
ムバス25上のプロセツサの消去可能なPROM
を変更できるようにする信号と、フロントパネル
のRUN LIGHTを制御する信号と、あるノード
のクロツク論理回路にバツテリ電力を供給する信
号とを含む。その他の信号としては、スペア信号
に加えて、各ノードがその識別コードを定めるこ
とができるようにする識別信号を含む。
又は低いDC電圧を示す信号のような警報信号と、
初期化中に使用されるリセツト信号と、ノード欠
陥信号と、バスのアイドリングサイクル中に用い
られる欠陥信号と、エラー欠陥信号とを含む。コ
ンソール/フロントパネル信号は、直列データを
システムコンソールに送信したりそこから受信し
たりするための信号と、始動時にブートプロセツ
サの特性を制御するためのブート信号と、システ
ムバス25上のプロセツサの消去可能なPROM
を変更できるようにする信号と、フロントパネル
のRUN LIGHTを制御する信号と、あるノード
のクロツク論理回路にバツテリ電力を供給する信
号とを含む。その他の信号としては、スペア信号
に加えて、各ノードがその識別コードを定めるこ
とができるようにする識別信号を含む。
第2図は、システムバス25に接続されたノー
ド60の一例を示している。ノード60は、プロ
セツサであつてもよいし、メモリであつてもよい
し、I/Oユニツトであつてもよいし、I/Oイ
ンターフエイスであつてもよい。第2図に示す例
では、ノード60は、ノードに特定の論理回路6
5と、ノードバス67と、データインターフエイ
ス61及びクロツクデコーダ63を含むシステム
バスインターフエイス64とを備えている。デー
タインターフエイス61、クロツクデコーダ63
及びノードバス67は、システムバス25に接続
されたノードのための標準的な要素であるのが好
ましい。ノードに特定の論理回路65は、システ
ムバスインターフエイス64とは異なつた集積回
路を用いており、好ましくは、ノードの特定の機
能を実行するようにユーザによつて指定された回
路に加えて、ノードバス67にインターフエイス
する標準的な回路を含んでいる。一般に、データ
インターフエイス61は、ノード60とシステム
バス25との間の主たる論理的及び電気的なイン
ターフエイスであり、クロツクデコーダ63は中
央で発生されるクロツク信号に基づいてノード6
0へタイミング信号を供給し、ノードバス67は
データインターフエイス61とノードに特定の論
理回路65との間の高速インターフエイスをな
す。
ド60の一例を示している。ノード60は、プロ
セツサであつてもよいし、メモリであつてもよい
し、I/Oユニツトであつてもよいし、I/Oイ
ンターフエイスであつてもよい。第2図に示す例
では、ノード60は、ノードに特定の論理回路6
5と、ノードバス67と、データインターフエイ
ス61及びクロツクデコーダ63を含むシステム
バスインターフエイス64とを備えている。デー
タインターフエイス61、クロツクデコーダ63
及びノードバス67は、システムバス25に接続
されたノードのための標準的な要素であるのが好
ましい。ノードに特定の論理回路65は、システ
ムバスインターフエイス64とは異なつた集積回
路を用いており、好ましくは、ノードの特定の機
能を実行するようにユーザによつて指定された回
路に加えて、ノードバス67にインターフエイス
する標準的な回路を含んでいる。一般に、データ
インターフエイス61は、ノード60とシステム
バス25との間の主たる論理的及び電気的なイン
ターフエイスであり、クロツクデコーダ63は中
央で発生されるクロツク信号に基づいてノード6
0へタイミング信号を供給し、ノードバス67は
データインターフエイス61とノードに特定の論
理回路65との間の高速インターフエイスをな
す。
第2図に示されたノード60及びシステムバス
インターフエイス64の好ましい実施例では、ク
ロツクデコーダ63は、システムバス25を経て
送られるべき信号を形成するための制御回路を含
んでおり、中央アービタ28から受け取つたクロ
ツク信号を処理して、ノードに特定な論理回路6
5及びデータインターフエイス61のためのタイ
ミング信号を得るようにする。クロツクデコーダ
63によつて得られたタイミング信号は中央で発
生されたクロツク信号を用いているので、ノード
60は、システムバス25と同期して作動する。
インターフエイス64の好ましい実施例では、ク
ロツクデコーダ63は、システムバス25を経て
送られるべき信号を形成するための制御回路を含
んでおり、中央アービタ28から受け取つたクロ
ツク信号を処理して、ノードに特定な論理回路6
5及びデータインターフエイス61のためのタイ
ミング信号を得るようにする。クロツクデコーダ
63によつて得られたタイミング信号は中央で発
生されたクロツク信号を用いているので、ノード
60は、システムバス25と同期して作動する。
第3図は、1つのバスサイクル、クロツクデコ
ーダ63によつて受け取つたクロツク信号、及び
クロツクデコーダ63によつて発生される幾つか
のタイミング信号を示すタイミング図である。ク
ロツクデコーダ63によつて受け取られるクロツ
ク信号は、第3図に示すように、Time H信号、
Time L信号及びPhase信号を含む。Time H及
びTime Lは、基本的なクロツク信号の逆数で
あり、そしてPhase信号は、基本的なクロツク信
号を3で分割することによつて得られる。クロツ
クデコーダ63によつて発生されたタイミング信
号は、C12,C23,C34,C45,C56
及びC61を含み、これらは全て第3図に示され
ている。データインターフエイス61によつて要
求されバスサイクル当たり一度生じるこれらのタ
イミング信号は、データインターフエイス61に
送られ、そしてデータインターフエイス61に送
られたタイミング信号と等価なものを含む1組の
タイミング信号がバツフアされて、ノードに特定
の論理回路65に送られる。バツフア動作の目的
は、ノードに特定の論理回路65がタイミング信
号を不適切にロードすることによつてシステムバ
スインターフエイス64の動作に悪影響を及ぼさ
ないようにすることである。クロツク63は、ク
ロツク信号を使用して、各バスサイクルごとに6
つのサブサイクルを形成し、そしてこれらのサブ
サイクルを使用して、9つのタイミング信号
CXYを形成する。但し、X及びYは、1つのタ
イミング信号を形成するように合成される2つの
隣接するサブサイクルを表わしている。
ーダ63によつて受け取つたクロツク信号、及び
クロツクデコーダ63によつて発生される幾つか
のタイミング信号を示すタイミング図である。ク
ロツクデコーダ63によつて受け取られるクロツ
ク信号は、第3図に示すように、Time H信号、
Time L信号及びPhase信号を含む。Time H及
びTime Lは、基本的なクロツク信号の逆数で
あり、そしてPhase信号は、基本的なクロツク信
号を3で分割することによつて得られる。クロツ
クデコーダ63によつて発生されたタイミング信
号は、C12,C23,C34,C45,C56
及びC61を含み、これらは全て第3図に示され
ている。データインターフエイス61によつて要
求されバスサイクル当たり一度生じるこれらのタ
イミング信号は、データインターフエイス61に
送られ、そしてデータインターフエイス61に送
られたタイミング信号と等価なものを含む1組の
タイミング信号がバツフアされて、ノードに特定
の論理回路65に送られる。バツフア動作の目的
は、ノードに特定の論理回路65がタイミング信
号を不適切にロードすることによつてシステムバ
スインターフエイス64の動作に悪影響を及ぼさ
ないようにすることである。クロツク63は、ク
ロツク信号を使用して、各バスサイクルごとに6
つのサブサイクルを形成し、そしてこれらのサブ
サイクルを使用して、9つのタイミング信号
CXYを形成する。但し、X及びYは、1つのタ
イミング信号を形成するように合成される2つの
隣接するサブサイクルを表わしている。
システムバスの各ノードは、そのクロツクデコ
ーダ63によつて発生されたそれ自身の対応する
1組のタイミング信号を有している。通常、対応
する信号は、システム全体を通じて各ノードごと
に全く同じ時間に生じるが、クロツクデコーダ6
3と多数のノードの他の回路との間の変動により
対応する信号間にタイミング変動を招く。これら
のタイミング変動は、一般に「クロツクスキユ
ー」として知られている。
ーダ63によつて発生されたそれ自身の対応する
1組のタイミング信号を有している。通常、対応
する信号は、システム全体を通じて各ノードごと
に全く同じ時間に生じるが、クロツクデコーダ6
3と多数のノードの他の回路との間の変動により
対応する信号間にタイミング変動を招く。これら
のタイミング変動は、一般に「クロツクスキユ
ー」として知られている。
第4図は、データインターフエイス61の好ま
しい実施例を示している。データインターフエイ
ス61は、ノードバス67の各ラインとシステム
バス25の各ラインとの間に両方向性の高速イン
ターフエイスを与えるための一時的な記憶回路及
びバス駆動回路の両方を含んでいる。第4図に示
すように、データインターフエイス61は、ノー
ドバス67からシステムバス25への通信路を形
成するために記憶要素70及び72とシステムバ
スドライバ74とを備えているのが好ましい。
又、データインターフエイス61は、システムバ
ス25からノードバス67への通信路を形成する
ために記憶要素80及びノードバスドライバ82
も備えている。データインターフエイス61の説
明で用いたように、「記憶要素」という用語は、
一般に、透過ラツチやマスター/スレーブ記憶要
素のような双安定性の記憶装置を指すものであつ
て、特定の手段を指すものではない。当業者であ
れば、どの形式の記憶要素が適当であるか明らか
であろう。
しい実施例を示している。データインターフエイ
ス61は、ノードバス67の各ラインとシステム
バス25の各ラインとの間に両方向性の高速イン
ターフエイスを与えるための一時的な記憶回路及
びバス駆動回路の両方を含んでいる。第4図に示
すように、データインターフエイス61は、ノー
ドバス67からシステムバス25への通信路を形
成するために記憶要素70及び72とシステムバ
スドライバ74とを備えているのが好ましい。
又、データインターフエイス61は、システムバ
ス25からノードバス67への通信路を形成する
ために記憶要素80及びノードバスドライバ82
も備えている。データインターフエイス61の説
明で用いたように、「記憶要素」という用語は、
一般に、透過ラツチやマスター/スレーブ記憶要
素のような双安定性の記憶装置を指すものであつ
て、特定の手段を指すものではない。当業者であ
れば、どの形式の記憶要素が適当であるか明らか
であろう。
第4図に示すように、記憶要素70は、その入
力がノードバス67からデータを受け取るように
接続されそしてその出力が記憶要素72の入力に
接続される。記憶要素72の出力は、システムバ
スドライバ74の入力に接続され、そしてその出
力はシステムバス25に接続される。記憶要素7
0及び72は、クロツクデコーダ63によつて発
生されたタイミング信号から導出されるノードバ
ス制御信号76及び78によつて各々制御され
る。記憶要素70及び72は、ノードバス67か
らシステムバス25へデータをパイプライン動作
するための2段の一時的な記憶手段を形成する。
種々の個数の記憶段を使用することもできる。
力がノードバス67からデータを受け取るように
接続されそしてその出力が記憶要素72の入力に
接続される。記憶要素72の出力は、システムバ
スドライバ74の入力に接続され、そしてその出
力はシステムバス25に接続される。記憶要素7
0及び72は、クロツクデコーダ63によつて発
生されたタイミング信号から導出されるノードバ
ス制御信号76及び78によつて各々制御され
る。記憶要素70及び72は、ノードバス67か
らシステムバス25へデータをパイプライン動作
するための2段の一時的な記憶手段を形成する。
種々の個数の記憶段を使用することもできる。
システムバスドライバ74は、システムバスド
ライバイネーブル信号79によつて制御される。
システムバスドライバイネーブル信号79の状態
により、システムバスドライバ74の入力は、そ
の出力に接続されて記憶要素72の出力のデータ
をシステムバス25に転送するか、又はその出力
からデカツプルされる。システムバスドライブイ
ネーブル信号79がシステムバスドライバ74の
入力と出力をデカツプルするときには、システム
バスドライバ74がシステムバス25に高インピ
ーダンスを与える。又、システムバスドライブイ
ネーブル79は、システムバス25から受け取つ
たクロツク信号と、ノードに特定の論理回路65
から受け取つた制御信号とに基づいてクロツクデ
コーダ63によつて発生される。
ライバイネーブル信号79によつて制御される。
システムバスドライバイネーブル信号79の状態
により、システムバスドライバ74の入力は、そ
の出力に接続されて記憶要素72の出力のデータ
をシステムバス25に転送するか、又はその出力
からデカツプルされる。システムバスドライブイ
ネーブル信号79がシステムバスドライバ74の
入力と出力をデカツプルするときには、システム
バスドライバ74がシステムバス25に高インピ
ーダンスを与える。又、システムバスドライブイ
ネーブル79は、システムバス25から受け取つ
たクロツク信号と、ノードに特定の論理回路65
から受け取つた制御信号とに基づいてクロツクデ
コーダ63によつて発生される。
記憶要素80は、その入力端子がシステムバス
25に接続されそしてその出力端子がノードバス
ドライバ82の入力に接続される。ノードバスド
ライバ82の出力はノードバス67に接続されて
戻される。好ましくは、透過ラツチである記憶要
素80は、クロツクデコーダ63によつて発生さ
れたタイミング信号から導出されるシステムバス
制御信号85によつて制御される。ノードバスド
ライブ信号87は、システムバスドライブ信号7
9がシステムバスドライバ74を制御するのと同
様にノードバスドライバ82を制御する。従つ
て、ノードバスドライバ信号87に応答して、ノ
ードバスドライバ82はその入力をその出力に接
続するかその入力をその出力からデカツプルし、
ノードバス67に高インピーダンスを与える。
25に接続されそしてその出力端子がノードバス
ドライバ82の入力に接続される。ノードバスド
ライバ82の出力はノードバス67に接続されて
戻される。好ましくは、透過ラツチである記憶要
素80は、クロツクデコーダ63によつて発生さ
れたタイミング信号から導出されるシステムバス
制御信号85によつて制御される。ノードバスド
ライブ信号87は、システムバスドライブ信号7
9がシステムバスドライバ74を制御するのと同
様にノードバスドライバ82を制御する。従つ
て、ノードバスドライバ信号87に応答して、ノ
ードバスドライバ82はその入力をその出力に接
続するかその入力をその出力からデカツプルし、
ノードバス67に高インピーダンスを与える。
システムバス25を経ていかにデータが転送さ
れるかを説明するために、システムバスドライブ
イネーブル信号79と制御信号85との間の関係
を理解することが重要である。ここに示す実施例
では、この関係が第3図に示されている。システ
ムバスドライブイネーブル信号79は、通常、バ
スサイクルの始めから終りまで導出される。新た
なデータは、バスサイクルにおいてドライバ伝播
及びバス安定時間が経過した後のある時間にシス
テムバス25から受け取られるようになる。好ま
しい実施例においては、記憶要素80は透過ラツ
チである。制御信号85は、クロツクC45と論
理的に透過される。バスのタイミングは、制御信
号85が否定される若干前にシステムバス25の
データが受け取られるように確保する。記憶要素
80は、制御信号85を否定する前の少なくとも
設定時間に安定していて且つ制御信号85を否定
した後の保持時間中安定したまゝであるバスデー
タを記憶する。
れるかを説明するために、システムバスドライブ
イネーブル信号79と制御信号85との間の関係
を理解することが重要である。ここに示す実施例
では、この関係が第3図に示されている。システ
ムバスドライブイネーブル信号79は、通常、バ
スサイクルの始めから終りまで導出される。新た
なデータは、バスサイクルにおいてドライバ伝播
及びバス安定時間が経過した後のある時間にシス
テムバス25から受け取られるようになる。好ま
しい実施例においては、記憶要素80は透過ラツ
チである。制御信号85は、クロツクC45と論
理的に透過される。バスのタイミングは、制御信
号85が否定される若干前にシステムバス25の
データが受け取られるように確保する。記憶要素
80は、制御信号85を否定する前の少なくとも
設定時間に安定していて且つ制御信号85を否定
した後の保持時間中安定したまゝであるバスデー
タを記憶する。
ノードバス67は、ノードに特定の論理回路6
5とシステムバス25との間でデータインターフ
エイス61により両方向性のデータ転送を行なう
ことのできる非常に高速度のデータバスであるの
が好ましい。第2図に示されたノード60の好ま
しい実施例では、ノードバス67は、システムバ
スインターフエイス64とノードに特定の論理回
路65との間の点/点接続を形成する相互接続手
段である。然し乍ら、本発明によれば、このよう
な点/点相互接続は必要とされない。
5とシステムバス25との間でデータインターフ
エイス61により両方向性のデータ転送を行なう
ことのできる非常に高速度のデータバスであるの
が好ましい。第2図に示されたノード60の好ま
しい実施例では、ノードバス67は、システムバ
スインターフエイス64とノードに特定の論理回
路65との間の点/点接続を形成する相互接続手
段である。然し乍ら、本発明によれば、このよう
な点/点相互接続は必要とされない。
第5図は、システムバス25に接続された中央
アービタ28の好ましい実施例を示している。中
央アービタ28は、システムバス25のためのク
ロツク信号を発生すると共に、システムバス25
上のノードに対するバスの所有者関係を許可す
る。中央アービタ28は、仲裁回路90と、クロ
ツク回路95と、発振器97とを備えているのが
好ましい。発振器97は、基本的なクロツク信号
を発生する。クロツク95は、仲裁回路71のタ
イミング信号と、システムバス25上でタイミン
グをとるための基本的なTime H、Time L及
びPhaseクロツク信号とを発生する。仲裁回路7
1は、コマンダ及びレスポンダの要求信号を受け
取り、システムバス25にアクセスしようとして
いるノード間の競合の仲裁を果たし、そしてコマ
ンダ及びレスポンダの要求に対する上記待ち行列
を維持する。又、仲裁回路71は、幾つかの制御
信号をクロツク95へ供給する。
アービタ28の好ましい実施例を示している。中
央アービタ28は、システムバス25のためのク
ロツク信号を発生すると共に、システムバス25
上のノードに対するバスの所有者関係を許可す
る。中央アービタ28は、仲裁回路90と、クロ
ツク回路95と、発振器97とを備えているのが
好ましい。発振器97は、基本的なクロツク信号
を発生する。クロツク95は、仲裁回路71のタ
イミング信号と、システムバス25上でタイミン
グをとるための基本的なTime H、Time L及
びPhaseクロツク信号とを発生する。仲裁回路7
1は、コマンダ及びレスポンダの要求信号を受け
取り、システムバス25にアクセスしようとして
いるノード間の競合の仲裁を果たし、そしてコマ
ンダ及びレスポンダの要求に対する上記待ち行列
を維持する。又、仲裁回路71は、幾つかの制御
信号をクロツク95へ供給する。
B インターロツクベースの説明
上記で簡単に述べたように、多数の種々の形式
のトランザクシヨンをバス25において行なうこ
とができる。各々の場合に、トランザクシヨンは
あるノードから別のノードへの1つ以上の別々の
転送で構成される。レスポンダが1つ以上のバス
サイクル中にコマンド転送を首尾良く受け取つた
ときには、各転送サイクル後の第2のバスサイク
ルの始めにアクノーリツジ確認信号を発生する。
このようなアクノーリツジ信号は、元の転送に含
まれるコマンドを首尾良く実行したことを指示す
るものではなく、所望のレスポンダノードの入力
待ち行列にその転送が首尾良く入れられたことを
示すに過ぎない。本発明に関連したトランザクシ
ヨンを以下に述べる。
のトランザクシヨンをバス25において行なうこ
とができる。各々の場合に、トランザクシヨンは
あるノードから別のノードへの1つ以上の別々の
転送で構成される。レスポンダが1つ以上のバス
サイクル中にコマンド転送を首尾良く受け取つた
ときには、各転送サイクル後の第2のバスサイク
ルの始めにアクノーリツジ確認信号を発生する。
このようなアクノーリツジ信号は、元の転送に含
まれるコマンドを首尾良く実行したことを指示す
るものではなく、所望のレスポンダノードの入力
待ち行列にその転送が首尾良く入れられたことを
示すに過ぎない。本発明に関連したトランザクシ
ヨンを以下に述べる。
読み取りトランザクシヨンは、アドレススペー
スの領域を管理しているレスポンダノードの特定
の位置からコマンダノードへ、4バイト、8バイ
ト、16バイト又は32バイトブロツクでデータを移
動するのに用いられる。好ましい実施例におい
て、メモリ及びI/O動作は共通のアドレススペ
ースを参照するものである。レスポンダノード
は、メモリノード、プロセツサノード又はI/O
ノードの何れかとなり得る。
スの領域を管理しているレスポンダノードの特定
の位置からコマンダノードへ、4バイト、8バイ
ト、16バイト又は32バイトブロツクでデータを移
動するのに用いられる。好ましい実施例におい
て、メモリ及びI/O動作は共通のアドレススペ
ースを参照するものである。レスポンダノード
は、メモリノード、プロセツサノード又はI/O
ノードの何れかとなり得る。
インターロツク読み取りトランザクシヨンは読
み取りトランザクシヨンに類似している。しかし
ながら、インターロツク読み取りトランザクシヨ
ンの厳密な作用は、以下で詳細に述べるようにレ
スポンダノードにおけるロツクタグの状態に基づ
くものである。ロツクタグは、アドレススペース
内の位置又は位置のグループへのアクセスを防止
する。ロツクタグの作用は、金属性の“ブラツク
ボード”にまたがつて現われるシステム20のア
ドレススペースを目に見えるようにすることによ
り理解できる。インターロツク読み取りトランザ
クシヨンで指定されたアドレススペースの位置が
ロツクタグで既にカバーされている場合、即ち指
定のアドレススペースが“ロツク”されている場
合は、レスポンダノードは“ロツクされた“応答
メツセージでインターロツク読み取り要求に応答
し、データは返送されない。これは、インターロ
ツク読み取りコマンドで指定されたアドレススペ
ース内の位置がアクセスできないことをコマンダ
に知らせる。このロツクされた応答メツセージ
は、レスポンダノードがインターロツク読み取り
コマンドを処理した後であつて且つレスポンダノ
ードがバスへのアクセス権を得ることができるよ
うになつた後にコマンダへ送信される。従つて、
コマンダは、インターロツク読み取りトランザク
シヨンのコマンド転送後の不定の時間にロツクさ
れた応答メツセージを受け取る。
み取りトランザクシヨンに類似している。しかし
ながら、インターロツク読み取りトランザクシヨ
ンの厳密な作用は、以下で詳細に述べるようにレ
スポンダノードにおけるロツクタグの状態に基づ
くものである。ロツクタグは、アドレススペース
内の位置又は位置のグループへのアクセスを防止
する。ロツクタグの作用は、金属性の“ブラツク
ボード”にまたがつて現われるシステム20のア
ドレススペースを目に見えるようにすることによ
り理解できる。インターロツク読み取りトランザ
クシヨンで指定されたアドレススペースの位置が
ロツクタグで既にカバーされている場合、即ち指
定のアドレススペースが“ロツク”されている場
合は、レスポンダノードは“ロツクされた“応答
メツセージでインターロツク読み取り要求に応答
し、データは返送されない。これは、インターロ
ツク読み取りコマンドで指定されたアドレススペ
ース内の位置がアクセスできないことをコマンダ
に知らせる。このロツクされた応答メツセージ
は、レスポンダノードがインターロツク読み取り
コマンドを処理した後であつて且つレスポンダノ
ードがバスへのアクセス権を得ることができるよ
うになつた後にコマンダへ送信される。従つて、
コマンダは、インターロツク読み取りトランザク
シヨンのコマンド転送後の不定の時間にロツクさ
れた応答メツセージを受け取る。
指定の位置がロツクされない場合、即ちロツク
タグに関連していない場合には、インターロツク
読み取りコマンドで指定されたアドレスに記憶さ
れた情報が、応答メツセージにおいて、インター
ロツク読み取りコマンドを発生したコマンダノー
ドに返送される。又、レスポンダノードは、イン
ターロツク読み取りコマンドで指定されたアドレ
ススペース内の位置へロツクタグを取り付け、従
つて、その後のインターロツク読み取りコマンド
に対しアドレススペース内の指定の位置へのアク
セスを拒絶する。
タグに関連していない場合には、インターロツク
読み取りコマンドで指定されたアドレスに記憶さ
れた情報が、応答メツセージにおいて、インター
ロツク読み取りコマンドを発生したコマンダノー
ドに返送される。又、レスポンダノードは、イン
ターロツク読み取りコマンドで指定されたアドレ
ススペース内の位置へロツクタグを取り付け、従
つて、その後のインターロツク読み取りコマンド
に対しアドレススペース内の指定の位置へのアク
セスを拒絶する。
アンロツク書き込みトランザクシヨンは、イン
ターロツク読み取りトランザクシヨンに対して相
補的なものである。コマンダノードが読み取り−
変更−書き込み動作において読み取り及び変更を
首尾良く完了しないと、インターロツク読み取り
コマンドによつて一時的にロツクされているアド
レススペース内の位置をアンロツクしなければな
らない。コマンダは、アドレススペース内の指定
の位置へのアンロツク書き込みトランザクシヨン
を実行して、適当に変更されたデータを指定の位
置へ書き込むことによりこの動作を実行する。レ
スポンダノードは、アドレススペースをアンロツ
クしそして要求されたデータを書き込むことによ
りアンロツク書き込みコマンドを処理する。次い
で、ロツクタグは、以下で詳細に述べるようにク
リアされる。
ターロツク読み取りトランザクシヨンに対して相
補的なものである。コマンダノードが読み取り−
変更−書き込み動作において読み取り及び変更を
首尾良く完了しないと、インターロツク読み取り
コマンドによつて一時的にロツクされているアド
レススペース内の位置をアンロツクしなければな
らない。コマンダは、アドレススペース内の指定
の位置へのアンロツク書き込みトランザクシヨン
を実行して、適当に変更されたデータを指定の位
置へ書き込むことによりこの動作を実行する。レ
スポンダノードは、アドレススペースをアンロツ
クしそして要求されたデータを書き込むことによ
りアンロツク書き込みコマンドを処理する。次い
で、ロツクタグは、以下で詳細に述べるようにク
リアされる。
インターロツク読み取りコマンド転送中にバス
25を経て送信されるメツセージは、64本のデー
タライン上にデータを含んでいる。このデータ
は、4ビツトコマンドフイールドと、例えば、メ
モリ39からプロセツサノード31へ転送される
べきワード数を指定する2ビツト長さのフイール
ドと、データを読み取ろうとするメモリ39内の
アドレス位置を指定する30ビツトのアドレスフイ
ールドとを含んでいる。インターロツク読み取り
コマンド中に情報を搬送するシステムバス25の
他のラインは、コマンド転送を指示する4ビツト
フアンクシヨンコードを搬送する4つのフアンク
シヨンラインと、インターロツク読み取りコマン
ドを開始したコマンダノードを識別する6ビツト
コードを搬送する6本のIDラインと3本のパリ
テイラインとを含んでいる。
25を経て送信されるメツセージは、64本のデー
タライン上にデータを含んでいる。このデータ
は、4ビツトコマンドフイールドと、例えば、メ
モリ39からプロセツサノード31へ転送される
べきワード数を指定する2ビツト長さのフイール
ドと、データを読み取ろうとするメモリ39内の
アドレス位置を指定する30ビツトのアドレスフイ
ールドとを含んでいる。インターロツク読み取り
コマンド中に情報を搬送するシステムバス25の
他のラインは、コマンド転送を指示する4ビツト
フアンクシヨンコードを搬送する4つのフアンク
シヨンラインと、インターロツク読み取りコマン
ドを開始したコマンダノードを識別する6ビツト
コードを搬送する6本のIDラインと3本のパリ
テイラインとを含んでいる。
上記で簡単に述べたように、システムバス25
は、送信器によつてバスに出された情報が首尾良
く受け取られたことを指示するために受信器によ
つて使用される応答信号を含んでいる。好ましい
実施例において、応答信号は、3つの同じワイヤ
ドオア確認(CNF)ラインを含んでいる。3本
のラインが設けられている理由は、特に、インタ
ーロツクコマンド又はI/Oレジスタへの書き込
みの場合に、レスポンダが各コマンドに応答して
何を行なうかをコマンダが厳密に知ることがバス
トランザクシヨンの完全性にとつて著しく重要だ
からである。それ故、受信器は、3段のCNFラ
イン全部をアサートすることによつてアクノーリ
ツジ(ACK)確認信号を送信するか、又は3本
のCNFライン全部をアサートしないことによつ
てノーアクノリツジ(NACK)確認信号を送信
するかの何れかである。受信器にはエラー修正論
理回路が設けられていて、3つのCNFライン全
部が同じ論理レベルで受信器によつて受信されな
いか動かについて真のCNF状態を決定する。
は、送信器によつてバスに出された情報が首尾良
く受け取られたことを指示するために受信器によ
つて使用される応答信号を含んでいる。好ましい
実施例において、応答信号は、3つの同じワイヤ
ドオア確認(CNF)ラインを含んでいる。3本
のラインが設けられている理由は、特に、インタ
ーロツクコマンド又はI/Oレジスタへの書き込
みの場合に、レスポンダが各コマンドに応答して
何を行なうかをコマンダが厳密に知ることがバス
トランザクシヨンの完全性にとつて著しく重要だ
からである。それ故、受信器は、3段のCNFラ
イン全部をアサートすることによつてアクノーリ
ツジ(ACK)確認信号を送信するか、又は3本
のCNFライン全部をアサートしないことによつ
てノーアクノリツジ(NACK)確認信号を送信
するかの何れかである。受信器にはエラー修正論
理回路が設けられていて、3つのCNFライン全
部が同じ論理レベルで受信器によつて受信されな
いか動かについて真のCNF状態を決定する。
ACK確認信号は、レスポンダがコマンド転送
の1つのサイクルからの情報を受け入れたこと、
又はコマンダが応答メツセージの1つのサイクル
からの情報を受け入れたことを指示する。ACK
確認指示を生じる読み取りコマンド転送サイクル
は、レスポンダがある時間の後に読み取り応答メ
ツセージを返送することを指示する。
の1つのサイクルからの情報を受け入れたこと、
又はコマンダが応答メツセージの1つのサイクル
からの情報を受け入れたことを指示する。ACK
確認指示を生じる読み取りコマンド転送サイクル
は、レスポンダがある時間の後に読み取り応答メ
ツセージを返送することを指示する。
CNFライン上に返送されるNACK確認信号は
コマンド転送のそのバスサイクルからの情報を受
け入れる受信器がないことを指示する。これは次
の3つの理由がある。即ち、(1)システムバスにパ
リテイエラーが生じている。(2)例えば、受信器の
入力待ち行列がいつぱいであるときに、受信器が
一時的にコマンドを受け入れることができない。
或いは(3)指定のアドレスに対応するレスポンダノ
ードがない。
コマンド転送のそのバスサイクルからの情報を受
け入れる受信器がないことを指示する。これは次
の3つの理由がある。即ち、(1)システムバスにパ
リテイエラーが生じている。(2)例えば、受信器の
入力待ち行列がいつぱいであるときに、受信器が
一時的にコマンドを受け入れることができない。
或いは(3)指定のアドレスに対応するレスポンダノ
ードがない。
バスサイクルに対応する確認指示は、バスサイ
クルの後の第2のサイクルの始めに受信器ノード
によつてCNFラインに出される。
クルの後の第2のサイクルの始めに受信器ノード
によつてCNFラインに出される。
インターロツク読み取りトランザクシヨンの一
例を第6図について説明する。第6図の上部の水
平軸は、バス25上の次々のバスサイクルを示し
ている。第6図の左側に沿つて垂直に現われる表
示は、バス25に含まれるラインのグループ、即
ちフアンクシヨンライン、データライン、IDラ
イン、確認ライン及び仲裁ラインを示している。
第6図の水平及び垂直軸によつて形成されるマト
リツクス内の入力は、指定のバスサイクル中に指
定のバスラインに現われるデータの形式を示して
いる。
例を第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図のノード31は、アービタ28
へ至るCMD REQ仲裁要求ライン(第1図に示
されてアービタ28に接続されたポイント/ポイ
ントラインの1つ)をアサートする。従つて、第
6図は、サイクル1にシステムバス25の仲裁ラ
イン上に存在する“cmdr #1”要求を指示す
る。それより優先順位の高い他のノードがバスへ
のアクセスを同時に要求していないと仮定すれ
ば、プロセツサ31がサイクル1にバスアクセス
権を得そしてシステムバス25にメツセージを送
信する。
サイクル1の間にバス25のフアンクシヨンラ
インになされる情報は、バス上の情報がコマンド
(cmd)情報であることを指示している。バス2
5のデータラインに出されるデータは現在のトラ
ンザクシヨンをインターロツク読み取りトランザ
クシヨンとして識別すると共にデータをプロセツ
サ31へ返送すべきメモリ39内のアドレスを指
定するコマンド及びアドレス(c/a)データで
構成される。バスサイクル1中のIDラインは、
バス25上に現在送信しているプロセツサ(コマ
ンダ/cmdr)ノード31の識別コードを含んで
いる。
インになされる情報は、バス上の情報がコマンド
(cmd)情報であることを指示している。バス2
5のデータラインに出されるデータは現在のトラ
ンザクシヨンをインターロツク読み取りトランザ
クシヨンとして識別すると共にデータをプロセツ
サ31へ返送すべきメモリ39内のアドレスを指
定するコマンド及びアドレス(c/a)データで
構成される。バスサイクル1中のIDラインは、
バス25上に現在送信しているプロセツサ(コマ
ンダ/cmdr)ノード31の識別コードを含んで
いる。
バスサイクル2において、本発明のインターロ
ツク読み取りトランザクシヨンについてはバス2
5に何の情報も出されない。
ツク読み取りトランザクシヨンについてはバス2
5に何の情報も出されない。
インターロツク読み取りトランザクシヨンが開
始された2サイクル(即ち所定時間)後であるバ
スサイクル3の始めに、メモリノード39は、該
メモリ39がバスサイクル1の間に送られたコマ
ンド転送を首尾良く受け取つている場合に、バス
25の確認ラインにACK確認信号を送信する。
次いで、メモリ39は、メモリ39の入力待ち行
列にコマンドメツセージをいれる。
始された2サイクル(即ち所定時間)後であるバ
スサイクル3の始めに、メモリノード39は、該
メモリ39がバスサイクル1の間に送られたコマ
ンド転送を首尾良く受け取つている場合に、バス
25の確認ラインにACK確認信号を送信する。
次いで、メモリ39は、メモリ39の入力待ち行
列にコマンドメツセージをいれる。
バスサイクル3の終了は、インターロツク読み
取りトランザクシヨンにおける第1転送の終了を
構成する。バス15におけるトランザクシヨンは
その特性が保留性であるため、要求された情報が
メモリ39からプロセツサ31へ返送される時間
を正確に定めることができない。応答時間は、要
求を処理するためにメモリ39によつて必要とさ
れる時間と、他のノードによつて発生されたバス
25上の更に別のトラフイツクを処理するために
システムバス25に必要とされる時間とに基づ
く。インターロツク読み取りトランザクシヨンの
2つの転送間の時間を特定できないことが、バス
サイクル3と4との間で第6図の点線によつて示
されている。従つて、その後の情報は第6図にお
いてバスサイクル4ないし7に生じるように示さ
れているが、これはインターロツク読み取りトラ
ンザクシヨンに含まれるタイミングの特定例に過
ぎず、このようなトランザクシヨンの第2の転送
をバス25のその後のサイクルにおいて行なえる
ことを理解されたい。
取りトランザクシヨンにおける第1転送の終了を
構成する。バス15におけるトランザクシヨンは
その特性が保留性であるため、要求された情報が
メモリ39からプロセツサ31へ返送される時間
を正確に定めることができない。応答時間は、要
求を処理するためにメモリ39によつて必要とさ
れる時間と、他のノードによつて発生されたバス
25上の更に別のトラフイツクを処理するために
システムバス25に必要とされる時間とに基づ
く。インターロツク読み取りトランザクシヨンの
2つの転送間の時間を特定できないことが、バス
サイクル3と4との間で第6図の点線によつて示
されている。従つて、その後の情報は第6図にお
いてバスサイクル4ないし7に生じるように示さ
れているが、これはインターロツク読み取りトラ
ンザクシヨンに含まれるタイミングの特定例に過
ぎず、このようなトランザクシヨンの第2の転送
をバス25のその後のサイクルにおいて行なえる
ことを理解されたい。
メモリ39は、その入力待ち行列からインター
ロツク読み取り転送メツセージを順次に取り出し
そして転送に含まれたアドレス情報を検討するこ
とによりインターロツク読み取りコマンドを処理
する。情報は、以下で詳細に述べるロツクタグに
記憶されたアドレス位置と比較される。記憶され
たアドレス値とインターロツク読み取り転送のア
ドレス情報との間に一致がある場合には、所望の
アドレス位置が手前のインターロツク読み取りコ
マンドによつてロツクされていることを指示す
る。次いで、メモリ39は、“ロツクされた”フ
アンクシヨンコードを含むロツクされた応答メツ
セージを、応答メツセージに対して必要とされる
他の情報と共に、メモリノード39の出力待ち行
列に発生する。
ロツク読み取り転送メツセージを順次に取り出し
そして転送に含まれたアドレス情報を検討するこ
とによりインターロツク読み取りコマンドを処理
する。情報は、以下で詳細に述べるロツクタグに
記憶されたアドレス位置と比較される。記憶され
たアドレス値とインターロツク読み取り転送のア
ドレス情報との間に一致がある場合には、所望の
アドレス位置が手前のインターロツク読み取りコ
マンドによつてロツクされていることを指示す
る。次いで、メモリ39は、“ロツクされた”フ
アンクシヨンコードを含むロツクされた応答メツ
セージを、応答メツセージに対して必要とされる
他の情報と共に、メモリノード39の出力待ち行
列に発生する。
ロツクタグに記憶されたアドレス値と、インタ
ーロツク読み取り転送アドレス情報との比較が
“ヒツト”を生じない場合、即ち転送されたアド
レスが記憶されたアドレスに一致しない場合に
は、メモリノード39は、フアンクシヨンライン
に対する“良好読み取りデータ”(grd0)コード
のような有効読み取り応答ノード、データライン
に対する指定のアドレス位置の内容、及びIDラ
インに対してインターロツク読み取りコマンドを
開始したコマンダノードのコマンダ識別コードよ
り成る応答メツセージを構成する。この応答メツ
セージは、メモリノード39の出力待ち行列にロ
ードされる。
ーロツク読み取り転送アドレス情報との比較が
“ヒツト”を生じない場合、即ち転送されたアド
レスが記憶されたアドレスに一致しない場合に
は、メモリノード39は、フアンクシヨンライン
に対する“良好読み取りデータ”(grd0)コード
のような有効読み取り応答ノード、データライン
に対する指定のアドレス位置の内容、及びIDラ
インに対してインターロツク読み取りコマンドを
開始したコマンダノードのコマンダ識別コードよ
り成る応答メツセージを構成する。この応答メツ
セージは、メモリノード39の出力待ち行列にロ
ードされる。
メモリ39がインターロツク読み取りトランザ
クシヨンを処理しそして以下で詳細に述べるよう
にその出力待ち行列内に応答メツセージを発生す
ると、メモリ39はアービタ28に至るその
RES REQ要求ライン(第1図に示された別のポ
イント/ポイントライン)をアサートする。従つ
て、仲裁ラインは、バスサイクル4において第6
図に示すようにレスポンダ要求(resp)指示を搬
送する。このときにこれより優先順位の高い他の
ノードがないとすれば、アービタ28はバスサイ
クル5の間にバス25へのメモリ39のアクセス
を許可する。メモリ39は、“良好読み取りデー
タ”(grd0)信号を含む応答メツセージをシステ
ムバス25のフアンクシヨンラインに送信し、プ
ロセツサ31からメモリ39への初期転送のアド
レスフイールドによつて指定されたメモリ位置か
らシステムバス25のデータラインを経て8バイ
ト(即ち、64ビツト)のデータを送信し、そして
プロセツサ31のIDのバス25のIDラインに送
信して、インターロツク読み取り要求を最初に発
生したコマンダ(即ち、プロセツサ31)と返送
データとを関連させる。
クシヨンを処理しそして以下で詳細に述べるよう
にその出力待ち行列内に応答メツセージを発生す
ると、メモリ39はアービタ28に至るその
RES REQ要求ライン(第1図に示された別のポ
イント/ポイントライン)をアサートする。従つ
て、仲裁ラインは、バスサイクル4において第6
図に示すようにレスポンダ要求(resp)指示を搬
送する。このときにこれより優先順位の高い他の
ノードがないとすれば、アービタ28はバスサイ
クル5の間にバス25へのメモリ39のアクセス
を許可する。メモリ39は、“良好読み取りデー
タ”(grd0)信号を含む応答メツセージをシステ
ムバス25のフアンクシヨンラインに送信し、プ
ロセツサ31からメモリ39への初期転送のアド
レスフイールドによつて指定されたメモリ位置か
らシステムバス25のデータラインを経て8バイ
ト(即ち、64ビツト)のデータを送信し、そして
プロセツサ31のIDのバス25のIDラインに送
信して、インターロツク読み取り要求を最初に発
生したコマンダ(即ち、プロセツサ31)と返送
データとを関連させる。
バスサイクル6の間に、このインターロツク読
み取りトランザクシヨンに関連したトラヒツクは
システムバス25に現われない。更に、インター
ロツク読み取りトランザクシヨンは、バスサイク
ル7において、プロセツサ31がACK確認信号
をバス25の確認ラインに送信したときに終了す
る。
み取りトランザクシヨンに関連したトラヒツクは
システムバス25に現われない。更に、インター
ロツク読み取りトランザクシヨンは、バスサイク
ル7において、プロセツサ31がACK確認信号
をバス25の確認ラインに送信したときに終了す
る。
メモリ内の同じ指定の位置に対する第2のイン
ターロツク読み取りトランザクシヨンにより、第
6図のサイクル8−15で示すようにバス25に
データが現われる。サイクル8において、第2の
コマンダ(cmdr #2)はアービタ28へのコ
マンダ要求を開始する。バスサイクル9−12
は、サイクル1−4と同様のトラヒツクをバス2
5に生じさせる。しかしながら、メモリ39は、
受け取つたインターロツク読み取りコマンドを処
理する際に、ロツクタグに記憶されたアドレス値
と、インターロツク読み取りコマンドと共に送信
されたアドレスとの間の一致を見い出している。
従つて、LOC応答は、例えば、サイクル13に
おいてバス25のフアンクシヨンラインに与えら
れる。バスサイクル14及び15はサイクル6及
び7と同じである。
ターロツク読み取りトランザクシヨンにより、第
6図のサイクル8−15で示すようにバス25に
データが現われる。サイクル8において、第2の
コマンダ(cmdr #2)はアービタ28へのコ
マンダ要求を開始する。バスサイクル9−12
は、サイクル1−4と同様のトラヒツクをバス2
5に生じさせる。しかしながら、メモリ39は、
受け取つたインターロツク読み取りコマンドを処
理する際に、ロツクタグに記憶されたアドレス値
と、インターロツク読み取りコマンドと共に送信
されたアドレスとの間の一致を見い出している。
従つて、LOC応答は、例えば、サイクル13に
おいてバス25のフアンクシヨンラインに与えら
れる。バスサイクル14及び15はサイクル6及
び7と同じである。
C プロセツサ31の説明
第7図には、プロセツサ31内のノードに特別
な論理回路65の幾つかの素子が詳細なブロツク
図で示されている。プロセツサノード31は、全
てのノードと同様に、バスインターフエイス回路
64を備えている。又、プロセツサノード31
は、プロセツサ論理回路202を備えている。第
7図に示すように、プロセツサ論理回路202
は、当業者に良く知られたようにソフトウエアを
実行するために必要とされる中央処理ユニツト
(CPU)回路を備えている。又、プロセツサ論理
回路202は、必要なアプリケーシヨンフアンク
シヨンを実行すると共にシステムバス25を介し
ての転送を制御するためにシステム20によつて
要求されるコマンド及びアドレス情報も発生す
る。
な論理回路65の幾つかの素子が詳細なブロツク
図で示されている。プロセツサノード31は、全
てのノードと同様に、バスインターフエイス回路
64を備えている。又、プロセツサノード31
は、プロセツサ論理回路202を備えている。第
7図に示すように、プロセツサ論理回路202
は、当業者に良く知られたようにソフトウエアを
実行するために必要とされる中央処理ユニツト
(CPU)回路を備えている。又、プロセツサ論理
回路202は、必要なアプリケーシヨンフアンク
シヨンを実行すると共にシステムバス25を介し
ての転送を制御するためにシステム20によつて
要求されるコマンド及びアドレス情報も発生す
る。
又、プロセツサノード31は、パリテイエラー
チエツク回路204も備えており、この回路は、
バスインターフエイス回路64からシステムバス
25のフアンクシヨンライン、データライン、
IDライン及びパリテイラインを経て受け取つた
情報を監視して、良く知られたようにこれら信号
に対するパリテイチエツクを行なう。パリテイエ
ラーが検出されると、信号ライン206にパリテ
イエラー指示が発生される。
チエツク回路204も備えており、この回路は、
バスインターフエイス回路64からシステムバス
25のフアンクシヨンライン、データライン、
IDライン及びパリテイラインを経て受け取つた
情報を監視して、良く知られたようにこれら信号
に対するパリテイチエツクを行なう。パリテイエ
ラーが検出されると、信号ライン206にパリテ
イエラー指示が発生される。
IDライン上の信号は比較回路208によつて
監視され、この比較回路には、取り付けキヤビネ
ツトにおけるプロセツサ31の位置によつて決定
されるバツクプレーン上の固定布線接続部210
からプロセツサ31の識別コードも送られる。比
較器207からの比較結果は、パリテイエラー信
号ライン206上の情報と共に、ACK確認発生
器208へ送られる。パリテイエラーが検出され
ずそして応答メツセージに対してバス25を経て
受け取つたIDコードがプロセツサ31のIDコー
ドに一致しない場合には、プロセツサ31へ送ら
れる各々の応答サイクルの後の第2のバスサイク
ルの始めにACK確認発生器208によつてバス
25のCNFラインにACK確認信号が送られる。
監視され、この比較回路には、取り付けキヤビネ
ツトにおけるプロセツサ31の位置によつて決定
されるバツクプレーン上の固定布線接続部210
からプロセツサ31の識別コードも送られる。比
較器207からの比較結果は、パリテイエラー信
号ライン206上の情報と共に、ACK確認発生
器208へ送られる。パリテイエラーが検出され
ずそして応答メツセージに対してバス25を経て
受け取つたIDコードがプロセツサ31のIDコー
ドに一致しない場合には、プロセツサ31へ送ら
れる各々の応答サイクルの後の第2のバスサイク
ルの始めにACK確認発生器208によつてバス
25のCNFラインにACK確認信号が送られる。
バス25のフアンクシヨン及びデータライン上
の情報は、バスインターフエイス64を経て応答
デコーダ212へ送られる。デコーダ212は、
バス25上のメツセージがプロセツサ31に意図
されたものであるときに比較器207によつてイ
ネーブルされる。これは、比較器207からの肯
定比較結果によつて決定される。デコーダ212
が比較器207によつてイネーブルされると、デ
コーダ212はシステムバス25のフアンクシヨ
ンラインからフアンクシヨンコードを引き出し、
幾つかのフアンクシヨンコードに対し、バス25
のデータラインからプロセツサ論理回路202へ
コマンド及びデータ情報を供給し、適当な動作を
行なわせる。
の情報は、バスインターフエイス64を経て応答
デコーダ212へ送られる。デコーダ212は、
バス25上のメツセージがプロセツサ31に意図
されたものであるときに比較器207によつてイ
ネーブルされる。これは、比較器207からの肯
定比較結果によつて決定される。デコーダ212
が比較器207によつてイネーブルされると、デ
コーダ212はシステムバス25のフアンクシヨ
ンラインからフアンクシヨンコードを引き出し、
幾つかのフアンクシヨンコードに対し、バス25
のデータラインからプロセツサ論理回路202へ
コマンド及びデータ情報を供給し、適当な動作を
行なわせる。
本発明によれば、インターロツク読み取りコマ
ンド及びアンロツク書き込みコマンドを含むコマ
ンドメツセージを送信するための手段が設けられ
ている。ここに実施するように、送信手段はコマ
ンド発生器214を含む。プロセツサ31がバス
25上のトランザクシヨンを開始しようとすると
きには、コマンド、アドレス及びデータ情報が、
接続部210から送られるこのノードのIDと共
に、コマンド発生器214へ送られる。コマンド
発生器214は、コマンド転送メツセージを形成
し、ノードCMD REQ仲裁ライン216をアサ
ートして、プロセツサ31がコマンダメツセージ
を送信するためにバス25へのアクセスを所望し
ていることをアービタ28(第7図には示さず)
へ指示する。アービタ28は、仲裁システムを使
用して、もとのインターロツク読み取り転送の後
の不定の時間にプロセツサ31へのアクセスを許
可する。
ンド及びアンロツク書き込みコマンドを含むコマ
ンドメツセージを送信するための手段が設けられ
ている。ここに実施するように、送信手段はコマ
ンド発生器214を含む。プロセツサ31がバス
25上のトランザクシヨンを開始しようとすると
きには、コマンド、アドレス及びデータ情報が、
接続部210から送られるこのノードのIDと共
に、コマンド発生器214へ送られる。コマンド
発生器214は、コマンド転送メツセージを形成
し、ノードCMD REQ仲裁ライン216をアサ
ートして、プロセツサ31がコマンダメツセージ
を送信するためにバス25へのアクセスを所望し
ていることをアービタ28(第7図には示さず)
へ指示する。アービタ28は、仲裁システムを使
用して、もとのインターロツク読み取り転送の後
の不定の時間にプロセツサ31へのアクセスを許
可する。
アクセスが許可されると、コマンド発生器21
4は、バスインターフエイス64がコマンド発生
器214からシステムバス25へコマンドメツセ
ージを送信するようにさせる。
4は、バスインターフエイス64がコマンド発生
器214からシステムバス25へコマンドメツセ
ージを送信するようにさせる。
インターロツク読み取りコマンドが送られるレ
スポンダノードは、インターロツク読み取りコマ
ンド転送の2サイクル後にACK確認信号を発生
する。第7図に特に示すように、コマンド発生器
212は、CNFラインを監視し、プロセツサ3
1によりシステムバス25を経て送られた各コマ
ンド転送サイクルの2つのバスサイクル後に
CNFバスライン上にACK確認信号が存在するこ
とを検出する。ACK確認信号の存在が検出され
ないと、適当な修正動作が取られ、これは好まし
い実施例ではその前のコマンドを再送信すること
より成る。転送が完了すると、レスポンダノード
はインターロツク読み取りコマンドを処理し、応
答メツセージをシステムバス25に転送する。シ
ステムバス25上のトラヒツク及び待ち行列の長
さによつて確実でないために、レスポンダノード
は、コマンド転送後の不定の時間に応答メツセー
ジを発生する。
スポンダノードは、インターロツク読み取りコマ
ンド転送の2サイクル後にACK確認信号を発生
する。第7図に特に示すように、コマンド発生器
212は、CNFラインを監視し、プロセツサ3
1によりシステムバス25を経て送られた各コマ
ンド転送サイクルの2つのバスサイクル後に
CNFバスライン上にACK確認信号が存在するこ
とを検出する。ACK確認信号の存在が検出され
ないと、適当な修正動作が取られ、これは好まし
い実施例ではその前のコマンドを再送信すること
より成る。転送が完了すると、レスポンダノード
はインターロツク読み取りコマンドを処理し、応
答メツセージをシステムバス25に転送する。シ
ステムバス25上のトラヒツク及び待ち行列の長
さによつて確実でないために、レスポンダノード
は、コマンド転送後の不定の時間に応答メツセー
ジを発生する。
本発明によれば、コマンダノードは、インター
ロツク読み取りコマンドの開始に続く所定の時間
に、プロセツサノードによつて開始されたインタ
ーロツク読み取りコマンドの受信を指示する
ACK確認指示を受け取ると共に、インターロツ
ク読み取りコマンドの開始に続く不定の時間に、
インターロツク読み取りコマンドが実行されたか
どうかを指示するロツク状態情報を受け取るため
の手段を備えている。第7図に示すシステムで実
施されるように、バスインターフエイス64、プ
ロセツサ論理回路202、バスインターフエイス
64とプロセツサ論理回路202を接続する
CNFライン、及び応答デコーダ212がこのよ
うな手段を構成する。
ロツク読み取りコマンドの開始に続く所定の時間
に、プロセツサノードによつて開始されたインタ
ーロツク読み取りコマンドの受信を指示する
ACK確認指示を受け取ると共に、インターロツ
ク読み取りコマンドの開始に続く不定の時間に、
インターロツク読み取りコマンドが実行されたか
どうかを指示するロツク状態情報を受け取るため
の手段を備えている。第7図に示すシステムで実
施されるように、バスインターフエイス64、プ
ロセツサ論理回路202、バスインターフエイス
64とプロセツサ論理回路202を接続する
CNFライン、及び応答デコーダ212がこのよ
うな手段を構成する。
D メモリ39の説明
第8図は、レスポンダノードとして働くメモリ
39のブロツク図である。第8図に示すように、
メモリ39は、コマンドデコード/アドレス/パ
リテイチエツク回路300を備えている。回路3
00は、バスのフアンクシヨン、アドレス及び
IDラインに接続され、良く知られたようにパリ
テイチエツクを実行する。又、回路300は、バ
スアドレスライン上の情報を、レジスタ302か
ら送られるメモリ39によつて作用されるアドレ
ススペースの限界と比較し、この比較結果をアド
レス一致ライン301に供給する。バス25を経
て送られたアドレス情報がメモリ39によつて作
用されるアドレススペースの範囲内にある場合及
びパリテイエラーが生じていない場合には、回路
300に接続されたACK確認発生器304が、
メモリ39を行き先とする転送の送信サイクル後
の第2サイクルの始めに3本のCNFライン全部
をアサートすることによつてACK確認信号を発
生する。
39のブロツク図である。第8図に示すように、
メモリ39は、コマンドデコード/アドレス/パ
リテイチエツク回路300を備えている。回路3
00は、バスのフアンクシヨン、アドレス及び
IDラインに接続され、良く知られたようにパリ
テイチエツクを実行する。又、回路300は、バ
スアドレスライン上の情報を、レジスタ302か
ら送られるメモリ39によつて作用されるアドレ
ススペースの限界と比較し、この比較結果をアド
レス一致ライン301に供給する。バス25を経
て送られたアドレス情報がメモリ39によつて作
用されるアドレススペースの範囲内にある場合及
びパリテイエラーが生じていない場合には、回路
300に接続されたACK確認発生器304が、
メモリ39を行き先とする転送の送信サイクル後
の第2サイクルの始めに3本のCNFライン全部
をアサートすることによつてACK確認信号を発
生する。
本発明によれば、メモリは、プロセツサノード
からのインターロツク読み取りコマンドを受け取
る手段を備えている。ここに実施するように、こ
のような手段は、バス25を経そしてバスインタ
ーフエイスユニツト64を経て行なわれる転送か
ら受け取つたメツセージ(コマンド、アドレス及
びデータ情報よりなる)を記憶するための入力待
ち行列306を含む。この入力待ち行列306は
バス25を経て高い速度で受け取つたこのような
メツセージを、メモリ39の相対的に速度の低い
論理回路がこれに作用できるようになるまで、記
憶することができる。入力待ち行列306は、バ
ス25上のメツセージに現われるアドレス情報が
アドレス一致信号301によつて決定されるメモ
リ39に対するアドレススペースの範囲内に入る
ときに、バス25からのメツセージを記憶するよ
うにイネーブルされる。
からのインターロツク読み取りコマンドを受け取
る手段を備えている。ここに実施するように、こ
のような手段は、バス25を経そしてバスインタ
ーフエイスユニツト64を経て行なわれる転送か
ら受け取つたメツセージ(コマンド、アドレス及
びデータ情報よりなる)を記憶するための入力待
ち行列306を含む。この入力待ち行列306は
バス25を経て高い速度で受け取つたこのような
メツセージを、メモリ39の相対的に速度の低い
論理回路がこれに作用できるようになるまで、記
憶することができる。入力待ち行列306は、バ
ス25上のメツセージに現われるアドレス情報が
アドレス一致信号301によつて決定されるメモ
リ39に対するアドレススペースの範囲内に入る
ときに、バス25からのメツセージを記憶するよ
うにイネーブルされる。
本発明によれば、レスポンダノードは、コマン
ダノードからのインターロツク読み取りコマンド
を受け取ると共にインターロツク読み取りコマン
ドの開始に続く所定の時間にACK確認信号をコ
マンダノードへ送信するための手段を備えてい
る。第8図に示すように、バスインターフエイス
64、入力待ち行列306、回路300、アドレ
スレジスタ回路302、ACK確認発生器304、
及びメモリ39の内部のCNFラインがこのよう
な手段を構成する。
ダノードからのインターロツク読み取りコマンド
を受け取ると共にインターロツク読み取りコマン
ドの開始に続く所定の時間にACK確認信号をコ
マンダノードへ送信するための手段を備えてい
る。第8図に示すように、バスインターフエイス
64、入力待ち行列306、回路300、アドレ
スレジスタ回路302、ACK確認発生器304、
及びメモリ39の内部のCNFラインがこのよう
な手段を構成する。
本発明によれば、メモリは、入力待ち行列から
の記憶されたメツセージを取り出すと共にこのメ
ツセージからインターロツク読み取り/アンロツ
ク書き込みコマンドとアドレスデータとを発生す
るためのコマンドデコーダ手段を備えている。こ
こに実施するように、このような手段はデコーダ
308を含む。入力待ち行列306の出力はデコ
ーダ308に送られ、このデコーダは、入力待ち
行列306に記憶されたメツセージからアドレス
及びコマンド情報を取り出す。デコーダ308
は、種々のコマンドをデコードするために多数の
指示を供給しそして1組の並列な信号ラインにア
ドレス情報を供給するが、デコーダ306のアド
レス及びコマンド出力は、図示明瞭化のために束
ねられたライン309及び311として第8図に
各々示されている。
の記憶されたメツセージを取り出すと共にこのメ
ツセージからインターロツク読み取り/アンロツ
ク書き込みコマンドとアドレスデータとを発生す
るためのコマンドデコーダ手段を備えている。こ
こに実施するように、このような手段はデコーダ
308を含む。入力待ち行列306の出力はデコ
ーダ308に送られ、このデコーダは、入力待ち
行列306に記憶されたメツセージからアドレス
及びコマンド情報を取り出す。デコーダ308
は、種々のコマンドをデコードするために多数の
指示を供給しそして1組の並列な信号ラインにア
ドレス情報を供給するが、デコーダ306のアド
レス及びコマンド出力は、図示明瞭化のために束
ねられたライン309及び311として第8図に
各々示されている。
本発明によれば、メモリ39は、情報を記憶す
るための記憶手段を含む。ここに実施するよう
に、この記憶手段はメモリアレイ312を含む。
良く知られているように、情報は、メモリアレイ
312へ供給される読み取り及び書き込みコマン
ドによつて指定されたアドレスで識別されるメモ
リアレイ312内の複数の別々の位置に記憶され
る。
るための記憶手段を含む。ここに実施するよう
に、この記憶手段はメモリアレイ312を含む。
良く知られているように、情報は、メモリアレイ
312へ供給される読み取り及び書き込みコマン
ドによつて指定されたアドレスで識別されるメモ
リアレイ312内の複数の別々の位置に記憶され
る。
本発明によれば、メモリ39は、記憶手段に関
連されてアンロツク状態とロツク状態との間で作
動するロツク手段であつて、アンロツク状態にお
いては記憶手段へのアクセスを許可しそしてロツ
ク状態においては記憶手段へのアクセスを拒絶す
るためのロツク手段を備えている。ここに実施す
るように、このロツク手段はロツク制御器310
より成る。
連されてアンロツク状態とロツク状態との間で作
動するロツク手段であつて、アンロツク状態にお
いては記憶手段へのアクセスを許可しそしてロツ
ク状態においては記憶手段へのアクセスを拒絶す
るためのロツク手段を備えている。ここに実施す
るように、このロツク手段はロツク制御器310
より成る。
本発明によれば、メモリは、プロセツサノード
の1つからのインターロツク読み取りコマンドに
応答してロツク手段の状態を指示するロツク状態
指示を発生すると共にロツク手段をアンロツク状
態からロツク状態へ切り換えるためのコマンド手
段であつて、更に、アンロツク書き込みコマンド
に応答して変更された情報を指定の位置に記憶す
ると共にロツク手段をロツク状態からアンロツク
状態に切り換えるためのコマンド手段も備えてい
る。こきに実施するように、このコマンド手段は
ロツク制御器310及びメモリアレイ312を含
む。
の1つからのインターロツク読み取りコマンドに
応答してロツク手段の状態を指示するロツク状態
指示を発生すると共にロツク手段をアンロツク状
態からロツク状態へ切り換えるためのコマンド手
段であつて、更に、アンロツク書き込みコマンド
に応答して変更された情報を指定の位置に記憶す
ると共にロツク手段をロツク状態からアンロツク
状態に切り換えるためのコマンド手段も備えてい
る。こきに実施するように、このコマンド手段は
ロツク制御器310及びメモリアレイ312を含
む。
アドレス及びコマンド情報はロツク制御器31
0へ送られ、この制御器は以下で詳細に述べるロ
ツク機構を含んでいる。デコーダ308からのア
ドレス及びコマンド情報はメモリアレイ312へ
も送られる。メモリアレイ312は読み取り及び
書き込みコマンドに応答して、デコーダ308か
ら受け取つたアドレス情報で指定されるアレイ3
12内の位置へデータを書き込んだりそこからデ
ータを読み取つたりする。
0へ送られ、この制御器は以下で詳細に述べるロ
ツク機構を含んでいる。デコーダ308からのア
ドレス及びコマンド情報はメモリアレイ312へ
も送られる。メモリアレイ312は読み取り及び
書き込みコマンドに応答して、デコーダ308か
ら受け取つたアドレス情報で指定されるアレイ3
12内の位置へデータを書き込んだりそこからデ
ータを読み取つたりする。
本発明によれば、メモリ39は、インターロツ
ク読み取りコマンドの開始に続く不定の時間に、
インターロツク読み取りコマンドを発生したプロ
セツサノードへ、ロツク状態指示を含むロツク状
態メツセージを送信するための状態応答手段を備
えている。好ましくは、応答発生器は、ロツク手
段がアンロツク状態にあるときには指定の位置の
内容を含む第1メツセージ形式を発生するととも
に、ロツク手段がロツク状態にあるときには指定
の位置が使用できないことを指示する第2メツセ
ージ形式を発生するための応答手段を備えてい
る。ここに実施するように、この状態応答手段
は、応答発生器316及び出力待ち行列318を
含む。
ク読み取りコマンドの開始に続く不定の時間に、
インターロツク読み取りコマンドを発生したプロ
セツサノードへ、ロツク状態指示を含むロツク状
態メツセージを送信するための状態応答手段を備
えている。好ましくは、応答発生器は、ロツク手
段がアンロツク状態にあるときには指定の位置の
内容を含む第1メツセージ形式を発生するととも
に、ロツク手段がロツク状態にあるときには指定
の位置が使用できないことを指示する第2メツセ
ージ形式を発生するための応答手段を備えてい
る。ここに実施するように、この状態応答手段
は、応答発生器316及び出力待ち行列318を
含む。
制御器310からのロツク状態信号314及び
メモリアレイ312からのメモリデータは、応答
発生器316へ送られ、この発生器は以下で詳細
に述べる出力応答メツセージを発生する。発生器
312からの応答メツセージは、出力待ち行列3
18へ送られ、メモリ39は前記の仲裁プロセス
によつてバスへのアクセスを得るまでそこに記憶
される。
メモリアレイ312からのメモリデータは、応答
発生器316へ送られ、この発生器は以下で詳細
に述べる出力応答メツセージを発生する。発生器
312からの応答メツセージは、出力待ち行列3
18へ送られ、メモリ39は前記の仲裁プロセス
によつてバスへのアクセスを得るまでそこに記憶
される。
応答発生器316は、メモリ312から受け取
つたデータ、制御器310から受け取つたロツク
状態信号314、及びデコーダ308から受け取
つたコマンド及びID情報に基づいて応答メツセ
ージを形成する。発生器316によつて形成され
た応答メツセージは、メモリ39が要求されたデ
ータを供給できるかどうかによつて2つの形式の
何れかとなる。応答されるコマンドがインターロ
ツク読み取りコマンドでない場合、又はコマンド
がインターロツク読み取りコマンドであつて且つ
ロツク状態信号314がアサートされない場合に
は、応答発生器316は、メモリ312内の指定
の位置の要求された内容を含む第1形式のメツセ
ージを形成する。しかしながら、コマンドがイン
ターロツク読み取りコマンドであり且つロツク状
態ライン314がアサートされた場合には、応答
発生器316は第2形式のメツセージを形成し、
フアンクシヨンライン上の“ロツクされた”コー
ドは、インターロツク読み取りコマンドの指定の
アドレスがロツク状態にありそして要求されたメ
ツセージが受信したインターロツク読み取りコマ
ンドに応答してメモリ39により送信される応答
メツセージに与えられないことを指示する。
つたデータ、制御器310から受け取つたロツク
状態信号314、及びデコーダ308から受け取
つたコマンド及びID情報に基づいて応答メツセ
ージを形成する。発生器316によつて形成され
た応答メツセージは、メモリ39が要求されたデ
ータを供給できるかどうかによつて2つの形式の
何れかとなる。応答されるコマンドがインターロ
ツク読み取りコマンドでない場合、又はコマンド
がインターロツク読み取りコマンドであつて且つ
ロツク状態信号314がアサートされない場合に
は、応答発生器316は、メモリ312内の指定
の位置の要求された内容を含む第1形式のメツセ
ージを形成する。しかしながら、コマンドがイン
ターロツク読み取りコマンドであり且つロツク状
態ライン314がアサートされた場合には、応答
発生器316は第2形式のメツセージを形成し、
フアンクシヨンライン上の“ロツクされた”コー
ドは、インターロツク読み取りコマンドの指定の
アドレスがロツク状態にありそして要求されたメ
ツセージが受信したインターロツク読み取りコマ
ンドに応答してメモリ39により送信される応答
メツセージに与えられないことを指示する。
本発明によれば、メモリ39は、応答発生器3
16からの応答メツセージを記憶すると共にプロ
セツサ31による対応するコマンドの開始に続く
不定の時間にバス25へのアクセスを得た後にプ
ロセツサノード31は記憶された応答メツセージ
を送信するための出力待ち行列手段を備えてい
る。ここに実施するように、このような手段は出
力待ち行列318を含む。発生器316は、応答
メツセージをコンパイルすると、これを出力待ち
行列318に供給する。出力待ち行列318は、
メモリ39がバス25へのアクセスを希望してい
ることをバスインターフエイス64に知らせる。
応答メツセージは、このようなアクセスが得られ
るまで不定の時間中出力待ち行列318に記憶さ
れる。
16からの応答メツセージを記憶すると共にプロ
セツサ31による対応するコマンドの開始に続く
不定の時間にバス25へのアクセスを得た後にプ
ロセツサノード31は記憶された応答メツセージ
を送信するための出力待ち行列手段を備えてい
る。ここに実施するように、このような手段は出
力待ち行列318を含む。発生器316は、応答
メツセージをコンパイルすると、これを出力待ち
行列318に供給する。出力待ち行列318は、
メモリ39がバス25へのアクセスを希望してい
ることをバスインターフエイス64に知らせる。
応答メツセージは、このようなアクセスが得られ
るまで不定の時間中出力待ち行列318に記憶さ
れる。
メモリ39がバス25へのアクセスを許可され
ると、出力待ち行列318に含まれた応答メツセ
ージがシステムバス25に出され、そのコマンド
を最初に発生したコマンダノードへ送られる。メ
モリ39がコマンダノードによつて最初に送られ
たコマンドの実行をいつ完了するかは分からず、
そしてメモリ39が要求されたデータ又はロツク
状態情報の何れかを供給するためにバス25への
アクセスをいつ得るかも分からないので、インタ
ーロツク読み取りコマンドに対応するロツク状態
情報は、もとのインターロツク読み取りコマンド
の開始に続く不定の時間にコマンダノードにおい
てバス25のフアンクシヨンラインに現われる。
ると、出力待ち行列318に含まれた応答メツセ
ージがシステムバス25に出され、そのコマンド
を最初に発生したコマンダノードへ送られる。メ
モリ39がコマンダノードによつて最初に送られ
たコマンドの実行をいつ完了するかは分からず、
そしてメモリ39が要求されたデータ又はロツク
状態情報の何れかを供給するためにバス25への
アクセスをいつ得るかも分からないので、インタ
ーロツク読み取りコマンドに対応するロツク状態
情報は、もとのインターロツク読み取りコマンド
の開始に続く不定の時間にコマンダノードにおい
てバス25のフアンクシヨンラインに現われる。
コマンダノードが首尾良いインターロツク読み
取りコマンドの後にレスポンダノードによつて発
生された応答メツセージを受け取らなかつた場合
には、コマンダノードはACK確認指示を発生し
ない。レスポンダノードがその応答メツセージか
らACK確認信号を受け取らなかつたときには、
そのインターロツク読み取りコマンドによつてセ
ツトされたロツクビツトをクリアする。
取りコマンドの後にレスポンダノードによつて発
生された応答メツセージを受け取らなかつた場合
には、コマンダノードはACK確認指示を発生し
ない。レスポンダノードがその応答メツセージか
らACK確認信号を受け取らなかつたときには、
そのインターロツク読み取りコマンドによつてセ
ツトされたロツクビツトをクリアする。
本発明によれば、メモリ39は、ロツク手段が
アンロツク状態にあるときに指定の位置の内容を
含む第1メツセージ形式を発生すると共に、ロツ
ク手段がロツク状態にあるときに指定の位置が利
用できないことを指示する第2メツセージ形式を
発生するための手段を備えている。ここに実施す
るように、このような手段は、ロツク状態ライン
314、応答発生器316、デコーダ308及び
ロツク制御器310を含む。
アンロツク状態にあるときに指定の位置の内容を
含む第1メツセージ形式を発生すると共に、ロツ
ク手段がロツク状態にあるときに指定の位置が利
用できないことを指示する第2メツセージ形式を
発生するための手段を備えている。ここに実施す
るように、このような手段は、ロツク状態ライン
314、応答発生器316、デコーダ308及び
ロツク制御器310を含む。
E ロツク制御器310の説明
第9図は、ロツク制御器310の詳細な図であ
る。本発明によれば、ロツク手段は、インターロ
ツク読み取りコマンドを阻止すべきメモリアレイ
39内のアドレスに対応する選択されたアドレス
を受け取るためのロツクタグ手段を備えている。
ここで実施するように、このロツクタグ手段は、
4つのロツクタグ352a,352b,352c
及び352dを備えており、これらは論理制御器
35oと共にロツク制御器312を構成する。特
定の用途に基づいてこれより多くの又はこれより
少数のロツクタグを設けられることを理解された
い。ロツクタグ35B2−dは構造及び作用が同
じである。明瞭化のために、ロツクタグ352a
に対する詳細な回路しか示されていない。
る。本発明によれば、ロツク手段は、インターロ
ツク読み取りコマンドを阻止すべきメモリアレイ
39内のアドレスに対応する選択されたアドレス
を受け取るためのロツクタグ手段を備えている。
ここで実施するように、このロツクタグ手段は、
4つのロツクタグ352a,352b,352c
及び352dを備えており、これらは論理制御器
35oと共にロツク制御器312を構成する。特
定の用途に基づいてこれより多くの又はこれより
少数のロツクタグを設けられることを理解された
い。ロツクタグ35B2−dは構造及び作用が同
じである。明瞭化のために、ロツクタグ352a
に対する詳細な回路しか示されていない。
各々のロツクタグ352a−dは、システム2
0のアドレススペース内の位置に対応する値を記
憶するための記憶レジスタ354を備えている。
レジスタ354は、該レジスタに記憶された値が
現われるところの出力端子356を備えている。
レジスタ354は、イネーブル端子358と、ア
ドレスライン309に接続された入力端子360
とを備えている。イネーブル端子358を作用さ
せることにより、レジスタ354はアドレスライ
ン309に現われる信号をロードする。
0のアドレススペース内の位置に対応する値を記
憶するための記憶レジスタ354を備えている。
レジスタ354は、該レジスタに記憶された値が
現われるところの出力端子356を備えている。
レジスタ354は、イネーブル端子358と、ア
ドレスライン309に接続された入力端子360
とを備えている。イネーブル端子358を作用さ
せることにより、レジスタ354はアドレスライ
ン309に現われる信号をロードする。
レジスタの出力端子356は、比較器368の
1つの入力端子366に接続される。比較器36
6の別の入力端子370はアドレスライン309
に接続される。比較器366の出力端子372は
“一致”信号を構成し、これは入力アンドゲート
374の一方の入力端子に送られる。アンドゲー
ト374の他方の入力端子はコマンドライン31
1のアンド書き込みライン380に接続される。
アンドゲート374の出力端子はラツチ382の
リセツト端子に接続される。ラツチ382の出力
端子はLOCK信号を構成し、これは入力アンドゲ
ート386の一方の入力端子387に送られる。
アンドゲート386の他方の入力端子は比較器3
68の一致信号出力に接続される。アンドゲート
386の出力は、アドレスラインに現われるアド
レスがロツクタグ352aによつて“ロツク”さ
れたことを指示する“ヒツト”信号を構成する。
1つの入力端子366に接続される。比較器36
6の別の入力端子370はアドレスライン309
に接続される。比較器366の出力端子372は
“一致”信号を構成し、これは入力アンドゲート
374の一方の入力端子に送られる。アンドゲー
ト374の他方の入力端子はコマンドライン31
1のアンド書き込みライン380に接続される。
アンドゲート374の出力端子はラツチ382の
リセツト端子に接続される。ラツチ382の出力
端子はLOCK信号を構成し、これは入力アンドゲ
ート386の一方の入力端子387に送られる。
アンドゲート386の他方の入力端子は比較器3
68の一致信号出力に接続される。アンドゲート
386の出力は、アドレスラインに現われるアド
レスがロツクタグ352aによつて“ロツク”さ
れたことを指示する“ヒツト”信号を構成する。
ロツクタグ352aの最終の部品は4入力アン
ドゲート388である。アンドゲート388の一
方の入力は、メモリノード39によつて現在処理
されているコマンドがインターロツク読み取りコ
マンドであることを指示するコマンドライン31
1のライン390に接続される。アンドゲート3
88の第2入力はクロツク信号389に接続さ
れ、ロツクタグ352aの動作を適当にゲートす
ると共に競合状態を防止する。アンドゲート38
8の第3入力は、以下で述べる論理制御器350
の“割当て”端子に接続される。アンドゲート3
88の第4の入力端子は反転ロツク状態信号31
4に接続される。アンドゲート380の出力端子
は、レジスタ354のイネーブル入力358及び
ラツチ382のセツト端子に接続される。
ドゲート388である。アンドゲート388の一
方の入力は、メモリノード39によつて現在処理
されているコマンドがインターロツク読み取りコ
マンドであることを指示するコマンドライン31
1のライン390に接続される。アンドゲート3
88の第2入力はクロツク信号389に接続さ
れ、ロツクタグ352aの動作を適当にゲートす
ると共に競合状態を防止する。アンドゲート38
8の第3入力は、以下で述べる論理制御器350
の“割当て”端子に接続される。アンドゲート3
88の第4の入力端子は反転ロツク状態信号31
4に接続される。アンドゲート380の出力端子
は、レジスタ354のイネーブル入力358及び
ラツチ382のセツト端子に接続される。
論理制御器350は、アイドルロツクタグを選
択するための選択エンコーダとして働くロツクタ
グ割当て回路392を備えている。この割当て回
路392は、ロツクタグ352a−dからのロツ
クビツトの状態によりどのロツクタグがフリーで
あるかを判断し、そしてその選択されたロツクタ
グに対する“割当て”信号を立ち上げることによ
りロツク機能を与えるように使用可能なロツクタ
グの1つを指定する。全てのロツクタグが現在指
定されている場合には、“全てビジー”の出力信
号が5入力オアゲート394の1つの入力に送ら
れる。オアゲート394の他の入力は、ロツクタ
グ352a−dの各“ヒツト”信号が供給され
る。
択するための選択エンコーダとして働くロツクタ
グ割当て回路392を備えている。この割当て回
路392は、ロツクタグ352a−dからのロツ
クビツトの状態によりどのロツクタグがフリーで
あるかを判断し、そしてその選択されたロツクタ
グに対する“割当て”信号を立ち上げることによ
りロツク機能を与えるように使用可能なロツクタ
グの1つを指定する。全てのロツクタグが現在指
定されている場合には、“全てビジー”の出力信
号が5入力オアゲート394の1つの入力に送ら
れる。オアゲート394の他の入力は、ロツクタ
グ352a−dの各“ヒツト”信号が供給され
る。
ロツク制御器310がインターロツク読み取り
コマンドを処理する動作について以下に説明す
る。アドレスライン309上のアドレス位置は、
レジスタ354内に記憶されたアドレス値と常に
比較される。レジスタ354内に記憶されたアド
レス値が何れもアドレスライン309に現われる
アドレス位置に等しくない場合には、一致信号が
アサートされず、“ヒツト”信号もアサートされ
ない。回路392の“全てビジー”信号もアサー
トされないとすれば、オアゲート394の入力は
アクテイブではなく、ロツク状態ライン314は
セツトされない。メモリアレイ312(第8図)
は指定位置の内容を応答発生器316へ供給す
る。ロツク状態ライン314がアサートされない
と、応答発生器316は第1形式の応答メツセー
ジを発生し、応答メツセージのビツトにおいて
“良好な読み取りデータ”コードがセツトされ、
これはバス25のフアンクシヨンラインを経て、
それを要求したコマンダノードへ最終的に送信さ
れる。
コマンドを処理する動作について以下に説明す
る。アドレスライン309上のアドレス位置は、
レジスタ354内に記憶されたアドレス値と常に
比較される。レジスタ354内に記憶されたアド
レス値が何れもアドレスライン309に現われる
アドレス位置に等しくない場合には、一致信号が
アサートされず、“ヒツト”信号もアサートされ
ない。回路392の“全てビジー”信号もアサー
トされないとすれば、オアゲート394の入力は
アクテイブではなく、ロツク状態ライン314は
セツトされない。メモリアレイ312(第8図)
は指定位置の内容を応答発生器316へ供給す
る。ロツク状態ライン314がアサートされない
と、応答発生器316は第1形式の応答メツセー
ジを発生し、応答メツセージのビツトにおいて
“良好な読み取りデータ”コードがセツトされ、
これはバス25のフアンクシヨンラインを経て、
それを要求したコマンダノードへ最終的に送信さ
れる。
ロツク状態ライン314の反転値は、ここでア
ンドゲート388に送られる。回路932はロツ
クタグ352a−dの割当て信号の1つを供給す
る。インターロツク読み取りは処理されているの
で、インターロツク読み取りライン390はデコ
ーダ308(第8図)によつてセツトされる。従
つて、ロツク信号389がアクテイベートされる
と、ロツクタグ352aのアンドゲート388が
アクテイベートされ、レジスタ354をイネーブ
ルする。アドレスライン309に現われるアドレ
ス値は、ロツクタグ352aのレジスタ354に
記憶される。又、アンドゲート388がアクテイ
ベートされてラツチ382がセツトされ、ロツク
タグ352aの384のロツクビツトがアサート
される。ここで、ロツクタグ352のレジスタ3
54に含まれた指定位置へのアクセスが次のイン
ターロツク読み取りコマンドに対して拒絶され
る。
ンドゲート388に送られる。回路932はロツ
クタグ352a−dの割当て信号の1つを供給す
る。インターロツク読み取りは処理されているの
で、インターロツク読み取りライン390はデコ
ーダ308(第8図)によつてセツトされる。従
つて、ロツク信号389がアクテイベートされる
と、ロツクタグ352aのアンドゲート388が
アクテイベートされ、レジスタ354をイネーブ
ルする。アドレスライン309に現われるアドレ
ス値は、ロツクタグ352aのレジスタ354に
記憶される。又、アンドゲート388がアクテイ
ベートされてラツチ382がセツトされ、ロツク
タグ352aの384のロツクビツトがアサート
される。ここで、ロツクタグ352のレジスタ3
54に含まれた指定位置へのアクセスが次のイン
ターロツク読み取りコマンドに対して拒絶され
る。
ロツクされた位置への次のインターロツク読み
取りコマンドにより、次のような動作が生じる。
アドレスライン309に現われるアドレス値は、
ロツクタグ352aのレジスタ354に記憶され
た値に等しくなる。従つて、ロツクタグ352a
の端子372の一致信号がセツトされる。ロツク
タグ352aに対する端子384のロツクビツト
はその手前のインターロツク読み取り動作によつ
てセツトされているので、アンドゲート386の
両方の入力がここでアクテイブと成り、ロツクタ
グ352aのヒツト信号をアサートさせる。これ
により、オアゲート394がアクテイベートさ
れ、ロツク状態ライン314がアクテイベートさ
れる。ロツク状態ライン314がアクテイベート
されると、応答発生器316(第8図)が第2形
式の応答メツセージを発生し、LOCKED応答コ
ードがメツセージのフアンクシヨンビツトにセツ
トされる。
取りコマンドにより、次のような動作が生じる。
アドレスライン309に現われるアドレス値は、
ロツクタグ352aのレジスタ354に記憶され
た値に等しくなる。従つて、ロツクタグ352a
の端子372の一致信号がセツトされる。ロツク
タグ352aに対する端子384のロツクビツト
はその手前のインターロツク読み取り動作によつ
てセツトされているので、アンドゲート386の
両方の入力がここでアクテイブと成り、ロツクタ
グ352aのヒツト信号をアサートさせる。これ
により、オアゲート394がアクテイベートさ
れ、ロツク状態ライン314がアクテイベートさ
れる。ロツク状態ライン314がアクテイベート
されると、応答発生器316(第8図)が第2形
式の応答メツセージを発生し、LOCKED応答コ
ードがメツセージのフアンクシヨンビツトにセツ
トされる。
ロツクビツトをクリアするためのアンロツク書
き込みコマンドの動作について以下に説明する。
既にロツクされている位置に対するアンロツク書
き込みコマンドは、アドレスライン309に現わ
れる値がロツクタグのレジスタ354に記憶され
た値に等しくなるようにする。例えば、アンロツ
ク書き込みコマンドがロツクタグ352aによつ
てロツクされた位置をアンロツクするために送信
されたと仮定する。アドレスライン309にアド
レス値が現われると、比較器368の出力により
一致信号がセツトされる。このとき、アンロツク
書き込みライン391は高レベルであるので、ア
ンドゲート374がアクテイベートされ、ラツチ
382は出力端子384のロツクビツト信号をリ
セツトする。アンドゲート386がデアクテイベ
ートされ、ロツクタグ352aに対するアクテイ
ブなヒツト信号をオアゲート394の入力端子か
ら取り去る。アンロツク書き込みコマンドと共に
送信されたデータは、メモリ内の指定の位置に書
き込まれる。
き込みコマンドの動作について以下に説明する。
既にロツクされている位置に対するアンロツク書
き込みコマンドは、アドレスライン309に現わ
れる値がロツクタグのレジスタ354に記憶され
た値に等しくなるようにする。例えば、アンロツ
ク書き込みコマンドがロツクタグ352aによつ
てロツクされた位置をアンロツクするために送信
されたと仮定する。アドレスライン309にアド
レス値が現われると、比較器368の出力により
一致信号がセツトされる。このとき、アンロツク
書き込みライン391は高レベルであるので、ア
ンドゲート374がアクテイベートされ、ラツチ
382は出力端子384のロツクビツト信号をリ
セツトする。アンドゲート386がデアクテイベ
ートされ、ロツクタグ352aに対するアクテイ
ブなヒツト信号をオアゲート394の入力端子か
ら取り去る。アンロツク書き込みコマンドと共に
送信されたデータは、メモリ内の指定の位置に書
き込まれる。
インターロツク読み取りコマンド後の不定の時
間にシステムバスを経て送られるデータ転送とし
てプロセツサに送られるロツク状態メツセージを
与えることにより、本発明では、ACK確認の転
送とロツク状態の送信との機能を別々に行なうこ
とができ、これにより、ロツク状態情報が所定の
時間に又は専用のロツク状態ラインを経て送信さ
れる必要がある場合に要求される経費及び複雑さ
を伴うことなく、多数のロツクビツトを使用する
ことが可能となる。又、これにより、システムバ
スとは別々のバス及びアダプタを経てシステムに
接続されたノードからロツク状態情報を得ること
ができる。
間にシステムバスを経て送られるデータ転送とし
てプロセツサに送られるロツク状態メツセージを
与えることにより、本発明では、ACK確認の転
送とロツク状態の送信との機能を別々に行なうこ
とができ、これにより、ロツク状態情報が所定の
時間に又は専用のロツク状態ラインを経て送信さ
れる必要がある場合に要求される経費及び複雑さ
を伴うことなく、多数のロツクビツトを使用する
ことが可能となる。又、これにより、システムバ
スとは別々のバス及びアダプタを経てシステムに
接続されたノードからロツク状態情報を得ること
ができる。
前記の説明全体にわたり、ロツクされたメモリ
又はアドレススペースは“位置”によつて指定さ
れると言えた。各々のアドレス記憶レジスタはあ
る範囲のアドレスを構成し、単一のインターロツ
ク読み取りコマンド又はアンロツク書き込みコマ
ンドは、端に単一位置ではなくてある範囲のアド
レス位置を各々ロツクしたりアンロツクしたりす
ることができることを理解されたい。
又はアドレススペースは“位置”によつて指定さ
れると言えた。各々のアドレス記憶レジスタはあ
る範囲のアドレスを構成し、単一のインターロツ
ク読み取りコマンド又はアンロツク書き込みコマ
ンドは、端に単一位置ではなくてある範囲のアド
レス位置を各々ロツクしたりアンロツクしたりす
ることができることを理解されたい。
本発明の精神又は範囲から逸脱することなく、
本発明のバスインターフエイス回路及びインター
フエイスにおいて種々の変更や修正がなされ得る
ことが当業者に明らかであろう。本発明は、請求
の範囲内及びその等効物においてこのような修正
や変更を全て網羅するものとする。
本発明のバスインターフエイス回路及びインター
フエイスにおいて種々の変更や修正がなされ得る
ことが当業者に明らかであろう。本発明は、請求
の範囲内及びその等効物においてこのような修正
や変更を全て網羅するものとする。
Claims (1)
- 【特許請求の範囲】 1請求の範囲 保留バス、 上記保留バスに接続されて、各々コマンダノー
ドとして働き、インターロツク読み取りコマンド
及びアンロツク書き込みコマンドを開始するため
の複数の第1ノードであり、これらの第1ノード
は、上記インターロツク読み取りコマンドの開始
に続いて所定の時間経過した時に上記第1ノード
によつて開始された上記インターロツク読み取り
コマンドの受信を指示するアクノーリツジ確認信
号を受け取ると共に、上記インターロツク読み取
りコマンドの開始に続いて不定の時間経過した時
に上記インターロツク読み取りコマンドが実行さ
れたかどうかを指示するロツク状態応答メツセー
ジを受け取り、且つ上記インターロツク読み取り
コマンドの開始に続く上記不定の時間経過中に上
記第1ノード以外のノードが上記保留バスにアク
セスすることを可能とするための手段を備えてい
る上記複数の第1ノード、及び 上記保留バスに接続されてレスポンダノードと
して働く第2ノードであり、 上記第1ノードから上記インターロツク読み取
りコマンドを受け取ると共に、上記インターロツ
ク読み取りコマンドの開始に続いて上記所定の時
間経過した時に上記アクノーリツジ確認信号を上
記第1ノードへ送信するための手段と、 情報を記憶するための指定の位置を含む記憶手
段と、 上記記憶手段に関連されて、アンロツク状態と
ロツク状態との間で作動し、アンロツク状態にお
いては上記記憶手段へのアクセスを許しそしてロ
ツク状態においては上記記憶手段へのアクセスを
拒絶するためのロツク手段と、 上記第1ノードの一つからのインターロツク読
み取りコマンドに応答して、上記ロツク手段の情
報を指示するロツク状態信号を発生すると共に、
上記ロツク手段の状態が上記アンロツク状態にあ
ることを上記ロツク状態信号が示す時上記ロツク
手段をアンロツク状態からロツク状態へ切り換
え、そして更にアンロツク書き込みコマンドに応
答して、上記指定の位置に変更された情報を記憶
すると共に、上記ロツク手段をロツク状態からア
ンロツク状態へと切り換えるためのコマンド手段
と、 上記インターロツク読み取りコマンドの開始に
続いて不定の時間経過した時に、インターロツク
読み取りコマンドを発生した第1ノードに、上記
ロツク状態信号を含む上記ロツク状態応答メツセ
ージを送信するための状態応答手段とを備えた上
記第2ノードから成ることを特徴とするシステ
ム。 2 上記状態応答手段は、上記ロツク手段が上記
アンロツク状態にあるときの上記指定の位置の内
容を含む第1メツセージ形式と、上記ロツク手段
が上記ロツク状態にあるときに上記指定の位置が
使用できないことを指示する第2メツセージ形式
とを発生するための手段を含んでいる請求項1に
記載のシステム。 3 上記記憶手段はメモリアレイから成る請求項
1に記載のシステム。 4 上記ロツク手段は、インターロツク読み取り
コマンドを防止すべきところの上記記憶手段のア
ドレスに対応する選択されたアドレスを受け取る
ためのロツクタグ手段を備えている請求項1に記
載のシステム。 5 上記ロツク手段は、選択されたアドレスを
各々受け取る複数の上記ロツクタグ手段を備え、
これにより、上記記憶手段の複数のアドレス位置
に対してインターロツク読み取りコマンドを選択
的に防止できるようにした請求項4に記載のシス
テム。 6 上記ロツクタグ手段は、上記記憶手段の複数
のアドレス位置に対応する選択されたアドレスを
受け取る請求項4に記載のシステム。 7 保留バス、 上記保留バスに接続されて、コマンダノードと
して働き、上記インターロツク読み取りコマンド
及びアンロツク書き込みコマンドを開始するため
の複数の第1ノードであり、これらの第1ノード
は、上記インターロツク読み取りコマンドの開始
に続いて不定の時間経過した時に上記インターロ
ツク読み取りコマンドが実行されたかどうかを指
示するロツク状態メツセージを受け取り、且つ上
記不定の時間経過中に上記インターロツク読み取
りコマンドを開始した上記第1ノード以外のノー
ドが上記保留バスにアクセスすることを許す手段
からなる上記複数の第1ノード、及び 上記バスに接続されて、レスポンダノードとし
て働く第2ノードであり、 上記第1ノードから上記インターロツク読み取
りコマンドを受け取るための手段と、 情報を記憶するための指定の位置を含む記憶手
段と、 上記記憶手段に関連されて、アンロツク状態と
ロツク状態との間で作動でき、アンロツク状態に
あるときは上記記憶手段へのアクセスを許しそし
てロツク状態にあるときは上記記憶手段へのアク
セスを拒絶するためのロツク手段と、 上記第1ノードの一つからのインターロツク読
み取りコマンドに応答して、上記ロツク手段の状
態を示すロツク状態信号を発生すると共に上記ロ
ツク手段の状態が上記アンロツク状態にあること
を上記ロツク状態が示す時上記ロツク手段をアン
ロツク状態からロツク状態へと切り換え、そして
アンロツク書き込みコマンドに応答して、上記指
定の位置に変更された情報を記憶すると共に上記
ロツク手段をロツク状態からアンロツク状態に切
り換えるためのコマンド手段と、 上記インターロツク読み取りコマンドの開始に
続いて不定の時間経過した時に、インターロツク
読み取りコマンドを発生した第1ノードに、上記
ロツク状態信号を含むロツク状態メツセージを送
信するための状態応答手段とを備える上記第2ノ
ードから成ることを特徴とするシステム。 8 保留バス、 上記保留バスに接続されて、インターロツク読
み取りコマンドを各々開始することのできる複数
のプロセツサノードであり、これらのプロセツサ
ノードは、上記インターロツク読み取りコマンド
及びアンロツク書き込みコマンドを含むコマンド
メツセージを送信する手段、及び上記インターロ
ツク読み取りコマンドの開始に続いて所定数のバ
スサイクルが経過した時にアクノーリツジ確認信
号を受け、且つ上記インターロツク読み取りコマ
ンの開始に続いて不定の時間経過した時に応答メ
ツセージを受け取る手段とを備え、上記アクノー
リツジ確認信号は、上記プロセツサノードによつ
て開始された上記インターロツク読み取りコマン
ドの受信を指示するものであり、上記応答メツセ
ージは、指定の位置がアンロツク状態にあるとき
に上記指定の位置の情報を含むと共に、上記指定
の位置がロツク状態にあるときロツク応答を含む
ものである、上記複数のプロセツサノード、 及び 上記バスに接続されたメモリノードであり、 上記インターロツク読み取りコマンドの開始に
続いて上記所定数のバスサイクルが経過した時に
上記アクノーリツジ確認信号を上記プロセツサノ
ードへ送信するための確認手段と、 上記インターロツク読み取りコマンドとアンロ
ツク書き込みコマンドを上記プロセツサノードか
ら受け取るための入力待ち行列手段と、 上記入力待ち行列手段から記憶されたコマンド
を取り出すと共に、上記コマンドからインターロ
ツク読み取り及びアンロツク書き込み制御及びア
ドレス情報を発生するためのコマンドデコーダ手
段と、 指定の位置を含む複数のアドレス位置を有して
いて、上記コマンドデコーダ手段からの制御及び
アドレス情報に応答して記憶された情報を記憶及
び検索するためのメモリアレイと、 上記メモリアレイ内のアドレス位置に対応する
メモリアドレス値を記憶するためのロツク記憶レ
ジスタと、 上記コマンドデコーダ手段からの上記インター
ロツク読み取り制御及びアドレス情報に応答し、
上記インターロツク読み取りアドレスが上記ロツ
ク記憶レジスタに現在記憶されていない場合には
上記インターロツク読み取りアドレスデータを上
記ロツク記憶レジスタに入れ、そして上記ロツク
記憶レジスタに置かれた上記インターロツク読み
取りアドレスデータに対応するメモリアレイアド
レス位置をロツク状態に置くためのロツク制御手
段であり、このロツク制御手段は、上記デコーダ
手段からのアンロツク書き込みコマンド及びアド
レスデータに応答して、上記ロツク記憶レジスタ
に記憶された上記アンロツク書き込み状態に対応
するメモリアレイアドレス位置をアンロツク状態
に置き、更に上記ロツク制御手段は、上記インタ
ーロツク読み取りコマンドデータに応答して、上
記インターロツク読み取りアドレスデータで指定
されたメモリアドレス位置の状態に対応するロツ
ク状態信号を発生する、上記ロツク制御手段と、 上記ロツク状態信号に応答して、上記指定のア
ドレスがアンロツク状態にある場合は上記入力待
ち行列から受け取つたコマンドのアドレスデータ
によつて指定されたメモリアドレスの内容を含む
応答メツセージを発生すると共に、上記指定のア
ドレスがロツク状態にある場合はロツク応答を含
む応答メツセージを発生するための発生手段と、 上記発生手段からの応答メツセージを記憶する
と共に、上記プロセツサノードによる対応コマン
ドの開始に続いて不定の時間経過した時に上記バ
スへのアクセスを得た後に上記プロセツサノード
へ上記記憶された応答メツセージを送信するため
の出力待ち行列とを備えた上記メモリノードから
成ることを特徴とするシステム。 9 上記ロツク制御手段は、上記応答メツセージ
が上記プロセツサノードによつて首尾良く受け取
られない場合に上記メモリアレイのアドレス位置
をアンロツク状態に復帰する請求項8に記載のシ
ステム。 10 システム上で排他的な読み取り−変更−書
き込み動作を実行するための方法であつて、この
方法は、 コマンダノードからレスポンダノードへのイン
ターロツク読み取りコマンドを開始し、 コマンドの開始に続いて所定の時間経過した時
に上記レスポンダノードから上記コマンダノード
への上記インターロツク読み取りコマンドの受信
を指示するアクノーリツジ確認信号を送信し、 ロツクインジケータを検査し、このロツクイン
ジケータがアンロツク状態にある場合に、上記ロ
ツクインジケータをアンロツク状態からロツク状
態へと切り換え、 上記インターロツク読み取りコマンド開始に続
いて不定の時間経過した時に、上記ロツクインジ
ケータの状態に対応するロツク状態メツセージを
上記コマンダノードへ送信し、そして 上記レスポンダノードによるアンロツク書き込
みコマンドの受信の際に、変更された情報を指定
の位置に記憶すると共に、上記ロツクインジケー
タをロツク状態からアンロツク状態に切り換える
という段階を具備することを特徴とする方法。 11 保留バス上で排他的な読み取り−変更−書
き込み動作を実行する方法であつて、この方法
は、 位置を指定するアドレスを含むインターロツク
読み取りコマンドをコマンダノードからレスポン
ダノードへ開始し、 上記インターロツク読み取りコマンドに続いて
所定数のサイクルが経過した時に上記レスポンダ
ノードから上記コマンダノードへの上記インター
ロツク読み取りコマンドの受信を指示するアクノ
ーリツジ確認信号を送信し、 上記プロツセノードからのインターロツク読み
取りコマンド及びアンロツク書き込みコマンドを
入力待ち行列に受け、 上記入力待ち行列からの記憶されたコマンドを
取り出しそしてそれらのコマンドからインターロ
ツク読み取り及びアンロツク書き込み制御及びア
ドレス情報を発生し、 上記インターロツク読み取り制御情報に応答し
て、上記インターロツク読み取りアドレス情報を
ロツク記憶レジスタにいれ、ロツクビツトをセツ
トし、そして上記インターロツク読み取りアドレ
ス情報が上記ロツク記憶レジスタに予め記憶され
ていない場合に、上記インターロツク読み取りア
ドレス情報に対応するメモリアレイ位置の内容を
第1形式の応答メツセージとして出力待ち行列に
記憶し、 上記インターロツク読み取り制御情報に応答し
て、上記インターロツク読み取りアドレス情報が
上記ロツク記憶レジスタに予め記憶されている場
合に、ロツクされたコードを第2形式の応答メツ
セージとして上記出力待ち行列に入れ、 上記アンロツク書き込み制御情報に応答して、
上記メモリアレイにデータを書き込み、そして上
記アンロツク書き込みアドレス情報が上記ロツク
記憶レジスタに予め記憶されている場合に、上記
ロツクビツトをリセツトし、そして 上記インターロツク読み取りコマンドの開始に
続いて不定の時間経過した時に、上記出力待ち行
列に記憶された上記第1及び第2形式のメツセー
ジを上記コマンダノードへ送信するという段階を
具備することを特徴とする方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/044,954 US4858116A (en) | 1987-05-01 | 1987-05-01 | Method and apparatus for managing multiple lock indicators in a multiprocessor computer system |
US044,954 | 1987-05-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02500550A JPH02500550A (ja) | 1990-02-22 |
JPH0587855B2 true JPH0587855B2 (ja) | 1993-12-20 |
Family
ID=21935220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63504366A Granted JPH02500550A (ja) | 1987-05-01 | 1988-04-27 | マルチプロセッサコンピュータシステムにおいて多数のロックインジケータを管理する方法及び装置 |
Country Status (8)
Country | Link |
---|---|
US (2) | US4858116A (ja) |
EP (1) | EP0358703B1 (ja) |
JP (1) | JPH02500550A (ja) |
KR (1) | KR920010915B1 (ja) |
AU (1) | AU601590B2 (ja) |
CA (1) | CA1304167C (ja) |
DE (1) | DE3882989T2 (ja) |
WO (1) | WO1988008569A1 (ja) |
Families Citing this family (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5202971A (en) * | 1987-02-13 | 1993-04-13 | International Business Machines Corporation | System for file and record locking between nodes in a distributed data processing environment maintaining one copy of each file lock |
US5006982A (en) * | 1988-10-21 | 1991-04-09 | Siemens Ak. | Method of increasing the bandwidth of a packet bus by reordering reply packets |
US5081572A (en) * | 1988-10-28 | 1992-01-14 | Arnold Michael E | Manipulation of time-ordered lists and instructions therefor |
IT1227711B (it) * | 1988-11-18 | 1991-05-06 | Caluso Torino | Sistema multiprocessore di elaborazione dati a risorse distribuite condivise e prevenzione di stallo. |
US5142676A (en) * | 1988-12-28 | 1992-08-25 | Gte Laboratories Incorporated | Separate content addressable memories for storing locked segment addresses and locking processor identifications for controlling access to shared memory |
JP3038781B2 (ja) * | 1989-04-21 | 2000-05-08 | 日本電気株式会社 | メモリアクセス制御回路 |
US5276847A (en) * | 1990-02-14 | 1994-01-04 | Intel Corporation | Method for locking and unlocking a computer address |
US5669002A (en) * | 1990-06-28 | 1997-09-16 | Digital Equipment Corp. | Multi-processor resource locking mechanism with a lock register corresponding to each resource stored in common memory |
AU633724B2 (en) * | 1990-06-29 | 1993-02-04 | Digital Equipment Corporation | Interlock queueing |
US5404483A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for delaying the processing of cache coherency transactions during outstanding cache fills |
US5471591A (en) * | 1990-06-29 | 1995-11-28 | Digital Equipment Corporation | Combined write-operand queue and read-after-write dependency scoreboard |
US5404482A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills |
GB9019023D0 (en) * | 1990-08-31 | 1990-10-17 | Ncr Co | Work station having multiplexing and burst mode capabilities |
US5539911A (en) | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
US5493687A (en) | 1991-07-08 | 1996-02-20 | Seiko Epson Corporation | RISC microprocessor architecture implementing multiple typed register sets |
US5359715A (en) * | 1991-09-16 | 1994-10-25 | Ncr Corporation | Architectures for computer systems having multiple processors, multiple system buses and multiple I/O buses interfaced via multiple ported interfaces |
US5269005A (en) * | 1991-09-17 | 1993-12-07 | Ncr Corporation | Method and apparatus for transferring data within a computer system |
US5430860A (en) * | 1991-09-17 | 1995-07-04 | International Business Machines Inc. | Mechanism for efficiently releasing memory lock, after allowing completion of current atomic sequence |
JPH05210640A (ja) * | 1992-01-31 | 1993-08-20 | Hitachi Ltd | マルチプロセッサシステム |
CA2086691C (en) * | 1992-03-30 | 1997-04-08 | David A. Elko | Communicating messages between processors and a coupling facility |
DE69311330T2 (de) | 1992-03-31 | 1997-09-25 | Seiko Epson Corp., Tokio/Tokyo | Befehlsablauffolgeplanung von einem risc-superskalarprozessor |
US5412788A (en) * | 1992-04-16 | 1995-05-02 | Digital Equipment Corporation | Memory bank management and arbitration in multiprocessor computer system |
EP0638183B1 (en) | 1992-05-01 | 1997-03-05 | Seiko Epson Corporation | A system and method for retiring instructions in a superscalar microprocessor |
JPH05324544A (ja) * | 1992-05-15 | 1993-12-07 | Hitachi Ltd | バス制御方法 |
US5485594A (en) * | 1992-07-17 | 1996-01-16 | International Business Machines Corporation | Apparatus and method using an atomic fetch and add for establishing temporary ownership of a common system resource in a multiprocessor data processing system |
US5469575A (en) * | 1992-10-16 | 1995-11-21 | International Business Machines Corporation | Determining a winner of a race in a data processing system |
US5301332A (en) * | 1992-12-23 | 1994-04-05 | Ncr Corporation | Method and apparatus for a dynamic, timed-loop arbitration |
US5506968A (en) * | 1992-12-28 | 1996-04-09 | At&T Global Information Solutions Company | Terminating access of an agent to a shared resource when a timer, started after a low latency agent requests access, reaches a predetermined value |
WO1994016384A1 (en) | 1992-12-31 | 1994-07-21 | Seiko Epson Corporation | System and method for register renaming |
US5628021A (en) | 1992-12-31 | 1997-05-06 | Seiko Epson Corporation | System and method for assigning tags to control instruction processing in a superscalar processor |
US5666515A (en) * | 1993-02-18 | 1997-09-09 | Unisys Corporation | Information processing system having multiple modules and a memory on a bus, where any module can lock an addressable portion of the memory by sending retry signals to other modules that try to read at the locked address |
US5574862A (en) * | 1993-04-14 | 1996-11-12 | Radius Inc. | Multiprocessing system with distributed input/output management |
CA2140685A1 (en) * | 1994-01-28 | 1995-07-29 | Randy M. Bonella | Bus master arbitration circuitry having improved prioritization |
US5471590A (en) * | 1994-01-28 | 1995-11-28 | Compaq Computer Corp. | Bus master arbitration circuitry having improved prioritization |
US5550988A (en) * | 1994-03-01 | 1996-08-27 | Intel Corporation | Apparatus and method for performing error correction in a multi-processor system |
JPH07262140A (ja) * | 1994-03-16 | 1995-10-13 | Nec Corp | 排他制御装置 |
US5764995A (en) * | 1994-03-25 | 1998-06-09 | Packard Bell Nec | Write once read only registers |
DE19510068A1 (de) * | 1995-03-20 | 1996-10-02 | Siemens Ag | Flüssigmetall-Gleitlager |
US5860137A (en) * | 1995-07-21 | 1999-01-12 | Emc Corporation | Dynamic load balancing |
US6173306B1 (en) | 1995-07-21 | 2001-01-09 | Emc Corporation | Dynamic load balancing |
US5701422A (en) * | 1995-12-13 | 1997-12-23 | Ncr Corporation | Method for ensuring cycle ordering requirements within a hierarchical bus system including split-transaction buses |
US5780828A (en) * | 1996-02-15 | 1998-07-14 | Dh Technology, Inc. | Interactive video systems |
US5732226A (en) * | 1996-04-08 | 1998-03-24 | Vlsi Technology, Inc. | Apparatus for granting either a CPU data bus or a memory data bus or a memory data bus access to a PCI bus |
US5894562A (en) * | 1996-10-28 | 1999-04-13 | Motorola, Inc. | Method and apparatus for controlling bus arbitration in a data processing system |
JPH10134008A (ja) * | 1996-11-05 | 1998-05-22 | Mitsubishi Electric Corp | 半導体装置およびコンピュータシステム |
US5735219A (en) * | 1996-11-27 | 1998-04-07 | Odawara Automation, Inc. | Open base adjustable pallet for supporting work pieces |
US5968157A (en) * | 1997-01-23 | 1999-10-19 | Sun Microsystems, Inc. | Locking of computer resources |
DE69733011T2 (de) * | 1997-06-27 | 2005-09-29 | Bull S.A. | Schnittstellenbrücke zwischen einem Systembus und einem lokalen Bus zur Steuerung wenigstens eines Slave-Gerätes, wie ein ROM-Speicher |
US6209073B1 (en) | 1998-04-27 | 2001-03-27 | International Business Machines Corp. | System and method for interlocking barrier operations in load and store queues |
US6374285B1 (en) * | 1998-05-15 | 2002-04-16 | Compaq Computer Corporation | Method for mutual exclusion of locks in a remote-write globally ordered network of processors |
US7013305B2 (en) | 2001-10-01 | 2006-03-14 | International Business Machines Corporation | Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange |
US6421751B1 (en) * | 1998-11-23 | 2002-07-16 | Advanced Micro Devices, Inc. | Detecting a no-tags-free condition in a computer system having multiple outstanding transactions |
US6611891B1 (en) | 1998-11-23 | 2003-08-26 | Advanced Micro Devices, Inc. | Computer resource configuration mechanism across a multi-pipe communication link |
US6230230B1 (en) * | 1998-12-03 | 2001-05-08 | Sun Microsystems, Inc. | Elimination of traps and atomics in thread synchronization |
US6745273B1 (en) * | 2001-01-12 | 2004-06-01 | Lsi Logic Corporation | Automatic deadlock prevention via arbitration switching |
US8219762B1 (en) * | 2004-08-13 | 2012-07-10 | Oracle America, Inc. | Computer system and method for leasing memory location to allow predictable access to memory location |
US7412572B1 (en) * | 2004-03-17 | 2008-08-12 | Sun Microsystems, Inc. | Multiple-location read, single-location write operations using transient blocking synchronization support |
US8412763B2 (en) | 2006-06-21 | 2013-04-02 | Apple Inc. | Podcast organization and usage at a computing device |
US8516035B2 (en) * | 2006-06-21 | 2013-08-20 | Apple Inc. | Browsing and searching of podcasts |
JP4336613B2 (ja) * | 2004-04-28 | 2009-09-30 | キヤノン株式会社 | 画像形成装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム |
US7496726B1 (en) * | 2005-04-18 | 2009-02-24 | Sun Microsystems, Inc. | Controlling contention via transactional timers among conflicting transactions issued by processors operating in insistent or polite mode |
US8285784B2 (en) * | 2005-11-08 | 2012-10-09 | Alcatel Lucent | Service creation via presence messaging |
US7966362B2 (en) * | 2006-06-21 | 2011-06-21 | Apple Inc. | Management of podcasts |
US7836372B2 (en) * | 2007-06-08 | 2010-11-16 | Apple Inc. | Memory controller with loopback test interface |
US8001328B2 (en) * | 2008-01-29 | 2011-08-16 | International Business Machines Corporation | Method and process for expediting the return of line exclusivity to a given processor through enhanced inter-node communications |
US8479166B2 (en) * | 2008-08-25 | 2013-07-02 | International Business Machines Corporation | Detecting locking discipline violations on shared resources |
US8589603B2 (en) * | 2010-08-30 | 2013-11-19 | International Business Machines Corporation | Delaying acknowledgment of an operation until operation completion confirmed by local adapter read operation |
US9032163B2 (en) * | 2010-09-22 | 2015-05-12 | Novell, Inc. | Data access management |
US9560134B1 (en) * | 2012-06-27 | 2017-01-31 | Netapp, Inc. | Storage array side write locking |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5081646A (ja) * | 1973-11-21 | 1975-07-02 | ||
JPS53105139A (en) * | 1977-02-24 | 1978-09-13 | Nec Corp | Dynamic main memory controller |
JPS58107977A (ja) * | 1981-12-22 | 1983-06-27 | Toshiba Corp | 記憶装置へのアクセス方式 |
JPS59106021A (ja) * | 1982-12-10 | 1984-06-19 | Oki Electric Ind Co Ltd | バス構成方式 |
JPS59180767A (ja) * | 1983-03-28 | 1984-10-13 | インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン | 直列化装置 |
JPS6010384A (ja) * | 1983-06-29 | 1985-01-19 | Nec Corp | デ−タ処理装置 |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3398405A (en) * | 1965-06-07 | 1968-08-20 | Burroughs Corp | Digital computer with memory lock operation |
US3528061A (en) * | 1968-07-05 | 1970-09-08 | Ibm | Interlock arrangement |
GB1273794A (en) * | 1969-07-30 | 1972-05-10 | Int Computers Ltd | Improvements in or relating to magnetic recording systems |
FR2056894A1 (ja) * | 1969-07-31 | 1971-05-07 | Cii | |
US3761883A (en) * | 1972-01-20 | 1973-09-25 | Ibm | Storage protect key array for a multiprocessing system |
US3997875A (en) * | 1973-01-08 | 1976-12-14 | U.S. Philips Corporation | Computer configuration with claim cycles |
US3916384A (en) * | 1973-06-15 | 1975-10-28 | Gte Automatic Electric Lab Inc | Communication switching system computer memory control arrangement |
GB1536853A (en) * | 1975-05-01 | 1978-12-20 | Plessey Co Ltd | Data processing read and hold facility |
US4000485A (en) * | 1975-06-30 | 1976-12-28 | Honeywell Information Systems, Inc. | Data processing system providing locked operation of shared resources |
US3993981A (en) * | 1975-06-30 | 1976-11-23 | Honeywell Information Systems, Inc. | Apparatus for processing data transfer requests in a data processing system |
US4075692A (en) * | 1976-01-02 | 1978-02-21 | Data General Corporation | Data path configuration for a data processing system |
US4055851A (en) * | 1976-02-13 | 1977-10-25 | Digital Equipment Corporation | Memory module with means for generating a control signal that inhibits a subsequent overlapped memory cycle during a reading operation portion of a reading memory cycle |
US4099243A (en) * | 1977-01-18 | 1978-07-04 | Honeywell Information Systems Inc. | Memory block protection apparatus |
US4115854A (en) * | 1977-03-28 | 1978-09-19 | International Business Machines Corporation | Channel bus controller |
US4161778A (en) * | 1977-07-19 | 1979-07-17 | Honeywell Information Systems, Inc. | Synchronization control system for firmware access of high data rate transfer bus |
JPS596415B2 (ja) * | 1977-10-28 | 1984-02-10 | 株式会社日立製作所 | 多重情報処理システム |
US4296466A (en) * | 1978-01-23 | 1981-10-20 | Data General Corporation | Data processing system including a separate input/output processor with micro-interrupt request apparatus |
US4384322A (en) * | 1978-10-31 | 1983-05-17 | Honeywell Information Systems Inc. | Asynchronous multi-communication bus sequence |
DE3009530A1 (de) * | 1979-03-12 | 1980-09-25 | Digital Equipment Corp | Datenverarbeitungssystem |
US4315310A (en) * | 1979-09-28 | 1982-02-09 | Intel Corporation | Input/output data processing system |
US4313161A (en) * | 1979-11-13 | 1982-01-26 | International Business Machines Corporation | Shared storage for multiple processor systems |
US4481573A (en) * | 1980-11-17 | 1984-11-06 | Hitachi, Ltd. | Shared virtual address translation unit for a multiprocessor system |
US4407016A (en) * | 1981-02-18 | 1983-09-27 | Intel Corporation | Microprocessor providing an interface between a peripheral subsystem and an object-oriented data processor |
US4480307A (en) * | 1982-01-04 | 1984-10-30 | Intel Corporation | Interface for use between a memory and components of a module switching apparatus |
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 |
US4574350A (en) * | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
US4698753A (en) * | 1982-11-09 | 1987-10-06 | Texas Instruments Incorporated | Multiprocessor interface device |
US4543628A (en) * | 1983-01-28 | 1985-09-24 | Digital Equipment Corporation | Bus for data processing system with fault cycle operation |
US4587609A (en) * | 1983-07-01 | 1986-05-06 | Honeywell Information Systems Inc. | Lockout operation among asynchronous accessers of a shared computer system resource |
US4706190A (en) * | 1983-09-22 | 1987-11-10 | Digital Equipment Corporation | Retry mechanism for releasing control of a communications path in digital computer system |
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 | マルチプロセッサ制御方式 |
US4709326A (en) * | 1984-06-29 | 1987-11-24 | International Business Machines Corporation | General locking/synchronization facility with canonical states and mapping of processors |
-
1987
- 1987-05-01 US US07/044,954 patent/US4858116A/en not_active Expired - Lifetime
-
1988
- 1988-04-27 DE DE88904801T patent/DE3882989T2/de not_active Expired - Fee Related
- 1988-04-27 WO PCT/US1988/001297 patent/WO1988008569A1/en active IP Right Grant
- 1988-04-27 KR KR1019880701742A patent/KR920010915B1/ko not_active IP Right Cessation
- 1988-04-27 EP EP88904801A patent/EP0358703B1/en not_active Expired - Lifetime
- 1988-04-27 JP JP63504366A patent/JPH02500550A/ja active Granted
- 1988-04-27 AU AU17285/88A patent/AU601590B2/en not_active Ceased
- 1988-04-29 CA CA000565473A patent/CA1304167C/en not_active Expired - Fee Related
-
1989
- 1989-06-28 US US07/372,565 patent/US5068781A/en not_active Expired - Lifetime
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5081646A (ja) * | 1973-11-21 | 1975-07-02 | ||
JPS53105139A (en) * | 1977-02-24 | 1978-09-13 | Nec Corp | Dynamic main memory controller |
JPS58107977A (ja) * | 1981-12-22 | 1983-06-27 | Toshiba Corp | 記憶装置へのアクセス方式 |
JPS59106021A (ja) * | 1982-12-10 | 1984-06-19 | Oki Electric Ind Co Ltd | バス構成方式 |
JPS59180767A (ja) * | 1983-03-28 | 1984-10-13 | インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン | 直列化装置 |
JPS6010384A (ja) * | 1983-06-29 | 1985-01-19 | Nec Corp | デ−タ処理装置 |
Also Published As
Publication number | Publication date |
---|---|
US5068781A (en) | 1991-11-26 |
JPH02500550A (ja) | 1990-02-22 |
AU601590B2 (en) | 1990-09-13 |
CA1304167C (en) | 1992-06-23 |
DE3882989T2 (de) | 1994-01-13 |
EP0358703A1 (en) | 1990-03-21 |
KR920010915B1 (ko) | 1992-12-24 |
KR890702116A (ko) | 1989-12-22 |
AU1728588A (en) | 1988-12-02 |
DE3882989D1 (de) | 1993-09-09 |
US4858116A (en) | 1989-08-15 |
EP0358703B1 (en) | 1993-08-04 |
WO1988008569A1 (en) | 1988-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0587855B2 (ja) | ||
US4949239A (en) | System for implementing multiple lock indicators on synchronous pended bus in multiprocessor computer system | |
EP0370018B1 (en) | Apparatus and method for determining access to a bus | |
US4937733A (en) | Method and apparatus for assuring adequate access to system resources by processors in a multiprocessor computer system | |
EP0358716B1 (en) | Node for servicing interrupt request messages on a pended bus | |
EP0346398B1 (en) | Apparatus and method for a node to obtain access to a bus | |
US5111424A (en) | Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfer | |
US4941083A (en) | Method and apparatus for initiating interlock read transactions on a multiprocessor computer system | |
US5428794A (en) | Interrupting node for providing interrupt requests to a pended bus | |
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) | マルチプロセッサコンピュ―タシステムにおいてシステムリソ―スへの充分なアクセスを確保するコマンダノ―ド方法及び装置 |