JPS6072069A - ベクトル演算処理装置 - Google Patents
ベクトル演算処理装置Info
- Publication number
- JPS6072069A JPS6072069A JP58179621A JP17962183A JPS6072069A JP S6072069 A JPS6072069 A JP S6072069A JP 58179621 A JP58179621 A JP 58179621A JP 17962183 A JP17962183 A JP 17962183A JP S6072069 A JPS6072069 A JP S6072069A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- circuit
- registers
- register
- vector registers
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
- G06F15/8076—Details on data register access
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
本発明はベクトル演算処理装置に関する。
コンピュータの応用分野が拡大するにつれて、コンピュ
ータの高速データ処理への要請は際限なく広がシつつあ
る。超高速計算機(スーパーコンピータ)は、科学技術
分野でのこのような要請に応えるものとして、近年、特
に開発が活発化してきている。スーパーコンピュータに
おいては、処理すべき膨大なデータをベクトルデータ、
す々わち、順序付けられた一次元データ(ベクトルデー
タ)の集まシとしてとらえ、ベクトル演算処理装置がパ
イプライン方式によって高速処理している。
ータの高速データ処理への要請は際限なく広がシつつあ
る。超高速計算機(スーパーコンピータ)は、科学技術
分野でのこのような要請に応えるものとして、近年、特
に開発が活発化してきている。スーパーコンピュータに
おいては、処理すべき膨大なデータをベクトルデータ、
す々わち、順序付けられた一次元データ(ベクトルデー
タ)の集まシとしてとらえ、ベクトル演算処理装置がパ
イプライン方式によって高速処理している。
従来の−この種のベクトル演a、処理装置は、それぞれ
が順序付けられたデータエレメントを保持する複数個の
ベクトルレジスタと、ベクトル命令によって指定される
前記ベクトルレジスタのデータエレメントをクロックに
応答して順次に出力する出力選択回路と、該出力選択回
路からの前記データエレメントをパイプライン方式によ
って演算する前記ベクトル命令対応のベクトル演算器と
、該ベクトル演7J器における前記演算結果を前記ベク
トル命令によって指定される前記ベクトルレジスタに書
き込む入力選択回路とを備えている。
が順序付けられたデータエレメントを保持する複数個の
ベクトルレジスタと、ベクトル命令によって指定される
前記ベクトルレジスタのデータエレメントをクロックに
応答して順次に出力する出力選択回路と、該出力選択回
路からの前記データエレメントをパイプライン方式によ
って演算する前記ベクトル命令対応のベクトル演算器と
、該ベクトル演7J器における前記演算結果を前記ベク
トル命令によって指定される前記ベクトルレジスタに書
き込む入力選択回路とを備えている。
このような従来構成においては、たとえば、流体力和式
等科学技術計算においてよく現われる内積演算、すなわ
ち、前の演算結果に新しい演算結果を次々に加算または
乗算していく演算を行なう場合に、中間の演算結果は同
一のベクトルレジスタに書き込まれるだめ、中間の演初
紀果を加a貰たは乗算するときには、同一ベクトルレジ
スタどうしの演算になってパイプライン方式を適用し難
くなシ、処理速度が低下するという欠点がある。
等科学技術計算においてよく現われる内積演算、すなわ
ち、前の演算結果に新しい演算結果を次々に加算または
乗算していく演算を行なう場合に、中間の演算結果は同
一のベクトルレジスタに書き込まれるだめ、中間の演初
紀果を加a貰たは乗算するときには、同一ベクトルレジ
スタどうしの演算になってパイプライン方式を適用し難
くなシ、処理速度が低下するという欠点がある。
本発明の目的は、内積演ηを高速化できるベクトル演算
処理装釣を提供することにある。
処理装釣を提供することにある。
本発明の装置は、それぞれが順序伺けられたデータエレ
メントを保持する複数個のベクトルレジスタと、 ベクトル命令によって指定される前記ベクトルレジスタ
から順次に出力されたデータエレメントをパイプライン
方式によって演舞するベクトル演算器と、 該ベクトル演算器における前記演算結果を前記ベクトル
命令によって指定される前記ベクトルレジスタに書き込
む入力選択回路と、 前記ベクトル命令の指示に応答して前記書込を前記複数
個のベクトルレジスタに排他的に行なうように動作する
書込制御回路 とを設けたことを特徴とする。
メントを保持する複数個のベクトルレジスタと、 ベクトル命令によって指定される前記ベクトルレジスタ
から順次に出力されたデータエレメントをパイプライン
方式によって演舞するベクトル演算器と、 該ベクトル演算器における前記演算結果を前記ベクトル
命令によって指定される前記ベクトルレジスタに書き込
む入力選択回路と、 前記ベクトル命令の指示に応答して前記書込を前記複数
個のベクトルレジスタに排他的に行なうように動作する
書込制御回路 とを設けたことを特徴とする。
次に本発明について図面を参照して詳細に説明する。
第1図は本発明の一実施例を示すブロック図である。本
実施例は、4個のベクトルレジスタVRQ。
実施例は、4個のベクトルレジスタVRQ。
VRI 、VB2およびVB2と、出力選択回路08C
と、加m器ADDと、乗算器MULと、入力選択回路I
SOと、■込制御回路WCCと、4個のアドレスカウン
タACQ、ACI、AC2およびAC3とを設けている
。
と、加m器ADDと、乗算器MULと、入力選択回路I
SOと、■込制御回路WCCと、4個のアドレスカウン
タACQ、ACI、AC2およびAC3とを設けている
。
ベクトルレジスタv′fLO2■R1,VR2オヨヒ■
R3それぞれは、64個のデータエレメントを保持でき
るように々っておシ、その保持番地はそれぞれアドレス
カウンタACQ、ACI、AC2およびAC3によって
指定される。アドレスカウンタACQ。
R3それぞれは、64個のデータエレメントを保持でき
るように々っておシ、その保持番地はそれぞれアドレス
カウンタACQ、ACI、AC2およびAC3によって
指定される。アドレスカウンタACQ。
ACI、AC2およびAC3それぞれは、ベクトル命令
の開始時に0を保持しておシ、1クロツクごとに歩進す
る。
の開始時に0を保持しておシ、1クロツクごとに歩進す
る。
オペレーションコードがロードを指定しているベクトル
命令の場合には、主メモリ(図示を省略)からのデータ
ニレメン)LOI)が、入力選択回路I8Cによって選
択されたベクトルレジスタV RQ。
命令の場合には、主メモリ(図示を省略)からのデータ
ニレメン)LOI)が、入力選択回路I8Cによって選
択されたベクトルレジスタV RQ。
VRl、VB2−jたはVB3にクロックごとに次々と
省き込まれる。ベクトルレジスタと主メモリの番地とは
、それぞれベクトル命令の第1オペランド部と第2オペ
ランド部とで指定さtl、またロードされるデータエレ
メントの数もベクトル命令によって1旨定される。
省き込まれる。ベクトルレジスタと主メモリの番地とは
、それぞれベクトル命令の第1オペランド部と第2オペ
ランド部とで指定さtl、またロードされるデータエレ
メントの数もベクトル命令によって1旨定される。
オペレーションコードが加ηを指定しているベクトル命
令の場合には、出力選択回路O8Cはベクトル命令の第
2オペランド部と第3オペランド部でそれぞれ指定され
るベクトルレジスタVRQ 。
令の場合には、出力選択回路O8Cはベクトル命令の第
2オペランド部と第3オペランド部でそれぞれ指定され
るベクトルレジスタVRQ 。
VRl、V’R2およびVB2のうちの2個を選択し、
それらが保持するデータエレメントをクロックごとに順
次に加算器ADpに出力する。加算器ADDは、出力選
択回路O8Cからのデータエレメントをパイプライン方
式によって順次に加算し、加算結果を入力選択回路I8
Cに出力する。入力選択回路ISOは、この加算結果を
、第1オペランド部で指定されるベクトルレジスタVR
O,VR1,VR2またはVB2のうちの一つにクロッ
クごとに順次に書き込む。
それらが保持するデータエレメントをクロックごとに順
次に加算器ADpに出力する。加算器ADDは、出力選
択回路O8Cからのデータエレメントをパイプライン方
式によって順次に加算し、加算結果を入力選択回路I8
Cに出力する。入力選択回路ISOは、この加算結果を
、第1オペランド部で指定されるベクトルレジスタVR
O,VR1,VR2またはVB2のうちの一つにクロッ
クごとに順次に書き込む。
オペレーションコードが乗算を指定しているベクトル命
令の場合には、前述の加算の場合における加算器ADD
O代シに、乗算器Ivi U Lが棒、能することを除
いては、同様な動作が行なわれる。
令の場合には、前述の加算の場合における加算器ADD
O代シに、乗算器Ivi U Lが棒、能することを除
いては、同様な動作が行なわれる。
次に、オペレーションコードが内積演算を指定している
ベクトル命令である場合には、書込制御回路WCCが作
動する。内積演算の一例は次のようなプログラムで示さ
れる。
ベクトル命令である場合には、書込制御回路WCCが作
動する。内積演算の一例は次のようなプログラムで示さ
れる。
DO10I=1.VL
S、=S−1−A (I) *B (I)16 C0N
TINUE 第2図は書込制御回路WCCの詳細を、ベクトルレジス
タVR4およびVB2と、アドレスカウンタAC4およ
びAC5と、第1図における入力選択回路ISOの一部
である入力レジスタIR,QおよびIRlとともに示す
回路図である。ベクトルレジスタVJおよびVB2と、
アドレスカウンタAC4およびAC5は、第1図におけ
るそれぞれベクトルレジスタVRQ〜VR3と、アドレ
スカウンタACQ〜AC3のうちの任意の2個を示し、
この2個の選定はベクトル命令によって指定できるよう
になっている。
TINUE 第2図は書込制御回路WCCの詳細を、ベクトルレジス
タVR4およびVB2と、アドレスカウンタAC4およ
びAC5と、第1図における入力選択回路ISOの一部
である入力レジスタIR,QおよびIRlとともに示す
回路図である。ベクトルレジスタVJおよびVB2と、
アドレスカウンタAC4およびAC5は、第1図におけ
るそれぞれベクトルレジスタVRQ〜VR3と、アドレ
スカウンタACQ〜AC3のうちの任意の2個を示し、
この2個の選定はベクトル命令によって指定できるよう
になっている。
本謝込制御回路WCCH、アドレスカウンタAC5と、
一致回路SMQと、I’(S形の7リツプフロツプFF
Qと、D形の7リツプフロクプFF1と、3個の論理積
回路AI)Q 、 ADIおよびAD2と内内演ηを指
定するベクトル命令において、乗算器MULまたは加嘗
、器ADDKおける演算結果をベクトルレジスタに1き
込むとき、先ずベクトル演算処理装置のill It・
部(図示を省略)から書込制御回路WCCに対して、ベ
クトル長VLとスタート信号とが与えられる。スタート
信号STは幅の狭いパルスであシ、1クロツク後には非
活性化されるが、このスタート信号STに応答して、フ
リップフロップFFQがセット状態になり、またアドレ
スカウンタAC5はベクトル長VLを受け入れる。7リ
ツプフロツプFFQのセット状態は、一致回路SMQか
らノセット入力端子に論理61″が供給されるまで持続
する。
一致回路SMQと、I’(S形の7リツプフロツプFF
Qと、D形の7リツプフロクプFF1と、3個の論理積
回路AI)Q 、 ADIおよびAD2と内内演ηを指
定するベクトル命令において、乗算器MULまたは加嘗
、器ADDKおける演算結果をベクトルレジスタに1き
込むとき、先ずベクトル演算処理装置のill It・
部(図示を省略)から書込制御回路WCCに対して、ベ
クトル長VLとスタート信号とが与えられる。スタート
信号STは幅の狭いパルスであシ、1クロツク後には非
活性化されるが、このスタート信号STに応答して、フ
リップフロップFFQがセット状態になり、またアドレ
スカウンタAC5はベクトル長VLを受け入れる。7リ
ツプフロツプFFQのセット状態は、一致回路SMQか
らノセット入力端子に論理61″が供給されるまで持続
する。
フリップフロップFF1は当初はリセット状態になって
いるため、論理積回路AD1においてAND条件が成立
し、論理積回路AD1はベクトルレジスタVR4のライ
トイネーブル端子WEに論理11”を供給する。一方、
論理積回路AI)2の出力は論理″′0”であることが
わかる。この結果によシ、入力レジスタIRQとIRI
との双方に入力しているデータニレメン)DEO(演算
結果)は、ベクトルレジスタV几4にのみ書き込みが許
される。アドレスカウンタAC4には、番地″0#が初
期設定されているため、データニレメン)DEQの第1
番目(ナンバ0)は、第1番目のクロックに応答してベ
クトルレジスタVR4のアドレスOに古き込まれること
になる。アドレスカウンタAC4の内容は、論3]!積
回路AD1からの論理fi 、 $7田力に応答して歩
進する。
いるため、論理積回路AD1においてAND条件が成立
し、論理積回路AD1はベクトルレジスタVR4のライ
トイネーブル端子WEに論理11”を供給する。一方、
論理積回路AI)2の出力は論理″′0”であることが
わかる。この結果によシ、入力レジスタIRQとIRI
との双方に入力しているデータニレメン)DEO(演算
結果)は、ベクトルレジスタV几4にのみ書き込みが許
される。アドレスカウンタAC4には、番地″0#が初
期設定されているため、データニレメン)DEQの第1
番目(ナンバ0)は、第1番目のクロックに応答してベ
クトルレジスタVR4のアドレスOに古き込まれること
になる。アドレスカウンタAC4の内容は、論3]!積
回路AD1からの論理fi 、 $7田力に応答して歩
進する。
この状態においては、論理積回路ADQは論理111″
を出力しているメこめ、フリップフロップFF1は、第
2雀目のクロック(′こ応答して反転し、セット状態に
なる。このため、論理積回路ADIは論理゛0″、論理
積回路AD2は論理61″を出力し、データエレメント
DEQの第2番目(ナンバ1)に、ベクトルレジスタV
R5のアドレス0に籐き込壕れることになる。アドレス
カウンタAC5の内容は、論理積回路AD2からの論理
”1”出力に応答して歩進する。
を出力しているメこめ、フリップフロップFF1は、第
2雀目のクロック(′こ応答して反転し、セット状態に
なる。このため、論理積回路ADIは論理゛0″、論理
積回路AD2は論理61″を出力し、データエレメント
DEQの第2番目(ナンバ1)に、ベクトルレジスタV
R5のアドレス0に籐き込壕れることになる。アドレス
カウンタAC5の内容は、論理積回路AD2からの論理
”1”出力に応答して歩進する。
第3番目のクロック印加時eこけ、フリップフロップF
i′I H−リセット状態に反転し、データエレメン
トDEOの第3届目は、再びベクトルレジスタVR4の
アドレスlに11(き込まれる。このようにして、デー
タエレメント1)EQの奇数番目はベクトルレジスタV
R4に偶数番目はベクトルレジスタV几5に、交互に振
シ分けて書き込まれでいく。
i′I H−リセット状態に反転し、データエレメン
トDEOの第3届目は、再びベクトルレジスタVR4の
アドレスlに11(き込まれる。このようにして、デー
タエレメント1)EQの奇数番目はベクトルレジスタV
R4に偶数番目はベクトルレジスタV几5に、交互に振
シ分けて書き込まれでいく。
一方、アドレスカウンタAC5の内容はスタート信号S
Tが非活性化される第2番目のクロック印加以降にはク
ロックに応答して1だけ減算される。アドレスカウンタ
AC5の保持内容U1一致回路8MQにも供給されてお
シ、一致回路SMOにおいて1と比較される。アドレス
カウンタAC6の保持内容が1になると、一致回路SM
Oは論理11#を7リツプフロツプFFOのリセット入
力端子に出力し、フリップフロップF B’ Qをリセ
ット状態にする。この結果により、論理積回路AD1お
よびAl)2の出力は、共に論理″O″になるため、デ
ータエレメントDEOはベクトルレジスタVR4にも■
凡5にも省き込まれ々くなる。
Tが非活性化される第2番目のクロック印加以降にはク
ロックに応答して1だけ減算される。アドレスカウンタ
AC5の保持内容U1一致回路8MQにも供給されてお
シ、一致回路SMOにおいて1と比較される。アドレス
カウンタAC6の保持内容が1になると、一致回路SM
Oは論理11#を7リツプフロツプFFOのリセット入
力端子に出力し、フリップフロップF B’ Qをリセ
ット状態にする。この結果により、論理積回路AD1お
よびAl)2の出力は、共に論理″O″になるため、デ
ータエレメントDEOはベクトルレジスタVR4にも■
凡5にも省き込まれ々くなる。
このようにして、ベクトル長VLに等しい個数のデータ
エレメントDEQがベクトルレジスタVR4とVB2と
に排他的に書き込まれることになる6前述のプログラム
で示した内積演算において、ベクトル長■L−8の場合
(Sの初期値は0とする)には、このプ゛ログラムは4
個のサブプロゲラ ′ムで実行される。先ず第1′ft
目のサブプログラムでは、たとえば、ベクトルレジスタ
Vl(QとVlllがそれぞれ保持する各8糺のデータ
エレメン)A(1)〜A(8)とB(1)〜B(8)と
を、オペランドとして出力選択回路08Cを介して11
1次に乗算器M U L (C供給し、乗γψ器は両オ
ペランドの乗aを石ない、8イ1−・1の采泗、紹果A
(1) * B (1)〜A(3戸¥B(8)を人力
選択回路ISOを介して、たとえは、ベクトルレジスタ
■R2とVB2とのアドレスO〜3にυ1−他的に書き
込む。′″j−力わち乗算結果A(1)′:4ζB(1
)、A(3)*B (3)、A(5> * B (5)
およびA、 (7) * 13 (7)B、ベクトルレ
ジスタVR2のアドレス0,1,21.よび3に乗算結
果A (2) * 、B (2)、A (4) * B
(4)、A (6) * B (6)およびA (8
) * B (8)はベルトレジスタv it 3の7
ドレス0.1.2および3にそれぞれ書き込まれる。こ
のとき、γFレスカウンタAC5には、項二1番目のサ
ブグロ多ラムによって、ペクト/L長VL−3か初期詐
定芒れている。
エレメントDEQがベクトルレジスタVR4とVB2と
に排他的に書き込まれることになる6前述のプログラム
で示した内積演算において、ベクトル長■L−8の場合
(Sの初期値は0とする)には、このプ゛ログラムは4
個のサブプロゲラ ′ムで実行される。先ず第1′ft
目のサブプログラムでは、たとえば、ベクトルレジスタ
Vl(QとVlllがそれぞれ保持する各8糺のデータ
エレメン)A(1)〜A(8)とB(1)〜B(8)と
を、オペランドとして出力選択回路08Cを介して11
1次に乗算器M U L (C供給し、乗γψ器は両オ
ペランドの乗aを石ない、8イ1−・1の采泗、紹果A
(1) * B (1)〜A(3戸¥B(8)を人力
選択回路ISOを介して、たとえは、ベクトルレジスタ
■R2とVB2とのアドレスO〜3にυ1−他的に書き
込む。′″j−力わち乗算結果A(1)′:4ζB(1
)、A(3)*B (3)、A(5> * B (5)
およびA、 (7) * 13 (7)B、ベクトルレ
ジスタVR2のアドレス0,1,21.よび3に乗算結
果A (2) * 、B (2)、A (4) * B
(4)、A (6) * B (6)およびA (8
) * B (8)はベルトレジスタv it 3の7
ドレス0.1.2および3にそれぞれ書き込まれる。こ
のとき、γFレスカウンタAC5には、項二1番目のサ
ブグロ多ラムによって、ペクト/L長VL−3か初期詐
定芒れている。
第2番目のサブプログラムにおいては、ベクトルレジス
タV B 2とVB2にそれぞれ書き込まれている名4
個の乗算結果A (1) * B (1)、A (3)
* B (3)A(5) * E (5)およびA
(7) * B (7)と、A (2) * B (2
)、A(4) * B (4)、A (6) * B
(6)およびA (8) * B (8)を順次に加算
器Al)Dに供給し、4回゛の力n算がパイプライン方
式で行なわれる。このときの力[n結果A (1) *
B (1) 十A (2) * B (2)とA(5)
* E(5)十A(6)* B(6)はベクトルレジス
タV)LQのアドレス0と1とに、また加算結果A(3
)* B(3)+A(4>* B(4)とA (7)
* B (7)十’ A (8) * B (8)はベ
クトルレジスタ■R1のアドレスOと1とにそれぞれ寥
き込まれる。このとき、アドレスカウンタAC5にに、
第2届目のザン゛フ゛ログラムによって、ベクトル長V
L=4が初期設りV凡0と■几1にそれぞれ省き込まれ
ている即j述のような各2個の加算結果を、同様にして
パイプライン方式で加貧し、アドレスカウンタAC5に
ベクトル長VL−2を初期設して” (1) * ]:
i (1)+ A(2)* B(2)+A(3)* B
(3)+A(4)* B(4)をベクトルレジスタ’V
R2のアドレス0に、A(5)*B(5)+A(6)
* B、(6)+A(7)* B(7)十人(8) *
B (8)をベクトルレジスタV R3のアドレス0
にそれぞれ書き込む。
タV B 2とVB2にそれぞれ書き込まれている名4
個の乗算結果A (1) * B (1)、A (3)
* B (3)A(5) * E (5)およびA
(7) * B (7)と、A (2) * B (2
)、A(4) * B (4)、A (6) * B
(6)およびA (8) * B (8)を順次に加算
器Al)Dに供給し、4回゛の力n算がパイプライン方
式で行なわれる。このときの力[n結果A (1) *
B (1) 十A (2) * B (2)とA(5)
* E(5)十A(6)* B(6)はベクトルレジス
タV)LQのアドレス0と1とに、また加算結果A(3
)* B(3)+A(4>* B(4)とA (7)
* B (7)十’ A (8) * B (8)はベ
クトルレジスタ■R1のアドレスOと1とにそれぞれ寥
き込まれる。このとき、アドレスカウンタAC5にに、
第2届目のザン゛フ゛ログラムによって、ベクトル長V
L=4が初期設りV凡0と■几1にそれぞれ省き込まれ
ている即j述のような各2個の加算結果を、同様にして
パイプライン方式で加貧し、アドレスカウンタAC5に
ベクトル長VL−2を初期設して” (1) * ]:
i (1)+ A(2)* B(2)+A(3)* B
(3)+A(4)* B(4)をベクトルレジスタ’V
R2のアドレス0に、A(5)*B(5)+A(6)
* B、(6)+A(7)* B(7)十人(8) *
B (8)をベクトルレジスタV R3のアドレス0
にそれぞれ書き込む。
第4番目のすブプログラムは、ベクトルレジスタVR2
におけるアドレス0の保持内容と、ベクトルレジスタV
几3におけるアドレス0の保1季内容とを同杼にして加
算し、最終的な演算結果である1’ AU)*B(I)
を、たとえば、ベクトルリレジス w l り’V IL Oのアドレス0に9,1.き込む。この
と畝アドレスカウンクAC5には1が初期設定さ」して
いる。
におけるアドレス0の保持内容と、ベクトルレジスタV
几3におけるアドレス0の保1季内容とを同杼にして加
算し、最終的な演算結果である1’ AU)*B(I)
を、たとえば、ベクトルリレジス w l り’V IL Oのアドレス0に9,1.き込む。この
と畝アドレスカウンクAC5には1が初期設定さ」して
いる。
以上の説明における演算式S =S +A(I)* B
(I)は、不う3明を限定するものではなく、メーペシ
ンドA([)とB(【)とか力【1%演算でれるように
なっていてもよいし、1ノCオペランドA(I)とB
(1)との演算結果はSとの間で乗鍬減n釘Cは除算の
名演算妙ヌ行ムわ扛るようになっている演算式であって
もよい。
(I)は、不う3明を限定するものではなく、メーペシ
ンドA([)とB(【)とか力【1%演算でれるように
なっていてもよいし、1ノCオペランドA(I)とB
(1)との演算結果はSとの間で乗鍬減n釘Cは除算の
名演算妙ヌ行ムわ扛るようになっている演算式であって
もよい。
本実施例においては、中間の演許−結果はベクトルレジ
スタVR4とVB2とに交互に振シ分けて書き込まれる
ようになっているが、本発明はとのことに限定されるも
のではなく、本発明の本質は複数個のベクトルレジスタ
に排他的に書き込むことである。たとえば、第1図にお
ける勇込制御回路WCCを第3図に示すような構成にす
ることによって、中間の演算結果のうちの前半分をベク
トルレジスタ■R6、後半分をベクトルレジスタ■R7
の各アドレスθ〜(VL/2−1)に省き込むようにで
きる。
スタVR4とVB2とに交互に振シ分けて書き込まれる
ようになっているが、本発明はとのことに限定されるも
のではなく、本発明の本質は複数個のベクトルレジスタ
に排他的に書き込むことである。たとえば、第1図にお
ける勇込制御回路WCCを第3図に示すような構成にす
ることによって、中間の演算結果のうちの前半分をベク
トルレジスタ■R6、後半分をベクトルレジスタ■R7
の各アドレスθ〜(VL/2−1)に省き込むようにで
きる。
第3図の実施例においてじ5、ベクトルレジスタVR5
とVB2との切り替えを、アドレスレジスタAR1の保
持内容の最上位ビットによって折力っている。第3図に
おける、アドレスカウンタAC5,AC7およびAc1
と一致回路SM1と、フリップフロップF’F2と、論
理積回路AD4およびAD5と、ベクトルレジスタV
B、 6およびVB2と、入力レジスタIR2およびI
R3け、第2図におけるそれぞれアドレスカウンタAC
4,AC5;おコよ1びAc15と一致回路SMQと、
フリップフロツブFFQと、論理秩回路ADIおよびA
D2と、ベクトルレジスタVR4およびVB2と、入力
レジスタエ几OおよびIJに和尚し、また論理積回路A
D3は、論理積回路ADQおよびフリップフロップF
F lと同種の機能を果たしている。
とVB2との切り替えを、アドレスレジスタAR1の保
持内容の最上位ビットによって折力っている。第3図に
おける、アドレスカウンタAC5,AC7およびAc1
と一致回路SM1と、フリップフロップF’F2と、論
理積回路AD4およびAD5と、ベクトルレジスタV
B、 6およびVB2と、入力レジスタIR2およびI
R3け、第2図におけるそれぞれアドレスカウンタAC
4,AC5;おコよ1びAc15と一致回路SMQと、
フリップフロツブFFQと、論理秩回路ADIおよびA
D2と、ベクトルレジスタVR4およびVB2と、入力
レジスタエ几OおよびIJに和尚し、また論理積回路A
D3は、論理積回路ADQおよびフリップフロップF
F lと同種の機能を果たしている。
なお、以上の実施例においてベクトルレジスタと各演算
器とを固定的に接続して、出力選択回路を不要化するよ
うにしてもよい。
器とを固定的に接続して、出力選択回路を不要化するよ
うにしてもよい。
本発明によれば、以上のような構成の採用によって、内
積演算時において中間の演算結果をオペランドとして演
算するときにも、該演算をパイプライン方式によ、り行
えるようになるため、内積演算を高速化できる。
積演算時において中間の演算結果をオペランドとして演
算するときにも、該演算をパイプライン方式によ、り行
えるようになるため、内積演算を高速化できる。
■几Q 、vBJl 、VB2 、VB2 、V几4.
vg5.VH2゜VB2・・・・・・ベクトルレジスタ
、ADD・・・・・・加算器、MUL・・・・・・乗算
器、AC□ 、A、Ci 、AC2、AC3、AC4、
AC5,AC6,AC7,ACB・・・・・・アドレス
カウンタ、I8C・・・・・・入力選択回路、OC8・
・・・・・出力選択回路、WCC・・・・・・書込制御
回路、5IIQ、SMI・・・・・・一致回路、FFQ
、FFI、FF2・・・・・・フリップフロップ、IR
□ 、 IRl 、 IR2、IR3・・・・・・入力
レジスタ、ADQ。
vg5.VH2゜VB2・・・・・・ベクトルレジスタ
、ADD・・・・・・加算器、MUL・・・・・・乗算
器、AC□ 、A、Ci 、AC2、AC3、AC4、
AC5,AC6,AC7,ACB・・・・・・アドレス
カウンタ、I8C・・・・・・入力選択回路、OC8・
・・・・・出力選択回路、WCC・・・・・・書込制御
回路、5IIQ、SMI・・・・・・一致回路、FFQ
、FFI、FF2・・・・・・フリップフロップ、IR
□ 、 IRl 、 IR2、IR3・・・・・・入力
レジスタ、ADQ。
ADl、AD2.AD3.AD4.AD6・−・・・・
論32Ilifj回路。
論32Ilifj回路。
栴 I 図
隼、2Iffi
半 3図
手続補正書(,4゜
59.12.11
昭和 年 月 日
1、事件の表示 昭和58年特 許 願第179621
号2、発明の名称 ベクトル演算処理装置3、補正をす
る者 事件との関係 出 願 人 東京都港区芝五丁[」33番1号 (423) 日本電気株式会社 代表と 関本忠弘 4、代理人 〒108 東京都港区芝五I’l−+37悉8Σ; 住
友三IHビル(1)明細書の特許請求の範囲の欄 (2)明細書の発明の詳細な説明の欄 6 補正の内容 (1)別凪のとおシ (2)明細書の発明の詳細な説明の瘤を下記のように訂
正します。
号2、発明の名称 ベクトル演算処理装置3、補正をす
る者 事件との関係 出 願 人 東京都港区芝五丁[」33番1号 (423) 日本電気株式会社 代表と 関本忠弘 4、代理人 〒108 東京都港区芝五I’l−+37悉8Σ; 住
友三IHビル(1)明細書の特許請求の範囲の欄 (2)明細書の発明の詳細な説明の欄 6 補正の内容 (1)別凪のとおシ (2)明細書の発明の詳細な説明の瘤を下記のように訂
正します。
記
1 第7頁第15行目の記載1’−AD2と」を「AD
2とから構成されている。」と組正します。
2とから構成されている。」と組正します。
2 同頁第16行目の記載「円内」を「内積」と訂正し
ます。 ″ 代理人 弁理士 内 原 音 別 紙 特許請求の範囲 それぞれが順序付けられたデータエレメントを保持する
複数個のベクトルレジスタと、ベクトル演算器によって
指定される前記ベクトルレジスタから1111次に出力
されたデータエレメントをパイプライン方式によって演
算するベクトル演算器と、 該ベクトル演算器における前記漬獅−結果を前記ベクト
ル命令によって指定される+:fJ記ベクトルレジスク
に、爾:き込む人力選択回路と、前記ベクトル命令の指
示に応答して前記書込を前記複数個のベクトルレジスタ
に排他的に行なうように動作する吉込制a+i回路 とを設けたことを特徴とするベクトルOIi、>’4−
処理装置。
ます。 ″ 代理人 弁理士 内 原 音 別 紙 特許請求の範囲 それぞれが順序付けられたデータエレメントを保持する
複数個のベクトルレジスタと、ベクトル演算器によって
指定される前記ベクトルレジスタから1111次に出力
されたデータエレメントをパイプライン方式によって演
算するベクトル演算器と、 該ベクトル演算器における前記漬獅−結果を前記ベクト
ル命令によって指定される+:fJ記ベクトルレジスク
に、爾:き込む人力選択回路と、前記ベクトル命令の指
示に応答して前記書込を前記複数個のベクトルレジスタ
に排他的に行なうように動作する吉込制a+i回路 とを設けたことを特徴とするベクトルOIi、>’4−
処理装置。
Claims (1)
- 【特許請求の範囲】 それぞれがIl[序伺けられたデータエレメントを保持
する複数個のベクトルレジストと、ベクトル命令によっ
て指定される前記ベクトルレジスタからl1tk’1次
に出力されたデータエレメントをパイプライン方式によ
って演算するベクトルを算器と、 該ベクトル演算器における前Qi;演算結果を前記ベク
トル命令によって指定される前記ベクトルレジスタに■
き込む入力選択回路と、 前記ベクトル命令の指示に応答して前記書込を前記複数
個のベクトルレジスタに排他的に行なうように動作する
書込制御回路 とを設けたことを特徴とするベクトル演算処理装屑。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58179621A JPS6072069A (ja) | 1983-09-28 | 1983-09-28 | ベクトル演算処理装置 |
US06/654,889 US4761753A (en) | 1983-09-28 | 1984-09-27 | Vector processing apparatus |
EP84111542A EP0137422B1 (en) | 1983-09-28 | 1984-09-27 | Vector processing apparatus |
DE8484111542T DE3486073T2 (de) | 1983-09-28 | 1984-09-27 | Vektorverarbeitungsgeraet. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58179621A JPS6072069A (ja) | 1983-09-28 | 1983-09-28 | ベクトル演算処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6072069A true JPS6072069A (ja) | 1985-04-24 |
JPS6248873B2 JPS6248873B2 (ja) | 1987-10-15 |
Family
ID=16068956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58179621A Granted JPS6072069A (ja) | 1983-09-28 | 1983-09-28 | ベクトル演算処理装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4761753A (ja) |
EP (1) | EP0137422B1 (ja) |
JP (1) | JPS6072069A (ja) |
DE (1) | DE3486073T2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6267676A (ja) * | 1985-09-19 | 1987-03-27 | Nec Corp | ベクトルデ−タ処理装置 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06103494B2 (ja) * | 1986-11-18 | 1994-12-14 | 株式会社日立製作所 | ベクトル処理装置の制御方式 |
US4916651A (en) * | 1988-01-29 | 1990-04-10 | Texas Instruments Incorporated | Floating point processor architecture |
JP2806524B2 (ja) * | 1988-03-04 | 1998-09-30 | 日本電気株式会社 | ベクトル演算命令発行制御方法 |
EP0369396A3 (en) * | 1988-11-14 | 1992-10-07 | Nec Corporation | Arithmetic processing unit capable of performing vector/matrix processing |
US5218564A (en) * | 1991-06-07 | 1993-06-08 | National Semiconductor Corporation | Layout efficient 32-bit shifter/register with 16-bit interface |
US6385634B1 (en) * | 1995-08-31 | 2002-05-07 | Intel Corporation | Method for performing multiply-add operations on packed data |
US7395298B2 (en) * | 1995-08-31 | 2008-07-01 | Intel Corporation | Method and apparatus for performing multiply-add operations on packed data |
US7430578B2 (en) * | 2001-10-29 | 2008-09-30 | Intel Corporation | Method and apparatus for performing multiply-add operations on packed byte data |
CN107315718B (zh) * | 2016-04-26 | 2020-08-21 | 中科寒武纪科技股份有限公司 | 一种用于执行向量内积运算的装置和方法 |
CN117931729B (zh) * | 2024-03-22 | 2024-06-28 | 芯来智融半导体科技(上海)有限公司 | 向量处理器访存指令处理方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5727360A (en) * | 1980-07-25 | 1982-02-13 | Fujitsu Ltd | Accumulation instruction processing system |
JPS5730077A (en) * | 1980-07-31 | 1982-02-18 | Fujitsu Ltd | Accumulated instruction processing system |
JPS5798070A (en) * | 1980-12-12 | 1982-06-18 | Fujitsu Ltd | Data processing device |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4128880A (en) * | 1976-06-30 | 1978-12-05 | Cray Research, Inc. | Computer vector register processing |
US4302818A (en) * | 1979-07-10 | 1981-11-24 | Texas Instruments Incorporated | Micro-vector processor |
KR860001434B1 (ko) * | 1980-11-21 | 1986-09-24 | 후지쑤 가부시끼가이샤 | 데이타 처리시 스템 |
JPS57105078A (en) * | 1980-12-23 | 1982-06-30 | Hitachi Ltd | Vector processor |
JPS57155666A (en) * | 1981-03-20 | 1982-09-25 | Fujitsu Ltd | Instruction controlling system of vector processor |
JPS58114274A (ja) * | 1981-12-28 | 1983-07-07 | Hitachi Ltd | デ−タ処理装置 |
JPS58149555A (ja) * | 1982-02-27 | 1983-09-05 | Fujitsu Ltd | 並列処理装置 |
JPS58149556A (ja) * | 1982-02-27 | 1983-09-05 | Fujitsu Ltd | 並列処理装置 |
JPS59160267A (ja) * | 1983-03-02 | 1984-09-10 | Hitachi Ltd | ベクトル処理装置 |
JPS59173876A (ja) * | 1983-03-24 | 1984-10-02 | Fujitsu Ltd | ベクトル・デ−タ処理装置 |
US4661900A (en) * | 1983-04-25 | 1987-04-28 | Cray Research, Inc. | Flexible chaining in vector processor with selective use of vector registers as operand and result registers |
JPS6057467A (ja) * | 1983-09-09 | 1985-04-03 | Nec Corp | ベクトルデ−タ処理装置 |
JPS6077265A (ja) * | 1983-10-05 | 1985-05-01 | Hitachi Ltd | ベクトル処理装置 |
US4600986A (en) * | 1984-04-02 | 1986-07-15 | Sperry Corporation | Pipelined split stack with high performance interleaved decode |
US4620275A (en) * | 1984-06-20 | 1986-10-28 | Wallach Steven J | Computer system |
-
1983
- 1983-09-28 JP JP58179621A patent/JPS6072069A/ja active Granted
-
1984
- 1984-09-27 EP EP84111542A patent/EP0137422B1/en not_active Expired - Lifetime
- 1984-09-27 DE DE8484111542T patent/DE3486073T2/de not_active Expired - Lifetime
- 1984-09-27 US US06/654,889 patent/US4761753A/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5727360A (en) * | 1980-07-25 | 1982-02-13 | Fujitsu Ltd | Accumulation instruction processing system |
JPS5730077A (en) * | 1980-07-31 | 1982-02-18 | Fujitsu Ltd | Accumulated instruction processing system |
JPS5798070A (en) * | 1980-12-12 | 1982-06-18 | Fujitsu Ltd | Data processing device |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6267676A (ja) * | 1985-09-19 | 1987-03-27 | Nec Corp | ベクトルデ−タ処理装置 |
Also Published As
Publication number | Publication date |
---|---|
JPS6248873B2 (ja) | 1987-10-15 |
DE3486073D1 (de) | 1993-03-25 |
US4761753A (en) | 1988-08-02 |
EP0137422A3 (en) | 1988-08-31 |
EP0137422B1 (en) | 1993-02-17 |
EP0137422A2 (en) | 1985-04-17 |
DE3486073T2 (de) | 1993-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8335812B2 (en) | Methods and apparatus for efficient complex long multiplication and covariance matrix implementation | |
RU2263947C2 (ru) | Целочисленное умножение высокого порядка с округлением и сдвигом в архитектуре с одним потоком команд и множеством потоков данных | |
JP4584580B2 (ja) | 単一命令複数データ(simd)命令用の積和演算(mac)ユニット | |
US5261113A (en) | Apparatus and method for single operand register array for vector and scalar data processing operations | |
US4594655A (en) | (k)-Instructions-at-a-time pipelined processor for parallel execution of inherently sequential instructions | |
EP0314809B1 (en) | Vector processor for processing recurrent equations at a high speed | |
US7302627B1 (en) | Apparatus for efficient LFSR calculation in a SIMD processor | |
US20080052489A1 (en) | Multi-Pipe Vector Block Matching Operations | |
RU2139564C1 (ru) | Устройство для выполнения операций умножения-сложения с упакованными данными | |
JPH0562387B2 (ja) | ||
US6295597B1 (en) | Apparatus and method for improved vector processing to support extended-length integer arithmetic | |
JPH10214176A (ja) | 超越関数を迅速に計算する装置 | |
JPH0850575A (ja) | プログラマブルプロセッサ、前記プログラマブルプロセッサを用いてデジタル信号処理を行なうための方法およびその改良 | |
JPS6072069A (ja) | ベクトル演算処理装置 | |
US4791555A (en) | Vector processing unit | |
US6675286B1 (en) | Multimedia instruction set for wide data paths | |
CN113032723B (zh) | 一种矩阵乘法器的实现方法及矩阵乘法器装置 | |
EP0141232B1 (en) | Vector processing unit | |
US20100115232A1 (en) | Large integer support in vector operations | |
JPH01116730A (ja) | デイジタル信号処理プロセツサ | |
JP3394052B2 (ja) | 多精度運算方法及び多精度運算装置 | |
JP2654451B2 (ja) | データ出力方法 | |
SU1575175A1 (ru) | Конвейерный умножитель | |
JPH0648499B2 (ja) | プロセッシングユニット | |
JPS6083176A (ja) | ベクトルプロセツサ |