15.3.5.3 MAC Receive Module
A receive operation is initiated when the MAC detects start-of-frame data (SFD). The MAC strips the preamble and SFD before proceeding to process the frame. The header fields are checked for the filtering and the FCS field is used to verify the CRC for the frame. The received frame is stored in a buffer until the address filtering is performed. The frame is dropped in the MAC if it fails the address filter.
Some of the functions of the MAC receive module are as follows:
- Stripping the preamble, SFD and carrier extension of the Ethernet frame
- Providing IEEE 1588 timestamping whenever an SFD is detected
- Converting receive nibble data into bytes in MII mode
- Decoding Length/Type field of the Ethernet frame
- Auto-CRC/pad stripping if enabled in the EMACCFG register
- Frame data and status buffering for received frames
- Data path conversion of 8-bit data to 32-bit data
- Frame filtering
- Attaching calculated IP checksum input to frame
- Detecting receiving pause frames and pausing the frame transmission for the delay specified withing the received pause frame
- Receive IP Checksum Verification
- Performing destination and source address checking functions on all received frames and reporting the address filtering status to the receive frame controller module.