JPS63238653A - データ処理装置とその処理方法 - Google Patents

データ処理装置とその処理方法

Info

Publication number
JPS63238653A
JPS63238653A JP62298606A JP29860687A JPS63238653A JP S63238653 A JPS63238653 A JP S63238653A JP 62298606 A JP62298606 A JP 62298606A JP 29860687 A JP29860687 A JP 29860687A JP S63238653 A JPS63238653 A JP S63238653A
Authority
JP
Japan
Prior art keywords
data
processing
calculation
state
data storage
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
JP62298606A
Other languages
English (en)
Other versions
JP2637749B2 (ja
Inventor
Junichi Takahashi
淳一 高橋
Takashi Kimura
隆 木村
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPS63238653A publication Critical patent/JPS63238653A/ja
Application granted granted Critical
Publication of JP2637749B2 publication Critical patent/JP2637749B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (発明の属する技術分野) 本発明は、データ処理装置間でのデータ通信を伴うシス
テムのデータ処理において、データ処理’A置間のデー
タ転送処理と各データ処理装置でのデータ演算処理とを
並列に行なうための技術に関するものである。
(従来の技術) 従来、データ処理装置間でのデータ通信を伴うシステム
のデータ処理の一例としての、アレイプロセッサにおけ
るデータ演算処理では、処理要素間のデータ転送処理に
おいて、データ送・受信及びデータ演算処理は処理要素
の共通のデータ格納領域(メモリ等)を使っていたため
、処理要素間のデータ授受を待ってデータ演算処理を実
行しなければならなかった。
そのため、データ転送とデータ演算処理を交互に繰り返
し行わなければならなかった。特に、ベクトルデータの
転送を伴う行列乗算等の処理では転送データ量が多いた
め、アレイプロセッサの処理速度は処理要素間のデータ
転送のオーバヘッドにより低下するという欠点があった
例えば、第16図に示すようなアレイプロセッサで、行
列A、Bの乗算処理を実行する場合について説明する。
各処理要素は、行列Aの成分データの受信、送信及びデ
ータ演算処理用に共通のデータ格納領域をもち、また、
行列Bの成分データの受信及び演算ユニットへのデータ
供給及び演算結果の受は取り用のデータ格納領域をもつ
(Q、m)行列A + (m + n )行列BをA 
==(Qi’、 n2’、 ”’Hni’、 ”・[1
7’)’ ; (1≦i≦Q)B=(To、、 b2.
−、 To、、−、To、) ; (1≦J≦n)と定
義すると1行列C=AXBの5列ベクトルC4はc、”
=(cmj+ QzJ+ ”’+ Q目+ ”’t Q
tr)=((i%T) jy n2・To 4. ”’
、 (Ll’To4. ”’g [lLz”b4)で表
わされる。
従って1行列Aを表わすベクトルデータ列(n 、)と
行列Bを表わすベクトルデータ列(b、)を第16図に
示すようなデータフローに従ってアレイプロセッサに入
力することによって、各処理要素において行列Cの各成
分をパイプライン処理で計算できる。
Q=5.n=5の場合の処理動作例を第17図Aないし
第17図Cに示す。
この例では、データ授受とデータ演算処理のデータ格納
領域を共有しているため、処理要素間のベクトルデータ
の転送とベクトルデータ間の内積演算はシリアルに行わ
れる。
例えば、時刻3においては、PEIはデータo2を入力
すると同時にそれまで保持していたデータ0工をPE2
に転送する。さらに、ベクトルデータ間工を入力する。
PE2はこれと同時にPEIからデータ0□を受信し、
外部からベクトルデータTo、を入力する。
時刻4においては、時刻3で入力したデータに対して内
積演算処理を実行する。上記のような処理では、処理要
素間のデータ転送に要する時間がオーバヘッドになり、
処理の高速化が図れない。
(発明の目的) 本発明の目的は、上記のようなデータ処理装置間でのデ
ータ通信を伴うシステムのデータ処理において、データ
処理装置間のデータ転送処理と各データ処理装置でのデ
ータ演算処理とを並列化し。
データ処理装置間のデータ転送に要する時間のオーバヘ
ッドを低減し、上記のシステムの並列処理の高効率化を
達成できるデータ処理装置を提供することにある。
(発明の構成) 本発明装置は、 1)データ受信端子を介して外部からデータを受信する
データ受信用のデータ格納領域、2)データ送信端子を
介して外部へデータを送信する送信データ用のデータ格
納領域、3)演算実行ユニットに対するデータの供給並
びに演算結果の受取りを行うためのデータ演算処理用の
データ格納領域をもち、 上記の各データ格納領域は互いに排他的かつ循環的にデ
ータ受信用、データ送信用、データ演算処理用に切り換
わることができ、 上記の各データ格納領域のデータ受信、データ送信、デ
ータ演算処理の各役割の切り換えを制御する手段と、 所望の演算を実行する手段と、 演算内容を制御する手段を有するデータ処理装置であっ
て、データ処理装置間のデータ通信を伴うシステムでの
データ処理におけるデータ通信時間のオーバヘッドを低
減し、処理速度の向上を図るものである。
(実施例) 以下、本発明の実施例の図面を用いて1発明の詳細な説
明する。
[実施例1コ (12,m)行列Aと(m、n)行列Bの乗算を一次元
アレイプロセッサで処理する例を示す。
行列A、Bを A==(n1’、 n2’、 ”’g (L l’t 
”’HQ、?)’ H(1≦i≦Ω)n=(To、、 
To、、 ・−・−、b、、 =・、 ba) ; (
1≦j≦n)と定義する。ここで、 [Li、 Toj
はそれぞれ行ベクトル、列ベクトルで rX!”(a ill aits ”’t 81+ ”
’l aI+e装置ベクトルを表わす。
行列C=AXB、Cの(i、j)成分をCijで表わす
とすると cl、=Σa 1 kb y 4 ” (11”D j
 (’は内積演算)である。
行列Cの5列ベクトルを cj′=(01320m、・・・+QiJ+ ・・、c
rt);(1≦j≦n)と定義すると、 CI′=(01+ToJIQzTTo1.°°゛tΩi
’J、 ”’、 n/”Toj)である。
第1図に示すn個の処理要素からなる一次元アレイプロ
セッサで、行列Cを求める場合のアレイプロセッサの処
理動作を、Q=:n==5の場合にっいて第2図A、第
2図Bに示す。上記のアレイプロセッサに人力されるデ
ータは、ベクトル列(0工。
o2.・・・、0.)及びベクトルデータ列(Tol、
b2.・・・。
!bo)である。
第3図は本発明を処理要素の構成にもつ一実施例を概略
的に示すブロック図であり、1,2.3はデータ格納領
域、4は演算実行ユニット、5はコントロールユニット
、6はデータ受信端子、7はデータ送信端子、8,9は
レジスタを示す。
各処理要素は、本発明の構成であるデータ受信用、デー
タ送信用、データ演算処理用のデータ格納領域をもち、
それらの容量は各ベクトルデータを格納できる大きさ、
すなわち、m個のデータ格納領域をもつ。
各処理要素はまた、ベクトルデータ列(Tol、!b、
、。
・・・、bl)の各ベクトルデータ並びに演算途中結果
を格納するためのデータ格納領域をもち、内積演算を実
行する手段、データ授受並びに上記のデータ格納領域の
各々のデータ受信、データ送信、データ演算処理の各役
割を制御する手段をもつ。
第2図A、第2図Bの動作例では、各ベクトルデータ列
を互いに同期させて、各処理要素にパイプライン転送す
る規則的なデータフローにより、各処理要素は並列に行
列Cの各成分の演算処理を行う。
各処理要素の各データ格納領域は、各時刻毎に第6図に
示されるように1次のような循環的な各役割の切り換え
を行う。(ここで、時刻の単位は行列Cの各成分計算ま
たはベクトルデータ転送に要する時間とする。) 具体的に、時刻3,4,5でのPEIの3面のデータ格
納領域の処理動作について説明する。
時刻3において、データ受信用でベクトルデータo3を
受信したデータ格納領域は、時刻4でデータ送信用にな
り、このデータをPE2に転送する。また、時刻5にお
いてデータ演算処理用になり、このデータ0.と時刻1
において入力し、保持されたベクトルデータTolとの
内積演算処理に使われる。
一方、他の2つのデータ格納領域は、時刻3において、
それぞれベクトルデータ0□とベクトルデータlb、と
の内積演算処理用のデータ格納領域(データ演算処理用
)、時刻2で受信したベクトルデータo2をI) E 
2へ転送するデータ送信用のデータ格納領域(データ送
信用)である。
また1時刻4においては、それぞれバク1−ルデータ0
4のデータ入力用のデータ格納領域(データ受信用)、
ベクトルデータ0−2とベクトルデーモ演算処理用)で
ある。
時刻5においては、それぞれベク1へルデータo4をP
E2へ転送するデータ送信用のデータ格納領域(データ
送信用)、ベクトルデータ0.の入力用のデータ格納領
域(データ受信用)として使用される。
このような行列乗算の処理では5本発明のデータ受信、
データ送信、データ演算処理の3つの役割が互いに排他
的かつ循環的に切り換わるようなデータ格納領域の構成
により、常に処理要素内での内積演算処理と処理要素間
のデータ転送処理を並列に実行でき、アレイプロセッサ
での処理要素間のデータ転送に要する時間のオーバヘッ
ドを低減して効率的な処理が達成できる。
以下1本実施例による効果を定量的に評価する。
内積演算処理に要する時間をtP+ベクトルデータ0.
またはTo、の入力または転送に要する時間をtlr+
アレイプロセッサ全体で演算処理を開始するまでに必要
となるデータの初期ロードに要する時間をtoと定義す
ると、(Q、m)行列Aと(m、n)行列Bの乗算処理
に要する時間Tは、T=t6+(R+n)Xmax[t
p、  t、、コ−(1)で表わされる。ここで、ma
x[x+ ylはXt yのうちの最大値を表わす、t
P≧tjrの場合には、式(1)は’L” = t 、
 + (Q + n ) t pであり、データ転送処
理が演算処理に隠され、総時間は演算処理時間だけに依
存する。
また、1 、< 1 、、の場合には、式(1)はT=
to+(Q+n)t、、であり、データ演算処理がデー
タ転送処理に隠され、総時間はデータ転送処理だけに依
存する。
演算処理とデータ転送をシリ゛アルに実行する手段、す
なわち、データ転送用のデータ格納領域とデータ演算処
理用のデータ格納領域を共有し、データ転送用とデータ
演算処理用の各役割を時分割して用いる従来の技術では
行列の乗算処理に要する総時間T′は、 T’=t、’+(Q+n)X(t、+t、、)  ・=
 (2)で表わされる。
式(1)、 (2)より 式(3)の分母、分子の第一項のjo’+ jOは第二
項である。
従って、式(4)よりT≦T′であり5本発明の構成に
より、従来よりも高速の処理を達成できる。
tp”tarの場合には、従来の2倍の処理速度向上を
実現でき得る。
次に、コン1〜ロールユニツ1〜の具体例について説明
する。
コントロールユニットのブロック回路図を第5図に示す
。なおこのコントロールユニットは本発明の全実施例に
共通する。Address Counter 1 。
2.3は、各データ格納領域■、■、■をアドレシング
するカウンタで、Ba5e Address Reg、
  1 。
2.3はこれらのAddress Counterのア
ドレス値との比較対象となるデータを保持するレジスタ
である。各Address Counterと対応する
Ba5eAddress Reg、との値は、−数棟出
回路によって比較される。各−数棟出回路は、アドレス
値の一致を示すフラグを発生する。各−数棟回路の出力
するフラグは、各データ格納領域の役割に対応して、デ
ータ送信、データ受信、データ演算用の各格納領域に対
するデータの授受動作状態を表わすフラグとして定義で
き、各マルチプレクサは、各々データ送信状態、データ
受信状態のフラグを切換え、これを送信状態フラグ(S
F)、受信状態フラグ(RF)としてモードコントロー
ル制御回路に送る。これらのフラグは、データ送信また
は。
受信状態にあるデータ格納領域がデータの送信または、
受信を完了したことを示すものである。
詳細には、各Address Counterに送信ま
たは受信するデータ群の初期アドレスを、対応する!3
ase Address Reg、にその!#アドレス
を設定し、Counterはデータを1つ送信または受
信するごとにインクリメントし、三の値が[1ase 
AddressReg、に一致したところでインクリメ
ン1ル動作を終了し、一致のフラグが検出され、送信ま
たは受信が完了する。
モードコントロール制御回路は、各データ格納領域の役
割状態を制御する。
制御信号MC(Mode Change Signal
)は、各データ格納領域の役割遷移を起動する信号であ
り、Sr1.Sr1はそれぞれ、玉状t(循環状態遷移
六状態循環状態遷移(後述する)の各過程を指定する制
御信号である。制御信号Pn、Rn、5n(n=1,2
.3)は、それぞれのデータ格納領域(n=1の時は■
、n=2の時は■、n=3の時は■)のデータ演算用、
データ受信用、データ送信用の役割状態に示す信号であ
る。制御信号MDFは入状態循環遷移の制御を行う信号
である。
デコー回路は、モードコントロール制御回路から各デー
タ格納領域の役割状態を示す制御信号とデータ演算処理
時のデータ格納領域の書込み、読出しを示す制御信号W
R,RD及びデータ送・受信時の書込み、読出しを示す
制御信号ASWR。
ASRDとから個々のデータ格納領域のデータ読出し、
書込みイネーブル信号RENn、WENn(n=1.2
.3)を発生する。
第6図に、モードコントロール回路の詳細論理図を示す
BMn (n=1.2.3)は、各データ格納領域の役
割状態を表し、Pn、Sn、Rn (n=1’。
2.3)のいずれかが、”)ligh”であることを示
す。レジスタII〜16は、各データ格納領域の、■。
■の役割状態値を制御するレジスタ群で、データ格納領
域■の状態はレジスタ11,14、■の状態はレジスタ
12.15.■の状態はレジスタ13.16、の各レジ
スタ値によって定義される(データ演算用に対しては1
111”、データ受信用に対しては′1101+、デー
タ送信用に対しては′01”)。また、このレジスタ群
において、[F]は、リセット時に初期値″1”を保持
し、■は“0″を保持するレジスタである。レジスタ1
1〜13.レジスタ14〜16は、シフトレジスタとし
て動作する。
第7図にデコーダ回路の論理図を示し、第8図。
第9図に王状態循環遷移制御、入状態循環遷移制御にお
けるモードコントロール回路の動作のタイムチャートを
示す。
第8図において、各データ格納領域の状態値を示すシフ
トレジスタは、制御信号MCが1マシンサイクル入るご
とにシフト動作し、各データ格納領域の状態を示す信号
BMn (n=1.2.3)が互いに排他的に変化し、
三状態循環遷移を実現する。
第9図においては、各データ格納領域の状態値を示すシ
フトレジスタは、制御信号MCが2マシンサイクル入る
ごとに1回シフト動作し、制御信号MDFは、制御信号
MCが1マシンサイクル入るごとにセットまたはリセッ
トされる。制御信号MDFがtiLo、+″の時は、各
データ格納領域の状態は、BMn (n=1.2.3)
の値により定義し、MDFが“lligh”の時は、B
 M n = P nのデータ格納領域をデータ演算の
データ読出し専用に、B M n == S nのデー
タ格納領域をデータ演算のデータ書込み専用の役割状態
として定義することにより、二面のデータ格納領域をデ
ータ演算の読出し、書込み専用に割当てる状態と、各々
のデータ格納領域をそれぞれデータ演算用、データ受信
用、データ送信用に割当てる状態とをMCが1マシンサ
イクルごとに交互に切換え、入状態循環遷移を現実する
口実流側2] たたみ込み演算を一次元アレイプロセッサで実行する例
を示す。
重み係数データ列をW ”(w、、 w2. ’−,w
k)。
入力データ列をX=(x、、x、、・・・、 x、、)
とすると、たたみ込み演算は ’I + :WLX I+ W2 X i+1 +”°
°” + WkX 1nk−sで表わされる。
本実施例に対する本発明の構成を第5図に示す。
処理要素は第3図の構成をもつ。ここで、データ受信、
データ送信、データ演算処理用の各役割を担うデータ格
納領域はレジスタである。
第10図に示すようなに個の処理要素からなる一次元ア
レイプロセッサでのたたみ込み演算処理の動作を、k=
5、n=7の場合について第11図A。
第11図Bに示す。
ここで、各処理要素は本発明の構成である上記の3種類
の役割を担うデータ格納領域(この例では、各データが
スヵラデータであるので、各データ格納領域はレジスタ
でよい)をもち、乗算及び加算の機能、各データ格納領
域の処理モード及びデータ授受の制御手段をもつ。
また、入力データXのデータ格納領域をもち。
この格納領域は外部からのデータ六カとデータ演算処理
用に同時に用いることができるものとする。
さらに、演算途中結果の格納、保持する手段をもつもの
とする。
各々データ格納用レジスタは、データ受信、データ送信
、データ演算処理の各役割を互いに排他的かつ循環的に
切り換えることができる。
具体的に、時刻4,5,6でのPEIの各データ格納用
レジスタの動作について説明する。
時刻4において、データ受信用でw4を受信したデータ
格納用レジスタは、時刻5においてデータ送信用になり
データw4をPE2に送信する。
また、時刻6において、データ演算処理用になり、時刻
4で人力し、保持されているx4との乗算用に使用され
る。ここで、時刻5で入力データx、1を人力した入力
データ用格納領域は、時刻6でデータ演算処理用として
使用される。
一方、他の2つのデータ格納用レジスタは、時刻4にお
いてそれぞれyoの成分w2x2の乗算処理用(データ
演算処理用)、時刻3で入力したデータW、をPE2へ
転送するデータ転送用(データ送信用)として使用され
る。
また1時刻5においては、それぞれ、データ受信用での
データw5の入力用、データ演算処理用でのy工の成分
w3 X3の乗算処理用として使用される。
時刻6においては、それぞれ時刻5で入力したデータw
5をデータ送信用でPE2に送信、データ受信用で空デ
ータの受信用として使用される。
人力データ列Xは、各時刻毎に全処理要素に同時転送さ
れる。
上記のように、たたみ込み演算処理では、本発明のデー
タ受信、データ送信、データ演算処理の3種類の役割が
互いに排他的かつ循環的に切り換わる。
データ格納領域の構成により、常に処理要素でのy、の
成分計算と処理要素間のデータ転送処理が並列に実行で
き、アレイプロセッサ上で処理要素間のデータ転送のオ
ーバヘッドなく、y、の演算がパイプライン並列処理で
実現できる。
演算結果は時刻7,8.9において、それぞれ1) E
 lではy□、PE2ではyatPE3ではy。
が得られる。
以下、本実施例の効果を定是的に示す。データwp(1
≦p≦k)を入力、転送するために要する時間をtlr
、各処理要素で乗算WpX++p−x及びこの時刻まで
の計算結果Σ WpXi、、−□とこの乗算結果の加算
に要する時間を1.とすると、結果y。
を求めるためにかかる総時間′rは、 T=t6 + (k + (n + 1   k))X
max[t、 、r* tp]=  t 0+(n  
+  1)Xmax[t  Irl  t、コ−=−(
5)で表わされる。ここで、toは初期データロードに
要する時間であり、max[x、 ylはXt yのう
ちの最大値を表わすものとする。
本実施例に示すたたみ込み演算処理では、処理要素間の
データ転送は1個のスカラデータ転送であるので、tl
r<tpである。従って、T=t、)+(n+1)Xt
、  ・・・・・・・・・・・・・・・・・・(6)従
来の演算処理とデータ転送をシリアルに行う技術では、
総時間T′は T’= t0’+(n +1)(t、+ t tr) 
 −・・・・・(7)である。
式(6)、 (7)より、 T’  tP+t・・=1+工土L・・・・・・・・・
・・・・・(8)′r    t 、      t 
式(8)より、’1’<T’であり1本発明の構成によ
り処理速度は(1+互ユ)倍向上する。
1゜ [実施例3] 音声認識処理のDI)(ダイナミックプログラミング)
に基づくパターンマツチング処理におけるベクトル距離
計算を、本発明の構成を搭載した処理要素(PE)から
成る一次元アレイプロセッサで実行する例を示す。
このベクトル距離計算(以後、d算計と呼ぶ)は、d 
i+j=Σl u+1に−11”j’12で表される。
ここで、l+ jは、マツチングする人カバターンデー
タ時系列(ul)の第iフレーム、標準パターンデータ
時系列(r、)の第jフレームを表し、kは各バク1〜
ルデータの次数を表す。
具体例として、i=5.j=5の場合をPE数=5の一
次元アレイプロセッサで処理する場合について説明する
各PEで実行するd計算の処理フローを第12図Aない
し第12図Cに示す。各PEは、三面のデータ格納領域
の他に演算実行ユニツ1−とのデータ授受を行なうこと
のできるワーキング用のデータ格納領域をもち、外部の
バスからデータを入力することができる。
各PEは、バスから標準パターンデータを人力してこれ
をワーキング用のデータ格納領域に格納し、三面のデー
タ格納領域構成を使ったパイプライン処理によって人カ
バターンデータを人力する。
この処理フローは、一つのd計算に要する処理時間を時
刻単位として示されており、各13 Eの三面のデータ
格納領域の役割に各時刻毎に互いに排他的にかつ循環的
にデータ受信用、データ送信用。
データ演算処理用に切り換わる。PE3の時刻L+(3
におけるd計算を例に、詳細な処理を説明する。
時刻t+6において、I) E 3は、PE2から標準
パターンベクトルデータr、をデータ受信状態のデータ
格納領域に受信し、これと並行して時刻t+5でPE2
から受信した標準パターンベクトルデータ+r4をPE
4に送信する。また、このPE間データ転送と並行して
時刻t+3において受信した標準パターンベクトルデー
タ「、と時刻t+2においてバスからワーキング用のデ
ータ格納領域に人力した入カバターンベクトルデータU
とのベクトル距離計算処理(d、3)を実行する。
PE3の三面の各データ格納領域の役割状態は、時刻t
+4    時刻t+5   時匂Jt+6のように互
いに排他的に切り換わる。
各PEは、各時刻において同一の処理を行なう。
以上のように、互いに排他的かつ循環的に三状態の役割
を切り換えることができる三面のデータ格納領域構成に
よって、PE間のデータ転送をデータ演算処理に隠すこ
とができ、データ転送のオーバヘッドのない高速なりP
に基づくパターンマツチングの並列ベクトル距離計算が
実現できる。
[実施例4コ この実施例においては、3つのデータ格納領域の各々を
循環的且つ排他的に、データ受信用、データ送信用、デ
ータ演算処理用の3状態に順次切換える状態Aと、前記
3つのうちの2つのデータ格納領域をデータ演算書込み
専用およびデータ演算読出し専用とする状態Bを交互に
切換え、上記の3つのデータ格納領域の各々をデータ演
算処理用(状態A)、データ演算の書込み専用(状態B
)、データ送信用(状態A)、ノーオペレーション(状
態B)、データ受信用(状態A)、データ演算の読出し
専用(状態B)、続いてデータ受信用(状態A)と6状
態に順次循環的に切換え、データ受信、データ送信、デ
ータ演算処理を並列に実行する。
音声認識処理のDP(ダイナミックプログラミング)に
基づくパターンマツチング処理における累積距離計算を
、本発明の構成を搭載した処理要J (PE)から成る
一次元アレイプロセッサで実行する例を示す。
この累積距離計算(以後、g計算と呼ぶ)は、g L 
−z +i−1+ 2 d t−1+4  ・・・・・
・(1)g l *j” di 、1+min   g
 I−1+j−1” di +4    ”””(2)
g i −1+j−x+ 2 d 1yi−1・・・・
・・(3)1 + −z +4−1 +L    if
  (1)1i、i”   l 1−1−j−、+ k
x   Lf  (2)1 +−1+j−2+ L  
 if  (3)で表される。ここで−1+ jは、マ
ツチングする入カバターンデータ時系列の第iフレーム
、標準パターンデータ時系列の第jフレームを表す。
具体例として、i=5.j=5の場合をPE数=5の一
次元アレイプロセッサで処理する場合について説明する
各PEで実行するg計算の処理フローを第14図Aに示
す。各PEは、三面のデータ格納領域の他に演算実行ユ
ニットとのデータ授受を行なうことのできるワーキング
用のデータ格納領域をもち、その一部の領域に距離値d
Ip4のテーブルが格納されているものとする。この処
理フローでは、各PEは、隣接するPEからそのPEの
g計算に必要なデータ群を受信し、このデータとワーキ
ング用のデータ格納領域に保持されているデータとを使
って隣接するPEがそのg計算で必要とするデータ群を
話算して、隣接するPEへ送信する。そして、各PEは
、このデータ送信と並行してそのPEのgeQ値を計算
する。
第14図Aにおいて、 g、Ω  :対象となるg値、g値。
g−1,Ω−に一時刻前のg値、g値、送信、受信用の
格納領域には、データ群(nj+ Payant PC
,1c) 、ワーキングの格納領域には、データ群(P
b+ eb+ g−1+ (1−”+ ga9gb+ 
gc)及びd ij子テーブル格納される。
このPEの処理フローに従って、−次元アレイプロセッ
サでのg計算の並行処理フローを第14図Bに示す、各
PEは第14図Aのステップa−eをこの処理フローに
従って実行するが、あるPRのステップa、dは隣接す
るPEのステップd、aに相当するので、アレイプロセ
ッサの処理では、隣接するPEの間でステップaとdを
対応させた並列処理が実行できる。すなわち、データ演
算処理と並列にPE間データ転送が実行できる。
この処理フローを本発明の構成で実行した場合を第15
図Aないし第15図Eに示す。
ここでは、D、−、’はデータ群を表し、と定義する。
第15図Aないし第15図Eは、一つのg値を計算する
のに要する時間を処理の時刻単位として処理フローを示
している。PE3の時刻t+4におけるg33の計算を
例に、詳細な処理を説明する。
各PEの三面のデータ格納領域は、各時刻に二つの役割
状態をとる。すなわち、二面がそれぞれデータ演算処理
用の読出し、書込み専用に割当てられる状態、三面がそ
れぞれデータ送信、データ受信、データ演算処理用に割
当てられる状態である。
時刻t+4において、PE3は、データ演算処理の読出
し専用状態のデータ格納領域から時刻t+3においてP
E2から受信したデータn)、’を読出し、これとPE
3内部のワーキングのデータ格納領域に格納されていた
データから、送信用のデータIL)3:Iを計算し、デ
ータ演算処理の書込み専用の状態にあるデータ格納領域
にこれを格納する。
そして、三面のデータ格納領域をデータ送信用。
データ受信用、データ演算処理用の状態にして。
求めたデータ1D33をデータ送信用のデータ格納領域
(書込み専用の状態にあったデータ格納領域)から隣接
するPEへ送信すると同時に、データ受信用の状態にあ
るデータ格納領域に時刻t+5計算に必要となるデータ
1)24を受信する。さらに、これと並列に、データ演
算処理用のデータ格納領域(読出し専用の状態にあった
データ格納領域)からのデータとワーキング用のデータ
格納領域からのデータを使ってg33+ Qx□を計算
し、時刻t+4でのg、Ω計算を終了する。
[)I=(ni+ gtz+2 dzs+ g22+ 
Ω□2.Ω2□)であり、ワーキング用のデータ格納領
域にはg2□+2dzz−02!が格納されているので
、g33゜Ω、3はこれらのデータにより求められる。
各時刻において、各PEは、上記と同様の処理を行なう
以上のような各PEでの処理を、六つの役割状態の循環
的な遷移をもつ三面のデータ格納領域構成を使って実行
することにより、データ転送をデータ演算処理に隠すこ
とができデータ転送によるオーバヘッドのない高速なり
Pに基づくパターンマツチングの並列歯vL距踵計算を
実現できる。
(発明の効果) 本発明によれば、データ処理装置間でのデータ通信を伴
うシステムのデータ処理において、データ処理装置間の
データ転送処理と各データ処理装置でのデータ演算処理
の並列処理を可能とし、処理速度の向上を実現できる。
【図面の簡単な説明】
第1図及び第2図A、第2図Bは、それぞれ行列の乗算
処理において、本発明の実施例のアレイプロセッサの構
成とその処理動作を示す。 第3図及び第4図は1本発明の実施例を概略的に示すブ
ロック図とその状態の遷移を示す。 第5図は本発明の実施例のコントロールユニットのブロ
ック回路図を示す。 第6図は本発明の第5図の実施例のモードコントロール
回路の論理図を示す。 第7図は第5図の実施例のデコーダ回路の論理図を示す
。 第8図は、モードコントロール回路の三状態循環で移制
御のタイムチャートを示す。 第9図は、モードコン1−ロール回路の六状態循環遷移
制御のタイムチャートを示す。 第1O図及び第11図A、第11図Bはそれぞれ、たた
み込み演算処理における本発明の詳細な説明するための
アレイプロセッサの構成とその処理動作を示す。 第12図Aないし第12図Cは、バク1ヘル距計算算の
処理フローを示す。 第13図は、3つのデータ格納領域の入状態循環遷移を
示す。 第14図Aは、−次元アレイプロセッサの累積距離計算
並列処理フローを、第14図BはPEの累積距離計算フ
ローをそれぞれ示す。 第15図Aないし第15図Eは、本発明の構成で実行し
た場合の、累積処理計算の並列処理フローを示す。 第16図及び第17図Aないし第17図Cは、それぞれ
、従来の技術を説明するためのアレイプロセッサの構成
とその処理動作を示す。 1.2.3 ・・・データ格納領域、4 ・・・演算実
行ユニット、5 ・・・コン1−ロールユニット、6・
・・データ受信端子、7・・・データ送信端子、8,9
 ・・・ レジスタ、11〜16・・・ レジスタ、0
.〜0I、・・・行列Aのベクトルデータ列、b工〜b
、・・・行列Bのベクトルデータ列、PEI〜PEn 
・・・処理要J、x□〜xfl・・・入力データ列、W
□〜Wl。 ・・・重み係数データ列。 寸       Oψ       ト■      
     ■ O− 第4図 第13図 テ゛−タ涜IL(R1;  す゛′−タ涜算処匣呵【゛
読田し暮刑第14図 (A) 第15図 (A) PE I        PE 2 第15図 (E) テ―り格#I34!賊 t−n ■       ■       O qコ                       
            に−C%J        
  r’)          ぐj        
  CD 嘴i ロ ト       ω

Claims (3)

    【特許請求の範囲】
  1. (1)3つのデータ格納領域を具え、上記3つのデータ
    格納領域の各々は、データ受信端子を介して外部からデ
    ータを受信する手段、データ送信端末を介して外部へデ
    ータを送信する手段および演算実行ユニットへのデータ
    の供給並びに演算結果の受取りを行なうための手段をそ
    れぞれもち、上記3つのデータ格納領域の各々は、互い
    に排他的且つ循環的に、データ受信用、データ送信用、
    データ演算の書込み、読出し用の状態に切換わることが
    それぞれでき、 さらに、上記の状態切換を制御する手段と、上記のデー
    タに基いて所望の演算を実行する手段と、 上記の演算を制御する手段と を具えたことを特徴とする並列データ処理装置。
  2. (2)3つのデータ格納領域の各々を循環的且つ排他的
    に、データ受信用、データ送信用、データ演算用の3状
    態に順次切換え、データ受信用のデータ格納領域への外
    部からのデータの受信、データ送信用のデータ格納領域
    からの外部へのデータの送信、およびデータ演算用のデ
    ータ格納領域と演算ユニットとのデータ授受によるデー
    タ演算処理、とを並列に実行することを特徴とする並列
    データ処理方法。
  3. (3)3つのデータ格納領域の各々を、循環的且つ排他
    的に、データ受信用、データ送信用、データ演算用の3
    状態に順次切換える状態Aと、前記の3つのうちの2つ
    のデータ格納領域をデータ演算書込み専用およびデータ
    演算読出し専用とする状態Bを交互に切換え、上記3つ
    のデータ格納領域の各々をデータ演算用(状態A)、デ
    ータ演算の書込み専用(状態B)、データ送信用(状態
    A)、ノーオペレーション(状態B)、データ受信用(
    状態A)、データ演算の読出し専用(状態B)、続いて
    データ受信用(状態A)と6状態に順次循環的に切換え
    、データ受信、データ送信、データ演算処理を並列に実
    行することを特徴とする並列データ処理方法。
JP62298606A 1986-11-27 1987-11-26 データ処理装置とその処理方法 Expired - Fee Related JP2637749B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP61-280848 1986-11-27
JP28084886 1986-11-27

Publications (2)

Publication Number Publication Date
JPS63238653A true JPS63238653A (ja) 1988-10-04
JP2637749B2 JP2637749B2 (ja) 1997-08-06

Family

ID=17630823

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62298606A Expired - Fee Related JP2637749B2 (ja) 1986-11-27 1987-11-26 データ処理装置とその処理方法

Country Status (4)

Country Link
US (1) US5138704A (ja)
EP (1) EP0269995B1 (ja)
JP (1) JP2637749B2 (ja)
DE (1) DE3786330T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005029352A1 (ja) * 2003-09-22 2005-03-31 Nec Corporation 並列計算方法及び装置
US6895473B2 (en) 2000-05-12 2005-05-17 Fujitsu Limited Data control device and an ATM control device
WO2012132692A1 (ja) * 2011-03-29 2012-10-04 三菱重工業株式会社 並列処理システム及び並列処理システムの動作方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69032259T2 (de) * 1989-09-20 1998-08-13 Fujitsu Ltd Paralleldatenverarbeitungsanlage
FR2663138B1 (fr) * 1990-06-08 1992-09-11 France Etat Procede et circuit de traitement de signaux numeriques representatifs de vecteurs ou tuples de meme dimension et leur application a des ensembles de cardinalite et a des vecteurs ou tuples de dimensions quelconques.
JP2579246B2 (ja) * 1990-12-21 1997-02-05 シャープ株式会社 データ伝送装置
JPH04290155A (ja) * 1991-03-19 1992-10-14 Fujitsu Ltd 並列データ処理方式
WO1993014459A1 (en) * 1992-01-17 1993-07-22 Caelum Research Corporation Modular parallel processing system
US5546598A (en) * 1993-02-04 1996-08-13 Matsushita Electric Industrial Co., Ltd. Working situation management apparatus
JPH07271744A (ja) * 1994-03-31 1995-10-20 Matsushita Electric Ind Co Ltd 並列計算機
JP3125842B2 (ja) * 1995-03-03 2001-01-22 株式会社日立製作所 並列計算機での通信処理方法及びそのシステム
US5708835A (en) * 1995-03-27 1998-01-13 Hughes Electronics Dual-directional parallel processor
JPH0981532A (ja) * 1995-09-08 1997-03-28 Fujitsu Ltd 分散記憶型並列計算機
JP2792501B2 (ja) * 1996-02-28 1998-09-03 日本電気株式会社 データ転送方式およびデータ転送方法
US5999961A (en) * 1997-09-15 1999-12-07 California Institute Of Technology Parallel prefix operations in asynchronous processors
CN101840383B (zh) * 2010-04-28 2012-07-04 中国科学院自动化研究所 支持连续/离散地址多数据并行访问的可配置存储器
CN106502806B (zh) * 2016-10-31 2020-02-14 华为技术有限公司 一种总线协议命令处理装置及相关方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52153714A (en) * 1976-06-16 1977-12-21 Matsushita Electric Ind Co Ltd Filing device
JPS54127653A (en) * 1978-03-28 1979-10-03 Toshiba Corp Data processor
WO1982001777A1 (en) * 1980-11-10 1982-05-27 Wang Laboratories Data transmitting link
JPS5953957A (ja) * 1982-09-20 1984-03-28 Sanyo Electric Co Ltd メモリアクセス回路
US4504909A (en) * 1982-09-30 1985-03-12 General Electric Company Method of using an array processor for real time processing
US4546431A (en) * 1982-11-03 1985-10-08 Burroughs Corporation Multiple control stores in a pipelined microcontroller for handling jump and return subroutines
NL192637C (nl) * 1984-02-27 1997-11-04 Nippon Telegraph & Telephone Stelselprocessor.
CA1240400A (en) * 1984-12-20 1988-08-09 Herbert R. Carleton Topologically-distributed-memory multiprocessor computer

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895473B2 (en) 2000-05-12 2005-05-17 Fujitsu Limited Data control device and an ATM control device
WO2005029352A1 (ja) * 2003-09-22 2005-03-31 Nec Corporation 並列計算方法及び装置
JPWO2005029352A1 (ja) * 2003-09-22 2006-11-30 日本電気株式会社 並列計算方法及び装置
JP4612546B2 (ja) * 2003-09-22 2011-01-12 日本電気株式会社 並列計算方法及び装置
US7885796B2 (en) 2003-09-22 2011-02-08 Nec Soft, Ltd. Parallel calculation method and device
WO2012132692A1 (ja) * 2011-03-29 2012-10-04 三菱重工業株式会社 並列処理システム及び並列処理システムの動作方法
JP2012208680A (ja) * 2011-03-29 2012-10-25 Mitsubishi Heavy Ind Ltd 並列処理システム及び並列処理システムの動作方法
US9774671B2 (en) 2011-03-29 2017-09-26 Mitsubishi Heavy Industries, Ltd. Parallel processing system and operation method of parallel processing system

Also Published As

Publication number Publication date
JP2637749B2 (ja) 1997-08-06
EP0269995A3 (en) 1989-03-22
EP0269995A2 (en) 1988-06-08
EP0269995B1 (en) 1993-06-23
DE3786330T2 (de) 1993-11-25
US5138704A (en) 1992-08-11
DE3786330D1 (de) 1993-07-29

Similar Documents

Publication Publication Date Title
JPS63238653A (ja) データ処理装置とその処理方法
EP0112885B1 (en) Interconnecting plane for modular array processor
Mera et al. Compact domain-specific co-processor for accelerating module lattice-based KEM
WO2000076119A1 (en) Cryptographic processing system
EP3776284A1 (en) System and method for implementing a machine perception and dense algorithm integrated circuit
CN110704109B (zh) 一种椭圆曲线密码协处理器
CN109670581B (zh) 一种计算装置及板卡
CN109144472B (zh) 一种二元扩域椭圆曲线的标量乘法及其实现电路
CN110689123A (zh) 基于脉动阵列的长短期记忆神经网络前向加速系统及方法
CN110050259B (zh) 矢量处理器及其控制方法
CN107368459B (zh) 基于任意维数矩阵乘法的可重构计算结构的调度方法
CN101477456B (zh) 一种自相关运算单元及处理器
JP3277399B2 (ja) 画像処理用汎用プロセッサ
JP7136343B2 (ja) データ処理システム、方法、およびプログラム
WO2021033125A1 (en) Computational memory with processing element row and bank communications
JP7447088B2 (ja) 信号処理のためのベクトル化されたピーク検出
JP2760808B2 (ja) データ処理装置
Hosseini et al. Real-time parallel implementation of SSD stereo vision algorithm on CSX SIMD architecture
CN114063977A (zh) 通用数字信号处理装置、方法及系统
CN117762492A (zh) 数据处理方法、装置、计算机设备及可读存储介质
SU421994A1 (ja)
SU955083A1 (ru) Устройство дл обработки радиосигналов
SU866559A1 (ru) Устройство управлени векторным процессом
Abuhamdeh The GAM II pyramid
JPS60136874A (ja) ベクトル処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees