JPS61177560A - 高速の並列バス構造およびデ−タ転送方法 - Google Patents

高速の並列バス構造およびデ−タ転送方法

Info

Publication number
JPS61177560A
JPS61177560A JP1413685A JP1413685A JPS61177560A JP S61177560 A JPS61177560 A JP S61177560A JP 1413685 A JP1413685 A JP 1413685A JP 1413685 A JP1413685 A JP 1413685A JP S61177560 A JPS61177560 A JP S61177560A
Authority
JP
Japan
Prior art keywords
agent
request
bus
data
parallel bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP1413685A
Other languages
English (en)
Inventor
レイモンド・スコツト・テトリツク
ジヨン・ビイーストン
ロバート・リーランド・フアーレル
アリレザ・サラビ
サドアーシヤン・バラチヤンドラン
エドウイン・エル・ジヤツクス,ジユニア
ステイーブン・デイ・カツセル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Priority to JP1413685A priority Critical patent/JPS61177560A/ja
Publication of JPS61177560A publication Critical patent/JPS61177560A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔利用分野〕 本発明は、ソースと複数の受信データ処理装置の間でデ
ータを転送する装置および方法に関するものであシ、更
に詳しくいえば、多重バス構造を用いてソースと複数の
データ処理装置および複数の周辺装置の間でバスに沿っ
てデータを転送するととに関するものである。
〔従来技術〕
コンピュータの分野においては、たとえばコンビエータ
のような複数のデータ処理装置と、複数のプリンタと、
複数のメモリなどとの間で、システムバスすなわちデー
タバスを介してデータと指令を転送することは、全く一
般的なことである。
データ処理装置は、メモリのアドレスに格納されている
命令を実行するプロセッサを通常含んでいる。処理され
るデータは、データ処理装置を他のデジタルハードウェ
アを相互に接続するバスを介して、入力装置/出力装置
によりシステムとの間で転送される。バスに結合されて
いるデータ処理装置の間のデータ転送の速度に対する共
通の制約は、データ処理装置の間で実際にデータの交換
が行われる前の指定された時間内に、所定の事象系列が
起ることを必要とするプロトコルすなわち「ハンドシェ
ーキング」制約である。
データ処理装置と、たとえば記憶装置と第2ののプロセ
ッサおよびディスクドライブ力どのような周辺装置との
間で、データのやシとシを行うために種々の方法が考え
られている。そのうちの1つでは、処理装置の記憶装置
と周辺装置の間で大量の情報を動かせるようKする直接
メモリ転送を利用する。しかし、従来の直接メモリ転送
の欠点の1つは、直接メモリ転送ごとに何らかのプロセ
ッサの活動が必要なことである。転送をスタートおよび
ストップさせる各種の命令その他の信号が必要とされ、
しかもそれらの信号の発生には処理装置への割込みを必
要とする。複数のプロセッサを利用するデータ処理装置
においては、第1のプロセッサのメモリと第2のプロセ
ッサのメモリとの間における直接メモリ転送には、あい
まいさを避けるために、複雑なシステムプロトコルとア
ドレッシングとを必要とする。九とえは、第1のプロセ
ッサAのローカルリソースメモリと第2のプロセッサB
のローカルリソースメモリの間の共通バスに沿うデータ
の転送には、第2のメモリをアクセスして、バスに沿う
第2のプロセッサの転送を開始させるために、第2のプ
ロセッサの機能への割込みを必要とするのが普通である
。また、第1のプロセッサのメモリと第2のプロセッサ
のメモリとの間のメモリアドレスの何らかの重なシ合い
のために同じ番号をつけられている場所における各メモ
リの内容に何らあいまいさがないようにするには、デー
タ転送プロトコルが複雑になる。
したがって、多数のプロセッサを有するデータ処理装置
においては、データ転送の効率を最高にするためには、
システムリソースの適切な割当ておよびアクセスが重要
であることは明らかである0〔概要〕 本発明は、多数のプロセッサの間のデータおよびメツセ
ージの転送を最適にするために、かつ、システムリソー
スを各バスに結合の全ての装置へ秩序正しく割当てるた
めに、多重バス構造を含むデータ処理装置アーキテクチ
ャを提供するものである。本発明のバス構造は、汎用並
列バスと、通信プロトコルおよびデータ転送プロトコル
を定めるシステムインターフェイスを介して相互に接続
される特殊バスとを有する。
複数のデータ処理装置の間でデータを転送するための多
重バスシステム・アーキテクチャおよび改良したデータ
伝送方法が、本発明により開示される。本発明のバス構
造は、実際のデータ転送に先立って最少の「ハンドシェ
イク」を用いてデータおよびメツセージの交換を高速度
で行えるようにするために、データ処理装置と周辺装置
(それらをまとめて「エージェント(ag@nt) ト
呼フjとにする)を相互に接続する並列バスと直列バス
を含む。直列バスプロトコルおよび並列バスプロトコル
は、各通信エージェントに結合されているメツセージ制
御器により制御される。並列バスを介して行われるデー
タトラフィックに大きい影響を与えることなしに、ロー
カルメモリと第2の処理リソースをアクセスできるよう
に、ローカルバスがシステム内の処理エージェントに結
合される。
あるエージェントのローカルバスに結合されているリソ
ースに対する他のバスエージェントからの直接アクセス
も、・メツセージ制御器により制御される◇ ある要求バスエージェントが並列バスに沿うデータ交換
を開始することを希望したとすると、その要求バスエー
ジェントハ、ハス要求(BREQ)信号を表明し、それ
の独特のエージェント仲裁番号に対応するデジタルコー
ドを全てのシステムエージェントに結合されているX、
O,(識別)バスへ送る。バス要求エージェントの仲裁
番号が所定の最高優先度を有するのであれば、バス要求
エージェントは並列バスを使用できる。それから要求エ
ージェントはそれ自身のアドレスとともに応答エージェ
ントのアドレスをアドレス/データバス上に表明すると
同時に、応答エージェントへの指令を指令バス上に表明
する。データ交換を継続する用意ができた時に1要求エ
ージェントは要求エージェントレディ(REQ RDY
)信号を表明する。
同様に、応答エージェントがデータ転送を続行する用意
ができた時に、応答エージェントは応答エージェントレ
ディ(REPLY RDY)信号を表明する。
両方のレディ信号が表明された時のみ、アドレス/デー
タバス上のデータが妥幽であると考えられる。REQ 
RDY  信号と関連してサイクルの終シ(EOC)信
号を表明する要求エージェントにょシ、データ転送動作
が終らされる。
本発明の直列バスを用いて、メツセージを別のエージェ
ントへ送ることを希望しているバスエージェントが、デ
ータメツセージを包み、直列バスが使用されていないこ
とを確認してから、そのデータメツセージを送る。メツ
セージを受けた応答エージェントは、その直列メッセー
ジニ続<フレーム間期間中に確認応答(ACK)信号を
送る。そのバスに沿う要求が衝突することが検出される
と、直列ハスエージェントが衝突再送仲裁サイクルを開
始する。その衝突再送仲裁サイクルにおいて、直列バス
の使用権が適当なやシ方で割付けられる。
本発明のローカルバスは、あるエージェントの第1のプ
ロセッサに1 ローカルメモリと処理リソースへの、高
速、広帯域幅の並列バスを与える。
データは、第1の(または第2の)プロセッサとローカ
ルメモリリソースの間で、ローカルバスプロトコルに従
って転送される。ローカルバス上の全ての事象は、第1
のプロセッサの内部クロックサイクルに合わせてクロッ
クされる。応答エージェントが、求められているデータ
動作(たとえば読出し動作または書込み動作)をバスク
ロックにより定められる速度で実行することができない
ものとすると、その応答エージェントは、ローカルバス
の状態と情報内容とを次のクロックサイクルの間不変の
まま保つことを要求する待期信号を表明する。待期信号
を使用するととKよシ、待期信号が表明されている間に
遅延を導入することによって、応答エージェントが第1
のプロセッサよシも遅い速度で動作できるようKする。
〔実施例〕
以下、図面を参照して本発明の詳細な説明する。
以下に、複数のデータ処理装置の間でデータを、転送す
るための多重バスシステム・アーキテクチャおよび改良
したデータ転送方法について説明する。以下の説明にお
いては、本発明を完全に理解できるように、特定の数、
特定のバイト、特定のレジスタ、特定のアドレス、特定
の時間、特定の信号等について述べるが、本発明がそれ
らの特定の具体例に拘束されずに実施できることは、当
業者には明らかであろう。また、本発明を不必要に不明
確にしないために、周知の回路や装置はブロック図で示
すことにする。
まず第1図を参照して、本発明は、複数の処理装置(プ
ロセシングユニット)25.26と、包括的記憶装置3
0(または、たとえばプリンタ、ディスクドライブなど
のような他の装置)のような周辺装置とを含む。ここで
の説明のために1本発明のバス構造に結合されている全
てのデータ処理装置および全ての周辺装−〇ことを、ま
とめて「エージエン) (ag@nts) Jと呼ぶこ
とにする。
図示のように、処理装置25.26および包括的記憶装
置30は、データ転送のために、並列バス35および直
列バス37により互いに相互接続される。各処理装置2
5.26は、第1のプロセッサ40.41をそれぞれ含
む。それらの第1のプロセッサは、それぞれのバスイン
ターフェイス装置44を介して並列バス35と直列バス
37に結合される。バスインターフェイス装置44は、
後に詳述するようにI10ロジック46およびメツセー
ジ制御ロジック′50を含む。図示のように、各処理装
置は、メモリ54のようなローカルデータ処理リソース
へローカルバス56を介して結合され、処理装置25の
場合にはローカルバス56を介してメモリ540はか第
2のプロセッサ5Tにも結合される。プロセッサ40.
41は、ローカルバスインターフェイス回路58を介し
てメモIJ54のようなそれぞれのローカルリソースに
結合される。
後で説明するように、本発明のバスアーキテクチャによ
り、メツセージをバスに結合されている全てのエージェ
ントの間で高速直列転送でき、デ−タをニジエンドの間
で高速並列転送することができる。更に、本発明のアー
キテクチャにより、各処理装置のためのローカルリソー
スを構成するローカルメモリ54に格納されているデー
タのアクセスを含めて、バスエージェントの間でデータ
転送を行うためのプロセッサ割込みが最少になる。
tた、後で説明するように、データ転送を行うためには
最少のハンドシェイク動作だけが要求されるように、並
列バス35と、直列バス37、およびローカルバス56
に対してのデータ転送プロトコルが定められている。第
1図には、バスに結合されている処理装置が2つだけ示
されているが、本発明の構造により、複数の処理装置と
、メモリ、ディスクドライブ、プリンタなどのような複
数の周辺装置を、ここで説明するバス構造の1つまたは
全てを用いて、相互に接続できることがわかるで多ろう
並列バス 次に第3図を参照する。並列バス35はアドレス/デー
タ線60を含む。このアドレス/データ線60は、ここ
で説明している実施例では、32本のアドレス・データ
線(プラス4本のハリティ線)を有し、それらのアドレ
ス・データ線へはアドレスとデータが交互に多重化され
て与えられる0まだ、並列バス35に結合されている各
エージェントがバス獲得のために独特のエージェント仲
裁11号(アービトレーション・ナンバー)を伝えられ
るようにするエージェント仲裁1s62を含み、高優先
度線64(これについては後で説明する)は全体的な仲
裁プロトコルとは無関係に各エージェントが並列バスの
使用権を獲得できるようにする。バスの使用権は、バス
ロックI!69にバスロック信号を表明(アサート)す
ることにより保持でき、それにより他のエージェントを
バスの獲得がら効果的に閉め出す。また、エージェント
が並列バス制御を要求できるようにするためにバス要求
線(BREQ) 66が設けられ、処理装置25゜26
が他のバスエージェントへ指令(コマンド)を伝えられ
るようにするために指令バス68が設けられる。誤シ状
態を示すために異議1s(イクセプション・ライン)7
0が設けられ、適切な同期をとシ、制御を行えるように
システム制御線72が設けられる。
並列バス35は、3種類のバスサイクルをサポートする
。それらのサイクルは、たとえば処理装置25のような
あるエージェントの要求で開始される、「仲裁(アービ
トレーション)サイクルと、「転送(トランスファー)
」サイクルと、「異議(−イクセプション)」サイクル
とである。ここでの説明のために、仲裁サイクルは、並
列バス35を専用的に制御する試みがあるエージェント
により行われる、並列バスサイクルとして定義される。
仲裁サイクルにより、1度にただ1つの要求エージェン
トが並列バス35によりデータ転送サイクルを実行でき
るようにする0仲載サイクルが閉じると、ただ1つのエ
ージェント(たとえば処理装置26)が、並列バスを利
用して、他のエージェントとの間でデータをやシと9で
きるようになる。
データ転送の処理中にシステム・エラーが起ることがあ
る。シスチムニ2−が起ると、異議サイクルが開始され
る。どのエージェントが次に並列バスの使用権を持てる
かを決定するために、現在性われている転送サイクル中
に他のエージェントが仲裁サイクルを行うことができる
ように、全部で3つの並列バスサイクルが重なり合って
一緒に実行される。
第2図に示されているように1メツセージ制御ロジツク
50は、通常のバスにより、パンツアメモリ82′に結
合されるメツセージ制御器80と、バス制御器84と、
直接メモリアクセス(DMA )インターフェイス86
と、FIFOポインタ88とを含む。メツセージ制御ロ
ジック50は、直列および並列バスプロトコルの実施と
、それぞれのバスへのアクセスを行うことと、並列(お
よび直列)バスに結合されている他のエージェントとメ
モリ54の間でDMAインターフェイス86とローカル
バス56を介して行うデータ転送とをとシ扱う0ここで
、処理装置25が、包括的記憶装置30に格納されてい
るデータを並列バス35を用いてフェッチすることを、
求められていると仮定する。
処理装置25は、それのバス制御器84を介して、仲裁
サイクルを開始することにより、並列バス35のアクセ
スを最初に行わなければならない。第5島図および第5
b図に示す流れ図に最もよく示されているように、処理
装置25内のバス制御器84が、バス要求(BREQ)
線6ftに現在表明(アサート)がされているか否かを
最初に決定する。処理装置25が高い優先度要求を持っ
ていないと仮定すると、処理装置25は、BREQ線6
6線表6がされなくなるまで待ってから、仲裁サイクル
の解決段階に入らなければならない。BREQ線66線
表6がされていないと仮定すると、処理装置25が、B
RI:Q@66に表明をして、同時に、それの独特なエ
ージェント仲裁番号に対応するデジタルコードをエージ
ェント仲裁線62へ与える(第4図および第5a図参照
)0並列バス35に結合されている各エージェントのバ
ス制御器84内の適切なロジックが、仲裁サイクルが開
始された後の一定数のクロックサイクル内で、最高の所
定優先度を有する(高優先度線64に表明がされていな
いと仮定して)要求エージェントの仲裁番号を選択する
。他のエージェント、たとえば処理装置26が並列バス
獲得を要求すると同時に別のエージェントがより高い優
先度の仲裁番号を有するものとすると、処理装置25は
、データ交換の終りを示すサイクルの終り (EOC)
信号を、またはバスがアイドル状態になることを待たな
ければならない0同様に、前のバス使用エージェントが
バスロック線69に表明をしていたとすると、並列バス
に結合されている全てのエージェントは、アクセスを行
う前に並列バスの表明解除(ロック解除)を待ち、自己
の仲裁番号をエージェント仲裁線62上に表明するとと
Kよシ、バスをアクセスする試みを繰シ返えさなければ
ならない。
ここで説明している実施例においては、並列バス35に
結合されているエージェントの間の優先度は、それぞれ
の仲裁番号により決定される0各エージェントは、バス
35上の位置(「スロット」)に結合され、各スロット
位置に専用のrTJビン線が結合される。電源が投入さ
れると、バスに結合されている中央サービスモジュール
(C8M)、(図示せず)によυ、エージェントスロッ
ト識別番号と独特の仲裁番号とが与えられる0中央サー
ビスモジユール(C8M)は、エージェントスロット識
別第号をエージェント仲裁線62へ与え、そのスロット
識別番号を関連させねばならないエージェントに対応す
るTピン線を低レベルに駆動する。Tピン線を低レベル
に駆動することKよシ)そのエージェント内のレジスタ
にスロット識別番号が保持される。同様に、C8Mは、
独特の仲裁番号をエージェント仲裁線62へ与え、仲裁
番号を関連させるべきエージェントに対応するTピン線
を低レベルに駆動する。そのTビン線を高レベルに駆動
することKよ)仲裁番号が保持される。
ここで説明している実施例においては、仲裁線6201
本の状態は、仲裁線の残シの線上に表明されている数が
、エージェントスロット番号であるのか、または仲裁番
号に一致するのかを示す。この動作は、全てのエージェ
ントに、それぞれのスロット識別番号と仲裁番号とが割
付けられるまで、繰夛返えされる。処理装置25.26
のようなエージェントの間で、種々の優先度階層を定め
得ることが当業者には明らかであろう0 処理装置25が(それの仲裁番号により優先権を有する
ことにより)バスの使用権を得たとすると、処理装置2
5は、バスの使用権エージェントなって、BREQ信号
が表明解除(デアサート)のままである限シは転送が終
った後でも、バスの使用験を保持する。EOC信号が検
出された時、またはバスが現在アイドル状態である時、
応答エージェントのアドレス(宛先(デスティネーショ
ン)アドレス)と、データがメツセージを含んでいるの
であれば更に処理装置25のアドレス(ソースアドレス
)とに対応するデジタルコードを、処理装置25はアド
レス/データバスへ与える。それと同時に、処理装置2
5は、応答エージェント(ここで説明している実施例に
おいては包括的記憶装置30)により実行されるべき特
定の機能に対応するデジタルコードを、指令バスへ与え
る。第4図に示すように1処理装置25のような要求工
−ジェフトが種々のアドレスコードと種々の指令コード
を並列バス35へ与えると、指令バス線が実効的に分割
されて、要求エージェントと応答エージェントによシ種
々の確認応答信号を送ることができるようにする。要求
エージェント(ここで説明している実施例においては処
理装装置25)によるアドレスと指令の付与により、「
要求段階」と呼はれるものが終る。ここで説明している
実施例においては、実際の要求段階は1クロツクサイク
ルの間だけ持続する。
要求段階が終ると、指令バス68を構成する線が、第6
図に示すように再割付けされる。とくに、エージェント
の間でデータの転送を行うために要求されるハンドシェ
イクを完了するために、要求エージェントに5本の指令
線が割当てられ、応答エージェントに5本の指令線が割
当てられる。とくに、要求エージェント(ここで説明し
ている実施例においては処理装置25)は、要求エージ
ェントレディ(REQ RDY)信号を適切な指令線上
に表明することにより、要求エージェントがアドレス/
データバス60上のデータを受ける用意ができているこ
とを、応答エージェントへ指示する。
同時に、応答エージェント(ここで説明している実施例
においては包括的記憶装置30)が、応答エージエンレ
ディ(REPLY RDY)信号を表明(第7図参照)
、アドレスデータバス60上のデータが妥当であシ、受
けることができることを要求エージェントに指示する。
したがって、並列バス35のプロトコルは、アドレス/
データバス60上のデータを妥当であると考えて保持す
る前に、応答エージェントレディ信号と要求エージェン
トレディ信号の表明を必要とする。その後に行われる応
答エージェントレディ信号と要求エージェントレディ信
号の表明解除(デアサーション)と再表明(リアサーシ
ョン)により、付加データパケットを並列バス35を介
して要求エージェントと応答エージェントの間で送るこ
とができる(第4図)。
図示のように、それ以上のデータ送信が行われないとす
ると、要求エージェント(ここで説明している実施例に
おいては処理装置25)が、REQRDY信号の表明と
同時に、サイクルの終fi (IOC)信号を表明する
。EOC信号の発生と送信によって現在の転送サイクル
の終シが、並列バス35に結合されている他のエージェ
ントへ知らされ、バスの使用権の移転可能性が知らされ
る。第5b図に最もよく示されているように、妥当なデ
ータが標本化されると、応答エージェント(ここで説明
している実施例においては包括的記憶装置30)が、応
、答エージェントレディ信号により通常示されているそ
れのハンドシェイクの部分の間中に1データ転送の誤〕
(「異議」)を要求エージェントへ知らせることができ
る。要求エージェント(ここで説明している実施例にお
いては処理装置25)によりその期間中に検出されたデ
ータ転送サイクルの誤シによって、次のクロックサイク
ルにおけるEOC信号の表明が行わされることにより、
それ以上のデータ転送を中断させ、前記仲裁サイクルを
うまく完了した任意の待機しているエージェントへバス
の使用権を与える。
以上の説明は並列バス35に結合されている応答エージ
ェントから要求エージェントへのデータ転送を示すもの
であるが、要求エージェント(たとえば処理装置26)
から応答エージェント(たとえば処理装置25)へのデ
ータ転送が、第4図に示されているようなほぼ同一のプ
ロトコルに従うことがわかるであろう。というのは、本
発明の並列バスプロトコルが、データの保持を並列バス
から解除する前に、REQ RDY信号とREPI、Y
 RDY信号の表明を単に要求するだけだからである。
したがって、本発明により、要求エージェントと応答エ
ージェントの動作速度を、同じ転送プロトコルを用いて
、異ならせることができる。
本発明のメツセージ制御ロジック50により、並列バス
35(および後で説明するように、直列バス)に結合さ
れているエージェントの間で、処理装置内の第1のプロ
セッサの割込みを最少限に抑えて、数多くのメツセージ
転送とデータ転送を行うことができる。たとえば、第1
のプロセッサ40に割込む必要なしに、データを40の
メモリへ転送でき、または専用リンースメモリ54との
間でデータをやシとりできる。後で説明するように、あ
る特定のエージェントをメツセージ転送動作に含ませる
べきかどうかを決定するために、メツセージ制御ロジッ
ク50内のメツセージ制御器80が、データパケット内
で並列バス35と直列バス3Tに沿って送られるメツセ
ージアドレスを調べる。ある特定のメツセージ制御器が
アドレスされるものとすると、そのメツセージ制御器は
、そのメツセージパケットに含まれている種類(タイプ
)フィールドを調べ、第1のプロセッサに対して求めら
れる必要な任意の割込みを行う。あるいは、割込みが求
められないとすると、リソースメモリ54を外部要求エ
ージェントがアクセスできるようにするために、適切な
情報が直接メモリアクセス(DMA )インターフェイ
ス86へ転送すれるQ 次に、メツセージ制御ロジック50を用いるメツセージ
転送動作の流れ図を示す第8図を参照する。まず、処理
装置26内の第1のプロセッサ41が、処理装置25に
よ)直接アクセスできるメモリスペースを転送すること
を希望していると仮定する。要求エージェント(処理装
置26)がそれのメツセージ制御器80へ「バッファ要
求」を発する。そのバッファ要求は、図示のように、宛
先の応答エージェントのアドレスに対応する宛先バイト
と、要求された特定の動作(この場合にはデーータ書込
み動作)に対応する指令「種類」バイトと、要求エージ
ェントの独特の識別番号に対応する識別バイトと、要求
エージェントによるアクセス対象のデータが格納されて
いるローカルデータアドレスを示すバイトと、オプショ
ンとしてのファイル名および長さバイトと、最後に任意
のデータ(データを転送するのであれば)とを含む。そ
れらのメツセージバイトは、ローカル内部バスbに沿っ
て要求エージェントのメツセージ制御ロジック50へ送
られる。その特定の要求エージェント(この例では処理
装置26)のメツセージ制御器80は、ローカルアドレ
スと長さ情報とをメツセージ制御ロジック50のバッフ
ァメモリ82またはDMA86に格納する0メツセージ
制御器80は、現在の要求を識別する独特の連絡転送番
号(I D/S )を含むバイトを、要求パケットへ更
に加える。メツセージ制御器80は、バッファ要求パケ
ットを、第4図、第5a図、第5b図、第6図および第
7図を参照して先に説明したデータ転送プロトコルを用
いて、バス制御器84と並列バスとを介して応答エージ
ェント(この場合には処理装置25)へ送る。応答エー
ジェントのメツセージ制御ロジック50は、要求を応答
処理装置25の第1のプロセッサ4Gへそのまま送る。
そのメツセージを受けた処理装置25の第1のプロセッ
サ40は、長さバイト「長さ−IJ Kよシ定められて
いる十分な長さを有する適切なメモリバッファを割付け
ることができるか否かを決定する。第1のプロセッサ4
0が要求されたメモリスペースを割付けると、バッファ
許可メツセージが発生される。そのバッファ許可メツセ
ージにおいて、種類バイトは、バッファ許可を識別する
独特のコードに対応する。また、ローカル応答エージェ
ントのアドレス場所は、割付けられたバッファ長(「長
さ−2」)とともに、指定される。そのバッファ長は、
応答エージェントが実際に割付けたメモリのサイズを示
す0この割付けられたメモリサイズは、要求エージェン
トにより要求されたメモリサイズとは、異なることがあ
る。最後に1連絡転送識別番号(I D/S )を示す
バイトが繰シ返えされる。そのバイトはある特定のバッ
ファ要求を個別Kll別する。それから、バッファ許可
データパケットが、ローカル内部バス29に沿って応答
エージェントメツセージ制御器80へ転送される。その
応答エージェントメツセージ制御器は、バッファのロー
カルアドレスと、連絡転送番号107S。
および長さ−2をDMA8Bに格納し、かつ図示のよう
に、連絡転送要求者番号(I D/R)を、発生されて
いるバッファ要求バケツ)K加える。バッファ許可メツ
セージは、要求エージェントのメツセージ制御ロジック
50へ転送される0メツセージ制御ロジツク50は、そ
れからDMAインターフェイス86を使用することによ
り、応答エージェントへ転送すべきデータをフェッチし
て、そのデ−タをバス制御器84へ送り、第4図、第5
図、第6図および第7図を参照して先に説明したプロト
コルに従ってそのデータを応答エージェントへ送ること
ができる。データ転送は、第8図に示すように、1つま
たはそれ以上のデータパケットで構成できる。
希望していたデータ転送が終ると、両方のエージェント
のためのそれぞれのメツセージ制御器80は、全体的な
終了メツセージを発生することにより、転送が終了した
ことを要求エージェントおよび応答エージェントの第1
のプロセッサに知らせる。したがって、メツセージとデ
ータは、本発明のバス構造に結合されているエージェン
トの間で、第1のプロセッサの動作への割込みを最少限
にして転送でき、メツセージ制御ロジック50により制
御されるデータ転送のための直接メモリアクセスを含む
ことができる。第8図に示されている以上説明したメツ
セージ転送動作は、直列バス3Tによっても利用される
ことに注意されたい。
第1図を参照して先に説明したように、本発明のバス構
造内の各エージェントは、前記並列バスはもちろん、ま
たは並列バスの代シに、直列バス3Tにより結合できる
。並列バス35の構造と動作は、並列バスに結合されて
いるエージェント間で大量のデータを高速で転送させる
ために主として構成されるが、本発明の直列バスは、エ
ージェント間の高速かつ高効率のメツセージ転送のため
に主として構成される。ここで説明している実施例にお
いては、直列バス37は、「SDA」および「SDB 
J という記号で示されている線を有する2線直列リン
クを備えている。第9図に示すように、各エージェント
のメツセージ制御ロジック50内のメツセージ制御器8
0は、種々のエージェントとの間で直列バス37を介し
てメツセージのやシとシを行うための直列メツセージ制
御器100を含む。直列バス37の両方の線は、バス状
態検出器110に結合される。このバス状態検出器は、
3種類の基本的な信号出力を生ずる0直列バス37から
受けた符号化されたデータは、キャリヤ’??’i信号
を示す信号とともに1デコーダ115へ送られる。後で
詳しく説明するように、バス状態検出器110は、直列
バス3Tを介して送られるメツセージの間で衝突が起き
たか否かの判定も行う。衝突検出線117がバス状態検
出器110から直列メツセージ制御ロジック124へ結
合される。との直列メツセージ制御ロジック124は、
後で説明するように、本発明の衝突再送仲裁サイクルを
制御する。
メツセージを直列バス37によυ送ることができるよう
にするために、直列送信器128が、直列メツセージ制
御ロジック124と各直列!l5DA 、 5DBK結
合される。図示のように、直列バス37を介して直列に
送るべきメツセージは、第2図に示されているメツセー
ジ制御ロジック50内の他のメツセージ制御器800回
路に直結されている内部メツセージ制御線(図示せず)
を介して、直列メツセージ制御ロジック124−Stず
与えられる0ここで説明している実施例においては、直
列バス3Tを介して送られるデータは、線SDAとS[
lBにおいて位相が180度異なるようにドライブされ
る。更に、直列メツセージ制御ロジック124は、送る
べきメツセージを、ここで説明している実施例において
は、周知のマンチェスタ(Manches−t*r )
符号化技術を用いて符号化する0ここで第10a図を参
照して、バス状態検出器110は、受けた直列メツセー
ジから、符号化されたデータ信号と、衝突検出信号と、
キャリヤセンス信号とを発生する。希望によっては、バ
ス状態検出器110は、一対のrDJ−ラッチ131(
同期のため)を含むことができる。それらのD−ラッチ
は、図示のように一対の類似のD−ラッチ132に直列
に結合される。第3の一対のrDJ−ラッチ133が、
ラッチ132それぞれの出力端子と検出器論理回路13
6とに結合される。線SDAとSDBのためのD−ラッ
チ132の出力端子が、検出器論理回路1360入力端
子A2.B2に結合される0同様に、D−ラッチ133
の出力端子が、検出器論理回路1360入力端子AI、
Blに結合される0検出器論理回路136または外部ク
ロックにより発生されたクロック信号(その周波数は典
型的には20MHz)により、全てのラッチは同時にク
ロックされる。D−ラッチ131,132,133を使
用することにより、線SDAとSDBにおいて同時に受
けられる逐次データビットを比較できる。
本発明のバス状態検出器110により、直列バス37に
沿って直列に送られた符号化されたデータをとシ出す簡
単な方法と、直列バス3Tに沿うメツセージの衝突を検
出する簡単表方法が得られる。
第10a図および第10b図に示すように、バス状態検
出器110の衝突検出の(CD)ポートの出力を調べる
ととくよシ、直列データバスに沿うメツセージの衝突を
容易に検出できる。検出器論理回路136の全ての入力
AI、A2.Bl、B2が低レベル(論理O)であると
すると、両方の線SDAと8DBは低レベルに引き下げ
られておシ、それKよシ、両方のデータ線がそれぞれの
エージェント内の各直列送信器128により位相が18
0度異なるように通常ドライブされるから、衝突を指示
する。したがって、検出器論理回路136の全ての入力
Al 、A2)Bl、B2が低レベルである唯一の場合
は、バスに沿う衝突の場合である。その理由は、設計に
より、線SDAに論理1が存在するには線SDRに論理
Oが存在することが必要だからである。同様に、直列バ
スのアイドル期間は、バス状態検出器110のキャリヤ
センス(CS)ポートの出力を調べることにより検出さ
れる。図示のように1バスのアイドル期間は、両方の線
SDA、SDRが高レベル状態であることにより示され
る。バス状態検出器110の中ヤリャセンス(CS)ポ
ートは、論理0(低)信号を発生することによりアイド
ル状態を示す。
特定の論理状態についてのバス状態検出器110の動作
を説明したが、論理状態の他の組合わせも等しく使用で
きることがわかるであろう。
ここで第11&図を参照する。直列バス3Tに沿って送
られる全てのメツセージは、マンチェスタ符号化を行う
ために必要な同期(r 5yncJ)前書き200と、
それに続くバイト210とを含む。バイト210は宛先
エージェント(たとえば処理装置26)のアドレスを構
成する。また、メツセージを送る発信元を識別するソー
スエージェントアドレス220が含まれる。「種類(タ
イプ)」バイト225が、エージェントの間で送られる
メツセージのキャラクタを識別する。種類指令の例には
、バッファ要求と、バッファ許可などが含まれる。種類
バッファ225の後には、特定の送信エージェントの独
特の識別番号に対応する識別(ID)バイト230と、
データフィールド235が続く。直列バス37に沿って
誤シのない送信を行うために1メツセージは、周知の誤
シチェックCRC(16ビツトCCITT)コード24
0で終る。エージェントの間で直列バス37に沿って送
られる各メツセージの後に、rフレーム間スペース(イ
ンターフレームスペース) J (IFS)と呼ばれる
無メツセージ送信期間が続く。ここで説明している実施
例においては、その無メツセージ送信期間は、約4バイ
ト時間を構成する。直列バス37に沿って送られる全て
のメツセージは、受信エージェントにより、第11  
b図に示されている確認応答メツセージ書式(フォーマ
ット)を用いて確認応答される。図示のように、確認応
答信号は、同期前書き200と、それに続く簡単な確認
応答フィールド260とを含む。その確認応答フィール
ドは、希望により設けられるものであって、メツセージ
確認応答信号を表す独特のデジタルコードを含む。ここ
で説明している装置においては、確認応答フィールドは
使用されず、その代シに同期前書き200と、それに続
くフレーム間スペース時間内のバスアイドル期間により
示される。IFS時間内に、同期前書き200  とア
イドル期間の少くとも一方が検出されないとすると、誤
りがあると想定される。
次に第121図を参照して、直列バス37に沿ってメツ
セージを送るために、メツセージ制御ロジック50によ
り実行される一連の論理動作にりいて説明する。まず、
処理装置25が直列バス37を用いてメツセージを処理
装置26へ送らなければなら麦いと仮定する。処理装置
25は、バス状態検出器110のキャリヤセンス(CS
)出力ヲ調べるととにより、直列バス37が現在使用さ
れているか否かをまず判定する。ここで説明している実
施例においては、直列バス37に沿って送られるデータ
が無いと、線SDAとSDRが共に高レベル状態を保つ
ことになる(第101図参照)。線SDAとSDRとに
ついての検出器論理回路136によるナンド動作が、直
列バス31にキャリヤ信号が存在しないことを示す低レ
ベル状態を示す。直列バス37が使用されていないこと
を処理装置25が判定すると、処理装置25の直列メツ
セージ制御ロジック124が第11m図に示すメツセー
ジ書式を用いてメツセージを包み(encapsuLa
ta)、そのメツセージを、直列送信器128へ送って
線SDA、SDB上に表明する。処理装置25がそれの
メツセージを直列バス37に沿って送ると、第11b図
に示す書式を用いているメツセージに続くフレーム間ス
ペースの間、処理装置26からの確認応答メツセージの
受信を処理装置25は待つ。そのフレーム間スペース(
IFS)内に確認応答が受けられた仮定すると、それで
直列メツセージサイクルが終ったことになる。
処理装置25が確認応答メツセージをフレーム間スペー
ス中に受けず、かつバス状態検出器110が直列バス3
Tに沿う衝突を検出しないとすると、処理装置25は、
メツセージ種類バイト225で第2の送信を複製された
パケットとして識別のためフラッグビットをセットした
後、データ送信を繰シ返す。しかし、バス状態検出器1
10が衝突を検出したとすると、処理装置25(および
直列バス3Tに結合されている他のエージェント)が、
直列バス再送仲裁サイクルを開始する(第12b図、第
12c図および第13区)。
データが直列バスに沿って送られる時の性質、すカわち
、データの位相が線SDAとSDBに沿って逆にされる
ために、1つまたはそれ以上の送信ステーションの間の
衝突メツセージの合計が線SDA。
SDRを低レベルにする。衝突の発生を検出すると、直
列バス3Tに結合されている全てのエージェントが「ジ
ャムサイクル」を開始する0そのジャムサイクルのはじ
t#)は、線SDAとSDBを低レベルに駆動して、所
定のビット時間の問直列バスを「詰らせる(ジャムとす
る)」。そうするとエージェントはアイドル状態となっ
て所定時間バスの状態を調べて衝突を直すことができる
ようにし、妥当なジャムサイクルが起きたことを確かめ
るために付加期間(IFSに等しい)を待つ。ジャムサ
イクルが終ると、各送信ステーションが、所定の時間ス
ロット0番からN番の計数を、同時に開始する(第13
図)。直列バス3Tに結合されている各エージェントに
は、それのメツセージを再送する期間である独特の時間
の1つが割付けられる。
第13図に示すように、各時間スロットは、複数の副時
間スロット(0番からM番)に分割できる。
各副時間スロットには、直列バスに結合されている特定
のエージェントが関連させられている。その場合には、
それに関連する副時間スロットを有する時間スロットま
で計数した時に、全てのステーションはジャムサイクル
を再び開始し、第1の時間スロット(第13図において
は時間スロット2番)内の副時間スロットの計数を開始
する。その結果、本発明の送信仲裁を、直列バス3Tに
結合されている数多くのエージェントに効率良く使用で
きる。第13図は副時間スロットを使用することを示し
ているが、ここで説明している実施例′においては、た
だ1つのエージェントがある特定のスロットに割当てら
れるようにただ1つのレベルが使用される。
ここで、直列バス37に沿ってエージエン)Aとエージ
ェントBとにより送られたメツセージの間で、衝突が起
きたと仮定する0その衝突を検出した後、直列バス37
に結合されている全てのエージェントはジャムサイクル
を続け、時間スロット(ここで説明している実施例にお
いては、各時間スロット紘約8ビット時間を有する)の
計数を時間スロット0番から始める。ここで説明してい
る実施例においては、エージエン)Aに時間スロット0
番が割付けられているoしたがって、直列バス37に結
合されている全てのエージェントは、エージエン)Aが
それのメツセージを再送し終わるまで、時間スロットの
計数を停止する0エージェントAが第12図に示されて
いるプロトコルを用いてそれのメツセージを再送し終る
と、全てのエージェント拡、時間スロット1番から時間
スロットの計数を再び継続する。(第13図に示す時間
スロット2番の場合のように副時間スロットが割付けら
れている場合には、特定の副時間スロットを割付けられ
ているエージェントがそれらのメツセージを送ることが
できるようにするために、休止してから、副時間スロッ
トが全てのエージェントにより同様にカウントダウンさ
れる。)シタがって、本発明の衝突再送仲裁プロトコル
は、直列ハス37に結合されている各エージェントニ、
それがメツセージを送る所定の時間スロットを割付ける
ことを、はぼ決定する。この決定の仕方は、たとえば、
1つのエージェントが終局的にバスをアクセスするよう
に、再送信の前にあるランダムに重みづけられた時間を
、全ての送信エージェントが待つことを単に要求するr
 Ethern@t Jのような従来のC8MA/CD
グロトコル(米国特許第4゜063.220号)とは、
基本的に異なる。
本発明のローカルバス56は、第1図に示されている処
理装置25.28のような処理装置内の任意の第1のプ
ロセッサのためのローカルメモリと処理リソースに対す
る高速・広帯域の並列バスを与える。ローカルバス56
で行われる全ての情報転送には、要求エージェントと応
答エージェントが必要である。たとえば、典型的な要求
エージェントは、第1のプロセッサ40、またはデータ
動作の実行において第1のプロセッサ40のリソースと
して使用するためにローカルバス56に結合される第2
のプロセッサ5Tである0同様に、ローカルバス56に
沿う典型的な応答エージェントは、メモリリソース54
である。したがって、ローカルバス56により、第1の
プロセッサ40というエージェントと、第2のアクセス
f57(もしローカルバス5gKこれが結合されていれ
ば)というエージェントとの多重専用データ処理リソー
スである。ここで説明している実施例においては、最大
で2個の「要求エージェント」(プロセッサ)を1度に
ローカルバス56に結合できる。
第14図に示すように、ローカルバス56は、アドレス
線300と、指令?#A310と、データ線315と、
ローカルバス56のためのプロトコルに従ってシステム
の制御を維持するための複数の制御線320とを含む。
第2の要求エージェント57と第1の要求エージェント
40(処理装置25の場合)の間に、バス要求線(BU
S REQ) 325がローカルバスインターフェイス
58(第1図)を介シて結合される。同様に、バス確認
応答(BUS ACK)線330が、第2の要求エージ
エン)57と第1の要求エージェント5Tと第4の要求
エージェント400間で信号を与えてバス使用権の確認
応答を示す。ローカルバス56を第1のプロセッサの内
部クロックと同期できるように1バスクロツク線335
が第1の要求エージェントに結合される。したがって、
全てのバス事象がバスクロック周期の整数倍で定められ
、各事象の開始と終了、またはそれの妥当性の持続時間
は、バスクロックの信号の縁部に対して定められた関係
を有する。
全てのバス転送動作は、「仲裁(アービトレーション)
」サイクル、「転送(トラ/スファ−)」サイクル、「
異議(イクセプション)」サイクルと呼ばれる3種類の
事象よシ成る。仲裁サイクルは、与えられた任意の時刻
には、1つの、そしてただ1つの要求エージェント(第
1のプロセッサまたは第2のプロセッサのいずれか)が
、ローカルバス56に沿ってデータ転送の開始を許され
るようにするためのものである。ここで説明している実
施例においては、第2の要求エージェント57による要
求が無い時は、第1の要求エージェント40がローカル
バス56の制御をまかされる。
したがって、第2の要求エージェント51がローカルバ
スに結合されているものとし、ローカルバスが第2の要
求エージェントの制御の下に現在使用中である場合にお
いてのみ第1の要求エージェント40は、仲裁サイクル
に入ることを必要とする(第1図に示す処理装置26は
、それのローカルバスに第2のプロセッサを含まず、そ
れの第1のプロセッサがバス使用権のために決して仲裁
を行わなくですむことに注意されたい)。
次に本発明のローカルバス仲裁サイクルが示されている
第15図を参照する0第2の要求エージエンド57がロ
ーカルバス56の使用を要求したとすると、それはバス
要求(BUS REQ)信号をバス要求線325上に表
明(アサート)する。第1の要求エージェント40は、
バス確認応答(BUSACK)信号をバス確認応答線3
30上に生ずることにより、第2の要求エージェントの
バス要求に確認応答する。それによυ、バス使用権が第
2の要求エージェント57へ有効に移転される。それか
ら、要求されている特定のバス動作を開始させるために
、第2の要求エージェント57は、適切なアドレス信号
と指令信号を、それぞれアドレス線300と指令線31
Gを介して、メモリ54のようなローカルバスリソース
へ与エル。要求エージェント(プロセッサ)によるアド
レスおよび指令情報の表明は、「要求段階」と呼ばれ、
ここで説明している実施例においては、少くとも2クロ
ツクサイクル持続する。それから、応答エージェント(
たとえばメモリリソース54)が、(「読出し」動作の
場合には)適切なデータをデータ線315上に表明する
。そのデータは、後述するプロトコルを用いて第2の要
求エージェント57により受けられる。第2の要求エー
ジェントs r h、応答エージェントによる要求した
動作が終了した時に、バス要求線325上の表明解除(
デアサート)をすることによりバス使用権を第1の要求
エージェント40へ譲シ渡す。
次に、本発明の待機(WAIT)信号の独特な使用を示
す第16図を参照する。待機(WA I T )信号は
、遅延クロックサイクルを導入することにより応答段階
を延長することを要求するために、ローカルバス56に
結合されている全ての「応答」エージェントにより使用
できる。パイプライン処理が実行されると(現在のバス
動作の要求段階は先のバス動作の応答段階に重なシ合っ
ていると)、先のバス動作を行っている応答エージェン
トによる待機信号の表明によって、現在のバス動作の要
求段階を延長させることができる。第16図に示すよう
に、第1のプロセッサ40は、(アドレス線300  
と指令線310を用いて)ローカルバス56に結合され
ている応答エージェントに対する要求を表明している。
先のバス動作にサービスしている応答エージェントが、
現在のバス動作の要求段階の第1のクロックサイクル中
に待機信号を表明している。これは、生のバス動作でサ
ービス中の応答エージェントが、現在のバスクロックサ
イクル中にアドレスおよび指令情報を受けることができ
なかったことを第1の要求エージェントに知らせる。要
求されたデータをアクセスして、そのデータラミーカル
バスに与えるために1アドレスされた応答エージェント
が付加時間を要求するものとすると、その応答エージェ
ントは、要求段階の最後のクロックサイクルにおいて待
機(WAIT)信号を表明せねばならない。要求エージ
ェントは、適切な数のアクセス遅延サイクルが導入され
るまで、待機信号の表明を続行せねばならない。ローカ
ルバス56において遅延サイクルを効果的に与えるため
に待機信号を使用することは、第1のプロセッサ40が
、たとえばローカルメモリリソース54のアクセス時間
よシ速い速度で動作している場合には、一般的なもので
ある。というのは、ローカルバス56が第1のプロセッ
サ40と同じ速度でクロックされるからである。
第16図に示すように、要求段階の第1のクロックサイ
クルにおける待機信号の表明により、更に付加される2
つのクロックサイクルの間、第1の要求エージェントの
要求段階が継続して表明される結果となる。したがって
、待機信号は、バス線の状態に遅延を実効的にさしはさ
むが、ローカルバスの標準的なプロトコルを変更するこ
とはない。ローカルバス56上におけるあらゆる要求は
最少限2クロック周期の間表明されるが、応答エージェ
ントは、要求を受は死後の任意の時刻に、その要求に応
答できる。いいかえると、要求エージェント(第1のプ
ロセッサまたは第2のプロセッサ)が要求を依然として
表明をしていても、応答エージェントは要求の表明の後
1クロツクサイクルはど速く応答できる(零サイクル遅
延)0要求段階の第1のクロックサイクルの後(すなわ
ち、それの第2のクロックサイクル中)の待機信号の表
明は、その特定の要求段階には何の作用も及ぼさず、遅
延の導入によりその応答段階を延長することにより応答
段階に作用を及ぼすだけであることに気がつくであろう
。たとえば、第16図に示すように、第1の要求エージ
ェントの第2のバス動作の要求段階が、前のバス動作の
応答段階を終了させるべきであったクロックサイクル中
に始まる。待機信号が前のバス動作の応答段階を更に1
サイクルまたはそれ以上のクロックサイクルだけ遅延さ
せたとすると、第2のバス動作の要求段階がそれに対応
して延長させられることになる。応答段階の第1のクロ
ックサイクル(要求段階の最後のクロックサイクル)中
に待機信号が表明されると、待機信号が応答エージェン
トにより表明解除をされるまで、応答エージェントの応
答が遅延させられる結果となる。ここで説明している実
施例においては、現在の応答エージェントが与えられた
バス動作の応答段階中に待機信号を表明する権利を有す
る。
第17図は、応答段階中における応答エージェントによ
る待機信号の使用と、本発明の異議サイクルを示すもの
である0図示のように、第1の要求エージェントが、ア
ドレス線300と指令線310において、要求(アドレ
スおよび指令情報)を表明している。第1のプロセッサ
の要求の第1のクロックサイクル中に待機信号は表明さ
れていないから、要求段階は最小限の2クロツクサイク
ルの間だけ持続する。応答エージェントは要求に応じて
応答段階の第1のクロックサイクル(要求段階の最後の
クロックサイクル)の間に待機信号を表明することによ
り、要求されたバス動作が待機信号が表明解除されるま
で実行されないことと、それに従って他の全ての機能が
遅・延させられることとを、全てのバスエージェントに
知らせる。ここで説明している実施例においては、第1
の要求エージェントにより読取られるデータを得るため
に応答エージェントは、ただ1サイクルのアクセス遅延
を要求し、それの応答をデータ線315に与えるのと同
時に待機信号の表明解除をする。応答段階中の待機信号
の表明解除により、ローカルバスに読出されたデータが
妥当であって標本化できること、または、要求エージェ
ントによりトライブされる「書込みデータ」が標本化さ
れて、応答エージェントにより書込み動作が終了させら
れることを、要求エージェントに知らせる。
第17図に示すように1応答段階の第1のデータ転送期
間中に、出された要求段階に関連する任意の誤シまたは
異議を、応答エージェントは要求エージェント(プロセ
ッサ)に知らせなければならない。いいかえると、ここ
で説明している実施例においては、応答段階の第1のデ
ータ転送期間中には、要求に対するどのような異議(イ
クセプション)も報知される。要求段階の最後のクロッ
クサイクル中に待期信号が表明されない場合には、その
要求段階に対する異議がこの最後のクロックサイクル中
に報知される。第17図に示すように、データに対する
異議は、データバス315にデータが加えられた直後の
クロックサイクル中に報知される。
第18図および第21図は、本発明による要求、データ
に対する異議ならびに「継続」異議プロトコルを示すも
のである。第14図に示すように、制御線320がアド
レス誤1) (AERR)線とデータ誤1> (DER
R)線を含んでいる0それらの線はローカルバス56上
の全てのエージェントに結合されている。前記したよう
に、たとえば第1のプロセッサという要求エージェント
40により表明された要求段階に対する異議は、応答段
階の第1のデータ転送期間中に1要求エージェントへ報
知される。
同様に、データ線315へ与えられるデータに対する異
議は、そのデータを与えた直後のクロックサイクル中に
報知される。本発明においては、ローカルバスに沿って
バス動作を実行している要求エージェントへ、継続異議
はアドレス誤シ信号線(AERR)を介して報知される
。AERR信号は、データバスに与えられたデータは予
測された応答エージェントにより駆動されていないこと
を示し、かつ継続誤シ(すなわち、物理的境界(あふれ
)誤シ)が起きたことを実際には報知する0継続誤シは
、応答エージェントが各動作の後で応答エージェントの
データアドレスを増し、そのデータアドレスが応答エー
ジェントの許容アドレス範囲を超えるようなブロック転
送の場合に起ることがある。
その場合には、継続誤りが生じたことを、要求されたデ
ータが妥当であるべき期間中にAERFt 1fiAK
表明をすることにより、応答エージェントは要求エージ
ェントに知らせる。したがって、そうでなければデータ
が妥当であるようなりロックサイクルと同時に全ての継
続誤りが報知される。継続誤りは、ブロック転送要求が
行われた場合に、ブロック転送を支持しない応答エージ
ェントにより報知することもできる。待機信号が表明さ
れたとすると、この期間はそれに従って遅延させられる
次に第19図を参照して、与えられた要求エージェント
のバス動作の要求段階と、それに先立つバス動作の応答
段階との重なシ合いを許すことにより、ローカルバス5
6を「パイプラインj制御できる性能について説明する
。ここで説明している実施例においては、第1のプロセ
ツキ40は、それの第1の要求段階を、アドレス線と指
令線上にドライブする。第1の要求エージェント(プロ
セッサ)40は、第1のバス動作がブロック転送でなけ
れば、現在の要求段階が終了した直後にそれの第2のバ
ス動作を開始できる。第1のバス動作がブロック転送で
あれば、第1のバス動作の最後のデータ転送期間と予測
されるクロックサイクルまで、第2のバス動作の要求段
階を開始できないことがある。
第20図は、第1の要求エージェント40がローカルバ
ス56をアクセスしておシ、第2の要求エージエン)5
7がバスアクセスを要求している場合を示すものである
。図示のように、第2のプロセッサ57は、第1の要求
エージェントの要求段階中に、BUS REQ線に表明
をする。第1の要求エージェントは、それの応答段階の
終シに続くクロックサイクルよシ早く、第2の要求エー
ジェントにローカルバスの使用権を譲シ渡さないことを
要求されている。図に示すように、第2の要求エージェ
ント57の要求段階は、クロックサイクルを開始させ、
そのクロックサイクルに続いてBUS ACKが第1の
要求エージェント4Gにより表明される。
第20図は、第1の要求エージェント57の応答段階が
終了した時に、第3の要求エージェント57が線を第1
の要求エージェント(プロセッサ)40へ譲るためのタ
イミングをも示している0図に示すように、第2の要求
エージェントがバスの使用権を第1の要求エージェント
へ譲ることができる最も早いクロックサイクルは、それ
の応答段階の最後のクロックサイクルに続くクロックサ
イクルである。これは、BUS REQ信号の表明解除
をする第2の要求エージェント57により達成される。
以後のクロックサイクルにおいては、第1の要求エージ
エン)40は、BUSACK信号の表明解除をしなけれ
ばならず、かつ新しいバス動作の要求段階を開始できる
第20図に示す実施例においては、第2の要求エージェ
ントの応答段階の第1のクロックサイクル中に、応答エ
ージェント40は待機信号を表明することKよシ、付加
クロックサイクルの間データの表明を遅延させる0次の
サイクルにおける待機(WAIT)信号の表明解除は、
データ線に「読出された」データが妥当であって、要求
エージェントが受は表ければならないことを指示する0
待機信号は、第2の要求エージェントのバス動作の応答
段階に1クロツクサイクルを導入するためにも用いられ
る0 待機制御信号に加えて、ローカルバス56は、LOCK
のような他の制御線を含む0それらの制御線は、それを
介して相互に排他的なバス動作を行わせることができる
信号機構であるoLOCK信号は、要求エージェントに
よ)ドライブされ、かつローカルバス56に結合されて
いる全ての応答エージェントによ)受けられる。LOC
K信号は、与えられた任意の時刻にバスの使用権を有す
る要求エージェントにより表明されることができる。全
ての応答エージェントは、LOCK信号を監視しなけれ
ばならず、LOCK信号が表明されているバス動作に含
まれている応答エージェントは、非ローカルバスポート
をロックせねばならず、LOCK信号が表明されるまで
ロックを保持する。第1の要求エージェントと第2の要
求エージェントとに関連する相互に排他的なバス動作が
終了され、かつLOCK信号が表明解除されるまで、自
己のバスの使用権を譲シ渡さないことは、第1および第
2の要求エージェントの責任である。第22図に示すよ
うに、LOCK信号の作用は、与えられたバスエージェ
ントが、他の任意の要求エージェントによる応答エージ
ェントの当座の間の使用を許すことなしに、一連のバス
動作を応答エージェントに対して実行することを許す相
互に排他的な状態を求めることである。更に詳しくいえ
ば、ローカルバス56が多重ボートをもつ応答エージェ
ントを有するものとすると、相互に排他的な機能が全て
の非ローカルバスポートの閉め出しを要求する。
以上、第15〜22図を参照してメモIJ IJンース
54などからのデータの第1のエージェントまたは第2
のエージェントのデータのアクセスと受信について説明
したが、要求エージェント(プロセッサ)がメモリリソ
ース54、プロセッサまたはその他のデータ処理装置へ
データを書込む場合にも同じデータ転送プロトコルを使
用できることがわかるであろう。書込み動作の場合には
、応答エージェントは、待機信号を用いることにより、
バッファを割付けて、データが受けられて誤シを調べら
れるように1バス状態に休止を導入できる。
書込み動作中にデータをドライブする要求エージェント
は、待機信号がそのクロックサイクルにおいて表明され
るならば、データのドライブを次のクロックサイクルま
で延長せねばならない(第21図)0 まとめ 以上の説明に従って、本発明は、従来知られていなかっ
た独特なシステムデータバスアーキテクチャとデータ転
送プロトコルを提供するものであることが当業者には明
らかであろう。本発明はその並列バス35により、バス
に結合されているエージェントの間で大量のデータを高
速で転送できるようにするものである。それに・は、た
とえは処理装置と、包括的記憶装置、またはその他のデ
ータ処理装置との間でのデータ転送を含めることができ
る。同様に、本発明はその直列バス31にょ)、バス構
造内のエージェント間でのメツセージを効率良く転送で
き、それKよシメッセージが並列バス35を通ることを
無くす。更に、ローカルバス56は、第1のプロセッサ
と複数のローカルリソースの間で、他のシステムバスの
利用できる帯域幅に衝撃を与えることなしにデータを転
送するための高速かつ広帯域喝の並列バスを構成する。
【図面の簡単な説明】
第1図は本発明を実施するためのデータ処理装置のブロ
ック図、第2図は本発明のメツセージ制御ロジックを構
成する主な部品のブロック図、第3図は本発明の並列バ
スを構成する各種の副バス構造を示す略図、第4図は並
列バスに結合されているエージェントの間のデータ転送
のための並列システムバスプロトコルを示すタイミンク
図、第5a図および第5b図は応答エージェントからバ
スに沿ってデータを受けるために、並列バスに結合され
ている要求エージェントにょシ実行される一連の動作を
示す流れ図、第6図は要求段階と応答段階における制御
バスを構成する線を示す説明図、第7図はデータを要求
エージェントへ転送するために1並列バスに結合されて
いる応答エージェントにより実行される一連の論理動作
を示す流れ図、第8図は並列バスに沿う依頼されたメツ
セージ転送を示す説明図、第9図は本発明の直列バスに
沿ってメツセージを送るための直列メツセージ制御器を
構成する主な部品のブロック図、第10息図は直列メツ
セージ制御器のバス状態検出回路を示す略図、第10b
図は検出器論理回路の動作説明図、筒口」図は本発明の
バス構造に結合されているエージェントの間でメツセー
ジを送るための本発明のデータを包む構造を示す線図、
第11b図は直列バスに沿うメツセージ転送を確認応答
するための直列バスにおいて使用される確認応答メツセ
ージ構造を示す線図、第12a図は本発明の直列バスに
沿って送信エージェントにより実行される一連の論理動
作を示す流れ図、第12b図はメツセージ衝突を検出す
るために直列バスに沿うエージェントに同時に実行され
る一連の論理動作を示す流れ図、第12c図はメツセー
ジの検出と受信を行うために直列バスに沿うエージェン
トにより同時に実行される一連の論理動作を示す流れ図
、第13図は本発明の直列バスにより使用される決定論
的な衝突再送仲裁のサイクルを示す線図、第14図は本
発明のローカルバスを構成する各種の副バス構造を示す
略図、第15図は本発明のローカルバスにアクセスする
ための仲裁サイクルを示すタイミング図、第16図は待
機のローカルバスの使用を示すタイミング図、第17図
は待機状態と異議状態でのローカルバス読出しアクセス
を示すタイミング図、第18図はローカルバスブロック
転送および継続誤シ報知を示すタイミング図、第19図
は第1の要求エージェントの制御の下にローカルバスが
機能するバス仲裁、パイプライン処理および待機を示す
タイミング図、第20図はローカルバスが最初に第1の
要求エージェントの制御の下にあるローカルバス仲裁と
待機を示すタイミング図、第21図はローカルバスブロ
ック転送状態と異議状態を示すタイミング図、第22図
はLOCK信号の制御の下におけるローカルバス相互排
他的動作を示すタイミング図である。 25.26・・・・処理装置、30・・Φ・包括的記憶
装置、35・・・・並列バス、3T・・・・直列バス、
40,41・・・・第1のプロセッサ、44・・・・イ
ンターフェイス装置、46・・・−工10ロジック、5
0・・・・メツセージ制御ロジック、54・・・・メモ
リ、56・・・高優先度線、66・・・・バス要求線、
68・・・・指令バス、69・・・・バスロックL70
−・・・異議線、T2・・・・システム制御線、80・
・・・メツセージ制御器、82・・・・バックアメモリ
、84・・・eバス制御器、86・・拳・直接メモリア
クセス(DMA)インターフェイス、88・・・・FI
FOポインタ、100・・・・直列メツセージ制御器、
110・・・・バス状態検出器、115・・・・デコー
ダ、11T・・・・衝突検出線、124@・・−直列メ
ツセージ制御ロジック、128・・・・直列送信器、1
31,132,133・・−・D−ラッチ、136・・
・・検出器論理回路、300・・Φ・アドレス線、31
0・・・・指令線、315・・・・データ線、320・
・−・制御線、325−・・・バス要求線、330・・
e・バス確認応答線、335・・・・バスクロック線。

Claims (24)

    【特許請求の範囲】
  1. (1)アドレスおよびデータ情報を複数のデータ処理装
    置(以下エージェントという)の間で送るためのアドレ
    スデータ線と、 指令線と、 メッセージ制御器と を備え、前記指令線は、要求エージェントが指令により
    識別されたデータ動作を続ける用意が整つていることを
    応答エージェントに知らせる要求エージェントレディ(
    REQ RDY)信号と、前記応答エージェントにより
    前記指令線へ送られて、前記応答エージェントが前記デ
    ータ動作を続ける用意が整つていることを前記要求エー
    ジェントへ知らせる応答エージェントレディ(REPL
    Y RDY)信号とを送れるようにして、要求エージェ
    ントから応答エージェントへ指令を送るためのものであ
    り、転送すべき前記データは、前記REQ RDY信号
    と前記REPLY RDY信号の両方の信号が表明され
    た時のみ、有効であると考えられ、それによりデータが
    エージェントの間で高速で転送されることを特徴とする
    複数のデータ処理装置の間でデータを転送するための高
    速の並列バス構造。
  2. (2)特許請求の範囲第1項記載の並列バス構造であつ
    て、前記メッセージ制御器は、前記並列バスの使用を前
    記エージェントの間で割付けるための仲裁手段を含むこ
    とを特徴とする並列バス構造。
  3. (3)特許請求の範囲第2項記載の並列バス構造におい
    て、前記指令がひとたび送られると、前記複数の指令線
    は前記要求エージェントと前記応答エージェントの間で
    再割付けされ、それにより前記REQ RDY信号と前
    記REPLY RDY信号の送信を行えるようにするこ
    とを特徴とする並列バス構造。
  4. (4)特許請求の範囲第3項記載の並列バス構造におい
    て、各エージェントのための前記メッセージ制御器は、
    前記要求エージェントと前記応答エージェントの間で現
    在の転送サイクルをこえてそれ以上のデータ転送を行わ
    せることがない時に、サイクルの終り(EOC)信号を
    前記REQ RDY信号と全体として同時に発生するた
    めの手段を含むことを特徴とする並列バス構造。
  5. (5)特許請求の範囲第4項記載の並列バス構造におい
    て、前記仲裁手段は、バス要求(BREQ)信号を発生
    し、かつ前記並列バス上で各エージェントに結合されて
    いるバス要求線上に前記信号を表明するためのバス要求
    信号発生器を含むことを特徴とする並列バス構造。
  6. (6)特許請求の範囲第2項記載の並列バス構造におい
    て、前記仲裁手段は、仲裁線上の各エージェントに対す
    る独特の仲裁番号に対応するデジタルコードを送るため
    の仲裁コード発生器を含み、各仲裁番号は前記並列バス
    をアクセスするための相対的な優先度を示すことを特徴
    とする並列バス構造。
  7. (7)特許請求の範囲第6項記載の並列バス構造におい
    て、前記バスに結合され、前記バスが付勢された時に、
    前記エージェントへ前記特定のデジタル仲裁コードを与
    えるサービスモジュール手段を含むことを特徴とする並
    列バス構造。
  8. (8)特許請求の範囲第6項記載の並列バス構造におい
    て、高優先度信号を表明するエージェントが、前記特定
    のエージェントの仲裁番号優先度とは無関係に、前記並
    列バスをアクセスするように、前記仲裁手段は前記並列
    バス上の各エージェントに結合されている高優先度線に
    高優先度信号を送るための高優先度信号発生器を含むこ
    とを特徴とする並列バス構造。
  9. (9)特許請求の範囲第8項記載の並列バス構造におい
    て、要求エージェントは、前記指令線上における前記応
    答エージェントへの指令の表明とほぼ同時に、前記アド
    レス/データ線上の応答エージェントのアドレスを表明
    することを特徴とする並列バス構造。
  10. (10)特許請求の範囲第1項記載の並列バス構造にお
    いて、前記応答エージェントが前記指令線上の前記指令
    を受け、前記指令線が再割付けされた時に、データが前
    記アドレス/データ線上に表明されることを特徴とする
    並列バス構造。
  11. (11)特許請求の範囲第9項記載の並列バス構造にお
    いて、前記データ転送が中断されるように、データ転送
    の誤りが生じた時に、各エージェントに結合されている
    異議線を介して異議信号を前記要求エージェントへ送る
    異議信号発生器を含むことを特徴とする並列バス構造。
  12. (12)特許請求の範囲第10項記載の並列バス構造に
    おいて、前記要求エージェントの主プロセッサがメッセ
    ージ要求を発生して、その要求を前記要求エージェント
    の前記メッセージ制御器へ送り、前記並列バスで前記要
    求を送るために前記要求エージェントは前記要求を包む
    ことを特徴とする並列バス構造。
  13. (13)特許請求の範囲第11項記載の並列バス構造に
    おいて、前記包む動作は、特定のメッセージ要求を識別
    する第1の連絡番号の付加を含むことを特徴とする並列
    バス構造。
  14. (14)特許請求の範囲第12項記載の並列バス構造に
    おいて、前記包まれた要求は、前記応答エージェントの
    前記メッセージ制御器により受けられ、内部バスに沿つ
    て前記応答エージェントのプロセッサへ送られることを
    特徴とする並列バス構造。
  15. (15)特許請求の範囲第12項記載の並列バス構造に
    おいて、前記応答エージェントの前記プロセッサは前記
    受けたメッセージ要求に対する応答を発生し、かつその
    応答を包む前記応答エージェントのための前記メッセー
    ジ制御器へ前記応答を送り、特定の応答を識別する第2
    の連絡番号の付加を含むことを特徴とする並列バス構造
  16. (16)並列バス上に要求エージェントと応答エージェ
    ントを含む複数のデータ処理装置の間で多重バス構造に
    よりデータを転送する方法において、前記各エージェン
    トに結合されている指令線を介して指令を前記要求エー
    ジェントから前記応答エージェントへ送る過程と、 前記各エージェントに結合されているアドレス/データ
    線を介してアドレス情報を前記要求エージェントから前
    記応答エージェントへ送る過程と、前記要求エージェン
    トにより送られた要求エージェントレディ(REQ R
    DY)信号を第1の選択された指令線へ与える過程と、 前記応答エージェントにより送られた応答エージェント
    レディ(REPLY RDY)信号を第2の選択された
    指令線へ与える過程と、 REQ RDY信号とREPLY RDY信号の両方が
    加えられた時だけ有効であると考えられるデータを前記
    アドレス/データ線へ与える過程と を備え、それによりデータが前記エージェントの間で高
    速度で転送されることを特徴とする並列バス上に要求エ
    ージェントと応答エージェントを含む複数のデータ処理
    装置(エージェント)の間での多重バス構造によるデー
    タ転送方法。
  17. (17)特許請求の範囲第16項記載の方法において、
    前記データが前記アドレス/データ線に保持されなくな
    ると、前記REQ RDY信号と前記REPLY RD
    Y信号は表明解除されることを特徴とする方法。
  18. (18)特許請求の範囲第17項記載の方法において、
    新しいデータが前記アドレス/データ線に与えられ、前
    記REQ RDY信号と前記REPLY RDY信号が
    再び与えられた時に、付加データを前記要求エージェン
    トと前記応答エージェントの間で転送できることを特徴
    とする方法。
  19. (19)特許請求の範囲第18項記載の方法において、
    前記要求エージェントは、前記要求エージェントと前記
    応答エージェントの間でそれ以上のデータ転送を行わせ
    ることがない時に、サイクルの終り(EOC)信号を前
    記REQ RDY信号と全体として同時に発生し、その
    EOC信号を選択された指令線へ与えることを特徴とす
    る方法。
  20. (20)特許請求の範囲第19項記載の方法において、
    エージェントの間の前記並列バスのアクセスを仲裁する
    過程を含むことを特徴とする方法。
  21. (21)特許請求の範囲第20項記載の方法において、
    前記仲裁過程は、要求エージェントによりバス要求(B
    US REQ)信号を発生し、そのBUSREQ信号を
    前記並列バス上の各エージェントに結合されているバス
    要求線へ与える過程を含むことを特徴とする方法。
  22. (22)特許請求の範囲第21項記載の方法において、
    前記仲裁過程は、仲裁バス上の独特の仲裁番号に対応す
    るデジタルコードを要求エージェントにより与えること
    を含み、前記仲裁番号は前記並列バスをアクセスするた
    めの相対的な優先度を示すことを特徴とする方法。
  23. (23)特許請求の範囲第22項記載の方法において、
    ある要求エージェントが、前記各エージェントに結合さ
    れている高優先度線上の高優先度信号を表明することに
    より、前記仲裁番号の優先度とは無関係に前記並列バス
    をアクセスできることを特徴とする方法。
  24. (24)特許請求の範囲第23項記載の方法において、
    前記データ転送サイクルが中断されるように、データ転
    送の誤りが生じた時に、前記応答エージェントは、異議
    信号を発生し、その異議信号を各エージェントに結合さ
    れている異議線へ与えることを特徴とする方法。
JP1413685A 1985-01-28 1985-01-28 高速の並列バス構造およびデ−タ転送方法 Pending JPS61177560A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1413685A JPS61177560A (ja) 1985-01-28 1985-01-28 高速の並列バス構造およびデ−タ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1413685A JPS61177560A (ja) 1985-01-28 1985-01-28 高速の並列バス構造およびデ−タ転送方法

Publications (1)

Publication Number Publication Date
JPS61177560A true JPS61177560A (ja) 1986-08-09

Family

ID=11852725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1413685A Pending JPS61177560A (ja) 1985-01-28 1985-01-28 高速の並列バス構造およびデ−タ転送方法

Country Status (1)

Country Link
JP (1) JPS61177560A (ja)

Similar Documents

Publication Publication Date Title
US4570220A (en) High speed parallel bus and data transfer method
US4807109A (en) High speed synchronous/asynchronous local bus and data transfer method
US4785396A (en) Push-pull serial bus coupled to a plurality of devices each having collision detection circuit and arbitration circuit
JP3340738B2 (ja) 並行パケットバスに関する方法及び装置
US4763249A (en) Bus device for use in a computer system having a synchronous bus
US5020020A (en) Computer interconnect system with transmit-abort function
US5193149A (en) Dual-path computer interconnect system with four-ported packet memory control
JP3604398B2 (ja) 並列パケット化されたモジュール期調停高速制御およびデータバス
US4706190A (en) Retry mechanism for releasing control of a communications path in digital computer system
US5187780A (en) Dual-path computer interconnect system with zone manager for packet memory
EP0329664B1 (en) Arbitration technique for a split transaction bus in a multprocessor computer system
US4719622A (en) System bus means for inter-processor communication
US4769768A (en) Method and apparatus for requesting service of interrupts by selected number of processors
US4661905A (en) Bus-control mechanism
JPS60246460A (ja) デジタルコンピユ−タ−システムで交信路の制御を割当てる調停機構
EP0321628B1 (en) Shared memory interface for a data processing system
JPH0775016B2 (ja) データ処理システム及びデータ通信バス・システム
EP0138676B1 (en) Retry mechanism for releasing control of a communications path in a digital computer system
JPH0473176B2 (ja)
EP0358716A1 (en) NODE FOR SUPPORTING INTERRUPTION REQUEST MESSAGES ON A BUS ON HOLD.
JPH0954746A (ja) コンピュータシステム
EP0358715A1 (en) INTERRUPTION NODE FOR PROVIDING INTERRUPTION REQUESTS TO THE SYSTEM BUS.
US6721833B2 (en) Arbitration of control chipsets in bus transaction
US5150466A (en) Flexible distributed bus priority network
JPH0954745A (ja) コンピュータシステム