JPH0581209A - Cpu間割込み制御装置 - Google Patents
Cpu間割込み制御装置Info
- Publication number
- JPH0581209A JPH0581209A JP23941891A JP23941891A JPH0581209A JP H0581209 A JPH0581209 A JP H0581209A JP 23941891 A JP23941891 A JP 23941891A JP 23941891 A JP23941891 A JP 23941891A JP H0581209 A JPH0581209 A JP H0581209A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- cpu
- information
- interruption
- storage unit
- 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
Links
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】
【目的】 CPU間割込みの処理時間を短縮でき、割込
み処理を簡略化できる、複数CPU間の複数レベルでの
割込みが可能なCPU間割込み制御装置を提供する。 【構成】 割込みを受けるCPU側の割込みレベルが同
一で各CPUからの割込みフラグを持つ割込み格納部3
6と、割込み格納部36の情報と書込み情報をもとに格
納情報を作成する割込み情報作成部34と、読出し動作
により割込み格納部36を初期化する割込み初期化制御
部35とから構成された割込みレジスタ33を、前記割
込みレベルの夫々に対応しかつその対応数だけ備え、前
記割込みレジスタ33の割込み格納部36の情報をもと
にCPUに対して割込みの要求をレベル別に要求する割
込み要求部37を備え、前記複数の割込みレジスタ33
の中から1つを選択してアクセス可能な状態とするアド
レスデコーダ38を備え、前記割込みレジスタ33を、
割込みレベル毎にアクセスし、割込み格納部36の情報
により前記割込み格納部36への書込み動作を管理し、
読出し動作により割込み格納部36の初期化をするよう
に構成している。
み処理を簡略化できる、複数CPU間の複数レベルでの
割込みが可能なCPU間割込み制御装置を提供する。 【構成】 割込みを受けるCPU側の割込みレベルが同
一で各CPUからの割込みフラグを持つ割込み格納部3
6と、割込み格納部36の情報と書込み情報をもとに格
納情報を作成する割込み情報作成部34と、読出し動作
により割込み格納部36を初期化する割込み初期化制御
部35とから構成された割込みレジスタ33を、前記割
込みレベルの夫々に対応しかつその対応数だけ備え、前
記割込みレジスタ33の割込み格納部36の情報をもと
にCPUに対して割込みの要求をレベル別に要求する割
込み要求部37を備え、前記複数の割込みレジスタ33
の中から1つを選択してアクセス可能な状態とするアド
レスデコーダ38を備え、前記割込みレジスタ33を、
割込みレベル毎にアクセスし、割込み格納部36の情報
により前記割込み格納部36への書込み動作を管理し、
読出し動作により割込み格納部36の初期化をするよう
に構成している。
Description
【0001】
【産業上の利用分野】本発明はレーザ加工機用数値制御
装置などに利用されるもので、機器内で複数のCPUを
使用し、各CPU間の情報のやり取りの実行に割込みを
使用する構成における複数CPU間の割込み制御装置に
関するものである。
装置などに利用されるもので、機器内で複数のCPUを
使用し、各CPU間の情報のやり取りの実行に割込みを
使用する構成における複数CPU間の割込み制御装置に
関するものである。
【0002】
【従来の技術】近年マイクロコンピュータを使用した機
器においては、機器内の情報量の増加と処理の高速性が
要望されるようになり、複数のCPUを使用して各CP
Uに個別に特徴をもった機能を任せ、各CPU間で情報
のやり取りを行なわせて全体のシステムを構成する分散
型システムが増えてきている。
器においては、機器内の情報量の増加と処理の高速性が
要望されるようになり、複数のCPUを使用して各CP
Uに個別に特徴をもった機能を任せ、各CPU間で情報
のやり取りを行なわせて全体のシステムを構成する分散
型システムが増えてきている。
【0003】このような分散型システムのマイクロコン
ピュータを用いた機器において、各CPU間の情報のや
りとりを大量かつ高速に行うためのシステムとして、図
1に示すものが知られている。
ピュータを用いた機器において、各CPU間の情報のや
りとりを大量かつ高速に行うためのシステムとして、図
1に示すものが知られている。
【0004】図1に示す従来例は、各CPU5に対し設
けられた割込み制御装置が、割込みを発生させるための
割込み発生部9と、他のCPU5から発生された割込み
を受信するための割込み受信部10とを備えている。こ
の割込み受信部10は、図2に示すように、相手方のす
べてのCPU5の割込み発生に対応できるよう多数の割
込みフラグ16で構成される割込み受信レジスタ15
と、自らのCPU5に割込み要求を発生する割込み要求
部17とから構成されている。又前記割込み発生部9
は、相手方のすべてのCPU5の割込み受信に対応でき
るよう多数の各CPU別の割込み発生部を有し、図2に
示すように、各CPU別の割込み発生部とこれに対応す
る各割込みフラグ16とが1対1対応で、割込み要求線
13で接続されている。
けられた割込み制御装置が、割込みを発生させるための
割込み発生部9と、他のCPU5から発生された割込み
を受信するための割込み受信部10とを備えている。こ
の割込み受信部10は、図2に示すように、相手方のす
べてのCPU5の割込み発生に対応できるよう多数の割
込みフラグ16で構成される割込み受信レジスタ15
と、自らのCPU5に割込み要求を発生する割込み要求
部17とから構成されている。又前記割込み発生部9
は、相手方のすべてのCPU5の割込み受信に対応でき
るよう多数の各CPU別の割込み発生部を有し、図2に
示すように、各CPU別の割込み発生部とこれに対応す
る各割込みフラグ16とが1対1対応で、割込み要求線
13で接続されている。
【0005】しかしこの従来例によれば、CPU5間の
割込み通信を行なうCPU5の数が増えてくると、割込
み要求線13の数が幾何級数的に増大する。
割込み通信を行なうCPU5の数が増えてくると、割込
み要求線13の数が幾何級数的に増大する。
【0006】すなわちCPU5の数をMとすると、割込
み要求線13の数Wは式(1)のように示される。
み要求線13の数Wは式(1)のように示される。
【0007】W=M×(M 1)・・・・・・(1) 図3の(a)にはCPU5の数が4個の場合を示してい
るが、この場合には割込み要求線13の数は12本とな
る。又図3の(b)にはCPU5の数が5個の場合を示
しているが、この場合には割込み要求線13の数は20
本となる。
るが、この場合には割込み要求線13の数は12本とな
る。又図3の(b)にはCPU5の数が5個の場合を示
しているが、この場合には割込み要求線13の数は20
本となる。
【0008】上記の場合は割込みレベルを考慮しない場
合であったが、実際には割込みレベルを考慮しなければ
ならない場合の方が多く、N段階の割込みレベルが存在
する場合には、割込み要求線13の数Wは式(2)のよ
うに示される。
合であったが、実際には割込みレベルを考慮しなければ
ならない場合の方が多く、N段階の割込みレベルが存在
する場合には、割込み要求線13の数Wは式(2)のよ
うに示される。
【0009】 W=N×M×(M 1)・・・・・・(2) 従って、例えばCPU5の数が4個、割込みレベルが7
段階である場合には、割込み要求線13の数が、84本
にもなってしまう。このように上記従来例は、CPU5
の数が増大すると割込み要求線13の数が極端に増大
し、特に、CPU5の増大に加え、割込みレベル数が大
きくなると、これに対応することが事実上不可能になる
という問題を有している。
段階である場合には、割込み要求線13の数が、84本
にもなってしまう。このように上記従来例は、CPU5
の数が増大すると割込み要求線13の数が極端に増大
し、特に、CPU5の増大に加え、割込みレベル数が大
きくなると、これに対応することが事実上不可能になる
という問題を有している。
【0010】このような問題点を解消した従来例とし
て、図4、図5に示す従来例がある。
て、図4、図5に示す従来例がある。
【0011】この従来例は、割込む側のCPUが割込み
先のCPUのローカルバスの占有権を獲得し、割込み情
報を格納することでCPU間の割込みを行なうものであ
る。
先のCPUのローカルバスの占有権を獲得し、割込み情
報を格納することでCPU間の割込みを行なうものであ
る。
【0012】図4に示すように各CPU21に対応し
て、バス制御部18、バッファ19、メモリ22、割込
み制御部23、I/O24、CPU間割込み制御装置2
5が設けられている。前記CPU間割込み制御装置25
は、図5に示すように、CPU毎に個別の割込みフラグ
の構成をとる割込み格納部30をもつ割込みレジスタ2
9と、割込み要求部31とから構成される。割込みレジ
スタ29の内部構造は表1に示すようになっている。表
2は割込みレジスタ29内の割込みフラングの状態遷移
表である。図6は割込みレジスタ29と割込み要求部3
1の回路構成の1例を示したものである。
て、バス制御部18、バッファ19、メモリ22、割込
み制御部23、I/O24、CPU間割込み制御装置2
5が設けられている。前記CPU間割込み制御装置25
は、図5に示すように、CPU毎に個別の割込みフラグ
の構成をとる割込み格納部30をもつ割込みレジスタ2
9と、割込み要求部31とから構成される。割込みレジ
スタ29の内部構造は表1に示すようになっている。表
2は割込みレジスタ29内の割込みフラングの状態遷移
表である。図6は割込みレジスタ29と割込み要求部3
1の回路構成の1例を示したものである。
【0013】
【表1】
【0014】
【表2】
【0015】又図4、図5に示すように、各CPU21
のローカル上にある前記割込みレジスタ29に個別にア
クセスすることを管理する管理情報を格納する共通メモ
リ20を備えている。この共通メモリ20は割込みレジ
スタ用アクセス制御格納部32を有している。このアク
セス制御格納部32は、表3に示すように、各割込みレ
ジスタ29に対応するセマフォフラグを備えている。
のローカル上にある前記割込みレジスタ29に個別にア
クセスすることを管理する管理情報を格納する共通メモ
リ20を備えている。この共通メモリ20は割込みレジ
スタ用アクセス制御格納部32を有している。このアク
セス制御格納部32は、表3に示すように、各割込みレ
ジスタ29に対応するセマフォフラグを備えている。
【0016】
【表3】
【0017】次に上記従来例のCPU間の割込み動作を
説明する。各CPU21に付設されたCPU間割込み制
御装置25の割込みレジスタ29は、他のCPU21の
すべてに対応した割込みフラグを持っているため、各C
PU21からのアクセスが混在するおそれがある。この
ため、他のCPU21による割込み発生処理、自らのC
PU21による割込み受信処理における割込みレジスタ
29への読出し、書込みの一連のアクセスを保証する必
要があり、この保証のために、共通メモリ20上のアク
セス制御格納部32は、各CPU21の割込みレジスタ
29のアクセス権を個別に管理するために割込みレジス
タ29の数だけセマフォフラグを持つように構成され、
これによりアクセス権の制御を行なっている。
説明する。各CPU21に付設されたCPU間割込み制
御装置25の割込みレジスタ29は、他のCPU21の
すべてに対応した割込みフラグを持っているため、各C
PU21からのアクセスが混在するおそれがある。この
ため、他のCPU21による割込み発生処理、自らのC
PU21による割込み受信処理における割込みレジスタ
29への読出し、書込みの一連のアクセスを保証する必
要があり、この保証のために、共通メモリ20上のアク
セス制御格納部32は、各CPU21の割込みレジスタ
29のアクセス権を個別に管理するために割込みレジス
タ29の数だけセマフォフラグを持つように構成され、
これによりアクセス権の制御を行なっている。
【0018】図7は上記アクセス権の制御を示すフロー
チャートである。割込みを要求するCPUは、共通メモ
リ20上の割込みレジスタ用アクセス制御格納部32に
アクセスし、相手方のCPUの割込みレジスタ29に対
応するセマフォフラグが“0”であるか否かを判定し、
これが“1”のときは他のCPUがアクセス権を獲得し
ているので、他のCPUのアクセス権の解放を待つ(ス
テップ#1)。これが“0”のときは前記対応するセマ
フォフラグに“1”を書込んでアクセス権を獲得し、こ
れを他のCPUに知らせる(ステップ#2)。そして対
応する割込みレジスタ29への一連の処理を行い(ステ
ップ#3)、その後直ちに前記セマフォフラグを“0”
にし、アクセス権を解放する(ステップ#4)。
チャートである。割込みを要求するCPUは、共通メモ
リ20上の割込みレジスタ用アクセス制御格納部32に
アクセスし、相手方のCPUの割込みレジスタ29に対
応するセマフォフラグが“0”であるか否かを判定し、
これが“1”のときは他のCPUがアクセス権を獲得し
ているので、他のCPUのアクセス権の解放を待つ(ス
テップ#1)。これが“0”のときは前記対応するセマ
フォフラグに“1”を書込んでアクセス権を獲得し、こ
れを他のCPUに知らせる(ステップ#2)。そして対
応する割込みレジスタ29への一連の処理を行い(ステ
ップ#3)、その後直ちに前記セマフォフラグを“0”
にし、アクセス権を解放する(ステップ#4)。
【0019】図8は、i番目のCPU(CPU−i)か
らj番目のCPU(CPU−j)への割込みを行なう際
のフローチャートを示している。割込みを要求するCP
U−iは、先ず相手側のCPU−jの割込みレジスタ2
9に対応するセマフォフラグに対し、アクセス権制御の
フローに従ってアクセス権を獲得する(ステップ#1
1、#12)。次いでCPU−iがCPU−jのローカ
ルエリアにある割込みレジスタ29にアクセスし、その
内容を読出し、次いで自らのCPU−i用の割込みフラ
グのみを“1”に変更する(ステップ#13、#1
4)。その情報をもとに割込み要求部31がCPU−j
に対して割込み制御部23を介して割込み要求を行なう
(図5参照、ステップ#16)。同時にCPU−iは前
記セマフォフラグを“0”にし、前記割込みレジスタ2
9へのアクセス権の解放を行う(ステップ#15)。
らj番目のCPU(CPU−j)への割込みを行なう際
のフローチャートを示している。割込みを要求するCP
U−iは、先ず相手側のCPU−jの割込みレジスタ2
9に対応するセマフォフラグに対し、アクセス権制御の
フローに従ってアクセス権を獲得する(ステップ#1
1、#12)。次いでCPU−iがCPU−jのローカ
ルエリアにある割込みレジスタ29にアクセスし、その
内容を読出し、次いで自らのCPU−i用の割込みフラ
グのみを“1”に変更する(ステップ#13、#1
4)。その情報をもとに割込み要求部31がCPU−j
に対して割込み制御部23を介して割込み要求を行なう
(図5参照、ステップ#16)。同時にCPU−iは前
記セマフォフラグを“0”にし、前記割込みレジスタ2
9へのアクセス権の解放を行う(ステップ#15)。
【0020】割込みを要求された側のCPU−jは、割
込み要求を認識し、現行処理の中断処理を行い(ステッ
プ#17、#18)、次いで共通メモリ20内にあるC
PU−jの割込みレジスタ用のセマフォフラグに対して
アクセス権制御のフロー(図7参照)に従ってアクセス
権を獲得する(ステップ#19、#20)。そして前記
割込みレジスタ29を読出すことにより、割込みを要求
してきたCPU−iを認識する(ステップ#21、#2
2)。さらに割込みを要求してきたCPU−iに対応す
る割込みフラグのみを“0”に変更して割込み要因を初
期化する(ステップ#23、#24)。最後にCPU−
jの割込みレジスタ用セマフォフラグを“0”として、
割込みレジスタのアクセス権の解放を行い、その割込み
に対応した処理を実行した後、割込み処理からの復帰処
理を行なう(ステップ#25、#26、#27)。
込み要求を認識し、現行処理の中断処理を行い(ステッ
プ#17、#18)、次いで共通メモリ20内にあるC
PU−jの割込みレジスタ用のセマフォフラグに対して
アクセス権制御のフロー(図7参照)に従ってアクセス
権を獲得する(ステップ#19、#20)。そして前記
割込みレジスタ29を読出すことにより、割込みを要求
してきたCPU−iを認識する(ステップ#21、#2
2)。さらに割込みを要求してきたCPU−iに対応す
る割込みフラグのみを“0”に変更して割込み要因を初
期化する(ステップ#23、#24)。最後にCPU−
jの割込みレジスタ用セマフォフラグを“0”として、
割込みレジスタのアクセス権の解放を行い、その割込み
に対応した処理を実行した後、割込み処理からの復帰処
理を行なう(ステップ#25、#26、#27)。
【0021】なお、図7、図8において、aで示す処理
は分断を禁止するアクセスであり、これをハードウェア
的に保証する必要がある。このための1方法として、T
AS(テストアンドセット)命令を持つことにより分断
禁止を保証する方法がある。
は分断を禁止するアクセスであり、これをハードウェア
的に保証する必要がある。このための1方法として、T
AS(テストアンドセット)命令を持つことにより分断
禁止を保証する方法がある。
【0022】又bで示す処理は、図7のアクセス権制御
フローを示している。
フローを示している。
【0023】
【発明が解決しようとする課題】図5に示す従来例は、
上記のように他のCPUによる割込み発生処理、自らの
CPUによる割込み受信処理に関する一連のアクセスを
保証するために、共通メモリ上にアクセス制御格納部を
設け、このアクセス制御格納部を各CPUのローカルの
割込みレジスタに個別に対応したセマフォフラグで構成
し、前記アクセス権制御フローを行なう必要があった。
そしてこのアクセス権制御フローは、複雑であると共に
処理時間が長くなるという問題があった。
上記のように他のCPUによる割込み発生処理、自らの
CPUによる割込み受信処理に関する一連のアクセスを
保証するために、共通メモリ上にアクセス制御格納部を
設け、このアクセス制御格納部を各CPUのローカルの
割込みレジスタに個別に対応したセマフォフラグで構成
し、前記アクセス権制御フローを行なう必要があった。
そしてこのアクセス権制御フローは、複雑であると共に
処理時間が長くなるという問題があった。
【0024】又CPUの数をM個とし、割込みレベルを
N段階とすると、前記セマフォフラグの数は(M×N)
個となり、その数は極端に増大して、アクセス権の管理
が複雑になってしまうという問題もあった。
N段階とすると、前記セマフォフラグの数は(M×N)
個となり、その数は極端に増大して、アクセス権の管理
が複雑になってしまうという問題もあった。
【0025】なお、図5に示す割込みレジスタ用アクセ
ス制御格納部32を省略し、図8にbで示すアクセス権
制御フローを省略すると、次のような不都合が生じる。
ス制御格納部32を省略し、図8にbで示すアクセス権
制御フローを省略すると、次のような不都合が生じる。
【0026】図9は、このような場合においてCPU−
2が割込み要求を発生させたときの、受信側CPUに付
設されたCPU間割込み制御装置における割込みレジス
タ内の割込みフラグの遷移を表わしている。図9に示す
場合は、P、Qで示す期間、他のCPUによるアクセス
の禁止が保証されてCPU−2のみの割込み要求が発生
した場合であるので、正常な処理が行なわれている。し
かし前記P、Qをハードウェア的に保証することは困難
であり、これが保証されない場合は複数のCPUの割込
み要求が混在して、図10及び図11に示すように正常
な処理が行なわれない事態を招く。
2が割込み要求を発生させたときの、受信側CPUに付
設されたCPU間割込み制御装置における割込みレジス
タ内の割込みフラグの遷移を表わしている。図9に示す
場合は、P、Qで示す期間、他のCPUによるアクセス
の禁止が保証されてCPU−2のみの割込み要求が発生
した場合であるので、正常な処理が行なわれている。し
かし前記P、Qをハードウェア的に保証することは困難
であり、これが保証されない場合は複数のCPUの割込
み要求が混在して、図10及び図11に示すように正常
な処理が行なわれない事態を招く。
【0027】図10は、CPU−2とCPU−Mとが同
一の割込みレジスタに対して割込みを要求した場合を示
す。この場合図9に示すPの禁止期間が保証されず、C
PU−2及び、これに続いてCPU−Mが割込みレジス
タを読出し、その後にCPU−2がCPU−2用フラグ
に“1”を書き込んだ後に、CPU−MがCPU−2用
フラグを“0”とし、CPU−M用フラグに“1”を書
き込むことになり、CPU−2の割込み要求が消滅して
しまうという不都合が生ずる。
一の割込みレジスタに対して割込みを要求した場合を示
す。この場合図9に示すPの禁止期間が保証されず、C
PU−2及び、これに続いてCPU−Mが割込みレジス
タを読出し、その後にCPU−2がCPU−2用フラグ
に“1”を書き込んだ後に、CPU−MがCPU−2用
フラグを“0”とし、CPU−M用フラグに“1”を書
き込むことになり、CPU−2の割込み要求が消滅して
しまうという不都合が生ずる。
【0028】図11は、受信CPUがCPU−2からの
割込みを認識している間にCPU−Mから割込み要求が
発生した場合を示す。この場合は図9に示すQの禁止期
間が保証されず、受信CPU及び、これに続いてCPU
−Mが割込みレジスタを読出し、その後に受信CPUが
CPU−2用フラグを“0”に変更して割込み要因を初
期化するが、次いでCPU−MがCPU−2用フラグ及
びCPU−M用フラグに“1”を書き込む結果、CPU
−2用フラグが“1”に復帰し、二重に割込みが発生す
るという不都合が生ずる。
割込みを認識している間にCPU−Mから割込み要求が
発生した場合を示す。この場合は図9に示すQの禁止期
間が保証されず、受信CPU及び、これに続いてCPU
−Mが割込みレジスタを読出し、その後に受信CPUが
CPU−2用フラグを“0”に変更して割込み要因を初
期化するが、次いでCPU−MがCPU−2用フラグ及
びCPU−M用フラグに“1”を書き込む結果、CPU
−2用フラグが“1”に復帰し、二重に割込みが発生す
るという不都合が生ずる。
【0029】本発明は上記従来例の問題点を解消すると
共に、複数の割込みレベルまで対応が可能となるCPU
間割込み制御装置を提供することを目的とする。
共に、複数の割込みレベルまで対応が可能となるCPU
間割込み制御装置を提供することを目的とする。
【0030】
【課題を解決するための手段】本発明は上記目的を達成
するため、機器内で複数のCPUを有し、割込みをかけ
るCPUが割込みを受けるCPUのローカルバスのバス
占有権を獲得して割込みを行うシステムにおける各CP
Uに付設されたCPU間割込み制御装置において、割込
みを受けるCPU側の割込みレベルが同一で各CPUか
らの割込みフラグを持つ割込み格納部と、割込み格納部
の情報と書込み情報をもとに格納情報を作成する割込み
情報作成部と、読出し動作により割込み格納部を初期化
する割込み初期化制御部とから構成された割込みレジス
タを、前記割込みレベルの夫々に対応しかつその対応数
だけ備え、前記割込みレジスタの割込み格納部の情報を
もとにCPUに対して割込みの要求をレベル別に要求す
る割込み要求部を備え、前記複数の割込みレジスタの中
から1つを選択してアクセス可能な状態とするアドレス
デコーダを備え、前記割込みレジスタを、割込みレベル
毎にアクセスし、割込み格納部の情報により前記割込み
格納部への書込み動作を管理し、読出し動作により割込
み格納部の初期化をするように構成したことを特徴とす
る。
するため、機器内で複数のCPUを有し、割込みをかけ
るCPUが割込みを受けるCPUのローカルバスのバス
占有権を獲得して割込みを行うシステムにおける各CP
Uに付設されたCPU間割込み制御装置において、割込
みを受けるCPU側の割込みレベルが同一で各CPUか
らの割込みフラグを持つ割込み格納部と、割込み格納部
の情報と書込み情報をもとに格納情報を作成する割込み
情報作成部と、読出し動作により割込み格納部を初期化
する割込み初期化制御部とから構成された割込みレジス
タを、前記割込みレベルの夫々に対応しかつその対応数
だけ備え、前記割込みレジスタの割込み格納部の情報を
もとにCPUに対して割込みの要求をレベル別に要求す
る割込み要求部を備え、前記複数の割込みレジスタの中
から1つを選択してアクセス可能な状態とするアドレス
デコーダを備え、前記割込みレジスタを、割込みレベル
毎にアクセスし、割込み格納部の情報により前記割込み
格納部への書込み動作を管理し、読出し動作により割込
み格納部の初期化をするように構成したことを特徴とす
る。
【0031】
【作用】本発明によれば、割込みレベル毎に割込みレジ
スタを設け、その割込みレジスタ内に割込み格納情報作
成部と、割込み初期化制御部とを持ち、割込み格納情報
作成部は割込み発生機能しかなく、書込み操作で誤って
他の割込みフラグを初期化してしまう危険性をなくすよ
うに構成でき、割込み初期化制御部は割込みレジスタの
読出し動作時に自動的に割込みフラグの初期化処理を行
うように構成できるので、従来例のように共通メモリ上
にアクセス制御格納部を配置する必要がなくなり、アク
セス権の制御を必要としない割込み処理の容易な、複数
の割込みレベルに対応できるCPU間割込み制御装置を
実現することができる。
スタを設け、その割込みレジスタ内に割込み格納情報作
成部と、割込み初期化制御部とを持ち、割込み格納情報
作成部は割込み発生機能しかなく、書込み操作で誤って
他の割込みフラグを初期化してしまう危険性をなくすよ
うに構成でき、割込み初期化制御部は割込みレジスタの
読出し動作時に自動的に割込みフラグの初期化処理を行
うように構成できるので、従来例のように共通メモリ上
にアクセス制御格納部を配置する必要がなくなり、アク
セス権の制御を必要としない割込み処理の容易な、複数
の割込みレベルに対応できるCPU間割込み制御装置を
実現することができる。
【0032】
【実施例】図4及び図12〜図17に基き本発明の実施
例を説明する。
例を説明する。
【0033】本実施例も上記従来例と同様、割込みをか
けるCPU(送信CPU)が割込み先のCPU(受信C
PU)のローカルバスのバス占有権を獲得し割込み情報
を格納することでCPU間の割込みを行うように構成さ
れている。その基本的システムは図4に示されている
が、上記従来例では共通メモリ20上にセマフォフラグ
で構成されたアクセス制御格納部を設け、図8にbで示
すアクセス権制御フローを有しているのに対し、本実施
例ではそれらを設けず、各ローカルエリアに配したCP
U間割込み制御装置25にアクセス権制御機能をもたせ
た点に特徴を有している。
けるCPU(送信CPU)が割込み先のCPU(受信C
PU)のローカルバスのバス占有権を獲得し割込み情報
を格納することでCPU間の割込みを行うように構成さ
れている。その基本的システムは図4に示されている
が、上記従来例では共通メモリ20上にセマフォフラグ
で構成されたアクセス制御格納部を設け、図8にbで示
すアクセス権制御フローを有しているのに対し、本実施
例ではそれらを設けず、各ローカルエリアに配したCP
U間割込み制御装置25にアクセス権制御機能をもたせ
た点に特徴を有している。
【0034】図4に示すシステムの基本的構成は、上記
従来例について説明したものと同様であるので、その説
明を省略する。
従来例について説明したものと同様であるので、その説
明を省略する。
【0035】CPU間割込み制御装置25は、図12に
示すように、複数の割込みレジスタ33、割込み要求部
37及びアドレスデコーダ38を備えている。
示すように、複数の割込みレジスタ33、割込み要求部
37及びアドレスデコーダ38を備えている。
【0036】割込みレジスタ33は、受信CPU側の割
込みレベルが同一で各送信CPUに対応するフラグをも
つ割込み格納部36と、割込み格納部36の情報と書込
み情報とをもとに格納情報を作成する割込み格納情報作
成部34と、読出し動作により前記割込み格納部36を
初期化する割込み初期化制御部35とにより構成されて
いる。そして、CPU間割込み制御装置25は、図12
及び表4に示すように、割込みレベル1用割込みレジス
タ、割込みレベル2用割込みレジスタ・・・・・・、割
込みレベルN用割込みレジスタからなる割込みレジスタ
群、すなわち割込みレベル毎に対応するように設けられ
た割込みレジスタ群を備えている。
込みレベルが同一で各送信CPUに対応するフラグをも
つ割込み格納部36と、割込み格納部36の情報と書込
み情報とをもとに格納情報を作成する割込み格納情報作
成部34と、読出し動作により前記割込み格納部36を
初期化する割込み初期化制御部35とにより構成されて
いる。そして、CPU間割込み制御装置25は、図12
及び表4に示すように、割込みレベル1用割込みレジス
タ、割込みレベル2用割込みレジスタ・・・・・・、割
込みレベルN用割込みレジスタからなる割込みレジスタ
群、すなわち割込みレベル毎に対応するように設けられ
た割込みレジスタ群を備えている。
【0037】
【表4】
【0038】割込み要求部37は、前記割込み格納部3
6の情報をもとに、当該CPU21に対し割込みの要求
を、レベル別に要求する機能を有している。
6の情報をもとに、当該CPU21に対し割込みの要求
を、レベル別に要求する機能を有している。
【0039】アドレスデコーダ38は、前記複数の割込
みレジスタ33の内から1つを選択してアクセス可能の
状態とする機能を有している。
みレジスタ33の内から1つを選択してアクセス可能の
状態とする機能を有している。
【0040】表5は前記割込み格納部36内の割込みフ
ラグの状態遷移を示している。そして、前記割込みレジ
スタ33内の割込み格納部36への格納情報は、割込み
格納情報作成部34により、表5の状態遷移表のように
修正される。すなわち、割込みフラグへの“0”の書込
みには内部情報を変化させず、“1”の書込みには内部
情報を“1”にする。“1”の書込みは、割込みを発生
させる場合にのみ行う処理とすることにより、内部の情
報を変化させない“0”の書込み時には、割込みフラグ
が“0”のときは“0”、割込みフラグが“1”のとき
は“1”となり、内部情報の保持動作を行うことができ
る。
ラグの状態遷移を示している。そして、前記割込みレジ
スタ33内の割込み格納部36への格納情報は、割込み
格納情報作成部34により、表5の状態遷移表のように
修正される。すなわち、割込みフラグへの“0”の書込
みには内部情報を変化させず、“1”の書込みには内部
情報を“1”にする。“1”の書込みは、割込みを発生
させる場合にのみ行う処理とすることにより、内部の情
報を変化させない“0”の書込み時には、割込みフラグ
が“0”のときは“0”、割込みフラグが“1”のとき
は“1”となり、内部情報の保持動作を行うことができ
る。
【0041】このように、割込み格納情報作成部34
は、割込みフラグを初期化する動作機能を持たない。割
込み初期化制御部35が、割込みフラグを初期化する動
作機能を担い、表5に示すように、割込みレジスタ33
の読出動作時のすぐ後に、その割込みレジスタ33内の
割込みフラグを初期化する。
は、割込みフラグを初期化する動作機能を持たない。割
込み初期化制御部35が、割込みフラグを初期化する動
作機能を担い、表5に示すように、割込みレジスタ33
の読出動作時のすぐ後に、その割込みレジスタ33内の
割込みフラグを初期化する。
【0042】
【表5】
【0043】上記のように割込みレジスタ33は、受信
CPU側の割込みレベルが同一で各送信CPUに対応す
る複数のフラグを持っている。しかし送信CPUは、割
込みを発生させるための割込みフラグを事前に知ってい
るため、そのフラグのみを“1”にして割込みレジスタ
33に書込むことにより、他のフラグの情報を保持する
ことができる。換言すれば、割込み格納情報作成部34
は、割込み発生機能しかないため、書込み動作で誤って
他のフラグを初期化してしまう危険がないのである。
CPU側の割込みレベルが同一で各送信CPUに対応す
る複数のフラグを持っている。しかし送信CPUは、割
込みを発生させるための割込みフラグを事前に知ってい
るため、そのフラグのみを“1”にして割込みレジスタ
33に書込むことにより、他のフラグの情報を保持する
ことができる。換言すれば、割込み格納情報作成部34
は、割込み発生機能しかないため、書込み動作で誤って
他のフラグを初期化してしまう危険がないのである。
【0044】又割込みを受けたCPUは、割込まれた割
込みレベルの割込みレジスタ33を読出すことにより、
割込みをかけてきたCPUを認識でき、この情報を一時
記憶しておけば、複数のCPUから割込みが発生してき
た場合でも、各CPUの割込み処理を実施できる。
込みレベルの割込みレジスタ33を読出すことにより、
割込みをかけてきたCPUを認識でき、この情報を一時
記憶しておけば、複数のCPUから割込みが発生してき
た場合でも、各CPUの割込み処理を実施できる。
【0045】更に、割込みフラグの初期化動作が、割込
みレジスタの読出し動作時に、割込み初期化制御部35
により自動的に行われるため、特別の割込み初期化操作
が不要になる。
みレジスタの読出し動作時に、割込み初期化制御部35
により自動的に行われるため、特別の割込み初期化操作
が不要になる。
【0046】図13は送信CPUから割込みレジスタ3
3にアクセスするためのフローチャートを示す。図14
は受信CPUが割込みレジスタ33にアクセスするため
のフローチャートを示す。
3にアクセスするためのフローチャートを示す。図14
は受信CPUが割込みレジスタ33にアクセスするため
のフローチャートを示す。
【0047】図15、図16は本実施例の構成をより具
体的に示したものである。対応する割込みレベル毎に設
けられた各割込みレジスタ33は、送信側のCPU−1
〜CPU−Mに対応して、Mビットで、データバスに接
続されている。割込み格納情報作成部34は、データバ
スからの書込み情報と、割込み格納部36からの出力情
報とが、論理和で入力され、割込み初期化制御部35を
通して割込み格納部36に接続されている。割込み初期
化制御部35は、割込み格納情報作成部34からのデー
タに対してリード/ライト信号との論理積をとり割込み
格納部36への入力情報を作成している。そして、リー
ド/ライト動作の終了時に割込み格納部36に対して格
納動作を行う。割込み格納部36は、データバスとバッ
ファで接続されており読出しができる。割込み要求部3
7は、割込み格納部36の出力を割込みレベル毎に論理
和をとった構成であり、当該CPUに対して割込みレベ
ル別に割込み要求を発生する。すなわち割込み要求部3
7は、割込み要求信号レベル1、割込み要求信号レベル
2、・・・・・・、割込み要求信号レベルNのいずれか
を割込み制御部23(図4)に送信する。アドレスデコ
ーダ38は、接続されたアドレスバスからのアドレス信
号に基き、各割込みレジスタ33からその1つを選択す
る。
体的に示したものである。対応する割込みレベル毎に設
けられた各割込みレジスタ33は、送信側のCPU−1
〜CPU−Mに対応して、Mビットで、データバスに接
続されている。割込み格納情報作成部34は、データバ
スからの書込み情報と、割込み格納部36からの出力情
報とが、論理和で入力され、割込み初期化制御部35を
通して割込み格納部36に接続されている。割込み初期
化制御部35は、割込み格納情報作成部34からのデー
タに対してリード/ライト信号との論理積をとり割込み
格納部36への入力情報を作成している。そして、リー
ド/ライト動作の終了時に割込み格納部36に対して格
納動作を行う。割込み格納部36は、データバスとバッ
ファで接続されており読出しができる。割込み要求部3
7は、割込み格納部36の出力を割込みレベル毎に論理
和をとった構成であり、当該CPUに対して割込みレベ
ル別に割込み要求を発生する。すなわち割込み要求部3
7は、割込み要求信号レベル1、割込み要求信号レベル
2、・・・・・・、割込み要求信号レベルNのいずれか
を割込み制御部23(図4)に送信する。アドレスデコ
ーダ38は、接続されたアドレスバスからのアドレス信
号に基き、各割込みレジスタ33からその1つを選択す
る。
【0048】次に図17に基き、CPU−iからCPU
−jの割込みレベルkへの割込み動作を説明する。
−jの割込みレベルkへの割込み動作を説明する。
【0049】先ずCPU−iは、受信CPUであるCP
U−jのローカルバスのバス占有権を、バス制御部18
(図4)を介して獲得する。次いでCPU−iはCPU
−jに付設されたCPU間割込み制御装置25の割込み
レベルk用割込みレジスタ33におけるCPU−i用割
込みフラグのみ“1”にして書き込む(ステップ#3
1)。割込み格納情報作成部34は、CPU−i用割込
みフラグのみ“1”にし、割込み初期化制御部35は書
込み動作なので割込み格納部36への入力を“1”に
し、書込み動作終了時に“1”をラッチすることで、こ
れを割込み格納部36のCPU−i用割込みフラグに格
納する。
U−jのローカルバスのバス占有権を、バス制御部18
(図4)を介して獲得する。次いでCPU−iはCPU
−jに付設されたCPU間割込み制御装置25の割込み
レベルk用割込みレジスタ33におけるCPU−i用割
込みフラグのみ“1”にして書き込む(ステップ#3
1)。割込み格納情報作成部34は、CPU−i用割込
みフラグのみ“1”にし、割込み初期化制御部35は書
込み動作なので割込み格納部36への入力を“1”に
し、書込み動作終了時に“1”をラッチすることで、こ
れを割込み格納部36のCPU−i用割込みフラグに格
納する。
【0050】割込み格納部36は、CPU−i用割込み
の情報“1”を割込み要求部37に伝達し、割込み要求
部37がCPU−jに割込みレベルkの割込み処理を要
求する(ステップ#32)。CPU−jは、割込みレベ
ルkの割込み要求を認識し(ステップ#33)、現行処
理を中断する(ステップ#34)。
の情報“1”を割込み要求部37に伝達し、割込み要求
部37がCPU−jに割込みレベルkの割込み処理を要
求する(ステップ#32)。CPU−jは、割込みレベ
ルkの割込み要求を認識し(ステップ#33)、現行処
理を中断する(ステップ#34)。
【0051】次いでCPU−jは、割込みレベルk用の
割込みレジスタ33を読出し動作を行う(ステップ#3
5)。この読出し動作時、割込み格納部36の内容がバ
ッファを介して読出される。CPU−i用割込みフラグ
に関しては、割込み格納情報作成部34からのデータは
“1”であるが、割込み初期化制御部35が読出動作な
ので“0”が割込み格納部36に出力され、読出し動作
終了時に“0”がラッチさるれことになる結果、割込み
格納部36のCPU−i用割込みフラグは初期化される
(ステップ#36)。
割込みレジスタ33を読出し動作を行う(ステップ#3
5)。この読出し動作時、割込み格納部36の内容がバ
ッファを介して読出される。CPU−i用割込みフラグ
に関しては、割込み格納情報作成部34からのデータは
“1”であるが、割込み初期化制御部35が読出動作な
ので“0”が割込み格納部36に出力され、読出し動作
終了時に“0”がラッチさるれことになる結果、割込み
格納部36のCPU−i用割込みフラグは初期化される
(ステップ#36)。
【0052】CPU−jは、CPU−i用の割込みフラ
グが“1”であることを認識し、CPU−iからの割込
みと認識する。更に読出し情報をもとに他のCPUから
同一レベルの割込みがあるか否かを認識し、割込みがあ
る場合は一時記憶して、その割込み処理も行えるように
する(ステップ#37)。その後、CPU−jは、CP
U−iからの割込みレベルkの割込み処理を実行し、次
いで割込み処理からの復帰処理を実行する(ステップ#
38、#39)。
グが“1”であることを認識し、CPU−iからの割込
みと認識する。更に読出し情報をもとに他のCPUから
同一レベルの割込みがあるか否かを認識し、割込みがあ
る場合は一時記憶して、その割込み処理も行えるように
する(ステップ#37)。その後、CPU−jは、CP
U−iからの割込みレベルkの割込み処理を実行し、次
いで割込み処理からの復帰処理を実行する(ステップ#
38、#39)。
【0053】
【発明の効果】本発明によれば、従来例には必要であっ
た共通メモリ上のアクセス制御格納部、及びこのアクセ
ス制御格納部を使用したアクセス権制御フローが不要と
なるので、CPU間割込みの処理時間を短縮することが
できる。
た共通メモリ上のアクセス制御格納部、及びこのアクセ
ス制御格納部を使用したアクセス権制御フローが不要と
なるので、CPU間割込みの処理時間を短縮することが
できる。
【0054】又本発明によれば、CPU別に分れた割込
みレジスタへのアクセスの競合をなくすことができると
共に、前記割込みレジスタへの個々の割込み処理を簡略
化することができるにもかかわらず、複数CPU間の複
数レベルでの割込みを可能とすることができるCPU間
割込み制御装置を提供することができる。
みレジスタへのアクセスの競合をなくすことができると
共に、前記割込みレジスタへの個々の割込み処理を簡略
化することができるにもかかわらず、複数CPU間の複
数レベルでの割込みを可能とすることができるCPU間
割込み制御装置を提供することができる。
【図1】第1の従来例を示す構成図。
【図2】第1の従来例のCPU間割込み制御装置を示す
構成図。
構成図。
【図3】第1の従来例の問題点を示す説明図。
【図4】本発明及び第2の従来例で使用されるシステム
を示す構成図。
を示す構成図。
【図5】第2の従来例におけるCPU間割込み制御装置
とアクセス制御格納部とを示す構成図。
とアクセス制御格納部とを示す構成図。
【図6】第2の従来例における割込みレジスタと割込み
要求部とを示す回路構成図。
要求部とを示す回路構成図。
【図7】第2の従来例におけるアクセス権制御の動作を
示すフローチャート。
示すフローチャート。
【図8】第2の従来例におけるCPU間割込み制御装置
の動作を示すフローチャート。
の動作を示すフローチャート。
【図9】第2の従来例における割込みレジスタ内の割込
み格納部におけるフラグ遷移を示す説明図。
み格納部におけるフラグ遷移を示す説明図。
【図10】第2の従来例においてアクセス権の制御フロ
ーが無い場合に生ずる問題点を示す説明図。
ーが無い場合に生ずる問題点を示す説明図。
【図11】第2の従来例においてアクセス権の制御フロ
ーが無い場合に生ずる問題点を示す説明図。
ーが無い場合に生ずる問題点を示す説明図。
【図12】本発明の実施例におけるCPU間割込み制御
装置の内部構成図。
装置の内部構成図。
【図13】本発明の実施例における送信CPUから割込
みレジスタをアクセスする際の動作を説明するフローチ
ャート。
みレジスタをアクセスする際の動作を説明するフローチ
ャート。
【図14】本発明の実施例における受信CPUから割込
みレジスタをアクセスする際の動作を説明するフローチ
ャート。
みレジスタをアクセスする際の動作を説明するフローチ
ャート。
【図15】本発明の実施例におけるCPU間割込み制御
装置を示す構成図。
装置を示す構成図。
【図16】本発明の実施例における割込みレジスタ及び
割込み要求部を示す回路構成図。
割込み要求部を示す回路構成図。
【図17】本発明の実施例におけるCPU間割込み制御
装置の動作を説明するフローチャート。
装置の動作を説明するフローチャート。
21 CPU 33 割込みレジスタ 34 割込み情報作成部 35 割込み初期化制御部 36 割込み格納部 37 割込み要求部 38 アドレスデコーダ
Claims (1)
- 【請求項1】 機器内で複数のCPUを有し、割込みを
かけるCPUが割込みを受けるCPUのローカルバスの
バス占有権を獲得して割込みを行うシステムにおける各
CPUに付設されたCPU間割込み制御装置において、 割込みを受けるCPU側の割込みレベルが同一で各CP
Uからの割込みフラグを持つ割込み格納部と、割込み格
納部の情報と書込み情報をもとに格納情報を作成する割
込み情報作成部と、読出し動作により割込み格納部を初
期化する割込み初期化制御部とから構成された割込みレ
ジスタを、前記割込みレベルの夫々に対応しかつその対
応数だけ備え、 前記割込みレジスタの割込み格納部の情報をもとにCP
Uに対して割込みの要求をレベル別に要求する割込み要
求部を備え、 前記複数の割込みレジスタの中から1つを選択してアク
セス可能な状態とするアドレスデコーダを備え、 前記割込みレジスタを、割込みレベル毎にアクセスし、
割込み格納部の情報により前記割込み格納部への書込み
動作を管理し、読出し動作により割込み格納部の初期化
をするように構成したことを特徴とするCPU間割込み
制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23941891A JPH0581209A (ja) | 1991-09-19 | 1991-09-19 | Cpu間割込み制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23941891A JPH0581209A (ja) | 1991-09-19 | 1991-09-19 | Cpu間割込み制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0581209A true JPH0581209A (ja) | 1993-04-02 |
Family
ID=17044481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23941891A Pending JPH0581209A (ja) | 1991-09-19 | 1991-09-19 | Cpu間割込み制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0581209A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7937771B2 (en) | 2002-10-31 | 2011-05-10 | Alpinestars Research Srl | Garment for motorcyclists with improved comfort |
-
1991
- 1991-09-19 JP JP23941891A patent/JPH0581209A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7937771B2 (en) | 2002-10-31 | 2011-05-10 | Alpinestars Research Srl | Garment for motorcyclists with improved comfort |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10002085B2 (en) | Peripheral component interconnect (PCI) device and system including the PCI | |
US5682551A (en) | System for checking the acceptance of I/O request to an interface using software visible instruction which provides a status signal and performs operations in response thereto | |
US6105080A (en) | Host adapter DMA controller with automated host reply capability | |
US7743195B2 (en) | Interrupt mailbox in host memory | |
JPS6119062B2 (ja) | ||
JP2591502B2 (ja) | 情報処理システムおよびそのバス調停方式 | |
JPH0793274A (ja) | データ転送方式及びデータ転送装置 | |
JPH0581209A (ja) | Cpu間割込み制御装置 | |
JP3049125B2 (ja) | Cpu間割込み制御装置 | |
JPH0554002A (ja) | Cpu間割込み制御装置 | |
JPH11232213A (ja) | 入出力装置におけるデータ転送方式 | |
JPH0553999A (ja) | Cpu間割込み制御装置 | |
JP2007241922A (ja) | 共有資源利用のための調停方法及びその調停装置 | |
JPH0544238B2 (ja) | ||
US6625678B1 (en) | Livelock avoidance method | |
US7076676B2 (en) | Sequence alignment logic for generating output representing the slowest from group write slaves response inputs | |
JPH0581208A (ja) | Cpu間割込み制御装置 | |
JPH0554000A (ja) | Cpu間割込み制御装置 | |
JP2731768B2 (ja) | メモリ制御装置 | |
JPH0844661A (ja) | 情報処理装置 | |
US7689781B2 (en) | Access to a collective resource in which low priority functions are grouped, read accesses of the group being given higher priority than write accesses of the group | |
JPH0844662A (ja) | 情報処理装置 | |
US5748909A (en) | Interface board and instruction processing device without a local CPU | |
JPH0754544B2 (ja) | イメ−ジメモリのアクセス回路 | |
KR960007835B1 (ko) | 다중 프로세서의 공통 메모리 억세스 장치 |