(57)【特許請求の範囲】
【請求項１】
複数の割り込みラインと接続され、所定の時分割単位内で出力する割り込みラインの割り込みを複数のグループ単位で選択して出力する選択手段と、
前記選択回路から出力されるグループ毎に、前記グループ内で、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを選択し、各グループで選択された割り込みの優先度及び割り込みライン番号のうち、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを、前記所定の時分割単位の割り込みとして出力する時分割割り込み発生手段と
を有し、
前記時分割割り込み発生手段は、
１グループで選択された割り込みの優先度及び割り込みライン番号を保持する保持回路と、
グループ毎の割り込みを決定する際、前記保持回路から保持されている割り込みの優先度及び割り込みライン番号を読み出し、読み出した割り込みの優先度及び割り込みライン番号と、前記選択回路から出力されるグループの割り込みの優先度及び割り込みライン番号との中から、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを選択し、選択した割り込みの優先度及び割り込みライン番号に前記保持回路の保持内容を更新し、前記所定の時分割単位の最後のグループで選択した割り込みを、前記所定の時分割単位の割り込みとして出力する時分割割り込み発生回路と
を有する割り込みコントローラ。
【請求項２】
速い割り込みを要求される割り込みの割り込みラインと接続され、ひとつの割り込みを選択する割り込みを発生手段と、
前記割り込みを発生手段からの割り込みと、前記時分割割り込み発生手段からの割り込みとを入力とし、前記割り込みを発生手段からの割り込みを優先的に出力する調停手段と
を有する請求項１に記載の割り込みコントローラ。
【請求項３】
前記選択手段に接続されている全ての割り込みラインの選択が一周する時間を、所定の時分割単位とする
請求項１又は請求項２に記載の割り込みコントローラ。
【請求項４】
所定の時分割単位内で出力する割り込みラインの割り込みを複数のグループ単位で選択して出力し、
前記出力されるグループ毎に、前記グループ内で、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを選択し、
前記グループ内で選択された割り込みの優先度及び割り込みライン番号を保持しておき、
グループの割り込みを決定する際、前記グループで選択されて保持されている割り込みの優先度及び割り込みライン番号と、入力されたグループの割り込みの優先度及び割り込みライン番号との中から、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを選択し、
保持している割り込みの優先度及び割り込みライン番号を、選択した割り込みの優先度及び割り込みライン番号に更新し、
前記所定の時分割単位の最後のグループで選択した割り込みを、前記所定の時分割単位の割り込みとして出力する
時分割割り込み発生方法。
【請求項５】
速い割り込みを要求される割り込みの選択を別処理で実行し、
前記別処理で選択された割り込みと前記所定の時分割単位の割り込みとが重なった場合、前記別処理で選択された割り込みを優先的に出力する
請求項４に記載の時分割割り込み発生方法。
【請求項６】
前記選択手段に接続されている全ての割り込みラインの選択が一周する時間を、所定の時分割単位とする
請求項４又は請求項５に記載の時分割割り込み発生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、割り込みコントローラ及び時分割割り込み発生方法に関する。
【背景技術】
【０００２】
割り込み回路には、図４に示すように、多数の割り込みが入力されるので、それらを調停しＣＰＵ等に渡す必要が存在する。図４に示すように、全ての割り込みを一度に処理する場合の反応は早いが、回路が膨大なものとなりコスト的に問題があった。
【０００３】
また、図５に示すように、カスケード接続する場合は、図４よりは回路が小さくなるが、それでも回路が大きなものとなってしまう。また、カスケードの場合は速い応答が必要な割り込みに対して応答時間が問題となる。
【０００４】
そこで、時分割をする事によって割り込み線を共用する技術が提案されている（特許文献１）。
【０００５】
特許文献１の技術は、ステートカウンタでプロセッサ番号を循環的に発生させ、これに応じて各プロセッサに割込むタイミングを調整する。割込みリクエスタではプロセッサからの割込み要求を割込み先のプロセッサ番号として記憶し、ステートカウンタの値がプロセッサ番号と等しくなったとき割込み要求ラインをアサートする。割込み制御装置は、自身のプロセッサの番号とステートカウンタの値が等しくなり、かつ割込み要求ラインがアサートされている場合に、自身のプロセッサに割込み要求を行なうものである。
【０００６】
このような構成にすることにより、割込み要求ライン数はプロセッサの個数に関係なく割込みのレベル数だけで済み、従来の方式に比べてライン数を減らすことができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平６−４４１７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１の技術は、割り込みライン数を減らすことができるが、構成が複雑であり、割り込みの優先度を考慮しているわけではない。
【０００９】
そこで、本発明は上記課題に鑑みて発明されたものであって、その目的は、割り込みの優先度を考慮しつつ、割り込み回路の面積を削減できる割り込みコントローラ及び時分割割り込み発生方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明は、複数の割り込みラインと接続され、所定の時分割単位内で出力する割り込みラインの割り込みを複数のグループ単位で選択して出力する選択手段と、前記選択回路から出力されるグループ毎に、前記グループ内で、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを選択し、各グループで選択された割り込みの優先度及び割り込みライン番号のうち、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを、前記所定の時分割単位の割り込みとして出力する時分割割り込み発生手段とを有する割り込みコントローラである。
【００１１】
本発明は、所定の時分割単位内で出力する割り込みラインの割り込みを複数のグループ単位で選択して出力し、前記出力されるグループ毎に、前記グループ内で、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを選択し、各グループで選択された割り込みの優先度及び割り込みライン番号のうち、最も優先度が高く、かつ、割り込みライン番号が若い割り込みを、前記所定の時分割単位の割り込みとして出力する時分割割り込み発生方法である。
【発明の効果】
【００１２】
本発明によれば、割り込みの優先度を考慮しつつ、割り込み回路の面積を削減できる。
【図面の簡単な説明】
【００１３】
【図１】図１は第１の実施の形態の割り込みコントローラのブロック図である。
【図２】図２は第２の実施の形態の割り込みコントローラのブロック図である。
【図３】図３は第２の実施の形態の割り込みコントローラを、システムに実装した場合の概念図である。
【図４】図４は関連技術を説明するための図である。
【図５】図５は関連技術を説明するための図である。
【発明を実施するための形態】
【００１４】
＜第１の実施の形態＞
本発明の第１の実施の形態を説明する。
【００１５】
図１は第１の実施の形態の割り込みコントローラのブロック図である。
【００１６】
第１の実施の形態の割り込みコントローラは、選択回路１と、時分割割り込み生成回路２と、保持回路３と、制御回路４とを有する。
【００１７】
選択回路１は、割り込みライン（０）、割り込みライン（１）、…割り込みライン（１６ｍ−１）と接続され、割り込みライン（０）、割り込みライン（１）、…割り込みライン（１６ｍ−１）を全て選択する時間を１時分割単位とし、１時分割単位内で、所定のグループ毎に割り込みラインを選択する。本実施の形態では、１６本を１グループとする割り込みラインを選択し、全てのグループ（割り込みライン数＝１６本）の選択を、１時分割単位で１周するものとする。尚、１グループとする割り込みラインの本数はシステムの構成により決定すればよく、本数は限定されない。
【００１８】
時分割割り込み生成回路２は、選択回路１で選択された１グループ（１６本）毎に、１グループ（１６本）中の割り込みと保持回路３で保持されている割り込みとの中で、優先度が最も高く、割り込みライン番号の若い割り込みをひとつ選択し、内部のＦＦに保持する。また、選択した割り込みのライン番号とその優先度とを、保持回路３に出力する。そして、制御回路４から制御信号により、所定の選択周期、例えば、選択回路１で全てのグループが選択された時点でＦＦにより保持されている割り込みを出力する。結果として、ＦＦから出力される割り込みは、１時分割単位で選択された全ての割り込みの中で、最も優先度が高く、割り込みライン番号の若い割り込みとなる。
【００１９】
保持回路３は、時分割割り込み生成回路２から出力された割り込みライン番号とその優先度とを保持し、時分割割り込み生成回路２の次回の割り込みの選択の際に、保持されている割り込みの番号とその優先度を出力する。また、時分割割り込み生成回路２から次のグループの割り込みの番号とその優先度とが入力されると、保持されている記録を更新する。
【００２０】
制御回路４は、選択回路１によるグループの選択のタイミング制御を行うとともに、選択回路１による全ての割り込みの選択後（１時分割単位後）において、時分割割り込み生成回路２のＦＦに出力の指示をだす。
【００２１】
次に、上記の構成における具体的な動作を説明する。
【００２２】
尚、以下の説明において、割り込みの表記として、時分割単位をｎ、割り込みラインの番号をＸ、割り込みの優先度をＹとし、それらの関係を割り込み＿Ｘ（ｎ，Ｙ）と表記するものとする。
【００２３】
まず、制御回路４から第１回目の時分割単位の選択指示を受信すると、選択回路１は割り込み（０）、割り込み（１）、…割り込み（１６ｍ−１）のうち、第１回目の第１グループの選択として、割り込み＿０（１，１）、割り込み＿１（１，１）、割り込み＿２（１，４）、割り込み＿３（１，５）、割り込み＿４（１，１）、割り込み＿５（１，２）、割り込み＿６（１，５）、割り込み＿７（１，１）、割り込み＿８（１，２）、割り込み＿９（１，３）、割り込み＿１０（１，３）、割り込み＿１１（１，２）、割り込み＿１２（１，５）、割り込み＿１３（１，１）、割り込み＿１４（１，４）及び割り込み＿１５（１，３）を選択する。
【００２４】
時分割割り込み生成回路２は、割り込み＿０（１，１）、割り込み＿１（１，１）、割り込み＿２（１，４）、割り込み＿３（１，５）、割り込み＿４（１，１）、割り込み＿５（１，２）、割り込み＿６（１，５）、割り込み＿７（１，１）、割り込み＿８（１，２）、割り込み＿９（１，３）、割り込み＿１０（１，３）、割り込み＿１１（１，２）、割り込み＿１２（１，５）、割り込み＿１３（１，１）、割り込み＿１４（１，４）及び割り込み＿１５（１，３）の中で、最も優先度が高く割り込みの番号が最も若い割り込みを選択する。ここで、最も優先度が高く割り込みの番号が最も若い割り込みは、割り込み＿３（１，５）であり、これを選択する。
【００２５】
時分割割り込み生成回路２は、選択した割り込み＿３（１，５）を、保持回路３と内部のＦＦとに出力する。
【００２６】
保持回路３は、時分割割り込み生成回路２から出力された割り込み＿３（１，５）を保持する。
【００２７】
続いて、選択回路１は、制御回路４から第１回目の次のグループの選択指示を受信すると、割り込み＿１６（１，１）、割り込み＿１７（１，１）、割り込み＿１８（１，４）、割り込み＿１９（１，５）、割り込み＿２０（１，１）、割り込み＿２１（１，６）、割り込み＿２２（１，５）、割り込み＿２３（１，１）、割り込み＿２４（１，２）、割り込み＿２５（１，３）、割り込み＿２６（１，３）、割り込み＿２７（１，５）、割り込み＿２８（１，５）、割り込み＿２９（１，１）、割り込み＿３０（１，４）及び割り込み＿３１（１，３）を選択し、時分割割り込み生成回路２に出力する。
【００２８】
また、保持回路３は、保持している割り込み＿３（１，５）を時分割割り込み生成回路２に出力する。
【００２９】
時分割割り込み生成回路２は、割り込み＿１６（１，１）、割り込み＿１７（１，１）、割り込み＿１８（１，４）、割り込み＿１９（１，５）、割り込み＿２０（１，１）、割り込み＿２１（１，６）、割り込み＿２２（１，５）、割り込み＿２３（１，１）、割り込み＿２４（１，２）、割り込み＿２５（１，３）、割り込み＿２６（１，３）、割り込み＿２７（１，５）、割り込み＿２８（１，５）、割り込み＿２９（１，１）、割り込み＿３０（１，４）及び割り込み＿３１（１，３）と、保持回路３で保持されていた割り込み＿３（１，５）の中で、最も優先度が高く割り込みの番号が若い割り込みを選択する。ここで、最も優先度が高く割り込みの番号が若い割り込みは、割り込み＿２１（２，６）であり、これを選択する。
【００３０】
時分割割り込み生成回路２は、選択した割り込み＿２１（２，６）を、保持回路３と内部のＦＦとに出力する。
【００３１】
保持回路３は、割り込み＿３（１，５）の代わりに、時分割割り込み生成回路２から出力された割り込み＿２１（２，６）を保持する。
【００３２】
続いて、選択回路１は、制御回路４から第１回目の更に次のグループの選択指示を受信すると、割り込み＿３２（３，１）、割り込み＿３３（３，１）、割り込み＿３４（３，４）、割り込み＿３５（３，５）、割り込み＿３６（３，１）、割り込み＿３７（３，３）、割り込み＿３８（３，４）、割り込み＿３９（３，１）、割り込み＿４０（３，２）、割り込み＿４１（３，３）、割り込み＿４２（３，３）、割り込み＿４３（３，５）、割り込み＿４４（３，５）、割り込み＿４５（３，１）、割り込み＿４６（３，４）及び割り込み＿４７（３，３）を選択し、時分割割り込み生成回路２に出力する。
【００３３】
また、保持回路３は、保持している割り込み＿２１（２，６）を時分割割り込み生成回路２に出力する。
【００３４】
時分割割り込み生成回路２は、割り込み＿３２（３，１）、割り込み＿３３（３，１）、割り込み＿３４（３，４）、割り込み＿３５（３，５）、割り込み＿３６（３，１）、割り込み＿３７（３，３）、割り込み＿３８（３，４）、割り込み＿３９（３，１）、割り込み＿４０（３，２）、割り込み＿４１（３，３）、割り込み＿４２（３，３）、割り込み＿４３（３，５）、割り込み＿４４（３，５）、割り込み＿４５（３，１）、割り込み＿４６（３，４）及び割り込み＿４７（３，３）と、保持回路３で保持されていた割り込み＿２１（３，６）の中で、最も優先度が高く割り込みの番号が若い割り込みを選択する。ここで、最も優先度が高く割り込みの番号が若い割り込みは、割り込み＿２１（１，６）であり、これを選択する。
【００３５】
時分割割り込み生成回路２は、選択した割り込み＿２１（２，６）を、保持回路３と内部のＦＦとに出力する。
【００３６】
保持回路３は、割り込み＿２１（２，６）の代わりに、時分割割り込み生成回路２から出力された割り込み＿２１（２，６）を保持する。
【００３７】
このようにして、選択回路１による割り込みラインの全てのグループの選択が終了し、時分割割り込み生成回路２での選択が終了した時点において、制御回路４から出力指示を受け取ると、時分割割り込み生成回路２のＦＦは保持している割り込みを出力する。出力される割り込みが、例えば、割り込み＿２１（２，６）であれば、割り込み（０）、割り込み（１）、…割り込み（１６ｍ−１）の第１回の時分割単位での割り込みの中で、割り込み＿２１（２，６）が最も優先度が高く割り込みライン番号が若い割り込みとなる。
【００３８】
上述の如く、第１の実施の形態によれば、割り込み生成を時分割にしたことによって、割り込みの優先度を考慮しながら、割り込み回路全体での面積を削減できる。
【００３９】
尚、第１の実施の形態では、選択回路に接続されている全ての割り込みラインの選択が一周する時間を１時分割単位としたが、これに限られない。例えば、全ての割り込みラインのグループのうち、所定のグループ数の選択する期間を、１時分割単位とすることもできる。
【００４０】
＜第２の実施の形態＞
第２の実施の形態を説明する。
【００４１】
第２の実施の形態は、第１の実施の形態に加えて、速い割り込みを要求する割り込みと、遅い割り込みでも良い割り込みとを、別の処理で取り扱う例を説明する。
【００４２】
図２は第２の実施の形態の割り込みコントローラのブロック図である。
【００４３】
図２に示す如く、第２の実施の形態の割り込みコントローラは、第１の構成に加えて、割り込み生成回路５と、調停回路６とを備える。
【００４４】
割り込み生成回路５には、速い応答が必要な割り込みが入力され、これらは通常の割り込み処理され即座に割り込みとして上げられＣＰＵ等で処理が行われる。図２に示されるブロック図の例では、速い応答が必要な割り込みは、割り込みライン（０）、割り込みライン（１）、…割り込みライン（１５）である。
【００４５】
また、それらの速い応答が必要な割り込みライン（０）、割り込みライン（１）、…割り込みライン（１５）の割り込みとは別に、速い応答を要求されない割り込みは、選択回路１に入力される。図２に示されるブロック図の例では、割り込み（１６）以降の割り込みラインである。
【００４６】
上記のような構成において、速い応答が必要な割り込みライン（０）、割り込み（１）、…割り込みライン（１５）の割り込みは、割り込み発生回路５で通常の割り込み処理がされて即座に割り込みとして調停回路６に出力される。
【００４７】
一方、割り込みライン（１６）以降の割り込みの処理については、上述した第１の実施の形態と同様な動作により、毎回、もしくは特定のループ毎に時分割割り込み生成回路２から割り込みが出力される。
【００４８】
調停回路６では、割り込み生成回路５からの割り込みと、時分割割り込み生成回路２からの割り込みとを入力し、割り込み生成回路５からの割り込み要求がある場合には、割り込み生成回路５からの割り込みを出力する。割り込み生成回路５からの割り込み要求がない場合には、時分割割り込み生成回路２からの割り込みを出力する。
【００４９】
図３は、第２の実施の形態の割り込みコントローラを、システムに実装した場合の概念図である。
【００５０】
図３に示す如く、各割り込みラインには、外部入力や、タイマー、ＤＭＡ、各種回路が接続されており、調停回路６からの割り込みはＣＰＵ等に出力される。
【００５１】
以上の如く、第２の実施の形態によれば、第１の実施の形態の効果に加え、速い割り込みが要求されるものは別枠で処理するので、速い応答が必要な割り込みにも対応する事が出来る。
【００５２】
また、時分割割り込み生成回路から調停回路への出力を、選択が一周する単位毎にすれば、遅い割り込み内での優先順位を保証できる。
【００５３】
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも上記実施の形態に限定されるものではなく、その技術的思想の範囲内において様々に変形し実施することが出来る。
【符号の説明】
【００５４】
１        選択回路
２        時分割割り込み生成回路
３        保持回路
４        制御回路
５        割り込み生成回路
６        調停回路
【図１】
0005441185.tif 000002
【図２】
0005441185.tif 000003
【図３】
0005441185.tif 000004
【図４】
0005441185.tif 000005
【図５】
0005441185.tif 000006