JPS63225865A - ベクトル命令発信制御方式 - Google Patents

ベクトル命令発信制御方式

Info

Publication number
JPS63225865A
JPS63225865A JP5947087A JP5947087A JPS63225865A JP S63225865 A JPS63225865 A JP S63225865A JP 5947087 A JP5947087 A JP 5947087A JP 5947087 A JP5947087 A JP 5947087A JP S63225865 A JPS63225865 A JP S63225865A
Authority
JP
Japan
Prior art keywords
vector
instruction
register
stage
vector length
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.)
Pending
Application number
JP5947087A
Other languages
English (en)
Inventor
Junko Hasegawa
純子 長谷川
Kazushi Sakamoto
一志 坂本
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 JP5947087A priority Critical patent/JPS63225865A/ja
Publication of JPS63225865A publication Critical patent/JPS63225865A/ja
Pending 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

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

【発明の詳細な説明】 〔目 次〕 概要 産業上の利用分野 従来の技術と発明が解決しようとする問題点問題点を解
決するための手段 作用 実施例 発明の効果 〔概要〕 ベクトルデータ処理装置の命令管理部において、ベクト
ル長(VL)変更時の、無駄なレジスタ干渉チェックを
省く為に、ベクトル長(VL)変更時のレジスタ干渉チ
ェックは、ベクトル長(VL)変更以前の終了していな
い全てのベクトル命令と、ベクトル長(VL)変更直後
のベクトル命令とのレジスタ干渉のチェックを行えば事
足りることに着目して、該命令管理部の各命令管理パイ
プラインの各ステージ毎に、ベクトル長変更フラグを゛
オン゛にする論理回路と、該ベクトル長変更フラグを参
照してレジスタ干渉チェックをする回路とを設けること
により、該ベクトル長変更フラグの°オン゛に先行して
いる全てのベクトル命令と、該フラグが゛オン゛になつ
た直後のベクトル命令とのレジスタ干渉チェックのみを
行い、該レジスタ干渉チェック結果に基づいて、ベクト
ル命令の発信制御を行うようにしたものである。
(産業上の利用分野〕 本発明は、科学技術用のベクトルデータ処理装置におけ
るベクトル命令発信制御方式に係り、特に、ベクトル長
を変更した時の、その前後のベクトル命令の発信制御方
式に関する。
最近のベクトルデータ処理装置の普及に伴い、各種の分
野で、該ベクトルデータ処理装置が利用されるようにな
っているが、従来は流体力学等、比較的にベクトル長の
変更が少ない分野での利用が多かった。
然して、最近のベクトルデータ処理装置の処理能力の向
上による利用分野の拡大化に伴い、構造解析1粒子シミ
ュレーション(モンテカルロ法による)等の分野にも利
用されるようになってきたが、この場合、部分的な構造
の解析9部分的な粒子シミニレ−シラン等を行う場合が
あり、取り扱われるベクトルデータ長を変化させ・るこ
とが多くなるようになってきた。
一般に、ベクトルデータ処理装置においては、命令管理
部の命令発信レジスタにベクトル命令が入力されると、
該ベクトル命令をできる限り効率良く、複数個の各ベク
トル命令処理部に対応して設けられている該命令管理パ
イプラインの最初のステージレジスタに送出することが
要求されるが、上記命令発信レジスタに入力されたベク
トル命令と、各命令管理パイプラインの各ステージレジ
スタでのベクトル命令間にレジスタ干渉があると、該命
令発信レジスタに設定されているベクトル命令は、レジ
スタ干渉を起こさないように、各ベクトル命令処理部に
対応した上記命令管理パイプラインに発信する制御が必
要となる。
上記ベクトルレジスタ干渉チェックにおいては、本来、
レジスタ番号の全ビットのチェックを行うべき所を、ベ
クトル長に変更があった場合の制御の容易性等から、ベ
クトル長に応じて特定のランクを設け、該ランク単位で
レジスタ干渉チェックが行われる。
従って、処理するベクトルデータのエレメント数(ベク
トル長)に変更があると、命令発信レジスタに入力され
た後続するベクトル命令と、先行しているベクトル命令
のレジスタ番号の全ビットのチェックができないことか
ら、全ての上記命令管理パイプラインの全ステージにベ
クトル長変更の指示を送出して、上記ランク単位の、レ
ジスタ干渉チェックを行い、レジスタ干渉があった場合
には、該命令発信レジスタ内のベクトル命令は、該レジ
スタ干渉のあった先行ベクトル命令の実行が終了する迄
発信させない制御を行っていた。
然しなから、前述のように、ベクトル長が変更されるケ
ースが多くなると、このような制御方式をとるベクトル
データ処理装置では、処理速度上の損失が大きくなる為
、かかるベクトルデータ処理方式でも、処理速度に大き
な損失が生じないベクトル命令発信制御方式が必要とさ
れるようになってきた。
〔従来の技術と発明が解決しようとする問題点〕第4図
は一般的なベクトルデータ処理装置の概略の構成例を示
した図である。
−iに、高速計算機の分野では、1つの命令で多数のデ
ータを処理することが行われる。この多数のデータの集
合をベクトルデータと呼び、それぞれのデータをエレメ
ントと呼んでいる。
これらのべ、クトルデータは、演算処理の高速化の為に
、アクセスパイプライン(ロード処理部)3を介して、
主記憶装置(MS) 1から一部ベクトルレジスタ5に
移し、該ベクトルレジスタ5と演算装置4との間で高速
に処理される。
ベクトルレジスタ5と主記憶装W(MS) 1との間の
データ転送は、前述のように、主記憶制御装置2、ロー
ド処理部、ストア処理部3を介して行われる。
演算装置4.及びベクトルレジスタ5は並列処理を可能
にする為、必要に応じて複数組設けられている。
ベクトル命令は、例えば、図示していないスカラーデー
タ処理装置からフェッチされ、デコーダ7でデコードさ
れてから、命令制御装置(当該制御装置の主体は命令管
理部であるので、以降命令管理部と呼ぶ)6において制
御の為の該当パイプラインに対する起動信号に変換され
る。
次に、ベクトル演算命令の実行動作について概説する。
ベクトル演算命令の例として、ベクトル加算命令(VA
DD) 、及びベクトル乗算命令(VMLT)を考える
先ず、ベクトル加算命令(VADD)の場合、命令形態
は、 VADD  VRI、VR2,VR3 で表される。
これは、ベクトルレジスタVl?2の各エレメントの値
に、ベクトルレジスタVR3の対応するエレメントの値
を加え、結果をベクトルレジスタVRIの対応するエレ
メントに格納することを示している。
即ち、 VR2+ VR3=OVR1 となる。
ベクトル乗算命令(VMLT)の場合は、VMUr  
VRI、VR2,VI?3で表され、ベクトルレジスタ
VR2の各エレメントの値と、ベクトルレジスタVR3
の対応するエレメントの値が乗算され、結果をベクトル
レジスタVR1の対応するエレメントに格納する。即ち
、VR2* VR3−OVRI となる。
上記の演算において、ベクトルレジスタ5は、ベクトル
データの各エレメントと、1対1で対応付けられるよう
にアドレスをもっている。1つのベクトルデータの各エ
レメントは、連続アドレスのベクトルレジスタ5に格納
される。
ベクトル命令は、このベクトルレジスタ5の中の先頭エ
レメントに対応するレジスタのアドレスを指定すること
により、オペランドの格納場所を指定する。
該指定された先頭エレメントのアドレスから、どこ迄が
1つのベクトルデータに属するエレメントのアドレスで
あるかを知る為に、予め、ベクトル長(VL)を、ベク
トル長変更命令(VLVL命令)によって、図示してい
ない特定のベクトル長制御レジスタに格納しておく。こ
のベクトル長(vL)の値は、1つのベクトルデータが
専有する連続するアドレスの数、即ち、エレメント数を
表す。
ここで、ベクトル長(以下、VLと云う)の値と、ベク
トルレジスタのアドレス指定との間には、一定の規約が
設けられる。この規約はVLの値を、その大きさによっ
て、複数個のランクに分け、各ランクに対して、ベクト
ルレジスタ内の指定可能なアドレスの位置を一定の範囲
に制限するものである。
上記VLO値毎に、ベクトルレジスタ5内の領域はユニ
ットに分割される。それにより、異なるVLのベクトル
データが混在していても、該ベクトルレジスタ5の利用
効率の低下が防がれると共に、制御も容易となる。
第5図はベクトル長(VL)と、ベクトルレジスタアド
レス指定との間の規約を説明する図であって、上記規約
の1具体例を示す表である。
ここでは、1つのベクトルレジスタを構成するレジスタ
の個数を256とし、又そのアドレスを8ビツトで指定
する。上位ランクに行く程、アドレスの下位桁は0゛で
固定され、IXIマークで示す上位桁で指定可能な、飛
び飛びのアドレス位置のみのアドレス指定に制限される
ことが分かる。
この場合の規約は、任意のVLを持つベクトルデータに
ついて、その先頭アドレスとして、ベクトル命令が指定
できるアドレスは、該ベクトル命令が扱うVLが含まれ
るランク(0〜5)の最大のVL値(アンダーラインで
示す)の整数倍に制限すると云うものである。
上記ベクトル命令の実行は、パイプライン方式%式% 第6図はベクトル加算命令(VADD)の処理過程を図
式的に示した図である。横方向は該加算対象のベクトル
データを読み出す時間を示し、結果的にはVLを示して
おり、縦方向は該加算命令の処理段階を示している。パ
イプライン方式で処理される処理過程はこのような形で
示される。
前述のように、一般に、高速計算機では、複数個の演算
袋W、4を用いて、該ベクトル命令の並列処理が行われ
る。然し、例えば、上記ベクトル加算命令(VADD)
と、ベクトル乗算命令(VMLT)とが連続している場
合であって、然も、ベクトル加算命令(VADD)と、
ベクトル乗算命令(VMLT)とが、それぞれ使用する
ベクトルレジスタ5に同じものが含まれていたとき(即
ち、レジスタ干渉があったとき)は、該ベクトル命令の
演算順序を保証する為に、該並列処理の程度を制限する
ことが行われている。
第7図はベクトル命令の処理順序の保証例を示した図で
ある。
本図の(a)は、先行しているベクトル加算命令(以下
、VADDと云う)の演算結果を格納するベクトルレジ
スタVRIと、並列処理しようとしている次のベクトル
乗算命令(以下、VMLTと云う)の演算結果を格納す
るベクトルレジスタVRIとが同じアドレスを指定して
いた場合を示している。
この場合、VADDの1サイクル(1τ)以上後に、V
MLTを実行するようにして、図示の如(並列処理を行
うことにより、該VADDの第1エレメントの加算結果
のベクトルレジスタVRIへの格納後1τを経て、VM
LTの第1エレメントの乗算結果のベクトルレジスタV
RIへの格納が行われる。
従ッテ、VADD(7) VRI領域がVMLTのVR
I領域に重複している部分に書き込まれたVADDの加
算結果はVMLTの乗算結果によって書き直され正しい
値が得られる。
本図(7) (b)は、VADDノVRIと、 VML
TのVH2,或いはVH2とが等しいけれど、並列処理
が可能な事例を示している。
この場合には、VADDの第1エレメントの加算結果が
VRIに格納された次のサイクル(1τ後)で、VML
Tの実行を開始する。このとき、該VMLTは、VAD
Dの加算結果(VRI)をオペランドの1つ(VH2,
又はVH2)として使用し乗算を行うが、並列処理によ
っても、VADDからVMLTへの各エレメントの受は
渡しのレベルでは、正しい順序関係が維持されているの
で、データの破壊や、誤り処理が生じることはない。
第8図は、ベクトル長が変更されたときの後続命令の処
理を説明する図であり、(イ)は概念図を示し、(ロ)
は後続命令の発信制御処理を説明する図である。
今、(イ)図に示した如<、VLが大から小に変更され
たときの後続命令の処理を考える。
VL変変更以前ノックトル命令VLD、 VMSD、 
VASD)と。
VLL更後のベクトル命令との間にレジスタ干渉が生じ
た場合、(イ)図中の(a)迄後続命令の発信を遅らせ
、該レジスタ干渉がない場合には、図中の(b)の位置
で該後続命令を発信させる。
このような制御を行う必要性を(ロ)図によって説明す
る。
該(ロ)図においては、VL大のベクトル命令と。
VL小のベクトル命令が、ベクトルレジスタのアドレス
°01001000’ で、ライト−リード干渉が生じ
ている。
この場合、論理的には、(a)図で示した位置(具体的
には、1τずれた位置)で、VL小の後続命令を発信で
きるが、前述のように、VL大では、ベクトルレジスタ
のアドレスを、例えば、上位3ビツト (ランク5)で
定義している為、(b)図のメモリマツプで示したよう
に、下位の5ビツトを認識できない。
従って、VL小の命令が、上位3ビツトでレジスタ干渉
を起こしていることが認識できても、それがVL大の命
令が扱っているベクトルデータのどの位置((ロ)図の
(b)で、斜線で示した位置)かを判別できないので、
結局VL大の命令が終了してから、tK y (、小の
命令を発信させる必要がある。
第9図は、VL変更フラグの有効期間を説明する図であ
る。
一般に、VL変更時には、VL変更以前の未だ終了して
いない全てのベクトル命令と、 VL変更直後のベクト
ル命令とのレジスタ干渉をチェックする必要があり、従
来は、制御の容易性を考えて、本図の一点鎖線で示すよ
うに、特定のステージでVL変更を検出すると、全ての
VL変更フラグの論理和をとって、全ての命令管理パイ
プラインの全ステージに分配するようにし、該変更フラ
グが“オン゛であると、後続のベクトル命令間にレジス
タ干渉があった場合には、必ず上記のように(即ち、本
図の(a)で示したように)、先行命令が終了してから
後続命令を発信させる制御を行っていた。
第10図は、従来の命令管理部の構成例を示した図であ
る。
従来方式においては、命令発信制御部61において、命
令発信レジスタ62aに、ヘクトル長変更命令(VLV
L命令)が設定されていることをデコーダ67を介して
認識すると、該認識信号(VLC)により、直前のベク
トル命令に対応して設けられている命令管理パイプライ
ン(62b、 62c)の最初の実行ステージレジスタ
、例えば、62bのVL変更フラグ64bを′オン” 
とすることにより、論理和回路66を介して、全てのパ
イプラインの全ステージに対して該VL変更信号が分配
され、該全ステージのVL変更フラグを゛オン°(前述
の、第9図の一点鎖線参照)とするようにしていた。
これは、前述のように、VL変更時には、■し変更以前
の終了していない全てのベクトル命令と、 VL変更直
後のベクトル命令とのレジスタ干渉チェックを、できる
限り簡単な論理で行う為である。
従って、従来方式においては、第9図の一点鎖線で示し
たように、VLを変更する信号が命令発信制御部61か
ら発信された後に投入される全てのベクトル命令に影響
が及び、本来VL変更時の上記ベクトル干渉制御を行う
必要のないベクトル命令当該ベクトルデータ処理装置の
処理能力を著しく低下させると云う問題があった。
第11図は、従来の問題点を説明する図である。
本図(a)に示すように、VLが大から小に変更され、
且つ、VL小のベクトル命令(VAD、 VMD)との
間にレジスタ干渉が生じた場合、従来方式では、VL変
更後のベクトル命令(VAD、VMD)にも、全ステー
ジに対して、そのVL変更フラグが゛オン′に設定され
てしまう為、ベクトル命令(VAD)が終了する迄、後
続のベクトル命令(VMD)の発信が待たされてしまい
、(b)図に示すような、該ベクトル命令(VAD、 
VMD)の並列処理ができなくなると云う問題があった
本発明は上記従来の欠点に鑑み、ベクトルデータ処理装
置において、VL変更時には、該VL変更以前の未だ終
了していない全てのベクトル命令と。
VL変更直後のベクトル命令とのレジスタ干渉チェック
を行えば良いことに着目し、VL変更信号が生成された
時、該VL変更以前の未だ終了していない全てのベクト
ル命令と、 Vl、変更直後のベクトル命令に対しての
み、VL変更フラグを゛オン゛ とする制御を簡単な論
理で行い、VL変更時のレジスタ干渉チェックによる処
理能力の低下を軽減する方法を提供することを目的とす
るものである。
〔問題点を解決するための手段〕
第1図は本発明のベクトル命令発信制御方式の原理構成
図である。
本発明においては、 少なくとも、ベクトルデータを処理し、並列動作を行う
複数個の命令処理部3.4と。
各命令処理部3.4を管理する為の複数個のステージレ
ジスタ(62b〜62c)よりなる命令管理パイプライ
ンと5発信待ち命令を保持する命令発信レジスタ62a
と、該命令発信レジスタ62aと各ステージレジスタ(
62b〜62C)間のレジスタ干渉チェックを、上位ビ
ットに対してのみ行うレジスタ干渉チェック回路63を
備えた命令管理部6と。
上記ベクトルデータを保持するベクトルレジスタ5とを
備えたベクトルデータ処理装置において、上記命令管理
部6の各パイプラインの各ステージ毎に、ベクトル長を
変更する信号(b)が発信された時、又は該ベクトル長
を変更する信号(b)が発信されていなくても、前段の
ベクトル長変更フラグ(R)が°オン゛で、上記パイプ
ライン開始信号(a)が出力されたときに、°オン゛に
設定するベクトル長変更フラグ(64b〜64C)を設
け、上記命令管理部6の各パイプラインの各ステージ毎
に、上記ベクトル長変更フラグ(64b〜64C)が゛
オン゛で、且つ、該ステージの有効ビット(65b〜6
5c)が°オン゛のときのみ、上記命令発信レジスタ6
2aのレジスタ番号と、当該ステージレジスタ(62b
〜62c)に設定されているベクトル命令のレジスタ番
号との間のレジスタ干渉を、上記上位ビットに対してチ
ェックし、 該レジスタ干渉のチェック結果に基づいて、上記命令発
信レジスタ62aから上記パイプラインの最初のステー
ジレジスタ62bにベクトル命令を発信させるように構
成する。
〔作用〕
即ち、本発明によれば、ベクトルデータ処理装置の命令
管理部において、ベクトル長(VL)変更時の、無駄な
レジスタ干渉チェックを省(為に、ベクトル長(VL)
変更時のレジスタ干渉チェックは、ベクトル長(VL)
変更以前の終了していない全てのベクトル命令と、ベク
トル長(VL)変更直後のベクトル命令とのレジスタ干
渉のチェックを行えば事足りることに着目して、該命令
管理部の各命令管理パイプラインの各ステージ毎に、ベ
クトル長変更フラグを“オン゛にする論理回路と、該ベ
クトル長変更フラグを参照してレジスタ干渉チェックを
する回路とを設けることにより、該ベクトル長変更フラ
グの°オン°に先行している全てのベクトル命令と、該
フラグが゛オン”になった直後のベクトル命令とのレジ
スタ干渉チェックのみを行い、該レジスタ干渉チェック
結果に基づいて、ベクトル命令の発信制御を行うように
したものであるので、特にベクトル長大からベクトル長
小に変更されたときの後続命令の発信が早(なり、当該
ベクトルデータ処理装置のベクトル長変更時の処理能力
を向上させる効果がある。
〔実施例〕
以下本発明の実施例を図面によって詳述する。
前述の第1図が本発明のベクトル命令発信制御方式の原
理構成図であり、第2図は本発明のVLL更フラグの制
御方式を説明する図であり、第3図は本発明の一実施例
をブロック図で示した図であって、第1図、第3図にお
けるVL変変更シラグ ル定回路68.及び論理積回路69が本発明を実施する
のに必要な手段である。尚、全図を通して同じ符号は同
じ対象物を示している。
本発明を実施しても、ベクトルデータ処理装置でのベク
トル命令の実行動作、及びレジスタ干渉チェック動作そ
のものは、特に変わることはないので省略し、ここでは
、本発明のVLL更フラグの設定処理を中心にして、本
発明のベクトル命令発信制御方式を説明する。
先ず、第2図によって、VLL更フラグの制御方式を説
明する。
本図は命令管理部6に設けられている命令管理パイプラ
インの、例えば、WステージでのVLL更フラグ64c
に対する制御例を示している。
本発明は、各命令管理パイプラインの各ステージにおい
て設けられているVl、変更フラグ64c等に対する設
定パターンが、本図に示す3つのパターンに限られるこ
とに着目して考え出されたものである。
本図において、 (a)は、νL変更信号(VL−CHNG)がWステー
ジの途中で発信された場合で、VL変更信号(VL−C
ING)の発信があり、且つ、Wステージの有効ビット
が゛オン゛のとき、該WステージのVL変更フラグ64
cを゛オン゛にする。
(b)は、VL変更の信号(VL−CHNG)がWステ
ージ開始直前に発信された場合で、VL変更の信号(V
L−CIING)の発信があり、且つ、Wステージのス
タート信号が発信されたとき、該WステージのVL変更
フラグ64cを゛オン° とする。
(c)は、VL変更の信号(VL−CIING)がWス
テージのスタート信号の前に発信された場合で、前段の
、例えば、RステージのVL変更フラグが゛オン′で、
且つ該Wステージのスタート信号が発信されたときに、
該WステージのVL変更フラグ64cを゛オン” とす
る。
次に、第1図、第3図によって、上記VL変史フラグ設
定回路68の動作について説明する。
本図に示したシL変更フラグ設定回路6Bにおいて、■
で示した論理は、上記第2図の(a)のケースに対応し
、Wステージの有効ビット65cの信号と、 VL変更
の信号(VL−CIING) bとの論理積をとったも
のである。
■で示した論理積は、上記第2図の(b)のケースに対
応し、Wステージのスタート信号aと、 VL変更の信
号(VL−C)ING) bとの論理積をとったもので
ある。
■で示した論理は、上記第2図の(c)のケースに対応
し、Wステージのスタート信号aと、前段のステージ(
本例では、Rステージ)のりし変更フラグ(R)との論
理積をとったものである。
このような論理で設定されたVL変更フラグ64Cと、
各ステージの有効ビット65cとの論理積を、論理積回
路69cでとって、当該Wステージのレジスタ干渉チェ
ック回路63を制御するようにしている為、前述の第9
図の例では、従来方式が一点鎖線で示したように、全ス
テージのVL変更フラグが°オン”に設定されたのに対
して、本発明による論理によって設定される場合は、上
記の論理条件から、VL変更命令(VLVL命令)が実
行された移行のベクトル命令に対しては、上記の設定論
理が当てはまらない為、二重線で示したステージのみし
か°オン”に設定されないことが分かる。
即ち、VL変更時には、VL変更以前の終了していない
全てのベクトル命令と、 VL変更直後のベクトル命令
に対してのみレジスタ干渉のチェックが行われることに
なる。
上記VL変更時のレジスタ干渉チェック動作を、前述の
第11図を参照しながら、更に詳細に説明する。
VLが大から小に変更された場合、従来では、第11図
(a)に示したように、νL変更後のベクトル命令(V
AD、 VMD)に対しても、VL変更フラグが“オン
“ となるので、若し、該ベクトル命令VAD、VMD
間でレジスタ干渉があると、ベクトル命令VADが終了
する迄、ベクトル命令VMDの発信は待たされるていた
然し、本発明を適用した場合には、第11図(b)に示
したように、VL変更前のベクトル命令VSTに対して
は、第2図の(a) 、 (b) 、 (c)の何れか
の論理条件に当てはまる為、VL変更フラグが°オン゛
となるが、VL変更後のベクトル命令VAD、 VMD
に対しては、第2図の(a) 、 (b) 、 (c)
の何れかの論理条件にも当てはまることはないので、該
ベクトル命令の各ステージに対するVL変更フラグは“
オン゛になることはなく、従って、通常のレジスタ干渉
チェ7りが行われ、例えば、点線で示した位置で、ベク
トル命令Vl’lDの発信ができることになる。
このことは、第1図から明らかなように、VL変更フラ
グが“オン′に設定された場合のレジスタ干渉チェック
が、命令発信レジスタ62aに設定されているベクトル
命令と、各ステージ(本例では、Wステージ)に投入さ
れているベクトル命令のレジスタ番号の、例えば、上位
3ビツトに限定された、前述のランク単位でのレジスタ
干渉チェックが行われる。
然しながら、該VL変更フラグが“オフ゛であると、第
1図のレジスタ干渉チェック回路(コンフリクト)63
の論理から明らかなように、下位ビット迄有効となり、
通常のレジスタ干渉チェック動作となることによる。
第1図が、Wステージに着目して、本発明の原理図を示
しているのに対し、第3図の実施例では、当該命令管理
パイプラインのRステージに対しても同じ論理回路が設
けられていることを示しており、機能、動作は第1図と
同じであるので、該第3図の説明は省略する。
このように、本発明は、ベクトルデータ処理装置におい
て、VL変更時のレジスタ干渉チェックを行うのに、V
L変更時には、VL変更以前の゛未だ終了していない全
てのベクトル命令と、VL変更直後のベクトル命令との
レジスタ干渉のみをチェックすれば良いことと、命令管
理パイプラインの特定のステージに着目したとき、該ス
テージのVL変更フラグを°オン” とするケースは、
3つのケースの場合に限ることに着目して、該3つのケ
ースについてのみ、当該VL変更フラグを“オン”とす
る論理回路を設け、該VL変更フラグが°オン′で、且
つ、当該ステージの有効フラグが゛オン。
のときのみ、ランク単位のレジスタ干渉チェックを行う
ように構成し、この論理条件の基で、若し、レジスタ干
渉があった場合には、VL変更前のベクトル命令が終了
する迄、命令発信レジスタに設定されているベクトル命
令を、当該命令管理パイプラインの最初のステージに投
入しないようにした所に特徴がある。
〔発明の効果〕
以上、詳細に説明したように、本発明のベクトル命令発
信制御方式は、ベクトルデータ処理装置の命令管理部に
おいて、ベクトル長(VL)変更時の、無駄なレジスタ
干渉チェックを省く為に、ベクトル長(VL)変更時の
レジスタ干渉チェックは、ベクトル長(VL)変更以前
の終了していない全てのベクトル命令と、ベクトル長(
VL)変更直後のベクトル命令とのレジスタ干渉のチェ
ックを行えば事足りることに着目して、該命令管理部の
各命令管理パイプラインの各ステージ毎に、ベクトル長
変更フラグを゛オン゛にする論理回路と、該ベクトル長
変更フラグを参照してレジスタ干渉チェックをする回路
とを設けることにより、該ベクトル長変更フラグの°オ
ン′に先行している全てのベクトル命令と、該フラグが
゛オン゛になった直後のベクトル命令とのレジスタ干渉
チェックのみを行い、該レジスタ干渉チェック結果に基
づいて、ベクトル命令の発信制御を行うようにしたもの
であるので、特にベクトル長大からベクトル長手に変更
されたときの後続命令の発信が早くなり、当該ベクトル
データ処理装置のベクトル長変更時の処理能力を向上さ
せる効果がある。
【図面の簡単な説明】
第1図は本発明のベクトル命令発信制御方式の原理構成
図。 第2図は本発明のVL変更フラグの制御方式を説明する
図。 第3図は本発明の一実施例をブロック図で示した図。 第4図は一般的なベクトルデータ処理装置の概略の構成
例を示した図。 第5図はベクトル長(VL)と、ベクトルレジスタアド
レス指定との間の規約を説明する図。 第6図はベクトル加算命令(VADD)の処理過程を図
式的に示した図。 第7図はベクトル命令の処理順序の保証例を示した図。 第8図はベクトル長が変更されたときの後続命令の処理
を説明する図。 第9図はVL変更フラグの有効期間を説明する図。 第10図は従来の命令管理部の構成例を示した図。 第11図は従来の問題点を説明する図。 である。 図面において、 1は主記憶装置(MS)、  2は主記憶制御装置。 3はアクセスパイプライン(ロード処理部、ストア処理
部)、又は命令処理部。 4は演算装置、又は命令処理部。 5はベクトルレジスタ。 6は命令制御装置、又は命令管理部。 61は命令発信制御部、62aは命令発信レジスタ。 62b、 62cはステージレジスフ。 63はレジスタ干渉チェック回路(コシブノクト)、6
4b、64cはVL変史フラグ。 65b、65cは有効ビット、67はデコーダ。 68はVL変更フラグ設定回路。 69cは論理和回路。 aは命令管理パイプラインスタート信号。 bはVL変更信号(VL−CIING) 。 RはRステージのVL変更フラグ。 VADD、 VMLT、 VLD、 VMSD、 VA
SD、 VST、 VAD、 VMD、はベクトル命令
。 <にL) (C) −膚欠的lベア)ルデレタ大すヱを置り不既蛎トr)#
ノらεf夕り1≦ 水 ぼ L遇コ繍 A rQ 75団 に カー しr 図 ?!7z図 ((1)         。ル) ■7トルイヒ冷9メき理−・自浄ワIt正〃“1をガ、
L斤βa矛7m (イノ へ゛クムル灸、at丈さ取にどきつ償)セ94q刺昔≠
9A戸図 矛3図り1 VIJ!−フラグ9踊ダL萌瀾きV、咽戸斤777図 (芝米っ4ト令′gμ琴り擲へ“例にホLi−図31p
目 りり ゝ、V門りゝ1 ’、−−+−Δ ダネ2M〃点乞妹朗15図 第1/図

Claims (1)

  1. 【特許請求の範囲】 少なくとも、ベクトルデータを処理し、並列動作を行う
    複数個の命令処理部(3、4)と、各命令処理部(3、
    4)を管理する為の複数個のステージレジスタ(62b
    〜62c)よりなる命令管理パイプラインと、発信待ち
    命令を保持する命令発信レジスタ(62a)と、該命令
    発信レジスタ(62a)と各ステージレジスタ(62b
    〜62c)間のレジスタ干渉チェックを、上位ビットに
    対してのみ行うレジスタ干渉チェック回路(63)を備
    えた命令管理部(6)と、 上記ベクトルデータを保持するベクトルレジスタ(5)
    とを備えたベクトルデータ処理装置において、 上記命令管理部(6)の各パイプラインの各ステージ毎
    に、ベクトル長を変更する信号(b)が発信された時、
    又は該ベクトル長を変更する信号(b)が発信されてい
    なくても、前段のベクトル長変更フラグ(R)が‘オン
    ’で、上記パイプライン開始信号(a)が出力されたと
    きに、‘オン’に設定するベクトル長変更フラグ(64
    b〜64c)を設け、上記命令管理部(6)の各パイプ
    ラインの各ステージ毎に、上記ベクトル長変更フラグ(
    64b〜64c)が‘オン’で、且つ、該ステージの有
    効ビット(65b〜65c)が‘オン’のときのみ、上
    記命令発信レジスタ(62a)のレジスタ番号と、当該
    ステージレジスタ(62b〜62c)に設定されている
    ベクトル命令のレジスタ番号との間のレジスタ干渉を、
    上記上位ビットに対してチェックし、 該レジスタ干渉のチェック結果に基づいて、上記命令発
    信レジスタ(62a)から、上記パイプラインの最初の
    ステージレジスタ(62b)にベクトル命令を発信させ
    るように制御することを特徴とするベクトル命令発信制
    御方式。
JP5947087A 1987-03-13 1987-03-13 ベクトル命令発信制御方式 Pending JPS63225865A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5947087A JPS63225865A (ja) 1987-03-13 1987-03-13 ベクトル命令発信制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5947087A JPS63225865A (ja) 1987-03-13 1987-03-13 ベクトル命令発信制御方式

Publications (1)

Publication Number Publication Date
JPS63225865A true JPS63225865A (ja) 1988-09-20

Family

ID=13114226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5947087A Pending JPS63225865A (ja) 1987-03-13 1987-03-13 ベクトル命令発信制御方式

Country Status (1)

Country Link
JP (1) JPS63225865A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011227610A (ja) * 2010-04-16 2011-11-10 Fujitsu Ltd 情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011227610A (ja) * 2010-04-16 2011-11-10 Fujitsu Ltd 情報処理装置

Similar Documents

Publication Publication Date Title
US6128614A (en) Method of sorting numbers to obtain maxima/minima values with ordering
US4680730A (en) Storage control apparatus
JPS6217252B2 (ja)
US4897787A (en) Data processing system
KR100346515B1 (ko) 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일
JPH09311786A (ja) データ処理装置
WO2004053718A1 (en) Cellular engine for a data processing system
US8145804B2 (en) Systems and methods for transferring data to maintain preferred slot positions in a bi-endian processor
US9965275B2 (en) Element size increasing instruction
CN112148251A (zh) 跳过无意义的矩阵运算的系统和方法
EP3729289A2 (en) A memory apparatus and method for controlling the same
US6023751A (en) Computer system and method for evaluating predicates and Boolean expressions
JPS63240664A (ja) 高速処理計算機
US5307300A (en) High speed processing unit
JPH06242953A (ja) データ・プロセッサ
JPH05150979A (ja) 即値オペランド拡張方式
CN114675883A (zh) 用于对齐矩阵操作加速器瓦片的指令的装置、方法和系统
KR100374401B1 (ko) 마이크로 명령을 기초로 프로그램 가능한 명령을 실행하는하드웨어 장치
JPS63225865A (ja) ベクトル命令発信制御方式
US20210089305A1 (en) Instruction executing method and apparatus
JP2567134B2 (ja) ビットフィールド論理演算処理装置およびそれを具備するモノリシックマイクロプロセッサ
KR100278136B1 (ko) 데이타처리장치 및 데이타처리방법
US11775310B2 (en) Data processing system having distrubuted registers
JPH05143333A (ja) 並列演算処理装置
JP2017059273A (ja) 演算処理装置