User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 520
UG585 (v1.11) September 27, 2016
Chapter 16: Gigabit Ethernet Controller
Example: Master Clock Port
1. Initiate a transmission of Sync and Announce frames at pre-defined intervals.
2. Initiate a transmission of PDelay_Req frames at regular intervals.
Example: Slave Clock Port
1. Initiate a transmission of PDelay_Req frames at regular intervals.
2. Wait for Sync frame for a predefined interval of time. If a Sync timeout occurs, change to become
a PTP master.
3. Wait for an Announce frame for a pre-defined interval of time. If an Announce timeout occurs,
change to become a PTP master.
If a PDelay_Req frame is not received for a predefined period of time, or no Pdelay_resp and
PDelay_resp_Follow_Up were received for a PDelay_Req packet, then there is a grave error. As part of
error handling, the whole PTP state machine can be stopped (for both PTP master and slave) and no
clock synchronization done (if it is a slave port).
The intervals as mandated by the protocol range from 2
-128
to 2
127
seconds. The interval is decided
by the system specification. Since the same timer is used for Sync, Announce and PDelay_Req frames,
the timer expiry duration is decided by the minimum time interval for all these frames.
In a typical use case, the Sync frames can be sent out every 125 milliseconds, Announce frames and
PDelay_Req frames every 1 second. Similarly, typical Announce frame timeouts can be 2-3 seconds
and PDelay_Req, PDelay_Resp, PDelay_Resp_Follow_up timeouts can be 3-5 seconds.
16.4.3 Best Master Clock Algorithm (BMCA)
The BMCA performs a distributed selection of the best candidate clock (which becomes the
grandmaster clock) based on different clock properties for the available clocks in the network:
•Priority1
Clock class
Clock accuracy
Clock variance (offset scaled log variance)
•Priority2
Clock identity (to break the tie)
Refer to the IEEE 1588 Standard Specification for more information on clock attributes and BMCA.
In a typical implementation, each clock port can be identified with a structure which has fields for the
above clock properties. Other than these properties, the BMCA clock port can also be identified with
the steps removed field. For more information regarding this field refer to the IEEE1588
specifications. When a slave receives Announce frames from multiple master hosts, the steps removed
field can become significant in deciding the master clock.
The implementation should maintain an identical structure to identify the current grandmaster clock
properties. The BMCA is invoked when an Announce frame is received by the slave.