JP2848681B2 - マルチプロセッサシステムの排他制御回路 - Google Patents
マルチプロセッサシステムの排他制御回路Info
- Publication number
- JP2848681B2 JP2848681B2 JP2248531A JP24853190A JP2848681B2 JP 2848681 B2 JP2848681 B2 JP 2848681B2 JP 2248531 A JP2248531 A JP 2248531A JP 24853190 A JP24853190 A JP 24853190A JP 2848681 B2 JP2848681 B2 JP 2848681B2
- Authority
- JP
- Japan
- Prior art keywords
- exclusion
- processor
- acquisition
- exclusive
- 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
Links
Landscapes
- Multi Processors (AREA)
Description
【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、マルチプロセッサシステムにおける排他制
御回路に関する。
御回路に関する。
(従来の技術) 従来、マルチプロセッサシステムにおいてプロセッサ
間の排他を取得して処理を実行する手順は下記の通りで
ある。
間の排他を取得して処理を実行する手順は下記の通りで
ある。
排他の取得を要求する処理を実行しようとするプロセ
ッサが排他を取得するための要求を行なう。
ッサが排他を取得するための要求を行なう。
上記排他取得を行なったプロセッサは、要求が受け付
けられたことを確認したのち実行しようとした処理を開
始する。
けられたことを確認したのち実行しようとした処理を開
始する。
なお、要求が受け付けられない場合としては、次の場
合がある。
合がある。
1)自分自身が以前に取得した排他が今だ解除されてい
ない場合。
ない場合。
2)他のプロセッサが済に排他を取得している場合。
3)自分より優先度の高いプロセッサが排他取得要求を
行なっている場合。
行なっている場合。
上記での処理が完了した時点でそのプロセッサは排
他を解除する。
他を解除する。
ここでにおける排他の解除は処理が完了した時点、
すなわち相手先の装置に対する要求がシステムバスに出
力されたのちに行なわれるため、システムバスの負荷が
上がると、相手先の装置に対する要求の出力が待たされ
てしまい、排他の解除も延ばされることになる。したが
っての1)で述べたような状況が発生してしまい、自
分自身で取得した排他が解除されるまで、次の排他の取
得要求は受け付けられなかった。
すなわち相手先の装置に対する要求がシステムバスに出
力されたのちに行なわれるため、システムバスの負荷が
上がると、相手先の装置に対する要求の出力が待たされ
てしまい、排他の解除も延ばされることになる。したが
っての1)で述べたような状況が発生してしまい、自
分自身で取得した排他が解除されるまで、次の排他の取
得要求は受け付けられなかった。
(発明が解決しようとする課題) 上述したように従来のマルチプロセッサシステムで
は、排他の解除は処理が完了した時点、すなわち相手先
の装置に対する要求がシステムバスに出力されたのちに
行なわれるため、システムバスの負荷が上がると、相手
先の装置に対する要求の出力が待たされてしまい、排他
の解除も延ばされることになる。このため、プロセッサ
が排他処理を行なうためには先に取得された排他が解除
されるのを待たなければなかった。
は、排他の解除は処理が完了した時点、すなわち相手先
の装置に対する要求がシステムバスに出力されたのちに
行なわれるため、システムバスの負荷が上がると、相手
先の装置に対する要求の出力が待たされてしまい、排他
の解除も延ばされることになる。このため、プロセッサ
が排他処理を行なうためには先に取得された排他が解除
されるのを待たなければなかった。
本発明は、このような従来の欠点を除去するためにな
されたもので、先に取得された排他が自プロセッサによ
り取得されたものであるならば、それが解除されること
を待つことなく次の排他処理を行なうことを可能とする
ことにより、処理の高速化を図るマルチプロセッサシス
テムの排他制御回路を提供することを目的とする。
されたもので、先に取得された排他が自プロセッサによ
り取得されたものであるならば、それが解除されること
を待つことなく次の排他処理を行なうことを可能とする
ことにより、処理の高速化を図るマルチプロセッサシス
テムの排他制御回路を提供することを目的とする。
[発明の構成] (課題を解決するための手段) 上記従来の目的を達成する本発明の排他制御回路は、
複数のプロセッサから構成されているマルチプロセッサ
システムにおいて、プロセッサがメモリアクセス,プロ
セッサ間通信,入出力処理等を実行する際、1つのプロ
セッサが独占的に処理を行なうためにプロセッサ間での
排他をとる排他制御手段と、自プロセッサが排他を取得
している最中に自プロセッサにより実行された排他取得
の要求数をカウントする排他取得要求カウンタと、前記
排他取得要求カウンタにカウントされた要求数がオーバ
ーフローした場合に自プロセッサが発した新たな要求の
受付けを禁止する排他取得要求禁止手段と、排他取得要
求カウンタに1つ以上の要求数がカウントされている場
合に排他の解除を禁止する排他解除禁止手段とを備えた
ことを特徴とする。
複数のプロセッサから構成されているマルチプロセッサ
システムにおいて、プロセッサがメモリアクセス,プロ
セッサ間通信,入出力処理等を実行する際、1つのプロ
セッサが独占的に処理を行なうためにプロセッサ間での
排他をとる排他制御手段と、自プロセッサが排他を取得
している最中に自プロセッサにより実行された排他取得
の要求数をカウントする排他取得要求カウンタと、前記
排他取得要求カウンタにカウントされた要求数がオーバ
ーフローした場合に自プロセッサが発した新たな要求の
受付けを禁止する排他取得要求禁止手段と、排他取得要
求カウンタに1つ以上の要求数がカウントされている場
合に排他の解除を禁止する排他解除禁止手段とを備えた
ことを特徴とする。
(作 用) 本発明では、先に取得された排他が自プロセッサによ
り取得されたものであるならば、それが解除されること
を待つことなく次の排他処理を行なうことが可能とな
る。
り取得されたものであるならば、それが解除されること
を待つことなく次の排他処理を行なうことが可能とな
る。
(実施例) 以下、本発明の実施例について図面を参照して詳細に
説明する。
説明する。
第1図に本発明を適用するマルチプロセッサシステム
の概要を示す。図において、システムバス100を介して
複数のプロセッサ200とメモリ300とチャネル400が接続
されており、各装置間のデータ転送はシステムバス100
を介して実行される。
の概要を示す。図において、システムバス100を介して
複数のプロセッサ200とメモリ300とチャネル400が接続
されており、各装置間のデータ転送はシステムバス100
を介して実行される。
第2図に本発明の一実施例による排他制御回路の構成
ブロック図を示す。
ブロック図を示す。
本実施例による排他制御回路は、第1図に示したプロ
セッサ200に組込まれており、マイクロプログラム制御
部201と、デコーダ203と、バス取得制御部205と、排他
取得フリップフロップ208と、排他取得要求カウンタ209
を備える。また、301〜305はANDゲート、110はシステム
バス100の中の信号線であり、本信号線110がアクティブ
(0真値)であれば排他取得中であることを示す。121,
122,123もそれぞれシステムバス100中の信号線であり、
各プロセッサ200の排他取得要求信号(0真値)が送ら
れる。
セッサ200に組込まれており、マイクロプログラム制御
部201と、デコーダ203と、バス取得制御部205と、排他
取得フリップフロップ208と、排他取得要求カウンタ209
を備える。また、301〜305はANDゲート、110はシステム
バス100の中の信号線であり、本信号線110がアクティブ
(0真値)であれば排他取得中であることを示す。121,
122,123もそれぞれシステムバス100中の信号線であり、
各プロセッサ200の排他取得要求信号(0真値)が送ら
れる。
上記マイクロプログラム制御部201は、マイクロプロ
グラムのアドレス制御を行い、マイクロ命令202を出力
する。デコーダ203は、マイクロプログラム制御部201よ
り出力されたマイクロ命令202をデコードする。ここ
で、204は、排他取得要求信号(1真値)であり、反転
されて信号線121へ出力される。また、206は、排他解除
要求信号(1真値)であり、バス取得制御部205へ送ら
れる。207は、排他解除信号(1真値)であり、バス取
得制御部205より出力される。バス取得制御部205は、シ
ステムバス100の取得及びシステムバス100への情報転送
の制御を行う。排他取得フリップフロップ208は、自プ
ロセッサが排他を取得中である場合にセットされる。排
他取得要求カウンタ209は、排他取得フリップフロップ2
08がセット中に排他取得要求信号204がアクティブにな
った場合にカウントアップされる。
グラムのアドレス制御を行い、マイクロ命令202を出力
する。デコーダ203は、マイクロプログラム制御部201よ
り出力されたマイクロ命令202をデコードする。ここ
で、204は、排他取得要求信号(1真値)であり、反転
されて信号線121へ出力される。また、206は、排他解除
要求信号(1真値)であり、バス取得制御部205へ送ら
れる。207は、排他解除信号(1真値)であり、バス取
得制御部205より出力される。バス取得制御部205は、シ
ステムバス100の取得及びシステムバス100への情報転送
の制御を行う。排他取得フリップフロップ208は、自プ
ロセッサが排他を取得中である場合にセットされる。排
他取得要求カウンタ209は、排他取得フリップフロップ2
08がセット中に排他取得要求信号204がアクティブにな
った場合にカウントアップされる。
また、210は排他取得要求カウンタ209のカウント数が
1以上の場合にアクティブとなる信号(1真値)、211
は排他取得要求カウンタ209のカウント数がオーバーフ
ローした場合にアクティブとなる信号(1真値)であ
る。
1以上の場合にアクティブとなる信号(1真値)、211
は排他取得要求カウンタ209のカウント数がオーバーフ
ローした場合にアクティブとなる信号(1真値)であ
る。
第1図に示すようなマルチプロセッサシステムにおい
て、あるプロセッサ200がメモリ300にアクセスする際
や、チャネル400との間で入出力処理を行なう際、また
他のプロセッサとの間でデータ転送を行なう場合に、相
手側の装置を独占的に使用したい場合がある。このため
にプロセッサ200間で排他をとるという制御が行なわれ
る。
て、あるプロセッサ200がメモリ300にアクセスする際
や、チャネル400との間で入出力処理を行なう際、また
他のプロセッサとの間でデータ転送を行なう場合に、相
手側の装置を独占的に使用したい場合がある。このため
にプロセッサ200間で排他をとるという制御が行なわれ
る。
第2図を用いて排他取得の制御について説明する。プ
ロセッサ200が排他を取得する場合、その実行はマイク
ロ命令202によって実現される。まずマイクロプログラ
ム制御部201から排他を取得するための要求を含んだマ
イクロ命令202が出力される。これがデコーダ203によっ
てデコードされ、排他取得要求信号204及びシステムバ
ス100上の信号線121がアクティブとなる。
ロセッサ200が排他を取得する場合、その実行はマイク
ロ命令202によって実現される。まずマイクロプログラ
ム制御部201から排他を取得するための要求を含んだマ
イクロ命令202が出力される。これがデコーダ203によっ
てデコードされ、排他取得要求信号204及びシステムバ
ス100上の信号線121がアクティブとなる。
このとき自プロセッサより優先度の高いプロセッサが
排他取得要求を行なっている場合(信号線122,123のい
ずれかがアクティブの場合)、またはすでに排他が取得
されている場合(信号線110がアクティブの場合)には
排他取得フリップフロップ208のセットが禁止される。
排他取得要求を行なっている場合(信号線122,123のい
ずれかがアクティブの場合)、またはすでに排他が取得
されている場合(信号線110がアクティブの場合)には
排他取得フリップフロップ208のセットが禁止される。
排他取得フリップフロップ208の出力はANDゲート302
を介してマイクロプログラム制御部201に入力されてお
り、マイクロプログラム制御部201ではこの排他取得フ
リップフロップ208の出力がアクティブでなければ再び
排他を取得するための要求を含んだマイクロ命令202を
出力する。そして信号線110,122,123がアクティブでな
くなれば、排他取得フリップフロップ208がセットさ
れ、信号線110がアクティブとなり、プロセッサは排他
を取得できる。
を介してマイクロプログラム制御部201に入力されてお
り、マイクロプログラム制御部201ではこの排他取得フ
リップフロップ208の出力がアクティブでなければ再び
排他を取得するための要求を含んだマイクロ命令202を
出力する。そして信号線110,122,123がアクティブでな
くなれば、排他取得フリップフロップ208がセットさ
れ、信号線110がアクティブとなり、プロセッサは排他
を取得できる。
また、マイクロプログラム制御部201は排他取得フリ
ップフロップ208がセットされたことによりマイクロプ
ログラムの処理を先に進める。
ップフロップ208がセットされたことによりマイクロプ
ログラムの処理を先に進める。
次に排他を解除する場合であるが、この場合もマイク
ロ命令202によって実現される。マイクロプログラム制
御部201からは排他を解除するための要求を含んだマイ
クロ命令202が出力される。これはデコーダ203によって
デコードされ、排他解除要求信号206がアクティブとな
り、バス取得制御部205へ送られる。
ロ命令202によって実現される。マイクロプログラム制
御部201からは排他を解除するための要求を含んだマイ
クロ命令202が出力される。これはデコーダ203によって
デコードされ、排他解除要求信号206がアクティブとな
り、バス取得制御部205へ送られる。
バス取得制御部205ではシステムバス100の取得制御を
行なっており、排他処理の対象である装置へのアクセス
をシステムバス100へ出力したのち、排他解除信号207を
アクティブとする。このとき排他取得要求カウンタ209
にカウントされている要求数が0であれば、排他解除信
号207はANDゲート304を介して排他取得フリップフロッ
プ208のリセット入力に入力され、排他取得フリップフ
ロップ208をリセットする。こうしてプロセッサは排他
の解除を行なう。
行なっており、排他処理の対象である装置へのアクセス
をシステムバス100へ出力したのち、排他解除信号207を
アクティブとする。このとき排他取得要求カウンタ209
にカウントされている要求数が0であれば、排他解除信
号207はANDゲート304を介して排他取得フリップフロッ
プ208のリセット入力に入力され、排他取得フリップフ
ロップ208をリセットする。こうしてプロセッサは排他
の解除を行なう。
このように排他の解除は相手先への要求がシステムバ
ス100へ出力されたのちに実行されるため、システムバ
スの負荷が上がると待ちが発生してしまう。一方、これ
とは関係なくマイクロプログラムは処理を先に進めてい
るため次の排他取得要求を行なう場合がある。
ス100へ出力されたのちに実行されるため、システムバ
スの負荷が上がると待ちが発生してしまう。一方、これ
とは関係なくマイクロプログラムは処理を先に進めてい
るため次の排他取得要求を行なう場合がある。
以下、このような場合の動作について説明する。
以前に取得した排他は未だ解除されていないので排他
取得フリップフロップ208はセット状態である。ここ
で、排他取得要求信号204がアクティブになると排他取
得要求カウンタ209がカウントアップされる。排他取得
要求カウンタ209に1つ以上の要求数がカウントされて
いると信号210はアクティブとなるため、この状態で以
前に取得した排他を解除するために排他解除信号207が
アクティブとなっても、信号210により禁止される。よ
って、排紙取得フリップフロップ208はリセットされ
ず、代わりに排他取得要求カウンタ209がカウントダウ
される。
取得フリップフロップ208はセット状態である。ここ
で、排他取得要求信号204がアクティブになると排他取
得要求カウンタ209がカウントアップされる。排他取得
要求カウンタ209に1つ以上の要求数がカウントされて
いると信号210はアクティブとなるため、この状態で以
前に取得した排他を解除するために排他解除信号207が
アクティブとなっても、信号210により禁止される。よ
って、排紙取得フリップフロップ208はリセットされ
ず、代わりに排他取得要求カウンタ209がカウントダウ
される。
こうしてプロセッサ200は、先に自プロセッサによっ
て取得した排他が解除されていない状態でも次の排他処
理を行なうことができる。
て取得した排他が解除されていない状態でも次の排他処
理を行なうことができる。
なお、排他取得要求カウンタ209がオーバーフローし
た場合には信号211がアクティブとなる。したがって、
排他取得フリップフロップ208の出力を信号211により禁
止してマイクロプログラム制御部201に送ることによ
り、マイクロプログラムの処理が先に進むことを防止し
ている。
た場合には信号211がアクティブとなる。したがって、
排他取得フリップフロップ208の出力を信号211により禁
止してマイクロプログラム制御部201に送ることによ
り、マイクロプログラムの処理が先に進むことを防止し
ている。
[発明の効果] 以上説明したように本発明のマルチプロセッサシステ
ムの排他制御回路によれば、先に取得された排他が自プ
ロセッサにより取得されたものであるならば、それが解
除されることを待つことなく次の排他処理を行なうこと
を可能とすることにより、処理の高速化が実現される。
ムの排他制御回路によれば、先に取得された排他が自プ
ロセッサにより取得されたものであるならば、それが解
除されることを待つことなく次の排他処理を行なうこと
を可能とすることにより、処理の高速化が実現される。
第1図は本発明を適用するマルチプロセッサシステムの
概要を示すブロック図、第2図は本発明の一実施例によ
る排他制御回路の構成ブロック図である。 100……システムバス、200……プロセッサ、201……マ
イクロプログラム制御部、202……マイクロ命令、203…
…デコーダ、204……排他取得要求信号、205……バス取
得制御部、206……排他解除要求信号、207……排他解除
信号、208……排他取得フリップフロップ、209……排他
取得要求カウンタ。
概要を示すブロック図、第2図は本発明の一実施例によ
る排他制御回路の構成ブロック図である。 100……システムバス、200……プロセッサ、201……マ
イクロプログラム制御部、202……マイクロ命令、203…
…デコーダ、204……排他取得要求信号、205……バス取
得制御部、206……排他解除要求信号、207……排他解除
信号、208……排他取得フリップフロップ、209……排他
取得要求カウンタ。
Claims (1)
- 【請求項1】複数のプロセッサから構成されているマル
チプロセッサシステムにおいて、 プロセッサがメモリアクセス、プロセッサ間通信、入出
力処理等を実行する際、1つのプロセッサが独占的に処
理を行うためにプロセッサ間で排他をとる排他制御手段
と、 自プロセッサが排他を取得している最中に自プロセッサ
により実行された排他取得の要求数をカウントする排他
取得要求カウンタと、 前記排他取得要求カウンタによりカウントされた要求数
がオーバーフローした場合に自プロセッサが発した新た
な要求の受付を禁止する排他取得要求禁止手段と、 前記排他取得要求カウンタに1つ以上の要求数がカウン
トされている場合に排他の解除を禁止する排他解除禁止
手段と を備えたことを特徴とするマルチプロセッサシステムの
排他制御回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2248531A JP2848681B2 (ja) | 1990-09-18 | 1990-09-18 | マルチプロセッサシステムの排他制御回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2248531A JP2848681B2 (ja) | 1990-09-18 | 1990-09-18 | マルチプロセッサシステムの排他制御回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04127260A JPH04127260A (ja) | 1992-04-28 |
| JP2848681B2 true JP2848681B2 (ja) | 1999-01-20 |
Family
ID=17179574
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2248531A Expired - Fee Related JP2848681B2 (ja) | 1990-09-18 | 1990-09-18 | マルチプロセッサシステムの排他制御回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2848681B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6962717B2 (ja) * | 2017-06-15 | 2021-11-05 | 日本電気株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
| KR20210034372A (ko) | 2019-09-20 | 2021-03-30 | 주식회사 엘지화학 | 배터리 관리 장치 및 방법 |
-
1990
- 1990-09-18 JP JP2248531A patent/JP2848681B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH04127260A (ja) | 1992-04-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0354375B2 (ja) | ||
| JPS5812611B2 (ja) | デ−タテンソウセイギヨホウシキ | |
| US5233701A (en) | System for managing interprocessor common memory | |
| JP2539352B2 (ja) | 階層型多重計算機システム | |
| US4162529A (en) | Interruption control system in a multiprocessing system | |
| JP2848681B2 (ja) | マルチプロセッサシステムの排他制御回路 | |
| JPS5925258B2 (ja) | プロセツサ制御システム | |
| JP2010092101A (ja) | 情報処理装置 | |
| JPS61250765A (ja) | マルチプロセツサシステムの排他制御方式 | |
| JPH0348544B2 (ja) | ||
| JPS6145348A (ja) | バス優先権制御方式 | |
| JPS6125249A (ja) | 排他制御方式 | |
| JP2961542B2 (ja) | データ処理システム | |
| JPS58101360A (ja) | デ−タ処理装置 | |
| JPH02166549A (ja) | 共有メモリ制御装置 | |
| JPS633328B2 (ja) | ||
| JP2872042B2 (ja) | 共有メモリアクセス方式 | |
| JP3187117B2 (ja) | マルチプロセッサ内蔵1チップマイクロコンピュータ | |
| JPH0795276B2 (ja) | 情報処理装置 | |
| JP3365419B2 (ja) | バス調停方法 | |
| JPS6234269A (ja) | 割込み制御方式 | |
| JPS5839344B2 (ja) | マルチプロセツサシステム ノ セイギヨホウシキ | |
| JPS5840216B2 (ja) | テストアンドセツト方式 | |
| JPH0131213B2 (ja) | ||
| JPH06250969A (ja) | マルチプロセッサシステムにおけるバス制御方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |