Problems with auto-negotiation – Xilinx 1000BASE-X User Manual

Page 228

Advertising
background image

228

www.xilinx.com

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

UG155 March 24, 2008

Appendix F: Debugging Guide

R

If data is being transmitted and received between the core and its link partner, but with a
high rate of packet loss, see

“Problems with a High Bit Error Rate.”

Problems with Auto-Negotiation

Determine whether Auto-Negotiation has completed successfully by doing one of the
following.

Poll the Auto-Negotiation completion bit 1.5 in

“Status Register (Register 1)”

Use the Auto-Negotiation interrupt port of the core (see

“Using the Auto-Negotiation

Interrupt,” page 156

)

If Auto-Negotiation is not completing:

1.

Ensure that Auto-Negotiation is enabled in both the core and in the link partner (the
device or test equipment connected to the core). Auto-Negotiation cannot complete
successfully unless both devices are configured to perform Auto-Negotiation.

The Auto-Negotiation procedure requires that the Auto-Negotiation handshaking
protocol between the core and its link partner, which lasts for several link timer
periods, occur without a bit error. A detected bit error will cause Auto-Negotiation to
go back to the beginning and restart. Therefore, a link with an exceptionally high bit
error rate may not be capable of completing Auto-Negotiation, or may lead to a long
Auto-Negotiation period caused by the numerous Auto-Negotiation restarts. If this
appears to be the case, try the next step and see

“Problems with a High Bit Error Rate.”

2.

Try disabling Auto-Negotiation in both the core and the link partner and see if both
devices report a valid link and are able to pass traffic. If they do, it proves that the core
and link partner are otherwise configured correctly. If they do not pass traffic, see the
next section,

“Problems in Obtaining a Link (Auto-Negotiation Disabled).”

Problems in Obtaining a Link (Auto-Negotiation Disabled)

Determine whether the device has successfully obtained a link with its link partner by
doing the following:

Reading bit 1.2, Link Status, in

“Status Register (Register 1)”

when using the optional

MDIO management interface (or look at status_vector[1]).

Monitoring the state of sync_acquired_status. If this is logic ‘1,’ then
synchronization, and therefore a link, has been established.

If the devices have failed to form a link then do the following:

Ensure that Auto-Negotiation is disabled in both the core and in the link partner (the
device or test equipment connected to the core).

Monitor the state of the signal_detect signal input to the core. This should either
be:

connected to an optical module to detect the presence of light. Logic ‘1’ indicates
that the optical module is correctly detecting light; logic ‘0’ indicates a fault.
Therefore, ensure that this is driven with the correct polarity.

Signal must be tied to logic ‘1’ (if not connected to an optical module).

Note:

When signal_detect is set to logic ‘0,’ this forces the receiver synchronization state

machine of the core to remain in the loss of sync state.

See the following section,

“Problems with a High Bit Error Rate.”

Advertising