JPH0786838B2 - 割り込み処理方式 - Google Patents
割り込み処理方式Info
- Publication number
- JPH0786838B2 JPH0786838B2 JP3080822A JP8082291A JPH0786838B2 JP H0786838 B2 JPH0786838 B2 JP H0786838B2 JP 3080822 A JP3080822 A JP 3080822A JP 8082291 A JP8082291 A JP 8082291A JP H0786838 B2 JPH0786838 B2 JP H0786838B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- interrupt
- resource use
- cpu resource
- asynchronous
- 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 - Fee Related
Links
Landscapes
- Advance Control (AREA)
Description
CPU資源使用処理の実行を、処理のデータ依存関係を
保証しながら命令の実行と非同期化(命令により処理が
開始されるが処理の終了は、命令の終了以降となる。C
PUは、該当処理を開始した命令を実行後、開始された
処理の終了以前に次の命令の実行を開始する。)したC
PUにおいて、割込み発生時の非同期CPU処理の終了
方法およびこれら非同期CPU処理で発生したCPU資
源使用処理依存割込み要因の報告方法に関する。特に、
OSの割込みハンドラで使用する基本的な処理を、命令
と非同期的に実行する場合に、本発明は有効となる。
令と同期的に実行するCPUにおいても、後続命令を部
分的に先行実行し前の処理でプログラム割込みが発生し
た場合に先行実行した命令の影響をキャンセルすること
により、処理時間の長い命令の後続命令の部分的な先行
実行を行うことができる。ただし、この場合には、CP
Uの命令パイプラインが複雑となり、また後続命令の先
行実行も限られた範囲でしか実行できない。
理の実行時に後続する同時実行可能な(前の処理とデー
タ依存関係の無い)CPUの命令の実行を停止しないこ
とによりCPU性能を向上させるためには、処理時間の
長いCPU資源使用処理の実行を命令の実行とは非同期
化することが、1つの有効な方法である。このとき、1
個以上の非同期CPU資源使用処理を含む複数のCPU
資源使用処理が同時に実行されることになる。
資源使用処理の終了方法として、以下のいずれかが用い
られていた。割込みには、CPU資源使用処理依存割込
みと、CPU資源使用処理無依存割込みの2種類があ
る。 (1) CPU資源使用処理は、全て命令と同期して実行さ
れる処理のみである。命令の実行でCPU資源使用処理
依存割込み要因が検出されたときには、命令の実行終了
後次の命令の実行開始前に、対応するCPU資源使用処
理依存割込みが発生する。最後に実行された命令で、C
PU資源使用処理依存割込み要因が検出されなかった場
合で、かつCPU資源使用処理無依存割込み要因が存在
する場合にのみ、対応するCPU資源使用処理無依存割
込みが発生する。
生時に割込み前に開始されたCPU資源使用処理は全て
終了しているので、割込みハンドラを作成しやすい。ま
た、必要なCPU資源使用処理依存割込み要因に対する
割込みでは、割込みハンドラの適当な処理後、元のプロ
グラムを再開することができる。
には、実行時間の長いCPU資源使用処理の実行中に、
後続CPU資源使用処理の実行を終了することができ
ず、このときCPUの性能が低下する。 (2) 一部のCPU資源に入出力を行い非同期的に動作す
るユニット(例えば浮動小数点演算ユニット)が、命令
により開始され命令の実行とは非同期的に実行される処
理(非同期CPU資源使用処理)を実行する。これらの
非同期CPU資源使用処理で、CPU資源使用処理依存
割込み要因が検出されたときには、次にこのユニットか
らアクセスされるCPU資源を使用する処理またはこの
ユニットが実行する処理を開始する命令の実行時に、そ
の命令で指定された処理は実行されずに、命令と同期し
てその非同期動作ユニットが保持するCPU資源使用処
理依存割込みが発生する。
源使用処理依存割込み以外の割込み要因が検出されたこ
れに対応する割込みが発生したとき、非同期動作ユニッ
トの動作の終了待ちは行われない。また、このとき非同
期動作ユニットが保留しているCPU資源使用処理依存
割込み要因は、同時には報告されない。
非同期動作ユニットがCPU資源使用処理依存割込み要
因を同時に保持している場合でも、CPU資源使用処理
依存割込みが優先されずその割込み要因は保留されたま
まで、CPU資源使用処理無依存割込みが発生する。
力資源が、割込みハンドラの環境退避部分で使用されな
い場合には、この方法は有効な割込み方式である。ただ
し、割込みハンドラで使用する基本的なCPU資源使用
処理を非同期化した場合には、この割込み方式では次の
問題がある。
の割込みを処理する割込みハンドラの動作中に、割込み
発生前に実行していたプログラムが開始した処理で検出
されたCPU資源使用処理依存割込み要因に対する割込
み(2番目の割込み)が発生する。2番目の割込みに対
する処理で、どのプログラムが割込み要因を発生した処
理を開始したかを判別するのが不可能となるかまたは非
常に困難となる。従って、この場合には、割込みハンド
ラが使用するCPU資源使用処理で検出されるCPU資
源使用処理依存割込みに対する処理が不可能となるか、
またはこの割込みに対する割込みハンドラの処理が非常
に複雑となる。 (3) 非同期的に動作するユニットが、命令により開始さ
れ命令の実行とは非同期的に実行される非同期CPU資
源使用処理を実行する。非同期ユニットの出力を後続処
理で使用する場合には、規定された手順が必要な場合
と、後続処理を開始する命令の実行開始が遅れる場合の
2種類がある。
PUは以下の割込み動作を行う。 新たな命令の実行を開始しない。 非同期動作ユニットが実行中の処理(非同期CPU
資源使用処理)が全て終了するまでCPU待機する。非
同期動作ユニットは、先行する処理でCPU資源使用処
理依存割込み要因が検出されたか否かに依存せず実行が
開始された処理を全て実行する。CPU資源使用処理依
存割込み要因が検出され、期待された値と異なる値とな
った出力も後続処理でそのまま使用する。この場合に
は、後続処理の実行結果も期待されたものとは異なるよ
うになり、また入力が期待された値を持たなかったため
にこの後続処理でもCPU資源使用処理依存割込み要因
が検出されることがある。
個以上のCPU資源使用処理依存割込み要因が検出され
たときには、非同期動作ユニットは最初に検出された割
込み要因を保持するか、検出された全ての割込み要因を
保持するかのいずれかの動作を行う。
合には、あるCPU資源使用処理依存割込み要因が引き
金となって、後続処理でのCPU資源使用処理依存割込
み要因を発生させたとき、元々引き金となった割込み要
因を特定するのが困難となる。
要因が1個も検出されなかった場合には、割込み動作を
開始したCPU資源使用処理無依存割込みが発生する。
CPU資源使用処理依存割込み要因が検出されたときに
は、割込み動作を開始させた割込み要因の種別に依存せ
ず、CPU資源使用処理依存割込みが発生する。
処理依存割込み要因が検出され出力が期待された値とな
った処理の出力を入力として使用する処理の実行を停止
しないので、入力が異常な場合に破壊する資源が特定で
きないような処理(例えば主記憶へのストアなど、入力
として使用するアドレスが異常な場合には、予測できな
い領域を破壊する)を非同期化するとプログラムのデバ
ックが非常に困難となる。
でCPU資源使用処理依存割込み要因が検出された場合
には、元のプログラムを再開することはできない。第1
の発明は、割込みハンドラが使用するような基本的なC
PU資源使用処理の非同期的実行が可能であり、かつ割
込みハンドラの作成が容易な割込み処理方式を目的とす
る。
ような基本的なCPU資源使用処理の非同期的実行が可
能であり、必要なCPU資源使用処理依存割込み要因に
対しては、対応する割込みハンドラの処理の終了後、元
のプログラムを再開可能とするための割込み処理方式を
目的とする。
下記の通りである。 CPU資源使用処理依存割込み、およびCPU資源
使用処理無依存割込み要因のどちらかが検出されたとき
に、割込み動作を開始する。 割込み動作中で、データ依存関係を保証しつつ実行
中の全てまたは一部の非同期CPU資源使用処理を終了
させる。CPU資源使用処理依存割込み要因の検出され
た処理の出力を入力として使用する処理は、未実行で終
了させる。この操作の終了時には、データ依存関係を消
去する。 割込み動作終了時に、CPU資源使用処理依存割込
み要因が検出されている場合には、割込み動作を開始し
た割込み要因の種別に依存せず、CPU資源使用処理依
存割込みを発生する。そうでない場合には、CPU資源
使用処理無依存割込みを発生させる。
は、検出された全てのCPU資源使用処理依存割込み要
因の全て、および未実行となった処理に関する情報を表
示する。 再開の期待されるCPU資源使用処理依存割込み要
因および未実行で終了した処理に対して、適当な割込み
ハンドラの処理後、元のプログラムに戻ったときにハー
ドウェアが処理を再実行できるようにするか、割込みハ
ンドラが処理をエミュレーションするのに十分な情報を
表示する。
らの入力、CPU資源への出力、またはその双方を行う
処理(CPU資源使用処理)が、同期CPU資源使用処
理と非同期CPU資源使用処理の2種類に分類され各々
次のように実行する。
令する命令により開始され、命令の実行と同期して実行
される処理である。命令の実行終了時には、その命令に
より開始された同期CPU資源使用処理は、終了してい
る。
指定する命令により開始され、命令の実行とは非同期的
に実行される処理である。命令の実行終了以降に、その
命令により開始された非同期CPU資源使用処理は終了
する。 (2) CPU資源に出力を行う非同期CPU資源使用処理
(先行処理)が命令により開始されたとき、該当処理を
開始した命令より後で発行される命令で開始されるCP
U資源使用処理(後行処理)で先行処理の資源への出力
を入力として使用するときは、後行処理での資源の入力
が先行処理での該当資源への出力が終了するまで待たさ
れる。
源への出力を行う場合には、該当処理より先に開始され
た全てのCPU資源使用処理(先行処理)による該当資
源へのアクセス(入力および出力の両者)が終了してか
ら、後行処理は該当資源への出力を行う。
には、先行処理での関係する資源へのアクセスが終了す
るまで後行処理を指定する命令の実行終了を遅らる
(プログラムカウンタは、その後行処理を開始する命令
を指したままとする)。後行処理が非同期CPU資源使
用処理の場合には、後行処理を開始する命令の実行終了
を前の処理の該当資源への関係するアクセスが終了する
まで遅らせても良いし、後行処理を開始する命令の実行
は完了し後行処理を開始するが後行処理での該当資源へ
のアクセスを遅らせても良い。
れると、その入力が終了するまでは、後続CPU資源使
用処理での該当資源への出力は待たさる。 (3) 同期CPU資源使用処理の一部、および非同期CP
U資源使用処理の一部は、CPU資源使用処理依存割込
み要因を発生する。CPU資源使用処理依存割込み要因
とは、CPU資源使用処理の実行中に特定の事象が発生
した場合に検出される割込み要因であり、CPU資源使
用処理依存割込み要因が検出された処理の出力が期待さ
れた結果(その出力を後続処理で入力として使用する事
が期待される結果)にならなかった事を示す割込み要因
である。
された処理の出力を、後行処理で入力として使用する
と、後行処理の実行結果も期待された実行結果と異なる
様になる。
資源使用処理依存割込み要因が検出されたとき、または
外部割込み等の実行中のCPU資源使用処理の実行結果
に直接依存せずに発生する割込(CPU資源使用処理無
依存割込み)の割込み要因が検出されたときには、ハー
ドウェアは以下の割込み動作を行う。
始しないが、実行中の命令およびすでに実行が開始され
ている非同期CPU資源使用処理は継続して実行する。
実行可能な非同期CPU資源使用処理が終了し非同期C
PU資源使用処理の状態が変化しなくなるのを待つ。
終了待ちを実行後には、割込み動作の開始時に実行中で
あった全ての非同期CPU資源使用処理は、以下のいず
れか1つの方法で終了する。
を検出せずに完了した。処理の出力は、期待された出力
となった。 非 CPU資源使用処理依存割込み要因を検出して実
行が終了した。
る処理の資源への出力を使用する処理であり、先行する
処理がCPU資源使用処理依存割込み要因を検出し期待
された出力を行わなかったときには、そのCPU資源使
用非同期処理は未実行のまま終了する。未実行で終了し
た処理の出力に対するデータ依存関係は、消去される。
理の出力を入力として使用する非同期CPU資源使用処
理は、未実行のまま終了する。未実行で終了した処理の
出力に対するデータ依存関係は、消去される。
が1個でも検出されている場合には、すでに命令により
開始されている非同期CPU資源使用処理がこの割込み
要因とデータ依存関係が無い場合でも、未実行で終了し
ても良い。
始する命令の実行終了時に以下のいずれか1つの方法で
終了している。(A) の操作が終了したときに、実行中で
あった同期CPU資源使用処理もこれらのいずれかの方
法で終了している。
を検出せずに完了している。 同 CPU資源使用処理依存割込み要因を検出して、
処理の実行が終了した。
要因が1個も検出されなかったとき:割込み動作を開始
させた割込要因は、CPU資源使用処理無依存割込み要
因である。ハードウェアは、割込み動作を開始させた割
込み要因に対応した割込みを発生する。
が1個以上検出されたとき:割込み動作を開始させた割
込み要因によらず、(B) の非〜非となったCPU資
源使用非同期処理および同となったCPU資源使用同
期処理に関する情報を、1回のCPU資源使用処理依存
割込みでプログラムに同時に全て通知する(複合CPU
資源使用処理依存割込みを行う)。 (5) 一部のCPU資源使用処理依存割り込み要因処理プ
ログラムによる適当な処理の実行後にその割り込み要因
を発生したプログラムの再開が期待される事があり(ペ
ージ不在等の割り込み要因)(ここでは、この種のCP
U資源使用処理依存割り込み要因を、再開期待CPU資
源使用処理依存割り込み要因と呼ぶ)、CPU資源使用
処理依存割り込みが発生したとき、再開期待CPU資源
使用処理依存割り込み要因のみが割り込み要因として存
在する場合には、発生した全ての再開期待CPU資源使
用処理依存割り込みに対する適当な処理の後、元のプロ
グラムを再開できる可能性があり、CPU資源使用処理
依存割り込みの発生時に、再開期待CPU資源使用処理
依存割り込みを発生した処理および未実行で終了したC
PU資源使用処理の各々に対して、以下のいずれかが可
能であるようにする 割り込み元のプログラムに復帰するCPU資源使用
処理を実行すると、指定した再開期待CPU資源使用処
理依存割り込み要因を検出した処理、および未実行で終
了した処理が再実行される、かまたは、 割り込み要因処理プログラムが、処理をシュミレー
ションするのに十分な情報を割り込み時にプログラムに
表示する、また、要因発生元のプログラムの再開が期待
されるある種のCPU資源使用処理依存割り込み要因
で、割込み時に入力データが保存されていることが必要
な場合には、その割込み要因の発生時に、その要因を発
生した処理の入力資源を出力先とする後続処理は、全て
未実行で終了させる再開期待CPU資源使用処理割込み
手段を具備し、このことにより、再開期待CPU資源使
用処理依存割込み要因の発生時に、割込み要因を発生し
たプログラムを再開できるようにする。
法をこれを使わない場合と比較しながら述べる。つき離
し法を使わないパイプライン方式における基本的なタイ
ミングを図1に示し、つき離し法を使う場合のタイミン
グを図2に示す。
ミングである。各時間区域の動作を説明するために記号
が使われており各記号の意味は以下に示す。 D : Decode : 命令のデコードと実行開
始条件(データ依存関係および資源のぶつかり)の検出 E : Execute : 演算の実行,主記憶アク
セス命令では実行アドレスの計算 W :Write : 実行結果の書込み P1 :Priority of load : 非同期処理キューへのエ
ンキュー及び実行開始条件(データ依存関係および資源
のぶつかり)の検出 C :Cache : アドレス変換およびキャ
ッシュからのデータ読込み W1 :Write of load : キャッシュ( および主記
憶) から読み込んだデータのレジスタへの書込み Pf :Priority of floating point operation:非同期
実行キューへのエンキューおよび実行開始条件(データ
依存関係および資源のぶつかり)の検出 Ef1:Execute of floating point operation 1 Ef2:Execute of floating point operation 2 Ef3:Execute of floating point operation 3 浮動小数点加算および浮動小数点乗算の演算結果の書込
みサイクル つき離し法を使わないパイプラインにおいては、図1の
に示すように、レジスタ−レジスタ間演算の場合に
は、D,E,W,の順にパイプライン処理が行われ、E
サイクルの終わりにおいて、バイパスが可能となる。キ
ャッシュからのロードが必要な場合には、アドレス変換
およびキャッシュからのデータ読み込みのためのCサイ
クルが必要となり、このサイクルの終わりにバイパスが
可能となる。
実行サイクルが1τから3τに引き延ばされ、Ef1,
Ef2,Ef3が必要となる。バイパスはEf3の後に
なる。
合が図2であり、の場合は、つき離し法を使わない場
合と同じであり、キャッシュからのロードする場合に
は、に示されるように、Dサイクルの終わりにおい
て、P1区間があり、すなわち非同期キューへのエンキ
ュー及び実行開始条件(データ依存関係および資源のぶ
つかり)を検出し、この後に、Cサイクルに入る。但
し、これらの動作はつき離し法でできる。浮動小数点の
場合も、つき離し法で行われ、非同期実行キューへのエ
ンキューおよび実行開始条件データ依存関係および資源
のぶつかり)の検出が行われ、この後に、浮動小数点の
演算サイクルとなる。なお、つき離し法では、同期処理
からつき離した形で、平行動作されるが、同期と非同期
の詳細タイミングは図3に示される。 : 命令実行制御部および同期演算実行部のパイプ
ラインD-Wait ,E-Wait , W-Wait 有り : 非同期処理:主記憶読込み(load) のパイプラ
イン(キャッシュヒット時),P-Wait有り、Cサイクル
が開始されるまで、命令実行制御部のEサイクルと同期
する(実効アドレスをEサイクルの出力としてCサイク
ルで入力するため)。
ない場合の基本タイミングを用いて配列の和を求めるプ
ログラムについてのタイミング図を図4の例を使って説
明する。
る計算を例に示す。配列の要素はIEEEP754の形
式の(Project 754 )倍精度浮動小数点数(8バイト
長)とする。
において、図4のプログラムを実行した場合のタイムチ
ャートを説明する。プログラムの各命令の番号1〜10
のタイムチャートの左側に示している番号と対応する。
従うパイプラインによって可能となる。番号5におい
て、プログラムはルーピングに入るが、ループの内部に
入った最初の命令、すなわち、5番目の命令において、
キャッシュが使われるため、基本サイクルはD,E,
C,Wとなる。6番目の命令においては浮動小数点演算
の加算が行われるが、そのオペランドは4番目の命令の
実行結果と5番目の命令の実行結果である。ここに、デ
ータ依存関係があり、これらのデータがそろわなけれ
ば、浮動小数点の加算に入ることができない。従ってタ
イムチャート図5の番号6に示すように、1τだけ後れ
てD,D,Ef1,Ef2,Ef3,Wfとなる命令7
においてはGR2と3の加算を行うものであって、これ
は命令6の浮動小数点の結果を使わず、それとデータ依
存関係はないが、つき離し法を用いないこの例では、図
5の7番目に示されるように基本タイミングはDサイク
ルが2τ分だけ延ばされD,D,D,E,Wとなる。
命令は、D,E,Wでパイプラインで行われ、命令9に
おいて命令5にジャンプするときにブランチペナルティ
として1τだけ遅れ、D,E,Wが始まる。
使って実行する場合が図6である。番号1,2,3につ
いては図5と同じであるが命令5のキャッシュを使うと
ころにおいて、5非に示されるように、キャッシュ動作
は非同期に行われ、Pl CWlのサイクルがつき離し
的に行われ、5のWの真下に5非Cサイクルが重なり、
同時に実行される。図5の場合に比べてはやくなる。ま
た、命令6の浮動小数点演算においても、命令6と6非
の2つを使って実行され、デコードした後につき離し法
により6非の状態に進むことができる。図に示されるよ
うに、5非のCの出力が6非においてEf1の入力とな
っている。そして、命令7の同期処理になるが、このD
サイクルは命令6のEサイクルすなわち6非のPfサイ
クルを同様に行うことができる。
と比べて2τだけ速くなっている。従って、図5のつき
離しを使う方が使わない方に比べて3tだけ高速になっ
ている。
様である。本発明の非同期処理の割込みに対する再開動
作とデータ依存会計に関する発明はこのようなつき離し
法を用いた計算機上で使われるものである。
て説明する。まず、図7の各構成要素を説明する。命令
形式は図8は示すように、下記の通りである。OPC:
命令コード,OPCの値により、命令中の他のフィー
ルドの位置部が無視される事がある。また、命令のビッ
ト17〜31がGRを示すかFRを示すかは、OPCの値に
より以下のように決定されるとする。 OPCの最上位ビットが0のとき: 命令のビット17〜31は、GRを示す。 OPCの最上位ビットが1のとき: 命令のビット17〜31は、FRを示す。 ただし、主記憶とFR間のデータ転送命令では、OPC
の最上位ビットは0であるが、ビット17〜26は、GRN
1,GRN2を示し、ビット27〜31は、FRN3を示す
とする。このときGR1+GR2+IMMが実効アドレ
スを示し、FRNが主記憶との転送元または転送先FR
を示すとする。
その1 GRN2: GR Number 2.入力GRレジスタ番号
その2 GRN3: GR Number 3.出力GRレジスタ番号 FRN1: FR Number 1.入力FRレジスタ番号
その1 FRN2: FR Number 2.入力FRレジスタ番号
その2 FRN3: FR Number 3.出力FRレジスタ番号同期処理と非同期処理の種類,割り込みの種類 2−1同期処理 分岐処理、プログラム呼出し処理(命令の実行順序
を変更する処理) SVC(スーパバイザコール)処理 CR(制御レジスタ)にアクセスする処理(ただ
し、PSRのCCのみを変更する処理を除く) 非同期処理キュー複写レジスタにアクセスする処理 2−2非同期処理 実行時間の長い演算処理 GRと主記憶間の転送処理およびFRと主記憶間の
転送処理 2−3割込み プログラム割込み CPU資源使用処理依存割込み、CPU資源使用処理の
出力が期待されたものと異なるものとなったことを示す SVC(スーパバイザコール)割込み SVC命令の実行時に、割込み要因の生成される割込み
である。SVC命令のIMM部の下位7ビット+0×8
0の値が呼び出し番号として使用される。 外部割込み 外部からCPUへの入力信号である外部割込み信号が割
込み要因となる割込みである。外部割込みには、レベル
0〜15があり、PSRのEAL以上のレベルの外部割
込み信号のみが受理され、割込み動作を開始させる。
のみをアクセスする。CRおよび非同期処理キュー複写
レジスタをアクセスする処理は、同期処理のみである。
のベースレジスタやインデックスレジスタとして使用さ
れる汎用レジスタである。
在する。各GRには固有のGR番号0〜31が割りつけ
られている。GR0は常に0を保持し、GR0への書込
みは無視され、GR0を読み込むと常に0が読まれる。 FR(Floating point Register):浮動小数点レジ
スタ 浮動小数点演算の入出力先として使用されるレジスタで
ある。FRは、1個64ビット長であり32個存在す
る。各FRには固有のFR番号0〜31が割りつけられ
ている。FR0は常に0を保持し、FR0への書込みは
無視され、FR0を読み込むと常に0が読まれる。 CR(Control Register) :制御レジスタ CPUの動作を制御するためのパラメータを保持するレ
ジスタである。32ビット長のCRが32本存在する。
CR0からCR4には、以下のパラメータが割りつけら
れている。 CR0:PSR(Processor Status Register) プログラムの主な動作環境を規定するパラメータ(スー
パバイザモード/ユーザモード等)を保持するレジスタ
である。PSR中に2ビット長のCC (Condition Co
de:条件コード領域)および4ビット長のEAL(Exte
rnal interruptAccept Level )が存在する。CCは、
特定の処理で出力の対象となり、また条件分岐処理では
分岐判定のための入力として使用される。
ベルを規定する。EALより大きい値を持つ外部割込み
信号のみが受理され、割込み動作を開始させる。 CRI:OPSR(Old PSR) 割込み発生時に、割込み発生前のPSRの値を保持する
レジスタである。
r) 割込み発生時に、割込み発生前のPCの値(次に実行す
べき命令のアドレスを指す)を保持するレジスタであ
る。
er) プログラム割込みの発生時に、非同期処理の終了待ち後
の非同期処理実行キューの最終エントリポインタの値を
保持するレジスタである。
n) 割込み発生時に、割込み種別を示すコード(INTTYPE)お
よびプログラム割込みの発生時に、最後に実行した同期
処理の終了コード(LSRETC) を図9に示す形式で保持す
るレジスタである。
が成される。 0×00〜0×0F:予約されている 0×10 :プログラム割込み 0×11〜0×1F:予約されている 0×20〜0×2F:レベル0〜レベル15の外部割込
み,(L+32)の値がレベルLの外部割込みを示す。 0×30〜0×7F:予約されている 0×80〜0×FF:呼出し番号0×80〜0×FFの
スーパバイザ呼び出し割り込み、SVC命令のIMM値
の下位7ビット+0×80の値がスーパバイザ呼び出し番
号となる。 CR5:INTB(INTerrupt Base address) 割込み発生時に、新たにIC(命令カウンタ)に設定さ
れるアドレスのベースアドレスを保持するレジスタであ
る。割込み発生時には、INTB+INTTYPE*1
6の値がICの新しい値として設定される。 CR6:NPSR(New PSR) 割込み発生時に、新たにPSRに設定される値を保持す
るレジスタである。 CR7〜CR31 他のプログラム動作環境を規定するパラメータを保持す
るレジスタとして使用される。 非同期処理キュー複写レジスタ(Asynchronous Pro
cess Copy Register) プログラム割込みの発生時、非同
期動作の終了待ち後の非同期処理キューの内容が複写さ
れるレジスタである。1本64ビット長で、32本の非
同期処理キュー複写レジスタがある。ただし、APCR
Oは、常に0を保持する。各APCRは、次の形式を持
つ。
OLEPが0 でない時には、APCR1 〜APCR(OLEP)の内容が非
同期処理キューに書き込まれる。4−2 命令バッファ 通常のCPUの命令バッファと同じ、実行する命令は、
この命令バッファにいったん取り込まれる。主記憶から
命令バッファへの命令の読み込みは、通常の計算機と同
じ。4−3 命令実行制御部 命令の実行および割込みの制御を行うユニットである。
分岐を含む命令フェッチの制御、命令のデコード、処理
の実行制御、割込み動作の制御、割込み動作を行う。命
令実行制御部の動作については、/5/を参照。
する。 IC(Instrcution Counter) :命令カウンタ 次に実行すべき命令のアドレスを示すカウンタである。 SRETC(Synchronous process RETurn code) 同期処理の終了コードを保持するレジスタである。 SVCC(SVC Code) 直前に実行されたSVC 命令のSVC コードを保持するレジ
スタである。4−4 同期処理実行部 命令実行制御部の指示により同期処理を実行する部分で
ある。処理の実行結果に応じて、CR中のSRETC (Synchr
onous process RETurn code )を設定する。4−5 非同期処理キュー 実行中の非同期処理、および命令により開始され実行待
ちの非同期処理が保持されるキューである。APQE1 〜AP
QE31の31個のエントリが存在する。各エントリは、命令
コード、終了コード( RETC:8ビット長) 、実行ID(EXID
:EXecutionID)から構成される。
実行中である。 APQE(SEP)が次に実行が開始されるエントリである。 APQE(SEP+1)〜 APQE(LEP)が命令により開始されたが実
行待ち状態にあるエントリである。
トリを示す。 命令バッファ、および開始点ポインタの指すエントリに
対する以下のレジスタ干渉検出機構がある。以下のレジ
スタ干渉検出機構で、命令バッファ中のCR番号が0のと
き、または開始点ポインタの指すエントリ中のGR番号が
0のときは、その領域は比較対象の領域中に含まれない
と判定される。 命令バッファ(IB) ・IB.GRN1 がAPQE1 〜APQE(LEP) のGRN3領域に含まれて
いるか否かの判定機構 ・IB.GRN2 がAPQE1 〜APQE(LEP) のGRN3領域に含まれて
いるか否かの判定機構 ・IB.GRN3 がAPQE1 〜APQE(LEP) のGRN1,GRN2 またはGR
N3領域に含まれているか否かの判定機構 ・IB中の命令がFRを指定する命令の場合も上記3 項目と
同様の判定機構。 ・IB.OPCがCCを変更するか参照する処理のとき、APQE1
〜APQE(LEP) に、CCを変更する処理(OPC) が含まれてい
るか否かの判定機構、IB.OPCがCCをアクセスしない処理
のときには、CCの干渉がないと判定される。 これらの干渉のいずれかが存在する時には、命令実行制
御部へのデータ干渉信号線の値は1となる。 開始点ポインタの指すエントリ(Start Entry)・S
E.GRN1 が APQE1〜APQE(SEP-1) のGRN3領域に含まれて
いるか否かの判定機構、 ・SE.GRN2 が APQE1〜APQE(SEP-1) のGRN3領域に含まれ
ているか否かの判定機構、 ・SE.GRN3 が APQE1〜APQE(SEP-1) のGRN1、GRN2または
GRN3領域に含まれているか否かの判定機構、 ・SE中の命令がFRを指定する命令の場合も上記3項目と
同様の判定機構 ・SE OPCがCCを変更する処理のとき、APQE1 〜APQE(SEP
-1) にCCを変更する処理(OPC) が含まれているか否かの
判定機構、SE.OPCがCCを変更しない処理のときには、CC
の干渉がないと判定される。
ューは、エンキューデキュー制御部により次の様に実行
される。 エンキュー 命令実行制御部が、命令バッファ中の命令が非同期処理
を示すことを検出したとき、命令実行制御部が、エンキ
ューデキュ制御部に、非同期処理のエンキュー要求を発
行する。LEP が31未満のときにはエンキューデキュー制
御部は、LEP に1を加算し、LEP の新しい値の指すエン
トリに命令バッファの内容をコピーする。該当エントリ
のRETCおよびEXIDは0に初期化される。
杯であり、新しいエントリをエンキューすることはでき
ない。このときには、キューのエントリかデキューされ
るまで命令の実行が遅らされる。 デキュー 開始点ポインタ(SEP) より小さいエントリ番号を持つ処
理が、プログラム割込み要因無しに終了したとき、非同
期処理実行制御部はEXIDを指定してエントリのデキュー
をエンキューデキュー制御部に指示する。エンキューデ
キュー制御部は、指定されたEXIDを持つエントリの以降
の全てのエントリを1 つづつ前のエントリにずらし、SE
P とLEP の値をそれぞれ1 ずつ減少させる。4−6 エンキューデキュー制御部 エンキューデキュー制御部は、開始エントリポインタ
(SEP)および最終エントリポインタ(LEP) を保持し、次
の動作を行うハードウェアユニットである。 命令実行制御部からの指示により、命令バッファの
内容をキューの最後尾にエンキューする。 プログラム割込み要因の発生時に、非同期動作の終
了待ちが行われた後、命令実行制御部の指示により、AP
QE1 〜APQE(LEP) の内容をAPCR1 〜APCR(LEP)に複写
し、OLEPにはLEP の値を複写する。その後、LEP に0 、
SEPに1 を設定する。 非同期処理実行制御部が指定したEXIDを、SEP の指
すエントリに書込み、SEP を1 増加させる。 非同期処理実行制御部が指定したEXIDを持つエント
リを、デキューする。 非同期処理実行制御部が指定したEXIDを持つエント
リのRETCに、指定された値を設定する。4−7 非同期処理実行制御部 非同期処理実行制御部は、SEP の指すエントリの開始判
定、開始した処理に対する命令コードとEXIDの処理実行
ユニットへの送付および処理の実行開始の制御、および
非同期処理の終了時の制御を行う。非同期処理実行制御
部の動作については、/5/ を参照。
ビット長レジスタを保持する。 EXIDB(EXID Busy flag) 各1 ビット長であるEXIDB#1 〜EXIDB#31の31ビットのフ
ラグから成るレジスタである。EXIDB#(X) は、X の値を
EXIDとして持つ非同期処理が使用されているか否かを,
次のように表示する。 0:X の値のEXIDは使用されていない。 1:X の値がEXIDとして使用されている。X の値をEXID
として持つ非同期処理は、実行中であるか、プログラム
割込み要因を検出して終了しているかのいずれかの状態
にある。 EXIDR(EXID interRupt flag) 各1 ビット長であるEXIDR#1 〜EXIDR#31の31ビットのフ
ラグから成るレジスタである。EXIDR#(X) は、X の値を
EXIDとして持つ非同期処理がプログラム割込み要因を検
出して終了しているか否かを次のように表示する。 0:X の値のEXIDを持つ処理は、存在しないか実行中で
ある。 1:X の値がEXIDとして持つ処理は、プログラム割込み
要因を検出して終了している。
からの次の信号を入力し、その信号が1のとき規定され
た動作を行う。 非同期処理リセット信号 この信号が入力されると、規定されたタイミングで非同
期処理実行制御部は、次の動作を行う。 ・ EXIDBに0 を設定する。 ・ EXIDBに0 を設定する。
制御部に次の2種類の信号を送出する。 非同期処理プログラム割込み信号 EXIDR#1 〜 EXIDR#31 の全てのビットの論理和の値をと
る信号である。プログラム割込み要因を検出して終了し
た非同期処理が存在するか否かを次のように表示する。 0:プログラム割込み要因を検出して終了している非同
期処理は無い。 1:プログラム割込み要因を検出して終了している非同
期処理が存在する。 非同期処理停止信号 実行中の非同期処理が存在せず、また非同期処理実行制
御部が非同期処理キュー中の処理を新たに開始しない状
態となったときに1 となる信号である。この信号は、次
の条件で1 となる。
つ EXIDBとEXIDR が等しい) 4−8 非同期処理実行ユニット 非同期処理実行制御部の指示により、特定の非同期処理
を実行するユニット群である。以下の動作を行う。 非同期処理実行制御部から、命令コードとESIDが送
られ処理の実行を開始する。 処理の終了時に、EXIDとRETCを非同期処理実行制御
部に通知する。
の命令実行制御用の動作を説明する。まず、図において
[A]から開始し、ICの指すアドレスから4バイトを
命令バッファに読み込む。次に命令読み込みに関するプ
ログラム割り込み要因が発生したかを判断し、YESな
らSRETCに発生したプログラム割り込み要因に対応
する値を出力する。NOなら割り込み動作の開始要因が
無いときは[B]へ移る。割り込み動作の開始要因と
は、 SRETCが0でない。 非同期処理プログラム割り込み信号が1 SVCCが0でない。 EALより大きいレベルの外部割り込み信号が存在
する。である。
は、命令バッファ中のOPCが非同期処理を指定してい
るかを判断し、YESのときは命令バッファ中のOPC
が定義されない処理を指定する。
命令と非同期処理キュー中のLEPより前のエントリ間
にデータ依存関係があるかを見て、NOであれば同期処
理実行部に処理の実行を指示し、同期処理部が処理の終
了時にSRETCに実行結果を出力し、SVC処理では
SVCCを設定し、実行した処理がICを変更する処理
でないときICに4を加算し、SRETCが0か(同期
処理でプログラム割り込み要因が無かどうか)どうかを
みる。
バッファ中のOPCが定義されない処理を指定するとき
SRETCにOPCの異常を示すコードを設定する。命
令バッファ中のOPCが非同期を指定していないとき、
エンキューデキュー制御部に命令バッファの処理のエン
キューを指令し、非同期処理キューが1バイトかをみ
て、NOならICに4を加えて、最初にもどる。
は、非同期処理停止信号が0かどうかを判断し、YES
のときSRETCが0でない、または非同期処理プログ
ラム割り込み信号が1であるかを判断し、NOであるな
らSVCCが0かを見て、NOであるならINTTYP
EにSVCCを複写し、SVCCに0を設定し、OPS
R←PSR,PSR←NPSR(但し、EALの値は無
変更)とする。
在する外部割り込み信号を選択し、選択したレベルをL
とする。そして、OPSR←PSR,INTTYPE←
L+0×20,PSR←NPSR(但し、EALにはLを
設定)とし、OIC←IC,IC←INTB+INTT
YPE*16として、[A]へもどる。
プログラム割り込み信号が1であるときSVCCが0で
ないとき、ICを4減算し、SVCCを0にする。そし
て、エンキューデキュー制御部に非同期処理キューの非
同期処理キュー複写レジスタへの複写および初期化を指
示し、エンキューデキュー制御部はAPQE#1〜APQE#(LEP)
を、APCR#1〜APCE#(LEP)に複写する。また、OLEPにLEP
を複写後、LEP に0,SEP に1を設定する。非同期処理
リセット信号に一定時間1を出力し、この間に、非同期
処理実行制御部は、EXIDB およびEXIDR を共に0にす
る。SRETC をLSRETCに複写し、また、INTTYPE に0×10
を設定する。
の値は無変更とする。次に図13を用いて非同期処理実
行制御部の動作を説明する。SEP <=LEP かつEXIDR =
0のとき、SEP の指すエントリ中の命令と非同期処理キ
ューのSEP より前のエントリ間にデータ依存関係が無
く、該当処理を実行する非同期処理ユニットが処理を開
始できる状態にあるかを判断する。YESならば、EXID
B #1 〜EXIDB #31のうち、0を保持する最も番号の低
いフラグを認識する。この番号XをSEP の指すエントリ
のEXIDとして割り当てる。
て、その処理を実行する非同期処理実行ユニットに送付
する。対応する非同期処理実行ユニットは処理を開始す
る。
ーデキュー制御部に送信する。エンキューデキュー制御
部は、SEP の指すエントリのEXIDにX を設定後、SEP に
1 を加える。
る実行終了処理のEXIDとRECT(終了コード)を受理す
る。受理した全てのEXID−X とRETC−Y の組に対して以
下の処理を行う。
処理が終了)のとき、エンキューデキュー制御部にEXID
−X を持つエントリのデキューを指示する。エンキュー
デキュー制御部は、EXID−X を持つエントリ以降のエン
トリを1つ前のエントリの移動する。SEP およびLEPの
値を1減算する。EXIDB #(X )に0を設定する。
御部にEXID−X を持つエントリのRETCにRETC−Y を設定
する事を指示する。エンキューデキュー制御部はこれを
実行する。EXIDR #(X )に1を設定する。
るRTN 命令の処理フローを図14に示す。LEP が0(SE
P は1である)ならPSR ←OPSR,IC←OIC を設定し、エ
ンキューデキュー制御部に非同期キュー複写レジスタの
内容の非同期処理キューへの転送を指示し、エンキュー
デキュー制御部は、APCR#1〜APCR#(OLEP) の内容をAPQE
#1〜APQE#(OLEP) に複写後、LEP ← OLEP を設定する。
そして、[C]の部分の終わりとなり、LEP が0でない
なら、NOP として扱われる。
を調べる回路について、図15を参照して説明する。図
15において、全ての非同期キューエントリに対するQB
#X Conflicts IB N1信号をORする事で、IB中のN
1領域に対するデータ依存関係の有無が検出できる。
N2,N3領域の全てとの比較が行われる。
ントリのデータ依存関係の検出については、以下の2種
類の方法が考えられる。 (1) 図15のIBの位置にQB#X(キューエントリ#
X)を置き、QB#XとQB#X1 〜QB#( X−1 )間のデータ依
存関係の検出回路を、各QBに対して設ける方法。 (2) 非同期処理実行開始バッファ(APSB:Asynchro
nous process Start Buffer)を設け、SEPの指すエン
トリをこのAPSBバッファにコピーする。APSBバ
ッファと各QB間に図15に示すようなデータ依存関係
検出回路を設ける。
える。また、LEPおよびそのデコーダをSEPとその
デコーダに置き換える。図7の命令バッファと非同期キ
ューエントリ32個のうちの第#番目の非同期キューエ
ントリとの間の依存関係を調べ、依存関係があればQE
#λ Conflicts IBN1を1とする。
も新しい命令であり、それが過去に入った非同期命令と
の依存関係を調べることとなる。まず命令バッファのO
PCすなち命令の種類をdecodeして調べる。命令はGR
を指定するものとFRを指定するものに分類されてい
る。命令バッファに示されているN1,N2,N3は、
GRのN1,N2,N3またはFRのN1,N2,N3
に対応し、それらはOPCの解読によって明らかにな
る。
て、OであればGR、1であればFRである。デコード
した出力、例えばIB N1 GRbyOPCは、OP
Cによって解読した結果、N1がGRである場合に1と
なる信号である。N2,N3に対しても同様である。同
様に非同期キューエントリーに入っている命令のOPC
を解読することにより、N1,N2,N3の各フィール
ドがGRであるかFRであるかを判定することができ、
例えばQE#× N3 GR by OPCは非同期キ
ューに入っている×番目の非同期命令はN3フィールド
GRである場合に1となる信号である。以下、同様であ
る。
コードし、オール0の検出を行って、0でなければ1B
N1 NOT 0が1となる。N1領域が0の場合に
は、指定された命令はキューイングされている命令とco
nflicts (データ依存関係)はないN1が0のときに
は、N1によって指定されるGROやFROの内容は0
固定だから、データ依存関係はない。逆にいうと、1B
N1 NOT 0が1である場合にはコンフクリトの
可能性があることになる。
の領域が0でないときに1を出力する。同様に、N1領
域がFRであって、かつN1が0でないときにAND2
の出力で1が1となる。
N3領域がGRであって、N3の領域が0でないときに
1を出力する。
の領域が0でないときに1を出力する。ただし、AND
5,6には、ともにAQE#X LEP Validが入力さ
れ、これはキューの最終エントリポインタLEP をデコー
ドした信号であり、非同期処理がまだ実行されていない
#X 番目のエントリが最終エントリポインタよりも、前
にあるまた実行結果がでていないときに、1 となる信号
である。その有効信号をAND5,6の出力は、N3が
GRであってコンフリクトとの可能性のある信号であ
る。
GRであって、その内容が0でない場合であり、かつま
たそれと同じGRN1がキューイングのN3によって示
されている同じGRであるかどうかを見る。
キューイングされた命令のN3になっているかどうか、
すなわち、N3が非同期キュー処理の結果を入れるGR
命令バッファのN3が非同期キューのN3と同じになっ
ているかを見るただし、AND5,6には、ともにAQ
E#X LEP Validが入力され、これはキューの最終
エントリポインタLEP をデコードした信号であり、非同
期処理がまだ実行されていない#X 番目のエントリが最
終エントリポインタよりも、前にあるまた実行結果がで
ていないときに、1 となる信号である。その有効信号を
AND5,6の出力は、N3がFRであってコンフリク
トとの可能性のある信号である。
FRであって、その内容が0でない場合であり、かつま
たそれと同じGRN1がキューイングのN3によって示
されている同じFRであるかどうかを見る。
キューイングされた命令のN3になっているかどうか、
すなわち、N3が非同期キュー処理の結果を入れるFR
命令バッファのN3が非同期キューのN3と同じになっ
ているかを見るAND3と4との出力のORをとること
によはって全体の依存関係有無の信号をつくっている。
ただし、前記AND3,4には、非同期キューエントリ
のN3の内容と命令バッファのN1の内容それぞれ5ビ
ットを比較し、一致していれば、それぞれ1となる信号
がとれる。QE#1N3eqn113N1を条件として
入力している。すなわち、指定されたGRのN1と非同
期キューのGRのN3(結果として使うN3)が一致し
ていれば、データ依存関係がある。
キューイングのF3 同じであれば、データ依存関係に
あることになる。命令バッファは1個であり、非同期キ
ューは32個であるから図15と同じ回路が32個である
ことになる。
の第2の実施例が図7に示した第1の実施例と異なる点
は、非同期処理キュー複写レジスタを用いるかわりに、
非同期処理キューに非同期処理フリーズ信号を加えて、
非同期処理キューの内容を固定したものである。さら
に、この第2の実施例は、第1の実施例と、FEP ,LEP,
FXIDB ,FXIDR がCRとしてアクセス可能とし、 非
同期処理リセット信号を非同期処理フリーズ信号とし
た点で異なる。
御部の動作を示すフローチャートであり、図12に示し
た第1の実施例のフローチャートと対応するものであ
る。まず、図11の[B]につづいて、非同期処理停止
信号が0かを判断し、YESのときSRETC が0でない、
または非同期処理プログラム割り込み信号が1であるか
を判断し、NOであれば、SVCCが0であるかを判断す
る。SVCCが0でないとき、INTTYPE にSVCCを複写、
SVCCに0を設定し、OPRS←PSR 、PSR ←NPSR但し、EAL
の値は無変更、また、非同期処理プログラム割込みが存
在する場合にはPRS ,FASPには1が設定される。
る外部割込み信号を選択する。選択したレベルをLとす
る。OPSR←PSR 、INTTYPE ←L +0×20、PSR ←NPS
R、但しEAL にはL を設定し、OIC ←IC、IC←INTB+INT
TYPE *16として、Aへ戻る。
グラム割込み信号が1であるときにSVCCが0でなけ
ればICを4減算し、SVCCを0にする。次に、非同期処理
プログラム割込み信号が1であるかを判断し、YESの
とき、非同期処理フリーズ信号を1とし、SRETC をLSRE
TCに複写する。また、INTTYPE に0×10を設定し、OP
SR←PSR 、PSR ←NPSR但し、EAL の値は無変更、また、
非同期処理プログラム割込みが存在する場合には、PSR,
FASPには1が設定される。非同期処理プログラム割り込
み信号が1でないときは、非同期処理フリーズ信号を1
とすることなく、SRETC をLSRBTCに複写する。
の処理フローを第2の実施例に沿って示したもので、第
1の実施例の図14に対応するものである。LEP が0
(SEP は1である)とき、PSR ←OPSR,IC ←OIC を設定
し、LEP が0でないときNOPとして扱われ、[C]の部
分の終わりとなる。
同期CPU資源使用処理の高速化を図ることができると
ともに、割込みハンドラが使用するような基本的なCP
U資源使用処理の非同期的実行が可能であり、かつ割込
みハンドラの作成が容易な割込み処理方式を提供でき、
更に割込みハンドラが使用するような基本的なCPU資
源使用処理の非同期的実行が可能であり、必要なCPU
資源使用処理依存割込み要因に対しては、対応する割込
みハンドラの処理の終了後、元のプログラムを再開可能
とするための割込み処理方式が可能となる。
図である。
在する計算機のパイプラインを示すタイミング図であ
る。
のパイプラインの同期を示すタイミング図である。
ミング図である。
イミング図である。
ある。
ある。
を示すフローチャートである。
を示すフローチャートである。
の動作を示すフローチャートである。
フローチャートである。
である。
を示す図である。
フローチャートである。
Claims (22)
- 【請求項1】 命令バッファに格納された命令が同期処
理か非同期処理かを判断し、非同期処理である場合に
は、前記命令をキューイングするキューイング手段と、 前記キューイングされている命令が指定するレジスタ
と、前記入力された命令が指定するレジスタとが同じレ
ジスタであるかをチェックすることにより、データの依
存関係をチェックするデータ依存関係チェック手段と、 該データ依存関係を調べながら同期と非同期処理を行う
制御手段とからなることを特徴とする命令処理装置。 - 【請求項2】 命令バッファに格納された命令が同期処
理か非同期処理かを判断し、非同期処理である場合に
は、前記命令をキューイングするキューイング手段と、 同期処理部または非同期処理部で割り込みが発生した場
合、またはCPU外部からの割り込みが検出された場合
に、キューイング済みの1個以上の非同期処理が未処理
のまま終了または例外を発生して終了することがあり、
このとき割り込み発生前のプログラムを再開できるよう
に、未処理または例外を発生した全ての非同期処理の内
容および終了方法(未実行または例外の種類)を割り込
み発生時にプログラムに表示する手段とからなることを
特徴とする割り込み処理方式。 - 【請求項3】 前記表示する手段は前記キューイング手
段とは別のレジスタにキューイング内容を退避させる手
段を含むことを特徴とする請求項2に記載の割り込み処
理方式。 - 【請求項4】 前記表示する手段は前記キューイング手
段の内容をフリージング(固定)する手段を含むことを
特徴とする請求項2記載の割り込み処理方式。 - 【請求項5】 命令バッファに格納された命令が同期処
理か非同期処理かを判断し、非同期処理である場合に
は、前記命令をキューイングするキューイング手段と、 同期処理部または非同期処理部で割り込みが発生した場
合、またはCPU外部からの割り込みが検出された場合
に、キューイング済みの1個以上の非同期処理が未処理
のまま終了または例外を発生して終了することがあり、
このとき割り込み発生前のプログラムを再開できるよう
に、未処理または例外を発生した全ての非同期処理の内
容および終了方法(未実行または例外の種類)を割り込
み発生時にプログラムに表示する手段と、 割り込み発生時に示された未処理および例外を発生して
終了した非同期処理の再開制御手順を有することを特徴
とする割り込み処理方式。 - 【請求項6】 命令バッファに格納された命令が同期処
理か非同期処理かを判断し、非同期処理である場合に
は、前記命令をキューイングするキューイング手段と、 前記キューイングされている命令が指定するレジスタ
と、前記入力された命令が指定するレジスタとが同じレ
ジスタであるかをチェックすることにより、データの依
存関係をチェックするデータ依存関係チェック手段と、 非同期処理キュー内の処理と、その処理より先に非同期
処理キューにキューイングされた処理との間のデータの
依存関係をチェックする手段を備えることにより、入力
された命令列のデータ依存関係を保ちつつ命令で指定さ
れた処理を実行する処理装置であって、かつ同期処理部
または非同期処理部で割り込みが発生した場合、または
CPU外部からの割り込みが検出された場合に、キュー
イング済みの1個以上の非同期処理が未処理のまま終了
または例外を発生して終了することがあり、このとき割
り込み発生前のプログラムを再開できるように、未処理
または例外を発生した全ての非同期処理の内容および終
了方法(未実行または例外の種類)を割り込み発生時に
プログラムに表示する非同期処理キューイング内容保存
手段とからなることを特徴とする割り込み処理方式。 - 【請求項7】 命令バッファに格納された命令が同期処
理か非同期処理かを判断し、非同期処理である場合に
は、前記命令をキューイングするキューイング手段と、 前記キューイングされている命令が指定するレジスタ
と、前記入力された命令が指定するレジスタとが同じレ
ジスタであるかをチェックすることにより、データの依
存関係をチェックするデータ依存関係チェック手段と、 非同期処理キュー内の処理と、その処理より先に非同期
処理キューにキューイングされた処理との間のデータの
依存関係をチェックする手段を備えることにより、入力
された命令列のデータ依存関係を保ちつつ命令で指定さ
れた処理を実行する処理装置であって、かつ同期処理部
または非同期処理部で割り込みが発生した場合、または
CPU外部からの割り込みが検出された場合に、キュー
イング済みの1個以上の非同期処理が未処理のまま終了
または例外を発生して終了することがあり、このとき割
り込み発生前のプログラムを再開できるように、未処理
または例外を発生した全ての非同期処理の内容および終
了方法(未実行または例外の種類)を保存し割り込み発
生時にプログラムに表示する非同期処理キューイング内
容保持手段と、 割り込み発生時に未処理および例外を発生して終了した
非同期処理の再開制御手順を有することを特徴とする割
り込み処理方式。 - 【請求項8】(1)レジスタ等のCPU資源からの入
力、CPU資源への出力、またはその双方を行う処理
(CPU資源使用処理)が同期CPU資源使用処理と非
同期CPU資源使用処理の2種類に分類され、その各々
の実行は、 同期CPU資源使用処理を、処理を指令する命令に
より開始し、命令の実行と同期して実行し、命令の実行
終了時には、その命令により開始した同期CPU資源使
用処理を、終了して、 非同期CPU資源使用処理を、処理を指定する命令
により開始し、命令の実行とは非同期的に実行し、命令
の実行終了以降に、その命令により開始した非同期CP
U資源使用処理を終了する、同期命令・非同期命令の処
理手段と、 (2)該処理手段がCPU資源に出力を行う非同期CP
U資源使用処理(先行処理)を命令により開始したと
き、該処理を開始した命令より後で発行する命令で開始
するCPU資源使用処理(後行処理)で先行処理の資源
への出力を入力として使用するとき、すなわち、データ
依存関係があるときは、後行処理での資源の入力が先行
処理での該資源への出力が終了するまで待たされ、 CPU資源使用処理(後行処理)がある資源への出力を
行う場合には、該処理より先に開始された全てのCPU
資源使用処理(先行処理)による該資源へのアクセス
(入力および出力の両者)が終了してから、後行処理は
該資源への出力を行い、 後行処理が同期CPU資源使用処理の場合には、先行処
理での関係する資源へのアクセスが終了するまで後行処
理を指定する命令の実行終了を遅らせ、すなわち、プロ
グラムカウンタを、その後行処理を開始する命令を指し
たままとし、 後行処理が非同期CPU資源使用処理の場合には、後行
処理を開始する命令の実行終了を前の処理の該資源への
関係するアクセスが終了するまで遅らせても良いし、後
行処理を開始する命令の実行は完了し後行処理を開始す
るが、後行処理での該資源へのアクセスを遅らせても良
く、 非同期CPU資源使用処理の実行が開始すると、その入
力が終了するまでは、後続CPU資源使用処理での該資
源への出力を待たせるデータ依存関係処理手段と、 (3)さらに前記処理手段が実行中のCPU資源使用処
理で前記CPU資源使用処理依存割り込み要因が検出さ
れたとき、または外部割り込み等の実行中のCPU資源
使用処理の実行結果に直接依存せずに発生する割込(C
PU資源使用処理無依存割り込み)の割り込み要因が検
出されたときには、 (A)新 たな命令の実行は開始しないが、実行中の命令
およびすでに実行が開始されている非同期CPU資源使
用処理は継続して実行し、実行可能な非同期CPU資源
使用処理が終了し非同期CPU資源使用処理の状態が変
化しなくなるのを待たせるよう指示する状態待ち手段
と、 (B)該状態待ち手段によるCPU資源使用処理の終了
待ちを実行後には、割り込み動作の開始時に実行中であ
った全ての非同期CPU資源使用処理を終了するよう前
記処理手段に指示する非同期CPU資源使用処理終了手
段と、 同期CPU資源使用処理の場合は、その処理を開始する
命令の実行終了時に終了し、前記状態待ち手段から指示
があったとき実行中であった同期CPU資源使用処理も
終了する同期CPU資源使用処理終了手段とからなる割
り込み処理方式。 - 【請求項9】(4)同期CPU資源使用処理の一部、お
よび非同期CPU資源使用処理の一部が、CPU資源使
用処理依存割り込み要因を発生したことを検出するとき
この処理の出力を、後行処理で入力として使用すると、
後行処理の実行結果も期待された実行結果と異なる様に
するCPU資源使用処理依存割り込み制御手段をさらに
具備することを特徴とする請求項8記載の割り込み処理
方式。 - 【請求項10】 前記CPU資源使用処理依存割り込み
要因とは、CPU資源使用処理の実行中に特定の事象が
発生した場合に検出される割り込み要因であり、CPU
資源使用処理依存割り込み要因が検出された処理の出力
が期待された結果であってその出力を後続処理で入力と
して使用する事が期待される結果にならなかった事を示
す割り込み要因であることを特徴とする請求項9記載の
割り込み処理方式。 - 【請求項11】 前記非同期CPU資源使用処理終了手
段は、CPU資源使用処理依存割り込み要因を検出せず
に完了し、処理の出力は、期待された出力とする請求項
8記載の割り込み処理方式。 - 【請求項12】 前記非同期CPU資源使用処理終了手
段は、CPU資源使用処理依存割り込み要因を検出して
実行を終了する請求項8記載の割り込み処理方式。 - 【請求項13】 前記非同期CPU資源使用処理終了手
段は、非同期CPU資源使用処理が先行する処理の資源
への出力を使用する処理であり、先行する処理がCPU
資源使用処理依存割り込み要因を検出し期待された出力
を行わなかったときには、そのCPU資源使用非同期処
理は未実行のまま終了し、未実行で終了した処理の出力
に対するデータ依存関係は、消去される請求項8記載の
記載の割り込み処理方式。 - 【請求項14】 前記非同期CPU資源使用処理終了手
段は、請求項13で未実行となった処理の出力を入力と
して使用する非同期CPU資源使用処理を、未実行のま
ま終了し、未実行で終了した処理の出力に対するデータ
依存関係を、消去する請求項8記載の割り込み処理方
式。 - 【請求項15】 前記非同期CPU資源使用処理終了手
段は、CPU資源使用処理依存割り込み要因が1個でも
検出されている場合には、すでに命令により開始されて
いる非同期CPU資源使用処理がこの割り込み要因とデ
ータ依存関係が無い場合でも、未実行で終了しても良い
請求項8記載の割り込み処理方式。 - 【請求項16】 前記同期CPU終了手段は、CPU資
源使用処理依存割り込み要因を検出せずに完了した請求
項8記載の割り込み処理方式。 - 【請求項17】 前記同期CPU終了手段は、CPU資
源使用処理依存割り込み要因を検出して、処理の実行が
終了する請求項8記載の割り込み処理方式。 - 【請求項18】(C)前記非同期CPU資源使用処理終
了手段から終了の指示があったときに資源使用処理依存
割り込み要因が1個も検出されなかったとき: 割り込み動作を開始させた割込要因は、CPU資源使用
処理無依存割り込み要因であり、割り込み動作を開始さ
せた割り込み要因に対応した割り込みを発生する割り込
み発生手段、前記非同期CPU資源使用処理終了手段から終了の指示
があったときに CPU資源使用処理依存割り込み要因が
1個以上検出されたとき: 割り込み動作を開始させた割り込み要因によらず、CP
U資源使用非同期処理およびCPU資源使用同期処理に
関する情報を、1回のCPU資源使用処理依存割り込み
でプログラムに同時に全て通知する割り込み通知手段を
有し、複合CPU資源使用処理依存割り込みを行い、 (3)の割り込み動作を行うことにより、割り込み発生
後には、割り込み発生前に実行していたプログラムで実
行が開始された非同期CPU資源使用処理が原因となっ
たCPU資源使用処理依存割り込み要因が新たに検出さ
れない事が保証され、また、割り込み発生後には、CP
Uの全資源が解放されている事が保証される(割り込み
発生前に開始された非同期CPU資源使用処理の出力と
なっている為に、CPU資源として使用するCPU資源
使用処理の実行開始が送らされる事がない事が保証され
る)ことを特徴とする請求項8記載の割り込み処理方
式。 - 【請求項19】(5)さらに、CPU資源使用処理依存
割り込みが発生したとき、再開期待CPU資源使用処理
依存割り込み要因のみが割り込み要因として依存する場
合には、発生した全ての再開期待CPU資源使用処理依
存割り込みに対する適当な処理の後、元のプログラムを
再開できる可能性があり、 CPU資源使用処理依存割り込みの発生時に、再開期待
CPU資源使用処理依存割り込みを発生した処理および
未実行で終了したCPU資源使用処理の各々に対して、 割り込み元のプログラムに復帰するCPU資源使用
処理を実行すると、指定した再開期待CPU資源使用処
理依存割り込み要因を検出した処理、および未実行で終
了した処理が再実行されるか 割り込み要因処理プログラムが、処理をシミュレー
ションするのに十分な情報を割り込み時にプログラムに
表示し、要因発生元のプログラムの再開が期待されるあ
る種のCPU資源使用処理依存割り込み要因で、割り込
み時に入力データか保存されていることが必要な場合に
は、その割り込み要因の発生時に、その要因を発生した
処理の入力資源を出力先とする後続処理は、全て未実行
で終了させる再開期待CPU資源使用処理割り込み手段
を具備し、 このことにより、再開期待CPU資源使用処理依存割り
込み要因の発生時に、割り込み要因を発生したプログラ
ムを再開できるようにすることを特徴とする請求項8記
載の割り込み処理方式。 - 【請求項20】 一部のCPU資源使用処理保存割り込
み要因は、対応する割り込み要因処理プログラムによる
適当な処理の実行後にその割り込み要因を発生したプロ
グラムの再開が期待されることがあり、ページ不在等の
割り込み要因となり、この種のCPU資源使用処理依存
割り込み要因を、再開期待CPU資源使用処理依存割り
込み要因と呼ぶ請求項19記載の割り込み処理方式。 - 【請求項21】(1)レジスタ等のCPU資源からの入
力資源への出力、またはその双方向を行うCPU資源使
用処理を、同期CPU資源使用処理と非同期CPU資源
使用処理の2種類に分類し、 同期CPU資源使用処理は、処理を指令する命令に
より開始され、命令の実行と同期して実行され、命令の
実行終了時には、その命令により開始された同期CPU
資源使用処理を、終了しており、 非同期CPU資源使用処理は、処理を指定する命令
により開始し、命令の実行とは非同期的に実行し、命令
の実行終了以降に、その命令により開始した非同期CP
U資源使用処理を終了する同期命令−非同期命令の処理
手段と、 (2)該処理手段がCPU資源に出力を行う非同期CP
U資源使用処理(先行処理)が命令により開始されたと
き、該当処理を開始した命令より後で発行される命令で
開始されるCPU資源使用処理(後行処理)で先行処理
の資源への出力を入力として使用するときは,後行処理
での資源の入力が先行処理での該当資源への出力が終了
するまで待たされ、 CPU資源使用処理(後行処理)がある資源への出力を
行う場合には、該当処理より先に開始された全てのCP
U資源使用処理(先行処理)による該当資源へのアクセ
ス(入力および出力の両者)が終了してから、後行処理
は該資源への出力を行い、 後行処理が同期CPU資源使用処理の場合には、先行処
理での関係する資源へのアクセスが終了するまで後行処
理を指定する命令の実行終了を遅らせ、プログラムカウ
ンタは、その後行処理を開始する命令を指したままと
し、後行処理が非同期CPU資源使用処理の場合には、
後行処理を開始する命令の実行終了を前の処理の該当資
源への関係するアクセスが終了するまで遅らせても良い
し、後行処理を開始する命令の実行は完了し後行処理を
開始するのが後行処理での該当資源へのアクセスを遅ら
せても良く、 非同期CPU資源使用処理の実行が開始されると、その
実行が終了するまでは、後続CPU資源使用処理での該
当資源への出力を待たせるデータ依存関係処理手段と、 (3)同期CPU資源使用処理の一部、および非同期C
PU資源使用処理の一部は、CPU資源使用処理依存割
り込み要因を発生し、CPU資源使用処理依存割り込み
要因とは、CPU資源使用処理の実行中に特定の事象が
発生した場合に検出される割り込み要因であり、CPU
資源使用処理依存割り込み要因が検出された処理の出力
が期待された結果であってその出力を後続処理で入力と
して使用する事が期待される結果とならなかった事を示
す割り込み要因であり、 CPU資源使用処理依存割り込み要因の検出された処理
の出力を、後行処理で入力として使用すると、後行処理
の実行結果も期待された実行結果と異なる様になし、 (4)実行中CPU資源使用処理でCPU資源使用処理
依存割り込み要因が検出されたとき、または外部割り込
み等の実行中のCPU資源使用処理の実行結果に直接依
存せずに発生する割込(CPU資源使用処理無依存割り
込み)の割り込み要因が検出されたときには、ハードウ
ェアは以下の割り込み動作を行い、(A)新 たな命令の実行は開始しないが、実行中の命令
およびすでに実行が開始されている非同期CPU資源使
用処理は継続して実行し、実行可能な全ての非同期CP
U資源使用処理が終了し非同期CPU資源使用処理の状
態が変化しなくなるのを待たせるよう指示する状態待ち
手段と、 (B)該状態待ち手段によるCPU資源使用処理の終了
待ちを実行後には、割り込み動作の開始時に実行中であ
った全ての非同期CPU資源使用処理は、以下のいずれ
か1つの方法で終了し、 非 CPU資源使用処理依存割り込み要因を検出せず
に完了し、処理の出力は、期待された出力とし、 非 CPU資源使用処理依存割り込み要因を検出して
実行が終了し、 非 非同期CPU資源使用処理が先行する処理の資源
への出力を使用する処理であり、先行する処理がCPU
資源使用処理依存割り込み要因を検出し期待された出力
を行わなかったときには、そのCPU資源使用非同期処
理は未実行のまま終了し、未実行で終了した処理の出力
に対するデータ依存関係は、消去され、 非 非または非で未実行となった処理の出力を入
力として使用する非同期CPU資源使用処理は、未実行
のまま終了し、未実行で終了した処理の出力に対するデ
ータ依存関係は、消去され、 非 CPU資源使用処理依存割り込み要因が1個でも
検出されている場合には、すでに命令により開始されて
いる非同期CPU資源使用処理がこの割り込み要因とデ
ータ依存関係が無い場合でも、未実行で終了するよう前
記処理手段に指示する非同期CPU資源使用処理終了手
段と、 同期CPU資源使用処理の場合は、その処理を開始する
命令の実行終了時に以下のいずれか1つの方法で終了
し、(A)の操作が終了したときに、実行中であった同
期CPU資源使用処理もこれらのいずれかの方法で終了
し、 同 CPU資源使用処理依存割り込み要因を検出せず
に完了し、 同 CPU資源使用処理依存割り込み要因を検出し
て、処理の実行が終了す る同期CPU資源使用処理終了
手段と、 (C)(B)でCPU資源使用処理依存割り込み要因が
1個も検出されなかったとき: 割り込み動作を開始させた割り込み要因は、CPU資源
使用処理無依存割り込み要因であり、ハードウェアは、
割り込み動作え開始させた割り込み要因に対応した割り
込みを発生する割り込み発生手段と、 (D)(B)で 資源使用処理依存割り込み要因が1個以
上検出されたとき: 割り込み動作を開始させた割り込み要因によらず、
(B)の非〜非となったCPU資源使用非同期処理
および同となったCPU資源使用同期処理に関する情
報を、1回のCPU資源使用処理依存割り込みでプログ
ラムに同時に全て通知する割り込み通知手段と、 (4)の割り込み動作を行うことにより、割り込み発生
後には、割り込み発生前に実行していたプログラムで実
行が開始された非同期CPU資源使用処理が原因となっ
たCPU資源使用処理依存割り込み要因が新たに検出さ
れない事が保証され、また、割り込み発生後には、CP
Uの全資源が解放されている事が保証され(割り込み発
生前に開始された非同期CPU資源使用処理の出力とな
っている為に、CPU資源として使用するCPU資源使
用処理の実行開始が送らされる事がない事が保証され
る)、 (5)一部のCPU資源使用処理依存割り込み要因処理
プログラムによる適当な処理の実行後にその割り込み要
因を発生したプログラムの再開が期待される事があり
(ページ不在等の割り込み要因)(ここでは、この種の
CPU資源使用処理依存割り込み要因を、再開期待CP
U資源使用処理依存割り込み要因と呼ぶ)、 CPU資源使用処理依存割り込みが発生したとき、再開
期待CPU資源使用処理依存割り込み要因のみが割り込
み要因として存在する場合には、発生した全ての再開期
待CPU資源使用処理依存割り込みに対する適当な処理
の後、元のプログラムを再開できる可能性があり、 CPU資源使用処理依存割り込みの発生時に、再開期待
CPU資源使用処理依存割り込みを発生した処理および
未実行で終了したCPU資源使用処理の各々に対して、
以下のいずれかが可能であるようにする 割り込み元のプログラムに復帰するCPU資源使用
処理を実行すると、指定した再開期待CPU資源使用処
理依存割り込み要因を検出した処理、および未実行で終
了した処理が再実行される、かまたは、 割り込み要因処理プログラムが、処理をシュミレー
ションするのに十分な情報を割り込み時にプログラムに
表示する表示手段と、 要 因発生元のプログラムの再開が期待されるある種のC
PU資源使用処理依存割り込み要因で、割り込み時に入
力データが保存されていることが必要な場合には、その
割り込み要因の発生時に、その要因を発生した処理の入
力資源を出力先とする後続処理は、全て未実行で終了さ
せる再開期待CPU資源使用処理割り込み手段を具備
し、 このことにより、再開期待CPU資源使用処理依存割り
込み要因の発生時に、割り込み要因を発生したプログラ
ムを再開できるようにすることを特徴とする命令処理装
置。 - 【請求項22】 少なくとも、レジスタ等、中央処理装
置(CPU)の資源を使用する処理を指定する命令によ
り開始され、該命令の実行と同期して実行される同期C
PU資源使用処理と、該中央処理装置(CPU)の資源
を使用する処理を指定する命令により開始され、該命令
の実行とは非同期的に実行される非同期CPU資源使用
処理とがあって、 該同期CPU資源使用処理と、非同期CPU資源使用処
理との間、又は非同期CPU資源使用処理間に、データ
依存関係が保たれるように制御され、 上記同期CPU資源使用処理、または、非同期CPU資
源使用処理の実行中に発生する割り込み処理は:プログ
ラム割り込み等、上記中央処理装置(CPU)の資源使
用処理に依存する割り込み要因と、入出力割り込み等、
該中央処理装置(CPU)の資源使用処理に依存しない
割り込み要因による割り込み処理が行われるデータ処理
装置において、 上記割り込み要因の何れかが検出されたとき、そのと
き、中央処理装置(CPU)で実行中の上記同期CPU
資源使用処理/非同期CPU資源使用処理を指示する命
令の終了時点で、次の命令の実行の開始を抑止し、既
に、実行中の複数個の上記非同期CPU資源使用処理の
実行終了を待つと共に、該非同期CPU資源使用処理の
終了条件を記憶しておき、 上記全ての非同期CPU資源使用処理の実行終了時点で
上記非同期CPU資源使用依存の割り込み要因を発生さ
せ、該発生した用意の割り込み処理の終了した時点で、
上記記憶しておいた、該非同期CPU資源使用処理終了
条件に基づいて、該中央処理装置(CPU)のハードウ
ェア状態を復元することを特徴とする割り込み処理方
法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3080822A JPH0786838B2 (ja) | 1990-03-19 | 1991-03-19 | 割り込み処理方式 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2-69158 | 1990-03-19 | ||
| JP6915890 | 1990-03-19 | ||
| JP3080822A JPH0786838B2 (ja) | 1990-03-19 | 1991-03-19 | 割り込み処理方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04218841A JPH04218841A (ja) | 1992-08-10 |
| JPH0786838B2 true JPH0786838B2 (ja) | 1995-09-20 |
Family
ID=26410355
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3080822A Expired - Fee Related JPH0786838B2 (ja) | 1990-03-19 | 1991-03-19 | 割り込み処理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0786838B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8874879B2 (en) | 2010-11-11 | 2014-10-28 | Fujitsu Limited | Vector processing circuit, command issuance control method, and processor system |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS51854A (en) * | 1974-06-21 | 1976-01-07 | Hitachi Ltd | Deijitarukeisankino senkoseigyohoshiki |
| JPS57162035A (en) * | 1981-03-31 | 1982-10-05 | Fujitsu Ltd | Interruption control system |
| JPS58101346A (ja) * | 1981-12-11 | 1983-06-16 | Fujitsu Ltd | 命令実行制御方式 |
| US5070475A (en) * | 1985-11-14 | 1991-12-03 | Data General Corporation | Floating point unit interface |
-
1991
- 1991-03-19 JP JP3080822A patent/JPH0786838B2/ja not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8874879B2 (en) | 2010-11-11 | 2014-10-28 | Fujitsu Limited | Vector processing circuit, command issuance control method, and processor system |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH04218841A (ja) | 1992-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5404552A (en) | Pipeline risc processing unit with improved efficiency when handling data dependency | |
| US5075840A (en) | Tightly coupled multiprocessor instruction synchronization | |
| US7020871B2 (en) | Breakpoint method for parallel hardware threads in multithreaded processor | |
| US5884060A (en) | Processor which performs dynamic instruction scheduling at time of execution within a single clock cycle | |
| US4928226A (en) | Data processor for parallelly executing conflicting instructions | |
| US5450560A (en) | Pointer for use with a buffer and method of operation | |
| US5611063A (en) | Method for executing speculative load instructions in high-performance processors | |
| US5421020A (en) | Counter register implementation for speculative execution of branch on count instructions | |
| US20060218124A1 (en) | Performance of a data processing apparatus | |
| JPH07160501A (ja) | データ処理システム | |
| CA2056715A1 (en) | Overlapped serialization | |
| EP0482200B1 (en) | Interrupt processing system | |
| JP2003029986A (ja) | プロセッサ間レジスタ継承方法及びその装置 | |
| US5898864A (en) | Method and system for executing a context-altering instruction without performing a context-synchronization operation within high-performance processors | |
| US6101596A (en) | Information processor for performing processing without register conflicts | |
| US6324640B1 (en) | System and method for dispatching groups of instructions using pipelined register renaming | |
| JP2535252B2 (ja) | 並列処理装置 | |
| JPH09152973A (ja) | カウント/リンク・レジスタ変更命令の投機実行をサポートする方法及び装置 | |
| KR100310798B1 (ko) | 머신문맥동기화동작실행방법및프로세서 | |
| US5802340A (en) | Method and system of executing speculative store instructions in a parallel processing computer system | |
| RU2150738C1 (ru) | Система обработки и способ ее функционирования | |
| US5634136A (en) | Data processor and method of controlling the same | |
| US5737562A (en) | CPU pipeline having queuing stage to facilitate branch instructions | |
| EP0374598B1 (en) | Control store addressing from multiple sources | |
| JPH0786838B2 (ja) | 割り込み処理方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19960312 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080920 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080920 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090920 Year of fee payment: 14 |
|
| LAPS | Cancellation because of no payment of annual fees |