Digital filtering is an integral part of many digital signal processing algorithms. Digital filters are characterized as either recursive [infinite impulse response (IIR)] or non-recursive [finite impulse response (FIR)] filters. IIR filters require a smaller order for the same set of specifications compared to FIR filters, while FIR filters provide a linear phase property. However, IIR filters, if not designed properly, tend to be unstable and use coefficients that are difficult to implement.
This application report discusses the design of a certain type of IIR digital filter with excellent stability properties, known as a Lattice Wave Digital Filter (LWDF), given a set of analog filter specifications. An elementary knowledge of filters is sufficient to understand the design of LWDF as discussed in this report. The complete design of the basic filters (low-pass, high-pass, and band-pass) is given with examples. Code that implements these LWDFs on the MSP430 CPU is provided with this report.