## Quantization

Before discussing ADC specs further, I thought it would be appropriate to discuss what ADC does in detail. ADC converts an analog signal (continuous in time and continuous in amplitude) to a digital representation(Discrete in time and discrete in amplitude).
The discretization of time is called sampling and the discretization of  amplitude is called quantization. So essentially the analog-to-digital conversion is a combination of sampling and quantization. I’ll discuss about quantization in this post.

Let’s say we have a analog signal of amplitude 0-5V and we want to convert it to a digital signal using a 3 bit ADC. A three bit digital signal will have 8 level associated with it (From 000 to 111). So we can divide the input range into 8 equal segments and associate each segment with a digital level. This is what is called uniform quantization and usually implemented in all commercial ADCs.  In the process of quantization, we’re throwing away some information. This difference between input signal and quantized signal is called as quantization error.  Having more number of bits in digital signal means having  better estimate of input i.e., less quantization error. For modeling purposes, the digital signal at the output can be considered to be sum of a clean analog signal and quantization noise which represents quantization error. (Although this quantization noise is not really a random signal).
The transfer function of this sort of quantization is shown in below figure.

A conventional ADC does not take into account the statistics of input signal. It is optimal for uniformly distributed signals because we split the input range into equal segments and assign each to a digital level. Knowing the statistics of the input signal is beneficial in quantizer design. For example, if the input signal is known to concentrate around a certain value x, one can design an ADC that has small quantization step sizes in the regions around x, and larger quantization step sizes in other regions. This design effectively reduces the quantization errors for most of the input values, resulting in small average quantization error. This sort of quantization is called non-uniform quantization. For comparison, the transfer functions of ADC having uniform quantizer and non uniform quantizer are shown below.

There are several ways to implement non uniform quantization.

1. Use an amplifier with non linear gain and apply resultant signal to uniform quantizer. This technique is commonly termed as companding.
2. Adjust the ADC quantization levels directly. For example the threshold values can be varied in a flash converter by varying the resistor string.
3. Have a uniform quantizer and use a look up table kind of approach to generate non uniform quantized values.

One common application of this non uniform quantizer can be found in speech communication. Audio and voice signals have higher-densities of smaller values. Different companding techniques like μ-law and A-law are used to take advantage of such input-distribution.