Civil Engineering Reference
In-Depth Information
need to be determined. These consist of the delay on the CAN bus line (typically
5 ns/m), the transit times through the node's transceivers and, for example, in in-
dustrial applications, through additional optocouplers for galvanic isolation. The
determined signal propagation delay gives an upper limit for the possible bit rate,
since the CAN bit time (reciprocal of the bit rate) must be significantly longer than
twice this value.
Then, based the desired bit rate and the available system clock frequency fsys,
BRP values are selected, that can produce the desired bit time from an integer num-
ber (in the range of [5…25]) of tq, with tq = BRP /fsys. The length of Prop_Seg
needs to be twice the signal propagation delay, rounded up to the next integer mul-
tiple of tq. Hence, the BRP value must allow Prop_Seg to be in the range of [1…8]
(if needbe, in the range of [1…15] when Prop_Seg and Phase_Seg1 are combined
in TSEG1 ).
The desired bit time must be at least 3 tq longer than the time required for Prop_
Seg . Sync_Seg is always 1 tq long; the rest is left for the two Phase Buffer Segments .
Phase_Seg1 and Phase_Seg2 should have the same length, but if the subtraction
(bit time - [ Sync_Seg + Prop_Seg ]) results in an odd number of tq, Phase_Seg2 is
set longer: Phase_Seg2 = Phase_Seg1 + 1. In order to optimize the oscillator toler-
ance, SJW needs to be set to the highest possible value, but not longer than one
Phase Buffer Segment . The oscillator tolerance is mainly determined by the relation
between the length of the Phase Buffer Segments and the length of the bit time.
The combination of Prop_Seg = 1 and Phase_Seg1 = Phase_Seg2 = SJW = 4
yields has an oscillator tolerance of 1.58 %, the largest value possible in the CAN
protocol. This combination, with a Propagation Time Segment of only 10 % of the
bit time, is not suitable for short bit times; at a 40-m bus length, it can be used for
bit rates up to 125 kbit/s (with a bit time of at least 8 µs).
The bit timing concept of the CAN protocol has sufficient reserves, so that small
deviations from the nominal values (temperature changes or aging of the compo-
nents may cause, e.g. drift of the oscillators or longer signal delays) do not directly
cause disturbances in the communication; but the deviations may make the network
less resilient with regard to external sources of error (e.g. EMI). If a bit is disturbed
at its Sample Point , the faulty bit is intercepted by higher protocol layers (CRC
code, bit-stuffing, etc.) and the message is invalidated.
1.2.7
Characteristics of CAN Controllers
In principle, there are three types of CAN controllers: “Full CAN”, “Basic CAN”
and serial linked input/output (SLIO). CAN controllers are internally partitioned in
CAN protocol controller and CAN message handler. While the function of the CAN
protocol controller is defined by the CAN specification, the function of the CAN
message handler is application specific. Different concepts have been developed for
the CAN message handling.
Search WWH ::




Custom Search