Transcript ppt
ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 28: November 15, 2010 Repeaters in Wiring 1 Penn ESE370 Fall2010 -- DeHon Last Time • Unbuffered wire delay scales as L2 – 0.5 Rwire Cwire – 0.5 L2 Ru Cu 2 Penn ESE370 Fall2010 -- DeHon Today • What happens when we buffer interconnect? • Optimal buffering – …and buffer sizing • Implications – Scaling – When becomes first-order issue 3 Penn ESE370 Fall2010 -- DeHon Delay of Wire • • • • Long Wire: 1mm Rwire = 60K W (for the 1mm) Cwire = 0.16 pF (for the 1mm) Driven by inverter – R0 = 25K W – C0 = 0.01 fF – Assume mn=2mp, sized Wp=2, Wn=1 • Loaded by identical inverter Penn ESE370 Fall2010 -- DeHon 4 Formulate Delay ( Rbuf Cself Cwire Cload 0.5Rwire Cwire Rwire Cload 5 Penn ESE370 Fall2010 -- DeHon Calculate Delay • Cload = 3 C0 • Rbuf = R0 • Cself = g 3 C0 = 3 C0 ( Rbuf Cself Cwire Cload 0.5Rwire Cwire Rwire Cload 6 Penn ESE370 Fall2010 -- DeHon Buffer Middle • Delay if add buffer to middle of wire? 7 Penn ESE370 Fall2010 -- DeHon Formulate and Calculate Delay Rwire Cwire Rwire Cwire 2 Rbuf Cself Cload 0.5 Cload 2 2 2 2 8 Penn ESE370 Fall2010 -- DeHon N Buffers • Delay for N buffers? Rwire Cwire Rwire Cwire N Rbuf Cself Cload 0.5 Cload N N N N ( N Rbuf Cself Cload Rbuf Rwire Cwire Cwire 0.5 Rwire Cload N 9 Penn ESE370 Fall2010 -- DeHon Minimize Delay ( N Rbuf Cself Cload Rbuf Rwire Cwire Cwire 0.5 Rwire Cloa N • Derivative with respect to N ( Rbuf Cself Cload Rwire Cwire 0.5 0 2 N 10 Penn ESE370 Fall2010 -- DeHon Solve for N ( Rbuf Cself Cload Rwire Cwire 0.5 0 2 N Rwire Cwire N 0.5 R C C self load buf ( 11 Penn ESE370 Fall2010 -- DeHon Substitute Back into Delay ( Rwire Cwire Cwire 0.5 Rwire Cload N N Rbuf Cself Cload Rbuf Rwire Cwire 0.5 R C C self load buf ( R C C buf self load ( Rwire Cwire 0.5 Rwire Cwire 0.5 R C C self load buf ( Rbuf Cwire Rwire Cload Rwire Cwire N 0.5 R C C self load buf ( Penn ESE370 Fall2010 -- DeHon 12 Substitution Rwire Cwire 0.5 R C C self load buf ( R C C buf self load ( Rwire Cwire 0.5 R C C self load buf ( Rwire Cwire 0.5 Rwire Cwire 0.5 R C C self load buf ( R C C buf self load ( Rbuf Cwire Rwire Cload Rwire Cwire 0.5 Rwire Cwire 0.5 R C C self load buf ( 13 Penn ESE370 Fall2010 -- DeHon Simplified Delay ( ( 0.5Rwire Cwire Rbuf Cself Cload 0.5Rwire Cwire Rbuf Cself Cload Rwire Cwire 0.5 R C C self load buf ( R C C buf self load ( Rwire Cwire 0.5 Rwire Cwire 0.5 R C C self load buf ( 14 Penn ESE370 Fall2010 -- DeHon Equalized Delay ( ( 0.5Rwire Cwire Rbuf Cself Cload 0.5Rwire Cwire Rbuf Cself Cload • Equalize delay in buffer and delay in wire segment ( 2 0.5Rwire Cwire Rbuf Cself Cload Rbuf Cwire Rwire Cload 15 Penn ESE370 Fall2010 -- DeHon Calculate: Optimum Stages for Example • • • • Rwire = 60K W (for the 1mm) Cwire = 0.16 pF (for the 1mm) Rbuf=R0 = 25K W Cself=Cload=3(C0 = 0.01 fF)=0.03fF Rwire Cwire N 0.5 R C C self load buf ( Penn ESE370 Fall2010 -- DeHon 16 Calculate Delay of Buffered ( 2 0.5Rwire Cwire Rbuf Cself Cload Rbuf Cwire Rwire Cload 17 Penn ESE370 Fall2010 -- DeHon Segment Length • Rwire = L×Runit • Cwire = L×Cunit Rwire Cwire N 0.5 R C C self load buf ( Ru Cu N L 0.5 R C C self load buf ( 18 Penn ESE370 Fall2010 -- DeHon Optimal Segment Length • Once we’ve equalized the wire delay with the buffer delay – Means wire delay between buffers should be equal to buffer delay ( ( 0.5Rwire Cwire Rbuf Cself Cload 0.5Rwire Cwire Rbuf Cself Cload Rbuf Ru Cu N L 0.5 R C C self load buf ( Penn ESE370 Fall2010 -- DeHon 19 Optimal Segment Length • Delay scales linearly with distance once optimally buffered * seg L ( R C C L buf self load 2 N Ru Cu Ru Cu N L 0.5 R C C self load buf Penn ESE370 Fall2010 -- DeHon ( 20 Calculate Segment Length • What is the segment length here? * seg L ( R C C L buf self load 2 N Ru Cu Penn ESE370 Fall2010 -- DeHon 21 Buffer Size? • How big should buffer be? – Rbuf = R0/W – Cload = 3 W C0 (assuming mn=2mp) – Cself = g 3 W C0 ( 2 0.5Rwire Cwire Rbuf Cself Cload Rbuf Cwire Rwire Cload R0 R0 2 0.5Rwire Cwire (1 g 3WC0 Cwire Rwire 3WC0 W W 22 Penn ESE370 Fall2010 -- DeHon Buffer Size R0 R0 2 0.5Rwire Cwire (1 g 3WC0 Cwire Rwire 3WC0 W W R0 2 0.5Rwire Cwire R0 (1 g 3C0 Cwire Rwire 3WC 0 W 23 Penn ESE370 Fall2010 -- DeHon W to Minimize Delay R0 2 0.5Rwire Cwire R0 (1 g 3C0 Cwire Rwire 3WC 0 W • Derivative with respect to W R0 2 Cwire Rwire 3C0 W 24 Penn ESE370 Fall2010 -- DeHon Solve W R0 2 Cwire Rwire 3C 0 W R0 Cwire W Rwire 3C0 25 Penn ESE370 Fall2010 -- DeHon Implication W • Rwire = L×Runit • Cwire = L×Cunit • W independent of Length – Depends on technology R0 Cwire W Rwire 3C0 26 Penn ESE370 Fall2010 -- DeHon Substituting back into delay R0 2 0.5Rwire Cwire R0 (1 g 3C0 Cwire Rwire 3WC 0 W 2 0.5Rwire Cwire R0 (1 g 3C0 2 R0 Cwire Rwire 3C0 R0 Cwire W Rwire 3C0 27 Penn ESE370 Fall2010 -- DeHon Delay at Optimum W 2 0.5Rwire Cwire R0 (1 g 3C0 2 R0 Cwire Rwire 3C0 • With g=1, 1+g=2 • Same size as first term • So total delay twice what calculated before 28 Penn ESE370 Fall2010 -- DeHon Implications 29 Penn ESE370 Fall2010 -- DeHon Scaling • As scale feature size, what happens to – Ru – Cu – Ru×Cu – R0 – C0 tgd 30 Penn ESE370 Fall2010 -- DeHon Scaling • As scale feature size, what happens to – Ru (r/(H*W))*L – Cu (e W/Tox)*L …but not at this rate – Ru×Cu not scaling down (maybe up) – R0 scales up – C0 scales down tgd scales down 31 Penn ESE370 Fall2010 -- DeHon Scaling: Segment Length • As scale feature size, what happens to – Ru (r/(H*W))*L – Cu (e W/Tox)*L …but not at this rate – Ru×Cu not scaling down (maybe up) – R0 scales up R C C self load – C0 scales down L* 2 buf seg Ru Cu tgd scales down ( • Optimal segment length shrinks – We buffer more often Penn ESE370 Fall2010 -- DeHon 32 Segment Length Grounding • How many l is the L*seg we calculated? – Assume l=11nm • How many l wide is a gate? (ballpark) 33 Penn ESE370 Fall2010 -- DeHon Segment Length Implications • If route wire L*seg between gates, has comparable delay to gate – Half of delay in wiring • Somewhere before then – Assuming wire delay negligible adds non-trivial error to delay estimates • …and L*seg shrinking with technology 34 Penn ESE370 Fall2010 -- DeHon Scaling: Buffer Size • As scale feature size, what happens to – Ru (r/(H*W))*L …scaling up – Cu (e W/Tox)*L ….scaling down • (not so much) – Ru×Cu not scaling down – R0 scales up – C0 scales down W tgd scales down • Buffer size not change? – Maybe get larger Penn ESE370 Fall2010 -- DeHon R0 Cwire Rwire 3C0 35 Admin • Wednesday – Project 2 due – Go to Detkin (RCA) Lab • HW6 out now (with sketch of lab details) • Office Hours – Andre T4:30pm – Andrew: today and tomorrow (mail?) • Friday: back here for lecture 36 Penn ESE370 Fall2010 -- DeHon Ideas • Wire delay linear once buffered • Optimal buffering matches – Buffer delay – Delay on wire between buffers • Scaling shifts more delay into wiring – Buffer more often – Radius can wire signal without significant wire delay shrinks 37 Penn ESE370 Fall2010 -- DeHon