Gain Error

ADC Errors

All analog converters are not ideal. There are always some manufacturing defects and non-ideal material properties which lead to the introduction of some errors in the system. Well, these errors can be critical when the measurement needs to meet some precision criteria. We had a comprehensive and a through study of quantization error up till now. Let us delve into other errors that may have a pernicious influence on an ADCs reading.

Note: The lexicon of analog devices has a wide range of vocabulary. Different documents use different terms. In case you come across an obscure term, fell free to visit my previous posts to get aligned with the terms used here.

ADC Errors

ADC errors can be classified into these four main categories :

  • Offset Error (Zero-Scale error)
  • Full-Scale Error
  • Differential Linearity Error
  • Integral Linearity Error

Other error related topics include :

  • Missing Code
  • Total unadjusted Error

Offset Error

In an ideal ADC converter, an input voltage of Q/ 2 (or LSB/2) will cause an output code transition from zero to a count of one. Any deviation from this is called an offset error. It is also known as Zero-Scale Error. This error can be positive or negative depending upon the first transition point.

Offset error

Full-Scale Error

In an ideal A/D converter, the output code transition to full scale occurs when the input voltage is
(Vref – 1½ LSB) or Vref  * (2n-1.5) / 2n.
In an actual A/D converter, the full-scale analog input causing this transition may differ somewhat from this ideal value. Similar to Offset Error, depending upon the first transition point, this error also can be positive or negative.

Fullscale error

Both, Offset Error and Full-Scale Error may be expressed in percent of full-scale voltage, Volts or in LSB.

Gain Error

Gain Error is generally not recognized as an individual error as in most cases it is the by-product of Offset Error, Full-Scale Error or both. As mentioned in earlier posts, the Ideal Transfer Function of an ADC is a straight line from the minimum input voltage (voltage reference low; VRef-) to the maximum input voltage (voltage reference high; VRef+). Gain Error occurs when there is a deviation from ideal slope of the transfer function.

Gain Error

The actual formula for output code is:
Output = 2n x G x Vin / Vref
n =  Number of ADC bits or Resolution
G = Gain factor
Vin  = Analog input voltage
Vref = Reference voltage

In ideal A/D converter the gain factor (G) is equal to 1. So in most cases, G is assumed as 1, resulting in the formula for output code being:
Output = 2n x Vin / Vref

Differential Linearity Error

Differential Linearity Error or DLE is caused by Differential Non-Linearity (DNL) in ADC output. What is DNL? For an ideal ADC, the output is divided into 2n uniform steps each with the width equal to 1 LSB. Any deviation from the ideal step width is the Differential Non-Linearity (DNL). It is expressed as counts. DNL is a function of each ADC’s particular architecture. It is not possible to remove its effects with calibration.


DNL-Deviation of code width from 1 LSB.

DNL = | [(VD+1– VD) / VLSB(IDEAL))] – 1 | , where 0 < D < 2– 2.
VD = physical value corresponding to the digital output code D
n = ADC resolution
V(LSB-IDEAL) = ideal spacing for two adjacent digital codes.

Integral Linearity Error

Integral Linearity Error or ILE is caused by Integral Non-Linearity (INL) in ADC output. Differential Linearity Errors accumulate to produce a total Integral Non-Linearity (INL). It is defined as the maximum deviation from the ideal slope of the ADC and is measured from the center of the step. It is expressed as counts. INL is a function of each ADCs particular architecture. It is not possible to remove its effects with calibration.


INL-Deviation of code transition from its  ideal location (deviation from ideal transfer function curve).

INL = | [(VD – VZERO)/VLSB-IDEAL] – D | , where 0 < D < 2n-1.
VD = physical value corresponding to the digital output code D
VZERO = minimum analog input corresponding to an all-zero output code
n = ADC resolution
V(LSB-IDEAL) = ideal spacing for two adjacent digital codes.

INL does not include quantization errors, offset error, or gain error. It is a measure of the straightness of the transfer function and can be greater than the differential non-linearity. The size and distribution of the DNL errors will determine the integral linearity of the converter.

Effect of INL and DNL on SNR

DNL and INL are both static specifications, which relate to SNR, a dynamic specification. However, noise performance can not be predicted from DNL and INL performance, except to say that SNR tends to become worse as DNL or INL depart from zero. In simple words, higher values of DNL or INL usually limit the ADC’s performance in terms of Signal-to-Noise Ratio (SNR).

To know more about INL and DNL, refer the following link by Maxim Integrated.

Missing Code

When no value of input voltage will produce a given output code, such that the code in question never appears in the output, that code is missing from the transfer function and is known as a missing code.

Missing Code

To avoid missing codes in the transfer function, DNL or DLE should be greater (more positive) than -1.0 LSB and less than 1 LSB.

Many A/D converter datasheets specify ‘no missing codes’ as this specification can be critical in some applications, such as in servo systems.

Total Unadjusted Error

Although gain and offset errors can be trimmed externally, trimming increases costs and sometimes reduces reliability. When a designer wishes to meet a specific error budget, it is desirable to have a single specification that places a limit on errors from all sources. If this overall error limit is acceptable, no adjustments need to be made during manufacture of the end product. Total Unadjusted Error (TUE) is a comprehensive specification that includes linearity errors, gain error, and offset error. It is the worst-case deviation from the ideal device performance.

TUE is a static specification. That is, it is useful for applications with d.c. or slowly moving input signals. Such applications include, for example, digitizing the outputs of weight scales and of temperature and pressure sensors.

To know more about TUE, Click on this link by TI, which explains Total Unadjusted Error with simplicity.

Note: If the total unadjusted error is much larger than any one of the other error specifications, it makes sense to include separate data sheet limits for each of the errors. Otherwise, a device with ±1/2 LSB linearity and ±2 LSB full-scale error might be classified simply as a “2 LSB” part and the user wouldn’t know that the device could provide excellent performance in applications that require linearity but don’t need full-scale accuracy.

Why study errors?

For hobbyists, ADC errors are mainly insignificant. But knowing about them is important because one should be aware about the presence of some ambiguity in the readings. Errors do become significant when measuring large voltages or even when very minute changes need to be perceived. For almost all hobby applications this may be trivial but for precise applications this becomes critical.

If you want to know more about ADCs and Analog devices, you can go through the post-series page of Analog Converters.

One thought on “ADC Errors”

Leave a Reply

Your email address will not be published. Required fields are marked *