JP2702290B2 - 割込みコントローラ - Google Patents

割込みコントローラ

Info

Publication number
JP2702290B2
JP2702290B2 JP2411472A JP41147290A JP2702290B2 JP 2702290 B2 JP2702290 B2 JP 2702290B2 JP 2411472 A JP2411472 A JP 2411472A JP 41147290 A JP41147290 A JP 41147290A JP 2702290 B2 JP2702290 B2 JP 2702290B2
Authority
JP
Japan
Prior art keywords
signal
interrupt
priority
becomes
output
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.)
Expired - Lifetime
Application number
JP2411472A
Other languages
English (en)
Other versions
JPH04217057A (ja
Inventor
富一 鈴木
幸弘 西口
Original Assignee
日本電気アイシーマイコンシステム株式会社
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 日本電気アイシーマイコンシステム株式会社 filed Critical 日本電気アイシーマイコンシステム株式会社
Priority to JP2411472A priority Critical patent/JP2702290B2/ja
Priority to KR1019910019547A priority patent/KR950014373B1/ko
Priority to EP91118767A priority patent/EP0489260B1/en
Priority to DE69118833T priority patent/DE69118833T2/de
Publication of JPH04217057A publication Critical patent/JPH04217057A/ja
Priority to US08/110,495 priority patent/US5481729A/en
Application granted granted Critical
Publication of JP2702290B2 publication Critical patent/JP2702290B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロコンピュータ
における割込みコントローラに利用する。
【0002】本発明は、特に、割込み要求に対し、優先
順位を指定できる割込みコントローラに利用する。
【0003】本発明において、禁止不可割込み要求信号
とは、禁止することが不可で、優先順位の最も高い割込
み要求信号をいう。
【0004】
【従来の技術】一般に、マイクロコンピュータは、図12
に示すような構成である。
【0005】図12において、マイクロコンピュータ1
は、メモリ3内のプログラムメモリから読み出した命令
に基づき、中央演算装置(以下、「CPU」という。)
2が処理を実行する。また、周辺機能ブロック5はCP
U2と内部バス6を介してデータの書込みまたは読出し
(以下、「アクセス」という。)を行い制御されるが、
CPU2とは独立して動作している。
【0006】周辺機能ブロック5としては、タイマおよ
びシリアルインタフェースブロック等があり、例えば、
タイマがある値になった場合や、シリアルデータの受信
が完了したりした場合等の特別な状態を周辺機能ブロッ
ク5が検出した場合に、周辺機能ブロック5がCPU2
にそのことを知らせるために割込み要求信号7を発生す
る。割込み要求信号7は割込みコントローラ(以下、
「INTC」という。)4に入力される。
【0007】INTC4は、割込み要求をCPU2に送
出してもよい状態(割込み許可状態)、他の割込み要求
の有無および割込み要求の優先順位の判別等を行い、条
件が整っていると割込み要求としてCPU2に対し割込
み処理要求信号(以下、「INTRQ信号」という。)
8を送出する。CPU2はINTRQ信号8を検出し受
付けると、INTC4に対し割込み要求を受付けたこと
を示す信号等種々の制御信号9を出力する。
【0008】割込み要求を受付けたCPU2は、対応す
る割込み要求信号7、つまり周辺機能ブロック5に応じ
た割込み処理を、従来実行していたプログラムを中断し
て実行する。
【0009】ここで、割込み要求信号7の優先順位の説
明を行う。割込み要求信号7が複数本ある場合は、割込
み要求信号7の種類により緊急に割込み処理を実行すべ
き割込み要求信号7(以下、「緊急割込み要求」とい
う。)と、遅くてもよい割込み要求信号7(以下、「一
般割込み要求」という。)とが存在する。
【0010】緊急割込み要求は、一般割込み要求の割込
み処理実行中でも一般割込み要求の割込み処理中に割込
んで対応する緊急な割込み処理を実行する必要がある。
従って、割込み要求信号7には各々に優先順位を設定す
る必要がある。そして、優先順位が高く設定された割込
み要求信号7に対する割込み処理は、優先順位が低く設
定された割込み要求信号7に対する割込み処理中でも割
込んで実行するように制御する必要がある。以上のよう
な優先順位制御はINTC4で行われる。
【0011】次に、図13に従来のINTC4の構成図を
示し、図14のタイミングチャートを用いて動作を説明す
る。図13は、優先順位指定が4レベルの例である。
【0012】図13において、INT(0)、INT
(1)、INT(2)およびINT(3)信号は、周辺
機能ブロック5から出力される割込み要求信号7であ
り、それぞれの割込み要求信号制御装置IC(0)11、
IC(1)12、IC(2)13、およびIC(3)14(以
下、「IC(0)、IC(1)、IC(2)、IC
(3)」という。)に入力されている。IC(0)11、
IC(1)12、IC(2)13およびIC(3)14はそれ
ぞれ同一の構造であるのでIC(0)11について説明す
る。
【0013】割込み要求信号7が発生し、INT(0)
信号が「1」になると、割込み要求フラグラッチ(以
下、「要求フラグビット」という。)112 が「1」にセ
ットされる。CPU2が内部アドレスバスでIC(0)
11の番地を指し、データを内部データバス20に出力し、
ライト信号を発生すると、ライト信号制御回路23の出力
24が「1」となり、内部データバス20からマスクビット
ラッチ( 以下、「マスクビット」という。)111およびプ
ライオリティビットラッチ (以下、「プライオリティビ
ット」という。)116 および117 にCPU2の出力した
データが書き込まれる。マスクビット111 の内容が
「1」のときは、アンド回路114 の出力は、インバータ
119 により「0」に固定されているが、マスクビット11
1 の内容が「0」のときは、アンド回路114 の出力は、
EI信号と割込み要求フラグ112 とにより決定される。
ここで、EI信号はベクタ割込み許可・禁止信号で、E
I信号が「1」のときに割込み処理が許可される。
【0014】プライオリティビット116 および117 は割
込み要求信号7の優先順位を指定するビットで、2ビッ
トのプライオリティビット0、1、2、3の4個のレベ
ル(0が最も優先順位レベルが高く、3が最も低い)の
指定を行う。プライオリティビット116 が上位、117 が
下位ビットである。
【0015】比較器118 は、スキャンカウンタ15の出力
と、プライオリティビット116 および117 の内容との比
較を行っており、両方が一致すると出力を「1」にす
る。従って、マスクビットが「0」、EI信号が「1」
のときINT(0)信号が「1」になり、比較器118 の
出力が「1」になると、アンド回路115 の出力としての
ベクターアドレステーブル作成信号であるRA信号は
「1」となりオア回路22の出力31も「1」となる。
【0016】CLK信号はタイミングクロック信号であ
り、出力回路18a はCLK信号が「0」のタイミングで
オア回路22の出力を読み込み、次にCLK信号が「1」
になると出力する。
【0017】スキャンカウンタ15は、優先順位をスキャ
ンするカウンタで、通常、「0→1→2→3→0…」と
いうように、優先順位レベルをスキャンするためにスキ
ャン信号28および29を順次繰り返し出力している。しか
し、スキャンカウンタ15の内容が実行中優先順位レジス
タ (以下、「ISPR」という。)16の出力30の内容と
一致した場合にクリアされて、また「0」からカウント
を始める。ISPR16の内容が「2」の場合は、「0→
1→2→0→…」のようにカウントする。また、スキャ
ンカウンタ15は、オア回路22の出力が「1」のときカウ
ント動作を中断し、内容を保持している。
【0018】ISPR16は、CPU2が割込み処理を行
っている割込み要求の優先順位を記憶しており、CPU
2の制御信号9のうちの1本であるOEVC信号が
「1」のとき、スキャンカウンタ15の出力であるスキャ
ン信号28および29を読み込む。ここで、OEVC信号
は、発生した割込みに対応したベクタアドレステーブル
17のアドレスを出力し、またISPR16に発生した割込
みの優先順位を記憶させるベクタアドレスISPR記憶
信号である。しかし、以前にISPR16に記憶されてい
た内容はそのまま保持されるが、ISPR16の出力30に
は優先順位の高いレベルの方が出力される。また、OE
VC信号が出力されると、IC(0)11、IC(1)1
2、IC(2)13およびIC(3)14のアンド回路115
に対応するアンドゲートの出力が「1」となったとき
に、対応する割込みベクタアドレスが、ベクタアドレス
テーブル17から出力バッファ19を介して内部データバス
20に読み出される。CPU2は、この割込みベクタアド
レスにより割込み要求信号7の種類を判別する。
【0019】CPU2の制御信号9のうち1本である割
込み要求フラグ112のクリアを行う割込み要求フラグク
リア信号であるCLRIF信号が「1」となると、アン
ド回路110 の出力が「1」となり割込み要求フラグ112
が「0」にリセットされる。なお、RESET(リセッ
ト)信号はINTC4を初期化する信号で、RESET
信号が「1」になると、割込み要求フラグ112 は
「0」、マスクビット111 は「1」、プライオリティビ
ット116 および117 は「1」および「1」に、ISPR
16は割込み処理が何も実行されていない状態に初期化さ
れる。
【0020】いま、INT(0)、INT(1)、IN
T(2)、およびINT(3)信号について、マスクビ
ット111 がそれぞれ「0」、「0」、「0」、「0」、
プライオリティビット116 および117 が「1、0」(優
先順位レベル2)、「1、0」(優先順位レベル2)、
「0、0」(優先順位レベル0)、「0、1」(優先順
位レベル1)に設定している場合を、図14のタイミング
図を用いて説明する。
【0021】図14において、INT(0)信号がT2タ
イミングで発生すると、T4タイミングでスキャンカウ
ンタ15の出力が優先順位レベル3を示すので、比較器18
で一致が発生し、アンド回路115 の出力のRA信号が
「1」になる。すると、オア回路22の出力が「1」にな
るので、スキャンカウンタ15の内容がレベル2で停止す
る。T5タイミングでは、INTRQ信号が「1」とな
り、INT(0)信号が受付けられ、CPU2に対し割
込み処理を要求する。
【0022】INTRQ信号に対応して、CPU2はO
EVC信号をT6タイミングで「1」にする。T7タイ
ミングでは、ISPR16の出力が優先順位レベル2を示
す。ここで、CPU2がCLRIF信号を「1」にした
とすると、割込み要求フラグ112 が「0」にクリアされ
る。すると、アンド回路114 および115 の出力が
「0」、オア回路22の出力も「0」となる。すると、T
8タイミングではスキャンカウンタ15の内容がISPR
16の出力と一致するため、スキャンカウンタ15はクリア
されて優先順位レベル0からスキャンが始まる。
【0023】T10タイミングでINT(2)信号が発生
すると、T11タイミングでスキャンカウンタ15の出力と
IC(1)12内のプライオリティビット内容とが一致す
るため、T11タイミングでINTRQ信号が「1」とな
り、優先順位レベル0のINT(2)信号が受付けられ
る。すると、T11タイミング以降、スキャンカウンタ15
の内容は「0」に固定されてしまう。次に、T14タイミ
ングでINT(3)信号が発生したとしても、スキャン
カウンタ15の内容が「0」のため、IC(3)14内の比
較器で一致出力は発生しないので、現在受付中のINT
(2) 信号(優先順位レベル0)より優先順位レベルが
低いINT(3)信号(優先順位レベル1)は受付けら
れない。
【0024】割込み処理の終了時に、CPU2がISP
R16に記憶されている最も優先順位の高いレベルをクリ
アするCLRIP信号を発生する。T15タイミングでC
PU2がCLRIP信号を「1」にすると、ISPR16
は、T16タイミングで現在出力中の優先順位レベル0を
リセットし、一つ前の優先順位レベル2を出力する。す
ると、スキャンカウンタ15は再び「0→1→」の内容で
順次スキャンを行う。
【0025】以上のように、従来は、スキャンカウンタ
による優先順位レベルの順次スキャンにより割込み優先
順位制御を行っており、優先順位レベルの低い割込み処
理中にも優先順位の高い割込み処理が割込んで実行でき
る。また、優先順位レベルの高い割込み処理中、優先順
位レベルの低い割込み処理要求は実行できない。
【0026】
【発明が解決しようとする課題】しかし、この従来の割
込み優先順位制御手段を備えるINTCでは、優先順位
を順次スキャンして検索するため、優先順位レベルが多
くなればスキャン動作が一巡するのに時間が多くかかっ
てしまう欠点がある。最近のマイクロコンピュータで
は、割込み要求信号の本数が多くなり、またきめ細かな
制御を行うため、優先順位指定レベルの数が8〜16に拡
大している。もし、優先順位レベルが8レベルの場合で
は、スキャンが一巡するのに8タイミング必要となる。
この場合、割込み要求信号が発生してから受付けられる
までの時間(以下、「応答時間」という。)が最大16タ
イミング必要となり遅くなる。このような従来のINT
Cは、最近応用が広がっているリアルタイム制御分野に
対応したマイクロコンピュータには応答時間の問題で適
用できない欠点がある。
【0027】本発明の目的は、前記の欠点を除去するこ
とにより、優先順位指定レベルの数が多くなっても応答
時間を短縮できる割込みコントローラを提供することに
ある。
【0028】
【課題を解決するための手段】本発明は、複数の割込み
要求信号それぞれに対し2 n レベルのうち任意の優先順
位レベルに設定する複数のnビットのプライオリティレ
ジスタと、現在実行中の割込み処理の優先順位レジスタ
を記憶するnビットの実行中割込み順位レジスタと、割
込みの優先順位を走査するn+1のタイミング信号を順
次繰り返し発生するステージカウンタと、発生したすべ
ての割込み要求信号の前記プライオリティレジスタの内
容と前記実行中割込み優先順位レジスタの内容とを最上
位ビットから最下位ビットへn個のタイミングで比較し
て最も優先順位の高い割込みレジスタを検出し、最も優
先順位の高い割込みレジスタの割込みが複数ある場合に
は、前記n個のタイミングに続く1タイミングであらか
じめ定められた優先順位に従い、前記最も優先順位の高
い割込みレベルの割込みのうち1の割込みを選択する手
段とを備えた割込みコントローラであり、さらに、前記
すべての割込みに優先する禁止不可割込み信号入力手段
を備え、前記禁止不可割込み入力があった場合には、前
記n個のタイミングに続く1タイミングで、他のすべて
の割込みに優先した前記禁止不可割込みを選択する手段
を備えたことを特徴とする。
【0029】また、本発明は、入力される複数の割込み
要求信号の優先順位を制御して処理手段に出力する手段
を備えた情報処理装置における割込みコントローラにお
いて、入力される一般の各割込み要求信号に2 n 個(n
は自然数)の優先レベルを設定しこの設定された優先順
位レベルと装置ごとに定められた優先順位指定との組合
わせにより最大(n+1)個のタイミングで割込み要求
を検出する複数の割込み要求信号制御装置と、入力され
る禁止不可割込み要求信号をあらかじめ定められた順序
に従い1タイミングで検出する禁止不可割込み要求信号
制御装置と、優先順位レベルをスキャンする(n+1)
個のタイミング信号を順次発生するステージカウンタ
と、前記処理手段で現在実行中の割込み処理の優先順位
レベルを記憶する実行中優先順位レジスタと、この優先
順位レジスタの出力に従い現在実行中の割込みを制御す
る現在実行中割込み制御装置とを備え、前記割込み要求
信号制御装置は、割込み要求信号の優先順位レベルを設
定するn個のプライオリティレジスタと、n個のタイミ
ングにおいて発生した全ての割込み要求信号の優先順位
レベルと前記実行中優先順位レベルの記憶内容との比較
を最上位レベルから最下位レベルに向かって順次行い、
一連の全てのレベル比較で最も高い優先順位レベルを有
する割込み要求を優先順位が高いと検出する手段と、最
も高い優先順位レベルを有する割込み要求が同時に二つ
以上ある場合には、装置の指定優先順位に従って検出す
る手段とを含み、前記禁止不可割込み要求信号制御装置
は、前記割込み要求信号制御装置におけるnタイミング
に続く1タイミングで検出する手段を含むことができ
る。
【0030】また、本発明は、前記情報処理装置は、マ
イクロコンピュータであることが好ましい。
【0031】
【作用】割込み信号制御装置は、入力された各割込み要
求信号に2n 個(nは自然数)の優先順位レベルを設定
し、nタイミングにおいて発生した全ての割込み要求信
号の優先順位レベルと、優先順位レジスタの記憶内容と
の比較を最上位レベルから最下位レベルに向かって順に
行い、一連の全てのレベル比較で最も高い優先順位レベ
ルを有する割込み要求を検出する。また、最も高い優先
順位レベルを有する割込み要求が同時に二つ以上ある場
合には装置ごとの指定優先順位に従って1タイミングで
検出する。そして、禁止不可割込み要求信号制御手段は
前記nタイミングに続く次の1タイミングで禁止不可割
込み要求を検出する。
【0032】従って、例えば、優先順位レベルが8レベ
ル(n=3)の場合、最大n+1=4タイミングあれば
よくなり、大幅に応答時間を短縮することができる。
【0033】また、いろいろな割込み要求信号に対して
柔軟に対応することができる。
【0034】
【実施例】以下、本発明の実施例について図面を参照し
て説明する。
【0035】図1は本発明の第一実施例を示すブロック
構成図、および図12は本発明が適用されるマイクロコン
ピュータの要部を示すブロック構成図である。
【0036】本第一実施例は、マイクロコンピュータ1
の周辺機能ブロック5から入力される割込み要求信号7
としての、4個の割込み信号であるINT(0)、IN
T(1)、INT(2)およびINT(3)信号、なら
びに禁止不可割込み要求信号(以下、NMI信号とい
う。)を制御して処理手段としてのCPU2に渡す手段
を備えたINTC4において、
【0037】本発明の特徴とするところの、入力される
各割込み要求信号であるINT(0)〜INT(3)信
号に2n 個(nは自然数)の優先レベルを設定しこの設
定された優先順位レベルと装置ごとに定められた指定優
先順位との組合わせによりnタイミングで割込み要求を
検出する四つの割込み要求信号制御装置(以下、「IC
(0)〜IC(3)」という。)11〜14と、入力される
NMI信号をあらかじめ定められた順序に従い1タイミ
ングで検出する禁止不可割込み要求信号制御装置(以
下、「ICNMI」という。)45と、優先順位レベルを
スキャンする(n+1)個のタイミング信号を順次発生
するステージカウンタ32と、CPU2で現在実行中の割
込み処理の優先順位レベルに記憶する実行中優先順位レ
ジスタ(以下、「ISPR」という。)16と、このIS
PR16の出力に従い現在実行中の割込みを制御する現在
実行中割込み制御装置 (以下、「ICISPR」とい
う。)40とを備えている。
【0038】なお、図1において、17はベクタアドレス
テーブル、18a はINTRQ信号 (割込み処理要求信
号)を出力する出力回路、19は出力バッファ、20は内部
データバス、23はライト制御回路、および36〜38はpチ
ャネルMOSトランジスタである。
【0039】次に、図2、図3、図4および図5を用い
て、各部の構成と動作を説明する。ここで図2はステー
ジカウンタ32の詳細回路図、図3はIC(0)11〜IC
(3)14 (割込み要求信号制御装置) の詳細回路図、図
4はICISPR40 (現在実行中割込み制御装置) の詳
細回路図、および図5はICNMI45 (禁止不可割込み
要求信号制御回路) の詳細回路図である。
【0040】図1および図3において、従来例の図13と
同一の参照番号で示す手段は同一の動作を行う。ここで
は、異なる部分だけの説明を行う。
【0041】図1において、ステージカウンタ32は、割
込み要求の優先順位レベルをスキャンするタイミング信
号であるSTG(1)、STG(2)およびSTG
(3)信号ならびにINTRQ信号を出力するタイミン
グを決めるSTG(0)信号を発生し、タイミング制御
を行う。
【0042】ISPR16は、IC(0)11、IC(1)
12、CPU(2)13およびIC(3)14から出力される
優先順位レベルをOEVC信号が「1」となるタイミン
グで読み込み、次のCLK信号に同期してISPR16に
記憶されている優先順位レベルの最も高い値をエンコー
ドしたISPR(1)信号42およびISPR(0)信号
41として出力する。また、ISPR16は、OEVC信号
が「1」となると、ICNMI45から出力されるRA信
号を読み込む。ここで、RA信号はベクタテーブルを作
成する信号である。
【0043】さらに、ISPR16は、割込み要求信号I
NT(0)〜INT(3)が何も受付けられていないと
き、あるいは、ICNMI45からRA信号「1」が出力
され、ISPR16内にラッチされている間は、ISPR
16に優先順位が記憶されていない場合には「0」、記憶
されている場合は「1」が出力されるISPRの記憶有
無識別信号であるENISPR信号43を「0」にし、I
SPR16に優先順位レベルが記憶されていて、かつ、I
CNMI45からのRA信号「1」をISPR16内にラッ
チしていない場合は、ENISPR信号43は「1」にす
る。ISPR16は、ISPR中の最高レベルクリア信号
であるCLRIP信号により現在の優先順位レベルをク
リアして一つ前の優先順位レベルを出力する。さらに、
ISPR16は、ICNMI45からのRA信号「1」をラ
ッチしている間、NMI割込み処理中に他の全ての割込
みを禁止する(「0」のとき禁止)他割込み禁止信号で
あるNMIDI信号46を「0」にしてアンド回路47の出
力を「0」にする。ここで、ISPR(1)信号42は
「2」の重みで、ISPR(0)信号41は「1」の重み
を示す。
【0044】出力回路18a はSTG(3)信号のタイミ
ングのCLK信号が「0」のとき、オア回路22の出力を
読み込み、次のCLK信号のタイミングで出力し、タイ
ミング信号STG(0)のタイミングでアンド回路34を
介してINTRQ信号を出力する。また、出力回路18a
はRESET信号とCLRIF信号により「0」に初期
化される。pチャネルMOSトランジスタ36、37および
38はCLK信号が「1」のとき、インバータ33の出力が
「0」となることで導通し、VDDレベルすなわち「1」
が、ベクタ割込み要求検出信号であるSLPRH信号、
ならびに割込みの優先順位判別信号であるCM(1)信
号およびCM(2)信号に印加される。また、nチャネ
ルMOSトランジスタ48はCLK信号が「1」の間遮断
され、ディフォルトの優先順位判別信号であるCMOT
信号とCMIN信号のレベルを保持する。SLPRH信
号、CM(1)、およびCM(2)信号にはそれぞれ図
外のコンデンサが付加されていて、CLK信号が「1」
の間に「1」、「1」、「1」に充電される。(以下、
「プリチャージされる」という。)
【0045】IC(3)14のCMOT信号とIC(2)
13のCMIN信号とを接続し、同様に、IC(2)13の
CMOT信号とIC(1)12のCMIN信号、IC
(1)12のCMOT信号とIC(0)11のCMIN信
号、IC(0)11のCMOT信号とICISPR40のC
MIN信号、ならびにICISPR40のCMOT信号と
ICNMI45のCMIN信号をそれぞれ接続し、ICN
MI45のCMOT信号はnチャネルMOSトランジスタ
48を通して接地電位GNDに接続する。
【0046】図2はステージカウンタ32の詳細を示す回
路図である。
【0047】初期状態においてRESET信号が「1」
になると、CLK信号が「0」になるタイミングでラッ
チ321 は「1」、ラッチ323 および325 は「0」および
RSラッチ327 は「0」に初期化される。すると次のC
LK信号が「1」のタイミングでは、ラッチ322 が
「1」、ラッチ324 および326 は「0」となる。次に、
CLK信号が「0」になると、ラッチ322 の出力「1」
はアンド回路330 を介してCLK信号が「0」のときラ
ッチ323 に読み込まれる。同様にして、CLK信号が
「1」のときラッチ323 の出力をラッチ324 が読み込ん
で「1」となり、アンド回路331 を介してCLK信号が
「0」のときラッチ325 に読み込まれる。
【0048】いま、CLRIF信号が「0」、SLPR
H信号が「1」とすると、インバータ341 の出力が
「0」となりアンド回路332 の出力が「0」となるた
め、RSラッチ327 は「0」のままである。アンド回路
339 および340 は「0」、オア回路338 は「0」のた
め、CLK信号が「0」となると、ラッチ322 は
「0」、ラッチ324 は「1」、アンド回路343 は「1」
となり、STG(2)信号が「1」になる。また、次の
CLK信号が「0」のときラッチ325 は「1」になり、
そのCLK信号が「1」になるとラッチ325 は「0」、
ラッチ326 は「1」となり、CLK信号が「0」のとき
アンド回路344 は「1」となりSTG(3)信号が
「1」になる。SLPRH信号が「0」の間は、RSラ
ッチ327 は「1」になることがなく、ラッチ321 および
322 とラッチ323 および324 とラッチ325 および326 と
の間で交互に「1」と「0」とが順次繰り返すので、S
TG(1)信号とSTG(2)信号とSTG(3)信号
とが順番に出力される。
【0049】SLPRH信号が「1」になると、インバ
ータ341 の出力が「1」となり、ラッチ326 の出力が
「1」で、CLK信号が「0」のときRSラッチ327 が
「1」にセットされる。次に、CLK信号が「1」とな
るとラッチ328 は「1」となり、STG(0)信号が出
力される。次に、SLPRH信号が「1」となるとアン
ド回路339 が「0」となるので、オア回路338 は「0」
となり、CLRIF信号が「1」になるまでSTG
(1)信号は出力されない。
【0050】次に、CLRIF信号が「1」となると、
アンド回路340 が「1」となるのでCLK信号が「0」
となるとラッチ321 が「1」になる。CLRIF信号に
よりオア回路333 が「1」となるため、RSラッチ327
が「0」にリセットされる。従って、STG(0)信号
に続いてSTG(1)信号が出力される。
【0051】次に、図3を用いて代表としてIC(0)
11の動作を説明する。
【0052】INT(0)信号が入力されてマスクビッ
ト111 が「0」、EI信号が「1」のとき、アンド回路
114 の出力が「1」になる。プライオリティビット116
は「2」の重み、プライオリティビット117 は「1」の
重みである。プライオリティビット116 の内容が「0」
のときインバータ120 の出力が「1」になる。STG
(1)信号が「1」となるとCLK信号が「0」のタイ
ミングでアンド回路121 の出力が「1」となり、nチャ
ネルMOSトランジスタ122 が導通してCM(1)信号
を「0」にする。CM(1)信号はCLK信号が「1」
のときプリチャージされていて「1」となっているが、
アンド回路121 が「1」となると「0」になる。同時
に、オア回路124 およびアンド回路125を介してRSラ
ッチ126 が「1」にセットされる。
【0053】次に、CLK信号が「1」となると、ラッ
チ127 が「1」となり、STG(3)信号が「1」とな
るときにアンド回路141 が「1」になる。インバータ14
2 が「0」になるとnチャネルMOSトランジスタ144
が導通せず、前のCLK信号の「0」により導通したp
チャネルMOSトランジスタ146 でプリチャージしたC
MIN信号と、ICISPR40を介してGNDに接続さ
れたCMOT信号が「0」のときのインバータ145 の出
力が「1」になり、アンド回路143 が「1」となって、
RA信号を出力する。
【0054】プライオリティビット117 が「0」でラッ
チ127 が「1」のとき、STG(2)信号が「1」とな
るとCLK信号が「0」のタイミングでアンド回路128
が「1」となり、nチャネルMOSトランジスタ129 が
導通しCM(2)信号を「0」にする。CM(2)信号
はCLK信号が「1」のときプリチャージされていて
「1」となっているが、アンド回路128 が「1」となる
と「0」となる。
【0055】アンド回路132 はプライオリティビット11
7 が「1」CM(2)信号が「0」でSTG(2)信号
が「1」のとき出力が「1」となる。また、アンド回路
149 は、RA信号が「0」で、CLK信号が「0」のS
TG(3)信号が「1」のタイミングで「1」となる。
オア回路140 は、アンド回路132 の出力が「1」また
は、RESET信号が「1 」、もしくはCLRIF信号
が「1」で、アンド回路149 が「1」のときに「1」と
なり、かつ、次のCLK信号が「0」のタイミングでR
Sラッチ126 は「0」に初期化される。
【0056】オア回路140 の出力が「0」のときインバ
ータ133 の出力が「1」となり、ラッチ127 の出力が
「1」でSTG(3)信号が「1」のときアンド回路13
5 の出力が「0」となるので、nチャネルMOSトラン
ジスタ134 が導通し、SLPRH信号を「0」にする。
ラッチ127 の出力が「1 」でSTG(1)、(2)およ
び(3)信号が「0」のとき、つまりSTG(0)信号
が「1」のとき、アンド回路136 が「1」となり、プラ
イオリティビット116 およひ117 の出力がそれぞれ出力
バッファ138 および139 を介してPR(1)およびPR
(0)信号上に読み出される。
【0057】次に、ICISPR40の説明を図4を用い
て説明する。
【0058】図4において、図3と下二桁が同じ参照番
号の回路は同じ動作をする。図3と図4の違いは、図3
のアンド回路114 の出力がENISPR信号に置き換わ
り、プライオリティビット116 および117 の出力がIS
PR(1)およびISPR(0)信号に置き換わり、ア
ンド回路110 、132 、135 および136 と、オア回路140
と、nチャネルMOSトランジスタ134 および144 と、
インバータ131 および133 と、ノア回路137 とが削除さ
れて、RA信号がないだけ他の回路は全く同一の構成で
ある。
【0059】次に、ICNMI45の動作を図5を用いて
説明する。
【0060】RSラッチ512 はNMI信号が「1」のと
きにセットされ、リセットされるのはRESET信号が
入ってきたとき、またはCLRIF信号が「1」でRS
ラッチ512 の出力Qが「1」でアンド回路510 の出力が
「1」となったときである。アンド回路541 の出力が
「1 」となるのは、RSラッチ512 の出力Qが「1」で
STG(3)信号のタイミングで「1」となりインバー
タ542 を介してnチャネルMOSトランジスタ544 を遮
断する。また、CMOT信号は直接GNDに接続されて
いるので「0」で、CMIN信号はCLK信号が「1」
のタイミングでプリチャージされているので「1」とな
り、アンド回路543 からのRA信号は「1」となる。R
A信号が「0」のとき、アンド回路549 の出力はSTG
(3)信号が「1」、CLK信号が「0」のタイミング
で「1」となる。
【0061】オア回路500 は、CLRIF信号が「1」
またはRESET信号が「1」、またはアンド回路549
の出力が「1」のときに出力「1」となる。アンド回路
535 は、RSラッチ512 の出力Qが「1」、インバータ
533 の出力が「1」(オア回路500 の出力が「0」)で
STG(3)信号が「1」、CLK信号が「0」のタイ
ミングで出力「1」となり、nチャネルMOSトランジ
スタ534 が導通するので、SLPRH信号が「0」とな
る。
【0062】また、ICNMI45に入力されるNMI信
号は、ICNMI45内部にプライオリティビットと割込
み要求をマスクするマスクビットを持たず、EI信号の
影響を受けないので、受付けを禁止することが不可能な
割込み要求信号となる。
【0063】次に、図1の動作を図6に示すタイミング
チャートを用いて説明する。
【0064】いま、INT(0)、INT(1)、IN
T(2)およびINT(3)信号の各マスクビットがそ
れぞれ「0」、「0」、「0」、「0」に、プライオリ
ティビット116 、117 がそれぞれ「1、0」(優先順位
レベル2)、「1、0」(優先順位レベル2)、「0、
0」(優先順位レベル0)、「0、1」(優先順位レベ
ル1)に設定されている場合を考える(従来例と同
じ)。また、EI信号も「1」となっている。
【0065】STG(1)信号とSTG(2)信号とS
TG(3)信号が順次「1」と「0」とを交互に繰り返
して出力しており、T3タイミングでINT(1)信号
が「1」となると割込み要求フラグ112 が「1」とな
る。このとき、割込み要求信号が全く受付けられておら
ずISPR16の出力ENISPR信号43は「0」となっ
ているので、ICISPR40のアンド回路421 は「0」
のままである。同様にIC(0)11、IC(2)13、I
C(3)14のアンド回路121 に対応する回路の出力は
「0」、「0」、「0」であるため、CM(1)信号は
「1」のままとなる。するとT4タイミングではRSラ
ッチ126 はCLK信号が「0」のタイミングで「1」と
なる。
【0066】T6タイミングでは、ラッチ127 の出力が
「1」となりSTG(3)信号が「1」になるタイミン
グでアンド回路141 の出力が「1」となり、前のCLK
信号が「1」でプリチャージされたCMIN信号をnチ
ャネルMOSトランジスタ144 で遮断し、ICISPR
40およびIC(0)11のインバータ142 が「1」のため
GNDから直接接続されているインバータ145 の出力の
「1」と、プリチャージによって「1」となっているC
MIN信号とによりアンド回路143 の出力が、つまりR
A信号が「1」となる。アンド回路128 の出力はプライ
オリティビット117 が「1」のため「0」となるのでC
M(2)信号は「1」となる。アンド回路132 の出力は
CM(2)信号が「1」となりインバータ131 が「0」
のためRSラッチ126 はリセットされない。INT
(1)信号に対応するRA信号が「1」のため、T6タ
イミングでCLK信号が「0」になると出力回路18a が
「1」となる。また、STG(3)信号が「1」となる
タイミングでアンド回路135 の出力は「1」、SLPR
H信号は「0」となり、T7タイミングでSTG(0)
信号が発生する。T7タイミングでSTG(0)信号が
「1」であり出力回路18a 出力が「1」となるのでIN
TRQ信号が「1」となり、CPU2に割込み処理を要
求する。
【0067】次に、T9タイミングで、CPU2よりO
EVC信号が出力されると、INT(1)信号に対応す
るベクタアドレスが出力バッファ19を介して内部データ
バス20上に読み出されるとともに、INT(1)信号の
プライオリティビット116 および117 の内容がPR
(1)およびPR(0)信号上に読み出され、ISPR
16に読み込まれる。
【0068】T10タイミングでは、ISPR16の出力が
優先順位レベル2となり、ISPR(1)信号42が
「1」、ISPR(0)信号41が「0」、ENISPR
信号43が「1」になる。また、CPU2 からCLRIF
信号が出力される。CLK信号が「0」となるとRSラ
ッチ327 が「0」になりまたラッチ328 が「0」とな
る。次にT11タイミングではSTG(1)信号が発生す
る。
【0069】T13タイミングでINT(2)信号が発生
した場合は、T14タイミングにおいて、IC(2)13の
アンド回路121 に対応する回路が「1」になり、CLK
信号が「0」のタイミングでIC(2)13のRSラッチ
126 に対応する回路が「1」となる。アンド回路421 は
「0」であり、またアンド回路425 の出力は「0」であ
るので、RSラッチ426 は「0」のままである。以下、
INT(1)信号の場合と同様に、STG(2)、ST
G(3)およびSTG(0)信号がT15、T16およびT
17タイミングで発生し、T16の次のタイミング(T17)
でINTRQ信号が「1」となる。
【0070】次に、CPU2がOEVC信号を「1」に
すると、ISPR16が優先順位レベル0を読み込む。つ
まり優先順位の高い割込みを受付ける。また、CLRI
F信号によりステージカウンタ32はSTG(1)信号か
ら出力する。
【0071】次に、T19タイミングでINT(3)信号
が発生した場合は、T20タイミングにおいてINT
(3)信号に対応する優先順位のチェックが始まる。T
20タイミングではISPR16の出力であるISPR
(1)42、ISPR(0)41信号はそれぞれ「0」、
「0」となっているため、アンド回路421 が「1」とな
り、CM(1)信号が「0」となる。すると、IC
(3)14のアンド回路125 に対応する回路の出力が
「0」のままであるため、IC(3)14のRSラッチ12
6 に対応する回路は「0」のままであり、T22タイミン
グになってもIC(3)14のRA信号は「0」のままで
ある。また、T23タイミングにINTRQ信号も発生し
ない。従って、優先順位レベル1のINT(3)信号は
優先順位レベル0のINT(1)信号の割込み処理中に
割り込めない。T23タイミングでCLRIP信号が出力
されるとISPR16の内容が一つ前の優先順位レベル2
となる。
【0072】次に、T26タイミングでINT(0)信号
が発生した場合は、T27タイミングでは、ISPR16の
出力ISPR(1)42、ISPR(0)41信号はそれぞ
れ「1」、「0」となっているため、アンド回路421 が
「0」となり、CM(1)信号が「1」になる。アンド
回路425 の出力が「1」になりRSラッチ426 がセット
されCLK信号が「1」になるタイミングでラッチ427
の出力は「1」となる。ISPR(0)信号41が「0」
のためインバータ423 が「1」に、アンド回路428 の出
力は「1」になり、T28タイミングでSTG(2)信号
が出力されると、CM(2)信号は「0」になる。しか
し、ISPR(0)信号が「0」のため、アンド回路43
2 の出力は「0」のままなので、オア回路440 の出力は
「0」となりRSラッチ426 はリセットされない。
【0073】INT(0)信号の優先順位レベル(レベ
ル2)が同じなのでプライオリティビット116 および11
7 は同一で、IC(0)11の回路も同様に動作し、ラッ
チ127 の出力は「1」となる。STG(3)信号が
「1」となるタイミングでICISPR40のアンド回路
441 とIC(0)11のアンド回路141 の出力が「1」と
なり、インバータ442 とインバータ142 の出力が「0」
となって、nチャネルMOSトランジスタ444 と144 が
遮断される。
【0074】従って、CLK信号が「1」となるタイミ
ングでプリチャージされたCMIN信号およびCMOT
信号のGNDに接続されているICISPR40のCMO
T信号だけが「0」となり、ICISPR40のCMIN
信号とIC(0)11のCMIN信号およびCMOT信号
は「1」のままとなる。ICISPR40のインバータ44
5 の出力が「1」となり、アンド回路443 の出力は
「1」となって、インバータ448 の出力は「0」、アン
ド回路449 の出力も「0」となってオア回路440の出力
は「0」となる。
【0075】IC(0)11では、インバータ145 の出力
が「0」となり、アンド回路143 の出力が「0」となる
のでRA信号は「0」のままである。同時に、インバー
タ148 の出力が「1」となり、アンド回路149 の出力が
「1」となってオア回路140 の出力を「1」にし、ラッ
チ126 をリセットする。つまり、INT(0)信号の割
込みが受付けられず、INTRQ信号も出力されない。
【0076】T29タイミングで、NMI信号が発生した
場合、ICNMI45はプライオリティ制御、マスクビッ
トおよびEI信号の影響を受けないので、T30のタイミ
ングでSTG(1)信号が「1」のとき、無条件にアン
ド回路541 の出力は「1」となり、インバータ542 を介
してnチャネルMOSトランジスタ544 を遮断する。T
32タイミングにおいて、STG(3)信号が「1」でC
LK信号が「0」のときにRSラッチ512 の出力Qが
「1」となっているので、アンド回路535 の出力が
「1」となり、nチャネルMOSトランジスタ534 が導
通し、SLPRH信号は「0」となる。
【0077】さらに、T32タイミングで、CMIN信号
は直前のCLK信号が「1」のときにプリチャージされ
ているため「1」を保持していて、ICNMI45のCM
OT信号は直接GNDに接続されているので「0」で、
アンド回路543 からのRA信号が「1」となり、T33タ
イミングのSTG(0)信号が「1」のときにINTR
Q信号をCPU2に出力する。
【0078】次に、タイミングチャートは示さないが、
現在何も割込みを受付けていないときに、優先順位レベ
ル0、プライオリティビット116 、117 が「0」、
「0」のINT(0)信号とINT(1)信号とが発生
した場合、つまり同一優先順位レベルの二つの割込み信
号が発生した場合は、同様に、STG(3)信号が
「1」のタイミングでIC(0)11とIC(1)12のア
ンド回路141 の出力が「1」となり、インバータ142 の
出力が「0」となるので、nチャネルMOSトランジス
タ144 が遮断される。
【0079】いま、割込みを何も受付けていないので、
ICISPR40のラッチ427 の出力は「0」となってい
るのでアンド回路441 の出力は「0」でインバータ442
の出力が「1」となりnチャネルMOSトランジスタ44
4 は導通していて、同様にICNMI45のnチャネルM
OSトランジスタ544 も導通しているので、IC(0)
11のCMOT信号はGNDに接続され「0」となり、I
C(0)11のCMIN信号とIC(1)12のCMOT信
号およびCMIN信号は「1」なので、IC(0)11の
インバータ145 の出力だけが「1」なのでアンド回路14
3 の出力、つまりINT(0)に対するRA信号は
「1」となる。しかし、IC(1)12のインバータ145
の出力は「0」になり、アンド回路143 の出力、つまり
INT(1)に対するRA信号は「0」となる。従っ
て、同一優先順位レベルのINT(0)信号とINT
(1)信号とが同時に発生してもINT(0)信号の方
が優先される。
【0080】また、何も割込みを受付けていないとき
に、優先順位レベル0、プライオリティビット116 およ
び117 が「0」、「0」のINT(0)信号と、NMI
割込み信号とが同時に入ってきた場合、STG(3)信
号のタイミングでIC(0)11のアンド回路141 が
「1」となり、また、ICNMI45のアンド回路541 も
「1」となる。その結果、IC(0)11のnチャネルM
OSトランジスタ144 が遮断され、CLK信号が「1」
のときのプリチャージによりCMIN信号は「1」とな
っている。さらに、ICNMI45のnチャネルMOSト
ランジスタ544が遮断され、CLK信号が「1」のとき
のプリチャージによりCMIN信号は「1」となってい
るが、IC(0)11のCMOT信号とICNMI45のC
MIN信号は接続されているので、IC(0)11のCM
OT信号は「1」となる。よって、IC(0)11のアン
ド回路143 からのRA信号は「0」のままで、INT
(0)信号は受付けられない。また、ICNMI45のC
MOT信号は直接GNDに接続されているので「0」と
なり、ICNMI45のアンド回路543 からのRA信号が
「1」となり、NMI信号が優先される。
【0081】優先順位レベル0の割込みが既に受付けら
れているときに、NMI信号が入ってきた場合は、前記
のIC(0)11と全く同じ理由でICISPR40のアン
ド回路443 の出力は「1」にはならなく、ICNMI45
のアンド回路543 はSTG(3)信号のタイミングで
「1」を出力し、STG(0)信号に同期してINTR
Q信号をCPU2に出力し、NMI信号は優先順位レベ
ル0の割込み処理中でも割込むことができる。また、I
CNMI45からRA信号「1」が出力されると、ISP
R16は、ENISPR信号43を「0」にするので、アン
ド回路425 および421 の出力は「0」に固定されRSラ
ッチ426 はセットされない。また、ISPR16はNMI
DI信号46「0」を出力し、アンド回路47の出力が
「0」となるため、IC(0)11、IC(1)12、IC
(2)13およびIC(3)14内のアンド回路114 の出力
が「0」に固定され、INT(0)、INT(1)、I
NT(2)およびINT(3)信号の割込み信号は受付
けられなくなる。つまり、NMI信号が最高の優先度を
持つ割込み信号となる。
【0082】以上のように、優先順位レベルの低い割込
み要求の処理中に優先順位の高い割込み要求の処理が割
り込める制御を、プライオリティビットの重みの大きい
方から、重み別で優先順位をスキャンするため、従来の
INTCにくらべて高速に応答することができ、さら
に、現在受付中の割込み処理と同一の優先順位レベルの
割込みが発生した場合は割込みを受付けなかったり、同
一優先順位レベルの二つ以上の割込みが同時に発生した
場合でも、回路によって設定された優先順位(以下、
「ディフォルト値」という。)が高い方、図1のNM
I、INT(0)、INT(1)、INT(2)、IN
T(3)信号の順位で割込みを受付けて、ディフォルト
値の低い割込みを受付けない制御を行う。さらに、IC
NMI45を図1のように配置することにより、NMI信
号は優先順位レベル0の割込み信号と競合しても優先さ
れ、優先順位レベル0の割込みが既に受付けられている
場合でも割込むことができ、禁止が不可能な最高の優先
順位の特別な割込みとなり、しかも、ICNMI45はI
C(0)11、IC(1)12、IC(2)13およびIC
(3)14と全く同一の制御で特別な制御を必要としな
い。
【0083】従って、本第一実施例は、種々の割込み要
求のさまざまな割込み要求処理に対して、高速に、かつ
柔軟な対応ができる。
【0084】図7は本発明の第二実施例を示すブロック
構成図で、図8はそのステージカウンタ32の詳細回路
図、図9はIC(0)11〜IC(3)14の詳細回路図、
および図10はICISPR40の詳細回路図である。
【0085】本第二実施例は、前述の第一実施例と比較
して、優先順位レベルが8レベルになっているが、優先
順位が8レベルの制御以外は全く同一の制御であり、同
一参照番号がつけられた回路は同様の動作を行う。
【0086】図7において、図1との違いは、ステージ
カウンタ32からSTG(4)信号が出力され、また、I
C(0)11、IC(1)12、IC(2)13およびIC
(3)14に共通にCM(3)信号が入力されていること
である。CM(3)信号にはCM(1)、CM(2)信
号と同様にプリチャージするpチャネルMOSトランジ
スタ39が接続されている。また、IC(0)11、IC
(1)12、IC(2)13およびIC(3)14はともにP
R(2)信号49に接続され、PR(2)信号49はISP
R16に入力されている。ISPR16からはISPR
(2)信号44がICISPR40に対し出力されている。
PR(2)信号49はプライオリティビットの「4」の重
みを示す信号で、また、ISPR(2)信号44はISP
R16の「4」の重みを示す信号である。
【0087】図8において、図2に対し、アンド回路34
7 と、インバータ348 と、ラッチ345 および346 と、ア
ンド回路349 とが追加され、出力としてSTG(4)信
号が追加される。このステージカウンタ32は、図2とほ
ぼ同様に動作するが、STG(3)信号の次はSTG
(4)信号が発生するため、通常STG(1)→STG
(2)→STG(3)→STG(4)→STG(1)…
のようにタイミング信号が発生する。
【0088】図9において、図3に対しCM(3)信号
およびSTG(4)信号と、インバータ150 および154
と、アンド回路151 および153 と、nチャネルMOSト
ランジスタ152 と、出力バッファ155 と、プライオリテ
ィビット115 とが追加されている。また、ノア回路137
にSTG(4)信号が入力されている。インバータ120
および123 にはそれぞれプライオリティビット115 およ
び116 がプライオリティビット116 および117 に代わり
入力されている。プライオリティビット115 は「4」の
重みを示し、プライオリティビット115 、116 および11
7 で0〜7の8レベルの優先順位を表す。従って、優先
順位レベルのスキャンは「4」の重みがSTG(1)信
号、「2」の重みがSTG(2)信号、「1」の重みが
STG(3)信号によりスキャンされる。
【0089】図9の動作は、プライオリティビットが1
ビット追加された以外は図3と同じで、STG(4)信
号が発生したときに、RSラッチ126 が「0」にリセッ
トされないとSLPRH信号が「1」となるので、次の
タイミングでSTG(0)信号が発生し、割込み要求が
受付けられたことになる。
【0090】図10において、図4に対し、CM(3)信
号およびSTG(4)信号と、インバータ450 および45
4 と、アンド回路451 および453 と、nチャネルMOS
トランジスタ452 とが追加されている。また、ISPR
(2)信号がインバータ420 に、ISPR(1)信号が
インバータ423 に、ISPR(0)信号がインバータ45
0 に入力されている。図9と同様に、図10では「4」の
重みから優先順位レベルのスキャンを行う構成になって
いる。
【0091】図11は図5に対して、STG(3)信号が
STG(4)信号になっただけで、回路構成上は全く同
一構成である。図11のICNMI40の動作は、図5の4
レベルのスキャン動作が8レベルの動作になったのみで
基本動作は図5と同じである。
【0092】以上のように、本第二実施例では、「4」
の重み→「2」の重み→「1」の重みと3タイミングで
8レベルの優先順位を制御する場合でも、STG(4)
信号が出力するタイミングで第一実施例と同様に、IC
NMI45のCMOT信号をGNDに接続して、ICIS
PR40、IC(0)11、IC(1)12、IC(2)13お
よびIC(3)14のCMOT信号と、CMIN信号とを
それぞれ接続することによって、同一優先順位レベルの
二つ以上の割込み要求に対し、ディフォルト値による優
先順位の制御を1タイミングでスキャンすることができ
る。
【0093】以上から、優先順位レベルが16レベル(2
4 ) となると、5タイミングでスキャンできることが容
易に分かる。
【0094】従って、2n レベルの優先順位レベルは、
n+1タイミングで割込み要求に対しての優先順位判別
制御ができることは明らかである。
【0095】
【発明の効果】以上、説明したように本発明の割込みコ
ントローラは、優先順位レベルのレベル数が2n 以内の
場合に、優先順位レベルのスキャンを2n →2n-1 →…
0 の順序で順次行い、次に、ディフォルト値による優
先順位を1タイミングでスキャンすることで、わずかn
+1回のタイミングで、同一優先順位レベルであっても
ディフォルト値によって、禁止が可能な割込み信号のう
ち、最も高い優先順位を持つ割込み信号を検出すること
ができ、さらに、禁止が不可能でかつ全ての割込みの中
で最も優先順位の高いNMI信号にも対応することがで
きる。
【0096】従って、本発明によれば、リアルタイム処
理を行うマイクロコンピュータに最適な種々の割込み要
求のさまざまな割込み要求処理に対し、高速に、かつ柔
軟な対応ができる割込みコントローラを提供することが
でき、その効果は大である。
【図面の簡単な説明】
【図1】 本発明の第一実施例を示すブロック構成図。
【図2】 図1のステージカウンタの詳細回路図。
【図3】 図1の割込み要求信号制御回路の詳細回路
図。
【図4】 図1の実行中割込み要求信号制御回路の詳細
回路図。
【図5】 図1のNMI割込み要求信号制御回路の詳細
回路図。
【図6】 図1の動作タイミングチャート。
【図7】 本発明の第二実施例を示すブロック構成図。
【図8】 図7のステージカウンタの詳細回路図。
【図9】 図7の割込み要求信号制御回路の詳細回路
図。
【図10】 図7の実行中割込み要求制御回路の詳細回路
図。
【図11】 図7のNMI割込み要求信号制御回路の詳細
回路図。
【図12】 一般のマイクロコンピュータを示すブロック
構成図。
【図13】 従来例を示すブロック構成図。
【図14】 図13の動作タイミングチャート。
【符号の説明】
1 マイクロコンピュータ 2 中央演算装置(CPU) 3 メモリ 4 割込みコントローラ(INTC) 5 周辺機能ブロック 6 内部バス 7 割込み要求信号(INT(0)〜INT(3)) 8 割込み処理要求信号(INTRQ信号) 9 制御信号 11 割込み要求信号制御装置(0)(IC(0)) 12 割込み要求信号制御装置(1)(IC(1)) 13 割込み要求信号制御装置(2)(IC(2)) 14 割込み要求信号制御装置(3)(IC(3)) 15 スキャンカウンタ 16 実行中優先順位レジスタ (ISPR) 17 ベクタアドレステーブル 18、118 比較器 18a 出力回路 19、155 出力バッファ 20 内部データバス 21、33、119 、120 、123 、130 、131 、133 、142 、
145 、147 、148 、150 、154 、334 、335 、341 、34
8 、420 、423 、430 、431 、442 、445 、447 、448
、450 、454 、533 、542 、545 、547 、548 イ
ンバータ 22、113 、124 、140 、329 、333 、338 、424 、440
、500 、513オア回路 23 ライト制御回路 24〜27 (ライト信号制御回路の)出力 28、29 スキャン信号 30 (ISPRの)出力 31 (オア回路22の) 出力 32 ステージカウンタ 34、35、47、110 、114 、115 、121 、125 、128 、13
2 、135 、136 、141 、143 、149 、151 、153 、330
、331 、332 、339 、340 、342 、343 、344 、347
、349 、421 、425 、428 、432 、441 、443 、449
、451 、453 、510 、535 、541 、543 、549 ア
ンド回路 36、37、38、39、146 、446 、546 pチャネルMOS
トランジスタ 40 現在実行中割込み制御装置 (ICISPR) 41 ISPR(0)信号 42 ISPR(1)信号 43 ENISPR信号 44 ISPR(2)信号 45 禁止不可割込み要求信号制御装置 (ICNMI) 46 NMIDI信号 48、122 、129 、134 、144 、152 、422 、429 、444
、452 、534、544 nチャネルMOSトランジスタ 49 PR(2)信号 111 マスクビットラッチ (マスクビット) 112 割込み要求フラグラッチ (割込み要求フラグ) 115 、116 、117 プライオリティビットラッチ (プ
ライオリティビット) 126 、327 、426 、512 RSラッチ 127 、321 〜326 、328 、345 、346 、427 ラッチ 137 ノア回路 138 、139 、155 出力バッファ CLK クロック信号 CLRIF 割込み要求フラグクリア信号 CLRIP ISPR中の最高レベルクリア信号 CM(1)〜CM(3) 割込み優先順位判別信号 CMIN、CMOT ディフォルトの優先順位判別信
号 EI ベクタ割込み許可・禁止指定信号 ENISPR ISPRの記憶有無識別信号 ISPR(0)〜ISPR(2) ISPRの出力信
号 INT、INT(0)〜INT(3) 割込み要求信
号 INTRQ 割込み処理要求信号 NMI 禁止不可割込み要求信号 NMIDI 他割込み禁止信号 OEVC ベクタアドレスISPR記憶信号 PR(0)〜PR(2) プライオリティビットラッ
チ出力信号 RA ベクタアドレステーブル作成信号 RESET リセット信号 SLPRH ベクタ割込み要求検出信号 STG(0)〜STG(4) タイミング信号
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平1−276241(JP,A) 特開 昭47−41541(JP,A)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数の割込み要求信号それぞれに対し2
    n レベルのうち任意の優先順位レベルに設定する複数の
    nビットのプライオリティレジスタと、 現在実行中の割込み処理の優先順位レジスタを記憶する
    nビットの実行中割込み順位レジスタと、 割込みの優先順位を走査するn+1のタイミング信号を
    順次繰り返し発生するステージカウンタと、 発生したすべての割込み要求信号の前記プライオリティ
    レジスタの内容と前記実行中割込み優先順位レジスタの
    内容とを最上位ビットから最下位ビットへn個のタイミ
    ングで比較して最も優先順位の高い割込みレジスタを検
    出し、最も優先順位の高い割込みレジスタの割込みが複
    数ある場合には、前記n個のタイミングに続く1タイミ
    ングであらかじめ定められた優先順位に従い、前記最も
    優先順位の高い割込みレベルの割込みのうち1の割込み
    を選択する手段と を備えた割込みコントローラであり、 さらに、前記すべての割込みに優先する禁止不可割込み
    信号入力手段を備え、 前記禁止不可割込み入力があった場合には、前記n個の
    タイミングに続く1タイミングで、他のすべての割込み
    に優先した前記禁止不可割込みを選択する手段を備えた
    ことを特徴とする割込みコントローラ。
JP2411472A 1990-11-02 1990-12-18 割込みコントローラ Expired - Lifetime JP2702290B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2411472A JP2702290B2 (ja) 1990-12-18 1990-12-18 割込みコントローラ
KR1019910019547A KR950014373B1 (ko) 1990-11-02 1991-11-02 인터럽트 제어기
EP91118767A EP0489260B1 (en) 1990-11-02 1991-11-04 Interrupt controller
DE69118833T DE69118833T2 (de) 1990-11-02 1991-11-04 Unterbrechungssteuerung
US08/110,495 US5481729A (en) 1990-11-02 1993-08-23 Interrupt controller that reduces the number of scans needed to identify priority

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2411472A JP2702290B2 (ja) 1990-12-18 1990-12-18 割込みコントローラ

Publications (2)

Publication Number Publication Date
JPH04217057A JPH04217057A (ja) 1992-08-07
JP2702290B2 true JP2702290B2 (ja) 1998-01-21

Family

ID=18520482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2411472A Expired - Lifetime JP2702290B2 (ja) 1990-11-02 1990-12-18 割込みコントローラ

Country Status (1)

Country Link
JP (1) JP2702290B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04235635A (ja) * 1991-01-09 1992-08-24 Nec Ic Microcomput Syst Ltd 割込みコントローラ

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01276241A (ja) * 1988-04-27 1989-11-06 Sharp Corp 多重割り込み装置

Also Published As

Publication number Publication date
JPH04217057A (ja) 1992-08-07

Similar Documents

Publication Publication Date Title
US7054983B2 (en) USB-HUB device and its control method
US5546567A (en) System for limiting change in bus clock frequency to duration of I/O operation upon completion signal
US4853848A (en) Block access system using cache memory
JP2702290B2 (ja) 割込みコントローラ
JPS635444A (ja) マイクロプロセツサ
US7177966B2 (en) Microcomputer minimizing influence of bus contention
US5247640A (en) Dual access control system including plural magnetic disk control units and contention control circuitry
US6202117B1 (en) Host adapter integrated circuit having autoaccess pause
JP2702291B2 (ja) 割込みコントローラ
US6535943B1 (en) Information processing device enabling floating interrupt to be pending and a method executing an interrupt condition change instruction
EP0489260B1 (en) Interrupt controller
JPH04302035A (ja) 割り込み制御装置
JPH0827725B2 (ja) レジスタ回路
JP2567988B2 (ja) 割込みコントローラ
JPH0337897A (ja) マイクロコンピュータ
US5179678A (en) Address/control signal input circuit for a cache controller which clamps the address/control signals to predetermined logic level clamp signal is received
US5151982A (en) Data processing system
JPH0528104A (ja) マルチプロセツサシステム
JP3169878B2 (ja) メモリ制御回路
JPH04235635A (ja) 割込みコントローラ
JP3093374B2 (ja) 割り込みコントローラ
JP2546002B2 (ja) パリティ回路
EP0306953A2 (en) Address/control signal input circuit for cache controller
JP2643609B2 (ja) 割り込み制御装置
JP2635863B2 (ja) 中央処理装置