ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems
Lec 21: October 27, 2021
Distributed RC Wire and Elmore Delay
Penn ESE 370 Fall 2021 - Khanna
Today
!
Estimate delay in RC Network
"
Elmore delay calculation
!
Apply to wire delay
!
Apply to pass transistor circuits
2 Penn ESE 370 Fall 2021 - Khanna
Previously: Equivalent RC
3 Penn ESE 370 Fall 2021 - Khanna
2C
0+3C
diff02C
0+2C
diff0Previously: Distributed RC (preclass 1)
!
What are the time constants?
Penn ESE 370 Fall 2021 - Khanna 4
1 2 3 4 5 6 7 8 9 10 (ns)
Elmore Delay: Distributed RC network
!
The delay from source s to node 5
"
N = number of nodes in circuit
5 Penn ESE 370 Fall 2021 – Khanna
5 C5
𝑅
!"= # 𝑅
#⇒ (𝑅
#∈ 𝑝𝑎𝑡ℎ 𝑠 → 5 ∩ 𝑝𝑎𝑡ℎ 𝑠 → 𝑘 )
𝜏
$!= #
"%&
'
𝐶
"𝑅
!"What is response?
6 Penn ESE 370 Fall 2021 - Khanna
y
P
Q P
Q
Elmore Delay: Practice (preclass 1)
!
The delay from source s to node i
"
N = number of nodes in circuit
7
R
ik= ∑ R
j⇒ (R
j∈ [ path(s → i)∩ path(s → k)])
Penn ESE 370 Fall 2021 - Khanna
τ Di = C k R ik
k=1 N
∑
Apply (preclass 1)
!
What is Elmore delay?
"
S # Z
8 Penn ESE 370 Fall 2021 - Khanna
/z
y z
C1 C2
C3
s
SPICE Response
9 Penn ESE 370 Fall 2021 - Khanna
1 2 3 4 5 6 7 8 9 10 (ns)
C1 C2
C3
Elmore Delay: Special Ladder Case
!
For each resistor C k in path
"
Compute R
kk= sum of all Rs upstream of C
k10
τ DN = C k
k=1 N
∑ R j
j=1 k
∑ = C k
k=1 N
∑ R kk
Penn ESE 370 Fall 2021 - Khanna
Elmore Delay: Special Ladder Case
!
For each resistor C k in path
"
Compute R
kk= sum of all Rs upstream of C
k11 Penn ESE 370 Fall 2021 - Khanna
C
1*(R
1)+C
2*(R
1+R
2)
τ DN = C k
k=1 N
∑ R j
j=1 k
∑ = C k
k=1 N
∑ R kk
Elmore Delay: Special Ladder Case
!
For each resistor C k in path
"
Compute R
kk= sum of all Rs upstream of C
k12 Penn ESE 370 Fall 2021 - Khanna
C
1*(R
1)+C
2*(R
1+R
2)
=3RC
=3ns
τ DN = C k
k=1 N
∑ R j
j=1 k
∑ = C k
k=1 N
∑ R kk
!
Equations from KCL?
13
R1 R2
C1 C2
Compare KCL: Setup
V
S−V
1R
1= V
1−V
2R
2+ C
1dV
1dt V
1−V
2R
2= C
2dV
2dt
V
SV
1V
2Penn ESE 370 Fall 2021 - Khanna
@V 1 :
@V 2 :
Penn ESE 370 Fall 2021 - Khanna 14
V
S−V
1R
1= V
1−V
2R
2+ C
1dV
1dt V
SR
1= V
1R
1+ V
1R
2− V
2R
2+ C
1dV
1dt V
S= V
11+ R
1R
2"
# $ %
&
' − R
1V
2R
2+ R
1C
1dV
1dt
V
1−V
2R
2= C
2dV
2dt V
1R
2= V
2R
2+ C
2dV
2dt V
1= V
2+ R
2C
2dV
2dt dV
1dt = dV
2dt + R
2C
2d
2V
2dt
2Compare KCL: Math
@V 1 : @V 2 :
Penn ESE 370 Fall 2021 - Khanna 15
V
S= V
11+ R
1R
2!
"
# $
% & − R
1R
2V
2+ R
1C
1dV
1dt V
S= V
2+ R
2C
2dV
2dt
!
"
# $
% & 1+ R
1R
2!
"
# $
% & − R
1R
2V
2+ R
1C
1dV
2dt + R
2C
2d
2V
2dt
2!
"
# $
% &
V
S= V
2+ R
2C
21+ R
1R
2!
"
# $
% & + R
1C
1!
"
## $
% && dV
2dt + R
1C
1R
2C
2d
2V
2dt
2V
S= V
2+ (R
2C
2+ R
1C
2+ R
1C
1) dV
2dt + R
1C
1R
2C
2d
2V
2dt
2Compare KCL: Math
Penn ESE 370 Fall 2021 - Khanna 16
V
S= V
2+ (R
2C
2+ R
1C
2+ R
1C
1) dV
2dt + R
1C
1R
2C
2d
2V
2dt
2V
S= V
2+ 3RC dV
2dt + R
2C
2d
2V
2dt
2R
1= R
2= R C
1= C
2= C
Compare KCL: Math
Penn ESE 370 Fall 2021 - Khanna 17
V
S= V
2+ (R
2C
2+ R
1C
2+ R
1C
1) dV
2dt + R
1C
1R
2C
2d
2V
2dt
2V
S= V
2+ 3RC dV
2dt + R
2C
2d
2V
2dt
2V
2= A(1+ e
−αt) →
V
S= A(1+ e
−αt) − 3RC ⋅ α Ae
−αt+ R
2C
2⋅ α
2Ae
−αtR
1= R
2= R
C
1= C
2= C
Compare KCL: Math
Penn ESE 370 Fall 2021 - Khanna 18
V
2= A(1+ e
−αt) →
V
S= A(1+ e
−αt) − 3RC ⋅ α Ae
−αt+ R
2C
2⋅ α
2Ae
−αtt = ∞ → V
2= V
S= A
V
S= V
S(1+ e
−αt) − 3RC ⋅ α V
Se
−αt+ R
2C
2⋅ α
2V
Se
−αt0 = e
−αt− 3RC ⋅ α e
−αt+ R
2C
2⋅ α
2e
−αt0 = e
−αt(1− 3RC α + R
2C
2⋅ α
2) 0 = 1− 3RC α + R
2C
2⋅ α
2Compare KCL: Math
Penn ESE 370 Fall 2021 - Khanna 19
V
2= A(1+ e
−αt) →
V
S= A(1+ e
−αt) − 3RC ⋅ α Ae
−αt+ R
2C
2⋅ α
2Ae
−αtt = ∞ → V
2= V
S= A
V
S= V
S(1+ e
−αt) − 3RC ⋅ α V
Se
−αt+ R
2C
2⋅ α
2V
Se
−αt0 = e
−αt− 3RC ⋅ α e
−αt+ R
2C
2⋅ α
2e
−αt0 = e
−αt(1− 3RC α + R
2C
2⋅ α
2) 0 = 1− 3RC α + R
2C
2⋅ α
2Compare KCL: Math
Penn ESE 370 Fall 2021 - Khanna 20
V
2= V
S(1+ e
−αt)
0 = 1− 3RC α + R
2C
2⋅ α
2α = 3RC ± 9(RC)
2− 4(RC)
22(RC)
2= 3RC ± 5RC
2(RC)
2= 3± 5 2RC
→ τ = 2
3± 5 RC ≈ 2.6RC
Compare KCL: Math
Penn ESE 370 Fall 2021 - Khanna 21
V
2= V
S(1+ e
−αt)
0 = 1− 3RC α + R
2C
2⋅ α
2α = 3RC ± 9(RC)
2− 4(RC)
22(RC)
2= 3RC ± 5RC
2(RC)
2= 3± 5 2RC
→ τ = 2
3± 5 RC ≈ 2.6RC
Compare KCL: Math
=3RC
=3ns
Elmore Delay: Distributed RC network
!
The delay from source to node i
"
N = number of nodes in circuit
!
Special ladder case
22
R
ik= ∑ R
j⇒ (R
j∈ [ path(s → i)∩ path(s → k)])
Penn ESE 370 Fall 2021 - Khanna
τ Di = C k R ik
k=1 N
∑
τ DN = C k
k=1 N
∑ R j
j=1 k
∑ = C k
k=1 N
∑ R kk
Wire Delay
Penn ESE 370 Fall 2021 - Khanna 23
Wire Resistance
100um
1um
1um A
B
R = ρ L A
R = 10
−7Ω⋅ m ⋅100 µ m
1 µ m ⋅1 µ m = 10Ω
Penn ESE370 Fall2021 – Khanna 24
Wire Capacitance
4 m
0.2 mm
0.1 mm A
B
0.1 mm
metal plate
dielectric material
C = ε d A d
Penn ESE370 Fall2021 – Khanna 25
Wire as Distributed RC Ladder
!
Measure wire length in units
"
Say l
"
Each l unit has C
unit, R
unit"
Unit capacitance and resistance of wire of length l
26 Penn ESE 370 Fall 2021 - Khanna
Wire Delay
!
Delay of Wire N units long:
27 Penn ESE 370 Fall 2021 - Khanna
Wire Delay
!
Delay of Wire N units long:
R
unitC
unit28 Penn ESE 370 Fall 2021 - Khanna
Wire Delay
!
Delay of Wire N units long:
R
unitC
unit+ 2R
unitC
unit29 Penn ESE 370 Fall 2021 - Khanna
Wire Delay
!
Delay of Wire N units long:
R
unitC
unit+ 2R
unitC
unit+ 3R
unit*C
unit+ … +NR
unit*C
unit=(R
unit*C
unit)*(N+(N-1)+(N-2)+….1)
30 Penn ESE 370 Fall 2021 - Khanna
Sum of integers (preclass 2)
!
What’s the sum of the integer 1 to N?
31
k
k=0 N
∑ =
Penn ESE 370 Fall 2021 - Khanna
Sum of integers
!
What’s the sum of the integer 1 to N?
32
k
k=0 N
∑ = N(N +1) 2 ≈ N
2
2
Penn ESE 370 Fall 2021 - Khanna
Wire Delay (preclass 3)
!
Delay of Wire N units long:
R
unit*(N*C
unit)
+ R
unit((N-1)*C
unit+ R
unit*(N-2)*C
unit+ … +R
unit*C
unit=(R
unit*C
unit)*(N+N-1+N-2+….1)
~=R
unitC
unit*N
2/2
33 Penn ESE 370 Fall 2021 - Khanna
Lumped RC Wire? (preclass 4)
!
What would the delay be if we treated the wire as lumped R and C?
34
R
wire= N×R
unitC
wire= N×C
unitPenn ESE 370 Fall 2021 - Khanna
Wire Delay
!
R wire = N*R unit
!
C wire =N*C unit
!
Lumped RC wire delay = R unit *C unit *N 2
!
Distributed RC Wire delay = R unit *C unit *N 2 /2
!
Distributed has half the delay of lumped RC product
!
Delay is quadratic in length of wire in both cases
35 Penn ESE 370 Fall 2021 - Khanna
Apply to Gates
Pass Transistor and CMOS
Penn ESE 370 Fall 2021 - Khanna 36
Pass Transistor XOR
!
Delay when A=B=1?
37 Penn ESE 370 Fall 2021 - Khanna
2C
0+3C
diff02C
0+2C
diff0Pass Transistor XOR (preclass 5)
!
Delay when A=1, B=0?
"
Start with equivalent
RC circuit
38 Penn ESE 370 Fall 2021 - Khanna
Unbuffered (preclass 6)
!
Circuit # Delay?
"
2 stages
39 Penn ESE 370 Fall 2021 - Khanna
Unbuffered (preclass 7)
!
Circuit # Delay?
"
3 stages
40 Penn ESE 370 Fall 2021 - Khanna
Unbuffered (preclass 8)
!
Delay as a function of number of stages, k?
41 Penn ESE 370 Fall 2021 - Khanna
…
CMOS XOR (preclass 9)
!
Delay with Cdiff>0?
42 Penn ESE 370 Fall 2021 - Khanna
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
43 Penn ESE 370 Fall 2021 - Khanna
Admin
!
Project 1
"
Final report due Friday 10/29 midnight
44 Penn ESE 370 Fall 2021 - Khanna