JPH03164964A - 情報処理装置における排他制御処理装置 - Google Patents

情報処理装置における排他制御処理装置

Info

Publication number
JPH03164964A
JPH03164964A JP30592589A JP30592589A JPH03164964A JP H03164964 A JPH03164964 A JP H03164964A JP 30592589 A JP30592589 A JP 30592589A JP 30592589 A JP30592589 A JP 30592589A JP H03164964 A JPH03164964 A JP H03164964A
Authority
JP
Japan
Prior art keywords
exclusive control
control byte
main memory
processing unit
processor
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
JP30592589A
Other languages
English (en)
Inventor
Tsunemichi Shiozawa
塩澤 恒道
Yasuhiko Takei
武井 安彦
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 Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP30592589A priority Critical patent/JPH03164964A/ja
Publication of JPH03164964A publication Critical patent/JPH03164964A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、マルチプロセッサシステム等の情報処・理装
置において、各処理ユニットが共有する資源を管理する
排他制御を実現する装置に関するものである。
〔従来技術〕
第2図は、マルチプロセッサシステムの構成を説明する
ためのブロック図であり、1.2.3はプロセッサ及び
バスコントローラからなる処理ユニット、4はシステム
バス、5はメインメモリ、6はバスアービタである。
処理ユニットからメインメモリ上のデータを読み出し及
び書き換えは、システムバスを介して行われる。
マルチプロセッサシステムにおいては、各処理ユニット
が並列に処理を実行するので、各処理ユニットで実行し
ている処理によって共有して使用される共有情報を他の
処理ユニットが書き換えて− いる途中で読み出すと、各処理ユニットで実行する処理
に矛盾が生じる。
そこで、共有情報の読み出しまたは書き換えを行う場合
、他の処理ユニットからの読み出し及び書き換えを禁止
する排他制御が必要となる。
第3図は、従来の排他制御方法を説明するためのフロー
チャートであり、共有情報の読み出しまたは書き換えを
行う処理ユニットは、符号Aから符号Bまでの一連の処
理を行い、共有情報の読み出しまたは書き換えを行う。
ステップ21において、処理ユニット1,2.3はシス
テムバス4をロック(他の処理ユニットがシステムバス
を介してメインメモリの読み出し及び書き換えを行なう
ことを禁止する)してメインメモリ5から排他制御バイ
トを読み出す。ここで、排他制御バイトがro OOO
OOOOJであれば、共有情報を使用している処理ユニ
ットは存在しないことを示し、rllllllllJで
あればいずれかの処理ユニットが共有情報を使用してい
ることを示す。
 − 次に、ステップ22において、ステップ21でメインメ
モリ5から読み出した排他制御バイトが[000000
00Jでなければ、ステップ27に分岐し、システムバ
ス4のロックを解除し他処理ユニットからのメインメモ
リ5の読み出し及び書き換えを可能とするとともに、ス
テップ21及びステップ22を繰り返す。ステップ21
でメインメモリ5から読み出した排他制御バイトがr 
o o o ’o o o 。
O」であれば、ステップ23以降を実行する。
ステップ23においては、排他制御バイトに「1111
1111」を書き込み、他の処理ユニットからの共有情
報への読み出し及び書き込みを禁止する。ステップ24
においては、システムバス4のロックを解除し、他処理
ユニットからのメインメモリ5の読み出し及び書き換え
を可能とする。
ステップ25においては、共有情報の読み出しまたは書
き換えを行う。この時、他の処理ユニットは、排他制御
バイトにr 1.1.1 ]、 111. I Jが格
納されているので、同時に共有情報の読み出し及び書き
換えを行うことはない。
共有情報に対する読み出しまたは書き換えが終了した後
、ステップ26において、メインメモリ5上の排他制御
バイトをro OOOOO00Jに書き換える。
ここで、メインメモリ5から制御パイ1−を読み出し、
制御バイトを書き換えるまでシステムバスをロックして
いるのは、処理ユニットが制御バイトを読み出してから
書き換えるまでの間に他の処理ユニットが制御バイトを
読み出し、共有情報の使用権が確保可能であると判断し
ないようにするためのものである。システムバス4のロ
ックは、バスアービタ6にバスの使用権を要求し続ける
ことによって実現できる。
以上の処理制御により、排他制御を実現することが可能
となる。
〔発明が解決しようとする課題〕
しかしながら、従来の排他制御方式では、共有情報を他
の処理ユニットが使用してる場合、すなわち、排他制御
バイトの値がr ]、 11 ]、 1111 Jであ
る場合、排他制御バイトがroooooo。
O」になるまでシステムバス4をロックして排他制御バ
イトを読み出す処理が繰り返し行われる問題があった。
第2図に示すようなマルチプロセッサシステムにおいて
は、各処理ユニット1,2.3からメインメモリ5の読
み出し回数が増加すると、システムバス4の使用率が高
くなり、システムバスでの競合により、メインメモリ5
からの読み出しを行う場合の待ち時間が長くなるという
問題があった。
本発明は、前記問題点を解決するためになされたもので
ある。
本発明の目的は、共有情報が他の処理ユニットにより書
き換えられている場合に、他の処理ユニットの1Fき換
えが終了したか否かを知るために発生するメインメモリ
へのアクセス回数を減少させ、システムバスの使用率を
減少させることができる技術を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本
明細J)の記述及び添付図面によって明らかになるであ
ろう。
〔課題を解決するための手段〕
前記目的を達成するために、本発明は、プロセッサ及び
バスコントローラからなる複数台の処理ユニットとメイ
ンメモリとをシステムバスで接続された情報処理装置に
おいて、前記メインメモリには、各処理ユニットのプロ
セッサが共有して使用する共有情報を格納し、前記共有
情報を管理するために、前記メインメモリの予め定めら
れた番地に排他制御バイトと呼ばれる情報を格納し、前
記バスコントローラは、排他制御バイト比較部及び排他
制御バイト書き換え監視部を有し、前記処理ユニットの
プロセッサは共有情報を使用する場合、自処理ユニット
内のバスコントローラに対して、メインメモリの排他制
御バイトの読み出しを指示し、バスコントローラは、前
記システムバスを介してメインメモリから排他制御バイ
トを読み出し、耐記排他制御バイト比較部にお)Nで、
メインメモリから読み出した排他制御バイトの値が予め
定められた値と判定された場合、排他制御バイトをプロ
セッサに転送し、排他制御/<イ1〜の値が予め定めら
れた値でない場合、排他制御バイトをプロセッサに転送
せず、前記制御バイト書き換え監視部において、他の処
理ユニットがメインメモリの排他制御バイトを書き換え
たか否かを監視し、排他制御バイトが書き換えられた時
、排他制御バイトを読み出し、排他制御バイトの値が予
め定められた値であるか否かの判定を繰り返す手段を備
えたことを最も主要な特徴とする。
また、バスコントローラ内に排他制御バイト比較レジス
タを設け、メインメモリから読み出した排他制御バイト
の値と前記排他制御バイト比較レジスタに格納されてい
る値との比較結果を排他制御バイト比較部の判定結果と
し、前記排他制御バイト比較レジスタに格納する値をプ
ロセッサにより指定可能とする手段を備えたことを特徴
とする。
〔作用〕
前述の手段によれば、いずれかの処理ユニットが共有情
報を使用している場合、他の処理ユニツ1−が共有情報
の使用権を獲得するために、システムバスをロックして
メインメモリから排他制御バ9 イトの読み出しを行う回数を減少させることが可能とな
り、システムバスの使用率を低減し、各処理ユニットが
メインメ干りを読み出しまたはイトき換える場合に、シ
ステムバスで生じる競合を減少させることができる。
また、共有情報を使用するために、従来の排他制御方法
(第3図に示す方法)をそのまま用いることができるの
で、システムバスへのアクセス回数を減少させるために
、特にプログラムを変更する必要がない。
〔実施例〕
第1図は1本発明の情報処理装置における排他制御処理
装置の一実施例の概略構成を示すブロック図である。
第1図において、1.2.3は処理ユニット、4はシス
テムバス、5はメインメモリ、6はバスアービタ、10
.20.30はプロセッサ、11.21.31はバスコ
ントローラ、12.22.32は排他制御バイト判定回
路、13.23.33はJ1他制御バイト書き換え監視
回路である。41は読み出し/書き換え制御0− バス、42はアドレスバス、43はデータバス、44は
転送応答バスである。
プロセッサ10が共有情報を使用する場合、共有情報の
排他制御バイトが格納されているメインメモリ5のアド
レスaへのアクセスは以下のように行われる。
プロセッサ10は、信号線100を介して排他制御バイ
トへのアクセスであることをバスコントローラ11に通
知するとともに、信号線101を介して読み出しである
ことを通知し、信号線102を介してアドレスaを通知
する。バスコントローラ11は、信号線105を介して
システムバス4の使用要求をバスアービタ6、に知らせ
る。パスアービタ6は、予め定められた手続に従い1つ
のバスコントローラにのみシステムバス4の使用許可を
与える。信号線106を介してシステムバス4の使用許
可がバスコントローラ11に与えられた時、読み出し/
書き換え制御バス41に読み出しを指示する信号を出力
し、アドレスバス42上にアドレスaを出力する。
メインメモリ5は、読み出し/書き換え制御バ1 ス41上に出力されている読み出し指示信号により、読
み出しが要求されていることを知り、アドレスバス42
から入力したアドレスaの内容すなわち排他制御バイト
を読み出す。
メインメモリ5は、データバス43」二に読み出した排
他制御バイトを出力するとともに、転送を開始すること
をデータ転送応答バス44を介して処理ユニット1のバ
スコントローラ11に通知する。
バスコントローラ11は、データ転送応答バス44を介
して要求した排他制御バイ1へがデータバス43上に出
力されたことを知り、データバス43上に出力されてい
る排他制御バイトを114他制御バイト判定回路12に
入力し、入力された排他制御バイトの値がrooooo
ooOJであるか否かを判定する。
排他制御バイトの値がroooooooOJであれば、
データバス43から入力した排他制御バイトを信号線1
03を介してプロセッサ10に入力するとともに、信号
線104を介して要求されたデータの転送が完了したこ
とをプロセッサ10に知らせる。
排他制御バイトの値がro OOOOOOOJでなけれ
ば、信号線105を介してシステムバス4の使用が終了
したことをパスアービタ6に知らせる。
パスアービタ6は、信号llA105を介して処理ユニ
ット1がシステムバス4の使用を終了したことを知り、
他の処理ユニットがシステムバス4の使用を要求してい
れば、予め定められた手続に従いシステムバス4の使用
許可を与える。バスコントローラ11は、アドレスバス
42及び読み出し/書き換え制御バス41を114他制
御バイト書き換え監視回路13に入力し、他の処理ユニ
ットがメインメモリ5のアドレスaの内容を書き換える
ことを監視する。
他の処理ユニットが排他制御バイトを書き換えた時、パ
スアービタ6にシステムバス4の使用を要求し、メイン
メモリ5から排他制御バイトを読み出し、排他制御バイ
トの値がroooooo。
O」であるか否かの判定を行う。排他制御バイトの値が
ro OOOOOOOJであれば、データバス43から
入力した排他制御バイトを信号線103を介してプロセ
ッサ10に入力するとともに、信号線104を介して排
他制御バイトの転送が終了したことをプロセッサ10に
知らせる。排他制御バイトの値がroooooooOJ
 でなければ、パスアービタ6にシステムバス4の使用
の終了を通知し、他の処理ユニットがメインメモリ5の
排他制御バイトの書き換えを行ったか否かの監視を続け
る。
プロセッサ10は、信号線103を介してプロセッサ1
0に入力された排他制御バイトの値がroo。
oooo○」であるので、信号線100を変化させるこ
となく、排他制御バイトの書き換えを以下のように行う
プロセッサ10は、信号線101を介してバスコントロ
ーラ11に書き換えを通知し、信号線102を介してア
ドレスaを出力し、信号線103に「1111 ]、 
111 J を出力する。バスコントローラ11は、読
み出し/書き換え制御バス41に書き換えを指示する信
号を出力し、アドレスバス42上にアドレスaを出力し
、データバス43を書き換えるデータを出力する。
メインメモリ5は、読み出し/書き換え制御バス41上
に出力されている書き換え指示信号により、データの書
き換えが要求されていることを知り、アドレスバス42
から入力したアドレスaの排他制御バイトの内容をデー
タバス43から入力した値に書き換える。
メインメモリ5は、排他制御バイトの書き換えが完了し
たことをデータ転送応答バス44を介して処理ユニット
1のバスコントローラ11に通知する。
バスコントローラ11は、データ転送応答バス44を介
して排他制御バイトが書き換えられたことを知り、信号
線104を介して排他制御バイトの書き換えが完了した
ことをプロセッサ101こ通知するとともに、信号線!
05を介してシステムバス4の使用が終了したことをバ
スアービタ6に知らせる。
パスアービタ6は、信号線105を介して処理ユニット
1がシステムバス4の使用を終了したことを知り、他の
処理ユニットがシステムバス4の使用を要求していれば
、予め定められた手続きに従い、システムバス4の使用
許可を与える。
また、排他制御バイト判定回路12による判定は、5 メインメモリ5から読み出した排他制御バイトの内容が
rooooooooJ  (r空き」)であるか否かに
より行われるが、バスコントローラ11内にプロセッサ
10から書き換え可能な排他制御バイト比較レジスタを
設け、排他制御バイト判定回路12はメインメモリ5か
ら読み出した排他制御バイトの内容と排他制御バイト比
較レジスタの内容との比較結果により共有情報が「空き
」であるか否かの判定を行うようにしてもよい。
以上述べたように、本実施例によれば、排他制御バイト
の値がro OOOOOOOJでない場合、他の処理ユ
ニットによって、排他制御バイトが書き換えられるまで
、排他制御バイトを再度メインメモリから読み出す処理
を行わず、システムバスをロックしてメインメモリ5か
ら排他制御バイトを繰り返し読み出す回数は減少する。
また、排他制御バイトと比較する値をプロセッサから変
更可能とすることから、排他制御バイトの内容が示す意
味が異なる場合(例えば「11111111Jが「空き
」を意味し、roooo。
000Jが「使用中」を意味する場合)についても、排
他制御バイト比較レジスタの内容を書き換えることで、
本装置を用いることにより、排他制御を行うことが可能
となる。
以上、本発明を実施例にもとづき具体的に説明したが、
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
〔発明の効果〕
以上、説明したように、本発明によれば、いずれかの処
理ユニットが共有情報を使用している場合、他の処理ユ
ニットが共有情報の使用権を獲得するために、システム
バスをロックしてメインメモリから排他制御バイトの読
み出しを行う回数を減少させることが可能となり、シス
テムバスの使用率を低減し、各処理ユニットがメインメ
モリを読み出しまたは書き換える場合に、システムバス
で生じる競合を減少させることができる。
また、共有情報を使用するために、従来の排他制御方法
をそのまま用いることができるので、システムバスへの
アクセス回数を減少させるために特にプログラムを変更
する必要がないという利点もある。
【図面の簡単な説明】
第]−図は、本発明の情報処理装置における排他制御処
理装置の一実施例の概略構成を示すブロック図、 第2図は、マルチプロセッサシステムの概略構成を説明
するためのブロック図、 第3図は、従来の排他制御方式を説明するためのフロー
チャートである。 図中、1,2.3・・・処理ユニット、4・・・システ
ムバス、5・・・メインメモリ、6・・・パスアービタ
、10、20.30・・・プロセッサ、11.21.3
1・・・バスコントローラ、12.22.32・・・排
他制御バイト判定回路、13、23.33・・・排他制
御バイト書き換え監視回路。

Claims (2)

    【特許請求の範囲】
  1. (1)プロセッサ及びバスコントローラからなる複数台
    の処理ユニットとメインメモリとをシステムバスで接続
    された情報処理装置において、前記メインメモリには、
    各処理ユニットのプロセッサが共有して使用する共有情
    報を格納し、前記共有情報を管理するために、前記メイ
    ンメモリの予め定められた番地に排他制御バイトと呼ば
    れる情報を格納し、前記バスコントローラは、排他制御
    バイト比較部及び排他制御バイト書き換え監視部を有し
    、前記処理ユニットのプロセッサは共有情報を使用する
    場合、自処理ユニット内のバスコントローラに対して、
    メインメモリの排他制御バイトの読み出しを指示し、バ
    スコントローラは、前記システムバスを介してメインメ
    モリから排他制御バイトを読み出し、前記排他制御バイ
    ト比較部において、メインメモリから読み出した排他制
    御バイトの値が予め定められた値と判定された場合、排
    他制御バイトをプロセッサに転送し、排他制御バイトの
    値が予め定められた値でない場合、排他制御バイトをプ
    ロセッサに転送せず、前記制御バイト書き換え監視部に
    おいて、他の処理ユニットがメインメモリの排他制御バ
    イトを書き換えたか否かを監視し、排他制御バイトが書
    き換えられた時、排他制御バイトを読み出し、排他制御
    バイトの値が予め定められた値であるか否かの判定を繰
    り返す手段を備えたことを特徴とする情報処理装置にお
    ける排他制御装置。
  2. (2)前記請求項(1)に記載の情報処理装置における
    排他制御装置において、バスコントローラ内に排他制御
    バイト比較レジスタを設け、メインメモリから読み出し
    た排他制御バイトの値と前記排他制御バイト比較レジス
    タに格納されている値との比較結果を排他制御バイト比
    較部の判定結果とし、前記排他制御バイト比較レジスタ
    に格納する値をプロセッサにより指定可能とする手段を
    備えたことを特徴とする情報処理装置における排他制御
    装置。
JP30592589A 1989-11-24 1989-11-24 情報処理装置における排他制御処理装置 Pending JPH03164964A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30592589A JPH03164964A (ja) 1989-11-24 1989-11-24 情報処理装置における排他制御処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30592589A JPH03164964A (ja) 1989-11-24 1989-11-24 情報処理装置における排他制御処理装置

Publications (1)

Publication Number Publication Date
JPH03164964A true JPH03164964A (ja) 1991-07-16

Family

ID=17950952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30592589A Pending JPH03164964A (ja) 1989-11-24 1989-11-24 情報処理装置における排他制御処理装置

Country Status (1)

Country Link
JP (1) JPH03164964A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278607A (ja) * 2001-03-21 2002-09-27 Toyo Commun Equip Co Ltd 異周期シーケンサの排他制御回路
US6723941B2 (en) 2001-11-29 2004-04-20 Mitsubishi Denki Kabushiki Kaisha Wire electric-discharge machining apparatus
EP1662389A2 (en) 2004-11-29 2006-05-31 Fujitsu Limited Multithread controller and control method
JP2007517326A (ja) * 2003-12-31 2007-06-28 インテル・コーポレーション マルチスレッドアーキテクチャを用いた視覚および図形データの処理
US7853756B2 (en) 2004-04-30 2010-12-14 Fujitsu Limited Information processing device, processor, processor control method, information processing device control method and cache memory

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278607A (ja) * 2001-03-21 2002-09-27 Toyo Commun Equip Co Ltd 異周期シーケンサの排他制御回路
JP4547821B2 (ja) * 2001-03-21 2010-09-22 ネッツエスアイ東洋株式会社 異周期シーケンサの排他制御回路
US6723941B2 (en) 2001-11-29 2004-04-20 Mitsubishi Denki Kabushiki Kaisha Wire electric-discharge machining apparatus
JP2007517326A (ja) * 2003-12-31 2007-06-28 インテル・コーポレーション マルチスレッドアーキテクチャを用いた視覚および図形データの処理
US7853756B2 (en) 2004-04-30 2010-12-14 Fujitsu Limited Information processing device, processor, processor control method, information processing device control method and cache memory
EP1662389A2 (en) 2004-11-29 2006-05-31 Fujitsu Limited Multithread controller and control method
US7437519B2 (en) 2004-11-29 2008-10-14 Fujitsu Limited Multithread controller and control method

Similar Documents

Publication Publication Date Title
US4665484A (en) Shared memory multiprocessing system & method
EP0867814B1 (en) System and method for controlling a bus
JPS5812611B2 (ja) デ−タテンソウセイギヨホウシキ
JPH06161952A (ja) アクセス要求仲裁装置
JP2000047974A (ja) バス制御コントローラのバス調停方法、バス制御コントローラ及び電子機器のシステム
JPH03164964A (ja) 情報処理装置における排他制御処理装置
US7099974B2 (en) Method, apparatus, and system for reducing resource contention in multiprocessor systems
JP2000003302A (ja) 共有メモリ排他アクセス制御方法
JP3381079B2 (ja) キャッシュメモリを用いた排他制御システム
JPS58169659A (ja) 共用ロツク制御方式
JP2504818B2 (ja) マルチプロセッサ装置における共通メモリ制御方法
JPH04140860A (ja) マルチプロセッサにおけるバス制御方法
JPH0355657A (ja) マルチタスク・マルチプロセッサシステムにおける共有メモリアクセス方式
JP3371978B2 (ja) 情報処理装置
JP3353368B2 (ja) バス中継装置
JPH04163658A (ja) システムバス制御方法
JPS5839343B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
JPH09160868A (ja) バス調停装置およびバス調停方法
JP3206013B2 (ja) ダイレクト・メモリ・アクセス転送制御装置
JP2837893B2 (ja) マイクロコンピュータ装置
JP2000040060A (ja) マルチバスマスタ制御方法および装置
JPH03164963A (ja) 情報処理装置における排他制御方式
JPH06266610A (ja) 処理の中断が可能な排他制御方式
JPH03271859A (ja) 情報処理装置
JPS6324442A (ja) デ−タベ−ス排他制御方式