JPS60142736A - 浮動小数点加減算方式 - Google Patents

浮動小数点加減算方式

Info

Publication number
JPS60142736A
JPS60142736A JP58248422A JP24842283A JPS60142736A JP S60142736 A JPS60142736 A JP S60142736A JP 58248422 A JP58248422 A JP 58248422A JP 24842283 A JP24842283 A JP 24842283A JP S60142736 A JPS60142736 A JP S60142736A
Authority
JP
Japan
Prior art keywords
shift
control data
shift control
data
mantissa
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
Application number
JP58248422A
Other languages
English (en)
Other versions
JPH0160857B2 (ja
Inventor
Masayuki Ikeda
正幸 池田
Koichi Ueda
上田 孝一
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 JP58248422A priority Critical patent/JPS60142736A/ja
Priority to CA000468679A priority patent/CA1229415A/en
Priority to AU36270/84A priority patent/AU555230B2/en
Priority to BR8406284A priority patent/BR8406284A/pt
Priority to ES538377A priority patent/ES8602270A1/es
Priority to EP84308518A priority patent/EP0145465B1/en
Priority to DE8484308518T priority patent/DE3481788D1/de
Priority to KR1019840007775A priority patent/KR890004307B1/ko
Publication of JPS60142736A publication Critical patent/JPS60142736A/ja
Priority to US07/206,930 priority patent/US5016209A/en
Publication of JPH0160857B2 publication Critical patent/JPH0160857B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/485Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49936Normalisation mentioned as feature only

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Nonlinear Science (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

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

Description

【発明の詳細な説明】 (al 発明の技術分野 本発明は、浮動小数点データの加減算回路に係り、特に
仮数部の加減算演算に先立って、仮数部の桁合わ廿を高
速に行う方式に関する。
(bl 技術の背景 仮数部、指数部、符号部からなる2つの浮動小数点デー
タの加減算においては、桁合わせ、仮数部の加算、正規
化が行われる。
その為に、先ず2つのオペランドの指数部が比較され、
小さい方の指数部を持った仮数部が右シフトされ、16
進数として1桁シフトされる毎に、指数部を1増やし、
上記2つのオペランドの指数部が一致する迄該シフトを
続ける。上記右シフトされる際、最後にシフトアウトさ
れた16進数の1桁は保護桁として保存される。
上記桁合わせ動作において、指数部が一致すると、仮数
部が代数的に加減算され、中間和を出力する。この時、
仮数部の加減算の結果、桁上がりがあると、中間和は右
ヘシフトされ、桁上がりが最上桁となり、指数部に1が
加えられる。
この中間和の上位桁に無効桁がある場合、中間和は正規
化に必要な桁だけ左シフトされ、最下位桁には零が入り
、1桁左シフトする毎に、指数部は1だけ減ぜられる。
本発明は、上記浮動小数点データの加減算方式において
、桁合わせ演算(指数部の比較と、シフト演算)を高速
に行う方式に関連しているが、一般のデータ処理装置に
おいては、浮動小数点データの加減算命令の使用頻度が
大きいため、該浮動小数点データの加減算命令を高速化
することにより、該データ処理装置の処理能力を向」ニ
させる効果が大きいことから、その1つの手段として、
上記の桁合わせ演算を高速化する方法が要望されていた
(C) 従来技術と問題点 従来の桁合わせ演算に関連する回路例を第1図に示す。
第1図において、■は指数部を比較する比較器(GOM
P) 、 2.3はシフト回路(SFTI、 5FT2
)で、5FTI 2は入力データ1の仮数部をシフトし
、5FT23は入力データ2の仮数部をシフトする。そ
して、4は加算器(CP^)である。
従来方式においては、先ず2つの入力データ1゜2の指
数部を比較器(COMP) Iにおいて比較し。
それぞれの指数部の差や、どちらの入力データが大きい
か等のシフト制御データを、シフト回路(SFTI) 
2. シフト回路(SFT2) 3に送出し、それらの
データを用いて仮数部の桁合わせの為のシフト動作を行
っていた。
その為、指数部の比較演算と、仮数部のシフト演算とが
逐次的に行われ、時間がかかるという問題があった。
(d+ 発明の目的 本発明は上記従来の欠点に鑑み、指数部の比較演算にお
いて、下位ビットの比較結果が上位ビットの比較結果よ
り速く出力されることに着目し、前記シフト制御データ
を幾つかのグループに分け、必要な情報が揃い次第、そ
の情報に対応したシフト動作を実行することにより、で
きるだけシフト制御データの作成(即ち、指数部の比較
演算)とシフト動作とをオーバラップさせて、仮数部の
桁合わせの為のシフト動作の高速化を図る方法を提供す
ることを目的とするものである。
Tel 発明の構成 そしてこの目的は、本発明によれば、2つのデータに対
して浮動小数点データの加減算を行う回路において、入
力データの指数部の比較演算を行って、仮数部の桁合わ
せの為のシフト制御データを作成し、該データによりシ
フト動作を行うのに、指数部の下位ビットを比較してシ
フト制御データを生成する第1の手段と、上記下位ビッ
トを除く一ヒ位ビットを比較してシフト制御データを生
成する第2の手段とを設け、上記第1の手段で生成され
たシフト制御データで、加数部の桁合わせの為の第1の
シフト動作を行い、上記第2の手段で生成されたシフト
制御データで、仮数部の桁合わせの為の第2のシフト動
作を行うようにして、上記シフト制御データの生成動作
と、シフト動作とをオーバラップさせて、仮数部の桁合
わせ動作を行わせる方法を提供することによって達成さ
れ、シフト制御データの生成動作と、シフト動作とがオ
ーバラップされて仮数部の桁合わせが行われるので、該
桁合わせの為のシフト動作の高速化が図れる利点がある
Tf) 発明の実施例 本発明の主旨を要約すると、本発明は浮動小数点データ
の加減算演算の第1ステツプである仮数部の桁合わせの
為のシフト演算において、シフト制御データを生成する
のに、指数部の下位ビットから上記シフト制御データの
1部が速く生成されることに着目して、指数部の下位ビ
ットから生成されるシフト制御データと、上記下位ビッ
トを除く上位ビットから生成されるシフト制御データと
を用いて、それぞれのシフト制御データが揃い次第、該
シフト制御データに対応したシフト動作を行うようにし
て、シフト制御データの生成動作とシフト動作をオーバ
ラップさせるようにしたものである。
以下本発明の実施例を図面によって詳述する。
第2図が本発明の一実施例をブロック図で示した図であ
り、第3図はシフト制御データの具体例を示した図、第
4図は本発明の詳細な説明する図である。
第2図において、IL 1.2は本発明を実施するのに
必要なシフト制御データ生成部で、第1図における比較
器(COMP> 1に対応する。21.31はシフト制
御データ生成部11に対応するシフト回路(SFT3.
5FT4) 、 22.32はシフト制御データ生成部
12に対応するシフト回路(SFT5.5FT6)で、
2L 22が第1図におけるシフト回路(SFTI) 
2に対応し。
3L 32が第1図にとけるシフト回路(SFT2) 
3に対応している。4は第1図で示したものと同じ加算
器(CP八)である。
本発明の主眼となるシフト制御データ生成部11゜12
で生成されるシフト制御データS^1. SA2. S
^31SA4. Tll、 EX、の6種類の具体例を
第3図に示している。
ここで、SAI 、 SA2が2つの入力データの指数
部の下位ビットを比較して生成されるシフト制御データ
であり、他(7)SA3 、 SA4 、 TH,EX
、は上記指数部の上記下位ビットを除いた上位ビットを
比較して生成されるシフト制御データである。
本実施例においては、該SAI 、 SA2が短い論理
段数によって速く生成されるのに対して、SA3 。
SA4 、 Tll、 EXは長い論理段数によって、
生成に時間がかかる為、SAI 、 SA2によるシフ
ト動作と、SA3 、 SA4 、 TI、 EXの生
成とをオーバラップさせて、全体的なシフト制御動作を
高速に行うようにしている。
今、浮動小数点データの仮数部の精度を16進数15桁
とし、指数部は7ビツトで表現して16の指数として表
示されるものとする。
従って、論理的には4ビット単位のシフト制御データが
、0桁シフト−15桁シフト迄の16種類必要となるが
、このシフト制御データを、総て生成することは、ハー
ドウェア量を増大させるので、一般には0,1,2.3
桁シフト迄の細かいシフト制御データと、0,4.8.
12桁シフト迄の粗いシフト制御データの2組を生成し
、その組み合わせによって、上記0〜15桁の任意のシ
フト制御データを生成し、シフト制御を行っている。
従って、それぞれのシフト制御データは、2ビツトで表
示できる。この他に、上記2つの浮動小数点データの指
数部を比較した時、小さい方の指数部を持った仮数部は
上記シフト制御データによって右シフトされるが、大き
い方の指数部を持った仮数部はシフトしないように制御
される必要があり、その識別信号として1ビツト(この
制御ビットをTIとする)必要となる。更に、上記指数
部の比較演算において、仮数部の精度である15桁を越
えるシフトが必要となった時は、仮数部は全60″とな
ってしまうので、その仮数部の「精度越え」を識別する
信号として1ビツト(この制御ビットをEXとする)必
要となる。
上記の結果、本実施例におけるシフト制御データは、シ
フト量を決める制御ビットが4ビツト(SAI 、 S
A2と、SA3.SA4)と、上記Tllビットと、E
Xビットの合計6ビツトが必要となる。
上記6種類のシフト制御データ(SAI 、 SA2 
SA3 、 SA4 、 Tll、 EX、 )と仮数
部のシフト態様との関係を示したものが、第3図である
ここで、↑11−OはDATAIの指数部< DATA
2の指数部の場合であり、DATA2の仮数部はシフト
回路(SPT4) 31. (SFT6) 32を素通
りするように制御される。TI+=1はDATAIの指
数部> DATA2の指数部の場合であり、DATAI
の仮数部がシフト回路(SFT3) 21. (SFt
5) 22を素通りするように制御される。
次に、EX=1の場合は、シフトされる側のデータの仮
数部が全“0”になるように制御される。
勿論、SAI 、 SA2 、 SA3 、 SA4 
=1111の場合も、シフトされる側の仮数部は全“θ
″となる。
以下、第3図のシフト制御データを参照しながら、第2
図によって、本発明を実施した場合の動作を説明する。
上記のように、0桁、1桁、2桁、3桁の細かいシフト
を行う為のシフト制御データSAI 、 SA2は、2
つの浮動小数点データ1.2の指数部の下位ビットを、
rsA 1 、SA2算出回路」11に入力することに
よって、短時間でめられるので、該SAI 。
SA2信号が得られた時点で、シフト回路(SFT3)
2L (SFT4) 31に入力して、上記の細かいシ
フト動作を行うように制御する。
該細かいシフト動作中に、他のシフト制御データ(0桁
、4桁、8桁、12桁の粗いシフトを行う為のシフト制
御データSA3 、 SA4と、その他のシフト制御ビ
ットn1. EX)を、2つの浮動小数点データ1,2
の指数部の上記下位ビットを除く上位ビア)を、rSA
3.SA4.TH,EX算出回路」12に入力すること
によって生成し、該SA3 、 SA4 、、 TH,
EX信号が得られた時点にて、シフト回路(SFT5)
 22゜(SFT6) 32に入力して、多数桁の粗い
シフト動作を行うように制御するのである。
シフト回路(SFT3) 2L (SPT4) 31の
実行開始時には、前記Tll信号は生成されていないの
で、SA1 、 SA2信号によって、2つのデータと
も、同じようにシフトを行っておき、シフト回路(SF
T5)22、(SFT6) 32でのシフト動作実行時
に、−上記TH信号に基づいて、元のデータをセレクト
できるよ1 うに〔即ち、シフト回路(SFT3) 21. (SF
↑4)31のバイパスルートを設けて、上記TH倍信号
セレクトできるように〕しておく。
このようにして、シフト回路(SFT3) 21. (
SFT4) 31でのシフト動作と、「SA3.SA4
.Tll、EX算出回路」12でのシフト制御データの
生成動作とを、並列に実行させることにより、加算器(
CPA ) 4への入力データを、より短い時間で得る
ことができる。
上記のシフト制御データの生成動作(即ち、指数部の比
較演算)と仮数部のシフ1−動作(即ち、5FT3.5
FT4でのシフト動作と、5FT5.5FT6でのシフ
ト動作)との相互関係をタイムチャートで示したものが
第4図である。
本図において、(イ)は従来方式の場合を示し、(ロ)
は本発明を実施した場合を示している。本図から明らか
なように、本発明を実施した場合には、rSA3.SA
4.Tl(、EX算出回路」12での動作と、シフト回
路(SFT3) 21. (SFT4) 31でのシフ
ト動作が並列に行われるので、仮数部の桁合わせの為2 のシフト動作全体が、従来方式に比較して短時間で実行
できることが分かる。
(In 発明の効果 以上、詳細に説明したように、本発明の浮動小数点加減
算方式は、浮動小数点データの加減算演算の第1ステツ
プである仮数部の桁合わせの為のシフト演算において、
シフト制御データを生成するのに、指数部の下位ビット
から上記シフト制御データの1部が速く生成されること
に着目して、指数部の下位ビットから生成されるシフト
制御データと、上記下位ビットを除く上位ビットから生
成されるシフト制御データとを用いて、それぞれのシフ
ト制御データが揃い次第、該シフト制御データに対応し
たシフト動作を行うようにして、シフト制御データの生
成動作と、シフト動作をオーバラップさせるように制御
されるので、浮動小数点データの加減算における仮数部
の桁合わせの為のシフト動作を高速に実行できる効果が
ある。
【図面の簡単な説明】
第1図は従来方式の桁合わせ演算に関連する回路例をブ
ロック図で示した図、第2図が本発明の一実施例をブロ
ック図で示した図、第3図はシフト制御データの具体例
を示した図、第4図は本発明の詳細な説明する図である
。 図面において、1は比較器(COMP) 、 2.3は
シフト回路(SFTlt 5FT2> 、 4は加算器
(CPA)。 11はSA1.Sへ2算出回路、12はSA3.SA4
.TH,EX算出回路、 21.al、22.32はシ
フト回路(SFT3.5FT4゜5PT5. 5FT6
) 、SAI 、SA2.SA3 、SA4 、TI、
EXはシフト制御データ、をそれぞれ示す。 へカテ゛ニク1 △カテ゛′−72 う1f丈ηY藺1,46’季 p+ 圀 へカデー71 人力デ′−72 楓教寿!関料茎 郊 2 圓 峰3 粗 (イン 吟閉 吟間

Claims (1)

    【特許請求の範囲】
  1. 2つのデータに対して浮動小数点データの加減算を行う
    回路において、上記2つの入力データの指数部の比較演
    算を行って、仮数部の桁合わせの為のシフト制御データ
    を作成し、該データによりシフト動作を行うのに、指数
    部の下位ビットを比較してシフト制御データを生成する
    第1の手段と、上記下位ビットを除(上位ピッI・を比
    較してシフト制御データを生成する第2の手段とを設け
    、」二記第1の手段で生成されたシフト制御データで、
    仮数部の桁合わせの為の第1のシフト動作を行い、上記
    第2の手段で生成されたシフト制御データで、仮数部の
    桁合わせの為の第2のシフト動作を行うようにして、上
    記シフト制御データの生成動作と、シフト動作とをオー
    バラップさせて、仮数部の桁合わせ動作を行わせること
    を特徴とする浮動小数点加減算方式。
JP58248422A 1983-12-09 1983-12-29 浮動小数点加減算方式 Granted JPS60142736A (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP58248422A JPS60142736A (ja) 1983-12-29 1983-12-29 浮動小数点加減算方式
CA000468679A CA1229415A (en) 1983-12-09 1984-11-27 Floating-point addition/subtraction system
AU36270/84A AU555230B2 (en) 1983-12-09 1984-12-04 Floating-point addition/subtraction system
EP84308518A EP0145465B1 (en) 1983-12-09 1984-12-07 Floating-point addition/subtraction system
ES538377A ES8602270A1 (es) 1983-12-09 1984-12-07 Una instalacion electronica de suma-resta en punto flotante
BR8406284A BR8406284A (pt) 1983-12-09 1984-12-07 Sistema de adicao/subtracao com virgula flutuante para duas series de dados
DE8484308518T DE3481788D1 (de) 1983-12-09 1984-12-07 Addier/substrahiersystem fuer gleitkommazahlen.
KR1019840007775A KR890004307B1 (ko) 1983-12-09 1984-12-08 부동소수점 가감산 장치
US07/206,930 US5016209A (en) 1983-12-09 1988-05-31 Floating-point addition/subtraction system with digit position alignment between fractions of multiple sets of data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58248422A JPS60142736A (ja) 1983-12-29 1983-12-29 浮動小数点加減算方式

Publications (2)

Publication Number Publication Date
JPS60142736A true JPS60142736A (ja) 1985-07-27
JPH0160857B2 JPH0160857B2 (ja) 1989-12-26

Family

ID=17177885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58248422A Granted JPS60142736A (ja) 1983-12-09 1983-12-29 浮動小数点加減算方式

Country Status (1)

Country Link
JP (1) JPS60142736A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02125328A (ja) * 1988-11-04 1990-05-14 Toshiba Corp 差動バレルシフタ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02125328A (ja) * 1988-11-04 1990-05-14 Toshiba Corp 差動バレルシフタ

Also Published As

Publication number Publication date
JPH0160857B2 (ja) 1989-12-26

Similar Documents

Publication Publication Date Title
US5148386A (en) Adder-subtracter for signed absolute values
KR100264962B1 (ko) 결합된 선두 1 및 선두 제로 예상기
US4758974A (en) Most significant digit location
EP0356153B1 (en) Radix-2**n divider method and apparatus using overlapped quotient bit selection and concurrent quotient rounding and correction
JPS60140422A (ja) 演算処理装置
US5818745A (en) Computer for performing non-restoring division
US7016930B2 (en) Apparatus and method for performing operations implemented by iterative execution of a recurrence equation
EP0145465B1 (en) Floating-point addition/subtraction system
JP2511527B2 (ja) 浮動小数点演算器
JPH07234778A (ja) 演算回路
JPS60142736A (ja) 浮動小数点加減算方式
JP2509279B2 (ja) 浮動小数点数一固定小数点数変換装置
JP3137131B2 (ja) 浮動小数点乗算器及び乗算方法
JP3517162B2 (ja) 除算・開平演算装置
EP0442220B1 (en) Decoder
JPH0667852A (ja) 除算器
JPH0367328A (ja) 浮動小数点演算装置
JP3233432B2 (ja) 乗算器
JP2801472B2 (ja) 浮動小数点演算装置
JP3100868B2 (ja) 浮動小数点数のための算術演算装置
JPH0383126A (ja) 浮動小数点乗算器
JPS63182740A (ja) 除算器
JP2931632B2 (ja) 桁移動装置及び浮動小数点演算装置
JP2622012B2 (ja) シフト回路
JPH01232430A (ja) 演算回路