digital system clocking:

30
Digital System Clocking: Digital System Clocking: High-Performance and Low-Power Aspects High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience and IEEE Press, January 2003 Chapter 5: High-Performance System Issues

Upload: xantha-mccarthy

Post on 02-Jan-2016

114 views

Category:

Documents


0 download

DESCRIPTION

Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic. Digital System Clocking:. Chapter 5: High-Performance System Issues. High-Performance and Low-Power Aspects. Wiley-Interscience and IEEE Press, January 2003. Absorbing Clock Uncertainties. Clock uncertainties - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Digital System Clocking:

Digital System Clocking:Digital System Clocking:Digital System Clocking:Digital System Clocking:High-Performance and Low-Power AspectsHigh-Performance and Low-Power Aspects

Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic

Wiley-Interscience and IEEE Press, January 2003

Chapter 5: High-Performance System Issues

Page 2: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 2

Absorbing Clock Uncertainties• Clock uncertainties

– Clock skew– Clock jitter

• Trends:– Clock distribution becomes progressively

difficult due to: • load mismatch• Process, voltage, and temperature variations.

– The clock uncertainties occupy increasing portion of the cycle time; typically 2 FO4.

• The ability to reduce impact of these uncertainties is one of the most important properties of the high-performance system.

Page 3: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 3

Clock Generation and Distribution Non-idealities

• Jitter– Temporal variation of the clock signal manifested as

uncertainty of consecutive edges of a periodic clock signal.

– It is caused by temporal noise events– Manifested as:

- cycle-to-cycle or short-term jitter, tJS

- long-term jitter, tJL

– Mainly characteristic of clock generation system

• Skew– Time difference between temporally-equivalent or

concurrent edges of two periodic signals– Caused by spatial variations in signal propagation – Manifests as CSE-to-CSE fluctuation of clock arrival at

the same time instance– Characteristic of clock distribution system

Page 4: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 4

Clock Uncertainties

Ref_Clock

Received Clock

T

skewtskewt

jitt jitt

RCV_CLKt

DRV_CLKt

Clockuncertainty:jitter+skew

Page 5: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 5

Clock Uncertainty Absorption Using Soft Clock Edge

Page 6: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 6

Output of a flip-flop in the presence of clock jitter: Partovi et al. 1996

A recent design of a Flip-Flop, controlled by a narrow, locally generated clock pulse, with negative Setup Time exhibits some degree of clock uncertainty absorption.

Smaller variation in Qb arrival

Large initial variation in Clk arrival

Page 7: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 7

200

220

240

260

280

300

-30 -20 -10 0 10 20 30 40 50 60

C lk arrival tim e [ps]

D-Q

del

ay [p

s]

tC U

D D Q m

D D Q M

N om inalC lk

C lk

Data-to-output characteristics in the presence of clock uncertainty

Data-to-Output Delay versus Clock Arrival Time when the data arrival time is constant. When no clock uncertainties are present, the clock is scheduled to arrive so that D-Q delay (tDQm) is smallest, in order to minimize the CSE overhead.

Q

Soft clock edge: short transparency window timing less dependent on clock

Page 8: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 8

Dependence of data-to-output delay on clock arrival

Clock uncertainty tCU

D

Q

Clk

Worst-case DDQ

Nominal DD-Clk

DDQm

DDQM

Early DD-Clk

Late DD-ClkTNominal=0

The key role of a CSE is to minimize the propagation of clock uncertainty to the CSE output:

max [ ( )], [ / 2, / 2]DQM DQ Opt CU CUt

D D U t t t t

Page 9: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 9

Timing Analysis with Clock Uncertainty Absorption

Page 10: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 10

Total delay versus clock uncertainty

tCU=100ps

44ps

UOpt=30ps

DDQM=261ps

tCU=30ps

3ps

UOpt=-5ps

DDQM=220ps

Clk

D

Q

Clk

D

Q

(b) tCU=100ps (aCU=56%)(a) tCU=30ps (aCU=90%)We formulate clock uncertainty absorption CU of a storage element as the portion of the total clock uncertainty not reflected at the output:

CU

DQ

CU

DQmDQMCUCU t

D

t

DDt

1

PDtD LMCUCUDQm )1(

Page 11: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 11

Critical race in the presence of clock uncertainty

D1 D2Q1 Q2

ClkA

BufA

BufB

BufC

ClkB

ClkC

ClkB

ClkC

BufB, BufCjitter

DCQ

HDLm

tCU

tCU

D1

Q1

D2

Earlyarrival

Latearrival

Fastpath

ClkA

Hold timeviolation

LogicD Q D Q

ClkB, ClkCskew

CULmCQm tHDD

Clock uncertainties induced prior to ClkA have no effect to fast paths

Page 12: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 12

Idealized D-Q delay characteristic as a function of clock arrival

200

220

240

260

280

300

320

340

100 80 60 40 20 0 -20 -40 -60

D -C lk d ela y [p s]

D-Q

del

ay [

ps]

earlyC lk

nom inalC lk

lateC lk

D D Q= 238psregardless of clock

arrival

C lk

Page 13: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 13

Time Borrowing

Page 14: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 14

Time Borrowing

Classification:• Dynamic time borrowing

– Scheduling data to arrive to CSE when CSE is transparent• No “hard” boundaries between stages

– Occurs in latch-based level sensitive and soft-edge clocking.

• Static time borrowing– Inserting delay between clock inputs of the clocked

storage elements. – Clocks are scheduled to arrive so that the slower paths

obtain more time to evaluate, taking away the time from faster paths.

– It can operate with conventional hard-edge Flip-Flops. – Also called opportunistic skew scheduling

Page 15: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 15

Dynamic Time Borrowing

Page 16: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 16

Timing of two-phase level-sensitive pipeline with time borrowing

a

Borrowed timeof Stage2a

1

a

b

c

d

e

f

g

h

d1

P/2

L1 + Stage1a < P/2

Total borrowedtime at node f

2

1

Stage 1bStage 1a Stage 2a Stage 2bL1

c

2

L2

b e

1

L3

d g

2

L4

f h

1

L5

Stage 1 Stage 2

P/2

d2

d1 d2

d1 d2

d1

L2 + Stage1b > P/2

d2

d1 d2

L3 + Stage2a > P/2

d1 d2

d2d1

d1 d2

L4 + Stage 2b delay < P/2

D Q D Q D Q D Q D Q

Page 17: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 17

Timing Analysis with Time Borrowing: Late Data Arrival

The minimum clock cycle time of the pipeline is not determined by the delay of the slowest stage in the pipeline. It is rather the average delay of the logic and latches through all stages.

Assumptions: 1) all logic blocks are used in time borrowing, 2) after N stages, the pipeline produces data at the same point in the cycle at which the input data was acquired

N

iiLogiciDQ DD

NP

2

1,, )(

1

Page 18: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 18

Fast-path hazard

H

DCQ

late arrival due totime borrowing,

no hold time violation

earliest arrival,no time borrowing,hold-time violation

Stage 2ae

1

L3

d g

2

L4

f

1

2

d

e

f

In fast paths, analysis must assume that the data arrives at earliest possible time -> disregard effects of time borrowing

Page 19: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 19

Time borrowing and signal loops

ALU

mux

Clk

The timing of signals in the loops, should be treated separately. If the overall propagation delay through the loop occur later with each cycle, it will result in a Setup Time violation. Any signal loop that borrows time from itself will eventually cause a timing violation.

Page 20: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 20

Static Time Borrowing (Opportunistic Skew Scheduling)

Page 21: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 21

Opportunistic skew scheduling

Clk1

Q1 D2

Clk2 Clk3

CSE2

Clk1,Clk3

Q1

D2

Clk2

Q2

D3

Stage 1

Slower Faster

Q3

Stage 1 Stage 2

Ref Clk

Borrowedtime =

D QCSE1

D Q Logic 1Q2 D3Logic 2

CSE3

D Q

Stage 2Q3

Page 22: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 22

Opportunistic skew schedulingAdvantages:• It can operate with conventional Flip-Flops. • It places fewer constraints onto the circuit design,

allowing additional time slack where necessary. useful in localized critical paths where every

improvement directly increases the system clock rate

Disadvantages:• It increases the complexity of the clock distribution

system. • It is hard to control the inserted delays over

process, supply and temperature variations. • The analysis of clock skew is also complicated in

this asymmetric clock distribution network. impractical on a large-scale level

Page 23: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 23

Time Borrowing and Clock Uncertainty

Level sensitive clocking, Soft clock edge

Clock uncertainty absorption Time borrowing

Varying clock arrival

Varying data arrival

Clock uncertainty absorption and time borrowing exploit the same data transparency property of CSE

Clocked storage elements

Page 24: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 24

Clock Uncertainty Absorption with Level-Sensitive Clocking

Page 25: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 25

Clock uncertainty immunity in single stage

D

TL

TLTT TT

tD

DD-Clk

Q

DDQ

DCQTLM

tt=0 t=tA(D)

UT

TM

W

tB

W/2 U UU

D D Q Q

C

2/WDDtT CQDQBL

UtWT BT 2/

HVDDTT LmCQmTL 21 ,,

System tolerates up to

to keep borrowing time

before violating hold time

System tolerates up to

before violating setup time

System tolerates up to

Page 26: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 26

Clock uncertainty immunity in multiple stages D1

1

Stage 1 Stage 2 Stage 3

U

D1

Q1

D4

Q4

D7

3 P + W - tCU

1

2

DCQ

W

Pedge1

(late arrival)edge8

(early arrival)

edge2 edge3 edge4 edge7edge6edge5

Logic 1a Logic 1b Logic 2a Logic 2b Logic 3a Logic 3bL1

D QL2

D QL3

D QL4

D QL5

D QL6

D QL7

D Q

Q1 D2 Q2 D3 Q3 D4 Q4 D5 Q5 D6 Q6 D7

212121

Logic 1a, L2, Logic 1b,L3, Logic 2a

Logic 2b, L5, Logic 3a,L6, Logic 3b

WPUDDDDt CQCU 3)( 71133

)( 711 CUCQ tWUDDDDP

impact of the clock uncertainties reduced over multiple stages

Page 27: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 27

Summary: Effects of clock uncertainties to a system with level-sensitive clocking

• Decreasing of the margins for time borrowing.

• The pipeline absorbs the uncertainties for the data that arrives during the transparency period of the Latch.

• The effect of the uncertainties is reduced to an average uncertainty over all stages in the path.

Page 28: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 28

Soft-Edge Sensitive Clocking

Page 29: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 29

Time borrowing with uncertainty-absorbing clocked storage elements

tCU

tCU

Borrowed time (tB)

NominalLogic 1 delay

ActualLogic 1 delay

nominalarrival

actual arrival due totime borrowing

Clk1

tD arrival

DDQ

Clk1,Clk3

Q1

D2

Clk2

Q2

D3

Stage 1 Stage 2D1 Q1

D QCSE1

Logic 1 D QCSE2

Logic 2 D QCSE3

D2 Q2 D3 Q3

Clk2 Clk3

NominalLogic 2 delay

ActualLogic 2 delay

tCU tCU tCU

]1)[( CUCUBDQ ttD

Page 30: Digital System Clocking:

Nov. 14, 2003

Digital System Clocking: Oklobdzija, Stojanovic, Markovic, Nedovic 30

Conclusion

• High-performance CSE requirements: – Speed– Clock uncertainty absorption to accommodate

increasing effect of clock skew and jitter– Time borrowing to eliminate effects of imbalanced

stage delays

• Essential circuit technique: eliminate hard edges in critical paths

• Flip-flops with soft clock edge, level-sensitive latches become preferred choice of CSE

• Clock uncertainty absorption capability can be traded for time borrowing