Packet-based synchronization of communication systems is in the center of interest today as dedicated synchronization solutions require dedicated connections, increasing systems cost to unacceptable levels in the current competitive marketplace. Precision Time Protocol (PTP) version 2 is a good solution for the problem.
For precise synchronization of nodes in the communication system PTP should be used with low level, hardware assigned time stamps, and these time stamps should be collected from a local clock running on the network interface controller. There are available network interface controllers with various level of IEEE 1588 support, however, FPGA based implementations are only available with limited functionality. Therefore, it is reasonable to start a development of a IEEE 1588 implementation for FPGAs.
Implementing the whole PTPv2 protocol in an FPGA is a long process which is achievable only through multi-annual work, so the goal of the project is the implementation of timestamping which is a part of the protocol. Timestamp provides the ability to note the exact time of certain events occuring and compare these times noted by different devices in order to achieve synchronization.