JPS5844569A - 命令処理同期制御方式 - Google Patents

命令処理同期制御方式

Info

Publication number
JPS5844569A
JPS5844569A JP14297681A JP14297681A JPS5844569A JP S5844569 A JPS5844569 A JP S5844569A JP 14297681 A JP14297681 A JP 14297681A JP 14297681 A JP14297681 A JP 14297681A JP S5844569 A JPS5844569 A JP S5844569A
Authority
JP
Japan
Prior art keywords
instruction
register
execution
processing
vector
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
JP14297681A
Other languages
English (en)
Other versions
JPS6259829B2 (ja
Inventor
Shigeaki Okuya
茂明 奥谷
Yuji Oinaga
勇次 追永
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 JP14297681A priority Critical patent/JPS5844569A/ja
Publication of JPS5844569A publication Critical patent/JPS5844569A/ja
Publication of JPS6259829B2 publication Critical patent/JPS6259829B2/ja
Granted 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

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)
  • Complex Calculations (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は、ベクトル処理においてメモリビジーなどによ
り処理中断が生じた場合の命令処理同期制御方式に関す
る。
複数のエレメントを有する第2オペラ/ドA=1・eU
s・・・・・−・・ean−’+と複数のエレメントを
有する第3オペランドB=b・、b!、・・・・・・・
・・bn−tで対応するエレメント同士に演算1施し、
結果の第1オペランド、C=e・、CI、・+++++
++Cn−1(ここで演算が加算なら、el=li+b
i 、 iは0 、1 、2 、 =−=−n−1のい
ずれか)を得るような処理装置がある。これはベクトル
処理装置と呼ばれ、これに対してオペランドのエレメン
トが111(n=1)に限定された従来の汎用処理装置
をスカラー処理装置と称する。第1図にベクトル処理装
置の構成を示す。この図に示すようにベクトル処理装置
は命令制御部、主記憶M8uの制御部@ MCuに対−
しロード、ストア処理をするメモリアクセス処理部、ベ
クトルレジスタ、加算器および乗算器を含む演算処理部
を備える。ベクトルレジスタは、ロード/ストアされる
複数の工レメントからなる複数のベクトルデータ金収容
する。ベクトル命令は命令コード、第1オペランド指定
、第2オペランド指定および第3オペランド指定より成
る。例えばVMl、2.3はベクトルレジスタ2とベク
トルレジスタ3の内容を乗算(VM:ベクトルマルチ)
シ、ベクトルレジスタ1に結果を入れようというベクト
ル乗算命令である。またVA4.5.1uベクトルレジ
スタ5とベクトルレジ艮夕1や内容を加算(VA:ペク
ト〃ア、ド)し、結果をベクトルレジスタ4に入れよと
いうベクトル加算命4大ある。
ベクトル命令を処理する場合には′、処理を高速に行な
う冷めに1演算処理部をノくイブライン構造にし、先行
のエレメントの演算処理が完了する前に後続のエレメン
トを投入するよう吟じている。
例えば、ベクトル加算命令を行なうときは■デーpoH
出1..CREho )、0両オペランドの指数比較(
COMPARE )、■指数を合わせるためのシフト(
PRE 5HIFT)、■加算(ADD)、■演算後正
規化のためのシフト(PO8T 5)LIFT)、■デ
ータの書込み(WRITE)、06段階の処理となあ−
、′これらが第2図に示すように逐次かつ同時に実行さ
れる。即ちエレメントOKついてはa・、b・の続出し
、指数比較、プリシフト・・・・・・・・・が逐次行な
われ、エレメントについても同様であるがタイミングは
1処理タイミングτ拳だけ遅れ1、−エレメント2につ
いても同様であるがタイミングは2処理タイミングだけ
遅れ、以下これに準する。従ってエレメント全体の処理
状況は図示のように平行四辺形で表わされる。EOTI
IT・・・・・・・・・はエレメント0の処理、エレメ
ント1の処理・・・・・・・・・を示す。
ところで演算処理ではある処理TRIの結果を使用して
次の処理TR1’i行なう場合があるが、メモリビジー
などで処理部TR,の実行が遅れると当然次の処理TR
2は実行できず、TR,処理待ちとなる。
そして蚊TRtの処理が終って次の処理TR:の実行が
開始される。例えば次のような命令群を考える。
■VL2 、 A (メモリアドレスAの内容をベクト
ルレジスタ2にロードせよ)、■VA3,0.2(ベク
トルレジスタ2.0の内容を加算してレジスタ6に入れ
よ)、■VA4 、1 、2、■VL5.B(メモリア
ドレスBの内容をベクトルレジスタ5にロードせよ)、
■VM6..5 、5 (ベクトルレジ、Xり315の
内容を乗算して結果をベクトルレジスタ6に入れよ)、
■VM7.4.5、この命令列では処理■。
■などは、処理■、■の実行が終了しないと実行できな
い。このように、先行命令の結果を後続命令で使用する
とき、それらの命令間に連@(チェイン)、があ、ると
いう。そしてメモ゛すはアクセス処理部だけでなくチャ
ネルその他も使用するので常にアクセスヅとは限らない
メモη・アクセスに遅れがなければ上記命令列゛、の実
行は第・6図の如くなる。即ち命令■VL2.Aは各ベ
クトルエレメントE・e El・・・・・・・・・につ
いて逐1次実行され、ベクトルレジスタ2へ書込まれて
ゆく、次の命令■VA5,0.2はレジスタ2にエレメ
ントEo、g1・・・・・・・・・が書込まれるにつれ
て、第0.第1・・・・・・・・・エレメントから実行
してゆけるので、レジス、$2へ最17)のニレメン)
 KOが書込ま、れる時点力ら1タイミング以上ずれた
だけで直ちに第0エレメント側から実行開始される。こ
れをベク)λ処理の連鎖化(チェイニング)という二次
の命令■け■の結果を使うだけであるから■と同時にス
タートさせてもよいが、■と同じベクトルアット°VA
であるので使用ノ1−ドウエアが同じであるという関係
上■の処理待ちとなる。次の命令■の結果は命令■で使
用するだけであるのでそれ迄に終れば(レジスタ5への
第0エレメントの格納を裟)よく、図示の如き適当なタ
イミングで実行する。命令■は乗算器が加算器とは別で
あれば命令■2.■などと同時に実行してよいが、本例
ではI司じ、、E*ウェアを使用する、従って■の後と
している。命令のは命令■と■の結果を使用するのでそ
れらの実行後なら何時でもよいが、同様な理由で命令■
の後で行なう。
ベクトル処理では主記憶は複数のノ(ンクに分け、イン
ターリーブ全行なっている。し力為し、・インターリー
ブしていても、主記憶のサイクルタイムの間に同一パン
クに後続−のアクセス力(来たてきには後続のアクセス
は待たされる。またチャネルプロセ、す(CHP)等の
他装置とメモリアクセスバンクが競合すると、ベクトル
命令のメモリアクセスは待たされる。メモリアクセスが
待たされる場合は単純にはチェイニングは行なえない。
例えば命令■の処理であるエレメントElまでのレジス
タ2への格納が終って次のエレメントEi、、ではメモ
リアクセス全待機させられたとすると、命令■ではその
Ei+l 以Nのエレメントはレジスタ2のEi+1以
降に対応する個所の無意味なデータとの加算をしてしま
う。そこで従来は(1)ロード命令を出すとき、その命
令内の各エレメント間で、サイクルタイム間にバンクの
ぶつかシがないことを確認し、(+i) CHP等の他
からのアクセスがないことを確認し、01Dそのロード
命令がメモリアクセス全行なっているときは、他のメモ
リアクセステ禁止する、ようKして即ちメモリアクセス
に遅れが生じないようにした状態でのみ、チェイニング
を行なうよう処していた。このため前記命令■のあるエ
レメントで、サイクルタイムの間バンクのぶつかシがあ
る場合にはチェイニングを行なえず、第4図のような命
令処理タイムチャートになる。
第4図を見れば明らかなようKこの方式では、後続する
■命令の一部のエレメントは実行できるのに命令■の実
行完了まで命令■の実行は待たされ、システム資源が有
効に使用されていないことKなる。またCHP等の他装
置は完全に待たされるため、インタリープの効果が減少
させられる。
本発明はかかる点を改善し、処理待ちを可及的に減少さ
せて所要時間を短縮し、また資源の有効利用を図ろうと
するものである0本発明ではメモリアクセスに中断があ
っても、それ迄にロードされてきたエレメントは半速処
理するようなチェイニング制御を行なうようにする。
すなわち第5図に示すように、ロード命令■でエレメン
トデータをベクトルレジスタ2に書込んだときにはチェ
イニングを行ない、後続命令■を実行させるが、先行ロ
ード命令■がメモリアクセス不可のため、途中でエレメ
ントデータを書込めなぐなったときは、チェイニングし
ている後続命令■を停止させるようにする。このとき、
チェイニングが有るか無いかを確認しないで、単にロー
ド命令においてエレメントデータをベクトルレジスタに
書込めなかったということだけでこのとき走っている演
算処理を停止させるなら5、チェイニングの同期制御は
簡単になるが、第5図の命令■。
■のように、■の実行中断によってチェイニングしてい
ない命令■まで中断させてしまい、性能はよくない。
本発明は、先行するロード命令に後続命令がチェイニン
グしているか否かを検査し、チェイニングしているとき
で、先行するロード命令におけるエレメントデータのベ
クトルレジスタへの書込みが中断し象ときのみ、その期
間中、後続のチェイニングしている命令処理を中断させ
て、同期処理を行ない、チェイニングしていないときK
は、それらのロード命令および他命令は非同期に並列処
理させることkよってシステム資源の有効利用と、性能
向上を計るものである。
第6図に本発明の場合のタイムチャー)1示す。
命令■においてアクセス可能は第4ニレメン) Esま
でで以後は待機となったとすると、チェイニングしてい
る命令■があるのでニレ、メントE3がレジスタ2に書
込まれたタイミングでクロ、りtthめる。従りて命令
■では第1.第2.第3エレメントE・e El * 
E2の処理が一部実行されてただけで処理中断となる。
そして本例では4クロ、り周期後にアクセス可となり、
後続のエレメントga e Ijl・−・・・・・・・
がレジスタ2に書込まれ始めたとき命令■の実行を再開
する。次にロード命令■においても中断が生じたが、同
時に実行されている演算命令■は■とチェイニングして
いないのでクロックを止めることはせず、命令■の実行
中断、命令■け処理続行とする。このようにすれば第4
図の方式では中断は同様に4+4=8クロック周期であ
るのに命令■の実行間、始までに42クロック周期要し
たが、第6図の方式では60り目、り周期で済む。
またこの方式では前記(i) (ii) (iiDの制
御は不要に、なるため、ロード命令を出すとき、その命
令内の各ニレメン、ト間でサイクルタイムの間にバンク
のぶつかシが有るか否かを確認する必要がなくなシ、更
に、メモリには、CH2等他装置からのアクセスも並行
して実行できるととくなる。
これは、ベクトル処理装置に複数のメモリアクセス処理
部すなわち複数のロード−理部やストア処理部を置いて
も、それらt並^に実行させながらチェイニングを行な
うことを可能とするので、ロード処理部t−2個置き、
後続演算命令の第3オペランドと第2オペランドを各ロ
ード処理部でロード1ながら、その後続演算命苓ヲチエ
イニング゛しながら実行するようなとき、とりわけ有効
となる。ま禿命令■と命令■のプログラ4上の順序を入
れすえておけばVL命令■の実行を早(スーートさせる
。ことができるため、#vL命令命令部理が遅れたとし
ても、v人命令■の処理を非同期に並列に実行しながら
、VM命令■の、実行時にはベクトルレジスタにデータ
が揃っているようkすることができる。すなわち、メモ
リアクセスによる遅れを見えなくすることができる。第
7図に本発明の実施例を示す、10.12,14.16
,18はレジスタ、20は命令デコーダ、22は命令発
信制御回路、24.26は一致回路、28はオーア′ゲ
ート、50.52はアンドゲート、54はインバータで
ある。矩形枠66は実行中アクセス命令管理部、58は
実行中演算命令管理部を示す。!7図は第1図のベクト
ル処理部に相当するもので、命令処理部、ロード処理部
、ベクトルレジスタ、演算処理部は第1図のそれに対応
する。
命令制御部において、フェッチ(巧した命令はレジスタ
10に格納され、次いで命令デーコード(ロ)用レジス
タ12に移され、デコーダ20で解読され、然るのち命
令発信待合せ(2)レジスタ14に格納される。レジス
タ14内の命令は、先行中の命令とオペランドレジスタ
のレジスタ干渉がないこと、演算処理部が空−ているこ
と、かつ命令制御部の管理部56.38が空いているこ
と等を確認して命令実行に移る。前記命令列■〜■の場
合は次のようKなる。フェッチされた命令■はレジスタ
10.12.デコーダ20、レジスタ14、回路22を
通って管理部36のレジスタ16に入る。
続いて命令■がフェッチされかつシフト等されてレジス
タ14に入り、該レジスタで回路22により命令発信条
件が検査される。命令■のオペランドはその第5が命令
■の第1オペランドと一致しているのでチェイニングし
ていることが分ね、該命令■はレジスタ14で待たされ
る。命令■の実行が進んでロードデータエレメントをベ
クトルレジスタ2に書込み開始すると、それを示すフラ
グWFがロード処理部から送られ、これはインバータ3
4で反転されてH(ハイ)dレベル信号がL”(o −
) vベル信号に変り、アンドゲート30を閉じて命令
発信条件信号を消滅させる(Lレベルにするう・、そこ
で待機は解除となり、演算命令゛■は回路2・2を通っ
てベクトル処理装置の演算処理部/アクセス処理部の起
動情報sbとなり命苓■の実行を開始させると共に、管
理部3βのレジスタ18に格納される。またこのとiア
ンドゲート32から同期動作開始信号Stが出力され、
ロード処理部の同期制御回−に入力される。これKより
ロード処理部は、命令■の実行中アクセス中断が生じて
レジスタへ後続データエレメントの書込臥が不可能にな
り友ときは、クロ、りを止めて漏+(2)の実行も中断
させる。S命は演算処理部へ入力する同期制御信号であ
り、演算停止、再開を指示する。
一致回路24.26の一方の端子へはレジスタ16中の
命令■の第1オペランド本例ではレジスタ番号2が入力
され、24の他方の端子にはレジスタ14内の命令■の
第2オペランドがまた26の他方の端子には同レジスタ
14内の命令■の第5オペランドが入力され(これらは
逆−+吃よい)、両者比較される。従って命令■の@2
.第3オペランドの一方でも命令■の第1オベラレドと
同じであれば、従りて命令■が命令■とチェイニングし
ておれば一致回路24.26のいずれかから一致出力が
あり、これがアントゲ−)50.32の一方の入力とな
る。従ってチェイニングしていなければアンドゲート3
0の出力Ssはなく、回路22けロード命令の次の演算
命令は直ちに発信号とする。チェイニングしている場合
は、前述のようにフラグWFの到来を待つ。またアンド
32はチェイニングしておればオアゲート28の出力で
開可能となっており、回路22が演算処理部起動信号S
di出力するとき前述の信号Se′fr出力する。
第6図の下部タイムチャートのF 、 D 、 Q 、
 L 、 E。
WFは第7図で説明したそれに対応し、第6図上部の命
令実行状況を命令フェッチ、デコードなどを含めて説明
するものである。
以上説明したように本発明によればアクセス中断が生じ
てもベクトル処理遅れを可及的に短縮す゛ること瀘でき
、勿論ベクトル処理−に何ら不都合、支障はない利点が
得られる。なお以上ではロード命令と演算命令とでチェ
イニングがある場合、ない場合に・ついての同期制御に
ついて説明したが、。
本発明は・これのみに限定されず、第1の種類の命令と
第2の種類の命令との間にチェイニングが有ったり無か
つたりする場合に適用で卒るものであ図、第2図はベク
トル処理要領を説明する図、第3図〜第5図は命令列実
行状況k 説明する図、第6図は本発明の制御方式の説
明図、そして第7図は本発明の実施例を示すブロック図
であるー。
図面でブロック「ロート8処理部」は第1の処理部、ブ
ロック「ストア処理部」は第2の処理部、14.16,
24,26はチェイン検出手段である。
出願人 富士通株式会社

Claims (2)

    【特許請求の範囲】
  1. (1)並列実行可能な第19M2の処理部を備えるベク
    トル処理装置における命令処理同期制御方式先行して実
    行中の第1の命令と後続して発信される第2の命令との
    間にチェイ/があるか否かを検出する手II&を設け、
    チェインがあることが検知されかつ先行命令の実行が遅
    れるときはそれに応じて該後続発信命令の実行を遅らせ
    、チェインかゝないことが検知されたとき後続発信命令
    の実行は鋏先行命令とは非同期に実行することを特徴と
    した命令処理同期制御方・式。
  2. (2)!1の処理部はロード処理部、第2の処理部は演
    算処理部であり、talの命令はロード命令、第2の命
    令は演算命令であることt特徴とする特許請求の範8第
    1項記載の命令処理同期制御方式。
JP14297681A 1981-09-10 1981-09-10 命令処理同期制御方式 Granted JPS5844569A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14297681A JPS5844569A (ja) 1981-09-10 1981-09-10 命令処理同期制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14297681A JPS5844569A (ja) 1981-09-10 1981-09-10 命令処理同期制御方式

Publications (2)

Publication Number Publication Date
JPS5844569A true JPS5844569A (ja) 1983-03-15
JPS6259829B2 JPS6259829B2 (ja) 1987-12-12

Family

ID=15328027

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14297681A Granted JPS5844569A (ja) 1981-09-10 1981-09-10 命令処理同期制御方式

Country Status (1)

Country Link
JP (1) JPS5844569A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58173170A (ja) * 1982-03-20 1983-10-12 ベ−・ア−・エス・エフ・フアルベン・ウント・フア−ゼルン・アクチエンゲゼルシヤフト カチオン電着塗料用の水分散可能な結合剤及びその製法
JPS60178580A (ja) * 1984-02-24 1985-09-12 Fujitsu Ltd 命令制御方式
JPS6116335A (ja) * 1984-07-02 1986-01-24 Nec Corp 情報処理装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS638633U (ja) * 1986-07-03 1988-01-20

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51854A (en) * 1974-06-21 1976-01-07 Hitachi Ltd Deijitarukeisankino senkoseigyohoshiki

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51854A (en) * 1974-06-21 1976-01-07 Hitachi Ltd Deijitarukeisankino senkoseigyohoshiki

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58173170A (ja) * 1982-03-20 1983-10-12 ベ−・ア−・エス・エフ・フアルベン・ウント・フア−ゼルン・アクチエンゲゼルシヤフト カチオン電着塗料用の水分散可能な結合剤及びその製法
JPS60178580A (ja) * 1984-02-24 1985-09-12 Fujitsu Ltd 命令制御方式
JPH0512751B2 (ja) * 1984-02-24 1993-02-18 Fujitsu Ltd
JPS6116335A (ja) * 1984-07-02 1986-01-24 Nec Corp 情報処理装置
JPH0248932B2 (ja) * 1984-07-02 1990-10-26 Nippon Electric Co

Also Published As

Publication number Publication date
JPS6259829B2 (ja) 1987-12-12

Similar Documents

Publication Publication Date Title
KR0133238B1 (ko) 컴퓨터 프로세싱 시스템 및 인스트럭션 실행방법
US5404552A (en) Pipeline risc processing unit with improved efficiency when handling data dependency
US5949996A (en) Processor having a variable number of stages in a pipeline
US5212662A (en) Floating point arithmetic two cycle data flow
US5450560A (en) Pointer for use with a buffer and method of operation
JPS59114641A (ja) 割込処理装置
JPS6028015B2 (ja) 情報処理装置
US6101596A (en) Information processor for performing processing without register conflicts
US20070260857A1 (en) Electronic Circuit
US6055628A (en) Microprocessor with a nestable delayed branch instruction without branch related pipeline interlocks
US6263424B1 (en) Execution of data dependent arithmetic instructions in multi-pipeline processors
JPS5844569A (ja) 命令処理同期制御方式
JP3461887B2 (ja) 可変長パイプライン制御装置
JP2944563B2 (ja) パイプライン型情報処理装置
JP2812610B2 (ja) パイプライン制御方式
JPH0475143A (ja) タスク切換機能付プロセッサ
JPS5896346A (ja) 階層型演算方式
JPH0248733A (ja) 情報処理装置
JPH0786838B2 (ja) 割り込み処理方式
JPS6020245A (ja) デ−タ処理装置の命令制御回路
JPH06161778A (ja) マルチフロー命令制御方法及び命令処理装置
JPH09146769A (ja) パイプライン処理装置
JPS62285180A (ja) ベクトルプロセツサ
JPS59158441A (ja) パイプライン制御方式
JP2000250869A (ja) マルチプロセッサの制御方法およびその装置