User guide

Virtex-5 FPGA Integrated Endpoint Block www.xilinx.com 81
UG197 (v1.5) July 22, 2009
Known Restrictions
Invalid Cycles in LLKRXPREFERREDTYPE Signal
Due to the way the integrated Endpoint block updates LLKRXPREFERREDTYPE and the
LLKRXCH*AVAILABLE signals, there will be some cycles in which LLKRXPREFERREDTYPE is
invalid. Sampling the signal during the invalid cycles can result in incorrect operation.
Workaround
These invalid cycles can be detected in a deterministic fashion and depend on whether the
arbiter in the receive path has granted the request to the TLI or the internal configuration
completion. Whenever the user asserts
LLKRXDSTREQN, the grant of the arbiter to the user
and subsequently the determination of the invalid cycles of
LLKRXPREFERREDTYPE can
be implemented in a state machine and additional logic.
This workaround is implemented in LogiCORE Endpoint Block Plus for PCI Express
Designs v1.3 or later and LogiCORE Endpoint Block for PCI Express v1.4 or later.
Continuous Deassertion of LLKTXCONFIGREADYN Signal
Receiving an undefined MsgD with a payload greater than two or receiving a malformed
configuration request with format 2’b11 causes the internal configuration block to hang,
resulting in continuous deassertion of
LLKTXCONFIGREADYN.
Workaround
The user should monitor the LLKTXCONFIGREADYN signal to detect any fatal failures in the
internal configuration block. If the
LLKTXCONFIGREADYN signal is deasserted for more
than several thousands of user clock cycles, the user should transmit a fatal error message
by toggling
L0SETDETECTEDFATALERROR. The user should wait a minimum of 2500 user
clock cycles of continuous deassertion before transmitting a fatal error message.
No workarounds are implemented in LogiCORE Endpoint Block Plus or LogiCORE
Endpoint Block for PCI Express Designs.
Transmitting Completion TLP with Completer Abort Status
Whenever the user application sends a completion packet with the Completer Abort status
bit set, the integrated Endpoint block transmits a non-fatal error message that could result
in a blue screen on the host.
Workaround
The user can alternatively send a completion packet with the unsupported request status
bit set to prevent an error message from being transmitted. This solution, however, is non-
compliant.
No workarounds are implemented in LogiCORE Endpoint Block Plus or LogiCORE
Endpoint Block for PCI Express Designs.