JPH0231226A - 浮動小数点乗算回路 - Google Patents

浮動小数点乗算回路

Info

Publication number
JPH0231226A
JPH0231226A JP63180340A JP18034088A JPH0231226A JP H0231226 A JPH0231226 A JP H0231226A JP 63180340 A JP63180340 A JP 63180340A JP 18034088 A JP18034088 A JP 18034088A JP H0231226 A JPH0231226 A JP H0231226A
Authority
JP
Japan
Prior art keywords
carry
adder
addition
product
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP63180340A
Other languages
English (en)
Other versions
JPH0673103B2 (ja
Inventor
Kunihiko Sakata
邦彦 坂田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP63180340A priority Critical patent/JPH0673103B2/ja
Publication of JPH0231226A publication Critical patent/JPH0231226A/ja
Publication of JPH0673103B2 publication Critical patent/JPH0673103B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、浮動小数点数を処理する計算機に好適な浮
動小数点乗算回路に関する。
(従来の技術) 浮動小数点数の乗算を倍数の加算により処理する方式で
は、仮数部の処理は従来は第3図の回路を用いて行われ
ていた。即ち第3図の構成においては、入力データX、
Y(の仮数部)を乗算して積(仮数部11り Zを得る
場合に、まず倍数発生回路11によりYによって選択さ
れるXの倍数が複数個発生される。このXの倍数の選択
は、一般ニXを1ビツトずつ左シフトした値を人力デー
タYのビットの重みに従って行われるため、この選択さ
れるXの倍数はYのビット幅分の個数だけ発生する。こ
れらの倍数を全て加算することによって積Zが得られる
が、1個ずつの倍数をキャリールックアへラドアダ−(
以下、CLAと称する)で加算していくのでは1個の倍
数加算毎にキャリーの伝播が上位ビットまであるので遅
延時間が大きくなりすぎる。そのため、第3図に示すよ
うにキャリー保存方式のキャリーセーブアダー(以下、
C5Aと称する) 12が用いられる。
C5Al2においては、第4図の(PAIPA2の2ビ
ツトから成る)PA、  (FBI。
PB2の2ビツトから成る)PB、(PCI 。
PC2の2ビツトから成る)PCの3人力の2ビツトの
例に示すように、アダー12−1のキャリーCは同じ段
の上位のアダー12−2のキャリー人力CIに伝播して
いくのではなく、次段のアダー12−3゜12−4のう
ちの上位のアダー12−4のキャリー人力となる。この
ため、加算する人力の個数−1個のアダーを通ることに
より、2個の部分積、即ちPA。
PB並びにPCのキャリー伝播のない加算結果であるP
Dと保存されたキャリー群であるPEを得ることができ
る。この2個の部分積を第3図に示すCLA(#1)1
3により加算することにより積が得られる。
さて、CLA(#1)13で生成される積は、(データ
Xのビット幅)+(データYのビット幅)のビット幅(
通常X、Yは同一ビット幅であることから、人力データ
の2倍長のビット幅)を持つ。
しかし、浮動小数点数の乗算の場合、結果のビット幅も
人力のビット幅と同じにする必要がある。
そこで、第5図に示すようにCLA (#1)Hの出力
結果である積14のうち、浮動小数点数の積として必要
なビット数分のデータ15を上位から取出し、このデー
タ15の次の下位ビット16をCLA(#2)17のキ
ャリー人力とすることによりO捨1人(即ち丸め動作)
を行い、入力データX、  Yに対する最終的な乗算結
果(積)Zを求める。
(発明が解決しようとする課題) 上記したように従来の浮動小数点乗算回路では、C3A
を使用してキャリーの伝播を少なくし、遅延時間を少な
くしようとしている。しかし、積を求めるためにCLA
 (#1)によりキャリーの伝播を行った後、丸めを次
の段のCLA (#2)によって行っているため、二重
にキャリーの伝播が発生し、lf、動小数点乗算の仮数
部処理の高速化が十分に図れないという問題があった。
したがってこの発明は、キャリーの伝播が二重に発生゛
することが防止でき、もって浮動小数点乗算の仮数部処
理の高速化が図れるようにすることを解決すべき課題と
する。
[発明の構成] (課題を解決するための手段) この発明は、2つの乗算対象浮動小数点数の仮数部を人
力してi(数個の倍数を発生し、この複数個の倍数を対
象にキャリー伝播のない加算を行ってその加算結果であ
る第1の部分積並びに保存されたキャリー群である第2
の部分積を求め、この第1 aびに第2の部分積をもと
に仮数部の積を生成する浮動小数点乗算回路に、上記第
14及びに第2の部分積の下位部分のキャリー伝播のあ
る加算を行う第1加算器と、第14及びに第2の部分積
の上位部分のキャリー伝播のない加算を行う第2加算器
と、この第2加算器の加算結果並びに保存されたキャリ
ー群および上記第1加算器の加算によって生成される上
位部分へのキャリー並びに丸めビットを加算して必要な
ビット数の仮数部の積を生成する第3加算器とを設けた
ことを特徴とする。
(作用) 上記の構成によれば、第2並びに第2の部分積がそれぞ
れ上位部分とド位部分に二重され、下位部分については
キャリー伝播のある第1加算器で加算が行われ、上位部
分についてはキャリー伝播のない第2加算器で加算が行
われる。そして、第2加算器の加算結果並びに保存され
たキャリー群および第1加算器の加算によって生成され
る一上位部分へのキャリーJuびに丸めビットが第3加
算器で加算され、仮数部積の生成と丸めとが同時に行わ
れる。明らかなように、以上の第14及びに第2の部分
積の加算に関し、上位部分についてはキャリー伝播は発
生せず、したがって浮動小数点乗算の仮数部処理速度が
向上する。
(実施例) 第1図はこの発明の一実施例に係る浮動小数点乗算回路
のブロック構成を示す。同図において、21は浮動小数
点数で表現される2つの乗算対象入力データ(の仮数部
)X、Yをもとに複数個の倍数(部分積の群)を生成す
る(第3図の倍数発生回路11に対応する)倍数発生回
路、22は倍数発生回路21で生成された複数個の倍数
を高速で加算して2つの部分積23.24(ここでは4
ビツト)を生成するキャリー伝播のないキャリー保存方
式の加算器、即ち(第3図のC3A12に対応する)C
3A (キャリーセーブアダー)である。25はC5A
22で生成された2つの部分積23.24の上位半分を
加算して上位半分へのキャリー26と丸めビット27を
生成するキャリー伝播のある加算器、即ちCLA(キャ
リールックアへラドアダー)、28はC5A22で生成
された2つの部分積23.24の上位半分を加算してビ
ット位置の1ビツトずれた2つの部分積29.30を生
成するC3Aである。この例において、部分積29は部
分積23.24の上位半分のキャリー伝播のない加算結
果を示し、部分積30はこの加算時の各ビット位置から
の(伝播されない)保存されたキャリー出力ビットの群
を示す。
31はC3A28で生成された2つの部分積29.30
とCLA25からのキャリー26並びに丸めビット27
とを加算して浮動小数点数の仮数部tI2Zを生成する
CLAである。
次に、第1図の構成の動作を説明する。
まず倍数発生回路21は、X、Y2個の人力データの仮
数部が入力されると、人力データYによって選択される
Xの倍数(部分積)を次数個発生する。倍数発生回路2
1で発生された?jl数個の倍数はC5A22に人力さ
れる。C5A22は、倍数発生回路21からの複数個の
倍数をもとに、人力データX。
Yの2倍のビット幅を持つ2つの部分積23.24を発
生する。部分子124は複数個の倍数のキャリー伝播の
ない加算結果であり、部分子a23はこのキャリー伝播
のない加算において保存されたキャリー群である。ここ
までの動作は、第3図に示した従来の浮動小数点乗算回
路における倍数発生回路11およびC3A12の動作と
変わらない。
C5A22によって2つの部分積23.24が生成され
ると、この部分積23.24を加算して積を生成し、丸
め動作を行うのが一般的である。しかし、ビット幅2倍
長の積を生成した後で丸め動作を実行するのでは、キャ
リーの伝播が一旦最上位まで行われた後で、丸め動作時
に再度キャリーの伝播が最上位まで行われるので、効率
が良くない。そこで、この実施例では、CLA25によ
って部分積23.24の下位十分の加算を行い、C5A
28とCLA31の組合わせにより、部分積23.24
の上位半分の加算と丸め動作を同時に実行することによ
り、浮動小数点数の仮数部績Zを生成するようにしてい
る。
この加算の動作について、仮数部のビット幅が2ビツト
の場合の例を示した第2図を第1図と併用して説明する
まず第1図に示すC5A22からはビット幅が人力デー
タX、Y(仮数部)の2倍となった2つの部分積(ここ
では4ビツト) 23.24が出力される。
この部分積23.24のそれぞれ下位半分(下位2ビツ
ト)はCLA25に入力される。このCLA25は、2
ビツト分の全加算器で構成される。この例では、入力デ
ータが2ビツト長しかないため、リップルキャリーでキ
ャリーが接続されているが、ビット長が長い場合にはル
ックアヘッドキャリ一方式が一般には適用される。CL
A25は、上記部分積23゜24の各下位2ビツトの加
算を行い、ビット幅2倍長の積の下位半分と上位へのキ
ャリー26を生成する。このうち、積の仮数部の生成に
必要とされるのは、1ユ位へのキヤIJ−26と、積の
下位半分のうちの最上位ビット(MSB)である丸めビ
ット27であり、他は不要となる。
一方、上記部分積23.24のそれぞれ上位半分(上位
2ビツト)はC3A2gに入力される。
C3A2gは、上記したCLA25における部分積23
、24の下位2ビツトの加算と並行して、部分積23、
24の上位2ビツトの加算を行う。このC3A28にお
いては、キャリー伝播がな(、またCLA25からの(
下位2ビツトの加算に伴う)キャリーの伝播もないため
、CLA25の加算(下位2ビットの加算)より先に加
算が終了し、(キャリー伝播のない)1−位2ビットの
加算結果である部分積29と、保存されたキャリー1ビ
ツト(一般にビット長が「1の場合には、キャリービッ
トはn−tビット)である部分積30が生成される。こ
こで、積は倍長を越えることはないため、最上位ビット
からのキャリー出力はあり得ない。即ち部分積3oは部
分積29より1ビツト少ない。
CSA2gで生成された部分積29.30はCLA31
に入力される。このCLA31には、CLA25で生成
されるキャリー26および丸めビット27も入力される
。CLA31は、C5A28からの部分積29(即ち部
分積23.24の上位2ビツトのキャリー伝播なし加算
結果)並びに部分積30(即ち部分積23.24の」1
位2ビットの加算時の伝播されないキャリービット、こ
こでは1ビツト)、およびCLA25からのキャリー2
B・■びに丸めビット27を加算し、即ちX、Yの仮数
部(2ビツト)の積の−上位2ビットの生成と丸めとを
同時に行い、2ビツトの積(仮数部積)Zを得る。
上記したlデ動小数点乗算回路では、入力データの仮数
部が2ビツト構成の場合、キャリーの伝播はCLA25
における2ビツト分と、CLA31における2ビツト分
の計4ビットしか発生しない。これに対して、従来の1
9動小数点乗算回路では、積の生成で4ビツト分、丸め
動作で2ビツト分の計6ビツト分のキャリー伝播がある
。即ちこの実施例によれば、人力データの仮数部が2ビ
ツト構成の場合には、従来に比べて2ビツト分キャリー
の伝播が不要となり、処理の高速化が図れる。
[発明の効果] 以り詳述したようにこの発明によれば、部分積の加算を
上位部分と下位部分とに分けて実行し、上位部分につい
てはキャリー伝播のない加算を行い、その補正のための
加算についてはキャリー伝播のある加算器により丸め動
作と同時に行うようにしたので、上位部分について二重
のキャリー伝播が発生することが防止でき、浮動小数点
乗算の仮数部処理の高速化が図れる。
【図面の簡単な説明】
第1図はこの発明の一実施例に係る浮動小数点乗算回路
のブロック構成図、第2図は第1図の回路のこの発明に
直接関係する部分の具体的構成を示すブロック構成図、
第3図は従来例を示すブロック構成図、第4図は第3図
のC3A12の一部の具体的構成を示す図、第5図は第
3図の構成における丸め動作を説明するための図である
。 21・・・倍数発生回路、22・・・C3A (キャリ
ーセーブアダー) 、23.24.29.30・・・部
分積、25・・・CLA(キャリールックアヘッドアダ
ー、第1加W2W)  28・・・キャリー 27・・
・丸めビット、28・・・C5A (第2加算器)  
31・・・CLA (第3加算器)。 出願人代理人 弁理士 鈴江武彦 第1図 第 図 PO2FE2 PDI日ヨ DO 第 図 第 図

Claims (1)

    【特許請求の範囲】
  1. 2つの乗算対象浮動小数点数の仮数部を入力して複数個
    の倍数を発生し、この複数個の倍数を対象にキャリー伝
    播のない加算を行ってその加算結果である第1の部分積
    並びに保存されたキャリー群である第2の部分積を求め
    、この第1並びに第2の部分積をもとに必要なビット数
    の仮数部の積を生成する浮動小数点乗算回路において、
    上記第1並びに第2の部分積の下位部分のキャリー伝播
    のある加算を行い、上位部分へのキャリー並びに丸めビ
    ットを生成する第1加算器と、上記第14及びに第2の
    部分積の上位部分のキャリー伝播のない加算を行い、そ
    の加算結果である第3の部分積並びに保存されたキャリ
    ー群である第4の部分積を生成するキャリー保存方式の
    第2加算器と、この第2加算器からの第3並びに第4の
    部分積および上記第1加算器からのキャリー並びに丸め
    ビットを加算して、上記必要なビット数の仮数部の積を
    生成する第3加算器とを具備することを特徴とする浮動
    小数点乗算回路。
JP63180340A 1988-07-21 1988-07-21 浮動小数点乗算回路 Expired - Fee Related JPH0673103B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63180340A JPH0673103B2 (ja) 1988-07-21 1988-07-21 浮動小数点乗算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63180340A JPH0673103B2 (ja) 1988-07-21 1988-07-21 浮動小数点乗算回路

Publications (2)

Publication Number Publication Date
JPH0231226A true JPH0231226A (ja) 1990-02-01
JPH0673103B2 JPH0673103B2 (ja) 1994-09-14

Family

ID=16081512

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63180340A Expired - Fee Related JPH0673103B2 (ja) 1988-07-21 1988-07-21 浮動小数点乗算回路

Country Status (1)

Country Link
JP (1) JPH0673103B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100438566B1 (ko) * 1996-12-10 2004-08-09 엘지전자 주식회사 디지탈신호처리기의반올림처리회로

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100438566B1 (ko) * 1996-12-10 2004-08-09 엘지전자 주식회사 디지탈신호처리기의반올림처리회로

Also Published As

Publication number Publication date
JPH0673103B2 (ja) 1994-09-14

Similar Documents

Publication Publication Date Title
Townsend et al. A comparison of Dadda and Wallace multiplier delays
US4168530A (en) Multiplication circuit using column compression
JP3761977B2 (ja) 遅延整合技術の利用によりクリティカル・パスを減少させた浮動小数点型掛け算器及びその演算方法
JP2976114B2 (ja) 加算器回路
US5426598A (en) Adder and multiplier circuit employing the same
US5784305A (en) Multiply-adder unit
JPH0447849B2 (ja)
EP0862110A2 (en) Wallace-tree multipliers using half and full adders
US4644491A (en) Sign generation system for a carry save adder
JPH0231226A (ja) 浮動小数点乗算回路
US5485413A (en) Multiplier utilizing the booth algorithm
JPH0776914B2 (ja) 乗算回路
JP3279462B2 (ja) ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路
JP2765516B2 (ja) 積和演算器
EP0326414A2 (en) High speed multiplier
JP3190826B2 (ja) 積和演算装置
Tamilselvan et al. An efficient MAC design for image processing application
JP2556300B2 (ja) 乗算装置
Islam et al. High speed merged multiplication
JPS61246837A (ja) 並列乗算器
EP4272069A1 (en) Multiplier and adder in systolic array
JPH1115641A (ja) 冗長2進加算器を用いた乗算装置
JP2629736B2 (ja) 積和演算回路
JPS61118835A (ja) ハ−ドウエア除算器
JPS5957342A (ja) 10進加算装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees