Higher order FIR designs (>100): In order to speed up plotting performance, updates to the P-Z chart are postponed until the left mouse button is released.
FIR (finite impulse response) filters are useful for a variety of signal processing applications. Including audio signal processing and noise cancellation. Although several practical implementations for FIRs exist, the direct form structure and its transposed cousin are perhaps the most commonly used. As such, all designed filter coefficients are intended for implementation in a Direct form structure in ASN Filter Designer.
The ASN filter designer supports the design and implementation of both Direct Form and Direct Form Transposed FIRs. As with IIR filters, the default structure is the Direct Form Transposed structure by virtue of its superior numerical accuracy when using floating point.
FIR Filters in ASN Filter Designer
The FIR (finite impulse response) filter designer is implemented via the Parks-McClellan algorithm, and allows for the design of the following filter types:
- Lowpass
- Highpass
- Bandpass
- Bandstop
- Multiband
- Hilbert transformer
- Differentiator
The Parks-McClellan algorithm offers a degree of flexibility over other FIR design methods, in that each band may be individually customised in order to suit the designer’s requirements.
Filter orders of up to 499 (professional version only) may be constructed, where this is limited to 200 for streaming audio applications. As with the IIR filters, an FIR’s zeros may be modified by the P-Z editor (Method dropdown list changes to User defined), including the ability of adding poles and converting it into an IIR filter.
The order estimation of the Parks-McClellan algorithm may sometimes underestimate the filter order required for the given specifications. Therefore, in order to automatically increases the order estimate by 2 (overestimation) you may uncheck the Minimum checkbox.
Convergence and errors
The Parks-McClellan algorithm is an optimal Chebyshev FIR design method, however the algorithm may not converge for some specifications. In such cases, increasing the distance between the design marker bands generally helps.
Errors in the root finding algorithm usually lead to undesirable results for high order filter implementations. As a consequence, the zeros presented in the P-Z chart for higher orders (> 60 or so) should only be interpreted as an illustration of the true positions. Also, if you are designing a high order FIR filter with a few hundred taps, it is not recommended to use the P-Z editor for editing the positions of the zeros.
Multiband FIR
In order to implement an arbitrary frequency response, you may use the Multiband design method. Extra bands may be added or removed from the design specification table by right-clicking on a Band and selecting the required option.
The design method requires that at least one band is a passband.
All bands with an attenuation of 10dB or less are classed as passbands. Depending on the level of band attenuation specified, the tool will automatically convert a stopband into a passband and vice versa.
Read more about FIR Filters in:
Implementing FIR filters with the ASN Filter Designer and the Arm CMSIS-DSP software framework