JPH02135536A - チエツクポイント再試行機構 - Google Patents
チエツクポイント再試行機構Info
- Publication number
- JPH02135536A JPH02135536A JP1207115A JP20711589A JPH02135536A JP H02135536 A JPH02135536 A JP H02135536A JP 1207115 A JP1207115 A JP 1207115A JP 20711589 A JP20711589 A JP 20711589A JP H02135536 A JPH02135536 A JP H02135536A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address
- checkpoint
- interrupt
- error
- 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
- 230000007246 mechanism Effects 0.000 title claims abstract description 60
- 230000004044 response Effects 0.000 claims abstract description 16
- 238000001514 detection method Methods 0.000 claims abstract description 11
- 238000012546 transfer Methods 0.000 claims description 3
- 238000011084 recovery Methods 0.000 description 16
- 238000012423 maintenance Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000000034 method Methods 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 230000009977 dual effect Effects 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
- 208000011580 syndromic disease Diseases 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/141—Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
- G06F9/3863—Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Retry When Errors Occur (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明は、広義にはデータ処理システムに関し、具体的
にはデータ処理システムにおける障害検出からの回復の
改良に関する。
にはデータ処理システムにおける障害検出からの回復の
改良に関する。
B、従来技術及びその課題
データ処理システムは以前からソフト・エラー及びハー
ド・エラーに悩まされてきた。ソフト・エラーは通常、
電気ノイズまたは再現不能な障害症候をもたらす他の不
規則な発生源に起因する、予期される出力からの逸脱で
あると定義される。
ド・エラーに悩まされてきた。ソフト・エラーは通常、
電気ノイズまたは再現不能な障害症候をもたらす他の不
規則な発生源に起因する、予期される出力からの逸脱で
あると定義される。
ハード・エラーは通常、再現可能なエラーを発生する電
気的構成要素または機械的構成要素に関連するものであ
る。従来技術では障害許容データ処理システム用の構成
が多数開発されている。障害許容システムの代表的な例
は、同じ命令ストリームで動作しその出力が互いに比較
される、2つ以上の同じデータ処理要素を設けたもので
ある。1対のデータ処理要素の出力に相違が検出される
と、ソフト・エラーまたはハード・エラーが発生したと
推論できる。通常、従来技術では、次に、データ・プロ
セッサが再起動してエラーが再度検出されるまで、命令
ストリームが段階的に実行される。
気的構成要素または機械的構成要素に関連するものであ
る。従来技術では障害許容データ処理システム用の構成
が多数開発されている。障害許容システムの代表的な例
は、同じ命令ストリームで動作しその出力が互いに比較
される、2つ以上の同じデータ処理要素を設けたもので
ある。1対のデータ処理要素の出力に相違が検出される
と、ソフト・エラーまたはハード・エラーが発生したと
推論できる。通常、従来技術では、次に、データ・プロ
セッサが再起動してエラーが再度検出されるまで、命令
ストリームが段階的に実行される。
エラーが発生しない場合、最初のエラーはソフト・エラ
ーであると判定される。エラーが段階的に繰り返される
と、エラーを発生させる命令が識別できる。障害の検出
後に命令を再試行するこの従来技術の方法は時間が長く
かかる。この従来技術は、障害検出後に命令を再試行す
るための効率的で迅速なものではない。したがって本発
明は以下のことを目的とする。
ーであると判定される。エラーが段階的に繰り返される
と、エラーを発生させる命令が識別できる。障害の検出
後に命令を再試行するこの従来技術の方法は時間が長く
かかる。この従来技術は、障害検出後に命令を再試行す
るための効率的で迅速なものではない。したがって本発
明は以下のことを目的とする。
本発明の目的は、改良された命令再試行機構を提供する
ことである。
ことである。
本発明の他の目的は、従来技術で提供されるものより効
率的な改良された命令再試行機構を提供することである
。
率的な改良された命令再試行機構を提供することである
。
本発明の他の目的は、最近実行されたコードの短いセグ
メントの再試行を可能にする、改良された命令再試行機
構を提供することである。
メントの再試行を可能にする、改良された命令再試行機
構を提供することである。
本発明の他の目的は、メモリの誤った重ね書きによって
メモリが破壊される機会を最小にする命令再試行機構を
提供することである。
メモリが破壊される機会を最小にする命令再試行機構を
提供することである。
本発明の他の目的は、記憶媒体または印刷装置への誤っ
た入出力装置の出力を最小にする、改良された命令再試
行機構を提供することである。
た入出力装置の出力を最小にする、改良された命令再試
行機構を提供することである。
本発明の他の目的は、誤った再試行シーケンスに対して
より効果的に保護する、改良された命令再試行機構を提
供することである。
より効果的に保護する、改良された命令再試行機構を提
供することである。
C0課題を解決するための手段
本発明の上記及びその他の目的、特徴及び利点は、本明
細書で開示するチェックポイント再試行機構によって達
成される。本発明は、一連の実行可能命令を含む命令メ
モリを含むデータ・プロセッサで適用される。データ・
プロセッサはまた、命令に応じて動作し演算動作及び論
理動作を実行する演算論理機構をも含んでいる。データ
・プロセッサはまた、演算論理機構の現在の状況を記憶
する状況レジスタと、現在のオペランド及びアドレスの
値を記憶する、演算論理機構からアクセス可能な複数の
汎用レジスタをも含むことができる。
細書で開示するチェックポイント再試行機構によって達
成される。本発明は、一連の実行可能命令を含む命令メ
モリを含むデータ・プロセッサで適用される。データ・
プロセッサはまた、命令に応じて動作し演算動作及び論
理動作を実行する演算論理機構をも含んでいる。データ
・プロセッサはまた、演算論理機構の現在の状況を記憶
する状況レジスタと、現在のオペランド及びアドレスの
値を記憶する、演算論理機構からアクセス可能な複数の
汎用レジスタをも含むことができる。
データ・プロセッサ中の改良されたチェックポイント再
試行機構は、メモリからアクセスされた命令を復号する
ためにその入力線が命令メモリの出力端に接続された命
令復号器を含む。命令復号器は、書込み復号出力線、割
込み復号出力線及び割込み戻り復号出力線を含む。命令
復号器はさらに、演算論理機構の制御入力端に接続され
た出力をも含む。命令メモリは、アクセスする次の命令
のアドレスを記憶するアドレス・レジスタを含む。
試行機構は、メモリからアクセスされた命令を復号する
ためにその入力線が命令メモリの出力端に接続された命
令復号器を含む。命令復号器は、書込み復号出力線、割
込み復号出力線及び割込み戻り復号出力線を含む。命令
復号器はさらに、演算論理機構の制御入力端に接続され
た出力をも含む。命令メモリは、アクセスする次の命令
のアドレスを記憶するアドレス・レジスタを含む。
このチェックポイント再試行機構はさらに、命令メモリ
からアクセスされた書込み命令の後に続く第1の命令の
アドレスを記憶するチェックポイント・アドレス・レジ
スタも含む。このアドレスは、第1のタイプのチェック
ポイント・アドレスである。
からアクセスされた書込み命令の後に続く第1の命令の
アドレスを記憶するチェックポイント・アドレス・レジ
スタも含む。このアドレスは、第1のタイプのチェック
ポイント・アドレスである。
命令メモリ・アドレス・レジスタは、命令メモリからア
クセスされた割込み命令によって指される、または外部
で生成された割込みが発生したときに指される、サービ
ス・ルーチンの最初の命令のアドレスを記憶するために
、その入力がベクトル・テーブルなどの割込みベクトル
・アドレス機構に接続されている。サービス・ルーチン
の最初の命令のアドレスは、割込み命令へのアクセスま
たは割込み事象の発生に応じて発生する第2のタイプの
チェックポイント・アドレスとして、チェックポイント
・アドレス・レジスタにロードされる。
クセスされた割込み命令によって指される、または外部
で生成された割込みが発生したときに指される、サービ
ス・ルーチンの最初の命令のアドレスを記憶するために
、その入力がベクトル・テーブルなどの割込みベクトル
・アドレス機構に接続されている。サービス・ルーチン
の最初の命令のアドレスは、割込み命令へのアクセスま
たは割込み事象の発生に応じて発生する第2のタイプの
チェックポイント・アドレスとして、チェックポイント
・アドレス・レジスタにロードされる。
割込み戻りスタックは、割込み命令が実行された後また
は割込み事象の発生後に発生する、割込みを受けたプロ
グラムの最初の命令のアドレスを記憶するためデータ・
プロセッサに含まれている。
は割込み事象の発生後に発生する、割込みを受けたプロ
グラムの最初の命令のアドレスを記憶するためデータ・
プロセッサに含まれている。
割込み命令の発生後または割込み事象の発生後に割込み
を受けたプログラムの最初の命令のアドレスは、サービ
ス・ルーチンの最後にある命令メモリからの割込み戻り
命令のアクセスに応じて発生する第3のタイプのチェッ
クポイント・アドレスとして、チェックポイント・アド
レス・レジスタにロードされる。
を受けたプログラムの最初の命令のアドレスは、サービ
ス・ルーチンの最後にある命令メモリからの割込み戻り
命令のアクセスに応じて発生する第3のタイプのチェッ
クポイント・アドレスとして、チェックポイント・アド
レス・レジスタにロードされる。
エラー検査機構が、チェックポイント再試行機構に含ま
れている。エラー検査機構は、演算論理機構で発生する
エラーを検出するために、その入力が演算論理機構の出
力に接続されている。チェックポイント・アドレス・レ
ジスタの内容は、演算論理機構の動作中にエラー検査機
構がエラーを検出するのに応じて、命令メモリ・アドレ
ス・レジスタに転送される。その結果、命令メモリ・ア
ドレス・レジスタの内容が、エラーの検出に応じて現在
のチェックポイント・アドレス値の後に続く一連の命令
の再試行に使用される、チェックポイント・アドレスに
なる。
れている。エラー検査機構は、演算論理機構で発生する
エラーを検出するために、その入力が演算論理機構の出
力に接続されている。チェックポイント・アドレス・レ
ジスタの内容は、演算論理機構の動作中にエラー検査機
構がエラーを検出するのに応じて、命令メモリ・アドレ
ス・レジスタに転送される。その結果、命令メモリ・ア
ドレス・レジスタの内容が、エラーの検出に応じて現在
のチェックポイント・アドレス値の後に続く一連の命令
の再試行に使用される、チェックポイント・アドレスに
なる。
このようにして、チェックポイント・アドレスは、現在
のチェックポイントの通過後に発生したエラーの検出に
応じて、最近実行されたコードのより短いセグメントに
対する命令シーケンスが再試行できるように、自動的に
更新される。
のチェックポイントの通過後に発生したエラーの検出に
応じて、最近実行されたコードのより短いセグメントに
対する命令シーケンスが再試行できるように、自動的に
更新される。
D、実施例
改良されたチェックポイント再試行機構を第1図の全体
的機能構成図に示す。本発明は、一連の実行可能命令を
含む命令メモリ20、命令に応じて動作し演算動作及び
論理動作を実行する演算論理機構(ALU)22、演算
論理機構22の現在の状況を記憶する状況レジスタ24
、及び現在のオペランドとアドレスの値を記憶するため
に演算論理機構22からアクセスできる複数の汎用レジ
スタ26を含むデータ・プロセッサに適用される。
的機能構成図に示す。本発明は、一連の実行可能命令を
含む命令メモリ20、命令に応じて動作し演算動作及び
論理動作を実行する演算論理機構(ALU)22、演算
論理機構22の現在の状況を記憶する状況レジスタ24
、及び現在のオペランドとアドレスの値を記憶するため
に演算論理機構22からアクセスできる複数の汎用レジ
スタ26を含むデータ・プロセッサに適用される。
第1図に示す改良されたチェックポイント再試行機構は
、命令メモリからアクセスされる命令を復号するために
、その入力端が命令メモリ20の出力端に接続された、
命令復号器28を含む。また、書込み復号出力線30、
割込み復号出力線32及び割込み戻り復号出力線34も
命令復号器28に含まれている。命令復号器28はさら
に、線36を介して演算論理機構22の制御入力端に接
続された出力をもつ。
、命令メモリからアクセスされる命令を復号するために
、その入力端が命令メモリ20の出力端に接続された、
命令復号器28を含む。また、書込み復号出力線30、
割込み復号出力線32及び割込み戻り復号出力線34も
命令復号器28に含まれている。命令復号器28はさら
に、線36を介して演算論理機構22の制御入力端に接
続された出力をもつ。
命令メモリ20は、命令メモリ20からアクセスされる
次の命令のアドレスを記憶するアドレス・レジスタ38
を含む。
次の命令のアドレスを記憶するアドレス・レジスタ38
を含む。
第1図の改良されたチェックポイント再試行機構はさら
に、第1の入力線42が命令メモリ・アドレス・レジス
タ38の出力に接続され、第2の入力線44が命令復号
器28の書込み復号出力線30に接続された、第1の2
人力ANDゲート40を含む。
に、第1の入力線42が命令メモリ・アドレス・レジス
タ38の出力に接続され、第2の入力線44が命令復号
器28の書込み復号出力線30に接続された、第1の2
人力ANDゲート40を含む。
第2図は、改良されたチェックポイント再試行機構の動
作を示す例として、命令メモリ20の内容を示したもの
である。命令メモリ20には、主ルーチン50と割込み
サービス・ルーチン56が含まれている。このメモリは
、順次アドレス指定された記憶位置として編成され、た
とえば、主ルーチン50の命令が第1の連続したメモリ
空間を占め、割込みサービス・ルーチン56の命令が第
2の別の連続したメモリ空間を占める。従来技術で周知
のように、ルーチンの位置のアドレスは、様々な適用業
務に合せて再配置し区分することができる。第2図の命
令の内容の配列では、主ルーチン50は、アドレスAに
ある書込み命令52とその後に続くアドレスA+1にあ
る次の命令54を含めて一連の命令を含むことがわかる
。主ルーチン50はさらに、後ろの部分で、アドレス位
置Bに割込み命令60と、その後に続くアドレス位置B
+1に次の命令68を含む。割込みサービス・ルーチン
56は、主ルーチン50の割込み命令60が指すアドレ
スであるアドレスCに第1の割込み命令58を含む。本
発明の範囲内で、アドレスBにソフトウェア割込み命令
60を設ける代わりに、ハードウェアが生成した割込み
を、主ルーチン50のアドレスBにある命令60の実行
点で発生させることも可能である。割込みサービス・ル
ーチン56はさらに、アドレスDに書込み命令59とそ
の後のアドレスD+1に次の命令61を含む。
作を示す例として、命令メモリ20の内容を示したもの
である。命令メモリ20には、主ルーチン50と割込み
サービス・ルーチン56が含まれている。このメモリは
、順次アドレス指定された記憶位置として編成され、た
とえば、主ルーチン50の命令が第1の連続したメモリ
空間を占め、割込みサービス・ルーチン56の命令が第
2の別の連続したメモリ空間を占める。従来技術で周知
のように、ルーチンの位置のアドレスは、様々な適用業
務に合せて再配置し区分することができる。第2図の命
令の内容の配列では、主ルーチン50は、アドレスAに
ある書込み命令52とその後に続くアドレスA+1にあ
る次の命令54を含めて一連の命令を含むことがわかる
。主ルーチン50はさらに、後ろの部分で、アドレス位
置Bに割込み命令60と、その後に続くアドレス位置B
+1に次の命令68を含む。割込みサービス・ルーチン
56は、主ルーチン50の割込み命令60が指すアドレ
スであるアドレスCに第1の割込み命令58を含む。本
発明の範囲内で、アドレスBにソフトウェア割込み命令
60を設ける代わりに、ハードウェアが生成した割込み
を、主ルーチン50のアドレスBにある命令60の実行
点で発生させることも可能である。割込みサービス・ル
ーチン56はさらに、アドレスDに書込み命令59とそ
の後のアドレスD+1に次の命令61を含む。
割込みサービス・ルーチン56は、主ルーチン50のア
ドレスB+1の命令68に実行を戻す割込み戻り命令7
2で終了する。通常、これは、主ルーチン50の実行中
に割込み60が発生したときに命令68のアドレスB+
1をセーブしておくことによって実施される。
ドレスB+1の命令68に実行を戻す割込み戻り命令7
2で終了する。通常、これは、主ルーチン50の実行中
に割込み60が発生したときに命令68のアドレスB+
1をセーブしておくことによって実施される。
第1図の改良されたチェックポイント再試行機構はさら
に、その入力端が第1のANDゲート40の出力端に接
続され、第2図に示すように命令メモリ20からアクセ
スされるアドレスAの書込み命令52に続く、最初の命
令54のアドレスA+1を記憶する、チェックポイント
・アドレス・レジスタ46を含む。本発明によると、チ
ェックポイント・アドレス・レジスタ46でのアドレス
A+1の記憶は、書込み命令の実行に関連する第1のタ
イプのチェックポイント・アドレスである。
に、その入力端が第1のANDゲート40の出力端に接
続され、第2図に示すように命令メモリ20からアクセ
スされるアドレスAの書込み命令52に続く、最初の命
令54のアドレスA+1を記憶する、チェックポイント
・アドレス・レジスタ46を含む。本発明によると、チ
ェックポイント・アドレス・レジスタ46でのアドレス
A+1の記憶は、書込み命令の実行に関連する第1のタ
イプのチェックポイント・アドレスである。
こうした書込み命令は、情報を命令メモリまたはデータ
・プロセッサのデータ・メモリに書き込むのに使うこと
ができる。別法として、書込み命令52を、ディスク記
憶装置、テープ記憶装置あるいは印刷装置または表示装
置などの入出力装置に出力情報を書き込むために使うこ
ともできる。第1のタイプのチェックポイント・アドレ
スの目的は、後続の別の書込み命令または割込み命令ま
たは割込み事象の実行前に、演算論理機構22の動作中
にエラーが検出された場合に、再試行を開始できる点を
提供することである。本発明によれば、こうすると、再
試行でメモリや入出力装置の状態の破壊が生じる可能性
が最小になる。主ルーチン50の命令52や割込みサー
ビス・ルーチン56の命令59などの書込み命令が実行
されるたびに、チェックポイント・アドレス・レジスタ
46に、更新された値が記憶され、それが次に発生する
命令のアドレスとなる。本発明によれば、こうすると、
エラーが検出された場合、最近実行されたコードの短い
セグメントが再試行可能になる。
・プロセッサのデータ・メモリに書き込むのに使うこと
ができる。別法として、書込み命令52を、ディスク記
憶装置、テープ記憶装置あるいは印刷装置または表示装
置などの入出力装置に出力情報を書き込むために使うこ
ともできる。第1のタイプのチェックポイント・アドレ
スの目的は、後続の別の書込み命令または割込み命令ま
たは割込み事象の実行前に、演算論理機構22の動作中
にエラーが検出された場合に、再試行を開始できる点を
提供することである。本発明によれば、こうすると、再
試行でメモリや入出力装置の状態の破壊が生じる可能性
が最小になる。主ルーチン50の命令52や割込みサー
ビス・ルーチン56の命令59などの書込み命令が実行
されるたびに、チェックポイント・アドレス・レジスタ
46に、更新された値が記憶され、それが次に発生する
命令のアドレスとなる。本発明によれば、こうすると、
エラーが検出された場合、最近実行されたコードの短い
セグメントが再試行可能になる。
命令メモリ・アドレス・レジスタ38は、その入力端が
、割込みベクトル・アドレス手段48に接続されている
。アドレス手段48は、たとえば命令メモリまたはデー
タ・プロセッサのデータ・メモリの任意の場所に位置す
るベクトル・アドレス・テーブルでよい。ベクトル・ア
ドレス・テーブルの動作の例は、1985年8月29日
付けの米国特許出願第770541号に記載されている
。
、割込みベクトル・アドレス手段48に接続されている
。アドレス手段48は、たとえば命令メモリまたはデー
タ・プロセッサのデータ・メモリの任意の場所に位置す
るベクトル・アドレス・テーブルでよい。ベクトル・ア
ドレス・テーブルの動作の例は、1985年8月29日
付けの米国特許出願第770541号に記載されている
。
割込みベクトル・アドレス手段48は、第2図のサービ
ス・ルーチン56の最初の命令58のアドレスCを記憶
する。このアドレスは、命令メモリ20からアクセスさ
れた主ルーチン50の割込み命令60によって指され、
または割込み事象の発生の結果として指される。
ス・ルーチン56の最初の命令58のアドレスCを記憶
する。このアドレスは、命令メモリ20からアクセスさ
れた主ルーチン50の割込み命令60によって指され、
または割込み事象の発生の結果として指される。
第1のANDゲート40は、割込みベクトル・アドレス
手段48から命令メモリ・アドレス・レジスタ82に送
られたサービス・ルーチン56の第1の命令58のアド
レスCを、ORゲート64を介してチェックポイント・
アドレス・レジスタ46にロードさせるために、その第
2の入力44が、ORゲート82を介して命令復号器2
8の割込み復号出力線32に接続されている。本発明で
は、これは、命令メモリ20からの割込み命令GOのア
クセスに応答して発生し、あるいは主ルーチン50の命
令60の実行時または実行中に割込み事象の発生に応答
して発生する、第2のタイプのチェックポイント・アド
レスである。このようにして、サービス・ルーチン56
のアドレスCにある第1の割込み命令58の実行に続<
ALU22の動作で障害が検出された場合、第1の命令
58から命令の再試行が開始する。このようにして、エ
ラーが検出されたとき、最近実行されたコードの短いセ
グメントが再試行できる。
手段48から命令メモリ・アドレス・レジスタ82に送
られたサービス・ルーチン56の第1の命令58のアド
レスCを、ORゲート64を介してチェックポイント・
アドレス・レジスタ46にロードさせるために、その第
2の入力44が、ORゲート82を介して命令復号器2
8の割込み復号出力線32に接続されている。本発明で
は、これは、命令メモリ20からの割込み命令GOのア
クセスに応答して発生し、あるいは主ルーチン50の命
令60の実行時または実行中に割込み事象の発生に応答
して発生する、第2のタイプのチェックポイント・アド
レスである。このようにして、サービス・ルーチン56
のアドレスCにある第1の割込み命令58の実行に続<
ALU22の動作で障害が検出された場合、第1の命令
58から命令の再試行が開始する。このようにして、エ
ラーが検出されたとき、最近実行されたコードの短いセ
グメントが再試行できる。
第1図に示すデータ・プロセッサはさらに、割込み外部
事象が発生したときに割込み命令60の後に発生する、
割込みを受けたプログラム50の命令68のアドレスB
+1を記憶する、割込み戻りアドレス・スタック66を
含むこともできる。
事象が発生したときに割込み命令60の後に発生する、
割込みを受けたプログラム50の命令68のアドレスB
+1を記憶する、割込み戻りアドレス・スタック66を
含むこともできる。
第1図のチェックポイント再試行機構はさらに、その第
1の入力端がアドレス・スタック66の出力端に接続さ
れ、第2の入力端が命令復号器28の命令戻り復号出力
線34に接続された、第2のANDゲート70を含む。
1の入力端がアドレス・スタック66の出力端に接続さ
れ、第2の入力端が命令復号器28の命令戻り復号出力
線34に接続された、第2のANDゲート70を含む。
第2のANDゲート70は、アドレスBで割込み命令6
0が発生した後に割込みを受けたプログラム50のアド
レスB+1にある第1の命令68をチェックポイント・
アドレス・レジスタ64にロードするために、その出力
がORゲート64を介してチェックポイント・アドレス
・レジスタ46に接続されている。本発明によると、こ
れは、命令メモリ20から、サービス・ルーチン56の
割込み戻り命令72へのアクセスに応答して発生する、
第3のタイプのチェックポイント・アドレスである。こ
のようにして、主ルーチン50のアドレスB+1の命令
68の実行後にALU22の動作でエラーが検出された
場合、命令の再試行がアドレスB+1の命令68から開
始する。すなわち、ALU22の動作でエラーが検出さ
れた場合に、最近実行されたフードの短いセグメントが
、再試行される。
0が発生した後に割込みを受けたプログラム50のアド
レスB+1にある第1の命令68をチェックポイント・
アドレス・レジスタ64にロードするために、その出力
がORゲート64を介してチェックポイント・アドレス
・レジスタ46に接続されている。本発明によると、こ
れは、命令メモリ20から、サービス・ルーチン56の
割込み戻り命令72へのアクセスに応答して発生する、
第3のタイプのチェックポイント・アドレスである。こ
のようにして、主ルーチン50のアドレスB+1の命令
68の実行後にALU22の動作でエラーが検出された
場合、命令の再試行がアドレスB+1の命令68から開
始する。すなわち、ALU22の動作でエラーが検出さ
れた場合に、最近実行されたフードの短いセグメントが
、再試行される。
第1図のチェックポイント再試行機構は、演算論理機構
22に発生するエラーを検出するためその入力端が演算
論理機構22の出力端に接続されたエラー検査機構74
を含む。エラー検査機構74には様々な技術が利用でき
る。1つの技術は、並行して動作して命令メモリ20か
ら出力される同じ命令ストリームを実行する、2つの演
算論理機構22と22“を設けることである。1対の演
算論理機構22と22゛の出力を比較して、出力の相違
が検出された場合、2つの演算論理機構のどちらか一方
でエラーが発生したと推論することができる。このため
、エラー検査機構74から出力線92上にエラー検出信
号が出力される。エラー検査機構74に利用できるエラ
ー検査技術の他の例については、後で説明する。第1図
の第3のANDゲート76は、その第1の入力端がチェ
ックポイント・アドレス・レジスタ46の出力端に接続
され、第2の入力端が、演算論理機構22の動作にエラ
ーが発生したことをエラー検査機構74が検出したのに
応じて、チェックポイント・アドレス・レジスタ46の
内容を命令メモリ・アト!/ス・レジスタ38に転送す
るために、エラー検査機構74の出力端に接続されてい
る。その結果書られる命令メモリ・アドレス・レジスタ
38の内容は、現在のチェックポイント・アドレス値に
続く一連の命令を再試行するためのチェックポイント・
アドレスの現在値となる。
22に発生するエラーを検出するためその入力端が演算
論理機構22の出力端に接続されたエラー検査機構74
を含む。エラー検査機構74には様々な技術が利用でき
る。1つの技術は、並行して動作して命令メモリ20か
ら出力される同じ命令ストリームを実行する、2つの演
算論理機構22と22“を設けることである。1対の演
算論理機構22と22゛の出力を比較して、出力の相違
が検出された場合、2つの演算論理機構のどちらか一方
でエラーが発生したと推論することができる。このため
、エラー検査機構74から出力線92上にエラー検出信
号が出力される。エラー検査機構74に利用できるエラ
ー検査技術の他の例については、後で説明する。第1図
の第3のANDゲート76は、その第1の入力端がチェ
ックポイント・アドレス・レジスタ46の出力端に接続
され、第2の入力端が、演算論理機構22の動作にエラ
ーが発生したことをエラー検査機構74が検出したのに
応じて、チェックポイント・アドレス・レジスタ46の
内容を命令メモリ・アト!/ス・レジスタ38に転送す
るために、エラー検査機構74の出力端に接続されてい
る。その結果書られる命令メモリ・アドレス・レジスタ
38の内容は、現在のチェックポイント・アドレス値に
続く一連の命令を再試行するためのチェックポイント・
アドレスの現在値となる。
このようにして、チェックポイント・アドレスが自動的
に更新され、現在のチェックポイントの通過後に発生し
たエラーが検出されるのに応じて、最近実行されたコー
ドのより短いセグメントに対して命令シーケンスが再試
行可能になる。
に更新され、現在のチェックポイントの通過後に発生し
たエラーが検出されるのに応じて、最近実行されたコー
ドのより短いセグメントに対して命令シーケンスが再試
行可能になる。
第1図はさらに、新しいチェックポイント・アドレス値
がチェックポイント・アドレス・レジスタ46に記憶さ
れたとき、状況レジスタ24の内容を記憶するシャドウ
状況レジスタ80を示す。
がチェックポイント・アドレス・レジスタ46に記憶さ
れたとき、状況レジスタ24の内容を記憶するシャドウ
状況レジスタ80を示す。
第4のANDゲート82は、その第1の入力端が状況レ
ジスタ24の出力に接続され、第2の入力端が命令復号
器28の書込み出力線301割込み出力線32及び割込
み戻り出力線34の論理和を取るためにORゲート84
と62を介して接続されている。第4のANDゲート8
2は、チェックポイント・アドレス・レジスタ46に新
しいチェックポイント・アドレス値が記憶されていると
きに、状況レジスタ24の内容をシャドウ状況レジスタ
80にロードするためにその出力端が、シャドウ状況レ
ジスタ80の入力端に接続されている。シャドウ状況レ
ジスタ80は、エラー検査機構74が線92上の出力信
号から演算論理機構22にエラーが発生したことを検出
したときに、シャドウ状況レジスタ80の内容を状況レ
ジスタ24に転送するために、その出力線86がAND
ゲート88を介して状況レジスタ24の入力線90に接
続されている。
ジスタ24の出力に接続され、第2の入力端が命令復号
器28の書込み出力線301割込み出力線32及び割込
み戻り出力線34の論理和を取るためにORゲート84
と62を介して接続されている。第4のANDゲート8
2は、チェックポイント・アドレス・レジスタ46に新
しいチェックポイント・アドレス値が記憶されていると
きに、状況レジスタ24の内容をシャドウ状況レジスタ
80にロードするためにその出力端が、シャドウ状況レ
ジスタ80の入力端に接続されている。シャドウ状況レ
ジスタ80は、エラー検査機構74が線92上の出力信
号から演算論理機構22にエラーが発生したことを検出
したときに、シャドウ状況レジスタ80の内容を状況レ
ジスタ24に転送するために、その出力線86がAND
ゲート88を介して状況レジスタ24の入力線90に接
続されている。
第1図は、状況レジスタ24の内容をレジスタ80のシ
ャドウ状況に転送する場合について説明したのと同様の
方式でチェックポイント・アドレスの新しい値がチェッ
クポイント・アドレス・レジスタ46に記憶されている
ときに、複数の汎用レジスタ26の内容を記憶する、複
数のシャドウ汎用レジスタ94を示す。シャドウ汎用レ
ジスタ94は、エラー検査機構74が演算論理機構22
にエラーが発生したことを示す出力信号92を検出した
のに応じてシャドウ汎用レジスタ94の内容を汎用レジ
スタ26に転送するために、その出力線86がANDゲ
ート88を介して汎用レジスタ26の線90に接続され
ている。
ャドウ状況に転送する場合について説明したのと同様の
方式でチェックポイント・アドレスの新しい値がチェッ
クポイント・アドレス・レジスタ46に記憶されている
ときに、複数の汎用レジスタ26の内容を記憶する、複
数のシャドウ汎用レジスタ94を示す。シャドウ汎用レ
ジスタ94は、エラー検査機構74が演算論理機構22
にエラーが発生したことを示す出力信号92を検出した
のに応じてシャドウ汎用レジスタ94の内容を汎用レジ
スタ26に転送するために、その出力線86がANDゲ
ート88を介して汎用レジスタ26の線90に接続され
ている。
本発明の結果、チェックポイント・アドレスが自動的に
更新され、現在のチェックポイントを通過した後に発生
したエラーの検出に応じて、最近実行されたコードのよ
り短いセグメントに対して命令シーケンスが再試行可能
になる。その結果、メモリの破壊と誤った入出力装置の
出力の問題を回避する、より効率が高く迅速なチェック
ポイント再試行動作が提供される。本発明はさらに、誤
った再試行シーケンスから保護する働きもする。
更新され、現在のチェックポイントを通過した後に発生
したエラーの検出に応じて、最近実行されたコードのよ
り短いセグメントに対して命令シーケンスが再試行可能
になる。その結果、メモリの破壊と誤った入出力装置の
出力の問題を回避する、より効率が高く迅速なチェック
ポイント再試行動作が提供される。本発明はさらに、誤
った再試行シーケンスから保護する働きもする。
第1図は、エラーが検出され、アドレス・レジスタ38
にチェックポイント再試行アドレスがロードされた後に
使用される、本発明の追加態様を示す。単一ステップ命
令アドレス増分器35は、その出力端がアドレス・レジ
スタ38に接続されている。エラー・ラッチ37は、そ
の入力端がエラー検査機構74からの出力線82に接続
され、出力端が命令アドレス増分器35の入力端に接続
されている。エラー検査機構74がエラーが発生したこ
とを検出すると、線92上の信号がラッチ37をセット
させ、ラッチ37から命令アドレス増分器35への信号
が、単一ステップ・モードの開始を示す。アドレス・レ
ジスタ38にチェックポイント再試行アドレスがロード
されているとき、そのチェックポイント再試行アドレス
に対応する命令が命令メモリ20からアクセスされ、A
LU22によって実行される。次に、ラッチ37からの
単一ステップモード信号の制御下で、命令アドレス増分
器が、アドレス・レジスタ38内のアドレスの値を1だ
け増分する。すなわち、エラー状態を再び発生させる命
令がアクセスされるまで、命令メモリ20の次の命令が
アクセスされ、ALU22で逐次的に1ステツプずつ実
行される。エラー検査機構74が線92上に第2のエラ
ー検出信号を出力すると、これは、最初に検出されたエ
ラーが再び検出されたことを示し、線92上の信号がA
NDゲート41中でラッチ37からの1状態出力と組み
合わされて、その結果、エラー・アドレス・フラグ・ラ
ッチであるラッチ39をセットする。エラー・アドレス
・フラグ・ラッチ39は、アドレス・レジスタ38に現
在入っているエラー・アドレスが、検出されたエラーを
引き起こす命令のアドレスであることを知らせる出力を
もつ。アドレス・レジスタ38がその値を変更しないよ
うに、ラッチ39の出力からの禁止線がアドレス・レジ
スタ38に接続され、それによって、そのアドレス内容
がエラー検査機構74によって検出されたエラーを引き
起こす命令の内容のままで凍結される。ラッチ39から
のエラー・アドレス・フラグ出力に対するフラグ信号が
発生したとき、この信号を使って、エラー分析ルーチン
へのソフトウェア分岐を実行したり、あるいは診断プロ
グラマがエラー保守を実行できるようにエラーを生成す
る命令のアドレスの値を印刷することができる。
にチェックポイント再試行アドレスがロードされた後に
使用される、本発明の追加態様を示す。単一ステップ命
令アドレス増分器35は、その出力端がアドレス・レジ
スタ38に接続されている。エラー・ラッチ37は、そ
の入力端がエラー検査機構74からの出力線82に接続
され、出力端が命令アドレス増分器35の入力端に接続
されている。エラー検査機構74がエラーが発生したこ
とを検出すると、線92上の信号がラッチ37をセット
させ、ラッチ37から命令アドレス増分器35への信号
が、単一ステップ・モードの開始を示す。アドレス・レ
ジスタ38にチェックポイント再試行アドレスがロード
されているとき、そのチェックポイント再試行アドレス
に対応する命令が命令メモリ20からアクセスされ、A
LU22によって実行される。次に、ラッチ37からの
単一ステップモード信号の制御下で、命令アドレス増分
器が、アドレス・レジスタ38内のアドレスの値を1だ
け増分する。すなわち、エラー状態を再び発生させる命
令がアクセスされるまで、命令メモリ20の次の命令が
アクセスされ、ALU22で逐次的に1ステツプずつ実
行される。エラー検査機構74が線92上に第2のエラ
ー検出信号を出力すると、これは、最初に検出されたエ
ラーが再び検出されたことを示し、線92上の信号がA
NDゲート41中でラッチ37からの1状態出力と組み
合わされて、その結果、エラー・アドレス・フラグ・ラ
ッチであるラッチ39をセットする。エラー・アドレス
・フラグ・ラッチ39は、アドレス・レジスタ38に現
在入っているエラー・アドレスが、検出されたエラーを
引き起こす命令のアドレスであることを知らせる出力を
もつ。アドレス・レジスタ38がその値を変更しないよ
うに、ラッチ39の出力からの禁止線がアドレス・レジ
スタ38に接続され、それによって、そのアドレス内容
がエラー検査機構74によって検出されたエラーを引き
起こす命令の内容のままで凍結される。ラッチ39から
のエラー・アドレス・フラグ出力に対するフラグ信号が
発生したとき、この信号を使って、エラー分析ルーチン
へのソフトウェア分岐を実行したり、あるいは診断プロ
グラマがエラー保守を実行できるようにエラーを生成す
る命令のアドレスの値を印刷することができる。
エラーが初めて検出され、最初の再試行では再現しない
場合、そのエラーはソフト・エラーであると仮定される
。こうした状況で、命令が、たとえば、次の書込み命令
に続く命令のアドレスなど次のチェックポイントまで実
行されるとき、ORゲート64が前記のような信号を出
力する。ORゲート64は、チェックポイント・レジス
タ46をロードするための信号を出力し、この信号はま
たORゲート64の出力端からラッチ37のクリア入力
端に送られて、そのラッチをリセットすることができる
。このようにして、エラーの最初の発生が検出された後
は、プログラムの実行は、1ステツプごとの逐次方式で
はなく、通常の方式で続行される。その理由は、ラッチ
37から命令アドレス増分器35に出力される1段モー
ド信号がもはやないためである。
場合、そのエラーはソフト・エラーであると仮定される
。こうした状況で、命令が、たとえば、次の書込み命令
に続く命令のアドレスなど次のチェックポイントまで実
行されるとき、ORゲート64が前記のような信号を出
力する。ORゲート64は、チェックポイント・レジス
タ46をロードするための信号を出力し、この信号はま
たORゲート64の出力端からラッチ37のクリア入力
端に送られて、そのラッチをリセットすることができる
。このようにして、エラーの最初の発生が検出された後
は、プログラムの実行は、1ステツプごとの逐次方式で
はなく、通常の方式で続行される。その理由は、ラッチ
37から命令アドレス増分器35に出力される1段モー
ド信号がもはやないためである。
第3図は、2重冗長プロセッサ構成を示す。第1図のプ
ロセッサ10が第3図に示されており、また同じプロセ
ッサ10’も示されており、どちらも主システム・バス
65に接続されている。プロセッサ10のエラー・アド
レス・フラグ線45またはプロセッサ10′のエラー・
アドレス・フラグ線45′を介して信号が発生したとき
に、主プロセツサまたは活動プロセッサを、第1のプロ
セッサ10から第2のプロセッサ10“に交換すること
が本発明のこの態様の目的である。第3図かられかるよ
うに、保守プロセッサ48は、その入力端が第1のプロ
セッサ10からのエラー・アドレス・フラグ線45に接
続され、第2の入力端が第2のプロセッサ10′からの
エラー・アドレス・フラグ線45°に接続されている。
ロセッサ10が第3図に示されており、また同じプロセ
ッサ10’も示されており、どちらも主システム・バス
65に接続されている。プロセッサ10のエラー・アド
レス・フラグ線45またはプロセッサ10′のエラー・
アドレス・フラグ線45′を介して信号が発生したとき
に、主プロセツサまたは活動プロセッサを、第1のプロ
セッサ10から第2のプロセッサ10“に交換すること
が本発明のこの態様の目的である。第3図かられかるよ
うに、保守プロセッサ48は、その入力端が第1のプロ
セッサ10からのエラー・アドレス・フラグ線45に接
続され、第2の入力端が第2のプロセッサ10′からの
エラー・アドレス・フラグ線45°に接続されている。
保守プロセッサ48は、プロセッサ10と10’のどち
らを主システム・バス55に対する活動プロセッサとす
るかを決定する。保守プロセッサ48は、第1のAND
ゲート53に接続された出力線43をもち、ANDゲー
ト53の第2の入力端は、プロセッサ10のALU22
のALUのデータ出力線51に接続されている。保守プ
ロセッサ48は、主システム・バス55に接続する主プ
ロセツサとして第1のプロセッサ10を選択すると、線
43上にANDゲート53を満足させる使用可能信号を
出し、それによって、ALU出力線51を主システム・
バス55に接続させる。また、プロセッサ10からの線
45上にエラー・アドレス・フラグ信号が発生した場合
、保守プロセッサ48は出力線43から使用可能信号を
除去し、そのためインバータ49を通過したとき、AN
Dゲート53“に使用可能信号が供給され、それによっ
て、プロセッサ10“中のALU22からの出力線51
“が主システム・バス55に接続される。同時に、AN
Dゲート53が使用禁止されて、プロセ・ソサ10の主
システム・バス55への接続が中断される。このように
して、保守プロセッサ48は、2重冗長プロセッサ10
と10′の間の交換動作を実行することができる。
らを主システム・バス55に対する活動プロセッサとす
るかを決定する。保守プロセッサ48は、第1のAND
ゲート53に接続された出力線43をもち、ANDゲー
ト53の第2の入力端は、プロセッサ10のALU22
のALUのデータ出力線51に接続されている。保守プ
ロセッサ48は、主システム・バス55に接続する主プ
ロセツサとして第1のプロセッサ10を選択すると、線
43上にANDゲート53を満足させる使用可能信号を
出し、それによって、ALU出力線51を主システム・
バス55に接続させる。また、プロセッサ10からの線
45上にエラー・アドレス・フラグ信号が発生した場合
、保守プロセッサ48は出力線43から使用可能信号を
除去し、そのためインバータ49を通過したとき、AN
Dゲート53“に使用可能信号が供給され、それによっ
て、プロセッサ10“中のALU22からの出力線51
“が主システム・バス55に接続される。同時に、AN
Dゲート53が使用禁止されて、プロセ・ソサ10の主
システム・バス55への接続が中断される。このように
して、保守プロセッサ48は、2重冗長プロセッサ10
と10′の間の交換動作を実行することができる。
本発明のもう一つの特徴が、第3図に示されている。す
なわち、プロセッサ10中のアドレス・レジスタ38の
内容とプロセッサ10′中のアドレス・レジスタ38′
の内容が比較機構57で比較される。比較機構57は、
その出力端が保守プロセッサ48に接続されている。ア
ドレス・レジスタ38または381の現アドレスが同じ
でない場合、同じ命令が命令メモリ20からアクセスさ
れない。これは、両方のエラー検査機構74またはプロ
セッサ10’中のエラー検査機構74°によって検出さ
れるエラーが、チェックポイント再試行機構自身の誤動
作の結果であることを示すことになる。アドレス・レジ
スタ38と38“が−致しないことが比較機構57によ
って検出された場合、保守プロセッサ48は再試行動作
を実行しない。しかし、プロセッサ10のエラー検査機
構74またはプロセッサ10’の対応するエラー検査機
構74゛によってエラーが検出され、それぞれエラー・
アドレス・フラグ線45または45゜上に信号を生成す
る場合、前述のように、再試行動作が行なわれることに
なる。
なわち、プロセッサ10中のアドレス・レジスタ38の
内容とプロセッサ10′中のアドレス・レジスタ38′
の内容が比較機構57で比較される。比較機構57は、
その出力端が保守プロセッサ48に接続されている。ア
ドレス・レジスタ38または381の現アドレスが同じ
でない場合、同じ命令が命令メモリ20からアクセスさ
れない。これは、両方のエラー検査機構74またはプロ
セッサ10’中のエラー検査機構74°によって検出さ
れるエラーが、チェックポイント再試行機構自身の誤動
作の結果であることを示すことになる。アドレス・レジ
スタ38と38“が−致しないことが比較機構57によ
って検出された場合、保守プロセッサ48は再試行動作
を実行しない。しかし、プロセッサ10のエラー検査機
構74またはプロセッサ10’の対応するエラー検査機
構74゛によってエラーが検出され、それぞれエラー・
アドレス・フラグ線45または45゜上に信号を生成す
る場合、前述のように、再試行動作が行なわれることに
なる。
第3図は、また保守プロセッサによって主プロセツサと
して選択された特定のプロセッサ10または10′が、
命令メモリ22に供給される有効なアドレスを含むアド
レス・レジスタをもつプロセッサであることも示してい
る。これは、アドレス・レジスタ38の出力端を、AN
Dゲート65を介して、命令メモリ22のアドレス入力
端に接続されたアドレス・バス63に接続させることに
よって行なわれる。ANDゲート65は、前記のAND
ゲート53と同様に、保守プロセッサ48からの使用可
能線によって使用可能になる。同様に、プロセッサ10
′では、アドレス・レジスタ38’は、その出力端がA
NDゲート65“を介してアドレス・バス63に接続さ
れ、ANDゲート65′は、プロセッサ10に対応する
ANDゲート65が満足されないときだけ満足される。
して選択された特定のプロセッサ10または10′が、
命令メモリ22に供給される有効なアドレスを含むアド
レス・レジスタをもつプロセッサであることも示してい
る。これは、アドレス・レジスタ38の出力端を、AN
Dゲート65を介して、命令メモリ22のアドレス入力
端に接続されたアドレス・バス63に接続させることに
よって行なわれる。ANDゲート65は、前記のAND
ゲート53と同様に、保守プロセッサ48からの使用可
能線によって使用可能になる。同様に、プロセッサ10
′では、アドレス・レジスタ38’は、その出力端がA
NDゲート65“を介してアドレス・バス63に接続さ
れ、ANDゲート65′は、プロセッサ10に対応する
ANDゲート65が満足されないときだけ満足される。
すなわち、活動プロセッサ10または10°のどちらか
だけが、そのアドレスルジスタが、アドレス・バス63
を介して命令メモリ22のアドレス入力に有効に接続さ
れる。
だけが、そのアドレスルジスタが、アドレス・バス63
を介して命令メモリ22のアドレス入力に有効に接続さ
れる。
第3図に示したもう一つの態様は、プロセッサ10のエ
ラー検査機構74の出力線67がORゲート69に接続
され、プロセッサ10°のエラー検査機構74°の対応
する出力線67も、ORゲート69の入力端に接続され
ていることである。ORゲート69の出力線は線92で
あり、これは、第1図に示すように、プロセッサ10と
10“の両方に対して存在するエラー信号線である。プ
ロセッサ10または101のどちらか一方でそのエラー
検査機構74または74゛がALU22または22′か
らのエラーを検出すると、ORゲート69は、両方のプ
ロセッサの命令再試行機構を開始させる信号92を生成
する。このようにして、2重冗長プロセッサ10と10
“に対して命令再試行動作の完全な同期を維持すること
ができる。
ラー検査機構74の出力線67がORゲート69に接続
され、プロセッサ10°のエラー検査機構74°の対応
する出力線67も、ORゲート69の入力端に接続され
ていることである。ORゲート69の出力線は線92で
あり、これは、第1図に示すように、プロセッサ10と
10“の両方に対して存在するエラー信号線である。プ
ロセッサ10または101のどちらか一方でそのエラー
検査機構74または74゛がALU22または22′か
らのエラーを検出すると、ORゲート69は、両方のプ
ロセッサの命令再試行機構を開始させる信号92を生成
する。このようにして、2重冗長プロセッサ10と10
“に対して命令再試行動作の完全な同期を維持すること
ができる。
第4図は、背景診断及び保守サービスから独立したチェ
ックポイント再試行シーケンスおよびそれらのサービス
に関係するチェックポイント再試行シーケンスの状態図
である。第4図の正常のシーケンス100は、単一命令
の実行として定義される。
ックポイント再試行シーケンスおよびそれらのサービス
に関係するチェックポイント再試行シーケンスの状態図
である。第4図の正常のシーケンス100は、単一命令
の実行として定義される。
第4図のエラー・シーケンス102は、エラーの検出後
に講じられるエラー管理処置として定義される。通常は
、障害が検出されると再試行トラップが起動する。つい
で、再試行の肯定応答で回復シーケンスが開始される。
に講じられるエラー管理処置として定義される。通常は
、障害が検出されると再試行トラップが起動する。つい
で、再試行の肯定応答で回復シーケンスが開始される。
エラーがソリッドでない場合、しきい値カウンタ104
が更新される。
が更新される。
とのカウンタはプロセッサ性能のオンライン指示として
使用できる。エラー・シンドローム・データも、記録及
びしきい値設定のために、オンチップ・モニタ(OCM
)を介して診断及び保守装置(DxMD)に報告される
。次に、セーブされたチェックポイントが再試行シーケ
ンスの一環としてアンロードされ単一ステップ化される
。
使用できる。エラー・シンドローム・データも、記録及
びしきい値設定のために、オンチップ・モニタ(OCM
)を介して診断及び保守装置(DxMD)に報告される
。次に、セーブされたチェックポイントが再試行シーケ
ンスの一環としてアンロードされ単一ステップ化される
。
第4図の再試行シーケンス106は、回復段階に続く単
一ステップ・モードでの単一命令の実行として定義され
る。この段階でエラーが検出されると、障害のある命令
が識別される。このシーケンスの実行が成功すると、次
の命令を含む新しいチェックポイントを確立してから、
正常の実行が再開される。
一ステップ・モードでの単一命令の実行として定義され
る。この段階でエラーが検出されると、障害のある命令
が識別される。このシーケンスの実行が成功すると、次
の命令を含む新しいチェックポイントを確立してから、
正常の実行が再開される。
第4図の障害シーケンス108は、ソリッド障害または
再試行シーケンスの実行失敗の結果である。エラーの間
に実行されていた命令が、記録及び高レベル回復動作の
ためにOCMを介してDxMDに報告される。単一ステ
ップ・モードがリセットされ、障害状況が報告され、再
試行トラップが非活動状態になり、再試行肯定応答が活
動状態になる。次いで、システムは、ソフトウェアで制
御される回復動作を呼び出すため、割込みを生成する。
再試行シーケンスの実行失敗の結果である。エラーの間
に実行されていた命令が、記録及び高レベル回復動作の
ためにOCMを介してDxMDに報告される。単一ステ
ップ・モードがリセットされ、障害状況が報告され、再
試行トラップが非活動状態になり、再試行肯定応答が活
動状態になる。次いで、システムは、ソフトウェアで制
御される回復動作を呼び出すため、割込みを生成する。
単一事象混乱(SEU)の場合、−時的エラーが長時間
続き、その結果複数のネストされた割込みが生じること
がある。ソフトウェアで制御される回復動作は、良好に
動作する資源に対してさらに損害が及ぶことを防止する
、混乱事象遅延として機能する。
続き、その結果複数のネストされた割込みが生じること
がある。ソフトウェアで制御される回復動作は、良好に
動作する資源に対してさらに損害が及ぶことを防止する
、混乱事象遅延として機能する。
第4図の割込みシーケンス110は、ソフトウェアで制
御される回復を呼び出すため、(シきい値を越える状態
をもたらす)ソリッド障害または過剰再試行によってト
リガーされる。ソフトウェア制御回復は、オンラインで
制御されるものでも、背景で制御されるものでもよい。
御される回復を呼び出すため、(シきい値を越える状態
をもたらす)ソリッド障害または過剰再試行によってト
リガーされる。ソフトウェア制御回復は、オンラインで
制御されるものでも、背景で制御されるものでもよい。
これにより、プロセッサがSEU中にネストされた割込
みにより良好に動作する処理を(現在のSEUがクリア
されるまで)さらに遅延させて、良好に動作する資源を
誤った実行から保護することもできる。
みにより良好に動作する処理を(現在のSEUがクリア
されるまで)さらに遅延させて、良好に動作する資源を
誤った実行から保護することもできる。
チェックポイント再試行のシナリオの4つの異なるケー
スを第5図に示す。通常、継続的なハードウェア検査機
構の性質上「書込み」相互間で一時的な障害が発生する
4つの場合がある。何回もの再試行にわたって同じ一時
的障害が再発すると、ソリッド障害である(ケース2と
4)。複数の一時的障害は、単一ステップ動作がエラー
なしに完了するたびにチェックポイントを増分して、障
害の再発を徐々になくしていく漸進方式で再試行される
(ケース1と3)。これらのシナリオは、障害持続時間
、障害分離及び障害識別を処理する際のチェックポイン
ト再試行戦略の適応性のある特徴を示している。ケース
1は、完全な回復をもたらす単一の再試行シーケンスに
よる単一の一時的障害の回復を示す。ケース2は、エラ
ー情報とエラー発生前のマシン状態により次のレベルの
回復を開始するための割込みをもたらす、複数の再試行
シーケンスによる単一のソリッド障害の回復を示す。ケ
ース3は、短時間SEUに類似する漸進的回復をもたら
す、複数の再試行シーケンスによる複数の一時的障害の
回復を示す。ケース4は、エラー情報とエラー発生の直
前のマシン状態により次のレベルの回復を開始するため
の割込みをもたらす、複数の再試行シーケンスによる複
数の一時的障害の回復を示す。これは、長時間SEUの
いくつかの態様も示している。
スを第5図に示す。通常、継続的なハードウェア検査機
構の性質上「書込み」相互間で一時的な障害が発生する
4つの場合がある。何回もの再試行にわたって同じ一時
的障害が再発すると、ソリッド障害である(ケース2と
4)。複数の一時的障害は、単一ステップ動作がエラー
なしに完了するたびにチェックポイントを増分して、障
害の再発を徐々になくしていく漸進方式で再試行される
(ケース1と3)。これらのシナリオは、障害持続時間
、障害分離及び障害識別を処理する際のチェックポイン
ト再試行戦略の適応性のある特徴を示している。ケース
1は、完全な回復をもたらす単一の再試行シーケンスに
よる単一の一時的障害の回復を示す。ケース2は、エラ
ー情報とエラー発生前のマシン状態により次のレベルの
回復を開始するための割込みをもたらす、複数の再試行
シーケンスによる単一のソリッド障害の回復を示す。ケ
ース3は、短時間SEUに類似する漸進的回復をもたら
す、複数の再試行シーケンスによる複数の一時的障害の
回復を示す。ケース4は、エラー情報とエラー発生の直
前のマシン状態により次のレベルの回復を開始するため
の割込みをもたらす、複数の再試行シーケンスによる複
数の一時的障害の回復を示す。これは、長時間SEUの
いくつかの態様も示している。
E1発明の詳細
な説明したように本発明によれば、従来に比べて、障害
検出後の命令の再試行を効率的で迅速に行うことができ
る。
検出後の命令の再試行を効率的で迅速に行うことができ
る。
第1図は、本発明に基づくチェックポイント再試行機構
を示す図である。 第2図は、チェックポイント再試行機構の動作を説明す
る命令メモリ20の内容の例を示す図である。 第3図は、2重冗長プロセッサ構成の構成を示す図であ
る。 第4図は、チェックポイント再試行シーケンスの状態図
である。 第5図は、チェックポイント再試行の4つの異なるシナ
リオを示す図である。
を示す図である。 第2図は、チェックポイント再試行機構の動作を説明す
る命令メモリ20の内容の例を示す図である。 第3図は、2重冗長プロセッサ構成の構成を示す図であ
る。 第4図は、チェックポイント再試行シーケンスの状態図
である。 第5図は、チェックポイント再試行の4つの異なるシナ
リオを示す図である。
Claims (1)
- 【特許請求の範囲】 実行可能な命令のシーケンスを含む命令メモリと、該
命令に応答して演算を実行する演算論理機構とを有する
データプロセッサにおけるチェックポイント再試行機構
であって、 上記命令メモリからアクセスされた命令を復号するため
上記命令メモリの出力に接続された入力ならびに書込み
復号出力、割込み復号出力及び割込み戻り復号出力を有
する命令復号手段を有し、上記命令メモリはアクセスす
べき次の命令のアドレスを記憶するアドレス・レジスタ
を含み、上記命令メモリからアクセスされた書込み命令
の後に続く最初の命令のアドレスを第1のタイプのチェ
ックポイント・アドレスとして記憶するために上記命令
復号手段の上記書込み復号出力にチェックポイント・ア
ドレス・レジスタが接続され、 上記命令メモリからアクセスされた割込み命令に応答し
て該割込み命令によって呼び出される割込みサービス・
ルーチンにおいて最初に発生する命令のアドレスを第2
のタイプのチェックポイント・アドレスとして上記チェ
ックポイント・アドレス・レジスタにロードすることを
付勢するため上記チェックポイント・アドレス・レジス
タは上記命令復号手段の上記割込み復号出力に接続され
、上記命令メモリから割込み戻り命令をアクセスするこ
とに応答して、割込み命令の発生後に割込まれたプログ
ラムにおいて最初に発生する命令のアドレスを第3のタ
イプのチェックポイント・アドレスとして上記チェック
ポイント・アドレス・レジスタにロードするため上記チ
ェックポイント・アドレス・レジスタは上記命令復号手
段の上記割込み戻り復号出力に接続され、 上記演算論理機構において発生するエラーを検出するた
め上記演算論理機構の出力に接続された入力を有するエ
ラー検査手段と、 上記エラー検査手段による上記演算論理機構の演算にお
けるエラーの検出に応答して上記チェックポイント・ア
ドレス・レジスタの内容を上記アドレス・レジスタに転
送するため上記チェックポイント・アドレス・レジスタ
の出力及び上記エラー検査手段の出力に接続された転送
手段と、 を有することを特徴とするチェックポイント再試行機構
。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/235,345 US4912707A (en) | 1988-08-23 | 1988-08-23 | Checkpoint retry mechanism |
US235345 | 1988-08-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02135536A true JPH02135536A (ja) | 1990-05-24 |
JPH0652506B2 JPH0652506B2 (ja) | 1994-07-06 |
Family
ID=22885109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1207115A Expired - Lifetime JPH0652506B2 (ja) | 1988-08-23 | 1989-08-11 | チエツクポイント再試行機構 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4912707A (ja) |
EP (1) | EP0355286B1 (ja) |
JP (1) | JPH0652506B2 (ja) |
DE (1) | DE68924223T2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005050329A (ja) * | 2003-07-11 | 2005-02-24 | Yogitech Spa | 信頼性マイクロコントローラ、マイクロコントローラにおける欠陥検出方法、マイクロコントローラ用欠陥許容システム設計方法、およびコンピュータプログラム製品 |
JP2009200375A (ja) * | 2008-02-25 | 2009-09-03 | Chugoku Electric Power Co Inc:The | 移動用変圧器 |
Families Citing this family (86)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5253360A (en) * | 1988-12-16 | 1993-10-12 | Kabushiki Kaisha Toshiba | Facsimile device having continuous operating capabilities immediately after recovery from trouble and related method |
JPH02216545A (ja) * | 1989-02-17 | 1990-08-29 | Nec Corp | 実行履歴記憶装置 |
DE69032058T2 (de) * | 1989-03-14 | 1998-07-02 | Canon Kk | Prozesszustandsüberwachungssystem |
US5146460A (en) * | 1990-02-16 | 1992-09-08 | International Business Machines | Logic simulation using a hardware accelerator together with an automated error event isolation and trace facility |
JPH04649A (ja) * | 1990-04-18 | 1992-01-06 | Nec Corp | リモートチャネル装置の障害情報転送方式 |
JPH04139544A (ja) * | 1990-10-01 | 1992-05-13 | Fujitsu Ltd | データ復元方法 |
US5168564A (en) * | 1990-10-05 | 1992-12-01 | Bull Hn Information Systems Inc. | Cancel mechanism for resilient resource management and control |
JP3516344B2 (ja) * | 1990-10-22 | 2004-04-05 | 株式会社日立製作所 | 分散処理システムの多重データ処理方法 |
DE4106784C2 (de) * | 1991-03-04 | 2000-04-13 | Philips Corp Intellectual Pty | Signalprozessor zur Verwendung in einem digitalen Funktelefon |
US5269017A (en) * | 1991-08-29 | 1993-12-07 | International Business Machines Corporation | Type 1, 2 and 3 retry and checkpointing |
EP0529303A3 (en) * | 1991-08-29 | 1993-09-22 | International Business Machines Corporation | Checkpoint synchronization with instruction overlap enabled |
US5293613A (en) * | 1991-08-29 | 1994-03-08 | International Business Machines Corporation | Recovery control register |
JPH0812616B2 (ja) * | 1991-09-11 | 1996-02-07 | インターナショナル・ビジネス・マシーンズ・コーポレイション | オペレーティングシステムカーネル用受動回復方法およびシステム |
JPH05298134A (ja) * | 1991-12-16 | 1993-11-12 | Internatl Business Mach Corp <Ibm> | コンピュータシステムにおける処理誤りの処理機構及び方法 |
US5398330A (en) | 1992-03-05 | 1995-03-14 | Seiko Epson Corporation | Register file backup queue |
GB2272549B (en) * | 1992-11-03 | 1997-01-29 | Tolsys Ltd | Memory checkpointing |
US5488706A (en) * | 1992-12-18 | 1996-01-30 | Amdahl Corporation | Retry request system in a pipeline data processing system where each requesting unit preserves the order of requests |
US5459864A (en) * | 1993-02-02 | 1995-10-17 | International Business Machines Corporation | Load balancing, error recovery, and reconfiguration control in a data movement subsystem with cooperating plural queue processors |
US5568380A (en) * | 1993-08-30 | 1996-10-22 | International Business Machines Corporation | Shadow register file for instruction rollback |
US5809525A (en) * | 1993-09-17 | 1998-09-15 | International Business Machines Corporation | Multi-level computer cache system providing plural cache controllers associated with memory address ranges and having cache directories |
US5504859A (en) * | 1993-11-09 | 1996-04-02 | International Business Machines Corporation | Data processor with enhanced error recovery |
SG48907A1 (en) * | 1993-12-01 | 1998-05-18 | Intel Corp | Exception handling in a processor that performs speculative out-of-order instruction execution |
US5371884A (en) * | 1993-12-21 | 1994-12-06 | Taligent, Inc. | Processor fault recovery system |
US5539895A (en) * | 1994-05-12 | 1996-07-23 | International Business Machines Corporation | Hierarchical computer cache system |
JP2774770B2 (ja) * | 1994-05-19 | 1998-07-09 | 株式会社東芝 | デバッグ方式 |
AU2663095A (en) * | 1994-06-10 | 1996-01-05 | Sequoia Systems, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system |
US5590277A (en) * | 1994-06-22 | 1996-12-31 | Lucent Technologies Inc. | Progressive retry method and apparatus for software failure recovery in multi-process message-passing applications |
CA2154509A1 (en) * | 1994-10-03 | 1996-04-04 | Paul Peixoto Carreiro | Method and apparatus for automatic frame transmission on a channel to controller interface in a data processing system |
EP0815507B1 (en) * | 1995-02-14 | 2013-06-12 | Fujitsu Limited | Structure and method for high-performance speculative execution processor providing special features |
US5655115A (en) * | 1995-02-14 | 1997-08-05 | Hal Computer Systems, Inc. | Processor structure and method for watchpoint of plural simultaneous unresolved branch evaluation |
US5864657A (en) * | 1995-11-29 | 1999-01-26 | Texas Micro, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system |
TW379298B (en) * | 1996-09-30 | 2000-01-11 | Toshiba Corp | Memory updating history saving device and memory updating history saving method |
US6012148A (en) * | 1997-01-29 | 2000-01-04 | Unisys Corporation | Programmable error detect/mask utilizing bus history stack |
FR2760160B1 (fr) * | 1997-02-27 | 1999-03-26 | Alsthom Cge Alcatel | Procede d'election de la station active dans un systeme securise de traitement de l'information |
US6625756B1 (en) * | 1997-12-19 | 2003-09-23 | Intel Corporation | Replay mechanism for soft error recovery |
US6247118B1 (en) * | 1998-06-05 | 2001-06-12 | Mcdonnell Douglas Corporation | Systems and methods for transient error recovery in reduced instruction set computer processors via instruction retry |
US6615366B1 (en) * | 1999-12-21 | 2003-09-02 | Intel Corporation | Microprocessor with dual execution core operable in high reliability mode |
US6640313B1 (en) * | 1999-12-21 | 2003-10-28 | Intel Corporation | Microprocessor with high-reliability operating mode |
US6625749B1 (en) * | 1999-12-21 | 2003-09-23 | Intel Corporation | Firmware mechanism for correcting soft errors |
US6687853B1 (en) * | 2000-05-31 | 2004-02-03 | International Business Machines Corporation | Checkpointing for recovery of channels in a data processing system |
US6772368B2 (en) * | 2000-12-11 | 2004-08-03 | International Business Machines Corporation | Multiprocessor with pair-wise high reliability mode, and method therefore |
US6772372B2 (en) * | 2001-03-06 | 2004-08-03 | Hewlett-Packard Development Company, L.P. | System and method for monitoring unaligned memory accesses |
US6880051B2 (en) * | 2002-03-14 | 2005-04-12 | International Business Machines Corporation | Method, system, and program for maintaining backup copies of files in a backup storage device |
JP2004062309A (ja) * | 2002-07-25 | 2004-02-26 | Fujitsu Ltd | 不当命令処理方法及びプロセッサ |
US7467325B2 (en) * | 2005-02-10 | 2008-12-16 | International Business Machines Corporation | Processor instruction retry recovery |
US20060184771A1 (en) * | 2005-02-11 | 2006-08-17 | International Business Machines | Mini-refresh processor recovery as bug workaround method using existing recovery hardware |
US7634641B2 (en) | 2005-03-18 | 2009-12-15 | Sun Microsystems, Inc. | Method and apparatus for using multiple threads to spectulatively execute instructions |
US7571304B2 (en) | 2005-03-18 | 2009-08-04 | Sun Microsystems, Inc. | Generation of multiple checkpoints in a processor that supports speculative execution |
US8078910B1 (en) | 2008-12-15 | 2011-12-13 | Open Invention Network, Llc | Method and system for providing coordinated checkpointing to a group of independent computer applications |
US7747822B1 (en) | 2005-10-31 | 2010-06-29 | Oracle America Inc. | Maintaining memory coherency with a trace cache |
US7966479B1 (en) | 2005-09-28 | 2011-06-21 | Oracle America, Inc. | Concurrent vs. low power branch prediction |
US7779307B1 (en) | 2005-09-28 | 2010-08-17 | Oracle America, Inc. | Memory ordering queue tightly coupled with a versioning cache circuit |
US8370576B1 (en) | 2005-09-28 | 2013-02-05 | Oracle America, Inc. | Cache rollback acceleration via a bank based versioning cache ciruit |
US7587585B1 (en) * | 2005-10-26 | 2009-09-08 | Sun Microsystems, Inc. | Flag management in processors enabled for speculative execution of micro-operation traces |
US7937564B1 (en) | 2005-09-28 | 2011-05-03 | Oracle America, Inc. | Emit vector optimization of a trace |
US8051247B1 (en) | 2005-09-28 | 2011-11-01 | Oracle America, Inc. | Trace based deallocation of entries in a versioning cache circuit |
US7814298B1 (en) | 2005-09-28 | 2010-10-12 | Oracle America, Inc. | Promoting and appending traces in an instruction processing circuit based upon a bias value |
US7546420B1 (en) | 2005-09-28 | 2009-06-09 | Sun Microsystems, Inc. | Efficient trace cache management during self-modifying code processing |
US8037285B1 (en) | 2005-09-28 | 2011-10-11 | Oracle America, Inc. | Trace unit |
US8015359B1 (en) | 2005-09-28 | 2011-09-06 | Oracle America, Inc. | Method and system for utilizing a common structure for trace verification and maintaining coherency in an instruction processing circuit |
US8499293B1 (en) | 2005-09-28 | 2013-07-30 | Oracle America, Inc. | Symbolic renaming optimization of a trace |
US7953961B1 (en) | 2005-09-28 | 2011-05-31 | Oracle America, Inc. | Trace unit with an op path from a decoder (bypass mode) and from a basic-block builder |
US7953933B1 (en) | 2005-09-28 | 2011-05-31 | Oracle America, Inc. | Instruction cache, decoder circuit, basic block cache circuit and multi-block cache circuit |
US7870369B1 (en) | 2005-09-28 | 2011-01-11 | Oracle America, Inc. | Abort prioritization in a trace-based processor |
US7987342B1 (en) | 2005-09-28 | 2011-07-26 | Oracle America, Inc. | Trace unit with a decoder, a basic-block cache, a multi-block cache, and sequencer |
US7949854B1 (en) | 2005-09-28 | 2011-05-24 | Oracle America, Inc. | Trace unit with a trace builder |
US8032710B1 (en) | 2005-09-28 | 2011-10-04 | Oracle America, Inc. | System and method for ensuring coherency in trace execution |
US8019944B1 (en) | 2005-09-28 | 2011-09-13 | Oracle America, Inc. | Checking for a memory ordering violation after a speculative cache write |
US8024522B1 (en) | 2005-09-28 | 2011-09-20 | Oracle America, Inc. | Memory ordering queue/versioning cache circuit |
US7783863B1 (en) | 2005-09-28 | 2010-08-24 | Oracle America, Inc. | Graceful degradation in a trace-based processor |
US7849292B1 (en) | 2005-09-28 | 2010-12-07 | Oracle America, Inc. | Flag optimization of a trace |
US7877630B1 (en) | 2005-09-28 | 2011-01-25 | Oracle America, Inc. | Trace based rollback of a speculatively updated cache |
US7681019B1 (en) | 2005-11-18 | 2010-03-16 | Sun Microsystems, Inc. | Executing functions determined via a collection of operations from translated instructions |
US7797517B1 (en) | 2005-11-18 | 2010-09-14 | Oracle America, Inc. | Trace optimization via fusing operations of a target architecture operation set |
DE102006012042A1 (de) * | 2006-03-16 | 2007-09-20 | Kuka Roboter Gmbh | Steuervorrichtung zur fehlersicheren Steuerung einer Maschine |
US8010745B1 (en) | 2006-09-27 | 2011-08-30 | Oracle America, Inc. | Rolling back a speculative update of a non-modifiable cache line |
US8370609B1 (en) | 2006-09-27 | 2013-02-05 | Oracle America, Inc. | Data cache rollbacks for failed speculative traces with memory operations |
US8745442B1 (en) * | 2011-04-28 | 2014-06-03 | Open Invention Network, Llc | System and method for hybrid kernel- and user-space checkpointing |
US10019327B1 (en) | 2008-12-15 | 2018-07-10 | Open Invention Network Llc | System and method for hybrid kernel- and user-space incremental and full checkpointing |
US9354977B1 (en) * | 2008-12-15 | 2016-05-31 | Open Invention Network Llc | System and method for hybrid kernel- and user-space incremental and full checkpointing |
US9256496B1 (en) | 2008-12-15 | 2016-02-09 | Open Invention Network, Llc | System and method for hybrid kernel—and user-space incremental and full checkpointing |
US11625307B1 (en) | 2011-04-28 | 2023-04-11 | International Business Machines Corporation | System and method for hybrid kernel- and user-space incremental and full checkpointing |
US11307941B1 (en) | 2011-04-28 | 2022-04-19 | Open Invention Network Llc | System and method for hybrid kernel- and user-space incremental and full checkpointing |
US8930318B1 (en) * | 2011-09-29 | 2015-01-06 | Google Inc. | Systems and methods for handling interruptions while updating of an electronic device |
US9588845B2 (en) * | 2014-02-10 | 2017-03-07 | Via Alliance Semiconductor Co., Ltd. | Processor that recovers from excessive approximate computing error |
US10235232B2 (en) | 2014-02-10 | 2019-03-19 | Via Alliance Semiconductor Co., Ltd | Processor with approximate computing execution unit that includes an approximation control register having an approximation mode flag, an approximation amount, and an error threshold, where the approximation control register is writable by an instruction set instruction |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3539996A (en) * | 1968-01-15 | 1970-11-10 | Ibm | Data processing machine function indicator |
US3533082A (en) * | 1968-01-15 | 1970-10-06 | Ibm | Instruction retry apparatus including means for restoring the original contents of altered source operands |
US3736566A (en) * | 1971-08-18 | 1973-05-29 | Ibm | Central processing unit with hardware controlled checkpoint and retry facilities |
US3786430A (en) * | 1971-11-15 | 1974-01-15 | Ibm | Data processing system including a small auxiliary processor for overcoming the effects of faulty hardware |
US4044337A (en) * | 1975-12-23 | 1977-08-23 | International Business Machines Corporation | Instruction retry mechanism for a data processing system |
US4697266A (en) * | 1983-03-14 | 1987-09-29 | Unisys Corp. | Asynchronous checkpointing system for error recovery |
US4703481A (en) * | 1985-08-16 | 1987-10-27 | Hewlett-Packard Company | Method and apparatus for fault recovery within a computing system |
EP0218979B1 (en) * | 1985-10-03 | 1991-04-24 | Mitsubishi Denki Kabushiki Kaisha | Computer program debugging system |
EP0228559A1 (de) * | 1985-12-17 | 1987-07-15 | BBC Brown Boveri AG | Fehlertolerante Mehrrechneranordnung |
US4852092A (en) * | 1986-08-18 | 1989-07-25 | Nec Corporation | Error recovery system of a multiprocessor system for recovering an error in a processor by making the processor into a checking condition after completion of microprogram restart from a checkpoint |
-
1988
- 1988-08-23 US US07/235,345 patent/US4912707A/en not_active Expired - Fee Related
-
1989
- 1989-06-08 EP EP89110329A patent/EP0355286B1/en not_active Expired - Lifetime
- 1989-06-08 DE DE68924223T patent/DE68924223T2/de not_active Expired - Fee Related
- 1989-08-11 JP JP1207115A patent/JPH0652506B2/ja not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005050329A (ja) * | 2003-07-11 | 2005-02-24 | Yogitech Spa | 信頼性マイクロコントローラ、マイクロコントローラにおける欠陥検出方法、マイクロコントローラ用欠陥許容システム設計方法、およびコンピュータプログラム製品 |
JP2009200375A (ja) * | 2008-02-25 | 2009-09-03 | Chugoku Electric Power Co Inc:The | 移動用変圧器 |
Also Published As
Publication number | Publication date |
---|---|
EP0355286A3 (en) | 1991-07-03 |
DE68924223T2 (de) | 1996-05-02 |
US4912707A (en) | 1990-03-27 |
EP0355286B1 (en) | 1995-09-13 |
JPH0652506B2 (ja) | 1994-07-06 |
EP0355286A2 (en) | 1990-02-28 |
DE68924223D1 (de) | 1995-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH02135536A (ja) | チエツクポイント再試行機構 | |
US5274646A (en) | Excessive error correction control | |
JPH0253809B2 (ja) | ||
US6141771A (en) | Method and system for providing a trusted machine state | |
US6895527B1 (en) | Error recovery for speculative memory accesses | |
JP2770913B2 (ja) | パリティの置換装置及び方法 | |
JPS6218057B2 (ja) | ||
EP1703393B1 (en) | Error notification method and apparatus for an information processing system carrying out mirror operation | |
US10289332B2 (en) | Apparatus and method for increasing resilience to faults | |
US5673391A (en) | Hardware retry trap for millicoded processor | |
JP2004252525A (ja) | エミュレータおよびプログラム | |
US11847457B1 (en) | System for error detection and correction in a multi-thread processor | |
JPH0644238B2 (ja) | 命令再実行制御方法 | |
JPH07152594A (ja) | 制御プロセッサのリトライ制御方式 | |
JPH02297235A (ja) | メモリデータ保護回路 | |
JPH04125753A (ja) | メモリのオンライン診断方式 | |
JPH07219796A (ja) | 情報処理装置 | |
SU763902A1 (ru) | Микропрограммный процессор с самодиагностикой | |
JPS6142033A (ja) | 情報処理装置 | |
JPH0135369B2 (ja) | ||
JPH09251392A (ja) | システム異常検出機構 | |
JPH08166891A (ja) | フォールトトレラントコンピュータシステム | |
JPH06161797A (ja) | データ処理装置 | |
JPH0230060B2 (ja) | ||
JPS62113241A (ja) | 障害回復装置 |