JPH04326132A - マイクロコンピュータ - Google Patents

マイクロコンピュータ

Info

Publication number
JPH04326132A
JPH04326132A JP3096001A JP9600191A JPH04326132A JP H04326132 A JPH04326132 A JP H04326132A JP 3096001 A JP3096001 A JP 3096001A JP 9600191 A JP9600191 A JP 9600191A JP H04326132 A JPH04326132 A JP H04326132A
Authority
JP
Japan
Prior art keywords
interrupt
address
priority
interruption
cpu
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
JP3096001A
Other languages
English (en)
Inventor
Kyoji Ogata
尾形 亨二
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP3096001A priority Critical patent/JPH04326132A/ja
Publication of JPH04326132A publication Critical patent/JPH04326132A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はマイクロコンピュータに
関し、特に割込コントローラを備えたマイクロコンピュ
ータの多重割込制御方式に関する。
【0002】
【従来の技術】例えば図4に示すように8259の割込
コントローラ1を使用した8086マイクロプロセッサ
をCPU7とする従来のシステムでは、複数の割り込み
が発生した際の多重割込処理において、図5のフローチ
ャートに示すように割込発生A時点ですでに優先順位の
より高い他の割込が発生しているBの場合、上述の割込
の割込ルーチンが終了した後、(a)  再度割込コン
トローラ6よりCPU7に対して次の割込の許可を求め
るINT信号を出力し、(b)  CPU6からの割込
許可を示すINTAK信号が返ってから(c)  割込
ベクタ番号をCPUに渡した後、(d)  CPU1が
ベクタ番号に基づき割込ベクタ・テーブルのポインタ・
アドレスを計算し、(e)  外部メモリ上の割込ベク
タ領域をアクセスして割込ルーチンの先頭アドレスを得
ていた。
【0003】
【発明が解決しようとする課題】この従来のマイクロコ
ンピュータ割込制御をするのに割込発生時点でより優先
順位の高い割込要求が発生していた場合、優先順位の高
い割込処理の終了を待って新規にCPUに対して割込要
求信号を出力するので、割込ルーチンが開始するまでに
割込アクノリッジ・サイクルを含めた一連の処理に所定
の時間を要し、システム全体の即時性に対して支障を及
ぼしていた。
【0004】
【課題を解決するための手段】本発明のマイクロコンピ
ュータは、命令実行用のプログラム・アドレス・レジス
タの他に割込処理ルーチンの開始アドレスを格納する割
込専用プログラム・アドレク・レジスタを有し、かつ前
記割込専用プログラム・アドレス・レジスタ内には本ア
ドレス・レジスタに格納されているアドレスが現在有効
か否かを示すバリッド・ビットF/Fを備え、割込ベク
タ番号から割込ベクタ領域内のポインタ・アドレスを計
算するベクタ・アドレス演算ユニットを備え、かつ最高
優先順位の割込ルーチンの実行中に前記プログラム・ア
ドレス・レジスタに割込開始アドレスを格納するための
プリフェッチ制御ロジックをCPUに備え、また複数の
割込要因の優先順位を判定する優先決定ロジックを備え
た割込コントローラ、および割込ベクタ番号を前記割込
コトローラからCPU内実行ユニットに送る内部データ
・バスを備えている。
【0005】
【実施例】次に本発明について図面を参照して説明する
。図1は本発明の第1の実施例のブロック図である。 割込要求端子群2は外部からの割込要求信号を受け付け
る。割込コントローラ1は割込入力端子群2を介して外
部からの割込要求を受け付けて優先順位の判定,CPU
7に対する割込要求およびCPU7に対する割込ベクタ
の送信および割込要求元に対するアクノリッジ信号出力
を行なう。割込要求レジスタ3は割込端子群2の各割込
端子の入力状態を示し、各割込要因に対応した複数のビ
ット列より構成される各割込の発生状況を示す。割込優
先順位レジスタ4は各割込に対して優先順位を設定し、
使用者は個々の割込要因に対応した各ビットに対して任
意に優先順位の設定ができる。優先決定ロジック5は複
数の割込が発生した場合に割込優先順位レジスタ4を参
照することにより最初に実行する割込処理を判断する。
【0006】内部バス6は割込コントローラ1により選
択された最高優先割込のベクタ番号,および割込要求信
号および許可信号をCPU7との間で送受信する。CP
U7はプログラムの実行および内/外部ペリフェラルと
のデータの送受信等を行なう。内部バス8はCPU7内
の各ユニット間でデータの受け渡しを行なう。プリフェ
ッチ用の制御ロジック9はCPU7が演算処理等の内部
処理を行なっている間に、あらかじめ次の割込処理のた
めの開始アドレスを外部バス12を通してCPU7に読
込むために、そのタイミングを外部バスの制御ユニット
11に伝える。
【0007】ベクタ・アドレス演算ユニット10は割込
コントローラ1から送られた割込ベクタ番号から割込ベ
クタ領域のポインタ・アドレスを計算する。バス制御ユ
ニット11はCPU7と外部周辺デバイスとの信号の送
受信を行なう。外部バス12は本実施例ではアドレス,
データおよび制御信号の総称としている。割込処理専用
のプログラム・アドレス・レジスタ(INTPC)13
は次に実行すべき割込処理ルーチンの開始アドレスを格
納する。割込専用プログラム・アドレス・レジスタ13
に格納されているアドレスが有効か否かを示すバリッド
・ビットF/F14は、新規にアドレスが格納された時
にビットがセットされ実行ユニット16により読み出さ
れた時点でリセットされる。
【0008】実行ユニット16はバリッド・ビットF/
F14を参照しバリッド・ビットがセットされている場
合に限って、現在の割込処理終了後に割込用プログラム
・アドレス・レジスタ13を読みに行く。従来のプログ
ラム・アドレス・レジスタ15は命令実行時に常時次の
アドレスを示す。実行ユニット16はバス制御ユニット
11と独立して演算処理を行なう。本ユニットがバス制
御ユニット11と独立していることはプリフェッチを可
能にす必要条件の一つといえる。
【0009】次に、本実施例における一連の割込受付処
理を図1のブロック図および図2のフローチャートを用
いて説明する。(A)外部に複数の割込が発生すると、
割込要求端子2により受け付けられ、各割込要求に応じ
て割込要求レジスタ3のビットがセットされる。(B)
次に割込優先順位レジスタ4を参照することにより優先
決定ロジック5が割込の優先順位を決定する。18(a
)に示すように、ロジック5によりまず最高優先順位の
割込が選択され、CPU部7へ割込要求(INT)信号
6aを出力する。(b)割込コントローラ1はCPU7
部7から割込許可(INTAK)信号6bが返った後に
、(c)内部バス6を通してCPU部7に割込要求に対
応した割込ベクタ番号を送る。CPU部7ではその後、
(d)CPU内部バス8を通してベクタ番号をベクタ・
アドレス演算ユニット10に送り、続いて割り込みベク
タ領域におけるポインタ・アドレスが計算される。
【0010】(e)バス制御ユニット11はポインタ・
アドレスに該当する外部メモリをアクセスし、(F)割
込処理ルーチンの開始アドレスを読み込むとともに、開
始アドレスを割込用プログラム・アドレス・レジスタ1
3に格納する。本時点において、(G)割込用プログラ
ム・アドレス・レジスタ13内のバリッド・ビット14
がセットされる。(h)次いで実行ユニット16はバリ
ッド・ビット14がセットされていることに基づいて割
込用プログラム・アドレス・レジスタを参照しその内容
をPC15へ転送することによって最高優先割込ルーチ
ンが実行される。この時点でバリッド・ビット14はク
リアされる。この時点でINTPC14は次の割込アド
レスを受け付けられる状態になり、(J)次のシーケン
スに入る。
【0011】この時割込コントローラ6は最高優先割込
ルーチン18の実行中に(B1)に示すように第2優先
順位の割込を選択し、(C1)前回と同様に内部バス6
を通して割込のベクタ番号がCPU部7に送られ、(d
1)ベクタ・アドレス演算ユニット10内で割込ポイン
タ・アドレスに変換された後、(G)プリフェッチ制御
ロジック9により外部バス11の空きが確認された時、
バス制御ユニット11により外部バス12を通してシス
テム上にある外部メモリ内の割込ベクタ領域から読み出
すことにより第2優先順位の割込ルーチン開始アドレス
をCPU内INTPCレジタ13に格納する。この際同
時にバリッド・ビット14が再度セットされる。この結
果CPU内実行ユニット16は先の最高優先割込の終了
後、INTPCレジスタ13を参照することにより、即
時に次の割込処理ルーチンに遷移することができる。
【0012】すなわち、第2優先順位の割込に対する割
込処理フロー19に示した一連の処理では、(B1)ま
ず優先決定ロジックにより第2優先割込が選択され、(
C1)次いでその割込に対応したベクタ番号がCPUに
渡される。(e1)その後そのベクタ番号に対応した外
部メモリ領域がアクセスされることにより、(F)割込
処理ルーチンの先頭アドレスが読み込まれ、(G)IN
TPCレジスタに格納される。以上の処理フロー19は
最高優先割込処理フロー18と並行して実行される。
【0013】図3は本発明の第2の実施例のブロック図
である。本実施例は割込コントローラ1aにおいて各割
込要因の優先順位をあらかじめ指定されている固定優先
順位方式を採用しているため、割込発生と同時に各割込
要因に対応して割込優先順位レジスタ4aに設定される
ビットが一意的に決まる。従って、前述の第1の実施例
と異なり優先決定ロジックは割込要因と各割込の優先順
位を対応させることなく割込優先順位レジスタのみを参
照することにより第2優先の割込要因を即時に判断する
ことが可能となる。
【0014】
【発明の効果】以上説明したように本発明は、最高優先
の割込処理ルーチンの実行中に次に実行すべき第2優先
順位の割込を選択し、割込処理ルーチンの開始アドレス
をCPU内の割込専用プログラム・アドレス・レジスタ
に格納しておくことにより最高優先割込処理ルーチンが
終了した時点で即時に第2優先割込処理ルーチンへと遷
移することができるので、システム全体の処理速度を向
上することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例のブロック図である。
【図2】図1のブロックの動作を説明するためのフロー
チャートである。
【図3】本発明の第2の実施例のブロック図である。
【図4】従来のマイクロコンピュータの一例のブロック
図である。
【図5】図4のブロックの動作を説明するためのフロー
チャートである。
【符号の説明】
1    割込コントローラ 2    割込要求端子群 3    割込要求レジスタ 4,4a    割込優先順位レジスタ5    優先
決定ロジック 6    内部バス 7    CPU 8    CPU内部バス 9    プリフェッチ制御ロジック 10    ベクタ・アドレス演算ユニット11   
 バス制御ユニット 12    外部バス 13    割込専用プログラム・アドレス・レジスタ
INTPC 14    INTPCバリッド・ビット15    
プログラム・アドレス・レジスタ16    実行ユニ
ット

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  割込処理ルーチンの開始アドレスと、
    該開始アドレスが有効かどうかを示すバリッド・ビット
    F/Fを有する割込専用プログラム・アドレス・レジス
    タと、割込開始アドレスが格納されている割込ベクタ領
    域のポインタ・アドレスを割込ベクタ番号から計算する
    ベクタ・アドレス演算ユニットを含みかつ外部メモリ上
    の割込ベクタ領域より各割込の開始アドレスをプリフェ
    ッチするタイミングを制御するプリフェッチ制御ロジッ
    クと、前記プリフェッチ制御ロジックから送られた割込
    ポインタ・アドレスとタイミングに基づいて割込の開始
    アドレスをフェッチし前記割込専用プログラム・アドレ
    ス・レジスタへ転送するバス制御ユニットとを備えるC
    PUと、複数の割込要因の優先順位を判定する優先決定
    ロジックを有する割込コントローラと、割込ベクタ番号
    を前記割込コントローラから前記CPUに送るデータバ
    スを備え、前記バリッド・ビットF/Fが有効な時にプ
    ログラムの実行を前記プログラム・アドレス・レジスタ
    のアドレスに基づいて行なうことを特徴とするマイクロ
    コンピュータ。
JP3096001A 1991-04-26 1991-04-26 マイクロコンピュータ Pending JPH04326132A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3096001A JPH04326132A (ja) 1991-04-26 1991-04-26 マイクロコンピュータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3096001A JPH04326132A (ja) 1991-04-26 1991-04-26 マイクロコンピュータ

Publications (1)

Publication Number Publication Date
JPH04326132A true JPH04326132A (ja) 1992-11-16

Family

ID=14152877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3096001A Pending JPH04326132A (ja) 1991-04-26 1991-04-26 マイクロコンピュータ

Country Status (1)

Country Link
JP (1) JPH04326132A (ja)

Similar Documents

Publication Publication Date Title
EP0464615B1 (en) Microcomputer equipped with DMA controller
JP4883824B2 (ja) デ―タ・プロセッサにおいて後続の命令処理に影響を及ぼす方法および装置
US5701495A (en) Scalable system interrupt structure for a multi-processing system
US5212795A (en) Programmable DMA controller
US4181938A (en) Processor device
KR0160193B1 (ko) 직접메모리접근 제어장치
EP0203304B1 (en) Data processor controller
JPH0650493B2 (ja) データ処理装置
US5212796A (en) System with modules using priority numbers related to interrupt vectors for bit-serial-arbitration on independent arbitration bus while CPU executing instructions
EP0418932A2 (en) Microcomputer having easily testable interrupt controller
US5659760A (en) Microprocessor having interrupt vector generation unit and vector fetching command unit to initiate interrupt processing prior to returning interrupt acknowledge information
JPH0743648B2 (ja) 情報処理装置
JPH0916409A (ja) マイクロコンピュータ
JPH04326132A (ja) マイクロコンピュータ
EP0306042B1 (en) Microprocessor vectored interrupts
EP0573071A2 (en) A microprocessor
JP2697254B2 (ja) リアルタイム処理装置
JP3077807B2 (ja) マイクロコンピュータシステム
EP0461219B1 (en) Serial interrupt in microcomputers
JPS63245547A (ja) デ−タ処理装置
JP2002278753A (ja) データ処理システム
KR960011685A (ko) 인터럽트 요구를 처리하기 위한 데이타 처리장치 및 방법
JP2572821B2 (ja) 命令再実行による演算処理方式
JPH05204831A (ja) マイクロプロセッサ及びそれを使用したダイレクトメモリアクセス機能を有するマイクロコンピュータシステム
JPS5942331B2 (ja) プロセツサソウチノセイギヨホウシキ