In my filter design, FIR gives order 14 and IIR gives order 8 or 4. so what are the disadvantages of IIR design?
Typically the advantages of an FIR filter are that it is easy to obtain a linear phase response, and numerical stability is not normally a problem.
An IIR filter typically requires fewer taps (as you have observed), so is more efficient computationally, but the phase response tends to be somewhat erratic, and numerical stability is more likely to be an issue.
So it really depends on whether phase response or compute bandwidth are more important to you, and whether you are using limited precision arithmetic (e.g. on a microcontroller) that might cause problems with an IIR filter.
Disadvantage of IIR:
- Phase delay dependent on frequency
- Ripple in passband
- Requires less RAM to execute
- Requires fewer multiply and add steps
Advantages of FIR:
- Can specify passband and stop band ripple
- Can specify phase delay
- Constant delay possible (absolute time for signal to emerge from filter)
Disadvantages of FIR:
- Requires more taps to reach the same performance as an IIR - means more computations per sample (more work for the processor)
- Requires more taps to reach the same performance as an IIR - means you need more memory to do the job. Not so much a problem on a PC, more of a problem in smaller systems where memory is tight.