JPS62247426A - 大量デ−タ処理命令の処理方式 - Google Patents

大量デ−タ処理命令の処理方式

Info

Publication number
JPS62247426A
JPS62247426A JP61062427A JP6242786A JPS62247426A JP S62247426 A JPS62247426 A JP S62247426A JP 61062427 A JP61062427 A JP 61062427A JP 6242786 A JP6242786 A JP 6242786A JP S62247426 A JPS62247426 A JP S62247426A
Authority
JP
Japan
Prior art keywords
processing
register
instruction
data
bytes
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
JP61062427A
Other languages
English (en)
Inventor
Masato Tanaka
正人 田中
Katsumi Onishi
大西 克巳
Yuji Oinaga
勇次 追永
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP61062427A priority Critical patent/JPS62247426A/ja
Publication of JPS62247426A publication Critical patent/JPS62247426A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Retry When Errors Occur (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 パイプライン処理方式で大量データ処理を行う命令を実
行する際、予め定めた任意のバイト数ごとにチェックポ
イントを置いて、処理用レジスタを更新することにより
、処理点を細か(分割実行し、エラーによる再実行時に
エラーが再発行する確率を小さくする。
〔産業上の利用分野〕
本発明は、パイプライン処理方式の情報処理装置に関す
るものであり、特に単一命令で大量データの処理を行う
命令(以下LONG命令と呼ぶ)の処理方式に関する。
〔従来の技術〕
従来、パイプライン処理方式の情報処理装置でLONG
命令の処理を開始するとき、その処理に必要なオペラン
ドのアドレスや処理長等の情報を処理用レジスタから受
けとるフローを経た後、処理長分のオペランドについて
データ処理のフローを繰り返す。そしてデータ処理がす
べて終わると。
レジスタ情報を書き換えてLONG命令を終了する。
このLONG命令の処理中に、何らかのエラーが報告さ
れると、LONG命令の処理をその時点で中断し、エラ
ー処理のステートに移るが、そのエラー処理が終わると
、命令を再読み出しくREIFETCIと呼ばれる)し
て、再びLONG命令の処理を開始する。
しかしこの命令は、一旦最初にオペランドアドレスを受
けとると、完全にその処理が終了しない限り、処理用レ
ジスタのオペランドアドレス等の書き換えを行わない。
このため、エラー発生による命令の再処理では、最初か
ら処理を開始する。
〔発明が解決しようとする問題点〕
従来の情報処理装置では、LONG命令の処理用レジス
タの内容は、LONG命令が処理途中でのエラー発生に
より再実行となった場合には、書き換えられない。そし
て処理用レジスタの内容が変わらない限り、再開された
LONG命令の処理は前回と同じオペランドアドレスか
ら同じ処理車で行われることになるため、エラー発生確
率は前回と同じ大きさであるから高く、また前回、エラ
ーが発生するまでに処理された分は重複処理となるため
、無駄が生じるという問題があった。
〔問題点を解決するための手段〕
本発明は、上記した問題点を解決するため、LONG命
令による処理を小さな処理単位で区分し。
エラーによる再発行ではその処理単位から再開させるよ
うにするものである。
そのため、LONG命令によるデータ処理を行う場合、
ある大きさくnバイト)の処理ごとにチェックポイント
を設けておいて、そのポイントで処理を一時的に抜は出
し、処理用のレジスタをそのポイント以後の処理用に書
き換える。その後再び自命令の再処理を行うが、レジス
タが書きかえられているため1次の処理単位のnバイト
の処理を行う。この動作の繰り返しにより、大量データ
の処理を完了する。
第1図に本発明の原理的構成を示す。
図において、10は処理データであり、その0PAo 
、OPA+ 、・・・はオペランドアドレス+’O+2
3.・・・は処理車、そしてnは処理用レジスタを書き
換える処理単位となるバイト数である。また11は処理
用レジスタ、12はパイプライン処理部、13は処理単
位検出部、14は処理用レジスタ更新部である。
LONG命令の実行開始に当たって、処理用レジスタ1
1には、処理データ10のオペランドアドレス0PAO
と処理車10とが初期設定される。
パイプライン処理部12は、処理用レジスタ11に設定
されているオペランドアドレスと処理車の情報に基づい
て、処理データ10の処理を開始する。
処理単位検出部13は、パイプライン処理部12の処理
量がnバイトに達したときをチェックポイントとして検
出し、処理を中断して、処理用レジスタ更新部14に通
知する。
処理用レジスタ更新部14は、チェックポイントにおい
て、処理用レジスタ11のオペランドアドレスをOPA
、に、そして処理車をn、に更新する。ここで0PA1
 =OPA、+n、n+ =n。
−nである。
処理用レジスタ11の更新が完了すると、再びLONG
命令を読み出し、パイプライン処理部12は処理を再開
する。以下、nバイトごとのチェックポイントにおいて
同じ処理が繰り返され、処理車lに達したときに終了す
る。
〔作用〕
LONG命令が処理を中断された後に再読み出しされて
処理を再開するとき、処理データの開始位置は、更新さ
れた処理用レジスタのオペランドアドレスにしたがう。
処理用レジスタの内容更新は、nバイトの処理単位ごと
に行われるから、エラーがどの位置で発生しても、第1
図の処理データ10上に例示されているように、エラー
発生後の命令再読み出しでは、LONG命令開始時のオ
ペランドアドレスには戻らず、最大nバイト前のオペラ
ンドアドレスに戻るため、リトライ (RETRY)が
許可される確率が向上する(詳細は後述される)ととも
に。
従来方式よりも処理量を減少できるため、エラー発生確
率も低下させることができる。
次に、第2図により、リトライの許可/不許可の条件と
許可の確率とについて説明する。
図(a)は、従来方式の例であり、リトライが不許可と
なる場合を示し、また図(b)は9本発明方式の例であ
り、リトライが許可される場合を示す。図(a)、(b
)のいずれも、LONG命令の1つであるデータのブロ
ック転送を行うMOV E  CHA RA CT E
 RL ON G命令(以後。
MOVE  LONG命令と略称する)の同じ処理を示
したものである。
このMOVE  LONG命令による処理は、メモリ上
のオペランドアドレス0P2Aで処理長lの処理データ
(オペランド)20を読み出して。
処理データ20′で示されるように、同一メモリ上のオ
ペランドアドレス0PIA (<oP2A)で処理長l
の位置に書き込む処理を行う。すなわち。
処理データ20の全体が(OP2A−〇PIA)のアド
レス距離だけ前方へ移動される。そして移動された処理
データ20′の後の方の部分は5元の処理データ20の
前の方の重複部分に重ね書きされるため、その部分の元
のデータは破壊されている。
したがって、MOVE  LONG命令の処理が進むほ
ど1元の処理データの一部が破壊されてしまう量は増大
し、またその破壊された位置まで戻るリトライは許可で
きなくなる。この条件は2次のように表される。
(OP2A −0PIA <処理済長)−リトライ不許
可図(a)の従来方式の場合には、エラー発生時の命令
再読み出しでは、処理用レジスタの内容は最初のままで
あるため、処理データ20のオペランドアドレス○P2
Aに戻るため、上記のりトライネ許可条件にかかる確率
が大きくなる。
これに対して3図(b)の本発明方式の場合には、nバ
イト単位にチェックポイントで処理が区分されて、その
たびに処理用レジスタが更新されるため、エラー発生時
の命令再読み出しでは、直前のチェックポイント(図示
の例ではオペランドアドレス0P2A:l)まで最大n
バイト戻ればよいため。
(OP2A  0PIA)>n である限り、リトライを許可できるため、リトライが許
可できる確率を大きくできる。
〔実施例〕
第3図に本発明の1実施例の構成を、そして第4図に処
理フローを示す。
第3図および第4図において、 D、 A、 T、 B
E、Wは、パイプラインを構成する要素の処理ステージ
であり9次に示す内容のものである。
D=命令デコード Aニアドレス生成 Tニアドレス変換 B:バッファ読み出し E:実行(演算) W:結果の書き込み 第3図において1図上段のフローは2通常のパイプライ
ン処理の本体部分であり、まず読み出しと書き込み用の
ワーキングアドレスレジスタWAR+ 、WARzと、
ペースレジスタBR,インデックスレジスタXR,ディ
スプレイスメントレジスタDRとを用いて実効アドレス
発生器EAGでアドレス演算を行い、オペランド実効ア
ドレス○EAを作成する。
この実効アドレスをさらに実アドレスに変換して、ロー
カルバッファLBSをアクセスし、オペランドを読み出
す(フェッチ)。このオペランドに基づいて演算ユニッ
トE Unitで演算し、結果をローカルバッファLB
S (実質的にはメモリS Unit)あるいはレジス
タスタックREG  5TACKに書き込む(ストア)
次に図中段、下段のフローは、ブロック転送の単位バイ
ト長りに基づいて、転送のたびに2つのオペランドOP
1とO20の逐次的なブロックのオペランドアドレスと
残り処理長とを算出し、保持する処理と、チェックポイ
ントを検出し、  LONG命令の処理用情報を書き換
える処理とを行う。
0PIA、0P2Aは、各オペランドOP1゜O20の
逐次のブロックのオペランドアドレスを保持する。LO
NC;命令の専用レジスタであり。
0PIL、0P2Lは対応する残りの処理部を保持する
。LONG命令の専用レジスタである。
またLONG命令の処理用レジスタは、REGSTAC
K内に設けられており、2つのオペランドOP1.OP
2の各オペランドアドレスと処理部ADa 、La 、
ADb 、Lbが格納されている。
ブロック転送が行われるたびに専用レジスタ0PIL、
0P2L、0PIA、0P2Aは更新され、同時にカウ
ンタITCにより転送バイト長しの累算が行われる。こ
のカウンタITCの値ΣLがnバイトに達したとき、チ
ェックポイントと判定して、nバイト検出フラグをON
にセットし。
専用レジスタ0PIL、oP2L、0PIA、0P2A
の内容に基づいて、REG  5TACKの処理用レジ
スタの情報を書き換えさせる。
次に、第4図によりLONG命令処理フローについて説
明する。
図の処理フローは、MOVE  LONG命令の基本フ
ローであり、0,1.・・・、8は9例外検出やLON
G命令専用のレジスタ(OPIL、0P2L等)を初期
設定するシーケンスである。
続<9.A、9.A、 ・・・、9.Aは、メモリ(S
Unit)からのオペランドのフェッチ(9)とメモリ
(S unit)へのストアとを一対にして繰り返し、
ブロック転送を行うシーケンスである。このシーケンス
の終りで、各転送バイトLの累算値ΣLがチェックポイ
ントの処理単位lを超えたことにより。
END条件が成立している。
次のB、C,・・・、Fは、LONG命令の専用レジス
タ0PIL、  ○P2L、0PIA、0P2Aの内容
を、レジスタスタックREG  5TACKへ転送し、
処理用情報A Da、 La、 A Db、 Lbを書
き換えるシーケンスである。この最後のFでは。
END条件の検出が行われ、nバイト転送終了であれば
固定したままとする制御を行い、LONG命令の処理を
再開する。そしてPSWは更新せず。
全バイトの転送を終了したときにPSWを更新し。
次の命令処理を行う。
転送中にエラーが発生した場合にはLONG命令が中断
され、エラー処理を行った後、中断されている命令がリ
トライ可能かどうかを判定し、リトライ可能であればそ
の命令を再読み出しくREIFETCH)して、REG
  5TACKにある処理用レジスタの内容に基づく処
理を再実行する。
〔発明の効果〕
本発明によれば、LONG命令の処理中におけるエラー
発生時のりトライ実行可能性が高まるとともに、再エラ
ー発生確率を低下させることができ、また重複処理によ
る無駄を削減することができるため、システムの処理効
率が著しく向上する。
【図面の簡単な説明】
第1図は本発明の原理的構成図、第2図は本発明方式と
従来方式との作用の違いを説明するための動作図、第3
図は本発明の1実施例の構成図。 第4図は第3図の実施例構成に基づく処理フロー図であ
る。 第1図中。 lO:処理データ(オペランド) 11:処理用レジスタ 12:パイプライン処理部 14:処理用レジスタ更新部 0PAo 、0PAI 、・・・ニオペランドアドレス
!。、11.・・・:処理部 n:処理単位のバイト数

Claims (1)

    【特許請求の範囲】
  1. パイプライン処理を行う情報処理装置において、大量デ
    ータの処理を行う命令を実行する際に、ある処理単位毎
    にチェックポイントを設け、そこでオペランドアドレス
    や処理長等を設定する処理用レジスタの内容を以後の処
    理用に書き換え、同じ命令を再読み出しして、処理を続
    行することを特徴とする大量データ処理命令の処理方式
JP61062427A 1986-03-20 1986-03-20 大量デ−タ処理命令の処理方式 Pending JPS62247426A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61062427A JPS62247426A (ja) 1986-03-20 1986-03-20 大量デ−タ処理命令の処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61062427A JPS62247426A (ja) 1986-03-20 1986-03-20 大量デ−タ処理命令の処理方式

Publications (1)

Publication Number Publication Date
JPS62247426A true JPS62247426A (ja) 1987-10-28

Family

ID=13199852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61062427A Pending JPS62247426A (ja) 1986-03-20 1986-03-20 大量デ−タ処理命令の処理方式

Country Status (1)

Country Link
JP (1) JPS62247426A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0195336A (ja) * 1987-10-07 1989-04-13 Nec Corp リトライ制御方式
JPH01230131A (ja) * 1988-03-10 1989-09-13 Agency Of Ind Science & Technol 並列処理装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55103656A (en) * 1979-01-31 1980-08-08 Toshiba Corp Information processing system
JPS55118158A (en) * 1979-03-05 1980-09-10 Fuji Electric Co Ltd Retrial method to malfunction
JPS57164343A (en) * 1981-03-31 1982-10-08 Fujitsu Ltd Check point save system
JPS6065346A (ja) * 1983-09-19 1985-04-15 Shimadzu Corp コンピュ−タシステムの再作動装置
JPS6125250A (ja) * 1984-07-16 1986-02-04 Nec Corp 情報処理装置の障害回復方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55103656A (en) * 1979-01-31 1980-08-08 Toshiba Corp Information processing system
JPS55118158A (en) * 1979-03-05 1980-09-10 Fuji Electric Co Ltd Retrial method to malfunction
JPS57164343A (en) * 1981-03-31 1982-10-08 Fujitsu Ltd Check point save system
JPS6065346A (ja) * 1983-09-19 1985-04-15 Shimadzu Corp コンピュ−タシステムの再作動装置
JPS6125250A (ja) * 1984-07-16 1986-02-04 Nec Corp 情報処理装置の障害回復方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0195336A (ja) * 1987-10-07 1989-04-13 Nec Corp リトライ制御方式
JPH01230131A (ja) * 1988-03-10 1989-09-13 Agency Of Ind Science & Technol 並列処理装置

Similar Documents

Publication Publication Date Title
US3736566A (en) Central processing unit with hardware controlled checkpoint and retry facilities
US4970641A (en) Exception handling in a pipelined microprocessor
EP0173515A2 (en) Error recovery system in a data processor having a control storage
JPH0517588B2 (ja)
US5003458A (en) Suspended instruction restart processing system based on a checkpoint microprogram address
JPH07248897A (ja) コンピュータ・システムにおける例外からの回復方法、及びそのための装置
EP0127640A1 (en) Virtual memory data processor
EP0588252A2 (en) Apparatus for implementing interrupts in pipelined processors
CN1117166A (zh) 双执行部件处理器的反回逻辑线路
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
JPS62247426A (ja) 大量デ−タ処理命令の処理方式
US6681322B1 (en) Method and apparatus for emulating an instruction set extension in a digital computer system
JP4155052B2 (ja) エミュレータ、エミュレーション方法およびプログラム
US5138617A (en) Method for masking false bound faults in a central processing unit
KR930005767B1 (ko) 마이크로프로그램 제어를 기초로한 데이타 처리장치
JP2671160B2 (ja) 例外処理方式
JPH04106652A (ja) 例外処理システム
JPH04181331A (ja) 命令リトライ方式
JPS58166454A (ja) デ−タ処理装置
JPH0744398A (ja) 情報処理装置
JPS6149695B2 (ja)
JP2568708B2 (ja) ダブルリンクキュー更新方法
JPS6012656B2 (ja) リトライ制御方式
JPS62219139A (ja) 命令実行方式
JPH0519745B2 (ja)