# Equiripple FIR Filters, Brief Introduction.

Cuthbert Nyack
The Frequency sampling approach is tedious because it uses equally spaced frequency samples. Unfortunately the extrema are not equally spaced but their separation reduces as the band edges are approached. The approach used here avoids this problem by locating the unequally spaced extrema in the frequency response. From these extrema, the frequency response is found and sampled. These equally spaced samples are now used to get the impulse response.

If an FIR filter has an Impulse response I(k) which is symmetric about the origin and contains 2n + 1 terms then from the DTFT, the frequency response between zero and ½ws of the corresponding filter has zero phase and can be expressed as:-
This can be written as :-
where the coefficients a(k) are related to the impulse response. The expression can also be written as powers of cosine. This frequency response can be shown to have 'n + 1' alternating extrema in the frequency response. This is the basis for the equiripple approximation and is often referred to as the Chebychev approximation. Several approaches for calculating the coefficients can be found in the literature eg 'T J Terrell - Introduction to Digital Filters - publ by MacMillan' or 'D. E. Elliot ed - Handbook of Digital Signal Processing - publ by Academic'.

One approach uses linear programming eg see 'A Digital Signal Processing Primer by K Steiglitz published by Addison Wesley'
In the applets here, the approach developed by Remez and Parks-McClellan is used and is described in Digital Filter Designer's Handbook by C. Rorabaugh published by McGraw Hill.

In this method an iterative approach is used to find the location of the frequencies at which the extrema occur. From this, the frequency response is generated and the impulse response found by taking the inverse DFT of the sampled frequency response. The final result depends on the assumptions made about the shape of the transition band response.

It is easier to begin the design process with a rough idea of the length of filter required for a given application.

Rorabaugh gives the expression for the approximate number of taps for a moderate BW filter as.

N = 1 + (-20 log((d1 d2)½) - 13) /(14.6DF)

d1, d2 are the passband and stop band ripples respectively, DF is the transition bandwidth. From N the number of approximating functions n = (N + 1)/2, the number of extrema = (n + 1) and the extrema are then divided between the passband and stopband in proportion to their widths(this should only be treated as a guide).

In the applet below, the number of required taps and extrema are estimated using empirical expressions available in the literature. The first is the expression found in Rorabaugh mentioned above. The second and third are by Herman et al and Mintzer et al. Details of both can be found in 'Digital Signal Processing by E C Ifeachor and B W Jervis publ by Prentice Hall'.

In these pages 4 applets are included for Low Pass, High Pass, Band Pass and Band Stop FIR Equiripple filters.
2 Applets are included to enable comparisons to be made between the window approach and the equiripple approximation.