JPS60258643A - 除算装置 - Google Patents
除算装置Info
- Publication number
- JPS60258643A JPS60258643A JP59113809A JP11380984A JPS60258643A JP S60258643 A JPS60258643 A JP S60258643A JP 59113809 A JP59113809 A JP 59113809A JP 11380984 A JP11380984 A JP 11380984A JP S60258643 A JPS60258643 A JP S60258643A
- Authority
- JP
- Japan
- Prior art keywords
- register
- divisor
- reciprocal
- quotient
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
- G06F7/535—Dividing only
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49905—Exception handling
- G06F7/49926—Division by zero
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
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は中央処理装置の演算装置における除算装置に関
する。
する。
本発明は、既に出願されている「除算装置」(特願昭5
5−115532号)を基にしている。
5−115532号)を基にしている。
前記装置は、除数の逆数の近似値を用いる乗算を基本と
した方式で、1回の繰シ返しで複数ビットの商を誤差な
くめることができる。従って、実行時間が固定であり、
演算の管理も容易である。
した方式で、1回の繰シ返しで複数ビットの商を誤差な
くめることができる。従って、実行時間が固定であり、
演算の管理も容易である。
また、同じく除数の逆数の近似値を用い乗算を基本とす
る収束型除算に比して9乗算に使用する乗算器の能力の
影響を受けにくいなどの利点もある。
る収束型除算に比して9乗算に使用する乗算器の能力の
影響を受けにくいなどの利点もある。
ところが、前記装置を/’?イゾライン方式の中央処理
装置の演算装置に使用すると、除数が00場合に近似逆
数が定義できなくなシ、アルゴリズム上1乗算器の桁あ
ぶれを発生し障害状態となる。
装置の演算装置に使用すると、除数が00場合に近似逆
数が定義できなくなシ、アルゴリズム上1乗算器の桁あ
ぶれを発生し障害状態となる。
従って、演算を中止する必要があり、演算制御とパイプ
ライン制御とを分離している場合は不都合が多い。
ライン制御とを分離している場合は不都合が多い。
本発明の目的は、前記欠点を解決すべく、除数が0の場
合にも演算を中止することなく実行できる除算装置を提
供することにある。
合にも演算を中止することなく実行できる除算装置を提
供することにある。
本発明は被除数と除数とから商をg進数でめる除算装置
において、除数の近似逆数をめる手段と、前記除数が0
0とき前記近似逆数を0にする手段と、前記除数と前記
近似逆数の積から補正除数をめる除数補正手段と、前記
被除数に前記近似逆数を乗じて1番目の部分剰余R1を
める乗算手段と、1番目の部分剰余Rを四捨五入して仮
布Piをめる丸め手段と、前記i番目の部分剰余Riか
ら前記補正除数と前記i番目の仮布P1との積を減じた
差を1倍して1+1番目の部分剰余R1+1をめる部分
除算手段と、前記部分剰余Ri+1の正負に応じて前記
仮布P1からO又は1を減じた値の法gの上値を商の上
位から1桁目とする商補正手〔発明の原理〕 本発明は以下の原理から成シ立っている。なお。
において、除数の近似逆数をめる手段と、前記除数が0
0とき前記近似逆数を0にする手段と、前記除数と前記
近似逆数の積から補正除数をめる除数補正手段と、前記
被除数に前記近似逆数を乗じて1番目の部分剰余R1を
める乗算手段と、1番目の部分剰余Rを四捨五入して仮
布Piをめる丸め手段と、前記i番目の部分剰余Riか
ら前記補正除数と前記i番目の仮布P1との積を減じた
差を1倍して1+1番目の部分剰余R1+1をめる部分
除算手段と、前記部分剰余Ri+1の正負に応じて前記
仮布P1からO又は1を減じた値の法gの上値を商の上
位から1桁目とする商補正手〔発明の原理〕 本発明は以下の原理から成シ立っている。なお。
前記既出願の「除算装置」との重複箇所については説明
は省略する。
は省略する。
簡単のため、正の被除数Nと正の除数りについて除算を
行い、NとDは予め正規化されているものとする。商q
は次式(1)で表わされる。
行い、NとDは予め正規化されているものとする。商q
は次式(1)で表わされる。
q =6 (0<q<g ) (1)
Dの逆数の近似値Tを次式(2)を満足するように選ぶ
。
。
式(1)の分子2分母にTを乗じ、 R,=N−T 、
C=D−Tと置くと次式(3)が得られる。
C=D−Tと置くと次式(3)が得られる。
1
q= −(3)
に
れによシ式(1)の除算を逆数の近似値Tを乗じること
によ91式(3)の除算に変換したことを意味する。
によ91式(3)の除算に変換したことを意味する。
式(2)よシ、C=1+δであり1式(3)は次のよう
に変形される。
に変形される。
R1=q−C
(4)
=q・(1+δ)
R1を四捨五入した値をPlとし商qに対する最初の近
似商である。
似商である。
P1=〔R1+医〕。 −(5)
〔〕oはガウスの記号である。
すると
Iq’−p、 l < 1 (6)
となる。(証明は証明1として後述。)P、を近似商と
した際の剰余R2を次式(7)で定義する。
した際の剰余R2を次式(7)で定義する。
R2=(R1−P、・C)・g(7)
R2に対する商をq2とす・ると1両辺をCで割って次
式(8)を得る。
式(8)を得る。
q2=(q−p、)・g(8)
ここで式(6)より式(9)を得る。
1q21<g (9)
これは、商q2の絶対値がgの範囲内であることを示し
ている。
ている。
一般化して、剰余Riの商Qiの近似商Piは、Riを
四捨五入してめ以下を得る。
四捨五入してめ以下を得る。
p 1 =CRr + 2 )。 αQR4=(J−4
Pt−t・C)・g αやR1″q、−c (2) ただしQ”Qlとする。
Pt−t・C)・g αやR1″q、−c (2) ただしQ”Qlとする。
式α力と弐α埠から次式(2)を得る。
q 、= (Qi−1p、−1)・g (2)式(6)
と同様に(証明は証明1に同じ)。
と同様に(証明は証明1に同じ)。
Iq4、−p、−1l<+ 04
より次式(ト)を得る。
1q31<g (ロ)
ここで補正近似商Qiを以下に定義する。
Qi=81−1・g+Pi−8i ◇QS については
以下に従う。
以下に従う。
[S−1=0
(s、 = 0 (Ri+1 〉0のとき)Q乃(5i
−= i (RI+、<0のとき)すると 0<Q4<g 6樽 となる。(証明略) 次に1式(8)と式01を連続して変形して次式〇燵を
得る。
−= i (RI+、<0のとき)すると 0<Q4<g 6樽 となる。(証明略) 次に1式(8)と式01を連続して変形して次式〇燵を
得る。
弐〇時に従ってに桁までQ、をめる。
弐〇つと成員から
を得る。
0く旺・g+qK++<g (2り
より(証明略)弐〇〇にて、に桁の商が捷る。
式0時よりQlの加算は桁上げを発生せず、各桁独立で
即ち連接により商がめられる。
即ち連接により商がめられる。
【証明1)
式(5)と式(4)から。
Pl−[q+q・δ+ )a (ハ)
とおく。式(2)よりεは次の範囲にある。
0〈さく1 (ハ)
以上から
=η又はη−1
故に、Iqp、l<i @
(証明終)
以下余日
〔実施例〕
第1図に本発明による除算回路の一実施例を示す。デー
タは16進1桁として扱い、商は1桁ずつ得る。即ちl
g=16である。
タは16進1桁として扱い、商は1桁ずつ得る。即ちl
g=16である。
第2図は第1図の部分商算出補正回路11を詳細に示し
たものである。第3図は部分商の補正条件を示し、第4
図は除算ルーノのタイムチャートである。
たものである。第3図は部分商の補正条件を示し、第4
図は除算ルーノのタイムチャートである。
第1図の除算回路は乗算器を中心に構成され。
被乗数レジスターと乗数レジスタ3の内容の積がマルチ
プライア8及びキャリセーブアダー9を経ン゛ て、中間積をしIメタ4とレジスタ5で受け取9゜フル
アダー10を経てレジスタ6に積を得る。
プライア8及びキャリセーブアダー9を経ン゛ て、中間積をしIメタ4とレジスタ5で受け取9゜フル
アダー10を経てレジスタ6に積を得る。
以後の説明は除算動作を含めて行う。
第1図において、除算回路の入力される被除数N及び除
数りは正規化されているとする。除数りはレジスタ2に
セットされ、近似逆数Tをめるため逆数テーブル12を
索引する。その際、逆数テーブル12は、除数D=Oに
対して近似逆数T=Oとなるように設定されている。
数りは正規化されているとする。除数りはレジスタ2に
セットされ、近似逆数Tをめるため逆数テーブル12を
索引する。その際、逆数テーブル12は、除数D=Oに
対して近似逆数T=Oとなるように設定されている。
除数りはレジスタ2から被乗数レジスターに入力され、
前述によシ得られた近似逆数Tは乗数レジスタ3にセッ
トされる。除数りと近似逆数Tぽ乗算され、レジスタ6
に積C= D−Tを得る。
前述によシ得られた近似逆数Tは乗数レジスタ3にセッ
トされる。除数りと近似逆数Tぽ乗算され、レジスタ6
に積C= D−Tを得る。
除数DK続いて、被除数Nが被乗数レジスターに入力さ
れ、近似逆数Tと乗算される。剰余R1=N−T がレ
ジスタ6に得られると同時に、それ迄レジスタ6に保持
されていた積Cの値は、被乗数レジスターに1桁左シフ
トした形で戻され。
れ、近似逆数Tと乗算される。剰余R1=N−T がレ
ジスタ6に得られると同時に、それ迄レジスタ6に保持
されていた積Cの値は、被乗数レジスターに1桁左シフ
トした形で戻され。
以後、積Cの値は被乗数レジスターに常駐する。
積Cの値はC・16となる。
レジスタ6に剰余R4がまると、その符号、整数部、及
び小数点以下1ビツトが部分商算出補正回路11に入力
される。部分商算出補正回路11の詳細は第2図に示し
ている。
び小数点以下1ビツトが部分商算出補正回路11に入力
される。部分商算出補正回路11の詳細は第2図に示し
ている。
第2図を参照して1部分商算出アダー23によシ剰余R
9の小数点以下が四捨五入されて補正前の部分商P、が
作成される。部分商p、はレジスタ1 1 21に保存されると同時に、インバータ26を通してア
ダー24によシ負に変換される。−P、は第1図の乗数
レジスタ3に移送され2次の除算ループにはいる。
9の小数点以下が四捨五入されて補正前の部分商P、が
作成される。部分商p、はレジスタ1 1 21に保存されると同時に、インバータ26を通してア
ダー24によシ負に変換される。−P、は第1図の乗数
レジスタ3に移送され2次の除算ループにはいる。
剰余R,の符号はフリップフロップ22にセットされる
。フリップフロップ22は部分商の補正に使用される。
。フリップフロップ22は部分商の補正に使用される。
補正は1回遅れで実施され9次の剰余R,+、がレジス
タ6にまった時点で行われる。
タ6にまった時点で行われる。
そのときまでレジスタ21及びフリ、fフロップ22の
内容は保存されている。部分商の補正は部分商補正ラダ
ー25で行われ1部分商補正アダー25の一方の入力に
はレジスタ21が入力され。
内容は保存されている。部分商の補正は部分商補正ラダ
ー25で行われ1部分商補正アダー25の一方の入力に
はレジスタ21が入力され。
他方の入力には4人力セレクタ27が前置されている。
4人力セレクタ27はフリップフロップ22及び剰余R
1−Hの符号で選択され、それぞれ式0QのS、−1と
S、に対応している。そして2選択条件を第3図に示す
。
1−Hの符号で選択され、それぞれ式0QのS、−1と
S、に対応している。そして2選択条件を第3図に示す
。
このようにしてまった補正部分商Qiは第1図の商を収
集するレジスタ7に移送される。レジスタ7では部分商
補正アメ−25から補正部分商Q。
集するレジスタ7に移送される。レジスタ7では部分商
補正アメ−25から補正部分商Q。
が最下位桁に入力される。その際、以前の内容は左に1
桁シフトされる。
桁シフトされる。
第4図を参照して、除算ループについて述べる。
前述の剰余Riはレジスタ6から左に1桁シフトした形
でキャリセーブアダー9に戻される。そして。
でキャリセーブアダー9に戻される。そして。
部分商算出補正回路11で作成された一P、は乗数レジ
スタ3に移送され、被乗数レジスタ1に常駐しているC
・16と乗算される。演算結果である剰余RH−1ハ、
レジスタ4.レジスタ5.及びフルアダー10を経由し
てレジスタ6にセットされる。剰余R1+、は下記で表
わされ1式Hに対応する。
スタ3に移送され、被乗数レジスタ1に常駐しているC
・16と乗算される。演算結果である剰余RH−1ハ、
レジスタ4.レジスタ5.及びフルアダー10を経由し
てレジスタ6にセットされる。剰余R1+、は下記で表
わされ1式Hに対応する。
R1+ 1 ”” (RI P t・C)・16以上の
過程を除算ループと呼び、に千1回のループでに桁の商
を得る請求められた商はレジスタ7に蓄積され、ストア
先にストアされる。
過程を除算ループと呼び、に千1回のループでに桁の商
を得る請求められた商はレジスタ7に蓄積され、ストア
先にストアされる。
以上が本実施例の説明であるが、除数D=Oの場合、C
=0となる。もし、近似逆数T(OだとRi+1 =1
6R。
=0となる。もし、近似逆数T(OだとRi+1 =1
6R。
よシ除算ループを°繰シ返し実行しているうちに乗算器
はオーバフローしてしまうことになる。乗算器のオーバ
フローは通常、障害として扱われる為。
はオーバフローしてしまうことになる。乗算器のオーバ
フローは通常、障害として扱われる為。
除数−〇の場合は処理を中断する必要がある。
近年、大型計算機及び超大型計算機では、演算回路が専
用化しつつある。また、演算回路を含めて命令の実行が
バクイブラインで処理される傾向にあシ、パイプライン
を乱す要因の少ない制御方法が必要となる。その際、演
算回路の制御とieイブラインの制御の制御主体が独立
している場合、前記の如く途中で演算を中断することは
・ぐイゾラインの乱れとなる。
用化しつつある。また、演算回路を含めて命令の実行が
バクイブラインで処理される傾向にあシ、パイプライン
を乱す要因の少ない制御方法が必要となる。その際、演
算回路の制御とieイブラインの制御の制御主体が独立
している場合、前記の如く途中で演算を中断することは
・ぐイゾラインの乱れとなる。
通常、除数=0の場合は演算例外となり、演算回路で積
極的に演算を実行する必要はない。しかし、演算例外の
有無にかかわらず実行時間が固定で命令の実行を終了す
るのがパイプライン装置では望ましい。また、もしベク
トル命令で除算をサポートするようになると、前記演算
例外の場合にもベクトル要素管理を乱さない必要がある
。本発明はこれを満たす。
極的に演算を実行する必要はない。しかし、演算例外の
有無にかかわらず実行時間が固定で命令の実行を終了す
るのがパイプライン装置では望ましい。また、もしベク
トル命令で除算をサポートするようになると、前記演算
例外の場合にもベクトル要素管理を乱さない必要がある
。本発明はこれを満たす。
以上説明してきたように2本発明によれば除数二〇の場
合にも演算を中止することなく、実行時間が固定で命令
の実行を終了することができる。
合にも演算を中止することなく、実行時間が固定で命令
の実行を終了することができる。
第1図は本発明による除算回路の一実施例を示し。
第2図は第1図における部分商算出補正回路のブロック
図。 第3図は部分商の補正条件を示した図。 第4図は除算ループのタイムヂャートである。 図中、1・・・被乗数レジスタ、2・・・乗数レジスタ
。 3〜7・・レジスタ。 第2図
図。 第3図は部分商の補正条件を示した図。 第4図は除算ループのタイムヂャートである。 図中、1・・・被乗数レジスタ、2・・・乗数レジスタ
。 3〜7・・レジスタ。 第2図
Claims (1)
- 【特許請求の範囲】 1、被除数と除数とから商をg進数でめる除算装置にお
いて、除数の近似逆数をめる手段と。 前記除数がOのとき前記近似逆数をOにする手段と、前
記除数と前記近似逆数との積から補正除数をめる除数補
正手段と、前記被除数に前記近似逆数を乗じて1番目の
部分剰余R1をめる乗算手段と、i番目の部分剰余R8
を四捨五入して仮布P。 をめる丸め手段と、前記i番目の部・分剰余R。 から前記補正除数と前記1番目の仮布P、との積を減じ
た差をg倍してi+1番目の部分剰余R1+。 をめる部分除算手段と、前記部分剰余R,+、の正負に
応じて前記仮布P、から0又は1を減じた値の法gの主
値を商の上位からi桁目とする商補正手段とを含むこと
を特徴とする除算装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59113809A JPS60258643A (ja) | 1984-06-05 | 1984-06-05 | 除算装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59113809A JPS60258643A (ja) | 1984-06-05 | 1984-06-05 | 除算装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS60258643A true JPS60258643A (ja) | 1985-12-20 |
Family
ID=14621599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59113809A Pending JPS60258643A (ja) | 1984-06-05 | 1984-06-05 | 除算装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60258643A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62219787A (ja) * | 1986-03-20 | 1987-09-28 | Hitachi Ltd | 動き検出測定方式 |
-
1984
- 1984-06-05 JP JP59113809A patent/JPS60258643A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62219787A (ja) * | 1986-03-20 | 1987-09-28 | Hitachi Ltd | 動き検出測定方式 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0368416B2 (ja) | ||
JPS60140422A (ja) | 演算処理装置 | |
JPS60140429A (ja) | 10進乗算装置 | |
JPS60258643A (ja) | 除算装置 | |
JPH0346024A (ja) | 浮動小数点演算器 | |
JPH0251732A (ja) | 浮動小数点演算器 | |
JPS63254525A (ja) | 除算装置 | |
JP2512801B2 (ja) | 乗算器 | |
JP3415569B2 (ja) | 10進データ除算方法およびそのプログラム記録媒体 | |
JPH0371331A (ja) | 乗算器 | |
JPS6259828B2 (ja) | ||
JPH10198552A (ja) | 乗算器 | |
JPH0426495B2 (ja) | ||
JPS6285333A (ja) | 浮動小数点乗算器丸め処理方式 | |
JPS6129020B2 (ja) | ||
JPS58213343A (ja) | 除算装置 | |
JPS60247736A (ja) | 除算回路 | |
JPS5985539A (ja) | 除算処理装置 | |
JPH01233520A (ja) | 高基数非回復型除算装置 | |
JPH0199126A (ja) | 拡張精度除算処理方式 | |
JPS63310023A (ja) | 符号付固定小数点乗算装置 | |
JPS60124731A (ja) | 乗算装置 | |
JPH0414173A (ja) | 固定小数点演算器 | |
JPH1185471A (ja) | 演算方法および演算装置 | |
JPS60246437A (ja) | 除算回路 |