kT/C: the noise you cannot design away
Measure the noise a resistor leaves on a capacitor, see why the resistor drops out of the answer, and size a sampling capacitor for a number of bits.
- Lesson
- E7.2
- Time
- 25 min
- Runs on
- ngspice
- Check
- 5 questions
A sample-and-hold had too much noise on its 1 pF hold capacitor, so its designer cut the switch's on-resistance from 10 kΩ to 1 kΩ to lower its thermal noise. The noise on the capacitor stayed at 64.37 µV rms, and a 100 kΩ switch would not have moved it either.
- R = 100 kΩ
- R = 10 kΩ
- R = 1 kΩ
- Frequency 100 kHzR = 100 kΩ = 12.87 µV · R = 10 kΩ = 4.071 µV · R = 1 kΩ = 1.287 µV
At 100 kHz the 100 kΩ circuit has gathered the most noise: its resistor is the noisiest per hertz.
- Frequency 10 MHzR = 100 kΩ = 61.06 µV · R = 10 kΩ = 38.47 µV · R = 1 kΩ = 12.87 µV
By 10 MHz the 100 kΩ curve has stopped rising. The 10 kΩ curve is still climbing and the 1 kΩ curve has barely started.
- Frequency 10 GHzR = 100 kΩ = 64.37 µV · R = 10 kΩ = 64.34 µV · R = 1 kΩ = 64.05 µV
All three end at the same total, 64.37 µV: 1 kΩ, 10 kΩ and 100 kΩ alike.
Read the plot as a table
| Frequency | R = 100 kΩ | R = 10 kΩ | R = 1 kΩ |
|---|---|---|---|
| 1 Hz | 0 V | 0 V | 0 V |
| 10 Hz | 122.1 nV | 38.62 nV | 12.21 nV |
| 100 Hz | 405.1 nV | 128.1 nV | 40.51 nV |
| 1 kHz | 1.287 µV | 406.9 nV | 128.7 nV |
| 10 kHz | 4.071 µV | 1.287 µV | 407.1 nV |
| 100 kHz | 12.87 µV | 4.071 µV | 1.287 µV |
| 1 MHz | 38.47 µV | 12.87 µV | 4.071 µV |
| 10 MHz | 61.06 µV | 38.47 µV | 12.87 µV |
| 100 MHz | 64.05 µV | 61.06 µV | 38.47 µV |
| 1 GHz | 64.34 µV | 64.05 µV | 61.06 µV |
| 10 GHz | 64.37 µV | 64.34 µV | 64.05 µV |
| 100 GHz | 64.38 µV | 64.37 µV | 64.34 µV |
| 1 THz | 64.38 µV | 64.38 µV | 64.37 µV |
Measured on ngspice 42 (241 of the run's 1201 frequencies, 100 per decade).
A quieter resistor is also a faster one, and on a capacitor the two effects cancel exactly.
Noise spread over frequency
Thermal noise is the random motion of charge in every resistor. Its power spectral density is the noise power in each 1 Hz slice of frequency: 4kTR in V2/Hz, where k is Boltzmann's constant and T the temperature in kelvin. It is white, the same at every frequency, and its square root in V/√Hz is the density that SPICE prints.
A capacitor across the resistor makes a low-pass filter with its corner at f-3dB = 1/(2πRC). Noise below the corner reaches the capacitor, and noise far above it is shorted away by the capacitor. The rms (root-mean-square) noise on the capacitor is the square root of the density squared, added up over every frequency. Noise sources are random, so their powers add and their voltages do not.
- 100 kΩ density
- 10 kΩ density
- 100 kΩ total
- 10 kΩ total
- Frequency 1 kHz100 kΩ density = 40.71 nV/rtHz · 10 kΩ density = 12.87 nV/rtHz · 100 kΩ total = 1.287 µV · 10 kΩ total = 406.9 nV
Far below both corners each density is its resistor's own: 40.71 nV/√Hz for 100 kΩ, 12.87 nV/√Hz for 10 kΩ. Ten times the resistance gives √10 times the density.
- Frequency 1.592 MHz100 kΩ density = 28.79 nV/rtHz · 10 kΩ density = 12.81 nV/rtHz · 100 kΩ total = 45.52 µV · 10 kΩ total = 16.22 µV
The 100 kΩ corner, 1.592 MHz. Its running total is 45.52 µV, half of its final noise power. The 10 kΩ total is only 16.22 µV.
- Frequency 15.92 MHz100 kΩ density = 4.052 nV/rtHz · 10 kΩ density = 9.103 nV/rtHz · 100 kΩ total = 62.3 µV · 10 kΩ total = 45.52 µV
The 10 kΩ corner, ten times higher at 15.92 MHz. Its total has now reached 45.52 µV too: half of the same final power.
- Frequency 1 GHz100 kΩ density = 64.8 pV/rtHz · 10 kΩ density = 204.9 pV/rtHz · 100 kΩ total = 64.34 µV · 10 kΩ total = 64.05 µV
Both totals have settled at 64.37 µV. The taller curve is narrower by exactly as much as it is taller.
Read the plot as a table
| Frequency | 100 kΩ density | 10 kΩ density | 100 kΩ total | 10 kΩ total |
|---|---|---|---|---|
| 1 Hz | 40.71 nV/rtHz | 12.87 nV/rtHz | 0 V | 0 V |
| 10 Hz | 40.71 nV/rtHz | 12.87 nV/rtHz | 122.1 nV | 38.62 nV |
| 100 Hz | 40.71 nV/rtHz | 12.87 nV/rtHz | 405.1 nV | 128.1 nV |
| 1 kHz | 40.71 nV/rtHz | 12.87 nV/rtHz | 1.287 µV | 406.9 nV |
| 10 kHz | 40.71 nV/rtHz | 12.87 nV/rtHz | 4.071 µV | 1.287 µV |
| 100 kHz | 40.63 nV/rtHz | 12.87 nV/rtHz | 12.87 µV | 4.071 µV |
| 1 MHz | 34.47 nV/rtHz | 12.85 nV/rtHz | 38.47 µV | 12.87 µV |
| 1.592 MHz | 28.79 nV/rtHz | 12.81 nV/rtHz | 45.52 µV | 16.22 µV |
| 10 MHz | 6.399 nV/rtHz | 10.9 nV/rtHz | 61.06 µV | 38.47 µV |
| 15.92 MHz | 4.052 nV/rtHz | 9.103 nV/rtHz | 62.3 µV | 45.52 µV |
| 100 MHz | 647.9 pV/rtHz | 2.024 nV/rtHz | 64.05 µV | 61.06 µV |
| 1 GHz | 64.8 pV/rtHz | 204.9 pV/rtHz | 64.34 µV | 64.05 µV |
| 10 GHz | 6.48 pV/rtHz | 20.49 pV/rtHz | 64.37 µV | 64.34 µV |
| 100 GHz | 648 fV/rtHz | 2.049 pV/rtHz | 64.38 µV | 64.37 µV |
| 1 THz | 64.8 fV/rtHz | 204.9 fV/rtHz | 64.38 µV | 64.38 µV |
Measured on ngspice 42 (241 of 1201 frequencies). rtHz is √Hz.
Read the two curves together. The larger resistor makes more noise per hertz, but its corner sits ten times lower, so it passes ten times fewer hertz. On the lower panel both running totals rise to the same 64.37 µV.
Why the resistor drops out
The step that removes R is the noise bandwidth: the width of an ideal brick-wall filter that passes the same noise power as the real one. For a single pole it is π/2 times the −3 dB frequency.
Density
The resistor gives 4kTR V2/Hz. For 10 kΩ at 27 °C that is (12.87 nV)2 per hertz.
Noise bandwidth
One pole at f-3dB = 1/(2πRC) passes noise like a brick wall of width (π/2)·f-3dB = 1/(4RC). For 10 kΩ and 1 pF: 25 MHz.
Multiply
vn2 = 4kTR · 1/(4RC) = kT/C. R cancels. For 1 pF at 300.15 K: (64.37 µV)2.
Check on the simulator
The lab prints 64.37 µV for 10 kΩ, and the hook's run gives 64.37 µV for 1 kΩ and for 100 kΩ.
The table below changes one thing at a time on the simulator. Resistance does nothing, while capacitance and temperature act exactly as √(kT/C) says they should.
| Circuit | √(kT/C) by hand | Simulated total |
|---|---|---|
| 1 kΩ, 1 pF, 27 °C | 64.37 µV | 64.37 µV |
| 10 kΩ, 1 pF, 27 °C | 64.37 µV | 64.37 µV |
| 100 kΩ, 1 pF, 27 °C | 64.37 µV | 64.37 µV |
| 10 kΩ, 0.25 pF, 27 °C | 128.7 µV | 128.7 µV |
| 10 kΩ, 4 pF, 27 °C | 32.19 µV | 32.19 µV |
| 10 kΩ, 1 pF, −40 °C | 56.74 µV | 56.74 µV |
| 10 kΩ, 1 pF, 125 °C | 74.14 µV | 74.14 µV |
Simulated with 100 points per decade from 1 Hz to 1 THz. The hand values use k = 1.380649 × 10−23 J/K, the constant ngspice prints as boltz.
Bits cost capacitance
Every switched-capacitor circuit and every sample-and-hold freezes this noise on its capacitor at the instant the switch opens. The frozen value is random from sample to sample, with the rms value √(kT/C). An analog-to-digital converter (ADC) with N bits over a range VFS has steps of VFS/2N, one LSB (least significant bit). A common budget keeps the sampled noise under half an LSB.
Solve √(kT/C) = LSB/2 for C to get C = kT/(LSB/2)2. Each extra bit halves the LSB, so C grows four times, and the circuit that charges it in the same time needs about four times the current.
| Bits (1 V range) | Half an LSB | C = kT/(LSB/2)2 | Simulated noise with that C |
|---|---|---|---|
| 8 | 1.953 mV | 1.086 fF | 1.952 mV |
| 10 | 488.3 µV | 17.38 fF | 488.3 µV |
| 12 | 122.1 µV | 278.1 fF | 122.1 µV |
Each row is an RC with 100 kΩ and the capacitor shown, measured on ngspice 42. Real converters add margin for other noise.
So a lower switch resistance buys speed, which matters for settling, but it never buys lower sampled noise. Only the capacitor sets that, as the two benches below show.
A quieter switch
R1 in out 1k
C1 out 0 1p
noise v(out) V1 dec 100 1 1T
64.37 µV, the same as with 10 kΩ. The noise moved to higher frequencies.
A larger capacitor
R1 in out 10k
C1 out 0 4p
noise v(out) V1 dec 100 1 1T
32.19 µV: four times the capacitance halves the noise.
Both from the hook's run on ngspice 42.
Asked in interviews
Derive kT/C noise.
A resistor's noise 4kTR V2/Hz passes through one pole at 1/(2πRC). Its noise bandwidth is π/2 times that, 1/(4RC). Multiply: 4kTR/(4RC) = kT/C. For 1 pF at room temperature, 64.4 µV rms.
Why does the resistor value not matter?
A larger R makes more noise per hertz, and in the same proportion lowers the bandwidth that reaches the capacitor. The product is fixed. R only decides how fast the noise moves, which matters for settling.
What does kT/C mean for ADC resolution and power?
Half an LSB of noise needs C ≥ kT/(LSB/2)2. One more bit halves the LSB, so C grows four times. Driving four times the capacitance in the same time takes about four times the current.
Try it
Run it: vn is the simulated total and ktc is √(kT/C) from the same run. They agree to 0.002 %; the rest is the integration over 100 points per decade. Open Plots to see the density that vn integrates.
Now change R1 to 1k, then 100k, and predict vn before each run. Then change C1 to 4p (and 1p in the ktc line), and add .temp 125. Only the last two move the answer.
Run the netlist to draw its plots here.
vn = 6.437300e-05 ktc = 6.437404e-05Check yourself
Remember
- The total thermal noise on a capacitor fed through any resistor is √(kT/C): 64.37 µV rms for 1 pF at 27 °C.
- R drops out because the density 4kTR grows with R while the noise bandwidth 1/(4RC), π/2 times f-3dB, shrinks with it.
- To halve sampled noise, make C four times larger; each extra ADC bit costs four times the capacitance and the drive current.
- A noise total integrates the sweep: run it well past the corner, with enough points per decade, and copy it into a dc or ac plot to measure it.