(57)【特許請求の範囲】
【請求項１】
複数のＣＰＵと、
割込み要因毎に、複数の前記ＣＰＵのそれぞれについて、割込み要求に対する許可の有無を示す情報を設定することができるようになされているとともに、前記割込み要因毎に、割込み要求信号の有無を示す情報を設定することができるように構成された第１階層のテーブルと、複数の前記割込み要因で構成される集合毎に、前記集合全体として、それぞれの前記ＣＰＵが前記割込み要求を受けて実行される割込み処理を実行させる割込み対象ＣＰＵであるか否かを示す情報を設定することができるようになされているとともに、前記集合毎に、前記集合全体としてそれぞれの前記ＣＰＵに対する割込み要求に対する許可の有無を示す情報を設定することができるように構成された第２階層のテーブルとを記憶する記憶手段と、
前記第１階層のテーブルにおいて、前記割込み要因ごとに複数の前記ＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を予め設定し、前記第２階層のテーブルにおいて、前記集合ごとに、前記集合全体として、それぞれの前記ＣＰＵに対する割込み要求に対する許可の有無を予め設定するとともに、前記割込み要求信号が入力された場合、前記割込み要求信号の入力に基づいて、前記第１階層のテーブルおよび前記第２階層のテーブルをそれぞれ設定する割込み制御手段と
を備え、
前記割込み制御手段は、前記割込み要因のうちのいずれかに対応する前記割込み要求信号が入力されると、
前記第１階層のテーブルにおいて、前記割り込み要求信号に対応する前記割込み要因に、前記割込み要求信号が有ることを示す情報を設定し、
前記第１階層のテーブルに予め設定されている、前記割込み要因ごとの複数の前記ＣＰＵのそれぞれに対する割込み要求に対する許可を示す情報を参照して、入力された前記割込み要求信号に対して処理を実行するのは、複数の前記ＣＰＵのうちのいずれであるかを特定し、
前記第２階層のテーブルにおいて、入力された前記割込み要求信号に対して処理を実行するものとして特定された前記ＣＰＵを、前記割込み処理対象ＣＰＵであるとして設定し、
前記第２階層のテーブルに予め設定されている、前記集合ごとの複数の前記ＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を参照して、前記割込み処理対象ＣＰＵに対する前記割込み要求信号の出力の要否を決定し、
前記割込み要求信号の出力が必要である場合にのみ、前記割込み処理対象ＣＰＵに対して前記割込み要求信号を出力する
ことを特徴とする情報処理装置。
【請求項２】
複数の前記ＣＰＵのうち、前記割込み処理対象ＣＰＵは、入力された前記割込み要求信号の割込み要因を判別して、判別結果を基に割込み処理を実行し、
前記割込み制御手段は、前記割込み処理対象ＣＰＵが割込み処理を終了すると、前記第２階層のテーブルにおいて、前記割込み処理対象ＣＰＵとして設定された前記ＣＰＵの設定を解除し、前記第１階層のテーブルにおいて、対応する前記割込み要因の割込み要求があることを示す情報の設定を解除する
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
複数のＣＰＵを有し、割込み要因毎に、複数の前記ＣＰＵのそれぞれについて割込み要求に対する許可の有無を示す情報を設定することができるようになされているとともに、前記割込み要因毎に、割込み要求信号の有無を示す情報を設定することができるように構成された第１階層のテーブルと、複数の前記割込み要因で構成される集合毎に、前記集合全体として、それぞれの前記ＣＰＵが前記割込み要求を受けて実行される割込み処理を実行させる割込み処理対象ＣＰＵであるか否かを示す情報を設定することができるようになされているとともに、前記集合毎に、前記集合全体としてそれぞれの前記ＣＰＵに対する割込み要求に対する許可の有無を示す情報を設定することができるように構成された第２階層のテーブルとを内部に記録している情報処理装置において発生した割込み要求信号を、複数の前記ＣＰＵのうち、前記割込み処理対象ＣＰＵに出力する割込み制御方法であって、
前記第１階層のテーブルにおいて、前記割込み要因ごとに複数の前記ＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を予め設定するステップと、
前記第２階層のテーブルにおいて、前記集合ごとに、前記集合全体として、それぞれの前記ＣＰＵに対する割込み要求に対する許可の有無を予め設定するステップと、
前記割込み要因のうちのいずれかに対応する前記割込み要求信号が入力されたとき、前記第１階層のテーブルにおいて、前記割込み要因ごとに、前記割込み要求信号が有ることを示す情報を設定するステップと、
前記第１階層のテーブルに予め設定されている、前記割込み要因ごとの複数の前記ＣＰＵのそれぞれに対する割込み要求に対する許可を示す情報を参照して、入力された前記割込み要求信号に対して処理を実行するのは、複数の前記ＣＰＵのうちのいずれであるかを特定するステップと、
前記第２階層のテーブルにおいて、入力された前記割込み要求信号に対して処理を実行するものとして特定された前記ＣＰＵを、前記割込み処理対象ＣＰＵであるとして設定するステップと、
前記第２階層のテーブルに予め設定されている、前記集合ごとの複数の前記ＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を参照して、前記割込み処理対象ＣＰＵに対する前記割込み要求信号の出力の要否を判定するステップと、
前記割込み要求信号の出力が必要である場合にのみ、前記割込み処理対象ＣＰＵに対して前記割込み要求信号を出力するステップと
を有することを特徴とする割込み制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は情報処理装置および割込み制御方法に係り、特に複数のＣＰＵを有するシステムにおいて発生した割込み要求信号の各ＣＰＵへの出力制御を柔軟に設定することを可能とする情報処理装置および割込み制御方法に関する。
【０００２】
【従来の技術】
図１は、複数のＣＰＵを有する情報処理装置の構成の一例を示す図である。図１において、１はＩＣチップ、２はＩＣチップ１上に設けられた内部ＣＰＵ、３はＩＣチップ１外に設けられた外部ＣＰＵ、４はＲＡＭ、５はＲＯＭ、６は所定の機能を実現する第１のモジュール、７は第２のモジュール、８は第３のモジュール、９は第４のモジュール、１０は内部バス、１１は外部バス、１２は割込みコントローラである。割込みコントローラ１２は、モジュール６，７，８，９等から出力される割込み要求信号を入力して、それぞれの割込み要求信号に係る割込み要因に応じて割込み処理の対象となるＣＰＵを特定し、当該ＣＰＵに対して割込み要求信号を出力する。
【０００３】
図２は、割込み要因毎の割込み処理対象ＣＰＵおよび割込み要求信号の発生の有無を特定するための従来の割込み用テーブルを示す図である。このような割込み用テーブルは、例えば割込みコントローラ１２に付設されるレジスタあるいはＲＡＭ４等に記憶される。図２において、Ａ１，Ａ２，Ａ３，…，Ｄ３，Ｄ４はそれぞれ割込みコントローラ１２に入力される割込み要求信号に係る割込み要因を示す。内部ＣＰＵ割込み許可フラグは、各割込み要因毎に、内部ＣＰＵ２が割込み処理対象である場合には１となり、内部ＣＰＵ２が割込み処理対象でない場合には０となる。外部ＣＰＵ割込み許可フラグは、各割込み要因毎に、外部ＣＰＵ３が割込み処理対象である場合には１となり、外部ＣＰＵ３が割込み処理対象でない場合には０となる。また、割込みフラグは、通常の状態では０の値をとり、各割込み要因毎に、割込み要求信号が出力されれば１となる。
【０００４】
次に、割込みコントローラに係る動作について説明する。割込み用テーブルにおいては、予め各割込み要因毎に割込み処理の対象となるＣＰＵを特定して、内部ＣＰＵ割込み許可フラグおよび外部ＣＰＵ割込み許可フラグについて、それぞれ内部ＣＰＵまたは外部ＣＰＵが割込み処理対象となる場合には１を設定し、割込み処理対象とならない場合には０を設定する。第１のモジュール６等から割込み要求信号を入力すると、割込みコントローラ１２は、当該割込み要求信号に係る割込み要因を特定して、割込み要因に対応する割込みフラグに１を設定する。次に、割込みフラグと内部ＣＰＵ割込み許可フラグとの論理積、並びに割込みフラグと外部ＣＰＵ割込み許可フラグとの論理積をとり、論理積が１となるＣＰＵに対して割込み要求信号を出力する。
【０００５】
【発明が解決しようとする課題】
複数のＣＰＵを有する情報処理装置における従来の割込み制御は上記のように実施されるので、内部ＣＰＵ割込み許可フラグおよび外部ＣＰＵ割込み許可フラグのフラグ値に基づいて割込み要求信号が出力されるから、内部ＣＰＵ割込み許可フラグまたは外部ＣＰＵ割込み許可フラグのフラグ値の設定を誤った場合に安易に誤った割込み要求信号が出力されてしまうという課題があった。また、割込み要因の種類に応じて、例えば割込み要因｛Ａ１，Ａ２，Ａ３，Ａ４｝を集合［Ａ］とするように、割込み要因を幾つかの集合にそれぞれ帰属させるような場合に、各集合毎に割込み処理対象となるＣＰＵを変更しようとすると、各割込み要因毎にフラグ値の設定を逐次的に個別に変更する必要があって、設定変更に手間を要するという課題があった。
【０００６】
この発明は上記のような課題を解決するためになされたもので、誤った割込み要求信号が出力される確率を低減してシステムの信頼性を向上するとともに、割込み処理対象となるＣＰＵの設定を簡易に実現することができる割込み制御方法を得ることを目的とする。
【０００７】
【課題を解決するための手段】
この発明に係る情報処理装置は、複数のＣＰＵと、割込み要因毎に複数のＣＰＵのそれぞれについて、割込み要求に対する許可の有無を示す情報を設定することができるようになされているとともに、割込み要因毎に、割込み要求信号の有無を示す情報を設定することができるように構成された第１階層のテーブルと、複数の割込み要因で構成される集合毎に、集合全体として、それぞれのＣＰＵが割込み要求を受けて実行される割込み処理を実行させる割込み対象ＣＰＵであるか否かを示す情報を設定することができるようになされているとともに、集合毎に集合全体としてそれぞれのＣＰＵに対する割込み要求に対する許可の有無を示す情報を設定することができるように構成された第２階層のテーブルを記憶する記憶手段と、第１階層のテーブルにおいて、割込み要因ごとに複数のＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を予め設定し、第２階層のテーブルにおいて、集合ごとに、集合全体として、それぞれのＣＰＵに対する割込み要求に対する許可の有無を予め設定するとともに、割込み要求信号が入力された場合、割込み要求信号の入力に基づいて、第１階層のテーブルおよび第２階層のテーブルをそれぞれ設定する割込み制御手段とを備え、割込み制御手段は、割込み要因のうちのいずれかに対応する割込み要求信号が入力されると、第１階層のテーブルにおいて、割り込み要求信号に対応する割込み要因に、割込み要求信号が有ることを示す情報を設定し、第１階層のテーブルに予め設定されている、割込み要因ごとの複数のＣＰＵのそれぞれに対する割込み要求に対する許可を示す情報を参照して、入力された割込み要求信号に対して処理を実行するのは、複数のＣＰＵのうちのいずれであるかを特定し、第２階層のテーブルにおいて、入力された割込み要求信号に対して処理を実行するものとして特定されたＣＰＵを、割込み処理対象ＣＰＵであるとして設定し、第２階層のテーブルに予め設定されている、集合ごとの複数のＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を参照して、割込み処理対象ＣＰＵに対する割込み要求信号の出力の要否を決定し、割込み要求信号の出力が必要である場合にのみ、割込み処理対象ＣＰＵに対して割込み要求信号を出力するようにしたものである。
【０００８】
この発明に係る情報処理装置は、複数のＣＰＵのうち、割込み処理対象ＣＰＵは、入力された割込み要求信号の割込み要因を判別して、判別結果を基に割込み処理を実行し、割込み制御手段は、割込み処理対象ＣＰＵが割込み処理を終了すると、第２階層のテーブルにおいて、割込み処理対象ＣＰＵとして設定されたＣＰＵの設定を解除し、第１階層のテーブルにおいて、対応する割込み要因の割込み要求があることを示す情報の設定を解除するようにしたものである。
【００１１】
この発明に係る割込み制御方法は、複数のＣＰＵを有し、割込み要因毎に、複数のＣＰＵのそれぞれについて割込み要求に対する許可の有無を示す情報を設定することができるようになされているとともに、割込み要因毎に、割込み要求信号の有無を示す情報を設定することができるように構成された第１階層のテーブルと、複数の割込み要因で構成される集合毎に、集合全体として、それぞれのＣＰＵが割込み要求を受けて実行される割込み処理を実行させる割込み処理対象ＣＰＵであるか否かを示す情報を設定することができるようになされているとともに、集合毎に、集合全体としてそれぞれのＣＰＵに対する割込み要求に対する許可の有無を示す情報を設定することができるように構成された第２階層のテーブルとを内部に記録している情報処理装置において発生した割込み要求信号を、複数のＣＰＵのうち、割込み処理対象ＣＰＵに出力する割込み制御方法であって、第１階層のテーブルにおいて、割込み要因ごとに複数のＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を予め設定するステップと、第２階層のテーブルにおいて、集合ごとに、集合全体として、それぞれのＣＰＵに対する割込み要求に対する許可の有無を予め設定するステップと、割込み要因のうちのいずれかに対応する割込み要求信号が入力されたとき、第１階層のテーブルにおいて、割込み要因ごとに、割込み要求信号が有ることを示す情報を設定するステップと、第１階層のテーブルに予め設定されている、割込み要因ごとの複数のＣＰＵのそれぞれに対する割込み要求に対する許可を示す情報を参照して、入力され割込み要求信号に対して処理を実行するのは、複数のＣＰＵのうちのいずれであるかを特定するステップと、第２階層のテーブルにおいて、入力された割込み要求信号に対して処理を実行するものとして特定されたＣＰＵを、割込み処理対象ＣＰＵであるとして設定するステップと、第２階層のテーブルに予め設定されている、集合ごとの複数のＣＰＵのそれぞれに対する割込み要求に対する許可の有無を示す情報を参照して、割込み処理対象ＣＰＵに対する割込み要求信号の出力の要否を否か判定するステップと、割込み要求信号の出力が必要である場合にのみ、割込み処理対象ＣＰＵに対して割り込み要求信号を出力するステップとを有するようにしたものである。
【００１３】
【発明の実施の形態】
実施の形態１．
図３は、この発明の実施の形態１による割込み用テーブルを示す図である。図３に示されるように、この実施の形態による割込み用テーブルは２つの階層から構成されている。ここでは、割込み要因Ａ１，Ａ２，Ａ３，Ａ４から割込み要因の集合［Ａ］が構成され、割込み要因Ｂ１，Ｂ２，Ｂ３，Ｂ４から割込み要因の集合［Ｂ］が構成され、割込み要因Ｃ１，Ｃ２，Ｃ３，Ｃ４から割込み要因の集合［Ｃ］が構成され、割込み要因Ｄ１，Ｄ２，Ｄ３，Ｄ４から割込み要因の集合［Ｄ］が構成される。なお、この実施の形態では１つの割込み要因の集合にそれぞれ４つの割込み要因が含まれる構成をとっているが、１つの集合に含まれる割込み要因の数は任意に設定することができ、また割込み要因の集合の数も任意に設定することができる。また、本実施の形態において、割込み用テーブル以外の構成については、図１と同様のシステム構成をとるものとする。図１において、割込みコントローラ１２は特許請求の範囲に記載される割込み制御手段に対応するものであり、また割込みコントローラ１２に付設されるレジスタまたはＲＡＭ４は上記第１階層のテーブルおよび第２階層のテーブルを記憶する記憶手段の一例として与えられるものである。
【００１４】
第１階層のテーブルについて説明すると、上述したようにＡ１，Ａ２，Ａ３，…，Ｄ３，Ｄ４はそれぞれ割込みコントローラ１２に入力される割込み要求信号に係る割込み要因を示す。内部ＣＰＵ個別割込み許可フラグは、各割込み要因毎に、内部ＣＰＵ２が割込み処理対象である場合には１となり、内部ＣＰＵ２が割込み処理対象でない場合には０となる。外部ＣＰＵ個別割込み許可フラグは、各割込み要因毎に、外部ＣＰＵ３が割込み処理対象である場合には１となり、外部ＣＰＵ３が割込み処理対象でない場合には０となる。また、内部ＣＰＵ個別割込みフラグおよび外部ＣＰＵ個別割込みフラグは、通常の状態では０の値をとり、各割込み要因毎に、情報処理装置において割込み要求信号が発生すれば１となる。
【００１５】
次に、第２階層のテーブルについて説明すると、上述したように［Ａ］は割込み要因Ａ１，Ａ２，Ａ３，Ａ４から構成される集合を示し、［Ｂ］は割込み要因Ｂ１，Ｂ２，Ｂ３，Ｂ４から構成される集合を示し、［Ｃ］は割込み要因Ｃ１，Ｃ２，Ｃ３，Ｃ４から構成される集合を示し、［Ｄ］は割込み要因Ｄ１，Ｄ２，Ｄ３，Ｄ４から構成される集合を示す。内部ＣＰＵ全体割込み許可フラグは、各集合毎に集合全体として、内部ＣＰＵ２が割込み処理対象である場合には１となり、内部ＣＰＵ２が割込み処理対象でない場合には０となる。外部ＣＰＵ全体割込み許可フラグは、各集合毎に集合全体として、外部ＣＰＵ３が割込み処理対象である場合には１となり、外部ＣＰＵ３が割込み処理対象でない場合には０となる。内部ＣＰＵ全体割込みフラグは、各集合毎に、第１階層においてそれぞれの集合に含まれるいずれかの割込み要因に係る内部ＣＰＵ個別割込み許可フラグと内部ＣＰＵ個別割込みフラグとがともに１となる場合に当該集合について内部ＣＰＵに対する割込み要求があるものとして１となり、それ以外の場合には０となる。外部ＣＰＵ全体割込みフラグは、各集合毎に、第１階層においてそれぞれの集合に含まれるいずれかの割込み要因に係る外部ＣＰＵ個別割込み許可フラグと外部ＣＰＵ個別割込みフラグとがともに１となる場合に当該集合について外部ＣＰＵに対する割込み要求があるものとして１となり、それ以外の場合は０となる。
【００１６】
次に、割込みコントローラに係る動作について説明する。図４は、割込み用テーブルにおける処理過程の一例を示す図である。なお、図４については、説明を容易とするように説明に関連する部分のみを示し、第１階層における割込み要因Ｂ１，Ｂ２，Ｂ３，…，Ｄ３，Ｄ４に係るテーブルは省略するものとする。この例では、まず第１階層のテーブルにおいて、割込み要因Ａ１，Ａ２については割込み処理対象ＣＰＵとして内部ＣＰＵを設定するように、内部ＣＰＵ個別割込み許可フラグを１に設定するとともに、外部ＣＰＵ個別割込み許可フラグを０に設定する。また、割込み要因Ａ３，Ａ４については割込み処理対象ＣＰＵとして外部ＣＰＵを設定するように、外部ＣＰＵ個別割込み許可フラグを１に設定するとともに、内部ＣＰＵ個別割込み許可フラグを０に設定する。また、第２階層のテーブルにおいて、割込み要因の集合［Ａ］については、割込み処理対象ＣＰＵとして内部ＣＰＵを設定するように、内部ＣＰＵ全体割込み許可フラグを１に設定するとともに、外部ＣＰＵ全体割込み許可フラグを０に設定する。
【００１７】
第１のモジュール６等から割込み要因Ａ１に係る割込み要求信号を入力すると、図４（ａ）に示されるように、割込みコントローラ１２は、割込み用テーブルの第１階層において、割込み要因Ａ１に係る内部ＣＰＵ個別割込みフラグおよび外部ＣＰＵ個別割込みフラグを１に設定する。次に、割込み要因Ａ１に係る内部ＣＰＵ個別割込み許可フラグおよび外部ＣＰＵ個別割込み許可フラグを参照して、フラグ値が１となっている内部ＣＰＵを割込み処理対象ＣＰＵとして特定し、第２階層において割込み要因の集合［Ａ］に係る内部ＣＰＵ全体割込みフラグを１に設定する。次に、割込みコントローラ１２は、第２階層において内部ＣＰＵ全体割込み許可フラグを参照し、フラグ値が１となっているので、内部ＣＰＵ２に対して割込み要求信号を出力する。内部ＣＰＵ２は、割込み要求信号を入力すると、割込み要求信号から割込み要因が直接的に判別できる場合には、当該割込み要因（この場合、割込み要因Ａ１）に係る割込み処理を実施する。また、割込み要求信号からは割込み要因の集合（この場合、集合［Ａ］）のみが判別できる場合には、割込み用テーブルの第１階層を参照して、内部ＣＰＵ個別割込みフラグと内部ＣＰＵ個別割込み許可フラグとが共に１となっている割込み要因を検出して、当該割込み要因に係る割込み処理を実施する。そして、内部ＣＰＵ２による割込み処理が終了すれば、内部ＣＰＵ２または割込みコントローラ１２は、第２階層において割込み要因の集合［Ａ］に係る内部ＣＰＵ全体割込みフラグを０に戻すとともに、第１階層において割込み要因Ａ１に係る内部ＣＰＵ個別割込みフラグを０に戻す。
【００１８】
次に、第１のモジュール６等から割込み要因Ａ３に係る割込み要求信号を入力すると、図４（ｂ）に示されるように、割込みコントローラ１２は、割込み用テーブルの第１階層において、割込み要因Ａ３に係る内部ＣＰＵ個別割込みフラグおよび外部ＣＰＵ個別割込みフラグを１に設定する。次に、割込み要因Ａ３に係る内部ＣＰＵ個別割込み許可フラグおよび外部ＣＰＵ個別割込み許可フラグを参照して、フラグ値が１となっている外部ＣＰＵを割込み処理対象ＣＰＵとして特定し、第２階層において割込み要因の集合［Ａ］に係る外部ＣＰＵ全体割込みフラグを１に設定する。次に、割込みコントローラ１２は、第２階層において外部ＣＰＵ全体割込み許可フラグを参照し、フラグ値が０となっているので、外部ＣＰＵ３に対しては割込み要求信号を出力しない。なお、この場合にも、第２階層において、割込み要因の集合［Ａ］に係る外部ＣＰＵ全体割込みフラグを０に戻す。
【００１９】
上記のように、割込み要因の集合［Ａ］について外部ＣＰＵ全体割込み許可フラグが０となっていれば、例え割込み要因の集合［Ａ］に含まれる割込み要因Ａ３について外部ＣＰＵ個別割込み許可フラグが１となっていても、外部ＣＰＵ３に対して割込み要求信号が出力されることはなく、割込み要求信号の出力を二重にチェックすることが可能となる。また、図４（ｂ）に示されるように、割込み処理が実施されなければ、第１階層において割込み要因Ａ３に係る外部ＣＰＵ個別割込みフラグが０に戻されることはない。したがって、第１階層の内部ＣＰＵ個別割込みフラグおよび外部ＣＰＵ個別割込みフラグについては、例えば所定の時間間隔毎にリセットするものとすれば、リセットまでの間においてはフラグ値が保持されるので、割込み処理の過程あるいは結果を確認することが可能となる。すなわち、内部ＣＰＵ個別割込みフラグと外部ＣＰＵ個別割込みフラグとの組み合わせが（１，１）である場合には、割込みコントローラ１２に割込み要求信号が入力されてはいるけれども、割込みコントローラ１２からいずれのＣＰＵに対しても割込み要求信号が出力されなかったことを意味する。また、内部ＣＰＵ個別割込みフラグと外部ＣＰＵ個別割込みフラグとの組み合わせが（１，０）または（０，１）の場合には、割込みコントローラ１２に入力された割込み要求信号に係る割込み処理は、それぞれ内部ＣＰＵ２または外部ＣＰＵ３により、既に実行済みであることを意味する。
【００２０】
図５は、割込み用テーブルにおける処理過程の他の例を示す図である。なお、図５についても、説明を容易とするように説明に関連する部分のみを示すものとする。この例では、まず第１階層のテーブルにおいて、割込み要因Ｂ１，Ｂ２，Ｂ３，Ｂ４については、割込み処理対象ＣＰＵとして内部ＣＰＵ２および外部ＣＰＵ３を共に設定するように、内部ＣＰＵ個別割込み許可フラグを１に設定するとともに外部ＣＰＵ個別割込み許可フラグを１に設定する。また、第２階層のテーブルにおいて、割込み要因の集合［Ｂ］については、割込み処理対象ＣＰＵとして外部ＣＰＵを設定するように、内部ＣＰＵ全体割込み許可フラグを０に設定するとともに、外部ＣＰＵ全体割込み許可フラグを１に設定する。
【００２１】
第１のモジュール６等から割込み要因Ｂ２に係る割込み要求信号を入力すると、割込みコントローラ１２は、割込み用テーブルの第１階層において、割込み要因Ｂ２に係る内部ＣＰＵ個別割込みフラグおよび外部ＣＰＵ個別割込みフラグを１に設定する。次に、割込み要因Ｂ２に係る内部ＣＰＵ個別割込み許可フラグおよび外部ＣＰＵ個別割込み許可フラグを参照して、フラグ値が１となっている内部ＣＰＵ２および外部ＣＰＵ３を共に割込み処理対象ＣＰＵとして特定し、第２階層において割込み要因の集合［Ｂ］に係る内部ＣＰＵ全体割込みフラグおよび外部ＣＰＵ全体割込みフラグを共に１に設定する。次に、割込みコントローラ１２は、第２階層において内部ＣＰＵ全体割込み許可フラグおよび外部ＣＰＵ全体割込み許可フラグを参照し、内部ＣＰＵ全体割込み許可フラグが０であり外部ＣＰＵ全体割込み許可フラグが１であることから、外部ＣＰＵ３に対して割込み要求信号を出力する。
【００２２】
外部ＣＰＵ３は、割込み要求信号を入力すると、割込み要求信号から割込み要因が直接的に判別できる場合には、当該割込み要因（この場合、割込み要因Ｂ２）に係る割込み処理を実施する。また、割込み要求信号からは割込み要因の集合（この場合、集合［Ｂ］）のみが判別できる場合には、割込み用テーブルの第１階層を参照して、外部ＣＰＵ個別割込みフラグと外部ＣＰＵ個別割込み許可フラグとが共に１となっている割込み要因を検出して、当該割込み要因に係る割込み処理を実施する。次に、外部ＣＰＵ３による割込み処理が終了すれば、外部ＣＰＵ３または割込みコントローラ１２は、第２階層において割込み要因の集合［Ｂ］に係る外部ＣＰＵ全体割込みフラグを０に戻すとともに、第１階層において割込み要因Ｂ２に係る外部ＣＰＵ個別割込みフラグを０に戻す。上記のように、それぞれの割込み要因の集合について、第１階層において集合に含まれる全ての割込み要因に係る内部ＣＰＵ個別割込み許可フラグおよび外部ＣＰＵ個別割込み許可フラグを１にしておけば、第２階層において内部ＣＰＵ全体割込み許可フラグおよび外部ＣＰＵ全体割込み許可フラグを適宜設定することで、集合に含まれる割込み要因全てについてまとめて割込み処理対象ＣＰＵを設定することが可能となる。
【００２３】
図６は、割込み用テーブルにおける処理過程の他の例を示す図である。なお、図６についても、説明を容易とするように説明に関連する部分のみを示すものとする。この例では、まず第１階層のテーブルにおいて、割込み要因Ｃ１，Ｃ２については割込み処理対象ＣＰＵとして内部ＣＰＵを設定するように、内部ＣＰＵ個別割込み許可フラグを１に設定するとともに、外部ＣＰＵ個別割込み許可フラグを０に設定する。また、割込み要因Ｃ３，Ｃ４については割込み処理対象ＣＰＵとして外部ＣＰＵを設定するように、外部ＣＰＵ個別割込み許可フラグを１に設定するとともに、内部ＣＰＵ個別割込み許可フラグを０に設定する。また、第２階層のテーブルにおいて、割込み要因の集合［Ｃ］については、割込み処理対象ＣＰＵとして内部ＣＰＵ２および外部ＣＰＵ３を共に設定するように、内部ＣＰＵ全体割込み許可フラグおよび外部ＣＰＵ全体割込み許可フラグを共に１に設定する。
【００２４】
第１のモジュール６等から割込み要因Ｃ４に係る割込み要求信号を入力すると、割込みコントローラ１２は、割込み用テーブルの第１階層において、割込み要因Ｃ４に係る内部ＣＰＵ個別割込みフラグおよび外部ＣＰＵ個別割込みフラグを１に設定する。次に、割込み要因Ｃ４に係る内部ＣＰＵ個別割込み許可フラグおよび外部ＣＰＵ個別割込み許可フラグを参照して、フラグ値が１となっている外部ＣＰＵを割込み処理対象ＣＰＵとして特定し、第２階層において割込み要因の集合［Ｃ］に係る外部ＣＰＵ全体割込みフラグを１に設定する。次に、割込みコントローラ１２は、第２階層において外部ＣＰＵ全体割込み許可フラグを参照し、フラグ値が１となっているので、外部ＣＰＵ３に対して割込み要求信号を出力する。外部ＣＰＵ３は、割込み要求信号を入力すると、割込み要求信号から割込み要因が直接的に判別できる場合には、当該割込み要因に係る割込み処理を実施する。また、割込み要求信号からは割込み要因の集合（この場合、集合［Ｃ］）のみが判別できる場合には、割込み用テーブルの第１階層を参照して、外部ＣＰＵ個別割込みフラグと外部ＣＰＵ個別割込み許可フラグとが共に１となっている割込み要因（この場合、割込み要因Ｃ４）を検出して、当該割込み要因に係る割込み処理を実施する。次に、外部ＣＰＵ３による割込み処理が終了すれば、外部ＣＰＵ３または割込みコントローラ１２は、第２階層において割込み要因の集合［Ｃ］に係る外部ＣＰＵ全体割込みフラグを０に戻すとともに、第１階層において割込み要因Ｃ４に係る外部ＣＰＵ個別割込みフラグを０に戻す。
【００２５】
上記のように、それぞれの割込み要因の集合について、第２階層において内部ＣＰＵ全体割込み許可フラグおよび外部ＣＰＵ全体割込み許可フラグを共に１にしておけば、割込み用テーブルの第１階層において各割込み要因毎に設定された内部ＣＰＵ個別割込み許可フラグおよび外部ＣＰＵ個別割込み許可フラグに基づいて、そのまま割込み要求信号を出力させることが可能となる。すなわち、第２階層における内部ＣＰＵ全体割込み許可フラグおよび外部ＣＰＵ全体割込み許可フラグを適宜設定することにより、従来技術で説明したシステムと同様に、各割込み要因毎に一意に割込み要求信号の出力を決定する制御機構をオプション的に構成することが可能となる。
【００２６】
以上のように、この実施の形態１によれば、複数のＣＰＵ２，３を有する情報処理装置において、割込み要因毎に個別割込みフラグおよび個別割込み許可フラグを有して構成される第１階層のテーブルと、割込み要因の集合毎に全体割込みフラグおよび全体割込み許可フラグを有して構成される第２階層のテーブルとを備え、第１階層のテーブルおよび第２階層のテーブルを参照して、割込み処理対象となるＣＰＵおよび割込み要求信号の出力の要否を決定し、割込み要求信号の出力が必要である場合には割込み処理対象ＣＰＵに対して割込み要求信号を出力するように構成したので、個別の割込み要因毎に割込み要求信号の出力対象となるＣＰＵを設定できるとともに、割込み要因の集合毎に割込み要求信号の要否を設定することができるから、柔軟な出力設定が可能になるという効果を奏する。例えば、第１階層のテーブルと第２階層のテーブルとによる二重のチェックが可能となって、誤った割込み要求信号が出力される確率を低減してシステムの信頼性を向上できる。また、第１階層のテーブルの個別割込み許可フラグをすべて１に設定しておけば、割込み要因の集合毎に割込み処理対象となるＣＰＵを設定することができ、操作性を向上することができる。
【００２７】
また、第１階層のテーブルが、割込み要因毎にそれぞれのＣＰＵを対象とする個別割込みフラグを有するように構成したので、割込み処理対象となるＣＰＵによる割込み処理が終了すれば、当該ＣＰＵに係る個別割込みフラグを書き換えることで、情報処理装置に発生した割込み要求信号に係る処理経過あるいは処理結果を把握することができ、システム管理を容易にするという効果を奏する。
【００２８】
また、第１階層のテーブルにおいて個別割込みフラグと個別割込み許可フラグとが共に１となった割込み要因については、第２階層のテーブルにおいて当該割込み要因が含まれる集合に係る全体割込みフラグを１とするように構成したので、割込み要求信号が発生すれば、当該割込み要求信号に係る割込み要因を含む集合について自動的に割込み要求が出されるから、割込み要求信号の出力についての処理過程が一義的に定められ、例外的な処理動作の発生を確実に防止することができ、システムの信頼性を向上することができるという効果を奏する。
【００２９】
なお、上記の実施の形態１により説明される情報処理装置および割込み制御方法は、本願発明を限定するものではなく、例示することを意図して開示されているものである。本願発明の技術的範囲は特許請求の範囲の記載により定められるものであり、特許請求の範囲に記載された技術的範囲内において種々の設計的変更が可能である。例えば、実施の形態１では、個別の割込み要因Ａ１，Ａ２，Ａ３，…，Ｄ３，Ｄ４に係る第１階層のテーブルと、割込み要因の集合［Ａ］，［Ｂ］，［Ｃ］，［Ｄ］に係る第２階層のテーブルとから成る２階層のテーブル構造が示されているが、割込み要因の集合［Ａ］，［Ｂ］，［Ｃ］，［Ｄ］からさらに上位の集合を構成して、３階層以上のテーブル構成としてもよい。また、第１階層のテーブルにおいて、内部ＣＰＵ個別割込みフラグと外部ＣＰＵ個別割込みフラグとを共通化して１つの個別割込みフラグとし、この共通化した個別割込みフラグと内部ＣＰＵ個別割込み許可フラグとが共に１となる割込み要因については、当該割込み要因を含む集合の内部ＣＰＵ全体割込みフラグを１とし、また共通化した個別割込みフラグと外部ＣＰＵ個別割込みフラグとが共に１となる割込み要因については、当該割込み要因を含む集合の外部ＣＰＵ全体割込みフラグを１とするような構成とすることも可能である。さらに、上記の実施の形態１では内部ＣＰＵと外部ＣＰＵとを有するシステムを例に掲げて説明しているが、本願発明は、このような構成を有するシステムに限定されるものではなく、内部および外部に関わらず複数のＣＰＵを有する情報処理装置に広く適用することが可能なものである。
【００３０】
【発明の効果】
以上のように、この発明によれば、複数のＣＰＵを有する情報処理装置において、第１階層のテーブルと、第２階層のテーブルとを備え、これらのテーブルを参照して、割込み処理対象となるＣＰＵおよび割込み要求信号の出力の要否を決定し、割込み要求信号の出力が必要である場合には割込み処理対象ＣＰＵに対して割込み要求信号を出力するように構成したので、個別の割込み要因毎に割込み要求信号の出力対象となるＣＰＵを設定できるとともに、割込み要因の集合毎にあるいはさらに上位の集合毎に割込み要求信号の要否を設定することができるから、割込み要求信号の出力について柔軟な設定が可能になるという効果を奏する。例えば、複数のテーブルによる多重のチェックが可能となって、誤った割込み要求信号が出力される確率を低減してシステムの信頼性を向上できる。また、第１階層のテーブルにおいてそれぞれの割込み要因について全てのＣＰＵが割込み処理対象となるように設定しておけば、割込み要因の集合毎にあるいはさらに上位の集合毎に割込み処理対象となるＣＰＵを設定することができ、操作性を向上することができる。
【００３１】
また、この発明によれば、第１階層のテーブルにおいて、割込み要因毎に複数のＣＰＵのそれぞれについて、割込み要求に対する許可の有無を示す情報を設定することができるように構成したので、割込み処理対象となるＣＰＵによる割込み処理が終了すれば、当該ＣＰＵに係る割込み要求信号有無情報を書き換えることで、情報処理装置内で発生した割込み要求信号に係る処理経過あるいは処理結果を把握することができ、システム管理を容易にできるという効果を奏する。
【００３２】
また、この発明によれば、第１階層のテーブルにおいて、情報処理装置に発生した割込み要求信号に係る割込み要因について、割込み処理対象であることが示されたＣＰＵがあれば、第２階層のテーブルにおいて、発生した割込み要求信号に係る割込み要因が含まれる集合について、当該ＣＰＵを、割込み処理を実行させるＣＰＵであるとして設定するように構成したので、割込み要求信号が発生すれば、当該割込み要求信号に係る割込み要因を含む集合について自動的に割込み要求が出されるから、割込み要求信号の出力についての処理過程が一義的に定められ、例外的な処理動作の発生を確実に防止することができ、システムの信頼性を向上することができるという効果を奏する。
【図面の簡単な説明】
【図１】  複数のＣＰＵを有する情報処理装置の構成の一例を示す図である。
【図２】  割込み要因毎の割込み処理対象ＣＰＵおよび割込み要求信号の発生の有無を特定するための従来の割込み用テーブルを示す図である。
【図３】  この発明の実施の形態１による割込み用テーブルを示す図である。
【図４】  割込み用テーブルにおける処理過程の一例を示す図である。
【図５】  割込み用テーブルにおける処理過程の他の例を示す図である。
【図６】  割込み用テーブルにおける処理過程の他の例を示す図である。
【符号の説明】
１  ＩＣチップ、２  内部ＣＰＵ（ＣＰＵ）、３  外部ＣＰＵ（ＣＰＵ）、４  ＲＡＭ（記憶手段）、５  ＲＯＭ、６，７，８，９  モジュール、１０  内部バス、１１  外部バス、１２  割込みコントローラ（割込み制御手段）
【図１】
0003956767.tif 000002
【図２】
0003956767.tif 000003
【図３】
0003956767.tif 000004
【図４】
0003956767.tif 000005
【図５】
0003956767.tif 000006
【図６】
0003956767.tif 000007