
CAN modules
UM0404
DocID13284 Rev 2
Apart from noise spikes, most synchronizations are caused by arbitration. All nodes
synchronize “hard” on the edge transmitted by the “leading” transceiver that started
transmitting first, but due to propagation delay times, they cannot become ideally
synchronized. The “leading” transmitter does not necessarily win the arbitration, therefore
the receivers have to synchronize themselves to different transmitters that subsequently
“take the lead” and that are differently synchronized to the previously “leading” transmitter.
The same happens at the acknowledge field, where the transmitter and some of the
receivers will have to synchronize to that receiver that “takes the lead” in the transmission of
the dominant acknowledge bit.
Synchronizations after the end of the arbitration will be caused by oscillator tolerance, when
the differences in the oscillator’s clock periods of transmitter and receivers sum up during
the time between synchronizations (at most ten bits). These summarized differences may
not be longer than the SJW, limiting the oscillator’s (or PLL) tolerance range.
show how the Phase Buffer Segments are used to compensate
for phase errors. There are three drawings of each two consecutive bit timings. The upper
drawing shows the synchronization on a “late” edge, the lower drawing shows the
synchronization on an “early” edge, and the middle drawing is the reference without
synchronization.
Figure 184. Synchronization on “late” and “early” edges
In the first example an edge from recessive to dominant occurs at the end of Prop_Seg. The
edge is “late” since it occurs after the Sync_Seg. Reacting to the “late” edge, Phase_Seg1 is
lengthened so that the distance from the edge to the Sample Point is the same as it would
have been from the Sync_Seg to the Sample Point if no edge had occurred. The phase
error of this “late” edge is less than SJW, so it is fully compensated and the edge from
dominant to recessive at the end of the bit, which is one nominal bit time long, occurs in the
Sync_Seg.
In the second example an edge from recessive to dominant occurs during Phase_Seg2.
The edge is “early” since it occurs before a Sync_Seg. Reacting to the “early” edge,
Phase_Seg2 is shortened and Sync_Seg is omitted, so that the distance from the edge to
the Sample Point is the same as it would have been from a Sync_Seg to the Sample Point if
recessive
dominant
recessive
dominant
Sync_Seg
Prop_Seg
Phase_Seg1
Phase_Seg2
“late” Edge
“early” Edge
Rx-Input
Rx-Input
Sample-Point
Sample-Point
Sample-Point
Sample-Point
Sample-Point
Sample-Point