Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
1
ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems
Lec 21: October 26, 2020Distributed RC Wire and Elmore Delay
Penn ESE 370 Fall 2020 - Khanna
1
Today
! Estimate delay in RC Network" Elmore delay calculation
! Apply to wire delay! Apply to pass transistor circuits
2Penn ESE 370 Fall 2020 - Khanna
2
Previously: Equivalent RC
3Penn ESE 370 Fall 2020 - Khanna
3
Previously: Distributed RC (preclass 1)
! What are the time constants?
Penn ESE 370 Fall 2020 - Khanna 4
1 2 3 4 5 6 7 8 9 10 (ns)
4
Elmore Delay: Distributed RC network
! The delay from source s to node 5" N = number of nodes in circuit
5Penn ESE 370 Fall 2020 – Khanna
5
C5
𝑅!" =#𝑅# ⇒ (𝑅# ∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏$! =#"%&
'
𝐶"𝑅!"
5
Elmore Delay: Distributed RC network
! The delay from source s to node 5" N = number of nodes in circuit
6Penn ESE 370 Fall 2020 – Khanna
5
C5
𝑅!" =#𝑅# ⇒ (𝑅# ∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏$! =#"%&
'
𝐶"𝑅!"
6
2
Elmore Delay: Distributed RC network
! The delay from source s to node 5" N = number of nodes in circuit
7Penn ESE 370 Fall 2020 – Khanna
5
C5
𝑅!" =#𝑅# ⇒ (𝑅# ∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏$! =#"%&
'
𝐶"𝑅!"
k=4
7
Elmore Delay: Distributed RC network
! The delay from source s to node 5" N = number of nodes in circuit
8Penn ESE 370 Fall 2020 – Khanna
k=4
5
C5
𝑅!" =#𝑅# ⇒ (𝑅# ∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏$! =#"%&
'
𝐶"𝑅!"
8
Elmore Delay: Distributed RC network
! The delay from source s to node 5" N = number of nodes in circuit
9Penn ESE 370 Fall 2020 – Khanna
5
C5
k=4
𝑅!" =#𝑅# ⇒ (𝑅# ∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏$! =#"%&
'
𝐶"𝑅!"
𝑅!" = 𝑅# + 𝑅$
9
Elmore Delay: Distributed RC network
! The delay from source s to node 5" N = number of nodes in circuit
10Penn ESE 370 Fall 2020 – Khanna
5
C5
𝑅!" =#𝑅# ⇒ (𝑅# ∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏$! =#"%&
'
𝐶"𝑅!" =?
10
Elmore Delay: Distributed RC network
! The delay from source s to node 5" N = number of nodes in circuit
11Penn ESE 370 Fall 2020 – Khanna
5
C5
𝑅!" =#𝑅# ⇒ (𝑅# ∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏$! =#"%&
'
𝐶"𝑅!" =?
11
What is response?
12Penn ESE 370 Fall 2020 - Khanna
y
P
Q
P
Q
12
3
SPICE Response
13Penn ESE 370 Fall 2020 - Khanna
1 2 3 4 5 6 7 8 9 10 (ns)
13
Elmore Delay: Practice (preclass 1)
! The delay from source s to node i" N = number of nodes in circuit
14
Rik = Rj∑ ⇒ (Rj ∈ [path(s→ i)∩ path(s→ k)])
Penn ESE 370 Fall 2020 - Khanna
τ Di = CkRikk=1
N
∑
14
Apply (preclass 1)
! What is Elmore delay?" S #Z
15Penn ESE 370 Fall 2020 - Khanna
/z
zy
C1 C2
C3
s
15
SPICE Response
16Penn ESE 370 Fall 2020 - Khanna
1 2 3 4 5 6 7 8 9 10 (ns)
C1 C2
C3
16
Elmore Delay: Special Ladder Case
! For each resistor Ck in path" Compute Rkk = sum of all Rs upstream of Ck
17
τDN = Ckk=1
N
∑ Rjj=1
k
∑ = Ckk=1
N
∑ Rkk
Penn ESE 370 Fall 2020 - Khanna
17
Elmore Delay: Special Ladder Case
! For each resistor Ck in path" Compute Rkk = sum of all Rs upstream of Ck
18Penn ESE 370 Fall 2020 - Khanna
C1*(R1)+C2*(R1+R2)
τDN = Ckk=1
N
∑ Rjj=1
k
∑ = Ckk=1
N
∑ Rkk
18
4
Elmore Delay: Special Ladder Case
! For each resistor Ck in path" Compute Rkk = sum of all Rs upstream of Ck
19Penn ESE 370 Fall 2020 - Khanna
C1*(R1)+C2*(R1+R2)
=3RC=3ns
τDN = Ckk=1
N
∑ Rjj=1
k
∑ = Ckk=1
N
∑ Rkk
19
! Equations from KCL?
20
R1 R2
C1 C2
Compare KCL: Setup
VS −V1R1
=V1 −V2R2
+C1dV1dt
V1 −V2R2
=C2dV2dt
VSV1 V2
Penn ESE 370 Fall 2020 - Khanna
@V1:
@V2:
20
Penn ESE 370 Fall 2020 - Khanna 21
VS −V1R1
=V1 −V2R2
+C1dV1dt
VSR1=V1R1+V1R2−V2R2+C1
dV1dt
VS =V1 1+R1R2
"
#$
%
&'−
R1V2R2
+ R1C1dV1dt
V1 −V2R2
=C2dV2dt
V1R2
=V2R2+C2
dV2dt
V1 =V2 + R2C2dV2dt
dV1dt
=dV2dt
+ R2C2d 2V2dt2
Compare KCL: Math
@V1: @V2:
21
Penn ESE 370 Fall 2020 - Khanna 22
VS =V1 1+R1R2
!
"#
$
%&−
R1R2V2 + R1C1
dV1dt
VS = V2 + R2C2dV2dt
!
"#
$
%& 1+
R1R2
!
"#
$
%&−
R1R2V2 + R1C1
dV2dt
+ R2C2d 2V2dt2
!
"#
$
%&
VS =V2 + R2C2 1+R1R2
!
"#
$
%&+ R1C1
!
"##
$
%&&dV2dt
+ R1C1R2C2d 2V2dt2
VS =V2 + (R2C2 + R1C2 + R1C1)dV2dt
+ R1C1R2C2d 2V2dt2
Compare KCL: Math
22
Penn ESE 370 Fall 2020 - Khanna 23
VS =V2 + (R2C2 + R1C2 + R1C1)dV2dt
+ R1C1R2C2d 2V2dt2
VS =V2 +3RCdV2dt
+ R2C2 d2V2dt2
R1 = R2 = RC1 =C2 =C
Compare KCL: Math
23
Penn ESE 370 Fall 2020 - Khanna 24
VS =V2 + (R2C2 + R1C2 + R1C1)dV2dt
+ R1C1R2C2d 2V2dt2
VS =V2 +3RCdV2dt
+ R2C2 d2V2dt2
V2 = A(1+ e−αt )→
VS = A(1+ e−αt )−3RC ⋅αAe−αt + R2C2 ⋅α 2Ae−αt
R1 = R2 = RC1 =C2 =C
Compare KCL: Math
24
5
Penn ESE 370 Fall 2020 - Khanna 25
V2 = A(1+ e−αt )→
VS = A(1+ e−αt )−3RC ⋅αAe−αt + R2C2 ⋅α 2Ae−αt
t =∞→V2 =VS = A
VS =VS (1+ e−αt )−3RC ⋅αVSe
−αt + R2C2 ⋅α 2VSe−αt
0 = e−αt −3RC ⋅αe−αt + R2C2 ⋅α 2e−αt
0 = e−αt (1−3RCα + R2C2 ⋅α 2 )0 =1−3RCα + R2C2 ⋅α 2
Compare KCL: Math
25
Penn ESE 370 Fall 2020 - Khanna 26
V2 = A(1+ e−αt )→
VS = A(1+ e−αt )−3RC ⋅αAe−αt + R2C2 ⋅α 2Ae−αt
t =∞→V2 =VS = A
VS =VS (1+ e−αt )−3RC ⋅αVSe
−αt + R2C2 ⋅α 2VSe−αt
0 = e−αt −3RC ⋅αe−αt + R2C2 ⋅α 2e−αt
0 = e−αt (1−3RCα + R2C2 ⋅α 2 )0 =1−3RCα + R2C2 ⋅α 2
Compare KCL: Math
26
Penn ESE 370 Fall 2020 - Khanna 27
V2 =VS (1+ e−αt )
0 =1−3RCα + R2C2 ⋅α 2
α =3RC ± 9(RC)2 − 4(RC)2
2(RC)2=3RC ± 5RC2(RC)2
=3± 52RC
→ τ =2
3± 5RC ≈ 2.6RC
Compare KCL: Math
27
Penn ESE 370 Fall 2020 - Khanna 28
V2 =VS (1+ e−αt )
0 =1−3RCα + R2C2 ⋅α 2
α =3RC ± 9(RC)2 − 4(RC)2
2(RC)2=3RC ± 5RC2(RC)2
=3± 52RC
→ τ =2
3± 5RC ≈ 2.6RC
Compare KCL: Math
=3RC=3ns
28
Elmore Delay: Distributed RC network
! The delay from source to node i" N = number of nodes in circuit
! Special ladder case
29
Rik = Rj∑ ⇒ (Rj ∈ [path(s→ i)∩ path(s→ k)])
Penn ESE 370 Fall 2020 - Khanna
τ Di = CkRikk=1
N
∑
τDN = Ckk=1
N
∑ Rjj=1
k
∑ = Ckk=1
N
∑ Rkk
29
Wire Delay
30Penn ESE 370 Fall 2020 - Khanna
30
6
Wire Resistance
100um
1um
1um
A
B
R = ρLA
R = 10−7Ω⋅m ⋅100µm1µm ⋅1µm =10Ω
31Penn ESE370 Fall2020 – Khanna
31
Wire Capacitance
4 m
0.2 mm
0.1 mm
A
B
0.1 mm
metal plate
dielectric material
C = εdAd
32Penn ESE370 Fall2020 – Khanna
32
Wire as Distributed RC Ladder
! Measure wire length in units " Say l" Each l unit has Cunit, Runit
" Unit capacitance and resistance of wire of length l
33Penn ESE 370 Fall 2020 - Khanna
33
Wire Delay
! Delay of Wire N units long:
34Penn ESE 370 Fall 2020 - Khanna
34
Wire Delay
! Delay of Wire N units long:RunitCunit
35Penn ESE 370 Fall 2020 - Khanna
35
Wire Delay
! Delay of Wire N units long:RunitCunit+ 2RunitCunit
36Penn ESE 370 Fall 2020 - Khanna
36
7
Wire Delay
! Delay of Wire N units long:RunitCunit+ 2RunitCunit+ 3Runit*Cunit + … +NRunit*Cunit=(Runit*Cunit)*(N+(N-1)+(N-2)+….1)
37Penn ESE 370 Fall 2020 - Khanna
37
Sum of integers (preclass 2)
! What’s the sum of the integer 1 to N?
38
kk=0
N
∑ =
Penn ESE 370 Fall 2020 - Khanna
38
Sum of integers
! What’s the sum of the integer 1 to N?
39
kk=0
N
∑ = N(N +1)2 ≈N 2
2
Penn ESE 370 Fall 2020 - Khanna
39
Wire Delay (preclass 3)
! Delay of Wire N units long:Runit*(N*Cunit)+ Runit((N-1)*Cunit+ Runit*(N-2)*Cunit + … +Runit*Cunit=(Runit*Cunit)*(N+N-1+N-2+….1) ~=RunitCunit*N2/2
40Penn ESE 370 Fall 2020 - Khanna
40
Lumped RC Wire? (preclass 4)
! What would the delay be if we treated the wire as lumped R and C?
41
Rwire = N×Runit Cwire = N×Cunit
Penn ESE 370 Fall 2020 - Khanna
41
Wire Delay
! Rwire = N*Runit! Cwire=N*Cunit! Lumped RC wire delay = Runit*Cunit*N2
! Distributed RC Wire delay = Runit*Cunit*N2/2
! Distributed has half the delay of lumped RC product
! Delay is quadratic in length of wire in both cases
42Penn ESE 370 Fall 2020 - Khanna
42
8
Apply to Gates
Pass Transistor and CMOS
43Penn ESE 370 Fall 2020 - Khanna
43
Pass Transistor XOR
! Delay when A=B=1?
44Penn ESE 370 Fall 2020 - Khanna
44
Pass Transistor XOR (preclass 5)
! Delay when A=1, B=0?" Start with equivalent
RC circuit
45Penn ESE 370 Fall 2020 - Khanna
45
Unbuffered (preclass 6)
! Circuit # Delay?" 2 stages
46Penn ESE 370 Fall 2020 - Khanna
46
Unbuffered (preclass 7)
! Circuit # Delay?" 3 stages
47Penn ESE 370 Fall 2020 - Khanna
47
Unbuffered (preclass 8)
! Delay as a function of number of stages, k?
48Penn ESE 370 Fall 2020 - Khanna
…
48
9
CMOS XOR (preclass 9)
! Delay with Cdiff>0?
49Penn ESE 370 Fall 2020 - Khanna
49
Idea
! Elmore delay calculation allows us to estimate delay for distributed RC network" Necessary for pass transistors
! Wires are distributed RC " Half delay lumped calculation" Still quadratic in length
50Penn ESE 370 Fall 2020 - Khanna
50
Admin
! Project 1" Milestone due tonight
" Will get feedback by Wednesday morning
" Final report due Monday 11/2 midnight
51Penn ESE 370 Fall 2020 - Khanna
51