JPH05242048A - マルチ・プロセッサ・システムの直列調停方法およびその装置 - Google Patents

マルチ・プロセッサ・システムの直列調停方法およびその装置

Info

Publication number
JPH05242048A
JPH05242048A JP4418292A JP4418292A JPH05242048A JP H05242048 A JPH05242048 A JP H05242048A JP 4418292 A JP4418292 A JP 4418292A JP 4418292 A JP4418292 A JP 4418292A JP H05242048 A JPH05242048 A JP H05242048A
Authority
JP
Japan
Prior art keywords
bus
signal
processor
request
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.)
Pending
Application number
JP4418292A
Other languages
English (en)
Inventor
Toshizane Kamiya
敏実 神谷
Yuuichi Ikumichi
裕一 生路
Junichi Takai
純一 高井
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.)
Meidensha Corp
Meidensha Electric Manufacturing Co Ltd
Original Assignee
Meidensha Corp
Meidensha Electric Manufacturing Co Ltd
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 Meidensha Corp, Meidensha Electric Manufacturing Co Ltd filed Critical Meidensha Corp
Priority to JP4418292A priority Critical patent/JPH05242048A/ja
Publication of JPH05242048A publication Critical patent/JPH05242048A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 バス許可信号のディジー・チェーンを用いた
直列調停方式を使用したマルチ・プロセッサ・システム
において、均等なバス使用権の分配が可能なようにする
ことにより、システムの安全性を図る。 【構成】 マルチ・プロセッサ・システムの各プロセッ
サ(70)の内部にバス獲得回路(71),バスタイマ
回路(73),およびバス要求信号をクロックに同期さ
せるためのフリップ・フロップ回路(80)を有するデ
ィジー・チェーン回路(72)を設け、プライオリティ
の低いプロセッサでも均等にバスを獲得できるようにす
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロコンピュータ
・システムの構築方法に係り、特に複数のプロセッサを
使用した、マルチ・プロセッサ・システムを構築する場
合の調停方法およびその装置に関するものである。
【0002】
【従来の技術】複数のプロセッサを使用するマルチ・プ
ロセッサ・システムに於いて、システム内に唯一存在す
るシステム・バスをどのプロセッサが使用するのかを判
定する処理のことを調停(アービートレーション)処理
と呼ぶ。
【0003】調停処理には、並列調停方式と直列調停方
式の2種類が広く知られており、通常、これらの内の何
れかまたは、双方を組み合わせた形で利用されている。
並列調停方式は、更に集中調停方式と分散調停方式とが
あるが、ここでは、説明の簡便を図り、集中調停方式を
取り上げて説明する。
【0004】図4は一般の集中型の並列調停方式による
マルチ・プロセッサ・システムを示すもので、図4にお
いて、51はシステムバス、52は調停動作を司どるた
めのアービタ回路、70a〜70nはプロセッサであ
る。また、図4において、53a〜53nは各プロセッ
サがバスの使用を要求するためのバス要求(リクエス
ト)信号、54a〜54nはアービタ回路52によって
調停された結果であるバス許可(グラント)信号、56
は何れかのプロセッサがバスを使用中であることを示す
ビジー信号である。
【0005】このように並列型の調停方式の場合は、プ
ロセッサのバス要求レベル(信号)がプロセッサの数だ
け存在し、これらのレベル間の調停がアービタ回路52
によって行われる。バスの使用を要求するプロセッサ
は、それぞれの持っているバス要求信号53a〜53n
をアサートする。これらの信号は、全てアービタ回路5
2に入力されており、このアービタ回路では、予め定め
られた、プライオリティ(優先)判定ルールに従って、
調停処理を行い、何れか1つのプロセッサに対してバス
許可信号54a〜54nの内の何れかを与える。これに
より、バス許可信号を与えられたプロセッサが次のサイ
クルでバスを使用できる。バス許可信号を与えられたプ
ロセッサは、ビジー信号を監視し、これがネゲートされ
るとバスを使用できる。バスの使用開始と同時に、この
プロセッサがビジー信号をアサートする。
【0006】図5は一般の直列調停方式によるマルチ・
プロセッサ・システムを示し、図5において図4のもの
と同一部材または相当部分10は同一符号が付されてい
るが、55a〜55nは、バス許可(グラント)出力信
号であって、このバス許可出力信号は次のプロセッサの
バス許可入力信号となる。よって、信号55aは信号5
4bと、信号55bは信号54cと、信号55cは信号
54nと同じ信号である。60はバスクロック信号であ
る。
【0007】図に示すように、直列調停方式の場合に
は、複数のプロセッサは、同一のバス要求線に対してバ
ス要求信号を出力する。このため、バス要求のレベルは
単一であることになり、アービタ回路52は、バス要求
信号を折り返すか、または、プロセッサに対するバス許
可信号54aを常にアサートしていてもかまわない。
【0008】バスを要求するプロセッサは、それぞれの
持っているバス要求信号53a〜53nをアサートす
る。これらの信号は、ワイアードORを取られて1本の
バス要求となる。上に述べた様に、バス許可信号54a
は、バス要求が折り返されるか、常にアサートされてい
るので、このシステムでは、プロセッサ70aがバス要
求を出せば必ず次のサイクルでバスを使用できる(ビジ
ー信号がネゲートされればバスの使用を開始できる)。
【0009】プロセッサ70b以降がバスを要求してい
る場合、プロセッサ70aは自分がバス要求を持ってい
ない場合に、バス許可入力信号54aのレベルをバス許
可出力信号55aに伝達する。同様に各プロセッサは自
分がバス要求を出力していない場合にバス許可入力信号
がアクティブになった場合には、バス許可出力信号をア
サートする。
【0010】このルールに従って、バス許可信号が順次
伝達されていくが、バス使用要求を出しているプロセッ
サがこの許可信号を受け取ると、次のサイクルでバスを
使用できることになる。みずからバス要求信号をアサー
トし、バス許可信号を与えられたプロセッサは、ビジー
信号を監視し、これがネゲートされるとバスを使用でき
る。バスの使用開始と同時に、このプロセッサがビジー
信号をアサートする。
【0011】この許可信号の信号伝達方式を、一般にデ
イジー・チェーン方式と呼んでいる。この方式による
と、ある番号のプロセッサは、自分より番号の若いプロ
セッサが全てバスを要求していない場合に限ってバスの
使用権を与えられることになる。言い換えると、このシ
ステムでは、デイジー・チェーン回路の最も上流にある
プロセッサ(本図では、70a)が最も優先度が高く、
デイジー・チェーンの下流になるほど(番号が増える
程)優先度が下がることになる。
【0012】直列調停方式は、上に述べた通り、アービ
タ回路が実際には不要であり、バス要求信号を折り返す
か、またはレベルを固定しても構わないため、非常に簡
単、かつ安価にマルチ・プロセッサ・システムが構築で
きることが特長である。
【0013】ところが、この方式では、バス許可信号の
デイジー・チェーンという方式が用いられるため、各プ
ロセッサの持つデイジー・チェーン回路で信号遅延が生
じ、これが、最終のプロセッサに伝達されるまで調停が
終了しないことから、プロセッサ台数に比例して調停時
間がかかり、プロセッサ台数が多い規模の大きなシステ
ムに不向きであった(プロセッサ数1〜4台程度に有
効)。
【0014】一方、並列調停方式の場合には、集中式の
アービタ回路で一度に優先判定を行うために、調停時間
は、プロセッサの台数にあまり影響を受けず、ほぼ一定
の時間でこれを行うことができる。しかし、各プロセッ
サの他に、複雑なアービタ回路を必要としたり、各プロ
セッサとアービタ回路の間で専用のバス配線を必要とす
るために、物理的、経済的面から、プロセッサの台数に
制限が出てきている。一般的には、中規模のマルチ・プ
ロセッサ・システム(プロセッサ数2〜8台)に適した
方式である。
【0015】これ以上のプロセッサを実装する大規模シ
ステムの場合、上記の直列調停方式と並列調停方式を組
み合わせ、並列調停で調停される各優先レベルのバス許
可信号をデイジー・チェーン接続して、直列接続台数×
並列レベル数のプロセッサを接続する例もある。
【0016】図6は図5のマルチ・プロセッサ・システ
ムのプロセッサ部の構成を詳しく示したもので、71a
〜71nはバス要求の出力とバス獲得判定を行うバス要
求獲得回路、72a〜72nは各プロセッサにおけるバ
ス許可信号のデイジー・チェーン回路、73a〜73n
は各プロセッサにおいてバス使用権を獲得できるまでの
時間を監視するバスタイマ回路である。57a〜57n
は各プロセッサ上のバス・タイマが異常に長い待ち状態
を検出した時に発生するバス・タイムアウト信号であ
る。
【0017】図7は従来の直列調停方式を有する各プロ
セッサ70(70a〜70n)の実際の回路例であっ
て、プロセッサ70は演算処理部74、この演算処理部
74からのバス要求でバスの使用権を獲得するためのバ
ス要求獲得回路71(71a〜71n)、出力バッファ
回路75a,75b、入力バッファ回路76、インバー
ト回路77、およびナンドゲート78aおよび78bを
備えている。
【0018】信号A〜Eはバス上の信号であり、Aはバ
ス要求を示す「BREQ L」信号、Bはバス使用中を
示す「BUSY L」信号、Cはバス許可入力「BGI
NL」信号、Dはバス許可出力「BGOUT L」、E
はバス獲得異常を外部に知らせる「BTOUT L」信
号である。
【0019】まず、演算処理部74がバスを使用する要
求をバス要求獲得回路71に与えると、バス・タイマ回
路73は、「バス要求信号」81をアサートする。する
と、出力バッファ75aによって外部バス信号A(「B
REQ L」信号)が駆動される。
【0020】システム上のアービタ回路によるバス許可
信号(または、この「BREQ L」信号の折り返し)
は、バス信号Cとして、このプロセッサに与えられる。
【0021】信号Cがアクティブになると、すでに信号
81もアクティブであるため、インバーテッドNAND
回路78aによって、信号84がアサートされる。これ
が、「バス獲得信号」である。この信号がアクティブに
なり、かつ回路73を介して監視しているバス上の「B
USY L」信号がインアクティブであると、演算処理
部74はバスを使用することができる。実際にバスの使
用を開始すると、自ら信号81をアクティブとし、出力
バッファ75bによって「BUSY L」信号をアサー
トすることによって、他プロセッサに対し、バスを使用
中であることを知らされる。
【0022】ナンド回路78b部分では、C信号側はア
クティブとなっているが、バス要求信号81は、インバ
ート回路77によってインバートされて与えられている
ために、出力はネゲートされたままである。従って、バ
ス信号Dの「バス許可出力」はアクティブにはならな
い。
【0023】一方このプロセッサがバスを要求中でない
(信号81がインアクティブ)場合にバス許可信号Cが
アクティブになった場合には、ナンド回路78の入力
は、双方ともアクティブ状態になるため、バス信号D
(「BGOUT L」信号)をアサートする。これによ
って、このプロセッサよりもプライオリティの低いプロ
セッサにもバス許可が与えられる。この回路77,78
bがデイジー・チェーン回路である。
【0024】バス・タイマ回路73は、信号81がアク
ティブになってバス要求を出した時点で計時動作に入
り、信号82がアクティブになってバス使用を宣言した
時点でこの動作をS停止する。もし、予め定められた時
間内に、計時動作が停止されない場合は、バス上の信号
E(「BTOUT L」信号)を駆動して外部に異常を
通知する。
【0025】図8は図6と図7に示すマルチ・プロセッ
サ・システムの動作の一例を示すもので、信号名称は、
図6に従っており、各信号は全て「低レベル(Lレベ
ル)」で意味ありとする。この例は、プロセッサ70a
とプロセッサ70bが毎回バスを開放しているものの、
絶えずバスを使用する内部要求を持っているため、交互
にバスを使用してしまって、プロセッサ70c,70n
がいつまで経ってもバスを使用できずにバス・タイムア
ウトを検出している様子を示す。
【0026】図8のタイム・チャート内に付記されてい
る番号順に動作を説明する。
【0027】(1)プロセッサ70aがバスを要求し、
バス要求番号53aをアサートする。
【0028】(2)プロセッサ70bがバスを要求し、
バス要求信号53bをアサートする。
【0029】(3)プロセッサ70cがバスを要求し、
バス要求信号53cをアサートする。プロセッサ70c
のバス・タイマ回路が起動され、計時動作を開始する。
【0030】(4)プロセッサ70nがバスを要求し、
バス要求信号53nをアサートする。プロセッサ70n
のバス・タイマ回路が起動され、計時動作を開始する。
【0031】(5)プロセッサ70aに対するバス許可
信号は、常にアクティブ状態とする。
【0032】(6)プロセッサ70aはバスを獲得した
ので、バス使用を開始し、ビジー信号56をアサートす
る。
【0033】(7)プロセッサ70aはバス要求をネゲ
ートする。
【0034】(8)プロセッサ70aがバス要求をネゲ
ートしたので、プロセッサ70bに対してバス許可信号
が伝達される。
【0035】(9)プロセッサ70aは、バスの使用を
終えるとビジー信号56をネゲートする。この時点でア
クティブなバス要求と許可を有するプロセッサが次にバ
スを獲得する。ここでは、プロセッサ70b,70c,
70nがバス要求を出しているが、バス許可はプロセッ
サ70bに与えられているので、70bが次にバスを使
用できる。
【0036】(10)プロセッサ70bは、バスを獲得
し、バス要求をネゲートする。
【0037】(11)プロセッサ70bのバス要求がネ
ゲートされたので、一旦、プロセッサ70cに対するバ
ス許可信号がアサートされる。
【0038】(12)プロセッサ70bはバスを獲得し
たので、バス使用を開始し、ビジー信号56をアサート
する。
【0039】(13)プロセッサ70aが次のバス要求
をアサートする。
【0040】(14)プロセッサ70bに与えられてい
たバス許可がネゲートされる。
【0041】(15)プロセッサ70cに与えられてい
たバス許可がネゲートされる。
【0042】(16)プロセッサ70bは、バスの使用
を終えるとビジー信号56をネゲートする。この時点で
アクティブなバス要求と許可を有するプロセッサが次に
バスを獲得する。ここでは、プロセッサ70a,70
c,70nがバス要求を出しているが、バス許可はプロ
セッサ70aに与えられているので、70aが次にバス
を使用できる。
【0043】(17)プロセッサ70aはバスを獲得し
たので、バス使用を開始し、ビジー信号56をアサート
する。
【0044】(18)(1)〜(17)の動作が連続す
ると、(3)からバス要求を出し続けているプロセッサ
70cは、いつまでも待ってもバスを獲得できず、この
バス・タイマ回路は、タイムアップして、バス・タイム
アウト信号57cが出力される。
【0045】(19)(1)〜(17)の動作が連続す
ると、(4)からバス要求を出し続けているプロセッサ
70nは、いつまで待ってもバスを獲得できず、このバ
ス・タイマ回路は、タイムアップして、バス・タイムア
ウト信号57cが出力される。
【0046】
【発明が解決しようとする課題】マルチ・プロセッサ・
システムを構築するため調停処理の方式のうち、直列調
停方式は、前述の通り、比較的小規模なしシステムを構
築する場合には、低価格でこれを実現できるために、有
効な手段である。また、大規模なシステムでは、これ
と、並列調停方式を組み合わされた形で使用されるが、
一般的であり、重要性の高い方式である。
【0047】ところが、この方式の場合は、ブライオリ
ティの高いプロセッサがバスを連続して使用している場
合には、プライオリティの低いプロセッサがいつまでも
バスを使用できないという「バス飢餓状態」が発生する
可能性を持っている。
【0048】このため、通常各プロセッサは、連続して
バスを使用し続けることを避けるために、バスサイクル
の実行毎にバスを開放する「毎回バス開放モード」で動
作させる。ところが、この方法を用いても、プライオリ
ティの最も高いプロセッサと次にプライオリティの高い
プロセッサが連続してバスを使用している場合には、こ
の2台のプロセッサが交互にバスを利用できるだけで、
3台目以降のプロセッサはいつまでもバスを使用できず
に、バス・タイムアウト状態になってしまう。
【0049】プロセッサに於けるバス・タイムアウト
は、致命的な異常として扱われ、システムの運用を停止
する要因である。そのため、システム設計者は、このよ
うな「バス飢餓状態」の発生を防ぐために、プロセッサ
の使用台数を制限したり、プロセッサのアプリケーショ
ン上、連続したバス使用がブライオリティの高いプロセ
ッサで発生しないように留意したりする必要があった。
【0050】しかし、この「バス飢餓状態」の回避は、
非同期に発生する複数の事象をそれぞれのプロセッサが
独自に処理するような、リアルタイム処理のためのマル
チ・プロセッサ・システムでは、非常に困難な課題であ
った。
【0051】本発明は上記従来の問題点に鑑みてなされ
たもので、その目的は、上記従来の技術の問題点を解決
することである。
【0052】
【課題を解決するための手段】本発明は、上記目的を達
成するために、複数のプロセッサの処理情報をシステム
バスを通して授受するとともに、各プロセッサは、それ
ぞれ前記システムバスの使用を要求するバス要求信号を
出力し、次段のプロセッサ間で前記システムバスの使用
を許可するバス許可信号を授受し合うマルチ・プロセッ
サ・システムにおいて、各プロセッサ70は、バス要求
を指令する演算処理部74と、この演算処理部74から
の要求でバス使用権を獲得するためのバス獲得回路71
と、バスタイムアウトを検出するバスタイマ回路73
と、他のプロセッサがバス要求信号を出力しているかも
しくは前記システムバスを使用中でビジー信号をアサー
トしているときは当該プロセッサにバス要求信号を出力
させない制御部を含むディジー・チェーン回路72によ
って直列調停装置を構成する。
【0053】
【作用】本発明においては、バス許可信号のディジー・
チェーンを用いたマルチ・プロセッサ・システムにおい
て、各プロセッサは、演算処理部のバス要求指令に基づ
いてバス使用権を獲得するとともに、前記要求信号を制
御し、自らの内部にバスを使用する要求があっても、他
のプロセッサがバス要求信号を出力しているか、もしく
は前記システムバス使用中でビジー信号をアサートして
いるときは、バス要求出力できないようにする。
【0054】
【実施例】以下に本発明の実施例を図1〜図3を参照し
ながら説明する。
【0055】図2は本発明の実施例による調停方法を実
行するためのマルチ・プロセッサ・システムの構成を示
すもので、図5と図6のものと同一又は相当部分には同
一符号が付されている。また、図1は図2のシステムに
おけるプロセッサの構成を示すもので、図7のものと同
一又は相当部分には同一符号が付されている。
【0056】図1に示すように、プロセッサ70(70
a〜70n)は、前述したように、演算処理部74、こ
の演算処理部74からの要求でバスの使用権を獲得する
ためのバス要求獲得回路71、出力バッファ回路75
a、入力バッファ回路76a、入力バッファ回路76
a、インバート回路77aおよびナンド回路78a,7
8bを含む。
【0057】さらに、本実施例は、プロセッサ70(7
0a〜70n)が、さらに、バス要求信号をクロックに
同期させるためのフリップ・フロップ回路80,入力バ
ッファ回路76b,76c,ナンド回路78c,78d
およびノア回路79を備えていることを特徴とするもの
である。
【0058】信号A〜Fは従来と同じバス上の信号であ
り、Aはバス上のクロック信号「BCLK」、Bはバス
使用中を示す「BUSY L」信号、Cはバス要求を示
す「BREQ L」、Dは許可入力「BGIN L」信
号、Eはバス許可出力「BGOUT L」信号、Fはバ
ス獲得異常を外部に知らせる「BTOUT L」信号で
ある。
【0059】図1に示すプロセッサは図2に示すように
接続されている。図2と図1の関連において、図1の信
号Aは図2のクロック信号60に対応し、信号Bはビイ
ジー信号56に対応し、信号Cはバス要求信号53a〜
53nに、信号Dはバス許可入力信号54a〜54n
に、信号Fはバス許可出力信号55a〜55nに、信号
Fはバス・タイムアウト信号57a〜57nに対応す
る。
【0060】図1のプロセッサにおいて、まず、演算処
理部74がバスを使用する要求をバス要求獲得回路71
に与えると、回路71はバス要求信号をアサートする。
常時プロセッサは、バス信号BおよびCを入力バッファ
回路76a,76bを介して監視していて、双方の信号
が、共にインアクティブである場合に、NAND回路7
8cによって、信号81をアサートする。信号81,8
2がアクティブであると、インバート入力NAND回路
78dによって、信号85がアサートされる。インバー
ト入力NOR回路79により信号85のレベルは、信号
85に伝えられたバスクロックによって、80のF.
F.にラッチされる。信号86がアクティブになると、
75aのバッファによって外部バス信号Cが駆動され
る。信号86によってC信号「BREQ L」がアクテ
ィブになり、信号は84および81インアクティブにな
るが、信号86のレベルがノア回路79に帰還されフリ
ップ・フロップ回路80が自己ホールド状態となるた
め、信号86はアクティブのままである。
【0061】システム上のアービタ回路によるバス許可
信号(または、この「BREQ L」信号の折り返し)
は、バス信号Dとして、このプロセッサに与えられる。
【0062】Dの信号がアクティブになると、すでに信
号86がアクティブであるため、インバートNAND回
路78aによって、信号87がアサートされる。これ
が、「バス獲得信号」である。
【0063】このバス獲得信号がアクティブになり、か
つ入力バッファ回路76aによって監視している「BU
SY L」信号がインアクティブであると、演算処理部
74はバスを使用することができる。実際にバスの使用
を開始すると、自らが信号83をアクティブとし、バッ
ファ75bによって「BUSY L」信号をアサートす
ることによって、他プロセッサに対し、バスを使用中で
あることを知らせる。
【0064】この時、ナンド回路78b部分では、D信
号側はアクティブとなっているが、信号86は、インバ
ート回路77aによってインバートされて与えられてい
るために、出力はネゲートされたままである。
【0065】信号83がアクティブとなると、FF回路
80はリセットされ、信号86は、インアクティブにな
って、C信号およびバス獲得信号もインアクティブにな
る。すると、いままで信号88でネゲートされていたE
信号「BGOUT L」は、アクティブになる。
【0066】一方、このプロセッサがバスを要求中でな
い(信号86がインアクティブ)場合にバス許可信号D
が、アクティブになった場合には、ナンド回路78bの
入力は、双方ともアクティブ状態になるため、バス信号
D(「BGOUT L」信号)もアクティブになる。こ
れによって、このプロセッサよりもプライオリティの低
いプロセッサにもバス許可が与えられる。
【0067】バス・タイマ回路73は、信号82がアク
ティブになってバス要求を出した時点で計時動作に入
り、信号83がアクティブになってバス使用を宣言した
時点でこの動作を停止する。もし、予め定められた時間
内に、計時動作が停止されない場合は、バス上の信号F
(「BTOUT L」信号)を駆動して外部に異常を通
知する。ここまでの回路動作はおおよそ図7の従来回路
と同様である。
【0068】本発明によって付加される部分は回路76
b,78c,78d,79および80である。
【0069】まずフリップ・フロップ回路80は、バス
クロック同期のバス要求信号保持用のFF回路である。
この回路は、実際にバスを使用する時に出力するビジー
信号83によってクリアされる。
【0070】入力バッファ回路76bのバッファ入力
は、バス要求信号を内部に取り込み、入力バッファ回路
76aのバッファ入力はバスのビジー信号を取込んでい
る。これら2信号をNAND回路78cに通した信号8
1は、『自分以外のプロセッサが現在バスを使用してお
らず、かつバス使用要求を出していない』ことを示して
いる。
【0071】この信号81がアクティブで、バス要求獲
得回路のバス要求信号82がアクティブのとき、内部バ
ス要求は信号84に伝えられる。しかし、バスのビジー
信号がインアクティブであっても、他のプロセッサがバ
ス要求を出している場合には信号81がアクティブとな
って、バス要求信号84は、アクティブにはならない。
【0072】これが、この発明の基本動作であり、この
回路構成によって、『例え、自らの内部にバスを使用す
る要求があっても、他のプロセッサがバス要求信号を出
しているかまたは、バスを使用中である場合は、自分は
バスの使用要求を出せない。』というルールが成立す
る。
【0073】このため、本回路構成を採った直列調停方
式のマルチ・プロセッサ・システムにおいては、物理的
にプライオリティが上位にあるプロセッサが、バス要求
を出すと同時に他のプロセッサがバス要求を出した場
合、プライオリティの高いプロセッサは、自分がバスを
使った後、連続してバスを使用する要求があったとして
も、他のプロセッサのバス要求とバス使用がインアクテ
ィブになるまで待ってからバス要求を出すため、プライ
オリティの低いプロセッサにおいても均等にバスを獲得
できる。
【0074】図8に示した、従来の直列調停方式のシス
テムに於ける、バス・タイムアウト発生の様子に対比し
て、本回路構成による場合の調停の様子を表したものが
図3である。信号名等は、図2の記号を使用している。
【0075】図3のタイム・チャート内に付記されてい
る番号順に動作を説明する。
【0076】(1)プロセッサ70aがバスを要求し、
バス要求番号53aをアサートする。
【0077】(2)プロセッサ70bがバスを要求し、
バス要求信号53bをアサートする。
【0078】(3)プロセッサ70cがバスを要求し、
バス要求番号53cをアサートする。プロセッサ70c
のバス・タイマ回路が起動され、計時動作を開始する。
【0079】(4)プロセッサ70nがバスを要求し、
バス要求信号53nをアサートする。プロセッサ70n
のバス・タイマ回路が起動され、計時動作を開始する。
【0080】(5)プロセッサ70aに対するバス許可
信号は、常にアクティブ状態とする。
【0081】(6)プロセッサ70aはバスを獲得した
ので、バス使用を開始し、ビジー信号56をアサートす
る。
【0082】(7)プロセッサ70aはバス要求をネゲ
ートする。
【0083】(8)プロセッサ70aがバス要求をネゲ
ートしたので、プロセッサ70bに対してバス許可信号
が伝達される。
【0084】(9)プロセッサ70aは、バスの使用を
終えるとビジー信号56をネゲートする。この時点でア
クティブなバス要求と許可を有するプロセッサが次にバ
スを獲得する。ここでは、プロセッサ70b,70c,
70nがバス要求を出しているが、バス許可はプロセッ
サ70bに与えられているので、70bが次にバスを使
用できる。
【0085】(10)プロセッサ70bは、バスを獲得
し、バス要求をネゲートする。
【0086】(11)プロセッサ70bのバス要求がネ
ゲートされたので、一旦、プロセッサ70cに対するバ
ス許可信号がアサートされる。
【0087】(12)プロセッサ70bはバスを獲得し
たので、バス使用を開始し、ビジー信号56をアサート
する。ここまでの動作は図7のものと同じである。
【0088】(13)プロセッサ70aは、内部にバス
要求があるがバス上にバス要求があり、かつビジー信号
がアクティブであるため、バス要求信号をアクティブに
できない。
【0089】(14)プロセッサ70bは、バスの使用
を終えるとビジー信号56をネゲートする。この時点で
アクティブなバス要求と許可を有するプロセッサが次に
バスを獲得する。ここでは、プロセッサ70c,70n
がバス要求を出しているが、バス許可はプロセッサ70
cに与えられているので、70cが次にバスを使用でき
る。
【0090】(15)プロセッサ70cはバスを獲得
し、バス要求をネゲートする。
【0091】(16)プロセッサ70cのバス要求がネ
ゲートされたので、プロセッサ70nに対するバス許可
信号がアサートされる。
【0092】(17)プロセッサ70cはバスを獲得し
たので、バス使用を開始し、ビジー信号56をアサート
する。
【0093】(18)プロセッサ70aおよび70b
は、内部にバス要求があるが、バス上にバス要求があ
り、かつビジー信号がアクティブであるため、それぞれ
のバス要求信号をアクティブにできない。
【0094】(19)プロセッサ70cは、バスの使用
を終えるとビジー信号56をネゲートする。この時点で
アクティブなバス要求と許可を有するプロセッサが次に
バスを獲得する。ここでは、プロセッサ70nのみバス
要求を出しているので、70nが次にバスを使用でき
る。
【0095】(20)プロセッサ70nはバスを獲得
し、バス要求をネゲートする。
【0096】(21)プロセッサ70nはバスを獲得し
たので、バス使用を開始し、ビジー信号56をアサート
する。
【0097】(22)プロセッサ70aと70bおよび
70cは、内部にバス要求があるがバス上にバス要求が
ないが、ビジー信号がアクティブのため、それぞれのバ
ス要求信号をアクティブにできない。
【0098】(23)プロセッサ70nは、バス使用を
終えるとビジー信号56をネゲートする。
【0099】(24)プロセッサ70a〜70nは、内
部にバス要求があり、バス上にバス要求がなく、かつビ
ジー信号がインアクティブになったため、それぞれのバ
ス要求信号をアサートする。以下(1)〜(24)を繰
り返す。
【0100】
【発明の効果】本発明は以上の如くであって、下記のよ
うな効果が得られる。
【0101】(A)一般に不可能とされていた、直列調
停方式のマルチ・プロセッサ・システムに於ける、均等
な、バス使用権の分配が可能になる。これにより従来、
並列調停方式にたよらざるを得ないために、高価となり
がちであった均等優先度のマルチ・プロセッサ・システ
ムが、簡便かつ安価に構築できる。
【0102】(B)マルチ・プロセッサ・システムを構
築するための直列調停方式において、従来から問題とさ
れたいた、バス飢餓状態の連続によるバス・タイムアウ
トの発生を阻止し、システム全体を停止に至らしめる致
命的異常が不用意に発生することを防止する。これによ
り、バス飢餓状態のない安全なマルチ・プロセッサ・シ
ステムを簡便かつ安価に構築できるようになる。
【図面の簡単な説明】
【図1】本発明の実施例によるマルチ・プロセッサ・シ
ステムの直列調停装置の要部であるプロセッサの構成
図。
【図2】本発明の実施例によるマルチ・プロセッサ・シ
ステムの直列調停装置のブロック図。
【図3】本発明の実施例によるマルチ・プロセッサ・シ
ステムの直列調停装置の動作説明図。
【図4】一般の並列調停方式によるマルチ・プロセッサ
・システムのブロック図。
【図5】一般の直列調停方式によるマルチ・プロセッサ
・システムのブロック図。
【図6】従来のマルチ・プロセッサ・システムの直列調
停装置のブロック図。
【図7】従来のマルチ・プロセッサ・システムの直列調
停装置の要部であるプロセッサの構成図。
【図8】従来のマルチ・プロセッサ・システムの直列調
停装置の動作説明図。
【符号の説明】
51…システムバス、52…アービタ回路、A(60)
バスクロック信号、B(56)…ビジー信号、C(53
a〜53n)…バス要求信号、D(54a〜54n)バ
ス許可信号、E(55a〜55n)…バス許可入力信
号、F(57a〜57n)…バスタイムアウト信号、7
0(70a〜70n)…プロセッサ、71(71a〜7
1n)…バス要求獲得回路、72…ディジー・チェーン
回路、73(73a〜73n)…バスタイマ回路、74
…演算処理部、75a,75b…出力バッファ回路、7
6a〜76c…入力バッファ回路、77a…インバート
回路、78a〜78d…ナンド回路、79…ノア回路、
80…フリップ・フロップ回路。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサの処理情報をシステム
    バスを通して授受するとともに、各プロセッサは、それ
    ぞれ前記システムバスの使用を要求するバス要求信号を
    出力し、次段のプロセッサ間で前記システムバスの使用
    を許可するバス許可信号を授受し合うマルチ・プロセッ
    サ・システムにおいて、 各プロセッサは、前記要求信号を制御し、自らの内部に
    バスを使用する要求があっても、他のプロセッサがバス
    要求信号を出力しているか、もしくは前記システムバス
    使用中でビジー信号をアサートしているときは、バス要
    求出力できないようにしたことを特徴とする、 マルチ・プロセッサ・システムの直列調停方法。
  2. 【請求項2】 複数のプロセッサの処理情報をシステム
    バスを通して授受するとともに、各プロセッサは、それ
    ぞれ前記システムバスの使用を要求するバス要求信号を
    出力し、次段のプロセッサ間で前記システムバスの使用
    を許可するバス許可信号を授受し合うマルチ・プロセッ
    サ・システムにおいて、 各プロセッサ(70)は、バス要求を指令する演算処理
    部(74)と、この演算処理部(74)からの要求でバ
    ス使用権を獲得するためのバス獲得回路(71)と、バ
    スタイムアウトを検出するバスタイマ回路(73)と、
    他のプロセッサがバス要求信号を出力しているかもしく
    は前記システムバスを使用中でビジー信号をアサートし
    ているときは当該プロセッサにバス要求信号を出力させ
    ない制御部を含むディジー・チェーン回路(72)によ
    って構成されていることを特徴とする、 マルチ・プロセッサ・システムの直列調停装置。
JP4418292A 1992-03-02 1992-03-02 マルチ・プロセッサ・システムの直列調停方法およびその装置 Pending JPH05242048A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4418292A JPH05242048A (ja) 1992-03-02 1992-03-02 マルチ・プロセッサ・システムの直列調停方法およびその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4418292A JPH05242048A (ja) 1992-03-02 1992-03-02 マルチ・プロセッサ・システムの直列調停方法およびその装置

Publications (1)

Publication Number Publication Date
JPH05242048A true JPH05242048A (ja) 1993-09-21

Family

ID=12684436

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4418292A Pending JPH05242048A (ja) 1992-03-02 1992-03-02 マルチ・プロセッサ・システムの直列調停方法およびその装置

Country Status (1)

Country Link
JP (1) JPH05242048A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4824111B2 (ja) * 2006-08-25 2011-11-30 アトミア・オサケユキテュア バス上で単純かつ高い信頼度の分散アービトレーションを行うための回路、方法及び装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4824111B2 (ja) * 2006-08-25 2011-11-30 アトミア・オサケユキテュア バス上で単純かつ高い信頼度の分散アービトレーションを行うための回路、方法及び装置

Similar Documents

Publication Publication Date Title
EP0318221B1 (en) Controlling responding by users of an intercommunications bus
EP0343770B1 (en) Multi-bus microcomputer system with bus arbitration
EP0665500B1 (en) Bus master arbitration circuitry with retry mechanism
US5923859A (en) Dual arbiters for arbitrating access to a first and second bus in a computer system having bus masters on each bus
JPH02293959A (ja) インタフェース装置
US5283902A (en) Multiprocessor system having time slice bus arbitration for controlling bus access based on determined delay time among processors requesting access to common bus
US5455912A (en) High speed/low overhead bus arbitration apparatus and method for arbitrating a system bus
US5038274A (en) Interrupt servicing and command acknowledgement system using distributed arbitration apparatus and shared bus
JPH05242048A (ja) マルチ・プロセッサ・システムの直列調停方法およびその装置
JPH05242047A (ja) マルチ・プロセッサ・システムの直列調停方法およびその装置
JP2003132011A (ja) 競合調停装置
JPH04141757A (ja) バス制御方式
JPH02143363A (ja) マルチプロセッサ装置における共通メモリ制御方法
JP3626292B2 (ja) バスインタフェース制御方式
JPH02123448A (ja) バス調停回路
JP2508039B2 (ja) ア−ビタ回路
JPH07210505A (ja) バス調停方式
JPH0991247A (ja) バス調停装置
KR920002665B1 (ko) 다중처리 시스템의 로컬 버스 사이클 제어방법
JPH1139266A (ja) マルチプロセッサ装置
JPH0454664A (ja) 複数のcpuを有する制御装置
JPS6019022B2 (ja) バス使用権制御方式
JPH01209558A (ja) バスアービタ
JPH04191953A (ja) バス制御方式
JPH0351935A (ja) デュアルポートメモリのテスト方法