JPH02252023A - 引き去り法または引き戻し法アルゴリズムで除算を行う除算器 - Google Patents
引き去り法または引き戻し法アルゴリズムで除算を行う除算器Info
- Publication number
- JPH02252023A JPH02252023A JP1072673A JP7267389A JPH02252023A JP H02252023 A JPH02252023 A JP H02252023A JP 1072673 A JP1072673 A JP 1072673A JP 7267389 A JP7267389 A JP 7267389A JP H02252023 A JPH02252023 A JP H02252023A
- Authority
- JP
- Japan
- Prior art keywords
- register
- divisor
- value
- dividend
- divider
- 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
- 238000000034 method Methods 0.000 title claims description 12
- 244000208734 Pisonia aculeata Species 0.000 claims description 2
- 238000011410 subtraction method Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
この発明は、情報処理装置の演算器の一つである除算器
に関するものである。
に関するものである。
第3図は従来の除算器のブロック図である。
図において、1は被除数Aを入力するボート、2はA及
び中間値Xをセーブするレジスタ、3は2の内容を選択
するセレクタ、4は除数Bを人力するボート、6は除数
B及び中間値Yをセーブするシフト機能付レジスタ、7
はX−Yを実行する除算器、8は新Xを旧Xか旧X−Y
から選択するセレクタ、9は余りRを出力するボート、
10は商Q及びその中間値をセーブするシフト機能付レ
ジスタ、11は商Qを出力するボートである。
び中間値Xをセーブするレジスタ、3は2の内容を選択
するセレクタ、4は除数Bを人力するボート、6は除数
B及び中間値Yをセーブするシフト機能付レジスタ、7
はX−Yを実行する除算器、8は新Xを旧Xか旧X−Y
から選択するセレクタ、9は余りRを出力するボート、
10は商Q及びその中間値をセーブするシフト機能付レ
ジスタ、11は商Qを出力するボートである。
次に動作によついて説明する。動作の概要は第4図のフ
ローチャートに示す。
ローチャートに示す。
ステップ41 人力ボート1からmビットの被除数Aを
人力し、セ1ノクタ3を経由してレジスタ2にセーブす
る(X4−A)。また、人力ボート2からnビットの除
数Bを人力し、シフト機能付レジスタ6に取り込み(i
tn−n)ビット左(ζシフトする(Y+−5hift
(B、左、m−n)]、。
人力し、セ1ノクタ3を経由してレジスタ2にセーブす
る(X4−A)。また、人力ボート2からnビットの除
数Bを人力し、シフト機能付レジスタ6に取り込み(i
tn−n)ビット左(ζシフトする(Y+−5hift
(B、左、m−n)]、。
レジスタ10を0にする(Q←0)、、カウンタをm−
nに設定する(count←m−n)。
nに設定する(count←m−n)。
ステップ42.43.44 減Q器7で2の内容−6
の内容を求め(R4−x−y)、この値が正または零な
らセレクタ8を経由しX−Yを新た1、m21cセツト
しくX+R)、10の内容に1加える(Q4−Q+1)
、7の結果が負ならセレクタ8を経由し、2にはもどの
Xがセットされ、10の内容も変わらない。
の内容を求め(R4−x−y)、この値が正または零な
らセレクタ8を経由しX−Yを新た1、m21cセツト
しくX+R)、10の内容に1加える(Q4−Q+1)
、7の結果が負ならセレクタ8を経由し、2にはもどの
Xがセットされ、10の内容も変わらない。
ステップ45 カウンタ値が0または負なら終γして、
このときのレジスタ10の内容が商Qとして出力ボート
11に出力され、f4算器7の出力が余りRとして出力
ボート9に出力さ第1る。
このときのレジスタ10の内容が商Qとして出力ボート
11に出力され、f4算器7の出力が余りRとして出力
ボート9に出力さ第1る。
ステップ46 カウンタ値が正ならレジスタ6の内容を
1ビツト右にシフトし[Y 4−5hift(Y、11
)]、 レジスタ10の内容を左に1ビツトシフトする
[ Q 4−shift (Q 、左21)]。
1ビツト右にシフトし[Y 4−5hift(Y、11
)]、 レジスタ10の内容を左に1ビツトシフトする
[ Q 4−shift (Q 、左21)]。
ステップ47 カウンタ値を1減らしてステップ42へ
戻る。
戻る。
以後、上述の動作をカウンタ値がoyj口こは負になる
までくり返1ノて終了する。
までくり返1ノて終了する。
そのときのレジスタ10の内容が商Qとして、また減算
37の出力が余りRとして出力される。
37の出力が余りRとして出力される。
従来の除算器は以トのように構成されているので、求め
る商のビット数たり直列動作の減算を縁り返さなければ
ならず、結果が求まるまで実行時間がかかるという問題
があった。
る商のビット数たり直列動作の減算を縁り返さなければ
ならず、結果が求まるまで実行時間がかかるという問題
があった。
この発明は前述のような問題を解消するためになされた
もので、にり少ない直列動作の減算回数で結果を求める
ことができる除算器を得ることを目的とする。
もので、にり少ない直列動作の減算回数で結果を求める
ことができる除算器を得ることを目的とする。
〔課題を解決するための手段)
前記目的を達成するため、この発明では、並列に動作す
るN個の減算器を用いるもので、詳しくは除算器をつぎ
の(1)のとおりに構成するものである。
るN個の減算器を用いるもので、詳しくは除算器をつぎ
の(1)のとおりに構成するものである。
(1)つぎのa、b、eの構成要素を備えている、引き
去り法または引き戻し法アルゴリズムで除算を行う除算
器。
去り法または引き戻し法アルゴリズムで除算を行う除算
器。
a、入力された被除数、及び演算の中間値をセーブする
被除数レジスタ。
被除数レジスタ。
b、人力された除数のに倍(k=1.2.……・N、但
しk=3の値)及び演算の中間値を夫々セーブする第1
の除数レジスタ、第2の除数レジスタ、・・・・・・第
Nの除数レジスタからなるN個の除数レジスタ。
しk=3の値)及び演算の中間値を夫々セーブする第1
の除数レジスタ、第2の除数レジスタ、・・・・・・第
Nの除数レジスタからなるN個の除数レジスタ。
C1被除数レジスタの値−第1.の除数レジスタの値を
実行する第1の減算器、被除数レジスタの値−第2の除
数1/ジスタの値を実行する第2の減算器、・−・・・
被除数レジスタの値−第Nの除数レジスタの値を実行す
る第Nの減算器からなる並列に動作するN個の減算器。
実行する第1の減算器、被除数レジスタの値−第2の除
数1/ジスタの値を実行する第2の減算器、・−・・・
被除数レジスタの値−第Nの除数レジスタの値を実行す
る第Nの減算器からなる並列に動作するN個の減算器。
(作用)
前記(1)の構成により、複数回の減算処理を一度に実
行することどなり、結果(商と余り)を高速で算出する
。即ち、商の[1ogz(N+1)]ビット分を減算処
理−回分の時間で算出する。
行することどなり、結果(商と余り)を高速で算出する
。即ち、商の[1ogz(N+1)]ビット分を減算処
理−回分の時間で算出する。
(実施例)
以下、この発明を実施例で説明する。
第1図は、この発明の一実施例である引き去り法アルゴ
リズムで除算を行う除算・器を示すブロック図である。
リズムで除算を行う除算・器を示すブロック図である。
図において、1は被除数Aを人力するボート、2は八及
び演算の中間値Xをセーブするlノジスタ(被除数にか
かるレジスタなので、便宜1−゛被除数レジスタ”とい
う)、3はレジスタ2の内容を選択するセレクタ、4は
除数Bを入力するボート、52は2倍器、53は3倍器
、61゜62゜63は夫々BまたはBX2ま、たはBX
3及び演算の中間値Y1またはY2またはY3をセーブ
するシフト機能付レジスタ(除数にかかるレジスタなの
で、便宜上“除数レジスタ“という)、7m。
び演算の中間値Xをセーブするlノジスタ(被除数にか
かるレジスタなので、便宜1−゛被除数レジスタ”とい
う)、3はレジスタ2の内容を選択するセレクタ、4は
除数Bを入力するボート、52は2倍器、53は3倍器
、61゜62゜63は夫々BまたはBX2ま、たはBX
3及び演算の中間値Y1またはY2またはY3をセーブ
するシフト機能付レジスタ(除数にかかるレジスタなの
で、便宜上“除数レジスタ“という)、7m。
72.73はX−Yl、X−Y2.X−Y3を実行する
減算器、8は新Xを旧Xか旧X−Y1か旧X−Y2か旧
X−Y3から選択するセレクタ、9は余りRを出力する
ボート、1oは商Q及びその中間値をセーブするシフト
機能付レジスタ、11はQを出力するボートである。
減算器、8は新Xを旧Xか旧X−Y1か旧X−Y2か旧
X−Y3から選択するセレクタ、9は余りRを出力する
ボート、1oは商Q及びその中間値をセーブするシフト
機能付レジスタ、11はQを出力するボートである。
動作の概要は第2図のフローチャートに示す。
ステップ21 入力ボート1からmビットの被除数Aを
人力し、セレクタ3を経由して被除数レジスタ2にセー
ブする(X4−A)。また。
人力し、セレクタ3を経由して被除数レジスタ2にセー
ブする(X4−A)。また。
入力ボート4からnビットの除数Bを入力し、パススル
ーまたは2倍器52または3倍器53を経由して、それ
ぞれシフト機能付除数レジスタ61.62.63に取り
込む。これらの内容を(m−n−α)ビット(m−nが
奇数ならα=1.m−nが偶数ならα=0)左にシフト
する[Y 1 ←5hift (B、左、m−n−CE
)。
ーまたは2倍器52または3倍器53を経由して、それ
ぞれシフト機能付除数レジスタ61.62.63に取り
込む。これらの内容を(m−n−α)ビット(m−nが
奇数ならα=1.m−nが偶数ならα=0)左にシフト
する[Y 1 ←5hift (B、左、m−n−CE
)。
Y 2←5hift (B * 2.左、m−n−cc
)。
)。
Y3+5hift (B10.左、m−n−a)]。
レジスタ10を0にする(Q←0)。カウンタを1未満
は切りすてる)。
は切りすてる)。
ステップ22 減算器71,72.73で2の内容−6
1の内容、2の内容−62の内容。
1の内容、2の内容−62の内容。
2の内容−63の内容を同時に求める(R1←X−Yl
、R24−X−Y2.R3←X−Y3)。
、R24−X−Y2.R3←X−Y3)。
ステップ23.24 この結果、R1〈0ならレジス
タ2にはセレクタ8によりもとのXがセットされレジス
タ10の内容も変らない。
タ2にはセレクタ8によりもとのXがセットされレジス
タ10の内容も変らない。
R1≧OかつR2く0ならレジスタ2にはセレクタ8に
より減算器71の出力がセットされ(X4−R1)、レ
ジスタlOの内容に1を加える(Q−Q+1 )。R2
≧0かつR3〈0ならレジスタ2にはセレクタ8により
減算器72の出力がセットされ(X+R2) 、レジス
タ10の内容に2を加える(Q+−Q+2)。R3≧0
ならレジスタ2にはセレクタ8により減算器73の出力
がセットされ(X+R3)、 レジスタ10の内容に3
を加える(Q4−Q+3’)。
より減算器71の出力がセットされ(X4−R1)、レ
ジスタlOの内容に1を加える(Q−Q+1 )。R2
≧0かつR3〈0ならレジスタ2にはセレクタ8により
減算器72の出力がセットされ(X+R2) 、レジス
タ10の内容に2を加える(Q+−Q+2)。R3≧0
ならレジスタ2にはセレクタ8により減算器73の出力
がセットされ(X+R3)、 レジスタ10の内容に3
を加える(Q4−Q+3’)。
ステップ25 カウント値が0または負なら終了し、こ
のときのレジスタ10の内容が商Qとして出力ボート1
1に出力され、減算器71の出力が余りRとして出力ボ
ート9に出力される。
のときのレジスタ10の内容が商Qとして出力ボート1
1に出力され、減算器71の出力が余りRとして出力ボ
ート9に出力される。
ステップ26 カウント値が正ならレジスタ61.62
.63の内容を2ビツト右にシフトし[Y4−shif
t (Y 1 、右、2)など]、レジスタ10の内容
を左に2ビツトシフトする[Q4−shift (Q、
左、2)]。
.63の内容を2ビツト右にシフトし[Y4−shif
t (Y 1 、右、2)など]、レジスタ10の内容
を左に2ビツトシフトする[Q4−shift (Q、
左、2)]。
ステップ27 カウントの値を1減らしてステップ22
へ戻る。
へ戻る。
以後、上述の動作をカウンタ値が0または負になるまで
くり返して終了する。
くり返して終了する。
そのときのレジスタlOの内容が商Qとして、また減算
器71の出力が余りRとして出力される。
器71の出力が余りRとして出力される。
なお、前記実施例では゛減算器の数は3としてか、この
数は任意である。
数は任意である。
また、n倍器52.53を別に設けたが、2倍器ばレジ
スタ62のシフト機能で代替でき、3倍器もシフト機能
と加算の組み合せで代替できる。
スタ62のシフト機能で代替でき、3倍器もシフト機能
と加算の組み合せで代替できる。
さらに、前記実施例では、除数レジスタ61゜62.6
3はシフト機能を仮定し、被除数レジスタ2にはシフト
機能を仮定しなかったが、逆に被除数レジスタ2にシフ
ト機能を設け、除数レジスタ61,62.63にはシフ
ト機能を設けない手法もある。
3はシフト機能を仮定し、被除数レジスタ2にはシフト
機能を仮定しなかったが、逆に被除数レジスタ2にシフ
ト機能を設け、除数レジスタ61,62.63にはシフ
ト機能を設けない手法もある。
また、前記実施例の除算アルゴリズムは引き去り法に基
づくが、引き戻し法によっても良い。
づくが、引き戻し法によっても良い。
以上のように、この発明によれば、減算器を複数持ち、
並列動作させるので、直列に動く減算回数が減少し、高
速に除算結果が得られる。
並列動作させるので、直列に動く減算回数が減少し、高
速に除算結果が得られる。
第1図はこの発明の一実施例の除算器のブロック図、第
2図はその動作概要を示すフローチャート、第3図は従
来の除算器のブロック図、第4図はその動作概要を示す
フローチャートである。 図中、2は被除数レジスタ、6m、62.63は除数1
ノジスタ、 71゜ 72゜ 73は除粋器でA・ム なお、 図中、 同 符号は同 又(・虚相当部分を示
2図はその動作概要を示すフローチャート、第3図は従
来の除算器のブロック図、第4図はその動作概要を示す
フローチャートである。 図中、2は被除数レジスタ、6m、62.63は除数1
ノジスタ、 71゜ 72゜ 73は除粋器でA・ム なお、 図中、 同 符号は同 又(・虚相当部分を示
Claims (1)
- (1)つぎのa、b、cの構成要素を備えていることを
特徴とする引き去り法または引き戻し法アルゴリズムで
除算を行う除算器。 a、入力された被除数、及び演算の中間値をセーブする
被除数レジスタ。 b、入力された除数のk倍(k=1、2、……N、但し
N≧3の値)及び演算の中間値を夫々セーブする第1の
除数レジスタ、第2の除数レジスタ、……第Nの除数レ
ジスタからなるN個の除数レジスタ。 c、被除数レジスタの値−第1の除数レジスタの値を実
行する第1の減算器、被除数レジスタの値−第2の除数
レジスタの値を実行する第2の減算器、……被除数レジ
スタの値−第Nの除数レジスタの値を実行する第Nの減
算器からなる並列に動作するN個の減算器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1072673A JPH02252023A (ja) | 1989-03-24 | 1989-03-24 | 引き去り法または引き戻し法アルゴリズムで除算を行う除算器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1072673A JPH02252023A (ja) | 1989-03-24 | 1989-03-24 | 引き去り法または引き戻し法アルゴリズムで除算を行う除算器 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02252023A true JPH02252023A (ja) | 1990-10-09 |
Family
ID=13496116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1072673A Pending JPH02252023A (ja) | 1989-03-24 | 1989-03-24 | 引き去り法または引き戻し法アルゴリズムで除算を行う除算器 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02252023A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008305335A (ja) * | 2007-06-11 | 2008-12-18 | Sanyo Electric Co Ltd | 除算回路 |
JP2011118633A (ja) * | 2009-12-02 | 2011-06-16 | Nec Corp | 浮動小数点除算器、及びそれを用いた情報処理装置 |
-
1989
- 1989-03-24 JP JP1072673A patent/JPH02252023A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008305335A (ja) * | 2007-06-11 | 2008-12-18 | Sanyo Electric Co Ltd | 除算回路 |
JP2011118633A (ja) * | 2009-12-02 | 2011-06-16 | Nec Corp | 浮動小数点除算器、及びそれを用いた情報処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH02252023A (ja) | 引き去り法または引き戻し法アルゴリズムで除算を行う除算器 | |
JPH02194430A (ja) | 除算器 | |
JPH07239774A (ja) | 除算方法および除算装置 | |
EP0276856B1 (en) | Trigonometric function preprocessing system | |
JPS58132837A (ja) | 10進除算装置 | |
KR100195719B1 (ko) | 나눗셈기 | |
JPH0383127A (ja) | 10進除算器 | |
JPH06259227A (ja) | 演算装置 | |
JP2519288B2 (ja) | 乗除算器 | |
JP3068640B2 (ja) | 計算装置 | |
KR100198783B1 (ko) | 직렬처리 나눗셈기의 구동 방법 | |
JP3259116B2 (ja) | パイプライン型除算処理装置 | |
JPS61151739A (ja) | 除算回路 | |
JPS60129834A (ja) | 乗除算器 | |
JPH0628153A (ja) | 低誤差計算処理装置 | |
JPS63310023A (ja) | 符号付固定小数点乗算装置 | |
JPH0635678A (ja) | 十進除算回路 | |
JPH0713740A (ja) | 固定小数点算術演算時のけたあふれ防止方法 | |
JPS61118835A (ja) | ハ−ドウエア除算器 | |
JPH04148231A (ja) | 演算回路 | |
JPS61183739A (ja) | 高速乗算装置 | |
JPH025128A (ja) | 除算回路 | |
JPS62160529A (ja) | デ−タ処理装置 | |
Pippenger | Entropy and expected acceptance counts for finite automata | |
JPH05150951A (ja) | 除算処理方式 |