FIR Filters
Introduction
A filter is a frequency selective system. Digital filters are classified as finite duration unit impulse response (FIR) filters or infinite duration unit impulse response (IIR) filters, depending on the form of the unit impulse response of the system. In the FIR system, the impulse response sequence is of finite duration, i.e., it has a finite number of non-zero terms.
The IIR system has an infinite number of non-zero terms, i.e., its impulse response sequence is of infinite duration. IIR filters are usually implemented using recursive structures (feedbackpoles and zeros) and FIR filters are usually implemented using non-recursive structures (no feedback-only zeros). The response of the FIR filter depends only on the present and past input samples, whereas for the IIR filter, the present response is a function of the present and past values of the excitation as well as past values of the response.
Advantages of FIR filter over IIR filters:
- FIR filters are always stable
- FIR filters with exactly linear phase can easily be designed.
- FIR filters can be realized in both recursive and non-recursive structures.
- FIR filters are free of limit cycle oscillations, when implemented on a finite word length digital system
- Excellent design methods are available for various kinds of FIR filters.
Disadvantages of FIR filters:
- The implementation of narrow transition band FIR filters is very costly, as it requires considerably more arithmetic operations and hardware components such as multipliers, adders and delay elements.
- Memory requirement and execution time are very high.
FIR filters are employed in filtering problems where linear phase characteristics within the pass band of the filter are required. If this is not required, either an FIR or an IIR filter may be employed. An IIR filter has lesser number of side lobes in the stop band than an FIR filter with the same number of parameters. For this reason if some phase distortion is tolerable, an IIR filter is preferable. Also, the implementation of an IIR filter involves fewer parameters, less memory requirements and lower computational complexity
Design techniques of FIR Filters
The well known methods of designing FIR filters are as follows:
- Fourier series method
- Window method
- Frequency sampling method
- Optimum filter design
In Fourier series method, the desired frequency response Hd(n) is converted to a Fourier series representation by replacing n by 2*pi*fT, where T is the sampling time. Then using this expression, the Fourier coefficients are evaluated by taking inverse Fourier transform of Hd(n), which is the desired impulse response of the filter hd(n).
The Z-transform of hd(n) gives Hd(z) which is the transfer function of the desired filter. The Hd(z) obtained from Hd(n) will be a transfer function of unrealizable non causal digital filter of infinite duration. A finite duration impulse response h(n) can be obtained by truncating the infinite duration impulse response hd(n) to N-samples. Now, take Z-transform of h(n) to get H(z). This H(z) corresponds to a non-causal filter. So multiply this H(z) by zā(Nā1)/2 to get the transfer function of realizable causal filter of finite duration.
In window method, we begin with the desired frequency response specification Hd(n) and determine the corresponding unit sample response hd(n). The hd(n) is given by the inverse Fourier transform of Hd(n). The unit sample response hd(n) will be an infinite sequence and must be truncated at some point, say, at n = N ā 1 to yield an FIR filter of length N. The truncation is achieved by multiplying hd(n) by a window sequence w(n). The resultant sequence will be of length N and can be denoted by h(n).
The Z-transform of h(n) will give the filter transfer function H(z). There have been many windows proposed like Rectangular window, Triangular window, Hanning window, Hamming window, Blackman wndow and Kaiser window that approximate the desired characteristics.
In optimum filter design method, the weighted approximation error between the desired frequency response and the actual frequency response is spread evenly across the pass band and evenly across the stop band of the filter. This results in the reduction of maximum error. The resulting filter have ripples in both the pass band and the stop band. This concept of design is called optimum equiripple design criterion.
The various steps involved in designing FIR filters are as follows:
- Choose an ideal(desired) frequency response, Hd(n).
- Take inverse Fourier transform of Hd(n)) to get hd (n) or sample Hd(n) at finite number of points (N-points) to get H(k)
- If hd(n) is determined, then convert the infinite duration hd(n) to a finite duration h(n) (usually h(n) is an N-point sequence) or if H(k) is determined, then take N-point inverse DFT to get h(n).
- Take Z-transform of h(n) to get H(z), where H(z) is the transfer function of the digital filter.
- Choose a suitable structure and realize the filter.