JPS6130298B2 - - Google Patents

Info

Publication number
JPS6130298B2
JPS6130298B2 JP56035837A JP3583781A JPS6130298B2 JP S6130298 B2 JPS6130298 B2 JP S6130298B2 JP 56035837 A JP56035837 A JP 56035837A JP 3583781 A JP3583781 A JP 3583781A JP S6130298 B2 JPS6130298 B2 JP S6130298B2
Authority
JP
Japan
Prior art keywords
instruction
counter
register
main memory
processing unit
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
Application number
JP56035837A
Other languages
English (en)
Other versions
JPS57150045A (en
Inventor
Tomoatsu Yanagida
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP56035837A priority Critical patent/JPS57150045A/ja
Publication of JPS57150045A publication Critical patent/JPS57150045A/ja
Publication of JPS6130298B2 publication Critical patent/JPS6130298B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Retry When Errors Occur (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 本発明は、命令再試行制御方式に関し、詳しく
は、データ処理装置に障害が発生した場合におい
て、ハードウエアによる命令再試行のためのデー
タ退避制御に関するものである。
電子計算機の命令語は、通常、命令の機能を示
すオペレーシヨン・コード部とその他の部分に分
けられ、その他の部分にはこの命令で使用するデ
ータ(オペランド)のアドレスや結果を格納する
場所のアドレス、さらにその他のパラメータ等が
入る。命令語の長さは機種により異なるが、通
常、各機種とも1種類以上の長さの命令語を備え
ている。
命令の形式は、その命令が扱うデータの存在す
る場所、例えばレジスタ、主記憶装置等により分
類され、レジスタからレジスタへの動作を指示す
るRR形式、レジスタとインデツクス修飾した主
記憶内アドレスで指定される語との動作を示す
RX形式、レジスタと主記憶との動作を指示する
RS形式、あるいは主記憶から主記憶への動作を
指示するSS形式等がある。
例えば、ムーブ・キヤラクタ(MVC)等の命
令は、SS形式であり、第1図aに示すように、
命令コードと、第1オペランドおよび第2オペラ
ンドの主記憶上のアドレスOP1,OP2と、第1
オペランドおよび第2オペランドのバイト数を指
定する部分Lにフイールド分離されている。ムー
ブ・キヤラクタ命令は、第1図bに示すように、
第2オペランド・アドレスOP2で指定されてい
る主記憶上のアドレス・データを第1オペラン
ド・アドレスOP2に移す命令であつて、何バイ
トのデータを移すかをLの部分で指定する。SS
形式の命令は6バイト長であり、そのうちLの部
分は8ビツトであるから、256バイトのデータを
指定することができる。そして、処理装置が第2
オペランド・アドレスのデータを1バイトずつ読
み出して、第1オペランド・アドレスに書き込む
機能を有する小形機種であれば、1回処理する度
ごとにLの部分の値を1バイトずつ減算してい
く。また、8バイトずつ処理できる大形機種であ
れば、1回処理する度ごとにLの部分の値を8バ
イトずつ減算するので、例えば256バイトのデー
タであれば32回の処理で第2オペランド・アドレ
スから第1オペランド・アドレスに全データを移
し替えることができる。
このように、1つの命令で、主記憶に対し演算
結果等の格納を複数回実施する命令において、そ
の命令実行中にハードウエア障害が発生して命令
再試行を実施する場合には、その命令によりどこ
まで演算結果が主記憶に正しく格納されている
か、あるいは主記憶上のオペランドがどこまで破
壊されているかを正確に把握する必要がある。正
確に把握できれば、正しく終了した格能動作の次
の演算結果の格納、つまり最初に障害が発生した
格能動作から命令再試行を開始することができ、
また破壊されたオペランド領域の変更前の値をあ
らかじめ退避しておくことにより、破壊されたオ
ペランド領域に変更前の値を再格納した後に、命
令再試行を開始することができる。
命令再試行時に、その命令実行中のどの時点で
障害が発生したかを把握するためには、一般に、
オペランド処理数をカウントするカウンタ(以後
Lカウンタと記す)が用いられる。Lカウンタの
値は、第1図aに示す命令中のLフイールドの値
と同一である。障害発生後、このLカウンタを参
照することにより、その命令がどこまで正しく終
了しているかを判断することができる。
ところが、データ処理装置の処理速度が高速化
するにしたがつて、障害が発生した場合に直ちに
処理動作を停止することが困難となり、障害が発
生してもしばらくの間Lカウンタの更新が実行さ
れるため、障害が発生して、処理動作が停止した
後にLカウンタを参照しても、正しく障害発生時
点を判断することが不可能となつている。
そこで、障害が発生した場合、最初から処理を
やり直す方法、あるいはかなりのステツプ数だけ
遡つた時点より命令の再試行を実行する方法等が
考えられるが、最近のデータ処理装置、特にマル
チプロセツサの場合には、主記憶上での2度書き
は禁止されていることもあるので、その場合には
任意領域のデータ内容が変更されると、プログラ
ムの終了と誤認されてしまう。
このため、命令の実行を複数の処理単位に分割
し、それらの各処理単位の最後にチエツク・ポイ
ントを設け、各チエツク・ポイントにおけるLカ
ウンタの値を退避用レジスタに退避する方法が提
案された。
この方法を実施することにより、障害発生後、
この退避用レジスタを参照すれば、最後に正しく
実行された処理単位のチエツク・ポイントにおけ
るLカウンタの値を知ることができる。
従来、マイクロ命令制御のデータ処理装置で
は、上記チエツク・ポイントにおけるLカウンタ
の退避をマイクロ命令で指定している。
しかし、Lカウンタの退避をマイクロ命令で指
定する方法では、(1)マイクロ命令作成時に、常に
Lカウンタの退避を考慮しなければならず、マイ
クロ命令の作成が繁雑になること、(2)Lカウンタ
の退避を指定するためのマイクロ命令のフイール
ドが必要となり、1マイクロ命令のピツト数が増
加するので、製産コストのアツプを招くこと、(3)
コスト・アツプを避けるため、Lカウンタ退避指
定をマイクロ命令の既存のフイールドで行うよう
にすると、既存のマイクロ・フアンクシヨンとの
フイールドの重複が生じ、性能を犠性にせざるを
得ない場合が起こる。
本発明の目的は、これら従来の欠点を解消する
ため、命令再試行に必要なオペランド処理数カウ
ンタの値をレジスタに退避する場合に、マイクロ
プログラムで退避を指定せずに、必要な時期に安
価な方法で自動的に退避することができる命令再
試行制御方式を提供することにある。
本発明は、1つの命令に関する演算結果の主記
憶への格納を、複数回に分けて実行するデータ処
理装置において、一般に、命令の処理単位が主記
憶への演算結果の格納単位と一致することに着目
して、主記憶への演算結果の格納が指定されてい
る時点のLカウンタの値をレジスタに退避させ、
格納動作中に障害が発生した場合等、格納動作が
正しく実行されないときには、退避を中止し、障
害発生時にLカウンタの退避レジスタを参照する
ことにより、最後に正しく実行された演算結果の
格納時のLカウンタの値を知ることを特徴として
いる。
以下、本発明の実施例を、図面により説明す
る。
第2図は、本発明の実施例を示す命令再試行制
御回路の論理図であり、第3図は第2図の動作を
示すタイム・チヤートである。
第2図においては、互いに半マシン・サイクル
の位相差をもつタイミング信号10,11に同期
して、主記憶への格納指示信号(SREQ)12を
順次ラツチするフリツプ・フロツプ1〜4が設け
られ、またタイミング信号10に同期して、Lカ
ウンタの出力信号14をラツチするデイレイ・レ
ジスタ(L1〜L3)5〜7が設けられている。
各フリツプ・フロツプ1〜4および各デイレイ・
レジスタ5〜7は、タイミング信号10,11が
“1”のときのD入力の値を保持する。アンド回
路9では、マシン・チエツク信号(MCK)13
とタイミング信号11とフリツプ・フロツプ4の
出力とのアンドをとり、退避レジスタ8のタイミ
ングを入力する。
命令の処理単位が3マシン・サイクルである場
合、命令の処理単位と結果の格納、Lカウンタの
更新時期、Lカウンタの退避時期の各時間関係
は、第3図に示されている。
第3図において、LはLカウンタの動作を示
し、処理単位ごとに値を更新する。L1〜L3は
そのデイレイ・レジスタ5〜7の動作を示し、例
えば処理単位のLカウンタの値を0.5マシン・
サイクルずつ遅延させて、これを保持する。
SREQは主記憶への格納指示信号12であり、処
理単位の最後のマシン・サイクルで発生するが、
D形フリツプ・フロツプ1〜4によりそれぞれ
0.5マシン・サイクルずつ遅延された信号SREQ
1〜4を発生させる。
MはLカウンタの退避レジスタ8の動作を示
し、最後のフリツプ・フロツプ4のデイレイ出力
信号(SREQ4)に同期して、最後のデイレイ・
レジスタ7に保持されているLカウンタの値をセ
ツトする。第3図では、処理単位におけるLカ
ウンタの値は、4マシン・サイクル遅延された時
点で退避レジスタ8にセツトされる。
MCKは、1つの処理単位の中で発生する障害
のうち最も遅く発生する障害の検出信号である。
第3図では、1つの処理単位の最後のマシン・サ
イクルが終了した1サイクル後に、その処理単位
で発生するすべての障害を検出することができ
る。
このように、第3図においては、各処理単位の
先頭でLカウンタが更新され、その値で示される
オペランドの演算が実行され、処理単位の最後に
主記憶への格納指定(SREQ)がなされている。
そして、退避レジスタ8には、L1〜L3で遅延
されたLカウンタの値が、SREQ4・MCKの条
件でセツトされる。
この例では、処理単位、では障害が発生せ
ず、処理単位で障害が発生した場合を示してい
る。すなわち、退避レジスタ8には、処理単位
のSREQ4信号でに対するLカウンタの値と、
処理単位のSREQ4信号でに対するLカウン
タの値とがそれぞれ格納されるが、処理単位の
SREQ4信号ではMCK信号により退避レジスタ
8の更新が抑止されるので、最後に正しく実行さ
れた処理単位に対するLカウンタの値が保持さ
れることになる。
なお、フリツプ・フロツプ1〜4によるSREQ
信号のデイレイ信号の数と、Lカウンタのデイレ
イ・レジスタ5〜7の数は、ある処理単位の演算
動作(主記憶への格納指示を含む)の終了後、何
マシン・サイクルでその処理単位に属するすべて
の障害が検出できるかに依存している。例えば、
第3図の場合よりも障害検出がさらに1マシン・
サイクルだけ遅れるならば、さらに2組のSREQ
信号のデイレイ信号と、Lカウンタのデイレイ・
レジスタが必要となる。
処理単位に属するすべての障害とは、入力デー
タのエラー、アドレスのエラー、演算エラー等で
あり、一般的にはパリテイ・チエツクや冗長回路
による比較チエツク等によりエラーを検出して
る。装置の処理速度が早い場合は、ケーブルを通
過する信号デイレイ時間等がマシン・サイクルに
比して大きくなるため、障害検出時点も遅くな
る。
このように、本発明によれば、オペランド処理
数カウンタの内容の退避を、主記憶への格納動作
と同期させて行い、かつ格納動作が属する命令処
理単位中に障害が発生した場合には退避を抑止す
るので、障害発生時に退避レジスタを参照すれ
ば、最後に正常に実行した処理単位のオペランド
処理回数が検出できる。したがつて、従来の方法
に比べ、マイクロプログラムで退避指示すること
なく、安価に命令再試行を制御することができ
る。
【図面の簡単な説明】
第1図は本発明に関する命令の形式および動作
説明図、第2図は本発明の実施例を示す命令再試
行制御回路の論理図、第3図は第2図の動作を示
すタイム・チヤートである。 1〜4:フリツプ・フロツプ、5〜7:デイレ
イ・レジスタ、8:退避レジスタ、9:アンド回
路、10,11:タイミング信号、12:主記憶
への格納指示信号(SREQ)、13:マシン・チ
エツク信号(MCK)、14:Lカウンタの出力信
号(L)。

Claims (1)

    【特許請求の範囲】
  1. 1 1つの命令に関する演算結果の主記憶への格
    納を、複数回に分けて実行する場合に、上記格納
    回数をオペランド処理数カウンタでカウントし、
    カウントした内容をレジスタに退避して、障害発
    生時に上記レジスタを参照して命令の再試行を実
    行するデータ処理装置において、命令の処理を演
    算結果の格納により区分される複数個の処理単位
    に分割し、演算結果の格納動作に同期して上記オ
    ペランド処理数カウンタの内容をレジスタに退避
    し、演算結果の格納動作が属する命令処理単位で
    障害が発生したときには上記レジスタへの退避を
    抑止することを特徴とする命令再試行制御方式。
JP56035837A 1981-03-12 1981-03-12 Control system of instruction retrial Granted JPS57150045A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56035837A JPS57150045A (en) 1981-03-12 1981-03-12 Control system of instruction retrial

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56035837A JPS57150045A (en) 1981-03-12 1981-03-12 Control system of instruction retrial

Publications (2)

Publication Number Publication Date
JPS57150045A JPS57150045A (en) 1982-09-16
JPS6130298B2 true JPS6130298B2 (ja) 1986-07-12

Family

ID=12453082

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56035837A Granted JPS57150045A (en) 1981-03-12 1981-03-12 Control system of instruction retrial

Country Status (1)

Country Link
JP (1) JPS57150045A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5998115A (ja) * 1982-11-29 1984-06-06 Mitsui Petrochem Ind Ltd 被覆用硬化型樹脂組成物

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5621251A (en) * 1979-07-30 1981-02-27 Fujitsu Ltd Retrial control system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5621251A (en) * 1979-07-30 1981-02-27 Fujitsu Ltd Retrial control system

Also Published As

Publication number Publication date
JPS57150045A (en) 1982-09-16

Similar Documents

Publication Publication Date Title
US4852092A (en) 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
US3564506A (en) Instruction retry byte counter
US3518413A (en) Apparatus for checking the sequencing of a data processing system
US4710866A (en) Method and apparatus for validating prefetched instruction
US3539996A (en) Data processing machine function indicator
US4231089A (en) Data processing system with apparatus for correcting microinstruction errors
US4385365A (en) Data shunting and recovering device
US3440619A (en) Control system for maintaining register contents during interrupt and branch conditions in a digital computer
US3603934A (en) Data processing system capable of operation despite a malfunction
US4757445A (en) Method and apparatus for validating prefetched instruction
JPS6286449A (ja) データ処理装置におけるページフォールト実行再開方法
US3248698A (en) Computer wrap error circuit
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
JPS6130298B2 (ja)
US4594710A (en) Data processing system for preventing machine stoppage due to an error in a copy register
JPS6012656B2 (ja) リトライ制御方式
EP0155275B1 (en) Prefetch validation
JPS6242301B2 (ja)
JPS60142747A (ja) 命令再実行制御方式
USRE27485E (en) Ls ec sdr
JPS5932821B2 (ja) 情報処理装置
JPS5917468B2 (ja) プログラムカウンタ軌跡記憶装置
JP2574918B2 (ja) 割り込み復帰処理方式
JP3014701B2 (ja) 情報処理装置
JPS60138639A (ja) 制御記憶の故障検出方式