JPH04372020A - データ処理方法およびデータ処理装置 - Google Patents

データ処理方法およびデータ処理装置

Info

Publication number
JPH04372020A
JPH04372020A JP15013991A JP15013991A JPH04372020A JP H04372020 A JPH04372020 A JP H04372020A JP 15013991 A JP15013991 A JP 15013991A JP 15013991 A JP15013991 A JP 15013991A JP H04372020 A JPH04372020 A JP H04372020A
Authority
JP
Japan
Prior art keywords
branch
instruction
buffer
section
executed
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.)
Withdrawn
Application number
JP15013991A
Other languages
English (en)
Inventor
Taiko Nozue
野末 泰功
Toshiharu Oshima
大島 俊春
Kenji Isane
健治 井實
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 JP15013991A priority Critical patent/JPH04372020A/ja
Publication of JPH04372020A publication Critical patent/JPH04372020A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は命令処理レベルのパイプ
ライン処理を行うデータ処理方法およびデータ処理装置
に関する。
【0002】
【従来の技術】従来、パイプライン方式のデータ処理装
置において、分岐用バッファと非分岐用バッファの2つ
のバッファを備え、条件分岐命令が検出された時には、
(分岐命令を実行した時に、分岐条件の成立する度合い
をその命令の分岐確率ということにすると、)その命令
の分岐確率が高いか否かを判断し、分岐条件判定が行わ
れるまではその分岐確率の高低によって非分岐側命令ま
たは分岐先命令のいずれか一方を解読し、実行する装置
があった(特開平1−175635号公報)。従来の条
件分岐命令におけるパイプライン処理の一例として図5
に分岐成立時の場合を、また図6に分岐不成立の場合を
示す。これらの例では、分岐確率の高い分岐命令が取り
込まれた場合を示し、命令1の実行では、最初のステー
ジのDC1でデコードし、2番目のステージのAC1で
分岐先アドレスを計算すると、3番目のステージにおけ
る並行処理される命令2(のAC2以降)はキャンセル
され、分岐先命令1の先取り(MI1,BF1)が行わ
れる。先取りされた分岐先命令は分岐用バッファに取り
込まれ、分岐用バッファから命令を取り出して解読し、
実行する。4番目のステージのOE1によって分岐の成
立/不成立を決定するための演算が行われ、5番目のス
テージのCHKにおいて条件判定がなされる。命令2の
実行は、命令1のDC1が終了した後、AC1が実行さ
れる2番目のステージで、並行してデコード(DC2)
が実行され、以後の命令はキャンセルされる。分岐不成
立の時は、命令1の実行における条件判定がなされるC
HKの後、ここまでに実行された分岐先命令1(DCb
1およびACb1)および分岐先命令2(DCb2)は
実行途中でキャンセルされ、非分岐側バッファからの読
み出しに切り換えられる。分岐先命令2,3の実行がキ
ャンセルされると、代わって命令2,3が順に実行され
て、デコード(DC2)が実行され、アドレスを計算す
るAC2が続けて実行され、このAC2に並行して命令
3のDC3が実行されるようになる。分岐成立の時は、
命令1のOE1が実行される4番目のステージで、並行
して分岐先命令1のデコード(DCb1)が実行され、
1ステージずつ遅れて次の分岐先命令2,分岐先命令3
のデコード(DCb2,DCb3)が順次並行して実行
され、アドレスを計算するACb2,ACb3の処理が
続く。この方法では、分岐成立時には2ステージ、分岐
不成立時には4ステージの遅れが生じる。
【0003】
【発明が解決しようとする課題】上記従来の技術におい
ては、パイプライン処理で分岐する場合に、分岐アドレ
ス計算とその分岐先命令フェッチのための時間が必要な
ので、分岐成立時には2ステージの遅れがあり、分岐不
成立時には4ステージの遅れが生じるため、高速化が困
難であり、また高速化を実現するためには特別な手段を
設けるなどハードウェアの多大な増加を必要とする等々
の問題点があった。
【0004】本発明は上記従来の技術における問題点を
解消するためのものであり、パイプライン処理における
条件分岐による遅れを少なくし、処理速度を速くするデ
ータ処理方法およびデータ処理装置について提供するこ
とを課題とする。
【0005】
【課題を解決するための手段】本発明は、パイプライン
処理の条件分岐による遅延を減少させることができるよ
うにするため、図1に示すように、データ処理方法にお
いては、先取りされた命令を非分岐用バッファ12a、
分岐用バッファ12bに分けて蓄えるバッファ部12を
有し、そのバッファ部12から命令を順次取り出して処
理を実行するパイプライン方式のデータ処理装置におい
て、条件分岐命令の分岐先命令が前記バッファ部12に
取り込まれるまでは非分岐用バッファ12aへ格納され
た命令を取り出して解読、実行を継続し、前記分岐先命
令を前記バッファ部12に取り込んだ後では分岐用バッ
ファ12bへ格納された分岐先命令を取り出して解読、
実行するように切り換えるとともに、条件判定時に分岐
成立した場合は非分岐用バッファ12aから読み出して
実行中の命令をキャンセルし、分岐不成立の場合には分
岐用バッファ12bから読み出して実行中の分岐先命令
をキャンセルすることを特徴とする。
【0006】この方法を実行するデータ処理装置におい
ては、実行すべき命令が格納される記憶部11と、該記
憶部11から取り出した命令が非分岐命令および分岐確
率の低い分岐命令であれば非分岐用バッファ12aに格
納し、分岐確率の高い分岐命令であれば分岐用バッファ
12bに格納するとともに、命令読み出し時に分岐フラ
ッグ信号Sbfを出力するバッファ部12と、該バッフ
ァ部12から読み出した命令をデコードし、そのデコー
ドした命令が分岐命令であるかを識別するとともに、バ
ッファ切換え信号Scを前記バッファ部12へ出力する
命令デコード部13と、デコードした命令により指定さ
れたアドレスを計算するとともに、命令先取り信号Sf
を前記記憶部11へ出力するアドレス計算部14と、デ
コードした命令をもとにマイクロ命令を発生し、分岐命
令の場合には分岐先命令の先取りを実行させるマイクロ
命令部15と、分岐条件の判定に必要な演算を実行する
演算部16と、該演算部16の結果を所定の記憶場所へ
書き込むか、あるいはデコードした分岐命令が分岐成立
か分岐不成立かを識別して非分岐側キャンセル信号側S
brまたは分岐側キャンセル信号Snbを出力し、さら
にまた格納用バッファを切り換えるとともに分岐フラッ
グ信号Sbfを変更するための分岐復帰信号Sbを前記
バッファ部12へ出力する書き込み・条件判定部17と
、分岐フラッグ信号Sbfと非分岐側キャンセル信号S
brまたは分岐側キャンセル信号Snbとを入力して命
令デコード部13、アドレス計算部14、マイクロ命令
部15、演算部16および書き込み・条件判定部17の
順に命令を取り込み、処理を実行するように制御すると
ともに、非分岐側キャンセル信号Sbrが入力されてい
る場合には実行中の非分岐命令をキャンセルし、分岐側
キャンセル信号Snbが入力されている場合には実行中
の分岐命令をキャンセルするパイプライン制御部18と
を備えたことを特徴とする。
【0007】
【作用】上記構成によって、データ処理方法では、バッ
ファ部12に先取りされた命令を非分岐用バッファ12
a、分岐用バッファ12bに分けて蓄え、蓄えられた命
令を順次取り出して処理を実行するに際して、条件分岐
命令の分岐先命令が前記バッファ部12に取り込まれる
までは非分岐用バッファ12aへ格納された命令を取り
出して解読、実行を継続し、前記分岐先命令を前記バッ
ファ部12に取り込んだ後は前記分岐先命令を取り出し
て解読、実行するように切り換えるとともに、条件判定
時において分岐成立した場合は非分岐用バッファ12a
から読み出して実行中の命令をキャンセルし、分岐不成
立の場合には分岐用バッファ12bから読み出して実行
中の分岐先命令をキャンセルする。これによって、パイ
プライン処理で分岐する場合に、分岐アドレス計算とそ
の分岐先命令フェッチのための時間が必要になって分岐
成立時に2ステージの遅れがあるものの、分岐不成立時
であっても、条件判定のための時間については処理を進
めており、単に先行した命令をキャンセルするだけで処
理も簡単になり、それ以上の遅れを生じることがなく、
処理が高速化され、また高速化を実現するための特別な
手段を設ける必要がなくなり、装置構成を簡易にする。
【0008】そして、データ処理装置においては、パイ
プライン制御部18が分岐フラッグ信号Sbfと非分岐
側キャンセル信号Sbrまたは分岐側キャンセル信号S
nbとを組み合わせて、命令デコード部13、アドレス
計算部14、マイクロ命令実行部15、演算部16およ
び書き込み・条件判定部17の順に命令を1ステージ毎
に取り込ませ、各処理の実行を制御する。また、バッフ
ァ部12では記憶部11から取り出した命令が非分岐命
令および分岐確率の低い分岐命令であれば非分岐用バッ
ファ12aに格納し、分岐確率の高い分岐命令であれば
分岐用バッファ12bに格納するとともに、命令読み出
し時にいずれの命令が読み出されたかを示す分岐フラッ
グ信号Sbfを出力する。パイプライン制御部18の制
御に従い、命令デコード部13がバッファ部12から読
み出した命令をデコードして、そのデコードした命令が
非分岐命令か分岐命令であるかを識別するとともに、分
岐命令であれば非分岐用バッファ12aから分岐用バッ
ファ12bに切り換え、非分岐命令であれば分岐用バッ
ファ12bから非分岐用バッファ12aに切り換えるバ
ッファ切換え信号Scを出力する。そしてアドレス計算
部14がデコードした命令により指定されたアドレスを
計算するとともに、分岐命令であれば命令先取り信号S
fを前記記憶部11へ出力して分岐先命令の取り込みに
変更させる。それからマイクロ命令部15がデコードし
た命令をもとにマイクロ命令を発生し、分岐命令の場合
には分岐先命令の先取りを実行させる。続けて演算部1
6が分岐命令の場合には分岐条件の判定に必要な演算を
実行する。書き込み・条件判定部17がデコードした分
岐命令が分岐成立か分岐不成立かを識別して、分岐不成
立であれば分岐側キャンセル信号Snbを出力し、また
分岐成立であれば非分岐側キャンセル信号Sbrを出力
し、さらに条件判定の結果により分岐条件が終了すれば
格納用バッファを切り換えるとともに分岐フラッグ信号
Sbfを変更するための分岐復帰信号Sbを前記バッフ
ァ部12へ出力して以後の格納先を分岐用バッファ12
bから非分岐用バッファ12aに切り換える。パイプラ
イン制御部18では、書き込み・条件判定部17から非
分岐側キャンセル信号Sbrを入力した場合には分岐フ
ラッグ信号Sbfによって示されている実行中の非分岐
命令をキャンセルし、分岐側キャンセル信号Snbを入
力した場合には分岐フラッグ信号Sbfによって示され
ている実行中の分岐命令をキャンセルして、以後の処理
ではキャンセルされていない必要な命令のみ継続して実
行させる。
【0009】
【実施例】本発明における以下の実施例では、通常非分
岐用バッファが動作可能に設定されている場合について
説明する。
【0010】図2は一実施例装置の構成を表す図である
。ここに、21は実行すべき各命令が格納される記憶部
である。22は、記憶部21から命令を取り出し、その
取り出された命令が非分岐命令および分岐確率の低い分
岐命令であれば非分岐用バッファ22aに格納し、分岐
確率の高い分岐命令であれば分岐用バッファ22bに切
り換えて格納するとともに、読み出し時に分岐フラッグ
信号S1を出力するバッファ部である。バッファ部22
においては、通常、非分岐用バッファ22aが動作可能
に設定されていて、分岐確率の高い命令が取り込まれた
場合に分岐命令フェッチ時に分岐先命令を分岐用バッフ
ァ22bへ格納して先取りできるように設定を切り換え
、分岐用バッファ22bを動作可能にする。23は、命
令をデコードし、そのデコードした命令が分岐命令であ
るかを識別するとともに、バッファ切換え信号S2をバ
ッファ部22へ出力する命令デコード部である。24は
、実行すべき命令のアドレスを算出するとともに、命令
先取り信号S3を記憶部21へ出力するアドレス計算部
である。25は、デコードした命令をもとにしてマイク
ロ命令(制御命令)を発生するマイクロ命令部である。 26は、分岐条件の判定に必要な演算を実行する演算部
である。27は、演算部26の結果をレジスタやメモリ
などの規定の記憶場所へ書き込むか、あるいはデコード
した分岐命令が分岐成立か分岐不成立かを演算部26の
結果より識別するとともに、バッファ読み出し時に出力
される分岐フラッグ信号S1を切り換える分岐復帰信号
S4をバッファ部22へ出力し、さらに分岐側キャンセ
ル信号S5または非分岐側キャンセル信号S5’を出力
する書き込み・条件判定部である。28は、バッファ部
22からの分岐フラッグ信号S1と書き込み・条件判定
部27からの分岐側キャンセル信号S5または非分岐側
キャンセル信号S5’を入力し、それらの入力信号を組
み合わせた制御信号をパイプラインの各ステージごとに
入力して、命令デコード部23、アドレス計算部24、
マイクロ命令部25、演算部26のそれぞれに対して、
非分岐命令か分岐命令かいずれの命令を実行しているの
かを示すとともに、以後の命令をキャンセルするか否か
を指示するパイプライン制御部である。パイプライン制
御部28は、バッファ部22からの分岐フラッグ信号S
1を順に入力して1ステージ分の時間だけ保持したのち
信号出力するフリップフロップからなる4つのフラッグ
保持部28a,28b,28c,28dと、各フラッグ
保持部28a,28b,28c,28dから出力された
信号と書き込み・条件判定部27からの分岐側キャンセ
ル信号S5を入力してそれらの論理積を出力するアンド
回路31a,31b,31c,31dと、各フラッグ保
持部28a,28b,28c,28dから出力された信
号を反転させた信号と書き込み・条件判定部27からの
非分岐側キャンセル信号S5’を入力してそれらの論理
積を出力するアンド回路32a,32b,32c,32
dと、アンド回路31a,31b,31c,31dおよ
びアンド回路32a,32b,32c,32dからの出
力信号を入力してそれらの論理和を出力し、それぞれ命
令デコード部23、アドレス計算部24、マイクロ命令
部25、演算部26に対する制御信号を与えるオア回路
33a,33b,33c,33dとからなる制御信号出
力部29a,29b,29c,29dとを備える。
【0011】このように構成した実施例においては、記
憶部21から取り出された命令が非分岐側命令および分
岐確率の低い分岐命令の場合、命令は非分岐用バッファ
22aに格納され、それからこのバッファに蓄えられた
命令がパイプライン制御部28からの制御信号に従って
、命令デコード部23、アドレス計算部24、マイクロ
命令部25、演算部26および書き込み・条件判定部2
7へ転送されて、順に処理される。分岐確率の高い分岐
命令の場合、命令デコード部23に命令が取り込まれ、
デコードされた命令が分岐確率の高い分岐命令であるこ
とが認識されると、バッファ切換え信号S2を出力し、
バッファ部22における格納場所として分岐用バッファ
22bが動作するように切換え、分岐フラグ信号S1を
ハイレベルとして出力する。アドレス計算部24では命
令デコード部23の出力に基づき分岐先アドレスが計算
され、命令先取り信号S3が出力されて、命令先取り信
号S3を入力した記憶部21から分岐先命令をバッファ
部22の分岐用バッファ22b側へ格納できるようにす
る。つぎのステージに進み、マイクロ命令部25では、
その命令をもとにしてマイクロ命令が発生され、記憶部
21における指定位置の命令が分岐用バッファ22bに
格納される。演算部26では、分岐条件の成立/不成立
の判定を行うための演算を行う。その演算部26の結果
が書き込み・条件判定部27に転送されると、書き込み
・条件判定部27では分岐の成立/不成立の確定がなさ
れ、分岐成立であればその分岐条件が判定され、分岐復
帰信号S4をローレベルとして分岐用バッファ22bを
そのまま使用し、非分岐側キャンセル信号S5’をハイ
レベルとして出力する。そして書き込み・条件判定部2
7から出力された非分岐側キャンセル信号S5’が各制
御信号出力部29a,29b,29c,29dを介して
命令デコード部23,アドレス計算部24,マイクロ命
令部25,演算部26に入力され、現時点で実行中の非
分岐命令がすべてキャンセルされ、分岐先命令のみ継続
して実行することができるようになる。その後、分岐先
命令の実行がすべて終わり、書き込み・条件判定部27
が分岐条件の終りを判定して分岐復帰信号S4をハイレ
ベルにして出力すると、分岐復帰信号S4を入力したバ
ッファ部22が分岐用バッファ22bから非分岐用バッ
ファ22aに切り換え、非分岐命令や分岐確率の低い分
岐命令を記憶部21から非分岐用バッファ22aに書き
込み、読み出すことができるようにする。もし、書き込
み・条件判定部27における命令の分岐の成立/不成立
の判定が、分岐不成立であれば分岐復帰信号S4をハイ
レベルとし、分岐側キャンセル信号S5をハイレベルと
して出力する。分岐復帰信号S4を入力したバッファ部
22では非分岐用バッファ22aを動作できるようにし
、分岐キャンセル信号S5を入力したパイプライン制御
部28では、命令デコード部23,アドレス計算部24
,マイクロ命令部25,演算部26に制御信号を出力し
て、現時点で実行中の分岐先命令をすべてキャンセルさ
せ、非分岐先命令のみ継続して実行することができるよ
うにする。このパイプライン処理として、図3に分岐成
立時の場合を、また図4に分岐不成立の場合を示す。こ
れらの例では、分岐確率の高い分岐命令が取り込まれた
場合、命令1の実行では、最初のステージにおいて命令
1がDC1でデコードされ、2番目のステージではAC
1で分岐先アドレスを計算する、これと同時に、並行処
理される命令2がDC2でデコードされる。3番目のス
テージでは、命令1がMI1,BF1でマイクロ命令の
発生および分岐先フェッチが実行されて分岐先命令1の
先取りが行われ、並行処理される命令2がAC2でアド
レスが計算され、さらに並行処理される命令3がDC3
でデコードされる。先取りされた分岐先命令1は分岐用
バッファ22bに取り込まれる。4番目のステージでは
命令1がOE1で分岐の成立/不成立を決定するための
演算が行われ、命令2がMI2でマイクロ命令が発生さ
れ、命令3がAC3でアドレス計算され、そして、並行
処理される分岐先命令1がDCb1でデコードされる。 この時、バッファ部22から出力される分岐フラッグ信
号S1はハイレベルにされる。5番目のステージでは命
令1が(OW1,)CHKにおいて条件判定がなされ、
分岐成立であれば非分岐側キャンセル信号S5’をハイ
レベル信号として出力する。命令2はOE2で演算が行
われ、命令3がMI3でマイクロ命令が発生され、分岐
先命令1がACb1でアドレス計算され、そして、並行
処理される分岐先命令2がDCb2でデコードされる。 6番目のステージでは非分岐側キャンセル信号S5’の
出力により命令2,3がキャンセルされて実行されず、
分岐先命令1はMIb1でマイクロ命令が発生され、分
岐先命令2がACb2でアドレス計算され、そして、並
行処理される分岐先命令3がDCb3でデコードされる
。7番目のステージ以降では、分岐先命令1,2,3が
次の処理を実行し、このような状態が書き込み・条件判
定部27から出力される分岐復帰信号S4および分岐側
キャンセル信号S5あるいは非分岐側キャンセル信号S
5’の変更が行われるまで続けられる。分岐不成立の時
は、命令1の実行における条件判定がなされるCHKの
後、ここまでに実行された分岐先命令1(DCb1およ
びACb1)および分岐先命令2(DCb2)はキャン
セルされ、書き込み・条件判定部27から出力された分
岐復帰信号S4によって、バッファ部22では非分岐用
バッファ22aからの読み出しに切り換える。そして次
のステップで命令4のデコード(DC4)が実行される
。 次のステージではアドレスが計算され(AC4)、これ
に並行して命令5のデコード(DC5)が実行されるよ
うになる。
【0012】このように実施例では、条件分岐命令にお
いて分岐条件の判定が行われるまでは、非分岐側命令(
命令2,3)と分岐先命令1,2とが同時に実行され、
条件判定後にいずれか一方がキャンセルされるようにな
るので、処理の遅れが分岐成立時と分岐不成立時のいず
れであっても、2ステージの遅れで済み、分岐不成立時
においては従来よりも2ステージ分速く処理が実行でき
る。これにより、二重ループを使用するときには、内側
からのブレイクが必ず外側ループ回数だけあるため、従
来の処理に比較して、外側ループ回数*2ステージ分速
く処理できる。従って、このようなループが頻繁に出現
する通常のプログラムでは、処理速度を大幅に速くし、
処理効率を向上させることができる。
【0013】
【発明の効果】以上のように本発明では、データ処理方
法においては、バッファ部12に先取りされた命令を非
分岐用バッファ12a、分岐用バッファ12bに分けて
蓄え、そのバッファ部12から格納された命令を順次取
り出して処理を実行するに際して、条件判定時において
分岐成立した場合は非分岐バッファ12aから読み出し
て実行中の命令をキャンセルし、分岐不成立の場合には
分岐バッファ12bから読み出して実行中の分岐先命令
をキャンセルするようにしたことによって、パイプライ
ン処理で分岐命令を実行する場合に、分岐不成立時であ
っても、条件判定するまでは処理を進めて、先行した分
岐先命令を条件判定後にキャンセルさせ、実行シーケン
スを簡単にして、処理の遅れを必要最小限に限定するこ
とができ、処理を高速化することができる。また、高速
化するための特別な手段を設ける必要がなくなり、簡易
な装置構成にすることができる。
【0014】また、データ処理装置においては、バッフ
ァ部12では記憶部11から取り出した命令が非分岐命
令および分岐確率の低い分岐命令であれば非分岐用バッ
ファ12aに格納し、分岐確率の高い分岐命令であれば
分岐用バッファ12bに格納するとともに、命令読み出
し時にいずれの命令が読み出されたかを示す分岐フラッ
グ信号Sbfを出力し、書き込み・条件判定部17では
デコードした命令の判定結果が分岐成立か分岐不成立か
を識別して、分岐不成立であれば分岐側キャンセル信号
Snbを出力し、また分岐成立であれば非分岐側キャン
セル信号Sbrを出力し、さらに条件判定の結果により
分岐条件が終了すれば格納用バッファを切り換えるとと
もに分岐フラッグ信号Sbfを変更するための分岐復帰
信号Sbを前記バッファ部12へ出力して以後の格納先
を分岐用バッファ12bから非分岐用バッファ12aに
切り換え、パイプライン制御部18が分岐フラッグ信号
Sbfと非分岐側キャンセル信号Sbrまたは分岐側キ
ャンセル信号Snbとを組み合わせて、命令デコード部
13、アドレス計算部14、マイクロ命令部15、演算
部16および書き込み・条件判定部17の順に命令を1
ステージ毎に取り込ませ、各処理の実行を制御するとと
もに、書き込み・条件判定部17から非分岐側キャンセ
ル信号Sbrを入力した場合には分岐フラッグ信号Sb
fによって示されている実行中の非分岐命令をキャンセ
ルし、分岐側キャンセル信号Snbを入力した場合には
分岐フラッグ信号Sbfによって示されている実行中の
分岐先命令をキャンセルして、以後の処理ではキャンセ
ルされていない必要な命令のみ継続して実行させるよう
にしたことによって、分岐命令の実行における分岐不成
立時であっても、条件判定するまでは処理を進めて、先
行した分岐先命令を条件判定後にキャンセルさせ、実行
シーケンスを簡単にして、処理の遅れを必要最小限に限
定でき、高速化するための特別な手段を設けることなく
処理を高速化することができる。このため、簡易で高速
な装置構成を実現することができる。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】実施例の構成図である。
【図3】実施例におけるパイプライン処理(分岐成立)
説明図である。
【図4】実施例におけるパイプライン処理(分岐不成立
)説明図である。
【図5】従来のパイプライン処理(分岐成立)説明図で
ある。
【図6】従来のパイプライン処理(分岐不成立)説明図
である。
【符号の説明】
11    記憶部 12    バッファ部 12a  非分岐用バッファ部 12b  分岐用バッファ部 13    命令デコード部 14    アドレス計算部 15    マイクロ命令部 16    演算部 17    書き込み・条件判定部 18    パイプライン制御部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  先取りされた命令を非分岐用バッファ
    (12a)、分岐用バッファ(12b)に分けて蓄える
    バッファ部(12)を有し、そのバッファ部(12)か
    ら命令を順次取り出して処理を実行するパイプライン方
    式のデータ処理装置において、条件分岐命令の分岐先命
    令が前記バッファ部(12)に取り込まれるまでは非分
    岐用バッファ(12a)へ格納された命令を取り出して
    解読、実行を継続し、前記分岐先命令を前記バッファ部
    (12)に取り込んだ後では分岐用バッファ(12b)
    へ格納された分岐先命令を取り出して解読、実行するよ
    うに切り換えるとともに、条件判定時に分岐成立した場
    合には非分岐用バッファ(12a)から読み出して実行
    中の命令をキャンセルし、分岐不成立の場合には分岐用
    バッファ(12b)から読み出して実行中の分岐先命令
    をキャンセルすることを特徴とするデータ処理方法。
  2. 【請求項2】  実行すべき命令が格納される記憶部(
    11)と、該記憶部(11)から取り出した命令が非分
    岐命令および分岐確率の低い分岐命令であれば非分岐用
    バッファ(12a)に格納し、分岐確率の高い分岐命令
    であれば分岐用バッファ(12b)に格納するとともに
    、命令読み出し時に分岐フラッグ信号Sbfを出力する
    バッファ部(12)と、該バッファ部(12)から読み
    出した命令をデコードし、そのデコードした命令が分岐
    命令であるかを識別するとともに、バッファ切換え信号
    Scを前記バッファ部(12)へ出力する命令デコード
    部(13)と、デコードした命令により指定されたアド
    レスを計算するとともに、命令先取り信号Sfを前記記
    憶部(11)へ出力するアドレス計算部(14)と、デ
    コードした命令をもとにマイクロ命令を発生し、分岐命
    令の場合には分岐先命令の先取りを実行させるマイクロ
    命令部(15)と、分岐条件の判定に必要な演算を実行
    する演算部(16)と、該演算部(16)の結果を所定
    の記憶場所へ書き込むか、あるいはデコードした分岐命
    令が分岐成立か分岐不成立かを識別して非分岐側キャン
    セル信号Sbrまたは分岐側キャンセル信号Snbを出
    力し、さらに格納用バッファを切り換えるとともに分岐
    フラッグ信号Sbfを変更するための分岐復帰信号Sb
    を前記バッファ部(12)へ出力する書き込み・条件判
    定部(17)と、分岐フラッグ信号Sbfと非分岐側キ
    ャンセル信号Sbrまたは分岐側キャンセル信号Snb
    とを入力して命令デコード部(13)、アドレス計算部
    (14)、マイクロ命令部(15)、演算部(16)お
    よび書き込み・条件判定部(17)の順に命令を取り込
    み、処理を実行するように制御するとともに、非分岐側
    キャンセル信号Sbrが入力されている場合には実行中
    の非分岐命令をキャンセルし、分岐側キャンセル信号S
    nbが入力されている場合には実行中の分岐命令をキャ
    ンセルするパイプライン制御部(18)とを備えたこと
    を特徴とするデータ処理装置。
JP15013991A 1991-06-21 1991-06-21 データ処理方法およびデータ処理装置 Withdrawn JPH04372020A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15013991A JPH04372020A (ja) 1991-06-21 1991-06-21 データ処理方法およびデータ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15013991A JPH04372020A (ja) 1991-06-21 1991-06-21 データ処理方法およびデータ処理装置

Publications (1)

Publication Number Publication Date
JPH04372020A true JPH04372020A (ja) 1992-12-25

Family

ID=15490347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15013991A Withdrawn JPH04372020A (ja) 1991-06-21 1991-06-21 データ処理方法およびデータ処理装置

Country Status (1)

Country Link
JP (1) JPH04372020A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7340587B2 (en) 2004-06-15 2008-03-04 Seiko Epson Corporation Information processing apparatus, microcomputer, and electronic computer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7340587B2 (en) 2004-06-15 2008-03-04 Seiko Epson Corporation Information processing apparatus, microcomputer, and electronic computer

Similar Documents

Publication Publication Date Title
EP1003095B1 (en) A computer system for executing branch instructions
JP2796797B2 (ja) ディジタル命令プロセッサ制御装置によってインターラプトルーチンを処理する方法
US5421020A (en) Counter register implementation for speculative execution of branch on count instructions
US5809294A (en) Parallel processing unit which processes branch instructions without decreased performance when a branch is taken
US6981131B2 (en) Early condition code evaluation at pipeline stages generating pass signals for controlling coprocessor pipeline executing same conditional instruction
US5522084A (en) Method and system for invalidating instructions utilizing validity and write delay flags in parallel processing apparatus
JPH04372020A (ja) データ処理方法およびデータ処理装置
KR920006770B1 (ko) 명령을 페치(fetch)하기 위한 제어 시스템
JP2002342075A (ja) マイクロプロセッサ
JP3493110B2 (ja) 高速分岐処理装置
JP3475861B2 (ja) データ処理装置
JP2591325B2 (ja) 分岐制御装置
JP2503223B2 (ja) 先行制御方式
JPH04373023A (ja) データ処理装置
JPH0774992B2 (ja) データ処理装置
JPH01271842A (ja) 情報処理装置
JPH07239782A (ja) 演算処理装置
JPH10283182A (ja) パイプライン型情報処理装置
JPS63168730A (ja) 分岐命令処理装置
JPH01175635A (ja) データ処理装置
JPS63221428A (ja) デ−タ処理装置
JPH0769800B2 (ja) データ処理装置
JPH05257686A (ja) 命令キャッシュ回路
JPH08171492A (ja) 情報処理装置
JPH0373022A (ja) 中央処理装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980903