JPH07219771A - Instruction processor - Google Patents

Instruction processor

Info

Publication number
JPH07219771A
JPH07219771A JP1278094A JP1278094A JPH07219771A JP H07219771 A JPH07219771 A JP H07219771A JP 1278094 A JP1278094 A JP 1278094A JP 1278094 A JP1278094 A JP 1278094A JP H07219771 A JPH07219771 A JP H07219771A
Authority
JP
Japan
Prior art keywords
instruction
instructions
processing
previous
data
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
JP1278094A
Other languages
Japanese (ja)
Inventor
Kotaro Matsuo
康太郎 松尾
Masashi Yoshida
昌司 吉田
Kotaro Shimamura
光太郎 島村
Takashi Hotta
多加志 堀田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP1278094A priority Critical patent/JPH07219771A/en
Publication of JPH07219771A publication Critical patent/JPH07219771A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

(57)【要約】 【目的】 ある命令の実行結果が前命令の実行結果によ
り決まる時、高速化のために、前命令の実行結果を仮定
してその命令の実行を行い、この時、前命令の実行結果
に誤りがあれば、その誤りに起因する後続命令の誤りを
正す処理のペナルティを減少させる。 【構成】 前命令0bの実行結果により決まる命令1aを判
定して該命令の複写命令1a'を作成し、前命令0bの演算
結果に基づき命令1aを実行すると共に、レジスタの前デ
ータを用いて複写命令1a'の演算を実行する。その後、
命令0bが無効化されなかったときは、複写命令1a'の演
算結果の書き込みを抑止し、命令0bが無効化されたとき
は、複写命令1a'の演算結果を有効とし、命令1aの演算
結果の無効化を行う。これにより、実行が前命令の実行
結果により決まる命令において、その前命令の実行結果
に誤りが生じても、小ペナルティによって処理でき、プ
ロセッサの性能向上を実現できる。
(57) [Summary] [Purpose] When the execution result of a certain instruction is determined by the execution result of the previous instruction, the instruction is executed assuming the execution result of the previous instruction for the sake of speedup. If there is an error in the execution result of the instruction, the penalty of the process of correcting the error of the subsequent instruction due to the error is reduced. [Structure] The instruction 1a determined by the execution result of the previous instruction 0b is determined, the copy instruction 1a 'of the instruction is created, the instruction 1a is executed based on the operation result of the previous instruction 0b, and the previous data in the register is used. Executes the operation of copy instruction 1a '. afterwards,
When the instruction 0b is not invalidated, the writing of the operation result of the copy instruction 1a 'is suppressed, and when the instruction 0b is invalidated, the operation result of the copy instruction 1a' is validated, and the operation result of the instruction 1a is enabled. Invalidate. As a result, in an instruction whose execution is determined by the execution result of the previous instruction, even if an error occurs in the execution result of the previous instruction, it can be processed with a small penalty and the performance of the processor can be improved.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はパイプライン化された複
数の命令を並列処理するときに前命令の実行結果を待た
ずにその実行結果を仮定して次命令を実行するプロセッ
サに係り、特に、仮定した値が前命令の実行結果と異な
ったときに次命令の再実行を実行するまでの時間を減少
させるのに好適な命令プロセッサに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a processor for executing a next instruction by assuming the execution result of the previous instruction without waiting for the execution result when parallel processing a plurality of pipelined instructions. , An instruction processor suitable for reducing the time until the re-execution of the next instruction is executed when the assumed value differs from the execution result of the previous instruction.

【0002】[0002]

【従来の技術】RISCプロセッサ等の高機能情報処理装置
の性能向上の手段として、命令の処理を段階的に実行す
るパイプライン技術と、1つのプロセッサ内で複数の命
令を並列に処理するスーパスカラ技術が知られている。
2. Description of the Related Art As a means for improving the performance of a high-performance information processing apparatus such as a RISC processor, a pipeline technology for executing instruction processing stepwise and a superscalar technology for processing a plurality of instructions in parallel in one processor It has been known.

【0003】パイプライン技術は、1つの命令の実行を
行うために命令をメモリからフェッチする処理、命令を
デコードする処理、データの演算等を行う処理、レジス
タ書き込みを行う処理等の処理が必要となるため、1つ
の命令を複数のステージに分割し、各ステージを個別に
実行することにより命令を段階的に実行する技術であ
る。このパイプライン技術により、1つの命令の実行中
に次の命令の実行が開始でき、命令の効率の良い実行が
可能となる。
The pipeline technique requires a process of fetching an instruction from a memory, a process of decoding an instruction, a process of calculating data, a process of writing a register, etc. in order to execute one instruction. Therefore, this is a technique of dividing one instruction into a plurality of stages and executing each stage individually to execute the instruction stepwise. With this pipeline technique, the execution of the next instruction can be started during the execution of one instruction, and the efficient execution of the instruction becomes possible.

【0004】スーパスカラ技術は、複数の命令を同時に
実行することを可能とする技術である。これを実現する
ためには、例えば複数の演算ユニットを持つことが必要
である。
The superscalar technology is a technology that enables a plurality of instructions to be executed simultaneously. In order to realize this, it is necessary to have a plurality of arithmetic units, for example.

【0005】パイプライン技術を利用する場合、ある命
令の実行結果が前命令の実行結果により決まる場合があ
る。このような場合の処理を高速に行なうには、前命令
の実行結果を仮定し、その命令の実行を行うという方法
がよく用いられる。しかし、もし仮定した前命令の実行
結果に誤りがあれば、その結果を用いた命令にも誤りが
生じ、その誤りを処理するためのペナルティが発生す
る。
When using the pipeline technique, the execution result of a certain instruction may be determined by the execution result of the previous instruction. In order to perform the processing in such a case at high speed, a method of assuming the execution result of the previous instruction and executing the instruction is often used. However, if there is an error in the execution result of the assumed previous instruction, an error will also occur in the instruction using the result, and a penalty for processing the error will occur.

【0006】ある命令の演算結果を次命令が必要とする
場合、パイプラインを止めずに処理するには、最初の命
令の演算結果をレジスタに書き込む前にその結果を次の
命令に送ることがしばしば行なわれる。これをショート
パス、もしくはフォワーディングと呼ぶ。
When the operation result of one instruction is required by the next instruction, in order to process the operation result without stopping the pipeline, the operation result of the first instruction can be sent to the next instruction before being written to the register. Often done. This is called short pass or forwarding.

【0007】ショートパスを行なった後に最初の命令が
プログラムの流れにより無効になれば、次の命令も無効
化されたデータを用いたことになるため、やり直す必要
がある。ここで命令が無効になることをナリファイと呼
び、ナリファイにより別の命令をやり直すことをリトラ
イと呼ぶ。リトライを行なうためには、パイプラインに
より実行中の全命令を中断し、ショートパスされた命令
を最初から実行し直す必要がある。その結果、数クロッ
クサイクルの間、命令を1つも実行できないペナルティ
が生じる。
If the first instruction becomes invalid due to the flow of the program after performing the short pass, it means that the next instruction also uses the invalidated data, and it is necessary to redo it. Here, the invalidation of an instruction is called “narify”, and the redoing of another instruction due to the nullify is called “retry”. In order to perform the retry, it is necessary to suspend all the instructions being executed by the pipeline and re-execute the short-passed instructions from the beginning. As a result, there is a penalty that no instruction can be executed for several clock cycles.

【0008】図8は、従来のプロセッサの構成図であ
る。100は主記憶、102は命令キャッシュ、104
は命令発行ユニット、106は命令処理ユニットであ
る。命令処理ユニット106は、アドレス信号191を
用い、命令キャッシュ102に該当命令を読み出させ、
読み出させた命令をバス103a〜103dを通し命令発
行ユニット104に送らせる。命令発行ユニット104
は、受け取った命令の中から並列に処理できるものを選
び出し、バス105a〜105dを通し、命令処理ユニッ
ト106に送る。命令処理ユニット106はその命令の
演算を行い、さらにショートパスとナリファイの判定を
行い、命令アドレス信号191によりリトライを行う。
FIG. 8 is a block diagram of a conventional processor. 100 is a main memory, 102 is an instruction cache, 104
Is an instruction issuing unit, and 106 is an instruction processing unit. The instruction processing unit 106 uses the address signal 191 to cause the instruction cache 102 to read the corresponding instruction,
The read instruction is sent to the instruction issuing unit 104 through the buses 103a to 103d. Instruction issuing unit 104
Selects an instruction that can be processed in parallel from the received instructions and sends it to the instruction processing unit 106 through the buses 105a to 105d. The instruction processing unit 106 calculates the instruction, further determines the short pass and the nullify, and retries by the instruction address signal 191.

【0009】尚、従来技術に関連するものとして、特開
昭61−107435号公報記載のものがある。しか
し、この従来技術は、先行命令に依存する命令の処理を
予測により行い、予測が正しいと判断された場合のみ結
果をメモリに書き込むにすぎず、予測が間違っていたと
きにリトライするものではない。
Incidentally, one related to the prior art is disclosed in Japanese Patent Laid-Open No. 61-107435. However, this conventional technique only processes the instruction that depends on the preceding instruction by prediction, writes the result to the memory only when the prediction is determined to be correct, and does not retry when the prediction is incorrect. .

【0010】[0010]

【発明が解決しようとする課題】図9は、図8に示す従
来のプロセッサにおけるリトライに起因するペナルティ
サイクルを示す図である。この図の例では、4つの命令
a,b,c,dが並列処理されている。この図9の例で
は、パイプライン段数は6段であり、演算はEステージ
で行われる。このEステージでの命令bの演算結果が、
次命令aにショートパス143される。しかし、次のF
ステージで命令aが命令bを無効にするナリファイ信号
153が発せられると、命令bはWステージで演算結果
をレジスタに格納することはせず、次命令aをリトライ
する信号191を発行する。この図から明らかなよう
に、ショートパス信号143,ナリファイ信号153,
命令アドレスを再度フェッチする信号191に夫々1サ
イクル必要であり、また、リトライが発生すれば4サイ
クルのペナルティが生じる。
FIG. 9 is a diagram showing a penalty cycle resulting from a retry in the conventional processor shown in FIG. In the example of this figure, four instructions a, b, c, d are processed in parallel. In the example of FIG. 9, the number of pipeline stages is 6, and the operation is performed in the E stage. The operation result of the instruction b at this E stage is
A short pass 143 is given to the next command a. But next F
When the verify signal 153 which invalidates the instruction b is issued at the stage, the instruction b does not store the operation result in the register at the W stage and issues the signal 191 for retrying the next instruction a. As is clear from this figure, the short path signal 143, the nullify signal 153,
Each signal 191 for fetching the instruction address again requires one cycle, and if a retry occurs, a penalty of four cycles occurs.

【0011】本発明の目的は、ある命令の実行結果が前
命令の実行結果により決る場合における前述した様なペ
ナルティを減少させることが可能な命令プロセッサを提
供することにある。
An object of the present invention is to provide an instruction processor capable of reducing the above-mentioned penalty when the execution result of a certain instruction is determined by the execution result of the previous instruction.

【0012】[0012]

【課題を解決するための手段】上記目的は、複数の命令
を繰り返し並列にパイプライン処理する命令プロセッサ
において、パイプライン処理の終段で命令の演算結果を
保持するデータ保持手段と、命令が前命令の実行結果の
ショートパスを受けて実行するものであり且つ該前命令
がナリファイされる可能性のある命令を複写し2つの同
一の第1命令と第2命令にする命令複写手段と、前記第
1命令を前記ショートパスによるデータに基づいて実行
させる共に前記第2命令を前記データ保持手段の格納デ
ータに基づいて実行させる命令処理手段と、前記前命令
がナリファイされた場合には前記第2命令の演算結果を
前記データ保持手段に保持させ前記前命令がナリファイ
されなかった場合には前記第1命令の演算結果を前記デ
ータ保持手段に保持させるデータ書き込みの抑止手段と
を設けることで、達成される。
SUMMARY OF THE INVENTION In the instruction processor for repeatedly pipeline processing a plurality of instructions in parallel, a data holding means for holding an operation result of an instruction at the final stage of pipeline processing and an instruction An instruction copying means for receiving a short path as a result of execution of an instruction and executing the instruction, and copying the instruction in which the previous instruction may be nullified into two identical first and second instructions; Instruction processing means for executing the first instruction based on the data by the short path and executing the second instruction based on the data stored in the data holding means; and the second instruction if the previous instruction is nullified. The operation result of the instruction is held in the data holding means, and when the previous instruction is not nullified, the operation result of the first instruction is held in the data holding means. By providing a deterrent for data writing to be accomplished.

【0013】[0013]

【作用】前命令からショートパスを受けて実行した第1
命令の演算結果が、前命令のナリファイにより無効にな
った場合には、この第1命令と並列または該第1命令の
直後に実行する第2命令の演算結果を有効とすること
で、ペナルティが減少する。即ち、第1命令の実行結果
が無効となったことが判明した後に第2命令に必要デー
タを渡して実行させる場合に比べ、第2命令の演算結果
を直に得ることができる。第1命令の実行と第2命令の
実行のいずれかは無駄な実行となるが、その無駄による
不利益よりも減少するペナルティの方が命令プロセッサ
になって遥かに利益となる。
[Operation] First executed by receiving a short path from the previous instruction
If the operation result of the instruction becomes invalid due to the narify of the previous instruction, the operation result of the second instruction executed in parallel with the first instruction or immediately after the first instruction is validated, and the penalty is increased. Decrease. That is, the operation result of the second instruction can be directly obtained, as compared with the case where the necessary data is passed to the second instruction and executed after it is determined that the execution result of the first instruction is invalid. Either the execution of the first instruction or the execution of the second instruction is a wasteful execution, but the penalty to be reduced is a much better benefit as an instruction processor than the disadvantage due to the waste.

【0014】[0014]

【実施例】以下、本発明の一実施例を図面を参照して説
明する。図1は本発明の第1実施例に係る命令プロセッ
サの構成図である。10は命令を保持する手段、20は
複写を判定する手段、30は命令を複写する手段、40
は命令を並列処理する手段、50は誤演算の書き込みを
抑止する手段、60はデータを保持する手段である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. 1 is a block diagram of an instruction processor according to a first embodiment of the present invention. 10 is a means for holding an instruction, 20 is a means for judging copying, 30 is a means for copying an instruction, 40
Is a means for processing instructions in parallel, 50 is means for suppressing writing of erroneous operations, and 60 is means for holding data.

【0015】命令を保持する手段10から読み出された
各命令は、信号線11を通して複写を判定する手段20
に送られる。複写を判定する手段20は、 (a)その命令が前命令の実行結果を必要とするか否か (b)上記前命令がプログラムの流れによりナリファイ
される可能性があるか否か の2つの条件により、複写すべきか否かの判定を行う。
その命令が前命令の実行結果を必要とししかもナリファ
イされる可能性がある場合には、その命令を複写すべき
と判定し、命令を複写する手段30でその命令を同一の
2つの命令にし、信号線31,32を通して、命令を処
理する手段40に送る。
Each instruction read from the instruction holding means 10 is copied 20 through the signal line 11 to determine copying.
Sent to. The means 20 for judging the copy has two functions: (a) whether or not the instruction requires the execution result of the preceding instruction, and (b) whether or not the preceding instruction is likely to be qualified by the flow of the program. Depending on the conditions, it is determined whether or not copying should be performed.
If the instruction requires the execution result of the previous instruction and there is a possibility that it will be nullified, it is determined that the instruction should be copied, and the instruction copying means 30 makes the instruction two identical instructions. The signals are sent to the means 40 for processing through the signal lines 31 and 32.

【0016】命令を処理する手段40は、複写した2つ
の命令を、データを保持する手段60から夫々必要なデ
ータをもらって実行する。つまり、一方の命令は、前命
令の結果をショートパスで受け取り処理し、他方の命令
は、ショートパスによりデータを受け取るのではなく以
前の前命令の実行結果を格納してあるレジスタの格納デ
ータを使用して処理する。各処理結果は、信号線43,
44を通してデータを保持する手段60に送られる。誤
演算の書き込みを抑止する手段50は、信号線41,4
2を通して命令を処理する手段40から処理結果をもら
う。このとき、ナリファイが発生すると、ショートパス
によるデータで処理された命令の処理結果を無効化(該
処理結果の手段60に対する書き込みを抑止)すべく、
信号線51を通しデータを保持する手段60に対しする
書き込みを抑止する制御信号を発行する。また、ナリフ
ァイされなかった場合には、ショートパスによらないデ
ータで処理された命令の処理結果が無効化される。
The means 40 for processing instructions executes the two copied instructions by receiving necessary data from the means 60 for holding data. That is, one instruction receives and processes the result of the previous instruction through the short path, and the other instruction does not receive data through the short path, but stores the data stored in the register that stores the execution result of the previous previous instruction. Use and process. The result of each processing is the signal line 43,
It is sent via 44 to the means 60 for holding the data. The means 50 for suppressing the writing of the erroneous calculation includes the signal lines 41, 4
The processing result is obtained from the means 40 for processing the instruction through 2. At this time, if a narify occurs, the processing result of the instruction processed by the data by the short path is invalidated (writing of the processing result to the means 60 is suppressed).
A control signal is issued which suppresses writing to the means 60 for holding data through the signal line 51. Further, when the narify is not performed, the processing result of the instruction processed by the data not based on the short path is invalidated.

【0017】複写を判定する手段20が命令の複写を必
要としないと判定した場合は、複写は行なわれず、その
命令は信号線31を通して命令を処理する手段40に送
られ、処理された結果は、信号線43を通して データ
を保持する手段60に書き込まれる。
If the means 20 for determining copying does not require copying of the instruction, no copying is performed and the instruction is sent through the signal line 31 to the means 40 for processing the instruction and the processed result is , Is written in the means 60 for holding data through the signal line 43.

【0018】図2は、本発明の第2実施例に係る命令プ
ロセッサの構成図である。100は主記憶、110は命
令キャッシュ(図1の命令を保持する手段10に相
当)、115は予測ビット生成ユニット、120は命令
発行ユニット(図1の複写を判定する手段20に相
当)、125はセレクタユニット(図1の命令を複写す
る手段30に相当)、130はデコードユニット、14
0は整数,浮動小数点等を含む演算ユニット(図1の命
令を処理する手段40に相当)、150はナリファイ生
成ユニット、160はショートパス制御ユニット、17
0は命令無効化ユニット(図1の誤演算の書き込みを抑
止する手段50に相当)、180はレジスタ(図1のデ
ータを保持する手段60)、190は命令アドレス生成
ユニットである。命令キャッシュ110には誤演算予測
ビット112が保持される。この実施例では最大4命令
を並列に処理することが可能である。
FIG. 2 is a block diagram of an instruction processor according to the second embodiment of the present invention. Reference numeral 100 is a main memory, 110 is an instruction cache (corresponding to the means 10 for holding the instruction in FIG. 1), 115 is a prediction bit generating unit, 120 is an instruction issuing unit (corresponding to the means 20 for judging copying in FIG. 1), 125 Is a selector unit (corresponding to the means 30 for copying the instruction of FIG. 1), 130 is a decoding unit, 14
0 is an arithmetic unit including an integer, a floating point, etc. (corresponding to the means 40 for processing the instruction in FIG. 1), 150 is a nullify generating unit, 160 is a short path control unit, 17
Reference numeral 0 is an instruction invalidation unit (corresponding to the means 50 for suppressing erroneous operation writing in FIG. 1), 180 is a register (means 60 for holding data in FIG. 1), and 190 is an instruction address generation unit. The instruction cache 110 holds the miscalculation prediction bit 112. In this embodiment, it is possible to process up to four instructions in parallel.

【0019】命令キャッシュ110は命令アドレス信号
191、に基づき、該当命令をバス111を通して命令
発行ユニット120に出力する。この時、必要であれ
ば、バス101を通して主記憶100から該当命令を読
み出し、命令発行ユニット120に出力する。命令発行
ユニット120に出力される命令は、予測ビット112
(上記の(a)(b)の条件により複写すべきとされた
命令を示す。)が付加される。
The instruction cache 110 outputs the corresponding instruction to the instruction issuing unit 120 through the bus 111 based on the instruction address signal 191. At this time, if necessary, the corresponding instruction is read from the main memory 100 through the bus 101 and output to the instruction issuing unit 120. The instruction output to the instruction issuing unit 120 has a prediction bit 112.
(Indicating an instruction to be copied under the conditions (a) and (b) above) is added.

【0020】命令発行ユニット120は、命令選択信号
122をセレクタユニット125に送り、誤演算予測ビ
ット112の立っている命令を複写し、その2つの命令
を同時にデコードユニット130に発行する。デコード
ユニット130は命令をデコードし、演算制御信号13
3を演算ユニット140へ、複写が発生したことを示す
制御信号131を命令無効化ユニット170へ、ナリフ
ァイが発生する可能性のあることを示す制御信号132
をナリファイ生成ユニット150へ、ショートパスをが
発生することを示す制御信号134をショートパス制御
ユニット160へ送る。
The instruction issuing unit 120 sends an instruction selection signal 122 to the selector unit 125, copies the instruction in which the miscalculation prediction bit 112 is set, and issues the two instructions to the decoding unit 130 at the same time. The decode unit 130 decodes the instruction and outputs the operation control signal 13
3 to the arithmetic unit 140, a control signal 131 indicating that copying has occurred to the instruction invalidating unit 170, and a control signal 132 indicating that there is a possibility that narify will occur.
Is sent to the Nalify generation unit 150 and a control signal 134 indicating that a short path is generated is sent to the short path control unit 160.

【0021】もし誤演算予測ビット112が立っていた
ため、複写を行ない、かつ、予測が当たってショートパ
スする命令がナリファイされた場合、命令無効化ユニッ
ト170は、ショートパス制御ユニット160からのシ
ョートパス発生信号161と、ナリファイ生成ユニット
150からのナリファイ発生信号151と、デコードユ
ニット130からの複写発生信号131の三つの信号よ
り、無効にする命令を判定し、命令無効化信号171に
よりその命令の実行結果のレジスタ180への書き込み
を抑止する。ナリファイ発生信号151はナリファイが
発生する可能性のあることを示す制御信号132と演算
ユニット140の演算結果141より、ナリファイ生成
ユニット150で作られる。
If the miscalculation prediction bit 112 is set, copying is performed, and if a short pass instruction is made due to prediction and the instruction is invalidated, the instruction invalidation unit 170 causes the short pass control unit 160 to perform the short pass. The instruction to be invalidated is determined from the three signals, the generation signal 161, the nullification generation signal 151 from the nullification generation unit 150, and the copy generation signal 131 from the decoding unit 130, and the instruction invalidation signal 171 executes the instruction. The writing of the result to the register 180 is suppressed. The Nalify generation signal 151 is generated by the Nalify generation unit 150 from the control signal 132 indicating that Nalify may occur and the calculation result 141 of the calculation unit 140.

【0022】もし誤演算予測ビット112が立っていな
かったためナリファイされる命令の複写が行われず、か
つ、ショートパスする命令がナリファイされたら、従来
例と同様リトライによる処理が行われ、次にその命令を
実行する時に予測できるようにするために、誤演算予測
ビット112に“1”が書き込まれる。リトライ動作
は、ナリファイ生成ユニット150からのナリファイ発
生信号151とショートパス制御ユニット160からの
ショートパス発生信号161を用いて、命令アドレス生
成ユニット190でリトライアドレスを生成し、命令キ
ャッシュに命令アドレス信号191を通してリトライア
ドレスを送ることにより実現される。誤演算予測ビット
112に“1”を書き込むため、ショートパス制御ユニ
ット160とナリファイ生成ユニット150は、ショー
トパスとナリファイの発生信号161と151を予測ビ
ット生成ユニット115に送り、予測ビット生成ユニッ
ト115は予測ビット信号116を作り、それを命令キ
ャッシュ110に送る。
If the miscalculation prediction bit 112 is not set, the instruction to be nullified is not copied, and if the short-passing instruction is nullified, the retry processing is performed as in the conventional example, and then the instruction is executed. "1" is written in the miscalculation prediction bit 112 so that the prediction can be performed when executing. In the retry operation, the retry address is generated by the instruction address generation unit 190 using the nullify generation signal 151 from the nullify generation unit 150 and the short path generation signal 161 from the short path control unit 160, and the instruction address signal 191 is stored in the instruction cache. It is realized by sending the retry address through. In order to write “1” to the miscalculation prediction bit 112, the short path control unit 160 and the nullify generation unit 150 send the short path and nullify generation signals 161 and 151 to the prediction bit generation unit 115, and the prediction bit generation unit 115 Create the predicted bit signal 116 and send it to the instruction cache 110.

【0023】もし誤演算予測ビット112が立っていた
ため、ショートパスする命令が、ナリファイされるとい
う予測をした場合に、予測が外れ、ショートパスした命
令がナリファイされなかったら、ショートパス制御ユニ
ット160とナリファイ生成ユニット150は予測ビッ
ト生成ユニット115に信号161,151を送り、予
測ビット生成ユニット115は誤演算予測ビット信号1
16を作り、命令キャッシュ110に送り、誤演算する
と予測された命令の誤演算予測ビット112を“0”に
する。
If it is predicted that an instruction that short-passes will be nullified because the miscalculation prediction bit 112 is set, if the prediction is incorrect and the short-passed instruction is not nullified, the short-path control unit 160 is called. The Nalify generation unit 150 sends signals 161, 151 to the prediction bit generation unit 115, and the prediction bit generation unit 115 outputs the miscalculated prediction bit signal 1
16 is sent to the instruction cache 110, and the miscalculation prediction bit 112 of the instruction predicted to be miscalculated is set to "0".

【0024】図3は、図2のセレクタユニット125の
構成図である。121a〜121dは命令発行ユニット
120から発行される命令、122は命令発行ユニット
120から出る命令選択信号、126は命令複写セレク
タである。命令121a〜121dには誤演算予測ビッ
ト112が含まれている。もし命令121a〜121d
の誤演算予測ビット112が1つも立っていなければ、
通常の処理が行われ、命令の複写は行われない。もし命
令121b,121c,121dのどれかの誤演算予測
ビット112が立っていれば、命令発行ユニット120
はそれ以前の命令を先に発行し、後の命令のシフトを行
う。従って、次のサイクルでは命令121aの誤演算予
測ビット112が立つことになる。もし命令121aの
誤演算ビット112が立っていれば、命令発行ユニット
120は命令選択信号122を命令複写セレクタ126
に送ることにより該セレクタ126を制御し、命令12
1aを複写する。この場合、命令121b,121c,
121dは、次のサイクルで発行される。
FIG. 3 is a block diagram of the selector unit 125 of FIG. Reference numerals 121a to 121d are instructions issued by the instruction issuing unit 120, 122 is an instruction selection signal output from the instruction issuing unit 120, and 126 is an instruction copy selector. The instructions 121a to 121d include the miscalculation prediction bit 112. If instructions 121a-121d
If none of the miscalculation prediction bits 112 of
Normal processing occurs, no copying of instructions. If the miscalculation prediction bit 112 of any of the instructions 121b, 121c, 121d is set, the instruction issuing unit 120
Issues earlier instructions first and shifts later instructions. Therefore, in the next cycle, the miscalculation prediction bit 112 of the instruction 121a is set. If the miscalculation bit 112 of the instruction 121a is set, the instruction issuing unit 120 outputs the instruction selection signal 122 to the instruction copy selector 126.
Control the selector 126 by sending
Copy 1a. In this case, the instructions 121b, 121c,
121d is issued in the next cycle.

【0025】図4は、図2,図3で説明した実施例の動
作を示すパイプライン説明図である。IFAステージで
は、命令を命令キャッシュに取りに行く。IFBステージ
では、複写の判定を行ない、命令を命令発行ユニットか
らデコードユニットに移す。Dステージでは命令をデコ
ードする。Eステージではデータの演算等を行う。Fス
テージでは、必要に応じてナリファイ信号を作る。Wス
テージではレジスタ書き込みを行なう。143はショー
トパス信号、153はナリファイ信号のタイミングであ
る。
FIG. 4 is a pipeline explanatory diagram showing the operation of the embodiment described with reference to FIGS. At the IFA stage, the instruction goes to the instruction cache. In the IFB stage, copy determination is performed and the instruction is transferred from the instruction issue unit to the decode unit. The D stage decodes the instruction. At the E stage, data calculation and the like are performed. In the F stage, a nullify signal is created as needed. Register writing is performed in the W stage. Reference numeral 143 is a short path signal, and 153 is a timing of a nullify signal.

【0026】IFAステージでは、0a,0b,0c,0d等の連
続するアドレスの4命令を命令キャッシュへ取りに行
き、IFBステージでその4命令を命令発行ユニットに移
し、誤演算予測ビットが立っているがどうかを判定し、
命令の発行を制御する。図4の例では、命令1aの誤演算
予測ビット112が立っているため、命令1aを複写し、
複写命令1a'を作る。この例では、Eステージの命令0b
からDステージの命令1aのショートパス143が発生す
る。そして、Dステージでは、ショートパスされた命令
1aと、ショートパスされなかった複写命令1a'の各デコ
ードを行う。命令1aはEステージではショートパスされ
たデータに基づいて演算を行い、複写命令1a'は、Eス
テージでは、レジスタに格納されている前のデータを用
いて演算を行う。
At the IFA stage, four instructions at consecutive addresses such as 0a, 0b, 0c, 0d are fetched to the instruction cache, and at the IFB stage, the four instructions are moved to the instruction issue unit, and the erroneous operation prediction bit is set. Judge whether there is
Control the issuing of instructions. In the example of FIG. 4, since the miscalculation prediction bit 112 of the instruction 1a is set, the instruction 1a is copied,
Make a copy command 1a '. In this example, E stage instruction 0b
Occurs the short path 143 of the D stage instruction 1a. And in the D stage, the short-passed instruction
1a and the copy instruction 1a 'which has not been short-passed are decoded. The instruction 1a performs an operation based on the short-passed data in the E stage, and the copy instruction 1a 'performs an operation in the E stage using the previous data stored in the register.

【0027】ここで、命令0bが、ナリファイ信号153
によりFステージでナリファイされると、Wステージで
は、命令1aの演算結果がレジスタ180へ書き込まれる
のを抑止する。もし、予測が外れ、ナリファイ信号15
3が発生しなければ、複写命令1a'の演算結果がレジス
タへ書き込まれるのを抑止する。従って、この実施例で
は、ペナルティは0サイクルとなる。
Here, the instruction 0b is the nullify signal 153.
When the N-stage is verified by the F stage, the operation result of the instruction 1a is prevented from being written in the register 180 in the W stage. If the prediction is wrong, the narify signal 15
If 3 does not occur, the operation result of the copy instruction 1a 'is prevented from being written in the register. Therefore, in this embodiment, the penalty is 0 cycle.

【0028】図5は、命令0bの演算結果を用いて実行す
る命令1cに誤演算予測ビット112が立っている場合の
パイプライン説明図である。命令1cは図3の命令121
cに対応する。命令発行ユニット120は、発行位置1
21aに誤演算予測ビットが立っている命令を発行しな
ければいけないため、命令1cの前にある命令1aと命令1b
を先に発行する。次のサイクルでは、予測ビット112
が立っている命令1cを複写し、命令1cと複写命令1c'を
同時に並列に実行する。他の動作は図4の場合と同様で
あり、この例でも、ペナルティは0サイクルである。
FIG. 5 is an explanatory diagram of the pipeline when the erroneous operation prediction bit 112 is set in the instruction 1c which is executed by using the operation result of the instruction 0b. Command 1c is command 121 in FIG.
Corresponds to c. The instruction issuing unit 120 has an issue position 1
Since the instruction with the miscalculation prediction bit set to 21a must be issued, the instruction 1a and the instruction 1b before the instruction 1c are issued.
Is issued first. In the next cycle, the prediction bit 112
The instruction 1c in which is set is copied, and the instruction 1c and the copy instruction 1c 'are simultaneously executed in parallel. Other operations are the same as in the case of FIG. 4, and in this example, the penalty is 0 cycle.

【0029】図6は、図2のセレクタユニット125の
別実施例に係る構成図である。図3の構成では、セレク
タが命令121aと命令121bを入力としているのに
対し、図6の構成では、命令121aとセレクタ127
自身の出力を入力としていることが異なっている。本実
施例では、斯かる構成とすることで、複写命令を本来の
命令から1サイクル遅れて実行することになるが、次の
図7で説明するように、ペナルティは少なくなる。。
FIG. 6 is a block diagram of another embodiment of the selector unit 125 of FIG. In the configuration of FIG. 3, the selector 121a and the instruction 121b are input, whereas in the configuration of FIG. 6, the instruction 121a and the selector 127 are input.
The difference is that it uses its own output as input. In this embodiment, with such a configuration, the copy instruction is executed with a delay of one cycle from the original instruction, but the penalty is reduced as will be described with reference to FIG. .

【0030】図7は、図6の構成を用いた実施例におけ
るパイプライン説明図である。Dステージではまずショ
ートパスされる命令1aを実行し、次のサイクルで同じ
命令をショートパスされない状態1a'として実行する。
この図7に示す例では、ショートパスした命令がナリフ
ァイされるため、命令1aのレジスタ書き込みを抑止す
る。もしナリファイが発生しなければ、次の複写命令1
a'のレジスタ書き込みを抑止する。複写命令1a'が次の
サイクルに実行されるため、命令1aのレジスタ書き込
み抑止の場合、ペナルティは1サイクル、命令1a'のレ
ジスタ書き込み抑止の場合、ペナルティは0サイクルと
なる。
FIG. 7 is an explanatory diagram of the pipeline in the embodiment using the configuration of FIG. In the D stage, the instruction 1a to be short-passed is first executed, and in the next cycle, the same instruction is executed as the state 1a 'which is not short-passed.
In the example shown in FIG. 7, the short-passed instruction is nullified, so that the writing of the instruction 1a into the register is suppressed. If no narify occurs, the next copy instruction 1
Suppress register writing of a '. Since the copy instruction 1a 'is executed in the next cycle, the penalty is 1 cycle when the register writing of the instruction 1a is suppressed, and the penalty is 0 cycle when the register writing of the instruction 1a' is suppressed.

【0031】尚、本発明は上述した実施例に限定される
ものではなく、その要旨を逸脱しない範囲において種々
変更可能であることは勿論である。
The present invention is not limited to the above-described embodiments, and it goes without saying that various modifications can be made without departing from the scope of the invention.

【0032】[0032]

【発明の効果】本発明によれば、下記の効果が得られ
る。 (1)実行結果が前命令の実行結果により決まる命令に
おいて、その前命令の実行結果に誤りが生じても、小ペ
ナルティによって処理できる。 (2)上記のような処理を通して、プロセッサの性能向
上を実現できる。
According to the present invention, the following effects can be obtained. (1) In an instruction whose execution result is determined by the execution result of the previous instruction, even if an error occurs in the execution result of the previous instruction, it can be processed with a small penalty. (2) The performance of the processor can be improved through the above processing.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1実施例に係る命令プロセッサの構
成図である。
FIG. 1 is a configuration diagram of an instruction processor according to a first embodiment of the present invention.

【図2】本発明の第2実施例に係る命令プロセッサの構
成図である。
FIG. 2 is a configuration diagram of an instruction processor according to a second embodiment of the present invention.

【図3】図2に示すセレクタユニットの構成図である。FIG. 3 is a configuration diagram of a selector unit shown in FIG.

【図4】図2に示す命令プロセッサのパイプライン処理
を説明する図である。
FIG. 4 is a diagram illustrating pipeline processing of the instruction processor shown in FIG.

【図5】図2に示す命令プロセッサの別のパイプライン
処理を説明する図である。
FIG. 5 is a diagram illustrating another pipeline process of the instruction processor shown in FIG.

【図6】図2に示すセレクタユニットの別実施例の構成
図である。
FIG. 6 is a configuration diagram of another embodiment of the selector unit shown in FIG.

【図7】図6のセレクタユニットを用いた命令プロセッ
サのパイプライン処理を説明する図である。
7 is a diagram illustrating pipeline processing of an instruction processor using the selector unit of FIG.

【図8】従来の命令プロセッサの構成図である。FIG. 8 is a configuration diagram of a conventional instruction processor.

【図9】図8の命令プロセッサのパイプライン処理を説
明する図である。
9 is a diagram illustrating pipeline processing of the instruction processor of FIG.

【符号の説明】[Explanation of symbols]

10…命令を保持する手段、20…複写を判定する手
段、30…命令を複写する手段、40…命令を処理する
手段、50…誤演算の書き込みを抑止する手段、60…
データを保持する手段、100…主記憶、110…誤演
算予測ビットを含む命令キャッシュ、112…誤演算予
測ビット、115…予測ビット生成ユニット、120…
命令発行ユニット、122…命令選択信号、125…セ
レクタユニット、126…命令複写セレクタ、130…
デコードユニット、140…演算ユニット、143…シ
ョートパス信号、150…ナリファイ生成ユニット、1
53…ナリファイ信号、160…ショートパス制御ユニ
ット、170…命令無効化ユニット、180…レジス
タ、190…命令アドレス生成ユニット。
10 ... Means for holding instruction, 20 ... Means for judging copy, 30 ... Means for copying instruction, 40 ... Means for processing instruction, 50 ... Means for suppressing writing of erroneous operation, 60 ...
Means for holding data, 100 ... Main memory, 110 ... Instruction cache including miscalculation prediction bits, 112 ... Miscalculation prediction bits, 115 ... Prediction bit generation unit, 120 ...
Instruction issuing unit 122 ... Instruction selection signal 125 ... Selector unit 126 ... Instruction copy selector 130 ...
Decoding unit, 140 ... Arithmetic unit, 143 ... Short path signal, 150 ... Nalify generation unit, 1
53 ... Nalify signal, 160 ... Short path control unit, 170 ... Instruction invalidation unit, 180 ... Register, 190 ... Instruction address generation unit.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 堀田 多加志 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Takashi Hotta 7-1, 1-1 Omika-cho, Hitachi-shi, Ibaraki Hitachi Ltd. Hitachi Research Laboratory

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】 命令保持手段と、命令処理手段と、デー
タ保持手段とを備える命令プロセッサにおいて、複写判
定手段と、命令複写手段と、誤演算書込抑止手段を設
け、前記命令保持手段より取り出した各命令に対し前記
複写判定手段により複写すべきか否かの判定を行い、複
写すべきであると判定した場合には前記命令複写手段に
より該当命令を同一の2つの命令とし、前記命令処理手
段により前記同一の2つの命令を並列に異なる演算デー
タを用いて処理し、2つの命令の演算結果のうち誤った
演算結果が前記データ保持手段に書き込まれるのを前記
誤演算書込抑止手段で抑止し他方の演算結果を前記デー
タ保持手段に書き込む構成としたことを特徴とする命令
プロセッサ。
1. An instruction processor including an instruction holding unit, an instruction processing unit, and a data holding unit, which is provided with a copy determining unit, an instruction copying unit, and an erroneous operation write inhibiting unit, and is taken out from the instruction holding unit. For each instruction, the copy determining means determines whether or not it should be copied. If it is determined that the instruction should be copied, the instruction copying means sets the corresponding instructions to the same two instructions, and the instruction processing means. According to the above, the same two instructions are processed in parallel by using different operation data, and the incorrect operation write inhibiting means prevents the incorrect operation result of the operation results of the two instructions from being written in the data holding means. An instruction processor characterized in that the other operation result is written in the data holding means.
【請求項2】 命令保持手段と、命令処理手段と、デー
タ保持手段とを備える命令プロセッサにおいて、複写判
定手段と、命令複写手段と、誤演算書込抑止手段を設
け、前記命令保持手段より取り出した各命令に対し前記
複写判定手段により複写すべきか否かの判定を行い、複
写すべきであると判定した場合には前記命令複写手段に
より該当命令を同一の2つの命令とし、前記命令処理手
段により前記同一の2つの命令を逐次に異なる演算デー
タを用いて処理し、2つの命令の演算結果のうち誤った
演算結果が前記データ保持手段に書き込まれるのを前記
誤演算書込抑止手段で抑止し他方の演算結果を前記デー
タ保持手段に書き込む構成としたことを特徴とする命令
プロセッサ。
2. An instruction processor comprising an instruction holding means, an instruction processing means, and a data holding means, which is provided with a copy judging means, an instruction copying means, and an erroneous operation write inhibiting means, and is taken out from the instruction holding means. For each instruction, the copy determining means determines whether or not it should be copied. If it is determined that the instruction should be copied, the instruction copying means sets the corresponding instructions to the same two instructions, and the instruction processing means. By the above, the same two instructions are sequentially processed by using different operation data, and the erroneous operation write inhibiting means prevents the erroneous operation result of the operation results of the two instructions from being written in the data holding means. An instruction processor characterized in that the other operation result is written in the data holding means.
【請求項3】 請求項1または2記載において、前記命
令保持手段の中に誤演算予測ビットを設け、前記複写判
定手段は、前記誤演算予測ビットの値に基づいて複写す
べきか否かの判定を行なう構成としたことを特徴とする
命令プロセッサ。
3. The instruction holding means according to claim 1 or 2, wherein an erroneous operation prediction bit is provided, and the copy determining means determines whether or not copying should be performed based on the value of the erroneous operation prediction bit. An instruction processor characterized by being configured to perform.
【請求項4】 請求項1または請求項2において、複写
判定手段は、命令が前命令の実行結果を必要とし且つ該
前命令がプログラムの流れによりナリファイされる可能
性があるとき命令を複写するものであることを特徴とす
る命令プロセッサ。
4. The copy determination means according to claim 1 or 2, wherein the copy determination means copies the instruction when the instruction requires the execution result of the previous instruction and the previous instruction may be narrified by the flow of the program. An instruction processor characterized by being a thing.
【請求項5】 請求項4において、複写された同一2つ
の命令のうち一方の第1命令を前命令からショートパス
されたデータを用いて実行処理し他方の第2命令は前回
の命令処理でデータ保持手段に格納されたデータを用い
て実行処理し、前記前命令がナリファイされたときは第
1命令の実行処理結果を無効化して第2命令の実行処理
結果を前記データ保持手段に格納する構成としたことを
特徴とする命令プロセッサ。
5. The method according to claim 4, wherein the first instruction of one of the two duplicated instructions is executed by using the data short-passed from the previous instruction, and the second instruction of the other is executed by the previous instruction processing. Execution processing is performed using the data stored in the data holding means, and when the previous instruction is nullified, the execution processing result of the first instruction is invalidated and the execution processing result of the second instruction is stored in the data holding means. An instruction processor having a configuration.
【請求項6】 請求項4において、複写された同一2つ
の命令のうち一方の第1命令を前命令からショートパス
されたデータを用いて実行処理し他方の第2命令は前回
の命令処理でデータ保持手段に格納されたデータを用い
て実行処理し、前記前命令がナリファイされなかったと
きは第2命令の実行処理結果を無効化して第1命令の実
行処理結果を前記データ保持手段に格納する構成とした
ことを特徴とする命令プロセッサ。
6. The method according to claim 4, wherein one of the duplicated two instructions is executed by using the data short-passed from the previous instruction and the other second instruction is executed by the previous instruction processing. Execution processing is performed using the data stored in the data holding means, and when the previous instruction is not nullified, the execution processing result of the second instruction is invalidated and the execution processing result of the first instruction is stored in the data holding means. An instruction processor characterized by having a configuration.
【請求項7】 請求項1乃至請求項6のいずかれにおい
て、複数の命令を並列にパイプライン処理する時にある
命令の複写を行って同一の2つの命令を並列処理すると
きには前記複数の命令のうち該複写対象命令よりもパイ
プライン処理が前段となる命令を先に実行し次のサイク
ルで前記複写を行う構成とすることを特徴とする命令プ
ロセッサ。
7. The instruction according to claim 1, wherein when a plurality of instructions are pipeline processed in parallel, a certain instruction is copied to process two identical instructions in parallel. An instruction processor characterized in that, of the instructions to be copied, an instruction whose pipeline processing is in a preceding stage is executed first and the copying is performed in the next cycle.
【請求項8】 複数の命令を繰り返し並列にパイプライ
ン処理する命令プロセッサにおいて、パイプライン処理
の終段で命令の演算結果を保持するデータ保持手段と、
命令が前命令の実行結果のショートパスを受けて実行す
るものであり且つ該前命令がナリファイされる可能性の
ある命令を複写し2つの同一の第1命令と第2命令にす
る命令複写手段と、前記第1命令を前記ショートパスに
よるデータに基づいて実行させる共に前記第2命令を前
記データ保持手段の格納データに基づいて実行させる命
令処理手段と、前記前命令がナリファイされた場合には
前記第2命令の演算結果を前記データ保持手段に保持さ
せ前記前命令がナリファイされなかった場合には前記第
1命令の演算結果を前記データ保持手段に保持させるデ
ータ書き込みの抑止手段とを設けたことを特徴とする命
令プロセッサ。
8. An instruction processor for repeatedly pipeline processing a plurality of instructions in parallel, and data holding means for holding an operation result of an instruction at the final stage of pipeline processing,
An instruction copying means for copying an instruction that is executed by receiving a short path of an execution result of the previous instruction and that the previous instruction may be nullified into two identical first and second instructions And an instruction processing means for executing the first instruction based on the data by the short path and an instruction processing means for executing the second instruction based on the data stored in the data holding means, and when the previous instruction is nullified. Data write inhibiting means is provided for holding the operation result of the second instruction in the data holding means and holding the operation result of the first instruction in the data holding means when the previous instruction is not nullified. An instruction processor characterized in that.
【請求項9】 請求項8において、前記命令処理手段
は、前記第1命令と前記第2命令とを並列に実行するも
のであることを特徴とする命令プロセッサ。
9. The instruction processor according to claim 8, wherein the instruction processing means executes the first instruction and the second instruction in parallel.
【請求項10】 請求項8において、前記命令処理手段
は、前記第1命令と前記第2命令を順番に逐次実行させ
るものであることを特徴とする命令プロセッサ。
10. The instruction processor according to claim 8, wherein the instruction processing means sequentially and sequentially executes the first instruction and the second instruction.
【請求項11】 請求項8乃至請求項10のいずれかに
おいて、前記複数の命令のうち前記複写対象命令よりパ
イプライン処理が前段となる命令を先に実行しその後に
複写対象命令を実行する構成としたことを特徴とする命
令プロセッサ。
11. The structure according to claim 8, wherein among the plurality of instructions, an instruction whose pipeline processing is in a preceding stage of the copy target instruction is executed first, and then the copy target instruction is executed. An instruction processor characterized in that.
【請求項12】 請求項8乃至請求項11のいずれかに
おいて、命令が前命令の実行結果のショートパスを受け
て実行するものであり且つ該前命令がナリファイされる
可能性のあるか否かを判定する誤演算予測ビットを命令
に付加しておく構成とすることを特徴とする命令プロセ
ッサ。
12. The method according to claim 8, wherein the instruction is executed by receiving a short path of an execution result of the previous instruction, and whether the previous instruction is likely to be nullified. An instruction processor characterized in that an erroneous operation prediction bit for determining is added to an instruction.
【請求項13】 請求項12において、複数の命令を繰
り返し並列にパイプライン処理する過程でのショートパ
スとナリファイの状態に基づいて各命令における誤演算
予測ビットを書き換え次サイクルにおける当該命令の複
写の判定を行う構成としたことを特徴とする命令プロセ
ッサ。
13. The erroneous operation prediction bit in each instruction is rewritten based on a short path and a narify state in the process of repeatedly pipeline processing a plurality of instructions in parallel according to claim 12, and the copy of the instruction in the next cycle is performed. An instruction processor characterized by being configured to make a determination.
JP1278094A 1994-02-04 1994-02-04 Instruction processor Pending JPH07219771A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1278094A JPH07219771A (en) 1994-02-04 1994-02-04 Instruction processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1278094A JPH07219771A (en) 1994-02-04 1994-02-04 Instruction processor

Publications (1)

Publication Number Publication Date
JPH07219771A true JPH07219771A (en) 1995-08-18

Family

ID=11814921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1278094A Pending JPH07219771A (en) 1994-02-04 1994-02-04 Instruction processor

Country Status (1)

Country Link
JP (1) JPH07219771A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999045463A1 (en) * 1998-03-04 1999-09-10 Hitachi, Ltd. Information processor
US8549263B2 (en) 2006-03-07 2013-10-01 Intel Corporation Counter-based memory disambiguation techniques for selectively predicting load/store conflicts

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999045463A1 (en) * 1998-03-04 1999-09-10 Hitachi, Ltd. Information processor
US6810474B1 (en) * 1998-03-04 2004-10-26 Hitachi, Ltd. Information processor
US8549263B2 (en) 2006-03-07 2013-10-01 Intel Corporation Counter-based memory disambiguation techniques for selectively predicting load/store conflicts
US8812823B2 (en) 2006-03-07 2014-08-19 Intel Corporation Memory disambiguation techniques using counter ratio to selectively disable load/store conflict prediction

Similar Documents

Publication Publication Date Title
US5421020A (en) Counter register implementation for speculative execution of branch on count instructions
US5051896A (en) Apparatus and method for nullifying delayed slot instructions in a pipelined computer system
JP5431308B2 (en) Using local condition code registers to accelerate conditional instruction execution in systems and pipeline processors
JP3209205B2 (en) Inherit device of register contents in processor
JP5209933B2 (en) Data processing device
JP2002522841A (en) Scheduling instructions with different latencies
JPH04367936A (en) Superscalar processor
JP2742393B2 (en) Operation processing system and method
JPH06259253A (en) Data processor and its operating method
JP3400458B2 (en) Information processing device
JPH02227730A (en) Data processing system
US20050102659A1 (en) Methods and apparatus for setting up hardware loops in a deeply pipelined processor
JP4243271B2 (en) Data processing apparatus and data processing method
JPH07219771A (en) Instruction processor
JPH08263288A (en) Method and apparatus for recovering a Young bit in an annex after a mispredicted execution branch in a pipeline processor
JPH1196006A (en) Information processing device
EP0212132A1 (en) Method and digital computer for recovering from errors
JPH06168263A (en) Vector processor
US20040098564A1 (en) Status register update logic optimization
JP2783285B2 (en) Information processing device
JP2894438B2 (en) Pipeline processing equipment
JPH06131180A (en) Instruction processing system and instruction processor
JP2819733B2 (en) Information processing device
JP2503223B2 (en) Prior control method
JP3568737B2 (en) Microprocessor with conditional execution instruction