21
Review: Sequential Definitions Static versus dynamic storage static uses a bistable element with feedback (regeneration) and thus preserves its state as long as the power is on static is preferred when updates are infrequent (clock gating) dynamic stores state on parasitic capacitors so only holds the state for a period of time (milliseconds) and requires periodic refresh dynamic is usually simpler (fewer transistors), higher speed, lower power Latch versus flipflop latches are level sensitive with two modes: transparent - inputs are passed to Q and hold - output stable fliplflops are edge sensitive that only sample the inputs on a clock transition

Review: Sequential Definitions

  • Upload
    leann

  • View
    47

  • Download
    0

Embed Size (px)

DESCRIPTION

Review: Sequential Definitions. Static versus dynamic storage static uses a bistable element with feedback ( regeneration ) and thus preserves its state as long as the power is on static is preferred when updates are infrequent (clock gating) - PowerPoint PPT Presentation

Citation preview

Page 1: Review: Sequential Definitions

Review: Sequential Definitions

Static versus dynamic storage static uses a bistable element with feedback (regeneration) and

thus preserves its state as long as the power is on static is preferred when updates are infrequent (clock gating) dynamic stores state on parasitic capacitors so only holds the

state for a period of time (milliseconds) and requires periodic refresh

dynamic is usually simpler (fewer transistors), higher speed, lower power

Latch versus flipflop latches are level sensitive with two modes: transparent - inputs

are passed to Q and hold - output stable fliplflops are edge sensitive that only sample the inputs on a clock

transition

Page 2: Review: Sequential Definitions

Review: Timing Metrics

clock

In

Out

datastable

outputstable

outputstable

time

time

time

clock

D QIn Out

tsu thold

tc-q

Page 3: Review: Sequential Definitions

Review: System Timing Constraints

CombinationalLogic

clock

Outputs

Sta

teR

egis

ters

NextState

CurrentState

Inputs

T tc-q + tplogic + tsutcdreg + tcdlogic thold

T (clock period)

Page 4: Review: Sequential Definitions

Dynamic ET Flipflop

T1 T2I1 I2 QQM

D

C1 C2

!clk

clk

clk

!clk

!clk

clk

master transparentslave hold

master holdslave transparent

master slave

tsu =thold =tc-q =

tpd_tx

zero2 tpd_inv + tpd_tx

Page 5: Review: Sequential Definitions

Dynamic ET FF Race Conditions

T1 T2I1 I2 QQM

D

C1 C2

!clk

clk

clk

!clk

!clk

clk0-0 overlap race condition toverlap0-0 < tT1 +tI1 + tT2

1-1 overlap race condition toverlap1-1 < thold

Page 6: Review: Sequential Definitions

Dynamic Two-Phase ET FF

clk2

clk1tnon_overlap

T1 T2I1 I2 QQM

D

C1 C2

clk1

!clk1

clk2

!clk2

master transparentslave hold

master holdslave transparent

Page 7: Review: Sequential Definitions

Pseudostatic Dynamic Latch

Robustness considerations limit the use of dynamic FF’s coupling between signal nets and internal storage nodes can

inject significant noise and destroy the FF state leakage currents cause state to leak away with time internal dynamic nodes don’t track fluctuations in VDD that

reduces noise margins

A simple fix is to make the circuit pseudostatic

D

!clk

clk

Add above logic added to all dynamic latches

Page 8: Review: Sequential Definitions

C2MOS (Clocked CMOS) ET Flipflop

clk

!clk

!clk

clk

QM

C1 C2

QD

M1

M3

M4

M2 M6

M8

M7

M5

Master Slave

!clk

clk

master transparentslave hold

master holdslave transparent

on

on

off

offon

onoff

off

A clock-skew insensitive FF

Page 9: Review: Sequential Definitions

C2MOS FF 0-0 Overlap Case

0 0QM

C1 C2

QD

M1

M4

M2 M6

M8

M5

!clk

clk

!clk

clk

Clock-skew insensitive as long as the rise and fall times of the clock edges are sufficiently small

Page 10: Review: Sequential Definitions

C2MOS FF 1-1 Overlap Case

1 1

QM

C1 C2

QD

M1

M2 M6

M5

!clk

clk

M3 M7

!clk

clk

1-1 overlap constraint toverlap1-1 < thold

Page 11: Review: Sequential Definitions

C2MOS Transient Response

-0.5

0

0.5

1

1.5

2

2.5

3

0 2 4 6 8

QM(3)Q(3)

Q(0.1)

Time (nsec)

Vo

lts

clk(0.1)

clk(3)

For a0.1 ns clock

For a3 ns clock(race conditionexists)

Page 12: Review: Sequential Definitions

True Single Phase Clocked (TSPC) Latches

clk clkInQ

Positive LatchNegative Latch

transparent when clk = 1hold when clk = 0

clk clkInQ

hold when clk = 1transparent when clk = 0

Page 13: Review: Sequential Definitions

TSPC ET FF

clkmaster holdslave transparent

clk clkD

Master Slave

clk clk QQM

master transparentslave hold

ononoffoff

ononoffoff

on onoffoff

Page 14: Review: Sequential Definitions

Simplified TSPC ET FF

clkD clkQ

clk

clk

X

QM

M1

M2

M3 M6

M5

M4 M7

M8

M9

clkmaster holdslave transparent

master transparentslave hold

on

on

off

off

1

!Don

off

on

off

D D

Page 15: Review: Sequential Definitions

Sizing Issues in Simplified TSPC ET FF

0

1

2

3

0 0.2 0.4 0.6 0.8 1

Time (nsec)

Vo

lts

clk

!Qorig

Qorig

!Qmod

Qmod

Transistor sizing

Original width M4, M5 = 0.5m M7, M8 = 2m

Modified width M4, M5 = 1m M7, M8 = 1m

Page 16: Review: Sequential Definitions

Split-Output TSPC Latches

clkInQ

Positive Latch Negative Latch

transparent when clk = 1hold when clk = 0

clkInQ

hold when clk = 1transparent when clk = 0

A

A

When In = 0, A = VDD - VTn When In = 1, A = | VTp |

Page 17: Review: Sequential Definitions

Split-Output TSPC ET FF

clkD

Qclk

clk

QM

Page 18: Review: Sequential Definitions

Pulsed FF (AMD-K6) Pulse registers - a short pulse (glitch clock) is generated

locally from the rising (or falling) edge of the system clock and is used as the clock input to the flipflop race conditions are avoided by keeping the transparent mode time

very short (during the pulse only) advantage is reduced clock load; disadvantage is substantial

increase in verification complexity

clk

D

Q

M1

M2

M3

M4

M5

M6

P1

P2

P3X

!clkd

0 ONVdd

OFF OFF

11 0ON

1/0ON/OFF

0/Vdd ON/OFF

1/0

0 OFF

1

1OFF

ON ON

ON

Page 19: Review: Sequential Definitions

Sense Amp FF (StrongArm SA100)

clk

D

Q

!Q

M1

M2

M3

M5

M6

M4

M9

M7

M8

M10

Sense amplifier (circuits that accept small swing input signals and amplify them to full rail-to-rail signals) flipflops

advantages are reduced clock load and that it can be used as a receiver for reduced swing differential buses

0

0

1

1

1

1

1

0

1

0

1

Page 20: Review: Sequential Definitions

Flipflop Comparison Chart

Name Type #clk ld #tr tset-up thold tpFF

Mux Static 8 (clk-!clk) 20 3tpinv+tptx0 tpinv+tptx

PowerPC Static 8 (clk-!clk) 16

2-phase Ps-Static 8 (clk1-clk2) 16

T-gate Dynamic 4 (clk-!clk) 8 tptx to1-1 2tpinv+tptx

C2MOS Dynamic 4 (clk-!clk) 8

TSPC Dynamic 4 (clk) 11 tpinv tpinv 3tpinv

S-O TSPC Dynamic 2 (clk) 10

AMD K6 Dynamic 5 (clk) 19

SA 100 SenseAmp 3 (clk) 20

Page 21: Review: Sequential Definitions

Choosing a Clocking Strategy

Choosing the right clocking scheme affects the functionality, speed, and power of a circuit

Two-phase designs + robust and conceptually simple - need to generate and route two clock signals - have to design to accommodate possible skew between the

two clock signals

Single phase designs + only need to generate and route one clock signal + supported by most automated design methodologies + don’t have to worry about skew between the two clocks - have to have guaranteed slopes on the clock edges