(57)【要約】【課題】導入コストを抑えながら、情報処理システムに接続可能な入出力デバイスの個数を増加させる。【解決手段】ホスト装置から入力される入出力デバイス宛のパケットにおいて、宛先の識別子としての第１識別情報であって、入出力インタフェース仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、追加ビットの情報が含まれるよう、仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を仕様に基づく識別情報の位置に含めて入出力スイッチに出力するアウトバウンド変換部１１と、入出力スイッチから入力されるホスト装置宛のパケットにおいて、送信元の入出力デバイスの識別子としての第２識別情報を元の第１識別情報に変換し、変換した第１識別情報を仕様に基づく識別情報の位置および追加ビットの位置に含めてホスト装置に出力するインバウンド変換部１２とを有する。【選択図】図１
2018160163.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続され、
前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力するアウトバウンド変換部と、
前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力するインバウンド変換部と、
を有する変換装置。
【請求項２】
前記アウトバウンド変換部は、前記第１識別情報の上位ｎビットを破棄して前記ｎ個の追加ビットを下位ｎビットとして含むよう前記第２識別情報を構成し、
前記インバウンド変換部は、前記第２識別情報を、前記第１識別情報に含まれていた前記上位ｎビットに基づいて、前記第１識別情報に変換することを特徴とする請求項１に記載の変換装置。
【請求項３】
前記アウトバウンド変換部は、前記パケットに、変換機能を有効にすることを示す情報が含まれる場合に、前記第１識別情報を前記第２識別情報に変換し、
前記インバウンド変換部は、前記アウトバウンド変換部において前記変換機能が有効である場合に、前記第２識別情報を元の前記第１識別情報に変換することを特徴とする請求項１または請求項２に記載の変換装置。
【請求項４】
前記入出力インタフェースがＰＣＩｅ（Peripheral Component Interconnect Express）であるとき、
前記アウトバウンド変換部は、前記仕様に基づく識別情報としてのバス番号と、前記ｎ個の追加ビットとしてのデバイス番号の上位ｎビットとからなる前記第１識別情報から、前記バス番号の上位ｎビットを破棄し、前記デバイス番号の上位ｎビットを下位ｎビットとして含むよう、前記第２識別情報を生成し、
前記インバウンド変換部は、自装置のセカンダリバスについて記憶しているバス番号の上位ｎビットを用いて、前記第２識別情報を元の前記第１識別情報に変換することを特徴とする請求項１から請求項３のいずれか１項に記載の変換装置。
【請求項５】
請求項１から請求項４のいずれか１項に記載の変換装置および前記入出力スイッチを介して自装置に接続される前記入出力デバイスに対して、前記第１識別情報を付与するデバイス初期化部と、
前記入出力デバイスに対して、前記第１識別情報を用いてアクセスするデバイスアクセス部と、
を有するホスト装置。
【請求項６】
請求項１から請求項４のいずれか１項に記載の変換装置と、
前記入出力スイッチと、
を備えた入出力スイッチシステム。
【請求項７】
請求項５に記載のホスト装置と、
請求項１から請求項４のいずれか１項に記載の変換装置と、
前記入出力スイッチと、
を備えた情報処理システム。
【請求項８】
ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続されるコンピュータ装置を用いて、
前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力し、
前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力する方法。
【請求項９】
ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続されるコンピュータ装置に、
前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力するアウトバウンド変換ステップと、
前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力するインバウンド変換ステップと、
を実行させるプログラム。
【請求項１０】
コンピュータ装置を用いて、
請求項１から請求項４のいずれか１項に記載の変換装置および前記入出力スイッチを介して自装置に接続される前記入出力デバイスに対して、前記第１識別情報を付与し、
前記入出力デバイスに対して、前記第１識別情報を用いてアクセスする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムにおいて、ホスト装置に接続される入出力デバイスを識別する技術に関する。
【背景技術】
【０００２】
情報処理システムにおいて、ホスト装置に１つ以上の入出力デバイスを接続してデータを送受信する際には、入出力デバイスを識別する識別情報が用いられる。
【０００３】
例えば、ホスト装置に入出力デバイスを接続するインタフェースとして、ＰＣＩｅ（Peripheral Component Interconnect Express）が良く知られている。ＰＣＩｅは、ＰＣＩ（Peripheral Component Interconnect）とソフトウェアレベルで互換性があり、かつ、ＰＣＩより処理能力が高いインタフェースである。ＰＣＩｅでは、ソフトウェアから見たＰＣＩｅデバイスの識別に、ＰＣＩ仕様を継承したデバイス識別情報が用いられる。ここで、ＰＣＩにおけるデバイス識別情報は、バス番号、デバイス番号およびファンクション番号の組合せからなる。
【０００４】
ＰＣＩでは、デバイスはバス型トポロジーによってホスト装置に接続される。つまり、１つのバスの配下に複数のＰＣＩデバイスが接続され得る。そのため、ＰＣＩデバイスは、そのＰＣＩデバイスが接続されたバスを識別するバス番号と、当該バス上のスロットによって特定されるデバイス番号とによって識別される。すなわち、ＰＣＩデバイスは、バス番号およびデバイス番号の組み合わせによって表せる個数まで、ホスト装置に接続することが可能であった。
【０００５】
しかしながら、ＰＣＩｅは、シリアルインタフェースであるため、ホスト装置に対する接続形態がピアツーピアとなる。そのため、ホスト装置に、ＰＣＩｅポート数以上のＰＣＩｅデバイスを接続するために、一般的に、ＰＣＩｅスイッチによってポート数が拡張される。ＰＣＩｅスイッチは、内部に複数の仮想ＰＣＩ−ＰＣＩブリッジを含むため、それらの間を接続するバスによってバス番号を内部で消費する。そして、ＰＣＩｅスイッチのダウンストリームポート毎に、さらにバス番号が割り当てられる。これにより、そのポートに接続されたＰＣＩｅデバイスは、そのバス番号により識別可能となっている。このように、ＰＣＩｅスイッチ配下に接続されたＰＣＩｅデバイスは、バス番号によってのみ識別されることになる。さらに、前述のように、ＰＣＩｅスイッチ内部で消費されるバス番号も考慮すると、ホスト装置に接続可能なＰＣＩｅデバイスの個数は、バス番号によって表せる個数よりさらに少なくなる。これは、バス番号およびデバイス番号の組合せによって表される個数まで接続可能なＰＣＩデバイスの個数に比較すると、大幅に少ない。
【０００６】
例えば、図３７は、ＰＣＩｅスイッチを用いて、複数のＰＣＩｅデバイスをホスト装置に接続する一般的な構成の一例を示している。図３７において、ホスト装置には、ＰＣＩｅスイッチを介して、４つのＰＣＩｅデバイスｄ１〜ｄ４が接続されている。ＰＣＩｅスイッチは、ＰＣＩｅポートを増やすためのデバイスである。この例では、ＰＣＩｅスイッチは、５つの仮想ＰＣＩ−ＰＣＩブリッジｂ１〜ｂ５によって構成される。以降、仮想ＰＣＩ−ＰＣＩブリッジを、単に仮想ＰＣＩブリッジと記載する。各仮想ＰＣＩブリッジは、２本のＰＣＩバスを相互接続する。また、各バスには、バス番号が割り当てられている。バス番号の割り当ては、ホスト装置で動作するソフトウェアによって、情報処理システムの初期化時等に行われる。図３７では、バス番号ｘｘは、１６進数で表されているものとする。以降、バス番号ｘｘが割り当てられたバスを、Ｂｕｓ＃ｘｘとも記載する。図３７の例では、図示されないＢｕｓ＃００は、プロセッサの内部で消費される。また、ホスト装置と仮想ＰＣＩブリッジｂ１とを接続するバスに、Ｂｕｓ＃０１が割り当てられている。また、仮想ＰＣＩブリッジｂ１と仮想ＰＣＩブリッジｂ２〜ｂ５とを接続するバスに、Ｂｕｓ＃０２が割り当てられている。また、仮想ＰＣＩブリッジｂ２にＰＣＩｅデバイスｄ１を接続可能なポートの配下には、Ｂｕｓ＃０４〜０５が占有可能に割り当てられる。つまり、仮想ＰＣＩブリッジｂ２およびＰＣＩｅデバイスｄ１を結ぶバスには、Ｂｕｓ＃０４および０５のいずれかが割り当てられる。同様に、仮想ＰＣＩブリッジｂ３、ｂ４、ｂ５の配下には、それぞれ、Ｂｕｓ＃０６〜０７、Ｂｕｓ＃０８〜０９、Ｂｕｓ＃０Ａ〜０Ｂが占有可能に割り当てられている。つまり、図３７のホスト装置の下流では、バス番号として、Ｂｕｓ＃００〜＃０Ｂが消費される。
【０００７】
このように各バスに割り当てられたバス番号は、前述のように、そのバス番号が示すバスに接続されたＰＣＩｅデバイスを、ホスト装置で動作するソフトウェアから識別するために用いられる。ここで、ＰＣＩおよびＰＣＩｅにおいて定められたデバイス識別情報の構造を図３８に示す。図３８において、デバイス識別情報は、１６ビットで表され、バス番号８ビットと、デバイス番号５ビットと、ファンクション番号３ビットとからなる。ファンクション番号は、１つのデバイスに含まれる機能を識別する情報である。
【０００８】
例えば、図３７に示したような、４つのＰＣＩｅデバイスｄ１〜ｄ４を接続したＰＣＩｅスイッチ以降を１つのＰＣＩｅボックスとしてまとめて表すとする。そして、図３９に示すように、このＰＣＩｅボックスを４個接続したホスト装置を、複数備える情報処理システムを想定する。このような構成の情報処理システムには、バス番号の制限により、６４個程度のＰＣＩｅデバイスしか接続することが出来ない。
【０００９】
具体的には、図３９に示す１つ目のホスト装置に接続された１つ目のＰＣＩｅボックスｂ１の下流では、図３７で説明したように、ポート０〜３に合計４つのＰＣＩｅデバイスを接続可能であり、Ｂｕｓ＃０４〜０Ｂが消費される。また、同じ1つ目のホスト装置に接続された２つ目のＰＣＩｅボックスｂ２配下では、Ｂｕｓ＃１４〜１Ｂが消費される。なお、１つ目のＰＣＩｅボックスｂ１配下で消費される範囲で割り当てられていないＢｕｓ＃０３がある。また、１つ目のＰＣＩｅボックスｂ１および２つ目のＰＣＩｅボックスｂ２間で、２つ目のＰＣＩｅボックス内部で消費されるバス番号を考慮しても、割り当てられていないバス番号が存在する。このように、バス番号の割り当ては、管理しやすさ等のため必ずしも緻密に割り当てられるわけではなく、飛ばされる番号が存在する場合もある。なお、バス番号の割り当ては、ＰＣＩｅデバイスを初期化するソフトウェアにより行われる。
【００１０】
同様にして、図３９の例のように、各ＰＣＩｅボックス配下でバス番号が８ずつ消費され、かつ、管理しやすさ等のために一部のバス番号が飛ばされていくとする。すると、この例では、情報処理システムは、Ｂｕｓ＃ＦＢまでを消費するＰＣＩｅボックスｂ１６までしか接続できない。つまり、接続可能なＰＣＩｅボックスがＢ１〜Ｂ１６までの１６個までであり、各ＰＣＩｅボックスに接続可能なＰＣＩｅデバイスが４個までであるため、接続可能なＰＣＩｅデバイスの個数は６４個程度までとなってしまう。なお、バス番号が飛ばされずに緻密に割り当てが行われるとすれば、６４個より多くのＰＣＩｅデバイスを接続することは可能となる。しかしながら、ＰＣＩｅスイッチ内部で消費されるバス番号等を考慮すると、８ビットで表すことが可能な個数のバス番号を全てＰＣＩｅデバイスに割り当てることはできない。
【００１１】
このように、ＰＣＩｅでは、バス番号のみでデバイスを識別しなければいけないだけでなく、デバイス以外で消費されるバス番号もある。このため、ＰＣＩｅでは、接続可能なデバイスの個数が、ＰＣＩに比べて大幅に少なくなるという問題がある。
【００１２】
このような問題に関連する技術の一例が、特許文献１に記載されている。特許文献１に記載された関連技術は、サーバとデバイスとを複数のＰＣＩｅスイッチで接続する構成を想定している。そして、この関連技術は、ＰＣＩｅスイッチのポートのうちデバイスまたはサーバに接続する外部ポートにおいて、転送されるパケットに含まれるバス番号をシステムポートアドレスに変換し、パケットにラベルとして付加する。また、各外部ポートは、バス番号とシステムポートアドレスとを関連付けた変換テーブルを有する。また、この関連技術は、ＰＣＩｅスイッチ同士が接続される内部ポート間では、システムポートアドレスを用いてパケットを転送する。そして、この関連技術は、変換テーブルにおいて、デバイスとして識別される必要がない場所に付与されるバス番号に対してシステムポートアドレスを関連付けないようにしたり、各外部ポート毎に異なる変換テーブルを有するようにする。これにより、この関連技術は、バス番号として表される個数より多くのＰＣＩｅデバイスの識別を可能にする。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】国際公開第２０１２／０８６０６８号
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかしながら、特許文献１に記載された関連技術には、以下の課題がある。この関連技術では、サーバまたはデバイスに接続される各ＰＣＩｅスイッチが、バス番号をシステムポートアドレスに変換する変換テーブルおよび変換機能を有する必要がある。また、各ＰＣＩｅスイッチは、システムポートアドレスがラベルとして付加されたパケットを認識して転送する機能を有する必要がある。つまり、この関連技術では、全てのＰＣＩｅスイッチを、これらの機能を有する専用のＰＣＩｅスイッチで構成する必要があり、導入にコストがかかる。
【００１５】
このように、情報処理システムにおいては、接続可能な入出力デバイスの個数を増加させようとすると、導入にコストがかかるという問題がある。
【００１６】
本発明は、上述の課題を解決するためになされたものである。すなわち、本発明は、導入コストを抑えながら、情報処理システムにおいて接続可能な入出力デバイスの個数を増加させる技術を提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明の変換装置は、ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続され、前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力するアウトバウンド変換部と、前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力するインバウンド変換部と、を有する。
【００１８】
また、本発明のホスト装置は、上述の変換装置および前記入出力スイッチを介して自装置に接続される前記入出力デバイスに対して、前記第１識別情報を付与するデバイス初期化部と、前記入出力デバイスに対して、前記第１識別情報を用いてアクセスするデバイスアクセス部と、を有する。
【００１９】
また、本発明の入出力スイッチシステムは、上述の変換装置と、前記入出力スイッチと、を備える。
【００２０】
また、本発明の情報処理システムは、上述のホスト装置と、上述の変換装置と、前記入出力スイッチと、を備える。
【００２１】
また、本発明の方法は、ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続されるコンピュータ装置を用いて、前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力し、前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力する。
【００２２】
また、本発明のプログラムは、ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続されるコンピュータ装置に、前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力するアウトバウンド変換ステップと、前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力するインバウンド変換ステップと、を実行させる。
【００２３】
また、本発明の他の方法は、コンピュータ装置を用いて、上述の変換装置および前記入出力スイッチを介して自装置に接続される前記入出力デバイスに対して、前記第１識別情報を付与し、前記入出力デバイスに対して、前記第１識別情報を用いてアクセスする。
【発明の効果】
【００２４】
本発明は、導入コストを抑えながら、情報処理システムにおいて接続可能な入出力デバイスの個数を増加させる技術を提供することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の第1の実施の形態としての変換装置の機能ブロック図である。
【図２】本発明の第1の実施の形態としての変換装置のハードウェア構成の一例を示す図である。
【図３】本発明の第1の実施の形態としての変換装置が入出力デバイス宛のパケットを転送する動作を説明するフローチャートである。
【図４】本発明の第1の実施の形態としての変換装置がホスト装置宛のパケットを転送する動作を説明するフローチャートである。
【図５】本発明の第２の実施の形態としてのホスト装置の機能ブロック図である。
【図６】本発明の第２の実施の形態としてのホスト装置のハードウェア構成の一例を示す図である。
【図７】本発明の第２の実施の形態としてのホスト装置の動作を説明するフローチャートである。
【図８】本発明の第３の実施の形態としての情報処理システムの構成を示すブロック図である。
【図９】本発明の第３の実施の形態としての情報処理システムのハードウェア構成の一例を示す図である。
【図１０】本発明の第４の実施の形態としての入出力スイッチシステムの構成を示すブロック図である。
【図１１】本発明の第４の実施の形態としての入出力スイッチシステムのハードウェア構成の一例を示す図である。
【図１２】本発明の第５の実施の形態としての情報処理システムの構成を示すブロック図である。
【図１３】本発明の第５の実施の形態における第1識別情報の構成を説明する図である。
【図１４】本発明の第５の実施の形態における変換装置の機能ブロック図である。
【図１５】本発明の第５の実施の形態におけるＰＣＩｅスイッチの機能ブロック図である。
【図１６】本発明の第５の実施の形態におけるホスト装置の機能ブロック図である。
【図１７】本発明の第５の実施の形態におけるホスト装置の動作を説明するフローチャートである。
【図１８】本発明の第５の実施の形態における変換装置がＰＣＩｅデバイス宛のパケットを転送する動作を説明するフローチャートである。
【図１９】本発明の第５の実施の形態における変換装置がホスト装置宛のパケットを転送する動作を説明するフローチャートである。
【図２０】本発明の第５の実施の形態において送受信されるパケットのヘッダの構成を説明する図である。
【図２１】本発明の第５の実施の形態において送受信される他のパケットのヘッダの構成を説明する図である。
【図２２】本発明の第５の実施の形態において送受信されるさらに他のパケットのヘッダの構成を説明する図である。
【図２３】本発明の第５の実施の形態における変換装置がＰＣＩｅデバイス宛のパケットを転送する動作の具体例を説明するフローチャートである。
【図２４】本発明の第５の実施の形態において第１識別情報が第２識別情報に変換される過程の一例を模式的に説明する図である。
【図２５】本発明の第５の実施の形態における変換装置がホスト装置宛のパケットを転送する動作の具体例を説明するフローチャートである。
【図２６】本発明の第５の実施の形態において第２識別情報が第１識別情報に変換される過程の一例を模式的に説明する図である。
【図２７】図２６に続く模式図である。
【図２８】本発明の第５の実施の形態において各ＰＣＩｅデバイスに付与される第１識別情報の一例を説明する図である。
【図２９】本発明の第５の実施の形態において接続可能なＰＣＩｅデバイスの個数を説明する図である。
【図３０】本発明の第６の実施の形態としての情報処理システムの構成を示すブロック図である。
【図３１】本発明の第６の実施の形態における変換装置の機能ブロック図である。
【図３２】本発明の第６の実施の形態におけるホスト装置の機能ブロック図である。
【図３３】本発明の第６の実施の形態において変換機能が有効であるか否かに基づく変換処理の一例を模式的に説明する図である。
【図３４】本発明の第６の実施の形態におけるホスト装置の動作を説明するフローチャートである。
【図３５】本発明の第６の実施の形態における変換装置がＰＣＩｅデバイス宛のパケットを転送する動作を説明するフローチャートである。
【図３６】本発明の第６の実施の形態における変換装置がホスト装置宛のパケットを転送する動作を説明するフローチャートである。
【図３７】入出力スイッチを介して入出力デバイスが接続される一般的な情報処理システムにおいて入出力デバイスの識別に用いられる情報を説明する図である。
【図３８】入出力スイッチを介して入出力デバイスが接続される一般的な情報処理システムにおいて、入出力デバイスを識別するデバイス識別情報の構成の一例を示す図である。
【図３９】入出力スイッチを介して入出力デバイスが接続される一般的な情報処理システムの構成を示す図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００２７】
（第１の実施の形態）
本発明の第１の実施の形態としての変換装置１０の機能ブロック構成を図１に示す。図１において、変換装置１０は、アウトバウンド変換部１１と、インバウンド変換部１２とを有する。変換装置１０は、ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続される。
【００２８】
ここで、変換装置１０のハードウェア構成の一例を図２に示す。図２において、変換装置１０は、上流ポート１０１と、下流ポート１０２と、ブリッジ回路１０３と、変換回路１０４とを含んで構成される。ブリッジ回路１０３は、上流ポート１０１または下流ポート１０２から入力されるパケットを他方のポートから出力するか否かの制御を行う集積回路である。また、変換回路１０４は、変換装置１０の各機能ブロックを実現する集積回路である。なお、変換装置１０を構成するハードウェア構成は、上述の構成に限定されない。
【００２９】
次に、変換装置１０の各機能ブロックの詳細について説明する。
【００３０】
アウトバウンド変換部１１は、ホスト装置から入力される入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報を第２識別情報に変換する。そして、アウトバウンド変換部１１は、変換した第２識別情報を、当該パケットに含めて入出力スイッチに出力する。なお、第２識別情報を含める位置は、当該パケットにおける宛先の識別子として入出力インタフェースの仕様に基づく識別情報の位置である。
【００３１】
ここで、入出力インタフェースとは、入出力スイッチおよび入出力デバイスが準拠するインタフェースを指すものとする。以下、入出力インタフェースの仕様のことを、単に「仕様」とも記載する。
【００３２】
また、第１識別情報とは、入出力デバイス宛のパケットにおいて、宛先の識別子として仕様に基づく識別情報を構成する各ビットと、ｎ個の追加ビット（ｎは１以上の整数）とからなる情報である。例えば、ｎ個の追加ビットは、宛先の識別子として仕様に基づく識別情報の下位に連続するｎ個のビットであってもよいが、その位置は限定されない。ただし、ｎ個の追加ビットは、仕様に基づくパケットのヘッダにおいて使用されないビットであることが望ましい。
【００３３】
また、第２識別情報は、仕様に基づく識別情報と同一ビット幅の情報である。アウトバウンド変換部１１は、第１識別情報から、第１識別情報に含まれていたｎ個の追加ビットの情報を含むよう、第２識別情報を生成する。
【００３４】
例えば、アウトバウンド変換部は、第１識別情報の上位ｎビットを破棄し、ｎ個の追加ビットを下位ｎビットとして含むよう、第２識別情報を構成してもよい。
【００３５】
具体的には、第１識別情報に含まれる追加ビットが、前述のように、宛先の識別子として仕様に基づく識別情報の下位に連続するｎビットであるとする。この場合、アウトバウンド変換部１１は、パケットから第１識別情報を取り出してｎビット左論理シフトを行ったものを、取り出した第１識別情報の位置に書き戻せばよい。
【００３６】
インバウンド変換部１２は、入出力スイッチから入力されるホスト装置宛のパケットにおいて、送信元の入出力デバイスの識別子として含まれる第２識別情報を、元の第１識別情報に変換する。そして、インバウンド変換部１２は、変換した第１識別情報を、当該パケットに含めてホスト装置に出力する。なお、第１識別情報を含める位置は、当該パケットにおいて送信元の識別子として仕様に基づく識別情報の位置およびｎ個の追加ビットの位置である。
【００３７】
例えば、インバウンド変換部は、アウトバウンド変換部１１により破棄された上位ｎビットを第２識別情報の上位に追加することにより、第１識別情報を構成してもよい。
【００３８】
ここで、変換装置１０より下流に接続される各デバイスに対して付与される第１識別情報の少なくとも上位ｎビットが同一であることが想定されるとする。この場合、インバウンド変換部１２は、そのような上位ｎビットを記憶しておき、変換の際に用いればよい。
【００３９】
具体的には、第１識別情報に含まれる追加ビットが、送信元の識別子として仕様に基づく識別情報の下位に連続するｎビットであるとする。この場合、インバウンド変換部１２は、パケットから第２識別情報およびその下位に連続するｎビットを取り出して、ｎビット右論理シフトを行う。そして、インバウンド変換部１２は、右論理シフトの結果と、記憶している上位ｎビットとの論理和をとったものを、取り出した第２識別情報の位置およびその下位に連続するｎビットの位置に書き戻せばよい。
【００４０】
以上のように構成された変換装置１０の動作について、図面を参照して説明する。
【００４１】
まず、入出力デバイス宛のパケットを転送する動作を図３に示す。図３において、まず、アウトバウンド変換部１１は、入出力デバイス宛のパケットをホスト装置から受信する（ステップＡ１）。
【００４２】
次に、アウトバウンド変換部１１は、受信したパケットから、宛先の識別子としての第１識別情報を取り出す（ステップＡ２）。
【００４３】
次に、アウトバウンド変換部１１は、取り出した第１識別情報に基づいて、ｎ個の追加ビットの情報を含むよう、仕様に基づく識別情報と同一ビット幅の第２識別情報を生成する（ステップＡ３）。
【００４４】
次に、アウトバウンド変換部１１は、生成した第２識別情報を、パケットにおいて宛先の識別子として仕様に基づく識別情報の位置に含める（ステップＡ４）。
【００４５】
そして、アウトバウンド変換部１１は、第２識別情報を含むパケットを、入出力スイッチに出力する（ステップＡ５）。
【００４６】
以上で、変換装置１０は、入出力デバイス宛のパケットを転送する動作を終了する。
【００４７】
次に、ホスト装置宛のパケットを転送する動作を図４に示す。図４において、まず、インバウンド変換部１２は、ホスト装置宛のパケットを入出力スイッチから受信する（ステップＢ１）。
【００４８】
次に、インバウンド変換部１２は、受信したパケットから、送信元の識別子としての第２識別情報を取り出す（ステップＢ２）。
【００４９】
次に、インバウンド変換部１２は、取り出した第２識別情報に基づいて、元の第１識別情報を生成する（ステップＢ３）。
【００５０】
次に、インバウンド変換部１２は、生成した第１識別情報を、パケットにおける送信元の識別子として仕様に基づく識別情報の位置およびｎ個の追加ビットの位置に含める（ステップＢ４）。
【００５１】
そして、インバウンド変換部１２は、第１識別情報を含むパケットを、ホスト装置に出力する（ステップＢ５）。
【００５２】
以上で、変換装置１０は、ホスト装置宛のパケットを転送する動作を終了する。
【００５３】
次に、本発明の第１の実施の形態の効果について述べる。
【００５４】
本発明の第１の実施の形態としての変換装置は、導入コストを抑えながら、情報処理システムに接続可能な入出力デバイスの個数を増加させることができる。
【００５５】
その理由について説明する。本実施の形態の変換装置は、ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続される。そして、ホスト装置から変換装置に入力される入出力デバイス宛のパケットには、宛先の識別子として第１識別情報が含まれる。第１識別情報は、入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビットからなる。そして、アウトバウンド変換部が、第１識別情報を、追加ビットの情報を含むよう、仕様に基づく識別情報と同一ビット幅の第２識別情報に変換する。そして、アウトバウンド変換部が、変換した第２識別情報を、パケットにおける宛先の識別子として仕様に基づく識別情報の位置に含めて、入出力スイッチに出力するからである。
【００５６】
また、インバウンド変換部が、入出力スイッチから入力されるホスト装置宛のパケットにおいて、送信元の入出力デバイスの識別子として含まれる第２識別情報を元の第１識別情報に変換する。そして、インバウンド変換部が、変換した第１識別情報を、パケットにおける送信元の識別子として仕様に基づく識別情報の位置および追加ビットの位置に含めて、ホスト装置に出力するからである。
【００５７】
ここで、第２識別情報は、第１識別情報よりビット幅が短いため、第１識別情報に含まれていた一部の情報が失われていることになる。換言すると、異なる第１識別情報から同一の第２識別情報が生成される可能性がある。しかしながら、アウトバウンド変換部は、追加ビットの情報を含むよう第２識別情報を生成する。そのため、変換装置の下流では、少なくとも追加ビットの情報を用いて入出力デバイスが識別される。このとき、情報処理システムに複数の変換装置が含まれるとする。この場合、ある変換装置の下流において、他の変換装置の下流で用いられる第２識別情報と同一の第２識別情報が用いられるとしても、ホスト装置から変換装置までの転送経路が正しければ、パケットは正しい宛先に転送される。そして、このように構成した場合、ホスト装置は、仕様に基づく識別情報より高ビット幅の第１識別情報を用いて入出力デバイスを識別できる。その結果、本実施の形態は、情報処理システムにおいて接続可能な入出力デバイスの個数を増加させることができる。
【００５８】
しかも、本実施の形態では、入出力スイッチおよび入出力デバイスは、自装置の識別情報として、仕様に基づく識別情報と同等の第２識別情報を用いて動作すればよい。そのため、入出力スイッチおよび入出力デバイスとしては、一般的な入出力スイッチおよび入出力デバイスを適用可能である。したがって、本実施の形態は、本実施の形態の変換装置をホスト装置および入出力スイッチの間に適用すればよく、導入コストを抑えることができる。
【００５９】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。本発明の第２の実施の形態では、本発明の第１の実施の形態としての変換装置を用いて入出力デバイスが接続されるホスト装置の一例について説明する。なお、本実施の形態の説明において参照する各図面において、本発明の第１の実施の形態と同一の構成および同様に動作するステップには同一の符号を付して本実施の形態における詳細な説明を省略する。
【００６０】
まず、本発明の第２の実施の形態としての構成を図５に示す。図５において、ホスト装置２０は、デバイス初期化部２１と、デバイスアクセス部２２とを有する。また、ホスト装置２０は、本発明の第１の実施の形態としての変換装置１０に接続される。
【００６１】
ここで、ホスト装置２０のハードウェア構成の一例を図６に示す。図６において、ホスト装置２０は、プロセッサ２０１と、メモリ２０２と、入出力インタフェース２０３とを含んで構成される。プロセッサ２０１は、メモリ２０２に格納されたプログラムを読み込んで実行することにより、入出力インタフェース２０３を介して入出力デバイスとの通信を行う。入出力インタフェース２０３は、変換装置１０に接続し、入出力デバイスとの通信を行うインタフェースである。この場合、ホスト装置２０の各機能ブロックは、メモリ２０２に記憶されたプログラムを読み込んで実行するプロセッサ２０１によって構成される。
【００６２】
次に、ホスト装置２０の機能の詳細について説明する。
【００６３】
デバイス初期化部２１は、変換装置１０に接続される入出力スイッチを介して自装置に接続される入出力デバイスに対して、第１識別情報を付与する。
【００６４】
デバイスアクセス部２２は、入出力デバイスに対して、第１識別情報を用いてアクセスする。
【００６５】
なお、これらの機能ブロックは、メモリ２０２に記憶されたファームウェアやオペレーティングシステムが、プロセッサ２０１によって読み込まれて実行されることにより実現される。
【００６６】
以上のように構成されたホスト装置２０の動作について、図７を参照して説明する。
【００６７】
図７において、まず、デバイス初期化部２１は、変換装置１０に接続される入出力スイッチを介して自装置に接続される入出力デバイスに対して、第１識別情報を付与する（ステップＣ１）。
【００６８】
以降、デバイスアクセス部２２は、自装置に接続される入出力デバイスに対して、第１識別情報を用いてアクセスする（ステップＣ２）。
【００６９】
以上で、ホスト装置２０の動作の説明を終了する。
【００７０】
次に、本発明の第２の実施の形態の効果について述べる。
【００７１】
本実施の形態のホスト装置は、導入コストを抑えながら、自装置が含まれる情報処理システムに接続可能な入出力デバイスの個数を増加させることができる。その理由について説明する。本実施の形態は、本発明の第１の実施の形態としての変換装置に接続される。そして、デバイス初期化部が、変換装置に接続される入出力スイッチを介して自装置に接続される入出力デバイスに対して、第１識別情報を付与する。そして、デバイスアクセス部が、入出力デバイスに対して、第１識別情報を用いてアクセスするからである。
【００７２】
これにより、本実施の形態のホスト装置は、仕様に基づく識別情報より高ビット幅の第１識別情報を用いて、入出力デバイスを識別できる。その結果、情報処理システムに接続可能な入出力デバイスの個数が増加する。
【００７３】
（第３の実施の形態）
次に、本発明の第３の実施の形態について説明する。本発明の第３の実施の形態では、本発明の第１および第２の実施の形態を含む情報処理システムについて説明する。なお、本実施の形態の説明において参照する各図面において、本発明の第１〜第２の実施の形態と同一の構成および同様に動作するステップには同一の符号を付して本実施の形態における詳細な説明を省略する。
【００７４】
まず、本発明の第３の実施の形態としての情報処理システム３の機能ブロック構成を図８に示す。図８において、情報処理システム３は、本発明の第２の実施の形態としてのホスト装置２０と、本発明の第１の実施の形態としての変換装置１０と、入出力スイッチ３０とを含む。１つのホスト装置２０には、１つ以上の変換装置１０が接続される。また、各変換装置１０には、１つの入出力スイッチ３０が接続される。また、各入出力スイッチ３０には、１つ以上の入出力デバイスが接続可能となっている。
【００７５】
なお、図８では、１つのホスト装置２０が示されているが、この数は限定されない。例えば、情報処理システム３は、複数のホスト装置２０を含み、各ホスト装置２０に、変換装置１０および入出力スイッチ３０の組合せが１つ以上接続されてもよい。また、図８では、１つのホスト装置２０に対して、変換装置１０および入出力スイッチ３０の組合せが２つ接続されているが、１つのホスト装置２０に接続されるこの組合せの数は限定されない。また、図８では、１つの入出力スイッチ３０に２つの入出力デバイスが接続される例が示されているが、接続可能な入出力デバイスの個数は限定されない。ただし、これらの個数は、情報処理システム３全体で接続可能な入出力デバイスの個数が、本実施の形態における第１識別情報に基づき識別可能な個数までとなるよう限定される。
【００７６】
ここで、情報処理システム３のハードウェア構成の一例について、図９を参照して説明する。図９において、変換装置１０およびホスト装置２０のハードウェア構成は、図２および図６を用いて説明した通りであるため、説明を省略する。ここでは、入出力スイッチ３０のハードウェア構成について説明する。
【００７７】
図９において、入出力スイッチ３０は、上流ポート３０１と、複数の下流ポート３０２と、入出力スイッチ回路３０３とを含む。上流ポート３０１は、変換装置１０に接続される。また、下流ポート３０２は、それぞれ入出力デバイスを接続可能となっている。また、入出力スイッチ回路３０３は、上流ポート３０１と複数の下流ポート３０２との間でパケットの転送を制御するため集積回路であり、階層的に接続される複数の仮想ブリッジ３１を実現する。
【００７８】
なお、情報処理システム３を構成するハードウェア構成は、上述の構成に限定されない。
【００７９】
次に、入出力スイッチ３０の機能について説明する。入出力スイッチ３０は、変換装置１０から入力される入出力デバイス宛のパケットを、第２識別情報に基づき適切な下流ポート３０２から出力する。また、入出力スイッチ３０は、入出力デバイスから入力されるホスト装置２０宛のパケットを、変換装置１０に出力する。
【００８０】
以上のように構成された情報処理システム３において、変換装置１０は、本発明の第１の実施の形態で説明したように動作する。また、ホスト装置２０は、本発明の第２の実施の形態で説明したように動作する。
【００８１】
次に、本発明の第３の実施の形態の効果について述べる。
【００８２】
本発明の第３の実施の形態としての情報処理システムは、導入コストを抑えながら、情報処理システムに接続可能な入出力デバイスの個数を増加させることができる。その理由は、本発明の第１および第２の実施の形態で述べたとおりである。
【００８３】
（第４の実施の形態）
次に、本発明の第４の実施の形態について説明する。本発明の第４の実施の形態では、本発明の第１の実施の形態を含む入出力スイッチシステムについて説明する。なお、本実施の形態の説明において参照する各図面において、本発明の第１〜第３の実施の形態と同一の構成および同様に動作するステップには同一の符号を付して本実施の形態における詳細な説明を省略する。
【００８４】
まず、本発明の第４の実施の形態としての入出力スイッチシステム４の構成を図１０に示す。図１０において、入出力スイッチシステム４は、本発明の第１の実施の形態としての変換装置１０と、本発明の第３の実施の形態における入出力スイッチ３０とを含む。変換装置１０は、ホスト装置に接続される。入出力スイッチ３０には、１つ以上の入出力デバイスを接続可能である。
【００８５】
ここで、入出力スイッチシステム４のハードウェア構成の一例について、図１１を参照して説明する。図１１において、変換装置１０および入出力スイッチ３０のハードウェア構成は、図２および図９を用いて説明した通りであるため、説明を省略する。なお、入出力スイッチシステム４において、変換装置１０および入出力スイッチ３０は、物理的に同一の基板上に構成されてもよい。
【００８６】
以上のように構成された入出力スイッチシステム４において、変換装置１０は、本発明の第１の実施の形態で説明したように動作する。入出力スイッチ３０は、本発明の第３の実施の形態で説明したように動作する。
【００８７】
次に、本発明の第４の実施の形態の効果について述べる。
【００８８】
本発明の第４の実施の形態としての入出力スイッチシステムは、導入コストを抑えながら、情報処理システムにおいて接続可能な入出力デバイスの個数を増加させることができる。その理由については、本発明の第１の実施の形態で説明した通りである。
【００８９】
なお、もし、本実施の形態を物理的に同一の基板として構成した場合、本実施の形態は、ホスト装置に対して、一般的な入出力スイッチの代わりに接続可能である。このため、本実施の形態は、システム構成を複雑にすることがなく、導入をより容易にすることができる。
【００９０】
（第５の実施の形態）
次に、本発明の第５の実施の形態について説明する。本発明の第５の実施の形態では、本発明における入出力インタフェースとして、ＰＣＩｅを適用した例について説明する。なお、本実施の形態の説明において参照する各図面において、本発明の第１〜第４の実施の形態と同一の構成および同様に動作するステップには同一の符号を付して本実施の形態における詳細な説明を省略する。
【００９１】
まず、本発明の第５の実施の形態としての情報処理システム５の構成を図１２に示す。図１２において、情報処理システム５は、変換装置５０と、ホスト装置６０と、ＰＣＩｅスイッチ７０とを含む。変換装置５０は、ホスト装置６０とＰＣＩｅスイッチ７０とに接続される。ＰＣＩｅスイッチ７０には、１つ以上のＰＣＩｅデバイスが接続される。なお、ＰＣＩｅスイッチ７０は、本発明における入出力スイッチの一実施形態を構成する。また、ＰＣＩｅデバイスは、本発明に接続される入出力デバイスの一実施形態を構成する。なお、変換装置５０およびＰＣＩｅスイッチ７０は、本発明の入出力スイッチシステムの一実施形態として、物理的に一体に構成されていてもよい。
【００９２】
ここで、情報処理システム５は、ホスト装置６０に対して、変換装置５０およびＰＣＩｅスイッチ７０の組合せを、１つ以上接続した構成であってもよい。また、図１２では、１つのＰＣＩｅスイッチ７０に２つのＰＣＩｅデバイスが接続される例が示されているが、接続可能なＰＣＩｅデバイスの個数は限定されない。また、図１２では、１つのホスト装置６０に接続される変換装置５０およびＰＣＩｅスイッチ７０の組合せを２つ示しているが、この組合せの個数は限定されない。ただし、これらの個数は、情報処理システム５全体で接続可能なＰＣＩｅデバイスの個数が、本実施の形態における第１識別情報に基づき識別可能な個数までとなるよう限定される。
【００９３】
なお、情報処理システム５のハードウェア構成は、図９を用いて本発明の第３の実施の形態で説明した通りである。ただし、図９に示した各ハードウェア要素として、ＰＣＩｅに準拠するハードウェア要素が採用されているものとする。
【００９４】
本実施の形態では、ホスト装置６０からＰＣＩｅデバイス宛のパケットに含まれる宛先の第１識別情報として、ＰＣＩｅにおいて各バスに付与されるバス番号と、デバイス番号の上位ｎビットとが用いられる。つまり、バス番号は、本発明における「仕様に基づく識別情報」の一実施形態である。また、デバイス番号の上位ｎビットは、本発明における「ｎ個の追加ビット」」の一実施形態である。
【００９５】
ここで、第１識別情報およびｎ個の追加ビットの構成を、図１３を用いて説明する。図１３において、ＰＣＩから継承されたデバイス識別情報の構成は、図３８を参照して背景技術で説明したように、バス番号８ビットと、デバイス番号５ビットと、ファンクション番号３ビットとからなる。ただし、背景技術で述べたように、ＰＣＩｅでは、事実上バス番号のみによってデバイスが識別されることになり、デバイス番号は、デバイスの識別に寄与していない。なお、ファンクション番号は、背景技術で述べたように、１つのデバイスに含まれる機能を識別する情報であるため、デバイス自体の識別には寄与していない。
【００９６】
そこで、図１３に示すように、第１識別情報は、このようなデバイス識別情報において、バス番号８ビットと、デバイス番号の上位１ビットとによって構成されていてもよい。つまり、図１３の例では、追加ビットの個数ｎとして、１が適用されている。ただし、この場合、ホスト装置６０に接続されるＰＣＩｅデバイスが有するデバイス番号が、デバイス番号の残り４ビットで表される範囲であることが前提となる。なお、デバイス番号は、通常、デバイスのメーカ等によって割り当てられている。
【００９７】
次に、変換装置５０の機能ブロックの詳細を、図１４を参照して説明する。図１４において、変換装置５０は、アウトバウンド変換部５１と、インバウンド変換部５２と、仮想ＰＣＩブリッジ５３とを有する。なお、アウトバウンド変換部５１および仮想ＰＣＩブリッジ５３は、本発明におけるアウトバウンド変換部の一実施形態として構成される。また、インバウンド変換部５２および仮想ＰＣＩブリッジ５３は、本発明におけるインバウンド変換部の一実施形態として構成される。
【００９８】
仮想ＰＣＩブリッジ５３は、ホスト装置６０から入力されるアウトバウンドＴＬＰ（Transaction Layer Packet）が自装置の下流に流すパケットであれば、アウトバウンド変換部５１に出力する。自装置の下流に流すパケットであるか否かは、自装置の下流に接続されるバスであるセカンダリバス番号に基づいて判定可能である。なお、変換装置５０は、セカンダリバス番号を記憶しているものとする。また、仮想ＰＣＩブリッジ５３は、インバウンド変換部５２から入力されるインバウンドＴＬＰを、ホスト装置６０に出力する。
【００９９】
アウトバウンド変換部５１は、アウトバウンドＴＬＰに宛先の識別子として含まれる第１識別情報から、バス番号の上位ｎビットを破棄し、デバイス番号の上位ｎビットを下位ｎビットとして含むよう、第２識別情報に変換する。そして、アウトバウンド変換部５１は、変換した第２識別情報を、アウトバウンドＴＬＰの第１識別情報が含まれていた箇所のバス番号の位置に含める。
【０１００】
具体的には、アウトバウンド変換部５１は、アウトバウンドＴＬＰに含まれる宛先を示すデバイス識別情報の中から、第１識別情報を取り出す。そして、アウトバウンド変換部５１は、第1識別情報のバス番号の上位ｎビットを破棄し、デバイス番号の上位ｎビットを下位ｎビットとして含むよう、第２識別情報に変換する。そして、アウトバウンド変換部５１は、変換した第２識別情報を、アウトバウンドＴＬＰにおいて宛先を示すデバイス識別情報のバス番号の位置に含めればよい。
【０１０１】
インバウンド変換部５２は、自装置のセカンダリバスについて記憶しているバス番号の上位ｎビットを用いて、第２識別情報を第１識別情報に変換する。これは、自装置より下流の各バスに少なくとも上位ｎビットが同一の第１識別情報が付与されることを前提としている。そして、インバウンド変換部５２は、変換した第１識別情報を、インバウンドＴＬＰの第２識別情報が含まれていた箇所であるバス番号の位置およびそれに続くｎビットの位置に含める。
【０１０２】
具体的には、インバウンド変換部５２は、インバウンドＴＬＰに含まれる送信元を示すデバイス識別情報の中から、第２識別情報を取り出す。そして、インバウンド変換部５２は、第２識別情報の上位に、セカンダリバス番号の上位ｎビットを追加することにより、第１識別情報に変換する。そして、インバウンド変換部５２は、変換した第１識別情報を、インバウンドＴＬＰにおいて送信元を示すデバイス識別情報のバス番号の位置およびデバイス番号の上位ｎビットの位置に含めればよい。
【０１０３】
次に、ＰＣＩｅスイッチ７０の機能について説明する。図１５に示すように、ＰＣＩｅスイッチ７０は、複数の仮想ＰＣＩブリッジ７１によって構成される。例えば、ＰＣＩｅスイッチ７０は、上流ポート３０１に接続する仮想ＰＣＩブリッジ７１と、下流ポート３０２に接続する複数の仮想ＰＣＩブリッジ７１とを含む。この例では、下流ポート３０２に接続する各仮想ＰＣＩブリッジ７１は、上流ポート３０１に接続する仮想ＰＣＩブリッジ７１に接続されている。なお、ＰＣＩｅスイッチ７０が有する仮想ＰＣＩブリッジ７１の個数およびその接続関係は、図１５に示すものに限定されない。
【０１０４】
各仮想ＰＣＩブリッジは、仮想的な上流ポートおよび下流ポートを有し、一方のポートから入力されたＴＬＰに含まれる宛先の識別子に基づいて、そのＴＬＰを通過させる（すなわち、他方のポートから出力する）か否かを決定する。
【０１０５】
なお、ＰＣＩｅスイッチ７０としては、一般的なＰＣＩｅスイッチを適用可能であるため、各仮想ＰＣＩブリッジの詳細な構成および動作の説明を省略する。
【０１０６】
次に、ホスト装置６０の機能について説明する。図１６に示すように、ホスト装置６０は、デバイス初期化部６１と、デバイスアクセス部６２とを有する。
【０１０７】
デバイス初期化部６１は、情報処理システム５の初期化時に、各ＰＣＩｅスイッチ７０や各ＰＣＩｅデバイスに、バス番号の８ビットおよびデバイス番号の上位ｎビットを組み合わせた第１識別情報を付与する。
【０１０８】
デバイスアクセス部６２は、第１識別情報を用いて、各ＰＣＩｅデバイスにアクセスする。
【０１０９】
なお、これらの機能ブロックは、メモリ２０２に記憶されたファームウェアやオペレーティングシステムが、プロセッサ２０１によって読み込まれて実行されることにより実現される。
【０１１０】
以上のように構成された情報処理システム５の動作について説明する。
【０１１１】
まず、ホスト装置６０の動作を、図１７に示す。
【０１１２】
図１７において、デバイス初期化部６１は、情報処理システム５の初期化時に、各ＰＣＩｅスイッチ７０や各ＰＣＩｅデバイスに、バス番号の８ビットおよびデバイス番号の上位ｎビットを組み合わせた第１識別情報を付与する（ステップＣ５１）。
【０１１３】
以降、デバイスアクセス部６２は、第１識別情報を用いて、ＰＣＩｅデバイスにアクセスする（ステップＣ５２）。
【０１１４】
具体的には、デバイスアクセス部６２は、アクセス対象となるＰＣＩｅデバイスの第１識別情報を、アウトバウンドＴＬＰのヘッダにおける宛先の識別子として含めて、変換装置５０に対して送信する。また、デバイスアクセス部６２は、受信したインバウンドＴＬＰのヘッダにおける送信元の識別子に含まれる第１識別情報を認識して、送信元のＰＣＩｅデバイスを識別する。
【０１１５】
以上で、ホスト装置６０の動作の説明を終了する。
【０１１６】
次に、アウトバウンドＴＬＰを転送する変換装置５０の動作を図１８に示す。
【０１１７】
図１８では、まず、仮想ＰＣＩブリッジ５３は、アウトバウンドＴＬＰをホスト装置６０から受信し、アウトバウンド変換部５１に出力する（ステップＡ５１）。
【０１１８】
次に、アウトバウンド変換部５１は、アウトバウンドＴＬＰから、宛先の識別子に含まれる第１識別情報であるバス番号およびデバイス番号の上位ｎビットを取り出す（ステップＡ５２）。
【０１１９】
次に、アウトバウンド変換部５１は、バス番号の上位ｎビットを破棄し、デバイス番号の上位ｎビットを下位ｎビットとして含むよう構成した第２識別情報を生成する（ステップＡ５３）。
【０１２０】
次に、アウトバウンド変換部５１は、生成した第２識別情報を、アウトバウンドＴＬＰにおける宛先の識別子のバス番号の位置に含める（ステップＡ５４）。
【０１２１】
そして、アウトバウンド変換部５１は、宛先の識別子として第２識別情報を含めたアウトバウンドＴＬＰを、ＰＣＩｅスイッチ７０に出力する（ステップＡ５５）。
【０１２２】
以上で、変換装置５０は、アウトバウンドＴＬＰを転送する動作を終了する。
【０１２３】
また、アウトバウンドＴＬＰを受信したＰＣＩｅデバイスは、自装置を識別する第２識別情報をヘッダに含めたインバウンドＴＬＰを、ホスト装置６０に向けて送信する。
【０１２４】
そこで、インバウンドＴＬＰを転送する変換装置５０の動作を図１９に示す。図１９において、まず、インバウンド変換部５２は、インバウンドＴＬＰをＰＣＩｅスイッチ７０から受信する（ステップＢ５１）。
【０１２５】
次に、インバウンド変換部５２は、インバウンドＴＬＰから、送信元の識別子に含まれる第２識別情報であるバス番号を取り出す（ステップＢ５２）。
【０１２６】
次に、インバウンド変換部５２は、取り出した第２識別情報の上位に、自装置で記憶しているセカンダリバス番号の上位ｎビットを追加して、第１識別情報を生成する（ステップＢ５３）。
【０１２７】
次に、インバウンド変換部５２は、生成した第１識別情報を、インバウンドＴＬＰにおける送信元の識別子のバス番号の位置およびデバイス番号の上位ｎビットの位置に含める（ステップＢ５４）。
【０１２８】
そして、インバウンド変換部５２は、送信元の識別子として第１識別情報を含むインバウンドＴＬＰを、仮想ＰＣＩブリッジ５３に出力する（ステップＢ５５）。
【０１２９】
そして、仮想ＰＣＩブリッジ５３は、インバウンドＴＬＰをホスト装置６０に出力する（ステップＢ５６）。
【０１３０】
以上で、変換装置５０は、インバウンドＴＬＰを転送する動作を終了する。
【０１３１】
次に、変換装置５０の動作の具体例を、図面を用いて説明する。
【０１３２】
ここでは、図１３に示したように、追加ビットの個数ｎとして１が採用されているとする。
【０１３３】
また、具体例の説明にあたり、ＰＣＩｅにおけるＴＬＰヘッダの構成について説明しておく。ＰＣＩｅで送受信されるＴＬＰには、メモリリード／ライト、コンフィグレーションリード／ライト等の要求（リクエスト）と、リクエストに対する応答（コンプリーション）がある。ＴＬＰの種類によってヘッダの構成が異なる。
【０１３４】
図２０は、メモリリード要求に使用されるＴＬＰヘッダの一例である。このＴＬＰヘッダにおいて、バイト４、５の「Requester ID」には、要求元の識別子が格納される。つまり、ＰＣＩｅデバイスからのメモリリード要求において、「Requester ID」には、当該ＰＣＩｅデバイスの第２識別情報を含む情報が格納される。
【０１３５】
また、図２１は、コンフィグレーションリード／ライト要求に使用されるＴＬＰヘッダである。このＴＬＰヘッダにおいて、バイト４、５の「Requester ID」には、要求元の識別子が格納される。つまり、ＰＣＩｅデバイスからのコンフィグレーションリード／ライト要求において、「Requester ID」には、当該ＰＣＩｅデバイスの第２識別情報を含む情報が格納される。また、バイト８、９の「バス番号、デバイス番号、ファンクション番号」には、要求先の識別子が格納される。つまり、ホスト装置６０からのコンフィグレーションリード／ライト要求において、「バス番号、デバイス番号、ファンクション番号」には、要求先のＰＣＩｅデバイスの第１識別情報を含む情報が格納される。
【０１３６】
また、図２２は、各要求に対する応答で使用されるＴＬＰヘッダである。このＴＬＰヘッダにおいて、バイト４、５の「Completer ID」には、要求の応答元の識別子が格納される。つまり、ＰＣＩｅデバイスからの応答において、「Completer ID」には、当該ＰＣＩｅデバイスの第２識別情報を含む情報が格納される。また、バイト８、９の「Requester ID」には、要求元の識別子が格納される。つまり、ＰＣＩｅデバイスからの要求に対するホスト装置６０からの応答である場合、「Requester ID」には、当該ＰＣＩｅデバイスの第１識別情報を含む情報が格納される。
【０１３７】
なお、図２０〜２２において、「Requester ID」および「Completer ID」の構成は、図３８に示したデバイス識別情報と同様である。
【０１３８】
このように、アウトバウンドＴＬＰのうち、メモリリード／ライト要求には、宛先となるＰＣＩｅデバイスの第１識別情報が含まれない。コンフィグレーションリード／ライト要求またはコンプリーションには、バイト８、９に、宛先となるＰＣＩｅデバイスの第１識別情報が含まれる。そこで、アウトバウンド変換部５１は、受信したアウトバウンドＴＬＰが、コンフィグレーションリード／ライト要求またはコンプリーションである場合に、ヘッダのバイト８、９からデバイス識別情報を取り出し、変換処理を行えばよい。また、アウトバウンド変換部５１は、受信したアウトバウンドＴＬＰが、コンフィグレーションリード／ライト要求またはコンプリーション以外である場合には、変換処理を行わずにそのまま下流に流せばよい。
【０１３９】
この場合、アウトバウンド変換部５１の動作の具体例を、図２３および図２４を参照しながら説明する。なお、この具体例において、アウトバウンド変換部５１は、内部に、それぞれ２バイト長のレジスタＡおよびＢを有するものとする。
【０１４０】
図２３において、アウトバウンド変換部５１は、仮想ＰＣＩブリッジ５３によってステップＡ５１で受信されたアウトバウンドＴＬＰが、コンフィグレーションリード／ライト要求またはコンプリーションであるか否かを判断する（ステップＡ５２１）。
【０１４１】
ここで、コンフィグレーションリード／ライト要求またはコンプリーションであった場合について説明する（ステップＡ５２１でＹｅｓ）。
【０１４２】
この場合、アウトバウンド変換部５１は、アウトバウンドＴＬＰのヘッダのバイト８、９から、バス番号、デバイス番号およびファンクション番号を取り出して、レジスタＡおよびＢに格納する（ステップＡ５２２）。レジスタＡ、Ｂに格納されるデータは、図２４の符号５０１が示す通りである。
【０１４３】
なお、ステップＡ５２１〜Ａ５２２は、図１８のステップＡ５２の具体例に相当する。
【０１４４】
次に、アウトバウンド変換部５１は、レジスタＡを１ビット左論理シフトした上で、０ｘＦＦ００との論理積を、レジスタＡに格納する（ステップＡ５３１）。
【０１４５】
これにより、図２４の符号５０２に示すように、元のバス番号の下位７ビットに元のデバイス番号の上位１ビットが連結された８ビット（すなわち第２識別情報）が、レジスタＡの上位８ビットに格納される。
【０１４６】
次に、アウトバウンド変換部５１は、レジスタＢと０ｘ００７Ｆとの論理積を、レジスタＢに格納する（ステップＡ５３２）。
【０１４７】
これにより、図２４の符号５０３に示すように、デバイス番号の下位４ビットと、ファンクション番号３ビットとが、レジスタＢの下位７ビットに格納される。
【０１４８】
次に、アウトバウンド変換部５１は、レジスタＡおよびレジスタＢの論理和をレジスタＡに格納する（ステップＡ５３３）。
【０１４９】
これにより、図２４の符号５０４に示すように、第２識別情報と、元のデバイス番号の下位４ビットと、ファンクション番号とが、レジスタＡに格納される。
【０１５０】
なお、ステップＡ５３１〜Ａ５３３は、図１８のステップＡ５３の具体例に相当する。
【０１５１】
次に、アウトバウンド変換部５１は、レジスタＡを、アウトバウンドＴＬＰのヘッダのバイト８、９に格納する（ステップＡ５４）。
【０１５２】
そして、アウトバウンド変換部５１は、アウトバウンドＴＬＰを、下流ポート１０２に送信する（ステップＡ５５）。
【０１５３】
一方、受信されたアウトバウンドＴＬＰがコンフィグレーションリード／ライト要求でもコンプリーションでもない場合（ステップＡ５２１でＮｏ）について説明する。この場合、アウトバウンド変換部５１は、ステップＡ５５を実行し、受信されたアウトバウンドＴＬＰをそのまま下流ポート１０２に送信する。
【０１５４】
このように、変換後のアウトバウンドＴＬＰでは、ホスト装置６０から受信したアウトバウンドＴＬＰに含まれていたデバイス番号のＭＳＢ（Most Significant Bit）が、バス番号のＬＳＢ（Least Significant Bit）となっている。また、デバイス番号のＭＳＢは、０に固定されている。
【０１５５】
以上で、アウトバウンド変換部５１の動作の具体例の説明を終了する。
【０１５６】
次に、この具体例におけるインバウンド変換部５２の動作を、図２５〜図２７を参照しながら説明する。
【０１５７】
なお、インバウンド変換部５２の変換動作において必要となるセカンダリバスのバス番号は、仮想ＰＣＩブリッジ５３のコンフィグレーションレジスタのｂｙｔｅ０ｘ１８に格納されているものとする。また、コンフィグレーションレジスタのｂｙｔｅ０ｘ１９には、プライマリバスのバス番号が格納されている。
【０１５８】
また、インバウンドＴＬＰは、その種類に関わらず、ヘッダのバイト４、５にＰＣＩｅデバイスの第２識別情報を含む。したがって、インバウンド変換部５２は、インバウンドＴＬＰの種類に応じて分岐処理をする必要はない。
【０１５９】
また、この具体例において、インバウンド変換部５２は、内部に、それぞれ２バイト長のレジスタＡ、ＢおよびＣを有するものとする。
【０１６０】
図２５において、まず、インバウンド変換部５２は、ステップＢ５１で受信されたインバウンドＴＬＰのバイト４、５から、バス番号、デバイス番号およびファンクション番号を取り出して、レジスタＡおよびＢに格納する（ステップＢ５２）。レジスタＡ、Ｂに格納されるデータは、図２６の符号６０１が示す通りである。
【０１６１】
次に、インバウンド変換部５２は、レジスタＡを１ビット右論理シフトした上で、０ｘ７Ｆ８０との論理積を、レジスタＡに格納する（ステップＢ５３１）。
【０１６２】
これにより、図２６の符号６０２に示すように、レジスタＡにおいて、第１識別情報の下位８ビットの位置に、第２識別情報が格納される。
【０１６３】
次に、インバウンド変換部５２は、レジスタＢと０ｘ００７Ｆの論理積を、レジスタＢに格納する（ステップＢ５３２）。
【０１６４】
これにより、図２６の符号６０３に示すように、インバウンドＴＬＰに含まれていたデバイス番号の下位４ビットおよびファンクション番号３ビットが、レジスタＢに格納される。
【０１６５】
次に、インバウンド変換部５２は、自装置の仮想ＰＣＩブリッジ５３のコンフィグレーションレジスタのバイト０ｘ１８および０ｘ１９を読み出して、レジスタＣに格納する（ステップＢ５３３）。
【０１６６】
これにより、図２７の符号６０４に示すように、セカンダリバス番号およびプライマリバス番号が、レジスタＣに格納される。
【０１６７】
次に、インバウンド変換部５２は、レジスタＣと０ｘ８０００との論理積を、レジスタＣに格納する（ステップＢ５３４）。
【０１６８】
これにより、図２７の符号６０５に示すように、セカンダリバス番号のＭＳＢ（図２７において「Ｖ」と記載）が、レジスタＣに格納される。第１識別情報におけるバス番号のＭＳＢに変更がなければ、セカンダリバス番号のＭＳＢと、第１識別情報におけるバス番号のＭＳＢは同一である。
【０１６９】
次に、インバウンド変換部５２は、レジスタＡ、ＢおよびＣの論理和を、レジスタＡに格納する（ステップＢ５３５）。
【０１７０】
これにより、図２７の符号６０６に示すように、元の第１識別情報と、デバイス番号の下位４ビットおよびファンクション番号とが、レジスタＣに格納される。
【０１７１】
なお、ステップＢ５３１〜Ｂ５３５は、図１９のステップＢ５３の具体例に相当する。
【０１７２】
次に、インバウンド変換部５２は、インバウンドＴＬＰのヘッダのバイト４、５に、レジスタＡの値を格納する（ステップＢ５４）。
【０１７３】
次に、インバウンド変換部５２は、インバウンドＴＬＰを仮想ＰＣＩブリッジ５３に送信し、仮想ＰＣＩブリッジ５３は、インバウンドＴＬＰを上流ポート１０１に送信する（ステップＢ５５〜Ｂ５６）。
【０１７４】
以上で、インバウンド変換部５２の動作の具体例の説明を終了する。
【０１７５】
次に、情報処理システム５において、接続可能なＰＣＩｅデバイスの個数の具体例について、図２８〜図２９を参照して説明する。
【０１７６】
図２８の例では、ホスト装置６０に接続された１つの変換装置５０に、４つのＰＣＩｅデバイスｄ１〜ｄ４を接続可能なＰＣＩｅスイッチ７０が接続されている。ＰＣＩｅスイッチ７０において上流ポート３０１に接続される仮想ＰＣＩブリッジ７１を、仮想ＰＣＩブリッジ７１＿０と記載する。また、４つの下流ポート３０２に接続される仮想ＰＣＩブリッジ７１を、仮想ＰＣＩブリッジ７１＿１〜７１＿４と記載する。
【０１７７】
また、図２８において、変換装置５０およびＰＣＩｅスイッチ７０の組合せを、ＰＣＩｅボックス５００として表記している。ＰＣＩｅボックス５００は、本発明の入出力スイッチシステムの一実施形態である。
【０１７８】
また、図２８の例では、ホスト装置６０によって各バスに図示の第１識別情報が付与されているとする。なお、図２８では、第１識別情報を、「Ｂｕｓ＃／Ｄｅｖ＝ｂｂ／ｄｘ」として表記している。「ｂｂ」は、デバイス識別情報における８ビットのバス番号を１６進数で表したものである。また、「ｄｘ」のうち左側の「ｄ」は、デバイス識別情報におけるデバイス番号のＭＳＢを表し、０または１である。なお、「ｄ」として、０または１の代わりに「ｘ」を表記したものは、０または１のどちらもとり得ることを表している。また、「ｄｘ」のうち右側の「ｘ」は、デバイス識別情報におけるデバイス番号の下位４ビットとしての任意の値を表している。また、図２８において、第１識別情報の下部に、対応する第２識別情報を「Ｂｕｓ＃＝ｂｂ」と表記している。ただし、ホスト装置６０および変換装置５０間を結ぶバスに付与される識別情報は変換対象ではないため、デバイス識別情報におけるバス番号「Ｂｕｓ＃＝ｂｂ」のみを表示している。
【０１７９】
このとき、Ｂｕｓ＃００は、ホスト装置６０内で消費される。また、ホスト装置６０および変換装置５０を結ぶバスに、Ｂｕｓ＃０１が付与されている。
【０１８０】
また、変換装置５０および仮想ＰＣＩブリッジ７１＿０とを結ぶバスには、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０２／０ｘ」が付与されている。この第１識別情報が、変換装置５０によって変換された第２識別情報は、「Ｂｕｓ＃＝０４」である。
【０１８１】
また、仮想ＰＣＩブリッジ７１＿０および各仮想ＰＣＩブリッジ７１＿１〜７１＿４を結ぶバスには、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０２／１ｘ」が付与されている。この第１識別情報が、変換装置５０によって変換された第２識別情報は、「Ｂｕｓ＃＝０５」である。
【０１８２】
また、仮想ＰＣＩブリッジ７１＿１およびＰＣＩｅデバイスｄ１を結ぶバスには、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０４／ｘｘ」の２つが占有可能に付与されている。この第１識別情報が、変換装置５０によって変換された第２識別情報は、「Ｂｕｓ＃＝０８」から「Ｂｕｓ＃＝０９」までとなる。
【０１８３】
また、仮想ＰＣＩブリッジ７１＿２およびＰＣＩｅデバイスｄ２を結ぶバスには、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０５／ｘｘ」が占有可能に付与されている。この第１識別情報が、変換装置５０によって変換された第２識別情報は、「Ｂｕｓ＃＝０Ａ」から「Ｂｕｓ＃＝０Ｂ」までとなる。
【０１８４】
また、仮想ＰＣＩブリッジ７１＿３およびＰＣＩｅデバイスｄ３を結ぶバスには、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０６／ｘｘ」が占有可能に付与されている。この第１識別情報が、変換装置５０によって変換された第２識別情報は、「Ｂｕｓ＃＝０Ｃ」から「Ｂｕｓ＃＝０Ｄ」までとなる。
【０１８５】
また、仮想ＰＣＩブリッジ７１＿４およびＰＣＩｅデバイスｄ４を結ぶバスには、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０７／ｘｘ」が占有可能に付与されている。この第１識別情報が、変換装置５０によって変換された第２識別情報は、「Ｂｕｓ＃＝０Ｅ」から「Ｂｕｓ＃＝０Ｆ」までとなる。
【０１８６】
この場合、ホスト装置６０は、各ＰＣＩｅデバイスｄ１〜ｄ４に対して、第１識別情報を用いてアクセスする。各ＰＣＩｅデバイスｄ１〜ｄ４は、自装置の識別子として第２識別情報を用いて動作する。
【０１８７】
このように、この例では、ＰＣＩｅスイッチ７０の４つの下流ポート３０２のそれぞれの下流で２つずつの第１識別情報が占有可能に割り当てられる。したがって、ＰＣＩｅスイッチ７０の下流では、８つの第１識別情報が占有されることになる。また、ホスト装置６０および変換装置５０を結ぶバス、変換装置５０およびＰＣＩｅスイッチ７０を結ぶバスおよびＰＣＩｅスイッチ７０の内部バスで消費される第１識別情報は、合計３つである。したがって、ＰＣＩｅボックス５００およびそれより下流の構成において、合計１１個の第１識別情報が占有される。
【０１８８】
次に、複数個のＰＣＩｅボックス５００をホスト装置６０に接続し、さらに、そのホスト装置６０配下の構成を複数個備える情報処理システム５を想定する。そのような情報処理システム５の一例を図２９に示す。
【０１８９】
図２９において、情報処理システム５は、ｍ個（ｍは正の整数）のホスト装置６０を有する。また、各ホスト装置６０には、ＰＣＩｅボックス５００が４つずつ接続されている。なお、ｍ個のホスト装置６０は、互いに通信可能に接続され、各ホスト装置６０のデバイス初期化部６１は、情報処理システム５全体で重複しない第１識別情報を、各バスに付与するものとする。なお、各ホスト装置６０を、ホスト装置６０＿ｉ（ｉ＝１〜ｍ）とも記載する。また、ホスト装置６０＿ｉに接続された４つのＰＣＩｅボックス５００を、ＰＣＩｅボックス５００＿ｉ１〜５００＿ｉ４とも記載する。
【０１９０】
なお、この例では、前述のように、ＰＣＩｅボックス５００配下の構成において、合計１１個の第１識別情報が占有される。ただし、管理しやすさのため、あるＰＣＩｅボックス５００配下で１６個の連番の第１識別情報が占有されたと仮定して、他のＰＣＩｅボックス５００配下に第１識別情報が付与されていく規則が適用されるものとする。つまり、一部の番号は飛ばされて第１識別情報が付与されるものとする。
【０１９１】
この場合、前述のように、ＰＣＩｅボックス５００＿１１より下流では、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０４／ｘｘ〜０７／ｘｘ」の８つの第１識別情報が占有される。また、前述したように、ＰＣＩｅボックス５００＿１１の前後や内部で、それ以外に３つの第１識別情報が消費される。また、一部の第１識別情報の番号は飛ばされる。したがって、前述の規則に基づいて、ＰＣＩｅボックス５００＿１１およびその下流で、「Ｂｕｓ＃／Ｄｅｖ＃＝０１／ｘｘ〜０８／ｘｘ」の１６個の第１識別情報が占有されたと仮定して、次のＰＣＩｅボックス５００＿１２配下に第１識別情報が付与される。
【０１９２】
すなわち、ＰＣＩｅボックス５００＿１２配下では、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝０Ｃ／ｘｘ〜０Ｆ／ｘｘ」の８つの第１識別情報が占有される。ただし、前述の規則に基づいて、ＰＣＩｅボックス５００＿１２配下では、「Ｂｕｓ＃／Ｄｅｖ＃＝０９／ｘｘ〜１０／ｘｘ」の１６個の第１識別情報が占有されたと仮定して、次のＰＣＩｅボックス５００＿１３配下に第１識別情報が付与される。
【０１９３】
同様にして、ＰＣＩｅボックス５００＿１３〜５００＿１４それぞれの配下に、前述の規則に基づいて第１識別情報が付与されたとする。すると、ホスト装置６０＿１以下の構成では、第１識別情報として、「Ｂｕｓ＃／Ｄｅｖ＃＝００／ｘｘ〜１Ｆ／ｘｘ」の６４個の第１識別情報が占有される。
【０１９４】
同様にして、ホスト装置６０＿２以降でも、それぞれの下流で、６４個ずつの第１識別情報が占有されるとする。すると、情報処理システム５は、９ビットの第１識別情報で表現可能な５１２個まで、合計８個のホスト装置６０配下の構成を含むことができる。つまり、ｍ＝８となる。
【０１９５】
すると、１つのホスト装置６０以下に１６個のＰＣＩｅデバイスを接続可能であるため、全体として、１２８個のＰＣＩｅデバイスが接続可能となる。このように、本実施の形態は、背景技術の図３９を参照して説明した一般的なＰＣＩｅスイッチを用いたときに６４個程度までしかデバイスを接続できない場合に比べて、接続可能なＰＣＩｅデバイスの個数を倍増させている。これは、情報処理システム５が、本来識別に利用可能なバス番号の８ビットより多い９ビットの第１識別情報を用いて、ＰＣＩｅデバイスを識別可能なためである。
【０１９６】
しかも、この具体例において、各ＰＣＩｅスイッチ７０および各ＰＣＩｅデバイスは、ＰＣＩｅのデバイス識別情報に含まれるバス番号８ビットに相当する第２識別情報を用いて動作すればよい。したがって、ＰＣＩｅデバイスには、一般的なデバイスを適用可能である。
【０１９７】
なお、図２９の例において、例えば、第１識別情報「Ｂｕｓ＃／Ｄｅｖ＃＝７Ｆ／ｘｘ」は、第２識別情報「Ｂｕｓ＃＝ＦＥ」から「Ｂｕｓ＃＝ＦＦ」までに変換される。また、第１識別情報「Ｂｕｓ＃／Ｄｅｖ＃＝ＦＦ／ｘｘ」も、同様の第２識別情報「Ｂｕｓ＃＝ＦＥ」から「Ｂｕｓ＃＝ＦＦ」までに変換される。しかしながら、第１識別情報「Ｂｕｓ＃／Ｄｅｖ＃＝７Ｆ／ｘｘ」によって識別されるＰＣＩｅデバイスは、ホスト装置６０＿４配下のＰＣＩｅボックス５００＿４４に接続される。また、第１識別情報「Ｂｕｓ＃／Ｄｅｖ＃＝ＦＦ／ｘｘ」によって識別されるＰＣＩｅデバイスは、ホスト装置６０＿８配下のＰＣＩｅボックス５００＿８４に接続される。したがって、これらの各ＰＣＩｅデバイス宛のパケットは、該当するホスト装置６０から該当するＰＣＩｅボックス５００まで正しく転送されることを前提とすれば、その後、第２識別情報により正しく転送される。また、各ＰＣＩｅデバイスが、他と同一の第２識別情報を用いて動作しても、該当するホスト装置６０は、それぞれが変換された他と互いに異なる第１識別情報によって送信元のＰＣＩｅデバイスを識別可能である。
【０１９８】
以上で、本実施の形態の具体例の説明を終了する。
【０１９９】
次に、本発明の第５の実施の形態の効果について述べる。
【０２００】
本発明の第５の実施の形態としての情報処理システムは、導入コストを抑えながら、情報処理装置に接続可能なＰＣＩｅデバイスの個数を増加させることができる。
【０２０１】
その理由について説明する。本実施の形態では、第１識別情報として、ＰＣＩｅ仕様に基づくデバイス識別情報に含まれるバス番号と、ｎ個の追加ビットとしてのデバイス番号の上位ｎビットとからなる情報を適用する。そして、アウトバウンド変換部が、アウトバウンドＴＬＰのヘッダに含まれる宛先を示すデバイス識別情報において、第１識別情報のバス番号の上位ｎビットを破棄し、デバイス番号の上位ｎビットを下位ｎビットとして含むよう、第２識別情報を生成する。そして、アウトバウンド変換部が、生成した第２識別情報を、宛先を示すデバイス識別情報におけるバス番号の位置に含める。また、インバウンド変換部が、自装置のセカンダリバスについて記憶しているバス番号の上位ｎビットを用いて、インバウンドＴＬＰのヘッダに含まれる送信元を示すデバイス識別情報における第２識別情報を、元の第１識別情報に変換する。そして、インバウンド変換部が、変換した第１識別情報を、送信元を示すデバイス識別情報におけるバス番号の位置およびデバイス番号の上位ｎビットの位置に含めるからである。
【０２０２】
このように、本実施の形態は、一般的な情報処理システムでは、バス番号８ビットで表される個数未満までしか接続できなかったＰＣＩｅデバイスを、バス番号８ビット＋デバイス番号の上位ｎビットで表される個数未満まで接続可能にする。しかも、本実施の形態において変換装置の下流に接続されるＰＣＩｅスイッチおよびＰＣＩｅデバイスは、ＰＣＩｅの仕様に準拠する第２識別情報である通常のバス番号を用いて動作すればよい。したがって、本実施の形態において、ＰＣＩｅスイッチおよびＰＣＩｅデバイスとしては、一般的なＰＣＩｅスイッチおよびＰＣＩｅデバイスを適用可能である。このため、本実施の形態は、導入コストを抑えることができる。
【０２０３】
なお、本実施の形態の具体例として、本発明におけるｎ個の追加ビットとして、デバイス番号のＭＳＢを適用する例について説明したが、デバイス番号の上位２ビット以上を適用してもよい。ただし、接続が想定されるＰＣＩｅデバイスが有するデバイス番号が、デバイス番号の残りの５−ｎビットで表される範囲であることが前提である。
【０２０４】
また、本実施の形態における変換処理の具体例として、アウトバウンド変換部がレジスタＡ〜Ｂを用いて論理演算を行う手順と、インバウンド変換部がレジスタＡ〜Ｃを用いて論理演算を行う手順とについて説明した。ただし、各変換部は、本実施の形態における第１識別情報と第２識別情報との間を変換可能な手順であれば、他の手順によって変換処理を行ってもよい。
【０２０５】
（第６の実施の形態）
次に、本発明の第６の実施の形態について説明する。本発明の第６の実施の形態では、本発明の第５の実施の形態における変換装置に改良を加えた例について説明する。なお、本実施の形態の説明において参照する各図面において、本発明の第１〜第５の実施の形態と同一の構成および同様に動作するステップには同一の符号を付して本実施の形態における詳細な説明を省略する。
【０２０６】
まず、本発明の第６の実施の形態としての情報処理システム６の構成を図３０に示す。図３０において、情報処理システム６は、本発明の第５の実施の形態としての情報処理システム５に対して、変換装置５０に替えて変換装置８０と、ホスト装置６０に替えてホスト装置９０とを有する点が異なる。
【０２０７】
また、図３１に示すように、変換装置８０は、本発明の第５の実施の形態における変換装置５０に対して、アウトバウンド変換部５１に替えてアウトバウンド変換部８１と、インバウンド変換部５２に替えてインバウンド変換部８２とを有する点が異なる。
【０２０８】
また、図３２に示すように、ホスト装置９０は、本発明の第５の実施の形態におけるホスト装置６０に対して、デバイス初期化部６１に替えてデバイス初期化部９１と、デバイスアクセス部６２に替えてデバイスアクセス部９２とを有する点が異なる。
【０２０９】
ここで、情報処理システム６のハードウェア構成は、図９を用いて本発明の第３の実施の形態で説明した通りである。ただし、図９に示した各ハードウェア要素として、ＰＣＩｅに準拠するハードウェア要素が採用されているものとする。
【０２１０】
まず、ホスト装置９０の機能のうち、本発明の第５の実施の形態と異なる点について説明する。
【０２１１】
デバイス初期化部９１は、情報処理システム６の初期化時に、変換装置８０による変換機能を有効にするか否かを判断する。この判断処理は、例えば、外部から入力される指示情報や、メモリ２０２に記憶された設定情報に基づいて行われてもよい。もし、複数の変換装置８０が自装置に接続される場合、変換装置８０毎に、変換機能を有効にするか否かを判断してもよい。そして、デバイス初期化部９１は、変換機能を有効にすると判断された変換装置８０の配下に、第１識別情報を付与する。また、デバイス初期化部９１は、変換機能を有効にしないと判断された変換装置８０の配下には、通常のバス番号による識別情報を付与する。
【０２１２】
また、デバイスアクセス部９２は、初期化時に変換機能を有効にすると判断された変換装置８０を介して送信するパケットには、宛先の識別子としての第１識別情報と、変換機能を有効にすることを表す情報とをヘッダに含めて送信する。また、デバイスアクセス部９２は、初期化時に変換機能を有効にしないと判断された変換装置８０を介して送信するパケットには、宛先の識別子としての通常のバス番号と、変換機能を有効にしないことを表す情報とをヘッダに含めて送信する。
【０２１３】
例えば、変換機能を有効する／しないことを表す情報としては、宛先の識別子としてのデバイス識別情報に含まれるファンクション番号のＭＳＢを適用してもよい。この場合、ファンクション番号のＭＳＢが１であれば「有効」を示し、０であれば「無効」を示すものとしてもよい。
【０２１４】
次に、変換装置８０の機能ブロックのうち、本発明の第５の実施の形態と異なる点について詳細に説明する。
【０２１５】
アウトバウンド変換部８１は、ＰＣＩｅデバイス宛のパケットに、変換機能を有効にすることを示す情報が含まれる場合に、本発明の第５の実施の形態におけるアウトバウンド変換部５１と同様に動作する。なお、この場合、アウトバウンド変換部８１は、変換機能が有効であることを記憶しておく。
【０２１６】
また、前述のように、ファンクション番号のＭＳＢが、変換機能を有効にする／しないことを表す情報として適用されている場合について説明する。この場合、アウトバウンド変換部８１は、受信したアウトバウンドＴＬＰのヘッダにおいて、宛先の識別子としてのデバイス識別情報に含まれるファンクション番号のＭＳＢが１である場合に、次のように動作する。すなわち、アウトバウンド変換部８１は、第１識別情報を第２識別情報に変換するとともに、ファンクション番号のＭＳＢを０に変換する。
【０２１７】
これにより、変換後のアウトバウンドＴＬＰを受信したＰＣＩｅデバイスでは、宛先の識別子に含まれるファンクション番号を、仕様に基づくファンクション番号として認識することができる。ただし、この場合、本来のファンクション番号が、ＭＳＢを除いた２ビットで表される範囲であることが前提である。ファンクション番号のＭＳＢが１であるか０であるかに応じたアウトバウンド変換部８１の処理を、模式的に図３３に示す。
【０２１８】
図３３において、受信されたアウトバウンドＴＬＰにおける宛先の識別子としてのデバイス識別情報７０１では、ファンクション番号のＭＳＢが１である。そこで、変換機能が有効となる。その結果、下流に送信されるアウトバウンドＴＬＰにおける宛先の識別子としてのデバイス識別情報７０２では、元のバス番号の下位７ビットおよび元のデバイス番号のＭＳＢからなる合計８ビットの第２識別情報が、バス番号の位置に含まれている。また、変換により、デバイス番号のＭＳＢは０となっている。また、ファンクション番号のＭＳＢは、０に変換されている。
【０２１９】
また、図３３において、受信されたアウトバウンドＴＬＰにおける宛先の識別子としてのデバイス識別情報７０３では、ファンクション番号のＭＳＢが０である。そこで、変換機能は無効となる。その結果、受信されたアウトバウンドＴＬＰはそのまま下流に送信される。
【０２２０】
インバウンド変換部８２は、アウトバウンド変換部８１による変換機能が有効である場合に、本発明の第５の実施の形態におけるインバウンド変換部５２と同様に動作する。
【０２２１】
以上のように構成された情報処理システム６の動作について説明する。
【０２２２】
まず、ホスト装置９０の動作を図３４に示す。
【０２２３】
図３４において、まず、情報処理システム６の初期化時等に、デバイス初期化部９１が、変換装置８０の変換機能を有効にするか否かを判断する（ステップＣ９１）。
【０２２４】
ここで、変換機能を有効にすると判断した場合（ステップＣ９１でＹｅｓ）、デバイス初期化部９１は、変換装置８０配下の各ＰＣＩｅスイッチ７０や各ＰＣＩｅデバイスに、第１識別情報を付与する。
【０２２５】
以降、デバイスアクセス部９２は、第１識別情報および変換機能を有効にすることを表す情報を、ヘッダにおける宛先のデバイス識別情報に含めたアウトバウンドＴＬＰを、変換装置８０に対して送信する。また、デバイスアクセス部９２は、受信したインバウンドＴＬＰに含まれる送信元のデバイス識別情報における第１識別情報を用いて、送信元のＰＣＩｅデバイスを識別する（ステップＣ９３）。
【０２２６】
一方、変換機能を有効にしないと判断した場合（ステップＣ９１でＮｏ）、デバイス初期化部９１は、変換装置８０配下の各ＰＣＩｅスイッチ７０や各ＰＣＩｅデバイスに、通常のバス番号に基づくデバイス識別情報を付与する（ステップＣ９４）。
【０２２７】
以降、デバイスアクセス部９２は、通常のデバイス識別情報および変換機能を有効にしないことを表す情報を、ヘッダにおける宛先のデバイス識別情報に含めたアウトバウンドＴＬＰを、変換装置８０に対して送信する。また、デバイスアクセス部９２は、受信したインバウンドＴＬＰに含まれる送信元のデバイス識別情報におけるバス番号を用いて、送信元のＰＣＩｅデバイスを識別する（ステップＣ９５）。
【０２２８】
以上で、ホスト装置９０の動作の説明を終了する。
【０２２９】
次に、アウトバウンドＴＬＰを転送する変換装置８０の動作を図３５に示す。
【０２３０】
図３５では、まず、アウトバウンド変換部８１は、ステップＡ５１で受信されたアウトバウンドＴＬＰに、変換機能を有効にすることを示す情報が含まれているか否かを判断する（ステップＡ９１）。
【０２３１】
前述のように、例えば、アウトバウンド変換部８１は、アウトバウンドＴＬＰのヘッダに宛先の識別子として含まれるデバイス識別情報のファンクション番号のＭＳＢが、１であるか否かを判断してもよい。
【０２３２】
ここで、変換機能を有効にすることを示す情報が含まれている場合（ステップＡ９１でＹｅｓ）、アウトバウンド変換部８１は、ステップＡ５２〜Ａ５５まで、本発明の第５の実施の形態と同様に動作する。
【０２３３】
一方、変換機能を有効にすることを示す情報が含まれていない場合（ステップＡ９１でＮｏ）、アウトバウンド変換部８１は、ステップＡ５１で受信されたアウトバウンドＴＬＰを、そのまま下流に送信する（ステップＡ５５）。
【０２３４】
以上で、アウトバウンド変換部８１は、アウトバウンドＴＬＰを送信する動作を終了する。
【０２３５】
次に、インバウンドＴＬＰを転送する変換装置８０の動作を図３６に示す。
【０２３６】
図３６では、まず、インバウンド変換部８２は、ステップＢ５１でインバウンドＴＬＰを受信すると、アウトバウンド変換部８１において変換機能が有効であるか否かを判断する（ステップＢ９１）。
【０２３７】
ここで、変換機能が有効である場合（ステップＢ９１でＹｅｓ）、インバウンド変換部８２は、ステップＢ５２〜Ｂ５６まで、本発明の第５の実施の形態と同様に動作する。
【０２３８】
一方、変換機能が有効でない場合（ステップＳ９１でＮｏ）、インバウンド変換部８２は、受信されたインバウンドＴＬＰを、そのまま仮想ＰＣＩブリッジ５３を介して上流に送信する（ステップＢ５５、Ｂ５６）。
【０２３９】
以上で、インバウンド変換部８２は、インバウンドＴＬＰを転送する動作を終了する。
【０２４０】
次に、本発明の第６の実施の形態の効果について述べる。
【０２４１】
本発明の第６の実施の形態としての情報処理システムは、情報処理システムに接続可能な入出力デバイスの個数を増加させるかどうかを柔軟に設定可能にして、システム構成の自由度を高めることができる。
【０２４２】
その理由について説明する。本実施の形態では、変換装置のアウトバウンド変換部が、パケットに変換機能を有効にすることを示す情報が含まれる場合に、該パケットに含まれる第１識別情報を第２識別情報に変換する。また、インバウンド変換部が、アウトバウンド変換部における変換機能が有効である場合に、パケットに含まれる第２識別情報を元の第１識別情報に変換するからである。
【０２４３】
これにより、本実施の形態は、情報処理システムに含まれる変換装置毎に、その配下を、第１識別情報を用いて識別する拡張空間として構成するか、通常のデバイス識別情報を用いて識別する通常空間として構成するかを選択できる。これにより、本実施の形態は、情報処理システムに拡張空間および通常空間を混在させることも可能とする。
【０２４４】
なお、本実施の形態において、ファンクション番号のＭＳＢを、変換機能を有効にするか否かを示す情報として適用する例について説明した。これに限らず、変換機能を有効にするか否かを示す情報としては、ヘッダに含まれるその他の情報が適用可能である。ただし、そのような他の情報は、ヘッダにおいて使用されていないことが望ましい。
【０２４５】
また、本実施の形態において、入出力インタフェースがＰＣＩｅである場合について説明した。これに限らず、本実施の形態は、その他の入出力インタフェースの場合にも適用可能である。
【０２４６】
また、上述した本発明の各実施の形態において、変換装置の各機能ブロックが、専用のハードウェア要素により実現される例について説明した。ただし、変換装置の各機能ブロックの一部または全部は、メモリに格納されたプログラムを実行するプロセッサにより実現されてもよい。
【０２４７】
また、上述した本発明の各実施の形態において、各フローチャートを参照して説明した各装置の動作を、本発明のプログラムとしてコンピュータ装置の記憶装置（記憶媒体）に格納しておく。そして、係るプログラムを当該プロセッサが読み出して実行するようにしてもよい。そして、このような場合において、本発明は、係るプログラムのコードあるいは記憶媒体によって構成される。
【０２４８】
また、上述した各実施の形態は、適宜組み合わせて実施されることが可能である。
【０２４９】
また、本発明は、上述した各実施の形態に限定されず、様々な態様で実施されることが可能である。
【０２５０】
また、上述した各実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続され、
前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力するアウトバウンド変換部と、
前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力するインバウンド変換部と、
を有する変換装置。
（付記２）
前記アウトバウンド変換部は、前記第１識別情報の上位ｎビットを破棄して前記ｎ個の追加ビットを下位ｎビットとして含むよう前記第２識別情報を構成し、
前記インバウンド変換部は、前記第２識別情報を、前記第１識別情報に含まれていた前記上位ｎビットに基づいて、前記第１識別情報に変換することを特徴とする付記１に記載の変換装置。
（付記３）
前記アウトバウンド変換部は、前記パケットに、変換機能を有効にすることを示す情報が含まれる場合に、前記第１識別情報を前記第２識別情報に変換し、
前記インバウンド変換部は、前記アウトバウンド変換部において前記変換機能が有効である場合に、前記第２識別情報を元の前記第１識別情報に変換することを特徴とする付記１または付記２に記載の変換装置。
（付記４）
前記入出力インタフェースがＰＣＩｅ（Peripheral Component Interconnect Express）であるとき、
前記アウトバウンド変換部は、前記仕様に基づく識別情報としてのバス番号と、前記ｎ個の追加ビットとしてのデバイス番号の上位ｎビットとからなる前記第１識別情報から、前記バス番号の上位ｎビットを破棄し、前記デバイス番号の上位ｎビットを下位ｎビットとして含むよう、前記第２識別情報を生成し、
前記インバウンド変換部は、自装置のセカンダリバスについて記憶しているバス番号の上位ｎビットを用いて、前記第２識別情報を元の前記第１識別情報に変換することを特徴とする付記１から付記３のいずれか１つに記載の変換装置。
（付記５）
付記１から付記４のいずれか１つに記載の変換装置および前記入出力スイッチを介して自装置に接続される前記入出力デバイスに対して、前記第１識別情報を付与するデバイス初期化部と、
前記入出力デバイスに対して、前記第１識別情報を用いてアクセスするデバイスアクセス部と、
を有するホスト装置。
（付記６）
付記１から付記４のいずれか１つに記載の変換装置と、
前記入出力スイッチと、
を備えた入出力スイッチシステム。
（付記７）
付記５に記載のホスト装置と、
付記１から付記４のいずれか１つに記載の変換装置と、
前記入出力スイッチと、
を備えた情報処理システム。
（付記８）
ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続されるコンピュータ装置を用いて、
前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力し、
前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力する方法。
（付記９）
ホスト装置と、１つ以上の入出力デバイスを接続可能な入出力スイッチとに接続されるコンピュータ装置に、
前記ホスト装置から入力される前記入出力デバイス宛のパケットにおいて、宛先の識別子として含まれる第１識別情報であって、前記入出力デバイスが準拠する入出力インタフェースの仕様に基づく識別情報を構成する各ビットおよびｎ個の追加ビット（ｎは１以上の整数）からなる第１識別情報を、前記追加ビットの情報が含まれるよう、前記仕様に基づく識別情報と同一ビット幅の第２識別情報に変換し、変換した第２識別情報を前記宛先の識別子として前記仕様に基づく識別情報の位置に含めて前記入出力スイッチに出力するアウトバウンド変換ステップと、
前記入出力スイッチから入力される前記ホスト装置宛のパケットにおいて、送信元の前記入出力デバイスの識別子として含まれる前記第２識別情報を元の前記第１識別情報に変換し、変換した第１識別情報を前記送信元の識別子として前記仕様に基づく識別情報の位置および前記追加ビットの位置に含めて前記ホスト装置に出力するインバウンド変換ステップと、
を実行させるプログラム。
（付記１０）
コンピュータ装置を用いて、
付記１から付記４のいずれか１つに記載の変換装置および前記入出力スイッチを介して自装置に接続される前記入出力デバイスに対して、前記第１識別情報を付与し、
前記入出力デバイスに対して、前記第１識別情報を用いてアクセスする方法。
（付記１１）
付記１から付記４のいずれか１つに記載の変換装置および前記入出力スイッチを介して自装置に接続される前記入出力デバイスに対して、前記第１識別情報を付与するデバイス初期化ステップと、
前記入出力デバイスに対して、前記第１識別情報を用いてアクセスするデバイスアクセスステップと、
をコンピュータ装置に実行させるプログラム。
【符号の説明】
【０２５１】
１０、５０、８０    変換装置
２０、６０、９０    ホスト装置
３、５、６    情報処理システム
４    入出力スイッチシステム
１１、５１、８１    アウトバウンド変換部
１２、５２、８２    インバウンド変換部
２１、６１、９１    デバイス初期化部
２２、６２、９２    デバイスアクセス部
３０    入出力スイッチ
３１    仮想ブリッジ
５３、７１    仮想ＰＣＩブリッジ
７０    ＰＣＩｅスイッチ
１０１、３０１    上流ポート
１０２、３０２    下流ポート
１０３    ブリッジ回路
１０４    変換回路
２０１    プロセッサ
２０２    メモリ
２０３    入出力インタフェース
３０３    入出力スイッチ回路
５００    ＰＣＩｅボックス
【図１】
2018160163.tif 000003
【図２】
2018160163.tif 000004
【図３】
2018160163.tif 000005
【図４】
2018160163.tif 000006
【図５】
2018160163.tif 000007
【図６】
2018160163.tif 000008
【図７】
2018160163.tif 000009
【図８】
2018160163.tif 000010
【図９】
2018160163.tif 000011
【図１０】
2018160163.tif 000012
【図１１】
2018160163.tif 000013
【図１２】
2018160163.tif 000014
【図１３】
2018160163.tif 000015
【図１４】
2018160163.tif 000016
【図１５】
2018160163.tif 000017
【図１６】
2018160163.tif 000018
【図１７】
2018160163.tif 000019
【図１８】
2018160163.tif 000020
【図１９】
2018160163.tif 000021
【図２０】
2018160163.tif 000022
【図２１】
2018160163.tif 000023
【図２２】
2018160163.tif 000024
【図２３】
2018160163.tif 000025
【図２４】
2018160163.tif 000026
【図２５】
2018160163.tif 000027
【図２６】
2018160163.tif 000028
【図２７】
2018160163.tif 000029
【図２８】
2018160163.tif 000030
【図２９】
2018160163.tif 000031
【図３０】
2018160163.tif 000032
【図３１】
2018160163.tif 000033
【図３２】
2018160163.tif 000034
【図３３】
2018160163.tif 000035
【図３４】
2018160163.tif 000036
【図３５】
2018160163.tif 000037
【図３６】
2018160163.tif 000038
【図３７】
2018160163.tif 000039
【図３８】
2018160163.tif 000040
【図３９】
2018160163.tif 000041