According to IEEE Standard 1241-2010 for Terminology and Test Methods for Analog-to-Digital Converters you have a missing code if the following inequation is true (page 44):

\$ DNL[k] \leq -0.9 \$

But according to the book: Analog-to-Digital Conversion by Pelgrom(Second Edition) you have got a missing code when DNL = -1.

From my point of understanding the second definition should be the right one because once a step has got twice the size of a normal LSB, a code is missing.

So here is my question:

Which one of these two definitions is the right one or are both valid?


You are right, in order for a code to be completely missing the DNL has to be equal to -1.

The IEEE standard is just a little bit stricter, it requires that the bin have a minimum width, such that the DNL is smaller than or equal to -0.9.

So, technically for an DNL between -1 and -0.9 the code is there, but according to the IEEE standard such a performance no longer qualifies as "no missing code" in the sense of the standard. It's just a definition.

IEEE Standard 1057 is a little bit clearer:

DNL is the difference between a specified code bin width and the average code bin width, divided by the average code bin width. When given as one number without a code bin specification, it is the maximum DNL of the entire range. A code is generally defined to be a missing code if the DNL for the code is less than −0.9.

  • \$\begingroup\$ Is there any note in the standard 1241 regarding this strictness? \$\endgroup\$ – Don Oct 4 '16 at 19:11
  • \$\begingroup\$ No it's not (yet) mentioned there. But looking at the 1057 standard it should become clear that this is a definition (" ... is generally defined to be ...). \$\endgroup\$ – Mario Oct 4 '16 at 19:20

DL is an overall measurement parameter but does not isolate the root cause if it fails. The difference in definition is somewhat academic.

side notes

I have found most missing codes occur due to ground shift noise between AG and DG. The result is noise on Vref due to SAR DAC noise pulses near boundaries of xxxx1111xxx and xxx10000xxx transitions and not R ratio tolerances.

  • However you may find these test methods useful.


I prefer to use linear ramps and full sine freq. sweeps to detect or verify "missing code" issues in full environmental testing.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.