How to Use the IEEE 1588 Precision Time Protocol
Networking equipment, telecom equipment, remote sensing systems, security systems, military embedded systems, and many other networked devices often exchange timestamped data. The time stamped data could be used for any number of processing tasks or displayed to network operators, but there has to be a way to ensure timestamps are accurate across networked devices. In response to this need, the industry has developed timing standards for networked systems that aim to ensure clock synchronization and accurate timestamping down to predefined levels of accuracy.
The IEEE 1588 Precision Time Protocol (PTP) is one such implementation of a synchronization protocol, which is capable of sub-microsecond timing synchronization. This network synchronization protocol has been in use for two decades and it has become instrumental in synchronizing wired and wireless networks to very high accuracy.
How the IEEE 1588 Standard Works
IEEE 1588 PTP is a clock synchronization protocol that leverages networking messaging between a host (called the grandmaster) and a group of clients. The goal is to ensure all peripheral devices on the network are matching the grandmaster’s clock in frequency and in phase.
At a very high level, the protocol involves three steps:
- The grandmaster sets the reference clock time and interval, and it sends periodic sync signals to peripheral devices
- Drift in the clock frequency is compensated so that the clocks are tracking at the same rate
- The peripheral equipment compensates offset by delaying its clock by the required number of cycles
Steps #2 and #3 complete syntonization and synchronization, respectively. In this process, a series of sync pulses is sent from the grandmaster to the peripheral device and the duration between sync pulses is tracked. Later, a delay request and response are sent so that the specific timing offset between the two systems is known down to as low as a few clock pulses.
Timing scheme in IEEE 1558 PTP.
The duration between the sync pulses is equal to the grandmaster’s reference clock, and this reference is compared to the peripheral’s internal clock. Through this comparison, the clock phase is also corrected so that the internal clock and grandmaster clock have matching frequency and definite phase.
The process is repeated periodically to ensure the peripheral clock always matches the grandmaster clock. This will overcome variations in the peripheral’s clock frequency that can typically result from environmental factors.
PTP vs. NTP
An alternative networking protocol that can be used for equipment synchronization is the Network Timing Protocol (NTP). NTP is an older protocol and it is still widely used when synchronization is needed, but when near-real-time synchronization of networked equipment is not required. NTP is best used for public networks and for clock synchronization of clients connected to a server over the internet.
In NTP, the client sends out a timing request, and then it receives a reply from the server. Based on the time difference between the sent and received message, the latency in the communication link is known. This performs basically the same function in PTP, where the timing offset is determined with the delay request function.
Timing scheme in NTP.
Once the round-trip delay between the two nodes is known, the peripheral knows the amount by which to delay its own timing so that any required timestamps are synchronized. However, the difference in frequency and accumulated drift requires repeated sync requests from the client back to the server.
IEEE 1588-Capable Chipsets
The IEEE 1588 protocol has been implemented by multiple semiconductor vendors as an optional feature in their networking equipment chipsets. These components include the required processing and timing capabilities built into the chip so that they can exchange messages with remote servers or clients. Some chipsets are available to support products such as:
- Copper and fiber network switches
- Industrial process controllers
- WLAN equipment
- Telecom equipment
- Hardware security modules (HSMs)
General-purpose solutions can be implemented in edge computing ecosystems, sensing systems, internet/GPS-denied environments, or off-grid networks. The best option for these systems is a network synchronizer chip, which is placed in a PCB as a simple peripheral connected to the system host. For a more compact solution, network timing with IEEE 1588 can be implemented in an FPGA from vendor IP.
Some semiconductor vendors also offer a software platform that can be implemented as a desktop application for network management, or as a container that can be integrated into a web platform. These chipset and application options give many of the newest time-sensitive applications the ability to enforce synchronization across multiple devices.
Whether you’re designing advanced embedded systems that implement time-sensitive functionality, use the complete set of system analysis tools from Cadence to evaluate systems functionality. Only Cadence offers a comprehensive set of circuit, IC, and PCB design tools for any application and any level of complexity. Cadence PCB design products also integrate with a multiphysics field solver for thermal analysis, including verification of thermally sensitive chip and package designs.
Subscribe to our newsletter for the latest updates. If you’re looking to learn more about how Cadence has the solution for you, talk to our team of experts.