JPS626365A - マルチプロセツサシステム - Google Patents

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

Info

Publication number
JPS626365A
JPS626365A JP14528885A JP14528885A JPS626365A JP S626365 A JPS626365 A JP S626365A JP 14528885 A JP14528885 A JP 14528885A JP 14528885 A JP14528885 A JP 14528885A JP S626365 A JPS626365 A JP S626365A
Authority
JP
Japan
Prior art keywords
cpu
access
output
common memory
shared
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
JP14528885A
Other languages
English (en)
Inventor
Katsuyoshi Nakano
中野 勝吉
Akira Matsushita
昭 松下
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.)
NIPPON DENZAI KOGYO KENKYUSHO KK
Original Assignee
NIPPON DENZAI KOGYO KENKYUSHO KK
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 NIPPON DENZAI KOGYO KENKYUSHO KK filed Critical NIPPON DENZAI KOGYO KENKYUSHO KK
Priority to JP14528885A priority Critical patent/JPS626365A/ja
Publication of JPS626365A publication Critical patent/JPS626365A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 近年コンピュータは、0A(Office  Auto
mation)やFA(FactoryAu toma
t 1on)などの専門的な用途は勿論のこと、ホビー
(Hobby)用などを含め年々その処理速度の向上が
要求されている。
他方コストや小型化などの要求から、それらのシステム
の中央処理装置(Central  Processi
ng  Unit  以下略してCPUと称する)には
マイクロコンピュータを使用する場合が多いが、要求さ
れる処理スピードがその性能を上回る場合には複数のC
PUを使用した所謂マルチプロセッサシステム(Mul
tj−pr。
cessor  System)が用いられる。
この場合、複数のCPUが旨く連係を保って効率よく動
作しシステムのオーバヘッドタイム(Over  I(
ead  Time)をできるだけ小さくするためには
、その動作タイミングやCPU相互間のデータのやりと
りなどにおける優先性を合理的に裁定してやる必要があ
る。
これらの要求に対して本発明のマルチプロセッサシステ
ムは、比較的簡単な論理回路などを付加することにより
そのオーバヘッドタイムを最小限にすることを可能にし
たもので、マルチタスク(Multi−task)処理
の高速化をはかる場合などに用いて好適なものである。
[従来の技術] マルチプロセッサシステムの構成には種々の方式がある
が、複数のCPUの相互間における交信やデータ交換に
コモンメモリ(Common  Memo ry)を用
いる方式では、そのメモリをアクセス(Access)
するためにそれらのCPUが共有しているデータやアド
レスのバス(以下共有バスと称する)についてアクセス
しようとする場合は、序め他方のCPUにホールドをか
けておき共有バスをフローティング状態にしてからバス
の使用権を得るとか、何れかのCPUが共有バスを使用
している間は、BUSYなとの信号を送出しておき、ハ
ードまたはソフト的な手段により。
その信号が出ている間は他のCPUが共有バスをアクセ
スできないようにするなどの方式が採られていた。
しかし前者によれば片方のCPUが共有バスを使用して
いる間、他のCPUは実行停止の状態にある。また後者
の方式ではコモンエリア(Conmon  Area)
のアクセスに対し実行中のCPU以外はそれが済むまで
待たされることになる。
このように何れもマルチプロセッサシステムの割合には
処理速度が上がらなかった。
この他にも従来から種々の方式が考えられているが、何
れも複雑な回路や特殊な専用のLSI(Large  
5cale  Integrated  C1rcui
t)が必要であり、しかもそのわりにはオーバヘッドタ
イムの低減に対して効果的なものではなかった。
[発明の目的] 本発明の目的は、高速の処理スピードや、マルチタスク
処理を必要とする場合に用いられるマルチプロセッサシ
ステムにおいて、比較的簡単な論理回路などを付加する
ことによりそのオーバヘッドタイムを最小限にし得る手
段を提供することにある。
[発明の概要] 本発明のマルチプロセッサシステムは、複数の中央処理
装置を備えたコンピュータシステムにおいて、各中央処
理装置に共有のコモンメモリに対するアクセスのタイミ
ングが衝突するような場合に、裁定回路部によって判定
された中央処理装置を優先的にアクセスし他の中央処理
装置は一時的にウェイト(Wait)をかけておくこと
により。
オーバヘッドタイムを最小限にし得る手段を備えたこと
を特徴とするものである。
[発明の実施例] 本発明のマルチプロセッサシステムは、CPU相互間に
おけるデータの受渡しなどに汎用メモリ上のコモンエリ
アまたはこの目的のために独立して設けたコモンメモリ
などを使用し、共有バスのアクセス権を効率よく裁定す
るための比較的簡単な論理回路を構成することにより、
タイミング的に考えられる最小のオーバヘッドタイムで
運用させようとするものである。
添付図面は本発明の実施例を示す回路図であり。
次のような動作をする。
(+)コモンエリアに対する複数のCPUのアクセスが
衝突しない場合は、共有バスはアクセスした側に切替る
(2)1個のCPUがアクセスしている最中に他方から
もアクセスが掛かった場合、共有バスは切替らずに後か
らアクセスした側のCPUにウェイトが掛かる。
この状態は初めにアクセスした側の実行が終了した時に
解除される。
(3)同時にアクセスが掛かった場合は、何れか一方が
優先権をもち、他方はウェイト状態になる。
この状態は前項と同様に初めにアクセスした側の実行が
終了した時に解除される。
以上に述べたタイミングや裁定に間する回路について、
添付図面にもとすき負論理によって説明する。
第1図はCPU1Bと19.コモンメモリ17゜共有ア
ドレスバス20と共有データバス21およびそれらの切
替え部を構成する各バッファ11゜12.13,14.
ならびに幾つかの論理ゲートによって構成された裁定回
路部を示したものである。
同図の裁定回路部における論理和否定素子1と2すなは
ちNOR1とN0R2はタイミング判定回路を構成して
おり、CPU18とCPU 19からのアクセス信号C
SIとC52の何れが早く”0”になっ′たかによって
、他方の出力変化を一時的に禁止している。
即ち、いまアクセス信号C5Iがアクセス信号C52よ
りも早くIO”になったすると、その時点ではN0R2
の出力C=”0”であるから、N゛ORIの出力C=”
1″、N0R2の入力b=”l”となり、この状態では
アクセス信号CS2が変化してもN0R2の出力Cは変
化せず”0”のま−である。
従フてこの時CPU19からのアクセスが掛かりC52
=”O”になったとしても、N0R4の入力a=”O”
、b=”o”であるから出力C;”l”であり、それが
DFF (Delay  Fl ip  Flop)8
のデータ入力端子dに印加される。
DFF7及びDFF8のクロック入力端子Sには各CP
Uを駆動しているものと同じクロックパルス(CLK)
が印加されているので、DFF8のデータ人力d=”1
”になると2次のクロックパルスの立上がりでその反転
出力q′=”0”になり、これと接続されているウェイ
ト入力端子WArT2(”OII大入力ウェイト状態に
入る)を経てCPU19はその内部タイミングによりウ
ェイト状態になる。
さて上述のようにNOR1の出力C=”1”の状態にお
いては、NOR3の出力C=”O”従ってDFF7の人
力d=”0”により、その反転出力q′=”l”のま−
となりCPU18にウェイトが掛かることはない。
同時にインバータ5とβの出力Cは、アドレスバス切替
用の双方向バラフシ11と12及びトライステートバッ
ファ13と14のイネイブル端子e(”1”でフローテ
ィング状態、0”でイネイブル状態になる)に夫々接続
されているので。
N0RIの出力C=”l”に接続されているインバータ
5の出力C=”0”であるから双方向バッファ11及び
トライステートバッファ13はイネイブル状態になって
いる。故にCPU1Bからのデータ信号D1及びアドレ
ス信号ADIがコモンメモリに伝達される。
他方N0R2の出力C=”0”に接続されているインバ
ータ6の出力C=”l”であるから、双方向バッファ1
2及びトライステートバッファ14はフローティング状
態であり、CPU19からのデータ信号D2及びアドレ
ス信号AD2はコモンメモリ17に伝達されることはな
い。
この時インバータ5と6の出力端子Cは夫々N0R9,
10のb入力端子に接続されている。従って上述の状態
においては、インバータ5の出力C=”0”に接続され
ているN0R9の人力b=”0”であるから、CPU1
Bのり一ド/ライト(Read/Write)切替信号
W/R1(”1″の時Read、’ O”の時Writ
e)に対応してN0R9の出力Cが規定され、N0R1
5を経てコモンメモリ17のリード/ライト切替用のw
/r端子に印加される。
またリード/ライト切替信号W/R1は双方向バッファ
11の伝達方向切替端子rに印加され。
コモヅメモリ17に対する書込みまたは読出しが実行さ
れる。
更にNOR1と2の出力端子Cは夫々NOR16の入力
端子aとbに接続されており、その何れがIT ’ I
 11になっても出力c= 190”になることから、
コモンメモリ17のイネイブル端子におけるCS=″0
” (”O”でイネイブル状態 ?pH#でディスイネ
イブル状a)となり、CPU1BまたはCPU 19の
どちらが優先権を得てもコモンメモリ17の書込みまた
は読出しが可能な状態になっている。 以上の実施例と
は反対に、いまアクセス信号CS2がアクセス信号C3
Iよりも早く”0”になったすると、その時点でのNO
R1の出力C=”0”であるから、N0R2の出力C=
″1”、従フてNOR1の入力b=jll11となる。
この状態ではアクセス信号CSIが例え”′0″に変化
したとしても、N0RIの出力C=”0″で変化せずそ
のま\である。
またこの時点でCPU1Bからのアクセスが発生じC3
1=”0”になったとしても、NOR3の入力a=”0
”、b=”O”であるからその出力C=”1”となり、
それがDFF7のデータ入力端子dに印加され2次のク
ロックパルスの立上がりで反転出力q′=”0”になり
、ウェイト入力端子WAITIに接続されているCPU
18はその内部タイミングによりウェイト状態になる。
この時N0R2の出力C=”1”であるから。
N0R4の人力b=”1”、従ってその出力C=”0”
と変化せずにDFF8の入力端子dに印加されるので9
反転出力q′=”1”のまへとなりCPU19にウェイ
トが掛かることはない。
またこの状態におけるインバータ6の出力C=”0”で
あるから、それが双方向バッファ12及びトライステー
トバッファ14のイネイブル入力端子eに接続されてい
るから双方のバッファはイネイブル状態になっている。
故にCPU19からのデータ信号D2及びアドレス信号
AD2がコモンメモリに伝達される。
この時点ではNOR1の出力端子Cに接続されているイ
ンバータ5の出力C=”1”であるから。
双方向バッファ11及びトライステートバッファ13は
フローティング状態となり、CPU1Bからのデータ信
号DI及びアドレス信号ADIはコモンメモリ17に伝
達されることはない。
この時インバータ6の出力端子Cに接続されているN0
RIOの人力b=”0”であるから、CPU19のリー
ド/ライト (Read/Write)切替信号W/R
2(”1”の時Read、”O”の時Write)によ
りNOR10の出力Cが規定され、N0R15を経てコ
モンメモリ17のw/r端子に印加される。
またCPU 19から出力されるリード/ライト切替信
号W/R2は双方向バッファ12の伝達方向切替端子r
に印加され、前述と同様にコモンメモリ17に対する書
込みまたは読出しが実行される。
以上の如き論理動作によって、共有バスを同時にアクセ
スした場合においても、裁定回路によりそのタイミング
の差に応じてコモンメモリのアクセスタイミング毎に一
方のCPUのアクセスを優先させ、その他のCPUにウ
ェイトをかけておくことにより、そのタイミングをずら
し衝突を避は得るようにしたものである。従って本発明
のマルチプロセッサシステムは、そのオーバヘッドタイ
ムを最小限にすることが可能である。
また本実施例はCPUが2個の場合について述べたが、
多数のCPUで構成されたシステムであっても同様の論
理的手段によってこのような裁定を行なう論理回路を構
成することは容易であり自明である。
また本実施例は米国ザイログ社製Z−80CPUを対象
として説明したが、現在市販または発表されているCP
Uは、その殆んどがウェイトまたは類似の動作をさせ得
る機能を有しているので。
比較的容易に上述のような裁定回路を適用することがで
きる。なおこのような裁定機能を有する論理回路は2本
実施例に限定されるものではなく。
これ以外にも種々の論理素子の組合わせによって実現で
きることはいうまでもない。
またウェイトは通常の場合、所謂1ウエイト(ICPU
クロック程度の遅延時間を指す)で済むうえに2通常メ
モリ参照命令は数マシンサイクルから構成されており、
実際にメモリをアクセスするタイミングはそのうちの数
分の−なので、最悪条件として双方のCPUが同時に連
続的にコモンエリアをアクセスするようなプログラムを
実行させても、衝突する確率が極めて僅少であることは
実験によって確認されている。
[発明の効果] 本発明によれば比較的簡単な論理回路を付加的に構成す
ることにより、処理スピードの高速化やマルチタスク処
理を行なう場合に、そのオーバヘッドタイムを最小限に
することができるという大きな効果がある。
また本発明の手段による裁定回路に依った場合は、従来
プログラムで行なっていたそれぞれのCPU相互のタイ
ミングのチェックや共有バスの切替えなどの部分につい
て、ハードウェアが自動的にそれを行なうという特徴を
有する。従って夫々のCPUに間するプログラムを作成
する場合に。
複数のCPUを備えたマルチシステムであるということ
を意識しないで作成出来る部分がかなり有り、プログラ
マの負担を軽減できるという効用がある。
【図面の簡単な説明】
第1図は本発明に係る実施例を示す回路図である。 符号1,2,3,4,9,10.15および16はそれ
ぞれNOR,5と6はインバータ。 7と8はDFF、11と12は双方向バッファ。 13と14はトライステートバッファ。 17はコモンメモリ、1Bと19はCPU。 20は共有アドレスバス、21は共有データバスを示す
。 ゴ二。 CLに 孝1 図

Claims (1)

    【特許請求の範囲】
  1. 複数の中央処理装置を備えたコンピュータシステムにお
    いて、各中央処理装置に共有のコモンメモリに対するア
    クセスのタイミングが衝突するような場合に、裁定回路
    部によつて判定された中央処理装置を優先的にアクセス
    し他の中央処理装置は一時的にウェイトをかけておくこ
    とにより、オーバヘッドタイムを最小限にし得る手段を
    備えたことを特徴とするマルチプロセッサシステム
JP14528885A 1985-07-02 1985-07-02 マルチプロセツサシステム Pending JPS626365A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14528885A JPS626365A (ja) 1985-07-02 1985-07-02 マルチプロセツサシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14528885A JPS626365A (ja) 1985-07-02 1985-07-02 マルチプロセツサシステム

Publications (1)

Publication Number Publication Date
JPS626365A true JPS626365A (ja) 1987-01-13

Family

ID=15381673

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14528885A Pending JPS626365A (ja) 1985-07-02 1985-07-02 マルチプロセツサシステム

Country Status (1)

Country Link
JP (1) JPS626365A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01234963A (ja) * 1988-03-15 1989-09-20 Koyo Electron Ind Co Ltd データ処理装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57211661A (en) * 1981-06-22 1982-12-25 Anritsu Corp Data transfer system for multiprocessor device
JPS60169969A (ja) * 1984-02-15 1985-09-03 Fuji Electric Co Ltd マルチプロセツサシステム
JPS6149268A (ja) * 1984-08-16 1986-03-11 Mitsubishi Electric Corp 共用メモリアクセス方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57211661A (en) * 1981-06-22 1982-12-25 Anritsu Corp Data transfer system for multiprocessor device
JPS60169969A (ja) * 1984-02-15 1985-09-03 Fuji Electric Co Ltd マルチプロセツサシステム
JPS6149268A (ja) * 1984-08-16 1986-03-11 Mitsubishi Electric Corp 共用メモリアクセス方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01234963A (ja) * 1988-03-15 1989-09-20 Koyo Electron Ind Co Ltd データ処理装置

Similar Documents

Publication Publication Date Title
US4594657A (en) Semaphore for memory shared by two asynchronous microcomputers
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
US4270167A (en) Apparatus and method for cooperative and concurrent coprocessing of digital information
KR900004006B1 (ko) 마이크로 프로세서 시스템
US5608881A (en) Microcomputer system for accessing hierarchical buses
JP2821534B2 (ja) デュアルポートランダムアクセスメモリ装置
JP3519182B2 (ja) 情報処理システムおよびバスアービタならびにバス制御方法
JPH0833875B2 (ja) バス裁定システム
US7996592B2 (en) Cross bar multipath resource controller system and method
JPH07105146A (ja) 共有メモリ装置
JPH0635849A (ja) バスの使用を制御する方法及びコンピュータ・システム
US5455912A (en) High speed/low overhead bus arbitration apparatus and method for arbitrating a system bus
JPS626365A (ja) マルチプロセツサシステム
RU2058041C1 (ru) Устройство для обмена данными двух процессоров через общую память
JPH0330175B2 (ja)
KR0149687B1 (ko) 멀티프로세서 시스템의 공통메모리 억세스 제어회로
KR930000670B1 (ko) 메인 cpu와 서브 cpu의 공용램 인터페이스 회로
US5799160A (en) Circuit and method for controlling bus arbitration
JPS59229662A (ja) 共有メモリ制御回路
JPS6238901A (ja) プログラマブルコントロ−ラ
JPH0351943A (ja) 高速バスと低速バスのバスライン共用化方式
JPS6322344B2 (ja)
JPS63101957A (ja) プロセツサ
JPS63298555A (ja) 共有メモリ制御方式
KR950009574B1 (ko) 메모리 액세스 제어장치