Level 4 — ApplicationVLSI Design

VLSI Design

printable — key stays hidden on paper

Level 4 (Application: novel/unseen problems) Time: 60 minutes | Total: 60 marks

Answer all questions. Show all working. Assume standard CMOS conventions unless stated.


Question 1 — Scaling & Power (12 marks)

A processor is fabricated at a 28 nm node with the following characteristics: supply voltage Vdd=1.0 VV_{dd}=1.0\text{ V}, clock frequency f=2.0 GHzf=2.0\text{ GHz}, total switched capacitance per cycle C=15 nFC=15\text{ nF}, average activity factor α=0.15\alpha=0.15, and static leakage current Ileak=1.2 AI_{leak}=1.2\text{ A}.

(a) Compute the dynamic power and static (leakage) power. State total power. (4)

(b) The design is ported to a 14 nm node. Under ideal Dennard scaling with a linear dimension scaling factor k=2814=2k=\tfrac{28}{14}=2, state the scaling relationships and compute the new VddV_{dd}, CC, ff (frequency scales up by kk), and the new dynamic power density relative to the old. Show that dynamic power per unit area stays constant. (5)

(c) In reality Dennard scaling broke down around 2005. Explain, using the leakage term, why voltage could not continue to scale as 1/k1/k, and what this implies for the power computed in (b). (3)


Question 2 — Clock Tree & Timing (12 marks)

A synchronous block has a launch flip-flop and a capture flip-flop connected by combinational logic. Given:

  • Clock-to-Q delay tcq=90 pst_{cq}=90\text{ ps}
  • Combinational logic delay tlogic=520 pst_{logic}=520\text{ ps}
  • Setup time tsu=60 pst_{su}=60\text{ ps}
  • Hold time th=40 pst_{h}=40\text{ ps}
  • Clock period T=800 psT=800\text{ ps}
  • Clock skew tskew=tcapturetlauncht_{skew}=t_{capture}-t_{launch}

(a) Write the setup and hold timing inequalities including skew. (3)

(b) Determine the range of skew values [tskew,min,tskew,max][t_{skew,min}, t_{skew,max}] for which the path meets both setup and hold. (5)

(c) A clock-tree synthesis (CTS) tool introduces +150 ps of positive skew (capture later). State whether setup and hold are still met, and explain the design intent of deliberately introducing this skew ("useful skew"). (4)


Question 3 — Power Grid / IR Drop (12 marks)

A power grid delivers current to a block through a metal rail modelled as a distributed resistance. The rail carries a total current I=0.8 AI=0.8\text{ A}, has end-to-end resistance R=0.5 ΩR=0.5\ \Omega, and current is drawn uniformly along its length from a single-end supply.

(a) For a single lumped load at the far end, compute the worst-case IR drop. If the nominal supply is 1.0 V1.0\text{ V}, what voltage reaches the load? (3)

(b) For a uniformly distributed load along the rail (same total current II), show that the effective IR drop at the far end is 12IR\tfrac{1}{2}IR and compute it. Explain physically why it is half the lumped value. (5)

(c) The cell library requires at least 0.9 V0.9\text{ V} to meet timing. For the distributed case, is the constraint met? Propose two floorplanning/power-planning techniques to reduce IR drop. (4)


Question 4 — DFT: Scan Chains & Test (12 marks)

A chip contains 24,000 flip-flops. Scan test is applied at a scan shift frequency of 50 MHz.

(a) If all flip-flops are stitched into a single scan chain, compute the time to shift in one test vector (ignore capture cycle). (3)

(b) The design is re-partitioned into 8 balanced scan chains. Compute the new shift-in time and the speedup. State the main cost/trade-off of adding more chains. (4)

(c) A test set has 1,200 vectors. Using the 8-chain configuration, estimate total scan test application time (assume 1 capture cycle per vector at 50 MHz, and shift-in of vector n+1n+1 overlaps with shift-out of vector nn). (5)


Question 5 — Signal Integrity & Verification (12 marks)

(a) Two parallel routed nets (aggressor and victim) have a coupling capacitance Cc=8 fFC_c=8\text{ fF} and the victim has ground capacitance Cg=24 fFC_g=24\text{ fF}. The aggressor switches full-rail ΔV=1.0 V\Delta V=1.0\text{ V} while the victim is held quiet. Estimate the peak crosstalk noise voltage on the victim using the capacitive divider model. State one layout technique to reduce it. (5)

(b) During sign-off a chip passes DRC but fails LVS. Explain what each check verifies and give a concrete example of a defect that DRC would miss but LVS would catch. (4)

(c) Parasitic extraction reports a net RC delay you must model. A net has R=20 ΩR=20\ \Omega and C=50 fFC=50\text{ fF} distributed. Estimate the Elmore delay using the lumped 0.69RC0.69RC approximation and comment on why distributed-RC delay is lower. (3)


End of paper.

Answer keyMark scheme & solutions

Question 1

(a) Dynamic power: Pdyn=αCVdd2f=0.15×15nF×(1.0)2×2GHzP_{dyn}=\alpha C V_{dd}^2 f = 0.15 \times 15\text{nF} \times (1.0)^2 \times 2\text{GHz} =0.15×15×109×1×2×109=4.5 W= 0.15 \times 15\times10^{-9} \times 1 \times 2\times10^{9} = 4.5\text{ W}. (2) Static: Pstat=VddIleak=1.0×1.2=1.2 WP_{stat}=V_{dd}\,I_{leak}=1.0\times1.2=1.2\text{ W}. (1) Total =5.7 W=5.7\text{ W}. (1)

(b) Ideal Dennard: dimensions 1/k\to 1/k, VddVdd/kV_{dd}\to V_{dd}/k, CC/kC\to C/k, fkff\to k\,f, area 1/k2\to 1/k^2. (1)

  • New Vdd=1.0/2=0.5 VV_{dd}=1.0/2=0.5\text{ V} (1)
  • New C=15/2=7.5 nFC=15/2=7.5\text{ nF} (per equivalent block); f=2×2=4 GHzf=2\times2=4\text{ GHz} (1)
  • New dynamic power P=α(C/k)(V/k)2(kf)=αCV2f1k2=Pdyn/4=1.125 WP'=\alpha (C/k)(V/k)^2(kf)=\alpha C V^2 f \cdot \tfrac{1}{k^2}=P_{dyn}/4=1.125\text{ W}. (1)
  • Area scales by 1/k2=1/41/k^2=1/4, so power density =P/A=(P/4)/(A/4)=P/A=P'/A' = (P/4)/(A/4)=P/Aconstant. (1)

(c) Lowering VddV_{dd} requires lowering VthV_{th} to preserve drive; but subthreshold leakage IleakeVth/(nkT/q)I_{leak}\propto e^{-V_{th}/(nkT/q)} rises exponentially as VthV_{th} falls. So VddV_{dd} could not keep scaling 1/k\propto 1/k without leakage exploding. (2) Consequently the ideal P/4P/4 result of (b) is not achievable; static power dominates and power density rises → "power wall." (1)


Question 2

(a) Setup: tcq+tlogic+tsuT+tskewt_{cq}+t_{logic}+t_{su}\le T+t_{skew}. (1.5) Hold: tcq+tlogicth+tskewt_{cq}+t_{logic}\ge t_{h}+t_{skew}. (1.5)

(b) Setup → tskewtcq+tlogic+tsuT=90+520+60800=130 pst_{skew}\ge t_{cq}+t_{logic}+t_{su}-T = 90+520+60-800 = -130\text{ ps}. So tskew,min=130 pst_{skew,min}=-130\text{ ps}. (2) Hold → tskewtcq+tlogicth=90+52040=570 pst_{skew}\le t_{cq}+t_{logic}-t_{h} = 90+520-40 = 570\text{ ps}. So tskew,max=570 pst_{skew,max}=570\text{ ps}. (2) Valid range: 130 pstskew570 ps-130\text{ ps}\le t_{skew}\le 570\text{ ps}. (1)

(c) +150 ps+150\text{ ps} lies in [130,570][-130,570]both setup and hold met. (2) Useful skew: intentionally delaying the capture clock borrows time for a critical setup path (relaxes setup, at the cost of hold margin on downstream paths), improving max frequency without changing logic. (2)


Question 3

(a) Lumped far-end: Vdrop=IR=0.8×0.5=0.4 VV_{drop}=IR=0.8\times0.5=0.4\text{ V}. (2) Load voltage =1.00.4=0.6 V=1.0-0.4=0.6\text{ V}. (1)

(b) Distributed uniform load: consider current I(x)I(x) decreasing linearly from II at source to 0 at the end. Drop =0LI(x)rdx=\int_0^L I(x)\,r\,dx where r=R/Lr=R/L. With I(x)=I(1x/L)I(x)=I(1-x/L): Vdrop=0LI(1x/L)RLdx=IRL[xx22L]0L=IRLL2=12IRV_{drop}=\int_0^L I(1-x/L)\frac{R}{L}dx = \frac{IR}{L}\big[x-\frac{x^2}{2L}\big]_0^L=\frac{IR}{L}\cdot\frac{L}{2}=\tfrac12 IR. (3) =0.5×0.4=0.2 V=0.5\times0.4=0.2\text{ V}. (1) Physically: current near the far end traverses less resistance (only the near portion carries the full current), so average path resistance is halved. (1)

(c) Distributed load voltage =1.00.2=0.8 V<0.9 V=1.0-0.2=0.8\text{ V} < 0.9\text{ V}constraint NOT met. (2) Techniques (any two): widen power straps / add more metal layers; use a denser power mesh; add more supply pins/bumps (double-sided feed); insert decoupling capacitors; place high-current blocks near supply. (2)


Question 4

(a) Single chain length = 24,000 bits. Shift time =24000/(50×106)=4.8×104 s=480 μs=24000/(50\times10^6)=4.8\times10^{-4}\text{ s}=480\ \mu s. (3)

(b) 8 balanced chains → longest chain =24000/8=3000=24000/8=3000 bits. Time =3000/50MHz=60 μs=3000/50\text{MHz}=60\ \mu s. (2) Speedup =480/60=8×=480/60=8\times. (1) Trade-off: 8× more scan I/O pins (or more test channels/ATE resources), extra routing congestion. (1)

(c) Per-vector shift =3000=3000 cycles; capture =1=1 cycle. With overlap of shift-out/shift-in, effective cost per vector after pipeline fill 3000+1=3001\approx 3000+1=3001 cycles; plus one final shift-out (3000) for the last vector. Cycles 1200×3001+3000=3,601,200+3000=3,604,200\approx 1200\times3001 + 3000 = 3,601,200+3000=3,604,200. (3) Time =3.6042×106/50×106=0.0721 s72.1 ms=3.6042\times10^{6}/50\times10^{6}=0.0721\text{ s}\approx 72.1\text{ ms}. (2) (Accept ~72 ms; simple estimate 1200×3001/50MHz=72.0 ms1200\times3001/50\text{MHz}=72.0\text{ ms} also full marks.)


Question 5

(a) Capacitive divider: Vnoise=ΔVCcCc+Cg=1.0×88+24=1.0×832=0.25 VV_{noise}=\Delta V\cdot\dfrac{C_c}{C_c+C_g}=1.0\times\dfrac{8}{8+24}=1.0\times\dfrac{8}{32}=0.25\text{ V}. (3) Layout fix (any): increase spacing between nets; insert grounded shield line; reduce parallel run length; route on orthogonal layers. (2)

(b) DRC checks the layout geometry obeys the foundry's manufacturability rules (spacing, width, enclosure, density) — purely physical. (1) LVS verifies the extracted netlist from layout matches the schematic/intended netlist (connectivity + device sizes/types). (1) Example DRC misses but LVS catches: a wire that is geometrically legal but connects the wrong two nets (a short between nets, or a missing/swapped connection) — spacing rules pass but topology is wrong. (2)

(c) Lumped delay =0.69RC=0.69×20×50×1015=6.9×1013 s=0.69 ps=0.69RC=0.69\times20\times50\times10^{-15}=6.9\times10^{-13}\text{ s}=0.69\text{ ps}. (2) Distributed-RC delay is lower (~0.38RC0.38RC) because resistance and capacitance are interspersed, so the full RR does not charge the full CC; the lumped model overestimates. (1)


[
  {"claim":"Q1a dynamic and total power", "code":"alpha=Rational(15,100); C=15e-9; V=1.0; f=2e9; Pdyn=alpha*C*V**2*f; Pstat=1.0*1.2; result = (abs(float(Pdyn)-4.5)<1e-6) and (abs(float(Pdyn)+Pstat-5.7)<1e-6)"},
  {"claim":"Q1b scaled dynamic power is 1.125W (P/4)", "code":"k=2; Pdyn=4.5; Pnew=Pdyn/k**2; result = abs(Pnew-1.125)<1e-9"},
  {"claim":"Q2b skew range [-130,570] ps", "code":"tcq=90; tl=520; tsu=60; th=40; T=800; smin=tcq+tl+tsu-T; smax=tcq+tl-th; result = (smin==-130) and (smax==570)"},
  {"claim":"Q3b distributed IR drop = 0.2V", "code":"x=symbols('x'); I=0.8; R=0.5; L=1; expr=I*(1-x/L)*(R/L); drop=integrate(expr,(x,0,L)); result = abs(float(drop)-0.2)<1e-9"},
  {"claim":"Q4 single vs 8-chain shift times and speedup", "code":"N=24000; f=50e6; t1=N/f; t8=(N/8)/f; result = (abs(t1-4.8e-4)<1e-12) and (abs(t8-6e-5)<1e-12) and (abs(t1/t8-8)<1e-9)"},
  {"claim":"Q5a crosstalk noise = 0.25V", "code":"Cc=8; Cg=24; dV=1.0; Vn=dV*Cc/(Cc+Cg); result = abs(Vn-0.25)<1e-9"}
]