JPS622329A - 演算例外命令アドレス割出装置 - Google Patents

演算例外命令アドレス割出装置

Info

Publication number
JPS622329A
JPS622329A JP60140965A JP14096585A JPS622329A JP S622329 A JPS622329 A JP S622329A JP 60140965 A JP60140965 A JP 60140965A JP 14096585 A JP14096585 A JP 14096585A JP S622329 A JPS622329 A JP S622329A
Authority
JP
Japan
Prior art keywords
instruction
arithmetic
address
exception
register
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
JP60140965A
Other languages
English (en)
Other versions
JPH0580690B2 (ja
Inventor
Hideo Hayashi
英男 林
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP60140965A priority Critical patent/JPS622329A/ja
Publication of JPS622329A publication Critical patent/JPS622329A/ja
Publication of JPH0580690B2 publication Critical patent/JPH0580690B2/ja
Granted legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は情報処理装置における演算例外処理に関し、特
に演算例外を発生した命令のアドレスを割出す装置に関
する。
情報処理装置において、演算の実行時にオーバーフロー
、アンダーフロー、ゼロディバイド等の演算例外が発生
した場合、その後の演算の実行を中止して割込みを発生
させ、演算例外に応じた処理が必要となる。
このような処理を行なうためには、どの命令で演算例外
が発生したかを先ず知ることが必要である。
〔従来の技術〕
従来、演算例外を発生した命令のアドレスは、例えば第
3図(a)に示すようにある種の演算(1,1の実行終
了時に演算例外が発生したことが演算ユニットから報告
されると、割込み処理を開始して演算+11に続く演算
(2)の実行を行なわないようにし、割込み時における
命令アドレスレジスタの内容が演算例外を起こした命令
の次のアドレスを示すことから割出していた。
〔発明が解決しようとする問題点〕
しかし、上述した従来の割出しは、先行する命令の演算
実行が終了してから後続命令の実行が開始されるシステ
ム構成を前提とするものであり、そうでないシステムで
は演算例外命令アドレスを割出すことは困難である。
即ち、性能を向上させるため、演算ユニットを例えば加
算器9乗算器、シフター等の如く複数個設け、これらの
演算ユニットを例えば第3図(b)或いは同図(C)に
示すように並行に動作させる装置では、ある時点で割込
みによりその後の命令実行を中止しても命令アドレスレ
ジスタは演算例外を発生した命令の次の命令を示さない
。従って、ソフトウェアに演算例外を起こした命令のア
ドレスを通知できず、演算例外発生後の必要な処理をソ
フトウェアに行なわせることが困難となる。
本発明はこのような従来の問題点を解決したもので、そ
の目的は、後続命令が先行命令の終了前に実行開始され
ても演算例外を起こした命令のアドレスを正しく割出す
ことができる装置を提供することにある。
〔問題点を解決するための手段〕
本発明は上記問題点を解決するために、異なる演算機能
を持つ複数の演算ユニットを有する情報処理装置におい
て、 前記各々の演算ユニットに対応して設けられ、対応する
演算ユニットへの命令実行指示時に歩進される複数個の
第1のカウンタと、 前記演算ユニットの各々に対応して設けられ、対応する
演算ユニットで演算が演算例外なしに終了したときにそ
の演算ユニットからの信号で歩進される複数個の第2の
カウンタと、 命令実行指示が為された前記演算ユニ7)に対応する前
記第1のカウンタの示す値に基づいたアドレスを発生す
る第1のセレクタと、 前記演算ユニットの各々に対応して設けられ、対応する
演算ユニットで演算例外が発生したときセットされる複
数個の例外発生レジスタと、該例外発生レジスタがセッ
トされた前記演算ユニットに対応する前記第2のレジス
タの示す値に基づいたアドレスを発生する第2のセレク
タと、前記第1のセレクタから送られたアドレスにその
ときの命令アドレスレジスタの内容を格納し、前記第2
のセレクタから送られたアドレスに格納された内容を演
算例外を起こした命令のアドレスとして出力する命令ア
ドレススタックとを設ける。
〔作用〕
命令実行指示毎に、命令実行指示が為された演算ユニッ
トに対応する第1のカウンタの内容に基づく命令アドレ
スレジスタのアドレスにその命令のアドレスが格納され
、演算ユニットで演算が例外なく終了すると第2のカウ
ンタは対応する第1のカウンタと同期してカウントアツ
プされる。しかし、演算ユニットで演算例外が発生する
と第2のカウンタはカウントアツプされず、その演算例
外を発生した命令のアドレスが格納されている命令アド
レスレジスタのアドレスを指したまま保持され、命令ア
ドレスレジスタからは演算例外を起こした命令のアドレ
スが出力されたままとなる。
〔実施例〕
第1図は本発明の実施例のブロック図である。
同図において、命令アドレスレジスタlは実行する命令
語が格納されている主記憶装置上のアドレス(命令アド
レス)を格納し、命令レジスタ2は実行する命令語を格
納する。また、複数の演算ユニット3〜5のうち例えば
演算ユニット3は加算器、演算ユニット4ば乗算器、演
算ユニット5はシフターとして働く。各演算ユニット3
〜5には、その各々に対応してカウンタ13〜15.カ
ウンタ23〜25が設けられている。なお、これらのカ
ウンタはカウント値が例えば9になったら零に戻るよう
になっている。
上記カウンタのうち、カウンタ13は命令レジスタ2に
含まれる命令が演算ユニット3を使用する命令のときそ
の命令実行指示時にカウントアツプされ、カウンタ14
は同様に演算ユニット4を使用する命令のときその命令
実行指示時にカウントアツプされ、カウンタ15は演算
ユニット5を使用する命令のときその命令実行指示時に
カウントアツプされる。また、カウンタ23は演算ユニ
ット3の演算終了時に演算例外の発生がなければカウン
トアツプされ、カウンタ24は演算ユニット4の演算終
了時に演算例外の発生がなければカウントアツプされ、
カウンタ25は演算ユニット5の演算終了時に演算例外
の発生がなければカウントアツプされるよう制御される
セレクタ6は、命令レジスタ2に含まれる演算ユニット
3〜5の使用種別情報等によりカウンタ13〜15の何
れかを選択するもので、命令実行指示時、加算命令なら
カウンタ13の内容を、乗算命令ならカウンタ14の内
容を、シフト命令ならカウンタ15の内容をそれぞれ命
令アドレススタック7の書込みアドレスとてスタック7
に送出する。
命令アドレススタック7は、命令アドレスレジスタlの
内容をセレクタ6より指定されたアドレスに格納する。
尚、セレクタ6では命令アドレススタック7のアドレス
がカウンタ13〜15間で同じにならないようカウンタ
13〜15の値の上位にある定数例えばカウンタ13を
選択するときは「1」。
カウンタ14を選択するときは「2」、カウンタ15を
選択するときは「3」等の定数等を付加する。
一方、命令実行指示により指示された演算ユニット3〜
5は、演算例外を発生することなく演算を終了すると演
算終了時にその旨を示す信号をアンド回路9を介してカ
ウンタ23〜25にカウントアツプ信号として送出する
。しかし、反対に演算例外が発生するとそのような信号
を送出せず、各演算ユニット3〜5に対応して設けられ
た例外発生レジスタ33〜35にアンド回路12を介し
てセント信号を送出する。例外発生レジスタ33〜35
の出力はオア回路8を介して図示しない割込制御部へ例
外発生を通知する信号となり、且つオア回路8の反転出
力によりアンド回路9.12が閉じられる。従って、他
の演算ユニットに対応するカウンタ23〜25のカウン
トアツプは禁止され、且つ他の例外発生レジスタのセッ
トも禁止される。
各”例外発生レジスタ33〜35の出力は選択決定回路
10にも入力され、この選択決定回路10で演算例外が
発生した演算ユニットに対応するカウンタ23〜25の
出力をセレクタ11が選択するようにセレクタ11が制
御される。なお、レジスタ33〜35のうち2個以上が
同時にセントされた場合、選択決定回路10は予め定め
られた順序例えば演算ユニットの実行時間の長い方を優
先して選択する。
セレクタ11の出力は読出しアドレスとして命令アドレ
ススタック7に入力される。上記セレクタ11もセレク
タ6と同様にカウンタ23〜25の値の上位にある定数
(この定数はカウンタ13〜15と同じである)を付加
し、命令アドレススタック7のエントリアドレスがカウ
ンタ23〜25間で同じにならないようにしている。
第2図(a)は、命令アドレス100の加算命令(11
が実行指示された後、命令アドレスlO1の乗算命令(
1)が実行指示され、乗算命令(11の実行終了前に加
算命令(11の実行が終了し命令アドレス102の加算
命令(2)の実行指示とその実行終了が行なわれるよう
な命令シーケンスにおいて、加算命令(2)で例えばフ
ローティングオーバーフローの演算例外が発生したとき
の第1図各部の状態の一例を示したタイムチャートであ
る。また第2図(b)は命令アドレススタック7の内容
の一例を示す図である。
カウンタ13〜15.カウンタ23〜25の内容は当初
零であり、加算命令111の実讐テ指示が為されると、
セレクタ6はカウンタ13の値rOJに定数rlJを付
加したアドレス「lO」を命令アドレススタック7に送
出し、スタック7は命令アドレスレジスタlの内容rl
oOJをアドレス「10」に格納する。その後、カウン
タ13はカウントアツプされ、その内容はrlJとなる
次に、乗算命令(1)の実行指示が為されると、セレク
タ6はカウンタ14の値「0」に定数「2」を付加した
アドレス「20」を命令アドレススタック7に送出し、
スタック7は命令アドレスレジスタ1の内容r101 
Jをアドレス「20」に格納する。その後、カウンタ1
4はカウントアツプされ、「1」となる。
加算命令+11の実行が終了すると、演算例外が発生し
ていないことからカウンタ23はカウントアンプされて
「1」となる、また、例外発生レジスタ33はセットさ
れない。
次に加算命令(2)の実行が指示されると、セレクタ6
はカウンタ13の値「1」に定数rlJを付加したアド
レス「11」を命令アドレススタック7に送出し、スタ
ック7はアドレス「11」にそのときの命令アドレスレ
ジスタ1の内容r102 Jを格納する。その後、カウ
ンタ13は「2」に変更される。
加算命令(2)の実行が終了すると、この場合演算例外
が発生しているので、演算例外レジスタ33がセットさ
れ、図示しない割込制御部へ演算例外が発生したことが
通知される。このとき、カウンタ23はカウントアンプ
されないのでその内容は「1」のままとなる。また、選
択決定回路10では、カウンタ23の内容「1」に定数
「1」を付加したアドレスrl IJが続出しアドレス
として命令アドレススタック7に送出され、命令アドレ
ススタック7からは演算例外を起こした命令(加算命令
(2))のアドレスr102 Jが続出される。
なお、レジスタ33がセットされるとオア回路8の出力
によりアンド回路9,12が閉じられるため、他の演算
で例外が発生しても演算例外レジスタはセットされず、
カウンタもカウントアツプされない。
〔発明の効果〕
以上説明したように、本発明は、命令実行指示時に演算
ユニットに対応して順次命令アドレスを命令アドレスス
タックに格納しておき、演算ユニットからの例外発生な
し信号に応答して演算ユニット対応の第2のカウンタを
カウントアツプし、例外発生有りを示す信号に応答して
それ以降の第2のカウンタのカウントアンプを禁止し、
例外を発生した演算ユニットに対応する第2のカウンタ
の内容で命令アドレススタックをアクセスするようにし
たので、後続命令が先行命令の終了前に実行開始されて
も演算例外を起こした命令のアドレスを正しく割出すこ
とができる効果がある。
【図面の簡単な説明】
第1図は本発明の実施例のブロック図、第2図は第1図
の動作説明図および、 第3図は従来の問題点の説明図である。 図において、1は命令アドレスレジスタ、2は命令レジ
スタ、3〜5は演算ユニット、6.11はセレクタ、7
は命令アドレススタック、8はオア回路、9はアンド回
路、10は選択決定回路、13゜14、15は第1のカ
ウンタ、23.24.25は第2のカウンタ、33.3
4.35は例外発生レジスタである。 う 主記憶装置へ 本発明の実施例のブロック図 第1図 (C1) 命令アドレススタック7              
   II          10Σ=二二の出力 (b) 実施例の動作説明図 従来の問題点の説明図 第3図

Claims (1)

  1. 【特許請求の範囲】 異なる演算機能を持つ複数の演算ユニットを有する情報
    処理装置において、 前記各々の演算ユニットに対応して設けられ、対応する
    演算ユニットへの命令実行指示時に歩進される複数個の
    第1のカウンタと、 前記演算ユニットの各々に対応して設けられ、対応する
    演算ユニットで演算が演算例外なしに終了したときにそ
    の演算ユニットからの信号で歩進される複数個の第2の
    カウンタと、 命令実行指示が為された前記演算ユニットに対応する前
    記第1のカウンタの示す値に基づいたアドレスを発生す
    る第1のセレクタと、 前記演算ユニットの各々に対応して設けられ、対応する
    演算ユニットで演算例外が発生したときセットされる複
    数個の例外発生レジスタと、該例外発生レジスタがセッ
    トされた前記演算ユニットに対応する前記第2のレジス
    タの示す値に基づいたアドレスを発生する第2のセレク
    タと、前記第1のセレクタから送られたアドレスにその
    ときの命令アドレスレジスタの内容を格納し、前記第2
    のセレクタから送られたアドレスに格納された内容を演
    算例外を起こした命令のアドレスとして出力する命令ア
    ドレススタックとを具備したことを特徴とする演算例外
    命令アドレス割出装置。
JP60140965A 1985-06-27 1985-06-27 演算例外命令アドレス割出装置 Granted JPS622329A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60140965A JPS622329A (ja) 1985-06-27 1985-06-27 演算例外命令アドレス割出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60140965A JPS622329A (ja) 1985-06-27 1985-06-27 演算例外命令アドレス割出装置

Publications (2)

Publication Number Publication Date
JPS622329A true JPS622329A (ja) 1987-01-08
JPH0580690B2 JPH0580690B2 (ja) 1993-11-10

Family

ID=15280936

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60140965A Granted JPS622329A (ja) 1985-06-27 1985-06-27 演算例外命令アドレス割出装置

Country Status (1)

Country Link
JP (1) JPS622329A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11731701B2 (en) 2018-08-01 2023-08-22 Toyota Jidosha Kabushiki Kaisha Autonomous driving system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5576446A (en) * 1978-12-06 1980-06-09 Toshiba Corp Pre-fetch control system
JPS55110340A (en) * 1979-02-16 1980-08-25 Fujitsu Ltd Data processing system
JPS5696339A (en) * 1979-12-28 1981-08-04 Fujitsu Ltd Data processing system
JPS56157538A (en) * 1980-05-09 1981-12-04 Fujitsu Ltd Data processing system of advanced mode control
JPS58221447A (ja) * 1982-06-18 1983-12-23 Hitachi Ltd デ−タ処理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5576446A (en) * 1978-12-06 1980-06-09 Toshiba Corp Pre-fetch control system
JPS55110340A (en) * 1979-02-16 1980-08-25 Fujitsu Ltd Data processing system
JPS5696339A (en) * 1979-12-28 1981-08-04 Fujitsu Ltd Data processing system
JPS56157538A (en) * 1980-05-09 1981-12-04 Fujitsu Ltd Data processing system of advanced mode control
JPS58221447A (ja) * 1982-06-18 1983-12-23 Hitachi Ltd デ−タ処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11731701B2 (en) 2018-08-01 2023-08-22 Toyota Jidosha Kabushiki Kaisha Autonomous driving system

Also Published As

Publication number Publication date
JPH0580690B2 (ja) 1993-11-10

Similar Documents

Publication Publication Date Title
EP0208870B1 (en) Vector data processor
US4251859A (en) Data processing system with an enhanced pipeline control
JPS61208167A (ja) ヒストグラムデータ発生装置
US5301331A (en) Interruption handling system
JPH03286332A (ja) デジタルデータ処理装置
JPS622329A (ja) 演算例外命令アドレス割出装置
JPS5935451B2 (ja) 汎用レジスタ・アクセス方式
JPH0528431B2 (ja)
JPH0580691B2 (ja)
JPS6125275A (ja) ベクトル命令処理装置
JP2511063B2 (ja) パイプライン制御方式
SU962926A1 (ru) Устройство дл логарифмировани
JPH0250220A (ja) 集約演算処理機構
JPS60213132A (ja) デイジタル信号処理装置
EP0057313A2 (en) Multi-phase subroutine control circuitry
JPS622324A (ja) 演算例外発生時処理方式
JPH04330519A (ja) 乗算回路
SU1339653A1 (ru) Запоминающее устройство
JPS6236255B2 (ja)
JPS62160529A (ja) デ−タ処理装置
JPS60178540A (ja) 情報処理装置におけるバイパス制御方式
JPH01310444A (ja) 並列演算処理装置
JPH037971B2 (ja)
JPS6353645A (ja) 情報処理装置
JPS62145469A (ja) ベクトル命令処理装置