Advantages and disadvantages of FIR and IIR filters

FIR stands for finite impulse response. Most of the FIR full form filter is that linear phase filter When the linear phase filter is desired an FIR filter is usually used. Here this article gives information about the advantages and disadvantages of FIR as well as IIR filters to know more details about it. 

Advantages of  FIR filters :
  • FIR filter is always stable
  • It is simple
  • Design complexity generally linear
  • FIR filter are having linear phase response
  • It is easy to optimize
  • Non causal
  • Transient have a finite duration
  • Quantization noise is not much as a problem
  • Round of noise error is minimum
  • Both filtering recursive, as well as nonrecursive filter, can be also designed using FIR designing techniques
  • For designing of a filter having an arbitrary magnitude response; FIR filter designing techniques can be easily applied
  • Good performance
  • Robust
  • The necessity of computational techniques for filter implementation
  • A requirement of large storage
  • Incapability of linear phase response
Disadvantages of FIR filters :
  • Large storage requirements
  • Can not simulate prototype analog filter
  • For the implementation of FIR filter complex computational techniques are required to implement
  • It is hard to implementation than IIR
  • Expensive due to a large order
  • Require more memory
  • Time-consuming process
IIR stands for infinite impulse response. IIR Filter has a lower filter order then a corresponding FIR filter. Here this article also gives information about the advantages and disadvantages of  IIR filters to know more details about it.

Advantages of IIR filters :
  • It has a stable design
  • An IIR filter has a lesser number of side lobes in the stop band then FIR filter with the same number of parameters
  • Implementation of an IIR filter involves fewer parameters 
  • Less memory requirement
  • Lower computational complexity
  • Analog frequency and digital frequency are linearly related
Disadvantages of IIR filters :
  • This filter is useful only when the analog filter is bandlimited
  • They are harder to implement using fixed-point arithmetic, such as noise generated by calculations and also a limit cycles
  • They are more susceptible to the problem of line finite length arithmetic
  • They don't offer the computational advantages of FIR filter for the multi-rate application system
Explore more information:

IIR filter example

IIR filter short form is for infinite impulse response. In IIR filter design that are following criteria should be satisfied by designing the digital filter in the analog domain and transforming into a digital domain.

The transfer function of analog filter is :

H(s) = 3 / (s+2) (s+3) with Ts = 0.1 sec

Design the digital IIR filter using BLT.

Answer :

H(s) = 3 / (s+2) (s+3)........................(1)

In BLT H(Z) is obtained by putting :

s = 2/Ts [ Z-1/Z+1] here Ts = 0.1 sec

s = 2/0.1 [ Z-1/Z+1]  

s = 20 [ Z-1/Z+1]  

Putting this value in equation (1) we get,

H(Z) = 3 / [ 20*(Z-1/Z+1)+2] [  20*(Z-1/Z+1)+3]

H(Z) = 3 / [(20Z-20/Z+1) + 2] [ (20Z-20/Z+1 ) + 3 ]

H(Z) = 3 (Z+1) (Z+1) / (20Z-20+2Z+2) (20Z-20+3Z+3) 

H(Z) = 3 (Z+1)/  506Z2-374Z-414Z+306
-
H(Z) = 3  (Z2+ 2Z +1 )/  506Z2-788Z+306

H(Z) =  (Z2+ 2Z +1 )/  168.67Z2-262.67Z+102

This function required a function for digital IIR filter 

Z transform inverse

If we want to analyze a system, which is already represented in the frequency domain, a discrete time signal then we go for inverse Z transformation.

Mathematically it can be represented as : 
x(n) = z-1 X(Z)
x(n) = Z-1 X(Z)

Here x(n) is the signal in time domain and X(Z) is the signal in the frequency domain to be represented.

And here also define if we want to represent the above equation in integral format then we can write it as

x(n) = (1/2∏j) ∫ X(z) Z-1 dz

Here the integral is over close path C. This is within the region of conversions (ROC) of the x(z) and it does contain the origin. Now here this article also gives the information about how to find inverse Z transform.

Method to find Inverse Z - transform :

We follow the following four-way to determine the inverse Z transformation system.

Inverse Z transform using long division method

While carrying out the long division method, it always converts the given expression in the simplest form. That means as far as possible, it should be in form of Z divided by some polynomial. |Z| > 1 it is causal sequence. For the causal sequence the denominator polynomial should have maximum power of Z transform on its left. Thus the given expression is in the total proper form.

Find inverse Z transform of  X(z) is = Z/Z-1   |Z|>1 



X(Z) = 1 + Z-1 +  Z-2  +  Z-3+..........

             ∞
X(Z) = ∑ x(n) Z-n
          n=0 

X(Z) is = x(0) + x(1) Z-1 + x(2) Z-2  + x(3) Z-3


X(n) =  {x(0) ,  x(1), x(2), x(3) }

x(n) = { 1, 1, 1, 1 }

x(n) = u(n)


Z-1{Z-1/Z-1} = u(n)

This is a standard Z transform pair.

Z transform partial fraction expansion

Partial fraction expansion method is possible only when Z transform definition which is rational in nature, That means they are expressed of two polynomials.

X(Z) = N(Z) / D(Z)


= b0 +  b1  Z-1  + b2  Z-2   + …….+ bM Z-M  /  a0 +  a1  Z-1  + a2  Z-2   + …….+ aN Z-N

  b0 ,  b1  b2   , bM =  Coefficients of numerator 

 a0 , a1  ,  a2  ..... aN  =  Coefficients of Denominator

M = Degree of numerator 

N =  Degree of denominator
N(Z) = Numerator  polynomial
D(Z) = Denominator polynomial

Step to follow the partial fraction expansion method :


Step 1: Check whether the given function is the proper form or not. The function is said to be in proper form when the following conditions are satisfied. 

  • The coefficient a0 in the above equation should be equal to 1. If  a not equal to 1 then the polynomial is adjusted accordingly.
  • In equation a not equal to 1 and the degree of numerator should be less than the degree of the denominator(M<N). If this condition is satisfied then the long division is carried out to make M<N.
Step 2: Multiply the numerator and denominator by ZN. That means to convert the function in term of the positive power of Z.


Step 3 :  Obtain  the equation X(Z) / Z

Step 4: Factorize the denominator and obtain the roots. Then the denominator will be in the form 

(Z - P1 ) (Z - P2 ) (Z - P3 )............(Z -PN )

Here P1  P P ........Pis called as poles.

Step 5 :  Write down the equation in partial expansion form as follows :


X(Z) / Z =  A1 /  Z - P1  + A2 / Z - P2  + .............+   AN / Z - PN


A1, A2,  A3 .....AN  are coefficient. the coefficient Ais  calculated as 


 AK =  (Z - PK ). X(Z) / Z  | where Z=PK

Step 6 : By calculating  transfer  of a1, a2,  a3 .....an   z to R.H.S of equation. Now we standard from pair to obtain inverse Z transform

x(n) = IZT { Z /  Z - PK  } = (PK)n u(n) if ROC : |Z| > | PK |
that means causal sequence 

AND 
x(n) = IZT { Z /  Z - PK  } = - (PK)n u(-n-1) if ROC : |Z| < | PK |
that means anticausal sequence 


Now let us check it out the example of partial fraction method to learn more details about this article.

Inverse z transform partial fraction expansion examples

Determine IZT of the following :

X(Z) = 1- 1/2 Z-1 / 1- 1/4 Z-2

Step 1: Find we will whether a given function is the proper form or not.
Here a= 1 M=1 and N=2.

Since M<N the function is in the proper form.

Step 2: The given function is 

X(Z) = 1- 1/2 Z-1 / 1- 1/4 Z-2

Multiply numerator and denominator  Z2

X(Z) = Z- 1/2 Z1 /  Z- 1/4 

Step 3 :  We will obtain the equation of X(Z)/Z as follows :

X(Z) = Z(Z - 1/2)  /  Z- 1/4 

X(Z)/Z = (Z - 1/2)  /  Z- 1/4 

Step 4: We will the root of denominator  Z2- 1/4 

Here Z- 1/4  =  Z- (1/2)2


Root is ( Z - 1/2)  and ( Z + 1/2) 

Thus the poles are   ( Z - 1/2) = (Z - P1) = P1 = 1/2

 ( Z + 1/2) = (Z - P2) = P2 = - 1/2

Step 5: Thus the equation can be written as  


X(Z)/Z = (Z - 1/2)  /  - 1/2) ( Z + 1/2) 

           = 1 / ( Z + 1/2) 

Step 6: The partial fraction expansion form is 

X(Z)/Z = A /  (Z - P1) Thus A=1 we do not have to calculate this value.

Step 7:

X(Z)/Z = 1 / ( Z + 1/2) 


X(Z) = Z /  ( Z + 1/2) 

This function is causal if |Z| > 1/2. The given ROC is  |Z| > 1/2. 

So,

IZT { Z /  Z - PK  } = (PK)n u(n)

x(n) = (-1/2)n u(n)

Z transform stability

In Z transform in DSP that is a necessary and sufficient condition for the system to be BIBO stable is given as below. This article gives information about Z transform stability to better understand this topic.

n=∞
∑   |h(n)| <  ∞
n=-∞

        n=∞
H(Z) = ∑   h(n)  z-n
        n=-∞

              n=∞
|H(Z)| =| ∑   h(n)  z-n |
              n=-∞

The magnitude of the overall sum is less than the sum of the magnitude of individual terms

              n=∞
|H(Z)| < ∑   |h(n)|  | z-n |
              n=-∞

If H(z) is evaluated on the unit circle, then | z-n | = 1

              n=∞
|H(Z)| < ∑   |h(n)|  
              n=-∞

If the system is BIBO stable, then 

n=∞
 ∑   |h(n)|   < ∞
 n=-∞

|H(z)| < ∞

This condition requires that the unit circle should be present in the ROC full form of H(Z).

Z transform examples

Find Z transform of F[K] =Cos(ak) u[k] :

F(z) = Z (cos(ak) u(k) )

= Z ( ½ (ejak+e-jak) u(K) )

= ½ (Z (ejak  u(k) ) + Z (e-jak) u(K) )

=½ ( Z/ Z-eja + Z/ Z-e-ja)

= ½ ( Z/ Z-eja * Z-e-ja/ Z-e-ja + Z/ Z-e-ja * Z-e-ja/ Z-e-ja )

=½ ( Z2- Ze-ja / Z2- Zeja – Ze-ja +1  + Z2- Zeja / Z2- Zeja – Ze-ja +1)

=½ (2Z2 – (Zeja – Ze-ja) / Z2- Zeja – Ze-ja +1)

= ½(2Z2 – 2Zcos(a)/ Z2-2Zcos(a) +1 

= Z (Z-cos(a)) / Z2-2Zcos(a) +1 

Z transform properties

In this section, we will study the properties of the Z transform. We know that x (n) and X (Z) are Z transform pair and denoted as,

               Z
If  x (n)   ↔   X(Z)  

1. Linearity :

In this property 

                    Z                                  Z
If  x(n) is   ↔   X1(Z)  and  x(n)     X2(Z)  then
              
                                 DTFT
a1 x(n)   + a2 x(n)    ↔    a1 X(Z)   + a2 X(Z)  

2. Time shifting : 

 If 
               Z
x (n) is    ↔    X(Z)  then 

              Z
x(n-k)    ↔    –k  X(Z)  

3. Scaling in the Z domain :

  If 

              Z                                          Z
x (n) is   ↔    X(Z)  then  a  x(n)      ↔    X ( Z / a)

4. Time reversal :

 If 
              Z
x (n) is   ↔    X(Z)  then 
  
             Z
x (-n)    ↔    X(Z-1)   

5. Differentiation :

If 
                Z
x (n)   is  ↔    X(Z)  then 

               Z
n x (n)    ↔   -Z  dX(Z) / dZ  


6. Convolution theorem :

                   Z                                      Z
If  x(n) is  ↔   X1(Z)  and  x(n)     ↔     X2(Z)  then

                                Z
  x(n) * x(n)  is    ↔     X1(Z) . X2(Z) 

Z transform roc

Definition of ROC : 

The ROC stands for the region of convergence of X(Z) is set for all the values of Z for which X(Z)  attains a finite value. Every time when we find Z transform we must indicate its ROC.

The significance of ROC :
  • ROC will decide whether a system is stable or unstable
  • ROC also determine the type of sequence that means: Causal or noncausal, Finite or infinite
Properties of ROC for Z transform :
  • The ROC is a ring, whose center is at an origin
  • ROC cannot contain any pole
  • If x(n) is causal then ROC is exterior part of a circle of radius say É–
  • If x(n) is anticausal then ROC is interior part of a circle of radius say É–
  • If x(n) is  two-sided sequence then ROC is the intersection of two circles of radii É– and β
  • The ROC must be connected region
  • If ROC of X(Z) include unit circle then and then only the Fourier transform of DT sequence x(n) converges
  • For a finite duration sequence, x(n) the ROC is the entire Z plane except Z = 0 and Z = ∞
Summary of ROC :
  • For Causal system, ROC is entire Z plane except |Z| = 0 
  • For the anti-causal system, ROC is the entire Z plane except |Z| = ∞
  • For two-sided sequence ROC is entire Z plane except  |Z| = 0  and |Z| = ∞

z transform convolution

Statement :

If  x1(n) * x2(n) ↔ X1(Z)  * X2(Z)         


Proof :
  
              
y (n)   = ∑      x(k) h(n-k)
            k=-∞

                            
y(z)  =             [     x(k) h(n-k) ] Z-n
                n=-∞    k=-∞

                  ∞                         ∞
y(z)  =       ∑      x(k) Z-k      ∑  h(n-k)  Z-(n-k)
                k=-∞                n=-∞

n=l and k=0 in second terms;

                  ∞                       ∞
y(z)  =       ∑      x(k) Z-k    ∑  h(l)  Z-l
                k=-∞                l=-∞


Y(z) = X(Z) H(Z)

Application of z transform

The field of signal processing is essentially a field of signal analysis in which they are reduced to their mathematical component and evaluated. One important concept of signal processing is that of the Z transform method which converts unwieldy sequence into a form that can be easily dealt with. Z transform is used for much signal processing application. Here this article gives information about the application of Z transform to know more details about it.
  • Pole-zero description of the discrete-time system
  • Analysis of linear discrete signal
  • Use to analysis digital filter
  • Used to find the frequency response
  • Obtain impulse response estimation
  • Determine the difference equation
  • Analysis of discrete signal
  • Calculation of  a signal to control system
  • Direct computer evolution of frequency response
  • Voice transmission
  • Enhance the electrical as well as mechanical energy to provide a dynamic nature of the system
  • Geometric evolution of frequency response
  • Frequency response estimation via the FFT
  • Used to simulate the continuous systems
  • It also helps in system design, analysis and also checks the system stability
  • For automatic control in telecommunication
  • Used in designing digital filters

Project topic for electronics engineering students

Full forms related to electronics engineering terms