34
D. Rocchesso: Sound Processing
circular buffer
signal flowgraphs
taps
tapped delay line
Auto-Regressive Moving
Average
filter order
The three memory words are put in an area organized as a circular buffer.
The input is written to the word pointed by the index and the three preceding
values of the input are read with the three preceding values of the index. At
every sample instant, the four indexes are incremented by one, with the trick of
beginning from location 0 whenever we exceed the length M of the buffer (this
ensures the circularity of the buffer). The counterclockwise arrow indicates the
direction taken by the indexes, while the clockwise arrow indicates the movement
that should be done by the data if the indexes would stay in a fixed position.
In fig. 13 we use small triangles to indicate the multiplications by the filter
coefficients. This is a notation commonly used for multiplications within the
signal flowgraphs that represent digital filters. As a matter of fact, an FIR filter
contains a delay line since it stores N consecutive samples of the input sequence
and uses each of them with a delay of N samples at most. The points where the
circular buffer is read are called taps and the whole structure is called a tapped
delay line.
2.2
IIR Filters
In general, a causal IIR filter is represented by a difference equation where
the output signal at a given instant is obtained as a linear combination of
samples of the input and output signals at previous time instants. Moreover,
an instantaneous dependency of the output on the input is also usually included
in the IIR filter. The difference equation that represents an IIR filter is
y(n) = -
N
m=1
a
m
y(n - m) +
M
m=0
b
m
x(n - m) .
(24)
Eq. (24) is also called Auto-Regressive Moving Average (ARMA) representation.
While the impulse response of FIR filters has a finite time extension, the impulse
response of IIR filters has, in general, an infinite extension. The transfer function
is obtained by application of the Z transform to the sequence (24). In virtue
of the shift theorem, the Z transform is a mere operatorial substitution of each
translation by m samples with a multiplication by z
-m
. The result is the rational
function H(z) that relates the Z transform of the output to the Z transform of
the input:
Y (z) =
b
0
+ b
1
z
-1
+ . . . + b
M
z
-M
1 + a
1
z
-1
+ . . . + a
N
z
-N
X(z) = H(z)X(z) .
(25)
The filter order is defined as the degree of the polynomial in z
-1
that is the
denominator of (25).
2.2.1
The Simplest IIR Filter
In this section we analyze the properties of the simplest nontrivial IIR filter that
can be conceived: the one-pole filter having coefficients a
1
= -
1
2
and b
0
=
1
2
:
y(n) =
1
2
y(n - 1) +
1
2
x(n) .
(26)
Next Page >>
<< Previous Page