To whom it may concern:

A few points to add:

-12-bit ADCs do not necessarily mean that you will get 12-bit resolutions from 
your received data. Resamplers may increase the effective bit depth. Say you 
have the smallest step of 1 and have [1 2] as samples; You downsample that to 
[1.5] and now the smallest step is 0.5. I don't know how B200 works, but it is 
a common practice to oversample and then resample in a DSP or a FPGA to get 
higher bit resolutions.

-I think AD9361 (used in B200) has a hardware AGC (not turned on by default). 
However, as Marcus mentioned, it is best left to the application. Without 
knowing the signals and the channel conditions, AGC designers must make many 
assumptions which may be incorrect or make the performance suboptimal. You can 
give it a shot, but the best way is to roll your own AGC (you can change the 
gain level of your USRP on the fly).

-As Marcus mentioned, in many cases, it does _not_ make sense to increase the 
gain level until every ADC bit is utilized. That does _not_ necessarily 
increase the SNR of the received signal, as LNAs may get overloaded and show 
nonlinear behaviors. In fact, the SNR may degrade as you increase the gain 
level.

Regards,
Kyeong Su Shin

________________________________
보낸 사람: Marcus D. Leech via USRP-users <[email protected]> 대신 
USRP-users <[email protected]>
보낸 날짜: 2020년 2월 21일 금요일 오전 4:07
받는 사람: Alvaro Pendas <[email protected]>
참조: [email protected] <[email protected]>
제목: Re: [USRP-users] GNU Radio UHD Blocks Resolution

On 02/20/2020 01:54 PM, Alvaro Pendas wrote:
I get what you mean, but maybe I did not explain myself correctly. Let's forget 
about GNU Radio and focus on the ADC. The ADC resolution is 12 bits, so it has 
4096 digital levels. The question here is, does the usrp adapts those levels to 
the signal it is receiving at each moment? If that adaptation does not exist, 
the ACD is going to use all the 4096 only when the analog input signal is close 
to the input max of the ADC. Otherwise, only some of those levels are used. For 
example, half of them (2048) if the level of the ACD input is half the max.

You're talking about AGC -- no, it does not do AGC by default.  AGC strategies 
are generally best left to the downstream application.

Also, mind that, in the receiving part, I think that what you explained is not 
completely right. I am working with a QPSK receiver and I demodulate the 
symbols correctly (with a lot of noise), but the output of the UHD:USRP Source 
are actually about 0.0003. That's why I'm afraid of the problem I've mentioned 
above.
Something to be aware of is that increasing gain beyond the level where SNR no 
longer improves, just gives you a louder (signal+noise), but
  does nothing to improve SNR.   Keep in mind that on the B2xx, the maximum 
gain setting in RX is about 72dB, so if you're using a setting of
  30dB (you mentioned that setting before), then you still have 40dB of 
head-room in the RX gain setting...



Thank you for your patient.

El jue., 20 feb. 2020 a las 19:28, Marcus D. Leech 
(<[email protected]<mailto:[email protected]>>) escribió:
On 02/20/2020 11:38 AM, Alvaro Pendas wrote:
However, the way I see it, this represents a problem in the receiving part. Let 
me put it this way: the max output of the ADC is 1, and that corresponds with 
the max input. That max input would represent the case when you receive a high 
power signal and you set your drive amplifier next to its max.
So, If you are receiving a low power QPSK signal, with your gain set to 30 dB, 
the output of your ADC would use a really small part of the range (let's say 
from -0.05 to 0.05). However, if your digital levels go from -1 to 1 and are 
represented with 12 bits, using such a small part of the range would make the 
quantization error a problem.

Gnu Radio uses a floating-point {-1.0, 1.0} representation, which UHD *scales* 
into a range that is appropriate for whatever hardware
  you're using.

So, your 0.05 is scaled to about 102 by UHD prior to presentation to the DAC, 
and conversely in the receive direction.




El mié., 19 feb. 2020 a las 20:04, Marcus D Leech 
(<[email protected]<mailto:[email protected]>>) escribió:
Indeed. You’d have to use an external calibration source at several places over 
your parameter space (frequency gain sample rate)

Sent from my iPhone

On Feb 19, 2020, at 1:54 PM, Alvaro Pendas 
<[email protected]<mailto:[email protected]>> wrote:


Marcus thank your for your answer,


First of all, you are right, the range is -1 to 1 (instead of 0 to 1 as I said 
before). So, for example, in the receiving part, the values you get out of the 
UHD Source have a linear relationship with the voltage of the analog signal, 
but I understand there is no easy way to calculate that level with the only 
information of the GNU Radio samples. Is that correct?

El mié., 19 feb. 2020 a las 19:22, Marcus D. Leech via USRP-users 
(<[email protected]<mailto:[email protected]>>) escribió:
On 02/19/2020 12:01 PM, Alvaro Pendas via USRP-users wrote:
> Hello,
> I am using GNU Radio and the USRP B200. I have noticed that for the
> GNU block UHD: USRP Sink, the values you pass to the block must be in
> the range 0 to 1. I guess that means if you do not want to lose
> resolution you must ensure that you use the full range, that is to
> say, your minimum is 0 or close to 0, and your max is 1 or close to 1.
> Am I correct?
>
> On the other hand, what are the meaning of the values produce by the
> block UHD: USRP Source? They must be related to the signal power, but
> I am not sure about their range. Is the minimum value that block can
> produce the min of the ADC output, and the max, the max of the ADC
> output? With the USRP B200 the ADC resolution is 12 bits, are the min
> and the max always set with the same value, or does it depend on the
> USRP configuration?
>
> I am using GNU Radio right now, but probably, just knowing how this
> works with UHD would be enough to understand the rest.
>
> Thank you for your time,
>
> Alvaro
>
Gnu radio generally likes to have baesband data streams scaled into
{-1.0,+1.0} which are linearly related to instantaneous voltages at
   the antenna of the hardware.amazon

To a first approximation, a value near +1.0 or -1.0 will drive the ADC
to its maximum +/- value.  But that's only an approximation, since the
   signal is processed a fair amount (linearly) prior to reaching the
ADC/DAC, and with analog hardware there's no way of ensuring that
   a max value wont' over-drive the analog hardware.

Power of a sinusoidal signal is proportional to the  I*I + Q*Q --
remember we're dealing with *voltages* here, so ohms law applies...




_______________________________________________
USRP-users mailing list
[email protected]<mailto:[email protected]>
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com


_______________________________________________
USRP-users mailing list
[email protected]
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to