JPH0345420B2 - - Google Patents
Info
- Publication number
- JPH0345420B2 JPH0345420B2 JP22379482A JP22379482A JPH0345420B2 JP H0345420 B2 JPH0345420 B2 JP H0345420B2 JP 22379482 A JP22379482 A JP 22379482A JP 22379482 A JP22379482 A JP 22379482A JP H0345420 B2 JPH0345420 B2 JP H0345420B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- vector
- arithmetic unit
- data
- scalar
- 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
Links
- 230000004913 activation Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
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
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)
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明はベクトル処理装置に係り、特にベクト
ル処理に於いて、効率的にスカラー・レジスタを
読出すことのできるベクトル処理装置に関する。
ル処理に於いて、効率的にスカラー・レジスタを
読出すことのできるベクトル処理装置に関する。
科学技術計算に頻繁に現れる大型行列計算など
を高速に処理するため、複数のベクトル・レジス
タ及びスカラー・レジスタ、複数の演算器及びメ
モリ・リクエスタを持つベクトル処理装置が提案
されている。その概略構成図を、第1図に示す。
を高速に処理するため、複数のベクトル・レジス
タ及びスカラー・レジスタ、複数の演算器及びメ
モリ・リクエスタを持つベクトル処理装置が提案
されている。その概略構成図を、第1図に示す。
このようなベクトル処理装置においては、ベク
トル・レジスタ(以下VRと称する。)1及びス
カラー・レジスタ(以下SRと称する。)2は、主
記憶装置6と演算器5との間に位置し、主記憶装
置6よりのフエツチ・データや演算の中間結果を
格納し、又読出して演算器5へオペランドとして
供給する機能を持つ。
トル・レジスタ(以下VRと称する。)1及びス
カラー・レジスタ(以下SRと称する。)2は、主
記憶装置6と演算器5との間に位置し、主記憶装
置6よりのフエツチ・データや演算の中間結果を
格納し、又読出して演算器5へオペランドとして
供給する機能を持つ。
次のベクトル処理の例で、VRとSR、特にSR
の用途を挙げる。
の用途を挙げる。
例 1
Y(I)=A(I)*C
(I=1、2、…、L)
例 2
Z(I)=2+C
(I=1、2、…、L)
例1では、ベクトル・データA(1)、…、A(L)は
VRに格納しておき、スカラー・データCはSRに
格納しておき、各々読出して乗算器へ供給して演
算を行い、演算結果のベクトル・データY(1)、
…、Y(L)はVRへ格納する。例2では、スカラ
ー・データBとCをSRより読出してL回加算を
行い、その結果のベクトル・データZ(1)、…、Z
(L)をVRへ格納する。上例は各々1個のベクトル
命令(乗算、加算)として実行される。
VRに格納しておき、スカラー・データCはSRに
格納しておき、各々読出して乗算器へ供給して演
算を行い、演算結果のベクトル・データY(1)、
…、Y(L)はVRへ格納する。例2では、スカラ
ー・データBとCをSRより読出してL回加算を
行い、その結果のベクトル・データZ(1)、…、Z
(L)をVRへ格納する。上例は各々1個のベクトル
命令(乗算、加算)として実行される。
第1図に示すように、VRとSRの入力部と出力
部には、任意の主記憶装置6のポート及び演算器
5と、任意のVR及びSRとの間でデータが自由に
転送できるように、分配回路(DIST)3及び選
択回路(SEL)4から成る一種のマトリクス回路
が存在する。
部には、任意の主記憶装置6のポート及び演算器
5と、任意のVR及びSRとの間でデータが自由に
転送できるように、分配回路(DIST)3及び選
択回路(SEL)4から成る一種のマトリクス回路
が存在する。
第2図に、SEL4の従来の構成例を示す。即
ち、全てのVR、SRを各演算器5へのオペランド
供給パス及び主記憶装置6へのストア・パスに選
択する選択器群により構成される。従つてこの部
分の回路は、選択されるべきVR及びSRの本数
と、主記憶装置6へのストア・パス数及び演算器
5へのオペランド供給パス数の積に応じてゲート
規模が増加し、しかもVR、SR部の大部分のゲー
ト数を占めてしまうという問題点がある。
ち、全てのVR、SRを各演算器5へのオペランド
供給パス及び主記憶装置6へのストア・パスに選
択する選択器群により構成される。従つてこの部
分の回路は、選択されるべきVR及びSRの本数
と、主記憶装置6へのストア・パス数及び演算器
5へのオペランド供給パス数の積に応じてゲート
規模が増加し、しかもVR、SR部の大部分のゲー
ト数を占めてしまうという問題点がある。
そこでVRとSRの読出し部(SEL)に於いて、
スカラ・データの特殊性を考慮して、ゲート規模
を増加させず、効率的にSRを読出し、またそれ
にストアする必要が生じる。
スカラ・データの特殊性を考慮して、ゲート規模
を増加させず、効率的にSRを読出し、またそれ
にストアする必要が生じる。
本発明の目的は上記の如き従来の問題点を除去
するものであり、ベクトル処理に於いて、スカラ
レジスタを効率的に読出すことができる効果を有
するベクトル処理装置を提供することにある。
するものであり、ベクトル処理に於いて、スカラ
レジスタを効率的に読出すことができる効果を有
するベクトル処理装置を提供することにある。
このために本発明においては、SR読出し専用
の選択回路を2組設け、ベクトル命令起動時に、
その指令に従い予めスカラー・データを選択して
後段の最終選択回路へ送り、ここで最終的に必要
なオペランドを選択する。しかも、スカラ・デー
タは、この後段のレジスタに於いてそのベクトル
命令実行中保持することで供給し続けるようにす
る。このような構成により、ゲート数を大巾に削
減することができる。
の選択回路を2組設け、ベクトル命令起動時に、
その指令に従い予めスカラー・データを選択して
後段の最終選択回路へ送り、ここで最終的に必要
なオペランドを選択する。しかも、スカラ・デー
タは、この後段のレジスタに於いてそのベクトル
命令実行中保持することで供給し続けるようにす
る。このような構成により、ゲート数を大巾に削
減することができる。
以下、本発明の実施例につき図面を用いて詳細
に説明する。
に説明する。
(イ) 実施例の構成
第1図は本発明の一実施例であるベクトル処
理装置の概略構成図である。主記憶装置6より
フエツチされたデータは、分配回路3を介して
適当なVR1あるいはSR2へ格納される。演算
に際しては、適当なVR1及びSR2が読出さ
れ、選択回路4を介して、適当な演算器5へ順
次供給される。演算器5より出力された演算結
果は、再び分配回路3を介して適当なVR1あ
るいはSR2に格納される。このようにして、
演算を繰り返した後、必要な演算結果はそれが
格納されているVR1あるいはSR2より選択回
路4を介して順次主記憶装置6へ供給されてス
トアされる。
理装置の概略構成図である。主記憶装置6より
フエツチされたデータは、分配回路3を介して
適当なVR1あるいはSR2へ格納される。演算
に際しては、適当なVR1及びSR2が読出さ
れ、選択回路4を介して、適当な演算器5へ順
次供給される。演算器5より出力された演算結
果は、再び分配回路3を介して適当なVR1あ
るいはSR2に格納される。このようにして、
演算を繰り返した後、必要な演算結果はそれが
格納されているVR1あるいはSR2より選択回
路4を介して順次主記憶装置6へ供給されてス
トアされる。
第3図は本発明の一実施例であるベクトル処
理装置のVR・SR読出し部の構成図である。第
3図では、VR及びSRが各4本、演算器が2個
備えている場合の例を示してある。4本のSR
2の読出しデータ線21は、まず2組のSR専
用選択回路40a,40bに入力されて、4本
のうちいずれか2組が選択される。一方、4本
のVRの読出しデータ線11は、各演算器5の
2つのオペランド入力(a、b)に対応した4
組の最終選択回路41a,41b,42a,4
2bに入力されており、また上記SR専用選択
回路40aの出力は、最終選択回路41a,4
1bに、また同じく40bの出力は41b,4
2bに入力されている。この最終選択回路の出
力は、各演算器5の入力レジスタ51a,51
b,52a,52bへ接続されて演算に供され
る。尚、主記憶装置へのストア用選択回路部分
は、第3図より省略してあるが全く同様に構成
することができる。
理装置のVR・SR読出し部の構成図である。第
3図では、VR及びSRが各4本、演算器が2個
備えている場合の例を示してある。4本のSR
2の読出しデータ線21は、まず2組のSR専
用選択回路40a,40bに入力されて、4本
のうちいずれか2組が選択される。一方、4本
のVRの読出しデータ線11は、各演算器5の
2つのオペランド入力(a、b)に対応した4
組の最終選択回路41a,41b,42a,4
2bに入力されており、また上記SR専用選択
回路40aの出力は、最終選択回路41a,4
1bに、また同じく40bの出力は41b,4
2bに入力されている。この最終選択回路の出
力は、各演算器5の入力レジスタ51a,51
b,52a,52bへ接続されて演算に供され
る。尚、主記憶装置へのストア用選択回路部分
は、第3図より省略してあるが全く同様に構成
することができる。
第4図は本発明の一実施例であるベクトル処
理装置のVR・SR読出し制御部の構成図であ
る。解読されて実行すべきベクトル命令の情報
は、命令レジスタ7に与えられる。そのうち演
算器番号E71は2ビツトで、‘1'は演算器1
を、‘2'は演算器2を指定し、それ以外は該当
しないものとする。また演算器の2つオペラン
ドとなるべきVR・SRの番号A72、B73は
各3ビツトで与えられ、そのうち先頭1ビツト
が‘0'ならVRを、‘1'ならばSRを指定する。
この情報Aは、SR専用選択回路40aの選択
条件レジスタ80aおよび演算器1のa側入力
に対応する最終選択回路41aの選択条件レジ
スタ81aと同じく、選択条件レジスタ82a
に入力されている。ここで、選択条件レジスタ
80aは、ベクトル命令起動に際して、A72
の内容がセツトされるが、選択条件レジスタ8
1a,82aは、命令起動時演算器番号E71
のデコード結果75に従い、対応する演算器の
選択条件レジスタのみがセツトされる。
理装置のVR・SR読出し制御部の構成図であ
る。解読されて実行すべきベクトル命令の情報
は、命令レジスタ7に与えられる。そのうち演
算器番号E71は2ビツトで、‘1'は演算器1
を、‘2'は演算器2を指定し、それ以外は該当
しないものとする。また演算器の2つオペラン
ドとなるべきVR・SRの番号A72、B73は
各3ビツトで与えられ、そのうち先頭1ビツト
が‘0'ならVRを、‘1'ならばSRを指定する。
この情報Aは、SR専用選択回路40aの選択
条件レジスタ80aおよび演算器1のa側入力
に対応する最終選択回路41aの選択条件レジ
スタ81aと同じく、選択条件レジスタ82a
に入力されている。ここで、選択条件レジスタ
80aは、ベクトル命令起動に際して、A72
の内容がセツトされるが、選択条件レジスタ8
1a,82aは、命令起動時演算器番号E71
のデコード結果75に従い、対応する演算器の
選択条件レジスタのみがセツトされる。
演算器のb側入力に対応する、VR・SR番号
B73、及び選択条件レジスタ80b,81
b,82bの動作もa側に全く同様である。
B73、及び選択条件レジスタ80b,81
b,82bの動作もa側に全く同様である。
演算器1のa側の入力レジスタ51aには、
選択条件レジスタ81aの先頭1ビツトの情報
に従い、演算終了までの間、スカラー・データ
保持信号91aが出力される。91b,92
a,92bについても同様である。これによ
り、SR専用選択回路40aを介し、最終選択
回路41aを介し、入力レジスタ51aにセツ
トされたスカラー・データは演算終了までの間
保持されたままで、演算に供される。
選択条件レジスタ81aの先頭1ビツトの情報
に従い、演算終了までの間、スカラー・データ
保持信号91aが出力される。91b,92
a,92bについても同様である。これによ
り、SR専用選択回路40aを介し、最終選択
回路41aを介し、入力レジスタ51aにセツ
トされたスカラー・データは演算終了までの間
保持されたままで、演算に供される。
(ロ) 実施例の動作
前述の例1と例2のような乗算と加算のベク
トル命令が続けて起動された時のVR及びSRの
読出し動作について考える。
トル命令が続けて起動された時のVR及びSRの
読出し動作について考える。
まず乗算が起動されて、命令レジスタ7に起
動情報がセツトされる。演算器番号Eは‘1'、
オペランド番号Aは‘0'(即ちVR0番)、オペラ
ンド番号Bは‘4'(即ちSR0番)であるとする。
選択条件レジスタ81aには‘0'が入り、セツ
トされるので、以後選択回路41aはVR0番
の読出しデータを順次入力レジスタ51aに流
し続ける。一方、選択条件レジスタ80bには
‘40'が入り、SR0番の読出しデータを選択し
出力する。選択条件レジスタ41bには‘4'が
セツトされ、上記80bの出力を選択するの
で、SR0番の読出しデータが入力レジスタ51
bにセツトされる。これ以後81bの先頭ビツ
トの‘1'値のため出力される保持信号91bに
より入力レジスタ51bのスカラ・データは保
持されるので、演算終了まで同じデータが流れ
続ける。これにより、演算器1は、VR0番の
データを順次、入力レジスタ51aより供さ
れ、SR0番のデータを持続的に入力レジスタ5
1bより供され、L回の演算を行う。
動情報がセツトされる。演算器番号Eは‘1'、
オペランド番号Aは‘0'(即ちVR0番)、オペラ
ンド番号Bは‘4'(即ちSR0番)であるとする。
選択条件レジスタ81aには‘0'が入り、セツ
トされるので、以後選択回路41aはVR0番
の読出しデータを順次入力レジスタ51aに流
し続ける。一方、選択条件レジスタ80bには
‘40'が入り、SR0番の読出しデータを選択し
出力する。選択条件レジスタ41bには‘4'が
セツトされ、上記80bの出力を選択するの
で、SR0番の読出しデータが入力レジスタ51
bにセツトされる。これ以後81bの先頭ビツ
トの‘1'値のため出力される保持信号91bに
より入力レジスタ51bのスカラ・データは保
持されるので、演算終了まで同じデータが流れ
続ける。これにより、演算器1は、VR0番の
データを順次、入力レジスタ51aより供さ
れ、SR0番のデータを持続的に入力レジスタ5
1bより供され、L回の演算を行う。
乗算起動の次のサイクルで、例2のような加
算ベクトル命令が起動されたとする。演算器番
号Eは‘2'、オペランド番号Aは‘5'(即ち
SR1番)、オペランド番号Bは‘7'(即ち、SR3
番)であるとする。選択回路40aは、SR1番
の読出しデータを、選択回路40bは、SR3番
の読出しデータを選択して出力する。又、選択
回路42aは40aの出力を、42bは40b
の出力を選択し、これが入力レジスタ52a,
52bで各々保持されて、演算に供され、L回
の加算が行われる。
算ベクトル命令が起動されたとする。演算器番
号Eは‘2'、オペランド番号Aは‘5'(即ち
SR1番)、オペランド番号Bは‘7'(即ち、SR3
番)であるとする。選択回路40aは、SR1番
の読出しデータを、選択回路40bは、SR3番
の読出しデータを選択して出力する。又、選択
回路42aは40aの出力を、42bは40b
の出力を選択し、これが入力レジスタ52a,
52bで各々保持されて、演算に供され、L回
の加算が行われる。
命令起動は1サイクル毎行われるが、上記各
L回の乗算実行と、加算実行はほとんど並行し
て行われる。
L回の乗算実行と、加算実行はほとんど並行し
て行われる。
上記実施例の説明に於いては、主記憶装置へ
のストア動作については省略してあるが、演算
器に対する場合と全く同様に実現することがで
きる。
のストア動作については省略してあるが、演算
器に対する場合と全く同様に実現することがで
きる。
以上述べた如き構成であるから、本発明によれ
ばベクトル処理装置のスカラ・レジスタの読出し
から、演算器へのオペランド送出及び主記憶装置
へのストア・データ送出の回路において、パス数
を減少させ、選択回路のゲート規模を削減して、
効率的にスカラー・レジスタを読出すことができ
る効果がある。
ばベクトル処理装置のスカラ・レジスタの読出し
から、演算器へのオペランド送出及び主記憶装置
へのストア・データ送出の回路において、パス数
を減少させ、選択回路のゲート規模を削減して、
効率的にスカラー・レジスタを読出すことができ
る効果がある。
第1図は、本発明の一実施例であるベクトル処
理装置の概略構成図、第2図は、従来の選択回路
の構成例を示す図、第3図及び第4図は本発明の
一実施例の構成図である。 1……ベクトル・レジスタ(VR)、2……ス
カラ・レジスタ(SR)、3……分配回路、4……
選択回路、5……演算器、6……主記憶装置、4
0a,40b……SR専用選択回路、41a,4
1b,42a,42b……最終選択回路、80
a,80b,81a,81b,82a,82b…
…選択条件レジスタ、74……演算器番号デコー
ダ、7……命令レジスタ。
理装置の概略構成図、第2図は、従来の選択回路
の構成例を示す図、第3図及び第4図は本発明の
一実施例の構成図である。 1……ベクトル・レジスタ(VR)、2……ス
カラ・レジスタ(SR)、3……分配回路、4……
選択回路、5……演算器、6……主記憶装置、4
0a,40b……SR専用選択回路、41a,4
1b,42a,42b……最終選択回路、80
a,80b,81a,81b,82a,82b…
…選択条件レジスタ、74……演算器番号デコー
ダ、7……命令レジスタ。
Claims (1)
- 1 複数のベクトル・レジスタ及びスカラー・レ
ジスタ、複数の演算器、複数のメモリ・リクエス
タを備えてベクトル命令を実行するベクトル処理
装置において、ベクトル命令の起動情報に従い、
予めスカラー・レジスタの読出しデータのみを選
択する第1の選択手段と、該第1の選択出力及び
ベクトル・レジスタの読出しデータとを選択する
第2の選択手段と、順次スカラー・データを読出
してベクトル命令実行中保持するレジスタを設け
たことを特徴とするベクトル処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22379482A JPS59114677A (ja) | 1982-12-22 | 1982-12-22 | ベクトル処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22379482A JPS59114677A (ja) | 1982-12-22 | 1982-12-22 | ベクトル処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS59114677A JPS59114677A (ja) | 1984-07-02 |
JPH0345420B2 true JPH0345420B2 (ja) | 1991-07-11 |
Family
ID=16803815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22379482A Granted JPS59114677A (ja) | 1982-12-22 | 1982-12-22 | ベクトル処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59114677A (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS622363A (ja) * | 1985-06-27 | 1987-01-08 | Nec Corp | 演算装置 |
JPS622364A (ja) * | 1985-06-27 | 1987-01-08 | Nec Corp | 演算装置 |
JPS6314275A (ja) * | 1986-07-04 | 1988-01-21 | Nec Corp | ベクトル演算プロセツサのスカラデ−タ演算方式 |
US4980817A (en) * | 1987-08-31 | 1990-12-25 | Digital Equipment | Vector register system for executing plural read/write commands concurrently and independently routing data to plural read/write ports |
JP2583614B2 (ja) * | 1989-09-21 | 1997-02-19 | 株式会社日立製作所 | ベクトル演算装置 |
JPH04181374A (ja) * | 1990-11-15 | 1992-06-29 | Koufu Nippon Denki Kk | ベクトル処理装置 |
JPH04181373A (ja) * | 1990-11-15 | 1992-06-29 | Koufu Nippon Denki Kk | ベクトル処理装置 |
CN112286578A (zh) | 2019-07-25 | 2021-01-29 | 北京百度网讯科技有限公司 | 由计算设备执行的方法、装置、设备和计算机可读存储介质 |
-
1982
- 1982-12-22 JP JP22379482A patent/JPS59114677A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS59114677A (ja) | 1984-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5287532A (en) | Processor elements having multi-byte structure shift register for shifting data either byte wise or bit wise with single-bit output formed at bit positions thereof spaced by one byte | |
US5859789A (en) | Arithmetic unit | |
US6061779A (en) | Digital signal processor having data alignment buffer for performing unaligned data accesses | |
JP3889069B2 (ja) | プログラマブルプロセッサ、前記プログラマブルプロセッサを用いてデジタル信号処理を行なうための方法およびその改良 | |
US8074058B2 (en) | Providing extended precision in SIMD vector arithmetic operations | |
JPH0374434B2 (ja) | ||
US4539635A (en) | Pipelined digital processor arranged for conditional operation | |
US7308559B2 (en) | Digital signal processor with cascaded SIMD organization | |
KR850004680A (ko) | 집적 프로세서 | |
US5692207A (en) | Digital signal processing system with dual memory structures for performing simplex operations in parallel | |
US4085450A (en) | Performance invarient execution unit for non-communicative instructions | |
JPH0414385B2 (ja) | ||
US6542989B2 (en) | Single instruction having op code and stack control field | |
US4631672A (en) | Arithmetic control apparatus for a pipeline processing system | |
JPH05150979A (ja) | 即値オペランド拡張方式 | |
JPH0345420B2 (ja) | ||
JPH0850578A (ja) | 算術論理演算装置及び制御方法 | |
US5940625A (en) | Density dependent vector mask operation control apparatus and method | |
US4924377A (en) | Pipelined instruction processor capable of reading dependent operands in parallel | |
US7134000B2 (en) | Methods and apparatus for instruction alignment including current instruction pointer logic responsive to instruction length information | |
US5892696A (en) | Pipeline controlled microprocessor | |
US20030009652A1 (en) | Data processing system and control method | |
JP2002269067A (ja) | 行列演算装置 | |
EP0314342B1 (en) | Parallel pipelined computer processor | |
JPH1063647A (ja) | 行列演算装置 |