JPH0540605A - Floating point multiplier - Google Patents

Floating point multiplier

Info

Publication number
JPH0540605A
JPH0540605A JP19414591A JP19414591A JPH0540605A JP H0540605 A JPH0540605 A JP H0540605A JP 19414591 A JP19414591 A JP 19414591A JP 19414591 A JP19414591 A JP 19414591A JP H0540605 A JPH0540605 A JP H0540605A
Authority
JP
Japan
Prior art keywords
multiplication
point number
circuit
floating
point
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
Application number
JP19414591A
Other languages
Japanese (ja)
Inventor
Takeshi Torishima
剛 鳥島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP19414591A priority Critical patent/JPH0540605A/en
Publication of JPH0540605A publication Critical patent/JPH0540605A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To attain the multiplication of the fixed points and also the non- normalized floating points without deteriorating the multiplying speed of the normalized floating points just by adding a small quantity of hardware to a constitution where a normalized floating point multiplier is used as a basic device. CONSTITUTION:The fixed points or the mantissas (of the non-normalized floating points) which are held by the registers 1 and 2 are shifted to the left by the left shifters 5 and 6 by zero numbers P1 and P2 continuous to the highest places detected by the priority encoders 3 and 4 and then multiplied by e multiplier circuit 7 which multiplies the mantissas of the normalized floating points. Both numbers P1 and P2 are added together by an adder 8, and the shift extent of a right shifter 9 is obtained. Then the shifter 9 shifts the multiplication result of the circuit 7 to the right by the number shown by the addition result of the adder 8. Thus, the multiplication results are obtained for the fixed points (or the mantissas of non-normalized floating points) held by the registers 1 end 2.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、正規化浮動小数点数
の乗算の他、固定小数点数の乗算、更には非正規化浮動
小数点数の乗算に好適な浮動小数点乗算装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a floating-point multiplication apparatus suitable for multiplication of fixed-point numbers as well as multiplication of normalized floating-point numbers, and further multiplication of non-normalized floating-point numbers.

【0002】[0002]

【従来の技術】従来、正規化浮動小数点数の他、固定小
数点数を扱う計算機の乗算装置では、正規化浮動小数点
数の乗算を実現する専用の乗算装置と、固定小数点数の
乗算を実現する専用の乗算装置とを別々に備えるのが一
般的であった。
2. Description of the Related Art Conventionally, in a multiplication device of a computer that handles fixed-point numbers in addition to normalized floating-point numbers, a dedicated multiplication device for realizing multiplication of normalized floating-point numbers and multiplication of fixed-point numbers are realized. It was common to have a dedicated multiplier separately.

【0003】また、上記した正規化浮動小数点数および
固定小数点数の他に、非正規化浮動小数点数をも扱う場
合には、非正規化浮動小数点数の乗算を実現する専用の
乗算装置を更に備えていた。
Further, in addition to the above-mentioned normalized floating point number and fixed point number, when a denormalized floating point number is also handled, a dedicated multiplication device for realizing multiplication of the denormalized floating point number is further provided. I was prepared.

【0004】これに対し、ハードウェア量を減らすため
に、固定小数点数用の乗算装置、即ち被乗数および除数
の上位に連続するゼロが存在することを前提として乗算
を行うことが可能な複雑な構成の乗算装置をベースにし
て(共用して)、固定小数点数の乗算の他、正規化浮動
小数点数の乗算、更には非正規化浮動小数点数の乗算を
実現する方式も知られていた。
On the other hand, in order to reduce the amount of hardware, a multiplication device for fixed-point numbers, that is, a complex structure capable of performing multiplication on the assumption that there are consecutive zeros in the upper part of the multiplicand and the divisor. Based on (sharing) the multiplication device of (1), a method of realizing the multiplication of a fixed-point number, the multiplication of a normalized floating-point number, and the multiplication of a non-normalized floating-point number was also known.

【0005】[0005]

【発明が解決しようとする課題】上記したように従来
は、正規化浮動小数点数の乗算の他、固定小数点数(更
には非正規化浮動小数点数)の乗算を実現するのに、正
規化浮動小数点数の乗算専用の乗算装置と、固定小数点
数の乗算専用の乗算装置(と、更には非正規化浮動小数
点数専用の乗算装置)とを別々に備えるのが一般的であ
った。しかし、このような構成では、装置の規模が膨大
となる欠点があった。また、このような構成の装置の規
模を抑えるために、より低機能の乗算装置を組合せて演
算を実現することもあるが、演算速度の低下を招く問題
があった。
As described above, conventionally, in order to realize the multiplication of a fixed-point number (further, a denormalized floating-point number) in addition to the multiplication of a normalized floating-point number, a normalized floating-point number is used. It has been common to separately provide a multiplication device dedicated to multiplication of a decimal point number and a multiplication device dedicated to multiplication of a fixed point number (and further a multiplication device dedicated to denormalized floating point numbers). However, such a configuration has a drawback that the scale of the device becomes enormous. Further, in order to suppress the scale of the apparatus having such a configuration, a multiplication device having a lower function may be combined to realize the calculation, but there is a problem that the calculation speed is lowered.

【0006】一方、固定小数点数用の乗算装置をベース
にして正規化浮動小数点数(更には非正規化浮動小数点
数)の乗算を実現することにより、装置規模が膨大とな
るのを抑える方式では、被乗数および乗数の上位に連続
するゼロが存在することを前提として乗算を行う構成と
なっているため、浮動小数点演算の速度が低下する問題
があった。
On the other hand, in the method of suppressing the enormous scale of the apparatus by realizing the multiplication of the normalized floating point number (further, the denormalized floating point number) based on the fixed point multiplication device. However, since the multiplication is performed on the assumption that there are consecutive zeros in the multiplicand and the higher order of the multiplier, there is a problem that the speed of floating-point arithmetic is reduced.

【0007】この発明は上記事情に鑑みてなされたもの
でその目的は、正規化浮動小数点数の乗算装置を基本と
する構成に少量のハードウェアを付加するだけで、正規
化浮動小数点乗算速度の低下を招くことなく、固定小数
点数の乗算、更には非正規化浮動小数点数の乗算が行え
る浮動小数点乗算装置を提供することにある。
The present invention has been made in view of the above circumstances, and an object thereof is to increase the normalization floating point multiplication speed by adding a small amount of hardware to the structure based on the normalization floating point number multiplication device. It is an object of the present invention to provide a floating-point multiplication device that can perform multiplication of fixed-point numbers and further denormalization floating-point numbers without degrading.

【0008】[0008]

【課題を解決するための手段】この発明は、正規化され
た浮動小数点数の仮数部の乗算を行うための乗算回路
と、乗算用に入力された固定小数点数(または非正規化
浮動小数点数の仮数部)の最上位側に連続しているゼロ
の数を検出するゼロ検出回路と、このゼロ検出回路によ
って検出されたゼロの数だけ入力固定小数点数(または
非正規化浮動小数点数の仮数部)を左シフトする左シフ
ト回路と、上記ゼロ検出回路によって検出された被乗数
となる固定小数点数(または非正規化浮動小数点数の仮
数部)のゼロの数と乗数となる固定小数点数(または非
正規化浮動小数点数の仮数部)のゼロの数とを加算する
加算器と、上記左シフト回路による左シフト後の上記被
乗数および乗数を対象とする乗算回路の乗算結果を加算
器の加算結果の示す数だけ右シフトする右シフト回路と
を備えたことを特徴とするものである。
SUMMARY OF THE INVENTION The present invention provides a multiplication circuit for multiplying the mantissa part of a normalized floating point number, and a fixed point number (or denormalized floating point number) input for multiplication. Zero detection circuit that detects the number of consecutive zeros on the most significant side of (the mantissa part of), and the number of zeros detected by this zero detection circuit as the input fixed-point number (or the mantissa of the denormalized floating-point number). Part) to the left shift circuit, and the fixed-point number (or mantissa part of the denormalized floating-point number) of the multiplicand detected by the zero detection circuit, and the fixed-point number (or The result of addition of the adder for adding the number of zeros of the mantissa part of the denormalized floating point number) and the multiplication circuit for the above multiplicand and multiplier after left shift by the above left shift circuit Indicates It is characterized in that a right shift circuit for right shifting.

【0009】[0009]

【作用】上記の構成において、固定小数点数(または非
正規化浮動小数点数の仮数部)の乗算の場合には、その
被演算データ(被乗数および乗数)が、その最上位側に
連続するゼロの数だけ左シフト回路により左シフトされ
て、正規化浮動小数点数の仮数部乗算用の乗算回路に入
力されるため、同乗算回路を利用した固定小数点数(ま
たは非正規化浮動小数点数の仮数部)の乗算が速度低下
を招くことなく行える。
In the above structure, in the case of multiplication of a fixed-point number (or the mantissa part of a denormalized floating-point number), the operand data (multiplicand and multiplier) of the consecutive zeros is the highest. The number is shifted to the left by the left shift circuit and input to the multiplication circuit for multiplication of the mantissa part of the normalized floating point number. Therefore, the fixed point number (or the mantissa part of the denormalized floating point number) using the multiplication circuit is used. ) Multiplication can be performed without reducing the speed.

【0010】この乗算回路の乗算結果は、加算器の加算
結果の示す数だけ、右シフト回路によって右シフトさ
れ、正しい固定小数点数(または非正規化浮動小数点数
の仮数部)の乗算結果に補正される。
The multiplication result of this multiplication circuit is right-shifted by the right shift circuit by the number indicated by the addition result of the adder, and corrected to the multiplication result of the correct fixed-point number (or the mantissa part of the denormalized floating-point number). To be done.

【0011】[0011]

【実施例】図1はこの発明の一実施例に係る浮動小数点
乗算装置の要部構成を示すブロック図である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a block diagram showing the essential structure of a floating point multiplication device according to an embodiment of the present invention.

【0012】図1において、1は乗算の被乗数となる正
規化浮動小数点数の仮数部、乗算の被乗数となる非正規
化浮動小数点数の仮数部、または乗算の被乗数となる固
定小数点数を保持するためのレジスタ(入力レジス
タ)、2は乗算の乗数となる正規化浮動小数点数の仮数
部、乗算の乗数となる非正規化浮動小数点数の仮数部、
または乗算の乗数となる固定小数点数を保持するための
レジスタ(入力レジスタ)である。
In FIG. 1, reference numeral 1 holds a mantissa part of a normalized floating point number which is a multiplicand of multiplication, a mantissa part of a denormalized floating point number which is a multiplicand of multiplication, or a fixed point number which is a multiplicand of multiplication. Register (input register), 2 is a mantissa part of a normalized floating-point number that is a multiplier for multiplication, a mantissa part of a denormalized floating-point number that is a multiplier for multiplication,
Alternatively, it is a register (input register) for holding a fixed-point number that is a multiplier of multiplication.

【0013】3はレジスタ1に保持されているデータを
入力し、同データの最上位側に連続している“0”(ゼ
ロ)の数(桁数)P1を出力するためのゼロ検出回路、
例えばプライオリティエンコーダ、4はレジスタ2に保
持されているデータを入力し、同データの最上位側に連
続している“0”の数(桁数)P2を出力するためのプ
ライオリティエンコーダ(ゼロ検出回路)である。
Reference numeral 3 denotes a zero detection circuit for inputting the data held in the register 1 and outputting the number (digit number) P1 of "0" (zero) which is continuous on the most significant side of the data.
For example, the priority encoder (4) inputs the data held in the register (2), and outputs the number (digit number) P2 of consecutive "0" s on the most significant side of the data (priority encoder (zero detection circuit)). ).

【0014】5はレジスタ1に保持されているデータを
プライオリティエンコーダ3によって検出されたゼロの
数P1だけ左シフトする左シフタ、6はレジスタ2に保
持されているデータをプライオリティエンコーダ4によ
って検出されたゼロの数P2だけ左シフトする左シフタ
である。
Reference numeral 5 is a left shifter for shifting the data held in the register 1 to the left by the number P1 of zeros detected by the priority encoder 3, and 6 is detected by the priority encoder 4 for the data held in the register 2. It is a left shifter that shifts left by the number P2 of zeros.

【0015】7は乗算回路であり、その被乗数側入力A
には左シフタ5の出力が接続され、その乗数側入力Bに
は左シフタ6の出力が接続されている。この乗算回路7
は、正規化浮動小数点数の仮数部の乗算を実行するため
の周知の回路であり、従来であれば、その被乗数側入力
Aにレジスタ1の出力を接続し、その乗数側入力Bにレ
ジスタ2の出力を接続して用いるものである。
Reference numeral 7 is a multiplication circuit, and its multiplicand side input A
Is connected to the output of the left shifter 5, and the multiplier side input B is connected to the output of the left shifter 6. This multiplication circuit 7
Is a well-known circuit for executing the multiplication of the mantissa part of the normalized floating point number, and conventionally, the output of the register 1 is connected to the multiplicand side input A and the multiplier 2 side input B is connected to the register 2 The output of is connected and used.

【0016】8はプライオリティエンコーダ3,4によ
って検出されたゼロの数P1,P2を加算するための加
算器、9は乗算回路7の乗算結果(出力)を加算器8の
加算結果の示す数だけ右シフトする右シフタである。
Reference numeral 8 denotes an adder for adding the numbers P1 and P2 of zeros detected by the priority encoders 3 and 4, and 9 denotes the multiplication result (output) of the multiplication circuit 7 by the number indicated by the addition result of the adder 8. A right shifter that shifts to the right.

【0017】次に、図1の構成の動作を説明する。ま
ず、図1の構成は、周知のIEEE浮動小数点形式の正
規化データの乗算装置に少量のハードウェアを付加した
ものである。即ち図1の構成において、レジスタ1,2
および乗算回路7が、IEEE浮動小数点形式の正規化
データの乗算装置の構成要素であり、プライオリティエ
ンコーダ3,4、左シフタ5,6、加算器8および右シ
フタ9を付加することにより、以下に述べるように、正
規化浮動小数点数の仮数部の乗算の他、非正規化浮動小
数点数の仮数部の乗算および固定小数点数の乗算を可能
とするものである。
Next, the operation of the configuration of FIG. 1 will be described. First, the configuration of FIG. 1 is obtained by adding a small amount of hardware to a well-known IEEE floating-point format normalized data multiplication device. That is, in the configuration of FIG.
And the multiplication circuit 7 is a component of the device for multiplying the normalized data in the IEEE floating point format, and by adding the priority encoders 3 and 4, the left shifters 5 and 6, the adder 8 and the right shifter 9, As described above, in addition to the multiplication of the mantissa part of the normalized floating point number, the multiplication of the mantissa part of the denormalized floating point number and the multiplication of the fixed point number are possible.

【0018】さて、レジスタ1には、正規化浮動小数点
数の乗算時であれば被乗数となる正規化された浮動小数
点の仮数部が入力保持され、非正規化浮動小数点数の乗
算時であれば被乗数となる非正規化浮動小数点数が入力
保持され、固定小数点数の乗算時であれば被乗数となる
固定小数点数が入力保持される。
The register 1 holds the mantissa part of the normalized floating point, which is the multiplicand in the case of multiplication of the normalized floating point number, and holds it in the case of multiplication of the denormalized floating point number. The denormalized floating-point number that is the multiplicand is input and held, and when the fixed-point number is multiplied, the fixed-point number that is the multiplicand is input and held.

【0019】同様にレジスタ2には、正規化浮動小数点
数の乗算時であれば乗数となる正規化された浮動小数点
の仮数部が入力保持され、非正規化浮動小数点数の乗算
時であれば乗数となる非正規化浮動小数点数が入力保持
され、固定小数点数の乗算時てあれば乗数となる固定小
数点数が入力保持される。
Similarly, the register 2 holds the mantissa part of the normalized floating point, which is a multiplier when multiplying the normalized floating point number, and holds it when multiplying the denormalized floating point number. The denormalized floating-point number that is a multiplier is input and held, and the fixed-point number that is a multiplier is input and held if the fixed-point number is multiplied.

【0020】プライオリティエンコーダ3,4はレジス
タ1,2の出力データの最上位(MSB)に連続してい
る“0”の2進桁(binary digit)数P1,P2を検出
し、同P1,P2を出力する。ここで、レジスタ1,2
の保持データ(被乗数,乗数)が正規化浮動小数点数の
仮数部の場合には、MSBは“1”であるので、P1,
P2の値はいずれも「0」となる。
The priority encoders 3 and 4 detect the binary digit numbers P1 and P2 of "0" which are consecutive to the most significant (MSB) of the output data of the registers 1 and 2, and the same P1 and P2 are detected. Is output. Where registers 1 and 2
If the stored data (multiplicand, multiplier) of is the mantissa part of the normalized floating point number, the MSB is "1", so P1,
The values of P2 are all "0".

【0021】左シフタ5,6はレジスタ1,2の出力デ
ータをプライオリティエンコーダ3,4から出力される
P1,P2の示す2進桁数(ビット数)だけ左シフト
し、MSBが“1”となったデータを出力する。したが
って、レジスタ1,2の出力データが正規化浮動小数点
数の場合には左シフトは行われず、左シフタ5,6の出
力はこのレジスタ1,2の出力データに一致する。
The left shifters 5 and 6 shift the output data of the registers 1 and 2 to the left by the number of binary digits (bit number) indicated by P1 and P2 output from the priority encoders 3 and 4, and the MSB is set to "1". Output the data. Therefore, when the output data of the registers 1 and 2 is the normalized floating point number, the left shift is not performed, and the outputs of the left shifters 5 and 6 match the output data of the registers 1 and 2.

【0022】左シフタ5の出力は乗算回路7の被乗数側
入力Aに供給され、左シフタ6の出力は乗算回路7の乗
数側入力Bに供給される。乗算回路7は、入力A,Bに
供給された左シフタ5,6の出力を入力し、即ちレジス
タ1,2の出力データがプライオリティエンコーダ3,
4の出力P1,P2に従って左シフトされ、そのMSB
が“1”となっているデータを入力し、正規化されてい
る浮動小数点数の仮数部として両データの乗算を行う。
The output of the left shifter 5 is supplied to the multiplicand side input A of the multiplication circuit 7, and the output of the left shifter 6 is supplied to the multiplier side input B of the multiplication circuit 7. The multiplication circuit 7 inputs the outputs of the left shifters 5 and 6 supplied to the inputs A and B, that is, the output data of the registers 1 and 2 are the priority encoders 3 and 3, respectively.
4 is shifted left according to the outputs P1 and P2, and its MSB
Is input, and the data is multiplied as the mantissa part of the normalized floating point number.

【0023】さて、プライオリティエンコーダ3,4の
出力P1,P2は加算器8の左側入力L,右側入力Rに
供給される。加算器8は、左側入力L,右側入力Rに供
給されたP1,P2、即ち入力データの左シフト数を加
算し、乗算回路7からの出力データ(乗算結果)に対す
る右シフト数(P1+P2)を算出する。
The outputs P1 and P2 of the priority encoders 3 and 4 are supplied to the left input L and the right input R of the adder 8. The adder 8 adds P1 and P2 supplied to the left input L and the right input R, that is, the left shift number of the input data, and outputs the right shift number (P1 + P2) to the output data (multiplication result) from the multiplication circuit 7. calculate.

【0024】右シフタ9は、乗算回路7の出力データ
(乗算結果)を、加算器8の加算結果(P1+P2)で
示される2進桁数だけ右シフトし、正規化浮動小数点数
の仮数部、非正規化浮動小数点数の仮数部、または固定
小数点数の乗算結果を出力する。
The right shifter 9 shifts the output data (multiplication result) of the multiplication circuit 7 to the right by the number of binary digits indicated by the addition result (P1 + P2) of the adder 8, and the mantissa part of the normalized floating point number, Outputs the mantissa part of a denormalized floating point number or the multiplication result of a fixed point number.

【0025】以上の動作により、正規化浮動小数点数の
乗算、非正規化浮動小数点数の乗算および固定小数点数
の乗算が可能となる。このような乗算が可能となる更に
詳細な理由を、(1)正規化浮動小数点数の乗算の場合
と、(2)非正規化浮動小数点数の乗算または固定小数
点数の乗算の場合について説明する。
By the above operation, it is possible to perform the multiplication of the normalized floating point number, the denormalization floating point number and the fixed point number. More detailed reasons why such multiplication is possible will be described for (1) multiplication of normalized floating-point numbers and (2) multiplication of denormalized floating-point numbers or multiplication of fixed-point numbers. ..

【0026】(1)正規化浮動小数点数の乗算の場合 まず、レジスタ1,2に正規化浮動小数点数の仮数部が
入力保持された場合、そのMSBは“1”であるため、
プライオリティエンコーダ3,4の出力P1,P2の値
はいずれも「0」となり、したがって加算器8の出力も
「0」となる。この場合、左シフタ5,6および右シフ
タ9は、いずれもシフト動作を行わず、通常の正規化浮
動小数点数の仮数部の乗算が行われる。
(1) Case of Multiplication of Normalized Floating Point Number First, when the mantissa part of the normalized floating point number is input and held in the registers 1 and 2, its MSB is "1".
The values of the outputs P1 and P2 of the priority encoders 3 and 4 are both "0", and therefore the output of the adder 8 is also "0". In this case, the left shifters 5 and 6 and the right shifter 9 do not perform the shift operation, and the normal mantissa part of the normalized floating-point number is multiplied.

【0027】(2)非正規化浮動小数点数の乗算または
固定小数点数の乗算の場合 レジスタ1,2に非正規化浮動小数点数の仮数部または
固定小数点数が入力保持された場合には、プライオリテ
ィエンコーダ3,4はMSB側に連続している“0”の
数P1,P2を出力する。レジスタ1,2の出力デー
タ、即ち入力された非正規化浮動小数点数の仮数部、ま
たは固定小数点数は、左シフタ5,6により、プライオ
リティエンコーダ3,4の出力P1,P2に従って左シ
フトされる。
(2) In the case of denormalized floating-point number multiplication or fixed-point number multiplication When the mantissa part or fixed-point number of a denormalized floating-point number is input and held in registers 1 and 2, priority is given. The encoders 3 and 4 output the numbers P1 and P2 of "0" which are continuous on the MSB side. The output data of the registers 1 and 2, that is, the mantissa part of the input denormalized floating point number or the fixed point number is left-shifted by the left shifters 5 and 6 according to the outputs P1 and P2 of the priority encoders 3 and 4. ..

【0028】ここで、入力された非正規化浮動小数点数
の仮数部、または固定小数点数を、N1,N2とする
と、左シフタ5,6によるシフト後の値(左シフタ5,
6の出力)は、プライオリティエンコーダ3,4の出力
がP1,P2であることから、それぞれ N1×2P1 N2×2P2 となる。
Here, assuming that the mantissa part or fixed-point number of the denormalized floating point number input is N1 and N2, the value after shifting by the left shifters 5 and 6 (left shifter 5 and left shifter 5).
6), the outputs of the priority encoders 3 and 4 are P1 and P2, respectively, and are thus N1 × 2 P1 N2 × 2 P2 .

【0029】この値(左シフタ5,6の出力N1×
P1,N2×2P2)を乗算回路7の被乗数側入力A,乗
数側入力Bに入力すると、乗算回路7の出力として、 N1×N2×2P1+P2 が得られる。
This value (the output N1 × of the left shifters 5 and 6)
2 P1 , N2 × 2 P2 ) is input to the multiplicand side input A and the multiplier side input B of the multiplication circuit 7, the output of the multiplication circuit 7 is N1 × N2 × 2 P1 + P2 Is obtained.

【0030】さて、加算器8では、P1+P2の計算を
行うことから、その値P1+P2だけ乗算回路7の出力
を右シフトすれば、結果として N1×N2 が得られる。以上の手順で、正規化浮動小数点数の仮数
部の乗算、非正規化浮動小数点数の仮数部の乗算および
固定小数点数の乗算を実現することができる。
Since the adder 8 calculates P1 + P2, if the output of the multiplication circuit 7 is right-shifted by the value P1 + P2, N1 × N2 is obtained as a result. By the above procedure, the multiplication of the mantissa part of the normalized floating point number, the multiplication of the mantissa part of the denormalized floating point number, and the multiplication of the fixed point number can be realized.

【0031】なお、前記実施例では、IEEE浮動小数
点形式の正規化データの乗算装置に少量のハードウェア
を付加したものとして説明したが、本発明は、他の浮動
小数点形式の正規化データの乗算装置にも同様に適用で
きるものである。
In the above embodiment, the description has been made assuming that a small amount of hardware is added to the device for multiplying the normalized data in the IEEE floating point format, but the present invention is not limited to multiplication of the normalized data in other floating point format. The same applies to the device.

【0032】[0032]

【発明の効果】以上詳述したようにこの発明によれば、
被乗数,乗数として入力された固定小数点数(または非
正規化浮動小数点数の仮数部)の最上位側に連続してい
るゼロの数をゼロ検出回路(第1,第2ゼロ検出回路)
により検出し、その数だけ入力固定小数点数(または入
力非正規化浮動小数点数の仮数部)を左シフト回路(第
1,第2左シフト回路)により左シフトして正規化浮動
小数点数の仮数部乗算用の乗算回路に供給することで、
正規化浮動小数点数用の乗算回路でありながら、固定小
数点数(または非正規化浮動小数点数の仮数部)の乗算
を正規化浮動小数点数の仮数部の乗算であるかのように
実行することができ、しかも乗算回路の出力を、加算器
にて算出した被乗数側と乗数側の左シフト量の和の分だ
け、右シフト回路により右シフトすることにより、固定
小数点数(または非正規化浮動小数点数の仮数部)につ
いての正しい乗算結果を得ることができる。
As described in detail above, according to the present invention,
Zero detection circuit (first and second zero detection circuits) that detects the number of zeros that are consecutive on the most significant side of the fixed-point number (or the mantissa part of the denormalized floating-point number) input as the multiplicand or multiplier
Detected, and the input fixed-point number (or the mantissa part of the input denormalized floating-point number) is left-shifted by the left shift circuit (first and second left shift circuits) by that number, and the mantissa of the normalized floating-point number is detected. By supplying to the multiplication circuit for partial multiplication,
Performing multiplication of fixed-point numbers (or mantissas of denormalized floating-point numbers) as if they were multiplication circuits for normalized floating-point numbers, as if they were multiplications of mantissas of normalized floating-point numbers. In addition, the output of the multiplication circuit is shifted to the right by the right shift circuit by the sum of the left shift amounts on the multiplicand side and the multiplier side calculated by the adder. It is possible to obtain the correct multiplication result for the mantissa part of the decimal point number.

【0033】即ち、この発明によれば、正規化浮動小数
点数の乗算装置を基本とする構成に、ゼロ検出回路、左
シフト回路、右シフト回路および加算器といった少量の
ハードウェアを付加するだけで、正規化浮動小数点乗算
速度の低下を招くことなく、固定小数点数の乗算、更に
は非正規化浮動小数点数の乗算を行うことができる。
That is, according to the present invention, a small amount of hardware such as a zero detection circuit, a left shift circuit, a right shift circuit and an adder is added to the structure based on the normalized floating point number multiplication device. It is possible to carry out multiplication of fixed-point numbers and further multiplication of non-normalized floating-point numbers without lowering the normalization floating-point multiplication speed.

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

【図1】この発明の一実施例に係る浮動小数点乗算装置
の構成を示すブロック図。
FIG. 1 is a block diagram showing the configuration of a floating point multiplication device according to an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1,2…レジスタ、3,4…プライオリティエンコーダ
(ゼロ検出回路)、5,6…左シフタ(左シフト回
路)、7…乗算回路、8…加算器、9…右シフタ(右シ
フト回路)。
1, 2 ... Register, 3, 4 ... Priority encoder (zero detection circuit), 5, 6 ... Left shifter (left shift circuit), 7 ... Multiplication circuit, 8 ... Adder, 9 ... Right shifter (right shift circuit).

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 正規化された浮動小数点数の仮数部の乗
算を行うための乗算回路を有する浮動小数点乗算装置に
おいて、 被乗数となる固定小数点数の最上位側に連続しているゼ
ロの数を検出する第1のゼロ検出回路と、 乗数となる固定小数点数の最上位側に連続しているゼロ
の数を検出する第2のゼロ検出回路と、 上記第1のぜロ検出回路によって検出されたゼロの数だ
け上記被乗数を左シフトして上記乗算回路に供給する第
1の左シフト回路と、 上記第2のぜロ検出回路によって検出されたゼロの数だ
け上記乗数を左シフトして上記乗算回路に供給する第2
の左シフト回路と、 上記第1および第2のゼロ検出回路で検出されたゼロの
数を加算する加算器と、 上記第1および第2の左シフト回路による左シフト後の
上記被乗数および乗数を対象とする上記乗算回路の乗算
結果を上記加算器の加算結果の示す数だけ右シフトする
右シフト回路と、 を具備し、正規化浮動小数点数の乗算に加え、固定小数
点数の乗算も可能としたことを特徴とする浮動小数点乗
算装置。
1. A floating-point multiplication device having a multiplication circuit for performing multiplication of a mantissa part of a normalized floating-point number, wherein the number of zeros consecutive on the most significant side of a fixed-point number which is a multiplicand is A first zero detection circuit for detecting, a second zero detection circuit for detecting the number of consecutive zeros on the most significant side of a fixed-point number that is a multiplier, and a first zero detection circuit for detecting the number. And a first left shift circuit for left-shifting the multiplicand by the number of zeros and supplying it to the multiplication circuit, and a left-shift for the multiplier by the number of zeros detected by the second zero detection circuit. Second supply to the multiplication circuit
Left shift circuit, an adder for adding the number of zeros detected by the first and second zero detection circuits, and the multiplicand and multiplier after left shift by the first and second left shift circuits. A right shift circuit for right-shifting the multiplication result of the target multiplication circuit by the number indicated by the addition result of the adder; and, in addition to the multiplication of the normalized floating point number, the multiplication of the fixed point number is also possible. A floating-point multiplication device characterized in that
【請求項2】 正規化された浮動小数点数の仮数部の乗
算を行うための乗算回路を有する浮動小数点乗算装置に
おいて、 被乗数となる非正規化浮動小数点数の仮数部、または固
定小数点数の最上位側に連続しているゼロの数を検出す
る第1のゼロ検出回路と、 乗数となる非正規化浮動小数点数の仮数部、または固定
小数点数の最上位側に連続しているゼロの数を検出する
第2のゼロ検出回路と、 上記第1のぜロ検出回路によって検出されたゼロの数だ
け上記被乗数を左シフトして上記乗算回路に供給する第
1の左シフト回路と、 上記第2のぜロ検出回路によって検出されたゼロの数だ
け上記乗数を左シフトして上記乗算回路に供給する第2
の左シフト回路と、 上記第1および第2のゼロ検出回路で検出されたゼロの
数を加算する加算器と、 上記第1および第2の左シフト回路による左シフト後の
上記被乗数および乗数を対象とする上記乗算回路の乗算
結果を上記加算器の加算結果の示す数だけ右シフトする
右シフト回路と、 を具備し、正規化浮動小数点数の乗算に加え、非正規化
浮動小数点数の乗算および固定小数点数の乗算も可能と
したことを特徴とする浮動小数点乗算装置。
2. A floating-point multiplication apparatus having a multiplication circuit for multiplying a mantissa part of a normalized floating-point number, wherein a mantissa part of a denormalized floating-point number to be a multiplicand, or a fixed-point number maximum The first zero detection circuit that detects the number of consecutive zeros on the upper side, and the mantissa part of the denormalized floating-point number that is a multiplier, or the number of consecutive zeros on the most significant side of the fixed-point number. A second zero detection circuit for detecting the above, a first left shift circuit for left-shifting the multiplicand by the number of zeros detected by the first zero detection circuit, and supplying the left-shifted multiplicand to the multiplication circuit; The second multiplier is left-shifted by the number of zeros detected by the zero detection circuit and is supplied to the multiplication circuit.
Left shift circuit, an adder for adding the number of zeros detected by the first and second zero detection circuits, and the multiplicand and multiplier after left shift by the first and second left shift circuits. A right shift circuit for right-shifting the multiplication result of the target multiplication circuit by the number indicated by the addition result of the adder; and, in addition to the multiplication of the normalized floating point number, the multiplication of the denormalized floating point number And a floating point multiplication device characterized by being capable of multiplying a fixed point number.
JP19414591A 1991-08-02 1991-08-02 Floating point multiplier Pending JPH0540605A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19414591A JPH0540605A (en) 1991-08-02 1991-08-02 Floating point multiplier

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19414591A JPH0540605A (en) 1991-08-02 1991-08-02 Floating point multiplier

Publications (1)

Publication Number Publication Date
JPH0540605A true JPH0540605A (en) 1993-02-19

Family

ID=16319664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19414591A Pending JPH0540605A (en) 1991-08-02 1991-08-02 Floating point multiplier

Country Status (1)

Country Link
JP (1) JPH0540605A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100402734B1 (en) * 2001-12-21 2003-10-22 한국전자통신연구원 the fixed point multiplier using a coded multiplicnd and the method thereof
JP2008533617A (en) * 2005-03-17 2008-08-21 クゥアルコム・インコーポレイテッド Method for multiplying two operands and array multiplier
US8041758B2 (en) 2006-02-23 2011-10-18 Nec Computer Techno, Ltd. Multiplier and arithmetic unit
US8280941B2 (en) * 2007-12-19 2012-10-02 HGST Netherlands B.V. Method and system for performing calculations using fixed point microprocessor hardware
JP2015170359A (en) * 2014-03-07 2015-09-28 エイアールエム リミテッド Data processing apparatus and method for multiplying floating point operands
JP2015228226A (en) * 2008-06-30 2015-12-17 インテル コーポレイション Efficient parallel floating point exception handling in processor
JP2021528756A (en) * 2018-06-19 2021-10-21 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングRobert Bosch Gmbh Computational units, methods and computer programs for multiplying at least two multiplicands

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100402734B1 (en) * 2001-12-21 2003-10-22 한국전자통신연구원 the fixed point multiplier using a coded multiplicnd and the method thereof
JP2008533617A (en) * 2005-03-17 2008-08-21 クゥアルコム・インコーポレイテッド Method for multiplying two operands and array multiplier
KR100986405B1 (en) * 2005-03-17 2010-10-08 콸콤 인코포레이티드 Low power array multiplier
US8041758B2 (en) 2006-02-23 2011-10-18 Nec Computer Techno, Ltd. Multiplier and arithmetic unit
US8280941B2 (en) * 2007-12-19 2012-10-02 HGST Netherlands B.V. Method and system for performing calculations using fixed point microprocessor hardware
JP2015228226A (en) * 2008-06-30 2015-12-17 インテル コーポレイション Efficient parallel floating point exception handling in processor
JP2015170359A (en) * 2014-03-07 2015-09-28 エイアールエム リミテッド Data processing apparatus and method for multiplying floating point operands
JP2021528756A (en) * 2018-06-19 2021-10-21 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングRobert Bosch Gmbh Computational units, methods and computer programs for multiplying at least two multiplicands
US11537361B2 (en) 2018-06-19 2022-12-27 Robert Bosch Gmbh Processing unit, method and computer program for multiplying at least two multiplicands

Similar Documents

Publication Publication Date Title
US6751644B1 (en) Method and apparatus for elimination of inherent carries
KR100242274B1 (en) Floating point/integer processor with divide and square root functions
US5053631A (en) Pipelined floating point processing unit
US4999803A (en) Floating point arithmetic system and method
EP0483864B1 (en) Hardware arrangement for floating-point addition and subtraction
US6233597B1 (en) Computing apparatus for double-precision multiplication
EP0421092A2 (en) Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier
JPH02196328A (en) Floating point computing apparatus
US5993051A (en) Combined leading one and leading zero anticipator
KR100203468B1 (en) Arithmetic apparatus for floating point numbers
US4594680A (en) Apparatus for performing quadratic convergence division in a large data processing system
US5260889A (en) Computation of sticky-bit in parallel with partial products in a floating point multiplier unit
EP0416308A2 (en) Rectangular array signed digit multiplier
JPH0540605A (en) Floating point multiplier
US7080112B2 (en) Method and apparatus for computing an approximation to the reciprocal of a floating point number in IEEE format
JPH04355827A (en) Square root extracting operation device
Krishnan A comparative study on the performance of FPGA implementations of high-speed single-precision binary floating-point multipliers
US5377134A (en) Leading constant eliminator for extended precision in pipelined division
JP3064405B2 (en) Complex number processing
JPH04172526A (en) Floating point divider
JP2645422B2 (en) Floating point processor
JP2003084969A (en) Floating point remainder computing element, information processing device, and computer program
JPH0540609A (en) Floating point divider
US5208769A (en) Unsigned integer multiply/divide circuit
JPH0540606A (en) Floating point multiplier/divider