RM0016 Controller area network (beCAN)
Doc ID 14587 Rev 8 377/449
Filter priority rules
Depending on the filter combination it may occur that an identifier passes successfully
through several filters. In this case the filter match value stored in the receive mailbox is
chosen according to the following rules:
– A 32-bit filter takes priority over 16-bit filter which takes itself priority over 8-bit
filter.
– For filters of equal scale, priority is given to the identifier List mode over the
identifier Mask mode.
– For filters of equal scale and mode, priority is given by the filter number (the lower
the number, the higher the priority).
Figure 151. Filter banks configured as in the example in Table 64.
The example above shows the filtering principle of the beCAN. On reception of a message,
the identifier is compared first with the filters configured in identifier list mode. If there is a
match, the message is stored in the FIFO and the index of the matching filter is stored in the
Filter Match Index. As shown in the example, the identifier matches with Identifier #4 thus
the message content and FMI 4 is stored in the FIFO.
If there is no match, the incoming identifier is then compared with the filters configured in
mask mode.
If the identifier does not match any of the identifiers configured in the filters, the message is
discarded by hardware without disturbing the software.
Identifier List
Message Discarded
Identifier & Mask
Identifier
0
Identifier
1
Identifier
3
Identifier
2
Mask
Identifier
17
Mask
Identifier
Message Received
Ctrl
Data
Identifier #4 Match
Message
Stored
Receive FIFO
No Match
Found
Filter number stored
in the Filter Match
Index field within the
CAN_MFMIR register
FMI
Filter bank
0
2
1
5
Num
Identifier
4
Identifier
5
Identifier
6
Identifier
15
Mask
Identifier
16
Mask