JPH0244424A - パイプライン計算機 - Google Patents

パイプライン計算機

Info

Publication number
JPH0244424A
JPH0244424A JP19462688A JP19462688A JPH0244424A JP H0244424 A JPH0244424 A JP H0244424A JP 19462688 A JP19462688 A JP 19462688A JP 19462688 A JP19462688 A JP 19462688A JP H0244424 A JPH0244424 A JP H0244424A
Authority
JP
Japan
Prior art keywords
branch
instruction
stage
condition
pipeline
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
JP19462688A
Other languages
English (en)
Inventor
Takeshi Shinoki
剛 篠木
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.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
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 Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP19462688A priority Critical patent/JPH0244424A/ja
Publication of JPH0244424A publication Critical patent/JPH0244424A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 バ・fプラインを用いて命令を順次実行する際に命令を
プリフェッチするように構成したパイプライン計算機に
関し、 分岐条件を判定する条件判定回路を2つのステージに設
け、不要なプリフェッチを削減することを目的とし、 Dステージ、Aステージ、Tステージ、およびBステー
ジからなるパイプラインと、このパイプラインのAステ
ージで分岐条件判定を行って分岐するか否かを判定する
条件判定回路と、このパイプラインのBステージで分岐
条件判定を行って分岐するか否かを判定する条件判定回
路とを備え、上記条件判定回路が予め定めた分岐命令を
検出し、分岐条件が成立した時に分岐先命令のプリフェ
ッチを指示すると共に1!を続命令をキャンセルし、分
岐条件が未成立の時に後続命令を実行し、あるいは、上
記条件判定回路(3)が予め定めた分岐命令を検出し、
分岐条件が成立した時にAステージでプリフェッチ指示
してプリフェッチさせた分岐先命令をDステージに入れ
、後続命令をキャンセルし、分岐条件が未成立の時に後
続命令を実行するように構成する。
〔産業上の利用分野〕
本発明は、パイプラインを用いて命令を順次実行する際
に命令をプリフェッチするように構成したパイプライン
計算機に関するものである。
〔従来の技術と発明が解決しようとする課題〕従来のパ
イプライン計算機における条件分岐命令は、引き続くア
ドレスの命令のフェッチと共に、分岐先命令のフェッチ
要求を前のステージ(例えば第2番目のAステージ)で
出しておき、第5図に示すように、条件判定ステージを
できるだけ後ろのステージ(例えば第4番目のBステー
ジ)で行い、分岐条件判定結果でメモリ (主記憶装置
)から第4図に示すようにプリフェッチした2系列の命
令列(続行する続行命令列および分岐先命令列)のうち
のいずれかを選択し、他をキャンセルするようにしてい
る。この方式は、分岐条件判定時刻をできるだけ遅らせ
ることによって、分岐条件判定の対象となるデータが揃
っていないことによる待ち、いわゆる分岐命令の実行が
内部でインターロックすることによる待ちを防ぐように
したものである。しかし、この分岐条件判定前に予め続
行命令列および分岐先命令列の両者を常にプリフェッチ
し、分岐条件判定の時にいずれかを実行し、他をキャン
セルする方式は、特にマルチプロセッサが1つの共有メ
モリ (主記憶装置)から命令をプリフェッチする場合
、共有メモリに対して使用しない命令に対する読み出し
が行われることとなり、メモリ系のビジー率を不当に上
げてしまうという問題がある。
本発明は、分岐条件を判定する条件判定回路を2つのス
テージに設け、不要なプリフェッチを削減することを目
的としている。
〔課題を解決する手段〕
第1図は本発明の原理構成図を示す。
第1図において、パイプライン1は、Dステージパイプ
ラインレジスタ(D stage pipeline 
reg) 1−1、Aステージパイプラインレジスタ(
Astage pipeline reg)  1−2
、Tステージパイプラインレジスタ(T 3jag8 
pipeline reg )  1−3、Bステージ
パイプラインレジスタ(B stagepipelin
e reg )  l  4から構成されている。
条件判定回路2は、Aステージパイプラインレジスフl
−2に格納された命令が予め定めた命令に該当し、かつ
分岐条件が成立するか否かを判定するものである。
条件判定回路3は、Bステージパイプラインレジスタ1
−4に格納された命令が予め定めた命令に該当し、かつ
分岐条件が成立するか否かを判定するものである。
〔作用〕
本発明は、第1図に示すように、主記憶装置からフェッ
チした命令をパイプライン1のDステージパイプライン
レジスタ1−1からクロックに同期して順次入力させつ
つ実行している際に、条件判定回路2がAステージパイ
プラインレジスタ12に格納された命令が予め定めた分
岐命令であることを検出し、かつ分岐条件が成立した時
に分岐先命令のプリフェッチを指示すると共に続行命令
をキャンセルし、一方、分岐条件が未成立の時に続行命
令を実行し、更に、条件判定回路3がBステージパイプ
ラインレジスタ1−4に格納された命令が予め定めた分
岐命令であることを検出し、かつ分岐条件が成立した時
にプリフェッチした分枝先命令をDステージに入れると
共に続行命令をキャンセルし、一方、分岐条件が未成立
の時に続行命令を実行するようにしている。
従って、条件判定回路2.3をAステージおよびBステ
ージの2つに設け、分岐条件を判定して不要な分岐先命
令あるいは続行命令のプリフェッチを削減することが可
能となる。これにより、プリフェッチ回数が削減され、
特にマルチプロセッサシステムにおける共有メモリであ
る主記憶装置に対するビジー率を減少させることができ
る。
〔実施例〕
次に、第2図および第3図を用いて本発明の1実施例の
構成および動作を順次詳細に説明する。
第2図において、パイプラインエは、1−1ないし1−
4から構成されている。
Dステージは、命令のデコードを行うステージである。
Aステージは、分岐条件の判定、および分岐先命令のア
ドレス計算を行うステージである。そして、分岐条件が
成立した時に、メモリ系に対する分岐先命令のプリフェ
ッチ要求を出すと共に、続行命令のフェッチをキャンセ
ルする。また、分岐条件判定を行わない場合、分岐先命
令のプリフェッチを指示しておく。
Tステージは、分岐先命令のフェッチのための空きステ
ージである。
Bステージは、条件判定のステージである0分岐条件が
成立した時に、Aステージでプリフェッチ回数しておい
た分岐先命令をDステージに入れると共に続行命令をキ
ャンセルする。一方、分岐条件が未成立の時に、続行命
令をそのまま実行する。
条件フラグ4は、条件判定回路2.3が条件判定する際
の条件指定するものである。
命令フェッチ制御部5は、条件判定回路2.3から分岐
条件が成立した旨の通知を受けた時にメモリ6からフェ
ッチした分岐先命令を■バッファ(I buffor)
 7に格納し、一方、未成立の時に続行命令を順次格納
するものである。
メモリ (命令列)6は、実行しようとする命令列を格
納するものである。
■バッフy (I buffer) 7は、メモリ6か
らフェッチした命令を格納するものである。
次に、第3図を用いて第2図構成の動作を詳細に説明す
る。
第3図において、■は、条件分岐命令がパイプラインl
のDステージに人力される状態を示す。
■は、命令の種別を判定する。これは、第2図条件判定
回路2がAステージに格納された命令について予め定め
た分岐条件命令であるか否かを判別することを意味して
いる。Aステージで条件判定回路2が予め定めた該当分
岐命令であると判別した場合、■ないし■を実行する。
Aステージで予め定めた該当分岐命令であると判別され
なかった分岐命令(Bステージで条件判定されるもの)
に対して、■ないし■を実行する。
■は、Aステージで分岐条件判定を行う。
■で分岐条件が成立か否を判別する。YESの場合(分
岐条件が成立した場合)には、■で分岐先命令のフェッ
チを指示および後続命令のキャンセルを行う。Noの場
合(分岐条件が未成立の場合)には、分岐先命令のプリ
フェッチを行うことなく、続行命令をそのまま実行する
。これにより、Aステージで分岐条件を判定し得るよう
な分岐命令の場合は、このAステージの段階で分岐先命
令をプリフェッチするか、続行命令を続いてプリフェッ
チするかを決定し、いずれかを実行することにより、不
要なプリフェッチを回避することが可能となる。
Aステージで分岐条件判定する命令例として次のものが
ある。
j ump−^cond、 Largctaddres
s  ・・・・―・(1)これは、cond″が成立し
たら、”targetaddress″へ分岐すること
を意味し、A stageで行う。
■は、Aステージで分岐命令のプリフェッチを行う。こ
れは、最終ステージであるBステージで分岐条件を判断
せざるを得ないような分岐命令の場合(直前のサイクル
の加減算結果などによって分岐条件を決定せざるを得な
いような場合)、予めBステージまでに分岐先命令をプ
リフェッチさせてお(ためである。
■は、Bステージで分岐条件判定を行う。
■は、分岐条件が成立するか否かを判定する。
YESの場合(成立した場合)には、プリフェッチした
分岐先命令を■でDステージに入れると共に後続命令を
キャンセルする。NOの場合(未成立の場合)には、後
続命令を実行する。
Bステージで分岐条件判定する命令例として次のものが
ある。
jump−B cond、 targetaddres
s  ・・−・・・[21これは、cond″が成立し
たら、”targetaddresS”へ分岐すること
を意味し、B stageで行う。
尚、本実施例で設けた条件判定回路2.3が判定可能な
2種類の分岐命令を1つの計算機システム上に予め用意
し、コンパイラあるいはプログラマがこれら2種類の分
岐命令を使い分けることにより、無駄なプリフェッチを
回避して効率良好なオブジェクトコードを作成すること
が可能となる。
〔発明の効果〕
以上説明したように、本発明によれば、条件判定回路2
.3をAステージおよびBステージの2つに設け、Aス
テージにおける分岐条件を判定して分岐先命令あるいは
続行命令のプリフェッチを行う構成を採用しているため
、メモリに対する不要なプリフェッチ回数を削減するこ
とができる。
これにより、特にマルプロセソサシステムおける共有メ
モリに対する不要なプリフェッチ回数を削減し、メモリ
のビジー率を下げて効率的に使用することが可能となる
【図面の簡単な説明】
第1(21は本発明の原理構成図、第2図は本発明のl
実施例構成図、第3図は本発明の動作説明フローチャー
ト、第4図は分岐命令の先取り説明図、第5図は従来技
術の説明図を示す。 図中、1はパイプライン、2.3は条件判定回路、5は
命令フェッチ制御部、6はメモリを表す。 特許出願人 工業技術院長 飯塚 幸三本発明の原理構
成図 第   1   図 本発明の動作説明フローチャート 第   3   図 薄怒侶くP

Claims (1)

  1. 【特許請求の範囲】 パイプラインを用いて命令を順次実行する際に命令をプ
    リフェッチするように構成したパイプライン計算機にお
    いて、 Dステージ、Aステージ、Tステージ、およびBステー
    ジからなるパイプライン(1)と、このパイプライン(
    1)のAステージで分岐条件判定を行って分岐するか否
    かを判定する条件判定回路(2)と、 このパイプライン(1)のBステージで分岐条件判定を
    行って分岐するか否かを判定する条件判定回路(3)と
    を備え、 上記条件判定回路(2)が予め定めた分岐命令を検出し
    、分岐条件が成立した時に分岐先命令のプリフェッチを
    指示すると共に後続命令をキャンセルし、分岐条件が未
    成立の時に後続命令を実行し、あるいは、上記条件判定
    回路(3)が予め定めた分岐命令を検出し、分岐条件が
    成立した時にAステージでプリフェッチ指示してプリフ
    ェッチさせた分岐先命令をDステージに入れ、後続命令
    をキャンセルし、分岐条件が未成立の時に後続命令を実
    行するように構成したことを特徴とするパイプライン計
    算機。
JP19462688A 1988-08-05 1988-08-05 パイプライン計算機 Pending JPH0244424A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19462688A JPH0244424A (ja) 1988-08-05 1988-08-05 パイプライン計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19462688A JPH0244424A (ja) 1988-08-05 1988-08-05 パイプライン計算機

Publications (1)

Publication Number Publication Date
JPH0244424A true JPH0244424A (ja) 1990-02-14

Family

ID=16327644

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19462688A Pending JPH0244424A (ja) 1988-08-05 1988-08-05 パイプライン計算機

Country Status (1)

Country Link
JP (1) JPH0244424A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5461722A (en) * 1990-09-05 1995-10-24 Kabushiki Kaisha Toshiba Parallel processing apparatus suitable for executing in parallel a plurality of instructions including at least two branch instructions
JP2011248820A (ja) * 2010-05-31 2011-12-08 Nec Computertechno Ltd 情報処理装置及びマイクロ命令処理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57150041A (en) * 1981-03-11 1982-09-16 Mitsubishi Electric Corp Pipeline computer
JPS603750A (ja) * 1983-06-22 1985-01-10 Hitachi Ltd 計数分岐命令の制御方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57150041A (en) * 1981-03-11 1982-09-16 Mitsubishi Electric Corp Pipeline computer
JPS603750A (ja) * 1983-06-22 1985-01-10 Hitachi Ltd 計数分岐命令の制御方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5461722A (en) * 1990-09-05 1995-10-24 Kabushiki Kaisha Toshiba Parallel processing apparatus suitable for executing in parallel a plurality of instructions including at least two branch instructions
JP2011248820A (ja) * 2010-05-31 2011-12-08 Nec Computertechno Ltd 情報処理装置及びマイクロ命令処理方法

Similar Documents

Publication Publication Date Title
JP5889986B2 (ja) 実行された命令の結果を選択的にコミットするためのシステムおよび方法
US4858104A (en) Preceding instruction address based branch prediction in a pipelined processor
US6662295B2 (en) Method and system dynamically presenting the branch target address in conditional branch instruction
TW469406B (en) System for processing clustered branch instructions
JPH02224025A (ja) コンピューターシステム
JP2507638B2 (ja) デ―タ処理装置
JP2010511251A (ja) サブルーチン呼び出しを認識(recognize)する方法及び装置
EP0227117A2 (en) Program skip operation control system
JPH09134287A (ja) マイクロプロセッサ及びそのロードアドレス予想方法
JPH0244424A (ja) パイプライン計算機
US6807624B1 (en) Instruction control device and method therefor
JP3532835B2 (ja) データ処理装置およびプログラム変換装置
JP3602801B2 (ja) メモリデータアクセス構造およびその方法
JP2002342075A (ja) マイクロプロセッサ
JP3493110B2 (ja) 高速分岐処理装置
JPH04347730A (ja) マイクロ・プロセッサの命令処理方式
JP5679263B2 (ja) 情報処理装置及びマイクロ命令処理方法
JPH0254336A (ja) データ処理装置
JPH05224924A (ja) データ処理装置及びデータ処理方法
JPH0433021A (ja) 分岐命令制御方式
JPH09311787A (ja) データ処理装置
JPH0820952B2 (ja) パイプライン処理機構を持つデータ処理装置
JPH02211533A (ja) 分岐命令に続く命令の選択的実行を行うためのコンピューター装置
JPH04167026A (ja) 分岐制御装置
JPH01175635A (ja) データ処理装置