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

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

Info

Publication number
JPH0831026B2
JPH0831026B2 JP1204056A JP20405689A JPH0831026B2 JP H0831026 B2 JPH0831026 B2 JP H0831026B2 JP 1204056 A JP1204056 A JP 1204056A JP 20405689 A JP20405689 A JP 20405689A JP H0831026 B2 JPH0831026 B2 JP H0831026B2
Authority
JP
Japan
Prior art keywords
register
output
operand
digit
shift
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.)
Expired - Lifetime
Application number
JP1204056A
Other languages
English (en)
Other versions
JPH0368020A (ja
Inventor
敬 金澤
真行 木村
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
Original Assignee
NEC Corp
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 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

Description

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

Cited By (1)

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

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116820388A (zh) * 2023-08-24 2023-09-29 深圳比特微电子科技有限公司 除法器、处理器和计算装置
CN116820388B (zh) * 2023-08-24 2023-11-14 深圳比特微电子科技有限公司 除法器、处理器和计算装置
US12277405B1 (en) 2023-08-24 2025-04-15 Shenzhen Microbt Electronics Technology Co., Ltd. Divider, processor, and calculation apparatus

Also Published As

Publication number Publication date
JPH0368020A (ja) 1991-03-25

Similar Documents

Publication Publication Date Title
US5222037A (en) Floating-point processor for performing an arithmetic operation on fixed-point part data with high speed rounding of a result
EP0351242B1 (en) Floating point arithmetic units
JP2662196B2 (ja) 演算結果正規化方法及び装置
JPH0776911B2 (ja) 浮動小数点演算装置
EP0530372B1 (en) Numerical expression converter and vector processor using the same
US20180052660A1 (en) Apparatus and method for fixed point to floating point conversion and negative power of two detector
US5426600A (en) Double precision division circuit and method for digital signal processor
US4758974A (en) Most significant digit location
US3814925A (en) Dual output adder and method of addition for concurrently forming the differences a{31 b and b{31 a
KR100203468B1 (ko) 부동소수점수를 위한 산술연산장치
Boldo et al. Emulation of a FMA and correctly rounded sums: Proved algorithms using rounding to odd
US5247471A (en) Radix aligner for floating point addition and subtraction
US5408426A (en) Arithmetic unit capable of performing concurrent operations for high speed operation
JP2511527B2 (ja) 浮動小数点演算器
US7016930B2 (en) Apparatus and method for performing operations implemented by iterative execution of a recurrence equation
GB2549153B (en) Apparatus and method for supporting a conversion instruction
US3489888A (en) Floating point look-ahead binary multiplication system utilizing two's complement notation for representing negative numbers
JPH0831026B2 (ja) 除算オペランドの桁合せ回路
US4914579A (en) Apparatus for branch prediction for computer instructions
JP2578482B2 (ja) 浮動小数点演算器
JPH0435777B2 (ja)
JP3100868B2 (ja) 浮動小数点数のための算術演算装置
JPH02171923A (ja) 浮動小数点加減算装置
JP2752698B2 (ja) 浮動小数点加減算回路
TW434508B (en) Floating point operation architecture with operand tags