JPS635433A - ブランチ制御方式 - Google Patents

ブランチ制御方式

Info

Publication number
JPS635433A
JPS635433A JP61150331A JP15033186A JPS635433A JP S635433 A JPS635433 A JP S635433A JP 61150331 A JP61150331 A JP 61150331A JP 15033186 A JP15033186 A JP 15033186A JP S635433 A JPS635433 A JP S635433A
Authority
JP
Japan
Prior art keywords
instruction
branch
state
condition code
bcr
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
JP61150331A
Other languages
English (en)
Inventor
Kuniki Morita
國樹 森田
Kunihiro Torikawa
酉川 晋宏
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 JP61150331A priority Critical patent/JPS635433A/ja
Publication of JPS635433A publication Critical patent/JPS635433A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 パイプライン処理を行う計算機システムにおいて、テス
トアンダマスク(TM)命令と、ブランチオンコンディ
ションコード(BC,又はBCR)命令とが連続して実
行される場合に、該テストアンダマスク(TM)命令の
条件コード(CC)のセットと、ブランチオンコンディ
ションコード(BC,又はBCR)命令の分岐判定とを
、該パイプラインの同じサイクルで行う手段を設けるこ
とにより、該7M命令と、BG(又はBCR)命令が連
続する場合の処理を高速化するようにしたものである。
〔産業上の利用分野〕
本発明は、パイプライン処理を行う計算機システムにお
いて、テストアンダマスク(TM)命令と。
ブランチオンコンディションコード(BG、又はBCR
)命令とが連続して実行される場合のブランチ制御方式
に関する。
最近の計算機技術の進歩に伴って、各種の分野において
、計算機システムによるデータ処理が盛んになっており
、該計算機システムで処理されるデータ量の増大化に伴
って、計算機システムの処理能力に対する要求は益々大
きくなる動向にある。
然して、パイプライン処理を行う計算機システムにおい
ては、各命令当たりの実行ステートの長さくステート数
)が、該計算機システム全体の処理能力に結びついてお
り、より高速な計算機システムとする為には、該命令当
たりの実行ステートの数を少なくすることが必要とされ
る。
所で、−aのデータ処理においては、テストアンダマス
ク(TM)命令のダイナミックステ、プ数が比較的に多
いことが知られており、該テストアンダマスク(Tl’
り命令の次には、殆どブランチオンコンディションコー
ド(BC)命令が続くので、該テストアンダマスク(T
M)命令と、ブランチオンコンディションコード(BC
)命令とが連続して処理される場合のステート数を削減
するブランチ制御方式が要求される。
第4図はパイプライン処理透けう計算機システムの演算
部の構成例を示した図であり、第5図は従来のTM命令
/BC命令の処理方式を説明する図であり、第5図(a
)は構成例を示し、第5図(bl) 、 (b2)は該
TM命令/BC命令処理動作のタイムチャートを示して
いる。
先ず、第4図によって、本計算機システムにおける加算
命令の動作の概略を説明する。
通常、パイプライン計算機システムにおいては、各命令
が演算パイプラインに投入されると、D、 A。
E、C,Wの各ステートの順で動作する。ここで、Dス
テート:命令コードのデコード Aステート:オペランドーアドレスの計算Eステート;
命令の実行 Cステート:割り込みの有無、パリティ等のチエツク Wステート:汎用レジスタ(GR)、又は浮動小数点レ
ジスタ(PR)への実行結果の格納を意味している。
従って、加算命令においては、■のDステートにおいて
、命令バッファ(IBF) 2の命令がデコードされ、
加算命令であることが認識されることにより、以後の各
ステートが実行される。
該加算命令が次命令バッファ(NiBF) 3にシフト
されると、次のAステート■に入り、オペランドアドレ
スが計算され、該アドレスに従ってオペランドアドレス
が行われると共に、該加算命令が指定する汎用レジスタ
(GR) 9に対するオペランド読み出しが行われる。
該加算命令がカレント命令バッファ(CIBF) 4に
シフトされると、次のEステート■に入り、ワークレジ
スタA(WR−A) 5にバッツァメモリ(BS) 1
からオペランドデータがフェッチされると共に、汎用レ
ジスタ(GR) 9から特定のレジスタの内容がワーク
レジスタA(WR−8) 6に設定■され、次のEステ
ートにおいて該ワークレジスタA(WR−A) 5の内
容と、ワークレジスタB (WR−B) 6の内容とが
、加算器(ADDER) 10で加算■され、ワークレ
ジスタA(匈R−C) 7に格納■される。
そして、Cステート■を経て、次のWステートにおいて
、レジスタ(LWO) 8から、当該加算命令が指定す
る書き込み汎用レジスタ(GR) 9に書き込まれる。
このような演算パイプラインを備えた計算機システムで
、テストアンダマスク(TM)命令(以下、7M命令と
云う)と、°ブランチオンコンディションコード(BC
)命令(以下、BC命令、又はBCR命令と云う)を実
行する場合の動作を説明する。
先ず、7M命令は、 で表され、第2オペランド■2部(1バイト)は、第1
オペランドで指定されたアドレスの主記憶の最初の1バ
イトの内容に、ビット対応するマスクデータとして使用
され、該マスクが1“である第1オペランドのビットが
選択され、ビットの状態によってコンディションコード
(条件コード)(CC)が設定される。即ち、 CCO:選択されたビットが全て“Ql、又はマスク値
が°O”である。
CCI:選択されたビットが°0゛と°l”の混合であ
る。
CC2:未定義 (:C3:選択されたビットが全て°1”である。
次に、BCR命令は、 で表され、BC命令は、 で表され、61部が4ビツトのマスクデータとして使用
され、上記条件コードの4つの状態に対応する。そして
、該条件コードが指定されたマスクデータと一致すると
、第2オペランドで指定されたアドレスの命令に分岐す
る。該マスクデータと一致しない場合には、分岐不成功
ということで次の命令に制御が移るように機能する。
上記マスクデータと条件コードとの対応は次の通りであ
る。
上記において、分岐アドレスは、BCR命令のときは、
R2部で指定される汎用レジスタの、例えば、ビット8
〜31で示されるアドレスが使用され、BC命令のとき
は、第2オペランドから求められるアドレスが使用され
る。
このような7M命令と、 BC命令(又はBCR命令)
とが、連続して当該演算パイプラインに投入された場合
、従来方式においては、第5図(bl) 、 (b2)
のタイムチャートで示した動作となる。即ち、本図にお
いて、(bl)は分岐成功の場合を示し。
(b2)は分岐不成功の場合を示している。
何れの場合においても、耐命令は、最初のEステートで
第1オペランドをフェッチし、ワークレジスタA(WR
−A) 5にセット■すると共に、第2オペランド12
部のマスクデータをワークレジスタA(wR−B) 6
にセットし、次のEステートで該第1オペランドと、マ
スクデータとから条件コード(CC)設定回路11でコ
ンディションコード(条件コード) (CC)を作る。
後続のBC命令(又はBCR命令)は、上記7M命令の
Eステート終了後、直ぐに該BC命令(又はBCR命令
)のEステートに入り、上記耐命令がセットした条件コ
ード(CC)と、自命令の門1部が示すマスクデータと
を、分岐条件判定部12で判定して、−致出力が得られ
ると、分岐成功と云うことで、第2オペランドが指定す
るアドレスに分岐するが、−致出力が得られないときに
は、分岐不成功ということで、次の命令に制御を移すよ
うに機能する。
〔発明が解決しようとする問題点〕
パイプライン処理を行う計算機システムにおいて、7M
命令と、 BC命令(又はBCR命令)とが連続して、
演算パイプラインに投入されたときの従来のブランチ制
御方式では、第5図(bl) 、 (b2)から明らか
なように、7M命令のEステートからBC命令(又はB
CR命令)のEステート迄、3サイクルの実行ステート
を必要としていた。
本発明は上記従来の欠点に鑑み、パイプライン処理を行
う計算機システムにおいて、7M命令と。
BC命令(又はBCR命令)とが連続して、演算パイプ
ラインに投入されときのEステートの処理サイクルの数
を削減する方法を提供することを目的とするものである
〔問題点を解決するための手段〕
第1図は本発明のブランチ制御方式の原理ブロック図で
ある。
本発明においては、少なくとも、テストアンダマスク(
TM)命令と、ブランチオンコンディションコード(B
C)命令とを備えたパイプライン処理ヲ行う計算機シス
テムにおいて、 上記テストアンダマスク(TM)命令のオペランドと、
マスクデータ、及び該テストアンダマスク(T旧命令に
続くブランチオンコンディションコード(BC)命令の
マスクデータとを、上記パイプラインの同じサイクルで
、演算レジスタ(5,6,7)にセントし、 該テストアンダマスク(TM)命令のコンデイシコンコ
ード(CG)の設定と、次のブランチオンコンディショ
ンコード(BC)命令での、上記コンディションコード
(CC)による分岐条件の判定とを、TM−BC判定機
構13において、同時に実行するように構成する。
[作用〕 即ち、本発明によれば、パイプライン処理を行う計算機
システムにおいて、テストアンダマスク(TM)命令と
、ブランチオンコンディションコード(BCl又はBC
R)命令とが連続して実行される場合に、該テストアン
ダマスク(TM)命令の条件コード(CG)のセットと
、ブランチオンコンディションコード(BC,又はBC
R)命令の分岐判定とを、該パイプラインの同じサイク
ルで行う手段を設けることにより、該耐命令と、BC(
又はBCR)命令が連続する場合の処理を高速化するよ
うにしたものであるので、計算機システムの全体として
の処理能力を向上させる効果がある。
〔実施例〕
以下本発明の実施例を図面によって詳述する。
第2図は本発明の一実施例を示した図であり、第3図は
本発明による分岐動作をタイムチャートで示した図であ
り、(a)は分岐成功の場合を示し、(b)は分岐不成
功の場合を示している。そして、第1図で示したBG命
令(又はBCR命令)のマスクデータをワークレジスタ
C(WR−C) 7に設定する機構、及びTM−BC判
定機構13が本発明を実施するのに必要な手段である。
尚、企図を通して同じ符号は同じ対象物を示している。
以下、第1図を参照しながら、第2図、第3図によって
、本発明のブランチ制御方式を説明する。
先ず、第1図、第3図によって、本発明によるブランチ
制御の動作を説明する。
耐命令の最初のCステートにおいて、第1オペランドを
ワークレジスタA(WR−A) 5にセットし、マスク
データ(I2)をワークレジスタB(WR−B) 6に
セントすると同時に、後続のBC命令(又はBCR命令
)のマスクデータ(M2)を、次命令バッファ(NIB
F) 3からワークレジスタC(WR−C) 7にセッ
ト■する。(第3図■参照) そして、7M命令は次のCステートで、条件コード(C
C)をセット■すると同時に、BC命令(又は、BCR
命令)のCステートにおいて、上記耐命令の条件コード
(CC)を設定する論理条件と、BC命令(又は、OC
R命令)のマスクデータとの分岐論理をTM−BC判定
機構13でとることにより、上記条件コード(CC)の
設定と、QC命令(又は、BCI?命令)の分岐条件の
判定とを同時に行うことができる。(第3図■参照) 一般に、パイプライン制御はオートマトンで動作してい
るので、先行命令(本実施例においては、7M命令)の
Cステートが終了しないと、後続命令(本実施例におい
ては、BC命令(又はBCR命令))はCステートに入
ることができない為、本発明のブランチ制御方式におい
ては、次命令バッファ(NIBF) 3に設定されてい
るBC命令(又はBCR命令)と、カレント命令バッフ
ァ(CIBF) 4にシフトされている7M命令とを、
該耐命令の最初のCステートで認識■して、第3図のT
M−BC−TMG信号を生成し、該7M命令の次のステ
ートをCステート (アンダーラインで示す)とする変
換を行うことにより、そのサイクルにおいて、該BC命
令(又はBCR命令)がCステートに入ることができる
ようにしている。
このようなステートの変換を行っても、Cステートは、
パリティチエツク等のチエツク動作が主体であって、該
命令の特定の処理を行わせる機能を持っていない為、該
7M命令においては、該Cステートにおいても、従来の
Cステートと同じ処理を実行させることができる。
このようにして、7M命令と、BC命令(又はBCR命
令)とが連続している場合には、耐命令の最後のEステ
ート(実際には、Cステート)とBC命令(又はBCR
命令)の最初のEステートとを同じサイクルで実行させ
ることにより、7M命令のEステートと、次のBC命令
(又はBCR命令)のEステートの2サイクルで、条件
コード(CC)の設定と1分岐条件の判定とを実行する
ことができ、従来の3サイクル処理と比較して、1サイ
クルの処理時間の短縮を図ることができる。
第2図は、第1図で示したTM−BC判定機構13の具
体例を示した図であって、ワークレジスタA(WR−A
) 5に設定されている7M命令の第1オペランド(T
M 0PI(0)〜(7)) と、ワークレジスタB(
WR−B) 6に設定されている耐命令のオペランド1
2部(TM 12(0)〜(7))とから、図示の論理
によって、条件コード(CC) O〜3を生成し、同時
に、該条件コード(CC)の出力と、BC命令(又はB
CR命令)のマスクデータ(BG MASK(0)〜(
3))とを、ビット対応の論理積をとることにより、当
該BC命令(又はBCR命令)の分岐条件をも判定して
いる。
このように、本発明は、パイプライン処理を行う計算機
システムにおいて、演算パイプラインにワークレジスタ
が3個備えられていることに着目し、耐命令と、 BC
命令(又はBCR命令)とが連続して、演算パイプライ
ンに投入されたことを認識したときには、什命令の最初
のEステートにおいて、該耐命令のオペランドとマスク
データ、及び後続のBC命令(又はBCR命令)のマス
クデータとを、上記3個のワークレジスタに同時に設定
し、該後続のBC命令(又はBCR命令)のEステート
と、先行の耐命令の最後のEステートをCステートに変
換したステートとを、同時に実行させるようにして、7
M命令の条件コードの設定と、該条件コードとBC命令
(又はBCR命令)のマスクデータとによる分岐条件の
判定とを、38C命令(又はBCR命令)のEステート
で行うようにした所に特徴がある。
〔発明の効果〕
以上、詳細に説明したように、本発明のブランチ制御方
式は、パイプライン処理を行う計算機システムにおいて
、テストアンダマスク(TM)命令と。
ブランチオンコンディションコード(BC,又はBCR
)命令とが連続して実行される場合に、該テストアンダ
マスク(TM)命令の条件コード(CG)のセットと、
ブランチオンコンディションコード(BC,又はBCR
)命令の分岐判定とを、該パイプラインの同じサイクル
で行う手段を設けることにより、該耐命令と。
BC(又はBCR)命令が連続する場合の処理を高速化
するようにしたものであるので、計算機システムの全体
としての処理能力を向上させる効果がある。
【図面の簡単な説明】
第1図は本発明のブランチ制御方式の原理ブロック図。 第2図は本発明の一実施例を示した図。 第3図は本発明による分岐動作をタイムチャートで示し
た図。 第4図はパイプライン処理を行う計算機システムの演算
部の構成例を示した図。 第5図は従来の耐命令−〇C命令の処理方式を説明する
図。 である。 図面において、 1はバッツァメモリ(BS)。 2は命令バッファ(IBF)。 3は次命令バッファ(NIBF)。 4はカレント命令バッファ(CIBF) 。 5〜7はワークレジスタ(WR−A、 B、 C) 。 9は汎用レジスタ等(GR,及びPR) 。 10は加算器(ADDER) 。 11は条件コード(CC)設定回路。 12は分岐条件判定部、13はTM−BC判定機構。 D、A4.C,Wは演算パイプラインの各ステート。 ■〜■は動作順序。 丁M脅今  DAE   全 7 BCC冷冷    DAEEECW Af  g目 1t よう扮山支垂カイYをタイム今〜
−ト了゛示した2第3図((2) 1  1  1  1  1   I   1丁MM今
   DA  T:  cw BC4今     pAE(、W A全9月によう4山多會〃イ¥dイム今マートで示した
図下 3  図 (b)

Claims (1)

  1. 【特許請求の範囲】 1)少なくとも、テストアンダマスク(TM)命令と、
    ブランチオンコンディションコード(BC)命令とを備
    えたパイプライン処理を行う計算機システムにおいて、 上記テストアンダマスク(TM)命令のオペランドと、
    マスクデータ、及び該テストアンダマスク(TM)命令
    に続くブランチオンコンディションコード(BC)命令
    のマスクデータとを、上記パイプラインの同じサイクル
    で、演算レジスタ(5、6、7)にセットし、 該テストアンダマスク(TM)命令のコンディションコ
    ード(CC)の設定と、次のブランチオンコンディショ
    ンコード(BC)命令での、上記コンディションコード
    (CC)による分岐条件の判定とを、同時に実行するこ
    とを特徴とするブランチ制御方式。 (2)上記テストアンダマスク(TM)命令のコンディ
    ションコード(CC)の設定と、次のブランチオンコン
    ディションコード(BC)命令での、上記コンディショ
    ンコード(CC)による分岐条件の判定とを、同時に実
    行するに際して、該テストアンダマスク(TM)命令の
    最後の実行ステートを、次のチェックステートに変換す
    ることを特徴とする特許請求の範囲第1項に記載のブラ
    ンチ制御方式。
JP61150331A 1986-06-26 1986-06-26 ブランチ制御方式 Pending JPS635433A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61150331A JPS635433A (ja) 1986-06-26 1986-06-26 ブランチ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61150331A JPS635433A (ja) 1986-06-26 1986-06-26 ブランチ制御方式

Publications (1)

Publication Number Publication Date
JPS635433A true JPS635433A (ja) 1988-01-11

Family

ID=15494676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61150331A Pending JPS635433A (ja) 1986-06-26 1986-06-26 ブランチ制御方式

Country Status (1)

Country Link
JP (1) JPS635433A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6003127A (en) * 1995-10-04 1999-12-14 Nippondenso Co., Ltd. Pipeline processing apparatus for reducing delays in the performance of processing operations
JP2007069915A (ja) * 2005-09-05 2007-03-22 Shionogi & Co Ltd 粉体供給装置、粉体供給方法、粉体供給充填装置および粉体供給充填方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6003127A (en) * 1995-10-04 1999-12-14 Nippondenso Co., Ltd. Pipeline processing apparatus for reducing delays in the performance of processing operations
US6308263B1 (en) 1995-10-04 2001-10-23 Nippondenso Co., Ltd. Pipeline processing apparatus for reducing delays in the performance of processing operations
JP2007069915A (ja) * 2005-09-05 2007-03-22 Shionogi & Co Ltd 粉体供給装置、粉体供給方法、粉体供給充填装置および粉体供給充填方法

Similar Documents

Publication Publication Date Title
US5710902A (en) Instruction dependency chain indentifier
US5907842A (en) Method of sorting numbers to obtain maxima/minima values with ordering
EP0155211A2 (en) System for by-pass control in pipeline operation of computer
JPS6312029A (ja) 情報処理装置
JPH04245540A (ja) 条件付き分岐を有するプログラムの効率的実行をするためのコンピュータシステム
JPS61107431A (ja) 演算装置
JP2620511B2 (ja) データ・プロセッサ
US5761467A (en) System for committing execution results when branch conditions coincide with predetermined commit conditions specified in the instruction field
JPH0348536B2 (ja)
CN111459546B (zh) 一种实现操作数位宽可变的装置及方法
JP2006518060A (ja) 単一命令多重データ管理のための方法および計算機プログラム
JPS635433A (ja) ブランチ制御方式
JPS5826584B2 (ja) デ−タ処理装置
US4991130A (en) Normalization control system for floating point arithmetic operation
JP2553200B2 (ja) 情報処理装置
JP2812610B2 (ja) パイプライン制御方式
US5854919A (en) Processor and its operation processing method for processing operation having bit width exceeding data width of bit storage unit
JPS60175148A (ja) 命令先取り装置
JPS6327746B2 (ja)
JPH0277940A (ja) データ処理装置
JPS60214043A (ja) パイプライン制御回路
JPH0546389A (ja) 並列処理装置
JPS61170830A (ja) レジスタ参照方法
JPH0656588B2 (ja) データ処理装置の試験方法
JPH02254541A (ja) 条件分岐命令の制御方式