JPS5822769B2 - Branch control method - Google Patents
Branch control methodInfo
- Publication number
- JPS5822769B2 JPS5822769B2 JP54097961A JP9796179A JPS5822769B2 JP S5822769 B2 JPS5822769 B2 JP S5822769B2 JP 54097961 A JP54097961 A JP 54097961A JP 9796179 A JP9796179 A JP 9796179A JP S5822769 B2 JPS5822769 B2 JP S5822769B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- branch
- condition code
- register
- cycle
- 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.)
- Expired
Links
Landscapes
- Advance Control (AREA)
Description
【発明の詳細な説明】
本発明は、パイプライン制御方式の情報処理装置におい
て、分岐命令処理の実行時間を短縮できるようにした分
岐制御方式に関するものである。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a branch control method that can shorten the execution time of branch instruction processing in an information processing apparatus using a pipeline control method.
第1図イ、幀まパイプライン制御方式における命令制御
部と記憶制御部と演算処理部さの関係並びに命令実行ス
テップを示す図、第2図はパイプライン処理の例を示す
図、第3図は分岐命令があ:る場合のパイプラインの流
れの1例を示す図、第4図は従来技術における条件コー
ドを早期に決定できない場合のパイプラインの流れを示
す図である。Figure 1A is a diagram showing the relationship among the instruction control unit, storage control unit, and arithmetic processing unit in the horizontal pipeline control method, as well as instruction execution steps; Figure 2 is a diagram showing an example of pipeline processing; Figure 3 4 is a diagram showing an example of the pipeline flow when there is a branch instruction, and FIG. 4 is a diagram showing the pipeline flow when the condition code cannot be determined early in the prior art.
第1図イにおいて、1は命令バッファ・レジスタ、2は
ベース・レジスタ、3はインデックス・ルジスタ、4は
ディスプレイスメント・レジスタ、5はアドレス加算器
、6は実効アドレス・レジスタ、7は記憶制御部、8は
命令語レジスタ、9はオペランドルレジスタ、10はオ
ペランド語レジスタ、11は演算処理部、12は結果レ
ジスタ、;13はローカル・メモ1バ 14は汎用レジ
スタ、15は浮動小数点レジスタをそれぞれ示している
。In Figure 1A, 1 is an instruction buffer register, 2 is a base register, 3 is an index register, 4 is a displacement register, 5 is an address adder, 6 is an effective address register, and 7 is a storage control unit. , 8 is an instruction word register, 9 is an operand register, 10 is an operand word register, 11 is an arithmetic processing unit, 12 is a result register,; 13 is a local memory 1 bar, 14 is a general-purpose register, and 15 is a floating-point register. It shows.
バッファ・メモリ(図示せず)よりフェッチされた命令
は命令語レジスタ8にセットされ、そして命4バッファ
・レジスタ1に送られる。An instruction fetched from a buffer memory (not shown) is set in instruction word register 8 and then sent to instruction word buffer register 1.
命令バラ1フア・レジスタ1内の命令は、第1図口に示
されるようなフェーズAないしFの過程を経て処理され
る。The instruction in the instruction register 1 is processed through phases A through F as shown in the opening of FIG.
即ち、フェーズAのDサイクルでは命令の解読が行なわ
れ、フェーズAのRサイクルでは汎用レジスフ13内の
インデックス部およびベース・□レジスタ部の値が読出
され、それぞれベース・レジスタ2とインデックス・レ
ジスタ4にセットされ、また、命令に応じてデイスンレ
イスメントがレジスタ4にセットされる。That is, in the D cycle of phase A, the instruction is decoded, and in the R cycle of phase A, the values of the index part and base register part in the general-purpose register 13 are read out, and the values of the base register 2 and index register 4 are read, respectively. In addition, the discontinuation is set in the register 4 according to the instruction.
フェーズBのAサイクルではアドレス加算器5によって
アドレスが生成され、実効アドレス・レジスタ6にセッ
トされる。In cycle A of phase B, an address is generated by address adder 5 and set in effective address register 6.
フェーズBのB1サイクルおよびフェーズCのB2サイ
クルおいてはバッファ・メモリもしくはしジスタからデ
ータが読出される。In the B1 cycle of phase B and the B2 cycle of phase C, data is read from the buffer memory or register.
フェース゛CのB1サイクルとフェーズDのB2サイク
ルでは演算が実行される。Operations are executed in the B1 cycle of phase C and the B2 cycle of phase D.
フェーズEのCサイクルでは結果のチェックが行なわれ
、フェーズFのWサイクルでは結果の書込みが行なわれ
る。In the C cycle of phase E, the result is checked, and in the W cycle of phase F, the result is written.
第1図のツクイブラインは6フエーズ、9サイクルから
構成されている。The twin line shown in FIG. 1 consists of 6 phases and 9 cycles.
フェーズというのは、処理中の命令コード、レジスタ・
アドレス部および例外事項などを保持している単位であ
って、フェーズの数だけの命令がオーバラップして処理
できる。A phase refers to the instruction code, registers, etc. being processed.
It is a unit that holds address parts, exceptions, etc., and can process instructions as many as the number of phases in an overlapping manner.
第2図は命令がオー。バラツブして処理される例を示す
ものである。In Figure 2, the command is O. This shows an example in which processing is performed unevenly.
なお、A′は命令フェッチのためのアドレス計算サイク
ル、B11とB2’は命令をメモリからフェッチするた
めのサイクルを示している。Note that A' indicates an address calculation cycle for fetching instructions, and B11 and B2' indicate cycles for fetching instructions from memory.
分岐命令も通常命令と同様にパイプラインで処。Branch instructions are processed in the pipeline just like normal instructions.
理される。be managed.
分岐命令の場合、Aサイクルではオペランド読出要求の
代りにターゲット(分岐先命令読出し)要求が出される
。In the case of a branch instruction, a target (branch destination instruction read) request is issued in the A cycle instead of an operand read request.
この結果、分岐条件成立時にはB2サイクルの終りに分
岐先の命令語が記憶制御部(Sユニット)の命令語レジ
スタ8にロゴードされる。As a result, when the branch condition is satisfied, the instruction word of the branch destination is loaded into the instruction word register 8 of the storage control section (S unit) at the end of the B2 cycle.
命令語レジスタ8はシーケンシャルな順番で命令を実行
する場合に使われるものである。The instruction word register 8 is used when instructions are executed in sequential order.
命令語レジスタ8に分岐先の命令語をロードするという
ことは、分岐することを意味している。Loading the instruction word of a branch destination into the instruction word register 8 means branching.
したがって、B2サイクルの終りにおける命令語レニジ
スタ8へのロード・タイミングまでに分岐の最終決定が
できていてロードの許可または禁止が指示できれば良い
。Therefore, it is only necessary that the branch can be finally decided and the permission or prohibition of loading can be instructed by the timing of loading the instruction word register 8 at the end of the B2 cycle.
このため、条件コードを早期に決定するような工夫がさ
れていて、一般には先行する命令に基づく条件コードは
後の分岐命◇のB2Jサイクルで参照できるように構成
されている。For this reason, measures are taken to determine the condition code early, and generally the condition code based on the preceding instruction is configured so that it can be referenced in the B2J cycle of the subsequent branch instruction ◇.
第3図はこの例を示すものである。FIG. 3 shows an example of this.
しかしながら、条件コードを早期に決定できない場合、
例えば入力データのみでは決定できなくて演算結果が出
るまで待たなければいけないようjな場合、または演算
途中で所定の処理を施さなければ決定できないような場
合には、分岐命令とその後に続くオーバラップして動い
ている命令の処理を停止させる必要がある。However, if the condition code cannot be determined early,
For example, if a decision cannot be made based on input data alone and it is necessary to wait until the result of the operation is obtained, or if a decision cannot be made without performing certain processing during the operation, use a branch instruction followed by an overlap. It is necessary to stop the processing of the instructions that are currently running.
これを条件コード・インタ田ツク(略してCCI)とい
う。This is called a condition code interface (abbreviated as CCI).
条件ツー4ドは出来るだけ早く出すことにしているが、
条件コードが決定される時期は一般に不定である。I am planning to release the condition 2 4 card as soon as possible,
The timing at which the condition code is determined is generally undefined.
第4図は従来技術における条件コードが早期に決定でき
ない場合のパイプラインの流れを示すものであり、同図
においてAWはAサイクルWAi Tを示し、E2Dは
EサイクルDE[、AYを示している。Figure 4 shows the flow of the pipeline when the condition code cannot be determined early in the prior art. In the figure, AW represents the A cycle WAi T, and E2D represents the E cycle DE[, AY. .
なお、第4図には図示されていないが、実際には分岐命
令がパイプラインに投入される時点と分岐先命令がパイ
プラインに投入される時点までの間には、分岐命令に後
続する命令がパイプラインに投入されている。Although not shown in FIG. 4, in reality, between the time when the branch instruction is input into the pipeline and the time when the branch destination instruction is input into the pipeline, the instruction following the branch instruction is being put into the pipeline.
第3図においても同様である。例えば第2図において、
命4>1を条件コードを設定する先行命令、命4>2を
分岐命令とすると、分岐先命令がパイプラインに投入さ
れるまでに既に命4>3 t 4がパイプラインに投入
されている。The same applies to FIG. For example, in Figure 2,
If instruction 4>1 is a preceding instruction that sets a condition code, and instruction 4>2 is a branch instruction, instruction 4>3 t 4 has already been input into the pipeline by the time the branch destination instruction is input to the pipeline. .
第4図に示すように、直前の命令の結果によって分岐条
件が定まる分岐命令においては、Aサイクルの開始時点
でCCI信号がオンとされ、Aサイクルが待たされる。As shown in FIG. 4, in a branch instruction whose branch condition is determined by the result of the immediately preceding instruction, the CCI signal is turned on at the start of the A cycle, causing the A cycle to wait.
条件コードが生成されると、CCI信号がオフされ、リ
リース信号がオンされて、Aサイクルの待ちが解除され
、分岐先命令がバッファ・メモリより読出される。When the condition code is generated, the CCI signal is turned off, the release signal is turned on, the A cycle wait is released, and the branch destination instruction is read from the buffer memory.
分岐条件が成立している場合には分岐先命令が命令語レ
ジスタ8にロードされる。If the branch condition is satisfied, the branch destination instruction is loaded into the instruction word register 8.
この場合、この分岐先命令がパイプライン投入される前
に既にパイプラインに投入されている分岐命令に後続す
る命令は無効とされる。In this case, instructions following the branch instruction that has already been input into the pipeline before this branch destination instruction is input into the pipeline are invalidated.
分岐条件が成立しない場合には、分岐先命令は命令語レ
ジスタ8にロードされず、分岐命令に後継する命令が順
番に実行される。If the branch condition is not satisfied, the branch destination instruction is not loaded into the instruction word register 8, and instructions succeeding the branch instruction are executed in order.
第4図から判るように従来技術においては条件コードが
設定されてからB2サイクルまでに3ザイクルを必要と
している。As can be seen from FIG. 4, in the prior art, three cycles are required from the setting of the condition code to the B2 cycle.
この時間を短縮できると、分岐命令の処理時間を短縮す
ることが出来る。If this time can be shortened, the processing time for branch instructions can be shortened.
本発明は、上記の考察にもとづくものであって、条件コ
ード設定からB2サイクルまでの時間を従来方式より短
縮し、これによって情報処理装置の性能を大幅に向上で
きるようにした分岐制御方式に得ることを目的としてい
る。The present invention is based on the above considerations, and provides a branch control method that shortens the time from condition code setting to B2 cycle compared to conventional methods, thereby significantly improving the performance of information processing equipment. The purpose is to
そしてそのため、本発明の分岐制御方式は、直前の命令
によって設定される条件コードを調べその結果により分
岐するか否かを決定する分岐命令を処理する場合、分岐
先命令をメモリから読出す処理が実行可能となった段階
に達した時点で当該分岐命令を含むそれ以後の命令の処
理を待状態とするように構成されたパイプライン制御方
式の情報処理装置において、条件コードが最終的に設定
される時点より前に条件コードが設定される時点を予測
し、予測結果にしたがって、分岐命令を含むそれ以後の
命令の処理の待状態を、条件コードが最終的に設定され
る時点より前に解除することを特徴とするものである。Therefore, in the branch control method of the present invention, when processing a branch instruction that examines the condition code set by the immediately preceding instruction and determines whether or not to branch based on the result, the branch control method does not include the process of reading the branch destination instruction from memory. In an information processing device using a pipeline control method, which is configured to put the processing of subsequent instructions including the branch instruction into a waiting state when the branch instruction reaches the executable stage, the condition code is finally set. It predicts the time when the condition code will be set before the time when the condition code is finally set, and according to the prediction result, the wait state for processing subsequent instructions, including branch instructions, is released before the time when the condition code is finally set. It is characterized by:
以下、本発明を図面を参照しつつ説明する。第5図は本
発明による条件コードが早期に決定できない場合の改善
されたパイプラインの流れを。Hereinafter, the present invention will be explained with reference to the drawings. FIG. 5 shows an improved pipeline flow according to the present invention when the condition code cannot be determined early.
示す図、第6図は、本発明の要部の1実施例の構成を示
す図、第7図は浮動小数点数の表示法を示す図である。6 is a diagram showing the configuration of one embodiment of the main part of the present invention, and FIG. 7 is a diagram showing a method of displaying floating point numbers.
本発明を要約すると、直前の命令によって条件コードが
決定される分岐命令を処理する場合、条1件コードが設
定される時点を予測し、この予測によってCCI信号を
オフとし、待状態にあった分岐命令の処理を条件コード
設定前に進行させて置くようにしたものである。To summarize the present invention, when processing a branch instruction whose condition code is determined by the immediately preceding instruction, the time when the condition code is set is predicted, and this prediction turns off the CCI signal and the condition code is determined by the previous instruction. The branch instruction processing is allowed to proceed before the condition code is set.
PRECCVALID信号は、条件コード設点時点より
所定時間前(こlの例では2サイクル)にオンされ、C
C■信号をオフするための信号である。The PRECCVALID signal is turned on a predetermined time (two cycles in this example) before the condition code is set, and the
This is a signal for turning off the C■ signal.
第5図から判るようにこの例では条件コード設定時点か
ら条件コードを参照するB2サイクルまで1サイクルし
かない。As can be seen from FIG. 5, in this example, there is only one cycle from the time when the condition code is set to the B2 cycle when the condition code is referenced.
この場合は、従来例に比べて2サイクル処理が早2くな
ったことになる。In this case, the 2-cycle processing is reduced to 2 times faster than in the conventional example.
条件コードが2サイクル後に決定されることをパイプラ
インに通知するPRECCVALID信号の作成方法を
、浮動小数点の加算命令で条件コードを決定する例で述
べる。A method for creating a PRECCVALID signal that notifies the pipeline that the condition code will be determined after two cycles will be described using an example in which the condition code is determined by a floating-point addition instruction.
2浮動小数点数の表示法は第7図
に示され、符号部、指数部および小数部から構成される
。2 The representation of floating point numbers is shown in FIG. 7 and consists of a sign part, an exponent part and a decimal part.
加算命令を行なう場合の一般的手続を下記に示す。The general procedure for performing an addition instruction is shown below.
(a)2個のオペランドの指数部を比較してその大小と
差を検出する。(a) Compare the exponent parts of two operands to detect their magnitude and difference.
、3(b) 指数部の小
さい方の小数部が右桁送りされる。, 3(b) The smaller decimal part of the exponent is shifted to the right.
桁送りは両方の指数部が等しくなるまで行なわれる。Shifting is performed until both exponent parts are equal.
このとき、16進1桁が桁送りされる毎に指数部に1が
加算される。At this time, 1 is added to the exponent part every time one hexadecimal digit is shifted.
(ALIGNMENTと称す) 3(c)
符号が等しい場合は、両方の小数部の加算を行なう。(referred to as ALIGNMENT) 3(c)
If the signs are equal, add both fractional parts.
符号が異なる場合は第1オペランドから第2オペランド
を減算する。If the signs are different, the second operand is subtracted from the first operand.
(d) 加減算の結果が負数になった場合は、正数表
示に戻す。(d) If the result of addition or subtraction is a negative number, return it to a positive number.
4(e)結果が
桁あふれしていれば、1桁右送りし、指数部に1を加算
する。4(e) If the result has overflow, move it one digit to the right and add 1 to the exponent.
(f) 演算のあと正規化が必要な場合には、演算の
あと正規化を行なう。(f) If normalization is required after the calculation, perform normalization after the calculation.
(g) 結果が゛0パであれば条件コード゛0″をセ
ットし、負であれば条件コード゛1″をセットし、正で
あれば条件コード゛2パをセットする。(g) If the result is ``0'', set condition code ``0'', if negative, set condition code ``1'', and if positive, set condition code ``2''.
さきに述べたように、従来より分岐@◆の処理を早く行
なうために、条件コードを早く決定しようとしており、
このため、演算結果を見てから条件コードを決定するの
ではなく、出来るだけ演算前に入力データを調査シ2、
条件コードを決定しようとしている。As mentioned earlier, in order to process branch @◆ faster than before, we tried to determine the condition code quickly.
For this reason, instead of determining the condition code after checking the calculation results, it is better to examine the input data as much as possible before the calculation.
I'm trying to determine the condition code.
例えば、両オペランドが正規化されているとき小数部の
最上位桁であるビット8ないし11が0′′でないとき
には、符号部を除いた指数部と小数部(ビット1ないし
63)どうしを比較するだけで、両オペランドの符号を
考えて演算結果が′0″か、正か、負かを予測できる。For example, if both operands are normalized and the most significant bits 8 to 11 of the decimal part are not 0'', the exponent part excluding the sign part and the decimal part (bits 1 to 63) are compared. By simply considering the signs of both operands, we can predict whether the result will be '0', positive, or negative.
即ち、条件コードを早期に予測することが出来る。That is, the condition code can be predicted at an early stage.
例えば、第1オペランドが正で第2オペランドが負であ
り、また、第1オペランドのビット1ないし63が第2
オペランドのビット1ないし63より大きいとき、第1
オペランドの方が第2オペランドより大きいので、減算
を行なった結果は正であり、条件コードは2′′となる
と、予測できる。For example, the first operand is positive and the second operand is negative, and bits 1 to 63 of the first operand are
When greater than bits 1 to 63 of the operand, the first
Since the operand is greater than the second operand, we can predict that the result of the subtraction will be positive and the condition code will be 2''.
従来技術においてもB1サイクルで両オペランドを受取
った後、オペランドの大小比較などを行なってB2サイ
クルの終りに条件コードをセットする。In the prior art, after receiving both operands in the B1 cycle, the operands are compared in magnitude and a condition code is set at the end of the B2 cycle.
この場合のパイプライン処理が第4図に示されている。Pipeline processing in this case is shown in FIG.
ところで、さきに述べたように、両オペランドのビット
8ないし11が0″でなければ、B2サイクルの終りで
条件コードが決定されるので、B1サイクルで両オペラ
ンドを受取ったとき即時に両オペランドのビット8ない
し11が°゛0″でないならばRRECCVALID信
号をオンとしてパイプラインを進めるようにすれば良い
。By the way, as mentioned earlier, if bits 8 to 11 of both operands are not 0'', the condition code is determined at the end of the B2 cycle, so when both operands are received in the B1 cycle, the condition code of both operands is immediately changed. If bits 8 to 11 are not '0', the RRECCVALID signal may be turned on to advance the pipeline.
この状態が第5図に示される。This state is shown in FIG.
第6図は本発明の要部の1実施例構成を示すものであっ
て、16はオペコード部、17は第2オペランドのビッ
ト8ないし11がn OIIであるか否かを検出する検
出回路、18は第1オペランドのビット8ないし11が
II Ollであるか否かを検出する検出回路、19は
PRECCVALID検出回路、20はCCIラッチ、
21はIJ IJ−ス・ラッチをそれぞれ示している。FIG. 6 shows the configuration of one embodiment of the main parts of the present invention, in which 16 is an operation code section, 17 is a detection circuit for detecting whether bits 8 to 11 of the second operand are nOII; 18 is a detection circuit that detects whether bits 8 to 11 of the first operand are II Oll; 19 is a PRECCVALID detection circuit; 20 is a CCI latch;
21 indicate IJ-IJ-s latches, respectively.
第2オペランドのビット8ないし11が0°′でなく、
また第1オペランドのビット8ないし11が0″でなく
、且つオペランド部16が直前の命令による条件ビット
を使用する分岐命令である場合には、直ちにCCIラッ
チがリセットされてCCI信号がオフされ、1マシンサ
イクル後にリリース・ラッチ21がオンされてRELE
ASE信号がオンされる。bits 8 to 11 of the second operand are not 0°',
Further, if bits 8 to 11 of the first operand are not 0'' and the operand section 16 is a branch instruction that uses the condition bits of the immediately previous instruction, the CCI latch is immediately reset and the CCI signal is turned off. After one machine cycle, the release latch 21 is turned on and RELE
ASE signal is turned on.
以上の説明から明らかなように、本発明によれば、分岐
命令の処理時間を従来方式に比し大幅に短縮することが
出来、これによって情報処理装置の性能を大幅に改善す
ることが出来る。As is clear from the above description, according to the present invention, the processing time for branch instructions can be significantly shortened compared to the conventional method, and thereby the performance of the information processing device can be significantly improved.
第1図イ2口はパイプ・ライン制御方式における命令制
御部と記憶制御部と演算処理部との関係並びに命令実行
ステップを示す図、第2図はパイプライン処理の例を示
す図、第3図は分岐命令のある場合のパイプラインの流
れの1例を示す図、第4図は従来技術における条件コー
ドを早期に決定できない場合のパイプラインの流れを示
す図、第5図は本発明による条件コードが早期に決定で
きない場合の改善されたパイプラインの流れを示す図、
第6図は本発明の要部の1実施例の構成を示す図、第7
図は浮動小数点数の表示法を示す図である。
1・・・・・・命令バッファ・レジスタ、2・・・・・
・ベース・レジスタ、3・・・・・・インデックス・レ
ジスタ、4・・・・・・ディスプレイスメント・レジス
タ、5・・・・・・アドレス加算器、6・・・・・・実
効アドレス・レジスタ、7・・・・・・記憶制御部、8
・・・・・・命令語レジスタ、9・・・・・・オペラン
ドルレジスタ、10・・・・・・オペランド語レジスタ
、11・・・・・・演算処理部、12・・・・・・結果
レジスタ、13・・・・・・ローカル・メモリ、14・
・・・・・汎用レジスタ、15・・・・・・浮動小数点
レジスタ、16・・・・・・オペコード部、17・・・
・・・第2オペランドのビット8ないし11が0″であ
るか否かを検出する検出回路、18・・・・・・第1オ
ペランドのビット8ないし11が“0″であるか否かを
検出する検出回路、19・・・・・・PRECCVAL
ID検出回路、20・・・・・・CCIラッチ、21・
・・・・・リリース・ラッチ。Figure 1A2 is a diagram showing the relationship among the instruction control unit, storage control unit, and arithmetic processing unit in the pipeline control system, as well as instruction execution steps; Figure 2 is a diagram showing an example of pipeline processing; The figure shows an example of the pipeline flow when there is a branch instruction, FIG. 4 shows the pipeline flow when the condition code cannot be determined early in the conventional technology, and FIG. 5 shows the pipeline flow according to the present invention. A diagram showing the improved pipeline flow when the condition code cannot be determined early;
FIG. 6 is a diagram showing the configuration of one embodiment of the main part of the present invention, and FIG.
The figure is a diagram showing a method of displaying floating point numbers. 1...Instruction buffer register, 2...
・Base register, 3... Index register, 4... Displacement register, 5... Address adder, 6... Effective address register , 7... Memory control unit, 8
...Instruction word register, 9 ... Operand register, 10 ... Operand word register, 11 ... Arithmetic processing unit, 12 ...... Result register, 13...Local memory, 14.
... General purpose register, 15 ... Floating point register, 16 ... Opcode section, 17 ...
. . . Detection circuit for detecting whether bits 8 to 11 of the second operand are 0"; 18... Detection circuit for detecting whether bits 8 to 11 of the first operand are 0"; Detection circuit to detect, 19...PRECCVAL
ID detection circuit, 20...CCI latch, 21.
...Release latch.
Claims (1)
の結果により分岐するか否かを決定する分岐命令を処理
する場合、分岐先命令をメモリから読出す処理が実行可
能となった段階に達した時点。 で当該分岐命令を含むそれ以後の命令の処理を待状態と
するように構成されたパイプライン制御方式の情報処理
装置において、条件コードが最終的に設定される時点よ
り前に条件コードが設定される時点を予測し、予測結果
にしたがって、分岐命令を含むそれ以後の命令の処理の
待状態を、条件コードが最終的に設定される時点より前
に解除することを特徴とする分岐制御方式。[Claims] 1. When processing a branch instruction that examines the condition code set by the immediately preceding instruction and determines whether or not to branch based on the result, it is possible to read the branch destination instruction from memory. the stage reached. In an information processing device using a pipeline control method, which is configured to put the processing of subsequent instructions including the branch instruction in a waiting state, the condition code is set before the condition code is finally set. 1. A branch control method that predicts a time point when a condition code will be finally set, and releases a waiting state for processing subsequent instructions, including a branch instruction, according to the prediction result before the time when a condition code is finally set.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP54097961A JPS5822769B2 (en) | 1979-07-31 | 1979-07-31 | Branch control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP54097961A JPS5822769B2 (en) | 1979-07-31 | 1979-07-31 | Branch control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5622140A JPS5622140A (en) | 1981-03-02 |
| JPS5822769B2 true JPS5822769B2 (en) | 1983-05-11 |
Family
ID=14206260
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP54097961A Expired JPS5822769B2 (en) | 1979-07-31 | 1979-07-31 | Branch control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5822769B2 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS60257199A (en) * | 1984-06-01 | 1985-12-18 | 日立電子エンジニアリング株式会社 | Device for positioning thin ic |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5860355A (en) * | 1981-10-07 | 1983-04-09 | Nec Corp | Information processing device |
| US11106466B2 (en) * | 2018-06-18 | 2021-08-31 | International Business Machines Corporation | Decoupling of conditional branches |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS4979744A (en) * | 1972-12-08 | 1974-08-01 | ||
| JPS522140A (en) * | 1975-06-24 | 1977-01-08 | Hitachi Ltd | Information processing apparatus |
-
1979
- 1979-07-31 JP JP54097961A patent/JPS5822769B2/en not_active Expired
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS60257199A (en) * | 1984-06-01 | 1985-12-18 | 日立電子エンジニアリング株式会社 | Device for positioning thin ic |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5622140A (en) | 1981-03-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2846407B2 (en) | Exception handling method and exception handling device | |
| JP2846406B2 (en) | Branch processing method and branch processing device | |
| US6266765B1 (en) | Computer architecture capable of execution of general purpose multiple instructions | |
| KR100900364B1 (en) | Instruction execution device, instruction execution method, and computer readable memory media | |
| JP2845646B2 (en) | Parallel processing unit | |
| EP0394165A2 (en) | Overlapped execution of sequential instructions from a common stream in multiple processors | |
| JPS59114641A (en) | Interrupt processor | |
| WO1985000453A1 (en) | Data processing system | |
| JPS6028015B2 (en) | information processing equipment | |
| JPH09146770A (en) | Method and microprocessor for executing instructions | |
| US5416911A (en) | Performance enhancement for load multiple register instruction | |
| US7017026B2 (en) | Generating lookahead tracked register value based on arithmetic operation indication | |
| US5761467A (en) | System for committing execution results when branch conditions coincide with predetermined commit conditions specified in the instruction field | |
| US5469552A (en) | Pipelined data processor having combined operand fetch and execution stage to reduce number of pipeline stages and penalty associated with branch instructions | |
| KR101016257B1 (en) | Processor and Information Processing Unit | |
| JPH09152973A (en) | Method and device for support of speculative execution of count / link register change instruction | |
| JPS5822769B2 (en) | Branch control method | |
| US6990569B2 (en) | Handling problematic events in a data processing apparatus | |
| US6718458B2 (en) | Method and apparatus for performing addressing operations in a superscalar, superpipelined processor | |
| JP2944563B2 (en) | Pipeline type information processing device | |
| JP2503223B2 (en) | Prior control method | |
| JP2843844B2 (en) | Parallel processing unit | |
| JPS63221428A (en) | Data processor | |
| JPH0311430A (en) | Abnormality processing method at time of fetch access | |
| JP3564517B2 (en) | Data processing system |