JPS59140560A - 浮動小数点乗算器 - Google Patents

浮動小数点乗算器

Info

Publication number
JPS59140560A
JPS59140560A JP58014900A JP1490083A JPS59140560A JP S59140560 A JPS59140560 A JP S59140560A JP 58014900 A JP58014900 A JP 58014900A JP 1490083 A JP1490083 A JP 1490083A JP S59140560 A JPS59140560 A JP S59140560A
Authority
JP
Japan
Prior art keywords
multiplier
output
mantissa
multiplication
exponent
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
JP58014900A
Other languages
English (en)
Inventor
Masaru Uya
宇屋 優
Katsuyuki Kaneko
克幸 金子
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP58014900A priority Critical patent/JPS59140560A/ja
Publication of JPS59140560A publication Critical patent/JPS59140560A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/487Multiplying; Dividing
    • G06F7/4876Multiplying

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Nonlinear Science (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、浮動小数点乗算器に関し、特に高速乗算を実
現する並列型(フラッシュ型)浮動小数点乗算器に関す
る。
従来例の構成とその問題点 浮動小数点数は、ダイナミック、レンジが広く一定の精
度を保ちつつ演算できるので、コンビーータに用いられ
ている。最近、各種のディジタル信号処理に、浮動小数
点数が不可欠とされ、マイクロ、コンピュータのlノベ
ルの信号処理システムにも使われてきている。例えば、
音声分析システムにおいても、16ビツト以上の精度が
要求されしかも実時間処理に近づけるため、高速演算が
求められている。従って、この2つの要求を同時に満足
させるため、固定小数点演算器に代って並列型(フラッ
シュ型)の浮動小数点演算器、特に乗算器が不可欠とさ
れる。これは、半導体集積回路(LSI等)で実現され
る。
第1図に並列型の浮動小数点乗算器の従来例を示す。
浮動小数点数(厳密には、正規化浮動小数点数)は32
ビツト語長で表現するとき、1ビツトの符号ビットS、
sビットの指数E、23ビットの仮数Fのビット配分と
なる。符号ビットSは、S−〇で正を、S−1で負の数
を示す。指数Eはオフセット、バイナリ−表現の数で、
基数は2.定数128だけ偏位している。従って、Eは
○≦E≦256の範囲にある。仮数Fは、正規化された
正の小数点数であって、そのMSBは常に1となり小数
点が先頭にあるため、0.5≦F〈1となる。
従って、実際の数は、(−’)8・F・28で表わされ
る。ここでeは真の指数であり、e二E−128であっ
て、−128≦e≦127である。
今、乗数X、被乗数Yを乗算し、積Zを得るとき、次式
の如くなる。
XXY=[(−1)  x−FX−2x]X[(−1)
 ”−F、%)2 y〕 (1) 即ち、S2−8x■8 y(2) F2−FxxFy(3) e =e  +e        (4)z   x 
  y なお、■は排他的論理和を表わす。4式から、θ=E 
−128=(E −128)+(Ey−128)z  
  z            x、’、E =li:
 +E −128(5)xy 2.3.5式から、積Zが得られるがこれが成立するの
は、0.5≦F2〈1の場合である。先に述べたように
、Fx、F、は、0.5≦Fx、Fy〈1であるから、
F2は、0.25≦F2〈1となる。F2がo、26≦
F2(0,6になった場合、F2(7)MSBがOとな
り、正規化するためには、左に1ビツトシフトして、M
SBを1とすると共に、5式のF2から1を減じる必要
がある。従って、0・26≦F2(0,5(7)場合に
は、2XFxxFyをあらためて積Zの仮数F2とし、
指数E2を、 E  =E  十E  −128−1(6)z   x
   y とする。
第1図の1は仮数Fx、Fyの積F2を得るだめの仮数
乗算器であり、23×23ビツトの並列型符号なし数乗
算器であって、公知の回路である。
仮数乗算器1の出力は、MSBであるfとそれに続く2
3ピツト(第1図のP)の合剖24ビットである。2は
、正規化した仮数F2を得るだめの正規化回路であって
、具体的には制御入力付きの1ビツト左シフタである。
これも公知の回路、例えば2人カマルチグレクサ23個
で構成できる。
正規化回路2の制御人力Cに0が入力されたとき入力(
f、P)は1ビツト左シフトされて、出力e  7j−
1、 F はPが出力され、逆に1が入力されたときには、シ
フトキれず、出力F2には、f、!:pの上位22ビツ
トが出力される。3,4は指数Ex、Eアを加算するだ
めの加算器であって、それぞれ8ビツト、9ビツト加算
器である。
加算器3.4も公知の加算器である。加算器3の出力に
はEx十E、が得られる。加算器4は、6式の最終項の
−128を実現するために、−128を2の補数で表わ
した180Hを加算するためのものである。なお、添字
″H°″は16進数表現であることを示す。従って加算
器4の出力には、Ex+E  −128が得られる。た
だし、この出力は8ビット長である。8はパターン発生
回路であり、仮数乗算器1のMSB出力fが0のとき”
 01 H’”全出力し、逆に1のとき” OOH” 
 を出力するもノテ、公知のロジック・ゲートで簡単に
構成できる。9は、加算器4の出力から、パターン発生
回路8の出力を減算する減算器である。j!1ち、減算
器。は、f=o(7)とき、デクリメンタとして働きf
=1のとき、入力をそのまま出力する機能を有ア、・ミ
・ する。5は、2式を実現するだめの排他的論理和ゲート
であり、その出力に符号ビットS2が得られる。
次に、動作について説明する。
仮数乗算器10M5B出力fが1のときは、0.5≦F
 XF <1の場合で、すでに正規状態にあy って、この出力(f、p)の上位23ビツトは正規化回
路2を素通りしてF2となる。一方、パターン発生回路
8は○OH”を出力して、減算器9の出力には、5式の
F2が得られる。次に、o、25≦E XE (o、5
の場合には、f−oとなりy 仮数乗算器1の出力Pが、正規化回路2の働きでF2と
して出力される。
同時にパターン発生回路8には” OI H’″が出力
されて、減算器9の出力には、6式のF2が得られる。
従って、正規化浮動小数点乗算器として正しく動作する
ことがわかる。
さて、第1図の浮動小数点乗算器の乗算時間は仮数乗算
器1の乗算時間(fが決定する迄の最大時間)と、パタ
ーン発生口1i11i<8の遅延時間と、減算器9の減
算時間との総和となる。これは、加算器3と4での加算
時間に比して、仮数乗算器の乗算時間がはるかに大きい
からである。ここで、上述したパターン発生回路8と減
算器9の遅延時間の大きさを大まかに見積ると、パター
ン発生回路8を1ゲ一ト分の遅延とすると、減算器9で
は16ゲ一ト分9合計17ゲート分の遅延時間となる。
これに対し、仮数乗算器1の乗算時間は約134ゲート
分の遅延時間となるから、上記のパターン発生回路8と
減算器9の遅延時間は、第1図の浮動小数点乗算器の乗
算時間の約9分の1を占めていることになり、乗算の高
速化を阻んでいる。
発明の目的 本発明は、上述した従来の問題を解決すべく成されたも
ので、乗算時間を最大限に短縮した並列型浮動小数点乗
算器を提供することを目的とする。
発明の構成 本発明は、正規化処理に伴なって予測される2つの指数
値を計算、用意しておいて、仮数乗算が終了すると、直
ちに用意しておいた2つの指数値9 、 ・ から適正な1つを選択出力することによって、浮動小数
点数の指数部を、即ち乗算結果を高速に得られるように
したものである。
実施例の説明 第2図に本発明の浮動小数点乗算器の実施例を示す。説
明の都合上帆う浮動小数点数のフォーマットは従来例で
説明したものと同じものを採用する。
従って、SX、Sアは乗数、被乗数の符号ビットであり
、Ex、Eyは乗数被乗数の8ビツト長の指数であ’)
 、FX I Fyは乗数、被乗数の23ビツト長の仮
数である。
第2図の1〜6は、第1図の従来例の1〜6と全く同じ
ものであって、1は仮数乗算器、2は正規化回路、3.
4は加算器、6は排他的論理和ゲートである。即ち、積
Zの符号ピッ) S2を仮数F2は、それぞれ排他的論
理和ゲート6、正規化回路2の出力に得られる。
上述したように、加算器4の出力には、5式で示される
(EX十Eアー128)が8ビツト長で出力io   
、、、−、・ される。6は、入力された数から1を減算して出力する
8ビ′ツトのデクリメンタであり、公知の回路で実現で
きる。7はマルチプレクサであり、制御入力端子Cに0
が入力されたとき、8ビツト長の入力Aを選択出力し、
Cに1が入力されたとき同じく8ビツト長の入力Bを選
択出力する機能を有するもので、公知の回路で実現でき
る。
次に、第2図の実施例について説明する。
1〜5についての動作は、第1図の従来例と全く同じで
あるから説明を省略する。
仮数乗算器10乗算結果(ExXEア)が0.5≦EX
E<1にある場合は正規化処理は不必要で7 (ExXEア)のMSBfが1であるから、マルチプレ
クサ7は、入力Bを選択出力するから、出力される指数
E2は、加算器4の出力即ち、5式である(Ex+Eア
ー128)となる。一方、乗算結果(ExXE、)が0
.25≦ExXEy〈0.5にある場合は、正規化処理
が必要で、f−0であるからマルチプレクサ7は、入力
Aを選択出力するから、出力される指数E2は、デクリ
メンタ6の出力即ち、11   j 、 6式である(Ex十Ey−128−1)となる。従って
マルチプレクサ7の出力には正しい指数E2が得られる
ことになる。
次に、第2図の実施例の乗算時間を見積ってみる。仮数
乗算器10乗算時間は約134ゲート分の遅延時間であ
る。一方、加算器3,4の加算時間は、それぞれ16ゲ
ート、18ゲ一ト分の遅延時間であり、デクリメンタ6
の減算時間は16ゲ一ト分の遅延時間となるから、Ex
、Eyが入力されてからマルチプレクサγの入力Aに信
号が到着するのは、16+18+16=50ゲ一ト分の
遅延時間の後である。従って、仮数乗算器1のf出力が
マルチプレクサ7の制御人力Cに到来するときには既に
入力A、Bは確定してしまっている。
マルチプレクサ7の制御人力Cから出力迄の遅延時間は
2ゲ一ト分あるから、第2図の浮動小数点乗算器の乗算
時間は、134+2:136ゲ一ト分の遅延時間である
。第1図の従来例の乗算時間が134+17=151ゲ
一ト分の遅延時間であるから、大幅に乗算時間を短縮し
、高速乗算を可能にしている。特に、仮数乗算器1の乗
算時間以外の時間の′率は、全体の約68分の1と大幅
に減少している。
なお、第2図の実施例に使った浮動小数点数フォーマン
トは上述のものだけではない。例えば、IEEE標準フ
ォーマットの32ビット数においては、8ビツト(偏位
定数127のオフセット・バイナリ−の指数と、仮想的
に1を伴なった23ビツトの仮数と、符号ビット(実施
例と同様)とで構成される。このとき、真の仮数Fは1
+23−24ビツト長になり、1≦F<2の範囲にあっ
て乗算を行ったとき、1≦FxXFy〈4となるため、
FxxFyの範囲が2≦FxXFy〈4にある場合に正
規化のため1ビット右シフトすると共に、指数加算結果
に1を加算する必要がある。従って、これを実現するた
めには、第2図の正規化回路2として1ビツト右シフタ
ーを、デクリメンタ6の代りにインクリメンタを使用す
れば同様に可能である。
発明の効果 13     ・・ 従って、本発明によれば、正規化浮動小数点乗算の乗算
速度を最大限に高めた並列型浮動小数点乗算器を得るこ
とができ、各種のディジタル信号処理を高速に実行する
など極めて高い価値を有するものである。
【図面の簡単な説明】
第1図は従来の浮動小数点乗算器の回路図、第2図は本
発明の浮動小数乗算器の実施例を示す回路図である。 1・・・・・・仮数乗算器、2・・・・・・正規化回路
、3.4・・・・・・加算器、6・・・・・・デクリメ
ンタ、7・・・・・・マルチプレクサ。 代理人の氏名 弁理士 中 尾 敏 男 ほか1名第1
図 、52E2F2

Claims (4)

    【特許請求の範囲】
  1. (1)浮動小数点形式の乗数の仮数と、浮動小数点形式
    の被乗数の仮数とを乗算する仮数乗算器と、上記仮数乗
    算器の乗算結果に基づいて該乗算結果を正規化する正規
    化回路と、上記乗数の指数と上記被乗数の指数と所定の
    定数とを加算する指数加算器と、上記指数加算器の加算
    結果に1を加算するか、又は1を減算する第1の手段と
    、上記仮数乗算器の乗算結果に基づいて、上記指数加算
    器の出力か、又は上記第1の手段の出力のいずれか一方
    を選択出力するマルチプレクサとを具備し、上記マルチ
    プレクサの出力に浮動小数点形式の積の指数を得、上記
    正規化回路の出力に仮数を得るようにしたことを特徴と
    する浮動小数点乗算器。
  2. (2)第1の手段が、上記指数加算器の加算結果から1
    を減算するデクリメンタであることを特徴とする特許請
    求の範囲第1項記載の浮動小数点乗算2、、、、 器。
  3. (3)第1の手段が、上記指数加算器の加算結果に1を
    加算するインクリメンタであることを特徴とする特許請
    求の範囲第1項記載の浮動小数点乗算器。
  4. (4)正規化回路が、上記仮数乗算器の乗算結果に基づ
    いて、該乗算結果を1ビツトシフトして出力するか、又
    はシフトせずに出力する1ビツトシフトであることを特
    徴とする特許請求の範囲第1項うML 513項のいずれか一項記載の浮動小数点乗算器。
JP58014900A 1983-01-31 1983-01-31 浮動小数点乗算器 Pending JPS59140560A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58014900A JPS59140560A (ja) 1983-01-31 1983-01-31 浮動小数点乗算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58014900A JPS59140560A (ja) 1983-01-31 1983-01-31 浮動小数点乗算器

Publications (1)

Publication Number Publication Date
JPS59140560A true JPS59140560A (ja) 1984-08-11

Family

ID=11873860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58014900A Pending JPS59140560A (ja) 1983-01-31 1983-01-31 浮動小数点乗算器

Country Status (1)

Country Link
JP (1) JPS59140560A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61122750A (ja) * 1984-11-20 1986-06-10 Matsushita Electric Ind Co Ltd 演算装置
JPS61289421A (ja) * 1985-06-18 1986-12-19 Nec Corp 浮動小数点乗算正規化回路
US7228110B2 (en) 2002-10-04 2007-06-05 Matsushita Electric Industrial Co., Ltd. Low cost high frequency device having compact mounting area, high frequency amplification method, wireless communication device and mobile telephone including low cost and high frequency circuit having compact mounting area

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61122750A (ja) * 1984-11-20 1986-06-10 Matsushita Electric Ind Co Ltd 演算装置
JPS61289421A (ja) * 1985-06-18 1986-12-19 Nec Corp 浮動小数点乗算正規化回路
US7228110B2 (en) 2002-10-04 2007-06-05 Matsushita Electric Industrial Co., Ltd. Low cost high frequency device having compact mounting area, high frequency amplification method, wireless communication device and mobile telephone including low cost and high frequency circuit having compact mounting area

Similar Documents

Publication Publication Date Title
US6697832B1 (en) Floating-point processor with improved intermediate result handling
US7346643B1 (en) Processor with improved accuracy for multiply-add operations
US7188133B2 (en) Floating point number storage method and floating point arithmetic device
US5111421A (en) System for performing addition and subtraction of signed magnitude floating point binary numbers
KR20020063058A (ko) 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
US4590584A (en) Method and system for processing exponents in floating-point multiplication
JPS60140422A (ja) 演算処理装置
JP2511527B2 (ja) 浮動小数点演算器
JPS59140560A (ja) 浮動小数点乗算器
KR920003493B1 (ko) 부동 소숫점 표기를 기초로 하는 연산회로
JP3187402B2 (ja) 浮動小数点データ加減算回路
JPH0251732A (ja) 浮動小数点演算器
US7240085B2 (en) Faster shift value calculation using modified carry-lookahead adder
JP4163967B2 (ja) 浮動小数点演算装置
KR20040033198A (ko) 부동소수점의 곱셈 및 누산장치
JP2555135B2 (ja) 演算回路
KR20010067226A (ko) 인터폴레이션 방법 및 장치
JP3137131B2 (ja) 浮動小数点乗算器及び乗算方法
JPH0383126A (ja) 浮動小数点乗算器
JPH01232430A (ja) 演算回路
JP2797773B2 (ja) 逆数演算装置
JPH07200259A (ja) 演算処理方法および演算処理装置
JPS6359170B2 (ja)
JPH01232424A (ja) 演算回路
JPH031228A (ja) 浮動小数点乗算装置