Hey Brian,

the control portion of the SEP is for control data that needs to connect to
the RFNoC blocks. As you know, RFNoC blocks are never directly connected to
the host by any means. All control traffic to RFNoC blocks goes through the
control crossbar, but to send control traffic into the control crossbar,
you need to go through an SEP, which is also connected to the control
crossbar.

If you have more than one SEP that can send control traffic to the control
crossbar, then theoretically, you have more options to control blocks, but
in practice, this is rarely useful and it will increase the size of the
control crossbar. So we pick one SEP to handle control traffic. If you have
more than one SEP with control port enabled, then UHD will simply pick the
first available one to route all of its control traffic (that's the "first
one" part of your question).

SEPs don't need both in and out. If you have neither, then the SEP is not
useful in the first place, but there are legitimate cases were you only do
in or out (e.g., on the X310, we have SEPs for TwinRX and BasicRX
daughterboards, which allow receiving on all four channels, but you can't
use those SEPs for Tx because we only have daughterboards with 1 Tx channel
for X310).

---> From here on, all info is strictly to educate, and is usually not
necessary knowledge for RFNoC users:

As for controlling the SEPs themselves, there are two mechanisms that we
use. One is inline management traffic (e.g., for setting up flow control).
"Stream Command" and "Stream Status" are such control packets (these have
nothing to do with issuing stream commands to the radio!). There is also
the backend interface, which lets us query and flush the SEPs. We use a
backend interface to solve bootstrapping issues.

--M

On Wed, Jun 25, 2025 at 12:29 AM Brian Padalino <bpadal...@gmail.com> wrote:

> I am reading the documentation for RFNoC SEP Control Ports and I came
> across this:
>
> "Each SEP can have an AXIS-Ctrl and an AXIS-CHDR port, as indicated by the
> ctrl and data options. At least one AXIS-Ctrl port is required to
> communicate with the RFNoC blocks, so ctrl typically enabled on just the
> first SEP. Every SEP will usually have AXIS-CHDR connections to one or more
> RFNoC blocks, so data is usually enabled on all SEPs."
>
> ...from: https://kb.ettus.com/Getting_Started_with_RFNoC_in_UHD_4.0
>
> I see the axis_ctrl_crossbar_nxn, but I am unsure what the statement about
> the first SEP is supposed to mean. Don't all the endpoints need some type
> of control to configure the endpoint?
>
> Is this supposed to mean that so long as a CHDR data port is connected to
> the SEP, then configuration can be passed that way? If this is the case,
> does each SEP need at least 1 IN and 1 OUT port? Is the only downside to
> enabling all the SEP's to have control ports is some extra utilization in
> the FPGA?
>
> Can someone clarify what this is supposed to mean?
>
> Thanks,
> Brian
> _______________________________________________
> USRP-users mailing list -- usrp-users@lists.ettus.com
> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
>
_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com

Reply via email to