ИП ПМ - tum · ИП ПМ 24 victim aggressor aggressor 1 noise cluster t noise no noise...
TRANSCRIPT
![Page 1: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/1.jpg)
ИП
ПМ
Sergey Gavrilov
IPPM RAS / MIET
Course 2: IC Design Challenges and Methods for Contemporary
Technologies
![Page 2: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/2.jpg)
ИП
ПМ
2
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Logic correlation analysis for timing and noise estimation
8. Input stimulus generation for IP blocks
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 3: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/3.jpg)
ИП
ПМ
3
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Logic correlation analysis for timing and noise estimation
8. Input stimulus generation for IP blocks
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 4: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/4.jpg)
ИП
ПМ
4
Transistor density approximately doubles every two years. - Moore’s Law.
Smaller transistors give improved performance, reduced power and
lower cost per transistor.
Feature sizes
Mic
ron
s
0.7 x every
2 years
![Page 5: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/5.jpg)
ИП
ПМ
5
Gate / Transistor
Delay
Delay of line,
Lint=1mm
1.0 mkm
(Al, SiO2)~ 20 ps ~ 1 ps
100 nm
(Cu)~ 5 ps ~ 30 ps
Technology
35 nm
(Cu)~ 2.5 ps ~ 250 ps
![Page 6: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/6.jpg)
ИП
ПМ
6
De
lay,
ps
Technology, nm
Delay of line
Delay of cell
Total delay
( )2
/ SiOAl
Total delay
( )2
/ SiOCu
![Page 7: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/7.jpg)
ИП
ПМ
7
Technology
Critical path without buffered interconnects
Metal Layers
90nm 65nm 45nm 32nm
m3 0.43 0.24 0.14 0.08
m6 1 0.56 0.32 0.19
,nm
![Page 8: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/8.jpg)
ИП
ПМ
8
channel length (Leff) thickness of the oxide layer (Tox) temperature (T)
+50%
+250%
-75%
-55%
Ch
an
ge
tra
nsi
sto
rs
se
ttin
g
250nm 180nm 130nm 90nm 65nm 45nm
mV
nm
mV
![Page 9: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/9.jpg)
ИП
ПМ
9
L (nm)
Vt (mV)
(σ (Vt)/Vt) *100
(%)
σ (Vt)
Year
Ch
an
ge
tra
nsi
sto
rs s
ett
ing
![Page 10: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/10.jpg)
ИП
ПМ
10
Year 1997 1999 2002 2005 2006
Leff (nm) 250 180 130 100 70
3 σ (Leff) 80 60 50 40 30
3 σ / Leff *100( %) 32% 33.3% 38.5% 40% 43%
Leff (nm)
3 σ ( Leff)
3 σ / Leff *100 (%)
Year
Ch
an
ge
tra
nsis
tors
se
ttin
g
![Page 11: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/11.jpg)
ИП
ПМ
11
Year 1997 1999 2002 2005 2006
W (mkm) 0.8 0.55 0.5 0.4 0.3
3 σ (W) 0.2 0.17 0.14 0.12 0.1
3 σ / W *100( %) 25% 31% 28% 30% 33.3%
W (mkm)
3 σ (W)
3 σ / W *100 (%)
Year
Ch
an
ge
tra
nsi
sto
rs s
ett
ing
![Page 12: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/12.jpg)
ИП
ПМ
12
Year 1997 1999 2002 2005 2006
Tox (nm) 5.0 4.50 4.00 3.50 3.0
3 σ (Tox) 0.4 0.36 0.39 0.42 0.48
3 σ / Tox *100( %) 8% 8% 9.75% 12% 16%
Tox (нм)
3 σ (Tox)
3 σ /Tox*100 %
Year
Ch
an
ge
tra
nsi
sto
rs
se
ttin
g
![Page 13: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/13.jpg)
ИП
ПМ
13
Reduction of sizes
Interconnection analysis problems
Variation analysis problems
Integration of logic and transistor level analysis
Statistical and interval analysis
New analysis methodsare required
![Page 14: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/14.jpg)
ИП
ПМ
14
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Logic correlation analysis for timing and noise estimation
8. Input stimulus generation for IP blocks
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 15: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/15.jpg)
ИП
ПМ
15
2 passes:
Forward propagation (from primary inputs to primary outputs)
LAT (Latest Arrival Time) for Setup restriction analysis
EAT (Earliest Arrival Time) for Hold restriction analysis.
Backward propagation (from primary outputs to primary inpputs)
LRT (Latest Required Time)
ERT (Earliest Required Time).
The interval [EAT,LAT] – real arrival window
The interval [ERT,LRT] – required window.
output[j].LAT = MAX (input[i].LAT + gate.delay[i][j])
input[i].LRT = MIN (output[j].LRT - gate.delay[i][j])
![Page 16: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/16.jpg)
ИП
ПМ
16
![Page 17: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/17.jpg)
ИП
ПМ
17
X – normal distributed value (Delay, Slope, etc.) with mean value mX and
dispersion σX2
X = mX + σXΔX
ΔX – random value (mX =0, σX =1)
Linear approximation (no correlations) assumption:
n
1iaaii0 RrXaaA
a0 – mean nominal value,
ΔXi , i=1,…,n, и ΔRa – random values with normal distributions
![Page 18: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/18.jpg)
ИП
ПМ
18
Sum & Max operations:
1) C = A + B: c0 = a0 + b0, ci = ai + bi,2
b
2
ac rrr
2) C = max (A, B)
A ai
2
i 1=
n
ra
2+= B bi
2
i 1=
n
rb
2+=
,
Correlation coefficients: (for independent ∆Xi and ∆Ra ):
n
1iii
BA
baσσ
1ρ
![Page 19: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/19.jpg)
ИП
ПМ
19
Output mean value for C:
θ
baθφT)(1bTac 00
000
Distribution for C:
θ
ba)θb(aT))(1b(σ)Ta(σσ 00
00
2
0
2
B
2
0
2
A
2
C
Coefficient recalculation for C:
T)(1bTac iii
n
1i
2i
2Cc cσr, i=1,…,n,
![Page 20: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/20.jpg)
ИП
ПМ
20
,
XDD X
D 0
– delay sensitivity for a given parameter XX
D
D0 – nominal gate delay,
– random distributionX
k2
)X(D)X(D maxminX
D
Xmin, Xmax are side points of the interval [-ks, +ks].
![Page 21: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/21.jpg)
ИП
ПМ
21
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Logic correlation analysis for timing and noise estimation
8. Input stimulus generation for IP blocks
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 22: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/22.jpg)
ИП
ПМ
22
• Aggressor nets affect victim net through coupling capacitances
• Functional Noise: changes logic state of the victim net
• Delay Noise: affects signal propagation delay
• Different types of functional noises:
-victim state and aggressor switching direction
-Low/High Overshoot/Undershoot
Victim
Aggressor
Agressor1
Noise cluster
0V
Vdd
t
High undershoot (HU)
Low overshoot (LO)
![Page 23: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/23.jpg)
ИП
ПМ
23
• All aggressor nets switch simultaneously in the same direction
• All aggressor noises combine to create maximum noise
• Aggressors switching times align to inject maximum noise
V
A1
A21
=Total Noise
Noise from A1
Noise from A2
t
+t
t
Ignores correlation between circuit signals and may overestimate noise
May produce false noise violations
New method to reduce false noise violations by using logic implications
![Page 24: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/24.jpg)
ИП
ПМ
24
Victim
Aggressor
Aggressor
1
Noise cluster t
noise
no noise transition
Noisy transition
D
Aggressor nets affect victim net through coupling capacitances
Functional Noise: changes logic state of the victim net
• - Affects victim when it in a stable state
Delay Noise: changes signal propagation delay
• - Affects victim net when it transitions
• - Delay changes accumulate along the signal propagation paths
![Page 25: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/25.jpg)
ИП
ПМ
25
A1
A2
V
A1=0
A2 =0
Timing correlation:
• - nets switch at different clock cycles,
etc.
Logic correlation:
• - circuit logic prohibits some
combinations of nets signals
• - it prohibits some aggressor nets from
simultaneous switching
Ignoring signal correlation overestimates noise and results in false
noise violations
- makes difficult to recognize actual noise violations
- diminishes trust in noise analysis results
False noise analysis is needed
![Page 26: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/26.jpg)
ИП
ПМ
26
Linear approximation for small impulses:
...**
n
n
n
n
ww
Dh
h
DD
The total delay increment is sum of independent aggressors increments:
iDD
The total delay increment across the path from input to outptut:
Pi Aj
jip
i
DD ,
Noise from j-th «aggressor».jiD , – delay increment for i-th «victim» in the path P due to
![Page 27: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/27.jpg)
ИП
ПМ
27
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Logic correlation analysis for timing and noise estimation
8. Input stimulus generation for IP blocks
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 28: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/28.jpg)
ИП
ПМ
28
Table characterization
),( l
out
k
inpout CSD , k [1: Ns], l [1: Nc]
),( l
out
k
inpout CSS , k [1: Ns], l [1: Nc]
For each delay graph arcij = (inpi, outj), when logic input state switch inpi results in
output switch outj
Simplified NLDM input caps
, for each input, can be different forr
inpC f
inpC, 0 => 1 (r), 1 =>0 (f).
![Page 29: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/29.jpg)
ИП
ПМ
29
![Page 30: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/30.jpg)
ИП
ПМ
30
CCS driver model:
Iout = F(t, Sinp, Cout)
CCS efficient input caps for different arcij
)f|r(inp1_C
)f|r(inp2_C(Sinp , Cout), (Sinp , Cout),
C_1 – the table of caps for the 1-th half of transition,]
C_2 – the table of caps for the 2-d half of transition
![Page 31: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/31.jpg)
ИП
ПМ
31
1) ECSM table: Vout = G(t, Sinp, Cout).
Vout(t) [0 + , Vdd - ], - constant.
Vout(t) is normilized:Vdd
1To the interval (0, 1).
2) ECSM input caps: )|( fr
inpC (Sinp , Cout)
CCS & ECSM models are equivalent theoretically:
dt
tdVCtI out
outout
)(*)(
Results are different practically.
![Page 32: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/32.jpg)
ИП
ПМ
32
-------------------------------------------------------------------------------f_loop_set slew_low_threshold 0.2*$vddf_loop_set slew_upper_threshold 0.8*$vdd# длительность периода входных сигналовf_loop_set time_slice 20# описание тестаf_loop_testcase delay test1# описание формы сигналов на входах ЛЭ
f_loop_waveform i1 "rfr11frf"f_loop_waveform i2 "11frf0rf"
# задание измерений задержек и фронтовf_loop_measure delay i1 r 1 x rf_loop_measure delay i1 f 2 x ff_loop_measure delay i2 r 4 x rf_loop_measure delay i2 f 5 x ff_loop_measure delay i1 r 7 x rf_loop_measure delay i2 r 7 x rf_loop_measure delay i1 f 8 x ff_loop_measure delay i2 f 8 x f
# задание измерений входных емкостейf_loop_measure cap i1 1f_loop_measure cap i2 4f_loop_measure cap i1 2f_loop_measure cap i2 5
f_loop_end# запись рузультатов в выходной файлf_macro_write dotlibf_loop_destroy
Example forAND2
![Page 33: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/33.jpg)
ИП
ПМ
33
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Logic correlation analysis for timing and noise estimation
8. Input stimulus generation for IP blocks
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 34: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/34.jpg)
ИП
ПМ
34
Restriction control:
Correct output switching
Delay degradation control
Setup & Hold Characterization
![Page 35: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/35.jpg)
ИП
ПМ
35
Independent Setup
Independent Hold
Dependent Setup (Hold first)
Dependent Hold (Setup first)
Minimal SUM = Setup + Hold
3D interdependent characterization
Delay(Setup,Hold)
Different Types of Setup & Hold Characterization
![Page 36: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/36.jpg)
ИП
ПМ
36
1
01
min)(
min
)(
dH
df
dH
df
dH
dg
HfHg
HSg
HfS
![Page 37: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/37.jpg)
ИП
ПМ
37
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Input stimulus generation for IP blocks
8. Logic correlation analysis for timing and noise estimation
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 38: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/38.jpg)
ИП
ПМ
38
Characterization of the Full Custom IP block
Find input stimulus for maximal delay from a given primary input to a given primary output
clkQ
QR
S
OutputsInputs
?
Digital IP block
.
.
.
.
.
.
?
?
?
![Page 39: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/39.jpg)
ИП
ПМ
39
![Page 40: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/40.jpg)
ИП
ПМ
40
![Page 41: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/41.jpg)
ИП
ПМ
41
![Page 42: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/42.jpg)
ИП
ПМ
42
![Page 43: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/43.jpg)
ИП
ПМ
43
![Page 44: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/44.jpg)
ИП
ПМ
44
![Page 45: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/45.jpg)
ИП
ПМ
45
Delay: true path analysis - logic correlations results
in false path
Inputs stimulus for DCCC: correlations between
DCCC inputs
Coupling capacitances: correlations between
aggressors and victim
IR drop: max current estimation – correlations in
different DCCC switching
Decomposition and Correlations
![Page 46: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/46.jpg)
ИП
ПМ
46
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Input stimulus generation for IP blocks
8. Logic correlation analysis for timing and noise estimation
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 47: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/47.jpg)
ИП
ПМ
47
Input Stimulus Generation for the Full Custom IP
blockFind input stimulus for maximal delay from a given primary input to a given primary output
clkQ
QR
S
OutputsInputs
?
Digital IP block
.
.
.
.
.
.
?
?
?
![Page 48: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/48.jpg)
ИП
ПМ
48
Timing Analysis for the Full Custom IP blocks
??
• Full custom IP block
-Logic function of DCCC component is unknown
-Library less analysis is required
-Only transistor netlist is available
• Input stimulus search for maximal delay
-Increasing number of DCCC inputs
-Input logic correlations restrictions
-Available methods:
full simulation; BDD / ADD approaches; critical path search
![Page 49: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/49.jpg)
ИП
ПМ
49
Critical Path and Side Load Conflict
Critical path without side loads can be
different from critical path with side loads
Input logic correlation restrictions results
in additional problems in critical path / side
load analysis
![Page 50: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/50.jpg)
ИП
ПМ
50
Input data should combine both logic and transistor data
Generate PU/PD-SP-DAG for pull-up and pull-down networks from transistor netlist
(logic extraction)
Store the history of node resolutions “Resolution list”
Form equivalent -model in terms of Elmore delay.
Delay analysis for particularly defined inputs
Branch and bound approach for Max delay search
![Page 51: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/51.jpg)
ИП
ПМ
51
Transistor Circuit SP-DAG
![Page 52: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/52.jpg)
ИП
ПМ
52
Logic Extraction and SP-DAG: CMOS elementXOR2
Transistor Circuit
SP-DAG
![Page 53: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/53.jpg)
ИП
ПМ
53
NAND2Before b resolution
After b resolution
![Page 54: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/54.jpg)
ИП
ПМ
54
...1
ijjiji
k
ij gcgcsggG
y
...1 2
ijjijiijjiji
k
ij cbcbggsgbgbsbbBs
y
)(1
ji
k
ij ccC
y
iiiki csgsbs
y 21 jjjkj csgsbs
y 21
jiijjiijjijiijjiji
k
ij ccscgcgscbcbggsgbgbsbbYs
y 432
2
1
kk
i
kkik CsG
s
ByY
![Page 55: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/55.jpg)
ИП
ПМ
55
Calculate logic states for internal and external nodes before and after switch;
Calculate equivalent conductances for pull-up and pull-down networks;
Calculate equivalent load capacitances for fall and rise switches
Estimate switch delays (fall delay) and (rise delay).
gCd
– equivalent ground capacitance;
Rg 1 – equivalent internal conductance.
Elmore delay:
C
)min(/)max()max( gCd
![Page 56: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/56.jpg)
ИП
ПМ
56
Prototypes vs PU/PD-SP-DAG
SP-DAG - [R.E. Bryant, Algorithmic Aspects of Symbolic Switch Network Analysis]
BDD - [R.E. Bryant, Graph-Based Algorithms for Boolean Function Manipulation]
DAG-граф [Bryant] PU/PD-SP-DAG
![Page 57: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/57.jpg)
ИП
ПМ
57
PU/PD-SP-DAG examples
Circuits SP-DAG граф
XNOR2
AND3
![Page 58: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/58.jpg)
ИП
ПМ
58
Equivalent Pi-model estimationMax/Min estimation (min G, max C) )min(/)max()max( gCD
Input Stimulus Generation for Characterization
Netlist
Gauss
elimination
SP-DAG Resolution list
Branch&Bound
approach
min G max C max Delay
![Page 59: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/59.jpg)
ИП
ПМ
59
Inputs: clk1, clk2, data
a
b
clk clkclk
clk
g z pa_b
b_b
b
a_b
b_b
a
gn zn pn
Inputs: clk, a, b, a_b, b_b. Logic restrictions: inverse a a_b, inverse b b_b
Example of Branch and Bound Search
Account for input correlations
![Page 60: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/60.jpg)
ИП
ПМ
60
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Input stimulus generation for IP blocks
8. Logic correlation analysis for timing and noise estimation
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 61: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/61.jpg)
ИП
ПМ
61
• Aggressor nets affect victim net through coupling capacitances
• Functional Noise: changes logic state of the victim net
• Delay Noise: affects signal propagation delay
• Different types of functional noises:
-victim state and aggressor switching direction
-Low/High Overshoot/Undershoot
Victim
Aggressor
Agressor1
Noise cluster
0V
Vdd
t
High undershoot (HU)
Low overshoot (LO)
![Page 62: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/62.jpg)
ИП
ПМ
62
• All aggressor nets switch simultaneously in the same direction
• All aggressor noises combine to create maximum noise
• Aggressors switching times align to inject maximum noise
V
A1
A21
=Total noise
Noise of A1
Noise of от A2
t
+t
t
Ignores correlation between circuit signals and may overestimate noise
May produce false noise violations
New method to reduce false noise violations by using logic implications
![Page 63: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/63.jpg)
ИП
ПМ
63
a=0
x=1
a=0
b x=0
(a=0)->(x=0)
Problem:
• compute logic correlation & maximum realizable aggressors set
Approach:
• express logic correlation as simple logic implications
Used in logic synthesis & peak current estimation[G. Hachtel 1988], [W.Kunz
1994], [R.I.Bahar 1996], [W.Long 2000], [S. Bobba 1998]
• build constraint graph & find maximum realizable aggressors set
SLI (a=Va)->(x=Vx) means :
- if net a is at Va then net x is at Vx
No timing information
Conservative only for glitch free circuits
![Page 64: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/64.jpg)
ИП
ПМ
Simple Logic Implication (SLI) for 2 nodes a, b:
)1b()0a(
Initial notation )uy()vx(
Short notation:uv yx , where
uv y,x - are ( ory,x y,x ):
1v
0v
forx
forxxv
64
![Page 65: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/65.jpg)
ИП
ПМ
Equivalent notations:
ba)1b()1a(
ba)0b()1a(
ba)1b()0a(
ba)0b()0a(
by)1b()0y(
ay)1a()0y(
yb)1y()0b(
ya)1y()0a(
Implication set for a gate ba)b,a(nandy 2
65
![Page 66: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/66.jpg)
ИП
ПМ
Implication set for a gate ba)b,a(nory 2
by)0b()1y(
ay)0a()1y(
yb)0y()1b(
ya)0y()1a(
66
![Page 67: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/67.jpg)
ИП
ПМ
67
n2
n1
n3
n4
n5
n6
n7
n8
n9
n10
n111
0
0
0
0
1
Compact representation used in implementation
4 implications lists HaH, Ha
L, LaH, La
L for each circuit net a
implication list LaH consists of nets bi such as SLI (bi =1)->(a=0)
Implication lists: Hn7L ={ n3, n4, n8, n9} , Hn7
H ={n11}
![Page 68: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/68.jpg)
ИП
ПМ
68
Compute SLIs for individual gate in circuit
Propagate SLIs across the circuit
Based on laws:
- transitive:
- contra-positive:
• Basic operations:
- Implications lists union and intersection
b xa a
b x
( ) ( ),( ) ( )a b b ca V b V b V c V ( ) ( )a ca V c V
( ) ( )a xa V x V ( ) ( )x ax V a V
a
LL
b
LL
b
L
a
L
x
L LLL
a
HH
b
HH
b
H
a
H
x
H HHH
![Page 69: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/69.jpg)
ИП
ПМ
69
Used in logic optimization [R.I.Bahar 1996], [W.Long 2000]
Based on contra positive law
AND gate:
- implication (a=1&x=0)->b=0
- lateral implication lists propagation
a
b
y0
0
0
1 a=1b
x=0
a
LH x
LL
L
b a x
L LL H L
![Page 70: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/70.jpg)
ИП
ПМ
Noise cluster:
• - victim: n7
• - aggressors:
all others
• noise type:
victim at 0
aggressors
70
n2
n1
n3
n4
n5
n6
n7
n8
n9
n10
n111
0
0
0
0
10
10
1
•n3, n4, n8, n9, n11 are excluded because of
victim/aggressor SLIs
n1 n6 n10
n2 n5
0.1
0.10.1
0.10.1
(n6=0)->(n10=1)(n1=0)->(n6=1)
![Page 71: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/71.jpg)
ИП
ПМ
Computing
logic
constraints
Logic
constraints
across the
circuit
Noise clusters
with aggressors
noise
Noise
Analysis
Computing
maximum
realizable
aggressors set
Reduced
noise
clusters
71
Circuit
netlist
![Page 72: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/72.jpg)
ИП
ПМ
72
Logic correlation
SAT - problem
NP – complite
Full analysis [A. Rubio, et al. 1997], [P. Chen, K. Keutzer, 1999]
For circuits ~100-300 nodes
SLI heuristic approach [A. Glebov, S.Gavrilov, et al]
a=0
x=1
a=0
b
x=0
(a=0)->(x=0)
SLI:
Fast but not full
Pair wise correlations only
Ignore 3-, 4- etc. correlations
Logic extraction is required
![Page 73: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/73.jpg)
ИП
ПМ
73
• System of equations or DNF:
prohibits: a=1, b=0, c=0, d=0 and
prohibits signals b, c, d
from simultaneous switching if a=1
ax
b
a1
a2
a4
a5
v
a3
Constraints for low overshoot noise at v:
0 cba
0 dba 0... dbacba
- Term:
Set of conjunctive terms:
- Each conjunctive term prohibits one signal combination
..., dbacba
0 dcba
0 bxaxbax
532421
53524241
54
,
,,,,
,,
aaaaaa
aaaaaaaa
avav
![Page 74: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/74.jpg)
ИП
ПМ
74
• Automatic theorem proving and SAT problem:
- deriving new logic relations by Resolution Rule:
или
Resolution rule for logic constraints
-constraints (false sentences) derivation
1,1 CaBa 1CB
CaBa , CB
0,0 CaBa 0CB
CaBa , CB or
![Page 75: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/75.jpg)
ИП
ПМ
75
• Initial logic constraints for transistors:
d
g
s
,g s d g s d
d
g
s s
d
g
s
d
g
g s ,g s d g s d g d
Deriving constraints for DCCCs (gates) at transistor level
- compute constraints by resolution rule
- try to eliminate variables not involved in noise clusters
- remove tautologies:
- remove constraints covered by other ones:a a B
( cov )a b ers a b c
![Page 76: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/76.jpg)
ИП
ПМ
76
Logic constraints for static NAND2
a
b
x
N1
P2P1
N2
yb
ax
P1
N1
N2
N3
y
z
yb :N2xya ,xya :N1
xb :P2
xa :P1
xbayxa ,yb
zN3: c
zyz, byN2: b
xyx, ayN1: a
xcP1:
xbacyxaybc
ybczybzc
,
,
Logic constraints for dynamic NAND2
![Page 77: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/77.jpg)
ИП
ПМ
77
a
b
y
s
x
G1 G2
G3
a s
a s
x s y
x y
s y
a b x
a x
b x
•G1,G2: yxaysxsa ,
yayssa ,
(R1)
ybayxxba , (R2)•G3,G2:
(R3)ybyybaya ,
ybyby
•R1,R2:
![Page 78: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/78.jpg)
ИП
ПМ
78
Create root for victim
Try v=0,1 assignments
Make all conclusions from constraints
- if constraints are satisfied create arc to 1
- if constraints are at conflict create arc to 0
- otherwise create arc to next aggressor vertex
and repeat the analysis
Repeat the procedure for aggressors
a1
a2
a3
a4
a5
v
Low overshoot noise at v:
Constraints for low overshoot
noise at v:
a
5
v
a
4
a
2a
1
a3
0
1 0
1
0
0
0
0
0
1
1
1
1
1
4 5
1 4, 2 4, 2 5, 3 5,
1 2 4, 2 3 5
, ,v a v a
a a a a a a a a
a a a a a a
![Page 79: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/79.jpg)
ИП
ПМ
79
Mark ROBDD vertices with noise value
Find maximum aggressors set (ai1, ai2, ...)
- ROBDD has pair of paths to vertex 1
(v=V,ai1=0, ai2 =0,...) and
(v=V,ai1=1, ai2 =1,...)
a1
a2
a3
a4
a5
v
Low overshoot noise at v:
a
5
v
a
4
a
2a
1
a3
0
1 0
1
0
0
0
0
0
1
1
1
1
1
w(a4)=0.2
w(a5)=0.4
w(a2)=0.15
w(a1)=0.1
w(a3)=0.06
Maximum realizable aggressor set: a1,a3
Maximum realizable noise 0.16
4 5
1 4, 2 4, 2 5, 3 5,
1 2 4, 2 3 5
, ,v a v a
a a a a a a a a
a a a a a a
![Page 80: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/80.jpg)
ИП
ПМ
80
Aggressor nets affect victim net through coupling capacitances
Functional Noise: changes logic state of the victim net
- Affects victim when it in a stable state
Delay Noise: changes signal propagation delay
- Affects victim net when it transitions
- Delay changes accumulate along the signal propagation paths
Victim
Aggressor
Aggressor1
Noise Clustert
injected noise
no noise transition
noisy transition
D
![Page 81: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/81.jpg)
ИП
ПМ
81
Timing correlation:
- nets switch at different clock cycles, etc.
Logic correlation:
- circuit logic prohibits some combinations
of nets signals
- it prohibits some aggressor nets from
simultaneous switching
A1
A2
V
A1=0
A2 =0
Two problems of false noise analysis:
- Computing signal correlations
- Computing the worst possible noise and aggressors set injecting it
- Difficult optimization problem
![Page 82: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/82.jpg)
ИП
ПМ
82
Set of conjunctive terms:
- Each term prohibits signal combination
Resolution technique
– deriving sentences by resolution rule
– can handle multiple constraints
– can build approximate solutions
– works even at transistor level
Simple Logic Implication (SLI)
– binary constraints only
– simpler implementation
prohibits: a=1, b=0, c=0, d=0
a=0
x=1(a=0)->(x=0)
, , a b c a b d
, ,x a b x a x b
,a B a C B C
a x
a b c d
![Page 83: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/83.jpg)
ИП
ПМ
83
Logic constraints for NAND2
a
b
x
N1
P2P1
N2
y
yb :N2xya ,xya :N1
xb :P2
xa :P1
xbayxa ,yb
d
g
s
,g s d g s d
s
d
g
,g s d g s d
Set constraints for transistors
Apply resolution rule
- eliminate variables not involved in noise clusters
- remove tautologies:
- remove constraints covered by other ones:
a a B
( cov )a b ers a b c
![Page 84: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/84.jpg)
ИП
ПМ
84
Logic Constraints Derivation at Gate Level
a
b
y
s
x
G1 G2
G3
a s
a s
x s y
x y
s y
a b x
a x
b x
•G1,G2:yxaysxsa ,
yayssa ,
(R1)
ybayxxba , (R2)•G3,G2:
(R3)ybyybaya ,
ybyby
•R1,R2:
Start from transistor level constraints
Apply resolution rule
- until no constraints can be derived or all
resources are exhausted
- use propagation heuristic
propagate constraints through gates forward and
backward
apply resolution rule to propagated and gate
constraints
Exclude tautologies and constraints covered
by other ones
![Page 85: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/85.jpg)
ИП
ПМ
85
Need for simple model to estimate each aggressor impact
Actual delay variation is verified by SPICE simulations
Path delay variation is additive:
Linearization of net delay:
Additive model of net delay variation:
,Path Net i
i Path
D D
, _( ) NetNet noise Net No noise noise
noise
dDD h D h
dh
,
_
Net Net j
j Net aggr
D D
, , ,
_
Path Net i agg i j
i Path i Path j Net agg
D D D
Linear model is used only for finding worst aggressor set
Actual delay variation is verified by SPICE simulations
![Page 86: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/86.jpg)
ИП
ПМ
86
Compute noise pulse height hi of each aggressor
Compute total noise pulse height:
Compute total net delay variation:
Estimate delay variation due to each aggressor:
Error of delay noise additive model
h1h2
_
j
j Net Aggressors
H h
NetD
_
Netj j
j
j Net Aggressors
DD h
h
NetD
![Page 87: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/87.jpg)
ИП
ПМ
87
Vertices are aggressor nets
Edges / hyper-edges are constraints
-weight is injected noise
Maximum weight independent set (MVIS) of vertices
-does not have any edge/hyper-edge as subset
• Constraints/hyper-edges: {a1a2a3, a4a5, a2a3a5}•MWIS = {a1,a2,a5}, w=0.65
a1 a3
a4 a5
0.1 0.10.3
0.2 0.25
a1a2
a3
a4a5
0.10.1
0.3
0.2 0.25
• Constraints (SLI/) edges: {a1a2, a2a3, a3a5, a2a5, a4a5, a1a3}•MWIS = {a1, a4}, w=0.35
![Page 88: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/88.jpg)
ИП
ПМ
88
Recursively traverses decision tree
- branches by including or not including an aggressor
- expands “current” aggressor set
Accumulates partial solution
- which is the worst found realizable aggressor set
Cuts branches
- sub-trees with non realizable aggressor sets
- sub-trees with aggressor sets injecting less noise than
the maximum found one
Estimates upper bound of noise corresponding to a sub-
tree
a1a1
a2 a2a2 a2
A={}A={a1}
A={a2} A={a1,a2}A={}
![Page 89: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/89.jpg)
ИП
ПМ
89
Processed aggressors Unprocessed aggressors
New
aggressor sets:
Current
aggressor set
a7a6 a8a2a1 a3 a5a4
a4a1 a5a6a4a1 a5
a2
a5
Worst found
aggressor set
Wworst
a2a1 a3 a5a4 a6
a7 a8 a7 a8
a2a1 a3 a5a4 a6
Input data
a1
a4
a5
a6
Check constraints
Compare Wi+wi with Wworst
Input data for recursive calls of B&B algorithm
w1w2
to process
a6a6
w2=W’worst>Wworst
a4a1 a5
Branching
Cutting branches
Updating
worst found
aggressor set
![Page 90: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/90.jpg)
ИП
ПМ
90
Circuit
netlist
Constraints
computation
Computing max
realizable
aggressors sets
Noise
Analysis
Noise aware timing
Noise injected
by aggressors
Logic
constraints
Corrected
paths delays
Violating paths
![Page 91: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/91.jpg)
ИП
ПМ
91
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Input stimulus generation for IP blocks
8. Logic correlation analysis for timing and noise estimation
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 92: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/92.jpg)
ИП
ПМ
92
))()(())()((),(),( 0000 CDCDSDSDCSDCSD outoutinin
N M1
![Page 93: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/93.jpg)
ИП
ПМ
93
Reduction of repeating Simulations
Output DCCCs (1 or 2) cascades are simulated М times for different outputs.
Input DCCCs (2 or 3) cascades are simulated N times for different input slodpe(transition time).
The full circuit is simulated during single path.
![Page 94: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/94.jpg)
ИП
ПМSynopsys
Liberty format94
Netlist Config file Model file
Spice Simulation
Spice Simulation
&Calculation of delays, transition
times, power consumption
Internal
loop
Interface
External loop
Interface
AlphaSim Data Flow
Simulation
Results
Preparation of input data for
simulation
Spice input
file
Model file
Calculation of delays,
transition times, power
consumption
Spice Simulation
Standard Data Flow
Next cell
Netlist Config file
![Page 95: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/95.jpg)
ИП
ПМ
95
AlphaSim
Preparing
AlphaSim
Postproceccing
Preparing
Simulation
Postprocessing
Preparing
Postprocessing
Simulation
![Page 96: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/96.jpg)
ИП
ПМ
96
Input driver is used to generate smooth input waveform.
The voltage repeater is required to exclude direct contact between Cinp and driver
output
The set of Ck1 is chosen to generate the required input slope (transition time) { Skinp }.
![Page 97: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/97.jpg)
ИП
ПМ
97
Agnd_drv
A
vdd_drv
gnd
vdd_drv vdd_drv
gnd_drv gnd_drv
10 elements1 element
Normal approach: Nand3 + 3 drivers: 4 + 3*10 = 34 elements
Modified approach: Nand3: 4+3 new characterized sources = 7 elements
![Page 98: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/98.jpg)
ИП
ПМ
98
Driver Characterization
i
2
2i2
2
i
1
2i1
1
i
322
i
311
h
r
6
hmf
h
r
6
hmf
h6
rm
h6
rmy
Where : {xi} – node argument values, { fi} – node function values,
r1 = xi –a x, r2 = x – xi-1, f1 = fi-1, f2 = fi, hi = xi – xi-1, m1, m2 – spline coefficients for each i-th
interval.
![Page 99: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/99.jpg)
ИП
ПМ
99
1. Contemporary technologies & IP blocks design problems
2. Deterministic and statistiical timing analysis
3. Digital noise analysis problems
4. Logic cell characterization
5. Memory cell characterization
6. Decomposition problems for IP blocks
7. Input stimulus generation for IP blocks
8. Logic correlation analysis for timing and noise estimation
9. IP blocks characterization speed-up
10. Future technologies problems
![Page 100: ИП ПМ - TUM · ИП ПМ 24 Victim Aggressor Aggressor 1 Noise cluster t noise no noise transition Noisy transition 'D Aggressor nets affect victim net through coupling capacitances](https://reader033.vdocuments.net/reader033/viewer/2022053009/5f0cade17e708231d4369963/html5/thumbnails/100.jpg)
ИП
ПМ
100
Thank
You!