(57)【要約】【課題】共有アクセス対象と複数の処理手段を効率よく接続すると共に、内部の通信障害に柔軟に対応可能な情報処理装置を提供すること。【解決手段】複数の処理手段と、該複数の処理手段がアクセス可能な共有アクセス対象と、を備える情報処理装置であって、前記複数の処理手段は、前記共有アクセス対象を起点としてツリー状に前記複数の処理手段を接続する第１の通信経路と、前記共有アクセス対象からの通信ステップ数に応じた論理的階層構造における同一階層に属する処理手段を接続する第２の通信経路と、により接続されていることを特徴とする、情報処理装置。【選択図】図１
2012094072.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理手段と、該複数の処理手段がアクセス可能な共有アクセス対象と、を備える情報処理装置であって、
前記複数の処理手段は、前記共有アクセス対象を起点としてツリー状に前記複数の処理手段を接続する第１の通信経路と、前記共有アクセス対象からの通信ステップ数に応じた論理的階層構造における同一階層に属する処理手段を接続する第２の通信経路と、により接続されていることを特徴とする、
情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記第２の通信経路は、前記論理的階層構造における同一階層の処理手段をリング状に接続する通信経路である、
情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置であって、
前記複数の処理手段は、前記第１の通信経路における情報送信の障害に関する情報を把握し、
前記第２の通信経路は、少なくとも前記障害の発生箇所を迂回して情報送信を行うのに用いられる、
情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記第１の通信経路を介した前記アクセス対象に近い側の処理手段である送信元処理手段から前記アクセス対象に遠い側の処理手段である送信先処理手段への情報送信に障害が発生している場合には、前記送信元処理手段は、前記送信先処理手段が属する論理的階層と同一階層に属する、前記送信先処理手段とは異なる処理手段に情報送信を行うことを特徴とする、
情報処理装置。
【請求項５】
請求項４に記載の情報処理装置であって、
前記送信元処理手段は、前記第１の通信経路を介した前記送信先処理手段への情報送信に障害が発生している場合には、前記送信先処理手段が属する論理的階層と同一階層に属する処理手段に加えて、自己が属する論理的階層に属する処理手段にも情報送信することを特徴とする、
情報処理装置。
【請求項６】
請求項３に記載の情報処理装置であって、
前記第１の通信経路を介した前記アクセス対象に遠い側の処理手段である送信元処理手段から前記アクセス対象に近い側の処理手段である送信先処理手段への情報送信に障害が発生している場合には、前記送信元処理手段は、自己が属する論理的階層に属する処理手段に情報送信することを特徴とする、
情報処理装置。
【請求項７】
請求項３に記載の情報処理装置であって、
前記複数の処理手段のうち前記障害の発生箇所を迂回して情報送信を行う処理手段は、通信状態に応じた最適な迂回ルートを計算して情報送信を行うことを特徴とする、
情報処理装置。
【請求項８】
請求項７に記載の情報処理装置であって、
前記複数の処理手段のうち前記障害の発生箇所を迂回して情報送信を行う処理手段は、通信負荷を示す指標値と、通信エラー率と、をパラメータとして算出される値に基づいて、最適な迂回ルートを計算することを特徴とする、
情報処理装置。
【請求項９】
請求項３ないし８のいずれか１項に記載の情報処理装置であって、
前記第１の通信経路における情報送信の障害に関する情報は、該障害を検知した処理手段と同一階層に属する処理手段の間で共有される、
情報処理装置。
【請求項１０】
前記複数の処理手段はＣＰＵコアを含み、
マルチコア・プロセッサとして構成される請求項１ないし９のいずれか１項に記載の情報処理装置。
【請求項１１】
請求項１０に記載の情報処理装置であって、
前記複数の処理手段の間の情報通信は、前記ＣＰＵコアから独立して動作可能であり、情報転送の有無を前記ＣＰＵコアの判定に依らずに決定可能なネットワークコネクタによって制御される、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理手段を複数備える情報処理装置に関する。
【背景技術】
【０００２】
従来、マルチコア・プロセッサやマルチプロセッサ装置等、処理手段を複数備える情報処理装置が知られている。これらの情報処理装置は、複数の処理手段が並行・独立して演算処理等を実行可能となっている。この種の情報処理装置は、例えば車両に搭載される車載制御装置の分野等で好適に用いられる。車載制御装置の分野では、複数の制御機能を一の制御装置に統合して軽量化等を図ろうとする動きが見られるからである。
【０００３】
ところで、この種の情報処理装置における課題の一つに、共有メモリ等の共有アクセス対象と、処理手段の通信態様をどのように設計するか、という課題が存在する。
【０００４】
例えば、共有メモリ等の共有アクセス対象にアクセスするためのＩ／Ｏ手段（Ｉ／Ｏポートや、その制御装置をいう）をＣＰＵコア或いはプロセッサ毎に備えるものとすると、接続端子数が増加したり、装置のチップ面積が増加して高価になるといった不都合が生じる。もとより、ＲＡＭ等のメモリを処理手段毎に設けると、装置のコストが増大することになる。
【０００５】
このため、Ｉ／Ｏ手段は、複数の処理装置で共有されることが望ましい。特許文献１には、外部バスに接続するためのポートが内部バスに接続され、内部バスは分岐して複数のポートに接続される構成が記載されている。このような構成を情報処理装置に適用すれば、Ｉ／Ｏ手段が複数の処理装置で共有される構成となりうる。
【０００６】
また、特許文献２には、通信ノードをリング状に接続したネットワークについて記載されている。このネットワークでは、ネットワークの交差箇所にスイッチを設け、ネットワークに障害が発生すると、通常時とは逆向きに通信を行い、障害発生箇所を迂回するように制御している。
【０００７】
また、特許文献３には、Ｎ個の入力ポートと出力ポートを有し、それぞれの入力ポートに入力された信号光の波長に基づいて所定の出力ポートに出力するルーティング機能を有するアレイ導波路回折格子（ＡＷＧ）を中心に、幾何学的にスター型となる物理的スタートポロジとなるように入力ポートと出力ポートを一つずつ備えたＭ個の通信ノード装置を、ＡＷＧの出力ポートと各通信ノード装置の入力ポート、ＡＷＧの入力ポートと各通信ノード装置の出力ポートを光伝送路によってそれぞれ接続して構成された光通信ネットワークシステムについて記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５−００４７４５号公報
【特許文献２】特開２００６−１９１２１２号公報
【特許文献３】国際公開第２００４−０７３２２５号
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記特許文献１に記載の通信態様は、多くの処理手段を備える情報処理装置に適したものではない。仮に共有アクセス対象に対して全ての処理手段を並列に接続するものとすると、共有アクセス対象（Ｉ／Ｏ手段等）の接続端子数が増加し、サイズやコストが過大となったり、設計自由度が低下するという不都合が生じ得る。
【００１０】
また、上記特許文献２、３に記載の通信態様は、複数の処理手段と、これらによりアクセスされる共有アクセス対象とを備える情報処理装置に適用することを念頭においたものではなく、これらを適用することにより、共有アクセス対象と複数の処理手段の接続関係を好適に設計することができるものではない。
【００１１】
本発明はこのような課題を解決するためのものであり、共有アクセス対象と複数の処理手段を効率よく接続すると共に、内部の通信障害に柔軟に対応可能な情報処理装置を提供することを、主たる目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するための本発明の一態様は、
複数の処理手段と、該複数の処理手段がアクセス可能な共有アクセス対象と、を備える情報処理装置であって、
前記複数の処理手段は、前記共有アクセス対象を起点としてツリー状に前記複数の処理手段を接続する第１の通信経路と、前記共有アクセス対象からの通信ステップ数に応じた論理的階層構造における同一階層に属する処理手段を接続する第２の通信経路と、により接続されていることを特徴とする、
情報処理装置である。
【００１３】
この本発明の一態様によれば、複数の処理手段が、共有アクセス対象を起点としてツリー状に複数の処理手段を接続する第１の通信経路と、共有アクセス対象からの通信ステップ数に応じた論理的階層構造における同一階層に属する処理手段を接続する第２の通信経路と、により接続されているため、共有アクセス対象と複数の処理手段を効率よく接続すると共に、内部の通信障害に柔軟に対応することができる。
【００１４】
本発明の一態様において、
前記第２の通信経路は、例えば、前記論理的階層構造における同一階層の処理手段をリング状に接続する通信経路である。
【００１５】
また、本発明の一態様において、
前記複数の処理手段は、前記第１の通信経路における情報送信の障害に関する情報を把握し、
前記第２の通信経路は、少なくとも前記障害の発生箇所を迂回して情報送信を行うのに用いられるものとすると、好適である。
【００１６】
また、本発明の一態様において、
前記第１の通信経路を介した前記アクセス対象に近い側の処理手段である送信元処理手段から前記アクセス対象に遠い側の処理手段である送信先処理手段への情報送信に障害が発生している場合には、前記送信元処理手段は、前記送信先処理手段が属する論理的階層と同一階層に属する、前記送信先処理手段とは異なる処理手段に情報送信を行うことを特徴とするものとしてもよい。
【００１７】
この場合、
前記送信元処理手段は、前記第１の通信経路を介した前記送信先処理手段への情報送信に障害が発生している場合には、前記送信先処理手段が属する論理的階層と同一階層に属する処理手段に加えて、自己が属する論理的階層に属する処理手段にも情報送信することを特徴とするものとしてもよい。
【００１８】
また、本発明の一態様において、
前記第１の通信経路を介した前記アクセス対象に遠い側の処理手段である送信元処理手段から前記アクセス対象に近い側の処理手段である送信先処理手段への情報送信に障害が発生している場合には、前記送信元処理手段は、自己が属する論理的階層に属する処理手段に情報送信することを特徴とするものとしてもよい。
【００１９】
また、本発明の一態様において、
前記複数の処理手段のうち前記障害の発生箇所を迂回して情報送信を行う処理手段は、通信状態に応じた最適な迂回ルートを計算して情報送信を行うことを特徴とするものとしてもよい。
【００２０】
この場合、
前記複数の処理手段のうち前記障害の発生箇所を迂回して情報送信を行う処理手段は、通信負荷を示す指標値と、通信エラー率と、をパラメータとして算出される値に基づいて、最適な迂回ルートを計算することを特徴とするものとすると、好適である。
【００２１】
また、本発明の一態様において、
前記第１の通信経路における情報送信の障害に関する情報は、該障害を検知した処理手段と同一階層に属する処理手段の間で共有されるものとしてもよい。
【００２２】
こうすれば、第１の通信経路を用いて行われる情報送受信を妨げないようにすることができ、通信負荷の増大を防止することができる。
【００２３】
また、本発明の一態様において、
前記複数の処理手段はＣＰＵコアを含み、
マルチコア・プロセッサとして構成されるものとしてもよい。
【００２４】
この場合、
前記複数の処理手段の間の情報通信は、前記ＣＰＵコアから独立して動作可能であり、情報転送の有無を前記ＣＰＵコアの判定に依らずに決定可能なネットワークコネクタによって制御されるものとすると、好適である。
【発明の効果】
【００２５】
本発明によれば、共有アクセス対象と複数の処理手段を効率よく接続すると共に、内部の通信障害に柔軟に対応可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施例に係る情報処理装置１の論理的構成図である。
【図２】本発明の一実施例に係る情報処理装置１の論理的構成図の他の例である。
【図３】本発明の一実施例に係る情報処理装置１の物理的構成図である。
【図４】ＮＷコネクタ２５間で双方向通信が行われる様子を示す図である。
【図５】ＮＷコネクタ２５が受信したパケットに基づいて情報をＣＰＵコア２０に格納する様子を示す図である。
【図６】ＮＷコネクタ２５がＣＰＵコア２０に格納された情報をＩ／Ｏ手段１０に向けて送信する様子を示す図である。
【図７】ＮＷコネクタ２５によって送受信されるパケットの内容を例示した図である。
【図８】Ｉ／Ｏ手段１０及びＣＰＵコア２０（及びＮＷコネクタ２５）のアドレス表現を例示した図である。
【図９】ＣＰＵコア２０（及びＮＷコネクタ２５）に割り当てられる論理的階層（レベル）を表現した図である。
【図１０】ＮＷコネクタ２５の障害に関する情報のデータ形式例と、障害情報パケットが生成される過程を示す図である。
【図１１】ＮＷコネクタ２５の状態遷移を表す図である。
【図１２】ＮＷコネクタ２５が各状態において、イベントに応じて行う処理の内容を示す図である。
【図１３】Ｉ／Ｏ手段１０からＣＰＵコア２０にデータ送信が行われる場面において、障害の発生した箇所を迂回してデータ送信が行われる様子を示す説明図である。
【図１４】ＣＰＵコア２０からＩ／Ｏ手段１０にデータ送信が行われる場面において、障害の発生した箇所を迂回してデータ送信が行われる様子を示す説明図である。
【図１５】Ｉ／Ｏ手段１０からＣＰＵコア２０にデータ送信が行われる場面において、障害の発生した箇所を図１３とは異なるアルゴリズムにより迂回してデータ送信が行われる様子を示す説明図である。
【図１６】最適な迂回ルートを計算によって算出し、算出した迂回ルートを採用するという手法における処理フローである。
【発明を実施するための形態】
【００２７】
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
【実施例】
【００２８】
［概略］
以下、図面を参照し、本発明の一実施例に係る情報処理装置１について説明する。情報処理装置１は、例えば複数のＣＰＵコアを備えるマルチコア・プロセッサであり、複数の命令を平行・独立して実行することができる。
【００２９】
各ＣＰＵコアは、例えば、プログラムメモリ、命令デコーダ、専用レジスタ、演算回路、キャッシュメモリ、プログラムカウンタ等を有し、プログラムメモリに格納されたプログラム（命令）をデコードして実行することにより、演算処理やロード、ストア処理等の種々の処理を行なう。
【００３０】
図１は、本発明の一実施例に係る情報処理装置１の論理的構成図である。情報処理装置１は、主要な構成として、Ｉ／Ｏ手段１０と、ＣＰＵコア２０1,1〜ＣＰＵコア２０1,3と、ＣＰＵコア２０2,1〜ＣＰＵコア２０2,9と、を備える。以下、ＣＰＵを総称する際にはＣＰＵコア２０と表記する。
【００３１】
Ｉ／Ｏ手段１０は、例えば共有メモリ等の共有資源へのアクセスを行うためのＩ／Ｏポートや、その制御装置等を含む。Ｉ／Ｏ手段１０は、情報処理装置１のチップ内ネットワークを流れる制御信号によって制御される。
【００３２】
ＣＰＵコア２０には、それぞれＮＷコネクタ（ネットワークコネクタ）２５1,1〜２５2,9が接続されている。また、Ｉ／Ｏ手段１０にも、ＮＷコネクタ２５0,1が接続されている。以下、ＮＷコネクタを総称する際にはＮＷコネクタ２５と表記する。
【００３３】
ＮＷコネクタ２５は、ＣＰＵコア２０から独立して動作可能なハードウエア手段である。係る構成とすることによって、通信処理の負荷とは無関係にＣＰＵコア２０が動作することができ、装置全体の処理能力を高く維持することができる。
【００３４】
ＮＷコネクタ２５は、例えば有線の通信回線で接続されており、Ｉ／Ｏ手段１０とＣＰＵコア２０の間、或いはＣＰＵコア２０間のデータ通信を制御する。ＮＷコネクタ２５による通信は、例えば通信方向性を有する（送信先が特定された）パケット形式で行われ、データや割り込み信号等が伝達される。パケットには、送信先や、転送を行ったＮＷコネクタ２５が登録され、各ＮＷコネクタ２５において既に自ら転送を行ったと判断されたパケットは削除される。また、ＮＷコネクタ２５は、送信時刻から一定時間経過したパケットを削除する処理を行う。これらによって、無駄な通信を省略することができるため、通信量を低減することができる。
【００３５】
更に、ＮＷコネクタ２５は、互いに通信接続状態を監視し合っており、発生した障害等を検知可能となっている。
【００３６】
ＮＷコネクタ２５間で送受信されるデータには、Ｉ／Ｏ割り込み、Ｉ／Ｏデータ、監視データ等が存在する。Ｉ／Ｏ割り込みとは、チップ間通信により割り込みを表現したものである。Ｉ／Ｏデータとは、チップ間通信により授受されるデータである。監視データとは、ＮＷコネクタ２５が相互に監視することによりＮＷコネクタ２５が内蔵するレジスタ等の記憶装置に保持される、ＮＷコネクタ２５を介した情報送信の障害に関する情報である。ＣＰＵコア２０は、入出力を通信に重畳させるため、システムを簡易化することができる。また、入出力されるデータは通信を用いることで実際のＩ／Ｏとは隠蔽されるため、ドライバとして必要なソフトウエアを少なくすることができる。
【００３７】
本実施例の情報処理装置１では、図１に示すように、ＣＰＵコア２０は、Ｉ／Ｏ手段１０を起点としてツリー状にＣＰＵコア２０を接続する第１の通信経路によって、直接的に又は間接的にＩ／Ｏ手段１０に接続されている。Ｉ／Ｏ手段１０からＣＰＵコア２０へ、或いは任意のＣＰＵコア２０からＩ／Ｏ手段１０への情報送信は、原則としてこの第１の通信経路を介して行われる。これによって、Ｉ／Ｏ手段１０の接続端子数を過大なものとせずに、Ｉ／Ｏ手段１０と複数のＣＰＵコア２０が効率よく接続されることになる。また、Ｉ／Ｏ手段１０の接続端子数を制限することにより、装置全体の面積を小さくすることができ、コストの抑制が期待できる。
【００３８】
また、ＣＰＵコア２０は、Ｉ／Ｏ手段１０からの通信ステップ数に応じた論理的階層構造における同一階層（レベル）に属するＣＰＵコア２０をリング状に接続する第２の通信経路により互いに接続されている。ＣＰＵコア２０及びＮＷコネクタ２５の下付符号の左側符号は、論理的階層構造においていずれの論理的階層に属するかを示している。図１では、Ｉ／Ｏ手段１０をレベル０とし、ＣＰＵコア２０については、Ｉ／Ｏ手段１０に近い程、低レベルの論理的階層に属するものとして表現している。
【００３９】
第２の通信経路は、ＮＷコネクタ２５を介した情報送信の障害に関する情報を伝達したり、障害が発生した箇所を回避してデータを送信するのに用いられる。ＮＷコネクタ２５は、他のＮＷコネクタ２５、及びＮＷコネクタ２５同士を接続する通信回線の障害を監視しており、少なくとも１階層分上位及び下位の階層に属するＮＷコネクタ２５の障害に関する情報を記憶装置に保持している。この障害に関する情報は、例えばＮＷコネクタ２５自体の故障や、その周辺の通信回線の断線を含み得る。また、第２の通信経路は、第１の通信経路を介して行われるべき情報送信を、障害箇所を迂回して行うのにも用いられる。
【００４０】
そして、あるＣＰＵコア２０に接続されたＮＷコネクタ２５がＩ／Ｏ手段１０から第１の通信経路を介して情報を取得する途中に障害が発生している場合、及び、その逆に、あるＣＰＵコア２０に接続されたＮＷコネクタ２５が第１の通信経路を介してＩ／Ｏ手段１０に情報を送信する途中に障害が発生している場合には、本来使用される第１の通信経路を部分的に迂回し、第２の通信経路の一部を介して情報が伝達される。
【００４１】
これによって、Ｉ／Ｏ手段１０とＣＰＵコア２０の間の情報送信に障害が発生した場合に、障害箇所を迂回して情報送信が行われるため、情報送信の確実性を高めることができる。
【００４２】
なお、ＣＰＵコア２０の論理的階層構造は、Ｉ／Ｏ手段１０からの通信ステップ数に完全に対応する必要はなく、例えば図２に示すように、いずれかの論理的階層をスキップして第１の通信経路の通信が行われる部分があってもよい。図２は、本発明の一実施例に係る情報処理装置１の論理的構成図の他の例である。
【００４３】
図３は、本発明の一実施例に係る情報処理装置１の物理的構成図である。図示するように、Ｉ／Ｏ手段１０及びＣＰＵコア２０は、各自がＮＷコネクタ２５の他、タイマ３０を内蔵しており、前述した、送信時刻から一定時間経過したパケットを削除する処理等に用いている。
【００４４】
以下、本実施例の情報処理装置１の各構成要素による動作、及び処理について説明する。
【００４５】
［ＮＷコネクタの動作、処理］
図４は、ＮＷコネクタ２５間で双方向通信が行われる様子を示す図である。ＮＷコネクタ２５は、以下のようなアルゴリズムで通信を行う。
【００４６】
（１）ＮＷコネクタ２５は、自己（当該ＮＷコネクタ２５に接続されたＣＰＵ２０をいう；以下同じ）が送信先でないパケットを受信した際には、原則として第１の通信経路に従って、上位階層又は下位階層のＮＷコネクタ２５にパケットを転送する。ＮＷコネクタ２５は、自己が属する論理的階層、第１の通信経路において接続された上位階層及び下位階層のＮＷコネクタ２５を特定する情報（例えばアドレス等）、更には第２の通信経路において接続された同一階層のＮＷコネクタ２５のうち少なくとも隣接したＮＷコネクタ２５を特定する情報を、記憶装置に保持している。
【００４７】
（２）ＮＷコネクタ２５は、受信したパケットが、既に自己が一度転送したものである場合は、受信したパケットを破棄する。（３）ＮＷコネクタ２５は、送信時刻から一定時間経過したパケットを削除する。
【００４８】
また、ＮＷコネクタ２５は、接続されているＣＰＵコア２０のリソースを使用せず、自己で把握している情報、及びパケットに含まれている送信先等の情報に基づいて、上記のようなアルゴリズムに従った通信を行う。従って、ＮＷコネクタ２５に接続されているＣＰＵコア２０は、ＮＷコネクタ２５間の通信には関与しない。これによって、前述のように、通信処理の負荷とは無関係にＣＰＵコア２０が動作することができ、装置全体の処理能力を高く維持することができる。
【００４９】
（受信処理）
図５は、ＮＷコネクタ２５が受信したパケットに基づいて情報をＣＰＵコア２０に格納する様子を示す図である。
【００５０】
ＮＷコネクタ２５は、自己が送信先になっているパケットについては、他のＮＷコネクタ２５への転送を行わずに、パケットに含まれる情報をＣＰＵコア２０の内部メモリ２２における所定領域に書き込む。
【００５１】
ＮＷコネクタ２５は、ＣＲＣ（Cyclic  Redundancy  Check）等のエラーチェックを行って異常と判定された情報は破棄し、正常な情報のみが書き込まれるように処理を行う。また、ＮＷコネクタ２５は、送信時刻が以前に受信したパケットと同一である場合には、書き込みを行わないように制御する。更に、ＮＷコネクタ２５は、ＣＰＵコア２０の内部メモリ２２に書き込みを行った後、ＣＰＵコア２０に割り込みを通知することによって、データの受信をＣＰＵコア２０に通知する。
【００５２】
一方、ＮＷコネクタ２５は、自己が送信先になっていないパケットについては、他のＮＷコネクタ２５に転送する。この場合、原則として、転送元が上位階層のＮＷコネクタ２５である場合には第１の通信経路で接続された下位階層のＮＷコネクタ２５にパケットを転送し、転送元が下位階層のＮＷコネクタ２５である場合には第１の通信経路で接続された上位階層のＮＷコネクタ２５にパケットを転送する。
【００５３】
（送信処理）
図６は、ＮＷコネクタ２５がＣＰＵコア２０に格納された情報をＩ／Ｏ手段１０に向けて送信する様子を示す図である。
【００５４】
ＮＷコネクタ２５は、内部メモリ２２の送信バッファ領域に格納された情報を読み出して、Ｉ／Ｏ手段１０に向けて送信する。
【００５５】
この際に、ＣＰＵコア２０は、送信情報と送信先アドレスを含む情報をＮＷコネクタ２５に通知する。ＮＷコネクタ２５は、ＣＰＵコア２０から通知された情報に基づいてパケットを作成し、他のＮＷコネクタ２５に送信する。また、ＮＷコネクタ２５は、パケットの送信を行った後、ＣＰＵコア２０に割り込みを通知することによって、データの送信をＣＰＵコア２０に通知する。
【００５６】
（パケットの内容）
図７は、ＮＷコネクタ２５によって送受信されるパケットの内容を例示した図である。図示するように、ＮＷコネクタ２５によって送受信されるパケットは、転送先アドレス、転送元アドレス（転送履歴）、コマンド、ステータス、レベル、送信時刻、データ、ＣＲＣ用データ等を含む。
【００５７】
転送先アドレスは、情報を送信する先のアドレスである。ＮＷコネクタ２５は、転送先アドレスが自己でなければパケットを転送する。また、転送先アドレスが値ゼロであれば、ブロードキャストとみなして、ＣＰＵ２０にパケットを格納しつつ他のＮＷコネクタ２５に転送する。
【００５８】
転送元アドレスは、転送を行ったＮＷコネクタ２５のアドレスである。ＮＷコネクタ２５は、転送を行う際に転送元アドレスに自己のアドレスを追加する。また、ＮＷコネクタ２５は、転送元アドレスに自己のアドレスが含まれるパケットを受信した際には、当該パケットを転送せずに破棄する。
【００５９】
コマンドは、割り込み要求、データ転送要求等を示す。ステータスは、転送元のＮＷコネクタ２５やＣＰＵコア２０の状態を示す。レベルは、パケットを転送又は最初に送信したＮＷコネクタ２５のレベル（論理的階層）である。これによって、直前に転送を行ったＮＷコネクタ２５がどの論理的階層に属するのか、或いは最初にデータ送信を行ったＮＷコネクタ２５がどの論理的階層に属するのか等を把握することができる。送信時刻は、パケットが転送された時刻である。ＮＷコネクタ２５は、受信されたパケットの送信時刻から一定時間が経過している場合、パケットを破棄する。
データは、メモリデータ、割り込みデータ、タイマ値等である。当該データは暗号化され、外部から把握できないようにする。ＣＲＣ用データは、ステータス、コマンド、データの正確性をチェックするためのデータである。
【００６０】
（アドレス認識）
図８は、Ｉ／Ｏ手段１０及びＣＰＵコア２０（及びＮＷコネクタ２５）のアドレス表現を例示した図である。アドレスは、例えばビット０に全ての通信ノードが割り当てられ（ブロードキャスト）、ビット１にＩ／Ｏ手段１０が割り当てられ、ビット２〜ｎに複数のＣＰＵコア２０が割り当てられる。上記パケットに含まれる転送先アドレスや転送元アドレスに関しては、このようなアドレス表現が用いられると好適である。
【００６１】
図９は、ＣＰＵコア２０（及びＮＷコネクタ２５）に割り当てられる論理的階層（レベル）を表現した図である。上記パケットのレベルには、図９で示すような表現で論理的階層（レベル）を示す情報が付加される。上記パケットに含まれるレベルに関しては、このような表現が用いられると好適である。
【００６２】
（障害に関する情報の共有）
図１０は、ＮＷコネクタ２５の障害に関する情報（ここでは、障害情報パケットと称する）のデータ形式例と、障害情報パケットが生成される過程を示す図である。障害情報パケットは、例えば各論理的階層に属するＮＷコネクタ２５についてそれぞれ生成される。また、障害情報パケットは、例えば、正常状態を示す値１と、障害発生状態を示す値０の二値をとり得る１ビットの情報が連続した情報である。なお、係る形式は、「障害に関する情報」として「ＮＷコネクタ２５自体の障害（故障等）」のみを把握するという簡易な例であり、本発明の実際の運用としては、「障害に関する情報」として「あるＮＷコネクタ２５から他のＮＷコネクタ２５へのデータ送信が断線等により不能である」というような、より詳細な情報が把握されてよいのは勿論である。
【００６３】
障害情報パケットを生成するのは、例えば、障害が発生したＮＷコネクタ２５にデータ送信した下位階層（又は上位階層）のＮＷコネクタ２５である。ＮＷコネクタ２５は、例えば後述するように、第１の通信経路に即してデータ送信した際に、受信確認情報が一定時間内に返信されなかったことをもって、データ送信を行った相手先のＮＷコネクタ２５が障害状態であると判断する。そして、障害状態となったＮＷコネクタ２５を特定する障害情報パケットを、自己と同一階層に属するＮＷコネクタ２５に第２の通信経路を介して発信する。障害情報パケットを受信したＮＷコネクタ２５では、自己と同一階層に属するＮＷコネクタ２５の全てが障害情報パケットを受信できるように、リング状の第２の通信経路を介して障害情報パケットを順次転送する（以下、同一階層のＮＷコネクタ２５が順次転送を行うことを、リレー転送と称する）。こうして、障害が発生したＮＷコネクタ２５の下位階層（又は上位階層）に属する全てのＮＷコネクタ２５によって障害情報パケットが共有される。係る障害に関する情報の共有は、第２の通信経路を介して行うことにより、第１の通信経路を用いて行われる通常の情報送受信を妨げないようにすることができ、通信負荷の増大を防止することができる。なお、より広範囲に情報共有を行うため、更に第１の通信経路を介して、他の階層に属するＮＷコネクタ２５に対しても障害に関する情報が伝達されてもよい。
【００６４】
障害情報パケットは、例えば一定間隔で送信される。障害情報パケットを受信したＮＷコネクタ２５は、障害情報パケットを参照して、自己に接続されている上位階層（又は下位階層）のＮＷコネクタ２５に関する障害状況を更新する。
【００６５】
（障害に応じた状態遷移）
ＮＷコネクタ２５は、第１又は第２の通信経路において隣接するＮＷコネクタ２５の状態等に応じて、「開始」、「通常」、「監視」、「終了」の状態となる。図１１は、ＮＷコネクタ２５の状態遷移を表す図である。また、図１２は、ＮＷコネクタ２５が各状態において、イベントに応じて行う処理の内容を示す図である。
【００６６】
開始状態において、初期化イベントが発生すると、内部パラメータを初期化し、内部ステータスを通常状態として通常状態に遷移する。なお、初期化処理は、図示しないＯＳ等により自動的に行われる。
【００６７】
通常状態において、Ｉ／Ｏアクセスイベントが発生すると（当該処理は、自己がレベル０の階層に属するＩ／Ｏ手段１０に取り付けられている場合にのみ行われる）、Ｉ／ＯデータがWriteの場合は、Ｉ／Ｏ領域（共有メモリ等）にデータを書き込む処理を行う。また、Ｉ／ＯデータがReadの場合は、Ｉ／Ｏ領域からデータを読み出し、Read要求を発行したＮＷコネクタ２５に対してデータを送信する。
【００６８】
通常状態において、データ受信イベント（自己が送信先）が発生すると、受信したパケットに含まれるデータをＣＰＵコア２０の内部メモリ２２等に格納する。また、データ受信イベント（他のＮＷコネクタ２５が送信先）が発生すると、受信したパケットを転送する。
【００６９】
通常状態において、監視データ送信イベントが発生すると、他のＮＷコネクタ２５にパケットを転送する際に、パケット内に監視データを埋め込む処理を行う。このタイミングで、自己が内蔵するタイマを起動する。なお、監視データの送信は、パケットの送受信とは独立して行ってもよい。
【００７０】
ここで、監視データとは、データが正常に送受信できたかどうかを判断するために用意されるデータであり、例えば、送受信データのチェックサム結果やパリティチェック結果等である。監視データに異常が発生した場合、通信回線上で何らかの不具合が発生したものと推定される。
【００７１】
通常状態において、他のＮＷコネクタ２５から受信したパケットに監視データが含まれていると、監視データ受信イベントが発生する。ＮＷコネクタ２５は、監視データが正常であるか否かを判定し、監視データが正常である場合は、送信元のＮＷコネクタ２５に対して、監視応答（監視データ取得完了通知）を送信する。
【００７２】
通常状態において、他のＮＷコネクタ２５から監視応答（監視データ取得完了通知）を受信すると、監視応答受信イベントが発生する。ＮＷコネクタ２５は、監視応答を受信した時刻と、監視データを送信した時刻とを比較し、一定時間内である場合に、正常に送受信が行われた（すなわち、自己と監視データの送信先との情報送信に障害がない）と判断し、タイマをリセットする。
【００７３】
一方、上記において一定時間内でない場合には、当該一定時間内でないと判定された回数をカウントし、当該回数がＸ回に至ると、正常に送受信が行われなかった（すなわち、自己と監視データの送信先との情報送信に障害がある）と判断し、監視状態に遷移する。監視状態に遷移した後、タイマをリセットする。
【００７４】
通常状態において、ソフトウエアリセットやハードウエアリセットが行われると、リセットイベントが発生し、開始状態に遷移する。また、電源がオフにされると、終了状態に遷移する。
【００７５】
以下、監視状態について説明する。監視状態において、データ受信イベント（自己が送信先）が発生すると、監視対象となっているＮＷコネクタ２５以外から受信したパケットに含まれるデータはＣＰＵコア２０の内部メモリ２２等に格納するが、監視対象となっているＮＷコネクタ２５から受信したパケットに含まれるデータは格納しない。また、データ受信イベント（他のＮＷコネクタ２５が送信先）が発生すると、監視対象となっているＮＷコネクタ２５以外から受信したパケットは転送するが、監視対象となっているＮＷコネクタ２５から受信したパケットは転送しない。
【００７６】
監視データ送信イベント及び監視データ受信イベントについては、通常状態におけると同様であるため説明を省略する。
【００７７】
監視状態において、他のＮＷコネクタ２５から監視応答（監視データ取得完了通知）を受信すると、監視応答受信イベントが発生する。なお、監視対象となっているＮＷコネクタ２５以外から監視応答を受信した場合は、通常状態における処理と同じ処理を行う。
【００７８】
監視対象となっているＮＷコネクタ２５から監視応答を受信した場合、ＮＷコネクタ２５は、監視応答を受信した時刻と、監視データを送信した時刻とを比較し、一定時間内である場合に、当該一定時間内であると判定された回数をカウントし、当該回数がＺ回に至ると、当該監視対象に関して通常状態に遷移する（Ｘ＝Ｚでも構わない）。通常状態に遷移した後、タイマをリセットする。
【００７９】
リセットイベントや終了状態への遷移については、通常状態における処理と同様の処理を行う。
【００８０】
（迂回処理（Ａ））
本実施例の情報処理装置１では、ＮＷコネクタ２５を介した情報送信について障害が発生したことが認識されると、Ｉ／Ｏ手段１０とＣＰＵコア２０の間の情報送受信、或いはＣＰＵコア２０同士の情報送受信が、第１の通信経路のみを用いたときに障害の発生した箇所を通過して行われることが想定される場合には、当該障害の発生した箇所を迂回してデータ送信が行われる。この際には、本来用いられる筈であった第１の通信経路が部分的に回避され、第２の通信経路の一部が用いられる。
【００８１】
図１３は、Ｉ／Ｏ手段１０からＣＰＵコア２０にデータ送信が行われる場面において、障害の発生した箇所を迂回してデータ送信が行われる様子を示す説明図である。本図では、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の情報送受信について障害が発生しており、ＮＷコネクタ２５n,1が予め、係る障害を把握している。なお、この障害は、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の通信回線の断線等と、ＮＷコネクタ２５n+1,1自体の故障等を含む。
【００８２】
この場合、ＮＷコネクタ２５n,1は、ＮＷコネクタ２５n+1,1と同一階層に属するＮＷコネクタ２５n+1,2にパケットを送信する（図中、（１））。以下、パケットの転送時には、転送履歴に転送を行ったＮＷコネクタ２５が追加されるものとする。
【００８３】
パケットを受信したＮＷコネクタ２５n+1,2は、送信先が自己と同一階層に属するか否かを判定する。
【００８４】
送信先が自己と同一階層に属する場合、ＮＷコネクタ２５n+1,2は、自己と同一階層に属するＮＷコネクタ２５のうちリング状の第２の通信経路において隣接するＮＷコネクタ２５n+1,1、及びＮＷコネクタ２５n+1,3にパケットを転送する（図中、（２））。こうして、論理的階層（ｎ＋１）内でパケットがリレー転送される。なお、この際に、受信したパケットの転送履歴に自己が含まれている場合は、リレー転送を行わずに破棄する。
【００８５】
一方、送信先が自己と同一階層に属さない場合（例えば上位階層のＮＷコネクタ２５n+2,1が送信先である場合）、ＮＷコネクタ２５n+1,2は、自己と同一階層に属するＮＷコネクタ２５のうちリング状の第２の通信経路において隣接するＮＷコネクタ２５n+1,1、及びＮＷコネクタ２５n+1,3にパケットを転送すると共に、第１の通信経路において自己の相手先となっている上位階層のＮＷコネクタ２５n+2,2にもパケットを転送する（図中、（３））。
【００８６】
パケットを受信したＮＷコネクタ２５n+2,2は、送信先が自己と同一階層に属するか否かを判定する。
【００８７】
送信先が自己と同一階層に属する場合、ＮＷコネクタ２５n+2,2は、自己と同一階層に属するＮＷコネクタ２５のうちリング状の第２の通信経路において隣接するＮＷコネクタ２５n+2,1にパケットを転送する（図中、（４））。こうして、論理的階層（ｎ＋２）内でパケットがリレー転送される。なお、この際に、受信したパケットの転送履歴に自己が含まれている場合は、リレー転送を行わずに破棄する。
【００８８】
また、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の情報送受信について障害が発生している場合において、ＮＷコネクタ２５n,1は、自己よりもＩ／Ｏ手段１０に遠い側にデータを送信する際に、ＮＷコネクタ２５n+1,1と同一階層に属する複数のＮＷコネクタ２５にパケットを転送するものとしてよい。図１３における（１）*がこれに該当する。この結果、ＮＷコネクタ２５n+1,2とＮＷコネクタ２５n+1,3の双方にパケットが送信され、ＮＷコネクタ２５n+1,3がＮＷコネクタ２５n+1,2と同様にリレー転送の起点となる（図中（２）*）。係る場合に、前述の「受信したパケットの転送履歴に自己が含まれている場合は、リレー転送を行わずに破棄する」ことの効果が大きくなる。すなわち、無駄な転送を省略して通信負荷を低減することができる。
【００８９】
（迂回処理（Ｂ））
図１４は、ＣＰＵコア２０からＩ／Ｏ手段１０にデータ送信が行われる場面において、障害の発生した箇所を迂回してデータ送信が行われる様子を示す説明図である。本図では、ＮＷコネクタ２５n+2,1とＮＷコネクタ２５n+1,1の間の情報送受信について障害が発生しており、ＮＷコネクタ２５n+2,1が予め、係る障害を把握している。なお、この障害は、ＮＷコネクタ２５n+2,1とＮＷコネクタ２５n+1,1の間の通信回線の断線等と、ＮＷコネクタ２５n+1,1自体の故障等を含む。
【００９０】
この場合、ＮＷコネクタ２５n+2,1は、自己と同一階層に属するＮＷコネクタ２５n+2,2にパケットを送信する（図中、（１））。以下、パケットの転送時には、転送履歴に転送を行ったＮＷコネクタ２５が追加されるものとする。
【００９１】
パケットを受信したＮＷコネクタ２５n+2,2は、送信先が自己と同一階層に属するか否かを判定する。
【００９２】
本図では、送信先が自己と同一階層に属さないため、ＮＷコネクタ２５n+2,2は、第１の通信経路において自己の相手先となっている下位階層のＮＷコネクタ２５n+1,2にパケットを転送する（図中、（２））。
【００９３】
パケットを受信したＮＷコネクタ２５n+1,2は、送信先が自己と同一階層に属するか否かを判定する。
【００９４】
送信先が自己と同一階層に属する場合は、ＮＷコネクタ２５n+1,2は、自己と同一階層に属するＮＷコネクタ２５のうちリング状の第２の通信経路において隣接するＮＷコネクタ２５n+1,1にパケットを転送する（図中、（３））。こうして、論理的階層（ｎ＋１）内でパケットがリレー転送される。なお、この際に、受信したパケットの転送履歴に自己が含まれている場合は、リレー転送を行わずに破棄する。
【００９５】
一方、送信先が自己と同一階層に属さない場合（例えば下位階層のＮＷコネクタ２５n,1が送信先である場合）、ＮＷコネクタ２５n+1,2は、ＮＷコネクタ２５n+1,1にパケットを転送すると共に、第１の通信経路において自己の相手先となっている上位階層のＮＷコネクタ２５n,1にもパケットを転送する（図中、（４））。
【００９６】
また、ＮＷコネクタ２５n+2,1とＮＷコネクタ２５n+1,1の間の情報送受信について障害が発生している場合において、ＮＷコネクタ２５n+2,1は、自己よりもＩ／Ｏ手段１０に近い側にデータを送信する際に、自己と同一階層に属する複数のＮＷコネクタ２５にパケットを転送するものとしてよい。図１４における（１）*がこれに該当する。
【００９７】
（迂回処理（Ｃ））
図１５は、Ｉ／Ｏ手段１０からＣＰＵコア２０にデータ送信が行われる場面において、障害の発生した箇所を図１３とは異なるアルゴリズムにより迂回してデータ送信が行われる様子を示す説明図である。本図では、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の情報送受信について障害が発生しており、ＮＷコネクタ２５n,1が予め、係る障害を把握している。なお、この障害は、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の通信回線の断線等と、ＮＷコネクタ２５n+1,1自体の故障等を含む。
【００９８】
この場合、ＮＷコネクタ２５n,1は、ＮＷコネクタ２５n+1,1と同一階層に属するＮＷコネクタ２５n+1,2にパケットを送信する（図中、（１））。以下、パケットの転送時には、転送履歴に転送を行ったＮＷコネクタ２５が追加されるものとする。
【００９９】
パケットを受信したＮＷコネクタ２５n+1,2は、送信先が自己と同一階層に属するか否かを判定する。
【０１００】
送信先が自己と同一階層に属する場合、ＮＷコネクタ２５n+1,2は、自己と同一階層に属するＮＷコネクタ２５のうちリング状の第２の通信経路において隣接するＮＷコネクタ２５n+1,1、及びＮＷコネクタ２５n+1,3にパケットを転送する（図中、（２）、（２）**）。こうして、論理的階層（ｎ＋１）内でパケットが双方向にリレー転送される（図では、簡略化のために、右方向へのリレー転送に関しては（２）**に係る矢印のみ示した）。なお、この際に、受信したパケットの転送履歴に自己が含まれている場合は、リレー転送を行わずに破棄する。
【０１０１】
一方、送信先が自己と同一階層に属さない場合（例えば上位階層のＮＷコネクタ２５n+2,1が送信先である場合）、ＮＷコネクタ２５n+1,2は、自己と同一階層に属するＮＷコネクタ２５のうちリング状の第２の通信経路において隣接するＮＷコネクタ２５n+1,1、及びＮＷコネクタ２５n+1,3にパケットを転送すると共に、第１の通信経路において自己の相手先となっている上位階層のＮＷコネクタ２５n+2,2にもパケットを転送する（図中、（３））。
【０１０２】
パケットを受信したＮＷコネクタ２５n+2,2は、送信先が自己と同一階層に属するか否かを判定する。
【０１０３】
送信先が自己と同一階層に属する場合、ＮＷコネクタ２５n+2,2は、自己と同一階層に属するＮＷコネクタ２５のうちリング状の第２の通信経路において隣接するＮＷコネクタ２５n+2,1、及びＮＷコネクタ２５n+2,3にパケットを転送する（図中、（４）、（４）*）。こうして、論理的階層（ｎ＋２）内でパケットが双方向にリレー転送される。なお、この際に、受信したパケットの転送履歴に自己が含まれている場合は、リレー転送を行わずに破棄する。
【０１０４】
また、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の情報送受信について障害が発生している場合において、ＮＷコネクタ２５n,1は、自己よりもＩ／Ｏ手段１０に遠い側にデータを送信する際に、ＮＷコネクタ２５n+1,1と同一階層に属する複数のＮＷコネクタ２５にパケットを転送するものとしてよい。図１５における（１）*がこれに該当する。この結果、ＮＷコネクタ２５n+1,2とＮＷコネクタ２５n+1,3の双方にパケットが送信され、ＮＷコネクタ２５n+1,3がＮＷコネクタ２５n+1,2と同様にリレー転送の起点となる（図中（２）*）。係る場合に、前述の「受信したパケットの転送履歴に自己が含まれている場合は、リレー転送を行わずに破棄する」ことの効果が大きくなる。すなわち、無駄な転送を省略して通信負荷を低減することができる。なお、この場合、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の情報送受信に障害が発生している場合に、これを補完することができる。
【０１０５】
更に、ＮＷコネクタ２５n,1とＮＷコネクタ２５n+1,1の間の情報送受信について障害が発生している場合において、ＮＷコネクタ２５n,1は、自己と同一階層に属する単独又は複数のＮＷコネクタ２５にパケットを転送するものとしてよい。図１５における（１）**がこれに該当する。
【０１０６】
このように冗長的に複数の経路を介してデータ送信を行うことによって、後述するように、最適な経路選択を行う場合に選択子を増加することができる。
【０１０７】
この場合、第２の通信経路においてＮＷコネクタ２５n,1に隣接するＮＷコネクタ２５n,2は、第１の通信経路において自己の相手先となっている上位階層のＮＷコネクタ２５n+1,4にパケットを転送する（図中、（５））。こうして転送されたパケットは送信先と同一階層のＮＷコネクタ２５n+2,4まで転送され（図中、（６））、論理的階層（ｎ＋２）においてリレー転送されてＮＷコネクタ２５n+2,1まで伝達される。
【０１０８】
以上、迂回処理（Ａ）〜（Ｃ）において説明したように、ＮＷコネクタ２５は、Ｉ／Ｏ手段１０に近い側から遠い側にデータを送信する際において、第１の通信経路上に障害が存在する場合には、障害を迂回可能な他の単独又は複数の上位階層のＮＷコネクタ２５にデータを送信する。この際に、自己の属する論理的階層の単独又は複数のＮＷコネクタ２５にデータ送信してもよい。
【０１０９】
また、ＮＷコネクタ２５は、Ｉ／Ｏ手段１０に遠い側から近い側にデータを送信する際において、第１の通信経路上に障害が存在する場合には、自己の属する論理的階層の単独又は複数のＮＷコネクタ２５にデータを送信する。
【０１１０】
これらのアルゴリズムによって、障害箇所を迂回してデータ送信を行うことが可能となる。
【０１１１】
（処理フロー）
図１６は、上記迂回処理（Ａ）〜（Ｃ）のように、自動的に単独又は複数のＮＷコネクタ２５にパケット転送を行い、複数方向に転送して最も早く送信先に到着したものを採用する手法とは異なり、最適な迂回ルートを計算によって算出し、算出した迂回ルートを採用するという手法における処理フローである。本フローは、ＮＷコネクタ２５がパケットを受信したときに行われる。
【０１１２】
まず、ＮＷコネクタ２５は、通信ステップ数Ｓｔの初期値に値１を設定する（Ｓ１００）。
【０１１３】
次に、第１の通信経路を介してパケットを転送するべき相手先への情報送信に障害が発生しているか否かを判定する（Ｓ１０２）。
【０１１４】
相手先への情報送信に障害が発生していない場合は、当該相手先にパケット転送を行う（Ｓ１１６）。
【０１１５】
相手先への情報送信に障害が発生している場合は、通信ステップ数Ｓｔを値１増加させる（Ｓ１０４）。
【０１１６】
そして、通信ステップ数が上限値未満であるか否かを判定する（Ｓ１０６）。
【０１１７】
通信ステップ数が上限値未満である場合は、通信ステップ数Ｓｔを満たす迂回ルートのそれぞれについて、通信成功率Ｓを次式（１）によって算出する（Ｓ１０８）。ここで、通信回線負荷指標値とエラー率は、迂回ルートに含まれる各通信ステップに関するパラメータであり、ＮＷコネクタ２５によってリアルタイムに把握されている。通信回線負荷指標値は、通信に最も余裕がある状態を最大値とし（例えば値１）、混雑状態になるに連れて値が低下して値０に近づくものとする。そして、第２の通信経路における通信回線負荷は最大値とする。第２の通信経路は、専らこのような迂回通信に用いられるため、混雑した状態が頻繁に生じないからである。
【０１１８】
Ｓ＝Σ［（バス負荷指標値）×｛１−（エラー率）｝］／Ｓｔ  （全パラメータが規定範囲内の場合）
＝０                              （いずれかのパラメータが規定範囲外の場合）
…（１）
【０１１９】
通信成功率Ｓを各迂回ルートについて算出すると、通信成功率Ｓが一定値以上の迂回ルートが存在するか否かを判定する（Ｓ１１０）。
【０１２０】
通信成功率Ｓが一定値以上の迂回ルートが存在しない場合は、Ｓ１０４に戻り、通信ステップ数Ｓｔを値１増加させる。
【０１２１】
通信成功率Ｓが一定値以上の迂回ルートが存在する場合は、通信成功率Ｓが最も高い迂回ルートを選択し（Ｓ１１２）、当該迂回ルートに従ったＮＷコネクタ２５にパケットを転送する（Ｓ１１６）。
【０１２２】
Ｓ１０６において通信ステップ数が上限値以上であると判定した場合は、過去に計算した通信成功率Ｓのうち最も高い数値のものに対応した迂回ルートを選択し（Ｓ１１４）、当該迂回ルートに従ったＮＷコネクタ２５にパケットを転送する（Ｓ１１６）。
【０１２３】
係る処理フローによって、通信回線負荷指標値が高く（すなわち混雑しておらず）、エラー率の低い通信ルートを介してデータの伝達が行われる。この結果、迅速且つ確実にデータを伝達することができる。また、通信ステップ数に上限値が設定されているため、無制限に通信ステップ数が増加することにより、却って通信混雑を招いてしまうという不都合を防止することができる。
［まとめ］
以上説明した本実施例の情報処理装置１によれば、複数のＣＰＵコア２０が、Ｉ／Ｏ手段１０を起点としてツリー状にＣＰＵコア２０を接続する第１の通信経路と、Ｉ／Ｏ手段１０からの通信ステップ数に応じた論理的階層構造における同一階層（レベル）に属するＣＰＵコア２０をリング状に接続する第２の通信経路により接続されているため、共有アクセス対象であるＩ／Ｏ手段１０と複数のＣＰＵコア２０を効率よく接続すると共に、内部の通信障害に柔軟に対応することができる。
【０１２４】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【０１２５】
１  情報処理装置
１０  Ｉ／Ｏ手段
２０  ＣＰＵコア
２２  内部メモリ
２５  ＮＷコネクタ
３０  タイマ
【図１】
2012094072.tif 000003
【図２】
2012094072.tif 000004
【図３】
2012094072.tif 000005
【図４】
2012094072.tif 000006
【図５】
2012094072.tif 000007
【図６】
2012094072.tif 000008
【図７】
2012094072.tif 000009
【図８】
2012094072.tif 000010
【図９】
2012094072.tif 000011
【図１０】
2012094072.tif 000012
【図１１】
2012094072.tif 000013
【図１２】
2012094072.tif 000014
【図１３】
2012094072.tif 000015
【図１４】
2012094072.tif 000016
【図１５】
2012094072.tif 000017
【図１６】
2012094072.tif 000018