JPH06214965A - ディジタル・コンピュータ - Google Patents

ディジタル・コンピュータ

Info

Publication number
JPH06214965A
JPH06214965A JP5224763A JP22476393A JPH06214965A JP H06214965 A JPH06214965 A JP H06214965A JP 5224763 A JP5224763 A JP 5224763A JP 22476393 A JP22476393 A JP 22476393A JP H06214965 A JPH06214965 A JP H06214965A
Authority
JP
Japan
Prior art keywords
message
data
node
network
switch
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
JP5224763A
Other languages
English (en)
Inventor
Howard T Olnowich
ハワード・トマス・オルノウィッチ
Wayland Doodson Michael
マイケル・ウェイランド・ドットソン
William Feeney James
ジェームズ・ウィリアム・フィーニー
Robert F Lusch
ロバート・フランシス・ルシュ
A Maniguet Michael
マイケル・アンソニー・マニケット
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH06214965A publication Critical patent/JPH06214965A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies
    • G06F15/17375One dimensional, e.g. linear array, ring

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 並列システムにおけるメッセージ転送のソフ
トウェア・オーバヘッドを軽減する。 【構成】 プロセッサは、HBMチャネルにメッセージ
を送る前に、データバス104上で入出力アドレス・レ
ジスタをアドレスし、入出力レジスタ111〜115を
ロードする。アドレス認識ブロック106は、プロセッ
サ・アドレス・バス102上の入出力アドレスがレジス
タ110のアドレス範囲に合致する場合、バス104上
で送られたデータをレジスタ111〜115にロード
し、プロセッサはHBMメッセージの送信を開始する。
バス102上の入出力アドレスが、レジスタ111に合
致する場合、論理ブロック108はHBMの処理を開始
する。ハードウェア・メッセージ・ヘッダ・ワードが、
宛先フィールド、発信元フィールド等を含むようにな
り、ハードウェア作成メッセージ・ヘッダ・ワードを接
頭部として付加されたメッセージ125が生成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数または多数のコン
ピューティング要素または入出力要素あるいはその両方
から成るディジタル・コンピュータ・システムと、多段
交換相互接続ネットワーク上で相互に並列に高速で待ち
時間の少ない通信を前記個々の要素が実行できる能力に
関する。
【0002】本発明はまた、ディジタル・コンピュータ
・システムと、ユニプロセッサとして機能するように設
計されたパーソナル・コンピュータおよびワークステー
ション・システムを、マルチプロセッサとして、すなわ
ちメッセージ転送並列システムの個々のノードとして効
果的に機能するように適応させることのできる能力とに
関する。
【0003】用語集 代替経路 多段ネットワークにおける送信側ノードと受信側ノード
の間に接続を形成するために使用できる複数の接続経路
の1つ。
【0004】回線交換ネットワーク ネットワークを構成する個々の交換要素が、データ・メ
ッセージをバッファリングせずに、入力から出力への直
接接続としてただちに転送する、ネットワーク。
【0005】接続経路 送信側ノードを受信側ノードに接続するために使用され
る、多段ネットワークにおける経路。
【0006】データ・メッセージ 循環冗長コーディング方式を使用して情報が正確かどう
かを検査する追加の能力を組み込んだ、並列システムの
ノード間で情報を送信するためのフォーマット。
【0007】データ データ・メッセージを表す別の用語。
【0008】遊休状態 交換インタフェースが現在、2つのノードを接続するプ
ロセスに関与していない状態。
【0009】メッセージ データ・メッセージを表す別の用語。
【0010】メッセージ・ヘッダ 各データ・メッセージに接頭部として付加され、メッセ
ージを制御し、交換ネットワークを通って選択された受
信側ノードにメッセージを経路指定するために使用され
る制御情報。
【0011】ノード ネットワークによって相互接続された1つまたは複数の
プロセッサまたは入出力装置から構成される、システム
の機能要素。
【0012】ノード要素 ノードを表す別の用語。意味は同じである。
【0013】NRZ 非ゼロ復帰(non-return to zero)を表す略語。
【0014】ポート 交換ネットワークの単一両方向入口出口点。
【0015】受信側ノード ネットワーク上に送られたデータを受信する機能要素。
【0016】送信側ノード ネットワーク上にデータを送信する機能要素。
【0017】
【従来の技術】多段交換ネットワークは、現代のディジ
タル・コンピューティング・システム内で複数の装置を
相互接続するための手段として受け入れられるようにな
ってきた。特に、並列システムでは、多段交換ネットワ
ークを使用してn個のシステム要素を相互接続する方法
が一般的である。ここで、nは数個または数千個のプロ
セッサ、あるいはプロセッサとその他のシステム要素の
組合せとすることができる。しかし、大部分の最新のプ
ロセッサは、ユニプロセッサとして機能するように設計
されており、マルチプロセッサとして効果的に機能する
のに通常必要な機能を実施しない。したがって、ユニプ
ロセッサ・パーソナル・コンピュータおよびワークステ
ーション・システムをマルチプロセッサ環境で機能する
ように効果的に適応させる方法が問題になる。
【0018】並列処理の分野が進歩するにつれて、既存
の低コストの発売済みユニプロセッサを拡張することが
重要になってくる。そうすれば、費用効果が高くタイム
リーな並列製品を市場で入手することが可能になる。そ
うするために必要なのは、既存のユニプロセッサを、複
雑さおよびコストが最低の並列プロセッサとして機能す
るように変換するための効率的な方法である。これによ
って、顧客はすでに所有している遊休プロセッサをより
効率的に使用し、モジュール式に拡張可能な形で並列シ
ステムに追加することができるようになる。ユニプロセ
ッサを並列処理システムのノードとして使用できるよう
にする上で重要な1つの因子は、メッセージ転送概念で
ある。ユニプロセッサは、この概念を使用し、高速の相
互接続手段を介して1つのプロセッサから別のプロセッ
サへとデータ・メッセージを送信して相互に通信する。
相互接続手段が交換機ネットワークである場合、複数の
ユニプロセッサが高帯域幅および短待ち時間で同時に通
信することができる。メッセージ転送概念は、各ユニプ
ロセッサにそれ自体のキャッシュ・コヒーレンシの責任
を持たせることによって、並列ユニプロセッサ間のキャ
ッシュ・コヒーレンシの問題を解決する。プロセッサが
メッセージを送信または受信する際、各プロセッサは、
ローカル・キャッシュ・コヒーレンシ動作を処理しなけ
ればならない。しかし、他のプロセッサは、プロセッサ
のローカル・メモリを読み取ることも該メモリに書き込
むこともできず、共用メモリ技術ではなくメッセージに
よって通信しなければならない。したがって、大域的キ
ャッシュ操作の問題はない。
【0019】メッセージ転送技術にはいくつか問題があ
る。並列処理の分野が進歩するにつれて、メッセージ転
送手段をより適切に実行する方法が最も重要になる。新
しい高性能交換機およびネットワークは、メッセージ転
送ソフトウェアがそれについていくのが難しくなってき
ており、また該ソフトウェアによって発生するボトルネ
ックを強調するようになってきている。たとえば、米国
特許出願第07/677543号で開示されたALLN
ODE交換機などの新型の高速交換機は、数百ナノ秒で
メッセージを転送することができるが、メッセージを送
受信するためのソフトウェア時間は、数マイクロ秒から
300マイクロ秒以上までの範囲にわたる。したがっ
て、ソフトウェア・オーバヘッドと、ソフトウェアがメ
ッセージ転送システムに対して発生するボトルネックを
軽減するための新しい革新的な方法を見つけることが課
題である。
【0020】メッセージ転送ソフトウェアの問題は、比
較的低速の多重パーソナル・コンピュータおよびワーク
ステーション用の最新の相互接続解決策では顕著でな
い。この相互接続手段には、直列式で待ち時間の長いト
ークン・リング接続およびイーサネット接続が使用され
るが、これらの接続手段は、現代の相互接続システムに
必要な並列特性および短待ち時間概念を提供しない。必
要な特性としては、要素の相互接続が動的かつ迅速に確
立および切断でき、それを1つのチップ内で低コストで
容易に行え、数千個の要素まで拡張可能であり、任意の
長さの未較正の相互接続ワイヤ長が許容でき、分散クロ
ッキング問題を解決でき、将来の周波数の増加が可能で
あり、N個の交換経路を同時に並列に確立し、それを介
してデータを伝送することができる能力がある。
【0021】プロセッサ間のディジタル通信用に最も一
般的に使用されているネットワークには、イーサネット
LANネットワークまたはトークンリングLANネット
ワークがある。"Ethernet: Distributed Packet Switch
ing for Local Computer Networks"、Communications o
f the ACM、1976年7月、第19巻、第7号、p
p.393〜404と"Token-Ring Local-Area Networks
and Their Performance"、Proceedings of the IEE
E、第77巻、第2号、1989年2月、pp.238〜
256が、この種のネットワークについて記載した代表
的な論文であり、1つのノードがある時点で別のノード
にメッセージを送信するために使用する直列共用媒体を
提示する。本発明は、これらのイーサネット・ネットワ
ークおよびトークンリング・ネットワークに取って代わ
るものであり、多重同時伝送が可能な並列媒体をサポー
トする。
【0022】米国特許第4803485号は、本発明が
取って代わろうとする1つのLAN手法を表している。
この特許は、本発明と類似しているが、トークンリング
やLANのようなリング構造中に複数の伝送媒体セグメ
ントを有する通信システムに各種のバス・プロトコルを
適応させるための媒体変換アダプタについて記載してい
る。本発明は、待ち時間がLANのミリ秒範囲でなくサ
ブマイクロ秒範囲となる非バッファ式多段並列転送構成
において複数の伝送セグメントを適応させる点でそれと
異なる。この違いは、将来重要になる。
【0023】イーサネットLANネットワークまたはト
ークンリングLANネットワーク上で大幅に改良された
相互接続特性を提供するために本発明で使用する分散型
完全並列交換機は、米国特許出願第07/677543
号に開示されたALLNODE交換機(非同期短待ち時
間ノード間交換機)である。この交換機は、変換された
バス・インタフェースの切換えを短い待ち時間および高
い帯域幅で実行できるように本発明によって適応され
る。ALLNODE交換機は、高帯域幅で回線交換機能
を提供し、各交換機内に個別に分散型交換機経路接続確
立および切断制御機構を含む。したがって、並行して接
続を確立することができ、待ち時間が短く、中央点の故
障がない。ALLNODE交換機および本発明を使用し
て、バスに基づくプロセッサ相互接続の問題を効果的に
解決できる方法については、後で詳しく説明する。
【0024】
【発明が解決しようとする課題および課題を解決するた
めの手段】本発明の目的は、並列システムにおけるメッ
セージ転送のソフトウェア・オーバヘッドを軽減するた
めの方法および装置を提供することである。この軽減
は、相互接続ネットワークを通じてネットワークに接続
された複数のプロセッサのいずれかに送信される各デー
タ・メッセージの構築を支援する専用ハードウェアを提
供することによって実現される。一般に、メッセージ転
送システムでは、あらゆるメッセージに、メッセージの
主要制御パラメータを記述するメッセージ・ヘッダを接
頭部として付加する必要がある。メッセージ・ヘッダ
は、交換ネットワーク上でメッセージを伝送するために
送信側機能および受信側機能が知らなければならないす
べての可変情報を定義する。
【0025】通常、あらゆるメッセージのメッセージ・
ヘッダを個別に作成し、かつあらゆるメッセージに接頭
部として付加されたヘッダを最初に伝送するのは、ソフ
トウェアの責務である。本明細書に開示する発明は、メ
ッセージ・ヘッダを作成する責務からソフトウェアを解
放し、専用ハードウェアを使用してそのジョブを従来よ
りもはるかに高速かつ効率的に実行する。これによっ
て、きわめて高速のメッセージ送信モードが提供され
る。ソフトウェアは、あらゆるメッセージのメッセージ
・ヘッダを作成する責務から解放され、プロセッサ・バ
ス上でメッセージごとにハードウェアにメッセージ・ヘ
ッダを伝送するのに貴重なサイクル時間を費やす必要も
なくなる。この特殊高速モードをハードウェア作成メッ
セージ・ヘッダ(HBM)モードと呼ぶ。
【0026】本明細書に開示する高速メッセージ・モー
ドを最大限に利用する交換ネットワークを実施するため
の好ましい交換手段は、米国特許出願第07/6775
43号に開示された基本ディジタル非同期非バッファ式
交換の概念である。ALLNODE交換装置は、簡単に
実施できるという特徴をもち、いかなる種類のデータ・
バッファリングやデータ変換も必要としない交換ネット
ワーク通信構造を提供する。この装置は、瞬時に接続を
確立または切断するので、動的に変更可能であり、応答
時間が非常に短い。また、並列接続の確立を求める要求
を解決する能力をもち、n個の接続を同時に確立または
切断することが可能である(n=交換ネットワークを介
して通信するシステムの要素の数)。したがって、同時
に確立または切断できる接続の数は、システムのサイズ
に比例する。この能力により、本発明の装置は、多数の
短いメッセージを非常に効率的に処理することができ
る。また、この新しい装置には、同期要件やワイヤ長の
制限がない。さらに、新しい技術による速度の向上に追
従し、本発明の装置を実施するのに使用される技術の発
展に合わせて性能を向上することもできる。また、AL
LNODE交換装置を他の同一の装置とカスケード式に
連結して、任意の数のシステム要素またはノード間に相
互接続ネットワークを形成することができる。このネッ
トワークは、完全に並列な相互接続という特徴をもつこ
とになる。
【0027】
【実施例】本発明は、並列システムにおけるメッセージ
転送のソフトウェア・オーバヘッドを軽減するための方
法および装置である。通常、あらゆるメッセージのメッ
セージ・ヘッダを個別に作成し、かつあらゆるメッセー
ジに接頭部として付加されたヘッダを最初に伝送するの
は、ソフトウェアの責務である。本発明は、メッセージ
・ヘッダを作成する責務からソフトウェアを解放し、専
用ハードウェアを使用してそのジョブを従来よりもはる
かに高速にかつ効率的に実行する。本発明は、多段交換
ネットワークによって相互接続された複数の並列ノード
間における高性能メッセージ転送モードの実施に適用で
きる。
【0028】本明細書に開示する高速メッセージ・モー
ドを最大限に利用する交換ネットワークを実施するため
の好ましい交換手段は、米国特許出願第07/6775
43号に開示された基本ディジタル非同期非バッファ式
交換の概念である。図1は、前記出願のALLNODE
交換機の入力ポートおよび出力ポートを通じて4つのノ
ードを相互接続する基本ALLNODE交換装置10m
の概略図である。
【0029】図2を参照すると、交換機要素を使用し
て、多段相互接続ネットワーク30を介して並列システ
ムのn個のノードを相互接続するための好ましい実施例
が示されている。多段相互接続ネットワーク30の好ま
しい交換要素は、米国特許出願第07/677543号
で開示され、本発明によって、キャンプオンおよび優先
割込み特性を組み込むように修正された、基本的な非バ
ッファ非同期式ALLNODE交換機の概念である。A
LLNODE交換装置は、簡単に実施できるという特徴
をもち、いかなる種類のデータ・バッファリングやデー
タ変換も必要としない交換ネットワーク通信構造を提供
する。この装置は、瞬時に接続を確立または切断するの
で、動的に変更可能であり、応答時間が非常に短い。ま
た、並列接続の確立を求める要求を解決する能力をも
ち、n個の接続を同時に接続または切断することができ
る(n=交換ネットワークを介して通信するシステムの
要素の数)。したがって、同時に確立または切断できる
接続の数は、システムのサイズに比例する。この能力に
より、本発明の装置は、複数の短いメッセージを非常に
効率的に処理することができる。また、この新しい装置
には、同期要件やワイヤ長の制限がない。さらに、新し
い技術による速度の向上に追従し、本発明の装置を実施
するのに使用される技術の発展に合わせて性能を向上す
ることもできる。また、ALLNODE交換装置を他の
同一の装置とカスケード式に連結して、任意の数のシス
テム要素またはノード間で相互接続ネットワークを形成
することができる。前記多段相互接続ネットワーク30
は、完全並列相互接続の特徴を有する。
【0030】好ましい実施例で1方向インタフェースし
か使用せず、したがって図2には、2組の1方向線から
成る交換インタフェース70を示してある。1組の線
は、データをノード1Aから交換ネットワークまで搬送
し、もう1組の線は、データを交換ネットワークからノ
ード1Aまで搬送する。
【0031】図1および3ないし図9は、前述の米国特
許出願第07/677543号と共通する図である。図
1および3ないし図9は、ALLNODE交換機の4×
4クロスバー実施態様であり、交換概念の原則および速
度を例示している。
【0032】図3を参照すると、好ましい実施例は4×
4交換装置12である。ここで、本発明の機能は、4組
のディジタル入力、アナログ入力、または光入力のいず
れかを相互に排他的に、未使用の4つの出力ポートのい
ずれかに接続する手段を提供することである。4×4交
換装置12は、任意の時間に最大4つの接続を同時にサ
ポートすることができる。たとえば、入力1を出力3
に、入力2を出力4に、入力3を出力2に、入力4を出
力1に接続することができる。
【0033】本発明の交換装置12は1方向装置であ
る。すなわち、データは前記交換装置12中をその入力
ポートから出力ポートへと1方向にだけ流れる。交換装
置12のインタフェースは、図3で詳細に定義されてい
る。交換装置12への各入力ポートにおける1組の線3
1、32、33、34は、各出力ポートにおける1組の
線41、42、43、44と番号および機能が同じであ
る。各入出力ポートへのこの2組のインタフェース線
は、7つの独自の信号を含む。これらの線とは、4本の
ディジタル・データ線と3本のディジタル制御線(VA
LID、REJECT、ACCEPT)である。各ポー
トにおける信号は、関連するポート(X)の方向および
番号を示すINX−またはOUTX−という接頭部で区
別される。4本のディジタル・データ線および1本のV
ALID線では、交換装置12中をその入力から出力に
向かう方向に信号が流れ、ディジタルREJECT制御
線およびディジタルACCEPT制御線では反対方向に
信号が流れる。
【0034】図3に示すように、各1方向交換インタフ
ェース・セットは、多段相互接続ネットワーク30中を
制御信号およびデータを伝送するために7つの信号しか
必要としない。ディジタル・データおよび制御信号の転
送幅は1度に1/2バイト(4ビット)である。必要な
信号は、次のとおりである。
【0035】DATA:交換接続を指令し、ディジタル
・データ・メッセージまたはディジタル制御ヘッダを伝
送するために使用される4つの並列信号。
【0036】VALID:活動状態のときは、ディジタ
ル・メッセージ、制御ヘッダ、またはアナログ波形が伝
送中であることを示す。非活動状態のときは、RESE
Tコマンドを示し、すべての交換機をIDLE状態にリ
セットさせる。
【0037】REJECT:信号の流れが、DATA信
号およびVALID信号と反対方向である。活動状態の
ときは、REJECT条件またはエラー条件が検出され
たことを示す。
【0038】ACCEPT:信号の流れが、REJEC
T信号と同じ方向である。ロー状態のときは、メッセー
ジを受信し、正確かどうかを検査中であることを示す。
活動状態のときは、メッセージを正しく受信したことを
示す。
【0039】図4に示すように、複数の入力ポートおよ
び出力ポートを有する、ノード用のALLNODE交換
装置が設けられ、I個の入力のどれをもZ個の出力のど
れにも接続できるように、各入力ポート用の接続制御回
路と各出力ポート用のマルチプレクサ制御回路を備えて
いる。ここで、IおよびZは、2以上の任意の独自の値
をとることができる。
【0040】図4は、4×4クロスバーALLNODE
交換装置を示している。ここで、ALLNODE交換装
置10は1方向装置である。すなわち、データは前記交
換装置10中をその入力ポートから出力ポートへと1方
向だけに流れる。前記交換装置10は1方向装置である
が、4×4 ALLNODE交換装置10を図3に示す
ように接続すると、4つのノード(1A、1B、1C、
1D)間の2方向通信がサポートできる。各ノード1
A、1B、1C、1Dは2組の1方向相互接続線を有
し、1組は交換機10に向かい、1組は交換機10から
くる。交換装置10の内部の破線は、前記交換装置の機
能が、INPUT PORT 1などの入力ポートを4つの可能な出
力ポートの1つに接続することであることを示してい
る。交換装置10は、各入力ポートに対してまったく同
じ機能を提供し、各ポートをどの未使用出力ポートにも
接続できるようにする。
【0041】図5を参照すると、8つの交換装置10ブ
ロックをカスケード式に連結することによって、システ
ムにおけるノードの数を増す方法が示されている。8つ
のカスケード連結された交換機を10Aないし10Hで
表して、それらが交換装置10の同一のコピーであっ
て、入力ポートおよび出力ポートの配線だけが異なるこ
とを示す。16個のノードのどれも、2つの交換装置1
0ブロックを通過する接続を介して他のどのノードとも
通信できることに留意されたい。たとえば、ノード5
は、交換機10Bおよび交換機10Hを通過してノード
15にメッセージを送信することができる。すべての接
続は2つの交換装置10ブロックを通って確立されるの
で、8つの交換装置10ブロックから成るネットワーク
を2段交換ネットワークと呼ぶ。3つの段、4つの段な
どを使用することによって、同様に交換装置12ブロッ
クから他の多段ネットワークを構成することができる。
【0042】図6を参照すると、ALLNODE交換装
置10を通る単純なデータの流れの機能図が示されてい
る。図6では、分かりやすくするために、各入力ポー
ト、交換機内部、および各出力ポートにおける、VAL
ID線および4本のデータ線を1本の線で示してある。
たとえば、IN PORT 1において交換機10に入るVAL
ID線および4本のデータ線は、交換装置10の5つの
内部機能ブロック、すなわちブロック50A、60A、
60B、60C、60Dに向かう。ブロック50Aは、
4つの可能な出力ポートのうちのどれを入力ポート1と
接続するかについて判断を下す。各入力ポートからのV
ALID線および4本のデータ線は、各出力マルチプレ
クサ・ブロック(60A、60B、60C、60D)に
向かう。これによって、任意の入力ポートを任意の出力
ポートに接続することが可能になる。4つの出力マルチ
プレクサ・ブロック(60A、60B、60C、60
D)はそれぞれ、4本の可能な入力ポート線の組のうち
のどれを各出力ポートに接続するかについて、各制御ブ
ロック(50A、50B、50C、50D)から独自に
指令を受ける。たとえば、制御ブロック50Aは、入力
ポート1を出力ポート3に接続するようにマルチプレク
サ60Cに指令することができる。制御ブロック50B
は、入力ポート2を出力ポート1に接続するようにマル
チプレクサ60Aに指令することができる。制御ブロッ
ク50Cは、入力ポート3を出力ポート2および出力ポ
ート4にマルチキャスト式に接続するようにマルチプレ
クサ60Bおよび60Dに指令することができる。3つ
の接続をすべて同時にまたは異なる時間に確立すること
が可能である。マルチプレクサ60Aないし60Dが、
入力ポートから出力ポートへと1方向に信号が流れる、
交換機12中をVALID信号およびデータ信号が移動
する接続を形成するのと同時に、マルチプレクサ61D
およびANDゲート63Dが、出力ポートから入力ポー
トへと反対方向に信号が流れる、REJECT信号およ
びACCEPT信号用の信号接続をそれぞれ形成する
(典型的な実施態様をブロック61Dおよび63Dで示
す。同様なブロックが各入力ポートに結合されてい
る)。このREJECT信号およびACCEPT信号
は、カスケード式ネットワークにおける以後の交換機1
0の各段によってまたはVALID信号および4つのデ
ータ信号を受信し解釈する装置によって取られたアクシ
ョンの肯定フィードバック指示を交換機10に提供す
る。VALID信号の制御下で4つのデータ信号にわた
って交換装置10を通って伝送される制御ヘッダまたは
ディジタル・メッセージは、指令された接続を確立でき
ない場合は任意のネットワーク段によって、またその時
点でメッセージを受信できない場合または伝送中にエラ
ーを検出した場合は受信側装置によって拒絶することが
できる。受信側装置はまた、ACCEPT信号をパルス
発信することによって、コマンドまたはメッセージが
(エラーが検出されずに)正しく到着したかどうかを確
認することができる。REJECT信号およびACCE
PT信号はデータの流れと反対方向に進むので、試みら
れた伝送が正しく受信されたかそれとも拒絶されたかに
ついての肯定指示を送信側に報告する手段となる。
【0043】図7を参照すると、ブロック56、52、
54は、交換装置12の一部分である交換装置14へと
またそれを通って伝送できるメッセージの形の多重線
(並列)/直列ディジタル・データを生成するための典
型的な方法を示している。交換装置12への他の各入力
ポートでも、ブロック56、52、54で提供されるの
と同様の並列/直列データ生成論理回路が使用できる。
入力データ線の各組は、4つのシフト・レジスタ54に
よって同じクロックに対して同期化された所与の入力ポ
ートに、4本の直列データ線を提供する。シフト・レジ
スタ54は、同一のクロッキング信号(図6の100M
Hz)で制御される4本のデータ同期線31をシフトす
ることによって並列/直列データを作成する。しかし、
交換装置14の4つの異なる入力ポート・ソース(図3
の31、32、33、34)は、異なる非同期100M
Hzクロッキング信号に基づき、相互に非同期にするこ
とができる。
【0044】交換装置14を通って並列/直列メッセー
ジを送信するためのプロセスは、伝送すべきデータ・メ
ッセージを累積するFIFO 56を伴う。次に伝送す
るメッセージ全体が、バッファ52に移される。バッフ
ァ52に格納されたメッセージは、伝送の準備としてシ
フト・レジスタ54に移され、データ・ビット0をシフ
ト・レジスタ1の第1ビットに、データ・ビット1をシ
フト・レジスタ2の第1ビットに、データ・ビット2を
シフト・レジスタ3の第1ビットに、データ・ビット3
をシフト・レジスタ4の第1ビットに、データ・ビット
4をシフト・レジスタ1の第2ビットに等々入れること
によって、データが4つのシフト・レジスタ54に拡散
される。そうすると、シフト・レジスタ54は、メッセ
ージ全体が伝送されるまで並列/直列データが連続的に
流れるような形で、4つの同期データ線を介して交換装
置14に直列データを送信し始める。交換装置14は、
(インタフェース31を介してシフト・レジスタ54か
ら交換装置14に入る直列データの最初の2クロック・
サイクルに)最初に伝送された8つのビットを使用し
て、交換装置14を通る接続経路を選択し確立する。図
7の例では、交換装置が、インタフェース31における
8本の個々の線がそれぞれインタフェース42における
対応する各線に独自にかつ直接に接続されるような形
で、入力ポート1(31)と出力ポート2(42)の一
時的接続を確立する様子を破線で示す。
【0045】図8を参照すると、交換装置14の入力ポ
ートと出力ポートの典型的な直列波形が示されている。
交換機は、シフト・レジスタ54によって送信された直
列伝送の最初の8ビットを削除し、それらを使用して、
インタフェース31からインタフェース42への接続な
どの接続を確立し保持する。この例における直列メッセ
ージの残り部分は、インタフェース31からインタフェ
ース42に直接に転送されるので、インタフェース42
には、インタフェース31が受信するメッセージとまっ
たく同じメッセージから最初の8ビットを削除したもの
が見える。この部分は、直列データが交換装置14を通
過する際に発生する回線遅延だけ遅延されている。交換
装置14は、インタフェース31を介して入ってくる直
列データを、いかなる形でもバッファリングまたは再ク
ロックしない。交換装置14は、インタフェース31を
介して受信した入力波形を、最初の8ビットをはぎ取る
以外はいかなる形でも変更せず、可能なかぎり迅速に出
力インタフェース42に反射するだけである。
【0046】インタフェース(31など)を介して交換
機14の入力ポートに、進行中の転送がないことを示す
ための規約は、4本のデータ線で示される連続したID
LEコマンドを発行することであり、VALID制御線
は論理0に保持される。いずれかの入力線で論理1が検
出された場合は、IDLE状態から離れたことを示し、
選択および転送が開始していることを交換機に示す。同
様に、進行中のアクティブな転送がないときは、交換機
からの出力線がIDLE状態に(すべて0に)保持され
る。
【0047】一般に、(入力ポートから出力ポートへ
の)どの接続を確立すべきかをすべての交換機に指令す
る経路選択方式が必要である。交換装置10の場合、経
路選択コマンドは、データが転送されるインタフェース
と同じインタフェース、すなわち各入力ポートと結合さ
れた4本のデータ線を介して交換機に伝送される。選択
情報は、指令された相互接続が確立でき、データが指令
された宛先に流れることができるように、データより前
に転送しておかなければならない。選択情報は、入力ポ
ート番号(1ないし4)を識別する必要はない。なぜな
ら、入力ポート番号は特定の入力を介して交換機に達す
るが、交換機はどの入力ポート上でデータを受信するか
をすでに知っているからである。したがって、選択情報
は、交換装置10の4つの出力ポートのうちの接続すべ
き出力ポートの番号(1ないし4)を指定するだけでよ
い。ここで推奨される経路選択方式は、ゼロ復帰を伴う
N−1コード化である(DEAD FIELDと呼ばれる)。
【0048】図9を参照すると、交換装置10に制御情
報およびディジタル・データ情報を送信するための厳密
な直列ビット・パターンおよび制御信号活動化の典型的
な例が示されている。この例では、図5に示したカスケ
ード連結2段交換ネットワークを参照し、ネットワーク
を通ってノード1から交換装置10Aおよび10Fを通
りノード7にデータを送信する。この接続を確立するに
は、入力ポート1を、第1段交換装置10Aの出力ポー
ト2と、第2段交換装置10Fの出力ポート3に接続し
なければならない。入力ポート1に送信され、交換装置
10Aおよび10Fにおいて所望の接続を発生させる信
号シーケンスは、図5に示されている。1および0の信
号シーケンスでは、時間が左から右へ経過するので、ク
ロック時間−2に見える値が最初に交換機10Aに到達
し、クロック時間−1における値が次に到達し、以下同
様である。IN1-DATA線およびIN1-VALID線の値はすべて
ゼロであり、それらの値はIDLEを示すので、時間−
2から時間−1までの間に交換機10Aで何も起こらな
い。クロック時間0に、IN1-VALID線が論理1になる。
これによって、入力ポート1がデータを受信することが
できるようになり、交換機10Aの準備が行われるが、
この時点では、交換機10Aで接続やアクションは発生
しない。IN1-VALID制御線は基本的に、対応する交換機
入力ポートを使用可能にする。IN1-VALIDが論理0のと
き、交換機10Aは接続を確立することも、入力ポート
1からデータを受信することもできない。入力ポート1
はRESETに保持されている。最後に、クロック時間
1に、交換機10Aは、どの出力ポートに接続するかに
ついてのコマンドを受信する。このコマンドは、完全に
クロック時間1の間に受信される。
【0049】クロック時間1に送信されたコマンド・ビ
ット・パターンは、交換機10Aが出力ポートへの接続
を確立するために使用する。このプロセスは、経路選択
動作と呼ばれ、完全に交換機10Aの内部で発生する。
このALLNODE交換機の発明で実施される経路選択
手法は、4つのIN1-DATA線にそれぞれ、選択すべき交換
機10Aの一義的出力を定義させることである。たとえ
ば、時間1に論理1になるIN1-DATA1信号は、交換機1
0Aに出力ポート1に接続するよう指令し、IN1-DATA2
は出力ポート2への接続を指令する。この例では、クロ
ック時間1にIN1-DATA2が論理1になるので、それによ
って、交換機10Aは出力ポート2に接続するよう指令
を受ける。言い換えると、接続アルゴリズムは、入力ポ
ートが使用可能になった後に最初に論理1になるデータ
入力線が、その入力ポートが確立すべき接続を定義する
ということである。これは相互に排他的なプロセスであ
り、通常の場合、クロック時間1に論理1となることが
できるデータ線は1本だけである。他の3本のデータ線
は0でなければならない。選択情報の1ビットは論理1
であることが保証されるので、交換機10Aは、転送が
開始することを示す追加のビットを必要とせずに、伝送
の開始を認識することができることに留意されたい。交
換機10Aは、データ線から4つのビットを除去し、図
8の制御ブロック50Aの選択レジスタにそれを格納す
ることによって、指令された接続を確立する。クロック
時間1に伝送されたビットは交換機10Aを通過して交
換機10Fに送られず、その代わり、交換機10Aは、
クロック時間2に対応する次の4ビットを次の交換機1
0Fに渡し始める。しかし、図8に示すように、選択コ
マンドに続く情報ビット(この例では、クロック時間2
に4本のデータ線によって伝送される情報ビット)は常
にすべて0でなければならない(DEAD FIELD)。その目
的については、後で説明する。
【0050】クロック時間2に、交換機10Aの入力ポ
ート1から出力ポート2への接続が確立され、この接続
によって、クロック時間2に信号シーケンスが交換機1
0Aと相互接続線を介して交換機10Fの入力ポート1
に伝送される。この時点以降、交換機10Aは単に、後
続のデータをただちに交換機10Fの入力ポート1に送
るだけである。交換機10Aは、その入力ポート1のイ
ンタフェースを介して交換機10Aに提示される他のデ
ータ・パターンを検査せず、また該データ・パターンに
対して何らアクションを取らない。交換機10Aは、入
力ポート1を介して受信したすべてのデータ・パターン
をただちに出力ポート2および交換機10Fに渡すだけ
である。したがって、クロック時間2に、交換機10A
とそれに結合されたケーブルにおける遅延がゼロである
と仮定すると、交換機10Fの入力ポート1には、VA
LID信号が立ち上がり、4本のデータ線上のすべてゼ
ロのDEAD FIELDが交換機10Fの入力ポート1に入って
くるのが見える。このようにして、時間2に、交換機1
0Fの入力ポート1は、以前に時間0に交換機10Aの
入力ポート1が使用可能になったのと同じ方式で使用可
能になる。
【0051】この例では、クロック時間3にIN1-DATA3
が論理1になり、それによって交換機10Fは、交換機
10Aがクロック時間1に入力ポート1を出力ポート2
に接続するよう指令を受けたのと同様に、入力ポート1
を出力ポート3に接続するよう指令を受ける。交換機1
0Fは、指令された接続を確立する際、クロック時間3
にデータ線から4ビットを除去し、図5の制御ブロック
50Aの一部である選択レジスタにそれを格納する。ク
ロック時間3に伝送されたビットは、交換機10Fを通
ってノード7に渡されず、その代わりに、交換機10F
は、クロック時間4に対応するデータの次の4ビットを
ノード7に渡し始める。しかし、図8に示すように、選
択コマンドに続く情報ビット(この例では、クロック時
間4に4本のデータ線によって伝送される情報ビット)
は常にすべて0でなければならない(DEAD FIELD)。し
たがって、クロック時間4までに、交換機10Aおよび
10Fは、ノード1からノード7に直接データを転送す
るための接続経路を確立し終えている。クロック時間5
までノード7にはIDLEコマンドしか見ない。ノード
7は、時間4に交換機10FからのOUT3-VALID線がアク
ティブになることを知り、時間5に使用可能になってデ
ータの受信を開始する。時間5以降、ノード7は交換機
10Fからの4本のOUT3-DATA線を介してノード1から
のデータを受信することができる。実際のデータが伝送
されるプロトコルは、マンチェスタ・コード化、プリア
ンブル付き8/10ビット・コード化など通常のフォー
マットのどれでもよい。しかし、図8に示す好ましい実
施例は、時間5にすべて1の同期化フィールドと、それ
に続くNRZデータ・メッセージである。このデータ・
メッセージは、転送のワード・カウント長を指定するこ
とができる。すべて1の同期化フィールドを実際のデー
タ・メッセージの接頭部として使用する目的は、受信側
ノード7が1クロック時間で送信側ノード1と同期化で
きるようにすることである。その際に、データ転送に関
与する2つのノードが、相互に非同期のクロッキング・
システムを持つが、指定された許容差の範囲内で同じ周
波数で動作するものと仮定されている。
【0052】好ましい実施例では、クロック時間6およ
びクロック時間7に、まずメッセージのワード・カウン
ト長が送られる。ノード7は次に、長さのカウントを減
分し、転送がいつ完了するかを検出することができる。
ノード7は次に、選択されたエラー検出方式(パリテ
ィ、ECC、またはCRC)を使用してメッセージが正
確かどうか検査することができる。メッセージを正しく
受信しなかった場合、ノード7はそれに応答して、クロ
ック時間n+1およびn+2に、交換機10Fに戻るA
CCEPTインタフェース線を活動化する。交換機10
Fは交換機10AにACCEPT指示を返し、交換機1
0Aはこの指示をただちにノード1に返す。これは、ノ
ード1に対して、転送が首尾よく完了したことを示し、
ノード1は交換機10AへのVALID線および4本の
データ線をゼロにリセットする。これによってデータ転
送は完了し、IDLE状態に戻る。交換機10AへのIN
1-VALID入力線が時間n+3にゼロになると、交換機1
0Aの入力ポート1は、出力ポート2への接続を切断
し、IDLE状態に戻る。交換機10Fはただちに、IN
1-VALID入力線がゼロになるのを知り、出力ポート3へ
の接続を切断し、IDLE状態に戻る。したがって、わ
ずか1クロック時間で、接続を切断し、交換機がIDL
E状態に戻ることができる。伝送すべき別のメッセージ
がノード1にある場合、ノード1は次のメッセージをバ
ッファ52およびシフト・レジスタ54にロードし(図
7)、時間n+4にノード7またはその他のノードへの
伝送を開始することができる。唯一の制限は、ある転送
の終了を別の転送が始まる前に示すため、ノード1で生
成されるVALID信号が、最短の1クロック時間(時
間n+3)でゼロに戻らなければならないことである。
【0053】ノード7は、ワード・カウントがクロック
時間nにゼロになった後に受信したメッセージ中でエラ
ーを見つけた場合、それに応答して、交換機10Fに戻
る(ACCEPTではなく)REJECTインタフェー
ス線を活動化する。交換機10Fは、ノード7からの着
信REJECT信号を使用してノード7への接続を切断
し、IDLE状態に戻り、交換機10AにREJECT
指示を転送する。交換機10Aは、接続を切断してID
LEに戻った後、ただちにノード1にREJECT指示
を返す。ノード1は次に、転送が拒絶されたことを示
し、交換機10AへのVALID線および4本のデータ
線をゼロにリセットすることによってIDLE状態に戻
る。その後、ノード1はバッファ52からシフト・レジ
スタ54を再ロードし、伝送を最初(クロック時間−
1)からやり直すことによって、伝送を再び試みること
ができる。再伝送は、前に拒絶された伝送と同じ経路を
介して行うことができる。ネットワークを通る代替経路
が実施されている場合は、別の経路を試みることもでき
る。同一のメッセージに対して、指定された回数のRE
JECTが発生するなど、連続してREJECTに出会
った場合は、エラー報告機構を呼び出すことができる。
【0054】また、ネットワーク経路におけるどの交換
機10も、メッセージを拒絶することができる。これ
は、次の2つの場合のいずれかで可能である。
【0055】1)BUSY(ビジー)−交換機がそれに
接続するよう指令を受ける出力ポートがBUSYである
(すなわち、以前に確立された接続によって出力ポート
が使用されている)場合、直前のネットワーク段または
送信側(ネットワークの第1段でBUSYを検出した場
合)に戻るREJECT線を活動化することによって、
コマンドを発行している入力ポートにこの条件を示す。
たとえば、図8に示す例では、10Aがクロック時間−
2に、入力ポート4を出力ポート2に接続するコマンド
を受信していた場合、入力ポート1がクロック時間1に
出力ポート2への接続を要求したとき、その接続は活動
状態になっていたはずである。この場合、出力ポート2
はクロック時間1にBUSYであり、交換機10Aはノ
ード1へのIN1-REJECT線を活動化する。上述のように、
送信側は、拒絶されたメッセージがあればそれを再試行
することができる。
【0056】同様に、交換機10Aにおいても首尾よく
接続を確立することができるが、クロック時間3に交換
機10Fの出力ポート3がBUSYになり、それによっ
て交換機10Fが交換機10AにREJECT信号を発
行することができる。それによって、交換機10Aは、
接続を切断してIDLEに戻った後、ただちにノード1
にREJECTを返す。
【0057】2)同時CONTENTION(競合)−
上述のように、入力ポート4がクロック時間−2に交換
機10Aの出力ポート2への接続を(クロック時間1に
入力ポート1からそのコマンドが発行される前に)確立
するのでなく、複数の入力ポートがほぼ同時に同じ出力
ポートへの接続を試みることが可能である。これを、利
用可能な出力ポートに対するCONTENTION(競
合)と呼ぶ。たとえば、入力ポート1と入力ポート4が
共にクロック時間1に同時にコマンドを送って、出力ポ
ート2への接続を要求したものとする。本発明では、ま
ず競合している入力ポート1および入力ポート4の両方
を出力ポート2に接続することによってこの競合を解決
する。その正味の効果は、2つの入力ポートが出力ポー
ト2に電気的に接続されることであり、出力ポート2
は、両方のソースからの信号の論理和をとる。クロック
時間2に、2つの入力ポートの論理和によってエラーが
発生することはない。なぜなら、入力ポート1上と入力
ポート4上に存在する値は同じだからである。各入力ポ
ートのVALID線は論理1であり、各入力ポートのデ
ータ線はDEAD FIELD(論理0)を含んでいる。しかし、
クロック時間3には各ソースからの信号が異なる可能性
があり、クロック時間3以降に2つの入力ポートが共に
接続されたままである場合は、エラーが発生する可能性
がある。言い換えると、交換機10Aは、複数の入力を
同一の出力に接続するというそれ自体が下した判断を1
サイクル時間(クロック時間2)の間に訂正する。交換
機10Aはクロック時間2に、複数の入力が所与の出力
に接続されていることを検出することによってこの処置
をとる。交換機10Aは次に、それらの複数の接続のう
ち1つを除くすべてをリセットする処置をとり、クロッ
ク時間3が発生する前にそれを行う。どの接続をリセッ
トしどの接続を維持するかの判断は、優先順位に基づい
て下される。好ましい実施例では、次のような単純な優
先順位方式が使用される。入力ポート1が競合している
場合、該ポートが接続の権利を得る。入力ポート1が競
合しておらず、入力ポート2が競合している場合は、入
力ポート2が接続の権利を得る。入力ポート1および2
が競合しておらず、入力ポート3が競合している場合
は、入力ポート3が接続の権利を得る。入力ポート4が
接続の権利を得るのは、他の入力ポートが接続を要求し
ていない場合だけである。この例に優先順位選択を適用
すると、入力ポート1は出力ポート2への接続を維持す
ることができるが、入力ポート4から出力ポート2への
接続はクロック時間2にリセットされる。その結果、R
EJECT信号が交換機10Aから入力ポート4に通常
の方式で発行される。
【0058】したがって、本発明におけるDEAD FIELDの
目的は、1交換機段当たり1クロック時間で同時競合を
解決できるようにすることである。DEAD FIELDの第2の
目的は、前のクロック時間に活動状態であった選択ビッ
トを立ち下げ、直列選択データをカスケード連結された
交換機へと運ぶ4本のデータ線の両端間に存在する可能
性のあるタイミング・スキューを補償することである。
交換機に接続の確立を指令するデータ・ビットの立上り
と立下りの両方によって、非クロッキング交換機に2つ
のクロック・エッジ(立上りおよび立下り)が与えら
れ、そのとき、トリガし判断を下すことができる。これ
が、ALLNODE交換機で利用可能なただ2つの意志
決定時間である。
【0059】図10を参照すると、基本4ビット幅AL
LNODE交換機10mを拡張したものが示されてい
る。交換機10への相互接続経路をバイト幅実施態様に
拡張するために、1ポート当たりデータ線4本からデー
タ線8本に拡張してある。このバイト幅実施態様は、本
発明と併せて使用するALLNODE交換機の好ましい
実施例である。
【0060】図11には、多段相互接続ネットワーク3
0の好ましい実施例で使用されるメッセージ・フォーマ
ットが示されている。多段相互接続ネットワーク30で
は、処理ノードによって生成されるあらゆるデータ・メ
ッセージが、ブロック550に示すような、2つの32
ビット・ワードからなるメッセージ・ヘッダを持つ必要
がある。メッセージ・ヘッダのワード1は、宛先ノード
番号(DID値)を含み、どのノードがVALIDメッ
セージを受信するかと、メッセージのタイプおよびその
他のメッセージ制御パラメータとを定義するコマンド・
フィールドを定義する。メッセージ・ヘッダのワード2
は、データ・メッセージを生成する発信元ノード番号
(SID値)と、(2つのメッセージ・ヘッダ・ワード
を除く)実メッセージ・データのワード・カウントとを
含む。ブロック550に示す、データ・メッセージおよ
びヘッダの32ビット・フォーマットは、好ましいバイ
ト幅ALLNODE交換機から成るネットワーク中を伝
送するために、バイト幅フォーマットに変換される。多
段相互接続ネットワーク30中を送られるメッセージの
バイト幅内容がブロック552に示されている。ブロッ
ク552に示すように、ネットワーク・ヘッダは、宛先
フィールドから生成され、メッセージに接頭部として付
加される。ネットワーク・ヘッダは、多段相互接続ネッ
トワーク30が、VALIDメッセージを適切な宛先に
経路指定し、データの到着時に受信側ノードを同期化す
る際に使用する。多段相互接続ネットワーク30は、V
ALIDメッセージがネットワークが通過する際に該メ
ッセージからネットワーク・ヘッダを削除する。受信側
ノードは、着信メッセージと同期化された後にRECEIVER
SYNCフィールドを削除する。したがって、ネットワー
ク30上を送信側ノードから受信側ノードまで実際に移
動するVALIDメッセージは、ブロック552に示す
メッセージ・フォーマットのメッセージ・ヘッダおよび
メッセージ・データの部分である。ブロック552のメ
ッセージ・ヘッダ部分は、ブロック550に示す2ワー
ド・ヘッダとまったく同じであり、多段相互接続ネット
ワーク30上で伝送するために個々のバイトに分割され
ているだけである。ブロック552のメッセージ・デー
タ部分は、実メッセージのデータ・ワードであり、多段
相互接続ネットワーク30上で伝送するために個々のバ
イトに分割されている。ブロック552の最後の部分は
CRCフィールドであり、最後に送信され、VALID
メッセージが正確かどうか検査するために使用される。
【0061】次に、多段相互接続ネットワーク30を通
じて送られるメッセージの作成においてソフトウェアを
支援する特殊ハードウェアを提供することによってメッ
セージ転送のソフトウェア・オーバヘッド問題を軽減す
る、好ましい解決策について説明する。図10に示すよ
うな好ましいメッセージ転送システムでは、あらゆるメ
ッセージに、メッセージの主要制御パラメータを記述し
たメッセージ・ヘッダを接頭部として付加する必要があ
る。通常、あらゆるメッセージのメッセージ・ヘッダを
個別に作成し、かつあらゆるメッセージの前にまずヘッ
ダを伝送するのは、ソフトウェアの責務である。本明細
書に開示する発明は、メッセージ・ヘッダを作成する責
務からソフトウェアを解放し、専用ハードウェアを使用
してあるタイプのメッセージについてそのジョブを従来
よりも高速かつ効率的に実行する。この特殊高速モード
をハードウェア作成メッセージ・ヘッダ(HBM)モー
ドと呼ぶ。
【0062】HBMモードの好ましい実施例では、図1
2のブロック図に示す機能を使ってメッセージ・ヘッダ
を作成する。HBMは、宛先フィールドを除くすべての
フィールドが一定に保持される、2つの固定ヘッダ・ワ
ードを使用するメッセージ・ヘッダと共に受信される、
すべてのデータに接頭部として使用される。ヘッダの固
定部分は、固定ワード・カウント、コマンド・フィール
ド、および固定発信元ノード・フィールドを定義するた
め、事前に初期設定され継続して再使用される入出力レ
ジスタの内容に基づいて、ハードウェアによって作成さ
れる。宛先フィールドは通常、唯一の可変ヘッダ・フィ
ールドであり、メッセージ・データ転送を開始するプロ
セッサ・バス動作のアドレス・フィールドの一部として
割り当てることができる。宛先フィールドを指定するた
めの2つの典型的な方法は次の通りである。
【表1】
【0063】この2つの典型的な宛先アドレス割当てに
より、HBMは、512ノード・オプションと4096
ノード・オプションという2つのモードのいずれかで動
作することが可能になる。512モードでは、最大51
2個の宛先ノードを指定することができ、16ビットの
プロセッサ・バス・アドレスを使って、(入出力レジス
タによって事前に定義された)この特定のアドレス空間
が、プロセッサがハードウェアにメッセージ・ヘッダを
作成させたい場合に書き込まなければならないアドレス
空間にマップされる。追加のアドレス空間を、プロセッ
サがハードウェアにメッセージ・ヘッダを作成させたい
場合に書き込まなければならないアドレス空間として割
り当てることもできることに留意されたい。したがっ
て、ハードウェアで支援されソフトウェアで作成された
ヘッダは共存することができ、動的に混合することがで
きる。4096モードでは、最大4096個の宛先ノー
ドを指定することができ、13ビットのプロセッサ・バ
ス・アドレスの認識が必要である。
【0064】HBMを使用する前に、ハードウェア支援
論理機構における入出力レジスタにHBMアドレス空間
定義、HBMコマンド・フィールド、ワード・カウン
ト、およびHBM使用可能制御ビットの各パラメータを
書き込むことによって、ハードウェア作成メッセージ・
ヘッダ・オプションを使用可能にしておかなければなら
ない。ハードウェア作成ヘッダは、HBMアドレス範囲
に送られるあらゆるメッセージに接頭部を付加するため
に使用され、この動作は、HBM入出力レジスタがロー
ドされ使用可能になった後、ハードウェアによって自動
的に実行される。HBMメモリ空間に送られるあらゆる
メッセージに対して同じハードウェア作成ヘッダが連続
的に発行され、宛先フィールドだけがプロセッサ・バス
・アドレスの最下位ビットに基づいて変化する。アドレ
スの最下位7ビットは、一般に無視され、任意のワード
位置合せ値をとり、任意の順序で到着することができ
る。メッセージ・データは、アドレス順序とは無関係
に、ハードウェア作成ヘッダの接頭部によって指定され
た時間順にネットワーク上を送られる。ただし、7つの
最下位ビットがゼロと等しいアドレスは常に、新しいメ
ッセージの始めを示すためだけに使用すべきである。こ
れは、プロセッサとハードウェア支援論理機構の同期化
チェックとして機能する。「同期外れ」状態があれば検
出され、プロセッサにエラーとして報告される。
【0065】HBM機能を使用して、同じサイズおよび
コマンドのメッセージを非常に迅速かつ効率的に送信で
きることに留意されたい。プロセッサが主として同じサ
イズおよびタイプのメッセージを送信する場合、これは
きわめて有用である。このサイズおよびタイプでない例
外的なメッセージについては、プロセッサはソフトウェ
ア作成ヘッダを使用し、それを任意の方式でハードウェ
ア作成ヘッダと混合することができる。様々なサイズお
よびタイプのHBMを送信する際の柔軟性を高めるため
に、ハードウェア支援論理機構は、それぞれ異なるサイ
ズおよびタイプを有する複数のHBMチャネルを実施す
ることができる。ソフトウェアは、プロセッサ・バス上
の16ビットの異なる高位アドレス空間の認識に基づい
て、各HBMチャネルを個別に選択することになる。
【0066】図12には、1つのHBMチャネルの51
2メッセージ・ヘッダ生成論理機構の典型的なレイアウ
トが示されている。プロセッサ(並列処理システムの1
つのノード)が、プロセッサ・アドレス・バス102お
よびデータ・バス104を介してHBMチャネルにメッ
セージを送る。プロセッサは、メッセージを送る前に、
データ・バス104上で入出力アドレス・レジスタを個
別にアドレスすることによって、入出力レジスタ111
ないし115をロードする。アドレス認識ブロック10
6は、プロセッサ・アドレス・バス102上に置かれた
あらゆる入出力アドレスを比較して、そのアドレスがレ
ジスタ110中で定義されたアドレス範囲に合致するか
どうか判定する。合致する場合、アドレス認識ブロック
106は合致を検出し、データ・バス104上で送られ
たデータを適切な入出力レジスタ111ないし115に
ロードする。入出力レジスタがロードされ、HBMがレ
ジスタ114を介して使用可能になると、プロセッサ
は、レジスタ111によって定義されたアドレス空間へ
のHBMメッセージの送信を開始することができる。ア
ドレス認識ブロック106は次に、プロセッサ・アドレ
ス・バス102上に置かれたあらゆる入出力アドレスを
比較し、そのアドレスが、レジスタ110中で定義され
たアドレス範囲と、レジスタ111中で定義されたHB
Mチャネル1用のアドレス空間のどちらに合致するかを
判定する。レジスタ111に合致する場合、アドレス認
識ブロック106は、タイミング論理ブロック108を
活動化することによって、HBMの処理を開始する。タ
イミング論理ブロック108は、図11のハードウェア
・メッセージ・ヘッダ・ワード1が、マルチプレクサ1
20を最初に通過し、プロセッサ・アドレス・バス10
2によって定義された宛先フィールドとレジスタ112
によって定義されたコマンドおよびフィールドを含むよ
うに、マルチプレクサ120を制御する。次に、図11
のハードウェア・メッセージ・ヘッダ・ワード2が、マ
ルチプレクサ120を通過し、レジスタ115によって
定義された発信元ノード・フィールドとレジスタ113
によって定義されたワード・カウント・フィールドを含
むようになる。最後に、バス104上で受信されたメッ
セージ・データ・ワードがマルチプレクサ120を通過
する。最終的には、ハードウェア作成メッセージ・ヘッ
ダ・ワードを接頭部として付加されたメッセージ125
が生成される。
【図面の簡単な説明】
【図1】高速メッセージ転送通信を生成する本発明をサ
ポートする交換ネットワークを構成するのに使用される
交換装置の好ましい実施例の概略図である。
【図2】交換ネットワークを使用して並列システムの複
数のノードを相互接続するのに使用される方法を全般的
に示す図である。
【図3】非同期的に動作し、開示された改良を提供する
ように修正することのできる、親出願の4入力4出力
(4×4)クロスバー交換装置を示す図である。
【図4】4入力4出力(4×4)クロスバー交換装置が
4つのノード間に完全な相互接続を提供するために必要
な相互接続を示す図である。
【図5】4つを越えるノードをもつ並列システムに対応
できるように、4×4非同期交換装置をカスケード式に
連結するための典型的な方法を示す図である。
【図6】ディジタル・データを転送するために最大4つ
のシステム・ノードを相互接続するための完全に並列な
交換手段を提供できるように本発明によって修正できる
4×4非同期交換装置の単純なディジタル・データ・フ
ローおよび制御経路の実施の概略ブロック図である。
【図7】4本の同期データ線上で本発明の交換装置の元
の4×4実施例に送られる並列制御情報および多重線直
列ディジタル・データ情報を生成するための典型的な方
法を示す図である。
【図8】本発明の交換装置の元の4×4実施例の1つの
入力ポートに着信するディジタル・インタフェース信号
を1つの出力ポートに経路指定するための典型的なタイ
ミング図である。
【図9】ディジタル・データをあるノードから別のノー
ドに送信する目的で、本発明の交換装置から構成される
ネットワークを通る伝送経路を選択し確立するための典
型的な方法を示す図である。
【図10】基本4ビット幅ALLNODE交換機相互接
続経路をバイト幅実施態様に拡張したものを示す図であ
る。
【図11】ソフトウェアによって生成されるフォーマッ
トならびに交換機ネットワークを通じて送信されるフォ
ーマットによる、ALLNODE交換機ネットワーク上
で使用される典型的なデータ・メッセージおよびメッセ
ージ・ヘッダを示す図である。
【図12】高速メッセージ転送モードを実施するための
メッセージ・ヘッダの生成においてソフトウェアを支援
する専用ハードウェアを使用する、本発明のハードウェ
ア実施態様の詳細を示す図である。
【符号の説明】
10 交換装置 20 ラッチ 30 多段相互接続ネットワーク 31 インタフェース 50 制御ブロック 52 バッファ 54 シフト・レジスタ 56 FIFO 60 マルチプレクサ 70 交換インタフェース
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 H04L 12/50 (72)発明者 マイケル・ウェイランド・ドットソン アメリカ合衆国13901、ニューヨーク州ビ ンガムトン、カルガリ・レーン 19 (72)発明者 ジェームズ・ウィリアム・フィーニー アメリカ合衆国13760、ニューヨーク州エ ンディコット、エヌ・ワイ・ルート 38ビ ー 384 (72)発明者 ロバート・フランシス・ルシュ アメリカ合衆国13850、ニューヨーク州ヴ ェスタル、コートランド・ドライブ 3100 (72)発明者 マイケル・アンソニー・マニケット アメリカ合衆国13827、ニューヨーク州オ ウェゴ、ホリスター・ロード 223

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】個々の交換装置における入力ポートから出
    力ポートへの接続によって複数のノードを結合するため
    の複数の交換装置を有する交換機相互接続ネットワーク
    手段と、 並列システムのノードとして機能し、且つ前記ネットワ
    ークと情報を送受信することのできる、複数のプロセッ
    サおよび入出力機能要素と、 データを送信するノードが送信側ノードとして機能し、
    データを受信するノードが受信側ノードとして機能し、
    前記データ・ネットワークを介して前記複数のノード間
    で、データと前記データの接頭部であるヘッダとを有す
    るデータ・メッセージを伝送するデータ・メッセージ手
    段と、 メッセージ・ヘッダおよびデータから成り、メッセージ
    ・ヘッダがデータの接頭部である、前記データ・ネット
    ワークを介し前記複数のノード間で情報を伝送するため
    のデータ・メッセージ手段と、 1つまたは複数の前記交換装置において接続を確立し、
    前記ネットワークを介して前記送信側ノードから前記受
    信側ノードへの接続経路を形成するための、前記送信側
    ノードによって開始される接続要求手段と、 前記プロセッサ・アドレス・バス、データ・バス、およ
    び前記交換機ネットワークとのインタフェースが提供さ
    れたメッセージ・ヘッダ生成手段とを含むことを特徴と
    する、メッセージ・ヘッダ生成装置。
JP5224763A 1992-09-17 1993-09-09 ディジタル・コンピュータ Pending JPH06214965A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/946,509 US5922063A (en) 1992-09-17 1992-09-17 Automatic hardware message header generator
US946509 1992-09-17

Publications (1)

Publication Number Publication Date
JPH06214965A true JPH06214965A (ja) 1994-08-05

Family

ID=25484580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5224763A Pending JPH06214965A (ja) 1992-09-17 1993-09-09 ディジタル・コンピュータ

Country Status (2)

Country Link
US (1) US5922063A (ja)
JP (1) JPH06214965A (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6304912B1 (en) * 1997-07-24 2001-10-16 Fujitsu Limited Process and apparatus for speeding-up layer-2 and layer-3 routing, and for determining layer-2 reachability, through a plurality of subnetworks
EP1142227A2 (en) * 1998-12-23 2001-10-10 Nokia Wireless Routers, Inc. A unified routing scheme for ad-hoc internetworking
US6826619B1 (en) 2000-08-21 2004-11-30 Intel Corporation Method and apparatus for preventing starvation in a multi-node architecture
US6487643B1 (en) 2000-09-29 2002-11-26 Intel Corporation Method and apparatus for preventing starvation in a multi-node architecture
US6772298B2 (en) 2000-12-20 2004-08-03 Intel Corporation Method and apparatus for invalidating a cache line without data return in a multi-node architecture
US7234029B2 (en) * 2000-12-28 2007-06-19 Intel Corporation Method and apparatus for reducing memory latency in a cache coherent multi-node architecture
US6791412B2 (en) * 2000-12-28 2004-09-14 Intel Corporation Differential amplifier output stage
US6721918B2 (en) 2000-12-29 2004-04-13 Intel Corporation Method and apparatus for encoding a bus to minimize simultaneous switching outputs effect
US20020087775A1 (en) * 2000-12-29 2002-07-04 Looi Lily P. Apparatus and method for interrupt delivery
US20020087766A1 (en) * 2000-12-29 2002-07-04 Akhilesh Kumar Method and apparatus to implement a locked-bus transaction
US6971098B2 (en) 2001-06-27 2005-11-29 Intel Corporation Method and apparatus for managing transaction requests in a multi-node architecture
FR2849730A1 (fr) * 2003-01-02 2004-07-09 Thomson Licensing Sa Methode pour reserver de la bande passante dans un reseau de type ethernet
KR101073534B1 (ko) * 2003-05-08 2011-10-17 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 데이터 통신 방법 및 프로세싱 시스템
US8554943B1 (en) * 2006-03-31 2013-10-08 Emc Corporation Method and system for reducing packet latency in networks with both low latency and high bandwidths requirements
US20080059687A1 (en) * 2006-08-31 2008-03-06 Peter Mayer System and method of connecting a processing unit with a memory unit

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60232743A (ja) * 1984-05-01 1985-11-19 Agency Of Ind Science & Technol スイツチング・ネツトワ−ク
JPH02143638A (ja) * 1988-11-25 1990-06-01 Nippon Telegr & Teleph Corp <Ntt> 相互結合ネットワーク

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4707827A (en) * 1986-03-21 1987-11-17 Zenith Electronics Corporation Bridging techniques for local area networks
US4897799A (en) * 1987-09-15 1990-01-30 Bell Communications Research, Inc. Format independent visual communications
GB8724208D0 (en) * 1987-10-15 1987-11-18 Newman P Self-routing switching element
US4977582A (en) * 1988-03-31 1990-12-11 At&T Bell Laboratories Synchronization of non-continuous digital bit streams
CA1341310C (en) * 1988-07-15 2001-10-23 Robert Filepp Interactive computer network and method of operation
US5198808A (en) * 1988-09-20 1993-03-30 Nec Corporation Matrix switch apparatus with a diagnosis circuit having stand-by ports and reduced size matrix switching elements
US5220562A (en) * 1989-05-12 1993-06-15 Hitachi, Ltd. Bridge apparatus and a communication system between networks using the bridge apparatus
US5107489A (en) * 1989-10-30 1992-04-21 Brown Paul J Switch and its protocol for making dynamic connections
US5293377A (en) * 1990-10-05 1994-03-08 International Business Machines, Corporation Network control information without reserved bandwidth
US5175733A (en) * 1990-12-27 1992-12-29 Intel Corporation Adaptive message routing for multi-dimensional networks
US5404461A (en) * 1991-03-29 1995-04-04 International Business Machines Corp. Broadcast/switching apparatus for executing broadcast/multi-cast transfers over unbuffered asynchronous switching networks
US5250943A (en) * 1991-03-29 1993-10-05 International Business Machines Corporation GVT-NET--A Global Virtual Time Calculation Apparatus for Multi-Stage Networks
US5264842A (en) * 1991-06-28 1993-11-23 International Business Machines Corporation Generalized usage of switch connections with wait chain
US5345229A (en) * 1992-09-17 1994-09-06 International Business Machines Corporation Adaptive switching apparatus for multi-stage networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60232743A (ja) * 1984-05-01 1985-11-19 Agency Of Ind Science & Technol スイツチング・ネツトワ−ク
JPH02143638A (ja) * 1988-11-25 1990-06-01 Nippon Telegr & Teleph Corp <Ntt> 相互結合ネットワーク

Also Published As

Publication number Publication date
US5922063A (en) 1999-07-13

Similar Documents

Publication Publication Date Title
US5617547A (en) Switch network extension of bus architecture
US6215412B1 (en) All-node switch-an unclocked, unbuffered, asynchronous switching apparatus
JP2708354B2 (ja) マルチメディア・アナログ/デジタル/光交換装置
US5404461A (en) Broadcast/switching apparatus for executing broadcast/multi-cast transfers over unbuffered asynchronous switching networks
US5408646A (en) Multipath torus switching apparatus
US5495474A (en) Switch-based microchannel planar apparatus
US5774698A (en) Multi-media serial line switching adapter for parallel networks and heterogeneous and homologous computer system
US5457683A (en) Link and discovery protocols for a ring interconnect architecture
US5612953A (en) Multi-media serial line switching adapter for parallel networks and heterogeneous and homologous computer systems
US5404537A (en) Priority interrupt switching apparatus for real time systems
JP2571655B2 (ja) プロトコル変換機構、交換ネットワーク及びコンピュータ・システム
JP2604967B2 (ja) 適応交換装置
JPH06214965A (ja) ディジタル・コンピュータ
JPH02228762A (ja) 並列処理コンピュータシステム
US5594866A (en) Message routing in a multi-processor computer system with alternate edge strobe regeneration
JP2571341B2 (ja) 多段スイッチ・ネットワーク
JP2502465B2 (ja) マスタ―アダプタ装置
JP2554456B2 (ja) ネットワーク・システムおよびアダプタ
JPH07117927B2 (ja) スイッチ方式パーソナルコンピュータ相互接続装置
JP2750314B2 (ja) 非バッファ式交換装置
JPH11212927A (ja) 競合調停方法
JPH05207151A (ja) 非緩衝非同期交換網による同報/多報転送を実行するための同報/交換装置