JPH0685166B2 - マルチプロセッサシステムの命令制御方式 - Google Patents

マルチプロセッサシステムの命令制御方式

Info

Publication number
JPH0685166B2
JPH0685166B2 JP60159497A JP15949785A JPH0685166B2 JP H0685166 B2 JPH0685166 B2 JP H0685166B2 JP 60159497 A JP60159497 A JP 60159497A JP 15949785 A JP15949785 A JP 15949785A JP H0685166 B2 JPH0685166 B2 JP H0685166B2
Authority
JP
Japan
Prior art keywords
instruction
processor
vector
instructions
unit
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 - Fee Related
Application number
JP60159497A
Other languages
English (en)
Other versions
JPS6220064A (ja
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 JP60159497A priority Critical patent/JPH0685166B2/ja
Priority to KR1019850008891A priority patent/KR900001999B1/ko
Priority to AU50454/85A priority patent/AU557807B2/en
Priority to ES549455A priority patent/ES8800769A1/es
Priority to BR8506010A priority patent/BR8506010A/pt
Priority to DE8585308697T priority patent/DE3579121D1/de
Priority to EP85308697A priority patent/EP0183560B1/en
Publication of JPS6220064A publication Critical patent/JPS6220064A/ja
Publication of JPH0685166B2 publication Critical patent/JPH0685166B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 〔概要〕 複数のブロセッサ(第1プロセッサ)がある特定の処理
を1つのプロセッサ(第2プロセッサ)に依頼して実行
させるマルチプロセッサシステムにおいて,第2プロセ
ッサが第1プロセッサからの命令列中の命令群を識別す
ることにより,第1プロセッサに与える使用権を自動的
に変更する。各第1プロセッサは,相互間の競合状態を
意識する必要がなく効率的な処理が行われる。
〔産業上の利用分野〕
本発明は、マルチプロセッサシステムにおけるプロセッ
サ間の命令処理のための命令制御方式に関するものであ
り,特に複数のスカラユニットが1つのベクトルユニッ
トを共用する構成の計算機システムにおいて有用な命令
制御方式に関する。
〔従来の技術〕
科学技術用計算機は,一般にスカラ命令を処理するスカ
ラユニット(以後SUで表す)とベクトル命令を処理する
ベクトルユニット(以後VUで表す)とで構成されてい
る。
VUは同一複数の演算を高速に処理することができる。し
たがって,計算機では,VUの使用率が高い程,高い性能
が得られることになる。しかし、プログラムの中には,
ベクトル処理化しにくいもの,すなわちベクトル命令に
変換しにくいものがある。このようなプログラムでは,V
Uの使用率が低くなってしまう。
そこで1つのVUに対し,複数のSUを接続させたマルチプ
ロセッサシステムが提案されている。
第3図は,このようなマルチプロセッサシステムの1例
であり,2つのSUと1つのVUとを含むシステムの構成を示
している。
図において,30は主記憶装置(MSUで表す),31は記憶制
御装置(MCUで表す),32はベクトル処理装置(VPUで表
す),33および34はそれぞれスカラユニット(SU0,SU1
表す),35はベクトルユニット(VUで表す)である。
SU0およびSU1は,それぞれMCUを介してMSUに結合され,
独立並行してプログラム処理を実行する。SU0およびSU1
は実行すべき命令がベクトル命令である場合,VUに処理
を依頼する。VUは依頼されたベクトル命令を実行し,結
果をMSUを介して依頼元SUへ返す。
第4図は,第3図におけるVUの内部構成を示したもの
で,40はMSU,41はMCU,42はVPU,43はSU0,44はSU1,45はVU
であり,それぞれ第3図の30ないし35に対応している。
そしてVU内の450はベクトル制御ユニット(VCUで表
す),451はベクトル実行ユニット(VEUで表す),452は
制御信号,453はロードパイプライン,454はストアパイプ
ライン,455はベクトルレジスタ(VRで表す),456はADD
パイプライン(ADDで表す),457は乗算パイプライン(M
ULTIで表す),458はDEVIDEパイプラインを表す。
VCU450はベクトル命令を制御するユニットであり,制御
信号452により,VEU451での命令実行を制御する。
VEU451は,ベクトル命令を実行するユニットであり,MSU
40との間でベクトルデータの転送を行うロードパイプラ
イン453,ストアパイプライン454,およびベクトルデータ
を保持するVR455を持ち,さらにVR455からベクトルデー
タを読み出して演算を行い,結果をVR455に書き込む命
令を実行するために,それぞれ加算,乗算,除算用のAD
Dパイプライン456,MULTIパイプライン457,除算パイプラ
イン458をそなえている。
SU0,SU1は,それぞれMCUを通してMSUから命令をフェッ
チする。そしてその命令がスカラ命令の場合には,自ユ
ニット内で処理し,ベクトル命令の場合には,VCUに送り
出す。
ここでVCUから見ると,ベクトル命令を実行できるユニ
ットはVEUがただ1つであるが,ベクトル命令を送って
くる依頼元はSU0とSU1の2つとなる。したがって,SU0
よびSU1からのベクトル命令が競合する場合には,一方
を選択して処理する必要がある。
〔発明が解決しようとする問題点〕
従来のマルチプロセッサシステムでは,複数のプロセッ
サが1つの特定プロセッサに処理を依頼する場合,依頼
元となる複数のプロセッサ間の競合制御を行う必要があ
り,そのためのオーバーヘッドにより処理速度が低下す
るという問題があった。
〔問題点を解決するための手段〕
本発明は,上記した複数のプロセッサ(第1プロセッサ
と呼ぶ)間の競合制御を不要にし,特定プロセッサ(第
2プロセッサと呼ぶ)において,簡単迅速に使用権を切
り換え可能にするものである。
そのため本発明の構成は,複数の第1プロセッサからの
命令を1つの第2プロセッサで処理するマルチプロセッ
サシステムの命令制御方式において, 第2ブロセッサ内に現在使用権を与えている第1プロセ
ッサから送出された任意個数の命令を格納する命令バッ
ファを設けるとともに,当該命令を命令バッファに格納
する際には第1のプロセッサのうちの何れが要求元かを
示す情報を付加し,このバッアファから,現在使用権を
与えている第1プロセッサのうちの一つのプロセッサの
命令が全て実行されてなくなった状態を前記情報を用い
て検出することにより,第2プロセッサは,複数の第1
プロセッサの各々からの任意個数の命令ごとに第2プロ
セッサの使用権を複数の第1のプロセッサ間で変更して
新たに命令を受け付けることを特徴とするものである。
第1図(a)は,本発明の原理的構成を示す図である。
図において,10はスカラユニットSU0,11はスカラユニッ
トSU1,12はベクトルユニットVU,101および111はバス,12
0および121は命令フェッチレジスタ,122はセレクタ,123
は命令発信バッファ,124はSU表示フラグ,125は命令群識
別回路,126は使用権設定回路を表す。
ここでは,スカラユニットSU0,SU1が上述した第1プロ
セッサに対応し,ベクトルユニットVUが上述した第2プ
ロセッサに対応する。
スカラユニットSU0あるいはSU1は,ベクトル命令の実行
が必要となったとき,それぞれバス101,111を経てベク
トルユニットVUに対して命令を送出する。
ベクトルユニットVUでは,スカラユニットSU0,SU1から
送出された命令をそれぞれ命令フェッチレジスタ120,12
1にいったん格納し,さらにセレクタ122により一方を選
択して,すなわちVUの使用権を与えてあるスカラユニッ
トの側の命令フェッチレジスタを選択し,命令発信バッ
ファ123に転送する。
命令発信バッファ123は複数段のスタックで構成され、S
U0あるいはSU1から入力された命令列が順次格納され
る。またこのバッファに格納された命令は,入力順に読
み出され,ベクトル実行ユニットVECにより実行され
る。
命令発信バッファ123の各段には,SU表示フラグ124が設
けられており,命令が格納されるごとにその命令の依頼
元(発行元)スカラユニットがSU0とSU1のいずれである
かを示す値が設定される。SU表示フラグ124の値は,使
用権設定回路126により設定される。
命令群識別回路125は,命令発信バッファ123のSU表示フ
ラグ124を調べ,現在使用権を与えているスカラユニッ
トの命令がバッファから無くなったこと,すなわちその
スカラユニットについて,バッファに格納されていた命
令が全て実行され,新しい命令が供給されない状態とな
ったことを検出したとき,命令列の切れ目と判定して命
令群区切り信号を使用権設定回路126に送る。
使用権設定回路126は,命令群識別回路125から命令群区
切り信号を送られたとき,使用権を,現在与えているス
カラユニットを他方のスカラユニットに変更し,それに
したがってセレクタ122を切り換える。そして新しく使
用権を与えたスカラユニットの側の命令フェッチレジス
タを介して入力される命令列について,命令発信バッフ
ァ123に格納する際,SU表示フラグ124にその新しく使用
権を与えたスカラユニットに対応する値を設定する。
以上の動作は任意に繰り返すことができる。
〔作用〕
第1図(a)で説明した本発明の構成に基づく作用を,
第1図(b)に示す命令実行シーケンス例を用いて具体
的に説明する。
図は,SU0とSU1においてそれぞれ実行される命令列とVU
による使用権移転制御を示したものである。なお記号V,
V′はそれぞれSU0,SU1のベクトル命令,S,S′はそれぞれ
SU0,SU1のスカラ命令を表している。
最初,VUの使用権はSU0に与えられているものとすると,S
TARTとともに,SU0はベクトル命令V1ないしV3をVUに送っ
て実行させる。続くスカラ命令S1,S2をSU0が実行してい
る間にVUでは命令列が途切れるため,VUは1つの命令群
が終了したものと判定し,使用権をSU1に移転する。こ
れによりSU1はベクトル命令V1′ないしV4′をVUに送っ
て実行させ,続くスカラ命令S1′,S2′をSU1で実行す
る。このためVUでは命令列が途切れてVUは次の命令群が
終了したものと判定し,VUは使用権をSU0に移転する。
以下同様にして,SU0のV4ないしV6が,さらに使用権が変
更されてSU1のV5′ないしV7′がそれぞれVUにより実行
される。
本発明の原理を任意複数のスカラユニットに適用すれ
ば,それぞれの命令列について上述した方法でベクトル
ユニットに命令群を識別させて,命令群単位に各スカラ
ユニットに対する使用権の切り換えを行わせることがで
きる。
〔実施例〕 第2図は,本発明の1実施例システムの構成図である。
図において,20はSU0,21はSU1,22はVUであり,第1図
(a)の10ないし12の要素に対応するものである。ま
た, 201,211は命令を転送するバス, 202,212は命令フェッチ禁止信号用の信号線, 220,230は命令フェッチレジスタVFSR0,VFSR1, 221,231は命令フェッチバッファVFB0,VFB1, 222,232は命令フェッチレジスタと命令バッファレジス
タを切り換えるセレクタSEL, 223,233は使用権を与えたスカラユニットの命令を選択
するAND回路, 224,234は使用権を設定するラッチ, 225,235は使用権の設定状態を切り換えるAND回路, 226,236は命令群の区切りを識別するNOR回路, 227,237は命令フェッチ禁止信号を生成する反転回路, 228は命令発信バッファ, 228a,228bはそれぞれベクトル命令の依頼元のSU0とSU1
とを表示するSU表示フラグ, 229はバス, をそれぞれ示している。
次に動作を説明する。たとえばSU0からバス201を通して
命令フェッチレジスタVFSR0220にベクトル命令が送られ
たものとする。このとき,命令フェッチバッファVFB022
1は空きであり,またSU0のVU使用権を示すラッチ224が
セット状態であれば,セレクタSEL222,AND回路223を通
して,命令発信バッファ228に命令が伝達され格納され
るとともに,SU表示フラグ228aに“1"がセットされる。
命令発信バッファ228に格納された命令は,その後読み
出され,命令発信バッファ228からバス229を通して,図
示省略されているベクトル実行ユニットVEUに発信され
て実行される。ラッチ224と234は背反の関係にあり,ラ
ッチ224が“1"であるとき,ラッチ234は“0"である。つ
まりSU0にVUの使用権が与えられているときには,SU1はV
Uの使用権をもっていない。さらにこのとき反転回路237
を通して,信号線212により,SU1に命令フェッチ禁止信
号が送られる。
この命令フェッチ禁止信号を受けたSU1は,VUへの命令の
送出を停止する。なお,この命令フェッチ禁止制御が行
われる前に送られた命令は,命令フェッチレジスタVFSR
1230から命令フェッチバッファVFB1231に送られ,そこ
に蓄えられる。
ここでSU0からの命令送出が途切れ,他方命令発信バッ
ファ228からの命令発信が進んでバッファが空きになる
と,NOR回路226の入力である各段のSU表示フラグ228aは
全て“0"となってNOR回路226から,1つの命令群の終りを
示す命令群区切信号(=“1")が出力される。これによ
りAND回路235の出力が“1"になり,ラッチ225はリセッ
トされ,ラッチ235がセットされる。つまりVUの使用権
は,SU0からSU1に移される。
これにより,命令フェッチバッファVFB1231に先に蓄え
られていたベクトル命令は,セレクタSEL232,AND回路23
3を通して命令発信バッファ228に伝達される。この命令
は命令発信バッファ228に格納され,同時にそのSU表示
フラグ228bは“1"にセットされる。
命令発信バッファ228に格納されたSU1からの命令は,そ
の後バス229を通してVEUに発信される。そしてNOR回路2
36は上述したNOR回路226と同様に機能し,命令群の区切
りを識別したとき,ラッチ224,234の状態を反転され,
使用権の設定を変更する。この動作は必要なだけ繰り返
される。
〔発明の効果〕
本発明によれば,第2プロセッサが命令群の区切りを自
動的に識別して各第1プロセッサに与える使用権を切り
換えるので第1プロセッサ間の競合制御を効率的に行う
ことができる。
すなわちたとえば連続したベクトル命令の後,しばらく
ベクトル命令が存在しないときには,ベクトルユニット
のみの判断で簡単に他のSUに使用権をわたすことができ
る。
【図面の簡単な説明】
第1図(a)は本発明の原理的構成図,第1図(b)は
本発明の作用を説明する命令実行シーケンス図,第2図
は本発明の1実施例システムの構成図,第3図はマルチ
プロセッサシステムの1例の構成図,第4図はVUの内部
構成図である。 第1図(a)において, 10:スカラユニットSU0 11:スカラユニットSU1 12:ベクトルユニットVU 120,121:命令フェッチレジスタ 122:セレクタ 123:命令発信バッファ 124:SU表示フラグ 125:命令群識別回路 126:使用権設定回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数の第1のプロセッサ(10,11)からの
    命令を1つの第2プロセッサ(12)で処理するマルチプ
    ロセッサシステムの命令制御方式において, 第2ブロセッサ(12)内に現在使用権を与えている第1
    プロセッサから送出された任意個数の命令を格納する命
    令バッファを設けるとともに,当該命令を命令バッファ
    に格納する際には第1のプロセッサのうちの何れが要求
    元かを示す情報を付加し,このバッファから,現在使用
    権を与えている第1プロセッサのうちの一つのプロセッ
    サの命令が全て実行されてなくなった状態を前記情報を
    用いて検出することにより, 第2プロセッサ(12)は,複数の第1プロセッサ(10,1
    1)の各々からの任意個数の命令ごとに第2プロセッサ
    (12)の使用権を複数の第1のプロセッサ間で変更して
    新たに命令を受け付けることを特徴とするマルチプロセ
    ッサシステムの命令制御方式。
JP60159497A 1984-11-30 1985-07-19 マルチプロセッサシステムの命令制御方式 Expired - Fee Related JPH0685166B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP60159497A JPH0685166B2 (ja) 1985-07-19 1985-07-19 マルチプロセッサシステムの命令制御方式
KR1019850008891A KR900001999B1 (ko) 1984-11-30 1985-11-28 멀티프로세서 시스템(multiprocessor system)
AU50454/85A AU557807B2 (en) 1984-11-30 1985-11-28 Multiprocessor system
ES549455A ES8800769A1 (es) 1984-11-30 1985-11-29 Sistema de procesador multiple
BR8506010A BR8506010A (pt) 1984-11-30 1985-11-29 Sistema multiprocessador
DE8585308697T DE3579121D1 (de) 1984-11-30 1985-11-29 Multiprozessorsystem.
EP85308697A EP0183560B1 (en) 1984-11-30 1985-11-29 A multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60159497A JPH0685166B2 (ja) 1985-07-19 1985-07-19 マルチプロセッサシステムの命令制御方式

Publications (2)

Publication Number Publication Date
JPS6220064A JPS6220064A (ja) 1987-01-28
JPH0685166B2 true JPH0685166B2 (ja) 1994-10-26

Family

ID=15695057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60159497A Expired - Fee Related JPH0685166B2 (ja) 1984-11-30 1985-07-19 マルチプロセッサシステムの命令制御方式

Country Status (1)

Country Link
JP (1) JPH0685166B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63198151A (ja) * 1987-02-13 1988-08-16 Fujitsu Ltd 情報処理装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5461851A (en) * 1977-10-27 1979-05-18 Fujitsu Ltd Data processing system
JPS56152066A (en) * 1980-04-24 1981-11-25 Toshiba Corp Information processing system

Also Published As

Publication number Publication date
JPS6220064A (ja) 1987-01-28

Similar Documents

Publication Publication Date Title
EP0087978B1 (en) Information processing unit
US5293500A (en) Parallel processing method and apparatus
JPS6131502B2 (ja)
JPH0766329B2 (ja) 情報処理装置
JPH0562387B2 (ja)
JPH06105460B2 (ja) マルチプロセッサのプロセッサ切換え装置
US6457121B1 (en) Method and apparatus for reordering data in X86 ordering
EP0363889B1 (en) Vector processor using buffer for preparing vector data
JP3431941B2 (ja) データ処理システムにおける命令の実行順序を決定する方法および装置
JP2518293B2 (ja) デ−タフロ−プロセツサ
US6571301B1 (en) Multi processor system and FIFO circuit
JPS59106075A (ja) デ−タ処理システム
JPS6161416B2 (ja)
US6195747B1 (en) System and method for reducing data traffic between a processor and a system controller in a data processing system
JPS629460A (ja) マルチプロセツサシステムの命令制御方式
JP2643931B2 (ja) 情報処理装置
JP2503984B2 (ja) 情報処理装置
JPS6220064A (ja) マルチプロセツサシステムの命令制御方式
JPH05282242A (ja) バス制御方式
JP3982077B2 (ja) マルチプロセッサシステム
EP0107447B1 (en) Computer data distributor
JPH0452488B2 (ja)
JPH022178B2 (ja)
JP2643116B2 (ja) 主記憶制御装置
JPH03218524A (ja) 命令処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees