JPS6052471B2 - ベクトル演算処理システム - Google Patents

ベクトル演算処理システム

Info

Publication number
JPS6052471B2
JPS6052471B2 JP55063782A JP6378280A JPS6052471B2 JP S6052471 B2 JPS6052471 B2 JP S6052471B2 JP 55063782 A JP55063782 A JP 55063782A JP 6378280 A JP6378280 A JP 6378280A JP S6052471 B2 JPS6052471 B2 JP S6052471B2
Authority
JP
Japan
Prior art keywords
instruction
store
load
vector
synchronization
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
Application number
JP55063782A
Other languages
English (en)
Other versions
JPS56162173A (en
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 JP55063782A priority Critical patent/JPS6052471B2/ja
Publication of JPS56162173A publication Critical patent/JPS56162173A/ja
Publication of JPS6052471B2 publication Critical patent/JPS6052471B2/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30087Synchronisation or serialisation instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 本発明は、ベクトル演算処理システム、特に前後して
実行されるべき2つの命令相互間で同期化指示を与えて
、上記前後関係を保証するようにしたベクトル演算処理
システムを実現するとともに上記同期化指示に、IDナ
ンバを附与した同期化起動指示とIDナンバを附与した
同期化終了指示とを夫々与えるようにし、効率よく処理
を実行できるようにしたベクトル演算処理システムに関
するものである。
ベクトル演算処理装置として、第1図に示す如く、ベ
クトル・レジスタVR上に演算対象データを保持してお
いて高速度で演算を実行することが考慮されている。
なお、図中1は主メモリ、2一oないし2−nは夫々ロ
ード/ストア部、3はベクトル・レジスタ、4はベクト
ル演算部、5一0、5−1は夫々パイプライン処理部を
表わしている。 複数のロード/ストア部2−0ないし
2−nが・夫々独立に主メモリ1の内容をベクトル、レ
ジスタ3にロードしあるいはベクトル・レジスタ3の内
容を主メモリ1にストアするよう構成して、演算対象デ
ータがベクトル・レジスタ3上に存在するようにしてお
き、ベクトル演算部4はヘクト・ル・レジスタ3の内容
をフエツチして演算を実行した上でベクトル・レジスタ
3にストアする。
このようにすることによつて、ベクトル演算部4におい
て実行するデータはいわば常にベクトル●レジスタ3上
に存在し、かつベクトル●レジスタ3と主メモリ1との
間でのデータ転送は複数バンクに区分れている主メモl
月がアクセス可能にある限り時間的に並行して行なうこ
とが可能となる。しかし、上記の如く複数のロード/ス
トア部2一0ないし2−nによつてロード/ストアを実
行する場合、即ち第2図図示の如く例えばロード/スト
ア部2−0においてベクトル●ロード(VL)を実行し
かつロード/ストア部2−1においてベクトル・ストア
(VST)を実行する場合、図示bのストア・データの
ストア番地と図示aのロード・データのロード番地とが
主メモリ上の同一番地となることが生じる。
この場合、本来図示aのロード・データを先に実行した
上で、図示bのストア・データをストアされるべきであ
り、第2図図示のままでは論理矛盾を生じることとなる
。この点をさける対策として、各ロード/ストア部2−
0ないし2−nが実行するロード/ストアの番地を比較
対照する方式が考慮されないわけではないが、ロード/
ストア部の個数が増すにつれてハードウエア量が飛躍的
に増大してしまう。
このために、本発明者らは先に第3図図示のWAIT命
令の如く同期化のための手段を用意することを考慮した
。即ち、命令中にWAIT命令が存在した場合、次のベ
クトル・ストア命令STを実行するに当つて、WAIT
命令以前のベクトル●ロード命令L(必要に応じてベク
トル・アツドAやベクトル・マルチVMをも含めて)の
処理におけるロードが終了する時点Tbを待つて、上記
ベクトル・ストア命令VSTを実行開始するようにされ
る。このようにすることによつて、上述の論理矛盾の発
生を防止し、ハードウエア量の非所望な増大.を回避で
きる。
しかし、第4図図示の如く、ベクトルAに対するロード
/ストア処理とベクトルBに対するロード/ストア処理
とが重複する場合を考慮するとなお問題を残している。
即ち、図示WAIT命令が与えられたことから、図示ベ
クトル●ストアVSTを実行するに当つては、ベクトル
・ロードLNとL(B)とが共に終了される時点を待つ
て処理を開始することとなる。この場合、ベクトル●ス
トアVSTがベクトル●ロードVLCA)とのみ関連を
もつようなケースでは、ベクトル・ストアVSTを開始
するに際して非所望に待機時間が生じる。本発明は上記
の点を解決することを目的としており、本発明のベクト
ル演算処理システムは、1つまたは複数のエレメントか
ら成るベクトル・データに対してロード命令および/ま
たはストア命令を時間的に並列実行を許すよう構成され
てなり、プログラム順上に先行して実行されるべき上・
記第1のロード命令および/またはストア命令に対応し
て同期化指示を行なうと共にプログラム順上に後から実
行されるべき第2のロード命令および/またはストア命
令を実行するに当つて上記同期化指示以前の上記先行し
て実行されるべき上記第1のロード命令および/または
ストア命令の実行終了を待つよう制御されることを特徴
としている。
以下図面を参照しつつ説明する。第5図は本発明の一実
施例に対応したベクトル命令列の一例と実行態様例、第
6図は本発明の一実施例構成、第7図A,Bは夫々本発
明の他の一実施例に対応したベクトル命令列の一例と実
行態様例を示す。
第5図図示の実施例の場合、第3図および第4図に示す
WAIT命令を、IDナンバを附与した同期化起動命令
POSTとIDナンバを附与した同期化終了命令WAI
Tとに分離して、同期化指示を与えるようにしている。
なおここでDが無い場合は、全部同一のIDと考え、こ
れが特許請求の範囲第1項に該当する。今、第5図図示
のベクトル・ストアVST(命令F)を実行するに先立
つてベクトル・ロードVL(命令A)とベクトル・ロー
ドVL(命令B)とを実行する必要があり、またベクト
ル・ロードVL(命令G)を実行するに先立つてベクト
ル・ストアVST(命令C)を実行する必要があるもの
とするとき、次のように指示する。
即ち、命令A,Bの後にIDナンバ1を附与した同期化
起動命令POSTlを用意し、命令Cの後にIDナンバ
2を附与した同期化起動命令POST2を用意し、命令
Fの前にIDナンバ1を附与した同期化終了命令WAI
Tlを用意し、命令Gの前にIDナンバ2を附与した同
期化終了命令WAIT2を用意する。仮にロード命令や
ストア命令が夫々別個のパイプライン#1ないし#nに
よつて実行できるものとしているが、命令POSTlが
与えられたとき少なくともそれ以前の未終了でかつ既に
IDナンバが附与されていないロード命令やストア命令
実行のパイプラインに対してDナンバIDIを附与する
。また命令POST2が与えられたとき少なくともそれ
以前の未終了でかつ既にDナンバが附与されていないロ
ード命令やストア命令実行のパイプラインに対してID
ナンバID2を附与する。上述の如くIDナンバを附与
されたパイプラインは処料実行中ビジー信号を立ててお
り、命令WAITlが与えられたとき、IDナンバID
lを附与されている全てのパイプラインにおいて上記ビ
ジー信号がオフとなることを待つて命令Fを開始するよ
うにする。また、命令WAIT2が与えられたとき、I
DナンバID2を附与されている全てのパイプラインに
おいて上記ビジー信号がオフとなることを待つて命令G
を開始するようにする。このようにすることによつて、
第4図を参照して説明した如き問題、即ち命令Fを開始
するに当つて命令Dのロード処理終了を待つ必要がなく
なる。
また命令Gを開始するに当つて命令Fのストア処理終了
を待つ必要がなくなる。第6図は本発明の一実施例を示
す。
図中の符号2−0ないし2−N,MEM,VRは第1図
に対応し、6,7は夫々命令レジスタ、8−0,8−1
は夫々待機命令レジスタ、9は命令発進制御部、IDは
IDナンバを表わしている。命令レジスタ6に上述の同
期化起動命令POSTlがセツトされると、例えば命令
発進制御部9はこれを判別してそれ以前のロード/スト
ア命令が与えられているパイプラインにIDナンバID
lをセツトする。
そして、次に命令POST2がセツトされると、同様に
IDナンバID2をセツトする。その後上記命令WAI
Tlがセツトされたとき、命令発進制御部9はIDナン
バIDlがセツトされているパイプラインにおけるビジ
ー信号を調べる。そしていずれか1つのパイプラインに
ビジー信号が立つていると、次にレジスタ6にセツトさ
れる命令Fを待機命令レジスタ例えば8−0に待機せし
め、上記ビジー信号がオフとなるのを待つてレジスタ8
−0の内容をレジスタ7にセツトする。命令WAIT2
の場合においても同様である。第7図は、第5図図示の
如くPOST命令やWAIT命令を命令として用意する
代わりに、口ード命令やストア命令などのコード中にI
Dナンバを包含せしめるようにした他の一実施例を示し
ている。第7図A図示の場合、各ロード命令VLや各ス
トア命令が夫々独立のパイプラインを利用できるものと
した場合を示す。
また第7図B図示の場合、IDナンバ1のものは同じパ
イプライン(ロード処理とストア処理とが夫々実行でき
るものとして)を使用するよう制御されている場合を示
す。なお図示のIDナンバAはナンバ1,2以外のナン
バであるか無効ナンバであるかのいずれかを表わしてい
る。図示Dナンバ1をもつた命令AやBが与えられたと
き、それ以前にいずれかのパイプラインにDナンバID
lがセツトされているか否かをチエツクし、セツトされ
てなければIDナンバIDlをセツトした上で実行に入
る。
そして、例えば命令Fが与えられたとき、いずれかのI
DナンバIDlがセツトされたパイプラインにビジー信
号が立つていると、当該命令Fは、例えば第6図図示の
待機命令レジスタ8−0に待機させられる。そしてビジ
ー信号がオフになると、レジスタ7にセツトされる。第
7図B図示の場合、IDナンバに対応づけられてパイプ
ラインが決定される。
即ち、例えば図示命令Bが与えられたとき、先に決定さ
れた命令Aのパイプラインが空き状態になるまで、当該
命令Bは例えば第6図図示の待機命令レジスタ8一0に
待機させられる。以上説明した如く、本発明によれば、
前後関係を保つ必要がある命令間でのみ同期化をはかる
ことが可能となる。
そしてIDナンバを対応づけることによつて幾重にも同
期化をはかることが可能となる。なお、ここではPOS
T(1)、WAIT(1)によりロードおよび/または
ストア命令間の同期を実現したが、ロードおよび/また
はストア命令の命令コードの一部にIDを付与すること
によつても、同様の機能を実現することができる。
【図面の簡単な説明】
第1図はベクトル演算システムの一例、第2図ないし第
4図は夫々本願発明の前提問題を説明する説明図、第5
図は本発明の一実施例に対応したベクトル命令列の一例
と実施態様例、第6図は本発明の一実施例構成、第7図
A,Bは夫々本発明の他の一実施例に対応したベクトル
命令列の一例と実行態様例を示す。 図中、1は主メモl八2−0ないし2−nは夫々ロード
/ストア部、3はベクトル●レジスタ、4はベクトル演
算部、6,7は命令レジスタ、8−0,8−1は夫々待
機命令レジスタ、9は命令発進制御部を表わす。

Claims (1)

  1. 【特許請求の範囲】 1 1つまたは複数のエレメントから成るベクトル・デ
    ータに対してロード命令および/またはストア命令を時
    間的に並列実行を許すよう構成されてなり、プログラム
    指定順に先行して実行されるべき上記第1のロード命令
    および/またはストア命令に対応して同期化起動指示を
    行なうと共にプログラム指定順に後から実行されるべき
    第2のロード命令および/またはストア命令に対応して
    、同期化終了指示を与え第2のロード命令および/また
    はストア命令を実行するに当つて上記同期化起動指示以
    前の上記先行して実行されるべき上記第1のロード命令
    および/またはストア命令の実行終了を待つよう制御さ
    れることを特徴とするベクトル演算処理システム。 2 上記第1のロード命令および/またはストア命令に
    対応してIDナンバを附与した同期化起動指示を行なう
    と共に上記第2のロード命令および/またはストア命令
    に対応してIDナンバを附与した同期化終了指示を行な
    うよう構成し、上記第2のロード命令および/またはス
    トア命令は、上記同期化終了指示によつて指示されるD
    ナンバに対応するIDナンバをもつ同期化起動指示が与
    えられた上記第1のロード命令および/またはストア命
    令の実行終了を待つて、起動されるよう制御されること
    を特徴とする特許請求の範囲第1項記載のベクトル演算
    処理システム。
JP55063782A 1980-05-14 1980-05-14 ベクトル演算処理システム Expired JPS6052471B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55063782A JPS6052471B2 (ja) 1980-05-14 1980-05-14 ベクトル演算処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55063782A JPS6052471B2 (ja) 1980-05-14 1980-05-14 ベクトル演算処理システム

Publications (2)

Publication Number Publication Date
JPS56162173A JPS56162173A (en) 1981-12-12
JPS6052471B2 true JPS6052471B2 (ja) 1985-11-19

Family

ID=13239288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55063782A Expired JPS6052471B2 (ja) 1980-05-14 1980-05-14 ベクトル演算処理システム

Country Status (1)

Country Link
JP (1) JPS6052471B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61190479U (ja) * 1985-05-21 1986-11-27

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59121441A (ja) * 1982-12-03 1984-07-13 Fujitsu Ltd 逐次化命令実行制御装置
JPS59125472A (ja) * 1982-12-30 1984-07-19 Fujitsu Ltd 逐次化命令実行制御装置
JPS61100862A (ja) * 1984-10-12 1986-05-19 Fujitsu Ltd 命令の逐次化方式
JPS61160142A (ja) * 1984-12-29 1986-07-19 Hitachi Ltd デ−タ処理装置
US9021233B2 (en) * 2011-09-28 2015-04-28 Arm Limited Interleaving data accesses issued in response to vector access instructions

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61190479U (ja) * 1985-05-21 1986-11-27

Also Published As

Publication number Publication date
JPS56162173A (en) 1981-12-12

Similar Documents

Publication Publication Date Title
EP0061096B1 (en) Data processing system for parallel processing
EP1050803B1 (en) Guarded computer instruction execution
US5499350A (en) Vector data processing system with instruction synchronization
JPS58151655A (ja) 情報処理装置
US6003126A (en) Special instruction register including allocation field utilized for temporary designation of physical registers as general registers
JP2531760B2 (ja) ベクトル処理装置
JPS6052471B2 (ja) ベクトル演算処理システム
JPH01224840A (ja) 情報処理装置におけるバイパスライン制御方式
US5539902A (en) Vector data processing apparatus wherein a time slot for access to a bank of vector registors is assigned based on memory access time information
JPS58149541A (ja) デ−タ処理装置
EP0285634B1 (en) Method to execute two instruction sequences in an order determined in advance
JPS58149555A (ja) 並列処理装置
US4803615A (en) Microcode control of a parallel architecture microprocessor
JPS6116335A (ja) 情報処理装置
EP0700005A1 (en) Vector data bypass mechanism for vector computer
JPH0477945B2 (ja)
JPS6119072B2 (ja)
JPH0233175B2 (ja)
JPH03218524A (ja) 命令処理装置
JPH10111798A (ja) 情報処理装置
JPS5844266B2 (ja) マルチプロセッサの並列動作実行処理方法
JPS61194566A (ja) ベクトルデ−タ参照制御方式
JPH0776919B2 (ja) 計算機
JPS6146545A (ja) 入出力命令制御方法
JPH0260018B2 (ja)