JPS622353B2 - - Google Patents

Info

Publication number
JPS622353B2
JPS622353B2 JP55185332A JP18533280A JPS622353B2 JP S622353 B2 JPS622353 B2 JP S622353B2 JP 55185332 A JP55185332 A JP 55185332A JP 18533280 A JP18533280 A JP 18533280A JP S622353 B2 JPS622353 B2 JP S622353B2
Authority
JP
Japan
Prior art keywords
processor
information
exchange
processors
transfer
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.)
Expired
Application number
JP55185332A
Other languages
English (en)
Other versions
JPS57111654A (en
Inventor
Kenichi Miura
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP55185332A priority Critical patent/JPS57111654A/ja
Publication of JPS57111654A publication Critical patent/JPS57111654A/ja
Publication of JPS622353B2 publication Critical patent/JPS622353B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】 本発明は、並列処理データ処理システム、特に
例えば1次元あるいは多次元に配列された複数の
プロセツサ相互間でデータ転送を行なうようにし
た並列処理データ処理システムにおいて、シヤフ
ル・エクスチエンジ・ネツトワークをすべてのプ
ロセツサ間あるいは各次元方向に構成すると共
に、制御ユニツトからのあるいは自プロセツサ内
に記憶された制御情報にもとづいて各プロセツサ
が実行すべきエクスチエンジ操作態様を一義的に
決定してゆくようにした並列処理データ処理シス
テムに関するものである。
例えば1000個ないし10000個のプロセツサが単
一あるいは複数の命令ストリームによつて並列演
算を行なうことが、例えばIlliacやICL−DAP
に見られるように考慮されている。なお第1図A
はSiMD型並列処理計算機を示し、第1図Bは
MiMD型並列処理計算機を示している。このよう
なデータ処理システムにおいては、プロセツサ間
のデータ交信が大きい問題となる。上述の如き規
模の並列処理データ処理システムにおいては、各
プロセツサが互に他のすべてのプロセツサと直接
交信する「総当り」方式即ちクロスバ方式と呼ば
れる接続方式を採用することは、実質上の制約か
ら実質上不可能となる。したがつて、上記接続を
簡略すると共に柔軟なアクセス・パターンをもつ
ネツトワークが必要となる。上記IlliacやICL
−DAPにおいては、プロセツサを2次元マトリ
クス状に配列し、上下左右のプロセツサとのみ交
信を可能にしているものであるが、これらの方式
では必らずしもアクセス・パターンに柔軟性が十
分でない。
このために、未だ実用化の例をみないが、スト
ーン(Stone)によるシヤフル・エクスチエン
ジ・ネツトワーク(Shuffle Exchange
Network)あるいはその改良型であるローリー
(Lowrie)によるオメガ・ネツトワーク(Omega
Network)が提案されている。前者ではN=2K
個のプロセツサについて、K回のネツトワーク通
過(シヤツフル)とK回の入れ換え(エクスチエ
ンジ)を繰り返えす事によつて所定の転送パター
ンを実現するものであり、ハードウエアは少ない
が時間がかかる。後者ではストーンの回路をK段
縦続させる事によつて、信号は一度回路を通過す
るだけで所定の転送パターンを実現出来るため時
間は短かいがハードウエア結線が多くなる。した
がつてこの両者のネツトワークは本質的には同一
のものであり、本明細書においては以下上記「ス
トーン」によるシヤフル・エクスチエンジ・ネツ
トワーク」を例に挙げて説明する。
第2図はプロセツサを16個とした場合のストー
ンによるシヤフル・エクスチエンジ・ネツトワー
クの例を示す。この図では各プロセツサの出力が
入れかえなしT、入れ換えありEの各々について
どのプロセツサに転送されるかを示している。第
3図はプロセツサの個数を16とした場合のローリ
ーのオメガネツトワークの例を示すがこの図は同
時にストーンのシヤフル・エクスチエンジ・ネツ
トワークにおける時間的推移をも示すので、以下
においてストーンの回路の説明にも使用する。す
なわちローリーのオメガネツトワークの第i段目
とは、ストーンのシヤフル・エクスチエンジ・ネ
ツトワークの第i回目の繰り返しに相当するので
ある(第4図)。なお第3図においてS0,S1,…
……は夫々発信元プロセツサ、D0′,D1′,………
は夫々転送先プロセツサ、「00」ないし「7
3」は夫々エクスチエンジ・スイツチを表わして
いる。
N=2K個のプロセツサが一列に配列されてお
り、それらの間でデータ交信を行なうものとする
とき、発信元プロセツサとエクスチエンジ・スイ
ツチとの間、エクスチエンジ・スイツチ相互間、
およびエクスチエンジ・スイツチと転送先プロセ
ツサとの間においては、次のように接続される。
即ち、第3図図示の如く上方から下方に向つて順
席番号0、1、………N−1を附与したとき、番
号nの点は番号n′が n′=2n mode(N−1) (1) で与えられる点と接続されると共に、番号(0、
1)、(2、3)、………(N−1、N)の如く隣
接する偶数番目と奇数番号とが接続される。なお
(A mode B)とはAをBで割つたときの余り
を示している。
第2図、第3図図示の場合、N=16であること
から第(1)式によつて、nとn′とを対にして(n、
n′)として示すと、(0、0)、(1、2)、(2、
4)、(3、6)、(4、8)、(5、10)、(6、
12)、(7、14)、(8、1)、(9、3)、(10、
5)、(11、7)、(12、9)、(13、11)、(14、
13)、(15、15)の如く接続されると共に、上記隣
接するものが相互に接続されることから、(0、
1)、(1、0)、(2、3)、(3、2)、………
(14、15)(15、14)の如く接続される。
例えば発信元プロセツサS5から転送先プロセ
ツサD10′に対してデータ交信を行なう場合、
第3図図示の如くルートを与えて行なうようにさ
れる。図示の第i列目のエクスチエンジ・スイツ
チ「i,*」に転送されることを第iステージと
呼ぶことにすると、各ステージ毎に交信データを
素通しにするか入れ換えをするかのエクスチエン
ジ態様を決定する必要があるが、いずれにしても K=log2N〔回) のステージによつて所望の交信を行なうことが可
能となる。
第3図図示の如く、16個のプロセツサの1つと
他の1つとの間にエクスチエンジ・スイツチを配
置することは先にも触れたようにハードウエア上
煩雑となることから、一般には、例えば発信元プ
ロセツサS5(即ちs0,s1,s2,s3=0101)
から転送先プロセツサD10′(即ちd0,d1
d2,d3=1010)に転送するに当つては、第4
図図示点線の如く、 (A) ステージ0において、プロセツサ「010
1」からプロセツサ「1010」に転送した上
でエクスチエンジ操作によつてプロセツサ「1
011」に転送する。
(B) ステージ1において、プロセツサ「101
1」からプロセツサ「0111」に転送した上
でエクスチエンジ操作によつてプロセツサ「0
110」に転送する。
(C) ステージ2においてプロセツサ「0110」
からプロセツサ「1100」に転送した上でエ
クスチエンジ操作によつてプロセツサ「110
1」に転送する。
(D) ステージ3において、プロセツサ「110
1」からプロセツサ「1011」に転送した上
でプロセツサ「1010」に転送するようにす
る。
以下の説明においては、第4図図示の如くプロ
セツサと経由して所望の交信が行なわれるものと
して説明をつづける(ストーンのシヤフル・エク
スチエンジ・ネツトワーク)。
第3図に示したシヤフル・エクスチエンジ・ネ
ツトワークによるデータ転送のルートは、第5図
に示す説明図に示すように一般化される。即ち、
発信元プロセツサSの番号をs0,s1,s2,s3とし
て示し、かつ転送先プロセツサDの番号をd0
d1,d2,d3として示すと、ステージ0において番
号がs1,s2,s3,d0で与えられるプロセツサに転
送されており、またステージ1において番号が
s2,s3,d0,d1で与えられるプロセツサに転送さ
れており、………という形となる。
上述の如きデータ交信を行なうに当つては、各
プロセツサが、転送されてきたデータを素通しす
るか入れかえするかを決めてやる必要があり、こ
のためにこれまで提案されてきた手段は、転送デ
ータ中転送先プロセツサを指示するタグ情報を与
えてやる手段であろう。しかし、この手段の場
合、タグ情報が順次転送されてゆく間の当該タグ
情報を受信した時点からルート判定を行ない、そ
の上でデータを転送することとなり、特にストー
ンのネツトワークにおいてはオーバヘツドが大と
なる。
本発明は、上述の如き前提のもとで上記タグ情
報を与える方式に代えて、発信元プロセツサSと
転送先プロセツサDとが決まつた段階で、制御ユ
ニツトが上記転送に対応した情報をプロセツサに
供給し、各プロセツサが当該情報にもとづいてエ
クスチエンジ操作の態様を一義的に抽出するよう
にし、上記オーバヘツドを減少することを目的と
している。そして、1対1の転送のみならず、1
対Nの転送をも自由に行ない得るようにすること
を目的としている。そしてそのため、本発明の並
列処理データ処理システムは、複数個のプロセツ
サを配列してなり、各プロセツサが自己の処理結
果および/または他プロセツサから転送された結
果を他プロセツサに転送しおよび/または自己プ
ロセツサに取入れるよう構成される並列処理デー
タ処理システムにおいて、N個のプロセツサ相互
間でシヤフル・エクスチエンジ・ネツトワークを
構成すると共に、log2N回のシヤフル・エクスチ
エンジ操作を繰返して1回分のデータ転送が行わ
れるよう構成されてなり、かつ上記プロセツサ
は、自己プロセツサ内に記憶されたあるいは1つ
あるいは複数個の制御ユニツトから複数個のプロ
セツサに対して出された上記1回分のデータ転送
に係る情報を供給するよう構成してなり、当該情
報を受信した各プロセツサは当該情報に対応した
エクスチエンジ操作態様を決定して当該操作を実
行するようにしたことを特徴としている。以下図
面を参照して説明する。
第6図は各プロセツサにおいて処理索引メモリ
をそなえてエクスチエンジ操作態様を決定する一
実施例構成、第7図A,B,C,D,Eは演算処
理部をそなえてエクスチエンジ操作態様を決定す
る一実施例についての動作を説明する説明図、第
8図は各プロセツサにおいて演算処理部をそなえ
てエクスチエンジ操作態様を決定する一実施例構
成、第9図は1対Nのデータ転送を行なういわゆ
る放送転送について説明する説明図、第10図は
放送転送を行なうに当つての各プロセツサにおけ
るエクスチエンジ操作態様を決定する一実施例構
成を示す。
第6図において、10は処理索引メモリ、11
は処理索引メモリ用アドレス・レジスタであつて
図示しない制御ユニツトあるいは自プロセツサ命
令記憶装置から処理索引メモリ10をアクセスす
るためにアドレス情報がセツトされるもの、12
はデータ・レジスタであつて処理索引メモリ10
からの読出しデータがセツトされるもの、13は
シフト・レジスタであつてデータ・レジスタ12
の内容がセツトされて上記各ステージに対応して
マルチプレクサMPXを制御するもの、14Hはマル
クプレクサであつてシヤフル・エクスチエンジ・
ネツトワークが2次元状に配置されている場合に
おいて水平方向の他プロセツサからの転送データ
を選択するもの、14Vはマルチプレクサであつ
て上記と同様に垂直方向の他プロセツサからの転
送データを選択するもの、15はマルチプレクサ
であつて上記水平方向と垂直方向と自己との各デ
ータのいずれかH,T,Vを選択するもの、16
は送出レジスタ、17は自己プロセツサ内演算ユ
ニツトを表わしている。
処理索引メモリ10内には、交信処理の態様に
合わせたエクスチエンジ操作態様情報即ち各該当
プロセツサに合わせた操作態様情報が格納されて
いる。そして図示SHiFT1ないしSHiF(N−
1)は自己プロセツサの番号s0,s1,s2,s3に対
して所定の値例えばb(b=1、2、………15)
を加算した番号のプロセツサに転送する場合の操
作態様情報を示している。またBRCOないしBRC
(N)は番号1から番号Nまでのいずれかのプロ
セツサが他の全プロセツサに対して放送転送する
場合の操作態様情報を示している。更にTSHFL
は第(1)式で与えられるシヤフルを行なうために当
該プロセツサが行なうべきエクスチエンジ操作に
対応する操作態様情報を示し、またiSHFLは第
(1)式で与えられるシヤフルの逆方向を行なうため
の上記と同様の操作態様情報を示している。
なお放送転送の場合、例えば発信元プロセツサ
S2(0010)が他の全プロセツサに対して放
送転送を行なう際には、第4図図示実線で示す如
く各ステージにおいて転送データが分配されてゆ
く形となる。この点については第9図を参照して
後述される。
図示を省略した制御ユニツトは例えば発信元プ
ロセツサS5から転送先プロセツサD10′に対
して転送すべきことを知ると、処理索引メモリ1
0中の情報TSHFLを読出すべくアドレス情報を
与える。例えばプロセツサ「1010」において
は、第3図および第4図を参照すると明瞭となる
如く、上記情報TSHFLには、ステージ0におい
てプロセツサ「0101」からの転送データを取
入れることなどが記述されていると考えてよい。
そして、この情報TSHFLに応じてマルチプレク
サ14Hや14Vを制御する。当該プロセツサに
転送データを受信する場合には演算ユニツト17
に転送され、当該プロセツサから転送データを発
信する場合にはマルチプレクサ15によつて制御
される。
第6図は処理索引メモリをもうけることを示し
たが、この場合には各プロセツサ毎に当該メモリ
の内容がカスタム化される問題点を含んでいる。
このため、以下、制御ユニツトからの制御情報に
もとづいて各プロセツサが演算処理部によつて上
記エクスチエンジ操作態様情報を決定してゆく実
施例を説明する。
発信元プロセツサの番号をS(S=s0,s1
s2,s3)とし、かつ転送先プロセツサの番号をD
(D=d0,d1,d2,d3)とし、互に競合を生じない
形つまりシヤフル・エクスチエンジ・ネツトワー
クで実現可能なパーミユテーシヨンとして D=(aS+b)modN;N=2K (2) を考える。ここでaは奇数値が選ばれるが、a=
1である場合には上述のSHiFT1ないしSHiFT
(N−1)の態様になることは注意されるべきで
ある。
第7図は、プロセツサに演算処理部をもつ第8
図図示の実施例の場合において、エクスチエンジ
操作態様情報を決定する状態を説明する説明図を
示している。
第5図を参照すると明瞭になる如く、シヤフ
ル・エクスチエンジ・ネツトワークによる転送の
場合、発信元プロセツサを「s0,s1,s2,s3」と
しかつ転送先プロセツサを「d0,d1,d2,d3」と
すると、ステージ0においては「s1,s2,s3
d0」なる番号をもつプロセツサにデータが転送さ
れており、ステージ1においては「s2,s3,d0
d1」なる番号をもつプロセツサにデータが転送さ
れており、………という形となる。このことか
ら、例えば第2ステージにおいて転送データがど
のプロセツサに転送されているかは、第7図A図
示の如くs0,s1,s2,s3,d0,d1,d2,d3を並べ
ておいて、当該ステージ2に対応する「s3,d0
d1,d2」を抽出すればよい。このことを逆に言え
ば、或るプロセツサ例えばプロセツサ「001
1」において第iステージ目においてデータが転
送されてくるのはどの発信元プロセツサからどの
転送先プロセツサへの転送に係るものかを知るこ
とができる。そして、上記例えばプロセツサ「0
011」はどのステージにおいてどのようにエク
スチエンジ操作をすべきかは、発信元プロセツサ
Sと転送先プロセツサDとを通知されれば足り
る。今、上記第(2)式として D=(3S+1)mod16 に該当する転送が行なわれるものとする。即ち、
S0→D1′、S1→D4′、S2→D7′、S3
→D10′、S4→D13′、S5→D0′、S6
→D3′、S7→D6′、S8→D9′、S9→D
12′、S10→D15′、S11→D2′、S1
2→D5′、S13→D8′、S14→D11′、
S15→D14′のいずれかに対応する転送が行
なわれるものとする。
この場合、a=3、b=1として例えば制御ユ
ニツトが各プロセツサに情報aとbとを供給す
る。なお、上記第3図図示の左から右への転送の
逆方向即ち右から左への転送が行なわれる場合に
は、上記 D=(3S+1)mod16 (3) に対応するものとしては、 S=(11d+5)mod16 (4) となる。なおこれは次の如く簡単に求められる。
即ち、仮にS=xD+yとおいて上記第(3)式に代
入すると、 D={3(xD+y)+1}mod16={3xD +(3y+1)}mod16 したがつて 3x=1 mod16→x=11 3y+1=0 mod16→y=5 故に第(4)式が求まる。
上述の第(3)式に対応する転送に当つて、上述の
如く例えば制御プロセツサからa=3、b=1が
各プロセツサに供給されたとするとき、例えばプ
ロセツサ「0011」が各ステージにおいてどの
ようにエクスチエンジ操作を行なうべきかは演算
できる。第7図BないしEは、該当プロセツサ
「0011」がステージ0、ステージ1、ステー
ジ2、ステージ3において行なうエクスチエンジ
操作態様情報C0,C1,C2,C3を演算する過程を
示している。
第0ステージにおいては、第7図Aを参照して
説明したことから判る如く、番号が「s0001」
なる発信元プロセツサから番号が「1,d1,d2
d3」なる転送先プロセツサへ転送されるべき転送
データが、プロセツサ「0011」に達する。プ
ロセツサ「0011」は情報a=3とb=1との
供給を受けており、第(3)式にもとづいて、第7図
B図示の如く、 {3(s0001)+1}mod16=(s0100)mod16 を演算する。そして該答が上記番号「1,d1
d2,d3」を合致すべきことから、 s0=1 d1=1 d2=0 d3=0 を決定し、それによつて到達したデータが発信元
プロセツサ「1001」から転送先プロセツサ
「1100」へのものであることを知る。なお当
該プロセツサ「0011」においては、発信元と
転送先とを判定する必要はなく、データを受入れ
る経路を素通しするか入れ換えするかのみを知れ
ばよいものである。このため、第0ステージにお
いては C0=s0d0=11=0 を求め、値が0であることから、素通しするもの
としてエクスチエンジ処理を行なう。
第1ステージにおいては、第7図C図示の如
く、C1=s1d1を求める。また第2ステージにお
いては、第7図D図示の如く、C2=s2d2を求め
る。更に第3ステージにおいては、第7図E図示
の如く、C3=s3d3を求める。
第8図は第7図を参照して説明した如き処理を
実行する演算処理部をもつプロセツサにおけるエ
クスチエンジ操作態様決定の一実施例を示してい
る。図中の符号14ないし17は第6図に対応し
ており、18は演算処理部、19は情報aレジス
タ、20は当該プロセツサ番号情報シフト回路、
21は情報bレジスタ、22は乗算器、23は加
算器、24はカウンタ(又はシフト・レジスタ)
であつて上述のステージの番号をカウントするも
の、25はマルチプレクサであつてK個のビツト
のうちのステージ番号に対応した1ビツトを抽出
して上述のエクスチエンジ操作ビツトCiを抽出
するものを表わしている。今、当該プロセツサが P=p0、p1、p2、p3 で指定されるものとし、情報aとbとが与えられ
ると、第0ステージにおいては、第7図Aを参照
して説明したとき、当該プロセツサ「p0,p1
p2,p3」に転送されるデータは、「s0,p0,p1
p2」なる番号をもつ発信元プロセツサから「p3
(p3=d0)、d1,d2,d3」なる番号をもつ転送先プ
ロセツサへの転送データである。このため a=a0×23+a1×22+a2×21+a3 b=b0×23+b1×22+b2×21+b3 であるとすると、第7図Bの場合と同様に であり、d0=p3である。そして、上記点線で囲つ
た部分の和が右から第4桁目に値「1」を与えれ
ば、値s0を加えてd0を得たときd00となること
から、明らかにC0=1となることが判る。
第1、第2、第3ステージについても同様にし
てC1,C2,C3が求められる。ここに述べたアル
ゴリズムを一般化すると次のようになる。
「d=aS+b mod 2Kを求めるためのp番目
のプロセツサにおける制御ビツトをC0,C1,C2
………CKとおくと (1) a、bをロードする (2) m=0とおく (3) p′←pを右へ1シフト (4) d′=a×p′+b mod 2Kを求める (5) Cn=d′のmビツト目 (6) m←m+1 (7) m<kなら(3)に戻る」 第8図図示のレジスタ19,21にはa、bを
それぞれロードし右シフトレジスタ20にはプロ
セツサの番号Pをロードする。この図では2次元
配置の場合も考慮し、水平方向、垂直方向の番号
のいずれかが選択される。Pは繰返し毎に右に1
ビツトシフトされ乗算器22と加算器23によつ
て上記(4)の演算を施され、その結果のmビツト目
がマルチプレクサ25によつて抽出され、制御ビ
ツトCiになる。そしてCiはマルチプレクサ14
Hや14Vを制御する。カウンタあるいはシフト
レジスタ24はマルチプレクサ25を制御する。
上記において、シヤフル・エクスチエンジ操作
に対応する1対1のデータ転送について説明した
が、必要に応じて1対Nのデータ転送を行なうこ
とが望まれる。
第9図は、1対Nのデータ転送を行なういわゆ
る放送転送について説明する説明図を示す。
該放送転送の場合には、第4図において実線で
示した如く転送データが分配されて行く。この状
態は、発信元プロセツサが「s0,s1,s2,s3」な
る番号をもつとき、第0ステージないし第3ステ
ージにおいて、第9図図示の如き番号をもつプロ
セツサに順次分配されてゆくことが判る。例え
ば、第0ステージにおいて、「s1,s2,s3,s0」と
「s1,s2,s30」との番号をもつプロセツサに分
配される。
第1ステージでは「s1,s2,s3,s0」の番号を
もつプロセツサの出力が「s2,s3,s0,s1」の番
号を持つプロセツサと「s0,s3,s01」の番号
を持つプロセツサへそれぞれ転送される。前者は
素通しのポートが、後者は入れ換えのポートがそ
れぞれ選択される。更に例えば「s1,s2,s3
0」の番号をもつプロセツサの出力が「s2,s3
0,s1」の番号を持つプロセツサと「s2,s3
01」の番号を持つプロセツサへそれぞれ転送
され、前者は素通しのポートが、後者は入れ換え
のポートがそれぞれ選択される。以下同様であ
る。
第10図は、第9図に示す如き分配を演算処理
によつて行なう一実施例を示している。この例で
はN=16である。図中26は分配演算処理部、2
7は発信元プロセツサ番号レジスタであつて制御
ユニツトから与えられて循環シフトレジスタを構
成しているもの、28はマスク・レジスタであつ
て図示マスク・ビツトm0,m1,m2に初期状態と
して夫々論理「1」が与えられてステージの進行
に応じて順次ビツトm0、ビツトm1、ビツトm2
左シフトされ右端から0が挿入されるもの、29
は自己プロセツサ番号レジスタであつて予め対応
するビツトp0,p1,p2,p3が与えられているも
の、30ないし33は夫々排他的オア回路、34
ないし36は夫々ナンド回路、37,38はアン
ド回路を表わしている。
第9図からもわかる如くステージ0においては
入れ換えの信号の出るプロセツサは、p0=s1、p1
=s2、p2=s3、p30を満たすもの1個のみであ
る。(入れ換えでも素通しでも良いプロセツサで
は素通しの信号が出るものとする)。したがつて
レジスタ27を1ビツト左循環シフトし、レジス
タ29と比較して上位3ビツトが一致、下位1ビ
ツトが不一致であるものについてC0=1とすれ
ばよい。
ステージ1においては入れ換えの信号の出るプ
ロセツサは、p0=S2、p1=S3、p30を満たす2
個のプロセツサである。ステージ2,3について
も同様に考えられる。
この事から第10図においてはマスクビツト
m0,m1,m2をもうけステージ0のときマスクビ
ツトm0,m1,m2を発してp0,p1,p2の一致を調
べ、ステージ1のときはマスクビツトm0,m1
0を発してp0,p1の一致を調べ………としてゆ
き、各ステージに対応したビツトCiを抽出して
ゆく。
以上説明した如く、本発明によれば、転送態様
に応じた形で各プロセツサが制御ユニツトから情
報を供給され、各プロセツサはステージに対応し
て一義的に定まるエクスチエンジ操作態様情報を
抽出・決定してゆくようにされる。このために、
タグ情報を附与してデータ転送を行なう方式にく
らべてオーバヘツドが例えば50%となりlog2N回
のステージを経て転送される転送速度が大きく向
上される。
【図面の簡単な説明】
第1図は代表的な並列処理計算機の構成図であ
りSIMD型(単一命令ストリーム)とMIMD(複
数命令ストリーム)型とを示すもの、第2図はス
トーンのシヤフル・エクスチエンジ・ネツトワー
クを示したもの、第3図はローリーのオメガ・ネ
ツトワークの一例を示す説明図、第4図はプロセ
ツサ間の転送によつてシヤフル・エクスチエン
ジ・ネツトワークを構成する場合の一実施例、第
5図はシヤフル・エクスチエンジ操作を説明する
説明図、第6図は各プロセツサにおいて処理索引
メモリをそなえたエクスチエンジ操作態様を決定
する一実施例構成、第7図A,B,C,D,Eは
演算処理部をそなえてエクスチエンジ操作態様を
決定する一実施例についての動作を説明する説明
図、第8図は各プロセツサにおいて演算処理部を
そなえてエクスチエンジ操作態様を決定する一実
施例構成、第9図は1対Nのデータ転送を行なう
いわゆる放送転送について説明する説明図、第1
0図は放送転送を行なうに当つてのエクスチエン
ジ操作態様を決定する一実施例構成を示す。 図中S0,S1,……やS「0000」,S「00
01」……は夫々発信元プロセツサ、D0′,D1′,
……やD「0000」,D「0001」……は
夫々転送先プロセツサ、10は処理索引メモリ、
14,15は夫々マルチプレクサ、18は演算処
理部、26は分配演算処理部を表わす。

Claims (1)

  1. 【特許請求の範囲】 1 複数個のプロセツサを配列してなり、各プロ
    セツサが自己の処理結果および/または他プロセ
    ツサから転送された結果を他プロセツサに転送し
    および/または自己プロセツサに取入れるよう構
    成される並列処理データ処理システムにおいて、
    N個のプロセツサ相互間でシヤフル・エクスチエ
    ンジ・ネツトワークを構成すると共に、log2N回
    のシヤフル・エクスチエンジ操作を繰返して1回
    分のデータ転送が行われるよう構成されてなり、
    かつ上記プロセツサは、自己プロセツサ内に記憶
    されたあるいは1つあるいは複数個の制御ユニツ
    トから複数個のプロセツサに対して出された上記
    1回分のデータ転送に係る情報を供給するよう構
    成してなり、当該情報を受信した各プロセツサは
    当該情報に対応したエクスチエンジ操作態様を決
    定して当該操作を実行するようにしたことを特徴
    とする並列処理データ処理システム。 2 上記プロセツサは、上記制御ユニツトから供
    給されたあるいは自己プロセツサ内に記憶されて
    いる転送に係る情報にもとづいて一義的に上記エ
    クスチエンジ処理の処理態様を抽出する処理索引
    メモリを有してなり、上記供給された情報にもと
    づいてエクスチエンジ処理を実行するようにした
    ことを特徴とする特許請求の範囲第1項記載の並
    列処理データ処理システム。 3 上記プロセツサは、発信元プロセツサをS、
    転送先プロセツサをDとするとき、 D=(aS+b)modN;N=2K(a:奇数、 abN−1) で与えられる情報a、bを上記情報として上記制
    御ユニツトあるいは自己プロセツサ内の記憶装置
    から供給を受け、かつ自己プロセツサが上記N個
    中の第P番目である情報と上記log2N回のシヤフ
    ル・エクスチエンジ操作中の第幾回目かを示す情
    報iとにもとづいて上記エクスチエンジ操作を実
    行する操作態様情報Ciを決定する演算処理部を
    そなえ、該演算処理部からの操作態様情報Ci
    もとづいてエクスチエンジ操作を実行することを
    特徴とする特許請求の範囲第1項または第2項記
    載の並列処理データ処理システム。 4 上記プロセツサは、上記制御ユニツトあるい
    は自己プロセツサ内の記憶装置から転送先プロセ
    ツサが複数個であることを示す放送指示情報を供
    給され、該放送指示情報にもとづいて発信元プロ
    セツサに関する上記情報Sと自己プロセツサに関
    する上記情報Pとにもとづいて上記エクスチエン
    ジ操作を実行する操作態様情報Ciを抽出決定す
    る抽出決定部をそなえ、該演算処理部からの操作
    態様情報Ciにもとづいてエクスチエンジ操作を
    実行することを特徴とする特許請求の範囲第1項
    ないし第3項のいずれか記載の並列処理データ処
    理システム。
JP55185332A 1980-12-29 1980-12-29 Parallel processed data processing system Granted JPS57111654A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55185332A JPS57111654A (en) 1980-12-29 1980-12-29 Parallel processed data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55185332A JPS57111654A (en) 1980-12-29 1980-12-29 Parallel processed data processing system

Publications (2)

Publication Number Publication Date
JPS57111654A JPS57111654A (en) 1982-07-12
JPS622353B2 true JPS622353B2 (ja) 1987-01-19

Family

ID=16168955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55185332A Granted JPS57111654A (en) 1980-12-29 1980-12-29 Parallel processed data processing system

Country Status (1)

Country Link
JP (1) JPS57111654A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339396A (en) * 1987-11-18 1994-08-16 Hitachi, Ltd. Interconnection network and crossbar switch for the same

Also Published As

Publication number Publication date
JPS57111654A (en) 1982-07-12

Similar Documents

Publication Publication Date Title
US3753234A (en) Multicomputer system with simultaneous data interchange between computers
EP0726532B1 (en) Array processor communication architecture with broadcast instructions
EP0240032B1 (en) Vector processor with vector data compression/expansion capability
CN100380313C (zh) 用于带有间接超长指令字处理部件至处理部件通信的有效同步mimd操作的方法和设备
CN1326061C (zh) 流形阵列处理方法和装置
EP0132926B1 (en) Parallel processor
CA2138263C (en) Multiprocessor
KR960012655B1 (ko) 멀티 프로세서 시스템 및 그것에 사용된 코 프로세서
KR0125623B1 (ko) 데이타 프로세서 및 데이타 처리방법
US5418970A (en) Parallel processing system with processor array with processing elements addressing associated memories using host supplied address value and base register content
Siegel et al. Using the augmented data manipulator network in PASM
US7350054B2 (en) Processor having array of processing elements whose individual operations and mutual connections are variable
EP0016523B1 (en) Data processing unit and data processing system comprising a plurality of such data processing units
JPS6044696B2 (ja) 浮動小数点デ−タ処理装置
JPS63278136A (ja) 演算回路
JPS6393070A (ja) ベクトルデ−タ処理装置
JP2552784B2 (ja) 並列データ処理制御方式
JP2004151951A (ja) アレイ型プロセッサ
JP2021108104A (ja) 部分的読み取り/書き込みが可能な再構成可能なシストリックアレイのシステム及び方法
JPS622353B2 (ja)
JPH01187676A (ja) 画素に関するデータの処理装置
JPS58149556A (ja) 並列処理装置
Olariu et al. Time-optimal sorting and applications on n* n enhanced meshes
JP2791764B2 (ja) 演算装置
McMILLEN et al. Dynamic rerouting tag schemes for the augmented data manipulator network