Module Operation
1236
SPNU563A – March 2018
Copyright © 2018, Texas Instruments Incorporated
FlexRay Module
In WAKEUP_SEND state the communication controller transmits the wakeup pattern on the configured
channel and checks for collisions. After return from wakeup the host has to bring the communication
controller into STARTUP state by CHI command RUN.
In WAKEUP_DETECT state the communication controller attempts to identify the reason for the wakeup
collision detected in WAKEUP_SEND state. The monitoring is bounded by the expiration of listen timeout
as configured by SUCC2.LT(20-0) in the SUC configuration register 2. Either the detection of a wakeup
pattern indicating a wakeup attempt by another node or the reception of a frame header indication existing
communication, causes the direct transition to READY state. Otherwise WAKEUP_DETECT is left after
expiration of listen timeout; in this case the reason for wakeup collision is unknown.
The host has to be aware of possible failures of the wakeup and act accordingly. It is advisable to delay
any potential startup attempt of the node having instigated the wakeup by the minimal time it takes
another coldstart node to become awake and to be configured.
The FlexRay Protocol Specification recommends that two different communication controllers shall wake
the two channels.
26.2.6.6.1 Host Activities
The host must coordinate the wakeup of the two channels and must decide whether, or not, to wake a
specific channel. The sending of the wakeup pattern is initiated by the host. The wakeup pattern is
detected by the remote BDs and signaled to their local hosts.
Wakeup procedure controlled by host (single-channel wakeup):
•
Configure the communication controller in CONFIG state
–
Select wakeup channel by programming bit SUCC1.WUCS
•
Check local BDs whether a WUP was received
•
Activate BD of selected wakeup channel
•
Command communication controller to enter READY state
•
Command communication controller to start wakeup on the configured channel by writing
SUCC1.CMD(3-0) = 0011
–
communication controller enters WAKEUP_LISTEN
–
communication controller returns to READY state and signals status of wakeup attempt to host
•
Wait predefined time to allow the other nodes to wakeup and configure themselves
•
Coldstart node:
–
in dual channel cluster wait for WUP on the other channel
–
Reset Coldstart Inhibit flag CCSV.CSI by writing SUCC1.CMD(3-0) = 1001 (ALLOW_COLDSTART
command)
•
Command communication controller to enter startup by writing SUCC1.CMD(3-0) = 0100 (RUN
command)
Wakeup procedure triggered by the bus driver:
•
Wakeup recognized by bus driver
•
bus driver triggers power-up of host (if required)
•
bus driver signals wakeup event to host
•
Host configures its local communication controller
•
If necessary host commands wakeup of second channel and waits predefined time to allow the other
nodes to wakeup and configure themselves
•
Host commands communication controller to enter STARTUP state by writing SUCC1.CMD(3-0) =
0100 (RUN command)