JPH04373057A - マルチプロセッサシステム - Google Patents

マルチプロセッサシステム

Info

Publication number
JPH04373057A
JPH04373057A JP15078791A JP15078791A JPH04373057A JP H04373057 A JPH04373057 A JP H04373057A JP 15078791 A JP15078791 A JP 15078791A JP 15078791 A JP15078791 A JP 15078791A JP H04373057 A JPH04373057 A JP H04373057A
Authority
JP
Japan
Prior art keywords
signal
bus
cpu
shared memory
module
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
JP15078791A
Other languages
English (en)
Inventor
Mitsuo Matsumoto
光雄 松本
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP15078791A priority Critical patent/JPH04373057A/ja
Publication of JPH04373057A publication Critical patent/JPH04373057A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Systems (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は複数のプロセッサ間のデ
―タのやりとりを共有メモリを介して行なう方式に係り
、特に共有メモリに対する各プロセッサの要求の衝突頻
度を小さくして高速に処理することを可能にしたマルチ
プロセッサシステムに関する。
【0002】
【従来の技術】一つのプロセッサ(以下CPUと呼ぶ)
ではシステム全体の必要処理時間に処理速度が間に合わ
ない時、複数のプロセッサを用いて全体の処理速度を上
げる方法が採られている。
【0003】このようなマルチプロセッサ方式として、
各CPU間のデ―タのやりとりに共有メモリを用いる密
結合形マルチプロセッサ方式(特公昭52−41166
号)が本発明者によって提案されている。
【0004】図3は上記特許公報で説明されている方式
であって、CPU1A,1B,…1Nは複数個のCPU
である。ROM2A,2B,…2Nは各CPUの動作シ
―ケンスを決める処理プログラムが格納された各CPU
専用のリ―ド・オンリ・メモリ(以下ROMと呼ぶ)で
ある。
【0005】RAM3A,3B,…3Nは各CPU専用
のデ―タ領域のデ―タを保持する読出し/書込み可能な
ランダム・アクセス・メモリ(以下RAMと呼ぶ)であ
る。RAM−X13はCPUA,1B,…1Nが共にア
クセスできる読出し/書込み可能な共有ランダム・アク
セス・メモリである。TRN4A,4B,…4Nは各C
PUとRAM−X13間のデ―タ伝送路をオン/オフす
るバス・トランシ―バである。
【0006】バス・ア―ビタ(以下ARBと呼ぶ)14
はCPU1A,1B,…1Nのロ―カルバス5A,5B
,…5Nの各バス信号によりRAM−X13へのアクセ
ス状態を監視し、TRN4A,4B,…4Nへ各エネブ
ル信号ENBa,ENBb,…ENBnを出力する。
【0007】また、RAM−X13へのアクセスが競合
したとき、CPUA,1B,…1Nへ各々ウエイト信号
WAITa,WAITb,…WAITnを出力し、CP
Uの処理サイクルを待状態にする。
【0008】なお、ロ―カル・バス5A,5B,…5N
およびRAM−X13用のバス(BUS−X)24には
、デ―タ・バス,アドレス・バス及びCPUからのメモ
リ・リ―ド・コマンド信号(以下MRDC信号と呼ぶ)
、メモリ・ライト・コマンド信号(以下MWTC信号と
呼ぶ)の各信号線が含まれている。
【0009】上記従来のマルチプロセッサ方式において
、各CPUが各自、専用のROM,RAM領域をアクセ
スしているとき、各CPUは他のCPUによってその処
理サイクルが待たされることがなく、各々独立に処理で
きるので各CPUの処理速度はCPUが1個の時と同じ
通常の処理速度が得られる。
【0010】また、任意のCPU,例えばCPU1Bが
他のCPUとデ―タのやりとりが必要な時、CPU1B
はRAM−X13をアクセスするが、この時、他のCP
Uのいずれもが、RAM−X13をアクセスしていない
場合、ARB14はロ―カル・バス5A,5B,…5N
中のアドレス・バス情報から現在RAM−X13をアク
セスしようとする要求がただ1個のCPUだけであるこ
とを検知し、CPU1Bがウエイト状態に入ることなく
、RAM−X13を直ちにアクセスすることを承認し、
エネブル信号ENBbを“1”にして、バス・トランシ
―バTRN4Bをアクテイブにする。
【0011】CPU1BがRAM−X13をアクセスし
ているとき、他のCPUがRAM−X13をアクセスし
ようとすると、ARB14は該CPUのウエイト信号を
“1”にセットしてCPU1BのRAM−Xアクセス処
理サイクルが終了するまで待機状態にさせ、衝突を防い
でいる。
【0012】このように2個以上のCPUが、同時にR
AM−X13をアクセスし、競合が発生したとき、AR
B14は競合する要求信号のうちからある優先順位でた
だ1つの要求信号を選択して1つのCPUにRAM−X
13のアクセスを許可する。
【0013】
【発明が解決しようとする課題】上述した従来のマルチ
プロセッサ方式では、共有メモリRAM−X13は同一
時刻にはただ1つのCPUだけにしかサ―ビスができな
い。同時にRAM−X13をアクセスしようとする他の
CPUはこの間待状態にさせられて全体の処理速度が遅
くなる欠点がある。特に共有メモリをアクセスするCP
Uが極端に多いシステムや各CPUが共有メモリをアク
セスする頻度が極端に多い応用分野では全体の処理速度
を速くする効果が低減する。そして、共有メモリへのア
セス頻度が増し、常に、いずれかのCPUの共有メモリ
へのアクセス要求が待たされるような状態では、図3の
マルチプロセッサシステムではいかに多数のCPUを使
用してもシステム全体の処理速度の向上には限界があり
、期待した効果は得られなくなる。
【0014】また、上記の問題を解決しようとして、共
有メモリRAM−X13をn個のメモリ・バンクに分割
し、各バンクを個々に各CPUよりアクセスできるn個
の共通メモリ・バスBUS−Xを設け、また、n個のメ
モリ・ア―ビタARBを設けて、一つのCPUがある共
有メモリ・バンクをアクセス中でも、他のCPUはその
共有メモリ・バンク以外の共有メモリ・バンクをアクセ
ス可能にすれば、システムの共有メモリ空間とCPU群
のデ―タ伝送容量はn倍となり、各プロセッサの共有メ
モリアクセス要求の競合衝突の確率頻度を従来の共有メ
モリ・バンクが1個のシステムに比し、十分小さくでき
る。しかしこの方式は、デ―タ伝送路が膨大になる欠点
がある。
【0015】本発明は、上記の問題に鑑みてなされたも
ので、その目的は、共有メモリをアクセスするCPUの
数が多くても、あるいは各CPUが共有メモリをアクセ
スする頻度が多い場合でも、デ―タ伝送路を増やすこと
なく、各プロセッサの共有メモリアクセス要求の競合衝
突の確率頻度を従来の方式に比し非常に小さくすること
ができ、これによって各プロセッサが共有メモリアクセ
スを待ち合わせる確率が小さくなり、処理速度を向上さ
せることを可能にした、経済的なマルチプロセッサシス
テムを提供することにある。
【0016】
【課題を解決するための手段】上記目的を達成するため
、本発明は、プロセッサ(以下CPU)を備えた複数の
モジュ―ルがシステム・バスを介してデ―タを共有する
装置において、該モジュ―ル内に、該CPU及びシステ
ム・バスを介して外部からアクセス可能なデュアルポ―
トの共有メモリと、該共有メモリに対するアクセスが競
合したとき調停を行なうメモリ・ア―ビタを設け、共有
メモリをモジュ―ル毎のバンクに分割すると共に各モジ
ュ―ルのCPUが他のモジュ―ルの共有メモリにアクセ
ス可能にしたマルチプロセッサシステムである。
【0017】
【作用】任意のモジュ―ルのCPUが任意の共有メモリ
をアクセスするとき、メモリ・ア―ビタにより次の2つ
の条件の確認が行なわれる。 (条件1)任意のCPUが自モジュ―ル内の共有メモリ
をアクセスするには該共有メモリが他からアクセスされ
ていないこと。 (条件2)
【0018】任意のCPUが他モジュ―ル内の共有メモ
リをアクセスするには該共有メモリが他からアクセスさ
れていないこと、及びシステム・バスが使用されていな
いこと。
【0019】上記条件の確認を行なうため、システム・
バスには各モジュ―ルの共有メモリが現在使用中か否か
を示す複数本の信号線と、システム・バスが使用中か否
かを示す1本の信号線を含み、各モジュ―ルのメモリ・
ア―ビタはすべての共有メモリのアクセス状態を監視し
ている。
【0020】今、あるCPUが自モジュ―ル内の共有メ
モリをアクセスする場合、自モジュ―ルのメモリ・ア―
ビタが前記条件1の確認を行ない、該条件1が成立した
とき、直ちにシステム・バスの該当制御信号を該共有メ
モリが使用中の状態にし、該共有メモリのアクセス権を
獲得したことを他のモジュ―ルに通知した後、該共有メ
モリに対してアクセスを実行する。そしてアクセスが完
了した後、システム・バスの該当制御信号を該共有メモ
リが不使用の状態にする。
【0021】また、CPUが自モジュ―ル内の共有メモ
リをアクセスしようとした時、該共有メモリが既に他の
モジュ―ルのCPUにより使用中の状態になっていると
きは、メモリ・ア―ビタは条件1の不成立を確認し該共
有メモリが不使用の状態になる迄該CPUを待状態とす
る。
【0022】また、あるCPUが、他のモジュ―ルの共
有メモリをアクセスする場合、自モジュ―ルのメモリ・
ア―ビタが前記条件2を確認したとき、システム・バス
の該当制御信号を該共有メモリ使用中の状態にすると共
にシステム・バス使用中の状態にし、自モジュ―ルが該
共有メモリと、システム・バスの使用権を獲得したこと
をシステム全体に通知した後、該共有メモリに対してア
クセスを実行する。そしてアクセスが完了した後、シス
テム・バスの該当制御信号を該共有メモリが不使用、シ
ステム・バスも不使用の状態にし、該共有メモリとシス
テム・バスを解放したことを全システムに通知する。
【0023】またCPUが、他のモジュ―ルの共有メモ
リをアクセスしようとした時、自モジュ―ルのメモリ・
ア―ビタが前記条件2の不成立を確認したときは該条件
2が成立する迄該CPUを待状態とする。
【0024】
【実施例】以下、図1,図2に示す本発明の実施例につ
いて説明する。図1は、実施例の全体の構成を示すブロ
ック図、図2は上記実施例の構成要素の1つであるメモ
リ・ア―ビタの詳細な回路構成である。
【0025】図1において、まずモジュ―ル25内の構
成を説明するにプロセッサ(中央処理装置)CPU31
Aはロ―カル・バス55Aに結合して居り、該バス55
Aには、CPU31Aからのデ―タ・バスと、アドレス
・バスと、メモリ・リ―ド・ライト信号とが含まれてい
る。該バス55Aは、CPU31Aに専用のリ―ド・オ
ンリ・メモリ(RAM)32Aと、ランダム・アクセス
・メモリ(RAM)33Aと、バス・トランシ―バ(T
R1)35Aの第1のバス端子と、トランシ―バ(TR
3)37Aの第1のバス端子と、メモリ・ア―ビタ(A
RB)38Aとに結合している。(TR1)35Aの第
2のバス端子はデュアルポ―トの共有メモリ(M)34
Aの第1のポ―トに接続している。(TR3)37Aの
第2のバス端子はモジュ―ル外のシステム・バス中のメ
モリ・バス(BUS−M)28に結合している。また、
(BUS−M)28は、トランシ―バ(TR2)36A
の第1のバス端子に接続している。(TR2)36Aの
第2のバス端子は(M)34Aの第2のポ―トに接続し
ている。なお(BUS−M)28には、デ―タ・バス、
アドレス・バス、メモリ・リ―ド・ライト信号(MRD
C,MWTCの信号線)が含まれている。
【0026】ARB38AはCPU31Aへウエイト信
号WAITを、(TR1)35Aへエネブル信号EN1
を、(TR2)36Aへエネブル信号EN2を、(TR
3)37Aへエネブル信号EN3を出力する。ARB3
8Aは、また、モジュ―ル外のバス優先順位決定回路(
PRI)30へシステム・バス使用要求信号REQaを
出力し、該PRI30よりシステム・バス使用許可信号
PRNaを受け取る。また、ARB38Aはモジュ―ル
外のシステム・バス中のコントロ―ル・バス(BUS−
C)29に結合している。該BUS−C29には図2に
示すように、各モジュ―ルの共有メモリが、ビジ―であ
るかないかをシステム全体に通知するMaBSY信号,
MbBSY信号,MnBSY信号、システム・バスが、
ビジ―であることを通知するBUSBSY信号、システ
ム・バスを使用要求する各モジュ―ルのタイミングを合
わすためのシステム全体に共通なバスクロックBCLK
の各制御信号が含まれている。
【0027】上記のモジュ―ル25と全く同一構成のモ
ジュ―ル26,27をシステム・バス(BUS−M28
,BUS−C29)及びPRI30に同様な様式で接続
する構成とする。
【0028】以上のモジュ―ル25,26,27は各々
一枚のプリント板のボ―ド・モジュ―ルに組立てられ、
全システム共通のシステム・バス(BUS−M28,B
US−C29)に接続した複数個のボ―ド・モジュ―ル
結合用バス・コネクタを持つバック・プレ―ン上のスロ
ットに収容される。ボ―ド・モジュ―ルは全べて同一構
成なので、何個でもモジュ―ルを追加,削除しても良く
、何等配線変更等することなくフレキシビリティに富ん
だシステムを構築することができる。次に、前記メモリ
・ア―ビタ(ARB)38Aの内部構成を、図2を用い
て細述する。
【0029】図2において、符号76,77,78,7
9はJ−Kフリップ・フロップ(FF)であって、Ma
ACC76は自モジュ―ル内の共有メモリM34AをC
PU31Aがアクセス中であることを示すFF、MbA
CC78は他モジュ―ル26の共有メモリM34BをC
PU31Aがアクセス中であることを示すFF、MnA
CC79は他モジュ―ル27内の共有メモリM34Nを
CPU31Aがアクセス中であることを示すFF、BU
SACC77はCPU31Aが現在システム・バスを使
用中のことを示すFFである。MaACC76の出力は
エネブル信号EN1となる。また該出力は3−ステ―ト
出力ゲ―ト80を通って、BUS−C29の中のMaB
SY信号となる。尚、3−ステ―ト出力ゲ―ト80はM
aACC76の出力が“1”のときだけ低インピ―ダン
ス状態になる。
【0030】BUSACC77の出力はエネブル信号E
N3となる。また、BUSACC77,MbACC78
,MnACC79の各出力は各々3−ステ―ト出力ゲ―
ト81,82,83を通って各々BUSBSY信号、M
bBSY信号、MnBSY信号となる。尚、3−ステ―
ト出力ゲ―ト81,82,83はBUSACC77の出
力が“1”のときだけ低インピ―ダンス状態になる。 またMaBSY信号とBUSBSY信号とが2入力AN
D回路86に入り、該回路の出力はエネブル信号EN2
となる。次にアドレス・デコ―ダ99はロ―カル・バス
BUS55Aのアドレス情報を入力し、M34Aのアド
レス空間領域を示すMaADR信号、M34Bのアドレ
ス空間領域を示すMbADR信号、M34Nのアドレス
空間領域を示すMnADR信号を作る。また、2入力O
R回路90はBUS55A中のメモリ・リ―ド・コマン
ドMRDC信号とメモリ・ライト・コマンドMWTC信
号とを入力し、その出力より、MRWC信号を作る。ま
た、その反転信号MRWC信号をインバ―タ回路91よ
り作る。4入力AND回路92は、MRWC信号と、M
bBSY信号をインバ―タ回路88で反転した信号と、
BUSBSY信号をインバ―タ回路87で反転した信号
と、MbADR信号とを入力し、その出力を2入力OR
回路94の一方の入力へ入れる。また4入力AND回路
93はMRWC信号と、MnBSY信号をインバ―タ8
9で反転した信号と、インバ―タ回路87の出力と、M
nADR信号とを入力し、その出力を2入力OR回路9
4の他方の入力へ入れる。該OR回路94の出力はシス
テム・バス使用要求信号REQaとなる。また3入力A
ND回路95はMRWC信号と、MaACC76の反転
出力と、MaADR信号とを入力し、その出力を2入力
OR回路97の一方の入力へ入れる。また3入力AND
回路96はMRWC信号と、BUSACC77の反転出
力と、2入力OR回路98の出力を入力とし、その出力
を前記2入力OR回路97の他方の入力に入れる。前記
OR回路98には各々MbADR信号と、MnADR信
号が入力される。前記OR回路97の出力はウエイト信
号WAITaとなる。
【0031】前記システム・コントロ―ル・バス(BU
S−C)29中のバスクロックBCLKがBUSACC
77、MbACC78、MnACC79の各FFのクロ
ック端子に、また該クロックの反転がインバ―タ回路8
4で作られ、MaACC76のクロック端子に接続され
ている。MaACC76,BUSACC77,MbAC
C78,MnACC79のK入力へは各々インバ―タ9
1の出力信号が接続され、MaACC76の3入力AN
D−J入力の各々にはMaBSY信号をインバ―タ回路
58で反転した信号と、MRWC信号と、MaADR信
号が接続される。また、BUSACC77のJ入力には
システム・バス使用許可信号PRNaが接続され、Mb
ACC78の2入力AND−J入力の各々には上記許可
信号PRNaとMbADR信号が接続され、MnACC
79の2入力AND−J入力の各々には上記許可信号P
RNaとMnADR信号が接続される構成としている。 上記のように構成された本実施例の作用について、まず
、モジュ―ル25の動作を説明する。
【0032】CPU31Aがメモリをアクセスする時は
そのウエイト信号WAITの如何にかかわらず、そのロ
―カル・バス55Aのアドレス・バスと、MRDC信号
かMWTC信号かのいずれかをアクティブにする。また
このときメモリ書込みのMWTC信号かアクティブの時
はロ―カル・バス55Aのデ―タ・バスをアクティブに
する。そして一定時間後に信号WAITが“0”のとき
はCPU31Aは、そのMRDC信号、MWTC信号の
いずれもを“0”にして、メモリ・アクセス・サイクル
を完了する。もし、この一定時間後にWAITが“1”
のときはCPU31Aはメモリ・サイクルを延期し、W
AITが“0”になるとメモリ・サイクルを完了する。
【0033】さて、CPU31AがROM32A、ある
いはRAM33Aをアクセスすると、そのアドレスはア
ドレス・デコ―ダ99の出力信号MaADR、MbAD
R、MnADRの全べてを“0”にするからウエイト信
号WAITは“0”となり、CPU31Aは待たされる
ことなくそのメモリ・サイクルを完了する。
【0034】次にCPU31Aが、モジュ―ル内の共有
メモリ(M)34Aをアクセスすると、MRWC信号が
“1”になり、アドレス・デコ―ダ99の出力MaAD
R信号が“1”になる。この時他のモジュ―ルのCPU
より該共有メモリ(M)34Aが不使用状態の時はシス
テム・コントロ―ル・バス中のMaBSY信号に結合し
ている他モジュ―ルの3−ステ―ト出力は全べて高イン
ピ―ダンス(OFF)状態であるのでMaBSY信号は
“0”となる。(なお、本実施例では、信号MaBSY
,BUSBSY,MbBSY,MnBSYがOFF状態
のときはすべて“0”レベルになるものとする。)従っ
て、MaACC76の3入力AND−J入力が全て“1
”となり、バスクロックBCLKの立下りでMaACC
76がセットする。(FF76,77,78,79は全
べてクロック入力の立上りでトリガ―される。)MaA
CC76の出力信号EN1が“1”となり、バス・トラ
ンシ―バ(TR1)35Aをエネブルとし、CPU31
Aが共有メモリ(M)34Aをアクセスするバスが確率
する。同時に3−ステ―トゲ―ト80により、MaBS
Y信号が“1”となり、システム全体に共有メモリ(M
)34Aがビジ―であることを通知する。MaACC7
6がセットすると、AND回路95の出力は“0”とな
り、ウエイト信号WAITは“0”となる。かくして、
CPU31Aはウエイトすることなくそのメモリ・サイ
クルを終了する。この時、MRWC信号は“0”となり
、MaACC76はリセットし、MaBSY信号を“0
”にし、全システムに共有メモリ(M)34Aが不使用
状態になったことを通知する。
【0035】次にCPU31Aが同様に共有メモリ(M
)34Aをアクセスしようとしたとき、既に該M34A
が他モジュ―ルのCPUでアクセスされていて、MaB
SY信号が“1”のときは、MaACC76の3入力A
ND−J入力条件が成立せず、MaACC76はリセッ
ト状態を維持する。かくして3入力AND回路95の出
力が“1”になり、信号WAITが“1”となり、CP
U31Aはウエイト状態になる。
【0036】そして、前記MaBSY信号が“0”にな
ると初めてMaACC76がセットし、WAITが“0
”となり、以後、前述と同様の経過を辿りM34Aにア
クセスを行なう。
【0037】次にCPU31Aが他のモジュ―ル、例え
ばモジュ―ル27の共有メモリ(M)34Nをアクセス
するときは、MRWC信号が“1”になり、アドレス・
デコ―ダ99の出力、MnADR信号が“1”になる。 この時、該M34Nが現在不使用状態であり(MnBS
Y信号が“0”)、且また、システム・バスも不使用状
態(BUSBSY信号が“0”)のとき、4入力AND
回路93のAND条件が全べて成立し、該回路93の出
力は“1”になり、システム・バス使用要求信号REQ
aが“1”になる。該信号REQaを受けとったバス優
先順位決定回路(PRI)30は他のモジュ―ルから、
同時にシステム・バスを使用要求する“1”レベルの要
求信号REQb、REQnの中選らばれたある優先順位
決定方法で一つだけのモジュ―ルに対し、システム・バ
ス使用許可信号を出す。もしこの時、モジュ―ル25が
使用許可信号PRNaを受けたとき、BUSACC77
、MnACC79はバスクロック(BCLK)の立上り
でセットされる。BUSACC77の出力EN3が“1
”となり、バス・トランシ―バ(TR3)37Aをエネ
ブルとし、CPU31Aが共有メモリ(M)34Nをア
クセスするバスが確立する。同時にシステム・コントロ
―ル・バス中のBUSBSY信号、MnBSY信号を“
1”にする。かくして以後、他のCPUがシステム・バ
スを使用することと、共有メモリ(M)34Nをアクセ
スすることを禁止通知する。BUSACC77がセット
すると、3入力AND回路96の出力は“0”となり、
WAITは“0”となる。CPU31Aはウエイトする
ことなく、共有メモリ(M)34Nのメモリ・アクセス
・サイクルを終了する。この時、MRWC信号が“0”
となり、BUSACC76とMnACC79はリセット
し、BUSBSY信号とMnBSY信号を“0”にし、
システム・バスと共有メモリ(M)34Nが解放された
ことを全システムに通知する。
【0038】また、CPU31Aが共有メモリ(M)3
4Nをアクセスする前記過程において、システム・バス
使用要求信号REQaを“1”にして、バス優先順位決
定回路(PRI)30に出力した時、該回路30よりバ
ス使用許可信号PRNaを受けることができなかった場
合(他のモジュ―ルが使用許可信号を受けてシステム・
バス使用権を得た場合)、BUSACC77はリセット
したままとなり、2入力OR回路98の出力は“1”と
なっているため、3入力AND回路96の出力が“1”
になってウエイト信号WAITが“1”となり、CPU
31Aはウエイト状態に入る。そして、再度BUSBS
Y信号,MnBSY信号の両方が共に“0”になった時
、バス使用要求信号REQaを“1”にして、PRI3
0からバス使用許可信号PRNaが“1”になる迄待つ
【0039】また、CPU31Aが共有メモリ(M)3
4Nをアクセスしようとしたとき、該共有メモリ(M)
34Nが使用中(MnBSY信号が“1”)、またはシ
ステム・バスが使用中(BUSBSY信号が“1”)の
とき、4入力AND回路93のAND条件が成立せず、
バス使用要求信号REQaが“1”になれない。このた
め、バス使用許可信号PRNaは“1”にならずBUS
ACC77はリセットしたままとなり、3入力AND回
路96の出力は“1”に、ウエイト信号WAITが“1
”となり、CPU31Aはウエイト状態に入る。そして
、BUSBSY信号が“0”で、且つMnBSY信号が
“0”になったとき、バス使用要求信号REQaを“1
”にして、PRI30より、バス使用許可信号PRNa
が“1”になる迄待つ。
【0040】一方、モジュ―ル25以外のCPUがモジ
ュ―ル25内の共有メモリ(M)34Aをアクセスする
場合は、BUSBSY信号と、MaBSY信号が共に“
1”になる。このとき2入力AND回路86の出力信号
EN2が“1”となり、バス・トランシ―バ(TR2)
36Aをエネブルとし、共有メモリ(M)34Aとシス
テム・メモリ・バス(BUS−M)28とのバス回線を
確立する。
【0041】また、MaACC76がインバ―タ84の
作用でバスクロックBCLKの立下りでトリガし、他の
FF77,78,79が、BCLKの立上りでトリガす
るようにトリガ―時点の位相を変えている理由は、他の
モジュ―ルが共有メモリ(M)34Aのアクセス権を得
て、BCLKの立上りでMaBSY信号を“1”にした
時、MaBSY76が同時にセットするようなことが起
らないようにするため、MaBSY信号をそのJ入力と
するMaBSY76はBCLKの立下りでトリガ―する
ようにして確実なインタ―ロックをとるようにしている
【0042】
【発明の効果】本発明によれば、全共有メモリ空間は各
モジュ―ル毎のメモリ・バンクに分割されるので、各C
PUにアクセスされる全共有メモリデ―タ空間の個々の
デ―タをいずれのメモリ・バンクに配置するか決めると
き、そのデ―タが最も頻繁にアクセスされるCPUの属
するモジュ―ル内の共有メモリ・バンクに配置すれば効
果的に処理速度を向上させることが可能となる。
【0043】すなわち、モジュ―ル内の共有メモリに配
置されたそのデ―タがこのモジュ―ル内のCPUにアク
セスされる割合が大きい程、該CPUがシステム・バス
を経由せずに、該メモリ・バンクをアクセスしている最
中に他のCPUは別のモジュ―ルの共有メモリ・バンク
をアクセスすることができるので、従来の全共有メモリ
・バンクが1個の方式に比し、処理速度を大幅に改善す
ることができる。
【0044】また、CPUとメモリ・ア―ビタとメモリ
を全べて同一構成のモジュ―ルにし、この同一ボ―ド・
モジュ―ルを多数個システム・バスに収容してマルチ・
プロセッサ・システムを組立てることができ、モジュ―
ルの個数を増減させてもボ―ド・モジュ―ルとシステム
・バスに何等変更を加えることなく、システムの規模に
応じて柔軟に対応することが可能となる。
【0045】また、CPU群と共有メモリ空間の各メモ
リ・バンク間のデ―タ伝送路が一本の単純なシステムで
バスで構成されているので、経済的で、しかも処理速度
の向上したマルチプロセッサシステムを提供することが
できる。
【図面の簡単な説明】
【図1】本発明のマルチプロセッサシステムによる実施
例の構成図
【図2】上記実施例のメモリ・ア―ビタ(ARB)の要
部詳細図
【図3】従来のマルチプロセッサシステムの構成図
【符号の説明】
25〜27…モジュ―ル        28…システ
ム・メモリ・バス 29…システム・コントロ―ル・バス 30…バス優先順位決定回路    31A,B,N…
CPU 34A,B,N…デュアル・ポ―トの共有メモリ35A
,B,N,36A,B,N,37A,B,N…バス・ト
ランシ―バ 38A,B,N…メモリ・ア―ビタ 76〜79…フリップ・フロップ 80〜83…3ステ―トバッファ 84,85,87〜89,91…インバ―タ86,92
,93,95,96…AND回路90,94,97,9
8…OR回路 99…アドレスデコ―ダ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  プロセッサ(以下CPU)を備えた複
    数のモジュ―ルがシステム・バスを介してデ―タを共有
    する装置において、該モジュ―ル内に、該CPU及びシ
    ステム・バスを介して外部からアクセス可能なデュアル
    ポ―トの共有メモリと、該共有メモリに対するアクセス
    が競合したとき調停を行なうメモリ・ア―ビタを設け、
    共有メモリをモジュ―ル毎のバンクに分割すると共に各
    モジュ―ルのCPUが他のモジュ―ルの共有メモリにア
    クセス可能にしたことを特徴とするマルチプロセッサシ
    ステム。
JP15078791A 1991-06-24 1991-06-24 マルチプロセッサシステム Pending JPH04373057A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15078791A JPH04373057A (ja) 1991-06-24 1991-06-24 マルチプロセッサシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15078791A JPH04373057A (ja) 1991-06-24 1991-06-24 マルチプロセッサシステム

Publications (1)

Publication Number Publication Date
JPH04373057A true JPH04373057A (ja) 1992-12-25

Family

ID=15504427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15078791A Pending JPH04373057A (ja) 1991-06-24 1991-06-24 マルチプロセッサシステム

Country Status (1)

Country Link
JP (1) JPH04373057A (ja)

Similar Documents

Publication Publication Date Title
US5555425A (en) Multi-master bus arbitration system in which the address and data lines of the bus may be separately granted to individual masters
US5168568A (en) Delaying arbitration of bus access in digital computers
US5754800A (en) Multi processor system having dynamic priority based on row match of previously serviced address, number of times denied service and number of times serviced without interruption
US5613075A (en) Method and apparatus for providing deterministic read access to main memory in a computer system
US5067071A (en) Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus
US6606676B1 (en) Method and apparatus to distribute interrupts to multiple interrupt handlers in a distributed symmetric multiprocessor system
US5253347A (en) Centralized arbitration system using the status of target resources to selectively mask requests from master units
JPS5837585B2 (ja) ケイサンキソウチ
AU1807988A (en) Node for servicing interrupt request messages on a pended bus
US5649209A (en) Bus coupling information processing system for multiple access to system bus
US7539806B2 (en) Arbitrator and its arbitration method
US7006521B2 (en) External bus arbitration technique for multicore DSP device
US5367701A (en) Partitionable data processing system maintaining access to all main storage units after being partitioned
JPH04373057A (ja) マルチプロセッサシステム
US6009482A (en) Method and apparatus for enabling cache streaming
US8112590B2 (en) Methods and apparatus for reducing command processing latency while maintaining coherence
JPH11203253A (ja) 共有資源排他アクセス制御方式
KR19980026521A (ko) 멀티 포트 메모리 비동기 중재 방법
JPS633350A (ja) 半導体記憶装置
JPH04659A (ja) コンピュータ・ボード
US20060069838A1 (en) Method and apparatus for connecting an additional processor to a bus with symmetric arbitration
JPS621059A (ja) マルチ・マイクロプロセツサシステムにおける共有メモリアクセス法
JPH08297633A (ja) バス調停器及び該調停器を用いたバス調停方式
JPH05108460A (ja) メモリ制御方法
JPH0644133A (ja) マルチプロセッサシステム