(57)【要約】【課題】ハードウェアの制約にとらわれず、効率よく割り込み制御を行うことのできるＰＣＩバスの割込制御装置を得る。【解決手段】発生頻度監視手段１１０は、割り込み要因毎の割り込み発生頻度を監視する。割り当て手段１２０は、割り込み要因毎の割り込み発生頻度に基づいて、割り込み要因の割り込み発生頻度が多いほど共有数が少なくなるように割り当てを行う。割り込み制御手段１３０は、割り当て手段１２０で設定した割り当てを次回の起動時に適用して各割り込み要因に対するメッセージ送出割り込みを割り当てる。【選択図】図１
2008176726.tif 000002
【特許請求の範囲】
【請求項１】
ＰＣＩバスへのメッセージ送出割り込みによる割り込み要因毎の割り込み発生頻度を監視する発生頻度監視手段と、
前記割り込み要因の数に対して前記メッセージ送出割り込みの数が少ない場合、前記割り込み要因毎の割り込み発生頻度に基づいて前記メッセージ送出割り込みにおけるそれぞれの割り込み要因の共有数を決定し、前記割り込み要因をいずれかの前記メッセージ送出割り込みに割り当てる割り当て手段と、
前記割り当て手段で決定された割り当てを次回の起動時に適用する割り込み制御手段とを備えたＰＣＩバスの割込制御装置。
【請求項２】
割り当て手段は、割り込み要因の割り込み発生頻度が多いほど共有数が少なくなるように割り当てを行うことを特徴とする請求項１記載のＰＣＩバスの割込制御装置。
【請求項３】
割り当て手段は、割り込み発生頻度の最も低い２要素を結合させるハフマン符号化を行いて共有数を決定することを特徴とする請求項２記載のＰＣＩバスの割込制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスの割り込み制御を行うＰＣＩバスの割込制御装置に関するものである。
【背景技術】
【０００２】
ＰＣＩバスの規格上では、割り込み制御のために、割り込み信号としてＩＮＴｘ＃(ｘ：Ａ，Ｂ，Ｃ，Ｄ)が用意されているが、この４本の信号のみではバス上で起こる全ての割り込みに対して独立に割り当てることは出来ないことが多い。限られた割り込み信号で、効率よく割り込みを制御することが重要である。このような問題に対して、例えば特許文献１では、プロセッサを持たないペリフェラルスロットからでもドアベル割り込みを発生させる割り込み制御装置を実現している。
【０００３】
【特許文献１】特開２００５−３１６５８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来のＰＣＩバスの割込制御装置では、プロセッサを持たないペリフェラルスロットから他のペリフェラルスロットに対してドアベル割り込みを発生させている。しかしながら、このような手法では、ＰＣＩターゲットブリッジ内に他のペリフェラルスロットのアドレス等を格納するレジスタを必要とする等、ハードウェアの制約があるという問題点があった。
【０００５】
この発明は上記のような課題を解決するためになされたもので、ハードウェアの制約にとらわれず、効率よく割り込み制御を行うことのできるＰＣＩバスの割込制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係るＰＣＩバスの割込制御装置は、割り込み要因毎の割り込み発生頻度を監視する発生頻度監視手段と、割り込み要因毎の割り込み発生頻度に基づいてメッセージ送出割り込みにおけるそれぞれの割り込み要因の共有数を決定し、割り込み要因をいずれかのメッセージ送出割り込みに割り当てる割り当て手段と、この割り当てを次回の起動時に適用する割り込み制御手段とを備えたものである。
【発明の効果】
【０００７】
この発明のＰＣＩバスの割込制御装置は、割り込み要因毎の割り込み発生頻度に基づいてメッセージ送出割り込みにおけるそれぞれの割り込み要因の共有数を決定し、割り込み要因をいずれかのメッセージ送出割り込みに割り当て、これを次回の起動時に適用するようにしたので、ハードウェアの制約にとらわれず、効率よく割り込み制御を行うことができる。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
ＰＣＩバスの割り込み制御には、ＩＮＴ＃の割り込み制御制御の他に、メッセージ送出割り込み(ＭＳＩ)が用意されている。これは、ＰＣＩのメモリライトサイクルを使用して、割り込みコントローラに割り込みメッセージを書くことで割り込みを通知するものである。但し、一般的なシステムでは「システムの全割り込み要因数」＞「用意された割り込みメッセージ数」であるため、複数の割り込み要因で一つの割り込みメッセージを共有することが必要になる。
そこで、本発明では、各割り込み要因の優先度を制御アプリケーションによって調整し、効率のよいメッセージ送出割り込みの通知メッセージの割り当てを実現するものである。
【０００９】
図１は、この発明の実施の形態１によるＰＣＩバスの割込制御装置を示す構成図である。
図において、ＰＣＩバスの割込制御装置は、割り込み制御部１００、ＰＣＩバス２００、ペリフェラルカードＡ（３０１）、ペリフェラルカードＢ（３０２）、ペリフェラルカードＣ（３０３）を備えている。割り込み制御部１００は、ＰＣＩバス２００の割り込み制御を行う機能部であり、発生頻度監視手段１１０、割り当て手段１２０、割り込み制御手段１３０を備えている。発生頻度監視手段１１０は、カウンタ１１１を備え、メッセージ送出割り込みにおける割り込み要因毎の割り込み発生頻度を監視する手段である。割り当て手段１２０は、割り込み要因の数に対してメッセージ送出割り込みの数が少ない場合、割り込み要因毎の割り込み発生頻度に基づいて割り込み要因の共有数を決定し、割り込み要因の割り込み発生頻度が多いほど共有数が少なくなるよう、いずれかのメッセージ送出割り込みに割り当てる手段である。ここで、本実施の形態では、割り込みメッセージを１２個、割り込み要因数を１８個とし、１８個の割り込み要因を１２個の割り込みメッセージに振り分ける処理を行うものとする。また、割り当て手段１２０は、割り込み発生頻度の最も低い２要素を結合させるハフマン符号化を行いて共有数を決定するよう構成されている。割り込み制御手段１３０は、割り当て手段１２０で決定された割り込み要因毎の共有数を示す割り込み要因テーブル１３１を有し、この割り込み要因テーブル１３１に設定されている割り当てを次回の起動時に適用して割り込み制御を行う手段である。
【００１０】
尚、割り込み制御部１００は、それぞれの機能に対応したソフトウェアと、これを実行するためのＣＰＵやメモリといったハードウェアから実現されている。
【００１１】
ペリフェラルカード（Ａ）３０１〜（Ｃ）３０３は、それぞれＰＣＩバス２００に接続されるペリフェラルカードであり、本実施の形態では、各ペリフェラルカードからの割り込み要因数は６個とし、合計１８個の割り込み要因であるとする。ここで、各ペリフェラルカードにはメッセージ送出割り込みの割り当てが４個ずつとし、ペリフェラルカード（Ａ）３０１は割り込み番号が１〜４、ペリフェラルカード（Ｂ）３０２は割り込み番号が５〜８、ペリフェラルカード（Ｃ）３０３は割り込み番号が９〜１２であるとする。
【００１２】
次に、実施の形態１のＰＣＩバスの割込制御装置の動作について説明する。
先ず、初回運用時のみ、それぞれのペリフェラルカード（Ａ）３０１〜（Ｃ）３０３に対して均等に割り込みメッセージを割り当てる。その後、割り込み制御部１００の発生頻度監視手段１１０は、カウンタ１１１によって予め決められた割り込み要因毎に割り込み発生回数をカウントする。尚、カウンタ１１１のメモリは有限であるため、発生頻度監視手段１１０はカウンタ値の上限を予め設定しておき、上限に達し次第カウントを停止する。図２は、ペリフェラルカード（Ａ）３０１〜（Ｃ）３０３の割り込み回数をカウントした結果の一例を示す説明図である。
【００１３】
割り当て手段１２０は、発生頻度監視手段１１０のカウント結果に基づいて、割り込み要因毎の割り込みメッセージへの割り当てを行う。
図３は、割り当て手段１２０の動作を示すフローチャートである。
先ず、図２に示すようなそれぞれの割り込み要因を割り込み回数でソートする（ステップＳＴ１）。図４は、ソート結果を示す説明図である。次に、割り当て手段１２０は、「システムの全割り込み要因数」＞「用意された割り込みメッセージ数」となっているかを判定する（ステップＳＴ２）。尚、図３において、Ｎは全割り込み要因数を示している。このステップＳＴ２において、「システムの全割り込み要因数」＞「用意された割り込みメッセージ数」であった場合は、最下位の２要素を結合し、割り込み回数を足し合わせる（ステップＳＴ３）。一方「システムの全割り込み要因数」≦「用意された割り込みメッセージ数」の場合は、処理を終了する（ステップＳＴ５）。
【００１４】
次に、割り当て手段１２０は、結合後の割り込み回数の配列で再度ソートし（ステップＳＴ４）、ステップＳＴ２に戻る。このようなハフマン符号化を行うことにより、割り込み回数が多い割り込み要因ほど共有数が少なくなるような結果が得られる。
図５は、図３のリスト操作を１回行った結果を示す説明図である。
即ち、これは、図４における最下部の２要素（Ｂ６，Ｃ６）の要素を足し合わせ、新要素（Ｂ６＋Ｃ６）を作成する。そして、新要素の要素数を用いて、再度、ソートを行うことにより得られた結果である。
【００１５】
このようなリスト操作を、ステップＳＴ２において、配列長≦Ｎとなるまで繰り返し行う。図６は、ステップＳＴ２において「システムの全割り込み要因数」＝「用意された割り込みメッセージ数」となるまでリスト操作を行った結果である。このような割り当てが終了する（ステップＳＴ５）と、割り当て結果は割り込み制御手段１３０に対して出力され、割り込み要因テーブル１３１として格納される。このようにして得られた結果により、割り込みの発生数が多いものほど、割り込み要因メッセージの共有数を少なく設定することを実現している。
【００１６】
割り込み制御手段１３０は、次回運用時、割り込み要因テーブル１３１を元に、各割り込み要因に対して、割り込みメッセージを割り当てる。割り込み要因メッセージの共有数が少ないほど、その割り込み要因の探索に要する時間は短くなり、割り込みメッセージと割り込み要因が１対１の場合は、割り込みメッセージを受信すると即座に割り込み要因を特定することができる。
よって、割り込みの発生数が多い（頻度の高い）要因に対して、割り込み要因メッセージの共有数を少なく設定することにより、割り込み発生後の割り込み要因の探索の所要時間を軽減することができる。
【００１７】
尚、上記実施の形態では、割り込み要因の数を１８個、メッセージ送出割り込みの数を１２個とした場合について説明したが、これらの値に限定されるものではなく、「システムの全割り込み要因数」＞「用意された割り込みメッセージ数」であるシステムであれば同様に適用可能である。
【００１８】
以上のように、実施の形態１のＰＣＩバスの割込制御装置によれば、ＰＣＩバスへのメッセージ送出割り込みによる割り込み要因毎の割り込み発生頻度を監視する発生頻度監視手段と、割り込み要因の数に対してメッセージ送出割り込みの数が少ない場合、割り込み要因毎の割り込み発生頻度に基づいてメッセージ送出割り込みにおけるそれぞれの割り込み要因の共有数を決定し、割り込み要因をいずれかのメッセージ送出割り込みに割り当てる割り当て手段と、割り当て手段で決定された割り当てを次回の起動時に適用する割り込み制御手段とを備えたので、ハードウェアの制約にとらわれず、効率よく割り込み制御を行うことができる。
【００１９】
また、実施の形態１のＰＣＩバスの割込制御装置によれば、割り当て手段は、割り込み要因の割り込み発生頻度が多いほど共有数が少なくなるように割り当てを行うようにしたので、割り込み発生後の割り込み要因の探索の所要時間を軽減することができる。
【００２０】
また、実施の形態１のＰＣＩバスの割込制御装置によれば、割り当て手段は、割り込み発生頻度の最も低い２要素を結合させるハフマン符号化を行いて共有数を決定するようにしたので、割り込み要因の割り込み発生頻度が多いほど共有数が少なくなる割り当てを効率よく行うことができる。
【図面の簡単な説明】
【００２１】
【図１】この発明の実施の形態１によるＰＣＩバスの割込制御装置を示す構成図である。
【図２】この発明の実施の形態１によるＰＣＩバスの割込制御装置の割り込み回数をカウントした結果の一例を示す説明図である。
【図３】この発明の実施の形態１によるＰＣＩバスの割込制御装置の動作を示すフローチャートである。
【図４】この発明の実施の形態１によるＰＣＩバスの割込制御装置のソート結果を示す説明図である。
【図５】この発明の実施の形態１によるＰＣＩバスの割込制御装置のリスト操作を１回行った結果を示す説明図である。
【図６】この発明の実施の形態１によるＰＣＩバスの割込制御装置の最終的な割り当て結果を示す説明図である。
【符号の説明】
【００２２】
１００  割り込み制御部、１１０  発生頻度監視手段、１２０  割り当て手段、１３０  割り込み制御手段、３０１  ペリフェラルカード（Ａ）、３０２  ペリフェラルカード（Ｂ）、３０２  ペリフェラルカード（Ｃ）。
【図１】
2008176726.tif 000003
【図２】
2008176726.tif 000004
【図３】
2008176726.tif 000005
【図４】
2008176726.tif 000006
【図５】
2008176726.tif 000007
【図６】
2008176726.tif 000008