JPH0368020A - 除算オペランドの桁合せ回路 - Google Patents

除算オペランドの桁合せ回路

Info

Publication number
JPH0368020A
JPH0368020A JP1204056A JP20405689A JPH0368020A JP H0368020 A JPH0368020 A JP H0368020A JP 1204056 A JP1204056 A JP 1204056A JP 20405689 A JP20405689 A JP 20405689A JP H0368020 A JPH0368020 A JP H0368020A
Authority
JP
Japan
Prior art keywords
register
operand
output
mantissa
digit
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
JP1204056A
Other languages
English (en)
Other versions
JPH0831026B2 (ja
Inventor
Takashi Kanazawa
金澤 敬
Masayuki Kimura
木村 真行
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.)
NEC Corp
NEC Computertechno Ltd
Original Assignee
NEC Corp
NEC Computertechno 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 NEC Corp, NEC Computertechno Ltd filed Critical NEC Corp
Priority to JP1204056A priority Critical patent/JPH0831026B2/ja
Publication of JPH0368020A publication Critical patent/JPH0368020A/ja
Publication of JPH0831026B2 publication Critical patent/JPH0831026B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 技術分野 本発明は除算オペランドの桁合せ回路に関し、特に浮動
小数点データの除算に先立ち被除数の仮数部を除数の仮
数部よりも絶対値が小さくなるよう桁合せする浮動小数
点除算器で用いられる除算オペランドの桁合せ回路に関
する。
従来技術 従来、浮動小数点データの除算を被除数と除数の積にお
きかえて実行するようなある種の情報処理装置(例えば
、特開昭57−041737 「除算装置」)において
は、演算に先立ち、被除数と除数の間に以下の関係が成
立していることを必要としている。
1被除数の仮数1く1除数の仮数I・・・(1)このよ
うな情報処理装置では、例えば第2図に示すよな固定小
数点データ用の加算器およびシフタを用いて、除数と被
除数が(1)式の関係を満たずように桁合せ処理を実行
している。
第2図において、オペランドレジスタA22及びB25
は、夫々被除数及び除数の1反数を格納するレジスタで
ある。符号比較回路27は両オペランドの符号を比較し
て、反転指示回路28へこの比較結果を供給する。
この反転指示回路28は当該比較結果と加減算タイプレ
ジスタ23内に設定されている加減算モードとに応じて
反転回路29に対して反転指示を兄事するものである。
この反転回路29は当該反転指示に応じてオペランドレ
ジスタB25のオペランドデータを反転するものである
加算器′3コはオペランドレジスタA22の出力と反転
回路2つの出力とを加算するものである。
この加算結果はりゲルトレジスタ33ヘセレクタ32を
介し7て人力されると共に、絶交・1値比較回路34へ
の1人力となっている。
この絶対値比較回路34はオペランドレジスタA22の
オペランドデータの符号と加算器31の加算出力とから
、被除数と除数との絶対値の大小を比較する回路であり
、その結果がインジケータレジスタ35へ格納される。
シフタ30はセレクタ36を介して入力されるオペラン
ドデータの仮数部を桁合せすべく右シフトするものであ
り、シフトカウントレジスタ26の内容に応じて右シフ
トを行う。
このシフトカウントは、リーディングサインカウント生
成回路37と、リーディングサインレジスタA38及び
B39と、シフトカウント生成回路とからなるシフトカ
ウント生成部により生成され、セレクタ41を介してシ
フトカウントレジスタ26へ供給される構成である。
以下、第2図を用いて被除数と除数の桁合せ処理動作に
ついて説明する。なお、与えられる被除数と除数は2の
補数型式であると仮定する。
(1)オペランドレジスタA22に被除数の仮数、オペ
ランドレジスタB25に除数の仮数を夫々格納し、加減
算タイプレジスタ23を絶対値比較タイプにセットする
(2)符号比較回路27において、オペランドレジスタ
A22とオペランドレジスタB25との出力の符号を比
較し、符号比較回路27出力と加減算タイプレジスタ2
3出力とから、反転指示生成回路28においてオペラン
ドレジスタB25出力を反転するか否かを判定する。
(3)反転指示生成回路28によってオペランドレジス
タB25出力を反転する指示が出力された場合には、オ
ペランドレジスタB25出力のビットパターンを反転回
路27において反転し、1の補数におきかえるとともに
、加算器31の最下位への桁上げを“1“とじ、反転指
示がでなかった場合には、オペランドレジスタB25出
力をそのまま反転回路27より出力するとともに、加算
器31の最下位への桁上げを“0”とし、加算器31に
おいてオペランドレジスタA22出力と反転器29出力
とを加算する。
(4)加算器31出力とオペランドレジスタA22出力
の符号とから絶対値比較回路34において、 オペランドレジスタA1 く1オペランドレジスタB が成立するか否かを判定し、結果をインデイケータレジ
スタ35に格納する。
(5)インデイケータレジスタ35出力より、オペラン
ドレジスタA く1オペランドレジスタB なる関係が成立したと判定された場合には、オペランド
レジスタA22.B25に与えた被除数と除数の仮数部
をそのまま除算のオペランドの仮数部として用いる。ま
た、 オペランドレジスタA a1オペランドレジスタB なる関係であると判定された場合には、次の(6)以下
の桁合せ処理を続行する。
(6)シフタ人力セレクタ36においてオペランドレジ
スタB25出力を選択し、リーディングサインカウント
生成回路37においてオペランドレジスタB25出力の
リーディングサインカウント(連続するサインビットの
数)を求め、リーディングサインレジスタA38に格納
する。次に、シック入力セレクタ36においてオペラン
ドレジスタA22出力を選択し、リーディングサインカ
ウント生成回路37においてオペランドレジスタ八出力
のリーディングサインカウントを求め、リーディングサ
インレジスタA38に格納する。
(7)シックカウント生成回路40においてリーディン
グサインレジスタA38出力からリーディングサインレ
ジスタA39出力を減じることによりシフトカウントを
生威し、結果をシフトカウントレジスタ26に格納する
(8)シック30においてシック人力セレクタ36より
出力されるオペランドレジスタA22出力をシフトカウ
ントレジスタ26出力に応じて右シフトし、結果をオペ
ランドレジスタA22およびリザルトレジスタ33に格
納する。
(9)前記(2)、(3)、(4)と同様のオペランド
レジスタA22出力とオペランドレジスタB出力25の
絶対値比較を行い絶対値比較回路34出力をインデイケ
ータレジスタ35に格納する。
(lO)インデイケータレジスタ35出力により、オペ
ランドレジスタA くlオペランドレジスタB なる関係が成立したと判定された場合には、オペランド
レジスタB25に予め与えた除数の仮数部およびリザル
トレジスタ33に格納した被除数の右シフト結果を除算
のオペランドの仮数部として用いる。また、 オペランドレジスタA ≧1オペランドレジスタB と判定された場合には次の(1■)以下の桁合せ処理を
実行する。
(11)シフトカウントレジスタ26に、指数の基数よ
り規定される1桁分のシフト力ウニ・トを格納し、(8
)と同様の右シフトを実行し、シフタ30の出力を再び
オペランドレジスタA22およびリザルトレジスタ33
に格納する。
(12)前記(2)、(3)、(4)と同様の絶対値比
較を行い、結果をインデイケータレジスタ35に格納す
る。
(13)インデイケータ出力35により、1オペランド
A1く1オペランドB1なる関係が成立したと判定され
た場合には、オペランドレジスタB25に予め与えた除
数の仮数部とりゲルトレジスタ33に格納した被除数の
右シフト結果を除数のオペランドの仮数部として用いる
。そうでない場合には前記(11) 、  (12) 
、  (13)をくり返す。
なお、第2図においては指数部の処理について説明を省
略したが、被除数の仮数を右シフトする度に、シフト数
に応じて被除数の指数値を増加させる必要があることは
言うまでもない。
ここで具体的な例を示してみる。なお、指数の基数は2
とする(指数値n−5−2”)。
■被除数の仮数部をAとする。除数の仮数部をBとする
A  −0,001010・・・0 B  −0,0010・・・・・・O →  A  ≧   B ■A、BのリーディングサインカウントLSALSBを
求める。→LSA讃3.LSB−3シフトカウント−L
SA−LSB 3−3 一〇 ■前記■のシフトカウント(−0)を用いAを右シフト
しA1とする A 1− A −0,001010・・・0−4 A1
 ミ B ■シフトカウントを指数の基数より“1“とし、AIを
さらに右シフトしてA2とする。
A 2−0.00010LO・・・O B −0,0010・・・・・・・・・・・・0→lA
2  <IBI ■1A21<IBIよりA2.Bを各々被除数及び除数
の仮数部とする(被除数の指数部は右シフト数に応じO
+1−1だけ増加して用いる)。
上述の従来の固定小数点データの加算器とシフタを用い
た除算オペランドの桁合せ回路では、シフト及び絶対値
比較をくり返し実行しているため、制御が複雑で桁合せ
の実行時間が長くなるという欠点がある。
ところが、浮動小数点データの演算を実行するような情
報処理装置においては、第2図に示した固定小数点デー
タ用の加算器及びシックとは独立に第3図に示すような
浮動小数点データ用の加算器を備えているものが多い。
第3図における浮動小数点データ用の加算器は以下のよ
うに動作する。
すなわち、演算に用いるオペランドAとオペランドBの
指数を各々指数レジスタA42,843に格納し、仮数
を各々仮数レジスタA46.B47に格納する。
しかるのちに、指数減算器A44において指数レジスタ
843出力より指数レジスタA42出力を減算し、指数
減算器B45において指数レジスタA42出力より指数
レジスタB43出力を減算する。指数減算器A、 44
出力と指数減算器B45出力の符号から、オペランドA
の仮数部のイコライズシフトカウントをイコライズカウ
ントセレクタA50より出力し、同様にイコライズカウ
ントセレクタB51よりオペランドBの仮数部のイコラ
イズシフトカウントを出力する。
ここで、指数レジスタA≧指数しジスタBの場合、イコ
ライズカウントセレクタA50出力は“0”となり、イ
コライズカウントセレクタB51からは、1指数レジス
タA−指数レジスタBの値、すなわち指数減算器B45
出力が出力される。
逆に、指数レジスタく指数レジスタBの場合、イコライ
ズカウントセレクタA50からはI指数レジスタA−指
数レジスタB1の値、すなわち指数減算器A44の出力
が出力され、イコライズカウントセレクタB51からは
“0”が出力される。
イコライズシフタB53においては、仮数レジスタ46
出力がイコライズカウントセレクタA50出力により右
シフトされ、イコライズシフタB53においては仮数レ
ジスタB47出力がイコライズウントセレクタB51出
力により右シフトされる。
反転器54においては、必要に応じてイコライズシフタ
B53出力が1の補数に反転され、この場合加算器55
の最下位に桁上げを生ずる。
加算器55においては、イコライズシフタム52出力と
反転器54出力の加算が行われ、結果はりゲルトレジス
タ56に格納される。
ここで、第3図の浮動小数点加算器の構造に着繁すると
、第2図の固定小数点データ用加算器にイコライズシフ
タという右シックを付加したような構造になっており、
イコライズシフタのシフトカウントを指数の差以外から
(例えば、被除数と除数のリーディングサインカウント
の差から)も′j6えられれば、第2図を用いて説明し
た従来例における被除数の右シフトと絶対値比較をこの
浮動小数点加算回路によって実行できることができるこ
とになる。
発明の目的 本発明は上述の点に着目してなされたものであって、そ
の目的とするところは、浮動小数点データの除算に使用
されるオペランドの桁合せを浮動小数点加算回路に若干
の金物量を追加するだけで効率的に行えるようにした除
算オペランドの桁合せ回路を提供することにある。
発明の構成 本発明によれば、浮動小数点データの除算実行に先立ち
被除数の仮数部を除数の仮数部より絶対値が小となるよ
うに桁合せをなす浮動小数点除算器における除算オペラ
ンドの桁合せ回路であって、演算処理対象となる2つの
オペランドデータの指数部の差に応じて前記オペランド
データの仮数部の桁合せをなすべく前記オペランドデー
タを右シフトするシフト手段及びこの桁合せ後の2つの
オペランドデータを加減算する加減算手段を含む浮動小
数点加減算装置と、前記被除数の桁合せに必要なシフト
カウントを生成する桁合せシフトカウント生成手段と、
前記被除数の仮数部の符号と前記加減算手段の出力とか
ら前記桁合せ後の出力の絶対値が前記除数の絶対値より
小が否かを判定する絶対値比較手段と、前記浮動小数点
加減算装置を除算オペランドの桁合せに用いる外部指令
に応答して、前記桁合せシフトカウント生成手段にょり
生成されたシフトカウントを前記シフト手段へ供給する
よう制御する制御手段とを含むことを特徴とする除算オ
ペランドの桁合せ回路が得られる。
実施例 以下、図面を参照しつつ本発明の詳細な説明する。
第1図は本発明の実施例を示す回路ブロック図であり、
第3図の浮動小数点加減算回路に第2図に示した除算オ
ペランドの桁合せ機能を付加したものである。第1図に
おいて、第2.3図と同等部分は同一符号により示して
いる。
第1図は第3図とほぼ同様に指数レジスタA42、指数
レジスタB43、仮数レジスタA46、仮数レジスタB
47、指数減算器A44、指数減算器B45、イコライ
ズシフタA52、イコライズシフタB53、符号比較回
路48、加減算タイプレジスタ57、反転指示生成回路
49、反転回路54、加算器55、リザルトレジスタ5
6を備えており、第3図の通常の浮動小数点加算器とし
ての機能をすべて備えている。
また、第1図では桁合せモードレジスタ16なるモード
レジスタを有し、浮動小数点データ用の加算器55を通
常の浮動小数点データの加算に用いるか、除算オペラン
ドの桁合せに用いるかを区別するモードが設定されてい
る。
すなわち、桁合せモードレジスタ16が通フ;(の浮動
小数点データの加算モードを示す場合には、リザルトセ
レクタ14は常に加算器55の出力を選択する。シフト
カウントセレクタ穴50、シフトカウントセレクタB5
1は第3図におけるイコライズカウントセレクタA50
.B51と全く同様の働きをする。
つまり、指数減算器B45出力の符号が負の時すなわち
(指数レジスタA42〈指数レジスタB43)の時には
、シフトカウントセレクタ穴50は指数減算器A44出
力を、シフトカウントセレクタB51は“0“を夫々出
力し、そうでない場合には、シフトカウントセレクタB
51は指数減算器B45出力を、シフトカウントセレク
タ穴50は0”を夫々出力する。
これに対し、桁合せモードレジスタ16が除算オペラン
ドの桁合せモードを示す場合には、リザルトセレクタ1
4は常にイコライズシフタム5・2出力を、シフトカウ
ントセレクタ穴50は桁合せシフトカウントレジスタ1
7出力を、シフトカウントセレクタB51は“0”を夫
々出力する。
なお、第1図では、第2図で示したシフトカウント生成
回路等は省略しである。
以下に第1図を用いた除算オペランドの桁合せについて
説明する。
(1)桁合せモードレジスタ16を除算オペランドの桁
合せモードにし、桁合せシフトカウントレジスタ17を
“O”にセットする。また加減算タイプレジスタ57を
絶対値比較のタイプにセットし、被除数および除数の仮
数部を各々仮数レジスタA46、仮数レジスタB47に
格納する。
(2)符号比較回路48において仮数レジスタA46、
B47の出力の符号を比較し、符号比較回路48出力と
加減算タイプレジスタ57出力とから反転指示生成回路
49においてイコライズシフタ853出力を反転するか
否かを判定する。
(3)イコライズシフタA52.B53において、仮数
レジスタA46.B47の出力を各々シフトカウントセ
レクタ穴50.851出力に応じて右シフトする。実際
には、仮数レジスタA46出力は、桁合せシフトカウン
トレジスタ17出力により右シフトされ、仮数レジスタ
B47出力は右シフトされない。
(4)反転指示生成回路49よりイコライズシフタ85
3出力を反転する指示が出た場合には、反転器54にお
いてイコライズシフタB53出力を反転して1の補数に
するとともに、加算器55の最下位への桁上げを“1”
とし、反転指示がてなかった場合には、イコライズシフ
タ853出力ををのまま反転器54より出力するととも
に、加算器55の最下位への桁上げを“Ooとし、加算
器55においてイコライズシフタA52と反転器54出
力を加算する。
(5)加算器55出力と仮数レジスタA46出力の符号
から、絶対値比較回路34においてlVi数レジスタA
1く1仮数レジスタB1が成立するか否かを判定し結果
をインデイケータレジスタ35に格納する。
(6)インデイケータレジスタ35出力から仮数レジス
タA1く1仮数レジスタBlなる関係が成立したと判定
された場合には、仮数レジスタA46、仮数レジスタB
47に与えられた被除数と除数の仮数部をそのまま除算
のオペランドの仮数部として用い、そうでない場合には
次の(7)以下の処理を続行する。
(7)第2図に示したシフトカウント生成回路40出力
、すなわち被除数と除数のリーディングサインカウント
の差から求めた被除数の右シフトカウントを桁合せシフ
トカウントレジスタ17に格納する。
(8)前記(2)、(3)、(4)、(5)と同様の被
除数右シフト及び絶対値比較を同時にい実行し、絶対値
比較の結果である絶対値比較回路34出力をインデイケ
ータレジスタ35に格納し、被除数の右シフト結果をリ
ザルトレジスタ56に格納する。
(9)インデイケータレジスタ35出力より仮数レジス
タA出力の右シフト結果1く1仮数レジスタB1なる関
係が成立したと判定された場合には、仮数レジスタB4
7に予め与えた除数の仮数部と、リザルトレジスタ56
に格納した被除数の右シフト結果とを除算のオペランド
の仮数部として用い、そうでない場合には、次の(10
)以下の処理を続行する。
(10)桁合せシフトカウントレジスタ17に指数の基
数により規定される1桁分のシフトカウントを格納し、
前記(2)、(3)、(4)、(5)と同様の被除数右
シフト及び絶対値比較を同時に実行し、絶対値比較の結
果をインデイケータレジスタ35、被除数の右シフト結
果をリザルトレジスタ56に格納する。
(l()インデイケータレジスタ35出力より仮数レジ
スタA出力の右シフト結果+<1仮数レジスタBlなる
関係が成立したと判定された場合には、仮数レジスタB
47に予め与えた除数の仮数部とりゲルトレジスタ56
に格納した被除数の右シフト結果とを、除数のオペラン
ドの仮数部として用いる。そして、そうでない場合は(
10)”。
(1()をくり返す。
尚、ここでは、指数の処理についての説明は省略したが
、被除数の仮数を右シフトする度にシフト数に応じて被
除数の指数値を増加させる必要があることは明白である
発明の効果 叙上の如く本発明によれば、−殻内な浮動小数点加算回
路に若干の金物量を追加するのみで浮動小数点データの
除算に用いるオペランドの桁合せ処理が効率良く行える
という効果がある。
【図面の簡単な説明】
第1図は本発明の実施例の回路ブロック図、第2図は従
来の除算オペランドの桁合せ回路の回路ブロック図、第
3図は一般的に広く用いられている浮動小数点加算回路
の回路ブロック図である。 主要部分の符号の説明 16・・・・・・桁合せモードレジスタ17・・・・・
・桁合せシフトカウントレジスタ20・・・・・・絶対
値比較回路 42.43・・・・・・指数レジスタ 46.47・・・・・・仮数レジスタ 48・・・・・・符号比較回路 49・・・・・・反転指示回路 50.51・・・・・・シフトカウントセレクタ52.
53・・・・・・シック 54・・・・・・反転回路 55・・・・・・加算器

Claims (1)

    【特許請求の範囲】
  1. (1)浮動小数点データの除算実行に先立ち被除数の仮
    数部を除数の仮数部より絶対値が小となるように桁合せ
    をなす浮動小数点除算器における除算オペランドの桁合
    せ回路であって、演算処理対象となる2つのオペランド
    データの指数部の差に応じて前記オペランドデータの仮
    数部の桁合せをなすべく前記オペランドデータを右シフ
    トするシフト手段及びこの桁合せ後の2つのオペランド
    データを加減算する加減算手段を含む浮動小数点加減算
    装置と、前記被除数の桁合せに必要なシフトカウントを
    生成する桁合せシフトカウント生成手段と、前記被除数
    の仮数部の符号と前記加減算手段の出力とから前記桁合
    せ後の出力の絶対値が前記除数の絶対値より小か否かを
    判定する絶対値比較手段と、前記浮動小数点加減算装置
    を除算オペランドの桁合せに用いる外部指令に応答して
    、前記桁合せシフトカウント生成手段により生成された
    シフトカウントを前記シフト手段へ供給するよう制御す
    る制御手段とを含むことを特徴とする除算オペランドの
    桁合せ回路。
JP1204056A 1989-08-07 1989-08-07 除算オペランドの桁合せ回路 Expired - Lifetime JPH0831026B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1204056A JPH0831026B2 (ja) 1989-08-07 1989-08-07 除算オペランドの桁合せ回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1204056A JPH0831026B2 (ja) 1989-08-07 1989-08-07 除算オペランドの桁合せ回路

Publications (2)

Publication Number Publication Date
JPH0368020A true JPH0368020A (ja) 1991-03-25
JPH0831026B2 JPH0831026B2 (ja) 1996-03-27

Family

ID=16484020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1204056A Expired - Lifetime JPH0831026B2 (ja) 1989-08-07 1989-08-07 除算オペランドの桁合せ回路

Country Status (1)

Country Link
JP (1) JPH0831026B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116820388B (zh) * 2023-08-24 2023-11-14 深圳比特微电子科技有限公司 除法器、处理器和计算装置

Also Published As

Publication number Publication date
JPH0831026B2 (ja) 1996-03-27

Similar Documents

Publication Publication Date Title
US5844830A (en) Executing computer instrucrions by circuits having different latencies
EP0472139A2 (en) A floating-point processor
US5426600A (en) Double precision division circuit and method for digital signal processor
JPH02289006A (ja) 浮動小数点加算器においてオペランドの仮数を加算し、減算する回路
JPH0776911B2 (ja) 浮動小数点演算装置
US7395297B2 (en) Floating point system that represents status flag information within a floating point operand
CN111752526B (zh) 浮点相加
US6178435B1 (en) Method and system for performing a power of two estimation within a data processing system
US3814925A (en) Dual output adder and method of addition for concurrently forming the differences a{31 b and b{31 a
JPH0454633A (ja) 高基数除算器
JP2511527B2 (ja) 浮動小数点演算器
JPH02294731A (ja) 浮動小数点数演算処理装置及び除数倍数生成装置
US7054898B1 (en) Elimination of end-around-carry critical path in floating point add/subtract execution unit
JPH0368020A (ja) 除算オペランドの桁合せ回路
US6202078B1 (en) Arithmetic circuit using a booth algorithm
US5661674A (en) Divide to integer
US4914579A (en) Apparatus for branch prediction for computer instructions
JP2507183B2 (ja) 浮動小数点加減算装置
US20020178202A1 (en) Floating point multiplier for delimited operands
JPH04172526A (ja) 浮動小数点除算器
JPH01282633A (ja) 非正規化数の処理方式
JP3100868B2 (ja) 浮動小数点数のための算術演算装置
JP2512801B2 (ja) 乗算器
JPH04213110A (ja) 浮動小数点算術演算方法及び装置
WO1998006029A1 (en) Apparatus and methods for execution of computer instructions