JP2752698B2 - 浮動小数点加減算回路 - Google Patents

浮動小数点加減算回路

Info

Publication number
JP2752698B2
JP2752698B2 JP1153816A JP15381689A JP2752698B2 JP 2752698 B2 JP2752698 B2 JP 2752698B2 JP 1153816 A JP1153816 A JP 1153816A JP 15381689 A JP15381689 A JP 15381689A JP 2752698 B2 JP2752698 B2 JP 2752698B2
Authority
JP
Japan
Prior art keywords
result
shift
value
subtraction
mantissa
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
Application number
JP1153816A
Other languages
English (en)
Other versions
JPH0318924A (ja
Inventor
伸吾 小嶋
宏治 松井
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.)
NIPPON DENKI AISHII MAIKON SHISUTEMU KK
NEC Corp
Original Assignee
NIPPON DENKI AISHII MAIKON SHISUTEMU KK
Nippon Electric 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 NIPPON DENKI AISHII MAIKON SHISUTEMU KK, Nippon Electric Co Ltd filed Critical NIPPON DENKI AISHII MAIKON SHISUTEMU KK
Priority to JP1153816A priority Critical patent/JP2752698B2/ja
Publication of JPH0318924A publication Critical patent/JPH0318924A/ja
Application granted granted Critical
Publication of JP2752698B2 publication Critical patent/JP2752698B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、浮動小数点の加算,減算を行なう際に生じ
る桁合せを行なう論理回路に関するものである。
〔従来の技術〕
第2図は従来の技術を示す図である。この図に添って
浮動小数点数の加算を行なう場合を説明する。
a,bは浮動少数点XとYの指数部を示しc,dは仮数部を
示している。a,cで被加数Xの浮動小数点数、b,dで加数
Yの浮動小数点数である。
1は2種類の浮動小数点数の指数部“a−b"の差を求
めることとキャリー信号を作る減算器である。2は2種
類の浮動小数点数の仮数部c,dを1のキャリー信号によ
ってどちらかをシフトレジスタA6に入力するかどちらを
加減算器11の入力とするかの選択を行なうセレクタであ
る。3は入力データの大きい方の指数部を選択し指数部
結果レジスタ12に格納するセレクタである。4はキャリ
ー信号が‘1'なら結果を反転しその後の加算器14の入力
データとし‘0'なら減算結果をそのままシフトカウンタ
5に入力する回路である。14は3のキャリー信号eが
‘1'だった場合に反転された値に+1を加算する加算器
である。5はシフトレジスタ6の値を何ビットシフトす
るかという情報をもっているシフトカウンタである。6
はシフトする値を格納するシフトレジスタAである。7
はシフトカウンタの値によってシフトレジスタA6の値を
シフトするバレルシフタである。10はバレルシフタ7で
シフトされた結果を格納するシフト結果レジスタであ
る。11は上記1〜14によって桁合せされた仮数部データ
ともう一つ桁合せのなかった仮数部データを加算又は減
算する加減算器である。12は指数部の結果を格納する指
数部結果レジスタである。13は仮数部の結果を格納する
仮数部結果レジスタである。
続いて動作の説明をする。最初に仮数部の動作である
が、まず指数部のデータa,bを減算器1の入力としこの
2数について“a−b"の減算を行う。この時に結果が負
ならキャリー信号eは‘1'に、正なら‘0'になる。そし
て仮数部c,dをキャリー信号eをもとに指数部と小さい
方の仮数部データをシフトレジスタA6に入力してもう片
方の仮数部データを加減算器11の入力データとする。次
にキャリー信号eが‘0'なら1の指数部の減算結果をそ
のままシフトカウンタ5に格納し‘1'なら1の指数部減
算結果の反転値をとりそれにさらに+1を加算した値を
シフトカウンタ5に格納する。シフトカウンタ5の値が
決ったらシフトレジスタ6の値をシフトカウンタ5の値
だけ右シフトする。そして最後にシフト結果と桁合せを
しなかった入力データの加算又は減算を行ない結果を仮
数部結果レジスタ13に格納する。次に指数部であるが2
つの入力データの指数部a,bのデータをキャリー信号e
によって判定し大きい方を指数部結果レジスタ12に格納
する。
〔発明が解決しようとする課題〕
今までの浮動小数点の加算,減算は〔従来の技術〕で
述べたとおり桁合せを行なう際に仮数部のシフト回数を
2数の指数部の減算結果を用いるが、この減算結果が負
になる場合にはそのままではシフト数としては使えない
(シフト数は絶対値でなければならない)ので2の補数
をとる必要があった。2の補数をとるということは、ま
ずデータを反転させてそしてそれに+1を加算しなけれ
ばならない。この加算を実行しているとシフト回数の数
値が確定するのに時間がかかってしまい結果として演算
自体の実行時間が長くなるというような問題があった。
この発明は上記の問題点に着目し時間のかかる2の補
数をとる処理をなくし浮動小数点の加算,減算の時の桁
合せの処理の時間の短縮を提供することである。
〔課題を解決するための手段〕
本発明は以上のような問題点を解決するために浮動小
数点の加算,減算の時の桁合せをする時の仮数部のシフ
ト回数を決める場合、2数の指数部の減算結果が負だっ
た時、2の補数をとりそれをシフト回数とするのではな
く、減算結果を反転しその値分シフトレジスタAに入っ
ている値をシフトしさらにシフト後の結果を右に1ビッ
トシフトすることで結果を補正することを特徴としてい
る。
〔実施例〕
第1図は本発明の一実施例図である。本実施例を、実
際に値を入力した場合の各レジスタ、信号の内容を示し
た第3図(浮動小数点の加算の場合の各レジスタ等の内
容)に添って説明をする。
a,bは2つの入力データの指数部を示しc,dは仮数部を
示している。a,cで被加数Xの浮動小数点数、b,dで加数
Yの浮動小数点数である。
1は2種類の浮動小数点数の指数部“a−b"の差を求
めることとキャリー信号eを作る減算器である。2は2
種類の浮動小数点数の仮数部c,dをキャリー信号eによ
ってどちらをシフトレジスタA6に入力するかどちらを加
算器11の入力とするかの選択を行なうセレクタである。
3はキャリー信号によって入力データの大きい方の指数
部を選択し指数部結果レジスタ12に格納するセレクタで
ある。4はキャリー信号が‘1'なら結果を反転した値を
シフトカウンタ5に入れ‘0'なら減算結果をそのままシ
フトカウンタ5に入力する回路である。5はシフトレジ
スタA6の値を何ビットシフトするかという情報をもって
いるシフトカウンタである。6はシフトする値を格納す
るシフトレジスタAである。7はシフトカウンタ8の値
だけシフトレジスタA6の値をシフトするバレルシフタで
ある。8はバレルシフタ7でシフトされた結果を格納す
るシフトレジスタである。9はキャリー信号が‘1'の時
にシフトレジスタB8の値を1ビットだけ右シフトするシ
フタである。10はキャリー信号が‘1'なら前記シフタ9
で1ビットシフタされたシフトレジスタBの値を、‘0'
ならシフトレジスタBの値を格納しておくシフト結果レ
ジスタである。11は上記1〜10によって桁合せされた仮
数部データともう一つ桁合せのなかった仮数部データを
加算又は減算する加減算器である。12は指数部の結果を
格納する指数部結果レジスタである。13は仮数部の結果
を格納する仮数部結果レジスタである。
続いて動作の説明をする。まず指数部のデータa,bを
減算器1の入力としてこの2数について“a−b"の減算
を行う。この時に結果が負ならキャリー信号eは‘1'に
正なら‘0'になる。そして仮数部c,dをキャリー信号e
をもとに指数部の小さい方の仮数部データをシフトレジ
スタ6にもう片方のデータを加減算器11の入力データと
する。次にキャリー信号eが‘0'なら1の指数部の減算
結果をそのままシフトカウンタ5に格納し‘1'なら1の
指数部減算結果の反転値をとりシフトカウンタ5に格納
する。シフトカウンタ5の値が決ったらシフトレジスタ
6の値をシフトカウント5の値だけ右シフトする。そし
てキャリー信号eが‘1'ならシフト後の結果をさらに1
ビット右にシフトし、最後にシフト結果レジスタ10と最
初の方でセレクタで選択された桁合せの行なわれなかっ
た仮数部の入力データとの加算又は減算を行ない結果を
仮数部結果レジスタ13に格納する。次に指数部の動作で
あるが2つの入力データの指数部a,bのデータをキャリ
ー信号eによって判定し大きい方を指数部結果レジスタ
12に格納する。
次に実際に入力データを入力した時の各レジスタの内
容を第3図に添って説明する。まず入力データ“3FFF 8
000000000000000"(指数部a,仮数部c)と“4001 80000
00000000000"(指数部b,仮数部d)の指数部について
“a−b"の減算を行なう。減算結果は“FFFE"でありこ
の時に作られるキャリー信号は“1"である。次にキャリ
ー信号eが“1"なのでシフトレジスタA6には仮数部cの
内容“80000000 00000000"が入り加算器11の片側の入力
には仮数部dの内容“80000000 00000000"が入る。それ
と同時にキャリー信号が“1"なので減算結果“FFFE"を
反転した値“0001"をシフトカウンタ5に入力する。そ
してシフトレジスタA6の値“80000000 00000000"をシフ
トカウンタ5の値“0001"分右シフトし結果“40000000
00000000"をシフトレジスタB7に入力する。次にキャリ
ー信号eが“1"なのでさらにもう1ビット右にシフトし
結果“20000000 00000000"をシフト結果レジスタ10に入
力する。そして最初の方で選択された加算器11の片側の
データ“80000000 00000000"とシフト結果レジスタ10の
値“20000000 00000000"との加算を行ない結果“A00000
00 00000000"を仮数部結果レジスタ13に入力する。以上
が仮数部のデータの流れである。
次に指数部について説明する。指数部のデータの流れ
は単純でこの例の場合はキャリー信号が“1"なので指数
部bの値“4001"が指数部結果レジスタ12にはいる。
〔発明の効果〕
本発明は従来浮動小数点の加算,減算時に行なわれて
いた桁合せ処理時の仮数部の桁合せシフトのシフト回数
を決める時に指数部同志の減算結果が負になった時に絶
対値のシフト回数を得る為に従来は2の補数をとってい
たが本発明の1の補数でシフトし更にシフト後の結果を
右に1ビットシフトするやり方に変えることによって浮
動小数点の加算,減算が今までよりも高速に行なえるよ
うになった。
【図面の簡単な説明】
第1図は本発明の一実施例図、第2図は従来の技術のブ
ロック図、第3図は第1図において実際に結果を入力し
た時の各レジスタ、信号等の値を示す図である。 1……減算器、2……セレクタ、3……セレクタ、4…
…反転回路、5……シフトカウンタ、6……シフトレジ
スタA、7……バレルシフタ、8……シフトレジスタ
B、9……シフタ、10……シフト結果レジスタ、11……
加減算器、12……指数部結果レジスタ、13……仮数部結
果レジスタ、14……加算器。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】浮動小数点の2進加算減算回路において、
    被加数および加数または被減数および減数の指数の差を
    求める減算器と、前記減算器の減算結果が正ならばその
    減算結果をシフト回数とし、負ならば前記減算結果を反
    転した値をシフト回数とする回路と、被加数または加
    数、被減数または減数のうち指数部の小さい方の仮数部
    の値を前記シフト回路に従って一方向にシフトするバレ
    ルシフタと、前記減算結果が正ならそのままの値をシフ
    ト結果とし負ならばシフトした結果をさらに同一方向に
    1ビットシフトしてそれをシフト結果とする回路と、前
    記回路で得られた仮数部の値を用いて加算あるいは減算
    する回路とを備えたことを特徴とする浮動小数点加減算
    回路。
JP1153816A 1989-06-15 1989-06-15 浮動小数点加減算回路 Expired - Fee Related JP2752698B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1153816A JP2752698B2 (ja) 1989-06-15 1989-06-15 浮動小数点加減算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1153816A JP2752698B2 (ja) 1989-06-15 1989-06-15 浮動小数点加減算回路

Publications (2)

Publication Number Publication Date
JPH0318924A JPH0318924A (ja) 1991-01-28
JP2752698B2 true JP2752698B2 (ja) 1998-05-18

Family

ID=15570724

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1153816A Expired - Fee Related JP2752698B2 (ja) 1989-06-15 1989-06-15 浮動小数点加減算回路

Country Status (1)

Country Link
JP (1) JP2752698B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5692984A (en) * 1994-12-09 1997-12-02 Sr Engineering Company Limited Flexible drive member for pulling and pushing and fluid-operated moving apparatus

Also Published As

Publication number Publication date
JPH0318924A (ja) 1991-01-28

Similar Documents

Publication Publication Date Title
US5197023A (en) Hardware arrangement for floating-point addition and subtraction
JP3076046B2 (ja) 例外検出回路
EP0472139A2 (en) A floating-point processor
US5184318A (en) Rectangular array signed digit multiplier
US4758974A (en) Most significant digit location
KR900010545A (ko) 연산장치와 연산방법
JPH0343645B2 (ja)
GB1579100A (en) Digital arithmetic method and means
JP2511527B2 (ja) 浮動小数点演算器
JPH0479015B2 (ja)
JP2752698B2 (ja) 浮動小数点加減算回路
JPH0511980A (ja) 桁あふれ検出方式とその回路
JPH0464091B2 (ja)
US7003540B2 (en) Floating point multiplier for delimited operands
JPH04172526A (ja) 浮動小数点除算器
US5689721A (en) Detecting overflow conditions for negative quotients in nonrestoring two's complement division
US5208769A (en) Unsigned integer multiply/divide circuit
JP2856792B2 (ja) 浮動小数点数演算装置
JPH03245225A (ja) 浮動小数点加減算装置
JP3298119B2 (ja) 零フラグ生成加減算器
JPH0435777B2 (ja)
JPH08263271A (ja) 引放し除算装置
JPH03245226A (ja) 浮動小数点乗算装置
JPH03150631A (ja) 10進除算回路
JPS581244A (ja) 浮動小数点命令例外検出方法

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080227

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees