For a given desired frequency response H!, the corresponding impulse response
(filter coefficients) h(n) can be calculated for a non-recursive filter if the integral (5.3.2)
or (5.3.3) can be evaluated. However, in practice there are two problems with this simple
design technique. First, the impulse response for a filter with any sharpness to its
frequency response is infinitely long. Working with an infinite number of coefficients
is not practical. Second, with negative values of n, the resulting filter is non-causal, thus
is non-realizable for real-time applications.
A finite-duration impulse response fh
H
ng of length L 2M 1 that is the best
approximation (minimum mean-square error) to the ideal infinite-length impulse
response can be simply obtained by truncation. That is,
h
H
n hn, ÀM n M
0,
otherwise.
&
5:3:5
Note that in this definition, we assume L to be an odd number otherwise M will not be
an integer. On the unit circle, we have z e
j!
and the system transfer function is
expressed as
H
H
z
M
nÀM
h
H
nz
Àn
:
5:3:6
It is clear that this filter is not physically realizable in real time since the filter must
produce an output that is advanced in time with respect to the input.
A causal FIR filter can be derived by delaying the h
H
n sequence by M samples.
That is, by shifting the time origin to the left of the vector and re-indexing the
coefficients as
b
H
l
h
H
l À M, l 0, 1, . . . , 2M:
5:3:7
The transfer function of this causal FIR filter is
B
H
z
LÀ1
l0
b
H
l
z
Àl
:
5:3:8
This FIR filter has L 2M 1 coefficients b
H
l
, l 0, 1, . . . , L À 1. The impulse
response is symmetric about b
H
M
due to the fact that hÀn hn given in (5.3.4). The
duration of the impulse response is 2MT where T is the sampling period.
From (5.3.6) and (5.3.8), we can show that
B
H
z z
ÀM
H
H
z
5:3:9
and
B
H
! e
Àj!M
H
H
!:
5:3:10
DESIGN OF FIR FILTERS
203