I've got a single input, 4-output RFNoC block that I am trying to hook up
to a C++ testbench, but I'm having some trouble.

Referencing the unaligned output version from gr-ettus:


https://github.com/EttusResearch/gr-ettus/blob/master/lib/rfnoc_block_impl.cc

My graph is Radio -> DDC -> Custom Block -> Host.

I am setting up my device_addr_t with 3 attributes: block_id, block_port,
and block_portX where X is from 0 to 3.

When I print my args I am sending into get_rx_stream(), they look
appropriate:

  block_id=0/MYBLOCK_0,block_port=0,block_port0=0

The issue is when I get to block port 2, I get a LookupError about
0/Radio_0:

  Error: LookupError: KeyError: [0/Radio_0] sr_write(): No such port: 2

I'm sure I'm just doing something incorrectly, but I can't find much
documentation on getting the streams working with multiple unaligned output
ports from the same block coming back to the host.  I'm very confused why
port 2 of the Radio is being addressed?

I've used the noc_block_invert_tb as my guide to produce the streams in the
FPGA:


https://github.com/EttusResearch/fpga/tree/rfnoc-devel/usrp3/lib/rfnoc/noc_block_invert_tb

And an HDL testbench appears to work correctly.  Host UHD guidance is
appreciated.  It would be nice to see real example C++ code interacting
with UHD directly with the stock FPGA image.  I believe fosphor has 2
output ports and 1 input port?

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

Reply via email to