JPS62500062A - 分散された仲裁機能を持つコンピュ−タ・バス装置 - Google Patents

分散された仲裁機能を持つコンピュ−タ・バス装置

Info

Publication number
JPS62500062A
JPS62500062A JP60501804A JP50180485A JPS62500062A JP S62500062 A JPS62500062 A JP S62500062A JP 60501804 A JP60501804 A JP 60501804A JP 50180485 A JP50180485 A JP 50180485A JP S62500062 A JPS62500062 A JP S62500062A
Authority
JP
Japan
Prior art keywords
bus
node
priority
data
buffer
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.)
Pending
Application number
JP60501804A
Other languages
English (en)
Inventor
ウイルソン,ジエームズ・エイ・ジユニア
バーンステイン,デビツド・エイチ
Original Assignee
ラシヨナル
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 ラシヨナル filed Critical ラシヨナル
Publication of JPS62500062A publication Critical patent/JPS62500062A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/374Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a self-select method with individual priority code comparator

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 分散された仲裁機能をもつコンピュータ・バス装置発明の背景 1、 発明の分野 本発明は、複数のノードの間の共通通信リンクとして機能する電気的バスに関す るものである。
2、 先行技術 1本の同軸ケーブル、複数の線、またはその他の構成が、複数のノードの間で通 信を行うためにしばしば用いられる。典型的な用途においては、端末装置、中央 処理装!またはコプロセッサ(copyoc@m5ors)、大容量記憶装置、 およびその他の機器が、共通バスによシリンジされる。ノードによる、時分割式 のバスの共用を可能にする多くの先行技術がある。
1つの技術においては、パス・アクセスのための中央制御を用いない。各ノード は、パスが使用中であるかどうかを検出でき、そしてバスが使用中でなければ、 パス・アクセスを希望しているノードが送(すなわち、同時に送信している2つ 以上のノード)を検出する回路を含む。衝突が検出されると、ランダムな時間間 隔で再送信が試みられる。このボピュ2−な技術は、イーサネット(Eth@r n@t)と呼ばれる。
この技術は、ローカル・エリア・ネットワーク、およびバスを通じての送信の数 を最大にする必要がない場合に好適なものである。
別のものでは、所定の期間中に、またはノードが「トークン」を有する時に、ノ ードはバスへのアクセスを許される。そのトークンはノードからノードへ所定の 順序で送られ、または優先順位を基にしたダイナミックな順序づけで送られる。
他のものにおいては、どのノードにノiスへのアクセスを許すべきかを決定する ために、集中させた仲裁器が用いられる。多種類の行列装置および優先装置が使 用されている。
後でわかるように、本発明では、分布仲裁器が用いられ、各ノードが自己の優先 順位(回転優先順位)を独立に決定し、かつ各ノードが独自の優先順位を維持す る。
送信が受信されたことを指示するために、各種のプロトコルがバス装置において 用いられる。これでは、とくに長距離伝送のためには、たとえば、受信。
データが受信されたことばかシでなく、奇偶検査符号すなわち誤り検査符号を用 いて調べられたことをも確認応答できる。ある装置において起る1つの問題は、 ある一般的なノードが確認応答送信を行うと、そのノードがペナルティ−を受け ることである。それらの送信は、ノードの優先順位を低くすることがあり、ノー ド自身のデータを送信する能力を大きく阻害する。後でわかるように、本発明の パス装置は2レベル優先順位機構を採用している請求められた確認応答の送信に よっては優先順位においてノードはペナルティ−を受けない。この一層公平なプ ロトコルは、多用される受信ノードが、多くの送信の宛先となることによってペ ナルティ−を受けることから防止する。
一般に、イーサネットのような、パスのアクセス動作のための分布された制御器 を有するバス装置は、融通性に富む。しかし、分布された制御器における1つの 問題は、故障の原因の検出が困難なことである。したがって、1つのノードがパ スの制御を絶えずめているか、他のノードの送信を妨害しているときは、どのノ ードが問題を起しているのかの決定が困atことがある。後でわかるように1本 発明のパス装置は、バスの諸問題を識別し、更にたとえは衝突条件に関連するノ ードを識別するための誤シ手段を含む。
一般に、先行技術と比較すると、本発明のパス装置によシ、バスを非常に効率良 く使用でき、かつ全てのノードによシ極めて信頼できるやシ方で公平なアクセス が許される。
発明の概要 複数のノードを相互に接続するバス装置を説明する。パスは、各ノードに結合さ れる複数の線を含む。
それらのノードは、仲裁器の制御の下にアクセスする。仲裁器は、ノードの現在 の優先順位を格納するメモリを含む。あるノードが線を介して送信する用意がで きた時に、そのノードはそれの現在の優先順位を線を通じて送信することにより 、線をめてピッド(bad)をする。全てのノードは、ピッドを行っているノー ドの優先順位を検出する。最高の優先順位を持つピッド中のノードがバスの所廟 権をとる。ピッド中のノードの優先順位を検出した後で、各ノードが独自の優先 順位を持ち続けるように、全てのノードはそれぞれの優先順位を所定のやり方で v8整する。したがって、バスのための仲裁がノードの間に分布されて行われ、 各ノードによシ回転優先順位が独立に決定される。
現在の好適な実施例においては、2種類の優先順位更新機構が採用される。ある ノードが確認応答メツセージを送信しても、それの優先順位は下げられない。こ れによりノードがペナルティ−を受けることが阻止される。というのはそのノー ドは他のノードからのデータの宛先だからである。
本発明のバス装置は他の多くの特徴を含む。それらの特徴についてはこの明細書 において詳しく説明する。
図面の簡単な説明 第1図は、本発明のバス装置およびノードへのバス装置の相互接続を示す全体的 なブロック図、第2図は、第1図のノードを相互接続しているバス線によシ仏画 られる信号を記述する線図、第3図は、本発明のバス装置において採用される種 々のプロトコル層ないしレベルのブロック図、第4図は、正常なバスサイクル中 および誤リサイクル中に線を通じて伝送される制御信号の波形を示す図、 第5図は、バス線を通じて伝送される信号のためのサイクル・タイミングの波形 を示す図、第6図は、II)サイクル中にバス線を通じて伝送される信号を識別 するリスト、 第7図は、本発明においてバスをめてピッドをするために各ノードによシ採用さ れる回路のブロック図、 第8図は、ピッド・サイクル(bidding eyel・)中にバス線を通じ て伝送される信号を識別するリスト、第9図は、本発明のためのメツセージ・パ ケットの構成を示すチャート、 第10図は、プロセッサ壷ノードとバス線の間でのインターフェイスのために本 発明において使用されるインターフェイス回路のブロック図、第11図は、第1 0図のインターフェイス回路とともに使用される状態フラッグを示す図、第12 図は、第10図中のバッファをアドレスするために使用されるアドレッシング装 置のブロック図、 第13図は、第1図に示すアダプタ回路の部分的なブロック図、 第14図は、第1図のアダプタ回路の残9部分のブロック図、 第15図は、第13図中のバッファのアドレッシングを記述するために使用され るチャート、第16図は、第14図中のハンターの一部である状態マシンの状態 を示す図、 第17図は、第14図のノ・ンターの一部を示す図、第18図は、第14図のバ ッファ状態RAM制御器の部分である枚数のROMを示す図、 第19図は2、第13図および第14図のアダプタ回路の動作の説明のための流 れ図である。
発明の詳細な説明 コンピュータにおいて使用するのにとくに適するバス装置について説明する。以 下の説明においては、本発明を完全に理解できるようにするためにバス線の数、 波形等のような特定の事項の詳細について数多く述べである。しかし、そのよう な特定の詳細事項なしに実施できることが当業者には明らかであろう。その他の 場合には、本発明を不必要に不明シようにしないようにするために、周知の回路 は詳しくは説明していない。
現在実現されているように、本発明のバス装f!!、は、aao 7’ロセツサ と、それらのプロセッサのタメの入出力装置として主として使用される他のコン ピュータ装置とを相互接続するために用いられる。このバス装置は、回路25. 26のようなインターフェイス回路と、回路27.28のようなアダプタ回路の 間に導電経路を形成するために、第1図において装置バス20として示されてい る複数のバス線を含む。実際には、バス20はプリント回路板上に形成された線 を含む。そのプリント回路板には、「バックプレーン」装置としばしば呼ばれる 構成で回路がプラグインされる。現在製作されている形態においては、装置バス 20と、インターフェイス回路およびアダプタ回路を含むバス装置全体が1個の キャビネット内に納められる。
現在製作されているように、プロセッサPO(21)〜P3 (22)のような 4個のプロセッサがそれぞれのインターフェイス回路を介して装置バスへ結合さ れる。
各プロセッサは中央処理装置とメモリを含む。
また、現在製作されているように、本発明のバス装置は、第1図のバス23.2 4のような4台までの入出力サブシステムとインターフェイスする。もつとも、 その4台という数は本発明にとっては重要なものでは彦い。バス23.24は、 回路27.28のようなアダプタ回路を介して装置バスへ結合される。ここで説 明している実施例においては、バス23゜24は、「ユニバス(Unibuse m)Jであシ、入力作業と出力作業を取扱うためにPDP 11コ/ピユータが 使用される。ディスク・ドライブ、端末装置、プリンタ等のようなその他の周辺 装置が、それらの入出力バス23.24へ結合される。本発明のバス装置に、ど のような入出力装置が使用されるかということは重要ではない。
以下の説明においては、プロセッサ等が本発明のパス装置にインターフェイスさ れる結合点を示すために「ノード」という語を使用することにする。以下の説明 かられかるであろうように、はとんどのノードは同じものとして取扱う、すなわ ち、パス装置に結合されているプロセッサが入出力装置(たとえばバス23.2 4)に対して同じように取扱われる。
本発明においては、全てのインターフェイス回路は同一であシ、かつl0IAa 用として示されているアダプタ回路2Tを除き、全てのアダプタ回路は同一であ る。回路27Fi付加回路30を含み、その付加回路30は、電源投入時の初期 設定(後述する優先順位番号を含む)、初期プログラム・ローディング、クロッ ク信号発生、パネル・インターフェイス、診断、モデム・インターフェイス、電 源インターフェイス等のようなりラスター管理(すなわち、システム管理)のた めに使用される。
現在実現されているように、任意のプロセッサを他の任意のプロセッサまたは任 意の入出力装置と交信させることができる。入出力装置の間(バス23と24の 間のような)の交信は採用されないが、本発明ではそれを使用することもできる 。
前記したように、第2図に示されている信号を(並列に)送信するために使用さ れる通常の複数の並列導体を、バス20は有する。データを送るために64本の 線が用いられる。それらの線は、ピッド・サイクル中に、優先順位を表す信号を 送るためにも用いられる。8本の線が、データの64ビツトのための8パリテイ ピツトを送る。制御信号、とくにビジー(BUSY)、ネカティブ・アクノリッ ジ(NEGATIVEACKNOWLEDGE(NAK))、およびポジティブ ・アクノリッジ(PO8ITIVE ACKNOWLEDGE (pAK) )  oために、3本の線が用いられる。送信中に8個所の各ノードが自身を識別で きるようにするために8本の線が用いられる(送信者識別すなわちID)。後者 のそれ1らの線は、第6図に示されている誤シ符号を送るためにも用いられる。
プロトコル層 ここで説明している実施例においては、第3図に示すように3レベルプロトコル が用いられる。、flとんどの場合、本発明の教示は物理層33を含む。しかし 、本発明を理解するために必要々場合には、上部メツセージ・レベル31とパケ ット層32の簡単な説明が含まれる。それらの各プロトコル層ないしレベルに対 しては、ピア・ツー・ビア・プロトコル(p@er−to−pear prot ocol)が定義される。最高のレベル31によシ、仲裁の長さおよび内容の目 的を、バス上のノードの間で転送させることができるようにする。
ここで説明している実施例においては、そのレベルは、各プロセッサにおいてコ ンピュータープログラム(「ソフトウェア」プログラムおよびマイクロコードの 双方において)完全に実現され、第1図に示されているインターフェイス回路ま たはアダプタ回路による直接サポートがこのプロトコル・レベルのために行われ ることはない。
パケット層32は限られた長さのメツセージ・セグメントをノードの間で送る。
パケットの構成については、後で第9図を参照して詳しく説明する。この層は、 正または負の確認応答を運ぶ状態パケットを用いる伝達を確保するための随意の 機構を含む。
(この確認応答は、第3図のNAK信号またはPAK信号では1至。)確認応答 パケットについては後で詳しく説明する。それらの状態パケットにリソースを統 計的に割当てることによシ、隠れている障害が避けられることに注意することは 1少である。このようにして、データ伝送の優先順位が、そのようなパケットの 伝送によシ妨げられることはない。あるノード動作、とくにページ障害(pag @fault)サービスが上部メツセージ自レベル31をパイパス上、カつパケ ット層と直接インターフェイスしてオーバヘッドを制限する。
物理層33は、導電体(すなわち、第1図のバス20)を通るデータの流れを管 理し、同期をとシ、バス仲裁、誤シ検査、およびこの物理的転送に関連する諸機 能を行う。
パケットの構成 2つのパケット形式、すなわち、データ・パケットおよび状態パケット、がパケ ット層32において定義される。データ・パケットと状態パケットは双方とも2 つの64ビツトのヘッダ語(第9図のヘッダ36.37)を有する。データ・パ ケットは、128語までの64ビツト語も有する。第1のヘッダ36の初めの4 ビツトは送信ノードのアドレスを運び、2番目の4ビツトは受信ノードのアドレ スである。
次の8ビツトは送信すべき情報の長さくすなわち、データの128語まで)を運 ぶ。この長さは状態パケットに対しては0である。次のビット39は、送信が状 態であるか、データであるかを示す(零長さデータ送信を行うことが可能である )。次の4ビツトは、送信側バッファ情報を与える。これにより、受信した状態 パケットと先に送信されたデータ・パケットを一致させることができる。ヘッダ 1と20残りのビットは、このプロトコル・レベルでは定義されていないが、状 態パケットの確認応答を達ぶために主として用いられる。
認証された確認応答(c@rtified acknowledgement) なしに送られるそれらのデータ・パケットは物理層33へ単に与えられる。その 物理層33はそれらのデータ・パケットを送信のために1列に並べる。物理層が 送信中にある誤りを検出するとパケット層32は知らされるが、さもなければそ れはパケットの進行に気づかない。誌柾を伴う送信すべきパケットを物理層へ与 えた時に、パケット層はタイマーを始動させる。一般に、パケットは確認応答さ れるか、物理層で誤9が検出される。(あるパケット確認応答が受信されず物理 層で誤シも検出されないと、(要求があれば)タイムアウトが使用される。ある データパケットが確認応答された時に、データ送信に「一致させられた」状態パ ケットが送られる。それらは、第9図の39で示される場所におけるビットによ シ示されている状態パケットである。(アダプタ回路の場合には、バッファ操作 のダイナミックな割当が行われて、1つのプロセッサが、引き続く多くの送信を 、同じ入出力装置へ送れるようにする。)バスサイクル 物理IQにおいては、装置バス20を通じての送信はバスサイクルに分けられる 。各バスサイクルの持続時間は192nseeである。第5図において、それぞ れの持続時間が約50ns・Cである4つの4分の1の期間(クォーター)にそ れらのバス・サイクルが分割されているのが示されてい。4個の位相クロック信 号が示されている。その位相クロック信号はアダプタ回路2γ(第1図)の回路 30により装置全体へ与えられる。バスを駆動するために棟準のTTL3状態ド ライバが採用される。バスの衝突を避け、バスの鮎特徴を受け容れるために、第 5図に示すように、任意のパス拳サイクルの第2の4分の1の期(Q2)の間で はバスを積極的に駆動できるノードはない。信号を送っているノードは、サイク ルの第3の4分の1の期間から次のサイクルの第1の4分の1の期間の終#)ま で移行(トランジション)することなしにバスを駆動する。信号を受けているノ ードは、サイクルの第4の4分の1の期間の終シまでにバスをストローブする。
上記のタイミングは第2図のデータ/ピッドの64ビツトと、パリティの8ビツ トとに適用される。3個の制御信号と8個のID信号が、コレクタ開放ドライバ によ)駆動されるから、アイドリンクしている4分の1の期間は必要とされない 。
バスを最大限に利用するために、データパケットまたは状態パケットの送信がひ とたび始まると、送信ノードも受信ノードもそのパケット送信を遅らせることは できない。したがって、物理層は、送信ノード内の専用バッファからパケットを 送シ、それらのパケットを受信ノード内の専用バッファに格納する。それらの静 止バッファが第10図にバッファ70として示されている。そのバッファについ ては後で説明する。それらの各バッファは2K X 64ビツトを格納し、パケ ット層プロトコルはそれらのバッファを直接参照できて、それらのバッファが送 信のためにパケットを作ること、および新しく受けたパケットを検査することを 、データを更に動かすことなしに行うことができるようにする。
バス仲裁 各ノードが装置バスをめてピッドをできるようにする回路を、各ノードは含む。
その回路は、プロセッサの場合にはインターフェイス回路に含まれ、7゛ダプタ 路の場合には入出力(装置)ボートに含憬れる。仲裁機構は全てのノードに対し て同じである。第7図を参照して、バス・ピッド(bug blddlng)回 路が第1図のバス20の64本のバス線に結合される。それらの64本の線は第 7図には線20mとして示されている。それらの線のうち8本の線は状態符号器 42へ結合され、8本の線はデータ符号器へ結合される。バス・ピッド回路は、 状態パケットを送る用意ができている時はそのピッド(優先順位番号)をそれら 8本の線のうちの最初の8本の線に置き、データを送る用意ができている時はそ のピッドをそれら8本の線のうちの他の8本の線に置く。
ノードの優先順位番号は優先順位レジスタ50に格納され、かり復号器51に結 合される。デマルチプレクサ52が復号された番号を、回路が状態パケットまた はデータ・パケットのいずれを送る周章ができているかに応じて、状態線または データ線のいずれかへ結合する。優先順位レジスタ50はその優先順位番号を比 較器45.46へ結合することも行う。それらの比較器は、ノードの優先順位が 、符号器から受けた最高の優先+1Ek位に等しいかどうかを決定する。符号器 42.43によシ受けられた最高の状態優先順位と最高のデータ優先順位も比較 器45゜46へ結合される。後で説明するように、ピッド中のノードがピッドを 得たとすると、線53へ信号が与えられる。全てのノードは、自己がバスを争っ ていないとしても、ピッド(btdatng)を受けて、それを14ぺる。優先 順位レジスタ50からの優先順位番号およびその他の情報に加えて線49におけ る8得優先順位番号は、次の優先順位番号を優先順位レジスタ′50へ与えるた めのROM48のアドレスとして用いられる。ROM48によシ実現されるアル ゴリズムを以下に説明する。
状態パケットを送るための任意のピッドがあるものとすると、この状態は状態符 号器42により検出されて、マルチプレクサ58を制御するために使用される。
送信すべき状態パケットが存在する場合には、マルチプレクサ58は状態符号器 42からの最高優先順位番号を線49へ与えるとともに、比較器45からのピッ ド獲得信号を線53へ与える。さもないと、データ符号器43からの最高番号が 線48へ結合され、その番号が比較器46によシ検出されたノードの優先順位番 号に吟しいものとすると、ピッド獲得信号が比較器46から線53へ結合される 。
各ノードは独自の優先順位を有し、その優先順位は各ノードごとに変えられる。
初期設定時には、各ノードに第1図の回路30によシ異なる優先順位が割当てら れる。第8図において、可能な8個の各優先順位番号に応じて、線20mに置か れる信号が示されている。(ここで説明しているバス装置では8個所のノードが 採用されているが、その数は任意である。)任意の時刻に各ノードはただ1つの 優先順位番号(これは可変である)を有することに注意されたい。この優先順位 番号は「状態」または「データ」のものとしては示されておらず、この番号が送 られる線201の何本かが、ノードが状態パケットまたはデータ拳パケットのい ずれを送る用意ができているかを示す。
次に第4図を参照する。周期40で示されている各ピッド・サイクル中に、送信 する用意ができている各ノードがビジー(BUSY)信号54をビジー制御線に 置き、送信者識別線の1本の電位を上昇させる(それらの信号は第2図に示され ている)。各ノードは8本の送信者識別線の1本に割当てられる。このサイクル 中は、バスのためにピッド中のノードは、それの優先順位番号を、データ優先順 位のために指定されている線、または状態優先順位のために指定されている線へ 送る(第4図の信号5B参照)。状態とデータの少くとも一方のための最高ピッ ドが、線20mから各ノードにおける比較器45.46へ送られる。あるノード が自己自身に対してせシ(ピッディング)をしている、すなわち、それの優先順 位レジスタ50内の番号が比較器45または46における番号に等しいものとす ると、そのノードがピッドをもちろん得る。他のピッド中のノード(ビッダ−( b1dd@r))がワシ、優先順位レジスタ5o内の番号がその他のピッド中の ノードにょシ送られた番号よシ高いものとすると、そのノードはピッドをやはシ 得る。というのは、最高の番号がそのノード自体夛・ら送られた番号であるとし ても、比較器がその最高の番号を受けるからである。したがって各ピッド・サイ クル中に、チェーン内で最高優先順位を要求しているノードが、そのバスに対す る独占的なアクセスを許される。ピッドを獲得したノードの優先順位よシ低い優 先順位を現在有している全てのノードは、その優先順位を1だけ増大させる。こ れは全てのノード(ピッドしなかったとしても)で行われる。ROM48が、獲 得優先順位番号を受けるので、その決定を行う。獲得ノードのROMは、それの 優先順位を可能な最低の値にセットする。選択され九ノードの優先順位よシも高 かった優先順位を現在有するノードは、それの優先順位を変えないままとされる 。これはやは、り ROMによシ行われる。物理的に存在しないノードは、チェ ーン内で最高の優先順位位置へ迅速にドリフトするが、それらは要求をしないか ら何の効果ももたらさない。
重要なことは、状態パケット送信を終ったばかりのノードの優先順位を仲裁機構 が変えないことである。というのは、そのノードはデータ・パケット送信を終っ たばか)のノードであろうからである。各回路は、獲得ノードが状態パケット送 信をめてピッドをしたかどうかを知る。その獲得ノードがそのピッドを行った( およびピッドを獲得した)とすると、優先順位番号の変更は行われない。ROM 48は状態/データ信号を受けるから、この状態を実現できる。したがって、そ のノードがたまたま受信宛先として多用されて、状態パケットを送ることをめら れるものとしても、データ・パケット送信のためにバスを得るそのノードの能力 は不当に損われることはない。既に送られたデータ拳パケットの認証を促進する ために、データ・パケットが行列を解かれて、全ての状態パケットが送られるま で、各ノードはそれらのデータ・パケットを無視する。
このように、バスのための優先順位決定機構はノードの間に分布され、各ノード はそれ自体の優先順位番号を決定する。上記のアルゴリズムの実現にょシ、中央 優先順位決定手段が存在しないとしても、各ノードは独自の優先順位番号を維持 する。上記のバス仲裁は、状態パケットおよびデータ・パケットのために別々の 優先順位プロトコルが使用されるという点で、とくに独特である。
バス衝突およびV@シ検出 正常なバス動作中は、第4図に信号55として示されているPAK信号が第1の ヘッダ語の終シに現われる。この信号は受信ノードによ〕送られ、そのノードが 自身を受信ノードとして識別していること、およびそのノードがそのパケットを 受けていることを認めるものである。(これは第2図に示されている3個の制御 信号のうちの1つである。)送信しているノードはそれの送信が終る前にビジー 信号54をiパス・サイクルだけ低くする。これは、あるノードが128個のデ ータ・パケットを送っている場合について波形57によシ示されている。この信 号の低下は、次のバス・サイクルにおいてピッドを再開できるという事実を全て のノードに知らせる。
正常な送信サイクルが行われていないことを示すいくつかの条件に対して、誤υ ザイクルが開始される。たとえば、第2のヘッダ中にPAK信号の電位が上ケ1 −シないか、送信を止める前にビジー信号が1ザイクル低下させられないとする と、第4図のNAK信号59が送られる。送るべき飴の数の検出後の任意の送信 中に、送られる語の数を全てのノードがカウントする(情報の長さを表す8ビツ トがヘッダ1において送られる)。ある与えられた時刻に2個所以上のメートが 送信するものとすると(衝突状態)、全てのノードがこれを再び検出してNAK 信号を送る。
パケットの送信中にIDIの2本以上が高レベルのままであると、衝突が検出さ れる。後で説明するように、他の諸条件がノードにNAK信号を発生させ、した がって誤シサイクルを開始させる。
最初の誤シサイクル中に、誤りを検出する全てのノードが誤り符号を8本の線へ 送り出す。それらの線はID信号のためにも用いられる(第2図参照)。
それらの線のうち7本の線が、第6図に示されているような独自の誤シを示すた めに用いられる。たとえば、5番目の線は一致しない長さく1ncons量st @ut 1@n−gth)を指示するために用いられる。最後の線は、パリティ の8ビツトがパケット送信に一致しなかったことを示す。誤シシーケンスの第2 のサイクルにおいては、それらの同じ8本の線がノード検出の誤シを識別するた めに用いられる。たとえば、アドレスされたノードがデータを受ける用意のでき たバッファを有しないものとすると、そのノードは自身を識別する。
この装置は、誤シ情報がパスを通じて送られた時に作用を行う診断プログラムを 含む。回路30において、検出された誤シの解析が行われ、かつデータの再送信 、故障したノードの分離等のような適切な動作が行われる。各ノード自体はノー ドにおいて問題の識別を許すある診断ルーチンを含む。誤シシーケ/スに続いて デッド・サイクルが起シ、それからピッドが再び起る。
インターフェイス回路 次に第10図を参照する。前記のように、インターフェイス回路はプロセッサと 装置バスの間でインターフェイスを行う。装置バスの64本のデータ線が出力レ ジスタ66と入力レジスタ6Tに結合される。装置バスを往き来するデータはそ れらのレジスタを通って流れる。全てのデータとヘッダ語は線63を通ってバッ ファ70へ流れこむ。プロセッサへ流れ、プロセッサから流れ出すデータがトラ ンシーバ61と二重レジスタ62を通って流れる。(それらのレジスタにより双 方向の流れができるようにされる。)各パス・サイクルの初めの半分の間は、線 63と装置バスの間の流れが適切な向きに起る。それから、各サイクルの第2の 半分の間に、線63とプロセッサの2本の64ビツト・パスの間に流れが起る。
したがって、バッファTOへのデータは、パス・サイクルの半分の間は時間多重 化されて線63を通じて装置バスへ送られ、パス・サイクルの他の半分の間はプ ロセッサへ向う異なる向きへ送られる。
簡単にするために、パリティ番ビットは示さない。
付加線がパリティ−ビットのために使用される。それらのビットもバッファされ 、各バスeサイクル中にデータに対して奇偶検査(パリティ・チェック)が行わ れる。この奇偶検査の結果は線73上の状態ROM74への1つの入力を形成す る。
バッファTOは、スタチック・メモリを備え、128にビット(プラス・パリテ ィ・ビット)の容量を有する。それは送信部と受信部に分けられる。受信バッフ ァと送信バッファにはバス上のノードeアドレス(すなわち、O〜7)に対応す る番号が付けられる(そして、それの専用にされる)。各部は128ビツトを5 12飴だけ格納する。それらの部は64語の個々のバッファ部に更に細分きれる 。各バッファ部は装置内の8個所のノードの1つに指定される。ホーム・プロセ ッサ自体に割当てられたバッファはヘッダ情報の格納に使用される。このヘッダ 領域内では、装置の各ノードに8語が割当てられる。プロセッサがノードからパ ケットを受けると、回路は入来パケットのヘッダ部をそのメートに対応する受信 ヘッダ部に置き、パケットのデータ部を対応する受信バッファに置く。ホーム・ プロセッサに対応する受信ヘッダ部も受信状態部と呼ばれる8つの部分に分けら れる。それらの各部分は装置内の他の各ノードに対する1語状態符号を含む。そ れらの符号は対応するノードへ送られた最後のパケットの状態を示す。
バッファψアドレッシング装置60はバッファTOのアドレッシングを行う。こ れについては第12図を参照して説明する。
8個の送信バッファは受信バッファと同様に構成される。ホーム・プロセッサに 対応する送信バッファは送信ヘッダ部と呼ばれる8つの部分に分けられる。送信 ヘッダ部も装置バス上の8個所のノードに対応して0〜7の番号が付けられる。
各部分の容量は8語長である。あるプロセッサがパケットをある特定のノードへ 送ると、プロセッサのマイクロコード(これについては後で説明する)が、出て ゆくパケットからのヘッダをそのノードに対応する送信ヘッダ部に置き、パケッ ト・データを対応する送信バッファに置く。
状態ROMγ4は、制御器に対して一般に行われているように、状態マシンの一 部として用いられる通常のROMである。(図には1つのROM74が示されて いるが、実際にはROM74は4つの512語×8ビットと、1つの32語×8 ビットを備える。)そのROMは、アドレスとして作用する数個の入力を受け、 第10図のインターフェイス回路を駆動するために適切な出力を与える。状態R OM74の出力は状態レジスタ75ヘロードされ、そのレジスタ内の種々のビッ トの状態がインターフェイス回路を制御する。これについては後で説明する。状 態ROMはパス仲裁の結果、すなわち、ピッド獲得信号を受ける。(これは第7 図を参照して説明した。それは第7図にブロック7Tとして単に示されている。
)前記NAK信号とPAK信号およびビジー制御信号は状態ROMへの入力も形 成する。転送の状態を与えるいくつかの状態フラッグもある。それらは状態RO M74への入力を線Ts上で形成する。それらのフラッグについては第11図を 参照して説明する。状態レジスタ75からの現在の状態は、状態マシンにおいて 一般に行われているように、ROM74への入力を線82上に形成する。ROM 74はマイクロ命令レジスタ88からの入力も受ける。
プロセッサはマイクロコーディングを含む。このマイクロコーディングはプロセ ッサ内のいくつかのボードとインターフェイス回路へ分配される。(マイクロコ ード・アドレス・パスの説明のために、本発明の譲受人に鋲渡された「 」とい う名称の 年 月 日付の未決の 出願第 号を参照されたい。)プロセッサか らのマイクロアドレス・パス85(14本の線)が書込み可能な制御記憶装置8 4に結合され、この記憶装置84がらマイクロ命令をめるためにアドレスを与え る。マイクロ命令レジスタ88は書込み信号を線89を介してバッファTOへ与 え、線9oを介して状態ROM74へ与える。本発明に関するものではないが、 レジスタ8Bの出力は誤p訂正符号機構も制御する。(書込み信号はマルチプレ クサT2によ)時間多重化される。マルチプレクサT2のためのクロック信号は 、線63を通る信号の流れを制御するために使用されるのと同じパス・サイクル 信号である。)記憶装置84は初期化の時にロードされる。実際にはこの記憶装 置はパス85がらマイクロプロセッサを介してアドレスを受ける。診断中は、ど れが本発明にとって不必要であるテストをするために特殊表アドレスが用いられ る。
状態レジスタの出力は、!s94にょシ示されてぃ72ッグヘ与え、信号を線9 6を通じてアドレッシング手段60へ与え、線9Tを通じてバッファ70を制御 する。
第10図の回路の動作の説明前には、プロセッサとインターフェイス回路の間の 制御機構を理解することが助けとなる。これは第11図に示されている状態フラ ッグ98.99.100.101で構成される。先に示したように、第10図の バッファTOはパス上の他の各ノードに専用の受信バッファおよび送信バッファ を含む。すなわち、ノード3からのデータがノード7内の同じ所定のバッファに 常に受けられる。
同様に、各状態フラッグ98〜101は装置内の他の各ノードに専用のフラッグ を含む。実際に、各インターフェイス回路には8組の状態フラッグがちシ、各組 のフラッグはバス上のノードに専用とされる。
状態フラッグはプロセッサまたはインターフェイス回路によりアクセスできる。
送信状態フラッグ9Bは、対応するノードのための送信バッファが空いてないこ と、または最後に送られたパケットに対する状態応答をまだ受けとっていないこ とを指示する。
このフラッグはプロセッサによシセットされ、かつプロセッサによシフリヤされ る。データ受信状態フラッグ99は、ノードのための受信バッファが空でないこ とを指示する。このフラッグは状態マシンによυセットされるが、プロセッサに ょシフリヤされる。認証された状態応答フラッグ10Gが、状態メツセージがノ ードから受けられたことを示す。そのフラッグは状態マシンによシセットされ、 プロセッサによりクリヤされる。最後の7ラツグである転送終了フラッグ101 が、要求データ送信(データまたは状態)が終了した乙とを示す。とのフラッグ は状態マシンによpセットされ、プロセッサにょシフリヤされる。それらのフラ ッグはバッファ状態の実行アカウント(rt+nnlng aeaount)を 与え、したがって、あるバッファを使用できる時、または使用すべき時を決定す る。そのフラッグは状態メツセージが受けられて、調べられたかどうかの実行ア カウントも与える。
第12図には第10図のパッ7ア−アドレッシング手段60が詳しく示されてい る。バッファーアドレス(それの9ビツト)がM 114を介して第10図のバ ッファTOに結合される。第12図にビット116として示されている10番目 のビットがマイクロ命令レジスタ88から発生される。このビットは、残シの9 ビツトによシアドレスされたバッファ場所が送信部または受信部のいずれである かを決定する。
各パス・サイクルに対しては2種類のアドレスが必要とされる。というのは、第 10図を参照して説明したように1データはサイクルの半分で装置から流れ、他 の半サイクルでは時間多重化されて線63へ与えられるようにするために、デー タはプロセッサOバスから流れる。マルチプレクサ110へ与えられるクロック 信号は、各半サイクルでのアドレッシングにおいてその変更を行う。マルチプレ クサ110はggxo図の命令レジスタ88から線111へ与えられるモード− ビット、または状態レジスタ75から線嚢6へ与えられるビットを選択する。マ ルチプレクサからシフタ112へ与えられる信号が、レジスタ106゜107  、108からの信号が線114を通じて出力アドレスに与えられるかどうかを決 定し、かつそれらの信号の順序を決定する。
ホーム・レジスタ106がモード自体の識別番号に対応する番号を格納する。こ の番号は静的であり、初期化の時にセットされる。リンク・レジスタ107が、 送信/受信すべきバッファ番ノードの数を含む。
その数はプロセッサによpセットされる。たとえば、64語を送信または受信す べき時に、バッファ・アドレス・レジスタ108がアドレス信号の順序づけを行 うカラ/りとして動作し、このレジスタはアドレスを増すためにカウント動作を 行う。
したがって、バッファTOのだめの第12図に示されている10ビツト・アドレ スは、線114に送信される9ビツトと、送信/受信ビット116を送信する1 0番目のビットとで構成される。そして、先に述べたように、アドレッシングの モード、すなわち、それが直接、データ、状態、またはヘッダであるかどうかに 応じて、それらのビットは配置される。ヘッダ語自体はプロセッサにおいて発生 され、線63を介して装置バス20上のバッファTOとの間で転送される。
正常な転送中に、第1に、送信プロセッサがヘッダおよびパケット情報を指定さ れたノードのための送信バッファにロードする。ヘッダおよびデータは受信プロ セッサの対応する受信バッファへ送られる。
状態応答が送信メートへ送シ返えされて、パケットの配置を示す。あるパケット (送信プロセッサ)がパケットを別のプロセッサ(受信プロセッサ)へ送ると、 マイクロコードが受信ノードに対応する送信ヘッダおよびデータ部にロードする ことを命令し、それから、状t!lROMにおいて受信ノードに対応する適切な 送信/アクティブ・ビットをセットする。それから、受信ノードの所定の受信バ ッファへ転送が行われ、受信データ・フラッグをセットする。(データまたは状 態の)転送が終ると、プロセッサがパケットを調べた時に、送信終了状態フラッ グがプロセッサによりクリヤされる。
入出力アダプタ回路 A、アダプタ回路の 第1図の回路27.28のようなアダプタ回路は、前記のように、装置バス20 と入出力サブシステムの間でインターフェイスを行う。ここで説明している実施 例においては、サブシステムは入出力機能のためのものであシ、シたがって、バ ス2oに結合されているプロセッサを補佐する。サブシステムの役割のため、サ ブシステムの構成はインターフェイス回路の構成とは多少異なる。1つの特定の 差違は、アダプタ内のバッファが特定の任意のノードがらのデータを受けること に専用にされていない、ナなゎち、それらのバッファが必要に応じてダイナミッ クに割当てられることである。これは、特定の入出力サブシステムとプロセッサ の間で大量のデータ流を必要とすることがある丸めに、行われるのである。
ここで構成されているように、いずれの入出力サブシステムも任意のプロセッサ との間でデータの送受信を行うことができる。バッファ・スペースのダイナミッ クな割当のために、インターフェイス回路の場合におけるよシもバッファのアド レッシングが一層複雑になる。
第13図に示すように、アダプタ回路は入出力サブシステムすなわちプロセッサ (Iop)・バス23と交信する。そのプロセッサ・バス23は、ここで説明し ている実施例においては、標準インターフェイス回路を介してユニバスに結合さ れる。IOPバスは18本のアドレス線と16本のデータ線を有する。
データ線はバス・マルチプレクサ/デマルチプレクサ120に結合され、アドレ ス線はアドレス・レジスタ118とマルチプレクサ119へ結合される。
システム・バス20からの入力データが、双方向バッファ骨パス129へ結合す るために、ラッチ127に結合され、それから三状態ドライバ126へ結合され る。システム・バスのための出力データが出力レジスタ123へ結合され、それ からバス・ドライバ124を介してシステムOバス20へ結合される。プロトコ ル装fi125もシステム拳バス20へ結合される。この装置は前記仲裁を行い 、前記制御装置バス信号を発生し、かつ後述する他の諸機能を実行する。
プロトコル装置125はSBIバス116からの信号も受ける。
プロセッサxOPとの間で転送させられる全てのデ・−夕はバッファ117を通 って流れる。このバッファはアドレス−レジスタ118を介してアドレスされる 。
そのアドレス・レジスタは、アドレスをパイプライン処理するために用いられる 。アドレスは、マルチプレクサ119によシ、後述する複数の信号から選択され る。バック7117の容量は16 X lkバイト、ままたは16 X 128 の64ビツト語である。バッファは16の部分すなわちバッファ部0〜15に分 けられる。バッファ部0は状態パケットおよびヘッダパケットを格納するために 用いられる。このバッファ部0は16の側部分に分けられる。各側部分は残シの バッファ部の1つに組合わされる(すなわち、専用にさせられる)。すなわち、 データの128語を格納できるバッファ部12は、2語のヘッダと状態2語を格 納するために、バッファ部0内に割当てられたスペースを有する。送信が受信さ れてバッファ部12へ割付けられると、その送信のへラダ拳パケットがバッファ 部0の割当てられた側部分に格納される。バッファ部12内のデータに関連する 状態パヶットは同様にバッファ部0の割当てられた側部分に格納される。
各ハス・サイクルの半分がバッファ117とIOPの間の通信に使用され、各パ ス・サイクルの他の半分がバッファ117と装置パスの間の通信に使用される。
マルチプレクサ119とアドレス・レジスタ118に結合されたマルチプレクサ 制御信号がこのサイクル動作を制御する。それらの信号は第14図の状態マシン 134によシ発生される。装置パスに組合されるレジスタ、ドライバ、およびラ ッチを通るデータの流れを制御するために、数多くの他の制御信号が第14図の 状態マシンから発生される。それらの制御信号は標準のタイミング信号であるか ら説明は省略する。
IOPがパスをアドレッシングしている時に、バッフ7・スペースはコンピュー タの主記憶装置の一部であるものとしてコンピュータには見える。この目的のた めに8進アドレス400000〜577777が用いられる。パスからIOPパ ス23を通じてのデータの流れが、たとえばバッファ117からディスクへ、ま たはディスクからバッファ117への直接メモリアクセス(DMA)モードで取 扱われる。サブシステムにおいて使用されるPDP 11は主として管理機能を 行い、演算のためには用いられない。
アダプタ回路のうち、本発明の理解に必要でない部分は示してない。たとえば、 診断、ある種の制御信号、タイミング信号、パリティ・ビット操作、およびその 他の機能のために用いられる部分は図示してない。しかし、奇偶検査回路128 は第13図に示されておシ、この奇偶検査回路はSBIパス116に結合される 。
一般に、パス20からバッファ117へのデータの流れは、パス・サイクルの半 分でラッチ127と、ドライバ126とパス129を介して行われる。パス・サ イクルの他の半分では、バッファ117からパス129ヘマルチプレクサ/デマ ルチプレクサ120を介してデータが光れ、それからIOPバス23へ流れる。
IOPパス23は16ビツト・パスであるから、パス23ヘデータを送るために マルチプレクサ/デマルチプレクサはバッファーパス129の16本の線を順次 選択する。他の向きでは、データはパス23からマルチプレクサ/デマルチプレ クサ120を通ってパス129へ流れ、それからバッファ117へ流れる。同様 に、1度に16ビツトがパス23から順次とシ出、され、バッファーパス129 に置かれる。
第15図に示すように、バッファ117は11ビツト・アドレス140によシア ドレスされる。それらのビットのうちの4ビツトがバッファ部を定め、7ビツト が各部内の128の各語場所をアクセスするために用いられる。3個の付加ビッ トも用いられる。それらの付加ビットのうちの2ビツトが、16ビツト・パスの ためにバッファ・パス129の4つの16ビツ)−フィールドの選択を制御する 。
IOPアドレス139は2つの付加ビットを含む。6ビツトが論理バッファ部選 択アドレスのために用いられる。それの6ビツトはマツピングRAMへ結合され る。そのRAMは出力として4ビツトの物理的バッファ部番号を与える。その番 号はバッファ1Tをアドレッシングするために実際に用いられる。このマツピン グは、隣接していない任意の部分をIOPアドレス・スペース内に隣接して現わ させるために用いられる。これによシ、いくつかのバッファ部からのデータをデ ィスク50間で、たとえば1つのDMA )ランザクジョンにより、相互に転送 できるようにされる。
IOPによシ使用されるバイト順序づけ(ord@rlng)規約は、第2図の プロセッサ21 、2’2によシ使用されるバイト順序づけ規約とは逆である。
たとえば、マルチプレクサ/デマルチプレクサ120からのビットをスワップす るために何らかの手段を設けねばならない。IOP自体がこれを行うことができ るが、その性能は受け容れることができないほど低い。マルチプレクサ/デマル チプレクサ120に結合されているマツピングRAMからの付加ビットがこのス ワツピングを制御する。これは本発明にとって重要ではなく、むしろ、IOPお よびプロセッサ21.22によシ使用される種々の規約から生ずるものである。
第14図において、!OPパス23が、ハンター132と、バッファ状態RAM 133と、装置パス状態マシン134と、状態RAM制御器135とに接続され ている。
バッファ・パス129 トSBIバス11Bハ、状flマシン134へも結合さ れる。
ハンター132はカウンタと、4状態マシンと、複数のレジスタとを備える。そ れらの状態マシンとレジスタについては第16図および第17図を参照して後で 詳しく説明する。しかし、一般に、ハンターは、バッファRAM133を走査す ることによシ、利用できるバッファ部を識別する。RAM133はバッファ11 7内の各バッフ7部の状態を含む。したがって、たとえばデータを受信するもの とすると、ハンターが利用できるバッファ部(バッファ部1〜15)を職別して 、マルチプレクサ119へ受信バッファΦアドレス(RBUF)を与える。そし て、バッファ部がロードされた後で、バッファ状態RAM133において他の表 示がされてバッファ部の新しい状態を示す。
装置バス状態マシン134が、装置パスとの間の送信動作と受信動作を行う。た とえば、各パス・サイクルの半分の間にマルチプレクサ119からのアドレス・ マルチプレクシングを制御する。送信(X)ノ\ンターが妥当状態にある時に( 第16図を参照して後で説明するように)状態マシン134をトリガする。
同様に、妥当状態にある受信(R)ハンターを伴う入来装fffバスの転送が、 状態マシンをトリガする。状態マシン134は、この出願において先に説明した 状態マシンのような他の一般的に使用されている状態マシンに類似する。その状 態マシンは、状態レジスタと読出し専用メモリで主として構成される。この状態 マシンによυ与えられるある制御信号について、第18図のROM181を参照 し、て後で説明する。マシン134により与えられる他の信号が、マルチプレク サ7/デマルチプレクサ制御信号と、バッファ語カウ/ト(7ビツト)を与える ためのマルチプレクサ119のためのオフセット昏カウ/ティングと、マルチプ レクサ119のための制ta信号と、パリティ状態検査と、第13図のプロトコ ル装置125のための制御信号とである。
バッファ状態RAM II+御器135が、RAM133とハンター132にお けろ状態の変化を制御する。それは制御信号&、状faマシン134と、 IO Fバス23と、ハンター132とから受ける。制御器は、RAM133の内容を 変えるため、およびハンター132の状態を変えるために、第18図を参照して 説明する三対のROMを使用する。また、制御器135が2つの状態マシンを含 む。それらのマシンのうちの1つは、状態マシン134からの装置バス要求のた めに用いられ、かつ、たとえば、装置バスへ転送するために使用すべきアドレス を選択する。(状態マシン134自体はどのようなバッファ・アドレス情報も含 まない。)制御器135内の第2の状態マシンは、RAM133に対するハンタ ーのアクセスと、このRAMに対するIOPのアクセスを制御する。第2の状態 マシンは、RAM133に対する、ハンターのアクセスとIOPのアクセスとの 間での仲裁を行う機能も果す。IOPのアクセスは、ハンターのアクセスを無効 にする。IOPのアクセスの頻度が低いからである。制御器135内の2状態マ シンの動作は交錯させられ、各動作はバス−サイクルの工つの半分の間にRAM をアクセスする。RAM133の読出し動作と書込み動作が必要であるから、ト ランザクションを終了するために2パス昏サイクルを必要とする。制御器135 の動作は、第19図の流れ図についての説明によp一層良く理解されるであろう 。
アダプタ回路を理解するためには、RAM113に格納されている特定のバス状 態を理解せねばならない。
下記の表においては、BUFxは15のバス部分の1つを指し、HEADzはバ ッファOKおけるそれに関連するヘッダ中スペースを指シ、5TkTx ハ/( ソファOKおけるそれの関連する状態スペースを指す。下記の表においては、B UFx 、HEADX 、 5TATXは「三つ組(トリプレット)」と呼ばれ る。
名 称 符号 定 義 ないデータを含み、送信または受 信のために割当てられることかで べきデーターパケットをロードする。
XMIT 2 BUFxとHEADx内のデータ・パケットは、送信の用意がで き、送信が 成功すれば、三つ組は7リー(FR EE)状態へ戻される。
XMIT WAIT 3 BUFxとHEADx内のデータ争パケットは、送信 の用意ができ、送信が 成功すれば、三つ組はUNACKED状態へ戻され確認応答を待つ。
UNACKED 4 BUFxとHEADX内のデータ・パケットは、送信され た:ある状態パケ ットが予測される。
人CKED 5 BUFXとHEADx内のデータ争パケットは送信された:  5TATXは、応答として受けた状態パケットを含む (IOP NEW 5TATUS PACKET割込を発生)。
XMIT HOLD 6 BUFxとHEADx内のデータ・パケットに応答し て受信した状態バケッ トを5TATxが含むが、三つ組を自由にしなかったことをIOPは知らされた 。
するために、BUFXとHEADxが保留された。
LATENT 9 入来データ・パケットが誤シなしに受信され、BUFxとH EADxに格納された(IOP NEW DATA PACKET割込を発生す る)。
N08TAT A rOPがBUFxとHEADx内の入来パケットを知らされ るが、5TATz内の 状態パケットを作るか、三つ組を 自由にするかをまだせねばならな い。
5TAT B BUFxとHEADx内のデータ・パケットに応答して送信すべ き状態パケ ットを5TATxが含む。
RCV HOLD C5TATx内の状態パケットが送信された(IOP 5T ATUS−8ENT割込を発生する)。
XMIT ERR7BUFxとHEADx内のパケットを送信している間にVA シが起きた(IOP XMIT ERROR割込を発生) 。XMI’r ER−ROR状態レジスタ において誤シ情 報を利用できる。IOPがRESUMEXMI T指令を発するまで、このノー ドによるそれ以上の送信が禁止さ のサービスのために利用できる( IOP EMPTY BUFFER割込を発生)。
最初に、RAM133内の全てのビットは所定の条件、たとえば全部零、にセッ トされて、全てのバッファ部がツリー(FREE)であることを示す。
B、ハンター アダプタ回路は4つのノル/ターを有する。各/1ンターは4ビツト状態マシン とレジスタを有する。1つのハンターは、受信71ンターと呼ばれる。このノー ンターは、後で説明するように、RAM133を探し、7リー(FREE)であ るバッファ部を識別する。それらのバッファ部は装置パスからデータを受けるた めに用いられる。あるバッファ部がフリー(FB)J)であると決定すると、後 で説明するように、制御器135はノ(ソファ部の状態をレシービング(REC EIVING)へ変える。
バッファ117をアドレッシングするために、ノ(ソフア部番号(RBUF)が マルチプレクサ119により使用される。
送信(X)ハンターは、RAM133を調べて、データを送信する用意ができて いるバッファ部を識別する。
あるバッファ部がひとたび識別されると、バッファ117をアドレスするために それのアドレス(TBUF)がマルチプレクサ119により使用される。これは 上記の表にXMIT状態、XMIT WAIT状態または5TAT状態として示 されている。
新しい(N)ノ・ンターがバッファ状態RAM133を走査して、次の状態のう ちの1つの状態にらるバツ°ファを探す: LATENT 、XMIT HOL D ;X)JIIT ERRiたはRCV HOLDo一般に、それらは、バッ ファ部からIOPへのデータの転送のようなIOP動作を必要とする状態である 。
第4のハンター、すなわち、空ないしエンプティー (EMPTY (E) ) ハンターは、RAM133を走査して、それにIOPからデータをロードできる フリー(FREE)バッファ部を探す。後でわかるように、IOPがデータを識 別された空きバッファ部にロードすると、「ローディング(LOADING)  J状態がRAM133に記される。上記のように、受信ハンターと空ハンターが フリー(FREE)バッファ部を探す。装置パスの他のノード按よる使用のため に、装置パスからのデータを受けることに第1の優先順位が与えられるから、受 信/S/ターは空ハンターよシ高い優先順位を有する。
ハンターのための状態マシンが、それぞれ3つの状態141.142,143. 144を有することが、第16図に示されている。最初に、探索が始った時に4 つのノ・ンターの全てが非妥当状態(状態141) Kセットされる。受信ハン ターと空・・ンターは状態142を探索(huntlg)することに直ちに移行 する。新しいおよび送信ハンターは、探索状態へ移行する前に、「比較」信号( 後で説明する)を必要とする。一致が起ると、すなわち、あるハンターが探して いるものを見つけると、ハンターは妥当状態143に変る。非妥当化が起るまで 、ハンターは妥当状態143に留まる。ハンターのための「一致信号」と非妥当 化信号の発生については、第18図を参照して後で説明する。
新しいハンターまたは送信ハンターが探索を始める前に、第17図の走査器17 0内のカウントはNBUFまたはXBUFのそれぞれのカウントに一致しなけれ ばならない。(通常の図示しない比較器がこの目的のために使用される。)実際 に、これは、それら2つのハンターに対してそれが最後に停止した点から探索を 開始することをめる。これは、新しいハンターまたは送信ハンターが、RAM1 33内の短くされたループ内に留まることを阻止し、RAM133全体よシ少く 走査させる。それらのループは、新しいハンターまたは送信ハンターがサービス 要求中のバッファ部を指定することを阻止できる。同じ考慮は受信ハンターまた は空ハンターに対しては払われない、すなわち、どのようなフリー−バッファで もデータの受信に適当である。他のパックアを働かせる前に同じバッファを再使 用することは何らの不都合も生じない。
第17図には、バッファ状態RAMのアドレッシングがハンターのアクセスのた めに示されている。(10Pパスは、バッファ状態RAM133をアクセスし、 第18図を参照して説明するように、IOPパスからのアドレスでアクセスする 。)4ビツト・カウンタ170が、バッファ状態RAM133の16個所の場所 を走査するためのカウントを与える。このカウンタは、第18図のROM18  Gからの信号によ)増加させられる。
カウンタ17Gからのカウントはマルチプレクサ172を介して結合され、RA Mヘアドレスを与える。このアドレスも、4つのレジスタXBUF 173.R BUF 174.NBUF175、EBUF176に結合される。それらのレジ スタには、第16図の状態マシン、とくに送信ハンター状態マシンと、受信ハン ター状態マシンと、新しいハンター状態マシンと、空ハンター状態マシンとがそ れぞれ組合わされる。
説明のために、受信ハンターが第16図のそれの探索状態142にあると仮定す る。カウンタは、バッファ状態メモリを走査させ、メモリ内の各場所かり1゛4 ぺられて、対応するバッファ場所がフ+) −(FREE)であるかどうかを決 定する。後で説明するように、これは第18図のROM18Gによシ行われる。
フリー(FREE)バッファ部が見出されると、レジスタ174に結合されてい る一致R信号が、このレジスタにカラ/り170のカウントを保持させる。この カウントは、マルチプレクサ119へ受信バッファーアドレス(RBUF)を与 えて、装置バスからロードするために状態マシン134にこの利用できるレジス タを選択させる。同様に、一致が起きた時に、他のハンターが、カウンタ170 からのカウントを記録し7てそれらが探している条件を満す。第18図から明ら かなように、バッファ部の状態を更新するために、それらのレジスタに格納され ているカウント(アドレス)がマルチプレクサ172を通じて利用されてRAM 内の16個所の場所を選択する。
C、バッファ状態RAM制御器 第18図に示すように、状態RAM制御器には3つのROM180.j81.1 82が使用される。(この例においては、各I?、OMは・一対のROMによっ て実現される。) ROM180はRAM133からの4ビツト語を調べて、一 致が起きているかどうかを決定する。与えられた任意の時刻にハンターの任意の 組合せを探すことができる。
線183上の信号が、1つのハンターが探索していることをROM180に知ら せる。それらの信号は第16図のハンター状態マシンから直接得られる。受信ノ ・フリーが探索をしており、RAM133からROM180へ結合されているデ ータが、バッファ部がツリー(FREE)であることを示すと仮定すると、第1 7図のレジスタ1γ4が現在のカウントを記録するように、ROM180の出力 端子から一致信号がそのレジスタへ与えられる。
現在アクセスされているRAM場所をフリー(FREE)からレシービング(R ECEIVING)へ変えるために、ROM180が4ビツト・データ出力語と 書込み制御信号をRAM133へ力える。また、ROMj 80はカウントを増 大させる。同様に、送信ハンター、新しいハンター、またけ空ハンターに対して 一致が起きたとすると、一致信号が第17図のレジスタへ与えられ、RAM13 3に格納されている状態が更新されて、たとえば、IOPバスからデータを受け るために空レジスタが探されたことを示す。ROM180へ寿えられる3番目の カウント状態信号の目的については後で説明する。
状態マシン134がデータ争パケットまたは状態パケットを(マルチプレクサ1 19を介してアドレスを選択することにより)装置バスへ転送し、まだは装置バ スから転送すると、それは信号をROM180へ与えて、その転送が成功したこ と、または転送を完了できなかったことを示す。転送が行われたとすると、RO M180が状態RAM内のバッファ部の状態を変え、更に、データが受けられた 時に受信ハンターを非妥当状態にし、またはデータが装置バスへ送られた時に送 信ハンターを非妥当状態にする。
ROM182はIOP指令を受けてRAM133の内容を調べ、または修正し、 指定されカニバッファ部にある状態パケットまたはデーターパケットの送信を開 始し、新たに受けた状態パケットtたはデータ・パケットにそれが気づいたこと を確認応答し、かつ送信の誤シの後では送信を再開する。IOPバスはアドレス をIOPバスを介してRAMI 33へ与える。ROM182は、たとえば指伶 がそのバッファ部の状態を変えた時にRAM133内のバッファ部の状態を更新 でき、かつ指令に応じて新しいハンターまたは空ハンターを非妥当状態にするこ ともできる。
D、「公平性(FAIRNESS)J制御前記のように、装置バスへの公平なア クセスを確実に行わせるためにある種の措置が講じられている。
データ送信が行われた後では、送信ノードが、たとえば、!認応答が行われるま でデータを保持するバッファ部をフリーにできるように、状態パケットに優先順 位を与えることが重要である。したがって、状態パケットへデータ送信よりも高 い優先順位を与えることが重要である。
制御器135は、送信の必要があるいくつかの状態パケットのカウントを維持す る。IOPが状態指令を発するたびに、そのカウントを増すためにROM182 が用いられる。各状態パケット送信の後で、このカウントはROM1+10によ り減少させられる。カウントが零になる寸で、ROM180は、送信ハンターが データ送信のために一致を見出すことを禁止し、その送信ハンターによる状態パ ケットの送信を制約する。したがって、たとえば、炬査されているバッファア部 が5TAT状態にあったとすると、ROM180は送信一致を出すだけでおる。
カウントが零で、全ての状態パケットが送られたことを示すと、ROM180へ の信号は全ての一致が起ることを許す。
E、オフセット書カウントv作 状態マシン135は、オフセットのアドレスをマルチプレクサ119を介してバ ッファ117へ与える。ここで説明している実施例においては、データのカウン トのために2つのカウンタを使用している。1つのカウンタはオフセットをカウ ントし、他のカウンタはデータ転送の長さを調べるために用いられる。
オフセット・カウンタは最初は−2にセントされ、それからそのオフセットeカ ウンタが零カウントに達した時に7ビツト書オフセツト中アドレスを44る。こ のカウンタは各バッファ部内のオフセット俳アドレスを与える。カウンタを−2 でスタートさせることにより、2つのヘッダ語を区別するために下位ビットを使 用できる。第2のカウンタは送信または受信すべき語数にセットされる(ヘッダ はこの情報を含む)。このカラ/りの内容がビジー信号とともに調べられ、正し い語数が受信されたか否かを判定し、もし受信されなければ誤りザイクルが開始 さ第19図の流れ図は、バッファ状態RAM133に格納されている種々の状態 により表される典型的な制御の流れを示す。それらの状態は、説明したように、 主として制御器135の制御の下に変えられる。
最初に、状態151によシ示されているように、バッファはフリー(FREE  )状態にある。この状態はRAM133に格納される。この点で受信ハンターは 非妥当状態にあり、線152で示されているように、フリーなバッファ部を探す ために探索が行われる。ROM180はいつ一致が起るかを決定し、状態153 によシ示されているように、受信状態をRAM133に書込む。妥当なデータが 受けられると、バッファ部がレーテント(LATENT)状態154に置かれる 。データが妥当であることがひとたび決定されると(これについては後で説明す る)、その新しい状態がROM180からRAM133へ書込まれる。新しいデ ータIOP割込が発生される。
IOPはそれに応答して「次の」指令を発生する。その指令はバッファ部をノー ・スタット(No 5TAT)状態155に置く。ヘッダが、確認応答がめられ ているパケットであるかどうかを判定するためにそのヘッダを調べる。線156 により示されているように、何も要求されないとすると、工OPがフリー(FR EE)信号を発生して状態151へ変える。この新しい状態はROM180によ 、9 RAMへ書込まれる。状態の応答が必要であるとすると、IOPはバッフ ァ状態領域に状態パケットを構成して、バッファ部状態を5TAT状態157へ 変える送信状態指令を出す。最後には、送信ハンターが5TAT状態にあるバッ ファ部を走査し、状態マシン134を通じて転送させる。送信が成功すると、R AM133はROM181を介して受信保持(RCV HOLD)状態158に 更新される。これは、線159によシ示されているようにローディング(LOA DING)状態168へ進む。
空ハンターは、初期化の後で、線161によシ示されているように、空バッファ を探索し、ROM18Gを通じて一致がひとたび起ると、エンプティOj:MP TY)状態166のための適切な符号がRAM133に書込まれる。IOP新し い空バツフア割込信号が発生される。IOPは、ROM182を通じて「次の」 指令を発生する。その指令は、状態168によシ示されているように、ローディ ング(LOADING)符号をRAMに入れ、空ハンターを非妥当状態におく。
バッファ部にデータをロードした後で、IOPは送信の用意ができる。確認応答 をめられないとすると、状態を送信すなわちXMIT(169)へ変える送信指 令をXOPが発生する。ROM1112はRAM13pを更新して送信(XMI T)状態を示す。バッファ部がXMIT状態にあることを送信ハンターが見出し たとすると、それは状態マシン134を通じる送信をトリガする。
ROM180は、送信が成功したことを知らされた後で、線167によシ示され ているようにそのバッファをフリーにする。
確認応答がめられるとすると、ropが送信待期(XMIT−WAIT)指令を 発して、ROM182に状態をXMIT −WAIT へ変えることを命令する (162)。それから、送信が成功した後で確認未応答(UNACKED)状態 163が続く。状態マシン134が適切な状態パケットを受けるまで、バッファ 部はこの状態に留まる。状態パケットが受けられた時に確認応答(ACKED) 状態164が恍く。状態マシ/134はROM181を介してRAMを送信保持 (XMIT I(OLD)状態へ更新する。この状態においては、状態パケット が受けられたが、バッファ部がまだフリーにされていないことをIOPは知らさ れる。
状態パケットがIOPによシ調べられて、それを受け容れることができると判定 すると、線167にょシ示されているように、フリー(FREE)状態151へ 戻される。
G、状態パケットの識別 前記のように、データが送信されて、確認応答がめられると、その送信のための ヘッダは第2のバッファ部番号を含む。この4ビツト数は第9図のヘッダ36に 示されている。受信しているノードにょp状態パケットが送信されると、状態パ ケットがピッディングから送信されていることをプロトコル装置125が認める 。状態パケットの最初の語に対しては、バッファ番号が装置バスから直接とシ出 され、バッファ117をアドレスするために用いられ、かつ5BUFに格納され る。さもないとバッファ部番号を処理するために十分な時間がないことに注意さ れたい。
状態の第2の語に対しては、制御器135はバッファ117をアドレスするため に8BUFの内容を使用する。
H,データ妥当化 装置バス上の各アダプタ回路は、装置パスを通じて送信が行われるたびに、デー タ(または状態パケット)を受ける。バスの動作速度のために、装置バス上の各 送信を調べること、およびその送信がある特定のノードのために意図されたもの であるかどうかを判定することに十分な時間がない。それよシも、データは常に 受けられ、制御器135はデータを調べて、そのデータが妥当であるか、すなわ ち、そのデータがノードに対して意図されているものであるか否かを判定する。
第19図を再び参照して、データが妥当な時だけ、バッファ部の状態はRECE IVING状憇153からL状態ENT状態154へ変えられる。それが妥当で ないとすると、バッファはRECEIVING状態153に留まシ、新しい入来 データが既存の非妥当なデータの上に単に書込まれるだけである。
以上、分布仲裁を採用し、状態送信とデータ送信のために別々の仲裁機構を与え る装置パスについて説明した。このバスはデータを、とくにプロセッサと入出力 装置の間で、転送する効率的な手段を提伊するものである。
I争書(内容)こ度ヌしよし〕 4ケ7 −72!7!j8 /勿θ 手続補正書働式) 2、発明の名称 分散された仲裁機能をもつコンピュータ・バ装置3、補正をする者 事件との関係 特 許 出願人 名称(氏名) ラショナル(ほか2名)5、補正命令 茸、廿ヨの日付 昭和61年 6 月 10日−′ −乙 :′ 6、−補正の対象 (1)特許法第184条の5第1項の規定による書面の特許出願人の欄(2)図 面の翻訳文 (3)法人証明書 (4)委任状 m 別紙の通り (2)図面の翻訳文の浄書(内容に変更なし)(4)別紙の通υ 国際調を報告 117M’/I、e;。’、/nl’1g1l+’1

Claims (24)

    【特許請求の範囲】
  1. 1.複数のバス線を備え、複数のノードを相互に接続するためのバス装置におい て、前記各ノードは仲裁手段を含み、この仲裁手段は、 前記バス線に対するそのノードの現在のアクセス優先順位を表す優先順位番号を 格納する記憶装置と、この記憶装置と前記バス線に結合され、前記ノードがデー タを送信する用意ができた時に、前記現在のノード優先順位を前記バス線へ送信 する送信手段と、 前記ノードのうち自己を除く他のノードの前記優先順位番号を受け、前記他の優 先順位番号を自己の後先順位番号と比較し、その比較を基にして前記データを送 信できるようにする受信手段と、他のノードの記憶装置に格納されている現在の ノードの優先順位とは異なる前記各ノード内の現在のノード優先順位を維持し、 前記現在のノード優先順位を更新する更新手段と を備え、分布された仲裁機構が達成される複数のノードを相互に接続するための バス装置。
  2. 2.請求の範囲第1項記載のバス装置であつて、少くとも1つの前記ノードを入 出力バスに結合するアダブタ回路を含み、この入出力バスは、バツフア・メモリ と、 このバツフア・メモリを前記入出力バスの前記バス線に選択的に結合する選択手 段と、 前記バツフア・メモリの状態を表す信号を格納するバツフア状態メモリと、 このバツフア状態メモリの内容を調べて、前記入出力バスからのデータと、前記 バス線からのデータを受けることができる前記バツフア・メモリ内の少くとも場 所を識別し、かつデータを前記入出力バスへ送る用意ができている前記バツフア 手段内の場所を識別する探索手段と、 この探索手段と前記バツフア・メモリに結合され、前記探索手段により識別され た前記バツフア・メモリ内の場所をアドレツシングするアドレツシング手段と を備えるバス装置。
  3. 3.請求の範囲第1項記載のバス装置であつて、少くとも1つの前記ノードと前 記バス線の間で結合するインターフエイス回路を含み、 前記1つのノードと前記バス線の間で転送されるデータを一時的に格納するバツ フア・メモリを備え、とのバツフア・メモリは複数の部分を含み、各部分はある 1つの前記ノードからのデータを受けることに専用にされ、かつデータをある1 つの前記ノードへ送信することに専用にされているバス装置。
  4. 4.複数のノードに結合される第1の複数のバス線と、前記ノードに結合される 第2の複数のバス線とを備え、前記各ノードは、 データを表す第1の信号(データ信号)と状態を表す第2の信号(状態信号)を 前記第1のバス線と前記第2のバス線へ送り、およびそれらのバス線から受ける ためのトランシーバ手段と、 前記第1と第2のバス線をアクセスするために前記ノードの優先順位(優先順位 番号)を表す信号を格納する優先順位記憶装置と、 a前記ノードが前記データ信号を送信する用意ができている時に前記優先順位番 号を前記第1の線に送り、 b前記ノードが前記状態信号を送信する用意ができている時に前記優先順位番号 を前記第2の線に送り、 c前記ノードからの前記第1と第2の線から優先順位番号を受け、それらの優先 順位番号をノードの優先順位番号と比較し、 d前記ノードが最高の優先順位を有し、それの優先順位番号を前記第1または第 2の線に送つた時に、前記ノードに前記データ信号または前記状態信号を送らせ 、 e前記ノードがデータ信号を送つた時に前記優先順位番号を下げ、かつノードが 状態信号を送つた時に前記優先順位番号を不変のままにすることにより前記優先 順位番号を更新するために、前記第1および第2の線と、前記トランシーバ手段 と、前記記憶装置とに結合される仲裁手段と を備え、それにより前記ノードによる前記第1および第2の線に対する別々の公 平なアクセスが維持される複数のノードを相互に接続するためのバス装置。
  5. 5.請求の範囲第4項記載のバス装置であつて、各ノードが先に受けたデータ信 号に応答して状態信号を送るまで、各ノードは前記データ信号を前記第1と第2 の線へ送る用意を遅らせるバス装置。
  6. 6.請求の範囲第5項記載のバス装置であつて、前記各ノードは独自の優先順位 番号を有し、その優先順位番号はそれの優先順位記憶装置に格納されるバス装置 。
  7. 7.請求の範囲第4項記載のバス装置であつて、少くとも1つの前記ノードを入 出力バスに結合するアダブタ回路を含み、この入出力バスは、バツフア・メモリ と、 このバツフア・メモリを前記入出力バスの前記バス線に選択的に結合する選択手 段と、 前記バツフア・メモリの状態を表す信号を格納するバツフア状態メモリと、 このバツフア状態メモリの内容を調べて、前記入出力バスからのデータと、前記 バス線からのデータを受けることができる前記バツフア・メモリ内の少くとも場 所を識別する探索手段と、 この探索手段と前記バツフア・メモリに結合され、前記探索手段により識別され た前記バツフア・メモリ内の場所をアドレツシングするアドレツシング手段と を備えるバス装置。
  8. 8.請求の範囲第4項記載のバス装置であつて、少くとも1つの前記ノードと前 記バス線の間で結合するインターフエイス回路を含み、 前記1つのノードと前記バス線の間で転送されるデータを一時的に格納するバツ フア・メモリを備え、このバツフア・メモリは複数の部分を含み、各部分はある 1つの前記ノードからのデータを受けることに専用され、かつデータをある1つ の前記ノードへ送信することに専用されるバス装置。
  9. 9.複数のノードを相互に接続するためのバス装置において、 複数のノードに共通の複数の線と、 前記線からのデータ信号を受けるため、および確認応答信号を前記線へ送つて前 記データ信号の受信を確認応答するために、前記線に結合される、前記各ノード 内の送受信手段と、 前記各ノードに独自の優先順位番号を格納するために前記送受信手段と線に結合 される、前記各ノード内の優先順位記憶装置と、 前記記憶装置および線に結合され、前記優先順位番号を比較する、前記各ノード 内の比較手段と、a)前記ノードが前記優先順位番号のうちの最高の1つの優先 順位番号を有する時に、前記ノードが前記データと確認応答信号を送り、 b)データ信号を送信した1つの前記ノードの前記優先順位番号を受け、 c)確認応答信号を送つた1つの前記ノードの前記優先順位番号を不変のままに するために、前記送受信手段と、優先順位記憶装置と、前記比較手段とに結合さ れる、前記各ノード内の制御器とを備え、前記第1の線に対する前記ノードによ る別々の公平なアクセスが維持される複数のノードを相互に接続するためのバス 装置。
  10. 10.請求の範囲第9項記載のバス装置であつて、前記各ノードは、前記データ 信号を受けた後で、信号を送る前に、前記確認応答信号を送るバス装置。
  11. 11.複数のノードに結合される複数のバス線と、前記各ノードのために独自の 優先順位番号を維持するため、および、前記複数のバス線を通じて送信する時に 、その優先順位番号を基にして前記ノードの優先順位を決定するために、前記各 ノードにそれぞれ結合される複数の仲裁手段と、前記ノードの少くとも1つを入 出力バスに結合するアダブタ回路とを備え、このアダブタ回路は、 バツフア・メモリと、 このバツフア・メモリを前記入出力バスの前記バス線に選択的に結合する選択手 段と、 前記バツフア・メモリの状態を表す信号を格納するバツフア状態メモリと、 このバツフア状態メモリの内容を調べて、前記入出力バスからのデータと、前記 バス線からのデータを受けることができる前記バツフア・メモリ内の少くとも場 所を識別し、かつデータを前記入出力バスへ送る用意ができている前記バツフア 手段内の場所を識別する探索手段と、 この探索手段と前記バツフア・メモリに結合され、前記探索手段により識別され た前記バツフア・メモリ内の場所をアドレツシングするアドレツシング手段と を備え、前記バス線と前記入出力バスの間で、前記バツフア・メモリを通じてデ ータを効率的に転送できる複数のノードを相互に接続するためのバス装置。
  12. 12.請求の範囲第11項記載のバス装置であつて、前記探索手段は、複数のレ ジスタとカウンタを含み、そのレジスタは、前記RAMの内容と、そのRAMを 調べる条件の間で一致が生じた時に、前記カウンタのカウントを格納するバス装 置。
  13. 13.請求の範囲第12項記載のバス装置であつて、それぞれ状態マシンに使用 される4つの前記レジスタが用いられるバス装置。
  14. 14.請求の範囲第11項記載のバス装置であつて、前記バス装置を通じる送信 はバス・サイクル中に行われ、そのバス・サイクルの第1の半分が前記バツフア ・メモリと前記入出力バスの間の通信に用いられ、前記バス・サイクルの第2の 半分が前記バス線と前記バツフア・メモリの間の通信に用いられるバス装置。
  15. 15.請求の範囲第11項記載のバス装置であつて、前記アダブタ回路は、前記 バツフア・メモリと通信するバツフア・バスを含み、そのバツフア・バスは前記 入出力バスと前記バス線の間のデータ流のための共通経路を成すバス装置。
  16. 16.請求の範囲第15項記載のバス装置であつて、前記バツフア・バスは少い 数のデータ線と前記入出力バスを有し、マルチブレクシング/デマルチブレクシ ング手段が、前記入出力バスに結合するために前記バツフアのフイールドを選択 するために用いられるバス装置。
  17. 17.請求の範囲第11項記載のバス装置であつて、前記探索手段は、少くとも いくつかの前記ノードからデータを受けるため、および少くともいくつかの前記 ノードへデータを送るために、前記バツフア・メモリ内の場所のダイナミツクな 割当を行うバス装置。
  18. 18.請求の範囲第17項記載のバス装置であつて、前記バツフア・メモリは複 数の部分に分けられ、それらの各部分はダイナミツクに割当てられ、前記バツフ ア・メモリは、複数の副部分に分けられる第1の部分を含み、各副部分は前記部 分の1つに関連させられるバス装置。
  19. 19.請求の範囲第18項記載のバス装置であつて、前記バツフア・メモリの前 記副部分はヘツダ・バケツトおよび状態バケツトを格納するために用いられるバ ス装置。
  20. 20.請求の範囲第19項記載のバス装置であつて、前記バス線からの前記状態 バケツトを識別して、前記バス線からのアドレス信号を前記アドレツシング手段 へ直接結合させるプロトコル手段を含み、それにより、前記状態バケツトは前記 バツフア・メモリの前記副部分のうちの所定の1つにロードされるバス装置。
  21. 21.請求の範囲第11項記載のバス装置であつて、前記仲裁手段は、 前記バス線に対するそのノードの現在のアクセス優先順位を表す優先順位番号を 格納する記憶装置と、前記記憶装置と前記バス線に結合され、前記ノードがデー タを送る用意ができた時に、前記現在のノードの優先順位を前記バス線へ送る送 信手段と、他の前記ノードの前記優先順位番号を受け、前記他の優先順位番号を それ自身の優先順位番号と比較し、この比較を基にして前記データの送信を可能 にする受信手段と、 他のノードの記憶装置に格納されているノードの現在の優先順位とは異なるノー ドの現在の優先順位を前記各ノード内に維持し、前記ノードの現在の優先順位を 更新する更新手段と を備えるバス装置。
  22. 22.複数のノードに結合される複数のバス線と、前記各ノードのために独自の 優先順位番号を維持するため、および、前記バス線を通じて送信するために、そ の優先順位番号を基にして前記ノードの優先順位を決定するために、前記各ノー ドにそれぞれ結合される複数の仲裁手段と、 少くとも1つの前記ノードと前記バス線間で結合するためのインターフエイス回 路と を備え、このインターフエイス回路は、前記1つのノードと前記バス線の間で転 送されるデータを一時的に格納するためのバツフア・メモリを備え、このバツフ ア・メモリは、ある1つの前記ノードからのデータを受けるために専用にされ、 かつある1つの前記ノードへデータを送ることに専用される複数のノードを相互 に接続するためのバス装置。
  23. 23.請求の範囲第22項記載のバス装置であつて、前記バス装置はバス・サイ クル中に動作し、そのバス・サイクルの第1の半分が前記バツフア・メモリと前 記バス線の間の通信に用いられ、前記バス・サイクルの第2の半分が前記ノード と前記バツフア・メモリの間の通信に用いられるバス装置。
  24. 24.請求の範囲第22項記載のバス装置であつて、前記仲裁手段は、 前記バス線に対するそのノードの現在のアクセス優先順位を表す優先順位番号を 格納する記憶装置と、前記記憶装置と前記バス線に結合され、前記ノードがデー タを送る用意ができた時に、前記現在のノードの優先順位を前記バス線へ送る送 信手段と、他の前記ノードの前記優先順位番号を受け、前記他の優先順位番号を それ自身の優先順位番号と比較し、この比較を基にして前記データの送信を可能 にする受信手段と、 他のノードの記憶装置に格納されているノードの現在の優先順位とは異なるノー ドの現在の優先順位を前記各ノード内に維持し、前記ノードの現在の優先順位を 更新する更新手段と を備えるバス装置。
JP60501804A 1984-04-19 1985-04-05 分散された仲裁機能を持つコンピュ−タ・バス装置 Pending JPS62500062A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60215484A 1984-04-19 1984-04-19
US602154 1990-10-25

Publications (1)

Publication Number Publication Date
JPS62500062A true JPS62500062A (ja) 1987-01-08

Family

ID=24410193

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60501804A Pending JPS62500062A (ja) 1984-04-19 1985-04-05 分散された仲裁機能を持つコンピュ−タ・バス装置

Country Status (6)

Country Link
EP (1) EP0177607A1 (ja)
JP (1) JPS62500062A (ja)
AU (1) AU4291185A (ja)
DE (1) DE3590162T1 (ja)
GB (1) GB2167628B (ja)
WO (1) WO1985004967A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06216967A (ja) * 1992-08-28 1994-08-05 American Teleph & Telegr Co <Att> 通信装置および通信方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3928481C2 (de) * 1989-08-29 1994-09-22 Diehl Gmbh & Co Prioritätsorientiertes dezentrales Busvergabesystem
JPH06500655A (ja) * 1990-10-03 1994-01-20 スィンキング マシンズ コーポレーション 並列コンピュータ・システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4004283A (en) * 1974-10-30 1977-01-18 Motorola, Inc. Multiple interrupt microprocessor system
US4009470A (en) * 1975-02-18 1977-02-22 Sperry Rand Corporation Pre-emptive, rotational priority system
US3993981A (en) * 1975-06-30 1976-11-23 Honeywell Information Systems, Inc. Apparatus for processing data transfer requests in a data processing system
US4067059A (en) * 1976-01-29 1978-01-03 Sperry Rand Corporation Shared direct memory access controller
US4096571A (en) * 1976-09-08 1978-06-20 Codex Corporation System for resolving memory access conflicts among processors and minimizing processor waiting times for access to memory by comparing waiting times and breaking ties by an arbitrary priority ranking
US4121285A (en) * 1977-04-01 1978-10-17 Ultronic Systems Corporation Automatic alternator for priority circuit
US4334288A (en) * 1979-06-18 1982-06-08 Booher Robert K Priority determining network having user arbitration circuits coupled to a multi-line bus
US4408300A (en) * 1980-09-15 1983-10-04 Burroughs Corporation Single transmission bus data network employing an expandable daisy-chained bus assignment control line

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06216967A (ja) * 1992-08-28 1994-08-05 American Teleph & Telegr Co <Att> 通信装置および通信方法

Also Published As

Publication number Publication date
AU4291185A (en) 1985-11-15
WO1985004967A1 (en) 1985-11-07
GB2167628B (en) 1988-06-22
EP0177607A1 (en) 1986-04-16
DE3590162T1 (de) 1986-08-07
GB2167628A (en) 1986-05-29
GB8527870D0 (en) 1985-12-18

Similar Documents

Publication Publication Date Title
US4766536A (en) Computer bus apparatus with distributed arbitration
US5016162A (en) Contention revolution in a digital computer system
US5287537A (en) Distributed processing system having plural computers each using identical retaining information to identify another computer for executing a received command
US4920483A (en) A computer memory for accessing any word-sized group of contiguous bits
CA1218467A (en) Arbitration mechanism for assigning control of a communications path in a digital computer system
US6321285B1 (en) Bus arrangements for interconnection of discrete and/or integrated modules in a digital system and associated method
US4041472A (en) Data processing internal communications system having plural time-shared intercommunication buses and inter-bus communication means
US4769768A (en) Method and apparatus for requesting service of interrupts by selected number of processors
US5237567A (en) Processor communication bus
AU628532B2 (en) Method and apparatus for interfacing a system control unit for a multiprocessor system with input/output units
EP0458516A2 (en) Memory access bus arrangement
JPS58501740A (ja) デ−タ処理システムにおけるホスト、周辺制御プロセツサのような対になつたプロセツサのインタ−フエ−ス機構
JPS6218949B2 (ja)
US4661905A (en) Bus-control mechanism
JPS60150147A (ja) デジタルコンピュータシステム
JPH05250293A (ja) 通信装置及び通信装置を使用する方法
US5148545A (en) Bus device which performs protocol confidential transactions
KR100644596B1 (ko) 버스 시스템 및 그 버스 중재방법
EP0512685B1 (en) Quadrature bus protocol for carrying out transactions in a computer system
JPH0246974B2 (ja)
US6714994B1 (en) Host bridge translating non-coherent packets from non-coherent link to coherent packets on conherent link and vice versa
KR910001788B1 (ko) 다중 프로세서 시스템용 메세지 전송 인터럽팅 장치 및 이의 실행방법
JPS62500062A (ja) 分散された仲裁機能を持つコンピュ−タ・バス装置
US6678770B1 (en) PCI bus control system having intelligent devices that own and manage non-intelligent devices for relaying information from non-intelligent devices
US7130946B2 (en) Configuration and method having a first device and a second device connected to the first device through a cross bar