Hi,
 Using high accuracy function generator and USRP with BasicRX, I
tried to
investigate the dynamic range of this board. The following behaver was
obtained (0 dB gain was used in all experiments with decimation of 8):
a) With Sinewave signal at frequency =250KHz and 0dBm input power to
BasicRX
we get ,
Theoretical calculations :
When 0dBm signal injected into 50 Ohm load, then signal RMS = 0.225Volt
and
Signal voltage PP = 0.636396103Volt.
USRP readings :
The maximum counting obtained from USRP for this signal was 4845.
b) With Sinewave signal at frequency =250KHz and 5dBm input power to
BasicRX
we get ,
Theoretical calculations :
When +5dBm signal injected into 50 Ohm load, then signal RMS = 0.4Volt
and
Signal PP = 1.13137085Volt.
USRP readings :
The maximum counting obtained from USRP for this signal was 8337
c) With Sinewave signal at frequency =250KHz and 9dBm input power to
BasicRX
we get ,
Theoretical calculations :
When +9dBm signal injected into 50 Ohm load, then signal RMS = 0.64Volt
and
Signal PP = 1.81019336Volt.
USRP readings :
The maximum counting obtained from USRP for this signal was 13096
d) With Sinewave signal at frequency =250KHz and 10dBm input power to
BasicRX we get ,
Theoretical calculations :
When +10dBm signal injected into 50 Ohm load, then signal RMS = 0.71Volt
and
Signal PP = 2.008183259Volt.
USRP readings :
The maximum counting obtained from USRP for this signal was 13570
(Saturated).
Discussion :
From the above results we see that the BASICRX is saturated when the
input
signal power was +10dBm. This is logical, since the maximum input signal
to
the USRP ADC AD9862 is 2Volt PP (according to its data sheets).
But, what is not logical is the value obtained from USRP FPGA. Since the
incoming data is 16bit signed number (for I and Q), we should get +/
32767
readings for the maximum input signal of 2V PP. Instead, we have
maximum
reading of 13570. I don’t know how this number was generated, but it
should
be scaled to make use from the full dynamic range offered by using 16
Bit
data transfer.
 I Think there is a problem in the 8 bit data transfer. As we know, if
we
have 12 bit number (for example), and we would truncate it to 8 bit
number,
we should take the most 8 significant bits from it and discards the rest
least 4 bits.
This is not happening in the 8 bit data transfer. When the input signal
is
power is low, we get weird waveforms as shown in the following
snapshots.
http://rapidshare.com/files/78343220/8bitsamplesscope.tar.gz
As shown, unless the input signal power is high (9dBm was the best) we
get a
very distorted signal when using 8 bit data transfer.
Note:
I’m using the latest trunk USRP rbf file (the 8 bit samples transferring
was
restored).

FYI, the maximum measured SFDR for BasicRX was about 55dB (when the
input signal was +4dBm and the gain was 0dB which gave this maximum
SFDR) 
FYI, the maximum measured SFDR for DBSRX was about 40dB (when the
input
signal was 20dBm and the gain was 26 dB which gave this maximum SFDR).
I hope we use these experiments to enhance our magnificent USRP.
Best Regards,
Firas A.
–
View this message in context:
http://www.nabble.com/USRPDynamicRangeand8BitProblemtp14471573p14471573.html
Sent from the GnuRadio mailing list archive at Nabble.com.