Skip navigation

Precise clock synchronisation

  • Precision Time Protocol (PTP)
  • Accuracy of 100ns between target and reference
  • Clock synchronisation via network for hard real-time conditions
  • Seamless integration with the embOS/IP stack
  • Time synchronization with a remote PTP master clock
  • Support for IEEE 1588-2008 hardware time stamps

embOS/IP—Precision Time Protocol (PTP) Client

The embOS/IP PTP implementation is an optional extension which can be seamlessly integrated into your application. With hardware support the precision of the synchronization is around 100ns between target or ordinary clock and reference or grandmaster clock. This implementation combines a maximum of performance with a small memory footprint. This implementation covers PTP version 2 for ordinary slave-only clocks with the Delay/Response mechanism.

Time Sync

Time synchronisation is required in all applications where data sources and/or sensors are coupled with each other. Timing is essential in the imaging or image recognition industry, in audio applications, in other broadcasting and media applications, as well as in industrial automation.

The IEEE1588 implementation embOS/IP PTP OC makes sure, that machines can collaborate and interact with each other. It ensures, that video camera and microphone as well as other sensors provide data with a unified time stamp. 

Industry Standard IEEE 1588 Part 2

The Precision Time Protocol Ordinary Clock (PTP OC) add-on implements the relevant parts of the IEEE standard.

IEEE-StdDescription
[1588-2008]

IEEE Standard for a Precision Clock Synchronization for Networked Measurement and Control Systems.
A copy could be ordered here:
http://www.nist.gov/el/isd/ieee/ieee1588.cfm



Package Content

The embOS/IP PTP add-on is delivered in source code and includes an example application to run a PTP ordinary clock with embOS/IP.

Requirements

TCP/IP Stack

The embOS/IP PTP implementation requires the embOS/IP TCP/IP stack.

Hardware support

The embOS/IP PTP implementation does not require hardware support. A complete software solution is possible. For hardware supporting PTP, it is possible to add and use a specific PTP driver in order to reach a higher precision than with the software only solution.

PTP background

The PTP protocol is an API on top of the UDP or plain Ethernet protocol. It provides a way of synchronizing the target with a master clock over the local network. The embOS/IP implementation provides an ordinary slave-only clock.

PTP can be used with different protocols. This implementation currently supports PTP over UDP IPv4, PTP over UDP IPv6 and PTP over Ethernet. PTP messages are exchanged with multicast addresses.

If more than one master clock is present in the network, a selection algorithm is performed to select the one used as reference.

The Delay/Response mechanism provides a simple way to synchronize the time of a slave clock with a master clock.

PTP provides also a way to control and configure clocks with the usage of management messages.

Hardware support

The embOS/IP PTP add-on is able to work without the support of hardware. In this case, the system clock is used.

If the hardware supports PTP, a specific PTP driver can be added to benefit from hardware timestamps and a higher precision. You can find already available PTP drivers on our embOS/IP price list. If your device is not listed, please contact us to check if a PTP driver for your device can be developed.

Resource Usage

The ROM usage depends on the compiler options, the compiler version and the used CPU. The memory requirements of the PTP client presented in the tables below have been measured on a Cortex-M4 system using SEGGER Embedded Studio, size optimized.

Memory TypeMemory Usage
RAMApproximately 300 Byte
ROMApproximately 7.0 kByte