noise model for multiple segmented coupled rc interconnects andrew b. kahng, sudhakar muddu †,...
TRANSCRIPT
Noise Model for Multiple Segmented Coupled RC Interconnects
Andrew B. Kahng, Sudhakar Muddu†,
Niranjan A. Pol ‡ and Devendra Vidhani*UCSD CSE and ECE Department, [email protected]
†Sanera Systems, Inc., [email protected]‡Cadence Design Systems, [email protected]
*Sun Microsystems, [email protected]
KMPV2001 2
Outline of Talk
• Signal Integrity Issues
• Previous Works
• Our Contributions
– Transformed Model for Segmented Aggressors
– Multiple Aggressors
• Simulation Results
• Conclusions
KMPV2001 3
Outline of Talk
• Signal Integrity Issues
• Previous Works
• Our Contributions
– Transformed Model for Segmented Aggressors
– Multiple Aggressors
• Simulation Results
• Conclusions
KMPV2001 4
• Interconnect Induced Issues– scaled linewidths, increased aspect ratios, larger die sizes
greater wire and via RC, electromigration, IR drop, skin effect
– more metal layers higher coupling to ground ratio– long wider metal wires magnetic field / inductance
• Process Induced Issues– low device thresholds, low VDD
increased susceptibility to low noise margins
• Design Induced Issues– high frequency
faster slew times, inductive effects, ground bounce
Factors Affecting Signal Integrity
KMPV2001 5
Focus: Crosstalk Issues
• Cross talk caused by coupling between neighboring signals– Victim Net: Net being affected by coupling– Aggressor Net: Net affecting victim net due to its coupling to victim
• Coupling capacitance is one of major contributors• Functionality Issues
– peak noise• false switching of noise sensitive nodes in the design
• Timing Issues– positive/negative delay impact due to crosstalk– issues with timing closure
• Motivation: find coupling related noise issues ASAP!!– In general, find signal integrity problem earlier in design– provide sufficient conditions for finding problem
KMPV2001 6
Outline of Talk
• Signal Integrity Issues
• Previous Works
• Our Contributions
– Transformed Model for Segmented Aggressors
– Multiple Aggressors
• Simulation Results
• Conclusions
KMPV2001 7
Previous Works on Crosstalk
• Vittal et. al., 97: L model; step input; ignore Rint, Cint
• Kawaguchi et. al., 98: diffusion equations; step input; same peak noise
expressions as Vittal
• Nakagawa et. al., 98: L model; assumptions about peak noise time
• Shepard et. al., 97: L model; ignores R and C of aggressors; uses ramp with
heuristics; does full chip simulation
• Kahng et. al., 99: model; Assume single, full length aggressor
KMPV2001 8
Previous Works on Crosstalk
• Circuit models issues– use lumped capacitance models
– cannot handle segmented aggressors configurations
• Noise models issues– estimations very pessimistic
– assumptions about R and C
– some are simulation based
KMPV2001 9
Outline of Talk
• Signal Integrity Issues
• Previous Works
• Our Contributions
– Transformed Model for Segmented Aggressors
– Multiple Aggressors
• Simulation Results
• Conclusions
KMPV2001 10
Our Work
• Improved circuit model for peak noise– facilitates segmented aggressors– superposition for multiple aggressors
• Methodology– for coupled RC interconnects only– takes drivers into account– considers slew times– considers lumped -Model– considers both local and global line
KMPV2001 11
Circuit Model
• Two parallel coupled lines
• Aggressor - Green; Victim - Red
• Coupling capacitance - Cc
• Supply voltages - Vs1, Vs2
Aggressor Line
Victim Line
Vs1
Vs2
Driver 1
Driver 2
Load 1
Load 2Cc
KMPV2001 12
Lumped - Model
C
B
Vs1
Vs2
Rd2
Cc1
D
ARa
Rv
CL1
Aggressor Line
Victim Line
Rd1
Cc2
Cgv1Cgv2 CL2
Cga1Cga2
Rd1, Rd2: Driver Resistances
Cgv1, Cgv2: Leg of model for ground cap for victim
Cga1, Cga2: Leg of model for ground cap for aggressor
Ra, Rv: Wire resistances of used in the model
Cc1, Cc2: Left and right leg of model for coupling cap
CL1, CL2: Load caps
KMPV2001 13
Peak Noise For Model
• Vpeak is given at vc( tpeak)
where
ST
peakt
sTs
e
sTs
e
sk
sk
sspeakt
ST
peakt
sk
sk
sspeakt
2
11
11
22
11ln22
12
10
22
11ln22
11
KMPV2001 14
Segmented Aggressor Nets• Simple lumped model deficiencies for general case
– general case is when aggressor and victim nets are not overlapped completely
– for segmented aggressor overlaps, lumped model gives pessimistic results
• Extensions to lumped model for general case– improved victim wire and victim driver resistance modeling– improved victim coupling and ground capacitance modeling
• For multiple segmented aggressor nets coupling to victim net, use superposition to compute noise peak value
KMPV2001 15
Segmented Aggressor Net Configuration
• L1 = Left fraction of Victim to the Aggressor Overlap
• L2 = Fraction of Victim overlapped by Aggressor
• L3 = Right fraction of Victim to the Aggressor Overlap
• RdA(RdV) = Aggressor(Victim) Driver Resistance
• RwA(RwV) = Aggressor(Victim) Wire Resistance
• CgA(CgV) = Aggressor(Victim) Capacitance to ground
• CLA(CLV) = Aggressor(Victim) Load Capacitance
• Cc = Coupling Capacitance
CLV
VA
Aggressor Net
L3L2L1
L1+ L2+ L3 = 1
RdA
RdV
RWA
CLA
RWV
CgV
CgA
Victim Net
CC RdA
KMPV2001 16
• Victim wire resistance modeling– Wire resistance to left and right of overlap region not considered part of
wire resistance in the model– Assumed proportional to length of the victim net overlap region with the
aggressor, I.e.,Rv = Rwv* L2
• Victim driver resistance modeling– Assumed to consist of the actual driver resistance and the resistance of
portion of wire to the left of the overlap region, I.e.,Rd2 = Rdv+Rwv* L1
Victim Resistance Modeling
KMPV2001 17
Non Uniform Coupling Capacitance Distribution• Coupling capacitance distribution in model and real circuit
– In real circuit, coupling capacitance starts L1 distance away from the keeper end of the victim net
– In the model, the left leg of the coupling capacitance is at the keeper end of the victim net
• Discrepancy between model and real circuit– In real circuit, capacitance is shielded by the wire resistance – In the model, the keeper end of the victim net is at zero potential– This causes more discharge from the left leg of coupling cap
• Solution– Lower the coupling cap on the keeper end of the victim net in the model– Keep it pessimistic (don’t worry about receiver end correction)
Cc1 = 0.5 * Cc* (1-L1)Cc2 = 0.5 * Cc* (1+L1)
KMPV2001 18
Non Uniform Victim Ground Cap Distribution• Ground capacitance distribution / discrepancy
– In real circuit, the ground capacitance is distributed all along the victim wire
– In the model, the ground capacitance is visible equally at driver and receiver end of the wire
• Solution– Make left (right) leg of ground cap account for the ground cap for the
portion of the victim wire to the left (right) of the overlap region– Adjust total ground capacitance such that the total ground capacitance is
not changedCgv1 = 0.5* Cgv * (1+L1-L3)Cgv2 = 0.5* Cgv * (1-L1+L3)
KMPV2001 19
Outline of Talk
• Signal Integrity Issues
• Previous Works
• Our Contributions
– Transformed Model for Segmented Aggressors
– Multiple Aggressors
• Simulation Results
• Conclusions
KMPV2001 20
Multiple Aggressors
• In real life layouts, need to see contributions of not more than 3 worst aggressors
• Our model report noise by superposition for individual aggressor’s noise contribution
• Noise function due to each aggressor is added in time domain to obtain the superimposed peak noise
• Could potentially be huge number of aggressor configurations
• Presented results for two and three aggressors
KMPV2001 21
Outline of Talk
• Signal Integrity Issues
• Previous Works
• Our Contributions
– Transformed Model for Segmented Aggressors
– Multiple Aggressors
• Simulation Results
• Conclusions
KMPV2001 22
Criteria– global wires (case 2 and 3) and local wires (case 1 and 4)– different coupling to ground capacitance ratios– The values shown here are corresponding to Rint, Cint per unit length of the
victim wire and coupling cap to the aggressor with L2 assumed equals 1.0– To compare results for model with spice, we construct multiple model
with 45 nodes in the spice circuit
CasesWidth
(in m)Spacing(in m)
Length(in m)
Rint/length(in )
Cgnd/length(in fF)
Ccoup/length(in fF/mm)
1 0.49 0.46 1000 122.9 63.2 115.02
2 0.49 0.46 5000 122.9 63.15 115.00
3 1.00 0.46 10000 60.53 98.40 118.0
4 0.49 1.30 1000 122.9 109.3 46.2
Simulation Configuration
KMPV2001 23
Segmented Aggressor Net Configuration 1
• L1 = Left fraction of Victim to the Aggressor Overlap = 0.2
• L2 = Fraction of Victim overlapped by Aggressor = 0.6
• L3 = Right fraction of Victim to the Aggressor Overlap = 0.2
• RdA(RdV) = Aggressor(Victim) Driver Resistance
• RwA(RwV) = Aggressor(Victim) Wire Resistance
• CgA(CgV) = Aggressor(Victim) Capacitance to ground
• CLA(CLV) = Aggressor(Victim) Load Capacitance
• Cc = Coupling Capacitance
CLV
VA
Aggressor Net
L3L2L1
L1+ L2+ L3 = 1
RdA
RdV
RWA
CLA
RWV
CgV
CgA
Victim Net
CC RdA
KMPV2001 24
Peak Noise Results for Configuration 1
Peak noise results for configuration 1: L1=0.2, L2=0.6, L3=0.2
SPICE Our Model % Error SPICE Our Model % Error1 0.114 0.119 4.84 0.058 0.061 4.562 0.49 0.451 -8 0.436 0.421 -3.513 0.521 0.457 -12.22 0.502 0.45 -10.524 0.046 0.048 4.98 0.023 0.025 4.57
Ts = 200 psCases
Ts = 400 ps
SPICE Our Model % Error SPICE Our Model % Error1 0.255 0.269 5.67 0.18 0.197 9.612 0.515 0.462 -10.42 0.506 0.459 -9.363 0.52 0.46 -11.52 0.526 0.459 -12.684 0.103 0.109 5.65 0.072 0.079 10.66
Ts = 1 psCases
Ts = 100 ps
KMPV2001 25
Segmented Aggressor Net Configuration 2
VA
Aggressor Net
L3L2
RdA
RdV
RWA
RWV
CC
Cgv
CgA
Victim Net
CLA
CLA
• L1 = Left fraction of Victim to the Aggressor Overlap = 0.0• L2 = Fraction of Victim overlapped by Aggressor = 0.6• L3 = Right fraction of Victim to the Aggressor Overlap = 0.4
• RdA(RdV) = Aggressor(Victim) Driver Resistance
• RdA(RdV) = Aggressor(Victim) Wire Resistance
• CgA(CgV) = Aggressor(Victim) Capacitance to ground
• CgA(CgV) = Aggressor(Victim) Load Capacitance
• Cc = Coupling Capacitance
L1+ L2+ L3 = L
KMPV2001 26
Peak Noise Results for Configuration 2
Peak noise results for configuration 1: L1=0, L2=0.6, L3=0.4
SPICE Our Model % Error SPICE Our Model % Error1 0.097 0.098 1.02 0.05 0.05 0.0012 0.364 0.343 -5.94 0.32 0.311 -2.623 0.388 0.346 -10.67 0.373 0.338 -9.464 0.038 0.039 1.16 0.02 0.02 0.02
Ts = 200 psCases
Ts = 400 ps
SPICE Our Model % Error SPICE Our Model % Error1 0.22 0.244 11.29 0.153 0.168 10.12 0.385 0.355 -7.89 0.377 0.352 -6.773 0.393 0.349 -11.13 0.391 0.349 -10.844 0.087 0.097 11.01 0.061 0.067 10.47
Ts = 1 psCases
Ts = 100 ps
KMPV2001 27
Segmented Aggressor Net Configuration 3
CLV
VA
Aggressor Net
L2L1
RdA
RdV
RWA
RWV
CC
Cgv
CgA
Victim Net
CLA
• L1 = Left fraction of Victim to the Aggressor Overlap = 0.4• L2 = Fraction of Victim overlapped by Aggressor = 0.6• L3 = Right fraction of Victim to the Aggressor Overlap = 0.0
• RdA(RdV) = Aggressor(Victim) Driver Resistance
• RdA(RdV) = Aggressor(Victim) Wire Resistance
• CgA(CgV) = Aggressor(Victim) Capacitance to ground
• CgA(CgV) = Aggressor(Victim) Load Capacitance
• Cc = Coupling Capacitance
L1+ L2+ L3 = L
KMPV2001 28
Peak Noise Results for Configuration 3
Peak noise results for configuration 1: L1=0.4, L2=0.6, L3=0
SPICE Our Model % Error SPICE Our Model % Error1 0.13 0.14 7.06 0.067 0.073 7.862 0.602 0.526 -12.62 0.535 0.5 -6.613 0.641 0.541 -15.66 0.618 0.534 -13.64 0.053 0.058 7.3 0.017 0.018 7.88
Ts = 200 psCases
Ts = 400 ps
SPICE Our Model % Error SPICE Our Model % Error1 0.281 0.291 0.75 0.205 0.221 8.272 0.594 0.536 -0.99 0.618 0.533 -13.773 0.64 0.543 -15.08 0.647 0.543 -16.174 0.118 0.119 0.76 0.083 0.09 9.19
Ts = 1 psCases
Ts = 100 ps
KMPV2001 29
Peak Noise Results for Two Aggressor
Peak noise results for two aggressors configurations. Aggressor1: L1=0, L2=0.6, L3=0.4; Aggressor2: L1=0.4, L2=0.6, L3=0
SPICE Our Model % Error SPICE Our Model % Error1 0.222 0.237 6.78 0.117 0.112 4.662 0.726 0.793 7.17 0.658 0.732 9.853 0.851 0.887 4.57 0.828 0.872 5.414 0.091 0.096 5.54 0.047 0.049 4.59
Ts = 200 psCases
Ts = 400 ps
SPICE Our Model % Error SPICE Our Model % Error1 0.469 0.532 13.44 0.336 0.39 16.22 0.756 0.816 5.8 0.742 0.811 6.923 0.85 0.893 5.03 0.857 0.891 3.984 0.196 0.215 9.7 0.14 0.157 12.82
Ts = 1 psCases
Ts = 100 ps
KMPV2001 30
Peak Noise Results for Three Aggressors
Peak noise results for three aggressors configurations. Aggressor1: L1=0, L2=0.6, L3=0.4; Aggressor2: L1=0.2, L2=0.6, L3=0.2; Aggressor3: L1=0.6, L2=0.4, L3=0
SPICE Our Model % Error SPICE Our Model % Error1 0.258 0.279 8.12 0.136 0.143 4.642 0.963 1.186 26.66 0.85 1.074 26.333 0.106 0.112 24.63 0.952 1.193 25.284 0.984 1.226 6.02 0.055 0.057 4.61
Ts = 200 psCases
Ts = 400 ps
SPICE Our Model % Error SPICE Our Model % Error1 0.548 0.698 27.32 0.389 0.473 21.612 0.977 1.232 26.05 0.962 1.22 26.763 0.981 1.237 26.13 0.992 1.234 24.484 0.236 0.276 16.66 0.165 0.189 14.73
Ts = 1 psCases
Ts = 100 ps
KMPV2001 31
Outline of Talk
• Signal Integrity Issues
• Previous Works
• Our Contributions
– Transformed Model for Segmented Aggressors
– Multiple Aggressors
• Simulation Results
• Conclusions
KMPV2001 32
Conclusions• Model works for point to point victim net and segmented
multiple aggressors
• Results are accurate for peak noise
• Pessimism increases with the number of aggressors– One segmented aggressor: 16% max error– Two segmented aggressor: 17%– Three segmented aggressor: 31%
• Can be used as a quick pruning step in an analytical noise tool