Is there a simple expression for the group delay of a CIC filter stage in terms of the differential delay (M) and the rate change R? -- Randy Yates % "Watching all the days go by... Digital Signal Labs % Who are you and who am I?" mailto://yates@ieee.org % 'Mission (A World Record)', http://www.digitalsignallabs.com % *A New World Record*, ELO

# Group Delay of CIC Filters

Started by ●June 18, 2010

Reply by ●June 20, 20102010-06-20

On Fri, 18 Jun 2010 11:21:37 -0400, Randy Yates <yates@ieee.org> wrote:>Is there a simple expression for the group delay of a CIC filter stage >in terms of the differential delay (M) and the rate change R?Hi Randy, I know you have the 2nd edition of my DSP book. Looking at Figure 10-17(a), because a CIC decimation filter (prior to the downsampling process) is merely a D-point moving averager, the linear-phase CIC filter's constant group delay is (D-1)/2 samples. Measured in seconds, the group delay is T*(D-1)/2, where "T" is the time between samples (measured in seconds). Randy, I show this same result, with a bit of mathematics, on page 233 (near Equation (5-40)) of the hardcopy material for my 3rd edition that you reviewed for Prentice Hall. I'll bet you already knew the above. Now if you're asking what's the group delay of, for example a decimating CIC filter, *after* the downsampling by "R" process, darn, I haven't thought about that before. As the guys here say, shooting from the hip, my first thought is that the group delay (measured in seconds) of a decimating CIC filter followed by downsampling by "R" is also T*(D-1)/2, where "T" is the time between *input* samples (measured in seconds). I'll have to think this through carefully and do some MATLAB modeling, but if I'm wrong someone here will straighten me out. See Ya, [-Rick-]

Reply by ●June 20, 20102010-06-20

Rick Lyons <R.Lyons@_BOGUS_ieee.org> writes:> On Fri, 18 Jun 2010 11:21:37 -0400, Randy Yates <yates@ieee.org> > wrote: > >>Is there a simple expression for the group delay of a CIC filter stage >>in terms of the differential delay (M) and the rate change R? > > Hi Randy, > I know you have the 2nd edition of my DSP book. > Looking at Figure 10-17(a), because a CIC decimation filter > (prior to the downsampling process) is merely a > D-point moving averager, the linear-phase CIC filter's > constant group delay is (D-1)/2 samples. Measured in > seconds, the group delay is T*(D-1)/2, where "T" is the > time between samples (measured in seconds). > > Randy, I show this same result, with a bit of mathematics, > on page 233 (near Equation (5-40)) of the hardcopy material > for my 3rd edition that you reviewed for Prentice Hall. > > I'll bet you already knew the above. > > Now if you're asking what's the group delay of, for example > a decimating CIC filter, *after* the downsampling by "R" > process, darn, I haven't thought about that before. > > As the guys here say, shooting from the hip, my first > thought is that the group delay (measured in seconds) > of a decimating CIC filter followed by downsampling by "R" > is also T*(D-1)/2, where "T" is the time between *input* > samples (measured in seconds). > > I'll have to think this through carefully and do some > MATLAB modeling, but if I'm wrong someone here will > straighten me out. > > See Ya, > [-Rick-]Thanks for the response Rick. Unfortunately I hadn't read this before spending an hour of your time this afternoon on the phone discussing it! The (embarrassingly) simple answer is (D-1)/2. -- Randy Yates % "She tells me that she likes me very much, Digital Signal Labs % but when I try to touch, she makes it mailto://yates@ieee.org % all too clear." http://www.digitalsignallabs.com % 'Yours Truly, 2095', *Time*, ELO

Reply by ●October 20, 20112011-10-20

>Rick Lyons <R.Lyons@_BOGUS_ieee.org> writes: > >> On Fri, 18 Jun 2010 11:21:37 -0400, Randy Yates <yates@ieee.org> >> wrote: >> >>>Is there a simple expression for the group delay of a CIC filter stage >>>in terms of the differential delay (M) and the rate change R? >> >> Hi Randy, >> I know you have the 2nd edition of my DSP book. >> Looking at Figure 10-17(a), because a CIC decimation filter >> (prior to the downsampling process) is merely a >> D-point moving averager, the linear-phase CIC filter's >> constant group delay is (D-1)/2 samples. Measured in >> seconds, the group delay is T*(D-1)/2, where "T" is the >> time between samples (measured in seconds). >> >> Randy, I show this same result, with a bit of mathematics, >> on page 233 (near Equation (5-40)) of the hardcopy material >> for my 3rd edition that you reviewed for Prentice Hall. >> >> I'll bet you already knew the above. >> >> Now if you're asking what's the group delay of, for example >> a decimating CIC filter, *after* the downsampling by "R" >> process, darn, I haven't thought about that before. >> >> As the guys here say, shooting from the hip, my first >> thought is that the group delay (measured in seconds) >> of a decimating CIC filter followed by downsampling by "R" >> is also T*(D-1)/2, where "T" is the time between *input* >> samples (measured in seconds). >> >> I'll have to think this through carefully and do some >> MATLAB modeling, but if I'm wrong someone here will >> straighten me out. >> >> See Ya, >> [-Rick-] > >Thanks for the response Rick. Unfortunately I hadn't read this >before spending an hour of your time this afternoon on the phone >discussing it! The (embarrassingly) simple answer is (D-1)/2. >--Hi, I know this is an old post, but I'm faced with a similar question. From the discussion above, we know that the group delay through a CIC filter followed by a downsampling R is T*(D-1)/2, where "T" is the time between *input* samples (measured in seconds), and D is the length of the impulse response. This is also the case for an interpolating CIC filter (remembering that T is referring to the *input* period). Now consider a system consisting of a 1st order CIC decimator with R=2 followed by a 1st order CIC interpolator with R=2. Let's say that the input, and by consequence the output, are at 1Hz. -The group delay of the decimator part is 1 sample (1 second). -The group delay of the interpolator is 1 sample also, but its input period is 0.5Hz, yielding a 2 second delay. -The total group delay of this system is then 3 seconds. I do not understand why the interpolator is responsible for more delay than the decimator. Hopefully the answer is also 'embarrassingly simple'.

Reply by ●November 24, 20112011-11-24

>>> >>>>Is there a simple expression for the group delay of a CIC filter stage >>>>in terms of the differential delay (M) and the rate change R? >>> >>> Hi Randy, >>> I know you have the 2nd edition of my DSP book. >>> Looking at Figure 10-17(a), because a CIC decimation filter >>> (prior to the downsampling process) is merely a >>> D-point moving averager, the linear-phase CIC filter's >>> constant group delay is (D-1)/2 samples. Measured in >>> seconds, the group delay is T*(D-1)/2, where "T" is the >>> time between samples (measured in seconds). >>> >>> Randy, I show this same result, with a bit of mathematics, >>> on page 233 (near Equation (5-40)) of the hardcopy material >>> for my 3rd edition that you reviewed for Prentice Hall. >>> >>> I'll bet you already knew the above. >>> >>> Now if you're asking what's the group delay of, for example >>> a decimating CIC filter, *after* the downsampling by "R" >>> process, darn, I haven't thought about that before. >>> >>> As the guys here say, shooting from the hip, my first >>> thought is that the group delay (measured in seconds) >>> of a decimating CIC filter followed by downsampling by "R" >>> is also T*(D-1)/2, where "T" is the time between *input* >>> samples (measured in seconds). >>> >>> I'll have to think this through carefully and do some >>> MATLAB modeling, but if I'm wrong someone here will >>> straighten me out. >>> >>> See Ya, >>> [-Rick-] >> >>Thanks for the response Rick. Unfortunately I hadn't read this >>before spending an hour of your time this afternoon on the phone >>discussing it! The (embarrassingly) simple answer is (D-1)/2. >>-- > >Hi, >I know this is an old post, but I'm faced with a similar question. >From the discussion above, we know that the group delay through a CIC >filter followed by a downsampling R is T*(D-1)/2, where "T" is the time >between *input* samples (measured in seconds), and D is the length of the >impulse response. > >This is also the case for an interpolating CIC filter (remembering that T >is referring to the *input* period). > >Now consider a system consisting of a 1st order CIC decimator with R=2 >followed by a 1st order CIC interpolator with R=2. Let's say that the >input, and by consequence the output, are at 1Hz. >-The group delay of the decimator part is 1 sample (1 second). >-The group delay of the interpolator is 1 sample also, but its inputperiod>is 0.5Hz, yielding a 2 second delay. >-The total group delay of this system is then 3 seconds. > >I do not understand why the interpolator is responsible for more delaythan>the decimator. Hopefully the answer is also 'embarrassingly simple'.Anybody can help with this last question? Why is interpolating is more costly (in terms of delay) than decimating? Thanks!