[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2000259394A - Floating point multiplier - Google Patents

Floating point multiplier

Info

Publication number
JP2000259394A
JP2000259394A JP11062387A JP6238799A JP2000259394A JP 2000259394 A JP2000259394 A JP 2000259394A JP 11062387 A JP11062387 A JP 11062387A JP 6238799 A JP6238799 A JP 6238799A JP 2000259394 A JP2000259394 A JP 2000259394A
Authority
JP
Japan
Prior art keywords
adder
mantissa
circuit
bit
constant
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
JP11062387A
Other languages
Japanese (ja)
Inventor
Takashi Osada
孝士 長田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP11062387A priority Critical patent/JP2000259394A/en
Publication of JP2000259394A publication Critical patent/JP2000259394A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a floating point multiplier which performs floating point multiplication at high speed by generating a sticky bit in parallel to the multiplication of mantissa part of floating point data. SOLUTION: Mantissa part M0 and M1 of the floating point data are inputted to a multiplication array 1 and also inputted to zero counting means 4-1 and 4-2 at the same time. The zero counting means 4-1 and 4-2 count the number of zero during the period until 1 appears for the first time from the least significant digit bits of the mantissa part M0 and M1 and an adder 5 sums up their zero count results of the mantissa parts M0 and M1. A comparison circuit 6 compares the adding results of the adder 5 with a constant, 1 as the sticky bit is outputted if the constant is larger than the adding result of the adder 5 and 0 as the sticky bit is outputted if the constant is smaller than the adding result of the adder 5 or the constant is equal to the result. Consequently, it becomes possible to obtain a result of the floating multiplication at high speed because a sticky bit can be generated without using the result which is from the multiplication array 1 and a mantissa part adder 2.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は浮動小数点乗算器に
関し、特に浮動小数点データの仮数部の乗算動作に並行
してスティッキービットを生成することにより、高速に
浮動小数点乗算を行う乗算器に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a floating-point multiplier, and more particularly, to a multiplier that performs high-speed floating-point multiplication by generating sticky bits in parallel with a multiplication operation of a mantissa part of floating-point data.

【0002】[0002]

【従来の技術】従来、浮動小数点乗算器は図2に示すよ
うに、指数部加算器3と、乗算アレイ1と、仮数部加算
器2と、論理和回路8と、丸め桁合わせ回路7とを有し
て構成されていた。この構成における動作は、まず前処
理段階で切り出された浮動小数点データの指数部E0及
びE1を指数部加算器3により加算し、浮動小数点デー
タのm(正の整数)ビットの仮数部M0及びM1を乗算
アレイ1に入力して乗算を行い、乗算アレイ1の2出力
A及びBを仮数部加算器2にて加算することにより(2
m−1)ビットの仮数部乗算結果Cを得る。仮数部加算
器2の出力のうち、切り捨てられる下位(m−1)ビッ
トJの総論理和S’を論理和回路8で求める。丸め桁合
わせ回路7は、この総論理和S’を制御信号として指数
部加算器3の出力Dと仮数部加算器2の出力の上位mビ
ットCから、浮動小数点乗算器の出力Iを出力するとい
うものであった。この構成において、丸め桁合わせ回路
7が必要とする仮数部加算器の出力は、上位mビットC
と、切り捨てられた下位(m−1)ビットJの総論理和
S’で示されるスティッキービットである。この総論理
和S’は、乗算が完全に終了してからでないと求められ
ない。従って、従来の浮動小数点乗算器の全遅延時間
は、前処理+仮数部乗算+総論理和S’の算出+丸め桁
合わせ、となり、この総論理和S’を求める時間が従来
の浮動小数点乗算器における最大遅延経路のうちの一つ
となっていた。乗算の終了を待たずに論理和回路への入
力を得る方法としては、例えば特開平2−224121
号公報には、図3に示すように乗算アレイ100、加算
器101による仮数部データの乗算回路と並列に設けた
零計数手段103、演算手段104及び論理和回路10
5によりスティッキービットを求める技術が記載されて
いる。零計数手段103、演算手段104を通過した結
果を論理和回路105への入力とすることにより、仮数
部データの乗算回路の出力を待たずに総論理和を求める
動作を開始する。
2. Description of the Related Art Conventionally, as shown in FIG. 2, an exponent adder 3, a multiplication array 1, a mantissa adder 2, an OR circuit 8, a rounding digit matching circuit 7, It was constituted having. The operation in this configuration is as follows. First, the exponent parts E0 and E1 of the floating-point data cut out in the preprocessing stage are added by the exponent part adder 3, and the mantissa parts M0 and M1 of m (positive integer) bits of the floating-point data. Is input to the multiplication array 1 to perform multiplication, and the two outputs A and B of the multiplication array 1 are added by the mantissa adder 2 to obtain (2
(m-1) A mantissa multiplication result C of bits is obtained. In the output of the mantissa adder 2, the total OR S ′ of the lower (m−1) bits J to be truncated is obtained by the OR circuit 8. The rounding and digit matching circuit 7 outputs the output I of the floating point multiplier from the output D of the exponent part adder 3 and the upper m bits C of the output of the mantissa part adder 2 using the total OR S ′ as a control signal. It was that. In this configuration, the output of the mantissa adder required by the rounding digit matching circuit 7 is the upper m bits C
And the sticky bit indicated by the total logical sum S ′ of the truncated lower (m−1) bits J. The total OR S 'can be obtained only after the multiplication is completely completed. Therefore, the total delay time of the conventional floating-point multiplier is: pre-processing + mantissa multiplication + calculation of total OR S ′ + rounding digit alignment. One of the maximum delay paths in the vessel. A method for obtaining an input to the OR circuit without waiting for the end of the multiplication is described in, for example, Japanese Patent Application Laid-Open No. 2-224121.
In the publication, as shown in FIG. 3, a multiplication array 100, a zero counting means 103 provided in parallel with a multiplication circuit for mantissa data by an adder 101, an operation means 104, and an OR circuit 10
5 describes a technique for obtaining a sticky bit. By using the result of passing through the zero counting means 103 and the arithmetic means 104 as an input to the OR circuit 105, the operation of calculating the total OR is started without waiting for the output of the multiplication circuit of the mantissa data.

【0003】[0003]

【発明が解決しようとする課題】しかし、この従来技術
は、次のような問題点があった。すなわち問題点は、ス
ティッキービット生成に要する時間が大きい、というこ
とである。スティッキービット生成は、浮動小数点乗算
器の全遅延時間のうちの1工程を占めているため、ステ
ィッキービット生成に時間がかかると浮動小数点乗算器
全体としての演算速度が低くなってしまう。その理由
は、論理和回路にて用いる制御信号に仮数部データの乗
算回路からの出力を経由する信号を使用していることに
ある。これに対し、特許2676410には仮数部デー
タの乗算回路からスティッキービットを生成する技術で
はなく、被乗数仮数部データと乗数仮数部データとを入
力して、それぞれの最下位ビットから1が現れるまでの
0の個数をカウントする零計数手段による技術が公開さ
れている。本発明もまた零計数手段により問題点を解決
する浮動小数点乗算器を提供する。
However, this prior art has the following problems. That is, the problem is that the time required for sticky bit generation is long. Since sticky bit generation occupies one step of the total delay time of the floating point multiplier, if the sticky bit generation takes time, the operation speed of the floating point multiplier as a whole decreases. The reason is that a signal passing through the output of the multiplication circuit of the mantissa data is used as the control signal used in the OR circuit. On the other hand, Japanese Patent No. 2676410 does not describe a technique of generating sticky bits from a multiplication circuit of mantissa data, but inputs multiplicand mantissa data and multiplier mantissa data and performs processing from the least significant bit until 1 appears. A technique using zero counting means for counting the number of zeros has been disclosed. The present invention also provides a floating point multiplier that solves the problem by means of zero counting.

【0004】[0004]

【課題を解決するための手段】本発明における浮動小数
点乗算器は、浮動小数点データの仮数部の乗算動作に並
行してスティッキービットを生成することにより、高速
に浮動小数点乗算を行うものである。 図1において、
浮動小数点データの仮数部M0及びM1は乗算アレイ1
への入力と同時に零計数手段4−1及び4−2への入力
となる。零計数手段4−1及び4−2にて、仮数部M0
及びM1の最下位ビットから1が現れるまでの0の個数
をカウントし、仮数部M0及びM1の零計数結果を加算
器5にて加算する。比較回路6にて加算器5の加算結果
と定数とを比較し、加算器5の加算結果より定数の方が
大きければスティッキービットとして1を出力し、加算
器5の加算結果より定数の方が小さい、または等しけれ
ばスティッキービットとして0を出力する。これによ
り、乗算アレイ1と仮数部加算器2を経由した結果を用
いずにスティッキービットを生成できるため浮動小数点
乗算の結果を高速に求めることができる。請求項1に記
載の発明は、浮動小数点データの仮数部データの乗算動
作に並行して、仮数部データからスティッキービットを
直に生成することにより、丸め桁合わせ処理を行う浮動
小数点乗算器において、上記のスティッキービット生成
手段は、被乗数仮数部データと乗数仮数部データとを入
力して、それぞれの最下位ビットから1が現れるまでの
0の個数をカウントする2個の零計数手段と、上記2個
の零計数手段の零計数を加算する加算器と、上記加算器
の加算結果と定数とを比較し、加算器の加算結果より定
数の方が大きければスティッキービット=1を出力し、
加算器の加算結果より定数の方が小さい、または等しけ
ればスティッキービット=0を出力する比較回路と、を
具備することを特徴としている。請求項2に記載の発明
は、請求項1に記載の浮動小数点乗算器において、上記
被乗数仮数部データの桁数をm、上記乗数仮数部データ
の桁数をmに設定したとき、上記比較回路で比較される
定数をm−1とすることを特徴としている。請求項3に
記載の発明は、被乗数仮数部データおよび乗数仮数部デ
ータのそれぞれの最下位ビットから1が現れるまでの0
の個数をカウントする2個の零計数手段と、上記2個の
零計数手段の零計数を加算する加算器と、上記加算器の
加算結果と定数とを比較し、加算器の加算結果より定数
の方が大きければスティッキービット=1を出力し、加
算器の加算結果より定数の方が小さい、または等しけれ
ばスティッキービット=0を出力する比較回路と、を具
備するスティッキービット生成手段と、被乗数仮数部デ
ータと乗数仮数部データとを入力して、両者の乗算によ
り部分積を算出し、複数の部分積を加算して2出力の部
分積を出力する乗算アレイと、上記2出力部分積を加算
し、仮数部加算結果を出力する仮数部加算器と、上記仮
数部加算器の出力のうち、切り捨てられる下位ビットの
総論理和を算出する論理和回路と、を具備するスティッ
キービット生成手段の両手段により生成されるスティッ
キービットを比較するチェック回路を有することを特徴
としている。
SUMMARY OF THE INVENTION A floating-point multiplier according to the present invention performs high-speed floating-point multiplication by generating sticky bits in parallel with a multiplication operation of a mantissa of floating-point data. In FIG.
The mantissa parts M0 and M1 of the floating-point data are the multiplication array 1
At the same time as the input to the zero counting means 4-1 and 4-2. In the zero counting means 4-1 and 4-2, the mantissa M0
, And the number of zeros from the least significant bit of the M1 to the appearance of a 1 is counted, and the adder 5 adds the zero count results of the mantissa parts M0 and M1. The comparison circuit 6 compares the addition result of the adder 5 with the constant. If the constant is larger than the addition result of the adder 5, 1 is output as a sticky bit. If they are smaller or equal, 0 is output as a sticky bit. As a result, the sticky bit can be generated without using the result passed through the multiplication array 1 and the mantissa adder 2, so that the result of the floating-point multiplication can be obtained at high speed. The floating-point multiplier according to claim 1 performs a rounding digit matching process by directly generating sticky bits from the mantissa data in parallel with the multiplication operation of the mantissa data of the floating-point data, The sticky bit generating means receives the multiplicand mantissa data and the multiplier mantissa data and counts the number of zeros from the least significant bit to the appearance of one. An adder for adding the zero counts of the zero counting means, and comparing the addition result of the adder with a constant, and outputting a sticky bit = 1 when the constant is larger than the addition result of the adder;
A comparison circuit that outputs a sticky bit = 0 if the constant is smaller than or equal to the addition result of the adder. According to a second aspect of the present invention, in the floating-point multiplier according to the first aspect, when the number of digits of the multiplicand mantissa data is set to m and the number of digits of the multiplicand mantissa data is set to m, the comparison circuit Is set to m-1. According to a third aspect of the present invention, there is provided a method in which the least significant bit of each of the multiplicand mantissa data and the multiplier mantissa data is changed from the least significant bit until 1 appears.
Two zero counting means for counting the number of zeros, an adder for adding the zero counts of the two zero counting means, and comparing the addition result of the adder with a constant. A sticky bit generating means having a sticky bit = 1 if the value is larger, a comparing circuit outputting a sticky bit = 0 if the constant is smaller than or equal to the addition result of the adder, and a multiplicand mantissa. A multiplication array that inputs partial data and multiplier mantissa data, calculates a partial product by multiplying the two, adds a plurality of partial products, and outputs a two-output partial product, and adds the two-output partial product A sticky bit generator comprising: a mantissa adder for outputting a result of the mantissa addition; and an OR circuit for calculating a total OR of the lower bits to be truncated among the outputs of the mantissa adder. It is characterized by having a check circuit for comparing the sticky bits generated by both means.

【0005】[0005]

【発明の実施の形態】図1は本発明の実施例における浮
動小数点乗算器の構成例を示すブロック図である。乗算
アレイ1は、仮数部加算器2と接続され、前処理段階で
切り出された浮動小数点データのm(正の整数)ビット
の仮数部M0及びM1を入力として乗算を行い、2個の
部分積A,Bを得る。乗算アレイ1の出力である2個の
部分積A,Bの和が仮数部の乗算結果となる。仮数部加
算器2は、乗算器アレイ1と丸め桁合わせ回路7に接続
され、乗算アレイ1の出力である2個の部分積A,Bを
入力として加算を行い、結果のうち有効桁となる上位m
ビットCを丸め桁合わせ回路7に出力する。指数部加算
器3は、丸め桁合わせ回路7と接続され、前処理段階で
切り出された浮動小数点データの指数部E0及びE1を
加算し、指数部加算結果Dを丸め桁合わせ回路7に出力
する。零計数手段4−1及び4−2は、加算器5と接続
され、仮数部M0及びM1の最下位ビットから1が現れ
るまでの0の個数をそれぞれカウントし、カウント結果
F及びGを加算器5へ出力する。加算器5は、零計数手
段4−1及び4−2と比較回路6に接続され、零計数手
段4−1及び4−2の出力F及びGを加算し、加算結果
Hを比較回路6へ出力する。比較回路6は、加算器5と
丸め桁合わせ回路7に接続され、加算器5の加算結果H
と、仮数部の有効桁mから1を減じた定数(m−1)と
を比較し、結果をスティッキービットSとして丸め桁合
わせ回路7へ出力する。丸め桁合わせ回路7は、仮数部
加算器2と指数部加算器3と比較回路6に接続され、比
較回路6からの出 力であるスティッキービットSを制
御信号として指数部加算器3の出力Dと仮数部加算器2
の出力の上位mビットCから浮動小数点乗算器の乗算結
果Iを出力する。
FIG. 1 is a block diagram showing a configuration example of a floating-point multiplier according to an embodiment of the present invention. The multiplication array 1 is connected to the mantissa adder 2 and performs multiplication by using the mantissas M0 and M1 of m (positive integer) bits of the floating-point data cut out in the preprocessing stage as inputs, and performs two partial products. A and B are obtained. The sum of the two partial products A and B output from the multiplication array 1 is the result of multiplication of the mantissa. The mantissa adder 2 is connected to the multiplier array 1 and the rounding / digit matching circuit 7 and performs an addition using the two partial products A and B, which are the outputs of the multiplier array 1, as an input. Top m
The bit C is output to the rounding digit matching circuit 7. The exponent part adder 3 is connected to the rounding and digit matching circuit 7, adds the exponent parts E0 and E1 of the floating-point data cut out in the preprocessing stage, and outputs the exponent part addition result D to the rounding and digit matching circuit 7. . The zero counting means 4-1 and 4-2 are connected to the adder 5, count the number of zeros from the least significant bit of the mantissa parts M0 and M1 to the appearance of one, and add the count results F and G to the adder. Output to 5 The adder 5 is connected to the zero counting means 4-1 and 4-2 and the comparison circuit 6, adds the outputs F and G of the zero counting means 4-1 and 4-2, and outputs the addition result H to the comparison circuit 6. Output. The comparison circuit 6 is connected to the adder 5 and the rounding digit matching circuit 7, and the addition result H of the adder 5
And a constant (m-1) obtained by subtracting 1 from the significant digit m of the mantissa, and outputs the result to the rounding digit matching circuit 7 as a sticky bit S. The rounding / digit matching circuit 7 is connected to the mantissa adder 2, the exponent adder 3, and the comparison circuit 6, and uses the sticky bit S output from the comparison circuit 6 as a control signal to output the output D of the exponent adder 3. And mantissa adder 2
Outputs the multiplication result I of the floating-point multiplier from the upper m bits C of the output.

【0006】図4は、本発明の実施例におけるm=52
の時の零計数手段4−1及び4−2の詳細な構成図であ
る。零計数手段4は、図5で示される零計数回路20を
3段と、セレクタ21及びセレクタ22により構成され
る。零計数手段4は52ビットの仮数部データの最下位
ビットをM0[00]、最上位ビットをM0[51]と
して最下位ビットから4ビットずつ零計数回路20へ入
力する。零計数回路20は4ビットの入力に対し、最下
位ビットからの0の個数を3ビットの2進数として出力
する。出力の際に3ビットのうち最上位ビットのみ反転
する。1段目の零計数回路20の出力のうち、最上位ビ
ットは次段の零計数回路20への入力となり、下位2ビ
ットはセレクタ21への入力となる。セレクタ21は零
計数回路20とセレクタ22に接続され、零計数回路2
0の出力の下位2ビット4組を入力として、2段目の零
計数回路20の出力の下位2ビットを制御信号として4
組のうちの1つを選択してセレクタ22へ出力する。セ
レクタ22はセレクタ21と零計数回路20に接続さ
れ、2段目の零計数回路20の出力の下位2ビットとセ
レクタ21の出力2ビットを合わせた4ビット4組を入
力として、3段目の零計数回路20の出力の下位2ビッ
トを制御信号として4組のうちの1つを選択して出力す
る。3段目の零計数回路20の出力の下位2ビットと、
セレクタ22の出力4ビットを合わせた6ビットの結果
が、零計数手段4−1の出力Fとなる。かくして出力さ
れた零計数手段4−1の出力Fと、同様に出力された零
計数手段4−2の出力Gとを加算器5に入力して得られ
た出力Hと、定数m−1とを比較してスティッキービッ
トSが得られる。図6には出力Hに対応するスティッキ
ービットSの値を示す(比較回路6によるスティッキー
ビットの決定は下記乗算器の動作で説明する)。
FIG. 4 shows an embodiment of the present invention where m = 52.
FIG. 4 is a detailed configuration diagram of the zero counting means 4-1 and 4-2 at the time of FIG. The zero counting means 4 includes three stages of the zero counting circuit 20 shown in FIG. The zero counting means 4 inputs the least significant bit of the 52-bit mantissa data to M0 [00] and the most significant bit to M0 [51] to the zero counting circuit 20 four bits at a time from the least significant bit. The zero counting circuit 20 outputs the number of 0s from the least significant bit to a 4-bit input as a 3-bit binary number. At the time of output, only the most significant bit of the three bits is inverted. Of the output of the first stage zero counting circuit 20, the most significant bit becomes an input to the next stage zero counting circuit 20, and the lower two bits become an input to the selector 21. The selector 21 is connected to the zero counting circuit 20 and the selector 22, and the zero counting circuit 2
The four low-order 2 bits of the output of 0 are input, and the low-order 2 bits of the output of the second stage zero counting circuit 20 are used as a control signal.
One of the sets is selected and output to the selector 22. The selector 22 is connected to the selector 21 and the zero-counting circuit 20, and receives as input a 4-bit, 4-bit combination of the lower two bits of the output of the second-stage zero-counting circuit 20 and the output 2 bits of the selector 21, and the third-stage One of four sets is selected and output using the lower 2 bits of the output of the zero counting circuit 20 as a control signal. The lower 2 bits of the output of the third stage zero counting circuit 20;
The 6-bit result obtained by adding the 4 bits of the output of the selector 22 becomes the output F of the zero counting means 4-1. An output H obtained by inputting the output F of the zero counting means 4-1 thus output and the output G of the zero counting means 4-2 similarly output to the adder 5, a constant m-1 and To obtain a sticky bit S. FIG. 6 shows the value of the sticky bit S corresponding to the output H (the determination of the sticky bit by the comparison circuit 6 will be described in the following operation of the multiplier).

【0007】図7は、本発明の実施例におけるm=52
の時の比較回路6の詳細な回路図である。m=52の
時、比較回路6は加算器5の7ビットの出力H[6:
0]を入力として、定数(m−1=51)との比較を行
い、定数(m−1)がHより大きい場合に1を出力す
る。
FIG. 7 shows an embodiment of the present invention in which m = 52.
9 is a detailed circuit diagram of the comparison circuit 6 at the time of FIG. When m = 52, the comparison circuit 6 outputs the 7-bit output H [6:
[0] is input, a comparison is made with a constant (m-1 = 51), and when the constant (m-1) is larger than H, 1 is output.

【0008】次に図1の乗算器の動作について、図を参
照して説明する。浮動小数点データは、1ビットの符号
ビット、n(正の整数)ビットの指数部E、m(正の整
数)ビットの仮数部Mで構成され、前処理回路で切り出
される。浮動小数点データの乗算は、指数部の加算と仮
数部の乗算を行った後に、丸め及び桁合わせを行うこと
により結果を得ることができる。まず、前処理段階で切
り出された浮動小数点データの指数部E0及びE1を、
指数部加算器3により加算し、得られた指数部加算結果
Dを丸め桁合わせ回路7に出力する。前処理段階で切り
出された浮動小数点データのmビットの仮数部M0及び
M1は、乗算アレイ1及び零計数手段4−1及び4−2
に入力される。乗算アレイ1は図8を参照すると、入力
された仮数部M0を被乗数、M1を乗数として、乗数の
各ビットに被乗数を乗じたもの(部分積と呼ぶ)を2進
数の筆算の形に並べ、これを加算することによって積を
求める。各部分積の加算には、図9に示すような全加算
器で構成される加算回路を用いることにより、m個の部
分積を2個になるまで加算し、最終的に得られた2つの
部分積A及びBを仮数部加算器2に出力する。仮数部加
算器2は乗算アレイ1の2出力A及びBを加算し、mビ
ットの仮数部M1とM2の乗算結果として(2m−1)
ビットの積を得る。この積のうち、仮数部有効桁である
上位mビットCを丸め桁合わせ回路7へ出力する。な
お、切り捨てられる下位(m−1)ビットの総論理和
を、スティッキービットとして丸めに用いるのが一般的
である。ここで切り捨てられる下位(m−1)ビットが
全て0であればスティッキービットは0である。図8を
参照すると、仮数部M0とM1の積について下位ビット
から数えて1が現れるまでの0の個数は、仮数部M0と
M1それぞれの下位ビットから数えて1が現れるまでの
0の個数F及びGの和Hに等しいことがわかる。そこで
仮数部M0及びM1の下位ビットから数えて1が現れる
までの0の個数F及びGの和Hを求め、この値と切り捨
てられるビット数(m−1)とを比較し、仮数部M0及
びM1の下位ビットから数えて1が現れるまでの0の個
数F及びGの和Hの方が切り捨てられるビット数(m−
1)より大きい、または等しい場合には、切り捨てられ
るビット中に1は存在しないため、スティッキービット
は0となり、切り捨てられるビット数(m−1)の方が
大きければ、切り捨てられるビット中に1が存在するこ
とになり、スティッキービットは1となる。図1を参照
すると、零計数手段4−1及び4−2はそれぞれ仮数部
M0、M1の最下位ビットから数えて1が現れるまでの
0の個数をカウントし、カウント結果F及びGをそれぞ
れ加算器5に入力する。図4に示されるm=52の時の
零計数手段4の構成図を参照すると、零計数手段4の内
部にて仮数部M0は最下位ビットをM0[00]とし
て、最下位ビットから4ビットずつ零計数回路20へ入
力される。1段目の零計数回路20にてそれぞれ4ビッ
トのうちの下位ビットからの0の個数をカウントし、3
ビットの2進数として出力(但し最上位ビットは反転し
て出力)する。最上位ビットは次段の零計数回路20へ
の入力となり、下位2ビットはセレクタ21への入力と
なる。2段目の零計数回路20は、1段目の零計数回路
20の出力の最上位ビットを入力として0の個数をカウ
ントし、3ビットの2進数として出力する。セレクタ2
1は1段目の零計数回路20の出力の下位2ビット4組
を入力とし、2段目の零計数回路20の出力の下位2ビ
ットを制御信号として4組のうちの1つを選択し、セレ
クタ22へ出力する。3段目の零計数回路20は、2段
目の零計数回路20の出力の最上位ビットを入力として
0の個数をカウントし、3ビットの2進数として出力す
る。3ビットの出力のうち、最上位ビットは使用せず
(mが64以下のため)、下位2ビットF[5]F
[4]がそれぞれ10進数で32、16を表す仮数部M
0のカウント値となる。セレクタ22は、2段目の零計
数回路20の出力の下位2ビットとセレクタ21の出力
2ビットを合わせた4ビット4組を入力とし、3段目の
零計数回路20の出力の下位2ビットを制御信号として
4組のうちの1つを選択し出力する。セレクタ22の4
ビット出力F[3]〜F[0]が、それぞれ10進数で
8、4、2、1を表す仮数部M0のカウント値となる。
F[5]〜F[0]の6ビット出力が、仮数部52ビッ
トの最下位ビットからの0のカウント値となる。なお、
図4を参照すると、零計数手段4が要する論理段数は最
大7段となる。加算器5はカウント結果F及びGを加算
し、加算結果Hを比較回路6へ送出する。比較回路6は
加算結果Hと定数(m−1)とを比較し、加算結果Hの
方が定数(m−1)よりも大きい、または等しい場合に
スティッキービットSとして0を出力し、定数(m−
1)の方が大きければS=1を出力する。m=52の
時、加算結果Hは2進数7ビットで表され、この時の
(m−1=51)との比較結果であるSの真理値表は図
6の様に表される。図6をもとに比較回路6を回路図に
表したものが図7であり、最大5段の論理段数で実現し
ている。丸め桁合わせ回路7は、指数部加算器3からの
出力である指数部加算結果Dと仮数部加算器2からの出
力である仮数部加算結果Cと比較回路6からの出力であ
るスティッキービットSを用いて、スティッキービット
Sを制御信号として指数部加算結果Dと仮数部加算結果
Cより乗算結果の出力Iを出力する。
Next, the operation of the multiplier of FIG. 1 will be described with reference to the drawings. The floating-point data is composed of a sign bit of 1 bit, an exponent E of n (positive integer) bits, and a mantissa M of m (positive integer) bits, and is cut out by a preprocessing circuit. In the multiplication of floating-point data, a result can be obtained by performing addition of an exponent part and multiplication of a mantissa part, and then performing rounding and digit alignment. First, the exponent parts E0 and E1 of the floating-point data cut out in the preprocessing stage are
The result is added by the exponent part adder 3, and the obtained exponent part addition result D is output to the rounding and digit matching circuit 7. The m-bit mantissa parts M0 and M1 of the floating-point data cut out in the preprocessing stage are used as the multiplication array 1 and the zero counting means 4-1 and 4-2.
Is input to With reference to FIG. 8, the multiplication array 1 arranges the input mantissa M0 as a multiplicand and M1 as a multiplier, and multiplies each bit of the multiplier by a multiplicand (called a partial product) in a binary arithmetic form. The product is obtained by adding these. The addition of each partial product is performed by using an adder circuit composed of a full adder as shown in FIG. 9 so that m partial products are added up to two, and two finally obtained products are obtained. The partial products A and B are output to the mantissa adder 2. The mantissa adder 2 adds the two outputs A and B of the multiplication array 1 and obtains (2m-1) as a multiplication result of the m-bit mantissas M1 and M2.
Get the product of bits. Among these products, the higher-order m bits C, which are significant digits of the mantissa, are output to the rounding / digit matching circuit 7. Generally, the total OR of the lower (m-1) bits to be truncated is used as a sticky bit for rounding. If all the lower (m-1) bits to be discarded are 0, the sticky bit is 0. Referring to FIG. 8, the number of zeros until the 1 appears from the lower bits of the product of the mantissa parts M0 and M1 is the number F of the zeros until the 1 appears from the lower bits of each of the mantissas M0 and M1. And G are equal to the sum H. Therefore, the sum H of the numbers F and G of 0s until the 1 appears from the lower bits of the mantissa parts M0 and M1 is calculated, and this value is compared with the number of bits to be truncated (m-1). The number of bits (m−m−m) that is the sum of the number H of 0 and the sum H of G until a 1 appears from the lower bit of M1
1) If greater or equal, there is no 1 in the bits to be truncated, so the sticky bit is 0, and if the number of bits to be truncated (m-1) is larger, then 1 in the bits to be truncated. It will be present and the sticky bit will be 1. Referring to FIG. 1, the zero counting means 4-1 and 4-2 count the number of zeros from the least significant bit of the mantissa parts M0 and M1 until 1 appears, and add the count results F and G, respectively. Input to the container 5. Referring to the configuration diagram of the zero counting means 4 when m = 52 shown in FIG. 4, inside the zero counting means 4, the mantissa part M0 sets the least significant bit to M0 [00] and sets 4 bits from the least significant bit. Are input to the zero counting circuit 20. The first-stage zero counting circuit 20 counts the number of zeros from the lower bits of the four bits, and
Output as a binary number of bits (however, the most significant bit is inverted and output). The most significant bit becomes an input to the next stage zero counting circuit 20, and the lower two bits become an input to the selector 21. The second-stage zero counting circuit 20 receives the most significant bit of the output of the first-stage zero counting circuit 20 as an input, counts the number of zeros, and outputs it as a 3-bit binary number. Selector 2
Reference numeral 1 designates one of the four sets of the lower two bits of the output of the first stage zero counting circuit 20 as a control signal and the lower two bits of the output of the second stage zero counting circuit 20 as a control signal. , To the selector 22. The third-stage zero counting circuit 20 counts the number of zeros by using the most significant bit of the output of the second-stage zero counting circuit 20 as an input, and outputs it as a 3-bit binary number. Of the 3-bit output, the most significant bit is not used (m is 64 or less), and the lower 2 bits F [5] F
[4] is a mantissa M representing 32 and 16 in decimal respectively
The count value becomes 0. The selector 22 receives four 4-bit combinations of the lower two bits of the output of the second stage zero counting circuit 20 and the two bits of the output of the selector 21, and receives the lower two bits of the output of the third stage zero counting circuit 20. Is used as a control signal to select and output one of the four sets. 4 of selector 22
The bit outputs F [3] to F [0] are the count values of the mantissa M0 representing 8, 4, 2, and 1 in decimal, respectively.
The 6-bit output of F [5] to F [0] is the count value of 0 from the least significant bit of the mantissa part 52 bits. In addition,
Referring to FIG. 4, the number of logical stages required by the zero counting means 4 is a maximum of seven stages. The adder 5 adds the count results F and G, and sends the addition result H to the comparison circuit 6. The comparison circuit 6 compares the addition result H with a constant (m-1), and outputs 0 as the sticky bit S when the addition result H is larger than or equal to the constant (m-1), and outputs a constant ( m-
If 1) is larger, S = 1 is output. When m = 52, the addition result H is represented by 7-bit binary numbers, and the truth table of S, which is the result of comparison with (m-1 = 51), is shown in FIG. FIG. 7 is a circuit diagram of the comparison circuit 6 based on FIG. 6, which is realized with a maximum of five logic stages. The rounding / digit matching circuit 7 outputs an exponent part addition result D output from the exponent part adder 3, a mantissa addition result C output from the mantissa part adder 2, and a sticky bit S output from the comparison circuit 6. And the output I of the multiplication result is output from the exponent addition result D and the mantissa addition result C using the sticky bit S as a control signal.

【0009】以上の様に仮数部を入力とする零計数手段
4と、零計数手段4の出力を入力とする加算器5と、加
算器5の出力を入力として定数と比較を行うことにより
スティッキービットを生成する比較回路6を設けたこと
により、仮数部の有効桁m=52ビット時のスティッキ
ービット生成に要する工程は零計数手段4(論理段数7
段)+加算器5(6ビット加算器)+比較回路6(論理
段数5段)となり、これは、乗算アレイ1(論理積1段
+全加算器2*5段)+仮数部加算器2(103ビット
加算器)+論理和回路8(論理段数4段)による構成よ
りもスティッキービット生成を高速に実現することがで
きる。
As described above, the zero counting means 4 having the input of the mantissa part, the adder 5 having the input of the output of the zero counting means 4 as an input, and the output of the adder 5 being an input being compared with a constant to be sticky. By providing the comparison circuit 6 for generating the bits, the step required for generating the sticky bit when the significant digit m of the mantissa is 52 bits is zero counting means 4 (the number of logic stages is 7).
Stage) + adder 5 (6-bit adder) + comparator circuit 6 (5 logical stages), which is multiplication array 1 (1 logical product + full adder 2 * 5 stages) + mantissa adder 2 Sticky bit generation can be realized at higher speed than in the configuration of (103-bit adder) + OR circuit 8 (4 logical stages).

【0010】本発明の他の実施例について図面を参照し
て詳細に説明する。図10を参照すると、仮数部加算器
2の出力Jを入力とする論理和回路8と、論理和回路8
の出力S’と比較回路6の出力Sを入力とするチェック
回路9が設けられている。仮数部加算器2の加算結果の
切り捨てられる下位(m−1)ビットJを論理和回路8
へ出力し、論理和回路8にてJの総論理和S’を得る。
S’は従来の方式にて求められるスティッキービットで
あるため、このS’と比較回路6の出力であるスティッ
キービットSとをチェック回路9にて比較することによ
り、仮数部より求めたスティッキービットSが、乗算ア
レイ及び仮数部加算器を通過した仮数部乗算結果から求
めたスティッキービットS’と合致していることを確認
することができる。この実施例は、乗算アレイや仮数部
加算器等のハードウェア量の大きな回路を二重化せず
に、少ないハードウェア量でスティッキービットをチェ
ックできるという新たな効果を有する。
Another embodiment of the present invention will be described in detail with reference to the drawings. Referring to FIG. 10, a logical sum circuit 8 having an input of an output J of the mantissa adder 2 and a logical sum circuit 8
And a check circuit 9 which receives the output S ′ of the comparator circuit 6 and the output S of the comparison circuit 6 as inputs. The lower (m-1) bits J of the addition result of the mantissa adder 2 which are truncated are added to the OR circuit 8
And the OR circuit 8 obtains the total OR S 'of J.
Since S 'is a sticky bit obtained by the conventional method, the check circuit 9 compares this S' with the sticky bit S output from the comparison circuit 6 to obtain the sticky bit S obtained from the mantissa. Is consistent with the sticky bit S ′ obtained from the result of the mantissa multiplication that has passed through the multiplication array and the mantissa adder. This embodiment has a new effect that a sticky bit can be checked with a small amount of hardware without duplicating circuits having a large amount of hardware such as a multiplication array and a mantissa adder.

【0011】[0011]

【発明の効果】以上説明したように、本発明によれば次
のような効果が期待できる。すなわち最大の効果は、浮
動小数点乗算器全体としての演算速度を高速化できると
いうことである。その理由は、乗算アレイと、乗算アレ
イの2つの出力を入力とする仮数部加算器とは別に、仮
数部を入力とする零計数手段と、零計数手段の出力を入
力とする加算器と、加算器の出力を入力として定数と比
較を行うことによりスティッキービットを生成する比較
回路を設けたことにより、切り捨てられた仮数部乗算結
果の下位ビットの総論理和を求めなくともスティッキー
ビットを得られるからである。
As described above, according to the present invention, the following effects can be expected. That is, the greatest effect is that the operation speed of the whole floating-point multiplier can be increased. The reason is that, apart from a multiplication array and a mantissa adder which receives two outputs of the multiplication array as inputs, a zero counting means having a mantissa as an input, an adder having an output of the zero counting means as an input, By providing a comparison circuit that generates a sticky bit by comparing an output of the adder with a constant and generating a sticky bit, a sticky bit can be obtained without obtaining the total OR of the lower bits of the truncated mantissa multiplication result Because.

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

【図1】 本発明の浮動小数点乗算器の構成を示すブロ
ック図である。
FIG. 1 is a block diagram illustrating a configuration of a floating-point multiplier according to the present invention.

【図2】 従来の浮動小数点乗算器の1実施例の構成を
示すブロック図である。
FIG. 2 is a block diagram showing a configuration of one embodiment of a conventional floating point multiplier.

【図3】 従来のスティッキービット生成手段の1実施
例の構成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of one embodiment of a conventional sticky bit generation unit.

【図4】 本発明の浮動小数点乗算器の零計数手段の構
成を示すブロック図である(浮動小数点データの仮数部
ビット桁数は52)。
FIG. 4 is a block diagram showing a configuration of zero counting means of the floating-point multiplier of the present invention (the number of bits of the mantissa part of the floating-point data is 52).

【図5】 本発明の零計数手段を構成する零計数回路の
回路図である。
FIG. 5 is a circuit diagram of a zero counting circuit constituting the zero counting means of the present invention.

【図6】 スティッキービットSの真理値表である。FIG. 6 is a truth table of the sticky bit S;

【図7】 スティッキービットSの真理値表に基づく比
較回路の回路図である。
FIG. 7 is a circuit diagram of a comparison circuit based on a truth table of sticky bits S;

【図8】 5桁の被乗数と5桁の乗数の乗算を筆算形式
に並べた図である。
FIG. 8 is a diagram in which multiplications of a 5-digit multiplicand and a 5-digit multiplier are arranged in a handwriting format.

【図9】 乗算アレイ用として、全加算器で構成される
加算回路のブロック図である。
FIG. 9 is a block diagram of an adder circuit including a full adder for a multiplication array.

【図10】 本発明の浮動小数点乗算器の他の実施例の
構成を示すブロック図である。
FIG. 10 is a block diagram showing a configuration of another embodiment of the floating-point multiplier of the present invention.

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

1…乗算アレイ 2…仮数
部加算器 3…指数部加算器 4…零計
数手段 5…加算器 6…比較
回路 7…丸め桁合わせ回路 8…論理
和回路 100…乗算アレイ 101…
加算器 102…シフタ 103…
零計数手段 104…演算手段 105…
論理和回路 20…零計数回路 21…セ
レクタ 22…セレクタ 9…チェ
ック回路
REFERENCE SIGNS LIST 1 multiplication array 2 mantissa adder 3 exponent adder 4 zero counting means 5 adder 6 comparison circuit 7 rounding digit matching circuit 8 OR circuit 100 multiplication array 101
Adder 102 ... Shifter 103 ...
Zero counting means 104 ... Calculation means 105 ...
OR circuit 20 ... Zero counting circuit 21 ... Selector 22 ... Selector 9 ... Check circuit

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 浮動小数点データの仮数部データの乗算
動作に並行して、仮数部データからスティッキービット
を直に生成することにより、丸め桁合わせ処理を行う浮
動小数点乗算器において、上記のスティッキービット生
成手段は、 被乗数仮数部データと乗数仮数部データとを入力して、
それぞれの最下位ビットから1が現れるまでの0の個数
をカウントする2個の零計数手段と、 上記2個の零計数手段の零計数を加算する加算器と、 上記加算器の加算結果と定数とを比較し、加算器の加算
結果より定数の方が大きければスティッキービット=1
を出力し、加算器の加算結果より定数の方が小さい、ま
たは等しければスティッキービット=0を出力する比較
回路と、 を具備することを特徴とする浮動小数点乗算器。
1. A floating-point multiplier for performing rounding and digit matching processing by directly generating sticky bits from mantissa data in parallel with an operation of multiplying mantissa data of floating-point data. The generating means inputs the multiplicand mantissa data and the multiplier mantissa data,
Two zero counting means for counting the number of zeros from each least significant bit until a 1 appears, an adder for adding the zero counts of the two zero counting means, an addition result of the adder and a constant And if the constant is larger than the addition result of the adder, the sticky bit = 1
And a comparing circuit that outputs a sticky bit = 0 if the constant is smaller than or equal to the addition result of the adder.
【請求項2】 上記被乗数仮数部データの桁数をm、上
記乗数仮数部データの桁数をmに設定したとき、上記比
較回路で比較される定数をm−1とすることを特徴とす
る請求項1に記載の浮動小数点乗算器。
2. The method according to claim 1, wherein when the number of digits of the multiplicand mantissa data is set to m and the number of digits of the multiplicand mantissa data is set to m, a constant compared by the comparison circuit is m-1. The floating point multiplier according to claim 1.
【請求項3】 被乗数仮数部データおよび乗数仮数部デ
ータのそれぞれの最下位ビットから1が現れるまでの0
の個数をカウントする2個の零計数手段と、 上記2個の零計数手段の零計数を加算する加算器と、 上記加算器の加算結果と定数とを比較し、加算器の加算
結果より定数の方が大きければスティッキービット=1
を出力し、加算器の加算結果より定数の方が小さい、ま
たは等しければスティッキービット=0を出力する比較
回路と、 を具備するスティッキービット生成手段と、 被乗数仮数部データと乗数仮数部データとを入力して、
両者の乗算により部分積を算出し、複数の部分積を加算
して2出力の部分積を出力する乗算アレイと、 上記2出力部分積を加算し、仮数部加算結果を出力する
仮数部加算器と、 上記仮数部加算器の出力のうち、切り捨てられる下位ビ
ットの総論理和を算出する論理和回路と、 を具備するスティッキービット生成手段の両手段により
生成されるスティッキービットを比較するチェック回路
を有することを特徴とする浮動小数点乗算器。
3. From the least significant bit of each of the multiplicand mantissa data and the multiplier mantissa data, 0 is used until 1 appears.
Two zero counting means for counting the number of zeros; an adder for adding the zero counts of the two zero counting means; comparing the addition result of the adder with a constant; Is larger, sticky bit = 1
And a comparison circuit that outputs a sticky bit = 0 if the constant is smaller than or equal to the addition result of the adder; and a sticky bit generation means comprising: and multiplicative mantissa data and multiplier mantissa data. Enter
A multiplication array that calculates a partial product by multiplication of the two, adds a plurality of partial products and outputs a two-output partial product, and a mantissa adder that adds the two output partial products and outputs a mantissa addition result And an OR circuit for calculating the total OR of the lower bits to be truncated among the outputs of the mantissa adder, and a check circuit for comparing the sticky bits generated by both of the sticky bit generation means, comprising: A floating point multiplier comprising:
JP11062387A 1999-03-09 1999-03-09 Floating point multiplier Pending JP2000259394A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11062387A JP2000259394A (en) 1999-03-09 1999-03-09 Floating point multiplier

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11062387A JP2000259394A (en) 1999-03-09 1999-03-09 Floating point multiplier

Publications (1)

Publication Number Publication Date
JP2000259394A true JP2000259394A (en) 2000-09-22

Family

ID=13198676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11062387A Pending JP2000259394A (en) 1999-03-09 1999-03-09 Floating point multiplier

Country Status (1)

Country Link
JP (1) JP2000259394A (en)

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007215192A (en) * 2006-02-09 2007-08-23 Altera Corp Specialized processing block for programmable logic device
JP2010238011A (en) * 2009-03-31 2010-10-21 Nec Computertechno Ltd Vector multiplication processing device, and method and program thereof
US8266199B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
US8307023B1 (en) 2008-10-10 2012-11-06 Altera Corporation DSP block for implementing large multiplier on a programmable integrated circuit device
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US8468192B1 (en) 2009-03-03 2013-06-18 Altera Corporation Implementing multipliers in a programmable integrated circuit device
US8484265B1 (en) 2010-03-04 2013-07-09 Altera Corporation Angular range reduction in an integrated circuit device
US8510354B1 (en) 2010-03-12 2013-08-13 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8539016B1 (en) 2010-02-09 2013-09-17 Altera Corporation QR decomposition in an integrated circuit device
US8539014B2 (en) 2010-03-25 2013-09-17 Altera Corporation Solving linear matrices in an integrated circuit device
US8543634B1 (en) 2012-03-30 2013-09-24 Altera Corporation Specialized processing block for programmable integrated circuit device
US8577951B1 (en) 2010-08-19 2013-11-05 Altera Corporation Matrix operations in an integrated circuit device
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8601044B2 (en) 2010-03-02 2013-12-03 Altera Corporation Discrete Fourier Transform in an integrated circuit device
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
US8645451B2 (en) 2011-03-10 2014-02-04 Altera Corporation Double-clocked specialized processing block in an integrated circuit device
US8645450B1 (en) 2007-03-02 2014-02-04 Altera Corporation Multiplier-accumulator circuitry and methods
US8650231B1 (en) 2007-01-22 2014-02-11 Altera Corporation Configuring floating point operations in a programmable device
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8762443B1 (en) 2011-11-15 2014-06-24 Altera Corporation Matrix operations in an integrated circuit device
US8788562B2 (en) 2006-12-05 2014-07-22 Altera Corporation Large multiplier for programmable logic device
US8812576B1 (en) 2011-09-12 2014-08-19 Altera Corporation QR decomposition in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
JP2007215192A (en) * 2006-02-09 2007-08-23 Altera Corp Specialized processing block for programmable logic device
US8266199B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8266198B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US9063870B1 (en) 2006-12-05 2015-06-23 Altera Corporation Large multiplier for programmable logic device
US8788562B2 (en) 2006-12-05 2014-07-22 Altera Corporation Large multiplier for programmable logic device
US9395953B2 (en) 2006-12-05 2016-07-19 Altera Corporation Large multiplier for programmable logic device
US8650231B1 (en) 2007-01-22 2014-02-11 Altera Corporation Configuring floating point operations in a programmable device
US8645450B1 (en) 2007-03-02 2014-02-04 Altera Corporation Multiplier-accumulator circuitry and methods
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8307023B1 (en) 2008-10-10 2012-11-06 Altera Corporation DSP block for implementing large multiplier on a programmable integrated circuit device
US8468192B1 (en) 2009-03-03 2013-06-18 Altera Corporation Implementing multipliers in a programmable integrated circuit device
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
JP2010238011A (en) * 2009-03-31 2010-10-21 Nec Computertechno Ltd Vector multiplication processing device, and method and program thereof
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8539016B1 (en) 2010-02-09 2013-09-17 Altera Corporation QR decomposition in an integrated circuit device
US8601044B2 (en) 2010-03-02 2013-12-03 Altera Corporation Discrete Fourier Transform in an integrated circuit device
US8484265B1 (en) 2010-03-04 2013-07-09 Altera Corporation Angular range reduction in an integrated circuit device
US8510354B1 (en) 2010-03-12 2013-08-13 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8539014B2 (en) 2010-03-25 2013-09-17 Altera Corporation Solving linear matrices in an integrated circuit device
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8812573B2 (en) 2010-06-25 2014-08-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8577951B1 (en) 2010-08-19 2013-11-05 Altera Corporation Matrix operations in an integrated circuit device
US8645451B2 (en) 2011-03-10 2014-02-04 Altera Corporation Double-clocked specialized processing block in an integrated circuit device
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US8812576B1 (en) 2011-09-12 2014-08-19 Altera Corporation QR decomposition in an integrated circuit device
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8762443B1 (en) 2011-11-15 2014-06-24 Altera Corporation Matrix operations in an integrated circuit device
US8543634B1 (en) 2012-03-30 2013-09-24 Altera Corporation Specialized processing block for programmable integrated circuit device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device

Similar Documents

Publication Publication Date Title
JP2000259394A (en) Floating point multiplier
US6820107B1 (en) Square root extraction circuit and floating-point square root extraction device
US5222037A (en) Floating-point processor for performing an arithmetic operation on fixed-point part data with high speed rounding of a result
JP2002251281A (en) Floating point multiplier
US5280439A (en) Apparatus for determining booth recoder input control signals
JPH0612229A (en) Multiplication and accumulation circuit
US5132925A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
EP0356153B1 (en) Radix-2**n divider method and apparatus using overlapped quotient bit selection and concurrent quotient rounding and correction
JPH0773227A (en) Automatic designing method for logical circuit, system and device therefor and multiplier
JP3276444B2 (en) Division circuit
JPH04283831A (en) Divider
US5530664A (en) Method and apparatus for automatically designing logic circuit, and multiplier
US5867413A (en) Fast method of floating-point multiplication and accumulation
JPH1195982A (en) Circuit, method and system for arithmetic processing
JP2857505B2 (en) Division device
US5150319A (en) Circuitry for rounding in a floating point multiplier
JPH05158659A (en) Multiplier
US5206825A (en) Arithmetic processor using signed-digit representation of external operands
US6317772B1 (en) Split remainder divider
US5153847A (en) Arithmetic processor using signed digit representation of internal operands
JPH10111791A (en) Division device
JP3190826B2 (en) Product-sum operation unit
JP2734438B2 (en) Multiplier
JPH0527948A (en) Arithmetic device
JP3233432B2 (en) Multiplier

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20001003