JPH0675931A - Computer system - Google Patents

Computer system

Info

Publication number
JPH0675931A
JPH0675931A JP5111877A JP11187793A JPH0675931A JP H0675931 A JPH0675931 A JP H0675931A JP 5111877 A JP5111877 A JP 5111877A JP 11187793 A JP11187793 A JP 11187793A JP H0675931 A JPH0675931 A JP H0675931A
Authority
JP
Japan
Prior art keywords
array
data
ring
network
pme
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5111877A
Other languages
Japanese (ja)
Other versions
JP2549241B2 (en
Inventor
Norman Barker Thomas
トマス・ノーマン・バーカー
Clive A Collins
クライブ・アラン・コリンズ
Michael C Dapp
マイケル・チャールズ・ダップ
James W Dieffenderfer
ジェームズ・ウォレン・ディーフェンデルファー
Donald G Grice
ドナルド・ジョージ・グライス
J Knowles Billy
ビリー・ジャック・ノウルズ
Michael Lesmeister Donald
ドナルド・マイケル・レスマイスター
Richard Edward Nier
リチャード・エドワード・ニア
Eugene Retter Elic
エリー・ユージン・レター
B Rolfe David
デイヴィッド・ブルース・ロルフ
Vincent John Smoral
ヴィンセント・ジョン・スモーラル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0675931A publication Critical patent/JPH0675931A/en
Application granted granted Critical
Publication of JP2549241B2 publication Critical patent/JP2549241B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE: To provide a method for switching a network connection by allowing a high speed input and output for a multi-PME computer system to break in the network connection. CONSTITUTION: This system connection (gripper) is used in a system in which data are inputted and outputted in the network of mutually connected nodes, and the nodes are mutually connected in the form of mesh, ring, or returning tourus. As a result, no edge to the network is present, and a gripper mechanism logically breaks a ring along a dimension at a right angle to the ring so that the edge to the network can be established. Thus, the network can be dynamically toggled between the network without any edge and the network with the edge.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、密並列のプロセッサ及
びアーキテクチャに関し、詳細には、処理要素のアレイ
にデータを出し入れすることに関する。
FIELD OF THE INVENTION This invention relates to densely parallel processors and architectures, and more particularly to moving data in and out of an array of processing elements.

【0002】[0002]

【従来の技術】はじめに、本明細書で用いられる用語に
ついて説明する。
2. Description of the Related Art First, terms used in this specification will be described.

【0003】・ALU ALUとは、プロセッサの演算論理回路部分である。ALU ALU is the arithmetic logic circuit part of the processor.

【0004】・アレイ アレイとは、1次元または多次元における要素のアレイ
を指す。アレイは、順番に並べた1組のデータ項目(ア
レイ要素)を含むことができるが、FORTRANのよ
うな言語では、それらのデータ項目は単一の名前で識別
される。他の言語では、順番に並べた1組のデータ項目
の名前は、すべて同じ属性を持つ順番に並べた1組のデ
ータ要素を指す。プログラム・アレイでは、一般に数ま
たは次元属性によって次元が指定される。アレイの宣言
子でアレイの各次元のサイズを指定する言語もあり、ア
レイがテーブル内の要素のアレイとなっている言語もあ
る。ハードウェア的な意味では、アレイは、大規模並列
アーキテクチャにおいて全体として同一な構造(機能要
素)の集合体である。データ並列コンピュータ処理にお
けるアレイ要素は、動作を割り当てることができ、並列
状態のとき、それぞれ独立にかつ並列に必要な動作を実
行できる要素である。一般に、アレイは処理要素の格子
と考えることができる。アレイの各セクションに区分デ
ータを割り当てることにより、区分データを規則的な格
子パターン内で移動することができる。ただし、データ
に索引を付け、あるいはデータをアレイ中の任意の位置
に割り当てることが可能である。
Array An array refers to an array of elements in one or more dimensions. An array can include an ordered set of data items (array elements), but in languages such as FORTRAN, those data items are identified by a single name. In other languages, the name of an ordered set of data items refers to an ordered set of data elements that all have the same attributes. In program arrays, dimensions are generally specified by number or dimension attributes. In some languages, array declarators specify the size of each dimension of the array, and in some languages the array is an array of elements in a table. In a hardware sense, an array is a collection of structures (functional elements) that are the same in a massively parallel architecture as a whole. An array element in data parallel computer processing is an element to which an operation can be assigned and which can execute a required operation independently and in parallel in a parallel state. In general, an array can be thought of as a grid of processing elements. By assigning partition data to each section of the array, the partition data can be moved in a regular grid pattern. However, it is possible to index the data or assign the data to any location in the array.

【0005】・アレイ・ディレクタ アレイ・ディレクタとは、アレイの制御プログラムとし
てプログラミングされる単位である。アレイ・ディレク
タは、アレイとしてアレイされた機能要素のグループの
マスタ制御プログラムとしての機能を果す。
Array Director The array director is a unit programmed as an array control program. The array director serves as a master control program for a group of functional elements arrayed as an array.

【0006】・アレイ・プロセッサ アレイ・プロセッサには主として、複数命令複数データ
方式(MIMD)と単一命令複数データ方式(SIM
D)との2種類がある。MIMDアレイ・プロセッサで
は、アレイ中の各処理要素が、それ自体のデータを使っ
てそれ自体の固有の命令ストリームを実行する。SIM
Dアレイ・プロセッサでは、アレイ中の各処理要素が、
共通の命令ストリームを介して同一の命令に限定され
る。ただし、各処理要素に関連するデータは固有であ
る。本発明の好ましいアレイ・プロセッサには他にも特
徴がある。本明細書では、これをAPAPと呼び、AP
APという略語を使用する。
Array Processor Array processors mainly include multiple instruction multiple data scheme (MIMD) and single instruction multiple data scheme (SIM).
There are two types, D). In a MIMD array processor, each processing element in the array uses its own data to execute its own unique instruction stream. SIM
In a D array processor, each processing element in the array is
Limited to the same instruction via a common instruction stream. However, the data associated with each processing element is unique. There are other features of the preferred array processor of this invention. In this specification, this is referred to as APAP, and AP
The abbreviation AP is used.

【0007】・非同期 非同期とは、規則的な時間関係がないことである。すな
わち、各機能の実行間の関係が予測不能であり、各機能
の実行間に規則的または予測可能な時間関係が存在しな
い。制御状況では、制御プログラムは、データが、アド
レスされている遊休要素を待っているとき、制御が渡さ
れる位置にアドレスする。このため、諸操作が、どの事
象とも時間が一致しないのに順序通りのままとなる。
Asynchronous Asynchronous means that there is no regular time relationship. That is, the relationship between the executions of each function is unpredictable, and there is no regular or predictable time relationship between the executions of each function. In a control situation, the control program addresses the location to which control is passed when data is waiting for the idle element being addressed. This keeps the operations in order, even though they do not match the time of any event.

【0008】・BOPS/GOPS BOPSまたはGOPSは、1秒当たり10億回の動作
という同じ意味の略語である。GOPSを参照された
い。
BOPS / GOPS BOPS or GOPS is an abbreviation for the same meaning of 1 billion operations per second. See GOPS.

【0009】・回線交換/蓄積交換 これらの用語は、ノードのネットワークを介してデータ
・パケットを移動するための2つの機構を指す。蓄積交
換は、データ・パケットを各中間ノードで受信し、その
メモリに格納してから、その宛先に向かって転送する機
構である。回線交換は、中間ノードに、その入力ポート
を出力ポートに論理的に接続するよう指令して、データ
・パケットが、中間ノードのメモリに入らずに、ノード
を直接通過して宛先に向かうことができるようにする機
構である。
Circuit Switching / Store-and-Switch These terms refer to two mechanisms for moving data packets through a network of nodes. Store-and-forward is a mechanism by which a data packet is received at each intermediate node, stored in its memory, and then forwarded towards its destination. Circuit switching directs an intermediate node to logically connect its input port to an output port so that data packets do not go into the intermediate node's memory but go directly through the node to its destination. It is a mechanism that enables it.

【0010】・クラスタ クラスタとは、制御ユニット(クラスタ制御装置)と、
それに接続されたハードウェア(端末、機能ユニット、
または仮想構成要素)とから成るステーション(または
機能ユニット)である。本明細書では、クラスタは、ノ
ード・アレイとも称するプロセッサ・メモリ要素(PM
E)のアレイを含む。通常、クラスタは512個のPM
E要素を有する。
Cluster A cluster is a control unit (cluster control device),
Hardware connected to it (terminals, functional units,
Or a virtual component) and a station (or functional unit). As used herein, a cluster is a processor memory element (PM), also referred to as a node array.
E) of the array. Normally, a cluster has 512 PM
It has an E element.

【0011】本発明の全PMEノード・アレイは、それ
ぞれ1つのクラスタ制御装置(CC)によってサポート
される1組のクラスタから成る。
The entire PME node array of the present invention consists of a set of clusters each supported by one Cluster Controller (CC).

【0012】・クラスタ制御装置 クラスタ制御装置とは、それに接続された複数の装置ま
たは機能ユニットの入出力動作を制御する装置である。
クラスタ制御装置は通常、IBM 3601金融機関通
信制御装置におけるように、該ユニットに格納され、そ
こで実行されるプログラムの制御を受けるが、IBM
3272制御装置におけるように、ハードウェアで完全
に制御可能である。
Cluster control device A cluster control device is a device that controls the input / output operations of a plurality of devices or functional units connected to it.
The cluster controller is typically under the control of a program stored in, and executing on, the unit, as in the IBM 3601 financial institution communication controller.
It is fully controllable in hardware, as in the 3272 controller.

【0013】・クラスタ・シンクロナイザ クラスタ・シンクロナイザとは、あるクラスタのすべて
または一部分の動作を管理して、諸要素の同期動作を維
持し、各機能ユニットがプログラムの実行と特定の時間
関係を維持できるようにする機能ユニットである。
Cluster Synchronizer A cluster synchronizer manages the operation of all or a portion of a cluster to maintain the synchronized operation of the elements so that each functional unit can maintain a specific time relationship with the execution of the program. It is a functional unit.

【0014】・制御装置 制御装置とは、相互接続ネットワークのリンクを介した
データおよび命令の伝送を指令する装置である。制御装
置の動作は、制御装置が接続されたプロセッサによって
実行されるプログラム、または制御装置内で実行される
プログラムによって制御される。
Control Device A control device is a device that directs the transmission of data and commands over the links of an interconnection network. The operation of the control device is controlled by a program executed by a processor to which the control device is connected or a program executed in the control device.

【0015】・CMOS CMOSとは、相補型金属酸化膜半導体技術の略語であ
る。これは、ダイナミック・ランダム・アクセス・メモ
リ(DRAM)の製造に広く使用されている。NMOS
は、ダイナミック・ランダム・アクセス・メモリの製造
に使用されるもう1つの技術である。本発明では相補型
金属酸化膜半導体の方を使用するが、拡張並列アレイ・
プロセッサ(APAP)の製造に使用する技術によっ
て、使用される半導体技術の範囲が制限されることはな
い。
CMOS CMOS is an abbreviation for complementary metal oxide semiconductor technology. It is widely used in the manufacture of dynamic random access memory (DRAM). NMOS
Is another technique used in the manufacture of dynamic random access memories. In the present invention, the complementary metal oxide semiconductor is used.
The technology used to manufacture the processor (APAP) does not limit the scope of semiconductor technology used.

【0016】・ドッティング ドッティングとは、物理的な接続によって3本以上のリ
ード線を結合することを指す。たいていのバックパネル
・バスではこの接続方法を使用している。この用語は、
過去のOR DOTSと関係があるが、ここでは、非常
に単純なプロトコルによってバス上に結合できる複数の
データ源を識別するのに使用する。
Dotting refers to joining three or more lead wires by physical connection. Most backpanel buses use this connection method. This term
Related to the OR DOTS of the past, it is used here to identify multiple data sources that can be coupled onto the bus by a very simple protocol.

【0017】本発明における入出力ジッパの概念を用い
て、あるノードに入る入力ポートが、あるノードから出
る出力ポート、またはシステム・バスからくるデータに
よって駆動できるという概念を実施することができる。
逆に、あるノードから出力されるデータは、別のノード
およびシステム・バスへの入力として使用できる。シス
テム・バスと別のノードへのデータ出力は、同時には実
行されず、別のサイクルで実行されることに留意された
い。
The concept of I / O zippers in the present invention can be used to implement the concept that an input port entering a node can be driven by an output port exiting a node or by data coming from the system bus.
Conversely, the data output from one node can be used as an input to another node and system bus. It should be noted that the data output to the system bus and another node are not executed at the same time but in another cycle.

【0018】ドッティングは、それを利用することによ
り2ポート式のPEまたはPMEまたはピケットを様々
な編成のアレイに使用できる、H−DOTの議論で使用
されている。2次元メッシュおよび3次元メッシュ、ベ
ース2Nキューブ、スパース・ベース4Nキューブ、ス
パース・ベース8Nキューブを含めて、いくつかのトポ
ロジーが議論されている。
Dotting is used in the discussion of H-DOT, by which the two-port PE or PME or picket can be used for arrays of various configurations. Several topologies have been discussed, including 2D and 3D meshes, base 2N cubes, sparse base 4N cubes, sparse base 8N cubes.

【0019】・DRAM DRAMとは、コンピュータが主記憶装置として使用す
る共通記憶装置であるダイナミック・ランダム・アクセ
ス・メモリの略語である。ただし、DRAMという用語
は、キャッシュとして、または主記憶装置ではないメモ
リとして使用するのにも適用できる。
DRAM DRAM is an abbreviation for dynamic random access memory, which is a common storage device used by a computer as a main storage device. However, the term DRAM is also applicable to use as a cache or memory that is not main memory.

【0020】・浮動小数点 浮動小数点数は、固定小数部すなわち小数部と、約束上
の基数または基底に対する指数部の2つの部分で表され
る。指数は、10進小数点の実際の位置を示す。典型的
な浮動小数点の表記法では、実数0.0001234は
0.1234−3と表される。ここで、0.1234は
小数部であり、−3は指数である。この例では、浮動小
数点基数または基底は10であり、暗示的な1より大き
な正の固定整数基底を表す。浮動小数点表示で明示的に
示される、あるいは浮動小数点表示で指数部で表される
指数でこの基底をべき乗し、次に小数部を掛けると、表
される実数が求められる。数字リテラルは、浮動小数点
表記法で表すことも実数で表すこともできる。
Floating-Point Floating-point numbers are represented in two parts: a fixed-point part, or fractional part, and an exponent part to a radix or base on the promise. The exponent indicates the actual position of the decimal point. In typical floating point notation, the real number 0.0001234 is represented as 0.1234-3. Here, 0.1234 is a decimal part and -3 is an exponent. In this example, the floating point radix or base is 10, representing an implicit fixed integer base greater than one. The exponent represented explicitly in the floating-point representation, or represented in the exponent in the floating-point representation, is raised to the power of this base and then multiplied by the fractional part to obtain the represented real number. Numeric literals can be represented either in floating point notation or in real numbers.

【0021】・FLOPS この用語は、1秒当たりの浮動小数点命令数を指す。浮
動小数点演算には、ADD(加算)、SUB(減算)、
MPY(乗算)、DIV(除算)と、しばしばその他の
多くの演算が含まれる。1秒当たり浮動小数点命令数と
いうパラメータは、しばしば加算命令または乗算命令を
使って算出され、一般に50/50ミックスとみなすこ
とができる。演算には、指数部、小数部の生成と、必要
な小数部の正規化が含まれる。本発明では、32ビット
または48ビットの浮動小数点フォーマットを扱うこと
ができる(これより長くてもよいが、そのようなフォー
マットはミックスではカウントしなかった)。浮動小数
点演算を固定小数点命令(正規またはRISC)で実施
する際には、複数の命令が必要である。性能を計算する
際に10対1の比率を使用する人もあれば、比率を6.
25にした方が適切であることを示す研究もある。アー
キテクチャごとに比率が異なる。
FLOPS This term refers to the number of floating point instructions per second. Floating point operations include ADD (addition), SUB (subtraction),
It involves MPY (multiplication), DIV (division) and often many other operations. The parameter of floating point instructions per second is often calculated using add or multiply instructions and can generally be considered a 50/50 mix. The calculation includes generation of an exponent part and a decimal part, and normalization of a necessary decimal part. The present invention can handle 32-bit or 48-bit floating point formats (though it may be longer, but such formats were not counted in the mix). Multiple instructions are required when performing floating point operations with fixed point instructions (regular or RISC). Some people use a 10: 1 ratio when calculating performance, and a ratio of 6: 1.
Some studies have shown that 25 is more appropriate. Different architectures have different ratios.

【0022】・機能ユニット 機能ユニットとは、ある目的を達成できる、ハードウェ
ア、ソフトウェア、あるいはその両方のエンティティで
ある。
Functional Unit A functional unit is a hardware, software, or both entity that can achieve a certain purpose.

【0023】・Gバイト Gバイトとは10億バイトを指す。Gバイト/秒は、1
秒当たり10億バイトということになる。
G bytes G bytes refer to 1 billion bytes. 1 Gbyte / sec
That's 1 billion bytes per second.

【0024】・GIGAFLOPS 1秒当たり109個の浮動小数点命令GIGAFLOPS 10 9 floating point instructions per second

【0025】・GOPSおよびPETAOPS GOPSまたはBOPSは、1秒当たり10億回の演算
という同じ意味を持つ。PETAOPSは、現在のマシ
ンの潜在能力である1秒当たり1兆回の演算という意味
である。本発明のAPAPマシンでは、これらの用語
は、1秒当たり10億個の命令数を意味するBIP/G
IPとほぼ同じである。1つの命令で複数の演算(すな
わち、加算と乗算の両方)を実行できるマシンもある
が、本発明ではそのようにはしない。また、1つの演算
を実行するのに多数の命令を要する場合もある。たとえ
ば、本発明では複数の命令を使って、64ビット演算を
実行している。しかし、演算をカウントする際、対数演
算のカウントは行わなかった。性能を記述するにはGO
PSを使用する方が好ましいが、それを一貫して使うこ
とはしなかった。MIP/MOP、その上の単位として
BIP/BOP、およびMegaFLOPS/Giga
FLOPS/TeraFLOPS/PetaFLOPS
が使用される。
GOPS and PETAOPS GOPS or BOPS have the same meaning of 1 billion operations per second. PETAOPS means 1 trillion operations per second, which is the potential of current machines. In the APAP machine of the present invention, these terms are BIP / G which means 1 billion instructions per second.
It is almost the same as IP. While some machines can perform multiple operations (ie, both add and multiply) with a single instruction, the present invention does not. Also, it may take many instructions to perform one operation. For example, the present invention uses multiple instructions to perform 64-bit operations. However, when counting the calculation, the logarithmic calculation was not performed. GO to describe performance
Preference was given to using PS, but it was not used consistently. MIP / MOP, BIP / BOP as units above it, and MegaFLOPS / Giga
FLOPS / TeraFLOPS / PetaFLOPS
Is used.

【0026】・ISA ISAとは、Set Architecture(アー
キテクチャ設定)命令を意味する。
ISA ISA means a Set Architecture (architecture setting) instruction.

【0027】・リンク リンクとは、物理的または論理的要素である。物理的リ
ンクは要素またはユニットを結合するための物理接続で
あり、一方コンピュータ・プログラミングにおけるリン
クは、プログラムの別々の部分間で制御およびパラメー
タのやり取りを行う命令またはアドレスである。多重シ
ステムでは、実アドレスまたは仮想アドレスで識別され
るリンクを識別するプログラム・コードによって指定さ
れる、2つのシステム間の接続がリンクである。したが
って、リンクには一般に、物理媒体、任意のプロトコ
ル、ならびに関連する装置およびプログラミングが含ま
れる。すなわち、リンクは論理的であるとともに物理的
である。
Link A link is a physical or logical element. A physical link is a physical connection for connecting elements or units, while a link in computer programming is an instruction or address that exchanges control and parameters between different parts of a program. In multiple systems, a link is a connection between two systems specified by a program code that identifies the link identified by its real or virtual address. Thus, a link typically includes the physical medium, any protocol, and associated equipment and programming. That is, the link is both logical and physical.

【0028】・MFLOPS MFLOPSは、1秒当たり106個の浮動小数点命令
を意味する。
MFLOPS MFLOPS means 10 6 floating point instructions per second.

【0029】・MIMD MIMDは、アレイ内の各プロセッサがそれ自体の命令
ストリームを持ち、したがって多重命令ストリームを有
し、1処理要素当たり1つずつ配置された複数データ・
ストリームを実行する、プロセッサ・アレイ・アーキテ
クチャを指すのに使用される。
MIMD MIMD is a multiple data arrangement where each processor in the array has its own instruction stream and thus multiple instruction streams, one for each processing element.
Used to refer to the processor array architecture that executes a stream.

【0030】・モジュール モジュールとは、離散しており識別可能なプログラム単
位、あるいは他の構成要素と共に使用するように設計さ
れたハードウェアの機能単位である。また、単一の電子
チップに含まれるPEの集合体もモジュールと呼ばれ
る。
Module A module is a discrete and identifiable program unit, or a functional unit of hardware designed for use with other components. An aggregate of PEs included in a single electronic chip is also called a module.

【0031】・ノード 一般に、ノードとはリンクの接合部である。PEの汎用
アレイでは、1つのPEをノードとすることができる。
ノードはまた、モジュールというPEの集合体を含むこ
ともできる。本発明では、ノードはPMEのアレイから
形成されており、この1組のPMEをノードと称する。
ノードは8個のPMEであることが好ましい。
Node In general, a node is a junction of links. In a general-purpose array of PEs, one PE can be a node.
A node can also include a collection of PEs called modules. In the present invention, a node is formed from an array of PMEs, and this set of PMEs is called a node.
The node is preferably 8 PMEs.

【0032】・ノード・アレイ PMEから構成されるモジュールの集合体をノード・ア
レイと呼ぶことがある。これは、モジュールから構成さ
れるノードのアレイである。ノード・アレイは通常、
2、3個より多いPMEであるが、この用語は複数を包
含する。
Node array A collection of modules composed of PMEs is sometimes called a node array. It is an array of nodes made up of modules. Node arrays are typically
Although there are more than a few PMEs, the term encompasses a plurality.

【0033】・PDE PDEとは、偏微分方程式である。PDE PDE is a partial differential equation.

【0034】・PDE緩和解法プロセス PDE緩和解法プロセスとは、PDE(偏微分方程式)
を解く方法である。PDEを解くには、既知の分野にお
けるスーパー・コンピュータの計算能力の大半を使用
し、したがってこれは緩和プロセスの好例となる。PD
E方程式を解く方法は多数あり、複数の数値解法に緩和
プロセスが含まれている。たとえば、PDEを有限要素
法で解く場合、緩和の計算に大部分の時間が費やされ
る。熱伝達の分野の例を考えてみよう。煙突内に高温の
ガスがあり、外では冷たい風が吹いているとすると、煙
突のレンガ内の温度勾配はどのようになるだろうか。レ
ンガを小さなセグメントとみなし、セグメント間を熱が
どのように流れるかを温度差の関数として表す方程式を
書くと、伝熱PDEが有限要素問題に変換される。ここ
で、内側と外側の要素を除くすべての要素が室温であ
り、境界セグメントが高温のガスと冷たい風の温度であ
るとすると、緩和を開始するための問題ができあがる。
その後、コンピュータ・プログラムでは、セグメントに
流れ込む、あるいはセグメントから流れ出る熱の量に基
づいて各セグメント内の温度変数を更新することによ
り、時間をモデル化する。煙突における1組の温度変数
を緩和して、物理的な煙突で発生する実際の温度分布を
表すには、モデル中のすべてのセグメントを処理するサ
イクルに何回もかけなければならない。目的が煙突にお
けるガス冷却をモデル化することである場合、諸要素を
気体方程式に拡張しなければならず、そうすると、内側
の境界条件が別の有限要素モデルとリンクされ、このプ
ロセスが続く。熱の流れが隣接するセグメント間の温度
差に依存することに留意されたい。したがって、PE間
通信経路を使って温度変数を分配する。PDE関係が並
列計算にうまく適用できるのは、この近隣接通信パター
ンまたは特性による。
PDE relaxation solution process PDE relaxation solution process is PDE (partial differential equation)
Is a method of solving. Solving PDEs uses most of the computational power of supercomputers in the known field, and thus it exemplifies the mitigation process. PD
There are many ways to solve the E equation, and several numerical solutions include the relaxation process. For example, when solving a PDE with the finite element method, most of the time is spent computing the relaxation. Consider the example of the field of heat transfer. Given the hot gas inside the chimney and the cold wind outside, what is the temperature gradient inside the chimney bricks? Considering bricks as small segments and writing an equation that describes how heat flows between the segments as a function of temperature difference, the heat transfer PDE is transformed into a finite element problem. Now, assuming that all elements, except the inner and outer elements, are at room temperature and the boundary segments are the temperature of the hot gas and cold wind, a problem is created to initiate the relaxation.
The computer program then models the time by updating the temperature variable within each segment based on the amount of heat flowing into or out of the segment. In order to relax a set of temperature variables in the chimney to represent the actual temperature distribution that occurs in the physical chimney, it must take many cycles to process all the segments in the model. If the goal is to model gas cooling in a chimney, the elements must be extended to the gas equation, then the inner boundary conditions are linked with another finite element model, and this process continues. Note that the heat flow depends on the temperature difference between adjacent segments. Therefore, the temperature variable is distributed using the communication path between PEs. It is this near-neighbor communication pattern or characteristic that makes the PDE relationship well applicable to parallel computing.

【0035】・ピケット これは、アレイ・プロセッサを構成する要素のアレイ内
の要素である。この要素は、データ・フロー(ALU
REGS)、メモリ、制御機構、通信マトリックスのこ
の要素と関連する部分から構成される。この単位は、並
列プロセッサ要素およびメモリ要素と、その制御機構お
よびアレイ相互通信機構の一部から成るアレイ・プロセ
ッサの1/nを指す。ピケットは、プロセッサ・メモリ
要素(PME)の1つの形である。本発明のPMEチッ
プ設計プロセッサ論理回路は、関連出願に記載されてい
るピケット論理を実施し、あるいはノードとして形成さ
れたプロセッサ・アレイ用の論理を持つことができる。
ピケットという用語は、処理要素を表す、一般的に使用
されているアレイ用語のPEと似ており、好ましくはビ
ット並列バイトの情報をクロック・サイクルで処理する
ための処理要素とローカル・メモリの組合せからなる、
処理アレイの要素である。好ましい実施例は、バイト幅
データ・フロー・プロセッサ、32バイト以上のメモ
リ、原始制御機構、および他のピケットとの通信機構か
ら構成されている。
Picket This is an element within the array of elements that make up the array processor. This element is a data flow (ALU
REGS), memory, controls, and the parts of the communication matrix associated with this element. This unit refers to 1 / n of an array processor that consists of parallel processor elements and memory elements and their control and part of the array intercommunication mechanism. Pickets are a form of processor memory element (PME). The PME chip design processor logic of the present invention may implement the picket logic described in the related application or have the logic for a processor array formed as a node.
The term picket is similar to the commonly used array term PE for processing elements, and is preferably a combination of processing elements and local memory for processing bit parallel bytes of information in a clock cycle. Consists of,
It is an element of the processing array. The preferred embodiment consists of a byte wide data flow processor, 32 bytes or more of memory, a primitive control mechanism, and a mechanism for communicating with other pickets.

【0036】「ピケット」という用語は、トム・ソーヤ
ーと、彼の白いフェンスに由来している。ただし、機能
的には、軍隊のピケット・ラインと類似性があることも
理解されよう。
The term "picket" comes from Tom Sawyer and his white fence. However, it will also be understood that, functionally, it is similar to the army's picket line.

【0037】・ピケット・チップ ピケット・チップは、単一のシリコン・チップ上に複数
のピケットを含んでいる。
Picket Chip A picket chip contains multiple pickets on a single silicon chip.

【0038】・ピケット・プロセッサ・システム(また
はサブシステム) ピケット・プロセッサは、ピケットのアレイと、通信ネ
ットワークと、入出力システムと、マイクロプロセッ
サ、キャンド・ルーチン・プロセッサ、およびアレイを
実行するマイクロコントローラから成るSIMD制御装
置とから構成されるトータル・システムである。
Picket Processor System (or Subsystem) A picket processor consists of an array of pickets, a communications network, an input / output system, a microprocessor, a canned routine processor, and a microcontroller executing the array. It is a total system including a SIMD control device.

【0039】・ピケット・アーキテクチャ ピケット・アーキテクチャは、SIMDアーキテクチャ
の好ましい実施例であり、次のことを含む複数の多様な
問題に対応できる機能をもつ。 −セット連想処理 −並列数値中心処理 −イメージに類似した物理的アレイ処理
Picket Architecture The picket architecture is a preferred embodiment of the SIMD architecture and has the capability to address a number of diverse problems including: -Set associative processing-Parallel numerical central processing-Image-like physical array processing

【0040】・ピケット・アレイ ピケット・アレイは、幾何的順序でアレイされたピケッ
トの集合体であり、規則正しいアレイである。
Picket Array A picket array is an ordered array of pickets arranged in a geometric order.

【0041】・PMEすなわちプロセッサ・メモリ要素 PMEは、プロセッサ・メモリ要素を表す。本明細書で
は、PMEという用語を、本発明の並列アレイ・プロセ
ッサの1つを形成する、単一のプロセッサ、メモリ、お
よび入出力可能なシステム要素もしくはユニットを指す
のに使用する。PMEは、ピケットを包含する用語であ
る。PMEは、プロセッサ、それと結合されたメモリ、
制御インタフェース、およびアレイ通信ネットワーク機
構の一部分から成るプロセッサ・アレイの1/nであ
る。この要素は、ピケット・プロセッサにおけるよう
に、正規のアレイの接続性を持つPME、あるいは上述
の多重PMEノードにおけるように、サブアレイの一部
としてのPMEを備えることができる。
PME or Processor Memory Element PME stands for Processor Memory Element. The term PME is used herein to refer to a single processor, memory, and I / O capable system element or unit forming one of the parallel array processors of the present invention. PME is a term that encompasses pickets. A PME is a processor, memory associated with it,
1 / n of the processor array that consists of the control interface and part of the array communication network facility. This element can comprise a PME with regular array connectivity, such as in a picket processor, or a PME as part of a sub-array, such as in the multiple PME node described above.

【0042】・経路指定 経路指定とは、メッセージを宛先に届けるための物理経
路を割り当てることである。経路の割当てには、発信元
と宛先が必要である。これらの要素またはアドレスは、
一時的な関係または類縁性を持つ。メッセージの経路指
定は、しばしば、割当てのテーブルを参照することによ
って得られるキーに基づいて行われる。ネットワーク内
では、宛先は、リンクを識別する経路制御アドレスによ
って、伝送される情報の宛先としてアドレス指定され
る、任意のステーションまたはネットワークのアドレス
指定可能ユニットである。宛先フィールドは、メッセー
ジ・ヘッダ宛先コードで宛先を識別する。
Routing The routing is the allocation of a physical route for delivering a message to a destination. A source and a destination are required for route allocation. These elements or addresses are
Has a temporary relationship or affinity. Message routing is often based on keys obtained by looking up a table of assignments. Within a network, a destination is any station or network addressable unit that is addressed as the destination of information to be transmitted by a routing address that identifies a link. The destination field identifies the destination with the message header destination code.

【0043】・SIMD アレイ内のすべてのプロセッサが、単一命令ストリーム
から、1処理要素当たり1つずつ配置された複数データ
・ストリームを実行するように指令を受ける、プロセッ
サ・アレイ・アーキテクチャ。
A processor array architecture in which all processors in a SIMD array are instructed to execute multiple data streams arranged one per processing element from a single instruction stream.

【0044】・SIMDMIMDまたはSIMD/MI
MD SIMDMIMDまたはSIMD/MIMDとは、ある
時間の間MIMDからSIMDに切り換えて複雑な命令
を処理できる二重機能を持ち、したがって2つのモード
を持つマシンを指す用語である。シンキング・マシンズ
社(Thinking Machines, Inc)のコネクション・マシン
(Connection Machine)モデルCM−2をMIMDマシ
ンのフロント・エンドまたはバック・エンドとして配置
すると、プログラマは、二重モードとも称する、複数の
モードを動作させてある問題の別々の部分を実行するこ
とができた。これらのマシンは、ILLIAC以来存在
しており、バスを使用してマスタCPUを他のプロセッ
サと相互接続している。マスタ制御プロセッサは、他の
CPUの処理に割り込む能力を持つ。他のCPUは、独
立のプログラム・コードを実行できる。割込み中、チェ
ックポイント機能用に何らかの処理が必要である(制御
されるプロセッサの現状況のクローズおよびセーブ)。
SIMDMIMD or SIMD / MI
MD SIMDMIMD or SIMD / MIMD is a term that refers to a machine that has the dual function of being able to switch from MIMD to SIMD for a period of time to process complex instructions, and thus has two modes. Placing a Connection Machine Model CM-2 from Thinking Machines, Inc as the front end or back end of a MIMD machine allows the programmer to configure multiple modes, also known as dual mode. I was able to run different parts of the problem that were running. These machines have been around since ILLIAC and use a bus to interconnect a master CPU with other processors. The master control processor has the ability to interrupt the processing of other CPUs. Other CPUs can execute independent program code. During the interrupt, something needs to be done for the checkpoint function (close and save the current state of the controlled processor).

【0045】・SIMIMD SIMIMDは、アレイ内のすべてのプロセッサが、単
一命令ストリームから、1処理要素当たり1つずつ配置
された複数データ・ストリームを実行するように指令を
受ける、プロセッサ・アレイ・アーキテクチャである。
この構成内では、命令実行を模倣する、各ピケット内の
データ従属演算が、SIMD命令ストリームによって制
御される。
SIMIMD SIMIMD is a processor array architecture in which all processors in the array are commanded by a single instruction stream to execute multiple data streams arranged one per processing element. Is.
Within this configuration, the data dependent operations within each picket that mimic instruction execution are controlled by the SIMD instruction stream.

【0046】これは、SIMD命令ストリームを使用し
て複数命令ストリーム(1ピケット当たり1個)を順序
付けし、複数データ・ストリーム(1ピケット当たり1
個)を実行することの可能な、単一命令ストリーム・マ
シンである。SIMIMDは、PMEシステムによって
実行できる。
This uses the SIMD instruction stream to order multiple instruction streams (one per picket) and multiple data streams (one per picket).
A single instruction stream machine capable of executing SIMIMD can be performed by the PME system.

【0047】・SISD SISDは、単一命令単一データの略語である。SISD SISD is an abbreviation for single instruction single data.

【0048】・スワッピング スワッピングとは、ある記憶域のデータ内容を別の記憶
域のデータ内容と相互に交換することをいう。
Swapping Swapping refers to the interchange of the data content of one storage area with the data content of another storage area.

【0049】・同期操作 MIMDマシンにおける同期動作は、各アクションがあ
る事象(通常はクロック)に関係付けられる、動作モー
ドである。この事象は、プログラム・シーケンス中で規
則的に発生する、指定された事象とすることができる。
動作は多数の処理要素にディスパッチされ、それらの処
理要素はそれぞれ独立して機能を実行する。動作が完了
しないかぎり、制御は制御装置に返されない。
Synchronous operation Synchronous operation in MIMD machines is a mode of operation in which each action is associated with some event (usually a clock). This event can be a specified event that occurs regularly in the program sequence.
Actions are dispatched to a number of processing elements, each of which performs its function independently. Control is not returned to the controller until the operation is complete.

【0050】要求が機能ユニットのアレイに対するもの
である場合、アレイ内の要素に制御装置から要求が出さ
れ、その要素は、制御装置に制御が返される前に動作を
完了しなければならない。
If the request is for an array of functional units, a request is made by the controller to an element in the array, which element must complete operation before control is returned to the controller.

【0051】・TERAFLOPS TERAFLOPSは、1秒当たり1012個の浮動小数
点命令を意味する。
TERAFLOPS TERAFLOPS means 10 12 floating point instructions per second.

【0052】・VLSI VLSIとは、(集積回路に適用される)超大規模集積
の略語である。
VLSI VLSI is an abbreviation for very large scale integration (applied to integrated circuits).

【0053】・ジッパ ジッパとは、新規に提供される、アレイ構成の通常の相
互接続の外部にある装置からリンクを確立するための機
能である。
Zipper A zipper is a newly provided function for establishing a link from a device outside the normal interconnection of an array configuration.

【0054】・回線交換方式 中間のPMEによる追加
の操作なしにメッセージが中間PMEを通過して最終宛
先に向うように、中間PMEが入力ポートを出力ポート
に論理的に接続する、アレイ内のPME間でのデータ転
送の方法。
Circuit-switched scheme A PME in the array in which an intermediate PME logically connects an input port to an output port so that the message passes through the intermediate PME towards its final destination without additional manipulation by the intermediate PME. Method of data transfer between.

【0055】・入力転送完了割込み 転送完了タグを伴
う入出力メッセージ・ワードを受け取ったときに行われ
る、プログラム・コンテキスト切替えの要求。
Input transfer complete interrupt Request for program context switch made when an I / O message word with a transfer complete tag is received.

【0056】・ブレイクイン 入出力ポートがプロセッ
サ透過性コンテキスト切替えを引き起こし、プロセッサ
・データ流と制御経路を使ってデータ転送を自己管理す
るための機構。
Break-in A mechanism for I / O ports to cause processor-transparent context switching and self-manage data transfers using processor data streams and control paths.

【0057】・実行時ソフトウェア 処理要素上で実行
されるソフトウェアであり、オペレーティング・システ
ム、エグゼクティブ・プログラム、適用業務プログラ
ム、サービス・プログラムなどを含む。
Run-time software Software that runs on the processing elements, including operating systems, executive programs, application programs, service programs, etc.

【0058】・メモリ・リフレッシュ 現情報の再書込
み中にメモリの使用が中断される、動的RAM技術で必
要とされる機能。
Memory refresh A function required by dynamic RAM technology in which memory usage is interrupted during rewriting of the current information.

【0059】・ジッパ 一群のネットワーク・リングの
動的ブレイク。「ジップ」されたときは、データはネッ
トワークに出入りせずにリングを回ることができる。
「ジップ解除」されると、リングはブレイクされてネッ
トワークへのエッジを形成し、リングを回るデータがそ
こを通ってネットワークに出入りする。
Zipper Dynamic break of a group of network rings. When "zipped", data can travel around the ring without entering or leaving the network.
When "unzipped", the ring is broken to form an edge to the network through which data traveling in and out of the network.

【0060】[0060]

【発明が解決しようとする課題】本発明の背景として、
メッシュ、トーラスその他の次元ネットワーク内での高
速入出力は、より高速の入出力によって強化される。従
来のシステムは、ネットワークに関して本発明の機能を
有さない。リングをブレイクしてネットワークへのエッ
ジを形成し、リングを回るデータがそこを通ってネット
ワークに出入りできるようにする機能を提供することは
重要であると考える。
As the background of the present invention,
Fast I / O in meshes, tori and other dimensional networks is enhanced by faster I / O. Conventional systems do not have the functionality of the invention with respect to networks. We think it important to provide the ability to break the ring to form an edge into the network through which data around the ring can enter and leave the network.

【0061】[0061]

【課題を解決するための手段】多重PMEコンピュータ
・システム用の高速入出力は、ネットワーク結合にブレ
イクインしてネットワーク結合を切り換える方法を提供
する。このシステム結合をジッパと称する。
High speed input / output for multiple PME computer systems provides a method of breaking in and switching network connections. This system connection is called a zipper.

【0062】本発明の入出力ジッパの概念を用いて、あ
るノードに入るポートをあるノードから出るポートまた
はシステム・バスから来るデータで駆動することができ
るという概念を実施することができる。逆に、あるノー
ドから出されたデータが、別のノード及びシステム・バ
スへの入出力にとって使用可能になる。システム・バス
へのデータ出力と別のノードへのデータ出力は、同時で
はなく異なるサイクルに行われる。ジッパは、相互接続
されたノードのネットワークにデータを出し入れし、ノ
ードをメッシュ、リングまたは折返しトーラスとして相
互接続するシステム中で使用され、したがってネットワ
ークへのエッジはなく、ジッパ機構はリングをリングに
直交する次元に沿って論理的にブレイクして、ネットワ
ークへのエッジを確立させる。結合は、エッジのないネ
ットワークとエッジをもつネットワークの間でネットワ
ークを論理的にトグルする。エッジが活動状態のとき、
データはエッジを通ってネットワークに出入りし、この
結合により、ネットワークに入るデータの分散またはネ
ットワークから出るデータの収集が可能となり、その結
果、エッジを通るデータ速度が、ネットワークの外部の
システムの持続データ速度及びピーク・データ速度に一
致するようになる。
The I / O zipper concept of the present invention can be used to implement the concept that a port entering a node can be driven with a port leaving a node or data coming from the system bus. Conversely, the data emitted from one node is made available for I / O to another node and the system bus. The data output to the system bus and the data output to another node do not occur simultaneously but in different cycles. Zippers are used in systems that move data in and out of a network of interconnected nodes and interconnect the nodes as a mesh, ring or folded torus, so there is no edge to the network and the zipper mechanism makes the ring orthogonal to the ring. It breaks logically along the dimension to establish an edge to the network. Coupling logically toggles networks between networks without edges and networks with edges. When the edge is active,
Data enters and leaves the network through the edges, and this coupling allows for the distribution of data that enters the network or the collection of data that exits the network so that the data rate through the edge is persistent data for systems outside the network. It will match the rate and peak data rate.

【0063】ジッパは、一群のネットワーク・リングの
動的ブレイクを可能にする。「ジップ」されると、デー
タはネットワークに出入りせずにリングを回ることがで
きる。「ジップ解除」されると、リングはブレイクされ
てネットワークへのエッジを形成し、リングを回るデー
タがそこを通ってネットワークに出入りする。
Zippers allow a dynamic break of a group of network rings. When "zipped", data can travel around the ring without entering or leaving the network. When "unzipped", the ring is broken to form an edge to the network through which data traveling in and out of the network.

【0064】上記その他の改良点は、下記の詳細な説明
に記載されている。本発明と、その利点及び特徴をより
よく理解するため、下記の説明及び図面を参照された
い。
The above and other improvements are described in the detailed description below. For a better understanding of the present invention and its advantages and features, refer to the description and to the drawings below.

【0065】下記の詳しい説明では、図面を参照しなが
ら、本発明の好ましい実施例とその利点及び特徴を例に
よって説明する。
The following detailed description illustrates, by way of example, preferred embodiments of the invention and its advantages and features, with reference to the drawings.

【0066】[0066]

【実施例】以前の米国特許出願第611594号は、単
一チップ内にメモリと制御論理機構を組み込み、その組
合せをチップ内で複製し、単一チップの複製からプロセ
ッサ・システムを構築する構想を記載している。この手
段で、ただ一種類の単一チップを開発し製作するだけ
で、チップ境界の交差と線長を減らすことによって性能
能力を高めながら、大規模並列処理能力をもたらすシス
テムが得られる。
DETAILED DESCRIPTION OF THE INVENTION Previous U.S. Patent Application No. 6111594 envisions incorporating memory and control logic within a single chip, replicating the combination within the chip, and building a processor system from a single chip replica. It has been described. By this means, by developing and manufacturing only one type of single chip, a system can be obtained that provides massively parallel processing capability while increasing performance capability by reducing chip boundary crossings and line lengths.

【0067】原特許は、1次元入出力構造を利用して、
チップ内でその構造に多数のSIMD処理メモリ要素
(PME)を付加することを記載している。本発明及び
引用した関連出願では、その概念を2次元以上に拡張
し、データ転送とプログラム割込みとを備えた完全な入
出力システムを含める。以下の記述は、1チップ当り8
個のSIMD/MIMD PMEを有する4次元入出力
構造について行うが、前掲の米国特許出願第61159
4号に記載されているように、より高次元にまたは1次
元当りさらに多くのPMEに拡張することもできる。
The original patent uses a one-dimensional input / output structure to
It describes adding multiple SIMD processing memory elements (PMEs) to the structure in a chip. The present invention and related applications cited extend the concept to more than one dimension and include a complete I / O system with data transfer and program interrupts. The following description is 8 per chip
For a four-dimensional input / output structure with a single SIMD / MIMD PME, see US Pat.
It can also be extended to higher dimensions or to more PMEs per dimension, as described in No. 4.

【0068】本発明及びその関連出願では、これらの概
念をプロセッサ間通信から外部入出力機構に拡張する。
さらに、処理アレイの制御に必要なインターフェース及
び要素をも記述する。要約すると、入出力のタイプは次
の3種ある。(a)プロセッサ間、(b)プロセッサと
外部の間、(c)同報通信/制御。大規模並列処理シス
テムでは、これらすべてのタイプの入出力帯域幅をプロ
セッサの計算能力と釣り合わせる必要がある。アレイ内
で、これらの要件は、非常に高速の割込み状態スワップ
能力を付加された16ビット命令セット・アーキテクチ
ャ・コンピュータ(以下ではPMEと称する)を複製す
ることによって満足される。PMEの特徴は、他の大規
模並列マシンの処理要素と比較すると独特である。それ
は、処理、経路指定、記憶及び入出力を完全に分散させ
ることができる。この特徴は他のどの設計にもない。
The present invention and its related applications extend these concepts from interprocessor communication to external input / output mechanisms.
It also describes the interfaces and elements needed to control the processing array. In summary, there are the following three types of input / output. (A) Between processors, (b) Between processor and the outside, (c) Broadcast communication / control. In a massively parallel processing system, all these types of I / O bandwidth must be balanced with the computational power of the processor. Within the array, these requirements are met by replicating a 16-bit instruction set architecture computer (hereinafter PME) with the addition of very fast interrupt state swap capability. The characteristics of PMEs are unique when compared to the processing elements of other massively parallel machines. It can completely distribute processing, routing, storage and I / O. This feature does not exist in any other design.

【0069】関連出願に詳細に開示されている「拡張並
列アレイ・プロセッサ(APAP)」のブロック図を図
1に示す。APAPは、ホスト・プロセッサ1の付属物
である。ホスト・プロセッサ上で実行されるプログラム
によってデータとコマンドが発行される。これらのデー
タとコマンドを、アレイ・ディレクタのアプリケーショ
ン・インターフェース(API)3で受け取って変換す
る。次いでAPIからデータとコマンドが、クラスタ同
期装置4とクラスタ制御装置5を経てクラスタ6に渡さ
れる。これらのクラスタは、APAPのメモリを提供し
並列処理を行う。クラスタ同期装置4とクラスタ制御装
置5が提供する機能は、データとコマンドを適切なクラ
スタに経路指定し、クラスタ間の負荷の均衡をはかるこ
とである。制御装置の詳細は、"Advanced Parallel Pro
cessor Array Director"と題する米国特許出願に記載さ
れている。
A block diagram of the "Advanced Parallel Array Processor (APAP)" disclosed in detail in the related application is shown in FIG. APAP is an adjunct to the host processor 1. Data and commands are issued by programs running on the host processor. These data and commands are received and converted by the application director (API) 3 of the array director. Next, data and commands are passed from the API to the cluster 6 via the cluster synchronizer 4 and the cluster controller 5. These clusters provide APAP memory and perform parallel processing. The function provided by the cluster synchronizer 4 and the cluster controller 5 is to route data and commands to the appropriate clusters and to balance the load among the clusters. For details on the control device, refer to "Advanced Parallel Pro
US Patent Application entitled "cessor Array Director".

【0070】クラスタは、修正ハイパーキューブとして
相互接続されたいくつかのPMEから構成される。ハイ
パーキューブ内では、各セルが、アドレスが1ビット位
置だけ異なるどのセルをも隣接セルとしてアドレスする
ことができる。リング内ではどのセルも、アドレスが±
1だけ異なる2つのセルを隣接セルとしてアドレスする
ことができる。APAP用に使用される修正ハイパーキ
ューブは、この両方の手法を組み合わせて、リングから
ハイパーキューブを構築する。リングの交差部をノード
と定義する。本発明の好ましい実施例では、ノードは2
n個のPME20と同報通信/制御インターフェース
(BCI)部21を含む。PMEはノード内で2×nア
レイとして構成される。ここで、nはアレイを特徴づけ
る次元またはリングの数であり、物理的チップ・パッケ
ージの制限を受ける。好ましい実施例ではn=4であ
る。チップ技術が向上するにつれて、"n"が大きくなる
と、アレイ内で可能な次元が高くなる。
A cluster consists of several PMEs interconnected as a modified hypercube. Within the hypercube, each cell can address any cell whose address differs by one bit position as a neighbor cell. Every cell in the ring has an address ±
Two cells that differ by one can be addressed as neighboring cells. The modified hypercube used for APAP combines both approaches to build a hypercube from a ring. The intersection of the rings is defined as a node. In the preferred embodiment of the invention, there are two nodes.
It includes n PMEs 20 and a broadcast / control interface (BCI) unit 21. The PME is organized as a 2xn array within the node. Where n is the number of dimensions or rings that characterize the array, subject to the limitations of the physical chip package. In the preferred embodiment, n = 4. As chip technology improves, the larger "n", the higher the possible dimensions in the array.

【0071】図3及び4に、PMEからのアレイの構築
を示す。8個のPMEが相互接続されてノード151を
形成している。8個のノードからなるグループがX次元
リング(16PME)として相互接続され、それとオー
バー折返しする8個のノードのグループがY次元リング
152として相互接続される。これによって、ノードの
8×8アレイ(512PME)を含む単一の2次元クラ
スタが得られる。クラスタは最大で8×8アレイに組み
合わされて、4次元アレイ要素153を形成する。この
アレイ要素を横切る8個のノードの各グループが、W次
元とZ次元で組み合わされる。4つの次元すべてにおけ
る単一ノードの相互接続経路が154に示されている。
アレイが正規形または直交形である必要はないことに留
意されたい。特定のアプリケーションまたは構成で、任
意のまたはすべての次元でのノードの数を定義し直すこ
とができる。
The construction of arrays from PMEs is shown in FIGS. Eight PMEs are interconnected to form node 151. A group of eight nodes are interconnected as an X-dimensional ring (16PME), and a group of eight nodes that overturn it are interconnected as a Y-dimensional ring 152. This results in a single two-dimensional cluster containing an 8x8 array of nodes (512 PMEs). The clusters are combined in a maximum of 8x8 array to form a four-dimensional array element 153. Each group of 8 nodes across this array element are combined in the W and Z dimensions. Single node interconnection paths in all four dimensions are shown at 154.
Note that the array need not be normal or orthogonal. A particular application or configuration can redefine the number of nodes in any or all dimensions.

【0072】各PMEは、1つのノード・リング26内
にしか存在できない(図2)。リングをW、X、Y、Z
と呼ぶ。1チップ内のPME20は対になっており(す
なわち、+W、−W)、一方のPMEはデータを時計回
りにノード・リングに沿って外部へ移動し、他方のPM
Eは反時計回りにノード・リング23、26に沿って外
部を移動し、したがって1つのPMEが各ノードの外部
ポート専用となる。各リング内の2個のPMEに、その
外部入出力ポートに因んだ名前を付ける(+W、−W、
+X、−X、+Y、−Y、+Z、−Z)。ノード内にも
2個のリング22があり、4+n個及び4−n個のPM
Eを相互接続する。こうした内部リングは、メッセージ
が外部リング間を移動するための経路を提供する。AP
APは4次元直交アレイ151〜154と見なすことが
できるので、内部リングにより、メッセージがアレイ中
をすべての次元で移動できるようになる。このため、そ
れ自体のノード・リング内のPMEまたはそのノード内
の隣接PMEをアドレスすることにより、どのPMEも
目的に向けてメッセージをステップできる、アドレス指
定構造が得られる。
Each PME can only exist within one node ring 26 (FIG. 2). Ring W, X, Y, Z
Call. The PMEs 20 in one chip are paired (ie + W, -W) and one PME moves data clockwise along the node ring to the outside and the other PME
E travels counterclockwise along the node rings 23, 26 externally, thus one PME is dedicated to each node's external port. Name the two PMEs in each ring named after their external I / O ports (+ W, -W,
+ X, -X, + Y, -Y, + Z, -Z). There are also two rings 22 in the node, 4 + n and 4-n PMs
Interconnect E. These inner rings provide a path for messages to travel between outer rings. AP
Since the APs can be considered as four-dimensional orthogonal arrays 151-154, the inner ring allows the message to move through the array in all dimensions. Thus, by addressing a PME in its own node ring or a neighboring PME in that node, an addressing structure is obtained in which any PME can step the message towards its purpose.

【0073】各PMEは、図5では4個の入力ポートと
4個の出力ポート(左85、92、右86、95、縦9
3、94、外部80、81)をもつ。入力ポートのうち
の3個と出力ポートのうちの3個は、チップ上の他のP
MEへの全2重2点間接続である。第4のポートは、オ
フチップPMEへの全2重2点間接続である。好ましい
実施例では物理的パッケージにおけるピン及び電力上の
拘束のために、実際の入出力インターフェースは4ビッ
ト幅の経路97、98、99であり、これらは図15に
示すPME間データ・ワード96、100の4個のニッ
ブルを多重化するために使用される。
In FIG. 5, each PME has four input ports and four output ports (left 85, 92, right 86, 95, vertical 9).
3, 94, external 80, 81). Three of the input ports and three of the output ports are
It is a full-duplex, 2-point connection to the ME. The fourth port is a full duplex point-to-point connection to the off-chip PME. In the preferred embodiment, due to pin and power constraints on the physical package, the actual I / O interfaces are 4-bit wide paths 97, 98, 99, which are the inter-PME data words 96 shown in FIG. Used to multiplex 100 4 nibbles.

【0074】好ましい実施例では、このPMEの入出力
設計は、3種の入出力動作モードを提供する。
In the preferred embodiment, this PME I / O design provides three I / O modes of operation.

【0075】・通常モード 隣接する2つのPME間で
のデータ転送に使用される。データ転送はPMEソフト
ウェアによって開始される。隣接するPMEより遠くに
あるPME宛のデータは、隣接するPMEが受け取っ
て、それをその隣接PMEから発するかのように転送す
る。通常モードは、"PME Store and Forward/Circuit S
witched Modes"と題する関連米国特許出願に詳細に開示
されている。
Normal mode Used for data transfer between two adjacent PMEs. Data transfer is initiated by PME software. Data destined for a PME farther than an adjacent PME is received by the adjacent PME and forwarded as if it originated from that adjacent PME. Normal mode is "PME Store and Forward / Circuit S
It is disclosed in detail in a related US patent application entitled "witched Modes".

【0076】・回線交換モード データ及び制御がPM
E中を通過できるようにする。このモードを使うと、直
接隣接していないPME間での高速通信が可能になる。
回線交換モードは、前記の関連特許出願に詳細に開示さ
れている。
Circuit switching mode Data and control is PM
Allow passage through E. This mode enables high speed communication between PMEs that are not directly adjacent to each other.
The circuit switched mode is disclosed in detail in the above related patent application.

【0077】・ジッパ・モード クラスタ内のノードに
データをロードし、またはそこからデータを読み取るた
めに、アレイ制御装置が使用する。ジッパ・モードは、
通常モード及び回線交換モードの諸特徴を使って、クラ
スタ・カード上のPMEのアレイとの間でデータを高速
で転送する。
Zipper mode Used by the array controller to load data into or read data from the nodes in the cluster. Zipper mode is
The normal mode and circuit switched mode features are used to transfer data at high speed to and from an array of PMEs on a cluster card.

【0078】アレイW、X、Y、Z内の各リングは連続
的であり、アレイへのエッジはない。概念上は、ジッパ
は、2つのノード間のインターフェースでリングを論理
的にブレイクして、一時エッジを形成するものである。
ジッパが非活動状態の場合、アレイはエッジをもたな
い。ジッパが活動化されると、2つのノード列間のすべ
てのインターフェースがブレイクされ、得られる「エッ
ジ」がアレイとアレイ制御装置の間でのデータ転送に使
用される。たとえば、図6を参照すると、ジッパ接続が
X=0のノード行に沿った−Xインターフェース上に置
かれる場合、X=8(PME×15)250のノード行
とX=0(PME×0)253のノード行の間のインタ
ーフェースは、もはや2点間ではなく、第3の(ホス
ト)インターフェース251が付加される。通常、デー
タは、PME×0 253とPME×15 250の間
を、そこにホスト・インターフェースがないかのように
通過する。しかし、PME実行時ソフトウェアの制御下
では、ジッパが活動化された場合、アレイの一時エッジ
を介してアレイ250、253とホスト・インターフェ
ース251の間をデータが通過する。単一クラスタの行
に沿ったジッパは8個のノードでリングをブレイクす
る。今日の技術に基づけば、好ましい実施例では、単一
のジッパを介して単一クラスタとの間で毎秒約57メガ
バイトをパスすることができる。光接続など将来技術が
発展すれば、このデータ速度は大幅に増加すると期待さ
れる。
Each ring in array W, X, Y, Z is continuous and has no edges to the array. Conceptually, a zipper is a logical break in the ring at the interface between two nodes to form a temporary edge.
When the zipper is inactive, the array has no edges. When the zipper is activated, all interfaces between the two node trains are broken and the resulting "edges" are used to transfer data between the array and the array controller. For example, referring to FIG. 6, if the zipper connection is placed on the -X interface along the X = 0 node row, then X = 8 (PME × 15) 250 node rows and X = 0 (PME × 0). The interface between the 253 node rows is no longer between the two points, but a third (host) interface 251 is added. Normally, the data passes between PME × 0 253 and PME × 15 250 as if there was no host interface there. However, under control of the PME run-time software, data is passed between the arrays 250, 253 and the host interface 251 via the temporary edges of the array when the zipper is activated. A zipper along a single cluster row breaks the ring with 8 nodes. Based on today's technology, the preferred embodiment can pass about 57 megabytes per second to and from a single cluster via a single zipper. It is expected that this data rate will increase significantly if future technology such as optical connection develops.

【0079】図7は、この概念をどのように拡張すれ
ば、クラスタの2つの「エッジ」255、256上にジ
ッパを置くことができるかを示している。この手法で
は、異なるデータが各ジッパ内に渡される場合は、入出
力帯域幅が毎秒約114メガバイトに増加し、同一のデ
ータが各ジッパ内に渡される場合は、毎秒約57メガバ
イトの直交データ移動をサポートする。直交データ移動
は、アレイ内での高速の転置操作及び行列乗算操作をサ
ポートする。理論上は各ノード間インターフェース上に
ジッパが存在し得るが、実際にはジッパ・インターフェ
ースを持つ各PMEは、そのメモリが満杯になってそれ
以上データを受け入れることができないようになるのを
避けるために、アレイ入出力データを他のPMEに移す
ことができなければならない。ジッパの数は、各PME
でどれだけのメモリが使用できるかを決定する技術と、
ジッパ上のPMEとアレイ内の別のPMEの間でジッパ
・データを移動できる速度によって制限される。
FIG. 7 illustrates how this concept can be extended to place zippers on the two "edges" 255, 256 of a cluster. This approach increases the I / O bandwidth to approximately 114 megabytes per second when different data is passed within each zipper, and approximately 57 megabytes per second of orthogonal data movement when the same data is passed within each zipper. To support. Orthogonal data movement supports fast transposition and matrix multiplication operations within the array. In theory there could be a zipper on each node-to-node interface, but in practice each PME with a zipper interface would avoid having its memory fill up and not be able to accept any more data. First, it must be possible to transfer array I / O data to another PME. The number of zippers is for each PME
Technology to determine how much memory can be used by
Limited by the speed at which zipper data can be moved between the PME on the zipper and another PME in the array.

【0080】図1は、n個のクラスタからなるアレイを
示している。好ましい実施例では、各クラスタが2個の
直交ジッパをサポートする。このアレイの最大アレイ入
出力速度は、毎秒2n×57メガバイトである。このア
レイの最大直交アレイ入出力速度は、毎秒n×157メ
ガバイトである。
FIG. 1 shows an array of n clusters. In the preferred embodiment, each cluster supports two orthogonal zippers. The maximum array I / O rate for this array is 2n x 57 megabytes per second. The maximum orthogonal array I / O rate for this array is n × 157 megabytes per second.

【0081】ジッパの好ましい実施例では、ジッパ入力
とジッパ出力の2つの動作モードがある。ジッパ入力動
作はアレイ制御装置からクラスタ上の選択されたPME
のグループにデータを転送する。ジッパ入力動作は、ア
レイ制御装置実行時ソフトウェアによって開始される。
アレイ制御装置実行時ソフトウェアは、まずPMESI
MDモード同報通信コマンド("SIMD/MIMD Processing
Memory Element"と題する関連米国特許出願参照)を使
って、PMEをジッパ通常(ZN)モードとジッパ回線
交換(ZC)モードのどちらかでジッパ・インターフェ
ースに沿って置く。次いで、アレイ制御装置実行時ソフ
トウェアが、ZNモードのSIMDPMEソフトウェア
に受け取るべきワードのカウントを与える。ZNモード
では、PMEはXインターフェース80(図5)からデ
ータを受け取ることができるが、まずそのインターフェ
ースのためにメモリ内の入力バッファをセットアップし
なければならない。メモリ内の2つの位置が、各入力デ
ータ・バッファ232の開始アドレスと、バッファ23
3に格納されたワード数とを格納するために予約されて
いる。さらに、PME制御レジスタ2(図9)が、入力
インターフェース173を使用可能にしかつ入力割込み
172を可能にする。SIMD PME同報通信ソフト
ウェアは、予約されたメモリ位置に出力データ・ブロッ
クを定義するためのロードを行い、PME制御レジスタ
2に入力データの転送を可能にするためのロードを行
う。ZNモードでは、PMEは遊休状態にあり、入出力
割込みまたはZCモードへのトグルを待つ。
In the preferred embodiment of the zipper, there are two modes of operation: zipper input and zipper output. The zipper input operation is from the array controller to the selected PME on the cluster.
Transfer data to a group of. The zipper input operation is initiated by the array controller run-time software.
The array controller run-time software must first call PMESI.
MD mode broadcast communication command ("SIMD / MIMD Processing
A PME is placed along the zipper interface in either zipper normal (ZN) mode or zipper line switched (ZC) mode using a related US patent application entitled "Memory Element". The software gives the SIMDPME software in ZN mode a count of words to receive, in which the PME can receive data from the X interface 80 (FIG. 5), but first the input buffer in memory for that interface. The two locations in memory are the start address of each input data buffer 232 and the buffer 23.
Reserved for storing the number of words stored in 3. In addition, PME control register 2 (FIG. 9) enables input interface 173 and input interrupt 172. The SIMD PME broadcast software loads to reserved memory locations to define the output data block and to load the PME control register 2 to allow the transfer of input data. In ZN mode, the PME is idle and waits for I / O interrupts or toggles to ZC mode.

【0082】PMEが可能な1つの構成をとる場合のジ
ッパ入力動作を図10に示す。この図には、8ワードを
異なる3つのPMEに転送する例が示してある。データ
・インターフェース(ジッパ)がデータをPME260
に転送し、このアレイを介してPMEからPMEに移動
される。
FIG. 10 shows the zipper input operation when the PME has one possible configuration. This figure shows an example of transferring 8 words to three different PMEs. Data interface (zipper) sends data to PME260
To the PME from this PME via this array.

【0083】本発明の好ましい実施例では、アレイ制御
装置は最初にPE A260、PEB261、PE D
263をZNモードに設定し、PE C262をZCモ
ードに設定する。ジッパ入力動作では、PME制御レジ
スタ1の"Z"ビット163と"CS"ビット170をセッ
トすると、PMEがZCモードになる。"Z"ビット16
3をセットし、"CS"ビット170をリセットすると、
PEがZNモードになる。PE A、B、Dには、それ
ぞれ初期受信カウント3、4、1が割り当てられる。P
E Aは、通常の受信シーケンスを使ってその3データ
・ワードを受け取る。ワード・カウントが0になると、
PE AのハードウェアがPME制御レジスタ1の"C
S"ビット170をリセットし、PE A264をZC
モードに入らせる。PE B269とPE D271で
も同じシーケンスが実行される。(PE Dへの)最終
ワード転送時271に、アレイ制御装置は、転送完了
(TC)タグ・ビット224を挿入することができる。
TCビットがセットされると、PE A〜Dはそのビッ
トを検出し、入出力割込み要求171を生成する。TC
ビット224がセットされていない場合、PE A〜D
は転送終了時にZCモード272〜275に留まる。
In the preferred embodiment of the present invention, the array controller first PE A260, PEB261, PE D.
263 is set to ZN mode and PE C262 is set to ZC mode. In the zipper input operation, setting the "Z" bit 163 and "CS" bit 170 of the PME control register 1 puts the PME in ZC mode. "Z" bit 16
By setting 3 and resetting the "CS" bit 170,
PE goes into ZN mode. Initial reception counts 3, 4, and 1 are assigned to PEs A, B, and D, respectively. P
EA receives the three data words using the normal receive sequence. When the word count reaches 0,
The hardware of PE A is "C" of PME control register 1.
Reset the S "bit 170 and ZC PE A264
Enter the mode. The same sequence is executed for PE B269 and PE D271. At the time of the last word transfer (to PED) 271, the array controller may insert a transfer complete (TC) tag bit 224.
When the TC bit is set, PE AD detects that bit and generates an I / O interrupt request 171. TC
PE A-D if bit 224 is not set
Remains in ZC mode 272-275 at the end of the transfer.

【0084】ジッパ・インターフェース上で要求240
が検出されると、受信側PMEは肯定応答241を送出
し、データを入力レジスタ87にロードする。次いで受
信シーケンスが開始し、カウント233を取り出して減
分し、入力バッファ・アドレス232を取り出して増分
し、データ・ワードをPMEメモリ41に格納する。受
信シーケンスは送信シーケンスと類似している。このシ
ーケンスは、遊休PMEにブレイクインし、メモリ41
及びALU42へのアクセスをサイクル・スチールする
ことにより、入出力アドレスとカウント・フィールドを
更新させ、入力データ・ワードをメモリ41にロードさ
せる。カウントが0に達してモードがZCに切り換わる
か、あるいはTCタグを受け取って対応する入力割込み
レジスタ・ビット171がセットされ、割込みコード1
90が「転送完了」を示すようになるかするまで、この
シーケンスが続く。
Request 240 on the zipper interface
Is detected, the receiving PME sends an acknowledgment 241 and loads the data into the input register 87. The receive sequence then begins, fetching the count 233 and decrementing it, fetching the input buffer address 232 and incrementing it, and storing the data word in PME memory 41. The receive sequence is similar to the transmit sequence. This sequence breaks into the idle PME and the memory 41
And cycle stealing access to ALU 42 to update the I / O address and count fields and load the input data word into memory 41. Either the count reaches 0 and the mode switches to ZC, or a TC tag is received and the corresponding input interrupt register bit 171 is set, interrupt code 1
This sequence continues until 90 begins to indicate "transfer complete".

【0085】PMEは、下記の条件が満たされる場合、
要求に応答して肯定応答を生成する。 ・入力レジスタ87、100が空 ・要求が抑制されていない174 ・割込み182がその要求入力上で保留中ではない。 ・要求入力が回線交換されていない。 ・要求がすべての現要求のうちで最高の優先順位をも
つ。
The PME is:
Generate an acknowledgment in response to the request. The input registers 87, 100 are empty. The request is not suppressed 174. The interrupt 182 is not pending on the request input. -The request input is not switched. The request has the highest priority of all current requests.

【0086】入力レジスタ87、100は、肯定応答2
26が生成されてから受信シーケンスがデータ・ワード
をメモリに格納するまで、ビジー状態になる。入力レジ
スタがビジー状態になると、肯定応答は抑制される。ビ
ジー状態のとき、入力レジスタは受信シーケンスが実行
される前に重ね書きされるのを防止される(受信シーケ
ンスはメモリ・リフレッシュのために遅延される可能性
があるので)。
The input registers 87 and 100 receive the acknowledgment 2
It is busy after 26 is generated until the receive sequence stores the data word in memory. Acknowledgments are suppressed when the input register becomes busy. When busy, the input register is prevented from being overwritten before the receive sequence is executed (since the receive sequence may be delayed due to memory refresh).

【0087】TCタグ・ビット224が送信側ジッパか
ら送られた場合、そのインターフェース用の入力割込み
ラッチ171がセットされる。PME実行時ソフトウェ
アによって割込みラッチがリセットされるまで、そのイ
ンターフェース上でそれ以上肯定応答226は生成され
ない。たとえば、TCタグ・ビット224がXインター
フェース82からのデータ転送時にセットされた場合、
L割込みがとられL割込みラッチがリセットされるま
で、Xからのそれ以上の要求は抑制される。
When the TC tag bit 224 is sent by the sending zipper, the input interrupt latch 171 for that interface is set. No further acknowledgments 226 are generated on that interface until the PME runtime software resets the interrupt latch. For example, if TC tag bit 224 is set during a data transfer from X interface 82:
Further requests from X are suppressed until the L interrupt is taken and the L interrupt latch is reset.

【0088】TCタグ・ビット224がセットされてデ
ータ・ワードが転送され、受信側PMEがZNモードで
ある場合、外部インターフェース用の入出力割込み17
1が生成され、割込みコード190がTCを反映するよ
うにセットされる。さらに、送信側ジッパからTCタグ
が送られないうちにバッファ・カウントが0になる場
合、PMEはZCモードにトグルする。
I / O interrupt 17 for the external interface if TC tag bit 224 is set, the data word is transferred, and the receiving PME is in ZN mode.
A 1 is generated and the interrupt code 190 is set to reflect TC. Furthermore, if the buffer count reaches 0 before the TC tag is sent from the sending zipper, the PME will toggle to ZC mode.

【0089】PMEは、ZN受信モードのとき、メモリ
・リフレッシュ・シーケンスとジッパ入力のための受信
シーケンスしか実行できない。これが必要なのは、ジッ
パのデータ転送が最大PMEクロック速度で起こり得る
からである。PME命令の実行や非ジッパ入力用の受信
シーケンスのための時間はない。ZNモードの間、PE
ハードウェアは、ジッパ入力要求を除くすべての入力要
求を抑制する。ZCモードのPMEは、前掲の関連特許
出願"PME Store and Forward/Circuit Switched Modes"
で説明されているように、回線交換モードでのPME用
の全範囲の動作を行うことができる。それには、ジッパ
・データに対してスプリッタ・サブモードを使用できる
能力も含まれる。
When in the ZN receive mode, the PME can only execute the memory refresh sequence and the receive sequence for zipper input. This is necessary because zipper data transfers can occur at maximum PME clock rates. There is no time for the execution of PME instructions or receive sequences for non-zipper inputs. PE during ZN mode
The hardware suppresses all input requests except zipper input requests. The ZC mode PME is related to the above-mentioned related patent application "PME Store and Forward / Circuit Switched Modes"
The full range of operation for PMEs in circuit switched mode can be performed as described in. It also includes the ability to use the splitter submode for zipper data.

【0090】ジッパ出力動作で、データがクラスタ内の
選択されたPMEグループからアレイ制御装置に転送さ
れる。ジッパ出力動作は、アレイ制御装置実行時ソフト
ウェアによって開始され、このソフトウェアはまずSI
MDモード同報通信コマンドを使って、ジッパ・インタ
ーフェースの周りのPMEをジッパ通常(ZN)モード
とジッパ回線交換(ZC)モードのどちらかに置く。次
いでアレイ制御装置は、ZNモードのPME SIMD
ソフトウェアに、送信すべきワード数を与える。
The zipper output operation transfers data from the selected PME group in the cluster to the array controller. The zipper output operation is initiated by the array controller run-time software, which first
The MD mode broadcast command is used to place the PME around the zipper interface in either zipper normal (ZN) mode or zipper line switched (ZC) mode. The array controller then switches to PN SIMD in ZN mode.
Give the software the number of words to send.

【0091】概念的には、データは発信側PMEのメイ
ン・メモリからホスト・コンピュータのメイン・メモリ
に転送される。好ましい実施例では、各インターフェー
スごとに、出力データ・ブロック230の開始アドレス
とブロック231に格納されているワードの数を格納す
るための記憶位置が、メモリ内に2個ずつ予約されてい
る。さらに、PME制御レジスタ1(図8参照)がデー
タ出力の宛先とモードを制御する。同報通信SIMD
PMEソフトウェアは、転送モードを定義するため、P
ME制御レジスタ1へのロードを行う。同報通信SIM
D PMEソフトウェアとPME実行時ソフトウェアの
どちらかが、ホストに転送すべきデータを指定されたメ
モリ位置にロードする。次いで同報通信SIMD PM
Eソフトウェアがアドレスとカウントを指定のメモリ位
置にロードする。次にそのソフトウェアはPME制御レ
ジスタ1へのロードを行い、最後にOUT命令を実行し
て、データ送信シーケンスを開始させる。
Conceptually, data is transferred from the main memory of the originating PME to the main memory of the host computer. In the preferred embodiment, for each interface, two storage locations are reserved in memory for storing the starting address of output data block 230 and the number of words stored in block 231. Further, the PME control register 1 (see FIG. 8) controls the destination and mode of data output. Broadcast SIMD
The PME software defines the transfer mode,
The ME control register 1 is loaded. Broadcast SIM
Either the D PME software or the PME run-time software loads the data to be transferred to the host into the specified memory location. Then broadcast SIMD PM
The E software loads the address and count into the specified memory location. The software then loads the PME control register 1 and finally executes the OUT instruction to start the data transmission sequence.

【0092】PMEの可能な1つの構成でのジッパ出力
動作を図14に示す。この図では、8ワードを異なる3
つのPMEに転送する例が示されている。データ・イン
ターフェース(ジッパ)はデータをPME280から転
送し、アレイを介してPMEからPMEへ移される。
The zipper output operation in one possible PME configuration is shown in FIG. In this figure, 8 words are different 3
An example of transferring to one PME is shown. The data interface (zipper) transfers data from the PME 280 and moves from PME to PME through the array.

【0093】この例では、アレイ制御装置が最初にPE
A280、PE B281、PED283をZNモー
ドに設定し、PE C282をZCモードに設定する。
ジッパ出力動作では、PME制御レジスタ1の"Z"ビッ
ト163と"CS"ビット170をセットすると、PME
がZCモードになる。"Z"ビット163をセットし、"
CS"ビット170をリセットすると、PMEはZNモ
ードになる。PE A、PE B、PE Dにはそれぞ
れ3、4、1のカウントが割り当てられている。PME
Aは通常送信シーケンスを使ってその3データ・ワー
ドを送信する。ワード・カウントが0になると、PME
A内のハードウェアがPME制御レジスタ1の"CS"
ビット170をリセットして、PME A284をZC
モードに入らせる。PME B289及びPME D2
95内でも同じシーケンスが起こる。PME DのPM
E制御レジスタ"TC"164がセットされている場合、
(PME Dからの)最後のワード転送時にPME D
は転送完了(TC)タグ・ビット224を挿入する。T
Cタグがセットされている場合、PME A〜Dはその
ビットを検出し、入出力割込み要求171を生成するこ
とになる。TCタグがセットされていない場合は、PM
E A〜Dは転送終了時にZCモードに留まる。
In this example, the array controller is the first PE
A280, PE B281, PED283 are set to ZN mode, and PE C282 is set to ZC mode.
In the zipper output operation, setting "Z" bit 163 and "CS" bit 170 of PME control register 1 causes PME
Goes into ZC mode. "Z" bit 163 is set,
Resetting the CS "bit 170 puts the PME in ZN mode. PE A, PE B, and PE D are assigned counts of 3, 4, and 1, respectively.
A sends its three data words using the normal send sequence. When the word count reaches 0, PME
The hardware in A is "CS" of PME control register 1
Reset Bit 170 and PME A284 to ZC
Enter the mode. PME B289 and PME D2
The same sequence occurs within 95. PM of PMED
If the E control register "TC" 164 is set,
PMED on last word transfer (from PMED)
Inserts the transfer complete (TC) tag bit 224. T
If the C tag is set, PME AD will detect that bit and generate an I / O interrupt request 171. If the TC tag is not set, PM
EA-D remain in ZC mode at the end of the transfer.

【0094】送信シーケンスでデータ・ワードが送信さ
れるごとに、カウント231が減分され、開始アドレス
230が増分され、メモリ41から1データ・ワードが
読み取られる。そのデータ・ワードは送信レジスタ4
7、96にロードされ、選択されたPME97、161
インターフェースに送られる。送信シーケンスは遊休P
MEにブレイクインして、メモリ41及びALU42へ
のアクセスをサイクル・スチールすることにより、入出
力アドレス及びカウント・フィールドを更新させ、かつ
送信レジスタ47、96へのロードを行わせる。ジッパ
転送では、PME制御レジスタ1のCXビット165が
セットされ、その結果、送信シーケンスが完了するまで
PMEプロセッサは遊休状態になる。このシーケンス
は、カウントが0に達するまで続く。
Each time a data word is sent in the send sequence, the count 231 is decremented, the start address 230 is incremented, and one data word is read from memory 41. The data word is transmit register 4
PME 97,161 loaded and selected on 7,96
Sent to the interface. Transmission sequence is idle P
Breaking into ME to cycle steal access to memory 41 and ALU 42 causes the I / O address and count fields to be updated and the transmit registers 47, 96 to be loaded. For zipper transfers, CX bit 165 of PME control register 1 is set, resulting in the PME processor being idle until the transmission sequence is complete. This sequence continues until the count reaches zero.

【0095】データ転送インターフェースは4ビット幅
97である。したがって、各16ビット・データ・ワー
ド220は、4つの4ビット切片(ニッブル)として送
られる。データと一緒にタグ・ニッブル221とパリテ
ィ・ニッブル222も送られる。転送フォーマットは2
23に示してある。
The data transfer interface is 4 bits wide 97. Therefore, each 16-bit data word 220 is sent as four 4-bit intercepts (nibbles). A tag nibble 221 and a parity nibble 222 are also sent with the data. Transfer format is 2
23.

【0096】送信シーケンスを図16に示す。インター
フェース上で送信側PMEが受信側ジッパ・インターフ
ェースに要求225を発生する。肯定応答226を受け
取ると、送信側PMEはデータ転送を開始し、次の送信
シーケンスが起こることができる。肯定応答を受け取る
まで、次の送信シーケンスは起こらない。
The transmission sequence is shown in FIG. On the interface, the sending PME issues a request 225 to the receiving zipper interface. Upon receipt of the acknowledgment 226, the sending PME may initiate the data transfer and the next transmission sequence may occur. The next transmission sequence does not occur until an acknowledgment is received.

【0097】PME制御レジスタ1のTCビット164
がセットされる場合、TCビット224は最後に転送さ
れたデータ・ワードのタグ・フィールド中でセットされ
ることになる。このビットは、受信側ジッパにデータ転
送の終了を知らせる。
TC bit 164 of PME control register 1
Is set, TC bit 224 will be set in the tag field of the last transferred data word. This bit informs the receiving zipper that the data transfer is complete.

【0098】PMEはZN送信モードのとき、送信シー
ケンスとメモリ・リフレッシュ・シーケンスしか実行で
きない。これが必要なのは、ジッパ・データ転送が最大
PMEクロック速度で起こり得るからである。PME命
令の実行や非ジッパ入力用の受信シーケンスのための時
間はない。ZN送信モードの間、PMEハードウェアは
すべての入力要求を抑制する。ZCモードのPMEは、
前掲の関連特許出願"PME Store and Forward/Circuit S
witched Modes"に記載されているように、回線交換での
PME用の全範囲の動作を行うことができる。これに
は、ジッパ・データに対してスプリッタ・サブモードを
使用できる能力も含まれる。
When in the ZN transmission mode, the PME can only execute the transmission sequence and the memory refresh sequence. This is necessary because zipper data transfers can occur at maximum PME clock rates. There is no time for the execution of PME instructions or receive sequences for non-zipper inputs. During ZN transmission mode, PME hardware suppresses all input requests. ZC mode PME
Related patent application mentioned above "PME Store and Forward / Circuit S
The full range of operation for circuit switched PMEs can be performed as described in "witched Modes", including the ability to use splitter submodes for zipper data.

【0099】ジッパ・インターフェースは、図16の上
端と下端に示すように、アレイ制御装置をクラスタ上の
ノードに接続する。通常のインターフェースは、2ニッ
ブル(4ビット)一方向2点間インターフェースからな
り、これは2つのPME間で一方向全2重転送をもたら
す。前掲の関連特許出願"PME Store and Forward/Circu
it Switched Modes"に記載されているような、一方のP
MEから他方のPMEに6ニッブルを転送する前述のプ
ロセスを使用する方が好ましい。基本的には、データ経
路202、要求線203、肯定応答線204を使って、
左側200のPMEから情報が転送される。同時に、デ
ータ経路210、要求線211、肯定応答線212を使
って、右側201のPMEから情報を転送することがで
きる。ジッパがインターフェース上にインストールされ
るとき、データをアレイ内に入れるためにデータ経路2
14、要求線215、肯定応答線216が付加され、デ
ータをアレイから出るためにデータ経路217、要求線
218、肯定応答線216が付加される。アレイ制御装
置実行時ソフトウェアは、PME201へのジッパ送信
シーケンスを実行したいとき、PME200の実行時ソ
フトウェアに、202、203、204を使用不能にさ
せる。同時に、アレイ制御装置実行時ソフトウェアは、
PME200へのジッパ受信シーケンスを実行したいと
き、PME201の実行時ソフトウェアに、210、2
11、212を使用不能にさせる。ジッパ論理の配置は
全く任意であることに留意されたい。これは、容易に同
一ノードの+X及び−Xインターフェース上に置くこと
もでき、またW、Y、Zノード・インターフェースのい
ずれかまたはすべて上に置くこともできる。
The zipper interface connects the array controller to the nodes on the cluster, as shown at the top and bottom of FIG. A typical interface consists of a two nibble (4 bit) unidirectional point-to-point interface, which results in a unidirectional full duplex transfer between two PMEs. Related patent application "PME Store and Forward / Circu
One P as described in it Switched Modes "
It is preferable to use the process described above to transfer 6 nibbles from the ME to the other PME. Basically, using data path 202, request line 203, acknowledge line 204,
Information is transferred from the PME on the left 200. At the same time, data path 210, request line 211, and acknowledgment line 212 can be used to transfer information from the PME on the right side 201. Data path 2 to put data into the array when the zipper is installed on the interface
14, request line 215, acknowledge line 216 are added, and data path 217, request line 218, acknowledge line 216 are added to exit the array. The array controller runtime software causes the runtime software of PME 200 to disable 202, 203, 204 when it wants to perform a zipper send sequence to PME 201. At the same time, the array controller run-time software
When you want to execute the zipper reception sequence to PME200, the runtime software of PME201
Disable 11,212. Note that the placement of zipper logic is quite arbitrary. It can easily be placed on the + X and -X interfaces of the same node, and can also be placed on any or all of the W, Y, Z node interfaces.

【0100】本発明の好ましい実施例について記述した
が、当業者なら現在でも将来も、頭記の特許請求の範囲
に含まれる様々な改良や改善を行えることが理解されよ
う。特許請求の範囲は、最初に開示された本発明の適切
な保護を維持するものと解釈すべきである。
Although a preferred embodiment of this invention has been described, a worker of ordinary skill in this art would recognize that various modifications and improvements, both now and in the future, are within the scope of the following claims. The claims should be construed to maintain the proper protection for the invention first disclosed.

【図面の簡単な説明】[Brief description of drawings]

【図1】典型的な拡張並列アレイ・プロセッサ(APA
P)を例示し、特にAPAPの主要要素と、ホスト・プ
ロセッサまたは他のデータ発信元/宛先へのAPAPイ
ンターフェースとを示す機能構成図である。
FIG. 1 illustrates a typical enhanced parallel array processor (APA).
FIG. 3B is a functional block diagram illustrating P) and specifically showing the main elements of APAP and the APAP interface to a host processor or other data source / destination.

【図2】プロセッサ・メモリ要素(PME)ノードの実
施例を示し、特にノードを構成する様々な要素の相互接
続を示す概略図である。
FIG. 2 is a schematic diagram illustrating an embodiment of a processor memory element (PME) node, and in particular showing the interconnection of the various elements that make up the node.

【図3】修正2進ハイパーキューブを示す概略図であ
る。
FIG. 3 is a schematic diagram showing a modified binary hypercube.

【図4】修正2進ハイパーキューブを示す概略図であ
る。
FIG. 4 is a schematic diagram showing a modified binary hypercube.

【図5】回路交換経路を示す概略図である。FIG. 5 is a schematic diagram showing a circuit switching path.

【図6】単一のPME−PMEインターフェース上のジ
ッパ接続を示す概略図である。
FIG. 6 is a schematic diagram showing a zipper connection on a single PME-PME interface.

【図7】クラスタへの2つの直交する接続上のジッパ接
続を示す概略図である。
FIG. 7 is a schematic diagram showing a zipper connection over two orthogonal connections to a cluster.

【図8】割込み及び入出力処理用の予約された記憶位置
を示す概略図である。ここで、実メモリ位置は、レベル
範囲の開始記憶アドレスにオフセットを加えて求める。
たとえば、右入力データ・バッファ・カウントは00C
O+003Dまたは^X^00FDにある。
FIG. 8 is a schematic diagram showing reserved storage locations for interrupt and I / O processing. Here, the actual memory position is obtained by adding an offset to the starting storage address of the level range.
For example, the right input data buffer count is 00C
It is in O + 003D or ^ X ^ 00FD.

【図9】割込みの実施態様をサポートするPME制御レ
ジスタ及び相互接続ネットワークを示す概略図である。
FIG. 9 is a schematic diagram showing PME control registers and interconnect networks supporting interrupt implementations.

【図10】ジッパ受信シーケンスを示す概略図である。FIG. 10 is a schematic diagram showing a zipper reception sequence.

【図11】プロセッサ・メモリ要素の実施例を例示する
データ流れ図である。このデータ流れの主要セクション
としては、主記憶域、汎用レジスタ、ALU及びレジス
タ、及び相互接続メッシュの一部分がある。
FIG. 11 is a data flow diagram illustrating an example of a processor memory element. The main sections of this data stream are main storage, general purpose registers, ALUs and registers, and parts of the interconnect mesh.

【図12】PME入出力間で転送されるタグ、パリテ
ィ、及びデータ・ワードを示す概略図である。
FIG. 12 is a schematic diagram showing tags, parity, and data words transferred between PME inputs and outputs.

【図13】ジッパ送信シーケンスを示す概略図である。FIG. 13 is a schematic diagram showing a zipper transmission sequence.

【図14】PE入出力データ流れを示す概略図である。FIG. 14 is a schematic diagram showing a PE input / output data flow.

【図15】PME入出力間での出力インターフェースの
順序付けを示す概略図である。
FIG. 15 is a schematic diagram showing ordering of output interfaces between PME inputs and outputs.

【図16】転送シーケンスを示す図である。FIG. 16 is a diagram showing a transfer sequence.

【図17】物理的ジッパ・インターフェースを示す概略
図である。
FIG. 17 is a schematic diagram showing a physical zipper interface.

【符号の説明】[Explanation of symbols]

1 ホスト・プロセッサ 2 ホスト・メモリ 3 アプリケーション・プログラム・インターフェース
(API) 4 クラスタ同期装置 5 クラスタ制御装置 6 クラスタ 20 プロセッサ・メモリ要素(PME) 21 同報通信/制御インターフェース(BCI)部 22 リング 23 ノード・リング 26 ノード・リング 151 ノード 152 Y次元リング 153 4次元アレイ要素 154 相互接続経路
1 Host Processor 2 Host Memory 3 Application Program Interface (API) 4 Cluster Synchronizer 5 Cluster Controller 6 Cluster 20 Processor Memory Element (PME) 21 Broadcast / Control Interface (BCI) Unit 22 Ring 23 Node -Ring 26-node ring 151-node 152 Y-dimensional ring 153 4-dimensional array element 154 Interconnection path

───────────────────────────────────────────────────── フロントページの続き (72)発明者 クライブ・アラン・コリンズ アメリカ合衆国12601、ニューヨーク州ポ ーキープシー、モンロー・ドライブ 9 (72)発明者 マイケル・チャールズ・ダップ アメリカ合衆国13760、ニューヨーク州エ ンドウェル、アイヴォン・アベニュー 1130 (72)発明者 ジェームズ・ウォレン・ディーフェンデル ファー アメリカ合衆国13827、ニューヨーク州オ ウェゴ、フロント・ストリート 396 (72)発明者 ドナルド・ジョージ・グライス アメリカ合衆国12401、ニューヨーク州キ ングストン、ソーキル=ラビー・ロード 2179 (72)発明者 ビリー・ジャック・ノウルズ アメリカ合衆国12401、ニューヨーク州キ ングストン、ハーリー・アベニュー 72 (72)発明者 ドナルド・マイケル・レスマイスター アメリカ合衆国13850、ニューヨーク州ヴ ェスタル、コリンズ・ヒル・ロード 108 エイ (72)発明者 リチャード・エドワード・ニア アメリカ合衆国13732、ニューヨーク州ア パラチン、フォレスト・ヒル・ロード 109 (72)発明者 エリー・ユージン・レター アメリカ合衆国18851、ペンシルバニア州 ウォレン・センター、エイチ・シー・アー ル34 ボックス29ビー (72)発明者 デイヴィッド・ブルース・ロルフ アメリカ合衆国12491、ニューヨーク州ウ ェスト・ハリー、パイン・トリー・ロード 24 (72)発明者 ヴィンセント・ジョン・スモーラル アメリカ合衆国13760、ニューヨーク州エ ンドウェル、スカイライン・テラス 812 ─────────────────────────────────────────────────── ─── Continued Front Page (72) Inventor Clive Alan Collins, Monroe Drive, Pawkeepsie, NY 12601, USA 9 (72) Inventor Michael Charles Dup, USA 13760, Ivon Avenue, Endwell, NY 1130 (72) Inventor James Warren Diefendelfer Front Street, Owego, NY 13827, USA 396 (72) Inventor Donald George Grice, United States 12401, Kingston, NY Sawkill-Ravy Road 2179 ( 72) Inventor Billy Jack Knowles 12401, Kingston, NY Harley Avenue 72 (72) Inventor Donald Michael Resmeister United States 13850, Vestal, NY 108 Collins Hill Road 108 A (72) Inventor Richard Edward Near USA 13732, Appalachin, NY Forest Hill Road 109 (72) Inventor Elie Eugene Letter 34 Box 29 Be, H. Sea Earl, Warren Center, PA 18851, USA (72) Inventor David Bruce Rolf United States 12491, U.S.A. West Harry, Pine Tree Road 24 (72) Inventor Vincent John Smallal Skyline Terrace, Endwell, New York 13760, USA 812

Claims (11)

【特許請求の範囲】[Claims] 【請求項1】ネットワークへのエッジがない折返しトー
ラスのリングとしてノードを相互接続する手段と、 リングをリングに直交する次元に沿って論理的にブレイ
クして、ネットワークへのエッジが確立されるようにす
る手段と、 ネットワークをエッジのないネットワークとエッジのあ
るネットワークの間で動的にトグルする手段と、 エッジが活動状態のとき、エッジを介してネットワーク
にデータを出し入れする手段と、 エッジを通過するデータ速度が、ネットワークの外部に
あるシステムの持続データ速度及びピーク・データ速度
の両方と一致するように、ネットワークに入るデータを
分散させ、あるいはネットワークから出るデータを収集
する手段とを含む、相互接続されたノードのネットワー
クにデータを出し入れするための装置。
1. A means for interconnecting nodes as a ring of a folded torus without edges to the network, and logically breaking the ring along a dimension orthogonal to the ring so that the edge to the network is established. To dynamically toggle the network between edgeless and edged networks, to move data in and out of the network through the edge when it is active, and to traverse the edge Means to distribute data into or out of the network so that the data rate to be matched matches both the sustained and peak data rates of systems external to the network. A device for moving data in and out of a network of connected nodes .
【請求項2】リングの論理的ブレイクをn回行うと、n
個のエッジができ、かつその結果得られる、n個のエッ
ジを通過するピーク・データ速度及び持続データ速度
が、単一のエッジを通過するデータ速度のn倍に近づく
ことを特徴とする、請求項1に記載の装置。
2. When a logical break of the ring is performed n times, n
Claim 10 characterized by the fact that the resulting peak and sustained data rates through n edges approach n times the data rate through a single edge. The apparatus according to Item 1.
【請求項3】リングがノードをm次元直交形で接続し、 リングのn回の直交方向での論理的ブレイクが、直交す
る複数の次元で行われ、 リングの多次元直交ブレイクによって同一データがネッ
トワークに出し入れされ、 その結果得られる同一データの直交通過により、ネット
ワーク内での転置や行列乗算などの機能のための処理が
単純化されかつ加速されることを特徴とする、請求項2
に記載の装置。
3. A ring connects nodes in an m-dimensional orthogonal form, n logical breaks in the orthogonal direction of the ring are performed in a plurality of orthogonal dimensions, and the same data is obtained by the multidimensional orthogonal break of the ring. A quadratic pass of the same data that is moved in and out of the network, resulting in a simplification and acceleration of processing for functions such as transposition and matrix multiplication in the network.
The device according to.
【請求項4】他のプロセッサ・メモリ要素への通信経路
とノード識別とを有する複数のプロセッサ・メモリ要素
を備え、諸ノードが、処理アレイを提供する通信経路に
沿ったプロセッサ・メモリ要素間の並列通信経路を備え
るn次元ネットワークとして相互接続されており、さら
にブレイクすると、ノード入出力バス経路の外部への有
効なインターフェースを提供することのできる通信用リ
ングを有する、コンピュータ・システム。
4. A processor memory element having a plurality of processor memory elements having a communication path to another processor memory element and a node identification, the nodes between the processor memory elements along the communication path providing a processing array. A computer system interconnected as an n-dimensional network with parallel communication paths, and further having a communication ring that, when broken, can provide an effective interface to the outside of the node I / O bus path.
【請求項5】大規模並列マシンとして編成され、諸ノー
ドが、処理アレイを提供する前記内部通信経路及び外部
通信経路に沿ったプロセッサ・メモリ要素間の並列通信
経路を備えるn次元ネットワークとして相互接続されて
おり、さらにブレイクすると、外部入出力バス経路への
有効なインターフェースを提供することのできる通信用
リングと、外部記憶装置または追加の表示装置を諸ノー
ドの処理アレイのプロセッサ・メモリ要素のサブセット
に接続するためのインターフェースとを有する、請求項
4に記載のコンピュータ・システム。
5. Arranged as a massively parallel machine, the nodes are interconnected as an n-dimensional network with parallel communication paths between processor and memory elements along the internal and external communication paths providing a processing array. And a further break, a communication ring that can provide a valid interface to the external I / O bus path, and an external storage device or additional display device, a subset of the processor memory elements of the processing array of the nodes. 5. The computer system of claim 4, having an interface for connecting to.
【請求項6】ノードが8個の外部ポートをサポートする
4次元修正ハイパーキューブによって他の諸ノードと結
合され、諸ノードがポートを介して接続されてリングを
形成し、一致するポートを相互接続することによりリン
グを相互接続してリングのリングにすることができ、そ
れによって、折返しクラスタのエッジを論理的にジップ
解除して外部システム・バスに接続することによって外
部システムへの入出力を行う、折返しクラスタ構造が形
成できることを特徴とする、請求項4に記載のコンピュ
ータ・システム。
6. A node is coupled with other nodes by a four-dimensional modified hypercube that supports eight external ports, the nodes being connected through the ports to form a ring and the matching ports interconnected. Allows you to interconnect rings into rings of a ring, thereby logically zipping the edges of folded clusters and connecting them to the external system bus for I / O to external systems. The computer system according to claim 4, wherein a folded cluster structure can be formed.
【請求項7】リング内にリングを含み、それらのリング
のいずれかまたはすべて外部入出力へのインターフェー
スを論理的にブレイクし、ブレイクしたリングの2つの
端部を論理動作として外部入出力バスに接続することに
よって、ある時間間隔にノード通信内部の規則的なプロ
セッサ間メモリ要素を許し、他の時間間隔に入出力を許
可することができるトポロジが可能なように、拡張する
ことのできる修正ハイパーキューブ相互接続を含み、修
正ハイパーキューブ内部のリングのレベルでのブレイク
・プロセスが、入出力の目的で有効にリングを「ジップ
解除し」、修正ハイパーキューブの1〜n個のエッジ上
に存在する可能性のあるアレイ内への独立したインター
フェースを提供し、アレイの多数次元への並列入力また
はアレイの複数次元への同報通信をサポートすることを
特徴とする、請求項4に記載のコンピュータ・システ
ム。
7. A ring within a ring, any or all of those rings logically breaking the interface to external I / O, and the two ends of the broken ring to the external I / O bus as a logical operation. By connecting, a modified hyper-extension that allows for topologies that allow regular interprocessor memory elements inside node communication at one time interval and I / O at another time interval. A break process at the level of the ring inside the modified hypercube, including cube interconnects, effectively "unzips" the ring for I / O purposes and resides on 1-n edges of the modified hypercube. Providing an independent interface into a potential array, parallel inputs to multiple dimensions of the array or multiple orders of the array Wherein the supporting broadcast communication to a computer system according to claim 4.
【請求項8】ノード・アレイが、アレイ内へのまたはア
レイからのデータ転送を、ジッパに直接接続された2つ
のノード間で交互に行わせて、異なるサイズのジッパが
ある構成特有の適用要件を満足できるようにすることを
特徴とする、請求項4に記載のコンピュータ・システ
ム。
8. A configuration-specific application requirement in which a node array alternates data transfers into and out of the array between two nodes that are directly connected to the zipper, with zipper of different sizes. The computer system according to claim 4, characterized in that:
【請求項9】入出力ジッパへの経路を管理するためのア
プリケーション・プロセッサ・インターフェースが設け
られ、付加モードでホスト・システムから受け取ったデ
ータまたは独立モードで装置から受け取ったデータがア
レイに転送され、このタイプの動作開始前に、入出力を
管理するアレイ内のプロセッサ・メモリ要素が開始され
ることを特徴とする、請求項4に記載のコンピュータ・
システム。
9. An application processor interface is provided for managing a path to an input / output zipper, wherein data received from a host system in attached mode or data received from a device in independent mode is transferred to an array, Computer according to claim 4, characterized in that the processor memory elements in the array managing the I / O are started before the start of this type of operation.
system.
【請求項10】ノードを形成する複数のプロセッサ・メ
モリ要素を備え、各プロセッサ・メモリ要素がノード内
部及びノード外部に処理アレイを提供する通信経路を有
して、各ノードがノード識別を有し、諸ノードが、処理
アレイを提供する前記通信経路に沿ってノード・プロセ
ッサ・メモリ要素間に並列通信経路を備えるネットワー
クとして相互接続されており、前記システム通信経路を
ブレイクすると、外部入出力バス経路への有効なインタ
ーフェース及びノードの処理アレイの1つまたは複数の
プロセッサ・メモリ要素への有効なインターフェースを
各ノードに提供することができることを特徴とする、多
重プロセッサ・メモリ・コンピュータ・システム。
10. A plurality of processor memory elements forming a node, each processor memory element having a communication path providing a processing array inside and outside the node, each node having a node identification. , Nodes are interconnected as a network with parallel communication paths between nodes, processors, and memory elements along the communication path providing a processing array, and when the system communication path is broken, an external I / O bus path is provided. A multiprocessor memory computer system characterized in that each node can be provided with an effective interface to one or more processor memory elements of a processing array of nodes.
【請求項11】他のプロセッサ・メモリ要素への通信経
路とノード識別を有する複数のプロセッサ・メモリ要素
を備え、諸ノードが、処理アレイを提供する通信経路に
沿ってプロセッサ・メモリ要素間の並列通信経路を備え
るn次元ネットワークとして相互接続されており、かつ
システムが通信リングを有し、それらのリングが、ブレ
イクすると、外部入出力バス経路への有効なインターフ
ェースと、外部記憶装置または追加の表示装置をノード
の処理アレイのプロセッサ・メモリ要素のサブセットに
接続するためのインターフェースとを提供することがで
きることを特徴とする、コンピュータ・システム。
11. A plurality of processor memory elements having a communication path to another processor memory element and a node identification, wherein the nodes are in parallel between the processor memory elements along a communication path providing a processing array. Interconnected as an n-dimensional network with communication paths, and the system has communication rings that, when broken, provide a valid interface to external I / O bus paths and external storage or additional display. An interface for connecting a device to a subset of processor memory elements of a processing array of nodes and a computer system.
JP5111877A 1992-05-22 1993-05-13 Computer system Expired - Lifetime JP2549241B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US88725992A 1992-05-22 1992-05-22
US887259 1992-05-22

Publications (2)

Publication Number Publication Date
JPH0675931A true JPH0675931A (en) 1994-03-18
JP2549241B2 JP2549241B2 (en) 1996-10-30

Family

ID=25390778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5111877A Expired - Lifetime JP2549241B2 (en) 1992-05-22 1993-05-13 Computer system

Country Status (1)

Country Link
JP (1) JP2549241B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885735A (en) * 1985-10-28 1989-12-05 Matsushita Electric Industrial Co., Ltd. Information recording and reproducing apparatus with management of defective sector
DE19755371B4 (en) * 1996-12-31 2004-11-18 Samsung Electronics Co., Ltd., Suwon Hard disk drive and method for write or read access to a magnetic disk
KR100677466B1 (en) * 2004-10-13 2007-02-02 케이씨더블류 주식회사 Wiper Connector Assembly for Wiper Blade Assembly
US7421755B2 (en) 2003-07-08 2008-09-09 Asmo Co., Ltd. Coupling device and wiper blade

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5531420B2 (en) 2009-02-27 2014-06-25 日本電気株式会社 Process allocation system, process allocation method, process allocation program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885735A (en) * 1985-10-28 1989-12-05 Matsushita Electric Industrial Co., Ltd. Information recording and reproducing apparatus with management of defective sector
DE19755371B4 (en) * 1996-12-31 2004-11-18 Samsung Electronics Co., Ltd., Suwon Hard disk drive and method for write or read access to a magnetic disk
US7421755B2 (en) 2003-07-08 2008-09-09 Asmo Co., Ltd. Coupling device and wiper blade
KR100677466B1 (en) * 2004-10-13 2007-02-02 케이씨더블류 주식회사 Wiper Connector Assembly for Wiper Blade Assembly

Also Published As

Publication number Publication date
JP2549241B2 (en) 1996-10-30

Similar Documents

Publication Publication Date Title
US5617577A (en) Advanced parallel array processor I/O connection
US5594918A (en) Parallel computer system providing multi-ported intelligent memory
US10282338B1 (en) Configuring routing in mesh networks
US5737628A (en) Multiprocessor computer system with interleaved processing element nodes
US5630162A (en) Array processor dotted communication network based on H-DOTs
US8032892B2 (en) Message passing with a limited number of DMA byte counters
US8737392B1 (en) Configuring routing in mesh networks
US8151088B1 (en) Configuring routing in mesh networks
US7802025B2 (en) DMA engine for repeating communication patterns
JPH0635877A (en) Array-processor
US5765015A (en) Slide network for an array processor
JPH0668053A (en) Parallel computer
JP2549241B2 (en) Computer system
JP2525117B2 (en) Array processor
Bhanota et al. The BlueGene/L supercomputer
JP2561800B2 (en) Computer system equipment
JPH0652126A (en) Message passing device of interconnected node network and computer system thereof
JP2625628B2 (en) Floating point computer system
Katsinis A multicomputer architecture with a segmented shared bus
Agrawal et al. B-HIVE: hardware and software for an experimental multiprocessor
Buzzard High performance communications for hypercube multiprocessors
JPH0628325A (en) Array processor communication network
Pai Development of a low-latency scalar communication routine on message-passing architectures
JPH0619864A (en) Array processor, processing element and mass parallel processor
Haagens A bus structure for multi-microprocessing.