On Fri, Aug 3, 2018 at 3:19 AM TIMMEN Koen <
koen.tim...@thalesaleniaspace.com> wrote:

>
>
> *De :* Brian Padalino [mailto:bpadal...@gmail.com]
> *Envoyé :* jeudi 2 août 2018 16:57
> *À :* TIMMEN Koen
> *Cc :* USRP-users@lists.ettus.com
> *Objet :* Re: [USRP-users] UHD API
>
>
>
>
>
> First, let me tell you that I've done this exact thing so it's very
> possible.  I also agree the current examples are poor in the UHD
> repository when dealing with most anything for RFNoC.
>
>
>
> How did you setup your block to start and stop the transmission?  It
> sounds like maybe it's controlled using the settings registers?  A little
> more information about how you want to control your block would be useful
> here.
>
>
>
> That is very good to hear.
>
>
>
> Indeed the block is controlled through the settings registers. Sample
> generation can start by setting a certain value in a register, samples are
> then stored in a AXI FIFO at the end of the block. When the block is fully
> activated, the FIFO will communicate with the downstream block as normal.
>

This is very similar to how the siggen block works.  You should take a look
there and see if that helps you out.


>
>
> Streaming sends the data down to your block and the block receives it over
> the main AXI streaming interface.  It's meant for larger data sets, but
> it isn't limited to that.
>
>
>
> Have you created your own custom C++ controller block, or are you using
> the XML definition to control your block?  I write my own C++ controller
> blocks, personally, and the XML is only there for defining the ID and the
> input/output ports.
>
>
>
>             So streaming is communication from Host PC to your USRP? Not
> between two NoC blocks for example?
>

No, host -> noc block streams are from the axi streaming interface, as are
noc block -> noc block comms, for the most part.  You can perform
configuration of other noc blocks if you know what you're doing, I believe
- but that's more of an advanced topic.


>
>
> Since I figured I only needed ‘sr_write’ and this is available from the
> standard block controller, I did not code my own. I did verify the writing
> to the registers using the readback register and that seems to work just
> fine.
>
>
>
> For what reason would you recommend me writing my own block controller?
>

I find the XML scripting to be obtuse and difficult to understand when
trying to read what it's doing.  In my opinion, it much more clear to the
other developers what is going on when it's written in C++ and not
abstracted by the XML.

Brian
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to