JPH04232529A - 多重ディジット10進数を2進数に変換する装置および統一された比復号器 - Google Patents

多重ディジット10進数を2進数に変換する装置および統一された比復号器

Info

Publication number
JPH04232529A
JPH04232529A JP3109806A JP10980691A JPH04232529A JP H04232529 A JPH04232529 A JP H04232529A JP 3109806 A JP3109806 A JP 3109806A JP 10980691 A JP10980691 A JP 10980691A JP H04232529 A JPH04232529 A JP H04232529A
Authority
JP
Japan
Prior art keywords
partial
decoder
divisor
dividend
determining
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.)
Granted
Application number
JP3109806A
Other languages
English (en)
Other versions
JPH0823814B2 (ja
Inventor
Klaus K Maass
クラウス、カール、マース
David Tjeng-Ming Shen
デイビッド、ジェン‐ミン、シェン
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH04232529A publication Critical patent/JPH04232529A/ja
Publication of JPH0823814B2 publication Critical patent/JPH0823814B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/491Computations with decimal numbers radix 12 or 20.
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • G06F7/537Reduction of the number of iteration steps or stages, e.g. using the Sweeny-Robertson-Tocher [SRT] algorithm
    • G06F7/5375Non restoring calculation, where each digit is either negative, zero or positive, e.g. SRT
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word
    • H03M7/12Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word having two radices, e.g. binary-coded-decimal code
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02BINTERNAL-COMBUSTION PISTON ENGINES; COMBUSTION ENGINES IN GENERAL
    • F02B75/00Other engines
    • F02B75/02Engines characterised by their cycles, e.g. six-stroke
    • F02B2075/022Engines characterised by their cycles, e.g. six-stroke having less than six strokes per cycle
    • F02B2075/027Engines characterised by their cycles, e.g. six-stroke having less than six strokes per cycle four

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明は2進法の除算に関し、よ
り詳細には、除数の倍数を複数個用いて減算を繰り返す
ことにより実行される方式の2進法の除算に関する。 【0002】 【従来技術】ディジタル・コンピュータで行なわれてい
るように、2進法の除算は、部分被除数から除数の倍数
の減算を繰り返すことにより従来実行されていた。こう
した方式で除算を実行することで、各減算毎に商の倍数
ビットがつくられるので、除算中を通してかなりの数の
マシン・サイクルを節約できる。通常の除算の繰り返し
は、次のように行なわれる。 Rn=PDn−Mn*D ただし、Rnは、繰返しステップnが終わったときの余
りを表し、PDnは繰返しステップnが始まるときの部
分被除数を表し、Dは除数(1/2≦D≦1)を表し、
Mnは繰り返しステップnで使用される除数倍数を表す
  (記号「*」は乗算を示す)。 【0003】2ビットの除算では、PDn+1=4*R
n(2ビットが左に桁送りされる)となる。Mnが値−
2、−1、0、+1、+2に制限される場合、以下のよ
うになる。|Rn/D|≦2/3  又は  |PDn
/D−Mn|≦2/3したがって、PDn/Dの比が分
かれば、除数倍数Mnは表1により定められる。 【0004】 表1                   Xn=PDn/
D                Mn      
                         
                         
                         
 4/3 ≦Xn≦8/3             
    2                   1
/3 ≦Xn≦5/3               
  1                  −2/3
 ≦Xn≦2/3                 
0                  −5/3 ≦
Xn≦−1/3               −1 
                 −8/3 ≦Xn
≦−4/3               −2    さらに、Qnは次の表2により定められる。 【0005】 表2                 Mn    Qn(
Rn≧0)    Qn(Rn<0)        
                         
                         
                  2      
 2                   1   
              1       1  
                 0       
          0       0      
             3           
     −1       3          
         2               
 −2       2              
     1  【0006】上記のように、通常の除算は2つの連続す
る演算を含む、すなわち、(1)PDn/DからMnを
定める演算と、(2)Rn=PDn−Mn*DによりR
nを定める演算、である。従来の技術には、Mn+1は
Rnと平行して生成できることが示してある。したがっ
て、繰り返しの時間はRnを生成することにより制限さ
れる。従来は、MnはPDnとDをの復号器(負のPD
n値のための1つの復号器と正のPDn値のための別の
復号器)に供給し、ルック・アップ・テーブルを使用し
てMnを決定することにより定められていた。Mnを定
めるためには、PDnとDの高位ビットだけが必要とな
る。PDn=4Rn−1=4(PDn−1−Mn−1*
D)より、PDnの高位ビット(PDn´で示される)
は、PDn−1とMn−1*Dのより高位のビットから
PDnに平行して生成できる。そのように生成されたP
Dn´はより下位ビットからの桁上げを無視する。この
誤差は、倍数の間の重複した領域の倍数境界を選択する
ことにより補償できる。   PDn−1=4Rn−2=4(PDn−2−Mn−
2*D)なので、  PDn=4Rn−1=4(PDn
−1−Mn−1*D)=4[4(PDn−2−Mn−2
*D)−Mn−1*D]  となる。したがって、PD
nの高位ビット(PDn)とMnはPDn−2、Mn−
2、Mn−1から決定できる。 【0007】商のビットQn(1繰返しステップ当たり
2ビット)は以下の関係により決定できる。すなわち、
Cn=1の場合、Qn=Mn、Cn=0の場合、Qn=
Mn−1 ただし、Cnは剰余(Rn)の符号を示す桁送りビット
である。非復元除算を実行するとともに上記の原理を具
体化する装置の1例を図1に示す。図1は固定小数点2
進除算装置100を示す。データ位置はn番目の繰返し
ステップの開始を示す。前の繰返しステップn−1の剰
余は桁上げ伝播加算器104の剰余ラッチ102にラッ
チされる。(剰余の終わりからの)最後の桁上げは商生
成器106により使用されて、Qn−1を生成する。と
いうのは、Qn−1=Mn−1−Cn−1が成り立つか
らである。ここで、Cn−1は最後の桁上げを表す。C
n−1はRn−1の符号を示し(負ならば1で、正なら
ば0である)桁上げ伝播加算器104からの桁上げ出力
を数えることにより生成される。これはQn−1=Mn
−1−1の場合を含む。Mn−1は倍数ラッチ108で
2の補数の形により表される。商生成器106は2ビッ
ト・ダウン・カウンタと2進トリガーを含む。 【0008】最後の剰余Rn−1は、2ビット配線左桁
送り110により桁上げ伝播加算器104で折り返して
PDnになる。Mn*Dは、倍数ゲート112から桁上
げ伝播加算器104の他の側に送られる。倍数ゲートは
、倍数選択線116により選択されたように除数レジス
タ114から真数または補数形式で1Xまたは2X除数
倍数を形成する。倍数選択線は、2の補数の除数が選択
されると加算器への特別桁上げ(新しい桁上げ)を生成
する。最後の剰余(2ビット左に桁送りされたもの)も
比復号器加算器118に送られる。比復号器加算器11
8は、その高位ビットを、Mn*Dの高位ビットに沿っ
てRnの高位ビットに還元する。Rnの高位ビットは2
ビット左に桁送りされて、PDn+1となり、2つの比
復号器120、122に送られる。比復号器120、1
22はそれぞれ、PDn+1と除数Dの比から正と負の
Mn+1を選択する。倍数復号器加算器はPDn+1の
符号を選択し、その符号は、倍数ラッチ・ドライバ12
4から反対の符号のMn+1を選択するのに使用される
。選択されたMn+1は商倍数ラッチ108にラッチに
されて次の繰返しステップを待つ。 【0009】図1の除算器では、Rn−1の符号が2進
トリガーにより桁上げ伝播加算器の桁上げ数をカウント
することによりつくられ、PDn+1の符号は、復号器
加算器118の桁上げを待つことによりつくられる。と
もかく、どちらの方法でも加算器による決定を使用する
。初期被除数は図4には示されてない。初期被除数の通
常のハードウェア上の保管位置は商レジスタ126(時
分割法により)である。上記に説明したように、正の比
復号器120と負の比復号器122の2つの比復号器が
備えてある。これら2つの個別の復号器が備えてあるの
は、正と負の領域が完全に対称的なわけではないからで
ある。すなわち、所与の除数では、部分被除数PDnが
正であれば、Mnの適切な値は、部分被除数PDnが同
じ大きさであるが負である場合と必ずしも同じではない
ということである。この原理は図2と図3に示してある
。各図とも横軸は16番目までの部分被除数値、縦軸は
16番目までの除数値が示してある。図2は正の部分被
除数を示し、図3は負の部分被除数を示す。両図とも、
「境界線」と呼ばれる4つの斜の線がある。境界線20
2−216は、Mnを復号するときに使用され表1から
取りだされるPDn/Dの4つの可能な比を表す。 2/3と5/3境界の近くに位置する折れ線218、2
20は、その大きさが正確な比率以下である最も近い整
数の比を表している。復号器加算器118では、PDと
Dがビット位置重み64に表されており(したがって、
復号器として利用できるPDn+1の下位ビットは16
個の重みをもつ)。すなわち、図面の各矩形は、比復号
器により確認できるPDn+1とDの間の使用可能な比
を表す。 【0010】整数の境界により区切られている正と負の
領域は対称的ではない。負の領域は、部分被除数の1の
補数の形をしめすので1ビット分離れている。しかし、
2つの倍数が重複している境界領域は正と負の領域で等
しい。正の部分被除数の図では、各矩形の左上の角の点
はPDn+1とDのビット・パターンを表すが、その特
定のPDn+1対Dの正確な比は、矩形内またはその上
方または左の境界の任意の点により表される。 【0011】PDn/Dの値に対する倍数の範囲は重複
しているので(図2参照)、特定の倍数の復号境界は柔
軟性をもって選ぶことができる。しかし、復号器加算器
118でPDnの最下位ビット位置への桁上げを無視す
ることにより発生するエラーのためこの柔軟性の多くが
失われてしまう。例えば、倍数ゼロ用の正の復号器12
0は、左側の矩形により表されて境界の1/3により切
り取られている場所のPDnとDのすべてのビット・パ
ターン上で選択しなければならない。これらの矩形の左
端のものを通して引かれる線は1/3整数境界と呼ばれ
る。Mn=0とMn=1の選択範囲は重複しているので
、Mn=0用の復号器は、1/3および2/3境界間の
任意の矩形上で選択を行なうことになる。桁上げエラー
によりPDnが1ビット分低くなるので、倍数ゼロ復号
器は、2/3整数境界のちょうど左側にある境界では選
択してはならない。破線は、ビット・パターンがMn=
1を選択するよう復号される矩形の左端を表す。上方の
範囲にある残りの矩形はMn=2を選択するように復号
される。負の比復号器122(負の部分被除数の復号器
)も同様な方法で誘導される。この場合の切捨ておよび
桁上げエラーはゼロ部分被除数に向けられているので、
各矩形の左上の角の点は復号器がとらえるビット・パタ
ーンを表す。破線はMn=−1に対して選択された矩形
の左端を表す。Mn=0線はMn=−1の右端を暗示す
るために示してある。比復号器120、122と図2,
図3の表に於て、変数は除数=0、1xyzと部分被除
数=ab.cdefとして定義されている。 【0012】 【発明が解決しようとする課題】図1の除算器は、非復
元型の2進法の除算方法を実行するすぐれた機構を示し
ていたが、改良すべき点も多く備えている。たとえば、
正と負の部分被除数領域用にそれぞれの復号器を備えて
いるので、集積回路の面積を効率よく使えない。さらに
、こうした復号器を含むと、除算の速度が技術的に制約
される結果となることを示す例もある。 【0013】 【課題を解決するための手段】本発明の発明者は、極め
て少数の例外を除いて正と負の領域が対称になるように
倍数境界を選択できることを発見した。こうした境界を
利用すると、ほぼ対称的で、統一された比復号器が、従
来の比復号器の対が集積回路に占める面積のわずか約1
/2で構成できた。比復号器加算器からの符号ビットを
復号することにより、比復号器は例外的な領域を認識で
き、したがってそれらの領域も処理できる。 【0014】 【実施例】本明細書で記載されるのは、A)極めて少数
の例外を除いて正と負の領域におけるすべての部分を対
称的にカバーするほぼ対称的な比復号器、B)対称的な
比復号器を用いた改良型除算器、C)実行時間を半分に
減らす共通データ経路を用いた除算および2進値変換回
路、D)桁上げ記憶加算器および桁上げ伝播加算器を用
いた実行時間短縮2進値変換回路である。 【0015】A)2進値の除算の対称型比復号器本項は
、極めて少数の例外を除いて正と負の領域におけるすべ
ての部分を対称的にカバーするほぼ対称的な比復号器を
記載する。この対称型比復号器を使用することにより、
正負それぞれの復号器は不必要になり、集積回路のかな
りの面積が復号器と2進除算器に割けるようになる。図
4は、対称型比復号器を持つ2進除算器を示す。 図1の除算器のように、本除算器は、除数レジスタ11
4、倍数ゲート112、桁上げ伝播加算器14、剰余ラ
ッチ102、2ビット配線左桁送り110(Rn−1か
らPDnを形成)、比復号器加算器118、および商レ
ジスタ126を含む。これらの構成要素は図1に記載さ
れた同じ番号の構成要素と同様に動作する。図4の装置
は、クロック・サイクルnの開始点で、初期剰余Rn−
1が剰余ラッチ102にあり、初期桁出しと倍数(CR
Yn−1とMn−1)は倍数ラッチ308に記憶されて
いる。実際の起動は、図8と図9の実施例に関連して後
により詳細に説明される。 【0016】図1の2進除算器とは対照的に、本除算器
には、正と負の比復号器120、122と倍数ラッチ・
ドライバ124が除いてある。代わりに、比復号器加算
器から6つの下位ビットが排他的論理和ゲート302に
送られる。ここで、それらの6ビットはそれぞれ、比復
号器加算器118からの最上位ビット(ビット0)と論
理和が取られる。この方式で、比復号加算器118から
の和S´の6つの下位ビットは、最上位ビットがゼロ(
正の剰余)のとき比復号器304に真数の形で、最上位
ビットが1(負の剰余)のとき1の補数の形で供給され
る。この仕様の剰余において、任意の比復号器加算器か
ら送られる結果の最上位ビット(MSB)はsumbi
t0 と呼ばれる。排他的論理和ゲートの出力(S´の
下位の6つのビットまたはその1の補数)を受け取ると
ともに、対称型比復号器304は、比復号器加算器11
8から除数Dとsumbit0 を受け取る。当然のこ
とながら、図4の対称型比復号器304は単に図1の正
と負の復号器120、122の組合せを示すものではな
い。こうした組合せは、正と負の領域復号論理を1つの
大きな復号器に組み込み、比復号器加算器から最上位ビ
ットを復号を付け加えさえすれば達成できるが、これだ
けでは、回路と集積回路上の面積の節約という目的を達
成したことにならない。 【0017】図4の対称復号器の利点は、倍数領域を適
切に選択することにより画定された1つの組合せ領域を
使用して、正と負の部分被除数値を処理することである
。比復号器加算器からの最上位ビットを1の補数である
負部分被除数として使用することにより、対称型比復号
器304は、それらが正であるかのようにすべての部分
被除数を復号して、比復号器加算器からの最上位ビット
を使用して、あいまいなケースを解消する。桁上げ伝播
加算器104からの桁出しは、Mn*Dの結果を除数に
加算するか除数から減算するかを選択するために使用さ
れる(すなわち、桁上げなし=加算、桁上げ=減算)。 図4の対称型比復号器の動作は、図5を参照するとより
よく理解できる。図5は正と負の比両方の組合せ復号図
である。図5において、4つの傾斜線402−408は
それぞれ、Mn=0ないしMn=2の領域の整数境界を
表す。倍数値は短縮形で指示されている、すなわち、M
n=0はM0で示され、Mn=1はM1で示され、Mn
=2はM2で示される。2つの折れ線410、412は
、適切な対称性を達成するために発明者が選択した境界
を表す。特に、第1折れ線410は、Mn=0とMn=
1の間の選択された境界を示す。同様に、第2折れ線4
12は、Mn=1とMn=2の間の選択された境界を示
す。 【0018】図5に示すように境界領域を選択すること
により、本発明者は、わずか5つのあいまいな復号比が
あるように組合せ復号図を構成した(2つはMn=1領
域で、3つはMn=2領域)。これらのあいまいな比(
参照番号414ないし422で示される)は復号器30
4により認識され、比復号器加算器の出力端からの最上
位ビット(sumbit0 )を参照することにより適
切に処理される。特に、Mn−1領域中の部分414、
416の2つは、それらが1の補数化(sumbit=
1)により正になった部分被除数である場合に限りMn
=0と復号する。そうでない場合、これらの部分414
、416はMn=1と復号する。さらに、Mn=1領域
の3つの部分418、420、422は、それらが、1
の補数化されてない部分被除数である場合に限り(su
mbit0=0 )Mn=0と復号する。そうでない場
合、これら3つの部分はMn=1と復号する。 【0019】例として、比復号器加算器118(図4)
は部分被除数04(2進数00000100)から部分
除数8(Mn−1=1、D=00001000(2進数
))を減算したと仮定する。比復号器118は、以下に
示すように部分除数の1の補数を部分被除数に加算する
ことにより減算を実行することになる。 その結果の6つの下位ビットが排他的論理和ゲート30
2に送られて、そこで、各ビットは比復号器加算器から
のビット0と排他的論理和が取られる。この場合、su
mbit0 は1となるので、その結果は1の補数とな
り、00000100として復号器に送られる。 【0020】図5を参照すると、部分除数が1000で
あり部分被除数の6つの下位ビット(abcdef)が
000100である場合、次の繰返しステップでの倍数
Mnは1または0となることが分かる。比復号器加算器
118の出力からsumbit0 に目を向けると、比
復号器は、部分被除数が1の補数を取ることにより正に
なると設定してある。すなわち、値Mn=0は復号の結
果として出力される。ビット1は、2つ左に移送された
結果(SL2)が復号器304により入力されるために
、不必要になる。 【0021】図6は、図4の加算器と排他的論理和部分
の実施例のより詳細な図である。図6に示すように、8
ビット加算器が比復号器加算器118として使用され、
ビット1が比復号器に送られず、ビット2ないし7がそ
れぞれsumbit0 と排他的論理和が取られて、そ
の後で、比復号器に送られる。図7は、部分剰余(排他
的論理和ゲートの出力)がabcdefの形式であり除
数が1xyzの形式である比復号器304に具体化され
た論理式を示す。sumbit0=0 は正の和を示す
が、sumbit0=1 は負の符号を示す。 【0022】図4の実施例の動作がより詳細に記載され
る。クロック・サイクルnの開始端で、初期剰余Rn−
1が剰余ラッチ102に保持され、初期繰り上げ出力C
RYn−1と倍数Mn−1が倍数ラッチ308に保持さ
れる。この例には、34ビットの初期剰余と32ビット
の除数も採用できる。サイクルnの初めには、除数D(
除数レジスタ114から)は倍数ゲート312に送られ
る。倍数ゲート112は、倍数選択線316により選択
されたように1Xまたは2X除数倍数を真数または補数
の形で形成する。倍数選択線316は前のサイクルの倍
数Mn−1と桁上げ出力CRYn−1を桁上げする。1
(CRYn−1=1)の桁上げ出力により、倍数ゲート
112はMn−1*Dの1の補数を出力する。桁上げが
ない場合(CRYn−1=0)、倍数ゲート112は真
数の形式でMn−1*Dを出力する。Mn−1*D(倍
数ゲート112から出力され、真数または補数形式)は
平行に桁上げ伝播加算器104と比復号器加算器118
に供給される。桁上げ伝播加算器104は部分被除数P
Dnと倍数ゲートから出力されたMn−1*D値の和を
とる。CRYn−1(倍数選択線上)は、補数化された
除数の倍数が選択されると(CRYn−1=1)新たに
1を生成して、桁上げ伝播加算器104に送る。 その結果現われた剰余Rnは剰余ラッチ102にラッチ
される。図4に示してあるように、部分被除数PDnは
2ビット位置分左にRn−1を桁移動することにより形
成される。 【0023】桁上げ伝播加算器104に平行して、比復
号器加算器は、部分被除数PDnの下位8ビットと倍数
ゲートから出力されたMn−1*D値の和をとる。その
和の最上位ビット(ビット0)は排他的論理和ゲート3
02と上記のように倍数値Mnを作成するよう動作する
対称型比復号器304に入力される。そうしで生成され
たMn値は、桁上げ伝播加算器104からの桁上げ出力
CRYnとともに、倍数ラッチ308に記憶される。こ
のMn値、桁上げ出力CRYn、および(比復号器加算
器からの)sumbit0は商生成器306に送られる
。図1の商生成器106のように、図4の商生成器30
6は、桁上げ伝播加算器104からの桁上げ出力CRY
nを使用して、復号された倍数Mnから商のビットを判
断する。しかし、図4の装置では、対称型比復号器30
4は、復号された倍数の絶対値だけを供給する。したが
って、たとえば、比復号器加算器からの結果が負で、復
号された倍数がM1である場合、比復号器はMn=1(
2進数01)を出力することになるが、実さいには、適
切な倍数はMn=−1(2進数11)である。 【0024】復号倍数が絶対値の形で供給されることを
補うために、比復号器加算器からのsumbit0 は
商生成器306に供給される。sumbit0=1 は
復号された倍数の実際の符号を示すので(sumbit
0=1は負の倍数を、sumbit0=0 は正の倍数
を示す)、商生成器はこのビットを使用して、適切な符
号を反映するように復号された倍数値を調整する。これ
は、sumbit0=1 のときに復号された倍数を2
の補数化することにより容易に実現できる。桁上げ伝播
加算器104からの桁上げ出力CRYnは、商生成器に
より生成された商は倍数Mnまたは倍数マイナス1(M
n−1)に等しいかどうかを決定する。桁上げ出力が1
に等しい場合は、商QnはQn=(Mn−1)となる。 桁上げ出力CRYnが0(桁上げなし)に等しい場合、
Qn=Mnとなる。1度決定されると、商(2ビット)
は商レジスタ126に蓄えられる。商レジスタ126は
最下位の2ビットで充足する。当然のことながら、上記
の原理は、復号当たり3ビット以上を生成する対称型比
復号器を考案するのにも使用できる。こうした実施例で
は、倍数領域の数は、復号器が消化できるビット数が増
えるにつれて増加する。 【0025】B)対称型比復号器を用いた改良型除算器
図7の方程式により定義された対称型比復号器は、各繰
返しステップで4ビットの商を回収できる改良型除算回
路で使用できることが利点である。このような回路が図
8及び9に示されている。図8及び9の装置の動作は、
32ビット除数が正になり001XX...X.の形に
正規化される起動段階を取り入れている。除数レジスタ
(W−REG)702は正規化された除数を保持する。 上位ビット・オーバーフロー・トリガー704は、除数
が1を右に桁移送することにより正規化された場合に元
の除数の最下位ビット(ビット31)を保持する。たと
えば、元の除数は01XX...01である場合、1の
右への移送が実行されて001XX...Xの形に正規
化されて、オーバーフロー・トリガーが1に設定される
。追加部分である起動段階では、64ビットの固定小数
点被除数が正になり正規化される(すなわち、除数と同
じ量で同じ方向に桁移送される)。被除数の高位の32
ビットは、高位被除数レジスタ(H−REG)706に
保持される。被除数の下位の32ビットは、下位被除数
レジスタ(L−REG)710に保持される。H−RE
GとL−REGはそれぞれ2つのオーバーフロー・トリ
ガー708、712を含む。L−REGのオーバーフロ
ー・トリガー712は、起動段階で除数が最高の負の数
であり2ビット右に桁移送が必要なとき、または除数が
01XX...Xの形の正の数であり1ビット右に桁移
送が必要なときに使用される。H−REGのオーバーフ
ロー・トリガー708は、CPA2  728からの下
位の2ビットを保持するのに使用されるので、H−RE
G706、708は34ビット・レジスタとして機能す
る。 【0026】1度初期化されると、図8及び9の装置は
、繰返しステップ毎に4ビット(2つのビット対)の割
合で商の生成を始める。初期の商の対は第1商生成器(
Qn−GEN)714により生成される。初期の商の対
を生成するために、倍数Mnは、第1対称型比復号器7
16でH−REGビット2−7とW−REGビット3−
5から復号される。倍数ゲート717の第1の組合せは
、Mn復号器716により供給されたMnの値に応じて
、2の補数化除数、左に1桁移送された2の補数化除数
(SL1)、またはゼロの2の補数のうち任意のものを
第1の34ビットCPA(CPA1)718に供給する
。次いで、第1の34ビットCPAはそのように供給さ
れた値を左に2桁移送された正規化された被除数(SL
2)に加える。  Mnと34ビット桁上げ伝播加算器
718の動作の間の特定の関係は、以下の表3に示され
る。表3 Mn    32ビットCPA1の動作       
                         
0      0の2の補数を減算する(CPA1’7
18からの桁上げ出力CRYnを取り出す) 1      除数を減算する 2      左に1桁移送された除数を減算する 【0027】当然のことであるが、動作サイクル中に、
第1のサイクル以外に、倍数ゲート717、725も、
桁上げCRYn+1=0のときに補数化除数または補数
化除数SL1を供給する。しかし、減算は第1サイクル
で行なわれなければならないので、桁上げが開始される
(第1サイクルのみで)。すなわち、この要因は表3で
は考慮されない。CPA1  718からの桁上げ出力
(CRYn)と8ビット桁上げ伝播加算器(CPA2’
)720からの結果(sumbit0 )の最上位ビッ
トは、商生成器714で使用され、復号された倍数から
商の最初の2ビットを決定する。図4の実施例に関連し
て説明すると、sumbit0 は、倍数の実際の符号
を示す(倍数は、対称型比復号器により絶対値の形での
み供給される)。 【0028】商の最初の2ビットを決定するために、s
umbit0 は0に設定される。これは、CPA2’
720がこれらのビットの決定に役割を果たさないこと
と正規化された被除数が最初に正になることから第1倍
数Mnが常に正になることのためである。その後のサイ
クルでは、sumbit0 は8ビット加算器720か
らMn+2復号器/ラッチ730にラッチされて、第1
商生成器714に送り返される。第1商生成器714に
よる商ビットの生成は以下の表4に示される。 【0029】表4 条件:CRYn=1(桁上げ出力)とsumbit0=
0 条件:CRYn=0(桁上げ出力なし)とsumbit
0=0 条件:CRYn=1とsumbit0=1条件:CRY
n=0とsumbit0=1【0030】CPA1  
718の動作に平行して、8ビット桁上げ伝播加算器(
CPA1’)724は、SL2から被除数の高位の8ビ
ットを減算する。この減算は、(W−REG702から
の)除数の高位の8ビットの1の補数またはSL1の1
の補数をSL2に加えることにより実施される。再び、
加算器720に供給する適切な値が、第2の倍数ゲート
組合せ725に選択入力を供給するMn復号器716に
より選択される。CPA1’724からのビット2ない
し7は適切な部分被除数PD´を表す。sumbit0
 は、CPA1’の最上位ビットであり、の結果の符号
を表す。 【0031】CPA1’724からのsumbit0 
は、CPA1’724からの出力されたビット2ないし
7と排他的論理和(XORゲート722において)が取
られる。 図6で説明されたように、XORゲートは、これらのビ
ットが真数形式または1の補数形式で復号器に送られる
かどうかを決定する。sumbit0=1 は、第1の
8ビットCPA724からのビット2ないし7が、第2
の倍数復号器(Mn+1復号器)726により使用され
る前に補数化されたビットでなければならないことを示
している。 CPA1’724のsumbit0=0 は、ビット2
ないし7がMn+1復号器726により使用されている
時に使用できることを示す。除数の高位3ないし5ビッ
トもW−REG702(PD´/D´、ただしD´は部
分除数である)からの倍数復号器724にも供給される
。Mn+1復号器726により生成された倍数とCPA
1  718(CRYn)からの桁上げ出力が、第3の
倍数ゲート727の組合せに入力され、そこで、それら
は、真数、SL1真数、除数の2の補数、またはSL1
除数の2の補数の任意のものを選択して、CPA2  
728に送られる。CPA2  728は、CPA1 
 718から出力されたSL2剰余に上記のように供給
された値を加算する。 【0032】CPA2の動作は以下の表5に記載されて
いる。 表5 Mn          CRYn         
   32ビットCPA2の動作          
                         
                         
Mn=0      CRYn=1        P
D+0の2の補数(強制桁上げ)Mn=0      
CRYn=0        PD+0Mn=1   
   CRYn=1        PD+除数の2の
補数Mn=1      CRYn=0       
 PD+除数Mn=2      CRYn=1   
     PD+SL1除数の2の補数Mn=2   
   CRYn=0        PD+SL1除数
(CRYn=1は桁上げを示し、CRYn=0は桁上げ
なしを示す。) 【0033】Mn+1復号器726により生成された倍
数も、第2商生成器(Qn+1GEN)723において
34ビットCPA2  728からのCRYn+1と組
み合わされる。この第2商生成器723は、以前記載さ
れた規則により第2の商の対を生成する。L−REG7
10、712の内容は、左に4桁移送されて    (
SL4)、4つの商ビットはレジスタの空の低位4ビッ
ト部分にロードされる。CPA2  728からの34
ビット剰余は、H−REG706、708に供給され、
次のサイクルで使用される。CPA2  728の動作
と平行して、CPA2’720は、CPA1  718
からの剰余SL2の高位8ビットをとり、Mn+1復号
器726により生成された倍数にしたがって、W−RE
G  702の真数、SL1真数または補数、またはS
L1補数の高位8ビットを加える。ふたたび、Mn+1
復号器726により選択された倍数は、倍数ゲート72
9の第4の組合せによりCPA2’720に供給される
。 【0034】CPA2’720からのsumbit2な
いし7は、適切な部分被除数PD’を表し、sumbi
t0 は符号ビットを表す。図6に関連して記載された
ように、排他的論理和ゲートの第2の組合せ732はs
umbit0 を使用して、Mn+2復号器からの倍数
が絶対値の形でのみ供給されることを補正する。再び、
8ビットCPA2’720からのsumbit0=1 
は、CPA2’720からのビット2ないし7が、第3
の倍数復号器730(Mn+2復号器)により使用され
る前に1の補数化される必要がある。CPA2’720
からのsumbit0=0 は、CPA2’720から
のビット2ないし7は、それらがMn+2復号器730
により使用されるときに使用できる。(W−REG70
2からの)除数もMn+2復号器730に供給されて、
その除数から次の倍数を生成できるようになる。 【0035】Mn+2復号器730により生成された倍
数、CPA2’730からのsumbit0 、CPA
2  728からの桁上げ出力(CRYn+1)は、M
n+2復号器ラッチ731においてラッチされて、次の
サイクルで使用できる。Mn+2復号器730でラッチ
された倍数とラッチされたCRYn+1は、次の除算繰
返しステップのために、真数の除数、SL1真数の除数
、2の補数の除数、またはSL1の2の補数の除数のど
れかを、H−REG706、708からのSL2除数に
加算するかを決定する。次の除算繰返しステップと以後
の繰返しサイクルにおける第1の商の対は、ラッチされ
た倍数、ラッチされたsumbit0 (Mn+2復号
器ラッチ731によりラッチされている)およびCPA
1  718の桁上げ出力CRYnから決定される。商
ビットをL−REG  710、712の空の部分にロ
ードする代わりに、商は別の商レジスタにロードできる
。従来そうであるように、商を保持するレジスタは、固
定小数点除算の例外を検出する論理を備えることができ
る。それらの例外は割込みによりシステムに報告される
。 【0036】C)実行時間を半減する共通データ経路を
使用する除算および2進数変換回路 図8及び9の2つの空の34ビット加算器718、72
8は、2進数変換(CVB)回路と共有できることが利
点である。除算とCVB命令用の共通データ経路を使用
することにより、かなりの量のチップ論理とチップ面積
が節約できる。さらに、チップの交点の数も、それぞれ
の時間の損失とともに、減少させることができる。さら
に有利なことは、2つの空の加算器の使用によりCVB
の実行時間を半分に削減でき(16サイクルから8サイ
クルに)、除算の実行時間も削減できる(28から13
サイクルに)。2進数への変換命令は、図10を参照し
て説明される。この変換命令とは、2進形で表された1
0進ディジットを2進数に変換する命令である。たとえ
ば、16のディジット(15のディジットは数を表し、
1つは数の符号を表す)で表された10進数は32ビッ
ト2進ワードに変換できる。10進ディジットのダブル
・ワードの高位32ビット・ワード802は、汎用レジ
スタからのCVB回路に供給される。高位32ビット・
ワード802において、8つの10進ディジットはそれ
ぞれ4ビットで表される。低位の32ビット・ワード(
図示せず)では、7つの10進ディジットはそれぞれ4
ビットであらわされ、低位の4ビットは10進数の符号
を表す。図10に示すように、高位32ビット・ワード
のビット0−3により定義された高位10進ディジット
(A)が第1復号器804により復号され、その復号結
果はCPA1  718に送られる。第2復号器806
は、高位32ビット・ワードのビット4−7により定義
された第2の10進ディジット(B)を復号して、その
復号結果をCPA2  728に送り(CPA1  7
18からの出力のSL1とSL3により空になった位置
に送られる)。CPA2からの出力は、第1の2つの変
換10進ディジットの2進数であり、W−REG  7
02にラッチされる。 【0037】次に、1つ(SL1)左に桁送りされたW
−REG  702の内容と3つ(SL3)左に桁送り
されたW−REG702の内容をCPA1に送り、次の
10進ディジットの復号結果を各桁上げ伝播加算器の空
のビット位置に加算する。変換された数のSL1および
SL3加算により10の乗算が行なわれたことになる。 各10進ディジットの最上位ビット(ビット0)は、対
応する桁上げ伝播加算器718、728の左側に直接ゲ
ートされる(すなわち、CPA1  718は10進デ
ィジットAのビットA0を受け取り、CPA2は10進
ディジットBのビットB0を受け取る)。復号器804
、806は、4つのオリジナル・ビットから各ディジッ
トの残りの3つのビットを作成し、それらを対応する桁
上げ伝播加算器の右側にゲートする。10進ディジット
が「8」(1000  2進法)の場合、復号器はビッ
ト1−3(たとえば、A1−A3またはB1−B3)に
対して「111」を出力する。10進ディジットが「9
」(1001  2進法)の場合、復号器はビット1−
3に対して「111」を出力し、新しい1を対応する桁
上げ伝播加算器に追加する。他の10進数(0000な
いし0111、2進法)の下位の3ビットは、元の形の
まま復号器から桁上げ伝播加算器にゲートされる。 【0038】ダブル・ワードの最下位10進ディジット
(LSD)は、10進数の符号を示す。負の数は16進
ディジット値BまたはDにより示される。16進ディジ
ット値A、C、EまたはFは正の数を示す。最下位ディ
ジットが10(16進数)よりも小さいと例外データを
合図するような回路構成も追加できる。負の数(LSD
=BまたはD)では、CPA1からの結果が2の補数の
形でCPA2に供給される。10進数が正であると(L
SD=A、C、EまたはF)、CPA1の結果は補数の
形でCPA2に供給される。上記の実施例では、LSD
以外の10進ディジットは決して10以上にはならない
ことが理解されるであろう。この状態が発生すると(す
なわち、LSD以外のディジットが10以上である)例
外データを合図するような回路構成も追加できる。2つ
のカスケード式の桁上げ伝播加算器を使用すると、1サ
イクル当たり2つの10進ディジットの変換が可能にな
る(16ディジットで表された1つの10進数に対して
8サイクルづつ利用できる)。 【0039】D)実行時間短縮2進変換回路CVB動作
の実行時間を4サイクルに減少する2進変換回路の他の
実施例を図11に示す。図10の回路と同様、図11の
回路は15ディジット+1符号ディジットからなる10
進数を2進形式に変換し、左から右に(最上位から最下
位へ)10進ディジットを検査する。図11の装置は第
1桁上げ保管加算器902と第1桁上げ伝播加算器90
4によりダブル・ワードの10進ディジットの第1の対
を変換し、第2CSA/CPA対906、908により
ダブル・ワードの10進ディジットの第2対を変換し、
その後変換された数はレジスタ(W−REG)910に
ラッチされる。図11では、4(2つの対)で1グルー
プのそれぞれで10進ディジットが文字AないしDによ
り表される。図10のW−REG  702と同様に、
W−REG  910は32ビット・レジスタである。 図11では、W−REG  910の32ビットはW0
−W31(W0は最上位ビット)により示される。同時
に4つの10進ディジットの正確なビットにアクセスす
るとともに正確な新しい1の値に(HA−HD)にアク
セスするために、図11の回路は、図10の実施例の復
号器804、806と同様に動作する4つの復号器91
2−918を使用する。 【0040】桁上げ保管加算器902、906はそれぞ
れ、4つの4−2CSA(920−926と932−9
38)と28の3−2CSA(参照番号928、930
、940、942により示された形式)を含む。4−2
CSAは、以下に示す最初の4つの列の加算を処理する
。3−2CSAは、残りの列の加算を処理する。4−2
CSAと単一レベルCSAトリーの例は「4−2桁上げ
保管加算器モジュール」IBMテクニカル・ディスクロ
ージャ・ブルテンVol.23,No.8、1989年
1月、pp.3811−3814(IBM Techn
ical Disclosure Bulletin 
Vol.23, No.8, January 198
9, pp.3811−3814, entitled
 ”4−2 Carry−Save Adder Mo
dule”)に示してある。この論文は参考のために本
明細書に組み込まれている。 【0041】2進値の結果を得るのに加算される数字の
量が異なること以外は図11の装置で使用されたCVB
は図10のそれと同様である。図11の装置の方が多く
の数字が加算される。図10のCVB回路におけるよう
に、第1の変換2進数(図8の実施例のCPA1  7
18)は以下のように式1により定義される。 (式1)         W3...W30  W31  A1
    A2    A3      +         W1...W28  W29  W3
0  W31  A0      +        
                         
         HA              
第1変換数さらに、図10のCPA1/CPA2  7
18、728のように、図11の実施例の第1CSA/
CPA対は、以下のようにして第1の2つの変換数を生
成する。 【0042】第1変換数に式1を代入すると、式2は次
のようになる。 (式3)    W3 ・・・W30    W31    A1
    A2    A3    B1    B2 
   B3  +     W1 ・・・W28    W29    W3
0   W31   A0+                           
             HA  +      W3  ・・・・・・      W30  
 W31   A1    A2    A3    
B0+      W1  ・・・・・・      W28  
 W29   W30   W31   A0  +                           
                         
HA  +                           
                         
      HB  ( 第1および第2変換数) 【0043】ディジットAに対して、W−REG  9
10のSL1とSL3、第1復号器912のディジット
Aの正確なビットおよび復号器912からのHAが一緒
に加算される。ディジットBに対して、第1変換ディジ
ットAのSL1とSL3、第2復号器914のディジッ
トBの正確のビットおよび復号器914のHBは一緒に
加算される。この加算をより効率よく行なうために、第
1ディジットからの新しい1(HA)が第1列に動かさ
れて、3つのHAが行2に加算される。HAは行5に加
算される(以下を参照のこと) 【0044】     列    8    7    6    5
    4    3    2    1     
                         
                         
         行          W30  
 W31   A1    A2    A3    
B1    B2    B3          1
+            W28   W29   W30
   W31   A0    HA    HA  
  HA          2+                           
                         
  HA          3+            W28   W29   W30
   W31   A1    A2    A3  
  B0          4+            W26   W27   W28
   W29   W30   W31   A0  
  HA          5+                           
                         
  HA          6+                           
                         
  HB          7          
                         
                         
          (第1の2つの10進数の2進数
への変換) 【0045】上記の加算を実行するのに、4−2CSA
  920−926は、第1の4つの列のそれぞれに使
用され、3−2CSA  928、930は、4番目の
列以降の各列に使用される。列1は4−2CSA  9
20により加算される。5つの入力は行1ないし行5で
ある。 行6はCPA1  904の左側のビット位置31に加
算される。行7は(新しい1)の桁上げとしてCPA1
  904に加算される。列4の後で1行削除されてい
るのは、その位置では行2と4が等しくなるからである
。行2と4は、列5からビットが左に1つ桁移送される
(2倍化と等価である)場合に1つの行に結合される(
列5から始まる)。図11では、第1桁上げ保管加算器
902が各列を加算して、和と桁上げを作成する。第1
桁上げ伝播加算器904は、第1桁上げ保管加算器90
2からの和と桁上げを加算する。上記の処理は、10進
ディジット(C、D)の第2対にも続いて行なわれ、第
2桁上げ保管加算器906でXビットを使用するので、
CPA1からの出力XバスはWビットとXビットを置換
する。、同様に、第2CSA/CPA対では、Aディジ
ットがCディジットと置換され、BディジットがDディ
ジットと置換される。CPA2  908から出力され
た和はW−REGにラッチされ、次のサイクルで使用さ
れる。次のサイクルでは、10進ディジットの次の2つ
の対が変換される。 【0046】ダブルワードの最後の4つのディジットA
BCDが復号されるときには、上記とは異なる変換が行
なわれる。AとBディジットは第1CSA  902と
第1CPA  904により(上記のように)変換され
る。 ディジットCは変換される最後のデータ・ディジットで
ある。ディジットCは、第1CPA  904の出力を
取り、第2CPA  908によりその出力を左に1お
よび3桁移送することにより変換される。ディジットC
の復号結果は、対応する空のビット位置に挿入される(
たとえば、図10の実施例ではCPA2  728が行
ったのと同様である)。第2CSA  906はその処
理には加わらない。ダブルワードの最後のディジットは
符号ディジットである。符号ディジットが正である場合
(すなわち、16進数のBでもCでもない)、第2CP
A  908の出力が最終的な結果になり、汎用レジス
タに保管される。符号ディジットが負の場合、第2CP
A908の出力はW−REG  910に入力される。 別のサイクルが加算されて、W−REG  910の内
容を2の補数化し(第2CPA910を介して)、その
後その符号が付けられ変換された数が汎用レジスタに送
られる。本発明の範囲と精神から逸脱しない変更と修正
は当業者にとって明らかであろう。すなわち、当然のこ
とながら、上記の実施例は本発明を制限するものではな
く例として開示されたものである。
【図面の簡単な説明】
【図1】従来の2進除算器のハードウェアの構成図。
【図2】比復号器の境界領域と部分被除数/除数の比を
示し、正の部分被除数を表す図。
【図3】比復号器の境界領域と部分被除数/除数の比を
示し、負の部分被除数を表す図。
【図4】対称型比復号器を備えた改良型2進除算器を示
す構成図。
【図5】図4、図8、図9の対称型比復号器の実施例の
境界領域を示す図。
【図6】図4の比復号器加算器と排他的論理和ゲートの
より詳細な構成図。
【図7】図4、図8、図9の対称型比復号器に具体化さ
れた論理方程式を示す図。
【図8】1クロック・サイクル当たり4つの商ビットを
生成可能な非復元除算を実行する装置の実施例を示す構
成図。
【図9】1クロック・サイクル当たり4つの商ビットを
生成可能な非復元除算を実行する装置の実施例を示す構
成図。
【図10】図8および図9の装置と共通データ・パスを
共有する2進変換回路の実施例を示す構成図。
【図11】4つのサイクルで10進ディジットの64ビ
ット・ダブル・ワードを回収可能な2進値変換回路の他
の実施例を示す構成図。
【符号の説明】
104  桁上げ伝播加算器 112  倍数ゲート 114  除数レジスタ 118  比復号器加算器 302  排他的論理和ゲート

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】復号する部分被除数の正および負の値用の
    統一された比復号器において、前記部分被除数と部分除
    数を受け取り、前記部分被除数と部分除数からの復号さ
    れた倍数を決定する論理手段を含み、前記論理手段は、
    前記部分被除数と前記部分除数の絶対比の部分集合を復
    号し、その復号された倍数値は前記部分比除数の符号に
    左右される復号手段を備えていることを特徴とする統一
    された比復号器。
  2. 【請求項2】前記部分集合は前記絶対値の比を5つより
    も多く含んでいない請求項1記載の統一された比復号器
  3. 【請求項3】前記部分除数がlxyzの形をとり、前記
    部分被除数がabcdefの形をとり、前記論理手段は
    、前記部分被除数の符号(sumbit0 )を示すビ
    ットを受け取る入力手段と、M0に等しい倍数を決定し
    、【数1】 の論理演算を実行する第1論理ゲート手段を含む第1手
    段と、M2に等しい倍数を決定し、 【数2】 の論理演算を実行する第2論理ゲートを含む第2手段と
    、M1に等しい倍数を決定し、 【数3】 の論理演算を実行する第3論理ゲート手段を含む第3手
    段と、を含み、sumbit0=1 は前記部分被除数
    の負の符号を示す、請求項1記載の統一された比復号器
  4. 【請求項4】除数を決定する工程と、部分被除数を決定
    する工程と、部分被除数の符号を決定し、この符号を示
    すビットを作成する工程と、前記部分被除数の複数のビ
    ットと前記符号の排他的論理和を取り、部分剰余を形成
    する工程と、前記部分剰余、前記符号を示すビット、お
    よび除数を復号器に送る工程と、前記部分剰余、前記符
    号を示すビット、および前記除数を復号し、乗数を決定
    する工程と、を備えていることを特徴とする除数倍数を
    決定する方法。
  5. 【請求項5】被除数と除数を使用して非復元除算を実行
    する装置において、前記被除数の複数の第1ビットと前
    記除数の複数の第2ビットを受け取るように接続された
    第1倍数復号器と、前記第1倍数復号器に接続されると
    ともに前記被除数を受け取るよう接続されている第1桁
    上げ伝播加算器及びこの第1桁上げ伝播加算器とカスケ
    ード接続された第2桁上げ伝播加算器と、前記第1倍数
    復号器に接続されるとともに前記除数を受け取るよう接
    続され、それぞれ桁上げ出力を示す出力端を含む第3及
    び第4桁上げ伝播加算器と、前記第1桁上げ伝播加算器
    の出力端と前記第2桁上げ伝播加算器の入力端の間に挿
    入され、前記第3桁上げ伝播加算器からの前記桁上げ出
    力を受け取るよう接続された第2倍数復号器と、部分被
    除数を記憶する前記第1対のカスケード式桁上げ伝播加
    算器の出力端に接続されたラッチ手段と、を備えている
    装置。
  6. 【請求項6】前記第1及び第2倍数復号器のそれぞれは
    単一比復号器から構成される請求項5記載の装置。
  7. 【請求項7】10進数を2進数に変換する変換手段を更
    に備え、前記変換手段は、前記第3桁上げ伝播加算器の
    入力端に接続されて10進ディジットを複数のビットに
    復号するCVB復号手段を有している、請求項5記載の
    装置。
  8. 【請求項8】部分被除数と部分除数から倍数を復号する
    装置において、部分被除数が負であるときを決定する決
    定手段と、前記部分被除数が負であるときに前記部分被
    除数を補数化する、前記決定手段に接続された補数化手
    段と、前記補数化手段と前記決定手段に接続されて前記
    除数を受け取り、前記部分被除数と前記部分除数に応じ
    て正の倍数値だけを作成する復号手段と、を備えている
    装置。
  9. 【請求項9】前記復号手段は、前記正の倍数値の中の、
    前記部分被除数の符号に依存するものを決定する論理ゲ
    ート手段を備えている、請求項8記載の装置。
  10. 【請求項10】前記部分除数がlxyzの形をとり、前
    記部分被除数がabcdefの形をとり、前記論理手段
    は、前記部分被除数の符号(sumbit0 )を示す
    ビットを受け取る入力手段と、M0に等しい倍数を決定
    し、【数4】 の論理演算を実行する第1論理ゲート手段を含む第1手
    段と、M2に等しい倍数を決定し、 【数5】 の論理演算を実行する第2論理ゲートを含む第2手段と
    、M1に等しい倍数を決定し、 【数6】 の論理演算を実行する第3論理ゲート手段を含む第3手
    段と、を含み、sumbit0=1 は前記部分被除数
    の負の符号を示す、請求項8記載の統一された比復号器
  11. 【請求項11】2進数への変換および非復元除算演算を
    実行する装置において、非復元2進除算を実行し、少な
    くとも2つのカスケード式桁上げ伝播加算器を有する第
    1手段と、複数の10進ディジットを2進数に変換し、
    前記第1手段と共通の前記カスケード式桁上げ伝播加算
    器を有する第2手段とを備えている装置。
  12. 【請求項12】前記第1手段は、復号される部分被除数
    の正と負の値の統一された比復号器を有し、この統一さ
    れた比復号器は前記部分比除数の符号に依存する倍数と
    なる5より多くの復号された比を含まない、請求項11
    記載の装置。
JP3109806A 1990-06-04 1991-04-15 多重ディジット10進数を2進数に変換する装置および統一された比復号器 Expired - Lifetime JPH0823814B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US532729 1990-06-04
US07/532,729 US5031138A (en) 1990-06-04 1990-06-04 Improved ratio decoder for use in a non-restoring binary division circuit

Publications (2)

Publication Number Publication Date
JPH04232529A true JPH04232529A (ja) 1992-08-20
JPH0823814B2 JPH0823814B2 (ja) 1996-03-06

Family

ID=24122915

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3109806A Expired - Lifetime JPH0823814B2 (ja) 1990-06-04 1991-04-15 多重ディジット10進数を2進数に変換する装置および統一された比復号器

Country Status (3)

Country Link
US (1) US5031138A (ja)
EP (1) EP0460353A3 (ja)
JP (1) JPH0823814B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3391448B2 (ja) * 1991-06-07 2003-03-31 富士通株式会社 除算器
EP0562137A1 (de) * 1992-03-24 1993-09-29 Siemens Nixdorf Informationssysteme Aktiengesellschaft Verfahren für Datenverarbeitungsanlagen zur Division von normalisierten Operanden
US5239498A (en) * 1992-08-31 1993-08-24 Intel Corporation Methods and apparatus for improved quotient correction in nonrestoring division computation circuits
US10209957B2 (en) * 2015-05-04 2019-02-19 Samsung Electronics Co., Ltd. Partial remainder/divisor table split implementation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60214037A (ja) * 1984-04-09 1985-10-26 Fujitsu Ltd 高基数非回復型除算器
JPS617939A (ja) * 1984-06-22 1986-01-14 Fujitsu Ltd 高基数非回復型除算装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3621218A (en) * 1967-09-29 1971-11-16 Hitachi Ltd High-speed divider utilizing carry save additions
US3591787A (en) * 1968-01-29 1971-07-06 Ibm Division system and method
US3852581A (en) * 1972-12-14 1974-12-03 Burroughs Corp Two bit binary divider
CA1231455A (en) * 1984-04-09 1988-01-12 Masayuki Ikeda Nonrestoring divider

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60214037A (ja) * 1984-04-09 1985-10-26 Fujitsu Ltd 高基数非回復型除算器
JPS617939A (ja) * 1984-06-22 1986-01-14 Fujitsu Ltd 高基数非回復型除算装置

Also Published As

Publication number Publication date
EP0460353A3 (en) 1993-05-26
US5031138A (en) 1991-07-09
JPH0823814B2 (ja) 1996-03-06
EP0460353A2 (en) 1991-12-11

Similar Documents

Publication Publication Date Title
Garner Number systems and arithmetic
US6564239B2 (en) Computer method and apparatus for division and square root operations using signed digit
US6233597B1 (en) Computing apparatus for double-precision multiplication
EP0158530B1 (en) Nonrestoring divider
US4953115A (en) Absolute value calculating circuit having a single adder
US5105378A (en) High-radix divider
JPH06222908A (ja) 多数の多ビット要素を含む複合オペランドに対して並列的に算術演算を実行する方法
JPH07191832A (ja) 2進数2乗回路
JP3276444B2 (ja) 除算回路
KR970006408B1 (ko) 논리회로의 자동설계방법 및 그 장치와 승산기
JPH04232529A (ja) 多重ディジット10進数を2進数に変換する装置および統一された比復号器
US5289399A (en) Multiplier for processing multi-valued data
US5146422A (en) Reduced execution time convert to binary circuit
US5268858A (en) Method and apparatus for negating an operand
US5777917A (en) Simplification of lookup table
JPH0448255B2 (ja)
JP2991788B2 (ja) 復号器
JPH0370416B2 (ja)
Aoki et al. High-radix parallel dividers for VLSI signal processing
JPH0368415B2 (ja)
KR100297558B1 (ko) 32비트 고속 병렬 곱셈기
JP3104569B2 (ja) 除算回路
JP3539077B2 (ja) 並列演算方式による除算方法
JPH0370252B2 (ja)
JPH0366694B2 (ja)