JPS63259720A - Floating point multiplication circuit - Google Patents
Floating point multiplication circuitInfo
- Publication number
- JPS63259720A JPS63259720A JP63069513A JP6951388A JPS63259720A JP S63259720 A JPS63259720 A JP S63259720A JP 63069513 A JP63069513 A JP 63069513A JP 6951388 A JP6951388 A JP 6951388A JP S63259720 A JPS63259720 A JP S63259720A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- exponent
- overflow
- mantissa
- correction
- 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
Links
- 238000001514 detection method Methods 0.000 claims abstract description 9
- 230000000295 complement effect Effects 0.000 claims description 5
- 238000000034 method Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 6
- 239000004744 fabric Substances 0.000 description 2
- SWKACZQJGXABCN-JSGWLJPKSA-N 2-methyl-6-all-trans-nonaprenyl-1,4-benzoquinone Chemical compound CC(C)=CCC\C(C)=C\CC\C(C)=C\CC\C(C)=C\CC\C(C)=C\CC\C(C)=C\CC\C(C)=C\CC\C(C)=C\CC\C(C)=C\CC1=CC(O)=CC(C)=C1O SWKACZQJGXABCN-JSGWLJPKSA-N 0.000 description 1
- 101000941450 Lasioglossum laticeps Lasioglossin-1 Proteins 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 102220091149 rs145688699 Human genes 0.000 description 1
Abstract
Description
【発明の詳細な説明】
本発明は浮動小数点乗算回路、特にダイナミックレンジ
(データの取り得る最大振幅)の広いデータの実時間処
理を目的とする高速ディジタル信号処理プロセッサに使
用する浮動小数点乗算回路に関するものである。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a floating-point multiplication circuit, and more particularly to a floating-point multiplication circuit used in a high-speed digital signal processor for real-time processing of data with a wide dynamic range (maximum possible amplitude of data). It is something.
浮動小数点乗算回路は仮数部演算専用の固定小数点乗算
器と指数部演算専用の加算器とから構成される。すなわ
ち、乗算される2数をA +−= M□・2°1とA2
=M2・2°2とするとその乗算結果はA=A、・A2
=M1・M2・2°1+02となり、M、・M2の乗算
とel+e2の加算が行なわれる。ここでMl、M2が
仮数でei+ 82が指数である。浮動小数点乗算にお
いては、有効桁数が最大に保たれるように2人力の仮数
部は正規化されている。これらの乗算回路を2進数のデ
ィジタル回路で構成する場合、回路構成上の便によって
、仮数部ならび指数部のビット数は指定されていため、
乗算結果すなわち積も一定のピッ1〜数で表わさなけれ
ばならないため、桁あふれ(オーバーフローやアンダー
フロー)の問題が生じる。The floating-point multiplication circuit is composed of a fixed-point multiplier dedicated to mantissa operations and an adder dedicated to exponent operations. In other words, the two numbers to be multiplied are A +-= M□・2°1 and A2
=M2・2°2, the multiplication result is A=A,・A2
=M1·M2·2°1+02, and multiplication of M,·M2 and addition of el+e2 are performed. Here, Ml and M2 are mantissas and ei+82 is an exponent. In floating-point multiplication, the two-manual mantissa is normalized to maintain the maximum number of significant digits. When these multiplication circuits are constructed from binary digital circuits, the number of bits in the mantissa and exponent parts is specified for convenience in circuit configuration.
Since the multiplication result, that is, the product, must also be expressed by a fixed number of digits, the problem of overflow and underflow occurs.
又、乗算結果を正規化を行なう場合、仮数部を桁移動し
、その分だけ指数部を加減算する場合にも、指数部が正
規のビット数で表わされる範囲に入らないときも、桁あ
ふれの問題が生じる。Also, when normalizing the multiplication result, moving the mantissa and adding or subtracting the exponent by that amount, overflow may occur even when the exponent does not fall within the range represented by the normal number of bits. A problem arises.
従来、このように仮数部および指数部で桁あふれ(オー
バフロー、アンダーフロー)が生したときはフラグで検
出し、その補正をプログラムで処理する方法がとられて
いた。そのため、オーバーフローの処理を行なうための
プログラムを実行するだめにかなりの時間を要し、高速
の演算を行なうことができない欠点がある。特に通信装
置のように実時間処理、すなわち入力、出力を同じ時間
関係で行なう必要がある装置においては、更に高速の信
号処理装置が必要となり、特に時間を要する乗算器の高
速化が要求される。Conventionally, when overflow (overflow, underflow) occurs in the mantissa and exponent parts, a flag has been used to detect the occurrence, and a program has been used to process the correction. Therefore, it takes a considerable amount of time to execute a program for processing overflow, and there is a drawback that high-speed calculation cannot be performed. In particular, in devices such as communication devices that require real-time processing, that is, input and output must be performed in the same time relationship, even higher-speed signal processing devices are required, and in particular, multipliers that require time are required to be faster. .
したがって、本発明の目的は浮動小数点乗算の桁あふれ
をプログラム処理することなく高速処理する浮動小数点
乗算回路を実現することである。Therefore, an object of the present invention is to realize a floating point multiplication circuit that can process overflow in floating point multiplication at high speed without performing program processing.
本発明の他の目的は、浮動小数点乗算において生ずる桁
あふれを迅速に処理する回路を実現することである。Another object of the present invention is to realize a circuit that quickly handles overflow that occurs in floating point multiplication.
本発明は上記目的を達成するため、一定ビツト数の仮数
部と指数部からなる浮動小数点の2数の乗算回路におい
て、入力又は出力の仮数部又は指数部に桁あふれ検出部
を設け、その検出信号によって演算出力の桁あふれ補正
回路を駆動するように構成したことを特徴とする。In order to achieve the above object, the present invention provides a multiplication circuit for two floating point numbers consisting of a mantissa and an exponent of a fixed number of bits, and provides an overflow detection section for the input or output mantissa or exponent. The present invention is characterized in that the signal is configured to drive an overflow correction circuit for arithmetic output.
以」二図面を用いて本発明の詳細な説明する。まず、実
施例の説明をする前に、本発明の原理について説明する
。第1図は、乗算される2数A1゜A2およびその積A
=A□・A2のピッ1〜構成を示すもので、客数の仮数
をM、指数をeで表わすとA、=M1・2°’ HA
2 = M 2・2°2.A=M・2゜(真の値)で表
わされる。各記号のサフィックスは客数を区別する。浮
動小数点乗算においては2数A1. A2の仮数M1.
M2は有効数を最大とするため正規化されており、2進
数が2の補数表示で表わされるときは一2°≦M1、又
はM2< 2−1又は2″1≦M1.又はM2く2°
又、乗算装置の構成上、仮数M、指数eを表わすピッ1
〜数はそれぞれ一定ビット数mおよびn (第1図のA
1.A2の場合m=11 n=4)で構成される。し
たがって、2数A1. A2図示の如くなる。これらの
2数A1.A2の積はビット構成に制限を付けない場合
23ビツトの仮数と4又は5ビツトの指数で表わされる
。しかし、回路、装置の構成上の都合から第1図のA。The present invention will now be described in detail with reference to the two drawings. First, before explaining embodiments, the principle of the present invention will be explained. Figure 1 shows two numbers A1゜A2 to be multiplied and their product A
It shows the composition of =A□・A2, where the mantissa of the number of customers is M and the exponent is e, which is A, =M1・2°' HA
2 = M 2・2°2. It is expressed as A=M·2° (true value). The suffix of each symbol distinguishes the number of customers. In floating point multiplication, two numbers A1. Mantissa M1 of A2.
M2 is normalized to maximize the effective number, and when a binary number is expressed in two's complement representation, -2°≦M1, or M2<2-1, or 2″1≦M1.or M2×2. °
Also, due to the configuration of the multiplication device, the number 1 representing the mantissa M and the exponent e is
〜numbers have constant bit numbers m and n (A in Fig. 1)
1. In the case of A2, m=11 n=4). Therefore, 2 numbers A1. It will look like the one shown in A2. These two numbers A1. The product of A2 is expressed by a 23-bit mantissa and a 4- or 5-bit exponent if no restrictions are placed on the bit configuration. However, due to the configuration of the circuit and device, A in FIG.
二Mo・2°0のように実際の装置では数A 1. A
2と同じビット構成(仮数mビット、指数nビット)
とされる。そのため、以下に述べる桁あふれが生じる。In an actual device, the number A is 1.2Mo.2°0. A
Same bit configuration as 2 (mantissa m bits, exponent n bits)
It is said that Therefore, overflow occurs as described below.
(1)指数上位桁あふれ
正規化された2数A、、A2の積A。の仮数M。は(a
)正規化されていない状態すなわち−2−1≦Mo≦−
2−2
(b)正規化されている状態すなわち
一2°≦Mo(−2”1
の2つの状態がある。(1) Product A of two normalized numbers A, , A2 overflowing the upper digits of the exponent. The mantissa M. is (a
) non-normalized state, i.e. -2-1≦Mo≦-
2-2 (b) There are two normalized states, namely -2°≦Mo(-2''1).
したがって、指数eが2n−1となったとき、次のよう
な問題が生じる。一般的に仮数が正規化されていな状態
(a)では仮数M。を1ビツト左シフトし、指定e。か
ら1を減算すれば正規化され、又指数e。が2°−1以
上のときは仮数M。の状態に係らず、積A。の絶対値を
最大とする補正を行うことが考えられるが、仮数M。が
正規化されていない状態(a)で、かつ指数e。が2n
−1の場合、上記補正を行なったら補正によって大きな
誤差を生じる。仮えば指数がn=4ビツトでe。=24
−1=8、仮数M。−2−2(正規化されていない例)
、のとき真の積A。はA。= (−2−2) X21+
=−26であり、上述の補正を行なった場合の積A。′
はA。’=(−2°)X27=−27となり真の値Ao
の2倍と誤った値となる。Therefore, when the index e becomes 2n-1, the following problem occurs. Generally, in state (a) where the mantissa is not normalized, the mantissa is M. Shift left by 1 bit and specify e. It is normalized by subtracting 1 from , and the exponent e. When is greater than or equal to 2°-1, the mantissa M. Regardless of the state of , the product A. It is conceivable to perform a correction that maximizes the absolute value of the mantissa M. is not normalized (a), and the index e. is 2n
In the case of -1, if the above correction is performed, a large error will occur due to the correction. For example, the exponent is e if n=4 bits. =24
-1=8, mantissa M. -2-2 (non-normalized example)
, then the true product A. is A. = (-2-2) X21+
= -26, and the product A when the above correction is performed. ′
is A. '=(-2°)X27=-27, which is the true value Ao
The incorrect value is twice that of .
(2)指数下位桁あふれ
積の指数の真の値が一2n−1未満のとき、下位桁あふ
れとして、補正はシフトを行なわず指数を21−1と近
似する方法が考えられるが、仮数部のダイナミックレン
ジを有効に利用することができない。(2) When the true value of the exponent of the product is less than 12n-1, it is assumed that the lower digits are overflowed, and the correction can be made by approximating the exponent to 21-1 without performing a shift. Dynamic range cannot be used effectively.
(3)仮数部あふれ
2数A1.A2が共に−1のときその積の真の値は1で
あるに係らず、2の補数表示の演算を行なった場合、積
は1.0000 ・・・の2進数となり、MSBが1
11”となるため、値は−1と誤る。(3) Mantissa overflow 2 number A1. Even though the true value of the product is 1 when both A2 are -1, if the calculation is performed using two's complement representation, the product will be a binary number of 1.0000... and the MSB will be 1.
11'', the value is incorrectly interpreted as -1.
本発明の浮動小数点乗算器は上記桁あふれの問題を、−
」二記各桁あぶれを検出する回路と、桁あぶれが検出さ
れたとき、プログラム処理することなく、次のような機
能を持つ補正回路で補正するようにしたものである。The floating-point multiplier of the present invention solves the above-mentioned overflow problem.
2) A circuit that detects each digit misalignment, and when a digit misalignment is detected, it is corrected without program processing using a correction circuit that has the following functions.
仮数部Mが正規化されず指数部が2 TI −1となる
場合板数部Mを左シフト(桁あげ)し、指数部を表示し
得る最大の値2n−1,1にセットし、指数co=21
−1かつ仮数部が正規化されている場合、又は指数e。If the mantissa part M is not normalized and the exponent part becomes 2 TI -1, shift the board number part M to the left (raise the digits), set the exponent part to the maximum value that can be displayed, 2n-1,1, and display the exponent. co=21
-1 and the mantissa is normalized, or the exponent e.
〉2″−1のときは、仮数部の符号を変えずに絶対値が
最大とようにセットする。〉2″-1, the sign of the mantissa is not changed and the absolute value is set to be the maximum.
指数部が一2n−1未満(指数下位桁あふれ)のときは
指数部の表示し得る最小値−2n−1から真の指数値e
を差引いた(eo−e)ビット分だけ仮数部を右シフト
(桁下げ)を行う。この補正によって、仮数部の有効ピ
ッ1〜長mビット分だけダイナミックスレンジが拡大さ
れる。When the exponent part is less than 12n-1 (the index overflows the lower digits), the true exponent value e is calculated from the minimum displayable value of the exponent part -2n-1.
The mantissa is shifted to the right (downward) by (eo-e) bits. By this correction, the dynamics range is expanded by the effective bit 1 to length m bits of the mantissa.
仮数部が桁あふれを生じるとき、すなわち2数A1.A
2が共に−1のとき、第1の方法は仮数部を1ビツト右
シフトし、指数部に1を加算する。When the mantissa part causes overflow, that is, 2 numbers A1. A
When both 2 are -1, the first method shifts the mantissa to the right by 1 bit and adds 1 to the exponent.
又、第2の方法は仮数部を2° 2−(m−11とし、
指数部は補正を行なわない。第2の方法は2−15の誤
差を含むが、他の演算回路として使用される指数上位桁
あふれ補正回路と共用できるため、回路構成において第
1の方法に比べ有利である。In addition, the second method sets the mantissa to 2° 2-(m-11,
No correction is made to the exponent part. Although the second method includes an error of 2-15, it is more advantageous than the first method in terms of circuit configuration because it can be shared with the exponent overflow correction circuit used as another arithmetic circuit.
第2図は上記原理に基いて構成された本発明の浮動小数
点乗算回路の一実施例の構成を示すブロック図である。FIG. 2 is a block diagram showing the configuration of an embodiment of a floating point multiplication circuit of the present invention constructed based on the above principle.
本実施例は第1および第2の演算回路Iおよび■で構成
されている。第1の演算回路Iは浮動小数点乗算および
桁あふれを検出し、指数上位桁あふれによる指数補正な
らび仮数の補正を行う回路である。第2の演算回路■は
指数下位桁あふれによる指数および仮数の補正を行なう
回路である。なお、本実施例は指数下位桁あふれによる
補正の回路すなわち第2の演算回路■は上記第1の演算
回路Iの出力と他の入力A3(仮数Q9、指数Q10か
らなる)との演算を行なう演算回路を兼用したもので、
又浮動小数点乗算ならび固定小数点演算を行うことがで
きるようにしたものである。以下各部回路構成の動作に
ついて説明する。This embodiment is composed of first and second arithmetic circuits I and (2). The first arithmetic circuit I is a circuit that detects floating point multiplication and overflow, and performs exponent correction and mantissa correction due to overflow of the upper digits of the exponent. The second arithmetic circuit (2) is a circuit that corrects the exponent and mantissa due to overflow of lower digits of the exponent. In this embodiment, the circuit for correcting the overflow of the lower digits of the exponent, that is, the second arithmetic circuit (2) performs an arithmetic operation between the output of the first arithmetic circuit I and another input A3 (consisting of the mantissa Q9 and the exponent Q10). It also serves as an arithmetic circuit.
It is also designed to be able to perform floating point multiplication and fixed point operations. The operation of each circuit configuration will be explained below.
演算回路■はは第1図の仮数M1およびA2に対応する
12ビツトの仮数がそれぞれ入力信号Q。In the arithmetic circuit (2), the 12-bit mantissas corresponding to mantissas M1 and A2 in FIG. 1 are input signals Q, respectively.
およびQ2として乗算回路1に加えられ、乗算結果Q5
を出力する。一方、指数e1およびQ2に対応する4ビ
ツトの指数それぞれ入力信号Q3r A4として加算回
路2に加えられ、加算結果のQ6を出力する。これらの
入力出信号は4ビツトの2の補数表示で表わされている
から一8≦Q3+ Q4+Q、6≦7という制限がある
。and is added to the multiplication circuit 1 as Q2, and the multiplication result Q5
Output. On the other hand, 4-bit exponents corresponding to exponents e1 and Q2 are respectively applied to the adder circuit 2 as input signals Q3rA4, and the addition result Q6 is output. Since these input and output signals are expressed in 4-bit two's complement representation, there are restrictions such as -8≦Q3+Q4+Q and 6≦7.
4は指数桁あふれ検出および指数上位桁あふれ時の指数
を補正する回路で、指数が8である場合を検出する検出
信号C8、指数上位桁あふれを表わす信号CMo、指数
下位桁あふれを表す信号cMuを出力する。4 is a circuit for detecting overflow of exponent digits and correcting the exponent when the upper digits of the index are overflowed, which includes a detection signal C8 for detecting when the exponent is 8, a signal CMo representing overflow of the upper digits of the index, and a signal cMu representing overflow of the lower digits of the index. Output.
14は制御信号Bによって浮動小数点乗算と固定小数点
乗算の切換を行なうもので、これは本実施例の回路を固
定小数点演算回路としても使用するために設けられたも
のである。Reference numeral 14 switches between floating-point multiplication and fixed-point multiplication in response to control signal B, and is provided so that the circuit of this embodiment can also be used as a fixed-point arithmetic circuit.
第3図は上記加算回路2、指数桁あふれ検出回路4、切
換回路14の回路構成を示す。同図において、Q3 2
3. Q322. Q32”およびQ9−2°は入力A
1の指数e、の4ビツトの信号、ρ4−23.Ω、−2
2,Q14−2’およびA4−2°は入力A2の指数e
2の4ビット信号を表わし、Q6−23、Q6−22.
Q6−21およびQ6−20は加算器2の出力、Q3は
Q6−22からQ6−23への桁上げ信号を表す。オア
回路1.6およびアンド回路17は積の指数eが8以上
となることを検出する回路でQ3−23とA4−23が
″0′蹟上信号C3が111 IIのとき(すなわちC
MO= (Q、323)+(A4−23) ・Q3)
出力CMoがII i TTとなる。FIG. 3 shows the circuit configuration of the adder circuit 2, the exponent overflow detection circuit 4, and the switching circuit 14. In the same figure, Q3 2
3. Q322. Q32” and Q9-2° are input A
4-bit signal with index e of 1, ρ4-23. Ω, -2
2, Q14-2' and A4-2° are the exponents e of input A2
Q6-23, Q6-22 .
Q6-21 and Q6-20 represent the output of adder 2, and Q3 represents a carry signal from Q6-22 to Q6-23. The OR circuit 1.6 and the AND circuit 17 are circuits that detect that the exponent e of the product is 8 or more.
MO= (Q, 323) + (A4-23) ・Q3)
The output CMo becomes II i TT.
アンド回路18とアンド回路19は指数eが一8以下と
なることを検出する回路で、Q3−23とA4−23が
“1”でQ3がLL O”のとき出力C□が“1”とな
る。アンド回路20は指数eが8となることを検出する
回路で、CMoが1″′で、Q6−22.Q6−21.
Q6−2°が全て1101+のとき(すなわちCM。・
(Q6−22)・(Q6−21)・Q6−2°が“1″
のとき)“1″を出力する。アンド回路21、オア回路
22,23.24は指数eが8以上のとき、指数をe。AND circuit 18 and AND circuit 19 are circuits that detect when the exponent e is less than 18, and when Q3-23 and A4-23 are "1" and Q3 is LL O, the output C□ is "1". The AND circuit 20 is a circuit that detects that the index e is 8, and when CMo is 1'', Q6-22. Q6-21.
When all Q6-2° are 1101+ (i.e. CM.・
(Q6-22), (Q6-21), Q6-2° is “1”
) Outputs “1”. AND circuit 21, OR circuits 22, 23, and 24 set the exponent to e when the exponent e is 8 or more.
=110111 ”に補正する。浮動小数点演算と固定
小数点演算切換回路14は、演算様式を変えるときに使
用されるもので、制御信号Bは浮動小数点演算のとき、
111”となり、アンド回路25,26.27をオン状
態にし、CMu、C,o、C8の信号を通す。=110111''.The floating-point arithmetic and fixed-point arithmetic switching circuit 14 is used when changing the arithmetic format, and the control signal B is corrected when the floating-point arithmetic is performed.
111'', turns on the AND circuits 25, 26, and 27, and passes the signals of CMu, C, o, and C8.
第4図は第2図の仮数補正回路3の回路図で入力として
、第3図に示した信号C,,、C8,乗算される2入力
データの仮数のMSBQ、−2°およびC2−20、仮
数の乗算回路1の出力である16ビツトの信号Ω5−2
°、C5−2−’・・・・・C5−2−15が加えられ
る。論理回路29はインバータ30.33,35.排他
論理和31,39.ナンド回路32,37.ノア回路3
4.3B、オア回路36からなり、乗算結果の種々の状
態を判定し、アンドゲート41,42.・・・44をオ
ン、オフする。オナ回路51・・・54は上記アンドゲ
ートの出力をとり出し、補正された仮数Q7−2”’、
ρ7−2−2... Q 、 2−15とする。イン
バータ40の出力Q7−2°は仮数の
MSB信号となる。FIG. 4 is a circuit diagram of the mantissa correction circuit 3 of FIG. 2. As inputs, the signals C, . . . , C8 shown in FIG. , the 16-bit signal Ω5-2 which is the output of the mantissa multiplication circuit 1
°, C5-2-'...C5-2-15 is added. Logic circuit 29 includes inverters 30, 33, 35 . Exclusive OR 31, 39. NAND circuits 32, 37. Noah circuit 3
4.3B, consists of an OR circuit 36, which determines various states of multiplication results, and AND gates 41, 42 . ...Turn 44 on and off. The ona circuits 51...54 take out the output of the AND gate and corrected mantissa Q7-2"',
ρ7-2-2. .. .. Q, 2-15. The output Q7-2° of the inverter 40 becomes the MSB signal of the mantissa.
以上の回路によって、指数下位桁あふれ以外の乗算出力
が得られる。以下各場合に分けて説明する。指数eが8
以上のときは第3図オア回路17の出力CMoが1”と
なるため指数部のeo(α823、 C822,Qn
2’、Qa 2’)は“0111” (+7)となる。With the above circuit, a multiplication output other than the overflow of the lower digits of the exponent can be obtained. Each case will be explained separately below. exponent e is 8
In the above case, the output CMo of the OR circuit 17 in FIG.
2', Qa 2') becomes "0111" (+7).
仮数部は第4図においてCMoがLL I ++である
ためナンド回路37が“1″となり、アンドゲート41
−1.42−1゜44−1をオントシ、MSBQ、5−
2’が170 ++ 又は1”のときはそれぞれ0.1
1111・・・1又は1.000・・・0のように絶対
値が最大となる値となる。As for the mantissa part, since CMo is LL I ++ in FIG. 4, the NAND circuit 37 becomes "1", and the AND gate 41
-1.42-1゜44-1, MSBQ, 5-
0.1 when 2' is 170 ++ or 1", respectively.
The value has the maximum absolute value, such as 1111...1 or 1.000...0.
しかし、指数eが8で仮数が正規化されていない場合す
なわちCMo、CB、がtr 1 ++でQ、5−20
とC5−2−”の符号が同一のときは論理回路29によ
って、アントゲ−1−41−3,42−3・・・がオン
となり、仮数部を1ビツトだけ左にシフトすることにな
る。However, if the exponent e is 8 and the mantissa is not normalized, that is, CMo, CB, is tr 1 ++ and Q, 5-20
When the signs of C5-2-'' and C5-2-'' are the same, the logic circuit 29 turns on the ant games 1-41-3, 42-3, . . . and shifts the mantissa part to the left by one bit.
指数eが一8≦e < 7ときはオーバーフローを生ぜ
ず、指数部の加算器2の出力α6が出力Q8(C8−2
3,C8−22・・・・・C8−2°)として取出され
、仮数部は正鹸(れていないときは正規化の処理を行な
う。When the exponent e is 18≦e<7, no overflow occurs and the output α6 of the adder 2 in the exponent part becomes the output Q8 (C8-2
3, C8-22...C8-2°), and the mantissa part is normalized (if not, normalization processing is performed).
桁あふれが生じるが、この検出は、第4図のナンド回路
32によって行なわれ、(Q、−2°)・ C02−2
°)・ (C5−2°)がII I ++となること孝
検出されると、仮数の補正出力Q7−2°。Overflow occurs, but this detection is performed by the NAND circuit 32 in FIG. 4, and (Q, -2°)・C02-2
When it is detected that (C5-2°) becomes II I ++, the mantissa correction output Q7-2°.
C72−2+・・・・・Ω 2−15は“0.1.1
11・・・1′″(=2° 2/15)となる。次に指
数下位桁あふれの場合について説明する。指数下位桁あ
ふれの補正は第2図の第2の演算回路■で他の入力A3
との演算の途中で行なわれる。第3図において、指数下
位桁あふれが生じた場合CMuが′1″となり、第2図
の指数下位桁あふれ指数補正回路6.指数下位桁あふれ
時の指数比較補正回路12、指数下位桁あふれ発生時の
演算前布シフト補正回路8および指数部演算入力バスの
切換回路13に加えられる。C72-2+...Ω 2-15 is “0.1.1
11...1''' (=2° 2/15).Next, we will explain the case of overflowing the lower digits of the exponent.The overflowing of the lower digits of the exponent is corrected by using the second arithmetic circuit ■ in Figure 2. Input A3
This is done in the middle of the calculation. In Fig. 3, when the lower exponent digit overflow occurs, CMu becomes '1'', and the exponent lower digit overflow exponent correction circuit 6 in Fig. 2. The index comparison correction circuit 12 when the index lower digit overflow occurs, the index lower digit overflow occurs. It is added to the pre-calculation cloth shift correction circuit 8 and the exponent part calculation input bus switching circuit 13.
他の入力A3の仮数Q9は仮数部演算入力バス切換回路
5に指数QiOは切換回路13.指数比較回路11.指
数補正回路6にそれぞれ加えられ、更に、演算回路■の
指数出力Qe(=eo)が指数補正回路6に加えられる
。切換回路13は2つの指数の大きな方の指数を他の演
算回路又は出力端子(図示せず)に供給するものである
。比較器11は2つの指数の大小を比較する。指数下位
桁あふれ時の指数比較回路12は上記比較回路11の出
力Q17を補正し、指数下位桁あぶれが生じたときの制
御信号ntaを発生し、入力バス切換回路5の入力信号
(仮数)C7を出力信号ρ1.として演算前布シフト回
路9に加え、入力バス切換回路13の出力として入力信
号ρ1oを出力するように制御し、減算回路7を制御す
る。指数補正回路6.減算回路7.右シフト補正回路8
は第5図で詳細に説明する如く仮数部の右シフト量を決
定する。The mantissa Q9 of the other input A3 is sent to the mantissa calculation input bus switching circuit 5, and the exponent QiO is sent to the switching circuit 13. Index comparison circuit 11. Furthermore, the exponent output Qe (=eo) of the arithmetic circuit (2) is applied to the exponent correction circuit 6. The switching circuit 13 supplies the larger of the two indices to another arithmetic circuit or an output terminal (not shown). The comparator 11 compares the two indexes. The index comparator circuit 12 corrects the output Q17 of the comparator circuit 11 when the lower digits of the index overflow, generates a control signal nta when the lower digits of the index overflow occur, and outputs the input signal (mantissa) C7 of the input bus switching circuit 5. is the output signal ρ1. In addition to the pre-calculation cloth shift circuit 9, the input bus switching circuit 13 outputs the input signal ρ1o as an output, thereby controlling the subtraction circuit 7. Index correction circuit 6. Subtraction circuit 7. Right shift correction circuit 8
determines the right shift amount of the mantissa, as explained in detail in FIG.
15は浮動小数点演算と固定小数点演算の切換回路で、
10固定小数点減算回路である。15 is a switching circuit between floating point arithmetic and fixed point arithmetic;
This is a 10 fixed point subtraction circuit.
いま演算回路Iの出力の指数をβ=(β3β2β1β。Now, the exponent of the output of the arithmetic circuit I is β=(β3β2β1β.
)とし、指数部の真の値をeとする。なおβは下位桁あ
ふれの場合の出力である。又、他の入力の指数をα=(
C3,C2,C1,α。)(この信号をQl。) and the true value of the exponent part is e. Note that β is the output in the case of overflow of lower digits. Also, let the exponents of other inputs be α=(
C3, C2, C1, α. ) (This signal is Ql.
で表わす)とする。).
指数下位桁あふれはT3・CMu=”l’″となるとき
に生じる。このとき、4ビツトの2に補数表示ではe
<−8、β≧Oであるから、e〈βとなる。従ってCM
uが1のときはβがeより小さいので指数比較補正回路
で補正を行なう。2人力の指数をそろえるために(α−
e)を求める必要があるが、α−eは
α−e−α−(−16+β)
=(α+8)−(−8+β) ・・・ (3)で表わ
せる。ここでα、βには
一8≦α≦7− (4)、o≦β≦7・・・(5)0≦
α+8≦15・・・(6)。Overflow of lower digits of the exponent occurs when T3·CMu="l'". At this time, in 4-bit two's complement representation, e
Since <−8 and β≧O, e<β. Therefore, CM
When u is 1, β is smaller than e, so correction is performed by the exponential comparison correction circuit. In order to align the exponents of two-manpower (α−
e), and α−e can be expressed as α−e−α−(−16+β) =(α+8)−(−8+β) (3). Here, α and β are -8≦α≦7− (4), o≦β≦7... (5) 0≦
α+8≦15 (6).
一8≦−8+β≦−1・・・(7)
の条件があるので次の不等式が成立するα+7〉−8+
β ・・・(8)1≦α−e≦23 ・・
・(9)一方、仮数部右シフト回路9への入力データ1
3はO≦Q13≦15で制限されなければならないので
、次の補正が必要である。-8≦-8+β≦-1... (7) Since there is a condition, the following inequality holds α+7〉-8+
β...(8)1≦α-e≦23...
・(9) On the other hand, input data 1 to the mantissa right shift circuit 9
3 must be limited by O≦Q13≦15, so the following correction is necessary.
a −e < 16のとき Q13= a −e −(
10)a −e < 16のとき nx3=15 −(
11)上記式を回路構成のため論理記号で表わすと(3
)式の(α+8)、(−s十β)は(α+8)=((α
3■1)α2α1α。)=((C3のC:Mu)α2α
、α。)・・・(12)
(−8+β)= ((1+0)β2β1β。)=((β
3+CMu) β2β1β。)・・・(13)
又、(10)、(11)式に対する条件Cを求めると
x=(CMuのC3) −C3−(14)y=(CMu
+β3) =O=・(15)とすると
C= (x−y+(x■y)・C2) −C,u−(
16)=χ・C2・CMu−(17)
となる。When a −e < 16 Q13= a −e −(
10) When a −e < 16, nx3=15 −(
11) When the above formula is expressed in logical symbols for the circuit configuration, (3
) formula (α+8), (-s + β) is (α+8)=((α
3■1)α2α1α. )=((C3:Mu)α2α
, α. )...(12) (-8+β)=((1+0)β2β1β.)=((β
3+CMu) β2β1β. )...(13) Also, finding the condition C for equations (10) and (11), x=(C3 of CMu) -C3-(14)y=(CMu
+β3) =O=・(15), then C= (x−y+(x■y)・C2) −C, u−(
16)=χ・C2・CMu−(17).
第5図は上記原理に基いて構成された浮動小数点乗算に
おける指数下位桁あふれ回路の一実施例で各ブロック6
.7,8,12,15は第2の同一番号を付す部分に対
応する。同図において、信号QB 23. Qa−2
2,Qg 2’HQB 2°は上記のβ3.β2.
β3.β0に、又110 23t 21022+ Q□
o 2’+ (A1o2°は上記α3.C2゜C1,
α。に対応する。排他論理和55は(12)式のC3■
C問を実行し、オア回路56は(14)式のβ3+CM
uを実行する。比較補正回路12は=16−
CMuが“1″のときはスイッチS1をオンとし、S2
をオフとし信号Q18を“O”とする。C□が“O”の
ときはこの逆となり018はfli7となる。FIG. 5 shows an example of an exponent overflow circuit in floating point multiplication constructed based on the above principle, and each block 6
.. 7, 8, 12, and 15 correspond to the second portions with the same numbers. In the figure, signal QB 23. Qa-2
2, Qg 2'HQB 2° is the above β3. β2.
β3. To β0, 110 23t 21022+ Q□
o 2'+ (A1o2° is the above α3.C2°C1,
α. corresponds to Exclusive OR 55 is C3■ of formula (12)
After executing question C, the OR circuit 56 is β3+CM of equation (14).
Execute u. The comparison correction circuit 12 turns on the switch S1 when =16-CMu is "1", and turns on the switch S2.
is turned off and the signal Q18 is set to "O". When C□ is "O", this is reversed and 018 becomes fli7.
減算回路7はα−〇を出力するが、右シフト補正回路8
において、アンド回路57によって上記(17)式の条
件Cを判断し、シフトが16より大きいときは111”
を出力する。したがってα−eが≧16のときはシフト
信号Q13として15を設定、又α−eく16のときは
C3としてα−eを設定する。The subtraction circuit 7 outputs α−〇, but the right shift correction circuit 8
, the AND circuit 57 judges the condition C of the above equation (17), and if the shift is larger than 16, then 111''
Output. Therefore, when α-e is ≧16, 15 is set as the shift signal Q13, and when α-e is less than 16, α-e is set as C3.
以上の説明は指数下位桁あふれの補正を他の入力A3と
の加減算の中で行なった場合について述べたが、2入力
データA1.A2の乗算結果を第2の演算回路■の出力
として、直接取出したい場合には他の入力信号A3の仮
数部Q9のデータをO11致数のデータQ1oを−8に
すればよい。すなわち(00・・・0)X2−8=Oと
なりOを加算した出力となり、2人力A1.A2の積A
。が求まる。The above explanation has been about the case where the correction of the overflow of lower digits of the exponent is performed during addition and subtraction with other input data A3, but 2 input data A1. If it is desired to directly take out the multiplication result of A2 as the output of the second arithmetic circuit (2), the data of the mantissa part Q9 of the other input signal A3 should be O11, and the data Q1o of the matching number should be set to -8. In other words, (00...0) Product A of A2
. is found.
第1図は浮動小数点乗算における入力データのビット構
成図、第2図は本発明による浮動小数点乗算回路の一実
施例の構成を示すブロック図、第3図は上記実施例にお
ける加算回路2、指数部あふれ検出回路4、切換回路1
4の回路図、第4図は第1図の仮数補正回路3の回路図
、第5図は第1図のブロック6.7,8.15部の回路
図である。
1・・・乗算回路、2・・・加算回路、3・・・仮数補
正回路、4・・指数部術あふれ検出回路、5・・・仮数
部演算入力バス切換回路、6・・・指数補正回路、7・
・・減算回路、8・・右シフト補正回路、9・・・右シ
フト回路、10・・・固定小数点加減算回路、11・・
・指数比較回路、12・・・比較補正回路、13・・指
数演算入力バス切換回路、14..15・・・浮動小数
点演算と固定小数点演算切換回路。FIG. 1 is a bit configuration diagram of input data in floating point multiplication, FIG. 2 is a block diagram showing the configuration of an embodiment of a floating point multiplication circuit according to the present invention, and FIG. 3 is an adder circuit 2 and an exponent in the above embodiment. Overflow detection circuit 4, switching circuit 1
4 is a circuit diagram of the mantissa correction circuit 3 of FIG. 1, and FIG. 5 is a circuit diagram of blocks 6.7 and 8.15 of FIG. 1. DESCRIPTION OF SYMBOLS 1... Multiplication circuit, 2... Addition circuit, 3... Mantissa correction circuit, 4... Exponent overflow detection circuit, 5... Mantissa calculation input bus switching circuit, 6... Exponent correction circuit, 7.
... Subtraction circuit, 8... Right shift correction circuit, 9... Right shift circuit, 10... Fixed-point addition/subtraction circuit, 11...
- Index comparison circuit, 12... Comparison correction circuit, 13... Index calculation input bus switching circuit, 14. .. 15...Floating point arithmetic and fixed point arithmetic switching circuit.
Claims (1)
るディジタル乗算回路において、仮数乗算回路又は指数
加算回路から桁あふれを検出する検出回路と、上記検出
回路出力によって、桁あふれを補正する回路を有してな
る浮動小数点乗算回路。A detection circuit that detects overflow from a mantissa multiplication circuit or an exponent addition circuit in a digital multiplication circuit that multiplies two-input data in a two's complement floating point representation, and a circuit that corrects overflow using the output of the detection circuit. A floating point multiplication circuit comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63069513A JPS63259720A (en) | 1988-03-25 | 1988-03-25 | Floating point multiplication circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63069513A JPS63259720A (en) | 1988-03-25 | 1988-03-25 | Floating point multiplication circuit |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP55152053A Division JPS5776635A (en) | 1980-10-31 | 1980-10-31 | Floating multiplying circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63259720A true JPS63259720A (en) | 1988-10-26 |
JPH0327938B2 JPH0327938B2 (en) | 1991-04-17 |
Family
ID=13404888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63069513A Granted JPS63259720A (en) | 1988-03-25 | 1988-03-25 | Floating point multiplication circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63259720A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020059074A1 (en) * | 2018-09-20 | 2020-03-26 | 株式会社Pfu | Data construct, information processing device, method, and program |
JP2022048965A (en) * | 2020-09-15 | 2022-03-28 | 浙江大学 | Error unbiasedness approximation multiplier to normalized floating point number, and embodiment method thereof |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5330241A (en) * | 1976-09-01 | 1978-03-22 | Hitachi Ltd | Arithmetic unit |
-
1988
- 1988-03-25 JP JP63069513A patent/JPS63259720A/en active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5330241A (en) * | 1976-09-01 | 1978-03-22 | Hitachi Ltd | Arithmetic unit |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020059074A1 (en) * | 2018-09-20 | 2020-03-26 | 株式会社Pfu | Data construct, information processing device, method, and program |
JP2022048965A (en) * | 2020-09-15 | 2022-03-28 | 浙江大学 | Error unbiasedness approximation multiplier to normalized floating point number, and embodiment method thereof |
Also Published As
Publication number | Publication date |
---|---|
JPH0327938B2 (en) | 1991-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6360417B2 (en) | ||
US4999803A (en) | Floating point arithmetic system and method | |
US5181184A (en) | Apparatus for multiplying real-time 2's complement code in a digital signal processing system and a method for the same | |
JPS63259720A (en) | Floating point multiplication circuit | |
JPH08161152A (en) | Arithmetic unit for floating point | |
JPH0546363A (en) | Divider | |
US7003540B2 (en) | Floating point multiplier for delimited operands | |
US6654776B1 (en) | Method and apparatus for computing parallel leading zero count with offset | |
JPH10198552A (en) | Multiplier | |
JPS5966790A (en) | Operating circuit | |
JPS63229521A (en) | Shift circuit | |
JPH03102519A (en) | Divider | |
JP2001034455A (en) | Adding device, subtracting device, multiplying device and dividing device | |
JPS5960637A (en) | Arithmetic device for floating decimal point | |
JPH05204606A (en) | Floating point arithmetic system and unit | |
JPH07200259A (en) | Arithmetic processing method and arithmetic processor | |
JP2622012B2 (en) | Shift circuit | |
JPS63254525A (en) | Dividing device | |
JPH0293728A (en) | Operation processor | |
JPH0253819B2 (en) | ||
JPH0427587B2 (en) | ||
JPS60235241A (en) | Floating point adding circuit | |
JPH0413734B2 (en) | ||
JPH0644048A (en) | Floating point arithmetic unit and method | |
JPH0414173A (en) | Fixed point product sum computing element |