(57)【要約】【課題】バス・エージェントのための基準電圧設定するための、バスの現在の構成を識別することを含む方法、装置、およびプログラムを提供する。【解決手段】バス・エージェントのための基準電圧の設定は、バスの現在の構成を識別することを含み、バスは、バス・エージェントに接続された伝導性の経路からなり、バス・エージェントは、バス・エージェント間のデータ通信のためにバスを使用するコンピュータ・ハードウェア装置であり、バスの現在の構成は、バスのアイデンティと、バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、バス・エージェントがバスに現在接続されている順序とを含んでもよく、バス・エージェント毎に基準電圧値を識別することと、バス・エージェント毎に識別された基準電圧値に基づいて各バス・エージェントに対して基準電圧を印加することとを含む。【選択図】図１
2007280400.tif 000002
【特許請求の範囲】
【請求項１】
バス・エージェントのための基準電圧を設定するための方法であって、
バスの現在の構成を識別するステップであって、前記バスは、バス・エージェントに接続された伝導性の経路からなり、前記バス・エージェントは、バス・エージェント間のデータ通信のためにバスを使用するコンピュータ・ハードウェア装置を備え、前記バスの現在の構成は、前記バスのアイデンティと、前記バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、前記バス・エージェントが前記バスに現在接続されている順序とを備える、ステップと、
バス・エージェント毎に基準電圧値を識別するステップと、
バス・エージェント毎に識別された前記基準電圧値に基づいて各バス・エージェントに対して基準電圧を印加するステップと
を含む、方法。
【請求項２】
バス構成定義のリストを作成するステップをさらに含み、各バス構成定義は、バスの識別子と、前記識別されたバスに接続された各エージェントの識別子と、前記エージェントが前記識別されたバスに接続されることになる順序と、エージェント毎の基準電圧値とを含む、請求項１に記載の方法。
【請求項３】
前記バス構成定義のリストを作成するステップは、
各バス構成定義内の各エージェントのための基準電圧上限および下限を識別するステップと、
エージェント毎の前記基準電圧上限および下限に基づいて、エージェント毎の基準電圧値を決定するステップと
をさらに含む、請求項２に記載の方法。
【請求項４】
前記エージェント毎の基準電圧値を識別するステップは、
前記バスのアイデンティと、前記バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、前記バス・エージェントが前記バスに現在接続されている順序とに基づいて、前記バス構成定義のリストからバス構成定義を選択するステップと、
前記選択されたバス構成定義に基づいて、現在の構成内の少なくとも１つのエージェントのための基準電圧値を識別するステップと
をさらに含む、請求項２に記載の方法。
【請求項５】
前記バス構成定義のリスト内のバス構成定義のうちで、前記現在の構成定義に完全に一致するものはなく、
前記バス構成定義のリストから構成定義を選択するステップは、前記現在の構成と最も近似するバス構成定義を選択することをさらに含む、請求項４に記載の方法。
【請求項６】
前記選択されたバス構成定義は、前記バスに現在接続された少なくとも１つのエージェントのための基準電圧値を含んでおらず、
前記選択されたバス構成定義に基づいて現在の構成内の少なくとも１つのエージェントのための基準電圧値を識別するステップは、前記バスのデフォルトの基準電圧値を、基準電圧値が前記選択された構成定義に含まれていないエージェントのための基準電圧値として割り当てるステップをさらに含む、請求項５に記載の方法。
【請求項７】
バス・エージェントのための基準電圧を設定するための装置であって、前記装置は、コンピュータ・プロセッサと、前記コンピュータ・プロセッサに動作可能に結合された、コンピュータ・プログラムを内部に格納したメモリとを備え、前記コンピュータ・プログラムは、前記コンピュータ・プロセッサに、
バスの現在の構成を識別するステップであって、前記バスは、バス・エージェントに接続された伝導性の経路からなり、前記バス・エージェントは、バス・エージェント間のデータ通信のためにバスを使用するコンピュータ・ハードウェア装置を備え、前記バスの前記現在の構成は、前記バスのアイデンティと、前記バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、前記バス・エージェントが前記バスに現在接続されている順序とを備える、ステップと、
バス・エージェント毎に基準電圧値を識別するステップとを実行させるものであり、
前記装置は、バス・エージェント毎に識別された前記基準電圧値に基づいて各バス・エージェントに対して基準電圧を印加する手段をさらに備える、装置。
【請求項８】
前記コンピュータ・プログラムは、バス構成定義のリストを作成するステップをさらに前記コンピュータ・プロセッサに実行させることを含み、各バス構成定義は、バスの識別子と、前記識別されたバスに接続された各エージェントの識別子と、前記エージェントが前記識別されたバスに接続されることになる順序と、そのようなエージェント毎の基準電圧値とを含む、請求項７に記載の装置。
【請求項９】
前記バス構成定義のリストを作成するステップは、
各バス構成定義内の各エージェントのための基準電圧上限および下限を識別するステップと、
前記エージェント毎の基準電圧上限および下限に基づいて、エージェント毎の基準電圧値を決定するステップと
をさらに含む、請求項８に記載の装置。
【請求項１０】
前記エージェント毎の基準電圧値を識別するステップは、
前記バスのアイデンティと、前記バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、前記バス・エージェントが前記バスに現在接続されている順序とに基づいて、前記バス構成定義のリストからバス構成定義を選択するステップと、
前記選択されたバス構成定義に基づいて、現在の構成内の少なくとも１つのエージェントのための基準電圧値を識別するステップと
をさらに含む、請求項８に記載の装置。
【請求項１１】
前記バス構成定義のリスト内のバス構成定義のうちで、前記現在の構成定義に完全に一致するものはなく、
前記バス構成定義のリストから構成定義を選択するステップは、前記現在の構成と最も近似するバス構成定義を選択することをさらに含む、請求項１０に記載の装置。
【請求項１２】
前記選択されたバス構成定義は、前記バスに現在接続された少なくとも１つのエージェントのための基準電圧値を含んでおらず、
前記選択されたバス構成定義に基づいて現在の構成内の少なくとも１つのエージェントのための基準電圧値を識別するステップは、前記バスのデフォルトの基準電圧値を、基準電圧値が前記選択された構成定義に含まれていないエージェントのための基準電圧値として割り当てるステップをさらに含む、請求項１１に記載の装置。
【請求項１３】
バス・エージェントのための基準電圧を設定するためのコンピュータ・プログラムであって、前記コンピュータ・プログラムは、
バスの現在の構成を識別するステップであって、前記バスは、バス・エージェントに接続された伝導性の経路からなり、前記バス・エージェントは、バス・エージェント間のデータ通信のためにバスを使用するコンピュータ・ハードウェア装置を備え、前記バスの前記現在の構成は、前記バスのアイデンティと、前記バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、前記バス・エージェントが前記バスに現在接続されている順序とを備える、ステップと、
バス・エージェント毎に基準電圧値を識別するステップと、
バス・エージェント毎に識別された前記基準電圧値に基づいて各バス・エージェントに対して基準電圧を印加するステップと
を前記コンピュータに実行させる、コンピュータ・プログラム。
【請求項１４】
バス構成定義のリストを作成するステップをさらに前記コンピュータに実行させることを含み、各バス構成定義は、バスの識別子と、前記識別されたバスに接続された各エージェントの識別子と、前記エージェントが前記識別されたバスに接続されることになる順序と、そのようなエージェント毎の基準電圧値とを含む、請求項１３に記載のコンピュータ・プログラム。
【請求項１５】
前記バス構成定義のリストを作成するステップは、
各バス構成定義内の各エージェントのための基準電圧上限および下限を識別するステップと、
エージェント毎の前記基準電圧上限および下限に基づいて、エージェント毎の基準電圧値を決定するステップと
をさらに含む、請求項１４に記載のコンピュータ・プログラム。
【請求項１６】
前記エージェント毎の基準電圧値を識別するステップは、
前記バスのアイデンティと、前記バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、前記バス・エージェントが前記バスに現在接続されている順序とに基づいて、前記バス構成定義のリストからバス構成定義を選択するステップと、
前記選択されたバス構成定義に基づいて、現在の構成内の少なくとも１つのエージェントのための基準電圧値を識別するステップと
をさらに含む、請求項１４に記載のコンピュータ・プログラム。
【請求項１７】
前記バス構成定義のリスト内のバス構成定義のうちで、前記現在の構成定義に完全に一致するものはなく、
前記バス構成定義のリストから構成定義を選択するステップは、前記現在の構成と最も近似するバス構成定義を選択することをさらに含む、請求項１６に記載のコンピュータ・プログラム。
【請求項１８】
前記選択されたバス構成定義は、前記バスに現在接続された少なくとも１つのエージェントのための基準電圧値を含んでおらず、
前記選択されたバス構成定義に基づいて現在の構成内の少なくとも１つのエージェントのための基準電圧値を識別するステップは、前記バスのデフォルトの基準電圧値を、基準電圧値が前記選択された構成定義に含まれていないエージェントのための基準電圧値として割り当てるステップをさらに含む、請求項１７に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の分野は、データ処理に関し、または、より特定的には、バス・エージェントのための基準電圧を設定するための方法、装置およびプログラムに関する。
【背景技術】
【０００２】
コンピュータ・システムにおけるバスは、当該バスに結合されたバス・エージェント間でデータを通信する。本明細書において使用されているように、「エージェント」または「バス・エージェント」とは、データ通信のためのバスを使用するコンピュータ・ハードウェア装置のことを指す。典型的な一構成において、バスは、１つ以上のデータ・ラインと、クロック信号ラインとを有する。クロック信号ラインは、データ通信のためのペースを設定する。簡素化された理論上のシステムにおいては、特定のエージェントがデータをバスを介して受信している場合に、各クロック・パルスにおいて、エージェントは、バス・データ・ラインを検査する。データ・ラインに電圧が生じている場合には、受信されるビットは１であり、電圧が生じていない場合には、受信されるビットは０である。しかしながら、実際のコンピュータ・システムにおいては、バス・データ・ラインは、誘導された電流、信号の反射などの結果として、ほとんどいつも何らかの電圧が生じている。各バス上のこの背景ノイズ電圧量は、バスの構成によって様々である。バス・エージェントがこのノイズのある環境において１または０を検出できるようにするために、基準電圧がしばしば使用される。基準電圧は、バス・エージェントに対して識別点を与える。データ・ライン上の電圧が基準電圧以下の場合には、バス・エージェントは、受信信号が０であるとみなし、基準ライン上の電圧が基準電圧より大きい場合には、バス・エージェントは、受信信号が１であるとみなす。
【０００３】
バス・エージェントに対する基準電圧を決定するには、コンピュータ・システム設計者は、高基準電圧値および低基準電圧値を決定してもよい。高基準電圧値および低基準電圧値は、基準電圧不良（ｆａｉｌ）点である。すなわち、基準電圧が高基準電圧値より高く設定された場合には、バス・エージェントは、データ・ラインにおける１つ以上の高電圧状態を正確に識別できなくなる恐れがあるので、１などが０として誤って解釈されかねない。基準電圧が低基準電圧より低く設定された場合には、バス・エージェントは、データ・ラインにおける１つ以上の低電圧状態を正確に識別できなくなる恐れがあるので、０などが１として誤って解釈されかねない。そういうわけで、バスのための基準電圧値が基準電圧上限と基準電圧下限との間で選択される。低周波数バスについては、高基準電圧値と低基準電圧値との中間点が選択されてもよい。高周波数バスについては、基準電圧下限から基準電圧上限へ至るうちの３分の２の点が選択されることが多い。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
バス上の背景ノイズの量はバスの構成によって様々でありうるので、基準電圧上限および基準電圧下限も構成によって様々である。したがって、バスの１つ以上の構成が可能または見込まれる場合には、コンピュータ・システム設計者は、バスのための基準電圧を、予想されるバスの構成に基づいて選択することが多い。このやり方の１つは、バスの可能なまたは見込まれる構成毎に、バス・エージェント毎の高基準電圧値および低基準電圧値を決定することである。この方法を使用して、基準電圧上限と基準電圧下限とのいくつかのセットを、バス・エージェント毎に決定する。そして、コンピュータ・システム設計者は、検討されたどの構成においてもバス・エージェントが動作できることが見込まれるデフォルトの基準電圧値をバス毎に選択する。数多くの構成候補のためにデフォルトの基準電圧値を選択するこの方法の問題の１つは、なんらかの誤差範囲が犠牲になる場合があるということである。すなわち、デフォルトの基準電圧値を使用している動作中に、デフォルトの基準電圧値が実際の現在のバスの構成よりも高すぎるか、または低すぎる結果、あるデータ信号が誤って解釈される場合がある。
【課題を解決するための手段】
【０００５】
バス・エージェントのための基準電圧設定するための、バスの現在の構成を識別することを含む方法、装置、およびプログラムが開示される。バスは、バス・エージェントに接続された伝導性の経路からなり、バス・エージェントは、バス・エージェント間のデータ通信のためにバスを使用するコンピュータ・ハードウェア装置である。バスの現在の構成は、バスのアイデンティと、バスに現在接続されている１つ以上のバス・エージェントのアイデンティティと、バス・エージェントがバスに現在接続されている順序とを含んでもよく、バス・エージェント毎に基準電圧値を識別することと、バス・エージェント毎に識別された基準電圧値に基づいて各バス・エージェントに対して基準電圧を印加することとを含む。
【発明を実施するための最良の形態】
【０００６】
本発明の実施形態に係るバス・エージェントのための基準電圧を設定するための方法、装置、およびプログラムの例を、図１から始まる添付の図面を参照して説明する。本発明に係るバス・エージェントのための基準電圧の設定は、一般的にはコンピュータ、すなわち、自動コンピューティング機械によって行われる。図１は、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するためのコンピュータ・システムの例を示すブロック図を示す。図１のコンピュータ（２００）は、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するために通常動作するものであり、これは、バスの現在の構成を識別することと、バス・エージェント毎に基準電圧値を識別することと、バス・エージェント毎に識別された基準電圧に基づいて各バス・エージェントに対して基準電圧を印加することによって行われる。
【０００７】
コンピュータ（２００）は、少なくとも１つのコンピュータ・プロセッサ（２０２）を含む。プロセッサ（２０２）は、バス・アダプタ（２０４）にバス（２０６）を介して結合されている。バス・アダプタは、コンピュータ内の様々なバス上の他のハードウェア装置間のデータ通信を促進するコンピュータ・ハードウェア装置である。バス・アダプタは、バス・エージェントに対する通信を経路設定することと、バス・エージェントに対する通信をスケジューリングすることと、バス・エージェントによってバスに対するアクセスを制御することと、２つ以上のバス間のインターフェースとしての役割を果たすこととによって、バス上のコンピュータ構成要素間の通信を促進する。本発明の実施形態に係るバス・エージェントのための基準電圧を設定するために適合されるような高速バスのためのバス・アダプタの例には、インテル社のＮｏｒｔｈｂｒｉｄｇｅおよびインテル社のＭｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ  Ｈｕｂがある。
【０００８】
バス・アダプタ（２０４）は、ビデオ・アダプタ（２０８）にバス（２１２）を介して結合されている。ビデオ・アダプタ（２０８）は、ビデオおよびグラフィックス・データを受信し、データを表示用に準備し、データを表示装置（２１０）へ転送する、コンピュータ・ハードウェア装置である。本発明の実施形態に係るバス・エージェントのための基準電圧を設定する、システムにおいて有用なビデオ・アダプタの例には、ＡＴＩ  Ｒａｄｅｏｎ（商標）  Ｘ１８００  ＧＴＯ  Ｖｉｄｅｏ  ＣａｒｄおよびＮｖｉｄｉａ  ＧｅＦｏｒｃｅ（商標）  ７８００  ＧＳ  ＡＧＰ  Ｖｉｄｅｏ  Ｃａｒｄがある。本発明の実施形態に係るバス・エージェントのための基準電圧を設定する、システムにおいて有用なビデオ・バスの例には、アクセラレーテッド・グラフィックス・ポート（「ＡＧＰ」）バスおよびＰｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  ｅｘｐｒｅｓｓ（「ＰＣＩエクスプレス」）バスがある。
【０００９】
コンピュータ（２００）において、バス・アダプタ（２０４）は、ランダム・アクセス・メモリ（「ＲＡＭ」）（２１４）にバス（２２２）を介して結合されている。ＲＡＭ（２１４）に記憶されているのは、オペレーティング・システム（２１６）と、バイオス（「ＢＩＯＳ」）（２２０）と、基準電圧制御モジュール（２１８）と、バスの現在の構成（４０８）とである。オペレーティング・システムは、システム・リソースを管理して、他のリソースに対するアクセスをスケジューリングするシステム・ソフトウェアの層である。システム・リソースを追跡するために、オペレーティング・システム（２１６）は、各バスの現在の構成（４０８）を含むコンピュータの現在の構成をコンピュータ・メモリに記憶させる。本発明の実施形態に係るバス・エージェントのための基準電圧の設定のために有用なオペレーティング・システムには、ＵＮＩＸ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ｍｉｃｒｏｓｏｆｔ  ＸＰ（登録商標）、ＡＩＸ（登録商標）、ＩＢＭのｉ５／ＯＳ（登録商標）、および当業者が想起するような他のものが含まれる。例えば、ウィンドウズは、レジストリ・ファイルに現在の構成を記憶し、Ｕｎｉｘ、ＡＩＸ、およびＬｉｎｕｘの多くのバージョンは、デバイス・ディレクトリと称されることもある特別なファイル・ディレクトリに現在の構成を記憶させる。
【００１０】
ＢＩＯＳ（２２０）は、コンピュータ・システムの基本的な入出力機能を実施するコンピュータ・ハードウェア装置を制御するコンピュータ・プログラム・ルーチンのセットである。ＢＩＯＳ（２２０）は、オペレーティング・システム（２１６）よりも低い層のシステム・ソフトウェアであって、ＢＩＯＳ内のルーチンがオペレーティング・システムによってしばしば呼び出されて、コマンドをハードウェアに対して実施する。ＢＩＯＳ（２２０）は、コンピュータ・システムの現在の構成についての情報を、ハードウェア装置を制御するためにＢＩＯＳが使用するメモリに記憶させる。ＢＩＯＳによって記憶されたコンピュータの現在の構成についての情報は、オペレーティング・システムによって記憶された情報よりも完全ではないが、ＢＩＯＳ（２２０）は、ブート・アップ処理をオペレーティング・システムを見出すことができるメモリへ導くために、コンピュータについての少なくとも充分な構成情報を含んでいる。
【００１１】
基準電圧制御モジュール（２１８）は、バス・エージェントのための基準電圧を設定するためのコンピュータ・ソフトウェア命令のセットである。基準電圧制御モジュール（２１８）は、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するように通常動作するものであり、これは、バスの現在の構成を識別して、バス・エージェント毎に基準電圧を識別することによって行われる。
【００１２】
図１の例におけるオペレーティング・システム（２１６）、ＢＩＯＳ（２２０）および基準電圧制御モジュール（２１８）は、ＲＡＭ（２１４）内に示されている。しかしながら、そのようなソフトウェアの数多くの構成要素は、ＳＣＳＩドライブ（２２８）のような不揮発性メモリ内、または図示しないＢＩＯＳチップなどの別個のメモリ上のファームウェア内に記憶されてもよい。
【００１３】
また、図１のコンピュータ（２００）は、Ｉ／Ｏバスなどの低速バス用のバス・アダプタ（２２４）を含む。バス・アダプタ（２０４）およびバス・アダプタ（２２４）は、チップセット・バス（２２６）を通じてデータ通信のために結合された「チップセット」を形成する。チップセット・バス（２２６）は、Ｉ／ＯデータをＩ／Ｏ構成要素に供給するのに充分なほど速いが、典型的には、バス・アダプタ（２０４）を通じて結合された高速バス（２０６，２１２，２２２）よりは遅い。バス・アダプタ（２２４）は、より低速のコンピュータ構成要素、典型的にはＩ／Ｏ構成要素と、バス・アダプタ（２０４）との間の通信を促進する。バス・アダプタ（２２４）およびバス・アダプタ（２０４）は、データを、プロセッサ（２０２）などのより高速の構成要素へ供給し、かつそこから受信される際のレートを調整する。この配置によって、より高速な構成要素がより低速な構成要素上で待つ時間が軽減される。本発明の実施形態にかかるバス・エージェントのための基準電圧を設定するために適合可能な低速バスのためのバス・アダプタの例には、Ｉｎｔｅｌ  ＳｏｕｔｈｂｒｉｄｇｅおよびＩｎｔｅｌ  Ｉ／Ｏ  Ｃｏｎｔｒｏｌｌｅｒ  Ｈｕｂが含まれる。
【００１４】
２つのＩ／Ｏバス、ＰＣＩバス（２３８）、およびＳＣＳＩバス（２３４）は、バス・アダプタ（２２４）によって結合される。ＰＣＩバスは、バス上の各装置が同一のバス通信ラインを共有し、バス・マスタ、この場合はバス・アダプタ（２２４）が各装置のバスの使用を制御する、共有バスの一種である。ＰＣＩバスは、１つ以上の拡張スロットを介してコンピュータ・ハードウェア装置を比較的容易に追加可能にする。図１の例において、入出力ポート・アダプタ（２４４）、通信・アダプタ（２４０）、および基準電圧供給源（２４８）は、ＰＣＩバス（２３８）介してコンピュータに結合される。
【００１５】
ＳＣＳＩバスは、拡張可能な共有バスの他の一種である。ＳＣＳＩバスは、８台までの装置を、コンピュータに対して内部または外部のいずれかで、バスに接続可能である。コンピュータ（２００）において、３つのＳＣＳＩドライブ（２２８，２３０，２３２）がＳＣＳＩバス（２３４）に結合される。ＳＣＳＩドライブ（２２８，２３０，２３２）は、ハード・ディスク・ドライブなどの磁気ディスク・ドライブ、またはＣＤ−ＲＯＭドライブなどの光ドライブである。ＰＣＩバス（２３８）およびＳＣＳＩバス（２３４）は、設計および製造後に再構成されうるバスの例であって、バス上の背景ノイズ・レベルに変化が生じ、１つ以上のエージェントのための新たな基準電圧を望ましいバス上に設定する。
【００１６】
また、コンピュータ（２００）は、バス・アダプタ（２２４）にＰＣＩバス（２３８）を介して結合された基準電圧供給源（２４８）を含む。基準電圧供給源（２４８）は、本発明の実施形態に係る適合されたコンピュータ・ハードウェア装置であって、バス・エージェント毎に識別された基準電圧値に基づいて、コンピュータ（２００）の１つ以上のバス・エージェントに対して基準電圧を印加する。コンピュータ（２００）において、基準電圧供給源（２４８）は、基準電圧を、導体（２５２）を介して通信アダプタ（２４０）に、導体（２５４）を介して入出力ポート・アダプタ（「Ｉ／Ｏポート・アダプタ」）に、（２４４）に、導体（２５０）を介してビデオ・アダプタ（２０８）に対して印加する。各バス・エージェントに対して提供される基準電圧は、基準電圧制御モジュール（２１８）によって当該エージェントのために識別された基準電圧値に基づいている。基準電圧制御モジュール（２１８）は、エージェントが結合されているバスの現在の構成に基づいて、エージェント毎に基準電圧値を識別する。通信アダプタ（２４０）およびＩ／Ｏポート・アダプタ（２４４）に対して印加される基準電圧は、ＰＣＩバス（２３８）の構成に基づいて決定される。例えば、ＰＣＩバス（２３８）の構成が変更された場合には、通信アダプタ（２４０）およびＩ／Ｏポート・アダプタ（２４４）の位置が切り換えられ、通信アダプタ（２４０）およびＩ／Ｏポート・アダプタ（２４４）によって経験された背景ノイズは変化することになろう。構成変化後の通信アダプタ（２４０）およびＩ／Ｏポート・アダプタ（２４４）の適切な動作を確保するために、上記の例においては、基準電圧制御モジュール（２１８）は、ＰＣＩバス（２３８）の新しい現在の構成を識別して、通信アダプタ（２４０）およびＩ／Ｏポート・アダプタ（２４４）のための新しい基準電圧値を識別する。その後、基準電圧供給源が、識別された基準電圧値に基づいて、通信アダプタ（２４０）およびＩ／Ｏポート・アダプタ（２４４）に対して基準電圧を印加する。
【００１７】
説明の便宜のために、図１のシステムにおいて、基準電圧供給源（２４８）は、基準電圧を４つのバス・エージェントに対して印加するだけである。しかしながら、本発明の実施形態に係るバス・エージェントのための基準電圧を設定ストレージ・システムは、基準電圧を任意の数のバス・エージェントに対して印加してもよいことは、当業者にとって明らかだろう。
【００１８】
また、コンピュータ（２００）は、Ｉ／Ｏポート・アダプタ（２４４）を含む。Ｉ／Ｏポート・アダプタは、プリンタなどの装置に対する出力と、キーボードおよびマウスなどのユーザ入力装置（２４６）からのユーザ入力を制御するためのユーザ指向の入出力を実施するコンピュータ・ハードウェア装置である。
【００１９】
また、コンピュータ（２００）は、他のコンピュータ（２４２）とのデータ通信を実施するための通信アダプタ（２４０）を含む。そのようなデータ通信は、ＲＳ−２３２接続を通じて、ＵＳＢなどの外部バスを通じて、ＩＰネットワークなどのデータ通信ネットワークを通じて、および当業者に想起するような他の方法によってシリアルに行われる。通信アダプタは、あるコンピュータが他のコンピュータに対して直接またはネットワークを通じてデータを送る際のデータ通信のハードウェア・レベルを実施する。通信アダプタの例には、有線ダイアルアップ通信用のモデム、有線ネットワーク通信用のＥｔｈｅｒｎｅｔ（登録商標）（ＩＥＥＥ８０２．３）アダプタ、および無線ネットワーク通信用の８０２．１１ｂが含まれる。
【００２０】
さらなる説明のために、図２は、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するためのさらなるシステム例を示す機能ブロック図を示す。図２のシステムは、コンピュータ（２００）によって表されており、プロセッサ（２０２）と、ビデオ・アダプタ（２０８）、バス・アダプタ（２０４）、およびＲＡＭ（２１４）を含む。プロセッサ（２０２）およびバス・アダプタ（２０４）は、フロント・サイド・バス（２０６）に接続されたバス・エージェントである。ビデオ・アダプタ（２０８）およびバス・アダプタ（２０４）は、ビデオ・バス（２１２）上のバス・エージェントである。バス・アダプタ（２０４）およびＲＡＭモジュール（２１４）は、メモリ・バス（２２２）上のバス・エージェントである。図２のシステムは、基準電圧制御モジュール（２１８）と、バス・エージェントのための基準電圧を設定するコンピュータ・ソフトウェア命令のセットとを含む。基準電圧制御モジュール（２１８）は、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するように通常動作するものであり、これは、バスの現在の構成を識別して、バス・エージェント毎に基準電圧（１０８，１１０，１１２）を識別することによって行われる。
【００２１】
図２のシステムにおいて、基準電圧制御モジュール（２１８）は、コンピュータ・メモリに記憶された現在の構成（４０８）にアクセスすることによって、バスの現在の構成を識別する。図２のシステムにおいて、バスの現在の構成（４０８）とは、バスのアイデンティティと、実際に現在バスに接続されているエージェントのアイデンティティと、エージェントがバスに接続されている順序のことである。コンピュータのオペレーティング・システムは、典型的には、各バスの現在の構成を含むコンピュータの現在の構成をコンピュータ・メモリに記憶させることによって、コンピュータの現在の構成を追跡する。
【００２２】
基準電圧制御モジュール（２１８）は、バス構成定義のリスト（５０４）にアクセスすることによって、現在の構成（４０８）内のバス・エージェント毎の基準電圧値（１０８，１１０，１１２）を識別する。この例における各バス構成定義（１０２，１０４，１０６）は、バスに接続されうるバス・エージェントの特定のセットと、当該セットのエージェントが接続されうる順序と、１つ以上のエージェントのための基準電圧とをデータ要素が記述しているデータ構造である。バス・エージェントの製造者または効率的なバス動作に利害を有する他のエンティティは、典型的には、バス構成定義のリストのためのバス構成定義を提供する。また、バス構成定義のリストのための基準電圧値は、基準電圧上限および基準電圧下限の研究所での計測と、これらの計測に基づく適切な基準電圧値の選択とを通じて決定されてもよい。
【００２３】
図２のシステムにおいて、基準電圧制御モジュール（２１８）は、バス・エージェント毎の基準電圧値（１０８，１１０，１１２）を識別する。バス・エージェント毎の基準電圧値（１０８，１１０，１１２）を識別するためには、基準電圧制御モジュール（２１８）は、バス構成定義のリストから現在の構成（４０８）に基づいてバス構成定義（１０２，１０４，１０６）を選択する。基準電圧制御モジュール（２１８）は、現在の構成における少なくとも１つのエージェントのための基準電圧値（１０８，１１０，１１２）を、選択されたバス構成定義に基づいて識別する。
【００２４】
基準電圧制御モジュール（２１８）は、各基準電圧値（１０８，１１０，１１２）のための抵抗セット・ポイント値（１２０，１２２，１２４）を決定する。各抵抗セット・ポイント値（１２０，１２２，１２４）は、各識別された基準電圧値（１０８，１１０，１１２）と、バス電力供給電圧（「バスＶ＋」）と、各固定抵抗器（３２４，３２６，３２８）とに基づいて決定される。抵抗セット・ポイント値（１２０，１２２，１２４）は、以下の式に従って計算される。
【００２５】
【数１】
2007280400.tif 000003
【００２６】
式中、Ｒ１は固定抵抗器の抵抗、Ｒ２は決定されるべき抵抗セット・ポイント値、Ｖ１はバスＶ＋の電圧、Ｖ２は識別された基準電圧値である。
【００２７】
図２のシステムにおいて、基準電圧制御モジュール（２１８）は、抵抗セット・ポイント値（１２０，１２２，１２４）を、現在の構成（４０８）におけるエージェント毎に、基準電圧供給源（２４８）へ送出する。基準電圧供給源は、コンピュータ・システムによって供給された電圧を、バス・エージェントについて識別された基準電圧値に基づいて基準電圧に変換するコンピュータ・ハードウェア構成要素である。図２のシステムにおいて、基準電圧供給源（２４８）は、基準電圧制御モジュール（２１８）から抵抗セット・ポイント値（１２０，１２２，１２４）を受信することに応じてバスＶ＋を基準電圧に変換し、基準電圧制御モジュール（２１８）は、識別された基準電圧値（１０８，１１０，１１２）に基づいて、抵抗セット・ポイント値（１２０，１２２，１２４）を決定する。基準電圧供給源（２４８）は、現在の構成（４０８）における各バス・エージェントに対して、抵抗セット・ポイント値（１２０，１２２，１２４）に基づいて、基準電圧を印加する。
【００２８】
図２のシステムにおいて、基準電圧供給源（２４８）は、３つの基準電圧供給ライン（３１２，３１４，３１６）を含む。基準電圧供給ラインとは、基準電圧をバス・エージェントに印加する際に通過する導体のことである。図２のシステムにおいて、基準電圧供給ライン（３１２，３１４，３１６）は、基準電圧供給源（２４８）によって設定された基準電圧電圧を、ビデオ・バス（２１２）のエージェントであるビデオ・アダプタ（２０８）と、メモリ・バス（２２２）のエージェントであるバス・アダプタ（２０４）と、フロント・サイド・バス（２０６）のエージェントであるＲＡＭ（２１４）に対して印加する
【００２９】
また、基準電圧供給源は、デジタル電位差計（３０２，３０４，３０６）を含む。デジタル電位差計とは、受信された抵抗セット・ポイント値に応じて抵抗の調整可能な可変抵抗器のことである。図２のシステムにおいて、デジタル電位差計（３０２，３０４，３０６）は、分圧回路内の抵抗器である。デジタル電位差計（３０２，３０４，３０６）の抵抗を調整することによって、基準電圧供給ライン（３１２，３１４，３１６）に対して印加される電圧を調整できる。デジタル電位差計（３０２，３０４，３０６）は、抵抗セット・ポイント値（１２０，１２２，１２４）にそれぞれ応答して、その抵抗を調整する。例えば、デジタル電位差計（３０２）は、抵抗セット・ポイント値（１２０）に応答してその抵抗を設定して、基準電圧供給ライン（３１２）に対して印加する基準電圧を調整する。デジタル電位差計（３０４，３０６）も同様に、抵抗セット・ポイント値（１２２，１２４）に応答してその抵抗を設定して、基準電圧供給ライン（３１４，３１６）に対して印加する基準電圧を設定する。
【００３０】
説明の便宜のために、図２のシステムにおいて、基準電圧供給源（２４８）は、３つの基準電圧供給ライン（３１２，３１４，３１６）のみを含んでいる。しかしながら、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するシステムは、任意の数のバス・エージェントに対して基準電圧を印加してもよく、基準電圧供給源は、任意の数の基準電圧供給ライン、デジタル電位差計、および分圧器回路を含んでもよいことが、当業者にとって明らかだろう。
【００３１】
さらなる説明のために、図３は、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するための方法例を示すフローチャートを示す。図３の方法は、バス（４００）と、バスに接続されたバス・エージェント（４０２，４０４）と有するコンピュータ（２００）において実行される。バス（４００）は、バス・エージェント（４０２，４０４）に接続された伝導性の経路を含む。バス・エージェント（４０２，４０４）は、バス・エージェント（４０２，４０４）間でのデータ通信のためにバス（４００）を使用するコンピュータ・ハードウェア装置である。
【００３２】
図３の方法は、バスの現在の構成（４０８）を識別すること（４０６）を含む。バスの現在の構成（４０８）は、バスのアイデンティティ（４１０）と、現在バスに接続されている１つ以上のバス・エージェントのアイデンティティ（４１２）と、バス（４００）に現在接続されているバス・エージェントの順序（４１４）とを含む。バスの現在の構成（４０８）の識別（４０６）は、ＢＩＯＳまたはオペレーティング・システムにおけるブート・ルーチンの一部として行われてもよい。ブート・ルーチンは、例えば、現在の構成（４０８）を不揮発性コンピュータ・メモリから取り出すことによって、現在の構成を識別してもよい。不揮発性コンピュータ・メモリは、図３の方法においては、ディスク・ストレージ（４０９）によって表されているが、不揮発性コンピュータ・メモリは、フラッシュ・メモリ、ＮＶＲＡＭ，または当業者が想起しうる任意の他の不揮発性コンピュータ・メモリとして実施されてもよい。コンピュータのＢＩＯＳまたはオペレーティング・システムは、典型的には、例えばＷｉｎｄｏｗｓ（登録商標）レジストリまたはＵｎｉｘの／ｄｅｖファイルなどのコンピュータ・メモリ内のコンピュータの現在の構成を保持している。ＢＩＯＳ（２２０）は、そのようなコンピュータの現在の構成を使用して、ブート処理を導き、ドライバなどをロードして、コンピュータのハードウェア装置を制御する。また、例えば図１の参照番号（２１４）に関して図示かつ説明したオペレーティング・システムなどのコンピュータ（２００）のオペレーティング・システムは、コンピュータの現在の構成を使用して、コンピュータ・リソースに対するアクセスを管理する。
【００３３】
また、図３の方法は、バス（４００）上のバス・エージェント（４０２，４０４）毎の基準電圧値（４１８）を識別することを含む。バス（４００）上のバス・エージェント（４０２，４０４）毎の基準電圧値（４１８）の識別は、バス構成定義のリストからバス構成定義を選択することと、選択されたバス構成定義に基づいて、現在の構成における少なくとも１つのエージェントのための基準電圧値を識別することとによって行われてもよい。以下の図５の方法の説明には、バス・エージェント毎に基準電圧値を識別する方法の例のより詳細な説明が含まれている。
【００３４】
また、図３の方法は、バス・エージェント毎の識別された基準電圧値（４１８）に基づいて、各バス・エージェント（４０２，４０４）に対して基準電圧を印加することを含む。バス・エージェント毎の識別された基準電圧値（４１８）に基づいて、各バス・エージェント（４０２，４０４）に対して基準電圧を印加する（４２０）ことは、図２に示すように、基準電圧制御モジュールと、基準電圧供給源とによって行われてもよい。基準電圧制御モジュール（図２の２１８）は、図２の説明における上述のような式１を使用して抵抗セット・ポイント値を決定する。基準電圧制御モジュールは、基準電圧供給源（図２の２４８）内のデジタル電位差計に対して抵抗値を提供する。基準電圧供給源は、各バス・エージェントに対して基準電圧を印加する。
【００３５】
さらなる説明のために、図４は、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するためのさらなる方法例を示すフローチャートを示す。図４の方法は、バスに接続されたバス・エージェント（４０２，４０４）を伴うバス（４００）を有するコンピュータ（２００）において行われる。図４の方法は、図３の方法に類似している。すなわち、図４の方法は、バスの現在の構成を識別することと（４０６）、バス上のエージェント毎の基準電圧値を識別することと、識別された基準電圧値に基づいて、各エージェントに基準電圧を印加（４２０）することとを含み、これらすべては、図３の方法を参照して上述したように通常動作する。
【００３６】
また、図４の方法は、バス構成定義のリスト（５０４）を作成すること（５０２）を含む。バス構成定義のリスト（５０４）は、バス構成定義毎に、バスについての識別子（５０９）と、識別されたバスに接続されることになる各エージェントについての識別子（５１０）と、識別されたバスに接続されることになるエージェントの順序（５１２）と、そのようなエージェント毎の基準電圧値（５１４）を含む。図４の方法において、構成定義のリストの作成は、各バス構成定義内のエージェント毎に、基準電圧上限（５１８）と、基準電圧下限（５２０）とを識別すること（５１６）を含む。バス構成定義において記述されたバスの特定の構成におけるバス・エージェントのための基準電圧上限（５１８）および基準電圧下限（５２０）は、バス構成について研究室試験を行って、構成内のバス・エージェントが適切に機能する基準電圧値の範囲を決定することによって識別されてもよい。バスと１つ以上のバス・エージェントのシミュレーションなどの基準電圧上限および基準電圧下限を識別する他の方法は、当業者にとって明らかであろう。そのような方法はすべて、充分に本発明の範囲内にある。
【００３７】
また、図４の方法は、エージェント毎の基準電圧上限（５１８）および基準電圧下限（５２０）に基づいて、エージェント毎の基準電圧値（４１８）を決定すること（５２２）を含む。エージェントのための基準電圧値（４１８）の決定（５２２）には、例えば比較的低速のバスについては、基準電圧上限（５１８）と基準電圧下限（５２０）との間の中間点の基準電圧値を選択することを含んでもよい。より高速のバスについては、エージェントのための基準電圧値（４１８）の決定（５２２）には、基準電圧下限から基準電圧上限へ至る道の３分の２の基準電圧値を選択することを含んでもよい。
【００３８】
図４の方法における各バス構成定義（５０６，５０７）は、バスに接続されるようなバス・エージェントの特定のセットと、当該セットのエージェントが接続されるような順序と、エージェントのうちの１つ以上のための基準電圧とをデータ要素が識別するデータ構造である。図４の例におけるバス構成定義リスト（５０４）は、テーブルとして提示され、そこでは、各レコードはバス・エージェントを表し、同一の構成識別子を有するレコードのセットは、バス構成定義を表す。リスト（５０４）内の各レコードは、バス構成の識別コードの記憶場所を提供する構成識別子フィールド（５０８）を含む。また、リスト（５０４）内の各レコードは、バスの識別コードの記憶位置を提供するバス識別子フィールド（５０９）を含む。また、リスト（５０４）内の各レコードは、バス・エージェントの識別コードの記憶場所を提供するエージェント識別子フィールド（５１０）を含む。また、リスト（５０４）内の各レコードは、バスに接続されたバス・エージェントの順序の識別子の記憶場所を提供する順序フィールド（５１２）を含む。また、リスト（５０４）内の各レコードは、バス・エージェントのための基準電圧値の記憶場所を提供する基準電圧値（「Ｖｒｅｆ値」）フィールド（５１４）を含む。
【００３９】
図４の例において、バス構成定義のリスト（５０４）は、２つのバス構成（５０６，５０７）を含み、それぞれは、リスト内の２つのレコードからなっている。各レコードは、バスの識別子（５０９）と、識別されたバスに接続されることになる各エージェントの識別子（５１０）と、エージェントが識別されたバスに接続されることになる順序（５１２）と、そのようなエージェント毎の基準電圧値（５１４）とを含む。バス構成定義（５０６）は、バス・エージェントを表す２つのレコードを含み、１つはバス・エージェント「ＮＢ−２４」の、１つはバス・エージェント「Ｖ−３２」のためのものである。バス構成定義（５０６）は、バス・エージェントが構成（５０６）内でバスに接続される順序（５１２）を識別する。ＮＢ−２４はバス位置１であり、Ｖ−３２はバス位置２である。また、バス構成定義（５０６）は、バス・エージェントのための基準電圧値を識別する。ＮＢ−２４は０．５０であり、Ｖ−３２は０．５５である。バス構成（５０７）は、バス・エージェントを表す２つのレコードを含み、１つはバス・エージェント「ＮＢ−２４」の、１つはバス・エージェント「Ｄ−２６」のためのものである。バス構成（５０７）は、バス・エージェントが構成（５０７）内でバスに接続される順序（５１２）を識別する。ＮＢ−２４はバス位置１であり、Ｄ−２６はバス位置２である。また、バス構成（５０７）は、バス・エージェントのための基準電圧値を識別する。ＮＢ−２４は０．５０であり、Ｄ−２６は０．６０である。
【００４０】
しかしながら、図５の方法は、バス上のエージェント毎の基準電圧値（４１８）を識別すること（４１６）のより詳細な説明を表している。図５の方法において、バス上のエージェント毎の基準電圧値（４１８）を識別すること（４１６）は、バス構成定義のリスト（５０４）からバス構成定義（６０４）を選択すること（６０２）を含む。バス構成定義のリスト（５０４）からバス構成定義（６０４）を選択すること（６０２）は、図２の参照番号（２１８）で説明した基準電圧制御モジュールのような基準電圧制御モジュール（２１８）によって行われてもよい。図５の方法において、バス構成定義のリスト（５０４）内のバス構成定義が現在の構成（４０８）と一致する（６１８）場合には、基準電圧制御モジュール（２１８）は、１つ以上の基準電圧をバス構成定義から読み込むことによって、現在の構成（４０８）における少なくとも１つのエージェントのための基準電圧値を識別する（６０６）。バス構成定義のリスト（５０４）内のどのバス構成定義も現在の構成（４０８）と完全には一致しない（６１６）場合には、基準電圧制御モジュール（２１８）は、現在の構成（４０８）に最も近似するバス構成定義（６０４）を選択する（６１０）。基準電圧制御モジュール（２１８）は、例えば、現在の構成（４０８）と同じ順序で最大数の同一のバス・エージェントを有するバス構成定義のリストからバス構成定義を選択することによって、現在の構成に最も近似するバス構成を選択してもよい。現在の構成に最も近似するバス構成を選択する際に、基準電圧制御モジュールは、ファジー論理、データ・マイニング手法、統計方法、および当業者が想起するような近似物の選択のための任意の他の処理を使用してもよい。
【００４１】
図５の方法において、バス上のエージェント毎の基準電圧値は、選択されたバス構成定義（６０４）に基づいて、現在の構成（４０８）における少なくとも１つのエージェントのための基準電圧値（４１８）を識別すること（６０６）も含む。この例において、選択されたバス構成定義（６０４）に基づいて、現在の構成（４０８）における少なくとも１つのエージェントのための基準電圧値（４１８）を識別すること（６０６）は、基準電圧制御モジュール（２１８）によって行われる。選択されたバス構成定義（６０４）が現在の構成におけるエージェント毎の基準電圧値（４１８）を含む（６２２）場合には、基準電圧制御モジュール（２１８）は、選択されたバス構成定義からの基準電圧値を、バス・エージェントに印加する基準電圧の値であると識別する。選択されたバス構成定義（６０４）がバスに現在接続されているエージェントのための基準電圧値（６２０）を有していない場合には、基準電圧制御モジュール（２１８）は、基準電圧値が選択されたバス構成定義（６０４）に含まれていないエージェントのための基準電圧値（４１８）として、バスのデフォルト基準電圧値（４１９）を割り当てる（６１２）。図５の例において、バスのデフォルト基準電圧値（４１９）は、例えば、少なくともいくつかのバス構成内で動作する、設計者または製造者によって選択された基準電圧値である。
【００４２】
使用例
はじめに：バス上のエージェント毎の基準電圧値を識別することをさらに説明するために、以下の使用例を提示する。提示されているように、使用例には、本発明の実施形態に係るバス・エージェントのための基準電圧を設定するために、この例において使用されたイベントのシーケンスおよびデータ・フローの説明が含まれている。
【００４３】
使用例１：バスの現在の構成は識別されており、構成定義のリストは提供されている。基準電圧制御モジュールが、構成定義のリストを検索して、バスの現在の構成と完全に一致するバス構成定義を求める。バス構成定義のリスト内のバス構成定義のうちで、バスの現在の構成定義に完全に一致するものはない。なぜならば、バスの現在の構成において、バスは４つのエージェントを有するが、この特定のバスについてのバス構成定義には、３つより多いエージェントを含むものはないからである。基準電圧制御モジュールは、バスの現在の構成に最も近似するバス構成定義を選択する。この使用例において、最も近似するバス構成を選択することは、現在の構成におけるのと同じ順序で同じアイデンティティを有する３つのエージェントを含むバス構成定義を選択することによって行われる。選択されたバス構成定義は３つしかバス・エージェントを含んでおらず、バスの現在の構成定義は４つのバス・エージェントを含んでいるので、選択されたバス構成定義は、現在の構成定義内の１つのエージェントのための基準電圧値を有していない。したがって、基準電圧制御モジュールは、バスのためのデフォルトの基準電圧値を当該エージェントに割り当てる。基準電圧制御モジュールは、バス構成定義から選択されたバス構成定義内にある３つのエージェントのための基準電圧値を識別する。基準電圧制御モジュールは、式１（図２の説明において上述）に従って、基準電圧制御モジュールによって識別された基準電圧値と、分圧器回路の固定抵抗器の抵抗と、基準電圧供給源のバスＶ＋とを使用して、バス・エージェント毎の抵抗セット・ポイント値を決定する。基準電圧制御モジュールは、抵抗セット・ポイント値を基準電圧供給源に送出し、基準電圧供給源は、抵抗セット・ポイント値に基づいて、現在の構成内のバス・エージェント毎に、基準電圧を印加する。
【００４４】
使用例２：バスの現在の構成は識別されており、構成定義のリストは提供されている。基準電圧制御モジュールが、構成定義のリストを検索して、バスの現在の構成と完全に一致するバス構成定義を求める。バス構成定義のリスト内のバス構成定義のうちで、バスの現在の構成定義に完全に一致するものはない。なぜならば、特定のバスについてのバス構成定義のうちで、バスの現在の構成と同一の４つのバス・エージェントを含むものはないからである。基準電圧制御モジュールは、バスの現在の構成に最も近似するバス構成定義を選択する。この使用例において、最も近似するバス構成を選択することは、現在の構成におけるのと同じ順序で同じアイデンティティを有する３つのエージェントを含むバス構成定義を選択することによって行われる。バスに現在接続されている不一致のエージェントのための基準電圧値はバス構成定義に含まれていないので、基準電圧制御モジュールは、バスのデフォルトの基準電圧値を当該エージェントに割り当てる。基準電圧制御モジュールは、バス構成定義から選択されたバス構成定義にある３つのエージェントのための基準電圧値を識別する。基準電圧制御モジュールは、式１（図２の説明において上述）に従って、基準電圧制御モジュールによって識別された基準電圧値と、分圧器回路の固定抵抗器の抵抗と、基準電圧供給源のバスＶ＋とを使用して、バス・エージェント毎の抵抗セット・ポイント値を決定する。基準電圧制御モジュールは、抵抗セット・ポイント値を基準電圧供給源に送出し、基準電圧供給源は、抵抗セット・ポイント値に基づいて、現在の構成内のバス・エージェント毎に、基準電圧を印加する。
【００４５】
使用例３：バスの現在の構成は識別されており、構成定義のリストは提供されている。基準電圧制御モジュールが、構成定義のリストを検索して、バスの現在の構成と完全に一致するバス構成定義を求める。バス構成定義のリスト内のバス構成定義のうちで、バスの現在の構成定義に完全に一致するものはない。特定のバスについてのバス構成定義のうちで、バスの現在の構成と同一の４つのバス・エージェントを含むものはないからである。基準電圧制御モジュールは、バスの現在の構成に最も近似するバス構成定義を選択する。この使用例において、最も近似するバス構成を選択することは、現在の構成におけるのと同じ順序で同じアイデンティティを有する３つのエージェントを含むバス構成定義を選択することによって行われる。バスに現在接続されている不一致のエージェントのための基準電圧値はバス構成定義に含まれていないので、基準電圧制御モジュールは、選択されたバス構成定義内の不一致の４番目のエージェントのための基準電圧値を、現在の構成の４番目のエージェントに割り当てる。基準電圧制御モジュールは、バス構成定義から選択されたバス構成定義にある３つのエージェントのための基準電圧値を識別する。基準電圧制御モジュールは、式１（図２の説明において上述）に従って、基準電圧制御モジュールによって識別された基準電圧値と、分圧器回路の固定抵抗器の抵抗と、基準電圧供給源のバスＶ＋とを使用して、バス・エージェント毎の抵抗セット・ポイント値を決定する。基準電圧制御モジュールは、抵抗セット・ポイント値を基準電圧供給源に送出し、基準電圧供給源は、抵抗セット・ポイント値に基づいて、現在の構成内のバス・エージェント毎に、基準電圧を印加する。
【００４６】
本発明の実施形態例を、バス・エージェントのための基準電圧を設定するための完全に機能するコンピュータシステムの場合で主に説明している。しかしながら、本発明は、任意の適切なデータ処理システムと共に使用する信号搬送媒体上に配置されたコンピュータ・プログラム製品において実施されてもよいことを、当業者の読者は認識するだろう。そのような信号搬送媒体は、磁気媒体、光媒体、または他の適切な媒体を含む、機械読み取り可能な情報のための伝送媒体または記録可能媒体であってもよい。記録可能媒体の例には、ハード・ドライブまたはディスケット内の磁気ディスク、光ドライブ用のコンパクト・ディスク、磁気テープ、および当業者が想起するような他のものが含まれる。伝送媒体の例には、音声通信用の電話ネットワークおよび、例えばＥｔｈｅｒｎｅｔ（登録商標）およびＩｎｔｅｒｎｅｔ  ＰｒｏｔｏｃｏｌおよびＷｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂと通信可能なネットワークなどのデジタル・データ通信ネットワークが含まれる。適切なプログラミング手段を有する任意のコンピュータ・システムが、プログラム製品において具体化されるような本発明の方法のステップを実行することが可能であることを、当業者はすぐに認識するだろう。本明細書において説明した実施形態例のいくつかはインストールされてコンピュータ・ハードウェア上で実行するソフトウェアに向けられているが、それにもかかわらず、ファームウェアまたはハードウェアとして実施された代替実施形態も、十分本発明の範囲内であることを、当業者はすぐに認識するだろう
【００４７】
以上の説明から、本発明の様々な実施形態において、その真の精神から逸脱することなく変形および変更が行われてもよいことが理解されるだろう。本明細書の記載は、例示の目的のためだけであって、制限的な意味に理解すべきではない。本発明の範囲は、請求項の言語によってのみ制限される。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施形態に係るバス・エージェントのための基準電圧を設定するのに有用なコンピュータ例を備える自動コンピューティング機構のブロック図を示す。
【図２】本発明の実施形態に係るバス・エージェントのための基準電圧を設定するためのシステム例を示す機能ブロック図を示す。
【図３】本発明の実施形態に係るバス・エージェントのための基準電圧を設定するための方法例を示すフローチャートを示す。
【図４】本発明の実施形態に係るバス・エージェントのための基準電圧を設定するためのさらなる方法例を示すフローチャートを示す。
【図５】本発明の実施形態に係るバス・エージェントのための基準電圧を設定するためのさらなる方法例を示すフローチャートを示す。
【符号の説明】
【００４９】
２００  コンピュータ
２０２  プロセッサ
２０４  バス・アダプタ
２０６  フロント・サイド・バス
２０８  ビデオ・アダプタ
２１０  表示装置
２１２  ビデオ・バス
２１４  ＲＡＭ
２１６  オペレーティング・システム
２１８  基準電圧制御モジュール
２２０  ＢＩＯＳ
２２２  メモリ・バス
２２４  バス・アダプタ
２２６  チップセット・バス
２２８  ＳＣＳＩドライブ
２３０  ＳＣＳＩドライブ
２３２  ＳＣＳＩ装置
２３４  ＳＣＳＩバス
２３８  ＰＣＩバス
２４０  通信アダプタ
２４２  他のコンピュータ
２４４  Ｉ／Ｏポート・アダプタ
２４６  ユーザ入力装置
２４８  基準電圧供給源
４０８  現在の構成
【図１】
2007280400.tif 000004
【図２】
2007280400.tif 000005
【図３】
2007280400.tif 000006
【図４】
2007280400.tif 000007
【図５】
2007280400.tif 000008