[USRP-users] Time Alignment Error Across Multiple B200s with 10MHz/1PPS

Paul Garver garverp at gatech.edu
Wed Mar 16 09:56:54 EDT 2016

The question regarding time synchronization with B200's has been asked 
multiple times on this mailing list [3,4,5,6]. Many of these threads end 
with limited information in terms of how to successfully sync B200s and 
the expected accuracy. In [4], it is explained there is a random phase 
offset due the 3 fractional-N PLL's which supply the RF LO's. So I 
understand that there is some calibration which is needed, potentially 
across every tune. What I haven't seen, however, is an expected value 
for the these delays.

Suppose I have a high quality timing reference driving the 10 MHz / 1 
PPS inputs on the B200s assuming matched length cables, etc. I split an 
input signal and receive it with three B200s attached to three separate 
PCs. I then perform a cross-correlation to determinte the TDoA between 
the signals. What is the expected value for these measurements? Is it 
just a phase term, or could the alignment be off by more? There was a 
nice presentation given in FOSDEM 2016 [1] regarding B200 
synchronization, but I did not see the uncorrected offset. [4] shows ~ 
10uS offset.

I have performed a similar experiment using the Ettus Octoclock Timing 
Distribution (w/o GPSDO) [7] and a Jackson Labs LC-XO GPSDO [8], which I 
believe is the same used in the Octoclock with GPSDO option. The LC-XO 
is connected to the Octoclock, and then equal length (not phased 
matched) cables are connected to the 1 PPS/ 10 MHz outputs to drive 3 
B200s on separate computers. A separate B200 transmits a BPSK-modulated 
PN sequence with a RRC pulse shape and a bandwidth around 20 MHz. The 
data is recorded (after setting clocks and next_time_pps) and then 
cross-correlation is performed. The time delay between receivers is 
estimated by taking the maximum sample number of the cross-correlations. 
A sub-sample estimate is performed via parabolic interpolation. Our 
results show differences on the order of 10's of microseconds, but the 
actual number is random, which agrees with [4]. This leads me to believe 
that either

1) The random offset due to the 3 fractional-N PLL's (or other RF 
front-end ambiguities) is more than a phase ambiguity
2) There is something incorrect in the code for performing the time 

Has anyone successfully synchronized B200's in this way? If so, what is 
the expected value of the random delay (or phase offset?) between 
receivers? Is it on the order of nanoseconds, microseconds, etc? I'd be 
really interested in some hard numbers on these things. Of course, it 
depends on the particulars such as bandwidth, etc, but just some idea of 
what other folks are getting. I believe the B200 only samples the 1 PPS 
at the rate of the master clock so I would expect with calibration the 
B200s should be able to be synchronized on the order of maybe 100ns. Is 
this realistic?


[1] https://fosdem.org/2016/schedule/event/distributedsdr/
[7] https://www.ettus.com/product/details/OctoClock
[8] http://www.jackson-labs.com/index.php/products/lc_xo

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20160316/95d150f8/attachment-0002.html>

More information about the USRP-users mailing list