RFClock

This post is a review of the paper RFClock: Timing, Phase and Frequency Synchronization for Distributed Wireless Networks.


Motivation

Distributed systems is a new trend in wireless network architectures. But existing systems rely on a central clock for time synchronization, which makes them not a fully distributed system. For a true implementation of distributed systems, fine-grained time synchronization is crucial.

Goal

As stated in the title, the authors attempt to create a system that provides three synchronizations.

  1. Carrier frequency synchronization
  2. Time synchronization
  3. Carrier phase synchronization

This paper presents RFClock, an open source design that answers these three problems without altering the existing physical and link layer protocols.

RFClock satisfies the 10MHz reference with PPS(Pulse Per Second) condition, which is the requirement for SDR(Software Defined Radio) experiments.

Frequency synchronization

RFClock utilizes a leader-follower architecture. That is, the followers are synchronized based on the leader's signals. The leader transmits a two tone frequency signal with frequencies $f_1$ and $f_2$. The follower has an envelope detector and thus measures the beat frequencies $f_2 - f_1$ and $f_1 + f_2$. The difference frequency $f_2 - f_1$ drives the local oscillator of the follower, which in turn drives the PLL(Phase Locked Loop).

RFClock frontend
Figure 1. RFClock frontend architecture

All the followers are linked to the same signal, so they are all synchronized with each other even if a frequency drift occurs in the leader clock. $f_2 - f_1$ is set to be 10MHz to satisfy the conditions for SDR.

Time and phase synchronization

Each radio in a SDR system requires a PPS signal to perform timed tasks. But there are several challenges to providing a perfectly synchronized PPS signal for all radios.

  1. Phase offset compensation
  2. Common origin for PPS generation
  3. Recovery mechanism in case of synchronization failure

RFClock first generates a base PPS. A digital frequency divider within the PIC controller derives an exact measure of 1 second and generates a stream of pulses with fixed width. Then the PPS signals of all followers are phase corrected. There are two approaches for this alignment. First is using GPS, which is a method used in preexisting solutions such as GPSClock. RFClock, along with the GPS method, implements a second method using ultrawide band ranging for GPS denied environments such as indoors.

Timing diagram for UWB
Figure 2. Timing diagram for UWB-based ranging

Evaluation

Here we mention only a few select figures.

cfo
Figure 3. CFO(Carrier Frequency Offset) comparison of RFClock with OctoClock, GPSDO and Internal Reference Clocks

Figure 3 shows that RFClock has a notably better CFO than Internal Reference Clocks or OctoClock but does not perform much better than OctoClock.

ber gain
Figure 4. BER(Bit Error Rate) comparison Figure 5. Channel gain comparison

Figure 4 shows that RFClock has similar BER performance with OctoClock and better performance than GPSDO. Figure 5 shows that channel gain improves with the increase of transmitters, as the signals arrive in phase.

Criticism

In the Introduction the authors mention various existing solutions and their limitations. However only OctoClock and GPSDO are used for comparison in the Evaluation section. This is especially problematic since the authors state that the work closest to RFClock is not OctoClock or GPSDO but AirShare. A comparison of AirShare and RFClock is provided in the Related Work section, but a visual comparison would have been nice to have.

Ideas for Future work

This paper does not mention how security can be ensured in communication between the leader and the followers. If an adversary sends two-tone frequency signals at $f_1'$ and $f_2'$ to some of the followers, synchronization might break and threaten the distributed system. Measures for security could be a potential research topic.

References

Alemdar, K. et al., 2021, "RFClock: Timing, Phase and Frequency Synchronization for Distributed Wireless Networks", MobiCom 2021, pp. 15-27