JPH05282145A - Branch instruction processing system - Google Patents
Branch instruction processing systemInfo
- Publication number
- JPH05282145A JPH05282145A JP8080392A JP8080392A JPH05282145A JP H05282145 A JPH05282145 A JP H05282145A JP 8080392 A JP8080392 A JP 8080392A JP 8080392 A JP8080392 A JP 8080392A JP H05282145 A JPH05282145 A JP H05282145A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- branch
- branch instruction
- computer
- clock 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.)
- Pending
Links
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】
【目的】 分岐命令の遅延スロット数の異なる計算機の
間でソフトウェアを利用することを可能にする。
【構成】 分岐命令の分岐元の遅延スロットと分岐先に
同一の命令列を重複して配置するとともに、計算機固有
の遅延スロット数に応じて命令コードの規定する分岐先
アドレスを変更する。これにより、遅延スロット数に関
わらず同一の実行結果を得る。
(57) [Abstract] [Purpose] It is possible to use software between computers with different branch instruction delay slots. [Arrangement] The same instruction sequence is overlapped at the branch source delay slot of the branch instruction and the branch destination, and the branch destination address defined by the instruction code is changed according to the number of delay slots peculiar to the computer. As a result, the same execution result is obtained regardless of the number of delay slots.
Description
【0001】[0001]
【産業上の利用分野】この発明は、計算機の分岐命令処
理方式に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a branch instruction processing system for a computer.
【0002】[0002]
【従来の技術】図6は、従来の分岐命令処理方式を示す
図であり、図において、1は主記憶装置、2は分岐命
令、3および4は分岐命令2に後続する命令、9は分岐
命令2の分岐先の命令、10は命令5に後続する命令で
ある。図7は従来の分岐命令処理方式におけるパイプラ
イン構成を示す図であり、12は命令フェッチ装置、1
3はデコード装置、14はアドレス計算装置、15はア
ドレス計算装置14に後続するパイプライン処理ステー
ジ、16は15に後続するパイプライン処理ステージ、
17はアドレス計算装置14と命令フェッチ装置12の
間の信号線、40は計算機全体である。図8は従来の分
岐命令処理方式における動作を示す図であり、19〜2
7はそれぞれ計算機のクロックサイクルを示す。2. Description of the Related Art FIG. 6 is a diagram showing a conventional branch instruction processing system. In the figure, 1 is a main memory, 2 is a branch instruction, 3 and 4 are instructions subsequent to a branch instruction 2, and 9 is a branch instruction. Instruction 2 is a branch destination instruction of instruction 2, and 10 is an instruction following instruction 5. FIG. 7 is a diagram showing a pipeline configuration in a conventional branch instruction processing system, in which 12 is an instruction fetch device, 1
3 is a decoding device, 14 is an address calculation device, 15 is a pipeline processing stage following the address calculation device 14, 16 is a pipeline processing stage following 15
Reference numeral 17 is a signal line between the address calculation device 14 and the instruction fetch device 12, and 40 is the entire computer. FIG. 8 is a diagram showing an operation in a conventional branch instruction processing system, which is 19 to 2
Reference numeral 7 indicates the clock cycle of the computer.
【0003】次に動作について説明する。本例では、遅
延スロット数を2とし、分岐命令2に後続する命令3お
よび命令4が遅延スロットに含まれ、分岐命令2に引続
き実行されることとする。Next, the operation will be described. In this example, it is assumed that the number of delay slots is 2, the instructions 3 and 4 following the branch instruction 2 are included in the delay slot, and the branch instruction 2 is continuously executed.
【0004】分岐命令2はクロックサイクル19におい
て、命令フェッチ装置12にて処理される。クロックサ
イクル20において分岐命令2はデコード装置13にて
処理され、同時に、分岐命令に後続する命令3が主記憶
装置1から取り出され、命令フェッチ装置12にて処理
される。クロックサイクル21において、分岐命令2は
アドレス計算装置14によって命令コードから一意に定
まる分岐先アドレスを計算し、計算されたアドレス信号
線17を通じて命令フェッチ装置12に送られる。ま
た、クロックサイクル21においては、命令3はデコー
ド装置13にて処理され、また、命令4は主記憶装置1
から取り出され、命令フェッチ装置12にて処理され
る。クロックサイクル22において、命令フェッチ装置
12は分岐命令2の分岐先の命令10を主記憶装置1か
ら取り出す。クロックサイクル22においては、同時
に、分岐命令2は処理ステージ15、命令3はアドレス
計算装置14、命令4はデコード装置13にて処理され
る。クロックサイクル23においては、分岐命令2は処
理ステージ16、命令3は処理ステージ15、命令4は
アドレス計算装置14、命令10はデコード装置13、
命令11は命令フェッチ装置12にて処理される。The branch instruction 2 is processed by the instruction fetch unit 12 in the clock cycle 19. In clock cycle 20, branch instruction 2 is processed by decoding device 13, and at the same time, instruction 3 following the branch instruction is fetched from main memory device 1 and processed by instruction fetch device 12. In the clock cycle 21, the branch instruction 2 calculates the branch destination address uniquely determined from the instruction code by the address calculation device 14 and sends it to the instruction fetch device 12 through the calculated address signal line 17. Further, in the clock cycle 21, the instruction 3 is processed by the decoding device 13, and the instruction 4 is processed by the main memory device 1.
And processed by the instruction fetch unit 12. In the clock cycle 22, the instruction fetch unit 12 fetches the branch destination instruction 10 of the branch instruction 2 from the main memory 1. In the clock cycle 22, the branch instruction 2 is processed by the processing stage 15, the instruction 3 is processed by the address calculator 14, and the instruction 4 is processed by the decoder 13 at the same time. In clock cycle 23, branch instruction 2 is processing stage 16, instruction 3 is processing stage 15, instruction 4 is address calculating device 14, instruction 10 is decoding device 13,
The instruction 11 is processed by the instruction fetch unit 12.
【0005】以上により、分岐命令2にひきつづき、命
令3、命令4、命令9、命令10が実行される。As described above, the instruction 3, the instruction 4, the instruction 9, and the instruction 10 are continuously executed following the branch instruction 2.
【0006】[0006]
【発明が解決しようとする課題】従来の分岐命令処理方
式は以上のように構成されていたので、分岐命令に後続
する命令であって分岐先の命令の前に処理される命令
(命令3および命令4)の数(遅延スロット数、本例の
場合2)は固定されている。一方最適な遅延スロット数
は計算機の用途やその利用する素子技術、あるいは実行
時の実行条件などによって一定ではない。このため、遅
延スロット数の異なる計算機の間で共通のソフトウェア
を利用することができないという問題があった。Since the conventional branch instruction processing system is configured as described above, the instruction following the branch instruction and processed before the instruction at the branch destination (instruction 3 and instruction 3). The number of instructions 4) (the number of delay slots, 2 in this example) is fixed. On the other hand, the optimum number of delay slots is not constant depending on the application of the computer, the element technology used by the computer, or the execution conditions at the time of execution. Therefore, there is a problem that common software cannot be used among computers having different numbers of delay slots.
【0007】この発明は上記のような問題点を解消する
ためになされたもので、遅延スロット数の異なる計算機
の間で共通のソフトウェアを利用することを可能にする
ことを目的としている。The present invention has been made to solve the above problems, and an object thereof is to make it possible to use common software among computers having different delay slots.
【0008】[0008]
【課題を解決するための手段】この発明に係る分岐命令
処理方式は、分岐元の遅延スロットと分岐先に同一の命
令列を重複して配置するとともに、計算機固有の遅延ス
ロット数に応じて命令コードの規定する分岐先アドレス
を変更することにより、遅延スロット数に関わらず同一
の実行結果を得るものである。According to a branch instruction processing method of the present invention, the same instruction sequence is redundantly arranged at a branch source delay slot and a branch destination, and instructions are provided according to the number of delay slots peculiar to a computer. By changing the branch destination address defined by the code, the same execution result can be obtained regardless of the number of delay slots.
【0009】また、計算機の遅延スロット数を実行時の
条件に応じて動的に変更するにも関わらず、同一の実行
結果を得るものである。Further, the same execution result is obtained even though the number of delay slots of the computer is dynamically changed according to the condition at the time of execution.
【0010】[0010]
【作用】この発明における分岐先アドレス生成装置は、
分岐命令によって指定される分岐先アドレスに対し、計
算機の遅延スロット数に対応した増分を加えあるいは減
じることにより、異なる遅延スロット数を持つ計算機と
の間でソフトウェアの互換性を保つことを可能にする。The branch destination address generating device according to the present invention is
By adding or subtracting the increment corresponding to the delay slot number of the computer to the branch destination address specified by the branch instruction, it is possible to maintain software compatibility with computers having different delay slot numbers. ..
【0011】[0011]
実施例1.以下、この発明の一実施例を図について説明
する。図1は、本発明における分岐命令処理方式の一例
を示す図であり、図において、1は主記憶装置、2は分
岐命令、3,4,5,6は分岐命令2に後続して実行さ
れる命令、7は命令3と同一の命令、8はは命令4と同
一の命令、9は命令5と同一の命令、10は命令6と同
一の命令、11は命令列2〜10全体である。図2は本
発明における遅延スロット数2の分岐命令を実行する計
算機のパイプライン構成を示す図であり、12は命令フ
ェッチ装置、13はデコード装置、14はアドレス計算
装置、15はアドレス計算装置14に後続するパイプラ
イン処理ステージ、16は14に後続するパイプライン
処理ステージ、17はアドレス計算装置14と命令フェ
ッチ装置12の間の信号線、18は12〜17によって
構成される計算機全体である。図3は本発明における図
2のパイプライン構成における分岐命令処理方式の動作
の一例を示す図であり、19〜27はそれぞれ計算機の
クロックサイクルを示す。図4は本発明における遅延ス
ロット数0の分岐命令を実行する計算機のパイプライン
構成を示す図であり、図において、28は12〜17に
よって構成される計算機全体を示す。図5は本発明にお
ける図4のパイプライン構成における分岐命令処理の別
の動作の一例を示す図であり、29〜39はそれぞれ計
算機のクロックサイクルを示す。Example 1. An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing an example of a branch instruction processing method according to the present invention. In FIG. 1, 1 is a main memory, 2 is a branch instruction, and 3, 4, 5, 6 are executed subsequent to a branch instruction 2. Command, 7 is the same command as command 3, 8 is the same command as command 4, 9 is the same command as command 5, 10 is the same command as command 6, and 11 is the entire command sequence 2-10. .. FIG. 2 is a diagram showing a pipeline configuration of a computer that executes a branch instruction having two delay slots according to the present invention. 12 is an instruction fetch device, 13 is a decoding device, 14 is an address calculation device, and 15 is an address calculation device 14. Is a pipeline processing stage subsequent to 14; 16 is a pipeline processing stage subsequent to 14; 17 is a signal line between the address calculation device 14 and the instruction fetch device 12; and 18 is the entire computer constituted by 12 to 17. FIG. 3 is a diagram showing an example of the operation of the branch instruction processing method in the pipeline configuration of FIG. 2 according to the present invention, and 19 to 27 respectively show clock cycles of the computer. FIG. 4 is a diagram showing a pipeline configuration of a computer that executes a branch instruction having a delay slot number of 0 according to the present invention. In the figure, 28 denotes the entire computer configured by 12 to 17. FIG. 5 is a diagram showing an example of another operation of branch instruction processing in the pipeline configuration of FIG. 4 in the present invention, and 29 to 39 show clock cycles of a computer, respectively.
【0012】次に動作について説明する。分岐命令2に
おいては、分岐先アドレスとして命令7を指すようにあ
らかじめ設定されているものとする。Next, the operation will be described. It is assumed that the branch instruction 2 is preset to point to the instruction 7 as the branch destination address.
【0013】図2の計算機18の動作例の場合につき述
べる。分岐命令2はクロックサイクル19において、命
令フェッチ装置12にて処理される。クロックサイクル
20において分岐命令2はデコード装置13にて処理さ
れ、同時に、分岐命令に後続する命令4が主記憶装置1
から取り出され、命令フェッチ装置12にて処理され
る。クロックサイクル21において、分岐命令2はアド
レス計算装置14によって処理され、分岐先アドレスと
して設定された命令7のアドレスに遅延スロット内の命
令数に応じた増分である2命令分のアドレスを加え、そ
の結果得られるアドレスを信号線15を通じて命令フェ
ッチ装置12に送る。また、クロックサイクル21にお
いては、命令3はデコード装置13にて、また、命令4
は主記憶装置1から取り出され、命令フェッチ装置12
にて処理される。クロックサイクル22において、命令
フェッチ装置9はアドレス計算装置14から送られたア
ドレスに該当する命令9を主記憶装置1から取り出す。
クロックサイクル22においては、同時に、分岐命令2
は処理ステージ15、命令3はアドレス計算装置14、
命令4はデコード装置13にて処理される。クロックサ
イクル23においては、分岐命令2は処理ステージ1
6、命令3は処理ステージ15、命令4はアドレス計算
装置14、命令9はデコード装置13、命令10は命令
フェッチ装置12にて処理される。A case of an operation example of the computer 18 of FIG. 2 will be described. The branch instruction 2 is processed by the instruction fetch unit 12 in the clock cycle 19. In the clock cycle 20, the branch instruction 2 is processed by the decoding device 13, and at the same time, the instruction 4 following the branch instruction is processed by the main memory device 1.
And processed by the instruction fetch unit 12. In the clock cycle 21, the branch instruction 2 is processed by the address calculation device 14, and the address of the instruction 7 set as the branch destination address is added with the address of two instructions which is an increment corresponding to the number of instructions in the delay slot. The resulting address is sent to the instruction fetch unit 12 via the signal line 15. Further, in the clock cycle 21, the instruction 3 is transmitted to the decoding device 13, and the instruction 4 is transmitted.
Are fetched from the main memory 1 and the instruction fetch unit 12
Will be processed. In the clock cycle 22, the instruction fetch unit 9 fetches the instruction 9 corresponding to the address sent from the address calculation unit 14 from the main memory unit 1.
In clock cycle 22, at the same time, branch instruction 2
Is the processing stage 15, instruction 3 is the address calculator 14,
The instruction 4 is processed by the decoding device 13. In clock cycle 23, branch instruction 2 is in processing stage 1
6, the instruction 3 is processed by the processing stage 15, the instruction 4 is processed by the address calculation unit 14, the instruction 9 is processed by the decoding unit 13, and the instruction 10 is processed by the instruction fetch unit 12.
【0014】以上のように、計算機18においては、分
岐命令2に引続き、命令3、命令4、命令9、命令10
が順次実行される。As described above, in the computer 18, following the branch instruction 2, instruction 3, instruction 4, instruction 9, instruction 10
Are sequentially executed.
【0015】次に図4の計算機28の動作例の場合につ
いて述べる。分岐命令2はクロックサイクル29におい
て、命令フェッチ装置12にて処理される。クロックサ
イクル30において分岐命令2はデコード装置13にて
処理され、該当命令が分岐命令であることを検出し、以
下の命令のデコードを停止する。クロックサイクル31
においては、分岐命令2はアドレス計算装置14によっ
て処理され、分岐先アドレスとして設定された命令7の
アドレスをそのまま信号線15を通じて命令フェッチ装
置12に送る。クロックサイクル32においては、命令
フェッチ装置12はアドレス計算装置14から送られた
命令に該当する命令7を主記憶装置1から取り出す。ク
ロックサイクル32においては、同時に、分岐命令2は
処理ステージ15にて処理される。クロックサイクル3
3においては、分岐命令2は処理ステージ16、命令7
はデコード装置13にて処理され、命令8が命令フェッ
チ装置12にて処理される。Next, the case of the operation example of the computer 28 of FIG. 4 will be described. The branch instruction 2 is processed by the instruction fetch unit 12 in the clock cycle 29. In the clock cycle 30, the branch instruction 2 is processed by the decoding device 13, detects that the relevant instruction is a branch instruction, and stops decoding the following instructions. Clock cycle 31
, The branch instruction 2 is processed by the address calculator 14, and the address of the instruction 7 set as the branch destination address is sent to the instruction fetch unit 12 through the signal line 15 as it is. In the clock cycle 32, the instruction fetch unit 12 fetches the instruction 7 corresponding to the instruction sent from the address calculation unit 14 from the main memory 1. In clock cycle 32, branch instruction 2 is simultaneously processed in processing stage 15. Clock cycle 3
3, branch instruction 2 is processing stage 16, instruction 7
Is processed by the decoding device 13, and the instruction 8 is processed by the instruction fetch device 12.
【0016】以上のように、計算機28においては、分
岐命令2に引続き、命令7、命令8、命令9、命令10
が順次実行される。As described above, in the computer 28, following the branch instruction 2, instruction 7, instruction 8, instruction 9, and instruction 10
Are sequentially executed.
【0017】ところが、命令3と命令7、命令4と命令
8は、それぞれ同一の命令が配置されているので、計算
機18における命令列11の実行結果と、計算機28に
おける実行結果は同一である。すなわち、計算機18と
計算機28の間では、遅延スロット数が異なるにも関わ
らず、ソフトウェアの互換性を保つことができる。However, since the same instructions are arranged in the instructions 3 and 7, and the instructions 4 and 8, the execution result of the instruction sequence 11 in the computer 18 and the execution result in the computer 28 are the same. That is, software compatibility can be maintained between the computer 18 and the computer 28, although the number of delay slots is different.
【0018】実施例2.上記実施例では、計算機18と
計算機28は同一の計算機であってもよく、実行条件に
よって遅延スロット数の変化する計算機であってもよ
い。Example 2. In the above embodiment, the computer 18 and the computer 28 may be the same computer, or the number of delay slots may change depending on the execution condition.
【0019】実施例3.また、上記実施例では、遅延ス
ロット数を0および2としたが、遅延スロット数の最大
値を適当に設定し、重複する命令列の長さをその最大数
とすることにより、最大値以下の任意の数の遅延スロッ
ト数を持つ計算機間で同一の実行結果を得ることができ
る。Example 3. Further, although the number of delay slots is set to 0 and 2 in the above embodiment, the maximum value of the number of delay slots is appropriately set, and the length of the overlapping instruction sequence is set to the maximum number. The same execution result can be obtained among computers having an arbitrary number of delay slots.
【0020】実施例4.また、上記実施例では、パイプ
ラインのステージ数を5とし、命令フェッチ装置、命令
デコード装置、アドレス計算装置を含むとしたが、任意
のステージ数を持つ任意のパイプライン構成に対して上
記実施例と同様の効果を奏する。Example 4. Further, in the above embodiment, the number of stages of the pipeline is set to 5, and the instruction fetch device, the instruction decode device, and the address calculation device are included. However, the above embodiment is applied to an arbitrary pipeline configuration having an arbitrary number of stages. Has the same effect as.
【0021】実施例5.また上記実施例では、遅延スロ
ット数に応じた増分を加えるとしたが、アドレスを減じ
ることによっても上記実施例と同様の効果を奏すること
ができる。Embodiment 5. Further, in the above-described embodiment, the increment according to the number of delay slots is added, but the same effect as in the above-described embodiment can be obtained by reducing the address.
【0022】実施例6.また、上記実施例では、アドレ
ス計算装置において遅延スロット数に応じたアドレスを
加えるとしたが、このアドレス加算または減算操作は命
令フェッチ装置、デコード装置など、計算機内のどの構
成要素で行っても、上記実施例と同様の効果を奏するこ
とができる。Embodiment 6. Further, in the above-described embodiment, the address according to the number of delay slots is added in the address calculation device, but this address addition or subtraction operation is performed by any component in the computer, such as the instruction fetch device, the decoding device, The same effect as that of the above-described embodiment can be obtained.
【0023】実施例7.また、上記実施例では、分岐命
令が無条件に分岐するものとしたが、条件分岐命令であ
っても、分岐不成功時における処理を追加することによ
り、上記実施例と同様の効果を奏することができる。Example 7. In the above embodiment, the branch instruction unconditionally branches. However, even if the branch instruction is a conditional branch instruction, the same effect as that in the above embodiment can be obtained by adding the processing when the branch is unsuccessful. You can
【0024】実施例8.また、上記実施例では、各命令
が各パイプラインステージにおいて1クロックサイクル
で処理されるとしたが、各パイプラインステージにおけ
る処理クロックサイクルは任意の値を取ってよく、上記
実施例と同様の効果を奏することができる。Example 8. Further, in the above embodiment, each instruction is processed in one clock cycle in each pipeline stage, but the processing clock cycle in each pipeline stage may take any value, and the same effect as in the above embodiment Can be played.
【0025】実施例9.また、上記実施例では、命令が
各クロックサイクルごとに主記憶装置から取り出される
としたが、命令フェッチ装置内にバッファを備えること
により、複数の命令を同時に主記憶装置から取り出して
も良く、また、主記憶装置は、キャッシュメモリやバッ
ファを備えていても良く、上記実施例と同様の効果を奏
することができる。Example 9. Further, in the above-mentioned embodiment, the instruction is fetched from the main memory every clock cycle, but a plurality of instructions may be fetched from the main memory at the same time by providing a buffer in the instruction fetch unit. The main storage device may include a cache memory or a buffer, and the same effect as that of the above-described embodiment can be obtained.
【0026】実施例10.また、上記実施例において、
命令長は固定であると仮定したが、アドレス計算装置に
おいて、遅延スロット内の命令長に応じた分岐先アドレ
スの増分を加えあるいは減じることにより、上記実施例
と同様の効果を奏することができる。Example 10. Also, in the above embodiment,
Although it is assumed that the instruction length is fixed, it is possible to obtain the same effect as the above embodiment by adding or subtracting the increment of the branch destination address according to the instruction length in the delay slot in the address calculation device.
【0027】実施例11.また、上記実施例において、
分岐は前方すなわちアドレス増加方向に行われるとした
が、後方すなわちアドレス減少方向に行われるとしても
良く、上記実施例と同様の効果を奏することができる。Embodiment 11. Also, in the above embodiment,
Although the branch is performed in the forward direction, that is, in the address increasing direction, it may be performed in the backward direction, that is, in the address decreasing direction, and the same effect as that of the above embodiment can be obtained.
【0028】[0028]
【発明の効果】以上のように、この発明によれば、分岐
元の遅延スロットと分岐先に同一の命令列を重複して配
置するとともに、計算機固有の遅延スロット数に応じて
命令コードの規定する分岐先アドレスを変更するため、
遅延スロット数の異なる計算機の間で共通のソフトウェ
アを利用することを可能にするという効果がある。As described above, according to the present invention, the same instruction string is overlapped at the branch source delay slot and the branch destination, and the instruction code is defined according to the number of delay slots peculiar to the computer. To change the branch destination address
This has the effect of making it possible to use common software among computers having different numbers of delay slots.
【図1】この発明の一実施例による分岐命令処理方式を
示す図である。FIG. 1 is a diagram showing a branch instruction processing system according to an embodiment of the present invention.
【図2】この発明の一実施例による分岐命令処理方式を
備え、遅延スロット数2の計算機の構成図である。FIG. 2 is a configuration diagram of a computer having a branch instruction processing system according to an embodiment of the present invention and having two delay slots.
【図3】この発明の一実施例による分岐命令処理方式を
備え、遅延スロット数2の計算機の動作を示す図であ
る。FIG. 3 is a diagram showing an operation of a computer having a branch instruction processing system according to an embodiment of the present invention and having two delay slots.
【図4】この発明の一実施例による分岐命令処理方式を
備え、遅延スロット数0の計算機の構成図である。FIG. 4 is a configuration diagram of a computer having a branch instruction processing system according to an embodiment of the present invention and having zero delay slots.
【図5】この発明の一実施例による分岐命令処理方式を
備え、遅延スロット数0の計算機の動作を示す図であ
る。FIG. 5 is a diagram showing an operation of a computer having a branch instruction processing system according to an embodiment of the present invention and having 0 delay slots.
【図6】従来の分岐命令処理方式の一例を示す図であ
る。FIG. 6 is a diagram showing an example of a conventional branch instruction processing method.
【図7】従来の分岐命令処理方式を備えた計算機の一例
の構成図である。FIG. 7 is a configuration diagram of an example of a computer having a conventional branch instruction processing system.
【図8】従来の分岐命令処理方式を備えた計算機の一例
の動作を示す図である。FIG. 8 is a diagram showing an operation of an example of a computer having a conventional branch instruction processing system.
1 主記憶装置 2 分岐命令 3 分岐命令に後続する命令 4 命令3に後続する命令 5 命令4に後続する命令 6 命令5に後続する命令 7 命令3と同一の命令 8 命令4と同一の命令 9 命令5と同一の命令 10 命令6と同一の命令 11 命令列2〜10 12 命令フェッチ装置 13 デコード装置 14 アドレス計算装置 15 アドレス計算装置14に後続するパイプライン処
理ステージ 16 パイプライン処理ステージ15に後続するパイプ
ライン処理ステージ 17 信号線 18 計算機 19 クロックサイクル 20 クロックサイクル 21 クロックサイクル 22 クロックサイクル 23 クロックサイクル 24 クロックサイクル 25 クロックサイクル 26 クロックサイクル 27 クロックサイクル 28 計算機 29 クロックサイクル 30 クロックサイクル 31 クロックサイクル 32 クロックサイクル 33 クロックサイクル 34 クロックサイクル 35 クロックサイクル 36 クロックサイクル 37 クロックサイクル1 main memory 2 branch instruction 3 instruction following branch instruction 4 instruction following instruction 3 5 instruction following instruction 4 6 instruction following instruction 5 7 instruction same as instruction 8 instruction same as instruction 4 9 Instruction 5 same as instruction 10 instruction 6 same as instruction 11 instruction sequence 2 to 10 12 instruction fetch device 13 decoding device 14 address calculation device 15 pipeline processing stage following address calculation device 14 pipeline processing stage 16 subsequent to pipeline processing stage 15 Pipeline processing stage 17 Signal line 18 Computer 19 Clock cycle 20 Clock cycle 21 Clock cycle 22 Clock cycle 23 Clock cycle 24 Clock cycle 25 Clock cycle 26 Clock cycle 27 Clock cycle 28 Computer 29 Clock cycle 30 Rock Cycle 31 clock cycles 32 clock cycles 33 clock cycles 34 clock cycles 35 clock cycles 36 clock cycles 37 clock cycles
Claims (2)
先に同一命令列を重複して配置する手段と、分岐命令の
遅延スロット数に応じて命令コードの規定する分岐先ア
ドレスを変更する手段を特徴とする、分岐命令処理方
式。1. A means for overlappingly placing the same instruction sequence at a branch source delay slot and a branch destination of a branch instruction, and a means for changing a branch destination address defined by an instruction code according to the number of delay slots of the branch instruction. A branch instruction processing method characterized by:
ることを特徴とする請求項1記載の分岐命令処理方式。2. The branch instruction processing system according to claim 1, wherein the number of delay slots is dynamically changed at the time of execution.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8080392A JPH05282145A (en) | 1992-04-02 | 1992-04-02 | Branch instruction processing system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8080392A JPH05282145A (en) | 1992-04-02 | 1992-04-02 | Branch instruction processing system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05282145A true JPH05282145A (en) | 1993-10-29 |
Family
ID=13728630
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8080392A Pending JPH05282145A (en) | 1992-04-02 | 1992-04-02 | Branch instruction processing system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH05282145A (en) |
-
1992
- 1992-04-02 JP JP8080392A patent/JPH05282145A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2603626B2 (en) | Data processing device | |
| JP2640454B2 (en) | Digital instruction processor controller and method for executing a branch in one cycle | |
| JPS633337B2 (en) | ||
| US4967338A (en) | Loosely coupled pipeline processor | |
| EP1241567A2 (en) | Method and apparatus for executing coprocessor instructions | |
| US4954947A (en) | Instruction processor for processing branch instruction at high speed | |
| JPS62226232A (en) | Control system for branch instruction | |
| JPH02287626A (en) | Pipeline system branch instruction controller | |
| JPH05282145A (en) | Branch instruction processing system | |
| JPS60117335A (en) | information processing equipment | |
| JPS5848144A (en) | Branch instruction control system of data processor | |
| JP2772100B2 (en) | Parallel instruction fetch mechanism | |
| EP0230038A2 (en) | Address generation system | |
| JPS60198640A (en) | Pipeline type information processor | |
| JPH10161873A (en) | Processor | |
| JP2835179B2 (en) | Parallel processing computer | |
| JP2843844B2 (en) | Parallel processing unit | |
| JP2597744B2 (en) | Branch control method | |
| JPH01147723A (en) | Pipe line processing system for information processor | |
| JP2545594B2 (en) | Operand data prefetching method | |
| JPH01271842A (en) | Information processor | |
| JP2003058367A (en) | Arithmetic unit | |
| JPH05334265A (en) | Information processor and processing method | |
| JPS63276126A (en) | Instruction decoding circuit | |
| JPH06337785A (en) | Information processor and its instruction execution control method |