Address Filtering and Broadcast Filtering at RX

The Triple Speed Ethernet MAC core supports unicast, multicast, and broadcast filtering on incoming RX Ethernet frames.
  • Unicast/ Multicast Filtering
    • Configure the mac_addr_mask register to apply bit-wise filtering.
      • Bit = 1: Corresponding address bit is compared
      • Bit = 0: Corresponding address bit is ignored.
See Table 1 for examples.

Note: Address filtering can be completely disabled by setting the promis_en bit to 1.
  • Broadcast Filtering
    • When broadcast_filter_en is set, all RX frames with Destination Address = 48’hFFFF_FFFF_FFFF are dropped.

The default value of this control register can be configured in the IP Configuration window under broadcast filtering.

Table 1. Examples of Unicast, Multicast, and Broadcast Filtering Operation
broadcast_
filter_en
mac_address_
mask
mac_addr Destination Address1 Filtered and Dropped / Output at RX AXI ST Application
Unicast
Don’t Care 48’hFFFF_
FFFF_FFFF
48’hAE3A_
2020_0080
48’hAE3A_
2020_0080
Output at RX AXI ST Unicast
Don’t Care 48’hFFFF_
FFFF_FFFF
48’hAE3A_
2020_0080
48’h3E3F_
7A20_0080
Filtered & Dropped Unicast
Multicast
Don’t Care 48’hFFFF_
FFFF_FFFF
48’h0100_
5E0A_0B0C
48’h0100_
5E0A_0B0D
Filtered & Dropped Multicast
Don’t Care 48’hFFFF_
FFFF_FFFF
48’h0100_
5E0A_0B0C
48’hAE3A_
2020_0080
Filtered & Dropped Multicast
Don’t Care 48’hFFFF_
FFFF_FFFF
48’h0100_
5E0A_0B0C
48’h0100_
5E0A_0B0C
Output at RX AXI ST Multicast
Don’t Care 48’hFFFF_
FF00_0000
48’h3333_
ABCD_0000
48’h3333_
ABCD_1234
Output at RX AXI ST Multicast
Broadcast
1 Don’t Care Don’t Care 48’hFFFF_
FFFF_FFFF
Filtered & Dropped Broadcast
0 Don’t Care Don’t Care 48’hFFFF_
FFFF_FFFF
Output at RX AXI ST
Address Filtering Is Not Enabled
0 48’h0000_
0000_0000
48’hAE3A_
2020_0080
48’hAE3A_
2020_0080
Output at RX AXI ST
When address filtering or broadcast filtering is enabled, any received frame with a mismatched destination address is subject to being filtered. The exact handling of these filtered frames depends on the crc_fwd control bit.
  • When crc_fwd = 0: Filtered RX frames are silently dropped and will not appear on the RX AXI Stream interface, as shown in Figure 1.
  • When crc_fwd = 1: Filtered RX frames are forwarded but marked as invalid. The frame data is still presented on the RX AXI Stream interface, but it is terminated with the rx_axis_mac_tuser signal asserted, as shown in Figure 2.

Regardless of the crc_fwd settings, you can monitor the aRxFilterFramesErrors statistic counter to track the total number of frames that have been filtered due to address mismatches.

Figure 1. Silent Drop of Filtered RX Frame when crc_fwd = 0
Figure 2. Filtered RX Frame when crc_fwd = 1
1 Destination address of the incoming RX Ethernet frame.