User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 518
UG585 (v1.11) September 27, 2016
Chapter 16: Gigabit Ethernet Controller
Each PTP message is identified with a message Type which is a 4 bit field in the PTP message
header. Message Types are identified in Table 16-8
•The versionPTP field signifies which PTP version is being used – PTPv1 or PTPv2.
•The messageLength field signifies the total length of the PTP message. It is different for different
PTP messages.
•The flag field is used for various purposes and can carry different values for different types of
frames. An example of use for this field as a twoStepFlag in Sync and PDelay_Req frames is to
distinguish one-step and two-step time stamping. If the sending master clock can perform
one-step time stamping, the twoStepFlag carries a value of 0.
Note: The Zynq-7000 AP SoC supports two-step timestamping – the twoStepFlag should always
be 1.
•The correctionField is generally significant for transparent clocks. The transparent clocks update
the correctionField to specify the slave regarding the exact time the PTP frames took to traverse
through the transparent clocks. If transparent clocks are not present in the path of a PTP
message, the correctionField can have a zero value.
•The sequenceId field is extensively used in the PTP messages. The originator of certain PTP
frames message Types assigns a sequence ID to the corresponding message through the
sequenceId field.
•The controlField is provided to maintain backward compatibility with PTPv1 based hardware
designs. It contains different values for different types of PTP frames.
•The logMessageInterval field is provided to represent the mean time interval between successive
PTP messages.
The steps to develop a simple and typical non-OS standalone example which can be used to
synchronize PTP clocks between two Zynq-7000 AP SoC systems are described in the following
sections. This information should be used for reference purpose only and is not meant to provide the
best possible implementation for accuracy. Please refer to the IEEE1588 standard specification for
more information.
The IEEE1588 implementation involves the following.
1. Controller initialization
Table 16-8: Message Types
PTP Frames Message Type
Sync 0x0
Delay_Req 0x1
PDelay_Req 0x2
PDelay_Resp 0x3
Follow_up 0x8
Delay_Resp 0x9
PDelay_Resp_Follow_Up 0xA
Announce 0xB
Management 0xC
Signaling 0xD