JPS60171535A - 除算装置 - Google Patents

除算装置

Info

Publication number
JPS60171535A
JPS60171535A JP2724684A JP2724684A JPS60171535A JP S60171535 A JPS60171535 A JP S60171535A JP 2724684 A JP2724684 A JP 2724684A JP 2724684 A JP2724684 A JP 2724684A JP S60171535 A JPS60171535 A JP S60171535A
Authority
JP
Japan
Prior art keywords
quotient
register
partial
divisor
correction
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
JP2724684A
Other languages
English (en)
Inventor
Hideki Nishimura
英樹 西村
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
Nippon Electric Co 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, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP2724684A priority Critical patent/JPS60171535A/ja
Publication of JPS60171535A publication Critical patent/JPS60171535A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/52Multiplying; Dividing
    • G06F7/535Dividing only

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔技術分野〕 本発明は中央処理装置の演算装置における除算装置に関
する。
〔従来技術〕
従来の大型計算機の除算方式には引放し方式があるが、
1回の繰返しで複数ビットを得ることができないため、
性能上の欠点がある。
次に、被除数をX、除数をY、剰余をRとしたとき、一
度にR−3Y 、 R−Y 、 R+Y 、 R+3Y
の4つのケースを同時に発生し、 R−2YとR+2Y
の符号を調べる回路によって前記4つのケースのいずれ
かを選択する方式がある。しかし、この方式はパードウ
葦ア量が大きく、性能的にも優れていない。
近年大型計算機では2乗算器の高速且つ大型化に対応し
て収束型除算と呼ばれる除算方式が採用されていること
が多い。これは被除数をX、除数をYとすると8分子分
母にともに飄を乗じていきYXN1×N2×・・・×N
kを1に収束させることによシXxN1×N2×・・・
×Nkを商に収束させる方法である。
しかし、この方式で得られる商は常に真の商に対して絶
対値で小さ目に算出され2割切れるケースでは商の最後
の1ビツトが他の方式と異なることがあるなどの欠点が
ある。加えて、剰余を保持していないため、従来の方式
に一致させようとすると商の補正に手間取り、高速性を
活かせない。しかも、この方式は乗算器の能力が小さい
とそのアルゴリズムに見当った性能が出ない。
また、従来、特願昭55−115532号明細書に記載
された除算装置がある。これは、除数の近似逆数をめて
該近似逆数を基に商を得るようにした除算装置である。
この除算装置は、被除数Xと除数Yとから商をh進法で
める装置であって。
除数の近似逆数をめる手段と、除数と前記近似逆数との
積である補正数をめる手段と、被除数と前記近似逆数と
の積を基にして1番目の板部会商(部分剰余)R1をめ
る手段と、i番目の板部会商R1の所定桁以下を、基準
値以上の時切り上げ基準値より小さい時効シ捨てて(こ
れは9例えば四捨五入である)、i番目の部分商Q、を
める丸め手段と、i番目の板部会商Riから、前記補正
数と1番目の部分商Q との積を減じた差を6倍して。
(i+1)番目の板部会商R,+、をめる手段と。
(i+1)番目の板部会商R1+1の正または負に応じ
て1番目の部分商Q、からOまたは1を減じた値の法り
の主鎖を、商の上位から1番目の部分商とする部分商補
正手段とを含んでいる。
この除算装置の計算過程を具体的数値をあげて説明する
。以下の例はh=i o oの場合で被除数X−0,1
23456、除数Y=0.456789の場合である。
即ち。
0.123456÷0.456789 をめる。
0.456789の近似逆数Tは2.189 とする。
即ち ’i”=2.189 である。また除数Yと近似逆数Tとの積である補正数り
は D=YXT=0.999911 である。また被除数Xと近似逆数Tとの積である板部会
商R1は R4=XXT=0.270245 である。1番目の部分商Q1は板部会商R1の小数点以
下を四捨五入して得られる。即ち Q1=00 である。そして2番目の板部会商R2は1番目の板部会
商R1から補正数りと1番目の部分商Q、との積を減じ
た差を6倍して得られる。即ち R2=(R1−QlxD)x100=27.0245で
ある。2番目の部分商Q2は2番目の板部会商R2の小
数点以下を四捨五入して得られる。即ちQ2=27 である。部分商補正手段は2番目の板部会商R2が正だ
から1番目の部分商Q1から0を減じたf直(fill
ち0)を商の上位から1番目の部分商Q1′ とする。
即ち Q、’=OO である。3番目の板部会商R3は2番目の板部会商R5
=(R2−Q2×D)×100=2.6903である。
3番目の部分商Q3は上記同様3番−の板部会商R3の
小数点以下を四捨五入して得られる。
即ち Q3=03 である。なお部分商補正手段は3番目の板部会商R3が
正だから2番目の部分商Q2からOを減じた値(即ち2
7)を商の上位から2番目の部分商Q2′とする。即ち Q2’=27 である。
次に4番目の板部会商R4は上述した3番目の板部会商
R6と同様にして得られる。即ちR4=(R3−Q3X
D)X100=−30,9433である。4番目の部分
商Q4は上述と同様4番目の板部会商R4の小数点以下
を四捨五入して得られる。
即ち Q4=−31 である。なお2部分商補正手段は4番目の板部会商R4
が負だから3番目の部分商Q3から1を減じた値(即ち
02)を商の上位から3番目の部分商Q3′ とする。
即ち Q3′=02 である。
次に5番目の板部会商R5は同様にして得られR5=(
R4−Q4XD)X100=5.3941である。また
、5番目の部分商Q5も同様に得られ5−05 である。ただしとのQ5は商の有効桁数外であり不用で
ある。なお部分商補正手段は5番目の板部会商R5が正
であり、且つ、3番目の部分商Q3から1を減じた際の
補正から4番目の部分商Q4に100を加えた値(即ち
69)を商の上位から4番目の部分商Q4′ とする。
即ち Q4′=69 である。
、そして商レジスタには部分商補正手段の出力Q1’ 
l Q2’ I Q7 + Q4’を基に小数点を考慮
した正しい商が得られる。即ち、商レジスタには正しい
商00.270269 が得られる。
上述した特願昭55−115532号の除算装置は。
部分商補正手段の回路構成が複雑で、LSI化すると大
形化する欠点がある。
〔発明の目的〕
本発明の目的は、上述した欠点を除去し、上述した部分
商補正手段の代りに回路構成が単純な加算手段を用いた
。LSI化に適した。高速の除算装置を提供することに
ある。
〔発明の構成〕
本発明によれば。
被除数と除数とから商をh進法でめる除算装置において
前記除数の近似逆数をめる手段と。
前記除数と前記近似逆数との積である補正数をめる手段
と。
前記被除数に前記近似逆数を乗じて1番目の板部会商R
1をめる手段と。
i番目の板部会商R,の所定桁以下を基準値以上の時切
り上げ基準値より小さい時切り捨てて1番目の部分商Q
、をめる部分商算出手段と。
前記1番目の板部会商R,から+?’+1記補正数とi
番目の部分商Qとの積を引いた差をhのt乗倍(tは正
の整数)して(i+1)番目の板部会商R,+1′!i
−求める部分除算手段と。
(+−1)番目までの部分商の総和とi番目の部分商Q
、とをhの4乗倍の桁合せをしながら加算する加算手段
とを含み。
該加算手段の出力を基に、正しい商を得るようにした除
算装置が得られる。
〔発明の原理〕
本発明は以下の原理から成シ立っている。
被除数X、除数Yはともにh進数で予め正規化されてい
るとする。商qは式■で表わされその範囲は弐〇で表わ
される。
q−■ ■ lql <h ■ 除数Yの近似逆数Tを式■が成立するように選ぶ。
式■の分子分母に近似逆数Tを乗じてそれぞれR1+ 
Dで表わす。
X−T R1R1 q=百−下一信コ 0 D=1+δよりR4の小数点以下を基準値以上の時切り
上げ基準値より小さい時切り捨てて(例えば四捨五入し
て)、その整数部を取出し初回の部分商Q1とする。
Q、=〔R,+T)、 ■ 〔A)Gはガウスの記号を表し、Aよシ小さい整数の最
大値を表す。
部分商Q1に対する剰余X2を式■で表わす。
X2= (X−Q4.Y)・h′ 0 次に被除数を剰余X2.除数Yとして以下の展開を行な
い部分商Q2をめる。
x2 x2・T R2 Q2 =y =〒T=D ■ X2に近似逆数Tを乗じてR2と定義するとR2はカ■
のように展開される。
R2=X2T= (X−Ql・Y)・T−h’= (R
,−Q、・D)・h6 ■ ここでIq2の範囲について調べる。式のと弐〇がら 1 q2 = (−y −Q、 )・h′ =(q−Q、)・hL ■ 式■と式■よシ Q1= 〔q+qδ十委〕。 [相] 1qal<hz、 1 、h−t=−!−■2 を得る。
ε= qJ +T O でεを定義すると 0くε〈l。
となる。これよシ Q、=[q+ε〕。 ■ となシ 1q−Q、l(1■ を満たす。
従って式■よシ 1q21≦Iq−Q、l・h’(h’ [相]を得る。
部分商Q2はD=1+δキ1よJ R2の小数点以下を
前述と同様に切り上げまたは切シ捨てて弐〇によりめる
1 ■ Q2=[R2+y)。
以下9次に示す漸化式により展開する。
Xi+1 = (Xi−Qi・Y)・hL [相]X 
i+1−五ビーと 。
qi++=〒−Y−T D R,+、= (R,−QlD)・ht@Q、+げC”k
+1 + 2 )G Oi = 1ではl X、=X 
、 q、=qを表わす。
式Oと式■から (J=(ql+q1・δ+1)。 @ を得る。
Iq、l<h’ ■ を仮定すると式[相]から式[相]の展開と全く同様に
して lq[Qll<1 6 を得る。
式■と式[相]から q1+1=(ql−Qθ・ht [相]よシ 1(11+11 < h’ @ を得る。
t≧2とすれば式■と式[相]から数学的帰納法により
剰余X、に対する商q、は常に式Oを満たしており! これから毎回h ビットの商を得ていることがわがる。
式[相]を展開して式Oを得る。
Yで割って l qm−M l < ” よJam個の部分商Q1の
加算結果の精度はh−(m−1)jである。
m個の部分商から必要な精度桁迄求まったとする。その
際、最後の剰余Xm+、が被除数Xと一致している必要
がある。
即ち、XとYが同符号ならばqm+1≧o、xとYが異
符号ならばr qm+1≦0となっている必要がある。
また+ q1yl+1の符号はRm+1の符号に一致す
る。
”m+1 = 9m+1 = 0ならば割切れたことを
示し、商の補正は不要である。゛ XとYが異符号でRm+j > 0ならば下記の補正を
する。
XとYが同符号でRrn+、<0ならば下記の補正をす
る。
即ち、商の最下位桁に±1の補正を行なうことで従来と
同じ商が得られる。
ところで、X、とR2は式■から n、=xi−r ’ @ の関係にあり、除傅アルプリズムからはRi、 X。
ともに剰余と呼んで差しつかえない。町は実際の・・−
μウェア上に表われる。なお、以後はR,を板部会商と
称す。
〔実施例〕
次に本発明の実施例について図面を参照しで説明する。
第1図を参照すると2本発明の一実施例による除算装置
の回路構成が示されている。本実施例では、データは1
6進数を1桁として取扱い、商を16進2桁ずつ得る。
即ちh=16であt) t t =2である。また2本
実施例の除算装置に入力される被除数X及び除数Yは正
規化されているとする。
除数Yは除数レジスタ2にセットされ、近似逆数Tをめ
るため逆数テーブル14を索引する。
除数Yは除数レジスタ2から被乗数レジスタ1に入力さ
れ、逆数テーブル14で得られる近似逆数Tは乗数レジ
スタ3にセットされる。
被乗数レジスタ1と乗数レジスタ3の内容は乗算器8で
乗算され、キャリーセーブアダー(C8A)9を通り、
受けのレジスタ4とレジスタ5にセットされる。レジス
タ4とレジスタ5の内容はフルアダー10で全加算され
、レジスタ6にセットされる。このとき、レジスタ6に
はD=Y−Tの値が得られている。除数Yに続いて被除
数Xは近似逆数Tと乗算される。これによって第1番目
の板部会商R1がレジスタ6に得られると同時に、レジ
スタ6にあったDの値は被乗数レジスタlに2桁左シフ
トした形で戻され、以後りの値は被乗数レジスタ1に常
駐する。このとき、Dの値はD−162となる。
レジスタ6に第1番目の板部会商R1が得られると、こ
の板部会商R1の整数部及び小数点以下1ビツトが部分
商算出回路11に入力され、第1番目の部分商Q、を得
る。
部分商算出回路11は、第2図に示すように。
前記板部会商R1の整数部6mに小数点以下lピット目
6bを加える操作を部分商算出アダー21で行ない、第
1番目の部分商Q、を得る。また、インバータ23.ア
ダー22によシQ、の2の補数を取り、−Q、を得る。
第1図に戻って2部分商Q、は商収集アダー12に入力
され、商レジスタ7に取込まれる。他方。
−Q、は乗数レジスタ3にセットされる。
レジスタ6の板部会商R4は2桁左シフトした形で即ち
R1・162の形でキャリーセーブアダー9に入力され
る。加えて2乗算器8からは−Q、・D−16が入力さ
れ、レジスタ4とレジスタ5には。
R2= CB、−Q、D) 162 を得る。レジスタ4とレジスタ5はフルアダー10で全
加算されて、レジスタ6に第2番目の板部会商FL2を
得る。
第2番目の板部会商R2からは、上記同様に部分商算出
回路11で第2番目の部分商Q2及び−Q2が作成され
る。
第2番目の部分商Q2は商収集アダー12に入力される
。商収集アダー12には商レジスタ7からのデータが左
2桁シフトした形で入力され、商と累算する機能を有す
る。−Q2は乗数レジスタ3にセットされる。
以上の部分商を得る過程を除算ループと名づけると、必
要な除算ループをm回経て精度桁を得たとする。除算ル
ープをもう1回起動してレジスタ6に最終板部分溜Rm
+1を得る。
第1図の商補正検出回路13は最終板部分溜Rm+1を
得た後に動作する。商補正検出回路13の詳細を第3図
に示す。第3図において、商補正検出回路13は、レジ
スタ6からの出力を受けるマイナス符号検出回路33及
びゼロ検出回路32を備え、且つ被除数Xと除数Yが異
符号であることを示す情報を保持するフリップフロッグ
31を備える。36及び37はインバータ、34及び3
5はアンドゲートである。
最終板部分溜Rm+1がゼロの場合、ゼロ検出回路32
の出力がパ1″′のため、商の補正はなされない。被除
数Xと除数Yが異符号で最終板部分溜Rm+、が正なら
ば、フリップフロッグ31の出力が“1′でマイナス符
号検出回路33の出力が”o’であるので、+1補正を
行ない、同符号で剰余が負ならば−l補正を行なう。
補正された商は最終結果としてレジスタ7に入力され、
そこからストア対象にストアされ、除算を終了する。
近年、大型計算機及び超大型計算機では演算回路は専用
化しつつある。専用の演算回路はマイクロプログラムで
制御する必要はなくノ1−ドウエア制御である。また、
演算回路を含めて命令の実行がパイプラインで処理され
る傾向にある。その際。
・ぐイゾを乱す要因が少ない制御方法が必要となる。
本発明による除算装置では、必要な精度を得るだめの演
算時間が固定であり、パイプを管理しやすい。
また、パイプ管理が演算回路とは独立して存在すると演
算時間が可変であったシネ意な例外要因による乱れは好
ましくない。
除算では除数の値が0の場合2例外となる。本発明によ
る除算装置では、除数がOの場合に近似逆数が勝手な値
になったまま除算ループにはいシ。
板部分商町を左シフトし続けると乗算器その他でオーバ
フローが発生し2乗算器の障害チェックなどの方法によ
っては障害と間違える可能性がある。
除数が00場合、除算をすぐに中止する方法もあるが2
本発明では、近似逆数を0にすることによシそのまま除
算を遂行し固定時間後の終了時に除数がOである例外を
報告する形を取る。このため。
・やイゾラインに乱れはない。
〔発明の効果〕
本発明によれば、従来の乗算器を用いない除算方式に比
べて高速である。また、従来の乗算器を用いた収束型除
算装置と比較すると、板部分面(剰余)を保持している
為、商の補正が容易であること、及び実行時間が固定で
あシ、ツクイブライン装置に適しているなどの効果があ
る。また、従来の収束型除算に比べて2乗算器の能力に
影響されないという利点もある。更に1本発明では従来
の装置の部分商補正手段の代シに回路構成が単純な加算
手段を用いた。 LSI化に適した除算装置が得られる
【図面の簡単な説明】
第1図は本発明の一実施例によ込除算装置を示した回路
図、第2図は第1図の部分商算出回路11の詳細を示し
た回路図、第3図は第1図の商補正検出回路13の詳細
を示した回路図である。 図において、1は被乗数レジスタ、2は除数レジスタ、
3は乗数レジスタ、4はレジスタ、5はレジスタ、6は
レジスタ、7は商レジスタ、8は乗算器、9はキャリー
セーブアダー、10はフルアダー、11は部分商算出回
路、12は商収集アダー、13は商補正検出回路、14
は逆数テーブル、21は部分商算出アダー、22は2の
補数アダー、31はフリップフロッグ、32はゼロ検出
回路、33は符号回路。

Claims (1)

  1. 【特許請求の範囲】 1、 被除数と除数とから商をh進法でめる除算装置に
    おいて。 前記除数の近似逆数をめる手段と。 前記除数と前記近似逆数との積である補正数をめる手段
    と。 前記被除数に前記近似逆数を乗じて1番目の板部会商R
    4をめる手段と。 1番目の板部分、商R0の所定桁以下を基準値以上の時
    切シ上げ基準値よフ小さい持切フ捨てて1番目の部分商
    Qiをめる部分商算出手段と。 前記1番目の板部会商Riから、前記補正数と1番目の
    部分商Q、との積を引いた差をhの2乗倍(tは正の整
    数)して(t+i )番目の板部会商Ri+1をめる部
    分除算手段と。 (1−1)番目までの部分商の総和と1番目の部分商Q
    、とをhot乗倍の桁合せをしながら加算する加算手段
    とを含み。 該加算手段の出力を基に・、正しい商を得るようにした
    除算装置。
JP2724684A 1984-02-17 1984-02-17 除算装置 Pending JPS60171535A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2724684A JPS60171535A (ja) 1984-02-17 1984-02-17 除算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2724684A JPS60171535A (ja) 1984-02-17 1984-02-17 除算装置

Publications (1)

Publication Number Publication Date
JPS60171535A true JPS60171535A (ja) 1985-09-05

Family

ID=12215716

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2724684A Pending JPS60171535A (ja) 1984-02-17 1984-02-17 除算装置

Country Status (1)

Country Link
JP (1) JPS60171535A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4881193A (en) * 1986-09-04 1989-11-14 Hitachi, Ltd. Rational number operation unit for reduction
JP2007257225A (ja) * 2006-03-23 2007-10-04 Hitachi Ltd 計算装置、および、計算方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4881193A (en) * 1986-09-04 1989-11-14 Hitachi, Ltd. Rational number operation unit for reduction
JP2007257225A (ja) * 2006-03-23 2007-10-04 Hitachi Ltd 計算装置、および、計算方法

Similar Documents

Publication Publication Date Title
US5065352A (en) Divide apparatus employing multiplier with overlapped partial quotients
US7395304B2 (en) Method and apparatus for performing single-cycle addition or subtraction and comparison in redundant form arithmetic
JP3352887B2 (ja) クランプ付除算器、このクランプ付除算器を備えた情報処理装置及び除算処理におけるクランプ方法
JPH0368416B2 (ja)
US4797849A (en) Pipelined vector divide apparatus
US20090172069A1 (en) Method and apparatus for integer division
Bayrakci et al. Reduced delay BCD adder
US5177703A (en) Division circuit using higher radices
US7539720B2 (en) Low latency integer divider and integration with floating point divider and method
JP2502836B2 (ja) 除算回路の前処理装置
US4538238A (en) Method and apparatus for calculating the residue of a signed binary number
US10216481B2 (en) Digit recurrence division with scaling and digit selection using intermediate value
US7016930B2 (en) Apparatus and method for performing operations implemented by iterative execution of a recurrence equation
US5954788A (en) Apparatus for performing modular multiplication
JP2511527B2 (ja) 浮動小数点演算器
JPS60171535A (ja) 除算装置
JP3064405B2 (ja) 複素数の演算処理方式
US9804998B2 (en) Unified computation systems and methods for iterative multiplication and division, efficient overflow detection systems and methods for integer division, and tree-based addition systems and methods for single-cycle multiplication
JPS59154542A (ja) 乗算装置
US3249747A (en) Carry assimilating system
JPS59116852A (ja) 高速除算装置
JPS6259828B2 (ja)
JP2512801B2 (ja) 乗算器
JPS6027025A (ja) 除算回路
JP2608090B2 (ja) 高基数非回復型除算装置