Commit 6c523613 authored by Maciej Lipinski's avatar Maciej Lipinski

WR changes for PTPv3: included comments by Erik

parent e48fe441
......@@ -4,7 +4,7 @@
\subsection{Annex F - Calibration Pattern}
Calibration pattern shall be defined as RD+K28.7 code group, Appendix 36A.2 of IEEE802.3.
The calibration pattern shall be defined as RD+K28.7 code group, Appendix 36A.2 of IEEE802.3.
\subsection{clockAccuracy}
Accuracies beyond 25ns should be included in Table 6 of PTP \cite{PTPv2} e.g.: as indicated
......
......@@ -4,7 +4,7 @@
The \textit{High Accuracy Default Profile} uses the \textit{High Accuracy Options} to enable
high quality synchronization. It defines hardware requirements for the clock implementing
the profile and how the \textit{High Accuracy Options} shall be combined along with
other PTP configuration to achieve required performance.
other PTP configurations to achieve the required performance.
\subsection{Options, Attributes, Features}
......@@ -24,24 +24,28 @@ and shall implement \textit{L1 Syntonization hierarchy agrees with 1588 hierarch
% syntonization hierarchy aligned with PTP hierarchy. The defaultDS.priority1 value shall be 64.
% Using transportSpecific flag set to DEFAULT is allowed if the Communication Path
% partner does not implement High Accuracy Profile.
\textcolor{red}{This profile shall be inter-operable
This profile shall be inter-operable
with the \textit{Delay Request-Response Default PTP profile} (Annex~J.3 of \cite{PTPv2}).
See clause~\ref{chap:q:highAccuracyProfileInter-operability} for details.}
% \textcolor{red}{This profile shall be inter-operable
% with the \textit{Delay Request-Response Default PTP profile} (Annex~J.3 of \cite{PTPv2}).
% See clause~\ref{chap:q:highAccuracyProfileInter-operability} for details.}
\subsection{Hardware Requirements}
The hardware which is required to support this profile shall
The hardware that is required to support this profile shall:
\begin{itemize*}
\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
changes)
\item provide information about rx/tx latency values - with assistance of
calibration procedure or without
a calibration procedure or without
\item provide timestamps with a sufficient precision (i.e. $<$ 100ps) - this might be
achieved using phase measurement techniques for sub-LSB precision
\item generate (on request) calibration pattern -- defined in transport annex for a given mapping
\item generate (on request) a calibration pattern -- defined in transport annex for a given mapping
\item phase-align recovered frequency with that of the frequency source
(using information provided from PTP protocol) and use such frequency to encode
(using information provided from the PTP protocol) and use such frequency to encode
upstream data (loop back the frequency to the frequency source)
\end{itemize*}
......@@ -58,7 +62,7 @@ High Accuracy ON flag (portDS.HighAccuracyON) -- dynamic field, initialized to F
The following information shall be conveyed using \textit{profileFlags} of the
\textit{High Accuracy Suffix} amended to to the Announce Messages:
\begin{itemize*}
\item \textcolor{red}{High Accuracy Profile index -- 0x1 for default profile}
\item \textcolor{black}{High Accuracy Profile index -- 0x1 for default profile}
\item High Accuracy ON flag - the value of portDS.HighAccuracyON data field
% it is set to 1 if the High Accuracy
% Communication Path is already established
......@@ -98,21 +102,21 @@ The following information shall be conveyed using \textit{profileFlags} of the
\subsection{The High Accuracy Communication Path}
A High Accuracy Communication Path can be established between two clocks implementing
A High Accuracy Communication Path can be established between two clocks implementing the
\textit{High Accuracy Default Profile}. It 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
BMC (a.k.a SLAVE port) connected directly by a communication medium. I.e. the 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 PTP state of neither of the ports shall not change once
the procedure is started until it finishes.
regards to the PTP state machine, i.e. the PTP state of both MASTER and SLAVE 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
The steps to establish a High Accuracy Communication Path shall start on entering the
UNCALIBRATED state by the SLAVE port if the following conditions are fulfilled:
\begin{itemize*}
\item both ports on Communication Path implement \textit{High Accuracy Default Profile}
\item both ports on the Communication Path implement \textit{High Accuracy Default 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
......@@ -121,9 +125,9 @@ UNCALIBRATED state by the SLAVE port if the following conditions are fulfilled:
% \item SYNCHRONIZATION\_FAULT event
% \end{itemize*}
\item at least one of the ports on the Communication Path (MASTER or SLAVE) has its
portDS.HighAccuracyON field set to FALSE.
portDS.HighAccuracyON field set to FALSE
\end{itemize*}
The following steps shall be performed to (re-)establish High Accuracy Communication Path
The following steps shall be performed to (re-)establish the Htigh Accuracy Communication Path
\begin{enumerate*}
\item the port shall perform \textit{Layer 1 Syntonization} as described in
clause~\ref{chap:layer1syntonization}
......@@ -146,7 +150,7 @@ The following steps shall be performed to (re-)establish High Accuracy Communica
\end{enumerate*}
\subsubsection{MASTER port}
The steps to establish High Accuracy Communication Path shall start
The steps to establish a High Accuracy Communication Path shall start
if the following conditions are fulfilled:
\begin{itemize*}
\item both ports on Communication Path implement \textit{High Accuracy Default Profile}
......@@ -154,7 +158,7 @@ if the following conditions are fulfilled:
\item the port receives L1\_SYNC\_SLAVE\_PRESENT Signaling Message with properly set
\textit{syntonizationFlags}
\end{itemize*}
The following steps shall be performed to establish High Accuracy Communication Path:
The following steps shall be performed to establish a High Accuracy Communication Path:
\begin{enumerate*}
\item the port shall perform \textit{Layer 1 Syntonization} as described in
clause~\ref{chap:layer1syntonization}
......
This document describes how the key ideas of the White Rabbit (WR) technology \cite{WRPTP}
can be adapted and included into the next revision of PTP \cite{PTPv2}, consequently
enabling the standard-compliant PTP devices to achieve high accuracy synchronization using
methods prototyped and tested in WR.
% 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 divided in this document into smaller key elements
which can be also useful on their own (outside WR). This pieces are defined as separate
\textit{High Accuracy 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}. \\
% Finally, some solutions can be achieved in many ways, thus some doubts and open questions are
% explained in Chapter~\ref{chap:openQuestions}.
In order to make this document "human-readable" and reasonably concise, it does
not include detailed solutions or precise definitions but more high level description of what
could be included into the IEEE1588 revision.\\
\\
The \textit{High Accuracy options} include:
\begin{itemize*}
% \begin{description*}
\item \textbf{General} -- defines means of communication between clocks (i.e. PTP
devices) implementing the options (i.e. \textit{Announce Messages Suffix} and
\textit{High Accuracy Signaling Messages})
\item \textbf{Layer 1 Syntonization} -- defines protocol tools to enable syntonization
over Layer 1, i.e. using SyncE or alike
\item \textbf{Rx/Tx Delays Calibration} -- defines protocol tools to perform calibration
of internal rx/tx delays
\item \textbf{Explicit Port State Configuration} -- defines how states of a clock (i.e. BC/OC)
can be explicitly configured (to be MASTER or SLAVE or PASSIVE) through configuration
\item \textbf{Medium Asymmetry Estimation} -- describes how to estimate asymmetry introduced
by a communication medium
\end{itemize*}
% \end{description*}
The \textit{High Accuracy Default Profile}:
\begin{itemize*}
\item defines hardware requirements for the clock implementing it
\item uses \textit{High Accuracy options} (defines their parameters)
\item defines PTP attributes/parameters/configuration
\item describes how a \textit{High Accuracy Communication Path} is established
\end{itemize*}
% \textcolor{red}{Some parts of the text in clause \ref{chap:highAccuracyOption}
% and \ref{chap:highAccuracyProfile} are in red color. It means that I was not
% confident about them -- further description is provided in a referenced part of
% \textit{Open Questions} (clause~\ref{chap:openQuestions}).} \\
% \\
Some PTP-specific abbreviations/terms used throughout the document:\\
BC = boundary clock (e.g. PTP-capable switch/router) \\
OC = ordinary clock (e.g. PTP-capable node) \\
TC = transparent clock (i.e. PTP-capable switch/router) \\
clock = a device (switch/router/node/etc) implementing PTP protocol (i.e. BC, OC, TC)\\
TLV = Type-Length-Value (i.e. a way of defining information in messages)
\ No newline at end of file
......@@ -89,64 +89,12 @@ Synchronization Protocol for \\
Networked Measurement and Control Systems\\ \textit{High Accuracy changelog}}
\author{Maciej Lipi\'{n}ski\\CERN -- European Organization for Nuclear Research\\Warsaw University of Technology}
\date{January 2013}
\date{February 2013 \\version 0.2}
\maketitle
% \thispagestyle{empty}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\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 divided in this document
into smaller key pieces
which can be also useful on their own (outside WR). This pieces are defined as separate
\textit{High Accuracy 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}.
Finally, some solutions can be achieved in many ways, thus some doubts and open questions are
explained in Chapter~\ref{chap:openQuestions}.
In order to make this document "standard-human-readable" and reasonably concise, it does
not include detailed solutions or precise definitions but more high level description of what
could be included into the IEEE1588 revision.\\
\\
The \textit{High Accuracy options} include:
\begin{itemize*}
% \begin{description*}
\item \textbf{General Clause} -- defines means of communication between clocks (i.e. PTP
devices) implementing the options (i.e. \textit{Announce Messages Suffix} and
\textit{High Accuracy Signaling Messages})
\item \textbf{Layer 1 Syntonization} -- defines protocol tools to enable syntonization
over Layer 1, i.e. using SyncE or alike
\item \textbf{Rx/Tx Delays Calibration} -- defines protocol tools to perform calibration
of internal rx/tx delays
\item \textbf{Explicit Port State Configuration} -- defines how states of a clock (i.e. BC/OC)
can be explicitly configured (to be MASTER or SLAVE or PASSIVE) through configuration
\item \textbf{Medium Asymmetry Estimation} -- describes how to estimate asymmetry introduced
by a communication medium.
\end{itemize*}
% \end{description*}
The \textit{High Accuracy Default Profile}:
\begin{itemize*}
\item defines hardware requirements for the clock implementing it
\item uses \textit{High Accuracy options} (defines their parameters)
\item defines PTP attributes/parameters/configuration
\item describes how \textit{High Accuracy Communication Path} is established
\end{itemize*}
\textcolor{red}{Some parts of the text in clause \ref{chap:highAccuracyOption}
and \ref{chap:highAccuracyProfile} are in red color. It means that I was not
confident about them -- further description is provided in a referenced part of
\textit{Open Questions} (clause~\ref{chap:openQuestions}).} \\
\\
Some PTP-specific abbreviations/terms used throughout the document:\\
BC = boundary clock (e.g. PTP-capable switch/router) \\
OC = ordinary clock (e.g. PTP-capable node) \\
TC = transparent clock (i.e. PTP-capable switch/router) \\
clock = a device (switch/router/node/etc) implementing PTP protocol (i.e. BC, OC, TC)\\
TLV = Type-Length-Value (i.e. a way of defining information in messages)
\input{introduction}
\newpage
\input{highAccuracyOption}
\newpage
......@@ -154,14 +102,28 @@ TLV = Type-Length-Value (i.e. a way of defining information in messages)
\newpage
\input{changesToPtpv2}
\newpage
\input{openQuestions}
\newpage
% \input{openQuestions}
% \newpage
\newpage
\tableofcontents
\newpage
\begin{thebibliography}{9}
\footnotesize
\bibitem{WRPTP} %done x
Emilio G. Cota, Maciej Lipinski, Tomasz Wostowski, Erik van der Bij, Javier
Serrano
\emph{White Rabbit Specification: Draft for Comments}.
CERN, Geneva
07/2011.\\
\vspace*{-2em}
\bibitem{PTPv2} %done x
IEEE Instrumentation and Measurement Society
\emph{IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems}.
IEEE Std 1588TM-2008,
2008, New York, USA\\
\vspace*{-2em}
\bibitem{WRinGS}
M. Lipi\'{n}ski, T. W\l{}ostowski, J. Serrano, P. Alvarez and P. Moreira
\emph{Performance results of the first White Rabbit installation for CNGS time transfer}.
......@@ -194,25 +156,13 @@ TLV = Type-Length-Value (i.e. a way of defining information in messages)
ICALEPCS TUC004,
2009.\\
\vspace*{-2em}
\bibitem{WRPTP} %done x
Emilio G. Cota, Maciej Lipinski, Tomasz Wostowski, Erik van der Bij, Javier
Serrano
\emph{White Rabbit Specification: Draft for Comments}.
CERN, Geneva
07/2011.\\
\vspace*{-2em}
\bibitem{JohnExpliciteState} %done x
John Eidson,
\emph{Option to explicitely confgure port state}.
ISPCS2012, San Francisco, USA
2012.\\
\vspace*{-2em}
\bibitem{PTPv2} %done x
IEEE Instrumentation and Measurement Society
\emph{IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems}.
IEEE Std 1588TM-2008,
2008, New York, USA\\
\vspace*{-2em}
\bibitem{IEEE802.3}
IEEE Std 802.3-2008
......
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