(57)【要約】      （修正有）【課題】プライオリティエンコーダの設定をダイナミックに変化させることにより、割込動作効率の向上を図る。【解決手段】タイマ４は、一定時間αごとに比較演算機能部９に対して、トリガをかける。ＩＮＴＡ用カウンタ５は、ａ−１．割込（ＩＮＴＡ）の割込回数をカウントするもので、同様にＩＮＴＢ〜ＩＮＴＤ用カウンタ６〜８も同様の機能を有している。比較演算機能部９は、タイマ４からのトリガによりＩＮＴＡ〜ＩＮＴＤ用カウンタ５〜８のカウンタ値を読み込み、各割込要素の大小を比較し、この大小の比較結果によりプライオリティエンコーダ３のプライオリティ順位を、比較演算機能部９が変更する。例えば、最大値カウント順に設定するように考慮した場合は、カウント数の大小が、ＩＮＴＢ＞ＩＮＴＤ＞ＩＮＴＡ＞ＩＮＴＣであった場合、プライオリティエンコーダ３の設定例のように、エンコードされる。【選択図】図１
2009110128.tif 000002
【特許請求の範囲】
【請求項１】
各種割込要素の割込回数をカウントして、そのカウント値を、タイマからのトリガにより比較演算機能部に読み込んで、各種割込要素の大小を比較し、その比較結果によりプライオリティエンコーダのプライオリティ順位を変更し、ＣＰＵに通知することを特徴とする割込制御方法。
【請求項２】
各種割込要素に重み付け値を設定したレジスタを設け、その重み付け値と前記カウント値とを、タイマからのトリガにより比較演算機能部に読み込んで、カウント値と重み付け値とを乗算して各要素の大小を比較したことを特徴とする請求項１記載の割込制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、割込機能を搭載している制御装置に適用可能な割込制御方法に関するものである。
【背景技術】
【０００２】
図３は、従来の割込制御手順を述べるための説明図で、図３において、１は割込コンロール機能搭載のＣＰＵ、２は割込制御機能搭載のＰＬＤ／ＦＰＧＡ、３はＦＰＧＡ２など内部論理による割込コントロール機能の一部のプライオリティエンコーダである。
【０００３】
ＰＬＤ／ＦＰＧＡ２に入力される各信号名は、ａ．各種割込要素として、ａ−１．割込（ＩＮＴＡ），ａ−２．割込（ＩＮＴＢ），ａ−３．割込（ＩＮＴＣ），ａ−４．割込（ＩＮＴＤ）とＣＰＵ１へのｂ．外部割込信号である。
【０００４】
次に上記機能の概略について述べるに、図３では、割込制御をＰＬＤ／ＦＰＧＡ２にて実現しているが、その他の専用ＬＳＩ等でも同等の考え方が可能である。また、上記各種割込要素として述べる割込は、ＣＰＵ１からみると一般的に言われる外部割込要因を示している。ここでは、割込要素４種類を挙げて説明しているが、この要素の数量が変動しても同等に考えることが可能である。
【０００５】
図３において、まず、割込動作の大きな流れは、各種割込をＰＬＤ／ＦＰＧＡ２にて取り込んで、ＣＰＵ１へ通達する。次に、ＰＬＤ／ＦＰＧＡ２等の機能として割込を制御するときには、ａ．各種割込要素をプライオリティエンコーダ３にてエンコードする。
【０００６】
その後、ＣＰＵ１の割込コントロールへＰＬＤ／ＦＰＧＡ２が、ｂ．ＣＰＵへの外部割込信号として通達し、ＣＰＵ１の割込コントロールは、一般的に本説明の外部割込要因の他にも多種のＣＰＵ内部割込等を持っており、すべてを統括してコントロールしている。
【０００７】
なお、プライオリティエンコーダ３のプライオリティの設定は、設計時に装置等の仕様に合わせて固定で設定され、そのプライオリティエンコーダ３の設定例は、プライオリティの高位から順位１：ＩＮＴＡ，順位２：ＩＮＴＢ，順位３：ＩＮＴＣ，順位４：ＩＮＴＤとしている。
【特許文献１】特開平０６−３２４９９６号公報
【特許文献２】特開平０５−２５２７９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ＣＰＵ１は、一般的に、外部割込に対して各割込要素について、レベルを設定することが可能となっていることが多い。レベルの高い割込は、それより低い割込に対して、常に優先的に割込処理を実施することが可能な処理となっている。従って、意図的に各割込要素のレベルに差を付けて設定し、各種割込処理の動作効率を変動させる処理をしている。
【０００９】
上記における問題は、外部割込要因を同等のレベルの設定にして、各種割込を同等の動作効率で処理させたい場合に、問題が発生する。たとえＣＰＵ側の設定を同等レベルに設定しても、プライオリティエンコーダ３によるプライオリティの高低は避けることができない。
【００１０】
このため、プライオリティが高位にある割込要因が優先的に動作することとなり、高位の割込が頻繁に発生する場合は、それよりプライオリティが低位の割込要因の処理効率を下げることとなる問題が発生する。
【００１１】
本発明は、上記の事情に鑑みてなされたもので、定期的にプライオリティエンコーダの設定をダイナミック（動作中）に変化させたり、あるいは重み付けによる差別化をすることにより、割込動作効率の向上を図ることを可能とする割込制御方法を提供することを課題とする。
【課題を解決するための手段】
【００１２】
本発明は、上記の課題を達成するために、第１発明は、各種割込要素の割込回数をカウントして、そのカウント値を、タイマからのトリガにより比較演算機能部に読み込んで、各種割込要素の大小を比較し、その比較結果によりプライオリティエンコーダのプライオリティ順位を変更し、ＣＰＵに通知することを特徴とするものである。
【００１３】
第２発明は、各種割込要素に重み付け値を設定したレジスタを設け、その重み付け値と前記カウント値とを、タイマからのトリガにより比較演算機能部に読み込んで、カウント値と重み付け値とを乗算して各要素の大小を比較し、その比較結果によりプライオリティエンコーダのプライオリティ順位を変更してＣＰＵに通知することを特徴とするものである。
【発明の効果】
【００１４】
本発明によれば、定期的にプライオリティエンコーダの設定をダイナミックに変化させることにより、プライオリティの高低に関係なく同等での割り込み動作効率の向上を図ることができる。
【００１５】
また、各種割込要素のカウンタ値の大小比較だけでなく、重み付けによる差別化をすることで、割込動作効率を重み付けを持った状態で比較することが可能になり、各種割込要素の動作時間を重み付けに換算して表すことにより、さらに、割込動作効率の向上を図ることができる。
【発明を実施するための最良の形態】
【００１６】
以下本発明の実施の形態を図面に基づいて説明する。図１は、本発明の実施の第１形態を示す割込制御手順説明図で、図３と同一部分は同一符号を付して示す。
【００１７】
図１において、４はタイマで、このタイマ４は、一定時間αごとに比較演算機能部９に対して、トリガをかける。５〜８はＩＮＴＡ〜ＩＮＴＤ用カウンタで、ＩＮＴＡ用カウンタ５は、ａ−１．割込（ＩＮＴＡ）の割込回数をカウントするもので、同様にＩＮＴＢ〜ＩＮＴＤ用カウンタ６〜８も同様の機能を有している。
【００１８】
比較演算機能部９は、タイマ４からのトリガによりＩＮＴＡ〜ＩＮＴＤ用カウンタ５〜８のカウンタ値を読み込み、各割込要素の大小を比較し、この大小の比較結果によりプライオリティエンコーダ３のプライオリティ順位を、比較演算機能部９が変更して、図示しないＣＰＵに通知する。
【００１９】
例えば、最大値カウント順に設定するように考慮した場合は、カウント数の大小が、ＩＮＴＢ＞ＩＮＴＤ＞ＩＮＴＡ＞ＩＮＴＣであった場合、図１に示すプライオリティエンコーダ３の設定例のように、エンコードされて設定される。
【００２０】
なお、最小値カウント順に設定するように考慮した場合も同様にプライオリティエンコーダに設定することが可能である。
【００２１】
図２は、本発明の実施の第２形態を示す割込制御手順説明図で、実施の第１形態と同一部分には同一符号を付してその説明を省略する。
【００２２】
図２において、１０〜１３は各種割込要素重み付けレジスタで、これら割込の重み付けの設定は、ホストコンピュータ（例えば、ＣＰＵなどからのレジスタ制御）から行なう。重み付けされた各レジスタ１０〜１３の出力は、比較演算機能部９に供給される。
【００２３】
すると、比較演算機能部９は、タイマ４からのトリガによりカウンタ５〜８のカウンタ値と、重み付けレジスタ１０〜１３の値を読み込み、カウンタ値と重み付け値を掛け算し、各割込要素の大小を比較し、その大小の比較結果によりプライオリティエンコーダ３のプライオリティ順位を、比較演算機能部９が変更する。
【００２４】
なお、最大値順、最小値順に設定する方法は、第１形態と同様に行われる。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施の第１形態を示す割込制御手順説明図。
【図２】本発明の実施の第２形態を示す割込制御手順説明図。
【図３】従来の割込制御手順を述べるための説明図。
【符号の説明】
【００２６】
１…ＣＰＵ
２…ＰＬＤ／ＦＰＧＡ
３…プライオリティエンコーダ
４…タイマ
５〜８…ＩＮＴＡ〜ＩＮＴＤ用カウンタ
９…比較演算機能部
１０〜１３…ＩＮＴＡ〜ＩＮＴＤ用重み付けレジスタ
【図１】
2009110128.tif 000003
【図２】
2009110128.tif 000004
【図３】
2009110128.tif 000005