JP2685664B2 - Information processing device - Google Patents

Information processing device

Info

Publication number
JP2685664B2
JP2685664B2 JP3173746A JP17374691A JP2685664B2 JP 2685664 B2 JP2685664 B2 JP 2685664B2 JP 3173746 A JP3173746 A JP 3173746A JP 17374691 A JP17374691 A JP 17374691A JP 2685664 B2 JP2685664 B2 JP 2685664B2
Authority
JP
Japan
Prior art keywords
instruction
execution
register
instructions
decoder
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
JP3173746A
Other languages
Japanese (ja)
Other versions
JPH0540628A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3173746A priority Critical patent/JP2685664B2/en
Publication of JPH0540628A publication Critical patent/JPH0540628A/en
Application granted granted Critical
Publication of JP2685664B2 publication Critical patent/JP2685664B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、複数の命令を同時に実
行する情報処理装置のプロセッサに関し、特に、複数の
命令を実行するプロセッサにおいて分岐命令等により、
命令のプリフェッチが追いつかない場合、命令の実行開
始の遅れを最小にするための情報処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a processor of an information processing apparatus that executes a plurality of instructions at the same time.
The present invention relates to an information processing device for minimizing a delay in starting execution of instructions when instruction prefetch cannot catch up .

【0002】[0002]

【従来の技術】近年、コンピュータシステムの命令実行
速度を上げるために、複数の命令を複数の命令実行部に
おいて同時に実行するプロセッサがある。従来の複数命
令を同時実行するプロセッサにおいては、ハードウェア
の量を削減するため、複数の命令実行部の各々に全く同
じ機能を持たせるのでは無く、各々を特定の命令専用の
命令実行部として構成するのが一般的である。
2. Description of the Related Art In recent years, in order to increase the instruction execution speed of a computer system, there is a processor which executes a plurality of instructions simultaneously in a plurality of instruction execution units. In a conventional processor that simultaneously executes multiple instructions, in order to reduce the amount of hardware, each of the multiple instruction execution units does not have exactly the same function, but each is used as an instruction execution unit dedicated to a specific instruction. It is generally configured.

【0003】また、記憶装置からの命令の取り出し(フ
ェッチ)速度はプロセッサの命令の実行速度に比して遅
いので、命令の実行に先立って、命令の実行とは独立し
て命令フェッチを行う、いわゆるプリフェッチ(先行フ
ェッチ)も、プロセッサの命令実行の高速化の方法とし
て従来一般的に用いられている。
Further, since the speed of fetching (fetching) instructions from the storage device is slower than the speed of execution of instructions by the processor, prior to the execution of instructions, instruction fetch is performed independently of the execution of instructions. So-called prefetch (prefetch) is also commonly used as a method for speeding up processor instruction execution.

【0004】図3は、従来の複数命令同時実行方式の構
成を示す。図3において、1は記憶装置であり、バス
1′等によりCPU2と接続されており、CPU2で実
行する命令列を格納する主記憶または高速バッファ記憶
装置である。
FIG. 3 shows the configuration of a conventional multiple instruction simultaneous execution system. In FIG. 3, reference numeral 1 is a storage device, which is connected to the CPU 2 by a bus 1'or the like, and is a main memory or a high-speed buffer storage device for storing an instruction sequence executed by the CPU 2.

【0005】CPU2は、記憶装置1から命令列を先行
フェッチして格納する命令レジスタ3、命令レジスタ3
からの命令をデコードする命令デコーダ4、命令デコー
ダのデコード結果に従ってそれぞれ該当する命令を実行
する複数命令実行部5を有する。
The CPU 2 has an instruction register 3 and an instruction register 3 for prefetching and storing an instruction sequence from the storage device 1.
It has an instruction decoder 4 for decoding the instructions from the instruction decoder and a multiple instruction execution unit 5 for executing the corresponding instructions according to the decoding result of the instruction decoder.

【0006】記憶装置1から取り出された命令列の各命
令は、命令の種類を示すコードと、オペランドとを有す
る。命令デコーダ4は、コードによって命令を判別し、
どの命令が同時実行可能で、どの命令実行部に命令を実
行させるかを決定する。複数命令実行部5は、命令コー
ドに対応する命令実行部で各命令を実行する。
Each instruction of the instruction string fetched from the storage device 1 has a code indicating the type of the instruction and an operand. The instruction decoder 4 discriminates the instruction by the code,
It determines which instructions can be executed simultaneously and which instruction executor will execute the instructions. The multiple instruction execution unit 5 executes each instruction by the instruction execution unit corresponding to the instruction code.

【0007】[0007]

【発明が解決しようとする課題】上述のように、一般的
に記憶装置1からの命令フェッチは、プロセッサ2の動
作スピードに比べて時間がかかる。従って、命令列の先
行フェッチが命令の実行に先立って充分行われ、命令の
デコードが命令の実行に先立って終了している場合に
は、プロセッサの性能の低下はないが、分岐命令の実行
等により命令の先行フェッチが命令の実行に追いつかな
い場合には、命令をフェッチし、その命令をデコードす
るまで命令の実行を開始出来ないのでプロセッサの性能
が低下するという問題があった。
As described above, in general, fetching an instruction from the storage device 1 takes more time than the operating speed of the processor 2. Therefore, when the preceding fetch of the instruction sequence is sufficiently performed before the execution of the instruction and the decoding of the instruction is completed before the execution of the instruction, the performance of the processor does not decrease, but the execution of the branch instruction, etc. Therefore, if the preceding fetch of the instruction cannot catch up with the execution of the instruction, the execution of the instruction cannot be started until the instruction is fetched and the instruction is decoded, so that there is a problem that the performance of the processor deteriorates.

【0008】また、記憶装置1から送られてきた命令デ
コーダを直接デコードして複数命令実行部5の各実行部
に分配すると、プロセッサ2の動作周波数を低下させて
しまうという問題があった。本発明は、命令の先行フェ
ッチが命令の実行に追いつかない場合にも、プロセッサ
の性能低下の少ない情報処理装置を提供することを目的
とする。
Further, if the instruction decoder sent from the storage device 1 is directly decoded and distributed to the execution units of the plural instruction execution unit 5, there is a problem that the operating frequency of the processor 2 is lowered. SUMMARY OF THE INVENTION It is an object of the present invention to provide an information processing device in which the performance of the processor is less degraded even when the prefetch of the instruction cannot catch up with the execution of the instruction.

【0009】[0009]

【課題を解決するための手段】本発明による情報処理装
置は、記憶装置から先行フェッチされた命令列を格納す
る命令レジスタと、前記命令レジスタに格納される命令
をデコーダし、それぞれ同時に別の命令を実行する複数
の命令実行部と、前記命令レジスタに格納される命令
を、命令に対応する前記命令実行部に分配する命令デコ
ーダと、前記命令レジスタ内の有効な命令データの有無
を検出する手段と、前記命令レジスタに有効な命令デー
タが格納されている場合には、前記命令デコーダの出力
を前記複数の命令実行部に分配し、前記命令レジスタに
有効な命令データが無い場合には、前記記憶装置から1
つの同じ命令を前記複数の命令実行部に同時に分配する
分配切替え手段と、前記複数の命令実行部にそれぞれ分
配された命令が実行可能か判定し、各命令実行部の命令
の実行を制御する手段とを備えて構成される。
Information processing apparatus according to the present invention
Location includes an instruction register for storing the instruction sequence preceded fetched from the storage device and stored in the instruction register instruction
A plurality of instruction execution units for decoding different instructions and executing different instructions at the same time, and instructions stored in the instruction register
An instruction decoder that distributes to the instruction execution unit corresponding to the instruction, a unit that detects the presence or absence of valid instruction data in the instruction register, and a case where valid instruction data is stored in the instruction register. , The output of the instruction decoder is distributed to the plurality of instruction execution units, and if there is no valid instruction data in the instruction register, 1 is output from the storage device.
Distribution switching means for simultaneously distributing two identical instructions to the plurality of instruction execution sections, and means for determining whether the instructions respectively distributed to the plurality of instruction execution sections are executable and controlling the execution of the instructions of each instruction execution section And is configured.

【0010】[0010]

【作用】上記構成により、命令レジスタ内に有効な命令
データが存在することが検出手段によって検出された場
合には、分配切換え手段は、命令デコーダの出力を命令
実行部へ出力する。命令デコーダは、命令レジスタ内の
命令列を順次デコードし、各命令をそれを実行する命令
実行部へ分配する。
With the above structure, when the detecting means detects that valid instruction data exists in the instruction register, the distribution switching means outputs the output of the instruction decoder to the instruction executing section. The instruction decoder sequentially decodes the instruction sequence in the instruction register and distributes each instruction to the instruction execution unit that executes it.

【0011】命令レジスタ内に有効な命令データが無い
場合には、分配切換え手段は、記憶装置と命令実行部を
直接接続し、1つの同じ命令が同時に複数の命令実行部
に分配されるようにする。制御手段は、この命令が各命
令実行部で実行可能な命令か否かを判断し、実行可能な
らば実行させ、不可能ならば抑止する。
When there is no valid instruction data in the instruction register, the distribution switching means connects the storage device and the instruction execution section directly so that one same instruction is simultaneously distributed to a plurality of instruction execution sections. To do. The control means determines whether or not this instruction is an instruction that can be executed by each instruction execution unit, executes it if it is executable, and suppresses it if it is impossible.

【0012】従って、命令レジスタに有効なデータが有
るときは普通に命令デコーダによって各命令実行部に対
して命令データが分配され、命令レジスタが空のとき
は、記憶装置から各命令実行部へ1つの同じ命令が直接
分配される。制御手段での判断は、命令デコーダに比し
て極めて高速であるから、少くとも1命令分の実行時間
の遅延が防止される。
Therefore, when there is valid data in the instruction register, the instruction decoder normally distributes the instruction data to each instruction execution section, and when the instruction register is empty, 1 is sent from the storage device to each instruction execution section. The same three instructions are distributed directly. Since the judgment by the control means is extremely fast as compared with the instruction decoder, the execution time delay of at least one instruction is prevented.

【0013】[0013]

【実施例】図1は、本発明の基本構成を示す。図1にお
いて、命令列を格納する記憶装置1はバス1′によって
CPU2と接続される。
FIG. 1 shows the basic structure of the present invention. In FIG. 1, a storage device 1 for storing an instruction sequence is connected to a CPU 2 by a bus 1 '.

【0014】CPU2内において、バス1′は命令レジ
スタ3の入力端子に接続されると共に、バス6を介し
て、後述のマルチプレクサ4−1〜4−nの各一方の入
力端子に接続される。
In the CPU 2, the bus 1'is connected to the input terminal of the instruction register 3 and also via the bus 6 to one input terminal of each of multiplexers 4-1 to 4-n described later.

【0015】命令レジスタ3は、記憶装置1から命令列
を先行フェッチし格納する。命令レジスタ3の出力は命
令デコーダ4に入力する。
The instruction register 3 prefetches an instruction sequence from the storage device 1 and stores it. The output of the instruction register 3 is input to the instruction decoder 4.

【0016】命令デコーダ4は、命令レジスタ3に格納
されている命令列の命令を順次デコードし、命令コード
に対応して設けられた出力端子から出力する。
The instruction decoder 4 sequentially decodes the instructions in the instruction sequence stored in the instruction register 3, and outputs the instructions from an output terminal provided corresponding to the instruction code.

【0017】命令デコーダの各出力端子は、それぞれ、
マルチプレクサ4−1〜4−nの各他方の入力端子に接
続される。マルチプレクサ4−1〜4−nの各々は、2
つの入力端子にそれぞれ入力する命令デコーダ4の出力
と、バス6を経由する命令データとの切換えを行う。
The output terminals of the instruction decoder are respectively
It is connected to the other input terminal of each of the multiplexers 4-1 to 4-n. Each of the multiplexers 4-1 to 4-n has 2
The output of the instruction decoder 4 input to each of the two input terminals and the instruction data via the bus 6 are switched.

【0018】マルチプレクサ4−i(i=1〜n)の出
力は、命令実行部5−iおよび命令実行制御部7−iに
入力する。命令実行部5−1〜5−nは、それぞれ分配
された命令を実行する。命令実行制御部7−1〜7−n
は、それぞれ、対応する命令実行部5−1〜5−nと接
続され、対応する命令実行部5−1〜5−nに分配され
た命令の実行を行うか否かを制御する。
The output of the multiplexer 4-i (i = 1 to n) is input to the instruction execution section 5-i and the instruction execution control section 7-i. The instruction execution units 5-1 to 5-n execute the distributed instructions. Instruction execution control section 7-1 to 7-n
Are respectively connected to the corresponding instruction executing units 5-1 to 5-n and control whether or not to execute the instructions distributed to the corresponding instruction executing units 5-1 to 5-n.

【0019】以下、図1の回路の動作について説明す
る。命令レジスタ3に有効な命令が入っている場合、命
令デコーダ4により、各命令実行部5−1〜5−nに複
数の命令列が分配され、命令実行部5−1〜5−nは、
同時に複数の命令を実行する。
The operation of the circuit shown in FIG. 1 will be described below. When the instruction register 3 contains a valid instruction, the instruction decoder 4 distributes a plurality of instruction sequences to the instruction execution units 5-1 to 5-n, and the instruction execution units 5-1 to 5-n
Execute multiple instructions at the same time.

【0020】命令レジスタ3に有効な命令データが無い
場合には、記憶装置1からの命令データがそのままバス
6およびマルチプレクサ4−1〜4−nを経由して各命
令実行部5−1〜5−nおよび命令実行制御部7−1〜
7−nへ送出される。
When there is no valid instruction data in the instruction register 3, the instruction data from the storage device 1 is directly passed through the bus 6 and the multiplexers 4-1 to 4-n and the instruction execution units 5-1 to 5-1. -N and instruction execution control unit 7-1.
7-n.

【0021】命令実行制御部7−i(i=1〜n)は、
受け取った命令が、対応命令実行部5−iで実行可能か
否かを命令コードにより判断すると共に、命令実行部5
−iの実行を継続するか、抑止するかを判断し、実行可
能と判断したときには、命令実行部5−iに対して制御
信号を送ることによってその命令を実行させる。
The instruction execution control unit 7-i (i = 1 to n) is
The instruction code determines whether the received instruction can be executed by the corresponding instruction execution unit 5-i, and the instruction execution unit 5
If it is determined that the execution of -i is continued or suppressed, and if it is executable, the instruction execution unit 5-i is caused to execute the instruction by sending a control signal.

【0022】上述のように、命令列が命令レジスタ3に
保持されていない場合には、記憶装置1と命令実行部5
−1〜5−nはバス6およびマルチプレクサ4−1〜4
−nによって直接接続される。そこで記憶装置1から1
つの命令が命令デコーダ4でデコードされることなく全
ての命令実行部5−1〜5−nへ直接送られる。その命
令の実行の制御は各命令実行制御部7−1〜7−nによ
って行われる。従って、命令列が命令レジスタ3にない
場合においても、プロセッサ2の性能低下はない。
As described above, when the instruction sequence is not held in the instruction register 3, the storage device 1 and the instruction execution section 5
-1 to 5-n are a bus 6 and multiplexers 4-1 to 4
Directly connected by -n. Therefore, storage devices 1 to 1
One instruction is directly sent to all the instruction execution units 5-1 to 5-n without being decoded by the instruction decoder 4. The control of the execution of the instruction is performed by the instruction execution control units 7-1 to 7-n. Therefore, even if the instruction sequence is not in the instruction register 3, the performance of the processor 2 is not degraded.

【0023】図2は、本発明の実施例の構成を示す。図
2において、図1と同一の参照番号は同一のものを示
す。
FIG. 2 shows the configuration of an embodiment of the present invention. 2, the same reference numerals as those in FIG. 1 denote the same parts.

【0024】記憶装置1は、半導体記憶装置であり、C
PU2とバス1′によって接続される。バス1′は、先
行フェッチした命令列を保持するFIFOの命令レジス
タ3と接続されると共に、マルチプレクサ4−1および
4−2の各一方の入力端子と接続される。
The memory device 1 is a semiconductor memory device, and C
It is connected to PU2 by a bus 1 '. The bus 1'is connected to the instruction register 3 of the FIFO that holds the prefetched instruction string, and is also connected to one input terminal of each of the multiplexers 4-1 and 4-2.

【0025】命令レジスタ3は命令を順次命令デコーダ
4へ出力する。命令デコーダ4は、命令レジスタ3から
出力される命令をデコードし、同時に実行出来る命令列
を検出し、命令実行部5−1および5−2に1命令ずつ
分配する。命令デコーダ4の出力端子は、マルチプレク
サ4−1および4−2の各他方の入力端子と接続され
る。
The instruction register 3 sequentially outputs instructions to the instruction decoder 4. The instruction decoder 4 decodes the instruction output from the instruction register 3, detects an instruction string that can be executed at the same time, and distributes the instructions to the instruction executing units 5-1 and 5-2 one by one. The output terminal of the instruction decoder 4 is connected to the other input terminal of each of the multiplexers 4-1 and 4-2.

【0026】マルチプレクサ4−1および4−2は命令
レジスタ3内の命令データの全てが無効(空)のとき記
憶装置1からの1命令分のデータを全命令実行部5−1
および5−2へ送出し、命令レジスタ3に有効な命令デ
ータがある場合には、命令デコーダ4の出力をそのまま
各命令実行部5−1および5−2へ送出する。
When all the instruction data in the instruction register 3 are invalid (empty), the multiplexers 4-1 and 4-2 receive the data for one instruction from the storage device 1 as a whole instruction execution section 5-1.
And 5-2, and when there is valid instruction data in the instruction register 3, the output of the instruction decoder 4 is sent as it is to each instruction execution unit 5-1 and 5-2.

【0027】マルチプレクサ4−1および4−2は、プ
リフェッチ制御部8から出力される選択信号SELによ
って制御される。プリフェッチ制御部8は、命令レジス
タ3の制御端子と接続され、命令レジスタ3内の命令列
の有無を監視する。
The multiplexers 4-1 and 4-2 are controlled by the selection signal SEL output from the prefetch control unit 8. The prefetch control unit 8 is connected to the control terminal of the instruction register 3 and monitors the presence or absence of an instruction sequence in the instruction register 3.

【0028】プリフェッチ制御部8は、命令レジスタ3
に空きが生じた場合に、命令列を補充するように制御す
ると共に、マルチプレクサ4−1および4−2に対する
SEL信号をオンにする。マルチプレクサ4−1および
4−2は、SEL信号がオンの時は、記憶装置1からバ
ス1′および6を通じて入力する命令を選択して出力す
る。
The prefetch control unit 8 includes an instruction register 3
When a vacancy occurs, the instruction sequence is controlled to be supplemented, and the SEL signal to the multiplexers 4-1 and 4-2 is turned on. When the SEL signal is on, the multiplexers 4-1 and 4-2 select and output the instruction input from the storage device 1 through the buses 1'and 6.

【0029】マルチプレクサ4−1の出力は、命令実行
部5−1および命令実行制御部7−1に入力する。命令
実行部5−1はメモリのリード/ライト命令を実行す
る。マルチプレクサ4−2の出力は、命令実行部5−2
および命令実行制御部7−2に入力する。
The output of the multiplexer 4-1 is input to the instruction execution section 5-1 and the instruction execution control section 7-1. The instruction execution unit 5-1 executes a memory read / write instruction. The output of the multiplexer 4-2 is the instruction execution unit 5-2.
And the instruction execution control unit 7-2.

【0030】命令実行部5−2はリード/ライト命令以
外の命令を実行する。命令実行制御部7−1は、命令実
行部5−1の命令実行をレジスタセット信号RS1によ
って制御する。命令実行制御部7−2は、命令実行部5
−2の命令実行をレジスタセット信号RS2によって制
御する。
The instruction execution section 5-2 executes instructions other than read / write instructions. The instruction execution control unit 7-1 controls the instruction execution of the instruction execution unit 5-1 by the register set signal RS1. The instruction execution control unit 7-2 includes the instruction execution unit 5
-2 instruction execution is controlled by the register set signal RS2.

【0031】以下、図2の回路の動作について説明す
る。命令レジスタ3内に有効な命令列が入っている時
は、プリフェッチ制御部8は、SEL信号をオフにす
る。その結果、マルチプレクサ4−1および4−2は命
令デコーダ4の出力を選択する。
The operation of the circuit shown in FIG. 2 will be described below. When a valid instruction string is stored in the instruction register 3, the prefetch control unit 8 turns off the SEL signal. As a result, multiplexers 4-1 and 4-2 select the output of instruction decoder 4.

【0032】デコーダ4は、メモリアクセス命令とその
他の命令が連続している場合には、命令実行部5−1に
メモリアクセス命令を、命令実行部5−2にその他の命
令を送出する。その結果、例えばリード命令と演算命令
とが同時に実行される。
When the memory access instruction and the other instruction are continuous, the decoder 4 sends the memory access instruction to the instruction executing section 5-1 and the other instruction to the instruction executing section 5-2. As a result, for example, the read instruction and the operation instruction are simultaneously executed.

【0033】次に、命令レジスタ3内に有効な命令列が
ない時、プリフェッチ制御部8はSEL信号をオンにす
る。その結果、マルチプレクサ4−1および4−2は、
記憶装置1からバス1′および6を経由して入力する命
令を選択し、出力する。マルチプレクサ4−1の出力は
命令実行部5−1および命令実行制御部7−1に入力す
る。
Next, when there is no valid instruction string in the instruction register 3, the prefetch controller 8 turns on the SEL signal. As a result, multiplexers 4-1 and 4-2 are
An instruction input from the storage device 1 via the buses 1'and 6 is selected and output. The output of the multiplexer 4-1 is input to the instruction execution section 5-1 and the instruction execution control section 7-1.

【0034】命令実行制御部7−1は、マルチプレクサ
4−1より送出された命令コードをデコードし、命令実
行部5−1で実行可能かどうかを判定し、実行出来ない
命令であった場合(メモリアクセス命令以外の命令が送
出されてきた場合)には、命令実行部5−1の演算結果
の格納を抑止する。実行出来る命令であると判断した場
合には結果を格納させる。
The instruction execution control unit 7-1 decodes the instruction code sent from the multiplexer 4-1 and determines whether the instruction execution unit 5-1 can execute the instruction code. When an instruction other than the memory access instruction is sent out), the storage of the operation result of the instruction executing section 5-1 is suppressed. If it is determined that the instruction can be executed, the result is stored.

【0035】命令実行制御部7−2は、マルチプレクサ
4−2より送出された命令コードをデコードし、命令実
行部5−2で実行可能かどうかを判定し、実行出来ない
命令であった場合(メモリアクセス命令が送出されてき
た場合)には、命令実行部5−2の演算結果の格納を抑
止する。実行出来る命令であると判断した場合には結果
を格納させる。
The instruction execution control unit 7-2 decodes the instruction code sent from the multiplexer 4-2, determines whether the instruction execution unit 5-2 can execute the instruction code, and if the instruction cannot be executed ( When the memory access command is sent out), the storage of the operation result of the command execution unit 5-2 is suppressed. If it is determined that the instruction can be executed, the result is stored.

【0036】以上説明したように、本実施例によれば、
分岐命令の実行時のように、命令レジスタに全く命令デ
ータが保持されていない場合にも、CPU2は命令デコ
ードが終わるまで停止することなく、少なくとも1命令
を実行することができ、従ってCPU2の性能は低下し
ない。なお、上記実施例において、命令実行部を2つと
したがこれに限定されないことは勿論である。
As described above, according to this embodiment,
Even when no instruction data is held in the instruction register, such as when executing a branch instruction, the CPU 2 can execute at least one instruction without stopping until the instruction decoding is completed, and therefore the performance of the CPU 2 is improved. Does not fall. Although the number of instruction execution units is two in the above embodiment, it is not limited to this.

【0037】[0037]

【発明の効果】本発明によれば、記憶装置から命令列を
フェッチする命令レジスタに有効な命令データが存在し
ない場合、記憶装置から1つの命令を複数の命令実行部
へ直接送り、この命令を受け取った各命令実行部側でそ
の命令の実行の可否を判断して実行するようにしたの
で、命令の実行の遅れをなくすることができる。従っ
て、複数命令を並列実行するCPUの性能向上に寄与す
るところ大である。
According to the present invention, when there is no valid instruction data in the instruction register for fetching an instruction sequence from the storage device, one instruction is directly sent from the storage device to a plurality of instruction execution units, and this instruction is issued. Since each of the received instruction execution units determines whether or not the instruction can be executed and executes the instruction, it is possible to eliminate the delay in the execution of the instruction. Therefore, it greatly contributes to the performance improvement of the CPU that executes a plurality of instructions in parallel.

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

【図1】本発明の基本構成を示す図である。FIG. 1 is a diagram showing a basic configuration of the present invention.

【図2】本発明の実施例の構成を示す図である。FIG. 2 is a diagram showing a configuration of an embodiment of the present invention.

【図3】従来の技術を示す図である。FIG. 3 is a diagram showing a conventional technique.

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

1 記憶装置 1′ バス 2 CPU 3 命令レジスタ 4 命令デコーダ 4−1〜4−n マルチプレクサ 5−1〜5−n 命令実行部 6 バス 7−1〜7−n 命令実行制御部 8 プリフェッチ制御部 1 Storage Device 1'Bus 2 CPU 3 Instruction Register 4 Instruction Decoder 4-1 to 4-n Multiplexer 5-1 to 5-n Instruction Execution Unit 6 Bus 7-1 to 7-n Instruction Execution Control Unit 8 Prefetch Control Unit

───────────────────────────────────────────────────── フロントページの続き (72)発明者 渡部 徹 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 竹野 巧 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 丸山 拓己 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 加藤 慎哉 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 ▲ポーンシャイ・チョンスワンナパイサ ーン▼ 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 昭63−106046(JP,A) 特開 平1−292469(JP,A) 特開 昭63−201831(JP,A) 特開 平2−118833(JP,A) ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Toru Watanabe 1015 Kamiodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, Fujitsu Limited (72) Inventor Takumi Takeno 1015, Kamedotachu, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, Fujitsu Limited ( 72) Inventor Takumi Maruyama 1015 Kamiodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, within Fujitsu Limited (72) Inventor Shinya Kato, 1015, Kamedotachu, Nakahara-ku, Kawasaki City, Kanagawa Within Fujitsu Limited (72) Suvarnapaisan ▼ 1015 Kamiodanaka, Nakahara-ku, Kawasaki-shi, Kanagawa, Fujitsu Limited (56) References JP 63-106046 (JP, A) JP 1-292469 (JP, A) JP 63 -201831 (JP, A) JP-A-2-118833 (JP, A)

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 記憶装置から先行フェッチされた命令列
を格納する命令レジスタと、前記命令レジスタに格納される命令をデコーダし、 それ
ぞれ同時に別の命令を実行する複数の命令実行部と、前記命令レジスタに格納される命令を、 命令に対応する
前記命令実行部に分配する命令デコーダと、 前記命令レジスタ内の有効な命令データの有無を検出す
る手段と、 前記命令レジスタに有効な命令データが格納されている
場合には、前記命令デコーダの出力を前記複数の命令実
行部に分配し、前記命令レジスタに有効な命令データが
無い場合には、前記記憶装置から1つの同じ命令を前記
複数の命令実行部に同時に分配する分配切替え手段と、 前記複数の命令実行部にそれぞれ分配された命令が実行
可能か判定し、各命令実行部の命令の実行を制御する手
段とを備えることを特徴とする情報処理装置。
1. An instruction register for storing an instruction sequence prefetched from a storage device, a plurality of instruction execution units for decoding the instructions stored in the instruction register and executing different instructions at the same time , and the instruction. An instruction decoder that distributes an instruction stored in a register to the instruction execution unit corresponding to the instruction, a unit that detects the presence or absence of valid instruction data in the instruction register, and valid instruction data stored in the instruction register If there is no valid instruction data in the instruction register, the output of the instruction decoder is distributed to the plurality of instruction execution units. A distribution switching unit that distributes to the execution units at the same time, and determines whether the commands distributed to each of the plurality of instruction execution units are executable, and controls the execution of the instructions of each instruction execution unit. An information processing apparatus comprising: a control unit.
JP3173746A 1991-07-15 1991-07-15 Information processing device Expired - Fee Related JP2685664B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3173746A JP2685664B2 (en) 1991-07-15 1991-07-15 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3173746A JP2685664B2 (en) 1991-07-15 1991-07-15 Information processing device

Publications (2)

Publication Number Publication Date
JPH0540628A JPH0540628A (en) 1993-02-19
JP2685664B2 true JP2685664B2 (en) 1997-12-03

Family

ID=15966367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3173746A Expired - Fee Related JP2685664B2 (en) 1991-07-15 1991-07-15 Information processing device

Country Status (1)

Country Link
JP (1) JP2685664B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695305B2 (en) * 1986-10-22 1994-11-24 三菱電機株式会社 Data processing device
JPH01292469A (en) * 1988-05-19 1989-11-24 Fujitsu Ltd Data dispatch system

Also Published As

Publication number Publication date
JPH0540628A (en) 1993-02-19

Similar Documents

Publication Publication Date Title
US7260706B2 (en) Branch misprediction recovery using a side memory
JPS61107434A (en) Data processor
JPS61109146A (en) Advanced control system
US5717587A (en) Method and system for recording noneffective instructions within a data processing system
JP4585647B2 (en) Support for multiple outstanding requests to multiple targets in a pipelined memory system
JPH0816394A (en) Apparatus and method for prefetch for prefetching of instruction code from system memory
US6237086B1 (en) 1 Method to prevent pipeline stalls in superscalar stack based computing systems
JP2685664B2 (en) Information processing device
US6170050B1 (en) Length decoder for variable length data
JPH11232171A (en) Information processing system
EP0992889A1 (en) Interrupt processing during iterative instruction execution
JP4111645B2 (en) Memory bus access control method after cache miss
US5828861A (en) System and method for reducing the critical path in memory control unit and input/output control unit operations
JP3123946B2 (en) Microcomputer
JP3956652B2 (en) Processor system
JPH05250258A (en) Cache control system
JPH08286914A (en) Memory controller
JPH0342723A (en) Data processor
JP3039391B2 (en) Memory system
JP2000353146A (en) Input/output control device and method for prefetching data
JPS6247746A (en) Interruption control system
JP2586690B2 (en) Instruction prefetch device
JP2901573B2 (en) Super scalar information processing device
JP2583614B2 (en) Vector arithmetic unit
JPH08171491A (en) Method and apparatus for higher-speed prefetch of instruction on basis of dispatched control transfer instruction state

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970805

LAPS Cancellation because of no payment of annual fees