JPH0192829A - 浮動小数点演算器 - Google Patents

浮動小数点演算器

Info

Publication number
JPH0192829A
JPH0192829A JP62247801A JP24780187A JPH0192829A JP H0192829 A JPH0192829 A JP H0192829A JP 62247801 A JP62247801 A JP 62247801A JP 24780187 A JP24780187 A JP 24780187A JP H0192829 A JPH0192829 A JP H0192829A
Authority
JP
Japan
Prior art keywords
condition code
mantissa
operands
floating point
circuit
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
JP62247801A
Other languages
English (en)
Inventor
Takeshi Watanabe
毅 渡辺
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62247801A priority Critical patent/JPH0192829A/ja
Publication of JPH0192829A publication Critical patent/JPH0192829A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータ処理装置に関し、特に科学技術計算に用
いられる浮動小数点データの演算を実行する浮動小数点
演算器に関する。
〔従来の技術〕
科学技術計算の分野では、主たるデータ表現形式に浮動
小数点データ形式が用いられる。これは実数を1ビツト
の符号部S、7ビツトの指数部E。
および仮数部Mにより表わす。指数は16を基底とする
。これによれば、実数は86FX116 のように表わ
される。仮数は短精度形式では6桁5バイトであり、良
精度形式では、14桁7バイトである。
浮動小数点データの加減算のアルゴリズムには次のよう
になっている。
【1)2つのオペランドの指数を比較する。
(2)指数の小なるオペランドの仮数を、指数の差分の
桁数分布にシフトし、両オペランドの桁を合わせる。
C5)仮数同志の加算域を行なう。
(4)中間和の上位より連続するゼロの桁数を調べる。
(5)中間和な左くシフトして上位のゼロの桁をつめる
(6)中間和なシフトした桁数だけ大なる指数より減算
する。
(7)7JrJ減算の結果より符号乞決定する。
(8)演算結果を調べて条件コードを決定する。
条件コードは、演算結果の仮数が0の場合はへ仮数が0
でない場合は符号が負であればt 正であ几ば2のよう
に決定する。
〔発明が解決しようとする問題点〕
従来の技術では、条件コードを決定する時期が遅いため
、条件コードを変更する浮動小数点命令の後に、条件付
分岐命令を実行すると、判定が条件コードの決定まで遅
れるという問題があった。
すなわち、条件付分岐命令の実行サイクル数が多いため
、性能上の問題があった。これに関連するものとして例
えば特公昭57−9088号公報がある。
本発明の目的は浮動小数点命令において条件コードを早
期に決定することにより、条件は分岐命令の実行性能を
改善することにある。
〔問題点を解決するための手段〕
上記目的は2つの入力オペランドを直接比較して条件コ
ードを決定することにより達成される。
すなわち、両オペランドの符号比較情報、指数比較情報
、仮数比較情報、および条件コード生成制御情報により
、条件コードを演算結果を待つことな(早期に決定する
〔作用〕
まず、符号比較回路は両オペランドの符号を比較し、演
算が真の加算となるか真の減算となるかを調べる。指数
比較回路は両オペランドの指数を比較し、大小関係を調
べる。仮数比較回路は両オペランドの上位桁の大小関係
を判定し、かつ各オペランド毎の仮数がオールゼロかど
うかtv4べろ。・条件コード生成回路は命令のa類に
対応する条件コードを上記の比較結果を用いて生成する
。条件コード選択回路は条件コード生成回路で生成した
各命令対応の条件コードを条件コード制御情報にもとづ
いて選択し、条件コードを決定する。
〔実施例〕
第1図は本発明の一実施例を示す。
10は第2オペランドを転送するデータバスで、FAA
几20はそのデータを保持するラッチである。
11は第1オペランドを転送するデータバスで、FA 
B R21はそのデータを保持するランチである。
P几BA30はラッテFAA凡20とラッチFAI3几
21にセットされた浮動小数点データの指数部を入力し
、大小比較を行なう比較回路である。P几5H31はそ
の結果により指数の小なる方のオペランドの仮数st選
び、指数の差分だげ右にシフトして1桁合せを行なうプ
リンタである。
T/C32は指数の大なる方のオペランドの仮数部を選
び、演算が真の減算の場合にはその1の補数を作成する
真数/補数回路である。PA55はプリン7りP几8H
31とT/C32の出力を入力し、2進加算を行なう並
列加算器である。
ZDE(14は並列加算器PA33から出力される仮数
の中間和を調べて、上位から連続する零の桁数を求める
。これをボスト・ノーマライズ数と呼ぶ。シフタPO3
H55はボストノーマライズ数だけ中間和を左にシフト
し、仮数をボストノーマライズする。演算器P OB 
A56はボストノーマライズ数だけ指数より減算し、指
数のボストノーマライズを行なう。
符号回路5GN57は演算結果の符号を決める論理であ
る。ラッチFAPZ22は、以上の演算結果を保持する
ラッチであり、データバスz12より外部へ転送する。
条件コード決定回路PCC40は、符号回路5GN37
が生成する演算結果の符号と、零検出回路ZDEC54
にて検出する仮数部の零状態を調べて条件コードを決定
する。
条件コード決定回路FCC50は、ラッチFAAR20
とラッチFABR21に保持されている各々第2オペラ
yドと第1オペランドのデータを直接調べて条件コード
を決定する。
第2図は条件コード決定回路pccsoy、−さらに詳
細に示す図である。
符号比較回路51は第1オペランド(OPl)と第2オ
ペランド(OF2)の符号を入力し、その組合せを求め
る回路である。指数比較回路52は両オペランドの指数
音入力し、大小関係′Fr:調べる回路である。仮数比
較回路53は、両オペランドの仮数す調べて、オールゼ
ロであることの検出および、。
上位4ビツト(1桁)の大小関係yrgべる回路である
。条件コード生成回路54は、符号比較回路51指数比
較回路5λおよび仮数比較回路55の結果を組合せて命
令毎の条件コードを生成する。条件コード選択回路55
は命令コードに応じて、条件コード生成回路54が生成
した命令毎の条件コードの中から選択して条件コードを
決定する。
第3図は、FCC50内の各部の機能をさらに詳細に表
わした表である。
第3図中のFl/F2.f 1/f 2.E1/E2゜
81/82は、各々第1/2オペランドの仮数。
仮数の上位4ビツト、指数、符号を表わす。
ロード命令では、第2オペランドの仮数が0(F2−0
)の場合、条件コードは0に、F2?0の場合は、第2
オペランドの符号が0(82−0)と1(82−1)に
対応して、各々条件コードを2と1に決定する。
加算命令と比較命令では、次のように条件コードを決定
する。
まず、両オペランドの仮数がともに0 (PI −0で
かつF’2−o)ならば条件コードtOK決定する。
次にどちらか一方の仮数が0でない(F1崎0orF1
+o)場合について説明する。
符号を比較してともに負(81w1.and  82−
1)であれば、指数を比較し、指数の犬なる方のオペラ
ンドの仮数が0でなければ条件コードを1に決定し、も
し0であれば予測ができないため、予測成功を表わす信
号な0にリセットする。指数が等しい場合はどちらか一
方の仮数は0でないから条件コードを1に決定する。両
オペランドの符号がともKO(81−Oand 82−
0)の場合も同様である。
次に、両オペランドの符号が異なり、81−0でかつ8
2−0の場合を説明する。
指数の大小関係を比較し、指数大なる方の仮数の上位4
ビツトが0でなければ(f2AvO,またはf 140
 )、条件コードを各々1/2に決定する。もし仮数の
上位4ビツトが0であれば、予測できないので、予測成
功信号toにリセットする。
指数が等しい場合(El−E2)は、さらに仮数の上位
4ビツトの大小関係を比較し、fl(flでは1に、f
l)flでは2に条件コードを決定する。fl−flで
は予測できないので、予測成功信号な0にリセットする
。51−1かつS2−〇の場合も同様である。
第4図は浮動小数点演算器のタイムチャートを表わして
いる。演算のためのオペランドが入力レジスタであるF
AAR20とFABR21にセットされてから、演算を
実行し、その結果を結果レジスタFAPZ22にセット
するまで2マシンサイクルを必要とする。一方、条件コ
ードは演算より求めたPCCaOは演算開始より2マシ
/サイクル後に確定するのに対し、予測回路により求め
るFCC50は1マシンサイクルで確定する。
〔発明の効果〕
本発明によれば浮動小数点演算により決定する条件コー
ドを、演算結果から生成する場合に比べて1マシンサイ
クル以上も早く確定することができる。この条件コード
の決定時期の前倒しは、条件コードを調べて判定する条
件付分岐命令の性能の改善になる。条件付分岐命令の実
行には約5マシンサイクル必要とされるため、約30%
の性能改善をすることが可能である。
【図面の簡単な説明】
第1図は本発明の一実施例を示す図。 第2図は第1図の条件コード決定回路の詳細を示す図、 第3図は第2図を説明する図、 第4図は本発明の一実施例の動作タイムチャートを示す
。 51・−符号比較回路、52−・・指数比較回路、55
−・仮数比較回路、54・−条件コード生成回路、55
・・・条件コード選択回路。

Claims (1)

    【特許請求の範囲】
  1. 1、浮動小数点データの2つのオペランドを直接比較し
    、符号比較回路、指数比較回路、仮数比較回路から構成
    される条件コード決定回路を有することを特徴とする浮
    動小数点演算器。
JP62247801A 1987-10-02 1987-10-02 浮動小数点演算器 Pending JPH0192829A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62247801A JPH0192829A (ja) 1987-10-02 1987-10-02 浮動小数点演算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62247801A JPH0192829A (ja) 1987-10-02 1987-10-02 浮動小数点演算器

Publications (1)

Publication Number Publication Date
JPH0192829A true JPH0192829A (ja) 1989-04-12

Family

ID=17168856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62247801A Pending JPH0192829A (ja) 1987-10-02 1987-10-02 浮動小数点演算器

Country Status (1)

Country Link
JP (1) JPH0192829A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0256358A2 (en) * 1986-08-15 1988-02-24 International Business Machines Corporation Accelerated validity response permitting early issue of instructions dependent upon outcome of floating point operations
JP2011086133A (ja) * 2009-10-16 2011-04-28 Fujitsu Ltd 浮動小数点加算器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62128331A (ja) * 1985-11-29 1987-06-10 Nec Corp 情報処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62128331A (ja) * 1985-11-29 1987-06-10 Nec Corp 情報処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0256358A2 (en) * 1986-08-15 1988-02-24 International Business Machines Corporation Accelerated validity response permitting early issue of instructions dependent upon outcome of floating point operations
JP2011086133A (ja) * 2009-10-16 2011-04-28 Fujitsu Ltd 浮動小数点加算器

Similar Documents

Publication Publication Date Title
US5357237A (en) In a data processor a method and apparatus for performing a floating-point comparison operation
JP3076046B2 (ja) 例外検出回路
US6099158A (en) Apparatus and methods for execution of computer instructions
US5530663A (en) Floating point unit for calculating a compound instruction A+B×C in two cycles
US6529928B1 (en) Floating-point adder performing floating-point and integer operations
JPH07225671A (ja) 結果正規化機構と動作の方法
US5136536A (en) Floating-point ALU with parallel paths
JPH06236257A (ja) データ・プロセッサにおいて浮動小数点実行ユニット内で後正規化を実行する方法および装置
EP0530372B1 (en) Numerical expression converter and vector processor using the same
US5343413A (en) Leading one anticipator and floating point addition/subtraction apparatus
JPH09212337A (ja) 浮動小数点演算処理装置
US20090164544A1 (en) Dynamic range enhancement for arithmetic calculations in real-time control systems using fixed point hardware
JPH10500513A (ja) ディジタル除算実行装置
JPH0192829A (ja) 浮動小数点演算器
JPH0346024A (ja) 浮動小数点演算器
US7003540B2 (en) Floating point multiplier for delimited operands
JP3089427B2 (ja) データ処理装置
RU2276805C2 (ru) Способ и устройство для выделения целой и дробных компонент из данных с плавающей точкой
JPH0731591B2 (ja) 先行1検出回路および浮動小数点加減算装置
JP2856792B2 (ja) 浮動小数点数演算装置
JPH0435777B2 (ja)
JPS62159224A (ja) 浮動小数点演算回路
JP2591250B2 (ja) データ処理装置
JPH0469734A (ja) 浮動小数点加減算のアンダーフロー例外発生予測回路
JPS6149234A (ja) 浮動小数点乗算回路