JPS6244657B2 - - Google Patents
Info
- Publication number
- JPS6244657B2 JPS6244657B2 JP56021065A JP2106581A JPS6244657B2 JP S6244657 B2 JPS6244657 B2 JP S6244657B2 JP 56021065 A JP56021065 A JP 56021065A JP 2106581 A JP2106581 A JP 2106581A JP S6244657 B2 JPS6244657 B2 JP S6244657B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- arithmetic
- storage means
- absolute value
- mode
- 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
Links
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000010365 information processing Effects 0.000 claims description 2
- 238000013500 data storage Methods 0.000 claims 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Executing Machine-Instructions (AREA)
Description
本発明はマイクロプログラム制御型のデータ処
理装置における演算論理回路の演算動作の制御を
行なう演算処理装置に関する。
従来、この種の演算処理装置は、2個のオペラ
ンドを格納するデータレジスタと、該オペランド
の演算動作を指定するレジスタと、該オペランド
の演算を行なう演算論理回路(ALU)と、該演
算結果を格納するレジスタとから構成されてい
る。いま、固定小数点データの絶対値を求めよう
とするとオペランドを格納する2個のレジスタの
1つに“0”のデータがセツトされ、他方に該固
定小数点データがセツトされる。次に、該固定小
数点データの最左端ビツトを調べて、該データの
正負が判定される。該データが非負(正または
零)ならば、該演算モードを指定するモードレジ
スタには加算を行なう演算モードがセツトされ、
該データが負ならば該演算データを指定するモー
ドレジスタには減算を行なうモードがセツトされ
る。最後に、演算結果を格納するレジスタに該演
算論理回路の出力がセツトされる。
従つて、このような動作をマイクロプログラム
で制御により達成しようとすると4ステツプを必
要とする。
本発明の目的は固定小数点データの絶対値を求
めるマイクロプログラムのステツプ数を削減でき
るようにした演算処理装置を提供することにあ
る。
本発明の装置は、マイクロプログラム制御型情
報処理装置において、マイクロプログラムにより
指示される演算を行なう演算論理回路と、該演算
論理回路の入力データの条件に応じた演算モード
を選択する演算モード切替回路とを有し、該演算
モード切替回路出力により該演算論理回路の演算
動作を制御することを特徴とする。
次に本発明について図面を参照して詳細に説明
する。
第1図を参照すると本発明の一実施例は2個の
オペランドを格納する4バイトのデータレジスタ
1,2、該オペランドの演算モードを格納するモ
ードレジスタ4、絶対値の演算の指示を行なう制
御レジスタ5、絶対値演算の指示2aと該データ
レジスタ2の最左端ビツト1aとの論理積をとる
アンドゲート7、該アンドゲートの出力3aによ
り演算モードの切替えを行なう演算モード切替回
路6、該演算モード切替回路6により指示された
演算モードで該2個のオペランドの演算を行なう
演算論理回路(ALU)8および該回路8の演算
結果を格納する4バイトの結果レジスタ3から構
成されている。
次に第1図、第1表および第2表を参照しなが
ら本実施例の動作を詳細に説明する。
第1表を参照すると、演算モードMo−M4がそ
れぞれ(1、0、1、1、0)および(1、1、
0、0、1)で減算動作と加算動作とを以下詳細
に説明する。
なお、第2表はモードレジスタ4の出力
(So、S1、S2、S3、S4、C0)が該演算モード切替
回路6によりどのように変化するかを示してい
る。この第2表からも明らかなように、絶対値の
演算指示がない場合に演算モードは変化しない
が、絶対値の演算指示があり、かつ符号が負の場
合には演算モードは変化する。
The present invention relates to an arithmetic processing device that controls arithmetic operations of an arithmetic logic circuit in a microprogram-controlled data processing device. Conventionally, this type of arithmetic processing device has a data register that stores two operands, a register that specifies the arithmetic operation of the operand, an arithmetic logic circuit (ALU) that performs the arithmetic operation of the operand, and an arithmetic logic circuit (ALU) that stores the result of the operation. It consists of registers for storing data. Now, when trying to find the absolute value of fixed-point data, "0" data is set in one of the two registers that store the operand, and the fixed-point data is set in the other. Next, the leftmost bit of the fixed-point data is checked to determine whether the data is positive or negative. If the data is non-negative (positive or zero), an arithmetic mode for addition is set in the mode register specifying the arithmetic mode;
If the data is negative, a mode for subtraction is set in the mode register specifying the operation data. Finally, the output of the arithmetic logic circuit is set in a register that stores the arithmetic result. Therefore, if such an operation is to be achieved by controlling it with a microprogram, four steps are required. SUMMARY OF THE INVENTION An object of the present invention is to provide an arithmetic processing device that can reduce the number of steps in a microprogram for determining the absolute value of fixed-point data. The device of the present invention is a microprogram-controlled information processing device that includes an arithmetic logic circuit that performs arithmetic operations instructed by a microprogram, and an arithmetic mode switching circuit that selects an arithmetic mode according to conditions of input data of the arithmetic logic circuit. and the arithmetic operation of the arithmetic logic circuit is controlled by the output of the arithmetic mode switching circuit. Next, the present invention will be explained in detail with reference to the drawings. Referring to FIG. 1, one embodiment of the present invention includes 4-byte data registers 1 and 2 for storing two operands, a mode register 4 for storing the operation mode of the operands, and a control register for instructing absolute value calculation. A register 5, an AND gate 7 which takes the AND of the absolute value operation instruction 2a and the leftmost bit 1a of the data register 2, an operation mode switching circuit 6 which switches the operation mode based on the output 3a of the AND gate, and the operation It consists of an arithmetic logic circuit (ALU) 8 that performs arithmetic operations on the two operands in the arithmetic mode instructed by the mode switching circuit 6, and a 4-byte result register 3 that stores the arithmetic results of the circuit 8. Next, the operation of this embodiment will be explained in detail with reference to FIG. 1, Tables 1 and 2. Referring to Table 1, the calculation modes Mo-M 4 are (1, 0, 1, 1, 0) and (1, 1, 0), respectively.
0, 0, 1), the subtraction and addition operations will be explained in detail below. Note that Table 2 shows how the outputs (So, S 1 , S 2 , S 3 , S 4 , C 0 ) of the mode register 4 are changed by the operation mode switching circuit 6. As is clear from Table 2, the calculation mode does not change when there is no absolute value calculation instruction, but the calculation mode changes when there is an absolute value calculation instruction and the sign is negative.
【表】【table】
【表】【table】
【表】
例えば、4バイト長固定小数点データXの絶対
値を求める場合には、マイクロプログラムの第1
ステツプにおいて、該データレジスタ1,2には
“0”と該データXとがそれぞれセツトされ、該
モードレジスタ4には、加算のモード(S0、S1、
S2、S3、S4、C0)=(1、1、0、0、1、0)
がセツトされ、該制御レジスタ5には、絶対値の
演算を行なう指示として“1”がセツトされる。
そのとき、該アンドゲート7は開かれて該データ
Xの符号ビツトにより第2表に示すように演算モ
ードが切替えられる。仮に、データXの値が非負
(正または零)で符号ビツトが“0”の場合、該
切替回路6の出力(Mo、M1、M2、M3、M4、
CIN)として該レジスタ4にセツトされた演算モ
ード(1、1、0、0、1、1、0)がそのまま
該演算論理回路8を制御する。この制御に従い
“0+X”が演算されて該データXがそのまま出
力される。しかし、Xの値が負で符号ビツトが
“1”の場合には、該切替回路6の出力は第2表
に示されたように(M0、M1、M2、M3、M4、
CIN)=(1、0、1、1、0、1)となり、該演
算論理回路8では減算が行なわれるので、該デー
タXの2の補数“−X”が出力される。従つて、
該データXの絶対値|X|が求められる。
次のステツプで該データXの絶対値|X|が該
結果レジスタ3にセツトされる。
これは、第3図に示すようにマイクロプログラ
ムにおいて2ステツプで行なうことができる。
同様にして、該モードレジスタ4を(S0、S1、
S2、S3、S4、C0)=(1、0、1、1、0、1)、
すなわち、減算モードにセツトして該データXの
負の絶対値“−|X|”を計算することが可能で
ある。
本発明には、固定小数点データの絶対値を求め
る場合、マイクロプログラムのステツプ数を減ら
すことができるという効果がある。[Table] For example, to find the absolute value of 4-byte fixed-point data X, the first
In the step, the data registers 1 and 2 are set to "0" and the data X, and the mode register 4 is set to the addition mode (S 0 , S 1
S 2 , S 3 , S 4 , C 0 ) = (1, 1, 0, 0, 1, 0)
is set, and "1" is set in the control register 5 as an instruction to perform absolute value calculation.
At that time, the AND gate 7 is opened and the operation mode is switched according to the sign bit of the data X as shown in Table 2. If the value of data
The arithmetic mode (1, 1, 0, 0, 1, 1, 0) set in the register 4 as CIN) directly controls the arithmetic logic circuit 8. According to this control, "0+X" is calculated and the data X is output as is. However , when the value of ,
CIN)=(1, 0, 1, 1, 0, 1), and the arithmetic logic circuit 8 performs subtraction, so that the two's complement of the data X, "-X", is output. Therefore,
The absolute value |X| of the data X is determined. In the next step, the absolute value |X| of the data X is set in the result register 3. This can be done in two steps in the microprogram as shown in FIG. Similarly, the mode register 4 is set to (S 0 , S 1 ,
S 2 , S 3 , S 4 , C 0 )=(1, 0, 1, 1, 0, 1),
That is, it is possible to set the subtraction mode and calculate the negative absolute value "-|X|" of the data X. The present invention has the advantage that the number of microprogram steps can be reduced when determining the absolute value of fixed-point data.
第1図は本発明の一実施例を示す図、第2図は
従来の演算論理回路で絶対値の演算を行なつたと
きのマイクロプログラムの流れを示す図、および
第3図は第1図の一実施例で絶対値の演算を行な
つたときのマイクロプログラムの流れを示す図で
ある。
第1図から第3図において1……オペランド1
のデータレジスタ、2……オペランド2のデータ
レジスタ、3……演算結果レジスタ、4……モー
ドレジスタ、5……制御レジスタ、6……演算モ
ードの切替回路、7……アンドゲート、8……演
算論理回路。
FIG. 1 is a diagram showing an embodiment of the present invention, FIG. 2 is a diagram showing the flow of a microprogram when calculating an absolute value using a conventional arithmetic logic circuit, and FIG. FIG. 3 is a diagram showing the flow of a microprogram when calculating an absolute value in one embodiment of the present invention. In Figures 1 to 3, 1...operand 1
2...Data register of operand 2, 3...Arithmetic result register, 4...Mode register, 5...Control register, 6...Arithmetic mode switching circuit, 7...And gate, 8... Arithmetic logic circuit.
Claims (1)
おいて、それぞれ第1および第2の演算データを
格納する第1および第2のデータ格納手段と、演
算モード情報を格納する演算モード格納手段と、
絶対値の演算を指示する絶対値指示情報を格納す
る指示情報格納手段と、前記絶対値指示情報が供
給されている場合に前記第2の演算データの符号
ビツトがこのデータが正の数または零であること
を示しているときには前記演算モード格納手段に
格納されている前記演算モード情報を出力し前記
符号ビツトがこのデータが負の数であることを示
しているときには前記演算モード格納手段に格納
されている前記演算モード情報を減算演算を指示
する情報に変換して出力する切替制御手段と、前
記第1および第2の演算データに対して前記切替
制御手段から出力される情報で指示される演算を
行なう演算手段と、それぞれ前記演算モード格納
手段、前記指示情報格納手段、前記第1のデータ
格納手段および前記第2のデータ格納手段に加算
演算を指示する情報、前記絶対値指示情報、値が
零のデータおよび絶対値をとるべきデータを同時
に格納するマイクロ命令を含むマイクロプログラ
ムを格納した記憶手段とから構成したことを特徴
とする演算処理装置。1. In a microprogram-controlled information processing device, first and second data storage means for storing first and second calculation data, respectively; calculation mode storage means for storing calculation mode information;
instruction information storage means for storing absolute value instruction information for instructing absolute value calculation; and when the absolute value instruction information is supplied, a sign bit of the second calculation data indicates that the data is a positive number or zero. When the sign bit indicates that this data is a negative number, the arithmetic mode information stored in the arithmetic mode storage means is outputted, and when the sign bit indicates that this data is a negative number, it is stored in the arithmetic mode storage means. a switching control means for converting and outputting the calculation mode information instructing a subtraction operation into information instructing a subtraction operation; arithmetic means for performing an arithmetic operation; information for instructing the arithmetic mode storage means, the instruction information storage means, the first data storage means and the second data storage means to perform an addition operation; the absolute value instruction information; 1. An arithmetic processing device comprising a storage means storing a microprogram including a microinstruction for simultaneously storing data whose value is zero and data which should take an absolute value.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56021065A JPS57136254A (en) | 1981-02-16 | 1981-02-16 | Arithmetic processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56021065A JPS57136254A (en) | 1981-02-16 | 1981-02-16 | Arithmetic processor |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS57136254A JPS57136254A (en) | 1982-08-23 |
JPS6244657B2 true JPS6244657B2 (en) | 1987-09-22 |
Family
ID=12044479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP56021065A Granted JPS57136254A (en) | 1981-02-16 | 1981-02-16 | Arithmetic processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS57136254A (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6123232A (en) * | 1984-07-11 | 1986-01-31 | Nec Corp | Arithmetic unit |
JPS63245525A (en) * | 1987-03-31 | 1988-10-12 | Toshiba Corp | Microprogram processor |
-
1981
- 1981-02-16 JP JP56021065A patent/JPS57136254A/en active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS57136254A (en) | 1982-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0480867A (en) | Arithmetic circuit | |
JPH034936B2 (en) | ||
JPS6244657B2 (en) | ||
JP2557629B2 (en) | Interrupt method | |
JPS6051734B2 (en) | Microprogram control method | |
JPS63111535A (en) | Data processor | |
JPS6057435A (en) | Microprocessor | |
JPS5971542A (en) | Arithmetic processor | |
JPH02176849A (en) | Electronic calculator | |
JPH0749767A (en) | Operation processor provided with saturation processing function | |
JP3139011B2 (en) | Fixed-point processor | |
JPS5839347A (en) | Processor | |
JPS5940665Y2 (en) | Power calculation control device | |
JP3110072B2 (en) | Pre-normalization circuit | |
JPH0480868A (en) | Arithmetic circuit | |
JPH04205559A (en) | Vector arithmetic unit | |
JPS6155731A (en) | Processor provided with condition code discriminating function | |
JPH04107625A (en) | Floating point computing mechanism | |
JPS59223846A (en) | Arithmetic processor | |
JPH01161436A (en) | Arithmetic processor | |
JPH0269826A (en) | System for controlling instruction with condition | |
JPS61296435A (en) | Microprogram control system | |
JPS63279321A (en) | Microprogram controller | |
JPH03269621A (en) | Arithmetic processor | |
JPS61177536A (en) | Arithmetic device |