JPH04116768A - ベクトルデータ処理装置 - Google Patents
ベクトルデータ処理装置Info
- Publication number
- JPH04116768A JPH04116768A JP23735590A JP23735590A JPH04116768A JP H04116768 A JPH04116768 A JP H04116768A JP 23735590 A JP23735590 A JP 23735590A JP 23735590 A JP23735590 A JP 23735590A JP H04116768 A JPH04116768 A JP H04116768A
- Authority
- JP
- Japan
- Prior art keywords
- data
- vector
- vector register
- register
- address
- 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.)
- Pending
Links
- 239000013598 vector Substances 0.000 title claims abstract description 139
- 230000004044 response Effects 0.000 claims description 5
- 230000000694 effects Effects 0.000 description 3
- 230000005764 inhibitory process Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はベクトルデータ処理装置に関し、特に要素間に
干渉のあるリストベクトルを高速に処理するためのベク
トルデータ処理装置に関する。
干渉のあるリストベクトルを高速に処理するためのベク
トルデータ処理装置に関する。
従来この種のベクトルデータ処理装置は、第1のベクト
ルレジスタからのリードデータをアドレスとしてメイン
メモリから該アドレスに格納されたデータを読み出して
第2のベクトルレジスタに順次格納し、この第1のベク
トルレジスタ内に同一のデータが含まれているか否かに
関わらず、第2のベクトルレジスタの内容を順次読み出
して演算を実行するようになっていた。
ルレジスタからのリードデータをアドレスとしてメイン
メモリから該アドレスに格納されたデータを読み出して
第2のベクトルレジスタに順次格納し、この第1のベク
トルレジスタ内に同一のデータが含まれているか否かに
関わらず、第2のベクトルレジスタの内容を順次読み出
して演算を実行するようになっていた。
上述した従来のベクトルデータ処理装置は、第1のベク
トルレジスタに同一のデータが含まれているか否かに関
わらず、第2のベクトルレジスタの内容を順次読み出し
て演算を実行するようになっていたため、第2のベクト
ルレジスタ内に同一のデータが含まれていた場合、即ち
第1のベクトルレジスタ内のデータをVl(x)(x=
1゜pでρはベクトル長)としたとき、V 1 (i)
=V1(j) (i、 jはl≦i≦6.1≦j≦1な
る整数で1f−j)なるデータV1(i)、Vl(Dが
第1のベクトルレジスタ内に含まれていた場合にM f
f 1 (1)) −A (M (V 1 (1)))
M (V 1 (2)) −A (M (V 1 (2
)))M (V 1 (i))=A (M (V 1
(i)))M (V 1 (j))=A (M (V
1 (j)))M (V 1 (A))←A(M(V
l(ρ)))(但しM (y )はYをアドレスとする
メインメモリ上のデータAは任意の演算) なる一連の処理を行うとき、 M (V 1(1))、 〜M (V 1 (i7))
を1度ニメインメモリから第2のベクトルレジスタに転
送して演算を行うと、 M (Vl(D)=A (M (Vl(j))の右辺の
M (V 1 (D)には M (V 1 (i)) ←A (M (V 1 (i
)))により処理された左辺のM(Vl(i))が入る
べきであるにも関わらず、処理前のM(Vl(i))が
入力されてしまう。従って、上記一連の演算を分割して M ff Hl)) −A (M (V Hl)))M
(vl(i乃←A (M (V 1 (i)))の処理
が終了してから M (V 1 (i+1)) =A (M (V 1
(i+1))M(Vl(u乃←A (M (V l (
A))を処理するなどの操作が必要であり、メインメモ
リとベクトルレジスタ間のデータ転送に時間がかかると
いう欠点がある。
トルレジスタに同一のデータが含まれているか否かに関
わらず、第2のベクトルレジスタの内容を順次読み出し
て演算を実行するようになっていたため、第2のベクト
ルレジスタ内に同一のデータが含まれていた場合、即ち
第1のベクトルレジスタ内のデータをVl(x)(x=
1゜pでρはベクトル長)としたとき、V 1 (i)
=V1(j) (i、 jはl≦i≦6.1≦j≦1な
る整数で1f−j)なるデータV1(i)、Vl(Dが
第1のベクトルレジスタ内に含まれていた場合にM f
f 1 (1)) −A (M (V 1 (1)))
M (V 1 (2)) −A (M (V 1 (2
)))M (V 1 (i))=A (M (V 1
(i)))M (V 1 (j))=A (M (V
1 (j)))M (V 1 (A))←A(M(V
l(ρ)))(但しM (y )はYをアドレスとする
メインメモリ上のデータAは任意の演算) なる一連の処理を行うとき、 M (V 1(1))、 〜M (V 1 (i7))
を1度ニメインメモリから第2のベクトルレジスタに転
送して演算を行うと、 M (Vl(D)=A (M (Vl(j))の右辺の
M (V 1 (D)には M (V 1 (i)) ←A (M (V 1 (i
)))により処理された左辺のM(Vl(i))が入る
べきであるにも関わらず、処理前のM(Vl(i))が
入力されてしまう。従って、上記一連の演算を分割して M ff Hl)) −A (M (V Hl)))M
(vl(i乃←A (M (V 1 (i)))の処理
が終了してから M (V 1 (i+1)) =A (M (V 1
(i+1))M(Vl(u乃←A (M (V l (
A))を処理するなどの操作が必要であり、メインメモ
リとベクトルレジスタ間のデータ転送に時間がかかると
いう欠点がある。
また、上述したようなアドレスの一致が多数ある場合に
は、メインメモリとへクトルレンスタ間のデータ転送回
数が増加し、それに伴ってデータ転送に要する時間が増
大してしまうとともに、分割された個々のベクトル長が
短くなってしまい、ベクトルデータ処理装置としての機
能が充分に発揮されないため、同一の演算の繰り返しで
あるにも関わらずスカラ処理を施さなければならないと
いった欠点がある。
は、メインメモリとへクトルレンスタ間のデータ転送回
数が増加し、それに伴ってデータ転送に要する時間が増
大してしまうとともに、分割された個々のベクトル長が
短くなってしまい、ベクトルデータ処理装置としての機
能が充分に発揮されないため、同一の演算の繰り返しで
あるにも関わらずスカラ処理を施さなければならないと
いった欠点がある。
本発明のベクトルデータ処理装置は、第1のベクトルレ
ジスタからのリードデータをアドレスとしてメインメモ
リから該アドレスに格納されたデータを読み圧して第2
のベクトルレジスタに順次格納する手段を有するベクト
ルデータ処理装置において、前記第1のベクトルレジス
タ内に同一のデータを含む場合は、同一の番号となるよ
う要素番号を生成して、第3のベクトルレジスタに格納
する手段を有するとともに、前記第2のベクトルレジス
タの各要素に対応するリード抑止フラグを設け、前記第
3のベクトルレジスタの内容をアドレスとして前記第2
のベクトルレジスタの内容を読み出す手段と、前記第2
のベクトルレジスタからのデータの読出しに対応して前
記リード抑止フラグの対応するビットをセットする手段
と、前記第2のベクトルレジスタへのデータの書込みに
対応して前記リード抑止フラグの対応するヒツトをリセ
ットする手段と、第2のベクトルレジスタの各アドレス
に対応するリード抑止フラグがセットされている場合に
は前記リード抑止フラグがリセットされるまで、第2の
ベクトルレジスタの対応する要素からの読出しを待ちあ
わせるよう制御する制御回路とを有している。
ジスタからのリードデータをアドレスとしてメインメモ
リから該アドレスに格納されたデータを読み圧して第2
のベクトルレジスタに順次格納する手段を有するベクト
ルデータ処理装置において、前記第1のベクトルレジス
タ内に同一のデータを含む場合は、同一の番号となるよ
う要素番号を生成して、第3のベクトルレジスタに格納
する手段を有するとともに、前記第2のベクトルレジス
タの各要素に対応するリード抑止フラグを設け、前記第
3のベクトルレジスタの内容をアドレスとして前記第2
のベクトルレジスタの内容を読み出す手段と、前記第2
のベクトルレジスタからのデータの読出しに対応して前
記リード抑止フラグの対応するビットをセットする手段
と、前記第2のベクトルレジスタへのデータの書込みに
対応して前記リード抑止フラグの対応するヒツトをリセ
ットする手段と、第2のベクトルレジスタの各アドレス
に対応するリード抑止フラグがセットされている場合に
は前記リード抑止フラグがリセットされるまで、第2の
ベクトルレジスタの対応する要素からの読出しを待ちあ
わせるよう制御する制御回路とを有している。
次に本発明について図面を参照して説明する。
第1図は、本発明の一実施例を示す。第1図において、
本発明のベクトルデータ処理装置が、リストベクトル処
理を行う際の動作を説明する。ここでは、リストベクト
ル処理の一例として、ベクトル長1=32、ベクトルレ
ジスタ1,2.3内の要素をそれぞれV 1 (x)、
V 2 (x)、 V 3 (x)。
本発明のベクトルデータ処理装置が、リストベクトル処
理を行う際の動作を説明する。ここでは、リストベクト
ル処理の一例として、ベクトル長1=32、ベクトルレ
ジスタ1,2.3内の要素をそれぞれV 1 (x)、
V 2 (x)、 V 3 (x)。
(x= 1 、 ・−、32)、M (y )をYアド
レスとするメインメモリ上のデータ、Aを1オペランド
を入カドスル任意ノ演算トシ、V 1 (10)=V
l (12)とした時の M ff 1 (1)) ←A (M (V 1 (1
)))M (■2(2)) ←A (M (V 1 (
2)))M ff 1 (32)) ←A (M ff
1 (32)))なる一連の処理を ベクトルギヤザー命令 : V 2 (x)=M (V 1 (x)) 。
レスとするメインメモリ上のデータ、Aを1オペランド
を入カドスル任意ノ演算トシ、V 1 (10)=V
l (12)とした時の M ff 1 (1)) ←A (M (V 1 (1
)))M (■2(2)) ←A (M (V 1 (
2)))M ff 1 (32)) ←A (M ff
1 (32)))なる一連の処理を ベクトルギヤザー命令 : V 2 (x)=M (V 1 (x)) 。
N (x)←X。
(但しN (x)は要素番号でV 1 (a) = V
1 (b)(a≦b)のときN(b)=N(a))V
3 (x)←N(x) と、ベクトル演算A命令 :V2 (V3(x))=A (V2 (V3(x))
。
1 (b)(a≦b)のときN(b)=N(a))V
3 (x)←N(x) と、ベクトル演算A命令 :V2 (V3(x))=A (V2 (V3(x))
。
とベクトルギヤザ命令
: M (V 1 (x)) =V 2 (V 3 (
x)) 。
x)) 。
という3つの命令を起動することにより処理する。
ベクトルレジスタ制御部4ば、信号線101を通してベ
クトルギヤザー命令指示信号を入力すると、該指示信号
によりリードアドレス“1”・・・ “32″を信号線
102を通して順次出力し、ベクトルレジスタ1のリー
ドを指示する。
クトルギヤザー命令指示信号を入力すると、該指示信号
によりリードアドレス“1”・・・ “32″を信号線
102を通して順次出力し、ベクトルレジスタ1のリー
ドを指示する。
ベクトルレジスタ1内の要素v(1)、・・・、Vl(
32)は信号線103を通して順次リードされ、下段の
演算器5と、選択回路60入力となる。
32)は信号線103を通して順次リードされ、下段の
演算器5と、選択回路60入力となる。
選択回路6は、演算器5の演算結果を信号線104を通
して、またベクトルレジスタ1からのリードデータを信
号線103を通して入力すると、図示されない制御回路
の制御によりベクトルレジスタ1からのリードデータを
選択し、レジスタ7に格納する。レジスタ7の出力デー
タは信号線105を通して選択回路8に入力され、信号
線106.107を通してそれぞれ入力されたレジスタ
11及び13の出力データとの3つから図示されない制
御回路の制御により、選択回路8においてレジスタ7の
出力データが選択され、レジスタ9に格納された後、信
号線108を通してデータ供給部24に出力される。デ
ータ供給部24では、信号線108を通して入力した該
データをメインメモリアドレスとして信号線121を通
してメインメモリ25に対して出力し、メインメモリ2
5から該アドレスに格納されたデータを読み出し、信号
線122を通して入力すると共に信号線109を通して
順次出力する。またデータ供給部24には要素番号生成
回路が含まれ、該要素番号生成回路では、信号線108
を通して入力する■1 (1)、−、V 1 (32)
カら要素番号N(1)、 ・、 N(32)を生成する
。ここで仮定からV 1 (10)=V 1 (12)
であるので、N (10) = N (12)となるよ
う、N(a)=a、N(12)=10 (a=1.2
.−.11゜13、・・・、32)とする。要素番号N
(1)、・・・、N(32)は信号線110を通して順
次出力される。選択回路14では、信号線105,10
6,107゜109.110を通して入力するデータか
ら、図示されない制御回路の制御により信号線109を
通して順次入力すルM (V 1(1))、−、M (
V 1(32))なるデータを選択し、下段のレジスタ
15に順次出力する。レジスタ15はM (V 1 (
1)) 。
して、またベクトルレジスタ1からのリードデータを信
号線103を通して入力すると、図示されない制御回路
の制御によりベクトルレジスタ1からのリードデータを
選択し、レジスタ7に格納する。レジスタ7の出力デー
タは信号線105を通して選択回路8に入力され、信号
線106.107を通してそれぞれ入力されたレジスタ
11及び13の出力データとの3つから図示されない制
御回路の制御により、選択回路8においてレジスタ7の
出力データが選択され、レジスタ9に格納された後、信
号線108を通してデータ供給部24に出力される。デ
ータ供給部24では、信号線108を通して入力した該
データをメインメモリアドレスとして信号線121を通
してメインメモリ25に対して出力し、メインメモリ2
5から該アドレスに格納されたデータを読み出し、信号
線122を通して入力すると共に信号線109を通して
順次出力する。またデータ供給部24には要素番号生成
回路が含まれ、該要素番号生成回路では、信号線108
を通して入力する■1 (1)、−、V 1 (32)
カら要素番号N(1)、 ・、 N(32)を生成する
。ここで仮定からV 1 (10)=V 1 (12)
であるので、N (10) = N (12)となるよ
う、N(a)=a、N(12)=10 (a=1.2
.−.11゜13、・・・、32)とする。要素番号N
(1)、・・・、N(32)は信号線110を通して順
次出力される。選択回路14では、信号線105,10
6,107゜109.110を通して入力するデータか
ら、図示されない制御回路の制御により信号線109を
通して順次入力すルM (V 1(1))、−、M (
V 1(32))なるデータを選択し、下段のレジスタ
15に順次出力する。レジスタ15はM (V 1 (
1)) 。
・・・、 M (V 1 (32))を順次入力、格納
し、信号線111を通して順次出力する。
し、信号線111を通して順次出力する。
ベクトルレジスタ2は、信号線111を通してM (V
1 (1)) 、 ・、 M (V 1 (32))
を順次入力すると共に、ベクトルレジスタ制御部4から
信号線112を通して出力される制御信号を入力し、該
制御信号の制御によりM (V 1 (1)) 、・・
・、M(Vl(32)をそれぞれアドレス“1” ・・
・ “32”に格納する。
1 (1)) 、 ・、 M (V 1 (32))
を順次入力すると共に、ベクトルレジスタ制御部4から
信号線112を通して出力される制御信号を入力し、該
制御信号の制御によりM (V 1 (1)) 、・・
・、M(Vl(32)をそれぞれアドレス“1” ・・
・ “32”に格納する。
選択回路16では、信号線1’05,106゜107.
109,110を通して入力するデータから、図示され
ない制御回路の制御により信号線110を通して順次入
力するN (1) 、・・・、 N(32)なるデータ
を選択し、下段のレジスタ17に順次出力する。レジス
タ17はN (1) 、・・・、 N(32)を順次入
力し格納し信号線113を通して順次圧力する。
109,110を通して入力するデータから、図示され
ない制御回路の制御により信号線110を通して順次入
力するN (1) 、・・・、 N(32)なるデータ
を選択し、下段のレジスタ17に順次出力する。レジス
タ17はN (1) 、・・・、 N(32)を順次入
力し格納し信号線113を通して順次圧力する。
ベクトルレジスタ3は信号線113を通してN(1)、
・・・、 N(32)を順次入力すると共に、ベクトル
レジスタ制御部4から信号線114を通して出力される
制御信号を入力し、該制御信号の制御によりN (1)
、・・・、 N(32)をそれぞれアドレス“1″
・・・ “32”に格納する。
・・・、 N(32)を順次入力すると共に、ベクトル
レジスタ制御部4から信号線114を通して出力される
制御信号を入力し、該制御信号の制御によりN (1)
、・・・、 N(32)をそれぞれアドレス“1″
・・・ “32”に格納する。
次にベクトルレジスタ制御部4は、信号線101を通し
てベクトル演算A命令指示信号を入力すると、ベクトル
レジスタ制御部4内に保有するリード抑止フラグを全て
0クリアし、ベクトルレジスタ3のリードアドレス“l
” ・・・ 32”を信号線114を通して順次圧力す
る。ベクトルレジスタ3では信号線114を通して入力
するリードアドレスに従って該アドレス上の要素をリー
ドし、信号線116を通して順次ベクトルレジスタ制御
部4に出力する。
てベクトル演算A命令指示信号を入力すると、ベクトル
レジスタ制御部4内に保有するリード抑止フラグを全て
0クリアし、ベクトルレジスタ3のリードアドレス“l
” ・・・ 32”を信号線114を通して順次圧力す
る。ベクトルレジスタ3では信号線114を通して入力
するリードアドレスに従って該アドレス上の要素をリー
ドし、信号線116を通して順次ベクトルレジスタ制御
部4に出力する。
ベクトルレジスタ制御部4では、ベクトルレジスタ3か
らの入力データV 3 (1) 、・・・、V3(32
)を、ベクトルレジスタ2のリードアドレスとして該ア
ドレスに対応するリート抑止フラグがOであることを確
認してベクトルレジスタ2に順次出力するとともに、該
リード抑止フラグに1をセットする6 ベクトルレジスタ2では、信号線112を通してリード
アドレスV 3 (1) 、・・・、V3(32)を順
次入力し、該リードアドレス上の要素V2(V3(1)
)、・・・、 V 2 (V 3 (32))を順次リ
ードして、信号線118を通して出力する。
らの入力データV 3 (1) 、・・・、V3(32
)を、ベクトルレジスタ2のリードアドレスとして該ア
ドレスに対応するリート抑止フラグがOであることを確
認してベクトルレジスタ2に順次出力するとともに、該
リード抑止フラグに1をセットする6 ベクトルレジスタ2では、信号線112を通してリード
アドレスV 3 (1) 、・・・、V3(32)を順
次入力し、該リードアドレス上の要素V2(V3(1)
)、・・・、 V 2 (V 3 (32))を順次リ
ードして、信号線118を通して出力する。
演算器18ではベクトルレジスタ2の出力データを順次
入力演算し、演算結果A (V2 (V3(1)))、
−、A (V 2 (V 3 (32)) 全信号線1
19を通して順次出力する。
入力演算し、演算結果A (V2 (V3(1)))、
−、A (V 2 (V 3 (32)) 全信号線1
19を通して順次出力する。
選択回路10では演算器18からの出力データと、ベク
トルレジスタ2からのり一ドデータをそれぞれ信号線1
19,118を通して入力し、図示されない制御回路の
制御により演算器18からの出力データA (V2 (
V3(1)))、−、A (V2(V 3 (32))
)を選択し、レジスタ11に格納する。A (V2
(v3(1)))、 ・ 、A (V2 (V3(3
2)))は信号線106を通して順次レジスタ11から
出力され、選択回路14に入力される。
トルレジスタ2からのり一ドデータをそれぞれ信号線1
19,118を通して入力し、図示されない制御回路の
制御により演算器18からの出力データA (V2 (
V3(1)))、−、A (V2(V 3 (32))
)を選択し、レジスタ11に格納する。A (V2
(v3(1)))、 ・ 、A (V2 (V3(3
2)))は信号線106を通して順次レジスタ11から
出力され、選択回路14に入力される。
選択回路14では、信号線105,106゜107.1
09,110を通して入力するデータの中から、図示さ
れない制御回路の制御によって信号線106を通して入
力するA (V2 (V3(1)))、 A (V2
(V3(32)))を選択して下段のレジスタ15に格
納する。レジスタ15に格納されたA (V2 (V3
(1)))、 ・、 A (V2 (V3(32)))
は信号線111を通して順次出力され、ベクトルレジス
タ制御部4の制御によりそれぞれベクトルレジスタ2の
アドレスV3(1)、・・・、V3(32)に順次格納
される。これと同時にベクトルレジスタ制御部4では、
該アドレスV 3 (1) 、・・・、V3(32)に
対応するリード抑止フラグを順次0にクリアする。
09,110を通して入力するデータの中から、図示さ
れない制御回路の制御によって信号線106を通して入
力するA (V2 (V3(1)))、 A (V2
(V3(32)))を選択して下段のレジスタ15に格
納する。レジスタ15に格納されたA (V2 (V3
(1)))、 ・、 A (V2 (V3(32)))
は信号線111を通して順次出力され、ベクトルレジス
タ制御部4の制御によりそれぞれベクトルレジスタ2の
アドレスV3(1)、・・・、V3(32)に順次格納
される。これと同時にベクトルレジスタ制御部4では、
該アドレスV 3 (1) 、・・・、V3(32)に
対応するリード抑止フラグを順次0にクリアする。
以上の様なベクトル演算A命令の処理において、ベクト
ルレジスタ3からのリードデータV 3 (12)V
3 (10)であるので、ベクトルレジスタ制御部4に
おいて、ベクトルレジスタ3からV 3 (12)を入
力した際、ベクトルレジスタ2のアドレスV 3 (1
2)= V 3 (10))に対応するリード抑止フラ
グは、ベクトルレジスタ2のアドレスV 3 (10)
に格納されていたデータに対する処理が完了して、ベク
トルレジスタ2のアドレスV 3 (10)に演算結果
A(V 2 (V 3 (10)))がライトされた後
でないと0クリアされないため、該リード抑止フラグが
Oクリアされるまでは、ベクトルレジスタ制御部4では
、ベクトルレジスタ3に与えるリードアドレスを“12
”のまま更新せず、またベクトルレジスタ2に与えるリ
ードアドレスは、V3(11)のまま保持して、それぞ
れ出力し、A (V2 (V3(10)乃がベクトルレ
ジスタ2のV3(10) (=V3 (12))上にラ
イトされ、アドレスV 3 (10)に対応するリード
抑止フラグが0クリアされたところで、ベクトルレジス
タ3のリードアドレス更新を再開するとともに、ベクト
ルレジスタ2のリードアドレスとしてV 3 (12)
を出力し、以下は上述したような処理を行う。
ルレジスタ3からのリードデータV 3 (12)V
3 (10)であるので、ベクトルレジスタ制御部4に
おいて、ベクトルレジスタ3からV 3 (12)を入
力した際、ベクトルレジスタ2のアドレスV 3 (1
2)= V 3 (10))に対応するリード抑止フラ
グは、ベクトルレジスタ2のアドレスV 3 (10)
に格納されていたデータに対する処理が完了して、ベク
トルレジスタ2のアドレスV 3 (10)に演算結果
A(V 2 (V 3 (10)))がライトされた後
でないと0クリアされないため、該リード抑止フラグが
Oクリアされるまでは、ベクトルレジスタ制御部4では
、ベクトルレジスタ3に与えるリードアドレスを“12
”のまま更新せず、またベクトルレジスタ2に与えるリ
ードアドレスは、V3(11)のまま保持して、それぞ
れ出力し、A (V2 (V3(10)乃がベクトルレ
ジスタ2のV3(10) (=V3 (12))上にラ
イトされ、アドレスV 3 (10)に対応するリード
抑止フラグが0クリアされたところで、ベクトルレジス
タ3のリードアドレス更新を再開するとともに、ベクト
ルレジスタ2のリードアドレスとしてV 3 (12)
を出力し、以下は上述したような処理を行う。
以上の処理により、ベクトルレジスタ2のアドレス“1
″ ・・・ “9”10”11”“12″ 13
” ・・・ “32”にはそれぞれ、A (M ffH
l)))、−、A (M (V H9)))、A(A
(M (V 1 (10))))、 A (M (Vl
(11)))。
″ ・・・ “9”10”11”“12″ 13
” ・・・ “32”にはそれぞれ、A (M ffH
l)))、−、A (M (V H9)))、A(A
(M (V 1 (10))))、 A (M (Vl
(11)))。
M (V 1 (12))、A (M (V 1 (
13)))、 ・ 、A(M (V 1 (32))
)が格納される。
13)))、 ・ 、A(M (V 1 (32))
)が格納される。
最後に、ベクトルレジスタ命令が起動され、ベクトルレ
ジスタ制御部4に信号線101を通してベクトルスキャ
タ命令指示信号が入力されると、ベクトルレジスタ制御
部4は、ベクトルレジスタ3に対し、信号線114を通
してリードアドレス″1” ・・・ “32″を順次出
力し、ベクトルレジスタ3では該リードアドレス上のデ
ータv3(1)、・・・、V3(32)を信号線116
を通して順次ベクトルレジスタ制御部4に出力する。
ジスタ制御部4に信号線101を通してベクトルスキャ
タ命令指示信号が入力されると、ベクトルレジスタ制御
部4は、ベクトルレジスタ3に対し、信号線114を通
してリードアドレス″1” ・・・ “32″を順次出
力し、ベクトルレジスタ3では該リードアドレス上のデ
ータv3(1)、・・・、V3(32)を信号線116
を通して順次ベクトルレジスタ制御部4に出力する。
ベクトルレジスタ制御部4は該ベクトルレジスタ3から
のり−Fデータをベクトルレジスタ2のリードアドレス
として信号線112を通して順次出力し、ベクトルレジ
スタ2にリード指示を与えると同期して、ベクトルレジ
スタ1に対し、リードアドレス“1″ ・・・ “32
”を信号線102を通して順次圧力する。
のり−Fデータをベクトルレジスタ2のリードアドレス
として信号線112を通して順次出力し、ベクトルレジ
スタ2にリード指示を与えると同期して、ベクトルレジ
スタ1に対し、リードアドレス“1″ ・・・ “32
”を信号線102を通して順次圧力する。
ベクトルレジスタ1,2は、それぞれ信号線102.1
12を通して入力したリードアドレスに従い、該アドレ
ス上のデータをリードして、それぞれ信号線103,1
18を通して出力する。
12を通して入力したリードアドレスに従い、該アドレ
ス上のデータをリードして、それぞれ信号線103,1
18を通して出力する。
選択回路6は、信号線104を通して演算器5の圧力デ
ータを、信号線103を通してベクトルレジスタ1から
のリードデータを入力すると、図示されない制御回路の
制御によりベクトルレジスタlからのリードデータV
1 (1)、 −、V 1 (32)表選択し、レジス
タ7に順次格納する。
ータを、信号線103を通してベクトルレジスタ1から
のリードデータを入力すると、図示されない制御回路の
制御によりベクトルレジスタlからのリードデータV
1 (1)、 −、V 1 (32)表選択し、レジス
タ7に順次格納する。
選択回路10は、信号線119を通して演算器18の出
力データを信号線118を通してベクトルレジスタ2か
らのリードデータを入力すると、図示さhない制御回路
の制御により、ベクトルレジスタ2からのリードデータ
A (M (V 1(1)))、 ・、 A (M (
V 1(9)))、 A (A (M (vl(10)
)))、 A (M (V 1 (11)))、 A
(A (M (Vl (10))))、 A (M (
V 1 (13)))、・・・、 A (M(vl (
32)))を選択し、レジスタ11に順次格納する。
力データを信号線118を通してベクトルレジスタ2か
らのリードデータを入力すると、図示さhない制御回路
の制御により、ベクトルレジスタ2からのリードデータ
A (M (V 1(1)))、 ・、 A (M (
V 1(9)))、 A (A (M (vl(10)
)))、 A (M (V 1 (11)))、 A
(A (M (Vl (10))))、 A (M (
V 1 (13)))、・・・、 A (M(vl (
32)))を選択し、レジスタ11に順次格納する。
レジスタ7.11はそれぞれ信号線105゜106を通
して順次データを出力し、それぞれ選択回路2,20で
図示されない制御回路の制御により選択され、それぞれ
レジスタ9,21に格納され、レジスタ9,21はそれ
ぞれ信号線108.120を通してデータ供給部24に
該データを順次出力する。
して順次データを出力し、それぞれ選択回路2,20で
図示されない制御回路の制御により選択され、それぞれ
レジスタ9,21に格納され、レジスタ9,21はそれ
ぞれ信号線108.120を通してデータ供給部24に
該データを順次出力する。
データ供給部24では、上記のようにしてアドレスV
1 (1)、 ・、 V 1 (32)とデータA(M
(Vl(1υ)、 ・・・、 A (M (VB
2ン))、 A (A (M (V 1(10
))乃、 A (M (V 1 (11)))、 A
(A (M (Vl (10))))、 A (M (
V l (13)))、−、A (Mff 1 (32
))))を入力し、V 1 (1)とA (M (V
1(1)))、・・・、 V 1 (9)とA (M
(V 1 (9))) 、 V 1 (10)とA (
A (M (V 1 (10))))、 V 1 (1
1)とA (M(V 1 (11)))、 V 1 (
12)とA (A (M (Vl(10))))、 V
l (13)とA (M (V l (13)))、
−・・V 1 (32)とA (M (V 1 (3
2)))をそれぞれ同時に信号線121を通してメイン
メモリ25に出力し、メインメモリ25では各アドレス
に対応するデータを格納する。
1 (1)、 ・、 V 1 (32)とデータA(M
(Vl(1υ)、 ・・・、 A (M (VB
2ン))、 A (A (M (V 1(10
))乃、 A (M (V 1 (11)))、 A
(A (M (Vl (10))))、 A (M (
V l (13)))、−、A (Mff 1 (32
))))を入力し、V 1 (1)とA (M (V
1(1)))、・・・、 V 1 (9)とA (M
(V 1 (9))) 、 V 1 (10)とA (
A (M (V 1 (10))))、 V 1 (1
1)とA (M(V 1 (11)))、 V 1 (
12)とA (A (M (Vl(10))))、 V
l (13)とA (M (V l (13)))、
−・・V 1 (32)とA (M (V 1 (3
2)))をそれぞれ同時に信号線121を通してメイン
メモリ25に出力し、メインメモリ25では各アドレス
に対応するデータを格納する。
以上の様にして処理を終了する。
第2図は、本発明の一実施例のデータ供給部24に含有
されている要素番号生成回路を示す。
されている要素番号生成回路を示す。
第2図において、上述したリストベクトル処理における
要素番号生成回路の動作を説明する。
要素番号生成回路の動作を説明する。
図示されない制御回路の制御により、ライトアドレスカ
ウンタ30にはベクトルキャザー命令起動後、適当なタ
イミングで“1”がセットされる。
ウンタ30にはベクトルキャザー命令起動後、適当なタ
イミングで“1”がセットされる。
信号線108を通してベクトルレジスタ1からのリード
データVHI)、・・・、 V 1 (32)が順次レ
ジスタファイル32に入力されるのに同期して、ライト
アドレスカウンタ30から順次“l”、′2”・・・
“32”が出力され、信号線187を通してレジスタフ
ァイル32に入力され、レジスタファイル32ではアド
レス“1″にV 1 (1)を、アドレス“2”にV
1 (2)を、アドレス“32″にV 1 (32)を
順次格納する。
データVHI)、・・・、 V 1 (32)が順次レ
ジスタファイル32に入力されるのに同期して、ライト
アドレスカウンタ30から順次“l”、′2”・・・
“32”が出力され、信号線187を通してレジスタフ
ァイル32に入力され、レジスタファイル32ではアド
レス“1″にV 1 (1)を、アドレス“2”にV
1 (2)を、アドレス“32″にV 1 (32)を
順次格納する。
レジスタ31では、信号線108を通して順次V1(1
)、・・・、 V 1 (32)を入力格納し、信号線
188を通して順次出力する。
)、・・・、 V 1 (32)を入力格納し、信号線
188を通して順次出力する。
比較器33,34.・・・、64はそれぞれ信号線15
5.156.・・・、186を通して、それぞれレジス
タファイル32のアドレス“1”、′2”32”の内容
を入力するとともに、信号線188を通してレジスタ3
1の圧力データを入力し、レジスタファイル32のリー
ドデータとレジスタ31の出力データとの比較を行ない
、一致した場合は“1″を不一致の場合には“0”をそ
れぞれ出力する。比較器33.・・・、64の比カデー
タをそれぞれC(1) 、・・・、 C(32)とする
。
5.156.・・・、186を通して、それぞれレジス
タファイル32のアドレス“1”、′2”32”の内容
を入力するとともに、信号線188を通してレジスタ3
1の圧力データを入力し、レジスタファイル32のリー
ドデータとレジスタ31の出力データとの比較を行ない
、一致した場合は“1″を不一致の場合には“0”をそ
れぞれ出力する。比較器33.・・・、64の比カデー
タをそれぞれC(1) 、・・・、 C(32)とする
。
要素番号出力回路65では信号線123,124.・・
・154を通して比較器33,34.・・・、64のd
カデータC(b) (b= 1 、・・・、32)を入
力すると、該入力データの“1″の立っているデータの
うち、bの最も小さい値を要素番号として信号線110
を通して出力する。例えば、レジスタ31からV 1
(2)が出力されたとすると、これに同期してレジスタ
ファイル32からV 1 (1)、 V 1 (2)が
それぞれ信号線155,156を通して出力され、比較
器33.34では、信号線112を通してVl(2)を
入力するとともに、それぞれ信号線155゜156を通
してV 1 (1)、 V 1 (2)を入力し、比較
結果として比較器33はC(1)=Cを、比較器34は
C(2)=1をそれぞれ信号線123,124を通して
圧力する。
・154を通して比較器33,34.・・・、64のd
カデータC(b) (b= 1 、・・・、32)を入
力すると、該入力データの“1″の立っているデータの
うち、bの最も小さい値を要素番号として信号線110
を通して出力する。例えば、レジスタ31からV 1
(2)が出力されたとすると、これに同期してレジスタ
ファイル32からV 1 (1)、 V 1 (2)が
それぞれ信号線155,156を通して出力され、比較
器33.34では、信号線112を通してVl(2)を
入力するとともに、それぞれ信号線155゜156を通
してV 1 (1)、 V 1 (2)を入力し、比較
結果として比較器33はC(1)=Cを、比較器34は
C(2)=1をそれぞれ信号線123,124を通して
圧力する。
要素番号出力回路65では、信号線123゜・・・ 1
54を通して、それぞれC(1) 、・・・、 C(3
2)を入力すると(C(3) 、・・・、C(32)は
0”あるいは“1″)、C(b)(b=1.・・・、3
2)の1″の立っているデータの中で、bの最も小さい
値、即ち、C(1)= O、C(2)= 1であるので
“2”を要素番号として出力する。同様に例えばレジス
タ31からV 1 (12)が出力されると、これに同
期してレジスタファイル32のアドレス“l” ・・・
12”からそれぞれVl(1)、・・・、 V 1 (
12)が出力され、該データをそれぞれ入力した比較器
33、・・・、44では、V 1 (10) = V
1 (32)であるから、それぞれC(1)=C(2)
=・・・=C(9)=0. C(10)= 1 、 C
(11)= 0 、 C(12)= 1を出力し、該C
(b)を入力した要素番号出力回路65では、bの最も
小さい値“10″を出力する。
54を通して、それぞれC(1) 、・・・、 C(3
2)を入力すると(C(3) 、・・・、C(32)は
0”あるいは“1″)、C(b)(b=1.・・・、3
2)の1″の立っているデータの中で、bの最も小さい
値、即ち、C(1)= O、C(2)= 1であるので
“2”を要素番号として出力する。同様に例えばレジス
タ31からV 1 (12)が出力されると、これに同
期してレジスタファイル32のアドレス“l” ・・・
12”からそれぞれVl(1)、・・・、 V 1 (
12)が出力され、該データをそれぞれ入力した比較器
33、・・・、44では、V 1 (10) = V
1 (32)であるから、それぞれC(1)=C(2)
=・・・=C(9)=0. C(10)= 1 、 C
(11)= 0 、 C(12)= 1を出力し、該C
(b)を入力した要素番号出力回路65では、bの最も
小さい値“10″を出力する。
以上の様な動作により、要素番号が生成される。
〔発明の効果〕
以上説明したように本発明は、第1のベクトルレジスタ
からのリードデータをアドレスとして、メインメモリか
ら該アドレスに格納されたデータを読み出して第2のベ
クトルレジスタに順次格納する手段を有するベクトルデ
ータ処理装置において、前記第1のベクトルレジスタ内
に同一のデータを含む場合は同一の番号となるよう要素
番号を生成して、第3のベクトルレジスタに格納する手
段を有するとともに、第2のベクトルレジスタの各要素
に対応するリード抑止フラグを設け、前記第3のベクト
ルレジスタの内容をアドレスとして前記第2のベクトル
レジスタの内容を読み出す手段と、前記第2のベクトル
レジスタからのデータの読出しに対応して前記リード抑
止フラグの対応するビットをセットする手段と、前記第
2のベクトルレジスタへのデータの書込みに対応して前
記リード抑止フラグの対応するビットをリセットする手
段と、アクセス先のアドレスに対応するり−ド抑止フラ
グがセットされている場合には前記リード抑止フラグが
リセットされるまで、第2のベクトルレジスタの対応す
る要素からの読み出しを待ちあわせするよう制御する制
御回路とを有することにより、一連のリストベクトル処
理中に同一のメインメモリアドレスに関する処理が含ま
れていた場合において、即ち、リストベクトル処理中の
一処理Aが同リストベクトル処理中の該処理Aよりも以
前に行なわれる処理の結果を使用するようなリストベク
トル処理において、該処理Aでの処理結果をメインメモ
リに一度転送した後再度ロードするといった処理が省略
できるため、従来メインメモリとベクトルレジスタ間の
転送に費していた時間が削減されるという効果がある。
からのリードデータをアドレスとして、メインメモリか
ら該アドレスに格納されたデータを読み出して第2のベ
クトルレジスタに順次格納する手段を有するベクトルデ
ータ処理装置において、前記第1のベクトルレジスタ内
に同一のデータを含む場合は同一の番号となるよう要素
番号を生成して、第3のベクトルレジスタに格納する手
段を有するとともに、第2のベクトルレジスタの各要素
に対応するリード抑止フラグを設け、前記第3のベクト
ルレジスタの内容をアドレスとして前記第2のベクトル
レジスタの内容を読み出す手段と、前記第2のベクトル
レジスタからのデータの読出しに対応して前記リード抑
止フラグの対応するビットをセットする手段と、前記第
2のベクトルレジスタへのデータの書込みに対応して前
記リード抑止フラグの対応するビットをリセットする手
段と、アクセス先のアドレスに対応するり−ド抑止フラ
グがセットされている場合には前記リード抑止フラグが
リセットされるまで、第2のベクトルレジスタの対応す
る要素からの読み出しを待ちあわせするよう制御する制
御回路とを有することにより、一連のリストベクトル処
理中に同一のメインメモリアドレスに関する処理が含ま
れていた場合において、即ち、リストベクトル処理中の
一処理Aが同リストベクトル処理中の該処理Aよりも以
前に行なわれる処理の結果を使用するようなリストベク
トル処理において、該処理Aでの処理結果をメインメモ
リに一度転送した後再度ロードするといった処理が省略
できるため、従来メインメモリとベクトルレジスタ間の
転送に費していた時間が削減されるという効果がある。
また、第1のベクトルレジスタ内に同一データが多数存
在し、従来ベクトル長が短くなってベクトルデータ処理
装置としての機能が発揮できずに、スカラ処理を施して
いたようなリストベクトルについてもベクトル処理が可
能となるという効果がある。
在し、従来ベクトル長が短くなってベクトルデータ処理
装置としての機能が発揮できずに、スカラ処理を施して
いたようなリストベクトルについてもベクトル処理が可
能となるという効果がある。
第1図は、本発明の一実施例を示すブロック図、第2図
は本実施例で使用される要素番号生成回路を示すブロッ
ク図である。 1.2.3・・・・・ベクトルレジスタ、4・・・・・
・ベクトルレジスタ制御部、5,18.19・・・・・
・演算器、6.8,10,12,14,16,20.2
2・・・・・選択回路、7,9,11,13,15,1
7゜21.23・・・・・・レジスタ、24・・・・・
・データ供給部、30・・・・・・ライトアドレスカウ
ンタ、31・・・・・・レジスタ、32・・・・・・レ
ジスタファイル、33,34.・・・64・・・・・・
比較器、65・・・・・・要素番号出力回路、101〜
188・・・・・・信号線。 代理人 弁理士 内 原 晋
は本実施例で使用される要素番号生成回路を示すブロッ
ク図である。 1.2.3・・・・・ベクトルレジスタ、4・・・・・
・ベクトルレジスタ制御部、5,18.19・・・・・
・演算器、6.8,10,12,14,16,20.2
2・・・・・選択回路、7,9,11,13,15,1
7゜21.23・・・・・・レジスタ、24・・・・・
・データ供給部、30・・・・・・ライトアドレスカウ
ンタ、31・・・・・・レジスタ、32・・・・・・レ
ジスタファイル、33,34.・・・64・・・・・・
比較器、65・・・・・・要素番号出力回路、101〜
188・・・・・・信号線。 代理人 弁理士 内 原 晋
Claims (1)
- 【特許請求の範囲】 1、第1のベクトルレジスタからのリードデータをアド
レスとしてメインメモリから前記アドレスに格納された
データを読み出して第2のベクトルレジスタに順次格納
する手段を有するベクトルデータ処理装置において、前
記第1のベクトルレジスタ内に同一のデータを含む場合
は、同一の番号となるよう要素番号を生成して第3のベ
クトルレジスタに格納する手段を有するとともに、前記
第2のベクトルレジスタの各要素に対応するリード抑止
フラグを設け、前記第3のベクトルレジスタの内容をア
ドレスとして前記第2のベクトルレジスタの内容を読み
出す手段と、前記第2のベクトルレジスタからのデータ
の読出しに対応して前記リード抑止フラグの対応するビ
ットをセットする手段と、前記第2のベクトルレジスタ
へのデータの書込みに対応して前記リード抑止フラグの
対応するビットをリセットする手段と、第2のベクトル
レジスタの各アドレスに対応するリード抑止フラグがセ
ットされている場合には、前記リード抑止フラグがリセ
ットされるまで、第2のベクトルレジスタの対応する要
素からの読出しを待ちあわせするよう制御する制御回路
とを有することを特徴とするベクトルデータ処理装置。 2、請求項(1)記載のベクトルデータ処理装置におい
て、第1のベクトルレジスタ内に同一データを含む場合
に同一の番号となるよう生成された、第1のベクトルレ
ジスタの要素に対応する第2のベクトルレジスタの要素
番号を、第1のベクトルレジスタの対応する要素の格納
された同アドレス上の有効データがセットされていない
空きスペースに格納し、該要素番号をアドレスとして第
2のベクトルレジスタの内容を読み出すようにし、第3
のベクトルレジスタを第1のベクトルレジスタ内に取り
込んで構成することを特徴とするベクトルデータ処理装
置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23735590A JPH04116768A (ja) | 1990-09-07 | 1990-09-07 | ベクトルデータ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23735590A JPH04116768A (ja) | 1990-09-07 | 1990-09-07 | ベクトルデータ処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04116768A true JPH04116768A (ja) | 1992-04-17 |
Family
ID=17014169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23735590A Pending JPH04116768A (ja) | 1990-09-07 | 1990-09-07 | ベクトルデータ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04116768A (ja) |
-
1990
- 1990-09-07 JP JP23735590A patent/JPH04116768A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS60134974A (ja) | ベクトル処理装置 | |
EP0173040B1 (en) | Vector processing system | |
JPH06124352A (ja) | データ駆動型情報処理装置 | |
US5307300A (en) | High speed processing unit | |
JPH0414385B2 (ja) | ||
JP2617974B2 (ja) | データ処理装置 | |
JPH04116768A (ja) | ベクトルデータ処理装置 | |
JPS59114677A (ja) | ベクトル処理装置 | |
US5542080A (en) | Method for controlling execution of data driven type information processor | |
JPH02217038A (ja) | 結合回路網 | |
JPH0243216B2 (ja) | ||
JP2716254B2 (ja) | リストベクトル処理装置 | |
JPH07191955A (ja) | データ駆動型情報処理装置 | |
JPH04255064A (ja) | 並列処理装置 | |
JP2989830B2 (ja) | ベクトル処理方法 | |
JPH0325822B2 (ja) | ||
JP2748404B2 (ja) | 2項データメモリ | |
JPH10312356A (ja) | データ転送装置 | |
JPH0531170B2 (ja) | ||
JPH0554059A (ja) | ベクトル処理装置 | |
JPH05290080A (ja) | 並列処理装置 | |
JPH0844618A (ja) | アドレス制御装置 | |
JPH0561804A (ja) | マイクロコンピユータ | |
JPS623371A (ja) | ベクトルデ−タ処理装置 | |
JPH03282928A (ja) | アドレス制御型情報処理装置 |