← Analog & Mixed-Signal Interviews

Interview Question · Concept

Subthreshold Swing and Leakage

L1 JuniorL2 Mid-Levelmosleakage

The Question

The interviewer asks

What sets how fast a transistor turns off below threshold, and how would you measure its off current in SPICE?

Reveal the Model Answer

Below threshold the current is diffusion over a barrier, so it is exponential in V_GS. The subthreshold swing, n·U_T·ln 10, is the gate voltage per decade of current. It is 59.6 mV at best at 27 °C and about 94 mV for this sky130 NMOS. The off current is the current at V_GS = 0; it grows with temperature and drain voltage. In SPICE, lower gmin first, because its default conductance adds about 1.8 pA at 1.8 V.

DC sweepDrain Current on a Log Axis at 27 °C and 125 °CNMOS W = 2 µm, L = 0.15 µm, VDS = 1.8 V, gmin lowered to 10−18 S. Each grid line up is ten times more current.
  • I_D at 27 °C
  • I_D at 125 °C
1 pA100 pA10 nA1 µA100 µADrain current00.2 V0.4 V0.6 V0.8 V1.0 VGate voltage V_GS1.02 pA at 27 °C152.7 pA at 125 °C1 pA100 pA10 nA1 µA100 µADrain current00.5 V1.0 VGate voltage V_GS1.02 pA at 27 °C152.7 pA at 125 °C
  1. Gate voltage V_GS 0 VI_D at 27 °C = 1.02 pA · I_D at 125 °C = 152.7 pA

    With the gate at 0 V the device is off, yet 1.02 pA flows at 27 °C and 152.7 pA at 125 °C. This is the off current Ioff.

  2. Gate voltage V_GS 280 mVI_D at 27 °C = 1.004 nA · I_D at 125 °C = 27.04 nA

    At 0.28 V the 27 °C curve passes 1 nA. Below about 0.5 V it is a straight line on this log axis: the current is exponential in VGS.

  3. Gate voltage V_GS 374 mVI_D at 27 °C = 10.05 nA · I_D at 125 °C = 148.3 nA

    At 0.374 V it passes 10 nA. One decade of current took 94 mV of gate voltage.

  4. Gate voltage V_GS 600 mVI_D at 27 °C = 1.929 µA · I_D at 125 °C = 6.201 µA

    At 0.6 V the lines bend over as the channel forms. The hot device still leads, by 3.2 times.

  5. Gate voltage V_GS 1 VI_D at 27 °C = 197.9 µA · I_D at 125 °C = 195.5 µA

    At 1 V the curves meet: 197.9 µA at 27 °C and 195.5 µA at 125 °C. With a strong gate drive, heat no longer helps (E2.7).

Read the plot as a table
Gate voltage V_GSI_D at 27 °CI_D at 125 °C
0 V1.02 pA152.7 pA
200 mV140.1 pA6.217 nA
280 mV1.004 nA27.04 nA
374 mV10.05 nA148.3 nA
400 mV18.92 nA235.5 nA
600 mV1.929 µA6.201 µA
800 mV47.97 µA60.58 µA
1 V197.9 µA195.5 µA

Measured on a short sky130 NMOS. Below threshold the curve is a straight line on the log axis: one decade per swing.

DC sweepThe Same Device at −40 °C with Two Values of GminNMOS W = 2 µm, L = 0.15 µm, VDS = 1.8 V. Only the gmin option differs between the runs.
  • gmin = 1e-18 S
  • gmin = 1e-12 S (default)
10 fA100 fA1 pA10 pA100 pA1 nA10 nA100 nA1 µADrain current0100 mV200 mV300 mV400 mV500 mV600 mVGate voltage V_GS10 fA1 pA100 pA10 nA1 µADrain current0200 mV400 mV600 mVGate voltage V_GS
  1. Gate voltage V_GS 0 Vgmin = 1e-18 S = 12.84 fA · gmin = 1e-12 S (default) = 1.813 pA

    At VGS = 0 the default run reports 1.81 pA. The device itself carries 0.0128 pA, 141 times less.

  2. Gate voltage V_GS 200 mVgmin = 1e-18 S = 1.641 pA · gmin = 1e-12 S (default) = 3.441 pA

    At 0.2 V the two runs still differ by a factor of two: 3.44 pA against 1.64 pA.

  3. Gate voltage V_GS 300 mVgmin = 1e-18 S = 39.03 pA · gmin = 1e-12 S (default) = 40.83 pA

    By 0.3 V the device current, 39 pA, swamps the 1.8 pA and the curves join.

Read the plot as a table
Gate voltage V_GSgmin = 1e-18 Sgmin = 1e-12 S (default)
0 V12.84 fA1.813 pA
100 mV78.08 fA1.878 pA
200 mV1.641 pA3.441 pA
300 mV39.03 pA40.83 pA
400 mV927.9 pA929.7 pA
500 mV21.42 nA21.42 nA
600 mV433.7 nA433.7 nA

The same device with the default and a lowered gmin. At VGS = 0, the default gmin adds more current than the device carries.

Self-Check

Tick each key point you covered in your answer.

What Interviewers Listen For (Junior)

A good junior answer defines the swing and gives the limit of about 60 mV per decade. It measures the current at V_GS = 0.

Cross-Questions

Where the interviewer goes next. Open a node to practise that follow-up.

WhyWhat IfProve ItCompareScale It

  1. Subthreshold Swing and Leakage
  2. WhyWhy the Swing Cannot Beat 60 mV per DecadeL2 Mid-Level

    Why can a MOSFET at room temperature not turn off faster than about 60 mV per decade?

    Reveal the Model Answer

    Below threshold carriers cross the source barrier by thermal diffusion, so the current follows the Boltzmann factor, exp(qV/kT). The gate controls the barrier only through a capacitive divider, which the slope factor n ≥ 1 describes. One decade therefore needs at least ln 10 · kT/q, about 59.6 mV at 27 °C, and more by the factor n.

    Self-Check

    Tick each key point you covered in your answer.

  3. Prove ItSolve E2.6.1: A Bench for the Sleep SwitchSimulator-graded

    Show it, don't just say it: this Silicon Lab problem is graded by the simulator.

    Open Problem E2.6.1

  4. CompareLeakage vs Temperature and Drain VoltageL1 JuniorL2 Mid-Level

    Compare how temperature and drain voltage change a device's off current.

    Reveal the Model Answer

    Temperature raises it by orders of magnitude, because the threshold falls and the swing widens. On this device the swing goes from 73 to 125 mV per decade between -40 °C and 125 °C. Drain voltage raises it through barrier lowering, about tenfold from 0.1 V to 1.8 V here. Standby power is therefore quoted at the hot corner and full supply.

    Self-Check

    Tick each key point you covered in your answer.

  5. Scale ItReviewing an Analog Block Before Tape-OutL3 SeniorL4 Staff

    Asked if they ask how leakage is signed off

    You review a colleague's op-amp and bias block a month before tape-out. What evidence do you ask for before you accept it?

    Reveal the Model Answer

    Ask for every specification line with its measured margin at every corner, crossed with supply and temperature. Ask for Monte Carlo mean plus or minus 3σ on offset and matching. Check stability at the worst load and feedback factor, with a step as well as a margin. Check start-up with supply ramps, fast and cold-slow. Finally, ask which known faults the benches were shown to catch.

    One Bench Against Five BuffersArrows carry the same stimulus to each copy and the measured lines back to the verdict.
    One bench against five buffersArrows carry the same stimulus to each copy and the measured lines back to the verdict. component Your bench stimulus and measlines component Final design component No Rz phase margin component Bias 5 µA slew rate component Load mirror 4/2 input range component M2 22/2 offset component Verdicts pass, fail × 4
    1. Dynamic faults

      No Rz and a starved bias leave the settled DC levels right, so only the settling lines catch them for sure.

    Read the diagram as text
    • Your bench: stimulus and meas lines
    • Final design
    • No Rz: phase margin
    • Bias 5 µA: slew rate
    • Load mirror 4/2: input range
    • M2 22/2: offset
    • Verdicts: pass, fail × 4
    • Your bench → Final design
    • Your bench → No Rz
    • Your bench → Bias 5 µA
    • Your bench → Load mirror 4/2
    • Your bench → M2 22/2
    • Final design → Verdicts
    • No Rz → Verdicts
    • Bias 5 µA → Verdicts
    • Load mirror 4/2 → Verdicts
    • M2 22/2 → Verdicts
    AC analysisLoop Gain of OPA-B in the Sf Corner, Nominal and Cold at Low SupplyThe same op-amp, the same corner. Only the supply (1.8 → 1.62 V) and the temperature (27 → −40 °C) change.
    • sf, 1.8 V, 27 °C
    • sf, 1.62 V, −40 °C
    -60 dB-40 dB-20 dB020 dB40 dB60 dB80 dB100 dBLoop gain1 Hz100 Hz10 kHz1 MHz100 MHzFrequencyA0 = 79.8 dBA0 = 60.1 dB-100 dB-50 dB050 dB100 dBLoop gain1 Hz1 kHz1 MHz1 GHzFrequencyA0 = 79.8 dBA0 = 60.1 dB
    Read the plot as a table
    Frequencysf, 1.8 V, 27 °Csf, 1.62 V, −40 °C
    1 Hz79.77 dB60.13 dB
    10 Hz79.77 dB60.13 dB
    100 Hz79.76 dB60.13 dB
    1 kHz79.17 dB60.12 dB
    10 kHz67.83 dB59.42 dB
    100 kHz48.11 dB47.38 dB
    1 MHz28.11 dB27.61 dB
    10 MHz7.725 dB7.411 dB
    100 MHz-18.93 dB-17 dB
    1 GHz-49.24 dB-45.32 dB

    One corner, two conditions. Only the supply and the temperature change, and the loop gain changes with them.

    Self-Check

    Tick each key point you covered in your answer.

    What Interviewers Listen For (Senior)

    A good senior answer asks for PVT corners crossed with Monte Carlo, and for stability in the worst case. It also asks for start-up transients and proof that the benches work.

    Missed Corner

    "It meets spec at typical with an ideal bias source."

    An ideal bias source hides the biggest process effect. The real reference current moves with process, supply and temperature, so the corners must use it.

    Source ASIC Point lesson E7.6

    Half-Truth

    "All the DC checks pass, so the benches are good."

    DC-level checks never see a missing R_z or a starved bias. A bench is trusted only after it fails known faults.

    Source ASIC Point lesson E8.4

    Wrong Altitude

    Reviews only the schematic numbers.

    Layout adds gradients and parasitics, and system use adds loads and supply noise. A senior review asks how those were covered.

  6. WhyWhy a Bench Must Fail Known FaultsL2 Mid-LevelL3 Senior

    Why should a test bench be shown to fail on purpose before you trust it?

    Reveal the Model Answer

    A bench that passes everything may not be measuring what you think. Insert known faults, such as a missing R_z, a starved bias or a swapped input. A good bench fails each one with a clear reason. In the lesson, DC-level checks missed both a missing R_z and a starved bias.

    TransientThe Final Design and the Two Dynamic Faults
    • final design
    • no R_z
    • bias 5 µA
    -20 mV-15 mV-10 mV-5 mV05 mV10 mV15 mV20 mVv(out) − v(dac)0100 ns200 ns300 ns400 ns500 ns600 ns700 ns800 ns900 nsTime+½ LSB−½ LSB-20 mV-10 mV010 mV20 mVv(out) − v(dac)0200 ns400 ns600 ns800 nsTime+½ LSB−½ LSB
    1. Time 370 nsfinal design = 61.54 µV · no R_z = 17.13 mV · bias 5 µA = 164.3 mV

      70 ns after the fall only the final design has settled for good. Without Rz the output rings until 112.3 ns; the starved copy slews until 176.1 ns.

    Read the plot as a table
    Timefinal designno R_zbias 5 µA
    0 s50.28 µV50.28 µV93.29 µV
    100 ns50.28 µV50.28 µV93.29 µV
    200 ns215.5 µV-3.915 mV-29.01 mV
    300 ns789.4 µV819.1 µV-6.087 mV
    370 ns61.54 µV17.13 mV164.3 mV
    400 ns51.91 µV2.84 mV34.21 mV
    500 ns-1.362 mV-1.29 mV5.276 mV
    600 ns96.08 µV-1.484 mV22.49 mV
    700 ns75.11 µV110.3 µV902.4 µV
    800 ns96.97 µV155.3 µV108.6 µV
    900 ns96.97 µV96.41 µV129.2 µV

    Measured on ngspice 42; clipped at ±20 mV.

    Self-Check

    Tick each key point you covered in your answer.

  7. Prove ItSolve E8.4.1: Break the DAC BufferSimulator-graded

    Show it, don't just say it: this Silicon Lab problem is graded by the simulator.

    Open Problem E8.4.1

  8. What IfChoosing the Faults to Plant in a BenchL2 Mid-LevelL3 Senior

    Which faults would you plant in a DAC output buffer bench, and which check should catch each one?

    Reveal the Model Answer

    Plant faults that a weak bench would miss. Remove R_z: the step settling check at speed must show ringing. Starve the bias: the input-range check at speed must fail near the top code. Swap the inputs: the open-loop sign check must fail. Each check that never fails is measuring nothing useful.

    Self-Check

    Tick each key point you covered in your answer.

    Tool as Truth

    "The DC sweeps pass with every fault, so the faults are harmless."

    DC checks cannot see stability or slew. In the lesson they missed both a missing R_z and a starved bias.

    Source Lesson E8.4 key points

  9. CompareProcess Corners vs Monte CarloL1 JuniorL2 Mid-Level

    Compare process corners with a mismatch Monte Carlo run. Do you need both?

    Reveal the Model Answer

    Yes. A process corner moves every transistor of a type together, the global spread between wafers. Mismatch moves each transistor alone, the local spread on one die. Offset comes mostly from mismatch, while bias currents and speed move mostly with corners. Sign-off runs corners crossed with supply and temperature, plus Monte Carlo.

    Self-Check

    Tick each key point you covered in your answer.

  10. Prove ItSolve E7.6.1: Nine Settings, One VerdictSimulator-graded

    Show it, don't just say it: this Silicon Lab problem is graded by the simulator.

    Open Problem E7.6.1

  11. Scale ItWriting a Bias Block SpecificationL3 Senior

    You must hand over a bias block to other designers. How do you write its specification and prove it?

    Reveal the Model Answer

    Write each requirement as one line with a limit and a measurement, set after measuring a reference design at every corner. Use one bench per check. Run a supply sweep and a temperature and supply sweep for the worst case. Add an output sweep for compliance and power-up transients, fast and slow. A constant-g_m reference moves its current on purpose, so specify the tail current as a band.

    The Bias Block, Piece by PieceArrows show where a current or a gate voltage goes. W/L in µm.
    The bias block, piece by pieceArrows show where a current or a gate voltage goes. W/L in µm. component Start-up XS1-XS3: kick atpower-up, then off component Reference Beta multiplier, K = 4,RS a res_high_po: 10µA component PMOS copies XP3 4/1: 10 µA; XP41/1: 2.5 µA component Cascode bias XBC 0.5/1.5 diodesets node c component Reference stack XC1 over XB1, 16/1units: node g output Tail output XC2 over XB2, twounits: 20 µA output PMOS bias output XB3 sinks 10 µA fromXPB 8/1 kickgate b2.5 µA10 µAgate cgate ggate g
    1. Reference and start-up

      The beta multiplier of E4.4 sets 10 µA with a res_high_po resistor (W = 0.35 µm, L = 8.54 µm). The start-up of E4.5 kicks it on at power-up and then switches off.

    2. Send currents

      PMOS devices on the reference's gate line b copy its current: 10 µA for the NMOS reference stack and 2.5 µA for the cascode bias. Currents travel; gate voltages stay local (E4.2).

    3. Wide-swing cascode

      The 2.5 µA diode XBC sets the cascode gate c. The reference stack sets the bottom gate g with its own cascode, so both bottom devices see the same drain voltage (E4.3). The tail is two units of the stack: 20 µA.

    4. PMOS bias output

      One more unit on gate g sinks 10 µA from a diode-connected 8/1 PMOS. Its gate is pbias: any 8/1 PMOS with its source at VDD and this gate voltage sources about 10 µA.

    Read the diagram as text
    • Start-up: XS1-XS3: kick at power-up, then off
    • Reference: Beta multiplier, K = 4, RS a res_high_po: 10 µA
    • PMOS copies: XP3 4/1: 10 µA; XP4 1/1: 2.5 µA
    • Cascode bias: XBC 0.5/1.5 diode sets node c
    • Reference stack: XC1 over XB1, 16/1 units: node g
    • Tail output: XC2 over XB2, two units: 20 µA
    • PMOS bias output: XB3 sinks 10 µA from XPB 8/1
    • Start-up → Reference: kick
    • Reference → PMOS copies: gate b
    • PMOS copies → Cascode bias: 2.5 µA
    • PMOS copies → Reference stack: 10 µA
    • Cascode bias → Tail output: gate c
    • Reference stack → Tail output: gate g
    • Reference stack → PMOS bias output: gate g

    The full netlist is the Try it below. Units are whole devices (m=2 for the tail), so the 2:1 ratio does not depend on drawn widths matching.

    Self-Check

    Tick each key point you covered in your answer.

  12. What IfA DAC Buffer's Input Range at the CornersL2 Mid-LevelL3 Senior

    Asked if the block drives a DAC or ADC

    What if a DAC output buffer passes at typical but a corner moves its input range?

    Reveal the Model Answer

    A corner can push an edge of the input range past the top or bottom code. Then the buffer's tail leaves saturation at that code and the output error jumps. Choose the DAC references inside the buffer's range at speed, not just where the DC error is small. Check them at every corner.

    DC sweepDC Error at Sf, −40 °C: Versions 2 and 3
    • version 2
    • version 3
    -5 mV05 mV10 mV15 mVv(out) − v(in)0.7 V0.8 V0.9 V1.0 V1.1 V1.2 V1.3 VInput+½ LSBcode 63-5 mV05 mV10 mV15 mVv(out) − v(in)0.8 V1.0 V1.2 VInput+½ LSBcode 63
    Read the plot as a table
    Inputversion 2version 3
    700 mV-149.8 µV-88.19 µV
    800 mV13.66 µV37.73 µV
    900 mV48.87 µV64.35 µV
    1 V93.74 µV89.88 µV
    1.1 V630.6 µV211.5 µV
    1.2 V10.28 mV2.951 mV
    1.3 V47.59 mV33.11 mV

    DC error at the sf corner and -40 °C. At the top code, version 2 errs by 9.02 mV and version 3 by 2.42 mV.

    Self-Check

    Tick each key point you covered in your answer.

What People Get Wrong

Common wrong answers and why they fail. Run It shows the wrong belief failing on a real simulator.

Tool as Truth

"The off current SPICE prints is the device leakage."

With the default gmin the simulator's own conductance adds about 1.8 pA, so this device reads 2.82 pA at 27 °C and 1.81 pA at -40 °C. With gmin lowered it is 1.02 pA and 0.0128 pA.

Run It

The off-current bench from lesson E2.6 with the default gmin.

SPICEngspice 42 · simulator service
Edit the netlist, then run it
Expected: ioff_27 = 2.819966e-12 ioff_m40 = 1.812835e-12
See the Fix
* off current and subthreshold swing of an NMOS (W = 2, L = 0.15)
.lib sky130 tt
* lower gmin from its 1e-12 S default so that it does not add to the leakage
.options gmin=1e-18
XM1 d g 0 0 sky130_fd_pr__nfet_01v8 W=2 L=0.15
VDS d 0 1.8
VGS g 0 0
.control
* 27 C, VDS = 1.8 V
dc VGS 0 0.6 0.002
let id = -i(VDS)
meas dc ioff_27 FIND id AT=0
meas dc s_27 TRIG id VAL=1n RISE=1 TARG id VAL=10n RISE=1
* 125 C
option temp=125
dc VGS 0 0.6 0.002
let id = -i(VDS)
meas dc ioff_125 FIND id AT=0
meas dc s_125 TRIG id VAL=1n RISE=1 TARG id VAL=10n RISE=1
* -40 C
option temp=-40
dc VGS 0 0.6 0.002
let id = -i(VDS)
meas dc ioff_m40 FIND id AT=0
meas dc s_m40 TRIG id VAL=1n RISE=1 TARG id VAL=10n RISE=1
* back to 27 C with a small drain voltage
option temp=27
alter VDS dc=0.1
dc VGS 0 0.6 0.002
let id = -i(VDS)
meas dc ioff_vds01 FIND id AT=0
.endc
.end

Prints: ioff_27 = 1.019962e-12 ioff_m40 = 1.283695e-14

Half-Truth

"Leakage only depends on the threshold voltage."

It also rises steeply with temperature, here from 0.0128 pA at -40 °C to 152.7 pA at 125 °C, and with drain voltage through barrier lowering.

Source ASIC Point lesson E2.6 (measured)

Learn It, Then Prove It