JPH01214939A - シングルチップマイクロコンピュータ - Google Patents
シングルチップマイクロコンピュータInfo
- Publication number
- JPH01214939A JPH01214939A JP4117588A JP4117588A JPH01214939A JP H01214939 A JPH01214939 A JP H01214939A JP 4117588 A JP4117588 A JP 4117588A JP 4117588 A JP4117588 A JP 4117588A JP H01214939 A JPH01214939 A JP H01214939A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- level
- register
- interrupt request
- priority
- 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
Links
- 230000008859 change Effects 0.000 claims description 12
- 238000000034 method Methods 0.000 abstract description 11
- 230000008569 process Effects 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 22
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 239000000470 constituent Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 101150108701 toa2 gene Proteins 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野〕
本発明はシングルチップマイクロコンピュータに関し、
特にシングルチップマイクロコンピュータの割込み処理
装置に関する。
特にシングルチップマイクロコンピュータの割込み処理
装置に関する。
近年の集積回路製造技術の進歩に伴い、シングルチップ
マイクロコンピュータの高性能化も著しく、特に、タイ
マカウンタ、A/Dコンバータ、シリアル送受信回路等
、シングルチップマイクロコンピュータ上に集積される
周辺装置の機能もますます高度化、多様化している。
マイクロコンピュータの高性能化も著しく、特に、タイ
マカウンタ、A/Dコンバータ、シリアル送受信回路等
、シングルチップマイクロコンピュータ上に集積される
周辺装置の機能もますます高度化、多様化している。
このため、シングルチップマイクロコンピュータの中央
処理装置(以下CPUと記す)には単に命令動作による
データ処理を高速に実行制御するだけでなく、周辺装置
等からの処理要求に対する効率的、かつ高速なデータ処
理機能に対する要求も著しく高まっている。
処理装置(以下CPUと記す)には単に命令動作による
データ処理を高速に実行制御するだけでなく、周辺装置
等からの処理要求に対する効率的、かつ高速なデータ処
理機能に対する要求も著しく高まっている。
従来、CPUが周辺装置等の処理要求に応じて高速にデ
ータ処理を実行制御するための手段として割込みという
手法が広く用いられている。
ータ処理を実行制御するための手段として割込みという
手法が広く用いられている。
通常、CPUが扱う周辺装置等からの処理要求(以下割
込み要求と記す)は複数で、場合によっては数十木に達
するため、CPUと周辺装置との間に割込み制御装置が
設けられ、この割込み制御装置がこれら複数の割込み要
求に対する仲裁処理や選択処理を行なった後CPUに対
して割込み要求発生を通知している。CPUは、この割
込み要求の通知により割込み要求に基づいたデータ処理
を開始する。
込み要求と記す)は複数で、場合によっては数十木に達
するため、CPUと周辺装置との間に割込み制御装置が
設けられ、この割込み制御装置がこれら複数の割込み要
求に対する仲裁処理や選択処理を行なった後CPUに対
して割込み要求発生を通知している。CPUは、この割
込み要求の通知により割込み要求に基づいたデータ処理
を開始する。
一般に、割込み要求の緊急度に応じ、実時間処理の必要
性から他の割込みサービス期間中でもこれを中断し、た
だちに緊急度の高い他の割込み処理に移る必要のある割
込み要求や、それ自身の緊急度はそれ程高くなく、他の
割込みサービス中は保留されていても問題のない割込み
要求等、様々な緊急度を有する割込み要求が存在する。
性から他の割込みサービス期間中でもこれを中断し、た
だちに緊急度の高い他の割込み処理に移る必要のある割
込み要求や、それ自身の緊急度はそれ程高くなく、他の
割込みサービス中は保留されていても問題のない割込み
要求等、様々な緊急度を有する割込み要求が存在する。
緊急度が高い割込みが発生した場合に、他の割込みサー
ビス期間中でもこの割込み処理を開始し、割込み要求の
発生状況によっては次々と緊急度の高い割込みサービス
を開始していく処理形態を多重割込み処理と称している
。従来、この多重割込み処理はソフトウェア処理により
実現されている。
ビス期間中でもこの割込み処理を開始し、割込み要求の
発生状況によっては次々と緊急度の高い割込みサービス
を開始していく処理形態を多重割込み処理と称している
。従来、この多重割込み処理はソフトウェア処理により
実現されている。
第7図は従来のシングルチップマイクロコンピュータの
ブロック図である。
ブロック図である。
c p U 500は、各種データ処理のタイミングを
規定するタイミング制御回路201を含む。タイミング
制御回路201には、割込み制御装置400から割込み
要求信号+06が入力すると共に、割込み要求の受付け
を通知するための割込み受付は信号203、受付けた割
込み要求を識別するための割込みベクタの読出し信号で
あるベクタリード信号204を割込み制御装置400に
出力する。また、タイミング制御回路201は、ベクタ
リード信号204の出力に同期してデータバス206上
に割込み制御装置400から出力された割込みベクタ情
報を取り込み1割込み要求信号106で通知された割込
み要求の要求元を認識する。割込み制御回路401は、
割込み要求フラグレジスタlot 、割込みマスクレジ
スタ102を含み、これらの各レジスタ101.102
の内容により受けつけるべきただ1つの割込み要求を選
択し、割込み要求信号106をアクティブにする。イン
タフェース回路107は、割込み制御回路401から割
込み要求信号106を介してcpu500に通知された
割込み要求を識別するための割込みベクタを発生し、ベ
クタリード信号204に同期してこの割込みベクタをデ
ータバス206上に出力する。
規定するタイミング制御回路201を含む。タイミング
制御回路201には、割込み制御装置400から割込み
要求信号+06が入力すると共に、割込み要求の受付け
を通知するための割込み受付は信号203、受付けた割
込み要求を識別するための割込みベクタの読出し信号で
あるベクタリード信号204を割込み制御装置400に
出力する。また、タイミング制御回路201は、ベクタ
リード信号204の出力に同期してデータバス206上
に割込み制御装置400から出力された割込みベクタ情
報を取り込み1割込み要求信号106で通知された割込
み要求の要求元を認識する。割込み制御回路401は、
割込み要求フラグレジスタlot 、割込みマスクレジ
スタ102を含み、これらの各レジスタ101.102
の内容により受けつけるべきただ1つの割込み要求を選
択し、割込み要求信号106をアクティブにする。イン
タフェース回路107は、割込み制御回路401から割
込み要求信号106を介してcpu500に通知された
割込み要求を識別するための割込みベクタを発生し、ベ
クタリード信号204に同期してこの割込みベクタをデ
ータバス206上に出力する。
第8図は割込み要求フラグレジスタ101と割込みマス
クレジスタ102の構成図、第9図は割込み制御回路4
01の回路図である。
クレジスタ102の構成図、第9図は割込み制御回路4
01の回路図である。
割込み制御回路401は、各種制御レジスタとして割込
み要求フラグレジスタ101と割込みマスクレジスタ+
02を含む。割込み要求フラグレジスタ+01は、割込
み要求元から発生する割込み要求を保持するフラグレジ
スタで、各別込み要求元とビット単位で対応しており、
割込み要求元の数nに対応してnビットで構成される。
み要求フラグレジスタ101と割込みマスクレジスタ+
02を含む。割込み要求フラグレジスタ+01は、割込
み要求元から発生する割込み要求を保持するフラグレジ
スタで、各別込み要求元とビット単位で対応しており、
割込み要求元の数nに対応してnビットで構成される。
割込みマスクレジスタ102は割込み要求フラグレジス
タ101の各ビットと連動し、割込み要求フラグレジス
タ101の各ビットに対応してこの内容の有効/無効を
指定する。本従来例では“0”を設定した場合には、割
込み要求フラグレジスタ101の対応するビット内に保
持される割込み要求情報を無効に、また“1”を設定し
た場合には、対応ビット内の割込み要求情報を有効とし
て割込み処理の対象とする。
タ101の各ビットと連動し、割込み要求フラグレジス
タ101の各ビットに対応してこの内容の有効/無効を
指定する。本従来例では“0”を設定した場合には、割
込み要求フラグレジスタ101の対応するビット内に保
持される割込み要求情報を無効に、また“1”を設定し
た場合には、対応ビット内の割込み要求情報を有効とし
て割込み処理の対象とする。
割込み要求フラグ101..1ot2,1013は、割
込み要求フラグ101の各構成ビットで、各割込み要求
元(図示せず)に対応して設定され、これらの各割込み
要求元からの割込み要求信号でセットされ、また、割込
み要求の受付けによりCP U 500から出力される
割込み受付は信号203に同期し、後述する要求受付は
フラグ108. 、toa、 、toa3の状態により
アンドゲート 1091.1092.1093で選択的
にクリアさ゛れる。割込みマスクレジスタ102、.1
022.1023の各出力は、アンドゲート110、.
1102.1103を介して非マスク状態の要求のみが
選択され、後述する割込み要求選択回路114、.11
42.1143に入力する。割込み要求選択回路114
..1142.1143は、同時に2個以上の割込み要
求が出力された場合にこの中から1つの割込み要求を選
択するための選択回路で、アンドゲート 110..1
10..1103の出力の中からデージ−チエインの手
法で単一の割込み要求を選択する。要求受付はフラグI
OJ 、1082.1083は割込み要求選択回路11
4.〜1143で選択された割込み要求を保持するフラ
グレジスタで、複数の割込み要求元から発生した各割込
み要求の内、単一のフラグのみが排他的にセット状態と
なる。なお、要求受付はフラグ108..1082.1
083はそれぞれインタフェース回路107に接続され
、割込み要求元を識別するための割込みベクタコード生
成に使用される。オアゲー) 115は、各要求受付は
フラグ+08..1082.1083の状態の論理和を
とり、CPIJ5QOへ割込み要求信号106として出
力する。
込み要求フラグ101の各構成ビットで、各割込み要求
元(図示せず)に対応して設定され、これらの各割込み
要求元からの割込み要求信号でセットされ、また、割込
み要求の受付けによりCP U 500から出力される
割込み受付は信号203に同期し、後述する要求受付は
フラグ108. 、toa、 、toa3の状態により
アンドゲート 1091.1092.1093で選択的
にクリアさ゛れる。割込みマスクレジスタ102、.1
022.1023の各出力は、アンドゲート110、.
1102.1103を介して非マスク状態の要求のみが
選択され、後述する割込み要求選択回路114、.11
42.1143に入力する。割込み要求選択回路114
..1142.1143は、同時に2個以上の割込み要
求が出力された場合にこの中から1つの割込み要求を選
択するための選択回路で、アンドゲート 110..1
10..1103の出力の中からデージ−チエインの手
法で単一の割込み要求を選択する。要求受付はフラグI
OJ 、1082.1083は割込み要求選択回路11
4.〜1143で選択された割込み要求を保持するフラ
グレジスタで、複数の割込み要求元から発生した各割込
み要求の内、単一のフラグのみが排他的にセット状態と
なる。なお、要求受付はフラグ108..1082.1
083はそれぞれインタフェース回路107に接続され
、割込み要求元を識別するための割込みベクタコード生
成に使用される。オアゲー) 115は、各要求受付は
フラグ+08..1082.1083の状態の論理和を
とり、CPIJ5QOへ割込み要求信号106として出
力する。
次に、第9図を参照して割込み制御装置400の動作を
説明する。
説明する。
割込み要求が入力していない状態では割込み要求フラグ
レジスタ101はクリア状態にある。割込み要求が入力
して割込み要求フラグレジスタ101内のビットがセッ
ト状態となり、かつ対応する割込みマスクレジスタ10
2が開いている場合には、割込み要求有効となる。即ち
、アンドゲート110、〜1103、要求受付はフラグ
108.〜1083、オアゲー)H5を順に介し、割込
み要求信号106がアクティブ状態となり、CP U
500に割込み要求の発生が通知される。
レジスタ101はクリア状態にある。割込み要求が入力
して割込み要求フラグレジスタ101内のビットがセッ
ト状態となり、かつ対応する割込みマスクレジスタ10
2が開いている場合には、割込み要求有効となる。即ち
、アンドゲート110、〜1103、要求受付はフラグ
108.〜1083、オアゲー)H5を順に介し、割込
み要求信号106がアクティブ状態となり、CP U
500に割込み要求の発生が通知される。
この従来の割込み制御装置400は、すべての割込み要
求をすべて同一レベルで扱っているため、CP U 5
00が緊急度の高い割込みサービスプログラムを実行し
ている期間は、緊急度の低い割込み要求を保留状態にす
るといった多重割込みに関連する割込み処理を以下に説
明するソフトウェアで処理していた。
求をすべて同一レベルで扱っているため、CP U 5
00が緊急度の高い割込みサービスプログラムを実行し
ている期間は、緊急度の低い割込み要求を保留状態にす
るといった多重割込みに関連する割込み処理を以下に説
明するソフトウェアで処理していた。
(1)割込みサービスプログラムの最初で割込みマスク
レジスタ102をメモリまたはレジスタに退避する。
レジスタ102をメモリまたはレジスタに退避する。
(2)受付けを禁止したい割込み要求元に対応するマス
クビットをマスク状態にするように割込みマスクレジス
タ102にマスクデータを再設定する。
クビットをマスク状態にするように割込みマスクレジス
タ102にマスクデータを再設定する。
この時、緊急度の高い割込みを受付けた場合には、この
割込みサービスプログラムの先頭でマスク状態に対応す
るデータをマスクレジスタ102に設定する。また、緊
急度の低い割込みを受付けた場合には、同様に、割込み
サービスプログラムの先頭で、非マスク状態に対応する
データをマスクレジスタ102に設定する。
割込みサービスプログラムの先頭でマスク状態に対応す
るデータをマスクレジスタ102に設定する。また、緊
急度の低い割込みを受付けた場合には、同様に、割込み
サービスプログラムの先頭で、非マスク状態に対応する
データをマスクレジスタ102に設定する。
また、割込みサービス処理の完了時には、以下の処理を
必要としていた。
必要としていた。
(1)割込みサービスプログラムの終了時にレジスタま
たはメモリに退避されていた旧マスク情報を割込みマス
クレジスタ102に書き戻す。
たはメモリに退避されていた旧マスク情報を割込みマス
クレジスタ102に書き戻す。
(2)割込みサービスからの復帰命令を実行し、割込み
により中断していたプログラムの実行を再開する。
により中断していたプログラムの実行を再開する。
上述した従来のシングルチップマイクロコンピュータは
、緊急度が高い割込み要求に基づく割込み処理において
も、割込みサービスプログラムの最初と最後でそれぞれ
割込みマスクレジスタに対する操作が必要となり、割込
み応答詩画が増大するという大きな欠点があり、また、
割込み要求元の数が増加するほど割込みマスクレジスタ
のビット幅も増大し、割込みマスクレジスタ操作に対す
る負担が一層大きくなり、処理効率の低下を招くという
欠点がある。
、緊急度が高い割込み要求に基づく割込み処理において
も、割込みサービスプログラムの最初と最後でそれぞれ
割込みマスクレジスタに対する操作が必要となり、割込
み応答詩画が増大するという大きな欠点があり、また、
割込み要求元の数が増加するほど割込みマスクレジスタ
のビット幅も増大し、割込みマスクレジスタ操作に対す
る負担が一層大きくなり、処理効率の低下を招くという
欠点がある。
特に、実時間処理、高速処理が要求されるシステムを割
込み要求で各処理を起動しており、割込み処理時での上
記割込みマスクレジスタ操作がシステム全体の処理性能
を大きく低下させる原因となっている。
込み要求で各処理を起動しており、割込み処理時での上
記割込みマスクレジスタ操作がシステム全体の処理性能
を大きく低下させる原因となっている。
本発明の目的は、上記欠点を解消し、ソフトウェア処理
を介さない、高速割込み多重処理が可能なシングルチッ
プマイクロコンピュータをtUtすることにある。
を介さない、高速割込み多重処理が可能なシングルチッ
プマイクロコンピュータをtUtすることにある。
(課題を解決するための手段〕
本発明のシングルチップマイクロコンピュータは、
割込み制御装置は、1つの割込み多重レベルにおいて、
新たに発生する割込み要求の受付けを許可するか否かを
各割込み要求毎に保持する、各割込み多重レベル毎の複
数の優先順位レジスタと、現在の割込み多重レベルを指
定するレベル指定レジスタと、割込み要求フラグレジス
タ、マスクレジスタ、優先順位レジスタ、レベル指定レ
ジスタの内容から、ただ1つの割込み要求を選択する割
込み要求選択手段と、優先順位レジスタの内容にもとづ
いてレベル指定レジスタを更新し、レベル指定レジスタ
の内容変化を検出すると、レベル変化信号を出力する優
先順位制御回路を有し、CPUは、前記優先順位制御回
路から出力される前記レベル変化信号の状態を保持する
記憶手段を有し、 前記CPUによる割込み要求の受付けに同期して、前記
優先順位制御回路は前記レベル指定レジスタを更新し、
前記記憶手段は前記レベル変化信号の状態を保持し、前
記CPUの所定命令の実行により、前記優先順位制御回
路は前記記憶手段の内容に基づいて前記レベル指定レジ
スタの更新を制御する。
新たに発生する割込み要求の受付けを許可するか否かを
各割込み要求毎に保持する、各割込み多重レベル毎の複
数の優先順位レジスタと、現在の割込み多重レベルを指
定するレベル指定レジスタと、割込み要求フラグレジス
タ、マスクレジスタ、優先順位レジスタ、レベル指定レ
ジスタの内容から、ただ1つの割込み要求を選択する割
込み要求選択手段と、優先順位レジスタの内容にもとづ
いてレベル指定レジスタを更新し、レベル指定レジスタ
の内容変化を検出すると、レベル変化信号を出力する優
先順位制御回路を有し、CPUは、前記優先順位制御回
路から出力される前記レベル変化信号の状態を保持する
記憶手段を有し、 前記CPUによる割込み要求の受付けに同期して、前記
優先順位制御回路は前記レベル指定レジスタを更新し、
前記記憶手段は前記レベル変化信号の状態を保持し、前
記CPUの所定命令の実行により、前記優先順位制御回
路は前記記憶手段の内容に基づいて前記レベル指定レジ
スタの更新を制御する。
割込み要求毎に多重割込みの優先順位レベルを指定する
優先順位レジスタと割込み多重レベルを指定するレベル
指定レジスタを有し、これらのレジスタにより多重割込
みが処理されるので、従来多重割込み処理で必要とされ
たマスクレジスタ操作等のソフトウェア処理を一切必要
としない。また、多重割込み処理における多重割込みレ
ベルが変更されたという情報を保持する手段をCPU内
のプログラムステータスワード内に設定しているので、
割込み多重レベルが深くなった場合でも多重レベルの更
新情報が所定メモリ上に保持されることにより、多重割
込みにおける多重レベルの制限がない。
優先順位レジスタと割込み多重レベルを指定するレベル
指定レジスタを有し、これらのレジスタにより多重割込
みが処理されるので、従来多重割込み処理で必要とされ
たマスクレジスタ操作等のソフトウェア処理を一切必要
としない。また、多重割込み処理における多重割込みレ
ベルが変更されたという情報を保持する手段をCPU内
のプログラムステータスワード内に設定しているので、
割込み多重レベルが深くなった場合でも多重レベルの更
新情報が所定メモリ上に保持されることにより、多重割
込みにおける多重レベルの制限がない。
次に、本発明の実施例について図面を参照して説明する
。
。
第1図は本発明の割込み処理装置の一実施例の第1図は
本発明の割込み処理装置の一実施例のブロック図、第2
図は第1図中のレジスタ101〜104の構成図である
。
本発明の割込み処理装置の一実施例のブロック図、第2
図は第1図中のレジスタ101〜104の構成図である
。
割込み制御装置100は割込み制御回路105とインタ
フェース回路107を含む。割込み制御回路105は、
割込み要求フラグレジスタ101 、割込みマスクレジ
スタ102、優先順位レジスタ103、レベル指定レジ
スタ104を含み、これらレジスタ101〜104の内
容により受けつけるべきただ1つの割込み要求を選択し
、割込み要求信号106をアクティブにし、さらに、受
けつけた割込み要求の割込み多重レベルに応じてレベル
指定レジスタ104内所定ビツトのセット処理や、割込
みサービスの終了によるレベル指定レジスタ104内所
定ビツトのクリア処理など割込み多重レベルの更新処理
を行なう。
フェース回路107を含む。割込み制御回路105は、
割込み要求フラグレジスタ101 、割込みマスクレジ
スタ102、優先順位レジスタ103、レベル指定レジ
スタ104を含み、これらレジスタ101〜104の内
容により受けつけるべきただ1つの割込み要求を選択し
、割込み要求信号106をアクティブにし、さらに、受
けつけた割込み要求の割込み多重レベルに応じてレベル
指定レジスタ104内所定ビツトのセット処理や、割込
みサービスの終了によるレベル指定レジスタ104内所
定ビツトのクリア処理など割込み多重レベルの更新処理
を行なう。
本実施例では、各割込み要求元に対して割込み要求の緊
急度に応じ、それぞれ0.1.21、mの多重レベル番
号を指定し1、優先順位レジスタ103が各割込み要求
元毎にこの多重レベルに係わる情報を保持する。この多
重レベル番号は、0が最も緊急度が高く、他のいかなる
割込みサービス中でもこの番号に設定された割込み要求
の発生によりただちにこの割込み要求のサービス処理を
開始する。また、1.21、mと番号が大きくなるに従
って、処理の緊急度は低くなる。
急度に応じ、それぞれ0.1.21、mの多重レベル番
号を指定し1、優先順位レジスタ103が各割込み要求
元毎にこの多重レベルに係わる情報を保持する。この多
重レベル番号は、0が最も緊急度が高く、他のいかなる
割込みサービス中でもこの番号に設定された割込み要求
の発生によりただちにこの割込み要求のサービス処理を
開始する。また、1.21、mと番号が大きくなるに従
って、処理の緊急度は低くなる。
例えば、割込み要求元A、B、Cに対して、それぞれ多
重レベルがa、b、cと設定され、多重レベルがa>b
>c (aが最も緊急度が高いとする)の場合には、以
下のように動作する。
重レベルがa、b、cと設定され、多重レベルがa>b
>c (aが最も緊急度が高いとする)の場合には、以
下のように動作する。
■Cの割込みサービス中にA、B、Cの割込み要求がそ
れぞれ発生した場合には、多重レベルに従って、Cのサ
ービスは中断され、A、B、および新に発生したCの各
割込み要求に基づく割込みサービスが順に起動される。
れぞれ発生した場合には、多重レベルに従って、Cのサ
ービスは中断され、A、B、および新に発生したCの各
割込み要求に基づく割込みサービスが順に起動される。
■Bの割込みサービス中にA、B、Cの割込み要求がそ
れぞれ発生した場合には、多重レベルに従って、Bのサ
ービスは中断され、A、および新に発生したBの各割込
み要求に基づく割込みサービスが順に起動される。また
、Cの割込み要求はA、Bのサービスが完了するまで保
留される。
れぞれ発生した場合には、多重レベルに従って、Bのサ
ービスは中断され、A、および新に発生したBの各割込
み要求に基づく割込みサービスが順に起動される。また
、Cの割込み要求はA、Bのサービスが完了するまで保
留される。
■Aの割込みサービス中に新にA、およびB。
Cの割込み要求がそれぞれ発生した場合には、多重レベ
ルに従って、Aのサービスは中断され、新に発生したA
の割込みサービスが起動される。また、Bの割込み要求
はAのサービスが完了するまで、また、Cの割込み要求
はA、B−のサービスが完了するまで保留される。
ルに従って、Aのサービスは中断され、新に発生したA
の割込みサービスが起動される。また、Bの割込み要求
はAのサービスが完了するまで、また、Cの割込み要求
はA、B−のサービスが完了するまで保留される。
また、現在の割込み多重レベルは、レベル指定レジスタ
104が保持する。インタフェース回路107は、割込
み制御回路105から割込み要求信号106を介してC
P U 200に通知された割込み要求を識別するため
の割込みベクタを発生し、ベクタリード信号204に同
期してこの割込みベクタをデータバス20B上に出力す
る。割込み要求フラグレジスタ101は、割込み要求元
(本実施例では具体的な説明はしていない)から発生す
る割込み要求を保持するフラグレジスタで、各割込み要
求元とビット単位で対応しており、割込み要求元の数n
に対応してnビットで構成される。割込みマスクレジス
タ102は割込み要求フラグレジスタ101の各ビット
と連動し、割込み要求フラグレジスタ101の各ビット
に対応してこの内容の有効/無効を指定する。本実施例
では、“0”を設定した場合には、割込み要求フラグレ
ジスタ101の対応するビット内に保持される割込み要
求情報を無効に、また“1”を設定した場合には、対応
ビット内の割込み要求情報を有効として後述する割込み
多重処理の対象とする。優先順位レジスタ103は、各
割込み要求元毎に割込みの多重レベルの情報を保持する
。1本の優先順位レジスタ103は、1つの割込み多重
レベルにおいて、新たに発生する割込み要求の受付けを
許可するか禁止するかを各割込み要求元毎に指定するn
ビットから構成される。本実施例では、1つの割込み要
求元に対応するビットに°゛0”を設定した場合にはこ
の割込み要求の受付けを禁止し、“1”を設定した場合
には以降で説明する多重割込み処理の対象とする。優先
順位レジスタ103は、割込み制御装置ね100が制御
する割込み多重レベル数mに応じて103、.1032
.−.103.、の合計量本設定され、さらに、割込み
多重レベルデータの設定により、割込み要求元Aは多重
レベル0に、割込み要求元Bは多重レベル1に、割込み
要求元Cは多重レベルmにそれぞれ設定される。レベル
指定レジスタ104は、現在の割込み多重レベルを保持
するレジスタで、割込み制御装置100が制御する割込
み多重レベル数mに応じてmビットから構成され、各ビ
ットは各割込み多重レベルとビット毎に対応している。
104が保持する。インタフェース回路107は、割込
み制御回路105から割込み要求信号106を介してC
P U 200に通知された割込み要求を識別するため
の割込みベクタを発生し、ベクタリード信号204に同
期してこの割込みベクタをデータバス20B上に出力す
る。割込み要求フラグレジスタ101は、割込み要求元
(本実施例では具体的な説明はしていない)から発生す
る割込み要求を保持するフラグレジスタで、各割込み要
求元とビット単位で対応しており、割込み要求元の数n
に対応してnビットで構成される。割込みマスクレジス
タ102は割込み要求フラグレジスタ101の各ビット
と連動し、割込み要求フラグレジスタ101の各ビット
に対応してこの内容の有効/無効を指定する。本実施例
では、“0”を設定した場合には、割込み要求フラグレ
ジスタ101の対応するビット内に保持される割込み要
求情報を無効に、また“1”を設定した場合には、対応
ビット内の割込み要求情報を有効として後述する割込み
多重処理の対象とする。優先順位レジスタ103は、各
割込み要求元毎に割込みの多重レベルの情報を保持する
。1本の優先順位レジスタ103は、1つの割込み多重
レベルにおいて、新たに発生する割込み要求の受付けを
許可するか禁止するかを各割込み要求元毎に指定するn
ビットから構成される。本実施例では、1つの割込み要
求元に対応するビットに°゛0”を設定した場合にはこ
の割込み要求の受付けを禁止し、“1”を設定した場合
には以降で説明する多重割込み処理の対象とする。優先
順位レジスタ103は、割込み制御装置ね100が制御
する割込み多重レベル数mに応じて103、.1032
.−.103.、の合計量本設定され、さらに、割込み
多重レベルデータの設定により、割込み要求元Aは多重
レベル0に、割込み要求元Bは多重レベル1に、割込み
要求元Cは多重レベルmにそれぞれ設定される。レベル
指定レジスタ104は、現在の割込み多重レベルを保持
するレジスタで、割込み制御装置100が制御する割込
み多重レベル数mに応じてmビットから構成され、各ビ
ットは各割込み多重レベルとビット毎に対応している。
本レベル指定レジスタ1o4は、割込み多重レベルがi
、j、k(以下、割込み多重レベルはi < j <
kで、割込み多重レベルiが最も低いとして説明する)
と移行するに応じて本レジスタ104内の割込み多重レ
ベルi、j、kに対応するビットが順にセット状態とな
る。また、現在の割込み多重レベルは、これらセットさ
れた複数ビットの中で最も割込み多重レベルの高いビッ
トに対応する割込み多重レベルkが現在の割込み多重レ
ベルとなる。また、この場合には優先順位レジスタ+0
3としては割込み多重レベルkに対応する優先順位レジ
スタ 103kが選択状態になる。CPU200は、各
種データ処理のタイミングを規定するタイミング制御回
路201、プログラムの動作状態を保持するプログラム
ステータスワード(以下PSWと記す)202を含む。
、j、k(以下、割込み多重レベルはi < j <
kで、割込み多重レベルiが最も低いとして説明する)
と移行するに応じて本レジスタ104内の割込み多重レ
ベルi、j、kに対応するビットが順にセット状態とな
る。また、現在の割込み多重レベルは、これらセットさ
れた複数ビットの中で最も割込み多重レベルの高いビッ
トに対応する割込み多重レベルkが現在の割込み多重レ
ベルとなる。また、この場合には優先順位レジスタ+0
3としては割込み多重レベルkに対応する優先順位レジ
スタ 103kが選択状態になる。CPU200は、各
種データ処理のタイミングを規定するタイミング制御回
路201、プログラムの動作状態を保持するプログラム
ステータスワード(以下PSWと記す)202を含む。
タイミング制御回路201には、後述する割込み制御装
置100から割込み要求信号106が入力すると共に、
割込み要求の受付けを通知するための割込み受付は信゛
号203、受付けた割込み要求を識別するための割込み
ベクタの読出し信号であるベクタリード信号204、お
よびレベル指定レジスタ104内のセットされた最高レ
ベルビットのクリアタイミングを指定するレベルクリア
信号207をそれぞれ割込み制御装置100に出力する
。なお、割込み受付は信号203は、PSW202のL
VCビットにも接続されている。タイミング制御回路2
01は、ベクタリード信号204の出力に同期してデー
タバス206上に割込み制御装置100から出力された
割込みベクタ情報を取り込み、割込み要求信号106で
通知された割込み要求の要求元を認識する。PSW20
2はプログラムの実行状態を示すキャリーフラグ、ゼロ
フラグ等を含む他、割込みレベル変更フラグ(以下LV
Cと記す。)205を含むが、キャリーフラグ、ゼロフ
ラグは図示されていない。L V C205は、割込み
制御装置100から出力されるLVCHG208のレベ
ルを割込み受付は信号203に同期して取り込む。PS
W202とタイミング制御回路201は、タイミング制
御回路201の制御によりデータバス206を介してデ
ータのリード/ライトが可能である。
置100から割込み要求信号106が入力すると共に、
割込み要求の受付けを通知するための割込み受付は信゛
号203、受付けた割込み要求を識別するための割込み
ベクタの読出し信号であるベクタリード信号204、お
よびレベル指定レジスタ104内のセットされた最高レ
ベルビットのクリアタイミングを指定するレベルクリア
信号207をそれぞれ割込み制御装置100に出力する
。なお、割込み受付は信号203は、PSW202のL
VCビットにも接続されている。タイミング制御回路2
01は、ベクタリード信号204の出力に同期してデー
タバス206上に割込み制御装置100から出力された
割込みベクタ情報を取り込み、割込み要求信号106で
通知された割込み要求の要求元を認識する。PSW20
2はプログラムの実行状態を示すキャリーフラグ、ゼロ
フラグ等を含む他、割込みレベル変更フラグ(以下LV
Cと記す。)205を含むが、キャリーフラグ、ゼロフ
ラグは図示されていない。L V C205は、割込み
制御装置100から出力されるLVCHG208のレベ
ルを割込み受付は信号203に同期して取り込む。PS
W202とタイミング制御回路201は、タイミング制
御回路201の制御によりデータバス206を介してデ
ータのリード/ライトが可能である。
第3図は割込み制御回路105の回路図、第4図は第1
図の実施例における割込み受付は時のレベル指定レジス
タ104のビットのセット条件を示す図、第5図は第1
図の実施例における割込み復帰時のレベル指定レジスタ
104のビットのクリア条件を示す図である。
図の実施例における割込み受付は時のレベル指定レジス
タ104のビットのセット条件を示す図、第5図は第1
図の実施例における割込み復帰時のレベル指定レジスタ
104のビットのクリア条件を示す図である。
なお、本説明では簡単のため、割込み多重レベルを3レ
ベルとして説明する。
ベルとして説明する。
割込み要求フラグ101..1012.1013は割込
み要求フラグ101の各構成ビットで、各割込み要求元
(図示せず)に対応して設定され、これらの各割込み要
求元からの割込み要求信号でセットされ、また、割込み
要求の受付けによりCP U 200から出力される割
込み受付は信号203に同期し、後述する要求受付はフ
ラグ108. 、toa2.toe3の状態によりアン
ドゲート 109..1092.1093で選択的にク
リアされる。割込みマスクレジスタ102、.1022
.1023の各出力は、アンドゲート110、.110
2.1103を介して非マスク状態の要求のみが選択さ
れ、後述する優先順位選択回路Ill、 、1112.
1113に入力する。優先順位制御回路+12はレベル
指定レジスタ10+を含み、このレベル指定レジスタ1
04のセット状態にあるビットの中で最も優先順位の高
いビットを選択し、そのレベルに対応する割込み多重レ
ベル指定線113を排他的にアクティブにする。
み要求フラグ101の各構成ビットで、各割込み要求元
(図示せず)に対応して設定され、これらの各割込み要
求元からの割込み要求信号でセットされ、また、割込み
要求の受付けによりCP U 200から出力される割
込み受付は信号203に同期し、後述する要求受付はフ
ラグ108. 、toa2.toe3の状態によりアン
ドゲート 109..1092.1093で選択的にク
リアされる。割込みマスクレジスタ102、.1022
.1023の各出力は、アンドゲート110、.110
2.1103を介して非マスク状態の要求のみが選択さ
れ、後述する優先順位選択回路Ill、 、1112.
1113に入力する。優先順位制御回路+12はレベル
指定レジスタ10+を含み、このレベル指定レジスタ1
04のセット状態にあるビットの中で最も優先順位の高
いビットを選択し、そのレベルに対応する割込み多重レ
ベル指定線113を排他的にアクティブにする。
なお、本実施例では、割込み多重レベルを3レベルで説
明しているため、レベル指定レジスタ104は3ビツト
で構成される。このため、割込み多重レベル指定線11
3も3ビツト構成で、割込み多重レベルがレベル0の場
合は、最高割込み多重レベルとして割込み多重レベル指
定線113.が、レベル1の場合は割込み多重レベル指
定線1132が、レベル2の場合は割込み多重レベル指
定線1133がそれぞれ排他的にアクティブ状態となる
。優先順位読出しH116は、各アンドゲート117、
.1172の出力がそれぞれ論理和されている。後述す
るように複数ある要求受付はフラグ108、−1083
は排他的にセット状態となるが、例として要求受付はフ
ラグ1082がセット状態になった場合には、これに対
応するアンドゲート1172が有効となり、優先順位読
出し線116上には優先順位レジスタ 103,2.1
0322の内容が読出され、優先順位制御回路112に
入力する。フラグ103、、.1032..103.2
,10322,103,3,103,3は優先順位レジ
スタ103のフラグで、一つの割込み要求元に着目する
と、割込み多重レベル0には優先順位レジスタ 103
12が、割込み多重レベル1には優先順位レジスタ 1
O322がそれぞれ対応している。一つの割込み要求元
に対して複数設定された優先順位レジスタ 103..
1032は、優先順位制御回路112から出力される割
込み多重レベル指定線113と優先順位選択回路111
.−1113の制御により、割込み多重レベル0の時に
は優先順位レジスタ +03.が、割込み多重レベル1
の時は優先順位レジスタ 1032が、割込み多重レベ
ル2の時は論理レベル“1”がそれぞれ選択状態になる
。
明しているため、レベル指定レジスタ104は3ビツト
で構成される。このため、割込み多重レベル指定線11
3も3ビツト構成で、割込み多重レベルがレベル0の場
合は、最高割込み多重レベルとして割込み多重レベル指
定線113.が、レベル1の場合は割込み多重レベル指
定線1132が、レベル2の場合は割込み多重レベル指
定線1133がそれぞれ排他的にアクティブ状態となる
。優先順位読出しH116は、各アンドゲート117、
.1172の出力がそれぞれ論理和されている。後述す
るように複数ある要求受付はフラグ108、−1083
は排他的にセット状態となるが、例として要求受付はフ
ラグ1082がセット状態になった場合には、これに対
応するアンドゲート1172が有効となり、優先順位読
出し線116上には優先順位レジスタ 103,2.1
0322の内容が読出され、優先順位制御回路112に
入力する。フラグ103、、.1032..103.2
,10322,103,3,103,3は優先順位レジ
スタ103のフラグで、一つの割込み要求元に着目する
と、割込み多重レベル0には優先順位レジスタ 103
12が、割込み多重レベル1には優先順位レジスタ 1
O322がそれぞれ対応している。一つの割込み要求元
に対して複数設定された優先順位レジスタ 103..
1032は、優先順位制御回路112から出力される割
込み多重レベル指定線113と優先順位選択回路111
.−1113の制御により、割込み多重レベル0の時に
は優先順位レジスタ +03.が、割込み多重レベル1
の時は優先順位レジスタ 1032が、割込み多重レベ
ル2の時は論理レベル“1”がそれぞれ選択状態になる
。
優先順位選択回路111..1112,1ft3には、
それぞれアンドゲート 1101,1102.1103
と優先順位レジスタ103..1032および優先順位
制御回路+12から出力される多重レベル指定線113
がそれぞれ入力し、表1に示す真理値表に従って割込み
割込み要求選択回路114..1142.1143は、
複数の優先順位選択回路111..1112.1113
から同時に2個以上の割込み要求が出力された場合にこ
の中から1つの割込み要求を選択するための選択回路で
、優先順位選択回路Ill、 、1112.1113の
出力の中からデージ−チエインの手法で単一の割込み要
求を選択する。要求受付はフラグ108. 。
それぞれアンドゲート 1101,1102.1103
と優先順位レジスタ103..1032および優先順位
制御回路+12から出力される多重レベル指定線113
がそれぞれ入力し、表1に示す真理値表に従って割込み
割込み要求選択回路114..1142.1143は、
複数の優先順位選択回路111..1112.1113
から同時に2個以上の割込み要求が出力された場合にこ
の中から1つの割込み要求を選択するための選択回路で
、優先順位選択回路Ill、 、1112.1113の
出力の中からデージ−チエインの手法で単一の割込み要
求を選択する。要求受付はフラグ108. 。
1082.1083は、割込み要求選択回路114.〜
1143で選択された割込み要求を保持するフラグレジ
スタで、複数の割込み要求元から発生した各別込み要求
の内、表1で示すCP U 200による受付は条件を
満たす割込み要求に対応する単一のフラグのみが排他的
にセット状態となる。なお、要求受付はフラグ108.
.1082.1083はそれぞれインタフェース回路1
07に接続され、割込み要求元を識別するための割込み
ベクタコード生成に使用される。オアゲート115は、
各要求受付はフラグ108、.1082.1083の状
態の論理和をとり、CPU200へ割込み要求信号10
6として出力する。
1143で選択された割込み要求を保持するフラグレジ
スタで、複数の割込み要求元から発生した各別込み要求
の内、表1で示すCP U 200による受付は条件を
満たす割込み要求に対応する単一のフラグのみが排他的
にセット状態となる。なお、要求受付はフラグ108.
.1082.1083はそれぞれインタフェース回路1
07に接続され、割込み要求元を識別するための割込み
ベクタコード生成に使用される。オアゲート115は、
各要求受付はフラグ108、.1082.1083の状
態の論理和をとり、CPU200へ割込み要求信号10
6として出力する。
次に、優先順位制御回路112の動作を説明する。
優先順位制御回路112はレベル指定レジスタ104を
含み、多重レベル指定線113の出力制御の他に、レベ
ル指定レジスタ104の更新処理を以下の手順で行なう
。
含み、多重レベル指定線113の出力制御の他に、レベ
ル指定レジスタ104の更新処理を以下の手順で行なう
。
セット側の更新処理では、割込み要求により最終的に要
求受付はフラグ1082がセット状態になると対応する
アンドゲート 117.が有効となり、優先順位読出し
線116上には優先順位レジスタ103.2,103□
Hの内容が読出され、優先順位制御回路112に入力す
る。優先順位制御回路112は、この優先順位読出し線
116上の優先順位データに対し、次に移る割込み多重
レベルを決定すると同時に、CP U 200から出力
される割込み受付は信号203に同期して第4図に示す
ようにレベル指定レジスタ104内の所定ビットをセッ
ト状態にする。
求受付はフラグ1082がセット状態になると対応する
アンドゲート 117.が有効となり、優先順位読出し
線116上には優先順位レジスタ103.2,103□
Hの内容が読出され、優先順位制御回路112に入力す
る。優先順位制御回路112は、この優先順位読出し線
116上の優先順位データに対し、次に移る割込み多重
レベルを決定すると同時に、CP U 200から出力
される割込み受付は信号203に同期して第4図に示す
ようにレベル指定レジスタ104内の所定ビットをセッ
ト状態にする。
以上の処理により割込み多重レベルを更新する。
クリア側の更新処理では、優先順位制御回路112は、
第5図に示すように、レベル指定レジスタ104内のセ
ットされたビットの中で最も多重レベルの高いビットを
L V C205がハイレベルの時に限りCP U 2
00から出力されるレベルクリア信号207に同期して
クリアする。
第5図に示すように、レベル指定レジスタ104内のセ
ットされたビットの中で最も多重レベルの高いビットを
L V C205がハイレベルの時に限りCP U 2
00から出力されるレベルクリア信号207に同期して
クリアする。
次に、第3図を参照して割込み制御装置100の動作を
説明する。
説明する。
割込み要求が入力していない状態では割込み要求フラグ
レジスタ101 、レベル指定レジスタ104は共にク
リア状態にある。レベル指定レジスタ!04がクリアさ
れている状態は割込み多重レベル2に対応し、多重レベ
ル指定線1133がアクテイブレベルとなるため、優先
順位選択回路111は論理レベル“l”のゲートが有効
となり、アンドゲート11O□〜1103を経た割込み
要求は常に受付は可能状態となる。割込み要求が入力し
て割込み要求フラグレジスタ101の所定ビットがセッ
ト状態となり、かつ対応する割込みマスクレジスタ10
2が開いている場合には、割込み要求は、アン 。
レジスタ101 、レベル指定レジスタ104は共にク
リア状態にある。レベル指定レジスタ!04がクリアさ
れている状態は割込み多重レベル2に対応し、多重レベ
ル指定線1133がアクテイブレベルとなるため、優先
順位選択回路111は論理レベル“l”のゲートが有効
となり、アンドゲート11O□〜1103を経た割込み
要求は常に受付は可能状態となる。割込み要求が入力し
て割込み要求フラグレジスタ101の所定ビットがセッ
ト状態となり、かつ対応する割込みマスクレジスタ10
2が開いている場合には、割込み要求は、アン 。
上ゲート110.〜1103.割込み要求選択回路11
4、〜1143.要求受付はフラグ108.〜1083
、オアゲート115を順に経て、割込み要求信号10B
がアクティブ状態となり、CP U 200に割込み要
求の発生が通知される。
4、〜1143.要求受付はフラグ108.〜1083
、オアゲート115を順に経て、割込み要求信号10B
がアクティブ状態となり、CP U 200に割込み要
求の発生が通知される。
CP U 200は、命令処理の最後のタイミングで割
込み要求信号10Bをサンプルし、インアクティブレベ
ルの時は、次の命令処理を開始し、アクティブレベルを
検出した時は、次の命令処理には移行せず、ただちに以
下に説明する割込み処理を開始する。
込み要求信号10Bをサンプルし、インアクティブレベ
ルの時は、次の命令処理を開始し、アクティブレベルを
検出した時は、次の命令処理には移行せず、ただちに以
下に説明する割込み処理を開始する。
(1)それまで実行していたプログラムの実行状態を保
持しているPSW、プログラムカウンタ(第1図には図
示せず)を所定のメモリ領域に退避する。
持しているPSW、プログラムカウンタ(第1図には図
示せず)を所定のメモリ領域に退避する。
(2)発生した割込み要求元を識別するため、ベクタリ
ード信号204をアクティブにし、インタフェース回路
107からデータバス206を介してベクタコードを読
出す。この時、優先順位制御回路112は、多重レベル
指定信号線113の出力状態と優先順位読出し線116
の入力状態とを比較することにより多重割込みレベルの
更新があったかどうか判別し、多重割込みレベルの更新
があった場合には、LVCHG208をアクティブにす
る。
ード信号204をアクティブにし、インタフェース回路
107からデータバス206を介してベクタコードを読
出す。この時、優先順位制御回路112は、多重レベル
指定信号線113の出力状態と優先順位読出し線116
の入力状態とを比較することにより多重割込みレベルの
更新があったかどうか判別し、多重割込みレベルの更新
があった場合には、LVCHG208をアクティブにす
る。
(3) CP U 200は、読出したベクタコードよ
り割込みサービスプログラムのスタートアドレスを読出
し、割込みサービスプログラムに分岐し、所定の割込み
サービスを開始する。
り割込みサービスプログラムのスタートアドレスを読出
し、割込みサービスプログラムに分岐し、所定の割込み
サービスを開始する。
(4)CPU200は、割込み処理の完了を割込み制御
装置100に通知するため、割込み受付は信号20つを
アクティブにする。CP U 200は割込み受付は信
号203に同期してLVCHG208の状態をPSW2
02内に取り込む。
装置100に通知するため、割込み受付は信号20つを
アクティブにする。CP U 200は割込み受付は信
号203に同期してLVCHG208の状態をPSW2
02内に取り込む。
これにより、CP U 200は、割込み要求の受付け
による割込み多重レベルの変更に係わる情報をPSW2
02に保持すると同時に、この情報をLVC205とし
て優先順位制御回路112に出力する。
による割込み多重レベルの変更に係わる情報をPSW2
02に保持すると同時に、この情報をLVC205とし
て優先順位制御回路112に出力する。
更に、優先順位制御回路112は、割込み受付は信号2
03に同期してレベル指定レジスタ104を更新する。
03に同期してレベル指定レジスタ104を更新する。
また、割込みサービスプログラムの終了に際し、CP
U 200は次の処理を行なう。
U 200は次の処理を行なう。
(]) CP U 200は、レベルクリア信号207
をアクティブにして割込みサービスプログラムの終了を
割込み制御装置100に通知する。
をアクティブにして割込みサービスプログラムの終了を
割込み制御装置100に通知する。
(2)割込み制御装置100は、レベルクリア信号20
7がアクティブになったタイミングでLVC205をサ
ンプルし、L V C205が“0”の場合には、レベ
ル指定レジスタ104に対する更新処理は行なわない。
7がアクティブになったタイミングでLVC205をサ
ンプルし、L V C205が“0”の場合には、レベ
ル指定レジスタ104に対する更新処理は行なわない。
また、L V C205が“1”の場合には、その割込
み多重レベル処理が完了したと判断して、レベル指定レ
ジスタ104のセットされたビットの中の最高位ビット
をクリアし、多重レベルを下げる。
み多重レベル処理が完了したと判断して、レベル指定レ
ジスタ104のセットされたビットの中の最高位ビット
をクリアし、多重レベルを下げる。
第6図は本実施例における実際の割込み多重処理動作を
示す図である。
示す図である。
この図では、割込み要求元Cの多重レベルは“1”に、
割込み要求元Bl、B2の多重レベルは“0”にそれぞ
れ設定されているものとする。
割込み要求元Bl、B2の多重レベルは“0”にそれぞ
れ設定されているものとする。
また、レベル指定レジスタ104によりタイミング1、
以前の割込み多重レベルは“2”に設定されている。゛ 1、のタイミングで割込み要求元Cから割込み要求が入
力すると、Cの割込み多重レベルが“1”で、実行中の
多重レベルの“2″よりも高いためCP U 200に
より受付けられる。この時のCP U 200の割込み
処理により、旧LVC情報(この時のL V C205
は“0”の状態)を含むPSW202は所定のメモリに
退避される。また、割込み制御装置100内のレベル指
定レジスタ104で指定される割込み多重レベルは“1
”に移行すると同時に多重レベルの変化が生−じたため
、LVCHG208がアクティブとなり、PSW202
内のLVC205はセット状態となる。t2のタイミン
グで割込み要求元Blから割込み要求が入力すると、B
lの割込み多重レベルが“0”で現在実行中の多重レベ
ル“1“よりも高いため、再びCPU200により受付
けられる。この時のCP U 200の割込み処理によ
り、旧LVC情報(この時のしVC205は“1”の状
態)を含むPSW202は所定のメモリに退避される。
以前の割込み多重レベルは“2”に設定されている。゛ 1、のタイミングで割込み要求元Cから割込み要求が入
力すると、Cの割込み多重レベルが“1”で、実行中の
多重レベルの“2″よりも高いためCP U 200に
より受付けられる。この時のCP U 200の割込み
処理により、旧LVC情報(この時のL V C205
は“0”の状態)を含むPSW202は所定のメモリに
退避される。また、割込み制御装置100内のレベル指
定レジスタ104で指定される割込み多重レベルは“1
”に移行すると同時に多重レベルの変化が生−じたため
、LVCHG208がアクティブとなり、PSW202
内のLVC205はセット状態となる。t2のタイミン
グで割込み要求元Blから割込み要求が入力すると、B
lの割込み多重レベルが“0”で現在実行中の多重レベ
ル“1“よりも高いため、再びCPU200により受付
けられる。この時のCP U 200の割込み処理によ
り、旧LVC情報(この時のしVC205は“1”の状
態)を含むPSW202は所定のメモリに退避される。
また、割込み@篩装置100内のレベル指定レジスタ1
04で指定される割込み多重レベルは“0”に移行する
と同時に多重レベルの変化が生じたため、L V CH
G 208、がアクティブとなり、PSW202内(7
) L V C205はセット状態となる。t3のタイ
ミングで割込み要求元B2から割込み要求が入力すると
、B2の割込み多重レベルが“0”で現在実行中の多重
レベルと同一のため、再びCP U 200により受付
けられる。この時のCP U 200の割込み処理によ
り、旧LVC情報(この時のL V C205は“1”
の状態)を含むPSW202は所定のメモリに退避され
る。また、割:込み制御装置100内のレベル指定レジ
スタ104で指定される割込み多重レベルは“0”のま
まで、多重レベルに変化が生じなかったため、LVCH
G208がインアクティブとなり、PSW202内(7
) L V C205はクリア状態となる。t4のタイ
ミングで割込み要求元B2に係わる割込みサービスが終
了すると、CP U 200は割込みからの復帰命令を
実行するが、このタイミングに同期してレベルクリア信
号207を出力する。
04で指定される割込み多重レベルは“0”に移行する
と同時に多重レベルの変化が生じたため、L V CH
G 208、がアクティブとなり、PSW202内(7
) L V C205はセット状態となる。t3のタイ
ミングで割込み要求元B2から割込み要求が入力すると
、B2の割込み多重レベルが“0”で現在実行中の多重
レベルと同一のため、再びCP U 200により受付
けられる。この時のCP U 200の割込み処理によ
り、旧LVC情報(この時のL V C205は“1”
の状態)を含むPSW202は所定のメモリに退避され
る。また、割:込み制御装置100内のレベル指定レジ
スタ104で指定される割込み多重レベルは“0”のま
まで、多重レベルに変化が生じなかったため、LVCH
G208がインアクティブとなり、PSW202内(7
) L V C205はクリア状態となる。t4のタイ
ミングで割込み要求元B2に係わる割込みサービスが終
了すると、CP U 200は割込みからの復帰命令を
実行するが、このタイミングに同期してレベルクリア信
号207を出力する。
この時、割込み制御回路105に入力するLVC205
がインアクティブレベル状態のため、優先順位制御回路
112はレベル指定レジスタ104のセットされている
ビットの最上位ビットのクリア処理は行なわず、割込み
制御装置100は割込み多重レベル“0”を保つ。また
、割込みからの復帰命令の実行により旧PSW情報がメ
モリから復帰され、PSW202内のL V C205
には“1”がリストアされ、CP U 200はBlに
係わる割込みサービスを再開する。t5のタイミングで
割込み要求元Blに係わる割込みサービスが終了すると
、CP U 200は割込みからの復帰命令を実行する
が、この・タイミングに同期してレベルクリア信号20
7を出力する。この時2割込み制御回路105に入力す
るLVCZQ’5がアクティブレベル状態のため、優先
順位制御回路112ばレベル指定レジスタ104のセッ
トされているビットの最上ビットのクリア処理を行ない
、割込み多重レベルは“1”に移行する。また、割込み
からの復帰命令の実行により旧PSW情報がメモリから
復帰され、PSW202内のL V C205には“1
−がリストアされ、CPU200は割込み要求元Cに係
わる割込みサービスを再開する。tものタイミングで割
込み要求元Cに係わる割込みサービスが終了すると、C
PU200は割込みからの復帰命令を実行するが、この
タイミングに同期してレベルクリア信号207を出力す
る。この時、割込み制御回路105に入力するL V
C205がアクティブレベル状態のため、優先順位制御
回路112はレベル指定レジスタ104のセットされて
いるビットの最上ビットのクリア処理を行ない、割込み
多重レベルは“2”に移行する。また、割込みからの復
帰命令の実行により旧PSW情報がメモリから復帰され
、PSW202内のL V C205には“0”がリス
トアされる。
がインアクティブレベル状態のため、優先順位制御回路
112はレベル指定レジスタ104のセットされている
ビットの最上位ビットのクリア処理は行なわず、割込み
制御装置100は割込み多重レベル“0”を保つ。また
、割込みからの復帰命令の実行により旧PSW情報がメ
モリから復帰され、PSW202内のL V C205
には“1”がリストアされ、CP U 200はBlに
係わる割込みサービスを再開する。t5のタイミングで
割込み要求元Blに係わる割込みサービスが終了すると
、CP U 200は割込みからの復帰命令を実行する
が、この・タイミングに同期してレベルクリア信号20
7を出力する。この時2割込み制御回路105に入力す
るLVCZQ’5がアクティブレベル状態のため、優先
順位制御回路112ばレベル指定レジスタ104のセッ
トされているビットの最上ビットのクリア処理を行ない
、割込み多重レベルは“1”に移行する。また、割込み
からの復帰命令の実行により旧PSW情報がメモリから
復帰され、PSW202内のL V C205には“1
−がリストアされ、CPU200は割込み要求元Cに係
わる割込みサービスを再開する。tものタイミングで割
込み要求元Cに係わる割込みサービスが終了すると、C
PU200は割込みからの復帰命令を実行するが、この
タイミングに同期してレベルクリア信号207を出力す
る。この時、割込み制御回路105に入力するL V
C205がアクティブレベル状態のため、優先順位制御
回路112はレベル指定レジスタ104のセットされて
いるビットの最上ビットのクリア処理を行ない、割込み
多重レベルは“2”に移行する。また、割込みからの復
帰命令の実行により旧PSW情報がメモリから復帰され
、PSW202内のL V C205には“0”がリス
トアされる。
なお、優先順位レベルがほぼ半固定の割込み要求元に対
応する優先順位レジスタに対しては、この優先順位レジ
スタ103の一部をROM化することにより、ハードウ
ェア規模を縮小することが可能である。
応する優先順位レジスタに対しては、この優先順位レジ
スタ103の一部をROM化することにより、ハードウ
ェア規模を縮小することが可能である。
以上説明したように本発明は、従来ソフトウェアによる
マスクレジスタ操作で実現していた多重割込み処理を優
先順位レジスタとレベル指定レジスタによフて実現する
ことにより、従来のソフトウェア処理が不用となり極め
て高速に、割込み多重レベルを切り換えることが可能と
なり、また、割込み多重レベルが更新されたという情報
をPSW内に保持しており、割込み要求の受付けの度毎
に多重レベル更新情報が所定メモリ内に順に退避される
ため、割込み多重レベルを無制限に設定することが可能
であり、今後、割込み要求元の数はますます増大する傾
向にあり、この割込み多重しベルの拡張にも柔軟に対応
することができる効果がある。
マスクレジスタ操作で実現していた多重割込み処理を優
先順位レジスタとレベル指定レジスタによフて実現する
ことにより、従来のソフトウェア処理が不用となり極め
て高速に、割込み多重レベルを切り換えることが可能と
なり、また、割込み多重レベルが更新されたという情報
をPSW内に保持しており、割込み要求の受付けの度毎
に多重レベル更新情報が所定メモリ内に順に退避される
ため、割込み多重レベルを無制限に設定することが可能
であり、今後、割込み要求元の数はますます増大する傾
向にあり、この割込み多重しベルの拡張にも柔軟に対応
することができる効果がある。
第1図は本発明のシングルチップマイクロコンピュータ
の一実施例のブロック図、第2図は第1図の割込み制御
装置100に含まれるレジスタ101〜104の構成図
、第3図は第1図中の割込み制御回路105の回路図、
第4図は第1図の実施例における割込み受付は時のレベ
ル指定レジスタ104のビットのセット条件を示す図、
第5図は第1図の実施例における割込み復帰時のレベル
指定レジスタ104のビットのクリア条件を示す図、第
6図は第1図の実施例の動作例を示す図、第7図は従来
のシングルチップマイクロコンピュータのブロック図、
第8図は第7図中の割込み制御装置400に含まれるレ
ジスタ101.102の構成図、第9図は第7図中の割
込み制御回路401の回路図である。 100・・・割込み制御装置、 lot・・・割込み要求フラグレジスタ、102・・・
割込みマスクレジスタ、 103・・・優先順位レジスタ、 104−・・レベル指定レジスタ、 105−・・割込み制御回路、 106−・・割込み要求信号、 107−・・インタフェース回路、 112−・・優先順位制御回路、 200、500−CP U、 201−・タイミング制御回路、 202・−p s w、 203−・・割込み要求受付は信号、 204−・・ベクタリード信号、 205−LVC。 206−・・データバス、 207・・・レベルクリア信号、 208−LVCHG。
の一実施例のブロック図、第2図は第1図の割込み制御
装置100に含まれるレジスタ101〜104の構成図
、第3図は第1図中の割込み制御回路105の回路図、
第4図は第1図の実施例における割込み受付は時のレベ
ル指定レジスタ104のビットのセット条件を示す図、
第5図は第1図の実施例における割込み復帰時のレベル
指定レジスタ104のビットのクリア条件を示す図、第
6図は第1図の実施例の動作例を示す図、第7図は従来
のシングルチップマイクロコンピュータのブロック図、
第8図は第7図中の割込み制御装置400に含まれるレ
ジスタ101.102の構成図、第9図は第7図中の割
込み制御回路401の回路図である。 100・・・割込み制御装置、 lot・・・割込み要求フラグレジスタ、102・・・
割込みマスクレジスタ、 103・・・優先順位レジスタ、 104−・・レベル指定レジスタ、 105−・・割込み制御回路、 106−・・割込み要求信号、 107−・・インタフェース回路、 112−・・優先順位制御回路、 200、500−CP U、 201−・タイミング制御回路、 202・−p s w、 203−・・割込み要求受付は信号、 204−・・ベクタリード信号、 205−LVC。 206−・・データバス、 207・・・レベルクリア信号、 208−LVCHG。
Claims (1)
- 【特許請求の範囲】 割込み要求元から発生する割込み要求を割込み要求毎に
保持する割込み要求フラグレジスタと、割込み要求フラ
グレジスタの各ビットに対応して該ビットの内容の有効
/無効を指定する割込みマスクレジスタとを備え、これ
らレジスタの内容により受けつけるべきただ1つの割込
み要求を選択し、CPUに対して割込み要求信号を出力
する割込み制御装置を有し、CPUは割込み要求信号が
入力すると、割込み要求の受付けを通知するための割込
み受付け信号および受付けた割込み要求を識別するため
のベクタリード信号を割込み制御装置に出力するシング
ルチップマイクロコンピュータにおいて、 前記割込み制御装置は、1つの割込み多重レベルにおい
て、新たに発生する割込み要求の受付けを許可するか否
かを各割込み要求毎に保持する、各割込み多重レベル毎
の複数の優先順位レジスタと、現在の割込み多重レベル
を指定するレベル指定レジスタと、割込み要求フラグレ
ジスタ、マスクレジスタ、優先順位レジスタ、レベル指
定レジスタの内容から、ただ1つの割込み要求を選択す
る割込み要求選択手段と、優先順位レジスタの内容にも
とづいてレベル指定レジスタを更新し、レベル指定レジ
スタの内容変化を検出すると、レベル変化信号を出力す
る優先順位制御回路を有し、前記CPUは、前記優先順
位制御回路から出力される前記レベル変化信号の状態を
保持する記憶手段を有し、 前記CPUによる割込み要求の受付けに同期して、前記
優先順位制御回路は前記レベル指定レジスタを更新し、
前記記憶手段は前記レベル変化信号の状態を保持し、前
記CPUの所定命令の実行により、前記優先順位制御回
路は前記記憶手段の内容に基づいて前記レベル指定レジ
スタの更新を制御することを特徴とするシングルチップ
マイクロコンピュータ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63041175A JP2594600B2 (ja) | 1988-02-23 | 1988-02-23 | シングルチップマイクロコンピュータ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63041175A JP2594600B2 (ja) | 1988-02-23 | 1988-02-23 | シングルチップマイクロコンピュータ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01214939A true JPH01214939A (ja) | 1989-08-29 |
JP2594600B2 JP2594600B2 (ja) | 1997-03-26 |
Family
ID=12601092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63041175A Expired - Lifetime JP2594600B2 (ja) | 1988-02-23 | 1988-02-23 | シングルチップマイクロコンピュータ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2594600B2 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0442328A (ja) * | 1990-06-07 | 1992-02-12 | Nec Corp | 情報処理装置の割り込み制御方式 |
JPH0485630A (ja) * | 1990-07-30 | 1992-03-18 | Toshiba Corp | 割込み制御装置 |
JPH04211838A (ja) * | 1990-01-05 | 1992-08-03 | Motorola Inc | デジタルデータプロセッサおよびその作動方法 |
JPH0561692A (ja) * | 1991-09-05 | 1993-03-12 | Nec Corp | マイクロプロセツサの割込み制御装置 |
US8738830B2 (en) | 2011-03-03 | 2014-05-27 | Hewlett-Packard Development Company, L.P. | Hardware interrupt processing circuit |
US9189283B2 (en) | 2011-03-03 | 2015-11-17 | Hewlett-Packard Development Company, L.P. | Task launching on hardware resource for client |
US9645823B2 (en) | 2011-03-03 | 2017-05-09 | Hewlett-Packard Development Company, L.P. | Hardware controller to choose selected hardware entity and to execute instructions in relation to selected hardware entity |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51131229A (en) * | 1975-05-12 | 1976-11-15 | Hitachi Ltd | Offering control system of electronic computer |
JPS57174745A (en) * | 1981-04-21 | 1982-10-27 | Toshiba Corp | Control circuit for interruption priority |
JPS6158037A (ja) * | 1984-07-23 | 1986-03-25 | Fujitsu Ltd | サ−ビスプロセツサへの割り込み制御方式 |
-
1988
- 1988-02-23 JP JP63041175A patent/JP2594600B2/ja not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51131229A (en) * | 1975-05-12 | 1976-11-15 | Hitachi Ltd | Offering control system of electronic computer |
JPS57174745A (en) * | 1981-04-21 | 1982-10-27 | Toshiba Corp | Control circuit for interruption priority |
JPS6158037A (ja) * | 1984-07-23 | 1986-03-25 | Fujitsu Ltd | サ−ビスプロセツサへの割り込み制御方式 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04211838A (ja) * | 1990-01-05 | 1992-08-03 | Motorola Inc | デジタルデータプロセッサおよびその作動方法 |
JPH0442328A (ja) * | 1990-06-07 | 1992-02-12 | Nec Corp | 情報処理装置の割り込み制御方式 |
JPH0485630A (ja) * | 1990-07-30 | 1992-03-18 | Toshiba Corp | 割込み制御装置 |
JPH0561692A (ja) * | 1991-09-05 | 1993-03-12 | Nec Corp | マイクロプロセツサの割込み制御装置 |
US8738830B2 (en) | 2011-03-03 | 2014-05-27 | Hewlett-Packard Development Company, L.P. | Hardware interrupt processing circuit |
US9189283B2 (en) | 2011-03-03 | 2015-11-17 | Hewlett-Packard Development Company, L.P. | Task launching on hardware resource for client |
US9645823B2 (en) | 2011-03-03 | 2017-05-09 | Hewlett-Packard Development Company, L.P. | Hardware controller to choose selected hardware entity and to execute instructions in relation to selected hardware entity |
Also Published As
Publication number | Publication date |
---|---|
JP2594600B2 (ja) | 1997-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5379434A (en) | Apparatus and method for managing interrupts in a multiprocessor system | |
US6141713A (en) | Bus arbitrator with a hierarchical control structure | |
US20070067778A1 (en) | System and method for communication in a multithread processor | |
WO2006082989A2 (en) | System and method of interrupt handling | |
JPH0650493B2 (ja) | データ処理装置 | |
JPH06314205A (ja) | 割り込み源間の優先順位確立方法及びデータ処理システム | |
EP0446077B1 (en) | A control system for multi-processor system | |
JPH077379B2 (ja) | 多重処理システムの割込み選択方式 | |
JPH03109644A (ja) | マイクロコンピュータ | |
EP0055623B1 (en) | Direct memory-access mode for a high-speed memory system | |
JPH01214939A (ja) | シングルチップマイクロコンピュータ | |
JPH02123449A (ja) | コンピュータ・システム及びコンピュータ・システムを作動させる方法 | |
JP2877095B2 (ja) | マルチプロセッサシステム | |
JP2001290704A (ja) | マルチプロセス制御装置及びマルチプロセス制御方法 | |
JP3105554B2 (ja) | 割込みコントローラ | |
JPH09251387A (ja) | 割り込み要求優先順位決定回路 | |
JP2972557B2 (ja) | データ転送制御装置および制御方法 | |
JP2876629B2 (ja) | データ処理装置 | |
JPS6022248A (ja) | 割込み制御装置 | |
JPS6352241A (ja) | マイクロプロセツサ | |
JPH04178869A (ja) | マルチプロセッサシステムの割込み制御装置とその割込み通信方法 | |
JPH06230980A (ja) | 割込み回路 | |
JPH0683640A (ja) | 割込応答処理方式 | |
JPH02222059A (ja) | マルチプロセッサシステム | |
JPH0736820A (ja) | I/o制御装置 |