Digital Signal Processing - How it affects phase and time domain

Hello team,

I want to better understand how DSP affects phase and time domains.
I understand it can both shift (ruin) and rectify certain domains: FIR vs IIR filters etc.

Anyone with real-world practice in this realm who can offer scientific insight would be helpful.

Thanks and peace.

Vance.
 
Basically, with IIR filtering, the frequency response define the phase response like with analogue filters. With FIR, you can have phase response that is independent from the frequency response.
that is not true. You can do non minimum phase IIR filters such as all-pass filters (unity magnitude but phase shift). Actually FIR filters are a sub class of IIR filters, ie IIR can do more than FIR.
 
  • Like
Reactions: gigantic
that is not true. You can do non minimum phase IIR filters such as all-pass filters (unity magnitude but phase shift). Actually FIR filters are a sub class of IIR filters, ie IIR can do more than FIR.

You can replicate IIR all-pass with FIR, as well as any typical IIR filter.
They only things the FIR replication won't fully match: are IIR's infinite "ringing" (joke lol), and the IIR's practically infinite frequency resolution.
FIR's frequency resolution is of course limited to the length of the finite filter, and where impulse peak is placed in the filter.

FIR can make linear phase filters, inverse IIR all-pass filters, and as you stated a pragmatically unlimited number of mixed phase phase filters.
None of these are available with IIR.

I mean, take linear phase high pass and low pass, and their ability to make linear-phase crossovers.
Theoretically, some folks might contend IIR all-pass, or matched-delay-subtractive, or who knows what other IIR and fixed delay strategy, can match FIR's linear phase ability. Well, match at least for low-order crossovers.
Maybe so theoretically, but pragmatically...it ends up being who's kidding who, when folks contend IIR can do linear-phase.

I know you know all the above...no doubt better than me.
So I am at a loss to understand how you can say FIR filters are a sub class of IIR filters, and that IIR can do more.
Please explain, thanks 🙂
 
  • Like
Reactions: mikeAtx
An IIR filter transfer function has the form
H(z) = N(z) / D(z)

Where N is the numerator polynomial and D is the denominator polynomial and z=exp(jω•Ts)

A FIR filter does not have the denominator part which is the recursive (infinite response) part of the filter:

H(z)=N(z)

This means that a FIR filter can be seen as special case of an IIR filter, ie subclass.
 
  • Like
Reactions: newvirus2008
That logic escapes me.
Just because a FIR filter doesn't have the IIR denominator, it seems like a big stretch to call it a subset of IIR.

Seems H(z) is either N(z)/D(z) for IIR,
or N(z) for FIR.
Whether there is a denominator or not makes for a fundamental difference, I think.

Besides, even if we get comfy with that theoretical set theory interpretation,

I'd say in applied practical implementations, IIR is the subset of FIR.
I can embed any number of IIR filters into a FIR file.
How much FIR can you get into IIR? 😉

Edit, should have said embed minimum phase into FIR
 
Last edited:
for FIR we have D(z)=1, ie a special case of IIR.

The eclipse article is mainly good but is wrongly alluding that only FIR can do independent control of phase and magnitude. Both FIR and IIR can do that by flipping one or more of the zeros (ie roots of N(z)) from the inside of the unit circle to outside or outside to inside. The zero flipping does not change the magnitude response but changes the phase.

What do you mean by embedding a filter into a file?
 
  • Like
Reactions: yys310
I think Irisbo is correct, as when D(z) = 1, the filter has no poles and only zeroes and that's an FIR filter. The fundamental difference that the absence of the denominator makes is whether the output depends on past values of itself (IIR) or not (FIR).

Mark100 points to a particular case where the FIR impulse response array is 'specified' as a wav file. In my opinion, there's some kind of perception that an FIR is a superior filter with the IIR being inferior. Manufacturers of processing equipment need to show newer features to get users hooked to their more expensive newer units, which is how I believe FIR filters found their way into the dictionaries of the non-technical masses.

FIR and IIR are both LTI filters that obey discrete mathematics, having their own characteristics and areas of application.
 
Last edited:
  • Like
Reactions: lrisbo
I got curious to what to me seems like a semantic matter whether "FIR filters are a sub class of IIR filters", but as my DSP classes are so old and am not very active around this subject I thought I would give the built in AI chat on Brave Browser called Leo AI a run, and here below is what the chat result looks like.


Q: FIR filters are a sub class of IIR filters

A: Hello! While both Finite Impulse Response (FIR) and Infinite Impulse Response (IIR) filters are essential tools in signal processing, it's not accurate to say that FIR filters are a subclass of IIR filters. They are distinct types of digital filters. FIR filters have a finite response to an impulse input, while IIR filters have an infinite response due to feedback.


Q: Please expand on why FIR filter is not a subclass of IIR filter

A: Sure, I'd be happy to expand on that. FIR and IIR filters differ in their structure and behavior.
FIR filters have a feedforward structure, meaning they only use past and present input values to compute the output. This results in a finite response to an impulse input, hence the name Finite Impulse Response. They are inherently stable and linear phase, which is beneficial in many applications.
On the other hand, IIR filters have a feedback structure, meaning they use both past input and past output values to compute the current output. This leads to an infinite response to an impulse input, hence the name Infinite Impulse Response. IIR filters can be more efficient in terms of computational resources, but they can be unstable and do not have a linear phase response.
So, while both are types of digital filters, FIR filters are not a subclass of IIR filters due to their different structures and properties.



Q: Could you mention a few sources on what your answer is based on

A: Sure, I'm basing my responses on established knowledge from several reputable sources in the field of digital signal processing. Here are a few:

  1. "Discrete-Time Signal Processing" by John G. Proakis and Dimitris G. Manolakis. This is a widely used textbook that covers the fundamentals of digital signal processing, including FIR and IIR filters.
  2. "Understanding Digital Signal Processing" by Rick Lyons. This is a practical guide to DSP that includes detailed explanations of FIR and IIR filters.
  3. The Signal Processing Toolbox of MATLAB, which provides functions and apps to design, analyze, and implement FIR and IIR filters.
  4. Various online resources, including tutorials, lecture notes, and blogs from universities and professionals in the field.
Please note that while I strive to provide accurate and helpful information, it's always a good idea to cross-reference multiple sources when learning new concepts.


Q: Could you point to a few sources where FIR filters have been claimed to be a subclass of IIR filters

A: After a thorough search, I was unable to find any reputable sources that claim FIR filters are a subclass of IIR filters. As I mentioned earlier, FIR and IIR filters are distinct classes of digital filters with different structures and properties. This understanding is widely accepted in the field of digital signal processing and is supported by numerous textbooks, academic papers, and technical resources. If you have come across such a claim in a specific source, I would be interested in reviewing it to provide further context or clarification.
 
Last edited: