65
I/O SPACE - BANK 3
OFFSET NAME TYPE SYMBOL
0 THROUGH 7 MULTICAST TABLE READ/WRITE MT
LOW
BYTE MULTICAST TABLE 0
00000000
HIGH
BYTE MULTICAST TABLE 1
00000000
LOW
BYTE MULTICAST TABLE 2
00000000
HIGH
BYTE MULTICAST TABLE 3
00000000
LOW
BYTE MULTICAST TABLE 4
00000000
HIGH
BYTE MULTICAST TABLE 5
00000000
LOW
BYTE MULTICAST TABLE 6
00000000
HIGH
BYTE MULTICAST TABLE 7
00000000
The 64 bit multicast table is used for group address
filtering. The hash value is defined as the six most
significant bits of the CRC of the destination
addresses. The three msb's determine the register
to be used (MT0-MT7), while the other three
determine the bit within the register. If the
appropriate bit in the table is set, the packet is
received. If the ALMUL bit in the RCR register is
set, all multicast addresses are received
regardless of the multicast table values.
Hashing is only a partial group addressing filtering
scheme, but being the hash value available as part
of the receive status word, the receive routine can
reduce the search time significantly. With the
proper memory structure, the search is limited to
comparing only the multicast addresses that have
the actual hash value in question.