Designs › Passives and trimming › Trimming

MOS-triode trim attenuator

This divider uses a gate voltage to adjust how much of a small reference voltage reaches its output. At enough gate overdrive, the transistor acts approximately as a resistor. The setting is nonlinear and changes with signal level and temperature, so it needs calibration.

How it works

A divider whose ratio an analog trim voltage sets: R1 connects input to output, and M1 connects output to ground with the control voltage on its gate. Below threshold M1 carries little current and the output is close to the input. With sufficient gate overdrive compared with its drain voltage, M1 approaches deep triode and behaves approximately as a resistor 1/[k·(V_code − V_th)]. The divider factor then falls roughly hyperbolically as the control rises. A small input reference helps satisfy that approximation, but near threshold it fails: use the simulated transfer rather than treating the whole range as resistive.

The bench supplies a 0.1 V input reference and sweeps an ideal control source over 0–1.2 V. A physical circuit could use a DAC for that control; no DAC is included here. The gate requires little DC current, not exactly zero, and the reference supplies about 4 µA at full control voltage at the nominal design point.

Signal path

  • Top leg (R1): 18 kΩ of p+ poly from the input to the output: the fixed arm of the divider.
  • Cut-off (M1): With the code below about 0.25 V, M1 carries only leakage and the output is the input: the flat start of the transfer.
  • Triode (M1): With enough gate overdrive compared with the drain voltage, M1 becomes approximately resistive and its resistance falls as the control rises. At the nominal design point the simulated factor halves near 0.54 V and reaches about a quarter at 1.2 V.

Key relations

  • Factor: v_out/v_in = R_M1/(R_M1 + R1) = 1/(1 + k R1 (V_code − V_th)). k = µ_n C_ox (W/L)_M1; k R1 is about 3.6 V^(-1) here
  • Triode resistance: R_M1 = 1/(k (V_code − V_th − v_out/2)). the v_out/2 term is the level dependence: 10 % from a quarter of the input to twice it at the half-way code
  • Zero-TC overdrive: V_ov,ZTC ≈ T |dV_th/dT| / 1.5. about 0.1 V: below it the falling threshold wins, above it the falling mobility; the factor set to 80 % drifts 9 % from −40 to 125 °C, set to 50 % 30 %
  • Slope at half: d(v_out/v_in)/dV_code = −k R1/4 at v_out/v_in = 1/2. 0.9 % of the input per 10 mV of code there; steeper just above threshold, 1.9 % per 10 mV at its steepest

Trade-offs

  • R (R1) against W and L (M1): their product k R1 decides how the code's range is shared: larger crowds the transfer into the first 0.1 V above threshold, smaller never attenuates much.
  • VIN (the level): a larger level puts more across M1 and bends the factor with the level; a smaller one keeps M1 a better resistor.
  • Where the trim is set: near threshold it holds over temperature but each step of code moves it most; deep in triode it is fine-grained and linear but follows the channel's mobility.

Testbenches and limits

  • Against the code: The input held at its level, the code swept from 0 to V_DD: the factor out/in the cell gives at every code, and how evenly the code spreads it.
  • Against the input level: At the code that halves the input, the input swept from a twentieth of its level to twice it: a linear scaler gives the same factor at every level.
  • Against temperature: The codes that give 80, 50 and 30 % found at the run's temperature and held, the temperature swept from -40 to 125 °C: how well a trim set once holds.
BenchFigureLimit
Against the codeFactor at code 0≥ 0.99 V/V
Against the codeFactor at full code≤ 0.4 V/V
Against the codeCode span, 90 % to 40 %≥ 200 mV
Against the codeLargest step per 10 mV of code≤ 3 %
Against the input levelLevel error, quarter to double input≤ 20 %
Against temperatureDrift at half, -40 to 125 °C≤ 50 %

Design variables and defaults

VariableDefault
R118 kΩ
W M12 µm
L M14 µm
Input level100 mV

Ports

  • in input: the level to be scaled: a reference, not the supply
  • out output
  • code bias: the trim code, 0 to V_DD from a DAC
  • vss ground

Reference

B. Razavi, Design of Analog CMOS Integrated Circuits, 2nd, McGraw-Hill, 2016. Basic MOS device physics: the MOSFET in deep triode as a linear resistor its overdrive controls, R_on = 1/(µ_n C_ox (W/L)(V_GS - V_TH)).

The deep-triode MOSFET as a voltage-controlled resistor. A low reference voltage helps keep its drain-source voltage small, but the resistor approximation still requires enough gate overdrive. Near threshold, inspect the simulated transfer rather than assume triode behavior.

IHP SG13G2 130 nm. Simulations run in your browser; open the workbench to run this design's benches and change its variables.