(57)【要約】【課題】簡単な制御でＮｏＣシステムの転送効率を高める。【解決手段】ＮｏＣルータは、宛先情報が複数の宛先を示すフリットグループに対応する。該ＮｏＣルータにおいて、宛先グループ分割部１３２は、フリットグループの宛先情報が示す複数の宛先を１つ以上の宛先グループに分割する。具体的には、到達するまでの転送経路のうちの、該ＮｏＣルータを起点とする一部の経路を共有可能な各宛先が、該一部の経路に出力する方向をグループ転送方向とする宛先グループに含まれるように、上記複数の宛先の分割をする。転送実行部１３４は、宛先グループ分割部１３２によりより得られた宛先グループ毎に、該宛先グループに含まれない各宛先を宛先情報から削除した上で、フリットグループ内の各フリットを、該宛先グループのグループ転送方向に順次転送する。【選択図】図４
2013243582.tif 000002
【特許請求の範囲】
【請求項１】
ＮｏＣ（ＮｏＣ：Ｎｅｔｗｏｒｋ  ｏｎ  Ｃｈｉｐ）システムにおいて、ヘッドフリットからテイルフリットまでの複数のフリットを有し、１つの前記フリットに宛先情報が含まれるフリットグループ内の各フリットを順次転送するＮｏＣルータであって、
前記宛先情報が複数の宛先を示す前記フリットグループに対して、
到達するまでの転送経路のうちの、前記ＮｏＣルータを起点とする一部の経路を共有可能な各宛先が、前記一部の経路に出力する方向をグループ転送方向とする宛先グループに含まれるように、前記複数の宛先を１つ以上の前記宛先グループに分割する宛先グループ分割部と、
前記宛先グループ分割部により得られた前記宛先グループ毎に、該宛先グループに含まれない各宛先を前記宛先情報から削除した上で、前記フリットグループ内の各フリットを、前記宛先グループの前記グループ転送方向に順次転送する転送実行部と、
を備えるＮｏＣルータ。
【請求項２】
メッシュ型のＮｏＣシステムに設けられ、
前記宛先グループ分割部は、
到達するまでに、前記ＮｏＣルータに接続されたＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）へ向かう方向と、Ｘ軸の正方向と、Ｘ軸の負方向と、Ｙ軸の正方向と、Ｙ軸の負方向の５つの方向のうちの同一の１つの方向への転送が必要な各宛先が、前記同一の１つの方向を前記グループ転送方向とする１つの前記宛先グループに含まれるように、前記複数の宛先を１つ以上の前記宛先グループに分割する
請求項１に記載のＮｏＣルータ。
【請求項３】
前記宛先グループ分割部は、
Ｘ軸とＹ軸のいずれか一方を優先軸とし、
Ｘ軸とＹ軸の両方に夫々沿った２つの転送方向が必要な宛先を、前記２つの転送方向のうちの前記優先軸に沿った転送方向を前記グループ転送方向とする前記宛先グループに決定する、
請求項２に記載のＮｏＣルータ。
【請求項４】
前記宛先グループ分割部は、
Ｘ軸とＹ軸の片方に沿った転送方向のみを必要とする第１の宛先がある場合に、前記片方の軸を前記優先軸に決定する、
請求項３に記載のＮｏＣルータ。
【請求項５】
前記宛先グループ分割部は、
前記第１の宛先と共に、Ｘ軸とＹ軸の他方に沿った転送方向のみを必要とする第２の宛先がある場合に、Ｘ軸とＹ軸のいずれか一方を前記優先軸に決定する、
請求項４に記載のＮｏＣルータ。
【請求項６】
前記フリットグループは、Ｘ軸とＹ軸のいずれか一方である転送軸に沿って転送されてきたものであり、
前記宛先グループ分割部は、
前記第１の宛先と前記第２の宛先がある場合に、Ｘ軸とＹ軸のうちの、前記転送軸と異なる一方を前記優先軸に決定する、
請求項５に記載のＮｏＣルータ。
【請求項７】
前記宛先情報は、前記複数の宛先毎の座標値を示しうるものであり、
前記宛先グループ分割部は、
前記複数の宛先毎に、該宛先の座標値と前記ＮｏＣルータの座標値との比較をし、前記比較結果に応じて前記複数の宛先を分割する、
請求項２から６のいずれか１項に記載のＮｏＣルータ。
【請求項８】
ツリー型のＮｏＣシステムに設けられ、
前記宛先グループ分割部は、前記複数の宛先のうちの、２つ以上下の階層に位置するＮｏＣルータに該当する各宛先が同一の１つの下グループに含まれ、２つ以上上の階層に位置するＮｏＣルータに該当する各宛先が同一の１つの上グループに含まれるように、前記複数の宛先を１つ以上の前記宛先グループに分割し、
前記下グループは、１つ下の階層に位置するＮｏＣルータのうちのいずれか１つへ向かう方向を前記グループ転送方向とする前記宛先グループであり、
前記上グループは、１つ上の階層に位置するＮｏＣルータのうちのいずれか１つへ向かう方向を前記グループ転送方向とする前記宛先グループである、
請求項１に記載のＮｏＣルータ。
【請求項９】
前記宛先グループ分割部は、
前記複数の宛先のうちに、１つ下の階層に位置するＮｏＣルータである第１のＮｏＣルータに該当する宛先がある場合に、該宛先と、２つ以上下の階層に位置するＮｏＣルータに該当する各宛先とが、前記第１のＮｏＣルータに向かう方向を前記グループ転送方向とする前記下グループに含まれ、
前記複数の宛先のうちに、１つ上の階層に位置するＮｏＣルータである第２のＮｏＣルータに該当する宛先がある場合に、該宛先と、２つ以上上の階層に位置するＮｏＣルータに該当する各宛先とが、前記第２のＮｏＣルータに向かう方向を前記グループ転送方向とする前記上グループに含まれるように、
前記複数の宛先を１つ以上の前記宛先グループに分割する、
請求項８に記載のＮｏＣルータ。
【請求項１０】
前記宛先グループ分割部は、
前記複数の宛先のうちの、前記宛先グループ分割部が設けられたＮｏＣルータと同階層に位置する他のＮｏＣルータに該当する各宛先が、他の宛先を含む１つの前記下グループ、または、他の宛先を含む１つの前記上グループに含まれるように、
前記複数の宛先を１つ以上の前記宛先グループに分割する、
請求項８または９に記載のＮｏＣルータ。
【請求項１１】
ＮｏＣ（ＮｏＣ：Ｎｅｔｗｏｒｋ  ｏｎ  Ｃｈｉｐ）システムにおけるＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）とＮｏＣルータの間に接続されたネットワークインタフェースであって、
前記ＩＰが出力したデータを受信する受信部と、
前記受信部により受信したデータをパケット化して、ヘッドフリットからテイルフリットまでの複数のフリットを有し、１つの前記フリットに宛先情報が含まれるフリットグループを生成するパケット化部と、
前記パケット化部により生成したフリットグループ内の各フリットを前記ＮｏＣルータに順次出力する送信部とを備え、
前記受信部は、前記ＩＰにより前記データに対して複数の宛先を指定可能であり、
前記パケット化部は、前記宛先情報として前記複数の宛先を示すものを生成する、
ネットワークインタフェース。
【請求項１２】
ＮｏＣ（ＮｏＣ：Ｎｅｔｗｏｒｋ  ｏｎ  Ｃｈｉｐ）システムであって、
ヘッドフリットからテイルフリットまでの複数のフリットを有し、１つの前記フリットに宛先情報が含まれるフリットグループ内の各フリットを順次転送する複数のＮｏＣルータと、
複数のＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）と、
複数のネットワークインタフェースであって、各前記ネットワークフェースが、１つの前記ＮｏＣルータと１つの前記ＩＰの間に接続され、前記ＩＰが出力したデータをパケット化し、前記フリットグループを得て前記ＮｏＣルータに出力する前記複数のネットワークインタフェースとを備え、
前記ＩＰは、出力する前記データに対して複数の宛先を指定可能であり、
前記ネットワークインタフェースは、前記データに対応する前記フリットグループを生成する際に、前記宛先情報として前記複数の宛先を示すものを生成し、
前記ＮｏＣルータは、
到達するまでの転送経路のうちの、前記ＮｏＣルータを起点とする一部の経路を共有可能な各宛先が、前記一部の経路に出力する方向をグループ転送方向とする宛先グループに含まれるように、前記複数の宛先を１つ以上の前記宛先グループに分割する宛先グループ分割部と、
前記宛先グループ分割部により得られた前記宛先グループ毎に、該宛先グループに含まれない各宛先を前記宛先情報から削除した上で、前記フリットグループ内の各フリットを、前記宛先グループの前記グループ転送方向に順次転送する転送実行部と、
を備えるＮｏＣシステム。
【請求項１３】
メッシュ型であり、
前記ＮｏＣルータにおける前記宛先グループ分割部は、
到達するまでに、前記ＮｏＣルータに接続されたＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）へ向かう方向と、Ｘ軸の正方向と、Ｘ軸の負方向と、Ｙ軸の正方向と、Ｙ軸の負方向の５つの方向のうちの同一の１つの方向への転送が必要な各宛先が、前記同一の１つの方向を前記グループ転送方向とする１つの前記宛先グループに含まれるように、前記複数の宛先を１つ以上の前記宛先グループに分割する、
請求項１２に記載のＮｏＣシステム。
【請求項１４】
ツリー型であり、
前記ＮｏＣルータにおける前記宛先グループ分割部は、前記複数の宛先のうちの、２つ以上下の階層に位置するＮｏＣルータに該当する各宛先が同一の１つの下グループに含まれ、２つ以上上の階層に位置するＮｏＣルータに該当する各宛先が同一の１つの上グループに含まれるように、前記複数の宛先を１つ以上の前記宛先グループに分割し、
前記下グループは、１つ下の階層に位置するＮｏＣルータのうちのいずれか１つへ向かう方向を前記グループ転送方向とする前記宛先グループであり、
前記上グループは、１つ上の階層に位置するＮｏＣルータのうちのいずれか１つへ向かう方向を前記グループ転送方向とする前記宛先グループである、
請求項１３に記載のＮｏＣシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルーティング技術、例えばＮｏＣ（Ｎｅｔｗｏｒｋ  ｏｎ  Ｃｈｉｐ）システムにおけるルーティング技術に関する。
【背景技術】
【０００２】
近年、半導体プロセスの微細化につれ、１つのチップ内に搭載できるプロセッサ・コア（Ｐｒｏｃｅｓｓｏｒ  Ｃｏｒｅ）などのＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ：知能素子）の数は、増加の一途を辿っている。ＩＰ数の増加に伴い、ＩＰを繋ぐ配線は複雑化し、配線数も増加している。このような背景において、従来のオン・チップ・バスに代わる結合網として、ＮｏＣ（Ｎｅｔｗｏｒｋ  ｏｎ  Ｃｈｉｐ）が注目されている（非特許文献１）。
【０００３】
図２７は、ＮｏＣシステムのネットワークトポロジを示す。図中丸は、ＮｏＣルータを示す。なお、以下の説明において、「ＮｏＣルータ」を単に「ルータ」とも呼ぶ。
【０００４】
ＮｏＣは、ツリー（Ｔｒｅｅ）型、メッシュ（Ｍｅｓｈ）型など様々なトポロジーを有する。メッシュ型は、グリッド（Ｇｒｉｄ）型とも呼ばれる。
【０００５】
図２７の左部に示すように、ツリー型では、複数のルータが階層的に接続され、上位階層の各ルータは、直下の階層の各ルータと接続されている。図２７の左部の例は、３階層のツリー型を示しているが、ツリーの階層は２以上の何階層であってもかまわない。
【０００６】
図２７の右部に示すように、メッシュ型では、複数のルータが格子状に配置され、各ルータは、上下左右に位置する他のルータと直接接続されている。メッシュ型を例にして、ＮｏＣのルータのハードウェア構造を説明する。
【０００７】
図２８は、非特許文献１のスライド３２の一部を抽出して符号を追加したものであり、５入力５出力のルータ１０の概略を示す。図中「Ｘ＋」、「Ｘ−」、「Ｙ＋」、「Ｙ−」は、ルータ１０の「右隣」、「左隣」、「真下」、「真上」のルータ（隣接ルータ）を夫々示し、図中「ＣＯＲＥ」は、ルータ１０と接続されたプロセッサ・コアなどのＩＰである。
【０００８】
図２９は、図２８におけるルータ１０と、ＣＯＲＥ及び各隣接ルータとの座標関係が分かるように示した図である。図２９から分かるように、ルータ１０は、ＣＯＲＥと、４つの隣接ルータとに接続されている。
【０００９】
図２８に示すように、ルータ１０は、５本のパス１１によりＣＯＲＥ及び４つの隣接ルータと夫々接続されており、５つのＦＩＦＯ１２と、調停器（図中ＡＲＢＩＴＥＲ）１４と、ＸＢＡＲ１６を有する。なお、図示していないが、ルータとＣＯＲＥの間にネットワークインタフェース（ＮＩ：Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）という装置が設けられており、ルータとＣＯＲＥは、該ＮＩを介して送受信を行う。
【００１０】
５つのＦＩＦＯ１２は、５つのパス１１に夫々接続されており、当該パス１１に接続されたＣＯＲＥまたは隣接ルータからのパケットを一時的に格納する。
【００１１】
調停器１４は、５つのＦＩＦＯ１２に夫々格納されたパケットの宛先に応じて、該パケットの出力先の調停を行う。ＸＢＡＲ１６は、スイッチ機能を有し、調停器１４の調停結果の出力先にパケットを出力する。例えば、「Ｘ＋」のルータから、ＣＯＲＥ宛てのパケットが入力されると、該パケットは、「Ｘ＋」のルータに対応するＦＩＦＯ１２に一時格納された後、ＣＯＲＥに出力される。また、例えば、「Ｘ＋」のルータから、「Ｙ＋」のルータに接続されたＩＰ（図示せず）宛てのパケットが入力されると、該パケットは、「Ｘ＋」のルータに対応するＦＩＦＯ１２に一時格納された後、「Ｙ＋」のルータに出力される。
【００１２】
図３０を参照し、あるＩＰから別のＩＰに送信する場合の信号の流れの例を用いて、ＮｏＣのパケットの構成を説明する。
【００１３】
図３０の例において、ＩＰ２０は、送信側ＩＰすなわちマスターであり、ＩＰ３０は、受信側ＩＰすなわちスレーブである。ＩＰ２０から送出された信号は、ＮＩ２２、ルータ２４、ルータ２６、ＮＩ２８を経由して、ＩＰ３０に到達する。なお、ルータ２４からルータ２６までは、さらに他のルータを経由する場合もある。
【００１４】
ルータ２４は、ＮＩ２２を介してＩＰ２０と接続されたルータであり、ルータ２６は、ＮＩ２８を介してＩＰ３０と接続されたルータである。
【００１５】
ＮＩ２２は、ＩＰ２０が送出した信号をパケット化して、複数のフリットを得てルータ２４に出力する。
【００１６】
ＮＩ２２により得られた複数のフリットのうちの先頭のフリットは、ヘッドフリットと呼ばれ、ヘッダ４２、制御信号部４４（Ｃｏｎｔｒｏｌ  Ｓｉｇｎａｌ）、送信元を示す出発地情報４６（Ｓｏｕｒｃｅ）、目的地を示す宛先情報４８（Ｄｅｓｔｉｎａｔｉｏｎ）を有する。出発地情報４６と宛先情報４８は、アドレス情報であり、送信元（ここではＩＰ２０）と目的地（ここではＩＰ３０）の夫々のアドレスである。なお、メッシュ型のＮｏＣシステムでは、出発地情報４６と宛先情報４８は、例えばＸ軸とＹ軸における座標値で表わすことができる。
【００１７】
２番目からの各フリットは、ボディフリットと呼ばれ、信号の中身を示すデータが挿入されている。ボディフリットのうちの末尾のフリットは、テイルフリットと呼ばれる。
【００１８】
なお、バスプロトコルによっては、アドレス情報は、２番目のフリット（ヘッドフリットの次のフリット）に含まれる場合もある。
【００１９】
各フリットのヘッダ４２には、ヘッドフリットであるか、テイルフリットであるか、アドレス情報が含まれるフリットであるかなど、該フリットの種類を示す情報が含まれている。
【００２０】
以下の説明において、送信元のＩＰから送出した１つの信号をパケット化して得た、ヘッドフリットからテイルフリットまでの複数のフリットを、１つの「フリットグループ」という。
【００２１】
ルータ２４は、ＮＩ２２からの各フリットを、時分割多重で順次転送する。具体的には、１つのフリットグループに対して、宛先情報４８から次のルータを決定し、ヘッドフリットからテイルフリットまでの各フリットを、次のルータに順次転送する。
【００２２】
ルータ２４からの各フリットは、ルータ２４とルータ２６の間のルータを経由して、ルータ２６に到達する。ルータ２６は、宛先情報４８から該フリットグループの目的地が自身であると判断して、各フリットをＮＩ２８に順次出力する。
【００２３】
ＮＩ２８は、ルータ２６からの、１つのフリットグループを構成する複数のフリットを、ＩＰが送受信する信号に復元してＩＰ３０に出力する。ＮＩ２８によるこの復元処理は、ＮＩ２２が行う「パケット化」とは逆の処理であり、以下「デパケット」という。
【００２４】
このようにして、マスターとしてのＩＰ２０から、スレーブとしてのＩＰ３０への送信が実現される。
【００２５】
ＮｏＣシステムでは、転送先となる次のルータ（すなわち転送方向）を決定するルーティング手法に応じて、固定型と適応型に分けられる。
【００２６】
固定型のＮｏＣシステムでは、２つのフリットグループの出発地と宛先が夫々同一である場合に、該２つのフリットグループは、必ず同一の経路で転送される。メッシュ型を例にして、固定型と適応型のルーティング手法のアルゴリズムの一例を説明する。
【００２７】
固定型のルーティング手法の一例では、各ルータは、宛先に到達するまでに１つの転送方向（Ｘ＋、Ｘ−、Ｙ＋、Ｙ−のうちの１つへ向かう方向）のみを必要とするフリットグループを、該１つの転送方向へ転送し、互いに垂直する２つの転送方向を必要とするフリットグループを、該２つの転送方向のうちのＸ軸の転送方向へ転送する。
【００２８】
例えば、「Ｘ＋」へ向かう方向への転送のみを必要とするフリットグループは、「Ｘ＋」に転送され、「Ｘ＋」と「Ｙ＋」の両方に向かう方向への転送を必要とするフリットグループも、「Ｘ＋」に転送される。
【００２９】
適応型のルーティング手法の一例では、２つのフリットグループの出発地と宛先が夫々同一であっても、該２つのフリットグループは、必ずしも同一の経路で転送されるとは限らない。例えば、転送経路の混雑状況に応じて次のルータを決定する適応型のＮｏＣシステムが知られている。このようなＮｏＣシステムの場合、例えば、「Ｘ＋」へ向かう方向への転送のみを必要とするフリットグループ（フリットグループＡ）と、「Ｘ＋」及び「Ｙ＋」の両方に向かう方向への転送を必要とするフリットグループ（フリットグループＢ）が同時にある場合に、フリットグループＡは、「Ｘ＋」に転送され、フリットグループＢは、「Ｙ＋」に転送される。
【００３０】
なお、特許文献１に開示された転送経路決定手法をＮｏＣシステムに適用した場合に、該ＮｏＣシステムは、適応型のＮｏＣシステムになると考えられる。
【先行技術文献】
【特許文献】
【００３１】
【特許文献１】特開平０８−１８５３８０号公報
【非特許文献】
【００３２】
【非特許文献１】Ｎｅｔｗｏｒｋ−ｏｎ−Ｃｈｉｐ最前線、Ｒｅｖｉｓｅｄ  Ｖｅｒｓｉｏｎ、２００８年８月２６日、インターネット＜ｈｔｔｐ：／ｗｗｗ．ａｍ．ｉｃｓ．ｋｅｉｏ．ａｃ．ｊｐ／ｍｅｍｂｅｒｓ／ｍａｔｕｔａｎｉ／ｐａｐｅｒｓ／ｍａｔｓｕｔａｎｉ＿ｋｙｕｓｈｕ２００８．ｐｐｔ＞
【発明の概要】
【発明が解決しようとする課題】
【００３３】
ここで、メッシュ型を例にして、固定型のルーティング手法を適用したＮｏＣシステムによるフリットグループの転送態様の一例を考える。
【００３４】
図３１において、白丸は、自身と接続されたＩＰ（より正確には該ＩＰとの間に設けられたＮＩ）からフリットグループを受信して他のルータに転送するルータであり、黒丸は、宛先に該当する各ルータを示す。また、２つの数字前の「Ｒ」はルータを示し、「Ｒ」に続く２つの数字は、該ルータのＸ座標値とＹ座標値を夫々示す。なお、各細線枠の全ての頂点にルータが設けられているが、図中において一部省略している。これらに関しては、以降に説明するこの種の各図面においても同様である。
【００３５】
ルータＲ００に接続されたＩＰ（図示せず）がルータＲ６５とルータＲ８８にデータを送信する場合に、２つのフリットグループがルータＲ００に出力される。この２つのフリットグループは、宛先情報が夫々ルータＲ６５とルータＲ８８である。これについて、ルータＲ６５へ送信するデータと、ルータＲ８８に送信するデータとが同じものであっても同様である。
【００３６】
図３１には、ルータＲ００が、宛先がルータＲ６５であるフリットグループ（フリットグループＡとする）、及び宛先がルータＲ８８であるフリットグループ（フリットグループＢであるとする）をＩＰから受信し、この２つのフリットグループをルータＲ６５とルータＲ８８に夫々転送する場合の転送経路を示す。なお、例として、図３１に示すＮｏＣシステムにおける各ルータは、Ｘ軸に沿った転送方向及びＹ軸に沿った転送方向の両方を必要とする宛先を、Ｘ軸に沿って転送するようになっているとする。
【００３７】
図３１において、実線の太線は、フリットグループＡの転送経路であり、点線の太線は、フリットグループＢの転送経路である。
【００３８】
フリットグループＡは、宛先がルータＲ６５であるため、「Ｘ＋」方向と「Ｙ＋」方向の２つの転送方向を必要とする。そのため、ルータＲ００は、フリットグループＡを「Ｘ＋」に転送する。このようにして、フリットグループＡは、ルータＲ００とルータＲ６０の間の各ルータを経由して、ルータＲ６０に到達する。
【００３９】
ルータＲ６０は、フリットグループＡの必要な転送方向が「Ｙ＋」方向のみであるため、フリットグループＡを「Ｙ＋」に転送する。ルータＲ６０とルータＲ６５間の各ルータを経由して、宛先のルータＲ６５に到達する。
【００４０】
ＮｏＣシステムにおいて、２つのルータ間の１回の転送が１ホップと呼ばれる。通常、同じフリットグループ内の各フリットが同一の経路で順次転送されるため、１つのフリットグループの転送に用いられるホップ数は、１つのフリットの転送に用いられるホップ数と、該フリットグループ内に含まれるフリット数とを乗算して得た数である。本明細書において、便宜上、フリットグループ内の１つのフリットの転送に用いられるホップ数を、該フリットグループの転送に用いられるホップ数として説明をする。
【００４１】
図３１に示すように、該例では、フリットグループＡは、目的地に到達するまでに１１ホップを必要とする。
【００４２】
同様に、フリットグループＢは、ルータＲ００から、ルータＲ００とルータＲ８０間の各ルータを経由して、ルータＲ８０に到達する。そして、ルータＲ８０から、ルータＲ８０とルータＲ８８間の各ルータを経由して、宛先のルータＲ８８に到達する。フリットグループＢは、目的地に到達するまでに１６ホップを必要とする。
【００４３】
すなわち、ルータＲ００からルータＲ６５とルータＲ８８の両方にフリットグループを転送するために、計２７ホップが必要である。
【００４４】
図３１から分かるように、フリットグループＡの転送経路と、フリットグループＢの転送経路は、共通した部分（ルータＲ００からルータＲ６０までの経路）がある。そのため、例えば、ルータＲ１０がフリットグループＡをルータＲ２０に転送している最中にフリットグループＢがルータＲ１０に到達しても、フリットグループＡの転送が完了するまで、フリットグループＢは、転送されない。
【００４５】
これでは、システム全体の転送効率が低下する。この問題は、一部の経路を共有する宛先が多いほど、顕著になる。
【００４６】
適応型のルーティング手法は、例えば、ルータＲ１０がフリットグループＡをルータＲ２０に転送している最中にフリットグループＢがルータＲ１０に到達した場合に、フリットグループＢをＹ＋（ルータＲ１１）に転送することで、転送効率の低下を回避することができる。しかし、適応型のルーティングは、制御が複雑であり、各ルータの処理負荷が大きくなるという問題がある。
【００４７】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００４８】
一実施の形態によれば、ＮｏＣシステムにおいて、フリットグループ内の各フリットを順次転送するＮｏＣルータは、宛先情報が複数の宛先を示すフリットグループに対して、前記複数の宛先を１つ以上の宛先グループに分割すると共に、前記宛先グループ毎に、該宛先グループに含まれない各宛先を前記宛先情報から削除した上で、前記フリットグループ内の各フリットを、前記宛先グループのグループ転送方向に順次転送する。
【００４９】
該ＮｏＣルータは、到達するまでの転送経路のうちの、前記ＮｏＣルータを起点とする一部の経路を共有可能な各宛先が、前記一部の経路に出力する方向を前記グループ転送方向とする宛先グループに含まれるように、前記複数の宛先の分割を行う。
【００５０】
別の一実施の形態によれば、ＮｏＣシステムにおけるＩＰとＮｏＣルータの間に接続されたネットワークインタフェースは、前記ＩＰから受信したデータをパケット化してフリットグループを生成する際に、前記ＩＰにより前記データに対して複数の宛先を指定したときに、該複数の宛先を示す宛先情報を生成して前記フリットグループ内の１つのフリットに格納する。
【００５１】
なお、上記実施の形態のＮｏＣルータによるルーティング方法、上記ネットワークインタフェースによるパケット化の方法、上記ＮｏＣルータと上記ネットワークインタフェースを備えたシステムなども、実施の形態としては有効である。
【発明の効果】
【００５２】
上記各実施の形態によれば、簡単な制御でＮｏＣシステムの転送効率を高めることができる。
【図面の簡単な説明】
【００５３】
【図１】第１の実施の形態にかかるツリー型のＮｏＣシステムを示す図である。
【図２】図１に示すＮｏＣシステムにおけるネットワークインタフェースを示す図である。
【図３】図２に示すネットワークインタフェースにより生成したフリットグループ内の、宛先情報が含まれるフリットの例を示す図である。
【図４】図１に示すＮｏＣシステムにおけるルータを示す図である。
【図５】図１に示すＮｏＣシステムのルータによる処理の流れの一例を示すフローチャートである（その１）。
【図６】図１に示すＮｏＣシステムのルータによる処理の流れの一例を示すフローチャートである（その２）。
【図７】図１に示すＮｏＣシステムのルータによる処理の流れの一例を示すフローチャートである（その３）。
【図８】図１に示すＮｏＣシステムによるフリットグループの転送態様の一例を示す図である。
【図９】図１に示すＮｏＣシステムによる効果を説明するための図である（その１）。
【図１０】図１に示すＮｏＣシステムによる効果を説明するための図である（その２）。
【図１１】図１に示すＮｏＣシステムにおける宛先グループ分割部による別の分割手法を説明するための図である。
【図１２】第２の実施の形態にかかるメッシュ型のＮｏＣシステムを示す図である。
【図１３】図１２に示すＮｏＣシステムにおけるルータを示す図である。
【図１４】図１３に示すルータの宛先グループ分割部による処理の流れの一例を示すフローチャートである。
【図１５】図１３に示すルータにおける宛先グループ分割部の回路構成の一例を示す図である。
【図１６】図１２に示すＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その１）。
【図１７】図１２に示すＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その２）。
【図１８】図１２に示すＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その３）。
【図１９】第３の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である。
【図２０】第４の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その１）。
【図２１】第４の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その２）。
【図２２】第４の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その３）。
【図２３】第５の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その１）。
【図２４】第５の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その２）。
【図２５】第６の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その１）。
【図２６】第６の実施の形態にかかるメッシュ型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である（その２）。
【図２７】ＮｏＣシステムのネットワークトポロジを示す図である。
【図２８】メッシュ型のＮｏＣシステムにおけるルータのハードウェア構成を説明するための図である。
【図２９】図２８に示すルータと、該ルータと接続された他の機能ブロックとの座標関係を説明するための図である。
【図３０】ＮｏＣのパケット構成を説明するための図である。
【図３１】固定型のＮｏＣシステムによるフリットグループの転送態様の一例を示す図である。
【発明を実施するための形態】
【００５４】
説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００５５】
また、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００５６】
＜第１の実施の形態＞
図１は、第１の実施の形態にかかるＮｏＣシステム１００を示す。ＮｏＣシステム１００は、ツリー型のＮｏＣシステムであり、大きい矩形により示される複数のルータ（Ｒ１１〜Ｒ３４）を備える。また、夫々のルータは、小さい矩形により示されるＮＩ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）を介して、丸により示されるプロセッサ・コアなどのＩＰと接続されている。
【００５７】
ＮｏＣシステム１００は、例として３階層を有し、第１の階層にはＲ１１とＲ１２の２つのルータが設けられており、第２の階層にはＲ２１〜Ｒ２３の３つのルータが設けられている。また、第３の階層には、Ｒ３１〜Ｒ３４の４つのルータが設けられている。第１の階層の各ルータと第３の階層の各ルータは、第２の階層の全てのルータと接続されている。なお、同階層のルータ同士は、互いに接続されていない。
【００５８】
図１において、「Ｒ」がルータを示し、Ｒに続く２つの数字は、該ルータが設けられた階層と、該階層における位置（例えば配列順）を夫々示す。例えば、Ｒ２２は、第２の階層の２番目に設けられたルータを意味する。
【００５９】
ＮｏＣシステム１００において、各ルータに夫々接続されたＩＰとＮＩは、同一の構成を有する。ここで、ルータＲ１１に接続されたＮＩ１１とＩＰ１１を代表にして説明する。なお、図１に示す例では、各ルータは、１つのＮＩを介して１つのＩＰと接続されるようになっているが、ルータには、必ずＩＰが接続されるとは限らず、また、接続されるＩＰの数も１つとは限らない。
【００６０】
ＩＰ１１は、ＮＩ１１にデータを出力する際に、該データの宛先を複数指定可能である。この点を除き、ＩＰ１１は、通常のＮｏＣシステムにおけるＩＰと同様である。
【００６１】
ＮＩ１１は、ＩＰ１１により１つのデータに対して複数の宛先を指定可能であると共に、複数の宛先が指定されたデータをパケット化する際に、宛先情報を含むフリット（以下「宛先情報フリット」という）における宛先情報として、ＩＰ１１により指定された複数の宛先を示すものを生成する。この点を除き、ＮＩ１１は、通常のＮｏＣシステムにおけるＮＩと同様である。そのため、ＮＩ１１について、パケット化と関連する構成についてのみを説明し、他の構成を省略する。
【００６２】
図２は、ＮＩ１１を示す。ＮＩ１１は、受信部１１２、パケット化部１１４、送信部１１６を備える。
【００６３】
受信部１１２は、ＩＰ１１から、データＤ０、及び該データＤ０の複数の目的地を夫々示すアドレスＡＤ１、ＡＤ２、・・・を受信すると、それらをパケット化部１１４に出力する。
【００６４】
パケット化部１１４は、受信部１１２からのデータＤ０と、複数のアドレスとからフリットグループＦＬＧを生成する。フリットグループＦＬＧは、ヘッドフリットＦＬ１と、ボディフリットＦＬ２、・・・を備え、ボディフリットの最後のフリットは、テイルフリットである。また、フリットグループＦＬＧには、宛先情報フリットが含まれている。本実施の形態において、例として、宛先情報フリットは、ヘッドフリットＦＬ１である。
【００６５】
図３は、ＮＩ１１により生成された宛先情報フリット（ここではヘッドフリットＦＬ１）を示す。宛先情報フリットＦＬ１は、ヘッダ１２２、制御信号部１２４、出発地情報１２６、宛先情報１２８を備える。
【００６６】
ヘッダ１２２、制御信号部１２４、出発地情報１２６は、従来のＮｏＣシステムにおける宛先情報フリットの相対応するものと夫々同様である。例えば、ヘッダ１２２は、該フリットがヘッドフリットと宛先情報フリットであることを示す情報が含まれている。
【００６７】
宛先情報１２８は、複数の宛先（宛先ＤＥＳ１、宛先ＤＥＳ２、・・・）を示す情報であり、これらの宛先は、アドレスＡＤ１、アドレスＡＤ２と夫々同一である。宛先ＤＥＳ１は、例えば、階層と、該階層における位置を示すものである。
【００６８】
ＮｏＣシステム１００の各ルータは、自身と接続されたＮＩと、他のルータからフリットグループを受信し、受信したフリットグループを上記ＮＩ、または他のルータに転送する。これらのルータは、宛先情報が複数の宛先を示すフリットグループに対応する。
【００６９】
宛先情報が複数の宛先を示すフリットグループを受信したときに、ルータは、これらの複数の宛先を１つ以上の宛先グループに分割すると共に、宛先グループ毎に、該フリットグループを転送する。宛先情報が１つの宛先を示すフリットグループの場合には、通常のＮｏＣシステムにおけるルータと同様の処理を行うため、ＮｏＣシステム１００の各ルータについて、宛先情報が複数の宛先を示すフリットグループのルーティング処理に関連することについてのみ説明する。
【００７０】
図４は、ＮｏＣシステム１００におけるルータを示す。図示のように、該ルータは、宛先グループ分割部１３２、転送実行部１３４を備える。
【００７１】
宛先グループ分割部１３２は、宛先情報フリット（ここではヘッドフリットＦＬ１）が入力され、宛先情報フリットＦＬ１に含まれる宛先情報１２８が示す複数の宛先を１つ以上の宛先グループに分割する。具体的には、到達するまでの転送経路のうちの、当該ＮｏＣルータを起点とする一部の経路を共有可能な各宛先が、該一部の経路に出力する方向をグループ転送方向とする宛先グループに含まれるように、宛先情報１２８が示す複数の宛先を１つ以上の宛先グループ（宛先グループＤＥＳＧ１、宛先グループＤＥＳＧ２、・・）に分割する。
【００７２】
転送実行部１３４は、フリットグループの全てのフリットが入力され、宛先グループ分割部１３２により得られた宛先グループ毎に、該宛先グループに含まれない各宛先を宛先情報１２８から削除した上で、該フリットグループ内の各フリットを、該宛先グループのグループ転送方向に順次転送する。
【００７３】
図５〜図７を参照して、宛先グループ分割部１３２の処理をより具体的に説明する。
これらの図は、宛先グループ分割部１３２による処理の流れの一例をフローチャートである。説明上の便宜のため、ＮｏＣシステム１００において、各ルータに１つのＩＰのみが接続されているとする。
【００７４】
図５に示すように、宛先グループ分割部１３２は、まず、フリットグループの宛先情報１２８が示す複数の宛先のうちの１つ目の宛先が、自身が設けられたルータに該当するか否かを確認する（Ｓ１００、Ｓ１０２）。
【００７５】
該宛先が、宛先グループ分割部１３２自身が設けられたルータに該当する場合、宛先グループ分割部１３２は、該ルータに向かう方向をグループ転送方向とする宛先グループ（ＩＰグループ）を生成すると共に、該宛先を該ＩＰグループに割り当てる（Ｓ１０２：Ｙｅｓ、Ｓ１０４）。
【００７６】
一方、該宛先が、宛先グループ分割部１３２が設けられたルータに該当しない場合には、宛先グループ分割部１３２は、さらに、該宛先が下の階層（１つ下の階層と２つ下の階層）に位置するルータに該当するか否かを確認する（Ｓ１０２：Ｎｏ、Ｓ１０６）。
【００７７】
該宛先が下の階層に位置するルータである場合、宛先グループ分割部１３２は、第１の処理を行う（Ｓ１０６：Ｙｅｓ、Ｓ１１０）。
【００７８】
第１の処理の流れは、図６のフローチャートに示されている。図６に示すように、この場合、宛先グループ分割部１３２は、１つ下の階層に位置するいずれかのルータに向かう方向をグループ転送方向とする宛先グループ（下グループ）が既にあるか否かを確認する（Ｓ１１２）。
【００７９】
処理対象の宛先１つ目の宛先である場合、宛先グループがまだ１つも生成されていないため、宛先グループ分割部１３２は、下グループが無いと判断し、１つの下グループを生成する（Ｓ１１２：Ｎｏ、Ｓ１２４）。なお、この下グループのグループ転送方向は、例えば、宛先グループ分割部１３２により、１つ下の階層に位置する任意の１つのルータに向かうように決定される。
【００８０】
一方、ステップＳ１１２において、下グループが既にある場合には（Ｓ１１２：Ｙｅｓ）、宛先グループ分割部１３２は、処理対象の宛先が１つ下の階層のルータに該当するか否かを確認する（Ｓ１１４）。
【００８１】
該宛先が２つ以上下の階層に位置するルータに該当する場合、すなわち、ステップＳ１１４において「該当しない」結果になった場合には（Ｓ１１４：Ｎｏ）、宛先グループ分割部１３２は、該宛先を、ステップＳ１１２で確認した下グループに割り当てる（Ｓ１２２）。なお、ステップＳ１１２で確認した下グループが複数ある場合には、宛先グループ分割部１３２は、該宛先をこれらの下グループのうちのいずれか１つに割り当てるようにすればよい。
【００８２】
ステップＳ１１４において「該当する」結果になった場合、すなわち、処理対象の宛先が１つ下の階層に位置するルータに該当する場合、宛先グループ分割部１３２は、ステップＳ１１２で確認した下グループのグループ転送方向が、処理対象の宛先に該当するルータに向かう方向であるか否かを確認する（Ｓ１１４：Ｙｅｓ、Ｓ１１６）。
【００８３】
下グループのグループ転送方向が処理対象の宛先に該当するルータに向かう方向である場合（Ｓ１１６：Ｙｅｓ）、宛先グループ分割部１３２は、該宛先を、ステップＳ１１２で確認した下グループに割り当てる（Ｓ１２２）。
【００８４】
下グループのグループ転送方向が処理対象の宛先に該当するルータとは異なるルータに向かう方向である場合、宛先グループ分割部１３２は、処理対象の宛先に該当するルータに向かう方向をグループ転送方向とする新たな下グループを生成すると共に、生成した下グループに該宛先を割り当てる（Ｓ１１６：Ｎｏ、Ｓ１２４）。
【００８５】
宛先グループ分割部１３２は、このようにして、自身が設けられた階層より下の階層に位置するルータに該当する宛先を処理する。
【００８６】
図５に戻る。
処理対象の宛先が、宛先グループ分割部１３２の設けられたルータでもなければ、下の階層に位置するルータにも該当しない場合には（Ｓ１０２：Ｎｏ、Ｓ１０６：Ｎｏ）、宛先グループ分割部１３２は、該宛先が、上の階層（１つ上の階層と２つ上の階層）に位置するルータに該当するか否かを確認する（Ｓ１３０）。
【００８７】
該宛先が上の階層に位置するルータである場合、宛先グループ分割部１３２は、第２の処理を行う（Ｓ１３０：Ｙｅｓ、Ｓ１４０）。
【００８８】
第２の処理の流れは、図７のフローチャートに示されている。図７に示すように、この場合、宛先グループ分割部１３２は、１つ上の階層に位置するいずれかのルータに向かう方向をグループ転送方向とする宛先グループ（上グループ）が既にあるか否かを確認する（Ｓ１４２）。
【００８９】
処理対象の宛先１つ目の宛先である場合、宛先グループがまだ１つも生成されていないため、宛先グループ分割部１３２は、上グループが無いと判断し、１つの上グループを生成する（Ｓ１４２：Ｎｏ、Ｓ１５４）。なお、この上グループのグループ転送方向は、例えば、宛先グループ分割部１３２により、１つ上の階層に位置する任意の１つのルータに向かうように決定される。
【００９０】
一方、ステップＳ１４２において、上グループが既にある場合には（Ｓ１４２：Ｙｅｓ）、宛先グループ分割部１３２は、処理対象の宛先が１つ上の階層のルータに該当するか否かを確認する（Ｓ１４４）。
【００９１】
該宛先が２つ以上上の階層に位置するルータに該当する場合、すなわち、ステップＳ１４４において「該当しない」結果になった場合には（Ｓ１４４：Ｎｏ）、宛先グループ分割部１３２は、該宛先を、ステップＳ１４２で確認した上グループに割り当てる（Ｓ１５２）。なお、ステップＳ１４２で確認した上グループが複数ある場合には、宛先グループ分割部１３２は、該宛先をこれらの上グループのうちのいずれか１つに割り当てるようにすればよい。
【００９２】
ステップＳ１４４において「該当する」結果になった場合、すなわち、処理対象の宛先が１つ上の階層に位置するルータに該当する場合、宛先グループ分割部１３２は、ステップＳ１４２で確認した上グループのグループ転送方向が、処理対象の宛先に該当するルータに向かう方向であるか否かを確認する（Ｓ１４４：Ｙｅｓ、Ｓ１４６）。
【００９３】
上グループのグループ転送方向が処理対象の宛先に該当するルータに向かう方向である場合（Ｓ１４６：Ｙｅｓ）、宛先グループ分割部１３２は、該宛先を、ステップＳ１４２で確認した上グループに割り当てる（Ｓ１２２）。
【００９４】
上グループのグループ転送方向が処理対象の宛先に該当するルータとは異なるルータに向かう方向である場合、宛先グループ分割部１３２は、処理対象の宛先に該当するルータに向かう方向をグループ転送方向とする新たな上グループを生成すると共に、生成した上グループに該宛先を割り当てる（Ｓ１４６：Ｎｏ、Ｓ１５４）。
【００９５】
宛先グループ分割部１３２は、このようにして、自身が設けられた階層より上の階層に位置するルータに該当する宛先を処理する。
【００９６】
図５に戻る。
処理対象の宛先が、宛先グループ分割部１３２の設けられたルータが位置する階層と同階層の他のルータである場合（Ｓ１０２：Ｎｏ、Ｓ１０６：Ｎｏ、Ｓ１３０：Ｎｏ）、宛先グループ分割部１３２は、下グループが既にあれば、該宛先を該下グループに割り当てる（Ｓ１６０：Ｙｅｓ、Ｓ１６２）。
【００９７】
下グループが無く、上グループがある場合（Ｓ１６０：Ｎｏ、Ｓ１７０：Ｙｅｓ）、宛先グループ分割部１３２は、該宛先を該上グループに割り当てる（Ｓ１７２）。
【００９８】
下グループと上グループのいずれも無い場合には（Ｓ１６０：Ｎｏ、Ｓ１７０：Ｎｏ）、宛先グループ分割部１３２は、自身が設けられたルータの位置する階層が一番下の階層であるか否かに応じて異なるグループ生成する。具体的には、宛先グループ分割部１３２は、自身が設けられたルータの位置する階層が一番下の階層ではないときに、１つの下グループを生成すると共に、生成した下グループに該宛先を割り当てる（Ｓ１７４：Ｎｏ、Ｓ１７６）。一方、自身が設けられたルータの位置する階層が一番下の階層であるときには、宛先グループ分割部１３２は、１つの上グループを生成すると共に、生成した上グループに該宛先を割り当てる（Ｓ１７４：Ｙｅｓ、Ｓ１７８）。
【００９９】
宛先グループ分割部１３２は、ステップＳ１０２からの処理を、最後の宛先の処理が完了するまで繰り返す（Ｓ１８０：Ｎｏ、Ｓ１８２、Ｓ１０２〜）。
【０１００】
最後の宛先の処理の完了をもって、フリットグループに含まれる複数の宛先は、１つ以上の宛先グループ（ＩＰグループ、下グループ、上グループ）に分割される。
【０１０１】
図８は、本実施の形態のＮｏＣシステム１００におけるフリットグループの転送態様の一例を示す。図８は、ルータＲ１２、ルータＲ２２、ルータＲ３３の３つを宛先とするフリットグループがルータＲ１１から転送する例である。
【０１０２】
なお、このフリットグループの宛先情報１２８が示す３つの宛先が、Ｒ３３、Ｒ１２、Ｒ２２である。
【０１０３】
ルータＲ１１は、まず、１つ目の宛先（ルータＲ３３）を処理する。ルータＲ３３が２つ下の階層に位置するルータであるため、ルータＲ１１は、１つの下グループを生成し、ルータＲ３３を該下グループに割り当てる。なお、この下グループのグループ転送方向が、ルータＲ２３に向かう方向であるとする。
【０１０４】
次いで、ルータＲ１１は、２つ目の宛先（ルータＲ１２）を処理する。ルータＲ１２が、ルータＲ１１と同階層に位置し、かつ、既に下グループがあるため、ルータＲ１１は、ルータＲ１２を該下グループに割り当てる。その結果、ルータＲ２３をグループ転送方向とする下グループには、ルータＲ１２とルータＲ３３が含まれることになる。
【０１０５】
次いで、ルータＲ１１は、最後の宛先（ルータＲ２２）を処理する。ルータＲ２２は、１つ下の階層に位置する。また、下グループが既にあるものの、該下グループのグループ転送方向がルータＲ２３に向かう方向であり、ルータＲ２２に向かう方向ではないため、ルータＲ１１は、ルータＲ２２に向かう方向をグループ転送方向とする下グループを新たに生成すると共に、ルータＲ２２をこの下グループに割り当てる。
【０１０６】
その結果、ルータＲ２３には、宛先情報がルータＲ１２とルータＲ３３を示すフリットグループが転送され、ルータＲ２２には、宛先情報がルータＲ２２のみを示すフリットグループが転送される。
【０１０７】
ルータＲ２２は、該フリットグループを自身と接続されたＩＰに転送する。
ルータＲ２３の処理を説明する。
【０１０８】
ルータＲ１２が１つ上の階層に位置し、かつ、上グループが無いため、ルータＲ２３は、ルータＲ１２に向かう方向をグループ転送方向とする上グループを生成し、ルータＲ１２を該上グループに割り当てる。
【０１０９】
また、ルータＲ３３が１つ下の階層に位置し、かつ、下グループが無いため、ルータＲ２３は、ルータＲ３３に向かう方向をグループ転送方向とする下グループを生成し、ルータＲ３３を該下グループに割り当てる。
【０１１０】
その結果、ルータＲ１２には、宛先情報がルータＲ１２のみを示すフリットグループが転送され、ルータＲ３３には、宛先情報がルータＲ３３のみを示すフリットグループが転送される。ルータＲ１２とルータＲ３３は、自身に接続されたＩＰに、受信したフリットグループを転送する。
【０１１１】
図８に示すように、ＮｏＣシステム１００において、ルータＲ１１に接続されたＩＰからルータＲ１２、ルータＲ２２、ルータＲ３３へ同じデータを送信する場合に、４ホップで全ての目的地にデータが到達する。
【０１１２】
ここで、ＮｏＣシステム１００が従来のＮｏＣシステムであると仮定して、ルータＲ１１に接続されたＩＰからルータＲ１２、ルータＲ２２、ルータＲ３３へ同じデータを送信する場合、全ての目的地にデータが到達するまでにかかるホップ数を考える。
【０１１３】
図９は、固定型のＮｏＣシステム場合の例である。また、ルータＲ１１から、ルータＲ１２とルータＲ３３のいずれにフリットグループを転送するときも、ルータＲ２３が経由されるようになっているとする。
【０１１４】
図９に示すように、この場合、ルータＲ１１→ルータＲ２２の転送、ルータＲ１１→Ｒ２３→Ｒ３３の転送、ルータＲ１１→Ｒ２３→Ｒ１２の転送が行われ、計５ホップが必要である。
【０１１５】
また、例えば、Ｒ１２を宛先とするフリットグループ（フリットグループＡ）がルータＲ１１によりルータＲ２３に転送されているときに、ルータＲ３３を宛先とするフリットグループ（フリットグループＢ）がＮＩからルータＲ１１に出力されても、フリットグループＡの転送が完了するまで、フリットグループＢの転送が開始されない。
【０１１６】
図１０は、適応型のＮｏＣシステム場合の例であり、ルータＲ１１からルータ１２への転送はルータＲ２１を経由し、ルータＲ１１からルータＲ３３への転送はルータＲ２３を経由しているようになっているとする。
【０１１７】
図１０に示すように、この場合、ルータＲ１１→ルータＲ２２の転送、ルータＲ１１→Ｒ２３→Ｒ３３の転送、ルータＲ１１→Ｒ２１→Ｒ１２の転送が行われ、図９に示す固定型の場合と同様に、計５ホップが必要である。
【０１１８】
このように、本実施の形態のＮｏＣシステム１００によれば、従来の固定型と適応型のいずれのタイプのＮｏＣシステムよりも、ホップ数を削減することができる。
【０１１９】
なお、図８に示す例では、１ホップの削減効果しか得られていない。勿論、階層数が多いほど、また、一度に送信する宛先数が多いほど、ＮｏＣシステム１００によるホップ数の削減効果は、大きくなる。
【０１２０】
さらに、ＮｏＣシステム１００は、従来の固定型のＮｏＣシステムと比べ、転送経路の一部が重複する複数の宛先への転送時に生じる待ちを回避し、転送効率を一層高めることができる。また、適応型のＮｏＣシステムと比べ、制御が簡単であり、ルータの負荷が小さいという利点もある。
【０１２１】
ここで、図８に戻る。図８に示す例では、ルータＲ１１は、２つの下グループを生成している。しかし、ルータＲ１２とルータＲ３３への転送も、ルータＲ２２を経由するようにすることができる。
【０１２２】
このようなことを実現するために、ＮｏＣシステム１００における宛先グループ分割部１３２は、下記のように宛先の分割を行うことが好ましい。
【０１２３】
つまり、宛先グループ分割部１３２は、フリットグループの宛先情報が示す複数の宛先のうちに、１つ下の階層に位置するＮｏＣルータ（第１のＮｏＣルータとする）に該当する宛先がある場合に、該宛先と、２つ以上下の階層に位置するＮｏＣルータに該当する各宛先とが、第１のＮｏＣルータに向かう方向をグループ転送方向とする下グループに含まれるようにする。
【０１２４】
さらに、宛先グループ分割部１３２は、自身が設けられたＮｏＣルータと同階層に位置する他のＮｏＣルータに該当する各宛先が、他の宛先を含む１つの下グループ、または、他の宛先を含む１つの上グループに含まれるようにする。
【０１２５】
同様に、宛先グループ分割部１３２は、フリットグループの宛先情報が示す複数の宛先のうちに、１つ上の階層に位置するＮｏＣルータ（第２のＮｏＣルータとする）に該当する宛先がある場合に、該宛先と、２つ以上上の階層に位置するＮｏＣルータに該当する各宛先とが、第２のＮｏＣルータに向かう方向をグループ転送方向とする上グループに含まれるようにする。
【０１２６】
宛先グループ分割部１３２がこのように分割を行う場合、図８に示すフリットグループの転送態様は、図１１に示すようになる。
【０１２７】
ルータＲ１１にとって、ルータＲ２２が第１のＮｏＣルータであり、ルータＲ３３が２つ下の階層に位置するルータであり、ルータＲ１２が同階層のルータである。そのため、宛先グループ分割部１３２は、ルータＲ２２に向かう方向をグループ転送方向とする下グループを生成して、全ての宛先（ルータＲ２２、ルータＲ３３、ルータＲ１２）を該下グループに割り当てる。
【０１２８】
その結果、ルータＲ１１から１つのフリットグループのみが転送される。このフリットグループは、ルータＲ２２に転送され、宛先情報が、ルータＲ２２、ルータＲ３３、ルータＲ１２の３つを示す。
【０１２９】
ルータＲ２２は、宛先情報からルータＲ１２とルータＲ３３を削除し、ルータＲ１２のみを示す宛先情報を有するフリットグループをＩＰに転送する。
【０１３０】
また、ルータＲ２２は、宛先情報からルータＲ２２とルータＲ３３を削除し、ルータＲ１２のみを示す宛先情報を有するフリットグループをルータＲ１２に転送する。
【０１３１】
さらに、ルータＲ２２は、宛先情報からルータＲ２２とルータＲ１２を削除し、ルータＲ３３のみを示す宛先情報を有するフリットグループをルータＲ３３に転送する。
【０１３２】
図１１に示すように、この例では、ＮｏＣシステム１００において、ルータＲ１１に接続されたＩＰからルータＲ１２、ルータＲ２２、ルータＲ３３へ同じデータを送信する場合、３ホップで全ての目的地にデータが到達する。図８と図１１を比較すると明らかように、ホップ数の削減効果は、一層高められている。
【０１３３】
なお、上記において、例として、現在のルータと同階層の他のルータに該当する宛先は、下グループに割り当てられるようになっている。現在のルータが第２の階層以下の階層に位置する場合には、同階層の他のルータに該当する宛先を、上グループに割り当てるようにしてもよい。
【０１３４】
＜第２の実施の形態＞
図１２は、第２の実施の形態にかかるＮｏＣシステム２００を示す。ＮｏＣシステム２００は、メッシュ型のＮｏＣシステムである。図１２において、丸（２０２）はプロセッサ・コアなどのＩＰであり、小さい矩形（２０４）はＮＩ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）であり、大きい矩形（２１０）はルータである。
【０１３５】
ＩＰ２０２は、第１の実施の形態にかかるＮｏＣシステム１００においてＩＰ１１と同様に、１つのデータに対して複数の目的地を指定できる。また、ＮＩ２０４も、ＮｏＣシステム１００においてＮＩ１１と同様に、ＩＰ２０２からのデータをパケット化する際に、該データに対してＩＰ２０２が指定した複数の目的地を含む宛先情報を生成する。ＮＩ２０４により作成された宛先情報フリットのフォーマットは、例えば図３に示したものと同様である。
【０１３６】
なお、図１２に示す例では、各ルータ２１０は、１つのＮＩ２０４を介して１つのＩＰ２０２と接続されるようになっているが、ルータ２１０には、必ずＩＰが接続されるとは限らず、また、接続されるＩＰの数も１つとは限らない。
【０１３７】
図１３は、ＮｏＣシステム２００におけるルータ２１０を示す。分かりやすいように、図１３は、ルータ２１０に対して、フリットグループが入力される側と、フリットグループを出力する側とを分けて示している。
【０１３８】
なお、図１３に示すルータ２１０は、５入力５出力のルータであり、右隣のルータ（Ｘ＋）、左隣のルータ（Ｘ−）、真上のルータ（Ｙ＋）、真下のルータ（Ｙ−）、ＩＰ２０２からフリットグループが入力され、これらの機能ブロックにフリットグループを出力する。
【０１３９】
ここで、ＩＰ２０２が接続されており、かつ、上下左右に計４つの隣接ルータがあるルータ２１０を説明する。ＩＰ２０２が接続されていない場合には、ＩＰ２０２との間の入出力を含む処理をしない。また、上下左右の４つの方向のうちのいずれかの方向に隣接ルータが接続されていない場合には、該方向の隣接ルータとの間の入出力を含む処理をしない。例えば、ＮｏＣシステム２００の左下端のルータ２１０は、左と真下の隣接ルータがないため、これらのルータとの間の入出力処理をしない。これらに関して、以下の説明において繰り返さない。
【０１４０】
図１３に示すように、ルータ２１０は、５つのバッファ（ＦＩＦＯ２２０〜２２８）、調停器２３０、ＲＯＭ２４０、転送実行部２６０を備える。転送実行部２６０は、５つのセレクタ（セレクタ２７０〜２７８）、５つの宛先情報書換部（宛先情報書換部２８０〜２８８）を有する。
【０１４１】
ＦＩＦＯ２２０〜２２８は、右隣ルータ、左ルータ、真上ルータ、真下ルータ、ＩＰ２０２（すなわちＮＩ２０４）に夫々対応し、これらの機能ブロックから送信されてきたフリットグループを一時的に格納する。
【０１４２】
調停器２３０は、ＦＩＦＯ２２０〜２２８のうちのどのバッファ内に格納されたフリットグループを転送するかの調停を行い、調停の結果に応じたＦＩＦＯ選択信号Ｓ１を宛先グループ分割部３００に出力する。
【０１４３】
ＲＯＭ２４０は、宛先グループ分割部３００による処理のアルゴリズムを記述したプログラムＰを格納しており、ＮｏＣシステム２００の起動時に宛先グループ分割部３００にロードされる。つまり、ＲＯＭ２４０に格納されたプログラムＰを変更することにより、宛先グループ分割部３００の処理を変更可能である。
【０１４４】
宛先グループ分割部３００は、プログラムＰの実行と、後述する各ハードウェアブロックとの協働により、調停器２３０からのＦＩＦＯ選択信号Ｓ１が示すＦＩＦＯからフリットグループの宛先情報フリット（ヘッドフリットとする）を読み出して、該宛先情報が示す複数の宛先を１つ以上の宛先グループに分割する。
【０１４５】
本実施の形態において、宛先グループ分割部３００は、到達するまでの転送経路のうちの、当該ルータ２１０を起点とする一部の経路を共有可能な各宛先が、該一部の経路に出力する方向をグループ転送方向とする宛先グループに含まれるように、宛先情報１２８が示す複数の宛先を１つ以上の宛先グループに分割する。そして、分割の結果に応じて転送実行部２６０を制御する。
【０１４６】
より具体的には、宛先グループ分割部３００は、到達するまでに、ルータ２１０に接続されたＩＰ２０２へ向かう方向と、Ｘ軸の正方向（Ｘ＋へ向かう方向）と、Ｘ軸の負方向（Ｘ−へ向かう方向）と、Ｙ軸の正方向（Ｙ＋へ向かう方向）と、Ｙ軸の負方向（Ｙ−へ向かう方向）の５つの方向のうちの同一の１つの方向への転送が必要な各宛先が、該同一の１つの方向をグループ転送方向とする１つの宛先グループに含まれるように、フリットグループの宛先情報１２８に含まれる複数の宛先を１つ以上の宛先グループに分割する。
【０１４７】
図１４のフローチャートを参照して、宛先グループ分割部３００による宛先の分割処理の流れを説明する。
【０１４８】
本実施の形態において、宛先情報が示す各宛先は、該宛先に該当するルータの座標値（Ｘ座標値，Ｙ座標値）である。
図１４に示すように、宛先グループ分割部３００は、まず、フリットグループの宛先情報が示す複数の宛先のうちの、１番目の宛先のＸ座標値が、宛先グループ分割部３００自身が設けられたルータ２１０のＸ座標値（Ｘ０）と一致するか否かを確認する（Ｓ２００）。
【０１４９】
そして、１番目の宛先のＸ座標値とＸ０が一致する場合に、宛先グループ分割部３００は、さらに、該宛先のＹ座標値が、宛先グループ分割部３００自身が設けられたルータ２１０のＹ座標値（Ｙ０）と一致するか否かを確認する（Ｓ２０２：Ｙｅｓ、Ｓ２１０）。
【０１５０】
宛先のＹ座標値とＹ０が一致する場合に、宛先グループ分割部３００は、自身が設けられたルータが該宛先に該当するとして、該宛先を、ＩＰへ向かう方向をグループ転送方向とするＩＰグループに決定する（Ｓ２１０：Ｙｅｓ、Ｓ２１２）。
【０１５１】
一方、該宛先は、Ｘ座標値がＸ０と一致し、Ｙ座標値がＹ０と一致しない場合には（Ｓ２０２：Ｙｅｓ、Ｓ２１０：Ｎｏ）、宛先グループ分割部３００は、該宛先のＹ座標値がＹ０より大きいときには、上の隣接ルータに向かう方向をグループ転送方向とする「Ｙ＋グループ」に該宛先を割り当てる（Ｓ２１４：Ｙｅｓ、Ｓ２１６）。また、該宛先のＹ座標値がＹ０より小さいときには、宛先グループ分割部３００は、下の隣接ルータに向かう方向をグループ転送方向とする「Ｙ−」グループに該宛先を割り当てる（Ｓ２１４：Ｎｏ、Ｓ２１８）。
【０１５２】
ステップＳ２０２において、宛先のＸ座標値とＸ０が一致しない場合に（Ｓ２０２：Ｎｏ）、宛先グループ分割部３００は、該宛先のＸ座標値がＸ０より大きいときには、右隣ルータに向かう方向をグループ転送方向とする「Ｘ＋グループ」に該宛先を割り当てる（Ｓ２０４：Ｙｅｓ、Ｓ２０６）。一方、該宛先のＸ座標値がＸ０より小さいときには、左隣ルータに向かう方向をグループ転送方向とする「Ｘ−」グループに該宛先を割り当てる（Ｓ２０４：Ｎｏ、Ｓ２０８）。
【０１５３】
宛先グループ分割部３００は、フリットグループの宛先情報が示す複数の宛先のうちの最後の宛先に対する上述の処理が完了するまで、ステップＳ２０２からの処理を繰り返す（Ｓ２２０：Ｎｏ、Ｓ２２２、Ｓ２０２〜）。
【０１５４】
このように、宛先グループ分割部３００は、Ｘ軸に沿った１つの転送方向のみが必要な宛先を、該転送方向をグループ転送方向とする宛先グループに決定する。また、宛先グループ分割部３００は、Ｙ軸に沿った１つの転送方向のみが必要な宛先を、該転送方向をグループ転送方向とする宛先グループに決定する。
【０１５５】
Ｘ軸とＹ軸の両方に夫々沿った２つの転送方向が必要な宛先の場合、宛先グループ分割部３００は、Ｘ軸を優先軸として、該宛先を、上記２つの転送方向のうちの、Ｘ軸に沿った転送方向をグループ転送方向とする宛先グループに決定する。
【０１５６】
宛先グループ分割部３００がＦＩＦＯ２２０〜２２８のいずれか１つに格納されたフリットグループの宛先情報フリットＦＬ１を読み出し、宛先グループを決定した後に、該フリットグループの各フリットは、当該ＦＩＦＯから転送実行部２６０に出力される。
【０１５７】
転送実行部２６０は、宛先グループ分割部３００により得られた宛先グループ毎に、該宛先グループ内の宛先のみを含むものに宛先情報を書き換えた上で、該フリットグループ内の各フリットを、該宛先グループのグループ転送方向に順次転送する。
【０１５８】
転送実行部２６０において、セレクタ２７０〜２７８の夫々は、５つのＦＩＦＯ２２０〜２２８の全てに接続されている。すなわち、いずれのＦＩＦＯから出力されたフリットグループも、セレクタ２７０〜２７８に入力される。
【０１５９】
セレクタ２７０〜２７８は、宛先グループ分割部３００からのイネーブル信号ＥＮにより制御される。イネーブル信号ＥＮは、セレクタ２７０〜２７８のうちの１つ以上を選択的にイネーブルする信号である。
【０１６０】
セレクタ２７０〜２７８のうちのイネーブルされた各セレクタは、選択動作を行う。その結果、ＦＩＦＯ２２０〜２２８のうちに、宛先グループ分割部３００により宛先情報フリットが読みされたＦＩＦＯにおける先頭のフリットグループは、イネーブルされたセレクタから出力される。
【０１６１】
宛先情報書換部２８０〜２８８は、セレクタ２７０〜２７８と一対一に接続しており、セレクタ２７０〜２７８の出力は、宛先情報書換部２８０〜２８８に夫々出力される。
【０１６２】
例えば、セレクタ２７０とセレクタ２７２がイネーブルされた場合に、宛先情報書換部２８０と宛先情報書換部２８２に同一のフリットグループが入力され、セレクタ２７０のみがイネーブルされた場合には、宛先情報書換部２８０にのみフリットグループが入力される。
【０１６３】
後に詳細を説明するが、宛先グループ分割部３００は、セレクタ２７０〜２７８のうちのイネーブルした各セレクタに夫々対応する宛先情報書換部に、異なる座標情報ＣＯを入力する。１つの座標情報ＣＯは、宛先グループ分割部３００により得られた１つの宛先グループに含まれる全ての宛先を示すものである。
【０１６４】
宛先情報書換部２８０〜２８８のうちの、座標情報ＣＯが入力された宛先情報書換部は、入力されたフリットグループ内の宛先情報フリットに含まれる宛先情報を、座標情報ＣＯに書き換えた上で、該フリットグループを出力する。
【０１６５】
なお、宛先情報書換部２８０〜２８８は、右隣のルータ（Ｘ＋）と、左隣のルータ（Ｘ−）と、真上のルータ（Ｙ＋）と、真下のルータ（Ｙ−）、ＩＰ２０２（正確にはＮＩ２０４）に夫々接続されている。
【０１６６】
図１５は、宛先グループ分割部３００の構成の一例を示す。図１５に示す例では、宛先グループ分割部３００は、セレクタ３１０、宛先解析部３１２、受信レジスタ３１４、座標レジスタ３１６、比較器３１８、比較器３２０、座標演算部３２２、セレクタ３２４、レジスタ３２６、送信レジスタ３３０を備える。
【０１６７】
セレクタ３１０は、調停器２３０からのＦＩＦＯ選択信号Ｓ１が示すＦＩＦＯを選択し、該ＦＩＦＯの先頭にあるフリットグループの宛先情報フリット（ヘッドフリットＦＬ１）を宛先解析部３１２に出力する。
【０１６８】
宛先解析部３１２は、宛先情報フリットＦＬ１に含まれる宛先情報を解析し、該宛先情報が示す各宛先を抽出して受信レジスタ３１４に格納する。前述した通り、本実施の形態において、宛先は、該宛先に該当するルータの座標値である。
【０１６９】
受信レジスタ３１４は、宛先解析部３１２が得た各宛先を格納すると共に、座標演算部３２２からのレジスタ選択信号Ｓ２に従って、該レジスタ選択信号Ｓ２が示す１つの宛先を出力する。なお、座標演算部３２２は、受信レジスタ３１４に格納された最後の宛先が出力されるまで、各宛先が順次出力されるように、レジスタ選択信号Ｓ２を受信レジスタ３１４に出力する。
【０１７０】
座標レジスタ３１６は、宛先グループ分割部３００自身が設けられたルータ２１０の座標値（Ｘ０，Ｙ０）を格納している。
【０１７１】
比較器３１８は、座標レジスタ３１６に格納されたＸ座標値（Ｘ０）と、受信レジスタ３１４が出力した宛先のＸ座標値とを比較し、「一致」、「Ｘ＋」、「Ｘ−」のいずれか１つを示す比較結果を座標演算部３２２に出力する。
【０１７２】
比較器３１８は、具体的には、座標レジスタ３１６に格納されたＸ座標値（Ｘ０）と、受信レジスタ３１４からのＸ座標値とが同一である場合に「一致」を示す信号を出力する。また、受信レジスタ３１４からのＸ座標値がＸ０より大きいときには、比較器３１８は、「Ｘ＋」を示す信号を出力する。また、受信レジスタ３１４からのＸ座標値がＸ０より小さいときには、比較器３１８は、「Ｘ−」を示す信号を出力する。
【０１７３】
すなわち、比較器３１８が出力した信号は、当該宛先が、到達するまでに、Ｘ軸における転送が必要か否か、必要な場合には正方向か負方向のいずれの方向への転送が必要であるかを示す信号である。
【０１７４】
比較器３２０は、座標レジスタ３１６に格納されたＹ座標値（Ｙ０）と、受信レジスタ３１４が出力した宛先のＹ座標値とを比較し、「一致」、「Ｙ＋」、「Ｙ−」のいずれか１つを示す比較結果を座標演算部３２２に出力する。
【０１７５】
比較器３２０は、具体的には、座標レジスタ３１６に格納されたＹ座標値（Ｙ０）と、受信レジスタ３１４からのＹ座標値とが同一である場合に「一致」を示す信号を出力する。また、受信レジスタ３１４からのＹ座標値がＹ０より大きいときには、比較器３２０は、「Ｙ＋」を示す信号を出力する。また、受信レジスタ３１４からのＹ座標値がＹ０より小さいときには、比較器３２０は、「Ｙ−」を示す信号を出力する。
【０１７６】
すなわち、比較器３２０が出力した信号は、当該宛先が、Ｙ軸における転送が必要であるか否か、必要な場合には正方向か負方向のいずれの方向への転送が必要であるかを示す信号である。
【０１７７】
受信レジスタ３１４が座標演算部３２２からのレジスタ選択信号Ｓ２に従って出力した宛先の座標値は、レジスタ３２６にも出力される。
【０１７８】
レジスタ３２６は、バッファとして機能するレジスタであり、受信レジスタ３１４からの宛先の座標値を一時的に格納する。
【０１７９】
座標演算部３２２は、ＲＯＭ２４０からロードしたプログラムＰを実行し、比較器３１８と比較器３２０からの比較結果に応じて、該宛先が属すべき宛先グループを決定する。そして、座標演算部３２２は、決定に応じて、イネーブル信号ＥＮを生成してセレクタ２７０〜２７８のうちの該当するセレクタに出力すると共に、宛先グループ選択信号Ｓ３を生成してセレクタ３２４に出力する。
【０１８０】
セレクタ３２４は、座標演算部３２２から宛先グループ選択信号Ｓ３を受信すると、レジスタ３２６に格納されている宛先を、送信レジスタ３３０に出力する。
【０１８１】
送信レジスタ３３０は、宛先情報書換部２８０〜２８８に夫々対応する領域を有し、各領域は、複数の宛先を格納できる。
【０１８２】
座標演算部３２２が出力した宛先グループ選択信号Ｓ３は、送信レジスタ３３０の５つ領域のうちの１つを示すものであり、セレクタ３２４は、宛先グループ選択信号Ｓ３に従って、レジスタ３２６に格納された宛先を、宛先グループ選択信号Ｓ３が示す領域に出力する。
【０１８３】
受信レジスタ３１４に格納された全ての宛先が送信レジスタ３３０に書き込まれた後に、宛先情報書換部２８０〜２８８のうちの該当する各宛先情報書換部は、送信レジスタ３３０の対応する領域から、該領域に格納された各宛先を読み出す。これらの宛先は、前述した座標情報ＣＯである。
【０１８４】
図１６は、ＮｏＣシステム２００によるフリットグループの転送態様の一例を示す図である。この例において、ＩＰからフリットグループを受信するルータと、各宛先に該当する夫々のルータとの位置関係は、図３１に示す例と同様である。
【０１８５】
ルータＲ００は、ＩＰから受信したフリットグループの宛先情報がルータＲ６５とルータＲ８８を示し、いずれの宛先もＸ軸の正方向とＹ軸の正方向への転送が必要であるため、該フリットグループをＸ軸の正方向に沿って右のルータに転送する。
【０１８６】
ルータＲ００とルータＲ６０の間の各ルータも、ルータＲ００と同様の転送をするため、ルータＲ６０が受信したフリットグループの宛先情報は、相変わらずルータＲ６５とルータＲ８８を示す。
【０１８７】
ルータＲ６０にとって、ルータＲ６５に該当する宛先が、Ｙ軸の正方向への転送のみを必要とし、ルータＲ８８に該当する宛先が、Ｘ軸の正方向とＹ軸の正方向への転送が必要である。そのため、ルータＲ６０は、ルータＲ６５が、Ｙ軸の正方向をグループ転送方向とする宛先グループに含まれ、ルータＲ８８が、Ｘ軸の正方向をグループ転送方向とする宛先グループに含まれるように該２つの宛先を２つの宛先グループに分割する。
【０１８８】
その結果、宛先情報がルータＲ６５のみを示すフリットグループがルータＲ６０から１つ上のルータに転送され、ルータＲ６０とルータＲ６５間の各ルータを経由して、目的地のルータＲ６５に到達する。
【０１８９】
また、宛先情報がルータＲ８８のみを示すフリットグループがルータＲ６０から右に転送され、ルータＲ６０とルータＲ８０間の各ルータを経由してルータＲ８０に到達し、ルータＲ８０により１つ上のルータに転送され、ルータＲ８０とルータＲ８８間の各ルータを経由して、目的地のルータＲ８８に到達する。
【０１９０】
図１６に示すように、この例の場合には、全ての宛先にフリットグループが到達するまで、２１ホップが必要である。
対して、図３１の場合には、必要なホップ数が２７である。
【０１９１】
なお、図３１は、固定型のＮｏＣシステムの場合の例を示している。適応型の従来のＮｏＣシステムにおいて、ルータＲ００からルータＲ６５とルータＲ８８へ２つのフリットグループを転送する場合に、該２つのフリットグループの転送経路に共通した部分が無いようにすることができるが、かかるホップ数は、固定型のＮｏＣシステムの場合と変わらない。
【０１９２】
以上の説明から分かるように、本実施の形態のＮｏＣシステム２００によれば、従来の固定型と適応型のいずれのタイプのＮｏＣシステムよりも、ホップ数を削減することができる。
【０１９３】
また、固定型のＮｏＣシステムと比べ、転送経路の一部が重複する複数の宛先への転送時に生じる待ちを回避し、転送効率をより高めることができる。適応型のＮｏＣシステムと比べ、制御が簡単であり、ルータの負荷が小さいという利点がある。
【０１９４】
後の他の実施の形態と比較するために、ＮｏＣシステム２００によるフリットグループの転送態様の他の２つの例を図１７と図１８に示す。この２つの例において、全ての宛先にフリットグループが到達するまでに必要なホップ数は、夫々４１と４８である。
【０１９５】
＜第３の実施の形態＞
第２の実施の形態にかかるＮｏＣシステム２００において、宛先グループ分割部３００は、Ｘ軸を優先軸とし、Ｘ軸とＹ軸の両方に沿った転送方向が必要な宛先を、該２つの転送方向のうちの、Ｘ軸に沿った転送方向をグループ転送方向とする宛先グループに振り分けている。
【０１９６】
例えば、図１６に示すように、ルータＲ６０にとって、ルータＲ８８が、ルータＲ６０を原点とした座標系の第１象限にあり、Ｘ軸の正方向とＹ軸の正方向の両方の転送方向が必要な宛先である。そのため、ルータＲ６０は、ルータＲ８８を、Ｘ軸の正方向をグループ転送方向とする宛先グループに決定する。
【０１９７】
本第３の実施の形態も、メッシュ型のＮｏＣシステムであり、それに設けられた各ルータの宛先グループ分割部がＹ軸を優先軸とする点以外、第２の実施の形態にかかるＮｏＣシステム２００と同様である。
【０１９８】
すなわち、本実施の形態のＮｏＣシステムにおいて、宛先グループ分割部は、Ｘ軸とＹ軸の両方に沿った転送方向が必要な宛先を、該２つの転送方向のうちのＹ軸に沿った転送方向をグループ転送方向とする宛先グループに決定する。
【０１９９】
図１９は、本第３の実施の形態にかかるＮｏＣシステムによるフリットグループの転送態様の一例を示す図である。この例において、ＩＰからフリットグループを受信するルータと、各宛先に該当する夫々のルータとの位置関係は、図３１に示す例と同様である。
【０２００】
ルータＲ００は、ＩＰから受信したフリットグループの宛先情報がルータＲ６５とルータＲ８８を示し、いずれの宛先もＸ軸の正方向とＹ軸の正方向への転送が必要であるため、該フリットグループをＹ軸の正方向に沿って上のルータに転送する。
【０２０１】
ルータＲ００とルータＲ０５の間の各ルータも、ルータＲ００と同様の転送をするため、ルータＲ０５が受信したフリットグループの宛先情報は、相変わらずルータＲ６５とルータＲ８８を示す。
【０２０２】
ルータＲ０５にとって、ルータＲ６５に該当する宛先が、Ｘ軸の正方向への転送のみを必要とし、ルータＲ８８に該当する宛先が、Ｘ軸の正方向とＹ軸の正方向への転送が必要である。そのため、ルータＲ０５は、ルータＲ６５が、Ｘ軸の正方向をグループ転送方向とする宛先グループに含まれ、ルータＲ８８が、Ｙ軸の正方向をグループ転送方向とする宛先グループに含まれるように該２つの宛先を２つの宛先グループに分割する。
【０２０３】
その結果、宛先情報がルータＲ６５のみを示すフリットグループがルータＲ０５から１つ右のルータに転送され、ルータＲ０５とルータＲ６５間の各ルータを経由して、目的地のルータＲ６５に到達する。
【０２０４】
また、宛先情報がルータＲ８８のみを示すフリットグループがルータＲ０５から右に転送され、ルータＲ０５とルータＲ０８間の各ルータを経由してルータＲ０８に到達し、ルータＲ００により１つ右のルータに転送され、ルータＲ０８とルータＲ８８間の各ルータを経由して、目的地のルータＲ８８に到達する。
【０２０５】
図１９に示すように、この例の場合には、全ての宛先にフリットグループが到達するまで、２２ホップが必要である。
【０２０６】
すなわち、本第３の実施の形態にかかるＮｏＣシステムも、ＮｏＣシステム２００と同様に、従来の固定型と適応型のいずれのタイプのＮｏＣシステムよりも、ホップ数を削減することができる。勿論、ＮｏＣシステム２００により得られる他の効果も得ることができる。
【０２０７】
＜第４の実施の形態＞
第４の実施の形態も、メッシュ型のＮｏＣシステムである。該ＮｏＣシステムは、それに設けられた各ルータの宛先グループ分割部による優先軸を決める手法が、第２の実施の形態にかかるＮｏＣシステム２００における宛先グループ分割部３００の手法と異なる点を除き、ＮｏＣシステム２００と同様である。
【０２０８】
本実施の形態のＮｏＣシステムにおいて、宛先グループ分割部は、フリットグループの宛先情報が示す複数の宛先に、Ｘ軸とＹ軸のうちの片方に沿った転送方向のみを必要とする宛先が無い場合には、ＮｏＣシステム２００の宛先グループ分割部３００と同様の手法で、Ｘ軸を優先軸にして該複数の宛先を分割する。
【０２０９】
一方、フリットグループの複数の宛先のうちに、Ｘ軸とＹ軸のうちの片方に沿った転送方向のみを必要とする宛先がある場合に、宛先グループ分割部は、該転送方向を優先軸に決定する。そのため、該転送方向のみを必要とする全ての宛先と共に、必要な転送方向のうちに上記転送方向が含まれる全ての宛先は、同一のフリットグループに決定される。
【０２１０】
例えば、Ｘ軸の正方向への転送のみを必要とする宛先がある場合に、Ｘ軸が優先軸に決定される。そのため、Ｘ軸の正方向への転送のみを必要とする全ての宛先と共に、Ｙ軸の正方向とＹ軸の負方向のいずれか一方と、Ｘ軸の正方向との両方の転送方向が必要な各宛先は、Ｘ軸の正方向をグループ転送方向とする宛先グループに振り分けられる。
【０２１１】
また、例えば、Ｙ軸の負方向への転送のみを必要とする宛先がある場合に、Ｙ軸が優先軸に決定される。そのため、Ｙ軸の負方向への転送のみを必要とする全ての宛先と共に、Ｘ軸の正方向とＸ軸の負方向のいずれか一方と、Ｙ軸の負方向の両方の転送方向とが必要な各宛先は、Ｙ軸の負方向をグループ転送方向とする宛先グループに振り分けられる。
【０２１２】
さらに、フリットグループの複数の宛先に、Ｘ軸とＹ軸の一方に沿った転送方向のみを必要とする宛先に加え、Ｘ軸とＹ軸の他方に沿った転送方向のみを有する宛先もある場合には、宛先グループ分割部は、Ｘ軸を優先軸に決定する。
【０２１３】
例えば、Ｘ軸の正方向への転送のみを必要とする宛先と、Ｙ軸の負方向への転送のみを必要とする宛先がある場合に、Ｘ軸が優先軸に決定される。そのため、Ｘ軸の正方向への転送のみを必要とする全ての宛先と共に、Ｙ軸の正方向とＹ軸の負方向のいずれか一方と、Ｘ軸の正方向との両方の転送方向が必要な各宛先は、Ｘ軸の正方向をグループ転送方向とする宛先グループに振り分けられる。Ｙ軸の負方向への転送のみを必要とする各宛先は、Ｙ軸の負方向をグループ転送方向とする宛先グループに決定される。
【０２１４】
図２０は、本第４の実施の形態にかかるＮｏＣシステムによるフリットグループの転送態様の一例を示す図である。この例において、ＩＰからフリットグループを受信するルータと、各宛先に該当する夫々のルータとの位置関係は、図３１と、ＮｏＣシステム２００を説明する際に例示した図１６に示す例と同様である。
【０２１５】
ルータＲ００〜Ｒ６０までは、図１６に示した例の場合と同様である。
ルータＲ６０にとって、ルータＲ６５に該当する宛先が、Ｙ軸の正方向への転送のみを必要とし、ルータＲ８８に該当する宛先が、Ｘ軸の正方向とＹ軸の正方向への転送が必要である。従って、ルータＲ６０は、Ｙ軸を優先軸に決定する。その結果、ルータＲ６５とルータＲ８８は、同一のフリットグループに決定され、ルータＲ６０の１つ上のルータに転送される。
【０２１６】
ルータＲ６０とルータＲ６５の間の各ルータも、ルータＲ６０と同様の転送をするため、ルータＲ６５に到達した宛先グループの宛先情報には、ルータＲ６５とルータＲ８８の両方が含まれたままである。
【０２１７】
そして、宛先情報がルータＲ６５のみを示すフリットグループは、ルータＲ６５のＩＰに転送され、宛先情報がルータＲ８８のみを示すフリットグループは、ルータＲ６５とルータＲ８５の間の各ルータ、ルータＲ８５、ルータＲ８５とルータＲ８８の間の各ルータを経由してルータＲ８８に到達し、ルータＲ８８のＩＰに転送される。
【０２１８】
図２０に示すように、この例の場合には、全ての宛先にフリットグループが到達するまで、１６ホップが必要である。
【０２１９】
以上の説明から明らかなように、本第４の実施の形態にかかるＮｏＣシステムも、従来のＮｏＣシステムに比べ、ＮｏＣシステム２００と同様の効果を得ることができる。
【０２２０】
図２１と図２２は、本第４の実施の形態のＮｏＣシステムによるフリットグループの転送態様の他の２つの例を示す。この２つの例は、ＮｏＣシステム２００を説明する時に例示した図１７と図１８に示す例と夫々対応する。
【０２２１】
図２０では、フリットグループの複数の宛先に、Ｘ軸とＹ軸の一方に沿った転送方向のみを必要とする宛先に加え、Ｘ軸とＹ軸の他方に沿った転送方向のみを有する宛先もある場合を例示していない。この場合について、図２１と図２２に例示しているが、図２１におけるルータＲ００を代表にして説明する。
【０２２２】
図２１に示す例において、ルータＲ００にとって、ルータＲ１０、ルータＲ２０は、Ｘ軸の正方向への転送のみを必要とする宛先である。また、ルータＲ０４は、Ｙ軸の正方向への転送のみを必要とする宛先である。他の各宛先は、Ｘ軸の正方向とＹ軸の正方向の両方への転送が必要な宛先である。
【０２２３】
そのため、ルータＲ００は、Ｘ軸を優先軸に決定する。その結果、宛先情報がルータＲ０４のみを示すフリットグループは、ルータＲ００の１つ上のルータに転送され、宛先ジ情報が他の全てのルータを示すフリットグループは、ルータＲ００の右隣のルータに転送される。
【０２２４】
ここで、図１６〜図１８と、図２０〜図２２とを参照して、本第４の実施の形態にかかるＮｏＣシステムとＮｏＣシステム２００の転送効率を比較する。
【０２２５】
まず、図１６と図２０を比較する。
図１６に示すように、ＮｏＣシステム２００の場合、全てのフリットグループが目的地に到達するまでに必要なホップ数は、２１である。
【０２２６】
対して、図２０に示すように、本第４の実施の形態にかかるＮｏＣシステムでは、全てのフリットグループが目的地に到達するまでに必要なホップ数は、１６である。
【０２２７】
次いで、図１７と図２１を比較する。
図１７に示すように、ＮｏＣシステム２００の場合、全てのフリットグループが目的地に到達するまでに必要なホップ数は、４１である。
【０２２８】
対して、図２１に示すように、本第４の実施の形態にかかるＮｏＣシステムでは、全てのフリットグループが目的地に到達するまでに必要なホップ数は、３７である。
【０２２９】
最後に、図１８と図２２を比較する。
図１８に示すように、ＮｏＣシステム２００の場合、全てのフリットグループが目的地に到達するまでに必要なホップ数は、４８である。
【０２３０】
対して、図２２に示すように、本第４の実施の形態にかかるＮｏＣシステムでは、全てのフリットグループが目的地に到達するまでに必要なホップ数は、２０である。
【０２３１】
ＮｏＣシステム２００では、宛先グループ分割部３００は、優先軸をＸ軸に固定している。
【０２３２】
対して、本第４の実施の形態にかかるＮｏＣシステムでは、宛先グループ分割部は、フリットグループの複数の宛先に、Ｘ軸とＹ軸のうちの片方に沿った転送方向のみを必要とする宛先があるときに、該転送方向を優先軸に決定する。その結果、多くの場合において、ＮｏＣシステム２００より、さらに多くのホップ数を削減することができる。これについては、第３の実施の形態にかかるＮｏＣシステムと比べた場合においても同様である。
【０２３３】
＜第５の実施の形態＞
第４の実施の形態にかかるＮｏＣシステムでは、宛先グループ分割部は、フリットグループの複数の宛先に、Ｘ軸とＹ軸の一方に沿った転送方向のみを必要とする宛先に加え、Ｘ軸とＹ軸の他方に沿った転送方向のみを有する宛先もある場合には、Ｘ軸を優先軸に決定する。
【０２３４】
本第５の実施の形態は、メッシュ型のＮｏＣシステムである。該ＮｏＣシステムおいて、各ルータの宛先グループ分割部は、Ｘ軸とＹ軸の一方に沿った転送方向のみを必要とする宛先に加え、Ｘ軸とＹ軸の他方に沿った転送方向のみを有する宛先もある場合には、Ｙ軸を優先軸に決定する。この点を除き、本第５の実施の形態にかかるＮｏＣシステムは、第４の実施の形態のＮｏＣシステムと同様である。
【０２３５】
該ＮｏＣシステムは、従来のＮｏＣシステムと比べ、第２の実施の形態にかかるＮｏＣシステム２００と同様の効果を得ることができる。これについては、明らかであるため、従来のＮｏＣシステムと比較するための例示を省略する。
【０２３６】
図２３と図２４は、本第５の実施の形態のＮｏＣシステムによるフリットグループの転送態様の２つの例を示す。この２つの例は、ＮｏＣシステム２００を説明する時に例示した図１７と図１８に示す例と夫々対応する。
【０２３７】
本第５の実施の形態にかかるＮｏＣシステムは、第４の実施の形態にかかるＮｏＣシステムと同様に、多くの場合において、ＮｏＣシステム２００より、さらに多くのホップ数を削減することができる。これについて、図１７と図２３の比較、図１８と図２４の比較からも明らかである。
【０２３８】
＜第６の実施の形態＞
第６の実施の形態も、メッシュ型のＮｏＣシステムである。該ＮｏＣシステムは、各ルータの宛先グループ分割部による優先軸を決める手法が、第５の実施の形態にかかるＮｏＣシステムにおける宛先グループ分割部の手法と異なる点を除き、第５の実施の形態のＮｏＣシステムと同様である。
【０２３９】
また、優先軸を決める手法においても、Ｘ軸とＹ軸の一方に沿った転送方向のみを必要とする宛先に加え、Ｘ軸とＹ軸の他方に沿った転送方向のみを有する宛先もある場合においてのみ、第５の実施の形態のＮｏＣシステムと異なる。説明上の便宜のため、以下、この場合に該当するときに、Ｘ軸とＹ軸の一方に沿った転送方向のみを必要とする宛先を「第１の宛先」といい、Ｘ軸とＹ軸の他方に沿った転送方向のみを有する宛先を「第２の宛先」という。
【０２４０】
前述したように、第５の実施の形態のＮｏＣシステムにおいて、宛先グループ分割部は、フリットグループの複数の宛先に第１の宛先と第２の宛先がある場合に、Ｙ軸を優先軸に決定する。
【０２４１】
なお、第４の実施の形態のＮｏＣシステムにおいて、宛先グループ分割部は、フリットグループの複数の宛先に、第１の宛先と第２の宛先がある場合に、Ｘ軸を優先軸に決定している。
【０２４２】
対して、本第６の実施の形態のＮｏＣシステムでは、宛先グループ分割部は、第１の宛先と第２の宛先がある場合に、固定した軸を優先軸に決める手法を用いず、フリットグループの転送軸に応じて優先軸を決定する。
【０２４３】
ここでいう「転送軸」は、１つ前のルータからフリットグループが転送されてきた際に沿った軸を意味する。例えば、１つ前のルータと現在のルータのＹ座標値が同じである場合に、フリットグループの転送軸はＸ軸になる。また、１つ前のルータと現在のルータのＸ座標値が同じである場合に、フリットグループの転送軸はＹ軸になる。
【０２４４】
通常のＮｏＣシステムにおけるルータの構成を示す図２８から分かるように、ＮｏＣシステムのルータには、転送軸の正方向と負方向毎にバッファ（図２８におけるＦＩＦＯ１２）が設けられている。また、ＩＰに対応するバッファも設けられている。
【０２４５】
そのため、本第６の実施の形態のＮｏＣシステムにおいて、宛先グループ分割部は、処理対象となるフリットグループがいずれのバッファに格納されているかに基づいて、該フリットグループがＩＰから転送されたか否かを確認することができると共に、他のルータから転送されてきたフリットグループの場合には、その転送軸の確認もできる。
【０２４６】
本第６のＮｏＣシステムにおける宛先グループ分割部は、フリットグループの複数の宛先のうちに、第１の宛先と第２の宛先がある場合に、Ｘ軸とＹ軸のうちの、転送軸と異なる一方を優先軸に決定する。
【０２４７】
例えば、右隣のルータから転送されてきたフリットグループの場合、転送軸がＸ軸となる。このフリットグループの複数の宛先に第１の宛先と第２の宛先の両方がある場合に、宛先グループ分割部は、Ｙ軸を優先軸に決定する。
【０２４８】
図２５と図２６は、本第６の実施の形態のＮｏＣシステムによるフリットグループの転送態様の２つの例を示す。この２つの例は、第５の実施の形態を説明する時に例示した図２３と図２４に示す例と夫々対応する。
【０２４９】
図２３と図２５を比較すると、例えば、ルータＲ０１によるグループ分けが異なることが分かる。
【０２５０】
図２３において、ルータＲ０１は、第１の宛先（ルータＲ８１）と、第２の宛先（ルータＲ０４）があるため、優先軸をＹ軸に決定する。その結果、宛先情報がルータＲ８１ののみを示すフリットグループは、ルータＲ０１から右に転送され、宛先情報が他の全ての目的地を示すフリットグループは、ルータＲ０１から上に転送される。
【０２５１】
一方、図２５において、ルータＲ０１が受信したフリットグループは、ルータＲ００から転送されてきたものであり、転送軸がＹ軸になる。そのため、ルータＲ０１は、優先軸をＸ軸に決定する。その結果、宛先情報がルータＲ０４ののみを示すフリットグループは、ルータＲ０１から上に転送され、宛先情報が他の全ての目的地を示すフリットグループは、ルータＲ０１から右に転送される。
【０２５２】
図２３に示すように、第５の実施の形態のＮｏＣシステムの場合、全てのフリットグループが目的地に到達するまでに必要なホップ数は、３５である。
【０２５３】
対して、図２５に示すように、本第６の実施の形態にかかるＮｏＣシステムでは、全てのフリットグループが目的地に到達するまでに必要なホップ数は、３９である。
【０２５４】
また、図２４に示すように、第５の実施の形態のＮｏＣシステムの場合、全てのフリットグループが目的地に到達するまでに必要なホップ数は、２０である。
【０２５５】
対して、図２６に示すように、本第６の実施の形態にかかるＮｏＣシステムでは、全てのフリットグループが目的地に到達するまでに必要なホップ数は、２０である。
【０２５６】
第６の実施の形態にかかるＮｏＣシステムは、従来のＮｏＣシステムと比べ、第２〜第５の各実施の形態にかかるＮｏＣシステムと同様の効果を得ることができる。これについては、明らかであるため、従来のＮｏＣシステムと比較するための例示を省略する。
【０２５７】
また、第４と第５の実施の形態にかかるＮｏＣシステムと同様に、多くの場合において、第２の実施の形態のＮｏＣシステム２００より、さらに多くのホップ数を削減することができる。
【０２５８】
但し、第４と第５の実施の形態にかかるＮｏＣシステムより、常に多くのホップ数を削減することができるとは限らない。
【０２５９】
しかしながら、本第６の実施の形態にかかるＮｏＣシステムは、第１の宛先と第２の宛先がある場合に、転送軸に応じて優先軸を決定するため、宛先情報が示す宛先の数が多いほど、また、これらの宛先のばらつきが大きいほど、優先軸が頻繁に変化する。その結果、宛先情報が示す宛先の数が多いほど、また、これらの宛先のばらつきが大きい場合には、第４と第５の実施の形態にかかるＮｏＣシステムより、多くのホップ数を削減できる可能性が大きい。
【０２６０】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。
【０２６１】
例えば、上述した各実施の形態において、まず、どのフリットグループを先に転送するかの調停が行われ、そして、調停の結果に応じて選択されたフリットグループに対して、宛先グループの割当てが行われるようになっている。上記調停、宛先グループの割当ての順序は、前後してもよい。
【０２６２】
具体的には、例えば、全てのバッファにある全てのフリットグループについて、宛先情報が含まれるフリット（例えばヘッドフリット）をバッファから読み出し、読み出したフリット毎に、該フリットに含まれるアドレス情報に基づいて宛先グループの割当てをしてから上記調停を行い、調停の結果に応じて選択されたフリットグループを、該フリットグループに対する宛先グループの割当ての結果に基づいて転送するようにしてもよい。
【符号の説明】
【０２６３】
１０  ルータ  １１  パス
１２  ＦＩＦＯ  １４  調停器
１６  ＸＢＡＲ  ２０  ＩＰ
２２  ネットワークインタフェース  ２４  ルータ
２６  ルータ  ２８  ＮＩ
３０  ＩＰ  ４２  ヘッダ
４４  制御信号部  ４６  出発地情報
４８  宛先情報  １００  ＮｏＣシステム
１１２  受信部  １１４  パケット化部
１１６  送信部  １２２  ヘッダ
１２４  制御信号部  １２６  出発地情報
１２８  宛先情報  １３２  宛先グループ分割部
１３４  転送実行部  ２００  ＮｏＣシステム
２０２  ＩＰ  ２０４  ネットワークインタフェース
２１０  ルータ  ２２０〜２２８  ＦＩＦＯ
２３０  調停器  ２４０  ＲＯＭ
２６０  転送実行部  ２７０〜２７８  セレクタ
２８０〜２８８  宛先情報書換部  ３００  宛先グループ分割部
３１０  セレクタ  ３１２  宛先解析部
３１４  受信レジスタ  ３１６  座標レジスタ
３１８  比較器  ３２０  比較器
３２２  座標演算部  ３２４  セレクタ
３２６  レジスタ  ３３０  送信レジスタ
ＡＤ１、ＡＤ２  アドレス
ＣＯ  座標情報
Ｄ０  データ
ＤＥＳ１、ＤＥＳ２  宛先
ＤＥＳＧ１、ＤＥＳＧ２  宛先グループ
ＥＮ  イネーブル信号
ＦＬ１、ＦＬ２、ＦＬ３  フリット
ＦＬＧ  フリットグループ
ＮＩ  ネットワークインタフェース
Ｐ  プログラム
Ｒ００〜Ｒ８８  ＮｏＣルータ
Ｓ１  ＦＩＦＯ選択信号
Ｓ２  レジスタ選択信号
Ｓ３  宛先グループ選択信号
【図１】
2013243582.tif 000003
【図２】
2013243582.tif 000004
【図３】
2013243582.tif 000005
【図４】
2013243582.tif 000006
【図５】
2013243582.tif 000007
【図６】
2013243582.tif 000008
【図７】
2013243582.tif 000009
【図８】
2013243582.tif 000010
【図９】
2013243582.tif 000011
【図１０】
2013243582.tif 000012
【図１１】
2013243582.tif 000013
【図１２】
2013243582.tif 000014
【図１３】
2013243582.tif 000015
【図１４】
2013243582.tif 000016
【図１５】
2013243582.tif 000017
【図１６】
2013243582.tif 000018
【図１７】
2013243582.tif 000019
【図１８】
2013243582.tif 000020
【図１９】
2013243582.tif 000021
【図２０】
2013243582.tif 000022
【図２１】
2013243582.tif 000023
【図２２】
2013243582.tif 000024
【図２３】
2013243582.tif 000025
【図２４】
2013243582.tif 000026
【図２５】
2013243582.tif 000027
【図２６】
2013243582.tif 000028
【図２７】
2013243582.tif 000029
【図２８】
2013243582.tif 000030
【図２９】
2013243582.tif 000031
【図３０】
2013243582.tif 000032
【図３１】
2013243582.tif 000033