(57)【要約】【課題】他のユニットに影響を与えずに切り離し、正常動作の阻害を防止可能な情報処理装置を提供する【解決手段】接続を許可するユニットのユニット情報を接続許可ユニットリストとしてフラッシュメモリ３に保持している。各ユニットからユニット情報を読み出し、接続許可ユニットリストと比較する。接続許可ユニットリスト内に存在しないユニットは接続不許可ユニットである。接続不許可ユニットがシステム・トポロジーからリーフユニットであると判断されるとき、その接続不許可ユニットをシステムから切り離し、所定のユニットのみで動作させる。また、接続不許可ユニットがリーフユニットではないとき、立ち上げ処理を中断する。【選択図】図１
2007014004.tif 000002
【特許請求の範囲】
【請求項１】
他の構成ユニットからユニット情報を取得するユニット情報取得手段と、前記ユニット情報取得手段により取得されたユニット情報から構成ユニット間の接続形態を示すシステム・トポロジーを作成するシステム・トポロジー作成手段と、前記システム・トポロジー作成手段により作成されたシステム・トポロジーに基づいて前記構成ユニットの切断処理を実行する構成ユニット切断手段を有することを特徴とする情報処理装置。
【請求項２】
前記構成ユニットの切断処理を実行する旨のメッセージを表示する切断実行表示手段を有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
構成ユニットがリーフユニットであるか否かを判定する判定手段を有し、前記構成ユニット切断手段は、前記判定手段により構成ユニットがリーフユニットであると判定された場合に前記構成ユニットの切断処理を実行することを特徴とする請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記判定手段は、装置立ち上げ時に前記構成ユニットがリーフユニットであるか否かを判定するように構成されていることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記判定手段により前記構成ユニットがリーフユニットでないと判定された場合に装置の立ち上げ処理を中断する中断処理手段を有することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
装置の立ち上げ処理を中断する旨のメッセージを表示する立ち上げ中断表示手段を有することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
他の構成ユニットからユニット情報取得手段によりユニット情報を取得し、取得されたユニット情報から構成ユニット間の接続形態を示すシステム・トポロジーをシステム・トポロジー作成手段で作成し、作成したシステム・トポロジーに基づいて構成ユニット切断手段により前記構成ユニットの切断処理を実行することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構成ユニットを相互接続してなる情報処理装置及び情報処理方法に関するものである。
【背景技術】
【０００２】
従来の情報処理装置は、例えばＰＣＩ  Ｓｐｅｃｉａｌ  Ｉｎｔｅｒｅｓｔ  Ｇｒｏｕｐにより規定されたＰＣＩバスを代表とするように、情報処理装置を構成するユニット間の相互接続上に予め想定していないユニットが存在しても、そのユニットを許容する相互接続方法が開発されている。このＰＣＩバスでは、相互接続の物理的・論理的規格を満足し、リッスンオンリ（主体的にバストランザクションを行わない状態）である限りは、予め想定していないユニットが存在しても、接続許可ユニット間のデータ転送速度等への影響を与えない。
【０００３】
しかし、最近では、システム内に存在するユニットの数あるいはユニットの接続トポロジーにより、ユニット間のデータ転送オーバーヘッドが変化することを許容する相互接続の規格が存在する。このような相互接続の規格の一つに、ＩＥＥＥ１３９４がある。例えば特許文献１には、このＩＥＥＥ１３９４バスを用いてユニットを接続した例が示されている。
【０００４】
図１０は、ＩＥＥＥ１３９４バスプロトコルの一例の説明図である。図１０には、ＩＥＥＥ１３９４で規定された連続する２つのアシンクロナスサブアクション（サブアクション１，サブアクション２）を示している。各サブアクションは、アービトレーションフェーズにより同期を取った後、パケットを送信し、アックギャップだけの時間経過の後に、応答（ａｃｋ）を受信する。また、各サブアクションの間は、サブアクションギャップとして所定時間以上の間隔を置かなければならない。
【０００５】
ＩＥＥＥ１３９４では、基本的には任意のユニットが接続可能であり、バストランザクションを行うことによって使用可能となる。しかし、予め想定された既知のユニット間のデータ転送により機能するように最適化されたシステムに対して、想定していないユニットが接続され、予期しないバストランザクションを発行すると、予め想定されたデータ転送が行えなくなる場合が生じる。例えば、図１０のサブアクション１を正規のユニットが発行したリードリクエストとし、図１０のサブアクション２を正規のユニットが発行したリードレスポンスとする。このとき、サブアクション１の後にバストランザクションが介在することも考えられ、その場合にはサブアクション２は遅延してしまう。このように想定していないユニットの接続によって、正規のユニットのデータ転送レスポンス、転送バンド幅が低下するという問題がある。このような既知のユニット間のデータ転送のレスポンスおよび転送バンド幅の低下は、既知のユニット上のバッファオーバーラン等の不具合を生起し、システムの不正動作の原因になる。
【０００６】
また、ＩＥＥＥ１３９４においては、図１０に示すサブアクションギャップ，アービトレーションフェーズ，アックギャップ等は、ユニット間最長経路の最大相互接続セグメント数を示すホップ数の増加に依存して増加する。ある接続状態において図１０（Ａ）に示すデータ転送トランザクションが行われている場合、他のユニットが接続されてバストランザクションを行った後は、例えば図１０（Ｂ）に示すようにサブアクションギャップ，アービトレーションフェーズ，アックギャップ等が長くなることがある。このようにサブアクションギャップ，アービトレーションフェーズ，アックギャップ等が長くなると、データ転送バンド幅は減少してしまう。すなわち、データ転送バンド幅はホップ数に依存して減少することになる。
【０００７】
上述のように、ＩＥＥＥ１３９４のような相互接続を採用し、予め想定したユニットのタイプとユニット数に対し最適化したシステムにおいては、予期しないユニットが接続されるとデータ転送バンド幅が低下し、レスポンスタイムの変化により正常動作が阻害されることが起こり得るという問題がある。
【０００８】
一方、ＬＡＮなどにおいては、例えば特許文献２等に記載されているように、無許可のコンピュータが接続された場合に、そのコンピュータを検知する構成が開発されている。しかしＬＡＮなどでは、無許可のコンピュータがＬＡＮに接続されて通信可能になっても、上述のようなデータ転送レスポンスの遅延やデータ転送バンド幅の減少といった問題は発生せず、正規のコンピュータ間の不正動作の原因になることはない。
【０００９】
【特許文献１】特開平１０−３０４００７号公報
【特許文献２】特開平５−４８６１４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、構成ユニットを、他のユニットに影響を与えずに切り離し、正常動作の阻害を防止可能な情報処理装置及び情報処理方法を提供することを目的とするものである。
【課題を解決するための手段】
【００１１】
本願請求項１に記載の発明は、他の構成ユニットからユニット情報を取得するユニット情報取得手段と、前記ユニット情報取得手段により取得されたユニット情報から構成ユニット間の接続形態を示すシステム・トポロジーを作成するシステム・トポロジー作成手段と、前記システム・トポロジー作成手段により作成されたシステム・トポロジーに基づいて前記構成ユニットの切断処理を実行する構成ユニット切断手段を有することを特徴とする情報処理装置である。
【００１２】
本願請求項２に記載の発明は、請求項１に記載の構成に加え、前記構成ユニットの切断処理を実行する旨のメッセージを表示する切断実行表示手段を有することを特徴とする情報処理装置である。
【００１３】
本願請求項３に記載の発明は、請求項１または請求項２に記載の構成に加え、構成ユニットがリーフユニットであるか否かを判定する判定手段を有し、前記構成ユニット切断手段が、前記判定手段により構成ユニットがリーフユニットであると判定された場合に前記構成ユニットの切断処理を実行することを特徴とする情報処理装置である。
【００１４】
本願請求項４に記載の発明は、請求項３に記載の判定手段が、装置立ち上げ時に前記構成ユニットがリーフユニットであるか否かを判定するように構成されていることを特徴とする情報処理装置である。
【００１５】
本願請求項５に記載の発明は、請求項４に記載の構成に加え、前記判定手段により前記構成ユニットがリーフユニットでないと判定された場合に装置の立ち上げ処理を中断する中断処理手段を有することを特徴とする情報処理装置である。
【００１６】
本願請求項６に記載の発明は、請求項５に記載の構成に加え、装置の立ち上げ処理を中断する旨のメッセージを表示する立ち上げ中断表示手段を有することを特徴とする情報処理装置である。
【００１７】
本願請求項６に記載の発明は、他の構成ユニットからユニット情報取得手段によりユニット情報を取得し、取得されたユニット情報から構成ユニット間の接続形態を示すシステム・トポロジーをシステム・トポロジー作成手段で作成し、作成したシステム・トポロジーに基づいて構成ユニット切断手段により前記構成ユニットの切断処理を実行することを特徴とする情報処理方法である。
【発明の効果】
【００１８】
本発明によれば、システム内に存在する構成ユニットの接続トポロジーに基づいて構成ユニットを切断するので、他の構成ユニットに影響を与えずに構成ユニットを切り離すことができ、正常動作の阻害を防止することができるという効果がある。
【発明を実施するための最良の形態】
【００１９】
図１は、本発明の情報処理装置の実施の一形態を示すシステム構成図である。図中、１，１２，１３はユニット、２はＣＰＵ、３はフラッシュメモリ、４はメモリ、５は表示部、６は通信部、７は通信路、８は内部バス、９はＬＩＮＫ、１０はＰＨＹ、１４，１５はＩＥＥＥ１３９４相互接続である。図１に示した例では、ユニット１はＩＥＥＥ１３９４相互接続１４によりユニット１２と接続され、またＩＥＥＥ１３９４相互接続１５によりユニット１３と接続されている。さらにユニット１は、通信路７とも接続されている。
【００２０】
ユニット１は、ＣＰＵ２，フラッシュメモリ３，メモリ４，表示部５，通信部６，ＬＩＮＫ９等を有し、これらを内部バス８によって接続している。さらにユニット１はＰＨＹ１０を有し、ＬＩＮＫ９と接続している。
【００２１】
ＣＰＵ２は、ユニット１内の各部を制御し、ユニット１の動作あるいはシステム動作を制御する。フラッシュメモリ３は、ユニットとシステムのコンフィギュレーション情報を記録した書き換え可能で不揮発な記憶装置である。このフラッシュメモリ３は、このユニット１を一意に識別するユニット情報を記憶するユニット情報記憶手段と、この情報処理装置内への接続を許可するユニットを示す接続許可ユニットリストを記憶する接続許可ユニットリスト記憶手段としても機能する。メモリ４は、ＣＰＵ２に対する主記憶として動作する。表示部５は、メモリ４，ユニットあるいはシステムの動作ステータスなどを表示する。また、接続不許可ユニットが接続された場合に、その接続不許可ユニットを識別する情報とともに、当該ユニットを切り離す旨、あるいは装置の立ち上げ動作を中止する旨のメッセージなどの表示も行う。通信部６は、他装置あるいはホストと通信路７を経由して通信する手段を提供する。なお、通信路７は任意であり、ホストのバスやＬＡＮ、電話回線等でもよいし、また、他の相互接続であってもよい。
【００２２】
ＬＩＮＫ９は、他のユニットとの間をＩＥＥＥ１３９４に準拠した相互接続により接続するために、ＩＥＥＥ１３９４のパケットの構築、パケットヘッダーの解析を行う。ＰＨＹ１０は、他のユニットとの間をＩＥＥＥ１３９４に準拠した相互接続により接続する際のトランシーバとして機能する。
【００２３】
ユニット１２，１３は、ユニット１と概略同様に構成することができるが、表示部５や通信部６等は任意である。また、接続許可ユニットリストなどを記憶していなくてもよい。さらに、各ユニット１２，１３において動作するために必要な各種の構成を有していてもよい。
【００２４】
上述のように、図１に示す情報処理装置では、ユニット１とユニット１２及びユニット１とユニット１３は、それぞれＩＥＥＥ１３９４相互接続１４，１５により接続されている。従って、最長の相互接続セグメント数を示すホップ数は、図１に示す実施例では、２となる。
【００２５】
図２は、本発明の情報処理装置の実施の一形態における動作の一例を示すフローチャートである。図１に示すような情報処理装置に電源が投入されると、ＩＥＥＥ１３９４の規定に従い、ＩＥＥＥ１３９４相互接続１４、１５上ではバスリセットが行われ、それに続いてコンフィグレーションが行われる。コンフィグレーションは、Ｓ２１におけるツリーアイデンティフィケーションプロセス（以下、ツリーＩＤプロセスと呼ぶ）とＳ２２におけるセルフアイデンティフィケーションプロセス（以下、セルフＩＤプロセスと呼ぶ）からなる。
【００２６】
ツリーＩＤプロセスでは、リーフノードがＩＥＥＥ１３９４相互接続をｐａｒｅｎｔ−ｎｏｔｉｆｙ状態にすることでリーフであることを示し、自身のポートにｐ（ピアレント）ラベルを付す。
【００２７】
ｐａｒｅｎｔ−ｎｏｔｉｆｙを受領したノードは、自身のポートにｃ（チャイルド）ラベルを付し、ラベルの付されていない接続ポートがあればそのポートをｐａｒｅｎｔ−ｎｏｔｉｆｙ状態にし、ｐラベルを付す。接続されていないポートには、ＯＦＦとラベル付けする。同様の手順で、全てのポートにラベルを付して行く。すべてのポートがラベル付けされた後、全てのポートがｃとラベル付けされたノードがルートになる。
【００２８】
ツリーＩＤプロセスにより、ルートノードが決定されると、ルートからグラントという信号がある一つのポートに出力される。グラント信号はノードのｐポートで受け取ってｃポートから出力され、次々に伝搬されてゆく。そして、ｃポートを持たないノード（すなわちリーフノード）がグラント信号を受信すると、自身の物理ＩＤを０にし、セルフＩＤパケットをブロードキャストする。
【００２９】
セルフＩＤパケットを受領し、自身の物理ＩＤが未定のノードは、セルフＩＤカウント値をインクリメントする。すなわち、セルフＩＤカウント値は、当該ノードが受領したセルフＩＤパケット数に等しくなる。自身及び自身の子の物理ＩＤが全て決まったノードはｐポートをｉｄｅｎｔ−ｄｏｎｅ状態にする。
【００３０】
ｉｄｅｎｔ−ｄｏｎｅを受け取ったノードは、物理ＩＤが未定のポートに対してグラント信号を発行する。自身の全てのｃポートにｉｄｅｎｔ−ｄｏｎｅが検出され、自身の全ての子の物理ＩＤが決まったことを検出したノードは、現在のセルフＩＤカウント値を自身の物理ＩＤとしてセルフＩＤパケットを送出するとともにｐポートをｉｄｅｎｔ−ｄｏｎｅ状態にする。この過程の繰り返しにより、全てのノードに一意に物理ＩＤを付すことができる。
【００３１】
例えば図１に示した構成では、まずリーフノードであるユニット１２，１３がＩＥＥＥ１３９４相互接続１４，１５をｐａｒｅｎｔ−ｎｏｔｉｆｙ状態にする。これによってユニット１２，１３がリーフであることを示す。さらにユニット１２，１３は、自身のポートにｐ（ピアレント）ラベルを付す。
【００３２】
ユニット１２，１３からｐａｒｅｎｔ−ｎｏｔｉｆｙを受領したユニット１は、ユニット１２，１３に接続されているポートにｃ（チャイルド）ラベルを付す。ほかにポートがないので、ラベル付けを終了する。この時点で、全てのポートがｃとラベル付けされたユニット１がルートになる。
【００３３】
ルートノードであるユニット１から、ユニット１２と接続されているポートに対してグラント信号を出力すると、リーフノードであるユニット１２はこれを受け取り、自身の物理ＩＤを０にしてセルフＩＤパケットをブロードキャストする。
【００３４】
セルフＩＤパケットを受領し、自身の物理ＩＤが未定のユニット１およびユニット１３は、セルフＩＤカウント値をインクリメントして１にする。ユニット１２は、ユニット１と接続されるｐポートをｉｄｅｎｔ−ｄｏｎｅ状態にする。
【００３５】
ユニット１は次にユニット１３にグラント信号を出力する。ユニット１３は、自身の物理ＩＤをセルフＩＤカウント値である１にして、セルフＩＤパケットをブロードキャストし、ユニット１と接続されるｐポートをｉｄｅｎｔ−ｄｏｎｅ状態にする。
【００３６】
ユニット１は、ユニット１３からブロードキャストされたセルフＩＤパケットを受信し、セルフＩＤカウント値をインクリメントして２にする。この時点で、ユニット１のすべてのｃポートにｉｄｅｎｔ−ｄｏｎｅが検出される。これによって、自身の全ての子の物理ＩＤが決まったことを検出する。ユニット１は、現在のセルフＩＤカウント値である２を自身の物理ＩＤとしてセルフＩＤパケットを送出する。このようにしてすべてのユニットについて、一意に物理ＩＤが決定される。
【００３７】
図３は、セルフＩＤパケットの一例の説明図、図４は、セルフＩＤパケット中のポート情報の一例の説明図である。図３に示したセルフＩＤパケットのフォーマットは、ＩＥＥＥ１３９４に準拠したものである。図３において、先頭の“１０”は、このパケットがセルフＩＤパケットであることを示し、ｐｈｙ−ＩＤフィールドは自身の物理ＩＤを示す。
【００３８】
図３（Ａ）に示すセルフＩＤパケットの第１パケット中のｐ０〜ｐ２は、当該ノードのポート情報を示す。ポート情報は図４に示すように、各ポートが子ノードに接続されているのか、親ノードに接続されているのか、あるいは接続されていないのか、それとも存在しないのかを示す情報である。第１パケットでは３つのポートについてのポート情報を送出することができるが、ポート数が３より大きい場合は、後続のセルフＩＤパケットがあることを示すｍフィールドをセットしてセルフＩＤパケットの第１パケットを送出し、ポート数に応じて図３（Ｂ）〜（Ｄ）に示す第２〜４パケットを送出する。
【００３９】
上述のような手順によってＩＥＥＥ１３９４相互接続のコンフィグレーションが完了すると、個々のユニット間で情報の授受を行うことができるようになる。各ユニットは、ディスティネーションノードＩＤとアドレスを指定したリードリクエストパケットを送出し、それに関連するリードレスポンスパケットを受領することで、個々のユニット間で情報の授受を行う。
【００４０】
図２に戻り、Ｓ２３において、この情報処理装置における各ユニットの接続形態を示すシステム・トポロジーを作成する。上述のようなコンフィグレーションの過程において、各ユニットにおける物理ＩＤが決定されるごとに、セルフＩＤパケットがブロードキャストされている。情報処理装置内の少なくとも１つのユニットにおいて、このセルフＩＤパケットを解析することで、物理ＩＤに対応して幾つかのポートがあり、それがｐポートあるいはｃポートの何れかであるかといった接続情報を得ることができる。そして得られた接続情報から、この情報処理装置における各ユニットの相互接続トポロジーを得ることができる。
【００４１】
ＩＥＥＥ１３９４規格は、ＩＳＯ／ＩＥＣ−１３２１３のＣＳＲ（コントロール−ステータスレジスタ）アーキテクチャ規格を採用しており、ユニットのコンフィグレーションＲＯＭのフォーマットを規定している。この例では、コンフィグレーションＲＯＭとして図１に示したフラッシュメモリ３を用いる。
【００４２】
図５は、コンフィグレーションＲＯＭのフォーマットの説明図である。図５においては、この動作の説明に関連する部分のみを示している。なお、１クワドレットは４バイト３２ビットで構成されている。
【００４３】
このコンフィグレーションＲＯＭの１３〜１５バイト目の部分（ｎｏｄｅ＿ｖｅｎｄｅｒ＿ｉｄ）は、ノードあるいはユニットのベンダを一意に識別可能なベンダＩＤがセットされている。同様に１６〜２０バイト目の部分（ｃｈｉｐ＿ｉｄ＿ｈｉ，ｃｈｉｐ＿ｉｄ＿ｌｏ）はベンダＩＤで示されたベンダより製造されたユニットを一意に識別可能なチップＩＤがセットされる。このベンダＩＤ及びチップＩＤを組み合わせることで、当該ユニットを一意に識別するＩＤとして使用することができる。
【００４４】
このようなコンフィグレーションＲＯＭは、各ユニットごとに有しており、リードリクエスト、リードレスポンストランザクションにより、任意のユニットが任意のユニットからベンダＩＤ、チップＩＤをリードすることができる。
【００４５】
一方、情報処理装置内の少なくとも一つのユニットに、この情報処理装置内への接続を許可するユニットを示す接続許可ユニットリストが記憶されている。この接続許可ユニットリストは、接続を許可するユニットのベンダＩＤとチップＩＤの組み合わせを配列状に保持させておけばよい。接続許可ユニットリストは、例えば各ユニットのフラッシュメモリ３に格納しておくことができる。さらに具体的には、図５に示すコンフィグレーションＲＯＭのフォーマット中のｖｅｎｄｅｒ−ｄｅｐｅｎｄｅｎｔ−ｉｎｆｏｒｍａｔｉｏｎエリアの規定のアドレスに記憶させておくことができる。
【００４６】
本発明の情報処理装置内の少なくとも一つのユニットは、図２のＳ２３において上述のように各ユニットの発行したセルフＩＤパケットを解析し、システム相互接続の接続トポロジーを作成しておく。さらに、Ｓ２４において各ユニットから上述のようにしてベンダＩＤ、チップＩＤを順次リードする。そしてＳ２５において、リードしたベンダＩＤ、チップＩＤと、自身あるいは他のユニット内のフラッシュメモリ３内の規定アドレスに保持されている接続を許可するユニットのベンダＩＤ、チップＩＤとの比較を行う。
【００４７】
比較の結果、リードしたユニットのベンダＩＤ、チップＩＤの組み合わせが接続許可リスト中のベンダＩＤ、チップＩＤの組み合わせの１つに一致すれば、そのユニットは接続が許可された正規のユニットであるので、そのまま接続状態を維持する。
【００４８】
リードしたユニットのベンダＩＤ、チップＩＤの組み合わせが接続許可リスト中に存在しない場合、そのユニットは接続が許可されていない接続不許可ユニットである。接続不許可ユニットが検出された場合には、Ｓ２６において、コンフィグレーション時のセルフＩＤパケットの解析により得られたシステム・トポロジーから、接続不許可ユニットがリーフユニットか否かを判定する。接続不許可ユニットがリーフユニットである場合には、他ユニットに影響を与えずに、この情報処理装置から切り離し可能である。Ｓ２７において接続不許可ユニットのベンダＩＤ、チップＩＤそのものあるいは関連した情報と、その接続不許可ユニットを切り離す旨のメッセージを例えば表示部５に表示し、ユーザに知らせる。また、同様の情報を通信部６から通信路７を介して他の装置に対して通知する。表示部５への表示と、他の装置に対する通知は、いずれか一方でもよいし、両方行ってもよい。
【００４９】
その後、Ｓ２８において、接続不許可ユニットを切り離す処理を行う。接続不許可ユニットの切り離し処理は、当該接続不許可ユニットあるいはその接続不許可ユニットに直接接続されているユニットのＰＨＹ（図１のＰＨＹ１０に相当）中の規定のレジスタの規定のビットをセット（あるいはリセット）することで行うことができる。
【００５０】
図６は、ＰＨＹレジスタの一例の説明図、図７は、ＰＨＹレジスタ中のＰｏｒｔ  Ｓｔａｔｕｓ  ｐａｇｅのフォーマットの一例の説明図である。例えば、ＩＥＥＥ  Ｐ１３９４ａ  Ｄｒａｆｔ２．０では、図６に示すようなＰＨＹレジスタのフォーマットが規定されている。このような図６に示すＰＨＹレジスタのアドレス０ｘ７のＰａｇｅ−Ｓｅｌｅｃｔフィールドに切り離し処理を行うポートナンバを設定することで、切り離し処理を行うポートに関連したｐｏｒｔ  Ｓｔａｔｕｓ  ｐａｇｅを選択できる。ｐｏｒｔ  Ｓｔａｔｕｓ  ｐａｇｅは図７に示すようなフォーマットであり、そのアドレス０ｘ８，ｂｉｔ７のＤｉｓａｂｌｅｄ  ｂｉｔに“１”をセットすることで、当該ポートを切り離すことができる。
【００５１】
図２に戻り、このようにして１つのユニットについて、正規のユニットか接続不許可ユニットかの判断および接続不許可ユニットがリーフユニットである場合の切り離し処理を行って、そのユニットについての処理を終える。Ｓ２９においてすべてのユニットについてこのような処理を行ったか否かを判定し、未処理のユニットが残っている場合にはＳ２４へ戻る。
【００５２】
Ｓ２６において接続不許可ユニットがリーフユニットではないと判定された場合、その接続不許可ユニットはシステムに影響を与えずに切り離すことができないと判断する。この場合には、Ｓ３０において、接続不許可ユニットのベンダＩＤ、チップＩＤそのものあるいは関連した情報と、立ち上げ処理を中断する旨のメッセージを例えば表示部５あるいは通信部６を介して、ユーザあるいはホスト等の他の装置に対して表示あるいは通知する。表示部５への表示と、他の装置に対する通知は、いずれか一方でもよいし、両方行ってもよい。このような表示あるいは通知を行った上で、この情報処理装置の立ち上げ処理を中断する。
【００５３】
なお、上述の動作の説明において、セルフＩＤパケットの解析によるシステム・トポロジーの検知処理、各ユニットのコンフィグレーションＲＯＭのベンダＩＤ、チップＩＤのリード、各ユニットからリードしたベンダＩＤ、チップＩＤと接続許可ユニットリストとの比較、接続不許可ユニットが切り離し可能か否かの判断などの処理は、情報処理装置内に少なくとも１つ存在するＣＰＵ２で実行することができる。
【００５４】
次に、上述の動作、特に各ユニットについての判定動作について、具体例を用いて説明する。図８は、ユニットが追加された情報処理装置の一例を示すシステム構成図である。図中、１６は追加ユニットである。なお、正規のシステム構成は図１に示すものであるとし、ユニット１，１２，１３に対応するベンダＩＤ、チップＩＤの組み合わせが接続許可ユニットリストに保持されているものとする。図８に示す例では、ユニット１３に追加ユニット１６が接続された例を示している。
【００５５】
例えばユニット１からユニット１２，ユニット１３のベンダＩＤ、チップＩＤをリードし、フラッシュメモリ３内の接続許可ユニットリストとの比較を行うと、一致する組み合わせが存在するので、そのまま接続された状態が保たれる。
【００５６】
追加ユニット１６からベンダＩＤ、チップＩＤをリードし、接続許可ユニットリストと比較すると、接続許可ユニットリスト内に追加ユニット１６のベンダＩＤ、チップＩＤの組み合わせが存在しない。そのため、追加ユニット１６は接続不許可ユニットであると判断される。
【００５７】
さらに、コンフィグレーション時のセルフＩＤパケットの解析により得られたシステム・トポロジーから、追加ユニット１６はリーフユニットであることが検出される。そのため、この追加ユニット１６は、情報処理装置に影響を与えずに切り離すことが可能であると判断する。表示部５および通信部６に対して、追加ユニット１６のベンダＩＤ、チップＩＤそのものあるいは関連情報と、この追加ユニット１６を切り離す旨のメッセージを送り、表示または他の装置に送信させる。その後、この追加ユニット１６を情報処理装置から切り離す。
【００５８】
このようにして追加ユニット１６が切り離された後、通常の立ち上げ動作を行う。これによって、追加ユニット１６以外のユニット、すなわちユニット１，１２，１３のみによる予め設定された構成によって動作することができる。そのため、追加ユニット１６の接続によってデータ転送オーバーヘッドが変化し、正常動作の阻害されることが無くなり、情報処理装置を正常にしかも最適な状態で動作させることが可能になる。
【００５９】
図９は、ユニットが追加された情報処理装置の別の例を示すシステム構成図である。図中、１７は追加ユニットである。なお、この例においても、正規のシステム構成は図１に示すものであるとし、ユニット１，１２，１３に対応するベンダＩＤ、チップＩＤの組み合わせが接続許可ユニットリストに保持されているものとする。図９に示す例では、ユニット１とユニット１３の間に追加ユニット１７が接続された例を示している。
【００６０】
例えばユニット１からユニット１２，ユニット１３のベンダＩＤ、チップＩＤをリードし、フラッシュメモリ３内の接続許可ユニットリストとの比較を行うと、一致する組み合わせが存在するので、そのまま接続された状態が保たれる。
【００６１】
追加ユニット１７からベンダＩＤ、チップＩＤをリードし、接続許可ユニットリストと比較すると、接続許可ユニットリスト内に追加ユニット１７のベンダＩＤ、チップＩＤの組み合わせが存在しない。そのため、追加ユニット１７は接続不許可ユニットであると判断される。
【００６２】
さらに、コンフィグレーション時のセルフＩＤパケットの解析により得られたシステム・トポロジーから、追加ユニット１７はリーフユニットではないことが検出される。そのため、この追加ユニット１７は、情報処理装置に影響を与えずに切り離すことができないと判断される。この場合には、表示部５および通信部６に対して、追加ユニット１７のベンダＩＤ、チップＩＤそのものあるいは関連情報と、立ち上げ処理を中断する旨のメッセージを送り、表示または他の装置に送信させる。その後、この情報処理装置の立ち上げ処理を中断する。
【００６３】
これによって、情報処理装置の動作に影響を与える可能性のある追加ユニット１７が接続された状態での動作を行わない。そのため、追加ユニット１７の接続によって正常動作が阻害されることがない。
【００６４】
なお、上述の説明では、接続許可ユニットリストをフラッシュメモリ３に格納しておくものとした。このように接続許可ユニットリストを書き換え可能な記憶手段に格納しておくことによって、接続許可ユニットが更新された場合に、接続許可ユニットリストを更新することが可能である。また、接続許可ユニットリストを不揮発性の記憶手段に格納しておくことによって、電源が切断されても接続許可ユニットリストを保持しておき、立ち上げの際に即座に利用することが可能である。しかし本発明はこれに限らず、例えば接続許可ユニットリストを外部記憶手段に格納しておいてもよい。この場合には、立ち上げのたびに外部記憶手段から接続許可ユニットリストをロードする必要がある。
【図面の簡単な説明】
【００６５】
【図１】本発明の情報処理装置の実施の一形態を示すシステム構成図である。
【図２】本発明の情報処理装置の実施の一形態における動作の一例を示すフローチャートである。
【図３】セルフＩＤパケットの一例の説明図である。
【図４】セルフＩＤパケット中のポート情報の一例の説明図である。
【図５】コンフィグレーションＲＯＭのフォーマットの説明図である。
【図６】ＰＨＹレジスタの一例の説明図である。
【図７】ＰＨＹレジスタ中のＰｏｒｔ  Ｓｔａｔｕｓ  ｐａｇｅのフォーマットの一例の説明図である。
【図８】ユニットが追加された情報処理装置の一例を示すシステム構成図である。
【図９】ユニットが追加された情報処理装置の別の例を示すシステム構成図である。
【図１０】ＩＥＥＥ１３９４バスプロトコルの一例の説明図である。
【符号の説明】
【００６６】
１，１２，１３…ユニット、２…ＣＰＵ、３…フラッシュメモリ、４…メモリ、５…表示部、６…通信部、７…通信路、８…内部バス、９…ＬＩＮＫ、１０…ＰＨＹ、１４，１５…ＩＥＥＥ１３９４相互接続、１６，１７…追加ユニット。
【図１】
2007014004.tif 000003
【図２】
2007014004.tif 000004
【図３】
2007014004.tif 000005
【図４】
2007014004.tif 000006
【図５】
2007014004.tif 000007
【図６】
2007014004.tif 000008
【図７】
2007014004.tif 000009
【図８】
2007014004.tif 000010
【図９】
2007014004.tif 000011
【図１０】
2007014004.tif 000012