JPH08263269A - 浮動小数点演算回路 - Google Patents

浮動小数点演算回路

Info

Publication number
JPH08263269A
JPH08263269A JP8107837A JP10783796A JPH08263269A JP H08263269 A JPH08263269 A JP H08263269A JP 8107837 A JP8107837 A JP 8107837A JP 10783796 A JP10783796 A JP 10783796A JP H08263269 A JPH08263269 A JP H08263269A
Authority
JP
Japan
Prior art keywords
operand
exponent part
mantissa
input
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
JP8107837A
Other languages
English (en)
Inventor
Hidenori Ohashi
秀紀 大橋
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP8107837A priority Critical patent/JPH08263269A/ja
Publication of JPH08263269A publication Critical patent/JPH08263269A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 指数部がバイアス表現された浮動小数点数値
の加算(減算)を行うためには、第1オペランドと第2
オペランドの指数部の減算を行うための加減算器と、指
数部の演算結果を絶対値化するための絶対値化回路が必
要であり、1つの命令を実行するために2つの演算器が
必要となっていた。 【解決手段】 減算手段での減算結果及び記憶手段に記
憶された符号情報に従って、第1オペランドの仮数部を
シフトする第1シフト手段と、減算手段での減算結果及
び記憶手段に記憶された符号情報に従って、第2オペラ
ンドの仮数部をシフトする第2シフト手段と、第1シフ
ト手段から第1オペランドの仮数部を入力し、第2シフ
ト手段から第2オペランドの仮数部を入力して、これら
仮数部の演算を行う演算手段と、前記減算手段は、前記
記憶手段に記憶された符号情報が負の場合に第2オペラ
ンドの指数部から第1オペランドの指数部を減算する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、数値を、絶対値表
現された仮数部と符号・バイアス表現された指数部とで
表す浮動小数点数値の演算を行う浮動小数点演算回路に
関するものである。
【0002】
【従来の技術】浮動小数点は、数値を仮数部と指数部と
で表現するもので、例えば数値nは、仮数部をa、指数
部をbとすると、n=a・rb(rは基数)で表され
る。
【0003】また、指数部は、符号を付して表現された
り、ある特定の数を基準とし、その数に対する大小で表
すバイアス表現で表される。
【0004】浮動小数点で表現された数値を用いて演算
を行う場合、固定小数点で表現された数値を用いて演算
を行う場合に比べ、広い範囲(広いダイナミックレン
ジ)での数の演算が可能である。
【0005】このため、扱う数値範囲を広く要求される
(広いダイナミックレンジが要求される)用途において
は、浮動小数点で表現された数値の演算を行う浮動小数
点演算回路が用いられている。
【0006】ここで、指数部がバイアス表現された2つ
の数値、m=a・rcとn=b・rd(但し、c>d)の
浮動小数点数値の加算を考えてみる。この場合、加算結
果(和)は、 m+n=(a+bc-d)・rc となる。
【0007】このように、浮動小数点数値の加減算を実
行する場合には、第1オペランドの指数部と第2オペラ
ンドの指数部の減算を行い、その結果から桁合わせを行
うために一方の仮数部をシフトする必要がある。
【0008】図2は、従来の浮動小数点演算回路の概略
構成図の一例である。
【0009】図2において、(1)は、浮動小数点数値
である第1オペランドをクロック(CK)に同期して入
力する第1入力レジスタで、オペランドは符号・バイア
ス表現された指数部及び絶対値表現された仮数部から構
成される。
【0010】(2)は、第1入力レジスタ(1)と同様
に、浮動小数点数値である第2オペランドをクロック
(CK)に同期して入力する第2レジスタである。
【0011】(3)は、第1入力レジスタ(1)に入力
された第1オペランドの指数部と第2入力レジスタ
(2)に入力された第2オペランドの指数部の加減算を
行い、第1オペランド若しくは第2オペランドのうち、
桁合わせを施すオペランド及びシフト数の決定を行う加
減算器である。
【0012】(4)は、加減算器(3)における減算結
果を、仮数部の桁合わせを行うためのシフト数とするた
めに絶対値化する絶対値化回路である。
【0013】(5)は、第1入力レジスタ(1)から入
力される第1オペランドの仮数部に対して、加減算器
(3)における指数部の演算結果の符号及び絶対値化回
路(4)でのシフト数により桁合わせを行う第1シフタ
である。
【0014】(6)は、第2入力レジスタ(2)から入
力される第1オペランドの仮数部に対して、加減算器
(3)における指数部の演算結果の符号及び絶対値化回
路(4)でのシフト数により桁合わせを行う第2シフタ
である。
【0015】第1シフタ(5)及び第2シフタ(6)に
おける桁合わせは、第1オペランドの桁数が第2オペラ
ンドの桁数よりも大きい場合には、第2オペランドに対
してシフトが施され、また第2オペランドの桁数が第1
オペランドよりも大きい場合には、第1オペランドに対
してシフトが施される。
【0016】尚、浮動小数点乗算時には、シフトは行わ
れない。
【0017】(8)は入力レジスタ(1)及び(2)か
ら入力された、入力オペランドに対して乗算を行う乗算
器である。
【0018】(7)は第1入力レジスタ(1)及び第2
入力レジスタ(2)から入力され、桁合わせされた2つ
のオペランドに対して加減算、論理和、論理積などの算
術論理演算を行う演算回路(ALU)である。
【0019】(8)は第1入力レジスタ(1)及び第2
入力レジスタ(2)から入力された、2つの入力オペラ
ンド(仮数部)に対して乗算を行う乗算器である。
【0020】(9)は、演算回路(ALU)(7)、乗
算器(8)において演算された演算結果と入力された第
1オペランド及び第2オペランドの指数部を用いて出力
の正規化を行う正規化回路である。
【0021】(10)は、正規化回路(9)にて正規化
され出力された浮動小数点数値に対して、切り捨て、切
り上げ、あるいは四捨五入等の丸め処理を行う丸め処理
回路である。
【0022】斯様な回路において、指数部がバイアス表
現された浮動小数点数値の加算(減算)を実行する場合
には、入力されたオペランドの仮数部の桁合わせのため
に、加減算器(3)で第1オペランドの指数部と第2オ
ペランドの指数部の減算を行い、更にその減算結果に対
して、絶対値化回路(4)で絶対値化を行って、シフタ
におけるシフト数を算出する必要があった。
【0023】
【発明が解決しようとする課題】即ち、指数部がバイア
ス表現された浮動小数点数値の加算(減算)を行うため
には、第1オペランドの指数部と第2オペランドの指数
部の減算を行うための加減算器(3)と、指数部の演算
結果を絶対値化するための絶対値化するための絶対値化
回路(4)(通常加減算器で構成される)が必要であ
り、1つの命令を実行するために2つの演算器(加減算
器)が必要となる。
【0024】このため、従来の浮動小数点演算回路で
は、ハードウエア規模が大きくなり、回路の小型化を阻
む一要因となっていた。
【0025】
【課題を解決するための手段】本発明は、指数部と絶対
値表現された仮数部からなる数値をオペランドとして入
力し、オペランド間で演算を行う浮動小数点演算回路に
おいて、第1オペランドを入力する第1入力手段と、第
2オペランドを入力する第2入力手段と、第1入力手段
に入力された第1オペランドの指数部と第2入力手段に
入力された第2オペランドの指数部との減算を被減数の
入れ替えを可能に行う減算手段と、該減算手段により第
1オペランドの指数部から第2オペランドの指数部を減
算したときの減算結果の符号情報を記憶する記憶手段
と、前記減算手段での減算結果及び記憶手段に記憶され
た符号情報に従って、第1オペランドの仮数部をシフト
する第1シフト手段と、減算手段での減算結果及び記憶
手段に記憶された符号情報に従って、第2オペランドの
仮数部をシフトする第2シフト手段と、第1シフト手段
から第1オペランドの仮数部を入力し、第2シフト手段
から第2オペランドの仮数部を入力して、これら仮数部
の演算を行う演算手段とを備え、前記減算手段は、前記
記憶手段に記憶された符号情報が負の場合に第2オペラ
ンドの指数部から第1オペランドの指数部を減算するこ
とを特徴とする。
【0026】
【発明の実施の形態】図1に、本発明の浮動小数点演算
回路の一実施の形態の概略構成図を示す。
【0027】尚、図2と同じ部分には同一符号を付して
説明を省略する。
【0028】本発明の実施の形態が図2と異なるところ
は、絶対値化回路(4)は構成になく、加減算器(1
1)がオペランドの仮数部の桁合わせのためのシフト数
を決定するために、第1オペランドの指数部と第2オペ
ランドの指数部との減算を行う場合、被減数の入れ替え
が可能に、第1オペランドの指数部から第2オペランド
の指数部を減じる演算と、第2オペランドの指数部から
第1オペランドの指数部を減じる演算を選択的に行う減
算手段としての機能を有することである。
【0029】更に、本発明の実施の形態では、該加減算
器(11)により第1オペランドの指数部から第2オペ
ランドの指数部が減算されたときの減算結果の符号を符
号情報として正ならば”0”を、負ならば”1”を記憶
する記憶手段としての符号レジスタ(12)を備えてい
る。
【0030】この符号レジスタ(12)は、符号情報の
保持をシステムロック(CK)と逆位相のクロック(C
KB)(例え場1システムクロック中でHighからLowに
状態が変わるときにLowからHighに状態が変わるクロッ
ク)に同期して行う。
【0031】斯様な回路において、浮動小数点演算命令
実行時には、第1入力レジスタ(1)と第2入力レジス
タ(2)夫々に、クロック(CK)と同期して第1オペ
ランドと第2オペランドが入力されると、第1オペラン
ドの指数部と第2オペランドの指数部が加減算器(1
1)に入力され、第1オペランドの指数部から第2オペ
ランドの指数部を減じる演算が行われる。
【0032】この加減算器(11)における減算結果の
うち、符号情報(符号ビット)がクロック(CK)の逆
相のクロックである(CKB)に同期して符号レジスタ
(12)に取り込まれる。即ち、符号レジスタ(12)
はシステムサイクルの後半から状態が更新されることに
なる。
【0033】そして、符号レジスタ(12)に取り込ま
れた符号情報が、”0”(減算結果が正)のときには加
減算器(11)における減算結果はそのままの状態と
し、”1”(減算結果が負)のときには、加減算器(1
1)では、システムサイクルの後半において、第2オペ
ランドの指数部から第1オペランドの指数部を減じる演
算を実行して減算結果を指数部の減算結果とする。
【0034】このとき、第2オペランドの指数部からの
第1オペランドの指数部の減算結果は必ずゼロより大き
くなり、従って、システムサイクルは後半に加減算器
(11)から出力される減算結果は常に正となる。
【0035】次に、逆相クロック(CKB)に同期して
符号レジスタ(12)に保持されている第1オペランド
の指数部から第2オペランドの指数部を減算した結果の
符号情報とシステムサイクルの後半に加減算器(11)
から出力されているオペランドの指数部間の値により、
仮数部の桁合わせのためのシフトが第1シフタ(5)あ
るいあは第2シフタ(6)で行われる。
【0036】即ち、符号レジスタ(12)に保持されて
いる符号情報が、”0”(減算結果が正、第1オペラン
ドの指数部>第2オペランドの指数部)のときには、第
2シフタ(6)に格納された第2オペランドの仮数部に
対して、符号情報が”1”(減算結果が負、第1オペラ
ンドの指数部<第2オペランドの指数部)のときには第
1シフタ(5)に格納された第1オペランドの仮数部に
対して、加減算器(11)から出力される減算結果の値
の数だけシフト動作が施される。
【0037】例えば、加減算器(11)では12ビット
を扱い、第1第2オペランドの指数部は共に8ビットの
データであるとし、16進数表現で第1オペランドの指
数部が80H、第2オペランドの指数部が90Hの場合
には次のように処理が行われる。
【0038】システムサイクルの前半で、加減算器(1
1)で80H−90Hの演算が行われ、減算結果はFF
0Hとなり、逆相クロック(CKB)の立ち上がりで符
号レジスタ(12)に符号情報として”1”が保持され
る。符号レジスタ(12)に保持される符号情報が”
1”であるので、加減算器(11)ではシステムサイク
ルの後半で90H−80Hの演算が行われ、減算結果と
して10Hが出力される。
【0039】そして、符号レジスタ(12)に保持され
ている符号情報が”1”であるので、第1シフタ(5)
において、加減算器(11)から出力される減算結果の
値10Hに従って、第1オペランドの仮数部が16ビッ
トシフトされ、仮数部の桁合わせがなされる。
【0040】このように、桁合わせがされた第1オペラ
ンドの仮数部と第2オペランドの仮数部は、演算命令に
応じて、演算回路(ALU)(7)や乗算器(8)に入
力され、入力された2つのオペランドの仮数部に対する
演算が命令に応じて行われる。
【0041】演算回路(7)や乗算器(8)における仮
数部の演算結果は、加減算器(11)における指数部の
演算結果と共に正規化回路(9)に入力され、正規化回
路(9)で数値の正規化が行われ、更に丸め回路(1
0)で丸め処理が施されて浮動小数点の演算結果として
出力される。
【0042】
【発明の効果】本発明は、以上の説明から明らかなよう
に、第1オペランドの指数部と第2オペランドの指数部
との減算を被減数の入れ替えが可能に行える加減算器と
第1オペランドの指数部から第2オペランドの指数部を
減算した結果の符号情報を記憶しておく符号レジスタを
備えることにより、浮動小数点演算回路において仮数部
の桁合わせが必要な演算の実行時には、符号レジスタに
保持された符号情報に応じて加減算器かる常に正の減算
結果が出力され、その符号情報に応じて第1オペランド
か、第2オペランドのいずれかの仮数部に対して加減算
器から出力される減算結果の値だけ桁合わせのシフトが
行われる。
【0043】このため、桁合わせを行うためのシフト数
を絶対値化する絶対値化回路が不要になり、指数部演算
のための回路規模が縮小化できる。そして、浮動小数点
演算回路の規模の縮小を図ることができる。
【図面の簡単な説明】
【図1】本発明の浮動小数点演算回路の一実施の形態の
概略構成図である。
【図2】従来の浮動小数点演算回路の概略構成図であ
る。
【符号の説明】
1・・・・・第1入力レジスタ(第1入力手段) 2・・・・・第2入力レジスタ(第2入力手段) 5・・・・・第1シフタ(第1シフト手段) 6・・・・・第2シフタ(第2シフト手段) 7・・・・・演算回路(演算手段) 8・・・・・乗算器 9・・・・・正規化回路 10・・・・・丸め回路 11・・・・・加減算器(減算手段) 12・・・・・符号レジスタ(記憶手段)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 指数部と絶対値表現された仮数部からな
    る数値をオペランドとして入力し、オペランド間で演算
    を行う浮動小数点演算回路において、 第1オペランドを入力する第1入力手段と、第2オペラ
    ンドを入力する第2入力手段と、 第1入力手段に入力された第1オペランドの指数部と第
    2入力手段に入力された第2オペランドの指数部との減
    算を被減数の入れ替えを可能に行う減算手段と、 該減算手段により第1オペランドの指数部から第2オペ
    ランドの指数部を減算したときの減算結果の符号情報を
    記憶する記憶手段と、 前記減算手段での減算結果及び記憶手段に記憶された符
    号情報に従って、第1オペランドの仮数部をシフトする
    第1シフト手段と、減算手段での減算結果及び記憶手段
    に記憶された符号情報に従って、第2オペランドの仮数
    部をシフトする第2シフト手段と、 第1シフト手段から第1オペランドの仮数部を入力し、
    第2シフト手段から第2オペランドの仮数部を入力し
    て、これら仮数部の演算を行う演算手段とを備え、 前記減算手段は、前記記憶手段に記憶された符号情報が
    負の場合に第2オペランドの指数部から第1オペランド
    の指数部を減算することを特徴とする浮動小数点演算回
    路。
JP8107837A 1996-04-26 1996-04-26 浮動小数点演算回路 Pending JPH08263269A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8107837A JPH08263269A (ja) 1996-04-26 1996-04-26 浮動小数点演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8107837A JPH08263269A (ja) 1996-04-26 1996-04-26 浮動小数点演算回路

Publications (1)

Publication Number Publication Date
JPH08263269A true JPH08263269A (ja) 1996-10-11

Family

ID=14469310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8107837A Pending JPH08263269A (ja) 1996-04-26 1996-04-26 浮動小数点演算回路

Country Status (1)

Country Link
JP (1) JPH08263269A (ja)

Similar Documents

Publication Publication Date Title
US10019231B2 (en) Apparatus and method for fixed point to floating point conversion and negative power of two detector
JPH02196328A (ja) 浮動小数点演算装置
US5111421A (en) System for performing addition and subtraction of signed magnitude floating point binary numbers
US4758974A (en) Most significant digit location
US4594680A (en) Apparatus for performing quadratic convergence division in a large data processing system
GB2549153B (en) Apparatus and method for supporting a conversion instruction
JP2822399B2 (ja) 対数関数演算装置
US6598065B1 (en) Method for achieving correctly rounded quotients in algorithms based on fused multiply-accumulate without requiring the intermediate calculation of a correctly rounded reciprocal
JPH0346024A (ja) 浮動小数点演算器
JPH0540605A (ja) 浮動小数点乗算装置
JPH08263269A (ja) 浮動小数点演算回路
JPH04172526A (ja) 浮動小数点除算器
JPS63158626A (ja) 演算処理装置
JP2761145B2 (ja) 開平演算装置
JPH0251732A (ja) 浮動小数点演算器
JPH11102353A (ja) 浮動小数点積和演算器
JP4428778B2 (ja) 演算装置及び演算方法並びに計算装置
JP3100868B2 (ja) 浮動小数点数のための算術演算装置
JPS59136849A (ja) 除算装置
JP3124286B2 (ja) 浮動小数点数演算装置
JPH0285922A (ja) 演算回路
JP2792998B2 (ja) 加減算回路を用いた型変換装置
JPH0778724B2 (ja) 除算器
JPH0361224B2 (ja)
JPH0540609A (ja) 浮動小数点除算装置