10. Choice of Table Size

It appears that
you are using AdBlocking software. The cost of running this website
is covered by advertisements. If you like it please feel free to
a small amount of
money to secure the future of this website.

It appears that
you are using AdBlocking software. The cost of running this website
is covered by advertisements. If you like it please feel free to
a small amount of
money to secure the future of this website.

Choice of Table Size

It is desirable that the stored filterimpulse
response be sampled sufficiently densely so that interpolating
linearly between samples does not introduce error greater than the
quantization error. We will show that this condition is satisfied
whenever the filter table contains at least entries per zero-crossing, where is the number of bits allocated to each table entry.

Let denote the lowpass filter impulse response, and assume it
is twice continuously differentiable for all . By Taylor's theorem[Goldstein 1967,
p. 119], we have

for some , where denotes the time derivative of evaluated at , and is the second derivative at.

The linear interpolation error is defined as

where , , , and is the interpolated value given by

where and . Thus and are successive time instants for which samples of
are available, and is the linear interpolation factor. (We ignore errors
in the linear interpolation itself at this point.)

Expressing as

applying Eq. (2.6.1)
to both terms on the right-hand side, and subtracting
Eq. (2.6.1)
gives

where both and are in . Defining

and noting that for some which implies

we obtain the upper bound

Application to the Ideal Lowpass Filter.

For the ideal lowpass filter, we have

where , and is the number of table entries per zero-crossing.
Note that the rightmost form in Eq. (2.6.1) is
simply the inverse Fourier transform of the ideal lowpass-filter
frequency
response. Twice differentiating with respect to , we obtain

from which it follows that the maximum magnitude is

Note that this bound is attained at . Substituting Eq. (2.6.1)
into Eq. (2.6.1),
we obtain the error bound

Thus for the ideal lowpass filter , the pointwise error in the
interpolated lookup of is bounded by . This means that must be about half the coefficient word-length
used for the filter coefficients. For example, if
is quantized to bits, must be of the order of . In contrast, we will show that without linear
interpolation, must increase proportional to for -bit samples of . In the -bit case, this gives . The use of linear interpolation of the filter coefficients
reduces the memory requirements considerably.

The error bounds obtained for the ideal lowpass filter are
typically accurate also for lowpass filters used in practice. This
is because the error bound is a function of , the maximum curvature of the impulse response , and most lowpass designs will have a value of
very close to that of the ideal case. The maximum
curvature is determined primarily by the bandwidth of the filter
since, generalizing equations Eq. (2.6.1)
and Eq. (2.6.1),

which is just the second moment of the lowpass-filter frequency response (which is real for symmetric FIR filters obtained
by symmetrically windowing the ideal sinc function [Rabiner
and Gold 1975]). A lowpass-filter design will move the cut-off frequency
slightly below that of the ideal lowpass filter in order to provide
a ``transition band'' which allows the filter response to give
sufficient rejection at the ideal cut-off frequency which is where
aliasing begins. Therefore, in a well designed
practical lowpass filter, the error bound should be lower than in the ideal case.

Relation of Interpolation Error to Quantization Error.

If is approximated by which is represented in two's complement fixed-pointarithmetic, then

where is the th bit, and the worst-case rounding error is

Letting , where , the interpolated look-up becomes

Thus the error in the interpolated lookup between quantized filter
coefficients is bounded by

which, in the case of , can be written

If , then , and the interpolation error is less
than the quantization error by more than a factor of .

Error in the Absence of Interpolation.

For comparison purposes, we derive the error incurred when no
interpolation of the filter table is performed. In this case,
assuming rounding to the nearest table entry, we have