(57)【特許請求の範囲】
【請求項１】
複数のルートコンプレックスに対して接続可能なマルチルートＰＣＩエクスプレススイッチにおいて、
スイッチの接続先のトポロジ、物理的な接続状況に基づいてＰＣＩツリーの設定に必要な情報を格納する設定レジスタと、
前記設定レジスタの状態によらず、仮想的なＰＣＩツリーを構築するために必要な情報を格納する仮想スイッチブリッジ制御部と、
データ転送時に必要なアドレス情報が格納された実コンフィグレーションレジスタと、
を備え、
前記仮想スイッチブリッジ制御部は、ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタと、
前記設定レジスタの設定に基づいて、ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタと、前記実コンフィグレーションレジスタとの同期制御を行う仮想レジスタ同期制御部と、
を備えたマルチルートＰＣＩエクスプレススイッチ。
【請求項２】
前記複数のルートコンプレックスに対して接続可能なマルチルート対応ＰＣＩ-ＰＣＩブリッジと、
前記複数のルートコンプレックスに対応して設けられ、前記マルチルート対応ＰＣＩ−ＰＣＩブリッジを含む複数のブリッジ間の接続を行う仮想ＰＣＩエクスプレススイッチと、
をさらに備えた請求項１記載のマルチルートＰＣＩエクスプレススイッチ。
【請求項３】
前記ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタは、システムを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて設定される請求項１又は２記載のマルチルートＰＣＩエクスプレススイッチ。
【請求項４】
前記仮想スイッチブリッジ制御部が、前記マルチルートＰＣＩエクスプレスの設定状態に応じて、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーと整合させるためのホットプラグイベントを発行するホットプラグイベント発行部をさらに備えた請求項１乃至３いずれか１項記載のマルチルートＰＣＩエクスプレススイッチ。
【請求項５】
複数のルートコンプレックスに接続されるマルチルートＰＣＩエクスプレススイッチの起動方法であって、
システム起動時に、システムを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーを構築するために必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップと、
前記設定された情報に基づいて、ＢＩＯＳシステムを起動し、仮想的なＰＣＩツリーを構築するステップと、
前記接続先のトポロジを確認して接続状況を確認した後、前記仮想的なＰＣＩツリーを
実構成のＰＣＩツリーに置き換えるステップと、
を有し、
ホストコンピュータのマルチルートＰＣＩマネージャプログラムが、前記ホストコンピュータが接続されるルートコンプレックスに対してスイッチの利用許可を与え、
前記利用許可に応答して、前記利用許可を受けたルートコンプレックスがＢＩＯＳシステムを起動し、仮想的なＰＣＩツリーを構築し、
前記マルチルートＰＣＩマネージャプログラムは、前記ルートコンプレックスの処理と並行して前記接続先のトポロジを確認して物理的な接続状況を把握し、Ｉ／Ｏが接続されているか否か確認し、接続されている場合はＩ／Ｏの種類を把握する処理を行うマルチルートＰＣＩエクスプレススイッチの起動方法。
【請求項６】
前記マルチルートＰＣＩエクスプレススイッチが、前記仮想的なＰＣＩツリーの情報を保持し、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーに置き換えさせる仮想スイッチブリッジ制御部を備えている請求項５記載のマルチルートＰＣＩエクスプレススイッチの起動方法。
【請求項７】
ホストコンピュータのマルチルートＰＣＩマネージャプログラムが、前記システム起動時に、システムを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーを構築するために必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定する処理を行い、
前記ルートコンプレックスが、ＢＩＯＳシステムを起動し、前記仮想的なＰＣＩツリーを構築し、
前記マルチルートＰＣＩマネージャプログラムが、前記接続先のトポロジを確認して接続状況を確認した後、実構成のＰＣＩツリーを構築するために必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定し、
前記ルートコンプレックスが、前記実構成のＰＣＩツリーを構築するために設定された情報に基づいて、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーに置き換える
請求項５又は６記載のマルチルートＰＣＩエクスプレススイッチの起動方法。
【請求項８】
前記マルチルートＰＣＩマネージャプログラムは、前記マルチルートＰＣＩエクスプレススイッチ内のレジスタを参照することにより、前記システムを構成するスイッチの数、及び、スイッチのリンク数を把握して仮想的なＰＣＩツリーを構築するために必要な情報を設定し、前記ホストコンピュータが接続されるルートコンプレックスに対してＶＨ（Virtual Hierarchy）番号を固定で割り当てて、前記ホストコンピュータが接続されるルートコンプレックスに対してスイッチの利用許可を与える請求項７記載のマルチルートＰＣＩエクスプレススイッチの起動方法。
【請求項９】
前記マルチルートＰＣＩマネージャプログラムは、前記物理的な接続状況の把握、Ｉ／Ｏの種別の把握に、
前記マルチルートＰＣＩエクスプレススイッチが、その設定に応答してホットプラグイベントを発行して、前記ルートコンプレックスに前記仮想的なＰＣＩツリーと実構成のＰＣＩツリーとの整合を行わせる請求項８記載のマルチルートＰＣＩエクスプレススイッチの起動方法。
【請求項１０】
複数のルートコンプレックスに接続されるマルチルートＰＣＩエクスプレススイッチをコンピュータに管理させるマルチルートＰＣＩマネージャプログラムであって、
システム起動時に、前記マルチルートＰＣＩエクスプレススイッチを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーの構築に必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップと、
前記設定した情報に基づいて、前記ルートコンプレックスに前記マルチルートＰＣＩエクスプレススイッチの使用許可を与えるステップと、
前記マルチルートＰＣＩエクスプレススイッチの接続先のトポロジ、物理的な接続状況を確認して実構成のＰＣＩツリー構築に必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップと、
前記ホストコンピュータが接続されるルートコンプレックスに対してスイッチの利用許可を与えるステップと、
前記利用許可に応答して、前記利用許可を受けたルートコンプレックスがＢＩＯＳシステムを起動し、仮想的なＰＣＩツリーを構築するステップと、
前記ルートコンプレックスの処理と並行して前記接続先のトポロジを確認して物理的な接続状況を把握し、Ｉ／Ｏが接続されているか否か確認し、接続されている場合はＩ／Ｏの種類を把握する処理を行うステップと、を有するマルチルートＰＣＩマネージャプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願についての記載）
本発明は、日本国特許出願：特願２００８−２６６４４４号（２００８年１０月１５日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。【０００２】
本発明は、コンピュータ並びにネットワーク装置で使われるコンピューティングデバイス並びにネットワーキングデバイスのＰＣＩエクスプレスインターフェースを拡張するＰＣＩエクスプレスプレススイッチに関する。特に複数のコンピュータを接続するＭＲＡ（Multi-Root Aware）ＰＣＩエクスプレススイッチ及びその起動方法、そのマルチルートＰＣＩマネージャプログラムに関する。
【背景技術】
【０００３】
中央演算装置（ＣＰＵ）、ハードディスク、グラフィックコントローラ等のコンピューティングデバイス、フォワーディングエンジン、ネットワークコントローラ等のネットワーキングデバイス間を接続するバス規格として、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）が広く普及している。このＰＣＩの次世代規格として、ＰＣＩのパラレルバスをシリアル化し、パケット方式で通信を行うＰＣＩエクスプレスが標準化されている。【０００４】
このＰＣＩエクスプレススイッチで構成するシステム上に複数ＣＰＵを接続する方法が、非特許文献１に記載されている。図１に非特許文献１で実現できるシステム構成図を、図２と図３に、非特許文献１で提案されているＭＲＡ（Multi-Root Aware）  ＰＣＩエクスプレススイッチの構成を示す。ＭＲＡ  ＰＣＩエクスプレススイッチを利用したシステムでは、図１に示す、スイッチに接続されるいずれかのＣＰＵ上にスイッチの構成状態を管理するマルチルートＰＣＩマネジャーソフトウェア  ＭＲ−ＰＣＩＭ  ５２が必要となる。【０００５】
また、複数のルートコンプレックスからのアクセスに対応するＩ／Ｏデバイス  ＭＲエンドポイント５０５、ＭＲエンドポイント５０６が接続可能であり、マルチルートＰＣＩマネージャからＭＲＡ  ＰＣＩエクスプレススイッチに設定を行う事で、複数のルートコンプレックスの接続並びに、複数のルートコンプレックスからＭＲエンドポイントデバイスへアクセスが可能になる。以下にＭＲＡ  ＰＣＩエクスプレススイッチの構成並びにシステム動作概要について示す。図１ではＭＲＡ  ＰＣＩエクスプレススイッチ２個を用いたシステム構成を示している。図２と図３にＭＲＡ  ＰＣＩエクスプレススイッチ５１１、５１２の内部構成を示す。【０００６】
ＭＲＡ  ＰＣＩエクスプレススイッチ５１１は、複数のルートコンプレックス並びに、ＭＲエンドポイントを収容するために、従来のＰＣＩエクスプレススイッチとは異なるＰＣＩ−ＰＣＩブリッジ５１１１、５１１２、５１２２、５１１３、５１１４、５１１５、ブリッジ間のスイッチ処理を行う仮想ＰＣＩエクスプレススイッチ５１１６、５１１７、５１１８、５１１９、またＭＲ−ＰＣＩＭ５２から設定制御されるＭＲＡコントローラ論理５１２０並びにその設定情報が格納される設定レジスタ５１２１で構成される。【０００７】
接続ポート数を拡張するためのもう一つ、ＭＲＡ  ＰＣＩエクスプレススイッチ５１２も同様に、従来のＰＣＩエクスプレススイッチとは異なるＰＣＩ−ＰＣＩブリッジ５１２３、５１２４、５１３３、ブリッジ間のスイッチ処理を行う仮想ＰＣＩエクスプレススイッチ５１２６、５１２７、５１２９、またＭＲ−ＰＣＩＭ５２から設定制御されるＭＲＡコントローラ論理５１２０並びにその設定情報が格納される設定レジスタ５１３１で構成される。【０００８】
ＭＲＡ  ＰＣＩエクスプレススイッチでは、複数のルートコンプレックスに対して、各々に従来のＰＣＩエクスプレス同様のツリーを構成するために、ルートコンプレックス単位に、どの仮想ＰＣＩエクスプレススイッチを利用するか、ＰＣＩ−ＰＣＩブリッジを複数で使うためのＶＨ（Virtual Hierarchy）番号の割当てを行う必要がある。仮想ＰＣＩエクスプレススイッチ毎にスイッチ処理が行われるため、他の仮想ＰＣＩエクスプレススイッチと干渉することはない。【０００９】
また、ＭＲ対応のＰＣＩ−ＰＣＩブリッジでは、ＶＨ番号を割振り、１つのリンクに複数のＰＣＩ−ＰＣＩブリッジが接続されている事を考慮する。異なるＶＨ番号では、クレジット制御やコンフィグレーション情報の分離等が行われ、１つポート上での複数のＰＣＩ−ＰＣＩブリッジ利用番号を示す。【００１０】
これらの設定は、ＭＲ−ＰＣＩＭが、ＭＲＡコントローラ論理の制御情報である設定レジスタに対して行うことで、割当が行われる。図４と図５にＭＲＡ  ＰＣＩエクスプレススイッチ５１１、５１２の設定レジスタ５１２１、５１３１の構成例を示す。この構成では、ＭＲ−ＰＣＩＭはＣＰＵ１０１、ルートコンプレックス１０２が接続されているＰｏｒｔ：１に接続されている。ＭＲＡ  ＰＣＩエクスプレススイッチでは、ＭＲ−ＰＣＩＭからの設定のためＭＲ  ＰＣＩ−ＰＣＩブリッジで、ＶＨ０の番号の経路が利用される。【００１１】
設定レジスタの設定情報に関して以下に説明する。設定レジスタは、仮想ＰＣＩエクスプレススイッチ番号に対して、その仮想ＰＣＩエクスプレススイッチを構成するための情報、スイッチポート利用番号、利用ＶＨ番号、上流ＰＣＩ−ＰＣＩブリッジか下流ＰＣＩ−ＰＣＩブリッジかのＵＰ／Ｄｏｗｎ：ＤＮ情報がポート数分格納される。設定レジスタ５１２１では、仮想ＰＣＩエクスプレススイッチ１  ５１１６は、スイッチ番号１で、ポート１で、ＶＨ番号：ＶＨ０：上流ＰＣＩ−ＰＣＩブリッジ：ＵＰと、Ｐｏｒｔ３はＶＨ０でＤＮ、Ｐｏｒｔ４は、ＶＨ番号無し：Ｎ／Ａ（通常のＰＣＩｅポートの扱い）、Ｐｏｒｔ６はＶＨ０のＤＮで構成されている事を示している。つまり、本設定情報によって、ルートコンプレックス１０２からは、ＭＲ対応上流ＰＣＩ−ＰＣＩブリッジ５１１１、仮想ＰＣＩエクスプレススイッチ１  ５１１６、ＭＲ対応下流ＰＣＩ−ＰＣＩブリッジ５１１３、ＭＲエンドポイント５０５、下流ＰＣＩ−ＰＣＩブリッジ５１１４、エンドポイント１０６、ＭＲ対応下流ＰＣＩ−ＰＣＩブリッジ５１２２までアクセスできるようになる。【００１２】
ＭＲ対応上流・下流ＰＣＩ−ＰＣＩブリッジ５１２２の先へのアクセスは、ＭＲＡ  ＰＣＩエクスプレススイッチ５１２の設定レジスタ５１３１の設定によって、アクセスできるようになる。設定レジスタ５１３１では、仮想ＰＣＩエクスプレススイッチ２  ５１２７に対して、Ｐｏｒｔ２／ＶＨ０／ＤＮとＰｏｒｔ３／ＶＨ０／ＵＰとなっている。従って、ＭＲ対応上流・下流ＰＣＩ−ＰＣＩブリッジ５１２２の先は、ＭＲ対応上流・下流ＰＣＩ−ＰＣＩブリッジ５１２４、仮想ＰＣＩエクスプレススイッチ２  ５１２７、ＭＲ対応下流ＰＣＩ−ＰＣＩブリッジ５１３３、ＭＲエンドポイント５０６までが、ルートコンプレックス１０２からアクセスできる。【００１３】
同様に、設定レジスタ５１２１の仮想ＰＣＩエクスプレススイッチ２  ５１１７、仮想ＰＣＩエクスプレススイッチ３  ５１１８、設定レジスタ５１３１の仮想ＰＣＩエクスプレススイッチ１  ５１２６についても図４、５に示すとおり設定される。これらの設定によって、ＣＰＵ１０１に対して、図６に示すＰＣＩツリーがＩ／Ｏデバイスに対して組まれ、ＣＰＵ１０１１に対して、図７に示すＰＣＩツリーが組まれる。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】Multi-Root I/O Virtualization and Sharing Specification Revision 0.9, PCI-SIG, November 7, 2007, pp. 30
【発明の概要】
【発明が解決しようとする課題】
【００１５】
なお、上記非特許文献の全開示内容はその引用をもって本書に繰込み記載する。以下の分析は、本発明によって与えられたものである。【００１６】
本発明による分析によれば、上述した従来のＭＲＡ  ＰＣＩエクスプレススイッチを用いたシステムにおいては、以下に述べるような問題点がある。【００１７】
すなわち、ＭＲＡ  ＰＣＩエクスプレススイッチでは、ＭＲ−ＰＣＩＭがスイッチの接続状態と論理的な接続状態を考慮して、設定レジスタを設定しない限り、ＰＣＩツリーが構成されないため、ルートコンプレックスはＭＲ−ＰＣＩＭの処理が完了するまで、起動できない。そのため、システムの規模に応じて、ルートコンプレックスのシステム起動に非常に時間がかかり、システムの運用性を著しく、低下させることである。【００１８】
上記課題について、図面を引用して説明する。図８にＭＲ−ＰＣＩＭ  ５２のシーケンスを示す。ＭＲ−ＰＣＩＭは起動後、まずどのような種類のスイッチが何個つながっているか、そのスイッチはリンクを何本もっているかを把握する（ステップＳ１）。これはスイッチのレジスタを参照するだけで把握することが可能である。【００１９】
次に、スイッチがどのようなトポロジで接続されているか、物理的な接続状況を把握する必要がある（ステップＳ２）。この作業はトポロジ状態がループになっているかどうか等を考慮しながら探索していくためきぼやトポロジの構成によっては探索に時間がかかる。次にトポロジの先に、Ｉ／Ｏが接続されているか確認し、接続されている場合は、Ｉ／Ｏの種類を把握する（ステップＳ３）。この作業も同様にＩ／Ｏの数によって、時間がかかる。その後、ユーザが要望する設定、すなわち、図４、図５に示すテーブル情報の設定（ステップＳ４）が完了した後、ようやくルートコンプレックスへスイッチの利用を許可し（ステップＳ５）、ＣＰＵ１０１ならびにＣＰＵ１０１１は起動できるようになる。【００２０】
図８に示したＭＲ−ＰＣＩＭの動作により、ＣＰＵ１０１、ＣＰＵ１０１１のルートコンプレックスの起動シーケンスは、図９のようになる。システムの規模や構成によって、非常に時間が掛かる、ＭＲ−ＰＣＩＭが接続状況を把握している間（ステップＳ１１）、ＭＲ−ＰＣＩＭがＩ／Ｏの種別を把握している間（ステップＳ１２）は、ルートコンプレックスはずっと待つ事になる。その後のＭＲ−ＰＣＩＭのツリー設定が完了し（ステップＳ１３）、ＭＲ−ＰＣＩＭから利用許可が出た時点（ステップＳ１４）から、ようやくルートコンプレックスにリセットが掛かり、ＢＩＯＳを起動することができるようになる（ステップＳ１５）。【００２１】
ＢＩＯＳ起動中に、ＭＲ−ＰＣＩＭで設定されたＰＣＩツリー情報を認識し（ステップＳ１６）、図１０に示すＰＣＩツリーを構成する各ＰＣＩ−ＰＣＩブリッジの中にあるコンフィグレーションレジスタ１５０２を一つずつ設定していく。コンフィグレーションレジスタは、バス番号下限値１８００１、バス番号上限値１８００２、３２ビットＩ／Ｏアドレス下限値１８００３、３２ビットＩ／Ｏアドレス上限値１８００４、３２ビットメモリ下限値１８００５、３２ビットメモリ上限値１８００６、６４ビットメモリ下限値１８００７、６４ビットメモリ上限値１８００８で構成され、データ転送時、パケット転送ロジック１８００９がテーブル情報を参照し、ルーティング時の情報に使用される。【００２２】
バス番号設定が完了すると、その情報をＯＳに引継ぎ、次はＯＳの起動に移り（ステップＳ１７）、ＯＳ起動中は設定されたＰＣＩツリー上に存在するＩ／Ｏ用のドライバやコンフィグレーションが行われ、ようやくＯＳの起動が完了し、ソフトウェアが利用できるようになる（ステップＳ１８）。【００２３】
このように、ＭＲＡ  ＰＣＩエクスプレススイッチを利用する全てのルートコンプレックスは、ソフトウェア利用まで、ＭＲ−ＰＣＩＭの起動シーケンスにより待たされ、さらにその後、ＢＩＯＳ起動並びに、ＯＳ起動にまたされる時間が発生し、システムの起動に時間が非常にかかり、システムの運用性を著しく低下させる。また、システム規模に応じて、ＭＲ−ＰＣＩＭがルートコンプレックスに対して、起動許可を与えるタイミングが異なるため、システムのリセット、電源管理が複雑になる。【００２４】
本発明の目的は、複数のルートコンプレックステムを収容するＭＲＡ  ＰＣＩエクスプレススイッチにおいて、システムの規模によらず、ルートコンプレックスを待たせることなく起動できるマルチルートＰＣＩエクスプレススイッチを提供し、システムの運用性を向上させることにある。
【課題を解決するための手段】
【００２５】
本発明の第１の側面に係るマルチルートＰＣＩエクスプレススイッチは、複数のルートコンプレックスに対して接続可能なマルチルートＰＣＩエクスプレススイッチにおいて、スイッチの接続先のトポロジ、物理的な接続状況に基づいてＰＣＩツリーの設定に必要な情報を格納する設定レジスタと、前記設定レジスタの状態によらず、仮想的なＰＣＩツリーを構築するために必要な情報を格納する仮想スイッチブリッジ制御部と、データ転送時に必要なアドレス情報が格納された実コンフィグレーションレジスタと、を備え、前記仮想スイッチブリッジ制御部は、ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタと、前記設定レジスタの設定に基づいて、ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタと、前記実コンフィグレーションレジスタとの同期制御を行う仮想レジスタ同期制御部と、を備える。
【００２６】
また、本発明の第２の側面に係るマルチルートＰＣＩエクスプレススイッチの起動方法は、複数のルートコンプレックスに接続されるマルチルートＰＣＩエクスプレススイッチの起動方法であって、システム起動時に、システムを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーを構築するために必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップと、前記設定された情報に基づいて、ＢＩＯＳシステムを起動し、仮想的なＰＣＩツリーを構築するステップと、前記接続先のトポロジを確認して接続状況を確認した後、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーに置き換えるステップと、を有し、ホストコンピュータのマルチルートＰＣＩマネージャプログラムが、前記ホストコンピュータが接続されるルートコンプレックスに対してスイッチの利用許可を与え、前記利用許可に応答して、前記利用許可を受けたルートコンプレックスがＢＩＯＳシステムを起動し、仮想的なＰＣＩツリーを構築し、前記マルチルートＰＣＩマネージャプログラムは、前記ルートコンプレックスの処理と並行して前記接続先のトポロジを確認して物理的な接続状況を把握し、Ｉ／Ｏが接続されているか否か確認し、接続されている場合はＩ／Ｏの種類を把握する処理を行う。
【００２７】
本発明の第３の側面に係るマルチルートＰＣＩマネージャプログラムは、複数のルートコンプレックスに接続されるマルチルートＰＣＩエクスプレススイッチをコンピュータに管理させるマルチルートＰＣＩマネージャプログラムであって、システム起動時に、前記マルチルートＰＣＩエクスプレススイッチを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーの構築に必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップと、前記設定した情報に基づいて、前記ルートコンプレックスに前記マルチルートＰＣＩエクスプレススイッチの使用許可を与えるステップと、前記マルチルートＰＣＩエクスプレススイッチの接続先のトポロジ、物理的な接続状況を確認して実構成のＰＣＩツリー構築に必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップと、前記ホストコンピュータが接続されるルートコンプレックスに対してスイッチの利用許可を与えるステップと、前記利用許可に応答して、前記利用許可を受けたルートコンプレックスがＢＩＯＳシステムを起動し、仮想的なＰＣＩツリーを構築するステップと、前記ルートコンプレックスの処理と並行して前記接続先のトポロジを確認して物理的な接続状況を把握し、Ｉ／Ｏが接続されているか否か確認し、接続されている場合はＩ／Ｏの種類を把握する処理を行うステップと、を有する。
【発明の効果】
【００２８】
本発明によれば、マルチルート対応ＰＣＩエクスプレススイッチにおいて、システム起動時に、接続先のトポロジや物理的な接続状況を把握できるまで待つことなくルートコンプレックスを起動することができ、システム起動時間の短縮化を実現することができる。その理由は、接続先のトポロジや物理的な接続状況が把握できる前に仮想的なＰＣＩツリーを構築し、それに基づいてルートコンプレックスが起動できるようにしたためである。【００２９】
また、本発明によれば、マルチルート対応ＰＣＩエクスプレススイッチにおいて、システムの規模によらず、一定のタイミングで、ルートコンプレックスを起動することができ、ルートコンプレックスに対してのリセット、電源管理制御を簡略化できる。その理由は、接続先のトポロジや物理的な接続状況が把握できる前に仮想的なＰＣＩツリーを構築し、それに基づいてルートコンプレックスが起動できるようにしたためである。
【図面の簡単な説明】
【００３０】
【図１】ＭＲＡ  ＰＣＩエクスプレススイッチを使用したコンピュータシステムである。
【図２】ＭＲＡ  ＰＣＩエクスプレススイッチの内部構成である。
【図３】ＭＲＡ  ＰＣＩエクスプレススイッチの内部構成である。
【図４】ＭＲＡ  ＰＣＩエクスプレススイッチの設定レジスタの構成例である。
【図５】ＭＲＡ  ＰＣＩエクスプレススイッチの設定レジスタの構成例である。
【図６】ＭＲＡ  ＰＣＩエクスプレススイッチにおけるＣＰＵから見えるＰＣＩツリーである。
【図７】ＭＲＡ  ＰＣＩエクスプレススイッチにおけるＣＰＵから見えるＰＣＩツリーである。
【図８】ＭＲ−ＰＣＩＭの動作シーケンスにおける課題を説明する図である。
【図９】ルートコンプレックスの動作シーケンスにおける課題を説明する図である。
【図１０】ＰＣＩ−ＰＣＩブリッジの構成を示す図である。
【図１１】本発明によるＭＲＡ拡張ＰＣＩエクスレススイッチ使用したコンピュータシステムの一例である。
【図１２】本発明の一実施形態によるＭＲＡ拡張ＰＣＩエクスプレススイッチの内部構成図である。
【図１３】本発明の一実施形態によるＭＲＡ拡張ＰＣＩエクスプレススイッチの内部構成図である。
【図１４】本発明の一実施形態によるＭＲＡ拡張ＰＣＩエクスプレススイッチの多段仮想スイッチブリッジ制御部の構成図である。
【図１５】本発明の一実施形態によるＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタ情報の構成例を示す図である。
【図１６】本発明の一実施形態によるＭＲＡ拡張ＰＣＩエクスプレススイッチのＭＲ−ＰＣＩＭの動作シーケンスを示す図である。
【図１７】本発明の一実施形態によるＭＲＡ拡張ＰＣＩエクスプレススイッチに接続されるルートコンプレックスの動作シーケンスを示す図である。
【図１８】本発明の一実施形態による多段仮想スイッチブリッジ制御部におけるＣＰＵから見えるＰＣＩツリーの例を示す図である。
【図１９】本発明の一実施形態による設定反映後ＰＣＩツリー上で削除される箇所の例を示す図である。
【発明を実施するための最良の形態】
【００３１】
本発明において次の好ましい形態が可能である。【００３２】
［形態1］
第１の側面に記載のとおりのマルチルートＰＣＩエクスプレススイッチが好ましい。【００３３】
［形態２］
マルチルートＰＣＩエクスプレススイッチにおいて、前記複数のルートコンプレックスに対して接続可能なマルチルート対応ＰＣＩ-ＰＣＩブリッジと、前記複数のルートコンプレックスに対応して設けられ、前記マルチルート対応ＰＣＩ−ＰＣＩブリッジを含む複数のブリッジ間の接続を行う仮想ＰＣＩエクスプレススイッチと、をさらに備えることが好ましい。【００３４】
［形態３］
マルチルートＰＣＩエクスプレススイッチにおいて、前記仮想スイッチブリッジ制御部は、システムを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて設定されるＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタを備えることが好ましい。【００３５】
［形態４］
マルチルートＰＣＩエクスプレススイッチにおいて、データ転送時に必要なアドレス情報が格納された実コンフィグレーションレジスタをさらに備え、前記仮想スイッチブリッジ制御部が、前記設定レジスタの設定に基づいて、前記ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタと前記実コンフィグレーションレジスタとの同期制御を行う仮想レジスタ同期制御部をさらに備えることが好ましい。【００３６】
［形態５］
マルチルートＰＣＩエクスプレススイッチにおいて、前記仮想スイッチブリッジ制御部が、前記マルチルートＰＣＩエクスプレスの設定状態に応じて、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーと整合させるためのホットプラグイベントを発行するホットプラグイベント発行部をさらに備えることが好ましい。【００３７】
［形態６］
第２の側面に記載のとおりのマルチルートＰＣＩエクスプレススイッチの起動方法であることが好ましい。【００３８】
［形態７］
マルチルートＰＣＩエクスプレススイッチの起動方法において、前記マルチルートＰＣＩエクスプレススイッチが、前記仮想的なＰＣＩツリーの情報を保持し、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーに置き換えさせる仮想スイッチブリッジ制御部を備えているマルチルートＰＣＩエクスプレススイッチの起動方法であることが好ましい。【００３９】
［形態８］
マルチルートＰＣＩエクスプレススイッチの起動方法において、ホストコンピュータのマルチルートＰＣＩマネージャプログラムが、前記システム起動時に、システムを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーを構築するために必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定する処理を行い、前記ルートコンプレックスが、ＢＩＯＳシステムを起動し、前記仮想的なＰＣＩツリーを構築し、前記マルチルートＰＣＩマネージャプログラムが、前記接続先のトポロジを確認して接続状況を確認した後、実構成のＰＣＩツリーを構築するために必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定し、前記ルートコンプレックスが、前記実構成のＰＣＩツリーを構築するために設定された情報に基づいて、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーに置き換えるマルチルートＰＣＩエクスプレススイッチの起動方法であることが好ましい。【００４０】
［形態９］
マルチルートＰＣＩエクスプレススイッチの起動方法において、前記マルチルートＰＣＩマネージャプログラムは、前記マルチルートＰＣＩエクスプレススイッチ内のレジスタを参照することにより、前記システムを構成するスイッチの数、及び、スイッチのリンク数を把握して仮想的なＰＣＩツリーを構築するために必要な情報を設定し、前記ホストコンピュータが接続されるルートコンプレックスに対してＶＨ（Virtual Hierarchy）番号を固定で割り当てて、前記ホストコンピュータが接続されるルートコンプレックスに対してスイッチの利用許可を与え、前記利用許可に応答して、前記利用許可を受けたルートコンプレックスが前記ＢＩＯＳシステムを起動し、仮想的なＰＣＩツリーを構築し、前記マルチルートＰＣＩマネージャプログラムは、前記ルートコンプレックスの処理と並行して前記接続先のトポロジを確認して物理的な接続状況を把握し、Ｉ／Ｏが接続されているか否か確認し、接続されている場合はＩ／Ｏの種類を把握する処理を行うマルチルートＰＣＩエクスプレススイッチの起動方法であることが好ましい。【００４１】
［形態１０］
マルチルートＰＣＩエクスプレススイッチの起動方法において、前記マルチルートＰＣＩマネージャプログラムは、前記物理的な接続状況の把握、Ｉ／Ｏの種別の把握に、前記マルチルートＰＣＩエクスプレススイッチが、その設定に応答してホットプラグイベントを発行して、前記ルートコンプレックスに前記仮想的なＰＣＩツリーと実構成のＰＣＩツリーとの整合を行わせるマルチルートＰＣＩエクスプレススイッチの起動方法であることが好ましい。【００４２】
［形態１１］
マルチルートＰＣＩマネージャプログラムとしては、第３の側面に記載のとおりとすることが好ましい。【００４３】
［形態１２］
マルチルートＰＣＩマネージャプログラムを記録したコンピュータが読み取り可能な記憶媒体としては、上記形態１１のマルチルートＰＣＩマネージャプログラムを記録したコンピュータが読み取り可能な記憶媒体であることが好ましい。【００４４】
次に、本発明の実施の形態について図面を参照して詳細に説明する。図１１に本発明を用いたＭＲＡ拡張ＰＣＩエクスプレスシステムの構成図を示す。本発明のＭＲＡ  ＰＣＩエクスプレスシステムでは、ＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１１に、従来のＭＲＡ  ＰＣＩエクスプレススイッチで構成されるシステムにおいても使用されるＣＰＵ１０１、ＣＰＵ１０８、ルートコンプレックス１０２、メモリ１０３、ルートコンプレックス１０９、メモリ１１０、ＭＲエンドポイント５０５、エンドポイント１０６、エンドポイント１０７が接続され、ＭＲＡ拡張  ＰＣＩエクスプレススイッチ９５１１に接続される。またＭＲＡ拡張  ＰＣＩエクスプレススイッチ９５１２には、ＣＰＵ１０１１、ルートコンプレックス１０２１、メモリ１０３１、ＭＲエンドポイント５０６が接続される。接続できるルートコンプレックス並びにエンドポントは従来のＰＣＩエクスプレス対応のデバイスならびに、非特許文献１で規定されるＭＲエンドポイントであり、図１と同様にデバイス間で通信を行うことができる。【００４５】
本実施形態では図１に示した、従来のＭＲＡ  ＰＣＩエクスプレススイッチでの構成と同様の構成で、システム起動時間の短縮を実現する場合、ＭＲＡ拡張  ＰＣＩエクスプレススイッチにおいて、どのような構成、どのような設定で実現されるかを、ＭＲＡ拡張  ＰＣＩエクスプレススイッチの内部構成並びに動作、設定状態について説明する。【００４６】
ＭＲＡ拡張ＰＣＩエクスプレススイッチの内部構成の詳細について以下に示す。ＭＲＡ拡張ＰＣＩエクスプレススイッチでは、ＭＲＡ  ＰＣＩエクスプレスでも使用される、上流・下流・ＭＲ対応下流ＰＣＩ−ＰＣＩブリッジ、ＭＲＡコントローラ論理、設定レジスタを用い、加えて、ルートコンプレックスに対して、多段の仮想的なスイッチを構成する上流・下流ＰＣＩ−ＰＣＩブリッジ並びに、仮想的なＩ／ＯとしてＰＣＩ−ＰＣＩブリッジを見せる、多段仮想スイッチブリッジ制御部が付与される。【００４７】
図１２に、ＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１１、図１３にＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１２の構成を示す。ＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１１、９５１２は、従来のＭＲＡ  ＰＣＩエクスプレススイッチ５１１、５１２に加えて、多段仮想スイッチブリッジ制御部８１が付与された形で構成される。【００４８】
ＭＲ対応ＰＣＩ−ＰＣＩブリッジにおいては、ＭＲＡ  ＰＣＩエクスプレススイッチと同様ＶＨの割当が行われる。また、ＭＲ−ＰＣＩＭからの設定もＶＨ０のポート並びに、ＭＲＡコントローラ論理を介して、設定レジスタの設定が行われることで、利用する仮想ＰＣＩエクスプレススイッチ並びにそのポート、ＶＨ番号、上流か下流が決定され、ルートコンプレックスに対して、ＰＣＩエクスプレスのツリーの構築が行われ、エンドポイントへのアクセスが可能になる。従って、ＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１１、９５１２内でのルートコンプレックス、エンドポイント間のデータ転送を行う処理は、従来のＭＲＡ  ＰＣＩエクスプレススイッチと同様に行われる。【００４９】
ＭＲＡ拡張ＰＣＩエクスプレススイッチの特徴は、多段仮想スイッチブリッジ制御部が、ルートコンプレックスに対して、多段の仮想的なスイッチ並びにブリッジをみせる所にある。図１２に示すＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１１では、ルートコンプレックス１０２とルートコンプレックス１０９に対して、ＭＲ対応上流ＰＣＩ−ＰＣＩブリッジ５１１１並びに、上流ＰＣＩ−ＰＣＩブリッジ５１１２の先に、多段の仮想的なスイッチとブリッジを構成する。同様に、図１３に示すＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１２では、ルートコンプレックス１０２１に対して、上流ＰＣＩ−ＰＣＩブリッジ５１２３の先に、仮想的なスイッチとブリッジを構成する。【００５０】
図１４に、多段仮想スイッチブリッジ制御部８１の内部構成の詳細を示す。多段仮想スイッチブリッジ制御部８１は、コンフィグレーション送受制御部８２１、多段仮想スイッチ仮想ブリッジ制御部８２２、ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタ情報８２４、仮想レジスタ同期制御８２５、ホットプラグイベント発行部８２３で構成される。【００５１】
以下に、多段仮想スイッチブリッジ制御部８１の機能について示す。多段仮想スイッチブリッジ制御部８１は、まずシステム起動時ＭＲ−ＰＣＩＭから、システムは何段のスイッチで構成されているか、またそのスイッチのリンク数はいくつであるかの設定情報を、ＭＲ−ＰＣＩ仮想スイッチ、ブリッジ段数設定８１２として、多段仮想スイッチ仮想ブリッジ制御部８２２に対して設定される。段数並びにリンク数が設定されると、多段仮想スイッチ仮想ブリッジ制御部８２２は、ルートコンプレックスからみて、仮想的な上流・下流ＰＣＩ−ＰＣＩブリッジ並びにＰＣＩブリッジが存在しているように見せるため、ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタ情報８２４を複数構成する。ルートコンプレックスに対して、起動許可がおり、ＢＩＯＳが起動し、ＰＣＩツリーサーチのプログラムが走る。その後、ＭＲＡ拡張ＰＣＩエクスプレススイッチに対して、コンフィグレーションアクセスが発生し、上流ＰＣＩ−ＰＣＩブリッジを経由して、ブリッジコンフィグレーションパケット８１３として受信する。受信情報は、ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタ情報８２４にアクセスが発生する。【００５２】
ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタ情報８２４の詳細構成を、図１５に示す。本レジスタは、図１０に示した、実ＰＣＩ−ＰＣＩブリッジが保持するコンフィグレーションレジスタ１５０２と同様の構成をとり、本レジスタにより、コンフィグレーションを行うルートコンプレックスに対して、仮想的なＰＣＩ−ＰＣＩブリッジ並びにＰＣＩブリッジが存在しているように、ルートコンプレックスに見せることが可能になる。【００５３】
また、多段仮想スイッチブリッジ制御部８１は、ＭＲＡ拡張ＰＣＩエクスプレススイッチの設定レジスタを参照することで、実際のスイッチへのコンフィグレーション状態を把握、実ＰＣＩ−ＰＣＩブリッジが利用可能になった際には、仮想レジスタ同期制御８２５は、実ＰＣＩ−ＰＣＩブリッジに相当する仮想ＰＣＩ−ＰＣＩブリッジと、スイッチ内部実コンフィグレーションレジスタ８１４に対して、レジスタの情報のコピー並びにミラーリングを行うことで、同期制御を行う。実ＰＣＩ−ＰＣＩブリッジが有効になった時点で、ルートコンプレックスに見せていた仮想ＰＣＩ−ＰＣＩブリッジを実際のＰＣＩ−ＰＣＩブリッジ並びにＩ／Ｏへ置き換えるために、ホットプラグイベント発行部８２３は、仮想ＰＣＩ−ＰＣＩブリッジのＨｏｔ−Ｒｅｍｏｖｅ（切離し）並びに、実ＰＣＩ−ＰＣＩブリッジのＨｏｔ−Ａｄｄ（付与）のホットプラグイベントを発行し、仮想的な状態から、実際に利用している状態との整合を行う。【００５４】
次に、上述した、多段仮想スイッチブリッジ制御部を搭載したＭＲＡ拡張ＰＣＩエクスプレスにおけるＭＲ−ＰＣＩＭの動作シーケンス並びに、ルートコンプレックスの起動シーケンスを説明し、どのようにシステム起動時間が短縮されるかを説明する。【００５５】
図１６にＭＲＡ拡張ＰＣＩエクスプレススイッチ９５１１、９５１２を管理するＭＲ−ＰＣＩＭ９５２の動作シーケンスを示す。ＭＲ−ＰＣＩＭ９５２は、起動後、まずどのような種類のスイッチが何個をつながっているか、そのスイッチはリンクを何本もっているかを把握する（ステップＳ２１）。これはスイッチのレジスタを参照するだけで把握することが可能である。次に、多段仮想スイッチブリッジ制御部８１へ接続するためのパスを開くために、ルートコンプレックスが接続されているポートのＶＨの番号を初期値として固定で割り当てる（ステップＳ２２）。ルートコンプレックスが接続されているリンクは共有されないので、ＶＨの番号は任意の固定の番号を設定しても問題ない。その後、ＭＲ−ＰＣＩＭはルートコンプレックスにスイッチ利用を許可する（ステップＳ２３）。スイッチ段数とリンク数の確認、初期値の設定は、システム規模によらず、単なるレジスタのリード、ライト１コマンドで終了するため、ルートコンプレックスがスイッチ利用の許可を受けるまでの時間は常に一定で、非常に短い。利用許可後、従来のＭＲ−ＰＣＩＭと同様に、スイッチがどのようなトポロジで接続されているかの物理的な接続状況を把握（ステップＳ２４）、トポロジの先に繋がるＩ／Ｏの確認と種別把握の処理が行われ（ステップＳ２５）、ユーザが要望する設定、すなわち、図４、図５に示すテーブル情報の設定が行われる（ステップＳ２６）。【００５６】
図１７に、上述したＭＲ−ＰＣＩＭ９５２の動作に対してのルートコンプレックスの動作シーケンスを示す。ＣＰＵ１０１、ＣＰＵ１０１１のルートコンプレックスは、システム起動後、すぐにスイッチの利用許可をＭＲ−ＰＣＩＭから指示を受け（ステップＳ３１）、ＢＩＯＳシステムの起動を行う（ステップＳ３２）。すなわち、システムの規模や構成によらず、一定時間後すぐに、ＭＲ−ＰＣＩＭ起動後ルートコンプレックスに対して起動許可が発行され、ルートコンプレックスは、ほとんど待つ事なく、リセットが掛かり、ＢＩＯＳを起動することができるようになる。ＢＩＯＳ起動中は、ルートコンプレックスが接続されているポートの先の上流ＰＣＩ−ＰＣＩブリッジの先は、まだ設定レジスタによる設定がされていないため、仮想ＰＣＩエクスプレススイッチは利用されず、多段仮想スイッチブリッジ制御部が提供する多段仮想スイッチブリッジを認識して起動することになる。多段仮想スイッチブリッジは、ＭＲ−ＰＣＩＭ起動直後、仮想スイッチの段数、リンク数の情報を受けているので、仮想的なスイッチブリッジが既に構成されている。【００５７】
図１８にルートコンプレックス１０２から見た、起動直後の仮想スイッチ、ブリッジ構成されるＰＣＩツリーを示す。図１１に示す構成においては、スイッチは２段、各スイッチのリンク数は６と３であるので、仮想スイッチは２段（Ｎ＝２）で構成されており、１段目の仮想スイッチのリンク数は６（Ｍ１＝６）、２段目の仮想スイッチのリンク数は３（Ｍ２＝３）で構成され、末端のリンクには仮想ブリッジが構成される。ＢＩＯＳはこの仮想スイッチブリッジで構成されたＰＣＩツリーを認識し、仮想スイッチブリッジに対し、コンフィグレーションを行い、次にＯＳ起動に入る。【００５８】
ルートコンプレックスがＭＲ−ＰＣＩＭからの指示で立ち上がっている間、ＭＲ−ＰＣＩＭ９５２は、図１６に示したように、従来と同様に時間がかかる物理的な接続状況の把握ならびに、Ｉ／Ｏ種別の把握に関する処理を、ルートコンプレックスの処理として時間がかかる、ＢＩＯＳ起動やＯＳ起動と平行して行うことで、システム起動時間の短縮を図る。【００５９】
また、物理的な接続状況の把握ならびに、Ｉ／Ｏ種別の把握に関する処理が完了するとツリーの設定として、スイッチの設定レジスタの読み込みが行われＶＨ番号はＶＳ番号の設定がされ、実際のＰＣＩ−ＰＣＩブリッジが使用可能になる。前述したとおり、図１４に示す仮想レジスタ同期制御８２５並びにホットプラグイベント発行部８２３は実際のＰＣＩ−ＰＣＩブリッジが利用になると、情報の同期と、構成変更のためにホットプラグ処理を行い、実際のシステム運用と同じ状態になるように整合する。すなわち、図１７のステップＳ３６〜Ｓ３９に示すように、ＭＲ−ＰＣＩＭが、物理的な接続状況を把握し（ステップＳ３６）、Ｉ／Ｏの種別を把握し（ステップＳ３７）、ユーザが要望するツリー設定に必要な情報を設定レジスタ（９５１２１、９５１３１）に設定する（ステップＳ３８）。さらに、ホットプラグイベントによって、仮想的なＰＣＩツリーが、実構成のＰＣＩツリーと一致するように再構成される（ステップＳ３９）。【００６０】
図１９はＰＣＩツリー上で削除される箇所を示している。網線部分は、ＶＨ／ＶＳの設定により、ＰＣＩツリーとして不要であることが解った部分である。この箇所はホットプラグイベント発行部８２３により、Ｈｏｔ−Ｒｅｍｏｖｅ（切離し）処理が行われ、実構成として同じＰＣＩツリー状態になるように構成される。また、仮想ＰＣＩ−ＰＣＩブリッジ並びに仮想ブリッジは、実ＰＣＩ−ＰＣＩブリッジ並びに実Ｉ／Ｏに、Ｈｏｔ−Ｒｅｍｏｖｅ（切離し）、Ｈｏｔ−Ａｄｄ（追加）で、ＰＣＩツリーの状態を保ったまま、変更され、図６に示した構成と同じ構成になる。【００６１】
以上のように、従来のＭＲＡ  ＰＣＩエクスプレススイッチで問題となっていた、物理的な接続状況の把握ならびに、Ｉ／Ｏ種別の把握で時間が掛っていた箇所は、ルートコンプレックスがＢＩＯＳ起動中、ＯＳ起動中の時間を有効活用して行われるため、システムの起動時間が短縮され、また、従来システムと同様のＰＣＩツリーでユーザはソフトウェアを利用する事ができる。【００６２】
以上、説明したように、本発明の一実施形態のマルチルートＰＣＩエクスプレススイッチは、例えば図１２、１３に示すように、複数のルートコンプレックス（１０２、１０９、１０２１）に対して接続可能なマルチルートＰＣＩエクスプレススイッチ（９５１１、９５１２）において、スイッチの接続先のトポロジ、物理的な接続状況に基づいてＰＣＩツリーの設定に必要な情報を格納する設定レジスタ（９５１２１、９５１３１）と、設定レジスタの状態によらず仮想的なＰＣＩツリーを構築するために必要な情報を格納する仮想スイッチブリッジ制御部８１と、を備えている。【００６３】
上記マルチルートＰＣＩエクスプレススイッチによれば、仮想的なＰＣＩツリーを構築するために必要な情報を格納する仮想スイッチブリッジ制御部８１を備えているので、設定レジスタの設定前でも、接続先のトポロジや物理的な接続状況を把握できるまで待つことなくルートコンプレックスを起動することができる。また、システムの規模によらず、ルートコンプレックスを起動するまでの時間を一定にすることができる。【００６４】
さらに、本発明の一実施形態のマルチルートＰＣＩエクスプレススイッチは、例えば図１２、１３に示すように、複数のルートコンプレックスに対して接続可能なマルチルート対応ＰＣＩ-ＰＣＩブリッジ（５１１３、５１３３）と、複数のルートコンプレックス（１０２、１０９、１０２１）に対応して設けられマルチルート対応ＰＣＩ−ＰＣＩブリッジ（５１１３、５１３３）を含む複数のブリッジ（５１１１、５１１２、５１２２、５１１３、５１１４、５１１５、５１２３、５１２４、５１３３）間の接続を行う仮想ＰＣＩエクスプレススイッチ（５１１６、５１１７、５１１８、５１１９、５１２６、５１２７、５１２９）と、をさらに備えたものであってもよい。【００６５】
また、本発明の一実施形態のマルチルートＰＣＩエクスプレススイッチの起動方法は、例えば、図１６、１７に示すように、複数のルートコンプレックス（図１１の１０２、１０９、１０２１）に接続されるマルチルートＰＣＩエクスプレススイッチ（図１１の９５１１、９５１２）の起動方法であって、システム起動時にシステムを構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーを構築するために必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップ（Ｓ２１、Ｓ２２）と、設定された情報に基づいてＢＩＯＳシステムを起動し仮想的なＰＣＩツリーを構築するステップ（Ｓ３３）と、接続先のトポロジを確認して接続状況を確認した後、前記仮想的なＰＣＩツリーを実構成のＰＣＩツリーに置き換えるステップ（Ｓ３６〜Ｓ３９）と、を有する。【００６６】
上記起動方法によれば、システム起動時に、仮想的にＰＣＩツリーを構築する（図１８参照）ので、短時間でＢＩＯＳシステムを起動することができる。また、仮想的に構築したＰＣＩツリー（図１８）は、接続先のトポロジや接続状況を確認した後、実構成のＰＣＩツリーに置き換えられる（図１９参照）ので、矛盾が生じることもない。【００６７】
さらに、本発明の一実施形態のマルチルートＰＣＩマネージャプログラムは、図１６に示すように、複数のルートコンプレックス（図１１の１０２、１０９、１０２１）に接続されるマルチルートＰＣＩエクスプレススイッチ（図１１の９５１１、９５１２）をコンピュータ（図１１の１０１）に管理させるマルチルートＰＣＩマネージャプログラムであって、システム起動時にマルチルートＰＣＩエクスプレススイッチ（９５１１、９５１２）を構成するスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリー（例えば図１８）の構築に必要な情報を前記マルチルートＰＣＩエクスプレススイッチ（図１１の９５１１、９５１２）に設定するステップ（Ｓ２１、Ｓ２２）と、設定した情報に基づいてルートコンプレックス（１０２、１０９、１０２１）にマルチルートＰＣＩエクスプレススイッチの使用許可を与えるステップ（Ｓ２３）と、マルチルートＰＣＩエクスプレススイッチの接続先のトポロジ、物理的な接続状況を確認して実構成のＰＣＩツリー構築に必要な情報を前記マルチルートＰＣＩエクスプレススイッチに設定するステップ（Ｓ２４〜Ｓ２６）と、を有する。【００６８】
上記マルチルートＰＣＩマネージャプログラムは、ＣＤＲＯＭ、ＤＶＤ、フレキシブルディスク、ＲＯＭ、フラッシュメモリ、ＲＡＭ、ハードディスクなどの記憶媒体を介してコンピュータにインストール可能である。また、コンピュータは、上記記憶媒体に格納されたマルチルートＰＣＩマネージャプログラムを実行することができる。【００６９】
上記マルチルートＰＣＩマネージャによれば、システム起動時に、スイッチのレジスタを参照するだけで把握できるスイッチの数、及び、スイッチのリンク数の情報に基づいて仮想的なＰＣＩツリーを構築するために必要な情報をマルチルートＰＣＩエクスプレススイッチに設定し、それに基づいて、ルートコンプレックスにマルチルートＰＣＩエクスプレススイッチの使用許可を与える。したがって、ルートコンプレックスは、システムの規模に依存せず、早期に起動することができる。仮想的なＰＣＩツリー構築のために設定した情報は、スイッチの接続先のトポロジ、物理的な接続状況を確認できた後、実構成のＰＣＩツリー構築に必要な情報を設定しているので、ホットプラグ処理等により、仮想的なＰＣＩツリーを実構成のＰＣＩツリーに更新できるので、矛盾が生じることもない。【００７０】
本発明によれば、複数のルートコンプレックスを収容するＭＲＡ  ＰＣＩエクスプレススイッチにおいて、ＭＲ−ＰＣＩＭは物理構成、論理構成について把握している時間を待つ事なく、ルートコンプレックスを即時起動することを可能とし、システム起動時間の短縮化を実現できる。その理由は、ＭＲＡ  ＰＣＩエクスプレススイッチの構成に加え、多段の仮想的なスイッチ並びに仮想的なブリッジをルートコンプレックスに見せる仮想スイッチブリッジ制御部を持ち、ルートコンプレックスのシステム起動時は、最初、多段の仮想的なスイッチ並びにブリッジを利用させることで、ＭＲ−ＰＣＩＭは即時ルートコンプレックスの起動を許可できるようにしたためである。【００７１】
また、本発明によれば、ＭＲＡ  ＰＣＩエクスプレスシステムにおいて、システムの規模によらず、一定のタイミングで、ＭＲ−ＰＣＩＭがルートコンプレックスに対して、起動直後、即時、起動許可を与えることができるため、ルートコンプレックスに対してのリセット、電源管理制御を簡略化できる。その理由は、マルチルートＰＣＩエクスプレススイッチの構成に加え、多段の仮想的なスイッチ並びに仮想的なブリッジをルートコンプレックスに見せる仮想スイッチブリッジ制御部を持ち、ルートコンプレックスのシステム起動時は、最初、多段の仮想的なスイッチ並びにブリッジを利用させることで、ＭＲ−ＰＣＩＭは即時ルートコンプレックスの起動を許可できるようにしたためである。【００７２】
以上、本発明を実施例に即して説明したが、本発明は上記実施例の構成にのみ制限されるものでなく、本発明の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【産業上の利用可能性】
【００７３】
本発明の活用例として、本実施例では有線で接続されたコンピュータシステム並びにネットワークシステムを説明したが、有線または無線に関わらず、ＰＣＩエクスプレスインターフェースを搭載しているシステム環境全てに活用可能である。
【符号の説明】
【００７４】
１０１，１０８，１０１１  ＣＰＵ
１０２，１０９，１０２１  ルートコンプレックス
１０３，１１０，１０３１  メモリ
１０４  ＰＣＩエクスプレススイッチ
１０５，１０６，１０７  エンドポイント
５０５，５０６  ＭＲエンドポイント
５２，９５２  ＭＲ−ＰＣＩＭ
５１１，５１２  ＭＲＡ  ＰＣＩエクスプレススイッチ
５１１１  ＭＲ対応上流ＰＣＩ−ＰＣＩブリッジ
５１２２，５１２４  ＭＲ対応上流・下流ＰＣＩ−ＰＣＩブリッジ
５１１６，５１１７，５１１８，５１１９，５１２６，５１２７，５１２９  仮想ＰＣＩエクスプレススイッチ
５１１３，５１３３  ＭＲ対応下流ＰＣＩ−ＰＣＩブリッジ
５１１４，５１１５  下流ＰＣＩ−ＰＣＩブリッジ
５１２０  ＭＲＡコントローラ論理
５１２１，５１３１  設定レジスタ
５１１２，５１２３  上流ＰＣＩ−ＰＣＩブリッジ
１５０２  コンフィグレーションレジスタ
１８００１  バス番号下限値
１８００２  バス番号上限値
１８００３  ３２ビットＩ／Ｏアドレス下限値
１８００４  ３２ビットＩ／Ｏアドレス上限値
１８００５  ３２ビットメモリ下限値
１８００６  ３２ビットメモリ上限値
１８００７  ６４ビットメモリ下限値
１８００８  ６４ビットメモリ上限値
１８００９  パケット転送ロジック
９５１１，９５１２  ＭＲＡ拡張ＰＣＩエクスプレススイッチ
８１  多段仮想スイッチブリッジ制御部
８２１  コンフィグレーション送受制御部
８２２  多段仮想スイッチ仮想ブリッジ制御部
８２３  ホットプラグイベント発行部
８２４  ＰＣＩスイッチブリッジ仮想コンフィグレーションレジスタ情報
８２５  仮想レジスタ同期制御
【図１】
0005440507.tif 000002
【図２】
0005440507.tif 000003
【図３】
0005440507.tif 000004
【図４】
0005440507.tif 000005
【図５】
0005440507.tif 000006
【図６】
0005440507.tif 000007
【図７】
0005440507.tif 000008
【図８】
0005440507.tif 000009
【図９】
0005440507.tif 000010
【図１０】
0005440507.tif 000011
【図１１】
0005440507.tif 000012
【図１２】
0005440507.tif 000013
【図１３】
0005440507.tif 000014
【図１４】
0005440507.tif 000015
【図１５】
0005440507.tif 000016
【図１６】
0005440507.tif 000017
【図１７】
0005440507.tif 000018
【図１８】
0005440507.tif 000019
【図１９】
0005440507.tif 000020