(57)【要約】【課題】故障が望ましくない結果を発生させる前に、コンピュータシステム内の構成要素間の故障を検出できるコンピュータシステムを提供する。【解決手段】オペレーティングシステム、第１のテストモジュールを備える第１の構成要素、第２のテストモジュールを備える第２の構成要素、および、第１の構成要素と第２の構成要素とを連結する相互接続部を備えるコンピュータシステムが供給される。第１のテストモジュールは、構成されて、オペレーティングシステムからの第１の信号に応答して、第１のテストパターンを、相互接続部上の第２のテストモジュールに供給する。第２のテストモジュールは、テストパターンの受け取りに応答して、エラーを検出する。第２のテストモジュールは、テストパターンを、第１の相互接続部テストモジュールに戻すこともできる。エラーが相互接続部において検出された場合は、対応措置がとられる。【選択図】図１
2005166058.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステム（１３２）と、
第１のテストモジュール（１５０ａ／１５０ｃ）を備える第１の構成要素（１１０ａ／１２４ａ）と、
第２のテストモジュール（１５０ｂ／１５０ｄ）を備える第２の構成要素（１２２／１２６／１４０ａ）と、
前記第１の構成要素と前記第２の構成要素とを連結する相互接続部（１４２ａ／１４６ａ）と
を備え、
前記第１のテストモジュールは、前記オペレーティングシステムからの第１の信号に応答して、前記相互接続部上の前記第２のテストモジュールに、第１のテストパターンを与えるように構成される
コンピュータシステム（１００）。
【請求項２】
前記第２のテストモジュールは、前記第１のテストパターンを受け取ることに応じて、前記相互接続部上のエラーを検出するように構成される
請求項１に記載のコンピュータシステム。
【請求項３】
前記第２のテストモジュールは、前記第１のテストモジュールに、第２のテストパターンを与えるように構成される
請求項１に記載のコンピュータシステム。
【請求項４】
前記第１のテストモジュールは、前記第２のテストパターンを受け取ることに応じて、前記相互接続部上のエラーを検出するように構成される
請求項３に記載のコンピュータシステム。
【請求項５】
前記オペレーティングシステムは、前記第１のテストモジュールからの第２の信号を検出することに応じて、前記第１のテストモジュールに、前記第１の信号を与えるように構成される
請求項１に記載のコンピュータシステム。
【請求項６】
前記オペレーティングシステムを起動させるように構成されるプロセッサ（１１０）
をさらに備え、
前記第１のテストモジュールは、前記オペレーティングシステムの起動後に、前記第２の信号を生成するように構成される
請求項５に記載のコンピュータシステム。
【請求項７】
前記第１の構成要素は、
プロセッサ（１１０ａ）
を備え、
前記第２の構成要素は、
前記プロセッサに連結されるコントローラ（１２２／１２６）
を備える
請求項１に記載のコンピュータシステム。
【請求項８】
前記第１のテストモジュールは、前記オペレーティングシステムに、第２の信号を与えて、前記プロセッサを、前記オペレーティングシステムによる使用から割り当て解除させるように構成され、
前記オペレーティングシステムは、前記プロセッサに割り当て解除させることに応じて、前記第１のテストモジュールに、前記第２の信号を与えるように構成される
請求項７に記載のコンピュータシステム。
【請求項９】
前記第１の構成要素は、
入出力（Ｉ／Ｏ）コントローラ（１２４ａ）
を備え、
前記第２の構成要素は、
拡張スロット（３２０）を通して、前記Ｉ／Ｏコントローラに連結される入出力（Ｉ／Ｏ）装置（１４０ａ）
を備える
請求項１に記載のコンピュータシステム。
【請求項１０】
前記第１のテストモジュールは、前記オペレーティングシステムに、第２の信号を与えて、前記拡張スロットを、前記オペレーティングシステムによる使用から割り当て解除させるように構成され、
前記オペレーティングシステムは、前記拡張スロットを割り当て解除させることに応じて、前記第１のテストモジュールに、前記第２の信号を与えるように構成される
請求項９に記載のコンピュータシステム。
【請求項１１】
コンピュータシステム（１００）における相互接続部テストモジュール（１５０ａ／１５０ｂ／１５０ｃ／１５０ｄ）によって実行される方法であって、
相互接続部（１４２ａ／１４６ａ）に連結される構成要素（１１０ａ／１２２／１２４ａ／１４０ａ）を、オペレーティングシステム（１３２）による使用から割り当て解除させるようにし、
前記相互接続部に対してテストを実行し、
前記テストの実行におけるエラーを検出することに応じて、前記オペレーティングシステムに通知する
方法。
【発明の詳細な説明】
【技術分野】
【０００１】
コンピュータシステムの相互接続上のエラーを検出するシステムに関する。
【背景技術】
【０００２】
コンピュータシステムは、一般に、互いに電気的に接続される複数の構成要素を備える。
こういった構成要素は、１つ以上のプロセッサ、メモリ装置、入出力（Ｉ／Ｏ）装置、および、メモリならびにＩ／Ｏ装置用のコントローラを含む。
構成要素は、様々なタイプのハウジング内に収容されうるため、構成要素間の接続部は、多様な形を取りうる。
たとえば、構成要素は、マザーボードのスロット／ソケットに接続しうるマイクロチップであってよく、または、そのスロット／ソケットにはんだづけされうるマイクロチップであってもよい。
構成要素はまた、マザーボードのスロットに接続するエッジコネクタを有する回路基板の形も取りうる。
さらに、構成要素は、マザーボードのコネクタまたはマザーボードを収容するシャシのプラグに、構成要素を接続するケーブルを使用して、コンピュータシステムに接続される場合もある。
【０００３】
コンピュータシステムにおける２つの構成要素間の接続部機構にかかわらず、２つ以上の構成要素間の接続部における故障は、より広い故障をシステムに発生させ、ことによると、システムをクラッシュさせる場合がある。
コンピュータシステムの電源投入またはリセットに応答して、構成要素間の相互接続部に何等かの診断テストがなされうるが、このタイプのテストは、長時間にわたって電源投入されたままで、リセットされていないコンピュータシステムの故障を検出しない場合がある。
さらに、相互接続部の特定の故障は、相互接続部の厳密なパターンテストなしでは現れない場合がある。
動作中にコンピュータシステムにおいて発生する相互接続部の故障は、クラッシュ等の望ましくない結果が発生するまで、検出されない場合がある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
したがって、故障が、システムの動作中に、望ましくない結果を発生させる前に、コンピュータシステム内の構成要素間の相互接続部故障を検出できることが望ましいであろう。
【課題を解決するための手段】
【０００５】
例示的な一実施形態によれば、オペレーティングシステム、第１のテストモジュールを備える第１の構成要素、第２のテストモジュールを備える第２の構成要素、および、第１の構成要素と第２の構成要素とを連結する相互接続部を備えるコンピュータシステムが供給される。
第１のテストモジュールは、構成されて、オペレーティングシステムからの第１の信号に応答して、第１のテストパターンを、相互接続部上の第２のテストモジュールに供給する。
【発明を実施するための最良の形態】
【０００６】
好ましい実施形態の以下の詳細な説明では、本明細書の一部を成し、例として本発明を実施しうる特定の実施形態を示す添付図面を参照する。
他の実施形態も利用されることができ、構造的または論理的な変更が、本発明の範囲から逸脱することなく、なされうることを理解されたい。
したがって、以下の詳細な説明は、限定の意味で解釈されるべきではなく、本発明の範囲は、添付の特許請求の範囲によって規定される。
【０００７】
本開示の一態様では、コンピュータシステムは、コンピュータシステム内の相互接続部に対するテストを実行するように構成される相互接続部テストモジュールを備える。
相互接続部テストモジュールは、相互接続部に連結された構成要素に含まれる。
相互接続部をテストするために、相互接続部テストモジュールは、相互接続部に連結された構成要素がコンピュータシステムによる使用から割り当て解除されるようにし、次に、テストパターンの形の信号を、第２の相互接続部テストモジュールに供給する。
第２の相互接続部テストモジュールは、テストパターンの受け取りに応答して、エラーを検出する。
第２の相互接続部テストモジュールは、テストパターンを、第１の相互接続部テストモジュールに戻すこともできる。
エラーが相互接続部において検出された場合は、対応措置がとられる。
【０００８】
図１は、相互接続部テストモジュール１５０ａ、１５０ｂ、１５０ｃおよび１５０ｄを備えるコンピュータシステム１００の一実施形態を示すブロック図である。
本明細書で用いる場合、「相互接続部テストモジュール１５０」は、相互接続部テストモジュール１５０ａ、１５０ｂ、１５０ｃまたは１５０ｄのいずれか１つを指し、「相互接続部テストモジュール（複数）１５０」は、相互接続部テストモジュール１５０ａ、１５０ｂ、１５０ｃおよび１５０ｄのセットを指す。
【０００９】
コンピュータシステム１００は、ハンドヘルド、デスクトップ、ノートブック、モバイル、ワークステーションまたはサーバコンピュータ等、いずれのタイプのコンピュータシステムであってもよい。
コンピュータシステム１００は、プロセッサ１１０ａ〜１１０（ｎ）、コア電子複合体１２０、メモリ１３０および一組の入出力（Ｉ／Ｏ）装置１４０を備える。
プロセッサ１１０ａ〜１１０（ｎ）はそれぞれ、一組のバス接続部１４２を使用して、コア電子複合体１２０に連結される。
バス接続部１４２は、一組のシステムバスを含む。
コア電子複合体１２０は、接続部１４４および１４６のそれぞれを使用して、メモリ１３０およびＩ／Ｏ装置１４０に連結される。
コア電子複合体１２０は、チップセットと呼ばれてもよい。
【００１０】
コンピュータシステム１１０ａは、１つ以上の任意の数のプロセッサ１１０を備える。
本明細書で用いる場合、「プロセッサ１１０」は、プロセッサ１１０ａ〜１１０（ｎ）のいずれか１つを指し、「プロセッサ（複数）１１０」は、プロセッサ１１０ａ〜１１０（ｎ）のセットを指す。
【００１１】
プロセッサ１１０ａは、キャッシュ１１２に連結され、プロセッサ１１０ｂは、キャッシュ１１４を備える。
キャッシュ１１２および１１４は、命令およびデータ等、任意のタイプの情報を記憶できる。
他のプロセッサ（複数）１１０は、任意のタイプまたは任意の数のキャッシュを備えるか、または、任意のタイプまたは任意の数のキャッシュとともに動作可能であってよい。
【００１２】
コンピュータシステム１００は、１つ以上のプロセッサ（複数）１１０によって実行可能なオペレーティングシステム１３２も備える。
電源投入またはリセットに応答して、１つ以上のプロセッサ（複数）１１０が、オペレーティングシステム１３２を起動させ、実行させる。
プロセッサ（複数）１１０は、メモリ１３０を使用して、オペレーティングシステム１３２および他のプログラムからの命令を実行する。
【００１３】
コア電子（electronics）複合体１２０は、システムコントローラ１２２および一組のＩ／Ｏコントローラ１２４を備える。
システムコントローラ１２２は、メモリコントローラ１２６を備える。
このメモリコントローラ１２６は、構成されて、プロセッサ１１０およびＩ／Ｏ装置１４０からの書き込みトランザクションおよび読み出しトランザクションのそれぞれに応答して、メモリ１３０に情報を記憶するか、または、メモリ１３０から情報を読み出す。
メモリコントローラ１２６は、メモリ１３０からの情報の読み出しに応答して、メモリ１３０に対するメモリスクラビング機能または他のエラー修正機能を実行するように構成されたハードウェアおよび／またはソフトウェアを備えうる。
【００１４】
Ｉ／Ｏコントローラ（複数）１２４は、１つ以上のＩ／Ｏ装置１４０を管理するように構成された任意のタイプおよび任意の数のコントローラを備えうる。
Ｉ／Ｏコントローラ１２４（複数）の例は、ＩＤＥ／ＡＴＡコントローラ、ＳＡＴＡコントローラ、ＰＣＩコントローラ、ＳＣＳＩコントローラ、ＵＳＢコントローラ、ＩＥＥＥ１３９４（ファイアワイヤ）コントローラ、ＰＣＭＣＩＡコントローラ、パラレルポートコントローラおよびシリアルポートコントローラである。
一実施形態では、Ｉ／Ｏコントローラ（複数）１２４は、複数のマイクロチップを備え、これらのマイクロチップは、システムコントローラ１２２に連結された中間バス、この中間バスに連結されたＰＣＩコントローラ、および、このＰＣＩコントローラに連結されたＳＣＳＩ、ＩＤＥならびに他のコントローラを含む。
本明細書で用いる場合、「Ｉ／Ｏコントローラ１２４」は、Ｉ／Ｏコントローラ（複数）１２４のうちの単一のＩ／Ｏコントローラを指し、「Ｉ／Ｏコントローラ（複数）１２４」は、Ｉ／Ｏコントローラ１２４のセットを指す。
【００１５】
メモリ１３０は、ＲＡＭ、ＳＲＡＭ、ＤＲＡＭ、ＳＤＲＡＭおよびＤＤＲ  ＳＤＲＡＭ等のメモリコントローラ１２６によって管理される任意のタイプのメモリを含む。
システムファームウェア（図示せず）またはオペレーティングシステム１３２からのコマンドに応答して、メモリコントローラ１３０は、ハードドライブまたはＣＤ−ＲＯＭドライブ等のＩ／Ｏ装置１４０からメモリ１３０に、情報をロードできる。
【００１６】
Ｉ／Ｏ装置（複数）１４０は、Ｉ／Ｏコントローラ（複数）１２４を使用してコンピュータシステム１００と通信するように構成された任意のタイプおよび任意の数の装置を含みうる。
各Ｉ／Ｏ装置１４０は、コンピュータシステム１００に対して内部にあってもまたは外部にあってもよく、マザーボードの拡張スロット、または、Ｉ／Ｏコントローラ１２４に順番に連結されたコンピュータシステム１００を収容するシャシのコネクタに連結できる。
Ｉ／Ｏ装置（複数）１４０は、コンピュータシステム１００が、他のコンピュータシステム、および、情報を記憶するように構成される記憶装置（図示せず）と通信できるように構成されたネットワーク装置（図示せず）を備えうる。
本明細書で用いる場合、「Ｉ／Ｏ装置１４０」は、Ｉ／Ｏ装置（複数）１４０のうちの単一のＩ／Ｏ装置を指し、「Ｉ／Ｏ装置（複数）１４０）」は、Ｉ／Ｏ装置１４０のセットを指す。
【００１７】
相互接続部テストモジュール１５０は、コンピュータシステム１００の動作中、すなわちオペレーティングシステム１３２の起動後に動作して、コンピュータシステム１００の２つの構成要素間の相互接続部に対してテストを実行する。
図１に示す実施形態では、相互接続部テストモジュール１５０ａおよび１５０ｂは、構成されて、プロセッサ１１０ａとシステムコントローラ１２２との間の相互接続部、すなわちシステムバス１４２に対して、テストを実行する。
同様に、相互接続部テストモジュール１５０ｃおよび１５０ｄも、構成されて、Ｉ／Ｏコントローラ１２４とＩ／Ｏ装置１４０との間の相互接続部、すなわち接続部１４６に対して、テストを実行する。
【００１８】
図２は、相互接続部テストモジュール１５０の一実施形態を示すブロック図である。
相互接続部テストモジュール１５０は、テストユニット２０２、切り替え機構２０４およびエラーログ２０６を備える。
切り替え機構２０４は、構成要素からの接続部２１２、および、テストユニット２０２からのテスト接続部２１４に連結される。
切り替え機構２０４は、ＡＳＩＣ内の明示的な切り替え構成要素、または、個々のＡＳＩＣ  Ｉ／Ｏパッドそれぞれに組み込まれうる機能であることができる。
【００１９】
テストユニット２０２は、制御信号２１６を切り替え機構２０４に供給して、接続部２１２またはテスト接続部２１４を、接続部２１８に連結させる。
切り替え機構２０４は、テストユニット２０２から制御信号２１６を受け取ることに応答して、接続部２１８を、接続部２１２またはテスト接続部２１４のいずれかに連結する。
通常動作中、テストユニット２０２は、切り替え機構２０４に対して、接続部２１２を接続部２１８に連結させる。
しかし、テスト動作モードでは、テストユニット２０２は、切り替え機構２０４に対して、接続部２１４を接続部２１８に連結させて、テストユニット２０２が、接続部２１８に連結された相互接続部に対して、テストを実行できるようにする。
【００２０】
テストユニット２０２は、接続部２１８に連結された相互接続部に対してテストが実行されるように構成された状態機械を備える。
テストは、接続部２１８に連結された相互接続部に供給され伝達される信号の任意の適した組み合わせを含むことができ、この信号の組み合わせは、テストパターンと呼ばれる
相互接続部に連結された第２の相互接続部テストモジュール１５０は、テストパターンを受け取って、第１の相互接続部テストモジュール１５０から第２の相互接続部テストモジュール１５０にテストパターンを送る際に、エラーが発生したか否かを判断する。
エラーが発生した場合、第２の相互接続部テストモジュール１５０は、障害を、自己のエラーログ２０６に記録する。
第２の相互接続部テストモジュール１５０はまた、テストパターンを、第１の相互接続部テストモジュール１５０に供給する。
第２の相互接続部テストモジュール１５０からのテストパターンの受け取りに応答して、第１の相互接続部テストモジュール１５０内のテストユニット２０２は、任意のエラーを検出し、第１の相互接続部テストモジュール１５０のエラーログ２０６に、エラーを記録する。
【００２１】
相互接続部に対してテストを実行するには、テストユニット２０２はまず、コンピュータシステム１００に、相互接続部に連結された構成要素を、オペレーティングシステム１３２による使用から割り当て解除させる。
一実施形態では、テストユニット２０２は、要求の形の信号を、オペレーティングシステム１３２へ送ることによって、このタスクを実現する。
オペレーティングシステム１３２は、構成要素を割り当て解除し、ユニット２０２をテストする信号を供給して、構成要素が割り当て解除されたことを示してもよい。
オペレーティングシステム１３２はまた、他の構成要素を割り当てて、少なくとも一時的に、割り当て解除された構成要素に取って代えてもよい。
他の実施形態では、テストユニット２０２は、構成要素が他の方法で割り当て解除されるようにしてもよい。
【００２２】
相互接続部に連結された構成要素が、割り当て解除された後、テストユニット２０２により、テストが、第２のテストユニット２０２と関連する相互接続部に対して、実行される。
テスト実行後またはテスト実行中、テストユニット２０２により、オペレーティングシステム１３２は、任意のエラーと、テストが完了されたこととを通知される。
エラーが発生する場合、オペレーティングシステム１３２により、相互接続部および相互接続部に連結された構成要素をオフラインのままにし、システム管理者に通知する等、適切な対応措置が実行される。
エラーが発生しない場合、オペレーティングシステム１３２により、相互接続部に連結された構成要素は、コンピュータシステム１００における使用に、再び割り当てられうる。
【００２３】
図３ａおよび図３ｂは、図１に示すコンピュータシステムの選択された部分の実施形態を示すブロック図である。
具体的には、図３ａおよび図３ｂは、相互接続部テストモジュール１５０についての２つの考えられうる使用を示す。
相互接続部テストモジュール１５０の他の多くの使用が、可能であり、意図される。
【００２４】
図３ａでは、相互接続部テストモジュール１５０ａを備えるプロセッサ１１０ａが、相互接続部テストモジュール１５０ｂを備えるシステムコントローラ１２２に、コネクタ３００を通して連結される。
コネクタ３００は、コンピュータシステム１００のマザーボード（図示せず）上のソケット、スロットまたは他の接続機構であってよい。
切り替え機構２０４ａは、プロセッサ１００ａのチップコア３０２およびシステムバス１４２ａに接続され、このシステムバス１４２ａは、コネクタ３００を通して、切り替え機構２０４ｂに接続される。
切り替え機構２０４ｂはまた、システムコントローラ１２２のチップコア３０４にも接続される。
【００２５】
プロセッサ１１０ａおよびシステムコントローラ１２２の通常動作中、テストユニット２０２ａおよび２０２ｂにより、切り替え機構２０４ａおよび２０４ｂのそれぞれは、チップコア３０２および３０４のそれぞれを、システムバス１４２ａに接続する。
【００２６】
プロセッサ１１０ａとシステムコントローラ１２２との間の相互接続部、すなわち接続部３００を通るシステムバス１４２ａをテストするために、テストユニット２０２ａおよび２０２ｂにより、切り替え機構２０４ａおよび２０４ｂのそれぞれは、テストユニット２０２ａおよび２０２ｂのそれぞれを、システムバス１４２ａに接続する。
テストユニット２０２ａおよび／または２０２ｂは、オペレーティングシステム１３２を使用して、プロセッサ１１０ａおよびシステムバス１４２ａがオペレーティングシステム１３２による使用から割り当て解除されることによって、相互接続部のテストを開始する。
割り当てられていないプロセッサ１１０は、テスト中に、プロセッサ１１０ａの代わりに、使用のために割り当てられうる。
【００２７】
テスト中、テストユニット２０２ａは、テストパターンを生成し、このテストパターンを、テストユニット２０２ｂに供給する。
テストユニット２０２ｂは、テストパターンを受け取り、受け取られたテストパターンを期待されるテストパターンと比較して、エラーが発生したか否かを判断する。
テストユニット２０２ｂは、検出するエラーを、エラーログ２０６ｂに記憶する。
同様に、テストユニット２０２ｂも、テストパターンを生成し、このテストパターンを、テストユニット２０２ａに供給する。
テストユニット２０２ａは、テストパターンを受け取り、受け取られたテストパターンを期待されるテストパターンと比較して、エラーが発生したか否かを判断する。
テストユニット２０２ａは、検出するエラーを、エラーログ２０６ａに記憶する。
テストパターンに加えて、テストユニット２０２ａおよび２０２ｂはまた、互いに通信する信号を、生成し送ってもよい。
さらに、テストユニット２０２ａおよび２０２ｂは、オペレーティングシステム１３２への信号を、生成し送って、エラーおよび他のテスト結果を報告してもよい。
【００２８】
テストモジュール１５０ｂは、図１および図３ａの実施形態では、システムコントローラ１２２内に示されているが、他の実施形態では、メモリコントローラ１２６に包含されてもよい。
【００２９】
図３ｂでは、相互接続部テストモジュール１５０ｃを備えるＩ／Ｏコントローラ１２４ａは、相互接続部テストモジュール１５０ｄを備えるＩ／Ｏ装置１４０ａに、コネクタ３２０を通して連結される。
コネクタ３２０は、コンピュータシステム１００のマザーボード（図示せず）のソケット、スロットまたは他の接続機構であってよい。
切り替え機構２０４ｃは、Ｉ／Ｏコントローラ１２４ａのチップコア３１２およびバス１４６ａに接続され、バス１４６ａは、コネクタ３２０を通して、切り替え機構２０４ｄに接続される。
切り替え機構２０４ｄはまた、Ｉ／Ｏ装置１４０ａのチップコア３１４にも接続される。
【００３０】
Ｉ／Ｏコントローラ１２４ａおよびＩ／Ｏ装置１４０ａの通常動作中、テストユニット２０２ｃおよび２０２ｄにより、切り替え機構２０４ｃおよび２０４ｄのそれぞれは、チップコア３１２および３１４のそれぞれを、バス１４６に接続する。
【００３１】
Ｉ／Ｏコントローラ１２４ａとＩ／Ｏ装置１４０ａとの間の相互接続部、すなわち、コネクタ３２０を通るバス１４６ａをテストするために、テストユニット２０２ｃおよび２０２ｄにより、切り替え機構２０４ｃおよび２０４ｄのそれぞれは、テストユニット２０２ｃおよび２０２ｄのそれぞれを、バス１４６ａに接続する。
テストユニット２０２ｃおよび／または２０２ｄは、オペレーティングシステム１３２を使用して、Ｉ／Ｏ装置１４０ａおよびシステムバス１４６ａがオペレーティングシステム１３２による使用から割り当て解除されることによって、相互接続部のテストを開始する。
【００３２】
テスト中、テストユニット２０２ｃは、テストパターンを生成し、このテストパターンを、テストユニット２０２ｄに供給する。
テストユニット２０２ｄは、テストパターンを受け取り、受け取られたテストパターンを期待されるテストパターンと比較して、エラーが発生したか否かを判断する。
テストユニット２０２ｄは、検出するエラーを、エラーログ２０６ｄに記憶する。
同様に、テストユニット２０２ｄも、テストパターンを生成し、このテストパターンを、テストユニット２０２ｃに供給する。
テストユニット２０２ｃは、テストパターンを受け取り、受け取られたテストパターンを期待されるテストパターンと比較して、エラーが発生したか否かを判断する。
テストユニット２０２ｃは、検出するエラーを、エラーログ２０６ｃに記憶する。
テストパターンに加えて、テストユニット２０２ｃおよび２０２ｄはまた、互いに通信する信号を、生成し送ってもよい。
さらに、テストユニット２０２ｃおよび２０２ｄは、オペレーティングシステム１３２への信号を、生成し送って、エラーおよび他のテスト結果を報告してもよい。
【００３３】
図４は、相互接続部テストモジュール１５０を使用して、コンピュータシステム１００の動作中に、相互接続部をテストする方法の一実施形態を示すフローチャートである。
相互接続部テストは、ブロック４００に示すように、オペレーティングシステム１３２または相互接続部テストモジュール１５０によって、開始される。
相互接続部テストは、周期的にスケジュールされてもよく、オペレーティングシステム１３２と対話するユーザによってなされる選択に応じて、スケジュールされてもよい。
【００３４】
相互接続部に連結された１つ以上の構成要素が、ブロック４０２に示すように、オペレーティングシステム１３２による使用から、割り当て解除される。
上に述べたように、相互接続部テストモジュール１５０が、要求または他の信号を、オペレーティングシステム１３２に送って、構成要素（複数可）が、割り当て解除されてもよい。
オペレーティングシステム１３２は、相互接続部テストモジュール１５０に信号を返して、構成要素（複数可）が割り当て解除されたこと、すなわち、相互接続部が相互接続部テストモジュール１５０によるテストのために利用可能であることを示すことによって、応答できる
ブロック４０４に示すように、利用可能な場合は、代わりの構成要素が、割り当てられて、割り当て解除された構成要素に取って代わる。
【００３５】
ブロック４０６において、テストが、相互接続部テストモジュール１５０によって、相互接続部に対して実行される。
相互接続部テストモジュール１５０は、テストパターンを生成し、相互接続部を介して、図１、図３ａ、および図３ｂに示すような第２の相互接続部テストモジュール１５０に、このテストパターンを供給することによって、テストを実行する。
ブロック４０８に示すように、相互接続部テストモジュール１５０によって、相互接続部でエラーが検出されたか否かについて、判断が行われる。
エラーを検出するために、第２の相互接続部テストモジュール１５０は、受け取られたテストパターンを、期待されるテストパターンと比較する。
エラーが相互接続部で検出された場合は、ブロック４１０に示すように、オペレーティングシステム１３２および他の相互接続部テストモジュール１５０に通知する、相互接続部に連結された構成要素をオフラインにする、および、システム管理者に通知する等の対応措置がとられる。
【００３６】
エラーが相互接続部で検出されなかった場合、ブロック４１２に示すように、相互接続部に対して実行するテストがまだ他にあるか否かが判断される。
相互接続部に対して実行すべきテストがまだある場合、図示のように、ブロック４０６の機能が繰り返される。
相互接続部に対して実行すべきテストがもうない場合、ブロック４１４に示すように、相互接続部テストモジュール１５０により、結果がオペレーティングシステム１３２に報告される。
相互接続部に連結された構成要素は、ブロック４１６に示すように、再び割り当てられる。
【００３７】
本明細書に述べた実施形態では、相互接続部テストモジュール１５０および構成要素は、ハードウェア、ソフトウェア、または、ハードウェアおよびソフトウェアの任意の組み合わせを含んでよい。
【００３８】
特定の実施形態について本明細書に図示し説明したが、様々な代替および／または等価の実施態様が、本発明の範囲から逸脱することなく、図示し説明した特定の実施形態の代わりに使用されうることが、当業者に理解されよう。
本願は、本明細書において考察した特定の実施形態の適合例または変形例をいずれも包含することを意図する。
したがって、本発明は請求項および請求項の等価物によってのみ限定されることを意図する。
【図面の簡単な説明】
【００３９】
【図１】相互接続部テストモジュールを備えるコンピュータシステムの一実施形態を示すブロック図である。
【図２】相互接続部テストモジュールの一実施形態を示すブロック図である。
【図３ａ】図１に示すコンピュータシステムの選択された部分の一実施形態を示すブロック図である。
【図３ｂ】図１に示すコンピュータシステムの選択された部分の一実施形態を示すブロック図である。
【図４】コンピュータシステムの動作中に相互接続部をテストする方法の一実施形態を示すフローチャートである。
【符号の説明】
【００４０】
１００・・・コンピュータシステム
１１０ａ，１１０ｂ〜１１０（ｎ）・・・プロセッサ
１１２，１１４・・・キャッシュ
１２０・・・コア電子複合体
１２２・・・システムコントローラ
１２４・・・Ｉ／Ｏコントローラ
１２６・・・メモリコントローラ
１３０・・・メモリ
１３２・・・オペレーティングシステム
１４０・・・Ｉ／Ｏ装置
１５０・・・相互接続部テストモジュール
２０２・・・テストユニット
２０４・・・切り替え機構
２０６・・・エラーログ
３００・・・コネクタ
３０２，３０４，３１２，３１４・・・チップコア
３２０・・・コネクタ
【図１】
2005166058.tif 000003
【図２】
2005166058.tif 000004
【図３ａ】
2005166058.tif 000005
【図３ｂ】
2005166058.tif 000006
【図４】
2005166058.tif 000007