JPH01123357A - 割り込み制御方式 - Google Patents

割り込み制御方式

Info

Publication number
JPH01123357A
JPH01123357A JP62281303A JP28130387A JPH01123357A JP H01123357 A JPH01123357 A JP H01123357A JP 62281303 A JP62281303 A JP 62281303A JP 28130387 A JP28130387 A JP 28130387A JP H01123357 A JPH01123357 A JP H01123357A
Authority
JP
Japan
Prior art keywords
interrupt
cpu
signal
main
controller
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
JP62281303A
Other languages
English (en)
Inventor
Yumiko Ushimaru
牛丸 由美子
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 JP62281303A priority Critical patent/JPH01123357A/ja
Publication of JPH01123357A publication Critical patent/JPH01123357A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、デュアルCPU構成のシステムにおける割り
込み処理の方式に関するものである。
〔従来の技術〕
従来、メインのCPUとサブのCPUが同時には動作せ
ず、CPUの切り換えはどちらのCPUからも可能なデ
ュアルCPU構成のシステムにおいて、どちらか一方の
CPUの動作中に、他方のCPUが処理すべき割り込み
が発生した場合、次のような方法により、割り込みを受
け付けたCPUは割り込みを処理する:もう一方のCP
Uに割り込みが発生したことを伝え、割り込み処理を実
行していた。ここで、メインCPUとサブCPUが同時
に動作しないのはメモリ・Ilo・周辺コントローラな
どを共有するためである。
第4図はこの方式のブロック図である。
第4図において、 401はメインCPU (以下、CPU(MAIN)と
略す。) 402はサブCPU (以下、CP U (SUB)と
略す。) 403は割り込みコントローラ 404はメインメモリ 405はシステムバス(以下、5BUSと略す。) 406は割り込みコントローラが外部から割り込みを受
け付ける信号 407は割り込みが発生したことをCPU(MAIN)
 401に知らせる信号(以下、INTRIと略す。) 408は割り込みが発生したことをCPU(SUB) 
402に知らせる信号(以下、lNTR11と略す。) 409はCPU(MAIN) 401が割り込みを受け
付けたことを割り込みコントローラ403に知らせる信
号(以下、INTAIと略す。)410はCPU(SU
B) 402が割り込みを受け付けたことを割り込みコ
ントローラ403に知らせる信号(以下、INTAnと
略す。)である。
第4図において、割り込みコントローラ403によって
制御される割り込みはCPU (MAIN) 401が処理する割り込みとCPU(S
OB) 402が処理する割り込みに分類することでき
るので、割り込み形態としては、■ CPU(MAIN
)401の動作中にCPU(MAIN) 401が処理
する割り込み要求が発生■ CPU(SUB) 402
の動作中にCP U (SOB)402が処理する割り
込み要求が発生 ■ CPU(SOB) 402の動作中にCPU(MA
IN) 401が処理する割り込み要求が発生■ CP
U(MAIN) 401の動作中にCPU(SUB) 
402が処理する割り込み要求が発生の45通りがある
。
動作しているCPUが処理する割り込み要求が  ゛発
生する■や■の場合は、動作しているCPUが  ′割
り込みを受け付け、速やかに割り込み処理をお  ・こ
なう。
これに対して、動作中で割り込みを受け付けるCPUと
、発生した割り込みを処理するCPUが異なる■や■の
場合は、次のような方法で割り込み処理をおこなう。■
と■では、処理方法は同一なのでここでは■についての
み説明する。CPU(MAIN) 401をCPU(S
OB) 402に、CPU(SOB) 402をCPU
(MAIN) 401に置き換えることによって、■の
処理となる。
CPU(SOB)402の動作中に割り込みが発生する
と割り込みコントローラ403はlNTRI407およ
びlNTRI407の信号を送る。
CP U(SOB) 402が動作しているので、CP
U(SUB) 402は信号lNTR11408を受け
取り、実行中の処理を中断する。
CPU(SUB)402は割り込みを受け付けると、I
NTAII 410により割り込みを受け付けたことを
割り込みコントローラ403に知らせる。
別り込みコントローラ403はアドレスバス・データバ
ス・コントルールバスの総称であるシステムバス405
を通して割り込み番号をCPUに送る。
割り込みを受け付けたCPU(SOB) 402は5B
US 405を通して割り込み番号を得、割り込みハン
ドラに制御を移し、割り込みに関する情報をメインメモ
リ404に格納する。そして、実際にその割り込みを処
理すべきCPU(MAIN)401に制御を移す。この
とき、CP U (SOB)402は、割り込みハンド
ラの最中である。
制御を移されたCPU(MAIN) 401は、メイン
メモリ404から割り込みに関する情報を読み出し、ソ
フトウェアにより内部割り込ゐをかける。
CPU(MAIN)401による割り込み処理が終了し
たなら、CPU(MAIN) 401は割り込み処理が
終了したことをメインメモリ404に書き込み、制御を
CPU(SOB) 402に戻す。
制御の戻ったCPU(SOB)402は、割り込へハン
ドラから割り込まれたプログラムに戻り、中断したプロ
グラムの実行を再開する。
第5図は、このときの動作の様子を示したものである。
この図から、割り込みを受け付けてから、実際の割り込
み処理の終了までの実行パスが長く、また割り込みに関
する情報の受け渡しをソフトウェアでおこなっているた
め最大限の実行速度を得ていないことがわかる。
〔発明が解決しようとする問題点〕
上述の方法では、次の欠点が考えられる。
割り込み受け付けから実際の割り込み処理終了までのバ
スが長いうえに、割り込み情報の格納・読み出しや割り
込みの発生などの処理をソフトウェアでおこなうため、
実行時間が長くなってしまう。
また、割り込みに関する情報をメインCPUとサブCP
Uで共有しているメモリ上に格納するため、そのメモリ
部分の保護なども必要になってくる。
〔発明の従来技術に対する相違点〕
従来、メモリ・Iloおよび周辺コントローラを共有す
るデュアルCPU構成のシステムにおける割り込み処理
は、割り込みを受け付けたCPUと割り込み処理を実行
するCPUが異なった場合、割り込みを受け付けたCP
Uが割り込み情報を共有メモリを介して割り込みを実行
するCPUに伝達し、割り込み処理を実行するCPUで
内部割り込みを発生させ、割り込み処理を実行していた
。
本発明では、割り込み発生時に動作中のCPU5割り込
み処理を実行するCPUと異なった場合、メインCPU
が処理する割り込みのときは、動作中のサブCPUが割
り込みを受け付け、割り込み制御回路によってメインC
PUを起こすとともに、再度割り込み信号を発生させ、
割り込みコント1=−ラを介して、割り込み処理を実行
するメインCPUに再度割り込みをかけ、サブCPUが
処理する割り込みのときは、割り込み制御回路によって
、サブCPUが動作するまで割り込みを待避させた後や
、割り込み制御回路によってサブCPUを立ち上げた後
に、割り込み信号を発生させ、割り込みコントローラを
介して、割り込み処理を実行するサブCPUに再度割り
込みをかける、  という点が従来とは異なる。
〔問題点を解決するための手段〕
ふたつのCPUが同時に動作することのないデュアルC
PU構成のシステムにおいて、外部要因からの割り込み
信号を入力とし、割り込みコントローラに対しての割り
込み信号を出力とする割り込みを制御する回路を備えて
いる。
このとき、割り込み発生時に動作中のCPUと割り込み
処理を実行するCPUが異なる場合、それぞれ次のよう
な処理をおこなうことを特徴としている。
サブCPUが動作中で、割り込み処理を実行するCPU
がメインCPUの場合は、割り込み制御回路は割り込み
コントローラに対して割り込み信号を送る。動作中のサ
ブCPUは割り込みコントローラを介して割り込みを受
け付け、割り込みを受け付けたことおよび割り込み番号
を割り込み制御回路に伝え、割り込み処理を終える。割
り込み制御回路は、割り込み番号を得て、割り込みコン
トローラに対して、再度同じ割り込み信号を送るととも
に、割り込みを実行するメインCPUを起こす。そして
、割り込みを実行するメインCPUが割り込み発生回路
によって発生された割り込みを割り込みコントローラを
介して受け取り、割り込み処理をおこなう。
メインCPUが動作中で、割り込み処理を実行するCP
UがサブCPUの場合は、割り込み制御回路は割り込み
番号を内部の記憶域に待避させる。
その後、サブCPUが動作したなら、割り込み制御回路
は、内部の記憶域に待避させておいた割り込み番号を得
て、割り込みコントローラに対して、再度同じ割り込み
信号を送る。サブCPUはメインCPUの動作中に発生
した割り込みを、割り込みコントローラを介して受け取
り、割り込み処理をおこなう。
〔実施例〕
本発明について、図面を用いて説明する。
第1図は、本発明の実施例におけるデュアルCPU構成
のシステムを示すブロック図である。
第1図において、 101はメインCPU (以下、CPU(MAIN)と
略す。) 102はサブCPU (以下、CP U (SOB)と
略す。) 103は割り込みコントローラ 104はシステムバス(以下、5BUSと略す。) 105は割り込みが発生したことをCPU(MAIN)
 101に知らせる信号(以下、INTRIと略す。) 106は割り込みが発生したことをCPU(SOB) 
I 02に知らせる信号(以下、INTRnと略す、) 107はCPU(MAIN) l 01が割り込みを受
け付けとことを割り込みコントローラ103に知らせる
信号(以下、INTAIと略す。)108はCPU(S
OB) 102が割り込みを受け付けたことを割り込み
コントローラ103に知らせる信号(以下、INTAI
Iと略す。)109はCPU(MAIN) 101のス
テータスをINTHWI 11に知らせる信号(以下、
STIと略す。) 110はCPU(SUB) 102のステータスを工N
THWI l 1に知らせる信号(以下、ST■と略す
。) 111は入力として外部要因からの割り込み信号114
・CPU(MAIIlF) 101とCPU(SUB)
 102のステータスを示す信号5T1109とSTI
[110・CPU(MAIN)101が処理する割り込
みをCPU(SOB)102が受け付けたことを示すC
P U (SUB)102からの信号116およびその
割り込みの割り込み番号を知らせるためのCPU(SO
B) 102からのバス117、出力として割り込みコ
ントローラに対して割り込み発生させる信号115・C
PU(MAIN) 101を起こすための信号118を
もつ割り込みを制御するためのハードウェア(以下、I
NTHWと略す。) 112は割り込み処理を実行するCPUがCPU(MA
IN) 101であるかCP U (SUB)102で
あるかを示すフラグを割り込み番号の数だけまとめたI
NTHWI 11内のフラグ 113は割り込みの番号を格納しておく INTHW内
部の記憶域(以下、INTNOと略す。) 114はINTHWIIが外部割り込み要因から割り込
みを受け付ける信号 115はINTHWI 11が発生させた割り込みを割
り込みコントローラに伝える信号116はCPU(SU
B)  102が割り込みコントローラ103からCP
U(MAIN) 101が処理すべき割り込みを受け付
けたことをINTHWLIIに知らせる信号(以下、R
INTと略す。) 117はCPU(SOB)  102が受け付けたCP
U(MAYN) 101が処理すべき割り込みの割り込
み番号をINTHWI 11に知らせるバス 118はINTHWI 11から、CPU(MAIN)
101を起こすための信号である。
最初に、第1図を用いて本実施例におけるシステムの構
成を示す。本実施例ではメモリ・Iloおよび周辺コン
トローラを共有するデュアルCPU構成を採用しており
、CPU(MAIN) 101とCPU(SOB) 1
02は同時に動作することはない。また、CPU(MA
IN) 101とCP U (SOB)102の切り換
えは外部信号によりどちらのCPUからも可能である。
外部要因からの割り込み信号114により発生する割り
込みは、CPU(MAIN) 101が処理する割り込
みとCPU(SUB) 102が処理する割り込みに分
類することができる。したがって、割り込み形態として
は、次の4通りがある。
■ CPU(MAIN) 101の動作中にCPU’(
MAIN) 101の処理する割り込み要求が発生■ 
CPU(SOB) 102ノ動作中E CP U (S
OB)102の処理する割り込み要求が発生 ■ CPU(SUB) 102 ノ動作中にcPU(M
AIN) l O1の処理する割り込み要求が発生■ 
CP U(MAIN) 101の動作中にCPU(SO
B) 102の処理する割り込み要求が発生灰に第1図
を用いて、割り込み処理の過程を説明する。
動作しているCPUが処理する割り込み要求が発生する
■や■の場合は、外部要因からの割り込み信号114が
INTHWI 11に入力されると、INTHWI 1
1はCPU(MAIN) 101とCPU(SOB) 
 102のステータスを信号109と信号110から得
、フラグ112を参照し、動作中のCPUと割り込みを
処理するCPUが同一であると判断する。その後、割り
込み信号114と同じ割り込与を示す信号を信号115
を通して、割り込みコントローラに入力する。その後は
、通常のバスで割り込み処理がおこなわれる。
■や■のように動作中のCPUと発生した割り込みを処
理するCPUが異なる場合、本実施例は従来例と異なる
。
まず、■の場合の処理の過程を説明する。
CPU(SUB)  102の動作中に外部要因による
割り込みが発生したと仮定する。割り込み信号はINT
HWI 11に入力される。INTHWlllはCPU
(MAIN) 101とCP U (SOB)102の
ステータスを信号109と信号110から得、フラグ1
12を参照し、動作中のCPUはCPU(SOB)  
102であり、割り込みを処理するCPUはCPU(M
AIN) 101であると判断する。
INTHWI 11は信号115を通して、割り込み信
号114と同じ割り込みを示し信号を割り込みコントロ
ーラに入力する。
割り込みコントローラ103はlNTR1105とIN
TRn 106を通して割り込みが発生したことをCP
U(MAIN) 101とCP U C3lJB)10
2に知らせる。
CPU(SOB)102が動作中なのでCPU(SOB
) 102が割り込みを受け付ける。割り込み受け付け
たCPU(SUB) 102は割り込みを受け付けたこ
とを、確認信号INTAI[108を通して割り込みコ
ントローラ103に知らせる。
INTA■108を受けた割り込みコントローラ103
は、アドレスバス・データバス・コントロールバスの総
称である5BUS 104を通して割り込み番号なCP
U(SOB) 102に伝える。
CPU(SOB)  102はその割り込み番号に対応
する割り込みハンドラに制御を移す。
割り込みハンドラはCPU(SOB) 102が割り込
みを受け付けたことをRINT116を通して、またそ
の割り込み番号をバス117を通してINTHWIII
に知らせ、割り込み処理を終える。
INTHWI 11はCPU(SOB) 102からの
割り込みを受け付けたことを示す信号116およびバス
117からの割り込み番号を受け取り、割り込み番号を
INTNO113に格納する。その後、1付TNO11
3に格納された割り込み番号と同じ割り込みを示す信号
115を割り込みコントローラ103に送るとともに、
CPU(MAIN)101を起こす信号118をCPU
(MAIN)101に送る。
CPU(MAIN) 101に制御が移ると、INTH
Wが信号115を通して送った割り込みが発生し、CP
U(MAIN) 101はその割り込みを受け取り、割
り込みコントローラに確認信号INTHW107を送る
。コントローラ103は、その信号を受け、割り込み番
号を5BUS 104を通してCPU(MAIN) 1
01に伝える。CPU(MAIN)101は、その割り
込み番号に対応する割り込みハンドラに制御を移し、割
り込み処理をおこなう。
割り込み処理を終えたCPU(MAIN) 101は、
割り込みハンドラから戻り、必要ならば制御をCP U
(StlB) 102に移す。
次に、■の場合の処理の過程を説明する。
CPU(MAIN) 101の動作中に外部要因による
割り込みが発生した仮定する。割り込み信号はINTH
WI 11に入力される。INTHWlllはCPU(
MAIN) 101とCP U (SOB)102のス
テータスを信号109と信号110から得、フラグ11
2を参照し、動作中のCPUはCPU(MAIN) 1
01であり、割り込みを処理するCPUはCPU(SO
B)  102であると判断する。これらの割り込みは
、CPU(SOB) 102の制御にのみ必要なもので
あり、CPU(MAIN)101の制御には影響を与え
ないので、CPU(SUB) 102が動作するまで、
処理しない。
INTHWI 11は信号114に対応する割り込み番
号を内部の記憶域INTNOI 13に待避する。そし
て、CPU(SOB) 102のステータスを示す信号
110がCPU(SUB) 102が動作中であること
を示したならば、内部の記憶域に待避させた割り込みを
示す信号115を割り込みコントローラに入力する。
割り込みコントローラ103はlNTR1105とlN
TR1105因して割り込みが発生したことをCPU(
MAIN) 101とCPU(SUB) 102に知ら
せる。
CP U(SUB) 102が動作中なのでCPU(S
OB) l O2が割り込みを受け付ける。割り込みを
受け付けたCPU(SOB)102は割り込以を受け付
けたことをINTAII 108を通して割り込みコン
トルーラ103に知らせる。
INTAI[108を受けた割り込みコントローラ10
3は、アドレスバス・データバス・コントロールバスQ
総称である5BUS 104を通して割り込み番号をC
PU(SOB) 102に伝える。
CPU(SUB) 102はその割り込み番号に対応す
る割り込みハンドラに制御を移し、割り込み処理をおこ
なう。
割り込み処理を終えたCPU(SOB) 102は、割
り込みハンドラから戻る。
以上述べたような過程で、割り込み処理はおこなわれる
。このときのシステムの動作の様子を示したのが第2図
(、A)と第2(B)である。第2図(A)は、CP 
U(StlB) 102の動作中にCPU(MAIN)
101の処理する割り込み要求が発生した■の場合、第
2図BはCPU(MAIN) 101の動作中にCPU
(SUB) 102の処理する割り込み要求が発生した
■の場合の動作の様子をそれぞれ示している。これらの
図からもわかるように、本実施例は、割り込み発生時の
動作CPUとその割り込み処理を実行するCPUが異な
る場合、 メインCPUが処理する割り込みのときは、動作中のサ
ブCPUが割り込みを受け付け、割り込みを制御するハ
ードウェアによってメインCPUを起こすとともに、再
度割り込み信号を発生させ、割り込みコントローラを介
して、割り込み処理を実行するメインCPUに再度割り
込みをがけ、サブCPUが処理する割り込みのときは、
割り込みを制御するハードウェアが、サブCPUが動作
するまで割り込み番号を内部の記憶域に待避させ、サブ
CPUが動作したなら、割り込み信号を発生させ、割り
込みコントローラを介して、割り込み処理を実行するサ
ブCPUに再度割り込みをかける という方法を取ることによって、割り込み処理の実行に
かかる時間を短縮することができる。
〔実施例2〕 次に、本発明の第二の実施例について説明する。
前述の第一の実施例では、ふたつのCPUが同時に動作
することのないデュアル構成のシステムにおいて、割り
込み発生時に動作洛中のCPUと割り込みを処理するC
PUが異なる場合の割り込み制御の一方法について説明
した。
本発明はまた、ふたつのCPUが同時に動作することの
ないデュアルCPU構成のシステムにおいて、割り込み
発生時に動作中のCPUと割り込みを処理するCPUが
異なる場合の、割り込み制御の次のような方法について
も適用できる。
第二の実施例について、図面を用いて説明する。
第3図は、本発明の実施例におけるデュアルCPU構成
のシステムを示すブロック図である。
第3図において、 301はメインCPU (以下、CPU(MAIN)と
略す。) 302はサブCPU (以下、CP U (SOB)と
略す。) 303は割り込みコントローラ 304はシステムバス(以下、5BUSと略す。) 305は割り込みが発生したことをCPU(MAjN)
 301に知らせる信号(以下、lNTR1と略す。) 316は割り込みが発生したことをCPU(SOB) 
302に知らせる信号(以下、INTRIIと略す。) 307はCPU(MAIN) 301が割り込みを受け
付けたことを割り込みコントローラ303に知らせる信
号(以下、INTAIと略す。)308はCP U(S
UB) 302が割り込みを受け付けとことを割り込み
コントローラ303に知らせる信号(以下、INTAI
Iと略す。)309はCPUQfAIN) 301のス
テータスをINTHW311に知らせる信号(以下、S
TIと略す。) 310はCPU(SUB) 302のステータスをIN
THW311に知らせる信号(以下、ST■と略す。) 311は入力として外部要因からの割り込ゐ信号314
・CPU(MAIN) 301とCPU(SOB) 3
02のステータスを示す信号5TI309とSTI[3
10・CPU(MAIN)301が処理する割り込みを
CPU(SOB)302が受け付けとことを示すCP 
U (SOB)302からの信号316およびその割り
込みの割り込み番号を知らせるためのCPU(SOB)
 302からのバス317、出力として割り込みコント
ローラに対して割り込みを発生させる信号315・CP
U(MAIN) 301を起こすための信号318・C
PU(SOB)302を起こすための信号309をもつ
割り込みを制御するためのハードウェア(以下、INT
HWと略す。) 312は割り込み処理を実行するC P U !J’−
CPU(MAIN) 301であるかCP U (SO
B)302であるかを示すフラグを割り込み番号を数だ
けまとめたINTHW311内のフラグ 313は割り込みの番号を格納しておくINTHW31
1内部の記憶域(以下、INTNOと略す。) 314はINTHW311が外部割り込み要因から割り
込みを受け付ける信号 315はINT、HW311が発生させた割り込みを割
り込みコントローラに伝える信号316)tcPU(S
UB)302が割り込みコントロー5303からCP 
U(MAIN) 301が処理すべ゛き割り込みを受け
付けたことおよびCPU(SOB) 302がCPU(
MAIN) 301 (7)動作中に発生した割り込み
の割り込み処理を終えたことをINTHW311に知ら
せる信号(以下、RINTと略す。) 317はCPU(SOB) 302が受け付けたCPU
(MAIN) 301が処理すべき割り込みの割り込み
番号をINTHW311に知らせるバス 318はINTHW311から、CPU(MAIN)3
01を起こすための信号 319はINTHW311から、CP U (SOB)
302を起こすための信号である。
最初に、第3図を用いて本実施例におけるシステムの構
成を示す。本実施例ではメモリ・I10および周辺コン
トローラを共有するデュアルCPU構成を採用しており
、CPU(MAIN)とCPU(SUB)  302は
同時に動作することはない。また、CPU(MAIN)
 301とCPU(SOB) 302の切り換えは外部
信号によりどちらのCPUからも可能である。
外部要因からの割り込み信号314により発生する割り
込みは、CPU(MAIN) 301が処理する割り込
みとCPU(SOB) 302が処理する割り込みに分
類することができる。したがって、割り込み形態として
は、次の4通りがある。
■ CPU(MAIN) 301の動作中にCPU(M
AIN) 301の処理する割り込み要求が発生■ C
PU(SOB) 302の動作中にCP U (SOB
)302の処理する割り込み要求が発生 ■ CPU(SOB) 302の動作中にCPU(MA
IN) 301の処理する割り込み要求が発生■ CP
U(MAIN) 301の動作中にCPU(SOB) 
302の処理する割り込み要求が発生法に第3図を用い
て、割り込み処理の過程を説明する。
動作しているCPUが処理する割り込み要求が発生する
■や■の場合は、外部要因からの割り込み信号314が
INTHW311に入力されると、INTHW311は
CPU(MAIN) 301とCPU(SOB) 30
2のステータスを信号309と信号310から得、フラ
グ312を参照し、動作中のCPUと割り込みを処理す
るCPUが同一であると判断する。その後、割り込み信
号314と同じ割り込みを示す信号を信号315を通し
て、割り込みコントローラに入力する。その後は、通常
のバスで割り込み処理がおこなわれる。
■や■のように動作中のCPUと発生した割り込みを処
理するCPUが異なる場合、本実施例は従来例と異なる
。
まず、■の場合の処理の過程を説明する。
CPU(SUB) 302の動作中に外部要因による割
り込みが発生したと仮定する。割り込み信号はINTH
W311に入力される。INTHW311はCPU(M
AIN) 301とCP’U (SUB)302のステ
ータスを信号309と信号310から得、フラグ312
を参照し、動作中のCPUはCPU(SOB) 302
であり、割り込みを処理するCP’UはCPU(MAI
N) 301であると判断する。
INTHW311は信号315を通して、割り込み信号
314と同じ割り込みを示す信号を割り込みコントロー
ラに入力する。
割り込みコントローラ303はI NTRl305とI
NTRII 306を通して割り込みが発生したことを
CPU(MAIN) 301とCPU(SOB) 30
2に知らせる。
CPU(SOB) 302が動作中なのでCPU(SO
B) 302が割り込みを受け付ける。割り込みを受け
付けたCPU(SOB) 302は割り込みを受け付け
たことを、確認信号INTAII 308を通して割り
込みコントローラ303に知らせる。
INTΔ■308を受け付けた割り込みコントローラ3
03は、アドレスバス・データバス・コントロールバス
の総称である5BUS304を通して割り込み番号をC
PU(SOB) 302に伝える。
CPU(SOB) 302はその割り込み番号に対応す
る割り込みハンドラに制御を移す。
割り込みハンドラはCPU(SOB) 302が割り込
みを受け付けたことをRINT316を通して、またそ
の割り込み番号をバス317を通してINTHW311
に知らせ、割り込み処理を終える。
INTHW311はCPU(SOB) 302からの割
り込みを受け付けたことを示す信号316およびバス3
17からの割り込み番号を受け取り、割り込み番号をI
NTNO313に格納する。その後、INTN○313
に格納された割り込み番号と同じ割り込みを示す信号3
15を割り込みコントローラ303に送るとともに、C
PU(MAIN)301を起こす信号318をCPU(
MAIN)301に送る。
CPU(MAIN) 301に制御が移ると、INTH
W311が信号315を通して送った割り込みが発生し
、CPU(MAIN) 301はその割り込みを受け取
り、割り込みコントローラに確認信号工NTAI 30
7を送る。割り込みコントローラ303は、その信号を
受け、割り込み番号を5BUS304を通してCPU(
MAIN) 301に伝える。CPU(MAIN) 3
01は、その割り込み番号に対応する割り込みハンドラ
に制御を移し、割り込み処理をおこなう。
割り込み処理を終えたCPU(MAIN) 301は、
割り込みハンドラから戻り、必要ならば制御をCPU(
SUB) 302に移す。
次に、■の場合の処理の過程を説明する。
CPU(MAIN) 301の動作中に外部要因による
割り込みが発生したと仮定する。割り込み信号はINT
HW311に入力される。INTHW311はCPU(
MAIN) 301とCP U (SUB)302のス
テータスを信号309と信号310から得、フラグ31
2を参照し、動作中のCPUはCPU(MAIN) 3
01であり、割り込みを処理するCPUはCPU(SU
B) 302であると判断する。これらの割り込みは、
CPU(SOB) 302の制御にのみ必要なものであ
り、CPU(MAIN)301の制御には影響を与えな
い。
INTHW311は信号314に対応する割り込み番号
を内部の記憶域工NTNO313に待避する。その後、
INTNO313に格納された割り込み番号と同じ割り
込みを示す信号315を割り込みコントローラ303に
送るとともに、CPU(SOB) 302を起こす信号
319をCPU(SOB) 302に送る。CPU(S
UB) 302が動作すると、CPU(MAIN) 3
01は実行中の処理を中断する。
CPU(SOB) 302に制御が移ると、I NTE
IW311が信号315を通して送った割り込みが発生
し、CPU(StlB) 302はその割り込みを受け
取り、割り込みコントローラに確認信号INTA113
08を送る。割り込みコントローラ303は、その信号
を受け、割り込み番号を5BUS304を通してCPU
(SUB) 302に伝える。CPU(SOB) 30
2は、その割り込み番号に対応する割り込みハンドラに
制御を移し、割り込み処理をおこなう。
割り込み処理を終えたCPU(StlB) 302は、
割り込みハンドラから戻るとともに、信号316により
CPU(MAIN) 301の動作中に発生したCPU
(SOB)  302が処理する割り込みの割り込み処
理を終えたことをINTHW311に知らせる。
信号316を受け取ったINTHW311は、CPU(
MAIN) 3 o 1を起こす信号318をCPU(
MAIN) 301に送る。CPU(MAIN) 30
1は信号301を受け、中断していた処理を再開する。
以上述べたような過程で、割り込み処理はおこなわれる
。本実施例は、割り込み発生時の動作CPUとそ割り込
み処理を実行するCPUが異なる場合、 メインCPUが処理する割り込みのときは、動作中のサ
ブCPUが割り込みを受け付け、割り込みを制御するハ
ードウェアによってメインCPUを起こすとともに、再
度割り込み信号を発生させ、割り込みコントローラを介
して、割り込み処理を実行するメインCPUに再度割り
込みをかけ、サブCPUが処理する割り込みのときは、
割り込みを制御するハードウェアによって、サブCPU
を立ち上げるとともに(メインCPUの動作は中断)、
割り込み信号を発生させ、割り込みコントローラを介し
て、割り込み処理を実行するサブCPUに再度割り込み
をかける という方法を取ることによって、割り込み処理の実行に
かかる時間を短縮することができる。
〔発明の効果〕
以上説明したように、本発明は、ふたつのCPUが同時
に動作することのないデュアルCP U 構成のシステ
ムにおいて、割り込み発生時に動作しているCPUと割
り込み処理を実行するCPUが異なるとき、第2図(A
)、第2図(B)のシステムの動作を示す図からもわか
らように、割り込みの受け渡しをソフトウェアによって
、割り込み発生直後におこなうのではなく、メインCP
Uが処理すべき割り込みの場合は、割り込み制御回路に
よって再度割り込みを発生することによっておこない、
サブCPUに対する割り込みの場合は、割り込み制御回
路によってサブCPUが動作するまで割り込みを待避さ
せた後や、割り込み制御回路によってサブCPUを立ち
上げた後に、割り込みを発生することによって割り込み
処理にかかる時間を短縮することができる。
【図面の簡単な説明】
第1図は、本発明の実施例におけるデュアルCPU構成
のシステムを示すブロック図である。 第2図は、本発明の実施例におけるシステムの動作の様
子を示した図である。第2図(A)は、サブCPUの動
作中にメインCPUの処理する割り込み要求が発生した
場合、第2図(B)はCPU(MAIN) l O1の
動作中にCPU(SUB) 102の処理する割り込み
要求が発生した場合の動作の様子をそれぞれ示している
。 第3図は、本発明の第二の実施例におけるデュアルCP
U構成のシステムを示すブロック図である。 第4図は、従来例におけるデュアルCPU構成のシステ
ムを示すブロック図である。 第5図は、従来例の実施例におけるシステムの動作の様
子を示した図である。 代理人 弁理士  内 原   晋 $ 3  図 茅 41!I

Claims (1)

    【特許請求の範囲】
  1. デュアルCPU構成の情報処理装置において、切り換え
    可能で同時には動作しない第一のプロセッサおよび第二
    のプロセッサのふたつのプロセッサと、外部からの割り
    込みを制御する割り込みコントローラと、外部から発生
    した割り込みが前記第一のプロセッサおよび前記第二の
    プロセッサのどちらのプロセッサで処理される割り込み
    かを示すフラグと割り込み番号を記憶する記憶域を内部
    に持つ割り込み制御回路を備え、前記第二のプロセッサ
    の動作中に前記第一のプロセッサの処理する割り込みが
    発生した場合は、前記割り込み制御回路は前記内部のフ
    ラグを参照し、割り込みコントローラに対して割り込み
    信号を送り、割り込みコントローラからの割り込み信号
    を受け取った前記第二のプロセッサは、前記割り込み制
    御回路に割り込みを受け付けたことを示す信号と割り込
    み番号を伝え、前記割り込み制御回路はそれらを受け取
    ると前記第二のプロセッサが外部から受け付けた割り込
    みと同じ割り込みを示す割り込み信号を前記割り込みコ
    ントローラに送るとともに前記第一のプロセッサに制御
    を移し、前記割り込みコントローラは前記割り込みをお
    こなう第一のプロセッサに対して前記第二のプロセッサ
    が受け付けた割り込みと同じ割り込みを発生させ、前記
    割り込みをおこなう第一のプロセッサに割り込み処理を
    処理をおこなわせ、前記第一のプロセッサの動作中に前
    記第二のプロセッサの処理する割り込みが発生した場合
    は、前記割り込み制御回路は前記内部のフラグを参照し
    、前記サブCPUが動作さするまで割り込みを待避させ
    た後や、前記サブCPUを立ち上げた後に、割り込み信
    号を前記割り込みコントローラに対して送り、前記割り
    込みコントローラからの割り込み信号を受け取った前記
    第二のプロセッサに割り込み処理をおこなわせることを
    特徴とする割り込み制御方式。
JP62281303A 1987-11-06 1987-11-06 割り込み制御方式 Pending JPH01123357A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62281303A JPH01123357A (ja) 1987-11-06 1987-11-06 割り込み制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62281303A JPH01123357A (ja) 1987-11-06 1987-11-06 割り込み制御方式

Publications (1)

Publication Number Publication Date
JPH01123357A true JPH01123357A (ja) 1989-05-16

Family

ID=17637195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62281303A Pending JPH01123357A (ja) 1987-11-06 1987-11-06 割り込み制御方式

Country Status (1)

Country Link
JP (1) JPH01123357A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5264686A (en) * 1990-11-30 1993-11-23 Olympus Optical Co., Ltd. Information recording/reproducing apparatus for an information recording card

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5264686A (en) * 1990-11-30 1993-11-23 Olympus Optical Co., Ltd. Information recording/reproducing apparatus for an information recording card

Similar Documents

Publication Publication Date Title
US5659759A (en) Data processing device having improved interrupt controller to process interrupts of different priority levels
US7293119B2 (en) DMA data transfer between low-overhead processor and connected external circuitry using transactions log
JPS6115260A (ja) デ−タ処理装置
US6134642A (en) Direct memory access (DMA) data transfer requiring no processor DMA support
EP0614148B1 (en) Data processing apparatus
JP3348177B2 (ja) プログラマブルコントローラ
KR910005757Y1 (ko) 멀티 프로세서에 있어서 핸드 세이킹 회로
JPH05241986A (ja) 入出力命令リトライ方式
JPS6252900B2 (ja)
JP2872042B2 (ja) 共有メモリアクセス方式
JPH04280345A (ja) データ転送制御装置
JPH05342021A (ja) マルチタスク計算機
JPS62204354A (ja) 入出力命令制御方式
JPH01217534A (ja) マルチプロセッサシステム
JPS63261431A (ja) マ−ジ・プロセス制御方式
JPS62296236A (ja) マイクロプロセツサの割り込み処理装置
JPH02282855A (ja) Dma転送制御方法
JPS63132368A (ja) マルチプロセサの割込み方式
JPS63296155A (ja) 周辺制御装置
JPS6361357A (ja) デ−タ処理装置
JPH0468458A (ja) データ通信処理装置
KR20010058316A (ko) 세마포어를 이용한 반도체 장비의 멀티 태스킹 방법
JPH02299048A (ja) 転送制御方式
JPH03119429A (ja) データ処理装置の割込制御方式
JPH0319033A (ja) システム中断・再開方式