A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University.

Post on 18-Dec-2015

213 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

A Useful Skew Tree Framework for Inserting Large Safety Margins

Rickard Ewetz and Cheng-Kok KohSchool of Electrical and Computer Engineering, Purdue University

ISPD 2015

Lowering the Point of Divergenceand

Safety Margins

A B A BC D

Skew Constraints

JHj

ijiCQi

jjS

ijiCQi

ttttt

Tttttt

min

max

Combinational Logic

ijiCQ

jHij

jS

ijiCQij

jiij

tttl

tttTu

ttskew

min

max

it iCQt

FFiFFj

jtijtmaxijtmin

jSt

jHt

ijijij uskewl

Safety Margins

ijijij uskewl

ijijijijij muskewml

A B C D

SCG

ab

c

d30

20

D Q

D QD Q

D Qa

b

c

d

4030 ababab uskewl2010 acacac uskewl

4010

bdbdbd uskewl

cdcdcd uskewl bcbcbc uskewl

Insert Safety Margin Muser = 20

ab

c

d10

0

20-10

Negative cycle => no Feasible Arrival times!

Cycles of Skew Constraints

ijjiji mwtt

Cji Cji ijjiji mwtt),( ),(

)(

=0

CCji jiCjiij Wwm

),(

),(

[9] J. Fishburn. Clock skew optimization. IEEETransactions on Computers, pages 945–951, 1990.

10

20

SCG with = 0m

|| min

min

C

WM CMaximum Uniform safety margin

Greedy-UST/DME

D Q D Q D Q D Q

a b c d

Sourcea b c d

FSRab = [-dab, dba]

[17] C.-W. A. Tsao and C.-K. Koh. UST/DME: a clock tree router for general skew constraints. ACM TODAES, pages 359–379, 2002.

ab

d

c

Insertion of Safety Margins in [17]

• Uniform Safety Margins MuserMM user 0

[17] C.-W. A. Tsao and C.-K. Koh. UST/DME: a clock tree router for general skew constraints. ACM TODAES, pages 359–379, 2002.

Yield (%)

Muser (ps)0 15

46.8

100

M = 15 ps

Insertion of Safety Margins in [11]

D Q D Q D Q D Q

a b c d

Sourcea b c d

FSRab = [-dab, dba]

[11] W.-C. D. Lam and C.-K. Koh. Process variation robust clock tree routing. ASP-DAC ’05, pages 606–611, 2005.

M = 15 ps

b c20

10

=ф20 20

Proposal

• Safety margin Muser > Max uniform M • Lower point of divergenceFew constraints that limit the magnitude of M!

Flow UST-LSM FrameworkDecrease SCG edge weights with Muser

Detection of negative cycles

Pre-

synt

hesi

sSy

nthe

sis

Create clusters from negative cycles

Construct trees from cluster 2 to K

Construct clock tree from cluster 1 and the trees from cluster 2 to K

Output

Input

No cycles in SCG Found one cycle in SCG

Reduction of safety margin from edges of negative cycles

Cycle is non-negative

1 2

3 4

8

57312-2

10

3 2 6

1 2

3 4

6

35210

8

-41 0 4

1 2

3 4-41 0

1 2

3 4-32 1

2 3 41

C1 C2

2 3 4 2 3 41

Evaluation of the UST-LSM Framework

Name Clock period

(ns)

Number of nets

Number of cells

Number of sequential elements

Number of skew

constraintsscaled_s1423scaled_s5378scaled_s15850

0.320.320.32

---

---

74179597

78175318

mspfpuecg

12.3040.00

1.00

52394210462164

47874156561491

683715

7674

449901626363440

[8] R. Ewetz and C.-K. Koh. Benchmark circuits for clock scheduling and synthesis. https://purr.purdue.edu/publications/1759, 2015.

Monte Carlo Framework

• Adopted from the ISPD2010 contest [15]• Variations– Supply voltage (15%)– Wire widths (10%)– Temperature (30%)– Channel length (10%)

• Spatial correlations– Quad tree model [1]

• Stage-by-stage with slew propagation [19]

11v

23v 24v

22v21v

[15] C. Sze. ISPD 2010 high performance clock network synthesis contest: Benchmark suite and results. ISPD’10, pages 143–143, 2010.[1] A. Agarwal, D. Blaauw, and V. Zolotov. Statistical timing analysis for intra-die process variations with spatial correlations. ICCAD’03, pages 900–907, 2003.[19] M. Zhao, K. Gala, V. Zolotov, Y. Fu, R. Panda, R. Ramkumar, and B. Agrawal. Worst case clock skew under power supply variations. TAU ’02, pages 22–28, 2002.

Evaluation metrics

• Metrics:– Yield (skew + transition time)– 95%-slack– Capacitive cost– Run-time

• Designs with loose and tight skew constraints– Loose if no negative cycles with Muser = 100 ps

Designs with loose skew constraints

Safety margin

Muser (ps)

Yield 95%-slack Cap(fF)

Run-time

msp ZSTNo margin

50100

100100100100

80.0080.0080.00

100.00

2473187218721977

209193200184

fpu ZSTNo margin

50100

100100100100

49.1150.0050.0087.63

3185226422644499

78494671

Similar results for scaled_s1423 and scaled_s5378

Designs with Tight Skew Constraints

Safety margin Muser (ps)

ClusteringC2

(num)

Max stagesC3

(num)C4

(num)scaled_s15850scaled_s15850

M+20=47M+20=47

yesno

37

--

--

scaled_s15850scaled_s15850

M+50=77M+50=77

yesno

39

--

--

ecgecg

M+15=30M+15=30

yesno

36

18

--

ecgecg

M+25=40M+25=40

yesno

33

16

11

Tight Skew Constraints

Yield (%)

Muser (ps)0 15 20 25 30 35 40

46.8

100

82.6

98.895.496.293.0

Tight Skew ConstraintsBM Safety

Margin Muser (ps)

Yield (%) 95%-slack Cap (fF) Run-time

scaled_s15850

ZST0

M=27M+10=37M+20=47M+30=57

0.026.496.699.699.8100

-12.98-14.54

3.2311.2517.4024.30

178301452020197259163005034890

136181292678

10921484

ecg ZST0

M=15M+5=20

M+10=25M+15=30M+20=35M+25=40

0.00.0

46.882.693.098.895.496.2

-30.53-19.55

-9.04-5.34-1.134.640.155.17

2587822256448534712956974668298922396845

17711118182717612127236040116388

Illustration on scaled_s15850

Muser = M+ 0 = 27

Muser = M+10 =37

Summary

• Combine the lowering of the point of divergence with insertion of large safety margins!

• Questions

top related