# Group Delay of CIC Filters

Started by June 18, 2010
```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
```
```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-]
```
```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-]

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
```
```>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-]
>
>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'.

```
```>>>
>>>>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-]
>>
>>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'.

Anybody can help with this last question?
Why is interpolating is more costly (in terms of delay) than decimating?

Thanks!

```