JPS59177655A - 演算バイパス制御方式 - Google Patents

演算バイパス制御方式

Info

Publication number
JPS59177655A
JPS59177655A JP5311183A JP5311183A JPS59177655A JP S59177655 A JPS59177655 A JP S59177655A JP 5311183 A JP5311183 A JP 5311183A JP 5311183 A JP5311183 A JP 5311183A JP S59177655 A JPS59177655 A JP S59177655A
Authority
JP
Japan
Prior art keywords
register
instruction
operand
result
operation result
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
JP5311183A
Other languages
English (en)
Inventor
Masahito Ono
大野 優人
Katsumi Onishi
克己 大西
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 JP5311183A priority Critical patent/JPS59177655A/ja
Publication of JPS59177655A publication Critical patent/JPS59177655A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、パイプライン制御方式の中央処理装置におい
て、先行命令の演算結果を後続命令のオペランドとして
用いる場合に、演算結果バイパスにより処理サイクルを
短縮するようにした演算バイパス制御方式に関するもの
である。
〔従来技術と問題点〕
第1図はパイプライン制御方式による命令実行過程を説
明する図、第2図は先行命令の演算結果を後続命令のオ
ペランドとして用いる場合の後続命令実行タイミングを
説明する図、第3図は従来の演算バイパス制御方式によ
る後続命令実行タイミングの例を示す図、第4図は従来
の演算バイパス制御方式による命令実行回路の具体的な
構成例を示す図、第5図は谷ステート毎に用意式れろレ
ジスタを示す図、第6図は演算バイパス制御回路の1例
を示す図、第7図は第6図に示す回路の動作タイミング
を説明する図である。図において。
1は記憶制御部、2はオペランド・ワード・レジスタ(
OWR)、3と4はオペランドやレジスタCLR,21
R)、5と6はセレクタ(SEL)、7は演算部、8は
演算結果レジスタ(RR)、9はレジスタ群、10−1
ないし10−6は一致回路、11−1ないし11−6と
12ないし19はアンド・ゲート、20と21はオア・
ゲートを示す。
第1図において、命令■、命令■、命令■の夫夫は、複
数のステップ(CP Uマンノ・サイクル)によp実行
され、各区切りが1ステツプを示す。
各ステップは、Dステートが命令解読サイクル、Aステ
ートがオペランド・アドレス生成サイクル、B1ステー
トがパン7ア・スタートφサイクル、B2ステートがバ
クファ読出しサイクル、B1ステートとB2ステートが
実行サイクル、Wステートが演算結果書き込みサイクル
である。
バイグライン制御方式の中央処理装置では、第1図に示
すように、複数の命令■、命令■、命令■、・・・・・
・・・・ について、先行命令の演算結果の書き込みが
終らないうちに、先行命令と異なるステップを後続命令
が次々と並行して実行さnる。
ところで、オペランドは先に実行された命令の演算結果
を用いる場合があるが、バイブライン制御方式の中央処
理装置において、同一パイブライン上の先行命令の演算
結果を後続命令のオペランドとして用いようとすると、
第2図に示すようK、先行命令の演算が終了してレジス
タ群にその結果がセクトされて以降しか後続命令が実行
できない〇そこで、従来は、第3図に示すように、演算
部の演算結果レジスタRRから入力ボートに演算バイパ
スを設けることによシ、先行命令の演算結果を演算結果
レジスタより後続命令のオペランドとして用いられるよ
うにし、レジスタ群に先行命令の演算結果が書き込まれ
るまでの処理サイクル分の後続命令の待ち状態を短縮し
ている。その具体的な回路の構成例を示したのが第4図
である。
第4図において、セレクタ5は、オペランドΦワード・
レジスタ2の内容とオペランド・レジスタ4の内容と演
算結果レジスタ80内答とからオ□ ペランドを選択して演算部7に供給し、セレクタ6は、
オペランド・レジスタ3と演算結果レジスタ8の内容と
からオペランド火選択して演算部7に供給するもので必
る。また、命令実行ステート毎に、第5図に示すような
レジスタが設けられろ。
第5図において、(1)のレジスタAV、BV、・・・
・・曲は各ステートの命令の有無を示すものであり、(
2)のレジスタAWR,BWR,・・・・・・・・・ 
は第1オペランドのレジスタ群への書き込みの有無を示
すものであ!D 、 (3)のレジスタAI、Bl、・
・・・・・・・・は第1オペランドのレジスタ番号を示
すものでメジ、(4)のレジスタA2.B2.・・・・
・・・・・ は第2オペランドのレジスタ番号を示すも
のであり、(5)のレジスタAEII、BEII、・・
・・・・・・・ は第1オペランドとしてレジスタ群の
内容を使うことを示すものであり、(6)のレジスタA
EI 2.BEI 2.・・・・・・・・・ は第2オ
ペランドとしてレジスタ群の内容を使うことを示すもの
である。こnらのレジスタの内容に基ツいて演算バイパ
ス制御を行う回路の例を示したのが第6図てろる。
第6図において、一致回路10−1表いし1O−3HD
ステートの第1オペランドのレジスタ蒼号(Di)と夫
々E、F、C,ステ〜トの第1オペランドのレジスタ番
号(El 、Fl 、Gl)  との一致を調べるもの
でろ9、一致回路10−4ないし1〇−6HDステート
の第2オペランドのレジスタ番号(B2)と夫々E、F
、Gステートの第1オペランドのレジスタ番号との一致
を調べるもので必る。
アンド・ゲー)11−4ないし1】、−3は、レジスタ
DVとDEIIの内容が共通に各入力端子に供給烙nる
と共に、夫々にステート毎に命令の有無を示すレジスタ
(EV、FV、GV)の内容と第1のオペランドのレジ
スタ群への書き込みの有無を示すレジスタ<EWR,F
WR,GWR)の内容と一致回路(LO−1&いし10
−3 )の内容が入力端子に供給される。t 7CIア
ンド・ゲー)11−4−1いし11−6も、同様の内容
(ただしレジスタDEIIの内容はレジスタDEI2の
内容)が入力端子に供給される。そしてアンド・ゲー)
11−1、11−3 、11−4と11−6の出力端子
がオアψゲート20の入力端子に接続され、アンド・ゲ
ート11−2の出力端子がアンド・ゲート12の入力端
子とアンド・ゲート18の入力端子に接続嘔れ、アンド
・ゲー)11−5の出力端子がアンド・ゲート14の入
力端子とアンド魯ゲート190入力端子に接続でれる。
またアンド拳ゲート12と14のもう一方の入力端子に
(はFフェーズの終了を示す信号FRELが供給され、
アンド・ゲート18と19のもう一方の入力端子には信
号FRELの負論理信号FRELが供給される。そして
オア・ゲート20とアンド拳ゲート18と19の出力が
オア・ゲート21の入力端子に供給され、オアΦゲート
21の出力信号EEIがB2ステートからB1ステート
への変移を止める信号とされる。他方、アンドウゲート
12の出力信号そのままのアンド−ゲート13の出力信
号が結果レジスタの内容を演算部の第1オペランドとし
て演算バイパス芒せる信号(RR)EUI)と爆扛、ア
ンド轡ゲート12の出力信号を反転したアンド・ゲート
13の出力信号がオペランド−レジスタの内容ン演算部
の第1オペランドにする信号(IR→EUI)とされる
。また、アンド・ゲート14の出力信号そのままのアン
ド・ゲート15の出力信号が結果レジスタの内容を演算
部の第2オペランドとして演算バイパスさせる信号(R
R−+EU2)とされ、アンド・ゲート14の出力を反
転し窺アンド・ゲートの出力信号がオペランド・レジス
タの内容(2R+EU2)又はオペランドやワード・レ
ジスタの内容(OWR−+EU2)を演算部の第2オペ
ランドにする信号とされる0先行命令とその演算結果を
オペランドとして用いる後続命令との対応別にぶる動作
タイミングを示したのが第7図である。第7図において
、Xがバイパスする命令、Yがバイパスされる命令7示
す。
以上に説明した従来の方式は、先行命令が演算結果レジ
スタにセットされて以降に演算バイパスによシ後絖命令
の演算部の入力ポートにオペランドを入力するものであ
る。命令には、MULTIやDIVIDEを除く固定小
数点命令、LOAD命令などのように演算結果書き込み
サイクルWの前のサイクルで既に演算結果が出る命令が
ある。しかし1ながら上記のような従来の方式では、先
行命令の演算結果が演算結果レジスタにセントさnる以
前に確定しても、演算結果が演算結果レジスタにセット
さnるまでは演算バイパスを使えないという欠点があっ
た。
〔発明の目的〕
本発明は、上記の考察に基づくものであって。
先行命令の演算結果を後続命令のオペランドとして用い
る場合において、先行命令の演算結果が。
演算結果レジスタにセントされる以前に確定するときに
は、演算結果レジスタのセット前に演算結果を後続命令
のオペランドとして演算ノ(イノ(スし、処理サイクル
の短縮を計ったバイパス制御方式を提供することを目的
とするものである。
〔発明の構成〕
そのために本発明の演算バイパス制御方式は、複数の命
令をパイプライン処理し、演算結果を演算部の演算結果
レジスタにセットして出力するノくイブライン制御方式
の中央処理装置において、演算結果を演算部の入力ボー
トにノくイノくスする演算部くイバス手段と、先行命令
の演算結果を後続命令のオペランドとして用いるか否か
を調べ、先行命令の演算結果を後続命令のオペランドと
して用いる場合に上記演算バイパス手段を制御する演算
ノくイパス制御手段と5上記演算部の演算結果が上記演
算結果レジスタにセットされる前に確定する場合には上
記演算結果レジスタにセットさ扛る前に当該演算結果が
セレトされる中間結果レジスタとを設け、上記演算バイ
パス制御手段は、演算を実行する直前のステートに存在
する命令のオペランド申レジスタ番号および上記ステー
ト以降の各ステートの命令によるレジスタへの書き込み
の有無と当該レジスタ番号と中間結果レジスタに演算結
果が出るか否かを調べて上記演算バイパス手段の制御お
よび上記ステートに存在する命令の演算実行ステートへ
の変移の制御を行い、先行命令の演算結果をオペランド
として用いる後続命令に対して当該先行命令の演算結果
の上記演算部の入力ボートへの演算バイパスを制御する
ように構成さ扛たことを特徴とするものである。
【発明の実施例〕
以下、本発明の実施例を図面を参照しつつ説り」する。
第8図は本発明の1実施例構成を示す図、第9図は本発
明による後続命令実行タイミングを説明する図、第10
図は本発明により各ステート毎に用意されるレジスタを
示す図、第11図は本発明による演算バイパス制御回路
のl実施例を示す図、第12図は第11図に示す回路の
動作タイミングの例を示す図でろろ。図において、1な
いし9は第4図に対応するものを示し、10−1ないし
10−6.11−エないし11−6と12ないし21は
第6図に対応するものを示し、8′は中間結果レジスタ
、22はアンド・ゲート、23はオア拳ゲートを示す〇
第8図において、演算部7は、演算結果レジスタ8のほ
かに中間結果レジスタ8′乞設け、中間結果レジスタ8
′からセレクタ5と6に演z バイパスすることができ
るようにしたものである。そして、先行命令の演算結果
を後続命令のオペランドとして用いる場合であって、先
行命令の演算結果が、準算結果レジスタ8にセント芒牡
る(演算結果書き込みサイクル)前に確定するものにつ
いては、第9図に示すように、演算結果レジスタ80セ
ント前に中間結果レジスタ8′にセットしく実行サイク
ル)、中間結果レジスタ8′よりセレクタ5又は6を通
して後続命令のオペランドとして演算バイパスする。こ
のような演算バイパス制御に用いるために用意さnるレ
ジスタを示したのが第1O図でろシ、具体的な回路構成
例を示したのが第11図でるる。第10図において、(
7)のレジスタARRI。
BRRl、・・・・・・・・・ が、第5図に示した従
来の例にに対して新たに設けたものであり、中間結果レ
ジスタに演算結果が出ることを示すレジスタである。
そして、第11図において、一致回路10−1ないし1
0−6.アンド・ゲート11−1ないし1l−6、アン
ドeゲート12ないし19、およびオア・ゲート20と
21の入力信号と接続関係は、アンド・ゲート12.1
4.18と19の一方の入力端子に供給き詐る信号を除
き、第6図に示した従来の例と同じである。
アンド・ゲート12と14の一方の入力端子には、第6
図に示す従来の例ではFフェーズの終了を示す信号FR
ELが供給嘔nていたが、本発明の例ではアンド・ゲー
ト22の出力、即ち、Eフェーズの終了を示す信号ER
ELと中間結果レジスタに演算結果がでることを示すE
7エーズのレジスタの内容ERR1との論理積出力が供
給さ扛る。また、アンド・ゲート18と19の一方の入
力端子[、U、第6図に示す従来の例ではフェーズの終
了を示す信号FRELの負論理(i号が供給されていた
が、本発明の例ではオア拳ゲート23の出力、即ち、E
フェーズの終了を示す信号ERELの負論゛埋信号ER
ELと中間結果レジスタに演算結果が出ることを示すE
フェーズのレジスタの内容ERR1の負m 埋(N 号
ERRIとの論理和出力が供給される。このように構成
することによって、先行命令の演算結果を後続命令のオ
ペランドとして用いる場合には、オア・ゲート21の出
力信号EEIを用いて演算バイパスこれる後続命令に対
してB2ステートからB1ステートへの変移を止め、そ
してアンド・ゲート13の出力信号によって中間結果レ
ジスタの内容を葛1オペランドとして演算バイパスさせ
(RRI→EUI)、又はアンド争ゲート15の出力信
号によって中間結果レジスタの内容2第2オペランドと
して演算バイパスさせる(RRI→EU2)。
この場合のタイミングは、従来のF 7 ニーズの終了
時に対して、本発明はEフェーズの終了時になるので、
 演算バイパスするサイクルが早くなり。
処理サイクルが短縮されろ。
先行命令とその演算結果をオペランドとして用いる後続
命令との態様別の動作タイミングケ示したのが第12図
である。第12図において、Xがバイバスする命令(先
行命令)、Yがバイパスされる命令(後続命令)を示す
〔発明の効果〕
以上の説1力から明らかなように、本発明によれば、先
行命令の演算結果を後続命令のオペランドとして用いる
場合において、中間結果レジスタを設けて、先行命令の
演算結果が、演算結果レジスタにセットされろ前に確定
するものについては、中間結果レジスタより後続命令の
演MI HV=人カポートにバイパスするので、従来の
演算結果レジスタよりバイパスする方式よりもさらに処
理サイクルの短縮を計ることができる。
【図面の簡単な説明】
第1図はパイプライン制御方式による命令実行過程を説
明する図、第2図は先行命令の演算結果を後続命令のオ
ペランドとして用いる場合の後続命令実行タイミングの
例を示す図、第3図は従来の演算バイパス制御回路式に
よる後続命令実行タイミングを説明する図、第4図は従
来の演−一パイバス制御方式による命令実行回路の具体
的な構成例を示す図、第5図は各ステート毎に用意て扛
るレジスタを示す図、第6図は演算バイパス制御回路の
1例を示す図、第7図は第6図に示す回路の動作タイミ
ングの例を示す図、第8図は本発明の1実施例構“成を
示す図、第9図は本発明による後続命令実行タイミング
を説明する図、第10図は本発明によジ各ステート毎に
用意式nるレジスタを示す図、第11図は本発明による
演算バイパス制御回路の1実施例を示す図、第12図は
第11図に示す回路の動作タイミングを説明する図であ
る。 1・・・記憶制御部、2・・・オペランド・ワード拳レ
ジスタ、3と4・・・オペランド・レジスタ、5と6・
・・セレクタ、7・・・演算部、8・・・演算結果レジ
スタ。 8′・・・中間結果レジスタ、9・・・レジスタ群、1
0−1ないし10−6・・・一致回路、11−1ないし
11−6.12ないし19と22・・・アンドeゲー)
、20.21と23・・・オア・ゲート。 律 1 図 一一〜÷マシノ 傅ベア1し ぞ L 唱 ! 3 目        、1 呟 υ  A   B+   8+−82\リ EI  E
x   Wズ 4 図 一′f 5 口 )門  日  日  ロ  「  口  「)日H−円
H−囲一一ロ 速 7 品 (α) RR−+Eul (euz ) (lo) 玉入→EL11 (EIJ2) (0) αR→1尺 (2R) IL−+EU1(2尺十ELJ2) (cA) RR−’−EUj CEUz) オ 8 m 1″l  図 日 長 δ  ロ  ニ ミ 才 1?1力 (久) 旦明1 現ゆう巳υ1(巳IJZ) (1+) RR2+αに 6B++R(2区) 」鴨EU1(2R→ELI2) (0) 工旦L RR2+αR

Claims (1)

    【特許請求の範囲】
  1. 複数の命令をパイプライン処理し、演算結果を演算部の
    演算結果レジスタにセクトして出刃するパイプライン制
    御方式の中央処理装置において、演算結果を演算部の入
    力ポートにバイパスする演算バイパス手段と、先行命令
    の演算結果を後続命令のオペランドとして用いるか否か
    を調べ、先行命令の演算結果を後続命令のオペランドと
    して用いる場合に上記演算バイパス手段を制御する演算
    バイパス制御手段と、上記演算部の演算結果が上記演算
    結果レジスタにセットされる前に確定する場合には上記
    演算結果レジスタにセットされる前に当該演算結果がセ
    ットされる中間結果レジスタとを設け、上記演算バイパ
    ス制御手段は、演算を実行する直前のステートに存在す
    る命令のオペランド・レジスタ番号および上記ステート
    以降の各ステートの命令によるレジスタへの書き込みの
    有無と描該レジスタ番号と中間結果レジスタに演算結果
    が出るか否かを調べて上記演算バイパス手段の制御およ
    び上記ステートに存在する命令の演算実行ステートへの
    変移の制御を行い、先行命令の演算結果をオペランドと
    して用いる後続命令に対して癌該先行命令の演算結果の
    上記演算部の大刀ボートへの演算バイパスを制御するよ
    うに構成されたことを特徴とする演算バイパス制御方式
JP5311183A 1983-03-29 1983-03-29 演算バイパス制御方式 Pending JPS59177655A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5311183A JPS59177655A (ja) 1983-03-29 1983-03-29 演算バイパス制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5311183A JPS59177655A (ja) 1983-03-29 1983-03-29 演算バイパス制御方式

Publications (1)

Publication Number Publication Date
JPS59177655A true JPS59177655A (ja) 1984-10-08

Family

ID=12933681

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5311183A Pending JPS59177655A (ja) 1983-03-29 1983-03-29 演算バイパス制御方式

Country Status (1)

Country Link
JP (1) JPS59177655A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60120439A (ja) * 1983-12-05 1985-06-27 Nec Corp 演算処理装置
JPS6417121A (en) * 1987-07-10 1989-01-20 Hitachi Ltd Information processor
JPH02103624A (ja) * 1988-10-12 1990-04-16 Hitachi Ltd データ処理装置
US6772318B1 (en) * 1999-09-24 2004-08-03 Kabushiki Kaisha Toshiba Bypass control circuit

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60120439A (ja) * 1983-12-05 1985-06-27 Nec Corp 演算処理装置
JPS6215891B2 (ja) * 1983-12-05 1987-04-09 Nippon Electric Co
JPS6417121A (en) * 1987-07-10 1989-01-20 Hitachi Ltd Information processor
JPH02103624A (ja) * 1988-10-12 1990-04-16 Hitachi Ltd データ処理装置
US6772318B1 (en) * 1999-09-24 2004-08-03 Kabushiki Kaisha Toshiba Bypass control circuit

Similar Documents

Publication Publication Date Title
US5353418A (en) System storing thread descriptor identifying one of plural threads of computation in storage only when all data for operating on thread is ready and independently of resultant imperative processing of thread
US5872987A (en) Massively parallel computer including auxiliary vector processor
CA1242281A (en) Vector processing
US4305124A (en) Pipelined computer
JPS6217252B2 (ja)
WO2001016758A9 (en) Double shift instruction for micro engine used in multithreaded parallel processor architecture
JPS58501560A (ja) マイクロプロセツサ
JPH10228376A (ja) 複数レジスタ命令を処理する方法及びプロセッサ
JPH04245324A (ja) 演算装置
JPH10143365A (ja) 並列処理装置及びその命令発行方式
JPS59177655A (ja) 演算バイパス制御方式
JP2690406B2 (ja) プロセッサおよびデータ処理システム
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
JPH04215129A (ja) 連続指令実行方法及び装置
US7191309B1 (en) Double shift instruction for micro engine used in multithreaded parallel processor architecture
JPS60178580A (ja) 命令制御方式
US5812845A (en) Method for generating an object code for a pipeline computer process to reduce swapping instruction set
JPS594049B2 (ja) コンピュ−タ装置
JP2988965B2 (ja) パイプライン情報処理回路
EP0015276B1 (en) A digital pipelined computer
US9323521B2 (en) Decimal floating-point processor
JPH07110769A (ja) Vliw型計算機
JP3982077B2 (ja) マルチプロセッサシステム
JPS582975A (ja) ベクトル・デ−タ処理装置の制御方式
JPS63284673A (ja) 情報処理装置