JPH0291724A - 演算装置 - Google Patents

演算装置

Info

Publication number
JPH0291724A
JPH0291724A JP63246917A JP24691788A JPH0291724A JP H0291724 A JPH0291724 A JP H0291724A JP 63246917 A JP63246917 A JP 63246917A JP 24691788 A JP24691788 A JP 24691788A JP H0291724 A JPH0291724 A JP H0291724A
Authority
JP
Japan
Prior art keywords
mode
data format
floating point
bit
numbers
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
JP63246917A
Other languages
English (en)
Inventor
Akira Katsuno
昭 勝野
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63246917A priority Critical patent/JPH0291724A/ja
Publication of JPH0291724A publication Critical patent/JPH0291724A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔目次〕 概要 産業上の利用分野 従来の技術        (第4〜6図)発明が解決
しようとする課題 課題を解決するための手段 作用 実施例 本発明の一実施例    (第1〜3図)発明の効果 〔概要〕 演算装置に関し、 正規化数よりも大きい方向にもダイナミックレンジを拡
張して演算の精度を高めることのできる演算装置を提供
することを目的とし、 所定の外部データ形式により浮動小数点表記法による指
数部と仮数部で表される2つの数について、該外部デー
タ形式の指数部に1ビットを追加した内部データ形式に
よりダイナミックレンジを拡張して演算を行い、少なく
とも該演算結果を、追加した1ビットの値に応じてデー
タ変換手段により内部データ形式から外部データ形式に
変換して出力する演算装置において、前記1ビットの追
加により正規化数よりも小さい数値を拡張する第1のモ
ードと、正規化数よりも大きい数値を拡張する第2のモ
ードとを設け、前記データ変換手段は、2つの数の演算
内容に応じて第1のモードまたは第2のモードを切り換
え、外部データ形式と内部データ形式との変換を行うよ
うに構成する。
〔産業上の利用分野〕
本発明は、浮動小数点表記法の数値について演算を行う
演算装置に係り、特に、浮動小数点演算器の内部データ
形式におけるダイナミックレンジの拡張を図る演算装置
に関する。
固定小数点表現では、表現できる数の範囲が狭いため非
常に大きな数を表すことができない。また、固定小数点
表現は通常整数のみを扱うことが多く、したがって科学
技術計算などに必要な実数を表すための表記法が別に必
要となる。このようなことから、仮数と指数と呼ばれる
2つの数を組み合わせた浮動小数点表記法(float
ing pointrepresen ta t to
n)が考察された。
−船釣な浮動小数点は、基数(ra+Hx)がRのとき
、次のように示される。
(−1)3 ・m−R” ここに、Sは符号(sign)で、正のとき5=O1負
のときs=1である。また、mとeはそれぞれ仮数(m
antissa)、指数(exponen t)であり
、これらを固定小数点で表したものを組み合わせたせの
がコンピュータ内の浮動小数点表現である。なお、浮動
小数点表現では、仮数mの長さが有効けたの長さを決め
るので、精度の良い数値を必要とする場合は、仮数部の
長さを大きくした表現が用いられる。
このような浮動小数点演算は、整数演算と比べ、ダイナ
ミックレンジが広く精度も高く、特に、近時は各種の高
度な演算要求に沿うように高速のものが求められる傾向
にある。
〔従来の技術〕
現在、最も広く使われている2進の浮動小数点規格は、
IEEE、、DEC,IBM、MIL−3T D −1
750Aの4つである。いずれも単精度の浮動小数点を
32ビットの語長で表している。いずれの規格も倍精度
データをサポートしており、なかには拡張形式の単精度
や拡張形式の倍精度など他のデータの形式をサポートし
ているものもある。
このうち、rEEEの作業グループは、ANSI/IE
EE Std 754−1985 (規格書)に示す仕
様を、移植性の高い浮動小数点ソフト用の強力な規格と
して提案している。この規格提案は広い支持を受けてお
り、今後作られるハードウェアの大部分の基本になって
いくと考えられる。
現在一般に使用されているI EEE浮動小数点規格の
単精度データ形式(以下、タイプAという)は第4図の
ように示される。浮動小数点データは同図(a)のよう
に符号(S)、指数(e)、仮数(f)からなり、これ
は32ビットの例である。また、表現できるデータは同
図(b)に示すように、非数(SNaN XQNaN)
 、無限大(+INF 。
INF)、正規化数、非正規化数およびゼロ< +0、
−〇)である。非正規化数は、指数はゼロで仮数の隠れ
ビットがゼロである。このため、非正規化数の演算は複
雑である。さらに、非正規化数の指数のダイナミックレ
ンジは223しか得られず、これに対処するため、指数
に1ビット追加するいわゆるゲタバキ表現方法が知られ
ている。このようなゲタバキ表現の指数の最小値はゼロ
であるが、それ以下を2つの補数と解釈して、正規化数
より小さな数を扱う。追加した1ビットは2つの補数表
現の符号ビットに用いる。このように表現された正規化
数よりも小さい数をラップ数Wという。うツブ数Wを追
加したデータ形式(以下、タイプBという)は第5図の
ように示され、これは33ビットとなっている。
タイプBを用いた従来の浮動小数点演算装置としては、
例えば第6図に示すようなものがある。
同図において、浮動小数点演算器1は浮動小数点演算ユ
ニット2、レジスタファイル3および出力変換回路4か
ら構成され、各回路間はデータバス5により接続される
。図中ではデータバスの1つについて5の符号を付して
示し、バス上の数字はビット数を表す。
浮動小数点演算ユニット2はラップ数Wを含めて33ビ
ットで浮動小数点の演算を行い、レジスタファイル3は
演算に必要なデータや結果を記憶する。出力変換回路4
はラップ数Wの値に応じて内部データ形式(33ビット
)から外部のデータ形式(32ビット)に変換するもの
で、次表に示すような機能を有している。
表1 そして、出力データは32ビットとして外部に取り出さ
れる。
〔発明が解決しようとする課題] しかしながら、このような従来の浮動小数点演算器にあ
っては、タイプBのデータ形式を用いて浮動小数点の演
算を行っており、ラップ数Wは正規化数とゼロの間の数
を表す(後述の第3図参照)ので、ゼロ方向にダイナミ
ックレンジを大きくすることはできるものの、正規化数
よりも大きい方向についてはダイナミックレンジは何ら
変化させることができない。すなわち、タイプAに対し
て1ビットを追加しても一方向にしかダイナミックレン
ジを拡張することができるのみであり、これ以上演算精
度を高めることができないという問題点があった。
そこで、本発明は、正規化数よりも大きい方向にもダイ
ナミックレンジを拡張して演算の精度を高めることので
きる演算装置を提供することを目的としている。
〔課題を解決するための手段〕
本発明による演算装置は上記目的達成のため、と、所定
の外部データ形式により浮動小数点表記法による指数部
と仮数部で表される2つの数について、該外部データ形
式の指数部に1ビットを追加した内部データ形式により
ダイナミックレンジを拡張して演算を行い、少な(とも
該演算結果を追加した1ビットの値に応じてデータ変換
手段により内部データ形式から外部データ形式に変換し
て出力する演算装置において、前記1ビットの追加によ
り正規化数よりも小さい数値を拡張する第1のモードと
、正規化数よりも大きい数値を拡張する第2のモードと
を設け、前記データ変換手段は、2つの数の演算内容に
応じて第1のモードまたは第2のモードを切り換え、外
部データ形式と内部データ形式との変換を行うようにし
ている。
〔作用〕
本発明では、1ビットの追加により正規化数よりも小さ
い数値(ラップ数)を拡張する第1のモードと、正規化
数よりも大きい数値(拡張数)を拡張する第2モードと
が設けられ、データ変換手段により2つの数の演算内容
に応じて第1のモードまたは第2のモードが切り換えら
れ、外部データ形式と内部データ形式との変換が行われ
る。
したがって、実行するアプリケーションプログラムによ
って適切なモードが選択されて演算におけるダイナミッ
クレンジが拡大され、演算精度が高められる。
〔実施例〕
以下、本発明を図面に基づいて説明する。
第1〜3図は本発明に係る演算装置の一実施例を示す図
である。まず、構成を説明する。第1図は浮動小数点演
算器10の構成を示すブロック図であり、この図におい
て、浮動小数点演算器10は浮動小数点演算ユニット1
1、レジスタファイル12、入力変換回路13および出
力変換回路14により構成され、各回路間は33ビット
のデータバス15により接続される。図中では、データ
バスの1つについて15の符号を付して示し、バス上の
数字はビット数を表している。なお、アドレスや制御信
号のためのバスは省略している。
浮動小数点演算ユニット11は第2図(a)に示すデー
タ形式および同図(b)に示すようなデータ内容を有す
る33ビットの内部データ形式、すなわち正規化数より
も大きい数値(拡張数)を拡張する第2のモードと、従
来と同様の第4図(a)(b)に示すような正規化数よ
りも小さい数値(ラップ数)を拡張する第1のモードと
の2つの内部データ形式によって浮動小数点の演算を行
う。
レジスタファイル12は演算に必要な数値、データ、オ
ペランド等の記憶や演算結果の一時記憶等を行う。入力
変換回路13は外部のデータバスから与えられる32ビ
ットのデータ(外部データ形式のデータ)に対して選択
信号SELに基づいて1ビットを追加して第1のモード
あるいは第2のモードを選択して33ビットの内部デー
タ形式に変換してレジスタファイル12に出力する。具
体的には、選択信号SELの値に応じて次の表2で示す
ように入力データの指数eを調べてWの値を決定する。
なお、選択信号SELは5EL=Oのとき第1のモード
(ラップ数)をセレクトし、“1°°のとき第2のモー
ド(拡張数)をセレクトする。
表2 一方、出力変換回路14はレジスタファイル12から与
えられる33ビットのデータに対して選択信号SELに
基づいて1ビットを削除し、32ビットのデータに変換
して外部に出力する。具体的には、ラップ数Wの値およ
び選択信号SELの値に応じて次の表3で示すような処
理を行って32ビットのデータを出力する。
表3 上記入力変換回路13および出力変換回路14は全体と
してデータ変換手段16を構成する。
次に、作用を説明する。
いま、外部のアプリケーションプログラムで演算すべき
2つの数が与えられると、演算の種類により第1のモー
ドあるいは第2のモードのうちのどちらを選択するのが
適切かが判断され、その判断結果に応じて選択信号SE
Lが°“0”又は1”にセレクトされて入力変換回路1
3および出力変換回路14に与えられる。これにより、
外部データ形式の32ビットのデータが入力変換回路1
3により33ビットの内部データ形式に変換され、浮動
小数点演算ユニット11およびレジスタファイル12に
よって浮動小数点の演算が行われる。この演算結果はレ
ジスタファイル12に保持され、出力変換回路14によ
って再びデータ形式が33ビットから32ビットに変換
されて外部に出力される。このとき、出力変換口14は
、例えばW=0のときはWを切り捨てて残りの32ビッ
トを出力し、一方、W=1のときは選択信号SELの値
に応じてデイフォルト値(例えば、ラップ数のときはゼ
ロか非正規化数、拡張数のときは無限大か最大の正規化
数)を出力する。したがって、ラップ数、拡張数、正規
化数、第1、第2のモード等の関係は第3図に示すよう
になり、内部データ形式ではアプリケーションプログラ
ムの内容によって第1のモードあるいは第2のモードが
選択されることで演算のダイナミックレンジが拡大しく
特に、正規化数よりも大きい方向)、高精度の演算を実
行することができ、その後再び元の外部データ形式(3
2ビット)に戻して外部に転送するので、外部とのイン
ターフェースにも全く支障はない。
〔発明の効果〕
本発明によれば、ラップ数を扱う第1のモードと、拡張
数を扱う第2のモードの2つを、実行するアプリケーシ
ョンプログラムで適切に切り換えているので、正規化数
よりも小さい方向のダイナミックレンジを拡張しつつ、
さらに正規化数よりも大きい方向にもダイナミックレン
ジを拡張することができ、浮動小数点演算の精度を高め
ることができる。
【図面の簡単な説明】
第1〜3図は本発明に係る演算装置の一実施例を示す図
であり、 第1図はその浮動小数点演算器のブロック図、第2図は
その第2のモードのデータ形式を示す図、 第3図はそのダイナミックレンジを示す図、第4〜6図
は従来の浮動小数点演算装置を示す図であり、 第4図はそのタイプAのデータ形式を示す図、第5図は
そのタイプBのデータ形式を示す図、第6図はその浮動
小数点演算器のブロック図である。 10・・・・・・浮動小数点演算器、 11・・・・・・浮動小数点演算ユニット、12・・・
・・・レジスタファイル、 13・・・・・・入力変換回路、 14・・・・・・出力変換回路、 15・・・・・・データバス、 16・・・・・・データ変換手段。 入出力データ 1゜ 一実施例の浮動小数点演算器のブロック図第1図

Claims (1)

  1. 【特許請求の範囲】 所定の外部データ形式により浮動小数点表記法による指
    数部と仮数部で表される2つの数について、 該外部データ形式の指数部に1ビットを追加した内部デ
    ータ形式によりダイナミックレンジを拡張して演算を行
    い、 少なくとも該演算結果を、追加した1ビットの値に応じ
    てデータ変換手段により内部データ形式から外部データ
    形式に変換して出力する演算装置において、 前記1ビットの追加により正規化数よりも小さい数値を
    拡張する第1のモードと、正規化数よりも大きい数値を
    拡張する第2のモードとを設け、前記データ変換手段は
    、2つの数の演算内容に、応じて第1のモードまたは第
    2のモードを切り換え、外部データ形式と内部データ形
    式との変換を行うようにしたことを特徴とする演算装置
JP63246917A 1988-09-28 1988-09-28 演算装置 Pending JPH0291724A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63246917A JPH0291724A (ja) 1988-09-28 1988-09-28 演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63246917A JPH0291724A (ja) 1988-09-28 1988-09-28 演算装置

Publications (1)

Publication Number Publication Date
JPH0291724A true JPH0291724A (ja) 1990-03-30

Family

ID=17155675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63246917A Pending JPH0291724A (ja) 1988-09-28 1988-09-28 演算装置

Country Status (1)

Country Link
JP (1) JPH0291724A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0714819A (ja) * 1993-06-23 1995-01-17 Nec Corp 基板乾燥装置
US5535442A (en) * 1992-12-25 1996-07-09 Kabushiki Kaisha Kenwood FM tuner having improved tuning speed
JP2003529124A (ja) * 1999-07-30 2003-09-30 ミップス テクノロジーズ インコーポレイテッド 乗算−加算演算用高精度プロセッサ

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535442A (en) * 1992-12-25 1996-07-09 Kabushiki Kaisha Kenwood FM tuner having improved tuning speed
JPH0714819A (ja) * 1993-06-23 1995-01-17 Nec Corp 基板乾燥装置
JP2003529124A (ja) * 1999-07-30 2003-09-30 ミップス テクノロジーズ インコーポレイテッド 乗算−加算演算用高精度プロセッサ

Similar Documents

Publication Publication Date Title
JP3076046B2 (ja) 例外検出回路
JP2662196B2 (ja) 演算結果正規化方法及び装置
US6138135A (en) Propagating NaNs during high precision calculations using lesser precision hardware
US5469377A (en) Floating point computing device for simplifying procedures accompanying addition or subtraction by detecting whether all of the bits of the digits of the mantissa are 0 or 1
JPH04127364A (ja) 積和算器
JP3178746B2 (ja) 浮動小数点数のためのフォーマット変換装置
JPH08234962A (ja) 24ビットおよび16ビット算術演算の双方を実行するための装置および方法
KR960003044B1 (ko) 수치표현 변환장치 및 그것을 사용한 벡터ㆍ프로세서ㆍ유니트
JPH038018A (ja) 符号付き絶対値加減算器
US5687106A (en) Implementation of binary floating point using hexadecimal floating point unit
JP3313560B2 (ja) 浮動小数点演算処理装置
US5337265A (en) Apparatus for executing add/sub operations between IEEE standard floating-point numbers
JPS6125245A (ja) 丸め処理回路
JPH0568725B2 (ja)
JPH0291724A (ja) 演算装置
JP2695178B2 (ja) 演算回路
JPH0346024A (ja) 浮動小数点演算器
JPH09231201A (ja) 浮動小数点乗算累算装置
JP2555135B2 (ja) 演算回路
JP3137131B2 (ja) 浮動小数点乗算器及び乗算方法
JPH0216632A (ja) 固定小数点数−浮動小数点数変換回路
JPH0251732A (ja) 浮動小数点演算器
JPH0469734A (ja) 浮動小数点加減算のアンダーフロー例外発生予測回路
JPH01232424A (ja) 演算回路
JP3272033B2 (ja) 張り付け機能付きシフタ回路