(57)【特許請求の範囲】
【請求項１】
情報を相互に通信する複数の情報処理装置を有し、前記複数の情報処理装置の各々が、他の情報処理装置からの情報を受信する受信部と前記受信部で受信した情報を処理する情報処理部とを有する並列処理装置において、
前記受信部は、
受信した情報をチェックし、エラーを検出する毎にエラー検出情報を出力するチェック部と、
前記チェック部が出力した前記エラー検出情報の数をカウントするカウンタ部と、
第１の時間間隔および第１の閾値を書き替え可能に保持する保持部を有し、前記カウンタ部のカウンタ値を前記保持部に保持された前記第１の時間間隔で読み出し、カウンタ値の増加率を算出し、算出した増加率が前記保持部に保持された前記第１の閾値を超えた場合に受信した情報にバーストエラーが発生したことを検出するバーストエラー検出部と、
前記保持部に設定可能な最大の前記第１の時間間隔内に前記他の情報処理装置から受信する情報を記憶可能な記憶容量を有する記憶部と、
受信した情報を前記記憶部に逐次書き込み、前記バーストエラー検出部によるバーストエラーの検出に基づいて、前記記憶部への情報の書き込みを停止する書き込み制御部と、
再現指示に基づいて、前記他の情報処理装置から受信する情報の前記受信部内の内部伝送路を介した前記チェック部および前記書き込み制御部への伝送を遮断し、前記記憶部から読み出した情報を前記内部伝送路を介して前記チェック部に伝送する伝送制御部を有することを特徴とする並列処理装置。
【請求項２】
前記内部伝送路は、前記伝送制御部の出力と前記チェック部および前記書き込み制御部の入力との間に接続され、
前記伝送制御部は、
前記再現指示のうち第１の再現指示に基づいて、前記記憶部に記憶されたバーストエラーを含む情報を読み出し、読み出した情報を出力する読み出し制御部と、
前記再現指示のうち第２の再現指示に基づいて、前記他の情報処理装置から情報を受信する経路と前記内部伝送路との接続を遮断し、前記読み出し制御部の出力を前記内部伝送路に接続する切り替え部を有することを特徴とする請求項１記載の並列処理装置。
【請求項３】
前記受信部は、前記記憶部において最古の情報が記憶された記憶領域の位置を示す位置情報を記憶する位置情報保持部を有し、
前記書き込み制御部は、前記位置情報を前記位置情報保持部に書き込み、
前記読み出し制御部は、前記位置情報保持部に記憶された前記位置情報が示す記憶領域から順に前記記憶部に記憶された情報を読み出すことを特徴とする請求項２記載の並列処理装置。
【請求項４】
前記読み出し制御部が前記切り替え部に出力する情報の伝送レートは、前記切り替え部で受信する前記他の情報処理装置からの情報の伝送レートに等しいことを特徴とする請求項２または請求項３記載の並列処理装置。
【請求項５】
前記切り替え部は、復帰指示に基づいて、前記読み出し制御部の出力と前記内部伝送路との接続を遮断し、前記他の情報処理装置から情報を受信する経路を前記内部伝送路に接続し、
前記書き込み制御部は、解除指示に基づいて、前記記憶部への情報の書き込みの停止状態を解除することを特徴とする請求項２ないし請求項４のいずれか１項記載の並列処理装置。
【請求項６】
前記複数の情報処理装置の各々は、外部からの要求に基づいて、前記第１の再現指示、前記第２の再現指示、復帰指示または解除指示を生成する再現コントローラを有することを特徴とする請求項５記載の並列処理装置。
【請求項７】
前記受信部は、前記他の情報処理装置からの情報をパケットとして受信し、
前記書き込み制御部は、受信したパケットを前記記憶部に逐次書き込むことを特徴とする請求項１ないし請求項６のいずれか１項記載の並列処理装置。
【請求項８】
情報を相互に通信する複数の情報処理装置を有し、前記複数の情報処理装置の各々が、他の情報処理装置からの情報を受信する受信部と前記受信部で受信した情報を処理する情報処理部とを有する並列処理装置で発生するバーストエラーを再現させるバーストエラー再現方法において、
前記受信部に含まれるチェック部が、受信した情報をチェックし、エラーを検出する毎にエラー検出情報を出力し、
前記受信部に含まれるカウンタ部が、前記チェック部が出力した前記エラー検出情報の数をカウントし、
前記受信部に含まれ、第１の時間間隔および第１の閾値を書き替え可能に保持する保持部を有するバーストエラー検出部が、前記カウンタ部のカウンタ値を前記保持部に保持された前記第１の時間間隔で読み出し、カウンタ値の増加率を算出し、算出した増加率が前記保持部に保持された前記第１の閾値を超えた場合に受信した情報にバーストエラーが発生したことを検出し、
前記受信部に含まれる書き込み制御部が、受信した情報を、前記保持部に設定可能な最大の前記第１の時間間隔内に前記他の情報処理装置から受信する情報を記憶可能な記憶容量を有する記憶部に逐次書き込み、前記バーストエラー検出部によるバーストエラーの検出に基づいて、前記記憶部への情報の書き込みを停止し、
前記受信部に含まれる伝送制御部が、再現指示に基づいて、前記他の情報処理装置から受信する情報の内部伝送路を介した前記チェック部および前記書き込み制御部への伝送を遮断し、前記記憶部から読み出した情報を前記内部伝送路を介して前記チェック部に伝送することを特徴とするバーストエラー再現方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、並列処理装置およびバーストエラー再現方法に関する。
【背景技術】
【０００２】
例えば、データを送受信する回路では、受信側の回路の不具合に起因して、受信データが特定のパターンの場合にのみ誤動作が発生する場合がある。そこで、誤動作の原因を見つけやすくするために、誤動作を発生させた特定パターンを再現する再現装置が提案されている。この種の再現装置は、回路間で伝送されるデータを第１メモリに格納し、データがトリガ条件を含む場合、第１メモリへのデータの格納を停止し、第１メモリに記憶されたデータを第２メモリに格納する。そして、再現装置は、データを再現する指示に基づいて、第２メモリに記憶されたデータを第１メモリに展開し、展開されたデータを使用してトリガ条件が発生したときのデータパターンを受信側の回路に供給する（例えば、特許文献１参照）。
【０００３】
一方、プラントを監視する監視システムは、プラントからのプロセスデータを第１保存手段に格納し、異常の検出時に、第１保存手段に保存された異常の検出前のプロセスデータを第２保存手段に転送する。さらに、異常の検出後のプラントからのプロセスデータを第２保存手段に格納することで、プラントを監視し続ける場合にも、異常の検出の前後のプロセスデータは、消去されることなく第２保存手段に保存される。このため、第２保存手段に保存されたプロセス情報を使用して、異常時の状態をディスプレイに表示することが可能になる（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１７１８８２号公報
【特許文献２】特開平６−６８３６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、伝送路を介して装置間でパケット等を伝送する場合、伝送路の品質等に依存してビットエラーが発生する。ビットエラーは、パケットを受信する装置により訂正される。例えば、伝送路の伝送品質を計る指標として、ビットエラーレート（ＢＥＲ）がある。ビットエラーレートは、”１０”を基数とする指数で表される。ビットエラーレートが定常的にある範囲に収まっているエラー状態は、ランダムエラーと称され、ビットエラーレートが一時的にある範囲を超えるエラー状態は、バーストエラーと称される。
【０００６】
バーストエラーが発生したパケットを受信した装置は、バーストエラーの発生に対応して、例えば、パケットの再送要求等のエラー処理を実行する。バーストエラーのレベルが、パケットが認識されない程度まで悪化した場合、パケットを受信した装置は、パケットに対応する応答または再送要求をパケットの送信元に発行できず、装置間の通信は遮断される（リンクダウン）。
【０００７】
ここで、バーストエラーが再現できれば、パケットを受信する装置内でのバーストエラーの発生時の挙動を調べることができ、リンクダウンの原因を明らかにすることが可能になる。しかしながら、バーストエラーは、伝送路に発生するノイズ、伝送路に送信する信号を生成する回路の電圧変動または回路の周囲温度の変動等、制御が困難な外的要因により発生する。このため、リンクダウンの原因となったバーストエラーを再現することは困難である。
【０００８】
１つの側面では、本発明は、伝送路等で発生したバーストエラーを再現することを目的とする。
【課題を解決するための手段】
【０００９】
一つの観点によれば、情報を相互に通信する複数の情報処理装置を有し、複数の情報処理装置の各々が、他の情報処理装置からの情報を受信する受信部と受信部で受信した情報を処理する情報処理部とを有する並列処理装置において、受信部は、受信した情報をチェックし、エラーを検出する毎にエラー検出情報を出力するチェック部と、チェック部が出力したエラー検出情報の数をカウントするカウンタ部と、第１の時間間隔および第１の閾値を書き替え可能に保持する保持部を有し、カウンタ部のカウンタ値を保持部に保持された第１の時間間隔で読み出し、カウンタ値の増加率を算出し、算出した増加率が保持部に保持された第１の閾値を超えた場合に受信した情報にバーストエラーが発生したことを検出するバーストエラー検出部と、保持部に設定可能な最大の第１の時間間隔内に他の情報処理装置から受信する情報を記憶可能な記憶容量を有する記憶部と、受信した情報を記憶部に逐次書き込み、バーストエラー検出部によるバーストエラーの検出に基づいて、記憶部への情報の書き込みを停止する書き込み制御部と、再現指示に基づいて、他の情報処理装置から受信する情報の受信部内の内部伝送路を介したチェック部および書き込み制御部への伝送を遮断し、記憶部から読み出した情報を内部伝送路を介してチェック部に伝送する伝送制御部を有する。
【発明の効果】
【００１０】
１つの側面では、本発明は、伝送路等で発生したバーストエラーを再現することができる。
【図面の簡単な説明】
【００１１】
【図１】並列処理装置の一実施形態を示す図である。
【図２】図１に示す受信部の動作の一例を示す図である。
【図３】並列処理装置の別の実施形態を示す図である。
【図４】図３に示す受信部の一例を示す図である。
【図５】図３に示す情報処理装置の一例を示す図である。
【図６】図４に示すバーストエラー検出部によりバーストエラーを検出する方法の一例を示す図である。
【図７】ファームウェア等によりバーストエラーを検出する方法の一例を示す図である。
【図８】図３に示す再現コントローラの動作の一例を示す図である。
【図９】図４に示す受信部の動作の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を用いて実施形態を説明する。信号が伝達される信号線には、信号名と同じ符号を使用する。
【００１３】
図１は、並列処理装置の一実施形態を示す。図１に示す並列処理装置１００は、パケット等に含まれる情報を、伝送路１１０を介して相互に通信する複数の情報処理装置２００を有する。図１では、２つの情報処理装置２００が伝送路１１０を介して相互に接続されるが、各情報処理装置２００は、伝送路１１０を介して２以上の情報処理装置２００に接続されてもよい。並列処理装置１００は、複数の情報処理装置２００を使用して、計算処理またはデータ処理等の情報処理を並列に処理する。以下では、情報処理装置２００を相互に接続する伝送路１１０を含む経路は、リンクとも称される。また、情報処理装置２００間で相互に通信される情報は、パケットとして伝送路１１０に伝送される。
【００１４】
各情報処理装置２００は、他の情報処理装置２００からのパケットを受信する受信部１と、受信部１で受信したパケットを処理する情報処理部２と、情報処理部２が生成する情報をパケットとして他の情報処理装置２００に送信する送信部３とを有する。
【００１５】
受信部１は、バーストエラー検出部４、書き込み制御部５、記憶部６、伝送制御部７および受信制御部８を有する。バーストエラー検出部４は、伝送制御部７の出力に接続された内部伝送路９を介して他の情報処理装置２００からのパケットを受信し、受信したパケットにバーストエラーが発生したことを検出した場合、書き込み制御部５に停止指示を出力する。
【００１６】
書き込み制御部５は、停止指示を受ける前、内部伝送路９を介して他の情報処理装置２００から受信したパケットを記憶部６に逐次書き込み、停止指示の受信に基づいて、パケットの記憶部６への書き込みを停止する。すなわち、書き込み制御部５は、バーストエラーが発生するまで、記憶部６にパケットを逐次書き込み、バーストエラーが発生した場合、記憶部６へのパケットの書き込みを停止する。なお、バーストエラーを検出する例は、図６で説明される。
【００１７】
記憶部６は、書き込み制御部５から供給されるパケットを記憶する複数の記憶領域を有する。記憶部６は、例えば、リングバッファとして動作し、パケットが全ての記憶領域に書き込まれた後、書き込み制御部５から供給される新たなパケットは、古いパケットが記憶された記憶領域に順に上書きされる。ここで、記憶部６に書き込まれるパケットは、バーストエラーが発生したときのエラーを含む。
【００１８】
伝送制御部７は、再現指示に基づいて、他の情報処理装置２００からパケットを受信する伝送路１１０と内部伝送路９との接続を解除し、記憶部６からパケットが読み出される経路を内部伝送路９に接続する。すなわち、伝送制御部７は、再現指示に基づいて、他の情報処理装置２００から受信するパケットの内部伝送路９への伝送を遮断し、記憶部６から読み出されるパケットを内部伝送路９に伝送する。例えば、再現指示は、並列処理装置１００を管理する管理装置からの指示に基づいて、情報処理装置２００に搭載される制御チップ等により生成される。なお、再現指示は、情報処理部２により生成されてもよい。
【００１９】
受信制御部８は、内部伝送路９を介して伝送制御部７から受信したパケットをチェックし、パケットがエラーを含まない場合、受信したパケットを情報処理部２に出力する。例えば、パケットにエラーが含まれる場合、情報処理装置２００は、パケットを再送させる再送要求を送信部３からパケットの発行元の情報処理装置２００に送信する。
【００２０】
さらに、ビットエラーレートが、受信制御部８によるパケットの識別が困難になる程度まで高くなった場合（バーストエラー）、再送要求等は発行されず、リンクがダウンする。例えば、パケットを発行した情報処理装置２００は、発行したパケットに対応する応答（再送要求を含む）を１秒以上受信しない場合、パケットを送信したリンクをダウンさせる処理を実行する（リンクダウン）。
【００２１】
上述したように、バーストエラーの発生後、伝送制御部７は、再現指示に基づいて、他の情報処理装置２００から受信制御部８への経路を遮断し、記憶部６からの経路を受信制御部８に接続する切り替えを実行する。この後、バーストエラーが発生したときのエラーを含むパケットが、伝送制御部７を介して記憶部６から受信制御部８に出力される。記憶部６に記憶されたパケットは、伝送路１１０等で発生したエラーを含んでいる。また、記憶部６には、パケットに含まれるデータだけではなく、ヘッダ部等を含むパケット全体が記憶される。
【００２２】
これにより、他の情報処理装置２００からパケットを再度送信させることなく、受信部１は、バーストエラーが発生したときのエラーを含むパケットを忠実に再現することができる。そして、再現されたパケットに基づいて、例えば、受信制御部８または図示しない通信制御部等の動作が検証され、例えば、リンクダウンを発生させた原因が明らかにされる。バーストエラーが発生したときのエラーを含むパケットは、バーストエラー検出部４が出力する停止指示により、書き込み制御部５により上書きされることなく、記憶部６に記憶されている。このため、記憶部６からパケットを読み出すことで、バーストエラーが発生したときのエラーを含むパケットを何回でも再現することができ、受信制御部８または図示しない通信制御部の動作の検証を繰り返し実行することができる。
【００２３】
図２は、図１に示す受信部１の動作の一例を示す。すなわち、図２は、バーストエラーを再現させるバーストエラー再現方法の一例を示す。図２に示すフローは、所定の周期で実行される。
【００２４】
まず、ステップＳ１０において、受信部１は、他の情報処理装置２００からパケットを受信した場合、処理をステップＳ１２に移行し、他の情報処理装置２００からパケットを受信しない場合、処理を終了する。なお、初期状態において、伝送制御部７は、他の情報処理装置２００からのパケットを内部伝送路９に出力する経路に切り替わっている。ステップＳ１２において、伝送制御部７は、受信したパケットを受信制御部８に出力する。
【００２５】
次に、ステップＳ１４において、書き込み制御部５は、内部伝送路９を介して受信したパケットを記憶部６に書き込む。なお、ステップＳ１２、Ｓ１４の処理は、逆順で実行されてもよく、並列に実行されてもよい。次に、ステップＳ１６において、バーストエラー検出部４は、バーストエラーが発生したか否かを検出する。バーストエラーが発生していない場合、処理は終了し、バーストエラーが発生した場合、処理はステップＳ１８に移行される。
【００２６】
ステップＳ１８において、バーストエラー検出部４は、バーストエラーの検出に基づいて、記憶部６へのパケットの書き込みを停止する停止指示を書き込み制御部５に出力する。書き込み制御部５は、停止指示に基づいて、記憶部６へのパケットの書き込みを停止する。パケットの書き込みが停止されることにより、記憶部６は、バーストエラーが発生した情報を含むパケットを、上書き等により失うことなく保持することができる。
【００２７】
次に、ステップＳ２０において、伝送制御部７は、再現指示の受信を待ち、再現指示を受信した場合、処理をステップＳ２２に移行する。ステップＳ２２において、伝送制御部７は、再現指示に基づいて、他の情報処理装置２００から受信するパケットを内部伝送路９に出力する経路を遮断し、記憶部６から読み出されるパケットの経路を内部伝送路９に接続する。次に、ステップＳ２４において、伝送制御部７は、記憶部６パケットを読み出し、読み出したパケットを内部伝送路９に出力し、処理を終了する。
【００２８】
以上、図１および図２に示す実施形態では、受信部１は、伝送路１１０等でバーストエラーが発生したときのエラーを含むパケットを、他の情報処理装置２００からパケットを再送信させることなく再現することができる。そして、再現されたパケットに基づいて受信制御部８等の内部回路の動作を検証することができる。これにより、バーストエラーにより発生したリンクダウン等の不具合の原因を明らかにすることができる。
【００２９】
バーストエラーが発生したときのエラーを含むパケットは、書き込み制御部５により上書きされることなく、記憶部６に記憶されているため、他の情報処理装置２００から受信したパケットを何回でも再現することができる。さらに、記憶部６には、パケットに含まれるデータだけではなく、ヘッダ部等を含むパケット全体が記憶されるため、バーストエラーが発生したときのエラーを含むパケットを忠実に再現することができる。
【００３０】
図３は、並列処理装置の別の実施形態を示す。図３に示す並列処理装置１０２は、パケット等に含まれる情報を、伝送路１１２を介して相互に通信する複数の情報処理装置２０２を有する。図３では、２つの情報処理装置２０２が伝送路１１２を介して相互に接続されるが、各情報処理装置２０２は、伝送路１１２を介して複数の情報処理装置２０２に接続されてもよい。以下では、情報処理装置２０２を相互に接続する伝送路１１２を含む経路は、リンクとも称される。並列処理装置１０２は、複数の情報処理装置２０２を使用して、計算処理またはデータ処理等の情報処理を並列に処理する。
【００３１】
各情報処理装置２０２は、ＣＰＵ（Central Processing Unit）チップＣＨＩＰとメインメモリ４４とを有する。以下では、ＣＰＵチップＣＨＩＰは、ＣＨＩＰとも称される。なお、各情報処理装置２０２は、図示しないＨＤＤ（Hard Disk Drive）またはＳＳＤ（Solid State Drive）等の記憶装置と電源装置とを有する。メインメモリ４４は、ＨＭＣ（Hybrid Memory Cube）またはＤＩＭＭ（Dual Inline Memory Module）等のメモリモジュールを含む。
【００３２】
ＣＨＩＰは、ＣＰＵコア１０、フレーム転送部２０、インタフェース部３０、再現コントローラ４０およびメモリアクセスコントローラ４２を有する。なお、ＣＨＩＰは、複数のＣＰＵコア１０を有してもよい。ＣＰＵコア１０は、他の情報処理装置２０２から受信する情報に基づいて処理を実行し、処理の実行結果を他の情報処理装置２０２に送信する。あるいは、ＣＰＵコア１０は、他の情報処理装置２０２に処理させる情報を生成して他の情報処理装置２０２に送信し、処理の実行結果を他の情報処理装置２０２から受信する。ＣＰＵコア１０は、情報処理部の一例である。
【００３３】
フレーム転送部２０は、送信部５０および受信部６０を有する。送信部５０は、ＣＰＵコア１０から出力される情報を含むパケットをインタフェース部３０および伝送路１１２を介して他の情報処理装置２０２に送信する。受信部６０は、他の情報処理装置２０２からのパケットを、伝送路１１２およびインタフェース部３０を介して受信し、受信したパケットをＣＰＵコア１０に向けて出力する。また、受信部６０は、再現コントローラ４０からの指示に基づいて、バーストエラーを再現させる動作を実行する。受信部６０の例は、図４に示される。なお、フレーム転送部２０は、送信部５０が送信するパケットのフレームを生成するフレーム生成部、受信部６０で受信してエラーが訂正されたパケットを保持する受信バッファ、リンクを制御するリンク制御部等を有する。
【００３４】
インタフェース部３０は、ＤＥＳ（DESerializer）およびＳＥＲ（SERializer）を有する。ＤＥＳは、伝送路１１２を介して受信するシリアル信号をパラレル信号に変換し、変換したパラレル信号をフレーム転送部２０に出力する。ＳＥＲは、フレーム転送部２０から受信するパラレル信号をシリアル信号に変換し、変換したシリアル信号を伝送路１１２に送信する。例えば、伝送路１１２は、シリアル信号をそれぞれ伝送する複数のレーンを、受信側と送信側とに有する。
【００３５】
再現コントローラ４０は、後述するように、外部からの要求に基づいて、受信部６０にバーストエラーを再現させる制御を実行する。例えば、並列処理装置１０２を管理するシステム管理者が、並列処理装置１０２を管理する図示しない管理装置を操作することにより、管理装置が外部からの要求を発行する。なお、外部からの要求は、ＣＰＵコア１０を経由して再現コントローラ４０に供給されてもよい。あるいは、再現コントローラ４０の機能は、ＣＰＵコア１０が実行する制御プログラムにより実現されてもよい。
【００３６】
メモリアクセスコントローラ４２は、ＣＰＵコア１０が出力するメモリアクセス要求（リード要求またはライト要求）に基づいて、メインメモリ４４にアクセスする。
【００３７】
図４は、図３に示す受信部６０の一例を示す。図４において、二重線の矢印は、パケットＰＣＫＴの伝送経路を示し、実線の矢印は、受信部が生成する制御信号を示し、破線の矢印は、再現コントローラ４０が生成する制御信号を示す。
【００３８】
受信部６０は、切り替え部６２、パケットチェック部６４、エラーカウンタ６６、バーストエラー検出部６８、書き込み制御部７０、ポインタレジスタ７２、パケットバッファ７４および読み出し制御部７６を有する。パケットチェック部６４の入力および書き込み制御部７０の入力は、内部伝送路６３を介して切り替え部６２の出力に接続される。切り替え部６２および読み出し制御部７６は、伝送制御部の一例である。パケットバッファ７４は、記憶部の一例である。
【００３９】
切り替え部６２は、切り替え指示を示す制御信号ＳＷを再現コントローラ４０から受信した場合、他の情報処理装置２０２からのパケットＰＣＫＴの伝送経路と内部伝送路６３との接続を遮断する。そして、切り替え部６２は、読み出し制御部７６から出力されるパケットＰＣＫＴの伝送経路を内部伝送路６３に接続する。切り替え信号ＳＷは、第２の再現指示の一例である。
【００４０】
一方、切り替え部６２は、復帰指示を示す制御信号ＳＷを再現コントローラ４０から受信した場合、読み出し制御部７６から出力されるパケットＰＣＫＴの伝送経路と内部伝送路６３との接続を遮断する。そして、切り替え部６２は、他の情報処理装置２０２からのパケットＰＣＫＴの伝送経路を内部伝送路６３に接続する。以下では、切り替え指示を示す制御信号ＳＷは、切り替え信号ＳＷと称され、復帰指示を示す制御信号ＳＷは、復帰信号ＳＷと称される。
【００４１】
パケットチェック部６４は、内部伝送路６３を介して切り替え部６２から受信するパケットＰＣＫＴに含まれるデータ等の情報をチェックし、エラーを検出する毎にエラー検出信号ＥＤＥＴを出力する。エラー検出信号ＥＤＥＴは、エラー検出情報の一例である。パケットチェック部６４は、パケットＰＣＫＴがエラーを含まない場合、パケットＰＣＫＴをフレーム転送部２０内に設けられるバッファ部等を介してＣＰＵコア１０に出力する。パケットチェック部６４は、チェック部の一例であり、エラー検出信号ＥＤＥＴは、エラー検出情報の一例である。なお、図５で説明されるように、パケットＰＣＫＴが情報処理装置２０２を経由して他の情報処理装置２０２に転送される場合、パケットＰＣＫＴは、ＣＰＵコア１０に出力されることなく、他の情報処理装置２０２に転送される。
【００４２】
エラーカウンタ６６は、パケットチェック部６４から出力されるエラー検出信号ＥＤＥＴの数をカウントし、カウントにより得たカウンタ値ＣＯＵＮＴを出力する。すなわち、カウンタ値ＣＯＵＮＴは、パケットチェック部６４で検出されたエラーの総数を示す。エラーカウンタ６６は、カウンタ部の一例である。
【００４３】
バーストエラー検出部６８は、時間間隔ＴＰと閾値ＶＴを書き替え可能に保持するレジスタ６９を有する。レジスタ６９に保持される時間間隔ＴＰと閾値ＶＴは、再現コントローラ４０により書き替えられる。レジスタは、保持部の一例である。時間間隔ＴＰと閾値ＶＴを書き替え可能にすることで、並列処理装置１０２が設置される環境に応じて、バーストエラーの検出感度を最適に設定することができる。
【００４４】
バーストエラー検出部６８は、レジスタ６９に保持された時間間隔ＴＰと閾値ＶＴとに基づいてバーストエラーを検出した場合、バーストエラー検出信号ＢＥＤＥＴを書き込み制御部７０に出力する。また、バーストエラー検出部６８は、バーストエラーを検出した場合、バーストエラーの発生を通知するためのバーストエラー信号ＢＥＲＲを、フレーム転送部２０内に設けられるエラー処理部等に出力する。バーストエラー信号ＢＥＲＲは、ＣＰＵコア１０に出力されてもよい。バーストエラーの検出方法の例は、図６で説明される。
【００４５】
書き込み制御部７０は、解除指示を示す解除信号ＷＲを受信した後、バーストエラー検出信号ＢＥＤＥＴを受信するまで、内部伝送路６３を介して受信したパケットＰＣＫＴをパケットバッファ７４に逐次書き込む。すなわち、書き込み制御部７０は、他の情報処理装置２０２から受信したパケットＰＣＫＴをパケットバッファ７４に書き込む。また、書き込み制御部７０は、バーストエラー検出信号ＢＥＤＥＴの受信に基づいて、書き込み制御信号ＷＣＮＴの生成を停止することで、パケットＰＣＫＴのパケットバッファ７４への書き込みを停止する。バーストエラーの検出に基づいてパケットバッファ７４へのパケットＰＣＫＴの書き込みを停止することで、バーストエラーの検出の前後に受信したパケットＰＣＫＴを書き込む場合に比べて、パケットバッファ７４の回路規模を小さくすることができる。
【００４６】
例えば、書き込み制御部７０は、パケットＰＣＫＴを書き込むパケットバッファ７４内の記憶領域の位置をアドレス信号ＡＤにより指定し、ライトイネーブル信号ＷＥに同期してパケットＰＣＫＴをパケットバッファ７４に書き込む。パケットＰＣＫＴのサイズが、パケットバッファ７４の１つのアドレスＡＤに割り当てられる記憶領域より大きい場合、書き込み制御部７０は、パケットＰＣＫＴを複数回に分けてパケットバッファ７４に書き込む。
【００４７】
パケットバッファ７４は、アドレスＡＤが割り当てられた複数の記憶領域を有し、情報を循環的に記憶するリングバッファとして動作する。パケットバッファ７４は、レジスタ６９に設定可能な最大の時間間隔ＴＰ内に受信するパケットＰＣＫＴを記憶可能な記憶容量を有する。このため、パケットバッファ７４をリングバッファとして動作させる場合にも、バーストエラーが検出された時間間隔ＴＰに受信したパケットＰＣＫＴを失うことなくパケットバッファ７４に保持させることができる。パケットバッファ７４には、パケットＰＣＫＴに含まれるデータだけではなく、ヘッダ部等を含むパケットＰＣＫＴの全体が記憶される。これにより、図１に示す受信部１と同様に、受信部６０は、他の情報処理装置２０２からパケットＰＣＫＴを再度送信させることなく、バーストエラーが発生したときのエラーを含むパケットＰＣＫＴを忠実に再現することができる。
【００４８】
書き込み制御部７０は、例えば、パケットＰＣＫＴをアドレスＡＤが小さい側から順にパケットバッファ７４の記憶領域に書き込む。書き込み制御部７０は、パケットＰＣＫＴを最初に書き込んだアドレスＡＤ（例えば、1番目のアドレスＡＤ）をポインタ値としてポインタレジスタ７２に書き込む。書き込み制御部７０は、パケットバッファ７４の全ての記憶領域にパケットＰＣＫＴを書き込んだ後、パケットＰＣＫＴを既に書き込んだ記憶領域に、アドレスＡＤが小さい側から順に新たに受信したパケットＰＣＫＴを上書きする。この場合、書き込み制御部７０は、上書きした記憶領域よりアドレスＡＤが大きい側の記憶領域であって、最古のパケットＰＣＫＴを記憶する記憶領域の先頭アドレスＡＤをポインタ値としてポインタレジスタ７２に書き込む。
【００４９】
これにより、ポインタレジスタ７２に保持されるポインタ値（アドレスＡＤ）は、パケットバッファ７４に記憶された最古のパケットＰＣＫＴの先頭を示す。すなわち、ポインタ値は、パケットバッファ７４に記憶されたパケットＰＣＫＴのうち、受信部６０が最も早く受信したパケットＰＣＫＴを示す。ポインタレジスタ７２は、位置情報保持部の一例であり、ポインタレジスタ７２に書き込まれるアドレスＡＤは、位置情報の一例である。
【００５０】
さらに、書き込み制御部７０は、再現コントローラ４０から解除指示を示す解除信号ＷＲを受信したことに基づいて、パケットバッファ７４へのパケットＰＣＫＴの書き込みの停止状態を解除する。書き込み制御部７０は、停止状態を解除した後、バーストエラー検出信号ＢＥＤＥＴを受信するまで、内部伝送路６３を介して受信したパケットＰＣＫＴをパケットバッファ７４に逐次書き込む。この際、書き込み制御部７０は、例えば、パケットバッファ７４の先頭アドレスＡＤから順に受信したパケットＰＣＫＴを書き込む。
【００５１】
ポインタレジスタ７２は、書き込み制御部７０によりアドレスＡＤが書き込まれ、読み出し制御部７６により、保持しているアドレスＡＤが読み出される。読み出し制御部７６は、再現コントローラ４０から読み出し指示を示す読み出し信号ＲＤを受信したことに基づいて、ポインタレジスタ７２に保持されたアドレスＡＤを読み出す。読み出し信号ＲＤは、第１の再現指示の一例である。
【００５２】
読み出し制御部７６は、ポインタレジスタ７２から読み出したアドレスＡＤを順に更新しながら、アドレスＡＤとリードイネーブル信号ＲＥとをパケットバッファ７４に出力する動作を繰り返す。そして、読み出し制御部７６は、パケットバッファ７４に記憶されたパケットＰＣＫＴを古い順に読み出し、読み出したパケットＰＣＫＴを、切り替え部６２を介して内部伝送路６３に出力する。
【００５３】
書き込み制御部７０によりポインタレジスタ７２に書き込まれたアドレスＡＤは、読み出し対象のパケットＰＣＫＴのうち最古のパケットＰＣＫＴの格納位置を示す。このため、読み出し制御部７６は、ポインタレジスタ７２から読み出したアドレスＡＤに基づいてパケットバッファ７４にアクセスすることで、他の情報処理装置２０２が送信したパケットＰＣＫＴと同じ順序でパケットＰＣＫＴを読み出して出力することができる。すなわち、他の情報処理装置２０２が送信したパケットＰＣＫＴを再現することができる。
【００５４】
例えば、読み出し制御部７６から切り替え部６２に出力されるパケットＰＣＫＴの伝送レートは、切り替え部６２で受信する他の情報処理装置２０２からのパケットＰＣＫＴの伝送レートに等しい。これにより、パケットバッファ７４に記憶されたパケットＰＣＫＴを、他の情報処理装置２０２から受信するパケットＰＣＫＴと同じタイミングでパケットチェック部６４に伝送することができる。すなわち、他の情報処理装置２０２からパケットＰＣＫＴを送信させることなく、バーストエラーが発生したときのエラーを含むパケットＰＣＫＴを再現することができる。
【００５５】
なお、パケットバッファ７４から読み出されるパケットＰＣＫＴの伝送速度が、他の情報処理装置２０２から受信するパケットＰＣＫＴの伝送速度と異なる場合がある。この場合、読み出し制御部７６内にパケットＰＣＫＴを一時的に保持するテンポラリバッファを設け、テンポラリバッファから読み出されるパケットＰＣＫＴの伝送速度を、他の情報処理装置２０２から受信するパケットＰＣＫＴの伝送速度に一致させてもよい。また、パケットバッファ７４は、ライトポインタとリードポインタとを使用して、パケットＰＣＫＴの書き込みと読み出しとが制御されてもよい。
【００５６】
図５は、図３に示す情報処理装置２０２の一例を示す。図３と同様の構成については、詳細な説明は省略する。図５では、情報処理装置２０２は、Ｘ軸（Ｘ＋、Ｘ−）とＹ軸（Ｙ＋、Ｙ−）とＺ軸（Ｚ＋、Ｚ−）とＡ軸とＢ軸（Ｂ＋、Ｂ−）とＣ軸とを有する６次元メッシュ／トーラス・ネットワークに接続するためのインタコネクト部８０を有する。このため、インタコネクト部８０は、１０個の接続ポートＰＴに対応する１０個のインタフェース部３０と１０個のフレーム転送部２０とを有する。また、インタコネクト部８０は、１０個の接続ポートＰＴを相互に接続するクロスバースイッチ８２と、クロスバースイッチ８２に接続される４つのパケット制御部８４とを有する。ＣＰＵコア１０は、キャッシュメモリ１２（例えば、二次キャッシュ）を介して、パケット制御部８４およびメモリアクセスコントローラ４２に接続される。情報処理装置２０２は、ノードとも称される。
【００５７】
各パケット制御部８４は、ＣＰＵコア１０から出力されるデータ等の情報を受け、受けた情報を含むパケットＰＣＫＴを生成する。そして、各パケット制御部８４は、生成したパケットＰＣＫＴをクロスバースイッチ８２、フレーム転送部２０およびインタフェース部３０を介して、他の情報処理装置２０２に送信する。また、各パケット制御部８４は、インタフェース部３０、フレーム転送部２０およびクロスバースイッチ８２を介して他の情報処理装置２０２から受信するパケットＰＣＫＴからデータ等の情報を取り出し、取り出した情報をＣＰＵコア１０に出力する。なお、情報処理装置２０２がパケットＰＣＫＴの中継ノードとして機能する場合、接続ポートＰＴで受信したパケットＰＣＫＴは、パケット制御部８４に入力されない、この場合、パケットＰＣＫＴは、クロスバースイッチ８２を経由して、パケットＰＣＫＴの送信先のノードに対応する接続ポートＰＴから送信される。
【００５８】
図６は、図４に示すバーストエラー検出部６８によりバーストエラーを検出する方法の一例を示す。バーストエラー検出部６８は、レジスタ６９に保持された時間間隔ＴＰでエラーカウンタ６６からカウンタ値ＣＯＵＮＴ（エラー数）を読み出す。図６に示す例では、時刻の経過とともにカウンタ値ＣＯＵＮＴは増加する傾向にある。時間間隔ＴＰは、第１の時間間隔の一例である。
【００５９】
カウンタ値ＣＯＵＮＴの時間間隔ＴＰ毎の増加率は、時刻ｔ１、ｔ２間でΔ１であり、時刻ｔ２、ｔ３間でΔ２であり、時刻ｔ３、ｔ４間でΔ３である。バーストエラー検出部６８は、カウンタ値ＣＯＵＮＴの変化量を時間で除することでエラー数の増加率を算出する。例えば、増加率Δ１は、”（Ｅ２−Ｅ１）／（ｔ２−ｔ１）”により求められる。実際には、時間間隔ＴＰは、バーストエラーの検出動作中に変更されないため、エラー数の増加率は、カウンタ値ＣＯＵＮＴの差分として算出される。このため、増加率を除算により算出する場合に比べて、バーストエラー検出部６８の回路規模を小さくすることができる。
【００６０】
バーストエラー検出部６８は、連続する３つの時間間隔ＴＰにおいて、中央の増加率（図６では、Δ２）のみが閾値ＶＴを超えた場合、バーストエラーを検出し、図４に示すバーストエラー検出信号ＢＥＤＥＴを出力する。閾値ＶＴは、第１の閾値の一例である。なお、バーストエラー検出部６８は、時間間隔ＴＰのいずれかにおいて、カウンタ値ＣＯＵＮＴの増加率が閾値ＶＴを超えた場合に、バーストエラーを検出してもよい。図６の下側のグラフでは、各増加率は、各時間間隔ＴＰの中央付近で算出されるように見えるが、カウンタ値ＣＯＵＮＴを読み出した直後に算出される。
【００６１】
図７は、ファームウェア等によりバーストエラーを検出する方法の一例を示す。すなわち、図７は、情報処理装置２０２が、図４に示すエラーカウンタ６６およびバーストエラー検出部６８を持たない場合のバーストエラーの検出方法の一例を示す。なお、ファームウェア等のソフトウェアは、ＣＰＵコア１０により実行される。図６と同じ要素については、詳細な説明は省略する。
【００６２】
ソフトウェアは、カウンタ値ＣＯＵＮＴに対応するエラーの発生数を記憶するレジスタを読み出すことでバーストエラーを検出する。ソフトウェアでレジスタを読み出す場合、レジスタに対するアクセス遅延によって、エラーの発生数は、正確な時間間隔ＴＰでは読み出されない。例えば、カウンタ値ＣＯＵＮＴを読み出す時刻ｔ２、ｔ３が、それぞれ時刻ｔ２’、ｔ３’にずれた場合、エラーの発生数の増加率Δ４は、図７の中央に示す時間間隔ＴＰの実際の増加率Δ２より低くなる。増加率Δ４が図６に示す閾値ＶＴより低い場合、バーストエラーが発生しているにも拘わらず、ソフトウェアは、バーストエラーの発生を見逃してしまう。
【００６３】
例えば、ソフトウェアが、正確な時刻ｔ１−ｔ４でエラーの発生数をレジスタから読み出すことができ、増加率Δ２に基づいてバーストエラーを検出したとする。しかしながら、この場合、バーストエラーの発生時刻ｔ２に合うように、他の情報処理装置２０２から対象のパケットＰＣＫＴを送信することは困難であり、パケットＰＣＫＴの再送信によりバーストエラーを再現することは困難である。これは、図５に示すように、複数の情報処理装置２０２が６次元メッシュ／トーラス・ネットワーク等に接続される場合、パケットＰＣＫＴが伝送される経路は、ネットワークの状態により変化するためである。
【００６４】
さらに、バーストエラーは、伝送路に発生するノイズ、伝送路に送信する信号を生成する回路の電圧変動または回路の周囲温度の変動等、制御が困難な外的要因により発生する。このため、リンクダウンの原因となったバーストエラーを、パケットＰＣＫＴの再送信により再現することは困難である。例えば、図３に示すＤＥＳに接続される図示しないＤＦＥ（Decision Feedback Equalizer）またはクロックデータ再生回路等の一時的な電圧変動等により、ＤＥＳが受信部に出力するパラレル信号に多数のビットエラーが含まれる場合がある。一時的な電圧変動または温度変動等によるビットエラーでバーストエラーが発生した場合、同じビットエラーを含むバーストエラーを再現することは困難である。
【００６５】
また、リンクダウンの原因となったバーストエラーの再現するためにパケットＰＣＫＴを繰り返し再送信し、バーストエラーが発生した場合にも、リンクダウンの原因となったバーストエラーのビットパターン（エラーパターン）と同じであるかは保証されない。このため、リンクダウンの原因を明らかにすることは困難である。
【００６６】
これに対して、図４に示す受信部６０を有する情報処理装置２０２および並列処理装置１０２では、バーストエラーが発生したときのエラーを含むパケットＰＣＫＴをパケットバッファ７４に保存することができる。このため、パケットＰＣＫＴを他の情報処理装置２０２から再送信させることなく、受信部６０でバーストエラーが発生したときのエラーを含むパケットＰＣＫＴを再現することができる。さらに、受信部６０は、並列処理装置１０２の各情報処理装置２０２に搭載されるため、情報処理装置２０２間で相互にパケットＰＣＫＴを送受信する場合に、情報処理装置２０２のいずれで発生したバーストエラーも再現することができる。
【００６７】
図８は、図３に示す再現コントローラ４０の動作の一例を示す。まず、ステップＳ３０において、再現コントローラ４０は、管理装置等からの指示に基づいて、バーストエラー検出部６８のレジスタ６９に時間間隔ＴＰと閾値ＶＴとを書き込む。時間間隔ＴＰと閾値ＶＴとがレジスタ６９に既に書き込まれている場合、ステップＳ３０は、省略される。
【００６８】
次に、ステップＳ３２において、再現コントローラ４０は、バーストエラーを再現させる指示を、管理装置等から受信するまで待ち、指示を受信した場合、処理をステップＳ３４に移行する。ステップＳ３４において、再現コントローラ４０は、再現指示の１つである切り替え信号ＳＷを切り替え部６２に出力し、読み出し制御部７６から出力されるパケットＰＣＫＴの伝送経路を内部伝送路６３に接続させる。
【００６９】
次に、ステップＳ３６において、再現コントローラ４０は、再現指示の別の１つである読み出し信号ＲＤを読み出し制御部７６に出力し、バーストエラーが発生したときのエラーを含むパケットＰＣＫＴを読み出し制御部７６に読み出させる。ステップＳ３６の後、図４に示すパケットバッファ７４から読み出されるパケットＰＣＫＴによりバーストエラーが再現され、リンクダウン等の不具合を発生させた原因が解析される。
【００７０】
次に、ステップＳ３８において、再現コントローラ４０は、バーストエラーの再現が完了したことを示す完了通知を、管理装置等から受信するまで待ち、完了通知を受信した場合、処理をステップＳ４０に移行する。ステップＳ４０において、再現コントローラ４０は、他の情報処理装置２０２からのパケットＰＣＫＴの内部伝送路６３への伝送を再開させる復帰信号ＳＷを切り替え部６２に出力する。また、再現コントローラ４０は、パケットＰＣＫＴの書き込みの停止状態を解除する解除信号ＷＲを書き込み制御部７０に出力し、書き込み制御部７０にパケットＰＣＫＴのパケットバッファ７４への書き込みを再開させ、処理を終了する。復帰信号ＳＷと解除信号ＷＲは、どちらが先に出力されてもよく、並列に出力されてもよい。この後、再現コントローラ４０は、管理装置等からの指示に基づいて、ステップＳ３０またはステップＳ３２から処理を開始する。
【００７１】
再現コントローラ４０が、復帰信号ＳＷを切り替え部６２に出力し、解除信号ＷＲを書き込み制御部７０に出力することで、他の情報処理装置２０２から受信するパケットＰＣＫＴのパケットバッファ７４への書き込みを再開することができる。これにより、受信部６０に新たなバーストエラーを検出させることができ、新たなバーストエラーが発生したパケットＰＣＫＴをパケットバッファ７４に保持させることができる。換言すれば、再現コントローラ４０が出力する切り替え信号ＳＷ、読み出し信号ＲＤ、復帰信号ＳＷおよび解除信号ＷＲにより、受信部６０にバーストエラーを繰り返し検出させることができる。
【００７２】
図９は、図４に示す受信部６０の動作の一例を示す。すなわち、図９は、バーストエラーを再現させるバーストエラー再現方法の一例を示す。図９に示すフローは、所定の周期で実行される。
【００７３】
まず、ステップＳ５０において、受信部６０は、他の情報処理装置２０２からパケットＰＣＫＴを受信した場合、処理をステップＳ５２に移行し、他の情報処理装置２０２からパケットＰＣＫＴを受信していない場合、処理をステップＳ５６に移行する。ステップＳ５２において、書き込み制御部７０は、切り替え部６２を介して他の情報処理装置２０２から受信したパケットＰＣＫＴをパケットバッファ７４に書き込む。
【００７４】
次に、ステップＳ５４において、パケットチェック部６４は、切り替え部６２を介して他の情報処理装置２０２から受信したパケットＰＣＫＴに含まれるエラーを検出し、エラーを検出する毎にエラー検出信号ＥＤＥＴを出力する。エラーカウンタ６６は、エラー検出信号ＥＤＥＴを受信する毎にカウンタ値ＣＯＵＮＴを更新する。
【００７５】
ステップＳ５６において、バーストエラー検出部６８は、時間間隔ＴＰが経過した場合、処理をステップＳ５８に移行し、時間間隔ＴＰが経過していない場合、処理を終了する。ステップＳ５８において、バーストエラー検出部６８は、エラーカウンタ６６から読み出した現在のカウンタ値ＣＯＵＮＴと前回読み出したカウンタ値ＣＯＵＮＴとに基づいて、エラー数（カウンタ値）の増加率を算出する。次に、ステップＳ６０において、バーストエラー検出部６８は、エラー数の増加率に基づいて、バーストエラーを検出した場合、バーストエラー検出信号ＢＥＤＥＴを出力する。バーストエラーが検出された場合、処理はステップＳ６２に移行され、バーストエラーが検出されない場合、処理は終了する。なお、ステップＳ５６、Ｓ５８、Ｓ６０の処理は、ステップＳ５２、Ｓ５４の処理と並列に実行されてもよい。
【００７６】
ステップＳ６２において、書き込み制御部７０は、バーストエラー検出信号ＢＥＤＥＴに基づいて、パケットバッファ７４へのパケットＰＣＫＴの書き込みを停止する。次に、ステップＳ６４において、切り替え部６２は、再現コントローラ４０からの再現指示（切り替え信号ＳＷおよび読み出し信号ＲＤ）の受信を待ち、再現指示を受信した場合、処理をステップＳ６６に移行する。ステップＳ６６において、切り替え部６２は、切り替え信号ＳＷに基づいて、他の情報処理装置２０２から受信するパケットＰＣＫＴを内部伝送路６３に出力する経路を遮断する。そして、切り替え部６２は、パケットバッファ７４から読み出されるパケットＰＣＫＴの経路を内部伝送路６３に接続する。次に、ステップＳ６８において、読み出し制御部７６は、再現コントローラ４０からの読み出し信号ＲＤに基づいて、パケットバッファ７４からパケットＰＣＫＴを読み出し、読み出したパケットＰＣＫＴを、切り替え部６２を介して内部伝送路６３に出力する。
【００７７】
次に、ステップＳ７０において、受信部６０は、パケットバッファ７４へのパケットＰＣＫＴの書き込みの停止を解除する解除指示（復帰信号ＳＷおよび書き込み信号ＷＲ）を待ち、再開指示に基づいて、処理をステップＳ７２に移行する。ステップＳ７２において、切り替え部６２は、復帰信号ＳＷに基づいて、パケットバッファ７４から読み出されるパケットＰＣＫＴの経路を内部伝送路６３に出力する経路を遮断する。そして、切り替え部６２は、他の情報処理装置２０２から受信するパケットＰＣＫＴの経路を内部伝送路６３に接続する。次に、ステップＳ７４において、書き込み制御部７０は、解除信号ＷＲに基づいて、パケットＰＣＫＴのパケットバッファ７４への書き込みを再開し、処理を終了する。なお、ステップＳ７２、Ｓ７４の処理は、逆順で実行されてもよく、並列に実行されてもよい。
【００７８】
復帰信号ＳＷおよび解除信号ＷＲにより、新たなバーストエラーを検出することができ、新たなバーストエラーが発生したパケットＰＣＫＴをパケットバッファ７４に記憶することができる。これにより、バーストエラーに起因してリンクダウン等の着目する不具合が発生しなかった場合にも、着目する不具合が発生するまでバーストエラーを繰り返し検出することができる。この結果、不具合を発生させたパケットＰＣＫＴをパケットバッファ７４に保持することができ、他の情報処理装置２０２からパケットＰＣＫＴを送信させることなく、不具合の原因であるバーストエラーが発生したパケットＰＣＫＴを再現することができる。
【００７９】
以上、図３から図９に示す実施形態においても、図１に示す実施形態と同様の効果を得ることができる。例えば、バーストエラーが発生したときのエラーを含むパケットＰＣＫＴを、他の情報処理装置２０２からパケットＰＣＫＴを再送信させることなく忠実に再現することができる。バーストエラーが発生したときのエラーを含むパケットＰＣＫＴがパケットバッファ７４に記憶されているため、エラーを含むパケットＰＣＫＴを何回でも再現することができる。
【００８０】
さらに、図３から図９に示す実施形態では、以下に示す効果を得ることができる。例えば、読み出し制御部７６は、パケットバッファ７４に記憶された読み出し対象のパケットＰＣＫＴのうち最古のパケットＰＣＫＴの格納位置を示すアドレスＡＤをポインタレジスタ７２に書き込む。読み出し制御部７６は、ポインタレジスタ７２に書き込まれたアドレスＡＤに基づいてパケットバッファ７４にアクセスする。これにより、読み出し制御部７６は、他の情報処理装置２０２が送信したパケットＰＣＫＴと同じ順序で、パケットバッファ７４からパケットＰＣＫＴを読み出すことができ、他の情報処理装置２０２が送信したパケットＰＣＫＴを再現することができる。
【００８１】
パケットバッファ７４から読み出したパケットＰＣＫＴを読み出し制御部７６から出力することで、読み出したパケットＰＣＫＴを、他の情報処理装置２０２から受信するパケットＰＣＫＴと同じタイミングでパケットチェック部６４に伝送することができる。復帰信号ＳＷおよび解除信号ＷＲにより、バーストエラーに起因してリンクダウン等の着目する不具合が発生しなかった場合にも、着目する不具合が発生するまでバーストエラーを繰り返し検出することができる。再現コントローラ４０が出力する切り替え信号ＳＷ、読み出し信号ＲＤ、復帰信号ＳＷおよび解除信号ＷＲにより、受信部６０にバーストエラーを繰り返し検出させることができる。
【００８２】
エラー数の増加率をカウンタ値ＣＯＵＮＴの差分として算出することで、増加率を除算により算出する場合に比べて、バーストエラー検出部６８の回路規模を小さくすることができる。また、バーストエラーの検出後のパケットバッファ７４への書き込みを停止することで、バーストエラーの検出の前後に受信したパケットＰＣＫＴを書き込む場合に比べて、パケットバッファ７４の回路規模を小さくすることができる。バーストエラー検出部６８とパケットバッファ７４との回路規模を小さくすることで、受信部６０の回路規模を削減することができる。
【００８３】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【００８４】
１…受信部；２…情報処理部；３…送信部；４…バーストエラー検出部；５…書き込み制御部；６…記憶部；７…伝送制御部；８…受信制御部；９…内部伝送路；１０…ＣＰＵコア；１２…キャッシュメモリ；２０…フレーム転送部；３０…インタフェース部；４０…再現コントローラ；４２…メモリアクセスコントローラ；４４…メインメモリ；５０…送信部；６０…受信部；６２…切り替え部；６３…内部伝送路；６４…パケットチェック部；６６…エラーカウンタ；６８…バーストエラー検出部；６９…レジスタ；７０…書き込み制御部；７２…ポインタレジスタ；７４…パケットバッファ；７６…読み出し制御部；８０…インタコネクト部；８２…クロスバースイッチ；８４…パケット制御部；１００、１０２…並列処理装置；１１０、１１２…伝送路；２００、２０２…情報処理装置；ＡＤ…アドレス信号；ＢＥＤＥＴ…バーストエラー検出信号；ＢＥＲＲ…バーストエラー信号；ＣＯＵＮＴ…カウンタ値；ＣＨＩＰ…ＣＰＵチップ；ＥＤＥＴ…エラー検出信号；ＰＣＫＴ…パケット；ＲＤ…読み出し信号；ＲＥ…リードイネーブル信号；ＳＷ…切り替え信号、復帰信号；ＴＰ…時間間隔；ＶＴ…閾値；ＷＥ…ライトイネーブル信号；ＷＲ…解除信号
【図１】
0006988092.tif 000002
【図２】
0006988092.tif 000003
【図３】
0006988092.tif 000004
【図４】
0006988092.tif 000005
【図５】
0006988092.tif 000006
【図６】
0006988092.tif 000007
【図７】
0006988092.tif 000008
【図８】
0006988092.tif 000009
【図９】
0006988092.tif 000010