JPS5856141B2 - 情報処理装置の障害処理方式 - Google Patents
情報処理装置の障害処理方式Info
- Publication number
- JPS5856141B2 JPS5856141B2 JP53124140A JP12414078A JPS5856141B2 JP S5856141 B2 JPS5856141 B2 JP S5856141B2 JP 53124140 A JP53124140 A JP 53124140A JP 12414078 A JP12414078 A JP 12414078A JP S5856141 B2 JPS5856141 B2 JP S5856141B2
- Authority
- JP
- Japan
- Prior art keywords
- stage
- failure
- processing
- register
- instruction
- 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
Links
Landscapes
- Advance Control (AREA)
Description
【発明の詳細な説明】
本発明は先行制御方式をとる情報処理装置において、先
行制御に係るハードウェア障害が発生した場合の処理方
式tこ関するものである。
行制御に係るハードウェア障害が発生した場合の処理方
式tこ関するものである。
大型の情報処理装置では第1図に示すように、各命+
I−0〜I−6の処理ステージすなわちデコードステー
ジD1アドレス修飾(アドレス変換も含む)ステージA
1 オペランドフェッチステージ01実行ステージEな
どをオーバーラツプさせて、複数の命令を並行(こ処理
することをこより、実質的に命令の処理速度の向上をは
かっている。
I−0〜I−6の処理ステージすなわちデコードステー
ジD1アドレス修飾(アドレス変換も含む)ステージA
1 オペランドフェッチステージ01実行ステージEな
どをオーバーラツプさせて、複数の命令を並行(こ処理
することをこより、実質的に命令の処理速度の向上をは
かっている。
これを先行制御方式あるいはパイプライン制量方式と呼
んでいる。
んでいる。
今、この先行制御方式をとる情報処理装置において、先
行制御に係るハードウェアの障害が発生したとする。
行制御に係るハードウェアの障害が発生したとする。
第2図はこの場合の従来の障害処理を説明するための図
で、オペランドフェッチステージで使用するハードウェ
アの障害が「×」印の時点で発生した場合、以後、斜線
で示す領域のステージ処理が抑止されることを示してい
る。
で、オペランドフェッチステージで使用するハードウェ
アの障害が「×」印の時点で発生した場合、以後、斜線
で示す領域のステージ処理が抑止されることを示してい
る。
すなわち、従来は先行制御に係るハードウェアの障害が
発生すると、各パイプラインPO〜P−3やステージの
状況の如何(こか\わらず一律にハードウェアの状態を
凍結し、障害制御の容易なステージ(一般にはEステー
ジ)の障害としてソフトウェアに報告していた。
発生すると、各パイプラインPO〜P−3やステージの
状況の如何(こか\わらず一律にハードウェアの状態を
凍結し、障害制御の容易なステージ(一般にはEステー
ジ)の障害としてソフトウェアに報告していた。
しかし、これには次のような問題がある。
(1)障害を起こした命令等、障害状況の切り分けが困
難である。
難である。
例えば第2図の場合、本来は■3の命令の障害とすべき
ところが■−1の命令の障害とされてしまう。
ところが■−1の命令の障害とされてしまう。
(2)通常、障害が発生すると命令の再実行が行われる
が、該再実行が意味をなさない場合がある。
が、該再実行が意味をなさない場合がある。
すなわち、第2図の例において、I−1の命令を再実行
しても意味がない。
しても意味がない。
また、たまたま■−1のEステージが再実行不能である
と、本来の状況(再実行可能)とは無関係に、発生した
障害が再実行不能として報告されてしまう。
と、本来の状況(再実行可能)とは無関係に、発生した
障害が再実行不能として報告されてしまう。
(3) (2)の問題点を解決するため、先行制御に
係る障害発生直後、一時的に先行制御を無効として命令
の読み出しから改めて行うという方法も考えられるが、
その場合、動作としては先行制御をバイパスするので障
害が再現しない可能性もあり、障害の真因をつきとめる
のに困難が生じる。
係る障害発生直後、一時的に先行制御を無効として命令
の読み出しから改めて行うという方法も考えられるが、
その場合、動作としては先行制御をバイパスするので障
害が再現しない可能性もあり、障害の真因をつきとめる
のに困難が生じる。
本発明の目的は、先行制御方式をとる情報処理装置にお
いて、障害発生状況の分解能を高め、障害の真の原因の
追求を容易にし、再実行の可能性を上げること(こある
。
いて、障害発生状況の分解能を高め、障害の真の原因の
追求を容易にし、再実行の可能性を上げること(こある
。
簡単に云えば、本発明は先行制御に係るハードウェアの
障害が発生すると、該当パイプラインおよびそれより若
いステージにあるパイプラインの動作を凍結し、エラー
状態にあるレジスタの内容を退避レジスタに退避し、そ
のレジスタの他のパイプラインの命令による使用を許可
した上で、四分より先のステージにあるパイプラインの
動作を続行、完了させ、その後、ログアウト、命令再実
行、ソフトウェアへの割込み等の障害処理を行うことを
特徴とするものである。
障害が発生すると、該当パイプラインおよびそれより若
いステージにあるパイプラインの動作を凍結し、エラー
状態にあるレジスタの内容を退避レジスタに退避し、そ
のレジスタの他のパイプラインの命令による使用を許可
した上で、四分より先のステージにあるパイプラインの
動作を続行、完了させ、その後、ログアウト、命令再実
行、ソフトウェアへの割込み等の障害処理を行うことを
特徴とするものである。
以下、実施例により本発明の内容を詳細に説明する。
第3図は本発明の一実施例のブロック図である。
図において、10〜21はパイプラインの各ステージD
−Eに対応して用意されたステージ状態レジスタで、こ
れらは、主として命令語読出しのデータバスである■一
パス9からの情報をそのまま、または加工して保持する
部分10,13,16゜19と、命令アドレスの一部や
再実行ステータスを保持する部分11,14,17,2
0と、そのステージを所有しているパイプラインのID
(標識)を保持する部分12,15,18,21から威
り、原則としてそのまま、或は若干更新しながら、ステ
ージD(デコード)→ステージA(アドレス修飾)→ス
テージ0(オペランドフェッチ)→ステージE(命令実
行)のよう]こ内容が移されて行く。
−Eに対応して用意されたステージ状態レジスタで、こ
れらは、主として命令語読出しのデータバスである■一
パス9からの情報をそのまま、または加工して保持する
部分10,13,16゜19と、命令アドレスの一部や
再実行ステータスを保持する部分11,14,17,2
0と、そのステージを所有しているパイプラインのID
(標識)を保持する部分12,15,18,21から威
り、原則としてそのまま、或は若干更新しながら、ステ
ージD(デコード)→ステージA(アドレス修飾)→ス
テージ0(オペランドフェッチ)→ステージE(命令実
行)のよう]こ内容が移されて行く。
1は汎用レジスタ群などの一つのレジスタ(レジスタi
とする)、2はレジスタ1の内容をチェックするチェッ
ク回路である。
とする)、2はレジスタ1の内容をチェックするチェッ
ク回路である。
3はチェック回路2およびその他の各種障害チェックの
結果を保持するチェックレジスタ、4はチェックレジス
タ3の各ビットを論理和して障害の発生を出力するOR
回路、5は各ステージ状態レジスタの遷移状態や退避レ
ジスタへの退避を制御する制御回路、6は制御回路5の
制御のもとに、障害の発見されたレジスタ(例えばレジ
スタi)の内容を検査用冗長ビット(一般にはパリティ
ビット)を含めて退避、保持する退避レジスタである。
結果を保持するチェックレジスタ、4はチェックレジス
タ3の各ビットを論理和して障害の発生を出力するOR
回路、5は各ステージ状態レジスタの遷移状態や退避レ
ジスタへの退避を制御する制御回路、6は制御回路5の
制御のもとに、障害の発見されたレジスタ(例えばレジ
スタi)の内容を検査用冗長ビット(一般にはパリティ
ビット)を含めて退避、保持する退避レジスタである。
7はデータの人力バス(■−バス)、8は同じく出力ハ
ス(O−バス)である。
ス(O−バス)である。
22は先行制御に係る各種(例えばソース、デスティネ
ーション等)のデコード信号発生回路、23はエンコー
ド信号発生回路である。
ーション等)のデコード信号発生回路、23はエンコー
ド信号発生回路である。
第4図はパイプライン3のステージAで障害が発生した
場合の本発明によるステージ抑止制御を示したものであ
り、第2図と同じく「×」印は障害発生時点、斜線部分
が抑止されるステージである。
場合の本発明によるステージ抑止制御を示したものであ
り、第2図と同じく「×」印は障害発生時点、斜線部分
が抑止されるステージである。
以下、第4図を参照して第3図の動作を説明する。
さて、先行制御のステージAの制御によって動いている
レジスタ(レジスタi)1にパリティエラーが検出され
たとする。
レジスタ(レジスタi)1にパリティエラーが検出され
たとする。
このエラーの存在はチェックレジスタ、3に表示され、
これがOR回路4を通してエンコード信号発生回路23
に与えられ、該エラーが発生した時にレジスタ1をセッ
トしたソース情報(ステージ名)がエンコードされる。
これがOR回路4を通してエンコード信号発生回路23
に与えられ、該エラーが発生した時にレジスタ1をセッ
トしたソース情報(ステージ名)がエンコードされる。
このエンコードされたソース情報(ステージA)は障害
制御回路5に与えられる。
制御回路5に与えられる。
一方、OR回路4の出力は上記エンコード信号発生回路
23と\もに障害制御回路5へも与えられている。
23と\もに障害制御回路5へも与えられている。
すなわち、障害制御回路5はOR回路の出力により障害
が発生したことを知り、又、それがどのステージ(ステ
ージA)で発生したかをエンコード信号発生回路23か
らのエンコード信号で認識する。
が発生したことを知り、又、それがどのステージ(ステ
ージA)で発生したかをエンコード信号発生回路23か
らのエンコード信号で認識する。
その結果、障害制御回路5はステージA、Dの動作を凍
結し、ステージI))A、A−+0 、E−)Dの遷移
を抑止する。
結し、ステージI))A、A−+0 、E−)Dの遷移
を抑止する。
同時に、必要ならば余分のブレークインサイクルの助け
を借りて、レジスタ1の内容をパリティビットも含めて
退避レジスタ6に退避する。
を借りて、レジスタ1の内容をパリティビットも含めて
退避レジスタ6に退避する。
一般に、データ構造(こ属するレジスタ1の動作は凍結
せず、もし他のソース(ステージOまたはE)からセッ
ト指示があれば、その指示通りに動かす必要がある。
せず、もし他のソース(ステージOまたはE)からセッ
ト指示があれば、その指示通りに動かす必要がある。
これは障害を起こしたステージより後にあるOやEのス
テージの動作の正常な続行を保証するために必要なこと
である。
テージの動作の正常な続行を保証するために必要なこと
である。
退避レジスタ6は、その時障害を起こしたレジスタ1の
内容が失われることを防ぐ目的で設けたものである。
内容が失われることを防ぐ目的で設けたものである。
本例では、退避レジスタ6を1個だけ示したが、緩衝記
憶装置のデータレジスタ、アドレスレジスタのように、
後続ステージの動作によって内容が破壊される可能性の
あるレジスタを必要なだけ退避させるように退避レジス
タを設けることは容易に可能である。
憶装置のデータレジスタ、アドレスレジスタのように、
後続ステージの動作によって内容が破壊される可能性の
あるレジスタを必要なだけ退避させるように退避レジス
タを設けることは容易に可能である。
このようにして障害の発生したパイプラインP−3より
先に進んでいるパイプライン(すなわち、障害発生時、
ステージ0 、 E#こあったパイプラインP−t、p
−2)の動作が各々の命令の区切りまで進行し終ると、
そこで次のEステージの代りに、障害処理のステージを
起こし、障害処理を行う。
先に進んでいるパイプライン(すなわち、障害発生時、
ステージ0 、 E#こあったパイプラインP−t、p
−2)の動作が各々の命令の区切りまで進行し終ると、
そこで次のEステージの代りに、障害処理のステージを
起こし、障害処理を行う。
障害処理の内容は、退避レジスタ6の内容を(パリティ
ビットも情報ビットとして)出力バス8を通してログア
ウトすることを除けば、通常知られている障害処理、す
なわち、ハードウェアの一時的な凍結、ログアウト、障
害の解析、障害情報の編集、再実行、ソフトウェアへの
割込み、通常動作モードへの復帰などである。
ビットも情報ビットとして)出力バス8を通してログア
ウトすることを除けば、通常知られている障害処理、す
なわち、ハードウェアの一時的な凍結、ログアウト、障
害の解析、障害情報の編集、再実行、ソフトウェアへの
割込み、通常動作モードへの復帰などである。
この場合、ステージ状態レジスタの第2部分11,14
,17゜20に保持しておく再実行状態情報は、再実行
lこ必要な判断lこ役立ち、また退避レジスタ6のログ
アウトは、障害発生時の正確な情報を伝えるのに役立つ
。
,17゜20に保持しておく再実行状態情報は、再実行
lこ必要な判断lこ役立ち、また退避レジスタ6のログ
アウトは、障害発生時の正確な情報を伝えるのに役立つ
。
以上説明したように、本発明によれば、先行制御方式を
とる情報処理装置において、先行側(財)の下に動作し
ているハードウェアの障害が発生した時、そのステージ
を認識して、それ自身およびそれ以前のステージの動作
を凍結し、それより後のステージの動作を完了させてか
ら障害処理を行うため、障害発生状況の保存が正しく行
われること、障害発生状況の分解能が上り、したがって
障害の真の原因の追求が容易となること、更に再実行成
功の可能性が高まること、等の効果が得られる。
とる情報処理装置において、先行側(財)の下に動作し
ているハードウェアの障害が発生した時、そのステージ
を認識して、それ自身およびそれ以前のステージの動作
を凍結し、それより後のステージの動作を完了させてか
ら障害処理を行うため、障害発生状況の保存が正しく行
われること、障害発生状況の分解能が上り、したがって
障害の真の原因の追求が容易となること、更に再実行成
功の可能性が高まること、等の効果が得られる。
第1図は先行制御のステージ動作を説明する図。
第2図は障害発生時のステージ制御の従来技術を説明す
る図、第3図は本発明の一実施例のブロック図、第4図
は本発明による障害発生時のステージ制御を説明する図
である。 1・・・・・・レジスタ、2・・・・・・チェック回路
、3・・・・・・チェックレジスタ、4・・・・・・O
R回路、5・・・・・・障害制御回路、6・・・・・・
退避レジスタ、10−21・・・・・ステージ状態レジ
スタ、22・・・・・デコード信号発生回路、23・・
・・・・エンコード信号発生回路。
る図、第3図は本発明の一実施例のブロック図、第4図
は本発明による障害発生時のステージ制御を説明する図
である。 1・・・・・・レジスタ、2・・・・・・チェック回路
、3・・・・・・チェックレジスタ、4・・・・・・O
R回路、5・・・・・・障害制御回路、6・・・・・・
退避レジスタ、10−21・・・・・ステージ状態レジ
スタ、22・・・・・デコード信号発生回路、23・・
・・・・エンコード信号発生回路。
Claims (1)
- 【特許請求の範囲】 1 各命令の処理ステージをオーバーラツプさせ、複数
の命令を並行に処理する先行制御形式の情報処理装置に
おいて、先行制御に係るハードウェア障害が発生した時
、そのハードウェア動作を制御していた処理ステージお
よび該処理ステージの処理より前に属する処理を行う処
理ステージの動作を一時的(こ凍結し、且つ、前記処理
ステージの処理より後に属する処理を行う処理ステージ
については障害発生命令に先行する命令の処理を正常に
完了させた後、障害処理を行うことを特徴とする情報処
理装置の障害処理方式。 2、特許請求の範囲第1項記載の障害処理方式において
、障害発生処理ステージより後に属する処理を行う処理
ステージの動作(こよってその内容が破壊される可能性
のあるレジスタ類の内容を、障害発生時に退避レジスタ
に退避することを特徴とする情報処理装置の障害処理方
式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP53124140A JPS5856141B2 (ja) | 1978-10-11 | 1978-10-11 | 情報処理装置の障害処理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP53124140A JPS5856141B2 (ja) | 1978-10-11 | 1978-10-11 | 情報処理装置の障害処理方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5552157A JPS5552157A (en) | 1980-04-16 |
JPS5856141B2 true JPS5856141B2 (ja) | 1983-12-13 |
Family
ID=14877906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP53124140A Expired JPS5856141B2 (ja) | 1978-10-11 | 1978-10-11 | 情報処理装置の障害処理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS5856141B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59218556A (ja) * | 1983-05-27 | 1984-12-08 | Fujitsu Ltd | マイクロプログラム制御方式 |
JPS60254331A (ja) * | 1984-05-31 | 1985-12-16 | Nec Corp | デ−タ処理システムにおける障害処理方式 |
JPS6277650A (ja) * | 1985-09-30 | 1987-04-09 | Nec Corp | 先行制御部を備えた情報処理装置 |
JP2007018454A (ja) * | 2005-07-11 | 2007-01-25 | Toshiba Corp | マイクロプロセッサ |
-
1978
- 1978-10-11 JP JP53124140A patent/JPS5856141B2/ja not_active Expired
Also Published As
Publication number | Publication date |
---|---|
JPS5552157A (en) | 1980-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1235816A (en) | Error recovery system in a data processor having a control storage | |
EP2159709B1 (en) | Error correcting method and computing element | |
JPH02135536A (ja) | チエツクポイント再試行機構 | |
JPH02257219A (ja) | パイプラインプロセッサ装置および方法 | |
JPS63273942A (ja) | 論理演算装置 | |
JPS5856141B2 (ja) | 情報処理装置の障害処理方式 | |
JPS60142747A (ja) | 命令再実行制御方式 | |
JPH11327940A (ja) | 命令再実行制御方式 | |
JPH05100883A (ja) | データ処理用半導体装置 | |
JPH0621993B2 (ja) | 命令再実行制御方式 | |
JPS59129995A (ja) | 記憶装置 | |
JPS58199499A (ja) | デ−タ処理装置 | |
JP2559531B2 (ja) | 二重化システムのエラーチェック回路 | |
JPH0233173B2 (ja) | ||
JP2793396B2 (ja) | 電子計算機の演算ステータス保持装置 | |
JP2786215B2 (ja) | 再開処理制御方式 | |
JPS60214043A (ja) | パイプライン制御回路 | |
CN117112318A (zh) | 基于risc-v架构的双核容错系统 | |
JPS61139836A (ja) | パイプライン計算機の命令制御方式 | |
JPH03189736A (ja) | 選択回路の障害検出方式 | |
JPH03288229A (ja) | 命令再試行処理方式 | |
JPH08166891A (ja) | フォールトトレラントコンピュータシステム | |
JPS63265337A (ja) | プロセツサ装置の障害検出回路 | |
JPH06259250A (ja) | 情報処理装置 | |
JPH0230058B2 (ja) |