JPH0215088B2 - - Google Patents

Info

Publication number
JPH0215088B2
JPH0215088B2 JP58163503A JP16350383A JPH0215088B2 JP H0215088 B2 JPH0215088 B2 JP H0215088B2 JP 58163503 A JP58163503 A JP 58163503A JP 16350383 A JP16350383 A JP 16350383A JP H0215088 B2 JPH0215088 B2 JP H0215088B2
Authority
JP
Japan
Prior art keywords
adder
segmented
carry
input
output
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 - Lifetime
Application number
JP58163503A
Other languages
English (en)
Other versions
JPS6055438A (ja
Inventor
Masaru Uya
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP58163503A priority Critical patent/JPS6055438A/ja
Priority to US06/643,385 priority patent/US4682303A/en
Publication of JPS6055438A publication Critical patent/JPS6055438A/ja
Publication of JPH0215088B2 publication Critical patent/JPH0215088B2/ja
Granted 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • G06F7/507Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using selection between two conditionally calculated carry or sum values

Landscapes

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

Description

【発明の詳細な説明】
産業上の利用分野 本発明は、デイジタル加算を行なう2入力加算
器に関し、特にビツト長の大きい入力データを高
速に加算することのできるものに関する。従つ
て、コンピユータ、アレイプロセツサ、デイジタ
ル信号処理装置など、高速数値演算を必要とする
あらゆる分野に利用できるものである。 従来例の構成とその問題点 第1図に2入力加算器の従来例を示す。これ
は、26ビツトの加数A(A25……A0)と被加数B
(B25……B0)を加算して、和S(S25……S0)と
キヤリーC26を出力するものである。ここでは、
第1図の回路がCMOS(相補型絶縁ゲート)トラ
ンジスタで構成され、集積回路上に実現されてい
るものとする。 1〜3はCMOSトランジスタ構成のEXOR(排
他的論理和)ゲート、4〜7は同構成のNAND
ゲート、8は同構成のインバータである。 S0=A0B0、C1=A0B0、S1=A1B1C1
C2=A1B1+C1(A1B1)と表わされるから、H
は半加算器、F1は全加算器として動作する。F2
〜F25はF1と全く同じものである。 さて、第1図の従来例の加算時間は、EXOR
ゲートをゲート2段分の伝搬遅延とみて、ゲート
5の2段分の伝搬遅延時間となる。一般に、nビ
ツト加算の場合、ゲート2n段分の加算時間が必
要になり、極めて都合が悪い。 発明の目的 本発明は、上記の如き、従来の加算器の遅い加
算速度を大幅に向上させて、極めて高速の2入力
加算器を提供するために成されたものである。 発明の構成 本発明は、加数と被加数を複数の区分に分割
し、分割された区分加数と区分被加数を、キヤリ
ー入力が“0”の場合と“1”の場合の2通りの
加算結果を区分加算器で同時に求め、1つ下位の
区分加算器から供給されてくる区分キヤリー入力
の値により、上記の2通りの結果から正しい区分
和を選択出力させると同時に正しい区分キヤリー
出力を1つ上位の区分加算器に供給すると共に、
1つ下位の区分加算器から供給される区分キヤリ
ー入力が到来する時刻に合わせて区分加算が丁度
完了(2通りのキヤリー出力を得る)するよう
に、各区分加算器の受け持つビツト長を設定する
ことによつて、ハードウエア(論理ゲート等)に
全く無駄が無く、かつ高速の2入力加算器を実現
しようとするものである。 実施例の説明 本発明の実施例を第2図に示す。同図は、26ビ
ツトの加数A(A25……A0)と被加数B(B25……
B0)を加算して和S(S25……S0)とキヤリー出
力C26を得る場合の実施例である。 加数A、被加数Bは第2図に示す如く5つの区
分に分割され、P1〜P5の5個の区分加算器で
同時に加算される。 10と20と21は4ビツト、30と31は5
ビツト、40と41は6ビツト、50と51は7
ビツトの加算器である。10,20,30,4
0,50の加算器は、キヤリー入力を“0”とし
て加算する加算器であり、21,31,41,5
1の加算器は、キヤリー入力を“1”として加算
する加算器である。加算器21の具体的実施例を
第3図に示す。同図60,61はCMOSトラン
ジスタ構成のEXOR(排他的論理和)ゲートであ
り、62〜64は同構成のNANDゲートである。 S1 5=A5B5C1 5、C1 6=A5B5+C1 5(A5B5)と
表わされるからF5は全加算器となり得る。F6
とF7はF5と全く同じものである。F41中の
65は同構成のEXNORゲート、66は同様成の
NORゲート、65は同構成のインバータである。 S1 44 4=A4B41、C1 5=A4+B4
A4B4+1(A4+B4)と表わされるから、F41
はキヤリー入力を“1”とした場合の全加算器と
して動作し得る。 次に加算器20の具体的実施例は、第3図のF
41のかわりに第4図に示すF40を置換した構
成のものである。ただし、当然のことながら、一
部信号名も次の様に置換する。C1 5〜C1 8→C0 5〜C0 8
S1 4〜S1 7→S0 4〜S0 7。さて、F40中の70は
CMOSトランジスタ構成のEXORゲート、71
は同構成のNANDゲート、72は同様成のイン
バータである。 S0 4=A4B4、C1 5=A4B4と表わされるから、F
40は、半加算器、即ちキヤリー入力が“0”の
場合の全加算器として動作する。 第2図の加算器10,20は前述した加算器2
1と全く同じものであり、加算器30,31,4
0,41,50,51はビツト数に応じて、第3
図の加算器21を拡張したものである。 23,33,43,53はデータ・セレクタで
あり、セレクト入力Sが“0”のとき入力Aを、
Sが“1”のとき、入力Bをそれぞれ選択出力す
るもので、公知の回路で実現できるものである。 24,34,44,54はCMOS構成のOR−
NANDゲートであり、25,35,45,55
は同構成のインバータである。 次に、第2図の実施例の動作について説明す
る。 加算器20,30,40,50の出力には、1
つ下位の区分加算器から供給される区分キヤリー
入力が“0”である場合の区分和S0 7〜S0 4、S0 12
S0 8、S0 18〜S0 13、S0 25〜S0 19と区分キヤリー出力C0 8
C0 13、C0 19、C0 26がそれぞれ出力され、加算器21,
31,41,51の出力には、1つ下位の区分加
算器から供給される区分キヤリー入力が“1”で
ある場合の区分和S1 7〜S1 4、S1 12〜S1 8、S1 18〜S1 13
S1 25〜S1 19と区分キヤリー出力C1 8、C1 13、C1 19、C1 26
がそれぞれ出力される。従つて、区分加算器P2
の区分キヤリー入力C4(区分加算器P1の区分キ
ヤリー出力である)が、データセレクタ23のセ
レクト入力に供給されているから、データ・セレ
クタ23の出力に、区分加算器P2の区分和出力
としてS7〜S4が得られることになる。次に、区分
加算器P2の区分キヤリー出力C8は、C1 8とC0 8
C4とから決定され、次表の真理値表の如くなる。
【表】 表で注意する必要があるのは、C1 8≧C0 8の関係
があるため、C1 8=“0”、C0 8=“1”の場合が存在
しないことである。表から、C8=C1 8(C0 8 +C4)が
得られる。従つて、インバータ25の出力に区分
キヤリー出力C8が得られることになる。すなわ
ち、OR−NANDゲート24とインバータ25で
区分加算器P2の区分キヤリー生成回路を構成し
ている。なお、区分キヤリー生成回路の論理式は
上記のものに限定されず、表に表われない組み合
わせを冗長項として使うことによつて、例えば、 C8=C4C1 84C0 8やC8=C4C1 8+C0 8などが成立す
る。 さて、区分加算器P3〜P5は、上述したP2
と全く同様に動作する。区分加算器P5から最上
位のキヤリーC26が出力される。和Sは、5つの
区分加算器P5〜P1の区分和出力に分割された
形で得られる。 次に、第2図実施例の加算時間について述べ
る。 加算時間は論理ゲートの段数で換算する。 EXORゲート、データ・セレクタはゲート2
段分とする。第3図に示す4ビツトの加算器で
は、和Sの各ビツトがゲート2段分の伝搬遅延時
間ごとに得られ、S1 7とC1 8がゲート8段分の時間
で出力される。 これを第2図の実施例に適用すると、各部信号
は第5図の如くなる。区分加算器P1の区分キヤ
リー出力C4とC1 8とC0 8が揃つてゲート8段分の時
間で、P2の区分キヤリー生成回路(24と2
5)に到達し、ゲート2段後のゲート10段分の時
間でC8が出力される。同時に、C4で選択された
区分和S7〜S4が得られる。区分加算器P3はP2
より1ビツト多い5ビツト加算する。この1ビツ
トの差は区分キヤリー生成回路(24と25)の
ゲート段数、2段に一致する様に設定されてい
る。従つて、第5図に示す如く、C8が出力され
た時点で丁度C1 13とC0 13が出力され、全く無駄時間
なしで、C13が生成される。さらに、C8の出力時
点(ゲート10段目)で、丁度S1 12とS0 12が出力さ
れ、これも無駄時間なしでデータ・セレクタ33
で選択出力され、ゲート12段目でS12〜S8が揃つ
て得られる。以下、全く同様にして、S18〜S13
ゲート14段目で、S25〜S19がゲート16段目でそれ
ぞれ得られる。第5図の矢印で示すように、C4
とC1 8とC0 8、C8とC1 13とC0 13、C13とC1 19とC0 19、C19
C1 26とC0 26がそれぞれ同時に得られるように設定し
てあるので、キヤリー待ち等の無駄時間が全くな
い。最終的に、C26を含めた和Sがゲート16段目
で得られる。 よく使用される24ビツト、32ビツトのデータの
場合、それぞれゲート16段、18段で加算できるか
ら、第1図の従来例の加算時間、ゲート48段、64
段に比較して、3倍から3.5倍の高速加算を実現
している。 なお、初段の区分加算器P1のビツト数をNビ
ツトとするとP2,P3,P4,P5はそれぞれ
N、N+1、N+2、N+3ビツトとなり、デー
タ長が長くなつても同様に増加させていけばよ
い。 データ長が26ビツトの場合、N=3でゲート16
段、N=5でゲート18段分の加算時間を必要とす
る。ハードウエアを少くする意味でNは大きい方
が良いから、データ長が24〜32ビツト程度であれ
ば、第2図の実施例のようにN=4に設定すると
効率が良い。 なお、第2図の実施例では、各種ゲートを
CMOSトランジスタ構成のゲートであると説明
したが、これに限定されることなく、TTL等ど
んな論理ゲートででも実現できることは言うまで
もない。 発明の効果 以上述べてきたように、本発明によれば、従来
の加算器の3倍以上の高速加算を実現する2入力
加算器を得ることができ、高速数値演算を必要と
する分野で極めて高い効果を発揮するものであ
る。
【図面の簡単な説明】
第1図は従来の2入力加算器の具体的回路図、
第2図は本発明の一実施例の加算器の具体的回路
図、第3図は第2図中の加算器21の具体的実施
例を示す回路図、第4図は第2図中の加算器20
の最下位ビツト加算部の具体例を示す回路図、第
5図は第2図実施例の各部信号の出力タイミング
を示す図である。 P1〜P5……区分加算器、10,20,2
1,30,31,40,41,50,51……加
算器、23,33,43,53……データ・セレ
クタ、24と25、34と35、44と45、5
4と55……区分キヤリー生成回路。

Claims (1)

  1. 【特許請求の範囲】 1 加数と被加数を複数の区分に分割した区分加
    数と区分被加数を、キヤリー入力を0として加算
    する第1の加算器と、上記区分加数と上記区分被
    加数を、キヤリー入力を1として加算する第2の
    加算器と、上記第1の加算器または上記第2の加
    算器のいずれか一方の出力を、区分キヤリー入力
    に対応し区分和として選択出力するデータ・セレ
    クタと、上記第1の加算器のキヤリー出力と上記
    第2の加算器のキヤリー出力と上記区分キヤリー
    入力とから、区分キヤリー出力を生成する区分キ
    ヤリー生成回路とから成る区分加算器を複数個具
    備し、1つ下位の区分加算器の区分キヤリー出力
    を上記区分キヤリー入力として入力し、上記区分
    キヤリー出力を1つ上位の区分加算器の区分キヤ
    リー入力に供給し、上記第1、第2の加算器のキ
    ヤリー出力と上記1つ下位の区分加算器から供給
    される上記区分キヤリー入力とが、上記キヤリー
    生成回路の入力に、同じ時刻に到来するように上
    記第1、第2の加算器のビツト長を設定して、上
    記複数個の区分加算器から出力される複数の上記
    区分和を和出力として得るように構成したことを
    特徴とする2入力加算器。 2 第1、第2の加算器のビツト長をNとしたと
    き、1つ上位の区分加算器のビツト長をN+1と
    し、1つ下位の区分加算器のビツト長をN−1と
    したことを特徴とする特許請求の範囲第1項記載
    の2入力加算器。 3 複数の区分加算器のうち、最下位の区分加算
    器のビツト長を4ビツトとしたことを特徴とする
    特許請求の範囲第1項又は第2項記載の2入力加
    算器。
JP58163503A 1983-09-05 1983-09-05 2入力加算器 Granted JPS6055438A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP58163503A JPS6055438A (ja) 1983-09-05 1983-09-05 2入力加算器
US06/643,385 US4682303A (en) 1983-09-05 1984-08-23 Parallel binary adder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58163503A JPS6055438A (ja) 1983-09-05 1983-09-05 2入力加算器

Publications (2)

Publication Number Publication Date
JPS6055438A JPS6055438A (ja) 1985-03-30
JPH0215088B2 true JPH0215088B2 (ja) 1990-04-11

Family

ID=15775097

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58163503A Granted JPS6055438A (ja) 1983-09-05 1983-09-05 2入力加算器

Country Status (2)

Country Link
US (1) US4682303A (ja)
JP (1) JPS6055438A (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60140426A (ja) * 1983-12-27 1985-07-25 Nec Corp キヤリ−回路
JPS622322A (ja) * 1985-06-27 1987-01-08 Nec Corp 加算回路
JPS62111324A (ja) * 1985-06-27 1987-05-22 Nec Corp 加算回路
JPS622320A (ja) * 1985-06-27 1987-01-08 Nec Corp 加算回路
US4737926A (en) * 1986-01-21 1988-04-12 Intel Corporation Optimally partitioned regenerative carry lookahead adder
US4764888A (en) * 1986-03-03 1988-08-16 Motorola, Inc. N-bit carry select adder circuit with double carry select generation
US4849923A (en) * 1986-06-27 1989-07-18 Digital Equipment Corporation Apparatus and method for execution of floating point operations
US4811272A (en) * 1987-05-15 1989-03-07 Digital Equipment Corporation Apparatus and method for an extended arithmetic logic unit for expediting selected floating point operations
US4914617A (en) * 1987-06-26 1990-04-03 International Business Machines Corporation High performance parallel binary byte adder
JPH01244531A (ja) * 1988-03-25 1989-09-28 Fujitsu Ltd 論理回路
DE58909280D1 (de) * 1988-07-29 1995-07-13 Siemens Ag Carry-select-Addierer.
US4982357A (en) * 1989-04-28 1991-01-01 International Business Machines Corporation Plural dummy select chain logic synthesis network
WO1991000568A1 (en) * 1989-06-23 1991-01-10 Vlsi Technology, Inc. Conditional-sum carry structure compiler
US5198993A (en) * 1989-12-04 1993-03-30 Matsushita Electric Industrial Co., Ltd. Arithmetic device having a plurality of partitioned adders
US5018093A (en) * 1990-01-02 1991-05-21 Ibm Corporation High performance self-checking adder having small circuit area
US5204832A (en) * 1990-03-22 1993-04-20 Matsushita Electric Industrial Co., Ltd. Addition apparatus having round-off function
US5285406A (en) * 1990-04-02 1994-02-08 Advanced Micro Devices, Inc. High speed mixed radix adder
US5272662A (en) * 1991-01-31 1993-12-21 The United States Of America As Represented By The Secretary Of The Air Force Carry multiplexed adder
US5208769A (en) * 1991-09-19 1993-05-04 Zilog, Inc. Unsigned integer multiply/divide circuit
US5257218A (en) * 1992-01-06 1993-10-26 Intel Corporation Parallel carry and carry propagation generator apparatus for use with carry-look-ahead adders
US5483478A (en) * 1992-10-16 1996-01-09 Xilinx, Inc. Method and structure for reducing carry delay for a programmable carry chain
US5636157A (en) * 1994-10-03 1997-06-03 International Business Machines Corporation Modular 64-bit integer adder
US5854918A (en) * 1996-01-24 1998-12-29 Ricoh Company Ltd. Apparatus and method for self-timed algorithmic execution
US5764550A (en) * 1996-07-22 1998-06-09 Sun Microsystems, Inc. Arithmetic logic unit with improved critical path performance
US5838602A (en) * 1996-09-11 1998-11-17 Lucent Technologies Inc. Fast carry generation adder having grouped carry muxes
US5875125A (en) * 1997-07-07 1999-02-23 International Business Machines Corporation X+2X adder with multi-bit generate/propagate circuit
JP3487783B2 (ja) * 1999-03-17 2004-01-19 富士通株式会社 加算回路、それを利用した積分回路、及びそれを利用した同期確立回路
US7571204B1 (en) * 2000-09-21 2009-08-04 Stmicroelectronics, Inc. M-bit race delay adder and method of operation
US7139789B2 (en) * 2001-09-24 2006-11-21 Broadcom Corporation Adder increment circuit
GB2396708B (en) * 2002-12-05 2006-06-21 Micron Technology Inc Hybrid arithmetic logic unit
US20040220994A1 (en) * 2003-04-30 2004-11-04 Intel Corporation Low power adder circuit utilizing both static and dynamic logic
US7313586B2 (en) * 2004-03-05 2007-12-25 Broadcom Corporation Adder-subtracter circuit
DE102005033812B3 (de) * 2005-07-20 2006-11-02 Herrfeld, Andreas, Dr. Paralleler skalierbarer und konfigurierbarer Addierer
JP2008004233A (ja) * 2006-06-26 2008-01-10 Yokogawa Electric Corp アドレスパターン発生装置
US20090070400A1 (en) * 2007-09-12 2009-03-12 Technology Properties Limited Carry-select adder

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5892036A (ja) * 1981-11-27 1983-06-01 Toshiba Corp 加算回路

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4417315A (en) * 1981-07-14 1983-11-22 Rockwell International Corporation Method and apparatus for incrementing a digital word
EP0098692A3 (en) * 1982-07-01 1986-04-16 Hewlett-Packard Company Apparatus for adding first and second binary operands
GB2130771B (en) * 1982-08-23 1986-02-12 Hewlett Packard Co Incrementer for operating on n-digit operands
US4559608A (en) * 1983-01-21 1985-12-17 Harris Corporation Arithmetic logic unit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5892036A (ja) * 1981-11-27 1983-06-01 Toshiba Corp 加算回路

Also Published As

Publication number Publication date
US4682303A (en) 1987-07-21
JPS6055438A (ja) 1985-03-30

Similar Documents

Publication Publication Date Title
JPH0215088B2 (ja)
US5040139A (en) Transmission gate multiplexer (TGM) logic circuits and multiplier architectures
US4525797A (en) N-bit carry select adder circuit having only one full adder per bit
US4556948A (en) Multiplier speed improvement by skipping carry save adders
US20020143841A1 (en) Multiplexer based parallel n-bit adder circuit for high speed processing
US4730266A (en) Logic full adder circuit
US6125381A (en) Recursively partitioned carry select adder
US5636157A (en) Modular 64-bit integer adder
US4831578A (en) Binary adder
US5432728A (en) Process for performing numerical computations, and arithmetic unit for implementing this process
US4899305A (en) Manchester carry adder circuit
US4229803A (en) I2 L Full adder and ALU
US7024445B2 (en) Method and apparatus for use in booth-encoded multiplication
US7325025B2 (en) Look-ahead carry adder circuit
Ghafari et al. A new high-speed and low area efficient pipelined 128-bit adder based on modified carry look-ahead merging with Han-Carlson tree method
US6003059A (en) Carry select adder using two level selectors
JPH06195201A (ja) 不等桁上げ方式(varied carry scheme)を用いた高速加算器とそれに関連する方法
US4890127A (en) Signed digit adder circuit
US5357457A (en) Adder with carry look ahead circuit
US5140546A (en) Adder circuit apparatus
US6782406B2 (en) Fast CMOS adder with null-carry look-ahead
US4935892A (en) Divider and arithmetic processing units using signed digit operands
US5889693A (en) CMOS sum select incrementor
JPH0450614B2 (ja)
US4979140A (en) Signed digit adder circuit