JPS6324421A - Information processor - Google Patents

Information processor

Info

Publication number
JPS6324421A
JPS6324421A JP16913286A JP16913286A JPS6324421A JP S6324421 A JPS6324421 A JP S6324421A JP 16913286 A JP16913286 A JP 16913286A JP 16913286 A JP16913286 A JP 16913286A JP S6324421 A JPS6324421 A JP S6324421A
Authority
JP
Japan
Prior art keywords
instruction
branch
condition
conditional branch
forecasting
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.)
Granted
Application number
JP16913286A
Other languages
Japanese (ja)
Other versions
JP2534674B2 (en
Inventor
Takashi Horikawa
堀川 ▲隆▼
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 JP61169132A priority Critical patent/JP2534674B2/en
Publication of JPS6324421A publication Critical patent/JPS6324421A/en
Application granted granted Critical
Publication of JP2534674B2 publication Critical patent/JP2534674B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PURPOSE:To reduce an idle time occurring in the respective parts in an information processing device and to improve the speed of executing an instruction at the time of executing a condition branch instruction by providing a condition branch forecasting part executing the forecasting of branch direction with the kind of the branch instruction and a branch distance as inputs. CONSTITUTION:During the execution of a program if the condition branch instruction is set in an instruction register 3, the condition of the branch and the value corresponding to the branch distance are respectively outputted from a condition branch recognition part 4 and from a branch distance recognition part 5 and inputted in a condition branch forecasting part 6. The condition branch forecasting part 6 executes the forecasting of the branch of condition branch instruction from given information and outputs the result to an instruction first fetch part 2. If the forecasting of branch direction is a branching direction, the instruction first fetch part 2 executes the fetch of a instruction code from a branching destination. If the forecasting of the branch direction isn't branching direction the instruction first fetch part 2 executes the fetch of the instruction code from the next instruction to the condition branch instruction. Therefore the condition branch instruction can be speedily executed with a few hardware.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は命令の先取りを行う情報処理装置に関し、特に
、効果的に命令の先取りを実行するために行う条件分岐
命令の分岐方向予測を、少ないハードウェアで実現する
情報処理装置に関する。
DETAILED DESCRIPTION OF THE INVENTION (Industrial Application Field) The present invention relates to an information processing device that performs instruction prefetching, and in particular, to a branch direction prediction of a conditional branch instruction that is performed in order to effectively execute instruction prefetching. The present invention relates to an information processing device realized with less hardware.

(従来の技術) 一般に、情報処理装置では、命令コードの取り込み(以
下、命令フェッチ)、命令コードの解読(以下、命令デ
コード)、命令実行という操作を各命令について行うこ
とにより、プログラムを実行している。命令によっては
、この他に、主記憶からのオペランドのアクセス(以下
、オペランド・リード)や命令実行結果の主記憶への書
き戻しく以下、オペランド・ライト)という操作を必要
とするものもある。
(Prior Art) In general, an information processing device executes a program by performing the following operations for each instruction: fetching an instruction code (hereinafter referred to as instruction fetch), decoding the instruction code (hereinafter referred to as instruction decoding), and executing the instruction. ing. Some instructions also require operations such as accessing an operand from main memory (hereinafter referred to as operand read) or writing back the instruction execution result to main memory (hereinafter referred to as operand write).

これらの情報処理装置では、命令フェッチ、オペランド
・リード、オペランド・ライトを主記憶制御部、命令デ
コードを命令デコード部、命令の実行を命令実行部で行
っている。これらの繰作は、情報処理装置内の各部分で
分担して処理されるため、連続する数命令についてこれ
らの各操作をオーバーラツプさせて並列に行うことが可
能である。この点に着目し、命令を高速に実行するため
に、数命令分の繰作を並列に処理するように制御するこ
とが広く行われている。これをパイプライン制御といい
、このような制御をとっている情報処理装置をパイプラ
イン型情報処理装置と呼ぶ。
In these information processing devices, a main memory control unit performs instruction fetch, operand read, and operand write, an instruction decode unit performs instruction decoding, and an instruction execution unit performs instruction execution. Since these operations are divided and processed by each part within the information processing device, it is possible to overlap and perform these operations in parallel for several consecutive instructions. Focusing on this point, in order to execute instructions at high speed, it is widely practiced to control the operations of several instructions to be processed in parallel. This is called pipeline control, and an information processing device that performs this kind of control is called a pipeline type information processing device.

パイプライン型情報処理装置で処理を高速に行うために
は、装置内の各部分が並列に動作する必要がある。しか
し、条件分岐命令では、その直前の命令実行が終了して
条件コードに有効な値を設定するまで、分岐条件が成立
して分岐が行われたか否かを決められないことか゛ら、
条件分岐命令に続く命令のフェッチ、テ゛コードを行う
ことができない。このため、情報処理装置内の各ユニッ
トに空き時間が生じ、命令実行速度向上の妨げになって
いた。
In order to perform high-speed processing in a pipelined information processing device, each part within the device needs to operate in parallel. However, with conditional branch instructions, it cannot be determined whether the branch condition has been met and the branch has been executed until the previous instruction finishes executing and a valid value is set in the condition code.
The instruction following the conditional branch instruction cannot be fetched or coded. As a result, each unit within the information processing apparatus has idle time, which hinders improvement in instruction execution speed.

この問題点を解決するために、条件分岐命令の分岐方向
から分岐方向を予測して命令の先取り方向を決める方式
や、分岐命令の履歴情報を情報処理装置内に残しておき
、これをもとに命令の先取り方向を制御する方式が提案
されている。
In order to solve this problem, we have proposed a method that predicts the branch direction from the branch direction of the conditional branch instruction and determines the preemption direction of the instruction, and a method that retains history information of branch instructions in the information processing device and uses this information as a base. A method for controlling the direction of command prefetching has been proposed.

(発明が解決しようとする問題点) パイプライン型情報処理装置の処理速度を向上させるた
めの条件分岐命令予測を、分岐方向から命令の先取り方
向を決める方式では、予測精度が低いという間趙があっ
た。また、分岐命令の履歴情報をもとにして行う方式で
は、複雑な処理を行うために多量のハードウェアを必要
とする欠点があった。
(Problems to be Solved by the Invention) In order to improve the processing speed of a pipelined information processing device, Zhao Ma said that the prediction accuracy of the conditional branch instruction prediction method, which determines the instruction prefetch direction from the branch direction, is low. there were. Furthermore, the method based on branch instruction history information has the disadvantage of requiring a large amount of hardware to perform complex processing.

(問題点を解決するための手段) 本発明による情報処理装置では、前記の間利点を解決す
るため、分岐命令の種類および分岐距離を入力として分
岐の方向予測を行う条件分岐予測部を持たせることによ
り、少ないハードウェアで精度の良い条件分岐方向の予
測を行って命令の先取り方向を決める。
(Means for Solving the Problems) In order to solve the above-mentioned advantages, the information processing device according to the present invention includes a conditional branch prediction unit that predicts the branch direction using the type of branch instruction and branch distance as input. By doing so, it is possible to accurately predict the direction of a conditional branch with less hardware and determine the direction of instruction prefetching.

(作用) 本発明の基本構成を第1図に示す。第1図においてプロ
グラムの実行中に、条件分岐命令が命令レジスタ3にセ
ットされると、条件分岐認識部4より分岐の条件、分岐
距離認識部5より分岐距離に対応する値が出力されるの
で、これを条件分岐予測部6に人力する。条件分岐予測
部では、与えられた情報から条件分岐命令の分岐予測を
行い、この結果を命令先取り部7に送る。この分岐方向
予測が分岐する方向であれば、命令先取り部7では、分
岐先より命令コードのフェッチを行う。また、分岐方向
予測が分岐しない方向であれば、命令先取り部7では、
条件分岐命令の次の命令から命令コードフェッチを行う
(Operation) The basic configuration of the present invention is shown in FIG. In FIG. 1, when a conditional branch instruction is set in the instruction register 3 during program execution, the conditional branch recognition unit 4 outputs the branch condition, and the branch distance recognition unit 5 outputs a value corresponding to the branch distance. , this is manually input to the conditional branch prediction unit 6. The conditional branch prediction section predicts a branch of a conditional branch instruction based on the given information, and sends this result to the instruction prefetch section 7. If this branch direction prediction is a branch direction, the instruction prefetch unit 7 fetches the instruction code from the branch destination. Further, if the branch direction prediction is in the direction of not branching, the instruction prefetch unit 7
Fetch the instruction code from the instruction following the conditional branch instruction.

このような制御を行うことにより、条件分岐命令実行時
において情報処理装置内の各部分に生じる空き時間を少
なくして、命令実行速度を向上させることができる。
By performing such control, it is possible to reduce the idle time that occurs in each part of the information processing device when executing a conditional branch instruction, thereby improving the instruction execution speed.

(実施例) 本実施例では、情報処理装置の内部を第2図に示すよう
に分割して説明する。図において、主記憶制御部12は
、主記憶のアクセスを行う部分であり、命令先取り部2
を内部に持つ。主記憶制御部12の内部にメモリ管理機
構やキャッシュ・メモリを持つ情報処理装置もある。命
令デコーダ13は命令のデコードを行う部分であり、条
件分岐認識部4、分岐距離認識部5、条件分岐予測部6
を内部に持つ。命令実行部14は命令を実行する部分で
ある。
(Example) In this example, the inside of an information processing apparatus is divided as shown in FIG. 2 and explained. In the figure, the main memory control unit 12 is a part that accesses the main memory, and the instruction prefetch unit 2
has inside. Some information processing devices have a memory management mechanism or cache memory inside the main memory control unit 12. The instruction decoder 13 is a part that decodes instructions, and includes a conditional branch recognition section 4, a branch distance recognition section 5, and a conditional branch prediction section 6.
has inside. The instruction execution unit 14 is a part that executes instructions.

第3図は、本実施例における命令デコーダ13の構成を
示す図である。図において、条件分岐認識部4の内部に
おかれている条件分岐命令判定部20は、命令レジスタ
3に格納された命令コードが条件分岐命令かどうかを判
定する部分、ゲート21は、条件分岐判定部20により
、命令レジスタ3に格納された命令コードが条件分岐命
令であると判定されたときに、分岐の条件を条件分岐予
測部に出力する部分である。分岐距離認識部5の内部に
おかれている否定部22は分岐距離の各ビットについて
論理否定を行う部分、セレクタ部23は2つの入力のう
ち一方を出力する部分、FF1部24は入カテ゛−夕の
最上位ビットからサーチを行い最初に1が児つかったビ
ットの位置を2進数で出力する部分である。条件分岐予
f+!1部6の内部におかれている分岐予測テーブル2
5はアドレスとして入力される分岐条件、分岐距離に応
じて分岐予測を出力する1ビツトのメモリである。
FIG. 3 is a diagram showing the configuration of the instruction decoder 13 in this embodiment. In the figure, a conditional branch instruction determination unit 20 located inside the conditional branch recognition unit 4 is a part that determines whether the instruction code stored in the instruction register 3 is a conditional branch instruction, and a gate 21 is a part that determines whether the instruction code stored in the instruction register 3 is a conditional branch instruction. This section outputs a branch condition to the conditional branch prediction section when the instruction code stored in the instruction register 3 is determined by the section 20 to be a conditional branch instruction. The negation unit 22 located inside the branch distance recognition unit 5 performs logical negation on each bit of the branch distance, the selector unit 23 outputs one of two inputs, and the FF1 unit 24 performs logical negation on each bit of the branch distance. This is the part that searches from the most significant bit of the first bit and outputs the position of the bit where 1 is found first in binary form. Conditional branch prediction f+! Branch prediction table 2 located inside part 1 6
Reference numeral 5 denotes a 1-bit memory that outputs branch prediction according to branch conditions and branch distances input as addresses.

第4図は、本実施例で説明する情報処理装置における条
件分岐命令の命令形式を示す図である。図において、命
令コード31は8ビツトであり、その内、上位4ビツト
は、条件分岐命令であることを示す値32、下位4ビツ
トは分岐する条件を示す値33である。また、分岐距離
は2の補数で表現され、この最上位ビットは符号ビット
35である。
FIG. 4 is a diagram showing the instruction format of a conditional branch instruction in the information processing apparatus described in this embodiment. In the figure, the instruction code 31 has 8 bits, of which the upper 4 bits are a value 32 indicating that it is a conditional branch instruction, and the lower 4 bits are a value 33 indicating the condition for branching. Further, the branch distance is expressed as a two's complement number, and the most significant bit is the sign bit 35.

まず、本実施例における情報処理装置で通常の命令を実
行する手順を示す。
First, a procedure for executing a normal command in the information processing apparatus in this embodiment will be described.

主記憶11に格納されている命令コードは、命令先取り
部2により制御される主記憶制御部12によって主記憶
アクセス・バス15を通して取り出され、命令コード・
バス16を通して命令デコーダ13内の命令レジスタ3
に送られる。命令デコーダ13では、命令レジスタ3に
設定された命令コードをデコードし、次に実行すべき命
令で扱うオペランドのアドレスおよびオペランドのリー
ド、ライトの区別を主記憶制御部12にアドレス・バス
17を通して送ると共に、命令で行う操作に関する情報
を、命令デコード結果バス18を通して命令実行部14
に送る。主記憶制御部12では、リードすべきオペラン
ドについて、命令デコーダ13から送られたオペランド
・アドレスを主記憶バス15を通してアクセスし、次の
命令実行に必要なオペランドを用意する。命令実行部1
4では、命令デコード結果バス18を通して指定される
「命令で行う操作jを、主記憶制御部12が用意したオ
ペランドをデータ・バス19を通して取り出し、これを
用いて実行する。さらに、命令の実行結果を主記憶11
に格納する必要のあるときには、データ・バス19を通
して実行結果を主記憶制御部12に送る。主記憶制御部
12では、ライトする必要のあるオペランドが命令実行
部14から送られると、あらかじめ命令デコーダ13か
ら送られたオペランド・アドレスで指定される位置に、
主記憶バス15を通して、このオペランドをライトする
The instruction code stored in the main memory 11 is retrieved via the main memory access bus 15 by the main memory control unit 12 controlled by the instruction prefetch unit 2.
Instruction register 3 in instruction decoder 13 through bus 16
sent to. The instruction decoder 13 decodes the instruction code set in the instruction register 3, and sends the address of the operand handled by the next instruction to be executed and the distinction between read and write of the operand to the main memory control unit 12 via the address bus 17. At the same time, information regarding the operation performed by the instruction is sent to the instruction execution unit 14 via the instruction decode result bus 18.
send to The main memory control unit 12 accesses the operand address sent from the instruction decoder 13 through the main memory bus 15 for the operand to be read, and prepares the operands necessary for executing the next instruction. Instruction execution unit 1
4, the operand prepared by the main memory control unit 12 is retrieved through the data bus 19 and used to execute the operation j specified by the instruction through the instruction decode result bus 18. Main memory 11
When it is necessary to store the result in the main memory controller 12, the execution result is sent to the main memory controller 12 via the data bus 19. In the main memory control unit 12, when an operand that needs to be written is sent from the instruction execution unit 14, it is stored in the position specified by the operand address sent from the instruction decoder 13 in advance.
This operand is written through the main memory bus 15.

実行すべき命令が分岐命令の場合、命令デコーダ13よ
り分岐先アドレスがアドレス・バス17を通して主記憶
制御部12に送られる。主記憶制御部12では、分岐先
アドレスより命令フェッチを行うことで分岐が行なわれ
る。
If the instruction to be executed is a branch instruction, the instruction decoder 13 sends the branch destination address to the main memory controller 12 via the address bus 17. The main memory control unit 12 performs a branch by fetching an instruction from a branch destination address.

次に、この情報処理装置により、条件分岐命令の分岐方
向を予測する手順を示す。
Next, a procedure for predicting the branch direction of a conditional branch instruction using this information processing device will be described.

命令レジスタ3の上位4ビツトは、条件分岐判定部20
に入力されており、第4図に示す条件分岐命令30が命
令レジスタ3に判定されると、条件分岐命令判定部20
の出力が有効になるため、ゲート21を通して命令レジ
スタの下位4ビツトが条件分岐認識部4の出力となる。
The upper 4 bits of the instruction register 3 are used by the conditional branch judgment unit 20.
When the conditional branch instruction 30 shown in FIG.
Since the output of the instruction register becomes valid, the lower four bits of the instruction register become the output of the conditional branch recognition section 4 through the gate 21.

条件分岐命令判定部20の出力が無効のときには、条件
分岐認識部4の出力は無効になる。
When the output of the conditional branch instruction determination unit 20 is invalid, the output of the conditional branch recognition unit 4 is invalid.

命令レジスタ3の内、分岐距離を表すフィールドは分岐
距離認識部5に入力される。分岐距離のうち符号ビット
35がOのときは正の分岐距離を表しており、符号ビッ
ト35が1のときは負の分岐距離を表している。この符
号ビット35により、セレクタ部23を制御する。すな
わち、符号ビット35が0のときは分岐距離のフィール
ドをFF1部24に入力し、符号ビットが1のときは分
岐距離を示すフィールドの各ビットを否定部22によっ
て反転したものをFF1部24に入力するようにセレク
タ部23によって切り換える。FF1部24では、最上
位のビットからサーチを行って、最初に1が見つかった
ビット位置を出力する。この操作によって、分岐距離の
有効ビット長がFF1部24より出力され、符号ビット
35と共に分岐処理認識部5の出力となる。
A field representing the branch distance in the instruction register 3 is input to the branch distance recognition section 5. When the sign bit 35 of the branch distance is O, it represents a positive branch distance, and when the sign bit 35 is 1, it represents a negative branch distance. This sign bit 35 controls the selector section 23. That is, when the sign bit 35 is 0, the branch distance field is input to the FF1 section 24, and when the sign bit is 1, each bit of the field indicating the branch distance is inverted by the negator 22 and input to the FF1 section 24. The selector unit 23 switches to input the data. The FF1 unit 24 searches from the most significant bit and outputs the bit position where 1 is found first. By this operation, the effective bit length of the branch distance is output from the FF1 section 24, and is output from the branch processing recognition section 5 together with the sign bit 35.

条件分岐予測部6内部の分岐予測テーブル25には、条
件分岐認識部4から送られる分岐条件と分岐距離認識部
5から送られる分岐距離の有効ビット長を示す値がアド
レスとして入力されている。このテーブルには、あらか
じめ調査された分岐特性から、分岐条件と分岐距離の有
効ビット長をもとにして行う条件分岐予測が設定されて
いる。予測結果は、条件分岐命令において分岐すると予
想されるときに有効になるように定義される。条件分岐
認識部4から送られる分岐条件を示す値が有効であると
きに、分岐予測テーブル25から予測結果が出力される
。条件分岐認識部4からの入力が無効のときには分岐予
測テーブル25からの出力も無効となる。分岐予測テー
ブル25からの出力は、条件分岐予測部6の出力として
命令先取り部2に送られる。
In the branch prediction table 25 inside the conditional branch prediction unit 6, values indicating the effective bit length of the branch condition sent from the conditional branch recognition unit 4 and the branch distance sent from the branch distance recognition unit 5 are input as addresses. In this table, conditional branch prediction is set based on branch conditions and effective bit lengths of branch distances from previously investigated branch characteristics. A predicted result is defined to take effect when a branch is predicted to occur in a conditional branch instruction. When the value indicating the branch condition sent from the conditional branch recognition unit 4 is valid, the prediction result is output from the branch prediction table 25. When the input from the conditional branch recognition unit 4 is invalid, the output from the branch prediction table 25 is also invalid. The output from the branch prediction table 25 is sent to the instruction prefetch unit 2 as the output of the conditional branch prediction unit 6.

したがって、命令先取り部2に送られる予測結果7の有
効、無効はそれぞれ以下の意味を持つ。
Therefore, whether the prediction result 7 sent to the instruction prefetch unit 2 is valid or invalid has the following meanings.

予測結果7が有効:命令レジスタ3に格納されている命
令が条件分岐命令であり、かつ、この分岐命令で分岐す
ると予想される。
Prediction result 7 is valid: The instruction stored in the instruction register 3 is a conditional branch instruction, and a branch is expected to occur with this branch instruction.

予測結果7が無効:命令レジスタ3に格納されている命
令が条件分岐命令でない、または、分岐命令で分岐しな
いと予想される。
Prediction result 7 is invalid: The instruction stored in the instruction register 3 is not a conditional branch instruction, or it is predicted that a branch instruction will not branch.

命令先取り部2では、条件分岐予測部6から出力された
予測結果7が有効のときには、アドレス・バス17を通
して送られる分岐先アドレスより命令フェッチを開始す
るように主記憶制御部12を制御する。また、条件分岐
予測部6から出力された予測結果7が無効であるときに
は、後続命令をフェッチするように主記憶制御部12を
制御する。
The instruction prefetch unit 2 controls the main memory control unit 12 to start fetching instructions from the branch destination address sent through the address bus 17 when the prediction result 7 output from the conditional branch prediction unit 6 is valid. Further, when the prediction result 7 output from the conditional branch prediction unit 6 is invalid, the main memory control unit 12 is controlled to fetch a subsequent instruction.

このような制御を行うことにより、分岐すると予想され
る条件分岐命令において、分岐が成立するより前に命令
コートをフェッチすることを可能とする。
By performing such control, in a conditional branch instruction that is expected to take a branch, it is possible to fetch an instruction code before the branch is taken.

(発明の効果) 本発明による情報処理装置では、分岐命令の履歴情報を
基にして分岐予測を行う方式に比較して少ないハードウ
ェアで条件分岐命令の予測を行うことができる。また、
分岐方向から分岐予測を行う方式より精度の良い予測が
できる。このため、少ないハードウェアにより、条件分
岐命令を高速に実行できる情報処理装置を構成すること
が可能になる。
(Effects of the Invention) In the information processing device according to the present invention, it is possible to predict a conditional branch instruction using less hardware than a method of predicting a branch based on history information of branch instructions. Also,
This method allows for more accurate prediction than a method that performs branch prediction based on the branch direction. Therefore, it is possible to configure an information processing device that can execute conditional branch instructions at high speed with less hardware.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明の構成要素を示す図、第2図は、本発
明の一実施例における情報処理装置の構成を示す図、第
3図は、本発明の一実施例における命令デコーダの構成
を示す図、第4図は、本発明の一実施例における情報処
理装置での条件分岐命令の命令形式を示す図である。 図において、 2・・・命令先取り部     3・・・命令レジスタ
4・、・条件分岐認識部    5・・・分岐距離認識
部6・・・条件分岐予測部    7・・・予測結果1
0・・・プロセッサ      11・・・主記憶12
・・・主記憶制御部     13・・・命令デコーダ
14・・・命令実行部   15・・・主記憶アクセス
・バス16・・・命令コード・バス    17・・・
アドレス・バス18・・・命令デコード結果バス 19
・・・データ・バス20・・・条件分岐判定部    
21・・・ゲート22、・・否定部        2
3・・・セレクタ部24・・・FF1部     25
・・・分岐予測テーブル30、・2条件分岐命令   
  31.・、命令コード32・・・条件分岐であるこ
とを示す値33・・・分岐する条件を示す値 34・・・分岐距離       35・・・符号ビッ
ト。−一。 l ′
FIG. 1 is a diagram showing the components of the present invention, FIG. 2 is a diagram showing the configuration of an information processing apparatus in an embodiment of the present invention, and FIG. 3 is a diagram showing the configuration of an instruction decoder in an embodiment of the present invention. FIG. 4, a diagram showing the configuration, is a diagram showing an instruction format of a conditional branch instruction in an information processing apparatus according to an embodiment of the present invention. In the figure, 2... Instruction prefetch unit 3... Instruction register 4... Conditional branch recognition unit 5... Branch distance recognition unit 6... Conditional branch prediction unit 7... Prediction result 1
0... Processor 11... Main memory 12
...Main memory control unit 13...Instruction decoder 14...Instruction execution unit 15...Main memory access bus 16...Instruction code bus 17...
Address bus 18...Instruction decode result bus 19
...Data bus 20...Conditional branch judgment section
21...Gate 22,...Negation part 2
3...Selector section 24...FF1 section 25
...Branch prediction table 30, 2-condition branch instruction
31.・Instruction code 32...Value 33 indicating that it is a conditional branch...Value 34 indicating the condition for branching...Branch distance 35...Sign bit. -One. l'

Claims (1)

【特許請求の範囲】[Claims] 命令の先取りを行う命令先取り部、命令を格納するため
の命令レジスタを持つ情報処理装置において、命令レジ
スタに格納された命令を入力として、これが条件分岐命
令であることを認識し分岐の条件を出力する条件分岐認
識部、命令レジスタに格納された命令を入力し分岐距離
に対応する値を出力する分岐距離認識部、前記の条件分
岐認識部と分岐距離認識部からの出力をもとに分岐方向
の予測を行う条件分岐予測部を持たせ、条件分岐予測部
から出力される予測結果を命令先取り部に入力すること
により、命令先取り部で行う命令の先取り方向を制御す
ることを特徴とする情報処理装置。
In an information processing device that has an instruction prefetch unit that prefetches instructions and an instruction register for storing instructions, it receives the instruction stored in the instruction register as input, recognizes that this is a conditional branch instruction, and outputs the branch condition. A conditional branch recognition unit that inputs the instruction stored in the instruction register and outputs a value corresponding to the branch distance, a branch distance recognition unit that inputs the instruction stored in the instruction register, and determines the branch direction based on the output from the conditional branch recognition unit and branch distance recognition unit. Information characterized in that the instruction prefetching section controls the direction in which instructions are prefetched by having a conditional branch prediction section that predicts the conditional branch prediction section, and inputs the prediction result output from the conditional branch prediction section to the instruction prefetching section. Processing equipment.
JP61169132A 1986-07-17 1986-07-17 Information processing device Expired - Lifetime JP2534674B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61169132A JP2534674B2 (en) 1986-07-17 1986-07-17 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61169132A JP2534674B2 (en) 1986-07-17 1986-07-17 Information processing device

Publications (2)

Publication Number Publication Date
JPS6324421A true JPS6324421A (en) 1988-02-01
JP2534674B2 JP2534674B2 (en) 1996-09-18

Family

ID=15880874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61169132A Expired - Lifetime JP2534674B2 (en) 1986-07-17 1986-07-17 Information processing device

Country Status (1)

Country Link
JP (1) JP2534674B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH033125A (en) * 1989-05-31 1991-01-09 Sony Corp Laser driving circuit

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5991552A (en) * 1982-11-17 1984-05-26 Nec Corp Instruction prefetch device having set associative type history table
JPS6051948A (en) * 1983-08-31 1985-03-23 Hitachi Ltd Branch destination buffer storage device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5991552A (en) * 1982-11-17 1984-05-26 Nec Corp Instruction prefetch device having set associative type history table
JPS6051948A (en) * 1983-08-31 1985-03-23 Hitachi Ltd Branch destination buffer storage device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH033125A (en) * 1989-05-31 1991-01-09 Sony Corp Laser driving circuit
JP2734091B2 (en) * 1989-05-31 1998-03-30 ソニー株式会社 Laser drive circuit

Also Published As

Publication number Publication date
JP2534674B2 (en) 1996-09-18

Similar Documents

Publication Publication Date Title
US5168571A (en) System for aligning bytes of variable multi-bytes length operand based on alu byte length and a number of unprocessed byte data
KR100208889B1 (en) Parallel processing device amd parallel processing method
JPH0283735A (en) Instruction prefetching device
JPS633337B2 (en)
JP2006520964A5 (en)
JP2006520964A (en) Method and apparatus for branch prediction based on branch target
US5146570A (en) System executing branch-with-execute instruction resulting in next successive instruction being execute while specified target instruction is prefetched for following execution
JPH0743648B2 (en) Information processing equipment
JPS6324421A (en) Information processor
KR100465250B1 (en) Microprocessor
JP2534662B2 (en) Instruction cache control method
JP2999907B2 (en) Central processing unit with microprogram control
JPS63221427A (en) Information processor for branch estimation
JP2503223B2 (en) Prior control method
JPH0248733A (en) Information processor
JP2591325B2 (en) Branch control device
KR19980052331A (en) How to Control Cache Memory on Processors
JPS63168730A (en) Branching instruction processor
JPH02208723A (en) Information processor
JPS6336336A (en) Information processor
JPH0553807A (en) Condition branching instruction prefetch control system
JPH06332701A (en) Information processor
JPH01263830A (en) Information processor
JPS63221428A (en) Data processor
US20050188183A1 (en) Digital signal processor having data address generator with speculative register file