Send USRP-users mailing list submissions to
        [email protected]

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
or, via email, send a message with subject or body 'help' to
        [email protected]

You can reach the person managing the list at
        [email protected]

When replying, please edit your Subject line so it is more specific
than "Re: Contents of USRP-users digest..."


Today's Topics:

   1. how to use set_rx_agc in .py file (Ekko)
   2. Re: how to use set_rx_agc in .py file (Marcus M?ller)
   3. N210 FPGA Memory (Topliff, Charles Alexander)
   4. Re: N210 FPGA Memory (Marcus M?ller)


----------------------------------------------------------------------

Message: 1
Date: Thu, 26 May 2016 00:45:00 +0800
From: Ekko <[email protected]>
To: "[email protected]" <[email protected]>
Subject: [USRP-users] how to use set_rx_agc in .py file
Message-ID:
        <caggob6alxo9m14peeczt-1fgtu+-jerqhdshg3zjrbz1dch...@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"

hello all
i want to enable the agc function of B210,and i see the
http://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#abdab1f6c3775a9071b15c9805f866486

and i want to use this in tunnel.py ,but there is no way to accomplish this,
ao i want to ask is ther another way to enable agc in .py file




thank you

--Ekko
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20160526/38b550c0/attachment-0001.html>

------------------------------

Message: 2
Date: Wed, 25 May 2016 19:25:26 +0200
From: Marcus M?ller <[email protected]>
To: [email protected]
Subject: Re: [USRP-users] how to use set_rx_agc in .py file
Message-ID: <[email protected]>
Content-Type: text/plain; charset="windows-1252"

Dear Ekko,

Indeed, GNU Radio's gr-uhd doesn't currently expose the set_rx_agc
functionality.
So, without modification of GNU Radio, this is not possible so far.

Another question: are you *sure* you want to use AGC with tunnel.py?

Two things:

  * I think it's time we started to move away from tunnel.py, especially
    from the OFDM tunnel.py. It's bad, especially compared to the OFDM
    examples rx_ofdm.grc and tx_ofdm.grc. Attaching a UDP source/sink to
    those examples and using these much better OFDM implementations is
    absolutely what you want to do. I don't think GNU Radio will have
    tunnel.py for a long time. To put this more extremely: In my private
    opinion, tunnel.py should not be used, under no circumstances, anymore.
  * AGC with bursts must go wrong, unless you know *very* well how the
    attack time of the AGC and the bursts relate, and incorporate an AGC
    gain ramp-down compensation into your receiver structure. This might
    be possible with the channel state estimators in the more modern
    examples I mentioned above, but it would still mean a considerable
    effort. It's really impossible to use tunnel.py with AGCs ? there's
    no way to react to changing amplitude in the middle of a packet. And
    exactly that is what's happening when you use AGC
  * an "untamed" AGC in cooperation with OFDM will also be a bad idea ?
    see PAPR considerations. That's one of the reasons why an OFDM
    receiver is challenging hardware-wise: you'll need quite some
    dynamic range, for the signal itself. Now, either you have a fast
    AGC, that reacts already within the beginning of a cyclic prefix,
    but that would then necessarily lead to a multiplication with the
    fast control loop step response in time domain (== strong variation
    of distortion in the post-FFT OFDM symbol), which will lead to an
    ugly channel state distortion, not to mention that you'll also
    increase the likelihood of nonlinearity/clipping in an extreme PAPR
    case, and will make the equalizer work much worse, or you've got a
    slow AGC that only kicks in after a significant part of the first
    OFDM symbol of a frame has been received and is strongly limited in
    maximum gain, which is not much better than having a software-side
    feedback loop. In fact, for USRPs that support gain-setting via
    timed commands, the software-side feedback loop could just adjust
    the gain in time for the Nth OFDM symbol, so that you don't change
    gain in the middle of a symbol. That'll make it possible that the
    channel estimate done on the early part of the OFDM symbol is valid
    throughout the symbol.


Best regards,
Marcus
On 25.05.2016 18:45, Ekko via USRP-users wrote:
> hello all
> i want to enable the agc function of B210,and i see the
> http://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#abdab1f6c3775a9071b15c9805f866486
>
> and i want to use this in tunnel.py ,but there is no way to accomplish
> this,
> ao i want to ask is ther another way to enable agc in .py file
>
>
>
>
> thank you
>
> --Ekko
>
>
> _______________________________________________
> USRP-users mailing list
> [email protected]
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20160525/ff360b3f/attachment-0001.html>

------------------------------

Message: 3
Date: Thu, 26 May 2016 14:08:54 +0000
From: "Topliff, Charles Alexander" <[email protected]>
To: "[email protected]" <[email protected]>
Subject: [USRP-users] N210 FPGA Memory
Message-ID:
        <[email protected]>
Content-Type: text/plain; charset="iso-8859-1"

Hello All,

I am interested in capturing samples at 100 MS/s using a USRP N210 at a 16b (or 
14-bit ADC) resolution. In the datasheet, it is mentioned that the maximum host 
sampling rate N210 is capable of is 50MS/s at 8bit resolution over Gigabit 
Ethernet. My understanding is that this is a limitation imposed by the transfer 
speed over the Gigabit ethernet interface.

To utilize the full potential of ADC sampling rate, what is the best way to 
accumulate only a second (or half a second) worth of data? Specifically, I 
would like to know if it is possible to use the FPGA to synthesize memory & 
record 1 sec worth of samples (at 14b * 100MS/s) to that. After recording, I 
would read it to the host at a slower speed. Are there any constraints in that 
path?

Is there a better way of handling this? Any suggestion is appreciated.

Thanks,
Charles

-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20160526/15635db5/attachment-0001.html>

------------------------------

Message: 4
Date: Thu, 26 May 2016 17:51:09 +0200
From: Marcus M?ller <[email protected]>
To: [email protected]
Subject: Re: [USRP-users] N210 FPGA Memory
Message-ID: <[email protected]>
Content-Type: text/plain; charset="windows-1252"

Dear Charles,

On 26.05.2016 16:08, Topliff, Charles Alexander via USRP-users wrote:
> Hello All,
>  
> I am interested in capturing samples at 100 MS/s using a USRP N210 at
> a 16b (or 14-bit ADC) resolution. In the datasheet, it is mentioned
> that the maximum host sampling rate N210 is capable of is 50MS/s at
> 8bit resolution over Gigabit Ethernet. My understanding is that this
> is a limitation imposed by the transfer speed over the Gigabit
> ethernet interface.
Exactly!
>  
> To utilize the full potential of ADC sampling rate, what is the best
> way to accumulate only a second (or half a second) worth of data?
> Specifically, I would like to know if it is possible to use the FPGA
> to synthesize memory & record 1 sec worth of samples (at 14b *
> 100MS/s) to that. After recording, I would read it to the host at a
> slower speed. Are there any constraints in that path?
(14b/real + 14bit/image) * 100 MS/s * 1s = 2.800Gb = 350MB. That's much
more than you could fit in any FPGA, and much more than the N210 has in
on-board RAM ? in fact, the N210 already uses SRAM buffering itself on
an 9Mbit SDRAM chip, but if I'm not mistaken, that's for TX data only.

You could adapt that (it's called ext_fifo, IIRC) for your RX and get up
to let's say 1/350s of buffering on the device.
>  
> Is there a better way of handling this? Any suggestion is appreciated.
On the N210, I'm not quite sure.
One thing I wanted to ask was:

Which daughterboard do you intend to use? All our daughterboards either
have <= 40MHz bandwidth, so you gain nothing compared by using 100MS/s
(compared to 50MS/s), according to Nyquist, or >=120 MHz bandwidth, so
that they can't be used even at 100MS/s without aliasing.
The only exception would be an BasicRX daughterboard with your own,
custom, prefiltering that sufficiently band-limits the signal to
something below 50MHz on each I and Q lane.

Best regards,
Marcus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20160526/258d6be8/attachment-0001.html>

------------------------------

Subject: Digest Footer

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


------------------------------

End of USRP-users Digest, Vol 69, Issue 26
******************************************

Reply via email to