JPH081632B2 - 共有バスを有するデータ処理システムおよびその優先度決定回路 - Google Patents

共有バスを有するデータ処理システムおよびその優先度決定回路

Info

Publication number
JPH081632B2
JPH081632B2 JP63104471A JP10447188A JPH081632B2 JP H081632 B2 JPH081632 B2 JP H081632B2 JP 63104471 A JP63104471 A JP 63104471A JP 10447188 A JP10447188 A JP 10447188A JP H081632 B2 JPH081632 B2 JP H081632B2
Authority
JP
Japan
Prior art keywords
bus
priority
value
bus master
counter
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
JP63104471A
Other languages
English (en)
Other versions
JPH01279354A (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
Priority to JP63104471A priority Critical patent/JPH081632B2/ja
Priority to DE1989622779 priority patent/DE68922779T2/de
Priority to EP19890302579 priority patent/EP0339782B1/en
Priority to CA000595248A priority patent/CA1313414C/en
Publication of JPH01279354A publication Critical patent/JPH01279354A/ja
Publication of JPH081632B2 publication Critical patent/JPH081632B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

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

Description

【発明の詳細な説明】 A.産業上の利用分野 この発明は複数のバス・マスタが共有バスに接続され
ているデータ処理システムに関し、とくにバス使用優先
権を柔軟かつ最適な形で各バス・マスタに与え、バス使
用効率を高めることができるようにしたものである。
B.従来技術 マルチ・プロセツサ・システムやチヤネル・サブシス
テムのように複数のバス・マスタを共有バスで結合した
システムにおいては、同時に2台以上のバス・マスタか
らバス使用要求が出されることがある。その場合、複数
の使用要求に対して、各バス・マスタの持つ優先順位に
基づいて1つのバス・マスタを選択してバス使用を許可
しなければならない。従来、優先権の割当てに関して、
以下の2通りの方法が使われている。
(1)固定優先度方式 バス・マスタにそれぞれあらかじめ固定された優先度
が設定されており、同時に2台以上のバス・マスタから
バス使用要求が出された場合には、その中でも最も高い
優先順位を持つバス・マスタへバス使用許可を与える。
この方式は実現上最も簡単なものであるが、バス・マス
タの数が多い場合にバスの使用効率が低下するという欠
点を持つている。また、優先順位の低いバス・マスタが
いつまでたつてもバスを獲得できないといつた状況が起
こり得る。
(2)順送り(ラウンドロビン)方式 これはバス・マスタにそれぞれ通し番号が与えられ、
その値に従つて優先順位が決定される方式である。この
通し番号をバスの使用にしたがつて変化させ、バス利用
の平均化を図る。しかし、バス・マスタにはDMA(ダイ
レクト・メモリ・アクセス)コントローラのようにデー
タ転送速度が固定で、バス使用要求を出した後の待機時
間が限定されているタイプ(たとえばデイスクからのデ
ータの読出しをDMA転送で行なう場合、バス要求送出後
規定の時間内にバス使用許可を受け取つて転送を終了さ
せなければならない)と、CPU(中央処理装置)のよう
に転送速度・周期が変化するタイプがある。DMAコント
ローラのように、転送終了までの時間が限定されている
タイプのバス・マスタが1台でも含まれていると、この
方式は使えない。
上述の固有優先度方式を採用するバス・システムとし
てはインテル社のMULTIBUS II(商標名)が知られてい
る。またモトローラ社のMC68452は固定優先度方式およ
び順送り方式のいずれかを選択して採用することができ
る。ただし、同時に両方式を採用することはできない。
なお関連する特許文献としては以下のものがある。
特開昭62−9454号公報:バス調停機能をバス・マスタ
に分散させるシステムにおいて各バス・マスタが優先度
を保持するレジスタを具備して固定優先度方式を実現し
ている。
特開昭62−187955号公報:同様のシステムにおいてカ
ウンタを設けて順送り方式を実現する。
しかしながら2つの優先度レジスタとカウンタと比較
器とを用いて優先度を決定することについては従来技術
は何ら示すものではない。
C.発明が解決しようとする問題点 この発明は順送り方式と固定優先度方式の長所を併せ
持つ新規な優先度決定手法を提供することを目的として
いる。
D.問題点を解決するための手段 この発明が適用されるデータ処理システムでは、各バ
ス・マスタが、現在自分に与えられているバス使用優先
度を表わす優先権コードを保持しており、バスを要求す
るときにそのコードのバス調停回路に出力する。バス調
停回路は専用ユニツトとして集中的に調停を行うもので
よいし、各バス・マスタに分散保持されるものでもよ
い。この発明では、各バス・マスタは自分が持てる最高
の優先度を示す最高優先度レジスタ、最低優先度を示す
最低優先度レジスタおよび現在与えられている優先度を
示す要求優先度カウンタを有している。そして1回のバ
ス調停シーケンスごとにカウンタが増分また減分される
ようになつている。カウンタの要求優先度が増分または
減分により最高優先度に近づいていく構成では、要求優
先度を最高優先度と比較し、両者の一致に応じて最低優
先度レジスタの最高優先度をカウンタに転送する。逆に
要求優先度が最低優先度に近づいていく構成では、要求
優先度を最低優先度と比較し、両者の一致に応じて最高
優先度レジスタの最高優先度をカウンタに転送する。
この発明では、各バス・マスタの最高優先度および最
低優先度およびカウンタの内容を任意に設定することが
でき、それらの選びかたに応じて種々の態様でバス調停
を行うことができる。たとえば固定優先度方式を実現す
るには各バス・マスタの最高優先度および最低優先度を
ともにそのバス・マスタに与えられる固定優先度に設定
すればよい。また順送り方式にするには各バス・マスタ
において同一の最高優先度および同一の最低優先度を設
定し、しかも最高優先度のほうがバス・マスタの台数に
見合うだけ最低優先度より大きくし、さらに各バス・マ
スタのカウンタの初期値をずらすようにすればよい。ま
た、一部を固定優先度方式とし、残りを順送り方式とす
ることもできる。
E.実施例 第2図はこの発明の一実施例を全体として示してお
り、この図において、n個のバス・マスタBM1〜BMnが共
有バス・システムに接続されている。バス・システムは
外部データ・バス1、外部アドレス・バス2および調停
バス3を有している。各バス・マスタBM1〜BMnは現在自
分に与えられているバス使用権を表わす優先権コードを
保持しており、バス・システムを使用するときにそのコ
ードを調停バス3に出力する。各バス・マスタBM1〜BMn
は調停制御回路(第7図に4で示す)を有しており、分
散してバス・システムを制御するようになつている。す
なわち、各バス・マスタBM1〜BMnは優先コードを出力し
てバス調停に参加したときに、自らの優先度コードより
大きいときにバス・システムを使用するようになつてい
る。
第1図はバス・マスタBM1の要求優先度決定回路5を
示している。他のバス・マスタBM2〜BMnも同様の要求優
先度決定回路5を有している。第1図において、優先度
決定回路5は最高優先度レジスタ6、最低優先度レジス
タ7、要求優先度カウンタ8および比較器9を有してい
る。最高優先度レジスタ6にはバス・マスタBM1が採り
得る最高の優先度を表わす優先権コードHPCが記憶さ
れ、最低優先度レジスタ7には、バス・マスタBM1が採
り得る最低の優先度を表わす優先権コードLPCが記憶さ
れている。なおこの実施例のバス調停では優先権コード
が小さいほど優先度が高いようになつている。
また要求優先度カウンタ8にはクロツクCLKが入力さ
れ、このクロツクCLKに応じて要求優先度カウンタ8が
カウント・ダウンする。クロツクCLKはバス調停シーケ
ンスでいずれかのバス・マスタがバスの使用権を獲得し
て、バスを使用し始めた時点で1つ発生されるようにな
つている。要求優先度カウンタ8の内容は要求優先度の
優先権コードRPCとして調停バス3および比較器9に供
給される。比較器9は要求優先度の優先権コードRPCと
最高優先度の優先権コードHPCとを比較し、一致したと
きに一致信号を出力する。この一致信号は要求優先度カ
ウンタ8に供給され、この一致信号に基づいてつぎのク
ロツクCLKのタイミングで最低優先度レジスタ7の最低
優先度の優先権コードLPCが要求優先度カウンタ8に転
送されるようになつている。
このような構成においては、調停が終了するごとに要
求優先度の優先権コードRPCは1つずつ減ぜられ、最高
優先度の優先権コードHPCに達したら、再び最低優先度
の優先権コードLPCに戻ることになる。このことは要求
優先度が最高優先度と最低優先度との間で循環すること
を意味する。
つぎにこの実施例の動作を例を挙げて説明する。
簡単のために、1本のバス上に4台のバス・マスタBM
1〜BM4が接続されているシステムを考える。いま、バス
・マスタBM1には常時最も高い優先度(固定優先権コー
ド0)を与えておき、残りのバス・マスタBM2、BM3およ
びBM4には平等に優先度(可変優先権コード1、2およ
び3)を与えたいとする。その場合は、第3図のように
最高優先権コードHPC、最低優先権コードLPC、要求優先
権コードRPCを設定する。即ち、バス・マスタBM1はHP
C、LPCおよびRPCすべてに「0」をセツトし、いつも優
先権コード0のバス使用要求を出せるようにしておく。
バス・マスタBM2、BM3およびBM4にはHPCに「1」、LPC
に「3」をセツトし、バス要求優先権コードが「1」、
「2」、「3」のうちのいずれかになるように、かつ、
RPCが重複しないように初期設定する。
最初に、バス・マスタBM2及びバスマスタBM3から同時
にバス使用要求が出されたとする。バス・マスタBM2は
自分の今現在持つている優先権コード1(RPCの値)を
バス上に出力する。一方、バス・マスタBM3も同じく自
分の持つている優先権コード2を出力する。優先権コー
ドが小さいほど優先度が高いことに取り決めてあるの
で、バス・マスタBM2がバスを獲得し、バスを使用す
る。その後、各バス・マスタBM1〜BM4内のRPCの値は第
4図に示すようになる。
つぎに、再びバス・マスタBM2とバス・マスタBM3から
バス要求が出されたとすると、今度はバス・マスタBM2
のRPCが「3」、バス・マスタBM3のRPCが「1」になつ
ているので、バス・マスタBM3がバスを獲得する。そし
て、各バス・マスタBM1〜BM4のRPCは調停終了後変化
し、第5図に示すように設定される。
もし、以上の例で、バス・マスタBM1もバスを要求し
たとすると、バス・マスタBM1はRPC、HPCおよびLPCが全
て「0」にセツトしてあるので、いつも必ず高い優先度
で(優先権コード0で)バスを獲得することができる。
バス・マスタBM1〜BM4内のRPCの値の時間変化を表1に
まとめて示す。
別の例としてバス・マスタBM1〜BM4に固定した優先度
(バス・マスタBM1>バス・マスタBM2>バス・マスタBM
3>バス・マスタBM4、ただしコードの大小ではこの逆と
なる)を与えたい場合を考えよう。この場合には第6図
に示すように、バス・マスタBM1のHPC、LPCおよびRPCを
「0」に、バス・マスタBM2のそれらを「1」に、バス
・マスタBM3のそれらを「2」に、バス・マスタ4のそ
れらを「3」に設定する。これによつて各バス・マスタ
BM1〜BM4はいつも「0」、「1」、「2」および「3」
の優先権コードをそれぞれ出力する。
なおこの実施例では各バス・マスタBM1〜BM4のHPC、L
PCおよびRPCをシステムの稼動中に書き替えるようにし
てもよい。なお、この例では調停制御機能を各バス・マ
スタが分散して持つようにしたが、集中的に調停制御を
行う構成としてもよい。
第7図は第1図例の要求優先度決定回路5の詳細を調
停制御回路4およびCPU10とともに示すものである。こ
の図において第1図と対応する箇所には対応する符号を
付してその説明を省略する。
第7図において各信号は以下のようなものである。
HPC_LOAD:CPUデータ・バス上のデータを最高優先度レジ
スタにロードするための信号 RPC_LOAD:CPUデータ・バス上のデータを要求優先度カウ
ンタにロードするための信号 LPC_LOAD:CPUデータ・バス上のデータを最低優先度レジ
スタにロードするための信号 Count_lown_clock:バス使用ごとに要求優先度カウンタ
の値を変化させるためのクロツク。第1図のCLKと同じ CPU_RW:CPUの読み出しまたは書込みを示す信号 この例では信号HPC_LOAD、LPC_LOADおよびRPC_LOADに
基づいて最高優先度レジスタ6、最低優先度レジスタ7
および要求優先度カウンタ8にそれぞれ所望のデータが
転送される。そののち各調停シーケンスごとにRPCが小
さくなり、さらにRPCがHPCと等しくなるとRPCはLPCに戻
る。これを第8図に示す。なお、この図から明らかなよ
うにこの例では比較器9から一致信号が出力されるだけ
では要求優先度カウンタ8にデータが転送されない。一
致信号が生じ、かつクロツクCount_down_clockがカウン
タ8に入力されたときにはじめてデータの転送が行われ
るのである。この点に留意すると、つぎのように、カウ
ンタ8の内容すなわち要求優先度が変化することがわか
る。すなわちクロツクCLK1でRPC=HPCとなると、つぎの
調停時にもRPC=HPCを維持し、もし調停に参加するとき
にはRPC=HPCを調停バス3に出力する。この調停終了直
後のクロツクCLK2でLPCが要求優先度カウンタ8に転送
される。こののち以降の調停に応じてRPCがHPCに近づい
ていく。
F.発明の効果 以上説明したようにこの発明によれば極めて簡単な構
成で固定優先度方式、順送り方式およびそれらの混成さ
れた方式で優先権制御を行うことができる。
【図面の簡単な説明】
第1図はこの発明の一実施例の要部を示すブロツク図、
第2図は上述実施例を全体的に示すブロツク図、第3図
〜第6図は上述実施例の動作を説明するための図、第7
図は上述実施例の要部をより詳細に示すブロツク図、第
8図は第7図を説明するためのタイム・チヤートであ
る。 BM1〜BMn……バス・マスタ、3……調停バス、5……要
求優先度決定回路、6……最高優先度レジスタ、7……
最低優先度レジスタ、8……要求優先度カウンタ、9…
…比較器。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】複数のバス・マスタが共有バスに接続さ
    れ、上記バス・マスタが出力する優先権の値に基づいて
    上記共有バスの占有の調停を行うデータ処理システムに
    おいて、 上記バス・マスタは、 当該バス・マスタに与えられた優先権の最高位を表す値
    を記憶する第1レジスタと、 当該バス・マスタに当てられた優先権の最低位を表す値
    を記憶する第2レジスタと、 上記共有バスの共有の調停のたびに一単位増加または減
    少するカウンタを当該バス・マスタの優先権の値として
    出力するカウンタと、 上記カウンタの内容と上記第1レジスタの値とを比較す
    る手段と、 この比較手段からの一致出力に応じて上記カウンタに上
    記第2レジスタの値をセット手段とを有し、 上記バス・マスタの優先度を固定する場合には、上記第
    1レジスタ及び第2レジスタに同じ値がセットされ、 順送り優先度を与える場合には、当該順送り優先度を与
    えるバス・マスタの各上記第1レジスタには最高位を表
    す値が、各上記第2レジスタには当該順送り優先度を与
    えるバス・マスタの数に合わせて上記最高位を表す値よ
    り優先度を低くした最低位を表す値がセットされ、且つ
    当該順送り優先度を与えるバス・マスタの各々のカウン
    タに初期値として異なる値がセットされるデータ処理シ
    ステム。
  2. 【請求項2】上記バス・マスタから出力される優先権の
    値を一括して受け取り集中的に上記共有バスの調停を行
    うバス調停回路を上記バス・マスタと別に設けた特許請
    求の範囲第1項記載の共有バスを有するデータ処理シス
    テム。
  3. 【請求項3】上記バス・マスタの各々が、自己の優先権
    の値及び他のバス・マスタの優先権の値に基づいて上記
    共有バスに対する自己の共有が許容されるかどうかを判
    断するバス調停部を有する特許請求の範囲第1項記載の
    共有バスを有するデータ処理システム。
JP63104471A 1988-04-28 1988-04-28 共有バスを有するデータ処理システムおよびその優先度決定回路 Expired - Lifetime JPH081632B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP63104471A JPH081632B2 (ja) 1988-04-28 1988-04-28 共有バスを有するデータ処理システムおよびその優先度決定回路
DE1989622779 DE68922779T2 (de) 1988-04-28 1989-03-16 Datenverarbeitungssystem mit gemeinsamen Bus.
EP19890302579 EP0339782B1 (en) 1988-04-28 1989-03-16 Shared bus data processing systems
CA000595248A CA1313414C (en) 1988-04-28 1989-03-30 Data processing system having a shared bus and a priority determination circuit therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63104471A JPH081632B2 (ja) 1988-04-28 1988-04-28 共有バスを有するデータ処理システムおよびその優先度決定回路

Publications (2)

Publication Number Publication Date
JPH01279354A JPH01279354A (ja) 1989-11-09
JPH081632B2 true JPH081632B2 (ja) 1996-01-10

Family

ID=14381500

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63104471A Expired - Lifetime JPH081632B2 (ja) 1988-04-28 1988-04-28 共有バスを有するデータ処理システムおよびその優先度決定回路

Country Status (4)

Country Link
EP (1) EP0339782B1 (ja)
JP (1) JPH081632B2 (ja)
CA (1) CA1313414C (ja)
DE (1) DE68922779T2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2625589B2 (ja) * 1991-04-22 1997-07-02 インターナショナル・ビジネス・マシーンズ・コーポレイション マルチプロセッサ・システム
US5710549A (en) * 1994-09-30 1998-01-20 Tandem Computers Incorporated Routing arbitration for shared resources
US5694121A (en) * 1994-09-30 1997-12-02 Tandem Computers Incorporated Latency reduction and routing arbitration for network message routers
WO2002062023A1 (en) 2001-01-31 2002-08-08 Teldix Gmbh Modular and scalable switch and method for the distribution of fast ethernet data frames
US7062582B1 (en) 2003-03-14 2006-06-13 Marvell International Ltd. Method and apparatus for bus arbitration dynamic priority based on waiting period

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54146552A (en) * 1978-05-09 1979-11-15 Mitsubishi Electric Corp Interruption control system
JPS57178520A (en) * 1981-04-28 1982-11-02 Fuji Electric Co Ltd Data transfer control system
JPS59132257A (ja) * 1983-01-19 1984-07-30 Nec Corp 共通バス情報転送方式
US4626843A (en) * 1983-09-27 1986-12-02 Trw Inc. Multi-master communication bus system with parallel bus request arbitration

Also Published As

Publication number Publication date
EP0339782B1 (en) 1995-05-24
EP0339782A3 (en) 1991-08-14
DE68922779T2 (de) 1995-11-30
JPH01279354A (ja) 1989-11-09
DE68922779D1 (de) 1995-06-29
EP0339782A2 (en) 1989-11-02
CA1313414C (en) 1993-02-02

Similar Documents

Publication Publication Date Title
JP3231583B2 (ja) マルチバス・ダイナミック・アービタ
US5623672A (en) Arrangement and method of arbitration for a resource with shared user request signals and dynamic priority assignment
US5388228A (en) Computer system having dynamically programmable linear/fairness priority arbitration scheme
US4602327A (en) Bus master capable of relinquishing bus on request and retrying bus cycle
EP1403773B1 (en) Resource management device
RU2110838C1 (ru) Устройство для оптимизации организации доступа к общей шине во время передачи данных с прямым доступом к памяти
US5710891A (en) Pipelined distributed bus arbitration system
US6073199A (en) History-based bus arbitration with hidden re-arbitration during wait cycles
US4939638A (en) Time sliced vector processing
US5884095A (en) Direct memory access controller having programmable timing
US5842025A (en) Arbitration methods and apparatus
US5901295A (en) Address and data bus arbiter for pipelined transactions on a split bus
GB2366883A (en) Data processing apparatus with a bus system
US5274785A (en) Round robin arbiter circuit apparatus
US5528766A (en) Multiple arbitration scheme
US7013357B2 (en) Arbiter having programmable arbitration points for undefined length burst accesses and method
JP2003281082A (ja) 二バス間のトランザクションを制御する再試行方法
US4896266A (en) Bus activity sequence controller
WO1996013774A1 (en) Multiprocessor system bus protocol for optimized accessing of interleaved storage modules
US5649209A (en) Bus coupling information processing system for multiple access to system bus
KR930002787B1 (ko) 주변 제어기와 어댑터 인터페이스
KR100347473B1 (ko) 버스시스템
US5241661A (en) DMA access arbitration device in which CPU can arbitrate on behalf of attachment having no arbiter
US5931931A (en) Method for bus arbitration in a multiprocessor system
JPH081632B2 (ja) 共有バスを有するデータ処理システムおよびその優先度決定回路