User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 503
UG585 (v1.11) September 27, 2016
Chapter 16: Gigabit Ethernet Controller
with its timestamp (for both transmit and receive), and make it available to software, for example via
FIFOs or via circular buffers in main memory. Such a function can be implemented in the PL along
with the timestamp unit as described above.
However, implementation requires access to the packet data stream itself. In order to have access to
the packet data stream, the controller needs to be pinned-out through the EMIO using GMII, instead
of MIO. By selecting this option, the GMII signals are exposed to the PL and can be used to detect
and capture the PTP packets. Note that it is still possible to use the PTP frame recognition in the
MAC, or it is possible to design this function in the PL as well (e.g., if support for unicast packets is
required).
16.2.8 MAC 802.3 Pause Frame Support
Note: See Clause 31, and Annex 31A and 31B of the IEEE standard 802.3 for a full description of
pause operation.
The start of an 802.3 pause frame is shown in Table 16-4
The controller supports both hardware controlled pause of the transmitter upon reception of a pause
frame and hardware generated pause frame transmission.
802.3 Pause Frame Reception
Bit [13] of the Network Configuration register is the pause enable control for reception. If this bit is
set transmission pauses if a non zero pause quantum frame is received.
If a valid pause frame is received then the pause time register is updated with the new frame's pause
time regardless of whether a previous pause frame is active or not. An interrupt (either bit [12] or bit
[13] of the Interrupt Status register) is triggered when a pause frame is received, but only if the
interrupt has been enabled (bit [12] and bit [13] of the Interrupt Mask register). Pause frames
received with non zero quantum are indicated through the interrupt bit [12] of the Interrupt Status
register. Pause frames received with zero quantum are indicated on bit [13] of the Interrupt Status
register.
When the pause time register is loaded and the frame currently being transmitted has been sent, no
new frames are transmitted until the pause time reaches zero. The loading of a new pause time, and
hence the pausing of transmission, only occurs when the controller is configured for full duplex
operation. If the controller is configured for half duplex there is no transmission pause, but the pause
frame received interrupt is still triggered. A valid pause frame is defined as having a destination
address that matches either the address stored in Specific Address register 1 or if it matches the
reserved address of 0x0180C2000001. It must also have the MAC control frame type ID of 0x8808
and have the pause opcode of 0x0001.
Table 16-4: Pause Frame Information
Destination Address Source Address
Type
(MAC Control Frame)
Pause Opcode Pause Time
0x0180C2000001
6 bytes
0x8808 0x0001
2 bytes