Chapter 6: IP Core Interfaces
6–31
ECC Error Signals
June 2012
Altera Corporation
Stratix V Hard IP for PCI Express
illustrates the timing relationship between
npor
and the LTSSM L0 state.
ECC Error Signals
describes the ECC error signals. These signals are all valid for one clock
cycle. They are synchronous to
coreclkout_hip
.
ECC for the RX and retry buffers is implemented with MRAM. These error signals are
flags. If a specific location of MRAM has errors, as long as that data is in the ECC
decoder, the flag indicates the error.
When a correctable ECC error occurs, the Stratix V Hard IP for PCI Express recovers
without any loss of information. No Application Layer intervention is required. In the
case of uncorrectable ECC error, Altera recommend that you reset the core.
Figure 6–32. 100 ms Requirement
Note to
:
(1) The ability of Gen2- and Gen3-capable designs to begin link initialization and ultimately to reach L0 before the FPGA is configured is pending device
characterization.
npor
IO_POF_Load
PCIe_LinkTraining_Enumeration
dl_ltssm[4:0]
detect
detect.active polling.active
L0
100 ms
Table 6–8. ECC Error Signals for Hard IP Implementation
Signal
I/O
Description
derr_cor_ext_rcv
O
Indicates a corrected error in the RX buffer. This signal is for debug only. It
is not valid until the RX buffer is filled with data. This is a pulse, not a level,
signal. Internally, the pulse is generated with the 500 MHz clock. A pulse
extender extends the signal so that the FPGA fabric running at 250 MHz
can capture it. Because the error was corrected by the IP core, no
Application Layer intervention is required.
derr_rpl
O
Indicates an uncorrectable error in the retry buffer. This signal is for debug
only.
derr_cor_ext_rpl
O
Indicates a corrected ECC error in the retry buffer. This signal is for debug
only. Because the error was corrected by the IP core, no Application Layer
intervention is required.
Note to
(1) The Avalon-ST
rx_st_err
indicates an uncorrectable error in the RX buffer.
(2) Debug signals are not rigorously verified and should only be used to observe behavior. Debug signals should not be used to drive logic custom
logic.