40- and 100-Gbps Ethernet MAC and PHY MegaCore Function User Guide

ID 683114
Date 6/15/2022
Public
Document Table of Contents

3.4.1.14. Pause Registers

The pause registers implement the pause functionality defined in the IEEE 802.3ba-2010 High Speed Ethernet Standard. You can program the pause registers to control the insertion and decoding of pause frames, to help reduce traffic in congested networks.

Alternatively, you can use the IP core pause signals.

Table 59.  Pause Registers

Addr

Name

Bit

Description

HW Reset Value

Access

0x110

RECEIVE_PAUSE_STATUS

[16]

When set to 1, indicates that a pause is in progress.

1’b0

RO

[15:0]

The time value for the pause. Reading this field locks the pause source address.

0x140(40GbE)0x01A0 (100GbE)

RO

0x111

RECEIVE_SOURCE_ADDR_LSB

[31:0]

Received pause source address LSB.

0x00000000

RO

0x112

RECEIVE_SOURCE_ADDR_MSB

[31:0]

Received pause source address MSB.

0x00000000

RO

0x113

RECEIVE_PAUSE_CONTROL

[9]

When set to 1, enables unicast pause receive.

1’b0

RW

[8]

When set to 1, enables multicast pause receive.

1’b0

RW

[7:0]

Pause quantum time configuration as follows:

  • 1 pause_quanta = 512 bit times
  • For 40Gbps, 1 pause_quanta is 12.8 ns
  • For 100Gbps, 1 pause_quanta is 5.12 ns
  • pause_quantum_delta = 256 × Tclk / Tpause_quanta

For example: 40 Gbps, clk =315 MHz, Tclk = 3.2ns, pause_quantum_delta = round(256*(3.2/12.8)) = 64.

0x00000000

RW

0x114

INSERT_PAUSE_CONTROL

[16]

When set to 1, sends a multicast pause request. When set to 0, sends a unicast pause request.

1’b0

RW

[15:0]

Specifies the pause time. A non-zero value specifies an XON. Zero specifies XOFF.

0x0000

RW

0x115

TX_PAUSE_DST_ADDR_LSB

[31:0]

Destination address LSB.

0x00000000

RW

0x116

TX_PAUSE_DST_ADDR_MSB

[31:0]

Destination address MSB.

0x00000000

RW

0x117

INSERT_PAUSE

[31:0]

Any write to this address triggers a pause packet insertion into the TX data stream. Other pause registers, described in this table, specify the properties of this pause packet.

0x00000000

W