JPH0419574B2 - - Google Patents

Info

Publication number
JPH0419574B2
JPH0419574B2 JP60012157A JP1215785A JPH0419574B2 JP H0419574 B2 JPH0419574 B2 JP H0419574B2 JP 60012157 A JP60012157 A JP 60012157A JP 1215785 A JP1215785 A JP 1215785A JP H0419574 B2 JPH0419574 B2 JP H0419574B2
Authority
JP
Japan
Prior art keywords
register
instruction
write
processing unit
cpu
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 - Lifetime
Application number
JP60012157A
Other languages
English (en)
Other versions
JPS61170829A (ja
Inventor
Aiichiro Inoe
Juji Oinaga
Katsumi Oonishi
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 JP1215785A priority Critical patent/JPS61170829A/ja
Publication of JPS61170829A publication Critical patent/JPS61170829A/ja
Publication of JPH0419574B2 publication Critical patent/JPH0419574B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、計算機システムにおける、中央処理
装置のスカラレジスタ等を保持するレジスタスタ
ツクが、中央処理装置と、それに接続されるベク
トル処理装置とから参照される場合の、レジスタ
書き込みを制御する方式に関する。
計算機システムの中央処理装置(以下におい
て、CPUという)等の高速化方式として、いわ
ゆるパイプライン方式による、並列処理方式が使
用されている。
このような、並列処理方式においては、同時に
複数の命令実行の流れが存在するので、異なる命
令間において、レジスタスタツクへのアクセスが
同時に発生した場合に、一方のアクセスを遅らせ
て、データの衝突を避けたり、データをバイパス
して渡す等の制御を必要とする。
一方、更に高速な処理を必要とする等のシステ
ムにおいては、ベクトルデータの高速演算用に構
成された専用処理装置であるベクトル処理装置
(以下において、VPという)を併用する場合があ
る。
VPは、公知のように、主に主記憶装置のベク
トルデータの演算を高速に処理するように構成さ
れた処理装置であるが、CPUと併用される構成
においては、VPがCPUのスカラレジスタを参照
することも必要である。
その結果、上記のようなレジスタ参照順序の制
御に加えて、CPUのパイプラインとは非同期に
発生するVPからのレジスタアクセスと、CPUで
の命令実行パイプラインから発生するアクセスと
の衝突を制御することが必要になる。
〔従来の技術〕
第2図に示すような、VPとCPUを併用する構
成の一方式においては、VP1とCPU2は相互に
接続され、又それぞれ個別のポートによつて主記
憶アクセス制御装置(以下において、MCUとい
う)3を経て、主記憶装置(以下において、
MSUという)4にに接続される。
CPU2は、MCU3を経てMSU4から取り出
す命令をデコードし、その命令がベクトル演算命
令の場合に、CPU2からVP1へ所要の制御情報
及びデータ等を転送線6により転送して、VP1
へ処理を依頼する。
VP1は、自身でMCU3を経てMSU4にアク
セスし、CPU2とは独立に処理を進めるが、
CPU2の汎用レジスタ及び浮動少数点レジスタ
(以下において、これらを総称して、スカラレジ
スタという)に処理結果を出力する場合には、デ
ータ及び制御信号等を、転送線7によつてCPU
2へ転送する。
第3図はCPU2のパイプライン制御における、
スカラレジスタのアドレスの制御等を説明するブ
ロツク図である。
図の上部の線10は、左から右に進む、パイプ
ラインの各ステージを示し、命令実行の典型的な
場合において、Dステージでは、命令コードのデ
コードが行われる。
Aステージでは、命令で指定されたスカラレジ
スタをレジスタスタツク23から読み出して、ベ
ースレジスタ11、インデクスレジスタ12に入
力し、それらと命令のデイスプレースメント部の
内容13により、アドレス計算をして、主記憶ア
ドレスを得る。
Tステージでは、主記憶オペランドのアクセス
及び演算ユニツトの起動、Bステージではバツフ
ア、レジスタスタツク23等からのデータ読み出
しが行われ、Eステージでは、それまでに準備さ
れたデータについて演算が実行され、演算結果が
Wステージでレジスタスタツク23上の所定のス
カラレジスタ等へ書き込まれる。
以上のような、各ステージの制御に対応して、
各ステージにある命令が使用するスカラレジスタ
等の、アドレスを保持するレジスタが設けられ
る。
即ち、レジスタ郡14,15,16の、それぞ
れ直列に接続されたレジスタが、それらのレジス
タを示し、命令デコードの結果により、Aステー
ジでレジスタA1及びA2の所要のものが設定さ
れる。
上記設定がされた場合には、レジスタA1,A
2の内容は、次の制御サイクルでレジスタT1,
T2にシフトされる。又、別の命令の場合には、
Tステージで、レジスタT1,T2,T3にアド
レスがセツトされる場合もある。
レジスタT1,T2,T3の内容は、次の制御
サイクルで、レジスタB1,B2,B3にシフト
される。
レジスタB2,B3は、Bステージで読み出し
て、例えば演算器17の入力レジスタ18,19
へ供給するスカラレジスタを、指定するのに使用
される。
レジスタB1の内容は、次サイクルでレジスタ
E1にシフトし、更に次のサイクルでレジスタW
1にシフトする。
レジスタW1は、Wステージにおける、書き込
み先のスカラレジスタのアドレス指定その他に使
用される。
レジスタスタツク23へのアクセスは、読み出
しの場合、読み出しレジスタ指定バス80に読み
出そうとするレジスタのアドレスを与えることに
より行われ、レジスタ読み出しバス81上に、所
定のレジスタの内容を得る。
又、書き込みの場合は、書き込みレジスタ指定
バス82に書き込もうとするレジスタアドレスを
与え、レジスタ書き込みデータバス83上に、所
定のデータを与え、書き込みパルスを与える。
CPU2のパイプラインでは、命令実行の各ス
テージは、先行する命令の各ステージを、後続す
る命令が追い越さないように進行される。
従つて、同時に実行される命令の同じステージ
が重なることはなく、レジスタの書き込みのステ
ージ(Wステージ)が重なつたり、レジスタの読
み込みのステージ(Bステージ)が重なることは
ないので、レジスタスタツク23のアクセスにお
いて、読み出しレジスタ指定バス80、レジスタ
読み出しバス81、書き込みレジスタ指定バス8
2、及びレジスタ書き込みデータバス83上で、
データの衝突は発生しない。
CPU2で、ベクトル処理命令が実行される場
合には、パイプライン上を数フローが流れて、
CPU2における処理は終了し、VP1に命令コー
ド及び所要のスカラレジスタのデータ等を転送す
る。
この間CPU2では、既に次の命令の実行を開
始するが、前記ベクトル処理命令が、スカラレジ
スタの書き込みを伴う場合は、VP1からのレジ
スタスタツク23のスカラレジスタ書き込みが、
VP1における命令処理の完了によつて、スカラ
レジスタへの書き込みデータが出揃つた時に行わ
れるため、CPUのパイプラインとは非同期的な
スカラレジスタ書き込みとなる。
従つて、VP1からのスカラレジスタ書き込み
が、パイプライン上にある命令の書き込みステー
ジと重なつて、書き込みレジスタ指定バス82及
びレジスタ書き込みデータバス83上で、データ
が衝突する状況が発生することがある。
なお、レジスタ書き込みと読み出しは、それぞ
れ別のレジスタ指定バスでレジスタ指定を行うた
め、同一レジスタを指定しない限り、同時に行う
ことができる。
又、同一レジスタを指定した書き込みと読み出
しが行われようとした時には、読み出しをしよう
としている命令をインタロツクするか、又は書き
込みをバイパスして、読み出しバスに出すかの、
何れかの方法をとるものとする。
前記のようにCPU2は、ベクトル処理命令も
パイプラインに乗せて実行し、アドレス計算、所
要のスカラレジスタからのデータ読み出し等を行
つて所要の情報を準備し、それらの情報と命令コ
ードをVP1に転送して、処理させる。
これらの前処理のために、第4図aに示すよう
に、パイプラインには通常4個程度の処理フロー
30,31,32,33が流され、その後次の命
令のDステージがサイクル34から開始される。
なお、図において英字は、前記説明で使用し
た、パイプラインの各ステージの名前を示し、図
の左から右へ時間が進行するものとする。
図のサイクル35に示す処理フロー33のWス
テージにおいて、CPU2からVP1への所要情報
の転送が終わるが、もしこのベクトル処理命令
が、CPU2のレジスタスタツク23にあるスカ
ラレジスタの更新を伴う場合には、このベクトル
処理命令のVP1における処理が完了して、スカ
ラレジスタの書き込みデータが揃った時(時刻3
6)に、VP2から書き込み要求信号と共に出力
データが転送されて、指定のスカラレジスタが更
新される。
従つて、このようなベクトル演算命令の後続命
令に、上記の更新されるスカラレジスタの参照が
ある場合には、更新完了まで参照を遅延させる必
要がある。
従来は、このためにCPU2では、パイプライ
ン上に、スカラレジスタの更新を行うベクトル演
算命令があることを検出すると、これを記憶し、
後続命令をDステージでインタロツクする。
このインタロツクは、VP1からの出力を、ス
カラレジスタへ書き込み完了するまで、継続する
必要がある。
第4図aの処理フロー37は、このようにして
インタロツクされる後続命令のフローを示し、線
39はインタロツクの期間を示している。
以上の制御により、VP1からCPU2のレジス
タスタツク23にデータを書き込む場合には、
CPU2の命令実行によつてレジスタスタツク2
3へのアクセスが発生することが無いので、直ち
にVP1のレジスタ書き込み要求を実行すること
ができる。
〔発明が解決しようとする問題点〕
前記従来の方式によれば、比較的簡単な制御に
よつて、VPがスカラレジスタ等のレジスタスタ
ツクを更新する場合に、CPU命令との衝突を避
けることができる。
しかし、すべての後続命令を無差別にインタロ
ツクするので、インタロツクの期間が長くなり、
必要以上にCPUの性能を低下させるという問題
がある。
本発明は、中央処理装置における命令実行をイ
ンタロツクする時間をできるだけ短縮して、中央
処理装置における命令実行の遅延を少なくできる
レジスタ書き込み制御方式を目的とする。
〔問題点を解決するための手段〕
前記の問題点は、レジスタスタツクを有し、命
令を並列実行する中央処理装置と、該中央処理装
置の制御を受けて、独立に演算を実行するベクト
ル処理装置を有する計算機システムにおいて、上
記中央処理装置にインタロツク手段と書き込み制
御手段を設け、該中央処理装置は上記ベクトル処
理装置から上記レジスタスタツクに対するレジス
タ書き込み要求を受信した場合に、該書き込み要
求の受信により該インタロツク手段と該書き込み
制御手段を起動し、該インタロツク手段が、該中
央処理装置で実行中の命令の所定の実行状態を検
出して該実行の進行を選択的に抑止し、該書き込
み制御手段が、該実行中の命令による該レジスタ
スタツクに対するアクセスを監視して、所定のタ
イミングに該レジスタ書き込み要求に従う該レジ
スタスタツクへの書き込みを実行し、該インタロ
ツク手段は該書き込みの実行終了により該命令実
行を再開させるように構成された本発明のレジス
タ書き込み制御方式により解決される。
〔作用〕
即ち、VPからのレジスタスタツクに対するア
クセス要求信号を、CPUで一旦保持し、CPUの
命令実行に支障の無いタイミングで、パイプライ
ンの所要ステージをインタロツクする信号を発生
する機構を設ける。
この信号により、例えば1命令実行の処理フロ
ーの最初のBステージがインタロツクされるが、
その期間はVPの出力データをレジスタスタツク
に書き込むために、実質的に必要な時間のみでよ
い。
保持されている、VPからのアクセス要求の実
行は、インタロツクされた命令と、それに先行す
る命令のレジスタスタツクへのアクセスが完了し
た後に行うことにより、CPUのパイプラインに
ある命令との衝突を避けることができる。
以上により、スカラレジスタ更新を伴うベクト
ル演算命令の場合にも、後続命令の無差別なイン
タロツクを行わず、VPと並列にCPU命令の実行
を進めるようにすることができる。
〔実施例〕
第4図bは本発明の一実施例における制御タイ
ミングを説明する図である。
VP1からのレジスタ書き込み要求信号を書込
要求52に示すタイミングで受け付けると、本発
明の制御により、その次の命令の最初の処理フロ
ー50は、Bステージでインタロツクされる。
この時、例えば図に処理フロー46,47,4
8,49として示した場合のように、多数の処理
フローの必要な命令が、パイプライン上にある時
は、VP1からの要求による書き込みの実行も保
留し、該命令についてはインタロツクをかけない
で、その命令の処理を先に完了させる。
第1図は、本発明の一実施例を示すブロツク図
である。
レジスタスタツク23への書き込みデータはレ
ジスタ60又はレジスタ63にセツトされて書き
込まれる。
レジスタ60には、CPU2の命令実行による
書き込みデータがセツトされ、レジスタ63には
VP1からの書き込みデータがセツトされる。
レジスタ18及びレジスタ19は、レジスタス
タツク23から読み出したデータを保持する。
レジスタ63はVP1とのインタフエースに設
けられ、VP1から転送される書き込みデータを
受信して保持する。
VP1はレジスタ63へデータを転送すると、
同時に書き込み要求保留ラツチ64をセツトす
る。
書き込み要求保留ラツチ64の出力信号は、本
発明によつて設けられるインタロツク信号発生回
路66を起動する。
インタロツク信号発生回路66には、パイプラ
インの各ステージからの、ステージのインタロツ
ク要否を示す信号67が入力され、その信号を参
照して、インタロツク制御信号68を所定の時間
有効化することにより、パイプライン上の所要の
命令の実行を中断する。
その後、書き込み許可回路70は、書き込み要
求保留ラツチ64がセツトされていると、パイプ
ラインの各ステージからの状態信号71によつ
て、パイプラインにある命令が、レジスタ参照を
するステージであるWステージに無く、又Bステ
ージで読み出しアクセスとレジスタの衝突も無い
ことを検出し、レジスタスタツク23の書き込み
レジスタ指定バス82へVP書き込みレジスタ4
0の保持するアドレスを供給するようにアドレス
切換回路65を制御し、書き込みパルスを制御し
てレジスタ書き込みを実行させる。
VP書き込みレジスタ40には、例えばCPU2
からVP1へベクトル処理命令を転送するとき、
該命令の処理により発生する書き込み要求によ
る、書き込み先レジスタのアドレスを、設定して
おくものとする。
又は、例えばVP1が、レジスタ63へデータ
を転送するときに、書き込みアドレスも転送し
て、VP書き込みレジスタ40にセツトしてもよ
い。
書き込みが完了すると、書き込み要求保留ラツ
チ64及びインタロツク制御信号68をリセツト
して、CPUの命令処理を再開する。
〔発明の効果〕
以上の説明から明らかなように本発明によれ
ば、CPUとVPを接続した構成の計算機システム
の、VPの出力でCPUのレジスタを更新する処理
において、CPUの命令実行パイプラインのイン
タロツク時間を、必要最小限に押さえ、殆どレジ
スタスタツクへの更新アクセスの実行時間まで減
少することができるので、CPUの性能を著しく
改善する。
【図面の簡単な説明】
第1図は本発明一実施例構成のブロツク図、第
2図は計算機システムの一構成例ブロツク図、第
3図はパイプラインの一構成例ブロツク図、第4
図はパイプライン処理フローの説明図、である。 図において、1はVP、2はCPU、3はMCU、
4はMCU、11はベースレジスタ、12はイン
デクスレジスタ、14,15,16はレジスタ
群、18,19,60,63はレジスタ、23は
レジスタスタツク、30〜33,41〜50は処
理フロー、40はVP書き込みレジスタ、64は
書き込み要求保留ラツチ、66はインタロツク信
号発生回路、70は書き込み許可回路を示す。

Claims (1)

  1. 【特許請求の範囲】 1 レジスタスタツクを有し、命令を並列実行す
    る中央処理装置と、該中央処理装置の制御を受け
    て、独立に演算を実行するベクトル処理装置を有
    する計算機システムにおいて、上記中央処理装置
    にインタロツク手段と書き込み制御手段を設け、
    該中央処理装置は上記ベクトル処理装置から上記
    レジスタスタツクに対するレジスタ書き込み要求
    を受信した場合に、該書き込み要求の受信により
    該インタロツク手段と該書き込み制御手段を起動
    し、 該インタロツク手段は、該書き込み要求の受信
    時に実行中である命令の次の命令の進行を選択的
    に抑止し、 該書き込み制御手段は、該実行中の命令による
    該レジスタスタツクに対するアクセスを監視し
    て、前記書き込み要求受信時に実行中の命令が終
    了した後に該レジスタ書き込み要求に従う該レジ
    スタスタツクへの書き込みを実行し、該インタロ
    ツク手段は該書き込みの実行終了により前記抑止
    された命令の実行を再開させるように構成されて
    いることを特徴とするレジスタ書き込み制御方
    法。
JP1215785A 1985-01-25 1985-01-25 レジスタ書き込み制御方法 Granted JPS61170829A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1215785A JPS61170829A (ja) 1985-01-25 1985-01-25 レジスタ書き込み制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1215785A JPS61170829A (ja) 1985-01-25 1985-01-25 レジスタ書き込み制御方法

Publications (2)

Publication Number Publication Date
JPS61170829A JPS61170829A (ja) 1986-08-01
JPH0419574B2 true JPH0419574B2 (ja) 1992-03-30

Family

ID=11797623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1215785A Granted JPS61170829A (ja) 1985-01-25 1985-01-25 レジスタ書き込み制御方法

Country Status (1)

Country Link
JP (1) JPS61170829A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57105070A (en) * 1980-12-23 1982-06-30 Fujitsu Ltd Control system of register interference
JPS57143640A (en) * 1981-03-02 1982-09-04 Hitachi Ltd Data processing device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57105070A (en) * 1980-12-23 1982-06-30 Fujitsu Ltd Control system of register interference
JPS57143640A (en) * 1981-03-02 1982-09-04 Hitachi Ltd Data processing device

Also Published As

Publication number Publication date
JPS61170829A (ja) 1986-08-01

Similar Documents

Publication Publication Date Title
KR100335785B1 (ko) 데이타처리명령의실행
US4314332A (en) Memory control system
US6134642A (en) Direct memory access (DMA) data transfer requiring no processor DMA support
JP2798121B2 (ja) データ処理装置
KR920002830B1 (ko) 다이렉트 메모리 액세스 제어장치
JPH0419574B2 (ja)
JP2762441B2 (ja) コプロセッサ
JPH0228724A (ja) 分岐命令制御方式
JPS61131047A (ja) パイプライン制御方式
JPH0419575B2 (ja)
JPH0333951A (ja) マイクロコンピュータシステム
JP2924004B2 (ja) 命令コード転送方式
JPH02301830A (ja) 情報処理方式
JPS60159958A (ja) デ−タ転送制御回路
JP3200183B2 (ja) データ処理装置
JPH0424733B2 (ja)
JPH0321941B2 (ja)
JPS63155254A (ja) 情報処理装置
JPH02112054A (ja) データ処理装置
JPS62269237A (ja) デ−タプロセツサ
JPH09146769A (ja) パイプライン処理装置
JPS6215903B2 (ja)
JPH05241828A (ja) 命令処理装置
JPH02217924A (ja) データ処理装置のストア処理方式
JPH0646411B2 (ja) 終了ト−クン出力回路