Home/Tools

ADC resolution calculator

LSB size and ideal SNR for any bit count and range (305.2 µV and 98.08 dB for 16 bits on ±10 V), plus noise-free bits once you enter the datasheet noise.

LSB size (code width)
Codes
Input span
Ideal SNR (6.02N + 1.76)
Quantization noise rms
Smallest change you can see

LSB size, codes and ideal SNR

codes     = 2^N
LSB       = (V_max - V_min) / (gain * 2^N)
ideal SNR = 6.02 * N + 1.76 dB
q_noise   = LSB / sqrt(12)

The LSB, or code width, is the smallest voltage step the converter can report. A 16-bit converter on a ±10 V range spreads 65,536 codes over 20 V, so one LSB is 305.2 µV. On ±1 V the same converter’s LSB is 30.5 µV. Choosing the smallest range that still covers your signal is the cheapest way to gain resolution, and a gain stage ahead of the ADC does the same by shrinking the input span.

The ideal SNR, 6.02N + 1.76 dB, assumes a full-scale sine and no noise except quantization noise, whose rms value is LSB/√12, or 0.29 LSB. A 16-bit converter tops out at 98.08 dB on that basis, which no real device reaches.

Noise-free bits and effective resolution

Real converters, and the amplifiers and multiplexers ahead of them, add noise that datasheets give in LSB rms or µV rms. Two figures turn that noise into bits:

effective resolution = log2(FSR / noise_rms)
noise-free bits      = log2(FSR / (6.6 * noise_rms))

FSR is the full-scale input span. The factor 6.6 converts rms noise to an approximate peak-to-peak value, because 99.9% of Gaussian noise falls within ±3.3σ. Noise-free bits count how many bits stay steady from one reading to the next, so they tell you what change a single reading can show. Effective resolution, the figure many sigma-delta datasheets quote, always comes out 2.72 bits higher (log2 6.6).

Neither figure is ENOB from a dynamic test. ENOB comes from SINAD measured with a sine input, ENOB = (SINAD − 1.76) / 6.02, and it includes distortion as well as noise.

Worked example: 16 bits on ±10 V with 1.2 LSB rms noise

One LSB is 20 V / 65,536 = 305.2 µV, so 1.2 LSB rms of noise is 366.2 µV rms. Effective resolution is log2(65,536 / 1.2) = 15.74 bits. Noise-free resolution is log2(65,536 / (6.6 × 1.2)) = 13.01 bits. The smallest change that clears the noise band in one reading is 6.6 × 366.2 µV = 2.42 mV, about eight LSBs. With a sensor that puts out 10 mV per unit, single readings resolve about 0.24 units. Averaging 16 readings cuts random noise by a factor of four, to about 0.06 units, and leaves a sixteenth of the sample rate. The 1.2 LSB figure is an example. Use the noise your device’s datasheet gives for the range you plan to use.

Resolution, accuracy and range errors

A small LSB says nothing about offset error, gain error, temperature drift or nonlinearity. Absolute accuracy on a general-purpose DAQ device is usually specified as many LSBs, often several millivolts on a ±10 V range, so a 16-bit reading can be repeatable to 2 mV and still be off by more than that. The guide to ADC resolution vs accuracy covers accuracy specs in more detail.

Questions

What is the resolution of a 16-bit ADC on a ±10 V range?

One LSB is 20 V / 65,536 = 305.2 µV. On ±1 V the same converter resolves 30.5 µV. Noise usually makes the smallest visible change several LSBs larger.

What is the difference between noise-free bits and effective resolution?

Effective resolution is log2(full scale / rms noise). Noise-free bits use peak-to-peak noise, approximated as 6.6 × rms, so they come out 2.72 bits lower and describe how many bits stay steady from reading to reading.

How do I calculate LSB size?

Divide the input span by 2 to the power of the bit count: LSB = (V_max − V_min) / 2^N. Divide by the gain as well if there is an amplifier ahead of the converter.

Is a 24-bit DAQ really 24 bits?

Rarely. Noise in a 24-bit sigma-delta converter usually leaves far fewer noise-free bits, and the count falls as the data rate rises. The datasheet noise figure at your data rate tells you how many are left.