R

Chapter 10: Auto-Negotiation

Setting the Configurable Link Timer

The optional Auto-Negotiation function has a Link Timer (link_timer[8:0]) port. This port sets the period of the Auto-Negotiation Link Timer. This port should be permanently tied to a logical binary value, and a binary value should be placed on this port. The duration of the timer is approximately equal to the binary value multiplied by 32.768 microseconds (4,96 clock periods of the 125 MHz clock provided to the core). See “Auto- Negotiation Signal Pinout” in Chapter 2.

Note: See Chapter 11, “Dynamic Switching of 1000BASE-X and SGMII Standards” for details of programming the Auto-Negotiation Link Timer when performing dynamic switching between 1000BASE-X and SGMI Standards.

The accuracy of this Link Timer is within the following range.

+0 to -32.768 microseconds

1000BASE-X Standard

The Link-Timer is defined as having a duration somewhere between 10 and 20 milliseconds. The example design delivered with the core sets the binary value as follows:

100111101 = 317 decimal

This corresponds to a duration of between 10.354 and 10.387 milliseconds.

SGMII Standard

The Link-Timer is defined as having a duration of 1.6 milliseconds. The example design delivered with the core sets the binary value to

000110010 = 50 decimal

This corresponds to a duration of between 1.606 and 1.638 milliseconds.

Simulating Auto-Negotiation

Auto-Negotiation requires a minimum of three link timer periods for completion. If simulating the Auto-Negotiation procedure, setting the link_timer[8:0] port to a low value will greatly reduce the simulation time required to complete Auto-Negotiation.

Using the Auto-Negotiation Interrupt

The Auto-Negotiation function has an an_interrupt port. This is designed to be used with common micro-processor bus architectures (for example, the CoreConnect bus interfacing to MicroBlaze or the Virtex-II Pro embedded IBM PowerPC). For more information, see “Auto-Negotiation Signal Pinout” in Chapter 2.

The operation of this port is enabled or disabled and cleared via the MDIO Register 16, the Vendor-specific Auto-Negotiation Interrupt Control Register.

When disabled, this port is permanently tied to logic 0.

When enabled, this port will be set to logic 1 following the completion of an Auto- Negotiation cycle. It will remain high until it is cleared by writing 0 to bit 16.1 (Interrupt Status bit) of the “MDIO Register 16: Vendor Specific Auto-Negotiation Interrupt Control,” page 129.

156

www.xilinx.com

Ethernet 1000BASE-X PCS/PMA or SGMII v9.1

 

 

UG155 March 24, 2008

Page 156
Image 156
Xilinx manual Setting the Configurable Link Timer, Using the Auto-Negotiation Interrupt, 1000BASE-X Standard