<< Chapter < Page | Chapter >> Page > |
In digital filters, both the data at various places in the filter, which are continually varying, and the coefficients, whichare fixed, must be quantized. The effects of quantization on data and coefficients are quite different, so they are analyzedseparately.
Typically, the input and output in a digital filter are quantized by the analog-to-digital and digital-to-analog converters,respectively. Quantization also occurs at various points in a filter structure, usually after amultiply, since multiplies increase the number of bits.
There are two common possibilities for quantization in a direct-form FIR filter structure:after each multiply, or only once at the end. In the latter structure, a double-length accumulator adds all bits of each product into the accumulating sum, and truncates only at the end. Obviously, this is muchpreferred, and should always be used wherever possible. All DSP microprocessors and mostgeneral-pupose computers support double-precision accumulation.
Similarly, the transpose-form FIR filter structure presents two common options for quantization: after each multiply, or once at the end.
The transpose form is not as convenient in terms of supporting double-precision accumulation, which is asignificant disadvantage of this structure.
Since a quantized coefficient is fixed for all time, we treat it differently than data quantization. The fundamental questionis: how much does the quantization affect the frequency response of the filter?
The quantized filter frequency response is Assuming the quantization model is correct, should be fairly random and white, with the error spread fairly equally over all frequencies ; however, the randomness of this error destroys any equiripple property or any infinite-precision optimality of a filter.
What quantization scheme minimizes the quantization error in frequency (minimizes )? On average, how big is this error?
Ideally, if one knows the coefficients are to be quantized to bits, one should incorporate this directly into the filter design problem, and find the -bit binary fractional coefficients minimizing the maximum deviation( error). This can be done, but it is an integer program, which is known to be np-hard (i.e., requires almost abrute-force search). This is so expensive computationally that it'srarely done. There are some sub-optimal methods that are much more efficient and usually produce pretty good results.
Notification Switch
Would you like to follow the 'Digital filter structures and quantization error analysis' conversation and receive update notifications?