<< Chapter < Page | Chapter >> Page > |
Coefficient quantization is an important concern with IIR filters, since straigthforward quantization often yields poor results, and becausequantization can produce unstable filters.
The performance and stability of an IIR filter depends on the pole locations, so it is important to know howquantization of the filter coefficients ${a}_{k}$ affects the pole locations ${p}_{j}$ . The denominator polynomial is $$D(z)=1+\sum_{k=1}^{N} {a}_{k}z^{-k}=\prod_{i=1}^{N} 1-{p}_{i}z^{(-1)}$$ We wish to know $\frac{\partial^{1}{p}_{i}()}{\partial {a}_{k}}$ , which, for small deviations, will tell us that a $$ change in ${a}_{k}$ yields an $=\frac{\partial^{1}{p}_{i}()}{\partial {a}_{k}}$ change in the pole location. $\frac{\partial^{1}{p}_{i}}{\partial {a}_{k}}$ is the sensitivity of the pole location to quantization of ${a}_{k}$ . We can find $\frac{\partial^{1}{p}_{i}}{\partial {a}_{k}}$ using the chain rule. $$(z, , \frac{\partial^{1}A(z)}{\partial {a}_{k}})=(z, , \frac{\partial^{1}A(z)}{\partial z}\frac{\partial^{1}z}{\partial {a}_{k}})$$ $$$$ $$\frac{\partial^{1}{p}_{i}}{\partial {a}_{k}}=\frac{(z, , \frac{\partial^{1}A({z}_{i})}{\partial {a}_{k}})}{(z, , \frac{\partial^{1}A({z}_{i})}{\partial z})}$$ which is
How can we reduce this high sensitivity to IIR filter coefficient quantization?
Cascade or parallel form implementations! The numerator and denominator polynomials can be factored off-line at very high precision and grouped intosecond-order sections, which are then quantized section by section. The sensitivity of the quantization is thus thatof second-order, rather than $N$ -th order, polynomials. This yields major improvements in the frequency response of theoverall filter, and is almost always done in practice.
Note that the numerator polynomial faces the same sensitivity issues; the cascade form also improves the sensitivity of the zeros, because they arealso factored into second-order terms. However, in the parallel form, the zeros are globally distributed across the sections, so they suffer fromquantization of all the blocks. Thus the cascade form preserves zero locations much better than the parallel form, which typically meansthat the stopband behavior is better in the cascade form, so it is most often used in practice.
What is the worst-case pole pair in an IIR digital filter?
The pole pair closest to the real axis in the z-plane, since the complex-conjugate poles will be closest together and thus have thehighest sensitivity to quantization.
In a direct-form or transpose-form implementation of a second-order section, the filter coefficients are quantized versions of the polynomial coefficients. $$D(z)=z^{2}+{a}_{1}z+{a}_{2}=(z-p)(z-\overline{p})$$ $$p=\frac{(-{a}_{1}, \sqrt{{a}_{1}^{2}-4{a}_{2}})}{2}$$ $$p=re^{i}$$ $$D(z)=z^{2}-2r\cos +r^{2}$$ So $${a}_{1}=-(2r\cos )$$ $${a}_{2}=r^{2}$$ Thus the quantization of ${a}_{1}$ and ${a}_{2}$ to $B$ bits restricts the radius $r$ to $r=\sqrt{k{}_{B}}$ , and ${a}_{1}=-(2\Re (p))=k{}_{B}$ The following figure shows all stable pole locations after four-bit two's-complement quantization.
Note the nonuniform distribution of possible polelocations. This might be good for poles near $r=1$ , $=\frac{\pi}{2}$ , but not so good for poles near the origin or the Nyquist frequency.In the "normal-form" structures, a state-variable based realization, the poles are uniformly spaced.
This can only be accomplished if the coefficients to bequantized equal the real and imaginary parts of the pole location; that is, $${}_{1}=r\cos =\Re (r)$$ $${}_{2}=r\sin =\Im (p)$$ This is the case for a 2nd-order system with the state matrix $A=\begin{pmatrix}{}_{1} & {}_{2}\\ -{}_{1} & {}_{1}\\ \end{pmatrix}$ : The denominator polynomial isThe normal form has a number of other advantages; both eigenvalues are equal, so it minimizes the norm of $Ax$ , which makes overflow less likely, and it minimizes the output variance due to quantization of the statevalues. It is sometimes used when minimization of finite-precision effects is critical.
What is the disadvantage of the normal form?
It requires more computation. The general state-variable equation requires nine multiplies, rather than the five used by the Direct-Form II or Transpose-Form structures.
Notification Switch
Would you like to follow the 'Digital signal processing: a user's guide' conversation and receive update notifications?