Digital Signal Processing Reference
In-Depth Information
Build and run this project as sweepDE . Verify that the output is a swept sinu-
soidal signal.
Example 5.5: IIR Inverse Filter ( IIRinverse )
This example illustrates an IIR inverse filter. With noise as input, a forward IIR filter
is calculated. The output of the forward filter becomes the input to an inverse IIR
filter. The output of the inverse filter is the original input noise sequence. See
Example 4.9, which implements an inverse FIR filter, and Example 5.1, which imple-
ments an IIR filter.
The transfer function of an IIR filter is
N
-
1
Â
Â
-
i
az
i
() =
Hz
i
=
0
M
1
bz
-
j
j
j
=
1
The output sequence of the IIR filter is
N
-
1
M
-
1
Â
Â
() =
(
) -
(
)
yn
axn i
-
byn
-
j
i
j
i
=
0
j
=
1
i ) represents the input sequence. The input sequence x ( n ) can then be
recovered using ˆ ( n ) as an estimate of x ( n ), or
where x ( n
-
M
-
1
N
-
1
Â
Â
() +
(
) -
(
)
ˆ
yn
byn
-
j
axn i
-
j
i
() =
j
=
1
i
=
1
ˆ
xn
a
0
The program IIRinverse.c (Figure 5.23) implements the inverse IIR filter.
Build this project as IIRinverse . Use noise as input to the system. Run the
program and verify that the resulting output is the input noise (with the slider in
the default position 1).
Change the slider to position 2 and verify that the output of the forward IIR filter
is an IIR bandpass filter centered at 2 kHz. The coefficient file bp2000.cof was
used in Example 5.1 to implement an IIR filter. With the slider in position 3, verify
that the output of the inverse IIR filter is the original input noise.
In this example, the forward filter's characteristics are known. This example can
be extended so that the filter's characteristics are unknown. In such a case, the
unknown forward filter's coefficients, a 's and b 's, can be estimated using Prony's
method [9].
Search WWH ::




Custom Search