(57)【要約】【課題】長距離及び高周波数伝送が必要な場合に、振幅が減衰した信号とノイズを区別し、ノイズによる誤動作を防ぐ。【解決手段】計算機モジュール１１０及びI/Oモジュール１２０の中継バッファ６００，６０１，６０２，６０３は、それぞれPCIeインターフェース１６１，１６２の信号振幅を判断して信号とノイズを区別し、出力信号のＯＮ／ＯＦＦを制御するノイズフィルタ回路を有する。I/O HUB３００及びPCIeスイッチ４００は、通信モードに応じて、中継バッファのノイズフィルタ回路の有効／無効を切り替え、通信速度が高速の時にはノイズフィルタ回路を無効にする。ケーブル抜去検出回路１１５，１２５は、PCIeケーブル１５１の抜去をI/O HUB３００及びPCIeスイッチ４００に通知し、PCIのグリッチによるノイズによる誤作動を抑止する。【選択図】図２
2011100412.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサとI/O HUBを搭載した計算機モジュールと、
PCIeスイッチとI/Oデバイスを搭載したI/Oモジュールと、
前記計算機モジュールと前記I/Oモジュールを接続したケーブルとを備え、
前記I/O HUBと前記PCIeスイッチとを前記ケーブルのPCIeインターフェースで接続した計算機装置であって、
前記計算機モジュールと前記I/Oモジュールはそれぞれ、前記PCIeインターフェースの信号を波形補償するための中継バッファを備え、
前記中継バッファは、前記PCIeインターフェースの信号振幅が閾値以下の信号をノイズとしてフィルタするフィルタリング機能を有し、
前記I/O HUB及び前記PCIeスイッチは、前記PCIeインターフェースの通信モードを判定し、前記通信モードに応じてそれぞれの中継バッファの前記フィルタリング機能を有効あるいは無効にすることを特徴とする計算機装置。
【請求項２】
請求項１記載の計算機装置において、
前記I/O HUB及び前記PCIeスイッチは、前記PCIeインターフェースの通信モードが第１の通信速度の通信モードであるか、前記第１の通信速度より高速の第２の通信速度の通信モードであるか、ＥＩ状態であるかを判定し、前記第１の通信モード又はＥＩ状態の時にはそれぞれの中継バッファの前記フィルタリング機能を有効にし、前記第２の通信モードの時にはそれぞれの中継バッファの前記フィルタリング機能を無効にすることを特徴とする計算機装置。
【請求項３】
請求項１記載の計算機装置において、
前記計算機モジュール及び前記I/Oモジュールは、前記PCIeケーブルの接続状態を監視するケーブル抜去検出回路を備え、
前記ケーブル抜去検出回路は前記PCIeケーブルの抜去検出時に前記I/O HUB及び前記PCIeスイッチに通知し、
前記I/O HUB及び前記PCIeスイッチは前記ケーブル抜去検出回路から通知を受けたとき、前記PCIeインターフェースからの受信を停止することを特徴とする計算機装置。
【請求項４】
請求項３記載の計算機装置において、
前記I/O HUB及び前記PCIeスイッチは前記ケーブル抜去検出回路から通知を受けたとき、前記PCIeインターフェースの信号をＥＩ状態に相当する信号に置き換えることを特徴とする計算機装置。
【請求項５】
プロセッサとI/O HUBを搭載した計算機モジュールと、PCIeスイッチとI/Oデバイスを搭載したI/Oモジュールと、前記計算機モジュールと前記I/Oモジュールを接続したケーブルとを備え、前記I/O HUBと前記PCIeスイッチとは前記ケーブルのPCIeインターフェースで接続され、前記計算機モジュールと記I/Oモジュールはそれぞれ、前記PCIeインターフェースの信号を波形補償するための中継バッファを備えている計算機装置の制御方法において、
前記中継バッファは、前記PCIeインターフェースの信号振幅を閾値と比較して、振幅が前記閾値以下の信号をノイズとしてフィルタするフィルタリング機能を有し、
前記計算機モジュール及び前記I/Oモジュールが、前記PCIeインターフェースの通信モードを判定する工程と、
前記I/O HUB及び前記PCIeスイッチが、前記通信モードに応じてそれぞれの中継バッファの前記フィルタリング機能を有効あるいは無効にする工程と
を有することを特徴とする計算機装置の制御方法。
【請求項６】
請求項５記載の計算機装置の制御方法において、
前記PCIeインターフェースの通信モードを判定する工程では、通信モードが第１の通信速度の通信モードであるか、前記第１の通信速度より高速の第２の通信速度の通信モードであるか、ＥＩ状態であるかを判定し、
前記通信モードに応じてそれぞれの中継バッファの前記フィルタリング機能を有効あるいは無効にする工程では、前記第１の通信モード又はＥＩ状態の時にはそれぞれの中継バッファの前記フィルタリング機能を有効にし、前記第２の通信モードの時にはそれぞれの中継バッファの前記フィルタリング機能を無効にすることを特徴とする計算機装置の制御方法。
【請求項７】
請求項５記載の計算機装置の制御方法において、
前記計算機モジュール及び前記I/Oモジュールが、前記PCIeケーブルの接続状態を監視する工程と、
前記PCIeケーブルの抜去を検出した時に前記I/O HUB及び前記PCIeスイッチに通知する工程と、
前記I/O HUB及び前記PCIeスイッチが、前記ケーブル抜去検出回路から通知を受けたとき、前記PCIeインターフェースからの受信を停止する工程と
を有することを特徴とする計算機装置の制御方法。
【請求項８】
請求項７記載の計算機装置の制御方法において、
前記I/O HUB及び前記PCIeスイッチは、前記ケーブル抜去検出回路から通知を受けたとき、前記PCIeインターフェースの信号をＥＩ状態に相当する信号に置き換えることを特徴とする計算機装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、PCI Express（PCIe）インターフェースを有する計算機装置に関し、特にPCI Expressインターフェースのノイズによる誤作動を抑止する方法、及び装置に関する。
【背景技術】
【０００２】
従来、計算機装置において、I/Oデバイスの接続インターフェースにPeripheral Component Interconnect Express（PCIe）が広く使われている（非特許文献１参照）。PCIeでは、構成内部にスイッチを配置することで、計算機モジュールに接続可能なI/Oデバイスの数を増やすことが可能である。また、PCIeの拡張仕様であるMulti-Root I/O Virtualization（MR-IOV）では、MR-IOV対応のPCIeスイッチを介すことで、複数の計算機モジュールが、同じI/Oデバイスを共用して使用することも可能である（非特許文献２参照）。特にブレード型サーバモジュールの様な、構造上I/Oポートの実装数が制限される計算機モジュールにおいて、I/Oデバイスを拡張するためには、計算機モジュールとは別にI/Oデバイスを複数搭載可能な装置（I/Oモジュール）を設置し、計算機モジュールとI/Oモジュール間をケーブルで接続する形態が一般的である。
【０００３】
従来のPCI Express Base Specification 1.0aではインターフェースの通信速度が２．５Gbpsであるのに対し、PCI Express Base Specification 2.0では、２．５Gbpsに加え、さらに通信速度を高めた５Gbpsの通信を定義している。しかし、一般にプリント基板上の配線やケーブルを用いた電気信号の伝送では、信号周波数が高まるほど表皮効果によって信号減衰率は大きくなるため、伝送距離が制限されるという問題点がある。よって２．５Gbpsでの通信に対し５Gbpsでの通信は信号減衰率の悪化がより顕著になる。
【０００４】
そこで、例えば、特開２００１−２８５３１２号公報に記載されたような、伝送距離を延長するために、インターフェース上にリドライバやイコライザなどの波形補償のための中継バッファを搭載し、中継バッファにより、減衰した信号波形を回復させる方法が一般的に用いられている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−２８５３１２号公報
【非特許文献】
【０００６】
【非特許文献１】PCI Express Base Specification 2.0
【非特許文献２】Multi-Root I/O Virtualization and Sharing Specification Revision 1.0
【発明の概要】
【発明が解決しようとする課題】
【０００７】
波形補償デバイスをPCIeインターフェースで使用する場合の注意点として、省電力時動作を規定しているPCIeインターフェース仕様では、信号伝送時の通常動作の他に、通信を行わない省電力動作状態時にElectrical Idle（ＥＩ）という差動信号のＰ極／Ｎ極の電位差が０Ｖとなる状態が存在する。
【０００８】
しかし、論理的無信号状態を電位差０Ｖとしていても、実際には装置内の部品等のノイズにより、ＥＩ状態でも差動信号が厳密に０Ｖにならないので、PCIeインターフェース仕様では、ノイズの閾値（最大１７５ｍＶ、非特許文献１、4.3.4.4節）を定めている。
【０００９】
なお、PCIeインターフェース仕様が規定する装置の条件は、一般的に使用されているＦＲ４材を用いたプリント基板では、信号の配線長を２８インチ以内としている（非特許文献１、4.3.4.3節）。
【００１０】
ケーブルはプリント基板と異なり、使用する線材、伝送方式（電気信号による伝送、ファイバーを用いた光伝送等）の組み合わせの幅が広く、ケーブルの種類によって単位長あたり減衰率が異なるので、単にケーブル長ではなく、ケーブルのトータルでの減衰について、１２ｄＢまでと規定している（非特許文献２、6.2.2.1節）。
【００１１】
PCIeインターフェースに挿入された中継バッファは入力信号の振幅によってＥＩ状態を判断し、設定された閾値以下の信号をノイズとしてフィルタリングする。
【００１２】
しかしながら、装置の実装上の制約などにより配線長が、上記のPCIeインターフェース仕様を超える場合、中継バッファへのPCIeインターフェースの入力信号が著しく減衰し、中継バッファで設定された閾値を下回る場合が存在する。
【００１３】
中継バッファが振幅によるフィルタリングをせずに、アップストリーム側からの入力を全て増幅した場合、PCIeインターフェースの通常動作時の信号とノイズの区別ができず、中継バッファがノイズまで増幅するので、不規則なパターンの信号が出力される恐れがある。
【００１４】
PCIeインターフェース仕様が定める閾値より小さい閾値を中継バッファに設定することで、ノイズ増幅によるランダムパターン信号の発生を抑止できるが、市販の中継バッファは一般的にPCIeインターフェース仕様の閾値が設定されているので、流通している市販品を使用できなくなる。これは部品開発費、部品購入価格上昇などコスト面でのデメリットが大きい。また、中継バッファの閾値レベルを下げた場合でも、ＬＳＩの製造のバラツキによってはＥＩ状態時のノイズと通常信号の区別がつかなくなり、通常伝送時に出力が遮断される懸念がある。
【００１５】
また、ランダムパターン信号発生の別の要因として、PCIeインターフェースの切断処理を行わず、中継バッファが動作中のまま、ケーブルが抜かれてしまったときに発生する、グリッチによるノイズがある。ケーブルを接続する装置の運用において、操作員のオペレーションミスによるケーブルの誤抜去は、装置部品やケーブル自体の故障よりも発生頻度が高く、発生のタイミングは通常動作時、又はＥＩ状態時といった、PCIeインターフェースの通信状態に関係なく発生する恐れがある。入力信号の振幅によるフィルタリングを行う場合は、グリッチによるノイズ起因のランダムパターン信号の発生を抑止できるが、上記ＥＩ状態時のノイズ同様、減衰した通常信号と区別がつかなくなる。
【００１６】
ランダムパターン信号を受信したＬＳＩは、PCIeインターフェース仕様にない信号の入力によって、内部論理が想定外の動作を引き起こす可能性がある。従来のシングルルート接続の場合では、I/Oデバイスで誤作動が発生した場合、障害の影響範囲は、計算機モジュールと接続しているPCIデバイスで構成するPCIツリーの中だけに留まるが、スイッチを介し、複数の計算機モジュールがI/Oデバイスを共有するマルチルート接続の場合、PCIeスイッチは誤作動により、接続するそれぞれのPCIeツリーに影響が波及し、システム全体を停止させてしまう恐れがある。
【００１７】
そこで、本発明の目的は、PCIeインターフェース用の中継バッファを、PCIeインターフェース仕様よりも信号が減衰する配線に適用させ、動作モードにより入力信号の信号減衰が大きく、PCIeインターフェースの通信による信号とノイズの区別ができない場合であっても、適切にノイズを判別し、誤作動を防ぐことができる計算機装置、及びPCI Expressインターフェース制御方法を提供することにある。
【００１８】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１９】
本発明の計算機装置は、計算機モジュール及びI/OモジュールをPCIeインターフェースで接続し、信号の波形補償するための中継バッファを備える。計算機モジュール側及びI/Oモジュール側の中継バッファはそれぞれ、PCIeインターフェース信号の動作モードに応じて、ノイズフィルタ回路の有効／無効の切り替えを行うことで減衰した信号とノイズを区別し、ノイズ起因によるランダムパターン信号の発生を抑止するものである。
【００２０】
またケーブルの接続状態を検出することで、ケーブル誤抜去時のグリッチによるノイズ起因によるランダムパターン信号の発生を抑止するものである。
【発明の効果】
【００２１】
本発明によれば、複数の計算機モジュール及びI/Oモジュールを、PCIeスイッチを介し、PCIeインターフェースにて接続し、複数のルートがPCIeツリーを構成する計算機装置において、PCI Expressスイッチが、ランダムパターン信号を起因とした誤動作による影響を、PCIeツリーへ伝播させず、動作を継続することが可能である。
【図面の簡単な説明】
【００２２】
【図１】本発明の一実施形態による計算機装置の構成例を示すブロック図である。
【図２】計算機モジュールとI/Oモジュールの接続を示すブロック図である。
【図３】中継バッファの構成例を示すブロック図である。
【図４】I/O HUBの構成例を示すブロック図である。
【図５】PCIeスイッチの構成例を示すブロック図である。
【図６Ａ】計算機装置が実施するPCIeインターフェースの２．５Gbps、及び５Gbps通信時の動作を説明するフローチャートである。
【図６Ｂ】計算機装置が実施するPCIeインターフェースの２．５Gbps、及び５Gbps通信時の動作を説明するフローチャートである。
【図７】計算機装置が実施するPCIeインターフェースのＥＩ状態の動作を説明するフローチャートである。
【図８】計算機装置が実施するPCIeインターフェースのケーブル抜去検出処理を説明するフローチャートである。
【図９】計算機装置が実施するPCIeインターフェースの状態遷移を説明する状態遷移図である。
【発明を実施するための形態】
【００２３】
以下、図面を参照しながら、本発明の実施の形態について詳細に説明する。
【００２４】
図１は、本発明の一実施形態による計算機装置の構成例を示すブロック図である。
計算機装置１００は、１つ以上の計算機モジュール１１０，１１１，１１２と、１つ以上のI/Oモジュール１２０，１２１を有する。計算機モジュール１１０は、システムバスで接続するＣＰＵ（プロセッサ）２００と、I/O HUB３００を有する。I/OモジュールはPCIスイッチ４００と、１つ以上のPCIeデバイス５００，５０１，５０２を有する。計算機モジュール１１０内のI/O HUB３００は、PCIeケーブル１５１，１５２を介して、I/Oモジュール１２０，１２１内のPCIeスイッチ４００，４０１と通信することができる。
【００２５】
なお、計算機モジュール１１０〜１１２は、ＣＰＵ２００で実行されるオペレーティングシステム（ＯＳ）やアプリケーションプログラムを格納するメモリ２１０を有する。
【００２６】
次に、図２から図５を用いて、本発明の実施の形態にかかる計算機装置のPCIeインターフェースの構成例について説明する。図２は本発明の実施の形態に係る計算機装置の計算機モジュール、I/Oモジュール間のPCIeインターフェースの構成を示す図である。
【００２７】
図２において、計算機モジュール１１０内の中継バッファ６００は、I/O HUB３００の出力信号を増幅し、PCIeインターフェース１６１に出力する。I/Oモジュール１２０内の中継バッファ６０２は、PCIeインターフェース１６１からの信号を増幅して、PCIeスイッチ４００に出力する。同様に、中継バッファ６０３は、PCIeスイッチ４００の出力信号を増幅し、PCIeインターフェース１６２に出力する。中継バッファ６０１はPCIeインターフェース１６２からの信号を増幅して、I/O HUB３００に出力する。
【００２８】
ケーブル抜去検出回路１１５，１２５は、PCIeケーブル１５１内のＧＮＤ信号１６５，１６６と接続し、接続先の装置内で、接地されている。PCIeケーブル１５１が抜かれると、ケーブル抜去検出回路１１５，１２５は電位の変化を検出し、I/O HUB３００及びPCIeスイッチ４００に通知する。I/O HUB３００及びPCIeスイッチ４００は、ケーブル抜去検出信号６６０，６６１が入力されると、入力バッファ３３０，７３０（図４、図５参照）が受信した信号のシリアル−パラレル変換を停止し、プロトコル変換部へのグリッチ伝播を抑止する。
【００２９】
図３は、計算機モジュール及びI/Oモジュールに搭載される中継バッファの構成例を示す。ここでは、計算機モジュール１１０に搭載される中継バッファ６００を例にとって、その構成例を説明する。中継バッファ６００は内部に、入力バッファ６１０、出力バッファ６２０、及びノイズフィルタ回路６０５を備える。ノイズフィルタ回路６０５は、入力バッファ６１１、基準電圧生成回路６３０、比較回路６４０を備える。PCIe入力信号はイコライザ機能を有する入力バッファ６１０、及びプリエンファシス機能を有する出力バッファ６２０を経由して出力される。また、入力バッファ６１１の出力振幅と、基準電圧生成回路６３０の出力を比較回路６４０にて比較し、出力振幅がPCIeインターフェース仕様以下であると、ノイズとしてみなし、出力バッファ６２０の出力を停止する。
【００３０】
また、中継バッファ６００，６０１は、I/O HUB３００よりノイズフィルタ回路制御信号６５０を受ける。同様に、中継バッファ６０２，６０３は、PCIeスイッチ４００よりノイズフィルタ回路制御信号６５１を受ける。I/O HUB３００及びPCIeスイッチ４００は、PCIeインターフェースの通信モードに応じて、ノイズフィルタ回路制御信号６５０を切り替え、比較回路６４０を有効、又は無効にする。
【００３１】
PCIeインターフェースの通信モードが２．５Gbps動作時及びＥＩステート時では、比較回路６４０の結果を元に、出力バッファ６２０の出力を有効、又は無効にする。５Gbps動作時では、比較回路６４０の結果によらず出力バッファ６２０出力を有効にする。すなわち、５Gbps動作時には、ノイズフィルタ回路６０５の機能を無効にする。
【００３２】
図４は、計算機モジュール１１０に搭載されるI/O HUB３００の構成例を示す。I/O HUB３００は、プロトコル変換部３１０、パラレル−シリアル変換部３４０、シリアル−パラレル変換部３５０、出力バッファ３２０、入力バッファ３３０、ＥＩ生成部３６０、レシーブデータスイッチ３７０、通信モードステータスレジスタ３８０、通信モードケイパビリティレジスタ３９０を備える。プロトコル変換部３１０は、ＣＰＵ２００からのトランザクションをPCIe仕様に則り、パラレル信号に変換し、またPCIeデバイスからの応答をＣＰＵ２００へのトランザクションに変換する。パラレル−シリアル変換部３４０は、プロトコル変換部３１０によって変換されたパラレル信号を、PCIe仕様に則り、シリアル信号に変換し、出力バッファ３２０より出力する。シリアル−パラレル変換部３５０は、入力バッファ３３０が受信したシリアル信号をパラレル信号に変換し、プロトコル変換部３１０へ伝える。通信モードケイパビリティレジスタ３９０は、PCIe仕様に定められた機能の有無を記録し、I/O HUB３００が５Gbpsで通信可能であることを記録している。通信モードステータスレジスタ３８０はI/O HUB３００の通信状態を格納し、PCIeインターフェースのリンクの有無、通信状態（２．５Gbps、５Gbps、もしくはＥＩ状態）を記録する。
【００３３】
図５は、I/Oモジュール１２０に搭載されるPCIeスイッチの構成例を示す。PCIeスイッチ４００は、PCIeポート４１０，４１１，４１２，４１３、及びPCIeブリッジ４２０を備える。PCIeポート４１０は、パラレル−シリアル変換部４４０、シリアル−パラレル変換部４５０、出力バッファ７２０、入力バッファ７３０、ＥＩ生成部７６０、レシーブデータスイッチ７７０、プロトコル変換部７１０、通信モードステータスレジスタ７８０、通信モードケイパビリティレジスタ７９０を備える。シリアル−パラレル変換部４５０は、入力バッファ７３０がI/O HUB３００から受信したシリアル信号をパラレル信号に変換し、プロトコル変換部７１０へ伝える。パラレル−シリアル変換部４４０はプロトコル変換部７１０からのパラレル信号をシリアル信号に変換し、出力バッファ７２０より出力する。通信モードケイパビリティレジスタ７９０は、PCIe仕様に定められた機能の有無を格納し、PCIeスイッチ４００が５Gbpsで通信可能であることを記録している。通信モードステータスレジスタ７８０はPCIeスイッチ４００の通信状態を格納し、PCIeインターフェースのリンクの有無、通信状態（２．５Gbps、５Gbps、もしくはＥＩ状態）を記録する。PCIeブリッジ４２０は、PCIeポート４１０，４１１，４１２，４１３の接続を切り替える。
【００３４】
次に図９を用いて、PCIeインターフェースの状態遷移について、説明する。
【００３５】
PCIeでは、まず接続するデバイス間でリンクトレーニングを行う（ステップ１５０１）。接続先のデバイスを検出すると、２．５Gbpsモードでリンクを接続する。このときはデバイス間では２．５Gbpsで通信を行う（ステップ１５０２）。接続する両方のデバイスが５Gbpsで通信可能な場合、５Gbpsモードに遷移する。このときデバイス間では５Gbpsで通信を行う（ステップ１５０３）。
【００３６】
２．５Gbpsモード、及び５Gbpsモードにおいて、接続するデバイス間で一定時間データが転送されなかった場合、ＥＩモードに遷移する（ステップ１５０４）。ＥＩモードにおいて、接続するデバイス間でデータの転送を行う必要が生じた場合、再度リンクトレーニングを行う。
【００３７】
次に、図２から図５と図６Ａ、図６Ｂを用いて、本発明の実施の形態に係る計算機装置の通常時の動作について説明する。
【００３８】
まず、計算機モジュール１１０とI/Oモジュール１２０をPCIeケーブル１５１で接続する（ステップ１００１）。I/O HUB３００及びPCIeスイッチ４００は接続トレーニングを開始する（ステップ１００２）。I/O HUB３００はダウンストリーム側のPCIeスイッチ４００を検出する（ステップ１００３）。
【００３９】
I/O HUB３００は２．５GbpsでPCIeスイッチ４００とリンクを確立する。I/O HUB３００は２．５Gbpsモードであることを通信モードステータスレジスタ３８０に記録する。また、PCIeスイッチ４００は２．５Gbpsモードであることを通信ステータスレジスタ７８０に記録する（ステップ１００４）。
【００４０】
２．５Gbpsモードである場合、I/O HUB３００は中継バッファ６００，６０１に対し、ノイズフィルタ回路制御信号６５０を介して、それぞれのノイズフィルタ回路６０５を有効にする（ステップ１００５）。同様にPCIeスイッチ４００は、中継バッファ６０２，６０３のノイズフィルタ回路６０５を有効にする（ステップ１００６）。
【００４１】
I/O HUB３００は自身の通信モードケイパビリティレジスタ３９０と、PCIeインターフェースを介し、PCIeスイッチ４００の通信モードケイパビリティレジスタ７９０の内容を読む（ステップ１００７）。次に、I/O HUB３００は、通信モードケイパビリティレジスタ３９０，７９０の内容から、I/O HUB３００自身とPCIeスイッチ４００の両方が５Gbpsで動作可能か判断する（ステップ１００８）。
【００４２】
I/O HUB３００、PCIeスイッチ４００の両方、又はいずれか一方が５Gbpsで動作できない場合、I/O HUB３００及びPCIeスイッチ４００は、２．５Gbpsモードのまま通信する（１００９）。
【００４３】
I/O HUB３００とPCIeスイッチ４００の両方が５Gbpsで動作可能である場合、I/O HUB３００とPCIeスイッチ４００は２．５Gbpsモードから５Gbpsに遷移する（ステップ１０１０，１０１１）。
【００４４】
５Gbps通信時は信号振幅の減衰が著しく、PCIe仕様のノイズ閾値を下回るため、I/O HUB３００は中継バッファ６００，６０１に対し、ノイズフィルタ回路制御信号６５０を介して、それぞれのノイズフィルタ回路６０５内の比較回路６４０を無効にする。同様にPCIeスイッチ４００は中継バッファ６０２，６０３に対し、ノイズフィルタ回路制御信号６５１を介して、それぞれのノイズフィルタ回路６０５内の比較回路６４０を無効にする（ステップ１０１２，１０１３）。そして、I/O HUB３００及びPCIeスイッチ４００は、５Gbpsモードのまま通信する（１０１４）。
【００４５】
次に、図２から図５及び図７を用いて、本発明の実施の形態に係る計算機装置のＥＩモードへの遷移時の動作について説明する。
【００４６】
I/O HUB３００及びPCIeスイッチ４００は、一定時間ＣＰＵ２００、又はPCIeデバイス５００，５０１，５０２からの通信が無い場合、省電力のため、２．５Gbpsモードあるいは５GbpsモードからＥＩモードへ遷移する。ＥＩモードへの遷移を行う際、I/O HUB３００はPCIeスイッチ４００に対し、PCIeインターフェース１６１を介してＥＩ遷移のオーダを送信する（ステップ１１０１，１１０２）。
【００４７】
ＥＩ遷移オーダ発行後、I/O HUB３００はＥＩモードに遷移する。あわせて、I/O HUB３００は、通信モードステータスレジスタ３８０にＥＩモードであることを記録する（ステップ１１０３）。PCIeスイッチ４００は、ＥＩ遷移オーダを受信すると、２．５Gbpsモードあるいは５GbpsモードからＥＩモードへ遷移する。あわせて、PCIeスイッチ４００は、通信モードステータスレジスタ７８０にＥＩモードであることを記録する（１１０４）。
【００４８】
トランザクションが無いＥＩモードでは、PCIe仕様が定める閾値以下の信号はすべてノイズなので、I/O HUB３００は、ノイズフィルタ回路制御信号６５０を介し、中継バッファ６００，６０１のノイズフィルタ回路６０５を有効にする（ステップ１１０５）。同様にPCIeスイッチ４００は、ノイズフィルタ回路制御信号６５１を介し、中継バッファ６０２，６０３のノイズフィルタ回路６０５を有効にする（ステップ１１０６）。
【００４９】
I/O HUB３００及びPCIeスイッチ４００は、次にＣＰＵ２００又はPCIeデバイス５００，５０１，５０２から通信が行われるまで、ＥＩモードを継続する（ステップ１１０７）。
【００５０】
以上により、PCIeインターフェースの動作状態に応じて、中継バッファの入力信号のノイズフィルタ回路の有効／無効を制御し、５Gbpsモード時の減衰した信号と、２．５Gbpsモード、及びＥＩモード時のノイズを区別し、中継バッファがPCIeインターフェース仕様の閾値以下の信号をとノイズを区別し、ノイズを受信しても、出力を止めることで、ノイズ起因のランダムパターン信号による誤作動を抑止することができる。
【００５１】
次に、図２、図４、図５及び図８を用いて、本発明の実施の形態に係る計算機装置のPCIeケーブル誤抜去時の動作について説明する。
【００５２】
I/O HUB３００とPCIeスイッチ４００間のPCIeのリンクにおいて、PCIeケーブル１５１が抜かれたとする。この時、ケーブル抜去のグリッチによるノイズ起因のランダムパターン信号が発生する（ステップ１２０１）。
【００５３】
計算機モジュール１１０のケーブル抜去検出回路１１５は、PCIeケーブル１５１が抜去されると、ＧＮＤ信号１６６の電位が変化するので、PCIeケーブル１５１が抜去されたことを検出する（ステップ１２０２）。同様に、I/Oモジュール１２０のケーブル抜去検出回路１２５も、PCIeケーブル１５１が抜去されると、ＧＮＤ信号１６５の電位が変化するので、PCIeケーブル１５１が抜去されたことを検出する（ステップ１２０３）。
【００５４】
計算機モジュール１１０のケーブル抜去検出回路１１５はI/O HUB３００に対し、ケーブル抜去検出信号６６０を介して、ケーブルの抜去を通知する（ステップ１２０４）。同様に、I/Oモジュール１２０のケーブル抜去検出回路１２５はPCIeスイッチ４００に対し、ケーブル抜去検出信号６６１を介して、ケーブルの抜去を通知する（ステップ１２０５）。
【００５５】
I/O HUB３００のレシーブデータスイッチ３７０はケーブル抜去の通知を受けると、プロトコル変換部３１０の接続を、シリアル−パラレル変換部３５０からＥＩ生成部３６０に切り替える（ステップ１２０６）。同様に、PCIeスイッチ４００のレシーブデータスイッチ７７０はケーブル抜去の通知を受けると、プロトコル変換部７１０の接続を、シリアル−パラレル変換部４５０からＥＩ生成部７６０に切り替える（ステップ１２０７）。
【００５６】
I/O HUB３００のＥＩ生成部３６０は、ＥＩ状態に相当するパラレル信号のデータを生成し、プロトコル変換部３１０に送る（ステップ１２０８）。同様に、PCIeスイッチ４００のＥＩ生成部７６０はＥＩ状態に相当するパラレル信号を生成し、プロトコル変換部７１０に送る（ステップ１２０９）。
【００５７】
I/O HUB３００のプロトコル変換部３１０は、ＥＩ生成部３６０からＥＩ状態に相当するパラレル信号を受けると、ＥＩモードへの遷移を行う（ステップ１２１０）。同様に、PCIeスイッチ４００のプロトコル変換部７１０はＥＩ生成部７６０からＥＩ状態に相当するパラレル信号を受けると、ＥＩモードへの遷移を行う（ステップ１２１１）。
【００５８】
以上により、ケーブル接続状態を監視し、ケーブル誤抜去検出時、ＥＩ相当のパラレル信号を生成し、プロトコル変換部をＥＩモードへ遷移させることで、グリッチによるノイズ起因のランダムパターン信号による誤動作を抑止することができる。
【００５９】
なお、計算機モジュール１１０のケーブル抜去検出回路１１５は、ＧＮＤ信号１６６の電位の変化のみを監視しているので、ケーブル抜去の検出から通知までのオーバーヘッドは、中継バッファ６０１のノイズフィルタリングにかかるオーバーヘッド、及び、I/O HUB３００のシリアル−パラレル変換部３５０のシリアル−パラレル変換にかかるオーバーヘッドより十分短いとみなせるが、順序保証のため、シリアル‐パラレル変換時にウェイトを入れてもよい。
【００６０】
同様に、I/Oモジュール１２０のケーブル抜去検出回路１２５は、ＧＮＤ信号１６５の電位の変化のみを監視しているので、ケーブル抜去の検出から通知までのオーバーヘッドは、中継バッファ６０２のノイズフィルタリングにかかるオーバーヘッド、及び、PCIeスイッチ４００のシリアル−パラレル変換部４５０のシリアル−パラレル変換にかかるオーバーヘッドより十分短いとみなせるが、順序保証のため、シリアル‐パラレル変換時にウェイトを入れてもよい。
【００６１】
また、本実施の形態では、ケーブル誤抜去時に、ＥＩ生成部がＥＩ状態に相当するデータを生成し、ＥＩ状態を作り出すことで、動作を継続させているが、実装の別形態として、ＥＩ相当のデータの代わりにPCIeデバイスのホットリムーブ処理を行うデータを生成することで、ＯＳがホットリムーブ処理を行い、PCIeデバイスをリムーブさせたように見せかけて、以降動作を継続することも可能である。
【００６２】
以上のように、本実施の形態では、計算機モジュール及びI/OモジュールはPCIeインターフェースで接続し、信号の波形補償するための中継バッファを備え、計算機モジュール側及びI/Oモジュール側中継バッファはそれぞれ、PCIeインターフェース信号の動作モードに応じて、ノイズフィルタ回路の有効／無効の切り替えを行うことで、減衰した信号とノイズを区別し、ノイズ起因によるランダムパターン信号の発生を抑止することができる。
【００６３】
また、ケーブルの接続状態を検出することで、ケーブル誤抜去時のグリッチによるノイズ起因によるランダムパターン信号の発生を抑止することができる。
【００６４】
よって、複数の計算機モジュール及びI/Oモジュールを、PCIeスイッチを介し、PCIeインターフェースにて接続し、複数のルートがPCIeツリーを構成する計算機装置において、PCI Expressスイッチがランダムパターン信号を起因とした誤動作による影響を、PCIeツリーへ伝播させず、動作を継続することが可能である。
【産業上の利用可能性】
【００６５】
本発明は、PCIeインターフェースを有する計算機装置に関し、PCIe信号の長距離伝送を行う機器において、広く適用可能である。
【符号の説明】
【００６６】
１００  計算機装置
１１０〜１１２  計算機モジュール
１２０，１２１  I/Oモジュール
１１５，１２５  ケーブル抜去検出回路
１５１〜１５２  PCIeケーブル
１６１，１６２  PCIeインターフェース
１６５，１６６  ＧＮＤ信号
２００  ＣＰＵ
３００  I/O HUB
４００，４０１  PCIeスイッチ
３１０，７１０  プロトコル変換部
４１０〜４１３  PCIeポート
３２０，６２０，７２０  出力バッファ
３３０，６１０，６１１，７３０  入力バッファ
３４０，４４０  パラレル−シリアル変換部
３５０，４５０  シリアル−パラレル変換部
３６０，７６０  ＥＩ生成部
３７０，７７０  レシーブデータスイッチ
３８０，７８０  通信モードステータスレジスタ
３９０，７９０  通信モードケイパビリティレジスタ
５００〜５０２  PCIeデバイス
６００〜６０３  中継バッファ
６０５  ノイズフィルタ回路
６３０  基準電圧生成回路
６４０  比較回路
６５０，６５１  ノイズフィルタ回路制御信号
６６０，６６１  ケーブル抜去検出信号
【図１】
2011100412.tif 000003
【図２】
2011100412.tif 000004
【図３】
2011100412.tif 000005
【図４】
2011100412.tif 000006
【図５】
2011100412.tif 000007
【図６Ａ】
2011100412.tif 000008
【図６Ｂ】
2011100412.tif 000009
【図７】
2011100412.tif 000010
【図８】
2011100412.tif 000011
【図９】
2011100412.tif 000012
【手続補正書】
【提出日】平成22年10月21日(2010.10.21)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
従来、計算機装置において、I/Oデバイスの接続インターフェースにPeripheral Component Interconnect Express（PCIe）が広く使われている（非特許文献１：１章Introduction参照）。PCIeでは、構成内部にスイッチを配置することで、計算機モジュールに接続可能なI/Oデバイスの数を増やすことが可能である。また、PCIeの拡張仕様であるMulti-Root I/O Virtualization（MR-IOV）では、MR-IOV対応のPCIeスイッチを介すことで、複数の計算機モジュールが、同じI/Oデバイスを共用して使用することも可能である（非特許文献２：1.1 Architectural Overview参照）。特にブレード型サーバモジュールの様な、構造上I/Oポートの実装数が制限される計算機モジュールにおいて、I/Oデバイスを拡張するためには、計算機モジュールとは別にI/Oデバイスを複数搭載可能な装置（I/Oモジュール）を設置し、計算機モジュールとI/Oモジュール間をケーブルで接続する形態が一般的である。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
【非特許文献１】PCI Express Base Specification 2.0
【非特許文献２】Multi-Root I/O Virtualization and Sharing Specification Revision 1.0
【非特許文献３】PCI Express External Cabling Specification Revision 1.0
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
ケーブルはプリント基板と異なり、使用する線材、伝送方式（電気信号による伝送、ファイバーを用いた光伝送等）の組み合わせの幅が広く、ケーブルの種類によって単位長あたり減衰率が異なるので、単にケーブル長ではなく、ケーブルのトータルでの減衰について、１２ｄＢまでと規定している（非特許文献３、6.2.2.1節）。