JPH06131198A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH06131198A
JPH06131198A JP28172792A JP28172792A JPH06131198A JP H06131198 A JPH06131198 A JP H06131198A JP 28172792 A JP28172792 A JP 28172792A JP 28172792 A JP28172792 A JP 28172792A JP H06131198 A JPH06131198 A JP H06131198A
Authority
JP
Japan
Prior art keywords
instruction
execution
interrupt
machine instruction
flag 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
JP28172792A
Other languages
English (en)
Inventor
Akira Nishimura
明 西村
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP28172792A priority Critical patent/JPH06131198A/ja
Publication of JPH06131198A publication Critical patent/JPH06131198A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】割り込み応答を高速化すると共に、命令により
外部から割り込み応答の仕方を設定できる機構を設ける
ことにより、多様なシステムに対応可能なデータ処理装
置を提供することを目的とする。 【構成】第1の機械命令(CIR命令)により設定さ
れ、第1の機械命令(CIR命令)の次の機械命令の実
行終了後に解除される実行取消有効フラグレジスタ1
と、外部割り込みに対して現在実行中の機械命令の実行
を取り消すことが可能か否かを示す実行取消識別フラグ
レジスタ3と、外部割り込み発生時に、CIR命令有効
フラグレジスタ1が設定されており、且つ実行取消識別
フラグレジスタ3が可能である旨を示している場合に
は、現在実行中の機械命令をすぐに取り消して割り込み
処理を開始するよう制御する制御手段5とを有して構成
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロコンピュータ
若しくはマイクロプロセッサ等のデータ処理装置に関
し、特に、割り込み応答を高速化すると共に、命令によ
って外部から割り込み応答の仕方を設定する機構を設け
ることにより、多様なシステムに対応可能としたデータ
処理装置に関する。
【0002】
【従来の技術】マイクロコンピュータの中央処理装置
(CPU)やマイクロプロセッサ等のデータ処理装置
(以下、MPUと略記する)では、機械命令をメインメ
モリから読み込み、それをMPU内部で実行するという
2つの動作の繰り返しを基本として処理が進められる。
【0003】MPUは、外部から機械命令を読み込む
と、機械命令のデコードを行ない、演算回路によって命
令の実行を行なう。特に、高機能な機械命令を数多く持
つMPUでは、1つの機械命令の実行に複数のクロック
サイクルを要することが多い。特に長いクロックサイク
ルを要する機械命令の例としては、乗算命令、除算命
令、ビットフィールド操作命令、キュー操作命令等が挙
げられ、数十クロックもの実行時間を要する場合があ
る。
【0004】またMPUは、機械命令の処理と並行して
外部からの割り込みをモニターしており、割り込みが発
生した場合には、その割り込みを受け付けるか否かを判
断する。そして割り込みを受け付ける場合には、割り込
みに伴う内部処理を実行し、割り込み処理プログラムに
制御を移す。割り込みを受け付けなかった場合には、そ
のまま現在のプログラムの実行を継続する。
【0005】従来のMPUでは、外部で割り込みが発生
しても、MPUが実際の割り込み処理を開始するのは、
割り込みが発生した時点でMPUが処理していた機械命
令の処理が終了した後に行なわれる(図9参照)。
【0006】このため、MPUが、除算命令やビットフ
ィールド命令等の長い実行クロックを要する機械命令を
実行していた場合、割り込み応答が著しく悪くなる。こ
こで、割り込み応答とは、割り込みが発生してから、M
PUが必要な内部処理を行ない、割り込み処理ハンドラ
ルーチンのプログラムの実行を開始するまでの応答時間
をいう。
【0007】
【発明が解決しようとする課題】以上のように、従来の
データ処理装置では、外部割り込みが発生した時点で実
行していた機械命令の処理を終了した後に割り込み処理
を開始するので、割り込み発生時に長い実行クロックを
要する機械命令を実行していた場合、割り込み応答が著
しく悪くなるという問題があった。
【0008】本発明は、上記問題点を解決するもので、
その目的は、割り込み応答を高速化すると共に、命令に
より外部から割り込み応答の仕方を設定できる機構を設
けることにより、多様なシステムに対応可能なデータ処
理装置を提供することである。
【0009】
【課題を解決するための手段】前記課題を解決するため
に、本発明の第1の特徴は、図1に示す如く、外部割り
込みに対して現在実行中の機械命令の実行を取り消すこ
とが可能か否かを示す実行取消識別フラグレジスタ3
と、外部割り込み発生時に、前記実行取消識別フラグレ
ジスタ3が可能である旨を示している場合には、現在実
行中の機械命令をすぐに取り消して割り込み処理を開始
するよう制御する制御手段5とを具備することである。
【0010】また、本発明の第2の特徴は、第1の機械
命令(CIR命令)により設定され、前記第1の機械命
令(CIR命令)の次の機械命令の実行終了後に解除さ
れる実行取消有効フラグレジスタ1と、外部割り込みに
対して現在実行中の機械命令の実行を取り消すことが可
能か否かを示す実行取消識別フラグレジスタ3と、外部
割り込み発生時に、前記CIR命令有効フラグレジスタ
1が設定されており、且つ前記実行取消識別フラグレジ
スタ3が可能である旨を示している場合には、現在実行
中の機械命令をすぐに取り消して割り込み処理を開始す
るよう制御する制御手段5とを具備することである。
【0011】また、本発明の第3の特徴は、請求項2に
記載のデータ処理装置において、前記CIR命令有効フ
ラグレジスタ1は、第2の機械命令(SIR命令)によ
り設定され、第3の機械命令(RIR命令)により解除
されることである。
【0012】更に、本発明の第4の特徴は、請求項1、
2、または3に記載のデータ処理装置において、前記実
行取消識別フラグレジスタ3は、当該データ処理装置内
のユーザに開放されている汎用レジスタ及び制御レジス
タ群の内容が実行中の機械命令によって変更されておら
ず、且つ実行中の機械命令によって外部メモリの値が変
更されていない時に、現在実行中の機械命令の実行を取
り消すことが可能である旨を示すことである。
【0013】
【作用】本発明の第1及び第4の特徴のデータ処理装置
では、図1に示す如く、外部割り込みに対して、当該デ
ータ処理装置内の汎用レジスタ及び制御レジスタ群の内
容が実行中の機械命令によって変更されておらず、且つ
実行中の機械命令によって外部メモリの値が変更されて
いない時に、現在実行中の機械命令の実行を取り消すこ
とが可能である旨を示す実行取消識別フラグレジスタ3
を備え、制御手段5により、外部割り込み発生時に実行
取消識別フラグレジスタ3が可能である旨を示している
場合には、現在実行中の機械命令をすぐに取り消して割
り込み処理を開始し、実行取消識別フラグレジスタ3が
不可能である旨を示している場合には、現在実行中の機
械命令の処理が終了した後に割り込み処理を開始するよ
う制御している。
【0014】これにより、外部割り込みが発生した時点
で実行中の機械命令の処理が取消可能な場合には、直ち
に実行中の機械命令の処理を取り消して割り込み処理を
開始するので、割り込み発生時に長い実行クロックを要
する機械命令を実行していた場合にも、割り込み応答を
高速化することができる。
【0015】また、本発明の第2、第3、及び第4の特
徴のデータ処理装置では、図1に示す如く、第1の機械
命令(CIR命令)により設定され、第1の機械命令
(CIR命令)の次の機械命令の実行終了後に解除さ
れ、並びにまたは、第2の機械命令(SIR命令)によ
り設定され、第3の機械命令(RIR命令)により解除
される実行取消有効フラグレジスタ1と、外部割り込み
に対して、当該データ処理装置内の汎用レジスタ及び制
御レジスタ群の内容が実行中の機械命令によって変更さ
れておらず、且つ実行中の機械命令によって外部メモリ
の値が変更されていない時に、現在実行中の機械命令の
実行を取り消すことが可能である旨を示す実行取消識別
フラグレジスタ3とを備え、制御手段5により、外部割
り込み発生時にCIR命令有効フラグレジスタ1が設定
されており、且つ実行取消識別フラグレジスタ3が可能
である旨を示している場合には、現在実行中の機械命令
をすぐに取り消して割り込み処理を開始し、実行取消有
効フラグレジスタ1及び実行取消識別フラグレジスタ3
の内容が上記以外の場合には、現在実行中の機械命令の
処理が終了した後に割り込み処理を開始するよう制御し
ている。
【0016】これにより、第1の特徴のデータ処理装置
と同様に割り込み応答を高速化することができると共
に、ユーザが第1、第2、及び第3の機械命令を使用し
てソフトウェア的に割り込み応答時間の設定できるの
で、例えば、割り込み応答時間の高速性が優先されるシ
ステムでは、長い実行クロックを要する機械命令に対し
て実行取消有効フラグレジスタ1を設定し、或いは、平
均的な処理性能が重要であるシステムでは、全ての機械
命令に対してCIR命令有効フラグレジスタ1を解除し
ておくことにより、多様なシステムに幅広く対応可能な
データ処理装置を実現できる。
【0017】
【実施例】以下、本発明に係る実施例を図面に基づいて
説明する。
【0018】図2に本発明の一実施例に係るデータ処理
装置の構成図を示す。
【0019】同図において、本実施例のデータ処理装置
は、1チップで構成されるマイクロプロセッサ(以下、
MPUと略記する)10であり、MPU10外部とのイ
ンタフェースを持ち、命令フェッチやデータのリード/
ライトを制御するバスインタフェースユニット11と、
命令をデコードしてマイクロコードを出力する命令デコ
ードユニット12と、マイクロコードをデコードして、
MPU10内の各構成要素に対する制御信号を生成する
マイクロデコーダ13と、汎用レジスタR1〜Rnとし
て使用されるレジスタファイル14と、加算、減算等の
演算処理を行なうALU/シフタ15と、プロセッサス
テータスワードPSW、プログラムカウンタPC等の制
御レジスタ群16とから構成されており、外部インタフ
ェースとしてデータバスD(15:0)、アドレスバス
A(23:0)、制御信号群CON、及び割り込み信号
INTを持つ。
【0020】また図3は、命令デコードユニット12の
詳細構成図である。
【0021】同図において、命令デコーダユニット12
は、命令コード及びアドレッシング情報から必要なフィ
ールドを切り出すアドレス情報生成回路21、アドレス
情報生成回路21の出力を保持するアドレスレジスタ2
2、マイクロアドレスのカウントアップを行なうカウン
タ23、カウンタ23のカウントアップを制御するカウ
ント制御回路24、マイクロアドレスを選択出力するア
ドレスセレクタ25、マイクロ命令を格納したマイクロ
命令格納用PLA26、マイクロ命令を保持するマイク
ロ命令レジスタ27、マイクロコードの所定ビットで設
定/解除され、即ち、CIR命令或いはSIR命令発行
時に設定され、CIR命令の次命令終了時或いはRIR
命令発行時に解除される実行取消有効フラグレジスタ
1、現在実行中の機械命令の実行を取り消し可能か否か
を示す実行取消識別フラグレジスタ3、ステート情報を
保持する2ビットのステートレジスタ28、並びに、マ
イクロ命令、CIR命令有効フラグレジスタ1、実行取
消識別フラグレジスタ3、及び割り込み発生の有無に基
づきステートレジスタ28の値をセットするステート制
御回路29から構成されている。
【0022】アドレスセレクタ25は、ステートレジス
タ28からのステート値stにより機械命令、並びにア
ドレスレジスタ22、カウンタ23、及びステートレジ
スタ28の出力から適当なものを選択・連結して、マイ
クロ命令格納用PLA26のマイクロアドレスとして出
力する。
【0023】また、カウント制御回路24では分岐命令
における条件判断の結果に基づいた次アドレスの生成等
も行なう。更に、ステート制御回路28では割り込み受
け付け時の割り込み処理シーケンスの軌道制御等も行な
う。
【0024】実行取消有効フラグレジスタ1は、マイク
ロコードの所定ビットで設定/解除される。即ち、後述
のCIR命令或いはSIR命令が実行されたことによ
り”1”に設定され、CIR命令の次の命令の実行終了
時、或いは後述のRIR命令発行時に”0”に解除され
る。
【0025】また実行取消識別フラグレジスタ3は、機
械命令の内部処理を実行している時に、MPU10の内
部の処理状態によって設定/解除され、その値が”1”
の時に実行取消可能、”0”の時に実行取消不可能を意
味する。
【0026】実行取消有効フラグレジスタ1及び実行取
消識別フラグレジスタ3の値の組み合わせにより、MP
U10における割り込みに対する応答の仕方は図4に示
す如くなる。つまり、割り込み発生時に命令デコードユ
ニット12は、以下のように動作する。
【0027】実行取消有効フラグレジスタ1及び実行取
消識別フラグレジスタ3の内容が双方共”1”である時
に割り込みが発生すると、ステートは割り込み処理のス
テートに遷移し、アドレスセレクタ25において、ステ
ートレジスタ28出力及び割り込み種別情報を連結した
値をマイクロアドレスとしてマイクロ命令格納用PLA
26に供給し、割り込み処理のマイクロコードが出力さ
れる。
【0028】一方、実行取消有効フラグレジスタ1及び
実行取消識別フラグレジスタ3の内容が双方共”1”以
外の時には、割り込みが発生してもステートは遷移せ
ず、例えばアドレスレジスタ22の出力及びカウンタ2
3出力を連結した値をマイクロアドレスとしてマイクロ
命令格納用PLA26に供給し、通常の処理のマイクロ
コードが出力される。この場合、該機械命令に対応する
最終ステップのマイクロコードの処理が終了した後、ス
テートが割り込み処理のステートに遷移し、アドレスセ
レクタ25において、ステートレジスタ28出力及び割
り込み種別情報を連結した値をマイクロアドレスとして
マイクロ命令格納用PLA26に供給し、割り込み処理
のマイクロコードが出力されて割り込み処理が開始され
る。
【0029】本実施例のMPU10では、機械命令とし
て割り込み応答の仕方を指定する割り込み応答制御命令
(以下、CIR命令(Control Interrupt Response)と
いう)を備えている。CIR命令は、命令ワードの最小
の単位の命令長(1ワード)を持ち、実行時間はMPU
10の最小命令実行サイクルの1クロックである。
【0030】CIR命令は、CIR命令単体では意味を
持たない疑似命令であり、CIR命令に続く次の命令の
割り込み応答に対して影響を及ぼす。
【0031】CIR命令が実行されると実行取消有効フ
ラグレジスタ1がセットされ、次の命令の実行中に外部
割り込みが発生した時、もしその割り込みの発生タイミ
ングが実行を取り消してもよい期間(実行取消可能期間
であり、実行取消識別フラグレジスタ3の内容は”1”
である)内であれば、割り込みが発生した次のクロック
サイクルから割り込み処理を開始するようになる。例え
ば図5の場合には、実行時間の長いDIV命令の前にC
IR命令を実行し、DIV命令実行中の実行取消可能期
間に割り込みが発生した時、次のクロックサイクルから
直ちに割り込み処理を開始する。
【0032】また、CIR命令が実行されていても外部
割り込みが発生するタイミングが実行取消可能期間外
(実行取消識別フラグレジスタ3=”0”)であった場
合、発生した割り込みはすぐには受け付けられず、その
命令の実行が完了してから割り込み処理が開始されるこ
とになる。例えば図6の場合には、DIV命令実行中の
実行取消不可能期間に割り込みが発生した時、DIV命
令の実行が完了して実行取消可能期間(実行取消識別フ
ラグレジスタ3=”1”)に入るのを待って、割り込み
処理を開始する。
【0033】更に、CIR命令が実行されない場合は、
従来技術のMPUと同様に外部割り込みの処理は、割り
込みが発生した時に実行している命令の内部処理の実行
が終了するまで開始されない(図7参照)。
【0034】図8は、各種命令に対する実行取消可能期
間の定義を示す。
【0035】(1) CIR命令 内部のステートを処理取消型の割り込み対応を行なうよ
うに設定する最小クロックの命令であり、全期間(a) に
渡って実行取消不可能な命令である。
【0036】(2) ADD命令(ADD R1, R2) 汎用レジスタR1と汎用レジスタR2の内容の加算を行
ないその結果を汎用レジスタR1に格納する命令であ
る。MPU10は、内部のALU/シフタ15を使用し
て汎用レジスタR1と汎用レジスタR2の内容を加算し
て、その結果を汎用レジスタR1に格納し、その演算結
果に伴うフラグレジスタをプロセッサステータスワード
PSWに書き込む。また、この期間にプログラムカウン
タPCのインクリメントをも行なう。この命令では、最
初から結果の書き込みをレジスタ及びプロセッサステー
タスワードPSWに対して行なっており、割り込みが発
生しても実行の取消ができず、全実行期間(b) に渡って
実行取消不可能な命令である。
【0037】(3) ADD命令(ADD (R1+1234H), (R2+10
00H)) メモリ−メモリ間の加算を行なう命令である。先ず期間
(c) で、汎用レジスタR1とディスプレースメント12
34H を足し合わせてデスティネーションオペランドの
アドレス計算を行ない、このアドレスからメモリデータ
を読み込む。次に期間(d) で、汎用レジスタR2とディ
スプレースメント1000H を足し合わせてソースオペ
ランドのアドレス計算を行ない、このアドレスからメモ
リデータを読み込む。そして最後に期間(e) で、読み出
したソースオペランドとデスティネーションオペランド
の加算を行ない、演算結果をデスティネーションのアド
レスに書き込み、プロセッサステータスワードPSWの
フラグレジスタを更新する。またこの時、プログラムカ
ウンタPCのインクリメントも併せて行なう。期間(c)
及び(d) では、割り込みが発生して命令実行の処理を取
り消しても、割り込みから復帰した後に、割り込みが発
生した時点でのプログラムカウンタPCの指し示す命令
から実行をやり直せば、問題なくプログラムの継続が可
能であり、実行取消可能期間である。これに反して期間
(e) では、演算結果の書き込み、プロセッサステータス
ワードPSWのフラグレジスタの更新、並びにプログラ
ムカウンタPCのインクリメントを行なっており、実行
を取り消すとプログラムの継続ができないので、実行取
消不可能期間である。
【0038】(4) DIV命令(DIV R1, R2) 汎用レジスタR1の内容を汎用レジスタR2の内容で符
号なし除算を行ない、商を汎用レジスタR1の上位半分
に、余りを汎用レジスタR1の下位半分に格納し、その
演算結果に伴うフラグレジスタをプロセッサステータス
ワードPSWに書き込む命令である。除算は被除数から
除数の引き算をシフト操作で桁をずらしながら繰り返し
行なって実行されるが、16ビット÷8ビットの除算で
はこの繰り返しが最低8回、32ビット÷16ビットの
除算ならこの繰り返しが最低16回必要となり、実行ク
ロック数の大きい命令である。期間(f) では、汎用レジ
スタR1及びR2をALU/シフタ15に設定し、除算
のシフト−減算の繰り返しを行なう。期間(g) では、演
算結果を汎用レジスタR1に格納し、その演算結果に伴
うフラグレジスタをプロセッサステータスワードPSW
に書き込む。また、この期間にプログラムカウンタPC
のインクリメントをも行なう。期間(f) では、割り込み
発生時のプログラムカウンタPCの指し示す命令から再
実行すれば、プログラムの継続が可能な実行取消可能期
間である。期間(g) は実行取消不可能期間であり、この
期間で発生した割り込みについては、実行中の命令処理
が全て終了してから割り込み処理が行なわれる。
【0039】(5) DIV命令(DIV R2, (--R3)) ソースアドレス計算にプリデクリメントアドレッシング
モード(詳細は、マイクロプロセッサ68000のマニ
ュアル等を参照)を用いた除算命令である。先ず期間
(h) では、汎用レジスタR3から演算サイズ(この場合
ワードデータであるので”2”)を引いたアドレスをソ
ースオペランドのアドレスとしてソースオペランドデー
タがメモリから読み出される。期間(i) では、読み出し
たソースオペランドデータと汎用レジスタR2の内容を
用いて、シフト−減算を繰り返し行なって除算を実行す
る。期間(j) では、演算結果を汎用レジスタR2に書き
込み、プロセッサステータスワードPSWのフラグレジ
スタの更新を行ない、更に汎用レジスタR3のデクリメ
ントした値を汎用レジスタR3に書き戻し、尚且つプロ
グラムカウンタPCのインクリメントを行なう。従っ
て、期間(h) 及び(i) は実行取消可能期間であり、期間
(j) は実行取消不可能期間である。
【0040】このように、長い実行クロックを要する命
令では、結果の書き込み、プロセッサステータスワード
PSWのフラグレジスタの更新、プログラムカウンタP
Cのインクリメント等の処理を終えた後でその命令実行
を取り消すと、プログラムの継続に不都合を及ぼすこと
となるので、これらの処理は命令の内部処理の終わりの
部分で行なうこととし、その期間を実行取消不可能期間
として定義する。
【0041】また本実施例のMPU10では、割り込み
応答の仕方を指定する機械命令として、実行取消有効フ
ラグレジスタ1を”1”に設定する割り込み応答制御指
定命令(以下、SIR命令(Set control Interrupt Re
sponse)という)と、実行取消有効フラグレジスタ1
を”0”に解除する割り込み応答制御解除命令(以下、
RIR命令(Reset control Interrupt Response)とい
う)とを備えている。
【0042】SIR命令及びRIR命令は、命令ワード
の最小の単位の命令長(1ワード)を持ち、実行時間は
MPU10の最小命令実行サイクルの1クロックであ
る。また、SIR命令及びRIR命令は、命令単体では
意味を持たない疑似命令であり、SIR命令及びRIR
命令に続く次の命令の割り込み応答に対して影響を及ぼ
す。つまり、CIR命令有効フラグレジスタ1の値に従
って、MPU10は割り込みに対する応答の仕方を変え
る。但し、CIR命令の場合には、CIR命令の次の命
令についてのみ割り込み応答の仕方の指定が有効であっ
たのに対して、SIR命令及びRIR命令の場合には、
SIR命令で設定されてからRIR命令で解除されるま
での間の全ての命令に対して、割り込み応答の仕方の指
定が有効となる。
【0043】また、CIR命令では、ユーザが高機能命
令を使用し、且つ割り込み応答の高速化が必要な時にだ
け、処理時間の長い高機能命令の前にCIR命令を付加
することにより、割り込み処理の応答をプログラムで簡
単に設定することができる。一方、SIR命令及びRI
R命令では、プログラムの開始時に一度だけSIR命令
を発行して、CIR命令有効フラグレジスタ1の値を”
1”に設定することにより、割り込み処理応答の高速な
システムを構成することが可能となる。
【0044】以上説明したように、本実施例によれば、
MPU10、特に除算命令、乗算命令、ビットフィール
ド操作命令等の長い実行クロックを要する機械命令を持
つMPU10の割り込み応答時間を高速化することが可
能となる。
【0045】本実施例を使用した場合のMPUの最悪の
割り込み応答時間は、 (最長の実行取消不可能期間のクロック数)+(MPU
割り込み処理時間) となる。これに対して、本実施例を使用しない場合のM
PUの最悪の割り込み応答時間は、 (最長の命令の実行クロック数)+(MPU割り込み処
理時間) となる。
【0046】加算命令、減算命令、またはロード命令等
の単純な命令では、 (実行取消不可能期間のクロック数)(命令の実行クロック数) 約1〜5クロック 約1〜10クロック 程度であり、割り込み応答の高速化の度合いは比較的小
さいが、除算命令、乗算命令、ビットフィールド操作命
令、またはキュー操作命令等の高機能な命令では、 (実行取消不可能期間のクロック数)<<(命令の実行クロック数) 約1〜5クロック 約10〜50クロック であり、本実施例のMPUを採用することにより、数十
クロックの割り込み応答時間の高速化が可能になる。
【0047】また、ユーザが命令を使用してソフトウェ
ア的にMPUの割り込み応答時間の設定が可能となるの
で、多様なシステムに対応可能なMPUを提供すること
ができる。例えば、以下のようなシステムに対応でき
る。
【0048】(1) 割り込み応答の高速性が必須の組み込
み制御機器(ロボット等) CIR命令等により、一定クロック数以上の実行時間を
要する命令を取消可能とすることにより、割り込み応答
の最悪時間を短縮する。尚、組み込み制御機器において
は、割り込み応答時間の最悪値がシステムに大きく影響
する。
【0049】(2) 平均的な処理性能が重要なOA機器
(パソコン、ワークステーション等) パソコン、ワークステーション等では、割り込み応答時
間よりも一定時間に如何に多くの命令を処理できるかが
重要である。従って、割り込み発生に際して、実行中の
処理を取り消し、割り込みハンドラプログラムの終了
後、取り消した処理を再びやり直すのでは処理性能の点
で不利となる。この場合には、CIR命令等により実行
中の命令の取り消しを可能とせず、減算実行中の命令の
処理が終了してから、割り込み処理を開始するように設
定することになる。
【0050】このように、多様な用途に対して幅広く対
応できるMPUを提供することができ、MPUの付加価
値が高くなる。
【0051】
【発明の効果】以上のように本発明によれば、外部割り
込みに対して、当該データ処理装置内のユーザに開放さ
れている汎用レジスタ及び制御レジスタ群の内容が実行
中の機械命令によって変更されておらず、且つ実行中の
機械命令によって外部メモリの値が変更されていない時
に、現在実行中の機械命令の実行を取り消すことが可能
である旨を示す実行取消識別フラグレジスタを備えて構
成し、制御手段により、外部割り込み発生時に実行取消
識別フラグレジスタが可能である旨を示している場合に
は、現在実行中の機械命令をすぐに取り消して割り込み
処理を開始し、実行取消識別フラグレジスタが不可能で
ある旨を示している場合には、現在実行中の機械命令の
処理が終了した後に割り込み処理を開始するよう制御す
ることとしたので、割り込み発生時に長い実行クロック
を要する機械命令を実行していた場合にも、高速な割り
込み応答時間で処理可能なデータ処理装置を提供するこ
とができる。
【0052】また、本発明によれば、第1の機械命令に
より設定され、第1の機械命令の次の機械命令の実行終
了後に解除され、並びにまたは、第2の機械命令により
設定され、第3の機械命令により解除される実行取消有
効フラグレジスタと、前記実行取消識別フラグレジスタ
とを備えて構成し、制御手段により、外部割り込み発生
時にCIR命令有効フラグレジスタが設定されており、
且つ実行取消識別フラグレジスタが可能である旨を示し
ている場合には、現在実行中の機械命令をすぐに取り消
して割り込み処理を開始し、CIR命令有効フラグレジ
スタ及び実行取消識別フラグレジスタの内容が上記以外
の場合には、現在実行中の機械命令の処理が終了した後
に割り込み処理を開始するよう制御することとしたの
で、割り込み応答を高速化することができると共に、ユ
ーザが第1、第2、及び第3の機械命令を使用してソフ
トウェア的に割り込み応答時間の設定できるので、例え
ば、割り込み応答時間の高速性が優先されるシステムで
は、長い実行クロックを要する機械命令に対してCIR
命令有効フラグレジスタを設定し、また平均的な処理性
能が重要であるシステムでは、全ての機械命令に対して
CIR命令有効フラグレジスタを解除しておくことによ
り、多様なシステムに幅広く対応可能なデータ処理装置
を提供することができる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の一実施例に係るデータ処理装置の構成
図である。
【図3】実施例の命令デコードユニットの詳細構成図で
ある。
【図4】CIR命令有効フラグレジスタ及び実行取消識
別フラグレジスタの値の組み合わせに対する割り込み応
答の仕方を説明する図である。
【図5】実行取消可能期間に割り込みが発生した場合の
割り込み応答を説明する図である。
【図6】実行取消不可能期間に割り込みが発生した場合
の割り込み応答を説明する図である。
【図7】CIR命令を使用しない場合の割り込み応答を
説明する図である。
【図8】各種命令に対する実行取消可能期間及び実行取
消不可能期間を説明する図である。
【図9】従来のデータ処理装置における割り込み応答を
説明する図である。
【符号の説明】
1 CIR命令有効フラグレジスタ 3 実行取消識別フラグレジスタ 5 制御手段 10 マイクロプロセッサ(MPU) 11 バスインタフェースユニット 12 命令デコードユニット 13 マイクロデコーダ 14 レジスタファイル R1〜Rn汎用レジスタ 15 ALU/シフタ 16 制御レジスタ群 PSW プロセッサステータスワード PC プログラムカウンタ D(15:0) データバス A(23:0) アドレスバス CON 制御信号群 INT 割り込み信号 21 アドレス情報生成回路 22 アドレスレジスタ 23 カウンタ 24 カウント制御回路 25 アドレスセレクタ 26 マイクロ命令格納用PLA 27 マイクロ命令レジスタ 28 ステートレジスタ 29 ステート制御回路 st ステート値 sc ステート制御情報 ac アドレス情報 cc カウント制御情報

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 外部割り込みに対して現在実行中の機械
    命令の実行を取り消すことが可能か否かを示す実行取消
    識別フラグレジスタと、 外部割り込み発生時に、前記実行取消識別フラグレジス
    タが現在実行中の機械命令実行の取り消しが可能である
    旨を示している場合には、現在実行中の機械命令を取り
    消して割り込み処理を開始するよう制御する制御手段と
    を有することを特徴とするデータ処理装置。
  2. 【請求項2】 第1の機械命令により設定され、前記第
    1の機械命令の次の機械命令の実行終了後に解除される
    実行取消有効フラグレジスタと、 外部割り込みに対して現在実行中の機械命令の実行を取
    り消すことが可能か否かを示す実行取消識別フラグレジ
    スタと、 外部割り込み発生時に、前記実行取消有効フラグレジス
    タが設定されており、且つ前記実行取消識別フラグレジ
    スタが現在実行中の機械命令実行の取り消しが可能であ
    る旨を示している場合には、現在実行中の機械命令を取
    り消して割り込み処理を開始するよう制御する制御手段
    とを有することを特徴とするデータ処理装置。
  3. 【請求項3】 前記実行取消有効フラグレジスタは、第
    2の機械命令により設定され、第3の機械命令により解
    除されることを特徴とする請求項2に記載のデータ処理
    装置。
  4. 【請求項4】 前記実行取消識別フラグレジスタは、当
    該データ処理装置内のユーザに開放されている汎用レジ
    スタ及び制御レジスタ群の内容が実行中の機械命令によ
    って変更されておらず、且つ実行中の機械命令によって
    外部メモリの値が変更されていない時に、現在実行中の
    機械命令の実行を取り消すことが可能である旨を示すこ
    とを特徴とする請求項1、2、または3に記載のデータ
    処理装置。
JP28172792A 1992-10-20 1992-10-20 データ処理装置 Pending JPH06131198A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28172792A JPH06131198A (ja) 1992-10-20 1992-10-20 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28172792A JPH06131198A (ja) 1992-10-20 1992-10-20 データ処理装置

Publications (1)

Publication Number Publication Date
JPH06131198A true JPH06131198A (ja) 1994-05-13

Family

ID=17643145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28172792A Pending JPH06131198A (ja) 1992-10-20 1992-10-20 データ処理装置

Country Status (1)

Country Link
JP (1) JPH06131198A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001022593A (ja) * 1999-06-17 2001-01-26 Motorola Inc 割り込み可能なマルチサイクル命令を処理する方法および装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001022593A (ja) * 1999-06-17 2001-01-26 Motorola Inc 割り込み可能なマルチサイクル命令を処理する方法および装置
JP4628521B2 (ja) * 1999-06-17 2011-02-09 フリースケール セミコンダクター インコーポレイテッド 割り込み可能なマルチサイクル命令を処理する方法および装置

Similar Documents

Publication Publication Date Title
JP3547482B2 (ja) 情報処理装置
US5404552A (en) Pipeline risc processing unit with improved efficiency when handling data dependency
US5349667A (en) Interrupt control system for microprocessor for handling a plurality of maskable interrupt requests
US5381531A (en) Data processor for selective simultaneous execution of a delay slot instruction and a second subsequent instruction the pair following a conditional branch instruction
US5905881A (en) Delayed state writes for an instruction processor
JP2507638B2 (ja) デ―タ処理装置
KR20040016829A (ko) 파이프라인식 프로세서에서의 예외 취급 방법, 장치 및시스템
JP3242508B2 (ja) マイクロコンピュータ
JPH0810428B2 (ja) データ処理装置
JP3578883B2 (ja) データ処理装置
JP3510729B2 (ja) 命令実行方法および命令実行装置
US5410660A (en) System and method for executing branch on bit set/clear instructions using microprogramming flow
JPH07120284B2 (ja) データ処理装置
US7269720B2 (en) Dynamically controlling execution of operations within a multi-operation instruction
JP3556252B2 (ja) オフセット合計を計算するデータ処理システムとその方法
JPH06266556A (ja) データ処理装置
KR100206350B1 (ko) 중앙처리장치
EP0573071A2 (en) A microprocessor
JPH06131198A (ja) データ処理装置
US5784606A (en) Method and system in a superscalar data processing system for the efficient handling of exceptions
JPH10124312A (ja) 中央処理装置
JPS6161416B2 (ja)
EP0448058A2 (en) Microprocessor capable of transferring data without intermediary of execution unit
EP1235139B1 (en) System and method for supporting precise exceptions in a data processor having a clustered architecture
JP2522048B2 (ja) マイクロプロセッサ及びそれを使用したデ―タ処理装置