(57)【要約】【課題】多数の並列接続を同時に生成するための新規な相互接続ネットワークアーキテクチャを提供すること。【解決手段】ｍ個の第１電子回路(102)及びｎ個の第２電子回路(106)との相互接続ネットワークであって、ｍ個の相互接続サブネットワークを備え、それぞれは、ｍ個の第１回路の一つをｎ個の第２回路の全てに接続するアドレスバス及び情報伝送バスであって、リピートデバイスを通して相互に接続された複数の電気的導通配線セグメント(112a,112b)を備えたバスと、アドレス信号の値に基づきリピータデバイスの一つを活性化する機能を有し、リピータデバイスを制御するための手段であって、活性化リピータデバイスが、ｍ個の第１回路の一つとｎ個の第２回路の一つとの間又は複数のｎ個の第２回路の間のデータ信号のための情報伝送バスにおける通信経路を形成する手段とを備える。ｍ及びｎは１よりも大きい整数である。【選択図】図４
2010282627.tif 000002
【特許請求の範囲】
【請求項１】
ｍ個の第１電子回路（１０２）およびｎ個の第２電子回路（１０６）との相互接続ネットワーク（１００）であって、ｍ個の相互接続サブネットワークを備え、各相互接続サブネットワークは、
−  前記ｍ個の第１回路（１０２）のうちの一つを前記ｎ個の第２回路（１０６）の全てに接続する少なくとも一つのアドレスバスおよび少なくとも一つの情報伝送バスであって、前記情報伝送バスは、信号リピートデバイス(１１４；１１４．１−１１４．３)を通して相互に接続された複数の信号伝送ライン部分（１１２ａ，１１２ｂ）を備えた情報伝送バスと、
−  前記ｍ個の第１回路（１０２）のうちの前記一つによって前記アドレスバスに送出されるべきアドレス信号の値に基づいて前記リピータデバイス(１１４；１１４．１−１１４．３)のうちの少なくとも一つを活性化する機能を有し、前記リピータデバイス(１１４；１１４．１−１１４．３)を制御するための手段であって、活性化された前記リピータデバイスは、前記ｍ個の第１回路（１０２）のうちの少なくとも前記一つと前記ｎ個の第２回路（１０６）のうちの少なくとも一つとの間、及び／又は、前記ｎ個の第２回路（１０６）のうちの少なくとも第１のものと前記ｎ個の第２回路（１０６）のうちの少なくとも第２のものとの間のデータ信号のための情報伝送バスにおける通信経路を形成する手段とを備え、
ここで、ｍおよびｎは１よりも大きい整数である、相互接続ネットワーク。
【請求項２】
前記ｍ個の第１回路（１０２）はプロセッサを備え、及び／又は、前記ｎ個の第２回路（１０６）は、前記ｍ個の第１回路（１０２）によって共有されるメモリ（１０４）のメモリブロックを備えた、請求項１記載の相互接続ネットワーク。
【請求項３】
前記情報伝送バス上の前記信号リピータデバイス（１１４；１１４．１−１１４．３）は２方向性である、請求項１または２の何れか１項記載の相互接続ネットワーク。
【請求項４】
前記アドレスバスは、前記信号リピータデバイスにより相互に接続される複数部分の信号伝送ラインを備えた、請求項１ないし３の何れか１項記載の相互接続ネットワーク。
【請求項５】
前記信号リピータデバイス(１１４；１１４．１−１１４．３）は、ロジック回路を備えた、請求項１ないし４の何れか１項記載の相互接続ネットワーク。
【請求項６】
前記制御手段は、前記ｎ個の第２回路（１０６）のうちの一つにおける少なくとも一つのデータリード及び／又はライト動作を行うために前記ｎ個の第２回路（１０６）のうちの前記一つを選択する手段を備え、及び／又は、前記ｍ個の第１回路による前記ｎ個の第２回路（１０６）へのアクセス優先度を管理する手段を備え、及び／又は複数の第２回路（１０６）の複数のアドレスを記憶する手段を備えた、請求項１ないし５の何れか１項記載の相互接続ネットワーク。
【請求項７】
前記制御手段は、複数の制御デバイスを備え、各制御デバイスは、前記リピータデバイス(１１４；１１４．１−１１４．３）のうちの一つを、前記アドレス信号の値に応じて、活性化または非活性化する機能を有する請求項１ないし６の何れか１項記載の相互接続ネットワーク。
【請求項８】
前記ｎ個の第２回路が共有メモリのメモリブロックを備える場合、前記制御デバイスは、前記共有メモリで実施(implement)される、請求項７記載の相互接続ネットワーク。
【請求項９】
前記制御手段は、ｎ個の制御デバイスを含む、請求項７または８の何れか１項記載の相互接続ネットワーク。
【請求項１０】
前記制御デバイスのそれぞれは、同様のロジック回路を含み、個別のコードが、前記ｎ個の第２回路（１０６）のうちの少なくとも一つを識別するために各制御デバイスへの入力に印加されるように設計された、請求項７ないし９の何れか１項記載の相互接続ネットワーク。
【請求項１１】
各相互接続サブネットワークは、第２信号リピータデバイスを通じて相互に接続された複数部分の信号伝送ラインからなる第２情報伝送バスを備え、前記制御手段は、前記アドレス信号の値に応じて前記第２リピータデバイスのうちの少なくとも一つを活性化する機能を有し、活性化された前記第２のリピータデバイスは、前記第２情報伝送バスで、前記ｍ個の第１回路（１０２）のうちの一つと前記ｎ個の第２回路（１０６）のうちの一つとの間、または前記ｎ個の第２回路（１０６）のうちの第１のものと前記ｎ個の第２回路（１０６）のうちの第２のものとの間の信号通信経路を形成する、請求項１ないし１０の何れか１項記載の相互接続ネットワーク。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、相互接続の動的ネットワークに関し、換言すれば、そのネットワーク内の接続またはトポロジーが、ルーティングされるべきデータの送信元および送信先に応じて変化するネットワークに関する。本発明は、特に、例えば複数のプロセッサにより共有される、複数のメモリブロックを有する複数のプロセッサ（例えば、クラスター構成のプロセッサ）の相互接続に適用することができる。
【背景技術】
【０００２】
動的相互接続ネットワークは、トポロジー、換言すると接続形態が、プログラムの実行中に、または、異なるプログラムの多数の実行の合い間に変化するネットワークである。このタイプの相互接続ネットワークは、とりわけ、並列コンピュータアーキテクチャの分野におけるアプリケーションで使用される。図１は、ネットワークを図式的に示し、このネットワークは、ｎ個の第１要素、例えば、共有メモリ３における５個のメモリブロック３．１−３．５と、ｍ個の第２要素、例えば基本プロセッサ(elementary processor)５．１−５．６を接続し、ここで、ｎおよびｍはゼロ以外の自然数である。このような動的ネットワーク１は、各プロセッサ５．１−５．６がメモリブロック３．１−３．５のそれぞれと通信することを可能にする。従って、メモリブロック３．１−３．５に格納されたデータは、全てのプロセッサ５．１−５．６の間で共有される。
【０００３】
この動的ネットワーク１は、図２に示されるような“クロスバー(crossbar)”ネットワークの形式で構成される。この動的ネットワークは、ｎ×ｍスイッチ７、換言すると、例えば５×６テーブル（６行、５列）の形式で相互に接続された、図２に示す例における３０個のスイッチを備える。従って、プロセッサ５．１−５．６のうちの一つが、メモリブロック３．１−３．５に対してデータのリード又はライトを望む場合、このプロセッサとこのメモリブロックを接続する経路上に配置されたスイッチ７が、このプロセッサとこのメモリブロックとの間の通信リンクを形成するために活性化(active)する。
【０００４】
しかしながら、このようなネットワークは、或る状況下では、同時に作動することができるプロセッサの数が制約されるという欠点を有する。例えば、プロセッサ５．６がメモリブロック３．５にライトする場合、共有メモリ３が、プロセッサ５．６とメモリブロック３．５との間の通信経路を形成するのに占有されていると、他のプロセッサがメモリブロック３．１−３．５のうちの一つと通信することは不可能である。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、多数の並列接続間の異なる要素とは無関係に、多数の並列接続を同時に生成するための新規な相互接続ネットワークアーキテクチャを提案することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は、ｍ個の第１電子回路およびｎ個の第２電子回路との相互接続ネットワークを提案し、ｍ個の相互接続サブネットワークを備え、各相互接続サブネットワークは、
−  前記ｍ個の第１回路のうちの一つを前記ｎ個の第２回路の全てに接続する少なくとも一つのアドレスバスおよび少なくとも一つの情報伝送バスであって、前記情報伝送バスは、信号リピートデバイスを通して相互に接続された複数の信号伝送ライン部分を備えたアドレスバスおよび情報伝送バスと、
−  前記ｍ個の第１回路のうちの前記一つによって前記アドレスバスに送出されるべきアドレス信号の値に基づいて前記リピータデバイスのうちの少なくとも一つを活性化する機能を有し、前記リピータデバイスを制御するための手段であって、活性化された前記リピータデバイスは、前記ｍ個の第１回路のうちの少なくとも前記一つと前記ｎ個の第２回路のうちの少なくとも一つとの間、及び／又は、前記ｎ個の第２回路のうちの少なくとも第１のものと前記ｎ個の第２回路のうちの少なくとも第２のものとの間のデータ信号のための情報伝送バスにおける通信毛糸を形成する手段とを備え、
ｍおよびｎは１よりも大きい整数である。
【０００７】
この相互接続ネットワークは、概して、全てのタイプの電子回路、電気回路、マイクロ電子回路、ナノ電子回路に適用可能であり、光学回路にも適用可能である。
【０００８】
このようなネットワークでは、ｍ個の第１回路は、ｎ個の第２回路に格納されたデータ、及び／又は第２回路にリードされたデータのような情報を共有することができる。また、そのことを考慮して、このネットワークは、各第１回路についてサブネットワークから構成され、ｍ個のサブネットワークのそれぞれは、他のサブネットワークと独立かつ同時的に動作することができる。従って、ｍ個の全ての第１回路は、ｎ個の第２回路と同時的に通信してもよい。
【０００９】
データを交換する二つの回路間の経路上に配置されたリピータデバイスのみ活性化できるので、換言すると、電気的に給電され又は導通するので、この相互接続ネットワークにおける電力の消費は、従来技術による相互接続ネットワークにおける場合よりも少なくなる。従って、制御手段は、幾つかのリピータデバイスを活性化し、他のリピータデバイスを非活性化して、情報伝送バスにおける通信経路を形成する。
【００１０】
ｍ個の第１回路は、プロセッサであってもよく、またはそのプロセッサを備えても良く、及び／又は、ｎ個の第２回路は、ｍ個の第１回路によって共有されるメモリのメモリブロックであってもよく、またはそのメモリブロックを備えてもよい。各メモリブロックは、多数の個別のメモリレジスタを備えてもよい。
【００１１】
情報伝送バス上の信号リピータデバイスは、同一通信バス上でのリードおよびライトを可能とする、双方向性のバスであってもよい。
【００１２】
アドレスバスは、複数部分の信号伝送ラインを含んでもよく、例えば、信号リピータデバイスによって相互に接続された光ファイバのような光伝送ラインまたは導電線を含んでもよい。
【００１３】
信号リピータデバイスは、ロジック回路を含んでもよい。
【００１４】
また、リピータデバイスの制御手段は、ｎ個の第２回路のうちの一つにおける少なくとも一つのリード及び／又はライト動作を行うために上記ｎ個の第２回路のうちの上記一つを選択する手段、及び／又は、ｍ個の第１回路を通じたｎ個の第２回路へのアクセス優先度を管理する手段、及び／又は、複数の第２回路の複数のアドレスを記憶する手段を備えてもよい。
【００１５】
上記制御手段は、複数の制御デバイスを含んでもよく、各制御デバイスは、上記リピータデバイスのうちの一つを、アドレス信号の値に応じて、活性化または非活性化する機能を有しても良い。
【００１６】
ｎ個の第２回路が共有メモリのメモリブロックを備える場合、上記制御デバイスは、上記共有メモリで実施(implement)されてもよい。
【００１７】
上記制御手段は、ｎ個の制御デバイスを含んでもよい。
【００１８】
制御デバイスのそれぞれは、同様のロジック回路を含んでもよく、個別のコードが、ｎ個の第２回路のうちの少なくとも一つを識別するために各制御デバイスへの入力に印加されるように設計される。これらのコードは、メモリに記録され又はハードコード化されてもよく、それらが相互に区別できるように制御デバイスの入力に印加されてもよい。
【００１９】
各相互接続サブネットワークは、第２信号リピータデバイスを通じて相互に接続された複数部分の信号伝送ラインからなる第２情報伝送バスを備えてもよく、上記制御手段は、アドレス信号の値に応じて第２リピータデバイスのうちの少なくとも一つを活性化する機能を有し、活性化された第２のリピータデバイスは、上記第２情報伝送バスで、ｍ個の第１回路のうちの一つとｎ個の第２回路のうちの一つとの間、またはｎ個の第２回路のうちの第１のものとｎ個の第２回路のうちの第２のものとの間の信号通信経路を形成する。
【００２０】
本発明は、添付の図面を参照して、純粋に指針として与えられる実施形態の説明を読めば、より良く理解することができ、決して制限的なものではない。
【００２１】
以下に述べる異なる図面の同一部分、類似部分、または等価部分は、或る図面と他の図面との比較を容易化するように、同一の数字が付されている。
【００２２】
各図面に示された異なる部分は、必ずしも同一のスケールでのものではなく、図を読み取りやすくするためのものに過ぎない。
【００２３】
異なる可能性（変形および実施例）は、相互に相互排他的ではないと理解されるべきであり、それらは、相互に組み合わせることが可能である。
【図面の簡単な説明】
【００２４】
【図１】複数の要素を相互に接続する動的相互接続ネットワークを図式的に示す図である。
【図２】複数の要素を相互に接続する、従来技術によるクロスバー型の相互接続ネットワークを図式的に示す図である。
【図３】本発明による相互接続ネットワークにおいて第１電子回路を４つの第２電子回路に接続する相互接続サブネットワークの一例を図式的に示す図である。
【図４】４個のプロセッサと、６個のメモリブロックに分割された共有メモリとの間の動的リンクを形成する、本発明の特定の実施形態による相互接続ネットワークを示す図である。
【図５Ａ】本発明の特定の実施形態による相互接続ネットワークにおいて使用されるリピータデバイス部分を構成するリピータの実施例を示す図である。
【図５Ｂ】本発明の特定の実施形態による相互接続ネットワークにおいて使用されるリピータデバイス部分を構成するリピータのシンボルを示す図である。
【図６】本発明の特定の実施形態による相互接続ネットワーク部分を構成するリピータデバイスの一例を示す図である。
【図７】本発明の特定の実施形態による相互接続ネットワーク部分を構成するリピータデバイスの一例を示す図である。
【発明を実施するための形態】
【００２５】
最初に、第１電子回路１０２、例えばプロセッサを、複数の第２電子回路１０６、例えば共有メモリの４個のメモリブロックに接続する相互接続サブネットワークを図式的に示す図３を参照する。図３は、単一の相互接続サブネットワークを示すが、この相互接続サブネットワークが属する相互接続ネットワークは、１または２以上の他の相互接続サブネットワーク、例えば、この図３に示されるサブネットワークと同様にして、他の第１電子回路１０２を４個のメモリブロック１０６に接続するサブネットワークを含む。
【００２６】
図３に示される相互接続サブネットワークは、プロセッサ１０２が、メモリブロック１０６にデータをライトし、それからデータをリードすることを可能とする。これを達成するために、サブネットワークは、複数部分の伝送ライン、例えば、導電トラックを含み、プロセッサ１０２と４個のメモリブロック１０６との間の情報伝送バスおよびアドレスバスを形成する。図３に示される例では、情報伝送バスのみが、導電トラック１１２により示されている。
【００２７】
この例では、情報伝送バスは、２方向性のバスであり、例えば、メモリブロック１０６の少なくとも一つにライトされるプロセッサ１０２より出力されたデータ信号、及び／又は、メモリブロック１０６のうちの少なくとも一つからプロセッサ１０２によりリードされたデータ信号、及び／又は、プロセッサ１０２の制御を通じて、メモリブロック１０６のうちの一つから少なくとも一つの他のメモリブロック１０６にルーティングされるデータ信号をルーティングするために使用することができる。一変形例では、例えば、サブネットワークは、プロセッサ１０２からメモリブロック１０６へ、または反対にメモリブロック１０６からプロセッサ１０２へデータを伝送するためだけのものであり、情報伝送は一方向性であってもよい。
【００２８】
また、情報伝送バスは、データ自体以外の情報もルーティングすることができ、例えば、メモリブロック１０６においてリード動作またはライト動作が行われるかどうかを示すリード／ライト信号をルーティングしてもよく、あるいはリード／ライト動作を有効化し又は有効化しないクエリー有効化信号(query validation signals)をルーティングしてもよい。特に、リード、ライト信号は、情報伝送バスにおけるデータの伝送方向（プロセッサ１０２からメモリブロック１０６への方向、または反対方向）を決定するために、この情報伝送バスが２方向性である場合に使用されてもよい。メモリブロック１０６のそれぞれは、それぞれがメモリレジスタのような異なるメモリロケーションを形成する複数のメモリサブブロックを含み、それは、例えば送信されるデータビットと連結される１または２以上の送信ビットを含む信号と区別される信号の形式で、情報伝送バスを通じて、送信先メモリサブブロックのアドレス（“チップセレクト”と称される）を伝送することを可能とする。また、他の信号も情報伝送バスを通じて伝送してもよい。
【００２９】
アドレスバスは、送信先メモリブロック１０６のアドレス信号をルーティングし、その値は、リードまたはライト動作が行われるメモリブロック１０６を表す。このアドレスバスは、一方向性であってもよい。この場合、各メモリブロック１０６がそれらのデータを分析することができるように、アドレスバス上を伝送される信号が全てのメモリブロック１０６に伝送され、通信経路がプロセッサ１０２と送信先メモリブロック１０６との間に設定されることができるので、アドレスバスを設定(configured)することができない。
【００３０】
導通トラックの部分１１２が相互に接続され、従って連続的な通信経路を形成することができるように、情報伝送バスは、導通トラック１１２の各部分間に配置された信号リピータデバイス１１４により構成される。これらのリピータデバイス１１４のそれぞれは、例えば、それに電気的に給電し又は給電しないことにより、活性化または非活性化されてもよい。従って、プロセッサ１０２と、このプロセッサ１０２がデータをライトまたはリードしようとするメモリブロック１０６との間の経路上に実際に配置されたリピータデバイス１１４を活性化するだけで、各サブネットワークにおける通信経路を規定することが可能である。リピータデバイス１１４は、図３には示されていない、制御手段によりリードされるアドレスバスで伝送される信号の値に応じて活性化され、または活性化されなくてもよく、この制御手段は、リピータデバイス１１４のそれぞれに電気的に給電し、または、リピータ１１４が、情報伝送バスで設定される通信経路上に配置されているか否かによらずに活性化されてもよい。
【００３１】
一変形例では、制御手段は、多数のアドレスを記憶する機能を有するレジスタを備えてもよく、したがって、引き続いて個別のメモリブロック１０６またはプロセッサ１０２に多数のデータ信号をルーティングするために、引き続いて情報伝送バスにおける多数の通信経路を設定する機能を有する。
【００３２】
また、相互接続サブネットワークは、第１情報伝送バスと並列にメモリブロック１０６のうちの一つとプロセッサ１０２との間で他の信号を伝送するための第２情報伝送バスを備えることも可能である。第１の情報伝送バスと同様に、この第２情報伝送バスは、プロセッサ１０２とメモリブロック１０６のうちの少なくとも一つとの間、または二つのメモリブロック１０６間の特定の通信経路を形成するために、リピータを活性化し又は活性化しないことにより設定されてもよい。また、この第２情報伝送バスは、ルーティングされる情報のタイプに応じて、２方向性または１方向性であってもよい。
【００３３】
図４を参照して、特定の一実施形態による相互接続ネットワーク１００を示し、それは、相互に同時的かつ独立的に、４個のプロセッサ１０２が、共有メモリ１０４に対してデータをライトしリードすることを可能とし、複数のメモリブロック１０６（図４では、そのうちの６個が示されている）を備える。この相互接続ネットワーク１００は、複数のサブネットワークを備え、各サブネットワークは、少なくとも一つの情報伝送バスおよび少なくとも一つのアドレスバスにより、プロセッサ１０２のうちの一つを６個のメモリブロック１０６に接続する。各サブネットワークは、複数の束(bundles)の電気的導通線または導通部（例えば、導通トラック）から構成され、それは、プロセッサ１０２のうちの一つとメモリブロック１０６のそれぞれとの間の情報伝送バスおよびアドレスバスを形成する。図４は、導通トラック１１２ａおよび１１２ｂを示し、これらを介して４個のサブネットワークに対してデータがライトまたはリードされ、それぞれは、プロセッサ１０２を６個のメモリブロック１０６に接続する。
【００３４】
これらのサブネットワークの情報伝送バスは、２方向性のバスであり、メモリ１０４にライトされるようにプロセッサ１０２によって送信された信号をルーティングする機能を有し、及び／又は、メモリ１０４からプロセッサ１０２のうちの一つによってリードされるデータ信号をルーティングし、及び／又は、メモリブロック１０６のうちの一つから１または２以上の他のメモリブロック１０６にルーティングされるデータ信号をルーティングする機能を有する。また、情報伝送バスが構成されることができ、換言すれば、これらのバス上に放出された各データ信号は、メモリブロック１０６に伝送され、または、この信号がアドレスされるプロセッサ１０２に伝送される。
【００３５】
ここで説明される実施形態では、アドレスバス（図示なし）は、送信先メモリブロック１０６のアドレス信号をルーティングするために使用され、その値はメモリブロック１０６を表す。情報伝送バス上に放出されるアドレス信号とは異なり、アドレスバス上で送信されるアドレス信号は、各メモリブロックがこれらのデータを分析できるように、全てのメモリブロックに伝送され、接続されるメモリブロック１０６が活性化され、通信経路が、送信元プロセッサ１０２と送信先メモリブロック１０６との間に設定されるので、これらのアドレスバスは構造化可能(configurable)ではない。
【００３６】
サブネットワーク配線束の数と配置は、共有メモリ１０４の形式と容量(dimension)に適合される。図４に示される例では、メモリブロック１０６は、３個のメモリブロック１０６の２つの列(columns)に配置されるので、相互接続サブネットワークにおける各バスは、２つの束の垂直配線１１２ｂを備え、これらの束のそれぞれは、相互に一つの列のメモリブロック１０６を接続し、水平配線１１２ａの束は、プロセッサ１０２のうちの一つを２個の束の垂直配線１１２ｂに接続する。
【００３７】
各サブネットワークの各バスにおける配線１１２ａおよび１１２ｂの束は、複数の部分にセグメント化される。従って、各配線セグメントの長さは、これらの配線セグメントにより形成される容量を抑制するために低減される。信号リピータデバイス１１４は、配線の各束における配線セグメント間に配置され、これらの各配線セグメントを共に接続し、連続した通信経路を形成する。とりわけ、リピータデバイス１１４は、プロセッサ１０２とメモリブロック１０６との間で、配線の全束に十分に短い時間内に振幅信号(amplitude signals)が伝送されるように、上記伝送された信号のスロープ(slope)を調整することができる。
【００３８】
各サブネットワークにおける異なる要素の配列は、これらの要素が使用される周波数に応じて選択される。例えば、プロセッサ１０２のうちの一つがメモリブロック１０２のうちの一つと極めて頻繁に通信する場合、このプロセッサ１０２とこのメモリブロック１０６との間に、可能な限り最短の毛色を形成することが可能である。従って、サブネットワークのトポロジーは、これらのサブネットワークを通じて接続される別の回路により、これらのサブネットワークの使用に応じて選択されることができる。
【００３９】
例えば、リピータデバイス１１４は、水平配線１１２ａの束で５００μｍごとに、垂直配線１１２ｂの束で２５０μｍごとに備えられてもよい。従って、これらのディメンジョンは、また、この相互接続ネットワーク１００で使用される配線セグメントの長さに対応する。これらのディメンジョンは、単に一例として述べたものであり、相互接続ネットワーク１００の異なるセグメントを作成するために使用されるトポロジーに基づいている。図４に示される例では、２個のリピータデバイス１１４が、垂直配線１１２ｂの束にプロセッサ１０２を接続する水平配線１１２ａの各束に配置されている。３個のリピータデバイス１１４が垂直配線１１２ｂの各束に存在し、各リピータデバイス１１４は、また、メモリブロック１０６のうちの一つに接続されている。
【００４０】
この例では、配線束１１２ａ，１１２ｂおよびリピータデバイス１１４のこの構造は、各サブネットワークについて同様であり、従って、相互接続ネットワーク１００の設計および製造を容易化する。
【００４１】
一変形例では、相互接続ネットワーク１００は、異なる個数の配線束、従ってバスを備えてもよい。また、異なる信号、及び／又は上述のものに対して追加の信号が相互接続ネットワーク１００のバス上に放出されてもよい。一般に、相互接続ネットワーク１００およびこのネットワーク上で発生される信号のアーキテクチャは、相互接続ネットワーク１００を通じて接続される要素のアーキテクチャに依存する。
【００４２】
リピータデバイス１１４のそれぞれは、それが電気的に給電されるか否かに応じて活性化されてもよく、活性化されなくてもよい。従って、プロセッサ１０２と、このプロセッサ１０２がデータをライトまたはリードするメモリブロックとの間の経路上のリピータデバイス１１４のみを活性化することにより、各サブネットワークにおける単一の通信経路を規定することが可能である。
【００４３】
各メモリブロック１０６は、制御デバイスを備え、それは図示されていないが、いわゆる選択調停器8selection arbitrator)であり、それは、それは、このメモリブロック１０６を選択し、または選択しなくてもよく、ドレスバス上にプロセッサ１０２によって創出されたアドレスデータに基づいて、例えばそれに給電し、または給電しないことにより、または、それを導通させ、または導通させないことにより、それに関連するリピータデバイス１１４を活性化し、活性化しなくてもよい。メモリブロック１０６は、アドレスバス上を伝送されるアドレスデータがデータリード動作またはライト動作を実施するためにこのメモリブロック１０６を選択するときに、それに関連する調停器により選択される。或いは、もし、この調停器に関連するメモリブロック１０６がリード動作またはライト動作が行われるメモリブロックでなければ、調停器は、リードまたはライト動作が行われるメモリブロック１０６とプロセッサ１０２を接続する経路上にリピータデバイス１１４があるか否かに応じて、この調停器に関連するメモリブロック１０６に接続されるリピータデバイス１１４を活性化し、または活性化しない。データは、図示しない内部バスを通じてメモリブロック１０６のうちの一つ内に伝送され、この内部バスは、メモリブロック１０６に関連するリピータデバイス１１４にも接続されている。
【００４４】
また、選択調停器は、複数のプロセッサが、異なるサブネットワークを通じて同一のメモリブロック１０６を同時にアクセスする場合、メモリブロック１０６に対するアクセス優先度を管理することができる。
【００４５】
リピータデバイス１１４は、リピータ１１５から構成される。リピータ１１５の一例は、図５Ａに示されている。このリピータ１１５は、ＮＡＮＤゲート１２０およびＮＯＲゲート１２２の入力に接続された入力１１８を備える。リピータにより伝送されるデータは、この入力１１８に印加される。リード／ライト信号は、ＮＡＮＤゲート１２０の第２入力１１９と、ＮＯＲゲート１２２の第２入力１２１に印加される。ＮＡＮＤゲート１２０の反転出力は、第１ＭＯＳトランジスタ１２４のゲートに接続され、ＮＯＲゲート１２２からの出力は、第２ＭＯＳトランジスタ１２６のゲートに接続され、第１トランジスタ１２４のソースは、第２トランジスタ１２６のドレインに接続され、リピータ１１５からの出力１２８を形成する。このリピータ１１５は、図５Ｂに示されるシンボルによって表される。このようなリピータ１１５は、入力に印加されたビットと同一の値を有するビットを、その出力に送出する。また、出力信号のレベルまたは振幅は、一定(constant)であり、入力信号のレベルに依存しない。リピータ１１５は、リード／ライト信号の２進値に応じて、出力ビットを出力し、または出力しない。
【００４６】
垂直配線１１２ｂ上に存在するリピータデバイス１１４は、これらの配線束上の情報をリピートするが、メモリブロック１０６への情報、またはメモリブロック１０６からの情報も伝送する。垂直配線１１２ｂの束のうちの一つに配置されるリピータデバイス１１４の例は、図６に示されている。それは、２個のリピータ１１５．１と１１５．２を備え、これらのリピータ１１５．１および１１５．２は、ヘッド−フット(head-foot)で配置され、とりわけ、メモリブロック１０６の内部バスに接続されている。これら２個のリピータ１１５．１，１１５．２は、リード／ライト信号の値によって制御され、一方は、他方が非活性化されている間、活性化される。図６における例では、リピータ１１５．１は、データがメモリブロック１０６にライトされるときに活性化され（リピータ１１５．１の出力はデータバスに接続される）、一方、第２リピータ１１５．２は、データがメモリ１０６からリードされるときに活性化される（リピータ１１５．２の入力はデータバスに接続される）。従って、２個のリピータ１１５．１，１１５．２のうちの一つのみが、リード動作またはライト動作中に活性状態になっている。他の２個のリピータ１１５．３および１１５．４は、垂直配線１１２ｂの束における２つのセグメント間のインターフェイスを形成する。リピータ１１５．１，１１５．２と同様に、２個のリピータ１１５．３，１１５．４のうちの一つのみが、リードデータまたはライトデータが伝送されるかどうかに応じて、および垂直配線１１２ｂの束上のリピータデバイス１１４の位置に応じて、情報の伝送期間中に活性状態となる。
【００４７】
水平配線１１２ａ上に存在するリピータデバイス１１４は、配線束１１２ａのうちの一つのセグメントとプロセッサ１０２のうちの一つとの間で情報を伝送するため、または、水平配線１１２ａの束の２つのセグメント間で情報をリピートするために使用される。一変形例では、このようなリピータデバイスは、垂直配線１１２ｂの束のうちの一つと水平配線１１２ａの束のうちの一つとの間の繰り返しインターフェイス(repetition interface)を構成してもよい。
【００４８】
これらの異なるリピータデバイスの例を図７に示す。水平配線１１２ａの束のセグメントとプロセッサ１０２のうちの一つとの間のインターフェイスを形成するように設計された第１リピータデバイス１１４の説明から開始する。第１リピータデバイス１１４．１は、リード／ライト信号により制御されるリピータ１１５．５と備え、その入力はプロセッサ１０２に接続され、その出力は水平配線１１２aの束のセグメントに接続されている。このリピータ１１５．５は、情報のライト動作がメモリブロック１０６のうちの一つで行われている場合に活性化されｒ、この情報は、プロセッサから送信先メモリブロック１０６に伝送される。また、第１リピータデバイス１１４．１は、リピータ１１５．５に対してヘッドフット(head-foot)で配置された第２リピータ１１５．６を備え、リード／ライト信号により制御され、その入力は、水平配線１１２ａの束のセグメントに接続され、その出力はプロセッサ１０２に接続されている。第２リピータ１１５．６は、メモリブロック１０６のうちの一つから情報をリードするための動作期間中、活性化され、この情報は、メモリブロック１０６からプロセッサ１０２に伝送される。この第２リピータ１１５．６は、また、ＮＡＮＤゲートで置き換えることが可能であり、その入力の一つが、配線１１２ａの束のセグメントに接続され、リード／ライト信号が、このＮＡＮＤゲートの第２入力に印加され、その出力は、プロセッサ１０２に接続される。
【００４９】
水平配線１１２ａの束の２つのセグメント間に配置された第２リピータデバイス１１４．２は、相互にヘッドフットで配置された２個のリピータ１１５．７および１１５．８を備え、その両方がリード／ライト信号により制御される。従って、これらの２個のリピータ１１５．７，１１５．８のうちの一つは、リードまたはライトデータ動作が行われているかどうかに応じて、活性化される。第３リピータデバイス１１４．３は、例えば、リピータデバイス１１４．２と同様に、水平配線１１２ａの束のセグメントと、垂直配線１１２ｂの束のセグメントとの間に配置されてもよい。
【００５０】
調停器、または制御デバイスは、組み合わせロジック回路により一般的に設計される。従って、全ての調停器は、同一のロジック回路から構成された同一のロジック構造を備える。物理アドレス、例えばメモリ１０４にハードコード化されたアドレスは、メモリにおけるその物理的位置に応じて各調停器に割り当てられ、換言すれば、それが関連するメモリブロック１０６の位置に応じて割り当てられる。これらの調停器の動作は、有用なリピータデバイスのみを活性化するロジック機能により管理され、換言すると、情報がリードまたはライトされるメモリブロックとプロセッサとの間の経路上に配置されたデバイスにより管理される。上記ロジック機能は最も直接的な経路、換言すると、最少数の活性化されたリピータデバイスを必要とする経路が、正しいリピータデバイス(right repeater device)を活性化することにより生成される。そして、他のリピータデバイスは、相互接続ネットワーク１００における電気的消費を抑えるために非活性化される。図４に示される構成では、プロセッサ１０２のうちの一つとメモリブロック１０６のうちの一つとの間の最短経路(minimum path)は、２個のリピータデバイス１１４の活性化を意味し、そのうちの一つは、水平配線１１２ａの束にあり、他の一つは、垂直配線１１２ｂの束にある。本システムのコーナーの一つに配置されたプロセッサと、そのコーナーとは反対側のコーナーに配置されたメモリブロック１０６との間の通信に対応する最長経路は、５個のリピータデバイス１１４の活性化を意味し、そのうちの２個は、水平配線１１２ａの束のうちの一つにあり、３個は、垂直配線１１２ｂの束のうちの一つにある。
【００５１】
図４に示される例では、メモリ１０４は、６個のメモリブロック１０６を備える。メモリブロック１０６のアドレスは、３ビットでコード化され、ＡＤＤＢ（２：０）で示される。メモリ１０４は、６個のメモリブロック１０６が３個のメモリブロックの２つの列に分配されているので、アドレスは、メモリブロックにおけるアドレスの上位ビット（ＡＤＤ（２））が、メモリブロックが配置された列を表すように、メモリスロットに割り当てられることができる（例えば、第１列について値ＡＤＤＢ（２）＝０、第２列について値ＡＤＤＢ（２）＝１）。従って、ＡＤＤＢ（２）の値から開始して、どのリピータデバイス１１４が、活性化されるべき水平配線１１２ａの束上に配置されるかを決定することができる。同様に、垂直配線１１２ｂの束のうちの一つに配列される各リピータデバイス１１４は、メモリブロック１０６に位置されるので、ビットＡＤＤＢ（１：０）の値は、垂直配線１１２ｂの束上に配置された何れのリピータデバイス１１４が活性化されるべきかを決定するために使用されてもよい。
【００５２】
一変形例において、リピータデバイスのアドレスは、より多くのビットでコード化されてもよい。使用されるロジック機能は、相互接続ネットワークのアーキテクチャおよび構成に応じて適合される。
【００５３】
従って、これらのロジック機能を使用し、メモリブロック１０６のうちの一つとプロセッサ１０２のうちの一つとの間の所定経路での情報の伝送に実際的に有用なリピータデバイス１１４のみを活性化することにより、従来、相互接続ネットワークにおける全てのリピータデバイスに電力を供給するために使用されていた電気的エネルギーの多くを節約することができる。この原理は、とりわけ、情報伝送バスリピータデバイスに適用可能であり、なぜならば、これらのバスは、相互接続ネットワークにおいて最も大きな電力消費源だからである。
【００５４】
相互接続ネットワークの電力消費は、二つの要因に大きく依存している。その一つは、動作クロック周波数に対して配線が状態（信号の値に応じた０または１）を変化させる周波数に対応するネットワークにおける活性レートであり、あとの一つは、送信先メモリスロットに対するプロセッサの配置位置(geographic location)であり、換言すれば、活性化されるリピータデバイスの数に比例する通信経路の長さである。また、相互接続ネットワーク１００の電気的消費は、メモリブロック１０６におけるデータの配置を最適化することにより低減することができる。例えば、もし情報が他のプロセッサよりも頻繁に特定のプロセッサの一つにより使用されれば、この情報に関するデータは、好ましくは、このプロセッサに隣接したメモリブロック１０６に配置され、従って、この情報をアクセスするために活性化されるリピータデバイスの数を低減する。このメモリブロック１０６におけるデータの配置の最適化は、例えば、データがメモリ１０４に格納されたマシンコード命令である場合には、とりわけ、コードコンパイラーによって行われる。
【符号の説明】
【００５５】
１０２  プロセッサ
１０６  メモリブロック
１１２  導電トラック
１１４  リピータデバイス
【図１】
2010282627.tif 000003
【図２】
2010282627.tif 000004
【図３】
2010282627.tif 000005
【図４】
2010282627.tif 000006
【図５Ａ】
2010282627.tif 000007
【図５Ｂ】
2010282627.tif 000008
【図６】
2010282627.tif 000009
【図７】
2010282627.tif 000010
【外国語明細書】
2010282627.tif 000011
2010282627.tif 000012
2010282627.tif 000013
2010282627.tif 000014
2010282627.tif 000015
2010282627.tif 000016
2010282627.tif 000017
2010282627.tif 000018
2010282627.tif 000019
2010282627.tif 000020
2010282627.tif 000021
2010282627.tif 000022
2010282627.tif 000023
2010282627.tif 000024
2010282627.tif 000025
2010282627.tif 000026
2010282627.tif 000027
2010282627.tif 000028
2010282627.tif 000029
2010282627.tif 000030
2010282627.tif 000031
2010282627.tif 000032
2010282627.tif 000033
2010282627.tif 000034
2010282627.tif 000035
2010282627.tif 000036
2010282627.tif 000037
2010282627.tif 000038
2010282627.tif 000039
2010282627.tif 000040
2010282627.tif 000041