Brian,

More questions.

Q1: I had second thoughts about the CIC gain.

If I am going to use a 4th order CIC to give an overall decimation of

R, then the decimation of each stage will be

the fourth root of R, and the gain of the fourth-order filter will be

g = (R^0.25)^4 = R - back to equaling the overall decimation

factor.

However, the decimation distribution is more complicated since R^0.25

is seldom an integer.

Take my case where the decimation is R = 222 = 1 x 2 x 3 x 37 where

37 is a prime number.

On the other hand, R = 256 = 4^4 is convenient for the formula above,

however I think the

asymptotic formula is really valid only for large R.

(Note that 222^4 = 2.4 x 10^9, a huge gain. A 1 uV signal would give

a 2400 V output…)

Q2: More questions on gain. Here’s my measurement.

Agilent signal generator output at 1.8 MHz: 10 mV

Attenuator setting 46 dB

PGA setting: 0 dB

fft display output: 0 dB (= 1 V^2) - Checked separately

## So the input signal is 0.01V/200 = 50 uV and the overall gain is 1V/

50uV = 20,000

of which 222 can be accounted for by the CIC filter. So, I am missing

a factor of about 100.

Is there a gain inherent in the channel filter? I have a further

decimation by a factor of 6 there.

Even with that, I am still off by a factor of more than 10.

Q3: MDS measurement

The signal disappears into the noise floor with the attenuator at 66

dB or 10 mV/2000 = 5 uV input signal.

I believe the USRP ADCs are 12 bits with VFS = 2V, so the LSB is 2V/

4096 or about 488 uV. How is the

system resolving signals that are 20-40 dB below the LSB size?

Dick…

On Thu, Sep 04, 2008 at 10:04:22AM -0500, Richard J. wrote:

g = (R^0.25)^4 = R - back to equaling the overall decimation factor.

2400 V output…)

So the input signal is 0.01V/200 = 50 uV and the overall gain is 1V/50uV =

The signal disappears into the noise floor with the attenuator at 66 dB or

10 mV/2000 = 5 uV input signal.

I believe the USRP ADCs are 12 bits with VFS = 2V, so the LSB is 2V/4096 or

about 488 uV. How is the

system resolving signals that are 20-40 dB below the LSB size?

Dick…

Re CIC gain, there’s a also a decimation specific shifter involved in

the path. Please take a look at

usrp/fpga/sdr_lib/cic_decim.v and cic_dec_shifter.v

Eric

Re CIC gain, there’s a also a decimation specific shifter involved in

the path. Please take a look at

Yes. You guys have the R^4 formula right, but the shifter takes back

most of the gain. The actual gain from the CIC decimator once you

include the shifter is:

R^4 / ( 2^ ceiling(log2(r^4)))

I hope that is readable. Basically, if R is a power of 2, then the gain

is exactly 1. If R is not a power of 2 then the gain is in the range of

(0.5,1).

Matt

On Fri, Sep 5, 2008 at 5:04 PM, Richard J.

[email protected] wrote:

Well, if the gain is really in (0.5, 1), that makes my missing gain

situation worse. I would be hunting for more than 20,000 in that case.

Also, it is inconsistent with my measurements that show that the gain

increases by a total of 26 dB as the decimation rate

is changed from 96 to 256.

Where is the shifter you are referring to? Is it in a non-recursive

implementation of the CIC filter?

If you take a look here:

```
http://gnuradio.org/trac/browser/gnuradio/trunk/usrp/fpga/sdr_lib/cic_dec_shifter.v
```

All that’s happening here is the decimation rate chooses a different

slice of the output of the CIC filter. Once you go past a decimation

rate of 107, the bitgain becomes 28 and stays there no matter what.

Brian

On Sep 4, 2008, at 12:37 PM, Matt E. wrote:

you include the shifter is:

R^4 / ( 2^ ceiling(log2(r^4)))

I hope that is readable. Basically, if R is a power of 2, then the

gain is exactly 1. If R is not a power of 2 then the gain is in the

range of (0.5,1).

Matt

Well, if the gain is really in (0.5, 1), that makes my missing gain

situation worse. I would be hunting for more than 20,000 in that case.

Also, it is inconsistent with my measurements that show that the gain

increases by a total of 26 dB as the decimation rate

is changed from 96 to 256.

Where is the shifter you are referring to? Is it in a non-recursive

implementation of the CIC filter?

Dick…