(57)【要約】【課題】メッセージ形式の割込み（ＭＳＩ：Message Signaled Interrupt）の特性を利用して、割込処理を柔軟に行う。【解決手段】ＰＣＩデバイス＃Ａ（３１０）がＭＳＩを送信すると（８０１）、メモリ２２０にＭＳＩの内容がライトされる（８０２）。ブリッジ装置１００は、ＰＣＩデバイス＃Ａ（３１０）からメモリ２２０へのメッセージのアドレス情報を監視しており、所定のアドレス領域に該当するＭＳＩを検出する（８０３）。このＭＳＩ検出を契機として、ブリッジ装置１００は、新たなＭＳＩを発行する（８０４）。新たなＭＳＩのアドレス情報に従ってＰＣＩデバイス＃Ｂ（３２０）は当該ＭＳＩを受信する（８０５）。これにより、プロセッサによる割込処理を経ることなくデバイスの起動処理が行われる（８０６）。【選択図】図８
2010117872.tif 000002
【特許請求の範囲】
【請求項１】
アドレス情報を有する第１の割込メッセージについて検出すべきアドレス領域を検出アドレス領域として保持する検出アドレス領域保持部と、
第２の割込メッセージのアドレス情報を発行割込情報として保持する発行割込情報保持部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することを検出する割込メッセージ検出部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することが検出された場合に前記発行割込情報を有する前記第２の割込メッセージを発行する割込発行部と
を具備する割込検出装置。
【請求項２】
前記発行割込情報保持部は、前記発行割込情報を複数保持し、
前記割込発行部は、前記複数の発行割込情報に従って前記第２の割込メッセージを複数発行する
請求項１記載の割込検出装置。
【請求項３】
アドレス情報およびデータ情報を有する第１の割込メッセージについて検出すべきアドレス領域を検出アドレス領域として保持する検出アドレス領域保持部と、
第２の割込メッセージのアドレス情報およびデータ情報を発行割込情報として保持する発行割込情報保持部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することを検出する割込メッセージ検出部と、
発行すべき割込の種類として前記第２の割込メッセージまたはプロセッサに対するプロセッサ割込信号の何れか一方を保持する割込種類保持部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することが検出された場合に、前記割込種類保持部に保持される種類が前記第２の割込メッセージであれば前記発行アドレス情報を有する前記第２の割込メッセージを発行し、前記割込種類保持部に保持される種類が前記プロセッサ割込信号であれば前記プロセッサに対して前記プロセッサ割込信号を発行する割込発行部と
を具備する割込検出装置。
【請求項４】
プロセッサおよびメモリを含むプロセッサシステムと、周辺機器と、前記プロセッサシステムと前記周辺機器との間を接続するブリッジ装置とを具備する情報処理システムであって、
前記ブリッジ装置は、
前記周辺機器からのアドレス情報を有する第１の割込メッセージについて検出すべきアドレス領域を検出アドレス領域として保持する検出アドレス領域保持部と、
第２の割込メッセージのアドレス情報を発行割込情報として保持する発行割込情報保持部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することを検出する割込メッセージ検出部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することが検出された場合に前記発行割込情報を有する前記第２の割込メッセージを前記プロセッサシステムまたは前記周辺機器に対して発行する割込発行部とを備える
情報処理システム。
【請求項５】
プロセッサおよびメモリを含む少なくとも１つのプロセッサシステムと、少なくとも１つの周辺機器と、前記プロセッサシステムと前記周辺機器との間に直列または並列に複数接続されるブリッジ装置とを具備する情報処理システムであって、
前記ブリッジ装置は、
前記周辺機器からのアドレス情報を有する第１の割込メッセージについて検出すべきアドレス領域を検出アドレス領域として保持する検出アドレス領域保持部と、
第２の割込メッセージのアドレス情報を発行割込情報として保持する発行割込情報保持部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することを検出する割込メッセージ検出部と、
前記第１の割込メッセージが前記検出アドレス領域に該当することが検出された場合に前記発行割込情報を有する前記第２の割込メッセージを前記プロセッサシステムまたは前記周辺機器に対して発行する割込発行部とを備える
情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、割込検出装置に関し、特にアドレス情報を有する割込メッセージを検出する割込検出装置、および、その割込検出装置を有する情報処理システムに関する。
【背景技術】
【０００２】
プロセッサ等において定常的な動作を行っている際、割込みを発生することにより定常的な動作を中断させて、別の処理に切り替えることができる。ＰＣＩ（Peripheral Component Interconnect）バスを用いて構成されるコンピュータシステムでは、ＰＣＩデバイスからホストプロセッサに対する割込通知方式として、ＭＳＩ（Message Signaled Interrupt）という方式がある。このＭＳＩは、パケットベースのトランザクション層におけるメッセージ形式の割込みであり、ダブルワードのライトトランザクションとして実現される。このＭＳＩを発行可能な ＰＣＩデバイスは、ホストプロセッサから書込みが可能なＭＳＩアドレスレジスタおよびＭＳＩデータレジスタを備える。ホストプロセッサは、あるＰＣＩデバイスからの割込みをＭＳＩとして受ける場合、そのＰＣＩデバイスのＭＳＩアドレスレジスタおよびＭＳＩデータレジスタに、ＭＳＩを要求するアドレスおよびデータを設定する。ＰＣＩデバイスがＭＳＩを発行する場合、そのＰＣＩデバイスは、ＭＳＩアドレスレジスタに設定されたアドレスに対して、ＭＳＩデータレジスタに設定された値を書き込むＰＣＩライトトランザクションを発行することにより、割込通知をする。ホストプロセッサは、指定したアドレスに対してデータの書込みがあったことを、割込コントローラ等により検知し、ＰＣＩデバイスから割込みが通知されたことを知り、通知されたＭＳＩに対する割込ハンドラ処理を実行する。
【０００３】
従来のシステムでは、このＭＳＩアドレスを割込検知領域になるように設定しておいて、この領域に該当するＭＳＩを、プロセッサへの割込信号に変換することによって、ＭＳＩによる割込処理を行っている（例えば、特許文献１参照。）。
【特許文献１】特開２００８−０９０３７５号公報（図５）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述の従来技術では、ＭＳＩを割込信号に変換することによってプロセッサへの割込みを行っている。しかしながら、割込信号によりプロセッサへの割込みを通知した場合、通知先がそのプロセッサに限られてしまい、柔軟性に欠けるという問題がある。また、アドレス情報およびデータ値を有するというＭＳＩの特性を十分に利用していないという問題がある。
【０００５】
本発明はこのような状況に鑑みてなされたものであり、メッセージ形式の割込みの特性を利用して、割込処理を柔軟に行うことを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上記課題を解決するためになされたものであり、その第１の側面は、アドレス情報を有する第１の割込メッセージについて検出すべきアドレス領域を検出アドレス領域として保持する検出アドレス領域保持部と、第２の割込メッセージのアドレス情報を発行割込情報として保持する発行割込情報保持部と、上記第１の割込メッセージが上記検出アドレス領域に該当することを検出する割込メッセージ検出部と、上記第１の割込メッセージが上記検出アドレス領域に該当することが検出された場合に上記発行割込情報を有する上記第２の割込メッセージを発行する割込発行部とを具備する割込検出装置またはその割込検出装置を含む情報処理システムである。これにより、検出アドレス領域に該当する第１の割込メッセージを検出したことを契機として、第２の割込メッセージを発行させるという作用をもたらす。
【０００７】
また、この第１の側面において、上記発行割込情報保持部は、上記発行割込情報を複数保持し、上記割込発行部は、上記複数の発行割込情報に従って上記第２の割込メッセージを複数発行してもよい。これにより、検出アドレス領域に該当する第１の割込メッセージを検出したことを契機として、第２の割込メッセージを複数発行させるという作用をもたらす。
【０００８】
また、本発明の第２の側面は、アドレス情報およびデータ情報を有する第１の割込メッセージについて検出すべきアドレス領域を検出アドレス領域として保持する検出アドレス領域保持部と、第２の割込メッセージのアドレス情報およびデータ情報を発行割込情報として保持する発行割込情報保持部と、上記第１の割込メッセージが上記検出アドレス領域に該当することを検出する割込メッセージ検出部と、発行すべき割込の種類として上記第２の割込メッセージまたはプロセッサに対するプロセッサ割込信号の何れか一方を保持する割込種類保持部と、上記第１の割込メッセージが上記検出アドレス領域に該当することが検出された場合に、上記割込種類保持部に保持される種類が上記第２の割込メッセージであれば上記発行アドレス情報を有する上記第２の割込メッセージを発行し、上記割込種類保持部に保持される種類が上記プロセッサ割込信号であれば上記プロセッサに対して上記プロセッサ割込信号を発行する割込発行部とを具備する割込検出装置またはその割込検出装置を含む情報処理システムである。これにより、検出アドレス領域に該当する第１の割込メッセージを検出したことを契機として、割込種類保持部に保持された割込の種類に従って、第２の割込メッセージまたはプロセッサに対するプロセッサ割込信号を発行させるという作用をもたらす。
【０００９】
また、本発明の第３の側面は、プロセッサおよびメモリを含む少なくとも１つのプロセッサシステムと、少なくとも１つの周辺機器と、上記プロセッサシステムと上記周辺機器との間に直列または並列に複数接続されるブリッジ装置とを具備する情報処理システムであって、上記ブリッジ装置は、上記周辺機器からのアドレス情報を有する第１の割込メッセージについて検出すべきアドレス領域を検出アドレス領域として保持する検出アドレス領域保持部と、第２の割込メッセージのアドレス情報を発行割込情報として保持する発行割込情報保持部と、上記第１の割込メッセージが上記検出アドレス領域に該当することを検出する割込メッセージ検出部と、上記第１の割込メッセージが上記検出アドレス領域に該当することが検出された場合に上記発行割込情報を有する上記第２の割込メッセージを上記プロセッサシステムまたは上記周辺機器に対して発行する割込発行部とを備える情報処理システムである。これにより、各ブリッジ装置において検出アドレス領域に該当する第１の割込メッセージを検出したことを契機として、第２の割込メッセージを連鎖的に発行させるという作用をもたらす。
【発明の効果】
【００１０】
本発明によれば、メッセージ形式の割込みの特性を利用して、割込処理を柔軟に行うことができるという優れた効果を奏し得る。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を実施するための最良の形態（以下、実施の形態と称する）について説明する。説明は以下の順序により行う。
１．第１の実施の形態（１台のブリッジ装置による情報処理システムの例）
２．第２の実施の形態（複数台のブリッジ装置による情報処理システムの例）
【００１２】
＜１．第１の実施の形態＞
［１台のブリッジ装置による情報処理システムの構成例］
図１は、本発明の第１の実施の形態における情報処理システムの一構成例を示す図である。この情報処理システムは、ブリッジ装置１００と、プロセッサシステム２００と、ＰＣＩ（Peripheral Component Interconnect）デバイス３１０乃至３３０とを備えている。
【００１３】
ブリッジ装置１００は、プロセッサシステム２００側のプロセッサバス２９０とＰＣＩデバイス３１０乃至３３０側のＰＣＩバス１９０との間に接続され、パケットフォーマットや電気特性の変換を行うことにより両者の橋渡しを行うものである。このブリッジ装置１００は、通過するメッセージ形式の割込みを検出することにより、新たなメッセージ形式の割込みまたはプロセッサ割込みを発生する。
【００１４】
プロセッサシステム２００は、プロセッサ２１０およびメモリ２２０を、プロセッサバス２９０を介して相互に接続したものである。プロセッサ２１０は、プロセッサシステム２００としての処理を行うものである。メモリ２２０は、プロセッサ２１０による処理に必要なプログラムやデータ等を保持するものである。
【００１５】
ＰＣＩデバイス３１０乃至３３０は、プロセッサシステム２００の周辺機器であり、各種入出力デバイスや、ＤＭＡ（Direct Memory Access）コントローラ等として実現される。ここでは、３台のＰＣＩデバイス３１０乃至３３０を想定したが、これに限定されるものではなく、ＰＣＩデバイスは任意の台数をＰＣＩバス１９０上に接続することができる。任意の台数のＰＣＩデバイスを総称してＰＣＩデバイス３００と称する。なお、ＰＣＩデバイス３００は、特許請求の範囲に記載の周辺機器の一例である。
【００１６】
図２は、本発明の第１の実施の形態におけるＰＣＩデバイス３００に含まれるメッセージ生成機構の一例を示す図である。ＰＣＩデバイス３００の各々は、ＰＣＩにおいて規定されるメッセージ形式の割込み（ＭＳＩ：Message Signaled Interrupt）を生成する。このＰＣＩデバイス３００の各々は、ＭＳＩレジスタ３１１と、メッセージ生成部３１７とを備えている。
【００１７】
ＭＳＩレジスタ３１１は、ＰＣＩデバイスからＭＳＩを発行するために必要な情報を保持するレジスタである。このＭＳＩレジスタ３１１は、ＰＣＩ規格ではＭＳＩケーパビリティ構造（MSI Capability Structure）と呼ばれる。このＭＳＩレジスタ３１１は、機能識別子３１２と、次ポインタ３１３と、メッセージ制御３１４と、メッセージアドレス３１５と、メッセージデータ３１６とを保持する。
【００１８】
機能識別子（Capability ID）３１２は、このメッセージの機能を示す識別子を保持するレジスタである。ＭＳＩの場合、機能識別子３１２には「０５ｈ」（ｈは直前の数字が１６進数であることを意味する。以下同様）が設定される。
【００１９】
次ポインタ（Next Pointer）３１３は、次の項目（item）へのポインタを保持するレジスタである。最終項目の場合、この次ポインタ３１３は、空きを示す「ＮＵＬＬ」が設定される。
【００２０】
メッセージ制御（Message Control）３１４は、システムソフトウェアに提供される制御情報を保持するレジスタである。このメッセージ制御３１４には、６４ビットアドレッシングの有無や、複数メッセージ（Multiple Message）に関する制御情報などが設定される。
【００２１】
メッセージアドレス（Message Address）３１５は、このＭＳＩのアドレス情報を保持するレジスタである。このメッセージアドレス３１５に保持されるアドレス情報としては、このＰＣＩデバイス３００から発行されるＭＳＩの宛先アドレスが設定される。なお、ここでは、３２ビットアドレッシングの場合を想定してメッセージアドレス３１５を３２ビット幅としているが、システムによっては６４ビットアドレッシングを行うことも可能である。その場合、このメッセージアドレス３１５も６４ビット幅が確保される。
【００２２】
メッセージデータ（Message Data）３１６は、このＭＳＩのデータ値を保持するレジスタである。このメッセージデータ３１６に保持されるデータ値としては、このＰＣＩデバイス３００のデバイス識別子などが設定される。
【００２３】
メッセージ生成部３１７は、メッセージアドレス３１５に保持されるアドレス情報とメッセージデータ３１６に保持されるデータ値とからＭＳＩのメッセージを生成するものである。
【００２４】
このＰＣＩデバイス３００により生成されたＭＳＩは、ＰＣＩバス１９０に出力され、また、必要に応じてブリッジ装置１００を介してプロセッサバス２９０に出力される。ブリッジ装置１００は、このＭＳＩのアドレス情報を監視し、予め定められたアドレス領域（以下、検出アドレス領域と称する。）に該当するＭＳＩを検出する。
【００２５】
図３は、ＰＣＩバスにおけるＭＳＩメッセージのイメージ例を示す図である。ＭＳＩメッセージは、例えばＰＣＩバスであれば、ＡＤ（Address and Data）と呼ばれる信号線によって、１サイクル当り３２ビットずつ伝達される。
【００２６】
図３（ａ）は３２ビットアドレッシングの場合の例である。まず、アドレスフェーズにおいてＭＳＩの３２ビットのメッセージアドレス７０２が転送される。そして、データフェーズにおいてＭＳＩの１６ビットのメッセージデータ７０３が転送される。
【００２７】
図３（ｂ）は６４ビットアドレッシングの場合の例である。まず、最初のアドレスフェーズにおいてＭＳＩのＭＳＢ側の３２ビット（第３２ビット目から第６３ビット目）のメッセージアドレス７０１が転送される。次に、２番目のアドレスフェーズにおいてＭＳＩのＬＳＢ側の３２ビット（第０ビット目から第３１ビット目）のメッセージアドレス７０２が転送される。そして、データフェーズにおいてＭＳＩの１６ビットのメッセージデータ７０３が転送される。
【００２８】
図４は、本発明の第１の実施の形態におけるブリッジ装置１００の一構成例を示す図である。このブリッジ装置１００は、ＭＳＩ検出部１１０と、ブリッジ制御レジスタ１２０と、ＭＳＩ検出領域取得部１３０と、ＭＳＩ発行デバイスヒント情報設定部１４０と、割込発行状態管理部１５０と、割込発行部１６０とを備えている。
【００２９】
ＭＳＩ検出部１１０は、ＰＣＩバス１９０からプロセッサバス２９０に転送されるＭＳＩのメッセージアドレス７０２（または７０１）を監視し、検出アドレス領域に該当するＭＳＩを検出するものである。なお、ＭＳＩ検出部１１０は、特許請求の範囲に記載の割込メッセージ検出部の一例である。
【００３０】
ブリッジ制御レジスタ１２０は、ブリッジ装置１００における制御に必要な情報を保持するレジスタである。このブリッジ制御レジスタ１２０には、ＭＳＩ検出部１１０において検出すべきアドレス領域や、割込発行部１６０から発行されるＭＳＩのアドレス情報やデータ値などが保持されるが、その詳細は次図を用いて後述する。
【００３１】
ＭＳＩ検出領域取得部１３０は、ＭＳＩ検出部１１０において検出すべきアドレス領域に関する情報をブリッジ制御レジスタ１２０から取得して、ＭＳＩ検出部１１０に供給するものである。
【００３２】
ＭＳＩ発行デバイスヒント情報設定部１４０は、ＭＳＩ検出部１１０において検出されたＭＳＩについて、そのＭＳＩを発行したＰＣＩデバイス３００を特定するためのヒント情報をブリッジ制御レジスタ１２０に設定するものである。このヒント情報としては、例えば、メッセージデータ７０３に保持されたデバイス識別子などが想定される。
【００３３】
割込発行状態管理部１５０は、プロセッサ２１０への割込みの発行状態を管理するものである。この割込発行状態管理部１５０は、検出アドレス領域に該当するＭＳＩが検出された際、発行すべき割込みの種類を特定し、その割込みがプロセッサ２１０への割込みであれば既にプロセッサ２１０に発行されている割込みの状態に応じた動作を行う。すなわち、割込発行状態管理部１５０は、プロセッサ２１０において割込処理中であれば、割込処理の完了通知を待つ。また、割込発行状態管理部１５０は、プロセッサ２１０において割込処理中でなければ、メモリ２２０に適切なＭＳＩがライトされていることを確認した上でプロセッサ２１０に対する割込みを割込発行部１６０に指示する。
【００３４】
割込発行部１６０は、割込発行状態管理部１５０からの指示に従って、ＭＳＩまたはプロセッサ割込みを発行するものである。ＭＳＩを発行する場合、そのＭＳＩのアドレス情報に応じて、ＰＣＩバス１９０またはプロセッサバス２９０にＭＳＩが転送される。プロセッサ割込みの場合、プロセッサバス２９０を経由して割込みを発行することを想定しているが、プロセッサバス２９０に対する割込み専用線を別途設けて割込みを発行するようにしてもよい。なお、割込発行部１６０は、特許請求の範囲に記載の割込発行部の一例である。
【００３５】
図５は、本発明の第１の実施の形態におけるブリッジ制御レジスタ１２０の一構成例を示す図である。このブリッジ制御レジスタ１２０には、ＭＳＩベースアドレスレジスタ１２１と、ＭＳＩリミットアドレスレジスタ１２２と、デバイスヒント情報レジスタ１２３と、割込種類選択レジスタ１２４と、割込処理中レジスタ１２５と、次ＭＳＩアドレスレジスタ１２６と、次ＭＳＩデータレジスタ１２７と、次ＭＳＩイネーブルレジスタ１２８とが含まれる。
【００３６】
ＭＳＩベースアドレスレジスタ１２１は、ＭＳＩ検出部１１０において検出すべきアドレス領域の先頭アドレスであるベースアドレスを保持するレジスタである。ＭＳＩリミットアドレスレジスタ１２２は、ＭＳＩ検出部１１０において検出すべきアドレス領域の末尾アドレスであるリミットアドレスを保持するレジスタである。すなわち、検出アドレス領域は、ＭＳＩベースアドレスレジスタ１２１およびＭＳＩリミットアドレスレジスタ１２２により規定されることになる。ＭＳＩ検出領域取得部１３０は、ＭＳＩベースアドレスレジスタ１２１およびＭＳＩリミットアドレスレジスタ１２２からそれぞれアドレス情報およびデータ値を取得して、ＭＳＩ検出部１１０に供給する。なお、ＭＳＩベースアドレスレジスタ１２１およびＭＳＩリミットアドレスレジスタ１２２は、特許請求の範囲に記載の検出アドレス領域保持部の一例である。
【００３７】
デバイスヒント情報レジスタ１２３は、ＭＳＩ検出部１１０において検出されたＭＳＩを発行したＰＣＩデバイス３００を特定するためのヒント情報を保持するレジスタである。このデバイスヒント情報レジスタ１２３は、ＭＳＩ発行デバイスヒント情報設定部１４０によって設定され、プロセッサ２１０などにより参照される。プロセッサ２１０は、受けた割込みのトリガとなるＭＳＩを発行したＰＣＩデバイス３００を特定する際、このヒント情報を利用することにより、探索の手間を軽減することができる。
【００３８】
割込種類選択レジスタ１２４は、割込発行部１６０から発行される割込みの種類として、ＭＳＩまたはプロセッサ割込みの何れかの選択を保持するレジスタである。割込発行状態管理部１５０および割込発行部１６０は、この割込種類選択レジスタ１２４に保持される内容に応じた動作を行う。すなわち、割込発行状態管理部１５０は、割込みがプロセッサ２１０への割込みであれば既にプロセッサ２１０に発行されている割込みが処理中であれば、割込処理の完了通知を待つ。また、この場合、プロセッサ２１０において割込処理中でなければ、メモリ２２０に適切なＭＳＩがライトされていることを確認した上でプロセッサ２１０に対する割込みを割込発行部１６０に指示する。また、割込発行部１６０は、割込種類選択レジスタ１２４に保持される内容に応じてＭＳＩまたはプロセッサ割込みを発行する。なお、割込種類選択レジスタ１２４は、特許請求の範囲に記載の割込種類保持部の一例である。
【００３９】
割込処理中レジスタ１２５は、プロセッサ２１０に対して割込みが発行されている最中か否かを保持するレジスタである。この割込処理中レジスタ１２５は、割込発行部１６０によってプロセッサ２１０への割込みが発行された際に「処理中である」旨が設定され、プロセッサ２１０から割込処理完了の通知がされた際に「処理中ではない」旨が設定される。この割込処理中レジスタ１２５は、割込発行状態管理部１５０により参照され、プロセッサ２１０への割込みの際に割込処理中であれば、割込処理の完了通知がされるまで待機される。
【００４０】
次ＭＳＩアドレスレジスタ１２６は、割込発行部１６０から発行されるＭＳＩのアドレス情報を保持するレジスタである。次ＭＳＩデータレジスタ１２７は、割込発行部１６０から発行されるＭＳＩのデータ値を保持するレジスタである。次ＭＳＩイネーブルレジスタ１２８は、割込発行部１６０からＭＳＩを発行することを許可するか否かを保持するレジスタである。割込発行部１６０は、これら次ＭＳＩアドレスレジスタ１２６、次ＭＳＩデータレジスタ１２７および次ＭＳＩイネーブルレジスタ１２８に従って、次のＭＳＩを発行する。なお、次ＭＳＩアドレスレジスタ１２６および次ＭＳＩデータレジスタ１２７は、特許請求の範囲に記載の発行割込情報保持部の一例である。
【００４１】
図６は、本発明の第１の実施の形態におけるＭＳＩ検出部１１０の一構成例を示す図である。このＭＳＩ検出部１１０は、監視アドレスレジスタ１１１と、比較器１１２および１１３と、論理積演算器１１４とを備えている。
【００４２】
監視アドレスレジスタ１１１は、ＰＣＩバス１９０からプロセッサバス２９０に転送されるＭＳＩのメッセージアドレス７０２（または７０１）を監視して、監視アドレスとして保持するレジスタである。この監視アドレスレジスタ１１１に保持された監視アドレスは、比較器１１２および１１３に供給される。
【００４３】
比較器１１２および１１３は、監視アドレスレジスタ１１１に保持された監視アドレスが検出アドレス領域に該当するか否を検出するものである。比較器１１２は、監視アドレスレジスタ１１１に保持された監視アドレスとＭＳＩベースアドレスレジスタ１２１から取得されたベースアドレスとを比較する。そして、監視アドレスがベースアドレス以上である場合に論理「真」を出力し、それ以外の場合には論理「偽」を出力する。比較器１１３は、監視アドレスレジスタ１１１に保持された監視アドレスとＭＳＩリミットアドレスレジスタ１２２から取得されたリミットアドレスとを比較する。そして、監視アドレスがリミットアドレス以下である場合に論理「真」を出力し、それ以外の場合には論理「偽」を出力する。
【００４４】
論理積演算器１１４は、比較器１１２および１１３の出力の論理積（ＡＮＤ）を生成するものである。したがって、監視アドレスレジスタ１１１に保持された監視アドレスがベースアドレス以上、かつ、リミットアドレス以下である場合に、検出アドレス領域に該当するＭＳＩが検出される。
【００４５】
図７は、本発明の第１の実施の形態における割込発行状態管理部１５０および割込発行部１６０の周辺の構成例を示す図である。
【００４６】
割込発行状態管理部１５０には、割込種類選択レジスタ１２４および割込処理中レジスタ１２５の内容が供給される。また、割込発行部１６０には、割込種類選択レジスタ１２４、次ＭＳＩアドレスレジスタ１２６、次ＭＳＩデータレジスタ１２７および次ＭＳＩイネーブルレジスタ１２８の内容が供給される。
【００４７】
割込発行状態管理部１５０は、ＭＳＩ検出部１１０において検出アドレス領域に該当するＭＳＩが検出されると、割込種類選択レジスタ１２４の内容を参照する。割込種類選択レジスタ１２４の内容がＭＳＩを示している場合、割込発行状態管理部１５０は割込発行部１６０にＭＳＩを発行するよう指示する。一方、割込種類選択レジスタ１２４の内容がプロセッサ割込みを示している場合、割込発行状態管理部１５０はさらに割込処理中レジスタ１２５の内容を参照する。その結果、プロセッサ２１０において割込処理中であれば、割込処理の完了通知を待つ。プロセッサ２１０において割込処理中でなければ、メモリ２２０に適切なＭＳＩがライトされていることを確認した上でプロセッサ２１０に対する割込みを割込発行部１６０に指示する。
【００４８】
割込発行部１６０は、割込発行状態管理部１５０からの指示により、割込種類選択レジスタ１２４の内容に応じてＭＳＩまたはプロセッサ割込みを発行する。ＭＳＩを発行する際、割込発行部１６０は、次ＭＳＩイネーブルレジスタ１２８を参照し、ＭＳＩの発行が可能であれば、次ＭＳＩアドレスレジスタ１２６および次ＭＳＩデータレジスタ１２７に従ってＭＳＩを発行する。一方、プロセッサ割込みを発行する際には、割込処理中レジスタ１２５を「処理中である」と設定した上で、プロセッサ２１０に割込みを発行する。
【００４９】
なお、割込発行部１６０から発行されるＭＳＩのアドレス情報がＭＳＩ検出部１１０のアドレス領域に該当する場合、ＭＳＩ検出部１１０においてさらにＭＳＩ検出対象となり、無限ループを生じるおそれがある。このようなループを回避するためには、ＭＳＩ検出部１１０の検出アドレス領域に該当しないように次ＭＳＩアドレスレジスタ１２６を設定するか、次ＭＳＩアドレスレジスタ１２６の内容を検出アドレス領域から除外することが考えられる。
【００５０】
［１台のブリッジ装置による情報処理システムの動作例］
図８は、本発明の第１の実施の形態における情報処理システムのＭＳＩの発行例を示す図である。ここでは、割込種類選択レジスタ１２４に「ＭＳＩ」が設定されているものとする。
【００５１】
ＰＣＩデバイス＃Ａ（３１０）がＭＳＩを送信すると（８０１）、ＰＣＩバス１９０およびプロセッサバス２９０を経由して、メモリ２２０にＭＳＩの内容がライトされる（８０２）。ブリッジ装置１００のＭＳＩ検出部１１０は、ＰＣＩバス１９０とプロセッサバス２９０との間のメッセージのアドレス情報を監視している。その結果、ブリッジ装置１００は、ＭＳＩベースアドレスレジスタ１２１およびＭＳＩリミットアドレスレジスタ１２２により指定されるアドレス領域に該当するＭＳＩを検出する（８０３）。
【００５２】
割込種類選択レジスタ１２４に「ＭＳＩ」が設定されているため、ブリッジ装置１００の割込発行状態管理部１５０は、割込発行部１６０に対してＭＳＩの発行を指示する。これにより、ブリッジ装置１００の割込発行部１６０は、ＭＳＩを発行する（８０４）。このとき、ＭＳＩのメッセージアドレス７０２（または７０１）には次ＭＳＩアドレスレジスタ１２６の内容が設定され、ＭＳＩのメッセージデータ７０３には次ＭＳＩデータレジスタ１２７の内容が設定される。
【００５３】
次ＭＳＩアドレスレジスタ１２６のアドレスがＰＣＩデバイス＃Ｂ（３２０）を示している場合、ＭＳＩは、ＰＣＩデバイス＃Ｂ（３２０）において受信される（８０５）。このＭＳＩを契機として、例えば、ＰＣＩデバイス＃Ｂ（３２０）の起動処理が行われる（８０６）。
【００５４】
図９は、本発明の第１の実施の形態における情報処理システムのプロセッサ割込みの発行例を示す図である。ここでは、割込種類選択レジスタ１２４に「プロセッサ割込み」が設定されているものとする。
【００５５】
ＰＣＩデバイス＃Ａ（３１０）がＭＳＩを送信すると（８１１）、ＰＣＩバス１９０およびプロセッサバス２９０を経由して、メモリ２２０にＭＳＩの内容がライトされる（８１２）。ブリッジ装置１００のＭＳＩ検出部１１０は、ＰＣＩバス１９０とプロセッサバス２９０との間のメッセージのアドレス情報を監視している。その結果、ブリッジ装置１００は、ＭＳＩベースアドレスレジスタ１２１およびＭＳＩリミットアドレスレジスタ１２２により指定されるアドレス領域に該当するＭＳＩを検出する（８１３）。
【００５６】
割込種類選択レジスタ１２４に「プロセッサ割込み」が設定されているため、ブリッジ装置１００の割込発行状態管理部１５０は、メモリ２２０からＭＳＩをリードして、ライト（８１２）が正常に完了していることを確認する（８１５）。これにより、プロセッサ割込みの処理の際に、メモリ２２０にＭＳＩが存在することを保証する。そして、ブリッジ装置１００の割込発行部１６０は、プロセッサ２１０に対してプロセッサ割込みを発行する（８１６）。その際、ブリッジ装置１００の割込処理中レジスタ１２５には、「処理中である」旨が設定される。
【００５７】
プロセッサ２１０は、プロセッサ割込みを検出すると（８１７）、メモリ２２０に記憶されているＭＳＩのデータ値を参照して割込処理を実行する（８１８）。そして、割込処理が完了すると、割込処理完了通知をブリッジ装置１００に通知する（８１９）。これにより、ブリッジ装置１００の割込処理中レジスタ１２５には、「処理中ではない」旨が設定される。
【００５８】
図１０は、本発明の第１の実施の形態による情報処理システムにおいて複数のＭＳＩが発生した場合の動作例を示す図である。ここでは、割込種類選択レジスタ１２４に「プロセッサ割込み」が設定されているものとする。
【００５９】
ここでは、ＰＣＩデバイス＃Ａ（３１０）は４つのＭＳＩ（Ａ乃至Ｄ）を送信するものと仮定する（８３１、８３７、８３８、８４１）。ブリッジ装置１００のＭＳＩ検出部１１０がＭＳＩ＿Ａを検出すると（８３２）、ブリッジ装置１００の割込発行状態管理部１５０は、メモリ２２０からＭＳＩをリードして（８３３）、ＭＳＩ＿Ａのライトが正常に完了していることを確認する（８３４）。そして、ブリッジ装置１００の割込発行部１６０は、プロセッサ２１０に対してプロセッサ割込みを発行する（８３５）。その際、ブリッジ装置１００の割込処理中レジスタ１２５には、「処理中である」旨が設定される。この間、後続のＭＳＩが送信されても、プロセッサ割込みの発行は行われず、ブリッジ装置１００の割込発行状態管理部１５０において、最新のＭＳＩに関する情報が保持される。
【００６０】
プロセッサ２１０は、ブリッジ装置１００からプロセッサ割込みの指示を受信すると、割込処理を実行する（８３６）。プロセッサ２１０は、各ＭＳＩの割込処理を完了するたびに、メモリ２２０に保持されるＭＳＩに関する情報をクリアしていく。ここでは、３つのＭＳＩ（Ａ乃至Ｃ）の割込処理が行われるものとし、その後、割込処理完了通知がブリッジ装置１００に通知されるものと仮定する。ブリッジ装置１００は、割込処理完了通知を受けた際、メモリ２２０からリードを行い（８４３）、最新のＭＳＩ（ＭＳＩ＿Ｄ）がメモリ２２０にライトされていることを確認する（８４４）。そして、ブリッジ装置１００の割込発行部１６０は、プロセッサ２１０に対してプロセッサ割込みを発行する（８４５）。プロセッサ２１０は、ブリッジ装置１００からプロセッサ割込みの指示を受信すると、割込処理を実行し（８４６）、完了すると割込処理完了通知をブリッジ装置１００に通知する。
【００６１】
このように、この動作例では、割込処理中レジスタ１２５が「処理中である」旨を示している間はプロセッサ割込みの発行をしないように制御することにより、無駄な割込処理の起動を抑止することができる。もっとも、このような制御が不要なシステムにおいては、ＭＳＩを検出するたびにプロセッサ割込みを発行するようにしても構わない。
【００６２】
［ＭＳＩ検出を契機として複数のＭＳＩを発行する場合の変形例］
図１１は、本発明の第１の実施の形態の変形例におけるブリッジ制御レジスタ１２０の一部の構成例を示す図である。この変形例では、ブリッジ制御レジスタ１２０の次ＭＳＩアドレスレジスタ１２６、次ＭＳＩデータレジスタ１２７および次ＭＳＩイネーブルレジスタ１２８を複数組、備えることを想定する。なお、これ以外のレジスタについては図５により説明したものと同様である。
【００６３】
ＭＳＩ検出部１１０において検出アドレス領域に該当するＭＳＩが検出されると、最初に最も番号の若い組、すなわち次ＭＳＩアドレスレジスタ１２６−１、次ＭＳＩデータレジスタ１２７−１および次ＭＳＩイネーブルレジスタ１２８−１が参照される。次ＭＳＩイネーブルレジスタ１２８−１がこのＭＳＩの発行を許可する旨を示していれば、次ＭＳＩアドレスレジスタ１２６−１をメッセージアドレス７０２（または７０１）に設定する。そして、次ＭＳＩデータレジスタ１２７−１をメッセージデータ７０３に設定し、ＭＳＩを発行する。次ＭＳＩイネーブルレジスタ１２８−１がこのＭＳＩの発行を許可しない旨を示していれば、このＭＳＩは発行されない。
【００６４】
続いて、２番目に番号の若い組、すなわち次ＭＳＩアドレスレジスタ１２６−２、次ＭＳＩデータレジスタ１２７−２および次ＭＳＩイネーブルレジスタ１２８−２が割込発行部１６０において参照される。次ＭＳＩイネーブルレジスタ１２８−２がこのＭＳＩの発行を許可する旨を示していれば、次ＭＳＩアドレスレジスタ１２６−２をメッセージアドレス７０２（または７０１）に設定する。そして、次ＭＳＩデータレジスタ１２７−２をメッセージデータ７０３に設定し、ＭＳＩを発行する。次ＭＳＩイネーブルレジスタ１２８−２がこのＭＳＩの発行を許可しない旨を示していれば、このＭＳＩは発行されない。
【００６５】
続いて、３番目に番号の若い組、すなわち次ＭＳＩアドレスレジスタ１２６−３、次ＭＳＩデータレジスタ１２７−３および次ＭＳＩイネーブルレジスタ１２８−３が割込発行部１６０において参照される。次ＭＳＩイネーブルレジスタ１２８−３がこのＭＳＩの発行を許可する旨を示していれば、次ＭＳＩアドレスレジスタ１２６−３をメッセージアドレス７０２（または７０１）に設定する。そして、次ＭＳＩデータレジスタ１２７−３をメッセージデータ７０３に設定し、ＭＳＩを発行する。次ＭＳＩイネーブルレジスタ１２８−３がこのＭＳＩの発行を許可しない旨を示していれば、このＭＳＩは発行されない。
【００６６】
このようにして、番号の若い組から順に各レジスタが参照され、複数のＭＳＩが順次発行されていく。ここでは３組のレジスタを用いた例について説明したが、レジスタの組数はこれに限定されるものではない。
【００６７】
図１２は、本発明の第１の実施の形態の変形例における情報処理システムによる複数のＭＳＩの発行例を示す図である。ここでは、割込種類選択レジスタ１２４に「ＭＳＩ」が設定されているものとする。
【００６８】
ＰＣＩデバイス＃Ａ（３１０）がＭＳＩ＿Ａを送信すると（８５１）、ＰＣＩバス１９０およびプロセッサバス２９０を経由して、メモリ２２０にＭＳＩ＿Ａの内容がライトされる。ブリッジ装置１００のＭＳＩ検出部１１０は、ＰＣＩバス１９０とプロセッサバス２９０との間のメッセージのアドレス情報を監視しており、検出アドレス領域に該当するＭＳＩ＿Ａを検出する（８５２）。
【００６９】
割込種類選択レジスタ１２４に「ＭＳＩ」が設定されているため、ブリッジ装置１００の割込発行状態管理部１５０は、割込発行部１６０に対してＭＳＩの発行を指示する。これにより、ブリッジ装置１００の割込発行部１６０は、ＭＳＩ＿Ｂを発行する（８５３）。このとき、ＭＳＩ＿Ｂのメッセージアドレス７０２（または７０１）には次ＭＳＩアドレスレジスタ１２６−１の内容が設定され、ＭＳＩ＿Ｂのメッセージデータ７０３には次ＭＳＩデータレジスタ１２７−１の内容が設定される。
【００７０】
次ＭＳＩアドレスレジスタ１２６−１のアドレスがＰＣＩデバイス＃Ｂ（３２０）を示している場合、ＭＳＩ＿Ｂは、ＰＣＩデバイス＃Ｂ（３２０）において受信される（８５４）。このＭＳＩ＿Ｂを契機として、例えば、ＰＣＩデバイス＃Ｂ（３２０）の起動処理が行われる（８５５）。また、ブリッジ装置１００の割込発行部１６０は、ＰＣＩデバイス＃Ｂ（３２０）内のレジスタ領域からデータをリードすることにより（８５６）、ＭＳＩ＿Ｂの発行が完了したことを確認する（８５７）。なお、バスの機能として、アクセスの順序が保証される場合には、このような発行の確認処理は不要である。
【００７１】
続いて、ブリッジ装置１００の割込発行部１６０は、ＭＳＩ＿Ｃを発行する（８５８）。このとき、ＭＳＩ＿Ｃのメッセージアドレス７０２（または７０１）には次ＭＳＩアドレスレジスタ１２６−２の内容が設定され、ＭＳＩ＿Ｃのメッセージデータ７０３には次ＭＳＩデータレジスタ１２７−２の内容が設定される。
【００７２】
次ＭＳＩアドレスレジスタ１２６−２のアドレスがＰＣＩデバイス＃Ｃ（３３０）を示している場合、ＭＳＩ＿Ｃは、ＰＣＩデバイス＃Ｃ（３３０）において受信される（８５９）。このＰＣＩデバイス＃Ｃ（３３０）は、ＤＭＡ転送制御装置であることを想定する。ＭＳＩ＿Ｃを契機として、例えば、ＰＣＩデバイス＃Ｃ（３３０）においてＤＭＡ転送の転送元アドレスが設定される（８６１）。また、ブリッジ装置１００の割込発行部１６０は、ＰＣＩデバイス＃Ｃ（３３０）内のレジスタ領域からデータをリードすることにより（８６２）、ＭＳＩ＿Ｃの発行が完了したことを確認する（８６３）。
【００７３】
続いて、ブリッジ装置１００の割込発行部１６０は、ＭＳＩ＿Ｄを発行する（８６４）。このとき、ＭＳＩ＿Ｄのメッセージアドレス７０２（または７０１）には次ＭＳＩアドレスレジスタ１２６−３の内容が設定され、ＭＳＩ＿Ｄのメッセージデータ７０３には次ＭＳＩデータレジスタ１２７−３の内容が設定される。
【００７４】
次ＭＳＩアドレスレジスタ１２６−３のアドレスがＰＣＩデバイス＃Ｃ（３３０）を示している場合、ＭＳＩ＿Ｄは、ＰＣＩデバイス＃Ｃ（３３０）において受信される（８６５）。このＭＳＩ＿Ｄを契機として、例えば、ＰＣＩデバイス＃Ｃ（３３０）においてＤＭＡ転送の転送先アドレスが設定される（８６６）。また、ブリッジ装置１００の割込発行部１６０は、ＰＣＩデバイス＃Ｃ（３３０）内のレジスタ領域からデータをリードすることにより（８６７）、ＭＳＩ＿Ｄの発行が完了したことを確認する（８６８）。
【００７５】
この図ではこれ以降の処理は省略しているが、ＤＭＡ転送の場合、さらに転送サイズの設定がされ、ＤＭＡ処理の開始が指示される。
【００７６】
この変形例により、ブリッジ装置１００から発行されるＭＳＩの数とその内容とが任意にプログラム可能となる。これは、ブリッジ装置１００から発行されるＭＳＩから複数のプロセッサへの割込みとする場合や、デバイスを起動するために複数のレジスタに設定が必要な場合などに特に有効である。
【００７７】
［本発明の適用例］
図１３は、本発明の第１の実施の形態の具体的な適用例を示す図である。この情報処理システムの例は、セル（Ｃｅｌｌ：Cell Broadband Engine）２０と、セルブリッジ１０と、ＰＣＩｅ（Peripheral Component Interconnect Express）デバイス３１乃至３４と、ＰＣＩｅスイッチ３５とを備えている。
【００７８】
セル２０は、マルチコアＣＰＵであり、１つのＰＰＥ（PowerPC Processor Element）２１と、複数のＳＰＥ（Synergistic Processor Element）２２と、メモリ２３と、ＩＩＣ（Internal Interrupt Controller）２４とを備えている。セル２０内の各構成要素は、プロセッサバス２９によって相互に接続される。ＰＰＥ２１は、汎用プロセッサコアであり、セル２０全体の制御を主目的とする。ＳＰＥ２２は、マルチプロセッサコアであり、算術演算を主目的とする。ＳＰＥ２２の各々は、ローカルストレージを備えている。メモリ２３は、セル２０のメインストレージである。ＩＩＣ２４は、内部割込みコントローラである。このセル２０は、図１により説明したプロセッサシステム２００に相当する。
【００７９】
セルブリッジ１０は、セル２０に対応したブリッジシステムであり、ブリッジ装置１１と、仮想ＰＣＩバス１９とを備える。ブリッジ装置１１は、セル２０のプロセッサバス２９と、仮想ＰＣＩバス１９との間に接続され、パケットフォーマットや電気特性の変換を行うことにより両者の橋渡しを行うものである。このセルブリッジ１０は、図１により説明したブリッジ装置１００に相当する。仮想ＰＣＩバス１９は、ＰＣＩｅデバイス３１および３２や、ＰＣＩｅスイッチ３５を接続するものである。
【００８０】
ＰＣＩｅデバイス３１乃至３４は、ＰＣＩｅインターフェースを有する周辺機器である。ＰＣＩｅデバイス３１乃至３４は、セルブリッジ１０の仮想ＰＣＩバス１９に接続されてもよく、また、ＰＣＩｅスイッチ３５を介して階層的に接続されてもよい。ＰＣＩｅスイッチ３５は、複数のＰＣＩｅデバイスのインターフェースを１つに絞り込むためのものである。
【００８１】
このような構成において、ブリッジ装置１１はＰＣＩｅデバイス３１乃至３４からセル２０に対して送信されるＭＳＩを監視する。そして、検出アドレス領域に該当するＭＳＩが検出されると、ブリッジ装置１１は新たなＭＳＩまたはプロセッサ割込みを発行する。セル２０において、ＳＰＥ２２はＭＳＩを直接受け付けることができるが、ＰＰＥ２１はＭＳＩを受け付ける機能を有していない。したがって、ＭＳＩがメモリ２３にライトされた後、ブリッジ装置１１からＩＩＣ２４に対して割込みパケットが発行される。プロセッサ割込みを受けたＩＩＣ２４は、ＰＰＥ２１に対して割込みを通知する。これにより、ＰＰＥ２１はメモリ２３にライトされたＭＳＩを確認する。
【００８２】
なお、セル２０のプロセッサバス２９では、ＭＳＩのメモリの書込みと割込みパケットの順序は保証される。したがって、この情報処理システムの例においては、ＭＳＩのライト確認は不要である。
【００８３】
このように、本発明の第１の実施の形態によれば、ＭＳＩ検出部１１０において検出アドレス領域に該当するＭＳＩを検出した際に、割込発行部１６０が新たなＭＳＩを発行することにより、割込処理を柔軟に行うことができる。すなわち、ＭＳＩを割込信号に変換せずに新たなＭＳＩとして通知することができるため、プロセッサによる割込処理を経ることなく高速にデバイスの起動等を行うことができる。また、変形例のように１つのＭＳＩ検出を契機として複数のＭＳＩを順次発行することができるため、任意の数および内容によりＭＳＩを発行することができる。
【００８４】
＜２．第２の実施の形態＞
［複数台のブリッジ装置による情報処理システムの構成例］
図１４は、本発明の第２の実施の形態における情報処理システムの一構成例を示す図である。この情報処理システムは、３つのブリッジ装置＃Ａ乃至＃Ｃ（１０１乃至１０３）と、２つのプロセッサシステム＃Ａおよび＃Ｂ（２０１および２０２）と、４つのＰＣＩデバイス３１０乃至３４０とを備えている。
【００８５】
ブリッジ装置＃Ａ（１０１）および＃Ｂ（１０２）は、ＰＣＩバス１９０とプロセッサシステム＃Ａ（２０１）との間に直列に接続されている。また、ブリッジ装置＃Ｃ（１０３）は、ＰＣＩバス１９０とプロセッサシステム＃Ｂ（２０２）との間に接続されている。プロセッサシステム＃Ａ（２０１）および＃Ｂ（２０２）とＰＣＩバス１９０との関係として見れば、ブリッジ装置＃Ａ（１０１）および＃Ｂ（１０２）とブリッジ装置＃Ｃ（１０３）とは互いに並列に接続されていることになる。
【００８６】
この構成例において、ブリッジ装置＃Ａ乃至＃Ｃ（１０１乃至１０３）は、他から発行されたＭＳＩを検出したことを契機として、新たなＭＳＩを発行する。これにより、連鎖的なＭＳＩの発行を可能とする。以下、この構成例における動作について説明する。
【００８７】
［複数台のブリッジ装置による情報処理システムの動作例］
図１５は、本発明の第２の実施の形態における情報処理システムのＭＳＩの発行例を示す図である。
【００８８】
ＰＣＩデバイス＃Ａ（３１０）がＭＳＩ＿Ａを送信すると（８７１）、プロセッサシステム＃Ａ（２０１）内のメモリにＭＳＩ＿Ａの内容がライトされる。ブリッジ装置＃Ａおよび＃Ｂ（１０１および１０２）のＭＳＩ検出部１１０は、ＰＣＩバス１９０とプロセッサシステム＃Ａ（２０１）との間のメッセージのアドレス情報を監視している。その結果、ブリッジ装置＃Ｂ（１０２）は、検出アドレス領域に該当するＭＳＩ＿Ａを検出する（８７２）。ブリッジ装置＃Ｂ（１０２）の割込種類選択レジスタ１２４に「ＭＳＩ」が設定されていると仮定すると、ブリッジ装置＃Ｂ（１０２）の割込発行状態管理部１５０は、割込発行部１６０に対してＭＳＩの発行を指示する。これにより、ブリッジ装置＃Ｂ（１０２）の割込発行部１６０は、プロセッサシステム＃Ｂ（２０２）にＭＳＩ＿Ｂを発行する（８７３）。
【００８９】
一方、ブリッジ装置＃Ａ（１０１）も、検出アドレス領域に該当するＭＳＩ＿Ａを検出する（８７４）。ブリッジ装置＃Ａ（１０１）の割込種類選択レジスタ１２４に「プロセッサ割込み」が設定されていると仮定すると、プロセッサシステム＃Ａ（２０１）内のメモリからＭＳＩ＿Ａをリードして、ライトが正常に完了していることを確認する（８７５）。そして、ブリッジ装置＃Ａ（１０１）の割込発行部１６０は、プロセッサシステム＃Ａ（２０１）に対してプロセッサ割込みを発行する（８７６）。
【００９０】
また、ブリッジ装置＃Ｃ（１０３）は、検出アドレス領域に該当するＭＳＩ＿Ｂを検出する（８８１）。ブリッジ装置＃Ｃ（１０３）の割込種類選択レジスタ１２４に「プロセッサ割込み」が設定されていると仮定すると、プロセッサシステム＃Ｂ（２０２）内のメモリからＭＳＩ＿Ｂをリードして、ライトが正常に完了していることを確認する（８８２）。そして、ブリッジ装置＃Ｃ（１０３）の割込発行部１６０は、プロセッサシステム＃Ｂ（２０２）に対してプロセッサ割込みを発行する（８８３）。これにより、プロセッサシステム＃Ｂ（２０２）は割込処理を実行する。
【００９１】
その後、ＰＣＩデバイス＃Ｃ（３３０）がＭＳＩ＿Ｃを発行し、ＰＣＩデバイス＃Ｄ（３４０）がＭＳＩ＿Ｄを発行した場合、プロセッサシステム＃Ｂ（２０２）には複数のＭＳＩが発行されることになる。この場合の処理は、既に図１０により説明したものと同様であるため、ここでは説明を省略する。
【００９２】
このように、本発明の第２の実施の形態によれば、複数のブリッジ装置＃Ａ乃至＃Ｃ（１０１乃至１０３）のそれぞれにおいてＭＳＩを検出して新たなＭＳＩを発行することにより、連鎖的にＭＳＩを生成することができる。
【００９３】
なお、本発明の実施の形態では、ブリッジ装置１００をプロセッサバス２９０とＰＣＩバス１９０との間に接続する例について説明したが、これに限定されず、ＰＣＩバスのツリー上の任意の位置に挿入してもよい。
【００９４】
また、本発明の実施の形態では、ＰＣＩバスを例に挙げて説明したが、これをＰＣＩバスとソフトウェア上の互換性を有するＰＣＩ−ＸやＰＣＩｅバスに置き換えて実装してもよい。また、ＰＣＩに限定することなく、任意のバスを用いてもよい。
【００９５】
また、本発明の実施の形態では、検出アドレス領域として、ＭＳＩベースアドレスレジスタ１２１およびＭＳＩリミットアドレスレジスタ１２２により規定される一連の領域を例に挙げて説明した。本発明はこれに限定されず、複数のアドレス領域を検出アドレス領域としてもよい。
【００９６】
なお、本発明の実施の形態は本発明を具現化するための一例を示したものであり、上述のように特許請求の範囲における発明特定事項とそれぞれ対応関係を有する。ただし、本発明は実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形を施すことができる。
【００９７】
また、本発明の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、ＣＤ（Compact Disc）、ＭＤ（MiniDisc）、ＤＶＤ（Digital Versatile Disk）、メモリカード、ブルーレイディスク（Blu-ray Disc（登録商標））等を用いることができる。
【図面の簡単な説明】
【００９８】
【図１】本発明の第１の実施の形態における情報処理システムの一構成例を示す図である。
【図２】本発明の第１の実施の形態におけるＰＣＩデバイス３００に含まれるメッセージ生成機構の一例を示す図である。
【図３】ＰＣＩバスにおけるＭＳＩメッセージのイメージ例を示す図である。
【図４】本発明の第１の実施の形態におけるブリッジ装置１００の一構成例を示す図である。
【図５】本発明の第１の実施の形態におけるブリッジ制御レジスタ１２０の一構成例を示す図である。
【図６】本発明の第１の実施の形態におけるＭＳＩ検出部１１０の一構成例を示す図である。
【図７】本発明の第１の実施の形態における割込発行状態管理部１５０および割込発行部１６０の周辺の構成例を示す図である。
【図８】本発明の第１の実施の形態における情報処理システムのＭＳＩの発行例を示す図である。
【図９】本発明の第１の実施の形態における情報処理システムのプロセッサ割込みの発行例を示す図である。
【図１０】本発明の第１の実施の形態による情報処理システムにおいて複数のＭＳＩが発生した場合の動作例を示す図である。
【図１１】本発明の第１の実施の形態の変形例におけるブリッジ制御レジスタ１２０の一部の構成例を示す図である。
【図１２】本発明の第１の実施の形態の変形例における情報処理システムによる複数のＭＳＩの発行例を示す図である。
【図１３】本発明の第１の実施の形態の具体的な適用例を示す図である。
【図１４】本発明の第２の実施の形態における情報処理システムの一構成例を示す図である。
【図１５】本発明の第２の実施の形態における情報処理システムのＭＳＩの発行例を示す図である。
【符号の説明】
【００９９】
１０  セルブリッジ
１１、１００、１０１、１０２、１０３  ブリッジ装置
２０  セル
３１〜３４  ＰＣＩｅデバイス
３５  ＰＣＩｅスイッチ
１１０  ＭＳＩ検出部
１１１  監視アドレスレジスタ
１１２、１１３  比較器
１１４  論理積演算器
１２０  ブリッジ制御レジスタ
１２１  ＭＳＩベースアドレスレジスタ
１２２  ＭＳＩリミットアドレスレジスタ
１２３  デバイスヒント情報レジスタ
１２４  割込種類選択レジスタ
１２５  割込処理中レジスタ
１２６  次ＭＳＩアドレスレジスタ
１２７  次ＭＳＩデータレジスタ
１２８  次ＭＳＩイネーブルレジスタ
１３０  ＭＳＩ検出領域取得部
１４０  ＭＳＩ発行デバイスヒント情報設定部
１５０  割込発行状態管理部
１６０  割込発行部
２００、２０１、２０２  プロセッサシステム
２１０  プロセッサ
２２０  メモリ
３００〜３４０  ＰＣＩデバイス
３１１  ＭＳＩレジスタ
３１７  メッセージ生成部
【図１】
2010117872.tif 000003
【図２】
2010117872.tif 000004
【図３】
2010117872.tif 000005
【図４】
2010117872.tif 000006
【図５】
2010117872.tif 000007
【図６】
2010117872.tif 000008
【図７】
2010117872.tif 000009
【図８】
2010117872.tif 000010
【図９】
2010117872.tif 000011
【図１０】
2010117872.tif 000012
【図１１】
2010117872.tif 000013
【図１２】
2010117872.tif 000014
【図１３】
2010117872.tif 000015
【図１４】
2010117872.tif 000016
【図１５】
2010117872.tif 000017