JP2765484B2 - システムバス制御回路 - Google Patents
システムバス制御回路Info
- Publication number
- JP2765484B2 JP2765484B2 JP6154388A JP15438894A JP2765484B2 JP 2765484 B2 JP2765484 B2 JP 2765484B2 JP 6154388 A JP6154388 A JP 6154388A JP 15438894 A JP15438894 A JP 15438894A JP 2765484 B2 JP2765484 B2 JP 2765484B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- bus
- bit
- arbiter
- control circuit
- 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
Links
Landscapes
- Bus Control (AREA)
Description
【0001】
【産業上の利用分野】本発明はシステムバス制御回路に
関し、特に高スループットが要求されるマルチプロセッ
サシステム等におけるシステムバスのアービトレーショ
ン方式に関する。
関し、特に高スループットが要求されるマルチプロセッ
サシステム等におけるシステムバスのアービトレーショ
ン方式に関する。
【0002】
【従来の技術】従来、この種のシステムバスにおいて
は、接続された複数のノード各々に同一論理のバス使用
権調停回路を有し、ラウンドロビンアルゴリズムを用い
て並列にアービトレーションを行っている。
は、接続された複数のノード各々に同一論理のバス使用
権調停回路を有し、ラウンドロビンアルゴリズムを用い
て並列にアービトレーションを行っている。
【0003】このシステムバスにおいて、あるノードが
一度バス使用権を獲得すると、バス獲得ポインタが変更
され、そのノードよりも優先度の高いノードからのリク
エストが存在する限り、そのノードがリクエストを獲得
することができないようになっている。
一度バス使用権を獲得すると、バス獲得ポインタが変更
され、そのノードよりも優先度の高いノードからのリク
エストが存在する限り、そのノードがリクエストを獲得
することができないようになっている。
【0004】
【発明が解決しようとする課題】上述した従来のシステ
ムバスのアービトレーション方式では、システムバスに
接続されるノード数が増加するにつれて、各ノードがバ
ス使用権を獲得できるまでの待ち時間が増加してしま
う。
ムバスのアービトレーション方式では、システムバスに
接続されるノード数が増加するにつれて、各ノードがバ
ス使用権を獲得できるまでの待ち時間が増加してしま
う。
【0005】また、あるノードのリクエストが被要求元
の都合、例えばメモリユニットにおけるバンクビジー等
でキャンセルされた場合、要求元のノードが再度同じリ
クエストを発行しても、要求元のノードの優先度が高く
なるまでに時間がかかるので、そのリクエストをなかな
か処理することができなくなる危険がある。
の都合、例えばメモリユニットにおけるバンクビジー等
でキャンセルされた場合、要求元のノードが再度同じリ
クエストを発行しても、要求元のノードの優先度が高く
なるまでに時間がかかるので、そのリクエストをなかな
か処理することができなくなる危険がある。
【0006】そこで、本発明の目的は上記の問題点を解
消し、リクエストが被要求元の都合によってキャンセル
されたときでも、そのリクエストに関するバス使用権の
獲得までの待ち時間を短縮することができるシステムバ
ス制御回路を提供することにある。
消し、リクエストが被要求元の都合によってキャンセル
されたときでも、そのリクエストに関するバス使用権の
獲得までの待ち時間を短縮することができるシステムバ
ス制御回路を提供することにある。
【0007】
【課題を解決するための手段】本発明によるシステムバ
ス制御回路は、同一論理のバス使用権調停回路を有しか
つラウンドロビンアルゴリズムを用いて並列にアービト
レーションを行う複数のノードが接続されるシステムバ
スの制御回路であって、バス使用権獲得後の他のノード
からのリクエスト要求に対して自回路の都合によるキャ
ンセルを示すリクエスト受信拒絶を通知する手段と、前
記リクエスト受信拒絶の受信時に他のノードへのバス使
用権獲得のためのリクエスト要求にそのリクエスト要求
が前記リクエスト受信拒絶による再発行を示すリトライ
ビットを付加して送出する手段と、他のノードからのバ
ス使用権獲得のためのリクエスト要求に前記リトライビ
ットが付加されているときに当該他のノードに対して優
先的にバス使用権を与えるよう制御する手段とを前記複
数のノード各々に備えている。
ス制御回路は、同一論理のバス使用権調停回路を有しか
つラウンドロビンアルゴリズムを用いて並列にアービト
レーションを行う複数のノードが接続されるシステムバ
スの制御回路であって、バス使用権獲得後の他のノード
からのリクエスト要求に対して自回路の都合によるキャ
ンセルを示すリクエスト受信拒絶を通知する手段と、前
記リクエスト受信拒絶の受信時に他のノードへのバス使
用権獲得のためのリクエスト要求にそのリクエスト要求
が前記リクエスト受信拒絶による再発行を示すリトライ
ビットを付加して送出する手段と、他のノードからのバ
ス使用権獲得のためのリクエスト要求に前記リトライビ
ットが付加されているときに当該他のノードに対して優
先的にバス使用権を与えるよう制御する手段とを前記複
数のノード各々に備えている。
【0008】本発明による他のシステムバス制御回路
は、上記の構成のほかに、前記複数のノードに接続され
かつ前記リトライビットを含むリクエスト要求を伝送す
るリクエスト線と、前記複数のノードに接続されかつ前
記リクエスト受信拒絶を通知するリクエスト受信拒絶信
号線とを具備している。
は、上記の構成のほかに、前記複数のノードに接続され
かつ前記リトライビットを含むリクエスト要求を伝送す
るリクエスト線と、前記複数のノードに接続されかつ前
記リクエスト受信拒絶を通知するリクエスト受信拒絶信
号線とを具備している。
【0009】
【作用】リクエスト受信拒絶通知信号線によってその直
前に送出したリクエストがキャンセルされると、そのリ
クエストの再発行時に少なくともリトライビットをアド
レスバス要求ビットまたはデータバス要求ビットに付加
して出力する。
前に送出したリクエストがキャンセルされると、そのリ
クエストの再発行時に少なくともリトライビットをアド
レスバス要求ビットまたはデータバス要求ビットに付加
して出力する。
【0010】各ノードのアービタはリクエスト線上のリ
クエストのアドレスバス要求ビットまたはデータバス要
求ビットに少なくともリトライビットが付加されていれ
ば、そのリクエストに対して優先的にバス使用権を与え
るよう制御する。
クエストのアドレスバス要求ビットまたはデータバス要
求ビットに少なくともリトライビットが付加されていれ
ば、そのリクエストに対して優先的にバス使用権を与え
るよう制御する。
【0011】これによって、リクエストが被要求元の都
合によってキャンセルされたときでも、そのリクエスト
に関するバス使用権の獲得までの待ち時間を短縮するこ
とが可能となる。
合によってキャンセルされたときでも、そのリクエスト
に関するバス使用権の獲得までの待ち時間を短縮するこ
とが可能となる。
【0012】
【実施例】次に、本発明の一実施例について図面を参照
して説明する。
して説明する。
【0013】図1は本発明の一実施例の構成を示すブロ
ック図である。図において、ノード1はリクエスト送出
制御回路2と、アービタ3と、データ受信回路4と、デ
ータ転送キュー5と、リクエスト受信回路6と、リクエ
ストキュー7と、レジスタ8〜17とから構成されてい
る。
ック図である。図において、ノード1はリクエスト送出
制御回路2と、アービタ3と、データ受信回路4と、デ
ータ転送キュー5と、リクエスト受信回路6と、リクエ
ストキュー7と、レジスタ8〜17とから構成されてい
る。
【0014】本発明によるシステムバスは、各々独立に
配設されたアドレスバス101とコマンドバス102と
データバス103とリクエスト線104とリクエスト受
信拒絶通知信号線105とから構成されている。尚、リ
クエスト線104上のリクエストは優先ビットとリトラ
イビットとアドレスバス要求ビットとデータバス要求ビ
ットとからなる4ビットの情報で表される。
配設されたアドレスバス101とコマンドバス102と
データバス103とリクエスト線104とリクエスト受
信拒絶通知信号線105とから構成されている。尚、リ
クエスト線104上のリクエストは優先ビットとリトラ
イビットとアドレスバス要求ビットとデータバス要求ビ
ットとからなる4ビットの情報で表される。
【0015】リクエスト送出制御回路2はデータ転送キ
ュー5に転送すべきデータ及びデータ識別子が格納され
ると、レジスタ16を介してリクエスト線104にデー
タバス103を獲得すべくバス使用権獲得要求を出力す
る。
ュー5に転送すべきデータ及びデータ識別子が格納され
ると、レジスタ16を介してリクエスト線104にデー
タバス103を獲得すべくバス使用権獲得要求を出力す
る。
【0016】また、リクエスト送出制御回路2はリクエ
ストキュー7にリクエストコマンド及びリクエストアド
レスが格納されると、レジスタ16を介してリクエスト
線104にアドレスバス101及びコマンドバス102
を獲得すべくバス使用権獲得要求を出力する。
ストキュー7にリクエストコマンド及びリクエストアド
レスが格納されると、レジスタ16を介してリクエスト
線104にアドレスバス101及びコマンドバス102
を獲得すべくバス使用権獲得要求を出力する。
【0017】さらに、リクエスト送出制御回路2はリク
エスト受信拒絶通知信号線105によってその直前に送
出したリクエストが被要求元の都合、例えばバンクビジ
ー等によってキャンセルされると、同じリクエストの再
発行を行うときにリトライビットをアドレスバス要求ビ
ットまたはデータバス要求ビットに付加して出力するよ
う制御する。
エスト受信拒絶通知信号線105によってその直前に送
出したリクエストが被要求元の都合、例えばバンクビジ
ー等によってキャンセルされると、同じリクエストの再
発行を行うときにリトライビットをアドレスバス要求ビ
ットまたはデータバス要求ビットに付加して出力するよ
う制御する。
【0018】アービタ3は他のノードのアービタ(図示
せず)と同一論理のバス使用権調停回路であり、レジス
タ17を介して入力される自ノード及び他のノードのバ
ス使用権獲得要求に対して他のノードのアービタととも
に分散アービトレーションを行い、バス使用権獲得の有
無をリクエスト送出制御回路2に出力する。
せず)と同一論理のバス使用権調停回路であり、レジス
タ17を介して入力される自ノード及び他のノードのバ
ス使用権獲得要求に対して他のノードのアービタととも
に分散アービトレーションを行い、バス使用権獲得の有
無をリクエスト送出制御回路2に出力する。
【0019】また、アービタ3はリクエスト線104上
のリクエストのアドレスバス要求ビットとデータバス要
求ビットとに優先ビット及びリトライビットが付加され
ていれば、そのリクエストに対して最優先でバス使用権
を与えるよう制御する。
のリクエストのアドレスバス要求ビットとデータバス要
求ビットとに優先ビット及びリトライビットが付加され
ていれば、そのリクエストに対して最優先でバス使用権
を与えるよう制御する。
【0020】データ受信回路4はレジスタ8を介してデ
ータバス103に、レジスタ9を介してコマンドバス1
02に夫々接続されている。すなわち、データ受信回路
4はレジスタ8を介してデータバス103からデータを
受信するとともに、レジスタ9を介してコマンドバス1
02からデータ識別子を受信する。
ータバス103に、レジスタ9を介してコマンドバス1
02に夫々接続されている。すなわち、データ受信回路
4はレジスタ8を介してデータバス103からデータを
受信するとともに、レジスタ9を介してコマンドバス1
02からデータ識別子を受信する。
【0021】データ転送キュー5はレジスタ10を介し
てデータバス103に、レジスタ11を介してコマンド
バス102に夫々接続されている。すなわち、データ転
送キュー5はレジスタ10を介してデータバス103に
データを送出するとともに、レジスタ11を介してコマ
ンドバス102にデータ識別子を送出する。
てデータバス103に、レジスタ11を介してコマンド
バス102に夫々接続されている。すなわち、データ転
送キュー5はレジスタ10を介してデータバス103に
データを送出するとともに、レジスタ11を介してコマ
ンドバス102にデータ識別子を送出する。
【0022】リクエスト受信回路6はレジスタ12を介
してコマンドバス102に、レジスタ13を介してアド
レスバス101に夫々接続されている。すなわち、リク
エスト受信回路6はレジスタ12を介してコマンドバス
102からリクエストコマンドを受信するとともに、レ
ジスタ13を介してアドレスバス101からリクエスト
アドレスを受信する。
してコマンドバス102に、レジスタ13を介してアド
レスバス101に夫々接続されている。すなわち、リク
エスト受信回路6はレジスタ12を介してコマンドバス
102からリクエストコマンドを受信するとともに、レ
ジスタ13を介してアドレスバス101からリクエスト
アドレスを受信する。
【0023】リクエストキュー7はレジスタ14を介し
てコマンドバス102に、レジスタ15を介してアドレ
スバス101に夫々接続されている。すなわち、リクエ
ストキュー7はレジスタ14を介してコマンドバス10
2にリクエストコマンドを送出するとともに、レジスタ
15を介してアドレスバス101にリクエストアドレス
を送出する。
てコマンドバス102に、レジスタ15を介してアドレ
スバス101に夫々接続されている。すなわち、リクエ
ストキュー7はレジスタ14を介してコマンドバス10
2にリクエストコマンドを送出するとともに、レジスタ
15を介してアドレスバス101にリクエストアドレス
を送出する。
【0024】図2は図1のリクエスト線104の構成を
示す図である。図において、リクエスト線104上の各
ノード#0〜#nからのリクエストは優先ビットとリト
ライビットとアドレスバス要求ビットとデータバス要求
ビットとからなる4ビットの情報で表される。
示す図である。図において、リクエスト線104上の各
ノード#0〜#nからのリクエストは優先ビットとリト
ライビットとアドレスバス要求ビットとデータバス要求
ビットとからなる4ビットの情報で表される。
【0025】ここで、アドレスバス要求ビット及びデー
タバス要求ビットは夫々各ノード#0〜#nからのアド
レスバス使用権獲得要求及びデータバス使用権獲得要求
を表している。
タバス要求ビットは夫々各ノード#0〜#nからのアド
レスバス使用権獲得要求及びデータバス使用権獲得要求
を表している。
【0026】また、優先ビットとは無条件に優先的にバ
スの使用権を獲得したいノードがアドレスバス使用権獲
得要求及びデータバス使用権獲得要求に付加してアービ
トレーションを要求する場合にアサートされる。
スの使用権を獲得したいノードがアドレスバス使用権獲
得要求及びデータバス使用権獲得要求に付加してアービ
トレーションを要求する場合にアサートされる。
【0027】さらに、リトライビットはあるリクエスト
が被要求元の都合によってキャンセルされ、そのリクエ
スト要求元がそのリクエストを再発行したいときにアド
レスバス使用権獲得要求及びデータバス使用権獲得要求
に付加してアービトレーションを要求する場合にアサー
トされる。
が被要求元の都合によってキャンセルされ、そのリクエ
スト要求元がそのリクエストを再発行したいときにアド
レスバス使用権獲得要求及びデータバス使用権獲得要求
に付加してアービトレーションを要求する場合にアサー
トされる。
【0028】図3は図1のアービタ3の構成を示すブロ
ック図である。図において、アービタ3はデコーダ3
1,32と、アンドゲート33〜44と、アドレスバス
アービタ45〜48と、データバスアービタ49〜52
と、プライオリティアービタ53とから構成されてい
る。
ック図である。図において、アービタ3はデコーダ3
1,32と、アンドゲート33〜44と、アドレスバス
アービタ45〜48と、データバスアービタ49〜52
と、プライオリティアービタ53とから構成されてい
る。
【0029】デコーダ31はリクエスト線104の優先
ビットとリトライビットとをデコードし、そのデコード
結果をアンドゲート33〜44に夫々出力する。すなわ
ち、デコーダ31は優先ビットとリトライビットとがと
もに“0”であることを示す“00”の信号をアンドゲ
ート33〜35に夫々出力する。
ビットとリトライビットとをデコードし、そのデコード
結果をアンドゲート33〜44に夫々出力する。すなわ
ち、デコーダ31は優先ビットとリトライビットとがと
もに“0”であることを示す“00”の信号をアンドゲ
ート33〜35に夫々出力する。
【0030】また、デコーダ31は優先ビットが“0”
で、リトライビットが“1”であることを示す“01”
の信号をアンドゲート36〜38に夫々出力し、優先ビ
ットが“1”で、リトライビットが“0”であることを
示す“10”の信号をアンドゲート39〜41に夫々出
力する。
で、リトライビットが“1”であることを示す“01”
の信号をアンドゲート36〜38に夫々出力し、優先ビ
ットが“1”で、リトライビットが“0”であることを
示す“10”の信号をアンドゲート39〜41に夫々出
力する。
【0031】さらに、デコーダ31は優先ビットとリト
ライビットとがともに“1”であることを示す“11”
の信号をアンドゲート42〜44に夫々出力する。
ライビットとがともに“1”であることを示す“11”
の信号をアンドゲート42〜44に夫々出力する。
【0032】デコーダ32はリクエスト線104のアド
レスバス要求ビットとデータバス要求ビットとをデコー
ドし、そのデコード結果をアンドゲート33〜44に夫
々出力する。
レスバス要求ビットとデータバス要求ビットとをデコー
ドし、そのデコード結果をアンドゲート33〜44に夫
々出力する。
【0033】すなわち、デコーダ32はアドレスバス1
01とデータバス103とを同時に獲得するための要求
を示す“11”の信号をアンドゲート33,36,3
9,42に夫々出力する。
01とデータバス103とを同時に獲得するための要求
を示す“11”の信号をアンドゲート33,36,3
9,42に夫々出力する。
【0034】また、デコーダ32はアドレスバス101
のみを獲得するための要求を示す“10”の信号をアン
ドゲート34,37,40,43に夫々出力する。さら
に、デコーダ32はデータバス103のみを獲得するた
めの要求を示す“01”の信号をアンドゲート35,3
8,41,44に夫々出力する。
のみを獲得するための要求を示す“10”の信号をアン
ドゲート34,37,40,43に夫々出力する。さら
に、デコーダ32はデータバス103のみを獲得するた
めの要求を示す“01”の信号をアンドゲート35,3
8,41,44に夫々出力する。
【0035】アンドゲート33はデコーダ31からの
“00”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ45及びデータバスアービタ49に出力する。すなわ
ち、アンドゲート33は優先ビット及びリトライビット
がともに付加されていないアドレスバス要求ビット及び
データバス要求ビットの入力時に、アドレスバスアービ
タ45及びデータバスアービタ49に“1”を出力す
る。
“00”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ45及びデータバスアービタ49に出力する。すなわ
ち、アンドゲート33は優先ビット及びリトライビット
がともに付加されていないアドレスバス要求ビット及び
データバス要求ビットの入力時に、アドレスバスアービ
タ45及びデータバスアービタ49に“1”を出力す
る。
【0036】アンドゲート34はデコーダ31からの
“00”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ45に出力する。すなわち、アンドゲート34は優先
ビット及びリトライビットがともに付加されていないア
ドレスバス要求ビットの入力時に、アドレスバスアービ
タ45に“1”を出力する。
“00”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ45に出力する。すなわち、アンドゲート34は優先
ビット及びリトライビットがともに付加されていないア
ドレスバス要求ビットの入力時に、アドレスバスアービ
タ45に“1”を出力する。
【0037】アンドゲート35はデコーダ31からの
“00”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
49に出力する。すなわち、アンドゲート35は優先ビ
ット及びリトライビットがともに付加されていないデー
タバス要求ビットの入力時に、データバスアービタ49
に“1”を出力する。
“00”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
49に出力する。すなわち、アンドゲート35は優先ビ
ット及びリトライビットがともに付加されていないデー
タバス要求ビットの入力時に、データバスアービタ49
に“1”を出力する。
【0038】アンドゲート36はデコーダ31からの
“01”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ46及びデータバスアービタ50に出力する。すなわ
ち、アンドゲート36はリトライビットが付加されたア
ドレスバス要求ビット及びデータバス要求ビットの入力
時に、アドレスバスアービタ46及びデータバスアービ
タ50に“1”を出力する。
“01”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ46及びデータバスアービタ50に出力する。すなわ
ち、アンドゲート36はリトライビットが付加されたア
ドレスバス要求ビット及びデータバス要求ビットの入力
時に、アドレスバスアービタ46及びデータバスアービ
タ50に“1”を出力する。
【0039】アンドゲート37はデコーダ31からの
“01”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ46に出力する。すなわち、アンドゲート37はリト
ライビットが付加されたアドレスバス要求ビットの入力
時に、アドレスバスアービタ46に“1”を出力する。
“01”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ46に出力する。すなわち、アンドゲート37はリト
ライビットが付加されたアドレスバス要求ビットの入力
時に、アドレスバスアービタ46に“1”を出力する。
【0040】アンドゲート38はデコーダ31からの
“01”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
50に出力する。すなわち、アンドゲート38はリトラ
イビットが付加されたデータバス要求ビットの入力時
に、データバスアービタ50に“1”を出力する。
“01”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
50に出力する。すなわち、アンドゲート38はリトラ
イビットが付加されたデータバス要求ビットの入力時
に、データバスアービタ50に“1”を出力する。
【0041】アンドゲート39はデコーダ31からの
“10”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ47及びデータバスアービタ51に出力する。すなわ
ち、アンドゲート39は優先ビットが付加されたアドレ
スバス要求ビット及びデータバス要求ビットの入力時
に、アドレスバスアービタ47及びデータバスアービタ
51に“1”を出力する。
“10”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ47及びデータバスアービタ51に出力する。すなわ
ち、アンドゲート39は優先ビットが付加されたアドレ
スバス要求ビット及びデータバス要求ビットの入力時
に、アドレスバスアービタ47及びデータバスアービタ
51に“1”を出力する。
【0042】アンドゲート40はデコーダ31からの
“10”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ47に出力する。すなわち、アンドゲート40は優先
ビットが付加されたアドレスバス要求ビットの入力時
に、アドレスバスアービタ47に“1”を出力する。
“10”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ47に出力する。すなわち、アンドゲート40は優先
ビットが付加されたアドレスバス要求ビットの入力時
に、アドレスバスアービタ47に“1”を出力する。
【0043】アンドゲート41はデコーダ31からの
“10”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
51に出力する。すなわち、アンドゲート41は優先ビ
ットが付加されたデータバス要求ビットの入力時に、デ
ータバスアービタ51に“1”を出力する。
“10”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
51に出力する。すなわち、アンドゲート41は優先ビ
ットが付加されたデータバス要求ビットの入力時に、デ
ータバスアービタ51に“1”を出力する。
【0044】アンドゲート42はデコーダ31からの
“11”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ48及びデータバスアービタ52に出力する。すなわ
ち、アンドゲート42は優先ビット及びリトライビット
がともに付加されたアドレスバス要求ビット及びデータ
バス要求ビットの入力時に、アドレスバスアービタ48
及びデータバスアービタ52に“1”を出力する。
“11”の信号と、デコーダ32からの“11”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ48及びデータバスアービタ52に出力する。すなわ
ち、アンドゲート42は優先ビット及びリトライビット
がともに付加されたアドレスバス要求ビット及びデータ
バス要求ビットの入力時に、アドレスバスアービタ48
及びデータバスアービタ52に“1”を出力する。
【0045】アンドゲート43はデコーダ31からの
“11”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ48に出力する。すなわち、アンドゲート43は優先
ビット及びリトライビットがともに付加されたアドレス
バス要求ビットの入力時に、アドレスバスアービタ48
に“1”を出力する。
“11”の信号と、デコーダ32からの“10”の信号
とのアンドをとり、その演算結果をアドレスバスアービ
タ48に出力する。すなわち、アンドゲート43は優先
ビット及びリトライビットがともに付加されたアドレス
バス要求ビットの入力時に、アドレスバスアービタ48
に“1”を出力する。
【0046】アンドゲート44はデコーダ31からの
“11”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
52に出力する。すなわち、アンドゲート44は優先ビ
ット及びリトライビットがともに付加されたデータバス
要求ビットの入力時に、データバスアービタ52に
“1”を出力する。
“11”の信号と、デコーダ32からの“01”の信号
とのアンドをとり、その演算結果をデータバスアービタ
52に出力する。すなわち、アンドゲート44は優先ビ
ット及びリトライビットがともに付加されたデータバス
要求ビットの入力時に、データバスアービタ52に
“1”を出力する。
【0047】アドレスバスアービタ45は優先ビット及
びリトライビットがともに“0”である場合の各ノード
からのアドレスバス101の使用権獲得要求に対するア
ービトレーションを行う。
びリトライビットがともに“0”である場合の各ノード
からのアドレスバス101の使用権獲得要求に対するア
ービトレーションを行う。
【0048】アドレスバスアービタ46は優先ビットが
“0”で、リトライビットが“1”である場合の各ノー
ドからのアドレスバス101の使用権獲得要求に対する
アービトレーションを行う。
“0”で、リトライビットが“1”である場合の各ノー
ドからのアドレスバス101の使用権獲得要求に対する
アービトレーションを行う。
【0049】アドレスバスアービタ47は優先ビットが
“1”で、リトライビットが“0”である場合の各ノー
ドからのアドレスバス101の使用権獲得要求に対する
アービトレーションを行う。
“1”で、リトライビットが“0”である場合の各ノー
ドからのアドレスバス101の使用権獲得要求に対する
アービトレーションを行う。
【0050】アドレスバスアービタ48は優先ビット及
びトライビットがともに“1”である場合の各ノードか
らのアドレスバス101の使用権獲得要求に対するアー
ビトレーションを行う。
びトライビットがともに“1”である場合の各ノードか
らのアドレスバス101の使用権獲得要求に対するアー
ビトレーションを行う。
【0051】データバスアービタ49は優先ビット及び
リトライビットがともに“0”である場合の各ノードか
らのデータバス103の使用権獲得要求に対するアービ
トレーションを行う。
リトライビットがともに“0”である場合の各ノードか
らのデータバス103の使用権獲得要求に対するアービ
トレーションを行う。
【0052】データバスアービタ50は優先ビットが
“0”で、リトライビットが“1”である場合の各ノー
ドからのデータバス103の使用権獲得要求に対するア
ービトレーションを行う。
“0”で、リトライビットが“1”である場合の各ノー
ドからのデータバス103の使用権獲得要求に対するア
ービトレーションを行う。
【0053】データバスアービタ51は優先ビットが
“1”で、リトライビットが“0”である場合の各ノー
ドからのデータバス103の使用権獲得要求に対するア
ービトレーションを行う。
“1”で、リトライビットが“0”である場合の各ノー
ドからのデータバス103の使用権獲得要求に対するア
ービトレーションを行う。
【0054】データバスアービタ52は優先ビット及び
リトライビットがともに“1”である場合の各ノードか
らのデータバス103の使用権獲得要求に対するアービ
トレーションを行う。
リトライビットがともに“1”である場合の各ノードか
らのデータバス103の使用権獲得要求に対するアービ
トレーションを行う。
【0055】プライオリティアービタ53はアドレスバ
スアービタ45〜48及びデータバスアービタ49〜5
2各々の調停結果を予め設定された優先順位にしたがっ
てさらに調停づけをする。
スアービタ45〜48及びデータバスアービタ49〜5
2各々の調停結果を予め設定された優先順位にしたがっ
てさらに調停づけをする。
【0056】このプライオリティアービタ53では優先
順位が、「優先ビットとリトライビットとがともに
“1”の場合」>「優先ビットが“1”で、リトライビ
ットが“0”の場合」>「優先ビットが“0”で、リト
ライビットが“1”の場合」>「優先ビットとリトライ
ビットとがともに“0”の場合」と設定されており、ア
ドレスバスアービタ45〜48及びデータバスアービタ
49〜52各々の調停結果を次のような順位で調停す
る。
順位が、「優先ビットとリトライビットとがともに
“1”の場合」>「優先ビットが“1”で、リトライビ
ットが“0”の場合」>「優先ビットが“0”で、リト
ライビットが“1”の場合」>「優先ビットとリトライ
ビットとがともに“0”の場合」と設定されており、ア
ドレスバスアービタ45〜48及びデータバスアービタ
49〜52各々の調停結果を次のような順位で調停す
る。
【0057】つまり、アドレスバスアービタ48及びデ
ータバスアービタ52の調停結果>アドレスバスアービ
タ47及びデータバスアービタ51の調停結果>アドレ
スバスアービタ46及びデータバスアービタ50の調停
結果>アドレスバスアービタ45及びデータバスアービ
タ49の調停結果という順位でプライオリティアービタ
53での優先度が決定される。
ータバスアービタ52の調停結果>アドレスバスアービ
タ47及びデータバスアービタ51の調停結果>アドレ
スバスアービタ46及びデータバスアービタ50の調停
結果>アドレスバスアービタ45及びデータバスアービ
タ49の調停結果という順位でプライオリティアービタ
53での優先度が決定される。
【0058】尚、プライオリティアービタ53では高位
のアービタの出力がアドレスバス101及びデータバス
102のどちらかしか使用しないことを表している場
合、空いているほうのバスの使用権獲得ノードを優先順
位が次位のアービタ出力によって決定する。
のアービタの出力がアドレスバス101及びデータバス
102のどちらかしか使用しないことを表している場
合、空いているほうのバスの使用権獲得ノードを優先順
位が次位のアービタ出力によって決定する。
【0059】また、プライオリティアービタ53では優
先ビットとリトライビットとの各組合せにおける優先ノ
ード位置を示すポインタは夫々独立に管理される。
先ビットとリトライビットとの各組合せにおける優先ノ
ード位置を示すポインタは夫々独立に管理される。
【0060】したがって、リクエストが被要求元の都合
によってキャンセルされたときにそのリクエストを再発
行する場合にアドレスバス使用権獲得要求及びデータバ
ス使用権獲得要求に優先ビットとリトライビットとを付
加してアービトレーションを要求すれば、そのリクエス
トは最優先でバス使用権を獲得することができる。
によってキャンセルされたときにそのリクエストを再発
行する場合にアドレスバス使用権獲得要求及びデータバ
ス使用権獲得要求に優先ビットとリトライビットとを付
加してアービトレーションを要求すれば、そのリクエス
トは最優先でバス使用権を獲得することができる。
【0061】このように、他のノードへのリクエスト要
求に対してリクエスト受信拒絶が通知されたときそのリ
クエスト要求に再発行を示すリトライビットを付加して
送出し、他のノードからのリクエスト要求にリトライビ
ットが付加されているときにそのノードに対して優先的
にバス使用権を与えるよう制御することによって、リク
エストが被要求元の都合によってキャンセルされたとき
でも、そのリクエストに関するバス使用権の獲得までの
待ち時間を短縮することができる。
求に対してリクエスト受信拒絶が通知されたときそのリ
クエスト要求に再発行を示すリトライビットを付加して
送出し、他のノードからのリクエスト要求にリトライビ
ットが付加されているときにそのノードに対して優先的
にバス使用権を与えるよう制御することによって、リク
エストが被要求元の都合によってキャンセルされたとき
でも、そのリクエストに関するバス使用権の獲得までの
待ち時間を短縮することができる。
【0062】
【発明の効果】以上説明したように本発明によれば、他
のノードへのリクエスト要求に対してリクエスト受信拒
絶が通知されてきたときに他のノードへのリクエスト要
求にそのリクエスト要求の再発行を示すリトライビット
を付加して送出し、他のノードからのリクエスト要求に
リトライビットが付加されているときにそのノードに対
して優先的にバス使用権を与えるよう制御することによ
って、リクエストが被要求元の都合によってキャンセル
されたときでも、そのリクエストに関するバス使用権の
獲得までの待ち時間を短縮することができるという効果
がある。
のノードへのリクエスト要求に対してリクエスト受信拒
絶が通知されてきたときに他のノードへのリクエスト要
求にそのリクエスト要求の再発行を示すリトライビット
を付加して送出し、他のノードからのリクエスト要求に
リトライビットが付加されているときにそのノードに対
して優先的にバス使用権を与えるよう制御することによ
って、リクエストが被要求元の都合によってキャンセル
されたときでも、そのリクエストに関するバス使用権の
獲得までの待ち時間を短縮することができるという効果
がある。
【図1】本発明の一実施例の構成を示すブロック図であ
る。
る。
【図2】図1のリクエスト線の構成を示す図である。
【図3】図1のアービタの構成を示すブロック図であ
る。
る。
1 ノード 2 リクエスト送出制御回路 3 アービタ 4 データ受信回路 5 データ転送キュー 6 リクエスト受信回路 7 リクエストキュー 31,32 デコーダ 33〜44 アンドゲート 45〜48 アドレスバスアービタ 49〜52 データバスアービタ 53 プライオリティアービタ
Claims (3)
- 【請求項1】 同一論理のバス使用権調停回路を有しか
つラウンドロビンアルゴリズムを用いて並列にアービト
レーションを行う複数のノードが接続されるシステムバ
スの制御回路であって、バス使用権獲得後の他のノード
からのリクエスト要求に対して自回路の都合によるキャ
ンセルを示すリクエスト受信拒絶を通知する手段と、前
記リクエスト受信拒絶の受信時に他のノードへのバス使
用権獲得のためのリクエスト要求にそのリクエスト要求
が前記リクエスト受信拒絶による再発行を示すリトライ
ビットを付加して送出する手段と、他のノードからのバ
ス使用権獲得のためのリクエスト要求に前記リトライビ
ットが付加されているときに当該他のノードに対して優
先的にバス使用権を与えるよう制御する手段とを前記複
数のノード各々に有することを特徴とするシステムバス
制御回路。 - 【請求項2】 前記複数のノードに接続されかつ前記リ
トライビットを含むリクエスト要求を伝送するリクエス
ト線と、前記複数のノードに接続されかつ自回路の都合
によって前記リクエスト受信拒絶を通知するリクエスト
受信拒絶信号線とを含むことを特徴とする請求項1記載
のシステムバス制御回路。 - 【請求項3】 前記リクエスト線は、少なくとも前記リ
トライビットと優先ビットとアドレスバス要求ビットと
データバス要求ビットとからなる信号を伝送するよう構
成されたことを特徴とする請求項2記載のシステムバス
制御回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6154388A JP2765484B2 (ja) | 1994-07-06 | 1994-07-06 | システムバス制御回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6154388A JP2765484B2 (ja) | 1994-07-06 | 1994-07-06 | システムバス制御回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0822434A JPH0822434A (ja) | 1996-01-23 |
JP2765484B2 true JP2765484B2 (ja) | 1998-06-18 |
Family
ID=15583051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6154388A Expired - Lifetime JP2765484B2 (ja) | 1994-07-06 | 1994-07-06 | システムバス制御回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2765484B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050120565A (ko) * | 2004-06-17 | 2005-12-22 | 인텔 코오퍼레이션 | 전력-관리된 리소스들을 공유하는 디바이스들 간의 전력상태 조정 |
US7130943B2 (en) * | 2004-09-30 | 2006-10-31 | Freescale Semiconductor, Inc. | Data processing system with bus access retraction |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56164430A (en) * | 1980-05-22 | 1981-12-17 | Toshiba Corp | Control system for interrupting priority |
JPH036649A (ja) * | 1989-06-02 | 1991-01-14 | Nec Eng Ltd | データ処理装置 |
JPH0352052A (ja) * | 1989-07-20 | 1991-03-06 | Meidensha Corp | マルチcpuシステムのバス調停方式 |
-
1994
- 1994-07-06 JP JP6154388A patent/JP2765484B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0822434A (ja) | 1996-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0779583B1 (en) | Method and apparatus for coherency reporting in a multiprocessing system | |
US5850530A (en) | Method and apparatus for improving bus efficiency by enabling arbitration based upon availability of completion data | |
US5764929A (en) | Method and apparatus for improving bus bandwidth by reducing redundant access attempts | |
US8082378B1 (en) | Master and slave side arbitrators associated with programmable chip system components | |
US6286068B1 (en) | Queued arbitration mechanism for data processing system | |
US5588122A (en) | Universal buffered interface for coupling multiple processors memory units, and I/O interfaces to a common high-speed interconnect | |
US7093079B2 (en) | Snoop filter bypass | |
EP0370018B1 (en) | Apparatus and method for determining access to a bus | |
US6823411B2 (en) | N-way psuedo cross-bar having an arbitration feature using discrete processor local busses | |
US20020199052A1 (en) | System and method for controlling bus arbitration during cache memory burst cycles | |
US6012116A (en) | Apparatus and method for controlling data, address, and enable buses within a microprocessor | |
JP2003281082A (ja) | 二バス間のトランザクションを制御する再試行方法 | |
US5659708A (en) | Cache coherency in a multiprocessing system | |
CA2116826C (en) | Data processing system using a non-multiplexed, asynchronous address/data bus system | |
US5640519A (en) | Method and apparatus to improve latency experienced by an agent under a round robin arbitration scheme | |
US6275890B1 (en) | Low latency data path in a cross-bar switch providing dynamically prioritized bus arbitration | |
US5933616A (en) | Multiple bus system bus arbitration according to type of transaction requested and the availability status of the data buffer between the buses | |
US5905878A (en) | Method for controlling access to a computer bus | |
US6826644B1 (en) | Peripheral component interconnect arbiter implementation with dynamic priority scheme | |
JP2765484B2 (ja) | システムバス制御回路 | |
US5926628A (en) | Selectable priority bus arbitration scheme | |
US6625678B1 (en) | Livelock avoidance method | |
US6003104A (en) | High speed modular internal microprocessor bus system | |
US7117281B1 (en) | Circuit, system, and method for data transfer control for enhancing data bus utilization | |
US6003102A (en) | Apparatus and method for arbitrating transactions requiring multiple addresses |