Commit c6c44588 authored by Maciej Lipinski's avatar Maciej Lipinski

few corrections

parent 45938486
No preview for this file type
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -82,10 +82,10 @@
& & &\\ \hline
0.1 & 10/09/2010 & E.G., M.L. & First draft for comments. \\ \hline
0.2 & 7/09/2010 & T.W., M.L. & Added introduction about PTP. \\ \hline
0.3 & 8/09/2010 & J.S., M.L. & Language\&Style-related corrections, plus reference to Peter's paper \\ \hline
0.4 & 14/09/2010 & E.V.D.B, M.L.& 1.~Changed the FSMs of the Slave and the Master into single and linear FSM,\\
& & & 2.~Changed message ID,\\
& & & 3.~Added authors, this rev. table, explanation figures and descriptions.
0.3 & 8/09/2010 & J.S., M.L. & Language\&Style-related corrections, reference to Peter's paper. \\ \hline
0.4 & 14/09/2010 & E.V.D.B, M.L.& 1.~Merged the FSM of the Slave and the FSM of the Master into single and linear FSM,\\
& & & 2.~Changed WR managementIDs,\\
& & & 3.~Added authors, this rev. table, explanatory figures and descriptions.
\\ \hline
\end{tabular}
\label{tab:revHist}
......@@ -108,7 +108,7 @@ synchronisation between master and slave is achieved by adjusting
the clock phase and offset of the slave to that of the master.
The \textit{offset} refers to the clock (e.g. time defined in Coordinated Universal Time standard),
while the \textit{phase} refers to the clock signal (e.g. 125 MHz clock signal).
This adjustment is done through the two-way exchange of PTP sync messages, which are corrected
The phase and offset adjustment is done through the two-way exchange of PTP sync messages, which are corrected
to achieve sub-ns accuracy due to the precise knowledge of the link delay.
\begin{figure}[ht!]
......@@ -130,9 +130,9 @@ Multi-link WR networks are obtained by chaining WR links forming a
hierarchical topology. This hierarchy is imposed by the fact that
a frequency traceable to a common grandmaster must be distributed
over the physical layer, resulting in a \textit{cascade} of master
and slave nodes. As a result of this topology, WR~network consists of two WR node kinds:
\textit{WR boundary clocks} (WR switches) and \textit{WR ordinary clocks}
(see section~\ref{sec:wrptpOverview}). It should be noted that the problem of non-linear
and slave nodes. As a result of this topology, WR~network consists of two kinds of WR network devices:
\textit{WR boundary clocks} (WR Switches) and \textit{WR ordinary clocks}
(WR Timing Receivers), see section~\ref{sec:wrptpOverview}. It should be noted that the problem of non-linear
error accumulation of chained boundary clocks does not apply, or is at
least greatly diminished by the clock recovery mechanism.
......@@ -193,7 +193,7 @@ decides to which other PTP node it should synchronize based on the information
provided in announce messages and using the BMC algorithm. A PTP node which is in
the SLAVE state synchronizes to the clock of another PTP node. A PTP node
which is in the MASTER state is regarded as a source of synchronization
for other PTP nodes. The full PTP state machine with state descriptions
for the other PTP nodes. The full PTP state machine with state descriptions
is included in Appendix~\ref{ptpFSM}.
......@@ -205,9 +205,9 @@ and \textit{Delay\_Resp Messages} are used to send timestamps between Master
and Slave (in the case of a two-step clock).
\textit{Management Messages} are used only for configuration and
administrative purposes. They are not essential for PTP synchronization.
administrative purposes. They are not essential for the PTP synchronization.
The flow of events in PTP delay request-respons (two-step clock) mechanism is the following
The flow of events in the PTP delay request-respons (two-step clock) mechanism is the following
(simplified overview):
\begin{enumerate}
\item The master sends periodically Announce messages.
......@@ -275,9 +275,7 @@ is essential for obtaining an acceptable estimate of the delay asymmetry on a
WR link. The origin of this correlation is highly implementation-dependent.
Thus this document just assumes that such correlation exists and is known.
The correlation between $\delta_{ms}$ and $\delta_{sm}$ is represented in
this document by \textit{medium correlation parameter} ($\alpha$).
The rest of this section presents a well-known physical medium correlation.
this document by the \textit{medium correlation parameter} ($\alpha$).
\subsubsection{Ethernet over a Single-mode Optical Fibre}
\label{sec:singlefiber}
......@@ -367,11 +365,9 @@ a calibration pattern in Gigabit Ethernet. Measurement of fixed delays during WR
is optional. It is only required if a non-deterministic reception/transmission elements are used.
An example implementation of the method to obtain fixed delays for non-deterministic Gigabit Ethernet PHY
is described in Appendix.
is described in Appendix~\ref{sec:calibForGigbitE}.
\newpage
\newpage
\section{White Rabbit PTP Extension}
\subsection{Overview}
......@@ -383,8 +379,8 @@ the White Rabbit extension to the PTP standard will be referred to as \textit{WR
\textit{the White Rabbit Link Setup} (WR Link Setup), which is a process for establishing the WR link
(Figure~\ref{fig:wrptpMSGs}).
It includes syntonization of the local clock over the physical layer, measurement of fixed delays (calibration)
and distribution of information about fixed delays over the link. The WR extension takes advantage of the Link Delay Model
to obtain an accurate delay estimation, i.e. it uses the delay asymmetry equation \eqref{eq:aqasymm}
and distribution of the information about fixed delays over the link. The WR extension takes advantage of the Link Delay Model
to obtain an accurate delay estimation, e.g. it uses the delay asymmetry equation \eqref{eq:aqasymm}
for Gigabit Ethernet over Fiber Optic. WRPTP extends the PTP messages and Data Sets (DS).
......@@ -404,14 +400,14 @@ as depicted in Figure~\ref{fig:wrptpMSGs} and described below (simplified overvi
\begin{enumerate}
\item The WR Master sends periodically WR Announce message with the custom suffix.
\item The WR Slave receives an Announce message, recognizes it as the WR Announce message and uses the modified BMC algorithm to establish its place in the WR network hierarchy.
\item The WR Slave starts WR Link Setup by sending S\_PRESENT WR Management message.
\item The WR Master starts sends LOCK WR Management message to request the WR Slave to start syntonization.
\item The WR Slave starts WR Link Setup by sending the SLAVE\_PRESENT WR Management message.
\item The WR Master starts sends the LOCK WR Management message to request the WR Slave to start syntonization.
\item The WR Slave sends LOCKED WR Management message as soon as the syntonization process is finished (notification from the hardware).
\item The WR Master sends CALIBRATE WR Management message to request calibration of its reception fixed delay.
\item The WR Master sends CALIBRATED WR Management message as soon as the calibration is finished (notification from hardware).
\item The WR Slave sends CALIBRATE WR Management message to request calibration of its reception fixed delay.
\item The WR Slave sends CALIBRATED WR Management message as soon as the calibration is finished (notification from hardware).
\item The WR Master sends WR\_MODE\_ON WR Management message to indicate completion of WR Link Setup process.
\item The WR Master sends the CALIBRATE WR Management message to request calibration of its reception fixed delay.
\item The WR Master sends the CALIBRATED WR Management message as soon as the calibration is finished (notification from hardware).
\item The WR Slave sends the CALIBRATE WR Management message to request calibration of its reception fixed delay.
\item The WR Slave sends the CALIBRATED WR Management message as soon as the calibration is finished (notification from hardware).
\item The WR Master sends the WR\_MODE\_ON WR Management message to indicate completion of the WR Link Setup process.
\item The WR Master sends periodically a Sync message (timestamped on transmission, $t_1$) followed by a Follow\_UP message which carries $t_1$.
\item The WR Slave receives the Sync message sent by the master (timestamped on reception, $t_2$).
\item The WR Slave receives the Follow\_Up message sent by the master.
......@@ -419,8 +415,9 @@ as depicted in Figure~\ref{fig:wrptpMSGs} and described below (simplified overvi
\item The WR Master receives the Delay\_Req message sent by the master (timestamped on reception, $t_4$).
\item The WR Master sends a Delay\_Resp message which carries $t_4$.
\item The WR Slave receives the Delay\_Resp.
\item The WR Slave adjusts its clock using the offset and the delay calculated with timestamps
($t_{1}$, $t_{2}$, $t_{3}$, $t_{4}$) corrected with asymmetry and $\mu_MS$. It results in the Slave's synchronization with the Master clock.
\item The WR Slave adjusts its clock using the offset and the delay calculated with the timestamps
($t_{1}$, $t_{2}$, $t_{3}$, $t_{4}$) corrected due to the precise knowledge of the link delay.
It results in the Slave's synchronization with the Master clock with sub-ns accuracy.
\item Repeat 1, 11-18.
\end{enumerate}
......@@ -428,12 +425,15 @@ Since the WR Link Setup is performed in the PTP UNCALIBRATED state, it is essent
WR node to implement this state as specified in the PTP state machine (Appendix~\ref{ptpFSM}):
a transition state between the LISTENING or PRE\_MASTER or MASTER or PASSIVE state and the SLAVE state.
A \textit{White Rabbit Switch} (WRSW) is not a PTP-compliant boundary clock. It is considered a set of
ordinary clocks with predefined functionality (WR Master or WR Slave) rather than a clock with multiple
PTP ports. As a consequence, WRPTP messages are never forwarded. In this document, the term \textit{node}
In this document, the term \textit{node}
is used interchangeably with \textit{port}. A WR Master node/port is an ordinary clock with predefined
Master functionality, working as a Master on the link. A WR Slave node/port is an ordinary clock with
predefined Slave functionality, working as a Slave on the link. Proper performance of a WR network
predefined Slave functionality, working as a Slave on the link.
A \textit{White Rabbit Switch} (WRSW) is not a PTP-compliant boundary clock. It is considered a set of
ordinary clocks with predefined functionality (WR Master or WR Slave) rather than a clock with multiple
PTP ports. As a consequence, WRPTP messages are never forwarded. A \textit{White Rabbit Timing Receiver}
is an ordinary clock with predefined WR Slave functionality (slave node). Proper performance of a WR network
is ensured by connecting a WR Slave port to a WR Master port.
Figure~\ref{fig:hybrid-network} depicts the topology of a \emph{hybrid} WR/IEEE1588
......@@ -478,7 +478,7 @@ calPeriod & portDS & 32 bit value & Calibration peri
calPattern & portDS & 32 bit value & Medium specific calibration pattern. \\ \hline
calPatternLen & portDS & 16 bit value & Number of bits of calPattern to be repeated. \\ \hline
wrMode & portDS & TRUE, FALSE & If TRUE, the port is working in WR mode. \\ \hline
wrAlpha & portDS & 32 bit value & \textit{medium correlation parameter} as described in section~\ref{sec:singlefiber}. \\ \hline
wrAlpha & portDS & 32 bit value & \textit{Medium correlation parameter} as described in section~\ref{sec:singlefiber}. \\ \hline
grandmasterWrPortMode & parentDS & NON\_WR, WR\_SLAVE, WR\_MASTER & Determines predefined function of the PTP grandmaster. \\ \hline
grandmasterDeltaTx & parentDS & 64 bit value & Grandmaster's $\Delta_{tx}$ measured in picoseconds and multiplied by ${2^{16}}$. \\ \hline
grandmasterDeltaRx & parentDS & 64 bit value & Grandmaster's $\Delta_{rx}$ measured in picoseconds and multiplied by ${2^{16}}$. \\ \hline
......@@ -509,7 +509,7 @@ BMC outcome, the WR Master $clockClass$ value shall be in the range of 1 through
\subsubsection{Overview}
White Rabbit benefits from PTP's messaging facilities. It uses a two-step clock delay
request-response mechanism and customizes Announce and Management messages (Figure~\ref{fig:wrPTPmsgs}).
request-response mechanism and customizes Announce and Management messages (Figure~\ref{fig:wrptpMSGs}).
In particular, it adds a suffix to the Announce message, defines a \textit{WR Type-Length-Valu}e
(WR TLV) type, WR management action and management~IDs.
......@@ -528,8 +528,8 @@ PTP delay request-response mechanism (section 11.3, PTP).
\subsubsection{WR Type-Length-Value Type}
\label{sec:wrTLVtype}
All PTP messages can be extended by means of a standard type, length, value (TLV) extension mechanism.
White Rabbit defines the value of TLV type out of the range reserved for Experimental TLVs (Table 34, IEEE1588 \cite{IEEE1588})
All PTP messages can be extended by means of a standard \textit{type, length, value} (TLV) extension mechanism.
White Rabbit defines the value of TLV type out of the range reserved for Experimental TLVs (Table 34, PTP)
as depicted in Table~\ref{tab:wrTLVtype}. This value is used to recognize the WR TLV entity in all WR custom messages.
\begin{table}[ht]
......@@ -561,10 +561,10 @@ TLV stores the $wrFlags$ which are defined in Table~\ref{tab:wrFlags}.
\cline{0-7}
7 & 6 & 5 & 4 & 3 & 2 & 1 & 0 & & \textbf{Offset} & \\
\hline
\multicolumn{8}{|c|}{header } & 34 & 0 & section 13.3, IEEE1588 \cite{IEEE1588}. \\ \hline
\multicolumn{8}{|c|}{body } & 30 & 34 & section 13.5, IEEE1588 \cite{IEEE1588}. \\ \hline
\multicolumn{8}{|c|}{header } & 34 & 0 & section 13.3, PTP. \\ \hline
\multicolumn{8}{|c|}{body } & 30 & 34 & section 13.5, PTP. \\ \hline
\multicolumn{8}{|c|}{tlvType } & 2 & 64 & 0x2004, see \ref{sec:wrTLVtype}. \\ \hline
\multicolumn{8}{|c|}{lengthField } & 2 & 66 & 0x2, section 14.1.2, IEEE1588 \cite{IEEE1588}. \\ \hline
\multicolumn{8}{|c|}{lengthField } & 2 & 66 & 0x2, section 14.1.2, PTP. \\ \hline
\multicolumn{8}{|c|}{wrFlags } & 2 & 68 & see Table~\ref{tab:wrFlags}. \\ \hline
\end{tabular}
\label{tab:wrAnnounce}
......@@ -663,13 +663,13 @@ WR\_MODE\_ON & 0x6005 & WR\_CMD & port \\ \hline
\paragraph{SLAVE\_PRESENT} Message sent by WR Slave to WR Master. It initiates the WR Link Setup process in the master.
\paragraph{SLAVE\_PRESENT} Message sent by the WR Slave to the WR Master. It initiates the WR Link Setup process in the WR Master.
The message shall have the form specified in Table~\ref{tab:wrOtherTLV}.
\paragraph{LOCK} Message sent by WR Master to WR Slave to request the start of frequency locking.
\paragraph{LOCK} Message sent by the WR Master to the WR Slave to request the start of frequency locking.
The message shall have the form specified in Table~\ref{tab:wrOtherTLV}.
\paragraph{LOCKED} Message sent by WR Slave to WR Master. It indicates successful completion of frequency locking.
\paragraph{LOCKED} Message sent by the WR Slave to the WR Master. It indicates successful completion of frequency locking.
The message shall have the format specified in Table~\ref{tab:wrOtherTLV}.
\begin{table}[h!]
......@@ -683,7 +683,7 @@ The message shall have the format specified in Table~\ref{tab:wrOtherTLV}.
7 & 6 & 5 & 4 & 3 & 2 & 1 & 0 & & \textbf{Offset} & \textbf{Content} \\
\hline
\multicolumn{8}{|c|}{tlvType } & 2 & 0 & 0x2004, see \ref{sec:wrTLVtype}. \\ \hline
\multicolumn{8}{|c|}{lengthField } & 2 & 2 & 0x2, section 15.5.2.3 IEEE1588 \cite{IEEE1588}. \\ \hline
\multicolumn{8}{|c|}{lengthField } & 2 & 2 & 0x2, section 15.5.2.3, PTP. \\ \hline
\multicolumn{8}{|c|}{managementId } & 2 & 4 & Defined in Table~\ref{tab:wrManagementId}.\\ \hline
\end{tabular}
\label{tab:wrOtherTLV}
......@@ -693,9 +693,9 @@ The message shall have the format specified in Table~\ref{tab:wrOtherTLV}.
\paragraph{CALIBRATE} Messages sent by the WR node entering REQ\_CALIBRATION state. It informs the other node
whether sending calibration pattern (see section~\ref{sec:fixedDelays}) is required (defined by the value of \textit{sendPattern} flag).
If calibration is required, it carries a set of parameters defining the parameters of
\paragraph{CALIBRATE} Messages sent by the WR node entering the REQ\_CALIBRATION state (see section~\ref{wrFSM}). It informs the other node
whether sending calibration pattern (see section~\ref{sec:fixedDelays}) is required (defined by the value of \textit{calibrationSendPattern} flag).
If calibration is required, it carries a set of parameters describing
the calibration pattern to be sent. The message format and parameters are described in Table~\ref{tab:wrCalibrateTLV}.
\begin{table}[h!]
......@@ -709,9 +709,9 @@ the calibration pattern to be sent. The message format and parameters are descri
7 & 6 & 5 & 4 & 3 & 2 & 1 & 0 & & \textbf{Offset} & \textbf{Content} \\
\hline
\multicolumn{8}{|c|}{tlvType } & 2 & 0 & 0x2004, see \ref{sec:wrTLVtype}. \\ \hline
\multicolumn{8}{|c|}{lengthField } & 2 & 2 & 0xC, section 15.5.2.3 IEEE1588 \cite{IEEE1588}.\\ \hline
\multicolumn{8}{|c|}{managementId } & 2 & 4 & MASTER\_CALIBRATE or SLAVE\_CALIBRATE.\\ \hline
\multicolumn{8}{|c|}{sendPattern } & 2 & 6 & The value determines whether calibration pattern should be sent. If the value is 0x1, the calibration pattern is sent. If the value is 0x0 the calibration pattern is not sent. \\ \hline
\multicolumn{8}{|c|}{lengthField } & 2 & 2 & 0xC, section 15.5.2.3 PTP.\\ \hline
\multicolumn{8}{|c|}{managementId } & 2 & 4 & CALIBRATE.\\ \hline
\multicolumn{8}{|c|}{calibrationSendPattern}& 2 & 6 & The value determines whether calibration pattern should be sent. If the value is 0x1, the calibration pattern is sent. If the value is 0x0, the calibration pattern is not sent. \\ \hline
\multicolumn{8}{|c|}{calibrationPeriod} & 4 & 8 & The value defines the time (in microseconds) for which the calibration pattern should be sent by receiving node.\\ \hline
\multicolumn{8}{|c|}{calibrationPattern} & 4 & 12 & The value defines the calibration pattern which should be sent by the receiving node.\\ \hline
\multicolumn{8}{|c|}{calibrationPatternLen} & 2 & 14 & The value defines the number of bits of \textit{calibrationPattern} field which should be used as repeated pattern (starting with the LSB). \\\hline
......@@ -723,8 +723,10 @@ the calibration pattern to be sent. The message format and parameters are descri
\paragraph{CALIBRATED} Message sent by the WR node entering \textit{CALIBRATED} state. If preceded by \textit{CALIBRATE} with \textit{sendPattern} set to TRUE,
it indicates successful completion of calibration. The message provides the other node with the values of its fixed delays ($\Delta_{tx}$ and $\Delta_{rx}$).
\paragraph{CALIBRATED} Message sent by the WR node entering \textit{CALIBRATED} state.
If preceded by the \textit{CALIBRATE} message with \textit{calibrationSendPattern} set to TRUE,
it indicates successful completion of the calibration. The message provides the other node with the
values of its fixed delays ($\Delta_{tx}$ and $\Delta_{rx}$).
The messages shall have the format specified in Table~\ref{tab:wrCalibratedTLV}.
\begin{table}[ht]
......@@ -762,14 +764,18 @@ The White Rabbit finite state machine (WR FSM) controls the process of establish
link between a WR Master and a WR Slave (WR Link Setup). It involves recognition of two compatible
WR nodes, syntonization over the physical layer, measurement of fixed delays and exchange of
their values across the link. The procedure differs between WR Master and WR Slave, therefore
two states of the FSM are entered only by the the node in WR Slave mode (Slave-only states). The WR FSM shall be
three states are Slave-only (entered only if the node is in WR Slave mode) and one state is Master-only (entered only
if the node is in WR Master mode). The WR FSM shall be
executed in the PTP UNCALIBRATED state, it is depicted in Figure~\ref{fig:wrFSM} and described in the rest of
this section.
A simplified flow of WR Management Message exchange between a WR Slave and a WR Master during WR Link Setup is presented
in Appedix~\ref{fig:wrFSMcommun}.
\subsubsection{Condition to start WR FSM by WR Slave}
\label{wrSlaveFSM}
\label{sec:wrSlaveFSMstart}
The WR FSM in WR Slave exits the IDLE state (is executed) only when the PTP state machine (Appendix~\ref{ptpFSM})
The WR FSM in WR Slave exits the IDLE state and starts execution by entering the \textit{PRESENT} state, only when the PTP state machine (Appendix~\ref{ptpFSM})
is in the PTP UNCALIBRATED state and the following conditions are met:
\begin{itemize}
\item the node is WR Slave: \\ ($portDS.wrPortMode = WR\_SLAVE$) \textbf{AND}
......@@ -778,7 +784,7 @@ is in the PTP UNCALIBRATED state and the following conditions are met:
\end{itemize}
\subsubsection{Condition to start WR FSM by WR Master}
\label{wrMasterFSM}
\label{sec:wrMasterFSMstart}
The WR Master node shall enter the PTP UNCALBRATED state, and start execution of the WR FSM by entering \textit{LOCK} state, when it receives a SLAVE\_PRESENT WR Management message (Table~\ref{tab:wrManagementId}).
......@@ -789,7 +795,7 @@ The WR Master node shall enter the PTP UNCALBRATED state, and start execution of
\paragraph{State Description}
Table~\ref{tab:wrFSMdesc} specifies White Rabbit states used in Figure~\ref{fig:wrFSM}.
Table~\ref{tab:wrFSMdesc} specifies the WR states notation used in Figure~\ref{fig:wrFSM}.
\begin{table}[hp!]
\caption{WR state definition}
......@@ -800,20 +806,20 @@ Table~\ref{tab:wrFSMdesc} specifies White Rabbit states used in Figure~\ref{fig:
\small
IDLE & WR FSM shall be in the IDLE state if the PTP FSM is in a state other than UNCALIBRATED. \\ \hline
PRESENT & Slave-only state. The WR Slave sends SLAVE\_PRESENT message to the WR Master and waits for the $LOCK$ message.\\ \hline
M\_LOCK & Waiting for the WR Slave to finish successfully the locking process. \\ \hline
S\_LOCK & Locking of WR Slave's logic to the frequency distributed over physical layer by the WR Master. \\ \hline
LOCKED & Slave-only state. The WR Slave sends \textit{LOCKED} message the WR Master and waits for \textit{CALIBRATE} message. \\ \hline
REQ\_CALIBRATION & In this state optional calibration of the node's reception fixed delay can be performed.
M\_LOCK & Master-only state. The WR master waits for the WR Slave to finish successfully the locking process. \\ \hline
S\_LOCK & Slave-only state. The WR Slave locks its logic to the frequency distributed over physical layer by the WR Master. \\ \hline
LOCKED & Slave-only state. The WR Slave is syntonized, it sends \textit{LOCKED} message to the WR Master and waits for the \textit{CALIBRATE} message. \\ \hline
REQ\_CALIBRATION & In this state, optional calibration of the node's reception fixed delay can be performed.
The node sends \textit{CALIBRATE} message to the other node. If the calibration is needed,
(\textit{calibrated} is set to false), the \textit{sentPattern} flag in the \textit{CALIBRATE} message
is sent to TRUE (0x1). If the calibration is not needed, the \textit{sentPattern} flag is set to FALSE (0x0).
If calibration is not needed, next state is entered, otherwise an indication from the hardware
(\textit{calibrated} is set to false), the \textit{calibrationSendPattern} flag in the \textit{CALIBRATE} message
is sent to TRUE (0x1). If the calibration is not needed, the \textit{calibrationSendPattern} flag is set to FALSE (0x0).
If calibration is not needed, next state is entered directly, otherwise an indication from the hardware
that the calibration has been finished successfully is awaited. \\ \hline
CALIBRATED & The node sends \text{CALIBRATED} message with information about its fixed delays. \\ \hline
RESP\_CALIB\_REQ & The nodes action in this state depends on the value of the \textit{sendPattern} flag received in \textit{CALIBRATE} message. TRUE value of the flag
RESP\_CALIB\_REQ & The node's action in this state depends on the value of the \textit{calibrationSendPattern} flag received in the \textit{CALIBRATE} message. TRUE value of the flag
indicates that calibration pattern shall be enabled. The pattern shall be disabled after \textit{calibrationPeriod}
or on reception of \textit{CALIBRATED} message. If the value of the \textit{sendPattern} flag is FALSE,
\textit{CALIBRATED} message is awaited for a default timeout. On reception of \textit{CALIBRATED} message the next state is entered.\\ \hline
or on reception of the \textit{CALIBRATED} message. If the value of the \textit{calibrationSendPattern} flag is FALSE,
the \textit{CALIBRATED} message is awaited for a default timeout. On reception of the \textit{CALIBRATED} message, the next state is entered.\\ \hline
WR\_LINK\_ON & The value of \textit{wrMode} is set to TRUE and the \textit{IDLE} state is entered. \\ \hline
\end{tabular}
\label{tab:wrFSMdesc}
......@@ -840,29 +846,30 @@ WR\_LINK\_ON & The value of \textit{wrMode} is set to TRUE and the \texti
\begin{description}
\item[]
\item[POWERUP] Turning on power to the device or reset.
\item[POWERUP] Turning on power to the device or reseting.
\item[WR LINK SETUP REQUIRED DECISION] (abrv. D\_WR\_SETUP\_REQ) Event indicating that WR Link Setup is required and WR FSM should be executed starting with
\textit{PRESENT} state, explanation above.
\textit{PRESENT} state, see section~\ref{sec:wrSlaveFSMstart}.
\item[LOCK MESSAGE] (abrv. M\_LOCK) WR $LOCK$ Management message which triggers frequency locking over the physical layer.
\item[LOCKED HARDWARE EVENT] (abrv. HW\_LOCKED) Indication from the hardware that frequency locking has been completed successfully.
\item[LOCKED MESSAGE] (abrv. M\_LOCKED) WR $LOCKED$ Management message which notifies that frequency locking has been completed
successfully by the message sender.
\item[LOCKED MESSAGE] (abrv. M\_LOCKED) WR $LOCKED$ Management message which notifies the WR Master that frequency locking has been completed
successfully by the WR Slave.
\item[CALIBRATE MESSAGE] (abrv. M\_CALIBRATE) WR $CALIBRATE$ Management message. It request the recipient to enter
\textit{RESP\_CALIB\_REQ} state, indicates whether sending of the calibration pattern is required and
provides calibration parameters.
\item[CALIBRATED HARDWARE EVENT] (abrv. HW\_CALIBRATE) Notification from the hardware indicating that calibration has been completed successfully.
\item[CALIBRATED MESSAGE] (abrv. M\_CALIBRATED) WR \text{CALIBRATED} Management message. It indicates that the node is calibrated.
If the \textit{CALIBRATED} message is received when calibration is being sent by the recipient,
If the \textit{CALIBRATED} message is received when the calibration pattern is being sent by the recipient,
sending of the pattern shall be disabled. The message carries information about fixed delays of the sending node.
\item[WR LINK ON] (abrv. WR\_LINK\_ON) WR \textit{WR\_LINK\_ON} Management message. It indicates that the WR Master finished successfully
WR Link Setup and set the \text{wrMode} flag to TRUE.
\item[EXCEED TIMEOUT RETRIES] (abrv. EXC\_TIMEOUT\_RETRY) Indicates that the state has been re-entered for a set number of times. The following states are re-entered
after timeouts: \textit{LOCK}, \textit{LOCKED}, \textit{REQ\_CALIBRATION}, \textit{CALIBRATED}, \textit{RESP\_CALIB\_REQ}.
\item[RETRY $n_{name}$] White Rabbit state machine can be waiting for a transition event on one state only for a limited time (\textit{TIMEOUT})
\item[WR MODE ON] (abrv. M\_WR\_MODE\_ON) WR \textit{WR\_MODE\_ON} Management message. It indicates that the WR Master finished successfully
WR Link Setup and set the \text{wrMode} flag to TRUE. It requests the WR Slave to set the \text{wrMode} flag to TRUE.
\item[RETRY $n_{name}$] White Rabbit state machine waits in a given state for a transition event only for a limited time (\textit{TIMEOUT})
The states to which this rule applies are the following: \textit{M\_LOCK},
\textit{REQ\_CALIBRATEION}, \textit{CALIBRATED}, \textit{PRESENT}, \textit{S\_LOCK},
\textit{LOCKED}, \textit{RESP\_CALIB\_REQ}. After the \textit{TIMEOUT}, the state is re-entered for \\
\textit{LOCKED}, \textit{RESP\_CALIB\_REQ}. After the \textit{TIMEOUT} expires, the state is re-entered for \\
$n_{\{M\_LOCK, REQ\_CAL, CALIBed, PRESENT, S\_LOCK, LOCKED, RESP\_CALIB\_RESP\}}$ number of times.
\item[EXCEED TIMEOUT RETRIES] (abrv. EXC\_TIMEOUT\_RETRY) Indicates that the state has been re-entered for a set number of times ($n_{\{M\_LOCK, REQ\_CAL, CALIBed, PRESENT, S\_LOCK, LOCKED, RESP\_CALIB\_RESP\}}$
and the \textit{TIMEOUT} has expired for the $n + 1$ time.
\end{description}
......@@ -888,6 +895,8 @@ clocks is equal to the fixed delay of the PHY (see Figure~\ref{fig:wrCalibration
The repeated pattern of five "0" and five "1" is an example of
\textit{calibration pattern} which is defined by the node requesting calibration.
The calibration pattern used to describe the methods is not compliant with 8b/10b encoding standard.
For the real-life implementation, a 8b/10b compliant pattern is preferable.
\begin{figure}[ht!]
\centering
......@@ -956,7 +965,7 @@ SLAVE & \small The port is synchronizing to the selected master po
\newpage
\section{Flow of events (no exceptions) during WR Link Setup}
\section{Flow of WR Management message exchange between a WR Master and a WR Slave (no exceptions) during WR Link Setup}
\begin{figure}[ht!]
\centering
% \vspace{-1.3cm}
......
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