FlexRay Communication Controller (FLEXRAY)
MPC5510 Microcontroller Family Reference Manual, Rev. 1
30-124
Freescale Semiconductor
Preliminary
NOTE
To ensure, that the read index RDIDX always points to a message buffer that
contains valid data, the receive FIFO must have at least 2 entries.
The FIFO filters are configured through the fifo filter registers.
30.6.9.3
Receive FIFO Reception
The frame reception to the receive FIFO is enabled, if for a certain slots no message buffer is assigned or
subscribed. In this case the FIFO filter path shown in
When the receive FIFO filter path indicates that the received frame must be appended to the FIFO, the
FlexRay block writes the received frame header and slot status into the message buffer header field
indicated by the internal FIFO header write index. The payload data are written in the message buffer data
field. If the status of the received frame indicates a valid frame, the internal FIFO header write index is
updated and the fifo not-empty interrupt flag FNEAIF/FNEBIF in the
Global Interrupt Flag and Enable
is set.
30.6.9.4
Receive FIFO Message Access
If the fifo not-empty interrupt flag FNEAIF/FNEBIF in the
Global Interrupt Flag and Enable Register
is set, the receive FIFO contains valid received messages, which can be accessed by the
application.
The receive FIFO does not require locking to access the message buffers. To access the message the
application first reads the receive FIFO read index RDIDX from the
Receive FIFO A Read Index Register
Receive FIFO B Read Index Register (RFBRIR)
, respectively. This index points to the
message buffer header field of the next message buffer that contains valid data. The application can access
the message data as described in
Section 30.6.3.3, “Receive FIFO”.
When the application has read all
message buffer data and status information, it writes 1 to the fifo not-empty interrupt flags FNEAIF or
FNEBIF. This clears the interrupt flag and updates the RDIDX field in the
Receive FIFO B Read Index Register (RFBRIR)
, respectively.When the RDIDX
value has reached the last message buffer header field that belongs to the fifo, it wraps around to the index
of the first message buffer header field that belongs to the fifo. This value is provided by the SIDX field
in the
Receive FIFO Start Index Register (RFSIR)
30.6.9.5
Receive FIFO filtering
The receive FIFO filtering is activated after all enabled individual receive message buffers have been
searched without success for a message buffer to receive the current frame.
The FlexRay block provides three sets of FIFO filters. The FIFO filters are applied to valid non-null frames
only. The FIFO will not receive invalid or null-frames. For each FIFO filter, the pass criteria is specified
in the related section given below. Only frames that have passed all filters will be appended to the FIFO.
The FIFO filter path is depicted in