Rx datapath, Xgmii decapsulation, Crc checking – Altera Low Latency Ethernet 10G MAC User Manual

Page 35: Rx datapath -13, Xgmii decapsulation -13, Crc checking -13

Advertising
background image

RX Datapath

The MAC RX receives Ethernet frames from the XGMII and forwards the payload with relevant frame

fields to the client after performing checks and filtering invalid frames. Some frame fields are optionally

removed from the frame before MAC RX forwards the frame to the client.
The following figure shows the typical flow of frame through the MAC RX.

Figure 3-14: Typical Client Frame at Receive Interface

Client - MAC Rx Interface

(optional)

Client Frame

Destination
Addr[47:0]

Source

Addr[47:0]

Type/

Length[15:0]

Payload

[<p-1>:0]

Destination
Addr[47:0]

CRC32

[31:0]

PAD [<s>]

Source

Addr[47:0]

Client-Defined Preamble

[55:0]

(optional)

Type/

Length[15:0]

Payload

[<p-1>:0]

PAD [<s>]

CRC32

[31:0]

EFD[7:0]

Start[7:0]

Frame Length

(1)

(2)

MAC Frame

SFD[7:0]

Preamble

[47:0]

Start[7:0]

XGMII Decapsulation

The MAC RX expects the first byte of receive packets to be in lane 0,

xgmii_rx_data[7:0]

. If the 32-

bit/64-bit adapter on the XGMII is present, the first byte of receive packets must be in lane 0 or lane 4,

xgmii_rx_data[39:32]

. Receive packets must also be preceded by a column of idle bytes or an ordered

set such as a local fault. Packets that do not satisfy these conditions are invalid and the MAC RX drops

them.
By default, the MAC RX only accepts packets that begin with a 1-byte START, 6-byte preamble, and 1-

byte SFD. Packets that do not satisfy this condition are invalid and the MAC RX drops them.
When you enable the preamble passthrough mode (

rx_preamble_control

register = 1), the MAC RX

only checks packets that begin with a 1-byte START. In this mode, the MAC RX does not remove the

START and custom preamble, but passes the bytes along with the frame to the client.
After examining the packet header bytes in the correct order, the MAC IP retrieves the frame data from

the packet. If the frame data starting from the destination address field is less than 17 bytes, the MAC IP

may or may not drop the frame. If the erroneous frame is not dropped but forwarded, an undersized error

will be flagged to the external logic to drop the frame. If the frame is more than 17 bytes, the MAC

forwards the frame as normal and flags error whenever applicable.

CRC Checking

The MAC RX computes the CRC-32 checksum over frame bytes received and compares the computed

value against the CRC field in the receive frame. If the values do not match, the MAC RX marks the frame

invalid by setting

avalon_st_rx_error[1]

to 1 and forwards the receive frame to the client. When the

CRC error indicator is asserted, the external logic is expected to drop the frame bytes.

UG-01144

2014.12.15

RX Datapath

3-13

Functional Description of LL Ethernet 10G MAC

Altera Corporation

Send Feedback

Advertising