JPH03269628A - 例外処理方式 - Google Patents

例外処理方式

Info

Publication number
JPH03269628A
JPH03269628A JP6811490A JP6811490A JPH03269628A JP H03269628 A JPH03269628 A JP H03269628A JP 6811490 A JP6811490 A JP 6811490A JP 6811490 A JP6811490 A JP 6811490A JP H03269628 A JPH03269628 A JP H03269628A
Authority
JP
Japan
Prior art keywords
memory access
access
instruction
exception
queue
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
Application number
JP6811490A
Other languages
English (en)
Other versions
JP2671160B2 (ja
Inventor
Shuntaro Fujioka
藤岡 俊太郎
Kazuhiko Ikeda
和彦 池田
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
PFU Ltd
Original Assignee
Fujitsu Ltd
PFU 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, PFU Ltd filed Critical Fujitsu Ltd
Priority to JP2068114A priority Critical patent/JP2671160B2/ja
Publication of JPH03269628A publication Critical patent/JPH03269628A/ja
Application granted granted Critical
Publication of JP2671160B2 publication Critical patent/JP2671160B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3863Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 仮想記憶計算機システムにおいて、メモリアクセス命令
とその後続命令の実行をオーバーラツプさせて実行させ
る場合の例外処理方式に関し、アクセス例外が発生した
場合に、その例外処理後に、例外発生時に実行しようと
した処理に戻って、再スタートできるようにすることを
目的とし、 仮想記憶計算機システムにおいて、順次に命令列を実行
する実行手段と、データを格納するレジスタと、命令の
実行時に書き込み対象のレジスタ番号を記憶しておくレ
ジスタスコアボードと、先行命令と後続命令とでレジス
タの干渉を調べる比較手段と、前記命令列の中の実行す
べきメモリアクセス命令をメモリアクセスキューに格納
するメモリアクセスキュー構成手段と、アクセス例外発
生時にアクセスエラー信号を出力するエラー信号出力手
段を有し、前記メモリアクセス命令に従ってアドレス変
換するアドレス変換手段と、アクセス例外発生時に前記
メモリアクセスキュー構成手段の格納内容をセーブさせ
るとともに例外処理終了後にセーブした内容を前記メモ
リアクセスキュー構成手段にリストアするメモリアクセ
スセーブキュー構成手段とを備えた構成としたものであ
る。
〔産業上の利用分野 〕
本発明は、収態記憶計算機システムにおいて、メモリア
クセス命令とその後続命令の実行をオーバーラツプさせ
て実行させる場合の例外処理方式(従来の技隋 ) 従来、仮想記憶計算機システムては、第4図に示すよう
に、処理部1と、その処理部1からの命令により論理(
仮想)アドレスと物理(実)アドレスとの変換をして読
み出しまたは書き込みをする等のデータ入出力管理をす
るメモリ制御部2と、そのメモリ制御部2を介して必要
なデータを読み出す主記憶部3を備えている。
処理部lには、命令列の実行手段1aと、主記憶部3か
ら読み出したデータを書き込むレジスタ1bと、実行す
る命令が格納されているレジスタの番号を格納してレジ
スタ管理をするレジスタスコアボード1cと、先に実行
している命令とその後から実行する後続命令とが干渉す
るか否かをチエツクする比較手段1dとを備えている。
7!そり制御部2には、処理部1からのメモリアクセス
命令を格納するメモリアクセスキュー構成手段2aと、
そのメモリアクセスキュー構成手段2aに格納されたメ
モリアクセス命令に従ってアドレス変換して必要とする
データの格納位置を指定するアドレス変換機構2bとを
備えている。
通常、この方式では処理部1が主記憶部3からデータを
読み込む時間は、レジスタ間の転送あるいは演算等の時
間と比べて長く掛かり、メモリアクセス命令を発行して
からそのアクセスが完了するまでの時間を、見掛上短縮
させるために、先行する命令のメモリアクセスを実行し
ている間に、次の命令を実行させるようにしている。
この仮想記憶計算機システムにおける例外処理方式では
、先行する命令のメモリアクセスを実行している間に次
の命令を実行させる場合、先行命令が主記憶部3からの
読み込み一命令の時には、この命令の宛先に指定されて
いるレジスタ1bの値を後続命令で使用することがある
。この時次命令は、先行命令(読み込み命令)が完了す
るまで待たされ、先行命令の完了前に次命令を実行して
はならない。
その為、先行命令の宛先に指定されているレジスタ番号
を格納しているレジスタスコアボード1cにフラグを付
け、後続命令の中で先行命令の宛先に指定されているレ
ジスタ番号と干渉するものがあるか比較手段1dにおい
て比較し、チエツクする方法がとられている。
しかしながら、この方法では、メモリアクセス命令でア
クセス例外(アクセスエラー)が発生した場合に、レジ
スタスコアボード1cにフラグが残ったままになり、割
込処理プログラムの実行が停止されてしまう。
またこの方法では、先行するメモリアクセス命令でペー
ジフォールト等のアクセス例外が発生した場合に、この
例外を発生させたメモリアクセス命令よりも後の命令を
実行してしまっていることがあるため、ページを実記憶
に割付けた後に例外を起こしたメモリアクセス命令から
再実行させる方法では、プログラムの再開が不可能にな
る。
〔発明が解決しようとする課題 〕
上記従来の収態記憶計算機システムにおける例外処理方
式では、先行命令の宛先に指定されているレジスタ番号
を格納しているレジスタスコアボード1cにフラグを付
け、後続命令の中で先行命令の宛先に指定されているレ
ジスタ番号と干渉するものがあるかを比較手段1dにお
いて比較する方法を採る。しかし、メモリアクセス命令
でアクセス例外が発生した場合に、レジスタスコアボー
ドICにフラグが残ったままになり、割込処理プログラ
ムの実行が停止される。又、先行するメモリアクセス命
令でページフォールト等のアクセス例外が発生した場合
に、この例外発生命令よりも後の命令を実行してしまっ
ている。ページを実記憶に付けた後に例外を起こしたメ
モリアクセス命令から再実行させる方法を採るものでは
、プログラムの再開が不可能になる等々により、それま
での処理は無駄になってしまう。従って、これに対処す
る為には、システムを落して再起動するか、処理を始め
からやり直さなければならないという問題点があった。
本発明は、上記問題点に鑑みて威されたものであり、そ
の解決を目的として設定される技術的課題は、アクセス
例外が発生した場合に、その例外処理後に、例外発生時
に実行しようとした処理に戻って再スタートできるよう
にした例外処理方式を提供することにある。
〔課題を解決するための手段 ) 本発明は、上記課題を解決するための具体的な手段とし
て、例外処理方式を構成するにあたり、第1図に示すよ
うに、仮想記憶計算機システムにおいて、順次に命令列
を実行する実行手段11と、データを格納するレジスタ
12と、命令の実行時に書き込み対象のレジスタ番号を
記憶しておくレジスタスコアボート14と、先行命令と
後続命令とがレジスタの干渉を起こすかを調べる比較手
段15と、前記命令列の中の実行すべきメモリアクセス
命令をメモリアクセスキューに格納するメモリアクセス
キュー構成手段16と、アクセス例外発生時にアクセス
エラー信号を出力するエラー信号出力手段17aを有し
、前記メモリアクセス命令に従ってアドレス変換するア
ドレス変換手段17と、アクセス例外発生時に前記メモ
リアクセスキュー構成手段16の格納内容をセーブさせ
るとともに例外処理終了後にセーブした内容を前記メモ
リアクセスキュー構成手段16にリストアするメモリア
クセスセーブキュー構成手段18とを備えたものである
(作用) 本発明は上記構成により、アクセス例外発生時にアドレ
ス変換手段17のエラー信号出力手段17aからレジス
タスコアボード14およびメモリアクセスキュー構成手
段16にアクセスエラー信号を出力し、レジスタスコア
ボード14の内容をクリアするとともに、メモリアクセ
スキュー構成手段16の内容をメモリアクセスセーブキ
ュー構成手段18にセーブし、その後にメモリアクセス
キュー構成手段16をクリアして例外処理の前処理をし
、例外処理後にはメモリアクセスセーブキュー構成手段
18にセーブした内容をメモリアクセスキュー構成手段
16にリストアさせて、処理再開時の実行すべきキュー
を元に戻す。
(実施例 ) 以下、本発明の実施例として、アドレス変換機構からの
信号により、アクセスエラー時にレジスタスコアボード
の内容をクリアすることができるようにした場合につい
て、第2図により図示説明する。
ここで、21はCPU (中央処理装置)であり仮想記
憶空間を利用して必要な処理をする。
22はアクセスユニットで、仮想記憶の利用を管理する
メモリ制御部を構成する。23は主記憶装置で、外部記
憶装置24の内容を取り込み、仮想記憶空間を構成する
CPU21には、命令列を構成し、構成した命令列を順
に実行する命令列の実行手段31と、仮想記憶から読み
出したデータを書き込むレジスタ32と、レジスタ32
に格納されたデータを計算する演算手段33ど、レジス
タ32の配列に合せてフラグ格納位置を配列させ実行す
る命令のレジスタ番号に対応させたフラグが格納できる
ようにしたレジスタスコアボード34と、先に実行して
いる命令とその後続命令とが干渉するか否かをチエツク
する比較手段35とを備える。
アクセスユニット22には、CPU21からのロード命
令またはライト命令等のメモリアクセス命令を格納する
メモリアクセスキュー構成手段36と、アクセス例外発
生時にメモリアクセスキュー構成手段36およびレジス
タスコアボード34ヘアクセスエラー信号を出力するエ
ラー信号出力手段37aを宥し、メモリアクセスキュー
構成手段36に格納されたメモリアクセス命令に従って
アドレス変換して必要とするデータの格納位置を指定す
るアドレス変換機構37と、アクセス例外の発生時にメ
モリアクセスキュー構成手段36からその格納内容を全
てセーブして例外処理後の再開時にセーブした内容をメ
モリアクセスキュー構成手段36にリストアするメモリ
アクセスセーブキュー構成手段38とを備える。
このように構成した実施例による処理手順は、第3図に
示すように、処理を進めていく。
まず、CPU21が命令列の順に処理を進めるにあたっ
て、1つの命令を実行する前に、アドレス変換機構37
からアクセスエラーが出力されたか否か、すなわち、ア
クセス例外が発生しているかいないかをチエツクする(
ステップ41)。
アクセス例外が発生している場合にはステップ52(■
)へ飛び越し、アクセス例外が発生していない場合には
次のステップへ進み、命令をデコードする(ステップ4
2)。
デコードした命令がメモリアクセス命令かチエツクする
(ステップ43)。メモリアクセス命令であれば、アク
セスユニット22にメモリアクセス要求を出して、メモ
リアクセス命令をメモリアクセスキュー構成手段36に
格納する(ステップ44)。
その格納した命令がロード命令かチエツクする(ステッ
プ45)。ロード命令であれば、ディスティネーション
レジスタ番号に対応するレジスタスコアボードのフラグ
をセットしくステップ46)、また、ロード命令でなけ
ればステップ47へ飛び越す。
そして、メモリアクセスを開始しくステップ47)、ア
クセス終了後、ステップ42へ戻る。
ステップ43のチエツクで、命令がメモリアクセス命令
でなかった場合、レジスタスコアボード34の中の、実
行しようとする命令のソースレジスタ番号に対応するフ
ラグが、オンになっているかいないかを比較手段35に
よりチエツクする(ステップ48)。そのフラグがオフ
であれば直ちにその(ロード命令でない)命令を実行し
、ステップ42へ戻る(ステップ49)。
ソースレジスタ番号に対応するフラグがオンの場合には
、アクセス例外が発生しているかいないかをチエツクす
る(ステップ51)。アクセス例外が発生していなけれ
ばステップ48へ戻る。
アクセス例外が発生している場合には、アクセスユニッ
ト22においてアドレス変換機構37のエラー信号出力
手段37aからアクセスエラー信号を出力し、例外処理
に移行する。メモリアクセスキュー構成手段36の内容
をメモリアクセスセーブキュー構成手段38に格納して
、キューの退避を行い、メモリアクセスキューa戊子段
36をクリアしくステップ52)、同時にレジスタスコ
アボード34をクリアして(ステップ53)、割込み動
作を開始する(ステップ54)。
割込み処理55としては、セーブしたキューの内容をい
ったん他の記憶領域に移してセーブし、キューの格納場
所をあけて例外に対応した処理のキューを導入できるよ
うにしくステップ56)。
それから、例えばページの割り付は等のアクセス例外に
対応する処理を実行しくステップ57)、その対応処理
が終了した後、他の記憶領域に移してセーブしたキュー
の内容を元に戻し、リストアする(ステップ58)、リ
ストア終了後、元の処理に復帰させるために割込みから
の戻り命令(リターン命令)を発行する(ステップ59
)。
割込み処理から戻ると、CPU21は割込みからの戻り
命令を実行する際、アクセスユニット22においてメモ
リアクセスセーブキュー構成手段38に格納した内容を
メモリアクセスキュー構成手段36に戻し、キューを復
元する(ステッフ60)。キューの復元後、メモリアク
セスキュー構成手段36の内容に従ってメモリアクセス
を再開する(ステップ61)。メモリアークセスを再開
するにあたって、その命令がロード命令であれば、宛先
に指定されているレジスタ番号に対応したレジスタスコ
アボード34のビットをセットして(ステップ62)、
割込み復帰後の処理を実行してステップ42へ戻る(ス
テップ63)。
このように実施例では、割り込み処理ルーチンのオーバ
ヘッドを増大させることなく、メモリアクセス命令の突
き離し制御が可能になる。
これにより、メモリアクセス命令と演算命令とをオーバ
ーラツプさせて実行させることにより、処理の高速化が
でき、命令の実行性能を向上させることができる。
〔発明の効果 ) 以上のように本発明では、アクセス例外発生時に、エラ
ー信号出力手段17aからアクセスエラー信号を出力し
て、レジスタスコアボードスキュー構成手段16の内容
をメモリアクセスセーブキュー構成手段18にセーブし
、その後にメモリアクセスキュー構成手段16をクリア
して例外処理に対する前処理をし、例外処理後には。
メモリアクセスセーブキュー構成手段18にセーブした
内容をメモリアクセスキュー構成手段16にリストアさ
せて、処理再開時の実行すべきキューを元に戻すことが
できるようにしたことにより、ページフォールト等のア
クセス例外発生時にオーバヘッドを増加させることなく
、複数のメモリアクセス命令を突き離し制御可能にする
ことができ、メモリアクセス命令とそれに続く演算命令
をオーバーラツプさせて実行させることができ、処理の
高速化が実現できる。
【図面の簡単な説明】
第1図は、本発明の構成説明図、 第2図は、実施例の構成説明図、 第3図は、実施例の処理手順を示す流れ図、第4図は、
従来例の構成図。 11・・・命令列の実行手段 12・・・レジスタ 14・・・レジスタスコアボード 15・・・比較手段 16・・・メモリアクセスキュー構成手段17・・・ア
ドレス変換手段 17a・・・エラー信号出力手段 18・・・メモリアクセスセーブキュー構成手段19・
・・記憶手段

Claims (1)

  1. 【特許請求の範囲】 仮想記憶計算機システムにおいて、 順次に命令列を実行する実行手段(11)と、データを
    格納するレジスタ(12)と、 命令の実行時に書き込み対象のレジスタ番号を記憶して
    おくレジスタスコアボード(14)と、先行命令と後続
    命令とでレジスタの干渉を調べる比較手段(15)と、 前記命令列の中の実行すべきメモリアクセス命令をメモ
    リアクセスキューに格納するメモリアクセスキュー構成
    手段(16)と、 アクセス例外発生時にアクセスエラー信号を出力するエ
    ラー信号出力手段(17a)を有し、前記メモリアクセ
    ス命令に従ってアドレス変換するアドレス変換手段(1
    7)と、 アクセス例外発生時に前記メモリアクセス キュー構成手段(16)の格納内容をセーブさせるとと
    もに例外処理終了後にセーブした内容を前記メモリアク
    セスキュー構成手段(16)にリストアするメモリアク
    セスセーブキュー構成手段(18)と、 を備えたことを特徴とする例外処理方式。
JP2068114A 1990-03-20 1990-03-20 例外処理方式 Expired - Fee Related JP2671160B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2068114A JP2671160B2 (ja) 1990-03-20 1990-03-20 例外処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2068114A JP2671160B2 (ja) 1990-03-20 1990-03-20 例外処理方式

Publications (2)

Publication Number Publication Date
JPH03269628A true JPH03269628A (ja) 1991-12-02
JP2671160B2 JP2671160B2 (ja) 1997-10-29

Family

ID=13364397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2068114A Expired - Fee Related JP2671160B2 (ja) 1990-03-20 1990-03-20 例外処理方式

Country Status (1)

Country Link
JP (1) JP2671160B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0612012A1 (en) * 1993-02-16 1994-08-24 Fujitsu Limited A pipeline computer with scoreboard
US7395417B2 (en) 1992-03-05 2008-07-01 Seiko Epson Corporation Register file backup queue
US7716452B1 (en) 1996-08-22 2010-05-11 Kelly Edmund J Translated memory protection apparatus for an advanced microprocessor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03158929A (ja) * 1989-11-16 1991-07-08 Mitsubishi Electric Corp データ処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03158929A (ja) * 1989-11-16 1991-07-08 Mitsubishi Electric Corp データ処理装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7395417B2 (en) 1992-03-05 2008-07-01 Seiko Epson Corporation Register file backup queue
US7657728B2 (en) 1992-03-05 2010-02-02 Seiko Epson Corporation Register file backup queue
EP0612012A1 (en) * 1993-02-16 1994-08-24 Fujitsu Limited A pipeline computer with scoreboard
US6055625A (en) * 1993-02-16 2000-04-25 Fujitsu Limited Pipeline computer with a scoreboard control circuit to prevent interference between registers
US7716452B1 (en) 1996-08-22 2010-05-11 Kelly Edmund J Translated memory protection apparatus for an advanced microprocessor
US8055877B1 (en) 1996-08-22 2011-11-08 Kelly Edmund J Translated memory protection apparatus for an advanced microprocessor

Also Published As

Publication number Publication date
JP2671160B2 (ja) 1997-10-29

Similar Documents

Publication Publication Date Title
US5003462A (en) Apparatus and method for implementing precise interrupts on a pipelined processor with multiple functional units with separate address translation interrupt means
JPH0430053B2 (ja)
JPH0760388B2 (ja) パイプライン制御回路
KR920003044B1 (ko) 가상 머신 시스템용의 게스트 머신 실행 제어 시스템
JPS58121457A (ja) 情報処理装置
EP1039376B1 (en) Sub-instruction emulation in a VLIW processor
US6125443A (en) Interrupt processing system and method for information processing system of pipeline control type
JP2671160B2 (ja) 例外処理方式
EP0212132A1 (en) Method and digital computer for recovering from errors
JPS58178464A (ja) 並列演算処理装置
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JP3240660B2 (ja) データ処理装置
JPH0133856B2 (ja)
JP2783285B2 (ja) 情報処理装置
JP2870405B2 (ja) 情報処理装置
JPS59172044A (ja) 命令制御方式
JPH04181331A (ja) 命令リトライ方式
JPS61294550A (ja) 電子計算機におけるデ−タ読取書込制御方式
JPS61117635A (ja) 仮想記憶制御方式
JP3119859B2 (ja) 計算機システム
JPH05250161A (ja) マイクロコンピュータ装置
JPH0150936B2 (ja)
JPS6149695B2 (ja)
JPS58215779A (ja) デ−タ処理装置
JPH01188943A (ja) 記号処理向きデータ処理方式

Legal Events

Date Code Title Description
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

LAPS Cancellation because of no payment of annual fees