JPH03282926A - 浮動小数点数演算装置 - Google Patents
浮動小数点数演算装置Info
- Publication number
- JPH03282926A JPH03282926A JP2084721A JP8472190A JPH03282926A JP H03282926 A JPH03282926 A JP H03282926A JP 2084721 A JP2084721 A JP 2084721A JP 8472190 A JP8472190 A JP 8472190A JP H03282926 A JPH03282926 A JP H03282926A
- Authority
- JP
- Japan
- Prior art keywords
- mantissa
- precision
- exponent
- numerical data
- double
- 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.)
- Granted
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
この発明は、浮動小数点数値データを処理する加減算装
置、すなわち浮動小数点数演算装置に関する。
置、すなわち浮動小数点数演算装置に関する。
(従来の技術)
符号付絶対値表現に於いて浮動小数点数値は、指数部、
仮数部、仮数部の符号によつ、て表わされる。例えばI
EEE754規格の倍精度数D(64bit)及び、単
精度数S (32b i t)は、次の様に表現される
。
仮数部、仮数部の符号によつ、て表わされる。例えばI
EEE754規格の倍精度数D(64bit)及び、単
精度数S (32b i t)は、次の様に表現される
。
D= (−1)”Xi、fx2°−1023sho
or 1 (lbit)f:ooo・・・0
0〜111・・・11(52bit) e−0〜2047 (11b i t)S−(
−1) Sxi、fx2°−127s:Oor 1
(lbit)f : 000・・・00〜11
1・・・11(23b i t) e−C1〜255 (8b i t)ここで
、Sは仮数部の符号であり、D(またはS)が正の時0
1負の時1である。fは、仮数部の小数部であり、隠れ
ビットとなる整数部が1となるように正規化されている
。eは、指数部で、バイアス値として倍精度数で102
3.単精度数で127を本来の指数に加えたオフセット
表現で表わされる。第12図(+1)、(b)にそのフ
ォーマットを示す。
or 1 (lbit)f:ooo・・・0
0〜111・・・11(52bit) e−0〜2047 (11b i t)S−(
−1) Sxi、fx2°−127s:Oor 1
(lbit)f : 000・・・00〜11
1・・・11(23b i t) e−C1〜255 (8b i t)ここで
、Sは仮数部の符号であり、D(またはS)が正の時0
1負の時1である。fは、仮数部の小数部であり、隠れ
ビットとなる整数部が1となるように正規化されている
。eは、指数部で、バイアス値として倍精度数で102
3.単精度数で127を本来の指数に加えたオフセット
表現で表わされる。第12図(+1)、(b)にそのフ
ォーマットを示す。
浮動小数点数値演算は、整数値演算に比べ処理がはるか
に複雑であるため実行するには多くの時間を必要とする
。ハードウェア実装に於いては、演算の実行速度、精度
とコストとの間でトレード・オフが存在する。演算の高
速化、高精度化を図ると演算器は大規模なものになる。
に複雑であるため実行するには多くの時間を必要とする
。ハードウェア実装に於いては、演算の実行速度、精度
とコストとの間でトレード・オフが存在する。演算の高
速化、高精度化を図ると演算器は大規模なものになる。
特に仮数部の精度を上げるとビット幅が広くなり、演算
処理も複雑なため、仮数部演算器が演算器全体の大半を
占め比較的高価になる。一方、゛指数部演算器、符号部
演算器は、精度を上げてもビット数はそれほど増えない
。また演算が単純なため、これらが演算器全体に占める
割合もわずかである。
処理も複雑なため、仮数部演算器が演算器全体の大半を
占め比較的高価になる。一方、゛指数部演算器、符号部
演算器は、精度を上げてもビット数はそれほど増えない
。また演算が単純なため、これらが演算器全体に占める
割合もわずかである。
第16図は、従来の倍精度/単精度浮動小数点数演算装
置の一例を示す。図において、この演算装置は、符号演
算手段100.指数部演算手段101、仮数部演算手段
102を有しており、これらはいずれも倍精度数値デー
タを直接扱えるだけのビット幅を持つ演算器を実装して
いる。したかって、倍精度数値データ、単精度数値デー
タにかかわらず、最高速の場合で1クロツク毎に1組の
データを入力することができるので、1クロツク毎に1
つの演算結果を得ることができる。
置の一例を示す。図において、この演算装置は、符号演
算手段100.指数部演算手段101、仮数部演算手段
102を有しており、これらはいずれも倍精度数値デー
タを直接扱えるだけのビット幅を持つ演算器を実装して
いる。したかって、倍精度数値データ、単精度数値デー
タにかかわらず、最高速の場合で1クロツク毎に1組の
データを入力することができるので、1クロツク毎に1
つの演算結果を得ることができる。
この演算装置において、指数部演算手段101は例えば
指数部比較器103.指数部セレクタ104、加減算器
105およびインフレメンタ106から構成されており
、第12図(a)、(b)に示すビット幅eの信号Eの
入力により、指数部の演算を行う。仮数部演算装置10
2は、例えば仮数部交換器1071桁合わせシフタ10
8.反転回路109.加算器110.補数化回路111
゜正規化シフタ112.プライオリティ・エンコーダ1
13.丸め回路114および再正規化回路115からな
る。仮数部交換器107には第12図(a)、(b)に
しめすビット幅fの信号Fが人力され、仮数部の演算が
行われる。
指数部比較器103.指数部セレクタ104、加減算器
105およびインフレメンタ106から構成されており
、第12図(a)、(b)に示すビット幅eの信号Eの
入力により、指数部の演算を行う。仮数部演算装置10
2は、例えば仮数部交換器1071桁合わせシフタ10
8.反転回路109.加算器110.補数化回路111
゜正規化シフタ112.プライオリティ・エンコーダ1
13.丸め回路114および再正規化回路115からな
る。仮数部交換器107には第12図(a)、(b)に
しめすビット幅fの信号Fが人力され、仮数部の演算が
行われる。
このように従来の倍精度/単精度浮動小数点数演算装置
では、指数部演算手段101および仮数部演算手段10
2とも倍精度データを直接扱えるだけのビット幅を持つ
演算器を実装しているので、第12図(a)に示す倍精
度データS、E、Fが入力されると、各回路は所定の演
算を行って浮動小数点数を算出する。一方、単精度デー
タS、E。
では、指数部演算手段101および仮数部演算手段10
2とも倍精度データを直接扱えるだけのビット幅を持つ
演算器を実装しているので、第12図(a)に示す倍精
度データS、E、Fが入力されると、各回路は所定の演
算を行って浮動小数点数を算出する。一方、単精度デー
タS、E。
Fが入力されると、倍精度用の演算器の一部分を用いて
浮動小数点数の演算が行われる。したがって、この単精
度用のデータ演算の場合、比較的高価な仮数部演算器の
ビット幅の半分しか用いておらず、ハードウェア資源を
有効に利用していないという問題点があった。
浮動小数点数の演算が行われる。したがって、この単精
度用のデータ演算の場合、比較的高価な仮数部演算器の
ビット幅の半分しか用いておらず、ハードウェア資源を
有効に利用していないという問題点があった。
なお、この装置の各回路部分の詳細については、後述す
る本発明の詳細な説明部分で後述するものと類似である
ので、特にここでは説明しない。
る本発明の詳細な説明部分で後述するものと類似である
ので、特にここでは説明しない。
(発明が解決しようとする課題)
この様に従来の倍精度数値データを直接扱える倍精度/
単精度浮動小数点数演算装置では、単精度数値データの
演算時に於いて仮数部演算器のビット幅を約半分しか用
いておらず、ハードウェア資源を十分に利用していない
、という問題点があった。
単精度浮動小数点数演算装置では、単精度数値データの
演算時に於いて仮数部演算器のビット幅を約半分しか用
いておらず、ハードウェア資源を十分に利用していない
、という問題点があった。
本発明は、上記のような従来技術の欠点を解決するため
のもので、倍精度数値データを直接処理することができ
る演算器に比較的少ないハードウェアを付加することに
より、単精度数値データの演算を従来の2倍の速度で実
行可能な浮動小数点数演算装置を提供することを目的と
する。
のもので、倍精度数値データを直接処理することができ
る演算器に比較的少ないハードウェアを付加することに
より、単精度数値データの演算を従来の2倍の速度で実
行可能な浮動小数点数演算装置を提供することを目的と
する。
[発明の構成]
(課題を解決するための手段)
この発明では、上記目的を達成するために、倍精度数値
データを扱えるビット幅を有し、倍精度数値データの演
算を行う第1の演算モードと、単精度数値データの演算
を行う第2の演算モードと、フィールドを分割して用い
、各フィールドで異なる単精度数値データの演算を行う
第3の演算モードとで作動する仮数部演算手段を有する
ことを特徴とする浮動小数点数演算装置、を提供するこ
とを要旨とする。
データを扱えるビット幅を有し、倍精度数値データの演
算を行う第1の演算モードと、単精度数値データの演算
を行う第2の演算モードと、フィールドを分割して用い
、各フィールドで異なる単精度数値データの演算を行う
第3の演算モードとで作動する仮数部演算手段を有する
ことを特徴とする浮動小数点数演算装置、を提供するこ
とを要旨とする。
(作用)
倍精度数値データの演算を行う第1の演算モードでは、
第1の符号演算手段、第1の指数部演算手段、および仮
数部演算手段を用いて浮動少数点数の演算が行われ、単
精度数値データの演算を行う第2の演算モードでは、第
1.第2の符号演算手段のいずれかと、第1.第2の指
数部演算手段のいずれかと、さらに仮数部演算手段1を
用いて浮動小数点数の演算が行われる。さらに、1度に
2組の異なる単精度数値データの演算を行う第3の演算
モードでは、第1.第2の符号演算手段の両者と、第1
.第2の指数部演算手段の両者、および仮数部演算手段
とで2組の浮動小数点数の演算が行われる。
第1の符号演算手段、第1の指数部演算手段、および仮
数部演算手段を用いて浮動少数点数の演算が行われ、単
精度数値データの演算を行う第2の演算モードでは、第
1.第2の符号演算手段のいずれかと、第1.第2の指
数部演算手段のいずれかと、さらに仮数部演算手段1を
用いて浮動小数点数の演算が行われる。さらに、1度に
2組の異なる単精度数値データの演算を行う第3の演算
モードでは、第1.第2の符号演算手段の両者と、第1
.第2の指数部演算手段の両者、および仮数部演算手段
とで2組の浮動小数点数の演算が行われる。
(実施例)
第1図は、この発明の第1の実施例を示すブロック図で
ある。図示のようにこの装置は、仮数部演算手段1と、
倍精度/単精度兼用の第1の指数部演算手段2と、単精
度数値データ専用の第2の指数部演算手段31倍精度/
単精度兼用の第1の符号部演算手段59.および単精度
数値データ専用の第2の符号部演算手段60とで構成さ
れている。
ある。図示のようにこの装置は、仮数部演算手段1と、
倍精度/単精度兼用の第1の指数部演算手段2と、単精
度数値データ専用の第2の指数部演算手段31倍精度/
単精度兼用の第1の符号部演算手段59.および単精度
数値データ専用の第2の符号部演算手段60とで構成さ
れている。
仮数部演算手段1は、仮数部比較器(大小比較器)4.
仮数部交換器51桁合わせ回路(ノクレルシフタ)6.
ビット反転器7.加算器8.プライオリティ・エンコー
ダ9.および正規化回路10から構成されている。これ
ら各回路はいずれも第1、第2のフィールドに分割され
ているが、第1゜第2のフィールドを連結したモードで
も作動可能なようにされている。なお各回路の第1.第
2のフィールドへの分割は、少量の7X−ドウエアで簡
単に行うことができる。
仮数部交換器51桁合わせ回路(ノクレルシフタ)6.
ビット反転器7.加算器8.プライオリティ・エンコー
ダ9.および正規化回路10から構成されている。これ
ら各回路はいずれも第1、第2のフィールドに分割され
ているが、第1゜第2のフィールドを連結したモードで
も作動可能なようにされている。なお各回路の第1.第
2のフィールドへの分割は、少量の7X−ドウエアで簡
単に行うことができる。
第1の指数部演算手段2は、第1指数部比較器11、第
1指数部演算器12.第1指数部選択器(セレクタ)1
3からなり、これらはいずれも倍精度数値データを扱え
るビット数を実装している。
1指数部演算器12.第1指数部選択器(セレクタ)1
3からなり、これらはいずれも倍精度数値データを扱え
るビット数を実装している。
第2の指数部演算手段3は、第2指数部比較器14、第
2指数部演算器15.第2指数部セレクタ16からなり
、これらは少なくとも単精度数値データを扱えるビット
数を実装している。
2指数部演算器15.第2指数部セレクタ16からなり
、これらは少なくとも単精度数値データを扱えるビット
数を実装している。
第1の符号部演算手段59は倍精度数値データを扱える
ビット数を実装した第1符号部演算器62からなり、ま
た第2の符号部演算手段60は少なくとも単精度数値デ
ータを扱えるビ・ソト数を実装した第2指数部演算器6
3からなる。
ビット数を実装した第1符号部演算器62からなり、ま
た第2の符号部演算手段60は少なくとも単精度数値デ
ータを扱えるビ・ソト数を実装した第2指数部演算器6
3からなる。
次に上記装置の動作について説明する。
まず、倍精度数値データの演算を行う第1の演算モード
について説明する。第1図に示す装置には、第12図(
a)に示す倍精度の数値データが入力されている。仮数
部は、第1のフィールドと第2のフィールドを連結した
仮数部演算手段1に入力され、演算される。指数部は、
倍精度/単精度兼用の第1の指数部演算手段2で演算さ
れる。
について説明する。第1図に示す装置には、第12図(
a)に示す倍精度の数値データが入力されている。仮数
部は、第1のフィールドと第2のフィールドを連結した
仮数部演算手段1に入力され、演算される。指数部は、
倍精度/単精度兼用の第1の指数部演算手段2で演算さ
れる。
また、符号部は、倍精度/単精度兼用の第1の符号部演
算手段59で演算される。
算手段59で演算される。
次に単精度数値データの演算を行う第2の演算モードに
ついて説明する。第1図に示す演算装置には、第12図
(b)に示す単精度の数値データが入力されている。仮
数部は、第1のフィールドと第2のフィールドに分割し
た仮数部演算手段1に入力され、第1.第2のいずれか
のフィールドにおいて演算される。指数部は、倍精度/
単精度兼用の第1の指数部演算手段2.または単精度専
用の第2の指数部演算手段3のいずれかで演算される。
ついて説明する。第1図に示す演算装置には、第12図
(b)に示す単精度の数値データが入力されている。仮
数部は、第1のフィールドと第2のフィールドに分割し
た仮数部演算手段1に入力され、第1.第2のいずれか
のフィールドにおいて演算される。指数部は、倍精度/
単精度兼用の第1の指数部演算手段2.または単精度専
用の第2の指数部演算手段3のいずれかで演算される。
また、符号部は、倍精度/単精度兼用の第1の符号部演
算手段59.または単精度専用の第2の符号部演算手段
60のいずれかで演算される。
算手段59.または単精度専用の第2の符号部演算手段
60のいずれかで演算される。
最後に2組の異なる単精度数値データの演算を行う第3
の演算モードの場合について説明する。
の演算モードの場合について説明する。
第1図に示す演算装置には、第12図(c)に示すよう
な第1.第2の異なる2組の単精度数値データが入力さ
れている。仮数部は、第1のフィールドと第2のフィー
ルドに分割した仮数部演算手段1に入力され、各々独立
に第1のフィールドにおいて第1組の単精度数値データ
の演算を行い、第2のフィードにおいて第2の組の単精
度数値データの演算を行う。指数部は、倍精度/単精度
兼用の第1の指数部演算手段2.および単精度専用の第
2の指数部演算手段3で各々演算される。また、符号部
は、倍精度/単精度兼用の第1の符号演算手段59.お
よび単精度専用の第2の符号部演算手段60で各々演算
される。
な第1.第2の異なる2組の単精度数値データが入力さ
れている。仮数部は、第1のフィールドと第2のフィー
ルドに分割した仮数部演算手段1に入力され、各々独立
に第1のフィールドにおいて第1組の単精度数値データ
の演算を行い、第2のフィードにおいて第2の組の単精
度数値データの演算を行う。指数部は、倍精度/単精度
兼用の第1の指数部演算手段2.および単精度専用の第
2の指数部演算手段3で各々演算される。また、符号部
は、倍精度/単精度兼用の第1の符号演算手段59.お
よび単精度専用の第2の符号部演算手段60で各々演算
される。
このように第3の演算モードでは、異なる2組の単精度
数値データを並列に演算する事ができるので、従来の装
置に比べ、単精度数値データの演算速度が実質的に2倍
となる。なお、そのためのハードウェアの追加は、実装
ビット数が少ない単精度数値データ用の第2の符号部演
算手段60゜第2の指数部演算手段3と、仮数部演算手
段1を第1.第2のフィールドに分割する少量のハード
ウェアのみでよい。
数値データを並列に演算する事ができるので、従来の装
置に比べ、単精度数値データの演算速度が実質的に2倍
となる。なお、そのためのハードウェアの追加は、実装
ビット数が少ない単精度数値データ用の第2の符号部演
算手段60゜第2の指数部演算手段3と、仮数部演算手
段1を第1.第2のフィールドに分割する少量のハード
ウェアのみでよい。
なお、仮数部演算手段1では、一般に、1)仮数部の桁
合わせ処理、2)仮数部の真の加算/減算処理、3)丸
め処理、4)正規化処理、等が行われるが、各々の処理
手段の構成および処理順序により、仮数部演算手段は様
々な構成が考えられる。
合わせ処理、2)仮数部の真の加算/減算処理、3)丸
め処理、4)正規化処理、等が行われるが、各々の処理
手段の構成および処理順序により、仮数部演算手段は様
々な構成が考えられる。
次に、第1図の各部の構成を詳細に示す第2図以下の図
面を用いて、この発明の1実施例装置をより詳細に説明
する。
面を用いて、この発明の1実施例装置をより詳細に説明
する。
第2図の装置において、浮動小数点数の演算では、指数
部、仮数部、および仮数部の符号は、それぞれ異なる回
路で計算する事ができる。第2図は、仮数部演算手段1
.指数部演算手段2,3、および符号部演算手段59.
60を示したものである。この実施例は、IEEE75
4規格に準拠している。
部、仮数部、および仮数部の符号は、それぞれ異なる回
路で計算する事ができる。第2図は、仮数部演算手段1
.指数部演算手段2,3、および符号部演算手段59.
60を示したものである。この実施例は、IEEE75
4規格に準拠している。
この実施例の仮数部演算手段1は、真の加/減算処理を
行う前に丸め処理によるインクリメントの有無を判定し
、丸め処理と真の加/減算処理を同時に行うように構成
されている。
行う前に丸め処理によるインクリメントの有無を判定し
、丸め処理と真の加/減算処理を同時に行うように構成
されている。
装置には、符号付絶対値表現で表わされた第1オペラン
ド(仮数部Fl、指数部El、仮数部の符号S1)、第
2オペランド(仮数部F2.指数部E2.仮数部の符号
S2)、真の加/減算の何れを行なうかを示す加減制御
信号68.丸めモードを示す丸めモード信号69.演算
モードを示す信号61が入力されている。
ド(仮数部Fl、指数部El、仮数部の符号S1)、第
2オペランド(仮数部F2.指数部E2.仮数部の符号
S2)、真の加/減算の何れを行なうかを示す加減制御
信号68.丸めモードを示す丸めモード信号69.演算
モードを示す信号61が入力されている。
仮数部のフォーマットを第13図に示す。仮数部は、桁
あふれビットv、整数部の隠れビットN。
あふれビットv、整数部の隠れビットN。
最小有意桁の1ビツト下の値を表わすガードピッ)G、
Gのさらに1ビツト下の値を表わす丸めビットR,Rよ
り下の全ビットの論理和であるステイッキビットStが
拡張されている。
Gのさらに1ビツト下の値を表わす丸めビットR,Rよ
り下の全ビットの論理和であるステイッキビットStが
拡張されている。
加減算制御信号68は、真の加算を行うのか真の減算を
行うのかを示す信号であり、2つの仮数部の符号(+:
0.−:1)と演算モード(加算0、減算:1)との排
他的論理和である。丸めモード信号69とは、丸め処理
の種類を示す信号である。なお第14図に丸めモードの
1例を示す。
行うのかを示す信号であり、2つの仮数部の符号(+:
0.−:1)と演算モード(加算0、減算:1)との排
他的論理和である。丸めモード信号69とは、丸め処理
の種類を示す信号である。なお第14図に丸めモードの
1例を示す。
また、演算モード信号61は、倍精度演算、単精度演算
、単精度倍速演算の各モードを表わす信号である°(単
精度、単精度倍速演算の場合:11倍精度演算の場合二
〇)。
、単精度倍速演算の各モードを表わす信号である°(単
精度、単精度倍速演算の場合:11倍精度演算の場合二
〇)。
まず、第2図を用いて装置の各ブロックを説明する。指
数部比較回路11.14は、第1オペランドの指数部E
HI、ELIがら第2オペランドの指数部EH2,EL
2を減じて指数部大小比較信号33.35と指数部の差
信号32.34を求める。指数部比較回路11は単精度
/倍精度兼用であり、倍精度数の演算の場合は、指数部
は指数部比較回路11に於て比較される。指数部比較回
路14は、単精度専用の比較器であり、単精度倍速演算
を行う場合は、比較器11.14に於て各々独立に処理
を行う。また、指数部選択器13では、指数部大小比較
信号33によって大きい方の指数部27が選択される。
数部比較回路11.14は、第1オペランドの指数部E
HI、ELIがら第2オペランドの指数部EH2,EL
2を減じて指数部大小比較信号33.35と指数部の差
信号32.34を求める。指数部比較回路11は単精度
/倍精度兼用であり、倍精度数の演算の場合は、指数部
は指数部比較回路11に於て比較される。指数部比較回
路14は、単精度専用の比較器であり、単精度倍速演算
を行う場合は、比較器11.14に於て各々独立に処理
を行う。また、指数部選択器13では、指数部大小比較
信号33によって大きい方の指数部27が選択される。
指数選択器16では、指数部大小比較信号35によって
大きい方の指数部31が選択される。
大きい方の指数部31が選択される。
仮数部比較回路4は、第1オペランドの仮数部F1と第
2オペランドの仮数部F2の比較を行い、仮数部大小比
較信号36.36 .37を求める。
2オペランドの仮数部F2の比較を行い、仮数部大小比
較信号36.36 .37を求める。
第5図(a)は、仮数部比較器4の詳細図、第5図(b
)は、データの入力フォーマットである。
)は、データの入力フォーマットである。
この回路は、2段の木構造を成している。第一段目は、
6つの8ビツト・コンパレータ7oと1つの5ビツト・
コンパレータ71より構成される。
6つの8ビツト・コンパレータ7oと1つの5ビツト・
コンパレータ71より構成される。
各々のコンパレータは、8ビツト或は5ビット単位で各
フィールドの大小比較結果(例えば入力A。
フィールドの大小比較結果(例えば入力A。
Bに対しA>B、BAA)を示す2ビツトの信号を出力
する。第2段目は、2つの3ビツト・コンパレータ72
と1つの7ビツト・コンパレータ73より構成される。
する。第2段目は、2つの3ビツト・コンパレータ72
と1つの7ビツト・コンパレータ73より構成される。
7ビツト・コンパレータ73は、第1段目の全出力を入
力として倍精度数値の仮数部の大小比較を行い、比較信
号36′を出力スル。2つの3ビツト・コンパレータは
、各々第1フイールド、第2フイールドに入力された単
精度数値の仮数部FHIとFH2、及びFLIとFL2
の大小比較を行い、比較信号36.37を出力する。
力として倍精度数値の仮数部の大小比較を行い、比較信
号36′を出力スル。2つの3ビツト・コンパレータは
、各々第1フイールド、第2フイールドに入力された単
精度数値の仮数部FHIとFH2、及びFLIとFL2
の大小比較を行い、比較信号36.37を出力する。
仮数部交換回路5は、指数部大小比較信号33゜35と
仮数部大小比較信号36−.36.37により、第1オ
ペランド、第2オペランドの大小比較を行い、絶対値の
大きい方のオペランドの仮数部を仮数部19H,19L
、小さい方を仮数部20H,2OLとして出力する。大
小比較の論理は、以下の通りである。
仮数部大小比較信号36−.36.37により、第1オ
ペランド、第2オペランドの大小比較を行い、絶対値の
大きい方のオペランドの仮数部を仮数部19H,19L
、小さい方を仮数部20H,2OLとして出力する。大
小比較の論理は、以下の通りである。
(1)指数部の大きさが異なる場合は、指数部の大きい
方のオペランドをオランド1 9H,19Lとする (2)指数部の大きさが等しい場合は、仮数部の大きい
方のオペランドをオペランド 19H,19Lとする 第6図は、仮数部交換回路5の詳細図である。
方のオペランドをオランド1 9H,19Lとする (2)指数部の大きさが等しい場合は、仮数部の大きい
方のオペランドをオペランド 19H,19Lとする 第6図は、仮数部交換回路5の詳細図である。
仮数部交換回路5は、セレクタ74とセレクタυ制御回
路75より成る。セレクタ【よ、第1フィールド、第2
フイールドに分割されており、第1フイールド同士、或
は第2フイールド同士を交換する。
路75より成る。セレクタ【よ、第1フィールド、第2
フイールドに分割されており、第1フイールド同士、或
は第2フイールド同士を交換する。
制御回路75は、演算モード信号61.指数部大小比較
信号33,35、仮数部比較信号36.36 37によ
り交換制御信号55.56を出力する。倍精度演算の場
合は、第1フィールド、第2フイールドは一緒に交換し
、単精度、或(A単精度倍速演算の場合は独立に交換す
る。
信号33,35、仮数部比較信号36.36 37によ
り交換制御信号55.56を出力する。倍精度演算の場
合は、第1フィールド、第2フイールドは一緒に交換し
、単精度、或(A単精度倍速演算の場合は独立に交換す
る。
桁合わせ回路6は、仮数部20H,2OLを指数部の差
信号32或は信号34の数だけ右シフトシテ、仮数部1
9H,19Lに桁合わせし、仮数部21H,21Lとす
る。また、並行してステ・ツキ・ビットを生成する。第
7図は、桁合わせ回路6の詳細図である。桁合わせ回路
6番よ、第1フイールド、第2フイールドに分割可能な
右)くレル・シフタ76と2つのステッキ・ビ・ソト生
成器77より構成される。倍精度演算を行う場合は、第
1フイールドと第2フイールドは連結され、第2フイー
ルドのMSBには第1フイールドよりシフトアウトした
ビット列がシフトインされる。第1フイールドのMSB
には、0がシフトインされる。
信号32或は信号34の数だけ右シフトシテ、仮数部1
9H,19Lに桁合わせし、仮数部21H,21Lとす
る。また、並行してステ・ツキ・ビットを生成する。第
7図は、桁合わせ回路6の詳細図である。桁合わせ回路
6番よ、第1フイールド、第2フイールドに分割可能な
右)くレル・シフタ76と2つのステッキ・ビ・ソト生
成器77より構成される。倍精度演算を行う場合は、第
1フイールドと第2フイールドは連結され、第2フイー
ルドのMSBには第1フイールドよりシフトアウトした
ビット列がシフトインされる。第1フイールドのMSB
には、0がシフトインされる。
ステッキ・ビットは、第2フイールドのシフタよリシフ
トアウトしたビット列の論理和として求められる。単精
度、単精度倍速演算を行う場合は、。
トアウトしたビット列の論理和として求められる。単精
度、単精度倍速演算を行う場合は、。
演算モード信号61によりシフタを第1フイールド、第
2フイールドに分割して用いる。第1フイールド、第2
フイールドともMSBには0がシフトインされる。また
、ステッキ・ビットは、第1フイールド、第2フイール
ド各々よりシフトアウトしたビット列の論理和として求
める。
2フイールドに分割して用いる。第1フイールド、第2
フイールドともMSBには0がシフトインされる。また
、ステッキ・ビットは、第1フイールド、第2フイール
ド各々よりシフトアウトしたビット列の論理和として求
める。
反転回路7は、真の減算を行う場合に仮数部21H,2
1Lのビット反転を取る回路である。第1フイールド、
第2フイールドを独立に反転制御するため2つに分割さ
れた排他的論理和アレイとして構成される。
1Lのビット反転を取る回路である。第1フイールド、
第2フイールドを独立に反転制御するため2つに分割さ
れた排他的論理和アレイとして構成される。
丸め先見回路40は、仮数部の特定の部分と加減算制御
信号68.丸めモード信号69.第1オペランドの符号
、交換制御信号55.56の値により、演算後正規化が
不要であると仮定した場合に丸めによるインクリメント
が必要か否かを示す第1の丸め判定と正規化が必要であ
ると仮定した場合に丸めによるインクリメントが必要か
否かを示す第2の丸め判定を行なう(必要な場合に1)
。
信号68.丸めモード信号69.第1オペランドの符号
、交換制御信号55.56の値により、演算後正規化が
不要であると仮定した場合に丸めによるインクリメント
が必要か否かを示す第1の丸め判定と正規化が必要であ
ると仮定した場合に丸めによるインクリメントが必要か
否かを示す第2の丸め判定を行なう(必要な場合に1)
。
丸めによるインクリメントを行なうか否かは、正規化さ
れた仮数部の最小有意桁、その1つ下のビット、さらに
下の全ビットの論理和の3ビツトで決定できる。第15
図は、丸めモード別によるインクリメントの判定論理で
ある。また、丸めを行なう位置は演算後でないと決定で
きないが、その位置は真の加/減算とも各々第8図(c
)に示す2通りしかない。よって、両方の場合を仮定し
て各々の場合の解を求め、後で選択すればよい。
れた仮数部の最小有意桁、その1つ下のビット、さらに
下の全ビットの論理和の3ビツトで決定できる。第15
図は、丸めモード別によるインクリメントの判定論理で
ある。また、丸めを行なう位置は演算後でないと決定で
きないが、その位置は真の加/減算とも各々第8図(c
)に示す2通りしかない。よって、両方の場合を仮定し
て各々の場合の解を求め、後で選択すればよい。
丸め先見回路40は、第8図(a)に示した前記第1.
及び第2の丸め判定を行う回路より成る。
及び第2の丸め判定を行う回路より成る。
倍精度演算時には、仮数部の下位5ビツトの和によって
第1.第2の丸め判定を行う。また、単精度演算、単精
度倍速演算の場合は、第1フイールドの下位5ビツトの
和より第1フイールドに対する第1.第2の丸め判定を
行い、第2フイールドの下位5ビツトの和から第2フイ
ールドに対する第1.第2の丸め判定を行う。
第1.第2の丸め判定を行う。また、単精度演算、単精
度倍速演算の場合は、第1フイールドの下位5ビツトの
和より第1フイールドに対する第1.第2の丸め判定を
行い、第2フイールドの下位5ビツトの和から第2フイ
ールドに対する第1.第2の丸め判定を行う。
メイン加算器41は、第1オペランドの仮数部Fl、第
2オペランドの仮数部F2.第1の丸め判定値の加/減
算を行い、丸め後に正規化が生じないと仮定した場合の
解46H,46Lを求める。
2オペランドの仮数部F2.第1の丸め判定値の加/減
算を行い、丸め後に正規化が生じないと仮定した場合の
解46H,46Lを求める。
メイン加算器42は、第1オペランドの仮数部F1、第
2オペランドの仮数部F2.第2の丸め判定値の加/減
算を行い、丸め後に正規化が必要であると仮定した場合
の解47H,47Lを求める。
2オペランドの仮数部F2.第2の丸め判定値の加/減
算を行い、丸め後に正規化が必要であると仮定した場合
の解47H,47Lを求める。
第9図は、メイン加算器41の詳細図である。メイン加
算器42とメイン加算器41は、丸め判定信号の加算位
置が異なるだけで構成は同じである。
算器42とメイン加算器41は、丸め判定信号の加算位
置が異なるだけで構成は同じである。
メイン加算器41.42は、3人力加算器であり、初段
の全/半加算器アレイ78でC3A(carry 5
aved adder)を構成し、3つの入力値の加
算を行っている。第2段目79は、4ビツト毎にCLA
(carrylookahead adder)、さ
らに12゜或は16ビツト毎にC5A(carryse
lect adder)を構成し、最終加算を高速に
行っている。メイン加算器41.42は、演算モード信
号61により第1フイールドと第2フイールドに分割可
能である。倍精度演算時には、両フィールドを連結して
用いる。また、単精度。
の全/半加算器アレイ78でC3A(carry 5
aved adder)を構成し、3つの入力値の加
算を行っている。第2段目79は、4ビツト毎にCLA
(carrylookahead adder)、さ
らに12゜或は16ビツト毎にC5A(carryse
lect adder)を構成し、最終加算を高速に
行っている。メイン加算器41.42は、演算モード信
号61により第1フイールドと第2フイールドに分割可
能である。倍精度演算時には、両フィールドを連結して
用いる。また、単精度。
単精度倍速演算時には、分割して用いる。
解選択回路43は、2つのメイン加算器で求めた2つの
解の内、正しい方の解を選択するセレクタである。選択
回路は、第1フイールド、第2フイールド独立に制御可
能である。倍精度演算の場合は、第1フイールド、第2
フイールドを一緒に選択する。選択の論理は、次の通り
である。
解の内、正しい方の解を選択するセレクタである。選択
回路は、第1フイールド、第2フイールド独立に制御可
能である。倍精度演算の場合は、第1フイールド、第2
フイールドを一緒に選択する。選択の論理は、次の通り
である。
(1)加算を行った場合は、第1の加算器の解のあふれ
ビットVが1であれば第2の 加算器の解、0であれば第1の加算器 の解を選択する。
ビットVが1であれば第2の 加算器の解、0であれば第1の加算器 の解を選択する。
(2)減算を行った場合は、第1の加算器の解の隠れピ
ッ)Nが1であれば第1の加 算器の解、0であれば第2の加算器の 解を選択する。
ッ)Nが1であれば第1の加 算器の解、0であれば第2の加算器の 解を選択する。
プライオリティ・エンコーダ9は、正規化処理に於てシ
フトするステップ数38.39を出力する。第10図(
a)は、プライオリティ・エンコーダ9の詳細図である
。プライオリティ・エンコーダは、2段の木構造を成し
ている。第1段目80は、8つの8ビツトプライオリテ
イ・エンコーダ81から成り、8ビツト毎にエンコード
結果3ビツトを出力する。第2段目82は、2つの4ビ
ツトプライオリテイ・エンコーダ83から成り、4ビツ
ト毎にエンコード結果2ビツトを出力する。
フトするステップ数38.39を出力する。第10図(
a)は、プライオリティ・エンコーダ9の詳細図である
。プライオリティ・エンコーダは、2段の木構造を成し
ている。第1段目80は、8つの8ビツトプライオリテ
イ・エンコーダ81から成り、8ビツト毎にエンコード
結果3ビツトを出力する。第2段目82は、2つの4ビ
ツトプライオリテイ・エンコーダ83から成り、4ビツ
ト毎にエンコード結果2ビツトを出力する。
プライオリティ・エンコーダ9は、演算モード信号61
により分割可能である。倍速度演算の場合は、第10図
(b)に示すように仮数部23(V。
により分割可能である。倍速度演算の場合は、第10図
(b)に示すように仮数部23(V。
Stビットを除いた55ビツト)が入力され、6ビツト
のエンコード結果38を出力する。単精度。
のエンコード結果38を出力する。単精度。
単精度倍速演算の場合には分割して用い、第10図(b
)に示すように2つ単精度数の仮数部23H,23L
(V、S t ビットを除いた26ビツト)が入力され
る。ここで第2のフィールドには、第10図(a)に示
すように23Lが3ビツトシフトして入力され、5ビツ
トのエンコード結果38゜39が出力される。
)に示すように2つ単精度数の仮数部23H,23L
(V、S t ビットを除いた26ビツト)が入力され
る。ここで第2のフィールドには、第10図(a)に示
すように23Lが3ビツトシフトして入力され、5ビツ
トのエンコード結果38゜39が出力される。
正規化回路10は、隠れビットNが1になるように演算
結果23H,23Lを正規化するための回路である。第
11図は、正規化回路10の詳細図である。正規化回路
10は、1ビツト右シフタ84と左バレル・シフタ85
から構成される。正規化回路10は、演算モード信号6
1によって分割可能である。倍精度演算の場合は連結し
て用い、Vビットが1の時は1ビツト右シフト、Vビッ
トが0の時はシフト信号38の値だけ左にシフトされる
。単精度、単精度倍速演算の場合には、第1フイールド
、第2フイールドに分割して用い、各フィールドのVの
値によって1ビツト右シフト或は、シフト信号38.及
び39の値だけ左にシフトされる。何れの場合も0がL
SBにシフトインされる。
結果23H,23Lを正規化するための回路である。第
11図は、正規化回路10の詳細図である。正規化回路
10は、1ビツト右シフタ84と左バレル・シフタ85
から構成される。正規化回路10は、演算モード信号6
1によって分割可能である。倍精度演算の場合は連結し
て用い、Vビットが1の時は1ビツト右シフト、Vビッ
トが0の時はシフト信号38の値だけ左にシフトされる
。単精度、単精度倍速演算の場合には、第1フイールド
、第2フイールドに分割して用い、各フィールドのVの
値によって1ビツト右シフト或は、シフト信号38.及
び39の値だけ左にシフトされる。何れの場合も0がL
SBにシフトインされる。
指数演算器12.15は正規化によってシフトした分だ
け指数を調整する回路である。指数部演算器12は、単
精度/倍精度兼用であり、倍精度演算の場合は指数部演
算器12により指数57が計算される。すなわち正規化
により1ビツト右シフトした場合にはインクリメント、
nビット左シフトした場合にはnを指数27より減する
。単精度、単精度倍速演算部の場合には、指数演算器1
2.15で各々第1フイールド、第2フイールドの指数
57.58を同様にして計算する。
け指数を調整する回路である。指数部演算器12は、単
精度/倍精度兼用であり、倍精度演算の場合は指数部演
算器12により指数57が計算される。すなわち正規化
により1ビツト右シフトした場合にはインクリメント、
nビット左シフトした場合にはnを指数27より減する
。単精度、単精度倍速演算部の場合には、指数演算器1
2.15で各々第1フイールド、第2フイールドの指数
57.58を同様にして計算する。
符号部演算器62.63は、第1オペランドの符号部S
1より解の符号64.65を求める回路である。解の符
号64.65は、次のような論理で求める。
1より解の符号64.65を求める回路である。解の符
号64.65は、次のような論理で求める。
(1)真の加算を行った場合:解の符号は、Slに等し
い (2)真の減算を行った場合: 解が0でなく、仮数部の交換が起こら なかった場合: 81に等しい。
い (2)真の減算を行った場合: 解が0でなく、仮数部の交換が起こら なかった場合: 81に等しい。
解が0でなく、仮数部の交換が起こっ
た場合: 81の反転
解が0で、丸めモードが負方向丸めで
ある場合: 負
解が0で、負方向丸め以外の丸めモー
ドの場合: 正
次に、上記第2図に示す実施例の動作について説明する
。まず、倍精度数値データの演算を行う第1の演算モー
ドについて説明する。
。まず、倍精度数値データの演算を行う第1の演算モー
ドについて説明する。
倍精度数値データの計算では、仮数部演算手段1は連結
して動作する。指数部は、指数部演算手段2によって処
理される。また、符号部は、符号部演算手段59によっ
て処理される。第2図に示す演算装置には、第12図(
a)に示す倍精度の数値データが入力されている。仮数
部Fl、F2は、第13図(a)示すようなフォーマッ
トで入力される。まず指数部EHI、EH2は指数部比
較器11で比較され、指数の差信号32が求められる。
して動作する。指数部は、指数部演算手段2によって処
理される。また、符号部は、符号部演算手段59によっ
て処理される。第2図に示す演算装置には、第12図(
a)に示す倍精度の数値データが入力されている。仮数
部Fl、F2は、第13図(a)示すようなフォーマッ
トで入力される。まず指数部EHI、EH2は指数部比
較器11で比較され、指数の差信号32が求められる。
また、比較結果により大きい方の指数部27が選択され
る。仮数部Fl、F2は、仮数部比較器4に於て比較さ
れる。各々の比較結果により絶対値の大きい方のオペラ
ンドの仮数部が仮数部19として仮数部交換器5より出
力される。桁合わせ回路6では、小さい方のオペランド
の仮数部20が指数の差信号32の値に従い、右シフト
される。このとき並行してステッキ・ビットが生成され
る。真の減算を行う場合には、仮数部反転器7に於いて
、仮数部20の反転が取られる。仮数部の下位5ビツト
は丸め先見回路40に入力され、その和によって前記第
1.第2の丸め判定を行う。
る。仮数部Fl、F2は、仮数部比較器4に於て比較さ
れる。各々の比較結果により絶対値の大きい方のオペラ
ンドの仮数部が仮数部19として仮数部交換器5より出
力される。桁合わせ回路6では、小さい方のオペランド
の仮数部20が指数の差信号32の値に従い、右シフト
される。このとき並行してステッキ・ビットが生成され
る。真の減算を行う場合には、仮数部反転器7に於いて
、仮数部20の反転が取られる。仮数部の下位5ビツト
は丸め先見回路40に入力され、その和によって前記第
1.第2の丸め判定を行う。
コレら仮数部19.22および丸め判定の値45は、メ
イン加算器41.42に入力され、正規化が不必要であ
ると仮定した場合の第1の演算結果46と正規化が必要
であると仮定した場合の第2の演算結果47が計算され
る。解選択回路20は、第1の演算結果46のV、Nビ
ットの値により正しい解23を選択する。選択された解
23は、プライオリティ・エンコーダ9に入力され正規
化に必要なシフト数38が求められる。選択された解は
、正規化回路10に於いてシフト数38だけシフトされ
て、正規化される。また、シフト数38は、指数部演算
器12に入力され、解の指数57が計算される。符号部
は、符号部演算器62に於て、第1オペランドの符号部
S1より求められる。
イン加算器41.42に入力され、正規化が不必要であ
ると仮定した場合の第1の演算結果46と正規化が必要
であると仮定した場合の第2の演算結果47が計算され
る。解選択回路20は、第1の演算結果46のV、Nビ
ットの値により正しい解23を選択する。選択された解
23は、プライオリティ・エンコーダ9に入力され正規
化に必要なシフト数38が求められる。選択された解は
、正規化回路10に於いてシフト数38だけシフトされ
て、正規化される。また、シフト数38は、指数部演算
器12に入力され、解の指数57が計算される。符号部
は、符号部演算器62に於て、第1オペランドの符号部
S1より求められる。
次に単精度倍速演算である、第3の演算モードの場合に
ついて説明する。
ついて説明する。
なお、単精度演算を行なう第2の演算モードの場合は、
単精度倍速演算の場合と同時に処理するデータの数が異
なるだけで本質的に同じであるので、説明は省略する。
単精度倍速演算の場合と同時に処理するデータの数が異
なるだけで本質的に同じであるので、説明は省略する。
単精度倍速演算、単精度演算の場合は、仮数部演算手段
1を分割して用いる。
1を分割して用いる。
指数部は、指数部演算手段2.指数部演算手段3により
各々処理される。また、符号部は、符号部演算手段59
.符号部演算手段60により各々処理される。
各々処理される。また、符号部は、符号部演算手段59
.符号部演算手段60により各々処理される。
第2図に示す演算装置には、第12図(c)に示す単精
度の数値データが入力されている。仮数部は、第13図
(C)に示すようなフォーマットで第1の組、第2の組
のデータが仮数部演算手段の第1のフィールドと第2の
フィールドに各々入力される。まず第1の組の指数部E
HI、EH2は指数部比較器11で比較され、指数の差
信号32が求められる。また比較結果により大きい方の
指数部27が選択される。仮数部FHI、FH2は、仮
数部比較器4に於て比較される。指数部大小比較信号3
3.仮数部比較信号36により絶対値の大きい方のオペ
ランドの仮数部が仮数部19Hとして仮数部交換器5よ
り出力される。同様に第2の組の指数部ELI、EL2
が指数部比較器14で比較され、指数の差信号34が求
められる。
度の数値データが入力されている。仮数部は、第13図
(C)に示すようなフォーマットで第1の組、第2の組
のデータが仮数部演算手段の第1のフィールドと第2の
フィールドに各々入力される。まず第1の組の指数部E
HI、EH2は指数部比較器11で比較され、指数の差
信号32が求められる。また比較結果により大きい方の
指数部27が選択される。仮数部FHI、FH2は、仮
数部比較器4に於て比較される。指数部大小比較信号3
3.仮数部比較信号36により絶対値の大きい方のオペ
ランドの仮数部が仮数部19Hとして仮数部交換器5よ
り出力される。同様に第2の組の指数部ELI、EL2
が指数部比較器14で比較され、指数の差信号34が求
められる。
また比較結果により大きい方の指数部31が選択される
。仮数部FLI、FL2は、仮数部比較器4に於て比較
される。指数部大小比較信号35゜仮数部比較信号37
により絶対値の大きい方のオペランドの仮数部が仮数部
19Lとして仮数部交換器5より出力される。桁合わせ
回路6では、仮数部20H,2OLが指数の差信号32
.34の値に従い、右シフトされる。このとき並行して
各フィールドのステッキ・ビットが生成される。真の減
算を行う場合には、仮数部21H,21Lの反転が取ら
れる。仮数部は丸め先見回路40に入力され、仮数部1
9H,22Hの下位5ビツトの和によって第1の組のオ
ペランドに対する第1゜第2の丸め判定信号44を求め
る。また同様に仮数部19L、22Lの下位5ビツトの
和によって第2の組のオペランドに対する第1.第2の
丸め判定信号45を求める。これら仮数部19H,22
H,19L、22Lの値及び丸め判定の値44゜45は
、メイン加算器41.42に入力され第1フイールド、
第2フイールドについて正規化が不必要であると仮定し
た場合の第1の演算結果46H,46Lと正規化が必要
であると仮定した場合の第2の演算結果47H,47L
が計算される。
。仮数部FLI、FL2は、仮数部比較器4に於て比較
される。指数部大小比較信号35゜仮数部比較信号37
により絶対値の大きい方のオペランドの仮数部が仮数部
19Lとして仮数部交換器5より出力される。桁合わせ
回路6では、仮数部20H,2OLが指数の差信号32
.34の値に従い、右シフトされる。このとき並行して
各フィールドのステッキ・ビットが生成される。真の減
算を行う場合には、仮数部21H,21Lの反転が取ら
れる。仮数部は丸め先見回路40に入力され、仮数部1
9H,22Hの下位5ビツトの和によって第1の組のオ
ペランドに対する第1゜第2の丸め判定信号44を求め
る。また同様に仮数部19L、22Lの下位5ビツトの
和によって第2の組のオペランドに対する第1.第2の
丸め判定信号45を求める。これら仮数部19H,22
H,19L、22Lの値及び丸め判定の値44゜45は
、メイン加算器41.42に入力され第1フイールド、
第2フイールドについて正規化が不必要であると仮定し
た場合の第1の演算結果46H,46Lと正規化が必要
であると仮定した場合の第2の演算結果47H,47L
が計算される。
解選択回路43は、演算結果46HのV、Nビットの値
により第1のフィールドの正しい解を選択する。同様に
演算結果46LのV、Nビットの値により第2のフィー
ルドの正しい解を選択する。
により第1のフィールドの正しい解を選択する。同様に
演算結果46LのV、Nビットの値により第2のフィー
ルドの正しい解を選択する。
選択された解23H,23Lは、プライオリティ・エン
コーダ9に入力され正規化に必要なシフト数39.38
が求められる。選択された解23H123Lは、正規化
回路10に於いてシフト数39゜38だけシフトされ正
規化される。また、シフト数39.38は、指数部演算
器12.15に入力され、解の指数が計算される。符号
部は、符号部演算662.63に於て、第1のオペラン
ドの符号部SHI、SH2より各々求められる。
コーダ9に入力され正規化に必要なシフト数39.38
が求められる。選択された解23H123Lは、正規化
回路10に於いてシフト数39゜38だけシフトされ正
規化される。また、シフト数39.38は、指数部演算
器12.15に入力され、解の指数が計算される。符号
部は、符号部演算662.63に於て、第1のオペラン
ドの符号部SHI、SH2より各々求められる。
この様に、仮数部演算手段1を第1.第2のフィールド
に分割して、独立に動作させることにより、2組の異な
る単精度数値データを同時に処理することが出来る。
に分割して、独立に動作させることにより、2組の異な
る単精度数値データを同時に処理することが出来る。
第3図は、この発明の他の実施例を示すブロック図であ
る。仮数部演算手段1゛の構成は前記実施例と異なり、
丸め処理と補数化処理が同時に生じないことを利用して
演算後の丸め処理と補数化処理を同一の回路で行なうこ
とを特徴とする。この実施例では、次のように浮動小数
点数の演算が行われる。
る。仮数部演算手段1゛の構成は前記実施例と異なり、
丸め処理と補数化処理が同時に生じないことを利用して
演算後の丸め処理と補数化処理を同一の回路で行なうこ
とを特徴とする。この実施例では、次のように浮動小数
点数の演算が行われる。
まず、指数部El、E2の比較結果により仮数部Fl、
F2を交換する。仮数部2oは桁合わせ回路によって桁
合わせが行われる。また真の減算を行なう場合には仮数
部21の反転が取られる。
F2を交換する。仮数部2oは桁合わせ回路によって桁
合わせが行われる。また真の減算を行なう場合には仮数
部21の反転が取られる。
メイン加算器48により仮数部19.22は加算される
。49は反転器、50はインクリメンタであり、減算の
結果が負の数になった場合には補数化処理を行う。また
、演算の結果、丸めによるインクリメントが必要な場合
はインクリメンタ50によってインクリメントを行う。
。49は反転器、50はインクリメンタであり、減算の
結果が負の数になった場合には補数化処理を行う。また
、演算の結果、丸めによるインクリメントが必要な場合
はインクリメンタ50によってインクリメントを行う。
この演算結果23は正規化回路10で正規化される。
第4図は、この発明の更に他の実施例を示すブロック図
である。仮数部演算手段1′は古典的な構成であり、前
記実施例とは異なっている。この実施例では、次のよう
に浮動小数点数の演算が行われる。
である。仮数部演算手段1′は古典的な構成であり、前
記実施例とは異なっている。この実施例では、次のよう
に浮動小数点数の演算が行われる。
まず、指数部El、E2の比較結果により仮数部Fl、
F2を交換する。仮数部20は桁合わせ回路6によって
桁合わせが行われる。また真の減算を行う場合には仮数
部21の反転が取られる。
F2を交換する。仮数部20は桁合わせ回路6によって
桁合わせが行われる。また真の減算を行う場合には仮数
部21の反転が取られる。
メイン加算器48により仮数部19.22は加算される
。51は補数化回路であり、反転回路とインクリメンタ
より構成されている。補数化回路51は、真の減算の結
果が負の数になった場合に補数比処理を行う。この結果
23は、正規化回路10で正規化され、必要ならば丸め
回路50に於いてインクリメントが行われる。52は再
正規化回路であり、丸め処理により桁上がりが生じた場
合、右に1ビツトシフトして再度正規化を行う。
。51は補数化回路であり、反転回路とインクリメンタ
より構成されている。補数化回路51は、真の減算の結
果が負の数になった場合に補数比処理を行う。この結果
23は、正規化回路10で正規化され、必要ならば丸め
回路50に於いてインクリメントが行われる。52は再
正規化回路であり、丸め処理により桁上がりが生じた場
合、右に1ビツトシフトして再度正規化を行う。
仮数部演算手段1が、第3図、第4図に示すような構成
であっても各構成要素は第2図に示した実施例と同様に
仮数部演算手段1の各構成部材を第1のフィールド、第
2のフィールドに分割し、各々独立に動作させることが
可能であり、2組の異なる単精度数値データを同時に処
理することが出来る。
であっても各構成要素は第2図に示した実施例と同様に
仮数部演算手段1の各構成部材を第1のフィールド、第
2のフィールドに分割し、各々独立に動作させることが
可能であり、2組の異なる単精度数値データを同時に処
理することが出来る。
以上に述べたように、仮数部演算手段を第1゜第2のフ
ィールドに分割可能にするためのわずかな回路を付加す
ることにより、単精度数値データの演算実行速度を2倍
にすることが出来る。指数部演算手段の構成は、本実施
例で挙げた構成以外にも様々なものが考えられる。しか
し指数部演算手段は演算装置全体に占めるハードウェア
の割合が低いので、どの様な構成のものであっても、本
発明の目的を達成することが可能である。
ィールドに分割可能にするためのわずかな回路を付加す
ることにより、単精度数値データの演算実行速度を2倍
にすることが出来る。指数部演算手段の構成は、本実施
例で挙げた構成以外にも様々なものが考えられる。しか
し指数部演算手段は演算装置全体に占めるハードウェア
の割合が低いので、どの様な構成のものであっても、本
発明の目的を達成することが可能である。
[発明の効果]
以上述べたように、本発明によれば、わずかなハードウ
ェアの追加により、比較的高価な仮数部演算手段を十分
に活用し、単精度演算を従来の2倍の速度で実行するこ
とが可能な高速浮動小数点数演算装置を得ることができ
る。
ェアの追加により、比較的高価な仮数部演算手段を十分
に活用し、単精度演算を従来の2倍の速度で実行するこ
とが可能な高速浮動小数点数演算装置を得ることができ
る。
第1図は本発明に従う浮動小数点数演算装置の概略を示
すブロック図、 第2図〜第4図は本発明装置の各実施例を示すブロック
図、 第5図〜第11図は第2図に示した実施例装置の一部構
成要素の詳細を示す構成図、 第12図はI EEE754規格に基づく倍精度浮動小
数点数値、単精度浮動小数点数値のフォーマットを示す
図、 第13図は仮数部のフォーマットを示す図、寵 第14.第15図は第2図に示す実施例装置のた 説明に供する図、および 第16図は従来の浮動小数点数演算装置の構成を示すブ
ロック図である。 1・・・仮数部演算手段 2・・・第1の指数部演算手段 3・・・第2の指数部演算手段 59・・・第1の符号部演算手段 60・・・第2の符号部演算手段
すブロック図、 第2図〜第4図は本発明装置の各実施例を示すブロック
図、 第5図〜第11図は第2図に示した実施例装置の一部構
成要素の詳細を示す構成図、 第12図はI EEE754規格に基づく倍精度浮動小
数点数値、単精度浮動小数点数値のフォーマットを示す
図、 第13図は仮数部のフォーマットを示す図、寵 第14.第15図は第2図に示す実施例装置のた 説明に供する図、および 第16図は従来の浮動小数点数演算装置の構成を示すブ
ロック図である。 1・・・仮数部演算手段 2・・・第1の指数部演算手段 3・・・第2の指数部演算手段 59・・・第1の符号部演算手段 60・・・第2の符号部演算手段
Claims (1)
- (1)倍精度数値データを扱えるビット幅を有し、倍精
度数値データの演算を行う第1の演算モードと、単精度
数値データの演算を行う第2の演算モードと、フィール
ドを分割して用い、各フィールドで異なる単精度数値デ
ータの演算を行う第3の演算モードとで作動する仮数部
演算手段を有することを特徴とする浮動小数点数演算装
置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2084721A JP2902041B2 (ja) | 1990-03-30 | 1990-03-30 | 浮動小数点数演算装置 |
| US08/408,125 US5590365A (en) | 1990-03-30 | 1995-03-21 | Pipeline information processing circuit for floating point operations |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2084721A JP2902041B2 (ja) | 1990-03-30 | 1990-03-30 | 浮動小数点数演算装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH03282926A true JPH03282926A (ja) | 1991-12-13 |
| JP2902041B2 JP2902041B2 (ja) | 1999-06-07 |
Family
ID=13838549
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2084721A Expired - Fee Related JP2902041B2 (ja) | 1990-03-30 | 1990-03-30 | 浮動小数点数演算装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2902041B2 (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0484219A (ja) * | 1990-07-26 | 1992-03-17 | Fujitsu Ltd | 演算処理装置及び演算処理方法 |
| US6304958B1 (en) | 1997-12-17 | 2001-10-16 | Hitachi, Ltd. | Microcomputer having data execution units mounted thereon |
| WO2018207926A1 (ja) * | 2017-05-12 | 2018-11-15 | 株式会社Preferred Networks | 演算装置及び演算システム |
| CN116933840A (zh) * | 2023-08-03 | 2023-10-24 | 南京大学 | 支持可变指数位宽的多精度Posit编解码运算装置及方法 |
-
1990
- 1990-03-30 JP JP2084721A patent/JP2902041B2/ja not_active Expired - Fee Related
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0484219A (ja) * | 1990-07-26 | 1992-03-17 | Fujitsu Ltd | 演算処理装置及び演算処理方法 |
| US6304958B1 (en) | 1997-12-17 | 2001-10-16 | Hitachi, Ltd. | Microcomputer having data execution units mounted thereon |
| WO2018207926A1 (ja) * | 2017-05-12 | 2018-11-15 | 株式会社Preferred Networks | 演算装置及び演算システム |
| US11188305B2 (en) | 2017-05-12 | 2021-11-30 | Preferred Networks, Inc. | Computation device having a multiplexer and several multipliers and computation system |
| CN116933840A (zh) * | 2023-08-03 | 2023-10-24 | 南京大学 | 支持可变指数位宽的多精度Posit编解码运算装置及方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2902041B2 (ja) | 1999-06-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6820107B1 (en) | Square root extraction circuit and floating-point square root extraction device | |
| EP0472139B1 (en) | A floating-point processor | |
| US5148386A (en) | Adder-subtracter for signed absolute values | |
| JPH02196328A (ja) | 浮動小数点演算装置 | |
| KR100203468B1 (ko) | 부동소수점수를 위한 산술연산장치 | |
| US20200183650A1 (en) | Radix-1000 decimal floating-point numbers and arithmetic units using a skewed representation of the fraction | |
| JPH09212337A (ja) | 浮動小数点演算処理装置 | |
| JP7285966B2 (ja) | 多入力浮動小数点加算器 | |
| CN112783471A (zh) | 基于cordic算法的正余弦、反正切函数运算的装置及方法 | |
| US5260889A (en) | Computation of sticky-bit in parallel with partial products in a floating point multiplier unit | |
| JP3436994B2 (ja) | シフト装置 | |
| JP4388543B2 (ja) | 3項入力の浮動小数点加減算器 | |
| KR920003493B1 (ko) | 부동 소숫점 표기를 기초로 하는 연산회로 | |
| JPH03282926A (ja) | 浮動小数点数演算装置 | |
| US20050144214A1 (en) | Shift-and-negate unit within a fused multiply-adder circuit | |
| CN112783470A (zh) | 一种用于执行浮点对数运算的装置和方法 | |
| JP4439060B2 (ja) | 浮動小数点加算器 | |
| JP2856792B2 (ja) | 浮動小数点数演算装置 | |
| JP3124286B2 (ja) | 浮動小数点数演算装置 | |
| JP2555577B2 (ja) | 演算装置 | |
| JP2555135B2 (ja) | 演算回路 | |
| JP3100868B2 (ja) | 浮動小数点数のための算術演算装置 | |
| JPS63158626A (ja) | 演算処理装置 | |
| JPH0778724B2 (ja) | 除算器 | |
| JPH07200259A (ja) | 演算処理方法および演算処理装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |