DSPRelated.com
Forums

Relationship between FIR frequency response and each polyphase response

Started by gretzteam November 12, 2015
I think that if you designed each polyphase separately to hit a particular fractional delay target within a certain phase tolerance you could probably relate this to the worst-case interpolation error as a function of frequency. There are optimization tools that would work directly in the phase-matching domain. 

> >I'm still struggling in linking the frequency domain specifications of
the
>overall filter with the magnitude/phase response of each polyphase. They >are clearly linked, as a better filter in the classical sense (good >stopband across all images), produces phases that approximate the
desired
>'delay' much closer. > >I wondered if there was a mathematical relationship between the two. >
Hi, I don't know if the following interpretation can help you (maybe it's already obvious to you), but just in case: The polyphase filters are just time-domain decimated versions of the overall filter (with a different shift in time for each branch). So their frequency responses are simply equal to the main frequency response, but aliased every fs/2R (where R is the decimation ratio, and fs the sampling frequency). The magnitude of their frequency responses are all equal, only their phase differ up to a constant factor (constant shift in the time domain). Also, I would say that it's impossible for them to be all symetrical in the time domain, except one, because if the overall filter is already symetrical, then how the shifted versions of it could be symetrical too (except for the one that has zero shift, of course) ? I must admit this argument is a bit intuitive, maybe I'm wrong somewhere! Julien --------------------------------------- Posted through http://www.DSPRelated.com
>I think that if you designed each polyphase separately to hit a
particular
>fractional delay target within a certain phase tolerance you could >probably relate this to the worst-case interpolation error as a function
of
>frequency. There are optimization tools that would work directly in the >phase-matching domain.
That is the interesting thing to me. Say you interpolate by 8: 1) Standard design: Design an FIR filter that attenuates the new images created by inserting the zeros. Typically you'll design a symmetric FIR filter, say 128 taps. Each phase would have 16 taps but probably wouldn't be symmetric - but as mentioned before, that doesn't matter and is just an artifact of implementing in polyphase. The overall response matters. 2) Design 8 separate FIR filter to meet a given delay. Typically you'll approach the design separately for each phase, meeting some specifications, with a symmetric filter or different length if you want. Now the OVERALL filter probably won't be symmetric! Probably isn't a problem either, just observing. --------------------------------------- Posted through http://www.DSPRelated.com
On Thu, 12 Nov 2015 19:38:53 -0600, "gretzteam" <34989@DSPRelated>
wrote:

>>In article <n235dt$5aj$1@blue-new.rahul.net>, >>Steve Pope <spope33@speedymail.org> wrote: >>>Mark Curry <gtwrek@sonic.net> wrote: >>> >>>> Yep, I rememember right. From Lyons: "Because the subfilter >>>> coefficient sets ... are not neccesarily symmetrical, we can't >>>> reduce the number of mults by means of a folded FIR structure". >>> >>>I would assume Lyons' statement about multiplier re-use not being >>>possible is true for the general case, but for some (large?) >>>category of polyphase decimation filters the multiplier re-use >>>is there. Looking at a some simple examples should make this >>>apparent. >> >>That was my interest in this thread. I designed such a filter >>(straight from Rick's book) in the past. We had an optimized >>folded filter already designed which we COULDN'T use, as the >>polyphase filter sets were not symmetric. I remember thinking >>at the time "what could we do to make them symmetric?" I gave >>up as it wasn't obvious to me at all. I remember concluding >>it wasn't possible (and multipliers were cheap >>for me in my implementation). But this thread, and Rick's >>non-absolute general case statement is making me wonder. >> >>I may jot down some cases again and think about it. By I'm >>not as confident as you that for "some (large?) category of >>polyphase decimation filters" that the multiplier reuse is there. >> >>Regards, >> >>Mark > > >I don't think designing an FIR filter where the polyphase components would >be symmetric is particularly hard. Assuming a linear programming approach, >apart from the frequency domain constraints from passband/stopband, all >you have to do is add a set of linear constraints that will enforce >symmetry on the polyphase components. You know which coefficients of the >FIR will appear in which polyphase, so it's a for loop exercise... > >How that restricts the achievable performance of a filter without that >restriction is an interesting question...
How do you achieve a fractional delay between input samples without an asymmetric impulse response? The output sample is time-aligned with the peak of the overall impulse response. If that peak has to happen between input samples, then generally the coefficients are necessarily asymmetric for an overall filter with symmetry. Eric Jacobsen Anchor Hill Communications http://www.anchorhill.com
Eric Jacobsen <eric.jacobsen@ieee.org> wrote:

>How do you achieve a fractional delay between input samples without an >asymmetric impulse response? The output sample is time-aligned with >the peak of the overall impulse response. If that peak has to >happen between input samples, then generally the coefficients are >necessarily asymmetric for an overall filter with symmetry.
I agree. I see a distinction between an asymmetric subfilter impulse response, and the potential for multiplier re-use in the overall filter. A single multiplier operation might be used for two terms, one in one subfilter and the second in a different subfilter. Steve
In article <n25cgn$23i$1@blue-new.rahul.net>,
Steve Pope <spope33@speedymail.org> wrote:
>Eric Jacobsen <eric.jacobsen@ieee.org> wrote: > >>How do you achieve a fractional delay between input samples without an >>asymmetric impulse response? The output sample is time-aligned with >>the peak of the overall impulse response. If that peak has to >>happen between input samples, then generally the coefficients are >>necessarily asymmetric for an overall filter with symmetry. > >I agree. > >I see a distinction between an asymmetric subfilter impulse response, >and the potential for multiplier re-use in the overall filter. >A single multiplier operation might be used for two terms, one in >one subfilter and the second in a different subfilter.
Steve - isn't that the whole point of polyphase? Each subfilter's re-using the same multipliers that the the "other" subfilter bank uses, just with a new set of coefficients. The "further" optimization I was thinking about (which I'm convinced again isn't possible per Eric response) was reusing multipliers due to "folding" the symmetric terms (iff they were symmetric, which they're not). I think we're actually agreeing, just speaking past each other a bit... Regards, Mark

> >How do you achieve a fractional delay between input samples without an >asymmetric impulse response? The output sample is time-aligned with >the peak of the overall impulse response. If that peak has to >happen between input samples, then generally the coefficients are >necessarily asymmetric for an overall filter with symmetry. > > >Eric Jacobsen >Anchor Hill Communications >http://www.anchorhill.com
Good Point. Makes sense. So I played a bit with this and it turns out that the two ways to think of this are the same thing. Doing a better job at attenuating the images caused by inserting zeros makes each polyphase component closer to their desired 'delay'. Furthermore, the quality of delay approximation for a given frequency x depends on how much attenuation was provided by the filter at those frequencies that would alias onto x if you were to decimate back the 'interpolated' signal. That way, the performance of the filter can be completely carried out in the context of interpolation and image attenuation, using don't care bands etc... Maybe this was obvious to the rest of the world but not to me! --------------------------------------- Posted through http://www.DSPRelated.com
Mark Curry <gtwrek@sonic.net> wrote:

>Steve Pope <spope33@speedymail.org> wrote:
>>Eric Jacobsen <eric.jacobsen@ieee.org> wrote:
>>I see a distinction between an asymmetric subfilter impulse response, >>and the potential for multiplier re-use in the overall filter. >>A single multiplier operation might be used for two terms, one in >>one subfilter and the second in a different subfilter.
>Steve - isn't that the whole point of polyphase? Each subfilter's re-using >the same multipliers that the the "other" subfilter bank uses, just with >a new set of coefficients.
>The "further" optimization I was thinking about (which I'm convinced >again isn't possible per Eric response) was reusing multipliers >due to "folding" the symmetric terms (iff they were symmetric, >which they're not).
>I think we're actually agreeing, just speaking past each other a bit...
Probably. Tangentially, I usually use a Lagrangian interpolator as my first choice in an interpolation (either upsampling or downsampling) situation. (Terminology wars: yes, it is an interpolation even if you're downsampling...) Often, combining an IIR filter with a N-point Lagrangian interpolator (a typical value of N being 4) is lower complexity than a equivalent performance FIR filter even with all the implementation optimization for the latter. Steve
> >Tangentially, I usually use a Lagrangian interpolator as my first >choice in an interpolation (either upsampling or downsampling) >situation. > >(Terminology wars: yes, it is an interpolation even if you're >downsampling...) > >Often, combining an IIR filter with a N-point Lagrangian interpolator >(a typical value of N being 4) is lower complexity than a equivalent >performance FIR filter even with all the implementation optimization >for the latter. > >Steve
Typically a Spline polynomial would be preferred - about the same level of complexity but substantially better attenuation than Lagrange. It will droop a little more in the passband but that is easy to compensate for. --------------------------------------- Posted through http://www.DSPRelated.com
gretzteam <34989@DSPRelated> responds to my post,

>>Tangentially, I usually use a Lagrangian interpolator as my first >>choice in an interpolation (either upsampling or downsampling) >>situation.
>>(Terminology wars: yes, it is an interpolation even if you're >>downsampling...)
>>Often, combining an IIR filter with a N-point Lagrangian interpolator >>(a typical value of N being 4) is lower complexity than a equivalent >>performance FIR filter even with all the implementation optimization >>for the latter.
>Typically a Spline polynomial would be preferred - about the same level of >complexity but substantially better attenuation than Lagrange. It will >droop a little more in the passband but that is easy to compensate for.
I haven't yet tried a spline polynomaial for this purpose. It would be worth taking a look. Lots of ways to skin a cat. Steve