JPS588009B2 - デイジタル乗算器 - Google Patents

デイジタル乗算器

Info

Publication number
JPS588009B2
JPS588009B2 JP54153071A JP15307179A JPS588009B2 JP S588009 B2 JPS588009 B2 JP S588009B2 JP 54153071 A JP54153071 A JP 54153071A JP 15307179 A JP15307179 A JP 15307179A JP S588009 B2 JPS588009 B2 JP S588009B2
Authority
JP
Japan
Prior art keywords
circuit
carry signal
multiplier
stage
bit
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
Application number
JP54153071A
Other languages
English (en)
Other versions
JPS5582354A (en
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.)
AMERIKAN MAIKURO SHISUTEMUSU Inc
Original Assignee
AMERIKAN MAIKURO SHISUTEMUSU Inc
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 AMERIKAN MAIKURO SHISUTEMUSU Inc filed Critical AMERIKAN MAIKURO SHISUTEMUSU Inc
Publication of JPS5582354A publication Critical patent/JPS5582354A/ja
Publication of JPS588009B2 publication Critical patent/JPS588009B2/ja
Expired 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/523Multiplying only
    • G06F7/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • G06F7/5334Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product
    • G06F7/5336Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm
    • G06F7/5338Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm each bitgroup having two new bits, e.g. 2nd order MBA
    • 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • G06F7/49947Rounding

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 本発明はデイジタル乗算器の丸め補正論理回路特に変形
ブースのアルゴリズムを実行して浮動小数点演算を行な
うための乗算器の丸め補正論理回路に関する。
変形ブースのアルゴリズム(malifiaiBoot
h ’Salgorithm)はデイジタル乗算回路で
の演算速度を早めるための既知の手段である。
このアルゴリズムはIBM360シリーズのコンピュー
タに最初に使用されたものであり、このアルゴリズムに
よって部分積の個数を直線的組合わせ乗算器に必要とさ
れる部分積の半数以上を低減させ、その結果キャリー−
セイブー加算段(C arry−S ave−addS
t■es)の個数従って最終的に必要とされるゲートの
総数を減少させることが出来る。
このブースのアルゴリズムは各ビットに対する部分積を
形成することよりも、全て「1」および全て「0」とい
う任意の連続したストリングにわたってスキップするよ
うな乗算演算を要求するものであった。
「0」のストリングにわたるスキツピングは直線的であ
るが、「1」のストリングにわたるスキツピングはさら
に複雑であった。
一つの試みとして「1」のストリングの評価をストリン
グの最も右側の「1」の重みをそのモジュラスから減算
することによって行なっていた(尚、nビットワードの
モジュラスとは2nとして定義されるものであり、右側
から数えてn番目のビットの重みとは2n−1 として
定義される)。
この試みを2進ストリング1 1 1 1 0000に
対し適用すると、例えばn=8とすると、28−2’=
2 5 6−1 6=240である。
従来のブースのアルゴリズムのハードワード( har
dward )乗算器においては、各乗数を3つの隣接
するビットから成るサブストリングに分割し、この際こ
れら各サブストリングが隣接するストリングと1つのビ
ットを共有するように分割している。
このアルゴリズムはサブストリングを完成させると共に
乗数の値が負の数として処理されないようにするために
「0」でパッティングした左右のサブストリングスを有
した2の補数を必要とした。
変形ブースのアルゴリズムとは一度に2ビットの固定シ
フトを行ないおよび3個の乗数ビットの検査を行ない、
従来の乗算に必要とされる部分積の個数よりも少数の部
分積(8ビットの乗数の場合には5)を生じさせる乗数
エンコーディング方法である。
変形ブースのアルゴリズム乗算器をLSIで構成した標
準的なものとしてMonolithic Memori
−es)社製の単一チップのタイプ6755808ビッ
ト×8ビット乗算器( type 6 7 5 5 8
eight−bit−by−eight−bit−m
ultiplier)がある。
この乗算器については文献[E lectronics
magazine−Jの第50巻、第20号、197
7年9月29日の第93〜99頁にWaserandP
eterson等による[eal T ime P r
ocessing Gains Ground Wit
hFast Digital MultiplierJ
に開示されている。
さらにLSIで構成した別の並列型変形ブースのアルゴ
リズム乗算器については、[l 9 7 8WESCO
N Professional Programlで呈
示されたNicholson , B lascoおよ
びReddyによる論文rThe S28 1 1
S ignal Processing Perip
h−eral」に開示されており、さらにP roce
edingsof Session 2 5において公
表された論文IDesigningWith S in
gle Chip Multipliers 」のPP
25/3 : 1−1 2に開示されている。
従来の変形ブースのアルゴリズムを実行するだめの高速
乗算器の欠点は、小数部分を処理するために度々利用す
る丸め手続きに関連して生ずる。
例えば、前述の文献: Electronic mag
azineの第97〜98頁に開示されているようなM
MI67558形乗算器につき行なった試みは8ビット
×8ビット乗算から全体で16ビットの積を発生させて
この最終の全積に対し丸め手続きを適用することであっ
た。
例えば、最終の積を最上位の8個のビットとなるように
丸めるために、捨てるべき部分に0.5を加え、次いで
最終の積の8番目の最下位ビットで切捨てていた。
かかる手続きは電力消費、処理速度およびLSIトポロ
ジイの点で著しく不経済であった。
本発明の目的は全積の出力を発生しないである選択し得
るビット位置で丸められた出力を発生する高速デイジタ
ル乗算回路を提供することにある。
本発明の他の目的は、乗算器の寸法および電力消費を低
減させるために最小数の回路素子で丸められた出力を発
生する高速デイジタル乗算器を提供することにある。
本発明のさらに他の目的は全積出力を発生させることな
く丸められた積出力を発生させるように構成し、よって
チップの寸法と電力消費とを所要の程度まで低減させか
つ歩留りを高めた大規模集積化高速デイジタル乗算器チ
ップを提供することにある。
本発明のさらに他の目的は、選択されたビット位置およ
びその右の2つの隣接するビット位置に対するキャリー
と部分積とを発生させることによって、その選択された
位置に丸めを行なう変形ブースのアルゴリズムを実行す
るためのデイジタル乗算器に対する丸め補正論理回路を
提供するにある。
本発明によれば、丸められるべき所定個数の最下位ビッ
トを含んでいる最終積を発生するための変形ブースのア
ルゴリズム乗算器に使用されている乗算および加算回路
を使用する代わりに、本発明の原理に従がつた丸め補正
論理回路を使用する。
この丸め補正論理回路は最終丸めの所定のビット位置並
びにその左側に隣接する2つのビット位置で最終積の大
きさを分析することによって作動する。
浮動小数点演算を実行するデイジタル乗算器は小数部に
作用するので、所定ビット位置およびその右の2つの隣
接位置で最終積を考慮することによって、実際には全て
の場合に丸め手続きを正確に達成することが出来る。
この丸め補正回路は、2個の部分積生成回路を含むと共
に乗算器中の残りのいくつかの部分積および加算回路に
接続されており、よって丸められるべき最終積の最下位
ビットの発生を必要としないし或いはこれら最下位ビッ
トを発生するための回路を設ける必要なくして簡単な組
合わせ論理素子で正確に丸められた最終積を供給するよ
うに構成したものである。
本発明の好適実施例においては、変形ブースのアルゴリ
ズム乗算器において、最終積のn−1個,の最下位ビッ
トをn番目の最下位ビットに丸めることが出来る。
かかる乗算器は複数個の部分積生成回路を具える第1段
と、第1加算回路および第2加算回路を含む複数個の加
算回路を具える第2段と、第3加算回路を含む第3段と
、8個以上の2進デイジットで最終積を出力するための
第4加算回路を含む第4段とを含んでいる。
この乗算器の丸め論理回路は、乗算器をして最終積のn
−1個の最下位2進デイジットを発生せしめることなく
、この最終積のn番目の最下位2進デイジットに丸めを
行なう。
本発明の丸め補正論理回路の好適実施例においては、変
形ブースのアルゴリズム乗算器の第1段に2進被乗数X
および2進乗数Yから得られる部分積を生成するための
一連の部分積生成回路を含んでおり、この場合、Xまた
はYに続く数字によってこれら被乗数まだは乗数中での
ビット位置を表わしさらに「n」によって丸められた最
終積の選定された最下位ビットのビット位置を表わし、
さらに文字「A」,「B」,「c」,「D」によつて部
分積を表わし、および文字「S」によって算出された加
算ビットを表わす。
この乗算器の丸め論理回路はさらに第1キャリー信号発
生段を含んでいて、この第1キャリー信号発生段を前述
した部分積生成回路に接続してよつて C(n−1〕1=(B(n−2〕+A(n 2))’
(A(n−2 )+B(n−2)+A(n−3 〕)
・(A( n−3 〕+B( n−3 :] )B (
n−2 ) )={1)の式によって規定される第1
キャリー信号C(n−1)1,を発生すると共にこの第
1キャリー信号をキャリー入力C(n−1)1として前
記第1加算回路に対して供給する。
この乗算器の丸め論理回路は、さらに前述した部分積生
成回路に接続されていて C(n−1)3
=K’[:n−2)+D(n 2,l+Y(n 1
))”(C(n−2)+C(n−3〕+Y(n1 )
) ・(C(n−2 )+C(n−3 )+D(n −
2 ) ) ・(C ( n−3 ]+D( n−2
)+YC n−1))・・・・・・・・・(2) の式によって規定される第2キャリー信号を発生すると
共にこの第2キャリー信号C(n−1)3を乗算器の第
2加算回路に供給するための第2キャリー信号発生段を
含んでいる。
さらに丸め論理回路は、前述の部分積生成回路に接続さ
れていて C(n−1)4=C(「x−2) ・D(n−2) ・
Y( n−1 〕・C ( n−3 )”{3)の式に
よって規定される第3キャリー信号C(n−1’)4を
発生するための第3キャリー信号発生段を含んでいる(
伺、ここでY(n−1)は乗数の丸めビットの右7番目
の有効ビットである)。
さらに、この丸め論理回路は丸められた最終積の最下位
ビット出力を供給する第4キャリー信号発生段を含んで
いる。
この第4キャリー信号発生段を部分積生成回路および第
3加算回路に接続する。
との第4キャリー信号発生段はC(n)1=W(n−i
)− (S(n−2)1+S(n−2)2 ・・・
・・・・・・(4)の式によって規定される第4キャリ
ー信号を発生すると共に、 Pn=W(n−1〕■( S C n−2 ) 1+S
(n−2,12) ・・・・・・・・・(
5)の式であって、ここでW(n−1)が第3加算回路
からの最下位ピットキャリー信号であり、S(n−1,
l1=A(n−2){B(n−2)■(A(n一3)+
B(n 3)))+A(n−21(:BCn−2:)
■(A(n−3)+B(n−3))) ・””(6)
であり、および S(n−2)2=C(n−2)・CD(n−2)■(
n−1 )C℃(n−3)」十C(n−2) ・(D(
n−2)CDY(n−1)(E)C(n−30 −”
(7) である式によって規定されるn番目に(n)に丸められ
た積出力の最下位ビツトPnを発生するように作用する
この第4キャリー信号発生段は第4加算回路に第4キャ
リー信号を供給すると共に変形ブースのアルゴリズム乗
算器の出力端子に丸められた積出力の最下位ビツトPn
を供給する。
以下、図面により本発明の実施例につき説明する。
第1図には12ビット(X11〜XO)X12ビツト
(Yl 1〜YO)の変形ブースのアルゴリスムテイジ
タル乗算器10を示している。
この乗算器をNMOS大規模集積回路として或いはその
一部分として構成するのが好適であるが、必らずしもそ
の必要はない。
高速ディジタル乗算器をモノリシツク集積回路として或
いはその一部分として構成するためには、米国特許第3
924265号明細書に開示されているVMOS技術が
理想的であって好適である。
乗算器10は12ピット・ワイド(X11〜XO)であ
る被乗数母線12と同様に12ビットワイド(Y11〜
YO)の乗数母線14とを含んでいる。
従来の12ビット×12ビット変形ブースのアルゴリズ
ム乗算器では24ピットの最終積を発生するに十分な回
路が必要であった。
第1図に示す乗算器10は16ビット(P15〜po)
の最終積を発生し、この場合最下位ビツトPOは全体で
24ビットの積のうちの9番目の最下位ビットであって
、本発明によれば8個の最下位ビットの発生を行なわな
い。
第1図に示すように、被乗数母線12と乗数母線14と
を乗算器1oの第1段における6個の部分積生成回路1
6,18,20,22,24および26に接続する。
従って被乗数母線12のビツトMOないしX7と乗数母
線14のビツトYOおよびY1とを部分積生成回路に供
給する。
部分積生成回路18は被乗数母線12からビツトMOな
いしX9および乗数母線14からビツトYl,Y2およ
びY3を受信する部分積生成回路20は被乗数母線12
,から12ビットの全てと.乗数母線14からビツトY
3,Y4およびY5とを受信する。
部分積生成回路22,24および26は各々被乗数母線
12012ビットの全てを受信し、他方生成回路22は
乗数母線のビツトY5,Y6およびY7を受信するが生
成回路24は乗数母線14からビッ}Y7、Y8および
Y9を受信し生成回路26は乗数母線14からビットY
9,YIOおよびYllを受信する。
6個の部分積生成回路16,18,20,22,24お
よび26の各々は各部分積を生成するための個別の生成
回路素子100を含んでいる。
この生成回路素子100を第3図に示すと共にこの回路
素子について後述する。
第1図について更に説明する。
変形ブースのアルゴリズム乗算器の第2段は3個の加算
回路28,30および32を含んでいる。
第1加算回路である加算回路28は部分積生成回路16
から6ビットを受信すると共に部分積生成回路18から
8ビットを受信する。
第2加算回路である加算回路30は部分積生成回路20
からの10ビットと、部分積生成回路22からの12ビ
ットを受信する。
さらに加算回路32は部分積生成回路24からの11ビ
ットと、部分積生成回路26からの13ビットを受信す
る。
変形ブースのアルゴリズム乗算器10の第3段は2個の
加算回路34および36を含んでいる。
この第3加算回路である加算回路34は加算回路28か
ら10ビットを受信すると共に加算回路30から13ビ
ットを受信する。
加算回路36は部分積生成回路24から2ビットを受信
すると共に加算回路32から13ビットを受信する。
加算回路32は乗数母線14から1ビットすなわちY9
を受信し、加算回路36は乗数母線14から1ビットす
なわちYllを受信する。
変形ブースのアルゴリズム乗算器10の第4段は第4加
算回路である加算回路38を含んでおり,この加算回路
は加算回路34から14ビットを受信すると共に加算回
路36から15ビットを受信する。
加算回路38は乗算器10からの出力40を供給する。
この場合、15個の並列ヒット位置を加算回路38から
直接供給すると共に最下位ビット位置POを丸め補正論
理回路42から供給する。
補正論理回路42は、第2図に示すように、24ビット
積のうち8個の最下位ビットの丸めを行なうので乗算器
10の出力40は24ビットよりはむしろ16ビットで
ある。
本発明の好適実施例においては、n=8すなわち丸めら
れる最下位ビットは9番目の最下位ビットであり、この
丸め処理に先立って全積を生成する。
丸め補正論理回路42を乗算器10内の部分積生成回路
素子100に接続する。
この論理回路42は乗算器10から7個の入力A5,A
6,B5,B6,C5,C6,D6を受信する。
これら各入力を部分積生成口路素子100によって生成
する。
n=8とする場合には、入力A5はA(n−3)に対応
し:A6はA(n−2)に等しく:B5はBCn−3〕
に等しく:C5はC(n−3〕に対応し:C6はC〔η
−2〕に等しく:およびD6は前述した式(1)ないし
(7)で規定したようなD(n−2)に対応する。
論理回路42は5個の出力を供給する。
すなわちC71(式(1)からのC(n−1):C73
(式(2)からのC(n−i)3):C74(式(3)
からのCCz1−1 )4 ):C81 (式(4)か
らのC(n〕1):PO(式(5)からのPn):最初
に論理回路42は21固の中間出力すなわちS61(式
(6)からのS(n−2)1およびS62(式(7)か
らのS ( n−2 〕2)を生ずる。
丸め補正論理回路42に対する1入力すなわちY7 (
Y( n−1 ) )を乗数母線14から直線供給する
さらに2入力すなわちA5およびA6を第1部分積生成
回路16の出力から供給する。
さらに2入力すなわちB5およびB6を第2部分積生成
回路18の出力から供給する。
さらに2入力すなわちC5およびC6を第3部分積生成
回路20の出力から丸め補正論理回路42に供給する。
乗算器10の第3段における加算回路34の1出力であ
るキャリー信号W7 (Wl: n−1 ,l )を丸
め補正論理回路42に対する入力として供給する。
丸め補正論理回路からの5入力を次のように供給する。
すなわち,出力C71を加算回路28に対するキャリー
入力として供給し、出力C73を加算回路30に対する
キャリー入力として供給し、さらに出力C74を加算回
路34に対するキャリー入力として供給し,さらに出力
C81を最終段の加算回路に対するキャリー信号として
供給するようにこれら5出力の接続を形成する。
第2図に示すように、キャリー信号C71を次に説明す
るように接続した4個のノアゲート44,46,48お
よび50によって発生させる。
すなわちこの接続を、入力A6およびB6のラインがノ
アゲート44に対する2つの入力端子を形成し、入力A
6,A5およびB5のラインがノアゲート,46に対す
る3つの入力端子を形成し、および入力A5,B6およ
びB5のラインがノアゲート48に対する3つの入力端
子を形成するように行なう。
ノアゲート44,46および48の反転出力をノアゲー
ト50に対する3入力として供給する。
このノアゲート50からの反転されている出力を第1図
につき説明したように加算回路28に供給するキャリー
信号C71とする。
前述したように、ゲート44,46,48および50の
ハードウェアにおいてn=8およびC(n.−1)1=
C71であるプール代数式(1)を実行する。
5個のノアゲート52,54,56,58および60は
n=8とした場合の前述の論理式(2)を実行してキャ
リー信号C73を供給し、このキャリー信号を乗算器1
0の第2段の加算回路30に接続する。
入力C6,DBおよびY7のラインはノアゲート52に
対する入力端子を構成する。
入力Y7’,C6およびC5のラインがノアゲート54
に対する入力端子を構成する。
入力C5,C6およびD6のラインがノアゲート56に
対する入力端子を構成する。
さらに入力DB,C5およびY7のラインがノアゲート
58に対する入力端子を構成する。
これらのノアゲート52,54,5658および60は
これらの各反転出力をノアゲート60に対して4入力と
して供給し、このノアゲート600反転出力端子からは
キャリー信号C73を供給してこれを第1図に示すよう
に加算回路30に供給する。
n=8とした場合の前述の論理式(3)から生じたキャ
リー信号C74を4つの入力C6,D6,C5およびY
7から生じさせる。
これら入力をインバータ62,64,66,68によっ
て反転させて4入力ノアゲート70に対し入力として供
給する。
このノアゲートの反転出力端子から加算回路34に対し
キャリー信号C74を供給する。
キャリー信号C81および最下位ピット出力POは、n
=8とした場合の前述の論理式(4),(5)(6)お
よび(7)を実行するための共通論理回路を利用して、
得る。
この論理回路につき以下、説明する。入力A6のライン
をノアゲート72に対し1入力として接続し、このノア
ゲートの他の入力として排他的ノアゲート74の出力を
供給する。
尚、このノアゲート74に対する1入力を入力B6とす
る。
この排他的ノアゲート74の他の入力を入力A5および
B5のラインに接続した2つの入力を有するノアゲート
76の出力とする。
このノアゲート76の出力を他の排他的ノアゲート78
に対する1入力として供給する。
この排他的ノアゲート78の他の入力を入力C6のライ
ンから供給する。
さらに排他的ノアゲート78からの出力をノアゲート8
0に1入力として供給し、このノアゲート80の他の入
力A6のラインから供給する。
排他的ノアゲート82には入力Y7およびC5のライン
からの2入力端子を設ける。
この排他的ノアゲート82の出力を2入力排他的ノアゲ
ート84に対し入力として供給する。
このノアゲート84の他方の入力端子を入力D6のライ
ンに接続する。
排他的ノアゲート84の出力端子をノアゲート86に接
続する。
このノアゲート86の他方の入力端子を入力C6のライ
ンに接続する。
さらに排他的ノアゲート82の出力端子を2入力排他的
ノアゲート88の入力端子に接続し、このノアゲート8
8の他方の入力端子を入力D6のラインに接続する。
排他的ノアゲート88の出力をノアゲート90に対し入
力として供給する。
このノアゲート90の他方の入力端子を入力C6のライ
ンに接続する。
ノアゲート72,80,86および90からの出力を4
入力ノアゲート92に対し入力として供給する。
このノアゲートはノアゲート940入力端子に接続した
出力端子(この出力端子には前述の式(6)および(7
)からの信号S61+862を生ずる)を有する。
このノアゲート94に対する他方の入力をキャリー信号
W7のラインからインバータ96を介して供給する。
このノアゲート94の出力端子は第1図に示すように乗
算器10の第4段の加算回路3Bに接続してある。
さらに、ノアゲート92の出力端子を排他的ノアゲート
98の1入力端子に接続する。
この排他的ノアゲート98の他方の端子をキャリー信号
W7のラインに直接接続する。
排他的ノアゲート98の出力端子からは乗算器10の出
力端子40に最下位ビット信号POを供給する。
次に第3図につき説明する。
この図は部分積生成回路100を示しており、この生成
回路lOSゲート102,104および106と排他的
ノアゲート108とを備えている。
このMOSゲート102および104を直列に接続し、
このM.OSゲート104に対し並列にMOSVゲート
106を接続する。
MOSゲート1 02,1 04,106に共通にライ
ン107を接続し、このラインは排他的ノアゲート10
8に対し1入力を供給する。
排他的ノアゲート108に対する他の入力を入力Cのラ
インから供給する。
MOSV−ゲート106のゲート電極を入力Gのライン
に接続する。
第3図に示すように、乗算器10の部分積生成回路1
6,18,20,22,24および26の全てを素子1
00のように構成することが出来る。
この部分積生成回路のMOSゲート102を乗数X11
〜XOの1つとし得る乗数ビットラインXに接続する。
MOSゲート104をMOSゲート102に接続したビ
ットラインXの1ビット位置右側の位置である乗数ビッ
トラインXlに接続する。
信号A,BはビットXまたはXlの一つをマルチプレク
ス(セレクト)する制御信号であり:信号AはXビット
をセレクトするが信号BはXlビットをセレクトする。
信号AおよびBの両ラインを附勢しない場合には、ライ
ン107の信号を低く保持することが必要であり、この
ため、信号Gのラインを附勢する。
信号GのラインはNOT,A或いはB(A+B)に等し
い。
信号Cのラインを出力ゲート108をクロツクするよう
に接続し、信号Cは被乗数Yビットに対応する。
第1図に示す変形ブースのアルゴリズム乗算器10は1
2ビット被乗数×12ビット乗数の形態に適用出来るよ
うに示されているが、他のビット長(ビットサイズ)の
被乗数および乗数にも同様に適用出来ること勿論である
本発明は上述した実施例にのみ限定されるものではなく
、多くの変形または変更を行ない得ること明らかである
【図面の簡単な説明】
第1図は本発明の原理に従かう丸め補正論理回路を含む
変形ブースアルゴリズム乗算器の一実施例を示すブロッ
ク線図、第2図は第1図に示す乗算器の丸め補正論理回
路の好適な実施例を示すブロック線図、第3図は乗算器
内に含まれており、本発明の原理に従がう丸め補正論理
回路に接続されたものもある一連の部分積発生器の1個
の示す一般的な場合のハイブリッド論理回路を示す線図
である。 10・・・デイジタル乗算器、12・・・被乗数母線、
14・・・乗数母線、1 6, 1 8, 20, 2
2, 24,2634. 36, 3B・・・部分積生
成回路、28.3032・・・加算回路、40・・・出
力端子、42・・・丸め補正回路、44, 46, 4
8, 50, 52, 54, 56,60,70,7
2,76,80,8 6,90,9294・・ツアゲー
ト,62,64,66,68・・・インバータ、74,
78,82,84,88,98,108・・・排他的ノ
アゲート、102,104,106・・・MOSゲート
、107・・・ライン。

Claims (1)

  1. 【特許請求の範囲】 1 一連の2進デイジットの最終積を発生するために、
    複数の部分積生成回路から成る第1段と、第1加算回路
    および第2加算回路を含む複数の加算回路から成る第2
    段と、第3加算回路を含む第3段と、第4加算回路を含
    む第4段とを有している変形ブースのアルゴリズムを実
    行するディジタル乗算器において、前記,最終積の所定
    のn番目のビットの右側の最下位2進デイジットを発生
    することなく前記所定のn番目のビットが前記最終積の
    最下位2進デイジットとなるように丸めるための丸め論
    理回路を具えており:該丸め論理回路は、 被乗数Xおよび乗数Yから部分積を生成するために第1
    の最下位ビット乗数生成回路A、第2の次の最下位のビ
    ット乗数生成回路B、第3の次の最下位のビット乗数生
    成回路Cおよび第4の次の最下位ビット乗数生成回路D
    (ここで文字に続く数字はビット位置の桁を表わす)を
    含んでいる複数の部分積生成回路を前種第1段に含んで
    おり:さらに、前記部分積生成回路AおよびBに接続さ
    れ(B(n−2〕+A(n−2))・(A(n 2)
    +B’( n−3 ) ) ・(A( n−3 )+B
    ( n − 3 ,:]十( n−2 ,l )に等
    しいと規定された第1キャリー信号C(n−1)1を発
    生しおよび前記第1加算回路に前記第1キャリー信号C
    (n−1)1を供給するための第1キャリー信号発生段
    を含んでおり、さらに、前記部分積生成回路CおよびD
    に接続され( C ( n−2 )+C ( n−3
    )十D ( n−2 )+Y(n−1)) ・(C(n
    −2)+C(n−3〕+Y(n 1))・(C(n−
    2)+C(n−3)+D(I1−2))(C(n−3)
    +D(n=2)+Y(n−1))に等しいと規定された
    第2キャリー信号C(n−1)3を発生しおよび前記第
    2加算回路に前記第2キャリー信号C(n−1)3を供
    給するための第2キャリー信号発生段を含んでおり: さらに、前記部分積生成回路に接続されY(n−1〕を
    ある乗数のn番目のビット位置の右2ビット位置の乗数
    ビットとするときC(n−2)・D(n−2’l ・Y
    (n−1 ) ・C(n−3)に等しいと規定される第
    3キャリー信号C(n−1〕4を発生しおよび前記第3
    加算回路に前記第3キャリー信号を供給するための第3
    キャリー信号発生段を含んでおり: さらに、前記部分積生成回路および前記第3加算回路に
    接続された第4キャリー信号および最下位ビットの丸め
    られた最終積を発生する発生段を含み、該発生段は、W
    (n−1)を前記第3加算回路からの最下位ビットキャ
    リー信号とし、S〔n−2)1をA(n−2}(B(n
    −2)■(A(n 3)B(n−3))+A(n−2
    ) ・(B(n−2,1■(A( n−3 ,:]+B
    ( n−3 ) ) )としおよびS(n−2)2を
    C(n−2){D(n 2)■Y ( n’−1 )
    ■C ( n−3 ) )+C ( n−2 ) ・D
    (n− 2,1■Y(n−’i)■C(n−3))
    としたときW(−n−1 ) −(S( n−2 )
    1+S ( n−2 〕2 )に等しいと規定された第
    4キャリー信号とW(n−13■(S(n−2)1+S
    Cn−2)2)に等しいと規定された最下位ビットの丸
    められた積出力Pnを発生しおよび前記第4加算回路に
    前記第4キャリー信号を供給すると共に前記乗算器の出
    力端子に前記最下位ビットの丸められた積出力Pnを供
    給することを特徴とするデイジタル乗算器。 2 8個以上の2進デイジットで最終積を発生するため
    に、複数の部分積生成回路から成る第1段と、第1加算
    回路および第2加算回路を含む複数の加算回路から成る
    第2段と、第3加算回路を含む第3段と、第4加算回路
    を含む第4段とを有している変形ブースのアルゴリズム
    を実行するデイジタル乗算器において、前記最終積の8
    個の最下位2進デイジットを発生することなく前記最終
    積の9番目の最下位2進デイジットになるように丸める
    ための前記乗算器における丸め論理回路を具えており:
    該丸め論理回路は、 前記第1段に、被乗数Xおよび乗数Y(文字の次の数字
    はビット位置の桁を示す)から部分積を生成するための
    部分積生成回路を含んでおり:さらに、前記部分積生成
    回路に接続され(B6+A6)・(,A6+B5+A5
    )・( A5+.B 5+B 6 )として規定される
    第1キャリー信号C71を発生しおよび該第1キャリー
    信号C71を前記第1加算回路に供給するための第1キ
    ャリー信号発生段を含んでおり: さらに、前記部分積生成回路に接続され(C6+D6+
    Y7)・(C6+C5+Y7)・(C.5+D6・+Y
    7)・(C6+C5+D6)として規定される第2キャ
    リー信号を前記第2加算回路に供給するための第2キャ
    リー信号発生段を含んでおり:さらに、前記部分積生成
    回路に接続され(Y7を乗数の7番目の最下位ビットと
    するとき)C6・D6・Y7・C5に等しいとして規定
    される第3キャリー信号C74を発生しおよび該第3キ
    ャリー信号C74を前記第3加算回路に供給するための
    第3キャリー信号発生段を含んでおり:さらに、前記部
    分積生成回路および前記第3加算回路に接続された第4
    キャリー信号および最下位ビットの丸められた最終積を
    発生する発生段を含み、該発生段は、W7を第3加算回
    路からの最下位ビットキャリー信号とし、S61をA6
    ・(B6■(A5+B5))+A6(B6■(A5+B
    5)〕に等しいと規定しおよびS62をσ丁・(D6■
    Y7eC 5 )+C 6 − (D6(E)Y7■C
    5 :) .!:等しいと規定したとき、W7・(S
    61+S62)に等しいと規定された第4キャリー信号
    C81およびW7■(S61+S62)に等しいと規定
    された最下位ビットの丸められた積出力POを発生しお
    よび前記第4加算回路に前記第4キャリー信号を供給す
    ると共に前記乗算器の出力端子に前記最下位ビットの丸
    められた積出力POを供給することを特徴とするデイジ
    タル乗算器。
JP54153071A 1978-12-06 1979-11-28 デイジタル乗算器 Expired JPS588009B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US966870153-15 1978-12-06
US05/966,870 US4229800A (en) 1978-12-06 1978-12-06 Round off correction logic for modified Booth's algorithm

Publications (2)

Publication Number Publication Date
JPS5582354A JPS5582354A (en) 1980-06-21
JPS588009B2 true JPS588009B2 (ja) 1983-02-14

Family

ID=25511970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54153071A Expired JPS588009B2 (ja) 1978-12-06 1979-11-28 デイジタル乗算器

Country Status (8)

Country Link
US (1) US4229800A (ja)
JP (1) JPS588009B2 (ja)
CA (1) CA1119728A (ja)
DE (1) DE2946846A1 (ja)
FR (1) FR2443720B1 (ja)
GB (1) GB2039393B (ja)
IT (1) IT1192787B (ja)
NL (1) NL7908032A (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4405992A (en) * 1981-04-23 1983-09-20 Data General Corporation Arithmetic unit for use in data processing systems
DE3144015A1 (de) * 1981-11-05 1983-05-26 Ulrich Prof. Dr. 7500 Karlsruhe Kulisch "schaltungsanordnung und verfahren zur bildung von skalarprodukten und summen von gleitkommazahlen mit maximaler genauigkeit"
US4547862A (en) * 1982-01-11 1985-10-15 Trw Inc. Monolithic fast fourier transform circuit
JPS5949640A (ja) * 1982-09-16 1984-03-22 Toshiba Corp 乗算回路
US4507676A (en) * 1982-10-28 1985-03-26 Rca Corporation Digital matrixing system
DE3309717A1 (de) * 1983-03-18 1984-09-20 Robert Bosch Gmbh, 7000 Stuttgart Multiplizierschaltung
JPS61165128A (ja) * 1984-12-14 1986-07-25 Fujitsu Ltd 多入力加減算装置
US4727506A (en) * 1985-03-25 1988-02-23 Rca Corporation Digital scaling circuitry with truncation offset compensation
JPS6285333A (ja) * 1985-10-11 1987-04-18 Oki Electric Ind Co Ltd 浮動小数点乗算器丸め処理方式
JPS62120535A (ja) * 1985-11-20 1987-06-01 Oki Electric Ind Co Ltd 並列乗算器
DE3626378A1 (de) * 1986-08-04 1988-02-11 Steinecker Maschf Anton Verfahren und filtermaterial zur anschwemmfiltration von getraenken
US4887232A (en) * 1987-05-15 1989-12-12 Digital Equipment Corporation Apparatus and method for performing a shift operation in a multiplier array circuit
US4862405A (en) * 1987-06-30 1989-08-29 Digital Equipment Corporation Apparatus and method for expediting subtraction procedures in a carry/save adder multiplication unit
US5463575A (en) * 1994-06-24 1995-10-31 Rockwell International Corporation Reduced quantization noise from single-precision multiplier
US5729485A (en) * 1995-09-11 1998-03-17 Digital Equipment Corporation Fast determination of carry inputs from lower order product for radix-8 odd/even multiplier array
US5726927A (en) * 1995-09-11 1998-03-10 Digital Equipment Corporation Multiply pipe round adder
JPH10133856A (ja) * 1996-10-31 1998-05-22 Nec Corp 丸め機能付き乗算方法及び乗算器
JP3417286B2 (ja) 1998-02-23 2003-06-16 株式会社デンソー 乗算器
US6684236B1 (en) * 2000-02-15 2004-01-27 Conexant Systems, Inc. System of and method for efficiently performing computations through extended booth encoding of the operands thereto
US6898614B2 (en) * 2001-03-29 2005-05-24 Koninklijke Philips Electronics N.V. Round-off algorithm without bias for 2's complement data
US9450601B1 (en) 2015-04-02 2016-09-20 Microsoft Technology Licensing, Llc Continuous rounding of differing bit lengths
EP3471271A1 (en) 2017-10-16 2019-04-17 Acoustical Beauty Improved convolutions of digital signals using a bit requirement optimization of a target digital signal

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3290493A (en) * 1965-04-01 1966-12-06 North American Aviation Inc Truncated parallel multiplication
US3878985A (en) * 1973-11-30 1975-04-22 Advanced Micro Devices Inc Serial-parallel multiplier using booth{3 s algorithm with combined carry-borrow feature
US3885141A (en) * 1974-02-06 1975-05-20 Bell Telephone Labor Inc Modular pipeline multiplier to generate a rounded product
US3947670A (en) * 1974-11-22 1976-03-30 General Electric Company Signed multiplication logic
US4153938A (en) * 1977-08-18 1979-05-08 Monolithic Memories Inc. High speed combinatorial digital multiplier

Also Published As

Publication number Publication date
FR2443720A1 (fr) 1980-07-04
NL7908032A (nl) 1980-06-10
JPS5582354A (en) 1980-06-21
CA1119728A (en) 1982-03-09
US4229800A (en) 1980-10-21
GB2039393A (en) 1980-08-06
DE2946846A1 (de) 1980-06-19
IT1192787B (it) 1988-05-04
IT7969339A0 (it) 1979-12-05
FR2443720B1 (fr) 1986-03-21
GB2039393B (en) 1983-04-13

Similar Documents

Publication Publication Date Title
JPS588009B2 (ja) デイジタル乗算器
JPS6059470A (ja) 乗算‐累算処理装置に適する基本セル及び乗算‐累算処理装置
JPS6132437Y2 (ja)
US3795880A (en) Partial product array multiplier
CA1332196C (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
JPS6375932A (ja) ディジタル乗算器
US5289399A (en) Multiplier for processing multi-valued data
JPS58137045A (ja) 並列乗算器
US5206825A (en) Arithmetic processor using signed-digit representation of external operands
US5153847A (en) Arithmetic processor using signed digit representation of internal operands
US4041296A (en) High-speed digital multiply-by-device
US5954791A (en) Multipliers with a shorter run time
JPS5841532B2 (ja) セキワケイサンカイロ
JPH0418336B2 (ja)
JPH0869372A (ja) 2進乗算器
JPS62219027A (ja) 桁上げ先見回路
US20230367554A1 (en) Apparatus, a method of operating modulo k calculation circuitry and a non-transitory computer-readable medium to store computer-readable code for fabrication of an apparatus
JPS6045842A (ja) 乗算回路
JPH1011418A (ja) 積和演算装置
JP2894749B2 (ja) 並列乗算器
JP2600266B2 (ja) アドレス生成装置
JPH0652500B2 (ja) 演算処理装置
JPS63201825A (ja) 演算処理装置
JPH09167082A (ja) 乗算装置
JPS62216035A (ja) 並列乗算器