Top Banner
EE141 – Fall 2005 Lecture 17 Dynamic Logic Dynamic Logic Adders Adders EE141 2 Announcements Project 1 due on Monday Oct 31 by 5pm E-mail report to [email protected] Don’t forget to attach SPICE deck Homework 7 will be posted today Due next Thursday No labs next week
28

Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

May 08, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

1

EE141 – Fall 2005Lecture 17

Dynamic LogicDynamic LogicAddersAdders

EE141 2

Announcements

Project 1 due on Monday Oct 31 by 5pm• E-mail report to [email protected]• Don’t forget to attach SPICE deck

Homework 7 will be posted today• Due next Thursday

No labs next week

Page 2: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

2

EE141 3

Class Material

Last lecture• PTL

Today’s lecture• Dynamic Logic• Adders

EE141 4

Alternative Logic Styles

Ratioed Logic• Reduced # of devices (reduced area)• Static power, reduced NML

DCVSL• Differential outputs, reduced # of devices• Doubles the # of wires, increased Pdynamic

Pass-Transistor Logic• Modular design (the same gate topology…)• Need level restoration

Page 3: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

3

EE141 5

Practical Guidelines

Ratioed Logic, DCVSL, PTL• Reduced # of devices (area)• Difficult to design• Poor noise robustness

Static CMOS• Larger area• Easy to design• Very robust

Use CMOS in designs with no extreme area, speed or complexity

constraints

Dynamic LogicDynamic Logic

Page 4: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

4

EE141 7

Dynamic CMOS

In static circuits at every point in time (except when switching) the output is connected to either GND or VDD via a low resistance path.• fan-in of n requires 2n devices

(n N-type + n P-type)

Dynamic circuits rely on the temporary storage of signal values on the capacitance of high impedance nodes.• Fan-in of n requires n + 2 transistors

(n+1 N-type + 1 P-type)

EE141 8

Dynamic Gate: Basic Principle

In1

In2 PDNIn3

Me

Mp

CLK

CLKOut

CL

Out

CLK

CLK

A

BC

Mp

Me

Two phase operationPrecharge (CLK = 0)Evaluate (CLK = 1)

Page 5: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

5

EE141 9

Dynamic Gate

In1

In2 PDNIn3

Me

Mp

CLK

CLKOut

CL

Out

CLK

CLK

A

BC

Mp

Me

Two phase operationPrecharge (CLK = 0)Evaluate (CLK = 1)

on

off

1off

on

((AB)+C)

Out CLK A B C CLK= + ⋅ + ⋅

EE141 10

Conditions on Output

Once the output of a dynamic gate is discharged, it cannot be charged again until the next prechargeoperation.

Inputs to the gate can make at most one transition during evaluation.

Output can be in the high impedance state during and after evaluation (PDN off), state is stored on CL

Page 6: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

6

EE141 11

Properties of Dynamic Gates

Logic function is implemented by the PDN only• # of transistors is N + 2 (vs. 2N in static complementary CMOS)

Full swing outputs (VOL = GND and VOH = VDD)

Nonratioed - sizing of the devices does not affect the logic levels

Faster switching speeds• reduced load capacitance due to lower input capacitance (Cin)• reduced load capacitance due to smaller output loading (Cout)• no Isc, so all the current provided by PDN goes into discharging CL

EE141 12

Overall power dissipation usually higher than static CMOS• no static current path ever exists between VDD and GND

(including Psc)• no glitching• higher transition probabilities• extra load on CLK

PDN starts to work as soon as the input signals exceed VTn, so VM, VIH and VIL equal to VTn• low noise margin (NML)

Needs a precharge/evaluate clock

Properties of Dynamic Gates

Page 7: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

7

EE141 13

Issues with Dynamic Gates

Charge Leakage

Charge Sharing

Capacitive Coupling

Clock Feedthrough

EE141 14

CL

CLK

CLKOut

A

Mp

Me

Leakage sources

CLK

VOut

Precharge

Evaluate

Dynamic Design, Issue 1: Charge Leakage

Page 8: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

8

EE141 15

Solution to Charge Leakage

CL

CLK

CLK

Me

Mp

A

B

!Out

Mkp

Same approach as level restorer for pass transistor logic

Keeper

EE141 16

CL

CLK

CLK

CA

CB

B=0

AOut

Mp

Me

Charge stored originally on CL is redistributed (shared) over CL and CA leading to reduced robustness

Dynamic Design, Issue 2: Charge Sharing

Page 9: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

9

EE141 17

Charge Sharing Scenarios

Mp

Me

VDD

φOut

φ

A

B = 0

CL

Ca

Cb

Ma

Mb

X

CLVDD CLVout t( ) Ca VDD VTn VX( )–( )+=

or

∆Vout Vout t( ) VDD–CaCL-------- VDD VTn VX( )–( )–= =

∆Vout VDDCa

Ca CL+----------------------

–=

case 1) if ∆Vout < VTn

case 2) if ∆Vout > VTn

EE141 18

Charge Sharing Example

CL=50fF

CLK

CLK

A !A

B !B B !B

C!C

Out

Ca=15fF

Cc=15fF

Cb=15fF

Cd=10fF

Worst-casecharge sharing:

!A*B*CA*!B*C

Page 10: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

10

EE141 19

Solution to Charge Redistribution

CLK

CLK

Me

Mp

A

B

OutMkp CLK

Precharge internal nodes using a clock-driven transistor (at the cost of increased area and power)

EE141 20

Dynamic Design, Issue 3: Capacitive Coupling

CL1

CLK

CLK

B=0

A=0

Out1Mp

Me

Out2

CL2In

Dynamic NAND Static NAND

=1 =1

Page 11: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

11

EE141 21

Capacitive Coupling Effect

-1

0

1

2

3

0 2 4 6

Vol

tage

(V)

Time (ns)

CLK

In

Out1

Out2

EE141 22

Dynamic Design, Issue 4: Clock Feedthrough

CL

CLK

CLK

B

AOut

Mp

Me

Coupling between Out and CLK input of the prechargedevice due to the gate to drain capacitance…

So voltage of Out can rise above VDD.

The fast rising (and falling edges) of the clock couple to Out.

Page 12: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

12

EE141 23

CLK

CLK

In1

In2

In3

In4

Out

In &CLK

Out

Time (ns)

Vol

tage

(V)

Clock feedthrough

Clock feedthrough

Clock Feedthrough

-0.5

0.5

1.5

2.5

0 0.5 1

EE141 24

Other Effects

Capacitive coupling (cross-talk)

Substrate coupling

Minority charge injection

Supply noise (ground bounce)

Page 13: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

13

EE141 25

Cascading Dynamic Gates

CLK

CLK

Out1In

Mp

Me

Mp

Me

CLK

CLK

Out2

V

t

CLK

In

Out1

Out2 ∆V

VTn

Only 0 → 1 transitions allowed at inputs!

EE141 26

Cascading Dynamic Gates

Domino Logic

np-CMOS

Page 14: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

14

EE141 27

Domino Logic

In1

In2 PDNIn3

Me

Mp

CLK

CLK Out1

In4 PDNIn5

Me

Mp

CLK

CLKOut2

Mkp

1 → 00 → 0

1 → 1

0 → 1

Evaluation (conditional discharge)

ONLY 0→1 transitions during evaluation!

EE141 28

Why Domino?

In1

CLK

CLK

Ini PDNInj

IniInj

PDN Ini PDNInj

Ini PDNInj

Like falling dominos!

Page 15: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

15

EE141 29

Properties of Domino Logic

Only non-inverting logic can be implemented

Very high speed• static inverter can be skewed, only L-H transition• Input capacitance reduced – smaller logical effort

EE141 30

Designing with Domino Logic

Mp

Me

VDD

PDN

φ

In1In2

In3

Out1

φ

Mp

Me

VDD

PDN

φ

In4

φ

Out2

Mr

VDD

Inputs = 0during precharge

Can be eliminated!

Page 16: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

16

EE141 31

Footless Domino

Mp

VDD

CLK

Out1

In2 In1 1- >0 1->0

0->1

Mp

VDD

CLK

Out20- >1

In3 1->0

Mp

VDD

CLK

Outn

Inn 1->0

0->1

The first gate in the chain needs a foot switchPrecharge is rippling (next stage has to wait for propagation delay of inverter from the previous stage)

Static power consumption

EE141 32

Differential (Dual Rail) Domino

A

B

Me

Mp

CLK

CLK!Out = !(AB)

!A !B

Mkp CLKOut = AB

Mkp Mp

Solves the problem of non-inverting logic

1 0 1 0

onoff

Page 17: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

17

EE141 33

np-CMOS

In1

In2 PDNIn3

Me

Mp

CLK

CLK Out1

In4 PUNIn5

Me

Mp!CLK

!CLK

Out2(to PDN)

1 → 11 → 0

0 → 00 → 1

Only 0 → 1 transitions allowed at inputs of PDN Only 1 → 0 transitions allowed at inputs of PUN

EE141 34

NORA Logic

In1

In2 PDNIn3

Me

Mp

CLK

CLK Out1

In4 PUNIn5

Me

Mp!CLK

!CLK

Out2(to PDN)

1 → 11 → 0

0 → 00 → 1

to otherPDN’s

to otherPUN’s

WARNING: Very sensitive to noise!P-blocks are slower

Page 18: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

18

EE141 35

Choosing a Logic Style: No Style Fits all Needs

General design Considerations• Robustness (Static CMOS, Ratioed Logic)• Area (Pseudo-NMOS, Static CMOS)• Speed (Dynamic, Ratioed Logic)• Power (Static CMOS, Dynamic Logic)

Application-specific considerations• XOR-dominated functions (PTL)

Design tool considerations• Static CMOS

AddersAdders

Page 19: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

19

EE141 37

A B

Cout

Sum

Cin Fulladder

Full Adder

EE141 38

S A B Ci⊕ ⊕=

A= BCi ABCi ABCi ABCi+ + +

Co AB BCi ACi+ +=

A B

Cout

Sum

Cin Fulladder

The Binary Adder

Page 20: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

20

EE141 39

Define 3 new variables which ONLY depend on A, BGenerate (G) = ABPropagate (P) = A ⊕ BDelete = A B

Can also derive expressions for S and Co based on D and P

Propagate (P) = A + BNote that we will be sometimes using an alternate definition for

Express Sum and Carry as a Function of P, G, D

EE141 40

Worst case delay linear with the number of bits

Goal: Make the fastest possible carry path circuit

FA FA FA FA

A0 B0

S0

A1 B1

S1

A2 B2

S2

A3 B3

S3

Ci,0 Co,0

(= Ci,1)

Co,1 Co,2 Co,3

td = O(N)

tadder = (N-1)tcarry + tsum

The Ripple-Carry Adder

Page 21: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

21

EE141 41

28 Transistors

A B

B

A

Ci

Ci A

X

VDD

VDD

A B

Ci BA

B VDD

A

B

Ci

Ci

A

B

A CiB

Co

VDD

S

Complimentary Static CMOS Full Adder

EE141 42

A B

S

CoCi FA

A B

S

CoCi FA

Inversion Property

Page 22: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

22

EE141 43

Exploit Inversion Property

A3

FA FA FA

Even cell Odd cell

FA

A0 B0

S0

A1 B1

S1

A2 B2

S2

B3

S3

Ci,0 Co,0 Co,1 Co,3Co,2

Minimize Critical Path by Reducing Inverting Stages

EE141 44

VDD

Ci

A

BBA

B

A

A BKill

Generate"1"-Propagate

"0"-Propagate

VDD

Ci

A B Ci

Ci

B

A

Ci

A

BBA

VDD

SCo

A Better Structure: The Mirror Adder

24 Transistors

Page 23: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

23

EE141 45

Mirror Adder

Stick Diagram

CiA B

VDD

GND

B

Co

A Ci Co Ci A B

S

EE141 46

The Mirror AdderThe NMOS and PMOS chains are completely symmetrical.A maximum of two series transistors can be observed in the carry-generation circuitry.When laying out the cell, the most critical issue is the minimization of the capacitance at node Co. The reduction of the diffusion capacitances is particularly important.The capacitance at node Co is composed of four diffusion capacitances, two internal gate capacitances, and six gate capacitances in the connecting adder cell.The transistors connected to Ci are placed closest to the output.Only the transistors in the carry stage have to be optimized for optimal speed. All transistors in the sum stage can be minimal size.

Page 24: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

24

EE141 47

A

B

P

Ci

VDDA

A A

VDD

Ci

A

P

AB

VDD

VDD

Ci

Ci

Co

S

Ci

P

P

P

P

P

Sum Generation

Carry Generation

Setup

Transmission Gate Full Adder

EE141 48

Manchester Carry Chain

CoCi

Gi

Di

Pi

Pi

VDD

CoCi

Gi

Pi

VDD

φ

φ

Page 25: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

25

EE141 49

Manchester Carry Chain

G2

φ

C3

G3Ci,0

P0

G1

VDD

φ

G0

P1 P2 P3

C3C2C1C0

EE141 50

Ci,0 G0

CLK

CLKP0 P1 P2 P3

G1 G2 G3

Ci,41234

5

6

3 3 3 3 3

1

2

2

3

3

4

4

5

!(G0 + P0 Ci,0) !(G1 + P1G0 + P1P0 Ci,0)

Domino Manchester Carry Chain

Page 26: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

26

EE141 51

Manchester Carry Chain

Pi + 1 Gi + 1 φ

Ci

Inverter/Sum Row

Propagate/Generate Row

Pi Gi φ

Ci - 1Ci + 1

VDD

GND

Stick Diagram

EE141 52

FA FA FA FA

P0 G1 P0 G1 P2 G2 P3 G3

Co,3Co,2Co,1Co,0Ci,0

FA FA FA FA

P0 G1 P0 G1 P2 G2 P3 G3

Co,2Co,1Co,0Ci,0

Co,3

Mul

tiple

xer

BP=PoP1P2P3

Idea: If (P0 and P1 and P2 and P3 = 1)then Co3 = C0, else “kill” or “generate”.

Also called Carry-Skip

Carry-Bypass Adder

Page 27: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

27

EE141 53

Carrypropagation

SetupBit 0–3

Sum

M bits

tsetup

tsum

Carrypropagation

SetupBit 4–7

Sum

tbypass

Carrypropagation

SetupBit 8–11

Sum

Carrypropagation

SetupBit 12–15

Sum

tadder = tsetup + Mtcarry + (N/M-1)tbypass + (M-1)tcarry + tsum

Carry-Bypass Adder (Cont.)

EE141 54

Carry Ripple vs. Carry Bypass

tp

N4-8

Ripple adder

Bypass adder

Page 28: Dynamic Logic Adders - University of California, …bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f05/...1 EE141 – Fall 2005 Lecture 17 Dynamic Logic Adders EE141 2 Announcements

28

EE141 55

Next Lecture

Carry-Select AddersLook-Ahead Adders