JPH05298092A - Information processor - Google Patents

Information processor

Info

Publication number
JPH05298092A
JPH05298092A JP9651792A JP9651792A JPH05298092A JP H05298092 A JPH05298092 A JP H05298092A JP 9651792 A JP9651792 A JP 9651792A JP 9651792 A JP9651792 A JP 9651792A JP H05298092 A JPH05298092 A JP H05298092A
Authority
JP
Japan
Prior art keywords
instruction
stored
buffer
instructions
group
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.)
Withdrawn
Application number
JP9651792A
Other languages
Japanese (ja)
Inventor
Norio Uchiumi
則夫 内海
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 JP9651792A priority Critical patent/JPH05298092A/en
Publication of JPH05298092A publication Critical patent/JPH05298092A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE:To accelerate the out-of-order execution speed of instructions. CONSTITUTION:A first buffer group 3 consisting of four entry buffers A, B, C, and D is provided in order to enable the out-of-order execution of instructions. A second buffer group 20 is provided so that entries of buffers C and D are saved in the case that instructions stored in buffers A and B in the first buffer group 3 have mutual flow depending relations and instructions stored in buffers C and D of the first buffer group 3 are already executed in advance. Thus, the succeeding instruction are stored into the first buffer group 3 and the execution in advance is available.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、先行命令に対しフロー
依存関係(書き込み後読出し)にない命令からの先行実
行(以下、out−of−order実行という。)を
可能とするためにデータの待ち合わせ場所として命令の
制御情報とデータ情報とを格納するフィールドを各々有
するバッファ群を備え、該バッファ群内の命令を実行し
た結果をレジスタあるいはデータキャッシュに格納する
順はオブジェクトコード上の命令出現順序に忠実である
(in−order)情報処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention enables pre-execution (hereinafter referred to as "out-of-order execution") of an instruction that does not have a flow dependency (read after writing) with respect to the preceding instruction. A buffer group having fields for storing control information and data information of instructions is provided as a meeting place, and the order of storing the results of executing the instructions in the buffer group in a register or data cache is the order in which the instructions appear in the object code. In-order information processing device.

【0002】[0002]

【従来の技術】近年、複数の演算処理装置を備え、かつ
1マシンサイクル内に複数の命令をout−of−or
der実行できる情報処理装置が用いられるようになっ
てきている。
2. Description of the Related Art In recent years, a plurality of arithmetic processing units are provided and a plurality of instructions are out-of-or in one machine cycle.
Information processing apparatuses capable of executing der have been used.

【0003】図4は、2つの演算処理装置を備え、かつ
1マシンサイクルに最大2つの命令をout−of−o
rder実行する従来の情報処理装置の一例のブロック
構成を示している。同図に示す情報処理装置は、命令キ
ャッシュ1と、デコーダ2と、バッファ群3と、第1及
び第2の演算処理装置4,5と、レジスタ群6と、デー
タキャッシュ7とを有している。同図中、8〜19は、
命令あるいはデータの転送用のバスである。
FIG. 4 is provided with two arithmetic processing units and outputs up to two instructions out-of-o in one machine cycle.
The block configuration of an example of the conventional information processing apparatus which performs rder is shown. The information processing apparatus shown in the figure includes an instruction cache 1, a decoder 2, a buffer group 3, first and second arithmetic processing units 4, 5, a register group 6, and a data cache 7. There is. In the figure, 8 to 19 are
A bus for transferring instructions or data.

【0004】この情報処理装置は、各命令が次の4フィ
ールドからなることを前提として構成されたものであ
る。すなわち、第1フィールドは命令のオペコード、第
2及び第3のフィールドは第1フィールドのオペコード
で示される命令の処理対象となる第1及び第2のソース
データが格納されているソースレジスタの番号、第4の
フィールドは命令の処理結果を格納すべきディスティネ
ーションレジスタの番号である。
This information processing apparatus is constructed on the premise that each instruction consists of the following four fields. That is, the first field is the operation code of the instruction, the second and third fields are the numbers of the source registers in which the first and second source data to be processed by the instruction indicated by the operation code of the first field are stored, The fourth field is the number of the destination register that should store the processing result of the instruction.

【0005】デコーダ2は、命令キャッシュ1から同時
に発行された2命令をデコードするものである。第1及
び第2の演算処理装置4,5は、アドレス計算、算術演
算及び論理演算を行うものである。また、レジスタ群6
は、第1及び第2の演算処理装置4,5のソースレジス
タ及びディスティネーションレジスタとして機能する多
数のレジスタを有するものである。
The decoder 2 decodes two instructions issued simultaneously from the instruction cache 1. The first and second arithmetic processing units 4 and 5 perform address calculation, arithmetic operation and logical operation. Also, register group 6
Has a large number of registers that function as source registers and destination registers of the first and second arithmetic processing units 4 and 5.

【0006】命令のout−of−order実行を実
現するためのバッファ群3は、4エントリーのバッファ
A,B,C,Dからなり、かつ格納された命令間でデー
タのフロー依存関係を調べる機能を有するものである。
バッファ群3の各エントリーA,B,C,Dは、図5に
示すように、それぞれ8つのフィールドを有している。
図5において、PCはプログラムカウンタの値を格納す
るためのフィールドである。S1、S2、Dには、各々
第1及び第2のソースレジスタとディスティネーション
レジスタのレジスタ番号を格納する。S1_LOCK、
S2_LOCK、D_LOCKの各フィールドは、フロ
ー依存関係の有無を示すものである。すなわち、あるエ
ントリーの命令の第1のソースレジスタが先行命令の実
行結果を用いている場合には、前者のS1_LOCKと
後者のD_LOCKとが共にセットされる。また、ある
エントリーの命令の第2のソースレジスタが先行命令の
実行結果を用いている場合には、前者のS2_LOCK
と後者のD_LOCKとが共にセットされる。DATA
のフィールドには命令の実行結果を格納する。
The buffer group 3 for realizing the out-of-order execution of instructions is composed of four-entry buffers A, B, C, and D, and has a function of examining the data flow dependency between the stored instructions. Is to have.
Each entry A, B, C, D of the buffer group 3 has eight fields as shown in FIG.
In FIG. 5, PC is a field for storing the value of the program counter. Register numbers of the first and second source registers and the destination register are stored in S1, S2, and D, respectively. S1_LOCK,
Each field of S2_LOCK and D_LOCK indicates whether or not there is a flow dependency relationship. That is, when the first source register of the instruction of a certain entry uses the execution result of the preceding instruction, both the former S1_LOCK and the latter D_LOCK are set. If the second source register of the instruction of a certain entry uses the execution result of the preceding instruction, the former S2_LOCK
And the latter D_LOCK are set together. DATA
The execution result of the instruction is stored in the field of.

【0007】このような構成を有する情報処理装置は、
以下のようにout−of−order実行を行う。説
明を簡単にするために制御依存関係は考慮に入れない。
An information processing apparatus having such a configuration is
The out-of-order execution is performed as follows. Control dependencies are not taken into account for ease of explanation.

【0008】まず、命令キャッシュ1から発行された2
命令がデコーダ2でデコードされ、デコーダ2は発行さ
れた第1及び第2の命令のソースレジスタとディスティ
ネーションレジスタの各レジスタ番号を読出し、第1及
び第2の命令のプログラムカウンタの値と共にこれらを
バッファ群3中に格納する。バッファ群3中のS1、S
2フィールドに格納されている第1及び第2の命令のソ
ースレジスタのレジスタ番号と、既にバッファ群3中に
格納されている先行命令でありかつ未実行あるいは実行
中であるためにDATAフィールドに実行結果が格納さ
れていないエントリーのDフィールドに格納されている
ディスティネーションレジスタのレジスタ番号とが一致
することを通してフロー依存関係が検出された場合に
は、対応するエントリーのS1_LOCKあるいはS2
_LOCKとD_LOCKとがセットされる。
First, 2 issued from the instruction cache 1
The instruction is decoded by the decoder 2, and the decoder 2 reads the respective register numbers of the source register and the destination register of the issued first and second instructions, and reads them together with the values of the program counters of the first and second instructions. Store in buffer group 3. S1 and S in buffer group 3
Executed in the DATA field because the register number of the source register of the first and second instructions stored in the 2 field and the preceding instruction already stored in the buffer group 3 and not executed or being executed When the flow dependency is detected by matching the register number of the destination register stored in the D field of the entry in which the result is not stored, S1_LOCK or S2 of the corresponding entry is detected.
_LOCK and D_LOCK are set.

【0009】第1及び第2の演算処理装置4,5は、バ
ッファ群3中のS1_LOCK、S2_LOCKが共に
リセットされているエントリーに格納された命令のみを
実行する。実行可能な命令のソースデータをレジスタ群
6の中から読み出し、実行した命令に応じてアドレス計
算、算術演算あるいは論理演算を行うのである。複数の
命令が同時に実行可能である場合には、バッファ群3の
中のPCフィールドの値の小さい順に2エントリーが実
行される。
The first and second arithmetic processing units 4 and 5 execute only the instruction stored in the entry in which both S1_LOCK and S2_LOCK in the buffer group 3 are reset. Source data of an executable instruction is read from the register group 6 and address calculation, arithmetic operation or logical operation is performed according to the executed instruction. When a plurality of instructions can be executed at the same time, two entries are executed in ascending order of the value of the PC field in the buffer group 3.

【0010】第1及び第2の演算処理装置4,5のそれ
ぞれの演算結果は、バッファ群3のうちの実行したエン
トリーのDATAフィールドに一旦格納される。同時に
バッファ群3中のすべてのエントリーについて、実行済
みの命令のD_LOCKによってロックしているS1_
LOCK、S2_LOCKがリセットされる。バッファ
群3の中のDATAフィールドに一旦格納された実行結
果は、命令のオペコードに応じてレジスタ群6中あるい
はデータキャッシュ7中へ格納される。
The respective calculation results of the first and second calculation processing devices 4 and 5 are temporarily stored in the DATA field of the executed entry in the buffer group 3. At the same time, S1_locked by D_LOCK of the executed instruction for all entries in the buffer group 3.
LOCK and S2_LOCK are reset. The execution result once stored in the DATA field in the buffer group 3 is stored in the register group 6 or the data cache 7 according to the operation code of the instruction.

【0011】以上のようにバッファ群3の中の命令は、
ソースデータがレジスタ群6あるいはデータキャッシュ
7から参照可能になり次第そのエントリーの命令の実行
が開始されるため、命令の実行順序はout−of−o
rderになる。
As described above, the instructions in the buffer group 3 are
As soon as the source data can be referenced from the register group 6 or the data cache 7, the execution of the instruction of that entry is started, so the instruction execution order is out-of-o.
Become rder.

【0012】[0012]

【発明が解決しようとする課題】上記従来の情報処理装
置は、バッファ群3において、先行命令(第1の命令)
が未実行あるいは実行中であるために該先行命令に対し
フロー依存関係にある他の命令(第2の命令)が実行不
能になっており、かつ更に他の命令(第3、第4の命
令)が既に先行実行済みであるにもかかわらず第1及び
第2の命令の実行結果のレジスタ群6あるいはデータキ
ャッシュ7へのストア待ち状態になっている場合には、
このバッファ群3中に空ができないために第4の命令に
続く更に他の命令(第5、第6の命令)の先行実行が実
現できない問題があった。
In the above conventional information processing apparatus, in the buffer group 3, the preceding instruction (first instruction) is given.
Is not executed or is being executed, another instruction (second instruction) having a flow dependency relationship with the preceding instruction is not executable, and further another instruction (third and fourth instructions) ) Has already been executed in advance, but is in a waiting state for storing the execution results of the first and second instructions in the register group 6 or the data cache 7,
Since there is no space in the buffer group 3, there is a problem that the preceding execution of further instructions (fifth and sixth instructions) following the fourth instruction cannot be realized.

【0013】以下、バッファ群3中の各エントリーすな
わちバッファA、B、C、Dに次の命令が格納されてい
る場合の前記情報処理装置における処理動作について説
明する。すなわち、 とする。
The processing operation of the information processing apparatus when the following instructions are stored in the respective entries of the buffer group 3, that is, the buffers A, B, C and D will be described below. That is, And

【0014】バッファ群3の各フィールドの状態を図5
中に示す。さらに、バッファDに格納されている命令の
次に実行されるべき命令は、 110 ADD %9,%10,%11 114 ADD %9,%12,%13 118 ADD %9,%14,%15 11C ADD %9,%16,%17 であるとする。
The state of each field of the buffer group 3 is shown in FIG.
Shown inside. Further, the instruction to be executed next to the instruction stored in the buffer D is 110 ADD% 9,% 10,% 11 114 ADD% 9,% 12,% 13 118 ADD% 9,% 14,% 15 11C ADD% 9,% 16,% 17.

【0015】バッファAに格納されているSUB命令の
ディスティネーションレジスタは%3であり、バッファ
Bに格納されているADD命令のソースレジスタの一方
も%3なので、これら2つの命令間でデータがフロー依
存関係にある。そのため、図5に示すように、バッファ
AのD_LOCKとバッファBのS1_LOCKには1
がセットされている。また、バッファC、Dに格納され
ている命令は既に先行実行済みであり、DATAフィー
ルドにそれぞれ命令の実行結果「10」、「20」が格
納されているとする。
Since the destination register of the SUB instruction stored in the buffer A is% 3 and one of the source registers of the ADD instruction stored in the buffer B is% 3, data flows between these two instructions. It has a dependency relationship. Therefore, as shown in FIG. 5, the D_LOCK of the buffer A and the S1_LOCK of the buffer B are 1
Is set. Further, it is assumed that the instructions stored in the buffers C and D have already been executed in advance, and the execution results “10” and “20” of the instructions are stored in the DATA field, respectively.

【0016】説明を簡単にするためにバッファAとバッ
ファB以外にデータ依存関係はなく、制御依存関係は考
慮に入れない。
For simplicity of explanation, there is no data dependency other than buffer A and buffer B, and the control dependency is not taken into consideration.

【0017】図6は各ステージでバッファA、B、C、
Dに格納されている命令の処理動作を示している。同図
において、PCを表わす数値の後の−F、−L、−E、
−Sは、それぞれそのPCの命令がフェッチステージ、
ロードステージ、実行ステージ、ストア待ちの状態にあ
ることを示している。丸で囲まれているものは、そのス
テージでバッファのDATAフィールドの値をオペコー
ドに応じてレジスタ群6中あるいはデータキャッシュ7
中に格納したことを示している。
FIG. 6 shows buffers A, B, C, and
The processing operation of the instruction stored in D is shown. In the figure, -F, -L, -E after the numerical value representing PC,
-S indicates that the instruction of the PC is in the fetch stage,
It shows that it is in the load stage, execution stage, and store wait state. Those enclosed in a circle indicate that the value of the DATA field of the buffer at that stage is in the register group 6 or the data cache 7 depending on the operation code.
It shows that it is stored inside.

【0018】この例では、バッファAに格納されている
SUB命令の演算の実行結果が確定した後でなければバ
ッファBに格納されているADD命令を実行することは
できない。
In this example, the ADD instruction stored in the buffer B can be executed only after the execution result of the operation of the SUB instruction stored in the buffer A is confirmed.

【0019】さて、第1ステージでは、バッファAに格
納されているS1_LOCKとS2_LOCKとがリセ
ットされているのでSUB命令が実行ステージになり、
レジスタ群6からソースレジスタ%1、%2に格納され
ているソースデータがそれぞれバス10,11(図4参
照)に読出される。そして、オペコードSUBに応じた
減算が、読み出されたソースデータを用いて第1の演算
処理装置4で行われる。その後、その演算結果がバス1
4を通してバッファAのDATAフィールドに格納され
る。バッファBに格納されているS1_LOCKが1に
セットされているのでADD命令は実行ステージにはな
らず、ロードステージのままである。バッファC、Dに
格納されているMOV命令は、バッファA、Bに格納さ
れている命令の実行結果がともにレジスタ群6あるいは
データキャッシュ7にストアされていないのでストア待
ちのままである。
In the first stage, since S1_LOCK and S2_LOCK stored in the buffer A are reset, the SUB instruction becomes the execution stage,
The source data stored in the source registers% 1 and% 2 is read from the register group 6 to the buses 10 and 11 (see FIG. 4), respectively. Then, the subtraction according to the operation code SUB is performed in the first arithmetic processing unit 4 by using the read source data. After that, the calculation result is the bus 1
4 to the DATA field of the buffer A. Since S1_LOCK stored in the buffer B is set to 1, the ADD instruction does not enter the execution stage but remains in the load stage. The MOV instruction stored in the buffers C and D remains in the store wait state because the execution results of the instructions stored in the buffers A and B are not stored in the register group 6 or the data cache 7.

【0020】第2ステージでは、バッファAのDATA
フィールドに演算結果が格納されているため、バッファ
AのD_LOCKとバッファBのS1_LOCKにセッ
トされている1をリセットする。そしてバッファAのD
ATAフィールドに格納された演算結果をバス17に読
出し、レジスタ群6中の%3に格納する。バッファBに
格納されているADD命令は、第2ステージが開始され
た時点ではS1_LOCKがセットされているので実行
ステージにならない。バッファC、Dに格納されている
命令はストア待ちのままである。
In the second stage, DATA of buffer A is
Since the calculation result is stored in the field, 1 set in D_LOCK of buffer A and S1_LOCK of buffer B is reset. And D in buffer A
The calculation result stored in the ATA field is read out to the bus 17 and stored in% 3 in the register group 6. The ADD instruction stored in the buffer B does not enter the execution stage because S1_LOCK is set when the second stage is started. The instructions stored in the buffers C and D remain in the store wait state.

【0021】第3ステージでは、バッファAが空になっ
ているのでADD命令(PC=110)を命令キャッシ
ュ1から読み出す。バッファBのS1_LOCKとS2
_LOCKとがリセットされているのでADD命令(P
C=104)が実行ステージになり、レジスタ群6の中
からソースレジスタ%3、%2に格納されているソース
データがそれぞれバス10,11に読出される。そし
て、オペコードADDに応じた加算が、読み出されたソ
ースデータを用いて第1の演算処理装置4で行われる。
その後、その演算結果がバス14を通してバッファBの
DATAフィールドに格納される。バッファC、Dに格
納されている命令はストア待ちのままである。
At the third stage, since the buffer A is empty, the ADD instruction (PC = 110) is read from the instruction cache 1. S1_LOCK and S2 of buffer B
Since _LOCK and _LOCK are reset, the ADD instruction (P
C = 104) becomes the execution stage, and the source data stored in the source registers% 3 and% 2 in the register group 6 are read to the buses 10 and 11, respectively. Then, addition according to the operation code ADD is performed by the first arithmetic processing unit 4 using the read source data.
After that, the calculation result is stored in the DATA field of the buffer B through the bus 14. The instructions stored in the buffers C and D remain in the store wait state.

【0022】第4ステージでは、命令キャッシュ1から
読み出されたADD命令(PC=110)をデコーダ2
でデコードし、第1及び第2のソースレジスタのレジス
タ番号%9、%10とディスティネーションレジスタの
レジスタ番号%11とをバッファAのS1、S2フィー
ルドにそれぞれ格納する。今の場合フロー依存関係はな
いので、バッファAのS1_LOCK、S2_LOCK
はセットされない。そして、バッファB、CのDATA
フィールドに格納された演算結果をそれぞれバス17,
18に読出し、レジスタ群6の%4、%6に格納する。
バッファDに格納されている命令はストア待ちのままで
ある。
In the fourth stage, the decoder 2 receives the ADD instruction (PC = 110) read from the instruction cache 1.
And the register numbers% 9 and% 10 of the first and second source registers and the register number% 11 of the destination register are stored in the S1 and S2 fields of the buffer A, respectively. In this case, there is no flow dependency, so S1_LOCK and S2_LOCK of buffer A
Is not set. Then, DATA of buffers B and C
The calculation results stored in the field are transferred to the bus 17,
The data is read out to 18 and stored in% 4 and% 6 of the register group 6.
The instruction stored in the buffer D remains in the store wait state.

【0023】第5ステージでは、バッファAのS1_L
OCKとS2_LOCKとがリセットされているのでA
DD命令(PC=110)が実行ステージになり、レジ
スタ群6からソースレジスタ%9、%10に格納されて
いるソースデータがそれぞれバス10,11に読出され
る。そして、オペコードADDに応じた加算が、読み出
されたソースデータを用いて第1の演算処理装置4で行
われる。バッファB、Cが空になっているので、2つの
ADD命令(PC=114,118)を命令キャッシュ
1から読み出す。そして、バッファDのDATAフィー
ルドに格納された演算結果をバス17に読出し、レジス
タ群6の%8に格納する。
In the fifth stage, S1_L of buffer A
Since OCK and S2_LOCK are reset, A
The DD instruction (PC = 110) enters the execution stage, and the source data stored in the source registers% 9 and% 10 is read from the register group 6 to the buses 10 and 11, respectively. Then, addition according to the operation code ADD is performed by the first arithmetic processing unit 4 using the read source data. Since the buffers B and C are empty, two ADD instructions (PC = 114, 118) are read from the instruction cache 1. Then, the calculation result stored in the DATA field of the buffer D is read to the bus 17 and stored in% 8 of the register group 6.

【0024】このように上述の場合には、バッファC、
Dに格納されているMOV命令は、既に先行実行済みで
ストア待ちであるが、バッファA、Bに格納されている
命令が未実行であるためにそのバッファA、Bに格納さ
れている命令が実行されて結果がレジスタ群6中あるい
はデータキャシュ7中にストアされるまでバッファ群3
に空ができないので、次のADD命令(PC=110)
は第5ステージになるまで実行されることがない。
Thus, in the above case, the buffer C,
The MOV instruction stored in D is already executed in advance and is waiting to be stored. However, since the instruction stored in the buffers A and B has not been executed yet, the instruction stored in the buffers A and B is Buffer group 3 until it is executed and the result is stored in register group 6 or data cache 7.
Since there is no empty space in the next ADD command (PC = 110)
Is not executed until the fifth stage.

【0025】本発明の目的は、命令のout−of−o
rder実行を実現するためのバッファ群が、互いにフ
ロー依存関係にありかつ未実行あるいは実行中である複
数の先行命令と、既に先行実行済みであるにもかかわら
ず前記複数の先行命令の結果のストア待ちの状態にある
後行命令とで占有される事態を解消することにより、該
後行命令に続く他の命令の先行実行を可能にし、以て命
令の高速実行を実現することにある。
An object of the present invention is to out-of-o instructions.
A buffer group for realizing rder execution has a plurality of predecessor instructions that have a flow dependency relationship with each other and are not executed or being executed, and store results of the plurality of predecessor instructions although they have been predecessor executed. By eliminating the situation of being occupied by a subsequent instruction in a waiting state, another instruction following the subsequent instruction can be executed in advance, thereby realizing high-speed execution of the instruction.

【0026】[0026]

【課題を解決するための手段】上記目的を達成するため
に本発明は、命令の制御情報とデータ情報とを格納する
フィールドを各々有する第1のバッファ群と第2のバッ
ファ群とを設け、第1のバッファ群の実行済みの処理結
果を第2のバッファ群に待避することにより、第1のバ
ッファ群中に空をつくり、引き続く命令を命令キャッシ
ュから第1のバッファ群中に格納し該命令を処理するこ
ととしたものである。
To achieve the above object, the present invention provides a first buffer group and a second buffer group each having a field for storing control information and data information of an instruction, By saving the executed processing result of the first buffer group to the second buffer group, an empty space is created in the first buffer group, and subsequent instructions are stored in the first buffer group from the instruction cache. It is intended to process instructions.

【0027】具体的に本発明が講じた解決手段は、複数
の命令を供給する命令キャッシュと、データキャッシュ
と、複数の演算処理装置と、ソースレジスタ及びディス
ティネーションレジスタとして機能し得る多数のレジス
タを有するレジスタ群と、命令キャッシュから供給され
る複数の命令をデコードするデコーダと、デコーダでデ
コードされた命令の制御情報とデータ情報とを格納する
フィールドを各々有する第1及び第2のバッファ群とを
備え、かつ第1のバッファ群に格納された命令のうち実
行可能な命令から先行実行を行い、第1のバッファ群あ
るいは第2のバッファ群に格納された命令の処理結果を
レジスタ群あるいはデータキャッシュに格納する順はオ
ブジェクトコード上の命令出現順序に忠実である情報処
理装置において、第1のバッファ群の実行済みの処理結
果を含むエントリーが第2のバッファ群に待避されるこ
ととしたものである。
Specifically, the solving means taken by the present invention comprises an instruction cache for supplying a plurality of instructions, a data cache, a plurality of arithmetic processing units, and a large number of registers capable of functioning as a source register and a destination register. A register group having the same, a decoder for decoding a plurality of instructions supplied from the instruction cache, and first and second buffer groups each having a field for storing control information and data information of the instruction decoded by the decoder. A pre-execution is carried out from an executable instruction of the instructions provided and stored in the first buffer group, and the processing result of the instruction stored in the first buffer group or the second buffer group is used as a register group or a data cache. In the information processing device, the order of storing in Entries containing the first buffer group of executed as the result is obtained by the to be saved in the second buffer group.

【0028】[0028]

【作用】本発明によれば、第1のバッファ群の実行済み
の処理結果を第2のバッファ群に待避することにより第
1のバッファ群中に空をつくることとしたので、互いに
フロー依存関係にありかつ未実行あるいは実行中である
複数の先行命令と、既に先行実行済みであるにもかかわ
らず前記複数の先行命令の結果のストア待ちの状態にあ
る後行命令とで第1のバッファ群が占有される事態が解
消される。これにより、該後行命令に続く他の命令を第
1のバッファ群中に格納でき、該他の命令の先行実行が
可能となり、命令の高速実行が実現できる。
According to the present invention, since the executed processing result of the first buffer group is saved in the second buffer group, an empty space is created in the first buffer group, so that the flow dependence relationships are established. A first buffer group including a plurality of predecessor instructions which are in execution and are being executed, and a succeeding instruction which is in a waiting state for storing the results of the plurality of predecessor instructions even though the predecessor instructions have already been executed. The situation in which the As a result, another instruction following the subsequent instruction can be stored in the first buffer group, the other instruction can be executed in advance, and high-speed execution of the instruction can be realized.

【0029】[0029]

【実施例】以下、本発明の一実施例に係わる情報処理装
置について、図面を参照しながら説明する。図1は本実
施例の情報処理装置のブロック構成を示しており、本実
施例では演算処理装置を2つ備えた情報処理装置を例と
して説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An information processing apparatus according to an embodiment of the present invention will be described below with reference to the drawings. FIG. 1 shows a block configuration of an information processing apparatus according to this embodiment. In this embodiment, an information processing apparatus including two arithmetic processing devices will be described as an example.

【0030】本実施例の情報処理装置は、命令キャッシ
ュ1と、デコーダ2と、第1のバッファ群3と、第1及
び第2の演算処理装置4,5と、レジスタ群6と、デー
タキャッシュ7と、第2のバッファ群20とを有してい
る。同図中、8〜19及び21〜24は、命令あるいは
データの転送用のバスである。
The information processing apparatus of the present embodiment comprises an instruction cache 1, a decoder 2, a first buffer group 3, first and second arithmetic processing units 4, 5, a register group 6, and a data cache. 7 and a second buffer group 20. In the figure, 8 to 19 and 21 to 24 are buses for transferring instructions or data.

【0031】この情報処理装置が取り扱う命令も、図4
の場合と同様に、命令のオペコード(第1フィール
ド)、第1及び第2のソースレジスタの番号(第2及び
第3のフィールド)、ディスティネーションレジスタの
番号(第4のフィールド)の4フィールドからなるもの
としている。
The commands handled by this information processing apparatus are also shown in FIG.
As in the case of, from the operation opcode (first field), the first and second source register numbers (second and third fields), and the destination register number (fourth field) Is supposed to be.

【0032】デコーダ2は、命令キャッシュ1から同時
に発行された2命令をデコードするものである。第1及
び第2の演算処理装置4,5は、アドレス計算、算術演
算及び論理演算を行うものである。また、レジスタ群6
は、第1及び第2の演算処理装置4,5のソースレジス
タ及びディスティネーションレジスタとして機能する多
数のレジスタを有するものである。
The decoder 2 decodes two instructions issued simultaneously from the instruction cache 1. The first and second arithmetic processing units 4 and 5 perform address calculation, arithmetic operation and logical operation. Also, register group 6
Has a large number of registers that function as source registers and destination registers of the first and second arithmetic processing units 4 and 5.

【0033】命令のout−of−order実行を実
現するための第1のバッファ群3は、4エントリーのバ
ッファA,B,C,Dからなり、かつ格納された命令間
でデータのフロー依存関係を調べる機能を有するもので
ある。第1のバッファ群3の各エントリーA,B,C,
Dは、図2中に示すように、それぞれ8つのフィールド
を有している。PCはプログラムカウンタの値を格納す
るためのフィールドである。S1、S2、Dには、各々
第1及び第2のソースレジスタとディスティネーション
レジスタのレジスタ番号を格納する。S1_LOCK、
S2_LOCK、D_LOCKの各フィールドは、フロ
ー依存関係の有無を示すものである。すなわち、あるエ
ントリーの命令の第1のソースレジスタが先行命令の実
行結果を用いている場合には、前者のS1_LOCKと
後者のD_LOCKとが共にセットされる。また、ある
エントリーの命令の第2のソースレジスタが先行命令の
実行結果を用いている場合には、前者のS2_LOCK
と後者のD_LOCKとが共にセットされる。DATA
のフィールドには命令の実行結果を格納する。
The first buffer group 3 for realizing out-of-order execution of instructions is composed of four-entry buffers A, B, C, and D, and the data flow dependence relationship between the stored instructions. It has a function of examining. Each entry A, B, C of the first buffer group 3
Each D has eight fields, as shown in FIG. PC is a field for storing the value of the program counter. Register numbers of the first and second source registers and the destination register are stored in S1, S2, and D, respectively. S1_LOCK,
Each field of S2_LOCK and D_LOCK indicates whether or not there is a flow dependency relationship. That is, when the first source register of the instruction of a certain entry uses the execution result of the preceding instruction, both the former S1_LOCK and the latter D_LOCK are set. If the second source register of the instruction of a certain entry uses the execution result of the preceding instruction, the former S2_LOCK
And the latter D_LOCK are set together. DATA
The execution result of the instruction is stored in the field of.

【0034】第2のバッファ群20は、第1のバッファ
群3中のストア待ちのエントリーを退避するために設け
られたものであって、図2中に示すように、第1のバッ
ファ群3の場合と同じフィールド構造を有する4エント
リーのバッファE,F,G,Hからなる。
The second buffer group 20 is provided to save the store-waiting entries in the first buffer group 3, and as shown in FIG. It consists of four-entry buffers E, F, G, and H having the same field structure as in the case of

【0035】以上のような構成を有する情報処理装置に
おいて、第1のバッファ群3中の各エントリーすなわち
バッファA、B、C、Dに次の命令が格納されている場
合の処理動作について説明する。すなわち、 とする。
In the information processing apparatus having the above configuration, the processing operation when the next instruction is stored in each entry in the first buffer group 3, that is, the buffers A, B, C and D will be described. .. That is, And

【0036】第1のバッファ群3の各フィールドの状態
を図2中に示す。さらに、バッファDに格納されている
命令の次に実行されるべき命令は、 110 ADD %9,%10,%11 114 ADD %9,%12,%13 118 ADD %9,%14,%15 11C ADD %9,%16,%17 であるとする。
The state of each field of the first buffer group 3 is shown in FIG. Further, the instruction to be executed next to the instruction stored in the buffer D is 110 ADD% 9,% 10,% 11 114 ADD% 9,% 12,% 13 118 ADD% 9,% 14,% 15 11C ADD% 9,% 16,% 17.

【0037】バッファAに格納されているSUB命令の
ディスティネーションレジスタは%3であり、バッファ
Bに格納されているADD命令のソースレジスタの一方
も%3なので、これら2つの命令間でデータがフロー依
存関係にある。そのため、図2に示すように、バッファ
AのD_LOCKとバッファBのS1_LOCKには1
がセットされている。また、バッファC、Dに格納され
ている命令は既に先行実行済みであり、DATAフィー
ルドにそれぞれ命令の実行結果「10」、「20」が格
納されているとする。この時点で第2のバッファ群20
の各エントリーE、F、G、Hは空である。
Since the destination register of the SUB instruction stored in the buffer A is% 3 and one of the source registers of the ADD instruction stored in the buffer B is% 3, data flows between these two instructions. It has a dependency relationship. Therefore, as shown in FIG. 2, D_LOCK of buffer A and S1_LOCK of buffer B are 1
Is set. Further, it is assumed that the instructions stored in the buffers C and D have already been executed in advance, and the execution results “10” and “20” of the instructions are stored in the DATA field, respectively. At this point, the second buffer group 20
Each entry E, F, G, H of is empty.

【0038】説明を簡単にするためにバッファAとバッ
ファB以外にデータ依存関係はなく、制御依存関係は考
慮に入れない。
For simplicity of explanation, there is no data dependency other than buffer A and buffer B, and the control dependency is not taken into consideration.

【0039】図3は各ステージでバッファA、B、C、
D、E、F、G、Hに格納されている命令の処理動作を
示している。同図において、PCを表わす数値の後の−
F、−L、−E、−Sは、それぞれそのPCの命令がフ
ェッチステージ、ロードステージ、実行ステージ、スト
ア待ちの状態にあることを示している。第1のバッファ
群3中の四角で囲まれているものは、そのステージで各
フィールドの値を第2のバッファ群20に待避したこと
を示している。丸で囲まれているものは、そのステージ
でバッファのDATAフィールドの値をオペコードに応
じてレジスタ群6中あるいはデータキャッシュ7中に格
納したことを示している。
FIG. 3 shows buffers A, B, C, and
The processing operations of the instructions stored in D, E, F, G, and H are shown. In the figure, after the numerical value representing PC
F, -L, -E, and -S indicate that the instruction of the PC is in the fetch stage, load stage, execution stage, and store wait state, respectively. What is surrounded by a square in the first buffer group 3 indicates that the value of each field is saved in the second buffer group 20 at that stage. What is circled indicates that the value of the DATA field of the buffer is stored in the register group 6 or the data cache 7 at that stage depending on the operation code.

【0040】この例では、バッファAに格納されている
SUB命令の演算の実行結果が確定した後でなければバ
ッファBに格納されているADD命令を実行することは
できない。
In this example, the ADD instruction stored in the buffer B can be executed only after the execution result of the operation of the SUB instruction stored in the buffer A is confirmed.

【0041】さて、第1ステージでは、バッファAに格
納されているS1_LOCKとS2_LOCKとがリセ
ットされているのでSUB命令が実行ステージになり、
レジスタ群6からソースレジスタ%1、%2に格納され
ているソースデータがそれぞれバス10,11(図1参
照)に読出される。そして、オペコードSUBに応じた
減算が、読み出されたソースデータを用いて第1の演算
処理装置4で行われる。その後、その演算結果がバス1
4を通してバッファAのDATAフィールドに格納され
る。バッファBに格納されているS1_LOCKが1に
セットされているのでADD命令は実行ステージにはな
らず、ロードステージのままである。バッファC、Dに
格納されているMOV命令はストア待ちなので、バス2
4を通して第1のバッファ群3中のバッファC、Dの各
フィールドの値を第2のバッファ群20中のバッファ
E、Fにそれぞれ待避する。
In the first stage, since S1_LOCK and S2_LOCK stored in the buffer A are reset, the SUB instruction becomes the execution stage,
Source data stored in the source registers% 1 and% 2 is read from the register group 6 to the buses 10 and 11 (see FIG. 1), respectively. Then, the subtraction according to the operation code SUB is performed in the first arithmetic processing unit 4 by using the read source data. After that, the calculation result is the bus 1
4 to the DATA field of the buffer A. Since S1_LOCK stored in the buffer B is set to 1, the ADD instruction does not enter the execution stage but remains in the load stage. The MOV instruction stored in buffers C and D is waiting for store, so bus 2
4, the values of the fields of the buffers C and D in the first buffer group 3 are saved in the buffers E and F in the second buffer group 20, respectively.

【0042】第2ステージでは、バッファAのDATA
フィールドに演算結果が格納されているため、バッファ
AのD_LOCKとバッファBのS1_LOCKにセッ
トされている1をリセットする。そして、バッファAの
DATAフィールドに格納された演算結果をバス17に
読出し、レジスタ群6の%3に格納する。バッファBに
格納されているADD命令は、第2ステージが開始され
た時点ではS1_LOCKが1にセットされているので
実行ステージにならない。バッファC、Dが空になって
いるので、2つのADD命令(PC=110,114)
を命令キャッシュ1から読み出す。バッファE、Fのエ
ントリーはストア待ちのままである。
In the second stage, DATA of buffer A is
Since the calculation result is stored in the field, 1 set in D_LOCK of buffer A and S1_LOCK of buffer B is reset. Then, the calculation result stored in the DATA field of the buffer A is read to the bus 17 and stored in% 3 of the register group 6. The ADD instruction stored in the buffer B does not enter the execution stage because S1_LOCK is set to 1 when the second stage is started. Buffers C and D are empty, so two ADD instructions (PC = 110, 114)
From the instruction cache 1. The entries in the buffers E and F are still waiting to be stored.

【0043】第3ステージでは、バッファAが空になっ
ているのでADD命令(PC=118)を命令キャッシ
ュ1から読み出す。バッファBのS1_LOCKとS2
_LOCKとがリセットされているのでADD命令(P
C=104)が実行ステージになり、レジスタ群6から
ソースレジスタ%3、%2に格納されているソースデー
タがそれぞれバス10,11に読出される。そして、オ
ペコードADDに応じた加算が、読み出されたソースデ
ータを用いて第1の演算処理装置4で行われる。その
後、その演算結果がバス14を通してバッファBのDA
TAフィールドに格納される。命令キャッシュ1から読
み出された2つのADD命令(PC=110,114)
をデコーダ2でデコードし、一方のADD命令(PC=
110)の第1及び第2のソースレジスタのレジスタ番
号%9、%10とディスティネーションレジスタのレジ
スタ番号%11とをバッファCのS1、S2フィールド
に、他方のADD命令(PC=114)の第1及び第2
のソースレジスタのレジスタ番号%9、%12とディス
ティネーションレジスタのレジスタ番号%13とをバッ
ファDのS1、S2フィールドに各々格納する。今の場
合フロー依存関係はないので、バッファC、DのS1_
LOCK、S2_LOCKはセットされない。バッファ
E、Fのエントリーはストア待ちのままである。
In the third stage, since the buffer A is empty, the ADD instruction (PC = 118) is read from the instruction cache 1. S1_LOCK and S2 of buffer B
Since _LOCK and _LOCK are reset, the ADD instruction (P
C = 104) becomes the execution stage, and the source data stored in the source registers% 3 and% 2 is read from the register group 6 to the buses 10 and 11, respectively. Then, addition according to the operation code ADD is performed by the first arithmetic processing unit 4 using the read source data. After that, the calculation result is transferred to the DA of the buffer B through the bus 14.
It is stored in the TA field. Two ADD instructions read from instruction cache 1 (PC = 110, 114)
Is decoded by the decoder 2 and one ADD instruction (PC =
110) the register numbers% 9 and% 10 of the first and second source registers and the register number% 11 of the destination register in the S1 and S2 fields of the buffer C, and the other ADD instruction (PC = 114) 1st and 2nd
The source register register numbers% 9 and% 12 and the destination register register number% 13 are stored in the S1 and S2 fields of the buffer D, respectively. In this case, there is no flow dependency, so S1_ of buffers C and D
LOCK and S2_LOCK are not set. The entries in the buffers E and F are still waiting to be stored.

【0044】第4ステージでは、命令キャッシュ1から
読み出されたADD命令(PC=118)をデコーダ2
でデコードし、第1及び第2のソースレジスタのレジス
タ番号%9、%14とディスティネーションレジスタの
レジスタ番号%15とをバッファAのS1、S2フィー
ルドにそれぞれ格納する。今の場合フロー依存関係はな
いので、バッファAのS1_LOCK、S2_LOCK
はセットされない。そして、バッファBのDATAフィ
ールドに格納された演算結果をバス17に読出し、レジ
スタ群6の%4に格納する。バッファC、Dに格納され
ている命令は、S1_LOCKとS2_LOCKとがリ
セットされているので2つのADD命令(PC=11
0,114)が実行ステージになり、レジスタ群6から
ソースレジスタ%9、%10に格納されているソースデ
ータがそれぞれバス10,11に、ソースレジスタ%
9、%12に格納されているソースデータがそれぞれバ
ス12,13に読出される。そして、オペコードADD
に応じた加算が、読み出されたソースデータを用いて第
1及び第2の演算処理装置4,5で各々行われる。その
後、その演算結果がバス14,15を通してバッファ
C、DのDATAフィールドに格納される。バッファ
E、Fのエントリーはストア待ちのままである。
In the fourth stage, the decoder 2 receives the ADD instruction (PC = 118) read from the instruction cache 1.
And the register numbers% 9 and% 14 of the first and second source registers and the register number% 15 of the destination register are stored in the S1 and S2 fields of the buffer A, respectively. In this case, there is no flow dependency, so S1_LOCK and S2_LOCK of buffer A
Is not set. Then, the calculation result stored in the DATA field of the buffer B is read out to the bus 17 and stored in% 4 of the register group 6. As for the instructions stored in the buffers C and D, since S1_LOCK and S2_LOCK are reset, two ADD instructions (PC = 11
(0, 114) is the execution stage, and the source data stored in the source registers% 9 and% 10 from the register group 6 are transferred to the buses 10 and 11, respectively.
The source data stored in 9 and% 12 are read to the buses 12 and 13, respectively. And the opcode ADD
Is added in each of the first and second arithmetic processing units 4 and 5 using the read source data. After that, the calculation result is stored in the DATA field of the buffers C and D through the buses 14 and 15. The entries in the buffers E and F are still waiting to be stored.

【0045】第5ステージでは、バッファAのS1_L
OCKとS2_LOCKとがリセットされているのでA
DD命令(PC=118)が実行ステージになり、レジ
スタ群6からソースレジスタ%9、%14に格納されて
いるソースデータがそれぞれバス10,11に読出され
る。そして、オペコードADDに応じた加算が、読み出
されたソースデータを用いて第1の演算処理装置4で行
われる。バッファBが空になっているので、ADD命令
(PC=11C)を命令キャッシュ1から読み出す。バ
ッファC、DのDATAフィールドに格納された演算結
果はストア待ちのままである。バッファE、FのDAT
Aフィールドに格納された演算結果をそれぞれバス2
1,22に読出し、レジスタ群6の%6、%8に格納す
る。
In the fifth stage, S1_L of buffer A
Since OCK and S2_LOCK are reset, A
The DD instruction (PC = 118) becomes the execution stage, and the source data stored in the source registers% 9 and% 14 are read from the register group 6 to the buses 10 and 11, respectively. Then, addition according to the operation code ADD is performed by the first arithmetic processing unit 4 using the read source data. Since the buffer B is empty, the ADD instruction (PC = 11C) is read from the instruction cache 1. The operation result stored in the DATA field of the buffers C and D remains in the store wait state. DAT of buffers E and F
The calculation results stored in the A field are stored in the bus 2 respectively.
The data is read out to 1 and 22 and stored in% 6 and% 8 of the register group 6.

【0046】このように本実施例では、バッファA、B
に格納されている命令が連続してフロー依存関係にあり
かつバッファC、Dに格納されている命令は既に先行実
行済みである場合、先行実行済みのバッファC、Dのエ
ントリーをバッファE、Fに待避することによって後続
する命令の先行実行が可能となり、命令の実行速度が向
上する。
As described above, in this embodiment, the buffers A and B are
If the instructions stored in C have a flow dependency relationship and the instructions stored in the buffers C and D have already been executed in advance, the entries of the executed buffers C and D are transferred to the buffers E and F. By saving the instruction, the subsequent instruction can be executed in advance, and the instruction execution speed is improved.

【0047】[0047]

【発明の効果】以上説明したように本発明の情報処理装
置では、各々命令の制御情報とデータ情報とを格納する
フィールドを有する第1のバッファ群と第2のバッファ
群とを備え、第1のバッファ群の実行済みのエントリー
を第2のバッファ群に待避することにより、第1のバッ
ファ群中の命令に引き続く命令を命令キャッシュから該
第1のバッファ群中に格納でき、該命令の先行実行が可
能となる。したがって、本発明によれば、命令の高速実
行が実現できる。
As described above, the information processing apparatus of the present invention is provided with the first buffer group and the second buffer group each having the field for storing the control information and the data information of the instruction. By saving the executed entry of the first buffer group to the second buffer group, the instruction subsequent to the instruction in the first buffer group can be stored in the first buffer group from the instruction cache, and the preceding instruction of the instruction can be stored. Execution becomes possible. Therefore, according to the present invention, high-speed execution of instructions can be realized.

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

【図1】本発明の一実施例に係わる情報処理装置のブロ
ック図である。
FIG. 1 is a block diagram of an information processing apparatus according to an embodiment of the present invention.

【図2】図1中の第1及び第2のバッファ群のフィール
ド構造を示す図である。
FIG. 2 is a diagram showing a field structure of first and second buffer groups in FIG.

【図3】図1の情報処理装置における処理の動作を示す
図である。
FIG. 3 is a diagram showing a processing operation in the information processing apparatus of FIG.

【図4】従来の情報処理装置のブロック図である。FIG. 4 is a block diagram of a conventional information processing device.

【図5】図4中のバッファ群のフィールド構造を示す図
である。
5 is a diagram showing a field structure of a buffer group in FIG.

【図6】図4の情報処理装置における処理の動作を示す
図である。
6 is a diagram showing a processing operation in the information processing apparatus of FIG. 4;

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

1 命令キャッシュ 2 デコーダ 3 第1のバッファ群 4 第1の演算処理装置 5 第2の演算処理装置 6 レジスタ群 7 データキャッシュ 20 第2のバッファ群 DESCRIPTION OF SYMBOLS 1 instruction cache 2 decoder 3 1st buffer group 4 1st arithmetic processing unit 5 2nd arithmetic processing unit 6 register group 7 data cache 20 2nd buffer group

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 複数の命令を供給する命令キャッシュ
と、 データキャッシュと、 複数の演算処理装置と、 ソースレジスタ及びディスティネーションレジスタとし
て機能し得る多数のレジスタを有するレジスタ群と、 前記命令キャッシュから供給される複数の命令をデコー
ドするデコーダと、 前記デコーダでデコードされた命令の制御情報とデータ
情報とを格納するフィールドを各々有する第1及び第2
のバッファ群とを備え、かつ前記第1のバッファ群に格
納された命令のうち実行可能な命令から先行実行を行
い、前記第1のバッファ群あるいは第2のバッファ群に
格納された命令の処理結果を前記レジスタ群あるいはデ
ータキャッシュに格納する順はオブジェクトコード上の
命令出現順序に忠実である情報処理装置であって、 前記第1のバッファ群の実行済みの処理結果を含むエン
トリーは前記第2のバッファ群に待避されることを特徴
とする情報処理装置。
1. An instruction cache that supplies a plurality of instructions, a data cache, a plurality of arithmetic processing units, a register group having a large number of registers that can function as a source register and a destination register, and a supply from the instruction cache. And second decoders each having a field for storing control information and data information of the instruction decoded by the decoder.
Of the instructions stored in the first buffer group, the preceding execution is performed from the executable instruction, and the instructions stored in the first buffer group or the second buffer group are processed. The order in which the result is stored in the register group or the data cache is an information processing apparatus that is faithful to the order in which instructions appear in the object code, and the entry including the executed processing result of the first buffer group is the second An information processing device characterized by being saved in a buffer group of.
JP9651792A 1992-04-16 1992-04-16 Information processor Withdrawn JPH05298092A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9651792A JPH05298092A (en) 1992-04-16 1992-04-16 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9651792A JPH05298092A (en) 1992-04-16 1992-04-16 Information processor

Publications (1)

Publication Number Publication Date
JPH05298092A true JPH05298092A (en) 1993-11-12

Family

ID=14167337

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9651792A Withdrawn JPH05298092A (en) 1992-04-16 1992-04-16 Information processor

Country Status (1)

Country Link
JP (1) JPH05298092A (en)

Similar Documents

Publication Publication Date Title
JP3547482B2 (en) Information processing equipment
US5150470A (en) Data processing system with instruction queue having tags indicating outstanding data status
US7793079B2 (en) Method and system for expanding a conditional instruction into a unconditional instruction and a select instruction
US6269440B1 (en) Accelerating vector processing using plural sequencers to process multiple loop iterations simultaneously
US20080276072A1 (en) System and Method for using a Local Condition Code Register for Accelerating Conditional Instruction Execution in a Pipeline Processor
JP2004171573A (en) Coprocessor extension architecture built by using novel splint-instruction transaction model
CN110659115A (en) Multi-threaded processor core with hardware assisted task scheduling
US6862676B1 (en) Superscalar processor having content addressable memory structures for determining dependencies
US5274777A (en) Digital data processor executing a conditional instruction within a single machine cycle
US6957323B2 (en) Operand file using pointers and reference counters and a method of use
KR100864890B1 (en) Locking source registers in a data processing apparatus
JPH0673105B2 (en) Instruction pipeline type microprocessor
US6988121B1 (en) Efficient implementation of multiprecision arithmetic
US5784606A (en) Method and system in a superscalar data processing system for the efficient handling of exceptions
JPH05298092A (en) Information processor
US7107478B2 (en) Data processing system having a Cartesian Controller
JPH08263289A (en) Pipeline computer for plural instruction flows
US20040111568A1 (en) Distributed result system for high-performance wide-issue superscalar processor
JP3473506B2 (en) Pipeline processing equipment
JPS61123937A (en) Data drive type control system
JP3625586B2 (en) Processor instruction execution control system
JPH06332700A (en) Information processor
JP2000181714A (en) Instruction controller
Smith et al. Optimizing Instruction Execution in the PowerPC™ 603e Superscalar Microprocessor
JPH0279122A (en) Floating point arithmetic mechanism

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990706