JPS5995646A - Arithmetic control system - Google Patents

Arithmetic control system

Info

Publication number
JPS5995646A
JPS5995646A JP57205729A JP20572982A JPS5995646A JP S5995646 A JPS5995646 A JP S5995646A JP 57205729 A JP57205729 A JP 57205729A JP 20572982 A JP20572982 A JP 20572982A JP S5995646 A JPS5995646 A JP S5995646A
Authority
JP
Japan
Prior art keywords
instruction
data
state variable
arithmetic
storage device
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
JP57205729A
Other languages
Japanese (ja)
Other versions
JPH0233173B2 (en
Inventor
Mitsuo Ouchi
大内 光郎
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP57205729A priority Critical patent/JPS5995646A/en
Publication of JPS5995646A publication Critical patent/JPS5995646A/en
Publication of JPH0233173B2 publication Critical patent/JPH0233173B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions

Abstract

PURPOSE:To reduce an overhead required for a conditional branch by writing a couple of arithmetic data and a state variable in a storage device and processing the arithmetic data according to an instruction code and the state variable. CONSTITUTION:An instruction containing an instruction code OPC and a state variable specifying code and data consiting of arithmetic data A and B and state variables CA and CB are read out of the storage device 14 and stored in an instruction register 4 and input registers 5 and 6 respectively. The instruction code OPC and variables CA and CB are decoded 2 and a computing element 1 processes the data A and B according to the conditions of those three kinds of parameters and outputs the arithmetic result X and an overflow signal V to a state variable generating circuit 3. The circuit 3 generates a state variable CX to be outputted according to the signals X and V and code SC and inputs it to an output buffer 7. The buffer 7 stores a couple of the variable CX and arithmetic result X in the device 14. An address generating circuit 8 is controlled by the output signal of the decoder 2 to perform conditional branching operation and arithmetic integrally by one instruction.

Description

【発明の詳細な説明】 本発明は、演算制御方式、特に、情報処理装置における
演算の制御全行なう演算制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an arithmetic control method, and particularly to an arithmetic control method that controls all arithmetic operations in an information processing device.

一般に、情報処理装置のプロセッサは記憶装置からフェ
ッチした命令コードに従って演算を実行する。演算をほ
どこすデータが正数であるか負数であるか、あるいはオ
ーバー70−した数であるか否か等いわゆるデータの状
態に関係なく演算が行なわれるのが普通である。データ
の状態によって処理を変えたい場合は、まずデータの状
態を調べる命令を実行し、その状態によって分岐する条
件分岐命令全実行する。この壱件分岐によって処理の分
岐を実現している。
Generally, a processor of an information processing device executes an operation according to an instruction code fetched from a storage device. The operation is normally performed regardless of the state of the data, such as whether the data to be operated on is a positive number, a negative number, or a number over 70-. If you want to change the processing depending on the state of the data, first execute an instruction to check the state of the data, and then execute all conditional branch instructions that branch depending on the state. This one-item branch realizes processing branching.

例えば、  IA+l B I Jを実行する場合、あ
らかじめBの正負全判定してお@Bが正なら[h−4−
BJ、Bが負ならばl’A−BJを実行するルーチンに
分岐する必要がある。
For example, when executing IA+l B I J, check the positive and negative of B in advance, and if @B is positive, [h-4-
If BJ and B are negative, it is necessary to branch to a routine that executes l'A-BJ.

また1例えば、[記憶装置から読み出された演算データ
Aが定数“T″′と等しければ、定数“S“を加算し等
しくなければ演算データAをそのまま出力する」例につ
いて以下に説明する。
Further, for example, an example will be described in which, if the calculation data A read from the storage device is equal to the constant "T"', the constant "S" is added to it, and if the calculation data A is not equal, the calculation data A is output as is.

この場合、まず、記憶装置から、演算データAを入力レ
ジスタにLoad iるl、oad/’命令を実行する
In this case, first, an instruction is executed to load operation data A from the storage device into an input register.

次いで、この演算データAを定数“T″と比較するCO
MPA几E命令を実行する。
Next, CO compares this calculation data A with constant “T”.
Execute the MPA command.

次に、比較結果が一致していなければJUMPする条件
分岐命令を実行する。
Next, if the comparison results do not match, a JUMP conditional branch instruction is executed.

最後に、分岐しない場合は演算データ八に定数“S″全
加算するADI)命令を実行する。
Finally, if there is no branching, execute the ADI instruction to fully add the constant "S" to the operation data 8.

このように、上述の例では、実行に4つの命令を必要と
する。
Thus, the above example requires four instructions to execute.

従来の演算制御方式では、データ自体の状態を示す情報
はないが、演算後の状態を表わすフラグ(例えばサイン
フラグ、キャリー・フラグ、パリティ−・フラグ等)を
備えており、このフラグを−参照して条件分岐を実行し
ている。しかし、この72グは通常、命令が実行される
たびに前の状態に依存しないで設定しなおされる。従っ
てこの7ラグを参照する命令は所望する命令によって7
ラグが設定された後、別の命令によってフラグが変更さ
れないうちに実行されなければならない。
In conventional arithmetic control methods, there is no information indicating the state of the data itself, but there are flags (e.g. sign flag, carry flag, parity flag, etc.) that indicate the state after the operation. and executes a conditional branch. However, this 72 flag is typically reset each time an instruction is executed, independent of the previous state. Therefore, an instruction that refers to this 7 lag can be set to 7 depending on the desired instruction.
It must be executed after the lag is set and before the flag is changed by another instruction.

このように、従来の演算制御方式はデータの状態によっ
て処理が異なる場合は、実際にデータに対して施こす処
理に対して、状態判断およびそれを参照する条件分岐に
要するオーバーヘッドに占める割合がかなり大きくなっ
てしまうという欠点を有していた。
In this way, in conventional arithmetic control methods, when processing differs depending on the state of the data, the overhead required for state judgment and conditional branching that refers to it takes up a large proportion of the processing that is actually performed on the data. It had the disadvantage of being large.

本発明の目的は5条件分岐に要するオーバーヘッドを軽
減でさる演算制御方式を提供することにある。
An object of the present invention is to provide an arithmetic control method that reduces the overhead required for five conditional branches.

すなわち1本発明の目的は上記の考察に基づいて、命令
コードと複数の被演算データとによって演算が行なわれ
る情報処理装置に於いて、前記被演算データに演算制御
のためのフラグ群を付加した7:7グ群付きデータを記
憶する記憶装置を備え、前記命令コードと前記記憶装置
より読みだした前記フラグ群とによって演算器で行なう
処理全決定し、演算処理後演算結果と前記命令コードと
によって修飾したフラグ群を演算出力データに付加して
前記記憶装置に書き込むことにより2条件分岐に要する
オーバーヘッドを軽減できる演算制御方式を提供するこ
とにある。
That is, one object of the present invention is to provide an information processing device in which an operation is performed using an instruction code and a plurality of operand data, based on the above consideration, to add a group of flags for operation control to the operand data. 7: A storage device for storing data with a 7-group flag is provided, and the entire process to be performed by the arithmetic unit is determined based on the instruction code and the flag group read from the storage device, and after the arithmetic processing, the calculation result and the instruction code are An object of the present invention is to provide an arithmetic control method that can reduce the overhead required for two-conditional branching by adding a group of flags modified by the above to the arithmetic output data and writing them into the storage device.

本発明の演算制御方式は、命令コードと状態変数指定コ
ードとを含む命令および演算データと状態変数とからな
るデータを記憶する記憶装置と。
The arithmetic control method of the present invention includes a storage device that stores instructions including an instruction code and a state variable designation code, and data including arithmetic data and state variables.

前記記憶装置から読み出した前記命令コードと前記状態
変数に従って前記演算データを演算して得らnた演算結
果を前記記憶装置に書き込んで前記演算データとして記
憶きせるために出力する演算器と、前記演算結果と前記
記憶装置から読み出した前記状態変数指定コードとに従
って前記演算結果と対にして前記記憶装置に書き込んで
記憶させるための状態変数出力を生成するための状態変
数生成回路とを含んで構成される。
an arithmetic unit that outputs an operation result obtained by operating the operation data according to the instruction code read from the storage device and the state variable, and writing the operation result to the storage device to be stored as the operation data; and a state variable generation circuit for generating a state variable output to be written and stored in the storage device as a pair with the operation result according to the result and the state variable designation code read from the storage device. Ru.

すなわち、本発明の演算制御方式は、命令コードと複数
の被演算データとによって演算が行なわれる情報処理装
置において、前記被演算データに演算制御のためのフラ
グ群を付加したフラグ群付きデータを記憶する記憶装置
を備え、前記命令コードと前記記憶装置より読み出した
前記フラグ群とによって演算器で行なう処理を決定し、
演算処理後、演算結果と前記命令コードとによって修飾
したフラグ群を演算出力データに付加して前記記憶装置
に書き込むように構成される。
That is, the arithmetic control method of the present invention stores flag group-attached data in which a flag group for arithmetic control is added to the operand data in an information processing device that performs an arithmetic operation using an instruction code and a plurality of operand data. determining the processing to be performed by the arithmetic unit based on the instruction code and the flag group read from the storage device;
After the arithmetic processing, a flag group modified by the arithmetic result and the instruction code is added to the arithmetic output data and written in the storage device.

次に1本発明の実施例について、図面を参照して詳細に
説明するっ 第1図は本発明の一実施例を示すブロック図で。
Next, an embodiment of the present invention will be described in detail with reference to the drawings. Fig. 1 is a block diagram showing an embodiment of the present invention.

状態変数′f:1ビットとした演算制御方式の概略ブロ
ック図であり、第2図(a)、 (b)は前記演算制御
方式における演算器の入力条件と演算の関係の一例を示
す演算説明図、第3図は前記演算制御方式における状態
変数生成回路の動作条件ヲ賜明するための状態変数説明
図である。
It is a schematic block diagram of an arithmetic control method in which the state variable 'f is 1 bit, and FIGS. 2(a) and 2(b) are arithmetic explanations showing an example of the relationship between the input conditions of the arithmetic unit and the arithmetic operation in the arithmetic control method. 3 are state variable explanatory diagrams for explaining the operating conditions of the state variable generation circuit in the arithmetic control method.

なお、第1図に示す実施例では命令は命令コードと 状
態変数出力を生成するための状態変数指定コードとを含
んでいる。
In the embodiment shown in FIG. 1, the instruction includes an instruction code and a state variable designation code for generating a state variable output.

第1図に示す演算制御方式は、2項演算を行なうための
演算器1と、命令デコーダ2と、状態変数生成回路3と
、記憶装置14と、命令レジスタ4と入力レジスタ5,
6と、出方バッ7ア7と、アドレス生成回路8とマルチ
プレクサ9と、制御信号線lO〜13と、バス100〜
117と°を含んで構成される。
The arithmetic control system shown in FIG.
6, the output buffer 7, the address generation circuit 8, the multiplexer 9, the control signal lines lO~13, and the buses 100~
It is composed of 117 and °.

第2図(a)は、命令コードOPCと2つの入力の状態
変数CA、 C8の排他的論理和(JUMP 命令に関
しては入力レジスタ5の状態変数)の結果によって、実
行される演算が定まることを示している。第2図(b)
は第2図(a)によって定まった演算が実行された結果
演算器1から出方される演算結果Xを示している。
Figure 2 (a) shows that the operation to be executed is determined by the result of the exclusive OR of the instruction code OPC and the two input state variables CA and C8 (for the JUMP instruction, the state variable of input register 5). It shows. Figure 2(b)
2(a) shows the calculation result X output from the calculation unit 1 after the calculation determined by FIG. 2(a) is executed.

また、第3図は状態変数指定コード8Cと演算結果Xの
状態によって生成される状態変数出力cxが決まること
を示している。
Further, FIG. 3 shows that the generated state variable output cx is determined by the state of the state variable designation code 8C and the calculation result X.

以下に、第1図に示す演算制御方式の動作について、説
明する。
The operation of the arithmetic control method shown in FIG. 1 will be explained below.

命令が実行されると、まず命令レジスタ4.入力レジス
タ5および6に記憶装置14から読み出されてデータバ
ス114にのせられたデータがバス101,102.1
03 を介して2ツテされる。
When an instruction is executed, first the instruction register 4. The data read from the storage device 14 to the input registers 5 and 6 and placed on the data bus 114 is transferred to the buses 101, 102.1.
03, it will be 2 times.

すなわち、命令レジスタ4には命令コードOPCと状態
変数指定コードSCとを含む命令が格納され、入力レジ
スタ5および6にはそれぞれ状態変数CA、CBと演算
データA、Bが格納される。
That is, the instruction register 4 stores an instruction including an instruction code OPC and a state variable designation code SC, and the input registers 5 and 6 store state variables CA, CB and operation data A, B, respectively.

この状態変数CA、CBは演算データA、Bとともに対
になって記憶装置14(あるいは他のレジスタ)から読
みだされる。
The state variables CA and CB are read out from the storage device 14 (or other registers) in pairs together with the calculation data A and B.

命令コードUPCと2つの状態変数CA、CBは。The instruction code UPC and two state variables CA and CB are.

それぞれバス104,105,106 e介して命令デ
コーダ2に入力される。この381!のパラメータは第
2図(a)に示した条件で演算器1に対する処理命令お
よびアドレス生成回路8に対する制御を決定する。
The signals are input to the instruction decoder 2 via buses 104, 105, and 106e, respectively. This 381! The parameters determine the processing command for the arithmetic unit 1 and the control for the address generation circuit 8 under the conditions shown in FIG. 2(a).

まず、演算器1では第2図(a)に示した条件で決定し
た処理命令を受けて、バス107. l0JII介して
入力された演算データA、Bに対して演算を行ない第2
図(b)に従ってバス110および111に演算結果X
を出力する。状態変数生成回路3はこの演算結果Xと、
演算器1から出方されるオーバー70−信号■およびバ
ス109’e介して入力される状態変数指定コードSC
によって、出力すべき状態変数Cxを生成する。生成条
件は第3図に示すとおりである。バス111に出力され
た演算結果XはCOMP命令以外はマルチプレクサ9を
介して出力バッ7ア7によってデータ用のバスttlに
ドライブされる。C(JMP命令のときはバス116上
の演算データAが出力バッ7ア7に入力される。
First, the arithmetic unit 1 receives a processing instruction determined under the conditions shown in FIG. Calculation is performed on the calculation data A and B input via l0JII, and the second
The calculation result X is sent to buses 110 and 111 according to figure (b).
Output. The state variable generation circuit 3 uses this calculation result X,
The over 70-signal ■ output from the arithmetic unit 1 and the state variable designation code SC input via the bus 109'e.
The state variable Cx to be output is generated. The production conditions are as shown in FIG. The operation result X outputted to the bus 111 is driven to the data bus ttl by the output buffer 7 via the multiplexer 9 except for the COMP instruction. C(JMP instruction, the operation data A on the bus 116 is input to the output buffer 7.

このマルチプレクサ9の切替遥今信号は命令デコーダ2
で生成される。
The switching signal of this multiplexer 9 is sent to the instruction decoder 2.
is generated.

一方、命令デコーダ2から出力された制御信号11はア
ドレス生成回路8に入力され、プログラムカウンタを制
御する。すなわち、制御信号11によって演算終了後、
グログ2ムカウンタをインクリメントするかあるいは分
岐先アドレスに設定するかが決定される。
On the other hand, the control signal 11 output from the instruction decoder 2 is input to the address generation circuit 8 and controls the program counter. That is, after the calculation is completed by the control signal 11,
It is determined whether to increment the log2m counter or set it to the branch destination address.

以上の動作を簡単な2つの例を用いて説明する。The above operation will be explained using two simple examples.

第1の例として、[記憶装置から読みだされた演算デー
タAが“T″であれば“S″′を加える」という演算を
取り上げる。命令は第2図(a)に掲げたものを使用す
る。
As a first example, we will take up the operation ``If the operation data A read from the storage device is ``T'', add ``S''''. The commands listed in Figure 2 (a) are used.

まず、LOAD命令を実行し、記憶装置14から演算デ
ータAを読み出し、データバス金介して入力レジスタ5
に、また“T″を入力レジスタ6にラッテする。なお、
このときの状態変数CA。
First, a LOAD instruction is executed to read operation data A from the storage device 14, and the input register 5 is read out from the storage device 14 via the data bus.
Then, "T" is also latched into the input register 6. In addition,
State variable CA at this time.

e  は“1“、00″のいずれであってもよい。e may be either "1" or 00".

次にC(JMPAI(E命令によって、入力レジスタ5
に格納されている演算データ人と入力レジスタ6に格納
されている“T“とを比較する。CL)MPA几E命令
の動作は、演算器で入力レジスタ5と入力レジスタ6の
内容の減算を行なうが、出力バッ7ア7にはマルチプレ
クサ9を介して入力レジスタ5の内容(バス117)と
モディファイされた状態変数(信号+l1l12 )’
に出力し、次いで入力レジスタ5に再ラツチするもので
ある。このと@、状態変数指定コードSCi“101″
に指定しておく。すなわち、COMPARE命令を実行
して得られた演算結果Xが“0“に等しければ状態変数
出力CXを“O″に1等しくなければ“1“とじ、結果
を入力レジスタ5に再ラツチする。結果的には入力レジ
スタ5の状態変数だけが変更される。
Next, C (JMPAI (E command) input register 5
The calculation data stored in the input register 6 is compared with "T" stored in the input register 6. The operation of the CL) MPA E instruction is to subtract the contents of input register 5 and input register 6 in the arithmetic unit, but the contents of input register 5 (bus 117) are sent to output buffer 7 via multiplexer 9. Modified state variable (signal +l1l12)'
The signal is output to the input register 5 and then relatched to the input register 5. This @, state variable specification code SCi “101”
Please specify. That is, if the operation result X obtained by executing the COMPARE instruction is equal to "0", the state variable output CX is set to "1" if it is not equal to "O" by 1, and the result is relatched in the input register 5. As a result, only the state variables of input register 5 are changed.

続いてADD命令を実行する。入力レジスタ6には状態
変数CB として“0“を、演算データBとして“S″
を入力する。このADD命令は2つの入力の状態変数C
A、CBを比較し、等しければ加算を実行し、等しくな
ければNOPを実行するものである。すなわち、COM
PARE命令の実行で求めた状態変数CAが“0“であ
れば演算結果Xとして”r+si出力し、“1”であれ
ば入力レジスタ5の値をそのまま出力することになる。
Subsequently, the ADD instruction is executed. The input register 6 has “0” as the state variable CB and “S” as the calculation data B.
Enter. This ADD instruction has two input state variables C
A and CB are compared, and if they are equal, addition is performed, and if they are not equal, NOP is performed. That is, COM
If the state variable CA obtained by executing the PARE instruction is "0", "r+si" is output as the operation result X, and if it is "1", the value of the input register 5 is output as is.

このように、第1の例の場合、本発明を適用すれば3つ
の命令の実行で充分である。
Thus, in the case of the first example, execution of three instructions is sufficient if the present invention is applied.

上述した第1の例では、演算データへの値によって、A
DL)かNOPかの一方を実行するため一時的に処理が
分岐するが、実行後は再び同じシーケンスを実行してい
くことになる。これは演算とNOPを組み合わせた他の
命令(JUMPk除く)に関して同様であ凱従来の条件
分岐命令による分岐という操作が不要となった。
In the first example described above, depending on the value to the calculation data, A
The process temporarily branches to execute either DL) or NOP, but after execution, the same sequence will be executed again. This is the same for other instructions that combine an operation and a NOP (except JUMPk), and the conventional branch operation using a conditional branch instruction is no longer necessary.

ところで、演算データAと“1“との比較があらかしめ
実行されており比較結果が状態変数CAとして記憶装置
14にすでに格納されている場合(記憶装置14の各番
地には、演算データと状態変数が一対となって格納され
ており、同時にアドレッシングされる)には、LOAD
 して直ちにAL)D命令を実行することができる。す
なわち、演算データの状態が状態変数としてメモリに保
存されているので、COMPARE命令が不要となった
わけである。状態変数は、COMPA)LE命令に限ら
ず全ての演算が実行される際に再生成されるので、何ら
かの演算を行なった結果、生成された状態変数をデータ
とともに記憶装置に格納しておけば、その状態をいつで
も引きだして他の演算に使用することができる。従来、
これは演算後の状態として一時的に保存式れていたのみ
であった。
By the way, if a comparison between the calculation data A and "1" has been executed and the comparison result has already been stored in the storage device 14 as the state variable CA (each address of the storage device 14 contains the calculation data and the state (variables are stored in pairs and addressed simultaneously), use LOAD
Then, the AL)D instruction can be executed immediately. That is, since the state of the calculation data is stored in the memory as a state variable, the COMPARE instruction is no longer necessary. State variables are regenerated when all operations are executed, not just COMPA) LE instructions, so if you store the state variables generated as a result of some operation in the storage device along with the data, Its state can be extracted at any time and used for other operations. Conventionally,
This was only temporarily preserved as the state after the calculation.

次に、条件分岐命令の動作について説明する。Next, the operation of a conditional branch instruction will be explained.

第2図(a)、 (b)に示したように1分岐するか否
かは入力レジスタ5の状態変数CAの値によって決定す
る。すなわち、命令デコーダ2に入力された命令コード
(JPCおよび状態変数cAによって。
As shown in FIGS. 2(a) and 2(b), whether one branch is taken or not is determined by the value of the state variable CA of the input register 5. That is, the instruction code input to the instruction decoder 2 (by JPC and state variable cA).

分岐の成功、不成功全表わす信号が生成され制御信号1
1としてアドレス生成回路8に出力される。
A signal indicating the success or failure of the branch is generated and the control signal 1
It is output to the address generation circuit 8 as 1.

これを受けて、アドレス生成回路8では、プログラム・
カウンタの値を制御する。
In response to this, the address generation circuit 8 generates a program.
Control the value of a counter.

次に、第2例として「加算した結果、オーバーフローし
たら“Z″′′番地岐する」の場合について説明する。
Next, as a second example, the case of ``if the addition results in an overflow, jump to address Z'''' will be explained.

まず、状態変数指定コードSCを“111“に指定した
ADL)命令を実行する。このときの状態変数出力Cx
および演算結果Xは出力バッファ7よりバス113,1
14.103 ?r:介して入力レジスタ5にラッチさ
れる。
First, an ADL command with the state variable designation code SC set to "111" is executed. State variable output Cx at this time
and the operation result X is transferred from the output buffer 7 to the bus 113,
14.103? latched into the input register 5 via r:

次に1条件分岐命令“JUMP(OPC=O110)”
の命令コードと入力レジスタ5に格納されている状態変
数CAの値によって分岐の成功・不成功を決定する。こ
の場合「演算」→「条件分岐」というシーケンスは従来
の方法と本質的に変わらない。
Next, one conditional branch instruction “JUMP (OPC=O110)”
The success or failure of the branch is determined by the instruction code and the value of the state variable CA stored in the input register 5. In this case, the sequence of "operation" → "conditional branch" is essentially the same as the conventional method.

しかし、前述した第1例と同様に演算結果Xと状態変数
出力Cxを演算データおよび状態変数として記憶装置1
4に格納した場合、その後そのデータをいつでもLOA
D してその直後に条件分岐を実行することができる。
However, as in the first example described above, the calculation result X and state variable output Cx are stored in the storage device 1 as calculation data and state variables.
4, the data can then be accessed at any time on the LOA.
D and then execute a conditional branch immediately after that.

これは従来の方法では不可能だったことである。This was not possible with conventional methods.

以上1本発明の一実施例を説明したが、状態変数を複数
のビットとし、状態変数指定コードを拡張すればさらに
多様な条件演算を行なうことが可能になるのは明白であ
る。データの状態によって処理が異なるような場合には
、本発明によって条件分岐が省略でさ、それに伴なう条
件判断子の設定も軽減され、処理時間の短縮が可能とな
り、これによって情報処理装置の性能を太幅に改善する
ことができる。
Although one embodiment of the present invention has been described above, it is clear that by using a plurality of bits as a state variable and expanding the state variable designation code, it becomes possible to perform even more diverse conditional operations. In cases where processing differs depending on the state of data, the present invention eliminates conditional branching and reduces the associated setting of conditional determiners, making it possible to shorten processing time. Performance can be significantly improved.

本発明の演算制御方式は、状態変数生成回路を追加する
ことにより、生成された状態変数を演算データと対にし
て記憶装置に書き込んでおき演算時に命令コードと状態
変数に従って演算データを演算させることができるため
、1つの命令で条件分岐動作と演算動作を一体比して処
理できるので、条件分岐に要するオーバーヘッドを軽減
できるという効果がある。
The arithmetic control method of the present invention adds a state variable generation circuit, writes the generated state variables as a pair with calculation data in a storage device, and calculates the calculation data according to the instruction code and state variable during calculation. Since the conditional branching operation and the arithmetic operation can be processed integrally with one instruction, the overhead required for the conditional branching can be reduced.

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

第1図は本発明の一実施例を示すブロック図。 第2図(aλ(b)は第1図に示す演算器の動作を説明
するための演算説明図、第3図は第1図に示す状態変数
生成回路の動作を説明するだめの状態変数説明図である
。 1・・・・・・演算器、2・・・・・・命令デコーダ、
3・・・・・・状態変数生成回路、4・・・・・・命令
レジスタ、5.6・・・・・・入力レジスタ、7・・・
・・・出力バッ7ア、8・・・・・・アドレス生成回路
、9・・・・・・マルチプレクサ、10〜12・・・・
・・制御信号、14・・・・・・記憶装置、100〜1
17・・・・・・バス、 OPC・・・・・・命令コード、SC・・・・・・状態
変数指定コード、 A、  B・・・・・・演算データ
、X・・・・・・演算結果。 CA、CB・・・・・・状態変数 Cx・旧・・状態変
数出方。
FIG. 1 is a block diagram showing one embodiment of the present invention. FIG. 2 (aλ(b) is an operation explanatory diagram for explaining the operation of the arithmetic unit shown in FIG. 1, and FIG. 3 is a state variable explanation for explaining the operation of the state variable generation circuit shown in FIG. 1. It is a diagram. 1... Arithmetic unit, 2... Instruction decoder,
3... State variable generation circuit, 4... Instruction register, 5.6... Input register, 7...
...Output buffer 7, 8...Address generation circuit, 9...Multiplexer, 10-12...
...Control signal, 14...Storage device, 100-1
17...Bus, OPC...Instruction code, SC...State variable specification code, A, B...Calculation data, X... Calculation result. CA, CB...State variables Cx/Old...How the state variables appear.

Claims (1)

【特許請求の範囲】[Claims] 命令コードと状態変数指定コードとを含む命令および演
算データと状態変数とからな−るデータを記憶する記憶
装置と、前記記憶装置から読み出した前記命令コードと
前記状態変数に従って前記演算データを演算して得られ
た演算結果を前記記憶装置に書き込んで前記演算データ
として記憶させるために出力する演算器と、前記演算結
果と前記記憶装置から読み出した前記状態変数指定コー
ドとに従って前記演算結果と対にして前記記憶装置に書
き込んで記憶させるための状態変数出力を生成するため
の状態変数生成回路とを含むことを特徴とする演算制御
方式。
a storage device for storing instructions including an instruction code and a state variable designation code, and data consisting of operation data and state variables; and a storage device for calculating the operation data according to the instruction code and the state variable read from the storage device. an arithmetic unit that writes the obtained arithmetic result into the storage device and outputs the result to be stored as the arithmetic data; and a computation unit that outputs the arithmetic result to be stored as the arithmetic data in the storage device; and a state variable generation circuit for generating a state variable output to be written to and stored in the storage device.
JP57205729A 1982-11-24 1982-11-24 Arithmetic control system Granted JPS5995646A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57205729A JPS5995646A (en) 1982-11-24 1982-11-24 Arithmetic control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57205729A JPS5995646A (en) 1982-11-24 1982-11-24 Arithmetic control system

Publications (2)

Publication Number Publication Date
JPS5995646A true JPS5995646A (en) 1984-06-01
JPH0233173B2 JPH0233173B2 (en) 1990-07-25

Family

ID=16511706

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57205729A Granted JPS5995646A (en) 1982-11-24 1982-11-24 Arithmetic control system

Country Status (1)

Country Link
JP (1) JPS5995646A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6155731A (en) * 1984-08-28 1986-03-20 Fujitsu Ltd Processor provided with condition code discriminating function
JPS61122747A (en) * 1984-11-14 1986-06-10 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Data processor
US5996070A (en) * 1996-07-30 1999-11-30 Mitsubishi Denki Kabushiki Kaisha Microprocessor capable of executing condition execution instructions using encoded condition execution field in the instructions

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55166739A (en) * 1979-06-14 1980-12-26 Mitsubishi Electric Corp Data processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55166739A (en) * 1979-06-14 1980-12-26 Mitsubishi Electric Corp Data processor

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6155731A (en) * 1984-08-28 1986-03-20 Fujitsu Ltd Processor provided with condition code discriminating function
JPS61122747A (en) * 1984-11-14 1986-06-10 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Data processor
US5996070A (en) * 1996-07-30 1999-11-30 Mitsubishi Denki Kabushiki Kaisha Microprocessor capable of executing condition execution instructions using encoded condition execution field in the instructions

Also Published As

Publication number Publication date
JPH0233173B2 (en) 1990-07-25

Similar Documents

Publication Publication Date Title
JPS6217252B2 (en)
US4539635A (en) Pipelined digital processor arranged for conditional operation
US4773035A (en) Pipelined data processing system utilizing ideal floating point execution condition detection
JPH0348536B2 (en)
JPH03286332A (en) Digital data processor
KR920010335B1 (en) Micro processor and its device
US5390306A (en) Pipeline processing system and microprocessor using the system
US5291615A (en) Instruction pipeline microprocessor
JPS5995646A (en) Arithmetic control system
JPS5826584B2 (en) data processing equipment
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JP2988965B2 (en) Pipeline information processing circuit
JPH07110769A (en) Vliw type computer
JPH0667896A (en) Single chip microcomputer
JP2583614B2 (en) Vector arithmetic unit
JPS58176751A (en) Decoding unit of instruction word
JPS60178539A (en) By-pass control system of information processor
JPS6116334A (en) Data processor
JP2522564B2 (en) Programmable controller
JP2629359B2 (en) Logic simulator
JPS6028014B2 (en) microprocessor
JPH031234A (en) Information processor
JPH01189727A (en) Information processor
JPS6364130A (en) Branching instruction control method
JPS62210539A (en) Electronic computer device