JPH08286930A - データ処理システムにおいて割込待ち時間を選択的に制御するための方法および装置 - Google Patents

データ処理システムにおいて割込待ち時間を選択的に制御するための方法および装置

Info

Publication number
JPH08286930A
JPH08286930A JP8088994A JP8899496A JPH08286930A JP H08286930 A JPH08286930 A JP H08286930A JP 8088994 A JP8088994 A JP 8088994A JP 8899496 A JP8899496 A JP 8899496A JP H08286930 A JPH08286930 A JP H08286930A
Authority
JP
Japan
Prior art keywords
instruction
interrupt
execution
processing system
data processing
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
JP8088994A
Other languages
English (en)
Other versions
JP3787385B2 (ja
Inventor
William C Moyer
ウィリアム・シー・モイヤー
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.)
Motorola Solutions Inc
Original Assignee
Motorola 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 Motorola Inc filed Critical Motorola Inc
Publication of JPH08286930A publication Critical patent/JPH08286930A/ja
Application granted granted Critical
Publication of JP3787385B2 publication Critical patent/JP3787385B2/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/46Multiprogramming arrangements
    • 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
    • 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

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)
  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 データ処理システム10内で割込待ち時間を
選択的に制御する方法および装置を提供する。 【解決手段】 1つの実施例においては、本発明は、割
込制御レジスタ・ビット・フィールド50を用いて、あ
る命令の実行が終了する前に、その命令の実行が割込要
求によって中断されるか否かを判断する。本発明のある
実施例においては、第1組の命令は実行途中で中断さ
れ、第2組の命令は常に実行が完了することがある。ど
の命令が第1組の命令に属するかは、(たとえばレジス
タ・ビット・フィールド52により)ユーザによるプロ
グラミングが可能であるか、あるいは固定される。デー
タ処理システム10によっては、実行時間が最も長い命
令を第1組の命令の一部と定義して、割込待ち時間を短
縮すると便利である。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一般にデータ処理シス
テムに関し、さらに詳しくは、データ処理システムにお
いて割込待ち時間を選択的に制御するための方法および
装置に関する。
【0002】
【従来の技術および発明が解決しようとする課題】割込
は、データ処理システムにおいて、特に多くのリアルタ
イム制御用途において現在よく用いられる。たとえば、
自動車のエンジンを制御するデータ処理システムは、ア
ンチロック・ブレーキング・システムにより自動車が横
すべりし始めたことが検出されると、アンチロック・ブ
レーキング・システムから割込要求を受信する。データ
処理システムが割込に応答するためにかかる最大時間量
を「最大割込待ち時間」と呼ぶ。多くのデータ処理シス
テムにおいては、データ処理システムの通常の動作性能
を低下させずに可能な限り最短の割込待ち時間を有する
ことが望ましい。
【0003】多くのリアルタイム制御用途においては、
最大割込待ち時間は非常に重要であり、ある用途のため
にどのデータ処理システムを選定するかを決定すること
さえある。上記の例では、データ処理システムがアンチ
ロック・ブレーキング・システムからの割込に対して充
分迅速に応答することができなければ、割込待ち時間の
より短い別のデータ処理システムが選定され使用される
ことになる。そのため、データ処理技術においては、デ
ータ処理システムの正常な動作性能を大幅に低下させる
ことなく最大割込待ち時間を短縮することが非常に重要
である。
【0004】
【実施例】データ処理システムにおいて割込待ち時間を
最小限に抑えることは、多くのリアルタイム制御用途に
とってきわめて重要である。データ処理システムは、1
つ以上の命令(すなわち長命令)を有することが多く、
この長命令は、他のより短い命令(すなわち短命令)を
実行するために要する時間に比べて、完全に実行するに
はかなりの量の時間が必要になる。待機中の割込要求に
応答する前に、長命令の実行を完了する時間が必要とさ
れるために、データ処理システムの割込待ち時間が長過
ぎることになる。本発明は、長命令の実行を中断して、
割込要求を処理して、割込待ち時間を短縮することを可
能にする。
【0005】本発明の1つの実施例においては、データ
処理システムは、各長命令の実行中のいくつかの時点で
割込要求が待機していないかチェックする。長命令の実
行が終了する前に割込要求が受け付けられると、データ
処理システムは長命令の実行を停止して、データ処理シ
ステムが長命令の実行を開始する前の状態にデータ処理
システムを戻す。その後で割込が処理される。割込の処
理が完了すると、同じ長命令の実行が再び開始される。
【0006】「バス」という用語は、データ,アドレ
ス,制御または状況など1つ以上の種々の情報を転送す
るために用いられる複数の信号または導体を指すために
用いられる。「アサート」,「ネゲート」という用語
は、それぞれ、信号,状況ビットまたは同様の装置を論
理的に真の状態にする場合と、論理的に偽の状態にする
場合に用いられる。論理的に真の状態が論理レベル1で
ある場合は、論理的に偽の状態は論理レベル0である。
また、論理的に真の状態が論理レベル0である場合は、
論理的に偽の状態は論理レベル1である。
【0007】図面の説明 図1は、中央処理装置(CPU)回路構成12,メモリ
回路構成14,タイマ回路構成16,シリアル回路構成
18,その他の回路構成20およびシステム統合回路構
成22を有するデータ処理システム10を示し、これら
はすべてバス24を介して互いに双方向に結合される。
【0008】CPU12は、1つ以上の集積回路端子3
0を介してデータ処理システム10の外部に結合される
ことがある。メモリ14は、1つ以上の集積回路端子3
2を介してデータ処理システム10の外部に結合される
ことがある。タイマ16は、1つ以上の集積回路端子3
4を介してデータ処理システム10の外部に結合される
ことがある。シリアル回路構成18、1つ以上の集積回
路端子36を介してデータ処理システム10の外部に結
合されることがある。また、その他の回路構成20は、
1つ以上の集積回路端子38を介してデータ処理システ
ム10の外部に結合されることがある。システム統合回
路構成22は、バス26を介してデータ処理システム1
0の外部と双方向に結合される。システム統合回路22
は、割込回路構成28を具備する。割込回路構成28
は、集積回路端子40を介してデータ処理システム10
の外部に結合されることがある。
【0009】本発明のある実施例においては、データ処
理システム10は、単独の集積回路上に形成されたデー
タ・プロセッサである。実施例によっては、データ処理
システム10は単独のチップ・マイクロコントローラで
ある。別の実施例では、データ処理システム10は、任
意の種類の電気回路構成を用いて組み込むことができ
る。メモリ14は、どのような種類のメモリであっても
よい。データ処理システム10の代替の実施例に含まれ
る回路構成のブロックは、もっと多いことも、少ないこ
とも、あるいは異なる種類のものである場合もある。た
とえば、データ処理システム10の代替の実施例は、メ
モリ14,タイマ16,シリアル18またはその他の回
路構成20をもたない場合もある。本発明の実施例に
は、CPU12の一部として割込回路構成28を具備す
るものや、システム統合回路構成22を具備するもの、
具備しないものがある。
【0010】集積回路端子30,32,34,36,3
8,40は、電気信号をデータ処理システム10との間
にやり取りすることができる任意の種類の装置である。
たとえば、集積回路端子30,32,34,36,3
8,40は、集積回路ピン,ハンダ・バンプ,ワイヤ導
体などとすることができる。また、バス26は、集積回
路端子を介して、データ処理システム10との間に電気
信号を伝える。
【0011】図2は、本発明の1つの実施例による図1
の割込回路構成28を示す。本発明の1つの実施例にお
いては、割込回路構成28はレジスタ回路構成64を備
え、これはバス24と双方向に結合されるので、レジス
タ64にはCPU12(図1参照)によって読み取りお
よび書き込みができる。割込回路構成28にはまた、割
込制御回路構成60も含まれ、これは割込に関連するバ
ス信号を受信および/または供給するためにバス24と
結合される。割込回路構成28には、集積回路端子40
を介してデータ処理システム10の外部から割込要求を
受信する割込受信回路構成62も含まれる。
【0012】本発明の1つの実施例においては、割込受
信回路構成62は、バス24と割込制御回路構成60と
に結合され、着信割込要求に関する情報を提供する。本
発明の代替の実施例においては、割込受信回路構成62
は、バス24には結合されず、代わりに、割込受信回路
構成62が割込要求を受信して、1つ以上の導体68を
介して割込要求情報を割込制御回路構成60に送る。次
に割込制御回路構成60は、バス24上の割込関連信号
をアサートするか否か、さらに、いつアサートするかを
決定する。レジスタ64は、導体66を介して、制御お
よび/または状況情報を割込制御回路構成60に送る。
【0013】1つの実施例においては、レジスタ64
は、いくつかのレジスタ・ビット・フィールド50,5
2,54,56,58を備え、これらはそれぞれ制御値
を格納する格納回路を具備する。図2に示されるレジス
タ64には、制御に用いられる5つのレジスタ・フィー
ルド(50,52,54,56,58)が含まれるが、
本発明の代替の実施例では、より多くの、またはより少
ない、または異なるレジスタ・ビット・フィールドを用
いることもある。さらに、図2に示される5つのレジス
タ・ビット・フィールド50,52,54,56,58
は、制御のために用いられるが、レジスタ64の代替の
実施例には状況に用いられるもの、あるいは状況と制御
の両方に用いられるレジスタ・ビット・フィールドが含
まれることもある。さらに、本発明の代替の実施例は、
1つ以上の別々のレジスタ内にビット・フィールド5
0,52,54,56,58を配置することもある。ま
た、本発明の異なる実施例では、図2に示されるレジス
タ・ビット・フィールド50,52,54,56,58
のそれぞれに関して、任意の数のビットを備えることも
ある。本発明のある実施例では、1つ以上のレジスタ・
ビット・フィールドの制御機能を、より少数のレジスタ
・ビット・フィールドに合成および符号化することもで
きる。
【0014】図2に示される本発明の実施例において
は、レジスタ64は、割込制御(IC:interrupt cont
rol )レジスタ・ビット・フィールド50,割込可能命
令(II:interruptable instruction )レジスタ・ビ
ット・フィールド52,割込イネーブル・レジスタ・ビ
ット・フィールド56,割込マスク(IM:interruptm
ask)レジスタ・ビット・フィールド58およびその他
の状況/制御ビット54を備える。
【0015】図3は、本発明の1つの実施例による図1
の中央処理装置(CPU)12の一部分を示す。図3に
示されるCPU12の部分には、制御回路構成70,1
つ以上の命令ラッチ74および1つ以上のレジスタ76
が含まれ、これらはそれぞれ導体80を介してバス24
と双方向に結合される。命令ラッチ74は、導体86を
介して命令解読回路構成72に結合される。命令解読回
路構成72は、導体88を介して制御回路構成70に結
合される。演算論理装置(ALU)78は、導体90を
介して制御回路構成70と双方向に結合される。レジス
タ76は、導体92を介して制御回路構成70と双方向
に結合される。また、レジスタ76は、導体94を介し
てALU78と双方向に結合される。本発明のある実施
例では、CPU12を1つ以上の集積回路端子30を介
してデータ処理システム10の外部に結合することもあ
る。
【0016】図4は、本発明の1つの実施例による図3
の制御回路構成70の一部分を示す。制御回路構成70
は、プログラム可能割込制御情報のための格納回路であ
る回路102を備え、命令を実行するシーケンサである
回路100を備え、命令境界検出回路である回路104
を備える。シーケンサ100は、1つ以上の導体116
を介してバス24と双方向に結合される。格納回路10
2は、1つ以上の導体114を介してバス24と双方向
に結合される。格納回路102は、1つ以上の導体11
8を介してシーケンサ100と双方向に結合される。命
令境界検出回路104は、1つ以上の導体120を介し
てシーケンサ100と双方向に結合される。命令境界検
出回路104とシーケンサ100は、両方とも1つ以上
の導体88を介して命令解読回路構成72に結合され
る。
【0017】命令境界検出回路104は、1つ以上の導
体106を介してレジスタ76からの情報を受信するよ
う結合され、シーケンサ100は、1つ以上の導体10
8を介してレジスタ76と双方向に結合される。導体9
2(図3参照)は導体106,108(図4参照)を含
む。命令境界検出回路104は、1つ以上の導体110
を介してALU78から情報を受信するよう結合され、
シーケンサ100は、1つ以上の導体112を介してA
LU78と双方向に結合される。導体90(図3参照)
は、導体110,112(図4参照)を含む。
【0018】シーケンサ100は、種々の回路構成、た
とえば状態装置,ランダム論理,プログラム可能論理ア
レイなどの回路構成を用いて実現することができる。シ
ーケンサ100は、レジスタ76およびALU78に制
御信号を提供して、命令ラッチ74により受信された命
令を実行する機能を果たす。データ処理システム10に
よっては、命令ラッチ74が1つしかないものや、デー
タ処理システム10がパイプライン化されたり、複数の
命令ラッチ74を有するものがある。データ処理システ
ム10がパイプライン化されている場合は、第1命令の
実行は次の命令の解読と重複することがある。
【0019】図5および図6は、本発明の1つの実施例
によりデータ処理システム内で割込待ち時間を選択的に
制御する方法を流れ図に示す。図5および図6を参照し
て、偏平な楕円200〜201は、流れ図の始点と終点
を表す。円205〜208は、流れ図内の特定の点を表
す。円210〜213は、流れ図の中の特定点への移行
を表す。ダイヤ形215〜220は、流れ図中の意志決
定点を表す。矩形225〜235は、データ処理システ
ム内で割込待ち時間を選択的に制御するために実行され
るステップを表す。
【0020】好適な実施例の動作 本発明の動作を以下に説明する。データ処理システム内
で割込待ち時間を最小限に抑えることは、多くのリアル
タイム制御用途できわめて重要なことである。データ処
理システムは、1つ以上の命令(すなわち長命令)を有
することが多く、これらは他のより短い命令(すなわち
短命令)と比べて完全に実行するには、かなりの量の時
間を必要とする。待機中の割込要求に応答する前に、長
命令の実行を終了する時間が必要とされるために、デー
タ処理システムの割込待ち時間が長過ぎることになる。
本発明は、長命令の実行を中断して、割込要求を処理し
て割込待ち時間を短縮することを可能にする。
【0021】1つの実施例においては、本発明は割込制
御レジスタ・ビット・フィールド50(図2参照)を用
いて、ある命令の実行が完了する前にその命令の実行を
割込要求により中断するか否かを決定する。本発明のあ
る実施例では、第1組の命令が実行途中で中断され、第
2組の命令は常に実行を完了する場合がある。どの命令
が第1組の命令に属するかは、たとえば図2のレジスタ
・ビット・フィールド52によってユーザによるプログ
ラミングが可能であるか、あるいは固定される。データ
処理システム(10)によっては、最も長い実行時間を
有する命令を第1組の命令、すなわち割込可能な命令の
一部と定義して、割込待ち時間を短縮すると便利であ
る。
【0022】本発明の1つの実施例においては、データ
処理システムは、各長命令の実行中のいくつかの時点で
割込要求が待機中であるか否かをチェックする。長命令
の実行が終了する前に割込要求が受け付けられると、デ
ータ処理システムは長命令の実行を停止して、データ処
理システムを長命令の実行を開始する前の状態に戻す。
それから割込が処理される。割込の処理が終了すると、
同じ長命令の実行が再び開始される。
【0023】図3と図5のステップ225とを参照し
て、命令ラッチ74はバス24を介して第1命令を受信
する。第1命令は、データ処理システム10が実行可能
な任意の命令とすることができる。第1命令は、一次プ
ログラム内のものでも、サブルーチン内のものでも、割
込処理ルーチン内のものでも、他の任意の同様のコンピ
ュータ・プログラム内のものでもよい。バス24は、内
部からデータ処理システム10に対して(たとえば図1
のメモリ14から)命令を送ることも、あるいは、バス
26およびシステム統合回路構成22を介して外部から
データ処理システム10に送ることもできる。
【0024】図3と図5のステップ226とを参照し
て、命令ラッチ74が第1命令を命令解読回路構成72
に送る。命令解読回路構成72は、第1命令を解読し、
その結果の信号を制御回路構成70に、導体88を介し
て送る。次に、制御回路構成70は、制御信号をレジス
タ76およびALU78に送ることによって第1命令の
実行を開始し、第1命令の演算を実行する。たとえば、
第1命令は、加算命令または乗算命令であり、制御回路
構成70は適切な信号をレジスタ76およびALU78
に送り、必要な演算を行う。
【0025】図2を参照して、割込受信回路構成62
は、集積回路端子40を監視して、データ処理システム
10の外部の装置(図示せず)が割込を要求しているか
否かを判断することができる。また、割込受信回路構成
62は、バス24を監視して、データ処理システム10
内部のいずれかの回路構成(たとえば図1の16,18
または20)が割込を要求しているか否かを判断するこ
ともある。
【0026】次に、割込受信回路構成62は、割込要求
が行われたか否かに関する情報を割込制御回路構成60
に送る。図5の決定ダイヤ形215を参照して、割込制
御回路構成は、レジスタ64から導体66を介して割込
イネーブル制御ビット56を受信し、割込がイネーブル
であるか否かを判断する。ステップ228を参照して、
割込がイネーブルでない場合は、CPU12(図3参
照)は、割込要求を受信せず、第1命令の実行が割込な
しに通常の方法で終了する。ステップ235を参照し
て、命令の実行が、次の命令の取り出し,受信,解読お
よび実行と続行される。
【0027】図5の決定ダイヤ形216を参照して、割
込がイネーブルの場合は、割込制御回路構成60は、割
込受信回路構成62からの入力信号68をチェックし
て、割込要求が受信されて待機中であるか否かを判断す
る。割込要求が受信されていない場合は、CPU12
(図3参照)は割込要求を受信せず、第1命令の実行は
割込なしに通常の方法で終了する(図5のステップ22
8,図6のステップ235参照)。
【0028】図5の決定ダイヤ形217を参照して、割
込が受信されて待機中の場合は、割込制御回路構成60
は、レジスタ64から導体66を介して割込マスク制御
ビット58を受信し、受信された割込がマスクされてい
るか否かを判断する。割込のマスキングは、データ処理
技術では周知のものである。たとえば受信された割込
が、割込マスク制御ビット58により決定された閾値優
先度より低い優先レベルを持つために割込がマスクされ
ている場合、CPU12(図3参照)は割込要求を受信
せず、第1命令の実行が割込なしに通常の方法で終了す
る(図5のステップ228,図6のステップ235参
照)。しかし、図5のステップ229を参照して、たと
えば受信された割込要求が、割込マスク制御ビット58
によって決定された閾値優先度より高い優先レベルを持
つために、受信された割込要求がマスクされていない場
合は、この割込要求が受け付けられ、CPU12(図3
参照)は、割込制御回路構成60からバス24を介して
割込要求を受信する。
【0029】図6の決定ダイヤ形218を参照して、割
込要求が受け付けられると、割込回路構成28は、CP
U12内の制御回路構成70(図3参照)に対して、バ
ス24および導体80を介して割込要求を送る。また、
本発明の1つの実施例においては、割込回路構成28
は、割込制御ビット50および割込可能命令制御ビット
52をも、レジスタ64から、バス24および導体80
を介して、CPU12内の制御回路構成70(図3参
照)に送る。本発明の代替の実施例においては、割込制
御ビット50および割込可能命令制御ビット52は、シ
ステム統合回路構成22内のレジスタ64ではなく、格
納回路102(図4参照)またはCPU12内のレジス
タ76(図3参照)に位置することがある。
【0030】決定ダイヤ形218を参照して、制御回路
構成70は、第1命令が割込可能命令であるか否かを判
定する。本発明の1つの実施例においては、N個の割込
可能命令の組に含まれる1つ以上の命令が、制御回路構
成70内の回路構成によってあらかじめ決定され固定さ
れる。たとえば、本発明の1つの実施例においては、N
個の割込可能命令の組は、乗算命令,複数データのメモ
リからのロード命令および複数データのメモリへの格納
命令を含む。
【0031】本発明のある実施例においては、N個の割
込可能命令の組には、実行するために最大数のALUサ
イクルを必要とするもの、あるいは最大全体時間を必要
とするものが含まれることもある。本発明のある実施例
においては、すべての命令が割込可能であるので、どの
命令が割込可能であるかを特定するために割込可能命令
制御ビット52(図2参照)が必要でない場合もある。
本発明の他の実施例においては、第1組のN個の命令が
割込可能であり、第2組のK個の命令が割込可能でない
こともある。本発明のさらに別の実施例においては、割
込可能命令制御ビット52を、割込可能でない第2組の
K個の命令を特定するために用いることもある。割込可
能命令制御ビット52をこのように用いて、どの命令が
割込可能であり、どの命令が割込可能でないかに関する
情報を制御回路構成70に送る命令選択値を格納するこ
ともできる。
【0032】再び決定ダイヤ形218を参照して、制御
回路構成70は、第1命令が割込可能命令であるか否か
を判断する。第1命令が割込可能命令でない場合は、第
1命令の実行は割り込みなしに通常の方法で終了する
(図6のステップ230参照)。次に、割込要求は第1
命令と次の命令との間の命令境界において処理される
(図6のステップ234参照)。そして最後に、通常の
命令実行が、次の命令の取り出し,受信,解読および実
行と続行される(図6のステップ235参照)。
【0033】決定ダイヤ形219を参照して、第1命令
が割込可能命令である場合、制御回路構成70は、割込
制御ビット50の値を決定する。本発明の1つの実施例
においては、割込制御ビット50が第1値(たとえばバ
イナリ0)を有する場合、第1命令の実行は割込なしに
通常の方法で終了する(図6のステップ230参照)。
次に割込要求は第1命令と次の命令との間の命令境界で
処理される(図6のステップ234参照)。そして最後
に、通常の命令実行が、次の命令の取り出し,受信,解
読および実行と続行される(図6のステップ235参
照)。
【0034】図4の命令境界検出回路104を用いて、
レジスタ76と、ALU78と、シーケンサ100の状
態とを監視して、第1命令と第2命令との間の命令境界
にいつ到達したかを判定することができることに注目さ
れたい。本発明の代替の実施例においては、命令境界検
出回路104の機能をシーケンサ100の機能と組み合
わせて1つの回路を形成することもできることに注目さ
れたい。
【0035】決定ダイヤ形219をさらに参照して、割
込制御ビット50が第2値(たとえばバイナリ1)を有
する場合、制御回路構成70は、第1命令の実行が終了
したか否かをチェックする(図6の決定ダイヤ形220
参照)。本発明の1つの実施例においては、命令境界検
出回路104(図4参照)は、第1命令の実行が終了し
たか否かを判定する。第1命令の実行が終了した場合
は、割込要求が第1命令と次の命令との間の命令境界で
処理され(図6のステップ234参照)、通常の命令実
行が、次の命令の取り出し,受信,解読および実行と続
行される(図6のステップ235参照)。
【0036】しかし、第1命令の実行が終了していない
場合は(図6のステップ231参照)、第1命令の実行
は第1命令と次の命令との間の命令境界の前で停止され
る。そのため、割込処理は、第1命令が実行を完了させ
る間に遅延されることはなく、割込待ち時間が短縮され
る。本発明の1つの実施例においては、第1命令の結果
の一部は放棄されて、データ処理システム10は第1命
令の実行が開始される前と同じ状態に戻る(図6のステ
ップ232参照)。割込要求は、第1命令と次の命令と
の間の命令境界の前に処理される(図6のステップ23
3参照)。割込要求の処理が完了すると、データ処理シ
ステム10は第1命令を再度解読して、再度実行する
(図6の円212参照)。これは第1命令の実行がまだ
終了していないからである。
【0037】一定の異常な状況下(たとえばシステムの
電力が低すぎて継続できない場合)では、ステップ23
3で呼び出される割込サービス・ルーチンが、ソフトウ
ェアの流れを根本的に中断して、割り込まれた命令(す
なわち第1命令)に戻らないことがある。しかし、多く
の割込サービス・ルーチンは、最終的には割り込まれた
命令に戻る(すなわち円205)。
【0038】第1命令の結果の一部が放棄されると、最
初からもう一度、第1命令の再解読および再実行を始め
なければならない(図5のステップ226参照)。しか
し、第1命令の結果の一部がセーブされていれば、第1
命令の実行は部分的な結果がセーブされた実行中の時点
を拾えばよい。たとえば、本発明のある実施例では、第
1命令が命令ラッチ74(図3参照)内に依然として格
納されているので、再び取り出さなくてもよい場合があ
る。第2の待機中の割込がない場合(決定ダイヤ形21
6参照)、第1命令の再実行が終了し(図5のステップ
228参照)、通常の命令実行が、次の命令の取り出
し,受信,解読および実行と続行される(図6のステッ
プ235参照)。
【0039】本発明は、特定の実施例に関して図示およ
び説明されたが、当業者には更なる改良および改善が可
能であろう。そのため、本発明は図示された特定の形態
に限定されず、添付の請求項は、本発明の範囲から逸脱
しないすべての改良を包含するものであることを理解頂
きたい。
【図面の簡単な説明】
【図1】本発明の1つの実施例によるデータ処理システ
ム10のブロック図である。
【図2】本発明の1つの実施例による図1の割込回路構
成28のブロック図である。
【図3】本発明の1つの実施例による図1の中央処理装
置(CPU)12の一部分のブロック図である。
【図4】本発明の1つの実施例による図3の制御回路構
成70の一部分のブロック図である。
【図5】本発明の1つの実施例によりデータ処理システ
ム内で割込待ち時間を選択的に制御する方法の流れ図で
ある。
【図6】本発明の1つの実施例によりデータ処理システ
ム内で割込待ち時間を選択的に制御する方法の流れ図で
ある。
【符号の説明】 10 データ処理システム 12 中央処理装置(CPU)回路構成 14 メモリ回路構成 16 タイマ回路構成 18 シリアル回路構成 20 その他の回路構成 22 システム統合回路構成 24,26 バス 28 割込回路構成 30,32,34,36,38,40 集積回路端子

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 データ処理システム(10)を動作する
    方法であって:第1命令を解読する段階(226);第
    1命令の実行を開始する段階(227);第1命令の実
    行中に割込要求を受け入れる段階(229);格納回路
    (50)が第1値を格納する場合に、データ処理システ
    ム(10)を中断して、第1命令と第2命令との間の命
    令境界において割込要求を処理する段階(218,21
    9,230);および格納回路(50)が第2値を格納
    する場合に、データ処理システム(10)を中断して、
    第1命令と第2命令との間の命令境界において、あるい
    はその前に割込要求を処理する段階(218,219,
    231,234);によって構成されることを特徴とす
    る方法。
  2. 【請求項2】 割込要求を受け付ける割込回路構成(4
    0);割込制御値を格納する第1格納回路(50);第
    1命令と第2命令との間の命令境界を検出する命令境界
    検出回路(104);および第1および第2命令の実行
    を制御する制御回路構成(100)であって、前記割込
    回路構成(40)と、前記第1格納回路(50)と、前
    記命令境界検出回路構成とに結合された制御回路構成
    (100);によって構成され、割込制御値が第1値を
    有して、前記割込回路構成(40)が第1命令の実行中
    に割込要求を受け入れる場合には、前記制御回路構成が
    第1命令と第2命令との間の命令境界において割込要求
    を処理し、割込制御値が第2値を有し、前記割込回路構
    成(40)が第1命令の実行中に割込要求を受け入れる
    場合には、前記制御回路構成(100)が第1命令と第
    2命令との間の命令境界において、あるいはその前に割
    込要求を処理することを特徴とするデータ・プロセッサ
    (10)。
  3. 【請求項3】 N,Kが正の整数であるとき第1組のN
    個の命令を有し、第2組のK個の命令を有するデータ処
    理システム(10)を動作する方法であって:第1命令
    の実行を開始する段階(227);第1命令の実行中に
    割込要求を受け付ける段階(229);第1命令が第1
    組のN個の命令に属し(218)、第1制御レジスタ・
    ビット・フィールドが第1値を有する(219)場合
    に:第1命令の実行を完了する段階(230);第1割
    込要求を処理する段階(234);および第2命令の実
    行を開始する段階(235);を実行する段階;第1命
    令が第1組のN個の命令に属し(218)、第1制御レ
    ジスタ・フィールドが第2値を有し(219)、第1命
    令の実行が完了していない場合(220)に:第1命令
    の実行を停止する段階(231);データ処理システム
    (10)を第1命令の実行が開始される前のデータ処理
    システム(10)の状態に戻す段階(232);データ
    処理システム(10)を中断して第1割込要求(23
    3)を処理する段階(233);および第1命令の実行
    を開始する前記段階を反復する段階(212,22
    7);を実行する段階;および第1命令が第2組のK個
    の命令に属する場合(218)に:第1命令の実行を完
    了する段階(230);第1割込要求を処理する段階
    (234);および第2命令の実行を開始する段階(2
    35);を実行する段階;によって構成されることを特
    徴とする方法。
JP08899496A 1995-03-31 1996-03-19 データ処理システムにおいて割込待ち時間を選択的に制御するための方法および装置 Expired - Fee Related JP3787385B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US414466 1995-03-31
US08/414,466 US5889973A (en) 1995-03-31 1995-03-31 Method and apparatus for selectively controlling interrupt latency in a data processing system

Publications (2)

Publication Number Publication Date
JPH08286930A true JPH08286930A (ja) 1996-11-01
JP3787385B2 JP3787385B2 (ja) 2006-06-21

Family

ID=23641577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08899496A Expired - Fee Related JP3787385B2 (ja) 1995-03-31 1996-03-19 データ処理システムにおいて割込待ち時間を選択的に制御するための方法および装置

Country Status (4)

Country Link
US (1) US5889973A (ja)
EP (1) EP0735462A2 (ja)
JP (1) JP3787385B2 (ja)
KR (1) KR100405843B1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008046697A (ja) * 2006-08-11 2008-02-28 Fujitsu Ltd データ処理ユニット、およびこれを使用したデータ処理装置
JP2016532205A (ja) * 2013-08-23 2016-10-13 エイアールエム リミテッド データ・アクセスのアクセス属性の扱い

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0927931B1 (en) * 1997-12-31 2007-02-21 Texas Instruments Inc. Interruptable multiple execution unit processing during operations utilizing multiple assignment of registers
US6378022B1 (en) 1999-06-17 2002-04-23 Motorola, Inc. Method and apparatus for processing interruptible, multi-cycle instructions
US6526514B1 (en) * 1999-10-11 2003-02-25 Ati International Srl Method and apparatus for power management interrupt processing in a computing system
US6775727B2 (en) 2001-06-23 2004-08-10 Freescale Semiconductor, Inc. System and method for controlling bus arbitration during cache memory burst cycles
DE60141467D1 (de) * 2001-11-15 2010-04-15 Texas Instruments Inc Unterbrechbare und wiederaufnehmbare Instruktion zum Säubern eines Segments eines Cache-Speichers
US7013357B2 (en) * 2003-09-12 2006-03-14 Freescale Semiconductor, Inc. Arbiter having programmable arbitration points for undefined length burst accesses and method
US20070083736A1 (en) * 2005-10-06 2007-04-12 Aravindh Baktha Instruction packer for digital signal processor
US8191085B2 (en) 2006-08-29 2012-05-29 Freescale Semiconductor, Inc. Method and apparatus for loading or storing multiple registers in a data processing system
EP1990738B1 (en) * 2007-05-07 2011-03-09 Software AG Method and server for synchronizing a plurality of clients accessing a database
US8688964B2 (en) * 2009-07-20 2014-04-01 Microchip Technology Incorporated Programmable exception processing latency
US9116742B1 (en) * 2011-07-20 2015-08-25 Marvell International Ltd. Systems and methods for reducing interrupt latency
KR101483105B1 (ko) * 2013-07-31 2015-01-16 한국항공우주산업 주식회사 낙하산강하 훈련모드기능이 구비된 비행시뮬레이터장치 및 그 제어방법
US9591015B1 (en) 2014-03-28 2017-03-07 Fireeye, Inc. System and method for offloading packet processing and static analysis operations
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US9690933B1 (en) 2014-12-22 2017-06-27 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US9838417B1 (en) 2014-12-30 2017-12-05 Fireeye, Inc. Intelligent context aware user interaction for malware detection
US10148693B2 (en) 2015-03-25 2018-12-04 Fireeye, Inc. Exploit detection system
US9483644B1 (en) 2015-03-31 2016-11-01 Fireeye, Inc. Methods for detecting file altering malware in VM based analysis
US9772963B2 (en) * 2015-07-26 2017-09-26 Nxp Usa, Inc. Interrupt management system for deferring low priority interrupts in real-time system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4291371A (en) * 1979-01-02 1981-09-22 Honeywell Information Systems Inc. I/O Request interrupt mechanism
US4709324A (en) * 1985-11-27 1987-11-24 Motorola, Inc. Data processor control unit having an interrupt service using instruction prefetch redirection
US4885682A (en) * 1986-12-01 1989-12-05 Nec Corporation Microprogram controller for detecting the occurrence of an interrupt request or a termination of a string instruction
JPH0474229A (ja) * 1990-07-17 1992-03-09 Toshiba Corp 情報処理装置
FR2680591B1 (fr) * 1991-08-22 1996-01-26 Telemecanique Controleur d'interruption programmable, systeme interruptif et procede de controle d'interruption.
US5317745A (en) * 1992-01-10 1994-05-31 Zilog, Inc. Minimal interrupt latency scheme using multiple program counters
JPH05265773A (ja) * 1992-03-23 1993-10-15 Nec Corp 情報処理装置
US5437039A (en) * 1992-05-21 1995-07-25 Intel Corporation Servicing transparent system interrupts and reducing interrupt latency
JPH064321A (ja) * 1992-06-19 1994-01-14 Matsushita Electric Ind Co Ltd 割り込み管理方式
JPH0635716A (ja) * 1992-07-21 1994-02-10 Toshiba Corp マイクロプロセッサ
US5404536A (en) * 1992-09-15 1995-04-04 Digital Equipment Corp. Scheduling mechanism for network adapter to minimize latency and guarantee background processing time
EP0621535B1 (en) * 1993-04-23 2000-03-15 Advanced Micro Devices, Inc. Interrupt handling
JP2513417B2 (ja) * 1993-07-05 1996-07-03 日本電気株式会社 情報処理装置
US5613129A (en) * 1994-05-02 1997-03-18 Digital Equipment Corporation Adaptive mechanism for efficient interrupt processing
US5535380A (en) * 1994-12-16 1996-07-09 International Business Machines Corporation System to reduce latency for real time interrupts
US5638525A (en) * 1995-02-10 1997-06-10 Intel Corporation Processor capable of executing programs that contain RISC and CISC instructions
JP2625402B2 (ja) * 1995-05-24 1997-07-02 日本電気株式会社 マイクロプロセッサ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008046697A (ja) * 2006-08-11 2008-02-28 Fujitsu Ltd データ処理ユニット、およびこれを使用したデータ処理装置
JP2016532205A (ja) * 2013-08-23 2016-10-13 エイアールエム リミテッド データ・アクセスのアクセス属性の扱い

Also Published As

Publication number Publication date
EP0735462A2 (en) 1996-10-02
JP3787385B2 (ja) 2006-06-21
US5889973A (en) 1999-03-30
KR100405843B1 (ko) 2004-04-03
KR960035262A (ko) 1996-10-24

Similar Documents

Publication Publication Date Title
JP3787385B2 (ja) データ処理システムにおいて割込待ち時間を選択的に制御するための方法および装置
JP4883824B2 (ja) デ―タ・プロセッサにおいて後続の命令処理に影響を及ぼす方法および装置
JP4139771B2 (ja) キャッシュメモリバーストサイクル中にバスアービトレーションを制御するためのシステム及び方法
US4274138A (en) Stored program control system with switching between instruction word systems
JPH0612527B2 (ja) 割込み処理装置
JP3676882B2 (ja) マイクロプロセッサ及びその周辺装置
US6378022B1 (en) Method and apparatus for processing interruptible, multi-cycle instructions
JPS6030983B2 (ja) 周辺装置制御ユニツト
JPS63261449A (ja) デ−タ処理装置
JPH0332818B2 (ja)
US7966481B2 (en) Computer system and method for executing port communications without interrupting the receiving computer
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
JPH06230985A (ja) タスク制御回路、及びマイクロプロセッサ
JP3068528B2 (ja) 割り込み要求信号制御回路及びそれに用いる割り込みマスク回路
JP2002312005A (ja) プログラマブルコントローラ
JP3206656B2 (ja) バス上でのプリフェッチ装置およびプリフェッチ方法
US20030177229A1 (en) Microcomputer, bus control circuit, and data access method for a microcomputer
CN117112136A (zh) 中断虚拟化的方法、装置、操作***、设备及存储介质
JPH0876876A (ja) マイクロプロセッサのクロック供給制御回路
JPH04156645A (ja) 半導体集積回路装置
JP2002182901A (ja) コプロセッサデータアクセス制御装置、その方法およびその命令フォーマット
JPH03188547A (ja) データ転送制御装置
JPS5942331B2 (ja) プロセツサソウチノセイギヨホウシキ
JPH07200490A (ja) Mpu
JPS6252900B2 (ja)

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041217

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050712

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051012

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060110

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060327

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100331

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100331

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110331

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120331

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130331

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130331

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140331

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees