JP2001034455A - Adding device, subtracting device, multiplying device and dividing device - Google Patents
Adding device, subtracting device, multiplying device and dividing deviceInfo
- Publication number
- JP2001034455A JP2001034455A JP11206501A JP20650199A JP2001034455A JP 2001034455 A JP2001034455 A JP 2001034455A JP 11206501 A JP11206501 A JP 11206501A JP 20650199 A JP20650199 A JP 20650199A JP 2001034455 A JP2001034455 A JP 2001034455A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bit
- addition
- bias
- bits
- 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.)
- Pending
Links
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、バイアス表現され
た2値の和又は差を求める加算装置,減算装置、及び浮
動小数点表示形式で表現された2値の積又は商を求める
乗算装置,除算装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an adder and a subtractor for obtaining a sum or difference of bias-expressed binary values, a multiplication device for obtaining a product or quotient of binary values expressed in a floating-point notation format, and a division. Related to the device.
【0002】[0002]
【従来の技術】従来より、浮動小数点形式にて数値を表
す方法の一つとして、IEEE−745規格で定められ
たもの(以下「標準形式」という)が知られている。こ
の標準形式のフォーマットを図7に示す。図示されてい
るように、標準形式には、32ビットで数値を表す単精
度浮動小数点形式と、64ビットで数値を表す倍精度浮
動小数点形式とがあり、このうち、単精度浮動小数点形
式(図7(a)参照)では、符号部sに1ビット,指数
部eに8ビット,仮数部fに23ビットが割り当てられ
ており、一方、倍精度浮動小数点形式(図7(b)参
照)では、符号部sに1ビット,指数部eに11ビッ
ト,仮数部fに52ビットが割り当てられている。2. Description of the Related Art Conventionally, as a method of expressing a numerical value in a floating-point format, a method defined by the IEEE-745 standard (hereinafter referred to as a "standard format") is known. FIG. 7 shows the format of this standard format. As shown in the figure, the standard format includes a single-precision floating-point format in which a numerical value is represented by 32 bits and a double-precision floating-point format in which a numerical value is represented by 64-bits. 7 (a), 1 bit is assigned to the sign part s, 8 bits to the exponent part e, and 23 bits to the mantissa part f. On the other hand, in the double precision floating point format (see FIG. 7 (b)). , One bit is allocated to the sign part s, 11 bits are allocated to the exponent part e, and 52 bits are allocated to the mantissa part f.
【0003】なお、単精度と倍精度とでは各部のビット
幅が異なるだけで、いずれの形式でも考え方は全く同じ
であるため、以下では、具体的な例を示す場合に、特に
断らない限り、単精度浮動小数点形式を用いるものとす
る。このうち、符号部sは、正符号を0,負符号を1で
表すよう定義されている。[0003] Incidentally, since the concept is completely the same in each format only in the bit width of each part between single precision and double precision, in the following, specific examples will be described unless otherwise specified. Use single precision floating point format. The sign part s is defined so that a positive sign is represented by 0 and a negative sign is represented by 1.
【0004】また、指数部eは、2の補数形式で表現さ
れた整数値にバイアス値127(01111111B)を加算し
てなるバイアス表現された値を用いることで、−126
〜+127の範囲の整数値を、連続した正整数値1〜2
54(00000001B〜11111110B)に対応させて扱うよう
に定義されている。但し、00000000B及び11111111B
は、無限大や非数,後述する非正規化数等、特殊な状態
を表すために上記数値の範囲から除外されている。The exponent part e uses a bias-expressed value obtained by adding a bias value 127 (01111111B) to an integer value expressed in a two's complement format, thereby obtaining -126.
Integer values in the range of +127 to consecutive positive integers 1-2
54 (00000001B to 11111110B). However, 00000000B and 11111111B
Is excluded from the range of the above numerical values in order to represent a special state such as infinity, not-a-number, and denormalized number described later.
【0005】なお、バイアス値は、指数部eのビット数
をnとした場合、2n-1 −1で表されるものである。従
って、倍精度では、バイアス値は1023( 011111111
11B)となり、−1022〜+1022の範囲の整数を
連続した整数値(00000000001B〜11111111110B)とし
て扱うように定義されている。The bias value is represented by 2 n -1 -1 when the number of bits of the exponent part e is n. Therefore, in double precision, the bias value is 1023 (0111111111).
11B), and is defined to treat integers in the range of −1022 to +1022 as continuous integer values (00000000001B to 11111111110B).
【0006】一方、仮数部fは、指数部eが上記バイア
ス表現された値(00000001B〜11111110B)である場合
には、数値を1.XXX…Xという形式で表した時の小数点以
下23ビット(倍精度では52ビット)の値を表し、ま
た、指数部eが00000000Bである場合には、数値を0.XX
X…Xという形式で表した時の少数点以下23ビットの値
を表すように定義されている。なお、前者の場合に表さ
れる数値を正規化数、後者の場合に表される数値を非正
規化数と呼ぶ。On the other hand, if the exponent part e is a value expressed in the bias expression (00000001B to 11111110B), the mantissa part f has 23 bits after the decimal point when the numerical value is expressed in the form of 1.XXX. When the exponent part e is 00000000B, the value is expressed as 0.XX
It is defined to represent a value of 23 bits below the decimal point when represented in the format X... X. The numerical value represented in the former case is called a normalized number, and the numerical value represented in the latter case is called a denormalized number.
【0007】即ち、浮動小数点形式で表現されたデータ
(正規化時)は、単精度の場合には、(−1)s×1.
f×2e-127、倍精度の場合には、(−1)s ×1.f
×2e- 1023を表すことになる。ところで、浮動小数点形
式で表された2数の乗除算を実行する場合、被乗数デー
タ及び乗数データの指数部に対して、加減算を実行する
必要がある。That is, the data expressed in the floating-point format (at the time of normalization) is (-1) s × 1.
f × 2 e−127 , and in the case of double precision, (−1) s × 1. f
× 2 e− 1023 . By the way, when performing multiplication / division of two numbers expressed in a floating-point format, it is necessary to perform addition / subtraction for the exponent part of the multiplicand data and the multiplier data.
【0008】そして、バイアス表現された被乗数データ
の指数部(以下「第1データ」という)をe1、乗数デ
ータの指数部(以下「第2データ」という)をe2、e
1,e2を2の補数で表現したデータ(以下「実第1デ
ータ」「実第2データ」という)をE1,E2とし、更
に、E1とE2との加算値(以下「実加算結果データ」
という)をE3、E1とE2との減算値(以下「実減算
結果データ」という)をE4、E3,E4をバイアス表
現したデータ(以下「加算結果データ」「減算結果デー
タ」という)をe3,e4とすると、次の(1)〜
(6)式が成立する。The exponent part of the multiplicand data expressed as bias (hereinafter referred to as "first data") is e1, and the exponent part of the multiplier data (hereinafter referred to as "second data") is e2 and e.
Data (hereinafter, “real first data” and “real second data”) in which 1,1 and e2 are represented by 2's complements are E1 and E2, and furthermore, an added value of E1 and E2 (hereinafter “real addition result data”)
E3, and the subtraction value of E1 and E2 (hereinafter, referred to as "actual subtraction result data") is E4, and the data expressing the bias of E4, E3, and E4 (hereinafter, referred to as "addition result data" and "subtraction result data") are e3. Assuming e4, the following (1) to
Equation (6) holds.
【0009】 e1[7:0]=E1[7:0]+01111111 (1) e2[7:0]=E2[7:0]+01111111 (2) e3[7:0]=E3[7:0]+01111111 (3) e4[7:0]=E4[7:0]+01111111 (4) E3[7:0]=E1[7:0]+E2[7:0] (5) E4[7:0]=E1[7:0]−E2[7:0] (6) 但し、X[i]は、2進数で表されたデータXの第iビ
ット目の値を表し、X[i:j]は、第iビット目から
第jビット目までの値を表すものとする。E1 [7: 0] = E1 [7: 0] +01111111 (1) e2 [7: 0] = E2 [7: 0] +01111111 (2) e3 [7: 0] = E3 [7: 0] +01111111 (3) e4 [7: 0] = E4 [7: 0] +01111111 (4) E3 [7: 0] = E1 [7: 0] + E2 [7: 0] (5) E4 [7: 0] = E1 [7: 0] -E2 [7: 0] (6) Here, X [i] represents the value of the i-th bit of the data X expressed in binary, and X [i: j] is The values from the i-th bit to the j-th bit are represented.
【0010】ここで、(3)式に(5)式を代入すると
(7)式が得られ、その(7)式に更に(1)(2)式
を変形して代入すると(8)式が得られる。 e3[7:0]=(E1[7:0]+E2[7:0])+01111111 (7) =e1[7:0]+e2[7:0]−01111111 (8) 従って、浮動小数点形式で表現された2数の乗算を実行
する場合、指数部eに対する演算では1回の加算と1回
の減算とが必要となる。そして、このような演算処理を
実現するには、例えば、図8(a)に示すように、第1
データe1及び第2データe2を加算する加算器102
と、この加算器102の出力からバイアス値を減算する
減算器104とを設けるか、或いは、図8(b)に示す
ように、第2データe2からバイアス値を減算する減算
器106と、第1データe1に減算器106の出力を加
算する加算器108とを設ける必要があった。Here, when equation (5) is substituted into equation (3), equation (7) is obtained. When equation (1) and (2) are further transformed and substituted into equation (7), equation (8) is obtained. Is obtained. e3 [7: 0] = (E1 [7: 0] + E2 [7: 0]) + 01111111 (7) = e1 [7: 0] + e2 [7: 0] −01111111 (8) Therefore, expressed in floating point format When the multiplication of two numbers is performed, one addition and one subtraction are required in the operation for the exponent part e. In order to realize such an arithmetic processing, for example, as shown in FIG.
Adder 102 for adding data e1 and second data e2
And a subtractor 104 for subtracting the bias value from the output of the adder 102, or a subtractor 106 for subtracting the bias value from the second data e2, as shown in FIG. It was necessary to provide an adder 108 for adding the output of the subtractor 106 to one data e1.
【0011】一方、(4)式に(6)式を代入すると
(9)式が得られ、その(9)式に更に(1)(2)式
を変形して代入すると(10)式が得られる。 e4[7:0]=(E1[7:0]−E2[7:0])+01111111 (9) =e1[7:0]−e2[7:0]+01111111 (10) 従って、浮動小数点形式で表現された2数の除算を実行
する場合、指数部eに対する演算では1回の減算と1回
の加算とが必要となる。そして、このような演算処理を
実現するには、例えば、図9(a)に示すように、第1
データe1から第2データe2を減算する減算器112
と、この減算器112の出力にバイアス値を加算する加
算器114とを設けるか、或いは、図9(b)に示すよ
うに、第2データe2からバイアス値を減算する減算器
116と、第1データe1から減算器116の出力を減
算する減算器118とを設ける必要があった。On the other hand, if equation (6) is substituted into equation (4), equation (9) is obtained. If equation (1) and (2) are further transformed and substituted into equation (9), equation (10) becomes can get. e4 [7: 0] = (E1 [7: 0] −E2 [7: 0]) + 01111111 (9) = e1 [7: 0] −e2 [7: 0] +01111111 (10) Therefore, in floating point format In the case of performing the division by two expressed, one subtraction and one addition are required for the operation on the exponent part e. In order to realize such an arithmetic processing, for example, as shown in FIG.
Subtractor 112 for subtracting second data e2 from data e1
And an adder 114 for adding a bias value to the output of the subtractor 112, or a subtractor 116 for subtracting the bias value from the second data e2, as shown in FIG. It was necessary to provide a subtractor 118 for subtracting the output of the subtractor 116 from one data e1.
【0012】[0012]
【発明が解決しようとする課題】つまり、浮動小数点形
式で表現された数値の指数部(第1及び第2データ)e
1,e2は、いずれにもバイアス値が加算されているた
め、単純に加減算を行うだけでは、正しい結果(加算結
果データe3及び減算結果データe4)を得ることがで
きず、加減算により重複或いは相殺されるバイアス値を
補償するための演算器104,106,114,116
が別途必要となり、演算時間と回路規模の増大を招いて
しまうという問題があった。That is, the exponent part (first and second data) e of the numerical value represented in the floating point format
1 and e2, to which bias values have been added, it is not possible to obtain correct results (addition result data e3 and subtraction result data e4) by simply performing addition and subtraction, and to add or subtract by addition and subtraction. Calculators 104, 106, 114, 116 for compensating for the bias value
However, there is a problem that the calculation time and the circuit scale are increased separately.
【0013】これに対して特開平5−27949号公報
には、バイアス表現された数値の和に予め1を加算して
おき、後からバイアス値に1を加えた引数(10000000
B)にて減算する装置が開示されている。この場合、バ
イアス値を補償するための演算を、引数が1となる上位
ビットのみで行えばよいため、装置構成を簡略化するこ
とができる。On the other hand, Japanese Patent Application Laid-Open No. Hei 5-27949 discloses an argument (1,000,000) in which 1 is added in advance to the sum of numerical values represented by bias, and 1 is added to the bias value later.
A device for subtraction in B) is disclosed. In this case, since the operation for compensating the bias value need only be performed using the upper bits whose argument is 1, the configuration of the device can be simplified.
【0014】しかし、この回路構成では、オーバーフロ
ーやアンダーフローの検出等のために、ビット数が最上
位側に拡張されている場合、これに伴って引数も拡張す
る必要がある。例えば、図10に示すように、2ビット
拡張した場合には、バイアス値を補償するために、3ビ
ットの加減算を行う演算器K2が必要となり、装置小型
化の妨げとなっていた。However, in this circuit configuration, if the number of bits is extended to the most significant side to detect an overflow or an underflow, the argument must be extended accordingly. For example, as shown in FIG. 10, in the case where two bits are extended, an arithmetic unit K2 for performing addition and subtraction of three bits is required to compensate for a bias value, which hinders miniaturization of the device.
【0015】本発明は、上記問題点を解決するために、
バイアス表現された2数の加減算を行う各種演算装置の
構成を簡易化することを目的とする。The present invention has been made in order to solve the above problems.
It is an object of the present invention to simplify the configuration of various arithmetic devices that perform addition and subtraction of two numbers represented by a bias.
【0016】[0016]
【課題を解決するための手段】ここで、バイアス表現さ
れた2値(第1データe1及び第2データe2)の加算
について、上記(1)〜(6)式に基づいて考える。ま
ず、(5)式の両辺にバイアス値を加算すると(11)
式が得られ、この(11)式に(1)(3)式を変形し
て代入すると(12)式が得られる。Here, the addition of the binary values (the first data e1 and the second data e2) represented by the bias is considered based on the above equations (1) to (6). First, when a bias value is added to both sides of equation (5), (11)
Equation (12) is obtained by transforming equations (1) and (3) into equation (11).
【0017】 E3[7:0]+01111111=E1[7:0]+E2[7:0]+01111111 (11) e3[7:0]=e1[7:0]+E2[7:0] (12) 一方、(2)式を変形すると(13)式が得られ、バイ
アス値を2の補数を用いて表すことにより(14)式が
得られる。更に、2の補数を用いて表現されたバイアス
値を10000000Bと1Bとに分離すると共に、第2データ
e2の最上位ビットe2[7]と、その他のビットe2
[6:0]と分離して式を整理すると(15)式が得ら
れる。但し、 ~XはXの否定値、{X,Y}はX(上位
ビット)とY(下位ビット)との連結を表すものとす
る。E3 [7: 0] + 01111111 = E1 [7: 0] + E2 [7: 0] +01111111 (11) e3 [7: 0] = e1 [7: 0] + E2 [7: 0] (12) On the other hand , (2) is modified to obtain expression (13), and by expressing the bias value using two's complement, expression (14) is obtained. Further, the bias value expressed using the two's complement is separated into 10000000B and 1B, and the most significant bit e2 [7] of the second data e2 and the other bits e2
Equation (15) is obtained by rearranging the equations separately from [6: 0]. Here, ~ X is a negative value of X, and {X, Y} represents a connection between X (upper bit) and Y (lower bit).
【0018】 E2[7:0]=e2[7:0]−01111111 (13) =e2[7:0]+10000001 (14) =e2[7:0]+10000000+1 ={(e2[7]+1),(e2[6:0]+0000000)}+1 ={~e2[7],e2[6:0]}+1 (15) そして、(12)式に(15)式を代入すれば、(1
6)式が得られることになる。E2 [7: 0] = e2 [7: 0] -01111111 (13) = e2 [7: 0] +10000001 (14) = e2 [7: 0] + 10000000 + 1 = {(e2 [7] +1), (E2 [6: 0] +0000000)} + 1 = {{e2 [7], e2 [6: 0]} + 1 (15) Then, if the expression (15) is substituted into the expression (12), (1)
Equation 6) is obtained.
【0019】 e3[7:0]=e1[7:0]+{~e2[7],e2[6:0]}+1 (16) つまり、(16)式から明らかなように、バイアス表現
された第1及び第2データe1,e2から、バイアス表
現された加算結果データe3を得るには、第2データの
最上位ビットを反転した値と第1データとの和に1を加
えればよいのである。E3 [7: 0] = e1 [7: 0] + {~ e2 [7], e2 [6: 0]} + 1 (16) That is, as is apparent from the equation (16), the bias expression is performed. From the first and second data e1 and e2, it is sufficient to add 1 to the sum of the value obtained by inverting the most significant bit of the second data and the first data in order to obtain the addition result data e3 represented by the bias. is there.
【0020】そこで、請求項1記載の加算装置では、第
2データの最上位ビットを反転させたnビットのデータ
を出力する反転手段と、この反転手段が出力するデータ
と第1データとの和に1を加算してなるnビットの演算
結果を、加算結果データとして出力する加算増分手段と
を備えることにより、上記(16)式に相当する演算処
理を実現するように構成した。Therefore, in the adder according to the first aspect, inverting means for outputting n-bit data obtained by inverting the most significant bit of the second data, and the sum of the data output by the inverting means and the first data. And an addition increment means for outputting an n-bit operation result obtained by adding 1 to the result data as addition result data, thereby realizing the operation process corresponding to the above equation (16).
【0021】特に、加算増分手段は、例えば、請求項2
記載のように、加算すべき一対のデータの両最下位ビッ
トに対する演算を、キャリー入力が1に固定された全加
算器を用いて行うように構成すれば、1を加算するため
に、別途、特別な構成を設ける必要がない。In particular, the adding increment means is, for example,
As described above, if the operation on both least significant bits of a pair of data to be added is performed using a full adder in which the carry input is fixed to 1, in order to add 1, 1 There is no need to provide a special configuration.
【0022】つまり、本発明の加算装置によれば、2の
補数形式で表現された2数の加算を行う加算器以外に、
1ビットを反転させる反転手段を設けるという極めて簡
易な構成にて、バイアス表現された2数の加算処理を実
現できる。なお、加算増分手段は、例えば、請求項3記
載のように、加算すべき一対のデータの両最下位ビット
に対する演算を、この両最下位ビットの排他的否定論理
和を求める第1の論理演算手段、及び両最下位ビットの
論理和を求める第2の論理演算手段を用いて行うように
構成することができ、この場合、第1の論理演算手段の
出力を加算結果データの最下位ビットとし、第2の論理
演算手段の出力を上位ビットへのキャリーとすればよ
い。That is, according to the adder of the present invention, in addition to the adder for adding two numbers represented in two's complement format,
With a very simple configuration of providing an inverting means for inverting one bit, it is possible to realize an addition process of two numbers expressed in bias. For example, the addition increment means performs an operation on both least significant bits of a pair of data to be added and a first logical operation for obtaining an exclusive NOR of these two least significant bits. Means and a second logical operation means for calculating the logical sum of both least significant bits. In this case, the output of the first logical operation means is used as the least significant bit of the addition result data. , The output of the second logical operation means may be a carry to the upper bits.
【0023】つまり、キャリー入力が1に固定された全
加算器の論理値表は、図6(b)に示すようなものとな
るため、最下位ビットの演算に関しては、全加算器を用
いることなく、このような単純な構成にて実現すること
ができるのである。次に、請求項4記載の加算装置で
は、請求項1記載の加算装置とは異なり、反転手段の出
力及び第1データが、加算増分手段に直接入力されるの
ではなく、第1の拡張手段にて、第1データの最上位ビ
ット側を2ビット0拡張したn+2ビットのデータ及び
第2の拡張手段にて、反転手段が出力するnビットのデ
ータを2ビット符号拡張したn+2ビットのデータが加
算増分手段に入力されるように構成されている。In other words, the logical value table of the full adder in which the carry input is fixed at 1 is as shown in FIG. 6 (b). Instead, it can be realized with such a simple configuration. Next, in the adder according to the fourth aspect, unlike the adder according to the first aspect, the output of the inversion means and the first data are not directly input to the addition increment means, but the first expansion means. The n + 2 bit data obtained by extending the most significant bit side of the first data by 2 bits 0 and the n + 2 bit data obtained by extending the n bit data output from the inverting means by 2 bit sign by the second extending means are It is configured to be input to the addition increment means.
【0024】このように構成された本発明の加算装置で
は、ビット幅の拡張を行う前に反転処理を行っているた
め、従来装置のように、バイアス値を補償する処理を行
うための構成が、拡張したビット幅に応じて増大するこ
とがなく、ビット幅の拡張の有無に関わらず装置を小型
に構成できる。In the adder of the present invention configured as described above, since the inversion process is performed before the bit width is expanded, the configuration for performing the process of compensating for the bias value is different from the conventional device. Thus, the device does not increase in accordance with the expanded bit width, and the apparatus can be made compact regardless of whether the bit width is expanded.
【0025】なお、符号拡張とは、データの最上位ビッ
ト側にその最上位ビットと同じ値を有するビットを追加
することを意味し、0拡張とは、データの最上位ビット
側に値が‘0’のビットを追加することを意味する。そ
して、第1の拡張手段にて0拡張するのは、バイアス表
現された第1及び第2データは、上述したように000000
01B〜11111110Bの範囲の符号無し数として扱われてい
るため、処理が加えられることなく第1の拡張手段に供
給される第1データは、常に正数となるためである。The sign extension means that a bit having the same value as the most significant bit is added to the most significant bit of the data, and the 0 extension means that the value is added to the most significant bit of the data. This means adding a bit of 0 '. The reason why the first expanding means extends the data to 0 is that the first and second data represented by the bias are 000000 as described above.
This is because the first data supplied to the first expanding means without any processing is always a positive number, since it is treated as an unsigned number in the range of 01B to 11111110B.
【0026】一方、第2の拡張手段にて符号拡張するの
は、第2の拡張手段に供給されるデータは、最上位ビッ
トを反転させる処理が加えられているためであり、即
ち、最上位ビットを反転させるのは、ここでは、バイア
ス値より1だけ大きい数を減算することに相当する。そ
のため、第2の拡張手段に供給されるデータは、バイア
ス表現されていない実第2データより1だけ小さい符号
有りデータに変換されることになり、正数,負数いずれ
の場合もあり得るためである。On the other hand, the reason why the sign is extended by the second extension means is that the data supplied to the second extension means has been subjected to a process of inverting the most significant bit, that is, the most significant bit. Inverting the bits here corresponds to subtracting a number that is one greater than the bias value. Therefore, the data supplied to the second expanding means is converted into signed data which is smaller by 1 than the actual second data which is not expressed in a bias, and may be either a positive number or a negative number. is there.
【0027】そして、加算増分手段では、nビットでは
なく、n+2ビットのデータを処理するものが用いら
れ、この加算増分手段のn+2ビットの演算結果のう
ち、下位nビットを加算結果データとして出力し、上位
2ビットを加算結果データのオーバーフロー或いはアン
ダーフローを判定するための例外判定データとして出力
するようにされている。The addition incrementing means uses data processing of n + 2 bits instead of n bits. Of the n + 2 bits operation results of the addition incrementing means, the lower n bits are output as addition result data. , The upper two bits are output as exception determination data for determining overflow or underflow of the addition result data.
【0028】この例外判定データの上位ビットは、バイ
アス表現された加算結果データの正負を表し、また、下
位ビットは、加算結果データが正数の時に、n+1ビッ
トへの桁上がりの有無を表している。つまり、加算増分
手段からのn+2ビットの出力データが負数となってい
る場合にはアンダーフロー、n+2ビットの出力データ
が正数であり且つn+1ビット目に桁上がりしている場
合にはオーバーフローであると判定することができる。The upper bits of the exception determination data represent the sign of the addition result data expressed in a biased manner, and the lower bits represent the presence or absence of a carry to the (n + 1) th bit when the addition result data is a positive number. I have. That is, when the output data of n + 2 bits from the addition increment means is a negative number, an underflow occurs, and when the output data of the n + 2 bits is a positive number and carries to the (n + 1) th bit, an overflow occurs. Can be determined.
【0029】従って、例えば、請求項5記載のように、
例外判定データの上位ビットの反転値と下位ビットとの
論理積を求める第3の論理演算手段を備えておけば、第
3の論理演算手段の出力を、加算結果データがオーバー
フローしていることを表すオーバーフロー例外信号と
し、例外判定データの上位ビットを、加算結果データが
アンダーフローしていることを表すアンダーフロー例外
信号としてそのまま用いることができる。Therefore, for example, as described in claim 5,
If the third logical operation means for calculating the logical product of the inverted value of the upper bit of the exception determination data and the lower bit is provided, the output of the third logical operation means can be used to determine that the addition result data overflows. The upper bit of the exception determination data can be used as it is as an underflow exception signal indicating that the addition result data underflows.
【0030】なお、請求項4又は請求項5記載の加算装
置に、請求項2及び請求項3に開示された加算増分手段
の構成を適用してもよい。次に、バイアス表現された2
値(第1データe1及び第2データe2)の減算につい
て考える。The configuration of the addition increment means disclosed in claims 2 and 3 may be applied to the addition device according to claim 4 or 5. Next, the biased expression 2
Consider subtraction of values (first data e1 and second data e2).
【0031】まず、(6)式の両辺にバイアス値を加算
すると(17)式が得られ、この(17)式に(1)
(4)式を変形して代入すると(18)式が得られる。 E4[7:0]+01111111=E1[7:0]−E2[7:0]+01111111 (17) e4[7:0]=e1[7:0]−E2[7:0] (18) 一方、(2)式を変形すると(19)式が得られ、第2
データe2[7:0]を2の補数形式で表現して式を整
理するすることにより(20)式が得られ、更に、第2
データe2の最上位ビットe2[7]と、その他のビッ
トe2[6:0]と分離して式を整理すると(21)式
が得られる。First, when a bias value is added to both sides of the equation (6), the equation (17) is obtained, and the equation (17) is added to the equation (17).
By transforming equation (4) and substituting, equation (18) is obtained. E4 [7: 0] + 01111111 = E1 [7: 0] −E2 [7: 0] +01111111 (17) e4 [7: 0] = e1 [7: 0] −E2 [7: 0] (18) By transforming equation (2), equation (19) is obtained.
The expression (20) is obtained by expressing the data e2 [7: 0] in a two's complement format and rearranging the expression.
By rearranging the expression by separating the most significant bit e2 [7] of the data e2 from the other bits e2 [6: 0], the expression (21) is obtained.
【0032】 -E2[7:0]=-e2[7:0]+01111111 (19) =(~e2[7:0]+1)+01111111 =~e2[7:0]+10000000 (20) ={(~e2[7]+1),(~e2[6:0]+0000000)} ={e2[7],~e2[6:0]} (21) そして、(18)式に(21)式を代入すれば、(2
2)式が得られることになる。-E2 [7: 0] =-e2 [7: 0] +01111111 (19) = (~ e2 [7: 0] +1) + 01111111 = ~ e2 [7: 0] +10000000 (20) = {(~ e2 [7] +1), (~ e2 [6: 0] +0000000)} = {e2 [7], ~ e2 [6: 0]} (21) Then, substitute equation (21) into equation (18). If (2
Equation 2) is obtained.
【0033】 e4[7:0]=e1[7:0]+{e2[7],~e2[6:0]} (22) つまり、(22)式から明らかなように、バイアス表現
された第1及び第2データe1,e2から、バイアス表
現された減算結果データe4を得るには、第2データe
2(減算データ)の最上位ビット以外を反転した値と、
第1データe1(被減算データ)との和を求めればよい
のである。E4 [7: 0] = e1 [7: 0] + {e2 [7], ~ e2 [6: 0]} (22) In other words, as is clear from the equation (22), the bias expression is performed. To obtain the subtraction result data e4 expressed in a bias form from the first and second data e1 and e2, the second data e
A value obtained by inverting the bits other than the most significant bit of 2 (subtraction data);
What is necessary is just to obtain the sum with the first data e1 (subtracted data).
【0034】そこで、請求項6記載の減算装置では、減
算データの最上位ビット以外を反転させたnビットのデ
ータを出力する反転手段と、該反転手段が出力するデー
タと前記被減算データとを加算してなるnビットの演算
結果を、減算結果データとして出力する加算手段とを備
えることにより、上記(22)式に相当する演算処理を
実現するように構成した。Therefore, in the subtraction device according to the present invention, the inversion means for outputting n-bit data obtained by inverting other than the most significant bit of the subtraction data, and the data output by the inversion means and the subtracted data are used. By providing an addition means for outputting an n-bit operation result of the addition as subtraction result data, an operation process corresponding to the above equation (22) is realized.
【0035】即ち、本発明の減算装置によれば、2の補
数形式で表現された2数の加算を行う加算器以外に、減
算データの最上位ビット以外のn−1ビットを反転させ
る反転手段を設けるという極めて簡易な構成にて、バイ
アス表現された2数の減算処理を実現できる。That is, according to the subtraction apparatus of the present invention, in addition to the adder for adding two numbers expressed in two's complement format, inverting means for inverting n-1 bits other than the most significant bit of the subtraction data With the extremely simple configuration of providing the above, it is possible to realize a subtraction process of two numbers in a bias expression.
【0036】ところで、請求項1ないし請求項5いずれ
か記載の加算装置は、例えば、請求項7記載のように、
絶対値表現された2進数で表される仮数部、バイアス表
現された2進数で表される指数部、前記仮数部の正負を
表す符号部からなる浮動小数点形式で表現された被乗数
データ及び乗数データの積を算出する乗算装置におい
て、被乗数データ及び乗数データの両指数部の和を求め
る装置として、好適に用いることができる。The adder according to any one of claims 1 to 5 is, for example, as follows.
Multiplicand data and multiplier data expressed in a floating-point format including a mantissa represented by a binary number represented by an absolute value, an exponent represented by a binary number represented by a bias, and a sign representing the sign of the mantissa. Can be suitably used as a device for calculating the sum of both exponents of multiplicand data and multiplier data.
【0037】また、請求項6記載の減算装置は、例え
ば、請求項8記載のように、同じく浮動小数点形式で表
現された被除数データ及び除数データの商を算出する除
算装置において、被除数データ及び除数データの両指数
部の差を求める装置として、好適に用いることができ
る。According to a sixth aspect of the present invention, there is provided a subtraction apparatus for calculating a quotient of dividend data and divisor data also expressed in a floating-point format. It can be suitably used as a device for determining the difference between both exponents of data.
【0038】[0038]
【発明の実施の形態】以下に本発明の実施形態を図面と
共に説明する。 [第1実施形態]図1は、2の補数形式で表現された8
ビットのデータに、バイアス値127(=27 −1=01
111111B)を加算してなるバイアス表現された第1デー
タe1及び第2データe2の加算処理を行い、バイアス
表現された8ビットの加算結果データe3を出力する第
1実施形態の加算装置の構成図である。また、図2は、
本実施形態の加算装置が適用された、単精度浮動小数点
形式で表現された一対の入力データD1,D2の積を求
める乗算装置の概略構成を表すブロック図である。Embodiments of the present invention will be described below with reference to the drawings. [First Embodiment] FIG. 1 is a block diagram of an 8 expressed in 2's complement format.
In the bit data, the bias value 127 (= 2 7 -1 = 01)
111111B) is a configuration diagram of the adder of the first embodiment that performs an addition process on the first data e1 and the second data e2 represented by the bias, and outputs 8-bit addition result data e3 represented by the bias. It is. Also, FIG.
FIG. 2 is a block diagram illustrating a schematic configuration of a multiplication device to which a product of a pair of input data D1 and D2 expressed in a single precision floating point format is applied, to which the addition device according to the embodiment is applied.
【0039】図2に示すように、乗算装置MULは、両
入力データD1,D2の符号部s1,s2に基づき、両
者の排他的論理和を求めることにより、出力データDo
の符号を求める符号演算部M1と、両入力データD1,
D2の指数部e1,e2に基づき、両者の加算値を求め
る指数加算部M2と、両入力データD1,D2の仮数部
f1,f2に基づき、両者の乗算値を求める仮数乗算部
M3とを備えている。As shown in FIG. 2, the multiplication device MUL obtains the output data Do by calculating the exclusive OR of the input data D1 and D2 based on the sign sections s1 and s2 of the input data D1 and D2.
A code operation unit M1 for obtaining the sign of
An exponent addition unit M2 for obtaining an addition value of both based on exponent parts e1 and e2 of D2, and a mantissa multiplication unit M3 for obtaining a multiplication value of both based on mantissa parts f1 and f2 of both input data D1 and D2. ing.
【0040】また乗算装置MULは、仮数乗算部M3で
の乗算結果f3を、“1.XXX…X”の正規化された形式と
なるようにシフトさせる仮数正規化部M4と、仮数正規
化部M4にて正規化された乗算結果f3’を、仮数部に
割り当てられたビット数からはみ出す部分(小数点以下
24桁目以降)に対して丸め処理(四捨五入/切り捨て
/切り上げのいずれか)を行うと共に、丸め処理の結
果、整数部分の桁上がりが生じた場合には、再度正規化
を行う仮数丸め部M5と、仮数正規化部M4及び仮数丸
め部M5での正規化により乗算結果をシフトさせた分だ
け、指数加算部M2での加算結果e3を増減させる指数
補正部M6とを備えている。The multiplication device MUL further includes a mantissa normalizing section M4 for shifting the multiplication result f3 in the mantissa multiplying section M3 so as to have a normalized form of "1.XXX ... X", and a mantissa normalizing section M4. The multiplication result f3 ′ normalized in M4 is subjected to a rounding process (any of rounding / rounding down / rounding up) for a portion (from the 24th digit after the decimal point) protruding from the number of bits allocated to the mantissa. If, as a result of the rounding process, a carry of an integer part occurs, the multiplication result is shifted by mantissa rounding unit M5 for normalization again and normalization in mantissa normalizing unit M4 and mantissa rounding unit M5. An exponent correction unit M6 for increasing or decreasing the addition result e3 in the exponent addition unit M2 by an amount.
【0041】そして、符号演算部M1での演算結果s
o、指数補正部M6にて補正された加算結果データe
o、及び仮数正規化部M4や仮数丸め部M5にて処理さ
れた乗算結果データfoが、出力データDoの符号部s
o,指数部eo,仮数部foとして、出力されるように
構成されている。Then, the operation result s in the sign operation unit M1
o, addition result data e corrected by the exponent correction unit M6
o and the multiplication result data fo processed by the mantissa normalization unit M4 and the mantissa rounding unit M5 are output to the sign unit s of the output data Do.
o, exponent eo, and mantissa fo.
【0042】このうち指数加算部M2が、本実施形態の
加算装置10により構成されており、図1(a)に示す
ように、本実施形態の加算装置10は、第2データe2
を、その最上位ビット(MSB)e2[7]のみを反転
させて出力する反転手段としての反転回路12と、第1
のデータe1及び反転回路12が出力するデータ{~e2
[7],e2[6:0]}を加算入力とする加算増分手段としての
8ビット加算器14とからなる。The exponent adder M2 is composed of the adder 10 of the present embodiment. As shown in FIG. 1A, the adder 10 of the present embodiment includes the second data e2.
Circuit 12 as inverting means for inverting and outputting only the most significant bit (MSB) e2 [7] of the first
Data e1 and data {to e2 output by the inversion circuit 12.
[7], e2 [6: 0]}, and an 8-bit adder 14 as an addition incrementing means.
【0043】なお、8ビット加算器14は、図1(b)
に示すように、8個の全加算器F0〜F7からなり、各
キャリー出力が直近上位ビットを処理する全加算器のキ
ャリー入力となるように接続された周知のものである。
但し、最下位ビットの加算を行う全加算器F0のキャリ
ー入力は、1に固定されている。It is to be noted that the 8-bit adder 14 is provided in FIG.
As shown in FIG. 1, the known adder includes eight full adders F0 to F7, and each carry output is connected so as to be a carry input of a full adder that processes the most significant bit.
However, the carry input of the full adder F0 for adding the least significant bit is fixed to 1.
【0044】このように構成された本実施形態の加算装
置10では、(16)式ひいては(8)式に示された内
容の演算を実現し、バイアス表現された8ビットの第1
及び第2データe1,e2から、バイアス表現された8
ビットの加算結果データe3を生成し出力する。The adder 10 according to the present embodiment having the above-described configuration realizes the operation of the contents expressed by the expressions (16) and (8), and the bias-expressed 8-bit first data is obtained.
From the second data e1 and e2,
It generates and outputs bit addition result data e3.
【0045】以上説明したように、本実施形態の加算装
置10によれば、バイアス表現された2数(第1及び第
2データe1,e2)の加算処理を、キャリー入力が1
に固定され、2の補数形式で表現された2数の加算処理
を行う8ビット加算器14以外に、第2データe2の最
上位ビットを反転させる反転回路12を設けるだけで実
現しているため、装置を小型に構成でき、ひいては、こ
の加算装置10を用いて構成される乗算装置MULを小
型に構成できる。As described above, according to the adder 10 of the present embodiment, the addition processing of the two numbers (the first and second data e1 and e2) represented by the bias is performed when the carry input is one.
This is realized by merely providing an inverting circuit 12 for inverting the most significant bit of the second data e2, in addition to the 8-bit adder 14 for performing the addition process of the two's complement expressed in two's complement format. , And the multiplication device MUL using the adding device 10 can be miniaturized.
【0046】なお、本実施形態では、8ビット加算器1
4を8個の全加算器F0〜F7を用いて構成し、最下位
ビットの演算を行う全加算器F0のキャリー入力を1に
固定しているが、図3(a)に示すように、最下位ビッ
トの演算を行うための回路を、両最下位ビット出力が等
しい場合に1を出力する第1の論理演算手段としての排
他的否定論理和(XNOR)回路L1と、いずれか一方
でも1であれば1を出力する第2の論理演算手段として
の論理和(OR)回路L2とで構成し、XNOR回路L
1の出力を加算結果データの最下位ビットe3[0]と
し、OR回路L2の出力を上位ビットへのキャリー出力
Coとしてもよい。In this embodiment, the 8-bit adder 1
4 is configured using eight full adders F0 to F7, and the carry input of the full adder F0 that performs the operation of the least significant bit is fixed to 1, but as shown in FIG. A circuit for performing the operation of the least significant bit includes an exclusive-NOR (XNOR) circuit L1 as a first logical operation means that outputs 1 when both least significant bits are equal to each other and 1 , An OR (OR) circuit L2 as a second logical operation means for outputting 1 and an XNOR circuit L
The output of 1 may be the least significant bit e3 [0] of the addition result data, and the output of the OR circuit L2 may be the carry output Co to the upper bit.
【0047】即ち、最下位ビットの全加算器F0は、キ
ャリー入力が1に固定されていことから、図6(b)に
示した論理値表からキャリー入力Ciを除去した図3
(b)に示す論理値表の動作を実現できればよく、従っ
て、上述のようなXNOR回路L1とOR回路L2だけ
の簡易な回路構成にて実現できるのである。 [第2実施形態]次に、第2実施形態について説明す
る。That is, since the carry input is fixed to 1 in the least significant bit full adder F0, the carry input Ci is removed from the logical value table shown in FIG. 6B.
It is only necessary to realize the operation of the logic value table shown in (b), and therefore, it can be realized with a simple circuit configuration including only the XNOR circuit L1 and the OR circuit L2 as described above. [Second Embodiment] Next, a second embodiment will be described.
【0048】図4は、2の補数形式で表現された11ビ
ットのデータに、バイアス値1023(=210−1=01
111111111B)を加算してなるバイアス表現された第1
データe1及び第2データe2の加算処理を行い、バイ
アス表現された11ビットの加算結果データe3を出力
する第2実施形態の加算装置の構成図である。FIG. 4 shows that 11-bit data expressed in 2's complement format has a bias value 1023 (= 2 10 -1 = 01).
111111111B) and the bias-expressed first
FIG. 11 is a configuration diagram of an adder according to a second embodiment that performs an addition process on data e1 and second data e2 and outputs 11-bit addition result data e3 represented by bias.
【0049】図4に示すように、本実施形態の加算装置
20は、第2データe2を、その最上位ビットe2[1
0]のみを反転させて出力する反転手段としての反転回
路22と、第1のデータe1を上位側に2ビット0拡張
し、13ビットのデータを生成する第1の拡張手段とし
ての第1のデータ拡張回路26と、反転回路22の出力
データ{~e2[10],e2[9:0]}を上位側に2ビット符号拡
張し、13ビットのデータを生成する第2の拡張手段と
しての第2のデータ拡張回路27と、第1及び第2のデ
ータ拡張回路26,27からの両出力データを加算入力
とする加算増分手段としての13ビット加算器24と、
13ビット加算器24の出力e3[12:0]のうち、
上位2ビットe3[12:11]を例外判定データと
し、この例外判定データからオーバーフロー例外信号V
o及びアンダーフローVu例外信号を生成する例外信号
生成回路28とからなる。As shown in FIG. 4, the adder 20 of this embodiment converts the second data e2 into the most significant bit e2 [1
0] is inverted by 2 bits and the first data e1 is extended to the upper side by 2 bits 0 to generate 13-bit data. The data extending circuit 26 and the second extending means for extending the output data {{e2 [10], e2 [9: 0]} of the inverting circuit 22 to the upper side by 2 bits to generate 13-bit data. A second data extension circuit 27, a 13-bit adder 24 as an addition incrementing unit that takes both output data from the first and second data extension circuits 26 and 27 as an addition input,
Of the output e3 [12: 0] of the 13-bit adder 24,
The upper two bits e3 [12:11] are used as exception determination data, and the overflow exception signal V
and an exception signal generation circuit 28 for generating an underflow Vu exception signal.
【0050】このうち第1のデータ拡張回路26は、値
が0となる信号を追加することにより0拡張を行うよう
に構成され、一方、第2のデータ拡張回路27は、反転
回路22からの出力データの最上位ビット ~e2[1
0]の信号線を分岐することにより符号拡張を行うよう
に構成されている。The first data extension circuit 26 is configured to perform a 0 extension by adding a signal having a value of 0, while the second data extension circuit 27 is configured to perform a 0 extension. Most significant bit of output data ~ e2 [1
0] to extend the sign by branching the signal line.
【0051】また、例外信号生成回路28は、例外判定
データの上位ビットe3[12]の否定値を出力する否
定(NOT)回路L3と、このNOT回路L3の出力と
例外判定データの下位ビットe3[11]とがいずれも
1である時に1を出力する論理積(AND)回路L4と
からなり、このAND回路L4の出力をオーバーフロー
例外信号Xoとし、例外判定データの上位ビットe3
[12]をアンダーフロー例外信号Xuとしてそのまま
出力するように構成されている。これらNOT回路L3
及びAND回路L4が第3の論理演算手段に相当する。The exception signal generation circuit 28 outputs a negation (NOT) circuit L3 for outputting a negative value of the upper bit e3 [12] of the exception determination data, and outputs the output of the NOT circuit L3 and the lower bit e3 of the exception determination data. [11] is a logical product (AND) circuit L4 that outputs 1 when both are 1; the output of the AND circuit L4 is used as an overflow exception signal Xo;
[12] is directly output as the underflow exception signal Xu. These NOT circuits L3
And the AND circuit L4 correspond to a third logical operation means.
【0052】なお、11ビット加算器24は、ビット数
が増えただけで、第1実施例の8ビット加算器14と同
様に構成されており、最下位ビットを処理する全加算器
のキャリー入力が1に固定されている。このように構成
された本実施形態の加算装置20では、(16)式ひい
ては(8)式に示された内容の演算を11ビット幅にて
実現し、バイアス表現された11ビットの第1及び第2
データe1,e2から、バイアス表現された11ビット
の加算結果データe3[10:0]を生成し出力する。The 11-bit adder 24 has the same configuration as the 8-bit adder 14 of the first embodiment except that the number of bits is increased, and the carry input of the full adder for processing the least significant bit is provided. Is fixed at 1. In the adder 20 of the present embodiment configured as described above, the operation of the contents shown in the expressions (16) and (8) is realized with an 11-bit width, and the first and first bits of the 11-bit expressed in the bias expression are realized. Second
From the data e1 and e2, 11-bit addition result data e3 [10: 0] expressed in a bias is generated and output.
【0053】従って、本実施形態の加算装置20によれ
ば、第1実施形態と同様に、バイアス値を補償する処理
を行うための構成を小さく抑えることができる。また、
本実施形態の加算装置20では、第1及び第2のデータ
拡張回路26,27がデータを拡張することにより得ら
れる例外判定データe3[12:11]に基づいて、例
外信号生成回路28が、オーバーフロー例外信号Xo及
びアンダーフロー例外信号Xuを生成するようにされて
いる。従って、本実施形態の加算装置20を用いて構成
される各種装置では、これら例外信号Xo,Xuに基づ
いて、バイアス表現された加算結果データe3[10:
0]に対して、より的確な処理を施すことができ、装置
の信頼性を向上させることができる。Therefore, according to the adder 20 of the present embodiment, similarly to the first embodiment, the configuration for performing the process of compensating the bias value can be reduced. Also,
In the adder 20 of the present embodiment, based on the exception determination data e3 [12:11] obtained by the first and second data expansion circuits 26 and 27 expanding the data, the exception signal generation circuit 28 An overflow exception signal Xo and an underflow exception signal Xu are generated. Therefore, in various devices configured using the addition device 20 of the present embodiment, the addition result data e3 [10: expressed in a bias based on the exception signals Xo and Xu.
0] can be performed more accurately, and the reliability of the device can be improved.
【0054】なお、本実施形態の加算装置20は、例え
ば、倍精度浮動小数点形式で表現された一対の入力デー
タの積を求める乗算装置を構成する際に、両入力データ
の指数部の加算を行うための構成部分に好適に用いるこ
とができる。 [第3実施形態]次に第3実施形態について説明する。The adder 20 of the present embodiment, for example, constructs a multiplying device for obtaining the product of a pair of input data expressed in a double-precision floating-point format, and adds the exponent of both input data. It can be suitably used for a component part for performing. Third Embodiment Next, a third embodiment will be described.
【0055】図5は、2の補数形式で表現された8ビッ
トのデータに、バイアス値127(=27 −1=011111
11B)を加算してなるバイアス表現された第1データ
(被減算データ)e1及び第2データ(減算データ)e
2の減算処理を行い、バイアス表現された8ビットの減
算結果データe4を出力する第3実施形態の減算装置3
0の構成図である。[0055] Figure 5 is a 8-bit data represented in two's complement form, the bias value 127 (= 2 7 -1 = 011111
11B), the first data (subtracted data) e1 and the second data (subtracted data) e expressed in a biased manner by adding
2. The subtraction device 3 of the third embodiment that performs the subtraction process of 2 and outputs 8-bit subtraction result data e4 expressed in a biased manner
FIG.
【0056】図5に示すように、本実施形態の減算装置
30は、第2データe2を、その最上位ビット以外の7
ビットのデータe2[6:0]を反転させて出力する反
転手段としての反転回路32と、第1のデータe1及び
反転回路32が出力するデータ{e2[7],~e2[6:0]}を
加算入力とする加算手段としての8ビット加算器34と
からなる。As shown in FIG. 5, the subtraction device 30 of the present embodiment converts the second data e2 into 7 bits other than the most significant bit.
An inverting circuit 32 as an inverting means for inverting and outputting the bit data e2 [6: 0], and the first data e1 and the data {e2 [7], to e2 [6: 0] output by the inverting circuit 32 And an 8-bit adder 34 as addition means using} as an addition input.
【0057】なお、8ビット加算器34は、最下位ビッ
トの処理を全加算器の代わりキャリー入力のない半加算
器を用いて行う以外は、第1実施形態における8ビット
加算器14と同様に構成されている。このように構成さ
れた本実施形態の減算装置30では、(22)式ひいて
は(10)式に示された内容の演算を実現し、バイアス
表現された8ビットの第1及び第2データe1,e2か
ら、バイアス表現された8ビットの減算結果データを生
成し出力する。The 8-bit adder 34 is similar to the 8-bit adder 14 in the first embodiment except that the least significant bit is processed using a half adder without a carry input instead of a full adder. It is configured. The subtraction device 30 of the present embodiment configured as described above realizes the operation of the content shown in the expression (22), and hence the expression (10), and performs bias-expressed 8-bit first and second data e1, Based on e2, bias-expressed 8-bit subtraction result data is generated and output.
【0058】以上、説明したように、本実施形態の減算
装置30によれば、バイアス表現された2数(第1及び
第2データe1,e2)の減算処理を、キャリー入力が
1に固定され、2の補数形式で表現された2数の加算処
理を行う8ビット加算器34以外に、第2データe2の
最上位ビット以外を反転させる反転回路32を設けるだ
けで実現しているため、装置を小型に構成できる。As described above, according to the subtraction device 30 of this embodiment, the carry input is fixed to 1 in the subtraction processing of the two numbers (the first and second data e1 and e2) represented by the bias. Since it is realized only by providing an inverting circuit 32 for inverting other than the most significant bit of the second data e2, in addition to the 8-bit adder 34 for performing the addition process of two numbers expressed in the two's complement format, Can be made compact.
【0059】そして、本実施形態の減算装置30は、例
えば、単精度浮動小数点形式で表現された一対の入力デ
ータの商を求める除算装置を構成する際に好適に用いる
ことができる。なお、除算装置は、図2に示した乗算装
置のうち、指数加算部M2を、本実施形態の減算装置3
0からなる指数減算部に置き換え、仮数乗算部M3を、
仮数部f1,f2間の除算を行う仮数除算部に置き換え
ることで簡単に構成することができる。The subtraction device 30 of the present embodiment can be suitably used, for example, when configuring a division device for obtaining a quotient of a pair of input data expressed in a single precision floating point format. In addition, the division device, of the multiplication devices shown in FIG.
The mantissa multiplication unit M3 is replaced with an exponent subtraction unit consisting of 0,
It can be easily configured by replacing it with a mantissa division unit that performs division between mantissa parts f1 and f2.
【0060】以上、本発明のいくつかの実施形態につい
て説明したが、本発明は上記実施形態に限定されるもの
ではなく、様々な態様にて実施することができる。例え
ば、上記各実施形態では、第1及び第2データe1,e
2のビット数を8ビット,或いは11ビットの場合につ
いて説明したが、これに限らず、第1及び第2データe
1,e2のビット数は何ビットであってもよい。As described above, several embodiments of the present invention have been described. However, the present invention is not limited to the above embodiments, and can be implemented in various modes. For example, in each of the above embodiments, the first and second data e1, e
Although the case where the number of bits of 2 is 8 bits or 11 bits has been described, the present invention is not limited to this, and the first and second data e
The number of bits of 1 and e2 may be any number of bits.
【0061】また、上記実施形態では、8ビット加算器
14,34、及び11ビット加算器24が実行する加算
方式は、順次桁上げ加算方式や桁上げ先見加算方式とい
った特定の加算方式に限定されることなく、どのような
方式を採用してもよい。In the above embodiment, the addition method executed by the 8-bit adders 14 and 34 and the 11-bit adder 24 is limited to a specific addition method such as a carry addition method and a carry look-ahead addition method. Instead, any method may be adopted.
【図1】 第1実施形態の加算装置の全体構成図、及び
加算装置を構成する8ビット加算器の詳細を表すブロッ
ク図である。FIG. 1 is an overall configuration diagram of an addition device according to a first embodiment, and a block diagram illustrating details of an 8-bit adder included in the addition device.
【図2】 第1実施形態の加算装置を用いて構成された
乗算装置の概略構成を表すブロック図である。FIG. 2 is a block diagram illustrating a schematic configuration of a multiplication device configured using the addition device according to the first embodiment.
【図3】 8ビット加算器の最下位ビットを処理する構
成部分の変形例を表す回路図及びその回路動作を表す論
理値表である。FIG. 3 is a circuit diagram showing a modification of a component for processing the least significant bit of an 8-bit adder, and a logical value table showing the circuit operation.
【図4】 第2実施形態の加算装置の全体構成図であ
る。FIG. 4 is an overall configuration diagram of an adding device according to a second embodiment.
【図5】 第3実施形態の減算装置の全体構成図であ
る。FIG. 5 is an overall configuration diagram of a subtraction device according to a third embodiment.
【図6】 全加算器の動作を表す論理値表、及び全加算
器のキャリー入力を1に固定した場合の論理値表であ
る。FIG. 6 is a logical value table showing the operation of the full adder, and a logical value table when the carry input of the full adder is fixed to 1;
【図7】 浮動小数点形式の標準フォーマットを表す説
明図である。FIG. 7 is an explanatory diagram showing a standard format of a floating-point format.
【図8】 バイアス表現された2数の加算を行う従来装
置の構成を表す回路図である。FIG. 8 is a circuit diagram illustrating a configuration of a conventional device that performs addition of two numbers represented by a bias.
【図9】 バイアス表現された2数の減算を行う従来装
置の構成を表す回路図である。FIG. 9 is a circuit diagram illustrating a configuration of a conventional device that performs subtraction of two numbers represented by bias.
【図10】 バイアス表現された2数の加算を行う他の
従来装置の構成を表す回路図である。FIG. 10 is a circuit diagram illustrating a configuration of another conventional device that performs addition of two numbers represented by a bias.
10,20…加算装置 12,22,32…反転回路 14,24,34…nビット加算器 26,27…デ
ータ拡張回路 28…例外信号生成回路 30…減算装置 3
2…反転回路 F0〜F7…全加算器 L1…XNOR回路 L
2…OR回路 L3…NOT回路 L4…AND回路 M1…符号
演算部 M2…指数加算部 M3…仮数乗算部 M4…仮数
正規化部 M5…仮数丸め部 M6…指数補正部 MUL…乗
算装置10, 20 ... Addition device 12, 22, 32 ... Inversion circuit 14, 24, 34 ... n-bit adder 26, 27 ... Data expansion circuit 28 ... Exception signal generation circuit 30 ... Subtraction device 3
2: Inverting circuit F0 to F7: Full adder L1: XNOR circuit L
2 OR circuit L3 NOT circuit L4 AND circuit M1 sign operation unit M2 exponent addition unit M3 mantissa multiplication unit M4 mantissa normalization unit M5 mantissa rounding unit M6 exponent correction unit MUL multiplication device
Claims (8)
表現された一対の2進数データを、それぞれバイアス値
2n-1−1にて加算することでバイアス表現してなる第
1データ及び第2データを入力し、前記一対の2進数デ
ータの和をバイアス表現してなる加算結果データを出力
する加算装置であって、 前記第2データの最上位ビットを反転させたnビットの
データを出力する反転手段と、 該反転手段が出力するデータと前記第1データとの和に
1を加算してなるnビットの演算結果を、前記加算結果
データとして出力する加算増分手段と、 を備えることを特徴とする加算装置。1. A first data which is bias-expressed by adding a pair of binary data represented in a two's complement notation format in which the number of bits is n by a bias value of 2 n-1 -1. And a second data, and outputs addition result data obtained by bias-expressing the sum of the pair of binary data, wherein n-bit data obtained by inverting the most significant bit of the second data And an addition incrementing unit that outputs an n-bit operation result obtained by adding 1 to the sum of the data output by the inversion unit and the first data as the addition result data. An addition device, characterized in that:
を、キャリー入力が1に固定された全加算器を用いて行
うことを特徴とする請求項1記載の加算装置。2. The addition increment means performs an operation on both least significant bits of a pair of data to be added using a full adder whose carry input is fixed to 1. Addition device.
を、両最下位ビットの排他的否定論理和を求める第1の
論理演算手段、及び両最下位ビットの論理和を求める第
2の論理演算手段を用いて行い、前記第1の論理演算手
段の出力を前記加算結果データの最下位ビットとし、前
記第2の論理演算手段の出力を上位ビットへのキャリー
とすることを特徴とする請求項1記載の加算装置。3. The addition increment means includes: first logical operation means for calculating an exclusive NOR of both least significant bits of a pair of data to be added, and both least significant bits; Using the second logical operation means for calculating the logical sum of the data, setting the output of the first logical operation means as the least significant bit of the addition result data, and setting the output of the second logical operation means to the upper bit. The adder according to claim 1, wherein the adder is a carry.
表現された一対の2進数データを、それぞれバイアス値
2n-1−1にて加算することでバイアス表現してなる第
1データ及び第2データを入力し、上記一対の2進数デ
ータの和をバイアス表現してなる加算結果データを出力
する加算装置であって、 前記第2データの最上位ビットを反転させたnビットの
データを出力する反転手段と、 前記第1データの最上位ビット側を2ビット0拡張した
n+2ビットのデータを出力する第1の拡張手段と、 前記反転手段が出力するnビットのデータを2ビット符
号拡張したn+2ビットのデータを出力する第2の拡張
手段と、 前記第1の拡張手段が出力するn+2ビットのデータ
と、前記第2の拡張手段が出力するn+2ビットのデー
タとの和に1を加算してなるn+2ビットの演算結果を
出力する加算増分手段と、 を備え、該加算増分手段の演算結果のうち、下位nビッ
トを前記加算結果データとして出力し、上位2ビットを
前記加算結果データのオーバーフロー或いはアンダーフ
ローを判定するための例外判定データとして出力するこ
とを特徴とする加算装置。4. A first data which is bias-expressed by adding a pair of binary data expressed in a two's complement notation format in which the number of bits is n by a bias value of 2 n-1 -1. And a second data, and outputs addition result data obtained by bias-expressing the sum of the pair of binary data, wherein n-bit data obtained by inverting the most significant bit of the second data Inverting means for outputting n + 2 bit data obtained by extending the most significant bit side of the first data by 2 bits 0, and a 2-bit code for n-bit data output from the inverting means. Second extension means for outputting the extended n + 2 bit data; n + 2 bit data output from the first extension means and n + 2 bit data output from the second extension means as 1 And an addition incrementing means for outputting an (n + 2) -bit operation result obtained by adding the following. Among the operation results of the addition incrementing means, the lower n bits are output as the addition result data, and the upper 2 bits are output as the addition result. An adding device for outputting as exception determination data for determining overflow or underflow of data.
との論理積を求める第3の論理演算手段を備え、 該第3の論理演算手段の出力を、前記加算結果データが
オーバーフローしていることを表すオーバーフロー例外
信号とし、前記例外判定データの上位ビットを、前記加
算結果データがアンダーフローしていることを表すアン
ダーフロー例外信号として出力することを特徴とする加
算装置。5. The addition device according to claim 4, further comprising: third logical operation means for obtaining a logical product of an inverted value of an upper bit of the exception determination data and a lower bit, wherein the third logical operation means An output is an overflow exception signal indicating that the addition result data has overflown, and an upper bit of the exception determination data is output as an underflow exception signal indicating that the addition result data has underflow. An addition device characterized by the above-mentioned.
表現された一対の2進数データを、それぞれバイアス値
2n-1−1にて加算することでバイアス表現してなる被
減算データ及び減算データを入力し、上記一対の2進数
データの差をバイアス表現してなる減算結果データを出
力する減算装置であって、 前記減算データの最上位ビット以外を反転させたnビッ
トのデータを出力する反転手段と、 該反転手段が出力するデータと前記被減算データとを加
算してなるnビットの演算結果を、前記減算結果データ
として出力する加算手段と、 を備えることを特徴とする減算装置。6. Subtracted data represented by a bias value by adding a pair of binary data represented in a two's complement notation format having n bits, respectively, with a bias value of 2 n-1 -1. And subtraction data, and outputs subtraction result data obtained by bias-expressing the difference between the pair of binary data. The n-bit data obtained by inverting other than the most significant bit of the subtraction data. An inverting means for outputting, and an adding means for outputting, as the subtraction result data, an n-bit operation result obtained by adding the data output by the inverting means and the data to be subtracted. apparatus.
部、バイアス表現された2進数で表される指数部、前記
仮数部の正負を表す符号部からなる浮動小数点形式で表
現された被乗数データ及び乗数データの積を算出する乗
算装置において、 前記被乗数データ及び乗数データの両指数部の和を、請
求項1ないし請求項5いずれか記載の加算装置により求
めることを特徴とする乗算装置。7. A floating-point format represented by a mantissa part represented by a binary number represented by an absolute value, an exponent part represented by a binary number represented by a bias, and a sign part representing the sign of the mantissa. A multiplication device for calculating a product of multiplicand data and multiplier data, wherein a sum of both exponents of the multiplicand data and multiplier data is obtained by the adding device according to any one of claims 1 to 5. .
部、バイアス表現された2進数で表される指数部、前記
仮数部の正負を表す符号部からなる浮動小数点形式で表
現された被除数データ及び除数データの商を算出する除
算装置において、 前記被除数データ及び除数データの両指数部の差を、請
求項6記載の減算装置により求めることを特徴とする除
算装置。8. A floating-point format including a mantissa part represented by a binary number represented by an absolute value, an exponent part represented by a binary number represented by a bias, and a sign part representing the sign of the mantissa. A division device for calculating a quotient of dividend data and divisor data, wherein a difference between both exponent parts of the dividend data and divisor data is obtained by the subtraction device according to claim 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11206501A JP2001034455A (en) | 1999-07-21 | 1999-07-21 | Adding device, subtracting device, multiplying device and dividing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11206501A JP2001034455A (en) | 1999-07-21 | 1999-07-21 | Adding device, subtracting device, multiplying device and dividing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001034455A true JP2001034455A (en) | 2001-02-09 |
Family
ID=16524423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11206501A Pending JP2001034455A (en) | 1999-07-21 | 1999-07-21 | Adding device, subtracting device, multiplying device and dividing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001034455A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880445A (en) * | 2012-07-27 | 2013-01-16 | 电子科技大学 | Modulo subtracter |
-
1999
- 1999-07-21 JP JP11206501A patent/JP2001034455A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880445A (en) * | 2012-07-27 | 2013-01-16 | 电子科技大学 | Modulo subtracter |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100232962B1 (en) | Fused floating point multiply and accumulate unit with carry correction | |
EP0472139B1 (en) | A floating-point processor | |
US8185570B2 (en) | Three-term input floating-point adder-subtractor | |
US5148386A (en) | Adder-subtracter for signed absolute values | |
KR100203468B1 (en) | Arithmetic apparatus for floating point numbers | |
US20170293471A1 (en) | Arithmetic units and related converters | |
US8060551B2 (en) | Method and apparatus for integer division | |
US20200183650A1 (en) | Radix-1000 decimal floating-point numbers and arithmetic units using a skewed representation of the fraction | |
JPH09212337A (en) | Floating-point arithmetic processor | |
KR19980082906A (en) | How to Convert Floating-Point Numbers to Integer Types | |
EP0332215B1 (en) | Operation circuit based on floating-point representation | |
KR910006143B1 (en) | Arthimatic apparatus of floating points | |
JP2001034455A (en) | Adding device, subtracting device, multiplying device and dividing device | |
Nguyen et al. | A combined IEEE half and single precision floating point multipliers for deep learning | |
US7051062B2 (en) | Apparatus and method for adding multiple-bit binary-strings | |
JP3257278B2 (en) | Normalizer using redundant shift number prediction and shift error correction | |
JP3137131B2 (en) | Floating point multiplier and multiplication method | |
JP2856792B2 (en) | Floating point arithmetic unit | |
JP3100868B2 (en) | Arithmetic unit for floating point numbers | |
JP3187402B2 (en) | Floating point data addition / subtraction circuit | |
JPH0225924A (en) | Floating point arithmetic processor | |
JP2003223316A (en) | Arithmetic processor | |
JPH113210A (en) | 3-input comparator, saturation arithmetic unit using the same and arithmetic method therefor | |
JP2622012B2 (en) | Shift circuit | |
JPH0383126A (en) | Floating-point multiplier |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050905 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080212 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080331 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080708 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081111 |