JPS59160239A - Information processing device - Google Patents

Information processing device

Info

Publication number
JPS59160239A
JPS59160239A JP3407383A JP3407383A JPS59160239A JP S59160239 A JPS59160239 A JP S59160239A JP 3407383 A JP3407383 A JP 3407383A JP 3407383 A JP3407383 A JP 3407383A JP S59160239 A JPS59160239 A JP S59160239A
Authority
JP
Japan
Prior art keywords
instruction
microinstruction
address
register
decoding
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.)
Granted
Application number
JP3407383A
Other languages
Japanese (ja)
Other versions
JPH0218732B2 (en
Inventor
Keiichi Yu
恵一 勇
Takashi Tsunehiro
隆司 常広
Junji Nakakoshi
中越 順二
Koichi Nakai
中井 幸一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP3407383A priority Critical patent/JPS59160239A/en
Publication of JPS59160239A publication Critical patent/JPS59160239A/en
Publication of JPH0218732B2 publication Critical patent/JPH0218732B2/ja
Granted legal-status Critical Current

Links

Abstract

PURPOSE:To process an arithmetic of a registered memory, which is continued (n) times, at a high speed by 2n machine cycle, by executing an address calculation of an operand describing part before decoding an operation code of a machine language instruction and branching it to a macro-instruction group. CONSTITUTION:When executing an instruction of a form 2, one instruction is executed by four machine cycles by executing a decoding D of an operation code and an address calculation A of an operation describing part, in parallel by the same machine cycle. Also, when executing a form 1 (branch instruction), the address calculation A of the operand describing part is executed before the decoding D, and a main storage device address of a branch destination is calculated first. In this way, an instruction of the branch destination is read out by the following machine cycle, and one machine cycle is shortened comparing with the case when there is no branching.

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、マイクロプログラム制御の情報処理装置に関
し、特に先行制御によりマイクロ命令ステップ数を短縮
した情報処理装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Application of the Invention] The present invention relates to a microprogram-controlled information processing device, and more particularly to an information processing device in which the number of microinstruction steps is reduced by advance control.

〔従来技術〕[Prior art]

マイクロプログラム制御の情報処理装置は、処理装置の
基本動作を指定するマイクロ命令セットによりプログラ
ミングを行い、これを制御記憶装置に格給し、これから
逐次マイクロ命令を読み出し実行することにより、処理
装置の動作を実現する。処理装置の機械語命令を実現す
るためのマイクロプログラム制御部は、大きく3つの部
分より成る。すなわち、次の通りである。
A microprogram-controlled information processing device is programmed with a microinstruction set that specifies the basic operations of the processing device, stores this in a control storage device, and sequentially reads and executes the microinstructions from this to control the operation of the processing device. Realize. A microprogram control unit for realizing machine language instructions of a processing device is mainly composed of three parts. That is, as follows.

(1)機械語命令を主記憶装置から読み出す。(1) Read machine language instructions from main memory.

(2)読み出した機械語命令を解読する。(2) Decipher the read machine language instructions.

(3)解読した機械語命令を実行する。(3) Execute the decoded machine language instruction.

(2)では、機械語命令を解読し、各命令に対応したマ
イクロ命令実行ルーチンへ分岐する処理があリ、(3)
では、各命令に共通なオペランド記述部のアドレス計算
実行後、オペレーション部の実行を行う処理がある。
(2) involves the process of decoding machine language instructions and branching to the microinstruction execution routine corresponding to each instruction; (3)
In this example, there is a process of executing the operation section after calculating the address of the operand description section common to each instruction.

機械語命令は、その用途、目的により、効率のよい処理
を行う命令を用意するが、ここでは、第1図に示す様に
、2つの形式の例を示す。
Machine language instructions are prepared to perform efficient processing depending on their use and purpose, and here, as shown in FIG. 1, examples of two formats are shown.

形式lと形式2はともに、オペレーションコード部によ
り、オペランドの属性が異なり、オペランドはレジスタ
の内容、レジスタとディスプレイースメントの演算した
内容あるいは主記憶装置の内容に分れる。形式1け、第
1オペランドが暗黙のうちに特定のレジスタの内容、あ
るいは、該レジスタで示される主記憶装置の内容に決め
られているところが形式2と異なる。この例は、第1オ
ペランドと第2オペランドの演算を行う命令であるが、
形式1は、分岐命令とし、形式2はオペランド記述部2
が、レジスタとディスプレイスメントの演算した結果を
アドレスとする主記憶装置の内容を指し、これを第2オ
ペランドとし、オペランド記述部lが、レジスタの内容
を指し、これを第1オペランドとする例である。
In both Format I and Format 2, the attributes of the operands differ depending on the operation code part, and the operands are divided into register contents, contents calculated by registers and displacement, or contents of the main storage device. Format 1 differs from Format 2 in that the first operand is implicitly determined to be the contents of a specific register or the contents of the main memory indicated by the register. This example is an instruction that performs an operation on the first and second operands,
Format 1 is a branch instruction, and format 2 is an operand description section 2.
In this example, the operand description part l points to the contents of the register and this is the first operand. be.

形式2の機械語命令を1個の演算器で実現するマイクロ
命令の動作フローのタイムチャートを、第2図、第3図
に示す。第2図は、機械語命令の処理を、機械語命令の
読み出しIF、読み出した機械語命令の解読D1オペラ
ンド記述部2に示す内容のアドレス計算A1第2オペラ
ンドの読み出しOF、第1オペランドと第2オペランド
の演算Eを繰返し行う動作フローである。この動作フロ
ーでは、アドレス計算A1オペランド間の演算E以外で
は、演算器は動作していない。
FIGS. 2 and 3 show time charts of the operation flow of microinstructions that implement Format 2 machine language instructions in one arithmetic unit. FIG. 2 shows the processing of a machine language instruction. This is an operation flow for repeatedly performing a two-operand operation E. In this operation flow, the arithmetic unit does not operate except for the operation E between the address calculation A1 operands.

これを改善して高速処理にしたのが第3図である。Fig. 3 shows an improved version of this method that enables high-speed processing.

第3図は、5つの機械語命令を2マシンサイクルずらし
て、同時に処理を行うマイクロ命令の動作フローで、主
記憶装置の読出し、演算器の使用を効率よく行うことが
できる。これを実現するためには、ハードウェアは機械
語命令を格納するインストラクションレジスタが少くと
も3個必要であり、また機械語命令解読後に油に読み出
した機械語のオペランド間の演算をする為の演算記憶制
御回路が必要である。
FIG. 3 shows the operation flow of microinstructions in which five machine language instructions are processed simultaneously with a two-machine cycle shift, thereby making it possible to efficiently read out the main memory and use the arithmetic unit. In order to achieve this, the hardware needs at least three instruction registers to store machine language instructions, and an operation register to perform operations between the machine language operands read out after decoding the machine language instructions. A storage control circuit is required.

第3図から明らかなように、3命令の処理時間が15マ
シンサイクルから10マシンサイクルに短縮される。第
3図に示した動作フローで動く情報処理装置が形式lの
分岐命令の場合には、第4図に示す動作フローで動作す
る。すなわち、2番目に読出した機械語命令が分岐命令
の場合には、3番目に読出した命令は実行してはならず
、分岐先の機械語命令から続行しなければならない。こ
の為、動作フローに乱れが生じ、演算の処理速度が低下
する。
As is clear from FIG. 3, the processing time for three instructions is reduced from 15 machine cycles to 10 machine cycles. If the information processing device that operates according to the operational flow shown in FIG. 3 uses a format I branch instruction, it operates according to the operational flow shown in FIG. 4. That is, if the second read machine language instruction is a branch instruction, the third read instruction must not be executed and the program must continue from the branch destination machine language instruction. This causes a disturbance in the operational flow and reduces the processing speed of calculations.

1個の演算器を最適に動作させた場合、形式2の機械語
命令を連続してn回実行すると、211マシンサイクル
で動作するはずである。しかし、従来の1個の演算器を
使用した情報処理装置は、第3図で示したように、形式
2の機械語命令を連続してn回実行すると、2 n +
 4マシンサイクルの時間を要し、情報処理装置を最適
に動作するには到らなかった。
When one arithmetic unit is operated optimally, if a Format 2 machine language instruction is executed n times in succession, the operation should take 211 machine cycles. However, as shown in FIG. 3, in a conventional information processing device using one arithmetic unit, when a Format 2 machine language instruction is executed n times in succession, 2 n +
It took 4 machine cycles, and the information processing device could not be operated optimally.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、このような従来の問題を解決し、1個
の演算器を最適に動作させて、処理効率を向上させるこ
とが可能な情報処理装置を提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide an information processing apparatus capable of solving such conventional problems and operating one arithmetic unit optimally to improve processing efficiency.

〔発明の概要〕[Summary of the invention]

本発明の情報処理装置は、先行制御を行うマイクロプロ
グラム制御の情報処理装置において、主記憶装置から読
み出された複数の命令を1つづつ選択する複数のセレク
タ、および該セレクタにより選択された1つの命令のオ
ペレーション・コード部のデコードと並行して、あるい
は上記デコードに先立ち、上記命令のオペランド記述部
のアドレス計算を実行させるための制御手段を設けるこ
とに特徴がある。
An information processing device of the present invention is a microprogram-controlled information processing device that performs advance control, and includes a plurality of selectors that select one by one a plurality of instructions read from a main storage device, and one instruction selected by the selector. The present invention is characterized in that a control means is provided for executing address calculation of the operand description section of the instruction in parallel with or prior to the decoding of the operation code section of the instruction.

また、前記デコードに先立って命令のオペランド記述部
のアドレス計算を実行した場合、演算器を使用しないマ
イクロ命令により、次に読み出された命令のオペランド
記述部のアドレス計算をすることを指定することに特徴
がある。
In addition, when the address calculation of the operand description part of the instruction is executed prior to the decoding, specifying that the address calculation of the operand description part of the next read instruction is to be performed by a microinstruction that does not use an arithmetic unit. There are characteristics.

〔発明の実施例〕[Embodiments of the invention]

以下、本発明の一実施例を説明する。 An embodiment of the present invention will be described below.

第5図は、前記形式2の機械語命令のマイクロ命令の動
作フローチャートであり、第6図は、このマイクロ命令
を実現する本発明の八−ドウエアの概略構成図である。
FIG. 5 is an operation flowchart of a microinstruction of the Format 2 machine language instruction, and FIG. 6 is a schematic diagram of the eight-doware of the present invention that implements this microinstruction.

第5図は、2命令を1マシンサイクルずらして同時に処
理を行う動作フローである。
FIG. 5 is an operational flow in which two instructions are processed simultaneously with a shift of one machine cycle.

本発明では、(1)前記形式2の命令を実行する際に、
オペレーション・コードのデコード0とオペランド記述
部のアドレス計算内を、同一マシン・サイクルで並行し
て行うことにより、1命令を4マシン・サイクルで実行
すること、および(11)前記形式l(つまり分岐命令
)を実行する際には、デコード0の前にオペランド記述
部のアドレス計算(5)を行ってしまい、分岐先の主記
憶装置アドレスを先に算出することにより、次のマシン
・サイクルで分岐先の命令を読み出し、分岐がない場合
より1マシン・サイクル短縮した時間で実行すること、
を可能にしている。
In the present invention, (1) when executing the Format 2 instruction,
By performing decode 0 of the operation code and address calculation of the operand description section in parallel in the same machine cycle, one instruction can be executed in four machine cycles, and (11) the above format l (that is, branch When executing an instruction), the address calculation (5) of the operand description section is performed before decoding 0, and by calculating the main memory address of the branch destination first, the branch is executed in the next machine cycle. Read the previous instruction and execute it in one machine cycle less time than if there were no branch,
is possible.

第6図において、1は主記憶装置、2.3はそれぞれ入
側とB側の演算用レジスタ、Φはメモリ・アドレス・レ
ジスタ、5はプログラム・カウンタ、6はメモリ・バッ
ファ・レジスタ、7,8はそれぞれ第1と第2のインス
トラクション・レジスタ、9はアドレス計算用セレクタ
、10は機械語命令解読用セレクタ、11はアドレス計
算用デコーダ、12は機械語命令解読用デコーダ、13
は演算器、14はマイクロプログラム加算回路、15は
マイクロ命令アドレス・セレクタ、16はマイクロ命令
アドレス・レジスタ、17は制御記憶装置、18はマイ
クロ命令レジスタ、19は演算制御信号用セレクタ、2
0は分岐命令選択デコーダである。
In FIG. 6, 1 is the main memory, 2 and 3 are input side and B side calculation registers, Φ is a memory address register, 5 is a program counter, 6 is a memory buffer register, 7, 8 are first and second instruction registers, 9 is a selector for address calculation, 10 is a selector for decoding machine language instructions, 11 is a decoder for address calculation, 12 is a decoder for decoding machine language instructions, 13
14 is an arithmetic unit, 14 is a microprogram adder circuit, 15 is a microinstruction address selector, 16 is a microinstruction address register, 17 is a control storage device, 18 is a microinstruction register, 19 is a selector for arithmetic control signals, 2
0 is a branch instruction selection decoder.

第6図においては、前記(1)に示したデコード◎とオ
ペランド記述部のアドレス計算内を並行して実行するた
めに、2つのインストラクション・レジスタ7.8に保
持された命令のうち、2番目に読み出された命令を選択
し、デコードしてオペランド記述部のアドレス計算の制
御を行う手段9.11.19を新たに設けるとともに、
制御記憶装置17から読み出されたマイクロ命令の中に
了ドレス計算先行制御指定フィールド0を設けてセレク
タ19を制御するようにしている。また、前記(n)に
示した分岐命令のときのステップ短縮のために、さらに
分岐命令選択デコーダ20を新たに設け、先に求めたオ
ペランド記述部のアドレス計算結果を、メモリ・アドレ
ス・レジスタ4にセットすることなく、プログラム・カ
ウンタ5にセットするように制御する。これにより、分
岐命令による処理速度の低下を防止し、通常の場合より
さらに1マシン・サイクル処理を短縮している。
In FIG. 6, the second instruction held in the two instruction registers 7 and 8 is used to execute the decoding ◎ shown in (1) above and the address calculation of the operand description section in parallel. In addition to newly providing means 9.11.19 for selecting and decoding an instruction read out to control the address calculation of the operand description section,
A completion address calculation advance control designation field 0 is provided in the microinstruction read from the control storage device 17 to control the selector 19. In addition, in order to shorten the steps for the branch instruction shown in (n) above, a branch instruction selection decoder 20 is newly provided, and the previously obtained address calculation result of the operand description part is sent to the memory address register 4. It is controlled so that the program counter 5 is set without setting it to the program counter 5. This prevents the processing speed from decreasing due to branch instructions, and further reduces the processing time by one machine cycle compared to the normal case.

#!6図の動作を詳述する。#! The operation shown in FIG. 6 will be explained in detail.

マイクロ命令が、機械語命令読み出しく命令1のIP)
を指定すると、プログラム・カウンタ5に対応した命令
lを主記憶装置lより読み出し、インストラクション・
レジスタ7にセットする。
When the microinstruction reads the machine language instruction (IP of instruction 1)
When specified, the instruction l corresponding to program counter 5 is read from the main memory l, and the instruction l is read out from the main memory l.
Set in register 7.

次に、マイクロ命令が、機械語命令読み出しく命令2の
IP)と、命令1の解読0と命令1のオペランド記述部
のアドレス計算内を指定すると、先行制御のため、イン
ストラクション・レジスタ8に主記憶装置1より読み出
した命令2をセットする。また、現在実行しようとする
命令がセットされているインストラクションレジスタ7
をセレクタ10により選択し、これに基づいて命令1の
マイクロ命令実行群の先頭番地へ分岐する為にマイクロ
命令アドレスを作成するデコーダ12で命令1のオペレ
ーション・コードをデコードし、その出力をマイクロ命
令アドレス・セレクタ15が選択して、マイクロ命令ア
ドレス・レジスタ16にセットする。16,17.18
はマイクロプルグラム制御部を構成するもので、マイク
ロ命令アドレス・レジスタ16の内容をアドレスとして
制御記憶装置17にアクセスし、そのアドレス・エリア
からマイクロ命令を読み出して、マイクロ命令レジスタ
18にセットする。マイクロ命令レジスタ18にセット
されたマイクロ命令には、特別の3つのフィールド(a
、b、O)が設けられ、1つは次のマイクロ命令を読み
出すためのアドレス指定を行うフィールド(a)、他の
1つは演算を実行するための制御信号を出力するフィー
ルド伽)、最後の1つは次の命令のアドレス計算先行制
御指定を行うフィールド0である。
Next, when the microinstruction specifies the machine language instruction read (IP of instruction 2), decode 0 of instruction 1, and address calculation of the operand description part of instruction 1, the main instruction register 8 is set for advance control. The instruction 2 read from the storage device 1 is set. Also, the instruction register 7 in which the instruction to be executed is currently set is set.
is selected by the selector 10, and based on this, a microinstruction address is created in order to branch to the start address of the microinstruction execution group of instruction 1.The decoder 12 decodes the operation code of instruction 1, and its output is processed as a microinstruction. The address selector 15 selects and sets the microinstruction address register 16. 16, 17.18
constitutes a microprogram control section, which accesses the control storage device 17 using the contents of the microinstruction address register 16 as an address, reads the microinstruction from the address area, and sets it in the microinstruction register 18. A microinstruction set in the microinstruction register 18 has three special fields (a
, b, O), one is a field (a) that specifies the address for reading the next microinstruction, the other is a field (a) that outputs a control signal for executing the operation, and the last One of them is field 0 which specifies advance control of address calculation for the next instruction.

マイクロ命令レジスタ18にマイクロ命令がセットされ
ると、これと同時に、命令1をセットしたインストラク
ション・レジスタ7をセレクタ9により選択して、演算
用レジスタと演算内容を指定するデコーダ11によりデ
コードし、オペランド記述部のアドレス計算の為の制御
信号を出力する。この時、マイクロ命令は、先行アドレ
ス計算指定をしく命令20A)、演算制御信号をセレク
タ19により、デコーダ11の出力に選択する。
When a microinstruction is set in the microinstruction register 18, at the same time, the instruction register 7 in which instruction 1 is set is selected by the selector 9, decoded by the decoder 11 that specifies the operation register and the operation content, and the operand is Outputs a control signal for calculating the address of the description section. At this time, the microinstruction specifies the preceding address calculation (instruction 20A), and the selector 19 selects the arithmetic control signal as the output of the decoder 11.

次に、マイクロ命令が命令1のオペランドの読み出しく
OF)と命令2のオペランド記述部のアドレス計算(8
)を指定すると、命令lのオペランドアドレスがセット
されているアドレスレジスタ4に対応した内容を主記憶
装置1より読み出し、メモリバッファレジスタ6にセッ
トする。また、命令2をセットしたインストラクション
レジスタ8をセレクタ9により選択し、前記のように、
命令2のオペランド記述部のアドレス計算(8)を行う
制御信号をセレクタ19より出力し、アドレス計算を0
1) 行う。セレクタ9は、前のマイクロ命令で機械語命令解
読0を指定すると、次に読み出した機械語命令をセット
するインストラクションレジスタ7を選択する。
Next, the microinstruction reads the operand of instruction 1 (OF) and calculates the address of the operand description part of instruction 2 (8
), the contents corresponding to the address register 4 to which the operand address of the instruction l is set are read from the main memory 1 and set in the memory buffer register 6. Further, the instruction register 8 in which instruction 2 is set is selected by the selector 9, and as described above,
The selector 19 outputs a control signal for calculating the address (8) of the operand description part of instruction 2, and the address calculation is set to 0.
1) Do it. When the previous microinstruction specifies machine language instruction decoding 0, the selector 9 selects the instruction register 7 to set the next read machine language instruction.

次に、マイクロ命令は、命令1の演算■の実行と、命令
2のオペランド読み出しくOF)と命令2の解読0を指
定すると、セレクタ19はマイクロ命令レジスタ18が
出力する演算用制御信号(1))を選択し、オペランド
をセットしているメモリバッファ・レジスタ6とレジス
タ2で命令1のオペレーションコードに従った演算を行
う。また、命令2のオペランド・アドレスがセットされ
ているアドレスレジスタ4に対応した内容を主記憶装置
1より読み出し、メモリバッファレジスタ6にセットす
る。同時に、命令2の解読0を行い、前記の様に命令2
に対応するマイクロ命令群の先頭のマイクロ命令をマイ
クロ命令レジスタ18にセットする。
Next, when the microinstruction specifies the execution of operation 1 of instruction 1, the read operand of instruction 2 (OF), and the decoding of instruction 2, the selector 19 outputs the operation control signal (1 )) and performs an operation according to the operation code of instruction 1 using memory buffer register 6 and register 2, which have set operands. Further, the contents corresponding to the address register 4 to which the operand address of the instruction 2 is set are read from the main memory 1 and set in the memory buffer register 6. At the same time, instruction 2 is decoded and instruction 2 is decoded as described above.
The first microinstruction of the microinstruction group corresponding to is set in the microinstruction register 18.

次に、マイクロ命令が次の機械語命令の読み出しく命令
3のIP)と、命令2の演算Eの実行を02) 指定すると、前記のようにインストラクションレジスタ
7に命令3をセットすると同時に、マイクロ命令レジス
タ18が出力する演算用制御信号Cb)をセレクタ19
が選択し、命令2の演算■を行う。
Next, when the microinstruction specifies the IP of instruction 3 to read the next machine language instruction (02) and the execution of operation E of instruction 2, the microinstruction sets instruction 3 in the instruction register 7 as described above, and at the same time The arithmetic control signal Cb) output from the instruction register 18 is sent to the selector 19.
is selected and the operation (■) of instruction 2 is performed.

以下この動作を繰返す。Repeat this operation below.

この動作の繰返しのタイム・チャートを、第7図(b)
に示す。すなわち、第7図(b)は形式2の命令を連続
して実行した場合であって、命令1と命令2を実行する
合計時間は5マシン・サイクル、つまり2]11+1 
(nは命令数)マシン・サイクルであるが、命令3は演
算器13が空いていないため、3マシン・サイクル遅れ
て読み出されることになり、命令1〜命令3の合計時間
は8マシン・サイクル、つまり2n+2マシン・サイク
ルかかることになる。しかし、演算器13を2側設けれ
ば、2カマシン・サイクルで実行可能である。このよう
に、本実施例によれば、マイクロ命令でオペランド記述
部のアドレス計算を、機械語命令のオペレーションコー
ド解読の前に行う事により、前記形式2の命令を連続し
てh口実行するのに、2nマシンサイクルの時間で実行
でき、処理装置の効率を上げる効果がある。
The time chart for the repetition of this operation is shown in Figure 7(b).
Shown below. That is, FIG. 7(b) shows the case where instructions of format 2 are executed consecutively, and the total time to execute instructions 1 and 2 is 5 machine cycles, that is, 2]11+1
(n is the number of instructions) machine cycles, but since the arithmetic unit 13 is not available for instruction 3, it is read out with a delay of 3 machine cycles, and the total time for instructions 1 to 3 is 8 machine cycles. , that is, it will take 2n+2 machine cycles. However, if the arithmetic units 13 are provided on two sides, the process can be executed in two kamashin cycles. As described above, according to this embodiment, by calculating the address of the operand description section using a microinstruction before decoding the operation code of the machine language instruction, it is possible to execute h instructions of the Format 2 in succession. Moreover, it can be executed in a time of 2n machine cycles, which has the effect of increasing the efficiency of the processing device.

次に、本実施例のハードウェアを用いて形式1の機械語
命令を実行するマイクロ命令の動作フローを第7図(a
)に示す。第7図(a)が第7図(b)と異なる点は、
命令2が分岐命令である為、動作フローが乱れる点にあ
る。第7図(&)を実現するハードウェアで分岐命令特
有のものは、第6図の分岐命令選択デコーダ20が動作
する事であり、読み出した機械語命令が分岐命令の場合
には、オペランド記述部のアドレス計算結果をメモリア
ドレス・レジスタ4−にセットするのではなく、プログ
ラム・カウンタ5にセットし、かつ読み出したオペラン
ドをインストラクションレジスタ7にセットする様、本
デコーダ20が制御する。これにより分岐命令による処
理速度の低下を最小限に留める事かできる。
Next, FIG. 7 (a
). The difference between FIG. 7(a) and FIG. 7(b) is that
Since instruction 2 is a branch instruction, the operational flow is disrupted. What is unique to the branch instruction in the hardware that implements FIG. 7 (&) is that the branch instruction selection decoder 20 shown in FIG. The present decoder 20 controls the program counter 5 to set the address calculation result of the section, rather than the memory address register 4-, and the read operand to the instruction register 7. This makes it possible to minimize the reduction in processing speed caused by branch instructions.

すなわち、第7図(、)に示すように、分岐命令2があ
る場合、命令1〜命令3の実行時間の合計は7マシン・
サイクルであり、これは2n+1マシン・サイクルであ
る。
That is, as shown in FIG. 7(,), when there is branch instruction 2, the total execution time of instructions 1 to 3 is 7 machines.
cycle, which is 2n+1 machine cycles.

〔発明の効果〕 本発明によれば、機械語命令の2ベレーシヨンコードを
#読して、機械語命令に対応したマイクロ命令群に分岐
する前に、オペランド記述部のアドレス計算を行うこと
ができるので、レジスタ・メモリ演算をn回連続して行
うとはtq 2 nマシンサイクルの時間で行う事がで
き、処理装置の高速化の効果がある。
[Effects of the Invention] According to the present invention, it is possible to #read the 2-version code of a machine language instruction and calculate the address of the operand description part before branching to the microinstruction group corresponding to the machine language instruction. Therefore, register/memory operations can be performed n times in succession in a time of tq 2 n machine cycles, which has the effect of speeding up the processing device.

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

vlMは、機械語命令の2つの命令形式の例を示す図、
第2図は第1図の形式2の機械語命令を実現したマイク
ロ命令11作フロー図、嶋3図は第2図を&善したマイ
クロ命令動作フロー図、第4図は竿1図の形式1の機械
語命令を実現したマイクロ命令動作フロー図、第5図、
第7図は本発明を実施したマイクロ命令の動作フロー図
、第6図は本発明の実施例を示す情報処理装置の概略構
成図である。 l:主記憶装置、2:演算用A側しジスタ、3α5) :演算用B側レジスタ、4=メモリアドレスレジスタ、
5ニブログラムカウンタ、6:メモリバッファレジスタ
、7:インストラクションレジスタ1.8:インストラ
クションレジスタ2.9ニアドレス計算用セレクタ、1
0:機械語命令解読用セレクタ、11ニアドレス計算用
デコーダ、12:機械語命令解読用デコーダ、13:演
算器、14=マイク07’ログラム加算回路、15:マ
イクロ命令アドレスセレクタ、16;マイク四命令アド
レスレジスタ、17:制御用記憶装置、18:マイクシ
命令レジスタ、19:演算制御信号用セレクタ、20:
分岐命令選択デコーダ。 06) H〜 螢   値 憎   憎 H〜    の <ll!     <p     <P4g  [相]
  令
vlM is a diagram showing examples of two instruction formats of machine language instructions,
Figure 2 is a flow diagram of 11 microinstructions that realize the machine language instructions of format 2 in Figure 1, Figure 3 is a microinstruction operation flow diagram that improves Figure 2, and Figure 4 is the format of Figure 1. Figure 5 is a microinstruction operation flow diagram that realizes the machine language instructions in 1.
FIG. 7 is an operational flow diagram of microinstructions implementing the present invention, and FIG. 6 is a schematic configuration diagram of an information processing apparatus showing an embodiment of the present invention. l: Main memory, 2: A-side register for calculation, 3α5): B-side register for calculation, 4 = Memory address register,
5 Niprogram counter, 6: Memory buffer register, 7: Instruction register 1.8: Instruction register 2.9 Near address calculation selector, 1
0: Machine language instruction decoding selector, 11 Near address calculation decoder, 12: Machine language instruction decoding decoder, 13: Arithmetic unit, 14 = Microphone 07' program addition circuit, 15: Microinstruction address selector, 16; Microphone 4 Instruction address register, 17: Control storage device, 18: Microsi instruction register, 19: Arithmetic control signal selector, 20:
Branch instruction selection decoder. 06) H~ firefly value hate hate H~ no <ll! <p <P4g [phase]
order

Claims (1)

【特許請求の範囲】 α)先行制御を行うマイクロプログラム制御の情報処理
装置において、主記憶装置から連続して読み出された複
数の命令を別個に選択する複数のセレクタ、および該セ
レクタにより選択された1つの命令のオペレーション・
コード部のデコードと並行して、あるいは該デコードに
先立って上記命令のオペランド記述部のアドレス計算を
実行させる制御手段を設けたことを特徴とする情報処理
装置。 (2)前記制御手段は、デコードに先立って命令のオペ
ランド記述部のアドレス計算を実行した場合、演算器を
使用しないマイクロ命令により、該演算器を用いて次に
読み出された命令のオペランド記述部のアドレス計算を
実行するように指定することを特徴とする特許請求の範
囲第1項記載の情報処理装置。
[Scope of Claims] α) In a microprogram-controlled information processing device that performs advance control, a plurality of selectors separately select a plurality of instructions successively read from a main memory, and a plurality of selectors selected by the selectors. One instruction operation
An information processing device comprising: control means for executing address calculation of an operand description section of the instruction in parallel with or prior to decoding of the code section. (2) When the control means executes address calculation in the operand description section of an instruction prior to decoding, the control means uses a microinstruction that does not use an arithmetic unit to write the operand description of the next instruction read using the arithmetic unit. 2. The information processing apparatus according to claim 1, wherein the information processing apparatus specifies to perform address calculation of the unit.
JP3407383A 1983-03-02 1983-03-02 Information processing device Granted JPS59160239A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3407383A JPS59160239A (en) 1983-03-02 1983-03-02 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3407383A JPS59160239A (en) 1983-03-02 1983-03-02 Information processing device

Publications (2)

Publication Number Publication Date
JPS59160239A true JPS59160239A (en) 1984-09-10
JPH0218732B2 JPH0218732B2 (en) 1990-04-26

Family

ID=12404082

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3407383A Granted JPS59160239A (en) 1983-03-02 1983-03-02 Information processing device

Country Status (1)

Country Link
JP (1) JPS59160239A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63293638A (en) * 1987-05-27 1988-11-30 Hitachi Ltd Data processing system
JPH04260928A (en) * 1991-01-21 1992-09-16 Mitsubishi Electric Corp Data processor

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5734254A (en) * 1980-08-08 1982-02-24 Nec Corp Information processing device
JPS5794853A (en) * 1980-12-03 1982-06-12 Hitachi Ltd Data processor
JPS5848144A (en) * 1981-09-16 1983-03-22 Nec Corp Branch instruction control system of data processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5734254A (en) * 1980-08-08 1982-02-24 Nec Corp Information processing device
JPS5794853A (en) * 1980-12-03 1982-06-12 Hitachi Ltd Data processor
JPS5848144A (en) * 1981-09-16 1983-03-22 Nec Corp Branch instruction control system of data processor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63293638A (en) * 1987-05-27 1988-11-30 Hitachi Ltd Data processing system
JPH04260928A (en) * 1991-01-21 1992-09-16 Mitsubishi Electric Corp Data processor

Also Published As

Publication number Publication date
JPH0218732B2 (en) 1990-04-26

Similar Documents

Publication Publication Date Title
JP3237858B2 (en) Arithmetic unit
US6715065B1 (en) Micro program control method and apparatus thereof having branch instructions
JP2004511039A (en) Single instruction multiple data processing
JPS62226231A (en) Processor
JPS59160239A (en) Information processing device
CN110914801A (en) Vector interleaving in a data processing apparatus
US6807625B1 (en) Method and apparatus for efficiently generating, storing, and consuming arithmetic flags between producing and consuming macroinstructions when emulating with microinstructions
JP2583506B2 (en) Data processing device
JPS63141131A (en) Pipeline control system
EP3482289A1 (en) Vector register access
JPS58200349A (en) Microprogram controller
JP2812610B2 (en) Pipeline control method
JPS6375833A (en) Information processor
JP2825315B2 (en) Information processing device
JP2982129B2 (en) Micro program controller
JPH0812599B2 (en) Data processing device
JPS60163131A (en) Information processing unit
JPS6081646A (en) Information processor
JPH0353322A (en) Information processor
JPH1063503A (en) Arithmetic processor and its method
JPS61194534A (en) Microprocessor
JPS62295163A (en) Parallel data processor
JPS5927351A (en) Data processing device
JPS63284640A (en) Instruction decoding device
JPH1063639A (en) Arithmetic unit