JP3656699B2 - 除算器 - Google Patents

除算器 Download PDF

Info

Publication number
JP3656699B2
JP3656699B2 JP33919497A JP33919497A JP3656699B2 JP 3656699 B2 JP3656699 B2 JP 3656699B2 JP 33919497 A JP33919497 A JP 33919497A JP 33919497 A JP33919497 A JP 33919497A JP 3656699 B2 JP3656699 B2 JP 3656699B2
Authority
JP
Japan
Prior art keywords
quotient
selector
output
register
value
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 - Fee Related
Application number
JP33919497A
Other languages
English (en)
Other versions
JPH11175318A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP33919497A priority Critical patent/JP3656699B2/ja
Publication of JPH11175318A publication Critical patent/JPH11175318A/ja
Application granted granted Critical
Publication of JP3656699B2 publication Critical patent/JP3656699B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、除算器に関する。
【0002】
【背景技術】
基数rの浮動小数点数除算(X・ra )÷(D・rb )は、(X÷D)・ra-b となり、仮数部の除算X÷Dを高速かつ正確に実行することが要求される。
除算X÷Dは、逆数器と乗算器とを用いて実行することもできるが、計算精度が低いので、例えば、本発明と対比される図4に示すような除算器が用いられる。この除算器は、除数レジスタ10、被除数レジスタ11、符号・指数処理部12、前処理部20、繰り返しループ処理部30、後処理部40、商レジスタR2及びこれらを制御する制御回路50を備えている。
【0003】
この除算器は、処理時間短縮化のため、基数rを例えば16と大きくして繰り返し処理回数を低減し、さらに引き放し法及び商予測法を用いており、高基数非回復型除算器と称され、これに類似したものが本発明者により開示されている(特開平4−268920号公報)。
【0004】
【発明が解決しようとする課題】
しかし、この除算器は、回路規模が乗算器に比し大きくなる。すなわち、倍数発生器35は高速演算のために2〜(r−1)倍の各倍数器を備えており、また、54ビットの加減算器33に加えて、54ビットの減算器23及び52ビットと1ビットとの加算器(インクリメンタ)41を備えているので、回路規模が大きくなる。このため、この除算器をLSIのプロセッサ上に形成する場合にその占有面積が比較的広くなり、その低減化が要求されている。
【0005】
一般に、回路規模を低減しようとすると、演算精度又は処理速度が犠牲になる。
本発明の目的は、このような問題点に鑑み、演算精度及び処理速度を犠牲にすることなく、回路規模を縮小することが可能な除算器を提供することにある。
【0006】
【課題を解決するための手段及びその作用効果】
請求項1では、漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタ(R1)に順次格納する除算器において、
該第2値又は該第1商レジスタの出力を選択する乙セレクタ(S2)と、
該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタ(S3)と、
該商セレクタの出力が供給される第2商レジスタ(R2)と、
該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
該繰り返しの処理を終了した後に、該乙セレクタに該第1商レジスタの出力を選択させ該加減算器に1加算用キャリーを供給しかつ実質的に該第1値を0にさせ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路とを有する。
【0007】
この除算器によれば、図4の比較的回路規模が大きい加算器41が省略され、簡単な構成の乙セレクタ及び商セレクタが付加されているので、全体として回路規模が縮小され、また、演算内容は加算器省略前と同一であるので計算精度を犠牲にすることがなく、さらに、乙セレクタの早期選択及び丸め判定と加減算器の1加算との並列動作により、処理速度を犠牲にすることもないという効果を奏する。
請求項2では、漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
該第1値又は該第1商レジスタの出力を選択する甲セレクタと、
該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタと、
該商セレクタの出力が供給される第2商レジスタと、
該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
該繰り返しの処理を終了した後に、該甲セレクタに該第1商レジスタの出力を選択させ該加減算器に1加算用キャリーを供給しかつ実質的に該第2値を0にさせ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路とを有する。
【0008】
この除算器によれば、図4の比較的回路規模が大きい加算器41が省略され、簡単な構成の甲セレクタ及び商セレクタが付加されているので、全体として回路規模が縮小され、また、演算内容は加算器省略前と同一であるので計算精度を犠牲にすることがなく、さらに、甲セレクタの早期選択及び丸め判定と加減算器の1加算との並列動作により、処理速度を犠牲にすることもないという効果を奏する。
請求項3では、漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタ(R1)に順次格納する除算器において、
該第1値又は値1を選択する甲セレクタ(S1)と、
該第2値又は該第1商レジスタの出力を選択する乙セレクタ(S2)と、
該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタ(S3)と、
該甲セレクタの出力が供給される第2商レジスタ(R2)と、
該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
該繰り返しの処理を終了した後に、該甲セレクタ及び該乙セレクタに対しそれぞれ該値1及び該第1商レジスタの出力を選択させ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路とを有する。
【0009】
この除算器によれば、図4の比較的回路規模が大きい加算器41が省略され、簡単な構成の甲セレクタ、乙セレクタ及び商セレクタが付加されているので、全体として回路規模が縮小され、また、演算内容は加算器省略前と同一であるので計算精度を犠牲にすることがなく、さらに、甲セレクタ及び乙セレクタの早期選択並びに丸め判定と加減算器の1加算との並列動作により、処理速度を犠牲にすることもないという効果を奏する。
請求項4では、漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
該第1値又は該第1商レジスタの出力を選択する甲セレクタと、
該第2値又は値1を選択する乙セレクタと、
該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタと、
該乙セレクタの出力が供給される第2商レジスタと、
該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
該繰り返しの処理を終了した後に、該甲セレクタ及び該乙セレクタに対しそれぞれ該第1商レジスタの出力及び該値1を選択させ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路とを有する。
【0010】
この除算器によれば、図4の比較的回路規模が大きい加算器41が省略され、簡単な構成の甲セレクタ、乙セレクタ及び商セレクタが付加されているので、全体として回路規模が縮小され、また、演算内容は加算器省略前と同一であるので計算精度を犠牲にすることがなく、さらに、甲セレクタ及び乙セレクタの早期選択並びに丸め判定と加減算器の1加算との並列動作により、処理速度を犠牲にすることもないという効果を奏する。
請求項5では、漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタ(R1)に順次格納する除算器において、
該第2値を保持する部分剰余レジスタ(32)と、
該第1値又は該除数を選択する甲セレクタ(S1)と、
該部分剰余レジスタの出力又は被除数を選択する乙セレクタ(S2)と、
該繰り返しの処理の前に、該甲セレクタ及び該乙セレクタに対しそれぞれ該除数及び該被除数を選択させ、その後、該加減算器の出力の符号ビットが(該被除数)>(該除数)であることを示している場合には該被除数をその下位側へ1ビットシフトさせたものを部分剰余初期値として該部分剰余レジスタに保持させ、これと逆の場合には該被除数をそのまま該部分剰余初期値として該部分剰余レジスタに保持させる制御回路とを有する。
【0011】
この除算器によれば、図4の比較的回路規模が大きい減算器23が省略され、簡単な構成の甲セレクタ及び乙セレクタが付加されているので、全体として回路規模が縮小され、また、演算内容は減算器省略前と同一であるので計算精度を犠牲にすることがなく、さらに、甲セレクタ及び乙セレクタの早期選択により、処理速度を犠牲にすることもないという効果を奏する。
請求項6では、漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
該第2値を保持する部分剰余レジスタと、
該第1値又は被除数を選択する甲セレクタと、
該部分剰余レジスタの出力又は該除数を選択する乙セレクタと、
該繰り返しの処理の前に、該甲セレクタ及び該乙セレクタに対しそれぞれ該被除数及び該除数を選択させ、その後、該加減算器の出力の符号ビットが(該被除数)>(該除数)であることを示している場合には該被除数をその下位側へ1ビットシフトさせたものを部分剰余初期値として該部分剰余レジスタに保持させ、これと逆の場合には該被除数をそのまま該部分剰余初期値として該部分剰余レジスタに保持させる制御回路とを有する。
【0012】
この除算器によれば、図4の比較的回路規模が大きい減算器23が省略され、簡単な構成の甲セレクタ及び乙セレクタが付加されているので、全体として回路規模が縮小され、また、演算内容は減算器省略前と同一であるので計算精度を犠牲にすることがなく、さらに、甲セレクタ及び乙セレクタの早期選択により、処理速度を犠牲にすることもないという効果を奏する。
請求項7の除算器では、請求項1乃至4のいずれか1つに記載の構成と、
請求項5又は6記載の構成とを有する。
【0013】
【発明の実施の形態】
以下、図面に基づいて本発明の実施形態を説明する。
[第1実施形態]
図1は、本発明の第1実施形態の除算器を示すブロック図である。
最初に、この除算器で用いられている公知の除算法を説明する。
【0014】
被除数Xを除数Dで割って商Q、剰余Rになったとすると、
X=Q・D+R ・・・(1)
が成立する。ここで、商が1より小さい数
Q=q(1)・r-1+q(2)・r-2+・・・+q(n)・r-n (2)
であるとし、
R(j):第j商桁を決定した後の部分剰余、j=1〜n
R(0):被除数X(部分剰余の初期値)
とすると、j=0〜nについて、次の漸化式が成立する。
【0015】
Figure 0003656699
漸化式(3)が正しいことは、次の計算式から明らかである。すなわち、式(4−1)〜(4−n)の両辺にそれぞれrn-1 ,rn-2 ,・・・,r,1を乗じて各辺の総和をとると、
R(n)=rn ・R(0)−{q(1)・rn-1 +q(2)・rn-2 +・・・+q(n)}・D ・・・(5)
が得られ、この式(5)からR(0)は、
R(0)={q(1)・r-1+q(2)・r-2+・・・+q(n)・r-n}D+r-n・R(n) ・・・(6)
と表される。この式(6)を式(1)と比較すると、式(2)が得られる。
したがって、漸化式(3)をj=0〜nについてn+1回実行すれば商Qが得られる。
【0016】
漸化式(3)において、商桁q(j+1)を予測することにより、演算速度を向上させることができる。しかし、予測値が大きすぎた場合には、引き過ぎて漸化式(3)の左辺の剰余R(j+1)が負になるので、右辺にq(j+1)・Dを加算してR(j+1)の値を元に戻す必要があり、処理ステップ数が増える。そこで、引き戻し処理を行わずに、商桁の取り得る範囲を−(r−1)≦q(j)≦r−1と負数まで広げ、部分剰余R(j+1)が負になったら、部分剰余が正の値に戻るようにするため、次の商桁を負数にする(引き放し法)。この場合も、漸化式(3)が成立する。
【0017】
例えば図5(B)に示すように、十進数除算6÷7を実行し、商桁6が大き過ぎて部分剰余が−2(同図では、負数を上バーで表している)になった場合には、部分剰余が正規の値に戻るようにするため次の商桁を負数−3にする。これにより、次の部分剰余は−20−{7×(−3)}=−20+21=1となる。この時、部分商[6(−3)]を[50+(10−3)]=[57]に補正する。すなわち1つ前の商桁から1を引き、現在の商桁を補数に変換する。この処理は、任意の基数rについて同じである。商桁が2回連続して負数になっても、同様の手法により部分商を正の値に補正することができる。
【0018】
図5(A)は、公知の浮動小数点数表示法を示している。この浮動小数点数は、仮数部が1より小さく且つ仮数部の小数点から1番目のビットが‘ 1’になるように、正規化されている。浮動小数点数の最上位ビットは仮数部の符号ビットであり、仮数部は絶対値表示となっている。正規化されていることから、小数点から1番目のビットが隠しビットとして省略されている。
図1の除数レジスタ10及び符号・指数処理部12にはそれぞれ、この浮動小数点数表示法を用いた64ビットの除数D・rb 及び被除数X・ra がロードされる。
【0019】
仮数部除算X÷Dを実行するため、除数レジスタ10及び被除数レジスタ11の各々の仮数部52ビットの上位側に、2ビット‘01’が加えられて、54ビットの除数仮数D及び被除数仮数Xにされる。この‘01’の上位ビット‘0’は符号ビットであり、下位ビット‘1’は隠しビットである。
【0020】
ここで、図1の除算器の、図4の構成との相違点を説明する。
図1の除算器では、図4中の比較的回路規模が大きい減算器23及び加算器41が省略され、その替わりに、簡単な構成のセレクタS1、S2及びS3が付加されている。加減算器33は、繰り返しループ処理部30Aの構成要素であるが、図4の減算器23及び加算器41の役割も果たしていることから、前処理部20A及び後処理部40Aの構成要素でもある。
【0021】
セレクタS1には、倍数発生器35の出力及び除数仮数Dが供給され、制御回路50Aからの選択制御信号SL1によりその一方が選択され又は非選択状態になり、非選択状態のときにはセレクタS1の出力が0になる。
セレクタS2には、部分剰余レジスタ32及び商レジスタR1の出力並びに被除数仮数Xが供給され、制御回路50Aからの選択制御信号SL2によりその1つが選択されて加減算器33の他方の入力端に供給される。
【0022】
セレクタS1及びS2の出力はそれぞれ加減算器33の、減算器として機能する場合の反転入力端及び非反転入力端に供給される。セレクタS1の出力は正又は0であるが、セレクタS2の出力は正、0又は負であり、この点は以下の説明から明らかになる。
商セレクタS3には、商レジスタR1及び加減算器33の出力が供給され、その一方が丸め判定部43からの選択制御信号SL3により選択されて商レジスタR2の仮数部に供給される。
【0023】
制御回路50Aは、このような相違点に応じて図4の制御回路50と異なっており、この点は以下の説明から明らかになる。
図1の除算器の他の構成は、図4のそれと同一である。
なお、右1ビットシフト部22は、セレクタ21の入力端に対する、1ビット下位側へシフトされた結線と最上位ビットへのグランド電位(‘0’)供給により、実現されている。同様に左4ビットシフト部36は、セレクタ31の入力端に対する、4ビット上位側へシフトされた結線と下位4ビットへのグランド電位(‘0000’)供給により、実現されている。また、倍数発生器35は、高速演算のために2〜(r−1)倍の各倍数器を備えて積kDを算出し、倍数発生器35の出力端のセレクタS1入力端に対する同様の結線で積kDの1/r倍を実現している。加減算器33は、クロックCLKと無関係に演算を実行する。商桁予測器37は、高速処理のため、例えば論理回路で構成されテーブルを参照して商桁の予測値を出力する。
【0024】
さて、除数レジスタ10及び被除数レジスタ11の上位側12ビットは符号・指数処理部12に供給され、除算結果の符号が求められ且つ指数部の減算(a−b)が行われる。この処理と並行して、以下の(1)〜(3)からなる仮数部除算が行われる。図2は、図1の除算器の概略動作を示すタイムチャートである。初期状態では、制御回路50Aからの選択制御信号SL1及びSL2により、セレクタS1及びS2はそれぞれ除数仮数D及び被除数仮数Xを選択している。加減算器33は、減算器として機能するように設定されている。また、セレクタ31は、制御回路50Aからの選択制御信号SL5により、セレクタ21の出力R(0)を選択している。さらに、制御回路50Aにより商桁レジスタ38がゼロクリアされて、倍数発生器35の出力が0になっている。制御回路50Aから加減算器33へのキャリーCRYは、以下の(1)及び(2)において常に0にされる。
【0025】
(1)前処理
前処理部20Aと加減算器33とセレクタS1及びS2と制御回路50Aとにより、次のような前処理が行われる。
加減算器33で減算(X−D)が実行され、その出力の符号ビット及びゼロフラグが制御回路50Aに供給され、これに応じて制御回路50Aからの選択制御信号SL4によりセレクタ21の選択制御が行われる。すなわち、D>Xのときには被除数仮数Xが選択され、D≦Xのときには右1ビットシフト部22の出力が選択される。さらに、D≦Xのときには、符号・指数処理部12での指数計算(a−b)に1が加算される。
【0026】
このような前処理により、必ずD>Xとなり、これにより、商桁レジスタ38の初期値kが0になる。
(2)繰り返しループ処理
次に、繰り返しループ処理部30Aと制御回路50Aとにより、以下のような繰り返しループ処理が行われる。
【0027】
j=0
セレクタS1及びS2によりそれぞれ倍数発生器35及び部分剰余レジスタ32の出力が選択され、また、セレクタ21の出力R(0)が部分剰余レジスタ32に保持される。これにより、加減算器33は、上記漸化式(3)の両辺をrで除したときの右辺の演算、すなわち減算(R(0)−0)を実行し、その出力R(1)/rはR(0)に等しくなる。
【0028】
R(0)が部分剰余レジスタ32に保持された後は、セレクタ31は左4ビットシフト部36の出力を選択する。
1≦j≦13
加減算器33の出力R(j+1)/rは、一方では左4ビットシフト部36により左1桁シフトされてR(j+1)となり、セレクタ31を通って部分剰余レジスタ32に供給される。
他方では、R(j+1)/rの上位6ビットが商桁予測器37に供給され、商桁予測器37はこれと除数仮数Dとからテーブルを参照してq(J+1)を予測し、その絶対値を商桁レジスタ38及び部分商予測器39に供給し、その符号ビットを部分商予測器39に供給する。この絶対値が商桁レジスタ38にkとして保持され、倍数発生器35に供給される。倍数発生器35は、kとDの積を右1桁シフトしたkD/rを出力する。
【0029】
倍数発生器35からkD/rが出たところで、部分剰余レジスタ32にR(J+1)がR(J)として保持され、漸化式中のjがインクリメントされたことになる。また、加減算器33は、商桁予測器37から出力されるq(J+1)の符号ビットが負を示している場合には加算器として機能するように設定され、逆の場合には減算器として機能するように設定される。
【0030】
加減算器33により、上記漸化式(3)の両辺をrで除したときの右辺の演算、すなわちR(j)−kD/r又はR(j)+kD/rが実行され、その結果がR(j+1)/rとして出力される。
部分商予測器39には加減算器33の符号ビットも供給され、部分商予測器39は前回のこの符号ビットを記憶しておく。部分商予測器39は、加減算器33及び商桁予測器37からの符号ビットと、この記憶した符号ビットとから、商レジスタR1に格納されている部分商が正になるように、上述の図5(B)に示すような補正を行う。すなわち、前回の商桁である商レジスタR1の最下位桁を補正し、商レジスタR1を上位側へ1桁シフトさせ、今回の商桁であるq(J+1)を補正したものを商レジスタR1の最下位桁に保持させる。
【0031】
J=1〜13について上記処理が繰り返される。
J=13のときの加減算器33の出力R(14)/rが負の場合には、制御回路50Aからの指令によりこれが正になるように商桁予測器37の出力が修正される。
(3)後処理
後処理部40Aと加減算器33とセレクタS1及びS2と制御回路50Aとにより、次のような後処理が行われる。
【0032】
すなわち、制御回路50Aにより、一方では加減算器33の出力R(14)/rが剰余レジスタ42に保持され、他方ではセレクタS1が非選択状態にされセレクタS2が商レジスタR1の出力を選択し、加減算器33にキャリーCRY=‘1’が供給される。これにより、商レジスタR1の出力値に‘1’を加算したものが加減算器33から出力される。
【0033】
丸め判定部43は、剰余レジスタ42の出力R(14)/rと除数仮数レジスタ34の出力Dとから剰余の切り上げ又は切り捨ての判定を行って選択制御信号SL3を出力し、商セレクタS3に対し、切り上げる場合には加減算器33の出力を選択させ、切り捨てる場合には商レジスタR1の出力を選択させる。商セレクタS3の出力は商レジスタR2の仮数部に供給され、制御回路50Aはこれを商レジスタR2に保持させる。
【0034】
本第1実施形態によれば、図4の比較的回路規模が大きい減算器23及び加算器41が省略され、簡単な構成のセレクタS1〜S3が付加されているので、図4の構成よりも回路規模が縮小され、また、演算内容は図4のそれと同一であるので計算精度を犠牲にすることがなく、さらに、セレクタS1及びS2の早期選択並びに丸め判定と加減算器33の1加算との並列動作により、処理速度を犠牲にすることもない。
【0035】
[第2実施形態]
図3は、本発明の第2実施形態の除算器を示す。
この除算器では、後処理で図1の加減算器33にキャリーCRY=‘1’を供給する替わりに、すなわちキャリーCRYを常に0にし、セレクタS1Aに値1を供給してこれを選択可能にし、丸め判定部43の切り上げ判定に応答して制御回路50Bによりこの値1を選択させ、加減算器33によりこれと商レジスタR1の出力とを加算させている。
【0036】
他の点は図1の場合と同一である。
なお、本発明には外にも種々の変形例が含まれる。
例えば図1において、除数仮数Dと被除数仮数XをそれぞれセレクタS1及びS2に供給する替わりに、逆に除数仮数DをセレクタS2に供給し被除数仮数XをセレクタS1に供給する構成であってもよい。
【0037】
また、商レジスタR1の出力をセレクタS2に供給する替わりにセレクタS1に供給し、セレクタS2を非選択状態にしてその出力を0にし、加減算器33を加算器として機能させる構成であってもよい。
さらに、図3において、値1と商レジスタR1の出力とをそれぞれセレクタS1A及びS2に供給する替わりに、逆に値1及び商レジスタR1の出力をそれぞれセレクタS2及びS1Aに供給する構成であってもよい。
図4の減算器23と加算器41の一方のみ省略した構成であってもよい。
また、以上の構成を任意に組み合わせた構成であってもよい。
【0038】
本発明の適用は浮動小数点数の仮数部除算に限定されず、固定小数点数の除算にも適用可能である。
【図面の簡単な説明】
【図1】本発明の第1実施形態の除算器を示すブロック図である。
【図2】図1の除算器の概略動作を示すタイムチャートである。
【図3】本発明の第2実施形態の除算器を示すブロック図である。
【図4】本発明と対比される除算器を示すブロック図である。
【図5】(A)は浮動小数点数表示説明図、(B)は商桁に負数を用いた場合の計算例を示す図である。
【符号の説明】
20、20A 前処理部
21、31、S1、S2 セレクタ
22 右1ビットシフト部
30、30A、30B 繰り返しループ処理部
32 部分剰余レジスタ
33 加減算器
34 除数仮数レジスタ
35 倍数発生器
36 左4ビットシフト部
37 商桁予測器
38 商桁レジスタ
39 部分商予測器
40、40A 後処理部
42 剰余レジスタ
43 丸め判定部
S3 商セレクタ
R1、R2 商レジスタ
50、50A、50B 制御回路
SL1〜SL5 選択制御信号
CYY キャリー
D 除数仮数
X 被除数仮数

Claims (7)

  1. 漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
    該第2値又は該第1商レジスタの出力を選択する乙セレクタと、
    該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタと、
    該商セレクタの出力が供給される第2商レジスタと、
    該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
    該繰り返しの処理を終了した後に、該乙セレクタに該第1商レジスタの出力を選択させ該加減算器に1加算用キャリーを供給しかつ実質的に該第1値を0にさせ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路と、
    を有することを特徴とする除算器。
  2. 漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
    該第1値又は該第1商レジスタの出力を選択する甲セレクタと、
    該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタと、
    該商セレクタの出力が供給される第2商レジスタと、
    該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
    該繰り返しの処理を終了した後に、該甲セレクタに該第1商レジスタの出力を選択させ該加減算器に1加算用キャリーを供給しかつ実質的に該第2値を0にさせ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路と、
    を有することを特徴とする除算器。
  3. 漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
    該第1値又は値1を選択する甲セレクタと、
    該第2値又は該第1商レジスタの出力を選択する乙セレクタと、
    該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタと、
    該甲セレクタの出力が供給される第2商レジスタと、
    該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
    該繰り返しの処理を終了した後に、該甲セレクタ及び該乙セレクタに対しそれぞれ該値1及び該第1商レジスタの出力を選択させ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路と、
    を有することを特徴とする除算器。
  4. 漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
    該第1値又は該第1商レジスタの出力を選択する甲セレクタと、
    該第2値又は値1を選択する乙セレクタと、
    該第1商レジスタの出力又は該加減算器の出力を選択する商セレクタと、
    該乙セレクタの出力が供給される第2商レジスタと、
    該繰り返しの処理を終了した後に、該第1商レジスタに保持された商の切り上げ又は切り捨ての判定を行い、切り上げ判定したときに該商セレクタに対し該加減算器の出力を選択させる丸め判定部と、
    該繰り返しの処理を終了した後に、該甲セレクタ及び該乙セレクタに対しそれぞれ該第1商レジスタの出力及び該値1を選択させ、該商セレクタの選択後に、該第2商レジスタにラッチ信号を供給する制御回路と、
    を有することを特徴とする除算器。
  5. 漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
    該第2値を保持する部分剰余レジスタと、
    該第1値又は該除数を選択する甲セレクタと、
    該部分剰余レジスタの出力又は被除数を選択する乙セレクタと、
    該繰り返しの処理の前に、該甲セレクタ及び該乙セレクタに対しそれぞれ該除数及び該被除数を選択させ、その後、該加減算器の出力の符号ビットが(該被除数)>(該除数)であることを示している場合には該被除数をその下位側へ1ビットシフトさせたものを部分剰余初期値として該部分剰余レジスタに保持させ、これと逆の場合には該被除数をそのまま該部分剰余初期値として該部分剰余レジスタに保持させる制御回路と、
    を有することを特徴とする除算器。
  6. 漸化式に基づき、商桁予測値と除数との積である第1値と、加減算器の出力である部分剰余を1桁上位側へシフトさせたものである第2値との加減算を行って、次の商桁計算用の部分剰余を得る処理を繰り返し実行し、該商桁を第1商レジスタに順次格納する除算器において、
    該第2値を保持する部分剰余レジスタと、
    該第1値又は被除数を選択する甲セレクタと、
    該部分剰余レジスタの出力又は該除数を選択する乙セレクタと、
    該繰り返しの処理の前に、該甲セレクタ及び該乙セレクタに対しそれぞれ該被除数及び該除数を選択させ、その後、該加減算器の出力の符号ビットが(該被除数)>(該除数)であることを示している場合には該被除数をその下位側へ1ビットシフトさせたものを部分剰余初期値として該部分剰余レジスタに保持させ、これと逆の場合には該被除数をそのまま該部分剰余初期値として該部分剰余レジスタに保持させる制御回路と、
    を有することを特徴とする除算器。
  7. 請求項1乃至4のいずれか1つに記載の構成と、
    請求項5又は6記載の構成と、
    を有することを特徴とする除算器。
JP33919497A 1997-12-09 1997-12-09 除算器 Expired - Fee Related JP3656699B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33919497A JP3656699B2 (ja) 1997-12-09 1997-12-09 除算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33919497A JP3656699B2 (ja) 1997-12-09 1997-12-09 除算器

Publications (2)

Publication Number Publication Date
JPH11175318A JPH11175318A (ja) 1999-07-02
JP3656699B2 true JP3656699B2 (ja) 2005-06-08

Family

ID=18325135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33919497A Expired - Fee Related JP3656699B2 (ja) 1997-12-09 1997-12-09 除算器

Country Status (1)

Country Link
JP (1) JP3656699B2 (ja)

Also Published As

Publication number Publication date
JPH11175318A (ja) 1999-07-02

Similar Documents

Publication Publication Date Title
JP3689183B2 (ja) 正確な浮動小数点除算/平方根演算を実現する正確、かつ効果的なスティッキー・ビット計算
JP3479438B2 (ja) 乗算回路
US20050044124A1 (en) Arithmetic processor
JP2002108606A (ja) スティッキービット生成回路及び乗算器
EP0464493A2 (en) High-radix divider
US6704762B1 (en) Multiplier and arithmetic unit for calculating sum of product
EP0356153B1 (en) Radix-2**n divider method and apparatus using overlapped quotient bit selection and concurrent quotient rounding and correction
JPH0447849B2 (ja)
JPH07168697A (ja) 倍精度除算回路および方法
US6519621B1 (en) Arithmetic circuit for accumulative operation
US7016930B2 (en) Apparatus and method for performing operations implemented by iterative execution of a recurrence equation
US8977671B2 (en) Divider circuit and division method
JP3656699B2 (ja) 除算器
GB2396708A (en) Arithmetic logic unit with feedback to a first adder via registers and output via a second adder.
US6725360B1 (en) Selectively processing different size data in multiplier and ALU paths in parallel
JP3517162B2 (ja) 除算・開平演算装置
JP3793505B2 (ja) 演算器及びそれを用いた電子回路装置
JPH04172526A (ja) 浮動小数点除算器
US5208769A (en) Unsigned integer multiply/divide circuit
JP2664750B2 (ja) 演算装置及び演算処理方法
JP2607759B2 (ja) 除算器
JP3695561B2 (ja) 積和器
JP3461706B2 (ja) ディジットシリアル乗算器
JPH0427587B2 (ja)
JP3685634B2 (ja) アドレス演算装置およびアドレス演算方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041026

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050301

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080318

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090318

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090318

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100318

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100318

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110318

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110318

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110318

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110318

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120318

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130318

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140318

Year of fee payment: 9

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees