a useful skew tree framework for inserting large safety margins rickard ewetz and cheng-kok koh...
TRANSCRIPT
![Page 1: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/1.jpg)
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
![Page 2: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/2.jpg)
Lowering the Point of Divergenceand
Safety Margins
A B A BC D
![Page 3: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/3.jpg)
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
![Page 4: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/4.jpg)
Safety Margins
ijijij uskewl
ijijijijij muskewml
A B C D
![Page 5: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/5.jpg)
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!
![Page 6: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/6.jpg)
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
![Page 7: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/7.jpg)
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
![Page 8: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/8.jpg)
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
![Page 9: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/9.jpg)
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
![Page 10: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/10.jpg)
Proposal
• Safety margin Muser > Max uniform M • Lower point of divergenceFew constraints that limit the magnitude of M!
![Page 11: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/11.jpg)
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
![Page 12: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/12.jpg)
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
![Page 13: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/13.jpg)
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.
![Page 14: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/14.jpg)
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.
![Page 15: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/15.jpg)
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
![Page 16: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/16.jpg)
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
![Page 17: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/17.jpg)
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
![Page 18: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/18.jpg)
Tight Skew Constraints
Yield (%)
Muser (ps)0 15 20 25 30 35 40
46.8
100
82.6
98.895.496.293.0
![Page 19: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/19.jpg)
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
![Page 20: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/20.jpg)
Illustration on scaled_s15850
![Page 21: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/21.jpg)
Muser = M+ 0 = 27
![Page 22: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/22.jpg)
Muser = M+10 =37
![Page 23: A Useful Skew Tree Framework for Inserting Large Safety Margins Rickard Ewetz and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University](https://reader036.vdocuments.site/reader036/viewer/2022062714/56649d0c5503460f949e0e5f/html5/thumbnails/23.jpg)
Summary
• Combine the lowering of the point of divergence with insertion of large safety margins!
• Questions