JP3315042B2 - Multiplier - Google Patents
MultiplierInfo
- Publication number
- JP3315042B2 JP3315042B2 JP30909396A JP30909396A JP3315042B2 JP 3315042 B2 JP3315042 B2 JP 3315042B2 JP 30909396 A JP30909396 A JP 30909396A JP 30909396 A JP30909396 A JP 30909396A JP 3315042 B2 JP3315042 B2 JP 3315042B2
- Authority
- JP
- Japan
- Prior art keywords
- multiplication
- multiplicand
- multiplier
- booth
- bit
- 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.)
- Expired - Fee Related
Links
Description
【0001】[0001]
【発明の属する技術分野】本発明は、ブースの方法(Boo
th's method)により乗算を行う乗算装置に関するもので
あり、更に詳しくは、その乗算装置の通常の処理によっ
ては正しい乗算結果が得られない乗数と被乗数との組合
せである特異計算の場合に乗算結果を補正するための手
段に関する。TECHNICAL FIELD The present invention relates to a booth method (Boo
th's method), and more specifically, in the case of a singular calculation that is a combination of a multiplier and a multiplicand that cannot obtain a correct multiplication result by a normal process of the multiplication device, It relates to means for correcting.
【0002】[0002]
【従来の技術】乗算をより高速に実行するために、LS
I(大規模集積回路)などのハードウェアで乗算を実現
する方法が従来から検討されている。この場合、いかに
小さい回路で即ち半導体基板上のいかに小さい面積で、
いかに高速に乗算を行うことができるかが重要となる。2. Description of the Related Art To execute multiplications faster, LS
Methods for realizing multiplication by hardware such as I (large-scale integrated circuit) have been studied. In this case, how small the circuit, that is, how small the area on the semiconductor substrate,
It is important how fast the multiplication can be performed.
【0003】このようなハードウェアによる乗算の実現
に際し、乗算手法としてブースの方法(Booth's metho
d)がよく利用されている。そして、ブースの方法を前
提として、高速で低コストの乗算器を実現するための提
案(特公昭57−28129号)や、乗算器における消
費電力を低減するための提案がなされている(特願平7
−259826号)。In realizing such multiplication by hardware, Booth's method (Booth's method) is used as a multiplication method.
d) is often used. On the premise of the Booth method, a proposal for realizing a high-speed and low-cost multiplier (Japanese Patent Publication No. 57-28129) and a proposal for reducing the power consumption of the multiplier have been made (Japanese Patent Application No. 1993-287, pp. 157-287). Flat 7
-259826).
【0004】一般に、被乗数Xと乗数Yとの積を得るに
は、図9に示すように、まず乗数Yの桁毎(ビット毎)
に被乗数Xとの部分積を求め、次にそれぞれの部分積を
加算(累積加算)すればよい。このような乗算の過程に
おいて、部分積の加算で多くの時間を要する。したがっ
て、部分積の項数を減らすことができれば、乗算の高速
化が可能となる。そこで2次のブースの方法では、図1
0に示すように部分積の数を約半数に減らすことによ
り、乗算の高速化を図っている。なお、2次のブースの
方法では、2の補数表示による乗算、すなわち正や負の
数が混在した乗算が補正なしに実行できる。以下、この
2次のブースの方法を具体的に説明する。In general, in order to obtain the product of the multiplicand X and the multiplier Y, first, as shown in FIG.
, A partial product with the multiplicand X is calculated, and then the respective partial products are added (cumulative addition). In the process of such multiplication, much time is required for adding partial products. Therefore, if the number of terms of the partial product can be reduced, the speed of the multiplication can be increased. Therefore, in the secondary booth method, FIG.
By reducing the number of partial products to about half as shown by 0, multiplication is speeded up. In the secondary booth method, multiplication by two's complement notation, that is, multiplication in which positive and negative numbers are mixed, can be executed without correction. Hereinafter, the method of the secondary booth will be specifically described.
【0005】いま、乗数Yが2の補数表示になっている
とすると、乗数Yを次のように表すことができる。 Y=−yn・2n+Σ(i=0,n-1)yi・2i =−yn・2n+yn-1・2n-1+yn-2・2n-2+・・・+y0・20 …(1) ここで、ynは符号ビットであり、yn-1〜y0は数値部
である。なお上記において、"Σ"は総和の記号であっ
て、"Σ(i=n1,n2)"は次に続く項についてi=n1からi
=n2まで総和をとることを意味するものとする(以下
においても同様)。上記式(1)より、被乗数Xと乗数Y
との積Pを次のように表すことができる。 P=X・Y =−yn・2n・X+yn-1・2n-1・X+yn-2・2n-2・X+・・・+y0・20・X = (y-1+y0−2y1)20・X+(y1+y2−2y3)22・X+・・・ +(yn-2+yn-1−2yn)2n-1・X =Σ(j=0,(n-1)/2)(y2j-1+y2j−2y2j+1)22j・X …(2) ここで、y-1=0であり、nは奇数である。[0005] Assuming that the multiplier Y is represented by two's complement, the multiplier Y can be expressed as follows. Y = −y n · 2 n + Σ (i = 0, n−1) y i · 2 i = −y n · 2 n + y n−1 · 2 n−1 + y n−2 · 2 n−2 + · ·· + y 0 · 2 0 (1) Here, y n is a sign bit, and y n-1 to y 0 are numerical values. In the above, “Σ” is a symbol of the sum, and “Σ (i = n1, n2)” is i = n1 to i for the next term.
= N2 (the same applies hereinafter). From the above equation (1), the multiplicand X and the multiplier Y
Can be expressed as follows. P = X · Y = −y n · 2 n · X + y n−1 · 2 n−1 · X + y n−2 · 2 n−2 · X +... + Y 0 · 2 0 · X = (y −1 + y 0 -2y 1) 2 0 · X + (y 1 + y 2 -2y 3) 2 2 · X + ··· + (y n-2 + y n-1 -2y n) 2 n-1 · X = Σ (j = 0, (n-1) / 2) (y 2j-1 + y 2j -2y 2j + 1) 2 2j · X ... (2) where a y -1 = 0, n is an odd number.
【0006】上記式(2)における (y2j-1+y2j−2y2j+1)22j・X …(3) が2次のブースの方法における部分積であり、部分積の
個数は(n+1)/2である。したがって、乗数のビッ
ト毎に被乗数との部分積を求める一般的な方法に比べ、
項数が半減している。In the above equation (2), (y 2j-1 + y 2j -2y 2j + 1 ) 2 2j · X (3) is a partial product in the secondary booth method, and the number of partial products is (n + 1) ) / 2. Therefore, compared to the general method of finding the partial product with the multiplicand for each bit of the multiplier,
The number of terms has been reduced by half.
【0007】上記式(3)で示される部分積における係数 (y2j-1+y2j−2y2j+1) …(4) は、乗数Yにおける連続する3ビットy2j-1,y2j,y
2j+1の値によって決定され、0,±1,±2のいずれか
となる。このため、2次のブースの方法における部分積
は、0,±X・22j,±2X・22jのいずれかとなる。し
たがって、被乗数Xに対して、0にする、そのままにす
る、2倍にする、2の補数を求める(正負を反転させ
る)、という各操作を行う回路を部分積生成回路として
用意することにより、部分積を得ることができる。この
とき、これらの操作のうちいずれの操作を被乗数Xに対
して行うかを示す操作信号が必要となるが、これには、
連続する3ビットy2j-1,y2j,y2j+1の値を用いて図
11に示す真理値表によって定義される信号CX,C2
X,Ccompを操作信号として作成する回路(「ブースデ
コーダ」と呼ばれる)を用意すればよい。ここで、操作
信号CXは被乗数Xをそのままにするか否かを示し、操
作信号C2Xは被乗数Xを2倍にするか否かを示し、操作
信号Ccompは被乗数Xの2の補数を求めるか否かを示
す。また、この真理値表における"状態"は部分積の内容
を示すものであって、具体的には部分積の式(3)におけ
る(y2j-1+y2j−2y2j+1)X の部分を示している
(後述の他の真理値表においても同様)。この真理値表
より、操作信号CX,C2X,Ccompは次の論理式により
表すことができる。 CX =yi-1(+)yi …(5) C2X =!{(yi-1(+)yi)+!(yi(+)yi+1)} …(6) Ccomp=yi+1 …(7) ただし、i=0,2,4,…… ここで、"(+)"は排他的論理和の演算子であり、"!"
は論理否定の演算子であって"!a"はaの反転値を示す
ものとする(以下においても同様)。The coefficients (y 2j-1 + y 2j -2y 2j + 1 ) (4) in the partial product represented by the above equation (3) are three consecutive bits y 2j-1 , y 2j , y in the multiplier Y.
It is determined by the value of 2j + 1 and is one of 0, ± 1, ± 2. Therefore, the partial product in the secondary booth method is any of 0, ± X · 2 2j , ± 2X · 2 2j . Accordingly, by preparing a circuit for performing each operation of setting the multiplicand X to 0, leaving it as it is, doubling it, and finding a two's complement (inverting the sign) as a partial product generation circuit, Partial products can be obtained. At this time, an operation signal indicating which of these operations is performed on the multiplicand X is required.
Signals CX and C2 defined by the truth table shown in FIG. 11 using the values of three consecutive bits y2j-1 , y2j , and y2j + 1 .
What is necessary is just to prepare a circuit (called a “booth decoder”) that creates X and Ccomp as operation signals. Here, the operation signal CX indicates whether to keep the multiplicand X as it is, the operation signal C2X indicates whether to double the multiplicand X, and the operation signal Ccomp indicates whether to obtain the two's complement of the multiplicand X. Indicates The "state" in this truth table indicates the content of the partial product, and specifically, the portion of (y 2j-1 + y 2j -2y 2j + 1 ) X in equation (3) of the partial product (The same applies to other truth tables described later). From this truth table, the operation signals CX, C2X, Ccomp can be expressed by the following logical expressions. CX = yi-1 (+) yi (5) C2X =! {(Y i-1 (+) y i ) +! (Y i (+) y i + 1 )} (6) Ccomp = y i + 1 (7) where i = 0, 2, 4,..., Where “(+)” is exclusive logic The sum operator, "!"
Is a logical negation operator, and "! A" indicates an inverted value of a (the same applies hereinafter).
【0008】なお、j=0に対応する部分積は (y-1+y0−2y1)22j・X=(y0−2y1)22j・X であるため、操作信号CX,C2X,Ccompを定義する真
理値表は図12に示すようになり、これらの操作信号は
次の論理式により表すことができる。 CX =y0 …(8) C2X =!(y0+!y1) …(9) Ccomp=y1 …(10) ただし、i=0、2、4、……Since the partial product corresponding to j = 0 is (y -1 + y 0 -2y 1 ) 2 2j · X = (y 0 -2y 1 ) 2 2j · X, the operation signals CX, C2X, The truth table defining Ccomp is as shown in FIG. 12, and these operation signals can be represented by the following logical expressions. CX = y 0 ... (8) C2X =! (Y 0 +! Y 1 ) (9) Ccomp = y 1 (10) where i = 0, 2, 4,...
【0009】上述のブースデコーダおよび部分積生成回
路を用いて得られる前記式(3)に示される各部分積(j=
0,1,2,…,(n-1)/2 のそれぞれに対応する部分積)を加
算(累積加算)することにより、被乗数Xと乗数Yとの
積Pを得ることができる。ところで、2の補数表示の2
進数の乗算においてブースの方法で求められる各部分積
は2の補数表示となっている。したがって、上記の積P
の算出において、図13に示すように、下位側の部分積
については符号拡張して加算しなければ正しい積Pを得
ることができない(図13において"△"は部分積の符号
ビットを揃えるための符号拡張ビットを示している)。
しかし、このような符号拡張を行うと部分積のビット数
が増え、部分積の加算を行うハードウェア量が増大して
しまう。そこで、この事態を回避するために、以下のよ
うにして部分積の加算が行われる。Each partial product (j = j) shown in the above equation (3) obtained using the above-described Booth decoder and partial product generation circuit
, (N-1) / 2), the product P of the multiplicand X and the multiplier Y can be obtained. By the way, 2's complement 2
Each partial product obtained by the Booth's method in the base multiplication is represented in two's complement. Therefore, the above product P
In the calculation of, as shown in FIG. 13, a correct product P cannot be obtained without sign extension and addition of the lower partial product (in FIG. 13, “△” indicates that the sign bits of the partial product are aligned). Are shown as sign extension bits).
However, when such a sign extension is performed, the number of bits of the partial product increases, and the amount of hardware for adding the partial product increases. Then, in order to avoid this situation, addition of partial products is performed as follows.
【0010】いま、ビット長mの部分積PPを PP=−am2m+am-12m-1+am-22m-2+・・・+a020 …(11) で表すこととし、これに対し符号ビットの拡張を考え
る。ここで、符号ビットamをrビット拡張したとする
と、 PP=−am2m+r+am2m+r-1+・・・+am2m+1+am2m +am-12m-1+am-22m-2+・・・+a020 …(12) となる。さらに am=1−!am …(13) とおくと、 PP=(1−!am)(−2m+r+2m+r-1+・・・+2m+1+2m) +am-12m-1+am-22m-2+・・・+a020 =−2m+r+2m+r-1+・・・+2m+1+(!am+1)2m +am-12m-1+am-22m-2+・・・+a020 …(14) となる。上記式(14)より、図13に示された部分積の加
算は、図14に示される部分積の加算と等価になる。そ
して、図14に示される加算を整理すると、最終的に図
15に示すようになる(図14および図15おける"○"
は、符号ビットamの反転ビット!amを示すものとす
る)。このようにして、図15に示すように、部分積の
最上位ビット(符号ビット)を反転させ、所定のビット
位置に「1」を加えることにより、符号拡張をせずに部
分積の加算を行って正しい積Pを得ることができる。[0010] Now, representing the partial product PP bit length m with PP = -a m 2 m + a m-1 2 m-1 + a m-2 2 m-2 + ··· + a 0 2 0 ... (11) Let us consider the extension of the sign bit. Here, when the sign bit a m extended r bits, PP = -a m 2 m + r + a m 2 m + r-1 + ··· + a m 2 m + 1 + a m 2 m + a m-1 2 m-1 + a m- 2 2 m-2 + ··· + a 0 2 0 ... is (12). Furthermore, a m = 1-! a m ... and put a (13), PP = (1- a m!) (- 2 m + r +2 m + r-1 + ··· +2 m + 1 +2 m) + a m-1 2 m-1 + a m-2 2 m- 2 + ··· + a 0 2 0 = -2 m + r +2 m + r-1 + ··· +2 m + 1 + (! a m +1) 2 m + a m-1 2 m-1 + a m-2 2 m-2 + ··· + a 0 2 0 ... is (14). From the above equation (14), the addition of the partial products shown in FIG. 13 is equivalent to the addition of the partial products shown in FIG. When the addition shown in FIG. 14 is arranged, the result finally becomes as shown in FIG. 15 (“15” in FIGS. 14 and 15).
An inverted bit of the sign bit a m! denote the a m). In this manner, as shown in FIG. 15, by inverting the most significant bit (sign bit) of the partial product and adding “1” to a predetermined bit position, the addition of the partial product can be performed without sign extension. To get the correct product P.
【0011】いま、2の補数表示の二つの16ビットの
数を入力して、ブースの方法によりそれらの積を算出す
る乗算器を考える。この乗算器の被乗数Xのとりうる値
は216通り、乗数Yのとりうる値も216通りであり、し
たがって、この乗算器への入力の組合せは232通り存在
する。すなわち、この乗算器で実行される乗算の種類は
232通りある。しかし、このうちの「8000h×8000h」と
いう乗算については、上記ブースの方法によっては正し
い積を得ることができない。すなわち、上記のブースの
方法によれば、16ビットの数(2の補数表示)の乗算
は、図16に示すような部分積の加算によって行われ、
31ビットの乗算結果(積)P30〜P0が得られるが、
「8000h×8000h」という乗算については、図17に示す
ように、演算結果が「40000000h」となる。いま、図1
8に示すように小数点の位置が符号ビットの右隣である
と仮定すると、「8000h」は「−1」を示し、「4000000
0h」も「−1」を示し、その結果、図17は「(−1)
×(−1)=(−1)」を示すことになり、誤った乗算
結果が得られたことになる。このように「8000h×8000
h」という乗算について誤った結果が得られるのは、小
数点を他の位置に選んだ場合も同様である。以下では、
正しい乗算結果が得られないこのような乗算を「特異計
算」と呼ぶものとする。Now, consider a multiplier that inputs two 16-bit numbers in two's complement notation and calculates their product by the Booth method. Possible values are 2 16 combinations of multiplicand X of the multiplier, a value less 2 16 combinations can take the multiplier Y, therefore, the combination of inputs to the multiplier is present are two 32. That is, there are 2 32 types of multiplications performed by this multiplier. However, for the multiplication of “8000h × 8000h”, a correct product cannot be obtained by the above-mentioned booth method. That is, according to the Booth method described above, the multiplication of the 16-bit number (two's complement notation) is performed by adding partial products as shown in FIG.
A 31-bit multiplication result (product) P30 to P0 is obtained,
As for the multiplication “8000h × 8000h”, as shown in FIG. 17, the operation result is “40000000h”. Now, Figure 1
Assuming that the position of the decimal point is on the right of the sign bit as shown in FIG. 8, “8000h” indicates “−1” and “40000000”
0h ”also indicates“ −1 ”. As a result, FIG. 17 shows“ (−1) ”.
× (-1) = (-1) ", which means that an incorrect multiplication result was obtained. Thus, "8000h x 8000
The incorrect result for the multiplication "h" is obtained even if the decimal point is chosen elsewhere. Below,
Such multiplication for which a correct multiplication result cannot be obtained is referred to as “singular calculation”.
【0012】従来より、このような特異計算の場合に乗
算結果を補正する手段を有する乗算装置が存在する。図
19は、このような補正手段を有する乗算装置の一例
(以下「従来例1」という)を示す回路図である。この
例では、「8000h×8000h」という特異計算を検出するた
めに特異計算検出器7を設け、これから出力される検出
信号DETBを用いて、ANDゲートや、NANDゲー
ト、インバータから成る回路により、16ビットの乗算
器6から出力される乗算結果P30〜P0(被乗数x15〜
x0と乗数y15〜y0との積)を補正している。そして、
補正後の乗算結果PM30〜PM0を図19の乗算装置にお
ける乗算結果としている(なお、特異計算が検出されな
いとき、P30〜P0はPM30〜PM0に等しい)。Conventionally, there has been a multiplication apparatus having means for correcting the multiplication result in the case of such a singular calculation. FIG. 19 is a circuit diagram showing an example of a multiplication device having such a correction means (hereinafter, referred to as “conventional example 1”). In this example, a singularity calculation detector 7 is provided to detect a singularity calculation of “8000h × 8000h”, and a detection signal DETB output from the singularity calculation detector 7 is used to detect a singularity calculation by a circuit including an AND gate, a NAND gate, and an inverter. multiplication result output from the bit of the multiplier 6 P 30 ~P 0 (multiplicand x 15 ~
x 0 and the multipliers y 15 to y 0 ). And
The multiplication result PM 30 Pm 0 after the correction is set to the multiplication result of the multiplier of FIG. 19 (Note that when the specific calculation is not detected, P 30 to P 0 is equal to PM 30 ~PM 0).
【0013】上記構成によれば、被乗数Xおよび乗数Y
が共に「8000h」の場合には、特異計算検出器7の出力
はDETB=0となる。これにより、乗算器6から出力
される乗算結果のうち符号ビットP30は「0」、数値部
のビットP29〜P0は全て「1」となり、補正後の乗算
結果PM30〜PM0として「3FFFFFFFh」が得られる。な
お、図18に示したように小数点の位置が符号ビットの
右隣である場合、この例の乗算装置を利用したデジタル
シグナルプロセッサ(DSP)等では、乗算結果を32
ビットに合わせるため、この補正後の乗算結果を1ビッ
トだけ左方向(上位方向)にシフトさせる。これによ
り、最終的な乗算結果として「7FFFFFFFh」が得られ
る。According to the above configuration, the multiplicand X and the multiplier Y
Is "8000h", the output of the singular calculation detector 7 is DETB = 0. Thus, the sign bit P 30 of the multiplication result output from the multiplier 6 is "0", all bits P 29 to P 0 of the numerical part becomes "1", as a result of multiplication PM 30 Pm 0 after the correction "3FFFFFFFh" is obtained. When the position of the decimal point is immediately to the right of the sign bit as shown in FIG. 18, in a digital signal processor (DSP) or the like using the multiplier of this example, the multiplication result is 32 bits.
In order to match the bits, the corrected multiplication result is shifted leftward (upper direction) by one bit. Thereby, “7FFFFFFFh” is obtained as the final multiplication result.
【0014】図20は、特異計算の場合に乗算結果を補
正する手段を有する乗算装置の他の例(以下「従来例
2」という)を示す回路図である。この例においても、
従来例1と同様、「8000h×8000h」という特異計算を検
出するために特異計算検出器7を設け、この回路から出
力される検出信号DETBを用いて、16ビットの乗算
器6によって得られる乗算結果を補正する。しかし、こ
の例では、乗算器6から出力される乗算結果P30〜P0
を検出信号DETBを用いて直接補正していた従来例1
とは異なり、検出信号DETBを用いてNANDゲート
およびインバータから成る回路により被乗数Xの最下位
ビットx0を修正することにより、乗算器6から出力さ
れる乗算結果を補正する。FIG. 20 is a circuit diagram showing another example of a multiplication device having means for correcting a multiplication result in the case of a singular calculation (hereinafter referred to as "conventional example 2"). In this example,
As in the first conventional example, a singular calculation detector 7 is provided to detect a singular calculation “8000h × 8000h”, and a multiplication obtained by a 16-bit multiplier 6 is performed by using a detection signal DETB output from this circuit. Correct the result. However, in this example, the multiplication results P 30 to P 0 output from the multiplier 6
Example 1 in which is directly corrected using the detection signal DETB
Unlike, by modifying the least significant bit x 0 of the multiplicand X by the circuit consisting of NAND gates and inverters using the detection signal DETB, corrects the multiplication result output from the multiplier 6.
【0015】上記構成によれば、被乗数Xおよび乗数Y
が共に「8000h」の場合に、特異計算検出器7の出力は
DETB=0となり、乗算器6に入力される被乗数Xの
最下位x0ビットは「1」に修正される。これにより、
「8000h×8000h」という特異計算の場合に、乗算器6で
は「8001h×8000h」という乗算が行われ、乗算結果P30
〜P0として「3FFF8000h」という値が出力される。図2
2はこのときの乗算過程を示している。ここで、図18
に示したように小数点の位置が符号ビットの右隣である
場合、この例の乗算装置を利用したDSP等では、乗算
結果を32ビットに合わせるため、この「3FFF8000h」
という乗算結果を1ビットだけ左方向にシフトさせる。
これにより、最終的な乗算結果として「7FFF0000h(=
+0.9999695≒+1)」が得られる。すなわち、小数点
の位置を図18に示すように設定した場合に「(−1)
×(−1)」を意味する特異計算「8000h×8000h」の結
果として、「+0.9999695(≒+1)」を意味する「7FF
F0000h」が得られることになる。According to the above configuration, the multiplicand X and the multiplier Y
There when both of "8000h", the output of a specific calculation detector 7 DETB = 0, and the least significant x 0 bits of multiplicand X to be input to the multiplier 6 is modified to "1". This allows
In the case of the singular calculation of “8000h × 8000h”, the multiplier 6 performs the multiplication of “8001h × 8000h”, and the multiplication result P 30
Value "3FFF8000h" is output as ~P 0. FIG.
2 indicates the multiplication process at this time. Here, FIG.
When the position of the decimal point is immediately to the right of the sign bit as shown in (2), in a DSP or the like using the multiplier of this example, the "3FFF8000h"
Is shifted leftward by one bit.
As a result, “7FFF0000h (=
+ 0.9999695 ≒ + 1) "is obtained. That is, when the position of the decimal point is set as shown in FIG.
As a result of the singular calculation “8000h × 8000h” meaning “× (−1)”, “7FF” meaning “+0.9999695 (≒ + 1)”
F0000h ”will be obtained.
【0016】[0016]
【発明が解決しようとする課題】前述の従来例1(図1
9)では、特異計算の場合に乗算結果を補正するため
に、乗算器6から出力される乗算結果を示す各ビットP
30〜P0毎に、NANDゲートまたはANDゲートやイ
ンバータから成る補正回路を必要とし、これらの接続の
ための配線面積も必要であるため、回路規模が大きなも
のとなってしまうという問題がある。The above-mentioned prior art 1 (FIG. 1)
In 9), in order to correct the multiplication result in the case of the singular calculation, each bit P indicating the multiplication result output from the multiplier 6 is set.
Every 30 to P 0, and requires correction circuit comprising a NAND gate or an AND gate or an inverter, because it is also necessary wiring area for these connections, there is a problem that the circuit scale becomes large.
【0017】これに対し、従来例2(図20)によれ
ば、特異計算の場合の補正回路の構成が簡単であり、回
路規模が大きくなることはない。また従来例2では、小
数点の位置を符号ビットの右隣に設定したとすると(図
18参照)、特異計算の場合、「(−1)×(−1)」
の乗算結果として「+0.9999695(≒+1)」が得られ
る。したがって、この場合の誤差はe=3.05×10-5で
あり、乗算結果は10進数で約4桁の有効精度を持つこ
とになる。このような乗算装置を利用するDSPは16
ビットを基本語長とする場合が多く、また特異計算が行
われる頻度は極めて低いことから、この有効精度で十分
とも考えられる。On the other hand, according to Conventional Example 2 (FIG. 20), the configuration of the correction circuit in the case of singular calculation is simple, and the circuit scale does not increase. In Conventional Example 2, if the position of the decimal point is set to the right of the sign bit (see FIG. 18), in the case of singular calculation, “(−1) × (−1)”
As a result of multiplication, “+0.9999695 (≒ + 1)” is obtained. Therefore, the error in this case is e = 3.05 × 10 −5 , and the multiplication result has an effective precision of about 4 digits in decimal. DSP using such a multiplication device is 16
In many cases, bits are used as the basic word length, and the frequency of performing singular calculations is extremely low. Therefore, it is considered that this effective precision is sufficient.
【0018】しかしDSPでは、信号処理で多用される
積和演算を高速に実行するために、例えば図23に示す
ように、データRAM8から順次読み出されるデータと
データRAM9から順次読み出される係数との積を乗算
器6で求め、その積を加算器10とレジスタ11とから
成る回路で累積加算していくという構成が採用されてお
り、この構成における加算器10は例えば40ビットと
いう比較的大きなビット数で演算できるようになってい
る。また、乗算器6から出力される乗算結果(積)も3
1ビットとなっている。さらに、オーディオ製品などの
アプリケーションにおいては、1データ16ビットでは
精度不足であるとして、1データ24ビットのDSPが
主流となっており、この場合、10進数で約6桁の演算
精度を持つことになる。However, in the DSP, in order to execute a product-sum operation frequently used in signal processing at a high speed, for example, as shown in FIG. 23, a product of data sequentially read from the data RAM 8 and a coefficient sequentially read from the data RAM 9 is used. Is obtained by a multiplier 6 and the product is cumulatively added by a circuit comprising an adder 10 and a register 11, and the adder 10 in this configuration has a relatively large number of bits of, for example, 40 bits. Can be calculated by The multiplication result (product) output from the multiplier 6 is also 3
It is one bit. Furthermore, in applications such as audio products, the accuracy of 16 bits per data is insufficient, and DSPs of 24 bits per data are predominant. In this case, the arithmetic precision of about 6 decimal digits is required. Become.
【0019】また、特異計算は、DSPなどのプログラ
ムの作成者がソフトウェアにてチェックを行い修正すべ
きであり、特異計算の場合に従来例2のような補正が行
われているだけでも価値があるという考え方もある。し
かし従来例2の構成では、特異計算に対しても所定の精
度で結果を出すため、精度よく計算を行いたい場合に、
特異計算の結果によって生じる不具合(精度不足)に気
付かないおそれがある。Also, the singular calculation should be checked and corrected by software by a program creator such as a DSP. In the case of a singular calculation, it is worthwhile even if the correction as in the conventional example 2 is performed. There is an idea that there is. However, in the configuration of the conventional example 2, a result is obtained with a predetermined accuracy even for a singular calculation.
There is a possibility that a problem (insufficient accuracy) caused by the result of the singular calculation may not be noticed.
【0020】さらに、アドレス演算を行う場合には、乗
算を厳密に行う必要があり、従来例2における精度では
不十分である。例えば、演算値でアドレスを生成し、対
応する値を予めプログラムRAMに格納したテーブルか
ら読み込む、いわゆるテーブルルックアップ方式の場合
には、演算値がそのままプログラムRAMのアドレスと
なるため、従来例2のように粗い丸め操作を伴うと、正
しいデータを読み込めないおそれがある。Further, when performing an address operation, it is necessary to perform the multiplication strictly, and the accuracy in the second conventional example is insufficient. For example, in the case of a so-called table look-up method in which an address is generated by an operation value and a corresponding value is read from a table stored in advance in a program RAM, the operation value becomes the address of the program RAM as it is. With such a rounding operation, there is a possibility that correct data cannot be read.
【0021】以上より、従来例2は、補正回路の構成が
簡単であるという利点を有するが、特異計算の場合に補
正によって得られる乗算結果の精度は十分なものではな
い。As described above, Conventional Example 2 has the advantage that the configuration of the correction circuit is simple, but the accuracy of the multiplication result obtained by correction in the case of singular calculation is not sufficient.
【0022】そこで本発明では、特異計算の場合におい
て、簡単な構成で乗算結果を補正することができ、かつ
補正により精度の高い乗算結果を得ることができる乗算
装置を提供することを目的とする。Therefore, an object of the present invention is to provide a multiplication device which can correct a multiplication result with a simple configuration in a case of a singular calculation and can obtain a highly accurate multiplication result by the correction. .
【0023】[0023]
【課題を解決するための手段】上記課題を解決するため
に成された本発明に係る第1の乗算装置では、ブースの
方法により符号付き2進数の乗算を行って積を算出する
乗算装置であって、乗数を構成するビット列の一部分で
ある複数ビットの値を入力して被乗数に対する操作を規
定する操作信号を出力するブースデコーダと、前記操作
信号によって規定される操作を被乗数に対して行うこと
により部分積を生成する部分積生成手段と、乗数を構成
するビット列の各部分である各複数ビットの値をブース
デコーダに入力することによって部分積生成手段から出
力される各部分積を累積加算することにより乗算結果を
得る部分積加算手段と、該乗算結果として正しい積が得
られない特異計算の場合であることを乗数および被乗数
に基づいて検出する特異計算検出手段と、特異計算の場
合であることが検出されると該乗算結果を補正する補正
手段とを備える乗算装置において、前記補正手段は、該
乗算結果を補正するために、前記ブースデコーダから出
力される操作信号の値を修正するブースデコーダ出力修
正手段を有する、ことを特徴としている。In order to solve the above-mentioned problems, a first multiplier according to the present invention is a multiplier which multiplies a signed binary number by a Booth's method to calculate a product. A booth decoder that inputs a value of a plurality of bits that are a part of a bit sequence forming a multiplier and outputs an operation signal that specifies an operation on the multiplicand; and performs an operation specified by the operation signal on the multiplicand. And a partial product generating means for generating a partial product according to the following formula: and a partial product output from the partial product generating means by inputting a value of each of a plurality of bits, which are each part of a bit string constituting a multiplier, to a Booth decoder. And a partial product adding means for obtaining a multiplication result, and detecting a singular calculation in which a correct product cannot be obtained as the multiplication result based on the multiplier and the multiplicand. In a multiplication apparatus including a singular calculation detection unit and a correction unit that corrects the multiplication result when it is detected that the case is a singular calculation, the correction unit uses the Booth decoder to correct the multiplication result. And a booth decoder output correction means for correcting the value of the operation signal output from the control unit.
【0024】本発明に係る第2の乗算装置では、上記第
1の乗算装置において、前記ブースデコーダ出力修正手
段は、前記乗算結果を補正するために、前記ブースデコ
ーダにより前記乗数の最下位側の複数ビットに対して出
力される前記操作信号の値を、前記被乗数の補数を求め
ることを規定する値に修正する、ことを特徴としてい
る。In the second multiplying device according to the present invention, in the first multiplying device, the Booth decoder output correcting means may correct the multiplication result by using the Booth decoder in the lowest order of the multiplier. The method is characterized in that a value of the operation signal output for a plurality of bits is corrected to a value that specifies obtaining a complement of the multiplicand.
【0025】本発明に係る第3の乗算装置では、上記第
1または第2の乗算装置において、前記補正手段は、前
記乗算結果を補正するために前記被乗数を修正する被乗
数修正手段を更に有する、ことを特徴としている。In a third multiplication device according to the present invention, in the first or second multiplication device, the correction means further includes a multiplicand correction means for correcting the multiplicand to correct the multiplication result. It is characterized by:
【0026】本発明に係る第4の乗算装置は、上記第3
の乗算装置において、前記被乗数修正手段は、前記乗算
結果を補正するために前記被乗数の最下位ビットを
「1」に修正する、ことを特徴としている。The fourth multiplying device according to the present invention comprises the third multiplying device.
Wherein the multiplicand correcting means corrects the least significant bit of the multiplicand to “1” in order to correct the multiplication result.
【0027】[0027]
【発明の実施の形態】16ビットの乗算装置において、
特異計算に対して出力される理想的な乗算結果(31ビ
ットの積)は「7FFFFFFFh」である。既述の従来例2
は、特異計算の場合の乗数や被乗数をそれらに近い値に
置き換えることにより、乗算結果として理想値「7FFFFF
FFh」に近い値を得ようとするものである。しかし、こ
の手法によって得られる特異計算の場合の乗算結果は、
理想値「7FFFFFFFh」にはなり得ず、必然的にその近似
値となる。DESCRIPTION OF THE PREFERRED EMBODIMENTS In a 16-bit multiplication device,
The ideal multiplication result (31-bit product) output for the singular calculation is “7FFFFFFFh”. Conventional example 2 already described
Replaces the multipliers and multiplicands in the case of singular calculations with values that are close to them, so that the ideal value "7FFFFF
FFh ”. However, the result of multiplication in the case of singular calculation obtained by this method is
It cannot be the ideal value "7FFFFFFFh", but it is necessarily an approximate value.
【0028】これに対し、特異計算の場合に従来例2に
よって得られる乗算結果「3FFF8000h」(32ビットに
合わせるためのシフトを行う前の値)の下位15ビット
を強制的に「1」にすることが考えられる。図21は、
このような考え方で構成された乗算装置の一例を示して
いる。この例では、従来例2(図20)の出力の下位1
5ビットP14〜P0のそれぞれに対して、NANDゲー
トとインバータから成る回路を追加し、これらにより、
特異計算の場合に、検出信号DETB(=0)を用いて
乗算器6からの31ビットの出力P30〜P0の下位15
ビットを「1」にするという構成になっている。この構
成によれば、特異計算の場合の乗算結果として「3FFFFF
FFh」が得られ、小数点の位置が符号ビットの右隣であ
る場合(図18参照)、この例の乗算装置を利用したD
SP等では、乗算結果を32ビットに合わせるため、こ
の補正後の乗算結果「3FFFFFFFh」が1ビットだけ左方
向にシフトさせられる。その結果、最終的な乗算結果と
して「7FFFFFFFh」が得られる。On the other hand, in the case of the singular calculation, the lower 15 bits of the multiplication result "3FFF8000h" (the value before shifting to match 32 bits) obtained by the conventional example 2 are forcibly set to "1". It is possible. FIG.
An example of a multiplication device configured based on such a concept is shown. In this example, the lower 1 of the output of the conventional example 2 (FIG. 20) is used.
A circuit including a NAND gate and an inverter is added to each of the five bits P 14 to P 0 , whereby
In the case of the singular calculation, the lower 15 bits of the 31-bit outputs P 30 to P 0 from the multiplier 6 using the detection signal DETB (= 0).
The bit is set to “1”. According to this configuration, "3FFFFF
FFh ”is obtained, and the position of the decimal point is immediately to the right of the sign bit (see FIG. 18).
In the SP or the like, the corrected multiplication result “3FFFFFFFh” is shifted leftward by one bit in order to match the multiplication result to 32 bits. As a result, “7FFFFFFFh” is obtained as a final multiplication result.
【0029】上記のように、図21に示した構成によれ
ば、特異計算の場合に「7FFFFFFFh」という理想的な乗
算結果が得られる。しかし、この構成では、従来例2
(図20)の回路に加えて、乗算結果を構成する31ビ
ットのうちの下位15ビットのそれぞれに対してNAN
Dゲートおよびインバータから成る補正回路を必要と
し、回路規模が大きくなる。As described above, according to the configuration shown in FIG. 21, an ideal multiplication result of "7FFFFFFFh" can be obtained in the case of the singular calculation. However, in this configuration, the conventional example 2
In addition to the circuit of FIG. 20, NAN is applied to each of the lower 15 bits of the 31 bits forming the multiplication result.
A correction circuit including a D gate and an inverter is required, and the circuit scale becomes large.
【0030】そこで本実施形態では、特異計算の場合
に、乗算器6から出力される乗算結果を直接補正する代
わりに、ブースデコーダの出力すなわち被乗数に対する
操作信号を修正することにより、乗算器6から出力され
る乗算結果を補正して理想値「7FFFFFFFh」にできるだ
け近い乗算結果を得る、という考え方を導入する。以
下、このような実施形態の詳細について説明する。Therefore, in the present embodiment, in the case of the singular calculation, instead of directly correcting the multiplication result output from the multiplier 6, the output of the Booth decoder, that is, the operation signal for the multiplicand is corrected. The concept of correcting the output multiplication result to obtain a multiplication result as close as possible to the ideal value “7FFFFFFFh” is introduced. Hereinafter, details of such an embodiment will be described.
【0031】<実施形態の構成>図1(a)は、本発明
の一実施形態である乗算装置の全体構成を示すブロック
図である。本乗算装置は、被乗数X(xk〜x0から成る
2の補数表示の2進数)と乗数Y(yn〜y0から成る2
の補数表示の2進数)との積P(Pk+n-1〜P0から成る
2の補数表示の2進数)を2次のブースの方法に基づい
て算出するものであって、乗算器6に加えて、図20に
示した従来例2と同様に、特異計算を検出する特異計算
検出器7と、特異計算の場合に被乗数Xの値を修正する
ためのNANDゲート102とインバータ101から成
る被乗数修正回路を備えている。<Structure of Embodiment> FIG. 1A is a block diagram showing the overall structure of a multiplier according to an embodiment of the present invention. This multiplier consists of the multiplicand X (x k ~x 2 binary two's complement of zero) and the multiplier Y (y n ~y 0 2
And a product P (a binary number represented by two's complement consisting of P k + n-1 to P 0 ) with a binary number represented by a complement of the second order, based on a secondary Booth's method. 20, in addition to the singularity calculation detector 7 for detecting the singularity calculation, the NAND gate 102 and the inverter 101 for correcting the value of the multiplicand X in the case of the singularity calculation as in the conventional example 2 shown in FIG. And a multiplicand correction circuit.
【0032】本乗算装置における乗算器6の構成は図1
(b)に示す通りである。この乗算器6は、2次のブー
スの方法に基づく各部分積を生成するための操作信号C
X,C2X,Ccompを作成するブースデコーダ1,2と、
それらの操作信号CX,C2X,Ccompによって指定され
る操作を被乗数Xに対して行うことにより各部分積を生
成する部分積生成部3と、各部分積を加算する部分積加
算部4とから構成されている。ここで、2次のブースの
方法に基づく各部分積は式(3)によって示され、次の通
りである。 (y2j-1+y2j−2y2j+1)22j・X (j=0,1,2,…,
(n-1)/2、nは奇数)The configuration of the multiplier 6 in the present multiplier is shown in FIG.
This is as shown in FIG. The multiplier 6 generates an operation signal C for generating each partial product based on the second-order Booth method.
Booth decoders 1 and 2 that create X, C2X, Ccomp,
It comprises a partial product generating unit 3 for generating each partial product by performing an operation specified by the operation signals CX, C2X, and Ccomp on the multiplicand X, and a partial product adding unit 4 for adding each partial product. Have been. Here, each partial product based on the second-order Booth's method is represented by Expression (3) and is as follows. (Y 2j-1 + y 2j -2y 2j + 1 ) 2 2j · X (j = 0,1,2, ...,
(n-1) / 2, where n is an odd number)
【0033】上記構成の乗算器6におけるブースデコー
ダのうち、j=0に対応する部分積 (y-1+y0−2y1)22j・X=(y0−2y1)22j・X を生成するための操作信号を作成するブースデコーダ
(1段目のブースデコーダ)1は、式(8)〜(10)すなわ
ち CX =y0 C2X =!(y0+!y1) Ccomp=y1 で示される論理動作を行うものであり、図3に示す回路
により実現することができる。しかし本実施形態では、
特異計算検出器7を備え、特異計算の場合には、乗算結
果を補正するために、特異計算検出器7から出力される
検出信号DETBを用いて、1段目のブースデコーダ1
から出力される操作信号CX,C2X,Ccompを修正する
構成となっている。すなわち本実施形態では、1段目の
ブースデコーダ1の構成として、図3に示す構成の代わ
りに図2に示す構成が採用されており、特異計算の場合
(検出信号DETB=0の場合)には、操作信号のうち
CXおよびCcompは次のようになる。 CX=1、 Ccomp=1 …(15)Of the Booth decoders in the multiplier 6 having the above structure, the partial product (y -1 + y 0 -2y 1 ) 2 2j · X = (y 0 -2y 1 ) 2 2j · X corresponding to j = 0 is calculated. 1 (booth decoders of the first stage) booth decoder for creating an operation signal for generating to the formula (8) to (10), that CX = y 0 C2X =! (Y 0 +! Y 1 ) Performs the logical operation represented by Ccomp = y 1 and can be realized by the circuit shown in FIG. However, in this embodiment,
A singular calculation detector 7 is provided. In the case of singular calculation, the booth decoder 1 of the first stage uses the detection signal DETB output from the singular calculation detector 7 to correct the multiplication result.
The operation signals CX, C2X, and Ccomp output from are modified. That is, in the present embodiment, the configuration shown in FIG. 2 is employed instead of the configuration shown in FIG. 3 as the configuration of the booth decoder 1 in the first stage, and in the case of singular calculation (when the detection signal DETB = 0). In the operation signals, CX and Ccomp are as follows. CX = 1, Ccomp = 1 ... (15)
【0034】2段目以降のブースデコーダすなわちj=1,
2,…,(n-1)/2のときの部分積 (y2j-1+y2j−2y2j+1)22j・X に対応するブースデコーダ2は、式(5)〜(7)すなわち CX =yi-1(+)yi C2X =!{(yi-1(+)yi)+!(yi(+)
yi+1)} Ccomp=yi+1 で示される論理動作を行うものであり、図4に示す回路
により実現することができる。ただし、i=2jであ
る。The booth decoders of the second and subsequent stages, that is, j = 1,
The booth decoder 2 corresponding to the partial product (y 2j-1 + y 2j -2y 2j + 1 ) 2 2j · X in the case of 2,..., (N−1) / 2 has the following formulas (5) to (7). CX = y i-1 (+) y i C2X =! {(Y i-1 (+) y i ) +! (Y i (+)
y i + 1 )} Performs the logical operation represented by Ccomp = y i + 1 and can be realized by the circuit shown in FIG. Here, i = 2j.
【0035】部分積生成部3は、式(3)で示される各部
分積 (y2j-1+y2j−2y2j+1)22j・X (j=0,1,2,…,
(n-1)/2、nは奇数) を生成する部分であって、各部分積に対して1個ずつ設
けられており、各部分積生成部3は各ブースデコーダ
1,2と1対1に対応している。各部分積生成部3は、
図5に示すように、各部分積を構成するビットPPm〜
PP0を生成する部分積ビット生成回路5を各部分積の
ビット数だけ設けた構成となっており、対応するブース
デコーダ1,2から供給される操作信号CX,C2X,Cc
ompによって指定される操作を被乗数Xに対して行う。
ここで、操作信号CXは被乗数Xをそのまま出力するか
否かを示す。また、操作信号C2Xは被乗数Xを2倍にす
るか否かを示し、本実施形態ではC2X=1のとき被乗数
Xを1ビットだけ左方向にシフトさせることにより被乗
数Xを2倍にする。操作信号Ccompは被乗数Xの正負を
反転させるか否か、すなわち2の補数を求めるか否かを
示す。被乗数Xの2の補数は、Xの各ビットを反転させ
て最下位ビットに「1」を加えることにより得られる
が、この「1」の加算操作を部分積生成部3で行うとハ
ードウェア量の増大を招くことになる。そこで本実施形
態では、操作信号Ccomp=1のとき、各部分積生成部3
が被乗数Xの各ビットを反転させ、部分積加算部4が
「1」の加算操作を行うことにより、被乗数Xの2の補
数を求める。The partial product generating section 3 calculates each partial product (y 2j-1 + y 2j -2y 2j + 1 ) 2 2j × X (j = 0,1,2,...,
(n-1) / 2, where n is an odd number), and one portion is provided for each partial product. Corresponds to 1. Each partial product generation unit 3
As shown in FIG. 5, bits PP m to PP
The configuration is such that the partial product bit generation circuits 5 for generating PP 0 are provided by the number of bits of each partial product, and the operation signals CX, C2X, Cc supplied from the corresponding booth decoders 1 and 2 are provided.
The operation specified by omp is performed on the multiplicand X.
Here, the operation signal CX indicates whether or not to output the multiplicand X as it is. Further, the operation signal C2X indicates whether to double the multiplicand X. In the present embodiment, when C2X = 1, the multiplicand X is doubled by shifting the multiplicand X leftward by one bit. The operation signal Ccomp indicates whether to reverse the sign of the multiplicand X, that is, whether to obtain a two's complement. The two's complement of the multiplicand X is obtained by inverting each bit of X and adding “1” to the least significant bit. However, when the addition operation of this “1” is performed by the partial product generation unit 3, the hardware amount Will be increased. Therefore, in the present embodiment, when the operation signal Ccomp = 1, each partial product generation unit 3
Inverts each bit of the multiplicand X, and the partial product adder 4 performs an addition operation of “1”, thereby obtaining a two's complement of the multiplicand X.
【0036】図7は、上記のような操作を指定する操作
信号CX,C2X,Ccompを用いて部分積を生成する部分
積生成部3の動作を示す真理値表を示しており、この真
理値表における"PPi"は部分積生成部3を構成する各
部分積ビット生成回路5の出力を表している。この真理
値表によって示される動作を行う部分積ビット生成回路
5は、図6に示す回路により実現することができる。FIG. 7 is a truth table showing the operation of the partial product generation unit 3 for generating a partial product using the operation signals CX, C2X, and Ccomp designating the above operations. “PP i ” in the table represents an output of each partial product bit generation circuit 5 constituting the partial product generation unit 3. The partial product bit generation circuit 5 that performs the operation indicated by the truth table can be realized by the circuit shown in FIG.
【0037】部分積加算部4は、各部分積生成部3で生
成された部分積を加算することにより、被乗数Xと乗数
Yとの積PをビットPk+n-1〜P0から成る2の補数表示
の2進数として生成する。このとき、下位側の部分積に
ついて符号拡張せずにそのまま加算すると正しい積Pを
得ることができないが、符号拡張をするとハードウェア
量が増大する。そこで部分積加算部4では、既述のよう
に、部分積の最上位ビット(符号ビット)を反転させ、
所定のビット位置に「1」を加えることにより(図15
参照)、符号拡張をせずに部分積の加算を行って正しい
積Pを得るようにしている。The partial product adder 4 adds the partial products generated by the respective partial product generators 3 to form a product P of the multiplicand X and the multiplier Y from bits P k + n−1 to P 0. Generated as a two's complement binary number. At this time, if the addition is performed without sign extension for the lower partial product, a correct product P cannot be obtained, but the sign extension increases the amount of hardware. Therefore, the partial product adder 4 inverts the most significant bit (sign bit) of the partial product as described above,
By adding “1” to a predetermined bit position (FIG. 15)
), And correct product P is obtained by performing addition of partial products without sign extension.
【0038】<実施形態の動作>以下、本実施形態の乗
算装置の動作を説明する。本乗算装置では、まず、式
(3)によって示される各部分積に対応するブースデコー
ダ1,2が、乗数Yを構成するビット列のうちその部分
積に対応する複数ビットy2j-1,y2j,y2j+1を用いて
操作信号CX,C2X,Ccompを生成する。各ブースデコ
ーダ1,2で生成されるこれらの操作信号CX,C2X,
Ccompは、対応する部分積生成部3に入力され、各部分
積生成回路3は、入力された操作信号CX,C2X,Ccom
pによって指定される操作を被乗数Xに対して行う。こ
のようにして各部分積生成回路3が並列に動作し、これ
により、式(3)で示される各部分積が独立に生成され
る。生成された各部分積は部分積加算部4において加算
され、これにより被乗数Xと乗数Yとの積Pが得られ
る。このような2次のブースの方法に基づく乗算装置に
よれば、乗数のビット毎に被乗数との部分積を生成する
方法に比べ、部分積加算部4で加算される部分積の数が
約半分となるため(式(2)参照)、乗算を高速に実行す
ることができる。<Operation of Embodiment> The operation of the multiplication device of this embodiment will be described below. In this multiplier, first, the equation
Booth decoders 1 and 2 corresponding to the respective partial products indicated by (3) use a plurality of bits y 2j−1 , y 2j and y 2j + 1 corresponding to the partial products in the bit string forming the multiplier Y. Operation signals CX, C2X, and Ccomp are generated. These operation signals CX, C2X,
Ccomp is input to the corresponding partial product generation unit 3, and each of the partial product generation circuits 3 receives the input operation signals CX, C2X, and Ccom.
The operation specified by p is performed on the multiplicand X. In this way, the respective partial product generation circuits 3 operate in parallel, whereby the respective partial products represented by Expression (3) are independently generated. Each of the generated partial products is added in the partial product adder 4, whereby a product P of the multiplicand X and the multiplier Y is obtained. According to the multiplication apparatus based on the secondary Booth's method, the number of partial products added by the partial product adding unit 4 is about half as compared with the method of generating a partial product with the multiplicand for each bit of the multiplier. (See equation (2)), so that the multiplication can be executed at high speed.
【0039】次に、被乗数Xと乗数Yとの組合せが特異
計算の場合における本乗算装置の動作を説明する。この
場合、被乗数Xと乗数Yとから特異計算検出部7におい
て特異計算が検出され、検出信号DETBとして「0」
が出力される。この検出信号DETBにより、被乗数X
の最下位ビットx0が強制的に「1」とされて乗算器6
に入力される(図1(a)参照)。被乗数Xの他のビッ
トxk〜x1および乗数Yはそのまま乗算器6に入力され
る。Next, the operation of the present multiplication apparatus when the combination of the multiplicand X and the multiplier Y is a singular calculation will be described. In this case, a singular calculation is detected by the singular calculation detection unit 7 from the multiplicand X and the multiplier Y, and the detection signal DETB is set to “0”.
Is output. By this detection signal DETB, the multiplicand X
Of the least significant bit x 0 of the multiplier 6
(See FIG. 1A). The other bits x k to x 1 of the multiplicand X and the multiplier Y are directly input to the multiplier 6.
【0040】また、上記の検出信号DETBは、1段目
のブースデコーダ1に入力され、ブースエンコーダ1の
出力の修正にも使用される。すなわち、検出信号DET
B(=0)により、1段目のブースデコーダ1から出力
される操作信号CX、Ccompは、 CX=1、 Ccomp=1 …(15) となり、特異計算の場合はy0=y1=0であるため、操
作信号C2xは C2X=0 となる(図2参照)。ここで、図7に示す"状態"の表記
法を用いてブースデコーダ1の出力を表現するものとす
ると、1段目のブースデコーダ1の出力は「−X」とな
る(以下、この表記法によってブースデコーダの出力を
表現するものとする)。2段目以降のブースデコーダ2
から出力される操作信号は特異計算でない場合と同様で
あって、最終段以外のブースデコーダ2の出力は
「0」、最終段のブースデコーダ2の出力は「−2X」
となる。The detection signal DETB is input to the booth decoder 1 at the first stage, and is also used for correcting the output of the booth encoder 1. That is, the detection signal DET
The B (= 0), the operation signal CX outputted from Booth decoder 1 of the first stage, Ccomp is, CX = 1, Ccomp = 1 ... (15) , whereas for specific computation y 0 = y 1 = 0 Therefore, the operation signal C2x becomes C2X = 0 (see FIG. 2). Here, assuming that the output of the booth decoder 1 is expressed using the notation of “state” shown in FIG. 7, the output of the booth decoder 1 in the first stage is “−X” (hereinafter, this notation is used). Represents the output of the Booth decoder). Booth decoder 2 in the second and subsequent stages
Is the same as in the case of non-singular calculation, the output of the booth decoder 2 other than the last stage is “0”, and the output of the last stage booth decoder 2 is “−2X”.
Becomes
【0041】以上のようなブースデコーダ1,2の出力
に基づき、最下位ビットx0の修正された被乗数X(図
1参照)を用いて各部分積が生成され、生成された各部
分積を部分積加算部4が加算することにより、特異計算
の場合であっても精度の高い乗算結果が得られる。Based on the outputs of the booth decoders 1 and 2 as described above, each partial product is generated using the corrected multiplicand X (see FIG. 1) of the least significant bit x 0 , and the generated partial products are By the addition performed by the partial product adder 4, a highly accurate multiplication result can be obtained even in the case of singular calculation.
【0042】例えば被乗数Xおよび乗数Yを16ビット
とすると、特異計算の場合、被乗数Xおよび乗数Yは共
に「8000h」であり、被乗数Xについては最下位ビット
が「1」に修正されX=8001hとして、乗数Yについて
はそのまま、乗算器6に入力される。そして、これらの
入力値を用いて、1段目のブースデコーダ1の出力「−
X」に対応する部分積、2段目〜7段目のブースデコー
ダ2の出力「0」に対応する部分積、および、最終段で
ある8段目のブースデコーダ2の出力「−2X」に対応
する部分積がそれぞれ生成され、それらの部分積が加算
される。このとき、下位側の部分積の符号拡張を避ける
ために、部分積の最上位ビット(符号ビット)が反転さ
れ、所定のビット位置に「1」が加えられる(図15、
図16参照)。その結果、部分積の加算は図8に示すよ
うになり、乗算結果(31ビットの積P)として「3FFF
FFFFh」が得られる。ここで、図18に示したように小
数点の位置が符号ビットの右隣である場合、本乗算装置
を利用したDSP等では、乗算結果を32ビットに合わ
せるため、この「3FFFFFFFh」という乗算結果を1ビッ
トだけ左方向にシフトさせる。このとき最下位ビットに
は「0」が入力され、最終的な乗算結果として「7FFFFF
FEh(=+0.9999…)」が得られる。これは、「(−
1)×(−1)」という特異計算において、10進数で
約9桁の演算精度が得られていることを意味する。For example, if the multiplicand X and the multiplier Y are 16 bits, in the case of the singular calculation, the multiplicand X and the multiplier Y are both "8000h", and the least significant bit of the multiplicand X is corrected to "1" and X = 8001h Is input to the multiplier 6 as it is. Then, using these input values, the output “−−” of the booth decoder 1 in the first stage is used.
X ", the partial product corresponding to the output" 0 "of the second to seventh stages of the booth decoder 2, and the output" -2X "of the final stage, the eighth stage booth decoder 2. Corresponding partial products are respectively generated and the partial products are added. At this time, in order to avoid sign extension of the lower partial product, the most significant bit (sign bit) of the partial product is inverted, and “1” is added to a predetermined bit position (FIG. 15,
See FIG. 16). As a result, the addition of the partial products is as shown in FIG. 8, and the multiplication result (31-bit product P) is “3FFF
FFFFh "is obtained. Here, as shown in FIG. 18, when the position of the decimal point is immediately to the right of the sign bit, in a DSP or the like using the present multiplication device, the multiplication result "3FFFFFFFh" Shift left by one bit. At this time, “0” is input to the least significant bit, and “7FFFFF” is output as the final multiplication result.
FEh (= + 0.9999 ...) "is obtained. This is "(-
In the singular calculation of “1) × (−1)”, it means that an arithmetic precision of about 9 digits in a decimal number is obtained.
【0043】ところで上記の特異計算の場合の理想的な
乗算結果は「7FFFFFFFh」であるため、上記構成により
得られる乗算結果「7FFFFFFEh」を理想的なものとする
には最下位ビット「0」を「1」に修正する必要があ
る。そのためには、乗算器6から出力される積Pを左方
向へ1ビットだけシフトさせる際に、特異計算が検出さ
れた場合には最下位ビットに「0」の代わりに「1」を
入力する、という構成を採用すればよい。このような構
成は簡単な回路で実現することができる。Since the ideal multiplication result in the above singular calculation is “7FFFFFFFh”, the least significant bit “0” must be set to make the multiplication result “7FFFFFFEh” obtained by the above configuration ideal. It needs to be modified to "1". For this purpose, when shifting the product P output from the multiplier 6 to the left by one bit, if a singular calculation is detected, “1” is input to the least significant bit instead of “0”. May be adopted. Such a configuration can be realized with a simple circuit.
【0044】<実施形態の効果>上記実施形態では、特
異計算の場合における乗算結果の補正に使用されるハー
ドウェアは、特異計算検出器7、被乗数Xの最下位ビッ
トを修正する被乗数修正回路(インバータ101、NA
NDゲート102)、および1段目のブースデコーダ1
の出力結果を修正する回路(図2参照)であり、これら
により、特異計算の場合に図8に示すような乗算が行わ
れる。したがって上記実施形態によれば、僅かなハード
ウェアの追加によって、特異計算の場合であっても精度
の高い乗算結果が得られる。<Effects of the Embodiment> In the above embodiment, the hardware used for correcting the multiplication result in the case of the singular calculation includes the singular calculation detector 7 and the multiplicand correcting circuit (correcting the least significant bit of the multiplicand X). Inverter 101, NA
ND gate 102) and first stage booth decoder 1
(See FIG. 2), which performs the multiplication as shown in FIG. 8 in the case of singular calculation. Therefore, according to the above-described embodiment, a highly accurate multiplication result can be obtained even with a singular calculation by adding a small amount of hardware.
【0045】なお、上記説明において16ビット×16
ビットの乗算を例に挙げたが、現状では32ビット×3
2ビットの乗算も珍しくなくなってきた。このように演
算のビット数が増えると従来例1(図19)等では補正
のためのハードウェア量がそれだけ増大するが、上記実
施形態ではこのような増大は見られず、演算ビット数が
増えるにしたがって、上記実施形態はより有利となる。In the above description, 16 bits × 16
Although multiplication of bits is taken as an example, at present 32 bits × 3
Two-bit multiplication has become unusual. When the number of calculation bits increases in this manner, the amount of hardware for correction increases in the conventional example 1 (FIG. 19) and the like, but such an increase is not seen in the above embodiment, and the number of calculation bits increases. Accordingly, the above embodiment becomes more advantageous.
【0046】<変形例>上記実施形態では、特異計算の
場合において出力の修正されるブースデコーダは1段目
のみであるが、本発明はこれに限定されるものではな
く、特異計算の場合に理想的な乗算結果またはそれに近
い乗算結果が得られるように他の段のブースデコーダの
出力を修正してもよい(修正対象のブースエンコーダは
複数であってもよい)。<Modification> In the above embodiment, the Booth decoder whose output is corrected in the case of the singular calculation is only the first stage. However, the present invention is not limited to this. The output of the booth decoder in another stage may be modified so that an ideal multiplication result or a multiplication result close thereto is obtained (there may be a plurality of booth encoders to be modified).
【0047】また上記実施形態は、ブースデコーダおよ
び部分積生成部を複数個設け、各部分積を並列に生成す
る構成となっているが、ブースの方法に基づく部分積を
逐次的に生成する構成の乗算装置も考えられる。このよ
うな逐次型の乗算装置においても、上記実施形態と同様
にして特異計算の場合にブースデコーダの出力を修正す
ることにより乗算結果を補正することが可能であり、上
記実施形態と同様の効果が得られる。In the above embodiment, a plurality of booth decoders and partial product generators are provided, and each partial product is generated in parallel. However, a configuration in which partial products based on the Booth method are sequentially generated. Is also conceivable. Even in such a sequential multiplication device, the multiplication result can be corrected by correcting the output of the Booth decoder in the case of the singular calculation in the same manner as in the above embodiment, and the same effect as in the above embodiment can be obtained. Is obtained.
【0048】[0048]
【発明の効果】本発明によれば、特異計算の場合におい
て、乗算結果のビット毎に補正が行われていた従来の乗
算装置とは異なり、ブースデコーダから出力される操作
信号を修正することにより乗算結果が補正されるため、
補正手段を少量のハードウェアで実現することができる
(第1の乗算装置参照)。このとき、操作信号を修正す
るブースデコーダおよび操作信号の修正内容を適切に選
択することにより、例えば1段目のブースデコーダの操
作信号の値を被乗数の補数を求めることを規定する値に
修正することにより、特異計算の場合における補正後の
乗算結果の精度を高めることができる(第2の乗算装置
参照)。また、被乗数修正手段を更に設けると、少量の
ハードウェアの追加で特異計算の場合における乗算結果
の補正の自由度が大きくなり、これにより精度の高い乗
算結果が容易に得られる(第3の乗算装置参照)。例え
ば、特異計算の場合において、1段目のブースデコーダ
の操作信号の値を被乗数の補数を求めることを規定する
値に修正すると共に、被乗数修正手段により被乗数の最
下位ビットを「1」に修正すると、乗算結果の下位側の
ビットまで「1」となるため、理想的な乗算結果または
それに近い乗算結果が得られる(第4の乗算装置参
照)。According to the present invention, in the case of singular calculation, unlike the conventional multiplication device in which correction is performed for each bit of the multiplication result, the operation signal output from the Booth decoder is modified. Since the multiplication result is corrected,
The correction means can be realized with a small amount of hardware (see the first multiplier). At this time, by appropriately selecting the booth decoder for correcting the operation signal and the correction content of the operation signal, for example, the value of the operation signal of the first-stage booth decoder is corrected to a value that specifies the complement of the multiplicand. Thereby, the accuracy of the corrected multiplication result in the case of the singular calculation can be improved (see the second multiplication device). Further, when the multiplicand correcting means is further provided, the degree of freedom of correcting the multiplication result in the case of the singular calculation is increased by adding a small amount of hardware, whereby a highly accurate multiplication result can be easily obtained (third multiplication). Device). For example, in the case of the singular calculation, the value of the operation signal of the first-stage Booth decoder is corrected to a value that determines the complement of the multiplicand, and the least significant bit of the multiplicand is corrected to “1” by the multiplicand correcting unit. Then, since the lower bits of the multiplication result become “1”, an ideal multiplication result or a multiplication result close to the ideal multiplication result is obtained (see the fourth multiplication device).
【0049】なお、既述のようにアドレス演算では乗算
を厳密に行う必要があり、例えば演算値がそのままプロ
グラムRAMのアドレスとなるテーブルルックアップ方
式の場合において、特異計算の乗算結果に対する従来の
丸め操作を伴う補正によっては、正しいデータを読み込
めないことがあった。しかし、このようなアドレス演算
において本発明を適用すれば、特異計算の場合にも精度
の高い乗算結果が得られるため、このような問題が解消
され、演算結果であるアドレスにより常に正しいデータ
を読み込めるようになる。As described above, in the address operation, the multiplication must be strictly performed. For example, in the case of the table lookup system in which the operation value is the address of the program RAM as it is, the conventional rounding of the multiplication result of the singular calculation is performed. In some cases, correct data could not be read depending on the correction that involved the operation. However, if the present invention is applied to such an address operation, a highly accurate multiplication result can be obtained even in the case of a singular calculation. Therefore, such a problem is solved, and correct data can always be read by the address which is the operation result. Become like
【図1】 本発明の一実施形態である乗算装置の構成を
示すブロック図。FIG. 1 is a block diagram showing a configuration of a multiplication device according to an embodiment of the present invention.
【図2】 上記実施形態の乗算装置における1段目のブ
ースデコーダの構成を示す回路図。FIG. 2 is a circuit diagram showing a configuration of a first-stage Booth decoder in the multiplication device of the embodiment.
【図3】 従来の乗算装置における1段目のブースデコ
ーダの構成を示す回路図。FIG. 3 is a circuit diagram showing a configuration of a first-stage booth decoder in a conventional multiplication device.
【図4】 上記実施形態の乗算装置における2段目以降
のブースデコーダの構成を示す回路図。FIG. 4 is a circuit diagram showing a configuration of a booth decoder of the second and subsequent stages in the multiplication device of the embodiment.
【図5】 上記実施形態の乗算装置における部分積生成
部の構成を示すブロック図。FIG. 5 is a block diagram showing a configuration of a partial product generation unit in the multiplication device of the embodiment.
【図6】 部分積生成部における部分積ビット生成回路
の構成を示す回路図。FIG. 6 is a circuit diagram showing a configuration of a partial product bit generation circuit in a partial product generation unit.
【図7】 部分積生成部の動作を示す真理値表を示す
図。FIG. 7 is a diagram showing a truth table showing an operation of the partial product generation unit.
【図8】 上記実施形態の乗算装置における特異計算の
場合の乗算過程を示す図。FIG. 8 is a diagram showing a multiplication process in the case of a singular calculation in the multiplication device of the embodiment.
【図9】 従来の一般的な乗算方法による乗算過程を示
す図。FIG. 9 is a diagram showing a multiplication process by a conventional general multiplication method.
【図10】 2次のブースの方法による乗算過程を示す
図。FIG. 10 is a diagram showing a multiplication process by a secondary booth method.
【図11】 2次のブースの方法に基づく乗算装置にお
けるブースデコーダの出力を定義する真理値表を示す
図。FIG. 11 is a diagram showing a truth table defining the output of the Booth decoder in the multiplier based on the second-order Booth method.
【図12】 2次のブースの方法に基づく乗算装置にお
ける1段目のブースデコーダの出力を定義する真理値表
を示す図。FIG. 12 is a diagram showing a truth table defining the output of the first-stage Booth decoder in the multiplier based on the secondary Booth method.
【図13】 部分積の加算の際における符号拡張を示す
図。FIG. 13 is a diagram illustrating sign extension when adding partial products.
【図14】 符号拡張をせずに部分積の加算を行う方法
を説明するための図。FIG. 14 is a diagram for explaining a method of performing addition of partial products without performing sign extension.
【図15】 符号拡張をせずに部分積の加算を行う方法
を示す図。FIG. 15 is a diagram showing a method of performing addition of partial products without sign extension.
【図16】 16ビットの乗算において符号拡張をせず
に部分積の加算を行う方法を示す図。FIG. 16 is a diagram showing a method of performing addition of partial products without sign extension in 16-bit multiplication.
【図17】 特異計算の場合において補正を行わないと
きの乗算過程を示す図。FIG. 17 is a diagram showing a multiplication process when no correction is performed in the case of singular calculation.
【図18】 2の補数表示の16ビットの2進数におけ
る小数点位置の設定を示す図。FIG. 18 is a view showing a setting of a decimal point position in a 16-bit binary number represented by two's complement.
【図19】 補正手段を有する乗算装置の従来例(従来
例1)を示す図。FIG. 19 is a diagram showing a conventional example (conventional example 1) of a multiplication device having a correction unit.
【図20】 補正手段を有する乗算装置の他の従来例
(従来例2)を示す図。FIG. 20 is a diagram showing another conventional example (conventional example 2) of a multiplication device having a correction unit.
【図21】 従来例2の乗算装置を改良した乗算装置の
構成を示す図。FIG. 21 is a diagram showing a configuration of a multiplication device obtained by improving the multiplication device of Conventional Example 2.
【図22】 従来例2の乗算装置における乗算過程を示
す図。FIG. 22 is a diagram showing a multiplication process in the multiplication device of the second conventional example.
【図23】 DSPにおいて積和演算を高速に実行する
ための構成を示すブロック図。FIG. 23 is a block diagram showing a configuration for executing a product-sum operation at high speed in a DSP.
1 …ブースデコーダ(1段目) 2 …ブース
デコーダ(2段目以降) 3 …部分積生成部 4 …部分積
加算部 6 …乗算器 7 …特異計
算検出部 X …被乗数 Y …乗数 P …積 DETB …
検出信号 CX,C2X,Ccomp …操作信号DESCRIPTION OF SYMBOLS 1 ... Booth decoder (1st stage) 2 ... Booth decoder (2nd stage and after) 3 ... Partial product generation part 4 ... Partial product addition part 6 ... Multiplier 7 ... Singular calculation detection part X ... Multiplicand Y ... Multiplier P ... Product DETB…
Detection signal CX, C2X, Ccomp ... Operation signal
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−287220(JP,A) 特開 平7−93134(JP,A) 特開 平8−234965(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 7/52 G06F 7/38 ────────────────────────────────────────────────── ─── Continuation of the front page (56) References JP-A-4-287220 (JP, A) JP-A-7-93134 (JP, A) JP-A 8-234965 (JP, A) (58) Field (Int.Cl. 7 , DB name) G06F 7/52 G06F 7/38
Claims (4)
算を行って積を算出する乗算装置であって、乗数を構成
するビット列の一部分である複数ビットの値を入力して
被乗数に対する操作を規定する操作信号を出力するブー
スデコーダと、前記操作信号によって規定される操作を
被乗数に対して行うことにより部分積を生成する部分積
生成手段と、乗数を構成するビット列の各部分である各
複数ビットの値をブースデコーダに入力することによっ
て部分積生成手段から出力される各部分積を累積加算す
ることにより乗算結果を得る部分積加算手段と、該乗算
結果として正しい積が得られない特異計算の場合である
ことを乗数および被乗数に基づいて検出する特異計算検
出手段と、特異計算の場合であることが検出されると該
乗算結果を補正する補正手段とを備える乗算装置におい
て、 前記補正手段は、該乗算結果を補正するために、前記ブ
ースデコーダから出力される操作信号の値を修正するブ
ースデコーダ出力修正手段を有する、ことを特徴とする
乗算装置。1. A multiplication apparatus for multiplying a signed binary number by a Booth's method to calculate a product, wherein a multi-bit value which is a part of a bit sequence forming a multiplier is input to define an operation on a multiplicand. A booth decoder that outputs an operation signal to perform the operation, a partial product generation unit that generates a partial product by performing an operation defined by the operation signal on the multiplicand, and a plurality of bits each of which is a part of a bit string that forms the multiplier. Is input to the Booth decoder to accumulate the partial products output from the partial product generation means to obtain a multiplication result, and a singular calculation for which a correct product is not obtained as the multiplication result. A singular calculation detecting means for detecting the case based on the multiplier and the multiplicand; and correcting the multiplication result when the singular calculation is detected. A multiplication device comprising a correction means, wherein the correction means has a Booth decoder output correction means for correcting the value of the operation signal output from the Booth decoder in order to correct the multiplication result. Multiplication device.
正するために、前記ブースデコーダにより前記乗数の最
下位側の複数ビットに対して出力される前記操作信号の
値を、前記被乗数の補数を求めることを規定する値に修
正する、ことを特徴とする乗算装置。2. The multiplication apparatus according to claim 1, wherein the Booth decoder output correction means outputs the plurality of least significant bits of the multiplier by the Booth decoder in order to correct the multiplication result. Multiplying the value of the operation signal to a value that specifies obtaining a complement of the multiplicand.
置において、 前記補正手段は、前記乗算結果を補正するために前記被
乗数を修正する被乗数修正手段を更に有する、ことを特
徴とする乗算装置。3. The multiplication device according to claim 1, wherein said correction means further includes a multiplicand correction means for correcting said multiplicand in order to correct said multiplication result. apparatus.
前記被乗数の最下位ビットを「1」に修正する、ことを
特徴とする乗算装置。4. The multiplication device according to claim 3, wherein the multiplicand correcting means corrects the least significant bit of the multiplicand to “1” in order to correct the multiplication result. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP30909396A JP3315042B2 (en) | 1996-11-20 | 1996-11-20 | Multiplier |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP30909396A JP3315042B2 (en) | 1996-11-20 | 1996-11-20 | Multiplier |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10149277A JPH10149277A (en) | 1998-06-02 |
JP3315042B2 true JP3315042B2 (en) | 2002-08-19 |
Family
ID=17988809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP30909396A Expired - Fee Related JP3315042B2 (en) | 1996-11-20 | 1996-11-20 | Multiplier |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3315042B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7181484B2 (en) * | 2001-02-21 | 2007-02-20 | Mips Technologies, Inc. | Extended-precision accumulation of multiplier output |
US8082287B2 (en) * | 2006-01-20 | 2011-12-20 | Qualcomm Incorporated | Pre-saturating fixed-point multiplier |
JP6350111B2 (en) * | 2014-08-22 | 2018-07-04 | 富士通株式会社 | Multiplier circuit and multiplication method thereof |
-
1996
- 1996-11-20 JP JP30909396A patent/JP3315042B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10149277A (en) | 1998-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH1195981A (en) | Multiplication circuit | |
JP2002108606A (en) | Sticky bit generating circuit and multiplier | |
JPH0612229A (en) | Multiplication and accumulation circuit | |
JP5640081B2 (en) | Integer and multiply-add operations with saturation | |
JP2006227939A (en) | Arithmetic unit | |
JPH0773227A (en) | Automatic designing method for logical circuit, system and device therefor and multiplier | |
EP1137980A1 (en) | Arithmetic operations in a data processing system | |
JP2502836B2 (en) | Preprocessing device for division circuit | |
JP3315042B2 (en) | Multiplier | |
JP2511527B2 (en) | Floating point arithmetic unit | |
JPH07234778A (en) | Arithmetic circuit | |
JPH04355827A (en) | Square root extracting operation device | |
JPH09222991A (en) | Adding method and adder | |
JPH0370416B2 (en) | ||
JP2991788B2 (en) | Decoder | |
JP2578482B2 (en) | Floating point arithmetic unit | |
JP2705162B2 (en) | Arithmetic processing unit | |
JP7119543B2 (en) | Adder/subtractor circuit and method of controlling the adder/subtractor circuit | |
JP3201097B2 (en) | Multiplication prescription method in multiplier | |
JP2608090B2 (en) | High radix non-restoring divider | |
JP3522167B2 (en) | Arithmetic processing circuit and arithmetic processing method | |
JP3659408B2 (en) | Data arithmetic processing apparatus and data arithmetic processing program | |
JP2914813B2 (en) | Error correction decoding device | |
JPH02181823A (en) | Dividing device | |
KR100623604B1 (en) | Data processing apparatus and data processing method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080607 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090607 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090607 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100607 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110607 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110607 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120607 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130607 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |