Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15...

23
Carry Lookahead Adder (1A) Young W. Lim 11/13/15

Transcript of Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15...

Page 1: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Carry Lookahead Adder (1A)

Young W. Lim11/13/15

Page 2: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Copyright (c) 2013 Young W. Lim.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

Please send corrections (or suggestions) to [email protected].

This document was produced by using OpenOffice and Octave.

Young W. Lim11/13/15

Page 3: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

3Carry Lookahead Adder

G and P

Generate

Propagate

a i bi

cici+ 1

S i

1 1

a i bi

cici+ 1

S i

1 00 1

ai⋅bia i+ bi

Gi = a i⋅bi

P i = a i+ bi

cout = Gi + P i ci

Generate Propagateci+ 1ci

Page 4: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

4Carry Lookahead Adder

Carry Equations

ci+ 1 = G i + P ici

c1 = G0 + P0 c0

c2 = G1 + P1c1

c3 = G2 + P2 c2

c4 = G3 + P3 c3

G0 + P0 c0 = c1

G1 + P1G0 + P1 P 0c0 = c2

G2 + P2G1 + P 2 P1G0 + P2 P1 P 0c0 = c3

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0 = c4

c1 = G0 + P0 c0

c2 = G1 + P1 [G0 + P0 c0 ]c3 = G2 + P2 [G1 + P1 [G0 + P0 c0 ] ]c4 = G3 + P3 [G 2 + P2 [ G1 + P1 [G0 + P0c0 ] ] ]

Page 5: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

5Carry Lookahead Adder

Carry Equations into Gates (1)

ci+ 1 = G i + P ici

c1 = G0 + P0 c0

c2 = G1 + P1c1

c3 = G2 + P2 c2

c4 = G3 + P3 c3

c1 = G0 + P0 c0

c2 = G1 + P1 [G0 + P0 c0 ]c3 = G2 + P2 [G1 + P1 [G0 + P0 c0 ] ]c4 = G3 + P3 [G 2 + P2 [ G1 + P1 [G0 + P0c0 ] ] ]

c0

P 0

G0

c1

P 1

G1 P 2

G2

c2

P 3

G3

c3 c4

Fan-in number: smallStage number: large

Page 6: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

6Carry Lookahead Adder

Carry Equations into Gates (2)

G0 + P0 c0 = c1

G1 + P1G0 + P1 P 0c0 = c2

G2 + P2G1 + P 2 P1G0 + P2 P1 P 0c0 = c3

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0 = c4

c4

G3P 0c0

G0c1

c2

P 1 P0 c0

G1

P 1G0

P 3G2

P 3 P 2G1

P 3 P 2 P1G0

P 3 P 2 P1 P 0c0

c3

G2

P 2G1

P 2 P 1G0

P 2 P 1 P0 c0

Fan-in number: largeStage number: small

Page 7: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

7Carry Lookahead Adder

Full Carry Lookahead

G0 + P0 c0 = c1

G1 + P1G0 + P1 P 0c0 = c2

G2 + P2G1 + P 2 P1G0 + P2 P1 P 0c0 = c3

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0 = c4

Large number of fan-in : Impractical

High Radix Addition (2^g)

AND2, OR2

AND3, OR3

AND4, OR4

AND5, OR5

AND32, OR32 = c32

Multi-level Lookahead

Page 8: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

G0 P0G1 P1G2 P2G3 P3

4-bit Carry Lookahead Logic

Young W. Lim11/13/15

8Carry Lookahead Adder

4-bit Carry Lookahead Logic – interface

c0c4

c1 c0c2c3

Gi = a i⋅bi

P i = a i+ bi

All Gi's P

i's are computed

simultaneously from ai and b

i

each ci's takes 2 gate delays

Page 9: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

G0 P0G1 P1G2 P2G3 P3

Young W. Lim11/13/15

9Carry Lookahead Adder

4-bit Carry Lookahead Logic – boolean equations

c0c4

G2

G1

G0 + P0 c0

+ P1 P 0c0

+ P2 P1 P 0c0+ P2 P1G0

+ P1G0

+ P2G1

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0

c1 c0c2c3

c1 =

c2 =

c3 =

c4 =

Gi = a i⋅bi

P i = a i+ bi

All Gi's P

i's are computed

simultaneously from ai and b

i

each ci's takes 2 gate delays

Carry Lookahead Logic

Page 10: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

G0 P0G1 P1G2 P2G3 P3

Young W. Lim11/13/15

10Carry Lookahead Adder

4-bit Carry Lookahead Logic – POS

c4

c1c2c3

Gi = a i⋅bi

P i = a i+ bi

All Gi's P

i's are computed

simultaneously from ai and b

i

each ci's takes 2 gate delays

c4

G3P 0c0

G0c1

c2

P 1 P0 c0

G1

P 1G0

P 3G2

P 3 P 2G1

P 3 P 2 P1G0

P 3 P 2 P1 P 0c0

c3

G2

P 2G1

P 2 P 1G0

P 2 P 1 P0 c0

Fan-in number: 5Stage number: small

c0

c0

Page 11: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

a0 b0a1 b1a2 b2a3 b3

G0 P0G1 P1G2 P2G3 P3

Young W. Lim11/13/15

11Carry Lookahead Adder

4-bit CLA

c0c4

G0 = a0⋅b0

P0 = a0+ b0

S 0 = P0+ c0

S 0

G1 = a1⋅b1

P1 = a1+ b1

S 1 = P1+ c1

S 1

c1 c0

G2 = a2⋅b2

P2 = a2+ b2

S 2 = P2+ c2

S 2

c2

G3 = a3⋅b3

P3 = a3+ b3

S 3 = P3+ c3

S 3

c3

G2

G1

G0 + P0 c0

+ P1 P 0c0

+ P2 P1 P 0c0+ P2 P1G0

+ P1G0

+ P2G1

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0

c1 =

c2 =

c3 =

c4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

GG PGS 3: 0

Page 12: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

12Carry Lookahead Adder

Multi-level Carry Lookahead

High Radix Addition (2^g)

Multi-level Lookahead

1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 03 2 1

Page 13: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

13Carry Lookahead Adder

Multi-level Carry Lookahead

5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 01

3-bit Lookahead

5-bit Lookahead

4-bit Lookahed

6-bit Lookahead

4-bit Lookahed

GG3 PG3

GG2 PG2

GG1 PG1

GG0 PG0

c0

c0

c6

c9

c14

c16

c16

Overlapping

Contiguous

c6c9c14 no need

c5

c9

c13

Group G's & P's

Page 14: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

14Carry Lookahead Adder

Contiguous Multi-level Carry Lookahead

5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 01

5-bit Lookahead

4-bit Lookahead

4-bit Lookahed

4-bit Lookahead

4-bit Lookahed

GG3 PG3

GG2 PG2

GG1 PG1

GG0 PG0

c0

c0

c4

c8

c12

c16

c16c4c8c12 no need

c4

c8

c12

Group G's & P's

Page 15: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

15Carry Lookahead Adder

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

GG3

c0c16

G2

G1

G0 + P0 c0

+ P1 P 0c0

+ P2 P1 P 0c0+ P2 P1G0

+ P1G0

+ P2G1

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0

c1 =

c2 =

c3 =

c4 =

PG3 GG2 PG2 GG1 PG1 GG0 PG0

G3 P3 G2 P2 G1 P1 G0 P0

Group Carry Lookahead Logic

c4c8c12

c1c 2c 3

c4

Page 16: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

16Carry Lookahead Adder

c1 = G0 + P0 c0

c2 = G1 + P1 [G0 + P0 c0 ]c3 = G2 + P2 [G1 + P1 [G0 + P0 c0 ] ]c4 = G3 + P3 [G 2 + P2 [ G1 + P1 [G0 + P0c0 ] ] ]c4 = G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P2 P1 P0c0 = GG0+ PG0 c0

c8 = G7 + P7G6 + P 7 P6G5 + P7 P6 P5G4 + P 7 P6 P5 P4 c4 = GG1 + PG1c4

GG and PG (1)

c5 = G4 + P 4 [ c4 ]c6 = G5 + P5 [ G4 + P 4 [ c4 ] ]c7 = G6 + P6 [G5 + P5 [ G4 + P 4 [ c4 ] ] ]c8 = G7 + P7 [G6 + P6 [G5 + P5 [G 4 + P4 [ c4 ] ] ] ]

Page 17: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

17Carry Lookahead Adder

c12 = G11 + P11G10 + P11 P10G9 + P11 P1 P9G8 + P11 P10 P9 P8c8 = GG2+ PG2 c8

c16 = G16+ P16G15+ P16 P15G14+ P16 P15 P14G13+ P16 P15 P14 P13 c0 = GG3 + PG3c12

GG and PG (2)

c10 = G9 + P9 [ G8 + P8 [ c8] ]c11 = G10 + P10 [G9 + P9 [G8 + P8 [ c8 ] ] ]c12 = G11 + P11 [G10 + P10 [G9 + P9 [G8 + P8 [ c8 ] ] ] ]

c9 = G8 + P8 [ c8 ]

c13 = G12 + P12 [ c12 ]c14 = G13 + P13 [G12 + P12 [ c12 ] ]c15 = G15 + P15 [G13 + P13 [G12 + P12 [ c12 ] ] ]c16 = G16 + P16 [G15 + P15 [G13 + P13 [G12 + P12 [ c12 ] ] ] ]

Page 18: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

G0 P0G1 P1G2 P2G3 P3

Young W. Lim11/13/15

18Carry Lookahead Adder

Critical Path in the Carry Lookahead Logic

c0c4

G2

G1

G0 + P0 c0

+ P1 P 0c0

+ P2 P1 P 0c0+ P2 P1G0

+ P1G0

+ P2G1

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0

c1 c0c2c3

c1 =

c2 =

c3 =

c4 =

Gi = a i⋅bi

P i = a i+ bi

All Gi's P

i's are computed

simultaneously from ai and b

i

each ci's takes 2 gate delays

Carry Lookahead Logic

Page 19: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

a0 b0a1 b1a2 b2a3 b3

G0 P0G1 P1G2 P2G3 P3

Young W. Lim11/13/15

19Carry Lookahead Adder

Critical Path in the 4-bit CLA

c0c4

G0 = a0⋅b0

P0 = a0+ b0

S 0 = P0+ c0

S 0

G1 = a1⋅b1

P1 = a1+ b1

S 1 = P1+ c1

S 1

c1 c0

G2 = a2⋅b2

P2 = a2+ b2

S 2 = P2+ c2

S 2

c2

G3 = a3⋅b3

P3 = a3+ b3

S 3 = P3+ c3

S 3

c3

G2

G1

G0 + P0 c0

+ P1 P 0c0

+ P2 P1 P 0c0+ P2 P1G0

+ P1G0

+ P2G1

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0

c1 =

c2 =

c3 =

c4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

GG PGS 3: 0

1Δ1Δ1Δ

Page 20: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

20Carry Lookahead Adder

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

a 0 a 0a 1 b 1a 2 b 2a 3 b 3

G 0 P 0G 1 P 1G 2 P 2G 3 P 3

c 0c 4

G 0 = a 0⋅b 0

P 0 = a 0 + b 0

S 0 = P 0 + c 0

S 0

G 1 = a 1⋅b 1

P 1 = a 1 + b 1

S 1 = P 1 + c 1

S 1

c 1 c 0

G 2 = a 2⋅b 2

P 2 = a 2 + b 2

S 2 = P 2 + c 2

S 2

c 2

G 3 = a 3⋅ b 3

P 3 = a 3 + b 3

S 3 = P 3 + c 3

S 3

c 3

G 2

G 1

G 0 + P 0 c 0

+ P 1 P 0 c 0

+ P 2 P 1 P 0 c 0+ P 2 P 1 G 0

+ P 1 G 0

+ P 2 G 1

G 3 + P 3 G 2 + P 3 P 2 G 1 + P 3 P 2 P 1 G 0 + P 3 P 2 P 1 P 0 c 0

c 1 =

c 2 =

c 3 =

c 4 =

PFA PFA PFA PFA

PartialFullAdder

Carry Lookahead Logic

G G P GS 3 : 0

GG3

c0c16

G2

G1

G0 + P0 c0

+ P1 P 0c0

+ P2 P1 P 0c0+ P2 P1G0

+ P1G0

+ P2G1

G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P 2 P1 P0c0

c1 =

c2 =

c3 =

c4 =

PG3 GG2 PG2 GG1 PG1 GG0 PG0

G3 P3 G2 P2 G1 P1 G0 P0

Critical Path in the Group Carry Lookahead Logic

c4c8c12

c1c 2c 3

c4

Page 21: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

21Carry Lookahead Adder

Page 22: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

22Carry Lookahead Adder

Page 23: Carry Lookahead Adder (1A) - Wikimedia Commons · 4-bit Carry Lookahead Logic Young W. Lim 11/13/15 Carry Lookahead 8 Adder 4-bit Carry Lookahead Logic – interface c c0 4 c3 c2

Young W. Lim11/13/15

23Carry Lookahead Adder