Frame type validation – Altera Triple Speed Ethernet MegaCore Function User Manual
Page 45
Value
Hash Code Bit
xor
multicast MAC address bits 47:40
5
Table 4-2: Hash Code Generation—Lower 24 Bits of Destination Address
Algorithm for generating the 6-bit code from the lower 24 bits of the destination address.
Value
Hash Code Bit
xor
multicast MAC address bits 3:0
0
xor
multicast MAC address bits 7:4
1
xor
multicast MAC address bits 11:8
2
xor
multicast MAC address bits 15:12
3
xor
multicast MAC address bits 19:16
4
xor
multicast MAC address bits 23:20
5
The MAC function checks each multicast address received against the hash table, which serves as a fast
matching engine, and a match is returned within one clock cycle. If there is no match, the MAC function
discards the frame.
All multicast frames are accepted if all entries in the hash table are one.
Frame Type Validation
The MAC function checks the length/type field to determine the frame type:
• Length/type < 0x600—the field represents the payload length of a basic Ethernet frame. The MAC function
continues to check the frame and payload lengths.
• Length/type >= 0x600—the field represents the frame type.
• Length/type = 0x8100—VLAN or stacked VLAN tagged frames. The MAC function continues to
check the frame and payload lengths, and asserts the following signals:
• for VLAN frames,
rx_err_stat[16]
in MAC variations with internal FIFO buffers or
pkt_class_data[1]
in MAC variations without internal FIFO buffers
• for stacked VLAN frames,
rx_err_stat
[17] in MAC variations with internal FIFO buffers or
pkt_class_data[0]
in MAC variations without internal FIFO buffers.
• Length/type = 0x8088—control frames. The next two bytes, the Opcode field, indicate the type of
control frame.
• For pause frames (Opcode = 0x0001), the MAC function continues to check the frame and payload
lengths. For valid pause frames, the MAC function proceeds with pause frame processing. The
MAC function forwards pause frames to the user application only when the
PAUSE_FWD
bit in the
command_config
register is set to 1.
• For other types of control frames, the MAC function accepts the frames and forwards them to the
user application only when the
CNTL_FRM_ENA
bit in the
command_config
register is set to 1.
• For other field values, the MAC function forwards the receive frame to the user application.
Related Information
on page 4-17
Altera Corporation
Functional Description
4-9
Frame Type Validation
UG-01008
2014.06.30