JP2591325B2 - Branch control device - Google Patents

Branch control device

Info

Publication number
JP2591325B2
JP2591325B2 JP2293838A JP29383890A JP2591325B2 JP 2591325 B2 JP2591325 B2 JP 2591325B2 JP 2293838 A JP2293838 A JP 2293838A JP 29383890 A JP29383890 A JP 29383890A JP 2591325 B2 JP2591325 B2 JP 2591325B2
Authority
JP
Japan
Prior art keywords
instruction
subroutine
return
register
branch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2293838A
Other languages
Japanese (ja)
Other versions
JPH04167026A (en
Inventor
敏道 松崎
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2293838A priority Critical patent/JP2591325B2/en
Publication of JPH04167026A publication Critical patent/JPH04167026A/en
Application granted granted Critical
Publication of JP2591325B2 publication Critical patent/JP2591325B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、条件分岐命令、サブルーチンコール命令及
びサブルーチンリターン命令を高速に実行する分岐処理
装置に関するもので、2命令の並列解読と先行分岐制御
を組み合わせた技術である。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a branch processing device that executes a conditional branch instruction, a subroutine call instruction and a subroutine return instruction at high speed, and combines a parallel decoding of two instructions and a preceding branch control. Technology.

従来の技術 従来の装置では並列解読による処理の高速化を図るた
めに、2つの命令解読器を設けて2命令を並列に解読
し、2つの演算器を同時に動作させる方法がとられてい
る。例えば、特開昭63−49843号では、算術演算と論理
演算との2つの命令をそれぞれ独立な第1の解読器と第
2の解読器とによって解読し、算術演算器と論理演算器
を同時に動作させることによって処理を高速化してい
る。この発明は、命令コードの長さが固定されている固
定語長命令体系における並列解読に関するものである。
特開昭63−198226号や特開平1−28184号には、演算の
種類やアドレッシングモードによって命令コードの長さ
が変化する可変語長命令体系における2命令の並列解読
の方式が開示されている。特開昭63−198226号では、先
行的に並列解読の可能性を検出し、条件分岐命令と分岐
しない場合にその命令に後続する命令とを並列に解読す
るものである。これにより条件が成立しない場合の条件
分岐命令の処理を高速化している。また、特開平1−28
184号では、やはり先行的に並列解読の可能性を検出
し、ロード命令又はストア命令とそれに後続する命令と
を並列解読するものである。これによりロード命令又は
ストア命令の処理を高速化している。
2. Description of the Related Art In order to speed up processing by parallel decoding, a conventional apparatus employs a method in which two instruction decoders are provided, two instructions are decoded in parallel, and two arithmetic units are operated simultaneously. For example, in Japanese Patent Application Laid-Open No. 63-49843, two instructions, an arithmetic operation and a logical operation, are decoded by independent first and second decoders, respectively. The operation speeds up the processing. The present invention relates to parallel decoding in a fixed word length instruction system having a fixed instruction code length.
JP-A-63-198226 and JP-A-1-28184 disclose a method of parallel decoding of two instructions in a variable word length instruction system in which the length of an instruction code changes depending on the type of operation and the addressing mode. . In Japanese Patent Application Laid-Open No. 63-198226, the possibility of parallel decoding is detected in advance, and if a conditional branch instruction does not branch, the instruction following the instruction is decoded in parallel. This speeds up the processing of the conditional branch instruction when the condition is not satisfied. Also, JP-A-1-28
In No. 184, the possibility of parallel decoding is also detected in advance, and a load instruction or a store instruction and a subsequent instruction are decoded in parallel. This speeds up processing of a load instruction or a store instruction.

発明が解決しようとする課題 固定語長命令体系における並列解読は、解読中の命令
に後続する命令の開始位置が決まっているため、容易で
ある。従って、後続命令を解読する第2の命令解読器を
1つ追加するだけで2命令の並列解読が可能である。但
し、解読ハードウェアの増加を抑えるため、それぞれの
解読器が解読する命令の分担を予め決めておき、それぞ
れの解読器で解読ハードウェアが重複しないようにする
必要がある。しかし、2つの解読器で解読する命令の分
担を決めてしまうと解読器のハードウェア量は抑えられ
るが、2種類の命令がそれぞれの解読器に供給されるよ
うにコードスケジュールする必要が生じ、コンパイラへ
の負担が増加するという問題がある。
Problems to be Solved by the Invention Parallel decoding in a fixed word length instruction system is easy because the starting position of the instruction following the instruction being decoded is fixed. Therefore, parallel decoding of two instructions is possible only by adding one second instruction decoder for decoding the subsequent instruction. However, in order to suppress an increase in the number of decryption hardware, it is necessary to determine in advance the sharing of instructions to be decrypted by the respective decryptors, so that the decryption hardware does not overlap in each decryptor. However, if the assignment of instructions to be decoded by the two decoders is determined, the amount of hardware of the decoder is reduced, but it becomes necessary to code schedule so that two types of instructions are supplied to the respective decoders. There is a problem that the load on the compiler increases.

可変語長命令体系においては、解読中の命令に後続す
る命令の開始位置が現在解読中の命令によって決定され
るため、2命令を並列解読するには解読中の命令に後続
する命令語を並列解読するための第2の解読器を複数個
設けたり、又は第2の解読器に入力する命令語を選択す
るセレクタを設け、第1の命令解読器の解読結果により
セレクタを制御し、第2の命令解読器の入力を決定する
といったことを行っていた。そのため、解読器のハード
ウェアが増加したり解読に要する時間が増加するという
問題があった。また、先行的に並列解読の可能性を検出
する方法により、条件分岐命令と条件が成立しない場合
の後続命令を並列解読しても、条件分岐命令の条件が成
立した場合には条件分岐命令を高速に処理できないとい
う問題があった。
In the variable word length instruction system, since the starting position of the instruction following the instruction being decoded is determined by the instruction currently being decoded, to decode two instructions in parallel, the instruction word following the instruction being decoded is used in parallel. A plurality of second decoders for decoding are provided, or a selector for selecting a command word to be input to the second decoder is provided, and the selector is controlled based on the decoding result of the first command decoder. To determine the input of the command decoder. Therefore, there has been a problem that the hardware of the decoder increases and the time required for decoding increases. In addition, by the method of detecting the possibility of parallel decoding in advance, even if the conditional branch instruction and the subsequent instruction in the case where the condition is not satisfied are decoded in parallel, the conditional branch instruction is not executed if the condition of the conditional branch instruction is satisfied. There was a problem that processing could not be performed at high speed.

本発明の目的は、可変語長命令体系において解読ハー
ドウェアを著しく増加させることなく2命令の並列解読
を行い、条件分岐命令の条件が成立する場合の処理を高
速化した分岐制御装置を提供することである。さらに他
の目的は、サブルーチンコール命令及びサブルーチンリ
ターン命令の処理を高速化した分岐制御装置を提供する
ことである。
SUMMARY OF THE INVENTION An object of the present invention is to provide a branch control device that performs parallel decoding of two instructions in a variable word length instruction system without significantly increasing decoding hardware and speeds up processing when a condition of a conditional branch instruction is satisfied. That is. Still another object is to provide a branch control device in which processing of a subroutine call instruction and a subroutine return instruction is accelerated.

課題を解決するための手段 上記目的を達成するために、本発明の分岐制御装置に
おいては、実行に先だって命令をフェッチし、解読部に
供給する命令供給手段と、前記命令供給手段が出力する
複数の命令コードを保持する命令レジスタと、前記命令
レジスタの先頭に格納された命令コードを解読する命令
解読器と、前記先頭に格納された命令コードに後続する
命令コードの中に、特定の比較命令と特定の分岐命令が
存在することを検出する命令検出手段と、前記命令レジ
スタに格納された命令コードから分岐先アドレスを計算
する分岐先アドレス計算手段と、前記解読器が解読した
命令の命令長と前記命令検出手段の検出結果を入力し、
命令レジスタへ次命令を格納制御する先行分岐制御手段
と、サブルーチンの戻り先アドレスを格納する戻り先ア
ドレス格納手段と、スタックポインタを更新する加算器
と、前記戻り先アドレス格納手段が出力する戻り先アド
レスとスタックから読出した戻り先アドレスとを比較す
る比較器とを備える。
Means for Solving the Problems To achieve the above object, in the branch control device of the present invention, an instruction supply means for fetching an instruction prior to execution and supplying the instruction to a decoding unit, and a plurality of instructions supplied by the instruction supply means An instruction register that holds the instruction code of the instruction register, an instruction decoder that decodes the instruction code stored at the head of the instruction register, and a specific comparison instruction included in the instruction code following the instruction code stored at the head. Instruction detecting means for detecting the presence of a specific branch instruction, a branch destination address calculating means for calculating a branch destination address from an instruction code stored in the instruction register, and an instruction length of the instruction decoded by the decoder. And a detection result of the command detection means,
Precedent branch control means for storing and controlling the next instruction in the instruction register; return address storage means for storing the return address of the subroutine; adder for updating the stack pointer; and return destination output by the return address storage means A comparator for comparing the address with the return address read from the stack.

作用 本発明は上記手段により、可変語長命令体系において
解読ハードウェアを著しく増加させることなく、条件分
岐命令の処理を高速化し、条件が成立した場合の実行ク
ロックをゼロにする。また、サブルーチンコール命令及
びサブルーチンリターン命令をそれぞれ1クロックで処
理する。
Operation The present invention speeds up the processing of a conditional branch instruction without significantly increasing the number of decoding hardware in the variable word length instruction system, and sets the execution clock to zero when the condition is satisfied. Also, the subroutine call instruction and the subroutine return instruction are each processed in one clock.

実 施 例 第1図は本発明の一実施例における分岐制御装置の解
読部の構成を示すブロック図である。図において、100
は実行に先だって命令を供給する命令供給手段で、命令
フェッチを高速に行うための命令キャッシュ101と命令
キャッシュから読出した命令を一時格納する命令バッフ
ァ102より構成される。103は解読する命令列を格納する
命令レジスタで、前記命令供給手段が出力する命令語の
うち連続する基本語長の4倍の命令語を格納する。104
は命令解読器で、前記命令レジスタ103の先頭に格納さ
れた命令コードを解読する。105は前記命令レジスタ103
の先頭に格納された命令コードに後続する命令コードの
中に、特定の比較命令と特定の分岐命令が存在すること
を検出する命令検出手段であり、それぞれ同一の構造を
持つ命令検出手段106、107、108から構成される。109は
前記命令レジスタ103に格納された命令コードから分岐
先アドレス118を計算する分岐先アドレス計算手段であ
り、命令解読器104が解読中の命令の先頭アドレスを保
持するプログラムカウンタ129と、プログラムカウンタ
の下位ビットと命令レジスタ103に格納された命令コー
ドの下位ビットとをそれぞれ加算する複数の加算器11
0、111、112、113と、プログラムカウンタ129の上位ビ
ットに1を加算する加算器114と、プログラムカウンタ1
29の上位ビットから1を減ずる減算器115と、前記加算
器110および113の加算結果の内1つを選択するセレクタ
116と、前記プログラムカウンタの上位ビットと加算器1
14及び減算器115の計算結果の内1つを選択するセレク
タ117から構成される。複数の加算器110及び113は、加
算する命令語の位置に応じて、さらにそれぞれ0及び3
のオフセット値を加算する。119は先行分岐制御手段で
あり、前記解読器104が解読した命令の命令長データ120
と前記命令検出手段105の検出結果121、122、123を入力
し、次命令制御信号124により次命令の命令レジスタへ
の格納を制御するとともに分岐先アドレス制御信号125
により、複数の分岐先アドレス候補の中から正しい分岐
先アドレスを選択する。126は命令読出しアドレスを選
択するセレクタで、プリフェッチカウンタ127と分岐先
アドレス118とサブルーチンリターン命令実行時の戻り
先アドレス128とから1つを選ぶ。
FIG. 1 is a block diagram showing a configuration of a decoding unit of a branch control device according to an embodiment of the present invention. In the figure, 100
Is an instruction supply means for supplying instructions prior to execution, and comprises an instruction cache 101 for performing high-speed instruction fetch and an instruction buffer 102 for temporarily storing instructions read from the instruction cache. An instruction register 103 stores an instruction sequence to be decoded, and stores an instruction word four times as long as a continuous basic word length among instruction words output by the instruction supply means. 104
Is an instruction decoder for decoding the instruction code stored at the head of the instruction register 103. 105 is the instruction register 103
Instruction detection means for detecting the presence of a specific comparison instruction and a specific branch instruction in the instruction code following the instruction code stored at the beginning of the instruction code. It consists of 107 and 108. Reference numeral 109 denotes a branch destination address calculating means for calculating a branch destination address 118 from the instruction code stored in the instruction register 103, and a program counter 129 for holding the start address of the instruction being decoded by the instruction decoder 104; Of the instruction code stored in the instruction register 103 and the lower bits of the instruction code stored in the instruction register 103.
0, 111, 112, 113, an adder 114 for adding 1 to the upper bit of the program counter 129, and a program counter 1
A subtractor 115 for subtracting 1 from the upper 29 bits, and a selector for selecting one of the addition results of the adders 110 and 113
116, the upper bits of the program counter and the adder 1
14 and a selector 117 for selecting one of the calculation results of the subtractor 115. A plurality of adders 110 and 113 further have 0 and 3 respectively according to the position of the instruction word to be added.
Add the offset value of 119 is a preceding branch control means, which is instruction length data 120 of the instruction decoded by the decoder 104.
And the detection results 121, 122 and 123 of the instruction detecting means 105, control the storage of the next instruction in the instruction register by the next instruction control signal 124, and
Thus, a correct branch destination address is selected from a plurality of branch destination address candidates. A selector 126 selects an instruction read address, and selects one from a prefetch counter 127, a branch destination address 118, and a return destination address 128 at the time of executing a subroutine return instruction.

第2図は本発明の一実施例における分岐制御装置の実
行部の構成を示すブロック図である。同図において200
は戻り先アドレス格納手段であり、サブルーチンコール
命令実行時にALU201によって計算された戻り先アドレス
202を先入れ後出し方式のバッファにより格納し、最後
に格納した戻り先アドレス203を常時出力する。204は比
較器であり、前記戻り先アドレス格納手段200が出力す
る戻り先アドレス203と、サブルーチンリターン命令実
行時にメモリから読みだした戻り先アドレス205を比較
して、両者が一致しているか否かを戻り先アドレス一致
信号206に出力する。207は加算器であり、汎用レジスタ
(GR)208に格納されているデータと、命令が持つアド
レス偏位(disp)又は定数(const)とを加算し、実効
アドレス209を出力する。210はプログラムカウンタ、21
1は定数を生成する定数発生器である。212、213、214は
それぞれ汎用レジスタ208の読出しパルスであり、215、
216はそれぞれ汎用レジスタ208への書込みバスである。
217、218はバスのデータを選択するセレクタである。21
9はバス制御手段で、外部メモリと実行部との間で戻り
先アドレス等のデータ入出力を行う。
FIG. 2 is a block diagram showing a configuration of an execution unit of the branch control device according to one embodiment of the present invention. In the figure, 200
Is a return address storage means, and the return address calculated by the ALU 201 when the subroutine call instruction is executed.
202 is stored in a first-in last-out buffer, and the last stored return address 203 is always output. Reference numeral 204 denotes a comparator, which compares the return address 203 output by the return address storage means 200 with the return address 205 read from the memory at the time of executing the subroutine return instruction, and determines whether or not both match. Is output to the return address match signal 206. An adder 207 adds the data stored in the general-purpose register (GR) 208 to an address deviation (disp) or a constant (const) of the instruction, and outputs an effective address 209. 210 is the program counter, 21
1 is a constant generator for generating a constant. 212, 213, and 214 are read pulses of the general-purpose register 208, respectively.
216 are write buses to the general-purpose register 208, respectively.
217 and 218 are selectors for selecting bus data. twenty one
Reference numeral 9 denotes a bus control unit which inputs and outputs data such as a return address between the external memory and the execution unit.

第3図は本発明の分岐制御装置が扱う可変語長命令体
系の命令コード構成図であり、一例として条件分岐命令
のコードを示す。図に示すように、命令は基本語長(16
ビット)を単位とする可変語長であり、条件分岐命令の
場合には偏位の長さによって、1語長から3語長までの
命令がある。このうち本発明の実施例により高速化する
条件分岐命令は、偏位が8ビットの基本語長からなる条
件分岐命令(Bcc:d8)である。
FIG. 3 is an instruction code configuration diagram of a variable word length instruction system handled by the branch control device of the present invention, and shows, as an example, a code of a conditional branch instruction. As shown in the figure, the instruction has a basic word length (16
), And in the case of a conditional branch instruction, there are instructions with a length of one to three words depending on the length of the deviation. The conditional branch instruction whose speed is increased by the embodiment of the present invention is a conditional branch instruction (Bcc: d8) having a basic word length of 8 bits.

第4図は本発明の実施例における命令検出手段が検出
する命令コード構成図である。検出する命令は全部で4
種類あり、比較命令(CMP)、条件分岐命令(Bcc)、サ
ブルーチンコール命令(BSR)、サブルーチンリターン
命令(RTS)で、全て基本語長命令である。同図におい
てOPはオペレーションコード、R1は比較命令の第1オペ
ランド、EAは実効アドレス指定、conditionは条件分岐
の条件、disp8は8ビットのアドレス偏位をそれぞれ示
している。
FIG. 4 is a diagram showing the structure of an instruction code detected by the instruction detecting means in the embodiment of the present invention. 4 instructions to detect
There are several types: comparison instruction (CMP), conditional branch instruction (Bcc), subroutine call instruction (BSR), and subroutine return instruction (RTS), all of which are basic word length instructions. In the figure, OP is an operation code, R1 is a first operand of a comparison instruction, EA is an effective address specification, condition is a condition of a conditional branch, and disp8 is an 8-bit address deviation.

第5図は実行する命令列の並びを定義した命令フロー
図であり、動作説明において使用する。同図において
(a)は条件分岐命令の命令フローを、(b)はサブル
ーチンコール命令の命令フローを、(c)はサブルーチ
ンリターン命令の命令フローをそれぞれ示す。
FIG. 5 is an instruction flow diagram that defines the sequence of instruction sequences to be executed, and is used in the description of the operation. In the figure, (a) shows an instruction flow of a conditional branch instruction, (b) shows an instruction flow of a subroutine call instruction, and (c) shows an instruction flow of a subroutine return instruction.

第6図は条件分岐命令実行時において条件が成立した
場合の命令レジスタの状態説明図であり、上から順にA0
命令解読時の状態、CMP命令解読時の状態、B1命令解読
時の状態をそれぞれ示す。本実施例では、CMP命令の直
前命令であるA0命令は基本語長の1から2倍の長さまで
を扱うものとする。これは命令レジスタを4語長に限定
したためであり、本発明の方式が制限されるものではな
い。
FIG. 6 is an explanatory diagram of the state of the instruction register when the condition is satisfied during execution of the conditional branch instruction.
The state at the time of decoding the instruction, the state at the time of decoding the CMP instruction, and the state at the time of decoding the B1 instruction are shown. In this embodiment, it is assumed that the A0 instruction, which is an instruction immediately before the CMP instruction, has a length of 1 to 2 times the basic word length. This is because the instruction register is limited to four words, and the method of the present invention is not limited.

第7図はサブルーチンコール命令及びサブルーチンリ
ターン命令実行時の命令レジスタの状態説明図である。
(a)はサブルーチンコール命令の場合であり、上から
順にA0命令解読時の状態、BSR命令解読時の状態、B1命
令解読時の状態をそれぞれ示す。(b)はサブルーチン
リターン命令の場合であり、上から順にA0命令解読時の
状態、RTS命令解読時の状態、B1命令解読時の状態をそ
れぞれ示す。第6図と同様に、各命令の直前命令である
A0命令は基本語長の1から2倍の長さまでを扱うものと
する。
FIG. 7 is an explanatory diagram of the state of the instruction register when a subroutine call instruction and a subroutine return instruction are executed.
(A) is a case of a subroutine call instruction, and shows a state at the time of decoding the A0 instruction, a state at the time of decoding the BSR instruction, and a state at the time of decoding the B1 instruction in order from the top. (B) shows the case of a subroutine return instruction, which shows, from the top, a state at the time of decoding the A0 instruction, a state at the time of decoding the RTS instruction, and a state at the time of decoding the B1 instruction. As in FIG. 6, this is the instruction immediately before each instruction.
The A0 instruction handles one to two times the basic word length.

第8図は条件分岐命令の条件が成立して分岐した場合
のパイプラインフロー図である。同図においてIFは命令
フェッチステージ、D1及びD2は命令解読ステージ、Rは
レジスタ読出しステージ、EXは実行ステージ、Wはレジ
スタ書込みステージである。このパイプラインの段数及
び構成は本発明の一実施例に於けるものであり本発明の
分岐制御装置の方式が制限されるものではない。
FIG. 8 is a pipeline flow diagram in the case where the condition of the conditional branch instruction is satisfied and the branch is taken. In the figure, IF is an instruction fetch stage, D1 and D2 are instruction decoding stages, R is a register read stage, EX is an execution stage, and W is a register write stage. The number of stages and the configuration of the pipeline are those in one embodiment of the present invention, and the system of the branch control device of the present invention is not limited.

以下、主に第8図を参照しながら本発明の一実施例に
おいて条件分岐命令を実行する場合の動作を説明する。
Hereinafter, the operation when a conditional branch instruction is executed in one embodiment of the present invention will be described mainly with reference to FIG.

<タイミング1> A0命令が命令レジスタ103の先頭にあり、命令解読器1
04がA0命令を解読する。この時の命令レジスタの状態は
第6図の“A0命令解読時”のようになっており、A0命令
に後続するCMP命令、Bcc命令がそれぞれ命令検出手段10
5により検出される。同時に、分岐先アドレス計算手段1
09は、命令レジスタ中の各命令語の下位8ビットから条
件分岐命令の分岐先アドレスの候補を計算する。
<Timing 1> The A0 instruction is at the head of the instruction register 103 and the instruction decoder 1
04 decodes the A0 instruction. At this time, the state of the instruction register is as shown in "A0 instruction decoding" in FIG. 6, and the CMP instruction and the Bcc instruction subsequent to the A0 instruction are the instruction detection means 10 respectively.
Detected by 5. At the same time, branch destination address calculation means 1
In step 09, the candidate of the branch destination address of the conditional branch instruction is calculated from the lower 8 bits of each instruction word in the instruction register.

<タイミング2> タイミング1で解読したA0命令の命令語長情報120と
命令検出手段の検出結果121、122、123とから、先行分
岐制御手段119はCMP命令の先頭を判断して次命令制御信
号124により命令レジスタ103、命令バッファ102を制御
し、命令レジスタを第6図の“CMP命令解読時”の状態
にする。同時に分岐先アドレス制御信号125によりタイ
ミング1で計算された分岐先アドレスの候補の中からセ
レクタ126により正しい分岐先アドレスを選択し、命令
供給手段100に入力する。タイミング1において命令検
出手段により条件分岐命令が命令レジスタに格納されて
いることが検出されているので、命令解読器104は比較
命令と条件分岐命令を並列に解読した結果を制御信号と
して出力する。但し、条件分岐命令の解読は、条件コー
ドを制御信号に出力してそれが有効であることを示すだ
けであり、命令解読器が条件分岐命令のコードを入力し
て解読するわけではない。命令供給手段100は入力され
た分岐先アドレスから分岐先の命令B0、B1をフェッチ
し、命令バッファ102に格納する。命令バッファは、条
件分岐の条件が成立しない場合に備えて、A1命令以降の
命令を内部のバッファに退避しておく。なお、本実施例
では条件分岐は分岐するものとして処理を進め、実際に
実行した結果分岐しない場合にはその時点でのパイプラ
インを無効にして、A1命令の解読から再度パイプライン
処理する。
<Timing 2> Based on the instruction word length information 120 of the A0 instruction decoded at the timing 1 and the detection results 121, 122 and 123 of the instruction detecting means, the preceding branch control means 119 determines the head of the CMP instruction and determines the next instruction control signal. The instruction register 103 and the instruction buffer 102 are controlled by the instruction register 124, and the instruction register is brought into the state of "when the CMP instruction is decoded" in FIG. At the same time, a correct branch destination address is selected by the selector 126 from the branch destination address candidates calculated at the timing 1 by the branch destination address control signal 125 and input to the instruction supply means 100. At timing 1, since the instruction detecting means detects that the conditional branch instruction is stored in the instruction register, the instruction decoder 104 outputs, as a control signal, the result of decoding the comparison instruction and the conditional branch instruction in parallel. However, decoding of a conditional branch instruction merely outputs a condition code to a control signal to indicate that it is valid, and does not mean that an instruction decoder inputs and decodes the code of a conditional branch instruction. The instruction supply means 100 fetches the instructions B0 and B1 at the branch destination from the input branch destination address, and stores them in the instruction buffer 102. The instruction buffer saves instructions following the A1 instruction to an internal buffer in case the condition of the conditional branch is not satisfied. In this embodiment, the processing proceeds assuming that the conditional branch is a branch. If the execution does not result in a branch, the pipeline at that time is invalidated, and the pipeline processing is performed again from the decoding of the A1 instruction.

<タイミング3> 命令レジスタは、第6図の“B1命令解読時”の状態に
なり、命令解読器はB1命令を解読する。命令供給手段は
B2命令に後続する命令を先行してフェッチするが、第8
図のタイミング図では省略している。
<Timing 3> The instruction register enters the state of “when the B1 instruction is decoded” in FIG. 6, and the instruction decoder decodes the B1 instruction. Instruction supply means
The instruction following the B2 instruction is fetched before the
It is omitted in the timing chart of FIG.

<タイミング4> 実行部は、比較命令に必要なオペランドを汎用レジス
タ208から読出し、読出しバス212、213を通してALU201
に供給する。この時、ALUはA0命令の演算を行ってい
る。
<Timing 4> The execution unit reads the operands required for the comparison instruction from the general-purpose register 208, and reads out the ALU 201 through the read buses 212 and 213.
To supply. At this time, the ALU is performing the operation of the A0 instruction.

<タイミング5> 読出したオペランドの比較を行うとともに、比較結果
が条件分岐の条件に合致するか否かの判定を行う。この
比較はALUに付加された専用ハードウェアにより行う。
判定の結果、条件が一致すれば、この時点でオペランド
の読出しが行われているB1命令の実行を次のタイミング
で演算する。判定の結果、条件が一致しなければ第9図
に示すように、B1命令以降のパイプライン実行を全てキ
ャンセルし、命令バッファに退避されているA1命令の解
読を始める。
<Timing 5> The read operands are compared, and it is determined whether or not the comparison result matches the condition of the conditional branch. This comparison is performed by dedicated hardware added to the ALU.
If the result of the determination is that the conditions match, the execution of the B1 instruction whose operand is being read at this time is calculated at the next timing. As a result of the determination, if the conditions do not match, as shown in FIG. 9, all the pipeline executions after the B1 instruction are canceled, and the decoding of the A1 instruction saved in the instruction buffer is started.

以上説明したように、本発明の分岐制御装置ではA0命
令解読中に後続する比較命令と条件分岐命令が命令レジ
スタ中にあり、かつ条件が一致した場合には条件分岐命
令を0クロックで実行する。条件が一致しなかった場合
には、第9図からわかるように3クロックで実行する。
但し、本実施例のパイプラインでは解読ステージが2段
あり、またレジスタ読出しのステージを設けているた
め、条件が成立しない場合に3クロックかかるが、パイ
プライン段数を圧縮すれば条件が成立しない場合でも1
クロックにまで下げることが可能である。
As described above, the branch control device of the present invention executes the conditional branch instruction at 0 clock when the following comparison instruction and the conditional branch instruction are present in the instruction register during the decoding of the A0 instruction and the conditions match. . If the conditions do not match, as shown in FIG. 9, the processing is executed with three clocks.
However, in the pipeline of this embodiment, since there are two decoding stages and a register reading stage is provided, it takes three clocks when the condition is not satisfied. However, when the number of pipeline stages is reduced, the condition is not satisfied. But one
It is possible to go down to the clock.

第10図及び第11図は、条件分岐命令の検出が遅れた場
合の条件成立時の動作を示すパイプラインフロー図であ
る。検出の遅れは、A0命令を解読中に比較命令以降の命
令が命令レジスタになかった場合に起こる。第10図は、
検出が1サイクル遅れた場合のパイプラインフロー図で
あり、分岐先の計算が1サイクル遅れる以外は第8図の
動作と同じである。第11図は、検出が2サイクル遅れた
場合のパイプラインフロー図であり、A0命令解読中に比
較命令と条件分岐命令が検出できず、また比較命令の解
読中にも条件分岐命令が検出できなかった場合に起こ
る。この場合は、分岐先計算が2サイクル遅れるほか
に、分岐判定も1サイクル遅れるので、条件が成立しな
かった場合の実行時間も第9図に比べて1サイクル余分
にかかる。
FIG. 10 and FIG. 11 are pipeline flow diagrams showing the operation when the condition is satisfied when the detection of the conditional branch instruction is delayed. The detection delay occurs when there is no instruction after the comparison instruction in the instruction register while decoding the A0 instruction. FIG.
FIG. 9 is a pipeline flow diagram when detection is delayed by one cycle, and is the same as the operation in FIG. 8 except that the calculation of the branch destination is delayed by one cycle. FIG. 11 is a pipeline flow diagram when the detection is delayed by two cycles. The comparison instruction and the conditional branch instruction cannot be detected during the decoding of the A0 instruction, and the conditional branch instruction cannot be detected during the decoding of the comparison instruction. Happens if not. In this case, the branch destination calculation is delayed by two cycles, and the branch determination is also delayed by one cycle. Therefore, the execution time when the condition is not satisfied is one cycle longer than that in FIG.

次に、サブルーチンコール命令とサブルーチンリター
ン命令の動作について説明する。第12図はサブルーチン
コール命令を実行する場合のパイプラインフロー図であ
り、WBはメモリへの書込みステージを示す。
Next, the operation of the subroutine call instruction and the subroutine return instruction will be described. FIG. 12 is a pipeline flow diagram when a subroutine call instruction is executed, and WB indicates a writing stage to a memory.

<タイミング1> 条件分岐命令の場合と同様に、A0命令が命令レジスタ
の先頭にあり、命令解読器104がA0命令を解読する。こ
の時の命令レジスタの状態は第7図(a)の“A0命令解
読時”のようになっており、A0命令に後続するBSR命令
が命令検出手段105により検出される。同時に、分岐先
アドレス計算手段108は、命令レジスタ中の各命令語の
下位8ビットからサブルーチンコール命令の分岐先アド
レスの候補を計算する。
<Timing 1> As in the case of the conditional branch instruction, the A0 instruction is at the head of the instruction register, and the instruction decoder 104 decodes the A0 instruction. At this time, the state of the instruction register is as shown in "A0 instruction decoding" in FIG. 7A, and the BSR instruction following the A0 instruction is detected by the instruction detecting means 105. At the same time, the branch destination address calculating means 108 calculates a candidate for a branch destination address of the subroutine call instruction from the lower 8 bits of each instruction word in the instruction register.

<タイミング2> タイミング1で解読したA0命令の命令語長情報120と
命令検出手段の検出結果121、122、123とから、先行分
岐制御手段119はBSR命令の先頭を判断して次命令制御信
号124により命令レジスタ103、命令バッファ102を制御
し、命令レジスタを第7図(a)の“BSR命令解読時”
の状態にする。
<Timing 2> Based on the instruction word length information 120 of the A0 instruction decoded at the timing 1 and the detection results 121, 122, 123 of the instruction detecting means, the preceding branch control means 119 determines the head of the BSR instruction and determines the next instruction control signal. The instruction register 103 and the instruction buffer 102 are controlled by 124, and the instruction register is set to "when the BSR instruction is decoded" in FIG. 7 (a).
State.

<タイミング3、タイミング4> タイミング3、タイミング4は条件分岐命令の場合と
同様である。但しタイミング4では、BSR命令の演算オ
ペランドとしてスタックポインタとプログラムカウンタ
をそれぞれ読出しバス214と212を通して、加算器207とA
LU201に入力する。
<Timing 3, Timing 4> Timing 3 and timing 4 are the same as in the case of the conditional branch instruction. However, at timing 4, the stack pointer and the program counter are read as the operation operands of the BSR instruction through the read buses 214 and 212, respectively.
Input to LU201.

<タイミング5> 加算器207は戻り先を格納するスタックのアドレスを
計算し、実効アドレス209を出力する。ALU201はプログ
ラムカウンタの値とサブルーチンコール命令の命令長の
情報から戻り先アドレス202を計算し、出力する。
<Timing 5> The adder 207 calculates the address of the stack that stores the return destination, and outputs the effective address 209. The ALU 201 calculates and outputs a return address 202 from the value of the program counter and information on the instruction length of the subroutine call instruction.

<タイミング6> バス制御手段219は戻り先アドレスを実効アドレス
(更新後のスタックポインタが指すアドレス)に書き込
む。戻り先アドレス格納手段200は、戻り先アドレス202
を内部バッファに格納する。また、更新後のスタックポ
インタの値は、書込みバス215を通し汎用レジスタ208に
書き込まれる。
<Timing 6> The bus control unit 219 writes the return address to the effective address (the address indicated by the updated stack pointer). The return address storage means 200 stores the return address 202
Is stored in the internal buffer. The updated stack pointer value is written to the general-purpose register 208 via the write bus 215.

以上説明したように、本発明の分岐制御装置ではA0命
令解読中に後続するサブルーチンコール命令が命令レジ
スタ中にある場合にはサブルーチンコール命令を1クロ
ックで実行する。第13図はサブルーチンコール命令の検
出が1サイクル遅れた場合のパイプラインフロー図であ
り、サブルーチンコール命令の解読中に分岐先アドレス
の計算を行う。
As described above, the subroutine call instruction is executed in one clock when the subsequent subroutine call instruction is present in the instruction register while the A0 instruction is being decoded. FIG. 13 is a pipeline flow chart when the detection of the subroutine call instruction is delayed by one cycle, and the branch destination address is calculated during the decoding of the subroutine call instruction.

第14図はサブルーチンリターン命令実行時に戻り先ア
ドレス格納手段の戻り先アドレスが正しかった場合のパ
イプラインフロー図であり、OFはメモリオペランドのフ
ェッチステージを示す。以下各タイミング毎に動作を説
明する。
FIG. 14 is a pipeline flow diagram when the return address of the return address storage means is correct when the subroutine return instruction is executed, and OF indicates a fetch stage of a memory operand. The operation will be described below at each timing.

<タイミング1> 条件分岐命令の場合と同様に、A0命令が命令レジスタ
の先頭にあり、命令解読器104がA0命令を解読する。こ
の時の命令レジスタの状態は第7図(b)の“A0命令解
読時”のようになっており、A0命令に後続するRTS命令
が命令検出手段105により検出される。
<Timing 1> As in the case of the conditional branch instruction, the A0 instruction is at the head of the instruction register, and the instruction decoder 104 decodes the A0 instruction. At this time, the state of the instruction register is as shown in "A0 instruction decoding" in FIG. 7B, and the RTS instruction following the A0 instruction is detected by the instruction detecting means 105.

<タイミング2> 先行分岐制御手段119は、戻り先格納手段200から出力
される最も最後に格納した戻り先アドレス203をセレク
タ126により選択し、命令供給手段100に入力する。命令
供給手段100は、そのアドレスに基づいて戻り先の命令
をフェッチする。
<Timing 2> The preceding branch control means 119 selects the last stored return address 203 output from the return destination storage means 200 by the selector 126 and inputs it to the instruction supply means 100. The instruction supply means 100 fetches a return instruction based on the address.

<タイミング3、タイミング4> タイミング3、タイミング4は条件分岐命令の場合と
同様である。但しタイミング4では、RTS命令の演算オ
ペランドとしてスタックポインタを読出しバス214を通
して、加算器207に入力する。
<Timing 3, Timing 4> Timing 3 and timing 4 are the same as in the case of the conditional branch instruction. However, at timing 4, the stack pointer is input to the adder 207 through the read bus 214 as the operation operand of the RTS instruction.

<タイミング5> 加算器207は、スタックポインタを更新するために、
戻り先アドレスのデータ長分の演算を行い書込みバス21
5に出力する。同時にセレクタ217は読出しバス214に読
み出されたスタックポインタのデータを選択し、実効ア
ドレスとして209に出力する。
<Timing 5> The adder 207 updates the stack pointer
Performs an operation for the data length of the return address and performs write bus 21
Output to 5. At the same time, the selector 217 selects the data of the stack pointer read to the read bus 214 and outputs it to the address 209 as an effective address.

<タイミング6> バス制御手段219は実効アドレス(更新前のスタック
ポインタが指すアドレス)から戻り先アドレス205をフ
ェッチする。また、更新後のスタックポインタの値は、
書込みバス215を通して汎用レジスタ208に書き込まれ
る。比較器204は、戻り先格納手段200が出力する戻り先
アドレス203とバス制御手段がフェッチした戻り先アド
レス205を比較し、一致判定結果を206に出力する。比較
の結果両者のアドレスが一致すれば、第14図のようにリ
ターンサブルーチン命令の直後に戻り先の命令が実行さ
れる。比較の結果一致しなければ、第15図に示すように
後続のパイプラインを全てキャンセルし、バス制御手段
がフェッチした戻り先アドレスにより命令フェッチから
パイプラインを再開する。この場合実行部は戻り先アド
レス格納手段から出力される戻り先アドレス203をバス
制御手段がフェッチした正しい戻り先アドレスに置き換
えて命令供給手段に入力する。
<Timing 6> The bus control unit 219 fetches the return address 205 from the effective address (the address indicated by the stack pointer before updating). The updated stack pointer value is
The data is written to the general-purpose register 208 through the write bus 215. The comparator 204 compares the return address 203 output by the return destination storage means 200 with the return address 205 fetched by the bus control means, and outputs a match determination result to 206. If both addresses match as a result of the comparison, the return instruction is executed immediately after the return subroutine instruction as shown in FIG. If they do not match, as shown in FIG. 15, all subsequent pipelines are canceled, and the pipeline is restarted from the instruction fetch by the return address fetched by the bus control means. In this case, the execution unit replaces the return address 203 output from the return address storage means with a correct return address fetched by the bus control means and inputs the correct return address to the instruction supply means.

このように、A0命令解読中に後続するサブルーチンリ
ターン命令が命令レジスタ中にあり、かつ戻り先格納手
段の戻り先が正しい場合にはサブルーチンリターン命令
を1クロックで実行する。
As described above, when the subsequent subroutine return instruction is present in the instruction register while the A0 instruction is being decoded and the return destination of the return destination storage means is correct, the subroutine return instruction is executed in one clock.

発明の効果 以上述べたように本発明によれば、命令検出手段、先
行分岐制御手段、分岐先アドレス計算手段を設けて、比
較命令の直前命令を解読中に分岐先アドレスの候補を計
算することにより、比較命令と条件分岐命令の2命令並
列解読を可能にし、分岐予測機構等のハードウェアを用
いることなく、条件分岐命令の処理の高速化が図れる。
さらに、戻り先アドレス格納手段と比較手段とを設ける
ことにより、サブルーチンコール命令とサブルーチンリ
ターン命令の処理の高速化が図れる。
Effect of the Invention As described above, according to the present invention, it is possible to provide an instruction detecting means, a preceding branch control means, and a branch destination address calculating means to calculate a candidate of a branch destination address while decoding an instruction immediately before a comparison instruction. Thereby, two instructions of the comparison instruction and the conditional branch instruction can be decoded in parallel, and the processing of the conditional branch instruction can be speeded up without using hardware such as a branch prediction mechanism.
Further, by providing the return address storage means and the comparison means, the processing of the subroutine call instruction and the subroutine return instruction can be speeded up.

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

第1図は本発明の一実施例における分岐制御装置の解読
部の構成を示すブロック図、第2図は本発明の一実施例
における分岐制御装置の実行部の構成を示すブロック
図、第3図は本発明の分岐制御装置が扱う可変語長命令
体系の命令コード構成図、第4図は本発明の実施例にお
ける命令検出手段が検出する命令コード構成図、第5図
は動作説明において、実行する命令列の並びを定義した
命令フロー図、第6図は条件分岐命令実行時における命
令レジスタの状態説明図、第7図はサブルーチンコール
命令及びサブルーチンリターン命令実行時の命令レジス
タの状態説明図、第8図は条件分岐命令の条件が成立し
て分岐した場合のバイプラインフロー図、第9図は条件
分岐命令の条件が不成立で分岐しなかった場合のパイプ
ラインフロー図、第10図は条件分岐命令の検出が1サイ
クル遅れた場合のパイプラインフロー図、第11図は条件
分岐命令の検出が2サイクル遅れた場合のパイプライン
フロー図、第12図はサブルーチンコール命令を実行する
場合のパイプラインフロー図、第13図はサブルーチンコ
ール命令の検出が1サイクル遅れた場合のパイプライン
フロー図、第14図はサブルーチンリターン命令実行時に
戻り先アドレス格納手段の戻り先アドレスが正しかった
場合のパイプラインフロー図、第15図はサブルーチンリ
ターン命令実行時に戻り先アドレス格納手段の戻り先ア
ドレスが正しくなかった場合のパイプラインフロー図で
ある。 100……命令供給手段、103……命令レジスタ、 104……命令解読器、105……命令検出手段 108……分岐先アドレス計算手段、 119……先行分岐制御手段、 200……戻り先アドレス格納手段、 204……比較器、207……加算器。
FIG. 1 is a block diagram showing a configuration of a decoding unit of a branch control device according to an embodiment of the present invention. FIG. 2 is a block diagram showing a configuration of an execution unit of the branch control device according to an embodiment of the present invention. FIG. 4 is a diagram showing an instruction code configuration of a variable word length instruction system handled by the branch control device of the present invention, FIG. 4 is a diagram showing an instruction code configuration detected by an instruction detecting means in the embodiment of the present invention, and FIG. FIG. 6 is an instruction flow diagram defining the sequence of instruction sequences to be executed, FIG. 6 is an explanatory diagram of an instruction register at the time of execution of a conditional branch instruction, and FIG. 8, FIG. 8 is a pipeline flow diagram when the condition of the conditional branch instruction is satisfied and the branch is taken, and FIG. 9 is a pipeline flow diagram when the condition of the conditional branch instruction is not satisfied and the branch is not taken. FIG. 0 is a pipeline flow diagram when the detection of a conditional branch instruction is delayed by one cycle, FIG. 11 is a pipeline flow diagram when detection of a conditional branch instruction is delayed by two cycles, and FIG. 12 executes a subroutine call instruction. FIG. 13 is a pipeline flow diagram when the detection of a subroutine call instruction is delayed by one cycle, and FIG. 14 is that the return address of the return address storage means is correct when the subroutine return instruction is executed. FIG. 15 is a pipeline flow chart in the case where the return address of the return address storage means is not correct when the subroutine return instruction is executed. 100: instruction supply means, 103: instruction register, 104: instruction decoder, 105: instruction detection means 108: branch destination address calculation means, 119: preceding branch control means, 200: return address storage Means, 204: comparator, 207: adder.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】実行に先だって命令をフェッチする命令供
給手段と、 前記命令供給手段が出力する複数の命令コードを保持す
る命令レジスタと、 前記命令レジスタの先頭に格納された命令コードを解読
する命令解読器と、 前記命令レジスタの先頭に格納された命令コードに後続
する直後の命令コードの中に、サブルーチンコール命令
又はサブルーチンリターン命令が存在することを検出す
る命令検出手段と、 前記解読器が解読した命令の命令語長と前記命令検出手
段の検出結果とを入力し、命令レジスタへ前記サブルー
チンコール命令又はサブルーチンリターン命令を格納す
る制御を行なう先行分岐制御手段と、 少なくとも1つのサブルーチンの戻り先アドレスを格納
し、メモリのスタック領域とは独立した戻り先アドレス
格納手段と、 スタックポインタを更新する加算器と、 前記戻り先アドレス格納手段が出力する戻り先アドレス
と前記スタック領域から読み出した戻り先アドレスとを
入力して両者のアドレスを比較し、両者が一致している
か否かを出力する比較器を備え、 命令解読中に、該命令に後続する命令列中からサブルー
チンコール命令又はサブルーチンリターン命令を検出
し、 サブルーチンコール命令を検出した場合には該サブルー
チンコール命令で指定されるコール先を命令フェッチ先
アドレスとして該サブルーチンコール命令を実行し、 サブルーチンリターン命令を検出した場合には、該サブ
ルーチンコール命令の解読中に前記比較器の出力が一致
を示す場合に限り、前記戻り先アドレス格納手段の出力
に基づいてフェッチされた命令を、サブルーチンリター
ン命令の直後に実行することを特徴とする分岐制御装
置。
1. An instruction supply means for fetching an instruction prior to execution, an instruction register holding a plurality of instruction codes output by the instruction supply means, and an instruction for decoding an instruction code stored at the head of the instruction register. A decoder; an instruction detecting means for detecting the presence of a subroutine call instruction or a subroutine return instruction in the instruction code immediately following the instruction code stored at the head of the instruction register; and Precedent branch control means for inputting the instruction word length of the set instruction and the detection result of the instruction detection means, and controlling to store the subroutine call instruction or the subroutine return instruction in an instruction register; and a return address of at least one subroutine. Return address storage means independent of the stack area of the memory; An adder for updating a check pointer, a return address output from the return address storage means and a return address read from the stack area, and comparing the two addresses to determine whether they match. A subroutine call instruction or a subroutine return instruction is detected from a sequence of instructions following the instruction while the instruction is being decoded. If a subroutine call instruction is detected, the instruction is designated by the subroutine call instruction. The subroutine call instruction is executed using the call destination as an instruction fetch destination address, and if a subroutine return instruction is detected, the return destination is determined only when the output of the comparator indicates a match during the decoding of the subroutine call instruction. The instruction fetched based on the output of the address storage means is transferred to the subroutine Branch control unit and executes the next instruction.
JP2293838A 1990-10-30 1990-10-30 Branch control device Expired - Fee Related JP2591325B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2293838A JP2591325B2 (en) 1990-10-30 1990-10-30 Branch control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2293838A JP2591325B2 (en) 1990-10-30 1990-10-30 Branch control device

Publications (2)

Publication Number Publication Date
JPH04167026A JPH04167026A (en) 1992-06-15
JP2591325B2 true JP2591325B2 (en) 1997-03-19

Family

ID=17799811

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2293838A Expired - Fee Related JP2591325B2 (en) 1990-10-30 1990-10-30 Branch control device

Country Status (1)

Country Link
JP (1) JP2591325B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6334184B1 (en) 1998-03-24 2001-12-25 International Business Machines Corporation Processor and method of fetching an instruction that select one of a plurality of decoded fetch addresses generated in parallel to form a memory request

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63195736A (en) * 1987-02-10 1988-08-12 Hitachi Ltd Branch instruction processor for pipeline control

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
マイクロコンピュータ基礎講座1「マイクロコンピュータアーキテクチャ」(オーム社、昭57−2−20)P.18−20

Also Published As

Publication number Publication date
JPH04167026A (en) 1992-06-15

Similar Documents

Publication Publication Date Title
JP3599409B2 (en) Branch prediction device
US5961637A (en) Split branch system utilizing separate set branch, condition and branch instructions and including dual instruction fetchers
US5394530A (en) Arrangement for predicting a branch target address in the second iteration of a short loop
US4476525A (en) Pipeline-controlled data processing system capable of performing a plurality of instructions simultaneously
US6338136B1 (en) Pairing of load-ALU-store with conditional branch
US5461722A (en) Parallel processing apparatus suitable for executing in parallel a plurality of instructions including at least two branch instructions
US5335330A (en) Information processing apparatus with optimization programming
EP0093430A2 (en) Pipeline data processing system
JPH02287626A (en) Pipeline system branch instruction controller
JPH0743648B2 (en) Information processing equipment
JP2591325B2 (en) Branch control device
US6044455A (en) Central processing unit adapted for pipeline process
JP3708022B2 (en) Processor
JP2002024008A (en) Data processor and program conversion device
US6360310B1 (en) Apparatus and method for instruction cache access
JP3493110B2 (en) High-speed branch processing unit
JPH06131180A (en) Instruction processing system and instruction processor
JP2001022577A (en) Information processor
JPH0991139A (en) Information processor
JP2503223B2 (en) Prior control method
JPH0774992B2 (en) Data processing device
JP3325309B2 (en) Subroutine return instruction processing unit
KR100515039B1 (en) Pipeline status indicating circuit for conditional instruction
JP3668643B2 (en) Information processing device
JP2629479B2 (en) Information processing device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees