ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 21: October 28, 2011 Distributed RC Delay 1 Penn ESE370 Fall2011 -- DeHon Today • Estimate delay in RC Network – Elmore delay calculation • Wire Delay 2 Penn ESE370 Fall2011 -- DeHon What is response? 3 Penn ESE370 Fall2011 -- DeHon What is response? 4 Penn ESE370 Fall2011 -- DeHon What is response? 5 Penn ESE370 Fall2011 -- DeHon SPICE Response 6 Penn ESE370 Fall2011 -- DeHon What is response? 7 Penn ESE370 Fall2011 -- DeHon SPICE Response 8 Penn ESE370 Fall2011 -- DeHon Intuition • Look at series of R’s on path – Must move Q=V(SC) across each R • Not as much as if both R’s precede C’s 9 Penn ESE370 Fall2011 -- DeHon Elmore Delay • For each resistor Ri in path – Compute CRi = sum of all C’s downstream of Ri – Delay through Ri is Ri×CRi Delay R C j i path path i j 10 Penn ESE370 Fall2011 -- DeHon Superposition 11 Penn ESE370 Fall2011 -- DeHon Superposition R1 R1 C1 R2 C2 R2 R1 C1 C2 12 Penn ESE370 Fall2011 -- DeHon Superposition R1*C1 (R1+R2)*C2 R1 R1 C1 C2 R2 R1 C1 Penn ESE370 Fall2011 -- DeHon R2 C2 R1*(C1+C2)+R2*C2 13 Superposition not concurrent • Don’t happen concurrently since must divide current 14 Penn ESE370 Fall2011 -- DeHon Superposition • For R1=R2=R, C1=C2=C – Delay = 3RC R2 R1 C1 Penn ESE370 Fall2011 -- DeHon C2 R1*(C1+C2)+R2*C2 15 SPICE Response 16 Penn ESE370 Fall2011 -- DeHon Apply to Y 17 Penn ESE370 Fall2011 -- DeHon Apply Y • 1000W×3pF • +1000W×1pF • =4ns 18 Penn ESE370 Fall2011 -- DeHon SPICE Response 19 Penn ESE370 Fall2011 -- DeHon Elmore Delay • For each resistor Ri in path – Compute CRi = sum of all C’s downstream of Ri – Delay through Ri is Ri×CRi Delay R C j i path path i j 20 Penn ESE370 Fall2011 -- DeHon Wire 21 Penn ESE370 Fall2011 -- DeHon Wire Capacitance Penn ESE370 Fall2011 -- DeHon A Cr0 d 22 Wire Resistance R Penn ESE370 Fall2011 -- DeHon L A 23 Wire as RC Ladder 24 Penn ESE370 Fall2011 -- DeHon Wire Delay as f(L) • Measure wire length in units – Say l – Each lambda have Cunit, Runit • Capacitance and resistance of wire of length l 25 Penn ESE370 Fall2011 -- DeHon Wire Delay • 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) Penn ESE370 Fall2011 -- DeHon 26 Sum of integers • What’s the sum of the integer 1 to N? N+N-1+N-2+…1 N k k 0 27 Penn ESE370 Fall2011 -- DeHon Sum of integers • What’s the sum of the integer 1 to N? N+N-1+N-2+…1 N(N 1) 2 k 2 0.5N k 0 N 28 Penn ESE370 Fall2011 -- DeHon Wire Delay • 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) =Runit*Cunit*N2/2 29 Penn ESE370 Fall2011 -- DeHon Wire Delay • • • • Rwire = N*Runit Cwire=N*Cunit Wire delay = Runit*Cunit*N2/2 Wire delay = 0.5 * Rwire*Cwire • Half the delay of lumped RC product • Quadratic in length of wire 30 Penn ESE370 Fall2011 -- DeHon Branching Wire • What is delay of: Drive L/2 L/2 Receive L/2 31 Penn ESE370 Fall2011 -- DeHon Branching Wire • Drive Wire of length L – L2/2 (Runit*Cunit) • Charge L/2 Cunit through R=L/2 Runit – L2/4 (Runit*Cunit) • Total 0.75 L2 Drive L/2 L/2 Receive L/2 32 Penn ESE370 Fall2011 -- DeHon Branching Wire • Direct calc like ladder for first half 3L 2 5 3L 3L RC 1 ...L RC0.5 0.5L2 RCL2 2 2 2 8 • Then wire of length L/2 – 0.5(L/2)2=L2/8 Total 0.75 L2 Drive L/2 L/2 Receive L/2 33 Penn ESE370 Fall2011 -- DeHon Admin • Project – Due next Friday – Baseline done; many ideas on what to do – Starting to optimize…. – Now dig into optimization and designspace exploration • Midterm 2: Nov. 9th – Wednesday, 1.5 week, in evening 34 Penn ESE370 Fall2011 -- DeHon Idea • Lumped wiring calculation is pessimistic – Not all capacitance at end of wire • Elmore delay calculation allows us to estimate • Wires are distributed RC – Half delay lumped calculation – Still quadratic in length 35 Penn ESE370 Fall2011 -- DeHon