(57)【要約】      （修正有）【課題】ルーティング装置の接続数よりも少ない接続数を個別に有する複数のルータに基づくルーティング装置を提供する。【解決手段】チップは、機能モジュールを有し、機能ジュールのそれぞれが、互いに接続される単一の処理装置と単一のルーティング装置１１０Ｅとを有し、ルーティング接続という接続がそれぞれ機能モジュールのルーティング装置と連結する少なくとも１つの端部を備え、ルーティング接続がその間に、機能モジュールの処理装置の間でデータのルーティングが可能となるように機能モジュールのルーティング装置を接続する。【選択図】図４
2011182393.tif 000002
【特許請求の範囲】
【請求項１】
機能モジュール（１０４Ａ〜１０４Ｉ）を有するチップであって、該機能モジュールのそれぞれが、互いに接続される単一の処理装置（１０８Ａ〜１０８Ｉ）と単一のルーティング装置（１１０Ａ〜１１０Ｉ）とを有し、ルーティング接続と呼ぶ接続（Ｃｘ）がそれぞれ前記機能モジュールのルーティング装置と連結する少なくとも１つの端部を備え、前記ルーティング接続（Ｃｘ）がその間に、前記機能モジュールの前記処理装置の間でデータのルーティングが可能となるように前記機能モジュールのルーティング装置を接続するチップにおいて、２分割したルーティング装置と呼ぶ少なくとも１つの前記機能モジュール（１０４Ａ、１０４Ｃ、１０４Ｄ、１０４Ｅ、１０４Ｆ、１０４Ｈ）の前記ルーティング装置（１１０Ａ、１１０Ｃ、１１０Ｄ、１１０Ｅ、１１０Ｆ、１１０Ｈ）が、それぞれ第１レベルのルータおよび第２レベルのルータと呼ぶ２つのルータ（１１２Ａ、１１４Ａ、１１２Ｃ、１１４Ｃ、１１２Ｄ、１１４Ｄ、１１２Ｅ、１１４Ｅ、１１２Ｆ、１１４Ｆ、１１２Ｈ、１１４Ｈ）を有し、該２つのルータが互いに接続され、前記第１レベルのルータがさらに少なくとも２つの前記ルーティング接続（Ｃｘ）と連結し、前記第２レベルのルータがさらに前記機能モジュールの処理装置と接続し、少なくとももうひとつの前記ルーティング接続（Ｃｘ）と連結することを特徴とするチップ。
【請求項２】
それぞれが前記２分割したルーティング装置（１１０Ａ〜１１０Ｉ）を持つ複数の前記機能モジュール（１０４Ａ〜１０４Ｉ）を有する、請求項１に記載のチップ。
【請求項３】
前記第１レベルのルータが、該第１レベルのルータが互いに接続する、前記第１レベルのネットワークと呼ぶ少なくとも１つのネットワーク（１１２Ａ、１１２Ｂ、１１２Ｃ；１１２Ｄ、１１２Ｅ；１１２Ｆ、１１２Ｇ、１１２Ｈ、１１２Ｉ）を形成する、請求項２に記載のチップ。
【請求項４】
前記第１レベルのルータが複数の前記第１レベルのネットワーク（１１２Ａ、１１２Ｂ  １１２Ｃ；１１２Ｄ、１１２Ｅ；１１２Ｆ、１１２Ｇ、１１２Ｈ、１１２１）を形成し、前記２分割したルーティング装置（１１０Ａ、１１０Ｄ；１１０Ｄ、１１０Ｆ；１１０Ｃ、１１０Ｅ；１１０Ｅ、１１０Ｈ）の少なくとも一部を有し、該ルーティング装置の前記第１レベルのルータがさまざまに異なる第１レベルのネットワークに属し、前記第２レベルのルータがそれぞれ互いに接続される、請求項３に記載のチップ。
【請求項５】
前記第２レベルのルータが、第２レベルのネットワークと呼ぶ少なくとも１つのネットワーク（１１４Ａ、１１４Ｄ、１１４Ｆ；１１４Ｃ、１１４Ｅ、１１４Ｈ）を形成し、前記第２レベルのルータが互いに接続される、請求項２〜４のいずれか一項に記載のチップ。
【請求項６】
複数の前記機能モジュールの層（１０２Ａ、１０２８、１０２Ｃ）を有する、請求項１〜５のいずれか一項に記載のチップ。
【請求項７】
前記各層が異なる第１レベルのネットワーク（１１２Ａ、１１２Ｂ  １１２Ｃ；１１２Ｄ、１１２Ｅ；１１２Ｆ、１１２Ｇ、１１２Ｈ、１１２Ｉ）を有する、請求項６に記載のチップ。
【請求項８】
前記２分割したルーティング装置（１１０Ａ、１１０Ｄ；１１０Ｄ、１１０Ｆ；１１０Ｃ、１１０Ｅ；１１０Ｅ、１１０Ｈ）の少なくとも一部を有し、前記ルーティング装置の前記第１レベルのルータがさまざまに異なる層の前記第１レベルのネットワークに属し、前記第２レベルのルータがそれぞれ互いに接続される、請求項７に記載のチップ。
【請求項９】
前記第１レベルの各ネットワーク（１１２Ａ、１１２Ｂ  １１２Ｃ；１１２Ｄ、１１２Ｅ；１１２Ｆ、１１２Ｇ、１１２Ｈ、１１２Ｉ）が格子状のネットワークで、複数の前記機能モジュール（１０４Ｄ、１０４Ｅ）が前記２分割したルーティング装置を備え、前記第２レベルのルータ（１１４Ｄ、１１４Ｅ）およびその層で隣接する４つの前記機能モジュールの４つの前記第１レベルのルータのみに接続する前記第１レベルのルータ（１１２Ｄ、１１２Ｅ）と、該第１レベルのルータ（１１２Ｄ、１１２Ｅ）、その処理装置（１０８Ｄ、１０８Ｅ）、および隣接する２つの前記機能モジュールの２つの前記第２レベルのルータのみに接続する前記第２レベルのルータ（１１４Ｄ、１１４Ｅ）とを有し、該ルータがそれぞれ上の層と下の層からその層に隣接している、請求項８に記載のチップ。
【請求項１０】
パッケージ（１２）と、該パッケージ（１２）に設置される請求項１〜９のいずれか一項に記載のチップ（１４）と、前記パッケージ（１２）を通過し、前記チップ（１４）に接続される接続端子（１６）とを有する、集積回路（１０）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、チップおよびこのようなチップを有する集積回路に関する。本発明は特に、マイクロプロセッサの分野で適用される。
【背景技術】
【０００２】
以下の定義は、これ以降の本明細書および請求項で使用するものである。
【０００３】
「チップ」（英語で「ｃｈｉｐ」という）とは、半導体材料の小さな素子であり、内部に電子回路を搭載するようになっている。チップは、１つのみの半導体材料ブロックから作製することも複数の半導体材料ブロックから作製することもできる。後者の場合、ブロックは一般に、１枚ずつ積層して複数のチップ層を形成する。
【０００４】
「集積回路」とは、接続端子を備えるパッケージに封入されたチップであり、接続端子をプリント基板などの電子部品の回路へ接続すると、チップをこのような他の部品と接続させることができる。
【０００５】
２００８年６月、３５ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ（第３５回コンピュータアーキテクチャに関する国際シンポジウム）、２００８年、ＩＳＣＡ  ’０８に公表されたＤ．Ｐａｒｋらによる「ＭＩＲＡ：Ａ  ｍｕｌｔｉ−ｌａｙｅｒｅｄ  ｏｎ−ｃｈｉｐ  ｉｎｔｅｒｃｏｎｎｅｃｔ  ｒｏｕｔｅｒ  ａｒｃｈｉｔｅｃｔｕｒｅ（多層オンチップ相互接続ルータアーキテクチャ）」と題する論文には、機能モジュールを有し、各機能モジュールが単一の処理装置を有するチップが記載されている。
【０００６】
この論文では、チップは三次元で、機能モジュールを積み重ねた複数の層を有する（ネットワークの観点から機能モジュールを考える際には、この層をこれ以降「平面（ｐｌａｎｓ）」と呼ぶ）。この文献では、さまざまな層がそれぞれ垂直に位置する機能モジュールの処理装置をすべて１つの共通ルータに接続することが提案されている。さらに、この共通ルータの素子をさまざまな層に振り分けることが提案されている。このアーキテクチャでは、三次元のチップを現在のテクノロジーでは実際に搭載することができないという不都合がある。
【０００７】
このほか、２００６年６月、Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＩＳＣＡ−３３に公表されたＦ．Ｌｉらによる「Ｄｅｓｉｇｎ  ａｎｄ  ｍａｎａｇｅｍｅｎｔ  ｏｆ  ３Ｄ  ｃｈｉｐ  ｍｕｌｔｉｐｒｏｃｅｓｓｏｒｓ  ｕｓｉｎｇ  ｎｅｔｗｏｒｋ−ｉｎ−ｍｅｍｏｒｙ（ネットワークインメモリを使用する３Ｄチップマルチプロセッサの設計および管理）」と題する論文には、機能モジュールを有するチップであって、この機能モジュールのそれぞれが単一の処理装置と単一のルーティング装置を有し、この２つの装置が互いに接続され、機能モジュールの各ルーティング装置が、機能モジュールの処理装置の間でデータのルーティングができるように互いに接続することができるチップが記載されている。
【０００８】
この論文では、チップは三次元で、機能モジュールを重ねた複数の層を有する。各機能モジュールのルーティング装置は、層に単一の通信用ルータを有する。さらに、チップは複数の垂直方向のデータバスを有し、各データバスはその間に互いに垂直方向に位置するさまざまな層のルータを連結させている。よってルータには、データバスがない場合に必要となる７つの接続ではなく、双方向の接続が６つある（同一平面のほかのルータに対して４接続、処理装置に対して１接続、垂直方向のデータバスに対して１接続）。しかし、このアーキテクチャでは、１つのデータバスを一度に１つのデータグループでしか検索することができないという不都合がある。そのため、層間で多数のデータ交換を行う場合は、垂直方向のデータバスはすぐに飽和してしまう。
【０００９】
このほか、２００７年５月、ＡＣＭ  ＳＩＧＡＲＣＨ  Ｃｏｍｐｕｔｅｒ  ａｒｃｈｉｔｅｃｔｕｒｅ  ｎｅｗｓ、第３５巻、第１３８〜１４９頁に公表されたＪ．Ｋｉｍらによる「  Ａ  ｎｏｖｅｌ  ｄｉｍｅｎｓｉｏｎａｌｌｙ−ｄｅｃｏｍｐｏｓｅｄ  ｒｏｕｔｅｒ  ｆｏｒ  ｏｎ−ｃｈｉｐ  ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｉｎ  ３Ｄ  ａｒｃｈｉｔｅｃｔｕｒｅｓ（３Ｄアーキテクチャでのオンチップ通信用に次元的に分解した新たなルータ）」と題する論文には、機能モジュールを有するチップであって、この機能モジュールのそれぞれが１つの処理装置と１つのルーティング装置を有し、この２つの装置が互いに接続され、機能モジュールの各ルーティング装置が、機能モジュールの処理装置間でデータのルーティングができるように互いに接続することができるチップが記載されている。
【００１０】
この論文では、チップは三次元で、機能モジュールを重ねた複数の層を有する。このように構成された機能モジュールのネットワークは、三次元の格子状のネットワークであり、各機能モジュールがその層内で隣接する最大４つの機能モジュールに接続するほか、場合によっては上層に隣接して位置する１つの機能モジュールと、下層に隣接して位置する１つの機能モジュールとも接続する。その平面で隣接する４つの機能モジュールを通常、機能モジュールの位置によって北（Ｎｏｒｄ）、南（Ｓｕｄ）、東（Ｅｓｔ）、西（Ｏｕｅｓｔ）と呼び、上下にある２つの機能モジュールを上（Ｈａｕｔ）、下（Ｂａｓ）と呼ぶ。
【００１１】
この論文では、各機能モジュールのルーティング装置は、通常のルータ１つに対して１つのみのクロスバースイッチ（英語で「ｃｒｏｓｓｂａｒ」）ではなく、３つのクロスバースイッチを有する単一のルータで構成されている。第１のクロスバースイッチは東西のルーティングに充てられ、第２のクロスバースイッチは南北のルーティングに充てられ、第３のクロスバースイッチは上下のルーティングに充てられる。複数のクロスバースイッチ間でこのように分割するのは、ルータの性能を向上させ、ルータの面積を縮小することが目的である。さらにこの論文では、２つの調停ステップしか必要としないという利点を持つ決定ルーティングアルゴリズムＸＹＺを利用することが提案されている。別のルーティングアルゴリズムを利用した場合は、３つのクロスバースイッチがあるために、これよりも多くの調停ステップが必要となることがある。ところが、調停ステップの数が３つ以上であれば、３つのクロスバースイッチを使用することによって得られる性能の利点が減少したりなくなったりするおそれがある。そのため、この論文で提案されているチップには、１つのルーティングアルゴリズムのみでしか良好な性能を維持できないという不都合がある。
【先行技術文献】
【非特許文献】
【００１２】
【非特許文献１】「ＭＩＲＡ：  Ａ  ｍｕｌｔｉ−Ｉａｙｅｒｅｄ  ｏｎ−ｃｈｉｐ  ｉｎｔｅｒｃｏｎｎｅｃｔ  ｒｏｕｔｅｒ  ａｒｃｈｉｔｅｃｔｕｒｅ」，  Ｄ．  Ｐａｒｋ  ｅｔ  ａｌ，  ３５ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ，  ２００８，  ＩＳＣＡ  ’０８，  ｊｕｉｎ  ２００８
【非特許文献２】「Ｄｅｓｉｇｎ  ａｎｄ  ｍａｎａｇｅｍｅｎｔ  ｏｆ  ３Ｄ  ｃｈｉｐ  ｍｕｌｔｉｐｒｏｃｅｓｓｏｒｓ  ｕｓｉｎｇ  ｎｅｔｗｏｒｋ−ｉｎ−ｍｅｍｏｒｙ」，  Ｆ．  Ｌｉ  ｅｔ  ａｌ，  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＩＳＣＡ−３３，  ｊｕｉｎ  ２００６
【非特許文献３】「Ａ  ｎｏｖｅｌ  ｄｉｍｅｎｓｉｏｎａｌｌｙ−ｄｅｃｏｍｐｏｓｅｄ  ｒｏｕｔｅｒ  ｆｏｒ  ｏｎ−ｃｈｉｐ  ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｉｎ  ３Ｄ  ａｒｃｈｉｔｅｃｔｕｒｅｓ」，Ｊ．  Ｋｉｍ  ｅｔ  ａｌ，  ＡＣＭ  ＳＩＧＡＲＣＨ  Ｃｏｍｐｕｔｅｒ  ａｒｃｈｉｔｅｃｔｕｒｅ  ｎｅｗｓ，  ｖｏｌ．  ３５，  ｐａｇｅｓ  １３８−１４９，  ｍａｉ  ２００７
【発明の概要】
【発明が解決しようとする課題】
【００１３】
したがって、前述の問題や制約の少なくとも一部を解消することができるチップを備えることが望ましい。
【課題を解決するための手段】
【００１４】
よって、本発明は、機能モジュールを有するチップであって、機能モジュールのそれぞれが、互いに接続される単一の処理装置と単一のルーティング装置とを有し、ルーティング接続と呼ぶ接続がそれぞれ機能モジュールのルーティング装置と連結する少なくとも１つの端部を備え、ルーティング接続がその間に、機能モジュールの処理装置の間でデータのルーティングが可能となるように機能モジュールのルーティング装置を接続するチップにおいて、２分割したルーティング装置と呼ぶ少なくとも１つの機能モジュールのルーティング装置が、それぞれ第１レベルのルータおよび第２レベルのルータと呼ぶ２つのルータを有し、この２つのルータが互いに接続され、第１レベルのルータがさらに少なくとも２つのルーティング接続と連結し、第２レベルのルータがさらにこの機能モジュールの処理装置と接続し、少なくとももうひとつのルーティング接続と連結するチップを目的とする。
【００１５】
したがって、本発明は、複数の小型のルータを備えるルーティング装置、すなわちルーティング装置の接続数よりも少ない接続数を個別に有する複数のルータに基づくルーティング装置の考案を提案する。２分割したルーティング装置を介して、データが第１レベルのルータと連結する２つのルーティング接続の間に送信される際は、このデータは第１レベルのルータのみを通過する。ところが、この第１レベルのルータは小型であるため、このデータは多くの容量を短い反応時間で２分割したルーティング装置を通過することができる。  
【００１６】
選択的に、チップが、それぞれが２分割したルーティング装置を持つ複数の機能モジュールを有するようにしてもよい。  
【００１７】
また、選択的に、第１レベルのルータが、第１レベルのルータが互いに接続する少なくとも１つのネットワーク（第１レベルのネットワークと呼ぶ）を形成してもよい。  
【００１８】
また、選択的に、第１レベルのルータが複数の第１レベルのネットワークを形成し、チップが２分割したルーティング装置の少なくとも一部を有し、このルーティング装置の第１レベルのルータがさまざまに異なる第１レベルのネットワークに属し、第２レベルのルータがそれぞれ互いに接続されるようにしてもよい。
【００１９】
また、選択的に、第２レベルのルータが少なくとも１つのネットワーク（第２レベルのネットワークと呼ぶ）を形成し、この第２レベルのルータが互いに接続されるようにしてもよい。  
【００２０】
また、選択的に、チップが複数の機能モジュール層を有するようにしてもよい。  
【００２１】
また、選択的に、各層が異なる第１レベルのネットワークを有するようにしてもよい。  
【００２２】
また、選択的に、チップが少なくとも一対の２分割したルーティング装置を有し、このルーティング装置の第１レベルのルータがさまざまに異なる層の第１レベルのネットワークに属し、第２レベルのルータがそれぞれ互いに接続されるようにしてもよい。
【００２３】
また、選択的に、第１レベルの各ネットワークが格子状のネットワークであってもよい。この場合、複数の機能モジュールは２分割したルーティング装置を備えることができ、第２レベルのルータおよびその層で隣接する４つの機能モジュールの４つの第１レベルのルータのみに接続する第１レベルのルータと、その第１レベルのルータ、その処理装置、および隣接する２つの機能モジュールの２つの第２レベルのルータのみに接続する第２レベルのルータとを有し、このルータはそれぞれ上の層と下の層からその層に隣接している。
【００２４】
したがって、本発明による三次元チップでは、第１レベルのルータは層内部での伝送に充てられ、第２レベルのルータは層間の伝送およびデータの処理装置への最終送信に充てられる。  
【００２５】
また、本発明は、パッケージと、上に定義したようなパッケージに設置されるチップと、パッケージを通過し、チップに接続される接続端子とを有する集積回路を目的とする。  
【００２６】
本発明は、例としてのみ挙げた以下の説明文を読み、添付の図面を参照することにより、さらによく理解されるであろう。以下、図面を説明する。  
【図面の簡単な説明】
【００２７】
【図１】本発明の一実施形態による集積回路を示す概略図である。
【図２】図１に示す集積回路のチップの一部を明瞭に示した斜視図である。
【図３】図２のチップの機能モジュールが互いに接続される様子を示す概略図である。
【図４】図２の機能モジュールのルーティング装置を示す概略図である。
【発明を実施するための形態】
【００２８】
図１を見ると、本発明による集積回路１０は、パッケージ１２およびこのパッケージ１２内に設置されるチップ１４を有する。上に説明したように、チップは半導体材料で作製される小さな素子であり、内部に電子回路を搭載するようになっている。記載例では、電子回路はネットワークオンチップ（英語の「Ｎｅｔｗｏｒｋ  ｏｎ  Ｃｈｉｐ」から）の形状を想定しているため、チップ１４は、ネットワークのノードとしてデータを交換する機能モジュールを有する。記載例ではこのほか、チップ１４は、通常上および下（ＨＢ）と呼ぶ方向に積み重ねた機能モジュールの複数の層（記載例では３つ）を有する。各層の機能モジュールはそれぞれ、一般に南北（ＮＳ）と東西（ＯＥ）と呼ぶ垂直となる２つの方向に配置される。
【００２９】
集積回路１０はさらに、パッケージ１２を通過してチップ１４に接続される接続端子１６を有する。この接続端子は、プリント基板（図示せず）と連結して集積回路１０をこのプリント基板に接続するようになっている。
【００３０】
次に、チップ１４の一部分１００を詳細に説明する。
【００３１】
図２では、部分１００内にあるようなチップの３つの層を互いに分離して示している。この３つの層は、それぞれ符号１０２Ａ、１０２Ｂ、１０２Ｃで示すものであり、部分１００内には１０４Ａ〜１０４Ｉの９つの機能モジュールがある。
【００３２】
さらに正確には、第１の層１０２Ａ（上下方向の最上層）は、３つの機能モジュール１０４Ａ、１０４Ｂおよび１０４Ｃを有し、第２の層１０２Ｂは２つの機能モジュール１０４Ｄおよび１０４Ｅを有し、第３の層（上下方向の最下層）は４つの機能モジュール１０４Ｆ、１０４Ｇ、１０４Ｈおよび１０４Ｉを有する。
【００３３】
データ交換のため、チップはルーティング接続と呼ぶ接続を有し、のちに説明するように、この接続で１０４Ａ〜１０４Ｉの機能モジュールが互いに接続されるとともに、チップの端子にも接続される。特に、１０４Ａ〜１０４Ｉの各機能モジュールはほかの機能モジュールと接続し、記載例の場合のように、隣接する機能モジュールと接続することが好ましい。ある機能モジュールと隣接する機能モジュールとは、この機能モジュールと接触している機能モジュールのことであり、同一層に位置するか隣の層に位置するモジュールである。機能モジュールをこの機能モジュールから見た位置に応じて北、南、東、西、上または下と呼ぶことにする。記載例では、各機能モジュールはそれぞれ北、南、東、西、上および下の各方向に最大１つの隣接モジュールしか持たない。
【００３４】
したがって、記載例では、第１の層１０２Ａの機能モジュール１０４Ａは、北側に隣接する機能モジュール１０４Ｂ、東側に隣接するモジュール１０４Ｃ、および下側に隣接するモジュール１０４Ｄを部分１００内に有する。同じく記載例では、機能モジュール１０４Ｈは、北側に隣接するモジュール１０４Ｉ、西側に隣接するモジュール１０４Ｆ、および上側に隣接するモジュール１０４Ｅを部分１００内に有する。
【００３５】
次に、機能モジュールが互いに接続される方法を詳細にみていく。
【００３６】
図３を見ると、各平面機能モジュールは、機能モジュールのネットワーク１０６Ａ、１０６Ｂ、１０６Ｃを形成するように接続されている。図示した例では、ネットワーク１０６Ａ、１０６Ｂ、１０６Ｃはそれぞれ格子状のネットワークであり、各機能モジュール１０４Ａ〜１０４Ｉはその平面で隣接する機能モジュール（北側、南側、東側または西側に隣接する機能モジュール）と４つまで接続することができる。このほか、各平面機能モジュールの少なくとも一部は、その下側に隣接する機能モジュールおよび／または上側に隣接する機能モジュールに接続される。
【００３７】
まず各機能モジュール１０４Ａ〜１０４Ｉは、単一の処理装置１０８Ａ〜１０８Ｉを有する。各処理装置１０８Ａ〜１０８Ｉは、ほかの処理装置から受信するデータの処理、および／またはほかの処理装置へのデータの発信を行うようになっている。処理装置１０８Ａ〜１０８Ｉは、たとえばメモリやプロセッサコアを処理する装置である。
【００３８】
各機能モジュール１０４Ａ〜１０４Ｉはさらに、処理装置１０８Ａ〜１０８Ｉに接続する単一のルーティング装置１１０Ａ〜１１０Ｉを有する。機能モジュール１０４Ａ〜１０４Ｉのルーティング装置１１０Ａ〜１１０Ｉは、ルーティング接続によって互いに接続し、処理装置１０８Ａ〜１０８Ｉの間でデータのルーティングができるようになっている。したがって、各ルーティング接続は、１つのルーティング装置に連結する第１の端部を備えている。もう一方の端部は、別のルーティング装置に連結するか、この第１の端部と連結するルーティング装置と結合している処理装置に連結するか、別の素子に連結し、この素子に、および／またはこの素子からデータをルーティングすることができる。この別の素子は、たとえば集積回路の接続端子のうちの１つであり、この素子よってチップがデータの送信および／または受信を行うことができる。ルーティング接続は、図３に符号Ｃｘで示している（明瞭に示すためにＣｘの一部のみに符号を付している）。
【００３９】
各ルーティング装置１１０Ａ〜１１０Ｉは、「２分割」されて２つのルータを有し、それぞれを第１レベルのルータ（平面ルータ１１２Ａ〜１１２Ｉ）および第２レベルのルータ（横断ルータ１１４Ａ〜１１４Ｉ）と呼ぶ。この２つのルータは、連結しているルーティング接続間でデータをルーティングするようになっている。
【００４０】
平面ルータ１１２Ａ〜１１２Ｉは、機能モジュール１０４Ａ〜１０４Ｉの平面でデータをルーティングするようになっている。したがって、平面ルータ１１２Ａ〜１１２Ｉはそれぞれ、その機能モジュールの平面で隣接する機能モジュールの１つまたは複数のルーティング装置１１０Ａ〜１１０Ｉの平面ルータと接続している。したがって、各平面にある平面ルータは、ネットワーク（平面ネットワークまたは第１レベルのネットワークと呼ぶ）を形成し、ネットワーク内の平面ルータは互いに接続されている。記載例のチップは、平面ネットワークを３つ有している。これらの各平面ネットワークでは、平面ルータを通過するだけで、いずれか２つの平面ルータ間でデータをルーティングすることができる。  したがって、第１の層１０２Ａの平面ネットワークは、平面ルータ１１２Ａ、１１２Ｂおよび１１２Ｃを有する。第２の層１０２Ｂの平面ネットワークは、平面ルータ１１２Ｄおよび１１２Ｅを有する。第３の層１０２Ｃの平面ネットワークは、平面ルータ１１２Ｆ、１１２Ｇ、１１２Ｈおよび１１２Ｉを有する。
【００４１】
横断ルータ１１４Ａ〜１１４Ｉは、機能モジュール１０４Ａ〜１０４Ｉの平面を横断方向に（つまりネットワーク１０６Ａ、１０６Ｂおよび１０６Ｃの間）、機能モジュール１０４Ａ〜１０４Ｉの処理装置１０８Ａ〜１０８Ｉに向かって、またはこれらの処理装置からデータをルーティングするようになっている。各横断ルータ１１４Ａ〜１１４Ｉは、まず平面ルータ１１２Ａ〜１１２Ｉおよび機能モジュール１０４Ａ〜１０４Ｉの処理装置１０８Ａ〜１０８Ｉに接続する。各横断ルータ１１４Ａ〜１１４Ｉはさらに、上側および／または下側に隣接する機能モジュールがある場合にはそのモジュールのそれぞれのルーティング装置１１０Ａ〜１１０Ｉに接続する。記載の例では、１１４Ａと１１４Ｄ、１１４Ｄと１１４Ｆ、１１４Ｃと１１４Ｅ、１１４Ｅと１１４Ｈの各ペアの２つの横断ルータは互いに横断方向に接続される。
【００４２】
チップ１４は、横断ルータの線状のネットワークを有し、このそれぞれのネットワークで横断ルータが互いに接続されていることがわかる。この各横断ネットワークでは、横断ルータを通過するだけで、いずれか２つの横断ルータ間でデータをルーティングすることができる。特に、記載例のチップ１４の部分１００は、３つの横断ルータ１１４Ａ、１１４Ｄおよび１１４Ｆを有する第１の横断ネットワークと、３つの横断ルータ１１４Ｃ、１１４Ｅおよび１１４Ｈを有する第２の横断ネットワークとの２つの横断ネットワークを有する。
【００４３】
ルータ１１２Ａ〜１１２Ｉ、１１４Ａ〜１１４Ｉおよび処理装置１０８Ａ〜１０８Ｉの間をそれぞれ接続するルーティング接続Ｃｘは通信用リンクであり、通信路とも呼ばれ、１対１で双方向にデータを送信することが好ましい。この双方向のルーティング接続Ｃｘは図３に両方向の矢印で示している。
【００４４】
同じく、メッセージ形式でデータを交換する処理装置１０８Ａ〜１０８Ｉならびにルータ１１２Ａ〜１１２Ｉ、１１４Ａ〜１１４Ｉは、データパケット（「パケットスイッチング」）によってデータの交換ができるようになっていることが好ましく、このデータパケットにはメッセージの一部、メッセージ全体または複数のメッセージも含まれる。また、データパケットの交換は、ワームホール（英語で「Ｗｏｒｍｈｏｌｅ」）形式で実現するのが好ましく、この形式ではデータパケットはセグメント（英語で「ｆｌｉｔ」、「ｆｌｏｗ  ｃｏｎｔｒｏｌ  ｄｉｇｉｔ（フロー・コントロール・ディジット）」の略）に分割される。このように、各処理装置１０８Ａ〜１０８Ｉはルーティング装置１１０Ａ〜１１０Ｉにセグメント形式でデータパケットを送信し、データパケットはほかのルーティング装置１１０Ａ〜１１０Ｉを通って目的の処理装置まで送信される。目的の処理装置はセグメントからデータパケットを再構築したのちに、データパケットからメッセージを再構築する。
【００４５】
次に、図４を参照しながら、２分割したルーティング装置を詳細に説明する。ここでは対応する処理装置に接続し、考えられる６通りの方向（北、南、東、西、上および下をそれぞれＮ、Ｓ、Ｅ、０、ＨおよびＢで示している）に隣接する機能モジュールに接続するルーティング装置の場合であり、たとえば図３のルーティング装置１１０Ｅである。この図では、双方向の各ルーティング接続Ｃｘは、入力通信経路と出力通信経路を示している。
【００４６】
したがって、平面ルータ１１２Ｅは、北、南、東および西の４方向に４つの入力通信経路および４つの出力通信経路と接続している。
【００４７】
平面ルータ１１２Ｅはさらに、出力通信経路と入力通信経路に接続して横断ルータ１１４Ｅとデータ交換を行う。横断ルータ１１４Ｅは、入力通信経路と出力通信経路に接続して平面ルータ１１２Ｅとデータ交換を行い、２つの入力通信経路と２つの出力通信経路に上下方向で接続し、処理装置１０８Ｅに対する入力通信経路と出力通信経路に接続する。
【００４８】
２つのルータ１１２Ｅ、１１４Ｅはそれぞれ、各入力通信経路に対して入力ポート１１８、１２０をそれぞれ有し、特に入力データをバッファリングする。
【００４９】
各ルータ１１２Ｅ、１１４Ｅはさらに、出力通信経路を決定するためのルーティング決定システム（英語で「Ｒｏｕｔｉｎｇ  Ｃｏｍｐｕｔａｔｉｏｎ（ルーティング計算）」）１２２、１２４を有し、この出力通信経路に対して入力ポート１１８、１２０にバッファリングしたデータをルーティングする。
【００５０】
各ルータ１１２Ｅ、１１４Ｅはさらに、クロスバースイッチ１２６、１２８（英語で「ｃｒｏｓｓｂａｒ」）を有して各入力ポート１１８、１２０を各出力ポートに選択的に接続する。記載例では、各ルータ１１２Ｅ、１１４Ｅはそれぞれ１つのクロスバースイッチ１２６、１２８を有し、そのサイズは入力通信経路の数と出力通信経路の数の積に等しい。したがって、平面ルータ１１２Ｅのクロスバースイッチ１２６のサイズは５×５であり、横断ルータ１１４Ｅのクロスバースイッチ１２８のサイズは４×４である。
【００５１】
各ルータ１１２Ｅ、１１４Ｅはさらに、クロスバースイッチ１２６、１２８を制御するためのスイッチ割り当てシステム（英語で「Ｓｗｉｔｃｈ  Ａｌｌｏｃａｔｏｒ（スイッチアロケータ）」）１３０、１３２を有し、入力ポート１１８、１２０とルーティング決定システム１２２、１２４が決定する出力通信経路とを接続する。
【００５２】
次に、２００７年５月、ＡＣＭ  ＳＩＧＡＲＣＨ  Ｃｏｍｐｕｔｅｒ  ａｒｃｈｉｔｅｃｔｕｒｅ  ｎｅｗｓ、第３５巻、第１３８〜１４９頁に公表されたＪ．Ｋｉｍらによる論文「  Ａ  ｎｏｖｅｌ  ｄｉｍｅｎｓｉｏｎａｌｌｙ−ｄｅｃｏｍｐｏｓｅｄ  ｒｏｕｔｅｒ  ｆｏｒ  ｏｎ−ｃｈｉｐ  ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｉｎ  ３Ｄ  ａｒｃｈｉｔｅｃｔｕｒｅｓ（３Ｄアーキテクチャでのオンチップ通信用に次元的に分解した新たなルータ）」から引用したデジタルデータを基に、本発明の利点を詳細に説明する。
【００５３】
ルーティング装置１１０Ｅが単一ルータのみで構築されている場合、このルータは７つの入力通信経路と７つ出力通信経路に接続されることになる。これにはサイズ７×７のクロスバースイッチも含まれ、通常は約１７３００μｍ２の面積を占有して約９．４ｍＷを消費する（１つのスイッチが５００ＭＨｚで５０％作動する場合）。ところが、サイズ５×５のルータのクロスバースイッチは、平面ルータ１１２Ｅのように、約８５００μｍ２の面積を占有して約４．２ｍＷを消費し（１つのスイッチが５００ＭＨｚで５０％作動する場合）、サイズ４×４のクロスバースイッチは、横断ルータ１１４Ｅのように、占有面積はさらに小さくなってこれよりも少ない消費量となる。したがって、５×５および４×４の２つのルータの合計面積は、単一ルータの面積７×７よりもやや小さくなる。さらに、５×５および４×４の２つのルータは同時に使用され、その電気消費量は７×７の単一ルータの消費量よりもやや少なくなる。しかしながら、上で説明したように、ルーティング装置を介してデータをルーティングするために、ある瞬間からほとんどの間２つのルータのうちの１つのみが使用される状態となり、２分割したルーティング装置の平均電気消費量は、単一ルータによるルーティング装置よりも明らかに少なくなる。
【００５４】
入力通信経路の数と出力通信経路の数が、隣接する機能モジュールの数に応じて変わるだけであれば、記載例のチップ１４のほかの２分割したルーティング装置は同一のものである。
【００５５】
前述したようなチップによって性能が向上し、特に、特殊なルーティングアルゴリズムを課すことなく容量と反応時間の点で利点が得られることは明らかである。
【００５６】
実際に、横断ルータが同一横断ネットワークに属する機能モジュールの処理装置にデータを送信する際は、このデータは横断ルータのみを通過する。したがって、横断ルータはサイズが小さく、特に２分割していないルーティング装置を備える単一ルータのサイズよりも小さいため、２分割したルーティング装置を使用することが有利となる。  
【００５７】
平面ルータが同一の平面ネットワークに属する２つの機能モジュール間にデータを送信する際は、このデータは横断ルータを通過したのち、Ｎ個の平面ルータを通過し（Ｎは通過する機能モジュールの数）、最後に再び横断ルータを通過する。ルーティング装置が単一ルータしか備えていない場合は、データはこの単一ルータの数であるＮ個を通過することになる。したがって、Ｎの数が増加するほど、２分割したルーティング装置を使用することが有利となる。追加した２つの横断ルータを通過したとしても、平面ルータが小型で、特に２分割していないルーティング装置を備える単一ルータよりも小型であるために、この追加分は相殺されるからである。
【００５８】
最後に、横断ルータが同一の横断ネットワークに属してはいない別の層の２つの機能モジュールにデータを送信する際は、このデータはＭ＋１個の横断ルータを通過したのち（Ｍは２つの機能モジュールを分離する層の数）、Ｎ個の平面ルータを通過し（Ｎは到着する層で通過する機能モジュールの数）、最後に横断ルータを通過する。ルーティング装置が単一ルータしか備えていない場合は、データはこの単一ルータの数であるＭ＋Ｎ個を通過することになる。したがって、Ｍ＋Ｎの数が増加するほど、２分割したルーティング装置を使用することが有利となる。追加した２つの横断ルータを通過したとしても、平面ルータおよび横断ルータが小型で、特に２分割していないルーティング装置を備える単一ルータよりも小型であるために、この追加分は相殺されるからである。
【００５９】
本発明は前述の実施形態に限定されるものではないことを述べておく。実際に、当業者には、ここに開示した教示に照らして上記の実施形態にさまざまな修正を加えてもよいことは明らかである。
【００６０】
特に、チップは、ルーティング装置が２分割されていない機能モジュールを有する、すなわち単一のルータを有することもできる。特に、２分割されていないルーティング装置は、機能モジュールが上下に隣接する機能モジュールがない場合、または上下の機能モジュールに接続されていない場合に設置されていることが好ましい。
【００６１】
さらに、ルーティング装置が２分割されている機能モジュールの処理装置は、横断ルータの代わりに平面ルータに接続してもよい。こうすることにより、機能モジュールが全方角の隣接モジュールと接続している場合、６つのルーティング接続（平面隣接する４つの機能モジュール、処理装置および横断ルータ）と連結している平面ルータと、３つのルーティング接続（上下平面２つの機能モジュールおよび平面ルータ）と連結している横断ルータが得られる。
【００６２】
さらに、各層の機能モジュールのネットワークの立体的構造は、格子状の構造に限定されるものではない。たとえば、この構造の代わりに次の構造のうちの１つを使用してもよい。コーダルリング（英語で「  ｃｈｏｒｄａｌ  ｒｉｎｇ」）、ファットツリー（英語で「ｆａｔ  ｔｒｅｅ  」）、トーラス（英語で「  ｔｏｒｕｓ」）または折り畳みトーラス（英語で「  ｆｏｌｄｅｄ  ｔｏｒｕｓ」）である。平面ルータの平面ネットワークがそれぞれこの構造を取ることがわかる。
【００６３】
このほか、  チップは、集積回路を形成するのに必ずしもパッケージに封入する必要はない。  実際に、チップはプリント基板のような電子回路に直接搭載することもできる。  
【００６４】
以下の請求項では、使用する語句を本明細書で開示した実施形態に限定するものとして解釈してはならず、本請求項が表明した方式により範囲に含めることを意図するあらゆる同等のものも含まれ、その予測内容は、ここに開示した教示を実践する際に一般知識を適用することによって当業者が到達し得る範囲内のものと解釈すべきである。
【図１】
2011182393.tif 000003
【図２】
2011182393.tif 000004
【図３】
2011182393.tif 000005
【図４】
2011182393.tif 000006