JPH02148226A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH02148226A JPH02148226A JP63302903A JP30290388A JPH02148226A JP H02148226 A JPH02148226 A JP H02148226A JP 63302903 A JP63302903 A JP 63302903A JP 30290388 A JP30290388 A JP 30290388A JP H02148226 A JPH02148226 A JP H02148226A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- operand
- microinstruction
- resource
- exception
- 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
Landscapes
- Retry When Errors Occur (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明はディジタル情報処理装置に係り、特に命令実行
時の例外およびエラー発生において例外処理後、命令再
実行を実現する情報処理装置に関するものである。
時の例外およびエラー発生において例外処理後、命令再
実行を実現する情報処理装置に関するものである。
従来の技術
従来の情報処理装置としては、例えば特開昭57−20
9545号公報に示されている。第8図はこの従来の情
報処理装置のブロック回路図を示すものであり、101
0はマイクロ命令を記憶する命令レジスタである。10
11は命令コード部(以下、OPCと称す。)である。
9545号公報に示されている。第8図はこの従来の情
報処理装置のブロック回路図を示すものであり、101
0はマイクロ命令を記憶する命令レジスタである。10
11は命令コード部(以下、OPCと称す。)である。
1012はソースデータの格納の要、不要を示す格納ビ
ット部(以下、S、l!:称す。)である。1013は
命令用メモリすなわちローカル記憶(LS)1040の
アドレスを記憶するアドレス部である。1020は例え
ば5ビツトからなり、第1および第2ビツトはI”に固
定され、第3〜第5ビツトのみが更新される、すなわち
24〜31の値を格納できる更新可能レジスタである。
ット部(以下、S、l!:称す。)である。1013は
命令用メモリすなわちローカル記憶(LS)1040の
アドレスを記憶するアドレス部である。1020は例え
ば5ビツトからなり、第1および第2ビツトはI”に固
定され、第3〜第5ビツトのみが更新される、すなわち
24〜31の値を格納できる更新可能レジスタである。
1030は格納ピノ) 1012の値によって命令レジ
スタ1010のアドレス部1013もしくは更新可能レ
ジスタ1020を選択され、その値を記憶するアドレス
レジスタである。1040はアドレスレジスタ1030
の値をアドレスとしてアクセスされ、2つの領域に分割
されているローカル記憶である。1041はアドレスO
〜23の命令用データ領域である。1042はアドレス
24〜31の命令再実行用データ領域である。1050
はデータレジスタである。
スタ1010のアドレス部1013もしくは更新可能レ
ジスタ1020を選択され、その値を記憶するアドレス
レジスタである。1040はアドレスレジスタ1030
の値をアドレスとしてアクセスされ、2つの領域に分割
されているローカル記憶である。1041はアドレスO
〜23の命令用データ領域である。1042はアドレス
24〜31の命令再実行用データ領域である。1050
はデータレジスタである。
以上のように構成された従来の情報処理装置において、
以下、動作を説明する。
以下、動作を説明する。
初めに、命令レジスタ1010の格納ビット部1012
の値が′0″′の場合を想定する。この場合に、命令コ
ード部1011の内容がローカル記憶1040からデー
タを読み出す命令を示していれば、アドレス部1013
の内容がアドレスレジスタ1030にセットされ、ロー
カル記憶がアクセスされる。この結果、データがローカ
ル記憶1040からデータレジスタ■050に読みださ
れる。
の値が′0″′の場合を想定する。この場合に、命令コ
ード部1011の内容がローカル記憶1040からデー
タを読み出す命令を示していれば、アドレス部1013
の内容がアドレスレジスタ1030にセットされ、ロー
カル記憶がアクセスされる。この結果、データがローカ
ル記憶1040からデータレジスタ■050に読みださ
れる。
他方、命令レジスタ1010の格納ビット部1012の
値が“1″゛の場合を想定する。この場合にも、命令コ
ード部1011の内容がローカル記憶1040からデー
タを読み出す命令であれば、前述と同様に、データがロ
ーカル記憶1040からデータレジスタ1050に読み
だされる。
値が“1″゛の場合を想定する。この場合にも、命令コ
ード部1011の内容がローカル記憶1040からデー
タを読み出す命令であれば、前述と同様に、データがロ
ーカル記憶1040からデータレジスタ1050に読み
だされる。
次に、更新レジスタ1020の値たとえば”’1100
0”がアドレスレジスタ1030にセットされ、従って
、ローカル記憶1040の24番地の命令再実行用デー
タ領域IQ42がアクセスされ、ここにデータレジスタ
1050の内容が書きこまれる。同時に更新可能レジス
タ1020の値はカウントアンプし、 11.001
”となる。
0”がアドレスレジスタ1030にセットされ、従って
、ローカル記憶1040の24番地の命令再実行用デー
タ領域IQ42がアクセスされ、ここにデータレジスタ
1050の内容が書きこまれる。同時に更新可能レジス
タ1020の値はカウントアンプし、 11.001
”となる。
このようにしてローカル記憶1040にソースデータを
格納したあとに、命令の再実行を行う場合、命令レジス
タのアドレス部1013の値で直接、ローカル記111
040の24番地から更新可能レジスタ1020の現在
の値よりまたけ小さい値の番地までアクセスしてソース
データを読み出し、これより、ソースデータの再格納を
行う。
格納したあとに、命令の再実行を行う場合、命令レジス
タのアドレス部1013の値で直接、ローカル記111
040の24番地から更新可能レジスタ1020の現在
の値よりまたけ小さい値の番地までアクセスしてソース
データを読み出し、これより、ソースデータの再格納を
行う。
発明が解決しようとする課題
しかしながら上記のような構成では、命令再実行を実現
するために命令実行前にあらかじめソースデータをロー
カル記憶へ退避する必要があるため、演算を高速化する
ことは困難であり、高速化を図ろうとするとたとえばレ
ジスタファイルの複数の入力ボートが必要になり、莫大
なハードウェアの増加となる。ハードウェアの増加は引
いてはサイクルクロックの低下も起こしてしまう。
するために命令実行前にあらかじめソースデータをロー
カル記憶へ退避する必要があるため、演算を高速化する
ことは困難であり、高速化を図ろうとするとたとえばレ
ジスタファイルの複数の入力ボートが必要になり、莫大
なハードウェアの増加となる。ハードウェアの増加は引
いてはサイクルクロックの低下も起こしてしまう。
しかも、命令の実行中に命令再実行型の例外またはエラ
ー(例えば、リザーブド命令例外、バスエラーおよびペ
ージフォールト等)を生じた場合等は、例外またはエラ
ー処理ルーチンにおいてソースデータをローカル記憶よ
り読出し再実行対象の命令の実行前の状態に復元して、
再実行を行わなければならない。このため、仮想記憶対
応を考えた場合、ページフォールト等は頻繁に発生する
可能性があり、ソースデータの復元のためのオーバーヘ
ッドはシステムの性能低下を引き起こしてしまう。
ー(例えば、リザーブド命令例外、バスエラーおよびペ
ージフォールト等)を生じた場合等は、例外またはエラ
ー処理ルーチンにおいてソースデータをローカル記憶よ
り読出し再実行対象の命令の実行前の状態に復元して、
再実行を行わなければならない。このため、仮想記憶対
応を考えた場合、ページフォールト等は頻繁に発生する
可能性があり、ソースデータの復元のためのオーバーヘ
ッドはシステムの性能低下を引き起こしてしまう。
また、命令によって破壊されるソースデータが異なるた
め、命令の実行前状態への復元するためには破壊された
ソースデータの履歴を残すか、または処理ルーチンにお
いて命令の解析が必要となる。当然、命令によって再実
行対象の命令の実行前の状態に復元動作が異なり、処理
ルーチンおよび制御方法の複雑化を生んでしまう。
め、命令の実行前状態への復元するためには破壊された
ソースデータの履歴を残すか、または処理ルーチンにお
いて命令の解析が必要となる。当然、命令によって再実
行対象の命令の実行前の状態に復元動作が異なり、処理
ルーチンおよび制御方法の複雑化を生んでしまう。
逆に、すべての命令共通に復元動作を行おうとすると、
不必要なソースデータの退避、および退避領域の巨大化
を招いてしまう。
不必要なソースデータの退避、および退避領域の巨大化
を招いてしまう。
以上のように、速度低下による性能低下、制御の複雑化
、サイズの大型化等の問題を有していた。
、サイズの大型化等の問題を有していた。
また、従来、ソースデータの変更が発生した場合には命
令再実行を行わないという方法もあるが、命令再実行率
が低いということはシステムの信頼性の低さにつながり
、基本的に仮想記憶対応は困難になる。一方、ソースデ
ータが変更されても、再実行可能なようにソースデータ
を専用のレジスタまたはメモリ等に格納しておく方法も
あるが、サイズの巨大化を引き起こし、問題となる。こ
れらにIM■しては、従来の技術で引用した特開昭57
−209545号公報の発明の詳細にも述べられている
。
令再実行を行わないという方法もあるが、命令再実行率
が低いということはシステムの信頼性の低さにつながり
、基本的に仮想記憶対応は困難になる。一方、ソースデ
ータが変更されても、再実行可能なようにソースデータ
を専用のレジスタまたはメモリ等に格納しておく方法も
あるが、サイズの巨大化を引き起こし、問題となる。こ
れらにIM■しては、従来の技術で引用した特開昭57
−209545号公報の発明の詳細にも述べられている
。
なお、特開昭57−209545号公報における退避す
るソースデータとは、命令中のオペランド指定部で指定
されるオペランドだけでなく、アドレシングモードによ
って副作用を引き起こす資源にもあてはまる。たとえば
、パーソナルメディア株式会社発行のTR0Nプロジエ
ク)’ 87−88、第5章3、表4に記載されている
TR0Nチンプのアドレシングモードには@SP+で表
記されるスタックポツプアドレシングモードと@−8P
で表記されるスタックブツシュアドレシングモード等が
ある。このアドレシングモードラ使用した命令ADD:
G @SP+、W、R2,Wを馬えると、命令実行
後にはR2および5P(R15)が変化しており、R2
,5P(R15)共に退避するソースデータとしなけれ
ばならない。
るソースデータとは、命令中のオペランド指定部で指定
されるオペランドだけでなく、アドレシングモードによ
って副作用を引き起こす資源にもあてはまる。たとえば
、パーソナルメディア株式会社発行のTR0Nプロジエ
ク)’ 87−88、第5章3、表4に記載されている
TR0Nチンプのアドレシングモードには@SP+で表
記されるスタックポツプアドレシングモードと@−8P
で表記されるスタックブツシュアドレシングモード等が
ある。このアドレシングモードラ使用した命令ADD:
G @SP+、W、R2,Wを馬えると、命令実行
後にはR2および5P(R15)が変化しており、R2
,5P(R15)共に退避するソースデータとしなけれ
ばならない。
本発明はかかる点に鑑み、副作用のあるオペランド指定
部を有する命令の実行において、情報処理装置内部に副
作用の対象となる資源の複製を持たずに、例外が発生し
た場合でも、副作用の対象となる資源に関し命令実行前
に復元し、命令再実行を可能とする情報処理装置を提供
することを目的とする。
部を有する命令の実行において、情報処理装置内部に副
作用の対象となる資源の複製を持たずに、例外が発生し
た場合でも、副作用の対象となる資源に関し命令実行前
に復元し、命令再実行を可能とする情報処理装置を提供
することを目的とする。
課題を解決するための手段
本発明は、命令を解読し、副作用のあるオペランド指定
部を検出する副作用検出装置と、命令の先頭から現在の
解読時まで副作用のあるオペランド指定部が無いことを
示す初期モードと、副作用のあるオペランド指定部の存
在を認識することにより、副作用のあるオペランド指定
部を既に解読済であることを示す副作用モードに遷移す
るモード管理装置と、マイクロ命令の発行によって命令
再実行を行なう例外の発生が今後起こりえないことを検
出する再実行例外検出装置と、命令を解読し、対応する
マイクロ命令を発行すると共に、命令最終語が副作用の
あるオペランド指定部を持たず、かつ命令再実行を行な
う例外の発生が今後起こりえないことを認識した場合に
は、指定した作業用レジスタの内容を副作用の対象であ
る資源に複写するマイクロ命令を追加発行するマイクロ
命令発行装置と、マイクロ命令のオペランドフィールド
が副作用の対象となる資源であるかどうかを検出する資
源干渉検出装置と、初期モードの場合、マイクロ命令の
デスティネーションオペランドフィールドが副作用の対
象となる資源であることを認識したならばデスティネー
ションオペランドフィールドを指定した作業用レジスタ
に修飾し、副作用モードの場合、命令再実行を行なう例
外の発生が今後起こり得ることを認識し、マイクロ命令
のオペランドフィールドが副作用の対象となる資源であ
ることを認識したならば指定した作業用レジスタに修飾
し、命令再実行を行なう例外の発生が今後起こり得ない
ことを認識し、マイクロ命令のソースオペランドフィー
ルドが副作用の対象と1なる資源であることを認識した
ならばソースオペランドフィールドを指定した作業用レ
ジスタに修飾するオペランドフィールド修飾装置を備え
た情報処理装置である。
部を検出する副作用検出装置と、命令の先頭から現在の
解読時まで副作用のあるオペランド指定部が無いことを
示す初期モードと、副作用のあるオペランド指定部の存
在を認識することにより、副作用のあるオペランド指定
部を既に解読済であることを示す副作用モードに遷移す
るモード管理装置と、マイクロ命令の発行によって命令
再実行を行なう例外の発生が今後起こりえないことを検
出する再実行例外検出装置と、命令を解読し、対応する
マイクロ命令を発行すると共に、命令最終語が副作用の
あるオペランド指定部を持たず、かつ命令再実行を行な
う例外の発生が今後起こりえないことを認識した場合に
は、指定した作業用レジスタの内容を副作用の対象であ
る資源に複写するマイクロ命令を追加発行するマイクロ
命令発行装置と、マイクロ命令のオペランドフィールド
が副作用の対象となる資源であるかどうかを検出する資
源干渉検出装置と、初期モードの場合、マイクロ命令の
デスティネーションオペランドフィールドが副作用の対
象となる資源であることを認識したならばデスティネー
ションオペランドフィールドを指定した作業用レジスタ
に修飾し、副作用モードの場合、命令再実行を行なう例
外の発生が今後起こり得ることを認識し、マイクロ命令
のオペランドフィールドが副作用の対象となる資源であ
ることを認識したならば指定した作業用レジスタに修飾
し、命令再実行を行なう例外の発生が今後起こり得ない
ことを認識し、マイクロ命令のソースオペランドフィー
ルドが副作用の対象と1なる資源であることを認識した
ならばソースオペランドフィールドを指定した作業用レ
ジスタに修飾するオペランドフィールド修飾装置を備え
た情報処理装置である。
作 用
本発明は前記した構成により、複数個の基本解読単位か
らなる命令が、副作用のあるオペランド指定部を宵する
場合、副作用のあるオペランド指定部ををする基本解読
単位命令語を初めて解読した時には、副作用の対象とな
る資源を演算し、資源を書き替えずに指定した作業用レ
ジスタに格納し、続いて副作用のあるオペランド指定部
を有する基本解読単位命令語を解読した時に“は、副作
用の対象となる資源の代りに指定した作業用レジスタを
演算し、その後対象となる資源を書き替えずに指定した
作業用レジスタに格納し、最終の基本解読単位命令語を
解読した時には、すべてのマイクロ命令を発行後指定し
た作業用レジスタを副作用の対象となる資源に複写する
ことにより、命令実行中、つまり命令再実行を行う例外
等が発生する可能性がある実行最中には、副作用の対象
となる資源自身は変更せず命令前のデータを保持してお
き、命令の実行とともに副作用によって変化するデータ
は作業用レジスタに格納しておき、例外等の発生なく命
令に対する全てのオペレーションを実行完了時には、作
業用レジスタに格納しておいたデータを資源自身に格納
し、一方、再実行を行うエラーおよび例外等が発生した
場合には、命令を発生時に中断すれば副作用の対象とな
る資7原には命令実行前のデータが保持されており、副
作用の対象となる資源を復元する必要がなく、副作用の
あるオペランドの有無に関係なくエラーおよび例外処理
ルーチンへ実行を移すことが可能となり、極めて簡単な
制御で、ハードウェアの増加なく、システムの性能低下
なく、仮想記憶対応の命令再実行を実現できる。
らなる命令が、副作用のあるオペランド指定部を宵する
場合、副作用のあるオペランド指定部ををする基本解読
単位命令語を初めて解読した時には、副作用の対象とな
る資源を演算し、資源を書き替えずに指定した作業用レ
ジスタに格納し、続いて副作用のあるオペランド指定部
を有する基本解読単位命令語を解読した時に“は、副作
用の対象となる資源の代りに指定した作業用レジスタを
演算し、その後対象となる資源を書き替えずに指定した
作業用レジスタに格納し、最終の基本解読単位命令語を
解読した時には、すべてのマイクロ命令を発行後指定し
た作業用レジスタを副作用の対象となる資源に複写する
ことにより、命令実行中、つまり命令再実行を行う例外
等が発生する可能性がある実行最中には、副作用の対象
となる資源自身は変更せず命令前のデータを保持してお
き、命令の実行とともに副作用によって変化するデータ
は作業用レジスタに格納しておき、例外等の発生なく命
令に対する全てのオペレーションを実行完了時には、作
業用レジスタに格納しておいたデータを資源自身に格納
し、一方、再実行を行うエラーおよび例外等が発生した
場合には、命令を発生時に中断すれば副作用の対象とな
る資7原には命令実行前のデータが保持されており、副
作用の対象となる資源を復元する必要がなく、副作用の
あるオペランドの有無に関係なくエラーおよび例外処理
ルーチンへ実行を移すことが可能となり、極めて簡単な
制御で、ハードウェアの増加なく、システムの性能低下
なく、仮想記憶対応の命令再実行を実現できる。
実施例
第1図は本発明の情報処理装置の解読部の(14成図で
ある。第1図において1は、命令を解読し、副作用のあ
るオペランド指定部を検出する副作用検出装置である。
ある。第1図において1は、命令を解読し、副作用のあ
るオペランド指定部を検出する副作用検出装置である。
2は、命令の先頭から現在の解読時まで副作用のあるオ
ペランド指定部が無いことを示す初期モードと、副作用
のあるオペランド指定部を既に解読部であることを示す
副作用モードを管理するモード管理装置である。3は、
命令再実行を行なう例外の発生が今後起こりえないこと
を検出する再実行例外検出装置である。4は、命令を解
読し、対応するマイクロ命令を発行すると共に、指定し
た作業用レジスタの内容を副作用の対象である資源に複
写するマイクロ命令を追加発行の機能を持つマイクロ命
令発行装置である。
ペランド指定部が無いことを示す初期モードと、副作用
のあるオペランド指定部を既に解読部であることを示す
副作用モードを管理するモード管理装置である。3は、
命令再実行を行なう例外の発生が今後起こりえないこと
を検出する再実行例外検出装置である。4は、命令を解
読し、対応するマイクロ命令を発行すると共に、指定し
た作業用レジスタの内容を副作用の対象である資源に複
写するマイクロ命令を追加発行の機能を持つマイクロ命
令発行装置である。
5は、マイクロ命令のオペランドフィールドが副作用の
対象となる資源であるかどうかを検出する資源干渉検出
装置である。6は、モード、オペランドフィールドが副
作用の対象となる資源であるかどうか、および命令再実
行を行なう例外の発生が今後起こりえないかどうかの情
報よりオペランドフィールドを1旨定した作業用レジス
タに修飾す゛るオペランドフィールド修飾装置である。
対象となる資源であるかどうかを検出する資源干渉検出
装置である。6は、モード、オペランドフィールドが副
作用の対象となる資源であるかどうか、および命令再実
行を行なう例外の発生が今後起こりえないかどうかの情
報よりオペランドフィールドを1旨定した作業用レジス
タに修飾す゛るオペランドフィールド修飾装置である。
第2図は、マイクロ命令を説明するだめの図である。7
は、マイクロ命令発行装置4およびオペランドフィール
ド修飾装置6の出力であるマイクロ命令でアル。71は
、オペレーションフィールドである。72は、ソースオ
ペランドフィールドである。73は、ソースオペランド
フィールドである。74は、デスティネーションオペラ
ンドフィールドである。
は、マイクロ命令発行装置4およびオペランドフィール
ド修飾装置6の出力であるマイクロ命令でアル。71は
、オペレーションフィールドである。72は、ソースオ
ペランドフィールドである。73は、ソースオペランド
フィールドである。74は、デスティネーションオペラ
ンドフィールドである。
第3図は、情報処理装置の演算部を説明するための図で
ある。8は、汎用レジスタと作業用レジスタからなるレ
ジスタファイルである。9は、演算装置である。
ある。8は、汎用レジスタと作業用レジスタからなるレ
ジスタファイルである。9は、演算装置である。
第4図は、副作用のあるオペランド指定部を有する命令
の処理を説明するための図である。10は、命令ADD
:GOSP+、W、R2,Wを解読したときにマイクロ
命令発行装置4から出力するマイクロ命令のニモニック
である。OAは、オペランドアクセスのための実効アド
レス計算を示す。OFは、実効アドレスを用いてメモリ
からオペランドの読みごみを示す。EXは、演算を示す
。EX&Sは、演算後メモリへの書き込みを示す。SP
はスタックポインタを示す。ARは、メモリアクセスの
実効アドレスを格納するアドレスレジスタを示す。
の処理を説明するための図である。10は、命令ADD
:GOSP+、W、R2,Wを解読したときにマイクロ
命令発行装置4から出力するマイクロ命令のニモニック
である。OAは、オペランドアクセスのための実効アド
レス計算を示す。OFは、実効アドレスを用いてメモリ
からオペランドの読みごみを示す。EXは、演算を示す
。EX&Sは、演算後メモリへの書き込みを示す。SP
はスタックポインタを示す。ARは、メモリアクセスの
実効アドレスを格納するアドレスレジスタを示す。
MEMは、メモリである。WROは、作業用レジスタ0
番である。WRIは、作業用レジスタ1番である。R2
は、汎用レジスタ2番である。+は、加算動作を示す。
番である。WRIは、作業用レジスタ1番である。R2
は、汎用レジスタ2番である。+は、加算動作を示す。
−は、減算動作を示す。→は、転送動作を示す。
第5図は、副作用のあるオペランド指定部を有する命令
の処理を説明するための図である。11は、命令ADD
:G O5P+、W、R2,胃を解読したときにオペラ
ンドフィールド修飾装置6から出力するマイクロ命令の
ニモニックである。
の処理を説明するための図である。11は、命令ADD
:G O5P+、W、R2,胃を解読したときにオペラ
ンドフィールド修飾装置6から出力するマイクロ命令の
ニモニックである。
第6図は、副作用のあるオペランド指定部を有する命令
の処理を説明するための図である。12は、命令CMP
:G OSP+、W、OSP+、Wを解読したときにマ
イクロ命令発行装置4から出力するマイクロ命令のニモ
ニックである。WR2は、作業用12222番である。
の処理を説明するための図である。12は、命令CMP
:G OSP+、W、OSP+、Wを解読したときにマ
イクロ命令発行装置4から出力するマイクロ命令のニモ
ニックである。WR2は、作業用12222番である。
第7図は、副作用のあるオペランド指定部を有する命令
の処理を説明するための図である。13は、命令CMP
:G OSP+、W、1llsP+、Wを解読シタトキ
ニオペランドフィールド修飾装置6から出力するマイク
ロ命令のニモニックである。
の処理を説明するための図である。13は、命令CMP
:G OSP+、W、1llsP+、Wを解読シタトキ
ニオペランドフィールド修飾装置6から出力するマイク
ロ命令のニモニックである。
以上のように構成された本実施例の情報処理装置ニツイ
て、命令ADD:G 0(SP)+、W、R2,Wを処
理する動作を説明する。なお、ここで用いる命令表記は
、前述のTR0Nチツプにおけるものを使用する。
て、命令ADD:G 0(SP)+、W、R2,Wを処
理する動作を説明する。なお、ここで用いる命令表記は
、前述のTR0Nチツプにおけるものを使用する。
ます、命令ADD:G O5P+J、R2,Wは2ハー
フワード命令(1ハーフワードは16ビノトつまり2バ
イトである)(2ハーフワード命令を2HW命令とする
)であるが、IHWが解読基本単位であり、第1HWに
副作用のあるオペランド指定部GSP→(スタックポツ
プアドレシングモード)が存在し、続く第28 Wにオ
ペランド指定fi(R2とオペレー/ヨンが有る。以下
、命令の動作を説明する。SPの内容はソース台オペラ
ンドの実効アドレスであり、そのアドレスがt旨すメモ
リ上のワードデータ(32ビツトデータつまり4バイト
データ)を作業用レジスタに格納する。oSP+が存在
し、かつワード演算のため、副作用の対象となるSPに
4加算する。
フワード命令(1ハーフワードは16ビノトつまり2バ
イトである)(2ハーフワード命令を2HW命令とする
)であるが、IHWが解読基本単位であり、第1HWに
副作用のあるオペランド指定部GSP→(スタックポツ
プアドレシングモード)が存在し、続く第28 Wにオ
ペランド指定fi(R2とオペレー/ヨンが有る。以下
、命令の動作を説明する。SPの内容はソース台オペラ
ンドの実効アドレスであり、そのアドレスがt旨すメモ
リ上のワードデータ(32ビツトデータつまり4バイト
データ)を作業用レジスタに格納する。oSP+が存在
し、かつワード演算のため、副作用の対象となるSPに
4加算する。
最後に作業用レジスタの内容とR2の内容を加算し、R
2に格納する。
2に格納する。
(1)第1HWを命令読み出し部から入力する。
副作用検出装置1は、副作用を持つオペランド指定部つ
まりスタックポツプアドレシングモード((lsP+)
を検出する。モード管理装置2は初期モードに設定され
ており、第1HWに対応するモードは初期モードである
。副作用を持つオペランド指定部の検出による副作用モ
ードへの遷移は第2 HWを解読する時に行われる。再
実行例外検出装置3は、続く第28Wを実行中に例外(
第28Wを読み込み中にバスエラーが発生し、第2HW
自身を入力できない、第2HW自身がリザーブド命令の
ピッ)・パターンである、および、第2 I−(W実行
中のオペランドに関するバスエラーが発生する等)が発
生する可能性があるため、第1HW解読中は命令再実行
を行なう例外の発生が今後起こり得ると判断する。マイ
クロ命令発行装置4は、命令を解読後、それに対応する
マイクロ命令列を発行する。ADD:G O5P+、!
、R2,W ノ第1HWを解読したとき、マイクロ命令
発行装置4から出力するニモニックは、命令再実行を行
なう例外の発生が今後起こり得ると判断を考慮し、10
−1〜3となる。
まりスタックポツプアドレシングモード((lsP+)
を検出する。モード管理装置2は初期モードに設定され
ており、第1HWに対応するモードは初期モードである
。副作用を持つオペランド指定部の検出による副作用モ
ードへの遷移は第2 HWを解読する時に行われる。再
実行例外検出装置3は、続く第28Wを実行中に例外(
第28Wを読み込み中にバスエラーが発生し、第2HW
自身を入力できない、第2HW自身がリザーブド命令の
ピッ)・パターンである、および、第2 I−(W実行
中のオペランドに関するバスエラーが発生する等)が発
生する可能性があるため、第1HW解読中は命令再実行
を行なう例外の発生が今後起こり得ると判断する。マイ
クロ命令発行装置4は、命令を解読後、それに対応する
マイクロ命令列を発行する。ADD:G O5P+、!
、R2,W ノ第1HWを解読したとき、マイクロ命令
発行装置4から出力するニモニックは、命令再実行を行
なう例外の発生が今後起こり得ると判断を考慮し、10
−1〜3となる。
資源干渉検出装置5は、マイクロ命令7のオペランドフ
ィールドが副作用の対象となる資源つまりSPであるか
どうかを検出する。オペランドフィールド修飾装置6は
、モード管理装置2が初期モードを示していることから
、マイクロ命令7のデスティネーションオペランドフィ
ールド7−4が副作用の対象となる資源であることを認
識したならばデスティネーションオペランドフィールド
7−4を指定した作業用レジスタに修飾する。
ィールドが副作用の対象となる資源つまりSPであるか
どうかを検出する。オペランドフィールド修飾装置6は
、モード管理装置2が初期モードを示していることから
、マイクロ命令7のデスティネーションオペランドフィ
ールド7−4が副作用の対象となる資源であることを認
識したならばデスティネーションオペランドフィールド
7−4を指定した作業用レジスタに修飾する。
ここでマイクロ命令発行装置4から発行するマイクロ命
令7の動きを追う。10−1が発行されると、資源干渉
検出装置5は、マイクロ命令7のソースオペランドフィ
ールド7−2もしくは7−3がSPであることを検出し
オペランドフィールド修飾装置6に伝えるが、オペラン
ドフィールド修飾装置6は、モード管理装置2が初期モ
ードをボしていることより修飾をせず、そのまま演算部
へ発行される。演算部はSPのデータをARに格納する
。
令7の動きを追う。10−1が発行されると、資源干渉
検出装置5は、マイクロ命令7のソースオペランドフィ
ールド7−2もしくは7−3がSPであることを検出し
オペランドフィールド修飾装置6に伝えるが、オペラン
ドフィールド修飾装置6は、モード管理装置2が初期モ
ードをボしていることより修飾をせず、そのまま演算部
へ発行される。演算部はSPのデータをARに格納する
。
102が発行されても、修飾対象は存在しないため、マ
イクロ命令7はそのまま発行され、演算部はARのデー
タを実効アドレスとしてメモリからデータを読出し、W
RIに格納する。103が発行されると、資源干渉検出
装置5は、マイクロ命令7のソース72もしくは73お
よびデスティネーション74両オペランドフィールドが
SPであることを検出しオペランドフィールド修飾装置
6に伝える。オペランドフィールド修飾装置6は、モー
ド管理装置2が初期モードを示していることよりデステ
ィネーションオペランドフィール1ドア4をWHOに修
飾し、演算部へ発行する。演算部はSPのデータに4加
算し、WHOに格納する。オペランドフィールド修飾装
置6が発行するマイクロ命令7は111〜3となる。以
上説明した様にマイクロ命令103は113に修飾され
る。
イクロ命令7はそのまま発行され、演算部はARのデー
タを実効アドレスとしてメモリからデータを読出し、W
RIに格納する。103が発行されると、資源干渉検出
装置5は、マイクロ命令7のソース72もしくは73お
よびデスティネーション74両オペランドフィールドが
SPであることを検出しオペランドフィールド修飾装置
6に伝える。オペランドフィールド修飾装置6は、モー
ド管理装置2が初期モードを示していることよりデステ
ィネーションオペランドフィール1ドア4をWHOに修
飾し、演算部へ発行する。演算部はSPのデータに4加
算し、WHOに格納する。オペランドフィールド修飾装
置6が発行するマイクロ命令7は111〜3となる。以
上説明した様にマイクロ命令103は113に修飾され
る。
(2)第1HWに1対応するマイクロ命令をすべて発行
終了したので、命令の第2HWを命令読み出し部から入
力し解読を開始する。副作用検出装置1は、第2HW中
には副作用を持つオペランド指定部が存在しないことを
認識する。モード管理装置2は、第2HWを解読したの
で初期モードから、第1HW中での副作用を持つオペラ
ンド指定部の検出による副作用モードへの遷移する。再
実行例外検出装置3は、第28Wを実行中に例外(オペ
ランドのメモリへの書き込みが、そのマ・rクロ命令以
前に発生したバスエラーによって実行できない等)が発
生する可能性があるため、マイクロ命令104の発行完
了まで、命令再実行を行なう例外の発生が今後起こり得
ると判断する。ただし、マイクロ命令104の発行完了
以降は、命令再実行を行なう例外の発生が今後起こり得
ないと判断できる。マイクロ命令発行装置4は、命令を
解読後、それに対応するマイクロ命令列を発行する。
終了したので、命令の第2HWを命令読み出し部から入
力し解読を開始する。副作用検出装置1は、第2HW中
には副作用を持つオペランド指定部が存在しないことを
認識する。モード管理装置2は、第2HWを解読したの
で初期モードから、第1HW中での副作用を持つオペラ
ンド指定部の検出による副作用モードへの遷移する。再
実行例外検出装置3は、第28Wを実行中に例外(オペ
ランドのメモリへの書き込みが、そのマ・rクロ命令以
前に発生したバスエラーによって実行できない等)が発
生する可能性があるため、マイクロ命令104の発行完
了まで、命令再実行を行なう例外の発生が今後起こり得
ると判断する。ただし、マイクロ命令104の発行完了
以降は、命令再実行を行なう例外の発生が今後起こり得
ないと判断できる。マイクロ命令発行装置4は、命令を
解読後、それに対応するマイクロ命令列を発行する。
ADD:G osp+、w、R2,w (7)第28W
を解読したとき、マイクロ命令発行装置4は、マイクロ
命令104を発行するが、104の発行完了以降は、命
令再実行を行なう例外の発生が今後起こり得ないとの判
断より、指定した作業用レジスタの内容を副作用の対象
である資源に複写するマイクロ命令105を追加発行す
る。資源干渉検出装置5は、マイクロ命令7のオペラン
ドフィールドが副作用の対象となる資源つまりSPであ
るかどうかを検出する。
を解読したとき、マイクロ命令発行装置4は、マイクロ
命令104を発行するが、104の発行完了以降は、命
令再実行を行なう例外の発生が今後起こり得ないとの判
断より、指定した作業用レジスタの内容を副作用の対象
である資源に複写するマイクロ命令105を追加発行す
る。資源干渉検出装置5は、マイクロ命令7のオペラン
ドフィールドが副作用の対象となる資源つまりSPであ
るかどうかを検出する。
オペランドフィールド修飾装置6は、モード管理装置2
が副作用モードを示していること、オペランドフィール
ドが副作用の対象となる資源であるかどうか、および命
令再実行を行なう例外の発生が今後起こりえないかどう
かの情報よりオペランドフィールドを指定した作業用レ
ジスタに修飾する。
が副作用モードを示していること、オペランドフィール
ドが副作用の対象となる資源であるかどうか、および命
令再実行を行なう例外の発生が今後起こりえないかどう
かの情報よりオペランドフィールドを指定した作業用レ
ジスタに修飾する。
ここでマイクロ命令発行装置4から発行するマと、修飾
対象は存在しないため、マイクロ命令7はそのまま発行
され、演算部はWRIのデータとR2を加算しR2に格
納する。105が発行されると、資源干渉検出装置5は
、マイクロ命令7のデスティネー7ヨンオペラ/ドフィ
ールド74がSPであることを検出しオペランドフィー
ルド修飾装置6に伝える。オペランドフィールド化fi
r+i 装置6は、モード管理装置2が副作用モードを
示していること、再実行例外検出装置が命令再実行を行
なう例外の発生が今後起こり得ないと判断していること
、マイクロ命令7のデスティネ−7ヨンオベランドフィ
ールド7−4だけが副作用の対象となる資源であること
を認識し、マイクロ命令7を修飾しない。よって演算部
はWROのデータをSPに格納することより、SPに対
する副作用演算を実体に複写する。オペランドフィール
ド修飾装置6が発行するマイクロ命令7は114〜5と
なる。以上説明した様にマイクロ命令10−5は115
に修飾される。
対象は存在しないため、マイクロ命令7はそのまま発行
され、演算部はWRIのデータとR2を加算しR2に格
納する。105が発行されると、資源干渉検出装置5は
、マイクロ命令7のデスティネー7ヨンオペラ/ドフィ
ールド74がSPであることを検出しオペランドフィー
ルド修飾装置6に伝える。オペランドフィールド化fi
r+i 装置6は、モード管理装置2が副作用モードを
示していること、再実行例外検出装置が命令再実行を行
なう例外の発生が今後起こり得ないと判断していること
、マイクロ命令7のデスティネ−7ヨンオベランドフィ
ールド7−4だけが副作用の対象となる資源であること
を認識し、マイクロ命令7を修飾しない。よって演算部
はWROのデータをSPに格納することより、SPに対
する副作用演算を実体に複写する。オペランドフィール
ド修飾装置6が発行するマイクロ命令7は114〜5と
なる。以上説明した様にマイクロ命令10−5は115
に修飾される。
イクロ命令7の動きを追う。104が発行されるここで
以上説明したマイクロ命令の発行で命令再実行が可能と
なることを解説する。命令ADD:GO5P+、W 、
R2、Wにおいて、データが変化する可能性のある資源
はR2およびSPである。 今回R2に関しては変化
する前にデータの複写を行わないが、以下の理由による
。R2のデータは変化するが、基本としてデータの格納
が1回であり、そのマイクロ命令はマイクロ命令列の最
後、もしくはそれ以降命令再実行を行う例外が発生しな
い時に発行され、もし、データの格納がメモリへのスト
アであっても最後のストアによるバスエラーは命令完了
型の例外(エラーを起こした命令は完了したものとし、
再実行しない例外)とできる、ことにより予めコピーを
取る必要は無い。
以上説明したマイクロ命令の発行で命令再実行が可能と
なることを解説する。命令ADD:GO5P+、W 、
R2、Wにおいて、データが変化する可能性のある資源
はR2およびSPである。 今回R2に関しては変化
する前にデータの複写を行わないが、以下の理由による
。R2のデータは変化するが、基本としてデータの格納
が1回であり、そのマイクロ命令はマイクロ命令列の最
後、もしくはそれ以降命令再実行を行う例外が発生しな
い時に発行され、もし、データの格納がメモリへのスト
アであっても最後のストアによるバスエラーは命令完了
型の例外(エラーを起こした命令は完了したものとし、
再実行しない例外)とできる、ことにより予めコピーを
取る必要は無い。
ところがSPは基本的にIHW単位解読するごとに変化
を要求される。よって、SP自身を変化させる方法では
、複写を取ることが必要であり、一方、本発明の方法を
取るとSP自身は変化させずに作業用レジスタを用い、
再実行型例外の発生の可能性が無くなってからSP自身
を変化させることにより、再実行型例外発生時にSPの
データを保証している。
を要求される。よって、SP自身を変化させる方法では
、複写を取ることが必要であり、一方、本発明の方法を
取るとSP自身は変化させずに作業用レジスタを用い、
再実行型例外の発生の可能性が無くなってからSP自身
を変化させることにより、再実行型例外発生時にSPの
データを保証している。
以上よりADD:G 1llsP+、W、R2,Wにお
イテ、データが変化する可能性のある資源に対しても命
令再実行時には命令直前の環境に復元でき、命令再実行
が可能となる。
イテ、データが変化する可能性のある資源に対しても命
令再実行時には命令直前の環境に復元でき、命令再実行
が可能となる。
続イテ、命令ctp:c osp+、+v、osp+、
wを処理する動作を説明する。
wを処理する動作を説明する。
まず、命令CMP:G osp+、w、osp+、wも
2ハーフワード命令であり、第1HWに副作用のあるオ
ペランド指定部OSP+ (スタックポツプアドレシン
グモード)が存在し、続く第28Wにも副作用のあるオ
ペランド指定部@SP+ (スタックポツプアドレシン
グモード)とオペレーションが仔る。以下、命令の動作
を説明する。SPの内容はソース壷オペランドの実効ア
ドレスであり、そのアドレスが指すメモリ上のワードデ
ータを作業用レジスタに格納する。OSP+が存在し、
かつワード演算のため、副作用の対象となるSPに4加
算する。続いてSPの内容は2つめのソース・オペラン
ドの実効アドレスであり、そのアドレスが指すメモリ上
のワードデータを別の作業用レジスタに格納する。お互
いの作業用レジスタの内容を比較する。最後に副作用の
対象となるSPに4加算する。
2ハーフワード命令であり、第1HWに副作用のあるオ
ペランド指定部OSP+ (スタックポツプアドレシン
グモード)が存在し、続く第28Wにも副作用のあるオ
ペランド指定部@SP+ (スタックポツプアドレシン
グモード)とオペレーションが仔る。以下、命令の動作
を説明する。SPの内容はソース壷オペランドの実効ア
ドレスであり、そのアドレスが指すメモリ上のワードデ
ータを作業用レジスタに格納する。OSP+が存在し、
かつワード演算のため、副作用の対象となるSPに4加
算する。続いてSPの内容は2つめのソース・オペラン
ドの実効アドレスであり、そのアドレスが指すメモリ上
のワードデータを別の作業用レジスタに格納する。お互
いの作業用レジスタの内容を比較する。最後に副作用の
対象となるSPに4加算する。
(1)第1HWを命令読み出し部から入力する。
副作用検出装置1は、副作用を持つオペランド指定部つ
まりスタックポツプアドレシングモード((lsP+)
を検出する。モード管理装置2は初期モードに設定され
ており、第1HWに対応するモードは初期モードである
。副作用を持つオペランド指定部の検出による副作用モ
ードへの遷移は第2HWを解読する時に行われる。再実
行例外検出装置3は、続く第2HWを実行中に例外が発
生する可能性があるため、第1HW解読中は命令再実行
を行なう例外の発生が今後起こり得ると判断する。
まりスタックポツプアドレシングモード((lsP+)
を検出する。モード管理装置2は初期モードに設定され
ており、第1HWに対応するモードは初期モードである
。副作用を持つオペランド指定部の検出による副作用モ
ードへの遷移は第2HWを解読する時に行われる。再実
行例外検出装置3は、続く第2HWを実行中に例外が発
生する可能性があるため、第1HW解読中は命令再実行
を行なう例外の発生が今後起こり得ると判断する。
マイクロ命令発行装置4は、命令を解読後、それに対応
するマイクロ命令列を発行する。cMp:c osP+
、W、OSP+、Wの第1HWを解読したとき、マイク
ロ命令発行装置4から出力するニモニックは、命令再実
行を行なう例外の発生が今後起こり得ると判断を考慮し
、121〜3となる。資源干渉検出装置5は、マイクロ
命令7のオペランドフィールドが副作用の対象となる資
l原つまりSPであるかどうかを検出する。オペランド
フィールド修飾装置6は、モード管理装置2が初期モー
ドを示していることから、マイクロ命令7のデスティネ
ーンヨンオペランドフィールド74が副作用の対象とな
る資源であることを認識したならばデスティネー/ヨン
オペランドフィールド74を指定した作業用レジスタに
修飾する。
するマイクロ命令列を発行する。cMp:c osP+
、W、OSP+、Wの第1HWを解読したとき、マイク
ロ命令発行装置4から出力するニモニックは、命令再実
行を行なう例外の発生が今後起こり得ると判断を考慮し
、121〜3となる。資源干渉検出装置5は、マイクロ
命令7のオペランドフィールドが副作用の対象となる資
l原つまりSPであるかどうかを検出する。オペランド
フィールド修飾装置6は、モード管理装置2が初期モー
ドを示していることから、マイクロ命令7のデスティネ
ーンヨンオペランドフィールド74が副作用の対象とな
る資源であることを認識したならばデスティネー/ヨン
オペランドフィールド74を指定した作業用レジスタに
修飾する。
ここでマイクロ命令発行装置4から発行するマイクロ命
令7の動きを追う。121が発行されると、資源干渉検
出装置5は、マイクロ命令7のソースオペランドフィー
ルド72もしくは73がSPであることを検出しオペラ
ンドフィールド修飾装置6に伝えるが、オペランドフィ
ールド修飾H置6は、モード管理装置2が初期モードを
示していることより修飾をせず、そのまま演算部へ発行
される。演算部はSPのデータをARに格納する。12
2が発行されても、修飾対象は存在しないため、マイク
ロ命令7はそのまま発行され、演算部はARのデータを
実効アドレスとしてメモリからデータを読出し、wRl
に格納する。123が発行されると、資源干渉検出装置
5は、マイクロ命令7のソース72もしくは73および
デスティネーション74両オペランドフィールドがSP
であることを検出しオペランドフィールド修飾装置6に
伝える。
令7の動きを追う。121が発行されると、資源干渉検
出装置5は、マイクロ命令7のソースオペランドフィー
ルド72もしくは73がSPであることを検出しオペラ
ンドフィールド修飾装置6に伝えるが、オペランドフィ
ールド修飾H置6は、モード管理装置2が初期モードを
示していることより修飾をせず、そのまま演算部へ発行
される。演算部はSPのデータをARに格納する。12
2が発行されても、修飾対象は存在しないため、マイク
ロ命令7はそのまま発行され、演算部はARのデータを
実効アドレスとしてメモリからデータを読出し、wRl
に格納する。123が発行されると、資源干渉検出装置
5は、マイクロ命令7のソース72もしくは73および
デスティネーション74両オペランドフィールドがSP
であることを検出しオペランドフィールド修飾装置6に
伝える。
オペランドフィールド修飾装置6は、モード管理装置2
が初期モードを示していることよりデスティネーション
オペランドフィールド74をWROに修飾し、演算部へ
発行する。演算部はSPのデータに4加算し、WHOに
格納する。オペランドフィールド修飾装置6が発行する
マイクロ命令7は121〜3となる。以上説明した様に
マイクロ命令123は133に修飾される。CMP:G
OSP+、W、O5P+胃の第1HWに対応するマイ
クロ命令は、ADD:G 1llSP+J、R2Jの第
1HWと同じである。
が初期モードを示していることよりデスティネーション
オペランドフィールド74をWROに修飾し、演算部へ
発行する。演算部はSPのデータに4加算し、WHOに
格納する。オペランドフィールド修飾装置6が発行する
マイクロ命令7は121〜3となる。以上説明した様に
マイクロ命令123は133に修飾される。CMP:G
OSP+、W、O5P+胃の第1HWに対応するマイ
クロ命令は、ADD:G 1llSP+J、R2Jの第
1HWと同じである。
(2)第1HWに対応するマイクロ命令をすべて発行終
了したので、命令の第28Wを命令読み出し部から入力
し解読を開始する。副作用検出装置1は、第21(W中
にも副作用を持つオペランド指定部つまりスタックポツ
プアドレシングモード(O5P+)を検出する。モード
管理装置2は、第2HWを解読したので初期モードから
、第1HW中での副作用を持つオペランド指定部の検出
による副作用モードへの遷移する。再実行例外検出装置
3は、第28 Wを実行中に例外(オペランドのメモリ
からの読みこみにおいて、バスエラーが発生ずる等)が
発生する可能性があるため、マイクロ命令126の発行
完了まで、命令再実行を行なう例外の発生が今後起こり
得ると判断する。たたし、マイクロ命令126の発行完
了以降は、命令再実行を行なう例外の発生が今後起こり
得ないと判断できる。マイクロ命令発行装置4は、命令
を解読後、それに対応するマイクロ命令列を発行する。
了したので、命令の第28Wを命令読み出し部から入力
し解読を開始する。副作用検出装置1は、第21(W中
にも副作用を持つオペランド指定部つまりスタックポツ
プアドレシングモード(O5P+)を検出する。モード
管理装置2は、第2HWを解読したので初期モードから
、第1HW中での副作用を持つオペランド指定部の検出
による副作用モードへの遷移する。再実行例外検出装置
3は、第28 Wを実行中に例外(オペランドのメモリ
からの読みこみにおいて、バスエラーが発生ずる等)が
発生する可能性があるため、マイクロ命令126の発行
完了まで、命令再実行を行なう例外の発生が今後起こり
得ると判断する。たたし、マイクロ命令126の発行完
了以降は、命令再実行を行なう例外の発生が今後起こり
得ないと判断できる。マイクロ命令発行装置4は、命令
を解読後、それに対応するマイクロ命令列を発行する。
CMP:G osp+、w、osp+、tv ノ第28
Wを解読シタトキ、マイクロ命令発行装置4は、マイク
ロ命令12−4〜7を発行する。第2HWは、最終解読
語であり、かつ副作用のあるオペランド指定部を有する
ことから、指定した作業用レジスタの内容を副作用の対
象である資源に複写するマイクロ命令の追加発行は行わ
ない。。資源干渉検出装置5は、マイクロ命令7のオペ
ランドフィールドが副作用の対象となる資源つまりSP
であるかどうかを検出する。オペランドフィールド修飾
装置6は、モード管理装置2が副作用モードを示してい
ること、オペランドフィールドが副作用の対象となる資
源であるかとうか、および命令再実行を行なう例外の発
生が今後起こりえないかどうかの情報よりオペランドフ
ィールドを指定した作業用レジスタに修飾する。
Wを解読シタトキ、マイクロ命令発行装置4は、マイク
ロ命令12−4〜7を発行する。第2HWは、最終解読
語であり、かつ副作用のあるオペランド指定部を有する
ことから、指定した作業用レジスタの内容を副作用の対
象である資源に複写するマイクロ命令の追加発行は行わ
ない。。資源干渉検出装置5は、マイクロ命令7のオペ
ランドフィールドが副作用の対象となる資源つまりSP
であるかどうかを検出する。オペランドフィールド修飾
装置6は、モード管理装置2が副作用モードを示してい
ること、オペランドフィールドが副作用の対象となる資
源であるかとうか、および命令再実行を行なう例外の発
生が今後起こりえないかどうかの情報よりオペランドフ
ィールドを指定した作業用レジスタに修飾する。
ここでマイクロ命令発行装置4から発行するマイクロ命
令7の動きを追う。124が発行されると、資源干渉検
出装置5は、マイクロ命令7のソースオペランドフィー
ルド72もしくは73がSPであることを検出しオペラ
ンドフィールド修飾装置6に伝える。オペランドフィー
ルド修飾装置6は、モード管理装置2が副作用モードを
示していることよりソースオペランドフィールド72も
しくは73をWROに修飾し、演算部へ発行する。演算
部はWROのデータをARに格納する。125が発行さ
れると、修飾対象は存在しないため、マイクロ命令7は
そのまま発行され、〆1ji算部はARのデータを実効
アドレスとしてメモリからデータを読出し、wR2に格
納する。126が発行されると、修飾対象は存在しない
ため、マイクロ命令7はそのまま発行され、演算部はW
RIのデータとWR2を比較する。127が発行される
と、資源干渉検出装置5は、マイクロ命令7のソース7
2もしくは73およびデスティネーンヨン74両オペラ
ンドフィールドがSPであることを検出しオペランドフ
ィールド修飾装置6に伝える。オペランドフィールド修
飾装置6は、モード管理装置2が副作用モードを示して
いること、再実行例外検出装置が命令再実行を行なう例
外の発生が今後起こり得ないと判断していること、マイ
クロ命令7のソース72もしくは73およびデスティネ
ーション74両オペランドフィールドが副作用の対象と
なる資源であることを認識し、デスティネーションオペ
ランドフィールド74をWROに修飾し、演算部へ発行
する。よって演算部はWHOのデータをSPに格納する
ことより、SPに対する副作用演算を実体に複写する。
令7の動きを追う。124が発行されると、資源干渉検
出装置5は、マイクロ命令7のソースオペランドフィー
ルド72もしくは73がSPであることを検出しオペラ
ンドフィールド修飾装置6に伝える。オペランドフィー
ルド修飾装置6は、モード管理装置2が副作用モードを
示していることよりソースオペランドフィールド72も
しくは73をWROに修飾し、演算部へ発行する。演算
部はWROのデータをARに格納する。125が発行さ
れると、修飾対象は存在しないため、マイクロ命令7は
そのまま発行され、〆1ji算部はARのデータを実効
アドレスとしてメモリからデータを読出し、wR2に格
納する。126が発行されると、修飾対象は存在しない
ため、マイクロ命令7はそのまま発行され、演算部はW
RIのデータとWR2を比較する。127が発行される
と、資源干渉検出装置5は、マイクロ命令7のソース7
2もしくは73およびデスティネーンヨン74両オペラ
ンドフィールドがSPであることを検出しオペランドフ
ィールド修飾装置6に伝える。オペランドフィールド修
飾装置6は、モード管理装置2が副作用モードを示して
いること、再実行例外検出装置が命令再実行を行なう例
外の発生が今後起こり得ないと判断していること、マイ
クロ命令7のソース72もしくは73およびデスティネ
ーション74両オペランドフィールドが副作用の対象と
なる資源であることを認識し、デスティネーションオペ
ランドフィールド74をWROに修飾し、演算部へ発行
する。よって演算部はWHOのデータをSPに格納する
ことより、SPに対する副作用演算を実体に複写する。
オペランドフィールド修飾装置6が発行するマイクロ命
令7は134〜7となる。以上説明した様にマイクロ命
令124および7は134および7に修飾される。
令7は134〜7となる。以上説明した様にマイクロ命
令124および7は134および7に修飾される。
ここで以上説明したマイクロ命令の発行で命令再実行が
可能となることを解説する。命令CMP:GOSP+、
W、@SP+、Wにおいて、データが変化する可能性の
ある資源はSPたけある。SPは基本的にIHW単位解
読するごとに変化を要求される。よって、SP自身を変
化させる方法では、複写を取ることが必要であり、一方
、本発明の方法を取るとSP自身は変化させずに作業用
レジスタを用い、再実行型例外の発生の可能性が無くな
ってからSP自身を変化させることにより、再実行型例
外発生時にSPのデータを保証している。
可能となることを解説する。命令CMP:GOSP+、
W、@SP+、Wにおいて、データが変化する可能性の
ある資源はSPたけある。SPは基本的にIHW単位解
読するごとに変化を要求される。よって、SP自身を変
化させる方法では、複写を取ることが必要であり、一方
、本発明の方法を取るとSP自身は変化させずに作業用
レジスタを用い、再実行型例外の発生の可能性が無くな
ってからSP自身を変化させることにより、再実行型例
外発生時にSPのデータを保証している。
CMP:G f)SP+、W、OSP+、W ニおイテ
、データが変化する可能性のある資源に対しても命令再
実行時には命令直前の環境に復元でき、命令再実行が可
能となる。
、データが変化する可能性のある資源に対しても命令再
実行時には命令直前の環境に復元でき、命令再実行が可
能となる。
以上のように、本実施例によれば、副作用のあるオペラ
ンド指定部を検出する副作用検出装置1と、初期モード
と副作用モードを管理するモード管理装置2と命令再実
行型例外の発生が今後起こりえないことを検出する再実
行例外検出装置3と、マイクロ命令の発行と共に、指定
した作業用レジスタの内容を副作用の対象である資源に
複写するマイクロ命令を追加発行の機能を持つマイクロ
命令発行装置4と、オペランドフィールドが副作用の対
象となる資源であるかどうかを検出する資源干渉検出装
置5と、オペランドフィールドをtlした作業用レジス
タに修飾するオペランドフィールド修飾装置6を設ける
ことにより、副作用の対象となる資源自身は、再実行型
の例外発生の可能性のある間は変更せず命令前のデータ
を保持しておき、命令の実行とともに副作用により変化
するデータは作業用レジスタに格納しておき、オペレー
ンヨン完了時には、作業用レジスタに格納しておいたデ
ータを資源自身に複写することより、命令再実行を行え
る。
ンド指定部を検出する副作用検出装置1と、初期モード
と副作用モードを管理するモード管理装置2と命令再実
行型例外の発生が今後起こりえないことを検出する再実
行例外検出装置3と、マイクロ命令の発行と共に、指定
した作業用レジスタの内容を副作用の対象である資源に
複写するマイクロ命令を追加発行の機能を持つマイクロ
命令発行装置4と、オペランドフィールドが副作用の対
象となる資源であるかどうかを検出する資源干渉検出装
置5と、オペランドフィールドをtlした作業用レジス
タに修飾するオペランドフィールド修飾装置6を設ける
ことにより、副作用の対象となる資源自身は、再実行型
の例外発生の可能性のある間は変更せず命令前のデータ
を保持しておき、命令の実行とともに副作用により変化
するデータは作業用レジスタに格納しておき、オペレー
ンヨン完了時には、作業用レジスタに格納しておいたデ
ータを資源自身に複写することより、命令再実行を行え
る。
なお、本実施例において、副作用検出装置1、モード管
理装置2、および資源干渉検出装置5等は、P LA
(Programmable Logic Array
)で簡単に実現でき、再実行例外検出装置3、マイクロ
命令発行装置4、およびオペランドフィールド修飾装置
6等は、PLAとROM (Read 0nly Me
mory)て簡単に実現できる。これは、マイクロプロ
ツセサ等においても実現が容易であること、修正変更等
が容易に行えること、マイクロプログラム制御に簡単に
取り入れること等を考えると大きな長所である。
理装置2、および資源干渉検出装置5等は、P LA
(Programmable Logic Array
)で簡単に実現でき、再実行例外検出装置3、マイクロ
命令発行装置4、およびオペランドフィールド修飾装置
6等は、PLAとROM (Read 0nly Me
mory)て簡単に実現できる。これは、マイクロプロ
ツセサ等においても実現が容易であること、修正変更等
が容易に行えること、マイクロプログラム制御に簡単に
取り入れること等を考えると大きな長所である。
また、本実施例において、作業用レジスタが必要となり
ハードウェアの増加をともなうような印象を与えてしま
うが、通常、情報処理装置は高機能命令実行のため、複
数の作業用レジスタを有しており、本実施例においても
その内の1個のレジスタを一時的に使用したに過ぎない
。よってハードウェアの増加は必要ない。
ハードウェアの増加をともなうような印象を与えてしま
うが、通常、情報処理装置は高機能命令実行のため、複
数の作業用レジスタを有しており、本実施例においても
その内の1個のレジスタを一時的に使用したに過ぎない
。よってハードウェアの増加は必要ない。
発明の詳細
な説明したように、本発明によれば、副作用のあるオペ
ランド指定部を有する命令の実行において、情報処理装
置内部に副作用の対象となる資源の複製を持たずに、例
外が発生した場合でも、副作用の対象となる資源に関し
命令実行前に復元し、命令再実行することができその実
用的効果は大きい。具体的には、以下のような効果とな
る。
ランド指定部を有する命令の実行において、情報処理装
置内部に副作用の対象となる資源の複製を持たずに、例
外が発生した場合でも、副作用の対象となる資源に関し
命令実行前に復元し、命令再実行することができその実
用的効果は大きい。具体的には、以下のような効果とな
る。
ます、命令再実行時においてソースデータの復元等は必
要なく、制御が簡単化できる。また、本情報処理装置は
専用ハードウェアの増加も必要なく実現でき、マイクロ
命令で制御できることから装置の検証も簡単になる。引
いては、情報処理装置の稼働率をあげ、信頼性を上げる
ことが可能で、仮想記憶対応も容易である。これらの実
用的効果は非常に大きいと言える。
要なく、制御が簡単化できる。また、本情報処理装置は
専用ハードウェアの増加も必要なく実現でき、マイクロ
命令で制御できることから装置の検証も簡単になる。引
いては、情報処理装置の稼働率をあげ、信頼性を上げる
ことが可能で、仮想記憶対応も容易である。これらの実
用的効果は非常に大きいと言える。
第1図は本発明の一実施例の情報処理装置の解読部の構
成図、第2図は同実施例のマイクロ命令の説明図、第3
図は同実施例の情報処理装置が有する演算部の説明図、
第4図は副作用のあるオペランド指定部を有する命令の
処理の説明図、第5図は副作用のあるオペランド指定部
を有する命令の処理の説明図、第6図は副作用のあるオ
ペランド指定部を有する命令の処理の説明図、第7図は
副作用のあるオペランド指定部を有する命令の処理の説
明図、第8図は従来の情報処理装置のブロック回路図で
ある。 ■・・・副作用検出装置、2・・・モード管理装置、3
・・・再実行例外検出装置、 4・・・マイクロ命令発行装置、 5・・・資源干渉検出装置、 6・・・オペランドフィールド修飾装置。 代理人の氏名 弁理士 粟野重孝 はか1名図 図 命へ輝読室 賓S憚 第 図 弔 図 第 図 」噂
成図、第2図は同実施例のマイクロ命令の説明図、第3
図は同実施例の情報処理装置が有する演算部の説明図、
第4図は副作用のあるオペランド指定部を有する命令の
処理の説明図、第5図は副作用のあるオペランド指定部
を有する命令の処理の説明図、第6図は副作用のあるオ
ペランド指定部を有する命令の処理の説明図、第7図は
副作用のあるオペランド指定部を有する命令の処理の説
明図、第8図は従来の情報処理装置のブロック回路図で
ある。 ■・・・副作用検出装置、2・・・モード管理装置、3
・・・再実行例外検出装置、 4・・・マイクロ命令発行装置、 5・・・資源干渉検出装置、 6・・・オペランドフィールド修飾装置。 代理人の氏名 弁理士 粟野重孝 はか1名図 図 命へ輝読室 賓S憚 第 図 弔 図 第 図 」噂
Claims (1)
- 命令を解読し、演算の対象となるオペランドの指定と同
時に、前記演算の対象となるオペランド以外の資源であ
る副作用の対象となる資源を書き替える、副作用のある
オペランド指定部を検出する副作用検出装置と、前記命
令において前記命令の先頭から現在の解読時まで副作用
のあるオペランド指定部が無いことを示す初期モードと
、前記副作用検出装置より副作用のあるオペランド指定
部検出を認識することにより、前記初期モードから副作
用のあるオペランド指定部を既に解読済であることを示
す副作用モードへ遷移するモード管理装置と、前記命令
を解読し、マイクロ命令の発行によって命令再実行を行
なう例外の発生が今後起こりえないことを検出する再実
行例外検出装置と、前記命令を解読し、前記命令に対応
するマイクロ命令を発行すると共に、前記命令の命令最
終語が副作用のあるオペランド指定部を持たず、かつ前
記再実行例外検出装置より命令再実行を行なう例外の発
生が今後起こりえないことを認識した場合には、指定し
た作業用レジスタの内容を副作用の対象である資源に複
写するマイクロ命令を追加発行するマイクロ命令発行装
置と、前記マイクロ命令発行装置が発行したマイクロ命
令における演算の対象を指定するオペランドフィールド
が副作用の対象となる資源であるかどうかを検出する資
源干渉検出装置と、前記命令を解読し、前記モード管理
装置が保持するモードが前記初期モードの場合、前記資
源干渉検出装置より前記マイクロ命令発行装置が発行す
るマイクロ命令のデスティネーションオペランドフィー
ルドが副作用の対象となる資源であることを認識したな
らばデスティネーションオペランドフィールドを前記指
定した作業用レジスタに修飾し、前記副作用モードの場
合、前記再実行例外検出装置より命令再実行を行なう例
外の発生が今後起こり得ることを認識し、マイクロ命令
のオペランドフィールドが副作用の対象となる資源であ
ることを認識したならば前記指定した作業用レジスタに
修飾し、前記再実行例外検出装置より命令再実行を行な
う例外の発生が今後起こり得ないことを認識し、マイク
ロ命令のソースオペランドフィールドが副作用の対象と
なる資源であることを認識したならばソースオペランド
フィールドを前記指定した作業用レジスタに修飾するオ
ペランドフィールド修飾装置とを備えたことを特徴とす
る情報処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63302903A JPH0721768B2 (ja) | 1988-11-30 | 1988-11-30 | 情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63302903A JPH0721768B2 (ja) | 1988-11-30 | 1988-11-30 | 情報処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02148226A true JPH02148226A (ja) | 1990-06-07 |
| JPH0721768B2 JPH0721768B2 (ja) | 1995-03-08 |
Family
ID=17914495
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63302903A Expired - Fee Related JPH0721768B2 (ja) | 1988-11-30 | 1988-11-30 | 情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0721768B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2119337A1 (en) | 2008-05-13 | 2009-11-18 | Honda Motor Co., Ltd. | Riding lawn mower |
-
1988
- 1988-11-30 JP JP63302903A patent/JPH0721768B2/ja not_active Expired - Fee Related
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2119337A1 (en) | 2008-05-13 | 2009-11-18 | Honda Motor Co., Ltd. | Riding lawn mower |
| US7987657B2 (en) | 2008-05-13 | 2011-08-02 | Honda Motor Co., Ltd. | Riding lawn mower |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0721768B2 (ja) | 1995-03-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6280743A (ja) | アドレス変換例外処理方法 | |
| JPH0242569A (ja) | ベクター処理システムに用いる文脈スイッチング方法及び装置 | |
| JPS58121457A (ja) | 情報処理装置 | |
| JPS623347A (ja) | エラ−回復情報退避方式 | |
| JPH02148226A (ja) | 情報処理装置 | |
| US5673391A (en) | Hardware retry trap for millicoded processor | |
| JPS61173358A (ja) | データ処理装置 | |
| JP2562838B2 (ja) | プロセッサ及びストアバッファ制御方法 | |
| JP3490191B2 (ja) | 計算機 | |
| JPH0524537B2 (ja) | ||
| JPS61235985A (ja) | ベクトルプロセツサ | |
| JPS59172044A (ja) | 命令制御方式 | |
| JPH04181331A (ja) | 命令リトライ方式 | |
| JPH01231126A (ja) | 情報処理装置 | |
| JPS5931148B2 (ja) | デ−タ処理装置 | |
| JPH0133856B2 (ja) | ||
| JPS58166454A (ja) | デ−タ処理装置 | |
| JPH03269628A (ja) | 例外処理方式 | |
| JPH0795270B2 (ja) | 情報処理装置 | |
| JP2622026B2 (ja) | 中央処理装置におけるレジスタ書込制御方式 | |
| JPH0234058B2 (ja) | ||
| JPH0546389A (ja) | 並列処理装置 | |
| JPS60123944A (ja) | 情報処理装置におけるバツフアメモリ制御方式 | |
| JPH0535499A (ja) | データ処理装置及びデータ処理方法 | |
| JPH03168845A (ja) | 命令実行制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |