JPH0456352B2 - - Google Patents

Info

Publication number
JPH0456352B2
JPH0456352B2 JP60105436A JP10543685A JPH0456352B2 JP H0456352 B2 JPH0456352 B2 JP H0456352B2 JP 60105436 A JP60105436 A JP 60105436A JP 10543685 A JP10543685 A JP 10543685A JP H0456352 B2 JPH0456352 B2 JP H0456352B2
Authority
JP
Japan
Prior art keywords
register
address
registers
vector
banks
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
JP60105436A
Other languages
English (en)
Other versions
JPS61262971A (ja
Inventor
Tetsuo Okamoto
Kazushi Sakamoto
Nobuo Uchida
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 JP10543685A priority Critical patent/JPS61262971A/ja
Publication of JPS61262971A publication Critical patent/JPS61262971A/ja
Publication of JPH0456352B2 publication Critical patent/JPH0456352B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

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

【発明の詳細な説明】 〔概要〕 ベクトルレジスタを、複数のスカラユニツトに
よつてスループツトを低下させることなく使用可
能にするため、ベクトルレジスタを複数に分割し
て、指定可能なレジスタ数を複数倍に増加させ
る。
〔産業上の利用分野〕
本発明は、情報処理装置に関するものであり、
特にマルチプロセツサシステムにおける複数のス
カラユニツトによつて共用されるベクトルレジス
タの構成方式に関する。
〔従来の技術〕
最近のスーパーコンピユータでは、マルチプロ
セツサシステム構成をとることにより高速化が図
られ、さらに専用ハードウエアによるベクトル演
算機構を設けて、ベクトル演算の高速処理が行わ
れている。
ところで、ベクトル演算機構をそなえた従来の
マルチプロセツサシステムには、複数のスカラユ
ニツトSUに対して、ベクトルユニツトVUを1
つだけ設け、VUのベクトルレジスタVRを、複
数のスカラユニツトSUで共用させているものが
ある。
第3図は、このようなシステムの1例を示す構
成図である。図において、30はベクトルユニツ
トVU、31はベクトルレジスタVR、32はス
カラユニツトSU−0,33はスカラユニツトSU
−1,34は記憶制御ユニツトMCU,35は主
記憶装置MSUを表している。
第4図は、シングルシステムにおけるベクトル
レジスタVRの構成例を示したものである。
図において、40はベクトルレジスタVR,4
1はアドレス入力端子、42はセレクタ、43は
シフトレジスタ構成のアドレスレジスタ列、43
0ないし437はアドレスレジスタ、44は+1
加算器、45は加算制御信号入力端子を表す。
ベクトルレジスタVRは、#0から#7までの
番号付けされた8バンクで構成され、各バンクに
は、ベクトルデータが2エレメントずつ割り当て
られ、1サイクルごとに1バンクずつアクセスさ
れる。従つて、アクセススループツトは、2エレ
メント/サイクルとなる。
またVR内のレジスタは、No.0〜255までの256
個が指定でき、1個のレジスタには16エレメント
が含まれる。16エレメント以上使用したい場合に
は、連続した複数のレジスタをアクセスする。
VRのあるレジスタに対するアクセス要求があ
ると、VRのアドレス(すなわちレジスタのNo.)
が、アドレス入力端子41から入力され、セレク
タ42を経て、アドレスレジスタ列43の各アド
レスレジスタ430から437までシフトしてい
き、順番に8つのバンクをアクセスしていく。
16エレメント以上使用する場合には、加算制御
信号入力端子45から印加される加算制御信号に
よつて、+1加算器44でアドレスが+1され、
セレクタ42を経て、再度バンク#0からアセス
していくように制御される。
たとえば、アドレス0のレジスタを指定して20
個のエレメントを使用する場合、アドレスレジス
タ列43の1周目は、アドレス0でバンク#0〜
#7をアクセスし、2周目は、アドレス1でバン
ク#0と#1をアクセスする。
ところで、このようなベクトルレジスタVRの
すべてのレジスタを、第3図のスカラユニツトの
SU−0からもSU−1からも指定できるようにす
ると、SU−0とSU−1がともに同じレジスタを
使う競合が生じる場合がある。そこで、マルチシ
ステムの場合には、VRの使われ方を競合しない
ように制限しなければならない。
〔発明が解決しようとす問題点〕
複数のスカラユニツトが1つのベクトルレジス
タを共用する際の競合を避けるためには、いくつ
かの方法が考えられる。
たとえばベクトルレジスタ内の全レジスタを複
数に分割し、独立させてそれぞれのスカラユニツ
トに割り付ける方法がその1つである。しかし、
この方法では、各スカラユニツトでアクセス可能
なレジスタの個数が減少し、シングルプロセツサ
システムのソフトウエアとの互換性を失う。また
アクセス機構も複雑化する。
これを解決するためには、ベクトルレジスタの
ハードウエア量(レジスタ数)を増大させるか、
バンク当たりのエレメント数を減らすことが必要
となり、後者の場合、アクセスループツトの低下
を生じることになる。
このように、従来のマルチプロセツサシステム
において、複数のスカラユニツトで1つのベクト
ルユニツトを共用する場合には、シングルプロセ
ツサの場合にくらべて、ハドウエアの増加が必要
となつたり、アクセススループツトの低下を伴う
などの問題が生じた。
〔問題点を解決するための手段〕
本発明は、複数のスカラユニツトがベクトルレ
ジスタを共用するとき、スカラユニツトごとに指
定可能なレジスタ数を減らさずに別々に指定可能
とし、しかもアクセススループツトも変わらない
ようにするものであ、そのため、ベクトルレジス
タのバンクをスカラユニツトの個数に対応させて
分割し、それぞれの分割位置からアクセスを可能
にする手段を設けている。
第1図は、本発明の原理的構成を例示的に示す
図である。
図において、10は本発明を対比させるため従
来のシングルプロセツサシステムにおけるベクト
ルレジスタVRの構成例を示す。このベクトルレ
ジスタは、、0ないし255のアドレスで指定される
256個のレジスタが、#0〜#7の8バンクで構
成されている。また11は、デユアルプロツサシ
ステムの場合において2個のスカラユニツトによ
つて共用可能にするため、本発明に基づき新規に
構成されたベクトルレジスタVRを示している。
ベクトルレジスタVR11は、スカラユニツトの
個数が2であることから、8個のバンクを、#0
〜#3と、#4〜#7とに2分割され、さらに各
分割単位ごとにアクセス開始を可能にされる。
したがつて、ベクトルレジスタVR10ではレ
ジスタ数が256個であつたのに対して、ベクトル
レジスタVR11では、実質的に2倍の512個に
増加される。ただし、1レジスタ当たりのエレメ
ント数は半減される。
一般に、ベクトルレジスタVRのバンク数をM
個として、これを例えばMの約数Nで分割し、そ
れぞれの分割されたバンクを最初からアクセス可
能にすることにより、見かけ上のレジスタ数をN
倍に増加させることができる。
〔作用〕
第1図の例では、バンク数が8個(M=8)で
レジスタ数が256個のベクトルレジスタVRが、
バンクを2分割(N=2)されたことにより、見
かけ上のレジスタ数が512個に倍増されている。
したがつて、たとえば2個のスカラユニツトを
もつマルチプロセツサシステム(デユアルプロセ
ツサシステム)では、各スカラユニツトに、半分
の256個ずつのレジスタを割り付けることにより、
それぞれシングルプロセツサシステムの場合と同
様に、各スカラユニツトが256個のレジスタを競
合しないように指定して処理を行うことが可能と
なる。
一般に、M個のバンクをN分割できた場合に
は、レジスタ数をN倍にして使用することができ
るから、1個のスカラユニツトで指定可能なレジ
スタの個数を変えないとすれば、N個のスカラユ
ニツトに共用させることができる。
また、このベクトルレジスタVRのバンク分割
によつては、各スカラユニツトのアクセスに対す
るバンク内のエレメント数が変わらないから、ア
クセススループツトも低下しない。
なおバンク分割によつて、1レジスタ当たりの
エレメント数は減少するが、順次のレジスタを連
続使用することにより、任意のエレメント長のベ
クトルデータに対応することができる。
〔実施例〕
第2図は、本発明の1実施例システムの要部構
成を示したものである。図において、20は8バ
ンク構成で1バンク当たり256アドレス位置をも
つ物理的なベクトルレジスタVR,21はアドレ
ス入力端子、22Aおよび22Bはセレクタ、2
3はシストレジスタ構成のアドレスレジスタ列、
230ないし237はアドレスレジスタ、24は
+1加算器、25は加算制御信号入力端子、26
および27はそれぞれ仮想ベクトルレジスタ
VR′を表す。
ベクトルレジスタVR20のバンクは、#0〜
#3と、#4〜#7とに左右2分割され、それぞ
れセレクタ22Aおよび22Bによりバンク#0
あるいは#4のいずれかからアクセスを開始でき
るように制御される。
それにより、ベクトルレジスタVR20でアクセ
ス可能なレジスタの個数は、256アドレス位置の
2倍の512個となる。またこの例では各バンクの
アクセス単位は2エレメントであるため、1つの
レジスタは8エレメントの大きさとなる。
このベクトルレジスタレジスタVR20を、図
示のように上下256個ずつの2つのレジスタ群に
分け、これらをそれぞれ仮想ベクトルレジスタ
VR′26およびVR′27に対応づけることによ
り、2つのスカラユニツト、たとえば第3図に示
されているSU−0およびSU−1によつて、レジ
スタの競合なしに共用させることができる。
これらの仮想レジスタVR′26およびVR′27
は、スカラユニツトから見たとき、8バンク25
6レジスタ、8エレメント/レジスタ構成のベク
トルレジスタとして見える。
この場合、ベクトルレジスタVR20における
各バンクのアドレス位置は、2ずつ変化するよう
に構成される。
次に、ベクトルレジスタVR20のアクセス機
構について説明する。
ベクトルレジスタVR20の各ンク#0〜#7
の各アドレス位置は、それぞれアドレスレジスタ
230〜237に設定されるアドレスによつて指
定される。アドレスは、アドレス入力端子21か
らセレクタ22Aおよび22Bのいずれか一方を
介して、アドレスレジスタ230および234の
対応する方へ入力される。
ベクトルレジスタVRにおいて、バンク#0〜
#3に位置すレジスタは偶数番のレジスタであ
り、またバンク#4〜#7に位置するレジスタは
奇数番のレジスタである。
偶数番のレジスタを指定するときには、セレク
タ22Aの左側(L)にパスが設定されて、アド
レス入力端子21上のアドレスがアドレスレジス
タ230に設定され、さらに所定のタイミングで
アドレスレジスタ231,232,233へシフ
トされる。これにより、ベクトルレジスタのバン
ク#0〜#3の指定されたアドレス位置にある偶
数番の1つのレジスタ(8エレメント)がアクセ
スされたことになる。
これに対して奇数番のレジスタを指定するとき
には、セレクタ22Bの右側(R)にパスが設定
され、入力されたアドレスは、アドレスレジスタ
234に設定されてから、235,236,23
7へ順次シフトされ、バンク#4〜#7の指定さ
れたアドレス位置にある1つのレジスタ(8エレ
メント)がアクセスされる。
もしも、ベクトル長が8エレメント以上ある場
合には、次に隣接するレジスタを連結して使用さ
れる。
たとえば、偶数番のレジスタに次の奇数番のレ
ジスタを連結する場合には、セレクタ22Bの左
側(L)にパスが設定され、アドレスレジスタ2
33からシフト出力されたアドレスがアドレスレ
ジスタ234へ転送される。
また奇数番のレジスタに次の偶数番のレジスタ
を連結する場合には、アドレスレジスタ237か
らシフト出力されたアドレスを+1加算器24へ
入力し、加算制御信号入力端子25から加算制御
信号を与えてアドレスに+1を加算し、同時にセ
レクタ22Aの右側(R)にパスを設定して、ア
ドレスレジスタ230へ戻す。このとき、アドレ
スが1だけ増加しているため、バンク#0では、
次のアドレス位置がアクセスされる。
このようにして、8エレメント単位で任意のベ
クル長の順次のレジスタを連結使用することによ
り、データをアクセスすることができる。なお、
毎サイクルでアクセスされるエレメント数は2個
である。
〔発明の効果〕
本発明によれば、同一のベクトルレジスタの容
量でシングルプロセツサシステムからマルチプロ
セツサシステムへ切り替えることができ、その
際、スカラユニツト当たりの使用可能なレジスタ
数およびアクセスススループツトを減少させるこ
とがなく、性能低下を抑えることができ、またソ
フトウエアの互換性をある程度保つことができ。
【図面の簡単な説明】
第1図は本発明の原理的構成図、第2図は本発
明の1実施例システムの構成図、第3図は本発明
が対象とする従来のコンピユータシステムの構成
例を示す図、第4図は従来のベクトルレジスタの
構成図である。 第1図において、10…従来のベクトルレジス
タVR、11…本発明に基づくベクトルレジスタ
VR。

Claims (1)

  1. 【特許請求の範囲】 1 M,Nがそれぞれ2よりも大きい整数であつ
    て、M個のバンクによつてインタリーブされたベ
    クトルレジスタにおいて、 M個のバンクの各々に対応させてM個のアドレ
    スレジスタを設け、M個のバンクとM個のアドレ
    スレジスタをそれぞれN個のグループに分割し、 N個のグループの各々において各アドレスレジ
    スタを直列に接続し1つのシフトレジスタとして
    構成するとともに、ループ状に見た各グループ境
    界には、それぞれ2入力のセレクタを挿入して、
    各グループ内の先頭のアドレスレジスタとアドレ
    ス入力端子との間または直前のグループ内の最後
    のアドレスレジスタとの間に選択的にパスが設定
    されるようにし、かつ先頭のグループ内の先頭の
    アドレスレジスタと最後のグループ内の最後のア
    ドレスレジスタとの間には指示によりアドレスを
    1だけ増加させる+1加算器とを設け、 M個のバンクをN個のグループに分割すること
    により、ベクトルレジスタをN個に分け、さら
    に、分割されたバンクのグループ単位で途中のバ
    ンクからベクトルレジスタのアクセスを開始可能
    にして、指定できるベクトルレジスタの個数を見
    かけ上N倍にしたことを特徴とするベクトルレジ
    スタの構成方式。
JP10543685A 1985-05-17 1985-05-17 ベクトルレジスタの構成方式 Granted JPS61262971A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10543685A JPS61262971A (ja) 1985-05-17 1985-05-17 ベクトルレジスタの構成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10543685A JPS61262971A (ja) 1985-05-17 1985-05-17 ベクトルレジスタの構成方式

Publications (2)

Publication Number Publication Date
JPS61262971A JPS61262971A (ja) 1986-11-20
JPH0456352B2 true JPH0456352B2 (ja) 1992-09-08

Family

ID=14407538

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10543685A Granted JPS61262971A (ja) 1985-05-17 1985-05-17 ベクトルレジスタの構成方式

Country Status (1)

Country Link
JP (1) JPS61262971A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH077388B2 (ja) * 1988-09-13 1995-01-30 富士通株式会社 ベクトル演算処理装置
JP5673322B2 (ja) * 2011-04-18 2015-02-18 富士通株式会社 ベクトル処理装置、システムおよびベクトル処理装置の動作方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5622170A (en) * 1979-07-31 1981-03-02 Fujitsu Ltd Vector operation processing system
JPS6042984B2 (ja) * 1979-12-21 1985-09-26 富士通株式会社 パイプライン演算装置

Also Published As

Publication number Publication date
JPS61262971A (ja) 1986-11-20

Similar Documents

Publication Publication Date Title
US5590353A (en) Vector processor adopting a memory skewing scheme for preventing degradation of access performance
US4816993A (en) Parallel processing computer including interconnected operation units
US4674032A (en) High-performance pipelined stack with over-write protection
US5134695A (en) Method and apparatus for constant stride accessing to memories in vector processor
EP0424618A2 (en) Input/output system
JP2577865B2 (ja) ベクトル処理装置及びその制御方法
US5392443A (en) Vector processor with a memory assigned with skewed addresses adapted for concurrent fetching of a number of vector elements belonging to the same vector data
GB2122781A (en) Multimicroprocessor systems
JPS618785A (ja) 記憶装置アクセス制御方式
JPH042976B2 (ja)
JPH0241553A (ja) データ処理システム及び同期方法
JPS6027964A (ja) メモリアクセス制御回路
US5887182A (en) Multiprocessor system with vector pipelines
EP0570164B1 (en) Interleaved memory system
US20030126404A1 (en) Data processing system, array-type processor, data processor, and information storage medium
Seznec et al. Interleaved parallel schemes: Improving memory throughput on supercomputers
US4648065A (en) Modified snapshot priority enabling two requestors to share a single memory port
JPH0456352B2 (ja)
US4722052A (en) Multiple unit adapter
JPH0341856B2 (ja)
JPS60205647A (ja) デ−タ処理装置
JPH05108586A (ja) 並列演算機構及び並列演算方法
JP2976700B2 (ja) プロセッサ間同期制御方式
JPH077388B2 (ja) ベクトル演算処理装置
JPS6240737B2 (ja)