JP3412878B2 - 不等桁上げ方式(varied carry scheme)を用いた高速加算器とそれに関連する方法 - Google Patents

不等桁上げ方式(varied carry scheme)を用いた高速加算器とそれに関連する方法

Info

Publication number
JP3412878B2
JP3412878B2 JP25361593A JP25361593A JP3412878B2 JP 3412878 B2 JP3412878 B2 JP 3412878B2 JP 25361593 A JP25361593 A JP 25361593A JP 25361593 A JP25361593 A JP 25361593A JP 3412878 B2 JP3412878 B2 JP 3412878B2
Authority
JP
Japan
Prior art keywords
adder
carry
group
adder group
delay
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
JP25361593A
Other languages
English (en)
Other versions
JPH06195201A (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.)
Motorola Solutions Inc
Original Assignee
Motorola Solutions Inc
Motorola 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 Motorola Solutions Inc, Motorola Inc filed Critical Motorola Solutions Inc
Publication of JPH06195201A publication Critical patent/JPH06195201A/ja
Application granted granted Critical
Publication of JP3412878B2 publication Critical patent/JP3412878B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/508Adding; 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 carry look-ahead circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/386Special constructional features
    • G06F2207/3876Alternation of true and inverted stages

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

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は一般に演算回路に関し、
具体的には高速加算器およびそれに関連する方法に関す
る。
【0002】
【従来の技術】加算器は、種々の集積回路、特にデータ
処理装置ベースの集積回路で役立っている。当業者には
数種類の加算器が知られている。基本的な桁上げ伝搬加
算器(carry propagate adder: CPA) は、同一の全加
算器セルをいくつか(加算器の幅に相当)含んでいる。
全加算器は当業者には周知のものであり、全加算器セル
はそれぞれAオペランド入力,Bオペランド入力,桁上
げ入力,合計出力および桁上げ出力を有する。加算器セ
ルは最下位から最上位へと順序が付けられている。最上
位加算器セルを除く各加算器セルの桁上げ出力は、後続
の加算器セルの桁上げ入力に与えられる。このような形
で加算器セルは連鎖されている。最終合計は各合計出力
ビットを連結しただけのものである。基本的CPAの最
悪のケースの速度は、最下位加算器セルへの有効なオペ
ランド入力の結果、加算器を介して桁上げが伝搬するの
に要する時間となる。どの加算器セルの合計出力および
桁上げ出力も、前の加算器セルから受け取った桁上げ入
力が有効になった後の伝搬遅延まで有効ではないので、
最上位加算器セルの合計出力および桁上げ出力は、最下
位からの桁上げが全部の加算器セルを介して伝搬される
まで有効にならない。基本的CPAのこの速度上の制限
を克服しようと、設計者は種々の代替的方式を設計して
きた。桁上げ先見加算器(CLA)はオペランド・ビッ
トをひとまとめにして、そのグループの桁上げ出力を合
計出力と共に同時に処理する。このような同時処理を行
うと、桁上げを後続の加算器群に伝搬すべきか否か早期
に決定できる。そのため後続の加算器群の加算をより早
く開始できる。既知のCLAは同一加算器群を使用して
おり、その回路は簡単にレイアウトできる。
【0003】桁上げ保存加算器(carry-save adder :C
SA)は各オペランド・ビットの位置に対応する全加算
器セルを有する。しかしながら桁上げ信号は連鎖されて
いない。その代わり、各セルからの桁上げ出力が保存さ
れて、最終的に後続の加算器段階に渡されて、最終合計
出力および桁上げ出力(もしあれば)に含められる。C
SA段階で実現される加算器は当業者には周知のもので
ある。たとえばCSA段階は、モディファイド・ブース
乗算器(modified Booth's multiplier) 内のモディファ
イド・ブース・アレイ(modified Booth's Array)の一部
として役立つ。
【0004】
【課題を解決するための手段】したがって、最下位加算
器群,少なくとも一つの中間加算器群および最上位加算
器群によって構成される、不等桁上げ方式を用いた高速
加算器の一つの形態が提供される。最下位加算器群は、
第1オペランドおよび第2オペランドの対応するビット
をそれぞれ受け取るための第1入力および第2入力,そ
の合計の対応するビットを提供するための第1出力,お
よびその桁上げ出力信号を与えるための第2出力を有す
る。少なくとも一つの中間加算器群はそれぞれ、第1オ
ペランドおよび第2オペランドの対応するビットをそれ
ぞれ受け取るための第1入力および第2入力,前の群の
桁上げ出力信号を受信するための第3入力,その合計の
対応するビットを与えるための第1出力,およびその桁
上げ出力信号を与えるための第2出力を有する。最上位
加算器群は第1オペランドおよび第2オペランドの対応
するビットをそれぞれ受け取るための第1入力および第
2入力,前の群の桁上げ出力信号を受信するための第3
入力,およびその合計の対応するビットを提供するため
の出力を有する。最下位加算器群は、第1オペランドお
よび第2オペランドの対応するビットが有効になった
後、その桁上げ出力に第1遅延を与える。少なくとも一
つの中間加算器群はそれぞれ、第1オペランドおよび第
2オペランドの対応するビットが有効になった後、その
桁上げ出力に第2遅延を与える。第1遅延は第2遅延よ
り短い。
【0005】もう一つの形態では、一つの加算器におい
て第1オペランドおよび第2オペランドを加算するのに
要する総伝搬時間を短縮する方法が提供される。第1オ
ペランドおよび第2オペランドの対応するビットは、所
定数の対応するビットを有する順序付き群に分離され
る。順序付き群はそれぞれ、最下位加算器群および最上
位加算器群を含む、対応する加算器群の入力に与えられ
る。最上位加算器群を除く各加算器群の桁上げ出力は後
続の加算器群の桁上げ入力に結合される。各加算器群の
対応する所定数の合計出力が連結されて、当該加算器の
合計出力を提供する。第1オペランドおよび第2オペラ
ンドの対応するビットから最下位加算器群の対応する桁
上げ出力までの伝搬遅延が減じる。
【0006】上記およびその他の特性ならびに利点は、
添付図面と合わせて以下の詳細な説明からより明確に把
握されよう。
【0007】
【実施例】図1は、本発明に基づく加算器20をブロッ
ク図で示したものである。加算器20は、0.8ミクロ
ン相補形金属酸化膜半導体(CMOS)工程で実現され
る32ビット桁上げ先見加算器(CLA)である。加算
器20は2つの32ビットの入力オペランド(それぞれ
「A0−A31] と「B0−B31」と称する。)を加
算して、「S7−S31」と称される25個の最上位ビ
ットに切り捨てられた合計ビットを提供する。加算器2
0は一般に24ビットの加算器30および8ビットの加
算機構部40を含んでいる。加算機構部40は2つのオ
ペランドの下位8桁の8ビット、それぞれA0−A7,
B0−B7を受け取る。加算機構部40は単に合計ビッ
トS7と、7番目のビット位置からの桁上げ出力(「C
OUT7」と称される)とを生成する。図に示す実施例で
は、入力信号A0−A7,B0−B7は残りの他のオペ
ランド・ビットよりも早く受け取られるので、加算機構
部40を介する伝搬遅延は、加算器20の速度にとって
クリティカル(重大因子)ではない。
【0008】加算器30は、高速24ビットの桁上げ先
見加算器(CLA)である。加算器30は一般に第1加
算器群32,第2加算器群33,第3加算器群34,第
4加算器群35,第5加算器群36,第6加算器群37
を含んでいる。6つの加算器群32〜37はそれぞれ2
つのオペランドのそれぞれから対応するビットを受け取
って、4つの対応する合計出力信号と、当該加算器群の
最上位ビット位置からの桁上げを表す桁上げ出力信号と
を与える。総合計出力S7−S31は、加算器30内の
各群の合計出力と、加算機構部40からのS7とを連結
したものである。
【0009】加算器群32は加算器30の最下位加算器
群であり、加算機構部40からの信号COUT7と、オペラ
ンド・ビットA8−A11,B8−B11とを受け取
る。加算器群32は対応する4つの合計出力ビットS8
−S11と、「COUT11 」と称される桁上げ出力信号と
を加算器群33に与える。加算器群33は信号COUT11
と、後続のオペランド・ビットA12−A15,B12
−B15とを受け取って、対応する合計出力信号S12
−S15と、「反転COUT15 」と称される桁上げ出力信
号とを加算器群34に与える。加算器群34は反転C
OUT15 信号と、後続のオペランド・ビットA16−A1
9,B16−B19とを受け取って、対応する合計出力
信号S16−S19と、「COUT19 」と称される桁上げ
出力信号とを加算器群35に与える。加算器群35は信
号COUT19 と、後続のオペランド・ビットA20−A2
3,B20−B23とを受け取って、対応する合計出力
信号S20−S23と、「反転COUT23 」と称される桁
上げ出力信号とを加算器群36に与える。加算器群36
は反転COUT23 信号と、後続のオペランド・ビットA2
4−A27,B24−B27とを受け取り、対応する合
計出力信号S24−S27と、COUT27 と称される桁上
げ出力信号とを加算器群37に与える。加算器群37は
加算器30の最上位加算器群であり、信号COUT27 と、
後続のオペランドビットA28−A31,B28−B3
1とを受け取り、対応する合計出力信号S28−S31
を与える。加算器群(加算器群32は特別であり、これ
は除く)の間では、桁上げ出力信号の符号は、各加算器
群間の論理レベルを1つ下げるために反転する。加算器
30は、加算器群32−37が必ずしも同一ではないと
いう点で、既知のCLAと異なる。寧ろ、加算器群32
−37は、当該加算器群にとってクリティカルである、
論理回路を介する遅延を減じることによって、その加算
器群の順序(重み)を利用している。加算器30を介す
る総伝搬遅延は、有効入力が結果として有効出力になる
のに要する最長の時間として定義できる。最悪の場合で
も、加算機構部40から桁上げ(COUT7)を受け取っ
て、各加算器群を介して伝搬するのは、合計信号S28
−S31の値に影響を与える前に行われる。
【0010】一般に、加算器30は3つの異なる優先順
位方式を実行する。最下位加算器群32の場合、有効な
オペランド(または桁上げ)入力から有効な桁上げ出力
までの遅延を減じることが極めて重要である。このた
め、加算器群32の論理設計および回路設計によってこ
の遅延を減じる。合計出力の提供の遅延はクリティカル
ではない。なぜなら合計出力は、桁上げが全部の加算器
群を通じて伝搬される前に有効になればいいからであ
る。したがってオペランド入力および桁上げ入力から桁
上げ出力COUT11 までの伝搬遅延を改善するために、合
計出力信号S8−S11を与える速度を犠牲にしてい
る。
【0011】中間加算器群33〜36の場合には、桁上
げ入力から桁上げ出力への伝搬を迅速化する必要、すな
わちCOUT11からCOUT27までの遅延を減じる必要があ
る。一方、オペランド入力は、受け取った桁上げ入力が
有効になる前に、それが有効になる時間が充分ある。こ
のため中間加算器群は、たとえ他の経路における遅延の
増加を犠牲にしても、桁上げ入力から桁上げ出力までの
遅延経路を減じることである。これより上位の加算器群
35,36も、桁上げ入力に応答してそれぞれの合計出
力を迅速に与えなければならない。なぜなら最上位群3
7は、桁上げ入力後すぐに出力を提供できるからであ
る。
【0012】最上位加算器群37の場合、オペランド入
力は、桁上げ入力が有効になるまでに最大のセットアッ
プ時間を有する。しかしながら有効な桁上げ入力後に加
算器群37がその合計出力を与える速度は、加算器30
の総伝搬遅延にとってクリティカルである。このため加
算器37の論理設計および回路設計は、有効な桁上げ入
力から有効な合計出力までの遅延経路を短縮することで
ある
【0013】表1は、加算器30内の種々の群に関連し
たゲート遅延の数を示したものである。数字は、一つの
ゲート遅延を与えるものとして、伝送ゲートと複合ゲー
トの両方をカウントしている。信号のクリティカル・パ
ス(限界経路)にはアステリスク(*)を付けている。
【0014】
【表1】 加算器群 A/Bから CINから CINから A/Bから COUTOUTOUTOUT 32 4* 4* 5 5 33 5 1* 5 5 34 6 1* 4 5 35 6 1* 4 7 36 5 1* 4 7 37 該当なし 該当なし 3* 7 注意すべきことは、各加算器群内のオペランド・ビット
の最適数が、オペランドのサイズ,使用技術,およびフ
ァンアウトなどの技術を使用する論理ゲートの特性に依
存することである。しかしながらどの遅延を減じるかに
ついての決定は前記の規則に依存している。SOUT が有
効になった時点で有効になるように、群37の桁上げ出
力を提供することを所望する場合には、若干の変更が生
じる。その場合、CINからCOUT までの遅延と、CIN
らSOUT までの遅延を共に減じなければならない。
【0015】各加算器群のクリティカル・パスを介する
遅延は、最小数の論理レベルを用いて妥当な論理関数を
実現することによって減じる。これは、技術的に使用可
能な論理ゲートを用いて実際に実現できる。図に示す実
施例では、加算器30は0.8ミクロンCMOS技術を
使用している。このためたとえば、A8−A11および
B8−B11からCOUT11 までの事実上の最小伝搬時間
には、4つのゲート遅延が必要になる。この事実上の最
小のゲート遅延数は、論理ゲートが有する入力および出
力の数が無制限の場合に論理関数を実行するための理論
上の最小ゲート遅延数(2)とは区別すべきである。
【0016】図2〜図7は、図1の加算器群32〜37
を個別に論理図で示したものである。図2は、図1の加
算器群32の概略図を示している。加算器群32はオペ
ランド入力ビットA8−A11,B8−B11と、桁上
げ入力信号COUT7とを受け取って、対応する合計出力信
号S8−S11と桁上げ出力信号COUT11 とを与えてい
る。Aの各ビットは、対応するBビットと共に排他的論
理和ゲートへの入力として与えられる。排他的論理和ゲ
ートの出力は「Pj 」と称され、ここでjは当該加算器
群内の当該ビット位置に等しい。またAの各ビットは、
対応するBビットと共にNANDゲートへの入力として
与えられる。NANDゲートの出力は「反転Gj 」と称
される。反転Gj 信号(反転G3を除く)はそれぞれ、
インバータに与えられ、インバータの出力は「Gj 」と
称される。ついで信号Pj ,GjおよびCl(バッファ
リングのため2回反転される)が2つのレベルのNAN
Dゲートに結合されて信号COUT11 を提供する。このた
めA8−A11/ B8−B11からCOUT11 まで、また
はCOUT7からCOUT11 までの最悪の伝搬遅延は4論理レ
ベルであり、これは標準0.8ミクロンCMOS論理ゲ
ートを用いた最小数の論理レベルである。図に示した加
算器20の実施例では、加算機構部40はバッファリン
グ可能なように充分なセットアップ時間を有する状態
で、信号COUT7を与えている。信号COUT7のタイミング
がクリティカルである他の実施例では、バッファリング
を排除してもよい。
【0017】図3は、図1の加算器群33の概略図を示
したものである。入力信号,出力信号および内部信号に
は図2の加算器群32の対応する信号と同じ記号が付け
られている。しかしながら桁上げ出力信号の反転C
OUT15 は、負の論理を用いて与えられる。またCOUT11
から反転COUT15 までの遅延はここではクリティカルで
あり、複合CMOS AND−NORゲートを用いて実
現されている。
【0018】図4は、図1の加算器群34の概略図を示
したものである。加算器群は負の論理桁上げ入力である
反転COUT15 を受け取って、正の論理信号COUT19 を与
える。反転COUT15 信号は、ただ一つの複合CMOS
OR−NANDゲートを介して伝搬し、このゲートは負
の論理に対する加算器群33のAND−NORゲートに
等しい。
【0019】図5は、図1の加算器群35を概略図で示
したものである。加算器群35は加算器群33と似通っ
ている。なぜなら加算器群35は複合AND−NORゲ
ートを介して信号COUT19 を伝搬して、反転COUT23
号を与えるからである。しかしながら群35の方が最上
位加算器群37に近いので、COUT19 が有効になった
後、より迅速に合計信号S20−S23を伝搬する必要
がある。そのため桁上げ入力信号COUT19 と、1インバ
ータ・レベルおよび2インバータ・レベルを介してC
OUT19 をバッファリングすることによって形成されるそ
の補数は、ただ一つの追加インバータ遅延の後、CMO
S送信ゲートを導通状態にして合計信号S20−S23
を伝搬する。
【0020】図6は図1の加算器群36を概略図で示し
たものである。加算器群36は加算器群34と似通って
いる。なぜなら加算器群36は複合OR−NANDゲー
トを介して反転COUT23 を伝搬して、信号COUT27 を与
えるからである。さらに加算器群36は、加算器群35
と同様、最上位加算器群37に近いので、反転COUT23
が有効になった後、より迅速に合計信号S24−S27
を伝搬する必要がある。このため桁上げ入力信号の反転
OUT23 と、1インバータ・レベルおよび2インバータ
・レベルを介して反転COUT23 をバッファリングするこ
とによって形成されるその補数は、ただ一つの追加イン
バータ遅延の後、CMOS送信ゲートを導通状態にして
合計信号S24−S27を伝搬する。
【0021】図7は図1の加算器群37を概略図で示し
たものである。加算器群37は、桁上げ入力信号C
OUT27 が有効になった後、できるだけ速く合計信号S2
8−S31を与えなければならない。このためCOUT27
とその補数は、ただ一つの追加インバータ遅延の後、C
MOS送信ゲートを起動して合計出力信号S28−S3
1を与える。
【0022】表1に関連して再び図1を参照すると、加
算器30は、統一されたもしくは同一の加算器群設計を
有する加算器に比べて、総伝搬遅延を減少させることが
明かとなろう。たとえば加算器群32が反復された場合
には、総伝搬遅延は約14ゲート遅延だけ増加しよう。
多くの用途において加算器の速度はクリティカルであ
り、加算器速度のこのような改良は、集積回路の性能全
体を改善する。
【0023】本発明の一つの側面は、最下位加算器群
(32)が第1オペランドおよび第2オペランドの対応
するビットを受け取ってから、最下位加算器群(32)
がその桁上げ出力を与えるまでの第1の遅延が第1の所
定数のゲート遅延に等しく、また中間加算器群(33,
34,35,36)がそれぞれ第1オペランドおよび第
2オペランドの対応するビットを受け取ってから、中間
加算器群(33,34,35,36)がそれぞれその桁
上げ出力を与えるまでの第2の遅延が、第2の所定数の
ゲート遅延に等しいことである。
【0024】本発明の別の側面は、第1の所定数のゲー
ト遅延が、所定の技術を用いた事実上の最小数のゲート
遅延であるという特色を有することである。
【0025】本発明のさらに別の側面は、桁上げ入力信
号が有効になった後、最上位加算器群(37)がその合
計出力に第3遅延を与え、また桁上げ入力信号が有効に
なった後、少なくとも一つの中間加算器群(33,3
4,35,36)がその合計に第4遅延を与え、第3遅
延は第4遅延よりも短いことである。
【0026】本発明のさらなる側面は、第3遅延が第3
の所定数のゲート遅延に等しく、また第4の所定数は第
4の所定数のゲート遅延に等しいことである。
【0027】本発明のさらに他の側面は、第3の所定数
のゲート遅延が、所定の技術を用いた事実上の最小数の
ゲート遅延としての特徴を有することである。
【0028】本発明のもう一つの側面は、最下位加算器
群(32)がさらに一つの桁上げ入力信号を受信して、
その桁上げ入力信号が有効になった後にその桁上げ出力
信号に第5遅延を与え、その第5遅延が第2遅延より短
いことである。
【0029】本発明のさらにもう一つの側面は、第5遅
延が第5の所定数のゲート遅延と等しいことである。
【0030】本発明の他のもう一つの側面は、第5の所
定数のゲート遅延が、所定の技術を用いた事実上の最小
数のゲート遅延としての特徴を有することである。
【0031】本発明のまた別の側面は、最上位加算器群
(37)が桁上げ入力信号を受信してから、最上位加算
器群(37)がその合計を提供するまでの第1遅延が第
1の所定数のゲート遅延に等しく、また中間加算器群
(33,34,35,36)がそれぞれ桁上げ入力信号
を受信してから、中間加算器群(33,34,35,3
6)がそれぞれその合計を与えるまでの第2遅延が第2
の所定数のゲート遅延に等しいことである。
【0032】本発明のさらに他の側面は、第1遅延が第
1の所定数のゲート遅延に等しく、また第2遅延が第2
の所定数のゲート遅延に等しいことである。
【0033】本発明のさらに別の側面は、第1の所定数
のゲート遅延は、所定の技術を用いた事実上の最小数の
ゲート遅延としての特徴を有することである。
【0034】本発明のもう一つの側面は、この方法が、
最上位加算器群(37)の対応する桁上げ入力から対応
する合計出力までの伝搬遅延を減じる段階によって構成
されることである。
【0035】本発明のさらにもう一つの側面は、この方
法がさらに、少なくとも一つの中間加算器群(33,3
4,35,36)の桁上げ入力から桁上げ出力までの伝
搬遅延を減じる段階によって構成されることである。
【0036】本発明のさらに別の側面は、この方法がさ
らに、桁上げ入力を最下位加算器群(32)に与える段
階、および最下位加算器群(32)の桁上げ入力から最
下位加算器群(32)の桁上げ出力までの論理遅延を減
じる段階によって構成されることである。
【0037】本発明を好適実施例に即して説明してきた
が、当業者には、本発明が種々の方法で変更でき、ここ
に具体的に詳述した実施例以外にも多くの実施例を想定
できることが明かであろう。たとえば24ビットの加算
器30における加算器群32〜37の優先順位方式は、
種々のサイズの加算器に適用してもよい。一つの明かな
拡張は32ビットの加算器を形成することであろう。こ
のような加算器では、最下位加算器群は、有効なオペラ
ンド入力から有効な桁上げ出力までの遅延を減じる。中
間群は、桁上げ入力から桁上げ出力までの遅延を減じよ
う。最上位群は桁上げ入力から合計出力までの遅延を減
じよう。加算器30を異なる技術を用いて実現した場合
には、各群が処理するビット数,論理ゲート・ファンア
ウト,および複合論理ゲートの可用度が変化するかもし
れないが、相対的な優先順位は変わらない。したがって
添付請求の範囲は、本発明の真正の意図および範囲に属
する本発明のすべての変形をカバーすることを意図して
いる。
【図面の簡単な説明】
【図1】本発明に基づく加算器をブロック図で示したも
のである。
【図2】図1の各加算器群の一つを論理図で示したもの
である。
【図3】図1の各加算器群の一つを論理図で示したもの
である。
【図4】図1の各加算器群の一つを論理図で示したもの
である。
【図5】図1の各加算器群の一つを論理図で示したもの
である。
【図6】図1の各加算器群の一つを論理図で示したもの
である。
【図7】図1の各加算器群の一つを論理図で示したもの
である。
【符号の説明】
20 加算器 30 加算器 32,33,34,35,36,37 加算器群 40 加算機構部
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭61−110236(JP,A) 特開 昭63−226728(JP,A) 特公 昭62−30451(JP,B2)

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 不等桁上げ方式を用いた高速桁上げ先見
    加算器(30)であって、 最下位加算器群(32)から少なくとも1つの中間加算
    器群(33,34,35,36)を経て最上位加算器群
    (37)へ順序付けられた複数の加算器群であって、前
    記複数の加算器群の各々は第1および第2オペランドの
    予め定める数の対応するビットに応答して複数の合計信
    号を生成し、 前記予め定める数は前記最下位加算器群(32)および
    前記少なくとも1つの中間加算器群(33,34,3
    5,36)の第1の中間加算器群(33)双方に対し同
    じであり、 前記最下位加算器群(32)は前記第1および第2オペ
    ランドの対応するビットをそれぞれ受信するための第1
    および第2入力、その合計の対応するビットを提供する
    ための第1出力、およびその桁上げ出力信号を与えるた
    めの第2出力を有し、 各中間加算器群(33,34,35,36)は前記第1
    および第2オペランドの対応するビットをそれぞれ受信
    するための第1および第2入力、次のより下位の群から
    の桁上げ出力信号を受信するための桁上げ入力、その合
    計の対応するビットを提供するための第1出力、および
    その桁上げ出力信号を与えるための第2出力を有し、 前記最上位加算器群(37)は前記第1および第2オペ
    ランドの対応するビットをそれぞれ受信するための第1
    および第2入力、前記少なくとも1つの中間加算器群
    (33,34,35,36)における最上位の加算器群
    (36)からの桁上げ出力信号を受信するための桁上げ
    入力、およびその合計の対応するビットを提供するため
    の出力を有し、 前記第1および第2オペランドの前記対応するビットが
    有効になった後、前記最下位加算器群(32)は前記桁
    上げ出力信号に第1遅延を与える第1桁上げ生成回路を
    含み、 前記第1および第2オペランドの前記対応するビットが
    有効になった後、前記少なくとも1つの中間加算器群
    (33,34,35,36)の少なくとも1つは前記桁
    上げ出力に第2遅延を与える前記第1桁上げ生成回路と
    は異なる第2桁上げ生成回路を含み、ここで前記第1遅
    延は前記第2遅延より短く、 前記桁上げ入力が有効に
    なった後、前記最上位加算器群(37)は前記合計に第
    3遅延を与える第1合計生成回路と、 前記桁上げ入力が有効になった後、前記少なくとも1つ
    の中間加算器群(33,34,35,36)の前記最上
    位の中間加算器群(36)は前記合計に第4遅延を与え
    る前記第1合計生成回路とは異なる第2合計生成回路と
    をさらに含み、 ここで前記第4遅延は前記第3遅延より大きいこと、 を特徴とする不等桁上げ方式を用いた高速桁上げ先見加
    算器(30)。
  2. 【請求項2】 桁上げ先見加算器(30)において第1
    および第2オペランドを加算するのに要する総伝搬時間
    を減じる方法であって、 前記第1および第2オペランドの対応するビットを、等
    しいビット数を有する順序付き群に分離する段階と、 最小位加算器群(32)から少なくとも1つの中間加算
    器群(33,34,35,36)を経て最上位加算器群
    (37)へ順序付けられた複数の加算器群の対応する加
    算器群の入力へ前記順序付き群の各々を提供する段階
    と、 前記複数の加算器群の各々における前記第1および第2
    オペランドの対応するビットを加算し、前記複数の加算
    器群の各々に対応する合計出力および前記最上位加算器
    群(37)を除く前記複数の加算器群の各々に桁上げ出
    力を与える段階と、 前記最上位加算器群(37)を除く各加算器群の前記桁
    上げ出力を次のより上位の加算器群の桁上げ入力に結合
    する段階と、 各加算器群の前記対応する合計出力を連結して、前記加
    算器(30)の合計出力を提供する段階と、 第1桁上げ生成回路用いて、前記最下位加算器群(3
    2)の前記桁上げ出力に前記第1および第2オペランド
    の前記対応するビットから第1伝搬遅延を与える段階
    と、 前記第1桁上げ生成回路とは異なる第2桁上げ生成回路
    を用いて、前記少なくとも1つの中間加算器群(33,
    34,35,36)の1つの前記桁上げ出力に前記第1
    および第2オペランドの前記対応するビットから第2伝
    搬遅延を与える段階と、から成り、前記第1伝搬遅延は
    前記第2伝搬遅延より短く、 第1合計生成回路を用いて、前記少なくとも1つの中間
    加算器群(33,34,35,36)の1つの前記合計
    出力に前記桁上げ入力からの第3伝搬遅延を与える段階
    と、 前記第1合計生成回路とは異なる第2合計生成回路を用
    いて、前記最上位加算器群(37)の前記合計出力に前
    記桁上げ入力からの第4伝搬遅延を与える段階とをさら
    に含み、 前記第3伝搬遅延は前記第4伝搬遅延より長いことを特
    徴とする桁上げ先見加算器(30)において第1および
    第2オペランドを加算するのに要する総伝搬時間を減じ
    る方法。
JP25361593A 1992-09-22 1993-09-17 不等桁上げ方式(varied carry scheme)を用いた高速加算器とそれに関連する方法 Expired - Fee Related JP3412878B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US94941392A 1992-09-22 1992-09-22
US949413 1992-09-22

Publications (2)

Publication Number Publication Date
JPH06195201A JPH06195201A (ja) 1994-07-15
JP3412878B2 true JP3412878B2 (ja) 2003-06-03

Family

ID=25489042

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25361593A Expired - Fee Related JP3412878B2 (ja) 1992-09-22 1993-09-17 不等桁上げ方式(varied carry scheme)を用いた高速加算器とそれに関連する方法

Country Status (3)

Country Link
US (1) US5375081A (ja)
EP (1) EP0590251A2 (ja)
JP (1) JP3412878B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5581497A (en) * 1994-10-17 1996-12-03 Intel Corporation Carry skip adder with enhanced grouping scheme
US5619442A (en) * 1995-04-07 1997-04-08 National Semiconductor Corporation Alternating polarity carry look ahead adder circuit
US6205463B1 (en) * 1997-05-05 2001-03-20 Intel Corporation Fast 2-input 32-bit domino adder
US6496846B1 (en) * 1999-07-13 2002-12-17 Hewlett-Packard Company Conditional carry encoding for carry select adder
WO2002056538A2 (en) * 2001-01-12 2002-07-18 Broadcom Corporation Implementation of the shai algorithm
JP2004013270A (ja) * 2002-06-04 2004-01-15 Oki Electric Ind Co Ltd 桁上げ先見加算器
US7206802B2 (en) * 2002-10-10 2007-04-17 International Business Machines Corporation Hybrid carry look ahead/carry select adder including carry logic generating complementary hot carry signals, and method for producing the carry logic
KR100714316B1 (ko) * 2004-10-22 2007-05-02 광주과학기술원 혼합형 가산기
US10289413B2 (en) 2017-10-02 2019-05-14 Advanced Micro Devices, Inc. Hybrid analog-digital floating point number representation and arithmetic

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3372377A (en) * 1965-08-02 1968-03-05 Sperry Rand Corp Data processing system
IL59907A0 (en) * 1980-04-23 1980-06-30 Nathan Grundland Arithmetic logic unit
DE3481559D1 (de) * 1983-12-27 1990-04-12 Nec Corp Eine, fuer eine arithmetische operation hoher geschwindigkeit geeignete, uebertragsschaltung.
US4737926A (en) * 1986-01-21 1988-04-12 Intel Corporation Optimally partitioned regenerative carry lookahead adder
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
JPS6450123A (en) * 1987-08-20 1989-02-27 Matsushita Electric Ind Co Ltd Adding device
US5047974A (en) * 1987-11-24 1991-09-10 Harris Corporation Cell based adder with tree structured carry, inverting logic and balanced loading
US4905180A (en) * 1988-12-16 1990-02-27 Intel Corporation MOS adder with minimum pass gates in carry line
US5136539A (en) * 1988-12-16 1992-08-04 Intel Corporation Adder with intermediate carry circuit
US5095458A (en) * 1990-04-02 1992-03-10 Advanced Micro Devices, Inc. Radix 4 carry lookahead tree and redundant cell therefor

Also Published As

Publication number Publication date
EP0590251A3 (ja) 1994-08-31
US5375081A (en) 1994-12-20
EP0590251A2 (en) 1994-04-06
JPH06195201A (ja) 1994-07-15

Similar Documents

Publication Publication Date Title
US7043520B2 (en) High-speed/low power finite impulse response filter
US3993891A (en) High speed parallel digital adder employing conditional and look-ahead approaches
US5325320A (en) Area efficient multiplier for use in an integrated circuit
JP2594428B2 (ja) キヤリー伝播遅延を短縮する方法および装置
US5278783A (en) Fast area-efficient multi-bit binary adder with low fan-out signals
US4525797A (en) N-bit carry select adder circuit having only one full adder per bit
US6411980B2 (en) Data split parallel shifter and parallel adder/subtractor
US6301600B1 (en) Method and apparatus for dynamic partitionable saturating adder/subtractor
JPH0215088B2 (ja)
US20020143841A1 (en) Multiplexer based parallel n-bit adder circuit for high speed processing
US4556948A (en) Multiplier speed improvement by skipping carry save adders
US5818747A (en) Small, fast CMOS 4-2 carry-save adder cell
US6990510B2 (en) Wide adder with critical path of three gates
JP3412878B2 (ja) 不等桁上げ方式(varied carry scheme)を用いた高速加算器とそれに関連する方法
US7170317B2 (en) Sum bit generation circuit
CN110633068A (zh) 行波进位加法器
JPH0552530B2 (ja)
US5257217A (en) Area-efficient multiplier for use in an integrated circuit
US6484193B1 (en) Fully pipelined parallel multiplier with a fast clock cycle
US6782406B2 (en) Fast CMOS adder with null-carry look-ahead
US5982194A (en) Arithmetic and logic function circuits optimized for datapath layout
Anand et al. Improved modified area efficient carry select adder (MAE-CSLA) without multiplexer
JPH0366693B2 (ja)
US6631393B1 (en) Method and apparatus for speculative addition using a limited carry
US5944777A (en) Method and apparatus for generating carries in an adder circuit

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20090328

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090328

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100328

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100328

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110328

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees