JPS63221429A - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS63221429A
JPS63221429A JP5734787A JP5734787A JPS63221429A JP S63221429 A JPS63221429 A JP S63221429A JP 5734787 A JP5734787 A JP 5734787A JP 5734787 A JP5734787 A JP 5734787A JP S63221429 A JPS63221429 A JP S63221429A
Authority
JP
Japan
Prior art keywords
indicator
instruction
branch
cycle
register
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
JP5734787A
Other languages
English (en)
Inventor
Shoshiro Ono
大野 正志郎
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP5734787A priority Critical patent/JPS63221429A/ja
Publication of JPS63221429A publication Critical patent/JPS63221429A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、先行制御回路を有し、かつ演算を実行する実
行サイクルを持つパイプライン制御によりデータ処理を
行なうデータ処理装置に関する。
〔従来の技術〕
従来、パイプラインで分岐命令を処理する場合、分岐命
令の次の命令は、分岐のGo(分岐する)側かまたは分
岐のN0GO(分岐しない)側のどちらか一方を先取り
して処理を進める。しかし、実際の分岐方向が先取りと
逆だった場合、今までの先取りをすべて捨て、先取りし
た方向と逆側を先取りしなければならない。そこで、先
取りが逆だったことをより早く検出できれば、先取りし
た方向と逆側をより早く先取りすることができ、データ
の処理を早く行なうことができる。この先取りが逆だっ
たことを示す信号、すなわち分岐予測失敗信号は、従来
、分岐命令の実行サイクルによって作成されていた。
第3図は上述したデータ処理装置の従来例の要部のブロ
ック図である。パイプラインには、Dサイクル(命令デ
コード)、Aサイクル(論理アドレス作成)、Pサイク
ル(物理アドレス作成)。
Cサイクル(キャッシュアクセス)、■サイクル(デー
タ転送)、Eサイクル(実行)、Wサイクル(書込み)
を持っている。とする。テンポラリインジケータ11は
Wサイクルでデータを保持している。インジケータ12
はWサイクルに演算結果の条件によってセットされる。
インジケータ入力作成回路15は、テンポラリインジケ
ータ11と、インジケータ12のデータからIR(命令
レジスタ)に入力する値を作成する。タイプレジスタ1
3は、分岐命令のEリ−イクルで分岐命令の種類を保持
している。分岐予測レジスタ14は、先行制御回路(不
図示)が、分岐命令の次の命令をGO側から先取りした
か、N0GO側から先取りしたかを分岐命令のEサイク
ルで保持している。分岐予測失敗検出回路16は、IR
入力作成回路15の出力とタイプレジスタ13の出力と
分岐予測レジスタ14の出力を入力として、分岐命令の
前の命令がIRに書込むデータにより分岐GOか140
GOかを判定し、判定結果が分岐予測レジスタ14の出
力と比較して違っていると、分岐命令のEサイクルで分
岐予測失敗信号を出力する。
第4図は第3図の回路の動作例を示すタイムチャートで
ある。命令2は分岐命令で、命令3は分岐命令の次の命
令が先取りの方向と逆側だった場合である。すなわち、
分岐命令の次の命令の先取りを誤った場合は、分岐命令
のWサイクルから先取りが始まる。
〔発明が解決しようとする問題点〕
上述した従来のデータ処理装置は、分岐命令の実行サイ
クルでしか先取りが実際の分岐方向とが同じか否かわか
らないので、先取りが実際の方向と逆だった場合、次の
命令の処理が遅れる、という効果がある。
c問題点を解決するための手段〕 本発明のデータ処理装置は、 命令と前記命令による演算の実行結果の条件によりイン
ジケータ入力信号を作成するインジケータ入力作成回路
と、 前記インジケータ入力信号を実行サイクルでセットする
インジケータと、 先行制御回路が、分岐命令の次の命令を分岐する側から
作成したか分岐しない側から作成したかを示す内容を前
記分岐命令の実行サイクルの前のサイクルに保持する分
岐予測レジスタと、前記命令がインジケータを更新する
か否かを前記命令の実行サイクルに保持するインジケー
タ更新レジスタと、 前記命令、前記分岐命令が続いて処理が行なわれ、前記
インジケータ更新レジスタに、前記インジケータを更新
しないことが示されている場合に、前記インジケータ入
力作成回路の出力から前記分岐命令の分岐するまたは分
岐しないを判定し、その判定の結果が、前記分岐予測レ
ジスタの内容により示されている分岐方向と異なる場合
に、分岐予測失敗信号を出力する分岐予測失敗検出回路
を有している。
〔作用〕
分岐予測失敗信号が出力された場合に、分岐命令より後
に行なった命令の実行を抑止し、先行制御回路により前
記分岐命令より後の命令を正しい分岐方向から先取りす
る。
〔実施例〕 次に、本発明の実施例について図面を参照して説明する
第1図は本発明のデータ処理装置の一実施例の要部のブ
ロック図である。テンポラリインジケータ1は、演算の
結果によって、Eサイクルに書込まれる。インジケータ
2はテンポラリインジケータ1または、自分自身によっ
てWサイクルに書込まれる。インジケータ入力作成回路
6はテンポラリインジケータ1とインジケータ2の中か
らインジケータ2に入力するデータを選んで出力する。
タイプレジスタ39分岐予測レジスタ4は分岐命令のT
サイクル、すなわち実行サイクルの前のサイクルで、そ
れぞれ分岐命令の種類、先行制御回路が分岐命令の次の
命令をGO側の命令を先取りしたならば’ 1” 、N
0GO側の命令を先取りしたならば0′°を保持してい
る。インジケータ変更レジスタ5は〔サイクル、すなわ
ち実行サイクルで、インジケータ2を変更するならば“
1パ、変更しないならば“O″を保持している。分岐予
測失敗検出回路7は、インジケータ入力作成回路6の出
力とタイプレジスタ3の出力から分岐GOまたはN0G
Oを判定し、分岐GOならば′″1″を出力し、N0G
OならばO″を出力し、分岐予測レジスタ4の出力と比
較し、違う場合、かつインジケータ変更レジスタ5の値
が0″の場合に分岐予測失敗信号を出力する。
第2図は、命令2がインジケータ2を変更しない命令、
命令3が分岐命令で、命令4が先行制御回路の分岐命令
の次の命令の先取りが逆だった場合のタイムチ材−トで
ある。インジケータ入力作成回路6は、テンポラリイン
ジケータ1の値を選択し出力する。分岐予測失敗検出回
路7は、テンポラリインジケータ1の出力とタイプレジ
スタ3の出力で分岐GOかN0GOかを判定する。たと
えばインジケータ2が1″の場合に分岐GOである分岐
命令ならば、テンポラリインジケータ1の値が“1″な
らばGOlII OITならばN0GOと判定する。
そして分岐予測レジスタ4の値をみて、先行制御回路の
先取りと同じかどうか判定する。たとえば、上記の命令
で、テンポラリインジケータ1の値が1111+で、分
岐予測レジスタ4の値が0″ならば、先取りは逆だった
として分岐予測失敗信号を出力する。ただし、インジケ
ータ変更レジスタ5が“○″のときのみ分岐予測失敗信
号は有効となる。以上のような動作が、命令1のWサイ
クル、命令2のEサイクル、命令3のTサイクルで行な
われ、分岐予測失敗信号は分岐命令のTサイクル、すな
わち実行サイクルの前のサイクルで検出することができ
る。
〔発明の効果〕
以上説明したように本発明は、分岐命令のひとつ前の命
令がインジケータを更新しない命令の場合、分岐命令の
ふたつ前の命令でインジケータに入力するデータから、
分岐命令のTサイクルで分岐予測失敗信号を出力するこ
とにより、先行制御回路の分岐命令の次の命令の先取り
が逆の場合のデータの処理を早くすることができる効果
がある。
【図面の簡単な説明】
第1図は本発明のデータ処理装買の一実施例の要部のブ
ロック図、第2図はそのり、イムチャート、第3図は従
来例の要部のブロック図、第4図はそのタイムチャート
である。 1・・・テンポラリインジケータ、 2・・・インジケータ、 6・・・インジケータ入力作成回路、 3・・・タイプレジスタ(実行サイクルの前のサイクル
に保持)、 4・・・分岐予測レジスタ(実行サイクルの前のサイク
ルに保持)、 5・・・インジケータ変更レジスタ(実行サイクルに保
持)、 7・・・分岐予測失敗検出回路。 θ(L−τ Q−<9 <q

Claims (1)

  1. 【特許請求の範囲】 先行制御回路を有し、かつ演算を実行する実行サイクル
    を持つパイプライン制御によりデータ処理を行なうデー
    タ処理装置において、 命令と前記命令による演算の実行結果の条件によりイン
    ジケータ入力信号を作成するインジケータ入力作成回路
    と、 前記インジケータ入力信号を実行サイクルでセットする
    インジケータと、 前記先行制御回路が、分岐命令の次の命令を分岐する側
    から作成したか分岐しない側から作成したかを示す内容
    を前記分岐命令の実行サイクルの前のサイクルに保持す
    る分岐予測レジスタと、前記命令がインジケータを更新
    するか否かを前記命令の実行サイクルに保持するインジ
    ケータ更新レジスタと、 前記命令、前記分岐命令の処理が続いて行なわれ、前記
    インジケータ更新レジスタに、前記インジケータを更新
    しないことが示されている場合に、前記インジケータ入
    力作成回路の出力から前記分岐命令の分岐するまたは分
    岐しないを判定し、その判定の結果が、前記分岐予測レ
    ジスタの内容により示されている分岐方向と異なる場合
    に、分岐予測失敗信号を出力する分岐予測失敗検出回路
    を有することを特徴とするデータ処理装置。
JP5734787A 1987-03-11 1987-03-11 デ−タ処理装置 Pending JPS63221429A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5734787A JPS63221429A (ja) 1987-03-11 1987-03-11 デ−タ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5734787A JPS63221429A (ja) 1987-03-11 1987-03-11 デ−タ処理装置

Publications (1)

Publication Number Publication Date
JPS63221429A true JPS63221429A (ja) 1988-09-14

Family

ID=13053039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5734787A Pending JPS63221429A (ja) 1987-03-11 1987-03-11 デ−タ処理装置

Country Status (1)

Country Link
JP (1) JPS63221429A (ja)

Similar Documents

Publication Publication Date Title
JPS63221429A (ja) デ−タ処理装置
JPS63221428A (ja) デ−タ処理装置
JP2503223B2 (ja) 先行制御方式
JPH04213727A (ja) 情報処理装置
JPH0991139A (ja) 情報処理装置
JP3012618B1 (ja) 被検査プログラムのデバグ方法とそのデバグ方式
JPH0335323A (ja) 命令実行制御方式
JPH03119424A (ja) 情報処理方式及び装置
JPH02183333A (ja) データ処理装置
JPS5971542A (ja) 演算処理装置
JPH0228724A (ja) 分岐命令制御方式
JPS6049439A (ja) マイクロプログラム制御方式
JPH03161834A (ja) 情報処理装置
JPH0535499A (ja) データ処理装置及びデータ処理方法
JPS62103736A (ja) ブランチ制御方式
JPS59178547A (ja) 命令リトライ方式
JPH0378832A (ja) デ―タ処理装置
JPS58127245A (ja) マイクロプログラム制御デ−タ処理装置
JPS63195736A (ja) パイプライン制御のための分岐命令処理装置
JPS586972B2 (ja) 情報処理装置
JPH02208723A (ja) 情報処理装置
JPH05250220A (ja) 実行アドレス生成回路
JPH02254541A (ja) 条件分岐命令の制御方式
JPH0769800B2 (ja) データ処理装置
JPS6191725A (ja) アドレスマツチ制御方式