JPH031228A - 浮動小数点乗算装置 - Google Patents

浮動小数点乗算装置

Info

Publication number
JPH031228A
JPH031228A JP1136382A JP13638289A JPH031228A JP H031228 A JPH031228 A JP H031228A JP 1136382 A JP1136382 A JP 1136382A JP 13638289 A JP13638289 A JP 13638289A JP H031228 A JPH031228 A JP H031228A
Authority
JP
Japan
Prior art keywords
mantissa
exponent
signal
rounding
multiplication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP1136382A
Other languages
English (en)
Inventor
Masanobu Fukushima
正展 福島
Takashi Yasui
隆 安井
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP1136382A priority Critical patent/JPH031228A/ja
Publication of JPH031228A publication Critical patent/JPH031228A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 【産業上の利用分野】
この発明は、浮動小数点形式のデータに対する乗算回路
であり、特にIEEE(ザ インスティテユート オブ
 エレクトロニクス エンジニア)規格による浮動小数
点乗算回路に関する。
【従来の技術】
第3図は、IEEE規格による従来の浮動小数点乗算装
置の構成例を示しており、指数部及び仮数部の計算フロ
ーを第4図(A)、第4図(B)に示している。 指数部加算器lにて被演算数の指数部のオペランドXe
、Yeの加算が行なわれ(ステップSt)、又、仮数部
乗算器4では、前記被演算数の仮数部のオペランドXs
とYsとの乗算が行なわれ(ステップ#l)、この仮数
部乗算器4における仮数部の乗算結果がオーバーフロー
したときは(ステップ#2)、指数部に対し+1加算す
るためのインクリメント信号が送出される(ステップS
3)。次に指数部の加算結果をバイアス付き表記とする
ために、バイアス減算器2にて指数部からバイアス値A
が減算される(ステップS4)。 又、前記インクリメント信号がセレクタ5に入力される
ことにより、仮数部乗算器4よりの仮数部の乗算結果が
1ビツト右にソフトされる(ステップ#3)。又、面記
仮数部乗算結果に対して丸め回路6により丸め処理が行
なわれ、その結果、この丸め回路6より+1の丸め信号
が出力されると(ステップ#4)、仮数部のインクリメ
ンタ−7において、セレクタ5よりの仮数部の乗算結果
に+1加算され(ステップ#5)、このインクリメンタ
−7から仮数部の計算結果Osが出力される。又、イン
クリメンタ−7での+1の演算の結果、桁上がりが生じ
、インクリメンタ−7から指数部に対してインクリメン
ト信号が出力されると(ステップS5)、指数部のイン
クリメンタ−3において、バイアス減算器2よりの指数
部の加算結果に対し+!加算されて(ステップS6)、
指数部の計算結果Oeが出力される。
【発明が解決しようとする課題】
IEEE規格の浮動小数点乗算においては、上述したご
とく、指数部は、Xe−ASYe−Aのごとくバイアス
付きで表記される。Aがバイアス値て、A=2   1
(nはデータヒツト数)と定義される。この場合、指数
部の加算結果は、(Xe−A)+(Ye−A)=(Xe
+Ye−A)−Aとなり、指数部の加算結果を(Xe+
Ye−A)のようにバイアス付き表記とするノこめには
、Δを減算する必要があり、そのためにバイアス減算器
2を設けている。 又、このような計算に加えて、仮数部の乗算でのオーバ
ーフロー信号に伴う指数部へのインクリメント動作と、
丸め処理に伴う指数部へのインクリメント動作との2つ
のケースのインクリメント動作を必要とし、それぞれの
インクリメント動作を、指数部加算器l及びインクリメ
ンタ−3にて行っている。 従って計算時間の最も遅い場合を想定すると、丸め回路
6よりの丸め信号が仮数部のインクリメンタ−7に入り
、このインクリメンタ−7での加算の結果、桁上がりが
生じ、インクリメンタ−7よりインクリメント信号が出
力されると、インクリメンタ−3においてインクリメン
ト動作が行なわれて指数部の計算結果Oeが出力される
場合であり、この場合、丸め回路6よりの丸め信号出力
から指数部のインクリメンタ−3から出力結果が得られ
るまでに、仮数部のインクリメンタ−7での遅延時間と
、指数部のインクリメンタ−3での遅延時間との遅れが
生じることになる。扱う数値が単精度の場合、仮数部の
インクリメンタ−7が24ビツト、指数部のインクリメ
ンタ−3が8ビツトで計32ビットの幅があり、又、倍
精度ではインクリメンタ−7が43ビツト、インクリメ
ンタ−3が11ビツトで計64ビット幅があるように、
各インクリメンタ−のビット幅が非常に大きいため、こ
れらのインクリメンタ−7,3で生じる遅延時間も大き
く、浮動小数点の乗算時間が長くなる欠点がある。又、
指数部の計算に関して、加算器1、バイアス減算器2及
びインクリメンタ−3を必要とするために回路規模が大
きくなるといった欠点があった。 この発明は、」二連の従来技術の欠点に鑑みてなされた
ものであり、乗算時間を短くし、かつ回路構成を簡単に
した浮動小数点乗算装置を提供することを目的とする。
【課題を解決するための手段】
この発明の浮動小数点乗算装置は、浮動小数点形式のデ
ータを乗算する浮動小数点乗算装置において、仮数部X
s、Ysの乗算を行う仮数部乗算器と、指数部Xe、Y
eの加算を行う指数部加算器と、面記指数部加算器によ
る加算器ツノからバイアス値Aを減算する減算器とを備
え、バスアス値Aが入力される面記減算器の減算人力部
のLSBに、仮数部乗算器でのオーバーフローに伴い出
力されるインクリメント信号と、仮数部乗算器の乗算出
力に対する丸め処理に伴い出力されるインクリメント信
号との論理和の反転信号を入力することによリ、指数部
におけるインクリメント処理を、(XeA)+(Ye−
A)−(Xe+Ye−A)−(A−1)なる形式にて行
うことを特徴とする。
【作用】
上記構成によれば、仮数部の乗算でオーバーフローして
インクリメント信号が出力されたとき、あるいは、乗算
結果に対する丸め処理で+Iの丸め信号が出力され、仮
数部で桁上がりの結果、インクリメント信号が出力され
たとき、減算器の減算入力部のL S Bに所定の信号
を入力することにより、指数部に対するインクリメント
操作を行っている。
【実施例】
第1図は、この発明の浮動小数点乗算装置の一実施例を
示す制御ブロック図であり、第3図の従来装置と同一の
部分には同一の符号を付している。 仮数部乗算器4よりのインクリメント信号は、セレクタ
5に人力されるとともに、ノア回路NORに入力され、
このノア回路NOHの出力信号は、反転器INVを介し
てバイアス減算器2の、バイアス値(A−1)が入力さ
れる減Jγ入力部の最下位のビット(LSB)に人力さ
れる。 そして、丸め回路6よりの丸め信号は、仮数部のインク
リメンタ−7に入力されるとと乙に、アンド回路AND
に入力され、又、セレクタ5よりのmビットの信号らア
ンド回路ANDに入力され、このアンド回路ANDの出
力信号は、面記ノア回路N ORの他方の人力部に入力
される。 次に上記構成の乗算装置の動作を第2図(A)及び第2
図(B)の計算フローを参照して説明する。 仮数部乗算器4での仮数部Xs、Ysの乗算により(ス
テップ#11)、その乗算結果がオーバーフローしてイ
ンクリメント信号が出力されたとき(ステップ#12)
、ノア回路NORは“じを出力し、反転器INVを介し
てバイアス減算器2の減算人力部のLSHに指数部に“
0”が人力される。従ってバイアス減算器2において、
(Xe+Ye−A)(A、−1)、つまり(Xe+Ye
−A)−Aト1の減算が行なわれる。一方、仮数部乗算
器4よりインクリメント信号が出力されていないときは
、バイアス減算器2の減算入力部ののLSBに”ビが人
力されるので、このバイアス減算器2において、(Xe
+Ye−A)−((A−1)+ 1)、つまり、従来例
で述へたと同じ(Xe+Ye−A)−Aの演算が行なわ
れる。よって、仮数部乗算器4よりインクリメント信号
が出力されたときは、指数部の加算出力に対して+1加
算される。このように仮数部乗算器4よりのインクリメ
ント信号によって指数部に対してインクリメントが行な
われる条件を以下、条件Iという。 又、このインクリメント信号がセレクタ5に入力される
ことにより、仮数部乗算器4よりの仮数部乗算結果が1
ビツト右にシフトされる(ステップ#13)。 次に、仮数部乗算器4よりの乗算出力は、丸め回路6に
て丸め処理が行なわれ、その結果、+1の丸め信号が出
力されたか否かが判定され(ステップ#14)、この丸
め信号が出力されたときは、インクリメンタ−7におい
て、セレクタ5よりの仮数部の乗算値に+1の加算が行
なわれ(ステップ#15)、このインクリメンタ−7か
ら仮数部の乗算結果Osが出力される。又、仮数部にお
いては、セレクタ5よりのmビットの仮数部の乗算値が
すべて“1″であるかが判定され(ステップ#16)、
面記乗算値の谷ビットがすべて“1”のときは、インク
リメンタ−7での+1の加算により、桁上がりが生じて
指数部に対4−るインクリメントが必要となり、このと
きはアンド回路ANDより“ビが出力されノア回路NO
Rに人力されることにより、前述と同様、バイアス減算
器2にて指数部に対してインクリメントが行なわれる。 以上のように丸め処理に伴い指数部に対しインクリメン
トされる条件を以下、条件2という。条件2の場合には
、アンド回路ANDよりの信号を指数部に対するインク
リメント信号として用いており、第3図の従来装置のよ
うに、二つのインクリメンタ7.3を通さなくてら済む
ので、計算時間を短縮できる。 一方、指数部加算器■にて指数部Xe、Yeの加算が行
なわれ(ステップSl1)、次にバイアス減算器2にて
、前記加算結果に対してはバイアスの減算が行なわれる
が、仮数部の演算で条件lあるいは条件2が成立したか
が判定される(ステップS 12)。条件lあるいは条
件2が成立したときは、上記のごとく、(Xe+Ye−
A) −A+1の減算が行なわれて指数部の加算結果に
対してインクリメント動作が行なわれる(ステップS 
l 3)。 方、条件lあるいは条件2のいずれら成立しなかったと
きは、(Xe+Ye−A)−Aの減算が行なわれ(ステ
ップ5I4)、指数部に対するインクリメント動作は生
じない。バイアス減算器2からは直接に指数部の加算結
果が出力される。 尚、第2図(B)の計算フローでは、条件I及び条件2
の方が成立したとき、指数部に対して2回のインクリメ
ント動作が生じる可能性があるが、実際には条件lと条
件2とか共に成立しないことを以下に述べる。 今、仮数部の被演算数Xs、Ysの乗算でオーバーフロ
ーが生じるよう、共にmビット幅をもつ最大値 X5=2 −1 Ys=2 −1 とすると、 X5xYs−(2”−IO2”−1) 2m   2m+1 =2−2    +1 −2”’(2m ’−1)+1 ここで、(2”’−1)の項は、“ビかm−1個並んだ
ものを示しており、2m+1の項は、前記の項をm+1
ビツトシフトさせるしのである。即ち、Xs、Ysを共
に最大値に選んでし、lの並びはせいぜいm−1個であ
り、丸め処理により、仮数部が+1加算されても、指数
部に伝わることはありえない。なぜなら、このとき仮数
部かmビット全て!でないと指数部に伝わらないためで
ある。よって、条件lと条件2とを論理和であるノア回
路NORで受けることができる。
【発明の効果】
以上説明したように、この発明は、浮動小数点形式のデ
ータを乗算する浮動小数点乗算器において、指数部の加
算結果に対してバイアス値を減算する際に、バイアス減
算器の減算入力部のLSBに、仮数部乗算器よりオーバ
ーフローの信号が出力されたとき、及び、仮数部の丸め
処理に伴い指数部に対しインクリメント動作が必要とな
ったとき、バイアス減算器にて、(Xe+Ye−A)−
(A−1)の減算を行わせることにより、指数部に+1
のインクリメントを行うようにしたので、従来指数部に
必要だったインクリメント用のインクリメンタ−が不用
となり、回路を簡略化できる。又、仮数部での丸め処理
に伴う、指数部へのインクリメント操作の有無の判定を
、丸め回路よりの丸め信号と、仮数部の乗算結果におけ
る全ビットとの論理積を用いたので、従来装置のごとく
、丸め処理に伴う丸め信号を仮数部及び指数部のインク
リメンタ7及び3に通す必要がなくなり、計算を高速に
行うことができる。
【図面の簡単な説明】
第1図はこの発明の浮動小数点乗算装置の一実施例を示
す制御ブロック図、第2図(A)及び第2図(B)は、
第1図の乗算装置における指数部長び仮数部における計
算を示すフローチャート、第3図は従来の浮動小数点乗
算装置の一制御ブロック図、第4図(A)及び第4図(
B)は、第3図の乗算装置における指数部及び仮数部に
おける計算を示すフローチャートである。 ■・・・指数部加算器、2・・バイアス減算器、4・・
・仮数部乗算器、瞳・・セレクタ、6・・・丸め回路、
7・・・インクリメンタ−Nl’t・・・ノア回路、[
NV・・・反転器、AND・・・アンド回路。

Claims (2)

    【特許請求の範囲】
  1. (1)浮動小数点形式のデータを乗算する浮動小数点乗
    算装置において、仮数部Xs,Ysの乗算を行う仮数部
    乗算器と、指数部Xe,Yeの加算を行う指数部加算器
    と、前記指数部加算器による加算出力からバイアス値A
    を減算する減算器とを備え、バスアス値Aが入力される
    前記減算器の減算入力部のLSBに、仮数部乗算器での
    オーバーフローに伴い出力されるインクリメント信号と
    、仮数部乗算器の乗算出力に対する丸め処理に伴い出力
    されるインクリメント信号との論理和の反転信号を入力
    することにより、指数部におけるインクリメント処理を
    、(Xe−A)+(Ye−A)=(Xe+Ye−A)−
    (A−1)なる形式にて行うことを特徴とする浮動小数
    点乗算装置。
  2. (2)上記丸め処理に伴う、指数部へのインクリメント
    動作の有無の判定に際し、丸め回路からの丸め信号と、
    仮数部の乗算結果の全ビットとの論理積の信号を用いる
    請求項1記載の浮動小数点乗算装置。
JP1136382A 1989-05-29 1989-05-29 浮動小数点乗算装置 Pending JPH031228A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1136382A JPH031228A (ja) 1989-05-29 1989-05-29 浮動小数点乗算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1136382A JPH031228A (ja) 1989-05-29 1989-05-29 浮動小数点乗算装置

Publications (1)

Publication Number Publication Date
JPH031228A true JPH031228A (ja) 1991-01-07

Family

ID=15173848

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1136382A Pending JPH031228A (ja) 1989-05-29 1989-05-29 浮動小数点乗算装置

Country Status (1)

Country Link
JP (1) JPH031228A (ja)

Similar Documents

Publication Publication Date Title
US6099158A (en) Apparatus and methods for execution of computer instructions
US4999803A (en) Floating point arithmetic system and method
US5862065A (en) Method and circuit for fast generation of zero flag condition code in a microprocessor-based computer
US5993051A (en) Combined leading one and leading zero anticipator
US5148386A (en) Adder-subtracter for signed absolute values
JP2002108606A (ja) スティッキービット生成回路及び乗算器
KR19980041753A (ko) 다른 데이타 형을 갖는 다수의 데이타를 처리하는 가산기
KR20060057574A (ko) 예비 포화 검사로 가산 또는 감산을 위한 산술 유닛 및 그방법
JP4571903B2 (ja) 演算処理装置,情報処理装置,及び演算処理方法
JPS60140422A (ja) 演算処理装置
JPWO2007096982A1 (ja) 演算処理装置および演算処理方法
US6061707A (en) Method and apparatus for generating an end-around carry in a floating-point pipeline within a computer system
JP3306497B2 (ja) 浮動小数点乗算器における丸め回路
US7003540B2 (en) Floating point multiplier for delimited operands
JPH031228A (ja) 浮動小数点乗算装置
US7444366B2 (en) Faster shift value calculation using modified carry-lookahead adder
KR0176883B1 (ko) 복소수 승산기
US5208769A (en) Unsigned integer multiply/divide circuit
JP3187402B2 (ja) 浮動小数点データ加減算回路
JPH113210A (ja) 3入力比較器、並びにこれを用いた飽和演算装置およびその演算方法
JP2752698B2 (ja) 浮動小数点加減算回路
JPS59140560A (ja) 浮動小数点乗算器
JPH0427587B2 (ja)
KR0175358B1 (ko) 고속화를 위한 연산기의 상태 플래그 검출회로
JPH01232430A (ja) 演算回路