JPS6349941A - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JPS6349941A
JPS6349941A JP19275486A JP19275486A JPS6349941A JP S6349941 A JPS6349941 A JP S6349941A JP 19275486 A JP19275486 A JP 19275486A JP 19275486 A JP19275486 A JP 19275486A JP S6349941 A JPS6349941 A JP S6349941A
Authority
JP
Japan
Prior art keywords
execution
software
software interrupt
condition code
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.)
Pending
Application number
JP19275486A
Other languages
English (en)
Inventor
Noboru Tamura
昇 田村
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP19275486A priority Critical patent/JPS6349941A/ja
Publication of JPS6349941A publication Critical patent/JPS6349941A/ja
Pending 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、種々の命令およびデータを解析して、プロ
グラムを実行する演算処理装置に関するものである。
〔従来の技術〕
従来、この種の演算処理装置、すなわち中央処理装置(
CPU)において、ソフトウェア割込処理(ソフトIR
Q処理)は下記のように実行されていた。
まず、プログラムはCPUのメモリ空間に設けられるI
RQベクタテーブルを初期化する。CPUはIRQベク
タテーブルに各々のソフトウェア割込に対応するプログ
ラムの開始アドレスを書き込んでおく。なお、ソフトウ
ェア割込でCPU内のIRQベクタテーブル内のどのベ
クタを利用するかというのは、CPU内で/X−ド的に
固定となっている。
例えば第6図に示したように、ソフトウェア割込要因A
のベクタは「0」番地、ソフトウェア割込要因Bのベク
タは「4」とし、各要因処理のアドレスをrQJまたは
[4]番地に書き込んでおき、CPUをソフトウェア割
込可能な状態にしておく。この状態で、ソフトウェア割
込要因Bが発生すると、CPUは現在のプログラムカウ
ンタ。
各種レジスタを保存し、「4」番地の内容を新しいプロ
グラムカウンタとする。したがって、ソフトウェア割込
要因Bのプログラムが実行され、処理終了コマンド、例
えばi RET命令を実行すると、CPUは保存してあ
ったプログラムカウンタおよび各種レジスタを復帰させ
る。
このような動作を実行するCPUにおいて、予期しない
要因のソフトウェア割込が発生したり、予期した要因の
ソフトウェア割込であるが、予期しないタイミングでソ
フトウェア割込が発生する状態が起こると、プログラム
は異常動作を行う。
〔発明が解決しようとする問題点〕 従来、このような状態で異常の原因を追及するのは非常
に困難であり、CPUとは異なる解析装置を使用したり
、プログラム内に状態を解析するだめのトレース手段を
設けなければ、その異常状態の解析を行えない問題点が
あった。
このため、ソフトウェア割込要求が発生し、対応するベ
クタへ処理を移行させる前に固定アドレス内の値をベク
タ値として同一処理ルーチンへ移行させ、その同一処理
ルーチン処理終了後、各対応するソフトウェア割込処理
ルーチンを実行させようとする試みもあるが、全てのソ
フトウェア割込処理ルーチンが同一処理ルーチンを実行
するため処理効率が著しく低下する等の付加的問題が発
生してしまう。
この発明は、上記の問題点を解消するためになされたも
ので、ソフトウェア割込処理ルーチンが起動した場合に
同一処理ルーチンの実行を各ソフトウェアが選択できる
演算処理装置を得ることを目的とする。
〔問題点を解決するための手段〕
この発明に係る演算処理装置は、同一処理ルーチンの実
行が終了した後、各ソフトウェア割込処理の同一処理ル
ーチンの再実行を抑止するコンディションコードを保持
するレジスタと、このレジスタに保持されるコンディシ
ョンコードに基づいて各ソフトウェア割込み処理実行を
制御する割込み処理制御手段とを設けたものである。
〔作用〕
この発明においては、レジスタに格納されたコンディシ
ョンコードに基づいて割込み処理制御手段が各ソフトウ
ェア割込み処理実行を制御させる。
〔実施例〕
第1図はこの発明の一実施例を示す演算処理装置の構成
を説明するブロック図であり、1はこの発明のレジスタ
を有する汎用レジスタアレイで、同一処理ルーチンの実
行が終了した後、各ソフトウェア割込処理の同一処理ル
ーチンの実行を抑止するコンディションコードを保持す
るためのコンディションコードレジスタ1aを有してい
る。2は算術論理演算器(ALU)で、データバス3ま
たは汎用レジスタアレイ1に保持されるデータの論理演
算を実行する。4はメモリで、メモリ制御回路5の各ア
ドレスに書き込まれたデータに基づいて読み出しが制御
される。6はプログラムカウンタで、次に実行する命令
を順次指示して行く。
7は命令レジスタで、データバス3を介して授受した命
令コードを保持する。8は命令デコーダで、命令レジス
タ7に保持された命令コードを解析して制御回路9に解
析した命令を転送する。制御回路9はプログラムカウン
タ6の内容を順次更新しながら各命令に応じたデータ処
理を実行させる。10はソフトウェア割込制御回路で、
命令デコーダ8から出力されるメモリ4に書き込まれた
命令のオペレーションコード、例えばS W i ニ応
じてソフトウェア割込要求を認識し、オペレーションコ
ードSWiのオペランドに応じてベクタテーブルアドレ
スを演算し、内部ラッチに該当するアドレスを保持した
後、同一処理ルーチンへ処理を移行させ、同一処理ルー
チン終了後、ラッチに保持されるアドレス、すなわちソ
フトウェア割込ルーチンへ処理を移行させる。また、ソ
フトウェア割込制御回路]0はコンディションコードレ
ジスタ1aに保持されるコンディションコードccRに
基づいて各ソフトウェア割込み処理実行を制御する。さ
らに、ソフトウェア割込制御回路10はコンディション
コードCCRがrlJの場合に同一処理ルーチンの実行
を停止させ、各ソフトウェア割込処理に直接移行させ、
コンディションコードCCRが「0」の場合に同一処理
ルーチンを実行させ、実行終了後、各ソフトウェア割込
処理に移行させる。
第2図は第1図に示した演算処理装置のベクタテーブル
を説明する模式図であり、11はアドレス情報で、固定
アドレス「0」に同一処理用ベクタが割り付けられ、ア
ドレス「4」以降にソフトウェア割込用ベクタが割り付
けられた状態を示しである。なお、ベクタは4バイトで
構成されている。
第3図は第1図に示したメモリ4に格納されたプログラ
ムを説明するための模式図であり、21〜23は各命令
性で、命令性21はコンディションコードレジスタ1a
にコンディションコードCCRを保持させる命令である
。命令性22はソフトウェア割込ルーチンのベクタを設
定する命令である。命令性23はソフトウェア割込ルー
チン、例えばソフトウェア割込ルーチンSWiで、処理
終了後、i RET命令でジャンプする。
第4図は第1図に示したメモリ4のメモリ空間を説明す
るための模式図であり、アドレスrQJおよびアドレス
「4」は未定義の状態を示し、アドレス「8」には命令
性23で設定されたベクタ「8」により設定されるソフ
トウェア割込ルーチンの開始アドレスを格納している状
態を示しである。
次に第5図を参照しながらこの発明によるソフトウェア
割込ルーチン実行制御動作について説明する。
第5図はこの発明によるソフトウェア割込処理動作の一
例を示すフローチャートである。なお。
(1)〜(18)は各ステップを示す。
第3図に示すプログラムの実行を開始し、命令性2]の
オペレーションコードをフェッチするのを制御回路9が
待機しく1)、オペレーションコードをフェッチしたら
、命令デコーダ7がソフトウェア割込要求が発生された
旨をソフトウェア割込制御回路10へ通知しく2)、フ
ェッチ終了を待機しく3)、フェッチが終了したら制御
回路9にその旨を通知する(4)。次いで、制御回路9
が次の命令のフェッチを指示する(5)。次いで、次の
命令性、すなわち命令性22のオペランド、例えば「2
」をフェッチするのを待機しく6)、フェッチしたら、
そのフェッチ終了をソフトウェア割込制御回路1oへ通
知する(7)。
これにより、ソフトウェア割込制御回路1oはソフトウ
ェア割込(オペランドが「2」の場合)が要求されてい
ると認知し、汎用レジスタアレイ1とプログラムカウン
タ6の退避を制御回路9へ要求する(8)。制御回路9
は汎用レジスタアレイ1とプログラムカウンタ6の退避
を実行しく9)、退避終了をソフトウェア割込制御回路
10に通知する(10)。次いで、ソフトウェア割込制
御回路10はソフトウェア割込ルーチンのベクタテーブ
ルアドレス、例えば「8」番地を演算しく11)、その
結果を内部ラッチに保持する(12)。
ここで、ソフトウェア割込制御回路1oが第1図に示し
たコンディションコードレジスタ1aに保持されている
コンディションコードCCR(7)厳君ビット情報が「
1」かどうかを判定しく13)、YESならば同一処理
ルーチンを実行せずに、ソフトウェア割込制御回路10
は今内部ラッチに保持したベクタテーブルアドレスをプ
ログラムカウンタ6に送出するとともに(14)、その
旨を制御回路9に報知する(15)。次いで、第4図に
示すソフトウェア割込ルーチンS W iを実行する(
16)。
一方、ステップ(13)の判断で、Noの場合、すなわ
ち同一処理ルーチンを必要と判断したプログラムは、フ
ェッチした内容を同一処理ルーチンへのベクタ値とし、
第1図に示したメモリ4に格納される同一処理ルーチン
を実行しく17)、同一処理ルーチン実行終了後、各ソ
ウトウエア割込処理に移行する(18)。
〔発明の効果〕
以上説明したように、この発明は同一処理ルーチンの実
行が終了した後、各ソフトウェア割込処理の同一処理ル
ーチンの再実行を抑止するコンディションコードを保持
するレジスタと、このレジスタに保持されるコンディシ
ョンコードに基づいて各ソフトウェア割込み処理実行を
制御する割込み処理制御手段とを設けたので、各ソフト
ウェア割込処理プログラムが正常に起動されるソフトウ
ェア割込処理については、各ソフトウェア割込処理毎に
同一処理ルーチンを実行させずに済むので、マシンサイ
クルの効率を大幅に向上できる優れた利点を有する。
【図面の簡単な説明】
第1図はこの発明の一実施例を示す演算処理装置の構成
を説明するブロック図、第2図は第1図に示した演算処
理装置のベクタテーブルを説明する模式図、第3図は第
1図に示したメモリに格納されたプログラムを説明する
ための模式図、第4図は第1図に示したメモリのメモリ
空間を説明するための模式図、第5図はこの発明による
ソフトウェア割込処理動作の一例を示すフローチャート
、第6図は従来のソフトウェア割込処理動作を説明する
ための模式図である。 図中、1は汎用レジスタアレイ、1aはコンディション
コードレジスタ、2は算術論理演算部、3はデータバス
、4はメモリ、5はメモリ制御回路、6はプログラムカ
ウンタ、7は命令レジスタ、8は命令デコーダ、9は制
御回路、10はソフトウェア割込制御回路である。 第1図 ソ 第2図 第3図 ORCCR=1 〜21 MoV ’g、 0FFSET 5Wi2〜22NT ET 第4図 メモリ 第5図 第6図

Claims (2)

    【特許請求の範囲】
  1. (1)任意のソフトウェア割込要因が発生した場合に、
    特定のアドレスに指示されるメモリエリアに格納された
    ベクタ情報に基づいて各ソフトウェア割込み処理実行前
    に一旦同一処理ルーチンへ移行させる演算処理装置にお
    いて、前記同一処理ルーチンの実行が終了した後、各ソ
    フトウェア割込処理の前記同一処理ルーチンの再実行を
    抑止するコンディションコードを保持するレジスタと、
    このレジスタに保持される前記コンディションコードに
    基づいて各ソフトウェア割込み処理実行を制御する割込
    み処理制御手段とを具備したことを特徴とする演算処理
    装置。
  2. (2)コンディションコードは、同一処理ルーチン実行
    終了後、各ソフトウェアが独立してレジスタに保持させ
    ることを特徴とする特許請求の範囲第(1)項記載の演
    算処理装置。
JP19275486A 1986-08-20 1986-08-20 演算処理装置 Pending JPS6349941A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19275486A JPS6349941A (ja) 1986-08-20 1986-08-20 演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19275486A JPS6349941A (ja) 1986-08-20 1986-08-20 演算処理装置

Publications (1)

Publication Number Publication Date
JPS6349941A true JPS6349941A (ja) 1988-03-02

Family

ID=16296492

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19275486A Pending JPS6349941A (ja) 1986-08-20 1986-08-20 演算処理装置

Country Status (1)

Country Link
JP (1) JPS6349941A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017511513A (ja) * 2013-12-23 2017-04-20 ノルディック セミコンダクタ アーエスアーNordic Semiconductor ASA Ic無線装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017511513A (ja) * 2013-12-23 2017-04-20 ノルディック セミコンダクタ アーエスアーNordic Semiconductor ASA Ic無線装置

Similar Documents

Publication Publication Date Title
US4715013A (en) Coprocessor instruction format
US4729094A (en) Method and apparatus for coordinating execution of an instruction by a coprocessor
US4731736A (en) Method and apparatus for coordinating execution of an instruction by a selected coprocessor
US4750110A (en) Method and apparatus for executing an instruction contingent upon a condition present in another data processor
US4095268A (en) System for stopping and restarting the operation of a data processor
US5021991A (en) Coprocessor instruction format
EP0523758B1 (en) A method and apparatus for coordinating execution of an instruction by a coprocessor
US4821231A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
US4758950A (en) Method and apparatus for selectively delaying an interrupt of a coprocessor
US4914578A (en) Method and apparatus for interrupting a coprocessor
US5068821A (en) Bit processor with powers flow register switches control a function block processor for execution of the current command
JPS63279328A (ja) 仮想計算機システムのゲスト実行制御方式
US4994961A (en) Coprocessor instruction format
JPS6349941A (ja) 演算処理装置
US4758978A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JPH0377137A (ja) 情報処理装置
JPS60124746A (ja) デ−タ処理装置
US4811274A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JPS59218569A (ja) マイクロ・コンピユ−タ
JPS6349943A (ja) 演算処理装置
JPS62125437A (ja) 付加プロセツサの制御方法
JPS6128144A (ja) トレ−ス動作実行装置
JPH036758A (ja) マイクロプロセッサ
JPH0259829A (ja) マイクロコンピュータ
JPH03175539A (ja) デバッグ用マイクロプロセッサ