Remote device congestion, Receive fifo buffer and local device congestion, Magic packets – Altera Triple Speed Ethernet MegaCore Function User Manual

Page 53: Magic packets -17

Advertising
background image

Remote Device Congestion

When the MAC function receives an XOFF pause frame and the

PAUSE_IGNORE

bit in the

command_config

register is set to 0, the MAC function completes the transfer of the current frame and stops transmission for
the amount of time specified by the pause quanta in 512 bit times increments. Transmission resumes when
the timer expires or when the MAC function receives an XON frame.

You can configure the MAC function to ignore pause frames by setting the

PAUSE_IGNORE

bit in the

command_config

register is set to 1.

Receive FIFO Buffer and Local Device Congestion

Pause frames generated are compliant to the IEEE Standard 802.3 annex 31A & B. The MAC function
generates pause frames when the level of the receive FIFO buffer hits a level that can potentially cause an
overflow, or at the request of the user application. The user application can trigger the generation of an
XOFF pause frame by setting the

XOFF_GEN

bit in the

command_config

register to 1 or asserting the

xoff_gen

signal.

For MAC variations with internal FIFO buffers, the MAC function generates an XOFF pause frame when
the level of the FIFO buffer reaches the section-empty threshold (

rx_section_empty

). If transmission is in

progress, the MAC function waits for the transmission to complete before generating the pause frame. The
fill level of an external FIFO buffer is obtained via the Avalon-ST receive FIFO status interface.

When generating a pause frame, the MAC function fills the pause quanta bytes P1 and P2 with the value
configured in the

pause_quant

register. The source address is set to the primary MAC address configured

in the

mac_0

and

mac_1

registers, and the destination address is set to a fixed multicast address, 01-80-C2-

00-00-01 (0x010000c28001).

The MAC function automatically generates an XON pause frame when the FIFO buffer section-empty flag
is deasserted and the current frame transmission is completed. The user application can trigger the generation
of an XON pause frame by clearing the

XOFF_GEN

bit and signal, and subsequently setting the

XON_GEN

bit

to 1 or asserting the

XON_GEN

signal.

When generating an XON pause frame, the MAC function fills the pause quanta (payload bytes P1 and P2)
with 0x0000 (zero quanta). The source address is set to the primary MAC address configured in the

mac_0

and

mac_1

registers and the destination address is set to a fixed multicast address, 01-80-C2-00-00-01

(0x010000c28001).

In addition to the flow control mechanism, the MAC function prevents an overflow by truncating excess
frames. The status bit,

rx_err[3]

, is set to 1 to indicate such errors. The user application should subsequently

discard these frames by setting the

RX_ERR_DISC

bit in the

command_config

register to 1.

Magic Packets

A magic packet can be a unicast, multicast, or broadcast packet which carries a defined sequence in the
payload section. Magic packets are received and acted upon only under specific conditions, typically in
power-down mode.

The defined sequence is a stream of six consecutive 0xFF bytes followed by a sequence of 16 consecutive
unicast MAC addresses. The unicast address is the address of the node to be awakened.

The sequence can be located anywhere in the magic packet payload and the magic packet is formed with a
standard Ethernet header, optional padding and CRC.

Altera Corporation

Functional Description

Send Feedback

4-17

Remote Device Congestion

UG-01008
2014.06.30

Advertising