(57)【要約】【課題】割り込み処理を高速化することができる割り込み制御回路、割り込み制御方法および半導体集積回路の提供を図る。【解決手段】割り込み要因ＩＦによりステータスがセットされる複数の設定用ステータスレジスタ１４〜１６と、前記複数の設定用ステータスレジスタ１４〜１６から、割り込み処理を行う設定用ステータスレジスタ１４を選択する選択制御部２２，２３と、前記割り込み処理を行う設定用ステータスレジスタ１４の内容をコピーして保持する参照用ステータスレジスタ１１と、を有する。【選択図】図５
2015072616.tif 000002
【特許請求の範囲】
【請求項１】
割り込み要因によりステータスがセットされる複数の設定用ステータスレジスタと、
前記複数の設定用ステータスレジスタから、割り込み処理を行う設定用ステータスレジスタを選択する選択制御部と、
前記割り込み処理を行う設定用ステータスレジスタの内容をコピーして保持する参照用ステータスレジスタと、を有する、
ことを特徴とする割り込み制御回路。
【請求項２】
前記選択制御部は、
前記複数の設定用ステータスレジスタから、前記割り込み要因によりステータスがセットされた設定用ステータスレジスタを選択する、
ことを特徴とする請求項１に記載の割り込み制御回路。
【請求項３】
前記設定用ステータスレジスタのそれぞれは、識別番号を格納する識別番号領域を含み、
前記参照用ステータスレジスタは、前記設定用ステータスレジスタの前記識別番号領域に対応する参照用識別番号領域を含む、
ことを特徴とする請求項１または請求項２に記載の割り込み制御回路。
【請求項４】
さらに、
前記複数の設定用ステータスレジスタのそれぞれに対して設けられた複数の論理回路を有し、
前記選択制御部は、
前記複数の設定用ステータスレジスタから、１つの設定用ステータスレジスタを選択するセレクタと、
前記複数の論理回路の出力信号を受け取って、前記割り込み処理を行う設定用ステータスレジスタを選択するように前記セレクタを制御する選択制御回路と、を含む、
ことを特徴とする請求項１乃至請求項３のいずれか１項に記載の割り込み制御回路。
【請求項５】
割り込み要因によりステータスがセットされる複数の設定用ステータスレジスタと、前記複数の設定用ステータスレジスタから、割り込み処理を行う設定用ステータスレジスタを選択する選択制御部と、前記割り込み処理を行う設定用ステータスレジスタの内容をコピーして保持する参照用ステータスレジスタと、を含む割り込み制御回路と、
割り込みを制御する割り込みコントローラと、
前記割り込みコントローラを介して割り込み要求信号を受け取り、前記参照用ステータスレジスタの内容を読み出して、割り込み要因が発生した設定用ステータスレジスタを確認するＣＰＵと、を有する、
ことを特徴とする半導体集積回路。
【請求項６】
前記選択制御部は、
前記複数の設定用ステータスレジスタから、前記割り込み要因によりステータスがセットされた設定用ステータスレジスタを選択する、
ことを特徴とする請求項５に記載の半導体集積回路。
【請求項７】
割り込み要因によりステータスがセットされる複数の設定用ステータスレジスタから、割り込み処理を行う設定用ステータスレジスタを選択し、
前記選択された設定用ステータスレジスタの内容を参照用ステータスレジスタにコピーし、
前記参照用ステータスレジスタの内容を読み出して、前記設定用ステータスレジスタにおける割り込み要因を確認する、
ことを特徴とする割り込み制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で言及する実施例は、割り込み制御回路、割り込み制御方法および半導体集積回路に関する。
【背景技術】
【０００２】
周辺モジュールからコンピュータのＣＰＵ(Central Processing Unit：中央処理装置)等に対して割り込み要求ＩＲＱ(Interrupt Request)が発生したとき、例えば、ＣＰＵは、どのような割り込み要求を発生させたかといった割り込み要因の確認処理を行う。
【０００３】
このとき、一般的なシステムＬＳＩにおいて、周辺モジュールからの割り込み要求を発生させる回路としては、レジスタをネスティングさせた階層構造となっている。すなわち、割り込み要求ＩＲＱを発生させる制御としては、割り込み要因ＩＦ(Interrupt Factor)によりステータスがセットされた最下位層のレジスタから順に最上位層のレジスタまでステータスをセットしていく仕組みとなっている。
【０００４】
ところで、従来、半導体集積回路における割り込み制御回路および割り込み方法としては、様々な提案がなされている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−０３０１７１号公報
【特許文献２】特開２００６−１７２１９６号公報
【特許文献３】特開２００７−２７２５５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述したように、例えば、割り込み要求ＩＲＱを発生させる制御は、割り込み要因ＩＦによりステータスがセットされた最下位層のレジスタから順に最上位層のレジスタまでステータスをセットするようになっている。
【０００７】
そのため、例えば、割り込み要因ＩＦを特定するためには、割り込み要求ＩＲＱの発生とは逆に、ＣＰＵが最上位層のレジスタから最下位層のレジスタまで内容を読んでいくことになり、割り込み処理のシーケンスが長くなって割り込み処理が遅くなる。
【課題を解決するための手段】
【０００８】
一実施形態によれば、複数の設定用ステータスレジスタと、選択制御部と、参照用ステータスレジスタと、を有する割り込み制御回路が提供される。
【０００９】
前記複数の設定用ステータスレジスタは、割り込み要因によりステータスがセットされ、前記選択制御部は、前記複数の設定用ステータスレジスタから、割り込み処理を行う設定用ステータスレジスタを選択する。前記参照用ステータスレジスタは、前記割り込み処理を行う設定用ステータスレジスタの内容をコピーして保持する。
【発明の効果】
【００１０】
開示の割り込み制御回路、割り込み制御方法および半導体集積回路は、割り込み処理を高速化することができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、半導体集積回路の一例を示すブロック図である。
【図２】図２は、半導体集積回路の他の例を示すブロック図である。
【図３】図３は、割り込み制御回路の一例(参考例)を説明するための図である。
【図４】図４は、割り込み制御処理の一例を説明するためのフローチャートである。
【図５】図５は、割り込み制御回路の一実施例を説明するための図である。
【図６】図６は、割り込み制御処理の一実施例を説明するためのフローチャートである。
【発明を実施するための形態】
【００１２】
まず、割り込み制御回路、割り込み制御方法および半導体集積回路の実施例を詳述する前に、図１〜図４を参照して、半導体集積回路の例、並びに、割り込み制御回路および割り込み制御方法の例およびその課題を説明する。
【００１３】
図１は、半導体集積回路の一例を示すブロック図であり、システムＬＳＩの一例を示すものである。図１に示されるように、システムＬＳＩ３は、ＣＰＵ(中央処理装置)３１，割り込みコントローラ３２，ＲＡＭ(Random Access Memory)３３，ＲＯＭ(Read Only Memory)３４および周辺モジュール３５，３６を含む。
【００１４】
ＣＰＵ３１，割り込みコントローラ３２，ＲＡＭ３３，ＲＯＭ３４および周辺モジュール３５，３６は、内部バス３０により相互に接続される。また、周辺モジュール３５，３６からの割り込み要求(割り込み要求信号)ＩＲＱは、信号線３５ａ，３６ａおよび割り込みコントローラ３２を経由してＣＰＵ３１に入力される。
【００１５】
ここで、周辺モジュール３５，３６は、例えば、様々な機能を実現するための機能ブロック(機能マクロ)であり、ＣＰＵ３１に対する割り込み要求信号ＩＲＱを出力することができる。
【００１６】
図２は、半導体集積回路の他の例を示すブロック図であり、システムＬＳＩの他の例を示すものである。図２に示されるように、システムＬＳＩ４は、ＣＰＵ４１，割り込みコントローラ４２，ＲＡＭ４３，ＲＯＭ４４および周辺モジュール４５を含む。
【００１７】
ここで、図２と上述した図１の比較から明らかなように、図２に示す例では、システムＬＳＩ４の内部に周辺モジュール４５が設けられ、システムＬＳＩ４の外部に他の半導体集積回路(ＬＳＩ)５が設けられている。
【００１８】
ここで、半導体集積回路５は、例えば、ＰＣＩｅ(Peripheral Component Interconnect Express)，ＳＡＴＡ(Serial Advanced Technology Attachment)およびＵＳＢ(Universal Serial Bus)用ＬＳＩなどである。
【００１９】
ＣＰＵ４１，割り込みコントローラ４２，ＲＡＭ４３，ＲＯＭ４４および周辺モジュール４５は、内部バス４０により相互に接続される。ここで、システムＬＳＩ４の内部に設けられた周辺モジュール４５からの割り込み要求信号ＩＲＱは、内部信号線４５ａおよび割り込みコントローラ４２を経由してＣＰＵ４１に入力される。なお、割り込みコントローラ４２は、割り込みを制御する。
【００２０】
なお、外部のＬＳＩ５は、例えば、システムＬＳＩ４の内部バス４０に接続された外部バス５０を介して、ＣＰＵ４１，割り込みコントローラ４２，ＲＡＭ４３，ＲＯＭ４４および周辺モジュール４５と相互に接続される。また、外部のＬＳＩ５からの割り込み要求信号ＩＲＱは、外部信号線５ａ，内部信号線４ａおよび割り込みコントローラ４２を経由してＣＰＵ４１に入力される。
【００２１】
図３は、割り込み制御回路の一例(参考例)を説明するための図であり、この割り込み制御回路２００は、例えば、図１における周辺モジュール３５または３６、若しくは、図２における周辺モジュール４５または外部ＬＳＩ５に設けられる。
【００２２】
図３の左側のブロック図に示されるように、割り込み制御回路２００は、階層化された複数のステータスレジスタ２１１〜２１６、および、各ステータスレジスタ２１１〜２１６に対応する複数のオア回路(ＯＲ)２２１〜２２６を含む。
【００２３】
１階層目は、ステータスレジスタ２１１およびオア回路２２１を含み、２階層目は、ステータスレジスタ２１２，２１３およびオア回路２２２，２２３を含み、そして、３階層目は、ステータスレジスタ２１４〜２１６およびオア回路２２４〜２２６を含む。
【００２４】
次に、割り込み制御回路の一例における処理を、図３の右側のフローチャートを参照して説明する。ここで、図３の例では、割り込み要因ＩＦにより３階層目のステータスレジスタ２１４の位置ＳＲＰ３にステータス(『１』)がセットされた場合を示す。
【００２５】
まず、ステップＳＴ３１において、割り込み処理を行う所定の回路(機能ブロック)から割り込み要因ＩＦが発生すると、ステップＳＴ３２に進んで、対応する最下位層のステータスレジスタ２１４にステータス(『１』)をセットする。すなわち、３階層目のステータスレジスタ２１４の位置ＳＲＰ３に対して、割り込み要因ＩＦが生じたことを示す『１』がセット(設定)される。
【００２６】
なお、３階層目のステータスレジスタ２１５，２１６の全ての位置、並びに、ステータスレジスタ２１４のＳＲＰ３以外の位置は、それぞれの位置に対応する割り込み要因が生じていないことを示す『０』が設定されている。
【００２７】
また、ステップＳＴ３３に進んで、ステータスレジスタ２１４に対応する中間層のステータスレジスタ２１２にステータス(『１』)をセットする。すなわち、３階層目のステータスレジスタ２１４の位置ＳＲＰ３における設定値『１』は、オア回路２２４を経由して２階層目のステータスレジスタ２１２に伝えられ、ステータスレジスタ２１２の位置ＳＲＰ８に対して『１』がセットされる。
【００２８】
次に、ステップＳＴ３４に進んで、ステータスレジスタ２１２に対応する最上位層のステータスレジスタ２１１にステータス(『１』)をセットする。すなわち、２階層目のステータスレジスタ２１２の位置ＳＲＰ８における設定値『１』は、オア回路２２２を経由して１階層目のステータスレジスタ２１１に伝えられ、ステータスレジスタ２１１の位置ＳＲＰ３に対して『１』がセットされる。
【００２９】
さらに、ステップＳＴ３５に進んで、割り込み要求(ＩＲＱ)を発生する。すなわち、１階層目のステータスレジスタ２１１の位置ＳＲＰ３における設定値『１』は、オア回路２２１を経由して割り込み要求信号ＩＲＱとして、例えば、割り込みコントローラ(図１の３２，または，図２の４２)に入力される。
【００３０】
このように、図３に示す割り込み制御回路は、レジスタ(ステータスレジスタ２１１〜２１６)をネスティングさせた階層構造となっており、割り込み要因ＩＦが発生すると、最下位層から最上位層まで順にステータスをレジスタにセットするようになっている。
【００３１】
そして、割り込みコントローラ(３２，４２)は、例えば、ＣＰＵ(３１，４１)に対して割り込み要求信号ＩＲＱを出力する。ここで、ＣＰＵが割り込みコントローラから割り込み要求信号ＩＲＱを受け取ると、ＣＰＵは、どのような割り込み要求が発生したかといった割り込み要因ＩＦの確認処理を行う。
【００３２】
ＣＰＵ(３１，４１)が行う割り込み要因ＩＦの確認処理は、例えば、上述した最下位層で発生した割り込み要因ＩＦから割り込み要求信号ＩＲＱを生成するのとは逆に、最上位層から最下位層までステータスレジスタ２１１〜２１６を読むことになる。
【００３３】
図４は、割り込み制御処理の一例を説明するためのフローチャートであり、ＣＰＵ(３１，４１)が割り込みコントローラ(３２，４２)から割り込み要求信号ＩＲＱを受け取ったとき、ＣＰＵが行う割り込み要因ＩＦの確認処理を説明するためのものである。
【００３４】
図３の割り込み制御回路２００において、メイン処理から、ステップＳＴ４１で割り込み(ＩＲＱ)が発生すると、すなわち、ＣＰＵ(３１，４１)が割り込みコントローラ(３２，４２)から割り込み要求信号ＩＲＱを受け取ると、ステップＳＴ４２に進む。
【００３５】
ステップＳＴ４２では、最上位層(１階層目)のステータスレジスタ２１１のリード(読み出し)を行い、ステップＳＴ４３に進んで、割り込み要因ＩＦの確認を行う。すなわち、ステップＳＴ４３では、『１』がセットされたステータスレジスタ２１１の位置ＳＲＰ３を確認し、ステップＳＴ４４に進んで、ステータスレジスタ２１１の位置ＳＲＰ３に対応する中間層(２階層目)のステータスレジスタ２１２の読み出しを行う。
【００３６】
さらに、ステップＳＴ４５に進んで、『１』がセットされたステータスレジスタ２１２の位置ＳＲＰ８を確認し、ステップＳＴ４６に進み、ステータスレジスタ２１２の位置ＳＲＰ８に対応する最下位層(３階層目)のステータスレジスタ２１４の読み出しを行う。
【００３７】
そして、ステップＳＴ４７に進んで、『１』がセットされたステータスレジスタ２１４の位置ＳＲＰ３を確認し、ステップＳＴ４８に進んで、割り込み要因ＩＦを発生した機能ブロックを特定して、その機能ブロックによる割り込み処理を実行する。
【００３８】
その後、ステップＳＴ４９に進んで、割り込み処理を実行した機能ブロックからの割り込み要因ＩＦをクリアし、次の割り込み(ＩＲＱ)が発生したらステップＳＴ４１からの処理を繰り返す。
【００３９】
ここで、図３に示す割り込み制御回路２００を適用した場合、例えば、ＣＰＵが割り込み要求信号ＩＲＱに基づいて割り込み要因ＩＦを発生した機能ブロックを特定する割り込み処理のシーケンスが長くなってしまうという問題がある。この問題は、階層化が増えるほど、大きな問題となる。
【００４０】
すなわち、割り込み要求信号を受け付けたＣＰＵは、複数のステータスレジスタを探索して対応する割り込み要因を特定するため、シーケンスが長くなって割り込み処理の高速化を妨げることになる。
【００４１】
以下、本実施例の割り込み制御回路、割り込み制御方法および半導体集積回路を、添付図面を参照して詳述する。
【００４２】
図５は、割り込み制御回路の一実施例を説明するための図であり、本実施例の割り込み制御回路２は、例えば、図１における周辺モジュール３５または３６、若しくは、図２における周辺モジュール４５または外部ＬＳＩ５に設けられる。
【００４３】
図５の左側のブロック図に示されるように、本実施例の割り込み制御回路２は、割り込み要因ＩＦによりステータス(『１』)がセットされる複数の設定用ステータスレジスタ１４〜１６を含む。また、割り込み制御回路２は、設定用ステータスレジスタ１４〜１６に対応する複数のオア回路(論理回路：ＯＲ)２４〜２６を含む。
【００４４】
さらに、割り込み制御回路２は、割り込み要因を参照するための参照用ステータスレジスタ１１，参照用ステータスレジスタ１１に対応するオア回路(割り込み要求信号出力用論理回路：ＯＲ)２１，セレクタ２２および選択制御回路２３を含む。
【００４５】
ここで、セレクタ２２および選択制御回路２３は、複数の設定用ステータスレジスタ１４〜１６から、割り込み処理を行う設定用ステータスレジスタ１４を選択する選択制御部として機能する。
【００４６】
設定用ステータスレジスタ１４〜１６は、前述した図３における３階層目のステータスレジスタ２１４〜２１６に対応するものであるが、設定用ステータスレジスタ１４〜１６には、それぞれの識別番号を格納する識別番号領域ＩＤＲが設けられている。
【００４７】
ここで、図５では、識別番号領域ＩＤＲは３ビット分だけ設けられていて、この識別番号領域ＩＤＲに格納される３ビットの識別番号により、例えば、８つの設定用ステータスレジスタを識別できるようになっている。
【００４８】
例えば、設定用ステータスレジスタ(図５の設定用ステータスレジスタ１４〜１６に対応)の数が４つ以下であれば、識別番号領域ＩＤＲは２ビット分だけ設ければよい。また、例えば、ステータスレジスタの数が１６個であれば、識別番号領域ＩＤＲは４ビット分だけ設けることになる。
【００４９】
なお、識別番号領域ＩＤＲの容量(ビット数)は、識別番号の数に基づいて規定されるが、通常、ステータスレジスタをフルビットで使用することはないため、実質的なハードウェアの増加を気にしなくてもよい。
【００５０】
選択制御回路２３は、設定用ステータスレジスタ１４〜１６に対応するオア回路２４〜２６の出力を受け取って、セレクタ２２が、割り込み要因ＩＦによりステータス(『１』)がセットされた設定用ステータスレジスタ１４を選択するように制御する。
【００５１】
これにより、参照用ステータスレジスタ１１は、複数の設定用ステータスレジスタ１４〜１６の内、セレクタ２２で選択された設定用ステータスレジスタ１４の内容をコピーして保持することになる。
【００５２】
ここで、参照用ステータスレジスタ１１は、参照用識別番号領域ＩＤＲ’を含み、この参照用識別番号領域ＩＤＲ’にセレクタ２２で選択された設定用ステータスレジスタ１４における識別番号領域ＩＤＲの内容をコピーする。すなわち、参照用ステータスレジスタ１１の参照用識別番号領域ＩＤＲ’には、選択された設定用ステータスレジスタ１４の識別番号がコピーされるようになっている。
【００５３】
なお、選択制御回路２３は、例えば、複数の設定用ステータスレジスタ１４〜１６から同時またはほぼ同時に出力(ＩＲＱ)を受け取った場合、予め定められた優先順位に従って、参照用ステータスレジスタ１１へのコピーの順番を制御してもよい。すなわち、選択制御回路２３により、割り込み処理を行う優先順位を制御することもできる。
【００５４】
次に、本実施例の割り込み制御回路における処理を、図５の右側のフローチャートを参照して説明する。ここで、図５の例では、割り込み要因ＩＦにより設定用ステータスレジスタ１４の位置ＳＲＰ３にステータス(『１』)がセットされた場合を示す。
【００５５】
まず、ステップＳＴ１１において、各設定用ステータスレジスタ１４〜１６に識別番号を付与、すなわち、設定用ステータスレジスタ１４〜１６における識別番号領域ＩＤＲに対してそれぞれ識別番号を格納する。具体的に、図５では、設定用ステータスレジスタ１４，１５，１６における識別番号領域ＩＤＲに対して、それぞれ『０１０』，『００１』，『０００』が書き込まれる。
【００５６】
次に、ステップＳＴ１２において、割り込み処理を行う所定の回路(機能ブロック)から割り込み要因ＩＦが発生すると、ステップＳＴ１３に進んで、対応する設定用ステータスレジスタ１４にステータス(『１』)をセットする。
【００５７】
すなわち、設定用ステータスレジスタ１４の位置ＳＲＰ３に対して、割り込み要因ＩＦが生じたことを示す『１』がセット(設定)される。ここで、設定用ステータスレジスタ１４(１５，１６)は、前述した図３の割り込み制御回路２００における最下位層(３階層目)のステータスレジスタ２１４(２１５，２１６)に相当する。
【００５８】
なお、設定用ステータスレジスタ１５，１６の全ての位置、並びに、設定用ステータスレジスタ１４のＳＲＰ３以外の位置は、それぞれの位置に対応する割り込み要因が生じていないことを示す『０』がセットされている。
【００５９】
さらに、ステップＳＴ１４に進んで、選択制御回路２３が、『１』となるオア回路２４の出力に基づいて、セレクタ２２が設定用ステータスレジスタ１４を選択するように制御する。
【００６０】
そして、ステップＳＴ１５に進んで、参照用ステータスレジスタ１１は、設定用ステータスレジスタ１４の内容をそのままコピーして保持する。なお、上述したように、参照用ステータスレジスタ１１には、セレクタ２２で選択された設定用ステータスレジスタ１４における識別番号もコピーされる。
【００６１】
さらに、ステップＳＴ１６に進んで、参照用ステータスレジスタ１１に対応して設けられたオア回路(割り込み要求信号出力用論理回路)２１が割り込み要求信号ＩＲＱを出力する。このオア回路２１の出力(割り込み要求信号ＩＲＱ)は、例えば、割り込みコントローラ(３２，４２)を介してＣＰＵ(３１，４１)に入力される。
【００６２】
図６は、割り込み制御処理の一実施例を説明するためのフローチャートであり、ＣＰＵ(３１，４１)が割り込みコントローラ(３２，４２)から割り込み要求信号ＩＲＱを受け取ったとき、ＣＰＵが行う割り込み要因ＩＦの確認処理を説明するためのものである。
【００６３】
図５の割り込み制御回路２において、メイン処理から、ステップＳＴ２１で割り込み(ＩＲＱ)が発生すると、すなわち、ＣＰＵ(３１，４１)が割り込みコントローラ(３２，４２)から割り込み要求信号ＩＲＱを受け取ると、ステップＳＴ２２に進む。
【００６４】
ステップＳＴ２２では、参照用ステータスレジスタ１１のリード(読み出し)を行い、ステップＳＴ２３に進んで、割り込み要因ＩＦの確認を行う。ここで、参照用ステータスレジスタ１１は、前述した図３の割り込み制御回路２００における最上位層(１階層目)のステータスレジスタ２１１に相当するが、本実施例の割り込み制御回路２では、そもそも階層構造が存在しない。従って、最上位層から下の層(２階層目および３階層目)のステータスレジスタの読み出しは不要となる。
【００６５】
すなわち、ステップＳＴ２３では、例えば、ＣＰＵ(３１，４１)が参照用ステータスレジスタ１１の内容を読み出すことで、参照用ステータスレジスタ１１にコピーされた設定用ステータスレジスタ１４の内容を確認する。
【００６６】
具体的に、ステップＳＴ２３において、ＣＰＵ(３１，４１)は、参照用ステータスレジスタ１１の内容を読み出すことで、『１』がセットされた設定用ステータスレジスタ１４の位置ＳＲＰ３を確認する。
【００６７】
ここで、参照用ステータスレジスタ１１には、設定用ステータスレジスタ１４の識別番号もコピーされているため、ＣＰＵ(３１，４１)は、設定用ステータスレジスタ１４、並びに、『１』がセットされた位置ＳＲＰ３を確認することができる。
【００６８】
そして、ステップＳＴ２４に進んで、割り込み要因ＩＦを発生した機能ブロックを特定して、その機能ブロックによる割り込み処理を実行する。その後、ステップＳＴ２５に進んで、割り込み処理を実行した機能ブロックからの割り込み要因ＩＦをクリアし、次の割り込み(ＩＲＱ)が発生したらステップＳＴ２１からの処理を繰り返す。
【００６９】
このように、本実施例の割り込み制御回路２によれば、例えば、ＣＰＵが割り込み要求信号ＩＲＱに基づいて割り込み要因ＩＦを発生した機能ブロックを特定するには、単に、参照用ステータスレジスタ１１の内容を読み出すだけでよいことになる。なお、割り込み要因を参照する参照用ステータスレジスタは、特定の個所に１つだけ設ければよい。
【００７０】
従って、本実施例によれば、例えば、割り込み要求信号を受け付けたＣＰＵは、複数のステータスレジスタを探索することなく対応する割り込み要因を特定することができ、処理するためのシーケンスを短くして割り込み処理を高速化することが可能になる。或いは、本実施例によれば、割り込み処理シーケンスが短くなるため、効率のよいプログラムを組むことが可能になる。
【００７１】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものであり、特に記載された例や条件は発明の範囲を制限することを意図するものではない。また、明細書のそのような記載は、発明の利点および欠点を示すものでもない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【００７２】
以上の実施例を含む実施形態に関し、さらに、以下の付記を開示する。
（付記１）
割り込み要因によりステータスがセットされる複数の設定用ステータスレジスタと、
前記複数の設定用ステータスレジスタから、割り込み処理を行う設定用ステータスレジスタを選択する選択制御部と、
前記割り込み処理を行う設定用ステータスレジスタの内容をコピーして保持する参照用ステータスレジスタと、を有する、
ことを特徴とする割り込み制御回路。
【００７３】
（付記２）
前記選択制御部は、
前記複数の設定用ステータスレジスタから、前記割り込み要因によりステータスがセットされた設定用ステータスレジスタを選択する、
ことを特徴とする付記１に記載の割り込み制御回路。
【００７４】
（付記３）
前記設定用ステータスレジスタのそれぞれは、識別番号を格納する識別番号領域を含み、
前記参照用ステータスレジスタは、前記設定用ステータスレジスタの前記識別番号領域に対応する参照用識別番号領域を含む、
ことを特徴とする付記１または付記２に記載の割り込み制御回路。
【００７５】
（付記４）
さらに、
前記複数の設定用ステータスレジスタのそれぞれに対して設けられた複数の論理回路を有し、
前記選択制御部は、
前記複数の設定用ステータスレジスタから、１つの設定用ステータスレジスタを選択するセレクタと、
前記複数の論理回路の出力信号を受け取って、前記割り込み処理を行う設定用ステータスレジスタを選択するように前記セレクタを制御する選択制御回路と、を含む、
ことを特徴とする付記１乃至付記３のいずれか１項に記載の割り込み制御回路。
【００７６】
（付記５）
さらに、
前記参照用ステータスレジスタに対して設けられ、割り込み要求信号を出力する割り込み要求信号出力用論理回路を有する、
ことを特徴とする付記４に記載の割り込み制御回路。
【００７７】
（付記６）
前記複数の論理回路および前記割り込み要求信号出力用論理回路は、オア回路である、
ことを特徴とする付記５に記載の割り込み制御回路。
【００７８】
（付記７）
割り込み要因によりステータスがセットされる複数の設定用ステータスレジスタと、前記複数の設定用ステータスレジスタから、割り込み処理を行う設定用ステータスレジスタを選択する選択制御部と、前記割り込み処理を行う設定用ステータスレジスタの内容をコピーして保持する参照用ステータスレジスタと、を含む割り込み制御回路と、
割り込みを制御する割り込みコントローラと、
前記割り込みコントローラを介して割り込み要求信号を受け取り、前記参照用ステータスレジスタの内容を読み出して、割り込み要因が発生した設定用ステータスレジスタを確認するＣＰＵと、を有する、
ことを特徴とする半導体集積回路。
【００７９】
（付記８）
前記選択制御部は、
前記複数の設定用ステータスレジスタから、前記割り込み要因によりステータスがセットされた設定用ステータスレジスタを選択する、
ことを特徴とする付記７に記載の半導体集積回路。
【００８０】
（付記９）
割り込み要因によりステータスがセットされる複数の設定用ステータスレジスタから、割り込み処理を行う設定用ステータスレジスタを選択し、
前記選択された設定用ステータスレジスタの内容を参照用ステータスレジスタにコピーし、
前記参照用ステータスレジスタの内容を読み出して、前記設定用ステータスレジスタにおける割り込み要因を確認する、
ことを特徴とする割り込み制御方法。
【符号の説明】
【００８１】
２，２００    割り込み制御回路
３，４    半導体集積回路(システムＬＳＩ)
４ａ    内部信号線
５    半導体集積回路(ＬＳＩ)
５ａ    外部信号線
１１    参照用ステータスレジスタ
１４〜１６    設定用ステータスレジスタ
２１    オア回路(割り込み要求信号出力用論理回路)
２２    セレクタ
２３    選択制御回路
２４〜２６    オア回路(論理回路)
３０，４０    内部バス
３１，４１    ＣＰＵ(中央処理装置)
３２，４２    割り込みコントローラ
３３，４３    ＲＡＭ
３４，４４    ＲＯＭ
３５，３６，４５    周辺モジュール
３５ａ，３６ａ    信号線
５０    外部バス
２１１〜２１６    ステータスレジスタ
２２１〜２２６    オア回路
【図１】
2015072616.tif 000003
【図２】
2015072616.tif 000004
【図３】
2015072616.tif 000005
【図４】
2015072616.tif 000006
【図５】
2015072616.tif 000007
【図６】
2015072616.tif 000008