Hi,
- Using high accuracy function generator and USRP with Basic-RX, 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 P-P = 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 P-P = 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 P-P = 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 P-P = 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 BASIC-RX is saturated when the
input
signal power was +10dBm. This is logical, since the maximum input signal
to
the USRP ADC AD9862 is 2Volt P-P (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 P-P. 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/8-bit-samples-scope.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 Basic-RX 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/USRP-Dynamic-Range-and-8-Bit-Problem-tp14471573p14471573.html
Sent from the GnuRadio mailing list archive at Nabble.com.