Commit 326d2b41 authored by Maciej Lipinski's avatar Maciej Lipinski

WR changes for PTPv3: update

parent 518beca9
......@@ -2,4 +2,4 @@
\label{chap:changesToPtpv2}
\section{Transport Annex}
\ No newline at end of file
\subsection{Transport Annex}
\ No newline at end of file
......@@ -5,10 +5,11 @@
Stuff used by all the High Accuracy Options.
\subsubsection{High Accuracy TLV definitaion}
\subsubsection{High Accuracy TLV}
The High Accuracy options shall use Signaling Messages carrying TLVs defined in this
clause. The following different messages are exchanged:
clause. The TLVs shall be recognized by tlvType of HIGH\_ACCURACY\_OPTION.
The following different messages are exchanged:
\begin{itemize*}
\item L1\_SYNC\_SLAVE\_PRESENT
\item L1\_SYNC\_LOCK
......@@ -18,14 +19,15 @@ clause. The following different messages are exchanged:
\item CALIBRATED
\item HIGH\_ACCURACY\_LINK\_ON
\end{itemize*}
The High Accuracy options shall be performed only on direct paths (i.e. two clocks connected
The High Accuracy options shall be performed only on direct Communication Paths
(i.e. two clocks connected
by direct link). In order to ensure direct communication (avoid communication over devices
not supporting PTP and/or High Accuracy options), the Signaling Messages defined in this
clause shall be sent using the multicast address from the reserved (non-forwardable)
address space.
address space, i.e.: 01-80-C2-00-00-0E.
\subsection{Layer 1 Syntonization}
\label{chap:layer1syntonization}
This option applies to clocks (PTP devices, i.e. OC, BC, TC) capable of transfering frequency
over the physical layer (e.g. SyncE \cite{SynchE}).
......@@ -35,10 +37,11 @@ A port of a frequency-transfer-enabled device that is recommended to enter SLAVE
(recommended state is BMC\_SLAVE) shall execute activities listed in this clause if the
following conditions are fulfilled:
\begin{itemize*}
\item the link partner is also frequency-transfer-enabled
\item the Communication Path partner is also frequency-transfer-enabled (as recognized by
transportSpecific field of the Announcement Message)
\item the frequency-distribution hierarchy in the network is set to follow PTP hierarchy
(as recognized by transportSpecific field of the Announcement Message)
\end{itemize*}
The port shall enter UNCALIBRATED state of PTP State Machine and send the \\
L1\_SYNC\_SLAVE\_PRESENT Singaling Message to the path-partner. The port shall then wait
for a limited time (\textit{timeout}, clause~\ref{chap:timeout}) for reception of a L1\_SYNC\_LOCK
......@@ -114,12 +117,27 @@ The calibration procedure cannot take more time then the announceInterval.
Obtaining the information whether the path-partner is capable of responding to the
calibration request is out of the scope of this clause.
\subsection{Data Set fields}
\begin{itemize*}
\item Reception internal delay value (portDS.rxDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationRequestor}
\item Reception internal delay value of Communication Path patner (portDS.rxParentDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationResponder}
\item Transmission internal delay value (portDS.rxDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationRequestor}
\item Transmission internal delay value of Communication Path patner (portDS.rxParentDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationResponder}
\end{itemize*}
\subsubsection{Calibration Pattern}
The calibration pattern (signal sent to perform calibration) shall be defined for each
transport mapping in appropriate Annex (Annex E-I).
\subsubsection{Calibration requestor}
\label{chap:calibrationRequestor}
A port (being in SLAVE/MASTER/UNCALIBRATED/PASSIVE state) which requires tx/rx internal
delays calibration (i.e. measurement) shall send CALIBRATE Signaling Message to its
......@@ -145,8 +163,9 @@ The calibration shall be as follows:
\item Rx internal delays calibration - the requestor uses the \textit{calibration pattern}
sent by the responder in order to calibrate its reception internal delays.
\end{enumerate*}
Once the calibration is finished (as indicated by H/W), the requestor sends CALIBRATED
Signaling Message which includes the values of measured internal delays.
Once the calibration is finished (as indicated by H/W), the requestor updates its
transmission and reception internal delays (portDS.rxDelay, portDS.txDelay) and sends
CALIBRATED Signaling Message which includes the values of measured internal delays.
If the calibration procedure (i.e. sending \textit{calibration pattern} is not required
by the requestor to know its internal tx/rx delays but the values of delays need to be
......@@ -155,6 +174,7 @@ clause~\ref{chap:asymmetry}), then only CALIBRATED Signaling Message with the t
internal delays values shall be sent.
\subsubsection{Calibration responder}
\label{chap:calibrationResponder}
A port (being in SLAVE/MASTER/UNCALIBRATED/PASSIVE state) shall handle the
CALIBRATE\_REQ Signaling Message by:
......@@ -187,8 +207,6 @@ The interface to the hardware shall be defined in this clause, i.e.:
\item stop sending calibration pattern -- request to H/W
\end{itemize*}
\subsection{Explicit Port State Configuration}
This option enables to manually configure the state (and effectively the role: SLAVE, MASTER
......
\section{Default High Accuracy Profile}
\section{High Accuracy Default Profile}
\label{chap:highAccuracyProfile}
The \textit{High Accuracy Default Profile} uses the \textit{High Accuracy Options} to enable
high quality synchronization. It defines hardware requirements for the device implementing
the profile and how the \textit{High Accuracy Options} shall be combined along with
other PTP configuration to achieve sub-nanosecond accuracy of sychronization.
other PTP configuration to achieve sub-nanosecond accuracy of synchronization.
The delay request-response mechanism shall be the only path delay measurement mechanism for
this profile. It shall define default mapping using Annex F (networkProtocol=0003) with the
transportSpecific flag indicating usage of Layer 1 syntonization with frequency loopback.
However, using transportSpecific flag set DEFAULT is allowed if the Communication Path
partner does not implement High Accuracy Profile. This profile shall be inter-operable
with the \textit{Delay Request-Response Default PTP profile} (Annex~J.3 of \cite{PTPv2}).
By default the "High Accuracy" options shall be active. If the Communication Path
partner does not implement High Accuracy Profile, the "High Accuracy" option shall be disabled
and the port shall default to \textit{Delay Request-Response Default PTP profile}
(Annex~J.3 of \cite{PTPv2}).
\subsection{Hardware Requirements}
The hardware which is required to suppor this profile shall
\begin{itemize*}
\item transfer frequency over Layer 1 (e.g. SyncE \cite{SynchE})
\item transfer frequency over Layer 1 (e.g. SyncE \cite{SynchE} or alike)
\item feature constant rx/tx latencies during operation (except for temperature-induced
chagnes)
\item provide higher layers with information about rx/tx latency values - using
changes)
\item provide information about rx/tx latency values - with assistance of
calibration procedure or without
\item provide timestamps with a sufficient precision (i.e. $<$ 100ps) - this might be
achived using phase measurement techniques for sub LSB precision.
\item provide calibration pattern (defined in transport annex for a given mapping).
achieved using phase measurement techniques for sub-LSB precision.
\item generate (on request) calibration pattern -- defined in transport annex for a given mapping
\end{itemize*}
\subsection{High Accuracy Data Set fields}
\begin{itemize*}
\item High Accuracy ON flag (portDS.HighAccuracyON) -- initialized with FALSE, DYNAMIC field
\end{itemize*}
\subsection{Announce Message Suffix}
Clocks (i.e. TC, OC) supporting High Accuracy Profile shall append their
Announce Messages with the suffix defined in this clause. Such devices shall also handle
properly the suffix which enables recognision of High Accuracy capable devices.
Announce Messages with a suffix defined in this clause. Such devices shall also handle
properly the suffix which enables mutual recognition of High Accuracy capable devices.
Except for High Accuracy profile capabilities recognision, the suffix conveys
the following information:
Except for enabling to recognize clocks implementing High Accuracy Profile, the suffix conveys
the following information \footnote{Information in gray is included for
backward-compatibility, it is not necessary for correct functioning of the profile }:
\begin{itemize*}
% \item Magic Number
% \item Version Number (can be different for non-default High Accuracy Profiles)
% \item Message ID (ID is used over all High Accuracy options/profiles)
\item \textcolor{gray}{Explicit configuration port state (portDS.configState) of the
transmiting port}
\item \textcolor{gray}{Calibrated flag set to 1 if the internal fixed delays are known and
calibration is not needed}
\item \textcolor{black}{High Accuracy ON - flag set to 1 if the High Accuracy path is already
established, i.e.: receiving port passed through UNCALIBRATED state in which it
syntonized over Layer 1 and the value of internal delays has been exchanged. This
flag is used mainly to enforce by the MASTER re-calibration and re-syntonization of
a path.}
\item \textcolor{gray}{Explicit configuration port state (value of portDS.configState)
of the transmitting port}
\item \textcolor{gray}{Calibrated flag -- it is set to 1 if the internal fixed delays
are known and calibration is not needed}
\item \textcolor{black}{High Accuracy ON flag - it is set to 1 if the High Accuracy
Communication Path is already established
% i.e.: the receiving port has already passed through UNCALIBRATED state in which it
% syntonized over Layer~1 and the value of internal delays has been exchanged. This
% flag is used mainly to enforce by the MASTER re-calibration and re-syntonization
}
\end{itemize*}
A High Accuracy Communication Path is considred established between two ports implementing
this profile if:
A High Accuracy Communication Path is considered established between two ports (i.e.
MASTER port and SLAVE port) implementing this profile if:
\begin{itemize*}
\item the ports are connected by direct link (no other devices on the Communiation Path)
\item the ports are syntonized over Layer 1
\item the SLAVE port has the knowledge about internal tx/rx delays (obtained/exchanged using
clause~\ref{chap:DelaysCalibration})
\item the SLAVE port has the knowledge about internal tx/rx delays (obtained/exchanged
within \textit{Rx/Tx Delays Calibration} Option, clause~\ref{chap:DelaysCalibration})
\item the SLAVE port is in the SLAVE state and the MASTER port is in the MASTER state.
\end{itemize*}
\subsection{Establishing High Accuracy Communciation Path}
\subsection{The High Accuracy Communication Path}
\subsection{Port in MASTER state}
The following steps shall be performed to establish High Accuracy Communication Path
A High Accuracy Communication Path is established between a port recommended to be in
MASTER state by BMC (a.k.a. MASTER port) and a port recommended to be in SLAVE state by
BMC (a.k.a SLAVE port) connected directly by a communication medium, i.e. SLAVE port and
MASTER port shall not be connected through any devices not implementing the High Accuracy
Profile.
The process described below (for SLAVE and MASTER port) shall be non-preemptive with
regards to PTP state machine, i.e. the state of neither of ports shall not change once
the procedure is started until it finishes.
\subsubsection{SLAVE port}
The steps to establish High Accuracy Communication Path shall start on entering the
UNCALIBRATED state if the following conditions are fulfilled:
\begin{itemize*}
\item the port implements High Accuracy profile
% \item the port enters the UNCALIBRATED state as a result of
% \begin{itemize*}
% \item recommendation by (modified) BMC to enter SLAVE state based on
% Announce Messages received from a port implementing High Accuracy Profile
% (amended with appropriate suffix) \textbf{or}
% \item SYNCHRONIZATION\_FAULT event
% \end{itemize*}
\item at least one of the ports on the Path (MASTER or SLAVE) has its
portDS.HighAccuracyON field set to FALSE.
\end{itemize*}
The following steps shall be performed to (re-)establish High Accuracy Communication Path
\begin{enumerate*}
\item
\item
\item
\item
\item the port shall perform \textit{Layer 1 Syntonization} as described in
clause~\ref{chap:layer1syntonization}
\item the port shall await (a limited time -- \textit{timeout}) the MASTER port to
perform the \textit{Rx/Tx Delays Calibration} as described in
clause~\ref{chap:DelaysCalibration}, i.e. reception of CALIBRATE\_REQ or CALIBRATED
Signaling Message
\item the port shall start the \textit{Rx/Tx Delays Calibration} on reception of CALIBRATED
Signaling Message from the MASTER port, i.e.
\begin{itemize*}
\item send CALIBRATE\_REQ Signaling Message if it requires \textit{calibration
pattern} \textbf{or}
\item send CALIBRATED Signaling Message if it knows its internal delays.
\end{itemize*}
\item the port shall await (limited time -- \textit{timeout}) the HIGH\_ACCURACY\_LINK\_ON
Signaling Message
\item the port shall update the value of portDS.HighAccuracyON field to TRUE --
the High Accuracy Communication Path is considered to be established
\end{enumerate*}
\subsection{Port recommended to be in SLAVE state (in UNCALIBRATED state)}
\subsubsection{MASTER port}
The steps to establish High Accuracy Communication Path shall start
if the following conditions are fulfilled:
\begin{itemize*}
\item the port implements High Accuracy profile
\item the port is in MASTER state
\item the port receives L1\_SYNC\_SLAVE\_PRESENT Signaling Message
\end{itemize*}
The following steps shall be performed to establish High Accuracy Communication Path
\begin{enumerate*}
\item
\item
\item
\item
\item the port shall perform \textit{Layer 1 Syntonization} as described in
clause~\ref{chap:layer1syntonization}
\item the port shall start the \textit{Rx/Tx Delays Calibration} on reception of
completing the \textit{Layer 1 Syntonization}, i.e. reception of L1\_SYNC\_LOCKED
Signaling Message from the SLAVE port
\item the port shall await (a limited time -- \textit{timeout}) the SLAVE port to
perform the \textit{Rx/Tx Delays Calibration} as described in
clause~\ref{chap:DelaysCalibration}, i.e. reception of CALIBRATE\_REQ or CALIBRATED
Signaling Message
\item the port shall send HIGH\_ACCURACY\_LINK\_ON on reception of CALIBRATED
Signaling Message from the SLAVE port and update the value of portDS.HighAccuracyON
field to TRUE -- the High Accuracy Communication Path is considered to be established
\end{enumerate*}
......@@ -96,11 +96,12 @@ Networked Measurement and Control Systems\\ \textit{High Accuracy changelog}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newpage
This document proposes the way White Rabbit (WR) extension \cite{WRPTP} could be included into
the next revision of PTP \cite{PTPv2}. The original WR was devided into smaller key pieces
This document proposes the way how White Rabbit (WR) extension \cite{WRPTP} could be included into
the next revision of PTP \cite{PTPv2}. The original WR was divided into smaller key pieces
which can be also useful on their own (outside WR). This pieces are defined as separate
options in Chapter~\ref{chap:highAccuracyOption}. This key pieces (options) are used togother by a
\textit{High Accuracy Default Profile} defined in Chapter~\ref{chap:highAccuracyProfile}.
options in Chapter~\ref{chap:highAccuracyOption}. The options are used by a
\textit{High Accuracy Default Profile} defined in Chapter~\ref{chap:highAccuracyProfile}
to enable high quality synchronization.
The new options/profile might require some small changes in the main body of the PTP
standard, these changes are listed in Chapter~\ref{chap:changesToPtpv2}.
Finaly, some solutions can be achieved in many ways, thus some doubts and open questions are
......@@ -108,7 +109,7 @@ explained in Chapter~\ref{chap:openQuestions}.
In order to make this document "standard-human-readible", the main body includes
a consise information with references but without firm/concrete/boring proposals (i.e. text of
options/profile, or text-references changes to PTP standard). However, experts will find
options/profile, or text-referenced changes to PTP standard). However, experts will find
precise propsals in the Appendixes.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment