JPH0855093A - Multiple vector parallel computer - Google Patents

Multiple vector parallel computer

Info

Publication number
JPH0855093A
JPH0855093A JP6211813A JP21181394A JPH0855093A JP H0855093 A JPH0855093 A JP H0855093A JP 6211813 A JP6211813 A JP 6211813A JP 21181394 A JP21181394 A JP 21181394A JP H0855093 A JPH0855093 A JP H0855093A
Authority
JP
Japan
Prior art keywords
access
unit
vector
parallel
data
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
JP6211813A
Other languages
Japanese (ja)
Other versions
JP2655243B2 (en
Inventor
Tatsuo Nogi
野木達夫
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP6211813A priority Critical patent/JP2655243B2/en
Publication of JPH0855093A publication Critical patent/JPH0855093A/en
Application granted granted Critical
Publication of JP2655243B2 publication Critical patent/JP2655243B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To perform calculation at an extra-high speed by coupling the main storage part, which consists of a specific threedimensional arrangement of unit main storage parts each having a. specific three-dimensional arrangement, and the processor part, which consists of a specific square arrangement of unit processor parts consisting of processor units for control and vector units for parallel calculation, through, a network part. CONSTITUTION:The main storage part consists or three-dimensional arrangement {ME (I, J, K), I, J, K=1, 2,..., M} of M%M(X) unit main storage parts 101 each of which consists of three-dimensional arrangement {MB(i, j, k),l, j, k=1, 2,...,N} of NXNXN memory banks, ana the processor part consists of square arrangement {PE(I, J), I, J=1, 2,...,N} of MXM unit processor parts 100 each of which consists or the processor unit for control ana N vector units for parallel calculation {VU(i), i=1,2,...,N}, and the main storage part and the processor part are coupled with the network part between them. Thus, calculation at an extra- high speed is realized.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、近未来の超高速科学技
術計算需要に応えるために、現今のベクトル計算機を高
度に複合化して高性能の並列計算機を構成することに関
するものであり、直接的にはメインフレーマーを含むコ
ンピュータ産業の牽引力につながるとともに、間接的に
は種々の産業分野おけるCADなどスーパーコンピュー
ティング作業を支えることに関与し、その利用分野は極
めて大きい。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to the construction of a high-performance parallel computer by highly complex present-day vector computers in order to meet the demand for ultra-high-speed scientific and technological calculations in the near future. It leads to the traction of the computer industry including the mainframer, and indirectly supports supercomputing work such as CAD in various industrial fields, and its application field is extremely large.

【0002】[0002]

【従来の技術】スーパーコンピューティング需要の高度
化に応えるために、一方に超並列分散メモリ方式の展開
があり、他方に共有メモリに対して複数ベクトルプロセ
ッサを用いた並列システムの展開がある。前者にはハイ
パーキューブネットワークを用いたものや、トーラス結
合したもの(クレイ社T3Dなど)及び本発明者が先に
提案したADENA並列計算機(特許第1404753
号)が含まれる。後者には中規模の並列化版ではクレイ
社Y‐MP、日本電気のSX3など、大規模のものでは
富士通のVPP500などが含まれる。前者の傾向とし
ては、ADENAを除いて一般にできるだけ単純なグリ
ッド結合方式に回帰する流れがみられるが、それは容易
に高性能化にはつながらない。後者では、完全な共有メ
モリ方式を守るため、複数プロセッサとメモリブロック
配列間の接続にωネットワークやクロスバスウィッチな
どを用いるため、プロセッサ数が増加すると、莫大なハ
ードウエアを必要とすることになる。このような状況の
中でベンチマークテストなどで明らかになってきたこと
は、やはり共有メモリ型にできるだけ近いもの、分散メ
モリ型にしてもハードウエアもADENAくらいに凝っ
たものが高性能化に直結するということであった。そこ
で、ADENAの計算方式を部分共有メモリ型で実現す
る方途として提案したのが先に提案した「ベクトル並列
計算機」(特開平6−16227号)であった。これは
高性能化に書かせないメモリアクセスを許すが、余分な
アクセス経路を排除してハードウエアを軽減した極めて
自然な行き先を与えている。
2. Description of the Related Art In order to respond to the demand for supercomputing, there is a development of a massively parallel distributed memory system on one side and a development of a parallel system using a plurality of vector processors for a shared memory. The former uses a hypercube network, the one using a torus connection (such as T3D of Clay Inc.), and the ADENA parallel computer previously proposed by the present inventors (Japanese Patent No. 1404753).
No.) is included. The latter includes Clay's Y-MP and NEC's SX3 for medium-scale parallelized versions, and Fujitsu's VPP500 for large-scale versions. As the former tendency, there is a general tendency to return to the simplest grid connection method except for ADENA, but this does not easily lead to higher performance. In the latter case, an ω network or a cross bus switch is used to connect between a plurality of processors and a memory block array in order to maintain a completely shared memory system, so that when the number of processors increases, an enormous amount of hardware is required. . Under such circumstances, what has become clear through benchmark tests, etc. is that things that are as close as possible to the shared memory type, or even distributed memory types that have elaborate hardware such as ADENA directly lead to higher performance. It was that. In view of this, "Vector parallel computer" (Japanese Patent Laid-Open No. 6-16227) has been proposed as a method for realizing the ADENA calculation method with the partial shared memory type. This allows memory access that cannot be written for higher performance, but provides an extremely natural destination with reduced hardware by eliminating extra access paths.

【0003】[0003]

【発明が解決しようとする課題】本発明は、第1に、先
に特許出願した「ベクトル並列計算機」(特開平6−1
6227号)をユニットとして、複合化システムを構成
することでさらに高性能の並列計算機を作り上げる課題
に応えること、第2に、比較的小さなシステムから大き
なシステムまでのものを同一原理のもとに構成できると
いうスケーラビリティを獲得するという課題に応えるも
のである。
SUMMARY OF THE INVENTION The present invention is, firstly, a "vector parallel computer" filed in the above patent application (Japanese Patent Laid-Open No. 6-1).
No. 6227) as a unit to meet the problem of constructing a high performance parallel computer by configuring a complex system. Second, configure from relatively small system to large system based on the same principle. It addresses the challenge of gaining the scalability of being able to.

【0004】先願のものでは、N3 個のメモリバンクか
らなる立方配列からなる主記憶部と、N台のプロセッサ
ユニットからなるプロセッサ部、並びに前記主記憶部と
プロセッサ部の間にあってベクトルデータを一時記憶す
るN本のベクトルラッチからなるベクトルラッチ部を備
えたバックエンド用計算機システムであって、次のよう
な作用を可能にするものであった。メモリバンクの立方
配列を稜辺に沿った3方向(x方向、y方向、z方向)
について、それぞれの方向を法線とする選択した一つの
断面(セクション)上に並ぶN2 個のメモリバンクから
対応した方向に並ぶN本のバンク列から、それぞれN個
のバンクから1個ずつというベクトルアクセスを並列に
行う。例えば、x方向の法線をもつ一つのクション上で
はy方向に並ぶN個のバンクから各1個ずつの要素を集
めたベクトルを単位としてz方向に並ぶN本のベクトル
を並列にアクセスすることができる。これをxアクセス
と呼ぶ。他の方法についても同様であり、それぞれyア
クセス、zアクセスと呼ぶ。このような3方向のアクセ
スのいずれかを必要に応じて任意に選択できることを基
本としながら、補助的にz方向に並ぶバンク列のうちの
一つを任意に指定し、その中のそれぞれのバンクから一
つずつのN長ベクトルをN本分並列アクセスすることも
可能である。これをdアクセスと呼ぶ。以上四つのアク
セス方法を可能にすることを明らかにした発明であっ
た。
In the prior application, a main memory unit consisting of a cubic array consisting of N 3 memory banks, a processor unit consisting of N processor units, and vector data between the main memory unit and the processor units are used. A back-end computer system provided with a vector latch unit composed of N vector latches for temporary storage, which enabled the following operations. Three directions (x-direction, y-direction, z-direction) along the edges of the cubic array of memory banks
, From N 2 memory banks arranged in one selected cross section (section) with each direction as a normal line, from N bank rows arranged in a corresponding direction, one from N banks each. Perform vector access in parallel. For example, on one action having a normal in the x direction, N vectors arranged in the z direction are accessed in parallel using a vector obtained by collecting one element each from the N banks arranged in the y direction. Can be. This is called x access. The same applies to other methods, which are called y access and z access, respectively. One of the banks arranged in the z direction is arbitrarily designated, and each of the banks in the z direction is arbitrarily designated based on the fact that any of the three directions can be arbitrarily selected as necessary. , It is also possible to access N N-length vectors one by one in parallel. This is called d access. The invention was made clear to enable the above four access methods.

【0005】システムの拡大及びスケーラビリティの確
保を図るためには、先願のものをユニットとして複合化
し拡大化したとき、上述の4方向アクセスがそのまま可
能であるようにすることが解決すべき課題である。
In order to expand the system and ensure scalability, it is a problem to be solved that the above-mentioned four-direction access can be directly performed when the prior application is combined and expanded as a unit. is there.

【0006】[0006]

【課題を解決するための手段】本発明は、上記の課題を
解決するために、先願の「ベクトル並列計算機」のプロ
セッサ部と、残りの部分を一旦切り離す。残された部分
はベクトルラッチ部と主記憶部からなるが、前者を後者
に付属したものとみなし、以下ではあわせて主記憶部と
呼ぶ。それらプロセッサ部と主記憶部の単位をそれぞれ
単位プロセッサ部、単位主記憶部と呼び、PEとMEと
記す。PEの中には幾本かのベクトル演算装置とスカラ
ー演算装置を1セットとしてNセットが含まれているこ
とと、MEの中にはN×N×N個のメモリブロックの立
方配列が含まれていることを前提とする。次に、M×M
個のPE,{PE(I,J),I,J=1,2,…,
M}及びM×M×M個のME,{ME(I,J,K),
I,J,K=1,2,…,M}を備えた複合化システム
を考え、PE群とME群の間にしかるべき接続ネットワ
ークを与えることで上記課題を解決する。
In order to solve the above-mentioned problems, the present invention temporarily separates the processor part of the "vector parallel computer" of the prior application from the rest. The remaining part consists of a vector latch part and a main memory part, but the former is regarded as being attached to the latter, and is hereinafter collectively referred to as the main memory part. The units of the processor unit and the main storage unit are referred to as a unit processor unit and a unit main storage unit, and are referred to as PE and ME. The PE includes N sets with some vector arithmetic units and the scalar arithmetic unit as one set, and the ME includes a cubic array of N × N × N memory blocks. It is assumed that Next, M × M
PEs, {PE (I, J), I, J = 1,2, ...,
M} and M × M × M MEs, {ME (I, J, K),
Considering a composite system having I, J, K = 1, 2,..., M}, the above problem is solved by providing an appropriate connection network between the PE group and the ME group.

【0007】この際、Xアクセスであれば、各PEへの
xアクセスを同時並行して行うことでME群全体に対す
るアクセスが各PEに対するxアクセスと相似なものが
実現できるようにする。それをシステム総体に対するX
アクセスと呼ぶ。YアクセスやZアクセスやDアクセス
についても同様に実現する。
At this time, in the case of X access, x access to each PE is performed simultaneously in parallel so that access to the entire ME group can be realized similar to x access to each PE. X to the whole system
Called access. The same applies to Y access, Z access, and D access.

【0008】Xアクセスについて詳しく言えば、標準的
には、選ばれたインデックスIに対応するME群の断面
上でJ,K=1,2,…,Mに対応するME行列の各要
素MEからそれぞれ長さN(あるいはN×M)のベクト
ルをxアクセスし、全体でM×M本のベクトルPE群が
同時並行(長さがN×MならMに応じた繰り返しを含め
て)にアクセスする。その際、ME(I,J,K)のベ
クトルをPE(J,K)が個別のxアクセスを行う。そ
れは各Kに対して、J=1,2,…,Mに対するそれぞ
れのN長ベクトルを連ねた総長N×MのベクトルをPE
列、{PE(J,K),J=1,2,…,M}が組にな
って並行アクセスすることを、K=1,2,…,Mに亘
って並列に行うことであり、システム総体に対してXア
クセスを実現していると言える。
[0008] To be more specific about the X access, typically, on the cross section of the ME group corresponding to the selected index I, each element ME of the ME matrix corresponding to J, K = 1, 2,. Each of the vectors of length N (or N × M) is accessed x, and a total of M × M vector PEs are accessed simultaneously in parallel (including repetition according to M if the length is N × M). . At this time, the PE (J, K) makes individual x access to the vector of ME (I, J, K). For each K, a vector of total length N × M, which is a series of N length vectors for J = 1, 2,.
Parallel access over K = 1, 2, ..., M is performed by performing parallel access as a set of columns, {PE (J, K), J = 1, 2, ..., M}. It can be said that X access is realized for the entire system.

【0009】Yアクセスについて詳しく言えば、選ばれ
たインデックスJに対応する断面上でK,I=1,2,
…,Mに対応するME行列の各要素MEからそれぞれN
長ベクトルをyアクセスし、全体でM×M本のベクトル
PE群が同時並行アクセスする。その際、ME(I,
J,K)のベクトルをPE(K,I)が個別のyアクセ
スを行う。それは各Iに対して、K=1,2,…,Mに
対するそれぞれのN長ベクトルを連ねた総長N×Mのベ
クトルをPE列、{PE(K,I),K=1,2,…,
M}が組になって並行アクセスすることを、I=1,
2,…,Mに亘って並列に行うことであり、システム総
体に対してYアクセスを実現していると言える。
In detail regarding the Y access, K, I = 1, 2, on the cross section corresponding to the selected index J.
, N from each element ME of the ME matrix corresponding to M
Y access is performed on the long vector, and a total of M × M vector PE groups are simultaneously accessed in parallel. At that time, ME (I,
The PE (K, I) makes individual y access to the vector of (J, K). For each I, a vector of total length N × M, which is a sequence of N length vectors for K = 1, 2,..., M, is a PE column, {PE (K, I), K = 1, 2,. ,
M = 1 as a set to perform parallel access, I = 1,
2,..., M in parallel, and it can be said that Y access is realized for the entire system.

【0010】Zアクセスについて詳しく言えば、標準的
には、選ばれたインデックスKに対応する断面上でI,
J=1,2,…,Mに対応するME行列の各要素MEか
らそれぞれN長ベクトルをzアクセスし、全体でM×M
本のベクトルをPE群が同時並行アクセスする。その
際、ME(I,J,K)のベクトルをPE(I,J)が
個別zアクセスを行う。それは各Jに対して、I=1,
2,…,Mに対するそれぞれのN長ベクトルを連ねた総
長N×MのベクトルをPE列、{PE(I,J),I=
1,2,…,M}が組になって並行アクセスすること
を、J=1,2,…,Mに亘って並列に行うことであ
り、システム総体に対してZアクセスを実現していると
言える。
[0010] More specifically about the Z-access, typically, I, I on the cross-section corresponding to the selected index K
Accessing the N-length vector from each element ME of the ME matrix corresponding to J = 1, 2,...
PE groups simultaneously access the vector of the book in parallel. At that time, PE (I, J) performs individual z access to the vector of ME (I, J, K). That is, for each J, I = 1,
A vector of total length N × M in which N length vectors for 2, ..., M are connected is a PE sequence, {PE (I, J), I =
1, 2, ..., M} are set to perform parallel access in parallel over J = 1, 2, ..., M, and Z access is realized for the entire system. Can be said.

【0011】最後に、Dアクセスは前のものとは少し異
なっている。標準的には、選ばれたインデックスIとJ
に対応する線分上に並ぶ、K=1,2,…,Mに対応す
るMEの柱の各要素MEからそれぞれN×M長のベクト
ルをdアクセスし、全体でM×M本のベクトルをPE群
が同時並行アクセスする。その際、ME(I,J,K)
のベクトルをPE(L,K)が個別のdアクセスを行
う。それは各対(I,J)に対して、K=1,2,…,
Mに対するそれぞれのN×M長のベクトルを、N個ずつ
を{PE(L,K),L=1,2,…,M}に割り振っ
てアクセスするものである。そのようなアクセスでは、
N×M長のベクトルを分けて配ることや逆にN長ベクト
ルを集めてN×M長のベクトルにする操作が必要にな
る。
Finally, the D access is slightly different from the previous one. Typically, the selected indices I and J
, N-by-N vectors are accessed from each element ME of the column of ME corresponding to K = 1, 2,..., M arranged on the line segment corresponding to M, and M × M vectors are obtained as a whole. The PEs access simultaneously. At that time, ME (I, J, K)
PE (L, K) makes individual d access to the vector That is, for each pair (I, J), K = 1,2, ...,
Each N × M-long vector for M is assigned N {PE (L, K), L = 1, 2, ..., M} for access. With such access,
It is necessary to distribute N × M-length vectors separately, or conversely, to collect N-length vectors and make them into N × M-length vectors.

【0012】上記4種のアクセスを任意選択的に行える
ようにするため、プロセッサ部と主記憶部の間にデータ
バスとアクセス経路選択の論理回路からなるネットワー
クを組み立てる。プロセッサ部に直接接続される部分に
は、アクセスの種類X/D,Y,Zに応じて異なるバス
経路を選択するための種別選択回路を置く。それは一方
で、プロセッサ群{PE(J,K),J,K=1,2,
…,M}の各々からでるN組のエッジ{PEE(J,
K)(L),L=1,2,…,N}とつながり、他方で
3N組のバスに接続するものをM2 個備えることにな
る。XアクセスとDアクセスはプロセッサに近いところ
でバスを共有するため区別する必要がない。それらを
{SA(J,K)(L),J,K=1,2,…,M,L
=1,2,…,N}と書き表す。
In order to optionally perform the above four types of access, a network composed of a data bus and an access path selecting logic circuit is assembled between the processor section and the main memory section. A type selection circuit for selecting a different bus path according to the type of access X / D, Y, Z is provided in a portion directly connected to the processor unit. On the other hand, the processor group {PE (J, K), J, K = 1, 2, 2,
, M}, N sets of edges {PEE (J,
K) (L), L = 1, 2, ..., N}, and on the other hand, there are M 2 pieces connected to 3N sets of buses. Since the X access and the D access share the bus near the processor, there is no need to distinguish between them. Change them to {SA (J, K) (L), J, K = 1,2, ..., M, L
= 1, 2,..., N}.

【0013】主記憶部に直接接続される部分には、主記
憶部全体をみてメモリブロック配列のうちアクセスする
一つの断面配列(Dアクセスでは、さらにその上の一つ
の柱)を選択して、そこからくるバスを選択するバス選
択回路をアクセスの種類に応じてそれぞれ配置する。ア
クセスは択一的なので、どの断面選択回路もプロセッサ
側の端子は共通バスでもって種別選択回路につながる。
いずれの断面選択回路も主記憶側のM個のメモリブロッ
クの内の一つを選ぶものである。それらが各アクセス種
毎にN×M×M個置かれる。それらを{aSB(J,
K)(L),J,K=1,2,…,M,L=1,2,
…,N}と記す。ここでaのところには異なるバス選択
回路を特定するための文字X/D,Y,Zのいずれかが
置かれる。
In the part directly connected to the main storage unit, one cross-sectional array (one column above it in the case of D access) to be accessed is selected from the memory block array in the entire main storage unit. A bus selection circuit for selecting a bus coming therefrom is arranged according to the type of access. Since the access is optional, the terminal on the processor side of any cross section selection circuit is connected to the type selection circuit by a common bus.
Each cross section selection circuit selects one of the M memory blocks on the main memory side. N × M × M of them are placed for each access type. Replace them with {aSB (J,
K) (L), J, K = 1, 2, ..., M, L = 1, 2,
..., N}. Here, any one of the letters X / D, Y, Z for specifying a different bus selection circuit is placed at a.

【0014】Xアクセスでは、各X/DSB(J,K)
(L)がメモリブロックのM個の並び{ME(I,J,
K),I=1,2,…,M}からくるバスの一つを選
ぶ。Yアクセスでは、各YSB(K,I)(L)がメモ
リブロックのM個の並び{ME(I,J,K),J=
1,2,…,M}からくるバスの一つを選ぶ。Zアクセ
スでは、各ZSB(I,J)(L)がメモリブロックの
M個の並び{ME(I,J,K),K=1,2,…,
M}からくるバスの一つを選ぶ。Dアクセスでは、主記
憶からデータを読む場合、各X/DSB(J,K)
(L)がインデックス値Iを指定することで選ばれる1
個のメモリブロックからのデータバスにつながり、長い
データ(標準的にはN×M長)を通過させながら、N長
のM個のベクトルとしてそれぞれを対応する{SA
(j,K)(L),j=1,2,…,M}につながるバ
スに振り分ける。主記憶に書き込む場合には、上の逆を
行えばよく、{SA(j,K)(L),j=1,2,
…,M}からくるデータを長いデータにして各X/DS
B(J,K)(L)からME(I,J,K)に送り込
む。
In X access, each X / DSB (J, K)
(L) is a sequence of M memory blocks {ME (I, J,
K), I = 1, 2,..., M}. In Y access, each YSB (K, I) (L) has M rows of memory blocks {ME (I, J, K), J =
Choose one of the buses coming from 1,2, ..., M}. In Z access, each ZSB (I, J) (L) is an array of M memory blocks {ME (I, J, K), K = 1,2, ...
Choose one of the buses coming from M}. In D access, when reading data from the main memory, each X / DSB (J, K)
(L) is selected by specifying the index value I 1
Connected to the data bus from the memory blocks and passing long data (typically N × M lengths) while corresponding to each of the M vectors of N lengths {SA
(J, K) (L), j = 1, 2, ..., M}. When writing to the main memory, the reverse of the above may be performed, and {SA (j, K) (L), j = 1, 2, 2,
…, Convert the data coming from M} into long data to make each X / DS
Send from B (J, K) (L) to ME (I, J, K).

【0015】各アクセス種別において確保されるバスの
接続状態を模式的に表せば、次のようになる。 Xアクセス:Iは特定値、J,K=1,2,…,M,L=1,2,…,N PEE(J,K)(L) ‐SA(J,K)(L)‐X/DSB(J,K)(L) ‐ME(I,J,K) Yアクセス:Jは特定値、K,I=1,2,…,M,L=1,2,…,N PEE(K,I)(L) ‐SA(K,I)(L)‐YSB(K,I)(L) ‐ME(I,J,K) Zアクセス:Kは特定値、I,J=1,2,…,M,L=1,2,…,N PEE(I,J)(L) ‐SA(I,J)(L)‐ZSB(I,J)(L) ‐ME(I,J,K) Dアクセス:I,Jは特定値、j,K=1,2,…,M,L=1,2,…,N PEE(j,K)(L) ‐SA(j,K)(l)‐X/DSB(J,K)(L) ‐ME(I,J,K) 上記アクセス状態を確保するための、より具体的な内容
は次の実施例にて説明する。
The connection state of the bus secured in each access type is schematically represented as follows. X access: I is a specific value, J, K = 1, 2, ..., M, L = 1, 2, ..., N PEE (J, K) (L) -SA (J, K) (L) -X / DSB (J, K) (L) -ME (I, J, K) Y access: J is a specific value, K, I = 1,2, ..., M, L = 1,2, ..., N PEE ( K, I) (L) -SA (K, I) (L) -YSB (K, I) (L) -ME (I, J, K) Z access: K is a specific value, I, J = 1, 2, ..., M, L = 1,2, ..., N PEE (I, J) (L) -SA (I, J) (L) -ZSB (I, J) (L) -ME (I, J , K) D access: I, J are specific values, j, K = 1, 2, ..., M, L = 1, 2, ..., N PEE (j, K) (L) -SA (j, K) (l) -X / DSB (J, K) (L) -ME (I, J, K) More specific contents for ensuring the above access state will be described in the next embodiment.

【0016】[0016]

【実施例】実施例1 説明と図示を易しくするために、小規模の複合化システ
ムをあげる。複合化に利用する単位プロセッサ部100
として4組のベクトル演算装置16をもつものを考える
(この場合、N=4に相当)。1組のベクトル演算装置
の中には複数個のパイプライン演算器やスカラー演算器
が含まれている。単位主記憶部101は4×4×4個の
メモリブロック1からなる立方配列とベクトルデータラ
ッチ部を搭載するドーターボート102とからなってい
る。これら単位プロセッサ部と単位主記憶部とを直接つ
なぐことで、最小規模のベクトル並列計算機ができあが
る。それが先の特許願の実施例になる。そのシステムを
示したものが図1であり、主記憶ボードからでるデータ
バス103とベクトラッチをドーターボード102上で
どのように接続するかをx/d,y,zアクセスに対応
して表したのが図2である。ここで、x/d,yアクセ
スでは図のように結線は固定されるが、zアクセスでは
主記憶ボート選択に応じて変化する。
[Embodiment 1 ] In order to facilitate the description and illustration, a small-scale composite system will be given. Unit processor unit 100 used for compounding
Is assumed to have four sets of vector operation devices 16 (in this case, N = 4). A plurality of pipeline arithmetic units and scalar arithmetic units are included in one set of vector arithmetic units. The unit main memory unit 101 is composed of a cubic array composed of 4 × 4 × 4 memory blocks 1 and a daughter boat 102 having a vector data latch unit. By directly connecting the unit processor unit and the unit main storage unit, a minimum-scale vector parallel computer is completed. That is the embodiment of the earlier patent application. The system is shown in FIG. 1, which shows how to connect the data bus 103 and the vector latch from the main memory board on the daughter board 102 in correspondence with x / d, y, z access. Is shown in FIG. Here, in the x / d, y access, the connection is fixed as shown in the figure, but in the z access, it changes according to the main memory boat selection.

【0017】さて、ここでは単位プロセッサ部を2×2
=4セット、単位主記憶部を2×2×2=8個分用いた
複合化システムを実施例とする(この場合、M=2に相
当)。これでもってN=M×(元の単位システムのN)
=8に相当した単位システムと同等の機能をもたせるこ
とができる(スケーラビリティ)。今の場合、用いるプ
ロセッサ数もメモリ単位数も少数なので、PE(1,
1),PE(2,1),PE(1,2),PE(2,
2)の代わりにPA,PB,PC,PDの記号を用い、
プロセッサエッジ部分も簡単にAE,BE,CE,DE
と表す。そして、ME(1,1,1),ME(2,1,
1),ME(1,2,1,),ME(2,2,1,)の
代わりにME1,ME2,ME3,ME4,さらに、M
E(1,1,2),ME(2,1,2),ME(1,
2,2,),ME(2,2,2,)の代わりにME5,
ME6,ME7,ME8を用いるものとする。また、前
節でN組のものを区分するために用いたインデックス
(L)値は名前に続く数字でもって直接表す。例えば、
PAにおける4組の演算装置はL=1,2,3,4に相
当してPA1,PA2,PA3,PA4と表せる。この
システムのプロセッサ部と主記憶部の全体を表したもの
が図3である。このシステムによってXアクセス、Yア
クセス、Zアクセス及びDアクセスでプロセッサ部に運
ばれるデータセットの例をそれぞれ図4,5,6,7に
与えてある。図4,5,6のメモリブロックのところに
配列Aの要素を表示しているが、それは典型的に{A
(I,J,K),I=1,9,J=1,7,K=1,
5}をストアした状態を示しており、ここで、網かけ状
で図示した短冊形部分が単位主記憶部から一度にアクセ
スされるベクトルであり、そのような短冊がすべて並列
にアクセスされるものである。図4では{A(1,J,
K),J=1,7,K=1,5}をXアクセスする場
合、図5では{A(I,1,K),K=1,5,I=
1,9}をYアクセスする場合(実際には、2度アクセ
スする必要がある)、図6では{A(I,J,1),I
=1,9,J=1,7}をZアクセスする場合(実際に
は、2度アクセスする必要がある)を示している。な
お、XアクセスとZアクセスでは短冊群の主記憶部内で
の配置とプロセッサ部のレジスタ内での配置の関係は直
接的であり、短冊間の対応は明確であるが、Yアクセス
では主記憶部内の短冊とプロセッサ部のレジスタ内のも
のとは直接対応せず、実際には、プロセッサ部にかかれ
た鉛直短冊の形でメモリブロックにも蓄えられているも
のが対応する。しかし、単位記憶部において直接読まれ
るものは図にあるような短冊としてであって、単位主記
憶部内に置かれるベクトルラッチ群を介して編集された
ものがプロセッサ部に運ばれるようになっている(ここ
のところは、先願のものの内容に関係する)。また、図
7のDアクセスでは柱状に並ぶメモリブロックのそれぞ
れから2個ずつの短冊ベクトルをアクセスする状態を示
している。
Here, the unit processor section is 2 × 2
= 4 sets, a composite system using 2 × 2 × 2 = 8 unit main storage units is an example (in this case, M = 2). With this, N = M × (N of the original unit system)
= 8 (scalability). In this case, since the number of processors and the number of memory units to be used are small, PE (1,
1), PE (2,1), PE (1,2), PE (2,
Use the symbols PA, PB, PC, PD instead of 2),
AE, BE, CE, DE easily at the processor edge
Express. Then, ME (1,1,1), ME (2,1,
1), ME (1,2,1,), ME (2,2,1,) instead of ME1, ME2, ME3, ME4, and M
E (1,1,2), ME (2,1,2), ME (1,
Instead of ME (2,2,2), ME5
ME6, ME7, and ME8 are used. Also, the index (L) value used to distinguish the N sets in the previous section is directly represented by a number following the name. For example,
The four sets of arithmetic units in the PA correspond to L = 1, 2, 3, and 4, and can be expressed as PA1, PA2, PA3, and PA4. FIG. 3 shows the entire processor unit and main storage unit of this system. Examples of data sets carried to the processor unit by X access, Y access, Z access and D access by this system are given in FIGS. The elements of the array A are displayed at the memory blocks in FIGS. 4, 5 and 6, which are typically {A
(I, J, K), I = 1, 9, J = 1, 7, K = 1,
5} is stored, where the strip-shaped portion shown in the shaded form is a vector that is accessed at one time from the unit main memory, and all such strips are accessed in parallel. Is. In FIG. 4, {A (1, J,
When K), J = 1, 7, K = 1, 5} is X-accessed, {A (I, 1, K), K = 1, 5, I = in FIG.
In the case where Y access is made to {1, 9} (actually, it is necessary to access twice), in FIG. 6, {A (I, J, 1), I
= 1,9, J = 1,7} are Z-accessed (actually, they need to be accessed twice). Note that in X access and Z access, the relationship between the arrangement of strips in the main storage unit and the arrangement of the processor unit in the register is direct, and the correspondence between the strips is clear, but in Y access, in the main storage unit. The strips and those in the register of the processor section do not directly correspond to each other, but in reality correspond to those stored in the memory block in the form of a vertical strip on the processor section. However, what is read directly in the unit storage section is a strip as shown in the figure, and what is edited via a vector latch group placed in the unit main storage section is carried to the processor section. (This concerns the content of the earlier application). Further, the D access in FIG. 7 shows a state in which two strip vectors are accessed from each of the memory blocks arranged in a column.

【0018】プロセッサ部と主記憶部の間にあって、そ
れらを接続するネットワーク部を搭載したマザーボード
が本出願の中心部分に該当する。それを図8に表す。
A motherboard mounted between the processor unit and the main memory unit and having a network unit connecting them corresponds to the central part of the present application. It is shown in FIG.

【0019】図8の下部で直接プロセッサエッジにつな
がるのがアクセス種別によってバスの選択を行う種別選
択回路を実現するマルチプレクサ104である。4つの
単位プロセッサ部105のそれぞれにつながる4個のも
のが置かれる。各1個にはプロセッサ側には、単位プロ
セッサ部に直結するバスのための4組の端子106が備
えられてる(N=4)。それらには、例えばプロセッサ
エッジAEにつながるものでは、A1,A2,A3,A
4の記号をあてている。その他のマルチプレクサであっ
てもプロセッサ側の端子にはどのプロセッサにつながる
かを示すことのみが重要としてそのマルチプレクサの目
的にかかわらず同種の記号をあてる。その端子名でもっ
て当のマルチプレクサ自身も表すものとする。上記種別
選択マルチプレクサ1個の主記憶側にはX/D,Y,Z
という3通りのアクセスに対応したバス経路をそれぞれ
4組ずつ確保するための端子12個分107が並んでい
る。
Directly connected to the processor edge in the lower part of FIG. 8 is a multiplexer 104 for realizing a type selection circuit for selecting a bus according to an access type. There are four units connected to each of the four unit processor units 105. Each one is provided on the processor side with four sets of terminals 106 for a bus directly connected to the unit processor unit (N = 4). They include, for example, A1, A2, A3, A
The symbol of 4 is applied. Even for other multiplexers, it is important only to indicate which processor is connected to the terminal on the processor side, and the same symbols are applied regardless of the purpose of the multiplexer. The terminal name also represents the multiplexer itself. X / D, Y, Z on the main memory side of one of the type selection multiplexers
12 terminals 107 for securing four sets of bus routes respectively corresponding to the three types of accesses are arranged.

【0020】図8の中央部には、下から上へと3通りの
断面選択回路、すなわちZアクセス断面選択回路10
8、Yアクセス断面選択回路109およびX/Dアクセ
ス選択回路110が並べてある。いずれにおいても、プ
ロセッサ側には上記説明にある端子名がつけてあるが、
図が見にくくならないように、それら端子と種別選択回
路の端子の間の結線は省略してある。Xアクセス、Yア
クセス、Zアクセスのいずれの選択回路であっても、今
の場合M=2であるから、それぞれの方向に並ぶ2つの
単位主記憶部のいずれかを選べばよい。Zアクセスで
は、A,B,C,Dを頭字とする4組のマルチプレクサ
がそれぞれ主記憶側の接続バスとして、単位主記憶部エ
ッジ111の選択子対(ME1かME5)、(ME2か
ME6)、(ME3かME7)、(ME4かME8)か
らくるいずれのバスを選ぶ。Yアクセスでは、同じく
A,B,C,Dを頭文字とする4組のマルチプレクサ
が、それぞれ(ME1かME3)、(ME5かME
7)、(ME2かME4)、(ME6かME8)のいず
れかに接続することを選択する。Xアクセスでも、同じ
くA,B,C,Dを頭文字とする4組のマルチプレクサ
が、それぞれ(ME1かME2)、(ME3かME
4)、(ME5かME6)、(ME7かME8)のいず
れかに接続することを選択する。なお、Xアクセスでは
X/Dバス選択回路を用いているが、それはDアクセス
にも共通に利用できるようにしてあるため、Yアクセス
やZアクセスのものに比べて少し複雑になっている。
In the center of FIG. 8, three cross-section selection circuits, that is, a Z-access cross-section selection circuit 10 are arranged from bottom to top.
8, a Y access section selection circuit 109 and an X / D access selection circuit 110 are arranged. In any case, the processor has the terminal name described in the above description,
Connections between these terminals and the terminals of the type selection circuit are omitted so as not to obscure the figure. In any of the X access, Y access, and Z access selection circuits, since M = 2 in this case, it is only necessary to select one of the two unit main memory units arranged in each direction. In the Z access, four pairs of multiplexers each having an acronym of A, B, C, and D are used as connection buses on the main storage side to select the selector pair (ME1 or ME5) or (ME2 or ME6) of the unit main storage unit edge 111. , (ME3 or ME7) or (ME4 or ME8). In Y access, four sets of multiplexers similarly having initials A, B, C, and D are (ME1 or ME3) and (ME5 or ME5), respectively.
7) Select to connect to one of (ME2 or ME4) or (ME6 or ME8). Also in the X access, four sets of multiplexers also having the initials A, B, C, and D respectively (ME1 or ME2), (ME3 or ME3).
4) Select connection to one of (ME5 or ME6) or (ME7 or ME8). Note that although the X / D bus selection circuit is used in the X access, the X / D bus selection circuit is commonly used for the D access, so that the X / D bus selection circuit is slightly more complicated than those of the Y access and the Z access.

【0021】Dアクセスのために、X/Dバス選択回路
のプロセッサ側に直結する形で、2N長のベクトルを2
つのN長のベクトルに分け一半をストレートにつながる
バスに渡すとともに他方の半分を対応するプロセッサに
つながるバスに渡す、あるいは逆にそれらのバスのN長
ベクトルを併せて2Nのものにして一つのX/Dバス選
択回路に渡すためのマルチプレクサ機能付きのバストラ
ンシーバを置く。Xアクセスのときには単純に通過する
だけにしておければよい。
For D access, a 2N-long vector is directly connected to the processor side of the X / D bus selection circuit.
Divided into two N-length vectors, one half is passed to the bus connected to the straight line, and the other half is passed to the bus connected to the corresponding processor, or conversely, the N-length vectors of those buses are combined into 2N and one X A bus transceiver with a multiplexer function for passing to the / D bus selection circuit is provided. In the case of X access, it is only necessary to simply pass.

【0022】実施例2 実施例1では、説明を簡単にするためデータバスの幅に
ついては特に言及せず、暗黙裡に約1倍長語(64ビッ
ト+訂正符号分)を想定していた。しかし、高性能のベ
クトル演算器を用いる場合、通常は一連の計算手続の中
で、少なくとも個々の計算に必要な2つのオペランドベ
クトルのフェッチと結果とのストアは並行して行うこと
が普通である。そうしないと演算スピードに適応したメ
モリアクセスにならない。そこで、各単位主記憶部のベ
クトルラッチやアクセスラッチや各種選択回路(こせら
は先の特許願に付随したこと)と同時に、前記マザーボ
ード上のバス選択回路はすべて3重に用意する。実際
上、主記憶部に出ている3重のエッジとプロセッサ部に
出ている3重のエッジをそれぞれつなぐ前記実施例1の
マザーボードを3枚分備えることになる。
Second Embodiment In the first embodiment, the width of the data bus is not particularly referred to for the sake of simplicity, and it is implicitly assumed that a double word (64 bits + correction code) is used. However, when a high-performance vector arithmetic unit is used, it is usual to fetch at least two operand vectors required for each calculation and store the result in parallel in a series of calculation procedures. . Otherwise, the memory access will not be adapted to the operation speed. Therefore, at the same time as the vector latches and access latches of each unit main storage unit and various selection circuits (these are attached to the above patent application), all the bus selection circuits on the motherboard are prepared in triple. Actually, the three motherboards of the first embodiment for connecting the triple edges appearing in the main memory and the triple edges appearing in the processor, respectively, are provided.

【0023】総括 本発明システムは、複合化システムであっても単位シス
テム作用と全く同様な作用が行える。しかも、複合化に
よってより高性能化したものになる。そのことをここで
説明する。
Summary The system of the present invention can perform the same operation as the unit system operation even if it is a combined system. In addition, the combination makes it even more sophisticated. This will be explained here.

【0024】まず、説明に必要な範囲で、単位システム
において実現できていた作用に簡単に触れて置く。例え
ば、通常の逐次計算機でFORTRANで表現される構
文 DO 10 K=1,4 DO 10 J=1,4 DO 10 I=1,4 10 V(I,J,K)=(U(I-1,J,K)+U(I+1,J,K)+U(I,J-1,K)+U(I,J+1,K) & +U(I,J,K-1)+U(I,J,K+1)/6.0 を単位システムで並列計算する場合の実現態様を適当に
言語表現するなら、例えば次のように与えられる。 PDO I,J =1,4 DO 10 K=1,4 10 Z(/I,J/,K)=U(/I,J/,K-1)+U(/I,J/,K+1) PEND PDO K,I=1,4 DO 20 J=1,N 20 Y(I/,J,/K)=U(I/,J-1,/K)+U(I/,J+1,/K) PEND PDO J,K=1,4 DO 30 I=1,4 30 V(I,/J,K/)=(U(I-1,/J,K/)+U(I+1,/J,K)+Y(I,/J,K/)+Z(I,/J,K/)/ 6.0 PEND ここで、ラベル10の代入文についてはインデックスK
について逐次計算する(DO文)ことを、インデックス
I,Jの変化範囲のすべてについて並列計算する(PD
O文)ことを指示している。その代入文の中で並列計算
に対応したインデックスをスラッシュの対で囲んでいる
のは読みやすくするためである。この部分の計算はzア
クセスによって行える。例えば、K=2のとき{U(/
I,J/,1)}と{U(/I,J/,3)}をフェッ
チすることになるが、それはメモリブロック配列の断面
配列{MB(/I,J/,1)}と{MB(/I,J
/,3)}からJ=1,2,3,4に応じて一つずつの
ブロック列からその中のI=1,2,3,4に対応した
ブロックから各1個の要素を取り出してできる長さ4の
ベクトルを1個ずつ計4個をそれぞれ並列にフェッチす
るものである。すなわち、I方向に延びるベクトルをJ
に亘って並列フェッチする。計算そのものもI方向にベ
クトル処理、J方向に並列処理する。それを上のプログ
ラムではI,Jに関するPDOと表現している。結果の
{Z(/I,J/,2)}のストアでもI方向に延びる
ベクトルをJについて同時並列にメモリブロックの断面
配列{MB(/I,J/,2)}に書き入れる。上のよ
うな計算をK=1,2,3,4と順に追いながら処理す
るのが最初のPDOバラグラフの内容である。続いて、
ラベル20の代入文の処理はyアクセスに拠る。この場
合では、K方向に延びるベクトルにつき、I=1,2,
3,4に亘って並列にフェッチし、計算し、結果をスト
アすることをJ=1,2,3,4と繰り返す。最後に、
ラベル30の代入文ではxアクセスを用い、J方向に延
びるベクトルに付き、K=1,2,3,4に亘って並列
にフェッチし、計算し、結果をストアすることをI=
1,2,3,4の順に繰り返す。このように適当なアク
セス方向を選びながら並列計算を行うことができるハー
ドウエアとして提起したのが先願のものである。その
際、ベクトル処理と並列処理に関係した方向の他にもう
一つの方向が残され、その方向には逐次計算を行うこと
を前提としている。実はそれを積極的に残しているのは
その処理の中にさまざまな洗練されたアルゴリズムを表
現したいからである。見方を変えれば、ベクトル処理も
並列処理も区別することなく並列処理とみなせば、上に
行った計算はスラッシュ対の付かない裸のインデックス
方向に延びる1次元部分配列(セグメント)に対する逐
次計算をスラッシュ付きのインデックスに亘って並行処
理しているものである。しかも、セグメントの切り出し
方向を変えながら処理していくものである。このような
並列計算方式をADEPS(Altenating Direction Exe
cution of “Parallel over Segments”) と名付ける。
First, to the extent necessary for the description, the operation realized in the unit system will be briefly mentioned. For example, the syntax DO 10 K = 1,4 DO 10 J = 1,4 DO 10 I = 1,4 10 V (I, J, K) = (U (I−1) , J, K) + U (I + 1, J, K) + U (I, J-1, K) + U (I, J + 1, K) & + U (I, J, K-1) If the realization of parallel computation of + U (I, J, K + 1) /6.0 in a unit system is appropriately expressed in a language, for example, it is given as follows: PDO I, J = 1,4 DO 10 K = 1,4 10 Z (/ I, J /, K) = U (/ I, J /, K-1) + U (/ I, J /, K + 1) PEND PDO K, I = 1, 4 DO 20 J = 1, N 20 Y (I /, J, / K) = U (I /, J-1, / K) + U (I /, J + 1, / K) PEND PDO J, K = 1,4 DO 30 I = 1,430 V (I, / J, K /) = (U (I-1, / J, K /) + U (I + 1, / J, K) + Y (I, / J, K /) + Z (I, / J, K /) / 6.0 PEND Here, the index K
Is sequentially calculated (DO statement), and parallel calculation is performed for all the change ranges of the indexes I and J (PD
(O sentence). The reason why the index corresponding to the parallel computation is surrounded by a pair of slashes in the assignment statement is to make it easier to read. This part can be calculated by z access. For example, when K = 2, {U (/
I, J /, 1)} and {U (/ I, J /, 3)}, which are cross-sectional arrays {MB (/ I, J /, 1)} and { MB (/ I, J
/, 3)} from J = 1,2,3,4 according to J = 1,2,3,4, one element is taken out from each block corresponding to I = 1,2,3,4 A total of four vectors each having a possible length of 4 are fetched in parallel. That is, the vector extending in the I direction is set to J
Fetch in parallel. The calculation itself is also vector processed in the I direction and parallel processed in the J direction. In the above program, it is expressed as PDO for I and J. In the store of the resulting {Z (/ I, J /, 2)}, the vector extending in the I direction is written in the memory block sectional array {MB (/ I, J /, 2)} in parallel with J in parallel. The content of the first PDO rose is to process the above calculations in order of K = 1, 2, 3, 4. continue,
Processing of the assignment statement at label 20 relies on y access. In this case, for vectors extending in the K direction, I = 1, 2,
Fetching, calculating, and storing the result in parallel over 3, 4 are repeated as J = 1, 2, 3, 4. Finally,
The assignment statement of the label 30 uses x access, attaches to the vector extending in the J direction, and fetches, calculates, and stores the result in parallel over K = 1, 2, 3, 4 by I =
Repeat in the order of 1, 2, 3, and 4. The hardware of the prior application has been proposed as hardware capable of performing parallel computation while selecting an appropriate access direction. At that time, another direction is left in addition to the direction related to vector processing and parallel processing, and it is premised that sequential calculation is performed in that direction. Actually, I leave it positively because I want to express various sophisticated algorithms in the process. From a different point of view, if vector processing and parallel processing are not distinguished and they are regarded as parallel processing, the above calculation is a sequential calculation for a one-dimensional partial array (segment) extending in the bare index direction with no slash pair. Parallel processing is performed across the index with. Moreover, processing is performed while changing the segment cutting direction. This parallel computing method is called ADEPS (Altenating Direction Exe).
cution of “Parallel over Segments”).

【0025】さて、上の例では実施例1の単位システム
で想定したようにN=4というベクトル長、並列処理さ
れるベクトル演算個数も4という小さなシステムに丁度
見合った問題を扱っていた。しかし、スーパーコンピュ
ーティングではそんな小さな問題では済まなくて、例え
ば配列{U(I,J,K),I,J,K=1,2,…,
256}位の大きさのデータを扱うのが普通である。そ
の場合、当然4×4×4個のメモリブロックに畳み込ん
でストアすることになる。i=(I−1)modN+1,
j=(J−1)mod N+1,k=(K−1)mod N+1
と置いたとき、各U(I,J,K)を(i,j,k)メ
ロモリブロックに確保する。もし、プロセッサに長さ2
56のベクトルベクトルレジスタがあるなら、ベクトル
長256のものをアクセスするにはベクトル長4のアク
セスを64回繰り返すことになる。しかも、256個の
ベクトル演算を並列処理することはできなくて、4個ず
つの並列処理を64回繰り返すことになる。もちろん、
これらの操作はシステム側ソフトウエアで簡単にサポー
トできることであって、ユーザーは見かけ上256×2
56×256のメモリブロックがあって256長ベクト
ル演算を256本分並列に処理するとみなして利用でき
る。
In the above example, the problem that is just commensurate with the small system in which the vector length of N = 4 and the number of vector operations to be processed in parallel are 4 is dealt with as assumed in the unit system of the first embodiment. However, in supercomputing, such a small problem does not have to be solved. For example, the array {U (I, J, K), I, J, K = 1,2, ...,
Normally, data having a size of about 256 ° is handled. In such a case, the data is naturally folded and stored in 4 × 4 × 4 memory blocks. i = (I-1) modN + 1,
j = (J-1) mod N + 1, k = (K-1) mod N + 1
, Then each U (I, J, K) is reserved in the (i, j, k) memory block. If the processor has length 2
If there are 56 vector vector registers, accessing a vector length of 256 requires 64 accesses of a vector length of 4 times. In addition, the 256 vector operations cannot be processed in parallel, and the parallel processing of four vectors is repeated 64 times. of course,
These operations can be easily supported by the software on the system side.
There is a 56 × 256 memory block, which can be used assuming that 256 long vector operations are processed in parallel for 256 lines.

【0026】そこで、より高性能のシステムを得ようと
するなら、物理的にベクトル長を大きくし、並列処理の
プロセッサ台数も増やさなければならない。それを上記
単位システムの単位主記憶部と単位プロセッサ部を必要
だけ組み合わせて実現する方法を呈示したのが本特許願
である。例えば、実施例1にあるM=2の拡張を行えば
4倍の大きさのプロセッサ部と8倍の大きさの主記憶部
を得、N=8,したがって、ベクトル長8、並列処理ベ
クトル演算個数8を持つ単位システムと同等のものを得
たことになる。上記{U(I,J,K),I,J,K=
1,2,…,256}に対してベクトル長256のもの
のアクセスには32回の繰り返し、しかも、並列処理も
8個ずつ32回の繰り返しで実現できるようになる。も
し、M=64の拡張を行えば、同じデータはベクトル長
256の256個分のアクセスを1回で行えるようにな
る。なお、単位システムがN=16で出来上がっておれ
ば、M=16にして同じだけのアクセス性能が確保でき
る。
In order to obtain a higher performance system, the vector length must be physically increased and the number of processors for parallel processing must be increased. The present patent application presents a method of realizing it by combining the unit main memory unit and the unit processor unit of the unit system as needed. For example, if the extension of M = 2 in the first embodiment is performed, a processor unit having four times the size and a main storage unit having eight times the size are obtained, and N = 8, therefore, the vector length is 8, and the parallel processing vector operation is performed. This is equivalent to a unit system having eight units. Above {U (I, J, K), I, J, K =
1, 2, ..., 256} can be realized by repeating 32 times to access the one having the vector length of 256, and the parallel processing can also be realized by repeating 32 times by 8 times. If expansion of M = 64 is performed, the same data can be accessed in 256 times with a vector length of 256 at one time. If the unit system is completed with N = 16, the same access performance can be secured by setting M = 16.

【0027】先願の単位システムであれ、本願の複合シ
ステムであれ、それらが3次元配列処理に最も相応して
アーキテクチャになっていることは確かであるが、2次
元配列の処理も上首尾に行えるように工夫してある。そ
のことは実用上極めて重要である。どのように処理する
かを説明しておく。2次元配列データをすべて主次元3
と副次元1、計4次元のものに置き換える。例えば、2
次元配列{U(I,J),I,J=1,2,…,25
6}を扱うものとする。L=M×Nとして、トータルで
L×L×L個のメモリブロックをもつシステムであれ
ば、 I=(q−1)L+r,J=(s−1)L+t の関係式によって、Iに対(r,q)を、Jに対(s,
t)を対応させ、配列そのものを{u(r,q,t)
(s)}に置き換える。さらに、2方向のアクセス状態
{U(/I/,J)}と{U(I,/J/)}に対応さ
せて{u(/r,q/,t)(s)}と{u(r,q,
/t/)(/s/)を考える。ここで、(r,q,t)
か主次元部分であり、(s)が副次元部分である。主次
元部分がそれをストアすべきメモリブロックを同定し、
副次元部分は各メモリブロック内のサブブロックを同定
する。{u(/r,q/,t)(s)}にはシステムの
Zアクセスを用い、{u(r,q,/t/)(/s
/)}にはDアクセスを用いることになる。
Whether the unit system of the prior application or the complex system of the present application has an architecture that most corresponds to the three-dimensional array processing, the processing of the two-dimensional array is also successful. It is devised so that it can be done. That is extremely important in practice. How to process is explained. All 2D array data has 3 main dimensions
And one sub-dimension, a total of four dimensions. For example, 2
Dimensional array {U (I, J), I, J = 1, 2,..., 25
6} is handled. Assuming that L = M × N and the system has a total of L × L × L memory blocks, the relational expression of I = (q−1) L + r and J = (s−1) L + t (R, q) is added to J by (s,
t) and the array itself is {u (r, q, t)
(S) Replace with}. Furthermore, {u (/ r, q /, t) (s)} and {u corresponding to the bidirectional access states {U (/ I /, J)} and {U (I, / J /)}. (R, q,
/ T /) (/ s /) is considered. Where (r, q, t)
Or the main dimension part, and (s) is the sub-dimensional part. The main dimension part identifies the memory block in which to store it,
The sub-dimensional portion identifies the sub-block within each memory block. For {u (/ r, q /, t) (s)}, use Z access of the system, and {u (r, q, / t /) (/ s
/)} Will use D access.

【0028】[0028]

【発明の効果】実施例2でどのような性能をもつマシン
が得られるのかをみておく。現今のスーパーコンピュー
ターの標準的なところてマシンサイクル(1ピリオド)
が2.5ns、単位プロセッサ部PEが4組のベクトル演
算装置をもつものを考えると、このとき1ピリオドに2
オペランドフェッチと1結果のストアを行うなら、要求
されるメモリアクセススピードは1ピリオド中に4
(本)×4(語長分)×3(個)=48語、すなわち1
9.2G語/sec でる。もし、利用するメモリのサイク
ルタイムが10nsてあるなら、その間、すなわち4ピリ
オド中に単位システム(アクセス経路が3重になってい
るもの)では最大48語までのアクセススピードであ
る。しかし、これではプロセッサ部の要求する最大のバ
ンド幅と主記憶部の応えられる能力に4倍の開きがあ
る。このとき実質的には10nsの間に4(組のベクトル
対)×4(要素演算)=16回の浮動小数点演算が行わ
れることになり、実効計算速度は1.6GFLOPSに
止まる。そこで、M=2の複合システムを構成する10
nsの間に8(本)×8(語長分)×3(個)=192
語、すなわち19.2G語/sec のメモリアクセスバン
ド幅が確保できることになる。このときは10nsの間に
8(組のベクトル対)×8(要素演算)=64回の浮動
小数点演算が行われ、単位システムの4倍の実効計算速
度6.4GFLOPSが得られる。
The performance of the machine according to the second embodiment can be obtained. A machine cycle (1 period) that is standard in today's supercomputers
Is 2.5 ns and the unit processor unit PE has four sets of vector operation devices.
If operand fetch and one result store are performed, the required memory access speed is 4 per one period.
(Book) × 4 (word length) × 3 (pieces) = 48 words, ie, 1
9.2G words / sec. If the cycle time of the memory to be used is 10 ns, the access speed is up to 48 words during that period, ie, in four periods in a unit system (those having three access paths). However, in this case, the maximum bandwidth required by the processor unit and the available capacity of the main memory unit are quadrupled. At this time, 4 (pair of vector pairs) × 4 (element operations) = 16 floating-point operations are performed substantially within 10 ns, and the effective calculation speed remains at 1.6 GFLOPS. Therefore, the composite system of M = 2 is configured 10
8 (lines) × 8 (word length) × 3 (pieces) = 192 during ns
Words, ie, a memory access bandwidth of 19.2 G words / sec. In this case, 8 (pair of vector pairs) × 8 (element operations) = 64 floating point operations are performed within 10 ns, and an effective calculation speed of 6.4 GFLOPS, which is four times the unit system, is obtained.

【0029】いま単位システムがN=8として上記のも
のと同じマシンサイクル2.5nsで、10nsメモリチッ
プを用いて構成されているなら、それは始めから実効計
算速度6.4GFLOPSをもつ、さらに、M=16の
複合システムを作るならば、実効計算速度が6.4GF
LOPS×162 =1.6TFLOPSというウルトラ
コンピューターができあがる。
If the unit system is now configured with 10 ns memory chips, with the same machine cycle of 2.5 ns as above, with N = 8, it has an effective computation speed of 6.4 GFLOPS from the beginning, and M = 16, the effective calculation speed is 6.4GF
An ultracomputer called LOPS × 16 2 = 1.6 TFLOPS is completed.

【0030】このように本発明は高性能化への展望を大
きく開くとともに、Mの値の異なるシステムが幾段階に
も考えられ、大きなファミリシリーズを構成でき、しか
も、使い方は全く共通しており、スケーラビリティにお
いては優れている。また、特に言及しなかったが、マザ
ーボード上にさらに補助的な選択回路をつけることで一
つのシステムを2つ3つと分割して利用することも可能
である。
As described above, the present invention greatly opens up the prospects for high performance, a system having different values of M can be considered in several stages, a large family series can be constructed, and the usage is completely common. , Is excellent in scalability. Although not particularly mentioned, it is possible to divide one system into two and three by using an auxiliary selection circuit on the motherboard.

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

【図1】本発明の複合化システムの要素になる単位シス
テムの構成図である。
FIG. 1 is a configuration diagram of a unit system that is an element of a composite system of the present invention.

【図2】単位システム内のドータボード上の主記憶ボー
ドエッジとベクトルラッチ部へいくデータバスの接続模
様を表す模型図である。
FIG. 2 is a model diagram showing a connection pattern of a main memory board edge on a daughter board in a unit system and a data bus going to a vector latch unit.

【図3】本発明の実施例1に述べた複合システムの概観
図である。
FIG. 3 is a schematic view of the complex system described in the first embodiment of the present invention.

【図4】実施例1の構成でXアクセスによって一度にア
クセスされるベクトルデータ群を示した図である。網か
け短冊でもって一つのベクトル単位分を表している。
FIG. 4 is a diagram showing a group of vector data accessed at a time by X access in the configuration of the first embodiment; Shaded strips represent one vector unit.

【図5】実施例1の構成でYアクセスによって一度にア
クセスされるベクトルデータ群を示した図である。
FIG. 5 is a diagram showing a vector data group that is accessed at one time by Y access in the configuration of the first embodiment.

【図6】実施例1の構成でZアクセスによって一度にア
クセスされるベクトルデータ群を示した図である。
FIG. 6 is a diagram showing a vector data group accessed at a time by Z access in the configuration of the first embodiment.

【図7】実施例1の構成でDアクセスによって一度にア
クセスされるベクトルデータ群を示した図である。主記
憶部で斜めに延びる網かけ部分はそれの始点が接するメ
モリバンク内のベクトルデータを示している。
FIG. 7 is a diagram showing a vector data group that is accessed at one time by D access in the configuration of the first embodiment. A hatched portion extending obliquely in the main storage unit indicates vector data in a memory bank to which a starting point thereof is in contact.

【図8】実施例1においてプロセッサ部と主記憶部を接
続するためのネットワークを搭載したマザーボード上の
データバスの結線と選択回路を示した図である。
FIG. 8 is a diagram showing a data bus connection and a selection circuit on a motherboard on which a network for connecting a processor unit and a main memory unit is mounted in the first embodiment.

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

1 メモリブロック 16 ベクトル演算装置 100、105 単位プロセッサ部 101 単位主記憶部 102 ドーターボード 103 データバス 104 マルチプレクサ 106、107 端子 108 Zアクセス断面選択回路 109 Yアクセス断面選択回路 110 X/Dアクセス断面選択回路 Reference Signs List 1 memory block 16 vector operation device 100, 105 unit processor unit 101 unit main storage unit 102 daughter board 103 data bus 104 multiplexer 106, 107 terminal 108 Z access section selection circuit 109 Y access section selection circuit 110 X / D access section selection circuit

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 N×N×N個のメモリバンクの立方配列
{MB(i,j,k),i,j,k=1,2,…,N}
からなる単位主記憶部を、さらに、M×M×M個並べた
立方配列{ME(I,J,K),I,J,K=1,2,
…,M}からなる主記憶部と、制御用プロセッサユニッ
ト及びN組の並列計算用ベクトルユニット{VU
(i),i=1,2,…,N}からなる単位プロセッサ
部を、さらに、M×M個並べた正方形配列{PE(I,
J),I,J=1,2,…,M}からなるプロセッサ部
と、両者を結合するネットワーク部を備えたバックエン
ド用計算機システムであって、 (a)前記単位主記憶部は、それぞれx,y,z,dを
冠して呼ぶ4通りのアクセスを選択的に許すものであ
り、(i)xアクセスでは、インデックスiの値を指定
してできるメモリバンク立方配列のj−k断面に並ぶ正
方配列上でk=1,2,…,Nのそれぞれに対応するメ
モリバンク列{MB(i,j,k),j=1,2,…,
N}の各メモリバンクから1個ずつ指定してできるN長
ベクトルデータをkに亘って並列にアクセスし、(ii)
yアクセスでは、インデックスjの値を指定してできる
メモリバンク立方配列のk−i断面正方配列上でi=
1,2,…,Nのそれぞれに対応するメモリバンク列
{MB(i,j,k),k=1,2,…,N}の各メモ
リバンクから1個ずつ指定してできるN長ベクトルデー
タをiに亘って並列にアクセスし、(iii)zアクセスで
は、インデックスkの値を指定してできるメモリバンク
立方配列のi−j断面正方配列上でj=1,2,…,N
のそれぞれに対応するメモリバンク列{MB(i,j,
k),i=1,2,…,N}の各メモリバンクから1個
ずつ指定してできるN長ベクトルデータをjに亘って並
列つアクセスし、(iv)さらに、dアクセスでは、イン
デックスiとjを指定してできるi−j断面の位置
(i,j)を通るメモリバンク列上でk=1,2,…,
Nのそれぞれに対応するメモリバンクから、メモリバン
ク内要素を指定してできるN長ベクトルデータをkに亘
って並立にアクセスすることができ、 (b)前記単位プロセッサ部は、単位主記憶部からいず
れかのアクセスで得られるN本のベクトルデータをそれ
ぞれ対応するベクトルユニットが並列に処理すること、
及びN個のベクトルユニットで得た計算結果のベクトル
データのそれぞれを並列に単位主記憶部に書き込むこと
ができることを基本にしながら、それそれのベクトルユ
ニットにはスカラーデータに対処できるスカラーメモリ
とスカラー演算器が含まれ、 (c)M×M×M個の単位主記憶部からなる主記憶部
と、M×M個の単位プロッサ部からなるプロセッサ部を
組み合わせた全体システムにおいても単位同志で実現し
た4通りのアクセスと同じ形態のX,Y,Z,Dアクセ
スを実現するため、両者を接続するネットワーク部とし
てプロセッサ部側にX/D,Y,Zアクセスに応じて異
なるデータバスの組を選択するための種別選択回路の集
まり{SA(J,K)(L),J,K=1,2,…,
M,L=1,2,…,N}を置き、各SA(J,K)
(L)のプロセッサ側ではPE(J,K)から出るL番
目のデータバスに接続され、同主記憶部側では3N組の
データ入出力用端子をもつものとし、それら種別選択回
路は、X/Dアクセス用ネットワーク、Yアクセス用ネ
ットワーク及びZアクセス用ネットワークに接続される
ものであり、このうち、(i)X/Dアクセス用ネット
ワークでは、Xアクセス用に、インデックスIを指定し
てできる、単位主記憶部の立方配列のJ−K断面正方配
列上でK=1,2,…,Mのそれぞれに対応する単位主
記憶部列{ME(I,J,K),J=1,2,…,M}
からN個ずつ、あるいは周期的にその複数倍n×N個ず
つのxアクセスベクトルデータをKに亘って並列にアク
セスできるように、各(J,K)に対して{ME(I,
J,K),J=1,2,…,M}のそれぞれからくるN
組を1セットとしたデータバスのうち、Iの指定で一つ
を選び{SA(J,K)(L),L=1,2,…,N}
のX/D用データバスにつなぐための断面選択回路{x
SB(J,K)(L),L=1,2,…,N}を置くと
ともに、 Dアクセス用に上記断面選択回路のプロセッサ側の入出
力端子につながる共通バスを各(K)(L)毎に1組ず
つ設け、それらのものを{SA(j,K)(L),j=
1,2,…,M,L=1,2,…,N}のX/D用バス
につなぎ、それによって選ばれた単位主記憶部ME
(I,J,K)からdアクセスによって得たN長のベク
トルをN×M個分、あるいはさらに整数n倍したものを
(n×)N×Nずつ分けたものとして{PE(j,
K),j=1,M}が読むか、あるいはその逆経路をた
どってストアすることをKに亘って並列にできるように
共通バスにスキャターとギャザーの制御回路を付加し、 Xアクセスに際しては、前記Dアクセスのための構成部
分を直線的に通過してしまうようにし、(ii)Yアクセ
ス用のネットワークでは、インデックスJを指定してで
きる、単位主記憶部の立方配列の断面正方配列上でI=
1,2,…,Mのそれぞれに対応する単位主記憶部列
{ME(I,J,K),K=1,2,…,M}からN個
ずつ、あるいは周期的にn×N個ずつのyアクセスベク
トルデータをIに亘って並列にアクセスできるように、
各(K,I)に対して{ME(I,J,K),J=1,
2,…,M}のそれぞれからくるN組を1セットとした
データバスのうち、Jの指定で一つを選び{SA(K,
I)(L),L=1,2,…,N}のY用データバスに
つなぐための断面選択回路{ySB(K,I)(L),
L=1,2,…,N}を置き、(iii)Zアクセス用ネッ
トワークでは、インデックスKを指定してできる<単位
主記憶部の断面正方配列上でJ=1,2,…,Mのそれ
ぞれに対応する単位主記憶部列{ME(I,J,K),
I=1,2,…,M}からN個ずつ、あるいは周期的に
n×N個ずつのzアクセスベクトルデータをJに亘って
並列にアクセスできるように、各(I,J)に対して
{ME(I,J,K),K=1,2,…,M}のそれぞ
れからくるN組を1セットとしたデータバスのうち、K
の指定で一つを選び{SA(I,J)(L),L=1,
2,…,N}のZ用データバスにつなぐための端面選択
回路{zSB(I,J)(L),L=1,2,…,N}
を置くことにより、 全体システムでXアクセス、Yアクセス、Zアクセス及
びDアクセスのいずれかを選び、またそれらを切り替え
ながら並列ベクトル計算をおこなうことができることを
特徴とする複合ベクトル並列計算機システム。
1. A cubic array of N × N × N memory banks {MB (i, j, k), i, j, k = 1, 2,..., N}
Cubic array {ME (I, J, K), I, J, K = 1, 2,
, M}, a control processor unit, and N sets of parallel calculation vector units {VU
(I), i = 1, 2, ..., N} is further arranged in a square array {PE (I,
J), I, J = 1, 2,..., M}, and a back-end computer system including a network unit for connecting the two. Four types of access called by x, y, z, and d are selectively permitted. (i) In x access, the jk section of the memory bank cubic array which can be specified by specifying the value of the index i , N, corresponding to k = 1, 2,..., N on the square array arranged in the matrix array {MB (i, j, k), j = 1, 2,.
N length vector data which can be designated one by one from each memory bank of N} are accessed in parallel over k, (ii)
In the y access, the value of i ==
An N-length vector that can be specified by specifying one from each memory bank of the memory bank string {MB (i, j, k), k = 1, 2,..., N} corresponding to each of 1, 2,. Data is accessed in parallel over i, and (iii) in z access, j = 1, 2,..., N on the ij section square array of the memory bank cubic array that can be specified by specifying the value of index k.
Of the memory bank column {MB (i, j,
k), N-length vector data, which can be specified one by one from each memory bank of i = 1, 2,..., N}, is accessed in parallel over j. (iv) In d access, index i is used. , K = 1, 2,..., On the memory bank row passing through the position (i, j) of the ij section
From the memory bank corresponding to each of N, N-length vector data that can be specified by specifying an element in the memory bank can be accessed in parallel over k, (b) the unit processor unit can be accessed from the unit main memory unit. Parallel processing of N vector data obtained by any access by corresponding vector units,
And the vector data of the calculation results obtained by the N vector units can be written in the unit main memory in parallel, while each vector unit has a scalar memory and a scalar operation capable of dealing with scalar data. (C) In a whole system in which a main storage unit composed of M × M × M unit main storage units and a processor unit composed of M × M unit processor units are combined, the system is realized as a unit. To realize the same form of X, Y, Z, and D access as the four types of access, a different data bus set is selected on the processor side as a network unit connecting the two according to the X / D, Y, and Z accesses.種 別 SA (J, K) (L), J, K = 1, 2,...,
M, L = 1, 2,..., N}, and each SA (J, K)
It is assumed that the processor side of (L) is connected to the L-th data bus from PE (J, K), and that the main memory section side has 3N sets of data input / output terminals. It is connected to the / D access network, the Y access network, and the Z access network. Of these, (i) in the X / D access network, the index I can be designated for the X access. Unit main memory row {ME (I, J, K), J = 1,2 corresponding to each of K = 1, 2, ..., M on the JK cross section square array of the cubic array of the unit main memory. ,…, M}
{ME (I, I, K) for each (J, K) so that N access data or a plurality of n × N x access vector data can be periodically accessed in parallel over K.
J, K), J = 1, 2,..., M}
One of the data buses having one set is selected by designating I and {SA (J, K) (L), L = 1, 2,..., N}
Section selection circuit for connecting to the X / D data bus of {x
SB (J, K) (L), L = 1,2, ..., N} are placed, and a common bus connected to the processor side input / output terminals of the cross-section selection circuit is connected to each (K) (L) for D access. ) For each set of {SA (j, K) (L), j =
1, 2,..., M, L = 1, 2,..., N}, connected to the X / D bus, and the unit main memory ME selected thereby.
Assuming that N × M vectors obtained by d access from (I, J, K) are divided into N × M pieces or further multiplied by an integer n and divided by (n ×) N × N, {PE (j,
K), j = 1, M} is read, or the reverse path is stored, and a scatter and gather control circuit is added to the common bus so that it can be stored in parallel across K. In the network for Y access, it is possible to specify the index J in the cross section of the cubic array of the unit main memory, so that the D access component is linearly passed. And I =
N, or periodically n × N from the unit main storage unit sequence {ME (I, J, K), K = 1, 2,..., M} corresponding to each of 1, 2,. So that each y access vector data can be accessed in parallel over I,
For each (K, I), {ME (I, J, K), J = 1,
Of the data buses each consisting of N sets from 2, 2, ..., M}, one is selected by designating J {SA (K,
I) (L), L = 1, 2, ..., N}, a cross-section selection circuit {ySB (K, I) (L), for connecting to the Y data bus.
L = 1, 2,..., N}, and (iii) In the Z access network, an index K can be specified. <J = 1, 2,. The corresponding unit main storage unit sequence {ME (I, J, K),
From I = 1, 2, ..., M}, for each (I, J) so that N pieces, or periodically n × N pieces of z access vector data can be accessed in parallel across J, Of the data buses in which N sets from {ME (I, J, K), K = 1, 2, ...
Select one by specifying {SA (I, J) (L), L = 1,
2, ..., N} end face selection circuit {zSB (I, J) (L), L = 1,2, ..., N} for connecting to the Z data bus.
A composite vector parallel computer system characterized by being able to select any of X access, Y access, Z access and D access in the entire system and perform parallel vector calculation while switching between them.
【請求項2】 前記プロセッサ部に含まれる単位プロセ
ッサ部内の各ベクトルユニットにおける並列処理性能を
活かすために一度に複数m、例えばm=3、組分のアク
セスを許すように前記種別選択回路m組、また前記3種
の断面選択回路とDアクセス用共通バスをそれぞれm組
ずつ設け、任意に選んだ同一アクセス形態のm組のアク
セスがお互いに無関係に自由に行えるようにしたことを
特徴とする請求項1記載の計算機システム。
2. The type selecting circuit m group so as to permit access to a plurality m, for example, m = 3 sets at a time in order to utilize parallel processing performance in each vector unit in a unit processor unit included in the processor unit. Further, m sets of the three kinds of cross section selecting circuits and the D access common bus are provided, so that m sets of arbitrarily selected access modes of the same access form can be freely accessed independently of each other. The computer system according to claim 1.
JP6211813A 1994-08-11 1994-08-11 Complex vector parallel computer Expired - Fee Related JP2655243B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6211813A JP2655243B2 (en) 1994-08-11 1994-08-11 Complex vector parallel computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6211813A JP2655243B2 (en) 1994-08-11 1994-08-11 Complex vector parallel computer

Publications (2)

Publication Number Publication Date
JPH0855093A true JPH0855093A (en) 1996-02-27
JP2655243B2 JP2655243B2 (en) 1997-09-17

Family

ID=16612025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6211813A Expired - Fee Related JP2655243B2 (en) 1994-08-11 1994-08-11 Complex vector parallel computer

Country Status (1)

Country Link
JP (1) JP2655243B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100408720B1 (en) * 2001-06-28 2003-12-11 주식회사 하이닉스반도체 Decoder circuit of semiconductor memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100408720B1 (en) * 2001-06-28 2003-12-11 주식회사 하이닉스반도체 Decoder circuit of semiconductor memory device

Also Published As

Publication number Publication date
JP2655243B2 (en) 1997-09-17

Similar Documents

Publication Publication Date Title
EP0485690B1 (en) Parallel associative processor system
US5809292A (en) Floating point for simid array machine
US5815723A (en) Picket autonomy on a SIMD machine
US5148547A (en) Method and apparatus for interfacing bit-serial parallel processors to a coprocessor
US5805915A (en) SIMIMD array processing system
EP0298658B1 (en) Computational apparatus for parallel processing
US5754871A (en) Parallel processing system having asynchronous SIMD processing
US5713037A (en) Slide bus communication functions for SIMD/MIMD array processor
US5721953A (en) Interface for logic simulation using parallel bus for concurrent transfers and having FIFO buffers for sending data to receiving units when ready
EP0539595A1 (en) Data processor and data processing method
EP0424618A2 (en) Input/output system
US7673118B2 (en) System and method for vector-parallel multiprocessor communication
JPH0922404A (en) Array processor communication architecture with broadcast communication processor instruction
JP2001249824A (en) Logical emulation processor and its module unit
JPH0792790B2 (en) Vector parallel computer
JP2009059346A (en) Method and device for connecting with a plurality of multimode processors
JP2655243B2 (en) Complex vector parallel computer
JPS6165336A (en) High-speed arithmetic system
EP0570952A2 (en) Slide network for an array processor
CN113159302A (en) Routing structure for reconfigurable neural network processor
JP3532102B2 (en) Indirect rotator graph network and transmission path setting method in indirect rotator graph network
Alnuweiri A new class of optimal bounded-degree VLSI sorting networks
Obrenic et al. Using emulations to enhance the performance of parallel architectures
Akl et al. Introduction to parallel computation
JP3982324B2 (en) Vector operation processing device, vector operation method, and vector operation program

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees