JPH09231055A - 論理演算回路及びキャリールックアヘッド加算器 - Google Patents

論理演算回路及びキャリールックアヘッド加算器

Info

Publication number
JPH09231055A
JPH09231055A JP8039601A JP3960196A JPH09231055A JP H09231055 A JPH09231055 A JP H09231055A JP 8039601 A JP8039601 A JP 8039601A JP 3960196 A JP3960196 A JP 3960196A JP H09231055 A JPH09231055 A JP H09231055A
Authority
JP
Japan
Prior art keywords
carry
signal
bit
digit
circuit
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.)
Pending
Application number
JP8039601A
Other languages
English (en)
Inventor
Koji Kato
耕治 加藤
Harutsugu Fukumoto
晴継 福本
Hiroaki Tanaka
裕章 田中
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP8039601A priority Critical patent/JPH09231055A/ja
Priority to US08/806,213 priority patent/US5877973A/en
Priority to FR9702289A priority patent/FR2745648A1/fr
Priority to DE19708024A priority patent/DE19708024A1/de
Publication of JPH09231055A publication Critical patent/JPH09231055A/ja
Pending 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
    • 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

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)
  • Logic Circuits (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 キャリールックアヘッド(CLA)加算器の
演算時間を短縮する。 【解決手段】 2つの加算対象信号を複数グループ、例
えば下位4ビットa3:0 ,b3:0 と上位4ビットa7:4
,b7:4 とに分け、夫々、2つの全加算器2,12に
入力すると共に、生成されるキャリー生成信号g7:4 及
びキャリー伝搬信号p7:4 並びに最下位ビットへのキャ
リーc-1から、加算対象信号の3,7ビット目における
キャリーc3 ,c7 を生成するように構成され、全加算
器12が、キャリーインを0として上位4ビットa7:4
,b7:4 を加算して仮の和sz7:4 を生成し、論理回
路14が、3ビット目におけるキャリーc3 並びに2段
目の全加算器12で生成された仮の和sz7:4 及びキャ
リー伝搬信号p7:4から上位4ビットの真の和s7:4 を
生成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、2進デジタル算術
演算器の1つであるキャリールックアヘッド加算器を構
成するのに好適な論理演算回路、及びこの論理演算回路
を用いたキャリールックアヘッド加算器に関する。
【0002】
【従来の技術】従来より、電子計算機等に具備されて任
意の桁数の加算を行う加算器として、リップルキャリー
加算器が知られている。このリップルキャリー加算器
は、加算対象である1ビットの2つの信号と下位桁から
のキャリー信号(キャリーイン)とを加算して和と上位
桁へのキャリー信号(キャリーアウト)とを出力する1
ビット全加算器を、加算対象信号の桁数(即ちビット
数)に応じた個数だけ順次接続することで構成される。
【0003】しかし、リップルキャリー加算器では、あ
る桁の加算を行う前に、その下位桁のキャリー信号が確
定している必要があり、演算時間が加算対象信号の桁数
に比例してしまう。よって、近年の処理ビット数の増大
に伴って、演算時間が長大化してしまうという問題があ
った。
【0004】そこで、この問題を解決するものとして、
2つの加算対象信号の各ビットを調べることにより、各
ビットを加算して和を算出する前にキャリーアウトを発
生させる、といったキャリールックアヘッド(Carry Lo
ok Ahead:桁上げ先見)方式を用いた加算器が開発され
ている。代表的なキャリールックアヘッド加算器として
は、2つの加算対象信号を例えば4ビット毎のグループ
に分け、各グループにおける和を出力する前に、次のグ
ループへのキャリーアウトを生成するように構成されて
おり、この構成によって演算時間の短縮を図っている
(例えば特開平5−61643号公報)。
【0005】以下、本発明の前提技術を一層明確にする
ために、32ビットのキャリールックアヘッド加算器の
従来の構成例について、図10を用いて説明する。尚、
以下の説明において、nビット目とは、最下位ビットを
0ビット目とした場合のn番目のビットを指している。
また、図10及び後述する他の各図において、小文字の
アルファベットから始まる符号のうち、例えばa3:0 と
いった符号は、aという信号の3ビット目から0ビット
目までを示している。
【0006】まず、図10において、符号30−0,3
0−1,…,30−7は、夫々、4ビット全加算器(A
DD:詳しくは4ビットのリップルキャリー加算器)で
ある。これら各4ビット全加算器30−0〜30−7
は、32ビットの2つの加算対象信号a31:0,b31:0を
4ビット毎に分けてなる一対の4ビット信号a(a3:
0,a7:4 ,…,a31:28 )及びb(b3:0 ,b7:4 ,
…,b31:28 )毎に設けられており、夫々、対応するグ
ループの4ビット信号a,bと、その4ビット信号a,
bの最下位桁より1つ下位桁からのキャリー信号c(c
-1,c3 ,…,c27)とを入力して、下記の式(1)〜
(4)に示す演算を実行することにより、4ビットのキ
ャリー生成信号g(g3:0 ,g7:4 ,…,g31:28 )、
4ビットのキャリー伝搬信号p(p3:0 ,p7:4 ,…,
p31:28 )、及び4ビットの和信号s(s3:0 ,s7:4
,…,s31:28 )を生成する。
【0007】尚、以下に示す各式において、「*」は論
理積を表し、「xor」は排他的論理和を表し、「+」
は論理和を表している。また、添え字「n 」は、4ビッ
ト全加算器30−0〜30−7に入力される加算対象信
号a,b中の各ビットの位置(即ち桁)を表すものであ
り、「0 」が最下位ビット(最下位桁)に対応する。ま
た更に、「cn-1 」は、各4ビット全加算器30−0〜
30−7の内部において、nビット目の和sn を求める
ために必要な(n−1)ビット目からのキャリー信号を
表している。
【0008】
【数1】gn =(an )*(bn ) …(1)
【0009】
【数2】pn =(an )xor(bn ) …(2)
【0010】
【数3】 sn =(pn )xor(cn-1 ) …(3)
【0011】
【数4】 cn =(gn )+(pn )*(cn-1 ) …(4) 次に、符号32−0,32−1,…,32−7は、夫
々、キャリールックアヘッド1階層目の回路としての4
ビット分のキャリー生成/伝搬信号生成回路(4GP)
である。これら各4ビット分のキャリー生成/伝搬信号
生成回路32−0〜32−7は、上記各4ビット全加算
器30−0〜30−7に夫々対応して設けられており、
夫々、対応する4ビット全加算器30−0〜30−7が
生成した4ビットのキャリー生成信号g(g3:0 ,g7:
4 ,…,g31:28 )と4ビットのキャリー伝搬信号p
(p3:0 ,p7:4 ,…,p31:28 )とから、下記の式
(5),(6)に示す演算を実行することにより、4ビ
ットの加算対象信号a(a3:0 ,a7:4 ,…,a31:28
)及びb(b3:0 ,b7:4 ,…,b31:28 )を1つの
ブロックとした場合の1ビットのキャリー生成信号G[n
+3 ](G[3 ],G[7 ],…,G[31])と、同じく1ビッ
トのキャリー伝搬信号P[n+3 ](P[3 ],P[7 ],…,
P[31])とを生成する。
【0012】
【数5】 G[n+3 ]=(gn+3 ) +(pn+3 )*(gn+2 ) +(pn+3 )*(pn+2 )*(gn+1 ) +(pn+3 )*(pn+2 )*(pn+1 )*(gn ) …(5)
【0013】
【数6】 P[n+3 ]=(pn+3 )*(pn+2 )*(pn+1 )*(pn ) …(6) そして更に、図10において、符号34−0,34−
1,…,34−7は、夫々、キャリールックアヘッド2
階層目の回路としての桁上げ先見回路(1CLA,2C
LA,3CLA,4CLA,1CLA,2CLA,3C
LA,4CLA)であり、上記各4ビット全加算器30
−0〜30−7及びキャリー生成/伝搬信号生成回路3
2−0〜32−7に対応して設けられている。
【0014】初段から4段目までの各桁上げ先見回路
(1CLA,2CLA,3CLA,4CLA)34−0
〜34−3の夫々は、最下位の4ビット全加算器30−
0に入力されるキャリー信号c-1(即ち、32ビット加
算対象信号a,bの最下位桁へのキャリー信号c-1)
と、キャリー生成/伝搬信号生成回路32−0〜32−
3のうち各自に対応するもの及びそれより下位側のもの
が生成した1ビット,2ビット,3ビット,4ビットの
キャリー生成信号G[n+3 ](G[3 ],G[7 ],G[11],
G[15])及びキャリー伝搬信号P[n+3 ](P[3 ],P[7
],P[11],P[15])とを入力として、対応する4ビッ
ト全加算器30−0〜30−3に入力される4ビットの
加算対象信号a,bの最上位ビットからのキャリー信号
c(即ち、次段に設けられた4ビット全加算器30−1
〜30−4へ入力すべきキャリー信号c3 ,c7 ,c1
1,c15)を夫々生成して出力する。
【0015】また、5段目から最終段(8段目)までの
各桁上げ先見回路(1CLA,2CLA,3CLA,4
CLA)34−4〜34−7の夫々は、5段目の4ビッ
ト全加算器30−4に入力されるキャリー信号c15(即
ち、桁上げ先見回路34−3が生成したキャリー信号)
と、キャリー生成/伝搬信号生成回路32−4〜32−
7のうち各自に対応するもの及びそれより下位側のもの
が生成した1ビット,2ビット,3ビット,4ビットの
キャリー生成信号G[n+3 ](G[19],G[23],G[27],
G[31])及びキャリー伝搬信号P[n+3 ](P[19],P[2
3],P[27],P[31])とを入力として、対応する4ビッ
ト全加算器30−4〜30−7に入力される4ビットの
加算対象信号a,bの最上位ビットからのキャリー信号
c(c19,c23,c27,c31)を夫々生成して出力す
る。そして、最終段以外の桁上げ先見回路34−4,3
4−5,34−6が生成したキャリー信号c19,c23,
c27は、夫々、次段の4ビット全加算器30−5,30
−6,30−7に入力される。
【0016】ここで、上記キャリー生成信号G[3 ],G
[7 ],G[11],G[15]を、下位のG[3 ]から順にG
〈0〉,G〈1〉,…と表し、同様に上記キャリー伝搬
信号P[3],P[7 ],P[11],P[15]を、下位のP[3 ]
から順にP〈0〉,P〈1〉,…と表し、更に上記キャ
リー信号c-1をCinと表せば、各桁上げ先見回路34
−0〜34−3の夫々は、下記の式(7)に示す演算を
実行することにより、キャリー信号c(c3 ,c7 ,c
11,c15)を生成する。そして同様に、上記キャリー生
成信号G[19],G[23],G[27],G[31]を、下位のG[1
9]から順にG〈0〉,G〈1〉,…と表し、上記キャリ
ー伝搬信号P[19],P[23],P[27],P[31]を、下位の
P[19]から順にP〈0〉,P〈1〉,…と表し、更に上
記キャリー信号c15をCinと表せば、各桁上げ先見回
路34−4〜34−7の夫々も、下記の式(7)に示す
演算を実行することにより、キャリー信号c(c19,c
23,c27,c31)を生成する。
【0017】
【数7】 c=G〈y〉 +P〈y〉*G〈y−1〉 +P〈y〉*P〈y−1〉*G〈y−2〉 ・ ・ ・ +P〈y〉*P〈y−1〉*・・・*P〈1〉G〈0〉 +P〈y〉*P〈y−1〉*・・・*P〈1〉*P〈0〉*Cin …(7) よって、例えば、桁上げ先見回路34−0では下記の式
(8)の如くキャリー信号c3 が生成され、桁上げ先見
回路34−1では下記の式(9)の如くキャリー信号c
7 が生成され、桁上げ先見回路34−2では下記の式
(10)の如くキャリー信号c11が生成され、桁上げ先
見回路34−3では下記の式(11)の如くキャリー信
号c15が生成される。
【0018】
【数8】 c3 =(G[3 ])+(P[3 ])*(c-1) …(8)
【0019】
【数9】 c7 =(G[7 ]) +(P[7 ])*(G[3 ]) +(P[7 ])*(P[3 ])*(c-1) …(9)
【0020】
【数10】 c11=(G[11]) +(P[11])*(G[7 ]) +(P[11])*(P[7 ])*(G[3 ]) +(P[11])*(P[7 ])*(P[3 ])*(c-1) …(10)
【0021】
【数11】 c15=(G[15]) +(P[15])*(G[11]) +(P[15])*(P[11])*(G[7 ]) +(P[15])*(P[11])*(P[7 ])*(G[3 ]) +(P[15])*(P[11])*(P[7 ])*(P[3 ])*(c-1) …(11) つまり、上記式(1),(2),(5)〜(11)から
明らかなように、キャリー生成信号gn とキャリー伝搬
信号pn は、2つの加算対象信号a,bのみに依存して
いるため、各桁について並列に求めることができ、しか
も、このキャリー生成信号gn 及びキャリー伝搬信号p
n と、最下位の4ビット全加算器30−0に入力される
キャリー信号c-1だけで、最下位以外の各4ビット全加
算器30−1〜30−7に入力すべきキャリー信号c3
,c7,…,c27を生成することができる。
【0022】そこで、図10に示した32ビット加算器
では、キャリー生成/伝搬信号生成回路32−0及び桁
上げ先見回路(1CLA)34−0により、加算対象信
号a,bの3ビット目(4桁目)からのキャリーc3 を
先見して、2段目の4ビット全加算器30−1に入力
し、キャリー生成/伝搬信号生成回路32−0,32−
1及び桁上げ先見回路(2CLA)34−1により、加
算対象信号a,bの7ビット目(8桁目)からのキャリ
ーc7 を先見して、3段目の4ビット全加算器30−2
に入力し、キャリー生成/伝搬信号生成回路32−0〜
32−2及び桁上げ先見回路(3CLA)34−2によ
り、加算対象信号a,bの11ビット目(12桁目)か
らのキャリーc11を先見して、4段目の4ビット全加算
器30−3に入力し、キャリー生成/伝搬信号生成回路
32−0〜32−3及び桁上げ先見回路(4CLA)3
4−3により、加算対象信号a,bの15ビット目(1
6桁目)からのキャリーc15を先見して、5段目の4ビ
ット全加算器30−4に入力する、といった具合いに、
各4ビット全加算器30−1〜30−7へのキャリー信
号を前倒しに供給するようにしている。
【0023】尚、5段目から8段目までの4ビット全加
算器30−4〜30−7に夫々対応するキャリー生成/
伝搬信号生成回路32−4〜32−7及び桁上げ先見回
路34−4〜34−7の動作も、1段目から4段目まで
の4ビット全加算器30−0〜30−3に夫々対応する
ものと同様である。
【0024】そして、このようなキャリールックアヘッ
ド方式を用いた加算器では、下位側の4ビット全加算器
(ADD)30が和を生成するよりも早く、上位側の4
ビット全加算器(ADD)30へ下位からのキャリー信
号を入力することができるため、リップルキャリー加算
器の場合と比較して演算時間を短縮できる。
【0025】
【発明が解決しようとする課題】しかしながら、上述し
たようなキャリールックアヘッド方式を用いた従来の加
算器においても、以下のような問題があった。例えば、
図10において、一点鎖線で囲んだ8ビットのキャリー
ルックアヘッド加算器を構成する部分、つまり、初段か
ら2段目までの4ビット全加算器(ADD)30−0,
30−1、キャリー生成/伝搬信号生成回路(4GP)
32−0,32−1、及び桁上げ先見回路(1CLA,
2CLA)34−0,34−1からなる部分について考
える。
【0026】このような8ビットのキャリールックアヘ
ッド加算器(以下、CLA加算器ともいう)において、
8ビットの2つの加算対象信号a7:0 ,b7:0 と下位桁
からのキャリー信号c-1とが入力されてから、最上位ビ
ット(7ビット目)の和s7が算出されるまでの時間
T、即ち8ビットの加算が完了するまでの時間Tは、下
記の式(12)となる。尚、式(12)においてのみ、
「+」は足し算を意味している。
【0027】
【数12】T=t1+t2+t3+t4 …(12) 但し、t1=(初段の4ビット全加算器30−0が4ビ
ットのキャリー生成信号g3:0 とキャリー伝搬信号p3:
0 を生成する時間) t2=(初段のキャリー生成/伝搬信号生成回路32−
0が1ビットのキャリー生成信号G[3 ]とキャリー伝搬
信号P[3 ]を生成する時間) t3=(初段の桁上げ先見回路34−0がキャリー信号
c3 を生成する時間) t4=(2段目の4ビット全加算器30−1がキャリー
信号c3 を基に加算対象信号a,bの上位4ビットa7:
4 ,b7:4 を全加算して和を生成する時間) つまり、上記従来の8ビットCLA加算器では、初段の
4ビット全加算器30−0が下位4ビットa3:0 ,b3:
0 の全加算を完了するよりも早く、初段の桁上げ先見回
路34−0が2段目の4ビット全加算器30−1へのキ
ャリー信号c3を生成する(t1+t2+t3)。そし
て、2段目の4ビット全加算器30−1は、初段の桁上
げ先見回路34−0によってキャリー信号c3 が生成さ
れてから、上位4ビットa7:4 ,b7:4 の全加算を行う
(t4)。
【0028】従って、従来のCLA加算器では、上記式
(12)からも分かるように、下位桁側から上位桁側へ
のキャリー信号を早く生成することはできるものの、上
位桁側の4ビット全加算器(ADD)30は、結局、下
位桁側からのキャリー信号が確定してから全加算を行わ
なければならず、このことから、全ビットの和信号を生
成するまでの演算時間を短縮するのには限界があった。
【0029】本発明は、このような問題に鑑みなされた
ものであり、演算時間をより短縮することのできるキャ
リールックアヘッド加算器、及びこのキャリールックア
ヘッド加算器を構成するのに好適な論理演算回路を提供
することを目的としている。
【0030】
【課題を解決するための手段、及び発明の効果】上記目
的を達成するためになされた請求項1に記載の論理演算
回路は、互いが加算対象である複数ビットの2つの加算
対象信号と、その両加算対象信号の最下位桁より1つ下
位桁からのキャリー信号とを入力して、両加算対象信号
を前記キャリー信号を含めて加算した和信号を生成する
と共に、両加算対象信号の各桁の夫々について、各桁の
両ビットの論理積であるキャリー生成信号と、各桁の両
ビットの排他的論理和であるキャリー伝搬信号とを生成
するのであるが、そのために、複数ビット全加算器と和
信号生成回路とが以下のように動作する。
【0031】まず、複数ビット全加算器が、両加算対象
信号を入力し、その両加算対象信号の各桁の夫々につい
てキャリー生成信号及びキャリー伝搬信号を生成すると
共に、両加算対象信号の最下位桁への桁上がりがないも
のとして(換言すれば、両加算対象信号の最下位桁より
1つ下位桁からのキャリー信号が0であるものとして)
両加算対象信号を加算し、その加算結果を仮の和信号と
して出力する。
【0032】そして、和信号生成回路が、複数ビット全
加算器により生成された仮の和信号及びキャリー伝搬信
号と、両加算対象信号の最下位桁より1つ下位桁からの
キャリー信号とを入力し、仮の和信号の各ビットの夫々
について、キャリー伝搬信号のうち当該仮の和信号のビ
ットに対応するビットの1つ下位のビットから最下位ビ
ットまでの論理積と前記下位桁からのキャリー信号との
論理積と、当該仮の和信号のビットとの排他的論理和を
生成し、その生成した排他的論理和を、真の和信号(即
ち、両加算対象信号を下位桁からのキャリー信号を含め
て加算した和信号)として出力する。
【0033】以下、当該論理演算回路における和信号の
生成について具体的に説明する。まず、複数ビットの2
つの加算対象信号a,bを全加算する際において、最下
位ビットを0ビット目とした場合のnビット目の和sn
を求めるために必要な(n−1)ビット目からのキャリ
ーcn-1 は、両加算対象信号a,bの最下位桁より1つ
下位桁からのキャリー信号(即ち、外部から入力される
キャリー信号)をCmとすると、前述した式(4)に基
づき下記の式(13)のようになる。尚、式(13)に
おいて、gとpは、夫々、加算対象信号a,bの各ビッ
トに夫々対応するキャリー生成信号とキャリー伝搬信号
であり、前述した式(1),(2)の演算によって求め
られる。
【0034】そして、(n−1)ビット目からのキャリ
ーcn-1 とnビット目のキャリー伝搬信号pn とから、
前述した式(3)の演算によりnビット目の和sn が求
められる。
【0035】
【数13】 cn-1 =gn-1 +(pn-1 )*(gn-2 ) +(pn-1 )*(pn-2 )*(gn-3 ) ・ ・ ・ +(pn-1 )*(pn-2 )*・・・*(p1 )*(g0 ) +(pn-1 )*(pn-2 )*・・・*(p1 )*(p0 )*(Cm) …(13) ここで、式(13)において、外部から入力されるキャ
リー信号Cmに関する項は、最も下の項だけであり、キ
ャリー信号Cmが0である場合の(n−1)ビット目か
らのキャリーc0n-1 は、式(13)から下記の式(1
4)となる。
【0036】
【数14】 c0n-1 =gn-1 +(pn-1 )*(gn-2 ) +(pn-1 )*(pn-2 )*(gn-3 ) ・ ・ ・ +(pn-1 )*(pn-2 )*・・・*(p1 )*(g0 ) …(14) よって、両加算対象信号a,bの最下位桁より1つ下位
桁からのキャリー信号Cmを0とした場合、即ち、両加
算対象信号a,bの最下位桁への桁上がりがないものと
した場合のnビット目の和szn は、前述した式(3)
から下記の式(15)のようになり、この和szn が、
仮の和信号のnビット目となる。
【0037】
【数15】 szn =(pn )xor(c0n-1 ) …(15) そして、式(3),(13)〜(15)から分かるよう
に、仮の和szn に対し外部からのキャリー信号Cmに
よる影響を加えて真の和sn を得るめるためには、下記
の式(16)の如く、式(13)の最も下の項と、仮の
和szn との排他的論理和を求めれば良い。
【0038】
【数16】 sn =(szn )xor{(pn-1 )*(pn-2 )*・・・ ・・・*(p1 )*(p0 )*(Cm)} …(16) そこで、請求項1に記載の論理演算回路では、図10に
示した4ビット全加算器(4ビットのリップルキャリー
加算器)30のように、両加算対象信号と下位桁からの
キャリー信号とから全加算により直接的に和信号を生成
するのではなく、まず、複数ビット全加算器が、下位桁
からのキャリー信号を0として両加算対象信号を加算し
た仮の和信号を生成し、その後、和信号生成回路が、仮
の和信号及びキャリー伝搬信号と、外部から入力された
下位桁からのキャリー信号とから、仮の和信号の各ビッ
トについて上記式(16)の演算を行うことにより、真
の和信号を生成するようにしている。
【0039】そして、このような請求項1に記載の論理
演算回路によれば、外部からのキャリー信号が入力され
ていない(確定していない)間に、複数ビット全加算器
によって仮の和信号を生成しておくことができ、キャリ
ー信号が入力されてから(確定してから)、和信号生成
回路が上記式(16)の演算を行うだけで、真の和信号
を生成することができる。特に、上記式(16)の演算
は、仮の和信号の各ビットについて並行に実行すること
ができるため、キャリー信号が入力されから全加算を行
う場合に比べて、和信号を生成するのに要する時間を短
縮することができる。
【0040】従って、当該論理演算回路を、例えば、図
10の一点鎖線内に示した8ビットのキャリールックア
ヘッド加算器にて、2段目の4ビット全加算器(AD
D)30−1に代えて用いれば、8ビットの和信号s7:
0 を算出するまでの演算時間を短縮できる。
【0041】つまり、前述したように、従来のキャリー
ルックアヘッド加算器では、前段の桁上げ先見回路34
−0がキャリー信号c3 を生成してから、次段の4ビッ
ト全加算器30−1が4ビットの全加算を行う。これに
対して、請求項1に記載の論理演算回路を用いた場合に
は、前段の桁上げ先見回路34−0がキャリー信号c3
を生成するまでの間に、複数ビット全加算器により仮の
和信号を生成しておくことができ、前段の桁上げ先見回
路34−0によりキャリー信号c3 が生成されてから
は、和信号生成回路が上記式(16)の演算を行うだけ
で、真の和信号を生成することができる。尚、この例の
場合に、最上位ビットの和s7 が算出されるまでの時間
Tは、前述した式(12)において、時間t4の項を式
(16)の演算に要する時間t4’に置き換えた値とな
り、その差(t4−t4’)の時間だけ演算時間が短縮
される。
【0042】次に、請求項2に記載のキャリールックア
ヘッド加算器は、互いが加算対象である複数ビットの2
つの加算対象信号を所定の複数ビット毎に分けてなるグ
ループ毎に夫々対応して設けられた複数の第1演算回路
と、第2演算回路とを備えている。
【0043】そして、第1演算回路の夫々は、対応する
グループの複数ビットの両加算対象信号と、その両加算
対象信号の最下位桁より1つ下位桁からのキャリー信号
とを入力して、両加算対象信号を前記キャリー信号を含
めて加算した和信号を生成すると共に、両加算対象信号
の各桁の夫々について、各桁の両ビットの論理積である
キャリー生成信号と、各桁の両ビットの排他的論理和で
あるキャリー伝搬信号とを生成する。
【0044】また、第2演算回路は、加算対象信号のグ
ループのうち最下位桁のグループに対応する第1演算回
路へ入力されるキャリー信号と、各第1演算回路により
夫々生成されたキャリー生成信号及びキャリー伝搬信号
とから、最下位桁のグループに対応する第1演算回路以
外の各第1演算回路へ入力すべきキャリー信号を夫々生
成し、その生成したキャリー信号を対応する第1演算回
路に出力する。
【0045】つまり、請求項2に記載のキャリールック
アヘッド加算器では、第1演算回路の夫々が、例えば図
10に示した各4ビット全加算器(ADD)30−0,
30−1,…,30−7と同様の役割を果たし、第2演
算回路が、例えば図10に示したキャリー生成/伝搬信
号生成回路(4GP)32−0,32−1,…,32−
7及び桁上げ先見回路(1CLA,2CLA,3CL
A,4CLA,1CLA,2CLA,3CLA,4CL
A)34−0,34−1,…,34−7からなる回路部
分全体と同様の役割を果たす。
【0046】ここで特に、請求項2に記載のキャリール
ックアヘッド加算器では、第1演算回路の夫々が、単な
る複数ビットの全加算器によって構成されているのでは
なく、請求項1に記載の論理演算回路によって構成され
ている。従って、このような請求項2に記載のキャリー
ルックアヘッド加算器によれば、前述したように、各第
1演算回路の夫々が、第2演算回路によってキャリー信
号(即ち、下位桁からのキャリー信号)が生成されてか
ら、より早く和信号を生成することとなるため、加算演
算に要する時間を短縮することができる。
【0047】一方、請求項3に記載のキャリールックア
ヘッド加算器では、第1演算回路の全てを請求項1に記
載の論理演算回路によって構成するのではなく、複数の
第1演算回路のうち所定数の第1演算回路だけを、請求
項1に記載の論理演算回路で構成し、他の第1演算回路
は、両加算対象信号とキャリー信号とを入力として、キ
ャリー生成信号及びキャリー伝搬信号と和信号とを生成
する第2の複数ビット全加算器(即ち、従来回路)から
構成するようにしている。
【0048】そして更に、請求項3に記載のキャリール
ックアヘッド加算器では、請求項1に記載の論理演算回
路からなる第1演算回路には、他の第1演算回路に入力
される加算対象信号よりも上位桁側の加算対象信号が入
力されるようにしている。つまり、前述したように、請
求項1に記載の論理演算回路は、上記従来回路(第2の
複数ビット全加算器)に対し、下位桁からのキャリー信
号が確定してから全加算を開始することなく和信号を生
成するという点で優位性がある。そして、この種のキャ
リールックアヘッド加算器において、第2演算回路が各
第1演算回路へのキャリー信号を生成する際には、上位
桁側の加算対象信号に対応する第1演算回路へのキャリ
ー信号ほど、その生成(確定)が遅れる。
【0049】そこで、請求項3に記載のキャリールック
アヘッド加算器では、キャリー信号の確定が遅れる上位
桁側の第1演算回路に対してのみ、請求項1に記載の論
理演算回路を用いている。よって、請求項3に記載のキ
ャリールックアヘッド加算器によれば、請求項1に記載
の論理演算回路を用いることによる回路増加分(和信号
生成回路による増加分)を最小限に抑えつつ、加算演算
に要する時間を短縮することができる。
【0050】
【発明の実施の形態】以下、本発明が適用された実施例
について図面を用いて説明する。尚、本発明の実施の形
態は、下記の実施例に何ら限定されることなく、本発明
の技術的範囲に属する限り、種々の形態を採り得ること
は言うまでもない。
【0051】[第1実施例]まず、図1は、本発明が適
用された第1実施例の8ビットのキャリールックアヘッ
ド加算器(以下、8ビットCLA加算器という)を示す
ブロック図である。尚、本実施例の8ビットCLA加算
器は、0ビット目から7ビット目までの8ビットの2つ
の加算対象信号a7:0 ,b7:0 と、−1ビット目からの
キャリー信号(キャリーイン)c-1とを外部から入力し
て、両加算対象信号a7:0 ,b7:0 をキャリー信号c-1
と共に全加算し、8ビットの和信号s7:0 と、7ビット
目からのキャリー信号(最上位ビットにおけるキャリー
アウト)c7 とを出力するものである。
【0052】図1に示すように、本実施例の8ビットC
LA加算器は、両加算対象信号a7:0 ,b7:0 の下位4
ビットa3:0 ,b3:0 と外部からのキャリー信号c-1と
を入力して、前述した式(1)〜(4)の演算を実行す
ることにより、4ビットのキャリー生成信号g3:0 、4
ビットのキャリー伝搬信号p3:0 、及び4ビットの和信
号s3:0 を生成する4ビット全加算器(ADD)2と、
この4ビット全加算器2が生成した4ビットのキャリー
生成信号g3:0 及びキャリー伝搬信号p3:0 を入力し
て、前述した式(5),(6)の演算を実行することに
より、両加算対象信号a7:0 ,b7:0 の下位4ビットa
3:0 ,b3:0 を1つのブロックとした場合の1ビットの
キャリー生成信号G[3 ]及びキャリー伝搬信号P[3 ]を
生成する4ビット分のキャリー生成/伝搬信号生成回路
(4GP)4と、このキャリー生成/伝搬信号生成回路
4が生成したキャリー生成信号G[3 ]及びキャリー伝搬
信号P[3 ]と4ビット全加算器2へのキャリー信号c-1
とを入力して、前述した式(8)の演算を実行すること
により、両加算対象信号a7:0 ,b7:0 の3ビット目か
らのキャリー信号c3 を生成する桁上げ先見回路(1C
LA)6−0とを備えている。
【0053】そして更に、本実施例の8ビットCLA加
算器は、両加算対象信号a7:0 ,b7:0 の上位4ビット
a7:4 ,b7:4 を入力して、前述した式(1),(2)
の演算を実行することにより、4ビットのキャリー生成
信号g7:4 及びキャリー伝搬信号p7:4 を生成すると共
に、入力した加算対象信号a7:4 ,b7:4 の最下位桁へ
の桁上がりがないものとして(換言すれば、キャリー信
号c3 が0であるものとして)、前述した式(3),
(4)の演算を実行することにより、4ビットの仮の和
信号sz7:4 を生成する4ビット全加算器(ADDZ)
12と、この4ビット全加算器12が生成した4ビット
のキャリー生成信号g7:4 、キャリー伝搬信号p7:4 、
及び仮の和信号sz7:4 と桁上げ先見回路(1CLA)
6−0が生成したキャリー信号c3 とを入力し、前述し
た式(5),(6)の演算を実行することにより、両加
算対象信号a7:0 ,b7:0 の上位4ビット7:4 ,b7:4
を1つのブロックとした場合の1ビットのキャリー生成
信号G[7 ]及びキャリー伝搬信号P[7 ]を生成すると共
に、前述した式(16)の演算を実行することにより、
4ビットの真の和信号s7:4 を生成する論理回路(4G
PS)14と、この論理回路14が生成したキャリー生
成信号G[7 ]及びキャリー伝搬信号P[7 ]と、初段のキ
ャリー生成/伝搬信号生成回路4が生成したキャリー生
成信号G[3 ]及びキャリー伝搬信号P[3 ]と、初段の4
ビット全加算器2へのキャリー信号c-1とを入力して、
前述した式(9)の演算を実行することにより、両加算
対象信号a7:0 ,b7:0 の7ビット目からのキャリー信
号c7 を生成する桁上げ先見回路(2CLA)6−1と
を備えている。
【0054】ここで、まず、両加算対象信号a7:0 ,b
7:0 の下位4ビットa3:0 ,b3:0が入力される初段の
4ビット全加算器(ADD)2は、図10に示した従来
のCLA加算器に用いられた4ビット加算器30と同様
のものであり、例えば図2に示す如く構成されている。
尚、図2において、「−」の後に付された数字(n=0
〜3)は、外部から入力される4ビットの両加算対象信
号a,bのうち、最下位ビットを0ビット目とした場合
のnビット目に対応することを示している。
【0055】即ち、4ビット全加算器(ADD)2は、
両加算対象信号a,bのnビット目an ,bn の論理積
をキャリー生成信号gn として出力するアンドゲートA
N1−nと、両加算対象信号のnビット目an ,bn の
排他的論理和をキャリー伝搬信号pn として出力するイ
クスクルーシブオアゲートEX1−nと、キャリー伝搬
信号pn と(n−1)ビット目からのキャリー信号cn-
1 との排他的論理和をnビット目の和sn として出力す
るイクスクルーシブオアゲートEX2−nと、キャリー
伝搬信号pn と(n−1)ビット目からのキャリー信号
cn-1 との論理積を出力するアンドゲートAN2−n
と、アンドゲートAN2−nの出力とキャリー生成信号
gn との論理和をnビット目からのキャリー信号cn と
して出力するオアゲートOR1−nと、からなる1ビッ
ト全加算器を4個備えている。そして、上記各1ビット
全加算器は、オアゲートOR1−nの出力が次段のイク
スクルーシブオアゲートEX2−(n+1)及びアンド
ゲートAN2−(n+1)へ入力されるように順次接続
されている。また、1段目の1ビット全加算器を構成す
るイクスクルーシブオアゲートEX2−0及びアンドゲ
ートAN2−0へは、外部からのキャリー信号c-1が入
力されている。尚、4段目のアンドゲートAN2及びオ
アゲートOR1は、次段へキャリー信号を出力する必要
が無いため省略されている。そして、このような4ビッ
ト全加算器(ADD)2では、各アンドゲートAN1−
nにより式(1)の演算が実行され、各イクスクルーシ
ブオアゲートEX1−nにより式(2)の演算が実行さ
れ、各イクスクルーシブオアゲートEX2−nにより式
(3)の演算が実行され、各アンドゲートAN2−n及
びオアゲートOR1−nにより式(4)の演算が実行さ
れる。
【0056】次に、初段の4ビット全加算器(ADD)
2に対応して設けられた4ビット分のキャリー生成/伝
搬信号生成回路(4GP)4は、図10に示した従来の
CLA加算器に用いられたキャリー生成/伝搬信号生成
回路(4GP)32と同様のものであり、例えば図3に
示す如く構成されている。
【0057】即ち、キャリー生成/伝搬信号生成回路
(4GP)4は、4ビット全加算器(ADD)2が生成
したキャリー伝搬信号p3:0 の3ビット目p3 から1ビ
ット目p1 までと、同じく4ビット全加算器(ADD)
2が生成したキャリー生成信号g3:0 の0ビット目g0
との論理積をとるアンドゲートAN3と、キャリー伝搬
信号p3:0 の3ビット目p3 及び2ビット目p2 とキャ
リー生成信号g3:0 の1ビット目g1 との論理積をとる
アンドゲートAN4と、キャリー伝搬信号p3:0の3ビ
ット目p3 とキャリー生成信号g3:0 の2ビット目g2
との論理積をとるアンドゲートAN5と、アンドゲート
AN4,AN5,AN6の各出力とキャリー生成信号g
3:0 の3ビット目g3 との論理和を、1ビットのキャリ
ー生成信号G[3 ]として出力するオアゲートOR2と、
キャリー伝搬信号p3:0 の3ビット目p3 から0ビット
目p0 までの論理積を、1ビットのキャリー伝搬信号P
[3 ]として出力するアンドゲートAN6と、から構成さ
れている。
【0058】そして、このようなキャリー生成/伝搬信
号生成回路(4GP)4では、アンドゲートAN3,A
N4,AN5及びオアゲートOR2により式(5)の演
算が実行され、アンドゲートAN6により式(6)の演
算が実行される。次に、初段の4ビット全加算器(AD
D)2及びキャリー生成/伝搬信号生成回路(4GP)
4に対応して設けられた桁上げ先見回路(1CLA)6
−0は、図10に示した従来のCLA加算器に用いられ
た桁上げ先見回路(1CLA)34−0と同様のもので
あり、式(8)の演算を実行するために図4に示す如く
構成されている。
【0059】即ち、桁上げ先見回路(1CLA)6−0
は、キャリー生成/伝搬信号生成回路(4GP)4が生
成したキャリー伝搬信号P[3 ]と4ビット全加算器2へ
入力されるキャリー信号c-1との論理積を出力するアン
ドゲートAN7と、キャリー生成/伝搬信号生成回路
(4GP)4が生成したキャリー生成信号G[3 ]とアン
ドゲートAN7の出力との論理和を、加算対象信号a7:
0 ,b7:0 の3ビット目からのキャリー信号c3 として
出力するオアゲートOR3と、から構成されている。
【0060】一方、両加算対象信号a7:0 ,b7:0 の上
位4ビットa7:4 ,b7:4 が入力される2段目の4ビッ
ト全加算器(ADDZ)12は、図5に示すように、図
2に示した4ビット全加算器(ADD)2と同様の回路
構成を有している。そして、当該4ビット全加算器(A
DDZ)12には、4ビットの両加算対象信号a7:4,
b7:4 の最下位ビットa4 ,b4 (つまり、8ビットの
両加算対象信号a7:0,b7:0 の4ビット目)を0ビッ
ト目として、両加算対象信号a7:4 ,b7:4 の各ビット
が入力される。
【0061】但し、この4ビット全加算器(ADDZ)
12では、下位桁からのキャリー信号の入力ライン、即
ち、1段目の1ビット全加算器を構成するイクスクルー
シブオアゲートEX2−0及びアンドゲートAN2−0
の入力ラインは、予めロウレベル(接地電位)に固定さ
れている。
【0062】よって、この4ビット全加算器(ADD
Z)12では、各アンドゲートAN1−0〜AN1−3
から、両加算対象信号a7:4 ,b7:4 の各ビットに対応
するキャリー生成信号g7:4 が出力されると共に、各イ
クスクルーシブオアゲートEX1−0〜EX1−3か
ら、両加算対象信号a7:4 ,b7:4 の各ビットに対応す
るキャリー伝搬信号p7:4 が出力され、更に、各イクス
クルーシブオアゲートEX2−0〜EX2−3から、両
加算対象信号a7:4 ,b7:4 の最下位桁への桁上がりが
ないものとして(即ちキャリー信号c3 が0であるもの
として)両加算対象信号a7:4 ,b7:4 を全加算した結
果である仮の和信号sz7:4 が出力される。
【0063】次に、2段目の4ビット全加算器(ADD
Z)12に対応して設けられた論理回路(4GPS)1
4は、図6に示す如く構成されている。即ち、論理回路
(4GPS)14は、図3に示したキャリー生成/伝搬
信号生成回路(4GP)4と同様のアンドゲートAN3
〜AN6及びオアゲートOR2からなる回路構成に加え
て、更に、2段目の4ビット全加算器(ADDZ)12
が生成したキャリー伝搬信号p7:4 の2ビット目p6 か
ら0ビット目p4 までと桁上げ先見回路(1CLA)6
−0が生成したキャリー信号c3 との論理積をとるアン
ドゲートAN8と、アンドゲートAN8の出力と4ビッ
ト全加算器(ADDZ)12が生成した仮の和信号sz
7:4 の3ビット目sz7 との排他的論理和を、真の和信
号s7 として出力するイクスクルーシブオアゲートEX
7と、キャリー伝搬信号p7:4 の1ビット目p5 及び0
ビット目p4 とキャリー信号c3 との論理積をとるアン
ドゲートAN9と、アンドゲートAN9の出力と仮の和
信号sz7:4 の2ビット目sz6 との排他的論理和を、
真の和信号s6 として出力するイクスクルーシブオアゲ
ートEX6と、キャリー伝搬信号p7:4 の0ビット目p
4 とキャリー信号c3 との論理積をとるアンドゲートA
N10と、アンドゲートAN10の出力と仮の和信号s
z7:4 の1ビット目sz5 との排他的論理和を、真の和
信号s5 として出力するイクスクルーシブオアゲートE
X5と、キャリー信号c3 と仮の和信号sz7:4 の0ビ
ット目s4 との排他的論理和を、真の和信号s4 として
出力するイクスクルーシブオアゲートEX4と、を備え
ている。
【0064】このような論理回路(4GPS)14にお
いて、アンドゲートAN3〜AN6及びオアゲートOR
2からなる回路部分には、図3に示したキャリー生成/
伝搬信号生成回路(4GP)4の場合に対し、キャリー
生成信号g3:0 及びキャリー伝搬信号p3:0 に代えて、
2段目の4ビット全加算器(ADDZ)12にて生成さ
れたキャリー生成信号g7:4 及びキャリー伝搬信号p7:
4 が入力される。
【0065】そして、この論理回路(4GPS)14で
は、アンドゲートAN3,AN4,AN5及びオアゲー
トOR2により式(5)の演算が実行されて、オアゲー
トOR2から1ビットのキャリー生成信号G[7 ]が出力
され、また、アンドゲートAN6により式(6)の演算
が実行されて、このアンドゲートAN6から1ビットの
キャリー伝搬信号P[7 ]が出力される。
【0066】そして更に、この論理回路(4GPS)1
4では、アンドゲートAN8〜AN10及びイクスクル
ーシブオアゲートEX4〜EX7により、仮の和信号s
z7:4 の各ビットについて、夫々、式(16)の演算が
実行され、各イクスクルーシブオアゲートEX4〜EX
7から、加算対象信号a,bの上位4ビットa7:4 ,b
7:4 をキャリー信号c3 と共に加算した真の和信号s7:
4 が出力される。
【0067】次に、2段目の4ビット全加算器(ADD
Z)12及び論理回路(4GPS)14に対応して設け
られた桁上げ先見回路(2CLA)6−1は、図10に
示した従来のCLA加算器に用いられた桁上げ先見回路
(2CLA)34−1と同様のものであり、式(9)の
演算を実行するために図7に示す如く構成されている。
【0068】即ち、桁上げ先見回路(2CLA)6−1
は、論理回路(4GPS)14が生成したキャリー伝搬
信号P[7 ]と初段のキャリー生成/伝搬信号生成回路
(4GP)4が生成したキャリー伝搬信号P[3 ]と初段
の4ビット全加算器(ADD)2へ入力されるキャリー
信号c-1との論理積を出力するアンドゲートAN11
と、論理回路(4GPS)14が生成したキャリー伝搬
信号P[7 ]と初段のキャリー生成/伝搬信号生成回路
(4GP)4が生成したキャリー生成信号G[3 ]との論
理積を出力するアンドゲートAN12と、論理回路(4
GPS)14が生成したキャリー生成信号G[7 ]と上記
両アンドゲートAN11,AN12の出力との論理和
を、加算対象信号a7:0 ,b7:0 の7ビット目からのキ
ャリー信号c7 として出力するオアゲートOR4と、か
ら構成されている。
【0069】つまり、本第1実施例の8ビットCLA加
算器では、図10にて一点鎖線で囲んだ従来の8ビット
CLA加算器に対し、2段目の4ビット全加算器(AD
D)30−1及びキャリー生成/伝搬信号生成回路(4
GP)32−1に代えて、夫々、図5に示した4ビット
全加算器(ADDZ)12と、図6に示した論理回路
(4GPS)14とを用いている。換言するならば、従
来の8ビットCLA加算器に対し、2段目の4ビット全
加算器(ADD)30−1におけるキャリー信号c3 の
入力ラインをロウレベルに固定すると共に、2段目のキ
ャリー生成/伝搬信号生成回路(4GP)32−1へ、
図6に示したアンドゲートAN8〜AN10及びイクス
クルーシブオアゲートEX4〜EX7からなる回路を追
加している。
【0070】尚、本実施例の8ビットCLA加算器で
は、2段目の4ビット全加算器(ADDZ)12に対し
論理回路(4GPS)14にてアンドゲートAN8〜A
N10及びイクスクルーシブオアゲートEX4〜EX7
からなる部分を加えた回路と、初段の4ビット全加算器
(ADD)2とが、夫々、第1演算回路に相当してお
り、また、初段のキャリー生成/伝搬信号生成回路(4
GP)4と、初段の桁上げ先見回路(1CLA)6−0
と、論理回路(4GPS)14にてアンドゲートAN3
〜AN6及びオアゲートOR2からなる部分と、2段目
の桁上げ先見回路(2CLA)6−1と、からなる回路
部分全体が、第2演算回路に相当している。そして、2
段目の4ビット全加算器(ADDZ)12が、請求項1
に記載の複数ビット全加算器に相当しており、論理回路
(4GPS)14にてアンドゲートAN8〜AN10及
びイクスクルーシブオアゲートEX4〜EX7からなる
部分が、請求項1に記載の和信号生成回路に相当してい
る。
【0071】このように構成された本実施例の8ビット
CLA加算器では、8ビットの両加算対象信号a7:0 ,
b7:0 と下位桁からのキャリー信号c-1とを入力する
と、まず、初段の4ビット全加算器(ADD)2が、両
加算対象信号a7:0 ,b7:0 の下位4ビットa3:0 ,b
3:0 に夫々対応する4ビットのキャリー生成信号g3:0
及びキャリー伝搬信号p3:0 を生成すると共に、下位4
ビットa3:0 ,b3:0 についてキャリー信号c-1を加味
した全加算動作を開始する。また、これと並行して、2
段目の4ビット全加算器(ADDZ)12が、両加算対
象信号a7:0 ,b7:0 の上位4ビットa7:4 ,b7:4 に
夫々対応する4ビットのキャリー生成信号g7:4 及びキ
ャリー伝搬信号p7:4 を生成すると共に、上位4ビット
a7:4 ,b7:4 についてキャリー信号c3 を0とした全
加算動作を開始することで、仮の和信号sz7:4 の生成
を開始する。
【0072】すると、各4ビット全加算器(ADD,A
DDZ)2,12における全加算動作と並行して、初段
のキャリー生成/伝搬信号生成回路(4GP)4が、4
ビット全加算器(ADD)2にて生成されたキャリー生
成信号g3:0 及びキャリー伝搬信号p3:0 に基づき、1
ビットのキャリー生成信号G[3 ]及びキャリー伝搬信号
P[3 ]を生成すると共に、2段目の論理回路(4GP
S)14にてアンドゲートAN3〜AN6及びオアゲー
トOR2からなる部分が、4ビット全加算器(ADD
Z)12にて生成されたキャリー生成信号g7:4 及びキ
ャリー伝搬信号p7:4 に基づき、1ビットのキャリー生
成信号G[7 ]及びキャリー伝搬信号P[7 ]を生成する。
【0073】そして、初段の桁上げ先見回路(1CL
A)6−0が、初段のキャリー生成/伝搬信号生成回路
(4GP)4にて生成された1ビットのキャリー生成信
号G[3]及びキャリー伝搬信号P[3 ]と、外部からのキ
ャリー信号c-1とに基づき、キャリー信号c3 を生成
し、また、2段目の桁上げ先見回路(2CLA)6−1
が、初段のキャリー生成/伝搬信号生成回路(4GP)
4にて生成された1ビットのキャリー生成信号G[3 ]及
びキャリー伝搬信号P[3 ]と、2段目の論理回路(4G
PS)14にて生成された1ビットのキャリー生成信号
G[7 ]及びキャリー伝搬信号P[7 ]と、外部からのキャ
リー信号c-1とに基づき、キャリー信号c7を生成す
る。
【0074】その後、論理回路(4GPS)14にてア
ンドゲートAN8〜AN10及びイクスクルーシブオア
ゲートEX4〜EX7からなる部分が、2段目の4ビッ
ト全加算器(ADDZ)12にて生成された仮の和信号
sz7:4 と、初段の桁上げ先見回路(1CLA)6−0
により生成されたキャリー信号c3 とから、仮の和信号
sz7:4 の各ビットについて式(16)の演算を実行
し、これにより、上位4ビットa7:4 ,b7:4 の真の和
信号s7:4 を出力する。そして、論理回路(4GPS)
14から真の和信号s7:4 が出力された時点では、初段
の4ビット全加算器(ADD)2にて下位4ビットa3:
0 ,b3:0の全加算が完了しているため、この時点で、
8ビットの両加算対象信号a7:0 ,b7:0 に対する加算
演算が終了する。
【0075】以上のように、本実施例の8ビットCLA
加算器では、加算対象信号a,bの上位4ビットa7:4
,b7:4 を入力する2段目の4ビット全加算器(AD
DZ)12が、下位桁からのキャリー信号c3 を0とし
て上位4ビットa7:4 ,b7:4を加算した仮の和信号s
z7:4 を生成し、論理回路(4GPS)14にてアンド
ゲートAN8〜AN10及びイクスクルーシブオアゲー
トEX4〜EX7からなる部分が、仮の和信号sz7:4
の各ビットについて上記式(16)の演算を行うことに
より、真の和信号s7:4 を生成するようにしている。
【0076】従って、本実施例の8ビットCLA加算器
によれば、初段の桁上げ先見回路(1CLA)6−0か
らのキャリー信号c3 が未だ確定していない間に、2段
目の4ビット全加算器(ADDZ)12によって予め仮
の和信号sz7:4 を生成しておくことができ、キャリー
信号c3 が確定してからは、アンドゲートAN8〜AN
10及びイクスクルーシブオアゲートEX4〜EX7か
らなる回路により上記式(16)の演算を行うだけで、
真の和信号s7:4 を生成することができる。
【0077】この結果、図10に示した従来の8ビット
CLA加算器の如く下位桁からのキャリー信号c3 が確
定してから4ビット全加算器(ADD)30−1が全加
算動作を開始する構成と比べて、8ビットの和信号s7:
0 を生成するまでに要する時間を短縮することができ
る。
【0078】[第2実施例]次に、第2実施例として、
本発明を32ビットのCLA加算器に適用した場合の構
成例について、図8を用いて説明する。図8に示すよう
に、第2実施例の32ビットCLA加算器は、図10に
示した従来の32ビットCLA加算器に対し、各4ビッ
ト全加算器(ADD)30−0〜30−7及びそれらに
対応する各キャリー生成/伝搬信号生成回路(4GP)
32−0〜32−7からなる8個の回路ブロック(即
ち、図1において一点鎖線で囲んだ回路ブロック10と
同一構成の回路ブロック)に代えて、夫々、図5に示し
た4ビット全加算器(ADDZ)12及び図6に示した
論理回路(4GPS)14からなる回路ブロック(即
ち、図1において一点鎖線で囲んだ回路ブロック20と
同一構成の回路ブロック)20−0,20−1,…,2
0−7を用いている。
【0079】尚、図8において、5段目の桁上げ先見回
路(1CLA)6−4は、初段の桁上げ先見回路(1C
LA)6−0と同様に図4の如く構成され、6段目の桁
上げ先見回路(2CLA)6−5は、2段目の桁上げ先
見回路(2CLA)6−1と同様に図7の如く構成され
ている。また、3段目及び7段目の桁上げ先見回路(3
CLA)6−2,6−6と、4段目及び8段目の桁上げ
先見回路(4CLA)6−3,6−7も、前述した一般
式(7)の演算を行うものであり、その回路構成は図4
及び図7から容易に類推することができるため、図示は
省略する。
【0080】そして、このように構成された第2実施例
の32ビットCLA加算器においても、各回路ブロック
20−0〜20−7内の4ビット全加算器(ADDZ)
12と、論理回路(4GPS)14にてアンドゲートA
N8〜AN10及びイクスクルーシブオアゲートEX4
〜EX7からなる回路との作用により、下位桁からのキ
ャリー信号c(c-1,c3 ,c7 ,c11,c15,c19,
c23,c27)が確定してから、より早く和信号が生成さ
れる。よって、加算演算に要する時間を短縮することが
できる。
【0081】[第3実施例]次に、第3実施例の32ビ
ットCLA加算器について、図9を用いて説明する。図
9に示すように、第3実施例の32ビットCLA加算器
は、図10に示した従来の32ビットCLA加算器に対
し、加算対象信号a31:0 ,b31:0 の上位16ビットa
31:16 ,b31:16 が入力される4個の4ビット全加算器
(ADD)30−4〜30−7及びそれらに対応する各
キャリー生成/伝搬信号生成回路(4GP)32−4〜
32−7からなる4個の回路ブロックに代えて、夫々、
図5に示した4ビット全加算器(ADDZ)12及び図
6に示した論理回路(4GPS)14からなる回路ブロ
ック20−4〜20−7を用いている。尚、図9におい
て、符号10−0,10−1,…,10−3は、図1に
おいて一点鎖線で囲んだ回路ブロック10と同一構成の
回路ブロックである。よって、加算対象信号a31:0 ,
b31:0 の下位16ビットa15:0 ,b15:0 に対応する
部分については、図10の従来構成と同じである。
【0082】つまり、4ビット全加算器(ADDZ)1
2及び論理回路(4GPS)14からなる回路ブロック
20を用いた場合の優位性は、前述した如く、下位桁か
らのキャリー信号が確定してから全加算を開始すること
なく和信号を生成するという点にある。そして、この種
のCLA加算器では、加算対象信号a,bの上位ビット
に対応するキャリー信号ほど、その生成(確定)が遅れ
る。
【0083】そこで、第3実施例の32ビットCLA加
算器では、上述した第2実施例のように8個の回路ブロ
ック10の全てを回路ブロック20に置き換えるのでは
なく、加算対象信号a31:0,b31:0の上位16ビットa
31:16 ,b31:16 に対応する上位4個の回路ブロック1
0だけを、回路ブロック20に置き換えるようにしてい
る。
【0084】そして、このような第3実施例の32ビッ
ト加算器によれば、回路ブロック20を用いることによ
る回路増加分、即ち、図6に示したアンドゲートAN8
〜AN10及びイクスクルーシブオアゲートEX4〜E
X7からなる回路を追加することによる回路増加分を、
最小限に抑えつつ、加算演算に要する時間を短縮するこ
とができる。
【0085】尚、上記第3実施例の32ビットCLA加
算器では、加算対象信号a31:0,b31:0の上位16ビッ
トa31:16 ,b31:16 に対応する部分に、回路ブロック
20を用いたが、回路ブロック20は、下位桁からのキ
ャリー信号が確定してから全加算を開始すると演算時間
が遅れてしまうこととなる箇所に用いればよく、その適
用箇所は加算器全体の回路構成に応じて適宜選択するこ
とができる。
【0086】また、上記第1〜第3実施例の各CLA加
算器では、加算対象信号a,bを4ビット毎のグループ
分けて加算するものであったが、グループ分けするビッ
ト数は任意である。
【図面の簡単な説明】
【図1】 第1実施例の8ビットのキャリールックアヘ
ッド加算器を示すブロック図である。
【図2】 図1における初段の4ビット全加算器(AD
D)を表す回路図である。
【図3】 図1における4ビット分のキャリー生成/伝
搬信号生成回路(4GP)を表す回路図である。
【図4】 図1における初段の桁上げ先見回路(1CL
A)を表す回路図である。
【図5】 図1における2段目の4ビット全加算器(A
DDZ)を表す回路図である。
【図6】 図1における論理回路(4GPS)を表す回
路図である。
【図7】 図1における2段目の桁上げ先見回路(2C
LA)を表す回路図である。
【図8】 第2実施例の32ビットのキャリールックア
ヘッド加算器を示すブロック図である。
【図9】 第3実施例の32ビットのキャリールックア
ヘッド加算器を示すブロック図である。
【図10】 従来のキャリールックアヘッド加算器を示
すブロック図である。
【符号の説明】
2,30…4ビット全加算器(ADD) 4,32…4ビット分のキャリー生成/伝搬信号生成回
路(4GP) 6,34…桁上げ先見回路(1CLA,2CLA,3C
LA,4CLA) 12…4ビット全加算器(ADDZ) 14…論理回路(4GPS) 10,20…回路ブロック

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 互いが加算対象である複数ビットの2つ
    の加算対象信号を入力し、前記両加算対象信号の各桁の
    夫々について、各桁の両ビットの論理積であるキャリー
    生成信号と各桁の両ビットの排他的論理和であるキャリ
    ー伝搬信号とを生成すると共に、前記両加算対象信号の
    最下位桁への桁上がりがないものとして前記両加算対象
    信号を加算し、該加算結果を仮の和信号として出力する
    複数ビット全加算器と、 該複数ビット全加算器により生成された前記仮の和信号
    及び前記キャリー伝搬信号と、前記両加算対象信号の最
    下位桁より1つ下位桁からのキャリー信号とを入力し、
    前記仮の和信号の各ビットの夫々について、前記キャリ
    ー伝搬信号のうち当該仮の和信号のビットに対応するビ
    ットの1つ下位のビットから最下位ビットまでの論理積
    と前記下位桁からのキャリー信号との論理積と、当該仮
    の和信号のビットとの排他的論理和を生成し、該排他的
    論理和を、前記両加算対象信号を前記キャリー信号を含
    めて加算した和信号として出力する和信号生成回路と、 からなることを特徴とする論理演算回路。
  2. 【請求項2】 互いが加算対象である複数ビットの2つ
    の加算対象信号を所定の複数ビット毎に分けてなるグル
    ープ毎に夫々設けられ、対応するグループの前記両加算
    対象信号と、該両加算対象信号の最下位桁より1つ下位
    桁からのキャリー信号とを入力して、該両加算対象信号
    を前記キャリー信号を含めて加算した和信号を生成する
    と共に、該両加算対象信号の各桁の夫々について、各桁
    の両ビットの論理積であるキャリー生成信号と、各桁の
    両ビットの排他的論理和であるキャリー伝搬信号とを生
    成する複数の第1演算回路と、 前記グループのうち最下位桁のグループに対応する前記
    第1演算回路へ入力される前記キャリー信号と、前記各
    第1演算回路により夫々生成された前記キャリー生成信
    号及びキャリー伝搬信号とから、前記最下位桁のグルー
    プに対応する第1演算回路以外の前記各第1演算回路へ
    入力すべき前記キャリー信号を夫々生成し、該生成した
    キャリー信号を対応する前記第1演算回路に出力する第
    2演算回路と、 を備えたキャリールックアヘッド加算器において、 前記各第1演算回路が、請求項1に記載の論理演算回路
    からなること、 を特徴とするキャリールックアヘッド加算器。
  3. 【請求項3】 互いが加算対象である複数ビットの2つ
    の加算対象信号を所定の複数ビット毎に分けてなるグル
    ープ毎に夫々設けられ、対応するグループの前記両加算
    対象信号と、該両加算対象信号の最下位桁より1つ下位
    桁からのキャリー信号とを入力して、該両加算対象信号
    を前記キャリー信号を含めて加算した和信号を生成する
    と共に、該両加算対象信号の各桁の夫々について、各桁
    の両ビットの論理積であるキャリー生成信号と、各桁の
    両ビットの排他的論理和であるキャリー伝搬信号とを生
    成する複数の第1演算回路と、 前記グループのうち最下位桁のグループに対応する前記
    第1演算回路へ入力される前記キャリー信号と、前記各
    第1演算回路により夫々生成された前記キャリー生成信
    号及びキャリー伝搬信号とから、前記最下位桁のグルー
    プに対応する第1演算回路以外の前記各第1演算回路へ
    入力すべき前記キャリー信号を夫々生成し、該生成した
    キャリー信号を対応する前記第1演算回路に出力する第
    2演算回路と、 を備えたキャリールックアヘッド加算器において、 前記複数の第1演算回路のうち所定数の第1演算回路
    が、請求項1に記載の論理演算回路からなると共に、 前記複数の第1演算回路のうち他の第1演算回路は、前
    記両加算対象信号と前記キャリー信号とを入力として、
    前記キャリー生成信号及びキャリー伝搬信号と前記和信
    号とを生成する第2の複数ビット全加算器からなり、 前記請求項1に記載の論理演算回路には、前記他の第1
    演算回路に入力される加算対象信号よりも上位桁側の加
    算対象信号が入力されるように構成されていること、 を特徴とするキャリールックアヘッド加算器。
JP8039601A 1996-02-27 1996-02-27 論理演算回路及びキャリールックアヘッド加算器 Pending JPH09231055A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP8039601A JPH09231055A (ja) 1996-02-27 1996-02-27 論理演算回路及びキャリールックアヘッド加算器
US08/806,213 US5877973A (en) 1996-02-27 1997-02-26 Logic operation circuit and carry look ahead adder
FR9702289A FR2745648A1 (fr) 1996-02-27 1997-02-26 Additionneur a lecture anticipee de report et son circuit d'operations logiques
DE19708024A DE19708024A1 (de) 1996-02-27 1997-02-27 Logische Verknüpfungsschaltung und Parallelübertragsaddierer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8039601A JPH09231055A (ja) 1996-02-27 1996-02-27 論理演算回路及びキャリールックアヘッド加算器

Publications (1)

Publication Number Publication Date
JPH09231055A true JPH09231055A (ja) 1997-09-05

Family

ID=12557641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8039601A Pending JPH09231055A (ja) 1996-02-27 1996-02-27 論理演算回路及びキャリールックアヘッド加算器

Country Status (4)

Country Link
US (1) US5877973A (ja)
JP (1) JPH09231055A (ja)
DE (1) DE19708024A1 (ja)
FR (1) FR2745648A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008508637A (ja) * 2004-08-04 2008-03-21 インテル コーポレイション 合計セルと結合されたキャリースキップセルを具備するキャリースキップ加算器

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6523049B1 (en) 1999-12-21 2003-02-18 International Business Machines Corporation Circuit and method for determining greater than or equal to three out of sixty-six
DE10050589B4 (de) 2000-02-18 2006-04-06 Hewlett-Packard Development Co., L.P., Houston Vorrichtung und Verfahren zur Verwendung beim Durchführen einer Gleitkomma-Multiplizier-Akkumulier-Operation
US7299355B2 (en) * 2001-01-12 2007-11-20 Broadcom Corporation Fast SHA1 implementation
JP3741280B2 (ja) * 2003-03-03 2006-02-01 日本テキサス・インスツルメンツ株式会社 桁上げ先見回路およびこれを用いた加算回路
KR100513160B1 (ko) * 2003-10-28 2005-09-08 한국전자통신연구원 감소된 면적을 갖는 캐리 예측 가산기
FR2900252B1 (fr) * 2006-04-21 2008-09-05 R L Daniel Torno Sarl Sa Additionneur n bits et procede d'addition correspondant.
US8521801B2 (en) 2008-04-28 2013-08-27 Altera Corporation Configurable hybrid adder circuitry
CN113419704A (zh) * 2021-07-23 2021-09-21 北京源启先进微电子有限公司 49位加法器及其实现方法、运算电路及芯片
TWI803126B (zh) * 2021-12-30 2023-05-21 新唐科技股份有限公司 預看進位加法器、安全加法器以及執行預看進位加法的方法
WO2023220537A1 (en) * 2022-05-11 2023-11-16 Juan Pablo Ramirez Simple and linear fast adder

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1399200A (fr) * 1963-06-20 1965-05-14 Philips Nv Compteur très rapide
GB1525893A (en) * 1976-03-08 1978-09-20 Motorola Inc Adder for summing bcd operands with precorrected result
NL8401308A (nl) * 1984-04-24 1985-11-18 Philips Nv Voloptelschakeling.
JPS6149233A (ja) * 1984-08-17 1986-03-11 Nec Corp 高速デジタル加減算回路
JPS6274129A (ja) * 1985-09-27 1987-04-04 Daikin Ind Ltd キヤリ−・ルツク・アヘツド加算器
FR2628232B1 (fr) * 1988-03-07 1994-04-08 Etat Francais Cnet Additionneur de type recursif pour calculer la somme de deux operandes
JPH056263A (ja) * 1991-06-27 1993-01-14 Nec Corp 加算器およびその加算器を用いた絶対値演算回路
JPH0561643A (ja) * 1991-09-03 1993-03-12 Mitsubishi Electric Corp キヤリールツクアヘツド加算器
DE69209826T2 (de) * 1992-05-27 1996-08-22 Sgs Thomson Microelectronics Schnelle Addierkette
JPH0651950A (ja) * 1992-07-30 1994-02-25 Mitsubishi Electric Corp 加算回路
US5701504A (en) * 1994-12-28 1997-12-23 Intel Corporation Apparatus and method for addition based on Kogge-Stone parallel algorithm

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008508637A (ja) * 2004-08-04 2008-03-21 インテル コーポレイション 合計セルと結合されたキャリースキップセルを具備するキャリースキップ加算器
US7516173B2 (en) 2004-08-04 2009-04-07 Intel Corporation Carry-skip adder having merged carry-skip cells with sum cells

Also Published As

Publication number Publication date
DE19708024A1 (de) 1997-08-28
US5877973A (en) 1999-03-02
FR2745648A1 (fr) 1997-09-05

Similar Documents

Publication Publication Date Title
JP3761977B2 (ja) 遅延整合技術の利用によりクリティカル・パスを減少させた浮動小数点型掛け算器及びその演算方法
US7395304B2 (en) Method and apparatus for performing single-cycle addition or subtraction and comparison in redundant form arithmetic
JPH05216624A (ja) 演算装置
US5426598A (en) Adder and multiplier circuit employing the same
JP3139466B2 (ja) 乗算器及び積和演算器
JPH0713742A (ja) 乗算装置
JPH09269891A (ja) 部分積加算方法および装置、浮動小数点乗算方法および装置、浮動小数点積和演算方法および装置
JPH09231055A (ja) 論理演算回路及びキャリールックアヘッド加算器
US4914617A (en) High performance parallel binary byte adder
JPH064271A (ja) 乗算器
JPH07271556A (ja) 電子乗算および加算装置および方法
JP3436994B2 (ja) シフト装置
JPH06274317A (ja) 乗算回路及び除算回路
JP3537378B2 (ja) 加算器および集積回路
JPH08221256A (ja) 乗算器及び積和演算装置
US5870322A (en) Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication
JPH04355827A (ja) 開平演算装置
JPH09222991A (ja) 加算方法および加算器
JPH09231201A (ja) 浮動小数点乗算累算装置
JPH11126157A (ja) 乗算方法および乗算回路
JP3187402B2 (ja) 浮動小数点データ加減算回路
JPS593634A (ja) 乗算器
JPH0561643A (ja) キヤリールツクアヘツド加算器
JPH02115929A (ja) 乗算器
JP3153656B2 (ja) 乗算器