(57)【要約】【課題】割り込み処理に伴うオーバーヘッドを削減することのできる割り込み通知制御装置および半導体集積回路の提供を図る。【解決手段】複数の割り込み源３１〜３４からの割り込み要求ＩＲ１〜ＩＲ４を受け取り、該受け取った割り込み要求を纏めてプロセッサに通知する割り込み通知制御装置であって、前記割り込み要求の相互関係を判断し、前記プロセッサに対して前記割り込み要求を纏めて通知するタイミングを制御するように構成する。【選択図】図５
2010277158.tif 000002
【特許請求の範囲】
【請求項１】
複数の割り込み源からの割り込み要求を受け取り、該受け取った割り込み要求を纏めてプロセッサに通知する割り込み通知制御装置であって、
前記割り込み要求の相互関係を判断し、前記プロセッサに対して前記割り込み要求を纏めて通知するタイミングを制御することを特徴とする割り込み通知制御装置。
【請求項２】
請求項１に記載の割り込み通知制御装置において、該割り込み通知制御装置は、
前記各割り込み要求の優先度に基づいて、前記プロセッサに対して前記割り込み要求を纏めて通知するタイミングの遅延を制御する遅延制御部と、
該遅延制御部が前記通知タイミングの遅延を判断する条件を格納する条件レジスタと、を有することを特徴とする割り込み通知制御装置。
【請求項３】
請求項２に記載の割り込み通知制御装置において、
前記遅延制御部は、前記各割り込み要求の優先度に基づいた重み値を演算し、前記条件レジスタに格納された閾値と比較して前記通知タイミングの遅延を制御することを特徴とする割り込み通知制御装置。
【請求項４】
請求項３に記載の割り込み通知制御装置において、
前記遅延制御部は、
前記複数の割り込み源からの各割り込み要求に与える重み値を記憶する重み値レジスタと、
前記受け取った割り込み要求に与えられた前記重み値を演算して仮遅延条件値を算出する遅延条件決定部と、
前記仮遅延条件値を、前記条件レジスタに格納された閾値である遅延条件閾値と比較する遅延条件比較部と、を有し、
前記遅延条件比較部により前記仮遅延条件値が前記遅延条件閾値よりも大きいと判別されたときに、前記受け取った割り込み要求を纏めて前記プロセッサに通知することを特徴とする割り込み通知制御装置。
【請求項５】
請求項４に記載の割り込み通知制御装置において、
前記遅延条件決定部は、前記受け取った割り込み要求に与えられた前記重み値を加算して前記仮遅延条件値を算出する加算器であり、
前記遅延条件比較部は、前記仮遅延条件値と前記遅延条件閾値との大小を比較する比較器であることを特徴とする割り込み通知制御装置。
【請求項６】
請求項４または５に記載の割り込み通知制御装置において、
前記遅延制御部は、遅延制限カウンタを有し、前記比較器による比較結果に関わらず、前記遅延制限カウンタが所定値に達したときに、前記受け取った割り込み要求を前記プロセッサに纏めて通知することを特徴とする割り込み通知制御装置。
【請求項７】
請求項６に記載の割り込み通知制御装置において、
前記遅延制限カウンタは所定の時間をカウントし、前記複数の割り込み源からの最初の割り込み要求を受け取ってから該所定の時間が経過したときに、前記受け取った割り込み要求を前記プロセッサに纏めて通知することを特徴とする割り込み通知制御装置。
【請求項８】
請求項６に記載の割り込み通知制御装置において、
前記遅延制限カウンタは、前記受け取った割り込み要求の数をカウントし、前記受け取った割り込み要求の数が所定数に達したときに、前記受け取った割り込み要求を前記プロセッサに纏めて通知することを特徴とする割り込み通知制御装置。
【請求項９】
請求項２〜８のいずれか１項に記載の割り込み通知制御装置において、
前記複数の割り込み源の少なくとも１つからの割り込み要求は、前記遅延制御部を介さずに直接前記プロセッサに通知されることを特徴とする割り込み通知制御装置。
【請求項１０】
請求項１〜９のいずれか１項に記載の割り込み通知制御装置と、前記プロセッサと、該プロセッサに接続された周辺マクロと、を有することを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、割り込み通知制御装置および半導体集積回路に関する。
【背景技術】
【０００２】
従来、例えば、計算機システムにおいて、割り込みコーリス（割り込み調停：Interrupt coalescing）という技術が知られている。
【０００３】
この割り込みコーリスは、割り込み要求を発する割り込み源と、割り込み入力端子を有するプロセッサとを繋ぐ割り込み通知制御装置（割り込みコントローラ）に対して適用することが可能である。
【０００４】
割り込みコーリスの基本概念は、高頻度で割り込みが発生することによってプロセッサの負荷が増大することを避けるためのものである。
【０００５】
そして、一定の条件によってプロセッサへの割り込み要求の通知タイミングを遅延させ、後発の複数の割り込み要求と纏めてプロセッサに通知することで割り込み処理に伴う割り込みハンドラの起動／終了といったプロセッサのオーバーヘッドを削減している。
【０００６】
図１は従来の割り込み通知制御装置の一例を概略的に示すブロック図であり、基本的な割り込みコーリスを適用した割り込みコントローラを概略的に示すものである。また、図２は図１の割り込み通知制御装置における遅延制御部を概念的に示すブロック図である。
【０００７】
図１において、参照符号５０１は割り込みコントローラ（割り込み通知制御装置）、５０２はプロセッサ、そして、５０３は割り込み源を示している。また、図２において、参照符号511aは遅延制限カウンタ、そして、511bはアンドゲートを示している。
【０００８】
図１に示されるように、割り込みコントローラ５０１は、遅延制御部５１１および条件レジスタ５１２を有する。
【０００９】
図１に示す割り込み通知制御装置において、条件レジスタ５１２の条件（割り込みの遅延条件）が『Ｘ回の割り込み要求が起きるまで通知を遅延する』であった場合を考える。
【００１０】
このとき、条件レジスタ５１２には、その回数”Ｘ”が保持され、遅延制御部５１１の遅延制限カウンタ511aが、割り込み源５０３からの割り込み通知（割り込み要求）ＩＲをＸ回カウントするとアンドゲート511bに高レベル”１”を出力する。
【００１１】
これにより、アンドゲート511bは、Ｘ回目の割り込み要求による高レベル”１”のタイミングでそれまでのＸ回の割り込み要求ＩＲをプロセッサ５０２に通知する。
【００１２】
なお、図２は遅延制御部５１１を概念的に示すものであり、実際には、例えば、割り込み源５０３からの割り込み要求ＩＲをＸ回分保持しておくラッチ回路等も設けられている。
【００１３】
すなわち、割り込み源５０３から最初の割り込み要求ＩＲ５が起きてから、割り込み要求がＸ回だけ起きるまでの間、プロセッサ５０２に対する割り込み通知を遅延させる。そして、Ｘ回目の割り込み要求が起きた時点で、Ｘ個の割り込み要求を纏めてプロセッサ５０２に通知する。
【００１４】
この手法を用いることにより、プロセッサ５０２に対する割り込み回数を、実質的に１／Ｘ回に減少させ、割り込み処理に伴うオーバーヘッドを削減するようになっている。
【００１５】
ところで、従来、割り込みコーリスの改良技術としての様々なものが提案されており、複数の割り込み要求の通知タイミングの遅延方法に関する提案もなされている。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２００８−２１７８２１号公報
【特許文献２】特開２００２−１８２９３０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１７】
従来、割り込みコーリスを適用した割り込みコントローラ５０１における条件レジスタ５１２の条件としては、例えば、上述した「一定の回数の割り込み要求が起きる」、或いは、「一定の時間が経過する」といったものが用いられている。
【００１８】
ところで、割り込み源は１つに限定されるものではなく、複数の割り込み源からの割り込み要求をプロセッサに通知する場合、割り込み処理に伴うオーバーヘッドの増加が問題になっている。
【００１９】
この出願は、上述した課題に鑑み、複数の割り込み源からの割り込み要求を適切にプロセッサに通知することにより、割り込み処理に伴うオーバーヘッドを削減することのできる割り込み通知制御装置および半導体集積回路の提供を目的とする。
【課題を解決するための手段】
【００２０】
本発明によれば、複数の割り込み源からの割り込み要求を受け取り、該受け取った割り込み要求を纏めてプロセッサに通知する割り込み通知制御装置が提供される。
【００２１】
本発明の割り込み通知制御装置は、前記割り込み要求の相互関係を判断し、前記プロセッサに対して前記割り込み要求を纏めて通知するタイミングを制御する。
【発明の効果】
【００２２】
開示の割り込み通知制御装置および半導体集積回路は、複数の割り込み源からの割り込み要求を適切にプロセッサに通知することにより、割り込み処理に伴うオーバーヘッドを削減する効果を奏する。
【図面の簡単な説明】
【００２３】
【図１】従来の割り込み通知制御装置の一例を概略的に示すブロック図である。
【図２】図１の割り込み通知制御装置における遅延制御部を概念的に示すブロック図である。
【図３】複数の割り込み源に対する割り込み通知制御装置の一例を概略的に示すブロック図である。
【図４】図３に示す割り込み通知制御装置の動作の一例を説明するためのタイミングチャートである。
【図５】第１実施例の割り込み通知制御装置を概略的に示すブロック図である。
【図６】図５の割り込み通知制御装置における遅延制御部を概略的に示すブロック図である。
【図７】図６の遅延制御部における処理の一例を説明するための図である。
【図８】第１実施例の割り込み通知制御装置の動作の一例を説明するためのタイミングチャートである。
【図９】第２実施例の割り込み通知制御装置を概略的に示すブロック図である。
【図１０】本実施例が適用される半導体集積回路の一例を概略的に示すブロック図である。
【発明を実施するための形態】
【００２４】
まず、割り込み通知制御装置および半導体集積回路の実施例を詳述する前に、複数の割り込み源に対する割り込みコントローラに割り込みコーリス技術をそのまま適用したときの問題点を説明する。
【００２５】
図３は複数の割り込み源に対する割り込み通知制御装置の一例を概略的に示すブロック図であり、具体的に、４つの割り込み源５３１〜５３４に対する割り込みコントローラ５０１を示すものである。
【００２６】
なお、割り込み源５３１〜５３４からの割り込み要求ＩＲ５１〜ＩＲ５４としては、例えば、キーボードからのキー入力やマウスからの入力、他の周辺機器やホスト側からの割り込み入力、或いは、ソフトウェアによる割り込み入力といった様々なものがある。
【００２７】
図３に示されるように、割り込みコントローラ５０１は、４つの割り込み源５３１〜５３４に対応した４組の遅延制御部5111〜5114および条件レジスタ5121〜5124を有する。
【００２８】
すなわち、割り込みコントローラ５０１には、図１における遅延制御部５１１および条件レジスタ５１２の組が、４つの割り込み源５３１〜５３４に対応して４組設けられている。なお、各遅延制御部5111〜5114は、図２に示す遅延制御部５１１と同様のものとなっている。
【００２９】
ところで、割り込みコーリスという手法は、各割り込み源に対して通知の遅延条件を決定するため、複数の割り込み源５３１〜５３４と複数の割り込み入力端子TI51〜TI54を持つプロセッサ５０２とを繋ぐ割り込みコントローラ５０１に適用すると問題が生じる。
【００３０】
すなわち、割り込みコーリスでは、各割り込み源５３１〜５３４からの割り込み要求ＩＲ５１〜ＩＲ５４の状況、或いは、各割り込み要求ＩＲ５１〜ＩＲ５４の優先度（リアルタイム性）といった情報を関連付けて遅延条件を決定することができない。
【００３１】
そのため、各割り込み要求ＩＲ５１〜ＩＲ５４間の相関を考慮したタイミング遅延を実施することができず、例えば、複数の割り込み源５３１〜５３４が同時にプロセッサ５０２への割り込み要求ＩＲ５１〜ＩＲ５４を出している場合に適切な対応ができなかった。
【００３２】
具体的に、例えば、各割り込み要求ＩＲ５１〜ＩＲ５４の遅延条件である一定時間が経過していない場合には、プロセッサ５０２に対して早急に割り込み要求ＩＲ５１〜ＩＲ５４を纏めて通知するといったことはできなかった。
【００３３】
また、例えば、複数の割り込み源５３１〜５３４が同時にプロセッサ５０２への通知要求を出している場合、各割り込み要求ＩＲ５１〜ＩＲ５４の優先度が低くてプロセッサ５０２への割り込み通知を更に待たせるといった柔軟な対応はできなかった。
【００３４】
さらに、遅延条件を決定するための値に条件レジスタ5121〜5124の値を直接利用すると、その値が固定であるため、常に一定の条件に従って割り込み要求を遅延させることになっていた。
【００３５】
そのため、割り込み要求が発生してからの応答が一定時間だけ常に遅くなり、複数の割り込み源５３１〜５３４と複数の割り込み入力端子TI51〜TI54を持つプロセッサ５０２とを繋ぐ割り込みコントローラ５０１の処理として適切なものとはいえなかった。
【００３６】
図４は図３に示す割り込み通知制御装置の動作の一例を説明するためのタイミングチャートである。
【００３７】
図４の例では、時間ｔ１で割り込み源５３１からの割り込み要求ＩＲ５１が発生し、時間ｔ２で割り込み源５３３からの割り込み要求ＩＲ５３が発生し、そして、時間ｔ３で割り込み源５３２からの割り込み要求ＩＲ５２が発生している。
【００３８】
ここで、割り込み源５３１〜５３４からの割り込み要求が入力される遅延制御部5111〜5114には、開始値が”２”の遅延制限カウンタ（図２中の511a）が設けられ、その遅延制限カウンタが”０”になった時点で各割り込み要求がプロセッサ５０２に通知される。
【００３９】
すなわち、時間ｔ１で割り込み源５３１の割り込み要求ＩＲ５１が発生し、時間ｔ２で割り込み源５３３の割り込み要求ＩＲ５３が発生し、時間ｔ３で割り込み源５３２の割り込み要求ＩＲ５２が発生しても、時間ｔ３ではプロセッサ５０２への通知は行われない。
【００４０】
そして、参照符号Ｎ５１に示されるように、遅延制御部5111の遅延制限カウンタが”０”になるタイミングｔ４で割り込み要求ＩＲ５１がプロセッサ５０２に通知される。また、参照符号Ｎ５２に示されるように、遅延制御部5113の遅延制限カウンタが”０”になるタイミングｔ５で割り込み要求ＩＲ５３がプロセッサ５０２に通知される。
【００４１】
さらに、参照符号Ｎ５３に示されるように、遅延制御部5112の遅延制限カウンタが”０”になるタイミングｔ６で割り込み要求ＩＲ５２がプロセッサ５０２に通知される。
【００４２】
このように、図３に示す割り込み通知制御装置は、各遅延制御部の遅延制限カウンタの値に従うだけで、３回のタイミングｔ４，ｔ５，ｔ６で割り込み要求ＩＲ５１，ＩＲ５３，ＩＲ５２を通知し、各割り込み源からの割り込み要求の相互関係を考慮してはいない。
【００４３】
すなわち、連続する３サイクルｔ１，ｔ２，ｔ３で３つの割り込み要求ＩＲ５１，ＩＲ５３，ＩＲ５２が起きた場合でも、単に異なる３つの割り込み源からの割り込み要求を処理するだけで、複数の割り込み要求を纏めて処理することは行われていない。
【００４４】
その結果、例えば、異なるタイミングの３つの割り込み要求ＩＲ５１，ＩＲ５３，ＩＲ５２に対して、３回の割り込みハンドラの起動／終了が必要になり、割り込み処理に伴うオーバーヘッドが増大することになっている。
【００４５】
以下、割り込み通知制御装置および半導体集積回路の実施例を、添付図面を参照して詳述する。
【００４６】
図５は第１実施例の割り込み通知制御装置（割り込みコントローラ）を概略的に示すブロック図であり、具体的に、４つの割り込み源３１〜３４に対する割り込みコントローラ１を示すものである。
【００４７】
なお、割り込み源３１〜３４からの割り込み要求ＩＲ１〜ＩＲ４としては、例えば、キーボードからのキー入力やマウスからの入力、他の周辺機器やホスト側からの割り込み入力、或いは、ソフトウェアによる割り込み入力といった様々なものがある。
【００４８】
図５に示されるように、本第１実施例の割り込みコントローラ１は、４つの割り込み源３１〜３４に対して１つの共通の遅延制御部１１および条件レジスタ１２を有する。
【００４９】
ここで、遅延制御部１１は、割り込み源３１〜３４からの割り込み要求ＩＲ１〜ＩＲ４の相互関係を判断し、プロセッサ２に対してその割り込み要求ＩＲ１〜ＩＲ４を纏めて通知するタイミングの遅延を制御するようになっている。
【００５０】
すなわち、遅延制御部１１は、プロセッサ２の複数の割り込み入力端子ＴＩ１〜ＴＩ４への割り込み通知状況に相関関係を持たせて、時間経過による単一の割り込み要求の通知状況と共に、同一時間における他の割り込み要求の通知状況も遅延条件の基準にする。
【００５１】
図６は図５の割り込み通知制御装置における遅延制御部を概略的に示すブロック図である。
【００５２】
図６に示されるように、遅延制御部１１は、遅延条件決定部（加算器）１１１，遅延条件比較部（比較器）１１２，重み値レジスタ１１３，アンドゲート1141〜1144，並びに，遅延制限カウンタ１１５を有する。
【００５３】
重み値レジスタ１１３は、各割り込み要求ＩＲ１〜ＩＲ４に対して与えられた重み値を記憶し、また、遅延条件決定部１１１は、割り込み要求ＩＲ１〜ＩＲ４に与えられた重み値を演算して仮遅延条件値ＰＤＶを算出する。
【００５４】
ここで、各割り込み要求ＩＲ１〜ＩＲ４に与える重み値は、例えば、その割り込み要求を発する割り込み源３１〜３４の優先度に基づいて決められる値である。具体的に、優先度が高い割り込み源からの割り込み要求に対しては大きい重み値を設定し、逆に、優先度が低い割り込み源からの割り込み要求に対しては小さい重み値を設定する。
【００５５】
条件レジスタ１２は、遅延条件比較部１１２において、遅延条件決定部１１１で算出された仮遅延条件値ＰＤＶと比較する遅延条件閾値ＤＴＶを格納する。また、アンドゲート1141〜1144は、遅延条件比較部１１２の比較結果に従って割り込み要求のプロセッサ２への通知を制御する。
【００５６】
なお、遅延制限カウンタ１１５は、遅延条件比較部１１２による比較結果に関わらず、その遅延制限カウンタ１１５が所定値に達したときに、割り込み要求をプロセッサ２に纏めて通知するためのものである。
【００５７】
例えば、発せられた複数の割り込み要求の優先度がすべて低く、遅延条件比較部１１２における仮遅延条件値と遅延条件閾値の比較に長時間を要する場合、所定時間だけカウンとするとそれまでの割り込み要求をプロセッサ２に通知するようになっている。
【００５８】
これにより、たとえ優先度が低い（重み値が小さい）割り込み要求であっても、遅延制限カウンタ１１５により規定される所定時間がカウントされたときには、プロセッサ２への通知が行われ、長時間割り込み処理が停滞するのを避けることが可能になる。
【００５９】
なお、図６において、割り込み要求ＩＲ１〜ＩＲ４は、それぞれ直接アンドゲート1141〜1144の一方の入力に供給され、各他方の入力に供給された遅延条件比較部１１２の出力信号との論理を取るようになっている。
【００６０】
しかしながら、実際には、例えば、遅延制御部１１に対して割り込み要求ＩＲ１〜ＩＲ４を保持しておくラッチ回路等を設けるのはいうまでもない。
【００６１】
図７は図６の遅延制御部における処理の一例を説明するための図である。
図７に示されるように、まず、オペレーションＳＯＡにおいて、重み値レジスタ１１３に対して、重み値Ｗ１〜Ｗ４を設定する。
【００６２】
この重み値Ｗ１〜Ｗ４の設定は、割り込み要求ＩＲ１〜ＩＲ４を発する割り込み源３１〜３４の優先度に基づいて決められ、例えば、外部からソフトウェアにより設定される。
【００６３】
ここで、各割り込み要求ＩＲ１〜ＩＲ４に与える重み値Ｗ１〜Ｗ４は、例えば、割り込みコントローラ１の割り込み入力端子の優先度に相当するものである。
【００６４】
すなわち、優先度が高い割り込み源（例えば、割り込み源３２）からの割り込み要求（例えば、ＩＲ２）は、割り込み応答のリアルタイム性が高く、これは通知遅延のための重み値が大きい（例えば、Ｗ２＝”４”）ことに対応する。
【００６５】
逆に、優先度が低い割り込み源（例えば、割り込み源３３）からの割り込み要求（例えば、ＩＲ３）は、割り込み応答のリアルタイム性が低く、これは通知遅延のための重み値が小さい（例えば、Ｗ３＝”１”）ことに対応する。
【００６６】
なお、重み値Ｗ１〜Ｗ４は任意に設定することができるものであり、各割り込み源３１〜３４から発せられた割り込み要求ＩＲ１〜ＩＲ４の重み値の総和が、仮遅延条件値ＰＤＶになる。
【００６７】
次に、オペレーションＳＯＢにおいて、条件レジスタ１２に対して遅延条件閾値ＤＴＶとなる値を設定する。
【００６８】
また、オペレーションＳＯＣにおいて、そのサイクル時点で発生している各割り込み要求（例えば、ＩＲ１，ＩＲ３，ＩＲ２）の重み値（例えば、Ｗ１，Ｗ３，Ｗ２）を遅延条件決定部（加算器）１１１に入力する。
【００６９】
さらに、オペレーションＳＯＤにおいて、遅延条件決定部１１１によりそれらの重み値（例えば、Ｗ１，Ｗ３，Ｗ２）を足し合わせる。
【００７０】
ここで、遅延条件決定部１１１による加算結果は、仮遅延条件値ＰＤＶとして遅延条件比較部１１２に供給される。また、遅延条件比較部１１２には、条件レジスタ１２から遅延条件閾値ＤＴＶが供給されている。
【００７１】
そして、オペレーションＳＯＥにおいて、仮遅延条件値ＰＤＶと遅延条件閾値ＤＴＶとの比較を行う。すなわち、ＰＤＶ≧ＤＴＶならば、発生している割り込み要求（例えば、ＩＲ１，ＩＲ３，ＩＲ２）をプロセッサ２に纏めて通知する（図７中の符号Ａ参照）。
【００７２】
すなわち、図６における遅延条件比較部１１２からアンドゲート1141〜1144に対して高レベル”１”の信号が供給され、発せられたすべての割り込み要求（例えば、ＩＲ１〜ＩＲ３）がプロセッサ２に纏めて通知される。
【００７３】
一方、ＰＤＶ＜ＤＴＶならば、オペレーションＳＯＣに戻って（図７中の符号Ｂ参照）、さらなる割り込み要求の入力を待って、上述したオペレーションＳＯＤおよびＳＯＥを繰り返す。
【００７４】
すなわち、図６における遅延条件比較部１１２からアンドゲート1141〜1144に対して低レベル”０”の信号が供給され、すべての割り込み要求は、プロセッサ２に対しては通知されずに遅延されることになる。
【００７５】
ここで、前述したように、遅延制限カウンタ１１５による処理を行うこともできるのはいうまでもない。
【００７６】
すなわち、遅延条件比較部１１２による比較結果に関わらず、遅延制限カウンタ１１５が所定値に達したときに、割り込み要求をプロセッサ２に対して発生している割り込み要求を纏めて通知する処理を含めることもできる。
【００７７】
図８は第１実施例の割り込み通知制御装置の動作の一例を説明するためのタイミングチャートである。
【００７８】
図８の例では、時間Ｔ１で割り込み源３１からの割り込み要求ＩＲ１が発生し、時間Ｔ２で割り込み源３３からの割り込み要求ＩＲ３が発生し、そして、時間Ｔ３で割り込み源３２からの割り込み要求ＩＲ２が発生している。
【００７９】
ここで、各割り込み源から発生する割り込み要求の重み値は、割り込み要求ＩＲ１の重み値Ｗ１は”３”、 割り込み要求ＩＲ３の重み値Ｗ３は”１”、そして、割り込み要求ＩＲ２の重み値Ｗ２は”４”に設定されている。
【００８０】
なお、条件レジスタ１２には、”５”の遅延条件閾値ＤＴＶが設定されている。また、図８の例では、発生していないが、割り込み源３４からの割り込み要求ＩＲ４の重み値Ｗ４は”２”に設定されている。
【００８１】
前述した図７におけるオペレーションＳＯＤの遅延条件決定部１１１による重み値の加算処理は、時間Ｔ１では重み値Ｗ１が”３”の割り込み要求ＩＲ１だけしか発生していないため、仮遅延条件値ＰＤＶは”３”になる。
【００８２】
このとき、図７におけるオペレーションＳＯＥの遅延条件比較部１１２による比較処理は、遅延条件閾値ＤＴＶが”５”なので、ＰＤＶ（”３”）＜ＤＴＶ（”５”）になって、さらなる割り込み要求の発生を待つ（図７中の符号Ｂ）。
【００８３】
すなわち、ＰＤＶ＜ＤＴＶとなって、仮遅延条件値ＰＤＶは遅延条件閾値ＤＴＶを越えないので、プロセッサ２に対する割り込み要求の通知ＩＲ１は、さらに遅延されることになる。
【００８４】
次に、時間Ｔ２で重み値Ｗ３が”１”の割り込み要求ＩＲ３が発生すると、オペレーションＳＯＤの遅延条件決定部１１１による重み値の加算処理は、Ｗ１（”３”）＋Ｗ３（”１”）により、仮遅延条件値ＰＤＶは”４”になる。
【００８５】
このとき、オペレーションＳＯＥの遅延条件比較部１１２による比較処理は、ＰＤＶ（”４”）＜ＤＴＶ（”５”）になって、時間Ｔ１と同様にさらなる割り込み要求の発生を待つ（図７中の符号Ｂ）。
【００８６】
すなわち、ＰＤＶ＜ＤＴＶとなって，仮遅延条件値ＰＤＶは遅延条件閾値ＤＴＶを越えないので、プロセッサ２に対する割り込み要求の通知ＩＲ１およびＩＲ３は、さらに遅延されることになる。
【００８７】
そして、時間Ｔ３で重み値Ｗ２が”４”の割り込み要求ＩＲ２が発生すると、オペレーションＳＯＤの遅延条件決定部１１１による重み値の加算処理は、Ｗ１（”３”）＋Ｗ３（”１”）＋Ｗ２（”４”）により、仮遅延条件値ＰＤＶは”８”になる。
【００８８】
このとき、オペレーションＳＯＥの遅延条件比較部１１２による比較処理は、ＰＤＶ（”８”）≧ＤＴＶ（”５”）になって、参照符号Ｎ１のように、割り込み要求ＩＲ１，ＩＲ３，ＩＲ２をプロセッサ２に纏めて通知する（図７中の符号Ａ）。
【００８９】
すなわち、ＰＤＶ≧ＤＴＶとなって、仮遅延条件値ＰＤＶが遅延条件閾値ＤＴＶを越えたので、遅延させていた割り込み要求ＩＲ１およびＩＲ３と、割り込み源３２から発生した割り込み要求ＩＲ２を纏めてプロセッサ２に通知する。
【００９０】
そして、プロセッサ２は、割り込みコントローラ１から纏めて通知された割り込み要求ＩＲ１，ＩＲ３，ＩＲ２を順次処理することになる。
【００９１】
なお、図８の例では、開始値が”２”とされた遅延制限カウンタ１１５も設けられており、この遅延制限カウンタ１１５による処理も示されている。
【００９２】
すなわち、遅延制限カウンタ１１５は、時間Ｔ１〜Ｔ３によりカウント値を１ずつデクリメントして”０”になるまでの所定の時間が経過すると、発生している割り込み要求をプロセッサ２に纏めて通知するようになっている。
【００９３】
従って、図８の例では、遅延条件比較部１１２による比較処理、並びに、遅延制限カウンタ１１５による遅延制限処理の両方の結果として、時間Ｔ３（Ｎ１）で、発生している割り込み要求ＩＲ１，ＩＲ３，ＩＲ２をプロセッサ２に纏めて通知している。
【００９４】
このように、本第１実施例によれば、図２および図３を参照して説明した割り込み通知制御装置では３回必要であった割り込みハンドラの起動／終了を１回に留めることができ、割り込み処理に伴うオーバーヘッドを削減することが可能になる。
【００９５】
図９は第２実施例の割り込み通知制御装置を概略的に示すブロック図である。
本第２実施例における遅延制限カウンタ１１５’は、第１実施例における遅延制限カウンタ１１５とは異なり、割り込み源から発せられた割り込み要求の数が所定数に達したときに、それらの割り込み要求をプロセッサ２に纏めて通知する。
【００９６】
すなわち、図６に示す第１実施例における遅延制限カウンタ１１５は、最初の割り込み要求を受け取ってからの時間経過をカウントするのに対して、本第２実施例における遅延制限カウンタ１１５’は、割り込み要求の数をカウントしている。
そして、その受け取った割り込み要求の数が所定数に達したときに、その割り込み要求をプロセッサ２に纏めて通知するようになっている。
【００９７】
さらに、図９と図６との比較から明らかなように、本第２実施例の割り込み通知制御装置１における遅延制御部１１’では、例えば、割り込み源３１からの割り込み要求ＩＲ１をそのままプロセッサ２に供給するようになっている。
【００９８】
すなわち、例えば、割り込み源３１からの割り込み要求ＩＲ１は、その優先度（緊急度）が非常に高く、その割り込み要求ＩＲ１が発せられたときは、直ちにプロセッサ２に通知して割り込み処理を行うようになっている。
【００９９】
このように、上述した実施例は、割り込み源からの割り込み要求の優先度および処理の緊急性等を考慮して、適宜変形することができる。
【０１００】
図１０は本実施例が適用される半導体集積回路の一例を概略的に示すブロック図である。
図１０に示されるように、本実施例が適用される半導体集積回路１００は、割り込み通知制御装置１と、プロセッサ２と、このプロセッサ２に接続された周辺マクロ３と、を有する。
【０１０１】
ここで、周辺マクロ３としては、その半導体集積回路１００が使用されるシステムに応じて様々に変化し、例えば、ＲＡＭ等のメモリ回路やバッファ回路、或いは、バス回路やＩ／Ｏ回路といった様々なものが考えられる。
【符号の説明】
【０１０２】
１，１’，５０１    割り込み通知制御装置（割り込みコントローラ）
２，５０２    プロセッサ
３    周辺マクロ
１１，１１’，５１１，5111〜5114    遅延制御部
１２，5111〜5114    条件レジスタ
３１〜３４，５０３，５３１〜５３４    割り込み源
１１１    遅延条件決定部（加算器）
１１２    遅延条件比較部（比較器）
１１３    重み値レジスタ
１１５，１１５’，511a    遅延制限カウンタ
1141〜1144，511b    アンドゲート
【図１】
2010277158.tif 000003
【図２】
2010277158.tif 000004
【図３】
2010277158.tif 000005
【図４】
2010277158.tif 000006
【図５】
2010277158.tif 000007
【図６】
2010277158.tif 000008
【図７】
2010277158.tif 000009
【図８】
2010277158.tif 000010
【図９】
2010277158.tif 000011
【図１０】
2010277158.tif 000012