JP2518532B2 - 減算シフト型除算器 - Google Patents

減算シフト型除算器

Info

Publication number
JP2518532B2
JP2518532B2 JP5236130A JP23613093A JP2518532B2 JP 2518532 B2 JP2518532 B2 JP 2518532B2 JP 5236130 A JP5236130 A JP 5236130A JP 23613093 A JP23613093 A JP 23613093A JP 2518532 B2 JP2518532 B2 JP 2518532B2
Authority
JP
Japan
Prior art keywords
division
divisor
radix
partial remainder
dividend
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
JP5236130A
Other languages
English (en)
Other versions
JPH0793135A (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.)
NEC Corp
Original Assignee
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP5236130A priority Critical patent/JP2518532B2/ja
Publication of JPH0793135A publication Critical patent/JPH0793135A/ja
Application granted granted Critical
Publication of JP2518532B2 publication Critical patent/JP2518532B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は減算シフト型の除算器に
関するものである。
【0002】
【従来の技術】従来、減算シフト型の除算器では(1)
式に示される漸化式を用いて順次に商及び部分剰余を求
める。
【0003】 R(j+1)=r×R(j)−q(j+1)×D (1) ここでjは0以上の整数、R(j)はj回目の部分剰
余、rは演算の基数、q(j)はj回目の商、Dは除
数、R(0)は被除数である。ただし、演算のビット長
はn(任意の正整数)とする。また、ここでは少なくと
もDは正規化(1/2≦|D|<1)されており、なお
かつ0<R(0)<Dであるとする。
【0004】この条件に合致しない場合でも、演算前に
適当な正規化処理(通常シフトにより実行する)及び除
数・被除数の符号の調整を行うことで上記条件を実現で
きる。
【0005】商q(j+1)は以下の条件により選択さ
れる。
【0006】 0≦R(j+1)<D (2) 基数r=2を例に取ると、(2)式の条件下で商q(j
+1)の選択規則は以下のようになる。
【0007】
【数1】
【0008】(3)式の商の選択規則を用いて(1)式
を順次実行していき、R(n)とq(n)が算出された
段階で除算処理は終了し、0.q(1)q(2)・・・
・・q(n)が商、r-n×R(n)が剰余となる。
【0009】実際の除算器では、基数のデジット集合の
要素一つ一つに対応する除数の倍数[(1)式のq(j
+1)×D]を用意しておき、これと部分剰余の基数倍
[(1)式のr×R(j)]をそれぞれ比較する。この
比較結果より、(2)式を満たすq(j+1)を求め
る。
【0010】また、減算シフト型の除算器の場合、演算
の内部数表現として符号付きデジット表現(以下SD表
現と記す)を用いて冗長性を導入することで、回路の簡
略化・高速化が可能である。SD表現を用いると負数が
許されるため、(2)式は以下のように表される。
【0011】 |R(j+1)|≦k×|D| (4) ここでkは1/2<k≦1となるような定数である。基
数r=2を例にとり説明する。基数2に対してSD表現
を導入すると、デジット集合は(0,1)ではなく(−
1,0,1)となる。次に表の選択規則は以下のように
なる。
【0012】
【数2】
【0013】(3)式では部分剰余の基数倍2R(j)
と除数Dを正確に比較する必要があったが、(5)式で
は比較対象として定数の±1/2とだけ比較するだけで
すみ、これは部分剰余R(j)の上位3ビットのみを検
査すれば良いことが知られている。
【0014】このことから商の生成の高速化が実現でき
る。また、(1)式に相当する減算処理もSD表現を導
入すると桁上げが1ビットしか伝搬しないSD加算器を
用いることができ、これは全加算器2つ程度の遅延であ
るので一般的な桁上げ先見加算器に比べ高速である。
【0015】このようにSD表現を用いた除算では、そ
の冗長性により商の決定及び加減算処理が高速化できる
ため、広く用いられている。
【0016】図2は従来の除算器技術による基数rの除
算器のブロック図を示す。ブロック21は除数Dの倍数
生成ブロックであり、基数rに対応して必要となる除数
Dの倍数を生成する。上述の基数2の場合、必要となる
倍数は±1であり、事実上倍数生成は必要ないが、基数
が大きくなるに従って必要となる倍数は増え、倍数生成
のための遅延時間は増大する。ブロック20は基数rの
除算ブロックであり、除数Dと部分剰余Rとから商と除
数の倍数を決定し、SD加算器により加減算を行い次の
部分剰余R(j)を算出する。ブロック16は繰り返し
制御ブロックであり、第1回目の除算の場合は被除数R
(0)を出力し、第2回目以降は除算ブロック20の出
力である部分剰余R(j)を出力する。
【0017】次のこの除算器の動作を説明する。まず、
基数rに対応するデジット集合に従い除数Dの倍数の生
成が行われる。例えば基数4でデジット集合を{−3,
−2,−1,0,1,2,3}と選択したならば、除数
の3倍数が計算される。2倍数は、除数を1ビットMS
B側へシフトすることで得られる。同時に繰り返し制御
ブロック16は被除数R(0)を部分剰余Rとして出力
する。次に除算ブロック20に除数D、除数の倍数、部
分剰余Rが入力される。この後除数Dと部分剰余とから
商が決定され、この商の値に従い除数の倍数が選択さ
れ、部分剰余と共にSD加算器に入力される。SD加算
器の出力が次の部分剰余R(j)となる。このような従
来の減算シフト型除算器技術は、「コンピュータの高速
演算方式、’80、近代科学社、p214−249」、
「電子通信学会論文誌、vol.J67−D、No.
4、p450−457、’84」等に詳細に記述されて
いる。
【0018】
【発明が解決しようとする課題】前述のように従来の減
算シフト型除算器技術の除算では、初めに予め定められ
た演算の基数に対応した除数の倍数を生成し、これらを
用いて順次減算もしくは加算を行い商を決定していた。
【0019】従って特に高基数の場合に、除数の倍数の
生成に時間を要するため、減算を開始するまでの遅延が
大きいという課題があった。
【0020】本発明の目的は、 高基数減算シフト型除
算器技術において、減算開始までの除数の倍数生成の時
間内に、低基数での除算を並行に実行し、商生成の遅延
時間を削減することにある。
【0021】
【課題を解決するための手段】係る課題を解決するため
の本発明における手段の要旨は、以下の2項に存する。
【0022】[1] 除算の基数を正整数r乗とし、除
数と被除数の2つの数を入力とし、除算の基数に対応す
る前記除数を生成する第1の倍数発生手段と、商決定手
段及び減算手段を具備し、該商決定手段が前記除数と前
記被除数とから商を算出し、該減算手段が該決定された
商に従い、前記被除数又は部分剰余と除数の倍数との差
をとり次の部分剰余を算出する第1の除算実行手段と、
前記被除数又は前記部分剰余のうち所定の一方を前記除
算実行手段へ出力し、除算の繰り返しの制御を行う除算
制御手段とからなる減算シフト型除算器において、第1
乃至第nの除算ユニットからなり、前記nは1又はそれ
以上であり、該n個の除算ユニットは、1番の除算ユニ
ット、2番の除算ユニット,…,n番の除算ユニットの
順に直列に接続されて成り、第nの除算ユニットが、n
をrより小さな正整数とし、2のn乗を除算の基数とす
る第nの除算実行手段と、前記第nの除算実行手段と同
時に実行可能であり、2の(n+1)乗の除算に必要な
前記除数の倍数を発生する第nの除数の倍数発生手段
と、前記第nの除算実行手段が生成する部分剰余と前記
第nの除数の倍数生成手段が生成する除数の倍数とに基
づいて、2の(n+1)乗を除算の基数とした除算を実
行する第n+1の除算実行手段と、1以上(r−1)以
下のnに対応する前記第nの除算実行手段と前記第nの
除数の倍数発生手段が直列に接続され、2の(r−1)
乗に対応する前記第nの除算実行手段が生成する部分剰
余が接続された前記除算制御手段と、1以上(r−1)
以下の範囲に対応する前記第nの除数の倍数生成手段に
替えて具備された前記第1の除数の倍数発生手段とから
成ることを特徴とする減算シフト型除算器。
【0023】[2] 演算の基礎をr乗とし、除数と被
除数の2数を入力とし、演算の基礎に対応する前記除数
の第1の倍数発生手段と、前記除数と前記被除数とから
商を決定する商決定手段及び決定された商に従い除数の
倍数と前記被除数もしくは部分剰余の差をとり次の部分
剰余を算出する加算もしくは減算手段からなる第1の除
算実行手段と、前記被除数と前記部分剰余のどちらかを
前記除算実行手段へ出力し除算の繰り返しの制御を行う
除算の繰り返し制御手段とからなる減算シフト型除算器
において、iをrより小さな正整数とし、2のi乗を演
算の基礎とする第2の除算実行手段と、2の(i+1)
乗の除算に必要な前記除数の倍数を発生する前記第2の
除算実行手段と同時に実行可能な第2の除数の倍数発生
手段と、前記第2の除算実行手段が出力する部分剰余と
前記第2の除数の倍数生成手段が出力する除数の倍数は
2の(i+1)乗を演算の基礎とする第3の除算実行手
段へ接続され、1から(r−1)の範囲のiに対応する
前記第2の除算実行手段と前記第2の除数の倍数発生手
段が直列に接続され、2の(r−1)乗に対応する前記
第2の除算実行手段が出力する部分剰余は前記除算の繰
り返し制御ブロックに接続され、1から(r−1)の範
囲に対応する前記第2の除数の倍数生成手段を前記第1
の除数の倍数発生手段と置き換えた構成を特徴とする演
算シフト型除算器。
【0024】
【作用】本発明の除算器では、通常の除算器に加え演算
器で用いられる基数よりも低い基数での商決定手段及び
部分剰余生成回路を含む除算ブロックを有し、除数の倍
数を低い基数で必要となる倍数から順次生成していき、
高い基数の除数の生成と低い基数での除算を並行して行
う。
【0025】特に高基数の場合には除数の倍数生成には
時間を要するために除算の開始までの遅延が大きいが、
この倍数生成と並行して低基数での除算を行い、全ての
除数の倍数が生成され除算が開始されるまでに商の上位
何bitかを算出することで商生成の遅延時間の削減が
実現できる。
【0026】
【実施例】次に本発明の実施例を図面を参照して説明す
る。図1は本発明の実施例を示すブロック図である。
【0027】この実施例では、演算の基数が8、除数、
被除数がnビット最小数の除算の場合について説明す
る。
【0028】ブロック11,12,13はそれぞれ基数
2,4,8に対応する除算ブロックであり、除数Dと部
分剰余もしくは被除数とから商を決定する商決定回路
と、商の値に従って除数の倍数を選択する選択回路と、
部分剰余もくしは被除数と選択された除数の倍数の加減
算を行い次の部分剰余を生成するSD加算器を有する。
ブロック14,15はそれぞれ除数の3倍数生成ブロッ
クと5,7倍数生成ブロックであり、ブロックキャリー
ルックアヘッド加算器やリップルキャリー加算器などの
通常の2進表現の加算を実行する加算器で構成される。
【0029】ブロック16は基数8の除算ブロックを用
いた繰り返し除算を制御する繰り返し制御ブロックであ
り、第1回目の除算では部分剰余R(2)を部分剰余R
として出力し、第2回目以降の除算では除算ブロック1
3が出力した部分剰余R(j)を部分剰余Rとして出力
する。ブロック17,18,19はバッファである。次
に本除算器の動作を説明する。まず基数2の除算ブロッ
ク11が除算を実行して商q(1)と部分剰余R(1)
を生成し、これと並行に3倍数生成ブロック14が除数
Dの3倍数103を生成する。基数2の除算の場合、必
要な倍数は±1であるので特別な倍数生成回路は必要で
ない。
【0030】次に基数4の除算ブロック12が、部分剰
余R(1)、除数D、除数の3倍数103を用いて除算
を行い、商q(2),q(3)及び部分剰余R(2)を
生成する。この場合、除数Dの2倍数は除数Dを1ビッ
トシフトすることで得られる。
【0031】この除算と並行に5,7倍数生成ブロック
15が除数Dの5倍数105、7倍数106を生成す
る。これ以降は、除数の3倍数104、5倍数105、
7倍数106を用いて基数8の除算が繰り返し実行され
る。除数Dの2倍数は除数Dの1ビットシフト、4倍数
は2ビットシフト、6倍数は除数Dの3倍数の1ビット
シフトにより生成される。基数8の除算ブロック13
は、部分剰余R、除数Dとから3ビットの商q(i)、
q(i+1)、q(i+2)を生成する。この商の値に
従い、入力される除数Dの倍数の中から適当な倍数を選
択し、部分剰余Rと選択された除数の倍数とからSD加
算器を用いて次の部分剰余R(j)を生成する。なお、
R(0)以外の全ての部分剰余と全ての商は冗長表現で
あり、除数とその倍数は全て通常の2進表現となる。
【0032】また、バッファ17,18,19は除数及
びその倍数を適当にバッファリングし、現在実行中の除
算及び倍数生成が高速に実行できるように配置されてい
る。従来の除算器を示した図2の場合では、倍数生成ブ
ロック21において3,5,7倍数を同時に生成する必
要があり、除算が開始されるまでの遅延が非常に大き
い。本発明による除算器では、除数の倍数の生成の実行
と同時に、低基数での除算を並行に行う。最も小さい基
数(通常は2)から除算を開始し、順次高い基数の除算
を行う。除数の倍数生成回路は、これと並行に実行され
る除算の次の除算で用いられる除数の倍数を生成するよ
うに構成される。
【0033】図2の実施例の場合、基数2での除算と並
行に基数4の除算で用いられる倍数の生成を行い、次に
基数4の除算の実行と並行に基数8の除算で必要となる
倍数の生成を行う。
【0034】これにより実際の基数8での除算が開始さ
れるまでに、商の上位3ビットが算出されるのと同時に
除数の倍数が生成される。除数の倍数生成と商生成を同
時に実行することで商生成の遅延時間を削減することが
できる。
【0035】
【発明の効果】以上述べたように、本発明の除算器で
は、通常の除算器に加え演算器で用いられる基数よりも
小さい基数での商決定手段及び部分剰余生成手段を含む
除算ブロックを有し、高い基数の除数の生成と低い基数
での除算を並行して行う。
【0036】特に高基数の場合には除数の倍数生成には
時間を要するために除算の開始までの遅延が大きいが、
この倍数生成と並行して低基数での除算を行い、全ての
除数の倍数が生成され除算が開始されるまでに商の上位
何bitかを算出する。
【0037】これにより、全ての除数の倍数が生成され
除算が開始されるまでに商の上位何bitかを算出する
ことができるため、商の生成に要する遅延時間の削減が
実現される。
【図面の簡単な説明】
【図1】本発明における減算シフト型除算器の実施例を
示した図である。
【図2】従来の基数rの減算シフト型除算器を示す図で
ある。
【符号の説明】
11 基数2の除算ブロック 12 基数4の除算ブロック 13 基数8の除算ブロック 14 除数の3倍数生成ブロック 15 除数の5,7倍数生成ブロック 16 除算の繰り返し制御ブロック 17 バッファ 18 バッファ 19 バッファ 20 基数rの除算ブロック 21 除数の倍数生成ブロック 101 バッファリングされた除数D 102 バッファリングされた除数D 103 除数の3倍数 104 バッファリングされた除数の3倍数 105 除数の5倍数 106 除数の7倍数 200 減算シフト型除算器

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 除算の基数を正整数のr乗とし、除数と
    被除数の2つの数を入力とし、除算の基数に対応する前
    記除数を生成する第1の倍数発生手段と、 商決定手段及び減算手段を具備し、該商決定手段が前記
    除数と前記被除数とから商を算出し、該減算手段が該決
    定された商に従い、前記被除数又は部分剰余と除数の倍
    数との差をとり次の部分剰余を算出する第1の除算実行
    手段と、 前記被除数又は前記部分剰余のうち所定の一方を前記除
    算実行手段へ出力し、除算の繰り返しの制御を行う除算
    制御手段とからなる減算シフト型除算器において、 第1乃至第nの除算ユニットからなり、 前記nは1又はそれ以上であり、 該n個の除算ユニットは、1番の除算ユニット、2番の
    除算ユニット,…,n番の除算ユニットの順に直列に接
    続されて成り、 第nの除算ユニットが、 nをrより小さな正整数とし、2のn乗を除算の基数と
    する第nの除算実行手段と、 前記第nの除算実行手段と同時に実行可能であり、2の
    (n+1)乗の除算に必要な前記除数の倍数を発生する
    第nの除数の倍数発生手段と、 前記第nの除算実行手段が生成する部分剰余と前記第n
    の除数の倍数生成手段が生成する除数の倍数とに基づい
    て、2の(n+1)乗を除算の基数とした除算を実行す
    る第n+1の除算実行手段と、 1以上(r−1)以下のnに対応する前記第nの除算実
    行手段と前記第nの除数の倍数発生手段が直列に接続さ
    れ、2の(r−1)乗に対応する前記第nの除算実行手
    段が生成する部分剰余が接続された前記除算制御手段
    と、 1以上(r−1)以下の範囲に対応する前記第nの除数
    の倍数生成手段に替えて具備された前記第1の除数の倍
    数発生手段とから成ることを特徴とする減算シフト型除
    算器。
  2. 【請求項2】 演算の基数を2のr乗とし、除数と被除
    数の2数を入力とし、演算の基数に対応する前記除数の
    第1の倍数発生手段と、前記除数と前記被除数とから商
    を決定する商決定手段及び決定された商に従い除数の倍
    数と前記被除数もしくは部分剰余の差をとり次の部分剰
    余を算出する加算もしくは減算手段からなる第1の除算
    実行手段と、前記被除数と前記部分剰余のうちどちらか
    を前記除算実行手段へ出力し除算の繰り返しの制御を行
    う除算の繰り返し制御手段とからなる減算シフト型除算
    器において、 iをrより小さな正整数とし、2のi乗を演算の基数と
    する第2の除算実行手段と、 2の(i+1)乗の除算に必要な前記除数の倍数を発生
    する前記第2の除算実行手段と同時に実行可能な第2の
    除数の倍数発生手段とを備え、 前記第2の除算実行手段が出力する部分剰余と前記第2
    の除数の倍数生成手段が出力する除数の倍数は2の(i
    +1)乗を演算の基礎とする第3の除算実行手段へ接続
    され、 1から(r−1)の範囲のiに対応する前記第2の除算
    実行手段と前記第2の除数の倍数発生手段が直列に接続
    され、 2の(r−1)乗に対応する前記第2の除算実行手段が
    出力する部分剰余は前記除算の繰り返し制御ブロックに
    接続され、 1から(r−1)の範囲に対応する前記第2の除数の倍
    数生成手段を前記第1の除数の倍数発生手段と置き換え
    た構成を特徴とする演算シフト型除算器。
JP5236130A 1993-09-22 1993-09-22 減算シフト型除算器 Expired - Fee Related JP2518532B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5236130A JP2518532B2 (ja) 1993-09-22 1993-09-22 減算シフト型除算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5236130A JP2518532B2 (ja) 1993-09-22 1993-09-22 減算シフト型除算器

Publications (2)

Publication Number Publication Date
JPH0793135A JPH0793135A (ja) 1995-04-07
JP2518532B2 true JP2518532B2 (ja) 1996-07-24

Family

ID=16996209

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5236130A Expired - Fee Related JP2518532B2 (ja) 1993-09-22 1993-09-22 減算シフト型除算器

Country Status (1)

Country Link
JP (1) JP2518532B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10209959B2 (en) * 2016-11-03 2019-02-19 Samsung Electronics Co., Ltd. High radix 16 square root estimate

Also Published As

Publication number Publication date
JPH0793135A (ja) 1995-04-07

Similar Documents

Publication Publication Date Title
JP2622896B2 (ja) 除算装置
Kenney et al. High-speed multioperand decimal adders
EP0424086B1 (en) Arithmetic processing apparatus and method used thereby
JP2002108606A (ja) スティッキービット生成回路及び乗算器
JPH0635680A (ja) 対数を計算するディジタル回路及びコンピュータシステムを動作させる方法
US5023827A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
US5132925A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
JPH0969040A (ja) 推測的演算を有する3つのオーバーラップしたステージにより基数2の平方根演算/除算を行う回路
KR20020063058A (ko) 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
US6847986B2 (en) Divider
US5177703A (en) Division circuit using higher radices
JP4273071B2 (ja) 除算・開平演算器
CN108334304B (zh) 数字递归除法
US20230086090A1 (en) Methods and Apparatus for Quotient Digit Recoding in a High-Performance Arithmetic Unit
JPH0687218B2 (ja) 浮動小数点数演算処理装置及び除数倍数生成装置
JP2857505B2 (ja) 除算装置
JP2518532B2 (ja) 減算シフト型除算器
Takagi et al. A VLSI algorithm for computing the Euclidean norm of a 3D vector
Prasanna et al. An Efficient Fused Floating-Point Dot Product Unit Using Vedic Mathematics
Vázquez et al. Radix-10 restoring square root for 6-input LUTs programmable devices
JP3517162B2 (ja) 除算・開平演算装置
JPH0831024B2 (ja) 演算プロセッサ
JP3514566B2 (ja) 除算/開平回路
JP2790327B2 (ja) 剰余乗算回路および剰余乗算方法
KR20010067226A (ko) 인터폴레이션 방법 및 장치

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960326

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

Free format text: PAYMENT UNTIL: 20090517

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20100517

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20110517

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20110517

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20120517

Year of fee payment: 16

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

Free format text: PAYMENT UNTIL: 20120517

Year of fee payment: 16

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

Free format text: PAYMENT UNTIL: 20130517

Year of fee payment: 17

LAPS Cancellation because of no payment of annual fees