jan m. rabaey anantha chandrakasan borivoje nikolićbaccaran/rabaey/chapter10.pdfee141 1 © digital...

80
EE141 1 © Digital Integrated Circuits 2nd Timing Issues Digital Integrated Digital Integrated Circuits Circuits A Design Perspective A Design Perspective Timing Issues Timing Issues Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolić January 2003

Upload: others

Post on 07-Sep-2020

11 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1411

© Digital Integrated Circuits2nd Timing Issues

Digital Integrated Digital Integrated CircuitsCircuitsA Design PerspectiveA Design Perspective

Timing IssuesTiming Issues

Jan M. RabaeyAnantha ChandrakasanBorivoje Nikolić

January 2003

Page 2: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1412

© Digital Integrated Circuits2nd Timing Issues

Synchronous TimingSynchronous Timing

CombinationalLogic

R1 R2Cin Cout Out

In

CLK

Page 3: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1413

© Digital Integrated Circuits2nd Timing Issues

Timing Timing DefinitionsDefinitions

Page 4: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1414

© Digital Integrated Circuits2nd Timing Issues

Latch ParametersLatch Parameters

D

Clk

Q

D

Q

Clk

tc-q

thold

PWm tsu

td-q

Delays can be different for rising and falling data transitions

T

Page 5: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1415

© Digital Integrated Circuits2nd Timing Issues

Register ParametersRegister Parameters

D

Clk

Q

D

Q

Clk

tc-q

thold

T

tsu

Delays can be different for rising and falling data transitions

Page 6: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1416

© Digital Integrated Circuits2nd Timing Issues

Clock UncertaintiesClock Uncertainties

2

43

Power Supply

Interconnect

5 Temperature

6 Capacitive Load

7 Coupling to Adjacent Lines

1 Clock Generation

Devices

Sources of clock uncertainty

Page 7: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1417

© Digital Integrated Circuits2nd Timing Issues

ClockClock NonidealitiesNonidealities

Clock skewSpatial variation in temporally equivalent clock edges; deterministic + random, tSK

Clock jitterTemporal variations in consecutive edges of the clock signal; modulation + random noiseCycle-to-cycle (short-term) tJSLong term tJL

Variation of the pulse width Important for level sensitive clocking

Page 8: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1418

© Digital Integrated Circuits2nd Timing Issues

Clock Skew and JitterClock Skew and Jitter

Both skew and jitter affect the effective cycle timeOnly skew affects the race margin

Clk

Clk

tSK

tJS

Page 9: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE1419

© Digital Integrated Circuits2nd Timing Issues

Clock SkewClock Skew# of registers

Clk delayInsertion delayMax Clk skew

Earliest occurrenceof Clk edgeNominal – δ/2

Latest occurrenceof Clk edge

Nominal + δ /2

δ

Page 10: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14110

© Digital Integrated Circuits2nd Timing Issues

Positive and Negative SkewPositive and Negative Skew

R1In

(a) Positive skew

CombinationalLogicD Q

tCLK1CLK

delay

tCLK2

R2D Q Combinational

Logic

tCLK3

R3• • •D Q

delay

R1In

(b) Negative skew

CombinationalLogicD Q

tCLK1

delay

tCLK2

R2D Q Combinational

Logic

tCLK3

R3• • •D Q

delay CLK

Page 11: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14111

© Digital Integrated Circuits2nd Timing Issues

Positive SkewPositive Skew

CLK1

CLK2

TCLK

δ

TCLK + δ

+ thδ

2

1

4

3

Launching edge arrives before the receiving edge

Page 12: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14112

© Digital Integrated Circuits2nd Timing Issues

Negative SkewNegative Skew

CLK1

CLK2

TCLK

δ

TCLK + δ

2

1

4

3

Receiving edge arrives before the launching edge

Page 13: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14113

© Digital Integrated Circuits2nd Timing Issues

Timing ConstraintsTiming Constraints

R1D Q Combinational

LogicIn

CLK tCLK1

R2D Q

tCLK2

tc − qtc − q, cdtsu, thold

tlogictlogic, cd

Minimum cycle time:T - δ = tc-q + tsu + tlogic

Worst case is when receiving edge arrives early (positive δ)

Page 14: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14114

© Digital Integrated Circuits2nd Timing Issues

Timing ConstraintsTiming ConstraintsR1

D Q CombinationalLogic

In

CLK tCLK1

R2D Q

tCLK2

tc − qtc − q, cdtsu, thold

tlogictlogic, cd

Hold time constraint:t(c-q, cd) + t(logic, cd) > thold + δ

Worst case is when receiving edge arrives lateRace between data and clock

Page 15: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14115

© Digital Integrated Circuits2nd Timing Issues

Impact of JitterImpact of Jitter

CLK-tji tter

TC LK

t j itter

CLK

InCombinational

Logic

tc-q , tc-q, cdt log ict log ic, cdtsu, thold

REGS

tjitter

1

2

3 4

5

6

Page 16: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14116

© Digital Integrated Circuits2nd Timing Issues

Longest Logic Path in Longest Logic Path in EdgeEdge--Triggered SystemsTriggered Systems

Clk

T

TSU

TClk-Q TLM

Latest point of launching

Earliest arrivalof next cycle

TJI + δ

Page 17: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14117

© Digital Integrated Circuits2nd Timing Issues

Clock Constraints in Clock Constraints in EdgeEdge--Triggered SystemsTriggered Systems

If launching edge is late and receiving edge is early, the data will not be too late if:

Minimum cycle time is determined by the maximum delays through the logic

Tc-q + TLM + TSU < T – TJI,1 – TJI,2 - δ

Tc-q + TLM + TSU + δ + 2 TJI < T

Skew can be either positive or negative

Page 18: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14118

© Digital Integrated Circuits2nd Timing Issues

Shortest PathShortest Path

ClkTClk-Q TLm

Earliest point of launching

Data must not arrivebefore this time

ClkTH

Nominalclock edge

Page 19: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14119

© Digital Integrated Circuits2nd Timing Issues

Clock Constraints Clock Constraints in Edgein Edge--Triggered SystemsTriggered Systems

Minimum logic delay

If launching edge is early and receiving edge is late:

Tc-q + TLM – TJI,1 < TH + TJI,2 + δ

Tc-q + TLM < TH + 2TJI+ δ

Page 20: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14120

© Digital Integrated Circuits2nd Timing Issues

How to counter Clock Skew?How to counter Clock Skew?

RE

G

φ

REG

φR

EG

φ

.

REG

φ

log Out

In

Clock Distribution

Positive Skew

Negative Skew

Data and Clock Routing

Page 21: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14121

© Digital Integrated Circuits2nd Timing Issues

FlipFlip--Flop Flop –– Based TimingBased Timing

Flip-flop

Logic

φ

φ = 1φ = 0

Flip-flopdelay

Skew

Logic delay

TSUTClk-Q

Representation after M. Horowitz, VLSI Circuits 1996.

Page 22: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14122

© Digital Integrated Circuits2nd Timing Issues

FlipFlip--Flops and Dynamic LogicFlops and Dynamic Logic

φ = 1φ = 0

Logic delay

TSUTClk-Q

φ = 1φ = 0

Logic delay

TSUTClk-Q

PrechargeEvaluateEvaluatePrecharge

Flip-flops are used only with static logic

Page 23: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14123

© Digital Integrated Circuits2nd Timing Issues

Latch timingLatch timing

D

Clk

Q

tD-Q

tClk-Q

When data arrives to transparent latch

When data arrives to closed latch

Data has to be ‘re-launched’

Latch is a ‘soft’ barrier

Page 24: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14124

© Digital Integrated Circuits2nd Timing Issues

SingleSingle--Phase Clock with LatchesPhase Clock with Latches

Latch

Logic

φ

Clk

P

PW

Tskl Tskl TsktTskt

Page 25: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14125

© Digital Integrated Circuits2nd Timing Issues

LatchLatch--Based DesignBased Design

L1Latch Logic

Logic

L2Latch

φ

L1 latch is transparentwhen φ = 0

L2 latch is transparent when φ = 1

Page 26: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14126

© Digital Integrated Circuits2nd Timing Issues

SlackSlack--borrowingborrowing

QDIn CLB_A QD QD

CLK1

L1 L2 L1

CLK2 CLK1

CLB_Btpd,A tpd,B

CLK1

CLK2

TCLK

321 4

a b c d e

tpd,A

a valid b val id

tDQtpd,B

c valid d valid

tDQ

e valid

slack passed to next stage

Page 27: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14127

© Digital Integrated Circuits2nd Timing Issues

LatchLatch--Based TimingBased Timing

L1Latch Logic

Logic

L2Latch

φ

φ = 1

φ = 0

L1 latch

L2 latch

Skew

Can tolerate skew!

Longpath

Shortpath

Static logic

Page 28: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14128

© Digital Integrated Circuits2nd Timing Issues

Clock DistributionClock Distribution

CLK

Clock is distributed in a tree-like fashion

H-tree

Page 29: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14129

© Digital Integrated Circuits2nd Timing Issues

More realistic HMore realistic H--treetree

[Restle98]

Page 30: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14130

© Digital Integrated Circuits2nd Timing Issues

The Grid SystemThe Grid System

Driver

Driver

Dri

ver

Driv

er

GCLK GCLK

GCLK

GCLK

•No rc-matching•Large power

Page 31: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14131

© Digital Integrated Circuits2nd Timing Issues

Example: DEC Alpha 21164Example: DEC Alpha 21164Clock Frequency: 300 MHz - 9.3 Million Transistors

Total Clock Load: 3.75 nF

Power in Clock Distribution network : 20 W (out of 50)

Uses Two Level Clock Distribution:

• Single 6-stage driver at center of chip• Secondary buffers drive left and right side

clock grid in Metal3 and Metal4Total driver size: 58 cm!

Page 32: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14132

© Digital Integrated Circuits2nd Timing Issues

21164 Clocking21164 Clocking2 phase single wire clock, distributed globally2 distributed driver channels

Reduced RC delay/skewImproved thermal distribution3.75nF clock load58 cm final driver width

Local inverters for latchingConditional clocks in caches to reduce powerMore complex race checkingDevice variation

trise = 0.35ns tskew = 150ps

tcycle= 3.3ns

Clock waveform

Location of clockdriver on die

pre-driver

final drivers

Page 33: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14133

© Digital Integrated Circuits2nd Timing Issues

Clock Drivers

Page 34: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14134

© Digital Integrated Circuits2nd Timing Issues

Clock Skew in Alpha ProcessorClock Skew in Alpha Processor

Page 35: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14135

© Digital Integrated Circuits2nd Timing Issues

2 Phase, with multiple conditional buffered clocks

2.8 nF clock load40 cm final driver width

Local clocks can be gated “off” to save powerReduced load/skewReduced thermal issuesMultiple clocks complicate race checking

trise = 0.35ns tskew = 50ps

tcycle= 1.67ns

EV6 (Alpha 21264) ClockingEV6 (Alpha 21264) Clocking600 MHz 600 MHz –– 0.35 micron CMOS0.35 micron CMOS

Global clock waveform

PLL

Page 36: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14136

© Digital Integrated Circuits2nd Timing Issues

21264 Clocking21264 Clocking

Page 37: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14137

© Digital Integrated Circuits2nd Timing Issues

EV6 Clock ResultsEV6 Clock Results

GCLK Skew(at Vdd/2 Crossings)

ps5

101520253035404550

ps300305310315320325330335340345

GCLK Rise Times(20% to 80% Extrapolated to 0% to 100%)

Page 38: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14138

© Digital Integrated Circuits2nd Timing Issues

EV7 Clock HierarchyEV7 Clock Hierarchy

GCLK(CPU Core)L2

L_C

LK(L

2 C

ache

)

L2R

_CLK

(L2

Cac

he)

NCLK(Mem Ctrl)

DLL

PLL

SYSCLK

DLL

DLL

+ widely dispersed drivers

+ DLLs compensate static and low-frequency variation

+ divides design and verification effort

- DLL design and verification is added work

+ tailored clocks

Active Skew Management and Multiple Clock Domains

Page 39: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14139

© Digital Integrated Circuits2nd Timing Issues

SelfSelf--timed and Asynchronous timed and Asynchronous DesignDesign

Functions of clock in synchronous design

1) Acts as completion signal2) Ensures the correct ordering of events

Truly asynchronous design

2) Ordering of events is implicit in logic1) Completion is ensured by careful timing analysis

Self-timed design

1) Completion ensured by completion signal2) Ordering imposed by handshaking protocol

Page 40: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14140

© Digital Integrated Circuits2nd Timing Issues

Synchronous PipelinedSynchronous Pipelined DatapathDatapath

In

tpd,reg tpd1

DR1

Q

CLK

LogicBlock #1

tpd2

DR2

QLogic

Block #2

tpd3

DR3

Q DR4

QLogic

Block #3

Page 41: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14141

© Digital Integrated Circuits2nd Timing Issues

SelfSelf--Timed PipelinedTimed Pipelined DatapathDatapath

R2 OutF2In

tpF2

Start Done

R1 F1

tpF1

Start Done

R3 F3

tpF3

Start Done

Req Req Req Req

Ack Ack Ack ACKHS HS HS

Page 42: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14142

© Digital Integrated Circuits2nd Timing Issues

Completion Signal GenerationCompletion Signal Generation

LOGIC

NETWORK

DELAY MODULE

In Out

Start Done

Using Delay Element (e.g. in memories)

Page 43: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14143

© Digital Integrated Circuits2nd Timing Issues

Completion Signal GenerationCompletion Signal Generation

Using Redundant Signal Encoding

Page 44: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14144

© Digital Integrated Circuits2nd Timing Issues

Completion Signal in DCVSLCompletion Signal in DCVSL

PDN

B0

PDNIn1In1In2In2

B1

Start

Start

VDD VDD

DoneB0

B1

Page 45: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14145

© Digital Integrated Circuits2nd Timing Issues

SelfSelf--Timed AdderTimed Adder

P0

C0

P1

G0

P2

G1

P3

G2 G3

VDD

Start

Start

P0

C0

P1

K0

P2

K1

P3

K2 K3

VDD

Start

Start

C0 C1 C2 C3 C4 C4

C4C0 C1 C2 C3 C4

VDD

Start

C4

C3

C2

C1

C4

C3

C2

C1

Start Done

(a) Differential carry generation

(b) Completion signal

Page 46: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14146

© Digital Integrated Circuits2nd Timing Issues

Completion Signal Using Current SensingCompletion Signal Using Current Sensing

Min Delay Generator

StartGNDsense

VDD

Inputs

Current Sensor

Static CMOS Logic

Inpu

t Reg

iste

r

Done

Output

A

B

tdelay

toverlap

tpd-NOR

tMDG

Start

A

B

Done

Output valid

Page 47: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14147

© Digital Integrated Circuits2nd Timing Issues

HandHand--Shaking ProtocolShaking Protocol

11

3RECEIVERSENDER

Req Req

Ack

Data

Ack

Data

(a) Sender-receiver configuration

(b) Timing diagram

cycle 1 cycle 2Sender’s actionReceiver’s action

2

Two Phase Handshake

Page 48: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14148

© Digital Integrated Circuits2nd Timing Issues

Event Logic Event Logic –– The MullerThe Muller--C ElementC ElementA B Fn+1

0011

010

(b) Truth table(a) Schematic

1

0FnFn1

F

A

BC

S

FF

R

QA

B

(a) Logic

(b) Majority Function

(c) Dynamic

A B

B

B

A

VDD

B

FA

B

VDDVDD

Page 49: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14149

© Digital Integrated Circuits2nd Timing Issues

22--Phase Handshake ProtocolPhase Handshake Protocol

Advantage : FAST - minimal # of signaling events (important for global interconnect)

Disadvantage : edge - sensitive, has state

Senderlogic

Receiverlogic

Data

Handshake logic

Data ready Data accepted

CReq

Ack

Page 50: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14150

© Digital Integrated Circuits2nd Timing Issues

Example: SelfExample: Self--timed FIFOtimed FIFO

All 1s or 0s -> pipeline empty

Alternating 1s and 0s -> pipeline full

C C

R1In Out

En

Acki

Reqi

R2 R3

CReq0

Acko

Done

Page 51: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14151

© Digital Integrated Circuits2nd Timing Issues

22--Phase ProtocolPhase Protocol

Page 52: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14152

© Digital Integrated Circuits2nd Timing Issues

ExampleExample

From [Horowitz]

Page 53: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14153

© Digital Integrated Circuits2nd Timing Issues

ExampleExample

Page 54: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14154

© Digital Integrated Circuits2nd Timing Issues

ExampleExample

Page 55: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14155

© Digital Integrated Circuits2nd Timing Issues

ExampleExample

Page 56: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14156

© Digital Integrated Circuits2nd Timing Issues

44--Phase Handshake ProtocolPhase Handshake Protocol

Slower, but unambiguous

Also known as RTZ

1 1

2

3 5

4Req

Ack

Data

Cycle 1 Cycle 2

Sender’s action

Receiver’s action

Page 57: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14157

© Digital Integrated Circuits2nd Timing Issues

44--Phase Handshake ProtocolPhase Handshake ProtocolImplementation using Muller-C elements

Handshake logic

Data ready Data accepted

ReqS

Ack

C C

Senderlogic

Receiverlogic

Data

Page 58: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14158

© Digital Integrated Circuits2nd Timing Issues

SelfSelf--Resetting LogicResetting Logic

PrechargedLogic Block(L1)

PrechargedLogic Block(L2)

PrechargedLogic Block(L3)

completiondetection

(L1)

completiondetection

(L2)

completiondetection

(L3)

VDD

A B C

intout

Post-chargelogic

Page 59: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14159

© Digital Integrated Circuits2nd Timing Issues

ClockClock--Delayed DominoDelayed Domino

PulldownNetwork

CLK1

GND

CLK2 (to next stage)

Q1 (also D2)

D1

VDD

Page 60: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14160

© Digital Integrated Circuits2nd Timing Issues

AsynchronousAsynchronous--Synchronous InterfaceSynchronous Interface

Asynchronoussystem

Synchronous system

Synchronization

fCLK

fin

Page 61: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14161

© Digital Integrated Circuits2nd Timing Issues

Synchronizers and ArbitersSynchronizers and Arbiters

Arbiter: Circuit to decide which of 2 events occurred firstSynchronizer: Arbiter with clock φ as one of the inputsProblem: Circuit HAS to make a decision in limited time - which decision is not importantCaveat: It is impossible to ensure correct operationBut, we can decrease the error probability at the expense of delay

Page 62: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14162

© Digital Integrated Circuits2nd Timing Issues

A Simple Synchronizer A Simple Synchronizer

• Data sampled on rising edge of the clock

• Latch will eventually resolve the signal value,but ... this might take infinite time!

CLK

int

I2

I1D Q

CLK

Page 63: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14163

© Digital Integrated Circuits2nd Timing Issues

Synchronizer: Output Trajectories Synchronizer: Output Trajectories

Single-pole model for a flip-flop

2.0

1.0

0.00 100 200 300

Vou

t

time [ps]

Page 64: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14164

© Digital Integrated Circuits2nd Timing Issues

Mean Time to FailureMean Time to Failure

Page 65: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14165

© Digital Integrated Circuits2nd Timing Issues

ExampleExampleTf = 10 nsec = TTsignal = 50 nsectr = 1 nsect = 310 psecVIH - VIL = 1 V (VDD = 5 V)

N(T) = 3.9 10-9 errors/secMTF (T) = 2.6 108 sec = 8.3 yearsMTF (0) = 2.5 µsec

Page 66: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14166

© Digital Integrated Circuits2nd Timing Issues

Influence of NoiseInfluence of Noise

Initial Distribution

p(v)

0 VIL VIH

T

Uniform distributionaround VM

Still Uniform

logarithmic reduction

Low amplitude noise does not influence synchronization behavior

Page 67: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14167

© Digital Integrated Circuits2nd Timing Issues

Typical SynchronizersTypical Synchronizers

φ1

φ2

Q

Q

φ1

φ2

Using delay line

2 phase clocking circuit

Page 68: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14168

© Digital Integrated Circuits2nd Timing Issues

Cascaded Synchronizers Reduce MTFCascaded Synchronizers Reduce MTF

Sync Sync SyncIn O1 O2 Out

φ

Page 69: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14169

© Digital Integrated Circuits2nd Timing Issues

ArbitersArbiters

Req1

Req2

Req1

Req2

Ack1

Ack2Arbiter

Ack1

Ack2

(a) Schematic symbol

(b) Implementation

A

B

Req1

Req2

A

BAck1 t

(c) Timing diagramVT gap

metastable

Page 70: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14170

© Digital Integrated Circuits2nd Timing Issues

PLLPLL--Based SynchronizationBased Synchronization

DigitalSystem

Divider

CrystalOscillator

PLL

Chip 1

DigitalSystem

PLL

Chip 2

fsystem = N x fcrystal

fcrystal , 200<Mhz

Data

ClockBuffer

referenceclock

Page 71: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14171

© Digital Integrated Circuits2nd Timing Issues

PLL Block DiagramPLL Block Diagram

Phasedetector

Chargepump

Divide byN

Loopfilter VCO

Referenceclock

Localclock

SystemClock

Up

Down

vcont

Page 72: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14172

© Digital Integrated Circuits2nd Timing Issues

Phase DetectorPhase Detector

ref

localclock

localclock

Output

Output

ref

VDD

-180 -90 90 180 phase error (deg)

Output (Low pass filtered)(a)

(c)

(b)

Output before filtering

Transfercharacteristic

Page 73: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14173

© Digital Integrated Circuits2nd Timing Issues

PhasePhase--Frequency DetectorFrequency Detector

(c) Timing waveforms

(a) schematic (b) state transition diagram

A

B

UP

DN

A

B

UP

DN

D Q

D Q

A

B

Rst

Rst

UP

DN

UP = 0DN = 1

UP = 0DN = 0

UP = 1DN = 0

B

B A

A

A B

Page 74: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14174

© Digital Integrated Circuits2nd Timing Issues

PFD Response to FrequencyPFD Response to Frequency

A

B

UP

DN

Page 75: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14175

© Digital Integrated Circuits2nd Timing Issues

PFD Phase Transfer CharacteristicPFD Phase Transfer Characteristic

VDD

phase error (deg)

Average (UP-DN)

−2 π

Page 76: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14176

© Digital Integrated Circuits2nd Timing Issues

Charge PumpCharge PumpVDD

UP

DN

To VCO Control Input

Page 77: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14177

© Digital Integrated Circuits2nd Timing Issues

PLL SimulationPLL Simulation

00.0

0.2

0.4

0.6

0.8

1.0

1 2 3 4 5

Con

trol V

olta

ge (V

)

Time ( s)µ

ref

div

vco

ref

div

vco

Page 78: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14178

© Digital Integrated Circuits2nd Timing Issues

Clock Generation using DLLsClock Generation using DLLs

PhaseDet

ChargePump

FilterDL

PD CP VCO÷N

Delay-Locked Loop (Delay Line Based)

Phase-Locked Loop (VCO-Based)

U

D

U

D

fREF

fO

fO

fREF

Filter

Page 79: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14179

© Digital Integrated Circuits2nd Timing Issues

Delay Locked LoopDelay Locked LoopPhasedetect

Chargepump VCDL

FREF∆PH

U

DC VCTRL

FO

REF

OUT

UP

DN

Delay

∆PH

VCTRL

(a)

(b)

(c)

Page 80: Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolićbaccaran/Rabaey/chapter10.pdfEE141 1 © Digital Integrated Circuits2nd Timing Issues Digital Integrated Circuits A Design Perspective

EE14180

© Digital Integrated Circuits2nd Timing Issues

DLLDLL--Based Clock DistributionBased Clock Distribution

VCDL

CP/LF

PhaseDetector

VCDL

CP/LF

PhaseDetector

DigitalCircuit•••

DigitalCircuit•••

GLOBAL CLK