JPH0658671B2 - ベクトル処理装置 - Google Patents

ベクトル処理装置

Info

Publication number
JPH0658671B2
JPH0658671B2 JP26566787A JP26566787A JPH0658671B2 JP H0658671 B2 JPH0658671 B2 JP H0658671B2 JP 26566787 A JP26566787 A JP 26566787A JP 26566787 A JP26566787 A JP 26566787A JP H0658671 B2 JPH0658671 B2 JP H0658671B2
Authority
JP
Japan
Prior art keywords
vector
multiplication
pipeline
addition
subtraction
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 - Lifetime
Application number
JP26566787A
Other languages
English (en)
Other versions
JPH01108676A (ja
Inventor
哲 河合
宏昭 渥美
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 JP26566787A priority Critical patent/JPH0658671B2/ja
Publication of JPH01108676A publication Critical patent/JPH01108676A/ja
Publication of JPH0658671B2 publication Critical patent/JPH0658671B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 [概要] 複数のベクトル処理ユニットで構成されるベクトル処理
装置に関し, 回帰演算処理に適する演算パイプライン機構を提供する
ことを目的とし, 複数のベクトルデータのエレメントを同時にアクセス可
能にするベクトルレジスタと,独立に動作可能な複数の
演算パイプラインとをそなえたベクトル処理ユニットを
複数組有するベクトル処理装置において,各ベクトル処
理ユニットごとに,演算パイプラインの1つとして乗算
および加減算複合演算機能をもつ乗算および加減算パイ
プラインをそれぞれ設けるとともに,各ベクトル処理ユ
ニットの乗算および加減算パイプライン間をそれぞれ専
用のデータバスで結合した構成をもつ。
〔産業上の利用分野〕
本発明は,複数のベクトル処理ユニットで構成されるベ
クトル処理装置に関するものである。
乗算および加減算複合演算を多数回繰り返す回帰式,た
とえば次式のような演算 の処理は,ベクトル処理装置においてしばしば行なわれ
るが,各演算パイプラインの同時並行処理化により処理
効率を上げるのが困難で,改善が望まれている。
〔従来の技術〕
第6図は,複数の演算パイプラインをもつ従来のベクト
ル処理装置の構成を示したものである。図において,1
0は1つないし複数のベクトルデータのエレメントを同
時にアクセスできるバンク構成のベクトルレジスタ(V
R),11は加減算パイプライン(ADD),12は乗
算および加減算パイプライン(MULTI&ADD),
13は除算パイプライン(DIV)である。ここでベク
トルレジスタ(VR)1には,演算すべきベクトルデー
タが,図示省略されているメモリからロードされてい
る。
乗算および加減算パイプライン(MULTI&ADD)
には,乗算のみあるいは加減算のみの演算のほか,乗算
と加減算の複合演算を実行することができ,たとえば,
aをスカラデータ,A,B,Dをベクトルデータとする
前記(1)式のベクトル演算A=a×B+Dは,1ステッ
プで処理可能である。
この場合,まず乗算および加減算パイプライン(MUL
TI&ADD)12を起動し,図示されていないメモリ
から読み出したスカラデータaとベクトルレジスタ(V
R)10から読み出したベクトルデータBとを乗算し,
その結果と同時にベクトルレジスタ(VR)10から読
み出したベクトルデータDを加算して,結果のベクトル
データAをベクトルレジスタ(VR)10に格納する。
この場合,ベクトル演算のデータ数は最大(N+1)に
ハードウェア上で固定されているため,たとえばデータ
数を2倍に増やしたり,あるいは処理機能を高めるため
演算パイプラインの本数を増やす場合には,その条件の
もとにベクトルレジスタ(VR)や演算器などのハード
ウェアの構成全体を組み直す必要があった。
〔発明が解決しようとする問題点〕
ベクトル処理装置において,同時並列処理機能を高める
ために演算パイプラインを増設した場合,データバスの
本数も増加し,ベクトルレジスタの各バンクからのデー
タの供給制御も変更しなければならず,ハードウェアの
変更負担が大きくなるという問題があった。
またベクトルレジスタと演算パイプラインからなるベク
トル処理ユニットを複数組設けた場合には,たとえば回
帰式演算を各ベクトル処理ユニットで分割処理しようと
すると,処理中に各ユニットのベクトルレジスタ間で,
中間結果のベクトルデータを頻繁に転送しなければなら
ず,そのオーバヘッドにより処理時間を思ったほど短縮
できないという問題があった。
本発明は,複数のベクトル処理ユニットの組で構成され
るベクトル処理装置において,乗算および加減算の複合
演算の高速処理に適する機構を提供することを目的とす
る。
〔問題点を解決するための手段〕
本発明は,独立した複数のベクトル処理ユニットの各々
において,ベクトルレジスタと演算パイプラインとの間
のデータ供給制御を変更することなく同時並列処理機能
を高めるため,乗算および加減算パイプラインを含む各
ベクトル処理ユニット間に,それぞれの乗算および加減
算パイプライン同士を直結するデータバスを設けること
により,回帰式演算を複数のベクトル処理ユニットで分
割処理する場合のデータ転送時間を大幅に短絡するもの
である。
第1図は本発明の原理説明図である。
図はベクトル処理ユニットを2組用いた場合の本発明に
基づくベクトル処理装置の例示的構成を示す。
20,21は、それぞれ独立して動作するベクトル処理
ユニットである。
22,23は,ベクトルレジスタ(VR)である。
24,35は,加減算パイプライン(ADD)である。
26,27は除算パイプライン(DIV)である。
28,29は,除算および加減算パイプライン(MUL
TI&ADD)である。
30,31は,乗算および加減算パイプライン(MUL
TI&ADD)を双方向に結合するデータバスである。
〔作用〕
第1図において,ベクトル処理ユニット20,21は,
回帰演算を分割処理するために使用されることができ
る。分割処理の方法は,ベクトルデータの順次のエレメ
ントを交互にあるいは適当な個数ごとに交互に分配する
方法がとられる。
乗算および加減算パイプライン(MULTI&ADD)
28,29がそれぞれベクトルレジスタ(VR)22,
23に対してもつデータバスは,他の演算パイプライン
24ないし27と同じであるが,内部に乗算パイプライ
ンと加減算パイプラインとをもったことにより,いずれ
か一方のパイプラインを選択的に使用,あるいは2つの
パイプラインを縦続的に結合して乗算と加減算の複合演
算を連続実行することを可能にしている。
データバス30,31は,回帰演算を分割実行している
2つの乗算および加減算パイプライン(MULTI&A
DD)28,29で得られた各ステップの演算結果を,
ベクトルレジスタ(VR)22,23を介さずに直接転
送することにより,オーバヘッドを削減する働きをも
つ。
〔実施例〕
第1図に示されたベクトル処理装置において,回帰式演
算を行なう場合の制御動作の実施例を説明する。
aをスカラデータ,A,B,Dをベクトルデータとし,
またベクトルデータのエレメント番号iを0,1,2,
…,nとして,各ベクトルデータのエレメントをA
,Dで表わし,次の回帰式を処理するものとす
る。
ベクトル処理ユニット20,21には,連続するエレメ
ントを2個ずつ分配し,分割処理させるものとする。こ
のため予めベクトル処理ユニット20のベクトルレジス
タ(VR)22には,i=2j,2j+1(j=0,
1,2,…,(n−3)/2)のエレメント番号0,
1,4,5,8,9,…をもつエレメントB2j
2j+1,D2j,D2j+1を格納し,またベクトル処理ユニ
ット21のベクトルレジスタ(VR)23には,i=2
j+2,2j+3(j=0,1,2,…(n−3)/
2)のエレメント番号2,3,6,7,10,11,…
をもつエレメントB2j+2,B2j+3,D2j+2,D2j+3を格
納する。
第2図はこれに基づくベクトル処理装置の制御シーケン
スを示す図であり,以下の説明は,第2図と対応してい
る。
ベクトル処理ユニット20の乗算および加減算パイプラ
イン(MULTI&ADD)28は,まずスカラデータ
aを入力し,またベクトルレジスタ(VR)22からエ
レメントB,Dを読み出し入力して, A=a×B+D を計算し,その結果Aと続いてベクトルレジスタ(V
R)22から読み出したエレメントB,Dとを用い
て, A=A×B+D を計算する。この結果Aは,データバス30を介して
ベクトル処理ユニット21の乗算および加減算パイプラ
イン(MULTI&ADD)29に直接転送される。
MULTI&ADD29では,このAと,ベクトルレ
ジスタ(VR)23から読み出したエレメントB,D
とを用いて, A=A×B+D を計算し,この結果Aと続いてベクトルレジスタ(V
R)23から読み出したエレメントB,Dとを用い
て, A=A×B+D を計算する。この結果Aは,次のデータバス31を介
してMULTI&ADD28に直接転送される。
このようにして,MULTI&ADD28,29間で計
算結果のエレメントを交換しながら,並行して順次のエ
レメントを計算してゆく。
なお上述した実施例では,各ベクトル処理ユニット2
0,21に対して,連続する2個ずつのエレメントの処
理を割り当てていたが,他の任意の方法で割り当てを行
なうことも可能である。
またベクトル処理ユニットを3組あるいはそれ以上そな
えたベクトル処理装置を用いる場合には,3分割あるい
はそれ以上の分割数により並行処理することも可能であ
る。
第3図は,本発明の実施例による乗算および加減算パイ
プラインの構成を示す。図は,第1図における乗算およ
び加減算パイプライン(MULTI&ADD)28とそ
の周辺を部分的に具体化して示したものである。
乗算および加減算パイプライン(MULTI&ADD)
28は,乗算パイプライン(MULTI)28aと加減
算パイプライン(ADD)28bとにより構成される。
乗算パイプライン(MULTI)28aの入力,出力
は,ベクトルレジスタ(22)に直接結合され,加減算
パイプライン(ADD)28bの入力,出力は,乗算パ
イプライン(MULTI)28aに内部接続されてい
る。したがって,見掛け上は1本のパイプラインと同じ
であり,ベクトルレジスタ(VR)22との間のデータ
転送制御は,従来の演算パイプラインの場合と何ら変り
はない。
第2図に示されている実施例と制御シーケンスの場合,
乗算パイプライン(MULTI)28aは, の各乗算を順次実行し,それぞれの乗算結果を,加減算
パイプライン(ADD)28bに入力する。
加減算パイプライン(ADD)28bは,それぞれの乗
算結果に同期させて, の各加算を順次実行し,結果のエレメントA,A
,A,A,A,…,A2j,A2j+1,…を,ベ
クトルレジスタ(VR)22に逐次格納する。
このうちエレメントA,A,A,…,A2j,…
は,エレメントA,A,A,…,A2j+1,…を算
出するために乗算パイプライン(MULTI)28aに
再入力され,エレメントA,A,A,…,
2j+1,…は,データバス30を介して,他方のベクト
ル処理ユニット21の乗算および加減算パイプライン
(MULTI&ADD)29(第1図)へ転送される。
また乗算および加減算パイプライン(MULTI&AD
D)28がエレメントA,A,…,A2j,…を計算
するために必要とされるエレメントA,A,…,A
2j-1,…は,データバス31を介して,他方のユニット
の乗算および加減算パイプライン(MULTI&AD
D)29から受け取るようにされる。
第4図に,本発明の他の実施例によるベクトル処理装置
の構成を示す。この実施例は,特に乗算に時間がかかる
浮動小数点演算に有利な構成をもっており,乗算および
加減算パイプライン(MULTI&ADD)として,2
本の乗算パイプライン(MULTI)と1本の加減算パ
イプライン(ADD)とを複合させ,乗算能力を2倍に
している。
第4図において,32,33はそれぞれ独立したベクト
ルレジスタ(VR),34,35はそれぞれ異なるベク
トル処理ユニットに属する乗算および加減算パイプライ
ン(MULTI&ADD),36,37,39,40は
それぞれ乗算パイプライン(MULTI)38,41は
それぞれ加減算パイプライン(ADD),42,43は
それぞれ乗算および加減算パイプライン(MULTI&
ADD)34と35間を結合するデータバス,44ない
し49はベクトルレジスタ(VR)との間のデータバス
である。
前述した回帰式演算の例の場合を説明すると,ベクトル
レジスタ(VR)32には,エレメント番号2j,2j
+1のベクトルデータを格納し,ベクトルレジスタ(V
R)33にはエレメント番号2j+2,2j+3のベク
トルデータを格納する(j=0,一,1,…)。
乗算および加減算パイプライン(MULTI&ADD)
34,35はそれぞれ対応するベクトルレジスタ(V
R)32,33のベクトルデータを並行して分割処理す
るが,さらに各パイプライン内で,2本の乗算パイプラ
イン(MULTI)と1本の加減算パイプライン(AD
D)とが内部のパスを利用して並行処理を行なう。
たとえば乗算および加減算パイプライン(MULTI&
ADD)34の場合,その中の一方の乗算パイプライン
(MULTI)36は,他方の乗算および加減算パイプ
ライン(MULTI&ADD)35からデータバス43
を経て転送されたA2j-1とベクトルレジスタ(VR)3
2から読み出したB2jとを用いてA2j-1×B2jを実行
し,他方の乗算パイプライン(MULTI)37は,加
減算パイプライン(ADD)38から出力される先行す
る複合演算A2j=A2j-1×B2j+D2jの結果とベクトル
レジスタ(VR)32から読み出したB2j+1とを用いて
2j×B2j+1を実行する。そして加算パイプライン(A
DD)38は,各乗算結果とベクトルレジスタ(VR)
32から読み出したD2j,D2j+1とを用いて,順次 A2j=(A2j-1×B2j)+D2j2j+1=(A2j×B2j+1)+D2j+1 の演算を実行する。前述したように,A2jは乗算パイプ
ライン(MULTI)37へ転送され,またA2j+1は他
方の乗算および加減算パイプライン(MULTI&AD
D)35へ,データバス42を経て転送される。
第5図は,第4図における乗算および加減算パイプライ
ン(MULTI&ADD)34の詳細回路図である。
各パイプライン36ないし38は,高速の浮動小数点乗
算あるいは加減算回路で構成されている。図中のCSA
はキャリ・セイブ・アダーを表わし,CPAはキャリ・
プロパゲーション・アダーを表わす。
また50ないし57は各パイプライン36,37,38
間でのデータ転送を可能にする内部パスを表わしてい
る。
〔発明の効果〕
本発明によれば,乗算,加減算,乗算および加減算複合
演算を1本の演算パイプラインで実行できるため,ベク
トルレジスタとの間のデータバスやデータ供給制御の変
更負担がなく,また複数組のベクトル処理ユニットによ
り1つの演算を分割処理する場合に,各ユニット間での
データ転送を専用のデータバスを用いて行なうことがで
きるので,従来のベクトル処理装置にくらべて,オーバ
ヘッドが少なく,高速処理が可能となる。
【図面の簡単な説明】
第1図は本発明の原理説明図,第2図は本発明実施例の
制御シーケンス説明図,第3図は本発明実施例による乗
算および加減算パイプラインの構成図,第4図は本発明
の他の実施例によるベクトル処理装置の構成図,第5図
は第4図に示す実施例装置におけるADD&MULTI
パイプラインの詳細回路図,第6図は従来のベクトル処
理装置の構成図である。 第1図中, 20,21はベクトル処理ユニット, 22,23はベクトルレジスタ(VR), 28,29は乗算および加減算パイプライン(MULT
I&ADD)、 30,31はデータバス。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数のベクトルデータのエレメントを同時
    にアクセス可能にするベクトルレジスタと,独立に動作
    可能な複数の演算パイプラインの1つとして乗算および
    加減算複合演算機能をもつ乗算および加減算パイプライ
    ン(28,29)とをそなえたベクトル処理ユニット(20,21)
    を複数組有するベクトル処理装置において, 各ベクトル処理ユニット(20,21)の乗算および加減算パ
    イプライン(28,29)間をそれぞれ専用のデータバス(3
    0,31)で結合することで回帰式演算処理を可能としたこ
    とを特徴とするベクトル処理装置。
JP26566787A 1987-10-21 1987-10-21 ベクトル処理装置 Expired - Lifetime JPH0658671B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26566787A JPH0658671B2 (ja) 1987-10-21 1987-10-21 ベクトル処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26566787A JPH0658671B2 (ja) 1987-10-21 1987-10-21 ベクトル処理装置

Publications (2)

Publication Number Publication Date
JPH01108676A JPH01108676A (ja) 1989-04-25
JPH0658671B2 true JPH0658671B2 (ja) 1994-08-03

Family

ID=17420314

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26566787A Expired - Lifetime JPH0658671B2 (ja) 1987-10-21 1987-10-21 ベクトル処理装置

Country Status (1)

Country Link
JP (1) JPH0658671B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5170021B2 (ja) * 2009-07-15 2013-03-27 エヌイーシーコンピュータテクノ株式会社 ベクトル演算装置およびベクトル演算方法

Also Published As

Publication number Publication date
JPH01108676A (ja) 1989-04-25

Similar Documents

Publication Publication Date Title
JPS6125188B2 (ja)
JP2683488B2 (ja) 3−1論理演算装置
EP0395240B1 (en) High speed numerical processor
JPH0658671B2 (ja) ベクトル処理装置
JPH05324694A (ja) 再構成可能並列プロセッサ
JPH06223166A (ja) 画像処理用汎用プロセッサ
JPH07141148A (ja) パイプライン並列乗算器
JPS6310263A (ja) ベクトル処理装置
JP2507473B2 (ja) 処理装置
JP2696903B2 (ja) 数値計算装置
JPH04364525A (ja) 並列演算装置
JPS6220025A (ja) パイプライン方式
JPH01255032A (ja) 演算処理装置
JP2560120B2 (ja) 演算装置
JPH0343865A (ja) ベクトル・データ処理装置
JPH09269939A (ja) 並列演算器およびそれを用いたデジタル・シグナル・プロセッサ
JPS6125274A (ja) ベクトル演算処理装置
JPH04252372A (ja) 可変パイプライン構造
JPH0241563A (ja) ベクトル処理方式
JPH01145771A (ja) パイプライン計算機
JPH03105615A (ja) 最大値または最小値検出機能をそなえた乗算および加算複合演算回路
JPS60147836A (ja) 演算処理装置
JPH04286070A (ja) 積和演算装置
JPH09325953A (ja) プロセッサおよびデータ処理装置
JPS63167971A (ja) 演算装置