(57)【特許請求の範囲】
【請求項１】
優先順位が付けられた互いに異なる識別番号を割り当てられた複数の割り込み処理エレメントと、前記優先順位を示す互いに異なるレベル番号を割り当てられた複数のレベル信号を入力し、低電位のレベル信号のうち最大優先順位のレベル番号をもつレベル信号のレベル番号をエンコードして割り込みレベル番号とする第１のプライオリティエンコーダと、前記複数の割り込み処理エレメントから出力される複数の比較信号を入力し、一致している旨を表わす比較信号を出力する該割り込み処理エレメントのうち最大優先順位の識別番号をもつ前記割り込み処理エレメントの識別番号をエンコードして割り込み識別番号とする第２のプライオリティエンコーダとを有し、前記割り込み処理エレメントは、レベル番号を指定するレベル番号レジスタと、前記レベル番号レジスタの指定するレベル番号が割り当てられた前記レベル信号から電流を引き抜く電流シンク手段と、前記レベル番号レジスタの指定するレベル番号と前記第１のプライオリティエンコーダが出力する割り込みレベル番号が一致しているか否かを比較し前記比較信号として出力するコンパレータとを備えた割り込みコントローラ。
【請求項２】
第１のプライオリティエンコーダが出力する割り込みレベル番号と第２のプライオリティエコンーダが出力する割り込み識別番号を記憶する記憶手段と、前記記憶手段を制御する制御手段とを備えたことを特徴とする請求項１記載の割り込みコントーラ。
【請求項３】
記憶手段に記憶された割り込みレベル番号と第１のプライオリティエンコーダの出力が表わす割り込みレベル番号を比較し、前記第１のプライオリティエンコーダの出力が表わす割り込みレベル番号が大きいときのみ前記記憶手段の内容を更新するように制御する制御手段を備えたことを特徴とする請求項２記載の割り込みコントローラ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は割り込みコントローラに関するものである。
【０００２】
【従来の技術】
一般にコンピュータシステムでは、割り込みの処理を割り込みレベル番号と割り込み識別番号という２つの値で制御することが多い。前者は割り込みの優先度あるいは緊急度を示すもので、後者は割り込みの要因を識別するものである。通常これらは割り込みコントローラで生成され、中央処置装置ＣＰＵに入力される。
【０００３】
図９は従来の割り込みコントローラの構成を示したブロック図である。図において、ＩＥ１０〜ＩＥ１７は割り込み処理エレメント、Ａ０〜Ａ７は割り込み要求信号、Ｓ０〜Ｓ２は３ビットの割り込みレベル要求信号である。この割り込みレベル要求信号は３ビットで０〜７の割り込みレベル番号を表わすが、０の場合は割り込み要求がないことを表わし、１〜７の場合はそのレベルの割り込み要求があることを表わす。また、割り込みレベル番号は７〜１の順に優先順位がつけられている。Ｎ０〜Ｎ２は３ビットの割り込み識別番号信号である。この割り込み識別番号信号は３ビットで０〜７の識別番号表わすが、この番号はそれぞれＡ０〜Ａ７の割り込み要求信号に対応している。
【０００４】
図１０は割り込み処理エレメントＩＥ１０〜ＩＥ１７のうちの１つの構成を示したもので、図において、ＣＭＰはコンパレータ、ＬＲは３ビットのレベル番号レジスタ、ＮＲは３ビットの識別番号レジスタ、ＳＬＴは６ビットのセレクタ、Ｇ５０はＡＮＤゲートである。Ａは割り込み要求入力であり、“Ｈ”（高電位）のとき割り込み要求があることを意味する。
【０００５】
コンパレータＣＭＰは図１１に示すように、インバータ１１ａ〜１１ｃ、排他ＯＲゲート１１ｄ、１１ｅ、ＡＮＤゲート１１ｆ〜１１ｊ、ＯＲゲート１１ｋ、１１ｌで構成されており、Ｊ０〜Ｊ２の３ビットで表わされる０〜７の値がＫ０〜Ｋ２の３ビットで表わされる０〜７の値より大きいときのみ、その出力Ｅが“Ｈ”となる。レベル番号レジスタＬＲはその出力ＬＶ０〜ＬＶ２の３ビットでそのエレメントの割り込みレベル番号（０〜７）を示す。
【０００６】
前記図１０において、識別番号レジスタＮＲは、その出力ＣＮ０〜ＣＮ２の３ビットでそのエレメントの識別番号（０〜７）を示す。セレクタＳＬＴは、その入力Ｓが“Ｌ”（低電位）のときは、Ｔ０〜Ｔ５の値をＱ０〜Ｑ５に出力し、入力Ｓが“Ｈ”（高電位）のときは、Ｐ０〜Ｐ５の値をＱ０〜Ｑ５に出力する。なお、割り込み処理エレメントＩＥ０〜ＩＥ７の識別番号レジスタＮＲは、それぞれが０〜７を表わすようにあらかじめ設定されている。また、上記レベル番号レジスタＬＲ、識別番号レジスタＮＲへの書き込み回路は本特許の動作に直接関係しないので、ここでは省略する。
【０００７】
次に図１０の割り込み処理エレメントの動作について説明する。
コンパレータＣＭＰはレベル番号レジスタＬＲの出力ＬＶ０〜ＬＶ２と３ビットの入力ＩＳ０〜ＩＳ２を比較する。そしてＬＶ０〜ＬＶ２で指定される割り込みレベル番号が入力ＩＳ０〜ＩＳ２で指定される割り込みレベル番号よりも大きいときはその出力Ｅを“Ｈ”にする。逆にＬＶ０〜ＬＶ２で指定される割り込みレベル番号が入力ＩＳ０〜ＩＳ２で指定される割り込みレベル番号以下のときはその出力Ｅを“Ｌ”にする。
【０００８】
一方、セレクタＳＬＴとＡＮＤゲートＧ５０はコンパレータＣＭＰの出力Ｅが“Ｈ”でかつ割り込み要求入力Ａが“Ｈ”のときに、レベル番号レジスタＬＲの出力ＬＶ０〜ＬＶ２と識別番号レジスタＮＲの出力ＣＮ０〜ＣＮ２をそれぞれ出力０Ｓ０〜０Ｓ２とＯＮ０〜ＯＮ２に出力し、それ以外のときは入力ＩＳ０〜ＩＳ２と入力ＩＮ０〜ＩＮ２をそれぞれ出力ＯＳ０〜ＯＳ２とＯＮ０〜ＯＮ２に出力する。
【０００９】
つまり、図１０の割り込み処理エレメントは、割り込み要求入力Ａが“Ｈ”でかつレベル番号レジスタＬＲの出力ＬＶ０〜ＬＶ２で指定される割り込みレベル番号が、３ビットの入力ＩＳ０〜ＩＳ２で指定される割り込みレベル番号よりも大きいときは、ＬＶ０〜ＬＶ２とＣＮ０〜ＣＮ２をそれそれ出力ＯＳ０〜ＯＳ２とＯＮ０〜ＯＮ２に出力し、割り込み要求入力Ａが“Ｌ”またはＬＶ０〜ＬＶ２で指定される割り込みレベル番号が、入力ＩＳ０〜ＩＳ２で指定される割り込みレベル番号よりも小さいときは、入力ＩＳ０〜ＩＳ２と入力ＩＮ０〜ＩＮ２をそれぞれ出力ＯＳ０〜ＯＳ２とＯＮ０〜ＯＮ２に出力する。
【００１０】
したがって、図９のように割り込み処理エレメントＩＥ１０〜ＩＥ１７を縦続（ｃａｓｃａｄｅ）接続すれば、割り込み要求入力Ａが“Ｈ”の割り込み処理エレメントのうち、レベル番号レジスタＬＲに設定された割り込みレベルが最大の割り込み処理エレメントの、レベル番号レジスタＬＲに設定された割り込みレベルと識別番号レジスタＮＲに設定された識別番号が、最終段の割り込み処理エレメントＩＥ１７の出力Ｓ２〜Ｓ０，Ｎ２〜Ｎ０に現れることになる。
【００１１】
【発明が解決しようとする課題】
従来の割り込みコントローラは以上のように構成されているので、コンパレータとセレクタで構成された割り込み処理エレメントを縦続接続すると、コンパレータは入力から出力までに４〜５ゲートを、セレクタは入力から出力までに２〜３ゲートを介する必要があるので、８要因を割り込み要求信号とする割り込みコントローラでは、割り込み要求信号の入力から割り込みレベル番号信号、割り込み識別番号信号の出力までに４８〜６４ゲートも介することになり、割り込み要求信号の変化が割り込みレベル番号信号、割り込み識別番号信号に伝播するまでにかなり長い時間がかかってしまうという課題があった。
【００１２】
また、上記の割り込みコントローラは、割り込み要求信号の変化が直接割り込み識別番号信号の変化を引き起こしている。ところが、中央処置装置ＣＰＵによっては割り込み識別番号信号を処理するタイミングが割り込みレベル番号信号を処理するタイミングより遅れるものがある。
【００１３】
このような中央処置装置ＣＰＵでは、かりに識別番号が３の割り込み要求が発生したとすると、中央処置装置ＣＰＵは割り込みレベル番号信号を処理して割り込みを受け付けるが、このとき割り込み識別番号信号を処理する前にその割り込み要求信号が“Ｌ”に変化したとすると、他に割り込み要求がない場合、割り込み識別番号信号は識別番号０を表わすように変化してしまう。このため、中央処置装置ＣＰＵは識別番号０の割り込みが発生したと認識することになり、誤った識別番号を認識してしまうという課題もあった。
【００１４】
この発明は上記のような課題を解決するためになされたもので、割り込み要求信号の変化が割り込みレベル番号信号、割り込み識別番号信号に高速に伝播する割り込みコントローラを提供することを目的とする。
【００１５】
また、一度割り込み要求が発生すれば、その後その割り込み要求がなくなっても、中央処置装置ＣＰＵが割り込み識別信号を処理するまでは、割り込み識別信号が変化しない割り込みコントローラを提供することを目的とする。
【００１６】
【課題を解決するための手段】
この発明に係る割り込みコントローラは、優先順位が付けられた互いに異なる識別番号を割り当てられた複数の割り込み処理エレメントと、レベル信号のレベル番号をエンコードして割り込みレベル番号とする第１のプライオリティエンコーダと、最大優先順位の識別番号をもつ前記割り込み処理エレメントの識別番号をエンコードして割り込み識別番号とする第２のプライオリティエンコーダとを有し、前記割り込み処理エレメントはレベル番号を指定するレベル番号レジスタと、前記レベル番号レジスタの指定するレベル番号が割り当てられた前記レベル信号から電流を引き抜く電流シンク手段と、前記レベル番号レジスタの指定するレベル番号と前記第１のプライオリティエンコーダが出力する割り込みレベル番号が一致しているか否かを比較するコンパレータとを備えたものである。
【００１７】
この発明に係る割り込みコントローラは、第１のプライオリティエンコーダが出力する割り込みレベル番号と第２のプライオリティエコンーダが出力する割り込み識別番号を記憶する記憶手段と、前記記憶手段を制御する制御手段とを備えたものである。
【００１８】
この発明に係る割り込みコントローラは、記憶手段に記憶された割り込みレベル番号と第１のプライオリティエンコーダの出力が表わす割り込みレベル番号を比較し、前記第１のプライオリティエンコーダの出力が表わす割り込みレベル番号が大きいときのみ前記記憶手段の内容を更新するように制御する制御手段を備えたものである。
【００１９】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態１．
図１はこの発明の実施の形態１による割り込みコントローラの構成を示すブロック図であり、図において、ＩＥ０〜ＩＥ７は割り込み処理エレメント、ＰＥ１，ＰＥ２は第１、第２のプライオリティエンコーダ、Ａ０〜Ａ７は割り込み要求信号である。第１のプライオリティエンコーダＰＥ１の出力Ｓ０〜Ｓ２は、３ビットの割り込みレベル番号信号であり、この割り込みレベル番号信号は３ビットで０〜７の割り込みレベル番号を表わすが、これは０の場合は割り込み要求がないことを表わし、１〜７の場合はそのレベルの割り込み要求があることを表わす。また、割り込みレベル番号は７〜１の順に優先順位がつけられている。
【００２０】
第２のプライオリティエンコーダＰＥ２の出力Ｎ０〜Ｎ２は、３ビットの割り込み識別番号信号であり、３ビットで０〜７の識別番号表わす。この番号はそれぞれＡ０〜Ａ７の割り込み要求信号に対応しており、７〜０の順に優先順位がつけられている。Ｐ１，Ｐ２は２相のノンオーバラップクロックであり、図２に示すように交互に“Ｈ”になることを繰り返す。
【００２１】
図３は割り込み処理エレメントＩＥ０〜ＩＥ７のうちの１つの構成を示しており、すべて同じ構成である。図において、ＬＲは３ビットのレベル番号レジスタ、Ｉ１〜Ｉ３はインバータ、Ｔ１〜Ｔ２８はＮチャネルトランジスタ、Ｇ１〜Ｇ３は排他ＯＲゲート、Ｇ４，Ｇ５はＡＮＤゲート、Ａは割り込み要求入力であり“Ｈ”のとき割り込み要求があることを意味する。Ｒ１〜Ｒ７はレベル信号である。
【００２２】
レベル番号レジスタＬＲは、その出力ＬＶ０〜ＬＶ２の３ビットで、そのエレメントの割り込みレベル番号（０〜７）を指定する。なお、レベル番号レジスタＬＲへの書き込み回路は本特許の動作に直接関係しないので、ここでは省略する。
【００２３】
上記インバータＩ１〜Ｉ３，ＮチャネルトランジスタＴ１〜Ｔ２８，ＡＮＤゲートＧ５は電流シンク手段としてのオープンドレインのデコーダ（電流シンク手段）５１を形成しており、ノンオーバラップクロックＰ２、割り込み要求入力Ａがともに“Ｈ”で、レベル番号レジスタＬＲの出力ＬＶ０〜ＬＶ３の表わす値が１〜７のいずれかのとき、それぞれレベル信号Ｒ１〜Ｒ７から電流を引き抜く。また、排他ＯＲゲートＧ１〜Ｇ３、ＡＮＤゲートＧ４はレベル番号レジスタＬＲの出力ＬＶ０〜ＬＶ２と出力Ｓ０〜Ｓ１のそれぞれのビットを比較するコンパレータ５２を形成しており、両者のそれぞれのビットがすべてが一致しかつ割り込み要求入力Ａが“Ｈ”のとき比較信号Ｍを“Ｈ”にする。
【００２４】
図４は第１のプライオリティエンコーダＰＥ１を示す構成図であり、図において、Ｔ４１〜Ｔ５４はＰチャネルトランジスタ、Ｉ１０〜Ｉ１９はインバータ、Ｇ１０〜Ｇ１３はＡＮＤゲート、Ｇ１４はＮＯＲゲート、Ｇ１５〜Ｇ１７はＯＲゲートである。ここではレベル線Ｒ１〜Ｒ７は入力となり、レベル信号Ｒ７〜Ｒ１の順に優先順位がつけられている。ここで、インバータＩ１０はノンオーバラップクロックＰ１を反転する。
【００２５】
ＰチャネルトランジスタＴ４１〜Ｔ４７は、ノンオーバラップクロックＰ１が“Ｈ”のとき、それぞれ導通してレベル信号Ｒ１〜Ｒ７を“Ｈ”にプリチャージする。インバータＩ１１〜Ｉ１７はそれぞれレベル信号Ｒ１〜Ｒ７を反転する。ＰチャネルトランジスタＴ４８〜Ｔ５４は、それぞれプリチャージされたレベル信号Ｒ１〜Ｒ７を“Ｈ”状態に保持しておくための駆動能力の小さなトランジスタである。インバータＩ１８，Ｉ１９，ＡＮＤゲートＧ１０〜Ｇ１３，ＮＯＲゲートＧ１４，ＯＲゲートＧ１５〜Ｇ１７はプライオリティエンコード回路５３を構成しており、レベル信号Ｒ１〜Ｒ７のうち“Ｌ”になっている信号で最も優先順位の高いものの番号をＳ０〜Ｓ２に３ビットで出力する。この真理値表を図５に示す。なお、図中Ｈは高電位、Ｌは低電位、×は高電位でも低電位でもよいことを表わす。
【００２６】
図６は第２のプライオリティエンコーダＰＥ２を示す構成図であり、図において、Ｉ２０，Ｉ２１はインバータ、Ｇ２０〜Ｇ２３はＡＮＤゲート、Ｇ２４はＮＯＲゲート、Ｇ２５〜Ｇ２７はＯＲゲートである。Ｍ１〜Ｍ７は入力であり、この入力Ｍ７〜Ｍ１の順に優先順位がつけられている。インバータＩ２０，Ｉ２１、ＡＮＤゲートＧ２０〜Ｇ２３、ＮＯＲゲートＧ２４、，ＯＲゲートＧ２５〜Ｇ２７はプライオリティエンコーダＰＥ１のプライオリティエンコード回路５３と同じ構成のものであり、入力Ｍ１〜Ｍ７のうち“Ｈ”になっている信号で最も優先順位の高いものの番号をＮ０〜Ｎ２に３ビットで出力する。この真理値表を図７に示す。なお、図中Ｈは高電位、Ｌは低電位、×は高電位でも低電位でもよいことを表わす。
【００２７】
次に動作について説明する。
ここでは例として、割り込み要求信号Ａ１，Ａ２，Ａ４およびＡ６が“Ｈ”で、割り込み要求信号Ａ０，Ａ３，Ａ５，Ａ７が“Ｌ”とする。また割り込み処理エレメントＩＥ１，ＩＥ２，ＩＥ４，ＩＥ６のレベル番号レジスタＬＲは、その出力ＬＶ０〜ＬＶ２がそれぞれ、５，１，５，４を表わすように設定されているものとする。
【００２８】
まず、ノンオーバラップクロックＰ１が“Ｈ”でノンオーバラップクロックＰ２が“Ｌ”とする。この状態では、ＰチャネルトランジスタＴ４１〜Ｔ４７がオンし、レベル信号Ｒ１〜Ｒ７を“Ｈ”にプリチャージする。次に、ノンオーバラップクロックＰ１が“Ｌ”になり、ＰチャネルトランジスタＴ４１〜Ｔ４７がオフする。この後、レベル信号Ｒ１〜Ｒ７の“Ｈ”状態はＰチャネルトランジスタＴ４８〜Ｔ５４によって保持される。その後ノンオーバラップクロックＰ２が“Ｈ”になる。
【００２９】
ここで割り込み処理エレメントＩＥ０，ＩＥ３，ＩＥ５，ＩＥ７は割り込み要求信号Ａ０，Ａ３，Ａ５，Ａ７が“Ｌ”なので動作に影響しない。割り込み処理エレメントＩＥ１とＩＥ４ではレベル番号レジスタＬＲが５に設定されているので、ＮチャネルトランジスタＴ１７〜Ｔ２０がオンし、レベル信号Ｒ５から電流を引き抜く。第１のプライオリティエンコーダＰＥ１のＰチャネルトランジスタＴ５２は駆動能力が小さいので、この結果、レベル信号Ｒ５は“Ｌ”になる。同様にして、割り込み処理エレメントＩＥ２ではレベル番号レジスタＬＲが１に設定されているので、レベル信号Ｒ１の電流が引き抜かれレベル信号Ｒ１が“Ｌ”になる。
【００３０】
また、割り込み処理エレメントＩＥ６ではレベル番号レジスタＬＲが４に設定されているので、レベル信号Ｒ４の電流が引き抜かれレベル信号Ｒ４が“Ｌ”になる。この結果、第１のプライオリティエンコーダＰＥ１のプライオリティエンコード回路５３は、レベル信号Ｒ１，Ｒ４，Ｒ５のうち最も優先順位の高い信号であるレベル信号Ｒ５の番号５を割り込みレベル番号信号Ｓ０〜Ｓ２に出力する。つまり、Ｓ２，Ｓ１，Ｓ０は順に“Ｈ”、“Ｌ”、“Ｈ”となる。
【００３１】
割り込みレベル番号信号Ｓ０〜Ｓ２の変化は割り込み処理エレメントＩＥ０〜ＩＥ７にフィードバックされ、排他ＯＲゲートＧ１〜Ｇ３，ＡＮＤゲートＧ４で、レベル番号レジスタＬＲの出力ＬＶ０〜ＬＶ２と比較される。この場合、Ｓ０〜Ｓ２が５を表わしており、割り込み要求入力Ａが“Ｈ”で、レベル番号レジスタＬＲの出力ＬＶ０〜ＬＶ２が５を表わしているのは、割り込み処理エレメントＩＥ１と割り込み処理エレメントＩＥ４である。したがって両者の比較信号Ｍすなわち、比較信号Ｍ１とＭ４が“Ｈ”になり、比較信号Ｍ０，Ｍ２，Ｍ３，Ｍ５，Ｍ６，Ｍ７は“Ｌ”になる。
【００３２】
第２のプライオリティエンコーダＰＥ２は比較信号Ｍ１〜Ｍ７をエンコードし、“Ｈ”の信号で優先順位が最も高い比較信号Ｍ４を識別する番号４を割り込み識別番号信号Ｎ０〜Ｎ２として出力する。つまりＮ２，Ｎ１，Ｎ０は順に“Ｈ”，“Ｌ”，“Ｌ”となる。
【００３３】
以上のように、この実施の形態１によれば、割り込みレベル番号信号Ｓ０〜Ｓ２と割り込み識別番号信号Ｎ０〜Ｎ２を決定するとき、割り込み要求信号Ａ０〜Ａ７が割り込みレベル番号信号Ｓ０〜Ｓ２と割り込み識別番号信号Ｎ０〜Ｎ２に伝播するまでに介在するハードウェアはたかだか数個のトランジスタと１０段程度のインバータ、論理ゲートである。従って、割り込み要求信号Ａ０〜Ａ７の変化は割り込みレベル番号信号Ｓ０〜Ｓ２と割り込み識別番号信号Ｎ０〜Ｎ２に非常に高速伝播することができる。
【００３４】
実施の形態２．
実施の形態１の割り込みレベル番号信号Ｓ０〜Ｓ２と割り込み識別番号信号Ｎ０〜Ｎ２はそのまま中央処置装置ＣＰＵに出力してもよい。この場合、中央処置装置ＣＰＵに入力される割り込みレベル番号信号と割り込み識別番号信号は、ノンオーバラップクロックＰ２が“Ｈ”になるたびに常に更新されることになるが、実施の形態２は図８に示すように、割り込みレベル番号信号と割り込み識別番号信号をラッチする記憶手段としてのラッチ回路を付加し、一度割り込み要求が発生すれば、その後その割り込み要求がなくなっても、中央処置装置ＣＰＵが割り込み識別番号信号を処理するまで、割り込みレベル番号信号と割り込み識別番号信号を変化させないようにしたものである。
【００３５】
図８において、ＬＣ１は７ビットのラッチ回路、ＬＣ２は６ビットのラッチ回路である。ＣＭＰはコンパレータ、Ｉ４０はインバータ、Ｇ４０〜Ｇ４３はＡＮＤゲート、Ｇ４４はＯＲゲートであり、これ等により記憶手段としてのラッチ回路ＬＣ１，ＬＣ２を制御する制御手段５４を構成している。ラッチ回路ＬＣ１は割り込みレベル番号信号Ｓ０〜Ｓ２と割り込み識別番号信号Ｎ０〜Ｎ２とコンパレータＣＭＰの出力ＥをノンオーバラップクロックＰ２が“Ｈ”のときにラッチする。このときＲＳＴ信号が“Ｈ”であると、インバータＩ４０，ＡＮＤゲートＧ４０〜Ｇ４２，ＯＲゲートＧ４４により、強制的にその出力ＬＳ０〜ＬＳ２はすべて“Ｌ”になり、ＬＥは“Ｈ”になる。ラッチ回路ＬＣ２はラッチ回路ＬＣ１の出力ＬＳ０〜ＬＳ２とＬＮ０〜ＬＮ２をノンオーバラップクロックＰ１が“Ｈ”のときにラッチする。ただし、このラッチ動作はＡＮＤゲートＧ４３によりラッチＬＣ１の出力ＬＥが“Ｈ”のときのみに実行される。
【００３６】
コンパレータＣＭＰは前記図１１に示した構成と同じであり、Ｊ０〜Ｊ２の３ビットで表わされる０〜７の値がＫ０〜Ｋ２の３ビットで表わされる０〜７の値より大きいときのみ、その出力Ｅを“Ｈ”にする。ラッチ回路ＬＣ２の出力ＳＳ０〜ＳＳ２はラッチされた割り込みレベル番号信号であり、ＮＮ０〜ＮＮ２はラッチされた割り込み識別番号信号である。
【００３７】
この実施の形態２では、上記割り込みレベル番号信号ＳＳ０〜ＳＳ２、割り込み識別番号信号ＮＮ０〜ＮＮ２が、実施の形態１における割り込みレベル番号信号Ｓ０〜Ｓ２，割り込み識別番号信号Ｎ０〜Ｎ２として中央処置装置ＣＰＵに入力される。ＲＳＴはリセット信号であり、中央処置装置ＣＰＵがリセット状態のときと、中央処置装置ＣＰＵが割り込み識別番号信号を処理した直後に“Ｈ”になる。
【００３８】
次に動作について説明する。
まず最初にリセット信号ＲＳＴが“Ｈ”になる。この状態でノンオーバラップクロックＰ２が“Ｈ”になると、ラッチ回路ＬＣ１の出力ＬＳ０〜ＬＳ２はすべて“Ｌ”になり、ラッチ回路ＬＣ１の出力ＬＥは“Ｈ”になる。従って、次にノンオーバラップクロックＰ１が“Ｈ”になるとラッチ回路ＬＣ２が更新され、その出力ＳＳ０〜ＳＳ２もすべて“Ｌ”になり，リセット信号ＲＳＴが“Ｌ”になる。これが初期状態である。この状態でＳ０〜Ｓ２がすべて“Ｌ”つまりレベル番号が０である場合を考える。
【００３９】
ここでラッチ回路ＬＣ２の出力ＳＳ０〜ＳＳ２はすべて“Ｌ”であり、０を表わしている。従って、コンパレータＣＭＰの出力Ｅは“Ｌ”になる。この結果、ノンオーバラップクロックＰ２が“Ｈ”のときラッチ回路ＬＣ１にラッチされる。従って、ラッチ回路ＬＣ１の出力ＬＥが“Ｌ”になり、ＡＮＤゲートＧ４３によりラッチ回路ＬＣ２の内容は変化しない。
【００４０】
次に割り込みレベル番号信号Ｓ０が“Ｈ”，割り込みレベル番号信号Ｓ１，Ｓ２が“Ｌ”の場合を考える。このときは割り込みレベル番号信号Ｓ０〜Ｓ２は１を表わすので、コンパレータＣＭＰの出力Ｅは“Ｈ”になる。この結果はクロックＰ２が“Ｈ”のときラッチ回路ＬＣ１にラッチされる。従って、ラッチ回路ＬＣ１の出力ＬＥが“Ｈ”になり、ＡＮＤゲートＧ４３によりラッチ回路ＬＣ２の出力ＳＳ０〜ＳＳ２，ＮＮ０〜ＮＮ１は新しい値に更新される。
【００４１】
つまり、ラッチ回路ＬＣ２は現在ラッチしているＳＳ０〜ＳＳ２で表わされる割り込みレベル番号よりも割り込みレベル番号信号Ｓ０〜Ｓ２で表わされる割り込みレベルのほうが高くなったとき、言い換えれば現在ラッチしている優先度よりも高い優先度の割り込みが発生したときにのみその内容が更新される。
【００４２】
従って、一度割り込み要求が発生すれば、その後その割り込み要求がなくなり、割り込み要求信号がＡ０〜Ａ７すべて“Ｌ”になってもその内容が変化することはない。なお、ラッチ回路ＬＣ２は中央処置装置ＣＰＵが割り込み識別番号信号を処理した後リセット信号ＲＳＴを“Ｈ”にすることにより、初期状態にもどる。
【００４３】
以上のように、実施の形態２によれば、割り込みレベル信号と割り込み識別信号をラッチするようにしたことにより、一度割り込み要求が発生すれば、その後その割り込み要求がなくなっても、中央処理装置ＣＰＵが割り込み識別信号を処理するまでは、割り込みレベル信号と割り込み識別信号とが変化しない。また、ラッチ中の割り込みレベル番号より新しい割り込みレベル番号の優先度が高いときは、ラッチを更新するようにしたことにより、優先度の高い割り込みが後で発生しても、それを先に処理できる。
【００４４】
【発明の効果】
以上のように、この発明によれば、割り込み要求信号を、複数のレベル信号のいずれかに出力し、そのレベル信号をエンコードすることにより割り込みレベル番号信号を発生するように構成したので、割り込み要求信号の変化が割り込みレベル番号信号と割り込み識別番号信号に伝播するまでを著しく高速にすることができる効果がある。
【００４５】
また、割り込みレベル信号と割り込み識別信号をラッチするように構成したので、一度割り込み要求が発生すれば、その後その割り込み要求がなくなっても、中央処理装置ＣＰＵが割り込み識別信号を処理するまでは、割り込みレベル信号と割り込み識別信号とが変化しない効果がある。
【００４６】
また、ラッチ中の割り込みレベル番号と新しい割り込みレベル番号を比較し、新しい割り込みレベル番号の優先度が高いときは、ラッチを更新するように構成したので、優先度の高い割り込みが後で発生しても、それを先に中央処置装置ＣＰＵで処理できる効果がある。
【図面の簡単な説明】
【図１】この発明の実施の形態１による割り込みコントローラの構成を示すブロック図である。
【図２】ノンオーバラップクロックのタイミング図である。
【図３】割り込み処理エレメントの構成を示すブロック図である。
【図４】第１のプライオリティエンコーダの構成を示すブロック図である。
【図５】第１のプライオリティエンコーダの真理値表を示す図である。
【図６】第２のプライオリティエンコーダの構成を示すブロック図である。
【図７】第２のプライオリティエンコーダの真理値表を示す図である。
【図８】この発明の実施の形態２による割り込みコントローラのラッチ回路図である。
【図９】従来の割り込みコントローラの構成を示すブロック図である。
【図１０】従来の割り込みコントローラの割り込み処理エレメントの構成を示すブロック図である。
【図１１】割り込みコントローラのコントローラの回路図である。
【符号の説明】
ＩＥ０〜ＩＥ７，ＩＥ１０〜ＩＥ１７  割り込み処理エレメント、ＰＥ１  第１のプライオリティエンコーダ、ＰＥ２  第２のプライオリティエンコーダ、ＣＭＰ  コンパレータ、ＬＲ  レベル番号レジスタ、ＬＣ１、ＬＣ２  ラッチ回路（記憶手段）、５１  デコーダ（電流シンク手段）、５４  制御手段。
【図１】
0003556465.tif 000002
【図２】
0003556465.tif 000003
【図３】
0003556465.tif 000004
【図４】
0003556465.tif 000005
【図５】
0003556465.tif 000006
【図６】
0003556465.tif 000007
【図７】
0003556465.tif 000008
【図８】
0003556465.tif 000009
【図９】
0003556465.tif 000010
【図１０】
0003556465.tif 000011
【図１１】
0003556465.tif 000012