JPS6285383A - ベクトルプロセツサ - Google Patents

ベクトルプロセツサ

Info

Publication number
JPS6285383A
JPS6285383A JP60224730A JP22473085A JPS6285383A JP S6285383 A JPS6285383 A JP S6285383A JP 60224730 A JP60224730 A JP 60224730A JP 22473085 A JP22473085 A JP 22473085A JP S6285383 A JPS6285383 A JP S6285383A
Authority
JP
Japan
Prior art keywords
vector
register
sent
address
line
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
JP60224730A
Other languages
English (en)
Other versions
JP2667806B2 (ja
Inventor
Yoshio Takamine
高嶺 美夫
Takayuki Nakagawa
貴之 中川
Yoshiharu Kazama
風間 芳春
Yoshiaki Kinoshita
木下 佳明
Shunsuke Miyamoto
宮本 俊介
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP60224730A priority Critical patent/JP2667806B2/ja
Priority to US06/918,003 priority patent/US4811213A/en
Publication of JPS6285383A publication Critical patent/JPS6285383A/ja
Application granted granted Critical
Publication of JP2667806B2 publication Critical patent/JP2667806B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/8053Vector processors
    • G06F15/8076Details on data register access
    • G06F15/8084Special arrangements thereof, e.g. mask or switch

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

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、ベクトル演算を高速で実行するディジタル計
算機(以下これをベクトルプロセッサと呼ぶ)に関する
〔発明の背景〕
科学技術計算に頻繁に現われる大型行列計算などの高速
処理用にベクトルプロセッサが考案されている。ベクト
ルプロセッサでは1次のFORTRAN文で示すような
計算を高速にベクトル処理することができる。
Do 101=1.n 10  A (I) =B (I) +C(I)すなわ
ち、(A (I)、I=1.N)をベクトルA、(B 
CI)、I=1.N)をベクトルB、(C(I)、I=
1.N) をベクトルCとし、ベクトルB、ベクトルC
の各ベクトル要*CB(I)。
C(I)ごとに両者を加算し、結果をベクトルAとして
格納する。このようにベクトル要素間の演算を、ベクト
ルプロセッサはベクトル処理手法を用いて高速に処理す
ることができる。
しかし、従来のベクトルプロセッサでは、次のFORT
RANで示すような計算は高速にベクトル処理すること
ができなかった。
Do  10  I=1.N 10  K (I)=L (1,I)+L (2,I)
この場合、個々のベクトル要素中に性質の異なる2つの
データが含まれており、第1図に示すように、ベクトル
要素を複数の区分に分割し、分割された区分を別々に使
用する処理が必要である。その方法として、従来のベク
トルプロセッサでは、次の2つの処理方法が考えられる
。処理方法の第1は、第2図に示すように分割すべき区
分ごとに別々に移動を行う方法である。ところがベクト
ル要素の区分であるL (1,I)、L (2,I)の
話出しは、L (1,I)、L (2,I)を含むベク
トル要素を単位として行われる。そのため、この方法で
はL (1,I)の移動とL (2,I)の移動とにお
いて、同一のベクトル要素に対して読出し要求がなされ
るという衝突が発生し、高速なベクトル処理が妨げられ
る。処理方法の第2は、第3図に示すように各ベクトル
要素を一度2つのベクトルレジスタに移動し、移動した
ベクトル要素のいくつかに対してシフト演算を行う方法
である。この方法では、シフト演算を行うための演算器
、ベクトルレジスタなど、より多くの計算機資源を必要
とし、高速なベクトル処理が妨げられることがある。
第1図に示すような処理は、例えば複雑なリスト構造を
持つ表の処理において必須となるものである。
〔発明の目的〕
本発明の目的は、第1図に示すような処理を、ベクトル
処理として高速に実行するベクトルプロセッサを提供す
ることにある。
〔発明の概要〕
本発明は、従来のベクトルプロセッサでは第2図あるい
は第3図に示すように複数の命令を用いなければ実行で
きなかった処理を、第4図に示すように単一の命令で実
行し、高速なベクトル処理を実現するものである。
〔発明の実施例〕
以下1本発明の一実施例を第5図により説明する。第5
図において、レジスタR1は命令レジスタで、4つのフ
ィールドに分割されている。OPフィールドは命令コー
ドを示し、その内容は線e1によって演算制御袋[C1
に送られる。Rフィールドは、移動したデータベクトル
を格納する複数のベクトルレジスタを指定するベクトル
レジスタ番号を示し、その内容は線Q2によって演算制
御袋[C1、および分配器D1に送られる。Aフィール
ドは、ベクトル・アドレス・レジスタR4およびベクト
ル増分レジスタR5のレジスタ番号を示し、その内容は
線Q3によって選択器S4、および選択器S5に送られ
る。Bフィールドは、ベクトル・ベース・レジスタR3
のレジスタ番号を示し、その内容は縁Q4によって選択
器S 3に送られる。演算制御袋[C1は、内部にタイ
ミング発生回路を有し、レジスタR1に命令がセットさ
れると、データベクトルの続出し、シフト演算の実行、
分割されたデータベクトルの書込みという一連の動作を
制御するための信号を、線Q5゜線Q6.線Q7を通じ
て記憶袋!11M1.シフト演算器SHI、ベクトルレ
ジスタR2に、順次送出する。ベクトル・ベース・レジ
スタR3は、記憶装置M1内のアドレスを保持する。バ
ク1−ル・アドレス・レジスタR4は、ベクトル・ベー
ス・レジスタR3と同様、記憶装置M1内のアドレスを
保持する。ベクトル増分レジスタR5は、記憶袋!Ml
内のベクトル要素のアドレス間隔を保持する。選択器S
3、およびS4とS5は、それぞれ線Q4.Q3を通じ
て送られてくるレジスタ番号に従って、ベクトル・ベー
ス・レジスタR3、ベクトル・アドレス・レジスタR4
、ベクトル増分レジスタR5の中のそれぞれ1つの内容
を読出し。
gQ8,129. QIOに送出する。アドレス発生回
路C2は、線Ω5によって送られてくるベクトル増分レ
ジスタR5の内容に、ベクトル要素番号を乗じ、それに
線Q4によって送られてくるベクトル・アドレス・レジ
スタR4の内容と、@Q3によって送られてくるベクト
ル・ベース・レジスタR3の内容とを加えて、記憶袋!
ML内のベクトル要素のアドレスとし、線Q 3− J
−に送出する。
記憶装置M1は、線Q 1−1によって送られてくるア
ドレスに存在するベクトル要素を、線Q5によって送ら
れてくるタイミング信号に従って読出し、NfAQ12
に送出する。分配器D]は、縁り、 12によって送ら
れてくるデータベクトルを、線Q2によって送られてく
るレジスタ番号と、そのレジスタ番号に1を加えた番号
のシフト演算器S H1に送出する。シフト演算器51
11は、ベクトルレジスタR2と対を成している。そし
て偶数番号のシフト演算器SHIは、分配器D1から送
られてくるベクトル要素の下位単要素をすべてOとし、
奇数番号のシフト演算器SHIは、分配器D1から送ら
れてくるベクトル要素の下位単要素を上位要素の位置に
シフトし、下位単要素の位置はすべて0として、ベクト
ルレジスタR2に送出する。ベクトルレジスタR2は、
シフト演算器S H1から送られてくるデータベクトル
を、線Q7によって送られてくるタイミング信号に従っ
て格納する。
次に、本実施例の動作を詳細に説明する。命令レジスタ
R1に、本動作の実行を指示する命令が入力されると、
OP、R,A、Bの各フィールドの内容は、それぞれ線
21.Q2.Q3.Q4によって演算制御装置C1,分
配器D19選択器S4.S5および選択器S3に送出さ
れる。選択器S3はBフィールドのレジスタ番号のベク
トル・ベース・レジスタR3からアドレスを読出し、線
Q8に送出する。また1選択器S4.S5は、Aフィー
ルドのレジスタ番号のベクトル・アドレス・レジスタR
4,ベクトル増分レジスタR5からアドレスおよびアド
レス間隔を読出し、線Q9゜Q10に送出する。そして
アドレス発生回路C2は線QB、Q9.Ω10によって
送られてくるアドレスおよびアドレス間隔から、記憶装
置11M1内のベクトル要素アドレスを計算し、線Ql
lに送出する。同時に分配器D1は、線1212上のデ
ータベクトルを、Rフィールドのレジスタ番号と、それ
に1を加えた番号のベクトルレジスタR2に対応するシ
フト演算器SHIに送出する様、データ経路を設定する
0次に演算制御装置C1は、線Q5により記憶装置M1
に読出し指示を送出し。
読出されたデータベクトルは線Q12に送出される1以
上の動作は、通常のベクトルプロセッサと同様であるの
で、より詳細な説明は省略する。
続いて演算制御装[C1は、線Q6により、レジスタR
1のRフィールドのレジスタ番号のベクトルレジスタR
2に対応するシフト演算器SHIに対し1分配器D1か
ら送られてくるベクトル要素の下位単要素をすべてに0
をセットして、対応するベクトルレジスタR2に送出す
ることを指示する信号を送る。また同時に、Rフィール
ドのレジスタ番号に1を加えた番号のベクトルレジスタ
R2に対応するシフト演算器SHIに対し2分配器D1
から送られてくるベクトル要素の下位単要素を上位単要
素の位置にシフトし、下位単要素の位置に0をセットし
て、対応するベクトルレジスタR2に送出する信号を送
る。これにより、記憶表[Mlから読出された各ベクト
ル要号は、その上位単要素と下位単要素とに分割され、
上位単要素は、Rフィールドのレジスタ番号のベクトル
レジスタR2に、下位単要素は、Rフィールドのレジス
タ番号に1を加えた番号のベクトルレジスタR2に、そ
れぞれ送出される。
最後に、通常のベクトルプロセッサの動作と同様に、演
算制御装Fillは線Q7により、Rフィールドのレジ
スタ番号と、それに1−を加えた番号のベクトルレジス
タに対し、データベクトルの格納を指示するタイミング
13号を送出し、分割されたデータベクトルの、ベクト
ルレジスタR2への書込みが行われ、本動作は終了する
本実施例の説明の他にもいろいろな変形例が考えられる
。たとえば、記憶装!Ml内のベクトル要素アドレスを
決定するために、本実施例ではベクトル・ベース・レジ
スタR3とベクトル・アドレス・レジスタR4、ベクト
ル増分レジスタR5を用いたが、ベクトル・ベース・レ
ジスタR3とベクトルレジスタR2とを用いて、リスト
ベクトルとしても良い。さらに、本実施例では、移動す
るデータベクトルは記憶装置iM1から読出すとしてい
るが、他のベクトルレジスタR2から読出しても良い、
同様に、本実施例では、分割後のデートベクトルはベク
トルレジスタR2に格納するとしているが、記憶表[M
lに格納しても良い。また、Rフィールドを複数個使用
することによって、移動したデータベクトルを格納する
複数のベクトルレジスタを個々に指定することが可能で
ある。
また各ベクトル要素に対し、それを複数の区分に分割す
る位置は、命令の種類によって固定でもよいし、他の制
御用のレジスタによって変更可能としてもよい。
本実施例によれば、第4図に示すように、1つのベクト
ル要素中に性質の異なる複数のデータを含むようなデー
タベグ1−ルを、は−の命令で複数のベクトルレジスタ
に格納し、本動作の後に分割したそれぞれのデータをそ
のまま他の処理の実行に使用することが可能である。こ
れにより、記憶装置内で分割すべき個々のデータを別々
に読出すことにより生じるような衝突を回避し、高速な
ベクトル処理を実施することが可能となる。
〔発明の効果〕
本発明によれば、第4図に示すように性質の異なる複数
の区分を有するデータベクトルを単一の命令で移動でき
るので、第1図に示すような処理を、ベクトル処理とし
て高速に実行す−るという効果がある。
【図面の簡単な説明】
第1図は1本発明で行う処理の一例を示した図、第2図
および第3図は、従来のベクトルプロセッサによるベク
トル処理の例を示した図、第4図は、本発明によるバク
1−ル処理の一例を示した図、第5図は、本発明の一実
施例を示す構成図である。 R1・・・命令レジスタ、C1・・・演算制御装置、C
2・・・アドレス発生回路、Ml・・・記憶装置、Dl
・・・分配器、SHI・・・シフト演算器、R2・・・
ベクトルレジスタ、R3・・・ベクトル・ベース・レジ
スタ、R4・・・ベクトル・アドレス・レジスタ、R5
・・・ベクトル増分レジスタ。

Claims (1)

    【特許請求の範囲】
  1. データベクトルを、互いに異なる複数のベクトルレジス
    タに同時に移動するベクトルプロセッサにおいて、上記
    移動の際に、上記データベクトルのベクトル要素を複数
    の区分に分割し、分割された区分ごとに独立にシフト演
    算を行つた後、それぞれ上記異なるベクトルレジスタに
    移動することを特徴とするベクトルプロセッサ。
JP60224730A 1985-10-11 1985-10-11 ベクトルプロセツサ Expired - Lifetime JP2667806B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP60224730A JP2667806B2 (ja) 1985-10-11 1985-10-11 ベクトルプロセツサ
US06/918,003 US4811213A (en) 1985-10-11 1986-10-14 Vector processor with vector registers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60224730A JP2667806B2 (ja) 1985-10-11 1985-10-11 ベクトルプロセツサ

Publications (2)

Publication Number Publication Date
JPS6285383A true JPS6285383A (ja) 1987-04-18
JP2667806B2 JP2667806B2 (ja) 1997-10-27

Family

ID=16818342

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60224730A Expired - Lifetime JP2667806B2 (ja) 1985-10-11 1985-10-11 ベクトルプロセツサ

Country Status (2)

Country Link
US (1) US4811213A (ja)
JP (1) JP2667806B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01231174A (ja) * 1988-03-11 1989-09-14 Nec Corp メモリアクセス制御装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7197625B1 (en) * 1997-10-09 2007-03-27 Mips Technologies, Inc. Alignment and ordering of vector elements for single instruction multiple data processing
US7299338B2 (en) * 2002-12-04 2007-11-20 Agere Systems Inc. Vector indexed memory unit and method
US10019262B2 (en) * 2015-12-22 2018-07-10 Intel Corporation Vector store/load instructions for array of structures

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6024672A (ja) * 1983-07-20 1985-02-07 Hitachi Ltd ベクトル処理装置
JPS60186964A (ja) * 1984-03-05 1985-09-24 Hitachi Ltd ベクトル処理装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2253415A5 (ja) * 1973-12-04 1975-06-27 Cii
US4085447A (en) * 1976-09-07 1978-04-18 Sperry Rand Corporation Right justified mask transfer apparatus
US4139899A (en) * 1976-10-18 1979-02-13 Burroughs Corporation Shift network having a mask generator and a rotator
KR860001434B1 (ko) * 1980-11-21 1986-09-24 후지쑤 가부시끼가이샤 데이타 처리시 스템
JPS57209570A (en) * 1981-06-19 1982-12-22 Fujitsu Ltd Vector processing device
JPS58149556A (ja) * 1982-02-27 1983-09-05 Fujitsu Ltd 並列処理装置
JPS5975365A (ja) * 1982-10-22 1984-04-28 Hitachi Ltd ベクトル処理装置
JPS59111569A (ja) * 1982-12-17 1984-06-27 Hitachi Ltd ベクトル処理装置
JPS6015771A (ja) * 1983-07-08 1985-01-26 Hitachi Ltd ベクトルプロセッサ
JPS6089274A (ja) * 1983-10-20 1985-05-20 Nec Corp ベクトルマスク制御システム
JPS60263268A (ja) * 1984-06-12 1985-12-26 Nec Corp ベクトル処理装置
JPS619759A (ja) * 1984-06-26 1986-01-17 Nec Corp ベクトル処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6024672A (ja) * 1983-07-20 1985-02-07 Hitachi Ltd ベクトル処理装置
JPS60186964A (ja) * 1984-03-05 1985-09-24 Hitachi Ltd ベクトル処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01231174A (ja) * 1988-03-11 1989-09-14 Nec Corp メモリアクセス制御装置

Also Published As

Publication number Publication date
JP2667806B2 (ja) 1997-10-27
US4811213A (en) 1989-03-07

Similar Documents

Publication Publication Date Title
US3544973A (en) Variable structure computer
US5226171A (en) Parallel vector processing system for individual and broadcast distribution of operands and control information
EP0117220A2 (en) Staging memory for massively parallel processor
JPS6131502B2 (ja)
EP0263500B1 (en) Vector data processing system comprising an I/O control for each vector data processor and another I/O control for at least one other vector data processor
JPS61160176A (ja) ベクトル処理装置
JPH03286332A (ja) デジタルデータ処理装置
JPS6285383A (ja) ベクトルプロセツサ
EP0169030A2 (en) Data processing circuit for calculating either a total sum or a total product of a series of data at a high speed
JPH05143633A (ja) イソジオメトリツク形高速フーリエ変換実現方式
JPH06309349A (ja) プログラム制御のプロセッサ
JPH0496172A (ja) データ格納方法,ベクトルデータバッファ装置およびベクトルデータ処理装置
JPS6260755B2 (ja)
EP0107447B1 (en) Computer data distributor
JPS626373A (ja) ベクトル制御方式
JP2576589B2 (ja) 仮想記憶アクセス制御方式
GB1233484A (ja)
JPH05108586A (ja) 並列演算機構及び並列演算方法
JPS5947668A (ja) 情報処理装置
JPS6024672A (ja) ベクトル処理装置
JPH05165875A (ja) ベクトル演算処理装置
JPS6279519A (ja) 汎用レジスタ読み出し方法
JPH03191448A (ja) ベクトルデータバッファ装置
JPH0616293B2 (ja) 画像処理装置
JPS6343784B2 (ja)