JPS59223873A - マルチプロセツサの制御方法 - Google Patents
マルチプロセツサの制御方法Info
- Publication number
- JPS59223873A JPS59223873A JP9579583A JP9579583A JPS59223873A JP S59223873 A JPS59223873 A JP S59223873A JP 9579583 A JP9579583 A JP 9579583A JP 9579583 A JP9579583 A JP 9579583A JP S59223873 A JPS59223873 A JP S59223873A
- Authority
- JP
- Japan
- Prior art keywords
- lock
- instruction
- processor
- cpu
- processors
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
に結合されたマルチプロセッサの制御方法にかかり、特
にTS命令を有しない4M aのプロセッサが共有の記
憶装置を競合してアクセスするのを防止するロック方法
に関するものである。
にTS命令を有しない4M aのプロセッサが共有の記
憶装置を競合してアクセスするのを防止するロック方法
に関するものである。
し発明の技術的背景とその問題点〕
複数のプログラマブルコントローラ(以下プロセッサと
呼ぶ)が共有の記憶装置で結合されたマルチプロセッサ
システムの一例を第1図に示す。
呼ぶ)が共有の記憶装置で結合されたマルチプロセッサ
システムの一例を第1図に示す。
第1図は2組のプロセッサPaC−A、 PSC−B
を結合したもので、中央演算処理装置CPU−A、
CPU−BはそれぞれシステムバスBus−A 、 B
US−Bを介してそれぞれのプログラム記憶装置PM−
A 、 PM−81デ一タ記憶装置DM−A、DM−B
および入出力装置l10−A。
を結合したもので、中央演算処理装置CPU−A、
CPU−BはそれぞれシステムバスBus−A 、 B
US−Bを介してそれぞれのプログラム記憶装置PM−
A 、 PM−81デ一タ記憶装置DM−A、DM−B
および入出力装置l10−A。
I/1)−Bに結合され、さらに共用記憶装置制御回路
CMCCを介して共有記憶装置CMに結合されている。
CMCCを介して共有記憶装置CMに結合されている。
またCPU−A 、CPU−Bからそれぞれロック信号
LOCKA 、LOCKBが上記CMCCに入力されて
いる。
LOCKA 、LOCKBが上記CMCCに入力されて
いる。
上記第1図の構成において、CPU−A 、CPU−B
と共有記憶装置CMとの間のデータの読出しおよび書込
みの処理は直列に行なわれる。
と共有記憶装置CMとの間のデータの読出しおよび書込
みの処理は直列に行なわれる。
従ってCPU−Aの一連のアクセスが終了しないうちに
、CPU−Bのアクセスが開始されると、例えば第2図
に示すように、CPU−Aの演算結果がCMに書込まれ
る時点113 より前の時点112 でCPU−BがC
Mのデータを読出し、従ってCPU−Aの演算結果がC
I)U−Bの演算において無視されるという不都合を生
ずる。
、CPU−Bのアクセスが開始されると、例えば第2図
に示すように、CPU−Aの演算結果がCMに書込まれ
る時点113 より前の時点112 でCPU−BがC
Mのデータを読出し、従ってCPU−Aの演算結果がC
I)U−Bの演算において無視されるという不都合を生
ずる。
上記の不都合を防止するために、従来からTS(TIT
AND 8BT )命令が用いられている。
AND 8BT )命令が用いられている。
すなわちCM内に1つのCPUがCMをアクセス中であ
るというフラグとしてロックバイトを用意し、ロックバ
イトが1であれば他のCPUからのCMのアクセスを禁
止し、ロックバイトが0であればこれをR’を可するも
ので、第3図に示すように(1)μツク信号をセット、
(2)ロックバイトを読出す、(3)ロックバイトに1
を書込む、(4)ロック信号をリセット、の4つのステ
ップから構成されている。
るというフラグとしてロックバイトを用意し、ロックバ
イトが1であれば他のCPUからのCMのアクセスを禁
止し、ロックバイトが0であればこれをR’を可するも
ので、第3図に示すように(1)μツク信号をセット、
(2)ロックバイトを読出す、(3)ロックバイトに1
を書込む、(4)ロック信号をリセット、の4つのステ
ップから構成されている。
第1図においてLOCKA 、 LOCK13がロック
信号であり、TS命令を用いることによって第4図に示
すようなロック動作が行なわれる。
信号であり、TS命令を用いることによって第4図に示
すようなロック動作が行なわれる。
第4図において、CMのロックバイトがOのとき、時点
t41 でCP[J−AがTS命令を実行すると、TS
命令のステップ(2)で読出したロックバイトは0とな
り、これによってCPU−AはCMのアクセスを許可さ
れ、データを読出して演算を行ない、時点144で演算
結果をCMに書込む。
t41 でCP[J−AがTS命令を実行すると、TS
命令のステップ(2)で読出したロックバイトは0とな
り、これによってCPU−AはCMのアクセスを許可さ
れ、データを読出して演算を行ない、時点144で演算
結果をCMに書込む。
、 一方項記TS命令のステップ(2)の直後にステッ
プ(3)としてロックバイトは強制的に1に観:きかえ
られ、従って時点t41以降はCMのロックバイトは1
になっている。
プ(3)としてロックバイトは強制的に1に観:きかえ
られ、従って時点t41以降はCMのロックバイトは1
になっている。
このためCPU−Bが例えば時点143でTS命令を実
行しても、読出したロックバイト=1であり、従ってC
Mのアクセスは禁止され、CPU−Bはウェイトの状態
となる。
行しても、読出したロックバイト=1であり、従ってC
Mのアクセスは禁止され、CPU−Bはウェイトの状態
となる。
CPU−Aは演算結果の書込みが終ると時点t411で
ロックバイトにOを書込む。
ロックバイトにOを書込む。
これによってCMのロックバイト=0となるので、この
状態で例えばCPU−8が時点t46でT8命令を実行
すると読出されたロックバイト二〇となり、CPU−B
はCMのアクセスが許可されて演算を開始する。
状態で例えばCPU−8が時点t46でT8命令を実行
すると読出されたロックバイト二〇となり、CPU−B
はCMのアクセスが許可されて演算を開始する。
以上の動作によって、 CPU−AとCPU−8は互に
競合してCMをアクセスすることがないので、第2図の
ような不都合は生じない。
競合してCMをアクセスすることがないので、第2図の
ような不都合は生じない。
しかしながら最近は1チップマイクロプロセッサ−tど
フ゛r−ムウエアにTS命令をもたないプロセッサをマ
ルチプロセッサに用いることが行なわれており、TS命
令を用いないロック動作が要求されて来゛Cいる。
フ゛r−ムウエアにTS命令をもたないプロセッサをマ
ルチプロセッサに用いることが行なわれており、TS命
令を用いないロック動作が要求されて来゛Cいる。
し発明の目的〕
本発明は、T8命令またはこれに相当する命令をもたな
いプロセッサに簡単なハードウェアを追加することにL
つでTS命令と同様なロック機能をもたせるマルチプロ
セッサの制御方法を提供することを目的としている。
いプロセッサに簡単なハードウェアを追加することにL
つでTS命令と同様なロック機能をもたせるマルチプロ
セッサの制御方法を提供することを目的としている。
本発明は、複数台のプロセッサか共有の記憶装置に結合
されたマルチプロセッザシステムにおいて、各プロセッ
サにロック信号発生用のフリップフロップを設け、これ
によって共イ1記憶装置のロックバイトの読出しおよび
書込みを行なって1台のプロセッサからの一連のアクセ
スが終了するまで他のプロセッサからのアクセスを禁止
し、これによって各プロセッサがTS命令またはこれに
相当する命令を持たない場合でも、TS命令と同等のロ
ック機能をあたえるマルチプロセッサの制御方法である
。
されたマルチプロセッザシステムにおいて、各プロセッ
サにロック信号発生用のフリップフロップを設け、これ
によって共イ1記憶装置のロックバイトの読出しおよび
書込みを行なって1台のプロセッサからの一連のアクセ
スが終了するまで他のプロセッサからのアクセスを禁止
し、これによって各プロセッサがTS命令またはこれに
相当する命令を持たない場合でも、TS命令と同等のロ
ック機能をあたえるマルチプロセッサの制御方法である
。
さらにプロセッサが2台のときは、共有記憶装置に2組
のロックバイトを設けると共にフリップフロップを片方
のプロセッサのみに設りて同様の制御を行なうことが可
能である。
のロックバイトを設けると共にフリップフロップを片方
のプロセッサのみに設りて同様の制御を行なうことが可
能である。
本発明の一実施例を第5図に示す。
第5図におイテ、CPU−A 、 CPU−B ハT
S 命令f’I’:’iつ”でおらず、その代りにそれ
ぞれにCPU−A 。
S 命令f’I’:’iつ”でおらず、その代りにそれ
ぞれにCPU−A 。
CPU−Bから自1+にセラl−、リセットできるロッ
ク信刊閤生用フリップフロップψ−A 、 F/F−8
が追加されており、他は第1図と同じである。
ク信刊閤生用フリップフロップψ−A 、 F/F−8
が追加されており、他は第1図と同じである。
F/F−ノL 、 F71t’−B耐用いたロック動作
はユーザプロクラムのレベルで行なわれる。
はユーザプロクラムのレベルで行なわれる。
そのプログラムシーケンスは第6図に示すように(11
p/F=セット、(2)ロックバイトを読出す、(3)
ロックバイトに1を書込む、(4) li’/Fをリセ
ット、の4一つのf:iT令から411Y成されCいる
。
p/F=セット、(2)ロックバイトを読出す、(3)
ロックバイトに1を書込む、(4) li’/Fをリセ
ット、の4一つのf:iT令から411Y成されCいる
。
j;iT 5図におけるロック信+fLOC心、 、
LOCKBはそれぞしF/I!’−A 、 )l’/F
−Hのセット、リセットによってオンオフされるので、
上記4つの命令によって第3図に示す′rS命令と同等
の処理が可能となる。
LOCKBはそれぞしF/I!’−A 、 )l’/F
−Hのセット、リセットによってオンオフされるので、
上記4つの命令によって第3図に示す′rS命令と同等
の処理が可能となる。
次に本発明の他の実施例を第7図に示す。
第7図はプロセッサが2台の場合に適用されるもので、
CPU−B9111のみにフリップフロップF/F −
Bが設けられ、ロック信号はLOCKBのみであり、他
は第5図と同じである。
CPU−B9111のみにフリップフロップF/F −
Bが設けられ、ロック信号はLOCKBのみであり、他
は第5図と同じである。
第7図において、CPIU−AとCPU−Bの間でロッ
ク動作を行なわせるには、CMにロックバイl−Aとロ
ックバイトBを別々に設け、CPU−A側は第8図に示
すようなロック要求シーケンスを、CPU−B 911
は第9図に示すよりなf四ツ2判定シーケンスを走らせ
ればよい。
ク動作を行なわせるには、CMにロックバイl−Aとロ
ックバイトBを別々に設け、CPU−A側は第8図に示
すようなロック要求シーケンスを、CPU−B 911
は第9図に示すよりなf四ツ2判定シーケンスを走らせ
ればよい。
すなわちCPU−Aは第8図に示すように、(1)無条
件にロックバイトA (CPU−Bに対するロックバイ
ト)に1を書込み、(2)ロックバイトB (CPU−
Aに対するロックバイト)を読出し、(3)ロックバイ
トBがOならCPU−Aにてロックしたことを表し、(
4)その値が1ならCPU−Bにてロック中のためロッ
クバイトA lc Oを書込む。
件にロックバイトA (CPU−Bに対するロックバイ
ト)に1を書込み、(2)ロックバイトB (CPU−
Aに対するロックバイト)を読出し、(3)ロックバイ
トBがOならCPU−Aにてロックしたことを表し、(
4)その値が1ならCPU−Bにてロック中のためロッ
クバイトA lc Oを書込む。
一方〇PU−Bは第9図1こ示ずように、(1) F/
F−Bをセット(ロック信号LOCKBをセット)L、
(2)ロックバイトAを読出し、(3)その値がOなら
ロックバイトBに1を書込みCPU−Bにてロックした
ことを表し、(4)その値が1ならCPU−Aにてロッ
ク中のだめ何もせず、(5)その値に関係なくFβ−B
をリセッ 1ト(ロック信号LOCKBをリセ
ット)する。
F−Bをセット(ロック信号LOCKBをセット)L、
(2)ロックバイトAを読出し、(3)その値がOなら
ロックバイトBに1を書込みCPU−Bにてロックした
ことを表し、(4)その値が1ならCPU−Aにてロッ
ク中のだめ何もせず、(5)その値に関係なくFβ−B
をリセッ 1ト(ロック信号LOCKBをリセ
ット)する。
なお、この場合は、第3図または第6図の場合と異、な
り、 CPU−Aがロックバイトをアクセスしている途
中にいつでもCPU−Hによりロックバイトをアクセス
できるが、この点はソフトウェアで補っており、全く問
題なく処理することができる。
り、 CPU−Aがロックバイトをアクセスしている途
中にいつでもCPU−Hによりロックバイトをアクセス
できるが、この点はソフトウェアで補っており、全く問
題なく処理することができる。
[発明の効果]
以上説明したように、本発明によれば、TS命令または
これに相当する命令を持たない複数のプロセッサ茫共有
の記憶装置に結合したマルチプロセッサシステムに対し
て、簡単なハードウェアの追加とソフトウェアの変更と
によって、共有の記憶装置を同時にアクセスしないよう
に相互にロックする合理的なマルチプロセッサの制御方
法が得られる。
これに相当する命令を持たない複数のプロセッサ茫共有
の記憶装置に結合したマルチプロセッサシステムに対し
て、簡単なハードウェアの追加とソフトウェアの変更と
によって、共有の記憶装置を同時にアクセスしないよう
に相互にロックする合理的なマルチプロセッサの制御方
法が得られる。
第1図は従来のマルチプロセッサシステムの一例を示す
系統図、第2図はロック動作の必要性を説明するための
時系列フローチャート、第3図は第1図で用いられるT
8命令のフローチャート、8114図はTS命令を含む
マルチプロセッサの動作を示す時系列フローチャート、
第5図は本発明の一実施例を示す系統図、第6図は第5
図で用いられるψロックシーケンスを示すフローチャー
ト、第7図は本発明の他の実施例を示す系統図、第8図
は第7図におけるCPU−A用のロック要求シーケンス
を示すフローチャート、第9図は第7図におけるCPU
−BのF7’Fロック判定シーケンスを示すフローチャ
ートである。 PSC−A、PSC−B プロセッサCPU−A、C
PU−B 中央演算処理装置PM−A 、 PM−B
プログラム記憶装置DM−A 、 DM−B デ
ータ記憶装置l10−A、i、10−B 入出力装置
BUS−A、BUS−B システムバスCM
共有記憶装置 CMCCCM制御回路 Fβ−A、F、/F−B フリップフロップ(873
3) 代理人 弁理士 猪 股 祥 晃 (はが1名
)第2図 り 第 3 図 第 4 図
系統図、第2図はロック動作の必要性を説明するための
時系列フローチャート、第3図は第1図で用いられるT
8命令のフローチャート、8114図はTS命令を含む
マルチプロセッサの動作を示す時系列フローチャート、
第5図は本発明の一実施例を示す系統図、第6図は第5
図で用いられるψロックシーケンスを示すフローチャー
ト、第7図は本発明の他の実施例を示す系統図、第8図
は第7図におけるCPU−A用のロック要求シーケンス
を示すフローチャート、第9図は第7図におけるCPU
−BのF7’Fロック判定シーケンスを示すフローチャ
ートである。 PSC−A、PSC−B プロセッサCPU−A、C
PU−B 中央演算処理装置PM−A 、 PM−B
プログラム記憶装置DM−A 、 DM−B デ
ータ記憶装置l10−A、i、10−B 入出力装置
BUS−A、BUS−B システムバスCM
共有記憶装置 CMCCCM制御回路 Fβ−A、F、/F−B フリップフロップ(873
3) 代理人 弁理士 猪 股 祥 晃 (はが1名
)第2図 り 第 3 図 第 4 図
Claims (2)
- (1)複数台のプロセッサが共有記憶装置に結合された
マルチプロセッサシステムにおいて、各プロセッサにき
れそれのロック信号を発生するフリップ70ツブを設け
、上記各ロック信号によって共イ]?1ピ七〇装置のロ
ックバイトの読出しおよび書込みを行なって共有記憶装
置を各プロセッサが競合してアクセスしないように相互
にロックすることをqテ徴とするマルチプロセッサの制
御方法。 - (2)2台のプロセッサが共有記憶装置に結合されたマ
ルチプロセッサシステムにおいて、上記共イ1記1’、
τj装置にそれぞれのプロセッサに対応する2K・1[
のロックバイトを設けると共lこ片方のプロセツ°シー
にロック信号発生用のフリップフロップをiff、上記
2組のロックバイトと片方のプロセッサからのロック化
(3とによって両方のプロセッサが共有記伝装M’&競
合してアクセスしないように相互にロックすることを特
徴とするマルチプロセッサの制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58095795A JPH0679306B2 (ja) | 1983-06-01 | 1983-06-01 | マルチプロセツサの制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58095795A JPH0679306B2 (ja) | 1983-06-01 | 1983-06-01 | マルチプロセツサの制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS59223873A true JPS59223873A (ja) | 1984-12-15 |
| JPH0679306B2 JPH0679306B2 (ja) | 1994-10-05 |
Family
ID=14147376
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58095795A Expired - Lifetime JPH0679306B2 (ja) | 1983-06-01 | 1983-06-01 | マルチプロセツサの制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0679306B2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6320653A (ja) * | 1986-07-15 | 1988-01-28 | Sekisui Chem Co Ltd | マルチプロセツサシステムのメモリアクセス方法 |
| JPH06314232A (ja) * | 1993-05-06 | 1994-11-08 | Mitsubishi Electric Corp | メモリ切替制御回路 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS51131232A (en) * | 1975-05-12 | 1976-11-15 | Toshiba Corp | Computer composit system |
-
1983
- 1983-06-01 JP JP58095795A patent/JPH0679306B2/ja not_active Expired - Lifetime
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS51131232A (en) * | 1975-05-12 | 1976-11-15 | Toshiba Corp | Computer composit system |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6320653A (ja) * | 1986-07-15 | 1988-01-28 | Sekisui Chem Co Ltd | マルチプロセツサシステムのメモリアクセス方法 |
| JPH06314232A (ja) * | 1993-05-06 | 1994-11-08 | Mitsubishi Electric Corp | メモリ切替制御回路 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0679306B2 (ja) | 1994-10-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4270167A (en) | Apparatus and method for cooperative and concurrent coprocessing of digital information | |
| JP2830116B2 (ja) | マルチプロセッサシステムにおけるロック制御機構 | |
| JPS6112586B2 (ja) | ||
| EP0242879A2 (en) | Data processor with wait control allowing high speed access | |
| JP2507071B2 (ja) | バスロック制御方式 | |
| JPH0679306B2 (ja) | マルチプロセツサの制御方法 | |
| JP2906197B2 (ja) | 二重化バス装置 | |
| JP2569534B2 (ja) | マイクロコンピユ−タ | |
| JP2008511890A (ja) | アトミック・オペレーションを用いて情報単位を変更する方法及び装置 | |
| JP3019323B2 (ja) | イメージメモリのダイレクトアクセス方法 | |
| JPS58101357A (ja) | 共有メモリの制御回路 | |
| JPS6162158A (ja) | デ−タ授受システム | |
| JP2581753B2 (ja) | 自己診断方法 | |
| JPS63298555A (ja) | 共有メモリ制御方式 | |
| JPH01310466A (ja) | マルチプロセッサシステム | |
| JP2503287B2 (ja) | 生存確認機能を持つ複合計算機 | |
| JP2539064B2 (ja) | マイクロプロセッサ | |
| JPS61234447A (ja) | バス獲得制御装置 | |
| JPH0374759A (ja) | マルチプロセッサシステム | |
| JPH04355865A (ja) | バスロック制御装置 | |
| JPH0581211A (ja) | プロセツサ間通信方式 | |
| JPH0217563A (ja) | 共有メモリの初期化方法 | |
| JPS60243763A (ja) | デユアルポ−トメモリ制御回路 | |
| JPS6118223B2 (ja) | ||
| JPS63155351A (ja) | マルチプロセツサシステム |