JP2764975B2 - 精度つき浮動小数点数演算処理装置 - Google Patents
精度つき浮動小数点数演算処理装置Info
- Publication number
- JP2764975B2 JP2764975B2 JP63321253A JP32125388A JP2764975B2 JP 2764975 B2 JP2764975 B2 JP 2764975B2 JP 63321253 A JP63321253 A JP 63321253A JP 32125388 A JP32125388 A JP 32125388A JP 2764975 B2 JP2764975 B2 JP 2764975B2
- Authority
- JP
- Japan
- Prior art keywords
- mantissa
- precision
- point arithmetic
- error
- data
- 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 - Lifetime
Links
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピュータにおける浮動小数点数演算処理
装置に関し、特に精度情報を利用した浮動小数点数演算
処理装置に関する。
装置に関し、特に精度情報を利用した浮動小数点数演算
処理装置に関する。
従来の浮動小数点数演算処理装置は、入力および出力
するデータのすべてのディジットを有意ディジットとし
て扱っていた。すなわち入力および出力するデータは、
すべてそのデータ形式がもちうる最大限の精度をもつも
のとして演算を行っていた。その結果として従来の浮動
小数点数のデータ形式では、1つの実数は、1ビットの
符号,指数部,仮数部から構成されていた。このデータ
形式による浮動小数点数演算の世界的な標準の例とし
て、IEEE754標準がある。
するデータのすべてのディジットを有意ディジットとし
て扱っていた。すなわち入力および出力するデータは、
すべてそのデータ形式がもちうる最大限の精度をもつも
のとして演算を行っていた。その結果として従来の浮動
小数点数のデータ形式では、1つの実数は、1ビットの
符号,指数部,仮数部から構成されていた。このデータ
形式による浮動小数点数演算の世界的な標準の例とし
て、IEEE754標準がある。
上述した従来の浮動小数点数演算処理装置では近似計
算による丸め処理を繰り返しているので演算結果の精度
がどの程度落ちたかを知るには、本来の計算と別に誤差
解析を行う必要がある。また、誤差をもつデータの演算
も必要以上に高精度の演算を行うだけでなく、利用者に
とって十分な精度を保っているにもかかわらず、精度落
ち例外を発生する場合がある。さらに、精度と計算の高
速性は相反する要求であるが、たとえば一定の精度を保
証しながら最大限の高速性を発揮することが困難である
という欠点がある。
算による丸め処理を繰り返しているので演算結果の精度
がどの程度落ちたかを知るには、本来の計算と別に誤差
解析を行う必要がある。また、誤差をもつデータの演算
も必要以上に高精度の演算を行うだけでなく、利用者に
とって十分な精度を保っているにもかかわらず、精度落
ち例外を発生する場合がある。さらに、精度と計算の高
速性は相反する要求であるが、たとえば一定の精度を保
証しながら最大限の高速性を発揮することが困難である
という欠点がある。
本発明によれば、入力データとして符号,指数部,仮
数部の外に精度情報をもち、指数部演算部と、仮数部演
算部と精度情報演算部とを備え、精度を考慮した演算を
行った結果の値とその精度を、出力として出す浮動小数
点数演算装置を得る。
数部の外に精度情報をもち、指数部演算部と、仮数部演
算部と精度情報演算部とを備え、精度を考慮した演算を
行った結果の値とその精度を、出力として出す浮動小数
点数演算装置を得る。
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例のブロック図である。1は
演算前正規化器、2は指数部演算器、3は仮数部演算
器、4は精度部演算器、5は演算後正規化器である。ま
ず、演算データaとbが演算前正規化器1に渡される
と、演算前正規化器1は桁あわせなどの正規化を行った
後の符号sを演算後正規化器5に渡し、指数部dとeを
指数部演算器2に渡し、仮数部fとgを仮数部演算器3
に渡し、精度部hを仮数部演算器3と精度部演算器4に
渡す。指数部演算器2は演算結果iを演算後正規化器5
に渡す。仮数部演算器3は演算結果jを演算後正規化器
5に渡し、桁あふれなどの精度補正情報kを精度部演算
器4に渡す。精度演算器4は演算結果1を演算後正規化
器5に渡す。演算後正規化器5は最終的に得た結果を正
規化して出力する。
演算前正規化器、2は指数部演算器、3は仮数部演算
器、4は精度部演算器、5は演算後正規化器である。ま
ず、演算データaとbが演算前正規化器1に渡される
と、演算前正規化器1は桁あわせなどの正規化を行った
後の符号sを演算後正規化器5に渡し、指数部dとeを
指数部演算器2に渡し、仮数部fとgを仮数部演算器3
に渡し、精度部hを仮数部演算器3と精度部演算器4に
渡す。指数部演算器2は演算結果iを演算後正規化器5
に渡す。仮数部演算器3は演算結果jを演算後正規化器
5に渡し、桁あふれなどの精度補正情報kを精度部演算
器4に渡す。精度演算器4は演算結果1を演算後正規化
器5に渡す。演算後正規化器5は最終的に得た結果を正
規化して出力する。
第2図はこの本発明の一実施例のデータ形式である。
位取りの基数としては絶対値が1よりも大きい任意の複
素数を選べるが、ここでは簡単のため2進法として説明
する。1語のデータ長は32ビットで、これを1ビットの
符号,7ビットの指数部,20ビットの仮数部,4ビットの精
度部で構成するものを考える。
位取りの基数としては絶対値が1よりも大きい任意の複
素数を選べるが、ここでは簡単のため2進法として説明
する。1語のデータ長は32ビットで、これを1ビットの
符号,7ビットの指数部,20ビットの仮数部,4ビットの精
度部で構成するものを考える。
このデータが表現する値は誤差を含めて次の式で与え
られる。
られる。
(−1)s×1.m×2e±2e+p-21 ここで、sは0または1、eは整数、pは0以上の整
数、mは小数点以下の2進表現を表す。
数、mは小数点以下の2進表現を表す。
このデータ形式を用いれば、演算の実行時に各オペラ
ンドの誤差がわかっているので、桁あふれなどによる演
算結果の誤差も正確に求まる。また、利用者が要求する
精度の範囲内での(必要以上の仮数ビットを無視した)
高速演算を行うこともできる。
ンドの誤差がわかっているので、桁あふれなどによる演
算結果の誤差も正確に求まる。また、利用者が要求する
精度の範囲内での(必要以上の仮数ビットを無視した)
高速演算を行うこともできる。
第3図,第4図は本発明の他の実施例のデータ形式、
演算処理装置は第1図のものが用いられる。第1,2図の
一実施例と同じく2進法として説明する。1語のデータ
長は32ビットで、これを1ビットの符号,7ビットの指数
部,23ビットの仮数・精度部,1ビットの誤差判定ビット
で構成するものを考える。
演算処理装置は第1図のものが用いられる。第1,2図の
一実施例と同じく2進法として説明する。1語のデータ
長は32ビットで、これを1ビットの符号,7ビットの指数
部,23ビットの仮数・精度部,1ビットの誤差判定ビット
で構成するものを考える。
誤差判定ビットQが“0"の場合(第3図)、誤差のな
いデータとして扱われ、23ビットの仮数・精度部はすべ
て仮数として計算される。
いデータとして扱われ、23ビットの仮数・精度部はすべ
て仮数として計算される。
このデータが表現する値は誤差がなく、次の式で与え
られる。
られる。
(−1)s×1.m×2e 誤差判定ビットQが“1"の場合(第4図)、誤差をも
つデータとして扱われ、23ビットの仮数・精度部のうち
19ビットが仮数,4ビットが精度部として計算される。
つデータとして扱われ、23ビットの仮数・精度部のうち
19ビットが仮数,4ビットが精度部として計算される。
このデータが表現する値は誤差を含めて次の式で与え
られる。
られる。
(−1)s×1.m×2e±2e+p-20 記号の意味は第1,2図の一実施例と同じである。
このデータ形式を用いれば、第1,2図の一実施例と同
様の効果があるほか、誤差のないデータに対しては、従
来の精度部をもたない表現方式による演算と同程度の精
度をもたせることができる。
様の効果があるほか、誤差のないデータに対しては、従
来の精度部をもたない表現方式による演算と同程度の精
度をもたせることができる。
以上説明したように本発明の浮動小数点数演算処理装
置は、入力データとして精度情報をもち、精度考慮した
演算を行った結果の値とその精度を、出力として出す命
令をもつことにより、近似計算による丸め処理を繰り返
すことによって演算結果の精度がどの程度落ちたかをた
やすく知ることができ、さらに、たとえば一定の精度を
保証しながら最大限の高速性を発揮することができると
いう効果がある。
置は、入力データとして精度情報をもち、精度考慮した
演算を行った結果の値とその精度を、出力として出す命
令をもつことにより、近似計算による丸め処理を繰り返
すことによって演算結果の精度がどの程度落ちたかをた
やすく知ることができ、さらに、たとえば一定の精度を
保証しながら最大限の高速性を発揮することができると
いう効果がある。
第1図は本発明の一実施例のブロック図である。第2図
は本発明の一実施例に用いるデータ形式、第3図,第4
図は本発明の他の実施例に用いるデータ形式である。 1……演算前正規化器、2……指数部演算器、3……仮
数部演算器、4……精度部演算器、5……演算後正規化
器、a,b……演算データ、s……符号、d,e……指数部、
f,g,m……仮数部、h,p……精度部、i……指数演算結
果、j……仮数部演算結果、k……精度補正情報、l…
…精度部演算結果。
は本発明の一実施例に用いるデータ形式、第3図,第4
図は本発明の他の実施例に用いるデータ形式である。 1……演算前正規化器、2……指数部演算器、3……仮
数部演算器、4……精度部演算器、5……演算後正規化
器、a,b……演算データ、s……符号、d,e……指数部、
f,g,m……仮数部、h,p……精度部、i……指数演算結
果、j……仮数部演算結果、k……精度補正情報、l…
…精度部演算結果。
Claims (1)
- 【請求項1】符号,指数部,仮数部ならびに誤差判定情
報を含んだ入力データを受けて、前記指数部および前記
仮数部の演算を行って出力データを出力する精度つき浮
動小数点数演算装置において、前記演算を行うとき、前
記誤差判定情報が前記入力データに誤差のないことを示
している場合は前記仮数部の全てのビットを仮数値とし
て演算し、前記誤差判定情報が前記入力データに誤差が
あることを示している場合は前記仮数部の所定のビット
を精度情報として演算して前記出力データに加えること
を特徴とする精度つき浮動小数点数演算装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63321253A JP2764975B2 (ja) | 1988-12-19 | 1988-12-19 | 精度つき浮動小数点数演算処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63321253A JP2764975B2 (ja) | 1988-12-19 | 1988-12-19 | 精度つき浮動小数点数演算処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02165225A JPH02165225A (ja) | 1990-06-26 |
JP2764975B2 true JP2764975B2 (ja) | 1998-06-11 |
Family
ID=18130516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63321253A Expired - Lifetime JP2764975B2 (ja) | 1988-12-19 | 1988-12-19 | 精度つき浮動小数点数演算処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2764975B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9588845B2 (en) * | 2014-02-10 | 2017-03-07 | Via Alliance Semiconductor Co., Ltd. | Processor that recovers from excessive approximate computing error |
JP2022016795A (ja) | 2020-07-13 | 2022-01-25 | 富士通株式会社 | 情報処理装置、情報処理プログラムおよび情報処理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63113726A (ja) * | 1986-10-31 | 1988-05-18 | Hitachi Ltd | 演算処理装置 |
-
1988
- 1988-12-19 JP JP63321253A patent/JP2764975B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH02165225A (ja) | 1990-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230342112A1 (en) | Decimal floating-point round-for-reround instruction | |
Coonen | An implementation guide to a proposed standard for floating-point arithmetic | |
US5892697A (en) | Method and apparatus for handling overflow and underflow in processing floating-point numbers | |
US5042001A (en) | Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier | |
US9608662B2 (en) | Apparatus and method for converting floating-point operand into a value having a different format | |
US7890558B2 (en) | Apparatus and method for precision binary numbers and numerical operations | |
US20030236651A1 (en) | Floating point number storage method and floating point arithmetic device | |
US6205461B1 (en) | Floating point arithmetic logic unit leading zero count using fast approximate rounding | |
JPS584369B2 (ja) | デイジツトの有効性追跡装置 | |
JP2764975B2 (ja) | 精度つき浮動小数点数演算処理装置 | |
EP0162348A2 (en) | A method for extending the exponent range in a floating point processor | |
Sasidharan et al. | VHDL Implementation of IEEE 754 floating point unit | |
CN113625990B (zh) | 浮点转定点装置、方法、电子设备及存储介质 | |
US20050289208A1 (en) | Methods and apparatus for determining quotients | |
US20220137925A1 (en) | Device and method for hardware-efficient adaptive calculation of floating-point trigonometric functions using coordinate rotate digital computer (cordic) | |
Cowlishaw | General decimal arithmetic specification | |
Vujicic et al. | Predetermination of the quantization error in digital measurement systems | |
US6128636A (en) | Method for interfacing floating point and integer processes in a computer system | |
EP2884403A1 (en) | Apparatus and method for calculating exponentiation operations and root extraction | |
LaMeres | Floating-Point Systems | |
JP2513354B2 (ja) | 浮動小数点演算補助回路 | |
JPH03100722A (ja) | 精度変換命令の処理方式 | |
KR20230090254A (ko) | 부동 소수점 연산 방법 및 장치 | |
Fahmy | Decimal Floating Point Number System | |
JP2004078886A (ja) | 浮動小数点格納方法及び浮動小数点演算装置 |