IIR filters are digital filters with infinite impulse response. Unlike FIR filters, they have the feedback (a recursive part of a filter) and are known as recursive digital filters therefore.

**Figure 3-1-1. Block diagrams of FIR and IIR filters**

For this reason IIR filters have much better frequency response than FIR filters of the same order. Unlike FIR filters, their phase characteristic is not linear which can cause a problem to the systems which need phase linearity. For this reason, it is not preferable to use IIR filters in digital signal processing when the phase is of the essence.

Otherwise, when the linear phase characteristic is not important, the use of IIR filters is an excellent solution.

There is one problem known as a potential instability that is typical of IIR filters only. FIR filters do not have such a problem as they do not have the feedback. For this reason, it is always necessary to check after the design process whether the resulting IIR filter is stable or not.

IIR filters can be designed using different methods. One of the most commonly used is via the reference analog prototype filter. This method is the best for designing all standard types of filters such as low-pass, high-pass, band-pass and band-stop filters.

This book describes the design method using reference analog prototype filter. Figure 3-1-2 illustrates the block diagram of this method.

**Figure 3-1-2. Block diagram of design method using reference analog prototype filter**

FIR filters can have linear phase characteristic, which is not typical of IIR filters. When it is necessary to have linear phase characteristic, FIR filters are the only available solution. In other cases when linear phase characteristic is not necessary, such as speech signal processing, FIR filters are not good solution. IIR filters should be used instead. The resulting filter order is considerably lower for the same frequency response.

The filter order determines the number of filter delay lines, i.e. number of input and output samples that should be saved in order that the next output sample can be computed. For instance, if the filter order is 10, it means that it is necessary to save 10 input samples plus 10 output samples preceeding the current sample. All these 21 samples will affect the next output sample.

The IIR filter transfer function is a ratio of two polynomials of complex variable z-1. The numerator defines location of zeros, whereas the denominator defines location of poles of the resulting IIR filter transfer function.

Figure 3-1-3. illustrates input and output signals of the system with non-linear phase characteristic.

**Figure 3-1-3. The effect of non-linear phase characteristic**

The system introduces phase shift of 0 radians at frequency of ω, and π radians at three times higher frequency. Input signal consists of nature frequency ω and harmonics with the same amplitude at three times higher frequency. Figure on the left illustrates an input signal, whereas Figure on the right illustrates an output signal. As seen, these two signals have different waveforms. Neither the power of the signal nor amplitudes of particular harmonics have been changed, but the phase of the second harmonic.

Assume that an input represents a speech signal where the phase is not important. In this case such phase distorsion would be negligable as the system satisfies the stated requirements. Otherwise, if the phase is important, such a huge distorsion mustn’t be allowed.

The most commonly used IIR filter design method uses reference analog prototype filter. It is the best method to use when designing standard filters such as low-pass, high-pass, bandpass and band-stop filters.

The filter design process starts with specifications and requirements of the desirable IIR filter. A type of reference analog prototype filter to be used is specified according to the specifications and after that everything is ready for analog prototype filter design.

The next step in the design process is scaling of the frequency range of analog prototype filter into desirable frequency range. This is how an analog prototype filter is converted into an analog filter.

After the analog filter is designed, it is time to go through the last step in the digital IIR filter design process. It is conversion from analog to digital filter. The most popular and most commonly used converting method is bilinear transformation method. The resulting filter, obtained in this way, is always stable. However, instability of the resulting filter, when bilinear transformation is used, may be caused only by the finite word-length side-effect.

First of all, it is necessay to learn the basic concepts that will be used further in this book. You should be aware that without being familiar with these concepts, it is not possible to understand analyses and synthesis of digital filters.

Figure 3-2-1 illustrates a low-pass digital filter specification. The word specification refers to the frequency response specification.

**Figure 3-2-1a. Low-pass digital filter specification**

**Figure 3-2-1b. Low-pass digital filter specification**

- ωp – normalized passband cut-off frequency;
- ωs – normalized stopband cut-off frequency;
- δ1 – maximum passband ripples;
- δ2 – minimum stopband attentuation;
- ε – passband attenuation parameter;
- A – stopband attenuation parameter;
- ap – maximum passband ripples
**[dB]**; and - as – minimum stopband attenuation
**[dB]**.

Frequency normalization can be expressed as follows:

where:

- fs is the sampling frequency;
- f is the frequency to normalize; and
- ω is the normalized frequency.

Specifications for high-pass, band-pass and band-stop filters are defined almost the same way as those for low-pass filters. Figure 3-2-2 illustrates a high-pass filter specification, whereas Figure 3-2-3 illustrates a band-pass filter specification.

**Figure 3-2-2a. High-pass digital filter specification**

**Figure 3-2-2b. High-pass digital filter specification**

Comparing these two Figures 3-2-1 and 3-2-2, it is obvious that low-pass and high-pass filters have similar specifications. The same parameters are defined in both cases with the difference that in the later case the passband is substituded by the stopband and vice versa.

Figure 3-2-3 illustrates a band-pass specification.

**Filter 3-2-3a. Band-pass digital filter specification**

**Figure 3-2-3b. Band-pass digital filter specification**

Figure 3-2-4 illustrates band-stop digital filter specification

**Figure 3-2-4a. Band-stop digital filter specification**

**Figure 3-2-4b. Band-stop digital filter specification**

The Z-transform is performed upon discrete-time signals. It converts a discrete timedomain signal into a complex frequency-domin representation. It is very suitable for analyzing discrete time-domain signals and systems as well. The z-transform is derived from the Fourier discrete time-domain transformation and is considered the basic operation in digital filter design process.

The Z-transform is defined as:

where **z** is the complex number.

**Example:**

Assume that samples of a discrete-time signal x(n) are known. It is necessary to transform this signal with the z-transform and Fourier fransform.

x(n)={1,2,3,4,5,4,3,2,1} ; 0 ≤ n ≤ 8

z-transform is defined via expression:

It becomes:

The last expression is the z-transform of the given signal.

The Fourier transformation can be found by rewriting the previous expression in terms of z as z=e^jω. It becomes:

Figure 3-2-5 illustrates the (frequency) spectrum of the given signal.

**Figure 3-2-5. Frequency spectrum of the given signal**

Comparing Z and Fourier transforms, it is easy to notice some similarities between them:

In polar coordinates, the complex number z may be expressed as follows:

The two last expressions lead us to the conclusion that Fourier transform is just a special form of the z-transform for **r=1**.

In the z plane, the Fourier transform is represented as a unit circle, which can be seen in Figure 3-2-6 below.

**Figure 3-2-6. Fourier transform in the z plane**

The z-transform of the transfer function is of great importance for IIR filters. The location of poles in the z plane is used for testing stability of designed IIR filter. The poles of the IIR filter transfer function must be located within the unit circle in order that filter is stable.

Figure 3-2-7a illustrates zeros and poles of the transfer function of a stable IIR filter in the z plane.

**Figure 3-2-7a Stable IIR filter**

Transfer function zeros are denoted by small circles, whereas its poles are denoted by small crosses.

Re – Real axis

Im – Imaginary axis

As seen in Figure 3-2-7, one transfer function zero is located outside the unit circle. It doesn’t cause any problem as the location of poles is the only thing that matters. All four poles of transfer function are located within the unit circle, which guarantees tha stability of IIR filters.

According to the location of poles in the z plane, it is easy to determine whether it refers to FIR or IIR filter. The poles of the FIR filter transfer function are located at the origin. It is obviously not the case in Figure 3-2-7, which means that it refers to IIR, not FIR filter.

Also, Figure 3-2-7a clearly indicates interrelation between zeros and poles in the z plane. If a zero or a pole is located on the real axe in the z plane, i.e. the imaginary part is zero, then it is single. If either of them is not located on the real axis in the z plane, then it has the corresponding pair having the same real value and the same imaginary value with the opposite sign. In the z plane, it is illustrated as a pair of zeros or poles which are symmetric around the real axis. Such a pair is also called a complex-conjugated pair of zeros or poles.

Figure 3-2-7b illustrates the zeros and poles of the transfer function of an instable IIR filter in the z plane.

**Figure 3-2-7b. Instable IIR filter**

As seen from Figure 3-2-7b, two poles located outside the unit circle make this IIR filter instable. If bilinear transformation is used in the filter design, the resulting filter is stable before the coefficient quantization starts. This quantization changes the location of zeros and poles of the resulting IIR filter, which can cause one pole or one pair of poles to be located outside the unit circle. The result of such a quantization is a filter that is not stable.

The Z-transform is primarily used for finding the transfer function of linear discrete-time systems. When the transfer function is found, it is necessary to consider the zeros and poles of the transfer function in the z plane. The transfer function of discrete-time systems is defined to be:

where:

- bi are the feedforward filter coefficients (non-recursive part);
- aj are the feedback filter coefficients (recursive part);
- H0 is a constant;
- qi are the zeros of the transfer function;
- pj are the poles of the transfer function;
- B(z) is the transfer function of non-recursive part of the system; and
- A(z) the transfer function of recursive part of the system (feedback).

The recursive part of the transfer function is actually a discrete-time system feedback. Unlike the FIR filters, the IIR filters have feedback which enable them to have greater selectivity as well as nonlinearity of phase characteristic than FIR filters.

Figure 3-2-8. illustrates block diagram of discrete-time system with feedback.

**Figure 3-2-8 Discrete-time system with feedback**

In the time domain, the discrete-time system shown in Figure 3-2-8 can be expressed as follows:

OR

The later expression is more convenient for software IIR filters realization.

In the frequency domain, the discrete-time system shown in Figure 3-2-8 can be expressed as the multiplication of Z-transform input signal **X(z)** and the transform function **H(z)**:

The first way of representing discrete-time systems is suitable for both software and hardware IIR filter implementation, whereas the representation in the z domain is suitable for analyzes of designed filters and synthesis itself (design process).

**Example:**

The transfer function of a 3th order IIR filter, designed using Chebyshev function is:

The following expression describes the filtering process:

This process is also known as convolution. Another expression for convolusion that is more useful in practical applications is:

After making substitutions of impulse response coefficients, it becomes:

Using expression:

it is possible to find function for particular normalized frequency.

For example, when ω = 0.2π:

The numerator is computed first:

Then denominator:

Figure 2-2-8 illustrates a hardware realization of this IIR filter.

**Figure 3-2-9. Realization of IIR filter in this example**

The software realization would require two buffers each of minimum length 3. One buffer would be used for input samples and another one for output samples. These are usually circular buffers whose length can be expressed as 2^n, which in this case means that the circular buffer is 4 = 2^2 in length.

By complexity, the given IIR filter corresponds to a 6th order FIR filter. Selectivity and attenuation of this filter are much higher than those of any 6th order FIR filter. The result of the feedback, which provides so high selectivity and attenuation, is a non-linear phase characteristic.

The location of poles and zeros of the transfer function is very important for discrete-time system analyses and synthesis. According to their location it is possible to test stability of a discrete-time system, detect round-off errors made due to software implementation of a filter as well as coefficient errors encountered during hardware implementation of a filter.

In order that a discrete-time system is stable, all poles of the discrete-time system transfer function must be located within the unit circle, as shown in Figure 3-2-6. If this requirement is not satisfied, the system becomes unstable, which is very dangerous. The location of zeroes doesn’t affect the stabilty of discrete-time systems. Recalling that FIR flters do not have a feedback, which makes them stable. However, this doesn’t apply on IIR filters. Therefore, it is preferable to use bilinear transformation because it always makes filter stable. In this case, filter stability is questioned only due to coefficient quantization which is performed at the end of the design process.

It always happens due to software and hardware implementation that an error in coefficients representation is produced. In software implementation, an error is triggered by the finite word-length effect, whereas in hardware implementation, it ocurrs due to impossibility of representing the coefficients with apsolute accuracy. The result in both cases is that the actual value of coefficients differs from their value obtained in design process. A direct result of such errors is deviation of the frequency of designed discrete-time system.

Deviation of frequency depends on the spacing between the zeros and poles of the FIR filter transfer function and the origin in the z plane. The FIR filter coefficient error affects more the frequency response as the spacing between the zero and pole of the transfer function and the origin narrows. This property is particularly typical of high-order filters because their zeros are very close each other. Besides, the pole quantization, by rule, affects more frequency characteristic. Slight errors in coefficient representation may cause large frequency deviations.

Figure 3-2-9 illustrates the required and obtained frequency characteristic of an IIR filter. The finite word-length effect on the transform function of an IIR filter is clearly marked in this figure.

**Figure 3-2-10. Deviation from required frequency characteristic**

The frequency deviation shown in Figure 3-2-10 is basically slight deviation, even though it is very large at certain frequencies. The minimum attenuation and the width of transition region of the resulting IIR filter remain unchanged, so that such deviation is acceptable.

The IIR filter design using bilinear transformation can be split into several steps:

- Defining filter specification;
- Specifying analog prototype filter;
- Computing the filter order required for a given set of specifications and specified analog prototype filter;
- Computing the transfer function of reference analog prototype filter;
- Conversion into analog filter via scaling;
- Conversion into digital filter via bilinear transformation; and
- If the obtained filter doesn’t satisfy the given specifications or if it is possible to decrease the filter order, then it is necessary to do it. The filter order can be increased or decreased according to needs and after that steps 4, 5 and 6 are repeated as many times as needed.

The final objective of defining IIR filter specifications is to find the desirable normalized cutoff frequencies (ωc, ωc1, ωc2), transition width, maximum passband attenuation and minimum stopband attenuation. The type of analog prototype filter as well as the filter order will be specified according to these parameters.

Now, it is time to specify the type of reference analog prototype filter. Be aware that every type has its good and bad sides. It is only important that its characteristics can satisfy the given specifications. However, it is preferable to specify such a type of analog prototype filter that can produce the lowest order IIR filter.

After this step, that is, when the type of analog proptotype filter is known, it is necessary to specify or compute the filter order required for a given set of specifications. The initial value of the filter order is roughly estimated and is changed after that depending on the obtained characteristics and requirements.

When both type and order of analog prototype filter are known, it is possible to find its transfer function.

The transfer function of analog prototype filter depends on frequencies which are not scaled into the desirable range. For this reason, it is necessary to perform scaling of the transfer function so that cut-off frequencies go into the desirable range. This operation is actually conversion of reference analog prototype filter into analog filter with desirable characteristic.

Finally, the transfer function of the specified type of reference analog prototype filter is obtained by converting analog filter into digital one. This book represents the most commonly used conversion known as bilinear transformation.

If the resulting filter doesn’t satisfy the given specifications, or if the filter order can be less than actual one, it should be changed. IIR filters have much greater selectivity and attenuation than FIR filters of the same order. For this reason, it is preferable to increase or decrease the filter order by 1. After changing the filter order, the entire IIR filter design process, i.e. computing of the transfer function of reference analog prototype filter, scaling and obtaining analogue filters and conversion into digital filter, is repeated.

FIR filter transfer function can be expressed as:

where:

- N is the filter order;
- bk the coefficient of non-recursive part of IIR filter; and
- ak the coefficient of recursive part (feedback) of IIR filter.

The coefficients bk and ak are of interest for IIR filter realization (both hardware and software). Figure 3-2-11 illustrates the block diagram of IIR filter.

**Figure 3-2-11. Block diagram of IIR filter**

There are several types of IIR filter realization. This chapter covers direct, direct transpose, direct canonic, direct transpose canonic and cascade realizations. All of them are very convenient and most commonly used for both hardware and software IIR filter realization. Each of them will be described in detail along with their advantages and disadvantages.

Direct realization of IIR filters starts with this expression:

The first part of the expression refers to non-recursive part and the other refers to recursive part of IIR filter. In IIR filter direct realization, these two parts are separately considered and realized.

The realization of non-recursive part of IIR filter is identical to the direct realization of FIR filter. Figure 3-2-12. illustrates the block diagram of direct realization of non-recursive part of IIR filter.

**Figure 3-2-12. Direct realization of non-recursive part of IIR filter**

As seen from Figure 3-2-12 above, multiplication coefficients are identical to those of the transfer function.

Realization of non-recursive part of IIR filter is similar to that of recursive part. Figure 3-2-13. illustrates the direct realization of the filter recursive part.

**Figure 3-2-13. Direct realization of non-recursive part of IIR filter**

As non-recursive and recursive part of IIR filter are separately realized, it doesn’t matter which of them will be used first in filtering process. Figures 3-2-14a and 3-2-14b illustrate block diagrams of IIR filter realization when non-recursive part is used before and after recursive part of IIR filter, respectively.

**Figure 3-2-14a. IIR filter direct realization, non-recursive part is used first**

**Figure 3-2-14b. IIR filter direct realization, recursive part is used first**

This structure is also known as a direct form I structure. As seen from Figures 3-2-14a and 3-2-14b, direct realization requires in total of 2N delay lines, (2N+1) multiplications and 2N additions.

Direct realization is very convenient for software implementation and this is where it is most commonly used. Some of disadvantages of this realization are the greatest sensitivity to accuracy of realized coefficients (i.e. the largest finite word-length effect), and the greatest complexity due to implementation (i.e. needs most resources).

On IIR filter software implementation with direct structure, it is necessary to have two buffers with at least N+1 samples, where N is the IIR filter order. For their simplicity and effectiveness, most commonly used are the so called circular buffers the length of which can be expressed as 2^k. The value of constant k is defined as a minimum value for which N ≤ 2^k is valid. Accordingly:

where the operator represents rounding down to a less value.

**Figure 3-2-15. Circular buffer of length 16 = 2^4**

Since the buffer length is 16, location addressing in the circular buffer is performed via module 16 operations:

**Example:**

A 6th order FIR filter is used in this example. It is necessary to design this filter using direct structure with circular buffer. The length of the buffer needs to be 2^k.

The length of circular buffer is obtained from the following expression:

It means that the minimum length of circular buffer is 2^3 = 8.

The contents of the buffer after receiving the first 10 samples is shown in the table 3-2-1. Input samples are denoted by x[n] and each shaded cell represents changed location in buffer.

Step |
addr. 7 |
addr. 6 |
addr. 5 |
addr. 4 |
addr. 3 |
addr. 2 |
addr. 1 |
addr. 0 |
---|---|---|---|---|---|---|---|---|

0 | ||||||||

1 | x[0] | |||||||

2 | x[1] | x[0] | ||||||

3 | x[2] | x[1] | x[0] | |||||

4 | x[3] | x[2] | x[1] | x[0] | ||||

5 | x[4] | x[3] | x[2] | x[1] | x[0] | |||

6 | x[5] | x[4] | x[3] | x[2] | x[1] | x[0] | ||

7 | x[6] | x[5] | x[4] | x[3] | x[2] | x[1] | x[0] | |

8 | x[7] | x[6] | x[5] | x[4] | x[3] | x[2] | x[1] | x[0] |

9 | x[7] | x[6] | x[5] | x[4] | x[3] | x[2] | x[1] | x[8] |

10 | x[7] | x[6] | x[5] | x[4] | x[3] | x[2] | x[9] | x[8] |

**Table 2-2-2. Input circular buffer after receiving 10 samples**

Direct transpose realization is similar to direct realization. The only difference is in the position of delay lines, i.e. buffer if it is about software implementation. Here, it is also necessary to have two buffers of minimum length N+1, where N is the filter order.

Figures 3-2-16 and 3-2-17 illustrate the block diagram describing IIR filter direct transpose realization structure of IIR filter.

**Figure 3-2-16. IIR filter direct transpose realization, non-recursive part is used first**

**Figure 3-2-17. IIR filter direct transpose realization, recursive part is used first**

There are no significant differences between direct and direct transpose realizations. Both structures have the same multiplication coefficients. The only difference is in the position of delay lines. Similar to direct realization structure, the direct transpose realization structure uses 2N delay lines, (2N+1) multiplications and 2N additions.

Direct canonical realization structure has reduced number of delay lines to the minimum, that is, N delay lines. This way, one of the main disadvantages of direct and direct transpose realization structures is eliminated. Recursive and non-recursive parts of IIR filter are not considered separately, which causes implementation to be more complex than for direct realization structure. A good thing is that the coefficients are the same as for direct realization.

Figure 3-2-18 illustrates the block diagram describing direct canonic realization structure of IIR filter.

**Figure 3-2-18. Direct canonic realization structure block diagram**

Similarities between direct canonic structure block diagram and direct realization structure shown in Figure 3-2-14b are obvious. The difference between realization structures shown in Figures 3-2-14b and 3-2-18 is that non-recursive and recursive part for direct canonic realization structure cannot be treated separately, although it is easy to differentiate between them.

Direct canonic structure uses N delay elements, (2N+1) multipilications and 2N additions. Sensitivity to the accuracy of coefficients is the same as for all previously described structures, which is the main disadvantage of this realization structure.

Direct transpose canonical realization structure has reduced number of delay lines to the minimum of N delay lines as well as reduced number of adders to N+1. Recursive and nonrecursive parts of IIR filter are not considered separately, which causes implementation to be more complex than for direct realization structure, but similar to direct canonical structure. A good thing is that the coefficients are the same as for direct realization.

Figure 3-2-19 illustrates the block diagram describing direct transpose canonical realization structure of IIR filter.

**Figure 3-2-19. Direct transpose canonic realization structure block diagram**

Similarities between direct transpose canonical structure block diagram and direct transpose realization structure shown in Figure 3-2-16 are obvious. The difference between realization structures shown in Figures 3-2-16 and 3-2-19 is that non-recursive and recursive part for direct transpose canonical realization structure cannot be treated separately, although it is easy to differentiate between them.

Direct transpose canonic structure uses N delay elements, (2N+1) multipilication elements and N+1 adders. Sensitivity to the accuracy of coefficients is the same as for all previously described structures, which is the main disadvantage of this realization structure.

Cascade realization structure is the most difficult to obtain from the transfer function (comparing to other realization structures given in this book). It is very convenient for its modular structure and less sensitivity to the accuracy of non-recursive and recursive coefficients realization. On cascade IIR filter realization, a filter is divided into several, mutually independent sections of the first or second order.

Individual sections are mostly realized in direct canonical or direct transpose canonical structure.

Since the sections are mutually independent after design process, the finite word-length effect on the accuracy of coefficients, modulation of frequency response and IIR filter stability are separately examined for each section. The analyse is simplified this way.

The IIR filter transfer function is expressed as:

where:

- bi are the coefficients of transfer function numerator (non-recursive part);
- aj are the coefficients of transfer function denominator (recursive part);
- H0 is a constant;
- qi are the zeros of the transfer function;
- pj are the poles of the transfer function;
- B(z) is the transfer function of non-recursive part;
- A(z) is the transfer function of recursive part (feedback); and
- M is the number of sections in cascade realization structure.

Cascade realization requires the given expression to be factorized so that the transfer function is expressed as follows:

where:

a[i, k] are the coefficients of recursive part of the i-th IIR filter section;

b[i, k] are the coefficients of non-recursive part of the i-th IIR filter section.

Individual sections are of the first or second order. Direct transpose canonical structure is most frequently used in realization. Figure 3-2-20 illustrates a first-order section.

**Figure 3-2-20. First-order section**

Figure 3-2-21 illustrates a second-order section.

**Figure 3-2-21. Second-order section**

The use of direct transpose realization structure reduces necessary number of delay lines and adders as well. Filter dividing in independent sections reduces the sensitivity to the accuracy of quantization coefficients and simplifies analysing the stability of the resulting filter. Besides, the possibility that IIR filter becomes instable after quantization is drastically reduced as the coefficients quantization is performed after dividing filter in sections, so the changes of poles locations are smaller, therefore.

Software realization requires M buffer of length 2 or 1. Each section must have its own buffer for saving samples of intermediate signals. Such complexity and needed factorization are two main disadvantages of this realization structure.

Figure 3-2-21 illustrates the block diagram describing cascade IIR filter structure.

**Figure 3-2-22. Cascade IIR filter structure**

IIR filter design process starts with reference analog prototype filter. This book explains Butterworth, Chebyshev (Chebyshev I) and inverse Chebyshev filter (Chebyshev II).

The transform function of analog filter Hsa(s) is expressed as:

where:

N is the filter order;

s is the complex frequency (s = σ + jΩ); and

M ≤ N.

In order that a system described via expression above is stable, it is necessary that all poles (the square roots of polinomial Aa(s)) are located in the left half of S plane. Figure 3-3-1 illustrates S plane.

**Figure 3-3-1. S plane and region of stability**

A low-pass filter is used for analog filter design. The conversion into the appropriate type of filter (high-pass, band-pass or band-stop) is performed by converting into analog filter, i.e. frequency axis scaling.

Low-pass Butterworth analog filters are filters whose frequency response is a monotonious descending function. They are also known as „maximally flat magnitude“ filters at the frequency of Ω = 0, as the first 2N - 1 derivatives of the transfer function when Ω = 0 are equal to zero.

Butterworth filter is characterized by 3dB attenuation at the frequency of Ω=1, no matter the filter order is. Figure 3-3-2 illustrates frequency responses for a few various parameters N (filter order).

**Figure 3-3-2. Frequency response of Butterworth filter**

Butterworth filter is defined via expression:

where:

Ω is the frequency; and

N is the filter order.

**Figure 3-3-3. IIR filter specification**

Figure 3-3-3 illustrates IIR filter specification with parameters of most interest for Butterworth filter.

To design Butterworth reference analog prototype filter, it is necessary to know the filter order. All poles of the resulting filter must be located in the left half of the S plane, i.e. to the left of the imaginary axis.

**Note:**

*In the z plane, filter is stable if all poles are located within the unit circle. In the s plane, filter is stable if all poles are located in the left half of the s plane. Z-transform is used for digital filters, whereas Laplase transform (s plane) is used for analog filters. Even though these two types of transformations are similar to some extent, they should not be mixed up concerning the filter stability analyse.*

When the filter order is known, it is easy to find its poles using expression:

Butterworth poles are equally allocated (equidistantly) on the unit circle within the left half of the s plane. The location of poles for N=5 and N=6 is shown in Figure 3-3-4.

**Figure 3-3-4. Position of Butterworth filter poles for N=5 and N=6**

The transfer function of the Butterworth reference analog prototype filter is expressed as follows:

where:

Sk is the k-th pole of the Butterworth filter transfer function

For N=5, the transfer function is:

Chebyshev analog low-pass filter of the first kind is a type of analog filter that has the least oscillation in frequency response in the entire passband. Therefore it is characterized by equal ripple in the passband and the stopband frequency response is monotoniously descending function.

Figure 3-3-5 illustrates frequency response for a 4th order band-stop Chebyshev reference analog filter.

**Figure 3-3-5. Frequency response of Chebyshev analog filter**

To design Chebyshev reference analog prototype filter, it is necessary to know the filter order.

Chebyshev analog filter is defined via expression:

where:

Ω is the frequency;

N is the filter order;

ε is a parameter used to define maximum oscillations in the passband frequency response; and

TN is the Chebyshev polynomial.

The Chebyshev polynomial TN(Ω) can be obtained via recursive relations:

If the filter order is known in advance, neither recursive relations nor expression for the square of frequency response are necessary. The design process starts from the values of poles of a 1st order Chebyshev reference analog filter.

The values of poles are expressed as:

where:

si is the i-th transfer function pole of analog prototype filter (complex value);

σi is the pole; and

Ωi is the imaginary pole.

where:

N is the filter order; and

i=1, 2, ..., N.

The value of parameter ε is obtained via expression:

Transfer function is expressed as:

The value of A0 is found via expression:

For N=5, the transfer function is:

**Figure 3-3-6. Location of the poles of Chebyshev filter for N=5**

Inverse Chebyshev analog filter is also known as Chebyshev analog filter of the second kind. The frequency response of this filter monotoniously falls in the passband and transition region. Similar to Butterworth filter, the frequency response is extremely flat function at the frequency of Ω = 0, as the first 2N - 1 derivatives of the transfer function for Ω = 0 are equal to zero. In the stopband, inverse Chebyshev filter has the least oscillation in the frequency response.

Figure 3-3-7 illustrates the frequency response for an inverse Chebyshev reference analog band-stop filter of the 4th order.

**Figure 3-3-7. Frequency characteristic of inverse Chebyshev analog filter**

To design inverse Chebyshev reference analog pototype filter, it is necessary to know the filter order.

Inverse Chebyshev analog filter is defined via expression:

where: Ω is the frequency;

N is the filter order;

ε is the parameter of maximum oscillation in the passband frequency response; and

TN is the Chebyshev polynomial.

The Chebyshev polynomial TN(Ω) can be obtained from recursive relation:

If the filter order is familiar in advance, neither these recursive relations nor expression for the square of frequency response are necessary. The design process starts from the values of poles of a 1st order inverse Chebyshev reference analog filter.

The poles of the transfer function of inverse Chebyshev analog filter are considered reciprocal poles of the transfer function of a 1st order Chebyshev analog filter.

The poles of a 1st order Chebyshev analog filter are expressed as:

where:

si is the i-th pole of the transfer function of analog prototype filter (complex value);

σi is the real pole; and

Ωi is the imaginary pole.

where:

N is the filter order; and

i=1, 2, ..., N.

The poles of the transfer function of inverse Chebyshev analog filter are found via expression:

where:

si is the pole of the transfer function of a 1st order Chebyshev analog filter; and

s2i is the pole of the transfer function of inverse Chebyshev analog filter.

Transfer function is expressed as:

The coefficient **k** in numerator can be only an odd number. Table 3-3-1 provides a few examples of values of **k**.

N |
min |
max |
values |
---|---|---|---|

5 | 1 | 5 | 1, 3, 5 |

6 | 1 | 5 | 1, 3, 5 |

7 | 1 | 7 | 1, 3, 5, 7 |

8 | 1 | 7 | 1, 3, 5, 7 |

**Table 3-3-1. coefficient k in the transfer function numerator**

The values Ωk are found via expression:

The value H0 is found via expression:

For N=5, the transfer function is:

**Figure 3-3-8. Location of poles and zeros of inverse Chebyshev filter for N=5**

As seen from Figure 3-3-8 and expression for Ωk, the zeros of the transfer function are always complex-conjugated values, which is not the case with the poles of the transfer function.

All analog prototype filters, regardless of their type, have scaled frequency range so that the passband cut-off frequency amounts to Ω = 1. For this reason, it is necessary to scale filter during the design process, so that passband and stopband cut-off frequencies have the appropriate, predetermined values.

Reference analog prototype filter is also a low-pass filter so it requires to be transformed into the appropriate type of filter, i.e. high-pass, band-pass or band-stop filter, if needed.

Transformation from an analog prototype filter to appropriate analog filter is performed before transforming it in digital filter.

Frequency scaling depends on the type of analog filter being designed. Scaling is explained for low-pass, high-pass, band-pass and band-stop filters.

All the results obtained in this chapter are tested in the Filter designer tool program.

The transformation from a reference analog prototype filter to a low-pass analog filter is the simplest type of transformation. Analog prototype filter is a low-pass filter with the cut-off frequency of Ωp=1. In this case, the transformation comes to a simple frequency scaling. In the transform function, **s\\Ωc** is used instead of **s**, where **Ωc** is a desirable cut-off frequency in the passband.

Generally, the transform function of the reference analog prototype filter can be expressed as follows:

where

H0 is a costant;

zk is the k-th zero of the transfer function of the reference analog prototype filter;

M is a number of zeros of the transfer function of the reference analog prototype filter;

pk is the k-th pole of the transfer function of the reference analog prototype filter; and

N is a number of poles of the transfer function of the reference analog prototype filter and the filter order as well.

By performing the transformation:

each expression within brackets in the transfer function numerator is transformed into:

and the whole numerator is transformed into:

Each bracket in denominator is transformed similarly:

and the entire denominator is transformed into:

By replacing numerator and denominator by their transformed expressions, the transform function of the analog filter is obtained:

**Example:**

The transform function of the Butterworth reference analog prototype filter of the 3rd order is expressed as follows:

The transformation in a band-pass analog filter with the cut-off frequency Ωc = 0.2929 in the passband is obtained via expression:

**Example:**

The transform function of inverse Chebyshev reference analog prototype filter of the 3rd order is expressed as follows:

The transformation to a band-pass analog filter with the cut-off frequency Ωc=0.3719 in the passband is obtained via expression:

Analog prototype filter is a low-pass filter with the cut-off frequency Ωp = 1. Its transformation to a high-pass analog filter can be split into two steps. The first step refers to the transformation to a high-pass analog filter, whereas the second one refers to frequency scaling. The final objective is that passband cut-off frequency of the resulting high-pass analog filter amounts to Ωc.

The transformation to a high-pass analog filter:

Scaling of frequency axis is performed by transformation:

These two transformations can be represented by one transformation:

Generally, the transform function of the reference analog prototype filter can be expressed as follows:

where:

H0 is a constant;

zk is the k-th zero of the transfer function of the reference analog prototype filter;

M is a number of zeros of the transfer function of the reference analog prototype filter;

pk is the k-th pole of the transfer function of the reference analog prototype filter; and

N is a number of poles of the transfer function of the reference analog prototype filter and the filter order as well.

By performing the following transformation:

each bracket in the numerator of the transfer function is transformed into

and the entire numerator is transformed into:

Each bracket in denominator is transformed similarly:

and the entire denominator is transformed into:

Substituting these transformed expressions for numerator and denominator, the transform function of the analog filter is obtained:

**Example:**

The transfer function of the Chebyshev reference analog prototype filter of the 3rd order is expressed as follows:

The transformation in a band-pass analog filter with the cut-off frequency Ωc = 0.3721 in the passband is expressed as:

The result is the transfer function of analog filter:

**Example:**

The transfer function of inverse Chebyshev reference analog prototype filter of the 2nd order is expressed as follows:

The transformation in a band-pass analog filter with the cut-off frequency Ωc=0.1434 in the passband is expressed as:

The result is the transform function of analog filter:

The transformation in a band-pass analog filter is more complex than the transformation in a low-pass and high-pass analog filters. The filter order is doubled by this transformation. This is why it is not possible to design an odd order band-pass filter.

When designing, the required filter order is divided by two. The resulting filter order is used to design a low-pass reference analog prototype filter. By transforming it into a band-pass analog filter the filter order is doubled. The required filter order is obtained this way.

**Example:**

Assume that it is necessary to design an 8th order band-pass digital filter.

A low-pass reference analog filter of the 4th order is designed first.

Reference analog filter is further transformed in a bandpass analog filter. This transformation doubles the filter order. The order of the resulting filter is 8.

The transformation into a band-pass analog filter is expressed as:

The value of the constant Ω0 can be found via expression:

where:

Ωp1 is a lower cut-off frequency in the passband (refer to figure 3-4-1); and

Ωp2 is a higher cut-off frequency in the passband (refer to figure 3-4-1).

**Figure 3-4-1. Band-pass filter specification**

The value of Ωc, which is necessary for normalization, is found via expression:

The transfer function of an analog prototype filter is transformed first in a band-pass analog filter, and normalized after that with Ωc.

Generally, the transfer function of the reference analog prototype filter can be expressed as:

where:

H0 is a constant;

zk is the k-th zero of the transfer function of the reference analog prototype filter;

M is a number of zeros of the transfer function of the reference analog prototype filter;

pk is the k-th pole of the transfer function of the reference analog prototype filter; and

N is a number of poles of the transfer function of the reference analog prototype filter and the filter order as well.

By performing the transformation:

each bracket in numerator of the transfer function is transformed into:

and the entire numerator is transformed into:

The scaling of frequency axis is performed after transformation:

Each bracket in denominator is transformed similarly:

and the entire denominator is transformed into:

The scaling of frequency axis is performed after transformation:

Substituting the transformed expressions for numerator and denominator, the transform function of analog filter is obtained:

**Example:**

The transfer function of the Chebyshev reference analog prototype filter of the 2nd order is expressed as:

The transformation in a band-pass analog filter with the cut-off frequency Ωc = 0.1626 in the passband is expressed as:

The result is the transfer function of analog filter:

The transformation in a band-stop analog filter is similar to the transformation in a bandpass analog filter. Similarly, the filter order is doubled and the order of a band-stop digital filter cannot be an odd number.

When designing, the required filter order is divided by two. The resulting filter order is used for designing a low-pass reference analog prototype filter. The transformation into a bandstop analog filter causes the filter order to double. This is how the required filter order is obtained.

**Example:**

It is necessary to design a band-stop digital filter of the 10th order.

A low-pass reference analog filter of the 5th order is designed first.

The reference analog filter is transformed in a band-stop analog filter. This transformation causes the filter order to double. The result is a 10th order filter.

The transformation in a band-stop analog filter:

The value of the constant Ω0 can be found via expression:

where:

Ωs1 is a lower cut-off frequency in the stopband (refer to figure 3-4-2); and

Ωs2 is a higher cut-off frequency in the stopband (refer to figure 3-4-2).

**Figure 3-4-2. Band-stop filter specification**

The value of Ωc, which is necessary for normalization, is found via expression:

The transfer function of the reference analog prototype filter is transformed first into a band-stop analog filter, and normalized after that with Ωc.

Generally, the transfer function of the reference analog prototype filter can be expressed as follows:

where:

H0 is a constant;

zk is the k-th zero of the transfer function of the reference analog prototype filter;

M is a number of zeros of the transfer function of the reference analog prototype filter;

pk is the k-th pole of the transfer function of the reference analog prototype filter; and

N is a number of poles of the transfer function of the reference analog prototype filter and the filter order as well.

The first step refers to normalization with the frequency Ωc:

The transformation is performed in the second step:

and each bracket in the transfer function numerator is transformed in:

and the entire numerator is transformed in:

Each bracket in denominator is transformed similarly:

and the entire denominator is transformed in:

Substituting the transformed expressions for numerator and denominator, the transform function of analog filter is obtained:

**Example:**

The transfer function of inverse Chebyshev reference analog prototype filter of the 2nd order is expressed as:

The transformation into a band-stop analog filter with the cut-off frequency Ωc=0.252.5727 in the passband is expressed as:

The result is the transfer function of analog filter:

Digital IIR filters are designed using analog filters. After the frequency scaling and transformation into a desirable type of filter have been performed, it is necessary to transform the resulting analog filter into a digital one. It is done by transforming the analog filter transfer function into a digital one.

The transformation is supposed to:

- faithfully approximate the frequency response of analog filter; and
- provide that the resulting digital filter is guaranteed to be stable.

This transformation also transforms s plane into z plane.

Analog filter is stable if the poles of the transfer function are located in the left half of s plane, whereas digital filter is stable if the poles are located within the unit circle. For this reason, the transformation must provide that the left half of s plane coincides with the area within the unit circle of z plane, as shown in Figure 3-5-1.

**Figure 3-5-1. Transformation of s plane into z plane**

One of most commonly used method of transforming analog filters into appropriate IIR filters is known as bilinear transformation. It is defined via expression:

Using the previous expression, the transformation of the analog filter transform function into a digital one can be expressed as:

As seen, the transformation is performed by a simple change of variable s in the expression for the transfer function of the resulting analog filter.

The analog filter transfer function can be expressed as:

where:

H0 is a constant. If s=0 then H(s)=H0 ;

zk is the zero of the analog filter transfer function; and

pk is the pole of the analog filter transfer function.

After transformation, the analog filter transfer function is further transformed into:

where:

Hoz is a constant of the digital IIR filter transfer function

**Example:**

The transfer function of a second-order high-pass analog filter (inverse Chebyshev, fc=2KHz, fs=44100Hz, 60dB) is expressed as:

It is necessary to transform the given analog filter into the appropriate digital filter by bilinear transformation.

Using expression for linear transformation:

we obtain:

where:

N=2

M=2

z1=j0.1014

z2=-j0.1014

p1=-2.267+j2.2692

p2=-2.267-j2.2692

The result is the transfer function of a digital high-pass IIR filter. Realization structure is illustrated in Figure 3-5-2 below.

**Figure 3-5-2. IIR filter realization**

Digital filters designed via bilinear trasnformation are guaranteed to be stable. However, the accurate values of coefficients are obtained immediately after the implementation of bilinear transformation. On filter realization, it is impossible to represent coefficients without an error. In software digital filter realization (implementation), the resulting coefficients are quantized, which also generates a certain error. Any error made during the quantization of coefficients affects more or less the frequency response, which may further cause the stopband attenuation to decrease.

The quantization effect on digital filter stability is much more dangerous. Special care is required when quantizing feedback coefficients as it causes the location of the digital IIR filter transfer function poles to change their location. It is very important to prevent the poles from being located outside the unite circle. However, if it happens, the resulting IIR filter is not stable and is useless therefore.

A disadvantage of the bilinear transformation is a non-linear transformation of the analog filter frequency axis into a digital one. When designing, the cut-off frequencies are defined on the basis of the given specifications and type of a filter. When transforming, these frequencies have appropriate locations, which is not the case with the rest of the frequency axis. Such a non-linear transformation of analog filter frequencies causes the phase characteristic distorsion, so that it is not linear.

This chapter discusses various IIR filter design methods. The four standard types of filters are used here:

- low-pass filter;
- high-pass filter;
- band-pass filter; and
- band-stop filter.

The design method used here is known as bilinear transformation.

The IIR filter design process can be split into several steps described in Chapter 3.2.5 *Designing IIR filters by bilinear transformation*. These are:

- Defining filter specifications;
- Specifying the type of analog prototype filter;
- Computing the filter order according to the filter specifications and specified analog prototype filter;
- Computing the transfer function of reference analog prototype filter;
- Transformation into analog filter by range scaling;
- Transformation into digital filter by bilinear transformation; and
- If the resulting filter doesn’t satisfy the given specifications or if it is possible to decrease the filter order, then it is necessary to do it. The specified filter order is increased or decreased according to needs, and steps 4, 5 and 6 are repeated after that as many times as needed.

Some steps are skipped in some cases. If the filter order is known, step 3 is skipped. If the type of reference analog prototype filter is predetermined, step 2 is skipped.

In every given example, the IIR filter design process will be described through these steps in order to make it easier for you to observe similarities and differencies between various design methodes, analog prototype filters and design of various types of filters as well.

Figure 3-6-1 illustrates the design steps along with input and output data for each of them.

**Figure 3-6-1. Steps in designing digital IIR filter**

The first block refers to design of reference analog prototype filter of appropriate order. The output data is a reference analog prototype filter transfer function Ha(s). Regardless of the type of reference analog prototype filter in use, the transfer function is given by:

where:

H0 is a constant;

zk is the k-th zero of the reference analog prototype filter transfer function;

M is a number of zeros of the reference analog prototype filter transfer function;

pk is the k-th pole of the reference analog prototype filter transfer function; and

N is a number of poles of the reference analog prototype filter transfer function and filter order as well.

Reference analog prototype filter is always a low-pass filter. The next step is the transformation into an analog filter of appropriate type. The expression used to transform the reference analog prototype filter transfer function depends on the type of filter that needs to be obtained. The final result is the transfer function H(s) given by:

where:

H0 is a constant;

zk is the k-th zero of the reference analog prototype filter transfer function;

M is a number of zeros of the reference analog prototype filter transfer function;

pk is the k-th pole of the reference analog prototype filter transfer function; and

N is a number of poles of the reference analog prototype filter transfer function and filter order as well.

As seen, the transfer functions of reference analog prototype filter and analog filter are very similar. They differ only in the value of constant H0, the values of the transfer function poles and zeros zk and pk as well as in the number of transfer function zeros M. The filter order is the same if the analog filter is a low-pass or high-pass filter, whereas it is different if the analog filter is a band-pass or band-stop filter. In the later case, the analog filter order (N) is twice that of the reference analog prototype filter.

The next step is the transformation into appropriate digital IIR filter using bilinear transformation given by expression:

**Filter Designer Tool** is used for testing and analysing the resulting IIR filters in this chapter. All data are calculated with the accuracy of 4 decimal digits, which is sufficient for most examples.

**Step 1:**

Type of filter – low-pass filter

Filter specifications:

- Filter order – N=2;
- Sampling frequency – fs=20KHz;
- Passband cut-off frequency – fc=2.5KHz; and
- Minimum stopband attenuation – ap=40dB.

**Step 2:**

Method- filter design using Butterworth reference analog prototype filter.

**Step 3:**

Filter order is predetermined, N=2.

**Step 4:**

The Butterworth reference prototype filter transfer function has no zeros, only poles. These can be computed via expression:

As N = 2, the values of poles are:

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

The analog filter transfer function is obtained from the reference analog prototype filter transfer function using expression:

As the Butterworth reference prototype filter has no zeros, the expression for transfer function is simpler:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

Generally, substituting the complex variable s into the expression for analog filter transfer function, the following is obtained:

where:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

The filter order is predetermined.

There is no need to additionally change it.

Filter realization:

Figure 3-6-2 illustrates the direct realization of designed IIR filter, whereas Figure 3-6-3 illustrates the frequency response of the filter obtained using **Filter Designer Tool**.

**Figure 3-6-2. Digital IIR filter direct realization in this example**

**Figure 3-6-3. Digital IIR filter frequency characteristic in this example**

**Step 1:**

Type of filter – high-pass filter

Filter specifications:

- Filter order – N=3;
- Sampling frequency – fs=20KHz;
- Passband cut-off frequency – fc=5KHz; and
- Minimum stopband attenuation – ap=40dB.

**Step 2:**

Method- filter design using Butterworth reference analog prototype filter

**Step 3:**

Filter order is predetermined, N = 3.

**Step 4:**

The Butterworth reference prototype filter transfer function has no zeros, only poles. These can be computed via expression:

As N = 3, the values of poles are:

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

The analog filter transfer function is obtained from the reference analog prototype filter transfer function using expression:

As the Butterworth reference prototype filter has no zeros, the expression for transfer function is simpler:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

Generally, substituting the complex variable s into the expression for analog filter transfer function, the following is obtained:

where:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

The filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-4 illustrates the direct realization of designed IIR filter.

**Figure 3-6-4. Digital IIR filter direct realization in this example**

**Figure 3-6-5. Digital IIR filter frequency characteristic in this example**

**Step 1:**

Type of filter – band-pass filter

Filter specifications:

- Filter order – N=4;
- Sampling frequency – fs=20KHz; and
- Passband cut-off frequency – fc1=4KHz, fc2=6KHz.

**Step 2:**

Method - filter design using Butterworth reference analog prototype filter

**Step 3:**

Filter order is predetermined, N = 4.

**Step 4:**

The Butterworth reference prototype filter transfer function has no zeros, only poles. These can be computed via expression:

When designing an IIR band-pass filter, the reference prototype filter order is half that of the required IIR filter order. In this example for N=4, the order of reference prototype filter is 2, so the values of poles are:

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

The analog filter transfer function is obtained from the reference analog prototype filter transfer function using expression:

As the Butterworth reference prototype filter has no zeros, the expression for transfer function is simpler:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

Generally, by substituting the complex variable s into the expression for analog filter transfer function, the following is obtained:

where:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

In this example, the general expression can be written in a simpler way:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

Filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-6 illustrates the direct realization of designed IIR filter.

**Figure 3-6-6. Digital IIR filter direct realization in this example**

**Figure 3-6-7. Digital IIR filter frequency characteristic in this example**

**Step 1:**

Type of filter – band-stop filter

Filter specifications:

- Filter order – N=4;
- Sampling frequency – fs=20KHz; and
- Passband cut-off frequency – fc1=3000Hz, fc2=3300Hz.

**Step 2:**

Method - filter design using Butterworth reference analog prototype filter.

**Step 3:**

Filter order is predetermined, N = 4.

**Step 4:**

When designing an IIR band-stop filter, the reference prototype filter order is half that of the required IIR filter order. In this example for N = 4, the order of reference prototype filter is 2, so the values of poles are:

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

**Step 6:**

The transformation into a digital filter through bilinear transformation:

Generally, by substituting the complex variable s into the expression for analog filter transfer function, the following is obtained:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

In this example, the general expression can be written in a simpler way:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

Filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-8 illustrates the direct realization of designed IIR filter.

**Figure 3-6-8. Digital IIR filter direct realization in this example**

**Figure 3-6-9. Digital IIR filter frequency characteristic in this example**

**Step 1:**

Type of filter – low-pass filter

Filter specifications:

- Sampling frequency – fs=44100Hz;
- Passband cut-off frequency– fc1=15KHz;
- Stopband cut-off frequency – fc2=18KHz;
- Maximum passband attenuation – ap=1dB; and
- Minimum stopband attenuation – as=40dB.

**Step 2:**

Method - filter design using Chebyshev reference analog prototype filter

**Step 3:**

Filter order is not pre-determined, so it is necessary to choose an initial solution from which iterative method starts. The solution is redefined progressively until some pre-determined requirements are satisfied. Let’s assume that the initial filter order is 4.

**Step 4:**

The Chebyshev reference prototype filter transfer function has no zeros, only poles. These can be computed via expression:

As N = 4, the values of poles are:

The Chebyshev filter transfer function is expressed as:

In this case, the value of constant A0 is:

A0 = 0.2457

so that the Chebyshev reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

As the Chebyshev reference prototype filter has no zeros, the expression for transfer function is simpler:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

Generally, by substituting the complex variable s into the expression for analog filter transfer function, the following is obtained:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

By analyzing the resulting filter using Filter Designer Tool, it is obvious that the attenuation amounting to 31.2dB approximately at the frequency of 18KHZ is not sufficient. The frequency characteristic of the resulting digital filter is illustrated in Figure 3-6-10 below.

**Figure 3-6-10. Frequency characteristic of the resulting IIR filter**

It is necessary to additionally redefine the filter order until the predefined requirements are satisfied. The filter order is incremented by 1 and is 5 therefore. All steps starting with step 3 are iterated.

**Step3:**

The filter order is incremented in the second iteration. A new filter order is 5.

**Step 4:**

The Chebyshev reference prototype filter transfer function has no zeros, only poles. These can be computed via expression:

As N = 5, the values of poles are:

The Chebyhsev filter transfer function is expressed as:

In this case, the value of constant A0 is:

A0 = - 0.1228

so the Chebyshev reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

As the Chebyshev reference prototype filter has no zeros, the expression for transfer function is simpler:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

Generally, substituting the complex variable s into the expression for analog filter transfer function, the following is obtained:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

By analyzing the resulting filter using **Filter Designer Tool**, it is obvious that the attenuation amounting to 41.6dB approximately at the frequency of 18KHZ is not sufficient. The frequency characteristic of the resulting digital filter is illustrated in Figure 3-6-11 below.

**Figure 3-6-11. Frequency characteristic of the resulting IIR filter**

It is not necessary to further increase the filter order as this one is appropriate. Sometimes more iterations are needed to determine the filter order. The whole procedure is the same, only it takes more time.

**Filter realization:**

Figure 3-6-12 illustrates the direct realization of designed IIR filter, whereas Figure 3-6-13 illustrates the frequency characteristic of the filter obtained using Filter Designer Tool.

**Figure 3-6-12. Digital IIR filter direct realization**

**Figure 3-6-13. Frequency characteristic of digital IIR filter**

**Step 1:**

Type of filter – high-pass filter

Filter specifications:

- Filter order – N = 3;
- Sampling frequency – fs = 20KHz;
- Passband cut-off frequency – fc = 5KHz; and
- Maximum passband attenuation – ap = 1dB.

**Step 2:**

Method - filter design using Chebyshev reference analog prototype filter

**Step 3:**

Filter order is predetermined, N = 3.

**Step 4:**

The Chebyshev reference prototype filter transfer function has no zeros, only poles. These can be computed via expression:

As N = 3, the values of poles are:

The Chebyshev filter transfer function is expressed as:

In this case, the value of constant A0 is:

A0 = - 0.4913

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

As the Chebyshev reference prototype filter has no zeros, the expression for transfer function is simpler:

After substitution of poles and Ωc into expression:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

The filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-14 illustrates the direct realization of designed IIR filter.

**Figure 3-6-14. Direct realization of digital IIR filter in this example**

**Figure 3-6-15. Frequency characteristic of digital IIR filter in this example**

**Step 1:**

Type of filter – band-pass filter

Filter specifications:

- Filter order – N = 4;
- Sampling frequency – fs = 20KHz;
- Passband cut-off frequencies – fc1 = 4KHz, fc2 = 6KHz; and
- Maximum passband attenuation – ap = 1dB.

**Step 2:**

Method filter design using Chebyshev reference analog prototype filter.

**Step 3:**

Filter order is predetermined, N = 4.

**Step 4:**

When designing an IIR band-pass filter, the reference prototype filter order is half that of the required IIR filter order. In this example for N = 4, the order of reference prototype filter is 2, so the values of poles are:

The Chebyshev filter transfer function is expressed as:

In this example, the value of constant A0 is:

A0 = 0.9826

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

**Step 6:**

The transformation into a digital filter through bilinear transformation:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

In this expression, the general expression can be written in a simpler way:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

Filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-16 illustrates direct realization of designed IIR filter.

**Filter 3-6-16. Direct realization of digital IIR filter in this example**

**Figure 3-6-17. Frequency characteristic of digital IIR filter in this example**

**Step 1:**

Type of filter – band-stop filter

Filter specifications:

- Filter order – N = 4;
- Sampling frequency – fs = 20KHz;
- Passband cut-off frequencies – fc1 = 3000Hz, fc2 = 3300Hz; and
- Maximum passband attenuation – ap = 1dB.

**Step 2:**

Method - filter design using Chebyshev reference analog prototype filter.

**Step 3:**

Filter order is predetermined, N = 4.

**Step 4:**

When designing an IIR band-pass filter, the reference prototype filter order is half that of the required IIR filter order. In this example for N = 4, the order of reference prototype filter is 2, so the values of poles are:

The Chebyshev filter transfer function is expressed as:

In this example, the value of constant A0 is:

A0 = 0.9826

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

**Step 6:**

The transformation into a digital filter through bilinear transformation:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

In this expression, the general expression can be written in a simpler way:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

Filter order is predetermined.

There is no need to additionally change it.

**Filter realization**

Figure 3-6-18 illustrates the direct realization of designed IIR filter.

**Figure 3-6-18. Direct realization of digital IIR filter in this example**

**Figure 3-6-19. Frequency characteristic of digital IIR filter in this example**

**Step 1:**

Type of filter –low-pass filter

Filter specifications:

- Sampling frequency – fs = 44100Hz;
- Passband cut-off frequency – fc1 = 15KHz;
- Stopband cut-off frequency – fc2 = 18KHz;
- Maximum passband attenuation – ap = 1dB; and
- Minimum stopband attenuation – as = 40dB.

**Step 2:**

Method - filter design using inverse Chebyshev reference analog prototype filter.

**Step 3:**

Filter order is not pre-determined, so it is necessary to choose an initial solution from which iterative method starts. The solution is redefined progressively until some pre-determined requirements are satisfied. Let’s assume that the initial filter order is 4.

**Step 4:**

As N = 4, the values of poles are:

The inverse Chebyhsev filter transfer function is expressed as:

In this example, the value of constant H0 is:

H0 = 0.01

so that the Chebyshev reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

In this example, the analog filter transfer function becomes:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

By analyzing the resulting filter using **Filter Designer Tool**, it is obvious that the attenuation amounting to 5.2dB approximately at the frequency of 15KHZ is not sufficient. The frequency characteristic of the resulting digital filter is illustrated in Figure 3-6-20 below.

**Figure 3-6-20. Frequency charactersitic of designed IIR filter**

The attenuation at 15KHz is higher than 1dB and the resulting filter doesn’t satisfy the specifications therefore. It is necessary to additionally redefine the filter order until the predefined requirements are satisfied. The filter order is incremented by 1, and becomes 5 therefore. All steps starting with step 3 are iterated.

**Step 3:**

The filter order is incremented in the second iteration. A new filter order is 5.

**Step 4:**

The inverse Chebyshev reference prototype filter transfer function has no zeros, only poles.

These can be computed via expression:

As N = 5, the values of poles are:

The Chebyhsev filter transfer function is expressed as:

In this case, the value of constant H0 is:

H0 = - 0.05

so the inverse Chebyshev reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

In this example, the analog filter transfer function becomes:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

By analysing the resulting filter using **Filter Designer Tool**, it is obvious that the attenuation at 18KHZ is less than 1dB (approximately 0.8dB). The frequency characteristic of the resulting digital filter is illustrated in Figure 3-6-21 below.

**Figure 3-6-21. Frequency characteristic of IIR filter**

It is not necessary to further increase the filter order as this one is approriate. Sometimes more iterations are needed to determine the filter order. The whole procedure is the same, only it takes more time.

**Filter realization:**

Figure 3-6-22 illustrates the direct realization of designed IIR filter, whereas Figure 3-6-23 illustrates the frequency characteristic of the filter obtained using Filter Designer Tool.

**Figure 3-6-22. Direct realization of digital IIR filter in this example**

**Figure 3-6-23. Frequency characteristic of digital IIR filter in this example**

**Step 1:**

Type of filter – high-pass filter

Filter specifications:

- Filter order – N = 3;
- Sampling frequency – fs = 20KHz;
- Passband cut-off frequency– fc = 5KHz; and
- Minimum stopband attenuation – 40dB.

**Step 2:**

Method - filter design using inverse Chebyshev reference analog prototype filter.

**Step 3:**

Filter order is predetermined, N=3.

**Step 4:**

As N = 3, the values of poles are:

The inverse Chebyshev filter transfer function is expressed as:

In this case, the value of constant H0 is:

H0 = -0.03

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

In this example, the transfer function is:

After substituting the poles and Ωc into expression:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

This general expression can be written in a simpler way in this example:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

The filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-24 illustrates the direct realization of designed IIR filter.

**Figure 3-6-24. Direct realization of digital IIR filter in this example**

**Figure 3-6-25. Frequency characteristic of digital IIR filter in this example**

**Step 1:**

Type of filter – band-pass filter

Filter specification:

- Filter order – N = 4;
- Sampling frequency – fs = 20KHz;
- Passband cut-off frequencies – fc1 = 4KHz, fc2 = 6KHz; and
- Minimum stopband attenuation – 40dB.

**Step 2:**

Method - filter design using inverse Chebyshev reference analog prototype filter.

**Step 3:**

Filter order is predetermined, N = 4.

**Step 4:**

When designing an IIR band-pass filter, the reference prototype filter order is half that of the required IIR filter order. In this example for N=4, the order of reference prototype filter is 2, so the values of poles are:

The Chebyshev filter transfer function is expressed as:

In this example, the value of constant H0 is:

H0 = 0.01

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

For this example, the analog filter transfer function is:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

In this example, the general expression can be written in a simpler way:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

Filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-26 illustrates direct realization of designed IIR filter.

**Figure 3-6-26. Direct realization of digital IIR filter in this example**

**Figure 3-6-27. Frequency characteristic of digital IIR filter in this example**

**Step 1:**

Type of filter – band-stop filter

Filter specification:

- Filter order – N=4;
- Sampling frequency – fs=20KHz;
- Stopband cut-off frequencies – fc1=3000Hz, fc2=3300Hz; and
- Minimum stopband attenuation – 40dB.

**Step 2:**

Method - filter design using inverse Chebyshev reference analog prototype filter.

**Step 3:**

Filter order is predetermined, N = 4.

**Step 4:**

The inverse Chebyshev reference prototype filter transfer function has no zeros, only poles. These can be computed via expression:

When designing an IIR band-stop filter, the reference prototype filter order is half that of the required IIR filter order. In this example for N = 4, the order of reference prototype filter is 2, so the values of poles are:

The inverse Chebyshev filter transfer function is expressed as:

In this example, the value of constant H0 is:

H0 = 0.01

The reference analog prototype filter transfer function is:

**Step 5:**

First it is necessary to compute the analog prototype filter cut-off frequency Ωc.

In this example, the analog filter transfer function is:

**Step 6:**

The transformation into a digital filter through bilinear transformation:

where:

zk are the zeros of analog filter transfer function; and

pk are the poles of analog filter transfer function.

In this expression, the general expression can be written in a simpler way:

A more condensed form of the previous expression is:

The result is the IIR filter transfer function.

**Step 7:**

Filter order is predetermined.

There is no need to additionally change it.

**Filter realization:**

Figure 3-6-28 illustrates the direct realization of designed IIR filter.

**Figure 3-6-28. Direct realization of digital IIR filter in this example**

**Figure 3-6-29. Frequency characteristic of digital IIR filter in this example**