USRP2 Filtering/Decimation Question

Hi

When I specify a particular receiver decimation rate
for the USRP2, the task of decimating is presumably
split up between the CIC and two half-band filters.
My question is how is the task split up,
and where in the code does this happen?

Bruce

Bruce McGuffin wrote:

Hi

When I specify a particular receiver decimation rate
for the USRP2, the task of decimating is presumably
split up between the CIC and two half-band filters.
My question is how is the task split up,
and where in the code does this happen?

If the requested decimation rate is a multiple of four, we use the two
halfband filters, and the rest is CIC. If it is only a multiple of two,
we use one halfband filter and the rest in CIC. If it is an odd number,
we use only CIC.

Matt

Matt E. wrote:

If the requested decimation rate is a multiple of four, we use the two
halfband filters, and the rest is CIC. If it is only a multiple of two,
we use one halfband filter and the rest in CIC. If it is an odd number,
we use only CIC.

Matt

When the decimation rate is divisible by 2 but not 4, which half-band
filter do you use?
And where in the code is this decision made?

Bruce

On Fri, Sep 04, 2009 at 05:01:59PM -0400, Bruce McGuffin wrote:

And where in the code is this decision made?

Bruce

Hi Bruce!

The decision is made in the firmware. See
usrp2/firmware/apps/app_common_v2.c line 247, in the function
config_rx_v2_cmd.

The actual control register (dsp_rx_regs->decim_rate) is written on line
265.

Eric