JPH09138774A - 共用リソースのためのルート裁定方法 - Google Patents

共用リソースのためのルート裁定方法

Info

Publication number
JPH09138774A
JPH09138774A JP8145734A JP14573496A JPH09138774A JP H09138774 A JPH09138774 A JP H09138774A JP 8145734 A JP8145734 A JP 8145734A JP 14573496 A JP14573496 A JP 14573496A JP H09138774 A JPH09138774 A JP H09138774A
Authority
JP
Japan
Prior art keywords
port
output
inputs
input
arbitration
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
JP8145734A
Other languages
English (en)
Inventor
W Horst Robert
ダブリュー ホースト ロバート
William Joel Watson
ジョエル ワトソン ウィリアム
David Paul Sonnier
ポール ソーニア ディヴィッド
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.)
Tandem Computers Inc
Original Assignee
Tandem Computers Inc
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 Tandem Computers Inc filed Critical Tandem Computers Inc
Publication of JPH09138774A publication Critical patent/JPH09138774A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • 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
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)
  • Bus Control (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】 同じ出力へのデータ通信アクセスについて競
合する2つ以上の入力の裁定にバイアスを与える方法及
び装置を提供する。 【解決手段】 多数の出力の1つから通信するためにデ
ータ受け取られる多数の入力を有したデータ通信装置
は、出力へデータを通信するための入力の1つを選択す
るように2レベルの裁定を行う装置を備えている。第1
の(低い)レベルの裁定は、ラウンドロビン順序に基づ
いて選択を行い、第2の(高い)裁定レベルは、ある時
間周期にわたり出力へのアクセスが不当に待機された入
力からの指示に基づいて入力を選択する。各入力には、
モジュロNカウンタ及びデジタルカウンタが与えられ
る。入力が出力へのアクセスに競合し、それに敗れて、
出力が別の入力を選択するたびに、モジュロNカウンタ
がその入力の指定値だけ増加される。アクセスせずにN
を越えると、デジタルカウンタが増加される。カウンタ
の内容は、高レベル裁定を強制するように動作する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に、多数の入
力と出力を有していて通信ネットワーク内でメッセージ
のトラフィックをルート選択する装置に係る。より詳細
には、本発明は、装置の同じ出力へのデータ通信アクセ
スに対して競合する装置の2つ以上の入力間の裁定にバ
イアスを与える方法及びこのような方法を実施する装置
に係る。
【0002】
【従来の技術】マルチ処理環境が増大するにつれて、シ
ステムの個々のシステム要素(即ち、プロセッサや周辺
装置)間でデータ通信を行う機能としては、通信経路又
は他の幾つかの共用リソース(例えば、マルチユーザバ
スシステム)への不公平なアクセスをあるシステム要素
に偶発的に与えないようにすると同時に、他のシステム
要素へのこのようなアクセスを制限するように入念に考
えねばならない。今日の多数のデータ通信ネットワーク
構成は、1つの通信リンクから多数の他の通信リンクの
1つへメッセージトラフィックを向け又はルート指定す
るために種々の装置(典型的に「ルータ」)を使用す
る。しかしながら、メッセージトラフィックは、同じ出
力に向けて実質的に同時に装置の2つ以上の入力に受け
取ることができ、2つのうちのどれを他の前に処理でき
るようにするか、即ちどれを最初に行かせるかの闘争が
生じる。出力へのアクセスは、2つの競合する入力間に
ある形態の裁定を必要とする。小型のシステム(即ち、
互いに通信するために少数のシステム要素しか必要とし
ないシステム)は、入力に固定の優先順位を指定したり
又は「ラウンドロビン」処理を使用したりといった古典
的な裁定技術を用いることができる。前者の場合には、
各ポート入力に、ハイアラーキ裁定機構を形成するため
の所定優先順位が与えられる。高い優先順位の入力は、
その同じ出力へアクセスを求める入力であって低い優先
順位が予め指定された入力以上に出力へのアクセスが与
えられる。ラウンドロビン技術は、入力の間に所定の順
序に基づいて優先順位を指定することを含む。メッセー
ジトラフィックを受け取ると、優先順位が変化し、特定
の出力へのアクセスが許可された最後の入力に最低の優
先順位が与えられ、その次の順の入力が最高の優先順位
を有し、残りの入力は、所定の順序に基づいて同様に変
化する優先順位を有する。
【0003】例えば、マルチユーザVMEバスシステム
のような他の共用リソース環境に同様の技術を用いて、
バスへのアクセスを、接続されたコントローラ間に割り
当てることもできる。
【0004】
【発明が解決しようとする課題】コンピュータシステム
が複雑になり、要素(プロセッサ及び周辺ユニット)の
数が増加するにつれて、ルート指定装置の入力が多数の
要素からのメッセージトラフィックをルート指定するよ
う要求されることが例外ではなくなった。更に、ルート
指定装置は、例えば、ツリー状のネットワーク構成とす
るように時々カスケード接続にされ、ルート指定装置の
入力を経てメッセージトラフィックをルート指定する必
要のあるシステム要素の数が増加する。予め指定された
優先順位、ラウンドロビン処理、又は他の同様の技術を
使用する場合には、ルート指定装置のある入力のサービ
スがシステム要素の幾つかに不公平に割り当てられ、そ
のルート指定装置の別の入力を使用する他の要素を犠牲
にすることがある。例えば、あるルート指定装置は、1
つのシステム要素のみからメッセージトラフィックを1
つの入力に受け取るが、同じルート指定装置の別の入力
は、多数の要素にサービスすることが要求される。上記
技術のいずれかを使用すると、ルート装置の注意の多く
が1つの要素に向けられ、第2の入力を用いる多数の要
素の各々にはあまり注意が向けられない。従って、公知
の裁定技術は、ルート指定装置のサービスの多くを、そ
のルート指定装置を使用する少数のシステム要素を有す
る入力に不公平に割り当てることになる。
【0005】
【課題を解決するための手段】本発明は、例えば、共用
バス構造体のような任意の形式の共用リソース、又はこ
こに述べるネットワークルート指定装置の出力へのアク
セスを求める多数のユーザ間を裁定する方法を提供す
る。本発明は、多数のメッセージ受信ポート入力と、少
なくとも1つの出力ポートとを有し、上記ポート入力の
1つにメッセージトラフィックが受け取られて、その出
力ポートへルート指定されそしてそこから送信されるよ
うなネットワークルート指定装置に使用される好ましい
実施形態について説明する。本発明は、各ポート入力を
通るメッセージトラフィックを監視して、待機中のメッ
セージトラフィックを有するポート入力の優先順位を上
昇するという考え方に基づいている。本発明の好ましい
実施形態によれば、2レベルの裁定が実施される。最初
に、低レベル優先順位機構を用いて、ポート入力へのア
クセスを求める2つのポート入力間で裁定が行われ、多
数の裁定周期を通じて待機していたメッセージトラフィ
ックを有するポート入力を受け入れるために、それらの
優先順位が上昇され、高い優先順位機構を瞬間的に使用
する裁定へと持っていかれる。低レベル機構は簡単なラ
ウンドロビン優先順位を使用する。ポート出力へのアク
セスをもつ最後のポート入力は、裁定の優先順位を有
し、一方、次の順番のポート入力が最高の優先順位を有
する。他のポート入力は、確立されたラウンドロビン順
序に基づいて下降する優先順位を有する。ポート入力が
ポート出力へのアクセスを得るたびに優先順位が変化す
る。
【0006】第1レベルにおいて裁定を行うときには、
各々の選択されたポート入力は、その受け取ったメッセ
ージトラフィックを送信のために出力へルート指定し、
優先順位がラウンドロビン機構に基づいて進んで、その
ポート入力の優先順位を最低にし、そしてラウンドロビ
ンシーケンスで次のポートを最高の優先順位をもつもの
として指名する。高レベルの裁定機構は、ポート出力を
通るメッセージトラフィックを監視しそしてポート出力
へルート指定されるべく待機しているメッセージトラフ
ィックを有するポート入力の優先順位を高める。高めら
れる量は、各ポート入力に対して予め指定されたバイア
ス値に一部依存する。予め指定されたバイアス値は、入
力分数(IF)の形態であり、これは、ポート出力の帯
域巾の一部分のポート入力の割り当てとして考えられ
る。ポート出力により取り扱われるメッセージトラフィ
ックの流れが監視され、待機中のメッセージトラフィッ
クを有するポート入力の優先順位は、ポート入力が待機
しているポート出力へのアクセス及び裁定に勝つことが
できないたびに高めることができる。そのポート入力に
指定されたIFにより時間間隔が確立される。ポート入
力が出力ポートの裁定に参加する各裁定周期は、予め指
定された値でモジュロNカウンタを増加する。このカウ
ンタがオーバーフローすると、2ビットカウンタが増加
される。この2ビットカウンタの非ゼロカウントは、関
連ポート入力がポートへ優先順位要求を発行し、その優
先順位が高められ、そして順番が変えられる(out of tu
rn) という信号である。2つ以上のポート入力がその関
連2ビットカウンタに非ゼロカウントを有する場合に
は、高レベル機構が、大きい方の非ゼロカウントをもつ
ものへアクセスを許可する。2つ以上のポート入力の2
ビットカウンタが非ゼロであって且つ等しい場合には、
固定の優先順位機構で裁定が行われる。2ビットカウン
タに非ゼロカウントを有するポート入力がアクセスを許
可されるたびに、2ビットカウンタが減少される。
【0007】従って、優先順位カウンタに0以外のカウ
ントを有するポート入力を見る裁定周期が最初に裁定さ
れ、同点の場合は、固定優先順位によって行われる。各
ポート入力のIF値を形成する指定のバイアス値は、モ
ジュロNカウンタ構成を増大するのに使用される。(こ
こで、Nは256であり、従って、カウンタは255で
ロールオーバーする。)カウンタがその最大カウント
(255)を越えて増加されそしてロールオーバーする
と、2ビットカウンタが1だけ増加される。本発明によ
り多数の効果が達成される。第1に、ルート指定装置の
ポート出力への公平なアクセスが、いかなるポート入力
にも与えられ、即ちシステム要素に直結されたポート入
力及びシステム要素に間接的に接続された(即ち他のポ
ートを経て)ポート入力の両方に与えられる。第2に、
本発明は、ポート出力の最大帯域巾の最小保証部分をい
かなるポート入力にも割り当てる。他のメッセージトラ
フィックを待機してデータが失われないよう確保するた
めに、例えば、リアルタイムデータ(例えば、ビデオ)
を取り扱うポート入力にポート出力へのアクセスを傾斜
させるように、高い指定バイアス値を与えることができ
る。第3に、全ネットワークについて指定のバイアス値
を与えることにより、いかなる2つのシステム要素間に
も保証されたメッセージ送信待ち時間を確立することが
できる。これは、ネットワークの混雑によるのではない
エラー状態のもとでのみ越える特定の値に低い時間切れ
値をセットできるようにする。
【0008】本発明のこれら及び他の効果は、添付図面
を参照した本発明の以下の詳細な説明より当業者に容易
に明らかとなろう。
【0009】
【発明の実施の形態】添付図面の図1には、簡単なマル
チプロセスシステムが参照番号10で一般的に示されて
いる。図示されたように、このマルチプロセスシステム
10は、少なくとも一対の中央処理ユニット(CPU)
12a、12bと、ルート指定ユニット即ちルータ16
及び両方向性通信リンク18によりシステムエリアネッ
トワーク構成に相互接続された複数の入力/出力ユニッ
ト14(14a、14b、・・・14i)とを備えてい
る。システム10の種々の要素間のメッセージトラフィ
ックは、直列送信される9ビット記号と、これら記号の
同期転送のために必要な送信クロックとを含むデータパ
ケットの形態であるのが好ましい。これらの記号は、ネ
ットワークプロトコルの流れ制御に使用されるデータ又
はコマンドを形成するようにエンコードされる。ネット
ワーク流れ制御は、本発明の理解又は実施に関与せず、
従って、ルート指定ユニット16の幾つかの要素の説明
に必要な以外は、ここでは詳細に述べない。しかしなが
ら、各メッセージは、メッセージのソース及び行先を識
別するデータを含む。行先は、メッセージが再送信され
てくるところのポート出力を選択するためにルータ16
により使用される。
【0010】図1の説明を続けると、各々のルータ16
は、6個の両方向ポート(0、1、・・・5)を有し、
その各々は、メッセージトラフィックが受け取られるポ
ート入力と、メッセージトラフィックを送り出すことの
できるポート出力とを有している。ルータ16aのポー
ト2、3、4(及び0、1)の各々は、1つのシステム
要素にのみサービスする(即ち、その要素からのトラフ
ィックをルート指定する)。一方、ポート5は、このポ
ートを経てルート指定されるメッセージトラフィックを
送信できる8つのシステム要素、即ち両CPU12(ル
ータ16b及び16cを経て)と、6つのI/Oユニッ
ト14(ルータ16b、16cを経て)とを有する。こ
れら8個全てのソースが、ルータ16aのポート5のポ
ート入力を経てルート指定されるべきメッセージトラフ
ィックを送信し、ルータ16aのポート出力、例えば、
ポート0のポート出力(0)を経て送信しようとするこ
とがある。これに対し、ルータ16aのポート1−4
は、ポート0のポート出力へのアクセスに競合する必要
のある単一の要素しか有していない。ポート出力への等
しいアクセスが各ポート入力に許可される裁定方法で
は、ポート2、3及び4に各々接続されたI/Oユニッ
ト14a、14b及び14c各々の方が、ルータ16a
のポート5にメッセージトラフィックを送信するI/O
ユニット14g、14h及び14iよりもポート0への
アクセスがより頻繁に与えられる。本発明は、ポート2
−4よりも頻繁にポート0(又は他のポート)へのアク
セスを与えるようにルータ16aのポート5をバイアス
することによりこの問題を軽減するように作用する。
【0011】図2はルータ16aの簡単なブロック図で
ある。ルータ16b及び16cは、特に指示のない限
り、ルータ16aと実質的に同じに構成され、従って、
ルータ16aについての以下の説明がルータ16b、1
6cにも等しく適用されることが明らかである。上記の
ように、ポート0、1、・・・5の各々は、メッセージ
トラフィックを送信及び/又は受信することができる。
それ故、図2は、ルータ16aが、各ポート0、1、・
・・5に対し、メッセージトラフィックを受信するため
のポート入力(I)と、メッセージトラフィックを送出
するためのポート出力(O)とを有するものとして示し
ている。各ポート入力は、メッセージトラフィックの受
信を処理するための関連入力ロジック30(300 、3
1 、・・・305 )と、メッセージトラフィックを送
出する出力ロジック32(320 、321 、・・・32
5 )とを有する。到来するメッセージトラフィックは、
受信ポートの入力ロジック30から、クロスバースイッ
チ34によりポート出力の1つへルート指定され、クロ
スバースイッチは、制御・状態ロジック36(及び以下
に述べる個々の出力ロジック要素32)によって一部制
御される。従って、例えば、ポート0のポート入力
(I)により受け取られるメッセージトラフィックは、
それに関連する入力ロジック300 へ送られ、そしてク
ロスバースイッチ34により指定の出力ロジック(例え
ば、出力ロジック303 )へルート指定される。ポート
3のポート出力O(3)は、これに接続されたデータを
送信するための出力ロジック323 を有する。
【0012】制御・状態ロジック要素は、ルータのほと
んどの動作に対して同期制御を与える種々の状態マシン
を含んでいる。更に、ルータ16aは、ルータの要素を
同期動作するのに必要な種々のクロック信号を供給する
クロックロジック40と、1つの例外を除いてここでは
本発明に関連しない幾つかの自己チェック動作を実行す
るための自己チェック回路42とを備えている。ルータ
16aには、これをメンテナンス処理システム(図示せ
ず)へ通信接続するためにオンラインアクセスポート
(OLAP)46が設けられる。このOLAP46は、
以下に述べるように、ルータが、例えば、各ポート入力
の指定のバイアス値のような種々の動作情報を受信でき
るようにするインターフェイスをメンテナンス処理シス
テムに与える。OLAP46は、IEEE規格114
9.1に合致するよう構成されたシリアルバス48に接
続される。従って、始動時又は動作進行中に情報がルー
タ16aに与えられる。当業者に明らかなように、IE
EE規格1149.1は、IEEE規格1149.1−
1990年版、1990年5月21日、SH1314
4、インスティテュート・オブ・エレクトリカル・アン
ド・エレクトロニック・エンジニア、345イースト、
47番ストリート、ニューヨーク、ニューヨーク州、1
0017をベースとするものである。更に詳細な情報
は、この規格を参照されたい。
【0013】図3は、ポート入力I(0)の入力ロジッ
ク300 を示すブロック図である。他のポート入力I
(1)、・・・I(5)の入力ロジック301 −305
も実質的に同じ構造であり、特に指示のない限り、入力
ロジック300 の説明を、入力ロジック301 −305
の説明と考えられたい。図3に示すように、入力ロジッ
ク300 は入力レジスタ50を備え、これは、到来する
メッセージトラフィックを受信してバッファし、入力の
先入れ先出しバッファ待ち行列(FIFO)52へ転送
するように動作する。FIFO52は、送信エンティテ
ィにおいて発信されてレジスタ50及びFIFO52へ
のデータをクロックするのに使用されるクロック信号
(図示せず)と、FIFO52から記号を引っ張るのに
使用される(ローカル)クロックとの間の同期を与える
ように動作する。入力FIFO52からの情報は、9−
8(ビット)コンバータ54へ送られ、これは、各々の
9ビット記号をそのエンコード形態からバイト形態へ変
換する。更に、入力FIFO52からの出力は、コマン
ドデコード要素56及びプロトコル・パケットチェック
ユニット58へ接続される。コマンドデコードユニット
56は、各記号を検査して、それが流れ制御コマンドで
あるかどうか、ひいては、ルータが作用を与えねばなら
ないコマンド、又はルータにより作用を受ける必要のあ
るデータ(適切なポート出力へルート指定するのではな
い)であるかどうか判断する。プロトコル・パケットチ
ェックユニット58は、パケットが必要な転送プロトコ
ルを満足するよう確保すると共に、パケットの結果のチ
ェック和をチェックして、パケットがルータ16aへ適
切に送信されるよう確保するように動作する。もしそう
でなければ、プロトコル・パケットチェックユニット5
8は、パケットの終わりに、そのパケットをおそらく誤
りであると識別する記号を付加する。
【0014】9−8ビットコンバータ54を通過した到
来メッセージトラフィックは、FIFO制御器64によ
って制御される弾力性FIFO62に受け取られて一時
的に記憶される。FIFO62は、到来メッセージパケ
ットの行先IDを検査できるようにし且つポート出力が
クロスバースイッチ34を操作してメッセージトラフィ
ックをルート指定する時間を許すに充分な一時的記憶容
量を備えている。又、FIFO62は、受信ポート入力
が待機しなければならない場合には到来メッセージトラ
フィックの送信を停止するに充分な時間を許すに足る記
憶容量を備えていなければならない。しかしながら、適
切なポート出力の選択は、到来メッセージパケットに含
まれた行先アドレスによって左右される。この決定は、
到来メッセージパケットに含まれた行先アドレスを受け
取るポート出力選択ロジック66により行われる。この
行先アドレスから、ポート出力選択ロジック66は、指
定のポート出力を識別し、6本の要求ラインR(O)m
の1つにその要求されたポート出力を識別する要求信号
をアサートする。但し、n=0、1、・・・5である。
説明を続ける前に、表示法について述べる。上記のよう
に、出力ポート選択ロジック66は、6本の要求ライン
R(O)0 、R(O)1 、・・・R(O)5 の1つにお
いて各々搬送される6個の出力信号を発生する。要求信
号ラインの形態は、R(n)m であり、但し、n(n=
0、1、・・・5)は、信号ラインのドライブソースを
識別し、そしてm(m=1、2、・・・5)は、搬送さ
れる信号の行先を識別する。従って、ポート出力選択ロ
ジック66は、6本の要求ラインR(O)0 、R(O)
1 、・・・R(O)5 を駆動し、その各々は、それが搬
送する信号を出力ロジック320 、321 、・・・32
5 へと各々接続する。同様に、各ポート出力の出力ロジ
ック32は、受信した要求信号に応答して、6本の信号
ラインGRANT(n)m の1つにGRANT信号をア
サートすることによりアクセスを許可する。この場合
も、nは信号ラインを駆動する出力ロジックを識別し、
そしてmはその駆動信号を受信する入力ロジックを識別
する。特に指示のない限り、この説明全体を通じてこの
表示法を使用する。
【0015】図3の説明を続けると、ポート入力I
(0)により受け取られ、例えば、ポート出力O(3)
を識別する行先アドレスをもつ到来メッセージは、要求
信号ラインR(O)3 に要求をアサートして、ポート出
力O(3)(より正確には、関連出力ロジック323
に、該ポート出力に向けられたメッセージトラフィック
がポート入力I(0)に待機していることを知らせる。
この要求信号を受け取るポート出力は、次いで、そのア
クセスを許可することを表す許可信号を許可信号ライン
GRANT(3)0 に発生することで応答する。要求さ
れた出力ロジック32がアクセスを許可すると(以下に
詳細に述べる)、クロスバースイッチ34を通る指定の
ルートが形成され、メッセージパケットは、弾力性FI
FO62から要求された出力ロジックへルート指定され
る。又、入力ロジックは、バイアスレジスタ72の内容
を受け取るバイアスロジック70も備えている。バイア
スレジスタ72は、上記のように、その関連ポート入力
I(0)に対する指定のバイアス値であって、ポート出
力の帯域巾についてのそのポート入力の部分を表す指定
のバイアス値を受け取る。バイアスレジスタ72の内容
から、バイアスロジック70は、ポート入力I(0)
(待機中のメッセージトラフィックをもつ)が参加して
負け、その優先順位を実際に加速する優先順位要求を発
生するところの裁定を監視する。この優先順位要求は、
6つ全部のポート出力の入力ロジック32に接続された
2ビットバスPR(0)により所望のポート出力の出力
ロジック32へ通信される。バイアスロジックは、6つ
のポート出力の出力ロジック32から、GRANT信号
ラインGRANT(n)mにより搬送される許可信号を
受け取る。
【0016】2つ以上のポート入力I(0)・・・I
(5)が、同じポート出力(例えば、O(3))を識別
する行先アドレスをもつメッセージトラフィックをほぼ
同時に受信し始める場合には、どのポート入力を最初に
処理しそしてどれを待機させるかについてある決定を行
わねばならず、即ち所望のポート出力へのアクセスを裁
定して、どのポート入力を最初に行かせそしてどれを待
機させるかを決定しなければならない。本発明によれ
ば、裁定は、2つのレベルで行われる。最初に、低レベ
ル裁定が使用され、競合するポート入力が単純なラウン
ドロビンプロセスによって選択される(が、例えば、固
定の優先順位を指定するような他の裁定構成も使用でき
ることが明らかであろう)。多数の裁定及び要求を通じ
て待機したメッセージトラフィックを有するポート入力
が順番を変える優先順位要求を発行することにより高レ
ベル優先順位機構に入る。ラウンドロビン裁定プロセス
は、各ポート出力O(0)、O(1)、・・・O(5)
により、ポート出力へルート指定されるべき待機中のメ
ッセージトラフィックを有するポート入力から受け取っ
た要求信号R(n)m に応答して実施される。ポート入
力信号がその関連優先順位要求をアサートすることによ
り順番を変えられるべきであるときは、高レベル裁定機
構が強制動作される。明らかなように、ポート入力が、
ポート出力へルート指定されるべく待機しているメッセ
ージトラフィックを有するときには、そのポート出力に
対して参加する裁定を監視する。待機が続くと、各ポー
ト入力に与えられて入力ロジック30のバイアスレジス
タ72(図3)に維持された上記の入力分数(IF)か
らバイアスロジック70により優先順位要求が発生され
る(以下に述べるように)。
【0017】各ポート入力(I(0)、I(1)・・・
I(5))からの2ビット優先順位要求は、優先順位要
求バス(PR0 、PR1 ・・・PR5 )によってポート
出力(O(0)、O(1)・・・O(5))へ接続され
る。多数のポート入力が1つのポート出力に対して待機
中のメッセージトラフィックを有し、それ故、そのポー
ト出力へのアクセスを張り合っており、そしてそれらの
各々の優先順位要求がゼロである場合には、裁定が行わ
れ、競合するポート入力の1つがラウンドロビンプロセ
スを用いて選択される。一方、張り合っているポート入
力の1つが非ゼロの優先順位要求を発行する場合には、
そのポート入力が高い優先順位を有するものとして処理
され、次の裁定周期中にアクセスの順番変更が許可され
る。2つ以上のポート入力が順番の変更を要求している
場合には、固定の優先順位ベースで非ゼロの基準要求を
有するポート入力間でポート出力により裁定が行われ
る。優先順位要求をいかに発生して使用するかを説明す
る前に、先ず初めに、ポート出力(O(0)、O(1)
・・・O(5))のアーキテクチャーを理解するのが有
用であろう。図4は、ポート出力O(3)の出力ロジッ
ク323 のアーキテクチャーを簡単な形態で示すもので
ある。他のポート出力O(0)−O(2)及びO(4)
−O(5)に対する出力ロジック32は、実質的に同じ
構造である。図4に示したように、クロスバースイッチ
34の出力は、出力ロジック323 のマルチプレクサ
(MUX)80によって受け取られ、これは、クロスバ
ースイッチ34からのデータ及びコマンド信号発生器8
2の出力を選択するように動作する。使用されるネット
ワークプロトコルに基づき、制御・状態ロジック36
(図2)の指令及び制御のもとで、コマンド記号を周期
的に挿入し、送信することが必要となる。MUX80に
より行われる選択は、出力レジスタ84へ接続され、そ
してそこからポート出力O(3)を経、そしてポート3
が接続されたネットワークリンク18(図1)を経てI
/Oユニット14へ送られる。
【0018】裁定は、各ポート出力において、アービタ
86により行われる。アービタ86は、各ポート入力I
(0)、I(1)・・・I(5)から、対応するポート
出力選択ロジック66(図3)からの要求信号ラインR
(n)3 を受け取る。3つ以上の要求信号が同時にアサ
ートされた場合には、アービタロジック86は、要求を
発しているポート入力の優先順位要求信号をチェックす
る。全てが非ゼロである場合に、アービタロジック86
は、ラウンドロビン機構の優先順位に基づいて要求を裁
定する。しかしながら、競合するポート入力の1つが順
番の変更を要求していることがその関連優先順位要求バ
ス(例えば、ポート2の入力ロジック302 に対するP
R(2))上の非ゼロ値によって指示される場合には、
アービタロジック86がそのポート入力へのアクセスを
許可する。2つ以上のポート入力がその優先順位要求を
アサートする場合には、アービタロジック86が高レベ
ル優先順位機構に基づいてアクセスを裁定する。2ビッ
トの優先順位要求が等しい場合には、ルート選択が固定
優先順位に基づいて行われ、最も高い予め指定された優
先順位をもつポート入力にアクセスが許可される。1つ
の2ビット優先順位バスの値が他のものよりも数値的に
大きい場合には、その大きな優先順位要求をアサートす
るポート入力が次に選択される。
【0019】裁定が行われると、アービタロジック86
は、6本の信号ライン(各々対応するポート入力の入力
ロジック30に接続される)の1つを経て裁定に勝った
ポート入力I(0)・・・I(5)へGRANT信号を
発生する。更に、アービタ86は、クロスバースイッチ
34へ選択信号(SEL)を発生し、選択された入力ロ
ジック30が出力ロジックへルート指定するようにさせ
る。図5は、ポート入力I(0)に対する入力ロジック
320 のバイアスロジック70を詳細に示しており、8
ビット加算器140と8ビット累積レジスタ142との
組合せが含まれて、実際に、自走モジュロー255カウ
ンタを形成する。加算器140は、対応するポート入力
(ここではポート入力I(0))に指定されてバイアス
レジスタ72により維持されたバイアス値を受け取り、
そのバイアス値を累積レジスタ142の内容に加算す
る。加算器140により形成された和は累積レジスタ1
42へ返送され、その内容をIF値だけ増加する。又、
累積レジスタの内容は、入力ロジック300 が参加する
各裁定周期ごとにIF値だけ増加される。累積レジスタ
142の内容が、加算器140の巾を越える(即ち、2
55より大きい)点まで増加されると、加算器140の
桁上げ(Co)出力にオーバーフロー信号が発生する。
加算器140からのオーバーフロー信号は、オーバーフ
ロー検出回路146へ送られ、出力(OV)に応答オー
バーフロー信号をアサートし、これは、次いで、信号ラ
イン148によって2ビットカウンタ150の増加(I
NC)入力へ接続される。従って、カウンタ140の検
出されたオーバーフローは、2ビットカウンタ150を
増加するように働く。2ビットカウンタ150の内容
は、2ビット優先順位要求値を形成し、これは、2ビッ
ト優先順位要求バスPR(0)によって入力ロジック3
0 から6つのポート出力O(0)、O(1)・・・O
(5)の出力ロジック32へ搬送される。
【0020】説明を続ける前に、ポート入力I(0)に
割当てられる入力分数(IF)は、分数の分子を構成す
るバイアスレジスタ72に含まれたバイアス値と、実際
には分母である累積レジスタ142のサイズとで形成さ
れることに注意するのが有用である。従って、ポート入
力I(0)の場合に、レジスタ72に保持されたバイア
ス値が64(図6について以下に説明する例で使用する
値)である場合、ポート入力I(0)の入力分数は、6
4/256、即ち1/4となる。2ビットカウンタ15
0は、6入力のオアゲート152の出力を受け取る減少
(DEC)入力を含む。GRANT信号は、ポート出力
の各々からオアゲート152へ送られ、入力としてそこ
に付与される。関連するポート入力(即ちポート入力I
(0))が、2ビットカウンタ150に非ゼロ値を含む
状態でポート出力へのアクセスの裁定に参加しそして裁
定に勝った場合には、それによりポート出力から生じる
GRANT信号が2ビットカウンタ150を減少させ
る。2ビットカウンタ150は、アンダーフローしない
ように、即ちカウンタの内容がゼロ値であるときに、D
EC入力がオアゲート152の出力を無視しないように
設計される。
【0021】2ビット優先順位要求バスPR(0)は、
他のポート入力I(1)、・・・I(5)からのバスと
共に、6つの優先順位バスPR(n)(n=0、1、・
・・5)を形成し、これらは、ポート入力からの優先順
位要求を各ポート出力のアービタロジックユニット86
(図4)へ接続する。又、ここに説明するように、アー
ビタロジックユニットは、36本の要求ラインR(n)
m も受け取り、その6つの各々は、6つのポート入力の
各々からのものであって、どのポート入力がアクセスに
対して張り合っているかをポート出力に識別する要求信
号を搬送する。アービタロジック86は、一般的な従来
設計の組合せロジック回路(又はプログラム可能なロジ
ックアレー(PLA)エレメント)であり、競合するポ
ートの優先順位バスPR(0)、・・・PR(5)によ
って搬送される優先順位要求の状態から、どれがアクセ
スを受けるべきかを決定し、そしてそのアクセスを、上
記のようにクロスバースイッチ34へ付与されるSEL
信号によりルート指定するように構成される。いずれの
2ビットカウンタにもカウントがない場合には、アービ
タロジックユニットは、ラウンドロビンプロセスに基づ
いて動作し、そのプロセスによりどれが最後にアクセス
を許可されそしてどれが次の順番であるかに基づいて競
合ポートの1つを選択する。一方、1つ以上の競合ポー
トが優先順位要求信号をアサートした場合には、最も高
い優先順位要求を有するもの(即ち2ビットカウンタ1
50が最も高いカウントを有するポート入力)にアクセ
スが許可される。2ビットカウンタ150が同じカウン
トを含んでいる2つ以上のポート入力の優先順位要求間
が同点である場合には、アービタは、固定優先順位機構
を課し、選択されたポート入力にGRANT信号を発生
する。
【0022】低レベルラウンドロビン裁定は、通常のメ
ッセージトラフィックに対して使用され、高レベル裁定
は、ポートが裁定に参加して不成功であった回数と、指
定されたIF値とに基づいて強制的に作用される。高優
先順位機構は、ポートの2ビットカウンタ150が非ゼ
ロカウントを含むときに入る。図6を参照して本発明の
動作を説明する。図6は、裁定周期TからT+8及びそ
れ以上に対しポート0、1及び2(同じポート出力への
アクセスを求める)の裁定を示す。最も左のカラムは、
各裁定周期を識別し、他のカラムは、各裁定周期中のレ
ジスタ142の内容及び2ビットカウンタの内容(かっ
こで示す)を表している。裁定周期中に裁定に勝つポー
トは、ダークの累積値で示されている。ポート0、1及
び2の各々に割り当てられたIF値は、各カラムの上部
にかっこで示されている。(ここで、出力ポートの帯域
巾は、加算器140及び累積レジスタ142により形成
された「カウンタ」のオーバーフロー値で示される。当
業者に明らかなように、ポート出力の帯域巾の分割をい
かに微細に又は粗くするかと、メッセージトラフィック
に対する最大待機とに基づいて、他の値も使用すること
ができる。) 図6は、ポート0、1及び2に対する到来メッセージト
ラフィックのみが特定のポート出力(例えば、ポート出
力O(4))に対して張り合っていると仮定する。明瞭
化のため、他のポートは参加しないと仮定し、従って、
図示されていない。更に、メッセージトラフィックは各
ポートにスタックされ、即ちあるポートに対する到来メ
ッセージトラフィックが裁定されて、再送信のためにポ
ート出力O(4)にルート指定されたときに、別の到来
メッセージが存在するものと仮定する。
【0023】図6を参照すれば、最初に、第1の裁定周
期Tの前の時間(T−t)に、ポート0、1及び2のレ
ジスタ142の内容は空である。従って、3つ全ての入
力ポート0、1及び2がポート4に向けられたメッセー
ジトラフィックを有すると仮定すれば、ラウンドロビン
機構において第1のものである(いずれのカウンタ15
0にもカウントはない)ポート0が裁定周期Tの裁定に
勝つ。この裁定周期の終わりに、ポート0、1及び2の
各レジスタ142は、それらの指定バイアス値だけ増加
され、従って、次の裁定周期T+1については、バイア
ス値が図示されたようになる。オーバーフローはなくそ
して関連2ビットカウンタ150は空のままであるか
ら、裁定周期T+1のラウンドロビン裁定は、ポート4
へのアクセスに対しラインの次のポート、即ちポート入
力1(図6に太字で示す)を選択する。レジスタ142
は、再び増加される。ここで、ポート2のレジスタ14
2はオーバーフローを経験してゼロに戻り、それに関連
する2ビットカウンタ150は、「1」に増加される。
従って、次に続く裁定周期T+2の間に、アービタロジ
ック86’(ポート4のポート出力O(4)の)は、ポ
ート2が2ビットカウンタ150にカウントを有する
が、他のものは有していないことに注目し、それ故、ア
ービタ周期T+2は、ポート2の選択を生じさせる。こ
の裁定周期の終わりに、2ビットカウンタ150が1だ
け減少され、全てのレジスタ142は、指定のバイアス
値だけ再び増加される。
【0024】裁定周期T+3は、カウンタ150にカウ
ントがないのを見て、再び、ラウンドロビン機構に基づ
いて、ラインの次のポーチ、即ちポート2にアクセスを
許可する。この場合も、レジスタ142は、増加され
る。裁定周期T+4は、全てのレジスタ142がゼロに
ロールオーバーしてオーバーフローを生じ、全てのカウ
ンタ150が「1」のカウントを含むのを同時に見る。
カウンタ150のカウントは全て等しく(そして非ゼロ
であり)、従って、例えば、最初にポート0を見、次い
で、ポート1を見、等々といってポート4までラインを
下るような固定の優先順位機構に依存することにより、
同点状態を突破される。(明らかに、ポート5と他のポ
ートとの間のように、他のポートが常に勝つ。)従っ
て、この場合、ポート0が裁定に勝つ。レジスタ142
は、対応する指定のバイアス値で再び増加され、一方、
ポート0の2ビットカウンタは、当該ポート出力からD
ECREMENT信号ラインに信号を発生することによ
り1だけ減少される。裁定周期T+5は、ポート1及び
2がそれらのカウンタ150に1のカウントを依然含ん
でいるのを見、他のポートは同点である。この同点状態
も、固定の優先順位機構を使用することにより突破さ
れ、このときには、ポート2よりも高い固定優先順位を
有するポート1が選択され、そしてそのカウンタ150
が1だけ減少される。
【0025】裁定周期T+6は、ポート2のカウンタが
「2」のカウントに増加されるのを見る。これは、その
ときカウンタ150にカウントを有する唯一のものであ
るから、ポート4へのアクセスが再び得られ(同時に、
低レベルのラウンドロビン機構の次のものであるが)、
そしてポート2のカウンタ150が減少される。裁定周
期T+7は、ポート2がそのカウンタ150に非ゼロカ
ウントを有している唯一のものとして見、それ故、ポー
ト4へのアクセスが再び選択され、そのカウンタが減少
される。この裁定周期の終わりに、ポート0、1、2の
レジスタ142が増加されると、全てがゼロ値へとロー
ルオーバーしそして全てがそのカウンタ150に「1」
のカウントを有する。裁定周期T+8及びそれに続く周
期は、ここで、裁定周期T+4、・・・T+7を繰り返
す。図6を検討することにより明らかなように、このパ
ターンは、ポート2が回数〔128/(64+64+1
28)=128/256)の半分だけ裁定に勝つことを
示している。一方、ポート0及び1の各々は、回数(6
4/256)の1/4だけ裁定に勝つ。従って、この機
構は、指定バイアス値と2n の比に基づいて帯域巾を割
り当てるのに使用され、ここで、nは、バイアスされた
裁定カウンタ142の巾(ここでは、8ビット)であ
る。しかしながら、異なる巾のカウンタを使用して、カ
ウンタ142を実施し、帯域巾を割り当てるための比に
更に大きな分解能を得ることもできる。更に、6個のポ
ートを有するルータの場合には、2ビットカウンタで充
分であるが、6ポートより多くのポートを有するルータ
は2ビットより大きなカウンタ150を必要とする。
【0026】ラウンドロビン裁定を用いるのではなく、
低レベル機構を実施する他の方法もあり、ここに開示し
た高レベル機構と共に、固定優先順位を使用するか又は
メッセージ自体の情報を使用して裁定を行うことができ
る。更に、高レベル機構において同点状態を打破するた
めに使用される固定優先順位機構は、種々の形態の組合
せロジック(例えば、ゲート、プログラム可能なロジッ
クアレー、ルックアップテーブル、等)で実施される他
の予め定められた優先順位へ変更することができる。
【図面の簡単な説明】
【図1】一対の中央処理ユニット(CPU)を備え、こ
れらは、互いに接続されると共に、本発明によるルート
指定装置を用いてメッセージトラフィックを通信するた
めのシステムエリアネットワーク(SAN)により複数
の入力/出力(I/O)ユニットにも接続されるような
マルチプロセッサシステムの簡単なブロック図である。
【図2】図1のシステムエリアネットワークに使用され
るルート指定装置の簡単なブロック図であって、メッセ
ージトラフィックを受け取りそして再送信する多数の個
別の入力及びポート出力を有する構造を示す図である。
【図3】図2に示されたルート指定装置の1つのポート
入力に関連した入力ロジックを示す簡単なブロック図で
ある。
【図4】図1及び2のルート指定装置の1つのポート出
力に関連した出力ロジックを示す簡単なブロック図であ
る。
【図5】待機中メッセージトラフィックを有する図2の
ポート入力の優先順位を上昇するための優先順位要求を
発生するのに使用されるロジックを示すブロック図であ
る。
【図6】メッセージトラフィックを有するポート入力が
出力へのアクセスに対して裁定される多数の裁定周期を
示す図である。
【符号の説明】
10 処理システム 12a、12b CPU 14 入力/出力ユニット 16 ルート指定装置(ルータ) 18 両方向性通信リンク 30 入力ロジック 32 出力ロジック 34 クロスバースイッチ 36 状態ロジック 40 クロックロジック 42 自己チェック回路 46 オンラインアクセスポート(OLAP) 50 入力レジスタ 52 先入れ先出しバッファ待ち行列(FIFO) 56 コマンドデコード要素 58 プロトコル・パケットチェックユニット 62 弾力性FIFO 66 出力ポート選択ロジック 70 バイアスロジック 80 マルチプレクサ 82 コマンド信号発生器
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウィリアム ジョエル ワトソン アメリカ合衆国 テキサス州 78756 オ ースチン ウルリク アベニュー 1501 (72)発明者 ディヴィッド ポール ソーニア アメリカ合衆国 テキサス州 78750 オ ースチン イメージ コーヴ 7804

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも一対の入力と、出力とを有
    し、その一対の入力にメッセージデータを受け取って、
    出力へ通信しそして出力から再送信するように動作する
    データ通信装置において、出力へのアクセスに競合する
    一対の入力間の裁定にバイアスを与える方法が、 各々の入力に指定値を与え、 一対の入力各々の値が等しいときは第1の所定のベース
    で出力へ通信するように一対の入力の一方を選択し、 一対の入力各々の値が等しくないときは第2の所定のベ
    ースで出力へ通信するように一対の入力の一方を選択
    し、そして出力へ通信するためのメッセージデータを有
    する入力の一方の値を変更する、という段階を備えたこ
    とを特徴とする方法。
  2. 【請求項2】 上記変更段階は、上記指定値により変更
    される各入力の累積値を発生する請求項1に記載の方
    法。
  3. 【請求項3】 複数の入力と、少なくとも1つの出力と
    を有し、複数の入力にデータを受け取って出力から再送
    信するように動作するデータ通信装置であって、出力へ
    そしてそこから通信するためのデータを有する多数の複
    数の入力の中から選択を行うデータ通信装置において、
    複数の入力の各々に対し、 (a)指定値を受け取りそしてそこから変更された値を
    発生するように接続された演算ユニットを備え、この変
    更された値は、上記複数の入力の1つが出力のためのデ
    ータを有しそして上記複数の入力の別のものが選択され
    たときに上記指定値によって変更され、 (b)上記演算ユニットに接続され、上記変更された値
    が所定値に等しいか又はそれを越えるときにカウントを
    増加するためのカウンタを備え、 上記出力は、上記複数の入力の各々からカウントを受け
    取って、そのカウントが第1の値であるときは第1の順
    序に基づき多数の入力の1つから出力へデータを通信す
    るように多数の入力の1つを選択し、そして複数の入力
    のいずれかからのカウントが第1の値でないときは第2
    の順序に基づき多数の入力の1つを選択するためのアー
    ビタロジックを有することを特徴とするデータ通信装
    置。
  4. 【請求項4】 上記演算ユニットは、その演算ユニット
    により発生された和が桁上げを生じるときに桁上げ信号
    がアサートされる桁上げ出力を含む請求項6に記載の装
    置。
JP8145734A 1995-06-07 1996-06-07 共用リソースのためのルート裁定方法 Pending JPH09138774A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/483663 1995-06-07
US08/483,663 US5710549A (en) 1994-09-30 1995-06-07 Routing arbitration for shared resources

Publications (1)

Publication Number Publication Date
JPH09138774A true JPH09138774A (ja) 1997-05-27

Family

ID=23921001

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8145734A Pending JPH09138774A (ja) 1995-06-07 1996-06-07 共用リソースのためのルート裁定方法

Country Status (4)

Country Link
US (1) US5710549A (ja)
EP (1) EP0749072A3 (ja)
JP (1) JPH09138774A (ja)
CA (1) CA2177782A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015018558A (ja) * 2013-07-12 2015-01-29 ザ リージェンツ オブ ザ ユニバーシティ オブ ミシガン 単一サイクルの調停

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996017223A1 (en) * 1994-11-29 1996-06-06 United Technologies Corporation Optical fiber bragg grating coating removal detection
DE69525949T2 (de) * 1995-12-29 2002-07-25 Bull Sa Arbitrierungseinheit mit kreisförmiger Priorität, insbesondere für Multiprozessorsysteme mit synchronen symmetrischen Prozessoren
US5960174A (en) * 1996-12-20 1999-09-28 Square D Company Arbitration method for a communication network
US5832278A (en) * 1997-02-26 1998-11-03 Advanced Micro Devices, Inc. Cascaded round robin request selection method and apparatus
US6393483B1 (en) * 1997-06-30 2002-05-21 Adaptec, Inc. Method and apparatus for network interface card load balancing and port aggregation
US6058449A (en) * 1997-07-31 2000-05-02 Motorola, Inc. Fault tolerant serial arbitration system
US6243731B1 (en) * 1998-03-20 2001-06-05 Texas Instruments Incorporated Apparatus and method for extending register dynamic range
US6424655B1 (en) * 1998-05-13 2002-07-23 Compaq Computer Corporation Transpose table-biased arbitration
US6631131B1 (en) * 1998-05-13 2003-10-07 Hewlett-Packard Development Company, L.P. Transpose table biased arbitration scheme
US6374282B1 (en) 1998-08-28 2002-04-16 Compaq Computer Corporation Method and apparatus for tracking multi-threaded system area network (SAN) traffic
US6249756B1 (en) 1998-12-07 2001-06-19 Compaq Computer Corp. Hybrid flow control
US6950428B1 (en) 1998-12-30 2005-09-27 Hewlett-Packard Development Company, L.P. System and method for configuring adaptive sets of links between routers in a system area network (SAN)
US6330621B1 (en) 1999-01-15 2001-12-11 Storage Technology Corporation Intelligent data storage manager
US6842841B1 (en) 1999-09-21 2005-01-11 Storage Technology Corporation Method and system for dynamically selecting tape drives to connect with host computers
US6870814B1 (en) 1999-10-12 2005-03-22 Hewlett-Packard Development Company, L.P. Link extenders with error propagation and reporting
US6584531B1 (en) * 2000-04-27 2003-06-24 Lsi Logic Corporation Arbitration circuit with plural arbitration processors using memory bank history
US6820171B1 (en) 2000-06-30 2004-11-16 Lsi Logic Corporation Methods and structures for an extensible RAID storage architecture
US6765922B1 (en) 2000-09-08 2004-07-20 Hewlett-Packard Development Company, L.P. Speculative transmit for system area network latency reduction
US6728909B1 (en) 2000-09-26 2004-04-27 Hewlett-Packard Development Company, L.P. Data communication with speculative reception of data in a data processing system
US6738344B1 (en) 2000-09-27 2004-05-18 Hewlett-Packard Development Company, L.P. Link extenders with link alive propagation
US7133399B1 (en) * 2000-10-31 2006-11-07 Chiaro Networks Ltd System and method for router central arbitration
US7035294B2 (en) * 2001-06-04 2006-04-25 Calix Networks, Inc. Backplane bus
US6757753B1 (en) 2001-06-06 2004-06-29 Lsi Logic Corporation Uniform routing of storage access requests through redundant array controllers
JP4588262B2 (ja) * 2001-07-04 2010-11-24 富士通株式会社 ルータ及びネットワークにおける一時停止方法
US6763418B1 (en) * 2001-09-07 2004-07-13 Agilent Technologies, Inc. Request bus arbitration
US7324452B2 (en) 2002-01-14 2008-01-29 Fujitsu Limited Weighted credit-based arbitration using credit history
US6954812B2 (en) * 2002-03-05 2005-10-11 Hewlett-Packard Development Company, L.P. Two-stage round robin arbitration system
US6954811B2 (en) * 2002-07-19 2005-10-11 Calix Networks, Inc. Arbiter for an input buffered communication switch
US20060248375A1 (en) * 2005-04-18 2006-11-02 Bertan Tezcan Packet processing switch and methods of operation thereof
EP1746786B1 (en) * 2005-07-22 2008-01-30 Alcatel Lucent Method of operating a scheduler of a crossbar switch and scheduler
US7302510B2 (en) * 2005-09-29 2007-11-27 International Business Machines Corporation Fair hierarchical arbiter
CA2562634A1 (en) * 2005-11-28 2007-05-28 Tundra Semiconductor Corporation Method and switch for broadcasting packets
US7817652B1 (en) 2006-05-12 2010-10-19 Integrated Device Technology, Inc. System and method of constructing data packets in a packet switch
US7747904B1 (en) 2006-05-12 2010-06-29 Integrated Device Technology, Inc. Error management system and method for a packet switch
US7706387B1 (en) 2006-05-31 2010-04-27 Integrated Device Technology, Inc. System and method for round robin arbitration
US7693040B1 (en) 2007-05-01 2010-04-06 Integrated Device Technology, Inc. Processing switch for orthogonal frequency division multiplexing
US8682639B2 (en) * 2010-09-21 2014-03-25 Texas Instruments Incorporated Dedicated memory window for emulation address
US9678906B2 (en) 2014-03-26 2017-06-13 International Business Machines Corporation Oldest link first arbitration between links grouped as single arbitration elements
US10700968B2 (en) * 2016-10-19 2020-06-30 Rex Computing, Inc. Optimized function assignment in a multi-core processor
US11934945B2 (en) 2017-02-23 2024-03-19 Cerebras Systems Inc. Accelerated deep learning
US11488004B2 (en) 2017-04-17 2022-11-01 Cerebras Systems Inc. Neuron smearing for accelerated deep learning
US11232347B2 (en) 2017-04-17 2022-01-25 Cerebras Systems Inc. Fabric vectors for deep learning acceleration
WO2018193352A1 (en) 2017-04-17 2018-10-25 Cerebras Systems Inc. Dataflow triggered tasks for accelerated deep learning
WO2020044152A1 (en) 2018-08-28 2020-03-05 Cerebras Systems Inc. Scaled compute fabric for accelerated deep learning
WO2020044208A1 (en) 2018-08-29 2020-03-05 Cerebras Systems Inc. Isa enhancements for accelerated deep learning
WO2020044238A1 (en) 2018-08-29 2020-03-05 Cerebras Systems Inc. Processor element redundancy for accelerated deep learning

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3699524A (en) * 1970-08-10 1972-10-17 Control Data Corp Adaptive data priority generator
US4663756A (en) * 1985-08-29 1987-05-05 Sperry Corporation Multiple-use priority network
JPS62260257A (ja) * 1986-05-07 1987-11-12 Fujitsu Ltd 入出力ポ−ト割り付け制御方式
US5388228A (en) * 1987-09-30 1995-02-07 International Business Machines Corp. Computer system having dynamically programmable linear/fairness priority arbitration scheme
JPH081632B2 (ja) * 1988-04-28 1996-01-10 インターナショナル・ビジネス・マシーンズ・コーポレーション 共有バスを有するデータ処理システムおよびその優先度決定回路
US5210871A (en) * 1988-07-15 1993-05-11 The Charles Stark Draper Labroatory, Inc. Interprocessor communication for a fault-tolerant, mixed redundancy distributed information processing system
US5072363A (en) * 1989-12-22 1991-12-10 Harris Corporation Multimode resource arbiter providing round robin arbitration or a modified priority arbitration
JPH056334A (ja) * 1991-06-18 1993-01-14 Nec Corp バス制御装置
JPH05257873A (ja) * 1992-03-13 1993-10-08 Hitachi Ltd 優先判定方法および優先判定回路
JP2716911B2 (ja) * 1992-06-05 1998-02-18 三菱電機株式会社 優先順位選択回路
US5392033A (en) * 1993-01-05 1995-02-21 International Business Machines Corporation Priority generator for providing controllable guaranteed fairness in accessing a shared bus
US5388097A (en) * 1993-06-29 1995-02-07 International Business Machines Corporation System and method for bandwidth reservation for multimedia traffic in communication networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015018558A (ja) * 2013-07-12 2015-01-29 ザ リージェンツ オブ ザ ユニバーシティ オブ ミシガン 単一サイクルの調停

Also Published As

Publication number Publication date
US5710549A (en) 1998-01-20
CA2177782A1 (en) 1996-12-08
EP0749072A2 (en) 1996-12-18
EP0749072A3 (en) 1999-07-21

Similar Documents

Publication Publication Date Title
JPH09138774A (ja) 共用リソースのためのルート裁定方法
US4096571A (en) 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
US7149227B2 (en) Round-robin arbiter with low jitter
JP4638216B2 (ja) オンチップバス
US7525986B2 (en) Starvation prevention scheme for a fixed priority PCI-Express arbiter with grant counters using arbitration pools
EP0367813B1 (en) Communication processor for a packet-switched network
EP0383475A2 (en) Shared resource arbitration
US6519666B1 (en) Arbitration scheme for optimal performance
WO2011151241A1 (en) Network-on-a-chip with quality-of-service features
JP3492852B2 (ja) ネットワークメッセージルート指定装置のための待ち時間短縮及びルート裁定方法
JP2553260B2 (ja) ネットワーク情報転送方法及び装置
US7450606B2 (en) Bit slice arbiter
US5371893A (en) Look-ahead priority arbitration system and method
KR100905802B1 (ko) 컴퓨터 시스템의 입력/출력 노드에서 태깅 및 중재 매카니즘
US5613073A (en) Apparatus and method for a buffer reservation system
EP0464237A1 (en) Bus arbitration scheme
US8140728B1 (en) Data packet arbitration system
EP1284071B1 (en) Apparatus and method for resource arbitration
US6424655B1 (en) Transpose table-biased arbitration
EP1591907B1 (en) Resource management
US7773617B2 (en) System and method for arbitration for virtual channels to prevent livelock in a richly-connected multi-processor computer system
US6631131B1 (en) Transpose table biased arbitration scheme
RU2115162C1 (ru) Сеть для маршрутизации сообщений
JPH04326454A (ja) クロスバネットワーク
Subhasakthe et al. A Reliable Flexi-Router Architecture for NoC Applications