ST STM32F101xx Reference Manual page 1006

Advanced arm-based 32-bit mcus
Hide thumbs Also See for STM32F101xx:
Table of Contents

Advertisement

Ethernet (ETH): media access control (MAC) with DMA controller
Bit 4 PAM: Pass all multicast
When set, this bit indicates that all received frames with a multicast destination address (first
bit in the destination address field is '1') are passed.
When reset, filtering of multicast frame depends on the HM bit.
Bit 3 DAIF: Destination address inverse filtering
When this bit is set, the address check block operates in inverse filtering mode for the DA
address comparison for both unicast and multicast frames.
When reset, normal filtering of frames is performed.
Bit 2 HM: Hash multicast
When set, MAC performs destination address filtering of received multicast frames according
to the hash table.
When reset, the MAC performs a perfect destination address filtering for multicast frames, that
is, it compares the DA field with the values programmed in DA registers.
Bit 1 HU: Hash unicast
When set, MAC performs destination address filtering of unicast frames according to the hash
table.
When reset, the MAC performs a perfect destination address filtering for unicast frames, that
is, it compares the DA field with the values programmed in DA registers.
Bit 0 PM: Promiscuous mode
When this bit is set, the address filters pass all incoming frames regardless of their destination
or source address. The SA/DA filter fails status bits in the receive status word are always
cleared when PM is set.
Ethernet MAC hash table high register (ETH_MACHTHR)
Address offset: 0x0008
Reset value: 0x0000 0000
The 64-bit Hash table is used for group address filtering. For hash filtering, the contents of
the destination address in the incoming frame are passed through the CRC logic, and the
upper 6 bits in the CRC register are used to index the contents of the Hash table. This CRC
is a 32-bit value coded by the following polynomial (for more details refer to
MAC frame
The most significant bit determines the register to be used (hash table high/hash table low),
and the other 5 bits determine which bit within the register. A hash value of 0b0 0000 selects
bit 0 in the selected register, and a value of 0b1 1111 selects bit 31 in the selected register.
For example, if the DA of the incoming frame is received as 0x1F52 419C B6AF (0x1F is the
first byte received on the MII interface), then the internally calculated 6-bit Hash value is
0x2C and the HTH register bit[12] is checked for filtering. If the DA of the incoming frame is
received as 0xA00A 9800 0045, then the calculated 6-bit Hash value is 0x07 and the HTL
register bit[7] is checked for filtering.
If the corresponding bit value in the register is 1, the frame is accepted. Otherwise, it is
rejected. If the PAM (pass all multicast) bit is set in the ETH_MACFFR register, then all
multicast frames are accepted regardless of the multicast hash values.
1006/1096
reception):
32
26
23
G x ( )
=
x
+
x
+
x
+
Doc ID 13902 Rev 12
22
16
12
11
10
x
+
x
+
x
+
x
+
x
Section 29.5.3:
8
7
5
4
2
+
x
+
x
+
x
+
x
+
x
+ +
RM0008
x
1

Advertisement

Table of Contents
loading

This manual is also suitable for:

Stm32f102xxStm32f103xxStm32f105xxStm32f107xx

Table of Contents