JPH01314339A - 命令再試行方式 - Google Patents
命令再試行方式Info
- Publication number
- JPH01314339A JPH01314339A JP63146672A JP14667288A JPH01314339A JP H01314339 A JPH01314339 A JP H01314339A JP 63146672 A JP63146672 A JP 63146672A JP 14667288 A JP14667288 A JP 14667288A JP H01314339 A JPH01314339 A JP H01314339A
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- instruction
- memory
- calculator
- 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
Links
Landscapes
- Retry When Errors Occur (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
命令の再試行を行う命令再試行方式に関し、アドレス計
算器によって計算された後のアドレスをセーブするセー
ブレジスタを設け、ハードウェアの簡素化および信頼性
を向上させることを目的とし、 汎用レジスタに格納されている値からアドレス計算する
アドレス計算器と、このアドレス計算器によってアドレ
ス計算された結果のアドレスをセーブするアドレスセー
ブレジスタとを備え、上記アドレス計算器によってアド
レス計算された結果のアドレスを用いてメモリから該当
データを取り出して演算する際にエラーが発生した場合
、上記アドレスセーブレジスタにセーブされているアド
レスを用いてメモリから該当データを取り出して再試行
するように構成する。
算器によって計算された後のアドレスをセーブするセー
ブレジスタを設け、ハードウェアの簡素化および信頼性
を向上させることを目的とし、 汎用レジスタに格納されている値からアドレス計算する
アドレス計算器と、このアドレス計算器によってアドレ
ス計算された結果のアドレスをセーブするアドレスセー
ブレジスタとを備え、上記アドレス計算器によってアド
レス計算された結果のアドレスを用いてメモリから該当
データを取り出して演算する際にエラーが発生した場合
、上記アドレスセーブレジスタにセーブされているアド
レスを用いてメモリから該当データを取り出して再試行
するように構成する。
本発明は、命令の再試行を行う命令再試行方式に関する
ものである。
ものである。
近年のコンピュータ1よ、エラーが発生してもダウンさ
せることなく再試行させて信頼性を向上させると共にハ
ードウェアを小型化することが要求されている。
せることなく再試行させて信頼性を向上させると共にハ
ードウェアを小型化することが要求されている。
C従来の技術と発明が解決しようとする課題C従来の命
令再試行方式は、第4図に示すように、汎用レジスタ1
1からアドレス計′JX器12に送出するアドレス計算
の元となる(a (ベースアドレスおよびインデックス
アドレスなど)をセーブレジスタ13にセーブすると共
に、アドレス計算器12に入力して計算したアドレスを
アドレスレジスタ15に格納し、メモリ16から該当デ
ータを取り出して演算するようにしている。この演算中
にエラーが発生した場合、セーブレジスタ13にセーブ
しておいた値を転送し、再度、アドレス計算器12によ
って計算したアドレスによってメモリから該当データを
取り出して再試行(再演算)するようにしていた。
令再試行方式は、第4図に示すように、汎用レジスタ1
1からアドレス計′JX器12に送出するアドレス計算
の元となる(a (ベースアドレスおよびインデックス
アドレスなど)をセーブレジスタ13にセーブすると共
に、アドレス計算器12に入力して計算したアドレスを
アドレスレジスタ15に格納し、メモリ16から該当デ
ータを取り出して演算するようにしている。この演算中
にエラーが発生した場合、セーブレジスタ13にセーブ
しておいた値を転送し、再度、アドレス計算器12によ
って計算したアドレスによってメモリから該当データを
取り出して再試行(再演算)するようにしていた。
このため、このセーブレジスタ13は、CPUの命令で
1度に扱われる汎用レジスタ11の最大語長に等しい桁
数を持つ必要があり、例えばシステム370ではLoa
d Multiple命令の場合に16語という大きな
桁数を持つ必要性が生じてしまうという問題があった。
1度に扱われる汎用レジスタ11の最大語長に等しい桁
数を持つ必要があり、例えばシステム370ではLoa
d Multiple命令の場合に16語という大きな
桁数を持つ必要性が生じてしまうという問題があった。
本発明は、アドレス計算器によって計算された後のアド
レスをセーブするセーブレジスタを設け、ハードウェア
の簡素化および信頼性を向上させることを目的としてい
る。
レスをセーブするセーブレジスタを設け、ハードウェア
の簡素化および信頼性を向上させることを目的としてい
る。
第1図は本発明の原理ブロック図を示す。
第1図において、汎用レジスタ1は、命令を実行するた
めに必要なアドレス情報などを格納するものである。
めに必要なアドレス情報などを格納するものである。
アドレス計算器2は、汎用レジスタ1から入力された値
(例えばベースアドレスおよびインデックスアドレスな
ど)に基づいて、メモリ6から該当データなどを読み出
すアドレスを計算するものである。
(例えばベースアドレスおよびインデックスアドレスな
ど)に基づいて、メモリ6から該当データなどを読み出
すアドレスを計算するものである。
アドレスセーブレジスタ3は、アドレス計算器2によっ
てアドレス計算されたアドレスをセーブするものである
。
てアドレス計算されたアドレスをセーブするものである
。
セレクタ4は、アドレス計算器2によって計算されたア
ドレス、あるいはアドレスセーブレジスタ3にセーブさ
れているアドレスのいれずれかを選択してアドレスレジ
スタ5に入力するものである。
ドレス、あるいはアドレスセーブレジスタ3にセーブさ
れているアドレスのいれずれかを選択してアドレスレジ
スタ5に入力するものである。
メモリ6は、データなどを格納するメモリである。
本発明は、第1図に示すように、アドレス計算器2が汎
用レジスタ1から取り出されて人力された値に基づいて
アドレス計算したアドレスを、アドレスセーブレジスタ
3およびセレクタ4を介してアドレスレジスタ5に格納
し、メモリ6からこのアドレスレジスタ5に格納された
アドレスに対応するデータなどを出力して所定の演算処
理を行わせるようにしている。この所定の演算処理の実
行中(例えば2サイクルで1つの命令を実行する時にお
ける2サイクル目)でエラーが発生した場合、アドレス
セーブレジスタ3にセーブしておいたアドレスを、セレ
クタ4およびアドレスレジスタ5を介してメモリ6に入
力して再度、該当データなどを出力して再試行させるよ
うにしている。
用レジスタ1から取り出されて人力された値に基づいて
アドレス計算したアドレスを、アドレスセーブレジスタ
3およびセレクタ4を介してアドレスレジスタ5に格納
し、メモリ6からこのアドレスレジスタ5に格納された
アドレスに対応するデータなどを出力して所定の演算処
理を行わせるようにしている。この所定の演算処理の実
行中(例えば2サイクルで1つの命令を実行する時にお
ける2サイクル目)でエラーが発生した場合、アドレス
セーブレジスタ3にセーブしておいたアドレスを、セレ
クタ4およびアドレスレジスタ5を介してメモリ6に入
力して再度、該当データなどを出力して再試行させるよ
うにしている。
従って、アドレス計算された後のアドレスをセーブする
アドレスセーブレジスタ3を設けることにより、メモリ
6のアドレスに対応する桁数(例えば1語)という小さ
な数をセーブするハードウェアを′$備すればよく、小
型化が可能となると共に、間車な構成で命令の再試行を
行い信頼性を向上させることが可能となる。
アドレスセーブレジスタ3を設けることにより、メモリ
6のアドレスに対応する桁数(例えば1語)という小さ
な数をセーブするハードウェアを′$備すればよく、小
型化が可能となると共に、間車な構成で命令の再試行を
行い信頼性を向上させることが可能となる。
次に、第2図および第3図を用いて本発明の1実施例の
構成および動作を順次詳細に説明する。
構成および動作を順次詳細に説明する。
第2図において、デコーダ1−1は、実行しようとして
いるマシン命令をデコードし、いずれの該当汎用レジス
タ1のアドレスが指示されているかを判別するものであ
る。
いるマシン命令をデコードし、いずれの該当汎用レジス
タ1のアドレスが指示されているかを判別するものであ
る。
汎用レジスタ1は、アドレス情報(例えばベースアドレ
ス、インデックスアドレス)などを格納する制?1ルジ
スタである(第3図を用いて後述する)。
ス、インデックスアドレス)などを格納する制?1ルジ
スタである(第3図を用いて後述する)。
アドレス計算器2は、汎用レジスタ1から入力された値
に基づいて、メモリ6からj亥当データを読み出すアド
レスを計算するものである。
に基づいて、メモリ6からj亥当データを読み出すアド
レスを計算するものである。
データレジスタfil 7−1.7〜2は、データを格
納するレジスタである。
納するレジスタである。
ALU (演算器)8は、各種演算を行うものである。
RR(演算結果レジスタ)9は、ALU8によって演算
された結果を格納するレジスタである。
された結果を格納するレジスタである。
次に、第2図構成の動作を説明する。
第2図において、マシン命令が指定されると、デコーダ
1−1によって汎用レジスタ1のアドレスが指定され、
読み出された値(例えばベースアドレスおよびインデッ
クスアドレス)がアドレス加算器2に入力され、アドレ
ス計算されたアドレスがアドレスレジスタ5およびアド
レスセーブレジスタ3に格納される。アドレスレジスタ
5に格納されたアドレスがメモリ6に入力され、該当ア
ドレスから読み出されたデータがデータレジスタ7−1
に格納され、更にALU (演算器)8に人力されて、
データレジスタ7−2から当8亥ALU8に入力された
値との間で指示された演算を行い、その結果をRr(9
に格納する。このRR9の結果に対応して汎用レジスタ
1の内容を更新して1サイクルを終了する。
1−1によって汎用レジスタ1のアドレスが指定され、
読み出された値(例えばベースアドレスおよびインデッ
クスアドレス)がアドレス加算器2に入力され、アドレ
ス計算されたアドレスがアドレスレジスタ5およびアド
レスセーブレジスタ3に格納される。アドレスレジスタ
5に格納されたアドレスがメモリ6に入力され、該当ア
ドレスから読み出されたデータがデータレジスタ7−1
に格納され、更にALU (演算器)8に人力されて、
データレジスタ7−2から当8亥ALU8に入力された
値との間で指示された演算を行い、その結果をRr(9
に格納する。このRR9の結果に対応して汎用レジスタ
1の内容を更新して1サイクルを終了する。
この際、上述した一連の処理で終了するマシン命令の場
合(1サイクルで終了するマシン命令の場合)は、汎用
レジスタ1の内容が最終サイクル、即ちD (Deco
de) 、A (Addressing)、B (85
Access) 、E(Execute) 、W(Wr
ite) という5サイクルのうちの最終サイクルWで
更新するため、エラーが発生しても、エラーが検出され
た時点で処理を止め、汎用レジスタlに格納されたまま
で更新されていない内容(アドレス情報)を用いて再試
行することができる。しかし、■サイクルで命令の処理
が終了しないような例えばLoad Mutipule
命令などを実行中にエラーが検出された場合、汎用レジ
スタ1の内容が更新されてしまっているので、本実施例
に係わるアドレスセーブレジスタ3から取り出したアド
レスを、セレクタ4およびアドレスレジスタ5を介して
メモリ6に入力して再試行するようにしている。
合(1サイクルで終了するマシン命令の場合)は、汎用
レジスタ1の内容が最終サイクル、即ちD (Deco
de) 、A (Addressing)、B (85
Access) 、E(Execute) 、W(Wr
ite) という5サイクルのうちの最終サイクルWで
更新するため、エラーが発生しても、エラーが検出され
た時点で処理を止め、汎用レジスタlに格納されたまま
で更新されていない内容(アドレス情報)を用いて再試
行することができる。しかし、■サイクルで命令の処理
が終了しないような例えばLoad Mutipule
命令などを実行中にエラーが検出された場合、汎用レジ
スタ1の内容が更新されてしまっているので、本実施例
に係わるアドレスセーブレジスタ3から取り出したアド
レスを、セレクタ4およびアドレスレジスタ5を介して
メモリ6に入力して再試行するようにしている。
以上のように、アドレス計算器2によってアドレス計算
したアドレスをアドレスセーブレジスタ3にセーブして
おき、再試行する際にこのアドレスセーブレジスタ3か
ら取り出したアドレスをメモリ6に入力して再試行する
ことにより、筒車なハードウェア構成によって再試行を
行うことが可能となる。
したアドレスをアドレスセーブレジスタ3にセーブして
おき、再試行する際にこのアドレスセーブレジスタ3か
ら取り出したアドレスをメモリ6に入力して再試行する
ことにより、筒車なハードウェア構成によって再試行を
行うことが可能となる。
尚、演算処理中に発生するエラーとしては、例えばRR
(演算結果レジスタ)9で検出されるパリティエラなど
がある。
(演算結果レジスタ)9で検出されるパリティエラなど
がある。
次に、第3図を用いてアドレス計算器2によるアドレス
計算例について説明する。
計算例について説明する。
第1に、アドレス計算器に2人力する場合について説明
する。この場合には、上段に示すように、汎用レジスタ
1−1からBa5e Address (ベースアドレ
ス)およびIndex Address (インデッ
クスアドレス)を続み出し、アドレス計算器2−1がこ
れら両者を加算して所望のアドレスを計算し、アドレス
セーブレジスタ3−1およびアドレスレジスタ5−1に
格納するようにしている。
する。この場合には、上段に示すように、汎用レジスタ
1−1からBa5e Address (ベースアドレ
ス)およびIndex Address (インデッ
クスアドレス)を続み出し、アドレス計算器2−1がこ
れら両者を加算して所望のアドレスを計算し、アドレス
セーブレジスタ3−1およびアドレスレジスタ5−1に
格納するようにしている。
第2に、アドレス計算器に3人力する場合について説明
する。この場合には、中段に示すように、汎用レジスタ
1−1からBa5e Address (ベースアドレ
ス)およびIndex Address (インデッ
クスアドレス)を読み出してアドレス加算器2−1に入
力すると共にDisplacemet Address
をアドレス加算器2−1に入力し、アドレス計算器2−
1がこれら3者を加算して所望のアドレスを計算し、ア
ドレスセーブレジスタ3−1およびアドレスレジスタ5
−1に格納するようにしている。
する。この場合には、中段に示すように、汎用レジスタ
1−1からBa5e Address (ベースアドレ
ス)およびIndex Address (インデッ
クスアドレス)を読み出してアドレス加算器2−1に入
力すると共にDisplacemet Address
をアドレス加算器2−1に入力し、アドレス計算器2−
1がこれら3者を加算して所望のアドレスを計算し、ア
ドレスセーブレジスタ3−1およびアドレスレジスタ5
−1に格納するようにしている。
そして、第1あるいは第2でアドレス計算したアドレス
をメモリ6に入力して該当アドレスからデータを読み出
し、指示された演算を行い、その結果に対応して汎用レ
ジスタ1の内容を更新するようにしている。この演算処
理中にエラーが発生した場合には、既述しように、アド
レスセーブレジスタ3にセーブされているアドレスを用
いて再試行するようにしている。
をメモリ6に入力して該当アドレスからデータを読み出
し、指示された演算を行い、その結果に対応して汎用レ
ジスタ1の内容を更新するようにしている。この演算処
理中にエラーが発生した場合には、既述しように、アド
レスセーブレジスタ3にセーブされているアドレスを用
いて再試行するようにしている。
以上説明したように、本発明によれば、アドレス計算し
た後のアドレスをセーブするアドレスセーブレジスタ3
を設ける構成を採用しているため、ハードウェアを簡略
化することができると共に、再試行によって13転性を
向上させることができる。
た後のアドレスをセーブするアドレスセーブレジスタ3
を設ける構成を採用しているため、ハードウェアを簡略
化することができると共に、再試行によって13転性を
向上させることができる。
第1図は本発明の原理ブロック図、第2図は本発明の1
実施例構成図、第3図は本発明の動作説明図、第4図は
従来技術の説明図を示す。 図中、1は汎用レジスタ、2はアドレス計算器、3はア
ドレスセーブレジスタ、4はセレクタ、5はアドレスレ
ジスタ、6はメモリを表す。
実施例構成図、第3図は本発明の動作説明図、第4図は
従来技術の説明図を示す。 図中、1は汎用レジスタ、2はアドレス計算器、3はア
ドレスセーブレジスタ、4はセレクタ、5はアドレスレ
ジスタ、6はメモリを表す。
Claims (1)
- 【特許請求の範囲】 命令の再試行を行う命令再試行方式において、汎用レジ
スタ(1)に格納されている値からアドレス計算するア
ドレス計算器(2)と、 このアドレス計算器(2)によってアドレス計算された
結果のアドレスをセーブするアドレスセーブレジスタ(
3)とを備え、 上記アドレス計算器(2)によってアドレス計算された
結果のアドレスを用いてメモリ(6)から該当データを
取り出して演算する際にエラーが発生した場合、上記ア
ドレスセーブレジスタ(3)にセーブされているアドレ
スを用いてメモリ(6)から該当データを取り出して再
試行するように構成したことを特徴とする命令再試行方
式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63146672A JPH01314339A (ja) | 1988-06-13 | 1988-06-13 | 命令再試行方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63146672A JPH01314339A (ja) | 1988-06-13 | 1988-06-13 | 命令再試行方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01314339A true JPH01314339A (ja) | 1989-12-19 |
Family
ID=15412997
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63146672A Pending JPH01314339A (ja) | 1988-06-13 | 1988-06-13 | 命令再試行方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01314339A (ja) |
-
1988
- 1988-06-13 JP JP63146672A patent/JPH01314339A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0528431B2 (ja) | ||
| JPH07110769A (ja) | Vliw型計算機 | |
| JPS6012185Y2 (ja) | デ−タ記憶装置 | |
| JPS5856040A (ja) | デ−タ処理装置 | |
| JPH082727Y2 (ja) | プログラマブルシ−ケンサ | |
| JP2912067B2 (ja) | 調速処理装置及びデバッグ装置 | |
| JPS59188900A (ja) | デ−タ処理装置 | |
| JPH0234058B2 (ja) | ||
| JP3124361B2 (ja) | メモリデータロード装置 | |
| JP3115428B2 (ja) | パイプライン制御方法 | |
| JP3523407B2 (ja) | 情報処理装置 | |
| JPS63285603A (ja) | プログラマブルコントロ−ラ | |
| JP2985093B2 (ja) | 演算制御装置 | |
| JPS6027046A (ja) | 情報処理装置 | |
| JPS62293432A (ja) | 情報処理装置 | |
| JPH04316127A (ja) | 情報処理装置 | |
| JPS59105110A (ja) | プログラマブルコントロ−ラ | |
| JPH04365170A (ja) | ディジタル信号処理用半導体集積回路装置 | |
| JPS6238748B2 (ja) | ||
| JPS5824822B2 (ja) | デ−タメモリブロックのアクセス方法 | |
| JPS6217837A (ja) | デ−タ処理システム | |
| JPS62295138A (ja) | アドレス生成方式 | |
| JPH02181821A (ja) | 演算装置 | |
| JPS63189942A (ja) | 情報処理装置 | |
| JPH0242530A (ja) | 中央処理装置 |