説明

動的サブネットワークを備えた相互接続ネットワーク

【課題】多数の並列接続を同時に生成するための新規な相互接続ネットワークアーキテクチャを提供すること。
【解決手段】m個の第1電子回路(102)及びn個の第2電子回路(106)との相互接続ネットワークであって、m個の相互接続サブネットワークを備え、それぞれは、m個の第1回路の一つをn個の第2回路の全てに接続するアドレスバス及び情報伝送バスであって、リピートデバイスを通して相互に接続された複数の電気的導通配線セグメント(112a,112b)を備えたバスと、アドレス信号の値に基づきリピータデバイスの一つを活性化する機能を有し、リピータデバイスを制御するための手段であって、活性化リピータデバイスが、m個の第1回路の一つとn個の第2回路の一つとの間又は複数のn個の第2回路の間のデータ信号のための情報伝送バスにおける通信経路を形成する手段とを備える。m及びnは1よりも大きい整数である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、相互接続の動的ネットワークに関し、換言すれば、そのネットワーク内の接続またはトポロジーが、ルーティングされるべきデータの送信元および送信先に応じて変化するネットワークに関する。本発明は、特に、例えば複数のプロセッサにより共有される、複数のメモリブロックを有する複数のプロセッサ(例えば、クラスター構成のプロセッサ)の相互接続に適用することができる。
【背景技術】
【0002】
動的相互接続ネットワークは、トポロジー、換言すると接続形態が、プログラムの実行中に、または、異なるプログラムの多数の実行の合い間に変化するネットワークである。このタイプの相互接続ネットワークは、とりわけ、並列コンピュータアーキテクチャの分野におけるアプリケーションで使用される。図1は、ネットワークを図式的に示し、このネットワークは、n個の第1要素、例えば、共有メモリ3における5個のメモリブロック3.1−3.5と、m個の第2要素、例えば基本プロセッサ(elementary processor)5.1−5.6を接続し、ここで、nおよびmはゼロ以外の自然数である。このような動的ネットワーク1は、各プロセッサ5.1−5.6がメモリブロック3.1−3.5のそれぞれと通信することを可能にする。従って、メモリブロック3.1−3.5に格納されたデータは、全てのプロセッサ5.1−5.6の間で共有される。
【0003】
この動的ネットワーク1は、図2に示されるような“クロスバー(crossbar)”ネットワークの形式で構成される。この動的ネットワークは、n×mスイッチ7、換言すると、例えば5×6テーブル(6行、5列)の形式で相互に接続された、図2に示す例における30個のスイッチを備える。従って、プロセッサ5.1−5.6のうちの一つが、メモリブロック3.1−3.5に対してデータのリード又はライトを望む場合、このプロセッサとこのメモリブロックを接続する経路上に配置されたスイッチ7が、このプロセッサとこのメモリブロックとの間の通信リンクを形成するために活性化(active)する。
【0004】
しかしながら、このようなネットワークは、或る状況下では、同時に作動することができるプロセッサの数が制約されるという欠点を有する。例えば、プロセッサ5.6がメモリブロック3.5にライトする場合、共有メモリ3が、プロセッサ5.6とメモリブロック3.5との間の通信経路を形成するのに占有されていると、他のプロセッサがメモリブロック3.1−3.5のうちの一つと通信することは不可能である。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的は、多数の並列接続間の異なる要素とは無関係に、多数の並列接続を同時に生成するための新規な相互接続ネットワークアーキテクチャを提案することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は、m個の第1電子回路およびn個の第2電子回路との相互接続ネットワークを提案し、m個の相互接続サブネットワークを備え、各相互接続サブネットワークは、
− 前記m個の第1回路のうちの一つを前記n個の第2回路の全てに接続する少なくとも一つのアドレスバスおよび少なくとも一つの情報伝送バスであって、前記情報伝送バスは、信号リピートデバイスを通して相互に接続された複数の信号伝送ライン部分を備えたアドレスバスおよび情報伝送バスと、
− 前記m個の第1回路のうちの前記一つによって前記アドレスバスに送出されるべきアドレス信号の値に基づいて前記リピータデバイスのうちの少なくとも一つを活性化する機能を有し、前記リピータデバイスを制御するための手段であって、活性化された前記リピータデバイスは、前記m個の第1回路のうちの少なくとも前記一つと前記n個の第2回路のうちの少なくとも一つとの間、及び/又は、前記n個の第2回路のうちの少なくとも第1のものと前記n個の第2回路のうちの少なくとも第2のものとの間のデータ信号のための情報伝送バスにおける通信毛糸を形成する手段とを備え、
mおよびnは1よりも大きい整数である。
【0007】
この相互接続ネットワークは、概して、全てのタイプの電子回路、電気回路、マイクロ電子回路、ナノ電子回路に適用可能であり、光学回路にも適用可能である。
【0008】
このようなネットワークでは、m個の第1回路は、n個の第2回路に格納されたデータ、及び/又は第2回路にリードされたデータのような情報を共有することができる。また、そのことを考慮して、このネットワークは、各第1回路についてサブネットワークから構成され、m個のサブネットワークのそれぞれは、他のサブネットワークと独立かつ同時的に動作することができる。従って、m個の全ての第1回路は、n個の第2回路と同時的に通信してもよい。
【0009】
データを交換する二つの回路間の経路上に配置されたリピータデバイスのみ活性化できるので、換言すると、電気的に給電され又は導通するので、この相互接続ネットワークにおける電力の消費は、従来技術による相互接続ネットワークにおける場合よりも少なくなる。従って、制御手段は、幾つかのリピータデバイスを活性化し、他のリピータデバイスを非活性化して、情報伝送バスにおける通信経路を形成する。
【0010】
m個の第1回路は、プロセッサであってもよく、またはそのプロセッサを備えても良く、及び/又は、n個の第2回路は、m個の第1回路によって共有されるメモリのメモリブロックであってもよく、またはそのメモリブロックを備えてもよい。各メモリブロックは、多数の個別のメモリレジスタを備えてもよい。
【0011】
情報伝送バス上の信号リピータデバイスは、同一通信バス上でのリードおよびライトを可能とする、双方向性のバスであってもよい。
【0012】
アドレスバスは、複数部分の信号伝送ラインを含んでもよく、例えば、信号リピータデバイスによって相互に接続された光ファイバのような光伝送ラインまたは導電線を含んでもよい。
【0013】
信号リピータデバイスは、ロジック回路を含んでもよい。
【0014】
また、リピータデバイスの制御手段は、n個の第2回路のうちの一つにおける少なくとも一つのリード及び/又はライト動作を行うために上記n個の第2回路のうちの上記一つを選択する手段、及び/又は、m個の第1回路を通じたn個の第2回路へのアクセス優先度を管理する手段、及び/又は、複数の第2回路の複数のアドレスを記憶する手段を備えてもよい。
【0015】
上記制御手段は、複数の制御デバイスを含んでもよく、各制御デバイスは、上記リピータデバイスのうちの一つを、アドレス信号の値に応じて、活性化または非活性化する機能を有しても良い。
【0016】
n個の第2回路が共有メモリのメモリブロックを備える場合、上記制御デバイスは、上記共有メモリで実施(implement)されてもよい。
【0017】
上記制御手段は、n個の制御デバイスを含んでもよい。
【0018】
制御デバイスのそれぞれは、同様のロジック回路を含んでもよく、個別のコードが、n個の第2回路のうちの少なくとも一つを識別するために各制御デバイスへの入力に印加されるように設計される。これらのコードは、メモリに記録され又はハードコード化されてもよく、それらが相互に区別できるように制御デバイスの入力に印加されてもよい。
【0019】
各相互接続サブネットワークは、第2信号リピータデバイスを通じて相互に接続された複数部分の信号伝送ラインからなる第2情報伝送バスを備えてもよく、上記制御手段は、アドレス信号の値に応じて第2リピータデバイスのうちの少なくとも一つを活性化する機能を有し、活性化された第2のリピータデバイスは、上記第2情報伝送バスで、m個の第1回路のうちの一つとn個の第2回路のうちの一つとの間、またはn個の第2回路のうちの第1のものとn個の第2回路のうちの第2のものとの間の信号通信経路を形成する。
【0020】
本発明は、添付の図面を参照して、純粋に指針として与えられる実施形態の説明を読めば、より良く理解することができ、決して制限的なものではない。
【0021】
以下に述べる異なる図面の同一部分、類似部分、または等価部分は、或る図面と他の図面との比較を容易化するように、同一の数字が付されている。
【0022】
各図面に示された異なる部分は、必ずしも同一のスケールでのものではなく、図を読み取りやすくするためのものに過ぎない。
【0023】
異なる可能性(変形および実施例)は、相互に相互排他的ではないと理解されるべきであり、それらは、相互に組み合わせることが可能である。
【図面の簡単な説明】
【0024】
【図1】複数の要素を相互に接続する動的相互接続ネットワークを図式的に示す図である。
【図2】複数の要素を相互に接続する、従来技術によるクロスバー型の相互接続ネットワークを図式的に示す図である。
【図3】本発明による相互接続ネットワークにおいて第1電子回路を4つの第2電子回路に接続する相互接続サブネットワークの一例を図式的に示す図である。
【図4】4個のプロセッサと、6個のメモリブロックに分割された共有メモリとの間の動的リンクを形成する、本発明の特定の実施形態による相互接続ネットワークを示す図である。
【図5A】本発明の特定の実施形態による相互接続ネットワークにおいて使用されるリピータデバイス部分を構成するリピータの実施例を示す図である。
【図5B】本発明の特定の実施形態による相互接続ネットワークにおいて使用されるリピータデバイス部分を構成するリピータのシンボルを示す図である。
【図6】本発明の特定の実施形態による相互接続ネットワーク部分を構成するリピータデバイスの一例を示す図である。
【図7】本発明の特定の実施形態による相互接続ネットワーク部分を構成するリピータデバイスの一例を示す図である。
【発明を実施するための形態】
【0025】
最初に、第1電子回路102、例えばプロセッサを、複数の第2電子回路106、例えば共有メモリの4個のメモリブロックに接続する相互接続サブネットワークを図式的に示す図3を参照する。図3は、単一の相互接続サブネットワークを示すが、この相互接続サブネットワークが属する相互接続ネットワークは、1または2以上の他の相互接続サブネットワーク、例えば、この図3に示されるサブネットワークと同様にして、他の第1電子回路102を4個のメモリブロック106に接続するサブネットワークを含む。
【0026】
図3に示される相互接続サブネットワークは、プロセッサ102が、メモリブロック106にデータをライトし、それからデータをリードすることを可能とする。これを達成するために、サブネットワークは、複数部分の伝送ライン、例えば、導電トラックを含み、プロセッサ102と4個のメモリブロック106との間の情報伝送バスおよびアドレスバスを形成する。図3に示される例では、情報伝送バスのみが、導電トラック112により示されている。
【0027】
この例では、情報伝送バスは、2方向性のバスであり、例えば、メモリブロック106の少なくとも一つにライトされるプロセッサ102より出力されたデータ信号、及び/又は、メモリブロック106のうちの少なくとも一つからプロセッサ102によりリードされたデータ信号、及び/又は、プロセッサ102の制御を通じて、メモリブロック106のうちの一つから少なくとも一つの他のメモリブロック106にルーティングされるデータ信号をルーティングするために使用することができる。一変形例では、例えば、サブネットワークは、プロセッサ102からメモリブロック106へ、または反対にメモリブロック106からプロセッサ102へデータを伝送するためだけのものであり、情報伝送は一方向性であってもよい。
【0028】
また、情報伝送バスは、データ自体以外の情報もルーティングすることができ、例えば、メモリブロック106においてリード動作またはライト動作が行われるかどうかを示すリード/ライト信号をルーティングしてもよく、あるいはリード/ライト動作を有効化し又は有効化しないクエリー有効化信号(query validation signals)をルーティングしてもよい。特に、リード、ライト信号は、情報伝送バスにおけるデータの伝送方向(プロセッサ102からメモリブロック106への方向、または反対方向)を決定するために、この情報伝送バスが2方向性である場合に使用されてもよい。メモリブロック106のそれぞれは、それぞれがメモリレジスタのような異なるメモリロケーションを形成する複数のメモリサブブロックを含み、それは、例えば送信されるデータビットと連結される1または2以上の送信ビットを含む信号と区別される信号の形式で、情報伝送バスを通じて、送信先メモリサブブロックのアドレス(“チップセレクト”と称される)を伝送することを可能とする。また、他の信号も情報伝送バスを通じて伝送してもよい。
【0029】
アドレスバスは、送信先メモリブロック106のアドレス信号をルーティングし、その値は、リードまたはライト動作が行われるメモリブロック106を表す。このアドレスバスは、一方向性であってもよい。この場合、各メモリブロック106がそれらのデータを分析することができるように、アドレスバス上を伝送される信号が全てのメモリブロック106に伝送され、通信経路がプロセッサ102と送信先メモリブロック106との間に設定されることができるので、アドレスバスを設定(configured)することができない。
【0030】
導通トラックの部分112が相互に接続され、従って連続的な通信経路を形成することができるように、情報伝送バスは、導通トラック112の各部分間に配置された信号リピータデバイス114により構成される。これらのリピータデバイス114のそれぞれは、例えば、それに電気的に給電し又は給電しないことにより、活性化または非活性化されてもよい。従って、プロセッサ102と、このプロセッサ102がデータをライトまたはリードしようとするメモリブロック106との間の経路上に実際に配置されたリピータデバイス114を活性化するだけで、各サブネットワークにおける通信経路を規定することが可能である。リピータデバイス114は、図3には示されていない、制御手段によりリードされるアドレスバスで伝送される信号の値に応じて活性化され、または活性化されなくてもよく、この制御手段は、リピータデバイス114のそれぞれに電気的に給電し、または、リピータ114が、情報伝送バスで設定される通信経路上に配置されているか否かによらずに活性化されてもよい。
【0031】
一変形例では、制御手段は、多数のアドレスを記憶する機能を有するレジスタを備えてもよく、したがって、引き続いて個別のメモリブロック106またはプロセッサ102に多数のデータ信号をルーティングするために、引き続いて情報伝送バスにおける多数の通信経路を設定する機能を有する。
【0032】
また、相互接続サブネットワークは、第1情報伝送バスと並列にメモリブロック106のうちの一つとプロセッサ102との間で他の信号を伝送するための第2情報伝送バスを備えることも可能である。第1の情報伝送バスと同様に、この第2情報伝送バスは、プロセッサ102とメモリブロック106のうちの少なくとも一つとの間、または二つのメモリブロック106間の特定の通信経路を形成するために、リピータを活性化し又は活性化しないことにより設定されてもよい。また、この第2情報伝送バスは、ルーティングされる情報のタイプに応じて、2方向性または1方向性であってもよい。
【0033】
図4を参照して、特定の一実施形態による相互接続ネットワーク100を示し、それは、相互に同時的かつ独立的に、4個のプロセッサ102が、共有メモリ104に対してデータをライトしリードすることを可能とし、複数のメモリブロック106(図4では、そのうちの6個が示されている)を備える。この相互接続ネットワーク100は、複数のサブネットワークを備え、各サブネットワークは、少なくとも一つの情報伝送バスおよび少なくとも一つのアドレスバスにより、プロセッサ102のうちの一つを6個のメモリブロック106に接続する。各サブネットワークは、複数の束(bundles)の電気的導通線または導通部(例えば、導通トラック)から構成され、それは、プロセッサ102のうちの一つとメモリブロック106のそれぞれとの間の情報伝送バスおよびアドレスバスを形成する。図4は、導通トラック112aおよび112bを示し、これらを介して4個のサブネットワークに対してデータがライトまたはリードされ、それぞれは、プロセッサ102を6個のメモリブロック106に接続する。
【0034】
これらのサブネットワークの情報伝送バスは、2方向性のバスであり、メモリ104にライトされるようにプロセッサ102によって送信された信号をルーティングする機能を有し、及び/又は、メモリ104からプロセッサ102のうちの一つによってリードされるデータ信号をルーティングし、及び/又は、メモリブロック106のうちの一つから1または2以上の他のメモリブロック106にルーティングされるデータ信号をルーティングする機能を有する。また、情報伝送バスが構成されることができ、換言すれば、これらのバス上に放出された各データ信号は、メモリブロック106に伝送され、または、この信号がアドレスされるプロセッサ102に伝送される。
【0035】
ここで説明される実施形態では、アドレスバス(図示なし)は、送信先メモリブロック106のアドレス信号をルーティングするために使用され、その値はメモリブロック106を表す。情報伝送バス上に放出されるアドレス信号とは異なり、アドレスバス上で送信されるアドレス信号は、各メモリブロックがこれらのデータを分析できるように、全てのメモリブロックに伝送され、接続されるメモリブロック106が活性化され、通信経路が、送信元プロセッサ102と送信先メモリブロック106との間に設定されるので、これらのアドレスバスは構造化可能(configurable)ではない。
【0036】
サブネットワーク配線束の数と配置は、共有メモリ104の形式と容量(dimension)に適合される。図4に示される例では、メモリブロック106は、3個のメモリブロック106の2つの列(columns)に配置されるので、相互接続サブネットワークにおける各バスは、2つの束の垂直配線112bを備え、これらの束のそれぞれは、相互に一つの列のメモリブロック106を接続し、水平配線112aの束は、プロセッサ102のうちの一つを2個の束の垂直配線112bに接続する。
【0037】
各サブネットワークの各バスにおける配線112aおよび112bの束は、複数の部分にセグメント化される。従って、各配線セグメントの長さは、これらの配線セグメントにより形成される容量を抑制するために低減される。信号リピータデバイス114は、配線の各束における配線セグメント間に配置され、これらの各配線セグメントを共に接続し、連続した通信経路を形成する。とりわけ、リピータデバイス114は、プロセッサ102とメモリブロック106との間で、配線の全束に十分に短い時間内に振幅信号(amplitude signals)が伝送されるように、上記伝送された信号のスロープ(slope)を調整することができる。
【0038】
各サブネットワークにおける異なる要素の配列は、これらの要素が使用される周波数に応じて選択される。例えば、プロセッサ102のうちの一つがメモリブロック102のうちの一つと極めて頻繁に通信する場合、このプロセッサ102とこのメモリブロック106との間に、可能な限り最短の毛色を形成することが可能である。従って、サブネットワークのトポロジーは、これらのサブネットワークを通じて接続される別の回路により、これらのサブネットワークの使用に応じて選択されることができる。
【0039】
例えば、リピータデバイス114は、水平配線112aの束で500μmごとに、垂直配線112bの束で250μmごとに備えられてもよい。従って、これらのディメンジョンは、また、この相互接続ネットワーク100で使用される配線セグメントの長さに対応する。これらのディメンジョンは、単に一例として述べたものであり、相互接続ネットワーク100の異なるセグメントを作成するために使用されるトポロジーに基づいている。図4に示される例では、2個のリピータデバイス114が、垂直配線112bの束にプロセッサ102を接続する水平配線112aの各束に配置されている。3個のリピータデバイス114が垂直配線112bの各束に存在し、各リピータデバイス114は、また、メモリブロック106のうちの一つに接続されている。
【0040】
この例では、配線束112a,112bおよびリピータデバイス114のこの構造は、各サブネットワークについて同様であり、従って、相互接続ネットワーク100の設計および製造を容易化する。
【0041】
一変形例では、相互接続ネットワーク100は、異なる個数の配線束、従ってバスを備えてもよい。また、異なる信号、及び/又は上述のものに対して追加の信号が相互接続ネットワーク100のバス上に放出されてもよい。一般に、相互接続ネットワーク100およびこのネットワーク上で発生される信号のアーキテクチャは、相互接続ネットワーク100を通じて接続される要素のアーキテクチャに依存する。
【0042】
リピータデバイス114のそれぞれは、それが電気的に給電されるか否かに応じて活性化されてもよく、活性化されなくてもよい。従って、プロセッサ102と、このプロセッサ102がデータをライトまたはリードするメモリブロックとの間の経路上のリピータデバイス114のみを活性化することにより、各サブネットワークにおける単一の通信経路を規定することが可能である。
【0043】
各メモリブロック106は、制御デバイスを備え、それは図示されていないが、いわゆる選択調停器8selection arbitrator)であり、それは、それは、このメモリブロック106を選択し、または選択しなくてもよく、ドレスバス上にプロセッサ102によって創出されたアドレスデータに基づいて、例えばそれに給電し、または給電しないことにより、または、それを導通させ、または導通させないことにより、それに関連するリピータデバイス114を活性化し、活性化しなくてもよい。メモリブロック106は、アドレスバス上を伝送されるアドレスデータがデータリード動作またはライト動作を実施するためにこのメモリブロック106を選択するときに、それに関連する調停器により選択される。或いは、もし、この調停器に関連するメモリブロック106がリード動作またはライト動作が行われるメモリブロックでなければ、調停器は、リードまたはライト動作が行われるメモリブロック106とプロセッサ102を接続する経路上にリピータデバイス114があるか否かに応じて、この調停器に関連するメモリブロック106に接続されるリピータデバイス114を活性化し、または活性化しない。データは、図示しない内部バスを通じてメモリブロック106のうちの一つ内に伝送され、この内部バスは、メモリブロック106に関連するリピータデバイス114にも接続されている。
【0044】
また、選択調停器は、複数のプロセッサが、異なるサブネットワークを通じて同一のメモリブロック106を同時にアクセスする場合、メモリブロック106に対するアクセス優先度を管理することができる。
【0045】
リピータデバイス114は、リピータ115から構成される。リピータ115の一例は、図5Aに示されている。このリピータ115は、NANDゲート120およびNORゲート122の入力に接続された入力118を備える。リピータにより伝送されるデータは、この入力118に印加される。リード/ライト信号は、NANDゲート120の第2入力119と、NORゲート122の第2入力121に印加される。NANDゲート120の反転出力は、第1MOSトランジスタ124のゲートに接続され、NORゲート122からの出力は、第2MOSトランジスタ126のゲートに接続され、第1トランジスタ124のソースは、第2トランジスタ126のドレインに接続され、リピータ115からの出力128を形成する。このリピータ115は、図5Bに示されるシンボルによって表される。このようなリピータ115は、入力に印加されたビットと同一の値を有するビットを、その出力に送出する。また、出力信号のレベルまたは振幅は、一定(constant)であり、入力信号のレベルに依存しない。リピータ115は、リード/ライト信号の2進値に応じて、出力ビットを出力し、または出力しない。
【0046】
垂直配線112b上に存在するリピータデバイス114は、これらの配線束上の情報をリピートするが、メモリブロック106への情報、またはメモリブロック106からの情報も伝送する。垂直配線112bの束のうちの一つに配置されるリピータデバイス114の例は、図6に示されている。それは、2個のリピータ115.1と115.2を備え、これらのリピータ115.1および115.2は、ヘッド−フット(head-foot)で配置され、とりわけ、メモリブロック106の内部バスに接続されている。これら2個のリピータ115.1,115.2は、リード/ライト信号の値によって制御され、一方は、他方が非活性化されている間、活性化される。図6における例では、リピータ115.1は、データがメモリブロック106にライトされるときに活性化され(リピータ115.1の出力はデータバスに接続される)、一方、第2リピータ115.2は、データがメモリ106からリードされるときに活性化される(リピータ115.2の入力はデータバスに接続される)。従って、2個のリピータ115.1,115.2のうちの一つのみが、リード動作またはライト動作中に活性状態になっている。他の2個のリピータ115.3および115.4は、垂直配線112bの束における2つのセグメント間のインターフェイスを形成する。リピータ115.1,115.2と同様に、2個のリピータ115.3,115.4のうちの一つのみが、リードデータまたはライトデータが伝送されるかどうかに応じて、および垂直配線112bの束上のリピータデバイス114の位置に応じて、情報の伝送期間中に活性状態となる。
【0047】
水平配線112a上に存在するリピータデバイス114は、配線束112aのうちの一つのセグメントとプロセッサ102のうちの一つとの間で情報を伝送するため、または、水平配線112aの束の2つのセグメント間で情報をリピートするために使用される。一変形例では、このようなリピータデバイスは、垂直配線112bの束のうちの一つと水平配線112aの束のうちの一つとの間の繰り返しインターフェイス(repetition interface)を構成してもよい。
【0048】
これらの異なるリピータデバイスの例を図7に示す。水平配線112aの束のセグメントとプロセッサ102のうちの一つとの間のインターフェイスを形成するように設計された第1リピータデバイス114の説明から開始する。第1リピータデバイス114.1は、リード/ライト信号により制御されるリピータ115.5と備え、その入力はプロセッサ102に接続され、その出力は水平配線112aの束のセグメントに接続されている。このリピータ115.5は、情報のライト動作がメモリブロック106のうちの一つで行われている場合に活性化されr、この情報は、プロセッサから送信先メモリブロック106に伝送される。また、第1リピータデバイス114.1は、リピータ115.5に対してヘッドフット(head-foot)で配置された第2リピータ115.6を備え、リード/ライト信号により制御され、その入力は、水平配線112aの束のセグメントに接続され、その出力はプロセッサ102に接続されている。第2リピータ115.6は、メモリブロック106のうちの一つから情報をリードするための動作期間中、活性化され、この情報は、メモリブロック106からプロセッサ102に伝送される。この第2リピータ115.6は、また、NANDゲートで置き換えることが可能であり、その入力の一つが、配線112aの束のセグメントに接続され、リード/ライト信号が、このNANDゲートの第2入力に印加され、その出力は、プロセッサ102に接続される。
【0049】
水平配線112aの束の2つのセグメント間に配置された第2リピータデバイス114.2は、相互にヘッドフットで配置された2個のリピータ115.7および115.8を備え、その両方がリード/ライト信号により制御される。従って、これらの2個のリピータ115.7,115.8のうちの一つは、リードまたはライトデータ動作が行われているかどうかに応じて、活性化される。第3リピータデバイス114.3は、例えば、リピータデバイス114.2と同様に、水平配線112aの束のセグメントと、垂直配線112bの束のセグメントとの間に配置されてもよい。
【0050】
調停器、または制御デバイスは、組み合わせロジック回路により一般的に設計される。従って、全ての調停器は、同一のロジック回路から構成された同一のロジック構造を備える。物理アドレス、例えばメモリ104にハードコード化されたアドレスは、メモリにおけるその物理的位置に応じて各調停器に割り当てられ、換言すれば、それが関連するメモリブロック106の位置に応じて割り当てられる。これらの調停器の動作は、有用なリピータデバイスのみを活性化するロジック機能により管理され、換言すると、情報がリードまたはライトされるメモリブロックとプロセッサとの間の経路上に配置されたデバイスにより管理される。上記ロジック機能は最も直接的な経路、換言すると、最少数の活性化されたリピータデバイスを必要とする経路が、正しいリピータデバイス(right repeater device)を活性化することにより生成される。そして、他のリピータデバイスは、相互接続ネットワーク100における電気的消費を抑えるために非活性化される。図4に示される構成では、プロセッサ102のうちの一つとメモリブロック106のうちの一つとの間の最短経路(minimum path)は、2個のリピータデバイス114の活性化を意味し、そのうちの一つは、水平配線112aの束にあり、他の一つは、垂直配線112bの束にある。本システムのコーナーの一つに配置されたプロセッサと、そのコーナーとは反対側のコーナーに配置されたメモリブロック106との間の通信に対応する最長経路は、5個のリピータデバイス114の活性化を意味し、そのうちの2個は、水平配線112aの束のうちの一つにあり、3個は、垂直配線112bの束のうちの一つにある。
【0051】
図4に示される例では、メモリ104は、6個のメモリブロック106を備える。メモリブロック106のアドレスは、3ビットでコード化され、ADDB(2:0)で示される。メモリ104は、6個のメモリブロック106が3個のメモリブロックの2つの列に分配されているので、アドレスは、メモリブロックにおけるアドレスの上位ビット(ADD(2))が、メモリブロックが配置された列を表すように、メモリスロットに割り当てられることができる(例えば、第1列について値ADDB(2)=0、第2列について値ADDB(2)=1)。従って、ADDB(2)の値から開始して、どのリピータデバイス114が、活性化されるべき水平配線112aの束上に配置されるかを決定することができる。同様に、垂直配線112bの束のうちの一つに配列される各リピータデバイス114は、メモリブロック106に位置されるので、ビットADDB(1:0)の値は、垂直配線112bの束上に配置された何れのリピータデバイス114が活性化されるべきかを決定するために使用されてもよい。
【0052】
一変形例において、リピータデバイスのアドレスは、より多くのビットでコード化されてもよい。使用されるロジック機能は、相互接続ネットワークのアーキテクチャおよび構成に応じて適合される。
【0053】
従って、これらのロジック機能を使用し、メモリブロック106のうちの一つとプロセッサ102のうちの一つとの間の所定経路での情報の伝送に実際的に有用なリピータデバイス114のみを活性化することにより、従来、相互接続ネットワークにおける全てのリピータデバイスに電力を供給するために使用されていた電気的エネルギーの多くを節約することができる。この原理は、とりわけ、情報伝送バスリピータデバイスに適用可能であり、なぜならば、これらのバスは、相互接続ネットワークにおいて最も大きな電力消費源だからである。
【0054】
相互接続ネットワークの電力消費は、二つの要因に大きく依存している。その一つは、動作クロック周波数に対して配線が状態(信号の値に応じた0または1)を変化させる周波数に対応するネットワークにおける活性レートであり、あとの一つは、送信先メモリスロットに対するプロセッサの配置位置(geographic location)であり、換言すれば、活性化されるリピータデバイスの数に比例する通信経路の長さである。また、相互接続ネットワーク100の電気的消費は、メモリブロック106におけるデータの配置を最適化することにより低減することができる。例えば、もし情報が他のプロセッサよりも頻繁に特定のプロセッサの一つにより使用されれば、この情報に関するデータは、好ましくは、このプロセッサに隣接したメモリブロック106に配置され、従って、この情報をアクセスするために活性化されるリピータデバイスの数を低減する。このメモリブロック106におけるデータの配置の最適化は、例えば、データがメモリ104に格納されたマシンコード命令である場合には、とりわけ、コードコンパイラーによって行われる。
【符号の説明】
【0055】
102 プロセッサ
106 メモリブロック
112 導電トラック
114 リピータデバイス

【特許請求の範囲】
【請求項1】
m個の第1電子回路(102)およびn個の第2電子回路(106)との相互接続ネットワーク(100)であって、m個の相互接続サブネットワークを備え、各相互接続サブネットワークは、
− 前記m個の第1回路(102)のうちの一つを前記n個の第2回路(106)の全てに接続する少なくとも一つのアドレスバスおよび少なくとも一つの情報伝送バスであって、前記情報伝送バスは、信号リピートデバイス(114;114.1−114.3)を通して相互に接続された複数の信号伝送ライン部分(112a,112b)を備えた情報伝送バスと、
− 前記m個の第1回路(102)のうちの前記一つによって前記アドレスバスに送出されるべきアドレス信号の値に基づいて前記リピータデバイス(114;114.1−114.3)のうちの少なくとも一つを活性化する機能を有し、前記リピータデバイス(114;114.1−114.3)を制御するための手段であって、活性化された前記リピータデバイスは、前記m個の第1回路(102)のうちの少なくとも前記一つと前記n個の第2回路(106)のうちの少なくとも一つとの間、及び/又は、前記n個の第2回路(106)のうちの少なくとも第1のものと前記n個の第2回路(106)のうちの少なくとも第2のものとの間のデータ信号のための情報伝送バスにおける通信経路を形成する手段とを備え、
ここで、mおよびnは1よりも大きい整数である、相互接続ネットワーク。
【請求項2】
前記m個の第1回路(102)はプロセッサを備え、及び/又は、前記n個の第2回路(106)は、前記m個の第1回路(102)によって共有されるメモリ(104)のメモリブロックを備えた、請求項1記載の相互接続ネットワーク。
【請求項3】
前記情報伝送バス上の前記信号リピータデバイス(114;114.1−114.3)は2方向性である、請求項1または2の何れか1項記載の相互接続ネットワーク。
【請求項4】
前記アドレスバスは、前記信号リピータデバイスにより相互に接続される複数部分の信号伝送ラインを備えた、請求項1ないし3の何れか1項記載の相互接続ネットワーク。
【請求項5】
前記信号リピータデバイス(114;114.1−114.3)は、ロジック回路を備えた、請求項1ないし4の何れか1項記載の相互接続ネットワーク。
【請求項6】
前記制御手段は、前記n個の第2回路(106)のうちの一つにおける少なくとも一つのデータリード及び/又はライト動作を行うために前記n個の第2回路(106)のうちの前記一つを選択する手段を備え、及び/又は、前記m個の第1回路による前記n個の第2回路(106)へのアクセス優先度を管理する手段を備え、及び/又は複数の第2回路(106)の複数のアドレスを記憶する手段を備えた、請求項1ないし5の何れか1項記載の相互接続ネットワーク。
【請求項7】
前記制御手段は、複数の制御デバイスを備え、各制御デバイスは、前記リピータデバイス(114;114.1−114.3)のうちの一つを、前記アドレス信号の値に応じて、活性化または非活性化する機能を有する請求項1ないし6の何れか1項記載の相互接続ネットワーク。
【請求項8】
前記n個の第2回路が共有メモリのメモリブロックを備える場合、前記制御デバイスは、前記共有メモリで実施(implement)される、請求項7記載の相互接続ネットワーク。
【請求項9】
前記制御手段は、n個の制御デバイスを含む、請求項7または8の何れか1項記載の相互接続ネットワーク。
【請求項10】
前記制御デバイスのそれぞれは、同様のロジック回路を含み、個別のコードが、前記n個の第2回路(106)のうちの少なくとも一つを識別するために各制御デバイスへの入力に印加されるように設計された、請求項7ないし9の何れか1項記載の相互接続ネットワーク。
【請求項11】
各相互接続サブネットワークは、第2信号リピータデバイスを通じて相互に接続された複数部分の信号伝送ラインからなる第2情報伝送バスを備え、前記制御手段は、前記アドレス信号の値に応じて前記第2リピータデバイスのうちの少なくとも一つを活性化する機能を有し、活性化された前記第2のリピータデバイスは、前記第2情報伝送バスで、前記m個の第1回路(102)のうちの一つと前記n個の第2回路(106)のうちの一つとの間、または前記n個の第2回路(106)のうちの第1のものと前記n個の第2回路(106)のうちの第2のものとの間の信号通信経路を形成する、請求項1ないし10の何れか1項記載の相互接続ネットワーク。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2010−282627(P2010−282627A)
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【外国語出願】
【出願番号】特願2010−130027(P2010−130027)
【出願日】平成22年6月7日(2010.6.7)
【出願人】(502124444)コミッサリア ア レネルジー アトミーク エ オ ゼネルジ ザルタナテイヴ (383)
【Fターム(参考)】