Thanks Marcus,
                         Good to know that I don’t need to do anything else. I 
presume your statement is true even if the slave N200 doesn’t have a ‘real’ PPS 
signal but only Time_Of_Day copied over. I say this because the slave has ‘no 
sync’ as it’s option since it fails waiting for a real PPS signal if I set 
unknown_pps as the option.

                         I have sent off my GRC and modified Python file (for 
SBX LO alignment as we discussed before) a couple of days ago to support@ettus 
so will see what they come up with.

                         Kind Regards,

                                    John

From: Marcus D. Leech via USRP-users
Sent: Saturday, October 14, 2017 10:22 AM
To: [email protected]
Subject: Re: [USRP-users] Align CORDICS in the DSP ( N200x2, MIMO, SBX, GPSDO)

On 10/13/2017 04:57 PM, John Shields via USRP-users wrote:

  Hi,
      From the Hardware Driver and USRP Manual, under the section on Align 
CORDICs in the DSP, it says :

  In order to achieve phase alignment between USRP devices, the CORDICS in both 
devices must be aligned with respect to each other. This is easily achieved by 
issuing stream commands with a time spec property, which instructs the 
streaming to begin at a specified time. Since the devices are already 
synchronized via the 10 MHz and PPS inputs, the streaming will start at exactly 
the same time on both devices. The CORDICs are reset at each start-of-burst 
command, so users should ensure that every start-of-burst also has a time spec 
set.

  For receive, a burst is started when the user issues a stream command. This 
stream command should have a time spec set:

  uhd::stream_cmd_t 
stream_cmd(uhd::stream_cmd_t::STREAM_MODE_NUM_SAMPS_AND_DONE);
  stream_cmd.num_samps = samps_to_recv;
  stream_cmd.stream_now = false;
  stream_cmd.time_spec = time_to_recv;
  usrp->issue_stream_cmd(stream_cmd);


  The next section mentions how to LO align SBXs and I have done this in python 
(and it has been checked by an expert) but I still get a variable phase offset 
between both channels on the USRPs and suspect the CORDICs are spinning 
relatively.

  So I have a couple of questions re: CORDIC alignment:

  1) if my desire is to stream for a looooong time (e.g. days) what stream 
command do I give in Python?

  2) I have seen one posting where the person showed that alignment of the 
CORDICs should happen after a timed_cmd tune – is this correct, or should it be 
before, or does it not matter?

  3) has anyone been able to get N200r4x2, GPSDO, MIMO cable, 2xSBX to align 
with zero phase offset or, at least, a constant phase offset which doesn’t vary 
between each run of the GRC file?

                   Kind Regards,

                                 John


The UHD source block in GRC does all of this, except for the timed-command 
wrapper for tuning.

It starts streaming at a fixed time, and uses timestamps to time-align samples.

So the only thing left would be PLL synthesizer ambiguity.





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


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus
_______________________________________________
USRP-users mailing list
[email protected]
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to