JPH02300852A - 命令実行のシリアライズ制御方式 - Google Patents
命令実行のシリアライズ制御方式Info
- Publication number
- JPH02300852A JPH02300852A JP1121277A JP12127789A JPH02300852A JP H02300852 A JPH02300852 A JP H02300852A JP 1121277 A JP1121277 A JP 1121277A JP 12127789 A JP12127789 A JP 12127789A JP H02300852 A JPH02300852 A JP H02300852A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- unit
- signal
- access
- 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
Links
- 238000000034 method Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 21
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 14
- 230000010365 information processing Effects 0.000 claims description 3
- 230000008034 disappearance Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- GVBNSPFBYXGREE-UHFFFAOYSA-N Visnadine Natural products C1=CC(=O)OC2=C1C=CC1=C2C(OC(C)=O)C(OC(=O)C(C)CC)C(C)(C)O1 GVBNSPFBYXGREE-UHFFFAOYSA-N 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 101100082837 Arabidopsis thaliana PEN1 gene Proteins 0.000 description 1
- 101100366936 Caenorhabditis elegans sto-3 gene Proteins 0.000 description 1
- 235000009854 Cucurbita moschata Nutrition 0.000 description 1
- 240000001980 Cucurbita pepo Species 0.000 description 1
- 235000009852 Cucurbita pepo Nutrition 0.000 description 1
- 102100023696 Histone-lysine N-methyltransferase SETDB1 Human genes 0.000 description 1
- 101710168120 Histone-lysine N-methyltransferase SETDB1 Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000003292 glue Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 235000020354 squash Nutrition 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/3834—Maintaining memory consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
- G06F8/458—Synchronisation, e.g. post-wait, barriers, locks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30087—Synchronisation or serialisation instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
スカラユニットとベクトルユニットとを備える情報処理
システムにおける命令実行のシリアライズ制御方式に関
し、 POST命令/WA I T命令を用いたシリアライズ
制御において、インタロックされているスカラ命令の実
行開始を早めることを目的とし、スカラユニットは、P
OST命令の実行時に、先行する主記憶アクセスの未終
了を表すアクセス未終了信号を強制的に発生するととも
に、この強制信号をベクトルユニットから送られてくる
アクセス未終了信号に継続させていくよう処理する手段
と、WA■T命令の実行時に、この手段がアクセス未終
了信号の存在状態を表示しているときには、後続する主
記憶アクセスに対してのインタロツタ信号を発生すると
ともに、消滅状態を表示しているときには発生しないよ
う処理するインタロック信号発生手段とを備え、ベクト
ルユニットは、スカラユニットから送られてくるPOS
T命令が発信するまでの間、アクセス未終了信号を強制
的にスカラユニソトに送出するとともに、この強制信号
を本来のアクセス未終了信号に継続させていくよう処理
する手段を備えるよう構成する。
システムにおける命令実行のシリアライズ制御方式に関
し、 POST命令/WA I T命令を用いたシリアライズ
制御において、インタロックされているスカラ命令の実
行開始を早めることを目的とし、スカラユニットは、P
OST命令の実行時に、先行する主記憶アクセスの未終
了を表すアクセス未終了信号を強制的に発生するととも
に、この強制信号をベクトルユニットから送られてくる
アクセス未終了信号に継続させていくよう処理する手段
と、WA■T命令の実行時に、この手段がアクセス未終
了信号の存在状態を表示しているときには、後続する主
記憶アクセスに対してのインタロツタ信号を発生すると
ともに、消滅状態を表示しているときには発生しないよ
う処理するインタロック信号発生手段とを備え、ベクト
ルユニットは、スカラユニットから送られてくるPOS
T命令が発信するまでの間、アクセス未終了信号を強制
的にスカラユニソトに送出するとともに、この強制信号
を本来のアクセス未終了信号に継続させていくよう処理
する手段を備えるよう構成する。
本発明は、スカラユニノトとスカラユニソトから送られ
るベクトル命令を処理するベクトルユニットとを備えた
科学技術用計算機等の情報処理システムにおける命令実
行のシリアライズ制御方式%式% このような科学技術用計算機システムでは、スカラ命令
とベクトル命令、あるいはベクトル命令とベクトル命令
間で命令の先行制御や並列実行が行われることがあるた
め、主記憶参照順序が保証されないことがある。これか
ら、主記憶参照順序を保証するためにはベクトルオペレ
ーションのシリアライズを行う必要がある。
るベクトル命令を処理するベクトルユニットとを備えた
科学技術用計算機等の情報処理システムにおける命令実
行のシリアライズ制御方式%式% このような科学技術用計算機システムでは、スカラ命令
とベクトル命令、あるいはベクトル命令とベクトル命令
間で命令の先行制御や並列実行が行われることがあるた
め、主記憶参照順序が保証されないことがある。これか
ら、主記憶参照順序を保証するためにはベクトルオペレ
ーションのシリアライズを行う必要がある。
ベクトルオペレーションのシリアライズとは、それ以前
に実行中である命令が生じる主記憶オペランドアクセス
をそれよりも後に実行すべき命令の主記憶オペランドア
クセスが生じる前に終了させることである。このベクト
ルオペレーションのシリアライズは、ベクトル命令同士
及びベクトル命令とスカラ命令の主記憶オペランドアク
セス間において意味をもち、スカシ命令間ではもともと
順序関係が保証されているため意味をもたない。
に実行中である命令が生じる主記憶オペランドアクセス
をそれよりも後に実行すべき命令の主記憶オペランドア
クセスが生じる前に終了させることである。このベクト
ルオペレーションのシリアライズは、ベクトル命令同士
及びベクトル命令とスカラ命令の主記憶オペランドアク
セス間において意味をもち、スカシ命令間ではもともと
順序関係が保証されているため意味をもたない。
近年の科学技術用計算機システムにおける高速化要求に
応えるため、本発明はベクトルオペレーションのシリア
ライズに伴うオーバーヘッドの削減を図ることを意図し
ている。
応えるため、本発明はベクトルオペレーションのシリア
ライズに伴うオーバーヘッドの削減を図ることを意図し
ている。
第10閣に、本発明が適用される従来の科学技術用計算
機システムの構成例を示す。図中、1はスカラユニット
、2はベクトルユニット、3はベクトル実行部、4及び
5は乗算・加算パイプライン、6は除算パイプライン、
7はベクトルレジスタ、8及び9はロー ド・ストアバ
イブライン、10は主記憶装置、11はへり(・ル制御
部、12はベクトル命令管理部、13はベクトル記憶管
理部、14は記憶制御部である。
機システムの構成例を示す。図中、1はスカラユニット
、2はベクトルユニット、3はベクトル実行部、4及び
5は乗算・加算パイプライン、6は除算パイプライン、
7はベクトルレジスタ、8及び9はロー ド・ストアバ
イブライン、10は主記憶装置、11はへり(・ル制御
部、12はベクトル命令管理部、13はベクトル記憶管
理部、14は記憶制御部である。
スカラユニット1はプログラム中の命令を順次フエンチ
し、スカラ命令については自分自身で実行し、ベクトル
命令についてはベクトルユニット2へ送って実行させる
。ベクトルユニット2のベクトル制御部11において、
ベクトル命令管理部12はスカラユニット1から送られ
てきたベクトル命令を受は取り、実行を管理する。ベク
トルI。
し、スカラ命令については自分自身で実行し、ベクトル
命令についてはベクトルユニット2へ送って実行させる
。ベクトルユニット2のベクトル制御部11において、
ベクトル命令管理部12はスカラユニット1から送られ
てきたベクトル命令を受は取り、実行を管理する。ベク
トルI。
OAD命令、ベクトル5TORE命令の場合は、ベクト
ル記憶管理部13が起動され、記憶制御部14を介して
主記憶装置10へのアクセスが行われる。主記憶装置1
0からヘク[・ルレジスタ7へのベクトルデータのLO
AD処理、およびベク[・ルレジスタ7から主記憶装置
10へのベクトルデータの5TORE処理は、ロード・
ストアパイプライン8,9を用いて行われる。一方、ス
カラユニソト1から主記憶装置10へのアクセスは、ベ
クトルユニット2内の記憶制御部14を介して行われる
。
ル記憶管理部13が起動され、記憶制御部14を介して
主記憶装置10へのアクセスが行われる。主記憶装置1
0からヘク[・ルレジスタ7へのベクトルデータのLO
AD処理、およびベク[・ルレジスタ7から主記憶装置
10へのベクトルデータの5TORE処理は、ロード・
ストアパイプライン8,9を用いて行われる。一方、ス
カラユニソト1から主記憶装置10へのアクセスは、ベ
クトルユニット2内の記憶制御部14を介して行われる
。
スカシユニット1とベクトルユニット2とは、可能な限
り並列に動作することがシステムの処理性能を高めるう
えで望ましい。しかし、プログラム中のベクトル命令あ
るいはスカシ命令が、先行するベクトル命令あるいはス
カシ命令の実行結果のデータを主記憶オペランドとして
使用する場合、それらの命令間での実行順序を保証する
ことが必要となる。この制御″Bが、ベクトルオペレー
ションのシリアライズ制御である。
り並列に動作することがシステムの処理性能を高めるう
えで望ましい。しかし、プログラム中のベクトル命令あ
るいはスカシ命令が、先行するベクトル命令あるいはス
カシ命令の実行結果のデータを主記憶オペランドとして
使用する場合、それらの命令間での実行順序を保証する
ことが必要となる。この制御″Bが、ベクトルオペレー
ションのシリアライズ制御である。
従来のシステムにおいて、ベクトルオペレーションのシ
リアライズ制御を、POSTO3上びWACT命令を利
用して行う方法がある。この方法は、POSTO3上り
前に実行されるべき命令の主記憶オペランドの参照が、
WAIT命令より後で実行されるべき命令の主記憶オペ
ランドの参照よりも早く行われるように制御するもので
ある。
リアライズ制御を、POSTO3上びWACT命令を利
用して行う方法がある。この方法は、POSTO3上り
前に実行されるべき命令の主記憶オペランドの参照が、
WAIT命令より後で実行されるべき命令の主記憶オペ
ランドの参照よりも早く行われるように制御するもので
ある。
このため、PO5T命令とWAIT命令にはさまれた命
令の主記憶オペランドは、ベクトルオペレーションのシ
リアライズの対象から除外されることになる。
令の主記憶オペランドは、ベクトルオペレーションのシ
リアライズの対象から除外されることになる。
従来、ベクトル命令とスカシ命令の各組み合わせでのシ
リアライズの保証は、次のように行われている。
リアライズの保証は、次のように行われている。
+11 ベクトル命令−ベクトル命令間のシリアライ
ズ (a) P OS T命令に先行するベクトルLOAD
命令の保証 一ブライオリティがとれるまで。
ズ (a) P OS T命令に先行するベクトルLOAD
命令の保証 一ブライオリティがとれるまで。
(bl P OS T命令に先行するベクトル5TOP
E命令の保証 一ブライオリティがとれるまで。
E命令の保証 一ブライオリティがとれるまで。
(2) スカシ命令−ベクトル命令間のシリアライズ
(al P OS T命令に先行するスカシLOAD命
令の保証 −もともと保証されている。
令の保証 −もともと保証されている。
(bl P OS T命令に先行するスカシ5TORE
命令の保証 一ブライオリティがとれるまで。
命令の保証 一ブライオリティがとれるまで。
(3) ベクトル命令−スカシ命令間のシリアライ(
al P OS T命令に先行するヘクトルLOAD命
令の保証 一プライオリティがとれるまで。
al P OS T命令に先行するヘクトルLOAD命
令の保証 一プライオリティがとれるまで。
(b) P OS T命令に先行するベクトル5TOR
E命令の保証 一スカラユニット1へのバッファ・ インバリデーシランが全てスカシ ユニット1に反映されるまで。
E命令の保証 一スカラユニット1へのバッファ・ インバリデーシランが全てスカシ ユニット1に反映されるまで。
ここで、上記(3)の(b)は、POSTO3上先行す
るベクトル5TORE命令によって主記憶装置10にデ
ータを書き込んだ場合、スカシユニット1内のバッファ
(キャッシュと称されている)に該当するアドレスの
旧データがあれば、それらを全て無効化するバッファ無
効化(インバリデーション)処理を行い、これが終了す
るまでは、WA[T命令の後の主記憶参照を伴うスカシ
命令を実行させないことを意味している。
るベクトル5TORE命令によって主記憶装置10にデ
ータを書き込んだ場合、スカシユニット1内のバッファ
(キャッシュと称されている)に該当するアドレスの
旧データがあれば、それらを全て無効化するバッファ無
効化(インバリデーション)処理を行い、これが終了す
るまでは、WA[T命令の後の主記憶参照を伴うスカシ
命令を実行させないことを意味している。
次に、第11図及び第12図を使い、上記(3)の由)
に関しての従来のシリアライズ制御方式による命令シー
ケンスの処理について具体的に説明する。
に関しての従来のシリアライズ制御方式による命令シー
ケンスの処理について具体的に説明する。
第11図は、POSTO3上WA I T命令とを用い
てシリアライズ制御を行う命令シーケンスの例を示した
もので、VSTはベクトル5TORE命令、LDはスカ
シLOAD命令を表している。
てシリアライズ制御を行う命令シーケンスの例を示した
もので、VSTはベクトル5TORE命令、LDはスカ
シLOAD命令を表している。
この図の例では、POSTの前にある■のVSTが実行
完了するまでは、WA r To)後にある■のLDは
実行されず、これらVSTとLDとの間の主記憶参照順
序は保証される。一方、POSTとWAITの間にある
■ないし■のVSTについては、シリアライズ制御は行
われずに主記憶の参照順序は保証されないことになる。
完了するまでは、WA r To)後にある■のLDは
実行されず、これらVSTとLDとの間の主記憶参照順
序は保証される。一方、POSTとWAITの間にある
■ないし■のVSTについては、シリアライズ制御は行
われずに主記憶の参照順序は保証されないことになる。
第12図は、この第11図に示されている命令シーケン
スの処理フローを示したものである。この例では、第1
θ図のベクトルユニット2のヘクトル命令管理部12に
より、第11図中の■ないし■のベクトル命令VSTは
、2本のパイプラインを用いてこの第12図に示すよう
に順次2命令ずつ並列実行されることになる。
スの処理フローを示したものである。この例では、第1
θ図のベクトルユニット2のヘクトル命令管理部12に
より、第11図中の■ないし■のベクトル命令VSTは
、2本のパイプラインを用いてこの第12図に示すよう
に順次2命令ずつ並列実行されることになる。
この第12図に示すように、従来のシリアライ文制御方
式では、ベクトル命令管理部12は、■のVSTの実行
が完了するまでの間、スカシユニット1に対して、PO
ST命令に先行する命令が未完了であることを示ずPO
ST PENDINGを出力し、■のVSTの実行が
完了すると、このPOST PENDINGをOFF
にする。ベクトル命令管理部12は、続いて、■のVS
Tまでの各ベクトル命令を発信した後にWAIT命令を
発信し、スカシユニットlに対して、WAIT命令の発
信を示すインタロック解除可能信号であるWAIT
ACKを返す。そして、スカシユニット1は、ベクトル
ユニット2からのWAIT−ACKを検出すると、PO
ST PENDINGがOFFであることを確認して
、続く■のスカシL OA D命令LDを発信する。
式では、ベクトル命令管理部12は、■のVSTの実行
が完了するまでの間、スカシユニット1に対して、PO
ST命令に先行する命令が未完了であることを示ずPO
ST PENDINGを出力し、■のVSTの実行が
完了すると、このPOST PENDINGをOFF
にする。ベクトル命令管理部12は、続いて、■のVS
Tまでの各ベクトル命令を発信した後にWAIT命令を
発信し、スカシユニットlに対して、WAIT命令の発
信を示すインタロック解除可能信号であるWAIT
ACKを返す。そして、スカシユニット1は、ベクトル
ユニット2からのWAIT−ACKを検出すると、PO
ST PENDINGがOFFであることを確認して
、続く■のスカシL OA D命令LDを発信する。
このように、従来のベクトル命令−スカシ命令のシリア
ライズでは、POST命令に先行する主記憶アクセス処
理の継続の認識と、WA I T命令開始の認識が、そ
れぞれベクトルユニット2内で、POST命令、WAI
T命令が発信されたタイミングで行われるよう構成され
ていたのである。
ライズでは、POST命令に先行する主記憶アクセス処
理の継続の認識と、WA I T命令開始の認識が、そ
れぞれベクトルユニット2内で、POST命令、WAI
T命令が発信されたタイミングで行われるよう構成され
ていたのである。
しかしながら、このような従来のベクトル命令−スカシ
命令のシリアライズでは、スカラユニソトlでは、ベク
トルユニット2から送られてくるPOST PEND
INGがOFFになっても、更にベクトルユニット2か
らWAIT ACKが送られて(るまでは、後続命令
を発信することができなかった。すなわち、POST命
令に先行する主記憶アクセス処理が終了しているにもか
かわらず、ベクトルユニット 信しないために、スカシユニット1側では、後続命令を
発信することができなかったのである.このため、スカ
シユニット1の後続命令が待たされる場合があり、シリ
アライズ処理によるオーバヘッドが増大するという問題
点があった。
命令のシリアライズでは、スカラユニソトlでは、ベク
トルユニット2から送られてくるPOST PEND
INGがOFFになっても、更にベクトルユニット2か
らWAIT ACKが送られて(るまでは、後続命令
を発信することができなかった。すなわち、POST命
令に先行する主記憶アクセス処理が終了しているにもか
かわらず、ベクトルユニット 信しないために、スカシユニット1側では、後続命令を
発信することができなかったのである.このため、スカ
シユニット1の後続命令が待たされる場合があり、シリ
アライズ処理によるオーバヘッドが増大するという問題
点があった。
本発明はかかる事情に鑑みてなされたものであって、P
OST命令/WAIT命令を用いたベクトル命令からス
カシ命令へのシリアライズにおいて、スカシユニット1
においてインタロックされているスカシ命令の実行開始
を早めて、ベクトル命令とスカシ命令の並列実行の0T
能性を高めるようにすることを目的とするものである。
OST命令/WAIT命令を用いたベクトル命令からス
カシ命令へのシリアライズにおいて、スカシユニット1
においてインタロックされているスカシ命令の実行開始
を早めて、ベクトル命令とスカシ命令の並列実行の0T
能性を高めるようにすることを目的とするものである。
第1図は本発明の原理構成図である。
図中、第10図で説明したものと同じものについては、
同一の記号で示しである.100はスカシ命令管理部で
あって、スカシ命令の実行を管理するもの、101はP
OST命令検出部であって、POST命令の実行開始を
検出するもの、102はWAIT命令検出部であって、
WAIT命令の実行開始を検出するもの、103はアク
セス未終了信号発生部であって、POST命令検出部1
01によりPOST命令が検出されるときに、そのPO
ST命令に先行する主記憶アクセスが未だ終了していな
いことを表すアクセス未終了信号を強制的に発生するも
の、104はインタロック信号発生部であって、WAI
T命令検出部102によりWAIT命令が検出されると
きに、アクセス未終了信号発生部103からのアクセス
未終了信号の出力状態に従って、そのWAIT命令に後
続する主記憶アクセスをインタロックするためのインタ
ロック信号を発生するもの、105はスカシ実行部であ
って、スカシ命令を実行するもの、106は後続命令イ
ンタロック部であって、インタロック信号発生部104
からのインタロック信号に応じて、WAIT命令に後続
する主記憶アクセスをインタロックするもの、200は
アクセス未終了信号送出部であって、スカシユニット1
からPOST命令が送られてくるときに、そのPOST
命令に先行する主記憶アクセスが未だ終了していないこ
とを表すアクセス未終了信号をスカシユニット1に対し
て送出するもの、201はシリアライズ制御部であって
、シリアライズ処理の制御を実行するものである。
同一の記号で示しである.100はスカシ命令管理部で
あって、スカシ命令の実行を管理するもの、101はP
OST命令検出部であって、POST命令の実行開始を
検出するもの、102はWAIT命令検出部であって、
WAIT命令の実行開始を検出するもの、103はアク
セス未終了信号発生部であって、POST命令検出部1
01によりPOST命令が検出されるときに、そのPO
ST命令に先行する主記憶アクセスが未だ終了していな
いことを表すアクセス未終了信号を強制的に発生するも
の、104はインタロック信号発生部であって、WAI
T命令検出部102によりWAIT命令が検出されると
きに、アクセス未終了信号発生部103からのアクセス
未終了信号の出力状態に従って、そのWAIT命令に後
続する主記憶アクセスをインタロックするためのインタ
ロック信号を発生するもの、105はスカシ実行部であ
って、スカシ命令を実行するもの、106は後続命令イ
ンタロック部であって、インタロック信号発生部104
からのインタロック信号に応じて、WAIT命令に後続
する主記憶アクセスをインタロックするもの、200は
アクセス未終了信号送出部であって、スカシユニット1
からPOST命令が送られてくるときに、そのPOST
命令に先行する主記憶アクセスが未だ終了していないこ
とを表すアクセス未終了信号をスカシユニット1に対し
て送出するもの、201はシリアライズ制御部であって
、シリアライズ処理の制御を実行するものである。
本発明では、スカシユニット1のアクセス未終子信号発
生部103は、スカシユニット1内でPOST命令の実
行が開始されると、ベク[・ルユニット2とは関係なく
直ちにインタロック信号発生部104に対してアクセス
未終了信号のラッチ出力を出力する。そして、スカラユ
ニット1は、このPOST命令をベクトルユニット2の
ベクトル命令管理部12に渡すよう処理する。ベクトル
命令管理部12のアクセス未終了信号送出部200は、
このPOST命令を受は取ると、直ちにスカラユニノ)
・1のアクセス未終了信号発生部103及びインタロッ
ク信号発生部104に対してアクセス未終了信号を送出
するよう処理する。そして、シリアライズ制?1部20
1は、受は取ったPO8T命令の発信に応じて記憶II
in部14に対してシリアライズ処理を起動する。
生部103は、スカシユニット1内でPOST命令の実
行が開始されると、ベク[・ルユニット2とは関係なく
直ちにインタロック信号発生部104に対してアクセス
未終了信号のラッチ出力を出力する。そして、スカラユ
ニット1は、このPOST命令をベクトルユニット2の
ベクトル命令管理部12に渡すよう処理する。ベクトル
命令管理部12のアクセス未終了信号送出部200は、
このPOST命令を受は取ると、直ちにスカラユニノ)
・1のアクセス未終了信号発生部103及びインタロッ
ク信号発生部104に対してアクセス未終了信号を送出
するよう処理する。そして、シリアライズ制?1部20
1は、受は取ったPO8T命令の発信に応じて記憶II
in部14に対してシリアライズ処理を起動する。
このようにしてシリアライズ処理に入ると、シリアライ
ズ制御部201は、記憶制御部14からの情報に従って
、受は取ったPOST命令に先行する主記憶アクセスが
終了していない間、アクセス未終了信号送出部200に
対してアクセス未終了信号を出力する。この出力処理に
より、アクセス未終了信号送出部200は、POST命
令がベクトルユニット2に渡されたときからそのPO8
T命令に先行する主記憶アクセスが終了するまでの間、
アクセス未終了信号発生部103及びインタロック信号
発生部104に対してアクセス未終了信号を送出するこ
とになる。
ズ制御部201は、記憶制御部14からの情報に従って
、受は取ったPOST命令に先行する主記憶アクセスが
終了していない間、アクセス未終了信号送出部200に
対してアクセス未終了信号を出力する。この出力処理に
より、アクセス未終了信号送出部200は、POST命
令がベクトルユニット2に渡されたときからそのPO8
T命令に先行する主記憶アクセスが終了するまでの間、
アクセス未終了信号発生部103及びインタロック信号
発生部104に対してアクセス未終了信号を送出するこ
とになる。
一方、スカラユニット1のインタロック信号発生部10
4は、スカシユニット1内でWA I T命令の実行が
開始されるときにおいて、アクセス未終了信号発生部1
03からアクセス未終了信号が出力されているときには
、後続命令インタロック部106に対してインタロック
信号を出力するよう処理するとともに、アクセス未終了
信号が出力されていないときには、インタロック信号を
出力しないよう処理する。このインタロック信号に従っ
て、後続命令インタロック部106は、WAXT命令に
後続する主記憶アクセスの実行をインタロックすること
になる。このスカラユニットlの処理時にあって、アク
セス未終了信号送出部20Oからのアクセス未終了信号
が消滅するとき、すなわち、POST命令に先行する主
記憶アクセスが終了するときには、アクセス未終了信号
発生部103はそのアクセス未終了信号のラッチ出力を
リセットするとともに、インタロック信号発生部104
は、出力しているインタロック信号をリセットするよう
処理する。
4は、スカシユニット1内でWA I T命令の実行が
開始されるときにおいて、アクセス未終了信号発生部1
03からアクセス未終了信号が出力されているときには
、後続命令インタロック部106に対してインタロック
信号を出力するよう処理するとともに、アクセス未終了
信号が出力されていないときには、インタロック信号を
出力しないよう処理する。このインタロック信号に従っ
て、後続命令インタロック部106は、WAXT命令に
後続する主記憶アクセスの実行をインタロックすること
になる。このスカラユニットlの処理時にあって、アク
セス未終了信号送出部20Oからのアクセス未終了信号
が消滅するとき、すなわち、POST命令に先行する主
記憶アクセスが終了するときには、アクセス未終了信号
発生部103はそのアクセス未終了信号のラッチ出力を
リセットするとともに、インタロック信号発生部104
は、出力しているインタロック信号をリセットするよう
処理する。
このように動作することから、本発明では、スカラユニ
ット1でのWAIT命令の実行開始時に、既にPOST
命令に先行する主記憶アクセスが終了しているときには
、アクセス未終了信号発生部103のアクセス未終了信
号は既にリセットされているので、インタロック信号発
生部104がインタロック信号を出力することはなく、
従ってスカラ実行部105は直ちにWAIT命令に後続
する主記憶アクセスの実行に入れることになる。そして
、WAIT命令の実行開始時に、POST命令に先行す
る主記憶アクセスが終了していないがためにインタロッ
ク信号発生部104がインタロック信号を出力するとき
にあっては、主記憶アクセスの終了と同時にインタロッ
ク信号発生部104はそのインタロツタ信号をリセット
するので、スカラ實行部105は、POST命令に先行
する主記憶アクセスの終了と同時にWA I T命令に
後続する主記憶アクセスの実行に入れることになる。
ット1でのWAIT命令の実行開始時に、既にPOST
命令に先行する主記憶アクセスが終了しているときには
、アクセス未終了信号発生部103のアクセス未終了信
号は既にリセットされているので、インタロック信号発
生部104がインタロック信号を出力することはなく、
従ってスカラ実行部105は直ちにWAIT命令に後続
する主記憶アクセスの実行に入れることになる。そして
、WAIT命令の実行開始時に、POST命令に先行す
る主記憶アクセスが終了していないがためにインタロッ
ク信号発生部104がインタロック信号を出力するとき
にあっては、主記憶アクセスの終了と同時にインタロッ
ク信号発生部104はそのインタロツタ信号をリセット
するので、スカラ實行部105は、POST命令に先行
する主記憶アクセスの終了と同時にWA I T命令に
後続する主記憶アクセスの実行に入れることになる。
このように、従来はベクトルユニット2におけるWへI
T命令の発信時に応じてWAIT命令に後続する主記憶
アクセスの実行に入るようにしていたのに対して、本発
明では、スカラユニット1におけるWA I T命令の
実行時に、POST命令に先行する主記憶アクセスが終
了しているのか否かを判断するよう構成して、終了して
いると判断するときには直ちにWAIT命令に後続する
主記憶アクセスの実行に入るように構成したことから、
シリアライズ処理のオーバヘッドがなくなるとともに、
POST命令とWAIT命令との間に沢山のベクトル命
令を挿入することで、ベクトル命令とスカラ命令の並列
実行による性能向上が期待できるようになるのである。
T命令の発信時に応じてWAIT命令に後続する主記憶
アクセスの実行に入るようにしていたのに対して、本発
明では、スカラユニット1におけるWA I T命令の
実行時に、POST命令に先行する主記憶アクセスが終
了しているのか否かを判断するよう構成して、終了して
いると判断するときには直ちにWAIT命令に後続する
主記憶アクセスの実行に入るように構成したことから、
シリアライズ処理のオーバヘッドがなくなるとともに、
POST命令とWAIT命令との間に沢山のベクトル命
令を挿入することで、ベクトル命令とスカラ命令の並列
実行による性能向上が期待できるようになるのである。
以下、実施例に従って本発明の詳細な説明する。
第2図に、本発明の一実施例システムの構成を示す0図
中、1はスカラユニット(SUと称することがある)、
2はベクトルユニット(VUと称することがある)、1
2はベクトル命令管理部(viと称することがある)、
14は記憶制御部(MCUと称することがある)であり
、第1図に示されるものと同じものである。そして、ス
カシユニット1内のBufferは、主記憶アクセスデ
ータのバッファであり、P OS T P endi
ng、、W AI Tper+dingは、それぞれラ
ンチである。また、記憶制御部14内のBIASは、ベ
クトル5TORE命令が更新した主記憶アドレスをパフ
ファインバリデーシランのために保持しておくスタック
であり、このアドレスは後にスカシユニット1内のBu
fferに反映され、該当するアドレスのデータが無効
化される。
中、1はスカラユニット(SUと称することがある)、
2はベクトルユニット(VUと称することがある)、1
2はベクトル命令管理部(viと称することがある)、
14は記憶制御部(MCUと称することがある)であり
、第1図に示されるものと同じものである。そして、ス
カシユニット1内のBufferは、主記憶アクセスデ
ータのバッファであり、P OS T P endi
ng、、W AI Tper+dingは、それぞれラ
ンチである。また、記憶制御部14内のBIASは、ベ
クトル5TORE命令が更新した主記憶アドレスをパフ
ファインバリデーシランのために保持しておくスタック
であり、このアドレスは後にスカシユニット1内のBu
fferに反映され、該当するアドレスのデータが無効
化される。
次に、第2図のブロック間に矢印で示される信号■ない
し■について説明する。
し■について説明する。
■ニジリアライズ起動信号(Vi→M C[J )−P
OST命令に先行するずべての5TORE命令が、すべ
てBrASに入ったことが保証できるタイミングでVi
からMCUに送る。
OST命令に先行するずべての5TORE命令が、すべ
てBrASに入ったことが保証できるタイミングでVi
からMCUに送る。
■:BIAS PENDING信号(MCU−4Vi
)−シリアライズ起動信号によりシリアライズが起動さ
れてから、BIASが空になるまでONとなる。
)−シリアライズ起動信号によりシリアライズが起動さ
れてから、BIASが空になるまでONとなる。
■:POST PENDING信号(Vi−4SU)
−3UからPOST命令を受は取るとONになる。その
後、POST命令が発信されることでシリアライズ処理
が開始され、POST命令に先行するすべての5TOR
E命令によるBIASが空になり、かつ、POST命令
に先行するすべてのLOAD命令のプライオリティがと
れるとOFFになる。
−3UからPOST命令を受は取るとONになる。その
後、POST命令が発信されることでシリアライズ処理
が開始され、POST命令に先行するすべての5TOR
E命令によるBIASが空になり、かつ、POST命令
に先行するすべてのLOAD命令のプライオリティがと
れるとOFFになる。
■ニジリアライズ終了信号(MCU→5U)−BIAS
が空になったところで、M CIJからS tJに送る
。SUでは、この信号によリバッファインバリデーシッ
ンBlを行い、その期間、主記憶アクセススカラ命令を
インタロックする。
が空になったところで、M CIJからS tJに送る
。SUでは、この信号によリバッファインバリデーシッ
ンBlを行い、その期間、主記憶アクセススカラ命令を
インタロックする。
第1図でも説明したように、本発明では、スカラユニッ
ト1でのWAIT命令の実行開始時に、POST命令に
先行する主記憶アクセスが終了したのか否かを判断して
、WAIT命令に後続する主記憶アクセスのインタロッ
クを決定するよう構成するものである。この構成にあっ
て、スカシユニット1側でPOST命令に先行する主記
憶アクセスが終了したのか否かを正確に判断できるよう
にするために、スカシユニット1内でPOST命令の実
行開始時にPOST PENDING信号を強制的に
発生させるどともに、この強制的に発生させたPOST
PENDING信号をベクトルユニット2から送ら
れてくるPOST PENDING信号に継続させて
いくよう構成するものである。
ト1でのWAIT命令の実行開始時に、POST命令に
先行する主記憶アクセスが終了したのか否かを判断して
、WAIT命令に後続する主記憶アクセスのインタロッ
クを決定するよう構成するものである。この構成にあっ
て、スカシユニット1側でPOST命令に先行する主記
憶アクセスが終了したのか否かを正確に判断できるよう
にするために、スカシユニット1内でPOST命令の実
行開始時にPOST PENDING信号を強制的に
発生させるどともに、この強制的に発生させたPOST
PENDING信号をベクトルユニット2から送ら
れてくるPOST PENDING信号に継続させて
いくよう構成するものである。
第3図に、スカシユニット1内で実行されるこのPOS
T PENDING信号の生成のための回路構成の一
実施例を示す0図中、30はAND回路であって、PO
ST命令の実行が開始されるときに出力信号を出力する
もの、31は第2図のp Q 3 TPendingに
相当するセット・リセットラッチであって、AND回路
30から出力信号が出力されるときにセントされてPO
ST PENDING信号を出力するもの、32は所
定の数(バイブラインのステージ数+遅延するマシンサ
イクル数)に従って設けられるフリップフロップであっ
て、AND回路30の出力信号を)1@次遅延していく
もの、33はバイブラインのステージ数に対応させて設
けられるAND回路であって、対応するフリップフロッ
プ32の出力と各ステージにおけるPOST命令の存在
を表示するバリッドとの論理積をとるもの、34はNO
R回路であって、AND回路33とバイブラインに対応
されないフリップフロップ32とベクトルユニット2か
らのPOST PENDING信号とがすべてOFF
になるときに、セット・リセットラッチ31に対してR
ESET Po5T PENDING信号を送出す
ることでセ−/ (・リセットラッチ31が出力するP
o5T PENDING信号をリセットするものであ
る。
T PENDING信号の生成のための回路構成の一
実施例を示す0図中、30はAND回路であって、PO
ST命令の実行が開始されるときに出力信号を出力する
もの、31は第2図のp Q 3 TPendingに
相当するセット・リセットラッチであって、AND回路
30から出力信号が出力されるときにセントされてPO
ST PENDING信号を出力するもの、32は所
定の数(バイブラインのステージ数+遅延するマシンサ
イクル数)に従って設けられるフリップフロップであっ
て、AND回路30の出力信号を)1@次遅延していく
もの、33はバイブラインのステージ数に対応させて設
けられるAND回路であって、対応するフリップフロッ
プ32の出力と各ステージにおけるPOST命令の存在
を表示するバリッドとの論理積をとるもの、34はNO
R回路であって、AND回路33とバイブラインに対応
されないフリップフロップ32とベクトルユニット2か
らのPOST PENDING信号とがすべてOFF
になるときに、セット・リセットラッチ31に対してR
ESET Po5T PENDING信号を送出す
ることでセ−/ (・リセットラッチ31が出力するP
o5T PENDING信号をリセットするものであ
る。
本発明では、このセット・リセットラッチ31が出力す
るPo3T PENDING信号で、WAIT命令に
後続する主記憶アクセスのインタロックのためのインタ
ロック信号を生成するよう構成するものである。
るPo3T PENDING信号で、WAIT命令に
後続する主記憶アクセスのインタロックのためのインタ
ロック信号を生成するよう構成するものである。
第4図に、スカラユニソト1内で実行されるこのインタ
ロック信号の生成のための回路構成の一実施例を示す0
図中、40はAND回路であって、セット・リセットラ
ッチ31からのPo5T PENDING信号がON
で1.かつWAIT命令の実行が開始されるときに出力
信号を出力するもの、41は第2図のWA I T
Pendingに相当するセット・リセットラッチであ
って、AND回路40から出力信号が出力されるときに
セットされてWAIT PENDING信号を出力す
るもの、42はAND回路であって、セット・リセット
ラッチ41からのWAIT PENDING信号がO
Nで、かつWAIT命令に後続する主記憶のアクセス命
令の実行開始要求があるときにINTERLOCK信号
を発生するもの、43はAND回路であって、セノb・
・リセットラッチ41からのWAIT PENDIN
G信号がONで、かつセット・リセットラッチ31から
のPo3T PENDING信号がOFFになるとき
に、セット・リセットラッチ41に対してリセット信号
を送出することでセット・リセットラッチ41が出力す
るWAIT PENDING信号をリセットするもの
である。
ロック信号の生成のための回路構成の一実施例を示す0
図中、40はAND回路であって、セット・リセットラ
ッチ31からのPo5T PENDING信号がON
で1.かつWAIT命令の実行が開始されるときに出力
信号を出力するもの、41は第2図のWA I T
Pendingに相当するセット・リセットラッチであ
って、AND回路40から出力信号が出力されるときに
セットされてWAIT PENDING信号を出力す
るもの、42はAND回路であって、セット・リセット
ラッチ41からのWAIT PENDING信号がO
Nで、かつWAIT命令に後続する主記憶のアクセス命
令の実行開始要求があるときにINTERLOCK信号
を発生するもの、43はAND回路であって、セノb・
・リセットラッチ41からのWAIT PENDIN
G信号がONで、かつセット・リセットラッチ31から
のPo3T PENDING信号がOFFになるとき
に、セット・リセットラッチ41に対してリセット信号
を送出することでセット・リセットラッチ41が出力す
るWAIT PENDING信号をリセットするもの
である。
次に、第5図及び第6図に従って、ベクトルユニット2
で実行されるPo3T PENDING信号の生成の
ための回路構成の一実施例について説明する。ベクトル
ユニット2のベクトル命令管理部12は、第5図に示す
ように、V F Sで示す命令フェッチステージと、■
PSで示す命令デコードステージと、VQSで示す命令
発信ステージというステージに従って、スカラユニット
1がら受は取るベクトル命令の発イεを管理するよう構
成され、命令フェッチステ・−ジと命令デコードステー
ジとの間のデータの授受のために、VFRで示される命
令フェッチのバッファが設けられるとともに、命令デコ
ードステージと命令発信ステージとの間のデータの授受
のために、VQBで示される命令発信ステージのバッフ
ァが設けられるよう構成される。図中の“V”は、その
ステージが有効であることを表示するバリッドのフラグ
であり、また、“P′は、そのステージにPo3T命令
が存在することを表示するフラグである。
で実行されるPo3T PENDING信号の生成の
ための回路構成の一実施例について説明する。ベクトル
ユニット2のベクトル命令管理部12は、第5図に示す
ように、V F Sで示す命令フェッチステージと、■
PSで示す命令デコードステージと、VQSで示す命令
発信ステージというステージに従って、スカラユニット
1がら受は取るベクトル命令の発イεを管理するよう構
成され、命令フェッチステ・−ジと命令デコードステー
ジとの間のデータの授受のために、VFRで示される命
令フェッチのバッファが設けられるとともに、命令デコ
ードステージと命令発信ステージとの間のデータの授受
のために、VQBで示される命令発信ステージのバッフ
ァが設けられるよう構成される。図中の“V”は、その
ステージが有効であることを表示するバリッドのフラグ
であり、また、“P′は、そのステージにPo3T命令
が存在することを表示するフラグである。
第6図に、ベクトルユニット2が備えるPo5T P
ENDING信号の生成のための回路構成の一実施例を
示す0図中、60は第5図の各ステージ(バッファ)対
応で設けられるAND回路であって、各ステージが有効
でかつ各ステージにPo3T命令が存在しているときに
出力信号を出力するもの、201は第1図で説明したシ
リアライズ制御部であって、図示しない命令発信制御部
からのPo5T命令の発信信号に従って記憶制御部14
にシリアライズ起動信号を送出するとともに、記憶制御
部14から送られてくるBIAS PEND ING
信号に従って、Po5T命令に先行する主記憶アクセス
が終了していないことを表すPo3T PENDIN
G信号(この信号が本来のPo3T PENDING
信号である)を送出するもの、61はOR回路であって
、AND回路60からの出力信号とシリアライズ制御部
201からのPo3T PENDING信号との間の
論理和出力を出力するものである。このOR回路61の
論理和出力が、スカラユニノト1に送られるPo3T
PENDING信号となるもので、AND回路60の
いずれか1つから出力信号が出力されているとき、すな
わち、発信される前のPo3T命令があるときと、シリ
アライズ141m部201からのPo3T PEND
ING信号がONt、でいるときには、OR回路61か
らPo3T PENDINC;信号がスカラユニソト
1に対して送出されることになる。
ENDING信号の生成のための回路構成の一実施例を
示す0図中、60は第5図の各ステージ(バッファ)対
応で設けられるAND回路であって、各ステージが有効
でかつ各ステージにPo3T命令が存在しているときに
出力信号を出力するもの、201は第1図で説明したシ
リアライズ制御部であって、図示しない命令発信制御部
からのPo5T命令の発信信号に従って記憶制御部14
にシリアライズ起動信号を送出するとともに、記憶制御
部14から送られてくるBIAS PEND ING
信号に従って、Po5T命令に先行する主記憶アクセス
が終了していないことを表すPo3T PENDIN
G信号(この信号が本来のPo3T PENDING
信号である)を送出するもの、61はOR回路であって
、AND回路60からの出力信号とシリアライズ制御部
201からのPo3T PENDING信号との間の
論理和出力を出力するものである。このOR回路61の
論理和出力が、スカラユニノト1に送られるPo3T
PENDING信号となるもので、AND回路60の
いずれか1つから出力信号が出力されているとき、すな
わち、発信される前のPo3T命令があるときと、シリ
アライズ141m部201からのPo3T PEND
ING信号がONt、でいるときには、OR回路61か
らPo3T PENDINC;信号がスカラユニソト
1に対して送出されることになる。
次に、第7図ないし第9図に示す処理フロー図に従って
、このように構成される本発明の動作処理について説明
する。ここで、これらの第7図、第8図、第9図におい
て、中央に示す一点鎖線を境にして上段はスカラユニッ
ト1の制御シーケシス、下段はベクトルユニット2の?
1ill?[lシーケンスを表している。図中に示すよ
・うに、スカラユニット1のバイブラインでは、POS
TO3中WAIT命令等のベクトル命令は4フローを使
用して処理されることになる。また、フロー中のり、A
、T。
、このように構成される本発明の動作処理について説明
する。ここで、これらの第7図、第8図、第9図におい
て、中央に示す一点鎖線を境にして上段はスカラユニッ
ト1の制御シーケシス、下段はベクトルユニット2の?
1ill?[lシーケンスを表している。図中に示すよ
・うに、スカラユニット1のバイブラインでは、POS
TO3中WAIT命令等のベクトル命令は4フローを使
用して処理されることになる。また、フロー中のり、A
、T。
B、B、Wは、パイプラインのステージを表し、Dはデ
コード、Aはオペランドアドレスの生成、Tはアドレス
変換、Bはオペランドのバッファアクセス、Eは演算、
Wは結果の書き込みである。
コード、Aはオペランドアドレスの生成、Tはアドレス
変換、Bはオペランドのバッファアクセス、Eは演算、
Wは結果の書き込みである。
最初に、第7図の処理フロー図に従って、スカラユニッ
ト1及びベクトルユニット2で実行されるPOST
PENDING信号の生成処理について説明する。
ト1及びベクトルユニット2で実行されるPOST
PENDING信号の生成処理について説明する。
スカラユニットエのAND回路30は、PO8T命令の
第4フロー中のAステージのAリリース信号Arelの
タイミングで出力信号を出力することで、セント・リセ
ットラッチ31からP OST PENDING信号
が出力されることになるよう処理する。このようにして
、ヘクトルユニノト2とは関係なく強制的に出力される
POST−PENDING信号は、フリップフロップ3
2の遅延動作とNOR回路34のNOR機能に従って、
図中の■に示すように、第4フローのWステージが終了
してからも3マシンザイクル後までの間リセットされる
ことなく出力されることが保証されることになる。一方
、POSTO3中、図中のIV(インストラフシラン・
バリッド)とDV(データ・バリッド)のタイミングに
従ってスカラユニント1からベクトルユニット2にと渡
される。
第4フロー中のAステージのAリリース信号Arelの
タイミングで出力信号を出力することで、セント・リセ
ットラッチ31からP OST PENDING信号
が出力されることになるよう処理する。このようにして
、ヘクトルユニノト2とは関係なく強制的に出力される
POST−PENDING信号は、フリップフロップ3
2の遅延動作とNOR回路34のNOR機能に従って、
図中の■に示すように、第4フローのWステージが終了
してからも3マシンザイクル後までの間リセットされる
ことなく出力されることが保証されることになる。一方
、POSTO3中、図中のIV(インストラフシラン・
バリッド)とDV(データ・バリッド)のタイミングに
従ってスカラユニント1からベクトルユニット2にと渡
される。
このようにしてPOSTO3中ベクトル命令管理部12
の命令フェッチステージVFSに入力すると、OR回路
61は、AND回i¥360からの出力信号を受けて、
図中の■に示すように、POSTO3中発信前からスカ
ラユニット1のNOR回路34に対してPOST P
ENDING信号を強制的に送出するよう処理する。そ
して、OR回路61は、POSTO3中発信後にはシリ
アライズ制御部201からのPOST PIENDI
NG信号に従って、スカラユニットIのNOR回路34
に対してPOST PENDING信号を送出し続け
るよう処理することになる。、このOR回路61からの
POST PENDING信号の送出処理を受けて、
スカラユニット1のNOR回路34は、シリアライズ制
御部201からPO8T PENDING信号が出力
されなくなるまで、セント・リセットラッチ31に対し
てRBSET POST PENDING信号を出
力しないよう処理する。この処理に従って、図中の■に
示すように、スカラユニット1のセント・リセットラッ
チ31は、POSTO3中先行する主記憶アクセスが終
了するまでの間、■のPOST PENDINGに続
けて途切れることなく POST−PENDING信号
を出力していくことになる。
の命令フェッチステージVFSに入力すると、OR回路
61は、AND回i¥360からの出力信号を受けて、
図中の■に示すように、POSTO3中発信前からスカ
ラユニット1のNOR回路34に対してPOST P
ENDING信号を強制的に送出するよう処理する。そ
して、OR回路61は、POSTO3中発信後にはシリ
アライズ制御部201からのPOST PIENDI
NG信号に従って、スカラユニットIのNOR回路34
に対してPOST PENDING信号を送出し続け
るよう処理することになる。、このOR回路61からの
POST PENDING信号の送出処理を受けて、
スカラユニット1のNOR回路34は、シリアライズ制
御部201からPO8T PENDING信号が出力
されなくなるまで、セント・リセットラッチ31に対し
てRBSET POST PENDING信号を出
力しないよう処理する。この処理に従って、図中の■に
示すように、スカラユニット1のセント・リセットラッ
チ31は、POSTO3中先行する主記憶アクセスが終
了するまでの間、■のPOST PENDINGに続
けて途切れることなく POST−PENDING信号
を出力していくことになる。
次に、第8図及び第9図の処理フロー図に従って、WA
IT命令に後続する主記憶参照のスカラ命令のインタロ
ック処理について説明する。
IT命令に後続する主記憶参照のスカラ命令のインタロ
ック処理について説明する。
スカラユニットlのAND回路4oは、WAIT命令の
第4フロー中のAステージのAリリース信号Are+の
タイミングで論理積を求めて出力する。このとき、セン
ト・リセットラッチ31がらPOST PEND I
NG(3号が出力されているとき、すなわち、未だPO
STO3中先行する主記憶アクセスが終了していないと
きには、AND回路40は、第8図中の■に示すように
、セット・’)セットラyチ41がらWAIT PE
NDING信号が出力されることになるよう出力する。
第4フロー中のAステージのAリリース信号Are+の
タイミングで論理積を求めて出力する。このとき、セン
ト・リセットラッチ31がらPOST PEND I
NG(3号が出力されているとき、すなわち、未だPO
STO3中先行する主記憶アクセスが終了していないと
きには、AND回路40は、第8図中の■に示すように
、セット・’)セットラyチ41がらWAIT PE
NDING信号が出力されることになるよう出力する。
そして、AND回路42は、この出力されるWAIT
PENDING信号に従って、主記憶参照のスカラ命
令をインタロックするよう処理する。
PENDING信号に従って、主記憶参照のスカラ命
令をインタロックするよう処理する。
、二のインタロック処理は、ベクトルユニット2がら(
DPO8T PENDXNG信号がOFFになる時点
に同期して、セット・リセットラッチ31のPOST
PENr)ING信号がOFFになることでAND回
路43に従って解除され、それに応じてWAIT命令に
後続する主記憶アクセスの実行が許可されるよう処理さ
れる。
DPO8T PENDXNG信号がOFFになる時点
に同期して、セット・リセットラッチ31のPOST
PENr)ING信号がOFFになることでAND回
路43に従って解除され、それに応じてWAIT命令に
後続する主記憶アクセスの実行が許可されるよう処理さ
れる。
一方、AND回路40がAリリース信号Arelのタイ
ミングで論理積を求めて出力するとき、セント・リセッ
トラッチ31からPOST PENDING信号が出
力されていないとき、すなわち、既にPOST命令に先
行する主記憶アクセスが終了しているときには、AND
回路40は、第9図中の■に示すように、WAIT
PENDING信号を出力しないよう処理する。この処
理に従って、AND回路42からINTERLOCK信
号が出力されることはないので、スカラユニット1ばW
A I T命令に後続する主記憶アクセスを直ちに実行
できることになる。従って、ベクトルユニット2でのW
AIT命令の発信までの間待たされることがなくなり、
シリアライズ制御に伴うオーバーヘッドの問題点を大き
く改善できるようになるのであるや 〔発明の効果〕 以北説明したように、本発明によれば、スカラユニット
lは、WAIT命令による後続の主記憶参照スカラ命令
のインタロックをベクトルユニット2におけるWAIT
命令の発イsを待たずに解除可能となることから、その
後続スカラ命令の実行を早めることができることになる
。しがも、P。
ミングで論理積を求めて出力するとき、セント・リセッ
トラッチ31からPOST PENDING信号が出
力されていないとき、すなわち、既にPOST命令に先
行する主記憶アクセスが終了しているときには、AND
回路40は、第9図中の■に示すように、WAIT
PENDING信号を出力しないよう処理する。この処
理に従って、AND回路42からINTERLOCK信
号が出力されることはないので、スカラユニット1ばW
A I T命令に後続する主記憶アクセスを直ちに実行
できることになる。従って、ベクトルユニット2でのW
AIT命令の発信までの間待たされることがなくなり、
シリアライズ制御に伴うオーバーヘッドの問題点を大き
く改善できるようになるのであるや 〔発明の効果〕 以北説明したように、本発明によれば、スカラユニット
lは、WAIT命令による後続の主記憶参照スカラ命令
のインタロックをベクトルユニット2におけるWAIT
命令の発イsを待たずに解除可能となることから、その
後続スカラ命令の実行を早めることができることになる
。しがも、P。
ST命令とWAIT命令との間にベクトル命令が沢山設
けられるような場合には、ベクトル命令とスカラ命令と
の並列実行による処理性能の向上を図れるようになるの
である。
けられるような場合には、ベクトル命令とスカラ命令と
の並列実行による処理性能の向上を図れるようになるの
である。
第1図は本発明の原理構成図、
第2図は本発明の一実施例システムの構成図、第3図は
スカラユニットでのPOST PEN1)rNG信号
の生成論理の一実施例、第4図はスカラユニットでのI
NTERLOCK信号の生成論理の一実施例、 第5図はベクトル命令管理部のステージの説明図、 第6図はベクトルユニットでのPOST−PENDIN
G信号の生成論理の一実施例、第7図、第8図及び第9
図は本発明によるシリアライズ制御の処理フロー図、 第10図は従来の科学技術用計算機システムの構成図、 第11図ばPOST/WA I Tを用いてシリアライ
ズを行った命令シーケンス例の説明図、第12図は従来
のシリアライズ制′4n方式の処理フロー図である。 図中、1はスカラユニッI・、2はベクトルユニット、
10は主記憶装置、12はベクトル命令管理部、14は
記憶制御部、100はスカラ命令管理部、103はアク
セス未終了信号発生部、104はインタロック信号発生
部、200はアクセス未終了信号送出部、201はシリ
アライズ制御部である。
スカラユニットでのPOST PEN1)rNG信号
の生成論理の一実施例、第4図はスカラユニットでのI
NTERLOCK信号の生成論理の一実施例、 第5図はベクトル命令管理部のステージの説明図、 第6図はベクトルユニットでのPOST−PENDIN
G信号の生成論理の一実施例、第7図、第8図及び第9
図は本発明によるシリアライズ制御の処理フロー図、 第10図は従来の科学技術用計算機システムの構成図、 第11図ばPOST/WA I Tを用いてシリアライ
ズを行った命令シーケンス例の説明図、第12図は従来
のシリアライズ制′4n方式の処理フロー図である。 図中、1はスカラユニッI・、2はベクトルユニット、
10は主記憶装置、12はベクトル命令管理部、14は
記憶制御部、100はスカラ命令管理部、103はアク
セス未終了信号発生部、104はインタロック信号発生
部、200はアクセス未終了信号送出部、201はシリ
アライズ制御部である。
Claims (1)
- 【特許請求の範囲】 スカラ命令を処理するスカラユニット(1)と、該スカ
ラユニット(1)から送られるベクトル命令を処理する
ベクトルユニット(2)と、主記憶装置とを備え、PO
ST命令とWAIT命令によりシリアライズ制御を行う
情報処理システムにおいて、スカラユニット(1)は、
POST命令の実行時に、該POST命令に先行する主
記憶アクセスが未だ終了していないことを表すアクセス
未終了信号を強制的に発生するとともに、該強制信号を
ベクトルユニット(2)から送られてくるアクセス未終
了信号に継続させていくよう処理するアクセス未終了信
号発生部(103)と、 WAIT命令の実行時に、該アクセス未終了信号発生部
(103)がアクセス未終了信号の存在状態を表示して
いるときには、該WAIT命令に後続する主記憶アクセ
スをインタロックするためのインタロック信号を発生す
るとともに、アクセス未終了信号の消滅状態を表示して
いるときには、該インタロック信号を発生しないよう処
理し、かつ発生させたインタロック信号をベクトルユニ
ット(2)から送られてくるアクセス未終了信号の消滅
時に同期させて解除するよう処理するインタロック信号
発生部(104)とを備え、 そして、ベクトルユニット(2)は、スカラユニット(
1)からPOST命令が送られてくるときに、該POS
T命令が発信するまでの間、該POST命令に先行する
主記憶アクセスが未だ終了していないことを表すアクセ
ス未終了信号を強制的にスカラユニット(1)に対して
送出するとともに、該強制信号を該POST命令の発信
に伴って発生される本来のアクセス未終了信号に継続さ
せていくよう処理するアクセス未終了信号送出部(20
0)を備えることを、 特徴とする命令実行のシリアライズ制御方式。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1121277A JP2677414B2 (ja) | 1989-05-15 | 1989-05-15 | 命令実行のシリアライズ制御方式 |
CA002016532A CA2016532C (en) | 1989-05-15 | 1990-05-10 | Serializing system between vector instruction and scalar instruction in data processing system |
EP90305212A EP0398639B1 (en) | 1989-05-15 | 1990-05-15 | Serializing system between vector instruction and scalar instruction in data processing system |
US07/523,567 US5247691A (en) | 1989-05-15 | 1990-05-15 | System for releasing suspended execution of scalar instructions following a wait instruction immediately upon change of vector post pending signal |
DE69028572T DE69028572T2 (de) | 1989-05-15 | 1990-05-15 | Serieller Betrieb zwischen Vektorbefehl und Skalarbefehl in einem Datenverarbeitungssystem |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1121277A JP2677414B2 (ja) | 1989-05-15 | 1989-05-15 | 命令実行のシリアライズ制御方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02300852A true JPH02300852A (ja) | 1990-12-13 |
JP2677414B2 JP2677414B2 (ja) | 1997-11-17 |
Family
ID=14807272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1121277A Expired - Lifetime JP2677414B2 (ja) | 1989-05-15 | 1989-05-15 | 命令実行のシリアライズ制御方式 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5247691A (ja) |
EP (1) | EP0398639B1 (ja) |
JP (1) | JP2677414B2 (ja) |
CA (1) | CA2016532C (ja) |
DE (1) | DE69028572T2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5530881A (en) * | 1991-06-06 | 1996-06-25 | Hitachi, Ltd. | Vector processing apparatus for processing different instruction set architectures corresponding to mingled-type programs and separate-type programs |
EP0529303A3 (en) * | 1991-08-29 | 1993-09-22 | International Business Machines Corporation | Checkpoint synchronization with instruction overlap enabled |
US5809552A (en) * | 1992-01-29 | 1998-09-15 | Fujitsu Limited | Data processing system, memory access device and method including selecting the number of pipeline stages based on pipeline conditions |
US5872988A (en) * | 1992-06-17 | 1999-02-16 | U.S. Philips Corporation | Parallel data processing device having a concatenated data path between elementary processors |
JPH06168263A (ja) * | 1992-11-30 | 1994-06-14 | Fujitsu Ltd | ベクトル処理装置 |
US6625720B1 (en) * | 1999-08-17 | 2003-09-23 | Nec Electronics, Inc. | System for posting vector synchronization instructions to vector instruction queue to separate vector instructions from different application programs |
US6513107B1 (en) * | 1999-08-17 | 2003-01-28 | Nec Electronics, Inc. | Vector transfer system generating address error exception when vector to be transferred does not start and end on same memory page |
US6857061B1 (en) | 2000-04-07 | 2005-02-15 | Nintendo Co., Ltd. | Method and apparatus for obtaining a scalar value directly from a vector register |
US20030196072A1 (en) * | 2002-04-11 | 2003-10-16 | Chinnakonda Murali S. | Digital signal processor architecture for high computation speed |
US7577816B2 (en) * | 2003-08-18 | 2009-08-18 | Cray Inc. | Remote translation mechanism for a multinode system |
US7421565B1 (en) * | 2003-08-18 | 2008-09-02 | Cray Inc. | Method and apparatus for indirectly addressed vector load-add -store across multi-processors |
US8307194B1 (en) | 2003-08-18 | 2012-11-06 | Cray Inc. | Relaxed memory consistency model |
US7543133B1 (en) | 2003-08-18 | 2009-06-02 | Cray Inc. | Latency tolerant distributed shared memory multiprocessor computer |
US7519771B1 (en) | 2003-08-18 | 2009-04-14 | Cray Inc. | System and method for processing memory instructions using a forced order queue |
US7437521B1 (en) * | 2003-08-18 | 2008-10-14 | Cray Inc. | Multistream processing memory-and barrier-synchronization method and apparatus |
US7743223B2 (en) * | 2003-08-18 | 2010-06-22 | Cray Inc. | Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system |
US7478769B1 (en) | 2005-03-09 | 2009-01-20 | Cray Inc. | Method and apparatus for cooling electronic components |
US20070074008A1 (en) * | 2005-09-28 | 2007-03-29 | Donofrio David D | Mixed mode floating-point pipeline with extended functions |
US7694025B1 (en) | 2006-03-31 | 2010-04-06 | Integrated Device Technology, Inc. | Method and device for base address sorting and entry into base address registers |
US7779197B1 (en) | 2006-05-09 | 2010-08-17 | Integrated Device Technology, Inc. | Device and method for address matching with post matching limit check and nullification |
US7647438B1 (en) | 2006-05-09 | 2010-01-12 | Integrated Device Technology, Inc. | Binary base address sorting method and device with shift vector |
US7634586B1 (en) | 2006-06-05 | 2009-12-15 | Integrated Device Technology, Inc. | Device for concurrent limit validity check |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6043535B2 (ja) * | 1979-12-29 | 1985-09-28 | 富士通株式会社 | 情報処理装置 |
JPS6186844A (ja) * | 1984-10-04 | 1986-05-02 | Fujitsu Ltd | 逐次化命令の移動方式 |
JPS6224366A (ja) * | 1985-07-03 | 1987-02-02 | Hitachi Ltd | ベクトル処理装置 |
US4760518A (en) * | 1986-02-28 | 1988-07-26 | Scientific Computer Systems Corporation | Bi-directional databus system for supporting superposition of vector and scalar operations in a computer |
JPH06103494B2 (ja) * | 1986-11-18 | 1994-12-14 | 株式会社日立製作所 | ベクトル処理装置の制御方式 |
JPS63253468A (ja) * | 1987-04-10 | 1988-10-20 | Hitachi Ltd | ベクトル処理装置 |
JPS6432379A (en) * | 1987-07-29 | 1989-02-02 | Hitachi Ltd | Computer |
JPS6467680A (en) * | 1987-09-09 | 1989-03-14 | Hitachi Ltd | Vector processor |
-
1989
- 1989-05-15 JP JP1121277A patent/JP2677414B2/ja not_active Expired - Lifetime
-
1990
- 1990-05-10 CA CA002016532A patent/CA2016532C/en not_active Expired - Fee Related
- 1990-05-15 US US07/523,567 patent/US5247691A/en not_active Expired - Fee Related
- 1990-05-15 EP EP90305212A patent/EP0398639B1/en not_active Expired - Lifetime
- 1990-05-15 DE DE69028572T patent/DE69028572T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0398639A2 (en) | 1990-11-22 |
CA2016532C (en) | 1994-04-26 |
JP2677414B2 (ja) | 1997-11-17 |
CA2016532A1 (en) | 1990-11-15 |
DE69028572D1 (de) | 1996-10-24 |
DE69028572T2 (de) | 1997-01-30 |
US5247691A (en) | 1993-09-21 |
EP0398639A3 (en) | 1991-05-29 |
EP0398639B1 (en) | 1996-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH02300852A (ja) | 命令実行のシリアライズ制御方式 | |
US7755632B2 (en) | GPU internal wait/fence synchronization method and apparatus | |
EP0264235B1 (en) | Apparatus and method for improving cache access throughput in pipelined processors | |
JPH0630087B2 (ja) | インタ−フエ−ス回路 | |
JPH0658631B2 (ja) | デ−タ処理装置 | |
JPH06103494B2 (ja) | ベクトル処理装置の制御方式 | |
JP2008181551A (ja) | ベクトルレジスタを備えたコンピュータにおけるベクトルテールゲーティング | |
JP3797570B2 (ja) | セマフォ命令用のセマフォ・バッファを用いた装置と方法 | |
US5537582A (en) | Bus interface circuitry for synchronizing central processors running at multiple clock frequencies to other computer system circuitry | |
US5428810A (en) | Allocation of resources of a pipelined processor by clock phase for parallel execution of dependent processes | |
US5226166A (en) | Parallel operation processor with second command unit | |
GB2258069A (en) | High speed computer graphics bus | |
US5504870A (en) | Branch prediction device enabling simultaneous access to a content-addressed memory for retrieval and registration | |
JP2504536B2 (ja) | 命令実行のシリアライズ制御方式 | |
JP2875546B2 (ja) | 情報処理システム | |
JPS6227837A (ja) | 主記憶アクセス方式 | |
US20080288967A1 (en) | Procedure calling method, procedure calling program, and computer product | |
JP3017866B2 (ja) | 割込み処理方式 | |
CN116841614B (zh) | 乱序访存机制下的顺序向量调度方法 | |
JPH0877143A (ja) | ベクトルデータ処理装置 | |
US5694584A (en) | Information processing system capable of quickly processing a parameter and a command necessary for drawing processing | |
JP2861053B2 (ja) | 画像処理装置 | |
JP2513846B2 (ja) | ベクトル命令生成方式 | |
JP2806690B2 (ja) | マイクロプロセッサ | |
WO2023129236A1 (en) | Issuing instructions on a vector processor |