JP3460090B2 - バス・インタフェース制御回路 - Google Patents

バス・インタフェース制御回路

Info

Publication number
JP3460090B2
JP3460090B2 JP10411392A JP10411392A JP3460090B2 JP 3460090 B2 JP3460090 B2 JP 3460090B2 JP 10411392 A JP10411392 A JP 10411392A JP 10411392 A JP10411392 A JP 10411392A JP 3460090 B2 JP3460090 B2 JP 3460090B2
Authority
JP
Japan
Prior art keywords
command
response
buffer
system bus
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 - Fee Related
Application number
JP10411392A
Other languages
English (en)
Other versions
JPH05314061A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP10411392A priority Critical patent/JP3460090B2/ja
Publication of JPH05314061A publication Critical patent/JPH05314061A/ja
Application granted granted Critical
Publication of JP3460090B2 publication Critical patent/JP3460090B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数の中央処理装置を
システムバスに接続したマルチプロセッサシステムの各
中央処理装置に於けるシステムバスとローカルバスとの
間を接続するバス・インタフェース制御回路に関する。
【0002】マルチプロセッサシステムに於いては、複
数の中央処理装置をシステムバスに接続した構成を有
し、又中央処理装置は、システムバスとローカルバスと
の間を接続するバス・インタフェース制御回路と、ロー
カルバスに接続されたマイクロプロセッサやメモリを含
む構成が一般的である。このようなシステムに於いて、
特定の中央処理装置に対するアクセスが集中しても、デ
ッドロックが生じない制御構成があることが要望されて
いる。
【0003】
【従来の技術】マルチプロセッサシステムは、例えば、
図5に示すように、複数の中央処理装置(CPU)11
1 〜11n を入出力装置13等と共にシステムバス12
に接続した構成を有するものである。この中央処理装置
(以下「CPU」と略称する)111 〜11n は、図6
に、代表として示すCPU11n のように、マイクロプ
ロセッサ(MPU)15n と、ローカルバス16n と、
メモリ17n と、バス・インタフェース制御回路(BI
C)18n とを含む構成を有するもので、システムバス
12とローカルバス16n とをバス・インタフェース制
御回路18n を介して接続する。
【0004】又バス・インタフェース制御回路18
n は、例えば、図7に示すように、ローカルバス制御回
路21n と、送信バッファ22n と、受信バッファ24
n と、システムバス制御回路23n とを含む構成を有
し、システムバス制御回路23n は、システムバス12
との間を接続し、ローカルバス制御回路21n は、ロー
カルバス16n との間を接続する。送信バッファ22n
と受信バッファ24n とは、2面構成の先入れ先出し
(FIFO)メモリ構成を有するものである。
【0005】従来のバス・インタフェース制御回路18
1 〜18n の動作について、図7に示すバス・インタフ
ェース制御回路18n の構成を基に説明する。
【0006】(1).リードアクセスの送信 ローカルバス制御回路21n は、ローカルバス16n
介したリードアクセスにより、送信バッファ22n にリ
ードコマンドを書込んで、ローカルバス16nを保留す
る。
【0007】システムバス制御回路23n は、送信バッ
ファ22n のリードコマンドを読出して、システムバス
12に送出する(起動転送)。このリードコマンド送出
後は、システムバス12を解放する。
【0008】システムバス制御回路23n は、システム
バス12を介してアンサコマンドを受信する(応答転
送)と、受信バッファ24n にアンサコマンドを書込
み、システムバス12を解放する。
【0009】ローカルバス制御回路21n は、受信バッ
ファ24n のアンサコマンドを読出して、ローカルバス
16n に送出し、このアンサコマンド送出後にローカル
バス16n を解放する。
【0010】(2).ライトアクセスの送信 ローカルバス制御回路21n は、ローカルバス16n
介したライトアクセスにより、送信バッファ22n にラ
イトコマンドを書込み、書込んだ後にローカルバス16
n を解放する。
【0011】システムバス制御回路23n は、送信バッ
ファ22n のライトコマンドを読出して、システムバス
12へ送出し(起動転送)、このライトコマンド送出後
にシステムバス12を解放する。このライトアクセスの
場合は、起動転送のみ行い、応答転送は行わない。
【0012】(3).リードアクセスの受信 システムバス制御回路23n は、システムバス12を介
したリードコマンドを受信すると、受信バッファ24n
に、そのリードコマンドを書込んだ後に、システムバス
12を解放する。
【0013】ローカルバス制御回21n は、受信バッ
ファ24n のリードコマンドを読出して、ローカルバス
16n へのリードアクセスを行い、リードデータを受信
すると、送信バッファ22n に、リードデータを含むア
ンサコマンドを書込む。
【0014】システムバス制御回路23n は、送信バッ
ファ22n のアンサコマンドを読出して、システムバス
12に送出する(応答転送)。転送後は、システムバス
12解放する。
【0015】(4).ライトアクセスの受信 システムバス制御回路23n は、システムバス12から
のライトコマンド受信により、受信バッファ24n に、
そのライトコマンドを書込んだ後、システムバス12を
解放する。
【0016】ローカルバス制御回路21n は、受信バッ
ファ24n のライトコマンドを読出して、ローカルバス
16n へのライトアクセスを行う。このライトアクセス
の場合は、応答転送を行わない。
【0017】
【発明が解決しようとする課題】前述のような動作を行
うバス・インタフェース制御回路に於いては、対向する
ユニットが相互に相手のメモリに対してライトアクセス
を行っている場合、これらのユニットに対して、他のユ
ニットがリードアクセスを行うと、デッドロックとなる
可能性がある。
【0018】例えば、図8に示すCPU111 〜116
がシステムバス12に接続されたマルチプロセッサシス
テムに於いて、151 ,152 はマイクロプロセッサ
(MPU)、161 ,162 はローカルバス、171
172 はメモリ、181 ,182 はバス・インタフェー
ス制御回路、2211,2212,2221,2222は送信バ
ッファ、2411,2412,2421,2422は受信バッフ
ァを示す。又WTはライトコマンド、RDはリードコマ
ンドを示す。
【0019】CPU111 からCPU112 に対するラ
イトコマンドWTと、CPU112からCPU111
対するライトコマンドWTとが、それぞれのバス・イン
タフェース制御回路181 ,182 の送信バッファ22
11,2212,2221,2222に書込まれている時に、C
PU113 とCPU114 とがCPU111 にリードア
クセスして、CPU113 とCPU114 とがCPU1
1 にリードアクセスして、CPU111 の受信バッフ
ァ2411,2412にリードコマンドRDが書込まれ、C
PU116 とCPU115 とがCPU112 にリードア
クセスして、CPU112 の受信バッファ2421,24
22にリードコマンドRDが書込れた状態となることがあ
る。
【0020】このような状態に於いて、CPU111
CPU112 とは、それぞれの受信バッファに於けるリ
ードコマンドRDを処理して、アンサコマンドを送出し
ようとしても、それぞれの送信バッファにアンサコマン
ドを書込む為の空き領域がないので、リードコマンドR
Dを処理できないことになる。一方、CPU111 とC
PU112 とは、それぞれの送信バッファに於けるライ
トコマンドWTを処理しようとしても、相手側の受信バ
ッファに空き領域がない為に、ライトコマンドWTを送
出することができない。このような状態に於いては、C
PU111 とCPU112 とは、以後の処理を行うこと
ができなくなる。即ち、デッドロックの状態に陥ること
になる。
【0021】このような問題を解決する為には、送信バ
ッファにリードコマンド又はライトコマンドの書込みを
行う際に、アンサコマンドを書込む為の領域を常に空け
ておく制御手段が知られている。このような制御手段に
より、送信バッファに於けるリードコマンドの処理を行
った後のアンサコマンドを送出することができるから、
受信バッファ於けるリードコマンド又はライトコマン
ドを処理することが可能となり、前述のようなデッドロ
ックを回避することができる。
【0022】しかし、送信バッファにアンサコマンドを
書込む為の空き領域を形成したとしても、更に他のCP
Uからのリードアクセスに対しては、既にアンサコマン
ドが書込まれていると、リードコマンドを実行できない
ので、デッドロック状態となる問題がある。特に、CP
Uの個数が多いシステムに於いて発生する可能性が大き
い問題がある。
【0023】又図9は、図8と同一符号により同一機能
部分を示し、117 ,118 はCPU、ANはアンサコ
マンドを示し、CPU111 の送信バッファ2212にC
PU112 に対するライトコマンドWT、送信バッファ
2211にCPU113 に対するアンサコマンドANがそ
れぞれ書込まれ、受信バッファ2412にCPU114
らのリードコマンドRDが書込まれ、又CPU112
送信バッファ2222にCPU111 に対するライトコマ
ンドWT、送信バッファ2221にCPU115に対する
アンサコマンドANがそれぞれ書込まれ、受信バッファ
2422にCPU116 からのリードコマンドRDが書込
まれている状態を示す。
【0024】このような問題を解決する為に、送信バッ
ファにリードコマンドはライトコマンドの書込みを行
う際に、常にアンサコマンドの書込みを行う為のエリア
を空けておくように制御する方法が知られている。
【0025】このようにすれば、送信バッファに於ける
リードコマンドの処理を行ったあとでアンサコマンドを
送出することができるので、受信バッファに於けるリー
ドコマンド又はライトコマンドを処理することができ、
デッドロックを生じることが 防止される。
【0026】このような状態に於いて、CPU11 7
CPU11 1 に対してリードアクセス(又はライトアク
セス)を行い、CPU11 8 がCPU11 2 に対してリ
ードアクセス(又はライトアクセス)を行って、それぞ
れの受信バッファに書込まれた場合には、CPU11 1
とCPU11 2 とは、それぞれ送信バッファに於けるラ
イトコマンドWTの処理を行うことができない状態とな
る。即ち、デッドロックが生じる。又相互に相手側のメ
モリをリードする時に、更に他のCPUからのリードア
クセスが発生すると、同様に、デッドロックが生じる可
能性がある。
【0027】又図10は、図9と同一符号により同一機
能部分を示し、バス・インタフェース制御回路18 1
送信バッファ22 11 ,22 12 にアンサコマンドANがそ
れぞれ書込まれ、受信バッファ24 11 ,24 12 にリード
コマンドRDがそれぞれ書込まれ、バス・インタフェー
ス制御回路18 2 の送信バッファ22 21 ,22 22 にアン
サコマンドANがそれぞれ書込まれ、受信バッファ24
21 ,24 22 にリードコマンドRDが書込れた状態を示
す。このような状態となった場合も、デッドロックとな
る。
【0028】本発明は、前述の従来の問題点を解決する
もので、マルチプロセッサシステムに於けるデッドロッ
クが生じないバス・インタフェース制御回路を提供する
ことを目的とする。
【0029】
【課題を解決するための手段】本発明のバス・インタフ
ェース制御回路は、図1を参照して説明すると、(1)
スプリット方式のシステムバス1を介して複数の中央処
理装置2が接続され、システムバス1とローカルバス3
との間を接続制御するバス・インタフェース制御回路4
に於いて、システムバス1に対する送信コマンドを蓄積
する送信バッファ5と、このシステムバス1からの受信
コマンドを蓄積する受信バッファ6と、ローカルバス3
からのアクセスに従って起動コマンドを作成して、送信
バッファ 5に書込む機能と、受信バッファ6から読出し
た応答コマンドからリードデータをローカルバス3へ返
送する機能と、受信バッファ6から読出した起動コマン
ドによってローカルバス3へアクセスを行い、リードア
クセスに対する応答コマンドを作成して送信バッファ5
に書込む機能とを有するローカルバス制御回路7と、シ
ステムバス1から受信した起動コマンド及び応答コマン
ドを受信バッファ6に書込む機能と、送信バッファ5か
ら読出した起動コマンド及び応答コマンドをシステムバ
ス1へ転送する機能と、システムバス1から受信した応
答コマンドを受信バッファ6に書込むべき空きを残して
起動コマンドを書込み、システムバス1からの応答コマ
ンドを常に受信可能にする応答コマンドの受信制御機能
と、送信バッファ5に起動コマンドが書込まれたのちに
応答コマンドが書込まれたとき、この応答コマンドを優
先してシステムバス1へ転送する応答コマンドの追越し
制御機能とを有するシステムバス制御回路8とを備えて
いる。
【0030】(2)又送信バッファ5を起動転送用送信
バッファ25 n (図2参照)と、応答転送用送信バッフ
ァ26 n (図2参照)とにより構成し、ローカルバス制
御回路7は、ローカルバス3から受信したアクセスから
起動コマンドを作成して起動転送用送信バッファ25 n
に書込む機能と、受信バッファ6から読出した起動コマ
ンドによってローカルバス3へアクセスを行い、リード
アクセスのときは応答コマンドを作成して応答転送用送
信バッファ26 n ヘ書込む機能を有し、システムバス制
御回路8は、起動転送用送信バッファ25 n から読出し
た起動コマンドをシステムバス1へ転送する機能と、応
答転送用送信バッファ26 n から読出した応答コマンド
をシステムバス1へ転送する機能と、起動転送用送信バ
ッファ25 n に起動コマンドが書込まれており、且つ応
答転送用送信バッファ26 n に応答コマンドが書込まれ
ているときは応答コマンドを優先して、システムバス1
へ転送する応答コマンドの追越し制御機能とを有する構
成とする。
【0031】(3)又送信バッファ5は、起動コマンド
用エリアと応答コマンド用エリアとを有し、前記ローカ
ルバス制御回路7は、ローカルバス3から受信したアク
セスから起動コマンドを作成して送信バッファ5の起動
コマンド用エリアに書込む機 能と、受信バッファ6から
読出した起動コマンドによって、ローカルバス3へアク
セスを行い、リードアクセスのときは応答コマンドを作
成して、送信バッファ5の応答コマンド用エリアに書込
む機能とを有し、システムバス制御回路8は、送信バッ
ファ5の起動コマンド用エリアに起動コマンドが書込ま
れており、且つ送信バッファ5の応答コマンド用エリア
に応答コマンドが書込まれているときは応答コマンドを
先にシステムバス1へ転送する応答コマンドの追越し制
御機能を有する構成とすることができる。
【0032】(4)又送信バッファ5は、複数のエント
リを書込み、各エントリ毎に起動コマンドと応答コマン
ドとの別を示す識別情報を付加して書込む構成を有し、
システムバス制御回路8は、識別情報から送信コマンド
と応答コマンドがともに書込まれていると判断したとき
は、応答コマンドを先にシステムバス1へ転送する応答
コマンドの追越し制御機能を有する構成とすることがで
きる。
【0033】(5)又システムバス制御回路8は、シス
テムバス1へのリードアクセスによる起動コマンドの転
送を行ってから、システムバス1から応答コマンドを受
信するまでの間は、システムバス1から他の起動コマン
ドを受信しない制御機能の応答コマンドの受信制御機能
を有する構成とすることができる。
【0034】(6)又受信バッファ6は、起動転送用受
信バッファ27 n (図2参照)と、応答転送用受信バッ
ファ28 n (図2参照)とからなり、システムバス制御
回路8は、前記システムバス1から受信した起動コマン
ドを起動転送用受信バッファ27 n に書込む機能と、シ
ステムバス1から受信した応答コマンドを応答転送用受
信バッファ28 n に書込む機能とによる応答コマンドの
受信制御機能を有する構成とすることができる。
【0035】(7)又受信バッファ6は、起動コマンド
用エリアと応答コマンド用エリアとを有し、システムバ
ス制御回路8は、システムバス1から受信した起動コマ
ンドを起動コマンド用エリアに書込む機能と、システム
バス1から受信した応答コマ ンドを応答コマンド用エリ
アに書込む機能とによる応答コマンドの受信制御機能を
有する構成とすることができる。
【0036】(8)又受信バッファ6は、複数のエント
リを書込み、各エントリ毎に起動コマンドと応答コマン
ドとの別を示す識別情報を付加して書込む構成を有し、
システムバス制御回路8は、識別情報を基に、受信バッ
ファ6に応答コマンドが書込まれていないことを判断し
たとき、応答コマンドを書込むエリアを残して起動コマ
ンドを受信する機能による応答コマンドの受信制御機能
を有する構成とすることができる。
【0037】(9)又システムバス制御回路8は、シス
テムバス1から受信バッファ6に起動コマンドを書込む
ときは、常に応答コマンドを書込むエリアを残して起動
コマンドを受信する機能による応答コマンドの受信制御
機能を有する構成とすることができる。
【0038】
【作用】システムバス1は、スプリット方式を適用した
場合を示し、スプリット方式は、起動転送と応答転送と
があり、リードアクセスの場合は、起動転送を行ってか
ら応答転送を受信するまでの間に、他のアクセスを受信
可能とするものであり、バス・インタフェース制御回路
4のシステムバス制御回路8は、送信バッファ5にシス
テムバス1に対する送信コマンドを蓄積し、受信バッフ
ァ6にシステムバス1からの受信コマンドを蓄積し、又
ローカルバス制御回路7は、ローカルバス3から受信し
たアクセスから起動コマンドを作成して送信バッファ5
に書込み、受信バッファ6から読出した応答コマンドか
らリードデータをローカルバス3へ返送し、受信バッフ
ァ5から読出した起動コマンドによってローカルバス3
へアクセスを行い、リードアクセスのときは、応答コマ
ンドを作成して送信バッファ5に書込む制御を行う。
【0039】そして、システムバス制御回路8は、シス
テムバス1から受信した起動コマン ド及び応答コマンド
を受信バッファ6に書込み、送信バッファ5から読出し
た起動コマンド及び応答コマンドをシステムバス1へ転
送すると共に、応答コマンドの受信制御機能によって、
応答コマンドを書込むべき空きを残して起動コマンドを
書込み、それにより、システムバス1から応答コマンド
を常に受信可能とし、更に応答コマンドの追越し制御機
能によって、送信バッファ5に起動コマンドが書込まれ
たのちに応答コマンドが書込まれたときは、その応答コ
マンドを優先してシステムバス1へ転送する。
【0040】複数のリードコマンドを同時に受信する
と、応答転送のアンサコマンドを、受信リードコマンド
の分だけ常に処理できないと、デッドロックを生じる可
能性がある。そこで、送信バッファ5に起動コマンドと
応答コマンドとが書込まれ、起動コマンドの転送(起動
転送)ができないときは、応答コマンドの転送(応答転
送)を先に行うように制御する。更に、リードアクセス
に対する応答コマンドを常に受信できるように制御す
る。従って、マルチプロセッサシステムに於ける特定の
ユニットに複数のアクセスが集中しても、デッドロック
が生じないように制御することができる。
【0041】又送信バッファ5を、起動転送用送信バッ
ファ25 n と、応答転送用送信バッファ26 n とから構
成し、ローカルバス制御回路7が、ローカルバス3から
受信したアクセスから起動コマンドを作成して起動転送
用送信バッファ25 n に書込み、受信バッファ6から読
出した起動コマンドによってローカルバス3へアクセス
を行い、リードアクセスのときは応答コマンドを作成し
て応答転送用送信バッファ26 n ヘ書込み、システムバ
ス制御回路8が、起動転送用送信バッファ25 n から読
出した起動コマンドをシステムバス1へ転送し、応答転
送用送信バッファ26 n から読出した応答コマンドをシ
ステムバス1へ転送するとともに、起動転送用送信バッ
ファ25 n に起動コマンドが書込まれ、且つ応答転送用
送信バッファ26 n に応答コマンドが書込まれていると
きは、応答コマンドを優先してシステムバス1へ転送す
ることにより、応答コマンドの追越し制御を行い、デッ
ドロックを回避することができる。
【0042】又送信バッファ5が起動コマンド用エリア
と応答コマンド用エリアとを有し、ローカルバス制御回
路7が、ローカルバス3から受信したアクセスから起動
コマンドを作成して送信バッファ5の起動コマンド用エ
リアに書込み、受信バッファから読出した起動コマンド
によりローカルバス3へアクセスを行い、リードアクセ
スのときは応答コマンドを作成して送信バッファ5の応
答コマンド用エリアに書込み、システムバス制御回路8
が、送信バッファ5の起動コマンド用エリアに起動コマ
ンドが書込まれ、且つ送信バッファ5の応答コマンド用
エリアに応答コマンドが書込まれているときは応答コマ
ンドを先にシステムバス1へ転送することにより、応答
コマンドの追越し制御を行い、デッドロックを回避する
ことができる。
【0043】又送信バッファ5に、複数のエントリを書
込み、各エントリ毎に起動コマンドと応答コマンドの別
を示す識別情報を付加して書込み、システムバス制御回
路7は、この識別情報から送信コマンドと応答コマンド
がともに書込まれていると判断すると、応答コマンドを
先にシステムバス1へ転送する。即ち、応答コマンドの
追越し制御を行い、デッドロックを回避することができ
る。
【0044】又システムバス制御回路8は、リードアク
セスによる起動コマンドの転送から応答コマンドの受信
までの間は、他の起動コマンドを受信しないよう制御す
ることにより、デッドロックを回避することができる。
【0045】又受信バッファ6を起動転送用受信バッフ
ァ27 n と応答転送用受信バッファ28 n とから構成
し、システムバス制御回路8は、システムバス1から受
信した起動コマンドを起動転送用受信バッファ27 n
書込み、システムバス1から受信した応答コマンドを応
答転送用受信バッファ28 n に書込むことにより、応答
コマンドの受信制御機能を実現することができる。
【0046】又受信バッファ6に起動コマンド用エリア
と応答コマンド用エリアとを設け、 システムバス制御回
路8は、システムバス1から受信した起動コマンドを起
動コマンド用エリアに書込み、システムバス1から受信
した応答コマンドを応答コマンド用エリアに書込む制御
により、応答コマンドの準制御機能を実現することがで
きる。
【0047】又受信バッファ6に、複数のエントリを書
込み、各エントリ毎に起動コマンドと応答コマンドの別
を示す識別情報を付加して書込む構成とし、システムバ
ス制御回路8は、この識別情報から受信バッファ6に応
答コマンドが書込まれていないことを判断したとき、応
答コマンドを書込むエリアを残して起動コマンドを受信
することにより、応答コマンドの受信制御機能を実現す
ることができる。
【0048】又システムバス制御回路8が、システムバ
ス1から受信バッファ6に起動コマンドを書込むとき
は、常に応答コマンドを書込むエリアを残して起動コマ
ンドを受信することにより、応答コマンドの受信制御機
能を実現することができる。
【0049】
【実施例】本発明は、図1に示すように、システムバス
1に複数の中央処理装置(以下CPUと略称する)2が
接続されたマルチプロセッサシステムに於けるバス・イ
ンタフェース制御回路4であり、このバス・インタフェ
ース制御回路4は、システムバス1とローカルバス3と
の間の制御を行うもので、送信バッファ5と受信バッフ
ァ6とローカルバス制御回路7とシステムバス制御回路
8とを含む構成を有するものである。
【0050】本発明の第1の実施例に於いて、ローカル
バス制御回路7は、ローカルバス3から受信したアクセ
スにより起動コマンドを作成して送信バッファ5に書込
む機能と、受信バッファ6から読出した応答コマンドか
らリードデータをローカルバス3に送出する機能と、受
信バッファ6から読出した起動コマンドによってローカ
ルバス3へのアクセスを行い、リードアクセスの時は応
答コマンドを作成して送信バッファ5に書込む機能とを
有するものである。
【0051】又システムバス制御回路8は、システムバ
ス1から受信した起動コマンド及び応答コマンドを受信
バッファ6に書込む機能と、送信バッファ5から読出し
た起動コマンド及び応答コマンドをシステムバス1へ送
出する機能と、応答コマンドを書込むべき空き領域を残
して起動コマンドを書込み、システムバス1からの応答
コマンドを常に受信可能とする応答コマンドの受信制御
機能と、送信バッファ5に起動コマンドが書込まれた後
に、応答コマンドが書込まれた時に、応答コマンドを優
先してシステムバス1へ送出する応答コマンドの追越し
制御機能とを有するものである。
【0052】従って、送信バッファ5に起動コマンドと
応答コマンドとが書込まれ、起動コマンドの転送(起動
転送)ができない時は、応答コマンドの転送(応答転
送)を先に行うように制御し、又リードアクセスに対す
る応答コマンドを常に受信できるように制御することに
より、複数のアクセスが集中しても、デッドロックが生
じないことになる。
【0053】図2は本発明の第2の実施例を示し、図1
に於ける符号を括弧内の符号として対応付けを行うと、
12はシステムバス(1)、16 n はローカルバス
(3)、18 n はバス・インタフェース制御回路(BI
C)(4)、21 n はローカルバス制御回路(7)、2
n はシステムバス制御回路(8)、25 n は起動転送
用送信バッファ(5)、26 n は応答転送用送信バッフ
ァ(5)、27 n は起動転送用受信バッファ(6)、2
n は応答転送用受信バッファ(6)を示す。
【0054】次に、この第2の実施例の動作について説
明する。 (1).リードアクセスの送信 ローカルバス制御回路21 n は、ローカルバス16 n
らのリードアクセスを受信すると、起動転送用送信バッ
ファ25 n にリードコマンド作成して書込み、ローカル
バス16 n を保留する。
【0055】システムバス制御回路23 n は、起動転送
用送信バッファ25 n のリードコマンドを読出してシス
テムバス12へ転送する。転送後は、システムバス12
を解放する。
【0056】システムバス制御回路23 n は、システム
バス12からアンサコマンド(応答コマンド)を受信す
ると、応答転送用受信バッファ28 n にアンサコマンド
を書込み、システムバス12を解放する。
【0057】ローカルバス制御回路21 n は、応答転送
用受信バッファ28 n のアンサコマンドを読出し、ロー
カルバス16 n へリードデータを返送して、ローカルバ
ス16 n を解放する。
【0058】(2).ライトアクセスの送信 ローカルバス制御回路21 n は、ローカルバス16 n
らライトアクセスを受信すると、起動転送用送信バッフ
ァ25 n にライトコマンドを書込み、ローカルバス16
n を解放する。
【0059】システムバス制御回路23 n は、起動転送
用送信バッファ25 n のライトコマンドを読出し、シス
テムバス12へ転送する。転送後は、システムバス12
を解放する。
【0060】(3).リードアクセスの受信 システムバス制御回路23 n は、システムバス12から
リードコマンドを受信すると、起動転送用受信バッファ
27 n にリードコマンドを書込み、システムバス12を
解放する。
【0061】ローカルバス制御回路21 n は、起動転送
用受信バッファ27 n からリードコマンドを読出し、ロ
ーカルバス16 n へリードアクセスを行い、リードデー
タを受信すると、応答転送用送信バッファ26 n にリー
ドデータを含むアンサコマン ドを書込む。
【0062】システムバス制御回路23 n は、応答転送
用送信バッファ26 n のアンサコマンドを読出して、シ
ステムバス12へ転送する。転送後は、システムバス1
2を解放する。
【0063】(4).ライトアクセスの受信 システムバス制御回路23 n は、システムバス12から
ライトコマンドを受信すると、起動転送用受信バッファ
27 n にライトコマンドを書込み、システムバス12を
解放する。
【0064】ローカルバス制御回路21 n は、起動転送
用受信バッファ27 n からライトコマンドを読出し、ロ
ーカルバス16 n へライトアクセスを行う。
【0065】又システムバス制御回路23 n は、起動転
送用送信バッファ25 n と応答転送用送信バッファ26
n との両方に書込みが行われている場合には、応答転送
用送信バッファ26 n の処理を先に行う。この場合、受
信バッファとしては、起動転送用受信バッファ27 n
は別に、応答転送用受信バッファ28 n を設けている
為、アンサコマンドを常に受信できる。従って、従来例
に於けるようなデッドロックを生じることはない。
【0066】図3は、本発明の第2の実施例の動作例の
説明図であり、図9に於ける符号と同一符号は同一の名
称部分を示し、25 11, 25 12 及び25 21, 25 22 は、
それぞれCPU11 1, CPU11 2 に於けるそれぞれ2
面のFIFOメモリからなる起動転送用送信バッファ、
26 11, 26 12 及び26 21, 26 22 は、それぞれCPU
11 1, CPU11 2 に於けるそれぞれ2面のFIFOメ
モリからなる応答転送用送信バッファ、27 11, 27 12
及び27 21, 27 22 は、それぞれCPU11 1, CPU1
2 に於けるそれぞれ2面のFIFOメモリからなる起
動転送用受信バッファ、28 11, 28 12 及び28 21,
22 は、それぞれCPU11 1, CPU1 2 に於けるそ
れぞれ2面のFIFOメモリからなる応答転送用受信バ
ッファである。
【0067】CPU11 1 の起動転送用送信バッファ2
11, 25 12 には、CPU11 1 からCPU11 2 に対
する2つのライトコマンドWTが書込まれ、CPU11
2 の起動転送用送信バッファ25 21, 25 22 には、CP
U11 2 からCPU11 1 に対する2つのライトコマン
ドWTが書込まれ、CPU11 1 の応答転送用送信バッ
ファ26 12 には、CPU11 1 からCPU11 3 に対す
るアンサコマンドANが書込まれ、CPU11 2 の応答
転送用送信バッファ26 22 には、CPU11 2 からCP
U11 5 に対するアンサコマンドANが書込れた状態を
示す。
【0068】更に、CPU11 1 の起動転送用受信バッ
ファ27 12 には、CPU11 4 からCPU11 1 に対す
るリードコマンドRDが書込まれ、CPU11 2 の起動
転送用受信バッファ27 22 には、CPU11 6 からCP
U11 2 に対するリードコマンドRDが書込まれている
状態の時に、CPU11 7 からCPU11 1 に対してリ
ードコマンドRDを送出し、CPU11 8 からCPU1
2 に対してリードコマンドRDを送出しても、CPU
11 1 の応答転送用送信バッファ26 11 が空いているの
で、起動転送用受信バッファ27 12 に於けるリードコマ
ンドRDの処理を行うことができる。又CPU11 2
応答転送用送信バッファ26 21 が空いているので、起動
転送用受信バッファ27 22 に於けるリードコマンドRD
の処理を行うことができる。
【0069】この場合、CPU11 2 に応答転送用受信
バッファ28 21, 28 22 があるので、CPU11 1 の応
答転送用送信バッファ26 12 に於けるアンサコマンドA
Nの転送を常に受信することができ、CPU11 1 に応
答転送用受信バッファ28 11, 28 12 があるので、CP
U11 2 の応答転送用送信バッファ26 22 に於けるアン
サコマンドANの転送を常に受信することができる。従
って、デッドロックを生じることがない構成となる。
【0070】本発明の第3の実施例として、図2に示す
起動転送用送信バッファと応答転送用送信バッファと
を、物理的に1つの送信バッファで構成し、起動コマン
ド用エリアと応答コマンド用エリアとに分離してアクセ
スする構成とすることができる。この場合に於ける送信
バッファの論理的構成及び書込み及び読出しの制御は、
第2の実施例の場合と同様であり、従って、図2を参照
した動作説明と同様の動作を行うことができる。
【0071】本発明の第4の実施例として、起動転送用
送信バッファと応答転送用送信バッファとを1つの送信
バッファで構成し、各エントリ毎に起動コマンドと応答
コマンドとの別を示す情報を付加することによって、シ
ステムバス制御回路は、送信バッファに起動コマンドと
応答コマンドとが共に書込まれている場合には、応答コ
マンドの処理を優先して行うようにすることができる。
この場合も送信バッファの論理的構成及び制御構成は、
図2を参照して説明した第2の実施例の場合と同じであ
る。
【0072】本発明の第5の実施例として、システムバ
ス制御回路は、リードアクセスによる起動コマンドの転
送からリードに対する応答コマンドの受信までの間は、
他の起動コマンドを受信しないように制御する機能を設
けることができる。それにより、応答コマンドを常に受
信バッファに書込める状態を作ることができる。この場
合、2つのユニットが相互に相手のメモリをリードアク
セスしても、何れかが一方のユニットのリードアクセス
が完了しないと、他方のユニットのリードアクセスを行
うことができないので、デッドロックを生じることはな
い。
【0073】本発明の第6の実施例として、起動転送用
受信バッファと応答転送用受信バッファとを、物理的に
1つの受信バッファで構成し、起動コマンド用エリアと
応答コマンド用エリアとをメモリ領域として分離するこ
とができる。この場合の受信バッファの論理的構成及び
制御構成は、図2を参照して説明した第2の実施例の場
合と同じである。
【0074】本発明の第7の実施例として、起動転送用
受信バッファと応答転送用受信バッファとを物理的に1
つの受信バッファで構成し、各エントリ毎に、起動コマ
ンドと応答コマンドの別を示す情報を付加することによ
って、システムバス制御回路は、受信バッファに応答コ
マンドが書込まれていなければ、応答コマンドを書込む
エリアを残して起動コマンドを受信する制御機能を設け
ることができる。それにより、常に応答コマンドを受信
できる状態を実現することができる。
【0075】本発明の第8の実施例として、起動転送用
受信バッファと応答転送用受信バッファとを物理的に1
つの受信バッファで構成し、受信バッファに起動コマン
ドを書込む時に、常に応答コマンドを書き込むエリアを
残して起動コマンドを受信する制御機能を設けることが
できる。それにより、常に応答コマンドを受信できる状
態を実現することができる。
【0076】図4は、本発明の前述の第7及び第8の実
施例の動作を説明するもので、図4と同一符号は同一部
分を示し、29 11 ,29 12 ,29 21 ,29 22 は、起動転
送/応答転送共用受信バッファを示す。図示のように、
CPU11 1 の応答転送用送信バッファ26 11, 26 12
にアンサコマンドANが書込まれ、CPU11 2 の応答
転送用送信バッファ26 21, 26 22 にアンサコマンドA
Nが書込まれ、又CPU11 1 の起動転送/応答転送共
用受信バッファ29 12 にリードコマンドRDが書込ま
れ、CPU11 2 の起動転送/応答転送共用受信バッフ
ァ29 22 にリードコマンドRDが書込まれている状態に
於いて、例えば、CPU11 5 からCPU11 1 に対し
て、又はCPU11 8 からCPU11 2 に対して、リー
ドコマンドRDを書込もうとしても、CPU11 1, CP
U11 2 はこれらのリードコマンドを受信しないので、
CPU11 1, CPU11 2 は、常にアンサコマンドAN
を受信することができ、従ってデッドロックに陥ること
はない。
【0077】
【発明の効果】以上説明したように、本発明は、送信バ
ッファ5と受信バッファ6とローカルバス制御回路7と
システムバス制御回路8とを含む構成を有し、ローカル
バス制 御回路7は、ローカルバス3からのアクセスによ
って起動コマンドを作成して送信バッファ5に書込み、
受信バッファ6から読出した応答コマンドからリードデ
ータをローカルバス3へ送出し、又受信バッファ6から
読出した起動コマンドによりローカルバス3に対するア
クセスを行い、リードアクセスの場合は、応答コマンド
を作成して送信バッファ5に書込み、又システムバス制
御回路8は、システムバス1からの起動コマンド及び応
答コマンドを受信バッファ6に書込み、送信バッファし
5から読出した起動コマンド及び応答コマンドをシステ
ムバス1へ転送し、応答コマンドの書込みを可能とする
空き領域を残して起動コマンドを書込む制御を行い、又
送信バッファ5に起動コマンドが書込まれた後に、応答
コマンドが書込まれた時は、応答コマンドを優先処理す
る機能によって、複数のアクセスが集中した場合に於い
ても、デッドロック生じないように制御することができ
る利点がある。従って、マルチプロセッサシステムを構
築する場合の中央処理装置(CPU)の台数の制限がな
くなり、高性能且つ高安定度のシステムを構成すること
ができる。
【図面の簡単な説明】
【図1】本発明の原理的構成を示す図である。
【図2】本発明の第2の実施例におけるバス・インタフ
ェース制御回路の構成を示す図である。
【図3】第2の実施例の場合のマルチプロセッサシステ
ムの動作例を示す図である。
【図4】第7および第8の実施例の場合のマルチプロセ
ッサシステムの動作を説明する図である。
【図5】従来の、および本発明が適用されるマルチプロ
セッサシステムの構成例を示す図である。
【図6】CPUの構成例を示す図である。
【図7】従来のバス・インタフェース制御回路の構成例
を示す図である。
【図8】従来方式の場合のマルチプロセッサシステムの
動作例(1) を示す図である。
【図9】従来方式の場合のマルチプロセッサシステムの
動作例(2) を示す図である。
【図10】従来方式の場合のマルチプロセッサシステム
の動作例(3) を示す図である。
【符号の説明】
1 システムバス 2 CPU 3 ローカルバス 4 バス・インタフェース制御回路 5 送信バッファ 6 受信バッファ 7 ローカルバス制御回路 8 システムバス制御回路 25n 起動転送用送信バッファ 26n 応答転送用送信バッファ 27n 起動転送用受信バッファ 28n 応答転送用受信バッファ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭57−25030(JP,A) 特開 平3−262071(JP,A) 特開 平1−241660(JP,A) 特開 昭56−110367(JP,A) 特開 昭61−170853(JP,A) 特開 昭61−80350(JP,A) 特開 昭53−73933(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 13/36 310 G06F 15/177 678

Claims (9)

    (57)【特許請求の範囲】
  1. 【請求項1】 スプリット方式のシステムバス(1)を
    介して複数の中央処理装置(2)が接続され、前記シス
    テムバス(1)とローカルバス(3)との間を接続制御
    するバス・インタフェース制御回路(4)に於いて、 前記システムバスに対する送信コマンドを蓄積する送信
    バッファ(5)と、 前記システムバスからの受信コマンドを蓄積する受信バ
    ッファ(6)と、 前記ローカルバス(3)からアクセスに従って起動コ
    マンドを作成して前記送信バッファ(5)に込む機能
    と、前記受信バッファ(6)から出した応答コマンド
    からリードデータを前記ローカルバス(3)へ返送する
    機能と、前記受信バッファ(6)から読出した起動コマ
    ンドによって前記ローカルバス(3)へアクセスを行
    い、リードアクセスに対する応答コマンドを作成して前
    記送信バッファ(5)に込む機能とを有するローカル
    バス制御回路(7)と、 前記システムバス(1)から受信した起動コマンド
    応答コマンドを前記受信バッファ(6)込む機能
    と、前記送信バッファ(5)から出した起動コマンド
    び応答コマンドを前記システムバス(1)へ転送する
    機能と、前記システムバス(1)から受信した前記応答
    コマンドを前記受信バッファ(6)込むべき空きを
    残して起動コマンドを書込み、前記システムバス(1)
    からの応答コマンドを常に受信可能にする応答コマンド
    の受信制御機能と、前記送信バッファ(5)に起動コマ
    ンドが込まれたのちに応答コマンドが込まれたと
    、該応答コマンドを優先して前記システムバス(1)
    へ転送する応答コマンドの追越し制御機能とを有するシ
    ステムバス制御回路(8)とを備えることを特徴とする
    バス・インタフェース制御回路。
  2. 【請求項2】 前記送信バッファ(5)起動転送用送
    信バッファ(25n)と、応答転送用送信バッファ(2
    n )とにより構成し、前記ローカルバス制御回路
    (7)、前記ローカルバス(3)から受信したアクセ
    スから起動コマンドを作成して前記起動転送用送信バッ
    ファ(25n )に込む機能と、前記受信バッファ
    (6)から出した起動コマンドによって前記ローカル
    バス(3)へアクセスを行い、リードアクセスのときは
    応答コマンドを作成して前記応答転送用送信バッファ
    (26n )ヘ込む機能を有し、前記システムバス制御
    回路(8)は、前記起動転送用送信バッファ(25n
    から出した起動コマンドを前記システムバス(1)へ
    転送する機能と、前記応答転送用送信バッファ(2
    n )から出した応答コマンドを前記システムバス
    (1)へ転送する機能、前記起動転送用送信バッファ
    (25n )に起動コマンドが込まれており、且つ前記
    応答転送用送信バッファ(26n )に応答コマンドが
    込まれているときは応答コマンドを優先して前記システ
    ムバス(1)へ転送する前記応答コマンドの追越し制御
    機能を有することを特徴とする請求項1に記載のバス
    ・インタフェース制御回路
  3. 【請求項3】 前記送信バッファ(5)は、起動コマン
    ド用エリアと応答コマンド用エリアとを有し、前記ロー
    カルバス制御回路(7)、前記ローカルバス(3)か
    ら受信したアクセスから起動コマンドを作成して前記送
    信バッファ(5)の起動コマンド用エリアに込む機能
    と、前記受信バッファ(6)から出した起動コマンド
    よって前記ローカルバス(3)へアクセスを行い、
    ードアクセスのときは応答コマンドを作成して前記送信
    バッファ(5)の前記応答コマンド用エリアに込む機
    を有し、前記システムバス制御回路(8)、前記
    送信バッファ(5)の起動コマンド用エリアに起動コマ
    ンドが込まれており、送信バッファの応答コマ
    ンド用エリアに応答コマンドが込まれているときは応
    答コマンドを先に前記システムバス(1)へ転送する前
    記応答コマンドの追越し制御機能を有することを特徴と
    する請求項1に記載のバス・インタフェース制御回路
  4. 【請求項4】 前記送信バッファ(5)は、複数のエン
    トリを書込み、各エントリに起動コマンドと応答コマ
    ンドの別を示す識別情報を付加して書込む構成を有
    、前記システムバス制御回路(8)は、前記識別情報
    から送信コマンドと応答コマンドがともに込まれてい
    ると判断したときは、応答コマンドを先に前記システム
    バス(1)へ転送する前記応答コマンドの追越し制御機
    能を有すことを特徴とする請求項1に記載のバス・イ
    ンタフェース制御回路
  5. 【請求項5】 前記システムバス制御回路(8)、前
    記システムバス(1)へのリードアクセスによる起動コ
    マンドの転送を行ってから前記システムバス(1)から
    応答コマンドを受信するまでの間は、前記システムバス
    (1)から他の起動コマンドを受信しない制御機能の前
    記応答コマンドの受信制御機能を有することを特徴とす
    る請求項1に記載のバス・インタフェース制御回路
  6. 【請求項6】 前記受信バッファ(6)は、起動転送用
    受信バッファ(27n )と、応答転送用受信バッファ
    (28n )とからなり、前記システムバス制御回路
    (8)は、前記システムバス(1)から受信した起動コ
    マンドを前記起動転送用受信バッファ(27n )に
    む機能と、前記システムバス(1)から受信した応答コ
    マンドを前記応答転送用受信バッファ(28n )に
    む機能とによる前記応答コマンドの受信制御機能を有す
    ることを特徴とする請求項1に記載のバス・インタフェ
    ース制御回路
  7. 【請求項7】 前記受信バッファ(6)は、起動コマン
    ド用エリアと応答コマンド用エリアとを有し、前記シス
    テムバス制御回路(8)、前記システムバス(1)か
    ら受信した起動コマンドを前記起動コマンド用エリアに
    込む機能と、前記システムバス(1)から受信した応
    答コマンドを前記応答コマンド用エリアに込む機能と
    による前記応答コマンドの受信制御機能を有することを
    特徴とする請求項1に記載のバス・インタフェース制御
    回路
  8. 【請求項8】 前記受信バッファ(6)、複数のエン
    トリを込む機能と、各エントリに起動コマンドと応
    答コマンドの別を示す識別情報を付加する機能とを有
    し、前記システムバス制御回路(8)、該識別情報か
    ら前記受信バッファ(6)に応答コマンドが込まれて
    いないことを判断したとき、応答コマンドを込むエリ
    アを残して起動コマンドを受信する機能による前記応答
    コマンドの受信制御機能を有することを特徴とする請求
    項1に記載のバス・インタフェース制御回路
  9. 【請求項9】 前記システムバス制御回路(8)、前
    記システムバス(1)から前記受信バッファ(6)に起
    動コマンドを込むときは、常に応答コマンドを込む
    エリアを残して起動コマンドを受信する機能による前記
    応答コマンドの受信制御機能を有することを特徴とする
    請求項1に記載のバス・インタフェース制御回路
JP10411392A 1992-04-23 1992-04-23 バス・インタフェース制御回路 Expired - Fee Related JP3460090B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10411392A JP3460090B2 (ja) 1992-04-23 1992-04-23 バス・インタフェース制御回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10411392A JP3460090B2 (ja) 1992-04-23 1992-04-23 バス・インタフェース制御回路

Publications (2)

Publication Number Publication Date
JPH05314061A JPH05314061A (ja) 1993-11-26
JP3460090B2 true JP3460090B2 (ja) 2003-10-27

Family

ID=14372076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10411392A Expired - Fee Related JP3460090B2 (ja) 1992-04-23 1992-04-23 バス・インタフェース制御回路

Country Status (1)

Country Link
JP (1) JP3460090B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3068427B2 (ja) * 1995-03-15 2000-07-24 甲府日本電気株式会社 メッセージ制御装置
ITTO20010838A1 (it) * 2001-08-30 2003-03-02 Telecom Italia Lab Spa Metodo per trasferire dati in un circuito elettronico, circuito elettronico e dispositivo relativo.
JP6193910B2 (ja) * 2015-04-03 2017-09-06 ファナック株式会社 インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム

Also Published As

Publication number Publication date
JPH05314061A (ja) 1993-11-26

Similar Documents

Publication Publication Date Title
JPS63255759A (ja) 制御システム
US6327637B1 (en) Interface tap for 1394-enabled serial bus device
EP1288785B1 (en) Method and interface for improved efficiency in performing bus-to-bus read data transfers
JP3460090B2 (ja) バス・インタフェース制御回路
JPS621057A (ja) 転送制御装置
JPH11272603A (ja) バスブリッジ装置及びトランザクションフォワード方法
JP3703532B2 (ja) 多重化アドレスバスを備えたコンピュータシステム
JP3189269B2 (ja) ネットワークプリンタ
US6434592B1 (en) Method for accessing a network using programmed I/O in a paged, multi-tasking computer
KR19990055450A (ko) 듀얼포트 메모리를 사용하는 프로세서의 인터페이스 장치
JP2885640B2 (ja) データバス転送方法
JPH0340417B2 (ja)
JPS6341103B2 (ja)
JP2715815B2 (ja) デ−タ書き込み方法
JP2000155738A (ja) データ処理装置
JP2573790B2 (ja) 転送制御装置
JP2522412B2 (ja) プログラマブルコントロ―ラと入出力装置の間の通信方法
EP1459191B1 (en) Communication bus system
JP3056169B2 (ja) データ送受信方式とその方法
JPH0471224B2 (ja)
JP3323430B2 (ja) 通信制御装置
JP2803616B2 (ja) 入出力バスインタフェース制御方式
JP2610971B2 (ja) 中央処理装置間ダイレクトメモリアクセス方式
JP2856709B2 (ja) バス間結合システム
JPH02186462A (ja) バス転送制御装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030708

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080815

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090815

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees