English
Language : 

SAM7X256_14 Datasheet, PDF (543/662 Pages) ATMEL Corporation – ARM-based Flash MCU
hash_index[5] = da[5] ^ da[11] ^ da[17] ^ da[23] ^ da[29] ^ da[35] ^ da[41] ^ da[47]
hash_index[4] = da[4] ^ da[10] ^ da[16] ^ da[22] ^ da[28] ^ da[34] ^ da[40] ^ da[46]
hash_index[3] = da[3] ^ da[09] ^ da[15] ^ da[21] ^ da[27] ^ da[33] ^ da[39] ^ da[45]
hash_index[2] = da[2] ^ da[08] ^ da[14] ^ da[20] ^ da[26] ^ da[32] ^ da[38] ^ da[44]
hash_index[1] = da[1] ^ da[07] ^ da[13] ^ da[19] ^ da[25] ^ da[31] ^ da[37] ^ da[43]
hash_index[0] = da[0] ^ da[06] ^ da[12] ^ da[18] ^ da[24] ^ da[30] ^ da[36] ^ da[42]
da[0] represents the least significant bit of the first byte received, that is, the multicast/unicast indicator, and da[47]
represents the most significant bit of the last byte received.
If the hash index points to a bit that is set in the hash register, then the frame is matched according to whether the frame
is multicast or unicast.
A multicast match is signalled if the multicast hash enable bit is set. da[0] is 1 and the hash index points to a bit set in the
hash register.
A unicast match is signalled if the unicast hash enable bit is set. da[0] is 0 and the hash index points to a bit set in the
hash register.
To receive all multicast frames, the hash register should be set with all ones and the multicast hash enable bit should be
set in the network configuration register.
37.3.8 Copy All Frames (or Promiscuous Mode)
If the copy all frames bit is set in the network configuration register, then all non-errored frames are copied to memory.
For example, frames that are too long, too short, or have FCS errors or rx_er asserted during reception are discarded
and all others are received. Frames with FCS errors are copied to memory if bit 19 in the network configuration register is
set.
37.3.9 Type ID Checking
The contents of the type_id register are compared against the length/type ID of received frames (i.e., bytes 13 and 14).
Bit 22 in the receive buffer descriptor status is set if there is a match. The reset state of this register is zero which is
unlikely to match the length/type ID of any valid Ethernet frame.
Note: A type ID match does not affect whether a frame is copied to memory.
37.3.10 VLAN Support
An Ethernet encoded 802.1Q VLAN tag looks like this:
Table 37-4. 802.1Q VLAN Tag
TPID (Tag Protocol Identifier) 16 bits
0x8100
TCI (Tag Control Information) 16 bits
First 3 bits priority, then CFI bit, last 12 bits VID
The VLAN tag is inserted at the 13th byte of the frame, adding an extra four bytes to the frame. If the VID (VLAN identifier)
is null (0x000), this indicates a priority-tagged frame. The MAC can support frame lengths up to 1536 bytes, 18 bytes
more than the original Ethernet maximum frame length of 1518 bytes. This is achieved by setting bit 8 in the network
configuration register.
The following bits in the receive buffer descriptor status word give information about VLAN tagged frames:
 Bit 21 set if receive frame is VLAN tagged (i.e. type id of 0x8100)
 Bit 20 set if receive frame is priority tagged (i.e. type id of 0x8100 and null VID). (If bit 20 is set bit 21 is set also.)
 Bit 19, 18 and 17 set to priority if bit 21 is set
 Bit 16 set to CFI if bit 21 is set
SAM7X Series [DATASHEET]
6120K–ATARM–11-Feb-14
543