JP2825889B2 - Deadlock avoidance circuit in multiprocessor system - Google Patents

Deadlock avoidance circuit in multiprocessor system

Info

Publication number
JP2825889B2
JP2825889B2 JP1328794A JP32879489A JP2825889B2 JP 2825889 B2 JP2825889 B2 JP 2825889B2 JP 1328794 A JP1328794 A JP 1328794A JP 32879489 A JP32879489 A JP 32879489A JP 2825889 B2 JP2825889 B2 JP 2825889B2
Authority
JP
Japan
Prior art keywords
bus
request
local
circuit
processor
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 - Fee Related
Application number
JP1328794A
Other languages
Japanese (ja)
Other versions
JPH03189757A (en
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.)
Fujitsu Ltd
Nippon Telegraph and Telephone Corp
Original Assignee
Fujitsu Ltd
Nippon Telegraph and Telephone 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 Fujitsu Ltd, Nippon Telegraph and Telephone Corp filed Critical Fujitsu Ltd
Priority to JP1328794A priority Critical patent/JP2825889B2/en
Publication of JPH03189757A publication Critical patent/JPH03189757A/en
Application granted granted Critical
Publication of JP2825889B2 publication Critical patent/JP2825889B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】 [概要] システムバスにバスインタフェースおよびローカルバ
スを介して複数のプロセッサが接続され、各ローカルバ
スにローカルメモリが設けられ、ローカルバスでのバス
調停を行うバスアービタを備え、システムバスがタイム
スプリット式に、ローカルバスがインタロック式にそれ
ぞれ制御されるマルチプロセッサシステムにおけるデッ
ドロック回避回路に関し、 ローカルバスをインタロック転送を用いシステムバス
にタイムスプリット転送を用いたマルチプロセッサシス
テムにおいて、デッドロック回避のためのローカルバス
の中断を実行してもコマンドの二重発行を防止できるデ
ッドロック回避回路を提供することを目的とし、 バスインタフェース回路は、ローカルバスを介するプ
ロセッサからのシステムバスの使用要求を受け取った
後、システムバス側からのローカルバスの使用要求を受
け取ると、ローカルバス開放要求を発生すると共に中断
と再実行をプロセッサに指示するローカルバス要求保証
回路と、システムバスからの要求によるローカルバスの
使用が終了した時、上記要求を発したプロセッサからの
コマンドが再度登録されるのを抑止する再登録抑止回路
とを備え、バスアービタは、ローカルバス要求保証回路
からの使用要求が発生した後その転送が終了すると、上
記要求を発したプロセッサに対してバス権の返還を行う
バス権返還保証回路を備えるよう構成する。
DETAILED DESCRIPTION OF THE INVENTION [Overview] A plurality of processors are connected to a system bus via a bus interface and a local bus, a local memory is provided in each local bus, and a bus arbiter for performing bus arbitration in the local bus is provided. A deadlock avoidance circuit in a multiprocessor system in which a system bus is controlled in a time-split manner and a local bus is controlled in an interlock manner, in a multiprocessor system using a time-split transfer on a system bus using an interlock transfer on a local bus The purpose of the present invention is to provide a deadlock avoidance circuit capable of preventing a command from being issued twice even when the local bus is suspended to avoid a deadlock. The bus interface circuit is provided with a system bus from a processor via the local bus. After receiving a request to use the local bus from the system bus after receiving a request to use the local bus, a local bus request guarantee circuit for generating a local bus release request and instructing the processor to suspend and re-execute, and from the system bus And a re-registration inhibiting circuit for inhibiting the command from the processor issuing the request from being re-registered when the use of the local bus by the request is terminated. When the transfer is completed after the occurrence of the request, a bus right return guarantee circuit for returning the bus right to the processor which has issued the request is provided.

[産業上の利用分野] 本発明はシステムバスに複数のプロセッサが接続さ
れ、各プロセッサはローカルメモリと共にローカルバス
に接続され、ローカルバスとシステムバス間の接続を行
うバスインタフェース回路とローカルバスでのバス調停
を行うバスアービタとを備え、システムバスがタイムス
プリット式に動作し、ローカルバスがインタロック式に
動作する情報処理システムにおけるデッドロック回避回
路に関する。
[Industrial Application Field] The present invention relates to a system in which a plurality of processors are connected to a system bus, each processor is connected to a local bus together with a local memory, and a bus interface circuit for connecting between the local bus and the system bus. The present invention relates to a deadlock avoidance circuit in an information processing system including a bus arbiter for performing bus arbitration, a system bus operating in a time-split manner, and a local bus operating in an interlock manner.

近年、情報処理装置の処理能力向上要求に対して、一
本のシステムバスに複数のプロセッサを接続して、プロ
セッサ単体の処理能力をあまり上げないでもシステム全
体の能力を向上させて、高処理能力と低コストを実現す
る傾向にある。
In recent years, in response to demands for increased processing capacity of information processing devices, multiple processors have been connected to a single system bus, and the overall system capacity has been improved without increasing the processing capacity of the processor alone. And tend to realize low cost.

そのようなシステムでは、各プロセッサおよびローカ
ルメモリが接続されたローカルバスが、バスインタフェ
ースを介してシステムバスに接続され、システムバスに
接続する共有メモリに対して複数のプロセッサがアクセ
スできるようになっている。ところが、プロセッサが他
のローカルバスに接続したローカルメモリのデータを読
み出したい場合等に、システムバスを介してそのローカ
ルバスへのアクセスを要求することになる。
In such a system, a local bus to which each processor and local memory are connected is connected to the system bus via a bus interface, so that a plurality of processors can access a shared memory connected to the system bus. I have. However, when the processor wants to read data from a local memory connected to another local bus, the processor needs to access the local bus via the system bus.

この時、そのローカルバスのプロセッサが同様に自己
のローカルメモリにアクセス要求を行うと、システムバ
スからのアクセス要求と競合して、デッドロック状態に
なって何れのアクセスも実行できなくなることがあり、
そのような事態を回避することが必要となっている。
At this time, if the processor of the local bus similarly makes an access request to its own local memory, it may compete with an access request from the system bus and become deadlocked, making it impossible to execute any access.
It is necessary to avoid such a situation.

[従来の技術] 第7図は従来例1の構成図、第8図は従来例2の構成
図である。
[Prior Art] FIG. 7 is a block diagram of a first conventional example, and FIG. 8 is a block diagram of a second conventional example.

第7図のA.のシステム構成では、2つのプロセッサCP
U1,CPU2はローカルバス1,ローカルバス2、およびバス
インタフェースBIF1,BIF2を介してシステムバスと接続
され、各ローカルバス1,2にはそれぞれローカルメモリL
M1,LM2が接続されている。またローカルバス1,ローカル
バス2の占有権(使用権)の要求はバスアービタBA1,BA
2において調停(アービトレーション)が行われ、シス
テムバスの占有権の要求はバスアービタBA3において調
停が行われる。
In the system configuration of A in FIG. 7, two processors CP are used.
U1 and CPU2 are connected to the system bus via the local bus 1 and the local bus 2 and the bus interfaces BIF1 and BIF2.
M1 and LM2 are connected. The request for the exclusive right (use right) of the local bus 1 and the local bus 2 is sent to the bus arbiters BA1, BA
Arbitration is performed in 2, and arbitration is performed in the bus arbiter BA3 for the request for the exclusive right to the system bus.

この従来例1の方法は、複数のプロセッサから同時に
システムバスの占有権を要求した場合、両方の要求を実
行することができなくなって、デッドロック状態になる
のを回避するためにバスアクセス権を集中的に管理する
機構を設けたものであり、それがバスアービタBAであ
る。
In the method of Conventional Example 1, when a plurality of processors simultaneously request the exclusive use of the system bus, both requests cannot be executed, and the bus access right is avoided in order to avoid a deadlock state. A mechanism for centralized management is provided, and this is the bus arbiter BA.

このシステム構成において、プロセッサCPU1がローカ
ルバス2のローカルメモリLM2にアクセスする要求を発
生し、プロセッサCPU2がローカルメモリLM1に対しアク
セスする要求を発生した場合のタイミングチャートを第
7図のB.に示す。
In this system configuration, a timing chart in the case where the processor CPU1 generates a request to access the local memory LM2 of the local bus 2 and the processor CPU2 generates a request to access the local memory LM1 is shown in FIG. 7B. .

その内容を概説すると、最初調停サイクルでは、プロ
セッサCPU1から、バスアービタBA1に対し要求信号RQ1を
出力し、同じ時間にCPU2がバスアービタBA2に対し要求
信号RQ2を出力する。
To summarize, in the first arbitration cycle, the processor CPU1 outputs a request signal RQ1 to the bus arbiter BA1, and at the same time, the CPU2 outputs a request signal RQ2 to the bus arbiter BA2.

すると、バスアービタBA1は、さらにシステムバスの
占有を要求する要求信号RQ3をバスアービタBA3に出力す
る(ローカルバス2にアクセスする要求であるからシス
テムバスの占有が必要である)。同時にバスアービタBA
2もシステムバスへの占有を要求する要求信号RQ4を出力
すると、バスアービタBA3では、両方からの要求を受け
取ると予め決められた優先順位等の従来の方法により調
停を行い、この例ではプロセッサCPU1からの要求RQ3に
対して、グラント信号GR3をバスアービタBA1に出力し、
バスアービタBA1からプロセッサCPU1にグラント信号GR1
を出力する。これにより、転送サイクルが開始される。
すなわち、プロセッサCPU1から発したコマンド(メモリ
からの読み出しの指示等)やアドレスがバスインタフェ
ースBIF1,システムバスおよびバスインタフェースBIF2
を介してローカルメモリLM2に供給され、例えば読み出
しが行われて、読み出されたデータはバスインタフェー
スBIF2,システムバスを経て逆方向に転送されプロセッ
サCPU1で受け取られる。この転送サイクルが終了する
と、次の調停サイクルが開始されて、今度は最初の調停
で許可されなかったプロセッサCPU2(バスアービタBA
2)からの要求信号RQ4に対してバスアービタBA3はグラ
ント信号GR4を出力する。これにより、この後の転送サ
イクルにおいてローカルメモリLM1のデータを読み出し
(コマンドが読み出しの場合)てプロセッサCPU2に転送
する動作が実行される。
Then, the bus arbiter BA1 further outputs a request signal RQ3 for requesting the occupation of the system bus to the bus arbiter BA3 (the request for accessing the local bus 2 requires the occupation of the system bus). Bus Arbiter BA at the same time
2 also outputs a request signal RQ4 requesting occupation of the system bus, and upon receiving requests from both, the bus arbiter BA3 performs arbitration according to a conventional method such as a predetermined priority, and in this example, from the processor CPU1 in this example. Outputs the grant signal GR3 to the bus arbiter BA1 in response to the request RQ3 of
Grant signal GR1 from bus arbiter BA1 to processor CPU1
Is output. Thereby, a transfer cycle is started.
That is, the command (instruction of reading from the memory) and the address issued from the processor CPU1 are the bus interface BIF1, the system bus and the bus interface BIF2.
The data is supplied to the local memory LM2 via, for example, readout, and the readout data is transferred in the reverse direction via the bus interface BIF2 and the system bus and received by the processor CPU1. At the end of this transfer cycle, the next arbitration cycle begins, this time with the processor CPU2 (bus arbiter BA) that was not granted during the first arbitration.
In response to the request signal RQ4 from 2), the bus arbiter BA3 outputs a grant signal GR4. Thus, in the subsequent transfer cycle, an operation of reading data from the local memory LM1 (when the command is read) and transferring the data to the processor CPU2 is performed.

この従来例1の方式では、第7図B.に示すように調停
サイクルが長く、且つシステムバスが使用されない時間
が長く無駄が生じるという欠点があった。
The method of the prior art 1 has the drawbacks that the arbitration cycle is long and the time when the system bus is not used is long as shown in FIG.

従来例1の方式を改良するものとして第8図に示す従
来例2の構成がある。
As a modification of the system of the conventional example 1, there is a configuration of a conventional example 2 shown in FIG.

この従来例2はシステムバスをインタロック方式によ
り転送が行われ、ローカルバス上でのバス調停とシステ
ムバス上データの調停を別個に行い、且つローカルバス
での転送とシステムバス上での転送を重ね合わせて遅延
時間の短縮を図っている。
In the second prior art, the transfer of the system bus is performed by an interlock system, bus arbitration on the local bus and data arbitration on the system bus are separately performed, and transfer on the local bus and transfer on the system bus are performed. The overlap is intended to reduce the delay time.

第8図の構成において、従来例1と異なる構成は、バ
スインタフェースBIF1,BIF2にコマンドがセットされる
と、その出力としてRQ5,RQ6が発生して、バスアービタB
A1,BA2にそれぞれ供給されると共にプロセッサCPU1,CPU
2に対して要求をキャンセルする指示を出力する点およ
びバスアービタBA1,BA2からグラント信号GR5,GR6が出力
されるようにした点である。
In the configuration shown in FIG. 8, a configuration different from that of the conventional example 1 is such that when a command is set to the bus interfaces BIF1 and BIF2, RQ5 and RQ6 are generated as outputs thereof, and the bus arbiter B
A1 and BA2, respectively, and processors CPU1 and CPU2
2 in that an instruction to cancel the request is output to the bus arbiter 2 and the grant signals GR5 and GR6 are output from the bus arbiters BA1 and BA2.

第8図のB.のタイミングチャートを用いて説明する。
最初にプロセッサCPU1がローカルメモリLM2に対してコ
マンド(読み出しとする)とアドレスを出力してバスア
ービタBA1に対し要求信号RQ1を出力する(第8図B.の
)。
This will be described with reference to the timing chart B in FIG.
First, the processor CPU1 outputs a command (to be read) and an address to the local memory LM2, and outputs a request signal RQ1 to the bus arbiter BA1 (FIG. 8B).

これに対しバスアービタBA1は調停を行い(同の先
頭のL1で表示)グラント信号GR1を返すことにより(同
)、ローカルバス1からバスインタフェースBIF1の一
方のバッファ(システムバスへ出力される側)に転送さ
れてセットされる(同の転送L(1))。同じ時間に
プロセッサCPU2からもローカルバス2からローカルメモ
リLM1に対するアクセスを要求してバスアービタBA2に要
求信号RQ2を出力すると(同)、そこで調停が行われ
て(同の先頭の調停L2)グラント信号GR2が返ってく
るので(同)、バスインタフェースBIF2の一方のバッ
ファ(2つ備えられたバッファの中の下側)に転送が行
われ(同の転送L(2))コマンドとアドレスが格納
される。
On the other hand, the bus arbiter BA1 arbitrates (indicated by the first L1) and returns the grant signal GR1 (same as above), thereby causing the local bus 1 to send one of the buffers of the bus interface BIF1 (the side to be output to the system bus). It is transferred and set (the same transfer L (1)). At the same time, the processor CPU2 requests access to the local memory LM1 from the local bus 2 and outputs a request signal RQ2 to the bus arbiter BA2 (same), where arbitration is performed (same head arbitration L2) and the grant signal GR2. Is returned (same), the transfer is performed to one buffer (the lower side of the two buffers) of the bus interface BIF2 (the same transfer L (2)) and the command and the address are stored. .

この後、バスアービタBA1から要求信号RQ3が出力さ
れ、バスアービタBA2から要求信号RQ4が出力されバスア
ービタBA3で調停が行われる(同の調停Sに該当)。
この結果、バスアービタBA3における優先順位等によりB
A1に対してグラント信号GR3が戻ってくる(同)。さ
らにバスアービタBA1からバスインタフェースBIF1に対
しグラント信号GR5が出力され、これによりバスインタ
フェースBIF1からシステムバスを占有することができ、
BIF1からシステムバスを介してバスインタフェースBIF2
に対してコマンドとアドレスの転送が行われる(同の
転送S(1))。この時、プロセッサCPU1からの要求は
優先順位により許可されない(同のGR4参照)。
Thereafter, the request signal RQ3 is output from the bus arbiter BA1, the request signal RQ4 is output from the bus arbiter BA2, and arbitration is performed by the bus arbiter BA3 (corresponding to the same arbitration S).
As a result, B is determined by the priority order of the bus arbiter BA3.
Grant signal GR3 returns to A1 (same as above). Further, a grant signal GR5 is output from the bus arbiter BA1 to the bus interface BIF1, thereby occupying the system bus from the bus interface BIF1.
Bus interface BIF2 from BIF1 via the system bus
Command and address are transferred (the same transfer S (1)). At this time, the request from the processor CPU1 is not granted according to the priority (see GR4).

バスインタフェースBIF2にシステムバスから(バスイ
ンタフェースBIF1から)コマンド(アドレスも含む)が
セットされると同時に、そのバッファの出力がバスアー
ビタBA2とプロセッサCPU2に要求信号RQ6が出力されると
共にCPU2からバスインタフェースBIF2の下側のバッファ
にセットされたコマンドやアドレス情報をクリア(同
の転送L2のキャンセルに対応)する。後でこのバッファ
を通ってローカルメモリLM2から読み出したデータがシ
ステムバスに転送される。
At the same time that a command (including an address) is set from the system bus (from the bus interface BIF1) to the bus interface BIF2, the output of the buffer outputs the request signal RQ6 to the bus arbiter BA2 and the processor CPU2, and the CPU2 outputs the bus interface BIF2. Clears the command and address information set in the lower buffer (corresponding to the cancellation of the same transfer L2). Data read from the local memory LM2 through this buffer later is transferred to the system bus.

プロセッサCPU2はバスインタフェースBIF2から要求信
号RQ6が入力すると、ローカルバス2に対するアクセス
を放棄するよう駆動される。これによりローカルバス2
がシステムバスからのアクセスに開放され、バスインタ
フェースBIF2のバッファに格納されたコマンド(CPU1か
ら送出された)とアドレスによりローカルメモリLM2へ
の動作が実行され、読み出されたデータ(アンサデータ
と称される)はバスインタフェースBIF2とシステムバス
を介してバスインタフェースBIF1に転送され(同の転
送L(1)及びの転送S(1)参照)、さらにプロセ
ッサCPU1に供給される。
When the request signal RQ6 is input from the bus interface BIF2, the processor CPU2 is driven to abandon access to the local bus 2. As a result, the local bus 2
Is opened for access from the system bus, the operation to the local memory LM2 is executed by the command (transmitted from the CPU 1) and the address stored in the buffer of the bus interface BIF2, and the read data (called answer data) is executed. Is transferred to the bus interface BIF1 via the bus interface BIF2 and the system bus (see the same transfer L (1) and transfer S (1)), and further supplied to the processor CPU1.

システムバスからの要求による転送動作が終了する
と、終了を表すDC(データ・コンプリート)信号がバス
インタフェースBIF2からバスアービタBA2に発生する。
これによりプロセッサCPU2からの要求信号RQ2に対し
て、バスアービタBA2はグラント信号GR2を出力してシス
テムバスを介してローカルメモリLM1へのアクセスを実
行することができる。
When the transfer operation in response to the request from the system bus ends, a DC (data complete) signal indicating the end is generated from the bus interface BIF2 to the bus arbiter BA2.
Thereby, the bus arbiter BA2 can output the grant signal GR2 in response to the request signal RQ2 from the processor CPU2, and can access the local memory LM1 via the system bus.

このようにシステムバスからローカルメモリ(LM2)
への要求とローカルバス2に接続したプロセッサ(CPU
2)からシステムバスへの要求とが競合すると、バスイ
ンタフェース(BIF2)からの要求信号RQ6によりプロセ
ッサ(CPU2)にローカルバスを放棄させて、システムバ
スからローカルメモリへの要求を優先処理し、ローカル
バスからシステムバスへの要求はまだシステムへは発行
されていないので、単純にクリアする処理だけが行われ
る。
Thus local memory (LM2) from system bus
Request to the local bus 2 and the processor (CPU
2) When a request from the system bus conflicts with the request from the system bus, the request signal RQ6 from the bus interface (BIF2) causes the processor (CPU2) to relinquish the local bus, prioritize the request from the system bus to the local memory, and Since the request from the bus to the system bus has not been issued to the system yet, only the clearing process is performed.

従って、この従来例2の構成でもシステムバスに対す
るアクセス要求に対して調停された後は、システムバス
と、ローカルバスはアクセス動作とアクセス実行後のデ
ータ転送の動作終了まで、1つのプロセッサにより占有
されているため、有効に利用されていない。
Therefore, even in the configuration of the second prior art, after arbitration for an access request to the system bus, the system bus and the local bus are occupied by one processor until the end of the access operation and the data transfer operation after the execution of the access. Is not being used effectively.

一方、複数のプロセッサをシステムバスに接続する方
式ではシステムバスのスループットがシステムの処理能
力を決定する。そして、システムバスのスループットを
向上させるための方式としてタイムスプリット方式が知
られている。
On the other hand, in a system in which a plurality of processors are connected to a system bus, the throughput of the system bus determines the processing capacity of the system. A time split method is known as a method for improving the throughput of the system bus.

そこで、第9図に上記第8図に示す従来例2のシステ
ムバスをタイムスプリット方式にした場合のタイムチャ
ートを示す。
FIG. 9 shows a time chart when the system bus of the conventional example 2 shown in FIG. 8 is of a time split type.

このタイムスプリット方式では、システムバスを所定
の時間間隔(この図では2クロック分)で分割して占有
する。このため、要求されたコマンド(リード,ライト
等)の転送と、そのコマンドの実行に対応して発生する
アンサデータ(例えば、読み出しデータ)の転送動作と
を同じ時間間隔に実行できないので、分割された異なる
時間に行われる。そのため、プロセッサがローカルバス
から一旦コマンドをバスインタフェースに送ってシステ
ムバスを要求した時、システムバス側からのローカルバ
スの要求があってそれを優先して受付て、ローカルバス
を開放すると、システムバス側の転送が先に実行され
る。その後、先に発生したローカルバス側からの要求に
対して使用権を許可すると、プロセッサから再度コマン
ドが発生されることになる。その場合、コマンドの二重
発行という問題が発生する。
In this time split system, the system bus is divided and occupied at predetermined time intervals (two clocks in this figure). For this reason, the transfer of the requested command (read, write, etc.) and the transfer operation of answer data (for example, read data) generated in response to the execution of the command cannot be performed at the same time interval. Done at different times. Therefore, when the processor once sends a command from the local bus to the bus interface and requests the system bus, when the request for the local bus from the system bus side is received and given priority and the local bus is released, the system bus is released. The side transfer is performed first. Thereafter, when the usage right is granted to the request from the local bus side generated earlier, the command is issued again from the processor. In that case, a problem of double issue of a command occurs.

この動作を第9図により概説する。なお、図中の各部
の名称は第8図で使用された同じ名称の回路と同様のも
のである。
This operation is outlined with reference to FIG. The names of the respective parts in the figure are the same as those of the circuit having the same name used in FIG.

CPU1(第8図参照)からローカルバスL2への転送を要
求するとバスアービタBA1における調停により許可さ
れ、ローカルバスL1を介してバスインタフェースBIF1に
コマンド(アドレス等を含む)が転送され、続いてバス
アービタBA3において調停(S1)が実行されて許可され
る。
When transfer from the CPU 1 (see FIG. 8) to the local bus L2 is requested, arbitration in the bus arbiter BA1 is permitted, a command (including an address or the like) is transferred to the bus interface BIF1 via the local bus L1, and then the bus arbiter BA3 The arbitration (S1) is executed and permitted.

一方、CPU2からもバスアービタBA2によりローカルバ
スL1への転送を要求して許可されることによりバスイン
タフェースBIF2にコマンドが転送されるが、システムバ
スの使用は、この時バスアービタBA3においてCPU1から
の要求を調停(S1)により許可しているので、待機す
る。この後バスアービタBA3は調停S(2)によりCPU2
から要求されたシステムバスの使用を許可する。
On the other hand, the command is transferred from the CPU 2 to the bus interface BIF2 by requesting and transferring the transfer to the local bus L1 by the bus arbiter BA2. It waits because it is permitted by arbitration (S1). After this, bus arbiter BA3 arbitrates S (2) and causes CPU2
To use the system bus requested by

ところが、システムバスを介するバスインタフェース
BIF1からバスインタフェースBIF2へのコマンド転送(転
送S(1)〈c〉で表示)が行われると、第9図の
(ローカルバスL2)に示すように、バスインタフェース
BIF2内のコマンドバッファ(CPU2からのコマンドを蓄積
するバッファ)を従来例2(第8図)の技術により単に
クリアしてシーケンスを中断する。
However, a bus interface via the system bus
When a command is transferred from BIF1 to bus interface BIF2 (indicated by transfer S (1) <c>), as shown in (local bus L2) in FIG.
The command buffer in BIF2 (buffer for storing commands from CPU2) is simply cleared by the technique of the conventional example 2 (FIG. 8) to interrupt the sequence.

この時第9図の(システムバス)に示すように、既
にCPU2の転送(S(2)〈c〉)により、バスインタフ
ェースBIF2のコマンドはシステムバスに送り出されバス
インタフェースBIF1において受け取られてコマンドが実
行されてしまう。このため、ローカルバスL2において、
CPU1から要求されたコマンドが実行された結果を表すデ
ータ(読み出しデータ等)がバスインタフェースBIF1に
セットされた後、ローカルバスL2が開放されると、
(ローカルバスL2)に示すタイミングでCPU2は転送L
(2)を再発行する(最初の転送はクリアされているも
のとして)。
At this time, as shown in (system bus) in FIG. 9, the command of the bus interface BIF2 has already been sent to the system bus by the transfer (S (2) <c>) of the CPU2, received by the bus interface BIF1, and the command has been received. Will be executed. Therefore, on the local bus L2,
After the data (read data and the like) indicating the result of executing the command requested from the CPU 1 is set in the bus interface BIF1, and the local bus L2 is released,
At the timing shown in (local bus L2), the CPU 2
Reissue (2) (assuming the first transfer has been cleared).

すると、において処理されたアンサ(S(2)
〈w〉)が直ぐに返ってくる。なお、このような動作は
信号の遅延時間の関係で生じる可能性がある。
Then, the answer processed in (S (2)
<W>) returns immediately. Such an operation may occur due to the delay time of the signal.

この場合、に示すようにローカルバスL2のCPU2の転
送が終了してしまう。
In this case, the transfer of the CPU 2 of the local bus L2 ends as shown in FIG.

一方、再実行されたによる転送要求は、システムバ
スへ転送(S(1)〈c〉:システムバスの終端に図
示)されているため、これに対するアンサが戻ってくる
と、対応するローカルバスL2の転送が終了しているた
め、バスインタフェースBIF2が処理不能となる。
On the other hand, since the transfer request due to the re-execution is transferred to the system bus (S (1) <c>: shown at the end of the system bus), when the answer to the request returns, the corresponding local bus L2 , The bus interface BIF2 cannot be processed.

[発明が解決しようとする課題] 従来例2のシステムバスとしてタイムスプリット方式
を採用した第9図のデータロック回避方式によれば、上
記したようにシステムバスからローカルバスへの要求を
受信した時、ローカルバスからシステムバスへの要求が
既に発行されている可能性がありコマンドの重複発行と
いう問題があった。
[Problem to be Solved by the Invention] According to the data lock avoidance system of FIG. 9 in which the time split system is adopted as the system bus of the conventional example 2, when the request from the system bus to the local bus is received as described above. However, there is a possibility that a request from the local bus to the system bus has already been issued, and there has been a problem that commands are repeatedly issued.

本発明はローカルバスをインタロック転送を用いシス
テムバスにタイムスプリット転送を用いたマルチプロセ
ッサシステムにおいて、デッドロック回避のためのロー
カルバスの中断を実行してもコマンドの二重発行を防止
できるデッドロック回避回路を提供することを目的とす
る。
The present invention relates to a multiprocessor system using an interlock transfer of a local bus and a time split transfer of a system bus to prevent a double lock from being issued even if the local bus is interrupted to avoid deadlock. It is an object to provide an avoidance circuit.

[課題を解決するための手段] 第1図は本発明の基本構成図である。[Means for Solving the Problems] FIG. 1 is a basic configuration diagram of the present invention.

第1図において、10はシステムバス、11はバスアービ
タ、12はバスインタフェース回路、13はローカルバス、
14はローカルメモリ(LMi)、15はプロセッサ(CPUi)
を表し、バスアービタ11にはバス権返還保証回路111が
設けられ、バスインタフェース回路12にはローカルバス
要求保証回路121および再登録抑止回路122が設けられて
いる。
In FIG. 1, 10 is a system bus, 11 is a bus arbiter, 12 is a bus interface circuit, 13 is a local bus,
14 is local memory (LMi), 15 is processor (CPUi)
The bus arbiter 11 is provided with a bus right return guarantee circuit 111, and the bus interface circuit 12 is provided with a local bus request guarantee circuit 121 and a re-registration inhibiting circuit 122.

本発明は、ローカルバスを使用した後、システムバス
からの要求によりローカルバスの中断が発生した場合
に、ローカルバスからシステムバスへのコマンド発行を
保証し、中断されたバスサイクルを再実行する時にコマ
ンドバッファへの登録を抑止すると共にバスサイクル中
断後、元のバスマスタ(バスを要求する回路)にバス権
返還を保証するものである。
The present invention guarantees the issuance of a command from the local bus to the system bus when the local bus is interrupted by a request from the system bus after using the local bus, and re-executes the interrupted bus cycle. This is to prevent registration in the command buffer and to guarantee the return of the bus right to the original bus master (circuit requesting the bus) after the bus cycle is interrupted.

[作用] 第1図の作用を説明すると、プロセッサ15がシステム
バスへの転送要求RQiをバスアービタ11に出力すると、
バスアービタ11からグラントGRiが発行されて、ローカ
ルバス13によりバスインタフェース12にコマンドを含む
データ(以下、単にコマンドという)を転送する。これ
によりバスインタフェース回路12内のバッファ124にセ
ットされる。この時、システムバス10を介して他のプロ
セッサからローカルバス13の使用が要求されてそれが許
可されると、バスインタフェース回路12内のバッファ12
3にそのコマンドがセットされる。バッファ123にコマン
ドがセットされると、ローカルバス要求保証回路121が
駆動されて、バス開放の要求RQiを発生すると共に、バ
スサイクルの中断と再実行をプロセッサ15に指示する。
これによりプロセッサ15はバスを開放する。この時バス
アービタ11のバス権返還保証回路111は前回(プロセッ
サ15からの中断された要求)のバス調停の結果を保持
し、再登録抑止回路122が駆動される。
[Operation] To explain the operation of FIG. 1, when the processor 15 outputs a transfer request RQi to the system bus to the bus arbiter 11,
A grant GRi is issued from the bus arbiter 11, and data including a command (hereinafter, simply referred to as a command) is transferred to the bus interface 12 by the local bus 13. As a result, it is set in the buffer 124 in the bus interface circuit 12. At this time, when the use of the local bus 13 is requested from another processor via the system bus 10 and the use of the local bus 13 is permitted, the buffer 12 in the bus interface circuit 12 is used.
The command is set to 3. When a command is set in the buffer 123, the local bus request assurance circuit 121 is driven to generate a bus release request RQi and to instruct the processor 15 to suspend and re-execute the bus cycle.
As a result, the processor 15 releases the bus. At this time, the bus right return guarantee circuit 111 of the bus arbiter 11 holds the result of the previous bus arbitration (the interrupted request from the processor 15), and the re-registration inhibiting circuit 122 is driven.

バッファ123からのコマンドによりローカルバス13に
対する動作が実行してローカルバス13からバスインタフ
ェース回路12のバッファ124への転送が終了すると、バ
ス開放要求RQiが消えるのでバスアービタ11のバス権返
還保証回路111が保持していた情報によりプロセッサ15
に対しグラントGRiが発行される。これによりプロセッ
サ15からコマンドが再発行される。この時、プロセッサ
から発した再発行のコマンドは再登録抑止回路122の出
力によりバッファ124への登録が抑止される。再登録抑
止回路122は再実行された転送動作が終了するとリセッ
トされる。
When the operation for the local bus 13 is executed by the command from the buffer 123 and the transfer from the local bus 13 to the buffer 124 of the bus interface circuit 12 is completed, the bus release request RQi disappears, so that the bus right return guarantee circuit 111 of the bus arbiter 11 is Processor 15 according to the information held
Grant GRi is issued for. Thus, the command is reissued from the processor 15. At this time, the reissue command issued from the processor is inhibited from being registered in the buffer 124 by the output of the reregistration inhibiting circuit 122. The re-registration inhibiting circuit 122 is reset when the re-executed transfer operation ends.

前回の登録時にバッファ124に格納されたコマンドは
システムバス10を介して他のプロセッサが接続されたロ
ーカルメモリに対し実行され、アンサデータはシステム
バス10,バスインタフェース回路12を介してプロセッサ1
5で受け取られる。
The command stored in the buffer 124 at the time of the previous registration is executed to the local memory to which another processor is connected via the system bus 10, and the answer data is transmitted to the processor 1 via the system bus 10 and the bus interface circuit 12.
Received at 5.

このようにして、ローカルバスの使用を中断した後
に、バスが解放されると前回中断したバスマスタに対し
てバス使用権を返還し、同時にバスマスタから再度発行
したコマンドが二重登録されるのを抑止することができ
る。
In this way, after the use of the local bus is interrupted, when the bus is released, the right to use the bus is returned to the previously interrupted bus master, and at the same time, the command issued again by the bus master is prevented from being registered twice. can do.

[実施例] 第2図はローカルバス要求保証回路の実施例構成図、
第3図は再登録抑止回路の実施例構成図、第4図はバス
権返還保証回路の実施例構成図であり、第5図は実施例
の詳細タイミングチャートである。
[Embodiment] FIG. 2 is a block diagram showing an embodiment of a local bus request guarantee circuit.
FIG. 3 is a block diagram of an embodiment of a re-registration inhibiting circuit, FIG. 4 is a block diagram of an embodiment of a bus right return guarantee circuit, and FIG. 5 is a detailed timing chart of the embodiment.

第2図の回路は、第1図のバスインタフェース回路12
に設けられたローカルバス要求保証回路121に相当す
る。図において、RDはローカルバスからのコマンド(こ
の例ではリードコマンド)を表し、DSはデータ要求信号
(データストローブ)、DCはデータコンプリート(転送
終了)、RF信号はリトライフラグ信号、コマンド受信は
外部(システムバス)からのコマンド受信を表す信号、
MASKは更新禁止を表す信号、RQ6はバスの開放要求信号
を表し、20はリトライフラグF/F(フリップフロップ回
路を意味する)、21は開放要求F/Fを表し、各回路は負
論理で動作する。
The circuit of FIG. 2 corresponds to the bus interface circuit 12 of FIG.
Corresponds to the local bus request assurance circuit 121 provided. In the figure, RD indicates a command from the local bus (in this example, a read command), DS indicates a data request signal (data strobe), DC indicates data completion (transfer end), RF signal indicates a retry flag signal, and command reception indicates an external signal. (Command signal) from the (system bus),
MASK is a signal indicating update prohibition, RQ6 is a bus release request signal, 20 is a retry flag F / F (meaning a flip-flop circuit), 21 is a release request F / F, and each circuit has negative logic. Operate.

リトライフラグF/F20はローカルバスからのコマンドR
D,とデータ要求信号DSによりセットされ、信号DCにより
リセットされる。信号DCが到来する前に、外部からのコ
マンドが受信されるとその立ち下がりで、開放要求F/F2
1がセットされて、開放要求信号RQ6が発生する。この開
放要求F/F21は、禁止信号(第3図)MASKと信号DC(外
部からの要求により転送終了)によりリセットされる。
Retry flag F / F20 is command R from local bus
D, and are set by the data request signal DS, and reset by the signal DC. If an external command is received before the signal DC arrives, the release request F / F2
1 is set, and the release request signal RQ6 is generated. This release request F / F21 is reset by a prohibition signal (FIG. 3) MASK and a signal DC (transfer completed by an external request).

これらの第2図の各回路への各信号の状態に対する開
放要求信号RQ6の反転信号の波形は第5図の詳細タイミ
ングチャートに示されており、負論理で動作するもので
ある。
The waveform of the inverted signal of the release request signal RQ6 with respect to the state of each signal to each circuit in FIG. 2 is shown in the detailed timing chart of FIG. 5, and operates with negative logic.

第3図の回路は、第1図のバスインタフェース回路12
に設けられた再登録抑止回路122に相当する。第3図に
おいて、各入力信号(開放要求信号)RQ6の反転信号,
データコンプリート信号DCの反転信号等は第2図と同様
であり、31は抑止信号を発生するF/F、32は多数のF/Fか
らなるコマンドバッファ(CBF)を表す。
The circuit of FIG. 3 corresponds to the bus interface circuit 12 of FIG.
Corresponds to the re-registration suppression circuit 122 provided in the first embodiment. In FIG. 3, an inverted signal of each input signal (opening request signal) RQ6,
The inverted signal of the data complete signal DC and the like are the same as those shown in FIG. 2. Reference numeral 31 denotes an F / F for generating a suppression signal, and reference numeral 32 denotes a command buffer (CBF) including a large number of F / Fs.

この回路は第2図の回路により開放要求信号RQ6が信
号DC(転送終了)の発生する前に出力されると、F/F31
がセットされて、セットされている間、インバータによ
り禁止信号MASKが反転されて、信号DSが表れてもコマン
ドバッファ32のクロック端子(cpで表示)に信号が供給
されない。このクロック端子cpに信号が入力されない
と、ローカルバスからの再実行により送られてくるコマ
ンド(“C"で表示)や、アドレス(“A")はデータ入力
端子(Dで表示)からコマンドバッファ32にセットする
ことができない。
When the release request signal RQ6 is output before the signal DC (end of transfer) is generated by the circuit of FIG.
Is set, while the setting is set, the inhibit signal MASK is inverted by the inverter, and no signal is supplied to the clock terminal (indicated by cp) of the command buffer 32 even if the signal DS appears. If no signal is input to the clock terminal cp, the command (represented by “C”) and the address (“A”) sent by re-execution from the local bus are transferred from the data input terminal (represented by D) to the command buffer. Cannot be set to 32.

開放要求信号RQ6が消失してデータ転送が終了(DCが
発生)すると、F/F31はリセットされ、転送終了信号DS
による信号がクロック端子cpに入力してコマンドバッフ
ァ32にコマンドおよびアドレスが設定される。
When the release request signal RQ6 disappears and the data transfer ends (DC occurs), the F / F 31 is reset and the transfer end signal DS
Is input to the clock terminal cp, and the command and the address are set in the command buffer 32.

上記の第3図の動作も第5図に示す詳細タイミングチ
ャートに示されている。
The operation of FIG. 3 is also shown in the detailed timing chart of FIG.

第4図の回路は、第1図のバスアービタ11に設けられ
たバス権返還保証回路に相当する。第4図において、41
は調停回路、42,43はF/F、RQiは複数のプロセッサ(バ
スマスタ)からの転送要求信号を表し、GRiはバスマス
タへの要求を許可するグラント信号(反転信号が有効)
を表し、その他の信号は第2図および第3図と同様であ
る。
The circuit of FIG. 4 corresponds to the bus right return guarantee circuit provided in the bus arbiter 11 of FIG. In FIG. 4, 41
Is an arbitration circuit, 42 and 43 are F / F, RQi is a transfer request signal from a plurality of processors (bus masters), and GRi is a grant signal that permits a request to the bus master (inverted signal is valid)
And the other signals are the same as in FIGS. 2 and 3.

この回路は元の転送要求を発して中断したバスマスタ
(プロセッサ)に対しバス使用権を戻すことを保証する
回路であり、調停回路41は複数(N個)のバスマスタか
らの要求信号RQiの反転信号を入力して、優先選択等の
公知の方法により1つのバスマスタに対するグラント信
号GRi(N個の中の1つ)を発生する。各グラント信号G
Ri(N個)のそれぞれに対応してF/F42,43および関連す
る論理回路が設けられており、グラント信号が発生する
と、F/F43に入力してこれをセットして記憶される。一
旦記憶された後に、システムバス側からの要求が発生し
て、上記の第2図の回路により開放要求信号RQ6(反
転)が発生すると、F/F42がセットされて転送要求が中
断される。このF/F42がセットされている間はアンド回
路44においてグラント信号GRiは禁止されて、バスマス
タに対し転送の許可が取り消される。この状態から時間
が経過して、信号RQ6(反転)がなくなってから、信号D
C(反転)が発生すると、F/F42がリセットされる(シス
テムバス側からの転送が終了)。
This circuit is a circuit for issuing an original transfer request and guaranteeing that the bus master (processor) interrupted returns the right to use the bus. The arbitration circuit 41 outputs an inverted signal of the request signal RQi from a plurality (N) of bus masters. To generate a grant signal GRi (one out of N) for one bus master by a known method such as priority selection. Each grant signal G
F / Fs 42 and 43 and associated logic circuits are provided for each of the Ris (N), and when a grant signal is generated, it is input to the F / F 43 and set and stored. Once stored, a request from the system bus side occurs, and when the open request signal RQ6 (inverted) is generated by the circuit of FIG. 2, the F / F 42 is set and the transfer request is interrupted. While the F / F 42 is set, the grant signal GRi is prohibited in the AND circuit 44, and the permission of transfer to the bus master is canceled. After a lapse of time from this state and the signal RQ6 (inversion) disappears, the signal D
When C (inversion) occurs, the F / F 42 is reset (the transfer from the system bus side ends).

すると、F/F43に記憶された以前に中断された転送要
求に対するグラント信号がアンド回路45を通って出力さ
れる。なお、アンド回路45のRQ6(反転)が無くなる
と、正の論理出力となっている。このようにして、以前
に中断されたバス使用権を、外部のデータの転送終了後
に元のバスマスタに返還することができる。
Then, the grant signal for the previously interrupted transfer request stored in the F / F 43 is output through the AND circuit 45. When the RQ6 (inversion) of the AND circuit 45 disappears, the output becomes a positive logical output. In this way, the previously interrupted bus use right can be returned to the original bus master after transfer of external data is completed.

第4図に示す回路の論理動作の例が、第5図の詳細な
タイミングチャートに示されている。
An example of the logical operation of the circuit shown in FIG. 4 is shown in the detailed timing chart of FIG.

次に第6図により、本発明のシステム全体の動作図に
ついて説明する。第6図のAは本発明によるシステム構
成、B.はそのタイミングチャートを示す。
Next, an operation diagram of the entire system of the present invention will be described with reference to FIG. 6A shows a system configuration according to the present invention, and FIG. 6B shows a timing chart thereof.

なお、A.のシステム構成はブロック構成として示すの
で従来例2と同様である。但し、バスアービタやバスイ
ンタフェースには、本発明の第2図乃至第4図に示す回
路が含まれており、システムバスはタイムスプリット方
式によるものである。
Since the system configuration of A. is shown as a block configuration, it is the same as that of the conventional example 2. However, the bus arbiter and the bus interface include the circuits shown in FIGS. 2 to 4 of the present invention, and the system bus is based on a time split system.

第6図B.において、「L1バス」はローカルバス1への
転送要求に対するバスアービタBA1の調停と、転送状態
を表し、「Sバス(1)」はCPU1からのシステムバスの
要求に対する調停(バスアービタBA3で行う)とそれに
対する転送状態を表し、「L2バス」はローカルバス2へ
の転送要求に対するバスアービタBA2の調停と、転送状
態を表し、「Sバス(2)」はCPU2からのシステムバス
の要求に対する調停(バスアービタBA3で行う)とそれ
に対する転送状態を表す。
In FIG. 6B, "L1 bus" indicates arbitration of the bus arbiter BA1 for a transfer request to the local bus 1 and the transfer state, and "S bus (1)" indicates arbitration (bus arbiter) for a system bus request from the CPU1. BA3) and the transfer state corresponding thereto, "L2 bus" represents the arbitration of the bus arbiter BA2 for the transfer request to the local bus 2 and the transfer state, and "S bus (2)" represents the system bus from the CPU2. It indicates the arbitration for the request (performed by the bus arbiter BA3) and the transfer status for it.

最初に、CPU1からの転送要求が発すると、「調整L1」
によりグラント信号GR1が発生して「転送L(1)が実
行される。同じ時に、CPU2からの転送要求が発生してグ
ラント信号GR2が発生して「転送L(2)」が実行され
る。この後、CPU1からのシステムバスの要求が発生して
グラントGR3が発生すると、システムバスは「Sバス
(1)」に示すように転送S(1)C(コマンド)が転
送されてバスインタフェースBIF2に達する。すると、バ
スインタフェースBIF2では、バス開放要求信号RQ6が発
生して、CPU2に対するグラント信号GR2が禁止される。
この信号は第2図に示す回路により記憶される。
First, when a transfer request is issued from CPU1, "Adjustment L1"
Generates a grant signal GR1 to execute "transfer L (1). At the same time, a transfer request is issued from the CPU 2 to generate a grant signal GR2 and execute" transfer L (2). " Thereafter, when a request for the system bus is issued from the CPU 1 and a grant GR3 is generated, the transfer S (1) C (command) is transferred to the system bus as shown in "S bus (1)" and the bus interface BIF2 Reach Then, in the bus interface BIF2, a bus release request signal RQ6 is generated, and the grant signal GR2 for the CPU 2 is prohibited.
This signal is stored by the circuit shown in FIG.

この後ローカルバス2を介してCPU1からのコマンドが
実行されてバスインタフェースBIF2にデータがセットさ
れると、DC6(データ終了)が発生して、先に禁止され
ていたデータ要求に対するグラント信号GR2が発生し
て、ローカルバス2を介してコマンドが転送される。但
し、このコマンドのバスインタフェースBIF2への設定は
本発明の再登録抑止回路(第3図)により抑止される。
続いてシステムバスを通って転送S(2)Wが転送され
て、以後図示されないがローカルバス1に対するコマン
ド(W)が実行される。
Thereafter, when a command from the CPU 1 is executed via the local bus 2 and data is set in the bus interface BIF2, DC6 (data end) occurs, and the grant signal GR2 for the previously prohibited data request is generated. Then, a command is transferred via the local bus 2. However, the setting of this command in the bus interface BIF2 is suppressed by the re-registration suppression circuit (FIG. 3) of the present invention.
Subsequently, the transfer S (2) W is transferred through the system bus, and a command (W) for the local bus 1 is executed (not shown).

[発明の効果] 本発明によれば、システムバスがタイムスプリットバ
ス形式となった時に問題となるコマンドの二重発行を防
止することができる。この結果、スループットの大きい
タイムスプリットバスでのデッドロック防止ができ、か
つ従来のシステム構成を継承することにより高い性能と
同時に柔軟な構成を両立することができる。
[Effects of the Invention] According to the present invention, it is possible to prevent a double issue of a command which becomes a problem when the system bus becomes a time split bus format. As a result, it is possible to prevent deadlock in a time-split bus with a large throughput, and to achieve both high performance and a flexible configuration by inheriting the conventional system configuration.

【図面の簡単な説明】[Brief description of the drawings]

第1図は本発明の基本構成図、第2図はローカルバス要
求保証回路の実施例構成図、第3図は再登録抑止回路の
実施例構成図、第4図はバス権返還保証回路の実施例構
成図であり、第5図は実施例の詳細タイミングチャー
ト、第6図は本発明のシステム全体の動作図、第7図は
従来例1の構成図、第8図は従来例2の構成図、第9図
はシステムバスをタイムスプリット方式にした場合のタ
イムチャートである。 第1図中、 10:システムバス 11:バスアービタ 12:バスインタフェース回路 13:ローカルバス 14:ローカルメモリ(LM) 15:プロセッサ(CPUi) 111:バス権返還保証回路 121:ローカルバス要求保証回路 122:再登録抑止回路
FIG. 1 is a basic block diagram of the present invention, FIG. 2 is a block diagram of an embodiment of a local bus request guarantee circuit, FIG. 3 is a block diagram of an embodiment of a re-registration inhibiting circuit, and FIG. FIG. 5 is a detailed timing chart of the embodiment, FIG. 6 is an operation diagram of the entire system of the present invention, FIG. 7 is a block diagram of the conventional example 1, and FIG. FIG. 9 is a time chart when the system bus is of a time split type. In FIG. 1, 10: system bus 11: bus arbiter 12: bus interface circuit 13: local bus 14: local memory (LM) 15: processor (CPUi) 111: bus right return guarantee circuit 121: local bus request guarantee circuit 122: Re-registration suppression circuit

フロントページの続き (72)発明者 谷平 久光 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 脇村 慶明 東京都千代田区内幸町1丁目1番6号 日本電信電話株式会社内 (72)発明者 小町谷 忠芳 東京都千代田区内幸町1丁目1番6号 日本電信電話株式会社内 (58)調査した分野(Int.Cl.6,DB名) G06F 15/16Continuing from the front page (72) Inventor Hisamitsu Yanahira 1015 Uedanaka, Nakahara-ku, Kawasaki-shi, Kanagawa Prefecture Within Fujitsu Limited (72) Inventor Yoshiaki Wakimura 1-1-6 Uchisaiwaicho, Chiyoda-ku, Tokyo Nippon Telegraph and Telephone Corporation ( 72) Inventor Tadayoshi Komachiya 1-6, Uchisaiwaicho, Chiyoda-ku, Tokyo Nippon Telegraph and Telephone Corporation (58) Field surveyed (Int.Cl. 6 , DB name) G06F 15/16

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】システムバス(10)にバスインタフェース
回路(12)およびローカルバス(13)を介して複数のプ
ロセッサ(15)が接続され、各ローカルバスにローカル
メモリ(14)が設けられ、ローカルバスでのバス調停を
行うバスアービタ(11)を備え、システムバスがタイム
スプリット式に、ローカルバスがインタロック式にそれ
ぞれ制御されるマルチプロセッサシステムにおけるデッ
ドロック回避回路において、 バスインタフェース回路(12)は、ローカルバス(13)
を介してプロセッサ(15)からのコマンドを含むシステ
ムバス(10)の使用要求を受け取った後、システムバス
(10)側から当該ローカルバス(13)の使用要求を受け
取るとローカルバス開放要求を発生すると共に中断と再
実行をプロセッサ(15)に指示するローカルバス要求保
証回路(121)と、 システムバス(10)からの要求によるローカルバス(1
3)の使用が終了した時、上記要求を発したプロセッサ
(15)からのコマンドが再度登録されるのを抑止する再
登録抑止回路(122)とを備え、 バスアービタ(11)は、上記ローカルバス要求保証回路
(121)からのバス開放要求が発生した後その転送が終
了すると、上記要求を発したプロセッサ(15)に対して
バス権の返還を行うバス権返還保証回路(111)を備え
ることを特徴とするマルチプロセッサシステムにおける
デッドロック回避回路。
A plurality of processors (15) are connected to a system bus (10) via a bus interface circuit (12) and a local bus (13), and a local memory (14) is provided for each local bus. In a deadlock avoidance circuit in a multiprocessor system having a bus arbiter (11) for performing bus arbitration on a bus, a system bus being controlled in a time-split manner, and a local bus being controlled in an interlock manner, a bus interface circuit (12) , Local bus (13)
When a request to use the local bus (13) is received from the system bus (10) after receiving a request to use the system bus (10) including a command from the processor (15) via the processor (15), a local bus release request is generated. And a local bus request guarantee circuit (121) for instructing the processor (15) to suspend and re-execute, and a local bus (1) based on a request from the system bus (10).
And 3) when the use of 3) is completed, a re-registration inhibiting circuit (122) for inhibiting the command from the processor (15) that issued the request from being registered again. When the transfer is completed after a bus release request is issued from the request guarantee circuit (121), a bus right return guarantee circuit (111) for returning the bus right to the processor (15) that issued the request is provided. A deadlock avoidance circuit in a multiprocessor system, characterized in that:
JP1328794A 1989-12-19 1989-12-19 Deadlock avoidance circuit in multiprocessor system Expired - Fee Related JP2825889B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1328794A JP2825889B2 (en) 1989-12-19 1989-12-19 Deadlock avoidance circuit in multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1328794A JP2825889B2 (en) 1989-12-19 1989-12-19 Deadlock avoidance circuit in multiprocessor system

Publications (2)

Publication Number Publication Date
JPH03189757A JPH03189757A (en) 1991-08-19
JP2825889B2 true JP2825889B2 (en) 1998-11-18

Family

ID=18214184

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1328794A Expired - Fee Related JP2825889B2 (en) 1989-12-19 1989-12-19 Deadlock avoidance circuit in multiprocessor system

Country Status (1)

Country Link
JP (1) JP2825889B2 (en)

Also Published As

Publication number Publication date
JPH03189757A (en) 1991-08-19

Similar Documents

Publication Publication Date Title
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
AU639589B2 (en) Dynamic bus arbitration with grant sharing each cycle
JP2575356B2 (en) Method and apparatus for ordering the operation of a multiprocessor in a multiprocessor system
EP0535696B1 (en) Apparatus for avoiding processor deadlock in a multiprocessor system
JP3579198B2 (en) Data processing system and data processing method
KR970001919B1 (en) System and method for transfering information between multiple buses
US5717873A (en) Deadlock avoidance mechanism and method for multiple bus topology
JP2510799B2 (en) Data processing device and memory controller
JPH0354375B2 (en)
JPH103447A (en) Bus bridge device
US6026455A (en) Architecture and method for providing guaranteed access for a retrying bus master to a data transfer bridge connecting two buses in a computer system
JP2825889B2 (en) Deadlock avoidance circuit in multiprocessor system
JP3626292B2 (en) Bus interface control method
JPH05257903A (en) Multiprocessor system
JP2727514B2 (en) Transfer destination ID designating circuit
JPS63286949A (en) Bus control system
US6529980B1 (en) Superposition of host bridge status onto an existing request/grant signaling protocol
JP2976417B2 (en) Multiprocessor system
JP2992621B2 (en) Lock transfer method
JPH0575140B2 (en)
JPS619747A (en) Bus controller
JPH06250969A (en) Bus control method in multiprocessor system
JPH09204409A (en) Lock transfer control system
JPS6215903B2 (en)
JPH0512219A (en) Process transferring system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080911

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees