JPH0727507B2 - チャネル選択アービトレーション - Google Patents

チャネル選択アービトレーション

Info

Publication number
JPH0727507B2
JPH0727507B2 JP3504785A JP50478591A JPH0727507B2 JP H0727507 B2 JPH0727507 B2 JP H0727507B2 JP 3504785 A JP3504785 A JP 3504785A JP 50478591 A JP50478591 A JP 50478591A JP H0727507 B2 JPH0727507 B2 JP H0727507B2
Authority
JP
Japan
Prior art keywords
channel
channels
winning
requesting
memory element
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP3504785A
Other languages
English (en)
Other versions
JPH05504014A (ja
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.)
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 JPH05504014A publication Critical patent/JPH05504014A/ja
Publication of JPH0727507B2 publication Critical patent/JPH0727507B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Body Structure For Vehicles (AREA)

Description

【発明の詳細な説明】 [技術分野] 本発明は、選択されるために競合するチャネル間のアー
ビトレーションのための回路及び方法、及びそのような
回路を利用するデータ処理システムに関する。
[背景技術] 電子装置をいくつかの周辺装置またはチャネルに接続
し、任意の瞬間にサービスするために1つのチャネルを
選択することが普通である。このことの一例は、コンピ
ュータ・システムにおける直接メモリ・アクセス(DM
A)データ転送の分野において見られる。この場合、デ
ータは、中央処理装置(CPU)を使用しないで、いくつ
かの異なる「スレーブ」装置またはチャネルによって、
主としてメイン・メモリとの間で転送される。これらの
データ転送を監督し制御するには、通常、DMA制御装置
が使用される。CPUをバイパスすると、通常、より高速
のデータ転送速度が可能になり、CPUは他の処理タスク
のために解放される。
いくつかの周辺装置が単一のDMAデータ・バスを使用す
るために競合するシステムでは、DMA制御装置は、DMAデ
ータ・バスの使用を任意の瞬間に1つのチャネルに許可
するために、同時に受け取ったDMA要求を調停しなけれ
ばならない。このアービトレーションは、各要求装置に
データ・バスの使用が妥当な配分で割り振られるよう
に、「公平な」方法で実行されなければならない。
DMAデータ・バスへのアクセスを独立にではなくグルー
プで要求するようにDMAチャネルが構成されているとき
は、別の問題が生ずる。たとえば、このような問題は、
いくつかのDMAチャネルが、単一のバス上で、または単
一のケーブルに沿ってパケット多重方式で、データを伝
送するように横成されるときに、起こり得る。この場
合、グループ内のすべてのチャネルからの要求は、同時
に受け取られ、グループ内のいずれかのチャネルがサー
ビスを受けるとき、これらの要求がすべて削除される。
パケットが伝送されている間、休止期間があり、その
後、そのグループ内のすべてのチャネルが再び要求を行
う。DMA制御装置は、グループ間だけでなく各グループ
内でもバスの使用を公平に割り振らなければならない。
従来技術の1つの要求アービトレーション法は、いわゆ
る「優先順位回転式」または「ラウンド・ロビン式」ア
プローチであって、Motorola MC6844(‘Motorola Micr
oprocessor,Microcontroller and Peripheral Data,Vol
ume II',1988,pp.3−1757〜3−1773に記述)及びIntel
8237A、8257A(‘Intel Microsystem Components Hand
book−Microprocessers and Peripherals'Volume 1,pp.
2−61〜2−88に記載)などのいくつかの商用DMA制御装
置において使用されている。このシステムでは、各チャ
ネルは、優先順位値を割り当てられる。最高の優先順位
をもつ要求チャネルはいつでもDMAデータ・バスにアク
セスすることを許される。次に、そのチャネルは可能な
最低の優先順位を割り当てられ、他の各チャネルの優先
順位が増加される。次のDMAアクセスは、新しい優先順
位が最高の要求チャネルに与えられる。
優先順位回転方式は、要求チャネルがすべて独立である
とき良好に機能するが、チャネルがグループで構成され
るときは競合する要求間で公平なアービトレーションを
提供しない。後者の場合、いくつかのチャネルによる要
求は決してサービスを受けない。この問題については、
付属の図面を参照して下記でさらに説明する。
別の従来技術のアービトレーション法は、英国特許第22
02977号に記載されているもので、チャネルが別々のア
ービトレーション・バスで優先順位値をDMA制御装置に
伝送する。次に、DMA制御装置は、この値をDMA制御装置
内部に記憶された値と比較して、そのチャネルにDMAア
クセスを許可するかどうかを決定する。
本発明によれば、選択を要求する複数のチャネルから勝
利チャネルを選択するためのアービトレーション回路が
提供される。この回路は、各チャネルに対応するメモリ
要素、任意の要求チャネル用のメモリ要素が第1の状態
にあるかどうかを決定するための第1の論理手段、及び
第1の論理手段による肯定的決定に応答して、そのメモ
リ要素が前記の第1の状態にある要求チャネルのうちの
1つを勝利チャネルとして選択し、勝利チャネルに対応
するメモリ要素を第2の状態にセットするための第2の
論理手段を含む。
本発明によるアービトレーション回路は、同時に要求す
るチャネルのグループ内、及びグループ間で公平なアー
ビトレーションを提供することによって、上記の問題を
解決する。特定のチャネルが選択されたとき、またはサ
ービスを受けるとき、そのチャネルに対応するメモリ要
素は第2の状態にセットされる。本発明の最も広義の態
様では、そのようなチャネルは以後の選択では考慮され
ない。
すべての要求チャネルがサービスを受けたときに選択が
行えるように、アービトレーション回路は、第1の論理
手段による否定的決定に応答して、要求チャネルの1つ
を勝利チャネルとして選択し、勝利チャネルを除く各要
求チャネルに対応するメモリ要素を第1の状態にセット
するための第3の論理手段を含むことが好ましい。
第2及び第3の論理手段は、ランダムな決定によって適
格チャネルの適切なグループから勝利チャネルを選択で
きるが、この選択が、チャネル間の予め決定された優先
順位に従って実行されることが好ましい。さらに、第2
及び第3の論理手段が複数の要求チャネルを勝利チャネ
ルとして選択することを防止する手段を含むことが望ま
しい。
好ましい実施例では、アービトレーション回路は複数の
インターリンクされたサブ回路として構成され、各サブ
回路は単一のチャネルに応答し、そのチャネルに対応す
るメモリ要素を含む。これによって、アービトレーショ
ン回路をモジュラー方式で設計し構築することが可能に
なる。
任意の種類のレジスタまたはラッチを使用することも可
能であるが、メモリ要素はセットドミナント・セットリ
セット(RS)ラッチであることが好ましい。
第2の態様から見ると、本発明は本発明によるアービト
レーション回路を含み、さらに少なくとも1つのメモリ
装置、少なくとも1つのデータ処理装置、及び相互接続
バスを含む直接メモリ・アクセス(DMA)制御装置を備
えるデータ処理システムをも提供する。DMA転送は、DMA
制御装置を介してメモリ装置とデータ処理装置の間で実
行される。
第3の態様から見ると、本発明はさらに、選択を要求す
る複数のチャネルから勝利チャネルを選択する方法を提
供する。各チャネルに関連するメモリ要素は少なくとも
2つの状態のうちの1つにセットすることができる。こ
の方法は、任意の要求チャネルに対応するメモリ要素が
第1の状態にあるかどうかを決定する段階、及び、第1
の状態にある場合、そのメモリ要素が第1の状態にある
要求チャネルの1つを勝利チャネルとして選択し、勝利
チャネルに対応するメモリ要素を第2の状態にセットす
る段階を含む。
[図面の簡単な説明] 第1図は、従来技術で周知のアービトレーション回路の
ブロック・ダイアグラムである。
第2図は、独立に選択を要求する4つのチャネルを含む
システムにおける優先順位回転方式の使用を示す概略図
である。
第3図は、選択を要求する2つのチャネルからなる2つ
のグループを含むシステムにおける優先順位回転方式の
使用を示す概略図である。
第4図は、本発明によるアービトレーション回路の動作
を示す概略図である。
第5図は、1つのチャネル用の本発明によるアービトレ
ーション回路の論理回路図である。
第6図は、本発明によるアービトレーション回路がDMA
制御装置内で使用されているコンピュータ・システムの
概略図である。
[発明の好ましい実施例] ここで第1図を参照すると、従来技術で周知のアービト
レーション回路100は、いくつかのチャネル(図示せ
ず)から選択要求110を受け取る。アービトレーション
回路100は、サービスを受けるべきチャネル(「勝利チ
ャネル」)を選択し、勝利チャネルの識別を出力120に
示す。勝利チャネルがサービスを受けるとき、アービト
レーション・サイクルが完了したことを示すパルスが、
アービトレーション回路の更新入力130に印加される。
次に、アービトレーション回路はその現在の要求110に
従って次の勝利チャネルを評価しなければならない。
複数の要求入力110が活動状態であるとき、連続したサ
イクル内の全勝利チャネルは、多数のサイクルが経過し
た後に各要求チャネルが妥当なサイクル数で勝利チャネ
ルになるように公平な方法で選択されなければならな
い。
図2は、4つのチャネル1、2、3、4が独立に要求す
る場合における従来技術の「優先順位回転」システムの
使用を示す。図2で、‘R'はそのチャネルが現在選択を
要求していることを示す。各サイクルで、最高優先順位
のチャネルは図の一番上に示されている。第1サイクル
(a)の始めに、これらのチャネルに任意の優先順位値
が割り当てられるが、チャネル1は最高の初期優先順位
をもつ。
図2全体において、3つのチャネル1、3、4だけがア
ービトレーション回路に要求を行っている。したがっ
て、サイクル(a)では、チャネル1はサービスを要求
しているチャネルのうちで優先順位が最高なので、勝利
チャネルになる。サイクル(b)では、サイクル(a)
からの勝利チャネルは優先順位が最低のチャネルにな
り、優先順位が最高の要求チャネル(勝利チャネル)は
チャネル3である。同様に、サイクル(c)では、優先
順位は、チャネル4が優先順位が最高の要求チャネルに
なるように回転し、以下同様である。
第2図に示された状況では、優先順位回転式アービトレ
ーション法は、各チャネルが順に優先順位が最高のチャ
ネルになり、したがってそのサイクルの勝利チャネルに
なる点で、要求チャネル間の公平なアービトレーション
を提供する。しかしながら、同じ方法をグループで構成
されたチャネルに適用しても、公平なアービトレーショ
ンにはならない。これについては、第3図を参照して以
下で実証する。
第3図は、選択を要求する2つのチャネルからなる2つ
のグループを含むシステムにおける優先順位回転法の使
用の概略図である。具体的には、チャネル1及び2が一
緒に要求を行い、チャネル3及び4が一緒に要求を行
う。1つのチャネルがサービスを受けるとき、そのグル
ープのすべての要素は要求を停止し、次のサイクルで適
時に要求を再発行する。
第2図と同様に、第3図では、各チャネルにサイクルの
開始時(a)に任意の優先順位が割り当てられている。
そのサイクルで、両方のチャネル・グループが要求を行
い、チャネル1が優先順位が最高の要求チャネルとして
サービスを受ける。サイクル(b)の時間には、チャネ
ル1は最低の優先順位を割り当てられ、その他のチャネ
ルの優先順位はすべて増加される。サイクル(b)で
は、チャネル3及び4を含むグループが要求を行い、チ
ャネル3が勝利チャネルになる。サイクル(c)では、
チャネル1及び2を含むグループが要求を行い、チャネ
ル1が勝利チャネルにされる。サイクル(d)では、チ
ャネル3が再び勝利チャネルになる。
2つのチャネル・グループが交互のサイクルで要求を行
う第3図に示した状況から、アービトレーションは公平
でないことが理解される。第3図の例では、チャネル1
及び3は規則的にサービスを受けるが、チャネル2及び
4は決してサービスを受けない。
本発明によるアービトレーション法について、第4図及
び第5図を参照して説明する。この方法の基礎は、各チ
ャネルに対応する「TURN−TAKEN」ラッチ即ち「番取
り」ラッチまたはメモリ要素(230、第5図)であり、
これは各アービトレーション・サイクルでクロックされ
る。このラッチの状態から、公平なアービトレーション
決定を行って、要求チャネルのうちのどれが次にサービ
スを受けるべきかを決定することができる。
アービトレーションは以下のように進行する。
1)各チャネルについて、2進制御値を定義する。
PENDING(係属中)=REQUESTING AND(NOT TURN_TAKE
N)(要求中だが未だ自分の番は取れていない) 2)係属中ビットがセットされているチャネルの1つ
(たとえば、最低番号のチャネル)を選択し、それにサ
ービスする。
サービスを受けたチャネルの番取りラッチをセットす
る。
3)係属中ビットはセットされていないが、1つまたは
複数のチャネルが要求を行っている場合(言い替える
と、各要求チャネルが1回転した場合)、 要求中である各チャネルについて番取りラッチをリセッ
トする PENDING(係属中)=REQUESTING(要求中)と再定義す
る このアービトレーション法の動作を、第4図に示す。チ
ャネル1〜4の間のアービトレーションについて検討す
る。この図では、これらのチャネルは2つのチャネルか
らなる2つのグループ(1、2);(3、4)として構
成されている。チャネル番号の後の‘R'は、そのチャネ
ルがサービスを現在要求している、すなわちその要求中
ビットがセットされていることを示す。同様に、‘T'
は、そのチャネルの番取りラッチがセットされているこ
とを示す。7つのアービトレーション・サイクル(a)
〜(g)が図示されている。
第4図を参照すると、サイクル(a)ではすべてのチャ
ネルが要求を行っているが、どのチャネルも番取りラッ
チがセットされていない。したがって、各チャネルの係
属中ビットは論理‘1'であり、任意のチャネル(この場
合、最低番号のチャネルであるチャネル番号1)がサー
ビスのために選択される。次に、チャネル1の番取りラ
ッチがセットされる。
サイクル(b)では、チャネル3及び4が要求を行って
おり、選択の時点でどのチャネルもその番取りラッチが
セットされないので、再び最低番号のチャネル(チャネ
ル3)が選択される。その選択の成功の結果として、チ
ャネル3はその番取りラッチをセットされる。
サイクル(c)では、チャネル1及び2が再び要求を行
う。上記から、2進値のPENDING(係属中ビット)が計
算される。
PENDING=REQUESTING AND(NOT TURN_TAKEN) =1 AND 0=0(チャネル1について) =1 AND 1=1(チャネル2について) =0(チャネル3及び4について、この場合、
REQUESTING=0) したがって、チャネル2が唯一の係属中のチャネルであ
り、したがって勝利チャネルとなる。このとき、その番
取りラッチはセットされる。
サイクル(d)でも事情は同様であり、チャネル4は係
属中ビットが論理‘1'である唯一の要求チャネルなの
で、チャネル4が選択される。
これまでのサイクル(a)〜(d)では、番取りラッチ
がセットされていない係属中チャネル、言い替えると値 PENDING=REQUESTING AND(NOT TURN_TAKEN) =‘1' のチャネルを選択することが可能であった。
しかしながら、サイクル(e)ではもうできないので、
上記の方式とは別の第3の段階が必要である。
3)係属中ビットはセットされていないが、1つまたは
複数のチャネルが要求を行っている場合(言い替える
と、各要求チャネルが1回転した場合)、 要求中である各チャネルについて、 番取りラッチをリセットする PENDING=REQUESTINGと再定義する この段階をサイクル(e)に適用すると、チャネル1及
び2は要求中であり、したがて、両チャネルは、この新
しい一時的定義によって係属中ビットの値1をもつ。し
たがって、係属中チャネルのうちの最低番号のものとし
てチャネル1が選択される。すべての要求中チャネルで
番取りラッチがリセットされるが、実際には、チャネル
1では再びセットされている。これは、このチャネルが
そのサイクルで勝利チャネルであったことを示す。
サイクル(f)の状況も同様であって、両方のチャネル
3及び4が要求中であるが、共にその番取りラッチがセ
ットされている。サイクル(e)に関連して使用したの
と同様の理由からチャネル3が選択される。
最後の例のサイクル(g)では、チャネル1及び2が要
求中である。「PENDING(係属中)」の本来の定義に従
って、 PENDING=REQUESTING AND(NOT TURN_TAKEN), チャネル2の係属中ビットがセットされる。したがっ
て、上記方式の第3段階の構成に頼る必要はなく、チャ
ネル2が通常の方法で選択される。
第5図は、本発明によるアービトレーション回路の1つ
のチャネル200の論理回路図を示す。破線の間の回路
は、各チャネルごとに繰り返される。選択要求は、要求
入力210上で論理‘1'として受け取られ、そのチャネル
が特定のサイクル中にアービレーションの勝利チャネル
であるという標識は、勝利出力220上の論理‘1'によっ
て提供される。
番取りラッチ230は、セットドミナント・セットリセッ
ト(RS)ラッチであり、第1図の更新入力130からの適
切なクロック・パルス(図示せず)によって提供され
る。その出力260は、番取りラッチの値を表す。
係属中ビットの値は、ANDゲート340によって決定され、
その出力は REQUESTING AND(NOT TURN_TAKEN) に等しい。ただし、要求中チャネルがその係属中ビット
をセットされていない場合は除く(下記及び上記の段階
(3)参照)。第5図の論理ゲートの入力または出力部
の白丸は、その入力または出力の論理的反転を意味する
ことに留意されたい。
論理ゲート300は、要求中ビットがセットされているが
番取りビットがセットされていないとき、その出力とし
て論理‘1'を生成する(すなわち、第1の定義に従って
PENDING=‘1')。他のすべてのチャネルにおけるゲー
ト300及び等価なゲートからの出力が、NORゲート310へ
の入力を形成する。したがって、NORゲート310の出力
は、その出力のすべてが0であるときだけ、すなわち要
求中チャネルがその係属中ビットをセットされていない
ときだけ論理‘1'である。これらの状況の下でだけ、番
取りラッチは、ORゲート330に印加された論理‘1'によ
ってオーバーライドされる。これは上記の方式の第3の
段階に対応し、「PENDING(係属中)」は一時的に「REQ
UESTING(要求中)」に等しく再定義される。また、各
要求中チャネルに関して論理‘1'が(ANDゲート320を介
して)ラッチ230のR(リセット)入力240に印加され
る。これらのラッチは、次のクロック・パルスが印加さ
れたときリセットされる。
ゲータ340に戻ると、このゲートの出力は、上で与えら
れたその2つの定義のいずれかに従って「PENDING(要
求中)値」を表すことが理解されよう。すなわち、「PE
NDING」は通常 REQUESTING AND(NOT TURN_TAKEN) に等しいが、要求中チャネルがこの第1の定義に従って
その係属中ビットをセットされていないときは、「PEND
ING」は「REQUESTING」に等しく一時的に再定義され
る。どの定義が使用されてるときでも、「PENDING」は
ゲート340によって提供される。
いま、「PENDING」がセットされているチャネルの1つ
を勝利チャネルとして選択しなければならない。第4図
に示した例では、最低番号の係属中チャネルが勝利チャ
ネルとして選択された。第5図に示した実施態様では、
係属中チャネルの間のこの事前決定された任意の選択を
達成するために、ゲート350及び360を使用する。
ゲート350は論理値 WON(勝利)=PENDING AND(NOT PREVIOUS)(係属中
で、且つ、「前のチャネル」が‘1'でない) を取り出す。ここで、「PREVIOUS」は線370上の「前の
チャネル」入力である。したがって、特定の係属中チャ
ネルが勝利チャネルとして選択されるためには、入力37
0でそのチャネルが受け取った「PREVIOUS(前のチャネ
ル」値が論理‘1'でなければならないことが明らかにな
る。選択された特定の勝利チャネルに関して、出力380
における「次のチャネル」出力は常に論理‘1'になる。
同様に、係属中でないチャネルに関しては、「次のチャ
ネル」出力380は(PREVIOUS OR‘0')=PREVIOUSに等し
い。(最後のチャネルを除く)各チャネルに関する「次
のチャネル」出力380は、後続のチャネル用の前のチャ
ネルからの入力370に接続される。
したがって、ゲート350及び360の効果は以下の通りであ
る。
a)チャネルが勝利するには、その「前のチャネル」入
力370が論理‘0'でなければならない。
b)いずれかのチャネルが勝利した場合、次のチャネル
へのその「次のチャネル」出力380が論理‘1'になる。
c)あるチャネルの「前のチャネル」入力が論理‘1'で
ある場合、そのチャネルの「次のチャネル」出力380は
自動的に論理‘1'になる。
チャネルが勝利チャネルになるには(上記の定義のいず
れかによって)その「係属中」ビットがセットしなけれ
ばならないと仮定すると、「次のチャネル」入力380か
ら「前のチャネル」出力370への接続の連鎖中の第1の
係属中チャネルが勝利チャネルとして選択されることが
明らかになる。その連鎖中の以後の任意のチャネルはそ
の「前のチャネル」入力370で論理‘1'を受け取り、し
たがって勝利チャネルになることを妨げられる。その結
果、この実施例では、1つの勝利チャネルだけが存在で
きる。
また、各チャネルに関する「勝利」出力220がラッチ230
のS(セット)入力250に接続される。この効果は、ク
ロックまたは更新パルスが印加されたとき、勝利チャネ
ルに関する番取りラッチが常にセットされることであ
る。
第6図は、本発明によるアービトレーション回路がDMA
制御装置500内で使用されているコンピュータ・システ
ムを示す。図示されたこの特定のシステムは、4つのDA
SDまたはディスク・ドライブ610を含むデータ記憶サブ
システムの制御回路として使用するのに適している。こ
のシステムでは、DMA転送はDASD610とバッファDRAM540
の間の両方向、及びバッファDRAM540とアダプタ620の間
の両方向で必要である(これによって、記憶サブシステ
ムはそのホスト(制御)データ・プロセッサと通信す
る)。
装置500は、DMA制御装置の機能と、この場合はそれに加
えて一般のシステム制御装置の機能を実行し、後者の観
点では、EPROM520及びスタティックRAM510に記憶された
プログラム・コードの制御下で動作する。EPROM520及び
スタティックRAM510は、共にCS(記憶制御)バス530を
介して制御装置500に接続される。
各DASD610がグループとして要求することができる2本
のDMAチャネルを含み、アダプタが4本のDMAチャネルを
もち、DMA制御装置500が内部転送用の3本の内部DMAチ
ャネルをもつので、DMA制御装置500内にアービトレーシ
ョン回路が必要となる。16本の非内部DMAチャネルは、
それぞれDMAバス630を介して要求を行うことができ、特
定のサイクルで選択された場合、バス630及び制御装置
リンク・チップ600を介してデータの小パケットを転送
する。
本発明を離散論理ゲートを使用する実施例に関して説明
したが、統合回路の実施例も容易に使用できることは明
らかである。さらに、本発明は、コンピュータ・プログ
ラムの制御下でマイクロプロセッサなどの汎用論理装置
として実施することもできる。

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】選択を要求している複数のチャネルから勝
    利チャネルを選択するためのアービトレーション回路に
    おいて、 各チャネルに対応するメモリ要素(230)と、 いずれかの要求チャネルに関するメモリ要素が第1の状
    態にあるかどうかを決定するための第1の論理手段(30
    0、310、330、340)と、 第1の論理手段による正の決定に応答して、メモリ要素
    (230)が前記の第1の状態にある要求チャネルの1つ
    を勝利チャネルとして選択し、勝利チャネルに対応する
    メモリ要素を第2の状態にセットするための第2の論理
    手段(350、360)と、 第1の論理手段による負の決定に応答して、要求チャネ
    ルの1つを勝利チャネルとして選択し、勝利チャネルを
    除く各要求チャネルに対応するメモリ要素を第1の状態
    にセットするための第3の論理手段(330、340、350、3
    60)とを含む、 アービトレーション回路。
  2. 【請求項2】第2及び第3の論理手段が、チャネル間の
    予め決定された優先順位に従って勝利チャネルを選択す
    る、 請求項1に記載のアービトレーション回路。
  3. 【請求項3】第2及び第3の論理手段が、勝利チャネル
    として複数の要求チャネルが選択されるのを防止するた
    めの手段(350、360)を含む、 請求項2に記載のアービトレーション回路。
  4. 【請求項4】前記のアービトレーション回路が、複数の
    相互接続されたサブ回路(200)として構成され、各サ
    ブ回路(200)が単一のチャネルに対応し、そのチャネ
    ルに対応するメモリ要素(230)を含む、前記のいずれ
    かの請求項のアービトレーション回路。
  5. 【請求項5】メモリ要素(230)がセットドミナント・
    セットリセット(RS)ラッチである、前記のいずれかの
    請求項に記載のアービトレーション回路。
  6. 【請求項6】前記のいずれかの請求項に記載のアービト
    レーション回路を含む直接メモリ・アクセス(DMA)制
    御装置(500)を備えるデータ処理システムにおいて、 さらに、少なくとも1つのメモリ装置(540)と、 少なくとも1つのデータ処理装置(600、610、620)
    と、 少なくとも1つの相互接続バス(630、640)とを含み、 データ処理装置(600、610、620)内のメモリ装置(54
    0)とチャネルの間でDMA転送がDMA制御装置(500)を介
    して実行できる、 データ処理システム。
  7. 【請求項7】すべてが独立でなくグループで構成されて
    いるところの選択を要求している複数のチャネルから勝
    利チャネルを選択するためのアービトレーション回路に
    おいて、 各チャネルに対応するメモリ要素(230)と、 いずれかの要求チャネルに関するメモリ要素が第1の状
    態にあるかどうかを決定するための第1の論理手段(30
    0、310、330、340)と、 第1の論理手段による正の決定に応答して、メモリ要素
    (230)が前記の第1の状態にある要求チャネルのうち
    の1つを勝利チャネルとして選択し、勝利チャネルに対
    応するメモリ要素を第2の状態にセットするための第2
    の論理手段(350、360)と、 全てのチャネルがサービスを受けたときに選択が行える
    ように、第1の論理手段による負の決定に応答して、要
    求チャネルの1つを勝利チャネルとして選択し、勝利チ
    ャネルを除く各要求チャネルに対応するメモリ要素を第
    1の状態にセットするための第3の論理手段(330、34
    0、350、360)とを含み、 グループ間だけでなくグループの内のチャネルにおいて
    も公平に選択がされることを特徴とする、 アービトレーション回路。
  8. 【請求項8】2進制御値(0、1)を用いた以下の論理
    式、 PENDING=REQUESTING AND (NOT TURN_TAKEN) ここで、PENDINGは1が係属中であることを表し、 REQUESTINGは1が要求中であることを表し、 TURN_TAKENは1が番取り状態であることを表し、 NOTは論理的反転を表す、 が各チャネルに定義されている状態において、 当該定義を用いて、すべてが独立ではなくグループで構
    成されているところの選択を要求している複数のチャネ
    ルから、勝利チャネルを選択するためのアービトレーシ
    ョン方法であって、 (a)PENDINGが1であるチャネルのうちの1つを選択
    して勝利チャネルとし、当該チャネルが属するグループ
    のREQUESTINGを全て0にセットするとともに当該勝利チ
    ャネルのTURN_TAKENを1にセットする段階と、 (b)ここでREQUESTINGが1である残りのチャネルのう
    ちの1つを選択して勝利チャネルとするとともに、上記
    (a)の段階をグループごとに全てのチャネルのREQUES
    TINGが0になるまで繰り返す段階と、 (c)再びグループのうちの1つに属する全てのチャネ
    ルのREQUESTINGを1にセットして、上記論理式によって
    PENDINGを計算して、上記(a)の段階を繰り返す段階
    と、 (d)上記(c)の段階における1つのグループ以外の
    グループについても上記(c)の段階を繰り返す段階
    と、 (e)全てのチャネルのTURN_TAKENを0にセット(すな
    わちリセット)して、再びグループのうちの1つに属す
    る全てのチャネルのREQUESTINGを1にセットするととも
    に、上記(a)乃至(d)の段階を繰り返す段階とを含
    むことで、 グループ間だけでなくグループ内のチャネルにおいても
    公平に選択がされることを特徴とする、 アービトレーション方法。
JP3504785A 1991-02-19 1991-02-19 チャネル選択アービトレーション Expired - Lifetime JPH0727507B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/GB1991/000252 WO1992015060A1 (en) 1991-02-19 1991-02-19 Channel selection arbitration

Publications (2)

Publication Number Publication Date
JPH05504014A JPH05504014A (ja) 1993-06-24
JPH0727507B2 true JPH0727507B2 (ja) 1995-03-29

Family

ID=10688041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3504785A Expired - Lifetime JPH0727507B2 (ja) 1991-02-19 1991-02-19 チャネル選択アービトレーション

Country Status (4)

Country Link
US (1) US5450591A (ja)
EP (1) EP0524940A1 (ja)
JP (1) JPH0727507B2 (ja)
WO (1) WO1992015060A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3320233B2 (ja) * 1995-02-06 2002-09-03 キヤノン株式会社 記録装置
US5781799A (en) * 1995-09-29 1998-07-14 Cirrus Logic, Inc. DMA controller arrangement having plurality of DMA controllers and buffer pool having plurality of buffers accessible to each of the channels of the controllers
US5765023A (en) * 1995-09-29 1998-06-09 Cirrus Logic, Inc. DMA controller having multiple channels and buffer pool having plurality of buffers accessible to each channel for buffering data transferred to and from host computer
US6076132A (en) * 1997-05-28 2000-06-13 Integrated Memory Logic, Inc. Arbitration method and circuit to increase access without increasing latency
US6092137A (en) * 1997-11-26 2000-07-18 Industrial Technology Research Institute Fair data bus arbitration system which assigns adjustable priority values to competing sources
US6163827A (en) * 1997-12-16 2000-12-19 Network Equipment Technologies, Inc. Method and apparatus for round-robin flash channel arbitration
US6044414A (en) * 1998-02-17 2000-03-28 Advanced Micro Devices, Inc. System for preventing a DMA controller from evaluating its DRQ input once a DMA operation has started until the DRQ input has been updated
US6615291B1 (en) 1999-03-08 2003-09-02 Minolta Co., Ltd. DMA controller with dynamically variable access priority
US10606791B1 (en) 2019-01-18 2020-03-31 International Business Machines Corporation Adaptation of a bus bridge transfer protocol
CN114880258B (zh) * 2022-05-26 2024-05-07 重庆长安汽车股份有限公司 智能驾驶交互仲裁方法、系统、车辆及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5355931A (en) * 1976-10-29 1978-05-20 Westinghouse Electric Corp Priority selector used for data processor system
JPS5541039A (en) * 1978-09-16 1980-03-22 Nippon Telegr & Teleph Corp <Ntt> Competition arrangement system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4096569A (en) * 1976-12-27 1978-06-20 Honeywell Information Systems Inc. Data processing system having distributed priority network with logic for deactivating information transfer requests
US4745548A (en) * 1984-02-17 1988-05-17 American Telephone And Telegraph Company, At&T Bell Laboratories Decentralized bus arbitration using distributed arbiters having circuitry for latching lockout signals gated from higher priority arbiters
EP0166062B1 (fr) * 1984-06-29 1989-10-25 International Business Machines Corporation Dispositif d'arbitrage d'accès à une ressource partagée
US4612542A (en) * 1984-12-20 1986-09-16 Honeywell Inc. Apparatus for arbitrating between a plurality of requestor elements
US4760515A (en) * 1985-10-28 1988-07-26 International Business Machines Corporation Arbitration apparatus for determining priority of access to a shared bus on a rotating priority basis
US4901234A (en) * 1987-03-27 1990-02-13 International Business Machines Corporation Computer system having programmable DMA control
US5179705A (en) * 1988-03-23 1993-01-12 Dupont Pixel Systems, Ltd. Asynchronous arbiter state machine for arbitrating between operating devices requesting access to a shared resource
US4998030A (en) * 1989-03-15 1991-03-05 Vlsi Technology, Inc. Circuit to arbitrate multiple requests for memory access

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5355931A (en) * 1976-10-29 1978-05-20 Westinghouse Electric Corp Priority selector used for data processor system
JPS5541039A (en) * 1978-09-16 1980-03-22 Nippon Telegr & Teleph Corp <Ntt> Competition arrangement system

Also Published As

Publication number Publication date
WO1992015060A1 (en) 1992-09-03
US5450591A (en) 1995-09-12
JPH05504014A (ja) 1993-06-24
EP0524940A1 (en) 1993-02-03

Similar Documents

Publication Publication Date Title
US5388228A (en) Computer system having dynamically programmable linear/fairness priority arbitration scheme
US5129090A (en) System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration
EP0318221B1 (en) Controlling responding by users of an intercommunications bus
EP0450233B1 (en) Bus access for digital computer system
CA1218467A (en) Arbitration mechanism for assigning control of a communications path in a digital computer system
US5621897A (en) Method and apparatus for arbitrating for a bus to enable split transaction bus protocols
US4130864A (en) Priority selection circuit for multiported central functional unit with automatic priority reduction on excessive port request
US6014729A (en) Shared memory arbitration apparatus and method
JP3596799B2 (ja) バスを動的に制御するシステムおよび方法
US4901234A (en) Computer system having programmable DMA control
US4868742A (en) Input/output bus for system which generates a new header parcel when an interrupted data block transfer between a computer and peripherals is resumed
JP2613005B2 (ja) デバイスのアービトレーション優先レベルを切り換える方法並びに多優先レベルのアービトレーションを行うためのアダプタ及びシステム
CN101263465B (zh) 用于总线仲裁的方法和系统
JPH02219156A (ja) アクセス優先順位決定装置およびバス・アービタ
EP0106879B1 (en) Method and apparatus for limiting bus utilization
CA2121720A1 (en) Reservation overriding normal prioritization of microprocessors in multiprocessing computer systems
US4896266A (en) Bus activity sequence controller
JPH0727507B2 (ja) チャネル選択アービトレーション
US7543093B2 (en) Method and system for stream burst data transfer
US5038274A (en) Interrupt servicing and command acknowledgement system using distributed arbitration apparatus and shared bus
US6889283B2 (en) Method and system to promote arbitration priority in a buffer queue
JPH0696014A (ja) バス使用優先順位制御装置
JPS636891B2 (ja)
EP0283580B1 (en) Computer system with direct memory access channel arbitration
KR100583455B1 (ko) 프로그램 가능한 간단한 하드웨어 구조를 갖는 버스 중재기