JP2845542B2 - マルチプロセッサシステムにおける排他制御方式 - Google Patents

マルチプロセッサシステムにおける排他制御方式

Info

Publication number
JP2845542B2
JP2845542B2 JP2026126A JP2612690A JP2845542B2 JP 2845542 B2 JP2845542 B2 JP 2845542B2 JP 2026126 A JP2026126 A JP 2026126A JP 2612690 A JP2612690 A JP 2612690A JP 2845542 B2 JP2845542 B2 JP 2845542B2
Authority
JP
Japan
Prior art keywords
exclusion
processor
exclusive
request
acquisition request
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
JP2026126A
Other languages
English (en)
Other versions
JPH03231353A (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.)
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 JP2026126A priority Critical patent/JP2845542B2/ja
Publication of JPH03231353A publication Critical patent/JPH03231353A/ja
Application granted granted Critical
Publication of JP2845542B2 publication Critical patent/JP2845542B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、複数のプロセッサを備え、メモリアクセ
ス、プロセッサ間通信、入出力処理等を実行する際に、
1つのプロセッサが独占的に処理を行うために、プロセ
ッサ間で排他がとられるマルチプロセッサシステムにお
ける排他制御方式に関する。
(従来の技術) 従来、複数のプロセッサを備えたマルチプロセッサシ
ステムにおいて、プロセッサ間の排他をとって処理を実
行する手順は次の通りであった。
まず、排他をとらなければならない処理を実行しよ
うとするプロセッサは、排他をとるための要求(排他取
得要求)を、プロセッサ間の排他を管理する排他管理手
段に対して行う。
排他取得要求を行ったプロセッサは、排他管理手段
により要求が受付けられて排他取得状態に入ったことを
確認してから、で実行しようとした処理を行う。
での処理が完了すると、そのプロセッサは排他取
得状態を解除するための要求(排他解除要求)を排他管
理手段に対して行う。これにより、システム内の排他状
態(排他取得状態)が排他管理手段によって解除され、
他のプロセッサからの排他取得要求の受付けが可能とな
る。
(発明が解決しようとする課題) 上記したように従来のマルチプロセッサシステムで
は、プロセッサ間の排他がとられている状態でシステム
内のプロセッサから排他解除要求が出されると、排他が
解除される。通常、排他解除を要求するプロセッサは、
排他をとったプロセッサと同一である。したがって、プ
ロセッサからの排他解除要求により排他が解除されても
何ら問題とならない。ところが、デバッグ中や障害時等
においては、排他をとっていない(排他取得状態にな
い)プロセッサが誤って排他解除を要求してしまい、他
のプロセッサがとっていた排他が解除されるという不具
合が起り得る。この場合、処理に矛盾が発生してエラー
となるが、このエラーは矛盾が発生した時点で起るとは
限らないため、いつどこで矛盾が起きたかを調査するの
に時間がかかってしまうという問題があった。
この発明は上記事情に鑑みてなされたものでその目的
は、排他をとっていないプロセッサが誤って排他解除要
求を発生すると排他が解除されてしまうという不具合の
発生が防止できるマルチプロセッサシステムにおける排
他制御方式を提供することにある。
この発明の他の目的は、排他をとっていないプロセッ
サが誤って排他解除要求を発生した場合には直ちにエラ
ー処理が行えるマルチプロセッサシステムにおける排他
制御方式を提供することにある。
[発明の構成] (課題を解決するための手段) この発明は、プロセッサ間の排他を管理するための排
他管理手段を有するマルチプロセッサシステムにおい
て、各プロセッサに、自プロセッサからの排他取得要求
が上記排他管理手段によって受付けられることにより状
態遷移して、自プロセッサが排他取得状態にあることを
示す状態保持手段と、自プロセッサ内の状態保持手段に
より排他取得状態にあることが示されていない場合に自
プロセッサ内で排他取得状態を解除するための排他解除
要求が発生されるエラーを検出するエラー検出手段と、
このエラー検出手段によるエラー検出に応じて排他管理
手段への排他解除要求出力を禁止する排他解除禁止手段
とを設けたことを特徴とするものである。また、各プロ
セッサに、自プロセッサ内のエラー検出手段によるエラ
ー検出に応じて割込みを発生してエラー処理を実行させ
る手段を更に設けることも可能である。
(作用) 上記の構成によれば、排他をとっていない(排他取得
状態にない)プロセッサで誤って排他解除要求が発生さ
れると、エラー検出手段によりエラーが検出され、これ
により誤った排他解除要求が排他管理手段に出力される
のが禁止されるのでて、排他が解除されてしまうことは
ない。また、上記のエラー検出に応じて割込みを発生し
てプロセッサによるエラー処理を直ちに開始させること
により、エラー発生時の情報を収集することができるよ
うになり、デバッグ、トラブルシューティング等の期間
の短縮が可能となる。
(実施例) 第1図はこの発明の一実施例を示すブロック構成図、
第2図はこの発明を適用するマルチプロセッサシステム
の基本構成を示すブロック図である。第2図において10
は各種プログラム、データ等が格納されるメモリ、20は
メモリ10および後述するシステムバス50へのアクセスを
制御するシステム制御装置、30−1〜30−nはメモリ10
を共有使用するプロセッサ、40は高速データ転送を行う
ためのチャネル、50はシステム制御装置20、プロセッサ
30−1〜30−nおよびチャネル40等の相互接続するため
のシステムバスである。
第1図において、51−1〜51−nはプロセッサ30−1
〜30−nからの排他取得要求をシステム制御装置20へ伝
えるための信号線(排他取得要求信号線)、52−1〜51
−nはシステム制御装置20からの排他要求受付け通知を
プロセッサ30−1〜30−nへ伝えるための信号線(排他
取得要求受付け信号線)、53はプロセッサ30−1〜30−
nからの排他解除要求をシステム制御装置20へ伝えるた
めの全プロセッサに共通の信号線(排他解除要求信号
線)である。信号線51−1〜51−n,52−1〜52−n,53は
いずれもシステムバス50に含まれている。
21はプロセッサ間の排他を管理するためにシステム制
御装置20に設けられた排他管理部である。排他管理部21
は、プロセッサ30−1〜30−nのいずれかが排他取得中
であることを示すための状態保持手段、例えばJ−Kタ
イプのフリップフロップ(以下、F/Fと称する)22と、
排他取得要求信号線51−1〜51−nのいずれかの状態が
有効な場合にF/F22のセット入力(ここではJ入力)を
有効とするORゲート23と、信号線51−1〜51−nの少な
くとも1つが有効となった場合(即ちプロセッサ30−1
〜30−nの少なくとも1つから排他取得要求があった場
合)に、F/F22がリセット状態にあるならば、(プロセ
ッサ30−1〜30−nに対応する)排他取得要求受付け信
号線52−1〜52−nの1つに排他取得要求受付け通知を
出力する優先度制御部24とを有している。優先度制御部
24は、複数のプロセッサから排他取得要求があった場合
には、(信号線52−1〜52−nのうち)最優先度のプロ
セッサに(対応する信号線に)対して排他取得要求受付
け通知を出力するようになっている。なお、プロセッサ
30−1〜30−n間の排他取得要求受付けの優先度は、固
定であっても巡回されるようになっていても構わない。
プロセッサ30−1において、31はマイクロプロセッサ
のアドレス制御を行ってマイクロ命令MIを出力するマイ
クロプログラム制御部、32はマイクロプログラム制御部
31からのマイクロ命令MIをデコードするデコーダ、33は
デコーダ32の出力の1つである排他取得要求信号RQ1に
よってセットされ、排他取得要求状態にあることを示す
例えばDタイプのF/F(以下、排他取得要求F/Fと称す
る)である。排他取得要求F/F33がセットされることに
より排他取得要求信号線51−1が有効となる。34は排他
取得要求受付け信号線52−1が有効となることによりセ
ットされ、自プロセッサ(30−1)からの排他取得要求
が受付けられたことを示す例えばDタイプのF/F(以
下、排他取得要求受付けF/Fと称する)、35は排他取得
要求受付けF/F34がセットすることによりセットされて
自プロセッサ(30−1)が排他取得中であることを示す
例えばJ−KタイプのF/Fである。F/F35は後述するF/F3
7がセットすることによりリセットされるようになって
いる。
36はデコーダ32の出力の1つである排他解除要求信号
RQ2をF/F35がセットしている場合に限り次段に出力する
ANDゲート、37はANDゲート36からの有効な出力によって
セットされ、排他解除要求状態にあることを示す例えば
DタイプのF/F(以下、排他解除要求F/Fと称する)であ
る。この排他解除要求F/F37のQ出力は排他解除要求信
号線53に接続されている。38はF/F35がリセットしてい
る期間に、デコーダ32から有効な排他解除要求信号RQ2
が出力された場合にエラー信号ERRを有効とするANDゲー
ト、39はエラー信号ERRが有効となった場合に、マイク
ロプログラム制御部31に対して割り込み発生信号INTお
よびエラー処理用マイクロプログラムの先頭アドレスAD
Rを出力する割込み制御部である。
なお、プロセッサ30−2〜30−nの本発明の要旨に関
係する部分の構成は、上記したプロセッサ30−1と同様
であり、したがって第1図では省略されている。必要な
らば、上記したプロセッサ30−1の構成の説明で、プロ
セッサ30−1をプロセッサ30−2〜30−nに、排他取得
要求信号線51−1を排他取得要求信号線51−2〜51−n
に、排他取得要求受付け信号線52−1を排他取得要求受
付け信号線52−2〜52−nに読替えられたい。
次に、この発明の一実施例の動作を説明する。
第2図に示すようなマルチプロセッサシステムにおい
て、或るプロセッサ、例えばプロセッサ30−1がメモリ
10にアクセスする際や、チャネル40との間で入出力処理
を行う際、または他のプロセッサとの間でデータ転送を
行う場合に、相手側の装置を独占的に使用する必要が生
じることがある。このためには、プロセッサ間で排他を
とるという制御が必要となる。この排他制御および誤っ
た排他解除要求が行われるエラーの検出について以下に
詳述する。
プロセッサ30−1が排他をとろうとした場合、その実
行はマイクロ命令によって実現される。まずマイクロプ
ログラム制御部31から、排他をとるための要求を含んだ
マイクロ命令MIが出力され、その要求はデコーダ32でデ
コードされる。これによりデコーダ32から有効な排他取
得要求信号RQ1が出力される。デコーダ32から有効な排
他取得要求信号RQ1が出力されると、排他取得要求F/F33
がセットされる。
プロセッサ30−1の排他取得要求F/F33がセットされ
ると、システムバス50の排他取得要求信号線51−1が有
効となる。排他取得要求信号線51−1が有効となると、
システム制御装置20内の排他管理部21に設けられたORゲ
ート23によってF/F22のセット入力(J入力)が有効と
なり、同F/F22がセットする。このF/F22のセット状態に
より、第2図のシステムのプロセッサ30−1〜30−nの
いずれかが排他取得中であることが示される。一方、優
先度制御部24では、プロセッサ30−1に対応する排他取
得要求信号線51−1が有効となった時点で、F/F22がセ
ットされておらず、且つ他のプロセッサ30−2〜30−n
に対応する排他取得要求信号線51−2〜51−nが有効で
なかった場合に、(プロセッサ30−1に対応する)シス
テムバス50の排他取得要求受付け信号線52−1を有効に
する。また、排他取得要求信号線51−2〜51−nの幾つ
かが排他取得要求信号線52−1と同時に有効となった場
合でも、それらの中で信号線52−1(に対応するプロセ
ッサ30−1)の優先度が最も高ければ、優先度制御部24
は排他取得要求受付け信号線52−1を有効にする。な
お、排他取得要求信号線51−1が有効となった時点でF/
F22が既にセットされているならば、即ちシステム内の
いずれかのプロセッサが既に排他取得中であるならば、
プロセッサ30−1からの排他取得要求は無視され、信号
線52−1は有効に設定されない。
さて、排他取得要求信号線52−1が有効となると、排
他取得要求元プロセッサ30−1の排他取得要求受付けF/
F34がセットされ、自プロセッサ(30−1)からの排他
取得要求が受付けられたことが示される。マイクロプロ
グラム制御部31は排他取得要求受付けF/F34がセットさ
れると、同F/F34のセット出力(Q出力)により、自プ
ロセッサからの排他取得要求が受付けられたことを認識
し、マイクロプログラムの処理を先に進める。また排他
取得要求受付けF/F34がセットされると、F/F35がセット
され、自プロセッサ(30−1)が排他取得中であること
が示される。
次に、プロセッサ30−1の排他を解除する場合につい
て説明する。この排他解除もマイクロ命令によって実現
される。まずマイクロプログラム制御部31から、排他を
解除するための要求を含んだマイクロ命令MIが出力さ
れ、その要求はデコーダ32でデコードされる。これによ
りデコーダ32から有効な排他解除要求信号RQ2が出力さ
れる。この排他取得要求信号RQ1はANDゲート36の一方の
入力に供給される。ANDゲート36の他方の入力には自プ
ロセッサが排他取得中であることを示すためのF/F35の
Q出力が供給される。通常、排他を解除する場合には、
そのプロセッサ(30−1)内のF/F35はセットされてお
り、このような場合、ANDゲート36は上記排他解除要求
信号RQ2の排他解除要求F/F37へのの出力を許可する。こ
の結果、排他解除要求F/F37はセットされ、自プロセッ
サ(30−1)が排他解除要求中であることが示される。
プロセッサ30−1の排他解除要求F/F37がセットされ
ると、自プロセッサ(30−1)が排他取得中であること
を示すためのF/F35がリセットされる。また、排他解除
要求F/F37がセットされると、各プロセッサに共通のシ
ステムバス50の排他解除要求信号線53が有効となる。排
他解除要求信号線53が有効となると、システム制御装置
20の排他管理部21に設けられた(システム内のいずれか
のプロセッサが)排他取得中であることを示すためのF/
F22がリセットされ、プロセッサ間の排他は解除され
る。
以上が通常の場合における排他取得および解除の動作
である。次に、何らかの障害によってプロセッサ30−1
が誤動作し、プロセッサ30−1が排他をとっていないに
も拘らずに、排他を解除しようとした場合の動作を説明
する。
まず、プロセッサ30−1が排他をとっていないにも拘
らず、マイクロプログラム制御部31から、誤って排他を
解除するための要求を含んだマイクロ命令MIが出力され
たものとする。この場合、前述したようにデコーダ32か
ら有効な排他解除要求信号RQ2が出力され、ANDゲート36
に供給される。このANDゲート36には、自プロセッサが
排他取得中であることを示すためのF/F35のQ出力も供
給される。プロセッサ30−1が排他をとっていない場
合、そのプロセッサ30−1内のF/F35はセットされてお
らず、そのQ出力は“L"(低レベル)である。この場
合、ANDゲート36は上記排他解除要求信号RQ2の排他解除
要求F/F37への出力を禁止する。これにより排他解除要
求F/F37は、マイクロプログラム制御部31からの有効な
排他解除要求信号RQ2の出力にも拘らずにセットされ
ず、したがってシステム制御装置20の排他管理部21に設
けられた排他取得中であることを示すためのF/F22はリ
セットされない。このように本実施例によれば、排他を
とっていないプロセッサ内で誤って排他解除要求が発生
しても、その要求がシステム制御装置20の排他管理部21
に出力されることが禁止され、排他管理部21内の排他取
得中であることを示すためのF/F22がリセットされるこ
とが防止できるので、他プロセッサが取得している排他
が誤って解除されるという誤動作を防ぐことができる。
さて、デコーダ32からの排他解除要求信号RQ2は誤っ
た排他解除要求が行われるエラーを検出するためのAND
ゲート38にも供給される。ANDゲート38は、この排他解
除要求信号RQ2の出力を、自プロセッサ(30−1)が排
他取得中であることを示すためのF/F35の状態によって
制御する。そしてANDゲート38は、この実施例のように
自プロセッサ(30−1)が排他取得中ではなく、したが
ってF/F35がセットされていない場合には、デコーダ32
からの有効な排他解除要求信号RQ2を有効なエラー信号E
RRとして割込み制御部39に出力する。割込み制御部39は
ANDゲート38から有効なエラー信号ERRが出力されると、
予め設定されているエラー処理用マイクロプログラムの
先頭アドレスADRおよび割り込み信号INTをマイクロプロ
グラム制御部31に出力する。これによりマイクロプログ
ラム制御部31は、ADRで指定されたアドレスにマイクロ
プログラムの実行を移し、同アドレスADRから始まるエ
ラー処理用マイクロプログラムによるエラー処理を開始
する。
以上の動作はプロセッサ30−1において排他取得要求
や排他解除要求が発生した場合について説明したもので
あるが、この動作はプロセッサ30−2〜30−nにおいて
排他取得要求や排他解除要求が発生した場合にも同様に
行われる。
[発明の効果] 以上詳述したようにこの発明によれば、排他をとって
いない(排他取得中でない)プロセッサで誤って排他解
除要求が発生された場合には、その要求発生がエラーと
して検出されて、その要求の出力が禁止されるので、他
プロセッサが取得している排他が解除されるという不具
合の発生が防止でき、処理に矛盾が発生することが未然
に防げる。
また、この発明によれば、上記したエラー検出が行わ
れると、直ちにプロセッサへの割込みが発生してエラー
処理が開始されるので、エラー発生時の情報を収集する
ことができ、したがってデバッグ、トラブルシューティ
ング等の期間が短縮でき、RAS(Reliability,Availabil
ity,Servicability)機能の向上を図ることができる。
【図面の簡単な説明】
第1図はこの発明の一実施例を示すブロック構成図、第
2図はこの発明を適用するマルチプロセッサシステムの
基本構成を示すブロック図である。 10……メモリ、20……システム制御装置、21……排他管
理部、22,33〜35,37……F/F(フリップフロップ)、24
……優先度制御部、31……マイクロプログラム制御部、
32……デコーダ、36,38……ANDゲート、39……割込み制
御部。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】複数のプロセッサを備え、1つのプロセッ
    サが独占的に処理を行うために、排他管理手段の管理の
    もとでプロセッサ間で排他がとられるマルチプロセッサ
    システムにおいて、 上記各プロセッサに、 自プロセッサからの排他取得要求が上記排他管理手段に
    よって受付けられることにより第1の論理状態から第2
    の論理状態に状態遷移して自プロセッサが排他取得状態
    にあることを示す状態保持手段と、 自プロセッサ内の上記状態保持手段が上記第1の論理状
    態にある場合に自プロセッサ内で排他取得状態を解除す
    るための排他解除要求が発生されるエラーを検出するエ
    ラー検出手段と、 このエラー検出手段によるエラー検出に応じて上記排他
    解除要求の上記排他管理手段への出力を禁止する排他解
    除禁止手段と、 を設け、排他取得状態にないプロセッサからの排他取得
    要求を無効とするようにしたことを特徴とするマルチプ
    ロセッサシステムにおける排他制御方式。
  2. 【請求項2】上記各プロセッサに、自プロセッサ内の上
    記エラー検出手段によるエラー検出に応じて割込みを発
    生してエラー処理を実行させる手段を更に設けたことを
    特徴とする第1請求項記載のマルチプロセッサシステム
    における排他制御方式。
JP2026126A 1990-02-07 1990-02-07 マルチプロセッサシステムにおける排他制御方式 Expired - Fee Related JP2845542B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2026126A JP2845542B2 (ja) 1990-02-07 1990-02-07 マルチプロセッサシステムにおける排他制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2026126A JP2845542B2 (ja) 1990-02-07 1990-02-07 マルチプロセッサシステムにおける排他制御方式

Publications (2)

Publication Number Publication Date
JPH03231353A JPH03231353A (ja) 1991-10-15
JP2845542B2 true JP2845542B2 (ja) 1999-01-13

Family

ID=12184871

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2026126A Expired - Fee Related JP2845542B2 (ja) 1990-02-07 1990-02-07 マルチプロセッサシステムにおける排他制御方式

Country Status (1)

Country Link
JP (1) JP2845542B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60228611A (ja) * 1984-04-26 1985-11-13 Nippon Kokan Kk <Nkk> 高炉の操業方法

Also Published As

Publication number Publication date
JPH03231353A (ja) 1991-10-15

Similar Documents

Publication Publication Date Title
JP6404283B2 (ja) 安全な環境を初期化する命令を実行するシステムおよび方法
EP3588309B1 (en) Semiconductor device, control system, and control method of semiconductor device
US4162529A (en) Interruption control system in a multiprocessing system
JP2845542B2 (ja) マルチプロセッサシステムにおける排他制御方式
US5293496A (en) Inhibit write apparatus and method for preventing bus lockout
JPS6336545B2 (ja)
JP2937857B2 (ja) 共通記憶装置のロックフラグ解除方式および方法
JP2000187652A (ja) マルチプロセッサシステム
JPH04127261A (ja) マルチプロセッサシステム
JPH01286070A (ja) データ処理システム
JPH07253931A (ja) プログラムデータ格納領域の破壊防止方式
JP2848681B2 (ja) マルチプロセッサシステムの排他制御回路
JPH05181813A (ja) 排他制御ビット制御方式
JPS60183657A (ja) 共通バス障害検知方式
JP2550708B2 (ja) デバッグ方式
JP2738348B2 (ja) マルチプロセッサシステム
JPH0877101A (ja) バスコントローラおよび信号処理装置
JPS63250753A (ja) メモリアクセスチエツク方式
JP2825589B2 (ja) バス制御方式
KR0131848B1 (ko) 다중 프로세서 시스템의 버스 스누핑 제어장치
JPH0467226B2 (ja)
JPS5833737A (ja) リセツト制御方式
JPH0318913A (ja) システムリセット装置
JPS623367A (ja) 主記憶アクセス方式
JPH06250969A (ja) マルチプロセッサシステムにおけるバス制御方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees