JP2000330764A - 加算器および集積回路 - Google Patents

加算器および集積回路

Info

Publication number
JP2000330764A
JP2000330764A JP2000137224A JP2000137224A JP2000330764A JP 2000330764 A JP2000330764 A JP 2000330764A JP 2000137224 A JP2000137224 A JP 2000137224A JP 2000137224 A JP2000137224 A JP 2000137224A JP 2000330764 A JP2000330764 A JP 2000330764A
Authority
JP
Japan
Prior art keywords
input
carry
adder
inputs
multiplexer
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
JP2000137224A
Other languages
English (en)
Other versions
JP3537378B2 (ja
Inventor
Edward Clayton Morgan
クレイトン モルガン エドワード
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies 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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of JP2000330764A publication Critical patent/JP2000330764A/ja
Application granted granted Critical
Publication of JP3537378B2 publication Critical patent/JP3537378B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48—Methods 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/50—Adding; Subtracting
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48—Methods 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/50—Adding; Subtracting
    • G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/509—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804—Details
    • G06F2207/3808—Details concerning the type of numbers or the way they are handled
    • G06F2207/3812—Devices capable of handling different types of numbers
    • G06F2207/382—Reconfigurable for different fixed word lengths
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804—Details
    • G06F2207/3808—Details concerning the type of numbers or the way they are handled
    • G06F2207/3828—Multigauge devices, i.e. capable of handling packed numbers without unpacking them

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)

Abstract

(57)【要約】 【課題】 2個より多くのオペランドを入力可能な加算
器を実現する。 【解決手段】 加算器10は、加算されるべきオペラン
ドの一部22,24,26を、対応するキャリーイン入
力50,52とともに受け取る第1加算器回路20を有
する。第1加算器回路20は、和出力28およびキャリ
ーアウト出力54,56を提供する。第2加算器回路3
0は、加算されるべきオペランドの別の部分32,3
4,36を、対応するキャリーイン入力68,70とと
もに受け取る。第1加算器回路20と第2加算器回路3
0の間のマルチプレクサ58,62は、第2加算器回路
30へのキャリーイン入力68,70が第1加算器回路
20へのキャリーイン入力50,52と同一であるか、
それとも、第2加算器回路30へのキャリーイン入力6
8,70が独立であるかを決定する。本発明の加算器
は、3個以上の加算器回路で構成することも可能であ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、加算器に関し、特
に、計算スループットを増大させるためにスプリット加
算(split-add operation)演算が利用可能な加算器に関
する。
【0002】
【従来の技術】加算は、計数、減算、乗算およびフィル
タリングなどの多くの処理演算の基礎となる。2進数を
加算するさまざまな加算器回路は、実装において、加算
演算の実行速度と、1加算演算を実行するためのハード
ウェア量(集積回路上に要求される面積で測る)との間
のトレードオフを提供する。符号付き絶対値、1の補
数、および2の補数という3種類の2進数表現が利用可
能であるが、2の補数表現を用いた計算が効率的であ
る。加算器は、減数の2の補数を生成して被減数に加算
することによって、減算を実行するために使用可能であ
る。減数の2の補数は、減数を1の補数表現で提供し、
加算器へのキャリーイン入力を用いて1を加算すること
によって、加算器の内部で生成可能である。
【0003】
【発明が解決しようとする課題】スプリット加算器は、
非スプリットモードでは比較的大きいビット数のオペラ
ンドに作用することが可能であるとともに、スプリット
モードでは比較的小さいビット数のオペランドに複数の
加算器として作用することが可能な加算器である。スプ
リット加算器は、既存のハードウェアを利用して精度と
加算器の数との間のトレードオフを考慮し、追加のハー
ドウェアを必要とせずに計算スループットを増大させる
ために使用される。2つのオペランドの上位ビット部分
が加算器の第1部分で加算され、2つのオペランドの下
位ビット部分が加算器の第2部分で加算されるようなス
プリット加算器は知られている。しかし、公知のスプリ
ット加算器は、2個より多くのオペランドを入力として
受け入れることはできない。
【0004】
【課題を解決するための手段】本発明によれば、集積回
路は、加算されるべきオペランドの一部を、対応するキ
ャリーイン入力とともに受け取る第1加算器回路を有す
る。第1加算器回路は、和出力およびキャリーアウト出
力を提供する。第2加算器回路は、加算されるべきオペ
ランドの別の部分を、対応するキャリーイン入力ととも
に受け取る。第1加算器回路と第2加算器回路の間のマ
ルチプレクサは、第2加算器回路へのキャリーイン入力
が第1加算器回路へのキャリーイン入力と同一である
か、それとも、第2加算器回路へのキャリーイン入力が
独立であるかを決定する。
【0005】
【発明の実施の形態】3入力加算器10の実施例の概略
図を図1に示す。3入力加算器10は、スプリットモー
ドでは、複数の加算器として動作し、加算器どうしの間
では多重化を行い、スプリットモードにおける各加算器
は2個より多くのオペランド入力を有する。加算器10
は、マイクロプロセッサ、マイクロコントローラあるい
はディジタル信号プロセッサのような集積回路の一部と
して製造可能である。加算器10は、複数の多入力加算
器(例えば、スプリット加算器20およびスプリット加
算器30)からなることが可能である。オペランドA、
BおよびCのそれぞれの下位ビットは、入力22、24
および26として、3入力加算器として動作する加算器
20にそれぞれ提供される。オペランドA、BおよびC
のそれぞれの上位ビットは、入力32、34および36
として、3入力加算器として動作する加算器30にそれ
ぞれ提供される。
【0006】加算器20および30はそれぞれ、入力さ
れるキャリーイン入力の数と出力するキャリーアウト出
力の数は同数である。通常、キャリーイン入力およびキ
ャリーアウト出力の数は、オペランドの数より1だけ小
さい。オペランドはI:2コンプレッサ(図示せず)に
よってI個から2個の入力に圧縮することが可能である
(I. Koren, "Computer Arithmetic Algorithms"を参
照)。キャリーイン入力50および52は、加算器20
に提供されるとともに、それぞれマルチプレクサ(MU
X)60および58への第1入力でもある。3入力加算
器として動作する加算器20は、キャリーアウト出力5
4および56を生成し、これらはそれぞれマルチプレク
サ60および58への第2入力となる。モード選択信号
62は、マルチプレクサ60および58へのキャリー選
択入力となる。キャリー選択入力は、2つの状態のうち
の1つをとり、マルチプレクサ60および58への入力
のいずれをそれぞれの出力70および68として選択す
るかを決定する。出力70および68は、3入力加算器
30へのキャリーイン入力となる。
【0007】3入力加算器として動作する加算器20
は、入力22、24および26と、キャリーイン入力5
0および52を受け取る下位ビット加算器である。加算
器20は、これらの入力の和である多ビット和28を出
力する。また、加算器20は、キャリーアウト出力54
および56を出力する。
【0008】加算器30は、入力32、34および36
と、キャリーイン入力70および68を受け取る上位ビ
ット加算器である。3入力加算器として動作する加算器
30は、これらの入力の和である多ビット和38を出力
する。また、加算器30は、キャリーアウト出力72お
よび74を出力する。
【0009】加算器20および30は、任意のタイプの
加算器とすることが可能であり、単一の加算器として動
作し、また、スプリット加算モードでは、単一の加算器
として動作するときよりもそれぞれ低精度の2つの独立
の加算器として動作する。単一加算器動作モードでは、
加算されるべき各オペランドの下位ビットは加算器20
に入力され、加算されるべき各オペランドの上位ビット
は加算器30に入力される。好ましい実施例では、加算
器20および30はそれぞれ、同じビット数のオペラン
ドを加算することが可能であるが、本発明はこの場合に
は限定されない。以下で説明する例では、3個のnビッ
トオペランドが加算され、各オペランドの半数のビット
(n/2ビット)が各加算器に入力されるが、本発明は
この場合には限定されない。
【0010】例えば、入力22は、入力Aの下位n/2
ビットを表し、入力32は、入力Aの上位n/2ビット
を表す。入力24は、入力Bの下位n/2ビットを表
し、入力34は、入力Bの上位n/2ビットを表す。同
様に、入力26は、入力Cの下位n/2ビットを表し、
入力36は、入力Cの上位n/2ビットを表す。
【0011】単一加算器としての動作では、キャリーイ
ン入力50および52は加算器20に入力される。加算
演算の場合、キャリーイン入力50および52は通常0
である。このため、加算器20からのキャリーアウト出
力54および56は、加算器30へのキャリーイン入力
70および68となる。3入力加算器として動作する加
算器20は、入力22、24および26と、キャリーイ
ン入力50および52を受け取る。加算器20は、和の
下位n/2ビットを表す多ビット和28と、キャリーア
ウト出力54および56とを出力する。加算器20から
のキャリーアウト出力は、モード選択信号62の状態に
基づいて、マルチプレクサ60および58を通って出力
70および68となり、加算器30へのキャリーイン入
力となる。所望の選択を実行するために2状態を有する
モード選択信号を生成する方法は当業者には周知であ
る。加算器30は、和の上位n/2ビットを表す和出力
と、キャリーアウト出力72および74とを出力する。
それぞれnビットのm個のオペランドが加算されると、
和は[n+(m−1)]ビットとなりうる。こうして、
加算器20および30に入力されるオペランドの和は、
加算器20からの和出力28に、加算器30からの和出
力38を連結したものによって表される。キャリーアウ
ト出力72および74は、和の最上位ビットを計算する
ために使用される。
【0012】上の例を続けると、加算器10がスプリッ
ト加算器演算動作の場合、加算器20は、3個のオペラ
ンドを加算することが可能であり、加算器30もまた、
独立の3個のオペランドを加算することが可能である。
ただし、スプリット加算器動作におけるオペランドの総
ビット数は、単一加算器として動作する加算器10によ
って加算されるオペランドの総ビット数に等しい。例え
ば、スプリット加算器モードでは、加算器20および3
0がそれぞれ独立に動作することにより加算の数は倍に
なるが、演算精度は、加算器20および30を単一の加
算器として動作させるときの半分になる。
【0013】スプリット加算器動作では、オペランド入
力22、24および26と、キャリーイン入力50およ
び52は加算器20に入力される。加算器20は、オペ
ランド22、24および26と、キャリーイン入力50
および52の和である多ビット和28を出力する。ま
た、加算器20は、システムの他の部分で使用されるキ
ャリーアウト出力54および56を出力する。キャリー
アウト出力54および56は、オーバーフローが生じた
かどうかを判定するため、および、和の最上位ビットを
決定するために使用される。モード選択信号62は、入
力64および66をマルチプレクサ60および58から
の出力として選択するための2つの状態のうちの1つを
有するように生成される。所望の選択を実行するために
2状態を有するモード選択信号を生成する方法は当業者
には周知である。このようにして、入力64および66
は、加算器30へのキャリーイン入力70および68と
なる。オペランド入力32、34および36と、キャリ
ーイン入力70および68は、加算器30で加算され、
オペランド入力とキャリーイン入力の和である多ビット
和38となる。また、加算器30は、システムの他の部
分で使用されるキャリーアウト出力72および74を出
力する。キャリーアウト出力72および74は、オーバ
ーフローが生じたかどうかを判定するため、および、和
の最上位ビットを決定するために使用される。
【0014】代替実施例の加算器210の概略図を図2
に示す。加算器210では、マルチプレクサ276およ
び278がそれぞれ、キャリーイン入力250とマルチ
プレクサ260の間、および、キャリーイン入力252
とマルチプレクサ258の間に設けられる。マルチプレ
クサ276および278からの出力としてキャリーイン
入力282および284を選択する選択信号280によ
って、マルチプレクサ276および278により、キャ
リーイン入力282および284は、キャリーイン入力
250および252とは独立に、3入力加算器として動
作する加算器230に入力される。所望のキャリーイン
選択を実行するために2状態を有するモード選択信号を
生成する方法は当業者には周知である。さらに、マルチ
プレクサ260および258は、キャリー選択入力26
2により、マルチプレクサ276および278からの出
力264および266を、3入力加算器として動作する
加算器230へのキャリーイン入力270および268
として選択する。
【0015】もう1つの代替実施例の加算器310の概
略図を図3に示す。加算器310は、3個の加算器に分
割(スプリット)可能である。これらの加算器は、各オ
ペランドにおいて同じビット数を有する必要はない。加
算器320、330および340は、図1および上記で
説明した加算器20および30と同様である。加算器3
20は、3個の多ビット入力322、324および32
6と、キャリーイン入力350および352とを受け取
る。加算器320は、これらの入力を加算して、和出力
328およびキャリーアウト出力354および356を
出力する。キャリーアウト出力354および356は、
マルチプレクサ360および358により、選択入力3
62が単一加算器モードに対応する第1状態にあるとき
にはキャリーイン入力368および370となり、選択
入力362がスプリット加算器モードに対応する第2状
態にあるときには、キャリーイン入力350および35
2がキャリーイン入力368および370として選択さ
れる。
【0016】3入力加算器として動作する加算器330
は、3個の多ビット入力332、334および336
と、キャリーイン入力368および370とを受け取
る。加算器330は、これらの入力を加算して、和出力
338およびキャリーアウト出力372および374を
出力する。3入力加算器330からのキャリーアウト出
力372および374は、マルチプレクサ376および
378により、選択入力380が単一加算器モードに対
応する第1状態にあるときにはキャリーイン入力386
および388となり、選択入力380がスプリット加算
器モードに対応する第2状態にあるときには、キャリー
イン入力382および384がキャリーイン入力386
および388としてそれぞれ選択される。
【0017】3入力加算器として動作する加算器340
は、3個の多ビット入力342、344および346
と、キャリーイン入力386および388とを受け取
る。加算器340は、これらの入力を加算して、和出力
348およびキャリーアウト出力390および392を
出力する。キャリーアウト出力372および374は、
マルチプレクサ376および378により、選択入力3
80が単一加算器モードに対応する第1状態にあるとき
にはキャリーイン入力386および388となり、選択
入力380が第2状態にあるときには、キャリーイン入
力382および384が、加算器320および330へ
のキャリーイン入力とは独立に、3入力加算器340へ
のキャリーイン入力386および388として選択され
る。選択入力362および380は、同じ信号がそれぞ
れに入力されるように動作することも、異なる信号がそ
れぞれに入力されるように動作することも可能である。
所望の選択を実行するために2状態を有する1つ以上の
モード選択信号を生成する方法は当業者には周知であ
る。
【0018】このようにして、単一モード動作では、加
算器310は、加算器320からのキャリーアウト出力
が加算器330にキャリーイン入力として入力され、加
算器330からのキャリーアウト出力が加算器340に
キャリーイン入力として入力される単一の加算器として
動作する加算器320、330および340を含む。加
算器320、330および340に入力されるオペラン
ドおよびキャリーイン入力の和は、加算器320からの
和出力328に、加算器330からの和出力338を連
結し、さらに、加算器340からの和出力348を連結
したものによって表される。加算器340からのキャリ
ーアウト出力390および392は、和における最上位
ビットを計算するために使用される。
【0019】以上、本発明のさまざまな実施例につい
て、複数の入力を加算して和出力を生成する場合に関し
て説明したが、本発明はこの場合に限定されない。本明
細書の記載に基づいて、当業者であれば、1つまたは複
数のオペランドから1つまたは複数のオペランドを減算
することも可能である。これは、例えば、減算されるべ
きオペランドを1の補数形式で加算器に入力し、対応す
るキャリーイン入力を論理ハイにセットすることによっ
て行われる。本発明のさまざまな実施例は、単一加算器
モードでは、減算されるべき1つまたは複数のオペラン
ドに対応する上位ビット加算器へのキャリーイン入力を
論理ハイにセットすることになる。スプリット加算器動
作モードでは、適当な多重化により、任意のオペランド
を他のオペランドから減算することが可能である。上位
ビット加算器へのキャリーイン入力は、オペランドの加
算のみが行われるときには不要である。
【0020】
【発明の効果】以上述べたごとく、本発明によれば、2
個より多くのオペランドを入力として受け入れることが
可能な加算器が実現される。
【図面の簡単な説明】
【図1】本発明による加算器の実施例の概略図である。
【図2】スプリット演算の各段階ごとに別個のキャリー
イン入力を有する、本発明による加算器の代替実施例の
概略図である。
【図3】スプリットモードでの2個より多くの加算器を
例示する、本発明による加算器のもう1つの代替実施例
の概略図である。
【符号の説明】
10 3入力加算器 20 スプリット加算器 22 入力 24 入力 26 入力 28 多ビット和 30 スプリット加算器 32 入力 34 入力 36 入力 38 多ビット和 50 キャリーイン入力 52 キャリーイン入力 54 キャリーアウト出力 56 キャリーアウト出力 58 マルチプレクサ 60 マルチプレクサ 62 モード選択信号 64 入力 66 入力 68 出力 70 出力 72 キャリーアウト出力 74 キャリーアウト出力 210 加算器 230 加算器 250 キャリーイン入力 252 キャリーイン入力 258 マルチプレクサ 260 マルチプレクサ 262 キャリー選択入力 264 出力 266 出力 268 キャリーイン入力 270 キャリーイン入力 276 マルチプレクサ 278 マルチプレクサ 280 選択信号 282 キャリーイン入力 284 キャリーイン入力 310 加算器 320 加算器 322 多ビット入力 324 多ビット入力 326 多ビット入力 328 和出力 330 加算器 332 多ビット入力 334 多ビット入力 336 多ビット入力 338 和出力 340 加算器 342 多ビット入力 344 多ビット入力 346 多ビット入力 348 和出力 350 キャリーイン入力 352 キャリーイン入力 354 キャリーアウト出力 356 キャリーアウト出力 358 マルチプレクサ 360 マルチプレクサ 362 選択入力 368 キャリーイン入力 370 キャリーイン入力 372 キャリーアウト出力 374 キャリーアウト出力 376 マルチプレクサ 378 マルチプレクサ 380 選択入力 382 キャリーイン入力 384 キャリーイン入力 386 キャリーイン入力 388 キャリーイン入力 390 キャリーアウト出力 392 キャリーアウト出力
───────────────────────────────────────────────────── フロントページの続き (71)出願人 596077259 600 Mountain Avenue, Murray Hill, New Je rsey 07974−0636U.S.A. (72)発明者 エドワード クレイトン モルガン アメリカ合衆国、18062、ペンシルバニア、 マクンジー、エス チャーチ ストリート 39

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 kを3以上の整数として、k個のオペラ
    ンド(22,24,26)と、k−1個のキャリーイン
    入力とを受け取り、k個のオペランドとk−1個のキャ
    リーイン入力との和(28)と、k−1個のキャリーア
    ウト出力(54,56)とを出力する第1加算器回路
    (20)と、 それぞれ、前記第1加算器回路へのk−1個のキャリー
    イン入力(50,52)のうちの1つを受け取る第1入
    力と、前記第1加算器回路からのk−1個のキャリーア
    ウト出力のうちの1つを受け取る第2入力と、第1入力
    および第2入力のうちの一方を出力として選択するため
    の選択入力(62)とを有するk−1個のマルチプレク
    サ(58,60)と、 mを3以上の整数として、m個のオペランド(32,3
    4,36)と、m−1個のキャリーイン入力(68,7
    0)とを受け取り、m個のオペランドとm−1個のキャ
    リーイン入力との和(38)を出力する第2加算器回路
    (30)とを有する加算器(10)において、 前記選択入力が第1状態のとき、前記第1加算器回路か
    らのキャリーアウト出力が前記第2加算器回路にキャリ
    ーイン入力として入力されて前記第1加算器回路および
    前記第2加算器回路は単一の加算器として動作し、前記
    選択入力が第2状態のとき、前記第1加算器回路および
    前記第2加算器回路は独立の加算器としてスプリットモ
    ードで動作することを特徴とする加算器。
  2. 【請求項2】 前記第1加算器回路(20)への入力の
    数kは、前記第2加算器回路(30)への入力の数mと
    等しいことを特徴とする請求項1に記載の加算器。
  3. 【請求項3】 前記オペランドは多ビットオペランドで
    あり、多ビット和が出力されることを特徴とする請求項
    1に記載の加算器。
  4. 【請求項4】 前記第1加算器回路(20)に入力され
    るオペランド(22,24,26)のビット数は、前記
    第2加算器回路(30)に入力されるオペランド(3
    2,34,36)のビット数と等しいことを特徴とする
    請求項3に記載の加算器。
  5. 【請求項5】 前記加算器は、さらに、k−1個の追加
    マルチプレクサ(276,278)を有し、 各追加マルチプレクサは、k−1個のキャリーイン入力
    (250,252)のうちの1つを受け取る第1入力
    と、別のキャリーイン入力(282,284)を受け取
    る第2入力と、第1入力および第2入力のうちの一方を
    出力として選択するための選択入力(280)とを有
    し、 前記k−1個の追加マルチプレクサの出力(264,2
    66)は、前記k−1個のマルチプレクサ(260,2
    58)への第2入力であることを特徴とする請求項1に
    記載の加算器。
  6. 【請求項6】 前記第2加算器回路(30)は、m−1
    個のキャリーアウト出力(372,374)をさらに有
    することを特徴とする請求項1に記載の加算器。
  7. 【請求項7】 kを3以上の整数として、k個のオペラ
    ンド(322,324,326)と、k−1個のキャリ
    ーイン入力(350,352)とを受け取り、k個のオ
    ペランドとk−1個のキャリーイン入力との和(32
    8)と、k−1個のキャリーアウト出力(354,35
    6)とを出力する第1加算器回路(320)と、 それぞれ、前記第1加算器回路へのk−1個のキャリー
    イン入力のうちの1つ(364,366)を受け取る第
    1マルチプレクサ第1入力と、前記第1加算器回路から
    のk−1個のキャリーアウト出力のうちの1つを受け取
    る第1マルチプレクサ第2入力と、第1マルチプレクサ
    第1入力および第1マルチプレクサ第2入力のうちの一
    方を第1マルチプレクサ出力(368,370)として
    選択するための第1選択入力(362)とを有するk−
    1個の第1マルチプレクサ(358,360)と、 mを3以上の整数として、m個のオペランド(332,
    334,336)と、m−1個のキャリーイン入力(3
    68,370)とを受け取り、m個のオペランドとm−
    1個のキャリーイン入力との和(338)と、m−1個
    のキャリーアウト出力(372,374)とを出力する
    第2加算器回路(330)と、 それぞれ、前記第2加算器回路からのm−1個のキャリ
    ーアウト出力のうちの1つ(372,374)を受け取
    る第2マルチプレクサ第1入力と、追加キャリーイン入
    力(382,384)を受け取る第2マルチプレクサ第
    2入力と、第2マルチプレクサ第1入力および第2マル
    チプレクサ第2入力のうちの一方を第2マルチプレクサ
    出力(386,388)として選択するための第2選択
    入力(380)とを有するm−1個の第1マルチプレク
    サ(376,378)と、 nを3以上の整数として、n個のオペランド(342,
    344,346)と、n−1個のキャリーイン入力(3
    86,388)とを受け取り、n個のオペランドとn−
    1個のキャリーイン入力との和(348)を出力する第
    3加算器回路(340)とを有することを特徴とする加
    算器。
  8. 【請求項8】 kを3以上の整数として、k個のオペラ
    ンドと、k−1個のキャリーイン入力とを受け取り、k
    個のオペランドとk−1個のキャリーイン入力との和
    と、k−1個のキャリーアウト出力とを出力する第1加
    算器回路と、 それぞれ、前記第1加算器回路へのk−1個のキャリー
    イン入力のうちの1つを受け取る第1入力と、前記第1
    加算器回路からのk−1個のキャリーアウト出力のうち
    の1つを受け取る第2入力と、第1入力および第2入力
    のうちの一方を出力として選択するための選択入力とを
    有するk−1個のマルチプレクサと、 mを3以上の整数として、m個のオペランドと、m−1
    個のキャリーイン入力とを受け取り、m個のオペランド
    とm−1個のキャリーイン入力との和を出力する第2加
    算器回路とを有する加算器を含む集積回路において、 前記選択入力が第1状態のとき、前記第1加算器回路か
    らのキャリーアウト出力が前記第2加算器回路にキャリ
    ーイン入力として入力されて前記第1加算器回路および
    前記第2加算器回路は単一の加算器として動作し、前記
    選択入力が第2状態のとき、前記第1加算器回路および
    前記第2加算器回路は独立の加算器としてスプリットモ
    ードで動作することを特徴とする集積回路。
  9. 【請求項9】 前記第1加算器回路への入力の数kは、
    前記第2加算器回路への入力の数mと等しいことを特徴
    とする請求項8に記載の集積回路。
  10. 【請求項10】 前記第1加算器回路に入力されるオペ
    ランドのビット数は、前記第2加算器回路に入力される
    オペランドのビット数と等しいことを特徴とする請求項
    8に記載の集積回路。
  11. 【請求項11】 前記加算器は、さらに、k−1個の追
    加マルチプレクサを有し、 各追加マルチプレクサは、k−1個のキャリーイン入力
    のうちの1つを受け取る第1入力と、別のキャリーイン
    入力を受け取る第2入力と、第1入力および第2入力の
    うちの一方を出力として選択するための選択入力とを有
    し、 前記k−1個の追加マルチプレクサの出力は、前記k−
    1個のマルチプレクサへの第2入力であることを特徴と
    する請求項8に記載の集積回路。
  12. 【請求項12】 前記第2加算器回路は、m−1個のキ
    ャリーアウト出力をさらに有することを特徴とする請求
    項8に記載の集積回路。
  13. 【請求項13】 ディジタル信号プロセッサであること
    を特徴とする請求項8に記載の集積回路。
  14. 【請求項14】 マイクロコントローラであることを特
    徴とする請求項8に記載の集積回路。
  15. 【請求項15】 マイクロプロセッサであることを特徴
    とする請求項8に記載の集積回路。
  16. 【請求項16】 kを3以上の整数として、k個のオペ
    ランド(322,324,326)と、k−1個のキャ
    リーイン入力(350,352)とを受け取り、k個の
    オペランドとk−1個のキャリーイン入力との和(32
    8)と、k−1個のキャリーアウト出力(354,35
    6)とを出力する第1加算器回路(320)と、 それぞれ、前記第1加算器回路へのk−1個のキャリー
    イン入力のうちの1つ(364,366)を受け取る第
    1マルチプレクサ第1入力と、前記第1加算器回路から
    のk−1個のキャリーアウト出力のうちの1つを受け取
    る第1マルチプレクサ第2入力と、第1マルチプレクサ
    第1入力および第1マルチプレクサ第2入力のうちの一
    方を第1マルチプレクサ出力(368,370)として
    選択するための第1選択入力(362)とを有するk−
    1個の第1マルチプレクサ(358,360)と、 mを3以上の整数として、m個のオペランド(332,
    334,336)と、m−1個のキャリーイン入力(3
    68,370)とを受け取り、m個のオペランドとm−
    1個のキャリーイン入力との和(338)と、m−1個
    のキャリーアウト出力(372,374)とを出力する
    第2加算器回路(330)と、 それぞれ、前記第2加算器回路からのm−1個のキャリ
    ーアウト出力のうちの1つ(372,374)を受け取
    る第2マルチプレクサ第1入力と、追加キャリーイン入
    力(382,384)を受け取る第2マルチプレクサ第
    2入力と、第2マルチプレクサ第1入力および第2マル
    チプレクサ第2入力のうちの一方を第2マルチプレクサ
    出力(386,388)として選択するための第2選択
    入力(380)とを有するm−1個の第1マルチプレク
    サ(376,378)と、 nを3以上の整数として、n個のオペランド(342,
    344,346)と、n−1個のキャリーイン入力(3
    86,388)とを受け取り、n個のオペランドとn−
    1個のキャリーイン入力との和(348)を出力する第
    3加算器回路(340)とを有する加算器を含むことを
    特徴とする集積回路。
JP2000137224A 1999-05-12 2000-05-10 加算器および集積回路 Expired - Fee Related JP3537378B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/310404 1999-05-12
US09/310,404 US6449629B1 (en) 1999-05-12 1999-05-12 Three input split-adder

Publications (2)

Publication Number Publication Date
JP2000330764A true JP2000330764A (ja) 2000-11-30
JP3537378B2 JP3537378B2 (ja) 2004-06-14

Family

ID=23202348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000137224A Expired - Fee Related JP3537378B2 (ja) 1999-05-12 2000-05-10 加算器および集積回路

Country Status (4)

Country Link
US (1) US6449629B1 (ja)
EP (1) EP1052568B1 (ja)
JP (1) JP3537378B2 (ja)
KR (1) KR100627993B1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6584485B1 (en) * 2000-04-14 2003-06-24 International Business Machines Corporation 4 to 2 adder
US6748411B1 (en) * 2000-11-20 2004-06-08 Agere Systems Inc. Hierarchical carry-select multiple-input split adder
US7219118B2 (en) * 2001-11-06 2007-05-15 Broadcom Corporation SIMD addition circuit
US7051062B2 (en) * 2002-09-10 2006-05-23 Analog Devices, Inc. Apparatus and method for adding multiple-bit binary-strings
US7149768B2 (en) * 2002-10-15 2006-12-12 Ceva D.S.P. Ltd. 3-input arithmetic logic unit
JP5363573B2 (ja) * 2008-08-15 2013-12-11 エルエスアイ コーポレーション ニア・コードワードのramリスト復号
KR102072543B1 (ko) * 2013-01-28 2020-02-03 삼성전자 주식회사 복수 데이터 형식을 지원하는 가산기 및 그 가산기를 이용한 복수 데이터 형식의 가감 연산 지원 방법
US10963220B2 (en) * 2018-11-12 2021-03-30 Samsung Electronics Co., Ltd. Signed multiplication using unsigned multiplier with dynamic fine-grained operand isolation
CN111857651B (zh) * 2020-06-16 2023-06-16 眸芯科技(上海)有限公司 用多比特加法器并行进行多个少比特加法的方法及应用

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52155027A (en) * 1976-06-18 1977-12-23 Fujitsu Ltd Multi-input adder for single-width data and double-width data
US4707800A (en) * 1985-03-04 1987-11-17 Raytheon Company Adder/substractor for variable length numbers
JPS61239327A (ja) * 1985-04-16 1986-10-24 Nec Corp オ−バフロ−検出方式
JPS61255433A (ja) * 1985-05-07 1986-11-13 Mitsubishi Electric Corp 演算装置
JPH07113886B2 (ja) * 1987-05-11 1995-12-06 株式会社日立製作所 演算回路
US5189636A (en) * 1987-11-16 1993-02-23 Intel Corporation Dual mode combining circuitry
JP2806171B2 (ja) * 1992-08-31 1998-09-30 日本電気株式会社 データ演算装置
US5327369A (en) * 1993-03-31 1994-07-05 Intel Corporation Digital adder and method for adding 64-bit, 16-bit and 8-bit words
DE69428466T2 (de) * 1993-11-23 2002-05-23 Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto Parallele Datenverarbeitung in einem Einzelprozessor
US5390135A (en) * 1993-11-29 1995-02-14 Hewlett-Packard Parallel shift and add circuit and method
US5883824A (en) * 1993-11-29 1999-03-16 Hewlett-Packard Company Parallel adding and averaging circuit and method
US5493524A (en) * 1993-11-30 1996-02-20 Texas Instruments Incorporated Three input arithmetic logic unit employing carry propagate logic
JP3356613B2 (ja) * 1996-02-14 2002-12-16 日本電気株式会社 加算方法および加算器
US6003125A (en) * 1997-01-24 1999-12-14 Texas Instruments Incorporated High performance adder for multiple parallel add operations

Also Published As

Publication number Publication date
EP1052568B1 (en) 2004-01-28
KR20010014902A (ko) 2001-02-26
US6449629B1 (en) 2002-09-10
KR100627993B1 (ko) 2006-09-27
JP3537378B2 (ja) 2004-06-14
EP1052568A1 (en) 2000-11-15

Similar Documents

Publication Publication Date Title
JP3492638B2 (ja) 浮動小数点乗算器
JP5069476B2 (ja) プログラマブルロジックデバイスのための特殊処理ブロック
US5508950A (en) Circuit and method for detecting if a sum of two multibit numbers equals a third multibit constant number prior to availability of the sum
US20040267863A1 (en) Method and apparatus for performing single-cycle addition or subtraction and comparison in redundant form arithmetic
JP2002108606A (ja) スティッキービット生成回路及び乗算器
JPH07210369A (ja) 並列加算および平均演算を行うための回路およびその方法
KR19980041753A (ko) 다른 데이타 형을 갖는 다수의 데이타를 처리하는 가산기
JP3537378B2 (ja) 加算器および集積回路
JPH08212058A (ja) 加算オーバフロ検出回路
US5204832A (en) Addition apparatus having round-off function
US5867413A (en) Fast method of floating-point multiplication and accumulation
JPH0317132B2 (ja)
JP4042364B2 (ja) アドレス生成回路、選択判断回路
US7444366B2 (en) Faster shift value calculation using modified carry-lookahead adder
KR100241077B1 (ko) 단일명령사이클내의 선택된 sin 3식을 연산하기 위한 방법
US5944777A (en) Method and apparatus for generating carries in an adder circuit
US6631393B1 (en) Method and apparatus for speculative addition using a limited carry
EP0780759A1 (en) Elimination of math overflow flag generation delay in an alu
US6748411B1 (en) Hierarchical carry-select multiple-input split adder
JP3540807B2 (ja) 加算器,乗算器,及び集積回路
JP3286793B2 (ja) キャリアウトを確定する回路及び方法
JPS62154029A (ja) 乗算回路
JP3122622B2 (ja) 除算装置
JP2907276B2 (ja) 演算処理装置
JP3198795B2 (ja) 加算器及び加算方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040316

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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: 20080326

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090326

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090326

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100326

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100326

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110326

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140326

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees