JPH0368034A - チェックポイント再試行方式 - Google Patents

チェックポイント再試行方式

Info

Publication number
JPH0368034A
JPH0368034A JP1204113A JP20411389A JPH0368034A JP H0368034 A JPH0368034 A JP H0368034A JP 1204113 A JP1204113 A JP 1204113A JP 20411389 A JP20411389 A JP 20411389A JP H0368034 A JPH0368034 A JP H0368034A
Authority
JP
Japan
Prior art keywords
instruction
checkpoint
store
address
abbreviated
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
JP1204113A
Other languages
English (en)
Inventor
Satoshi Kobayashi
智 小林
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP1204113A priority Critical patent/JPH0368034A/ja
Publication of JPH0368034A publication Critical patent/JPH0368034A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Retry When Errors Occur (AREA)
  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、多重プロセッサシステムにおけるチェック
ポイント再試行方式に関するものである。
[従来の技術] 第4図に多重プロセッサシステムの一構成例を示す。図
中、(1)及び(2)は同一ハードウェア構r戊から成
るプロセッサPO及びPlであり、システムバス4を介
して互いに交信する。(3)は主記憶装置(MSと略す
)であり、プロセッサP O(1)及びプロセッサP 
112+の処理結果を格納する。
第5図に上記プロセッサP O(11の構成要素の主要
部分を示す。図中、(5)はM S +31からフェッ
チした命令を格納する命令レジスタ(IRと略す)、(
6)はIR(51の出力をデコードした結果から求まる
オペランドのアドレス変換を行うアドレス変換バッファ
(TLBと酩す) 、(7)はT L B (6)の変
換結果からM S (3)の内容の写しを取り出すため
のキャッシュ(CACと略す) 、+81はCA C+
71の出力を処理する実行部(EX、Uと略す) 、 
(9)は汎用レジスタ等のワークレジスタを構成するロ
ーカルストレージ(LSと略す) 、(10)はL S
 (91の変更前の値をセーブするローカルストレーシ
バソファ(LSBと略す) 、(11)はCA C(7
1の変更前の値をセーブするキャッシュバッファ(CA
CBと略す) 、(]、、2)はM S (3+から順
次命令をフェッチするアドレスを保持する命令カウンタ
(ICと略す) 、(13)はチェックポイント確立の
度にIC(12)の値をセーブする命令カウンタバッフ
ァ(ICBと略す) 、 (19)はE X U +8
1からのストア実行時、ストアオペランドの内容を次の
チェックポイント確立までロックするためのロックアレ
ー(LKと略す) 、 (20)はE X U (81
からのチェックポイント確立リクエスト信号線(CKP
T線と略す)である。
次に動作について説明する。命令は、IC(12)で示
されるM S +31のアドレスからIR[5)にフェ
ッチされ、デコードされる。デコードの結果求まった仮
想オペランドアドレスは、T L B f6+により物
理アドレスに変換される。変換された物理アドレスによ
り、CA C(71からオペランドデータが読み出され
、命令実行のためにE X U (81へ送られるとと
もに、命令実行の結果、当該CA Cf7+のアドレス
にストアが行われる場合には、CACB(11,)へも
送られる。一方、汎用レジスタに格納されているオペラ
ンドはL S (91より読み出されてE X U (
81へ送られるとともに、当該L S +91のアドレ
スにロードが行われる場合には、L S B (1,0
)へも送られる。E X U +81での実行結果は、
CAc +71及びL S (91へ書き込まれる。C
A C(71への書き込みを行う際には、当該書き込み
データを次のチェックポイント確立時点まで他系プロセ
ッサから変更されないようにするため、ストアアドレス
に対応するL K (19)のエントリーにロックをセ
ットする。
このロックの方式は特公昭61−2975号公報に示さ
れている。
本プロセッサは、故障発生時に、直前に確立したチェッ
クポイントまでハードウェアの状態を復元して再試行す
る。チェックポイント再試行の機能を有する。故障が発
生した場合、L S B (10)からL S f9+
の変更内容を復元し、CACB(11)からCA、 C
(71の変更内容を復元し、I CB (13)からI
 C(12)をチェックポイント確立時点の命令アドレ
スに戻すことにより、直前のチェックポイントから再試
行する。
次に、L K (19)の働きについて第6図を用いて
説明する。チェックポイント再試行時には、故障発生以
前に実行されたストア命令が再実行される。このため、
自系プロセッサPOの当該ストアの結果に対し、他系プ
ロセッサPLがストアを実行すると、チェックポイント
再試行の結果、他系プロセッサP1のストア結果が失わ
れることがある。LK(19)は、この問題を避けるた
めに設けられたもので、第6図に示す如く、ストア実行
時にセットされ、チェックポイント確立時にリセットさ
れる。他系プロセッサPLのストアは、LK(19)の
対象エントリーがセットされてる間は待たされ、自系プ
ロセッサPOのチェックポイント確立後に実行されるよ
う制御される。これにより、自系プロセッサPOがスト
ア実行後2次のチェックポイント確立までの間に故障し
、直前のチェックポイントから再試行することにより同
一ストアを再度実行しても他系プロセッサP1のストア
結果は保証される。最初のチェックポイント確立時点か
ら次のチェックポイント確立時点までの間をチェックポ
イントフレームと称する。
次に、チェックポイント確立時の動作を第5図を用いて
説明する。チェックポイント確立時には、先ず、先行す
るストアの処理完了を待つ(同期化と称する)。その後
、E X U (8)からCKPT線(20)を介して
チェックポイント確立要求が送出される。これにより、
LSB(10)及びCACB(11)の内容は無効化さ
れ、L K (19)の内容は全てリセットされ、I 
C(12)の内容がICB(13)にセーブされる。
[発明が解決しようとする課題] 従来のチェックポイント再試行方式では、自系プロセッ
サのチェックポイントフレーム内でのスドア結果に対す
る他系プロセッサのストアを、自系プロセッサでの次の
チェックポイント確立まで待たせる必要があり、そのた
めの検出回路や排他回路が膨大かつ複雑になる問題点が
あった。また、他系プロセッサからのリクエストを待た
せるため、システム性能への悪影響があった。
この発明は上記のような問題点を解消するためになされ
たもので、少ない回路追加で容易に再試行ができる多重
プロセッサシステムを得ることを目的とする。
[課題を解決するための手段] この発明に係るチェックポイント再試行方式は、ストア
リクエストのペンディング数をカウントするカウンタを
備えて、ペンディングしているストアの完了を待たずに
チェックポイントを確立する非同期形チェックポイント
確立リクエストを発行するとともに、当該チェックポイ
ント確立リクエストを発行した命令の命令長を保持する
命令長保持手段を備え、非同期形チェックポイントを確
立したストア命令によるストアが完了したのちに故障が
発生した場合には、当該ストア命令の次の命令から再試
行を行うようにしたものである。
[作用] この発明におけるチェックポイント再試行方式は、スト
ア命令実行の度に非同期形チェックポイントを確立し、
ペンディングストアリクエストカウンタを1増加し、当
該ストア命令の命令長を命令長保持手段(バッファやレ
ジスタ)にセーブし、ストア完了時点でペンディングス
トアリクエストカウンタを1減算することにより、チェ
ックポイントから再試行するとき、ペンディングストア
リクエストカウンタがLI Oljならばストア命令の
次の命令から再試行し、u O+yでないならばストア
命令から再試行するようにしたものである。
すなわち、ストアが完了している場合には、ストア命令
の次から再試行し、自系プロセッサでのストア結果に対
する他系プロセッサのストア結果を保証する。また、ス
トアが完了していない場合には、ストア命令から再試行
し、プログラムの実行シーケンスを保証する。
[実施例] 以下、この発明の一実施例を図について説明する。
第1図は、第4図に示したプロセッサP Of1+の本
実施例による構成要素の主要部分を示すブロック図であ
る。図中、(5)はM S [31からフェッチした命
令を格納する命令レジスタ(IRと略す’) 、(61
はIR(5)の出力をデコードした結果から求まるオペ
ランドのアドレス変換を行うアドレス変換バッファ(T
LBと略す) 、 (7)はT L B (61の変換
結果からM S +31の内容の写しを取り出すための
キャッシュ(CACと略す) 、 +81はCA C(
71の出力を処理する実行部(EXUと略す) 、+9
1は汎用レジスタ等のワークレジスタを構成するローカ
ルストレージ(LSと略す) 、(10)はL S +
91の変更前の値をセーブするローカルストレージバッ
ファ(LSBと略す)、(11)はCA C(71の変
更前の値をセーブするキャッシュバッファ(CACBと
略す) 、 (12)はM S +31から順次命令を
フェッチするアドレスを保持する命令カウンタ(ICと
略す) 、 (13)はチェックポイント確立の度にI
C(12)の値をセーブする命令カウンタバッファ(工
CBと略す) 、 (14)はデコード後の命令の命令
長を、TLB(81によるアドレス変換中保持する命令
長ラッチ1 (ILLと略す) 、(15)はCA C
(71のアクセス中、命令長を保持する命令長ラッチ2
(IL2と略す) 、(16)は命令実行中、命令長を
保持する命令長ラッチ3 (IL3と略す) 、(17
)は非同期形チェックポイント確立時、IL3(1B)
の内容を格納する命令長バッファ(ILCBと略す) 
、 (18)はE X U (8)のストアリクエスト
でカウントアツプし、CA Cfi+でのストア完了時
カウントダウンするペンディングストアリクエストカウ
ンタ(spcと略す) 、 (20)はE X U +
81からの同期形チェックポイント確立リクエスト信号
線、(21)はE X U (81からの非同期形チェ
ックポイント確立リクエスト信号線、(22)は上記各
信号線(20) 、 (21)の論理和をとるORゲー
ト、(23)はその出力で、同期形チェックポイント確
立リクエストか非同期形チェックポイント確立リクエス
トの何れかが有効なときに有効となるチェックポイント
確立リクエスト信号線である。
次に動作について説明する。命令は、I C(12)で
示されるM S (31のアドレスからIR(5)にフ
ェッチされ、デコードされる。デコードの結果、仮想オ
ペランドアドレスと命令長が求まり、仮想オペランドア
ドレスは、T L B (61により物理アドレスに変
換され、命令長はI L 1 (14)に格納される。
変換された物理アドレスにより、CA C(71からオ
ペランドデータが読み出されると同時に、ILL(14
)の内容がI L 2 (15)へ移される。CA C
+7)から読み出されたオペランドデータは、命令実行
のためにE X tJ +8)へ送られるとともに、命
令実行により当該CA C+7)のアドレスにストアが
行われるときにはCACB(11)へも送られる。これ
と同時にI L、 2 (15)の内容がI L 3 
(16)へ移され、命令実行の間保持される。一方、汎
用レジスタに格納されているオペランドはL S +9
1より読み出され、E X U +81へ送られるとと
もに、当該L S (91のアドレスにロードが行われ
る場合にはL S B (10)へも送られる。E X
 U +81での実行結果は、CA C+71及びL 
S +91へ書き込まれる。
本プロセッサもチェックポイント再試行の機能を有し、
故障が発生した場合には、L S B (10)からL
 S +91の変更内容を復元し、CACB(11)か
らCA C(71の変更内容を復元し、I CB (1
,3)からI C(12)をチェックポイント確立時点
の命令アドレスに戻すことにより、直前のチェックポイ
ントから再試行する。
ここで、ストア命令実行後の故障の場合について説明す
る。E X U (8)は、ストア命令実行の度)こ非
同期形チェックポイント確立リクエスト信号線(21)
により、先ずチェックポイントを確立し、当該ストア命
令の命令アドレスをI CE (13)に、命令長をI
LCB(17)に格納するとともに、LSB(10)及
びCA CB (11,)の内容を無効化し、以降の故
障発生時に当該ストア命令から再試行できるようにする
。次にオペランドに対するストアを実行し、S P C
(18)をカウントアツプする。正常にストアが完了す
ると、c A C(7)からのストア完了報告によりS
 P C(18)はカウントダウンする。第2図に、ス
トア完了後に故障が発生した場合の処理例を示す。E 
X U (8)からのストア要求は、他のリクエストと
の競合により一旦保留状態となり、競合が解消すると実
際にCA C+71に書き込まれ、それに伴ってS P
 C(18)がカウントダウンし、“OF+に戻る。従
って、S P C(18)はストア要求発行時点からC
A C(71への書き込み完了までit 1 hpを保
持している。第2図は、s p c (18)がカウン
トダウンし 11 Q jlになった後に故障が発生し
た場合を示す。この場合、E X U +81はマシン
チエツクの割り込み処理内でS P C(18)の内容
が“0″であることからストア完了を知り、従って、直
前のチェックポイントでのストア命令を実行してはなら
ず、また実行する必要もないことを知る。そこで、E 
X U f8+は当該ストア命令の命令長をILCB(
17)から得てI CB (13)の値に加算した結果
をI C(12)へ格納することにより、当該ストア命
令の次の命令から再試行できるようにする。また、以上
の処理をすることから、当該ストア命令実行時はCA 
C(7)のストア前のデータをCACB(11)へ保存
しない0以上により、EXU(8)が誤ってストア結果
を書き戻し、他系プロセッサのストア結果を失うことが
防止される。第2図の場合、故障発生時点までに白糸プ
ロセッサのストアが完了し、他系プロセッサにストア結
果が見えてしまっているため、自系プロセッサが再試行
によりストアを再実行すると1両系プロセッサのプログ
ラム上の一貫性が保たれなくなる危険がある。
第3図に、ストアが保留中に故障が発生した場合を示す
。この場合、E X U (81は、マシンチエツク割
り込み内でS P C(1B)が′″1″であることか
らストアが保留しており、更にマシンチエツクからの回
復によりストアが消されたことを知り、従って、当該ス
トア命令から再実行する必要があることを知る。そこで
、E X U 18)はI CE (13)の値をその
ままIC(12)へ戻し、当該ストア命令から再試行で
きるようにする。通常、保留中のストアが故障箇所と切
り離せない場合には、故障発生と同時に状態を凍結し、
回復処理により保留中のストアを消去し、CAC(7)
をリクエスト待ち状態にして、再試行に悪影響が生じな
いようにする。
逆に、故障から切り離せる場合には、故障による凍結を
しないため、故障部分の回復処理中にストアが完了して
、E X U (81のマシンチエツク割り込み処理時
点でS P C(18)はrto”になっている。
一方、同期形チェックポイント確立時は、先ず保留中の
全てのストアが完了したのち、チェックポイントの確立
を行う。従って、この時点でS P C(18)を“O
”とし、更にI L ’CB (17)の内容も“O”
とする。これにより、同期形チェックポイント確立後で
非同期形チェックポイント確立以前に故障が発生した場
合には、E X U (81がILCB(17)の値“
0”をI CB (1,3)に加算した後にIC(12
)に格納するため、チェックポイント確立点から再試行
できる。
[発明の効果] 以上のように、この発明によれば、自系プロセッサのス
トア結果に対する他系プロセッサのストア結果を保証す
るためのハードウェアを、ペンディングストアリクエス
トカウンタと命令長バッファで構成し、非同期形チェッ
クポイント確立リクエストを発行するようにしたので、
装置が安価にでき、また、システム性能への悪影響を少
なくする効果がある。
【図面の簡単な説明】
第1図はこの発明の一実施例によるプロセッサの要部構
成を示すブロック図、第2図は本実施例においてストア
完了後に故障が発生した場合の処理方式を示す概念図、
第3図は本実施例においてストア保留中に故障が発生し
た場合の処理方式を示す概念図、第4図は多重プロセッ
サシステムを示すブロック図、第5図は従来のプロセッ
サの要部構成を示すブロック図、第6図は従来のプロセ
ッサにおけるロック方式と再試行方式を示す概念図であ
る。 (11,+21はプロセッサ(PO,Pl)、(31は
主記憶装置(MS)、(71はキャッシュ(CAC)、
+8)は実行部(E XU) 、 +9+はローカルス
トレージ(LS)、(10)はローカルストレージバッ
ファ(L S B) 、 (11)はキャッシュバッフ
ァ(CACB) 、(12)は命令カウンタ(IC)、
(13)は命令カウンタバッファ(I CB) 、(1
7)は命令長バッファ(I LCB ;命令長保持手段
) 、 (18)はペンディングストアリクエストカウ
ンタ(spc)、(20)は同期形チェックポイント確
立リクエスト信号線・、(21)は非同期形チェックポ
イント確立リクエスト信号線。 なお、図中、同一符号は同一、又は相当部分を示す。

Claims (1)

  1. 【特許請求の範囲】 命令実行の途中結果を保持する手段を備え、所定命令単
    位でチェックポイントを確立することにより、故障が発
    生した命令アドレスから直前のチェックポイントへ戻っ
    て再試行を行う機能を有する複数のプロセッサから成る
    多重プロセッサシステムにおいて、 ストアリクエストのペンディング数をカウントするカウ
    ンタを備えて、ペンディングしているストアの完了を待
    たずにチェックポイントを確立する非同期形チェックポ
    イント確立リクエストを発行するとともに、当該チェッ
    クポイント確立リクエストを発行した命令の命令長を保
    持する命令長保持手段を備え、非同期形チェックポイン
    トを確立したストア命令によるストアが完了したのちに
    故障が発生した場合には、当該ストア命令の次の命令か
    ら再試行を行うことを特徴とするチェックポイント再試
    行方式。
JP1204113A 1989-08-07 1989-08-07 チェックポイント再試行方式 Pending JPH0368034A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1204113A JPH0368034A (ja) 1989-08-07 1989-08-07 チェックポイント再試行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1204113A JPH0368034A (ja) 1989-08-07 1989-08-07 チェックポイント再試行方式

Publications (1)

Publication Number Publication Date
JPH0368034A true JPH0368034A (ja) 1991-03-25

Family

ID=16485025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1204113A Pending JPH0368034A (ja) 1989-08-07 1989-08-07 チェックポイント再試行方式

Country Status (1)

Country Link
JP (1) JPH0368034A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683775A (ja) * 1992-03-30 1994-03-25 Internatl Business Mach Corp <Ibm> データ処理システム
US7686324B2 (en) 2003-12-01 2010-03-30 Takao Nishi Seat folding mechanism and wheel chair
US9253046B2 (en) 1998-09-10 2016-02-02 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures
JP2016024762A (ja) * 2014-07-24 2016-02-08 日本電気株式会社 情報処理装置、メモリ順序保障方法、及び、プログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683775A (ja) * 1992-03-30 1994-03-25 Internatl Business Mach Corp <Ibm> データ処理システム
US9253046B2 (en) 1998-09-10 2016-02-02 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures
US9565013B2 (en) 1998-09-10 2017-02-07 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures
US9860315B2 (en) 1998-09-10 2018-01-02 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures
US10491675B2 (en) 2001-10-01 2019-11-26 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures
US7686324B2 (en) 2003-12-01 2010-03-30 Takao Nishi Seat folding mechanism and wheel chair
JP2016024762A (ja) * 2014-07-24 2016-02-08 日本電気株式会社 情報処理装置、メモリ順序保障方法、及び、プログラム

Similar Documents

Publication Publication Date Title
US5185871A (en) Coordination of out-of-sequence fetching between multiple processors using re-execution of instructions
EP0121700B1 (en) Multiprocessor storage serialization apparatus
US4924466A (en) Direct hardware error identification method and apparatus for error recovery in pipelined processing areas of a computer system
JPH0242569A (ja) ベクター処理システムに用いる文脈スイッチング方法及び装置
US5003458A (en) Suspended instruction restart processing system based on a checkpoint microprogram address
EP0550283A2 (en) Invoking hardware recovery actions via action latches
JPS59231652A (ja) メモリアクセス・オ−バラツプ検出方式
JPS6218057B2 (ja)
JPH0368034A (ja) チェックポイント再試行方式
JP3723243B2 (ja) プロセッサ装置及びその制御方法
JPS623347A (ja) エラ−回復情報退避方式
US5673391A (en) Hardware retry trap for millicoded processor
JP2671160B2 (ja) 例外処理方式
JP2783285B2 (ja) 情報処理装置
JPH05165663A (ja) データ処理装置
JPH0133856B2 (ja)
JPS6161143B2 (ja)
JPS6010368A (ja) アドレス変換バツフア制御方式
JPS61131047A (ja) パイプライン制御方式
JPS60250440A (ja) リトライ制御方式
JPS59172044A (ja) 命令制御方式
JPH04181331A (ja) 命令リトライ方式
JPS62115553A (ja) バッファストレイジ無効化処理方式
JPH02294761A (ja) マルチプロセッサシステムの逐次化処理方式
JPH01258154A (ja) マイクロ命令実行制御方式