SLAU723A October 2017 – October 2018 MSP432E401Y , MSP432E411Y
Ethernet MAC Hash Table High (EMACHASHTBLH)
The 64-bit Hash table is used for group address filtering. For hash filtering, the contents of the Destination Address (DA) in the incoming frame is passed through the CRC logic, and the upper 6 bits of the CRC register are used to index the contents of the Hash table. The most significant bit determines the register to be used (Ethernet MAC Hash Table High (EMACHASHTBLH) or Ethernet MAC Hash Table Low (MACHASHTBLL)), and the other five bits determine which bit within the register. A hash value of 5b'00000 selects bit 0 of the selected register, and a value of 5b'11111 selects bit 31 of the selected register.
The hash value of the destination address is calculated in the following way:
1. Calculate the 32-bit CRC for the DA (See IEEE 802.3, Section 3.2.8 for the steps to calculate CRC32).
2. Perform bit-wise reversal for the value obtained in Step 1.
3. Take the upper 6 bits from the value obtained in Step 2.
For example, if the DA of the incoming frame is received as 0x1F52419CB6AF, then the internally calculated 6-bit Hash value is 0x2C and Bit 12 of EMACHASHTBLH register is checked for filtering. If the DA of the incoming frame is received as 0xA00A98000045, then the calculated 6-bit Hash value is 0x07 and Bit 7 of Hash Table Low register is checked for filtering.
If the corresponding bit value of the register is 0x1, the frame is accepted. Otherwise, it is rejected. If the PM (Pass All Multicast) bit is set in the Ethernet MAC Frame Filter (EMACFRAMEFLTR) register, then all multicast frames are accepted regardless of the multicast hash values.
EMACHASHTBLH is shown in Figure 15-18 and described in Table 15-27.
Return to Summary Table.
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
HTH | |||||||||||||||||||||||||||||||
R/W-0x0 | |||||||||||||||||||||||||||||||