Hi Claude, happy new year to you, too!
So, indeed, this is a bit of a hard problem. So, which other commands are we referring to? The digital tuning happens within the DDC RFNoC block; there should be synchronicity. Generally, the fact that these FIFOs are strictly ordered, of very finite depth and do not support atomic operations (e.g. tuning a complex synthesizer chip might take multiple commands, of which the first might happen to still fit the FIFO, but the others then have to wait on the host until the head of the FIFO has been cleared, which might lead to nasty problems), is a bit of a problematic design choice. However, the decision to make UHD handle complex hardware interaction on the host has been made quite some time ago and seems to be a good one, as it leads to very great software flexibility. Luckily, applications that fill the FIFO up in a way that makes the supply of the "second part" of a multi-step operation come in too late are rather rare (or, to be more precise, they usually coincide with the applications where things generally can't work, because the rate at which commands need to be executed exceeds what can be communicated early enough). Indeed, through the NoC shell infrastructure, you should be able to send in commands to the radio core; haven't done that myself. Maybe Martin can comment on that! Best regards, Marcus On Tue, 2018-01-02 at 10:33 +0100, LEMENAGER Claude wrote: > Thank you Marcus for your answer. And happy new year! > > As this FIFO induces constraints in the timing of TX and RX parts, > are there plans to modify it by, for example, using two FIFO (TX and > RX parts but what about other requests...) or chained list allowing > insertion (may be not easy in hardware implementation and side > effects management...)? > Or through RFNoC? > > Claude > > > -----Message d'origine----- > De : Marcus Müller [mailto:marcus.muel...@ettus.com] > Envoyé : jeudi 28 décembre 2017 15:58 > À : LEMENAGER Claude; usrp-users@lists.ettus.com > Objet : Re: [USRP-users] USRP Timed command in GR (stream TX and > command port RX) simulaneous > > Hi Claude, > > there's only one FIFO per radio. > > "Tags" is a GNU Radio concept. GNU Radio's USRP blocks take these > tags and messgaes, and issue UHD tune_request. > So, yes, in the end, there's only one way to tune, and that goes > through a FIFO. > > Best regards, > Marcus > > On Thu, 2017-12-21 at 11:35 +0100, LEMENAGER Claude via USRP-users > wrote: > > Hello, > > As no answer received, and after an (not in depth) analysis of > > USRP_SINK, USRP_SOURCE, I found: > > - Dsp_freq and lo_freq message were associated with > > POLICY_MANUAL on the other parameter (then, when a dsp_treq > > message > > is issued, a full tuning of analog board is performed) > > - On the TX part when a tx_freq tag is issued with a tx_sob > > tag > > and a tx_time tag at the first sample of a sample set, the tx_freq > > is > > performed immediately without respect of the buffering, resulting > > in a > > tune before the asked time. > > Just two questions: > > Is there just one FIFO (TX and RX in the same) for timed commands > > or > > two FIFOs (allowing no fine control of the time between commands to > > RX > > and TX)? > > RX tuning is performed through messages as TX tuning can be done > > through tags. Does implementation (when timing is required) goes > > through the FIFO(s) to perform the operation? > > > > Regards, > > Claude > > ========== > > Hello, > > > > I try to send frequency radio tuning commands to TX (USRP_SINK) > > and > > RX (USRP_SOURCE) in the same Gnu Radio companion design using the > > same > > usrp (N210 or X310 for TX and RX. > > The USRP_SINK block is feed by a stream which has tags tx_eob and > > tx_sob associated with tx_time and tx_freq tags (are tx_lo_freq > > and > > tx_dsp_freq usable)?. > > The URSP_SOURCE receives “command” message with time and dsp_freq, > > lo_freq keys and pmt values. > > The time key of the USRP_SOURCE message has a value delayed > > (adjustable ) with respect of tx_time tagged in the stream of > > USRP_SINK. > > I can check that, without RX command, TX is OK (external scope and > > specrum analyzer) That’s not the case when I issue the commands to > > RX, > > even when I sleep the delay to send the message and L characters > > appear (late command error seen by UHD, more delayè more L). > > Remembering that the FIFO of timed command of is common for the > > board > > (no TX or RX specific FIFO) the question is : > > how to avoid discrepancy in the time between TX stream (or PDU- > > tagged > > stream Block) and RX commands? (I think my RX command arrives in > > the > > FIFO before the tx_sob/tx_freq tag) > > > > is it possible to put a tx_freq tag with a tx_eob tag on a stream > > (is > > then the lo prepositioned?)? > > > > Excuse me is somebody asked about the same problem before (I don’t > > find tracks about that). > > > > Can anybody help? > > > > Thanks for support > > > > Claude Leménager > > > > _______________________________________________ > > USRP-users mailing list > > USRP-users@lists.ettus.com > > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com _______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com