JP2002108606A - Sticky bit generating circuit and multiplier - Google Patents

Sticky bit generating circuit and multiplier

Info

Publication number
JP2002108606A
JP2002108606A JP2000292654A JP2000292654A JP2002108606A JP 2002108606 A JP2002108606 A JP 2002108606A JP 2000292654 A JP2000292654 A JP 2000292654A JP 2000292654 A JP2000292654 A JP 2000292654A JP 2002108606 A JP2002108606 A JP 2002108606A
Authority
JP
Japan
Prior art keywords
carry
bit
means
generating
sticky
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.)
Abandoned
Application number
JP2000292654A
Other languages
Japanese (ja)
Inventor
Yukihiro Ide
進博 井出
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 JP2000292654A priority Critical patent/JP2002108606A/en
Publication of JP2002108606A publication Critical patent/JP2002108606A/en
Application status is Abandoned legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To further enhance multiplication speed by shortening time to be taken in a rounding processing by speeding up a processing of generation of sticky bit. SOLUTION: The sticky bit is directly generated from the sum of partial products of a carry save format before calculating a multiplication result. Specifically, since inversion G, exclusive logical OR P and logical AND G of logical OR by every bit corresponding to sum components and carry components of the partial products of the carry save format are calculated, the virtual sum in consideration of the adjacent high-order bits and carry propagation of the respective bits is calculated and the sticky bit is generated by taking the entire logical OR, the sticky bit is generated at high speed without the propagation of carry.

Description

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

【0001】 [0001]

【発明の属する技術分野】本発明は、浮動小数点演算器に係り、特に計算誤差を少なくするための補助用のビットであるスティッキービットを生成するスティッキービット生成回路及びこのスティッキービット生成回路を用いた乗算器に関する。 BACKGROUND OF THE INVENTION The present invention relates to a floating point arithmetic unit, with sticky bit generating circuit and the sticky bit generating circuit for generating a sticky bit is a bit for aid to particularly reduce the calculation error on the multiplier.

【0002】 [0002]

【従来の技術】従来より、コンピュータで使用するための高速乗算器の構成は様々に提案されている。 BACKGROUND ART Conventionally, a high speed multiplier configuration for use in computers have been variously proposed. このような高速乗算器では、基本的には、乗数の各ビットに対応する部分積を求め、1ビットだけ左にずれている複数の部分積を加算することにより積を求める。 In such a high-speed multiplier, basically, determined partial products corresponding to each bit of the multiplier, determining the product by adding a plurality of partial products are shifted to the left by one bit. 高速化のため、ブースのアルゴリズムなどのように乗数の複数ビットに対応する部分積を求めることで、部分積の数を減らし、加算作業を少なくする方法、加算器を木構造状に構成し、並列に加算する方法「ワラスの方法」、キャリー・セーブ加算器を用いて部分積を加算する方法、などが知られている。 For speed, by obtaining the partial products corresponding to the plurality of bits of the multiplier, such as Booth's algorithm, reducing the number of partial products, a method for reducing the addition operations, constitute the adder tree structure, how to add in parallel "method of Wallace" method for adding the partial products using a carry-save adder, and the like are known. 多くの高速乗算器は、これらの手法を用いており、部分積の和は、キャリー成分、和成分のキャリー・セーブ・フォームで求め、最後に1回だけ、桁上げ伝搬加算を実行する。 Many high-speed multiplier, and using these techniques, the sum of the partial products, the carry component, determined by the carry-save form sum component, once finally executes the carry propagate adder. 以上は整数の乗算の方法であるが、浮動小数点において仮数を生成するときにも用いられる。 The above is a method for integer multiplication, also used in generating the mantissa in floating point.

【0003】図4は典型的な従来の浮動小数点乗算器の構成例である。 [0003] FIG. 4 is a configuration example of a typical prior art floating point multiplier. 52ビットのオペランドSと52ビットのオペランドTが乗算器201に入力され、ここで乗算されて、部分積の105ビットの和成分SS、105ビットのキャリー成分CCが得られる。 52-bit operand S and 52-bit operand T is input to a multiplier 201 where it is multiplied, the carry component CC of the sum component SS, 105 bits 105 bits of the partial product is obtained. これら部分積の和成分SS、キャリー成分CCは加算器202で加算されて、最終的な乗算結果が得られる。 Sum component SS of these partial products, the carry component CC is added by the adder 202, the final multiplication results. スティッキービット生成回路203は得られた乗算結果のシフトビットの論理和を取ることにより、スティッキービットを生成し、 By ORing the shift bit sticky bit generating circuit 203 is multiplied results obtained, to generate a sticky bit,
それを丸め回路204に渡す。 And passes it to the rounding circuit 204.

【0004】丸め回路204は前記スティッキービットから乗算結果を丸めるかどうかを判定し、丸める場合は加算値1を加算器205に供給する。 [0004] rounding circuit 204 the determines whether round the multiplication result from the sticky bit, and supplies the addition value 1 to the adder 205 if the rounding. 加算器205の出力値は選択回路(マルチプレクサ)206に入力され、 The output value of the adder 205 is input to a selection circuit (multiplexer) 206,
ここで、1ビットシフトしたものとしないものとをオーバーフローするかどうかによって選択し、最終乗算結果を出力する。 Here, selected depending on whether overflows and what does and does not shifted by one bit, and outputs the final multiplication result.

【0005】浮動小数点乗算器構成で乗算する場合、積は特定のフォーマットで定められたビット数に結果を丸めなければならないことが多い。 [0005] When multiplying a floating point multiplier arrangement, the product will often have to be rounded result to the number of bits defined in a specific format. 例えば、二倍精度2進数に関する規格は53ビット[整数部1ビット、小数点以下52ビット]である。 For example, standards for double precision binary numbers are 53 bit Integer unit 1 bit, 52-bit decimal point.

【0006】2つの53ビット2進数の積は106ビットの長さである。 [0006] Two 53-bit binary number of the product is 106 bits long. ところが、二倍精度の結果はこの積のうち上位の54ビットしか使用しない。 However, double precision result uses only 54 bits of the upper of the product. ここで最上位ビットは桁あふれを示す。 Here, the most significant bit indicates overflow. また、下位の53ビットは、下位ビットから桁上げが生成されるか否か、丸めが必要であるか否か、さらに丸め値を確定するためにのみ使用され、値そのものは破棄される。 Further, the lower 53 bits, whether a carry from the lower bits are generated, whether rounding is necessary, is used only to determine the further rounding value, the value itself is discarded.

【0007】 [0007]

【発明が解決しようとする課題】ところで上記した積の丸めを行うには、まず、仮数を正規化しなければならない。 To perform rounding of the product obtained by the way the [0005] must first normalized mantissa. 2つの正規化オペランドS、Tの乗算を行う乗算器では、そのために仮数の右への1ビットシフトが生じる場合がある。 Two normalization operands S, the multiplier for multiplying T, then there is a case where one bit shift to the mantissa of the right arises for that. 仮数が正規化されるまでは、丸めが実行されるビット位置が確定しない。 Until the mantissa is normalized, the bit position where the rounding is performed is not determined. 結局、演算は、最悪、最下位からのキャリーが最上位まで伝搬し、最上位の結果により正規化が施され、丸めの位置および丸め処理の有無の判定に必要なビットの位置が確定するのを待っていなければならないのが普通である。 After all, operations, worst, carry from the least significant to propagate to the highest normalized is performed as a result of the top-level of the position and the rounding bit position required for determination of the presence or absence of the process of rounding is determined that must be waiting for is common.

【0008】従って、下位ビットからの桁上げはクリテイカルパスに入っている。 [0008] Thus, the carry from the lower bits are in the critical path. このような乗算器においては、通常、[1]積のキャリー成分、和成分の加算を加算器202で行い、[2]正規化、[3]スティッキービット生成を203の回路で行なった後、この結果を用いて、[4]丸めの判定を204の回路で行い、[5] In such a multiplier, usually [1] carry component of the product, carried out by the adder 202 the sum of the sum component, [2] normalized after performing the circuit 203 [3] sticky bit generation, using this result, performed by the circuit 204 determines rounding [4], [5]
丸めのインクリメントを加算器205で施すという手順で結果を発生するのが典型的である。 It is typical to generate results in the procedure of applying an increment of rounding adder 205.

【0009】しかしながら、このような構成では、スティッキービット生成の前に加算器202で最終加算を行う必要が必須であり、この加算に時間が掛かると共に、 However, in such a configuration, necessary to perform the final adder 202 before the sticky bit generation is mandatory, along with time-consuming to the addition,
スティッキービット生成に全シフトビットの論理和を取らなければならず、スティッキービット生成までに時間が掛かり、一連の丸め処理に時間を要することになる。 Must take the logical sum of all the shift bit sticky bit generation, it takes time until the sticky bit generation, it takes time to set the rounding.
それ故、乗算器の速度が遅くなる。 Therefore, the speed of the multiplier is delayed.

【0010】本発明は、上述の如き従来の課題を解決するためになされたもので、その目的は、スティッキービット生成の処理を高速化して丸め処理に掛かる時間を短縮化することにより、乗算速度を更に向上させることができるスティッキービット生成回路及びこのスティッキービット生成回路を用いた浮動小数点乗算器を提供することである。 [0010] The present invention has been made to solve the conventional problems such as described above, and its object is, by shortening the time required for the rounding to speed the processing of sticky bit generation, multiplication speed the is further provided a floating point multiplier using sticky bit generating circuit and the sticky bit generating circuit can be improved.

【0011】 [0011]

【課題を解決するための手段】上記目的を達成するために、請求項1の発明の特徴は、2個の正規化オペランドを乗算する乗算手段と、前記乗算手段から得られる部分積の和成分の下位ビットとキャリー成分の下位ビットから論理和の反転KB(キャリー伝播の停止)、排他的論理和P(キャリーの伝播)、論理積G(キャリーの生成)を生成するPKG生成手段と、前記PKG生成手段により得られた反転KB、排他的論理和P、論理積Gよりスティッキービットを生成するスティッキービット生成手段とを具備することにある。 To achieve the above object of the Invention The features of the invention of claim 1 includes a multiplier means for multiplying the two normalized operands, the sum component of the partial products obtained from the multiplication means inversion KB (stop carry propagation) of the logical sum from the lower bits of the lower bits and carry components (propagation of the carry) XOR P, a PKG generating means for generating a logical product G (generation of carry), the inverted KB obtained by PKG generating means, an exclusive OR P, is to and a sticky bit generating means for generating a sticky bits than logical G.

【0012】請求項2の発明の前記スティッキービット生成手段は、前記和成分とキャリー成分の対応するビットとその隣接上位ビットとの排他的論理和P、論理積G、反転KBの各信号から、そのビットが1とならないことを示す信号を求めた後、前記各ビットが1とならないことを示す信号の全論理和をとることによりスティッキービットを生成することを特徴とする。 [0012] The sticky bit generating means of the invention of claim 2, XOR P of the corresponding bit and its neighboring upper bits of the sum component and a carry component, logical product G, from the signal inversion KB, after that bit has requested signal indicating that not a 1, and generates a sticky bit by taking the total logical sum of the signal indicating that said each bit is not a 1.

【0013】請求項3の発明の前記PKG生成手段はビットスライスで演算して前記排他的論理和P、論理積G、反転KBの各信号を求め、前記スティッキービット生成手段はスティッキービットを複数ブロックに分割して求めることを特徴とする。 [0013] The PKG generating means the exclusive OR P by calculating a bit-slice of the invention of claim 3, logical product G, obtains each signal inversion KB, the sticky bit generating means a plurality of sticky bits block and obtaining divided into.

【0014】請求項4の発明の特徴は、2個の正規化オペランドを乗算する乗算手段と、前記乗算手段から得られる部分積の和成分の下位ビットとキャリー成分の下位ビットから論理和の反転KB(キャリー伝播の停止)、 [0014] Features of the invention of claim 4 includes a multiplying means for multiplying the two normalized operands, inversion of the logical sum from the lower bits of the lower bits and carry component of the sum component of the partial products obtained from the multiplication means KB (stop of the carry propagation),
排他的論理和P(キャリーの伝播)、論理積G(キャリーの生成)を生成するPKG生成手段と、前記PKG生成手段により得られた反転KB、排他的論理和P、論理積Gよりスティッキービットを生成するスティッキービット生成手段と、前記乗算手段から得られる部分積の和成分の上位ビットとキャリー成分の上位ビットを加算する第1の加算手段と、前記スティッキービット生成手段により生成されたスティッキービットより乗算結果に丸め処理を行うかどうかを判定する判定手段と、前記PK XOR P (propagation of the carry), and PKG generating means for generating a logical product G (generation of carry), inverted KB obtained by the PKG generating means, an exclusive OR P, sticky bits than logical G a sticky bit generating means for generating a, a first adding means for adding the high-order bits of the upper bits and the carry component of the sum component of the partial products obtained from the multiplication means, the sticky bit generated by the sticky bit generating means determination means for determining whether or not to perform rounding more multiplication result, the PK
G生成手段により得られた反転KB、排他的論理和P、 Inverted KB obtained by G generating means, an exclusive OR P,
論理積Gよりキャリーを生成するキャリー生成手段と、 A carry generating means for generating a carry from the logical product G,
前記第1の加算手段から得られる乗算結果に前記キャリー生成手段より生成されたキャリーを加算すると共に、 While adding the carry generated from said carry generating means is multiplied results obtained from said first addition means,
前記判定手段により丸め処理を行うと判定された場合に1を加える第2の加算手段とを具備することにある。 Is to include a second adding means for adding 1 when it is determined to perform the rounding by said determining means.
請求項5の発明の特徴は、前記第1の加算手段による加算処理と前記PKG生成手段及びスティッキービット生成手段の処理を並列に行うことにある。 Features of the invention of claim 5 is to perform processing of said first mentioned, by addition processing and adding means PKG generating means and the sticky bit generating means in parallel.

【0015】 [0015]

【発明の実施の形態】以下、本発明の実施の形態を図面に基づいて説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, an embodiment of the present invention with reference to the accompanying drawings. 図1は、本発明の乗算器の一実施形態の構成を示したブロック図である。 Figure 1 is a block diagram showing a configuration of an embodiment of a multiplier of the present invention. 乗算回路1は、 Multiplication circuit 1,
正規化オペランドS、Tを入力して乗算する乗算回路1 Normalized operand S, multiplied by entering the T multiplying circuit 1
と、乗算回路1から出力される和成分SS、キャリー成分CCの上位ビットを加算して、2個のオペランドS When the sum component SS outputted from the multiplying circuit 1 adds the upper bits of the carry component CC, 2 pieces of operand S
(52:0)とオペランドT(52:0)の乗算結果を算出する加算回路2、論理和の反転KB(キャリー伝播の停止)、排他的論理和P(キャリーの伝播)、論理積G(キャリーの生成)を生成するPKG生成回路3、スティッキービット100を発生するスティッキービット生成回路4、キャリーを生成するキャリー生成回路5、 (52: 0) and the operand T (52: 0) adder circuit 2 for calculating a multiplication result of the inversion KB of the logical sum (Stop carry propagation), exclusive OR P (propagation of carry), logical product G ( PKG generating circuit 3 for generating a generated carry), sticky bit generating circuit 4 for generating a sticky bit 100, the carry generation circuit 5 for generating a carry,
乗算結果に丸めを施すかどうかを判定する丸め回路6、 Rounding circuit 6 determines whether performing rounding the multiplication result,
乗算結果に丸めを施したり、或いはキャリーを加算する加算回路7、乗算結果の1ビットシフトしたものとしないものとをオーバーフローするかどうかによって選択する選択回路(マルチプレクサ)8を有している。 Or subjected to rounding to the multiplication result or the adder circuit 7 for adding the carry, and a selection circuit (multiplexer) 8 to select depending on whether overflows and what does and does not shifted by 1 bit of the multiplication result.

【0016】図2は、PKG生成回路3の構成例を示した回路図である。 [0016] Figure 2 is a circuit diagram showing a configuration example of a PKG generation circuit 3. PKG生成回路3は排他的論理和回路、論理和回路、論理積回路より構成されている。 PKG generation circuit 3 the exclusive OR circuit, OR circuit, and is configured from the logical product circuit.

【0017】排他的論理和回路では、乗算回路1の演算結果SS、およびCCの各ビットを入力とし、対応するビットにおけるキャリーの伝播を示す信号Pを生成する。 [0017] In the exclusive OR circuit inputs the respective bits of the result SS, and CC of the multiplying circuit 1, generates a signal P indicating the propagation of the carry in the corresponding bit. 図中の信号PBは、Pの反転である。 Signal PB in the figure, a P inversion.

【0018】論理和回路は、同様に前記演算結果SS、 The OR circuit, like the calculation results SS,
およびCCの各ビットを入力とし、対応するビットにおけるキャリーの消滅を示す信号Kを生成する。 And as input each bit of CC, to generate a signal K indicating the disappearance of carry in the corresponding bit. 図中の信号KBは、Kの反転を示す。 Signal KB in the figure shows a reversal of K.

【0019】論理積回路は、同様に前記演算結果SS、 The logical product circuit, likewise the operation result SS,
およびCCの各ビットを入力とし、対応するビットにおけるキャリーの生成を示す信号Gを生成する。 And each bit of the CC as input, and generates a signal G indicating the generation of a carry in the corresponding bit.

【0020】図3は、スティッキー・ビット生成回路4 [0020] FIG. 3 is a sticky bit generating circuit 4
の構成例を示した回路図である。 Configuration example of a circuit diagram of a.

【0021】スティッキー・ビット生成回路4は構成部材103,105,107,109の排他的論理和回路、構成部材104,106,108,110の論理和回路から構成されている。 The sticky bit generating circuit 4 is the exclusive OR circuit components 103, 105, 107, 109, and a logical OR circuit components 104, 106, 108, and 110. 本回路は、PKG生成回路の出力、反転KB信号、P信号を入力とし、スティッキー信号を生成する。 The circuit outputs of PKG generating circuit, inverted KB signal as input P signal to produce a sticky signal. 処理がビット・スライスになっている点に注意されたい。 The process should be noted that is a bit-slice.

【0022】本実施例では、倍精度の乗算結果の下位S [0022] In this embodiment, a double-precision multiplication result lower S
S<50:0>,CC<50:0>を演算結果が得られる順番にビットごとに4つのフィールドに分割して求めているが、一度に演算しても何ら演算結果に変わりはない。 S <50: 0>, CC <50: 0> is the operation result is obtained by dividing each bit four fields in the order obtained, there is no change to the result be calculated at once. 本実施例のように分割することにより、乗算結果が得られた部分から計算できるので、一度に実行するより高速にスティッキー・ビット生成を行うことができる。 By dividing as in this embodiment, it is possible to calculate from the portion multiplication result is obtained, it is possible to perform the sticky bit generation faster than performing a time.

【0023】次に、本実施形態の動作について説明する。 Next, the operation of this embodiment will be described. 乗算回路1は正規化オペランドS、Tを乗算して、 Multiplier circuit 1 multiplies the normalized operand S, T,
部分積の和成分SSとキャリー成分CCを出力するもので、部分積の和がキャリーセーブ・フォームで生成され、倍精度の場合を仮定すると、和成分SS(105: And outputs the sum component SS and carry component CC of the partial products, the sum of the partial products are generated by the carry-save form, assuming the case of double precision, sum component SS (105:
0)、キャリー成分CC(105:0)となる。 0), a carry component CC (105: 0) to become. 和成分SSとキャリー成分CCの上位ビットは加算回路2に入力され、下位ビットはPKG生成回路3に入力される。 The upper bits of the sum component SS and carry component CC is input to the addition circuit 2, the lower bits are inputted to the PKG generation circuit 3.

【0024】PKG生成回路3はキャリー・セーブ・フォーマットの部分積の和成分SS(50:0)とキャリー成分CC(50:0)を入力とし、各対応するビットごとの論理和の反転KB、排他的論理和P、論理積Gをビットスライスで求める。 [0024] PKG generating circuit 3 carry-save format of the partial product of the sum component SS (50: 0) and a carry component CC (50: 0) as inputs, the inverted KB of logical sum of each corresponding bit, obtaining exclusive OR P, and the logical product G by a bit slice. 論理和の反転KB、排他的論理和P、論理積Gはスティッキービット生成回路4に渡され、スティッキービット生成回路4は論理和の反転K Inverting KB of logical sum, exclusive OR P, logical product G is passed to a sticky bit generating circuit 4, sticky bit generating circuit 4 is inverted K logical OR
B、排他的論理和P、論理積Gに基づいてスティッキービット100を生成し、得られたスティッキービット1 B, exclusive OR P, to generate a sticky bit 100 based on the logical product G, resulting sticky bit 1
00を丸め回路6に出力する。 It outputs the 00 rounding circuit 6.

【0025】スティッキービット生成回路4は入力される各ビットのキャリー情報をもとに、スティッキービットを段階的に生成する。 The sticky bit generating circuit 4 on the basis of the carry information of each bit to be input to generate a sticky bit in stages. スティッキービット生成回路4 Sticky bit generating circuit 4
は複数のXORなる論理ゲートと複数の論理和ゲートを備え、各ビットのP信号と1ビット上位のKとのXOR Comprises a plurality of XOR becomes logic gates and a plurality of logical OR gates, XOR and K of P signal and a bit higher for each bit
をとり、各ビットに1が立つか否かを求め、前記各ビットに1が立つか否かを示す信号の論理和を取ることにより、スティッキービット100を生成する。 Taken, it determined whether 1 stands each bit, by taking the logical sum of the signal indicating whether or not 1 is standing to the each bit to generate a sticky bit 100. スティッキービット生成回路4はこのようにキャリーの生成過程で加算を行っていないので、キャリーの伝播がなく、ステッキービットを高速に求めることが出来る。 Since sticky bit generating circuit 4 does not perform addition in the generation process of the thus carry, no carry propagation can be obtained sticky bit faster.

【0026】ここで、本例では、スティッキービットを4つのブロックに分割して求めている。 [0026] Here, in this example, it is obtained by dividing the sticky bit into four blocks. これは乗算アレーをワラスの方法で加算しているためである。 This is because it adds the multiplication array in Wallace method. 部分積の部分和は下位の部分から順番に確定していく。 Partial sum of the partial products continue to confirm the order from the lower part. 本例では、倍精度の乗算アレーを構成しているので、下位よりSS(3:0、CC(3:0)の4ビット、SS(1 In this embodiment, since the configuration of a double-precision multiplication array, lower than SS (3: 0, CC (3: 0 4-bit), SS (1
1:4)、CC(11:4)の8ビット、SS(25: 1: 4), CC (11: 4) of the 8-bit, SS (25:
15)、CC(25:15)の14ビット、残りSS 15), 14-bit CC (25:15), remaining SS
(105:26)、CC(105:26)が段階的に確定していく。 (105: 26), CC (105: 26) is stepwise finalized.

【0027】本方式では、スティッキービットはビット・スライスで行った演算結果の論理和をとればいいので、どのビットから計算を開始してもかまわない。 [0027] In this method, because the sticky bit is good if you take the logical sum of the calculation results made in the bit-slice, it is also possible to start the calculation from which bit. 一般に多ビットの論理和をとる処理は、木構造で段階的に行う必要があり、本質的に時間のかかる処理である。 Generally the process of taking the logical sum of multiple bits, it is necessary to carry out stepwise in a tree structure, which is essentially a time-consuming process. スティッキービットの生成を更に高速化するため、本例では確定した部分積の部分より、段階的にスティッキービットの生成を行っている。 To further speed up the production of the sticky bit, in this example than the portion of finalized partial products is performed stepwise formation of sticky bit.

【0028】丸め回路6は入力されるスティッキービットから丸めを行うかどうかを判定し、丸めを行う場合は加算回路7に加算値“1”を出力する。 The rounding circuit 6 determines whether to round the sticky bits input, when performing rounding outputs the addition value "1" to the addition circuit 7. 加算回路7は丸めを行う場合に限り、加算回路2の乗算結果に“1”を加算して、丸めを行うがその他の場合は乗算結果をそのまま選択回路8に出力する。 Only when performing addition circuit 7 rounds, by adding "1" to the multiplication result of the adder 2, performs the rounding otherwise outputting the multiplication result as the selection circuit 8. また、キャリー生成回路5 In addition, it carries generation circuit 5
は、キャリー・セーブ・フォーマットの部分積の和成分SS(50:0)とキャリー成分CC(50:0)を入力とし、部分積の下位のキャリ−C51を求め、求めたキャリーを加算回路7に送る。 Carry-save format of the partial product of the sum component SS (50: 0) and a carry component CC (50: 0) as input, obtains a lower carry -C51 partial products, adds the obtained carry circuit 7 send to. これにより、加算回路7 As a result, the addition circuit 7
では加算回路2から入力される乗算結果にキャリーを加算し、正しい乗算結果を得ている。 In adding the carry to the multiplication result input from the adder circuit 2, to obtain the correct multiplication result.

【0029】選択回路8は乗算結果の1ビットシフトしたものとしないものとをオーバーフローするかどうかによって選択し、最終の乗算結果を出力する。 The selection circuit 8 selects depending on whether overflows and what does and does not shifted by 1 bit of the multiplication result, and outputs the final multiplication result.

【0030】本実施形態によれば、乗算回路1の部分積の和成分SSとキャリー成分CCからP、K、G信号を生成し、これらP、K、G信号からスティッキービット100をビットスライスで求めることにより、キャリーの伝搬がないことと、加算回路2による部分積の和成分SSとキャリー成分CCの加算処理と並列にスティッキービット100を求める処理を行うことにより、スティッキービット100を高速に生成することができる。 In accordance with the present embodiment, P from the sum component SS and carry component CC of the partial product of the multiplication circuit 1, K, to generate a G signal, these P, K, the sticky bit 100 from G signals in bit slice by obtaining, and that there is no propagation of the carry, by performing the processing for obtaining the sticky bit 100 in parallel with the addition process of the sum component SS and carry component CC of the partial product by the addition circuit 2, it generates a sticky bit 100 at a high speed can do. これにより、乗算結果を得る時間を短縮化でき、回路の乗算速度を向上させることができる。 This can shorten the time for obtaining a multiplication result, it is possible to improve the multiplication speed of the circuit.

【0031】尚、本発明は上記実施形態に限定されることなく、その要旨を逸脱しない範囲において、具体的な構成、機能、作用、効果において、他の種々の形態によっても実施することができる。 [0031] The present invention is not limited to the above embodiments without departing from the scope and spirit thereof, specific structure, function, action, in effect, can be carried out by a variety of other forms .

【0032】 [0032]

【発明の効果】以上詳細に説明したように、本発明によれば、浮動小数点演算器に於けるスティッキービット生成回路において、乗算結果を求める前のキャリー・セーブ・フォーマットの部分積の和成分とキャリー成分の対応するビットごとの論理和の反転G、排他的論理和P、 As described [Effect Invention above in detail, according to the present invention, the floating-point unit in at the sticky bit generating circuit, and sum components of a partial product of the previous carry-save format for obtaining a multiplication result inverted G, exclusive P logical OR of each corresponding bit of the carry component,
論理積Gを求め、得られP、K、G信号からスティッキービットを求めることにより、スティッキービット生成の処理を高速化して丸め処理に掛かる時間を短縮化することにより、乗算速度を更に向上させることができる。 Logically ANDed G, resulting P, K, by finding the sticky bit from the G signal, by shortening the time required for the rounding to speed the processing of sticky bit generation, further improving the multiplied speed can.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】本発明の乗算器の一実施形態の構成を示したブロック図である。 1 is a block diagram showing a configuration of an embodiment of a multiplier of the present invention.

【図2】図1に示したPKG生成回路の構成例を示した回路図である。 2 is a circuit diagram showing a configuration example of a PKG generating circuit shown in FIG.

【図3】図1に示したスティッキービット生成回路の構成例を示した回路図である。 3 is a circuit diagram showing an example of the configuration of the sticky bit generating circuit shown in FIG.

【図4】従来の浮動小数点乗算器の構成例を示したブロック図である。 4 is a block diagram showing a configuration example of a conventional floating-point multiplier.

【符号の説明】 DESCRIPTION OF SYMBOLS

1 乗算回路 2、7 加算回路 3 PKG生成回路 4 スティッキービット生成回路 5 キャリー生成回路 6 丸め回路 8 選択回路 1 multiplier circuits 2,7 adder circuit 3 PKG generating circuit 4 sticky bit generating circuit 5 carry generation circuit 6 rounding circuit 8 select circuit

Claims (5)

    【特許請求の範囲】 [The claims]
  1. 【請求項1】 2個の正規化オペランドを乗算する乗算手段と、 前記乗算手段から得られる部分積の和成分の下位ビットとキャリー成分の下位ビットから論理和の反転KB(キャリー伝播の停止)、排他的論理和P(キャリーの伝播)、論理積G(キャリーの生成)を生成するPKG生成手段と、 前記PKG生成手段により得られた反転KB、排他的論理和P、論理積Gよりスティッキービットを生成するスティッキービット生成手段と、 を具備することを特徴とするスティッキービット生成回路。 1. A multiplication means for multiplying the two normalized operands, inversion KB of logical sum from the lower bits of the lower bits and carry component of the sum component of the partial products obtained from the multiplication means (stop of carry propagation) exclusive OR P (propagation of the carry), and PKG generating means for generating a logical product G (generation of carry), inverted KB obtained by the PKG generating means, an exclusive OR P, sticky than logical product G sticky bit generating circuit, characterized by comprising a sticky bit generating means for generating a bit, a.
  2. 【請求項2】 前記スティッキービット生成手段は、前記和成分とキャリー成分の対応するビットとその隣接上位ビットとの排他的論理和P、論理積G、反転KBの各信号から、そのビットが1とならないことを示す信号を求めた後、前記各ビットが1とならないことを示す信号の全論理和をとることによりスティッキービットを生成することを特徴とする請求項1記載のスティッキービット生成回路。 Wherein said sticky bit generating means is an exclusive OR P of the corresponding bit and its neighboring upper bits of the sum component and a carry component, logical product G, from the signal inversion KB, the bit is 1 after obtaining a signal indicating that not a sticky bit generating circuit according to claim 1, wherein said each bit and generates a sticky bit by taking the total logical sum of the signal indicating that that do not 1.
  3. 【請求項3】 前記PKG生成手段はビットスライスで演算して前記排他的論理和P、論理積G、反転KBの各信号を求め、前記スティッキービット生成手段はスティッキービットを複数ブロックに分割して求めることを特徴とする請求項1又は2記載のスティッキービット生成回路。 Wherein the PKG generating means the exclusive logical sum computed by bit-slice P, logical product G, obtains each signal inversion KB, the sticky bit generating means divides the sticky bit into a plurality of blocks sticky bit generating circuit according to claim 1, wherein the determination.
  4. 【請求項4】 2個の正規化オペランドを乗算する乗算手段と、 前記乗算手段から得られる部分積の和成分の下位ビットとキャリー成分の下位ビットから論理和の反転KB(キャリー伝播の停止)、排他的論理和P(キャリーの伝播)、論理積G(キャリーの生成)を生成するPKG生成手段と、 前記PKG生成手段により得られた反転KB、排他的論理和P、論理積Gよりスティッキービットを生成するスティッキービット生成手段と、 前記乗算手段から得られる部分積の和成分の上位ビットとキャリー成分の上位ビットを加算する第1の加算手段と、 前記スティッキービット生成手段により生成されたスティッキービットより乗算結果に丸め処理を行うかどうかを判定する判定手段と、 前記PKG生成手段により得られた反転KB、排 Wherein a multiplying means for multiplying the two normalized operands, inversion KB of logical sum from the lower bits of the lower bits and carry component of the sum component of the partial products obtained from the multiplication means (stop of carry propagation) exclusive OR P (propagation of the carry), and PKG generating means for generating a logical product G (generation of carry), inverted KB obtained by the PKG generating means, an exclusive OR P, sticky than logical product G a sticky bit generating means for generating a bit, a first adding means for adding the high-order bits of the upper bits and the carry component of the sum component of the partial products obtained from the multiplication means, sticky generated by the sticky bit generating means determination means for determining whether or not to perform rounding more multiplication result bits, inverting KB obtained by the PKG generating means, exhaust 的論理和P、論理積Gよりキャリーを生成するキャリー生成手段と、 前記第1の加算手段から得られる乗算結果に前記キャリー生成手段より生成されたキャリーを加算すると共に、 ORs P, a carry generating means for generating a carry from the logical product G, as well as adding the carry generated from said carry generating means is multiplied results obtained from said first addition means,
    前記判定手段により丸め処理を行うと判定された場合に1を加える第2の加算手段と、 を具備することを特徴とする乗算器。 Multiplier, characterized by comprising, a second adding means for adding 1 when it is determined to perform the rounding by said determining means.
  5. 【請求項5】 前記第1の加算手段による加算処理と前記PKG生成手段及びスティッキービット生成手段の処理を並列に行うことを特徴とする請求項4記載の乗算器。 5. The multiplier of claim 4, wherein performing the processing in the first of said by addition processing and adding means PKG generating means and the sticky bit generating means in parallel.
JP2000292654A 2000-09-26 2000-09-26 Sticky bit generating circuit and multiplier Abandoned JP2002108606A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000292654A JP2002108606A (en) 2000-09-26 2000-09-26 Sticky bit generating circuit and multiplier

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000292654A JP2002108606A (en) 2000-09-26 2000-09-26 Sticky bit generating circuit and multiplier

Publications (1)

Publication Number Publication Date
JP2002108606A true JP2002108606A (en) 2002-04-12

Family

ID=18775565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000292654A Abandoned JP2002108606A (en) 2000-09-26 2000-09-26 Sticky bit generating circuit and multiplier

Country Status (1)

Country Link
JP (1) JP2002108606A (en)

Cited By (15)

* 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
JP2013182619A (en) * 2012-02-29 2013-09-12 Samsung Electronics Co Ltd Partial product generation device and method for polynomial arithmetic
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
US9063870B1 (en) 2006-12-05 2015-06-23 Altera Corporation Large multiplier for programmable logic 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
US9395953B2 (en) 2006-12-05 2016-07-19 Altera Corporation Large multiplier for programmable logic device
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

Cited By (15)

* 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
US9395953B2 (en) 2006-12-05 2016-07-19 Altera Corporation Large multiplier for programmable logic device
US9063870B1 (en) 2006-12-05 2015-06-23 Altera Corporation Large multiplier for programmable logic device
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions 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
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
JP2013182619A (en) * 2012-02-29 2013-09-12 Samsung Electronics Co Ltd Partial product generation device and method for polynomial arithmetic
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

Similar Documents

Publication Publication Date Title
US6360189B1 (en) Data processing apparatus and method for performing multiply-accumulate operations
US6847985B1 (en) Floating point divide and square root processor
KR100242274B1 (en) Floating point/integer processor with divide and square root functions
US6904446B2 (en) Floating point multiplier/accumulator with reduced latency and method thereof
Townsend et al. A comparison of Dadda and Wallace multiplier delays
US6381625B2 (en) Method and apparatus for calculating a power of an operand
US4901270A (en) Four-to-two adder cell for parallel multiplication
JP2622896B2 (en) Division apparatus
US7313585B2 (en) Multiplier circuit
EP0421092B1 (en) Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier
CN1186714C (en) High radix divider and method
US6763368B2 (en) Method and apparatus for performing single-cycle addition or subtraction and comparison in redundant form arithmetic
JP3578502B2 (en) How to perform a parallel data processing in a single processor
US5732007A (en) Computer methods and apparatus for eliminating leading non-significant digits in floating point computations
JP3689183B2 (en) Precise floating point divide / square root of realizing accurate, and effective sticky bit calculation
EP0585619B1 (en) Method of detecting zero condition of arithmetic or logical computation result, and circuit for same
US4737926A (en) Optimally partitioned regenerative carry lookahead adder
Li et al. Implementation of single precision floating point square root on FPGAs
US6779012B2 (en) Computer method and apparatus for division and square root operations using signed digit
US5844830A (en) Executing computer instrucrions by circuits having different latencies
EP0351242B1 (en) Floating point arithmetic units
US4941120A (en) Floating point normalization and rounding prediction circuit
US4999803A (en) Floating point arithmetic system and method
RU2412462C2 (en) Low wattage floating-point processor for selected sub-accuracy
US4926370A (en) Method and apparatus for processing postnormalization and rounding in parallel

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040217

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20040519