JP2000010763A - 除算回路 - Google Patents

除算回路

Info

Publication number
JP2000010763A
JP2000010763A JP10173185A JP17318598A JP2000010763A JP 2000010763 A JP2000010763 A JP 2000010763A JP 10173185 A JP10173185 A JP 10173185A JP 17318598 A JP17318598 A JP 17318598A JP 2000010763 A JP2000010763 A JP 2000010763A
Authority
JP
Japan
Prior art keywords
divisor
quotient
partial remainder
scaling
bits
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
JP10173185A
Other languages
English (en)
Inventor
Shigeto Inui
重人 乾
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 JP10173185A priority Critical patent/JP2000010763A/ja
Publication of JP2000010763A publication Critical patent/JP2000010763A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】除数のスケーリングを行う高基数減算シフト方
式かつ部分剰余に冗長二進表現を用いる除算回路におい
て、スケーリングを簡略化し商生成を高速化する。 【解決手段】倍数発生回路2〜9は、除数、被除数の1
/2〜1/8、-1/8倍数を生成し、乗算係数生成回路1
により生成された乗算係数に従って、倍数選択回路1
5、17、倍数発生加算器16、18により除数、被除
数のスケーリングを行い、除数レジスタ20、被除数レ
ジスタ22に結果を保存し、二補数変換回路は二補数化
された部分剰余の上位5ビットを生成し、商生成回路2
4は該5ビットの上位4ビットを参照して商を決定し、
除数倍数発生回路25で除数の倍数を生成し、部分剰余
生成冗長二進加減算器26で次サイクルの部分剰余を生
成する。商レジスタ27は商生成回路24で生成された
商を保存し、商に補数化加算器により商を二補数化して
最終的な商を得る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、除算回路に関し、
特に、高基数型のデジタル型の除算器に関する。
【0002】
【従来の技術】従来この種の除算回路は、例えば、「1
998年電子情報通信学会総合大会講演論文集エレクト
ロニクス[2]」の154ページに掲載された、三浦他
による「商選択テーブルを用いない基数4除算器の構
成」と題する論文等に記載されているように、高基数型
の除算器をLSIに実装する手段として用いられてい
る。
【0003】除算器の実装においては、「減算シフト
法」、あるいは「減算引き離し法」などと呼ばれる除算
アルゴリズムが、ハードウェア量と性能のバランスが良
いことから一般的に用いられている。この除算アルゴリ
ズムは、通常、筆算で除算を行うのと同様に、商の決定
と、余り(部分剰余)のシフトと余りからの分母(除
数)の倍数の減算により、除算を行う手法である。この
ような除算アルゴリズムについて、例えば「コンピュー
タの高速演算方式、1980、近代科学社、pp.21
4−249」には、回復型除算、非回復型除算、SRT
除算、拡張SRT除算といった各種の除算手法について
記載されている。
【0004】まず汎用的な、減算シフト法を用いた除算
の手順について簡単に説明する。演算のビット長をn
(任意の正整数)、演算の基数をr、除数をD、被除数
をR(0)、jを0以上の整数として、j回目の部分剰
余をR(j)、j回目の商をq(j)とする。また、こ
こでは除数D、被除数R(0)は正規化されているもの
とする。
【0005】ここでは、浮動小数点正規化フォーマット
として、1.xxxxを用いるものとし、除数、被除数
共に正規化されているものとする。なお、このフォーマ
ットに合致しないデータ形式を扱う場合でも、演算前後
に適当なシフト処理を実行することで、このような浮動
小数点フォーマットについての処理が適用可能である。
【0006】また、ここで、使用される商及び部分剰余
は、冗長二進表現により表される。すなわち、二補数表
現であれば、各ビットが{0,1}で表されるところ
を、{−1,0,1}の3値を採ることを許し、負のビ
ットを可能としている。
【0007】入力データが上述のように正規化されてい
るとの条件の下で、次の(1)式に示される漸化式を用
いて、順次、商及び部分剰余を求めることができる。
【0008】 R(j+1)=r×R(j)−q(j+1)×D …(1)
【0009】このとき商q(j+1)は、基数rにより
定められるデジット集合の中から以下の条件を満たすよ
うに選択される。
【0010】 0≦|R(j+1)|<k×D …(2)
【0011】ここで、kは次式(3)を満たす定数であ
る。
【0012】k=m/(r−1) …(3)
【0013】上式(3)で、mは、基数rの数系におけ
るデジット集合の内、最大の絶対値を持つデジットであ
る。この場合、mの最小値は1/2×rであり、最大値
はr−1であることから、kの範囲は、次式(4)のよ
うになる。
【0014】1/2≦k<1 …(4)
【0015】例えば基数4の数系を例に取ると、デジッ
ト集合は、{−3,−2,−1,0,1,2,3}と
{−2,−1,0,1,2}の二つが考えられる。前者
についてはk=1であり、後者についてはk=2/3と
なる。kの値が小さくなるということは、(2)式よ
り、演算途中の部分剰余の値域がより狭められる、とい
うことである。すなわち、後者の場合は、除数の倍数と
して3倍数を選択することができないために、演算途中
の部分剰余の値域に対して制限を加え、除数の2倍数ま
でで除算を行えるようにしている。
【0016】また、基数2の数系の場合は、デジット集
合が{−1,0,1}のみであり、これは、k=1の場
合に相当する。
【0017】上式(1)により商を求める場合、一回の
除算により求められる商のビット数はlog(2r)で
あるので、n/log(2r)回除算を繰り返すことに
より所望のビット数の商を求めることができる。
【0018】上記のような除算アルゴリズムは、「P−
Dプロット」と呼ばれるグラフに要約することができ
る。図4に、上記した除算アルゴリズムのP−Dプロッ
トを示す。図4において、横軸に除数、縦軸に基数倍し
た部分剰余(以後シフト後の部分剰余)を示す。ただ
し、P−Dプロットはx軸対象なので、y軸について正
の範囲のみ示してある。このP−Dプロットで表される
アルゴリズムを実装した場合、除数DのMSB(最上位
ビット)を除く上位2ビットと、シフト後の部分剰余の
上位5ビットを参照することにより商を決定することが
できる。除数のMSBは、正規化により1であることが
保証されているため、参照の必要はない。この場合、除
数の参照ビットが2ビットであるので、除数の範囲に従
って4つの区間に区分することができ、各々の区分内で
は、シフト後の部分剰余の補数表現での上位5ビットの
値に対してひとつの商の値を関連付けることができる。
【0019】ある一組の、除数上位2ビット(MSBを
除く)、シフト後の部分剰余の二補数化された上位5ビ
ットは、P−Dプロット上である一定の範囲の値を代表
する。除数の上位2ビット(MSBを除く)をDtとす
ると、真の除数Dは、下記の範囲に存在する。
【0020】 1+Dt≦D<1+Dt+1/4 …(5)
【0021】また、シフト後の部分剰余の二補数化され
た上位5ビットをRt(j)とすると、真のシフト後の
部分上の値rR(j)は、下記の範囲に存在する。
【0022】 Rt(j)−1/2<rR(j)<Rt(j)+1/2 …(6)
【0023】部分剰余は冗長二進表現を取るため、Rt
(j)に対して負の方向の領域にも真の値が存在する可
能性がある。
【0024】上式(5)、(6)で表されるP−Dプロ
ット上の矩形領域が、真の除数、部分剰余の存在する範
囲であり、以下、「不確定領域」と呼ぶ。この不確定領
域内の全ての値において、上式(2)式が満たされるよ
うに商を決定する必要がある。すなわち、例えば商とし
て3を選択する場合、上式(1)、(2)より、rR
(j)=4Dで表される直線から、rR(j)=2Dで
表される直線が、商として3を選択できる領域であり、
不確定領域が、この範囲内に全て収まっている場合のみ
に、3を選択することができる。
【0025】一般に不確定領域を大きくとるということ
は、参照する除数と部分剰余のビット数を減らすことで
あり、商を決定する論理を簡単にできる。従って、上式
(1)、(2)を満たしつつ、最大の不確定領域を選択
する、ことが重要である。また、商の決定に先立ち、シ
フト後の部分剰余は、商決定に必要な参照ビットは冗長
二進数から二補数表現へ変換しておく必要がある。
【0026】以上に述べてきた除算アルゴリズムでは、
除数DのMSBの次の2ビットと、シフト後の部分剰余
の上位5ビットを参照して不確定領域を定める必要があ
る。この時、演算前に除数と被除数に同じ係数を乗じ、
例えば除数が常に1.00〜1.25の範囲に収められ
るように係数を選択すれば、商を決定する際に除数の2
ビットを参照する必要がなくなる。また除算の性質上、
演算前に除数と部分剰余に同じ係数を乗じても得られる
商に変化のないことは自明であろう。
【0027】このように、除算開始前に適切に選択され
た係数(以後乗算係数とする)を乗じることで除算を高
速化する手法を「スケーリング」と呼び、従来より、以
下に説明する手法が開発されている。
【0028】すなわち下記の表ようなスケーリングを行
い、除数を1.75≦除数<2.00の範囲にスケーリ
ングする。
【0029】
【表1】
【0030】上記の除数の範囲を同定するには、MSB
を除いた除数の上位3ビットを参照すればよい。除数の
MSBは正規化により、必ず1となることが保証されて
いるため、参照の必要はない。結果として、除数は1.
75≦除数<2.0の範囲にスケーリングされる。この
場合のP−Dプロットを図5に示す。除数を参照する必
要がないのみならず、不確定領域をスケーリングを行わ
ない場合に比べて、y方向に倍に拡大することができ、
シフト後の部分剰余の参照ビットを二補数化された上位
4ビットにすることができる。更に、乗算自体は、乗算
を実現する倍数の組み合わせに示したように、シフト及
び加算により実現することができる。最大で4種類の倍
数を加算する必要があるが、これは桁上げ保存加算器
(carry save adder)等と通常の2入力の桁上げ伝搬加
算器を組み合わせることで生成できる。
【0031】次に上記従来の除算回路について図面を参
照して説明する。図3は、従来の除算回路の構成の一例
を示すブロック図である。この例では、演算の基数が
4、デジット集合が{−3,−2,−1,0,1,2,
3}、除数、被除数がnビット長小数で、演算アルゴリ
ズムに拡張SRT除算アルゴリズムを用いた除算の場合
について説明する。
【0032】図3において、101はスケーリングに用
いる乗算係数を生成する乗算係数生成回路であり、10
2〜106、107〜111は、各々除数及び被除数の
1/2、1/4、1/8、1/16、1/64倍数をそ
れぞれ生成するシフト回路であり、115、117は各
々乗算係数に合わせて除数、被除数の倍数を選択して桁
上げ保存加算器に倍数を2つに圧縮する倍数選択回路で
あり、116、118は各々桁上げ伝搬加算器により最
終的なスケーリングされた除数、被除数を生成する倍数
発生加算器である。また120は除数を保存する除数レ
ジスタであり、122は部分剰余レジスタであり、12
1は部分剰余か入力された被除数のどちらかを選択する
セレクタである。123は商決定に必要な部分剰余の上
位ビットを二補数化する二補数変換回路であり、124
は二補数変換回路123の出力により商を生成する商生
成回路であり、125は商生成回路124の出力に従い
除数の倍数を選択する除数倍数発生回路であり、126
は除数倍数発生回路125の出力及び部分剰余レジスタ
の出力から次の部分剰余を生成する部分剰余生成冗長二
進加減算回路である。127は商生成回路124の出力
を保存する商レジスタであり、128は商の二補数化を
行う商二補数化加算器である。
【0033】次に、この従来の除算回路の動作について
説明する。除数のMSBを除く上位3ビットは乗算係数
生成回路101へ入力され、生成された係数は倍数選択
回路115、117へ入力される。各種の倍数発生用シ
フタの出力である除数、被除数は倍数選択回路115、
117へ入力され、乗算係数により必要な倍数が選択さ
れた後に桁上げ保存加算器等により桁上げと和に圧縮さ
れた後に、倍数発生加算器116、118へ入力され
る。倍数発生加算器116、118の出力は除数レジス
タ120、部分剰余レジスタ122へ入力される。な
お、この従来の除算回路では、除算を繰り返しで行うた
め、最初の一回のみは部分剰余レジスタの入力は被除数
となり、これ以降はその都度部分剰余がセレクタ121
により選択される。商生成サイクルでは、部分剰余レジ
スタ122から、商決定に必要なビット数の部分剰余が
読み出され、二補数変換回路123により二補数化され
た部分剰余の上位4ビットが生成される。この部分剰余
の上位4ビットにより商生成回路124で商が二ビット
生成され、生成された商は商レジスタ127へ保存され
る。また、生成された商に従って、除数倍数発生回路で
倍数が生成され、部分剰余生成冗長二進加減算器126
で次のサイクルで用いられる部分剰余が生成される。最
終的に、商が必要なビット数だけそろった後に、商二補
数化加算器により商が通常数へと変換され、除算が終了
する。
【0034】ところで、上記手法では、スケーリングに
おいて除数の1/64倍数を使用する。これは、スケー
リング後の除数、被除数のビット幅の増加を意味し、L
SIの実装においては面積の増加となる。また、除数の
範囲区分を厳密にすることにより、より乗算係数を単純
化、すなわち乗算を実現する倍数の組み合わせで単純な
組合わせにすることができる。
【0035】しかしながら、例えば除数の参照ビット数
を1ビット増やすことで除数を16の範囲に区分するこ
とができるが、この場合はスケーリングの前処理となる
除数の範囲の同定が複雑になり遅延が悪化する。
【0036】
【発明が解決しようとする課題】上記したように、従来
のスケーリングを伴う除算器では、1/16倍、1/6
4倍といったより小さな除数の倍数を必要とし、回路規
模が大きくなる、という問題点を有している。
【0037】また、除数の参照ビットを増加させ範囲区
分を厳密化した場合には除数の範囲同定が複雑化し遅延
が悪化する、という問題点を有している。
【0038】したがって本発明は、上記問題点に鑑みて
なされたものであって、その目的は、除数をある範囲に
限定するスケーリングを行う高基数減算シフト方式を用
い且つ部分剰余に冗長二進表現を用いる除算回路におい
て、スケーリングを簡易化して回路規模の増大を抑止す
るとともに、商生成の高速化を図る除算回路を提供する
ことにある。
【0039】
【課題を解決するための手段】前記目的を達成する本発
明の除算回路は、kを正整数として、1/2^k〜1/
2^(k+1)(ただし、^はべき乗演算を示す)に正
規化された除数及び被除数と、部分剰余の全ビットのう
ち演算の基数及び最大デジット数により定められるビッ
ト長を参照して商を定める高基数型除算回路であって、
mを正整数として、入力された除数及び被除数の±1/
2^m倍の倍数を生成する倍数発生手段と、前記除数の
値域に従って前記除数を所定の範囲内にスケーリングす
る乗算係数を発生する乗算係数発生手段と、前記倍数発
生手段により生成された倍数と前記乗算係数発生手段に
より生成された乗算係数とから除数及び被除数のスケー
リングを行うスケーリング手段と、前記スケーリング手
段により生成された除数と被除数により除算を行う除算
回路と、を含む構成とされる。
【0040】本発明においては、前記倍数発生手段が、
1/2倍、1/4倍、1/8倍、−1/8倍の倍数を発
生し、前記スケーリング手段が、前記除数を、3/2×
1/2^k以上7/4×1/2^k未満の範囲にスケー
リングを行う。
【0041】本発明においては、前記除算回路は、部分
剰余の任意長の上位ビット数を参照し二補数化された5
ビットの部分剰余の上位ビットを生成し、該部分剰余の
上位4ビットを参照して商を生成する。
【0042】
【発明の実施の形態】本発明は、入力された除数、被除
数を、予め1.50(=3/2)≦除数<1.75(=
7/4)の範囲にスケーリングし、1/16、1/64
倍数を不必要にし、回路規模の増大を抑えることを可能
としたものである。また、商生成の際に、部分剰余の上
位5ビットを二補数化するのに対して、商生成自体は、
上位4ビットを参照することにより、上記スケーリング
範囲で、商の演算精度を保証しながら、高速に商生成が
出来るようにしたものである。
【0043】本発明は、その好ましい実施の形態におい
て、1/2^k〜1/2^(k+1)(kは正整数、^
はべき乗演算を示す)に正規化された除数及び被除数
と、部分剰余の全ビットのうち演算の基数及び最大デジ
ット数により定められるビット長を参照して商を定める
高基数型除算回路において、入力された除数及び被除数
の±1/2^m倍(mは正整数)の倍数を生成する倍数
発生手段(図1の2〜9)と、除数の値域に従って前記
除数を所定の範囲内にスケーリングする乗算係数を発生
する乗算係数発生手段(図1の1)と、倍数発生手段に
より生成された倍数と乗算係数発生手段により生成され
た乗算係数とから除数及び被除数のスケーリングを行う
スケーリング手段(図1の倍数選択手段15、17と、
倍数発生加算手段16、18)と、スケーリング手段に
より生成された除数と被除数により除算を行う除算手段
(図1の23〜28)と、を含む。本発明の実施の形態
においては、倍数発生手段(図1の2〜9)は、1/2
倍、1/4倍、1/8倍、−1/8倍の倍数を発生し、
スケーリング手段が、前記除数を、3/2×1/2^k
以上7/4×1/2^k未満の範囲にスケーリングを行
う。また除算手段において、二補数変換手段(図1の2
3)は、部分剰余の任意長の上位ビット数を参照し二補
数化された部分剰余の上位5ビットを生成し、商生成手
段(図1の24)は、生成された部分剰余のうち上位4
ビットを参照して商を生成する。
【0044】本発明の実施の形態について以下に説明す
る。まず本発明の除算回路の原理について、P−Dプロ
ットを用いて説明する。図2に、本発明の実施の形態に
対応するP−Dプロットを示す。本発明の一実施の形態
では、下記の乗算係数を用いて、1.50≦除数<1.
75の範囲にスケーリングを行う。
【0045】
【表2】
【0046】乗算を実現する倍数の組み合わせにおい
て、1/8倍までの倍数でスケーリングが実現できる。
除数の範囲の同定は、前記従来技術と同じく、MSBを
除く除数の上位3ビットである。この場合、前記従来技
術と同じように不確定領域を定めると、シフト後の部分
剰余の二補数化された上位ビットが二進数で0100
(10進数で4.0)の場合において、範囲を超えてし
まう。この場合のシフト後の部分剰余rR(j)の値域
は、 3.0<rR(j)<5.0 …(7) であり、1.5≦除数<1.75の領域においては、商
が1もしくは2の領域と3もしくは4の領域を共に含む
ことになり、上式(1)、(2)を満足できない。
【0047】ここで、シフト後の部分剰余について、参
照する上位4ビットに加えて、上位5ビット目を含めて
冗長二進数から二補数への変換を行う。この変換によ
り、参照ビットが“0100”の場合の、シフト後の部
分剰余の値域は下記のようにあらわされる。
【0048】3.5<rR(j)<5.0 …(8)
【0049】上記(8)式で表される値域では、当該の
不確定領域は全て商が3の領域に含まれることとなり、
上式(1)、(2)を満足することができる。この場合
のP−Dプロットを、図2上に示してある。
【0050】
【実施例】次に、本発明の実施の形態の動作について具
体的な実施例に即して説明する。図1は本発明の一実施
例の構成を示すブロック図である。本実施例では、演算
の基数が4、デジット集合が{−3,−2,−1,0,
1,2,3}、除数、被除数がnビット長小数で、演算
アルゴリズムに拡張SRT除算アルゴリズムを用いた除
算の場合について説明する。
【0051】1はスケーリングに用いる乗算係数を生成
する乗算係数生成回路であり、2〜5は各々除数の1/
2、1/4、1/8、−1/8倍数を生成するシフト回
路であり、6〜9は各々被除数の1/2、1/4、1/
8、−1/8倍数を生成するシフト回路であり、15、
17は各々乗算係数に合わせて除数、被除数の倍数を選
択して桁上げ保存加算器に倍数を2つに圧縮する倍数選
択回路であり、16、18は各々桁上げ伝搬加算器によ
り最終的なスケーリングされた除数、被除数を生成する
倍数発生加算器である。20は除数を保存する除数レジ
スタであり、22は部分剰余レジスタであり、21は部
分剰余か入力された被除数のどちらかを選択するセレク
タである。23は商決定に必要な部分剰余の上位ビット
を二補数化する二補数変換回路であり、24は二補数変
換回路23の出力により商を生成する商生成回路であ
り、25は商生成回路24の出力に従い除数の倍数を選
択する除数倍数発生回路であり、26は除数倍数発生回
路25の出力及び部分剰余レジスタの出力から次の部分
剰余を生成する部分剰余生成冗長二進加減算回路であ
る。27は商生成回路24の出力を保存する商レジスタ
であり、28は商の二補数化を行う商二補数化加算器で
ある。
【0052】前述した従来の除算器では、スケーリング
に要する除数、被除数の倍数が、1/64まで必要であ
ったのに対して、本実施例では、1/8まででよい。
【0053】次に本実施例の動作について説明する。除
数のMSBを除く上位3ビットは乗算係数生成回路1へ
入力され、生成された係数は倍数選択回路15、17へ
入力される。各種の倍数発生用シフタの出力である除
数、被除数は倍数選択回路15、17へ入力され、乗算
係数により必要な倍数が選択された後に桁上げ保存加算
器等により桁上げと和に圧縮された後に倍数発生加算器
16、18へ入力される。この時、必要となる倍数は、
1/2、1/4、1/8、−1/8であり、1/16、
1/64は必要ではない。倍数発生加算器16、18の
出力は、除数レジスタ20、部分剰余レジスタ22へ入
力される。
【0054】本実施例では、除算を繰り返しで行うた
め、最初の一回のみは部分剰余レジスタの入力は被除数
となり、これ以降はその都度部分剰余がセレクタ21に
より選択される。
【0055】商生成サイクルでは、部分剰余レジスタ2
2から、商決定に必要なビット数の部分剰余が読み出さ
れ、二補数変換回路23により二補数化された部分剰余
の上位5ビットが生成される。従来の除算回路では、4
ビットであったが、ここでは5ビット生成する。このた
め、P−Dプロット上での不確定領域が、従来例に比べ
て範囲を狭くすることが出来、本発明で採用したスケー
リング範囲においても間違いなく商を選択することが出
来る。
【0056】二補数化処理は例えば桁上げ伝搬加算器に
より実現できる。二補数化のビット数が増えた場合、桁
上げ選択加算器等により、遅延に影響を与えずに二補数
化するビット数を増やすことが出来る。
【0057】商生成回路24は、従来例と同じく部分剰
余の上位4ビットで商を二ビット生成する。生成された
商は商レジスタ27へ保存される。また、生成された商
に従って、除数倍数発生回路15、17で倍数が生成さ
れ、部分剰余生成冗長二進加減算器26で次のサイクル
で用いられる部分剰余が生成される。最終的に、商が必
要なビット数だけそろった後に、商二補数化加算器28
により、商が通常数へと変換され、除算が終了する。
【0058】なお、本発明は上記各実施例に限定され
ず、本発明の技術思想の範囲内において、各実施例は適
宜変更され得ることは明らかである。
【0059】
【発明の効果】以上説明したように、本発明の除算器に
よれば、スケーリングにおいては、1/16、1/64
倍数を使用することを不要とし、かつ、1.75≦除数
<2.00の範囲にスケーリングした場合と同様に、二
補数化された部分剰余の上位4ビットのみの参照で商を
決定することができ、回路規模の増大を抑止するととも
に、高速化を達成する、という効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施例をなすスケーリング型除算器
の構成を示す図である。
【図2】本発明を適用した除算アルゴリズムを説明する
P-Dプロットである。
【図3】従来方式によるスケーリング型除算器の構成の
一例を示す図である。
【図4】従来のスケーリングを適用した除算アルゴリズ
ムを説明するP-Dプロットである。
【図5】従来の除算アルゴリズムを説明するP−Dプロッ
トである
【符号の説明】
1 乗算係数生成回路 2 除数1/2倍生成シフタ 3 除数1/4倍生成シフタ 4 除数1/8倍生成シフタ 5 除数−1/8倍生成シフタ 6 被除数1/2倍生成シフタ 7 被除数1/4倍生成シフタ 8 被除数1/8倍生成シフタ 9 被除数−1/8倍生成シフタ 15 除数倍数選択回路 16 除数倍数発生加算器 17 被除数倍数選択回路 18 被除数倍数発生加算器 20 除数レジスタ 21 部分剰余セレクタ 22 部分剰余レジスタ 23 二補数変換回路 24 商生成回路 25 除数倍数発生回路 26 部分剰余生成冗長二進加減算回路 27 商レジスタ 28 商二補数化加算器 101 乗算係数生成回路 102 除数1/2倍生成シフタ 103 除数1/4倍生成シフタ 104 除数1/8倍生成シフタ 105 除数1/16倍生成シフタ 106 除数1/64倍生成シフタ 107 被除数1/2倍生成シフタ 108 被除数1/4倍生成シフタ 109 被除数1/8倍生成シフタ 110 被除数1/16倍生成シフタ 111 被除数1/64倍生成シフタ 115 除数倍数選択回路 116 除数倍数発生加算器 117 被除数倍数選択回路 118 被除数倍数発生加算器 120 除数レジスタ 121 部分剰余セレクタ 122 部分剰余レジスタ 123 二補数変換回路 124 商生成回路 125 除数倍数発生回路 126 部分剰余生成冗長二進加減算回路 127 商レジスタ 128 商二補数化加算器

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】kを正整数として、1/2^k〜1/2^
    (k+1)(ただし、^はべき乗演算を示す)に正規化
    された除数及び被除数と、部分剰余の全ビットのうち演
    算の基数及び最大デジット数により定められるビット長
    を参照して商を定める高基数型除算回路であって、 mを所定の正整数として、入力された除数及び被除数の
    ±1/2^m倍の倍数を生成する倍数発生手段と、 前記除数の値域に従って前記除数を所定の範囲内にスケ
    ーリングする乗算係数を発生する乗算係数発生手段と、 前記倍数発生手段により生成された倍数と前記乗算係数
    発生手段により生成された乗算係数とから除数及び被除
    数のスケーリングを行うスケーリング手段と、 前記スケーリング手段により生成された除数と被除数に
    より除算を行う除算手段と、 を含むことを特徴とする除算回路。
  2. 【請求項2】請求項1記載の除算回路において、 前記倍数発生手段が、前記除数及び被除数の1/2倍、
    1/4倍、1/8倍、−1/8倍の倍数を発生し、 前記スケーリング手段が、前記除数を、3/2×1/2
    ^k以上7/4×1/2^k未満の範囲にスケーリング
    を行う、ことを特徴とする除算回路。
  3. 【請求項3】請求項1記載の除算回路において、 前記スケーリング手段が、前記倍数発生手段により生成
    された倍数群を桁上げ保存加算手段で桁上げと和に圧縮
    して生成し、前記生成した桁上げと和を桁上げ伝搬手段
    により加算することでスケーリングを行う、ことを特徴
    とする除算回路。
  4. 【請求項4】請求項2記載の除算回路において、 前記除算手段が、部分剰余の任意長の上位ビット数を参
    照し二補数化された5ビットの部分剰余の上位ビットを
    生成する手段と、該部分剰余の上位4ビットを参照して
    商を生成する手段と、を備えたことを特徴とする除算回
    路。
JP10173185A 1998-06-19 1998-06-19 除算回路 Pending JP2000010763A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10173185A JP2000010763A (ja) 1998-06-19 1998-06-19 除算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10173185A JP2000010763A (ja) 1998-06-19 1998-06-19 除算回路

Publications (1)

Publication Number Publication Date
JP2000010763A true JP2000010763A (ja) 2000-01-14

Family

ID=15955675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10173185A Pending JP2000010763A (ja) 1998-06-19 1998-06-19 除算回路

Country Status (1)

Country Link
JP (1) JP2000010763A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6847986B2 (en) 2000-02-07 2005-01-25 Nec Corporation Divider
US11669304B2 (en) 2021-02-08 2023-06-06 Kioxia Corporation Arithmetic device and arithmetic circuit for performing multiplication and division
CN116820388A (zh) * 2023-08-24 2023-09-29 深圳比特微电子科技有限公司 除法器、处理器和计算装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6847986B2 (en) 2000-02-07 2005-01-25 Nec Corporation Divider
US11669304B2 (en) 2021-02-08 2023-06-06 Kioxia Corporation Arithmetic device and arithmetic circuit for performing multiplication and division
CN116820388A (zh) * 2023-08-24 2023-09-29 深圳比特微电子科技有限公司 除法器、处理器和计算装置
CN116820388B (zh) * 2023-08-24 2023-11-14 深圳比特微电子科技有限公司 除法器、处理器和计算装置

Similar Documents

Publication Publication Date Title
US4939686A (en) Method and apparatus for shared radix 4 division and radix 4 square root
JP2622896B2 (ja) 除算装置
EP0149248B1 (en) Method and apparatus for division using interpolation approximation
KR100756137B1 (ko) 제산 및 제곱근 연산 유닛
JP2835153B2 (ja) 高基数除算器
US6108682A (en) Division and/or square root calculating circuit
JP2004326112A (ja) マルチプルモジュラス選択器、累算器、モンゴメリー掛け算器、マルチプルモジュラス発生方法、部分掛け発生方法、累算方法、掛け算方法、モジュラス選択器、およびブースレコーダ
JP2585649B2 (ja) 除算回路
JP3551113B2 (ja) 除算器
KR100465371B1 (ko) 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
CA2329104C (en) Method and apparatus for calculating a reciprocal
JP3003467B2 (ja) 演算装置
JP2502836B2 (ja) 除算回路の前処理装置
JPH0731592B2 (ja) 除算回路
JPH07234778A (ja) 演算回路
JP3660075B2 (ja) 除算装置
Pineiro et al. High-radix logarithm with selection by rounding
JP2000010763A (ja) 除算回路
Sutter et al. Comparative study of SRT-dividers in FPGA
JP2005056032A (ja) 剰余系演算システム、スケーリング演算器、スケーリング演算方法、及びそのプログラムと記録媒体
Lindström et al. Arithmetic circuits combining residue and signed-digit representations
WO2021035230A2 (en) Methods and apparatus for quotient digit recoding in a high-performance arithmetic unit
JPH086766A (ja) 正弦余弦演算装置
JPH08504046A (ja) 浮動小数点2進数を2進形式における対数に変換しまたはその逆変換をするための装置
JP2645422B2 (ja) 浮動小数点演算処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20001003