Professional Documents
Culture Documents
S32G2RSERDESRM
S32G2RSERDESRM
S32G2RSERDESRM
Contents
Chapter 1 Introduction to the Subsystem...............................................................5
1.1 Copyright and permissions........................................................................................................ 5
1.2 Block diagram............................................................................................................................5
1.3 Subsystem working modes........................................................................................................6
1.4 Selecting a working mode......................................................................................................... 6
1.5 Enabling 2.5G SGMII with PCIe on SerDes lane 0................................................................... 6
1.6 Requirements for Split Reference Independent Spread Spectrum (SRIS)................................8
1.7 PLL usage................................................................................................................................. 8
Chapter 4 PHY...................................................................................................890
4.1 PHY features......................................................................................................................... 890
4.2 Interfaces...............................................................................................................................890
4.3 Approximating low-swing operation.......................................................................................890
4.4 Code examples......................................................................................................................891
4.5 Accessing PHY registers....................................................................................................... 892
4.6 SerDes_PHY register descriptions........................................................................................ 892
Chapter 1
Introduction to the Subsystem
The SerDes subsystem on this chip includes the following components:
Two Ethernet Physical Coding Sublayer Provide an interface between the Media XPCS
(XPCS) controllers Access Control (MAC) and Physical
Medium Attachment Sublayer (PMA)
through a media-independent interface
to support serial-GMII transmit/receive
Subsystem-level registers Control and configure the overall SerDes_SS register descriptions
subsystem
You can use the SerDes interfaces for both PCI Express and SGMII applications.
NOTE
This document describes relative offsets for the registers and memory-mapped areas of the components
mentioned in the table above. See the chip reference manual for the absolute base addresses of the subsystem
and components.
AXI slave
PCIe controller
AXI master
SerDes lanes
GMII
ENET MAC XPCS0
GMII
ENET MAC XPCS1
Interrupt
SerDes subsystem
Legend:
Subsystem component Other external logic
Step Action
1 Start a reset of the SerDes subsystem. See the chip-specific SerDes information in the chip reference manual for
the exact steps to do this.
5 Finish the reset of the SerDes subsystem. See the chip-specific SerDes information in the chip reference manual for
the exact steps to do this.
Step Action
2 Write 1 to VR_MII_DIG_CTRL1[EN_2_5G_MODE].
5 Write 1 to PCIE_PHY_EXT_CTRL_SEL[EXT_PHY_CTRL_SEL].
Step Action
• Write 1 to EXT_BS_RX_BIGSWING.
• Write 0 to EXT_BS_TX_LOWSWING.
12 Write 2h to PCIE_PHY_EXT_MISC_CTRL_1[EXT_RX_LOS_THRESHOLD].
13 Write 1 to VR_MII_Gen5_12G_16G_TX_GENCTRL2[TX0_WIDTH].
14 Write 1 to VR_MII_Gen5_12G_16G_TX_GENCTRL1[VBOOST_EN_0].
15 Write 1 to VR_MII_Gen5_12G_16G_MPLL_CMN_CTRL[MPLLB_SEL_0].
16 Write 0 to VR_MII_Gen5_12G_16G_TX_RATE_CTRL[TX0_RATE].
17 Write 1 to VR_MII_Gen5_12G_16G_RX_RATE_CTRL[RX0_RATE].
23 Write 1 to VR_MII_Gen5_12G_16G_TX_GENCTRL1[TX_CLK_RDY_0].
SGMII 1G MPLLA
After SerDes reset is released, PCIE_PHY_MPLLA_CTRL[MPLL_STATE] becomes 1 within a certain amount of time, indicating
that the PHY is operational. Table 5 shows this time as a function of PHY reference-clock frequency.
PHY reference clock frequency Time between SerDes reset and MPLL_STATE = 1
Chapter 2
SerDes_SS register descriptions
This section presents the subsystem-level registers.†
(In bits)
(In bits)
(In bits)
(In bits)
Offset
Register Offset
PCIE_PHY_GEN_CTRL 0h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
PHY_
R Reserved Reserved
RTU... REF_U REF_R
PHY_ SE... EP...
W
RTU...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserv
R Reserved RX1_T RX0_T RX_S Reserved CR_P EXT_P
ed
ER... ER... RIS... ARA... CL...
W
Reset 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-26 Reserved
23-18 Reserved
Field Function
15-12 Reserved
8-3 Reserved
1 Reserved
Offset
Register Offset
PCIE_PHY_LPBK_CTRL 4h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-4 Reserved
Field Function
LANE0_TX2RX 0b - Driven to 0
_LOOPBK
1b - Driven to 1
Offset
Register Offset
PCIE_PHY_SRAM_CSR 8h
Function
Used to:
• Control whether to bypass updating PHY firmware from SRAM
• Indicate when PCIe hardware completes initializing PHY SRAM
• Control when firmware completes updating PHY SRAM
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SRAM
R Reserved SRAM SRAM
_IN...
_EX... _BY...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1. The reset value may change after another module on the chip asserts a PCIe reset.
Fields
Field Function
31-3 Reserved
Field Function
0 SRAM Bypass
SRAM_BYPAS Controls the value of PMA's sram_bypass signal in PCIe mode.
S
0b - Driven to 0
1b - Driven to 1
Offset
Register Offset
PCIE_PHY_MPLLA_CTR 10h
L
Function
Used to:
• Force MPLLA Enable
• Monitor MPLL lock state
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MPLLA MPLL_
R Reserved
_S... ST...
Reset
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W ed _F...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1. The reset value may change after another module on the chip asserts a PCIe reset.
Fields
Field Function
29-2 Reserved
1 Reserved
Offset
Register Offset
PCIE_PHY_MPLLB_CTR 14h
L
Function
Used to:
• Force MPLLB Enable
• Monitor MPLL lock state
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MPLLB MPLL_
R Reserved
_S... ST...
Reset
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W ed _F...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1. The reset value may change after another module on the chip asserts a PCIe reset.
Fields
Field Function
29-2 Reserved
1 Reserved
— If you enable 2.5G SGMII mode for lane 0 (see Enabling 2.5G SGMII with PCIe on SerDes lane 0), do
not write to this field. It must remain at its reset value.
Offset
Register Offset
PCIE_PHY_EXT_CTRL_ 18h
SEL
Function
Control whether to use external control registers to override PCIe PHY parameters.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved EXT_P
W HY...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-1 Reserved
Offset
Register Offset
PCIE_PHY_EXT_BS_CT 1Ch
RL
Function
Overrides boundary-scan parameters when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1
Fields
Field Function
31-7 Reserved
Offset
Register Offset
PCIE_PHY_REF_CLK_C 20h
TRL
Function
Overrides reference clock parameters when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0
Fields
Field Function
31-6 Reserved
Offset
Register Offset
PCIE_PHY_EXT_MPLLA 30h
_CTRL_1
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_MPLLA_BANDWIDTH
W
Reset 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 1
Fields
Field Function
23-20 Reserved
Field Function
EXT_MPLLA_DI 0b - Driven to 0
V16P5_CLK_E
1b - Driven to 1
N
Offset
Register Offset
PCIE_PHY_EXT_MPLLA 34h
_CTRL_2
Function
Overrides MPLLA parameters when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_MPLLA_FRACN_CTRL EXT_MPLLA_MULTIPLIER
W
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1
Fields
Field Function
31 Reserved
30-28 Reserved
27 Reserved
26-24 Reserved
23 Reserved
11-8 Reserved
Offset
Register Offset
PCIE_PHY_EXT_MPLLA 38h
_CTRL_3
Function
Overrides MPLLA parameters when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
27-25 Reserved
24-16 Reserved
15-12 Reserved
11-0 Reserved
Offset
Register Offset
PCIE_PHY_EXT_MPLLB 40h
_CTRL_1
Function
Overrides MPLLB parameters when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserv
R Reserved EXT_ EXT_ EXT_
EXT_MPLLB_DIV_MULTIPLIER ed
MPL... MPL... MPL...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_MPLLB_BANDWIDTH
W
Reset 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 0
Fields
Field Function
23-20 Reserved
17 Reserved
Field Function
Offset
Register Offset
PCIE_PHY_EXT_MPLLB 44h
_CTRL_2
Function
Overrides MPLLB parameters when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_MPLLB_FRACN_CTRL EXT_MPLLB_MULTIPLIER
W
Reset 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0
Fields
Field Function
31 Reserved
30-28 Reserved
27 Reserved
Field Function
26-24 Reserved
23 Reserved
11-8 Reserved
Offset
Register Offset
PCIE_PHY_EXT_MPLLB 48h
_CTRL_3
Function
Overrides MPLLB parameters when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
27-25 Reserved
24-16 Reserved
15-12 Reserved
11-0 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 50h
_CTRL_1A
Function
Overrides receiver equalization settings for PCIe Gen1 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_CTLE_POLE_G1 EXT_RX_EQ_CTLE_BOOST_G1
W
Reset 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-10 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 54h
_CTRL_1B
Function
Overrides receiver equalization settings for PCIe Gen1 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_VGA2_GAIN_G1 EXT_RX_EQ_VGA1_GAIN_G1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_RX_EQ_DFE_TAP1_G1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 58h
_CTRL_1C
Function
Overrides receiver equalization settings for PCIe Gen1 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_EQ_DELTA_IQ_G1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 60h
_CTRL_2A
Function
Overrides receiver equalization settings for PCIe Gen2 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_CTLE_POLE_G2 EXT_RX_EQ_CTLE_BOOST_G2
W
Reset 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-10 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 64h
_CTRL_2B
Function
Overrides receiver equalization settings for PCIe Gen2 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_VGA2_GAIN_G2 EXT_RX_EQ_VGA1_GAIN_G2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_RX_EQ_DFE_TAP1_G2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 68h
_CTRL_2C
Function
Overrides receiver equalization settings for PCIe Gen2 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_EQ_DELTA_IQ_G2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 70h
_CTRL_3A
Function
Overrides receiver equalization settings for PCIe Gen3 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_CTLE_POLE_G3 EXT_RX_EQ_CTLE_BOOST_G3
W
Reset 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Fields
Field Function
15-10 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 74h
_CTRL_3B
Function
Overrides receiver equalization settings for PCIe Gen3 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_VGA2_GAIN_G3 EXT_RX_EQ_VGA1_GAIN_G3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_RX_EQ_DFE_TAP1_G3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 78h
_CTRL_3C
Function
Overrides receiver equalization settings for PCIe Gen3 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_EQ_DELTA_IQ_G3
W
Reset 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1
Fields
Field Function
31-8 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 80h
_CTRL_4A
Function
Overrides receiver equalization settings for PCIe Gen4 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_CTLE_POLE_G4 EXT_RX_EQ_CTLE_BOOST_G4
W
Reset 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Fields
Field Function
15-10 Reserved
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 84h
_CTRL_4B
Function
Overrides receiver equalization settings for PCIe Gen4 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXT_RX_EQ_VGA2_GAIN_G4 EXT_RX_EQ_VGA1_GAIN_G4
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_RX_EQ_DFE_TAP1_G4
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
PCIE_PHY_EXT_RX_EQ 88h
_CTRL_4C
Function
Overrides receiver equalization settings for PCIe Gen4 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_EQ_DELTA_IQ_G4
W
Reset 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1
Fields
Field Function
31-8 Reserved
Offset
Register Offset
PCIE_PHY_EXT_CALI_ 90h
CTRL_1
Function
Overrides receiver calibration settings for PCIe Gen1 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
EXT_RX_REF_LD_VAL_G1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_VCO_LD_VAL_G1
W
Reset 0 0 0 0 0 1 0 1 0 1 0 0 0 1 1 0
Fields
Field Function
31-22 Reserved
15-13 Reserved
Offset
Register Offset
PCIE_PHY_EXT_CALI_ 94h
CTRL_2
Function
Overrides receiver calibration settings for PCIe Gen2 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
EXT_RX_REF_LD_VAL_G2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_VCO_LD_VAL_G2
W
Reset 0 0 0 0 0 1 0 1 0 1 0 0 0 1 1 0
Fields
Field Function
31-22 Reserved
15-13 Reserved
Offset
Register Offset
PCIE_PHY_EXT_CALI_ 98h
CTRL_3
Function
Overrides receiver calibration settings for PCIe Gen3 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
EXT_RX_REF_LD_VAL_G3
W
Reset 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_VCO_LD_VAL_G3
W
Reset 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0
Fields
Field Function
31-22 Reserved
15-13 Reserved
Offset
Register Offset
PCIE_PHY_EXT_CALI_ 9Ch
CTRL_4
Function
Overrides receiver calibration settings for PCIe Gen4 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
EXT_RX_REF_LD_VAL_G4
W
Reset 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_RX_VCO_LD_VAL_G4
W
Reset 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0
Fields
Field Function
31-22 Reserved
15-13 Reserved
Offset
Register Offset
PCIE_PHY_EXT_MISC_ A0h
CTRL_1
Function
Overrides miscellaneous PHY settings when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved EXT_RX_LOS_PWR_UP
EXT_RX_TERM_CTRL EXT_RX_VREF_CTRL
W _CNT
Reset 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserv
R EXT_R
EXT_RX_LOS_PWR_UP_CNT ed EXT_RX_LOS_THRESHOLD
X_...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0
Fields
Field Function
23-19 Reserved
7 Reserved
Offset
Register Offset
PCIE_PHY_EXT_MISC_ A4h
CTRL_2
Function
Overrides miscellaneous PHY settings when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved Reserved
EXT_TX_TERM_CTRL EXT_TX_VBOOST_LVL
W
Reset 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
EXT_TX_IBOOST_LVL
W
Reset 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Fields
Field Function
31-27 Reserved
23-19 Reserved
15-8 Reserved
Field Function
Offset
Register Offset
PCIE_PHY_EXT_TX_EQ B0h
_CTRL_1
Function
Overrides transmitter equalization settings for PCIe Gen1 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_TX_EQ_PRE_G1 EXT_TX_EQ_POST_G1
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0
Fields
Field Function
31-30 Reserved
27-26 Reserved
Field Function
Offset
Register Offset
PCIE_PHY_EXT_TX_EQ B4h
_CTRL_2
Function
Overrides transmitter equalization settings for PCIe Gen2 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_TX_EQ_PRE_G2 EXT_TX_EQ_POST_G2
W
Reset 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0
Fields
Field Function
31-30 Reserved
Field Function
27-26 Reserved
Offset
Register Offset
PCIE_PHY_EXT_TX_EQ B8h
_CTRL_3
Function
Overrides transmitter equalization settings for PCIe Gen3 speed when external control of PHY settings is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EXT_TX_EQ_PRE_G3 EXT_TX_EQ_POST_G3
W
Reset 0 0 1 0 0 0 1 0 0 1 0 1 0 1 0 1
Fields
Field Function
31-30 Reserved
27-26 Reserved
Offset
Register Offset
PCIE_PHY_XPCS0_RX_ C0h
OVRD_CTRL
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
XPCS0_RX_VCO_LD_VAL
W
Reset 0 0 0 0 0 1 0 1 0 1 0 0 0 1 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 1 1 0 1 1 0 0 0 0 0 0 0 1
Fields
Field Function
31-29 Reserved
15-14 Reserved
7-1 Reserved
Offset
Register Offset
PCIE_PHY_XPCS1_RX_ D0h
OVRD_CTRL
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
XPCS1_RX_VCO_LD_VAL
W
Reset 0 0 0 0 0 1 0 1 0 1 0 0 0 1 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 1 1 0 1 1 0 0 0 0 0 0 0 1
Fields
Field Function
31-29 Reserved
15-14 Reserved
7-1 Reserved
Offset
Register Offset
SS_RO_REG_0 E0h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
PCS1_ PCS1_ PCS1_ PCS0_ PCS0_ PCS0_ CDM_ CDM_ CDM_ PCS1_
R MSTR_ARMISC_INFO_DMA
LI... SG... SG... LI... SG... SG... REG... REG... REG... LI...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0
Fields
Field Function
Field Function
0b - Half duplex
1b - Full duplex
Field Function
MSTR_ARMISC 0b - The TLP in the transaction is not the last TLP of the read request.
_INFO_LAST_D 1b - The TLP in the transaction is the last TLP of the read request.
CMP_TLP
MSTR_AWMIS 0b - The TLP in the transaction is not the last TLP of the write request.
C_INFO_LAST_ 1b - The TLP in the transaction is the last TLP of the write request.
DCMP_TLP
0 Reserved
Offset
Register Offset
SS_RO_REG_1 E4h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
SLV_B
R 0 SLV_RMISC_INFO
MI...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R SLV_BMISC_INFO MSTR_AWMISC_INFO_DMA
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
Field Function
Offset
Register Offset
SS_RO_REG_2 E8h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R REG2
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R REG2
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
REG2
Offset
Register Offset
SS_RO_REG_3 ECh
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R REG3
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R REG3
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
REG3
Offset
Register Offset
SS_RW_REG_0 F0h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R SLV_A SLV_ MSTR_RMISC_ MSTR_BMISC_ PHY0_ Reserv APP_X SYS_ SYS_E SYS_C SYS_A
SUBSYS_MODE
W WM... WMI... INFO... INFO... CR... ed FE... INT ML... MD... TT...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
28 Reserved
26 Reserved
Field Function
CLKEN 0b - External clock (phy0_ref_pad_clk_m, phy0_ref_pad_clk_p) is the reference clock for the PCIe
PHY PLL.
1b - Internal clock (PCIE_REF_CLK) is the reference clock for the PCIe PHY PLL.
Field Function
8 Reserved
6 System Interrupt
SYS_INT When SYS_INT goes from low to high, the controller generates an Assert_INTx message. When
SYS_INT goes from high to low, the controller generates a Deassert_INTx message.
Field Function
Offset
Register Offset
SS_RW_REG_1 F4h
Function
Controls parity error injection on the AXI slave-read interface.
After you inject parity error, the PCIe controller generates a TLP that the link partner detects as a nullified TLP. As
a result, the link partner does not send any completion confirmation. In this case, the slave AXI read interface gets
a response via the completion-timeout mechanism. Therefore, you must not disable the PCIe controller's completion-
timeout mechanism (via DEVICE_CONTROL2_DEVICE_STATUS2_REG[PCIE_CAP_CPL_TIMEOUT_VALUE] for EP mode
and DEVICE_CONTROL2_DEVICE_STATUS2_REG[PCIE_CAP_CPL_TIMEOUT_VALUE] for RC mode). This mechanism is
enabled by default. If you disable that mechanism, it might cause AXI to hang, which in turn might cause NoC to hang.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Field Function
PARITY_MODE Allows you to inject a parity error into the specified bus.
_SLV_WR_ADD
The PCIe controller normally uses and expects odd parity. This corresponds to a value of 0 in this field.
R
When you write a 1 to this field, the PCIe controller uses even parity. This injects a parity error.
0b - No error injected
1b - Error injected
Offset
Register Offset
SS_RW_REG_2 F8h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
Reserved SLV_ARMISC_INFO
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SLV_ARMISC_INFO
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-22 Reserved
21-0 Miscellaneous Information Associated With The AXI Slave Read Transaction
SLV_ARMISC_I This field is not part of the standard AXI interface. It is optional for your application.
NFO
The bits within this field have the following meanings:
• Bits 4:0: TLP's type
• Bit 5: Reserved
• Bit 6: TLP's EP
• Bit 7: Reserved
• Bit 8: TLP's NS
• Bit 9: TLP's RO
• Bits 12:10: TLP's TC
• Bits 20:13: TLP's MSG code
• Bit 21: AXI transaction is a DBI access (only for shared DBI mode)
Offset
Register Offset
SS_RW_REG_3 FCh
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
Reserved SLV_AWMISC_INFO
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SLV_AWMISC_INFO
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-22 Reserved
21-0 Miscellaneous Information Associated With The AXI Slave Write Transaction
SLV_AWMISC_ This field is not part of the standard AXI interface. It is optional for your application.
INFO
The bits within this field have the following meanings:
• Bits 4:0: TLP's type
• Bit 5: Reserved
• Bit 6: TLP's EP
• Bit 7: Reserved
• Bit 8: TLP's NS
• Bit 9: TLP's RO
• Bits 12:10: TLP's TC
• Bits 20:13: TLP's MSG code
• Bit 21: AXI transaction is a DBI access (only for shared DBI mode)
Offset
Register Offset
SS_RW_REG_4 100h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
SLV_AWMISC_INFO_HDR_3DW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SLV_AWMISC_INFO_HDR_3DW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
SS_RW_REG_5 104h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
SLV_AWMISC_INFO_HDR_4DW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SLV_AWMISC_INFO_HDR_4DW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
PCIE_SUBSYSTEM_VE 1000h
RSION
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VERSION
Reset 0 1 0 1 0 0 0 0 0 0 0 0 1 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VERSION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
VERSION
Offset
Register Offset
LINK_INT_CTRL_STS 1040h
Function
Controls the enabling of PCIe link interrupts and monitors the status of the PCIe link interrupt.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-7 Reserved
3 Reserved
Offset
Register Offset
PE0_GEN_CTRL_1 1050h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserv Reserv
R TX_LA Reserved RX_LA Reserved
ed ed
NE... NE...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserv
R Reserved SRIS_ Reserved DEVIC
ed DEVICE_TYPE
MO... E_...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
29-24 Reserved
23 Reserved
Field Function
For use when automatic lane reversal does not occur because lane 0 is not detected. It must be stable
before PCIe link establishment.
0b - Disabled
1b - Enabled
21-16 Reserved
15-9 Reserved
7-6 Reserved
5 Reserved
Offset
Register Offset
PE0_GEN_CTRL_2 1054h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W CL... _AC...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-10 Reserved
7-0 Reserved
Offset
Register Offset
PE0_GEN_CTRL_3 1058h
Function
Controls:
• LTSSM Enable
• Configuration Request Retry Status (CRS) Enable
• Hot reset
• Holding LTSSM in silicon debug
• Debug signal selection
• LCRC/ECRC error injection in silicon debug
• Timeout threshold for crosslink connection
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
RAS_ CRS_ LTSS
DIAG_CTRL_BUS Reserved HOT_
W DES... EN M_EN
RES...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-30 Reserved
29-28 Reserved
27-26 Reserved
25-24 Reserved
23-16 Reserved
12-8 Reserved
Field Function
7-4 Reserved
2 Hot Reset
HOT_RESET Allows you to trigger a hot reset.
This field always reads zero.
1b - Trigger a hot reset
0 LTSSM Enable
LTSSM_EN Active high.
0b - Hold LTSSM in the Detect state until your application is ready
1b - Allow LTSSM to continue link establishment and normal operation
Offset
Register Offset
PE0_GEN_CTRL_4 105Ch
Function
Controls:
• Device and function readiness
• MSI table and PBA table debug
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserv
R Reserved Reserved
ed
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
27-26 Reserved
25-16 Reserved
15-9 Reserved
8 Reserved
7-0 Reserved
Offset
Register Offset
PE0_PM_CTRL 1060h
Function
Allows you to control:
• PM_PME requests
• Readiness of PM entry
• PM exit events
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
BEAC APP_C APP_C READ EXIT_ ENTE
ON_... LK... LK... Y_E... AS... R_A... PM_P
W
ME_...
Reset 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserv
R Reserved Reserved
ed PME_PF_INDEX
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
30-22 Reserved
Field Function
0b - No request to enter
1b - Explicit request to enter
15-8 Reserved
7 Reserved
6-5 Reserved
Offset
Register Offset
PE0_PM_STS 1064h
Function
Monitors PCIe PM status.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Fields
Field Function
30-21 Reserved
20 Reserved
19 Reserved
18 Reserved
17-16 Reserved
13 Reserved
Field Function
0b - Not in L0s
1b - In L0s
7-5 Reserved
PM_DSTATE 000b - D0
001b - D1
010b - D2
011b - D3
100b - Uninitialized
All other values are reserved.
Offset
Register Offset
PE0_TX_MSG_HDR_1 1070h
Function
Controls the first DWORD of the transmitted message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W HDR... HDR... TR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
MSG_HDR_TY
PE
23 Reserved
MSG_HDR_TC
19 Reserved
18 Reserved
17 Reserved
16 Reserved
Field Function
11-10 Reserved
9-0 Tied to 0.
MSG_HDR_LE
NGTH
Offset
Register Offset
PE0_TX_MSG_HDR_2 1074h
Function
Controls the second DWORD of the transmitted message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSG_HDR_BYTE4 MSG_HDR_BYTE5
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSG_HDR_BYTE6 MSG_HDR_BYTE7
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSG_HDR_BY
TE4
MSG_HDR_BY
TE5
MSG_HDR_BY
TE6
MSG_HDR_BY
TE7
Offset
Register Offset
PE0_TX_MSG_HDR_3 1078h
Function
Controls the third DWORD of the transmitted message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSG_HDR_BYTE8 MSG_HDR_BYTE9
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSG_HDR_BYTE10 MSG_HDR_BYTE11
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 8
MSG_HDR_BY
TE8
23-16 Byte 9
MSG_HDR_BY
TE9
15-8 Byte 10
MSG_HDR_BY
TE10
7-0 Byte 11
MSG_HDR_BY
TE11
Offset
Register Offset
PE0_TX_MSG_HDR_4 107Ch
Function
Controls the fourth DWORD of the transmitted message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSG_HDR_BYTE12 MSG_HDR_BYTE13
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSG_HDR_BYTE14 MSG_HDR_BYTE15
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 12
MSG_HDR_BY
TE12
23-16 Byte 13
MSG_HDR_BY
TE13
15-8 Byte 14
MSG_HDR_BY
TE14
7-0 Byte 15
MSG_HDR_BY
TE15
Offset
Register Offset
PE0_TX_MSG_REQ 1080h
Function
Triggers a message-transmission request through the PCIe SII interface.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserv
R Reserved Reserved
ed TX_MSG_PF_NUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23 Reserved
22 Reserved
21 Reserved
20 Unlock message
UNLOCK_REQ Write 1 to this field to send an Unlock message.
The read value of this field is always 0.
This field is valid in RC mode.
18 Reserved
16 Reserved
15-8 Reserved
7 Reserved
6-5 Reserved
Field Function
TX_MSG_PF_N
UM
Offset
Register Offset
PE0_RX_MSG_HDR_1 1090h
Function
Monitors the first DWORD of the received message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSG_HDR_BYTE0 MSG_HDR_BYTE1
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSG_HDR_BYTE2 MSG_HDR_BYTE3
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 0
MSG_HDR_BY
TE0
23-16 Byte 1
MSG_HDR_BY
TE1
15-8 Byte 2
Field Function
MSG_HDR_BY
TE2
7-0 Byte 3
MSG_HDR_BY
TE3
Offset
Register Offset
PE0_RX_MSG_HDR_2 1094h
Function
Monitors the second DWORD of the received message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSG_HDR_BYTE4 MSG_HDR_BYTE5
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSG_HDR_BYTE6 MSG_HDR_BYTE7
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 4
MSG_HDR_BY
TE4
23-16 Byte 5
MSG_HDR_BY
TE5
Field Function
15-8 Byte 6
MSG_HDR_BY
TE6
7-0 Byte 7
MSG_HDR_BY
TE7
Offset
Register Offset
PE0_RX_MSG_HDR_3 1098h
Function
Monitors the third DWORD of the received message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSG_HDR_BYTE8 MSG_HDR_BYTE9
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSG_HDR_BYTE10 MSG_HDR_BYTE11
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 8
MSG_HDR_BY
TE8
23-16 Byte 9
Field Function
MSG_HDR_BY
TE9
15-8 Byte 10
MSG_HDR_BY
TE10
7-0 Byte 11
MSG_HDR_BY
TE11
Offset
Register Offset
PE0_RX_MSG_HDR_4 109Ch
Function
Monitors the fourth DWORD of the received message's TLP header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSG_HDR_BYTE12 MSG_HDR_BYTE13
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSG_HDR_BYTE14 MSG_HDR_BYTE15
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 12
MSG_HDR_BY
TE12
Field Function
23-16 Byte 13
MSG_HDR_BY
TE13
15-8 Byte 14
MSG_HDR_BY
TE14
7-0 Byte 15
MSG_HDR_BY
TE15
Offset
Register Offset
PE0_RX_MSG_STS 10A0h
Function
Identifies the type of a captured message.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PM_P PME_T
R Reserved Reserved
ME_... O_...
W W1C W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
MSGQ_OVERF
LOW
30-24 Reserved
23 Reserved
22 Reserved
21 Reserved
Field Function
1b - Captured
16 Reserved
15-13 Reserved
10-0 Reserved
Offset
Register Offset
PE0_RX_MSG_CAP_CT 10A4h
RL
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserv Reserv
R Reserved Reserved CAP_ CAP_P CAP_V CAP_V
ed ed
UNL... ME... DM... DM...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W M_... ME...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-22 Reserved
21 Reserved
Field Function
CAP_VDM_TYP 0b - Disable
E0
1b - Enable
16 Reserved
15-13 Reserved
10-0 Reserved
Offset
Register Offset
PE0_RX_MSG_INT_CTR 10A8h
L
Function
Control the generation of an interrupt to a local processor when a message is captured.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W ME_... O_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
30-24 Reserved
23 Reserved
22 Reserved
21 Reserved
18 Interrupt Enable When Vendor-Defined Type 1 Message In Received Message Header Register
Field Function
VDM_TYPE1_I Enables and disables an interrupt when a vendor-defined Type 1 message is captured.
NT_EN
0b - Disable
1b - Enable
17 Interrupt Enable When Vendor-Defined Type 0 Message In Received Message Header Register
VDM_TYPE0_I Enables and disables an interrupt when a vendor-defined Type 0 message is captured.
NT_EN
0b - Disable
1b - Enable
16 Reserved
15-13 Reserved
10-0 Reserved
Offset
Register Offset
PE0_LINK_DBG_1 10B0h
Function
Indicates lane receiver detection and symbol lock status.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
SYMBOL_LOC
R Reserved
K
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
RECEIVER_DE
R Reserved
TECT...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-18 Reserved
15-2 Reserved
Offset
Register Offset
PE0_LINK_DBG_2 10B4h
Function
Indicates link state, link rate and traffic status.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
RDLH_ SMLH_
R Reserved PHY_POWRDOWN RATE SMLH_LTSSM_STATE
LI... LI...
Reset 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
1. The reset value may change after another module on the chip asserts a PCIe reset.
Fields
Field Function
31-25 Reserved
Field Function
19 Reserved
18 Reserved
17 Reserved
15-13 Reserved
Field Function
SMLH_LINK_U 0b - Down
P 1b - Up
Field Function
01_0100b - S_L1_IDLE
01_0101b - S_L2_IDLE
01_0110b - S_L2_WAKE
01_0111b - S_DISABLED_ENTRY
01_1000b - S_DISABLED_IDLE
01_1001b - S_DISABLED
01_1010b - S_LPBK_ENTRY
01_1011b - S_LPBK_ACTIVE
01_1100b - S_LPBK_EXIT
01_1101b - S_LPBK_EXIT_TIMEOUT
01_1110b - S_HOT_RESET_ENTRY
01_1111b - S_HOT_RESET
10_0000b - S_RCVRY_EQ0
10_0001b - S_RCVRY_EQ1
10_0010b - S_RCVRY_EQ2
10_0011b - S_RCVRY_EQ3
Offset
Register Offset
PE0_AXI_MSTR_DBG_1 10C0h
Function
Indidates the status of the AXI master write channel.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSTR_WR_ERR MSTR_WR_REQ_PEND
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSTR_WR_REQ
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSTR_WR_ER
R
MSTR_WR_RE
Q_PEND
MSTR_WR_RE
Q
Offset
Register Offset
PE0_AXI_MSTR_DBG_2 10C4h
Function
Indidates the status of the AXI master read channel.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSTR_RD_ERR MSTR_RD_REQ_PEND
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSTR_RD_REQ
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSTR_RD_ER
R
MSTR_RD_RE
Q_PEND
MSTR_RD_RE
Q
Offset
Register Offset
PE0_AXI_SLV_DBG_1 10D0h
Function
Indidates the status of the AXI slave write channel.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R SLV_WR_ERR SLV_WR_REQ_PEND
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R SLV_WR_REQ
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
SLV_WR_ERR
SLV_WR_REQ_
PEND
SLV_WR_REQ
Offset
Register Offset
PE0_AXI_SLV_DBG_2 10D4h
Function
Indidates the status of the AXI slave read channel.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R SLV_RD_ERR SLV_RD_REQ_PEND
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R SLV_RD_REQ
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
SLV_RD_ERR
SLV_RD_REQ_
PEND
SLV_RD_REQ
Offset
Register Offset
PE0_ERR_STS 10E0h
Function
Indicates error status of:
• Transmit path
• Receive path
• Link down
• APB timeout
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserv Reserv Reserv P_DAT Reserv Reserv Reserv P_HD RXDA TXDA TXDA
R Reserved
ed ed ed AQ... ed ed ed RQ_... TA_... TA_... TA_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
When reading
0b - No timeout error detected
1b - Timeout error detected
When writing
0b - No effect
1b - Return this field's value to 0
When reading
0b - No link down error detected
1b - Link down error detected
When writing
0b - No effect
1b - Return this field's value to 0
29-27 Reserved
Field Function
When reading
0b - No parity error detected
1b - Parity error detected
When writing
0b - No effect
1b - Return this field's value to 0
When reading
0b - No parity error detected
1b - Parity error detected
When writing
0b - No effect
1b - Return this field's value to 0
24 Reserved
23-17 Reserved
When reading
0b - No overflow error detected
Field Function
15 Reserved
14 Reserved
13 Reserved
When reading
0b - No parity error detected
1b - Parity error detected
When writing
0b - No effect
1b - Return this field's value to 0
11 Reserved
10 Reserved
9 Reserved
When reading
Field Function
When reading
0b - No parity error detected
1b - Parity error detected
When writing
0b - No effect
1b - Return this field's value to 0
When reading
0b - No parity error detected
1b - Parity error detected
When writing
0b - No effect
1b - Return this field's value to 0
When reading
0b - No parity error detected
Field Function
4-0 Reserved
Offset
Register Offset
PE0_ERR_INT_CTRL 10E4h
Function
Controls the generation of an interrupt to the local processor when the controller encounters an error.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserv
R APBSL LINK_ Reserved RETR RETR Reserved VC_Q
ed
V_... DO... YSO... YRA... OVE...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
1b - Enable
29-27 Reserved
24 Reserved
23-17 Reserved
15 Reserved
14 Reserved
13 Reserved
Field Function
P_DATAQ_PAR Enables and disables the interrupt arising from a detected parity error in the receive data queue 0.
ERR_INT_EN_0
0b - Disable
1b - Enable
11 Reserved
10 Reserved
9 Reserved
6 Interrupt Enable For Parity Error At Back End Of The Transmit Datapath
TXDATA_PERR Enables and disables the interrupt arising from a detected parity error at the back end of the
_BACK_INT_EN transmit datapath.
0b - Disable
1b - Enable
5 Interrupt Enable For Parity Error At Front End Of The Transmit Datapath
TXDATA_PERR Enables and disables the interrupt arising from a detected parity error at the front end of the
_FRONT_INT_E transmit datapath.
N
0b - Disable
1b - Enable
4-0 Reserved
Offset
Register Offset
PE0_INT_STS 10E8h
Function
Provides the first level interrupt status of interrupt pin pcie0_int_o[4].
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
BW_M LINK_ Reserv LINK_ BW_M LINK_ SYS_E HP_IN PME_I AER_ Reserv ERR_I RX_M BEAC
R Reserved
GT_... AU... ed EQ... GT_... AU... RR... T_... NT... RC_... ed NT... SG_... ON_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-14 Reserved
Field Function
11 Reserved
Field Function
1b - A device reports a system error and the associated error-reporting enable field in
ROOT_CONTROL_ROOT_CAPABILITIES_REG = 1
6 Hot-Plug Status
HP_INT_STS Becomes 1 when both of the following are true:
• SLOT_CONTROL_SLOT_STATUS[PCIE_CAP_HOT_PLUG_INT_EN] = 1
• Any other field in Slot Control and Status (SLOT_CONTROL_SLOT_STATUS) is 1
3 Reserved
Offset
Register Offset
PE0_MSI_GEN_CTRL 10ECh
Function
Allows you to trigger an MSI interrupt to a link partner if MSI is enabled.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_INT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_INT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
PE0_FSM_TRACK_1 10F0h
Function
Monitors the PCIe link LTSSM.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
7 Reserved
FSM_TRIG
Offset
Register Offset
PE0_FSM_TRACK_2 10F4h
Function
Monitors the PCIe link LTSSM.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
Offset
Register Offset
APB_BRIDGE_TO_CTR 3000h
L
Function
Sets the APB slave timeout threshold.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
APB_TIMER_LIMT
W
Reset 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved APB_T
APBCLK_FREQ
W IM...
Reset 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0
Fields
Field Function
15-11 Reserved
Offset
Register Offset
PHY_REG_ADDR 3008h
Function
Works together with PHY Register Data (PHY_REG_DATA) to give you access to the PHY registers.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PHY_R Reserved
W EG...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
30-16 Reserved
ADDR
Offset
Register Offset
PHY_REG_DATA 300Ch
Function
Works together with PHY Register Address (PHY_REG_ADDR) to give you access to the PHY registers.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
DATA
Offset
Register Offset
RST_CTRL 3010h
Function
Allows your software or firmware to trigger a cold (soft) reset or a warm reset.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W _RST RST
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 Reserved
Chapter 3
PCIe Controller
3.1 Introduction
This section describes the PCIe controller on this chip and provides a basic description of the PCIe protocol.
Term Description
CPL Completion
Term Description
{new}Function {new}In PCIe context, a capability of a PCIe device on a PCIe bus. Always spelled with a capital F.
Each Function has a number. The combination of bus, device, and Function numbers creates a
unique PCIe identifier that is used during PCIe enumeration and communication.
Inbound traffic PCIe transactions that enter the controller from the wire side of the controller (PCIe wire). These
transactions are delivered to your application side.
Term Description
NF Number of Functions
The value “1” represents one function.
NP Non-posted
Outbound traffic Transactions that enter the controller from your application side of the controller. These transactions
are passed to the native controller, where they are sent out onto the PCIe wire.
P Posted
Page Boundary Specifies the address page boundary size supported by the AXI bridge. No packet can have an
address that crosses the specified address boundary.
PIPE Standard PIPE interface between the PCI Express PHY and the controller. If you set PHY_TYPE to
be the Synopsys PHY, then the PHY is included inside the controller.
PTM Precision Time Measurement feature as defined in PCI Express Base Specification, Revision 4.0,
Version 0.9.
Term Description
TRGT1 / RBYP When you configure the controller with an AXI bridge, then these interfaces are no longer visible as
they now becomes an internal connection between the native PCIe controller and the AXI bridge.
Your application receives inbound TLPs on AXI bridge, instead of TRGT1 / RBYP.
VC Virtual Channel
3.2 Features
RX TX
Transaction Layer
Configuration Registers
RX TX
Data Link Layer
RX TX
MAC Layer
SerDes Interface
As an initiator, the PCIe controller supports memory read and write operations. In addition, configuration and I/O transactions are
supported if the PCIe controller is in RC mode. As a target interface, the PCIe controller accepts read and write operations to local
memory space. When configured as an EP device, the PCIe controller accepts configuration transactions to the internal PCIe
configuration registers. Message generation and acceptance are supported in both RC and EP modes. Locked transactions and
inbound I/O transactions are not supported.
In general, transactions are serviced in the order that they are received from the internal platform. The controller applies PCIe
ordering rules to outstanding transactions only when a stalled condition exists. For posted write transactions, after all data has
been received from the internal platform, the data is forwarded to the PCIe link and the transaction is considered as done. For
non-posted write transactions, the controller waits for the completion packets to return before considering the transaction finished.
For non-posted read transactions, the controller waits for all completion packets to return and then forwards all data back to the
internal platform before terminating the transaction.
After reset or when recovering from a link down condition, external transactions should not be attempted until the link has
successfully trained. Software can poll the link status in PCIe Controller 0 Link Debug 2 (PE0_LINK_DBG_2).
PCI_RXn_P I Receive data, positive. The receive data signals carry PCI Express packet information.
State Asserted/Negated — Represents data being received from the PCI Express interface.
Meaning
Timing Assertion/Negation — As described in the PCI Express Base 3.0 Specification, Revision 1.0.
PCI_RXn_N I Receive data, negative. The receive data signals carry PCI Express packet information.
State Asserted/Negated — Represents the inverse of data being received from the PCI
Meaning Express interface.
Timing Assertion/Negation — As described in the PCI Express Base 3.0 Specification, Revision 1.0.
PCI_TXn_P O Transmit data, positive. The transmit data signals carry PCI Express packet information.
State Asserted/Negated — Represents data being transmitted to the PCI Express interface.
Meaning
Timing Assertion/Negation — As described in the PCI Express Base 3.0 Specification, Revision 1.0.
PCI_TXn_N O Transmit data, negative. The transmit data signals carry PCI Express packet information.
State Asserted/Negated — Represents the inverse of data being transmitted to the PCI
Meaning Express interface.
Timing Assertion/Negation — As described in the PCI Express Base 3.0 Specification, Revision 1.0.
State Asserted/Negated — Represents data being transmitted to the PCI Express interface.
Meaning
Timing Assertion/Negation — As described in the PCI Express Base 3.0 Specification, Revision 1.0.
State Asserted/Negated — Represents the inverse of data being transmitted to the PCI
Meaning Express interface.
Timing Assertion/Negation — As described in the PCI Express Base 3.0 Specification, Revision 1.0.
PCI_RESREF - Reference Resistor Connection. Attach a 200-ohm 1% 100-ppm/C precision resistor-to ground on
the board.
Timing Assertion/Negation — As described in the PCI Express Base 3.0 Specification, Revision 1.0.
Signal When you are using only one SerDes lane When you are not using the PHY at all
PCI_RESREF — Float
0xFFF
Customer Application Registers CDM/ELBI Select Bit
=1
(ELBI)
CONFIG_LIMIT DMA Registers
(wire view only)
(CDM)
0x8_0000 CDM/ELBI Select Bit
Approx.
=1
0xD00
(CDM)
(CDM)
0x0000
0x700
Per Function Space
CS2 = 1
CapPtr
0x03F
PCI Configuration Header Space
(64 bytes / 16 DWORDs)
0x0000
0xFFF
DMA Registers
Approx. (CDM)
0xD00 0x8_0000 CDM Select Bit
=1
0x700
Per Function Space
CS2 = 1
CapPtr
0x03F
PCI Configuration Header Space
(64 bytes / 16 DWORDs)
0x0000
Capability configuration registers are in structures (groups) identified by a capability ID. The groups are linked together as in PCI.
Register locations within a group are specified, but the starting location of each group must be found by traversing the linked list.
There are two linked lists of register groups:
• PCI compatible capability registers
PCI compatible capability register groups begin at the configuration address stored in the capability pointer register at 0x34.
• PCI Express extended capability registers
PCI Express extended capability register groups begin at address 0x100.
The capability pointer register in the PCI-compatible header register points to the next item in the linked list of capabilities, which
by default is the PCI Power Management capability.
Simple Single register accessed directly by its address. Direct addressing method. You just supply the address.
Most of the registers (including ATU and DMA)
are of this type.
Shadow Another register exists at the same address Normally can only be accessed through the DBI where you
as a Simple register. For example the BAR select between the two registers using the dbi_cs2 input (or
Mask registers have the same address as the the CS2 address bit if you are using an AXI DBI slave). This
BAR registers. is called DBI2, CS2, dbi_cs2, DBI_CS2, or Dbi2 access; all of
these terms mean the same thing.
Viewport Multiple (n) registers existing at the same Indirect addressing method where you first write to a special
address as a Simple register. For example Gen3 index register to select which of the n registers at the
Coefficient Preset registers. address you want to access. You then proceed to write to
the register address.
Wire (USP only) Remote access by link partner over the As per PCI-SIG specification.
PCIe link.
DBI Dbi Local (back-door) access to Simple • Normally as per PCI-SIG specification.
registers by your application logic through
• Some read-only1 registers are permanently R/W.
the DBI interface with dbi_cs =1 and
dbi_cs2(or CS2) =0. • Some read-only1 registers can be made temporarily
R/W when you write 1 to the DBI_RO_WR_EN bit of the
MISC_CONTROL_1_OFF register.
Table 10 describes the possible ways to access the controller registers in USP mode.
DBI Y Y Y Y Y Y
3.6.1 EP mode†
Base Address Registers (Offset: 0x100x24)
The controller provides three pairs of 32-bit BARs for each implemented function. Each pair (BARs 0 and 1, BARs 2 and 3, BARs
4 and 5) can be configured as follows:
• One 64-bit BAR: For example, BARs 0 and 1 are combined to form a single 64-bit BAR.
• Two 32-bit BARs: For example, BARs 0 and 1 are two independent 32-bit BARs.
• One 32-bit BAR: For example, BAR0 is a 32-bit BAR and BAR1 is either disabled or removed from the controller altogether
to reduce gate count.
Using MEM_FUNCN_BARn_TARGET_MAP, you can configure each BAR to have its matched requests routed to:
• 1: TRGT1 (or AXI master interface)
• 0: TRGT0 (to access internal port logic registers or your external application registers on the ELBI)
When a TLP is to be routed by its address, the address range in the BAR decides whether the TLP is rejected or accepted. When
the address is in the range configured in the BAR, the endpoint accepts the TLP and passes it to the application.
For information about routing requests to either TRGT1 or TRGT0 on a BAR-by-BAR basis, see Advanced filtering and routing of
TLPs†. For more information on BAR operation, see Receive routing†.
The following sections describe how to set up the BAR types and sizes by programming values into the base address registers.
x28
BAR0 Register
0
0
DBI write
0
0
write data 1 3:0
BAR0_ENABLED_0
1 RO(cs)
reset
DBI write to 0x10
*
dbi_cs
Figure 5. Fixed and programmable mask example for 32-bit memory BAR0
3.6.1.3 General rules for BAR setup (fixed mask or programmable mask schemes only)†
At runtime, software can overwrite the BAR contents to reconfigure the BARs (unless the affected BAR is removed during
hardware configuration). Software must observe the rules listed below when writing to the BARs. The rules for BAR configuration
are the same for all three pairs. Using BARs 0 and 1 as the example pair, the rules for BAR configuration are:
• Any pair (for example BARs 0 and 1) can be configured as one 64-bit BAR, two 32-bit BARs, or one 32-bit BAR.
• BAR pairs cannot overlap to form a 64-bit BAR. For example, you cannot combine BARs 1 and 2 to form a 64-bit BAR.
• Any 32-bit BAR that is not needed can be removed during controller hardware configuration to reduce gate count.
• An I/O BAR must be a 32-bit BAR and cannot be prefetchable.
• When the device is configured as a PCI Express endpoint (not a Legacy endpoint), then any memory that is configured as
prefetchable must be assigned to a 64-bit memory BAR.
• When BAR0 is configured as a 64-bit BAR:
— BAR1 is the upper 32 bits of the combined 64-bit BAR formed by BAR0 and BAR1. Therefore, BAR1 must be disabled
and cannot be configured independently.
— BAR0 must be a memory BAR and can be either prefetchable or non-prefetchable.
— The contents of the BAR0 mask register determine the number of writable bits in the 64-bit BAR, subject to the
restrictions described in BAR mask registers†. The BAR1 mask register contains the upper 32 bits of the BAR0
mask value.
— BAR0 can be disabled by writing 0 to bit [0] of the BAR0 mask register.
• When BAR0 is configured as a 32-bit BAR:
— You can configure BAR1 as an independent 32-bit BAR or remove BAR1 from the controller hardware configuration.
— BAR0 can be configured as a memory BAR or an I/O BAR.
— The contents of the BAR0 mask register determine the number of writable bits in the 32-bit BAR0, subject to the
restrictions described in BAR mask registers†.
— BAR0 can be disabled by writing 0 to bit [0] of the BAR0 mask register.
• When BAR0 is configured as a 32-bit BAR, BAR1 is available as an independent 32-bit BAR according to the following rules:
— BAR1 can be configured as a memory BAR or an I/O BAR.
— The contents of the BAR1 mask register determine the number of writable bits in the 32-bit BAR1, subject to the
restrictions described in BAR mask registers†.
— BAR1 can be disabled by writing 0 to bit [0] of the BAR1 mask register.
— When BAR1 is not required in your design, you can remove BAR1 from the hardware configuration by setting both
BAR1_ENABLED_N and BAR1_MASK_TYPE_N to 0.
The same rules apply for pairs 2/3 and 4/5.
3.6.2 RC mode†
Base Address Registers (Offset: 0x100x14)
Two BARs are present but are not expected to be used. You should disable them (see Disabling a BAR†) or else they will be
unnecessarily assigned memory during device enumeration. If you do use a BAR, then you should program it to capture TLPs that
are targeted to your local non-application memory space residing on TRGT1[1], and not for the application on TRGT1[2]. The BAR
range must be outside of the three Base/Limit regions. The controller provides one pair of 32-bit BARs (BAR0 and BAR1). The
BARs can be configured as follows:
• One 64-bit BAR: BAR0 and BAR1 are combined to form a single 64-bit BAR.
• Two 32-bit BARs: BAR0 and BAR1 are two independent 32-bit BARs.
• One 32-bit BAR: BAR0 is a 32-bit BAR and BAR1 is either disabled or removed from controller altogether to reduce gate count.
For information about routing requests to either TRGT1 or TRGT0 on a BAR-by-BAR basis, see Advanced filtering and routing of
TLPs†. For more information on BAR operation, see Receive routing†.
If you have configured (MEM_FUNCN_BARn_TARGET_MAP =0) any BAR to have its incoming requests routed to TRGT0 in ,
then you must disable1 that BAR (through a DBI write) when operating the controller in . See Disabling a BAR†.
The following sections describe how to set up the BAR types and sizes by programming values into the base address registers.
3.6.2.3 General rules for BAR setup (fixed mask or programmable mask schemes only)†
At runtime, application software can overwrite the BAR contents to reconfigure the BARs (unless the affected BAR is removed
during hardware configuration). Application software must observe the following rules when writing to the BARs:
• BAR0 and BAR1 can be configured as one 64-bit BAR, two 32-bit BARs, or one 32-bit BAR.
• Any 32-bit BAR that is not needed can be removed during controller hardware configuration to reduce gate count.
• An I/O BAR must be a 32-bit BAR and cannot be prefetchable.
• When BAR0 is configured as a 64-bit BAR:
— BAR1 is the upper 32 bits of the combined 64-bit BAR formed by BAR0 and BAR1. Therefore, BAR1 must be disabled
and cannot be configured independently.
— BAR0 must be a memory BAR and can be either prefetchable or non-prefetchable.
— The contents of the BAR0 mask register determine the number of writable bits in the 64-bit BAR, subject to the
restrictions described in BAR mask registers†. The BAR1 mask register contains the upper 32 bits of the BAR0
mask value.
— BAR0 can be disabled by writing 0 to bit [0] of the BAR0 mask register.
• When BAR0 is configured as a 32-bit BAR:
— You can configure BAR1 as an independent 32-bit BAR or remove BAR1 from the controller hardware configuration.
— BAR0 can be configured as a memory BAR or an I/O BAR.
— The contents of the BAR0 mask register determine the number of writable bits in the 32-bit BAR0, subject to the
restrictions described in BAR mask registers†.
— BAR0 can be disabled by writing 0 to bit [0] of the BAR0 mask register.
• When BAR0 is configured as a 32-bit BAR, BAR1 is available as an independent 32-bit BAR according to the following rules:
— BAR1 can be configured as a memory BAR or an I/O BAR.
— The contents of the BAR1 mask register determine the number of writable bits in the 32-bit BAR1, subject to the
restrictions described in BAR mask registers†.
— BAR1 can be disabled by writing 0 to bit [0] of the BAR1 mask register.
— When BAR1 is not required in your design, you can remove BAR1 from the hardware configuration by setting both
BAR1_ENABLED_0 and BAR1_MASK_TYPE_0 to 0.
In the field descriptions in this section, "sticky" means that the field is not initialized or modified by a hot reset or a Function-level
reset (FLR). See the PCIe base specification for a full description of FLR.
(In bits)
Ch BIST, Header Type, Latency Timer, And Cache Line Size 32 RW 0000_0000h
(BHTLCLS)
3Ch Max_Lat, Min_Gnt, Interrupt Pin, And Interrupt Line (MLMGIPIL) 32 RW 0000_01FFh
(In bits)
(In bits)
1A4h Error Injection Control 6 (Compare Point Header DWORD #0). 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H0_REG)
1A8h Error Injection Control 6 (Compare Point Header DWORD #1). 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H1_REG)
1ACh Error Injection Control 6 (Compare Point Header DWORD #2). 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H2_REG)
1B0h Error Injection Control 6 (Compare Point Header DWORD #3). 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H3_REG)
1B4h Error Injection Control 6 (Compare Value Header DWORD #0). 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H0_REG)
1B8h Error Injection Control 6 (Compare Value Header DWORD #1). 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H1_REG)
1BCh Error Injection Control 6 (Compare Value Header DWORD #2). 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H2_REG)
1C0h Error Injection Control 6 (Compare Value Header DWORD #3). 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H3_REG)
(In bits)
1C4h Error Injection Control 6 (Change Point Header DWORD #0). 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H0_REG)
1C8h Error Injection Control 6 (Change Point Header DWORD #1). 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H1_REG)
1CCh Error Injection Control 6 (Change Point Header DWORD #2). 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H2_REG)
1D0h Error Injection Control 6 (Change Point Header DWORD #3). 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H3_REG)
1D4h Error Injection Control 6 (Change Value Header DWORD #0). 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H0_REG)
1D8h Error Injection Control 6 (Change Value Header DWORD #1). 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H1_REG)
1DCh Error Injection Control 6 (Change Value Header DWORD #2). 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H2_REG)
1E0h Error Injection Control 6 (Change Value Header DWORD #3). 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H3_REG)
(In bits)
258h PCIe Extended Capability ID, Capability Version, And Next Capability 32 RO 0001_000Bh
Offset (RASDP_EXT_CAP_HDR_OFF)
264h Corrected error (1-bit ECC) counter selection and control 32 RW 0000_0010h
(RASDP_CORR_COUNTER_CTRL_OFF)
26Ch Uncorrected error (2-bit ECC and parity) counter selection and 32 RW 0000_0010h
control. (RASDP_UNCORR_COUNTER_CTRL_OFF)
270h Uncorrected error (2-bit ECC and parity) counter data. 32 RO 0000_0000h
(RASDP_UNCORR_COUNT_REPORT_OFF)
274h Error injection control for the following features: - 1-bit or 2- 32 RW 0000_0000h
bit injection - Continuous or fixed-number (n) injection modes -
Global enable/disable - Selectable location where injection occurs
(RASDP_ERROR_INJ_CTRL_OFF)
288h RAM Address where a corrected error (1-bit ECC) has been detected 32 RO 0000_0000h
(RASDP_RAM_ADDR_CORR_ERROR_OFF)
28Ch RAM Address where an uncorrected error (2-bit ECC) has been 32 RO 0000_0000h
detected (RASDP_RAM_ADDR_UNCORR_ERROR_OFF)
(In bits)
(In bits)
(In bits)
(In bits)
B24h CDM Register Checking First and Last address to check. 32 RW 0BFF_0000h
(PL_CHK_REG_START_END_OFF)
(In bits)
(In bits)
(In bits)
(In bits)
Offset
Register Offset
DEVICE_VENDOR_ID 0h
Function
This register is used to identify the device and the manufacturer of the device.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
NOTE
This register is writeable using internal PCIe_CTRLR_CONFIG_ADDR/ PCIe_CTRLR_CONFIG_DATA accesses,
but is read-only from inbound configuration accesses by an external host.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R DEVICE_ID
Reset u1 u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VENDOR_ID
Reset 0 0 0 1 1 0 0 1 0 1 0 1 0 1 1 1
Fields
Field Function
31-16 Device ID
DEVICE_ID Identifies the device ID. See the chip-specific SerDes information for this value.
15-0 Vendor ID
VENDOR_ID Identifies the manufacturer as allocated by the PCI-SIG consortium. On this chip, the vendor ID is 1957h.
Offset
Register Offset
COMMAND 4h
Function
This register controls the generation and response to PCIe cycles and the recording of status information for PCIe-related events.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
26-25 Reserved
Field Function
23-21 Reserved
20 Reserved
18-11 Reserved
10 Interrupt enable/disable
INT_EN Controls the ability of a Function to generate INTx emulation interrupts.
NOTE
Any INTx emulation interrupts already asserted by the Function must be deasserted when
this field is set. INTx interrupts use virtual wires that must, if asserted, be deasserted using
the appropriate Deassert_INTx message(s) when this field is set. Only the INTx virtual wire
interrupt(s) associated with the Function(s) for which this bit is set are affected.
9 Reserved
8 SERR# Enable
SERREN Controls the reporting of fatal and non-fatal errors detected by the device to the root complex. For more
details, see the "Error Registers" section of the PCIe Base Specification.
7 Reserved
5-3 Reserved
Field Function
2 Bus_Master_Enable
BUS_MASTER_ Bus Master Enable
EN
1 Memory_Space_Enable
MEM_SPACE_ Memory Space Enable
EN
0 I_O_Space_Enable
IO_SPACE_EN I/O Space Enable
Offset
Register Offset
CLASS_CODE_REVISIO 8h
N_ID
Function
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R BASE_CLASS_CODE SUBCLASS_CODE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PROGRAM_INTERFACE REVISION_ID
Reset 0 0 0 0 0 0 0 0 u1 u u u u u u u
Fields
Field Function
Field Function
BASE_CLASS_ This field contains a code that broadly classifies the type of operation the Function performs. Encodings
CODE for base class are provided in the PCI Code and ID Assignment Specification. All unspecified encodings
are Reserved.
This field is sticky.
7-0 Revision ID
REVISION_ID Identifies the revision ID. See the chip-specific SerDes information for this value.
3.7.5 BIST, Header Type, Latency Timer, And Cache Line Size (BHTLCLS)
Offset
Register Offset
BHTLCLS Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MULTI
R BIST HEADER_TYPE
_F...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
CACHE_LINE_SIZE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
23 Multi-function device
MULTI_FUNC Except where stated otherwise, program this field as follows:
• MULTI_FUNC=1 if you have multiple Functions
• MULTI_FUNC=0 if you have only one Function
This field is sticky.
0b - Software must not probe for Functions other than Function 0 unless explicitly indicated by
another mechanism, such as an ARI or SR-IOV capability structure.
1b - The device may contain multiple Functions. Software can probe for Functions other than
Function 0.
15-8 Reserved
Offset
Register Offset
BAR0 10h
Function
The core provides three pairs of 32-bit BAR for each implemented function. Each pair (BAR 0 and 1, BAR 2 and 3) can be
configured as follows:
• One 64-bit BAR: For example, BAR 0 and 1 are combined to form a single 64-bit BAR.
• Two 32-bit BAR: For example, BAR 0 and 1 are two independent 32-bit BARs.
• One 32-bit BAR: For example, BAR 0 is a 32-bit BAR and BAR 1 is disabled.
In addition, you can configure the BAR to have its incoming Requests routed to RXTGT1.
The following sections describe how to set up the BAR types and sizes by programming values into the base address registers.
At runtime, application software can overwrite the BAR contents to reconfigure the BAR. Application software must observe the
rules listed below when writing to the BARs.
The rules for BAR configuration are the same for all three pairs. Using BAR 0 and 1 as the example pair, the rules for BAR
configuration are:
• Any pair (for example, BAR 0 and 1) can be configured as one 64-bit BAR, two 32-bit BARs, or one 32-bit BAR.
• BAR pairs cannot overlap to form a 64-bit BAR. For example, you cannot combine BARs 1 and 2 to form a 64-bit BAR.
• An I/O BAR must be a 32-bit BAR and cannot be prefetchable.
• If the device is configured as a PCI Express Endpoint (not a Legacy Endpoint), then any memory that is configured as
prefetchable must be a 64-bit memory BAR.
• If BAR 0 is configured as a 64-bit BAR:
— BAR1 is the upper 32 bits of the combined 64-bit BAR formed by BAR 0 and 1.Therefore, BAR 1 must be disabled
and cannot be configured independently.
— BAR 1 is the upper 32 bits of the combined 64-bit BAR formed by BAR 0 and 1.
— BAR 0 must be a memory BAR and can be either prefetchable or non-prefetchable.
— The contents of the BAR 0 Mask register determine the number of writable bits in the 64-bit BAR, subject to the
restrictions described in BAR Mask Registers . The BAR 1 Mask register contains the upper 32 bits of the BAR 0
Mask value.
• If BAR 0 is configured as a 32-bit BAR:
— You can configure BAR 1 as an independent 32-bit BAR or remove BAR 1 from the core hardware configuration.
— BAR 0 can be configured as a memory BAR or an I/O BAR.
— The contents of the BAR 0 Mask register determine the number of writable bits in the 32-bit BAR 0, subject to the
restrictions described in BAR Mask Registers.
— BAR 0 can be disabled by writing 0 to bit 0 of the BAR 0 Mask register
• When BAR 0 is configured as a 32-bit BAR, BAR 1 is available as an independent 32-bit BAR according to the following
rules:
— BAR 1 can be configured as a memory BAR or an I/O BAR.
— The contents of the BAR 1 Mask register determine the number of writable bits in the 32-bit BAR 1, subject to the
restrictions described in BAR Mask Registers.
The same rules apply for pairs 2/3.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Mem_
R ADDRESS PREF
TYPE I_O
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0
Fields
Field Function
31-4 ADDRESS
ADDRESS BAR 0 base address bits (for a 64-bit BAR, the remaining upper address bits are in BAR 1). The BAR 0 Mask
value determines which address bits are masked.
3 PREF
PREF If BAR 0 is an I/O BAR, bit 3 is the second least significant bit of the base address.
NOTE
Bits [3:0] are writable internally but not externally.
2-1 TYPE
TYPE If BAR 0 is an I/O BAR, bit 2 the least significant bit of the base address and bit 1 is 0.
NOTE
Bits [3:0] are writable internally but not externally.
0 Mem_I_O
Mem_I_O NOTE
Bits [3:0] are writable internally but not externally.
Offset
Register Offset
BAR1 14h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 ADDRESS
ADDRESS BAR 1 contains the upper 32 bits of the
BAR 0 base address (bits [63:32]).
Offset
Register Offset
BAR2 18h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MEM_
R ADDRESS PREF
TYPE I_O
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-4 ADDRESS
ADDRESS BAR 2 base address bits (for a 64-bit BAR, the remaining upper address bits are in BAR 3). The BAR 2 Mask
value determines which address bits are masked.
3 PREF
PREF If BAR 2 is an I/O BAR, bit 3 is the second least significant bit of the base address.
NOTE
Bits [3:0] are writable internally but not externally.
2-1 TYPE
TYPE If BAR 2 is an I/O BAR, bit 2 the least significant bit of the base address and bit 1 is 0.
NOTE
Bits [3:0] are writable internally but not externally.
0 MEM_I_O
MEM_I_O NOTE
Bits [3:0] are writable internally but not externally.
Offset
Register Offset
BAR3 1Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-0 ADDRESS
ADDRESS BAR 3 bit definitions are the same as the BAR 2 bit definitions.
Offset
Register Offset
BAR4 20h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-4 ADDRESS
Field Function
ADDRESS BAR 4 base address bits (for a 64-bit BAR, the remaining upper address bits are in BAR 5). The BAR 4 Mask
value determines which address bits are masked.
3 PREF
PREF PREFETCHABLE4_N for memory BAR
0 for I/O BAR
If BAR 4 is an I/O BAR, bit 3 is the second least significant bit of the base address.
NOTE
Bits [3:0] are writable through the IDBI.
2-1 TYPE
TYPE BAR4_TYPE_N for memory BAR
If BAR 4 is an I/O BAR, bit 2 the least significant bit of the base address and bit 1 is 0.
NOTE
Bits [3:0] are writable through the IDBI.
0 MEM_I_O
MEM_I_O MEM4_SPACE_DECODER_N
NOTE
Bits [3:0] are writable through the IDBI.
Offset
Register Offset
BAR5 24h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ADDRESS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 ADDRESS
ADDRESS Configuration- dependent
If BAR 4 is a 64-bit BAR, BAR 5 contains the upper 32 bits of the BAR 4 base address (bits 63:32).
If BAR 4 is a 32-bit BAR, BAR 5 can be independently programmed as an additional 32-bit BAR or can be
excluded from the core hardware configuration.
If programmed as an independent 32-bit BAR, the BAR 5 bit definitions are the same as the BAR 4
bit definitions.
Offset
Register Offset
SSID 2Ch
Function
This register is used to uniquely identify the add-in card or subsystem where the PCIe component resides.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R SUBSYS_DEV_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R SUBSYS_VENDOR_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Subsystem ID
SUBSYS_DEV_ Subsystem ID
ID
Writable internally but not externally.
Offset
Register Offset
EROMBAR 30h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
ADDRESS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ENABL
ADDRESS Reserved
W E
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-11 ADDRESS
ADDRESS Expansion ROM Address
10-1 Reserved
0 ENABLE
ENABLE Expansion ROM Enable
Offset
Register Offset
EROMBARMASK 30h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
ROM_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ROM_
R
ROM_MASK BAR...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Field Function
Offset
Register Offset
CAPPR 34h
Function
Points to a linked list of capabilities implemented by a Function.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CAP_POINTER
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Offset
Register Offset
MLMGIPIL 3Ch
Function
This register:
• Communicates interrupt line routing information
• Identifies the legacy interrupt messages that the Function uses
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
INT_PIN INT_LINE
W
Reset 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1
Fields
Field Function
31-16 Reserved
15-8 INT_PIN
INT_PIN This field identifies the legacy interrupt messages that the Function uses. The valid values are:
• 00h: The Function doesn't use any legacy interrupt messages.
• 01h: Map to legacy interrupt messages for INTA.
• 02h: Map to legacy interrupt messages for INTB.
• 03h: Map to legacy interrupt messages for INTC.
• 04h: Map to legacy interrupt messages for INTD.
• 05h through FFh: Reserved.
PCIe defines one legacy interrupt message for a single-Function device and up to four legacy interrupt
messages for a multi-Function device. For a single-Function device, only INTA may be used. Any Function
on a multi-Function device can use any of the INTx messages. If a device implements a single legacy
Field Function
interrupt message, it must be INTA. If it implements two legacy interrupt messages, they must be INTA and
INTB; and so forth. For a multi-Function device, all Functions can use the same INTx message, each may
have its own (up to a maximum of four Functions), or any combination thereof. A single Function can never
generate an interrupt request on more than one INTx message.
Offset
Register Offset
PMCAP 40h
Function
Establishes the standard PCIe power management capability structure.
This capability is defined by the PCI Bus Power Management Interface Specification, Revision 1.2, available at https://pcisig.com.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
D2_SU D1_SU
R PME_SUPPORT AUX_CURR DSI 0 PM_SPEC_VER
PP... PP...
Reset 1 1 0 1 1 0 1 1 1 1 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PM_NEXT_POINTER PM_CAP_ID
Reset 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
Field Function
This field indicates the power states in which a Function can generate a power-management event (PME).
The individual bits within this field are associated with power states as shown below. A value of 1b for any
bit indicates that the Function is capable of asserting the PME signal in that power state. A value of 0b for
any bit indicates that the Function is not capable of asserting the PME signal in that power state .
• Bit 4 (leftmost in the register diagram): D3cold
• Bit 3: D3hot
• Bit 2: D2
• Bit 1: D1
• Bit 0 (rightmost in the register diagram): D0
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
26 D2 State Support
D2_SUPPORT Indicates whether the Function supports the D2 power management state.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
0b - The Function does not support the D2 power management state.
1b - The Function supports the D2 power management state.
25 D1 State Support
D1_SUPPORT Indicates whether the Function supports the D1 power management state.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
0b - The Function does not support the D1 power management state.
1b - The Function supports the D1 power management state.
21 Device-Specific Initialization
DSI Indicates whether special initialization of this function is required before the generic class device driver is
able to use it.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
0b - The Function does not require a device-specific initialization sequence after a transition to the
D0 uninitialized state.
1b - The Function requires a device-specific initialization sequence after a transition to the D0
uninitialized state.
20-19 Reserved
Field Function
Offset
Register Offset
PMCSR 44h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
BPCC_ B2_B3
R DATA 0
EN _S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PME_
R DATA_SCALE 0 PME_ 0 NO_S 0 POWER_STAT
STA...
ENA... OFT... E
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
Fields
Field Function
Field Function
DATA This field reports the state-dependent data requested by the DATA_SELECT field.
The DATA_SCALE field scales the value of the DATA field.
See the PCI Bus Power Management Interface Specification for a full explanation of how DATA,
DATA_SCALE, and DATA_SELECT interact.
22 B2/B3 support
B2_B3_SUPPO This field determines the action that occurs as a direct result of placing the Function in D3hot.
RT
This field is meaningful only when BPCC_EN=1.
0b - B3. When you place the bridge Function in D3hot, its secondary bus has its power removed
(B3).
1b - B2. When you place the bridge Function in D3hot, the PCI clock on its secondary bus stops
(B2).
21-16 Reserved
15 PME status
PME_STATUS PME Status
12-9 Reserved
8 PME# enable
PME_ENABLE This field controls whether the Function can or cannot assert PME#.
Field Function
If the function supports PME# from D3cold, then this field is sticky, and the operating system and must
explicitly program it to 0 every time the operating system initially loads.
Functions that do not support PME# generation from any D-state (that is,
PMCSR[PME_SUPPORT}=00000b) can hardwire this field to be read-only always returning a 0 when
read by system software.
This field is sticky.
0b - The Function cannot assert PME#.
1b - The Function can assert PME#.
7-4 Reserved
3 No Soft Reset
NO_SOFT_RST If PME is supported and enabled, and a system or bus segment causes a transition from from D3hot to D0,
the device returns to the "D0 Uninitialized" state, and preserves only the PME context.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
0b - Internal reset. The device performs an internal reset when it transitions from D3hot to D0 via
software control of the POWER_STATE field. Configuration context is lost when the soft reset
occurs. After the device transitions from the D3hot to the D0 state, it needs a full reinitialization
sequence to return to the "D0 initialized" state.
1b - No internal reset. The device does not perform an internal reset when it transitions from D3hot
to D0 via software control of the POWER_STATE field. Configuration Context is preserved. After
the device transitions from the D3hot to the "D0 Initialized" state, the operating system only needs
to program the POWER_STATE field to preserve configuration context.
2 Reserved
Offset
Register Offset
MSI_CIDNC 50h
Function
This register is supported only for EP mode.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CAP_NEXT_PTR CAP_ID
Reset 0 1 1 1 0 0 0 0 0 0 0 0 0 1 0 1
Fields
Field Function
31-27 Reserved
Field Function
16 MSI enable
ENABLE See the PCI Local Bus Specification for a full description of this field.
Field Function
Offset
Register Offset
MSI_MLADDR 54h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSG_LOWER_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
MSG_LOWER_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
1-0 Reserved
Offset
Register Offset
MSI_MUADDR_DATA 58h
Function
This register serves two purposes depending on the size of the MSI message:
• For a 32-bit message, this register contains message data.
• For a 64-bit message, this register contains the upper address of the message.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EMDATA_UADDRU
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DATA_UADDRL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
MSI_DATA_MASK 5Ch
Function
This register serves two purposes depending on the size of the MSI message:
• For a 32-bit message, and when PVM is enabled, this register contains mask bits.
• For a 64-bit message, this register contains message data.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DATA_UMB
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DATA_LMB
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
MSI_PEND_MASK_BITS 60h
Function
This register serves two purposes depending on the size of the MSI message:
• For a 32-bit message, this register contains pending bits.
• For a 64-bit message, this register contains mask bits.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PEND_MASK_BITS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PEND_MASK_BITS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
MSI_PEND_BITS 64h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PEND_BITS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PEND_BITS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
CINCPCR 70h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
SLOT_
R 0 INT_MSG_NUM DEV_PORT_TYPE CAP_VERSION
IMP
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CAP_NEXT_PTR CAP_ID
Reset 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
31-30 Reserved
Field Function
Offset
Register Offset
DEV_CAPABILITIES 74h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
FLR_
R 0 CSPLS CSPLV 0
CAP
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1
Fields
Field Function
31-29 Reserved
17-16 Reserved
14-12 Reserved
Field Function
Field Function
Offset
Register Offset
DEV_CONTROL_STATU 78h
S
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
TRAN
R 0 APD URD FED NFED CED
S_P...
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
EN_N
R INITIA PHAN EXT_T EN_R
MAX_READ_REQ_SIZE O_S... APE MAX_PAYLOAD_SIZE URR FER NFER CER
T... TOM... AG... EL_...
W
Reset 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
31-22 Reserved
21 TP
TRANS_PENDI Transactions pending
NG
0b - All outstanding non-posted requests have completed, or the completion-timeout mechanism
has terminated these requests.
1b - The Function has issued non-posted requests that have not yet completed.
15 Initiate FLR
INITIATE_FLR Program INITIATE_FLR=1 to initiate an FLR for the Function.
INITIATE_FLR always reads 0.
Field Function
11 Enable no snoop
EN_NO_SNOO See the PCIe base specification for a full description of this field.
P
Field Function
NFER See the PCIe base specification for a full description of this field.
Offset
Register Offset
LINK_CAPABILITIES 7Ch
Function
Identifies PCIe link-specific capabilities.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
CLOC L1_EXIT_LATE
R PORT_NUM 0 1 0
K_P... NCY
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
L1_EXI ASPM_SUPPO
R L0S_EXIT_LATENCY MAX_LINK_WIDTH MAX_LINK_SPEED
T... RT
Reset 0 1 1 0 1 0 0 0 0 0 1 0 0 0 1 1
Fields
Field Function
23 Reserved
22 Reserved
Field Function
21-19 Reserved
Field Function
The encoded value specifies a bit location in the SUPPORTED_LINK_SPEED_VECTOR field in Link
capabilities 2 (LINK_CAPABILITIES_2) that corresponds to the maximum Link speed.
This field is sticky.
0001b - SUPPORTED_LINK_SPEED_VECTOR field bit 0
0010b - SUPPORTED_LINK_SPEED_VECTOR field bit 1
0011b - SUPPORTED_LINK_SPEED_VECTOR field bit 2
0100b - SUPPORTED_LINK_SPEED_VECTOR field bit 3
0101b - SUPPORTED_LINK_SPEED_VECTOR field bit 4
0110b - SUPPORTED_LINK_SPEED_VECTOR field bit 5
0111b - SUPPORTED_LINK_SPEED_VECTOR field bit 6
All other values are reserved.
Offset
Register Offset
LINK_CONTROL_STAT 80h
US
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
DLL_A SLOT_
R 0 0 NEGO_LINK_WIDTH LINK_SPEED
CT... CL...
Reset 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-30 Reserved
Field Function
27-26 Reserved
Field Function
15-10 Reserved
7 Extended synch
EXTENDED_S See the PCIe base specification for a full description of this field.
YNCH
5-4 Reserved
2 Reserved
Offset
Register Offset
DEVICE_CAPABILITIES 94h
2_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_CAP2_L PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_CAP_CPL_TIMEOUT_RAN
R
N_SY... CA... CA... CA... CA... CA... CA... CA... CA... CA... CA... GE
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
Fields
Field Function
31-20 Reserved
19-18 (OBFF) Optimized Buffer Flush/fill Supported. For a description of this standard PCIe register field, see
the PCI Express Specification.
PCIE_CAP_OB
FF_SUPPORT
17 10-Bit Tag Requester Supported. For a description of this standard PCIe register field, see the PCI
Express Base Specification 4.0.
PCIE_CAP2_10
_BIT_TAG_RE
Q_SUPPORT
16 10-Bit Tag Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Base Specification 4.0.
PCIE_CAP2_10
_BIT_TAG_CO
MP_SUPPORT
Field Function
15-14 LN System CLS. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: This register field is sticky.
PCIE_CAP2_LN
_SYS_CLS
13 TPH Completer Supported Bit 1. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_TP
H_CMPLT_SUP
PORT_1
12 TPH Completer Supported Bit 0. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_TP
H_CMPLT_SUP
PORT_0
11 LTR Mechanism Supported. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_LT
R_SUPP
10 No Relaxed Ordering Enabled PR-PR Passing. For a description of this standard PCIe register field, see
the PCI Express Specification.
PCIE_CAP_NO
_RO_EN_PR2P
R_PAR
9 128 Bit CAS Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_128
_CAS_CPL_SU
PP
8 64 Bit AtomicOp Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_64_
ATOMIC_CPL_
SUPP
7 32 Bit AtomicOp Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_32_
ATOMIC_CPL_
SUPP
6 Atomic Operation Routing Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_AT
OMIC_ROUTIN
G_SUPP
5 ARI Forwarding Supported. For a description of this standard PCIe register field, see the PCI Express
Specification.
Field Function
PCIE_CAP_ARI
_FORWARD_S
UPPORT
4 Completion Timeout Disable Supported. For a description of this standard PCIe register field, see the
PCI Express Specification.
PCIE_CAP_CP
L_TIMEOUT_DI
SABLE_SUPPO
RT
3-0 Completion Timeout Ranges Supported. For a description of this standard PCIe register field, see the
PCI Express Specification.
PCIE_CAP_CP
L_TIMEOUT_R
ANGE
Offset
Register Offset
DEVICE_CONTROL2_D 98h
EVICE_STATUS2_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_
R 0 PCIE_ PCIE_CAP_CPL_TIMEOUT_VAL
CA...
CA... UE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
Offset
Register Offset
LINK_CAPABILITIES_2 9Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
CROS
R 0 SUPPORT_LINK_SPEED_VECTOR 0
SLI...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
Fields
Field Function
31-9 Reserved
8 Crosslink supported
CROSSLINK_S See the PCIe base specification for a full description of this field.
UPPORTED
The meaning of CROSSLINK_SUPPORTED=0 depends on the port speed:
• On a port that supports Link speeds of 8.0 GT/s or higher, the value of 0 means the associated Port
does not support crosslinks.
• On a port that only supports Link speeds of 2.5 GT/s or 5.0 GT/s, the value of 0 provides no
information regarding the port's level of crosslink support.
0b - The meaning depends on the port speed as described above.
1b - The associated port supports crosslinks.
7-1 Support_Link_Speed_Vector
SUPPORT_LIN This field indicates the supported link speeds of the associated port. For each bit:
K_SPEED_VEC
• A value of 0 indicates that the corresponding link speed is not supported.
TOR
• A value of 1 indicates that the corresponding link speed is supported.
The bit definitions within this field are:
Bit 0: 2.5 GT/s
Bit 1: 5.0 GT/s
Bit 2: 8.0 GT/s
Bits 3-6: Reserved
0 Reserved
Offset
Register Offset
LINK_CONTROL2_LINK A0h
_STATUS2_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_
R PCIE_CAP_COMPLIANCE_PRES PCIE_ PCIE_ PCIE_ PCIE_ PCIE_CAP_TARGET_LINK_SPEE
PCIE_CAP_TX_MARGIN CA...
ET CA... CA... CA... CA... D
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Fields
Field Function
27-22 Reserved
Field Function
Field Function
Offset
Register Offset
PCI_MSIX_CAP_ID_NEX B0h
T_CTRL_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W SI... SI...
Reset 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSIX_CAP_NEXT_OFFSET PCI_MSIX_CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1
Fields
Field Function
31 MSI-X Enable
PCI_MSIX_ENA For a description of this standard PCIe register field, see the PCI Express Specification.
BLE
30 Function Mask
PCI_MSIX_FUN For a description of this standard PCIe register field, see the PCI Express Specification. Note: The
CTION_MASK access attributes of this field are as follows: - Wire: R/W
29-27 Reserved
Offset
Register Offset
MSIX_TABLE_OFFSET_ B4h
REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PCI_MSIX_TABLE_OFFSET
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSIX_TABLE_OFFSET PCI_MSIX_BIR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
MSI-X Table Offset. For a description of this standard PCIe register field, see the PCI Express
31-3
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
PCI_MSIX_TAB field is sticky.
LE_OFFSET
2-0MSI-X Table Bar Indicator Register Field. For a description of this standard PCIe register field, see the
PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note:
PCI_MSIX_BIR This register field is sticky.
Offset
Register Offset
MSIX_PBA_OFFSET_R B8h
EG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PCI_MSIX_PBA_OFFSET
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSIX_PBA_OFFSET PCI_MSIX_PBA
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
MSI-X PBA Offset. For a description of this standard PCIe register field, see the PCI Express
31-3
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
PCI_MSIX_PBA field is sticky.
_OFFSET
2-0 MSI-X PBA BIR. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register field is sticky.
PCI_MSIX_PBA
Offset
Register Offset
AER_EXT_CAP_HDR_O 100h
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP_VERSION
Reset 0 0 0 1 0 1 0 0 1 0 0 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register field, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
NEXT_OFFSET field is sticky.
Capability Version. For a description of this standard PCIe register field, see the PCI Express
19-16
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
CAP_VERSION field is sticky.
15-0 AER Extended Capability ID. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
CAP_ID field is sticky.
Offset
Register Offset
UNCORR_ERR_STATU 104h
S_OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-26 Reserved
25 TLP Prefix Blocked Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: Not supported.
TLP_PRFX_BL
OCKED_ERR_
STATUS
24-23 Reserved
21 Reserved
20 Unsupported Request Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
UNSUPPORTE
D_REQ_ERR_S
TATUS
19 ECRC Error Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
ECRC_ERR_ST
ATUS
Field Function
18 Malformed TLP Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
MALF_TLP_ER
R_STATUS
17 Receiver Overflow Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
REC_OVERFL
OW_ERR_STA
TUS
16 Unexpected Completion Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
UNEXP_CMPL
T_ERR_STATU
S
15 Completer Abort Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
CMPLT_ABOR
T_ERR_STATU
S
14 Completion Timeout Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
CMPLT_TIMEO
UT_ERR_STAT
US
13 Flow Control Protocol Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
FC_PROTOCO
L_ERR_STATU
S
12 Poisoned TLP Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
POIS_TLP_ER
R_STATUS
11-6 Reserved
5 Surprise Down Error Status (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification.
SURPRISE_DO
WN_ERR_STA
TUS
4 Data Link Protocol Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
Field Function
DL_PROTOCO
L_ERR_STATU
S
3-0 Reserved
Offset
Register Offset
UNCORR_ERR_MASK_ 108h
OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
TLP_P ATOMI
R 0 0 INTER 0 UNSU ECRC MALF_ REC_ UNEX
RF... C_...
NA... PPO... _ER... TL... OVE... P_C...
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SURP
R CMPL CMPL FC_PR POIS_ 0 DL_PR 0
RIS...
T_A... T_T... OT... TL... OT...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-26 Reserved
25 TLP Prefix Blocked Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: Not supported. Note: The access attributes of this field are as follows: -
Wire: R/W (sticky) Note: This register field is sticky.
Field Function
TLP_PRFX_BL
OCKED_ERR_
MASK
24 AtomicOp Egress Block Mask (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
ATOMIC_EGRE
SS_BLOCKED_
ERR_MASK
23 Reserved
22 Uncorrectable Internal Error Mask (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
INTERNAL_ER
R_MASK
21 Reserved
20 Unsupported Request Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
UNSUPPORTE
D_REQ_ERR_
MASK
19 ECRC Error Mask (Optional). For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: R/W (sticky) Note: This
ECRC_ERR_M register field is sticky.
ASK
18 Malformed TLP Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
MALF_TLP_ER
R_MASK
17 Receiver Overflow Mask (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
REC_OVERFL
OW_ERR_MAS
K
16 Unexpected Completion Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
UNEXP_CMPL
T_ERR_MASK
15 Completer Abort Error Mask (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CMPLT_ABOR
T_ERR_MASK
Field Function
14 Completion Timeout Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CMPLT_TIMEO
UT_ERR_MAS
K
13 Flow Control Protocol Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
FC_PROTOCO
L_ERR_MASK
12 Poisoned TLP Error Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
POIS_TLP_ER
R_MASK
11-6 Reserved
5 Surprise Down Error Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
SURPRISE_DO
WN_ERR_MAS
K
4 Data Link Protocol Error Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
DL_PROTOCO
L_ERR_MASK
3-0 Reserved
Offset
Register Offset
UNCORR_ERR_SEV_O 10Ch
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
TLP_P ATOMI
R 0 0 INTER 0 UNSU ECRC MALF_ REC_ UNEX
RF... C_...
NA... PPO... _ER... TL... OVE... P_C...
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SURP
R CMPL CMPL FC_PR POIS_ 0 DL_PR 0
RIS...
T_A... T_T... OT... TL... OT...
W
Reset 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0
Fields
Field Function
31-26 Reserved
TLP Prefix Blocked Error Severity (Optional). For a description of this standard PCIe register field, see
25
the PCI Express Specification. Note: Not supported. Note: The access attributes of this field are as
TLP_PRFX_BL follows: - Wire: R/W (sticky) Note: This register field is sticky.
OCKED_ERR_
SEVERITY
AtomicOp Egress Blocked Severity (Optional). For a description of this standard PCIe register field,
24
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: R/W
ATOMIC_EGRE (sticky) Note: This register field is sticky.
SS_BLOCKED_
ERR_SEVERIT
Y
23 Reserved
22 Uncorrectable Internal Error Severity (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
INTERNAL_ER
R_SEVERITY
21 Reserved
20 Unsupported Request Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
UNSUPPORTE
D_REQ_ERR_S
EVERITY
Field Function
19 ECRC Error Severity (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: R/W (sticky) Note:
ECRC_ERR_S This register field is sticky.
EVERITY
18 Malformed TLP Severity. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
MALF_TLP_ER
R_SEVERITY
17 Receiver Overflow Error Severity (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
REC_OVERFL
OW_ERR_SEV
ERITY
16 Unexpected Completion Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
UNEXP_CMPL
T_ERR_SEVER
ITY
15 Completer Abort Error Severity (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
CMPLT_ABOR
T_ERR_SEVER
ITY
14 Completion Timeout Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CMPLT_TIMEO
UT_ERR_SEVE
RITY
13 Flow Control Protocol Error Severity (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
FC_PROTOCO
L_ERR_SEVER
ITY
12 Poisoned TLP Severity. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
POIS_TLP_ER
R_SEVERITY
11-6 Reserved
5 Surprise Down Error Severity (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
SURPRISE_DO
WN_ERR_SVRI
TY
Field Function
4 Data Link Protocol Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
DL_PROTOCO
L_ERR_SEVER
ITY
3-0 Reserved
Offset
Register Offset
CORR_ERR_STATUS_ 110h
OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
15 Header Log Overflow Error Status (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification.
Field Function
HEADER_LOG
_OVERFLOW_
STATUS
14 Corrected Internal Error Status (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification.
CORRECTED_I
NT_ERR_STAT
US
12 Replay Timer Timeout Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
RPL_TIMER_TI
MEOUT_STAT
US
11-9 Reserved
8 REPLAY_NUM Rollover Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
REPLAY_NO_R
OLEOVER_ST
ATUS
7 Bad DLLP Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
BAD_DLLP_ST
ATUS
6 Bad TLP Status. For a description of this standard PCIe register field, see the PCI Express Specification.
BAD_TLP_STA
TUS
5-1 Reserved
0 Receiver Error Status (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification.
RX_ERR_STAT
US
Offset
Register Offset
CORR_ERR_MASK_OF 114h
F
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
15 Header Log Overflow Error Mask (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
HEADER_LOG
_OVERFLOW_
MASK
14 Corrected Internal Error Mask (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
CORRECTED_I
NT_ERR_MAS
K
13 Advisory Non-Fatal Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
ADVISORY_NO
N_FATAL_ERR
_MASK
Field Function
12 Replay Timer Timeout Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
RPL_TIMER_TI
MEOUT_MASK
11-9 Reserved
8 REPLAY_NUM Rollover Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
REPLAY_NO_R
OLEOVER_MA
SK
7 Bad DLLP Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
BAD_DLLP_MA
SK
6 Bad TLP Mask. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: This register field is sticky.
BAD_TLP_MAS
K
5-1 Reserved
0 Receiver Error Mask (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
RX_ERR_MAS
K
Offset
Register Offset
ADV_ERR_CAP_CTRL_ 118h
OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0
Fields
Field Function
31-11 Reserved
10 Multiple Header Recording Enable. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
MULTIPLE_HE
ADER_EN
9 Multiple Header Recording Capable. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
MULTIPLE_HE
ADER_CAP
8 ECRC Check Enable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_CHECK
_EN
7 ECRC Check Capable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_CHECK
_CAP
6 ECRC Generation Enable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_GEN_E
N
5 ECRC Generation Capable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_GEN_C
AP
4-0 First Error Pointer. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
FIRST_ERR_P
OINTER
Offset
Register Offset
HDR_LOG_0_OFF 11Ch
Function
Header Log Register 0. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R FIRST_DWORD_FOURTH_BYTE FIRST_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FIRST_DWORD_SECOND_BYTE FIRST_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_FOURTH_BY
TE
23-16 Byte 2 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_THIRD_BYT
E
15-8 Byte 1 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_SECOND_B
YTE
7-0 Byte 0 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_FIRST_BYTE
Offset
Register Offset
HDR_LOG_1_OFF 120h
Function
Header Log Register 1. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R SECOND_DWORD_FOURTH_BYTE SECOND_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R SECOND_DWORD_SECOND_BYTE SECOND_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_FOURTH_
BYTE
23-16 Byte 2 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_THIRD_BY
TE
15-8 Byte 1 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_SECOND_
BYTE
7-0 Byte 0 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_FIRST_BY
TE
Offset
Register Offset
HDR_LOG_2_OFF 124h
Function
Header Log Register 2. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R THIRD_DWORD_FOURTH_BYTE THIRD_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R THIRD_DWORD_SECOND_BYTE THIRD_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_FOURTH_BY
TE
23-16 Byte 2 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_THIRD_BYT
E
15-8 Byte 1 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_SECOND_B
YTE
7-0 Byte 0 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_FIRST_BYTE
Offset
Register Offset
HDR_LOG_3_OFF 128h
Function
Header Log Register 3. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R FOURTH_DWORD_FOURTH_BYTE FOURTH_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FOURTH_DWORD_SECOND_BYTE FOURTH_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_FOURTH_
BYTE
23-16 Byte 2 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_THIRD_BY
TE
15-8 Byte 1 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_SECOND_
BYTE
7-0 Byte 0 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_FIRST_BY
TE
Offset
Register Offset
TLP_PREFIX_LOG_1_O 138h
FF
Function
TLP Prefix Log Register 1. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_1_FOURTH_BYTE CFG_TLP_PFX_LOG_1_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_1_SECOND_BYTE CFG_TLP_PFX_LOG_1_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_FOUR
TH_BYTE
23-16 Byte 2 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_THIRD
_BYTE
15-8 Byte 1 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_SECO
ND_BYTE
7-0 Byte 0 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_FIRST
_BYTE
Offset
Register Offset
TLP_PREFIX_LOG_2_O 13Ch
FF
Function
TLP Prefix Log Register 2. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_2_FOURTH_BYTE CFG_TLP_PFX_LOG_2_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_2_SECOND_BYTE CFG_TLP_PFX_LOG_2_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_FOUR
TH_BYTE
23-16 Byte 2 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_THIRD
_BYTE
15-8 Byte 1 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_SECO
ND_BYTE
7-0 Byte 0 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_FIRST
_BYTE
Offset
Register Offset
TLP_PREFIX_LOG_3_O 140h
FF
Function
TLP Prefix Log Register 3. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_3_FOURTH_BYTE CFG_TLP_PFX_LOG_3_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_3_SECOND_BYTE CFG_TLP_PFX_LOG_3_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_FOUR
TH_BYTE
23-16 Byte 2 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_THIRD
_BYTE
15-8 Byte 1 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_SECO
ND_BYTE
7-0 Byte 0 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_FIRST
_BYTE
Offset
Register Offset
TLP_PREFIX_LOG_4_O 144h
FF
Function
TLP Prefix Log Register 4. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_4_FOURTH_BYTE CFG_TLP_PFX_LOG_4_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_4_SECOND_BYTE CFG_TLP_PFX_LOG_4_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_FOUR
TH_BYTE
23-16 Byte 2 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_THIRD
_BYTE
15-8 Byte 1 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_SECO
ND_BYTE
7-0 Byte 0 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_FIRST
_BYTE
Offset
Register Offset
SPCIE_CAP_HEADER_ 148h
REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP_VERSION
Reset 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EXTENDED_CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register field, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
NEXT_OFFSET field is sticky.
Capability Version. For a description of this standard PCIe register field, see the PCI Express
19-16
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
CAP_VERSION field is sticky.
15-0 Secondary PCI Express Extended Capability ID. For a description of this standard PCIe register field,
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: R
EXTENDED_C (sticky) Note: This register field is sticky.
AP_ID
Offset
Register Offset
LINK_CONTROL3_REG 14Ch
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
EQ_R PERF
R 0
EQ_... ORM...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 Reserved
0 Perform equalization
PERFORM_EQ For a description of this standard PCIe register field, see the PCI Express Specification.
The access attributes of this field are as follows:
- Wire: RSVDP
Offset
Register Offset
LANE_ERR_STATUS_R 150h
EG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LANE_ERR_ST
R 0
ATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 Reserved
1-0 Lane Error Status Bits per Lane. For a description of this standard PCIe register field, see the PCI
Express Specification.
LANE_ERR_ST
ATUS
Offset
Register Offset
SPCIE_CAP_OFF_0CH_ 154h
REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
USP_RX_PRESET_HINT DSP_RX_PRESET_HINT
R 0 USP_TX_PRESET1 0 DSP_TX_PRESET1
1 1
Reset 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
USP_RX_PRESET_HINT DSP_RX_PRESET_HINT
R 0 USP_TX_PRESET0 0 DSP_TX_PRESET0
0 0
Reset 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
23 Reserved
15 Reserved
Field Function
7 Reserved
Offset
Register Offset
RAS_DES_CAP_HEADE 158h
R_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP_VERSION
Reset 0 0 1 0 0 1 0 1 1 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EXTENDED_CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register field, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
NEXT_OFFSET field is sticky.
Capability Version. For a description of this standard PCIe register field, see the PCI Express
19-16
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
CAP_VERSION field is sticky.
15-0 PCI Express Extended Capability ID. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note:
EXTENDED_C This register field is sticky.
AP_ID
Offset
Register Offset
VENDOR_SPECIFIC_H 15Ch
EADER_REG
Function
Vendor-Specific Header. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VSEC_LENGTH VSEC_REV
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VSEC_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
31-20 VSEC Length. For a description of this standard PCIe register field, see the PCI Express Specification.
VSEC_LENGT
H
19-16 VSEC Rev. For a description of this standard PCIe register field, see the PCI Express Specification.
VSEC_REV
15-0 VSEC ID. For a description of this standard PCIe register field, see the PCI Express Specification.
VSEC_ID
Offset
Register Offset
EVENT_COUNTER_CO 160h
NTROL_REG
Function
This is a viewport control register.
• Setting the EVENT_COUNTER_EVENT_SELECT and EVENT_COUNTER_LANE_SELECT fields in this register
determine the Event Counter data returned by the EVENT_COUNTER_DATA_REG viewport register.
• Setting the EVENT_COUNTER_ENABLE field in this register enables the Event Counter selected by the
EVENT_COUNTER_EVENT_SELECT and EVENT_COUNTER_LANE_SELECT fields in this register.
• Setting the EVENT_COUNTER_CLEAR field in this register clears the Event Counter selected by the
EVENT_COUNTER_EVENT_SELECT and EVENT_COUNTER_LANE_SELECT fields in this register.
• Reading the EVENT_COUNTER_STATUS field in this register returns the Enable status of the Event Counter selected by
the EVENT_COUNTER_EVENT_SELECT and EVENT_COUNTER_LANE_SELECT fields in this register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
EVENT_COUNTER_EVENT_SELECT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
EVEN
R 0 0
EVENT_COUNTER_LANE_SELE T_C...
CT EVENT_COUNTER_ENA EVENT_COUN
W
BLE TER_C...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
15-12 Reserved
Event Counter Lane Select. This field in conjunction with EVENT_COUNTER_EVENT_SELECT indexes
11-8
the Event Counter data returned by the EVENT_COUNTER_DATA_REG register. - 0x0: Lane0 - 0x1:
EVENT_COUN Lane1 - 0x2: Lane2 - .. - 0xF: Lane15 Note: This register field is sticky.
TER_LANE_SE
LECT
Field Function
Event Counter Status. This register returns the current value of the Event Counter selected by the
7
following fields: - EVENT_COUNTER_EVENT_SELECT - EVENT_COUNTER_LANE_SELECT Note:
EVENT_COUN This register field is sticky.
TER_STATUS
6-5 Reserved
Event Counter Clear. Clears the Event Counter selected by the EVENT_COUNTER_EVENT_SELECT
1-0
and EVENT_COUNTER_LANE_SELECT fields in this register. You can clear the value of a specific
EVENT_COUN Event Counter by writing the 'per clear' code and you can clear all event counters at once by writing the
TER_CLEAR 'all clear' code. The read value is always '0'. - 00: no change - 01: per clear - 10: no change - 11: all clear
- Other: reserved
Offset
Register Offset
EVENT_COUNTER_DA 164h
TA_REG
Function
This viewport register returns the data selected by the following fields: - EVENT_COUNTER_EVENT_SELECT in
EVENT_COUNTER_CONTROL_REG - EVENT_COUNTER_LANE_SELECT in EVENT_COUNTER_CONTROL_REG For
more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R EVENT_COUNTER_DATA
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EVENT_COUNTER_DATA
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Event Counter Data. This register returns the data selected by the following
31-0
fields: - EVENT_COUNTER_EVENT_SELECT in EVENT_COUNTER_CONTROL_REG -
EVENT_COUN EVENT_COUNTER_LANE_SELECT in EVENT_COUNTER_CONTROL_REG Note: This register field is
TER_DATA sticky.
Offset
Register Offset
TIME_BASED_ANALYSI 168h
S_CONTROL_REG
Function
Controls the measurement of RX/TX data throughput and time spent in each low-power LTSSM state. For more details, see RAS
Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
TIME_BASED_REPORT_SELECT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 TIMER
TIME_BASED_DURATION_SELECT
W _S...
Reset 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
23-16 Reserved
7-1 Reserved
Field Function
0 Timer Start
TIMER_START This field returns to 0 automatically when the measurement finishes.
The app_ras_des_tba_ctrl input also sets the contents of this field and controls the measurement start/stop.
This field has no effect when TIME_BASED_DURATION_SELECT=0b. Instead, use the procedure
described in TIME_BASED_DURATION_SELECT.
This field is sticky.
0b - Stop
1b - Start/restart
Offset
Register Offset
TIME_BASED_ANALYSI 16Ch
S_DATA_REG
Function
Contains the measurement results of RX/TX data throughput and time spent in each low-power LTSSM state.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R TIME_BASED_ANALYSIS_DATA
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TIME_BASED_ANALYSIS_DATA
Reset 0 0 0 0 0 0 1 1 1 1 1 0 1 0 0 0
Fields
Field Function
Field Function
Offset
Register Offset
EINJ_ENABLE_REG 188h
Function
Each type of error insertion is enabled by the corresponding bit in this register. The specific injection controls for each type of error
are defined in the following registers:
• 0: CRC Error: EINJ0_CRC_REG
• 1: Sequence Number Error: EINJ1_SEQNUM_REG
• 2: DLLP Error: EINJ2_DLLP_REG
• 3: Symbol DataK Mask Error or Sync Header Error: EINJ3_SYMBOL_REG
• 4: FC Credit Update Error: EINJ4_FC_REG
• 5: TLP Duplicate/Nullify Error: EINJ5_SP_TLP_REG
• 6: Specific TLP Error: EINJ6_COMPARE_*_REG/EINJ6_CHANGE_*_REG/EINJ6_TLP_REG
After the errors have been inserted by controller, it will clear each bit here.
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-7 Reserved
6 Reserved
5 Error Injection5 Enable (TLP Duplicate/Nullify Error). Enables insertion of duplicate/nullified TLPs. For
more details, see the EINJ5_SP_TLP_REG register. Note: This register field is sticky.
ERROR_INJEC
TION5_ENABL
E
4 Error Injection4 Enable (FC Credit Update Error). Enables insertion of errors into UpdateFCs. For more
details, see the EINJ4_FC_REG register. Note: This register field is sticky.
ERROR_INJEC
TION4_ENABL
E
3 Error Injection3 Enable (Symbol DataK Mask Error or Sync Header Error). Enables DataK masking of
special symbols or the breaking of the sync header. For more details, see the EINJ3_SYMBOL_REG
ERROR_INJEC register. Note: This register field is sticky.
TION3_ENABL
E
2 Error Injection2 Enable (DLLP Error). Enables insertion of DLLP errors. For more details, see the
EINJ2_DLLP_REG register. Note: This register field is sticky.
ERROR_INJEC
TION2_ENABL
E
1 Error Injection1 Enable (Sequence Number Error). Enables insertion of errors into sequence numbers.
For more details, see the EINJ1_SEQNUM_REG register. Note: This register field is sticky.
ERROR_INJEC
TION1_ENABL
E
0 Error Injection0 Enable (CRC Error). Enables insertion of errors into various CRC. For more details, see
the EINJ0_CRC_REG register. Note: This register field is sticky.
ERROR_INJEC
TION0_ENABL
E
Offset
Register Offset
EINJ0_CRC_REG 18Ch
Function
Error Injection Control 0 (CRC Error). Controls the insertion of errors into the CRC, and parity of ordered sets for the selected
type of the packets as follows: - LCRC. Bad TLP will be detected at the receiver side; receiver responds with NAK DLLP;
Data Link Retry starts. - 16-bit CRC of ACK/NAK DLLPs. Bad DLLP occurs at the receiver side; Replay NUM Rollover occurs.
- 16-bit CRC of UpdateFC DLLPs. Error insertion continues for the specific time; LTSSM transitions to the Recovery state
because of the UpdateFC timeout (if the timeout is implemented at the receiver of the UpdateFCs). - ECRC. If ECRC check
is enabled, ECRC error is detected at the receiver side. - FCRC. Framing error will be detected, TLP is discarded, and
the LTSSM transitions to Recovery state. - Parity of TSOS. Error insertion continues for the specific time; LTSSM Recovery/
Configuration timeout will occur. - Parity of SKPOS. Lane error will be detected at the receiver side.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
EINJ0_CRC_TYPE EINJ0_COUNT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Reserved
Error injection type. Selects the type of CRC error to be inserted. Tx Path - 0000b: New TLP's LCRC
11-8
error injection - 0001b: 16bCRC error injection of ACK/NAK DLLP - 0010b: 16bCRC error injection of
EINJ0_CRC_TY Update-FC DLLP - 0011b: New TLP's ECRC error injection - 0100b: TLP's FCRC error injection (128b/
PE 130b) - 0101b: Parity error of TSOS (128b/130b) - 0110b: Parity error of SKPOS (128b/130b) Rx Path -
1000b: LCRC error injection - 1011b: ECRC error injection - Others: Reserved Note: This register field is
sticky.
Error injection count. Indicates the number of errors. This register is decremented when the errors have
7-0
been inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION0_ENABLE in
EINJ0_COUNT EINJ_ENABLE_REG returns 0b. - If the counter value is 0x00 and ERROR_INJECTION0_ENABLE=1,
the errors are inserted until ERROR_INJECTION0_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ1_SEQNUM_REG 190h
Function
Controls the sequence number of the specific TLPs and ACK/NAK DLLPs. Data Link Protocol Error will be detected at the Rx
side of ACK/NAL DLLPs when one of these conditions is true: - ((NEXT_TRANSMIT_SEQ -1) - AckNak_Seq_Num) mod 4096
> 2048 - (AckNak_Seq_Num - ACKD_SEQ) mod 4096 >= 2048 TLP is treated as Duplicate TLP at the Rx side when all these
conditions are true: - Sequence Number != NEXT_RCV_SEQ - (NEXT_RCV_SEQ - Sequence Number) mod 4096 <= 2048
TLP is treated as Bad TLP at the Rx side when all these conditions are true: - Sequence Number != NEXT_RCV_SEQ and -
(NEXT_RCV_SEQ - Sequence Number) mod 4096 > 2048
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
EINJ1_BAD_SEQNUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ1_
EINJ1_COUNT
W S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
28-16Bad sequence number. Indicates the value to add/subtract from the naturally-assigned sequence
numbers. This value is represented by two's complement. - 0x0FFF: +4095 - .. - 0x0002: +2 - 0x0001: +1
EINJ1_BAD_SE - 0x0000: 0 - 0x1FFF: -1 - 0x1FFE: -2 - .. - 0x1001: -4095 For example: - Set Type, SEQ# and Count --
QNUM EINJ1_SEQNUM_TYPE =0 (Insert errors into new TLPs) -- EINJ1_BAD_SEQNUM =0x1FFD (represents
-3) -- EINJ1_COUNT =1 - Enable Error Injection -- ERROR_INJECTION1_ENABLE =1 - Send a TLP
From the Core's Application Interface -- Assume SEQ#5 is given to the TLP. - The SEQ# is Changed to
#2 by the Error Injection Function in Layer2. -- 5 + (-3) = 2 - The TLP with SEQ#2 is Transmitted to PCIe
Link. Note: This register field is sticky.
15-9 Reserved
8 Sequence number type. Selects the type of sequence number. - 0b: Insertion of New TLP's SEQ# error -
1b: Insertion of ACK/NAK DLLP's SEQ# Error Note: This register field is sticky.
EINJ1_SEQNU
M_TYPE
Error injection count. Indicates the number of errors. This register is decremented as the errors are
7-0
being inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION1_ENABLE in
EINJ1_COUNT EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION1_ENABLE=1,
the errors are inserted until ERROR_INJECTION1_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ2_DLLP_REG 194h
Function
Error Injection Control 2 (DLLP Error). Controls the transmission of DLLPs and inserts the following errors: - If "ACK/NAK
DLLP's transmission block" is selected, replay timeout error will occur at the transmitter of the TLPs and then Data Link Retry
will occur. - If "Update FC DLLP's transmission block" is selected, LTSSM will transition to the Recovery state because of the
UpdateFC timeout (if the timeout is implemented at the receiver of the UpdateFCs). - If "Always Transmission for NAK DLLP"
is selected, Data Link Retry will occur at the transmitter of the TLPs. Furthermore, Replay NUM Rollover will occur when the
transmitter has been requested four times to send the TLP with the same sequence number.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ2_DLLP_T
EINJ2_COUNT
W YPE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-10 Reserved
9-8DLLP Type. Selects the type of DLLP errors to be inserted. - 00b: ACK/NAK DLLP's transmission block
- 01b: Update FC DLLP's transmission block - 10b: Always Transmission for NAK DLLP - 11b: Reserved
EINJ2_DLLP_T Note: This register field is sticky.
YPE
Error injection count. Indicates the number of errors. This register is decremented as the errors are
7-0
being inserted. - If the counter value is 0x01 and the error is inserted, ERROR_INJECTION2_ENABLE
EINJ2_COUNT in EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION2_ENABLE =1,
the errors are inserted until ERROR_INJECTION2_ENABLE is set to '0'. This register is affected only
when EINJ2_DLLP_TYPE =2'10b. Note: This register field is sticky.
Offset
Register Offset
EINJ3_SYMBOL_REG 198h
Function
When 8b/10b encoding is used, this register controls error insertion into the special (K code) symbols.
• If TS1/TS2/FTS/E-Idle/SKP is selected, it affects whole of the ordered set. It might cause timeout of the LTSSM.
• If END/EDB/STP/SDP is selected, TLP/DLLP will be discarded at the receiver side.
When 128b/130b encoding is used, this register controls error insertion into the sync-header.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
EINJ3_SYMBOL_TYPE EINJ3_COUNT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-11 Reserved
Field Function
Offset
Register Offset
EINJ4_FC_REG 19Ch
Function
Error Injection Control 4 (FC Credit Error). Controls error insertion into the credit value in the UpdateFCs. It is possible to insert
errors for any of the following types: - Posted TLP Header credit - Non-Posted TLP Header credit - Completion TLP Header
credit - Posted TLP Data credit - Non-Posted TLP Data credit - Completion TLP Data credit These errors are not correctable
while error insertion is enabled. Receiver buffer overflow error might occur.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
EINJ4_BAD_UPDFC_VALUE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
EINJ4_VC_NUMBER EINJ4_UPDFC_TYPE EINJ4_COUNT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
28-16Bad update-FC credit value. Indicates the value to add/subtract from the UpdateFC credit. This value is
represented by two's complement. - 0x0FFF: +4095 - .. - 0x0002: +2 - 0x0001: +1 - 0x0000: 0 - 0x1FFF:
EINJ4_BAD_UP -1 - 0x1FFE: -2 - .. - 0x1001: -4095 Note: This register field is sticky.
DFC_VALUE
15 Reserved
14-12 VC Number. Indicates target VC Number. Note: This register field is sticky.
EINJ4_VC_NU
MBER
11 Reserved
10-8 Update-FC type. Selects the credit type. - 000b: Posted TLP Header Credit value control - 001b:
Non-Posted TLP Header Credit value control - 010b: Completion TLP Header Credit value control -
EINJ4_UPDFC_ 011b: Reserved - 100b: Posted TLP Data Credit value control - 101b: Non-Posted TLP Data Credit value
TYPE control - 110b: Completion TLP Data Credit value control - 111b: Reserved Note: This register field is
sticky.
7-0Error injection count. Indicates the number of errors. This register is decremented as the errors are
being inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION4_ENABLE in
EINJ4_COUNT EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION4_ENABLE =1,
the errors are inserted until ERROR_INJECTION4_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ5_SP_TLP_REG 1A0h
Function
Error Injection Control 5 (Specific TLP Error). Controls the generation of specified TLPs. Correctable errors will occur which
will be fixed by the PCIe protocol. - For Duplicate TLP, the controller initiates Data Link Retry by handling ACK DLLP as NAK
DLLP. These TLPs will be duplicate TLPs at the receiver side. - For Nullified TLP, the TLPs that the controller transmits are
changed into nullified TLPs and the original TLPs are stored in the retry buffer. The receiver of these TLPs will detect the lack
of seq# and send NAK DLLP at the next TLP. Then the original TLPs are sent from retry buffer and the data controls are
recovered. For 128 bit controller or more than 128 bit, the controller inserts errors the number of times of EINJ5_COUNT but
doesn't ensure that the errors are continuously inserted into TLPs.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ5_
EINJ5_COUNT
W S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-9 Reserved
8 Specified TLP. Selects the specified TLP to be inserted. - 0: Generates duplicate TLPs by handling ACK
DLLP as NAK DLLP. - 1: Generates Nullified TLP (Original TLP will be stored in retry buffer). Note: This
EINJ5_SPECIFI register field is sticky.
ED_TLP
Error injection count. Indicates the number of errors. This register is decremented as the errors are
7-0
being inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION5_ENABLE in
EINJ5_COUNT EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION5_ENABLE =1,
the errors are inserted until ERROR_INJECTION5_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1A4h
T_H0_REG
Function
Error Injection Control 6 (Compare Point Header DWORD #0). Program this register for the 1st DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW0[7:0],
TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 1st DWORD. Specifies which Tx TLP header DWORD#0 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H0 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1A8h
T_H1_REG
Function
Error Injection Control 6 (Compare Point Header DWORD #1). Program this register for the 2nd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW1[7:0],
TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 2nd DWORD. Specifies which Tx TLP header DWORD#1 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H1 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1ACh
T_H2_REG
Function
Error Injection Control 6 (Compare Point Header DWORD #2). Program this register for the 3rd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW2[7:0],
TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 3rd DWORD. Specifies which Tx TLP header DWORD#2 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H2 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1B0h
T_H3_REG
Function
Error Injection Control 6 (Compare Point Header DWORD #3). Program this register for the 4th DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW3[7:0],
TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 4th DWORD. Specifies which Tx TLP header DWORD#3 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H3 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_VAL 1B4h
UE_H0_REG
Function
Error Injection Control 6 (Compare Value Header DWORD #0). Program this register for the 1st DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW0[7:0],
TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 1st DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#0 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H0
Offset
Register Offset
EINJ6_COMPARE_VAL 1B8h
UE_H1_REG
Function
Error Injection Control 6 (Compare Value Header DWORD #1). Program this register for the 2nd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW1[7:0],
TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 2nd DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#1 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H1
Offset
Register Offset
EINJ6_COMPARE_VAL 1BCh
UE_H2_REG
Function
Error Injection Control 6 (Compare Value Header DWORD #2). Program this register for the 3rd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW2[7:0],
TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 3rd DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#2 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H2
Offset
Register Offset
EINJ6_COMPARE_VAL 1C0h
UE_H3_REG
Function
Error Injection Control 6 (Compare Value Header DWORD #3). Program this register for the 4th DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW3[7:0],
TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet Compare Point registers (EINJ6_COMPARE_POINT*)
specify which Tx TLP header bits to compare with the corresponding bits in the Packet Compare Value registers
(EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the
controller inserts errors into the TLP. The type and number of errors are specified by the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 4th DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#3 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H3
Offset
Register Offset
EINJ6_CHANGE_POINT 1C4h
_H0_REG
Function
Error Injection Control 6 (Change Point Header DWORD #0). Program this register for the 1st DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW0[7:0],
TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 1st DWORD. Specifies which Tx TLP header DWORD#0 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H0
Offset
Register Offset
EINJ6_CHANGE_POINT 1C8h
_H1_REG
Function
Error Injection Control 6 (Change Point Header DWORD #1). Program this register for the 2nd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW1[7:0],
TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 2nd DWORD. Specifies which Tx TLP header DWORD#1 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H1
Offset
Register Offset
EINJ6_CHANGE_POINT 1CCh
_H2_REG
Function
Error Injection Control 6 (Change Point Header DWORD #2). Program this register for the 3rd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW2[7:0],
TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 3rd DWORD. Specifies which Tx TLP header DWORD#2 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H2
Offset
Register Offset
EINJ6_CHANGE_POINT 1D0h
_H3_REG
Function
Error Injection Control 6 (Change Point Header DWORD #3). Program this register for the 4th DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW3[7:0],
TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 4th DWORD. Specifies which Tx TLP header DWORD#3 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H3
Offset
Register Offset
EINJ6_CHANGE_VALU 1D4h
E_H0_REG
Function
Error Injection Control 6 (Change Value Header DWORD #0). Program this register for the 1st DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW0[7:0],
TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 1st DWORD. Specifies replacement values for the Tx TLP header DWORD#0
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H0
Offset
Register Offset
EINJ6_CHANGE_VALU 1D8h
E_H1_REG
Function
Error Injection Control 6 (Change Value Header DWORD #1). Program this register for the 2nd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW1[7:0],
TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 2nd DWORD. Specifies replacement values for the Tx TLP header DWORD#1
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H1
Offset
Register Offset
EINJ6_CHANGE_VALU 1DCh
E_H2_REG
Function
Error Injection Control 6 (Change Value Header DWORD #2). Program this register for the 3rd DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW2[7:0],
TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 3rd DWORD. Specifies replacement values for the Tx TLP header DWORD#2
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H2
Offset
Register Offset
EINJ6_CHANGE_VALU 1E0h
E_H3_REG
Function
Error Injection Control 6 (Change Value Header DWORD #3). Program this register for the 4th DWORD of TLP header/
prefix. It is necessary to carefully consider the endianness when you program this register. Bits [31:0] = TLP_DW3[7:0],
TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet Change Point registers (EINJ6_CHANGE_POINT*)
specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change Value registers
(EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the EINJ6_TLP_REG register. Only applies
when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 4th DWORD. Specifies replacement values for the Tx TLP header DWORD#3
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H3
Offset
Register Offset
EINJ6_TLP_REG 1E4h
Function
Error Injection Control 6 (Packet Error). The Packet Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx
TLP header bits to compare with the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*).
When all specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
into the TLP. The type and number of errors are specified by the this register. The Packet Change Point registers
(EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits in the Packet Change
Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the this register. Only applies
when EINJ6_INVERTED_CONTROL in this register =0. The TLP into that errors are injected will not arrive at the transaction
layer of the remote device when all of the following conditions are true. - Using 128b/130b encoding - Injecting errors into TLP
Length field / TLP digest bit
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ6_
EINJ6_PACKET_TYPE EINJ6_COUNT
W I...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Reserved
11-9 Packet type. Selects the TLP packets to inject errors into. - 0: TLP Header - 1: TLP Prefix 1st
4-DWORDs - 2: TLP Prefix 2nd -DWORDs - Else: Reserved Note: This register field is sticky.
EINJ6_PACKET
_TYPE
Error Injection Count. Indicates the number of errors to insert. This counter is decremented while errors
7-0
are been inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION6_ENABLE
EINJ6_COUNT in EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION6_ENABLE=1,
errors are inserted until ERROR_INJECTION6_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
SD_CONTROL1_REG 1F8h
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 LOW_POWER_ 0 FORC
TX_EIOS_NUM
W INTER... E_D...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
FORCE_DETECT_LANE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
Low Power Entry Interval Time. Interval Time that the controller starts monitoring RXELECIDLE signal
23-22
after L0s/L1/L2 entry. You should set the value according to the latency from receiving EIOS to,
LOW_POWER_ RXELECIDLE assertion at the PHY. - 0x0: 40ns - 0x1: 160ns - 0x2: 320ns - 0x3: 640ns Note: This
INTERVAL register field is sticky.
Number of Tx EIOS. This register sets the number of transmit EIOS for L0s/L1 entry and Disable/
21-20
Loopback/Hot-reset exit. The controller selects the greater value between this register and the value
TX_EIOS_NUM defined by the PCI-SIG specification. 2.5GT/s, 8.0GT/s or higher: - 0x0: 1 - 0x1: 4 - 0x2: 8 - 0x3: 16
5.0GT/s: - 0x0: 2 - 0x1: 8 - 0x2: 16 - 0x3: 32 Note: This register field is sticky.
19-17 Reserved
16 Force Detect Lane Enable. When this bit is set, the controller ignores receiver detection from PHY during
LTSSM Detect state and uses FORCE_DETECT_LANE. Note: This register field is sticky.
FORCE_DETE
CT_LANE_EN
15-0 Force Detect Lane. When the FORCE_DETECT_LANE_EN field is set, the controller ignores receiver
detection from PHY during LTSSM Detect state and uses this value instead. - 0: Lane0 - 1: Lane1 - 2:
FORCE_DETE Lane2 - .. - 15: Lane15 Note: This register field is sticky.
CT_LANE
Offset
Register Offset
SD_CONTROL2_REG 1FCh
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 FRAMI
W NG...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
DIREC DIREC DIREC NOAC HOLD
T_... T_... T_... K_F... RECO _LT...
W
VER...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-17 Reserved
16 Framing Error Recovery Disable. This bit disables a transition to Recovery state when a Framing Error is
occurred. Note: This register field is sticky.
FRAMING_ERR
_RECOVERY_
DISABLE
15-11 Reserved
10 Direct Loopback Slave To Exit. When this bit is set and the LTSSM is in Loopback Slave Active State,
the LTSSM transitions to Loopback Slave Exit state. Note: This register field is sticky.
DIRECT_LPBK
SLV_TO_EXIT
9 Direct Polling.Compliance to Detect. When this bit is set and the LTSSM is in Polling Compliance State,
the LTSSM transitions to Detect state. Note: This register field is sticky.
DIRECT_POLC
OMP_TO_DET
ECT
8 Direct Recovery.Idle to Configuration. When this bit is set and the LTSSM is in Recovery Idle State, the
LTSSM transitions to Configuration state. Note: This register field is sticky.
DIRECT_RECI
DLE_TO_CONF
IG
7-3 Reserved
Field Function
2 Force LinkDown. When this bit is set and the controller detects REPLY_NUM rolling over 4 times, the
LTSSM transitions to Detect State. Note: This register field is sticky.
NOACK_FORC
E_LINKDOWN
1 Recovery Request. When this bit is set to '1' in L0 or L0s, the LTSSM starts transitioning to Recovery
State. This request does not cause a speed change or re-equalization.
RECOVERY_R
EQUEST
0 Hold and Release LTSSM. For as long as this register is '1', the controller stays in the current LTSSM.
Note: This register field is sticky.
HOLD_LTSSM
Offset
Register Offset
SD_STATUS_L1LANE_ 208h
REG
Function
This viewport register returns the data selected by the following field: - LANE_SELECT in SD_STATUS_L1LANE_REG For
more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
LANE_SELECT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Deskew Pointer. Indicates Deskew pointer of internal Deskew buffer of selected lane
number(LANE_SELECT). Note: This register field is sticky.
DESKEW_POI
NTER
23-21 Reserved
18 PIPE:RxValid. Indicates PIPE RXVALID signal of selected lane number(LANE_SELECT). Note: This
register field is sticky.
PIPE_RXVALID
17 PIPE:Detect Lane. Indicates whether PHY indicates receiver detection or not on selected lane
number(LANE_SELECT). Note: This register field is sticky.
PIPE_DETECT
_LANE
15-4 Reserved
3-0 Lane Select. Lane Select register for Silicon Debug Status Register of Layer1-PerLane. - 0x0: Lane0 -
0x1: Lane1 - 0x2: Lane2 - .. - 0xF: Lane15 Note: This register field is sticky.
LANE_SELECT
Offset
Register Offset
SD_STATUS_L1LTSSM 20Ch
_REG
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R LTSSM_VARIABLE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LANE_ FRAMI
R 0 PIPE_POWER_DOWN FRAMING_ERR_PTR
RE... NG...
W W1C
Reset 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
Fields
Field Function
LTSSM Variable. Indicates internal LTSSM variables defined in the PCI Express Base
31-16
Specification. C-PCIe Mode: - 0: directed_speed_change - 1: changed_speed_recovery
LTSSM_VARIA - 2: successful_speed_negotiation - 3: upconfigure_capable; Set to '1' if both
BLE ports advertised the UpConfigure capability in the last Config.Complete. - 4:
select_deemphasis - 5: start_equalization_w_preset - 6: equalization_done_8GT_data_rate - 7:
equalization_done_16GT_data_rate - 15:8: idle_to_rlock_transitioned Note: This register field is sticky.
15 Lane Reversal Operation. Receiver detected lane reversal. This field is only valid in the L0 LTSSM state.
Note: This register field is sticky.
LANE_REVERS
AL
14-11 Reserved
10-8 PIPE:PowerDown. Indicates PIPE PowerDown signal. Note: This register field is sticky.
PIPE_POWER_
DOWN
FRAMING_ERR
Field Function
— 03h: When SDP token was received but not expected. (128 bit & (x8 | x16) controller only)
— 04h: When STP token was received but not expected. (128 bit & (x8 | x16) controller only)
— 05h: When EDS token was expected but not received or whenever an EDS token was received
but not expected.
— 06h: When a framing error was detected in the deskew block while a packet has been in
progress in token_finder.
• Received Unexpected STP Token
— 11h: When Framing CRC in STP token did not match
— 12h: When Framing Parity in STP token did not match.
— 13h: When Framing TLP Length in STP token was smaller than 5 DWORDs.
• Received Unexpected Block
— 21h: When Receiving an OS Block following SDS in Datastream state
— 22h: When Data Block followed by OS Block different from SKP, EI, EIE in Datastream state
— 23h: When Block with an undefined Block Type in Datastream state
— 24h: When Data Stream without data over three cycles in Datastream state
— 25h: When OS Block during Data Stream in Datastream state
— 26h: When RxStatus Error was detected in Datastream state
— 27h: When Not all active lanes receiving SKP OS starting at same cycle time in SKPOS state
— 28h: When a 2-Block timeout occurs for SKP OS in SKPOS state
— 29h: When Receiving consecutive OS Blocks within a Data Stream in SKPOS state
— 2Ah: When Phy status error was detected in SKPOS state
— 2Bh: When Not all active lanes receiving EIOS starting at same cycle time in EIOS state
— 2Ch: When At least one Symbol from the first 4 Symbols is not EIOS Symbol in EIOS state
— 2Dh: When Not all active lanes receiving EIEOS starting at same cycle time in EIEOS state
— 2Eh: When Not full 16 eieos symbols are received in EIEOS state
All other values not listed above are reserved.
This register field is sticky.
Offset
Register Offset
SD_STATUS_PM_REG 210h
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 LATCHED_NFTS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PME_
R 0 INTERNAL_PM_SSTATE 0 INTERNAL_PM_MSTATE
RES...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-16 Latched N_FTS. Indicates the value of N_FTS in the received TS Ordered Sets from the Link Partner
Note: This register field is sticky.
LATCHED_NFT
S
15-13 Reserved
PME Re-send flag. When the DUT sends a PM_PME message TLP, the DUT sets PME_Status bit.
12
If host software does not clear PME_Status bit for 100ms(+50%/-5%), the DUT resends the PM_PME
PME_RESEND Message. This bit indicates that a PM_PME was resent.
_FLAG
Internal PM State(Slave). Indicates internal state machine of Power Management Slave controller.
11-8
- 0h: S_IDLE - 1h: S_RESPOND_NAK - 2h: S_BLOCK_TLP - 3h: S_WAIT_LAST_TLP_ACK -
INTERNAL_PM 4h: S_WAIT_EIDLE - 5h: S_LINK_ENTR_L1 - 6h: S_L1 - 7h: S_L1_EXIT - 8h: S_L23RDY
_SSTATE - 9h: S_LINK_ENTR_L23 - Ah: S_L23RDY_WAIT4ALIVE - Bh: S_ACK_WAIT4IDLE - Ch:
S_WAIT_LAST_PMDLLP Note: This register field is sticky.
7-5 Reserved
Internal PM State(Master). Indicates internal state machine of Power Management Master controller. -
4-0
00h: IDLE - 01h: L0 - 02h: L0S - 03h: ENTER_L0S - 04h: L0S_EXIT - 05h: WAIT_PMCSR_CPL_SENT
INTERNAL_PM - 08h: L1 - 09h: L1_BLOCK_TLP - 0Ah: L1_WAIT_LAST_TLP_ACK - 0Bh: L1_WAIT_PMDLLP_ACK
_MSTATE - 0Ch: L1_LINK_ENTR_L1 - 0Dh: L1_EXIT - 0Fh: PREP_4L1 - 10h: L23_BLOCK_TLP - 11h:
L23_WAIT_LAST_TLP_ACK - 12h: L23_WAIT_PMDLLP_ACK - 13h: L23_ENTR_L23 - 14h: L23RDY -
15h: PREP_4L23 - 16h: L23RDY_WAIT4ALIVE - 17h: L0S_BLOCK_TLP - 18h: WAIT_LAST_PMDLLP -
19h: WAIT_DSTATE_UPDATE Note: This register field is sticky.
Offset
Register Offset
SD_STATUS_L2_REG 214h
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
FC_INI FC_INI
R 0 DLCMSM RX_ACK_SEQ_NO
T2 T1
Reset 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R RX_ACK_SEQ_NO TX_TLP_SEQ_NO
Reset 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
27 FC_INIT2. Indicates the controller is in FC_INIT2(VC0) state. Note: This register field is sticky.
FC_INIT2
26 FC_INIT1. Indicates the controller is in FC_INIT1(VC0) state. Note: This register field is sticky.
FC_INIT1
25-24 DLCMSM. Indicates the current DLCMSM. - 00b: DL_INACTIVE - 01b: DL_FC_INIT - 11b: DL_ACTIVE
Note: This register field is sticky.
DLCMSM
23-12 Tx Ack Sequence Number. Indicates ACKD_SEQ which is updated by receiving ACK/NAK DLLP. Note:
This register field is sticky.
RX_ACK_SEQ_
NO
11-0 Tx Tlp Sequence Number. Indicates next transmit sequence number for transmit TLP. Note: This register
field is sticky.
TX_TLP_SEQ_
NO
Offset
Register Offset
SD_STATUS_L3FC_RE 218h
G
Function
The CREDIT_DATA[0/1] fields in this viewport register return the data for the VC and TLP Type selected by the following fields:
• CREDIT_SEL_VC
• CREDIT_SEL_CREDIT_TYPE
• CREDIT_SEL_TLP_TYPE
• CREDIT_SEL_HD
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CREDIT_DATA1 CREDIT_DATA0
Reset 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
7 Reserved
Field Function
...
0x7: VC7
This field is sticky.
Offset
Register Offset
SD_STATUS_L3_REG 21Ch
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MFTLP
R 0 MFTLP_POINTER
_S...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
MFTLP_STATU
S
6-0 First Malformed TLP Error Pointer. Indicates the element of the received first malformed TLP. This
pointer is validated by MFTLP_STATUS. - 01h: AtomicOp address alignment - 02h: AtomicOp operand
- 03h: AtomicOp byte enable - 04h: TLP length miss match - 05h: Max payload size - 06h: Message
Field Function
MFTLP_POINT TLP without TC0 - 07h: Invalid TC - 08h: Unexpected route bit in Message TLP - 09h: Unexpected CRS
ER status in Completion TLP - 0Ah: Byte enable - 0Bh: Memory Address 4KB boundary - 0Ch: TLP prefix
rules - 0Dh: Translation request rules - 0Eh: Invalid TLP type - 0Fh: Completion rules - 7Fh: Application -
Else: Reserved Note: This register field is sticky.
Offset
Register Offset
SD_EQ_CONTROL1_RE 228h
G
Function
This is a viewport control register. Setting the EQ_RATE_SEL and EQ_LANE_SEL fields in this register determine the per-lane
Silicon Debug EQ Status data returned by the SD_EQ_STATUS[1/2/3] viewport registers. For more details, see RAS Debug,
Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R FOM_ 0 EVAL_INTERV
FOM_TARGET
W TAR... AL_T...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EXT_EQ_TIME 0 EQ_R
EQ_LANE_SEL
W OUT ATE...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
FOM Target. Indicates figure of merit target criteria value of EQ Master(DSP in EQ Phase3/USP in
31-24
EQ Phase2). This field is only valid when GEN3_EQ_FB_MODE is 0001b(Figure Of Merit). Note: This
FOM_TARGET register field is sticky.
23 FOM Target Enable. Enables the FOM_TARGET fields. Note: This register field is sticky.
FOM_TARGET
_ENABLE
22-18 Reserved
Field Function
Eval Interval Time. Indicates interval time of RxEqEval assertion. - 00: 500ns - 01: 1us - 10: 2us - 11:
17-16
4us This field is used for EQ Master(DSP in EQ Phase3/USP in EQ Phase2). Note: This register field is
EVAL_INTERV sticky.
AL_TIME
15-10 Reserved
9-8Extends EQ Phase2/3 Timeout. This field is used when the Ltssm is in Recovery.EQ2/3. When this field
is set, the value of EQ2/3 timeout is extended. EQ Master(DSP in EQ Phase3/USP in EQ Phase2). - 00:
EXT_EQ_TIME 24ms (default) - 01: 48ms (x2) - 10: 240ms (x10) - 11: No timeout EQ Slave(DSP in EQ Phase2/USP
OUT in EQ Phase3). - 00: 32ms (default) - 01: 56ms (32ms+24ms) - 10: 248ms (32ms +9*24ms) - 11: No
timeout Note: This register field is sticky.
7-5 Reserved
4 EQ Status Rate Select. Setting this field in conjunction with the EQ_LANE_SEL field determines the per-
lane Silicon Debug EQ Status data returned by the SD_EQ_CONTROL[2/3] and SD_EQ_STATUS[1/2/3]
EQ_RATE_SEL viewport registers. - 0x0: 8.0GT/s Speed - 0x1: 16.0GT/s Speed Note: This register field is sticky.
3-0EQ Status Lane Select. Setting this field in conjunction with the EQ_RATE_SEL field determines the per-
lane Silicon Debug EQ Status data returned by the SD_EQ_CONTROL[2/3] and SD_EQ_STATUS[1/2/3]
EQ_LANE_SEL viewport registers. - 0x0: Lane0 - 0x1: Lane1 - 0x2: Lane2 - .. - 0xF: Lane15 Note: This register field is
sticky.
Offset
Register Offset
SD_EQ_CONTROL2_RE 22Ch
G
Function
This viewport register returns the value for the rate and lane selected by the EQ_RATE_SEL and EQ_LANE_SEL fields in the
SD_EQ_CONTROL1_REG register. For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FORCE_LOCAL_TX_POST_CUR
FORCE_LOCAL_TX_CURSOR FORCE_LOCAL_TX_PRE_CURSOR
W SOR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
30 Force Local Transmitter Preset Enable. Enables the FORCE_LOCAL_TX_PRESET field. Note: This
register field is sticky.
FORCE_LOCA
L_TX_PRESET
_ENABLE
29 Force Local Receiver Preset Hint Enable. Enables the FORCE_LOCAL_RX_HINT field. Note: This
register field is sticky.
FORCE_LOCA
L_RX_HINT_EN
ABLE
27-24 Force Local Transmitter Preset. Indicates initial preset value of USP in EQ Slave(EQ Phase2) instead of
receiving EQ TS2. Note: This register field is sticky.
FORCE_LOCA
L_TX_PRESET
23-21 Reserved
20-18 Force Local Receiver Preset Hint. Indicates the RxPresetHint value of EQ Slave(DSP in EQ
Phase2/USP in EQ Phase3), instead of received or set value. Note: This register field is sticky.
FORCE_LOCA
L_RX_HINT
Field Function
11-6 Force Local Transmitter Cursor. Indicates the coefficient value of EQ Slave(DSP in EQ Phase2/USP in
EQ Phase3), instead of the value instructed from link partner. Note: This register field is sticky.
FORCE_LOCA
L_TX_CURSOR
5-0 Force Local Transmitter Pre-cursor. Indicates the coefficient value of EQ Slave(DSP in EQ Phase2/USP
in EQ Phase3), instead of the value instructed from link partner. Note: This register field is sticky.
FORCE_LOCA
L_TX_PRE_CU
RSOR
Offset
Register Offset
SD_EQ_CONTROL3_RE 230h
G
Function
This viewport register returns the value for the rate and lane selected by the EQ_RATE_SEL and EQ_LANE_SEL fields in the
SD_EQ_CONTROL1_REG register. For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 FORC 0 FORCE_REMO
W E_R... TE_TX...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FORCE_REMOTE_TX_POST_CU
FORCE_REMOTE_TX_CURSOR FORCE_REMOTE_TX_PRE_CURSOR
W RSOR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
27-18 Reserved
11-6 Force Remote Transmitter Cursor. Indicates the coefficient value of EQ Master(DSP in EQ Phase3/USP
in EQ Phase2), instead of the value instructed from link partner. Note: This register field is sticky.
FORCE_REMO
TE_TX_CURSO
R
Offset
Register Offset
SD_EQ_STATUS1_REG 238h
Function
This viewport register returns the first of three words of Silicon Debug EQ Status data for the rate and lane selected by the
EQ_RATE_SEL and EQ_LANE_SEL fields in the SD_EQ_CONTROL1_REG register.
The following fields are available when Equalization finished unsuccessfully(EQ_CONVERGENCE_INFO=2).
• EQ_RULEA_VIOLATION
• EQ_RULEB_VIOLATION
• EQ_RULEC_VIOLATION
• EQ_REJECT_EVENT
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
7EQ Reject Event. Indicates that the controller receives two consecutive TS1 OS w/Reject=1b during
EQ Master phase(DSP in EQ Phase3/USP in EQ Phase2). This bit is automatically cleared when the
EQ_REJECT_E controller starts EQ Master phase again. Note: This register field is sticky.
VENT
6EQ Rule C Violation. Indicates that coefficients rule C violation is detected in the values provided by PHY
using direction change method during EQ Master phase(DSP in EQ Phase3/USP in EQ Phase2). The
EQ_RULEC_VI coefficients rule C correspond to the rules c) from section "Rules for Transmitter Coefficents" in the PCI
OLATION Express Base Specification. This bit is automatically cleared when the controller starts EQ Master phase
again. Note: This register field is sticky.
5EQ Rule B Violation. Indicates that coefficients rule B violation is detected in the values provided by PHY
using direction change method during EQ Master phase(DSP in EQ Phase3/USP in EQ Phase2). The
EQ_RULEB_VI coefficients rules B correspond to the rules b) from section "Rules for Transmitter Coefficents" in the PCI
OLATION Express Base Specification. This bit is automatically cleared when the controller starts EQ Master phase
again. Note: This register field is sticky.
4EQ Rule A Violation. Indicates that coefficients rule A violation is detected in the values provided by PHY
using direction change method during EQ Master phase(DSP in EQ Phase3/USP in EQ Phase2). The
EQ_RULEA_VI coefficients rules A correspond to the rules a) from section "Rules for Transmitter Coefficents" in the PCI
OLATION Express Base Specification. This bit is automatically cleared when the controller starts EQ Master phase
again. Note: This register field is sticky.
3 Reserved
Field Function
0 EQ Sequence. Indicates that the controller is starting the equalization sequence. Note: This register field
is sticky.
EQ_SEQUENC
E
Offset
Register Offset
SD_EQ_STATUS2_REG 23Ch
Function
This viewport register returns the second of three words of Silicon Debug EQ Status data for the rate and lane selected by the
EQ_RATE_SEL and EQ_LANE_SEL fields in the SD_EQ_CONTROL1_REG register. Each field is available when Equalization
finished successfully(EQ_CONVERGENCE_INFO=1). For more details, see RAS Debug, Error Injection, and Statistics (DES)
†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
EQ_LOCAL_PO
R EQ_LOCAL_FOM_VALUE 0 EQ_LOCAL_RX_HINT
ST_C...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 EQ Local Figure of Merit. Indicates Local maximum Figure of Merit value. Note: This register field is
sticky.
EQ_LOCAL_FO
M_VALUE
23-21 Reserved
Field Function
20-18 EQ Local Receiver Preset Hint. Indicates Local Receiver Preset Hint value. Note: This register field is
sticky.
EQ_LOCAL_RX
_HINT
17-12 EQ Local Post-Cursor. Indicates Local post cursor coefficient value. Note: This register field is sticky.
EQ_LOCAL_PO
ST_CURSOR
11-6 EQ Local Cursor. Indicates Local cursor coefficient value. Note: This register field is sticky.
EQ_LOCAL_CU
RSOR
5-0 EQ Local Pre-Cursor. Indicates Local pre cursor coefficient value. Note: This register field is sticky.
EQ_LOCAL_PR
E_CURSOR
Offset
Register Offset
SD_EQ_STATUS3_REG 240h
Function
This viewport register returns the third of three words of Silicon Debug EQ Status data for the rate and lane selected by the
EQ_RATE_SEL and EQ_LANE_SEL fields in the SD_EQ_CONTROL1_REG register. Each field is available when Equalization
finished successfully(EQ_CONVERGENCE_INFO=1). For more details, see RAS Debug, Error Injection, and Statistics (DES)
†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
EQ_REMOTE_
R 0 EQ_REMOTE_FS EQ_REMOTE_LF
POST_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-30 Reserved
29-24 EQ Remote FS. Indicates Remote FS value. Note: This register field is sticky.
EQ_REMOTE_
FS
23-18 EQ Remote LF. Indicates Remote LF value. Note: This register field is sticky.
EQ_REMOTE_
LF
17-12 EQ Remote Post-Cursor. Indicates Remote post cursor coefficient value. Note: This register field is
sticky.
EQ_REMOTE_
POST_CURSO
R
11-6 EQ Remote Cursor. Indicates Remote cursor coefficient value. Note: This register field is sticky.
EQ_REMOTE_
CURSOR
5-0 EQ Remote Pre-Cursor. Indicates Remote pre cursor coefficient value. Note: This register field is sticky.
EQ_REMOTE_
PRE_CURSOR
3.7.100 PCIe Extended Capability ID, Capability Version, And Next Capability Offset
(RASDP_EXT_CAP_HDR_OFF)
Offset
Register Offset
RASDP_EXT_CAP_HDR 258h
_OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register
NEXT_OFFSET field is sticky.
19-16 Capability Version. For a description of this standard PCIe register, see the PCI Express Specification.
Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This register field is sticky.
CAP
15-0 PCI Express Extended Capability ID. For a description of this standard PCIe register, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note:
ID This register field is sticky.
Offset
Register Offset
RASDP_VENDOR_SPE 25Ch
CIFIC_HDR_OFF
Function
Vendor Specific Header. For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VSEC_LENGTH VSEC_REV
Reset 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VSEC_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-20 VSEC Length. For a description of this standard PCIe register, see the PCI Express Specification. Note:
This register field is sticky.
VSEC_LENGT
H
19-16 VSEC Rev. For a description of this standard PCIe register, see the PCI Express Specification. Note:
This register field is sticky.
VSEC_REV
15-0 VSEC ID. For a description of this standard PCIe register, see the PCI Express Specification. Note: This
register field is sticky.
VSEC_ID
Offset
Register Offset
RASDP_ERROR_PROT 260h
_CTRL_OFF
Function
ECC error correction control. Allows you to disable ECC error correction for RAMs and datapath. When the AXI Bridge Module
is implemented and the master / slave clocks are asynchronous to the PCIe native controller clock (core_clk), you must not
write this register while operations are in progress in the AXI master / slave interface.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-23 Reserved
22 Error correction disable for ADM Rx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AD
M_RX
21 Error correction disable for layer 3 Rx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER3_RX
20 Error correction disable for layer 2 Rx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER2_RX
19 Error correction disable for DMA read engine. Note: This register field is sticky.
ERROR_PROT
_DISABLE_DM
A_READ
18 Error correction disable for AXI bridge inbound request path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AXI
_BRIDGE_INB
OUND_REQUE
ST
17 Error correction disable for AXI bridge inbound completion composer. Does not disable the error
detection reporting for 1-bit and 2-bit ECC errors. Note: This register field is sticky.
Field Function
ERROR_PROT
_DISABLE_AXI
_BRIDGE_INB
OUND_COMPL
ETION
16 Global error correction disable for all Rx layers. Note: This register field is sticky.
ERROR_PROT
_DISABLE_RX
15-7 Reserved
6 Error correction disable for Adm Tx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AD
M_TX
5 Error correction disable for layer 3 Tx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER3_TX
4 Error correction disable for layer 2 Tx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER2_TX
3 Error correction disable for DMA write engine. Note: This register field is sticky.
ERROR_PROT
_DISABLE_DM
A_WRITE
2 Error correction disable for AXI bridge outbound request path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AXI
_BRIDGE_OUT
BOUND
1 Error correction disable for AXI bridge master completion buffer. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AXI
_BRIDGE_MAS
TER
Field Function
0 Global error correction disable for all Tx layers. Does not disable the error detection reporting for 1-bit
and 2-bit ECC errors. Note: This register field is sticky.
ERROR_PROT
_DISABLE_TX
Offset
Register Offset
RASDP_CORR_COUNT 264h
ER_CTRL_OFF
Function
This is a viewport control register. Setting the CORR_COUNTER_SELECTION_REGION and
CORR_COUNTER_SELECTION fields in this register determine the counter data returned by the
RASDP_CORR_COUNT_REPORT_OFF viewport data register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CORR_COUNTER_SELECTION_ 0
CORR_COUNTER_SELECTION
W REGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
CORR
R 0 CORR 0
_CL...
_EN...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
Counter selection. This field selects the counter ID (within the region defined
31-24
by CORR_COUNTER_SELECTION_REGION) whose contents can be read from the
CORR_COUNT RASDP_CORR_COUNT_REPORT_OFF register. You can cycle this field value from 0 to 255 to access
ER_SELECTIO all counters according to the detailed report of check points at http://www.synopsys.com/dw/doc.php/iip/
N DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
23-20 Select correctable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for layer 3
Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path - 0x4: Region
Field Function
CORR_COUNT select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound completion
ER_SELECTIO composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path - 0x8:
N_REGION Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select for
AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion buffer
path - 0xc: Reserved - 0xf: Reserved
19-5 Reserved
4 Enable correctable errors counters. - 1: counters increment when the controller detects a correctable
error - 0: counters are frozen The counters are enabled by default.
CORR_EN_CO
UNTERS
3-1 Reserved
CORR_CLEAR
_COUNTERS
Offset
Register Offset
RASDP_CORR_COUNT 268h
_REPORT_OFF
Function
Corrected error (1-bit ECC) counter data. This viewport register returns the counter data
selected by the CORR_COUNTER_SELECTION_REGION and CORR_COUNTER_SELECTION fields in the
RASDP_CORR_COUNTER_CTRL_OFF register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
CORR_COUNTER_SELECTED_R
R CORR_COUNTER_SELECTED 0
EGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CORR_COUNTER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Counter selection. Returns the value set in the CORR_COUNTER_SELECTION field of the
RASDP_CORR_COUNTER_CTRL_OFF register.
CORR_COUNT
ER_SELECTED
Selected correctable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
CORR_COUNT - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
ER_SELECTED completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
_REGION - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-8 Reserved
CORR_COUNT
ER
3.7.105 Uncorrected error (2-bit ECC and parity) counter selection and control.
(RASDP_UNCORR_COUNTER_CTRL_OFF)
Offset
Register Offset
RASDP_UNCORR_COU 26Ch
NTER_CTRL_OFF
Function
Uncorrected error (2-bit ECC and parity) counter selection and control. This is a viewport control register. Setting the
UNCORR_COUNTER_SELECTION_REGION and UNCORR_COUNTER_SELECTION fields in this register determine the
counter data returned by the RASDP_UNCORR_COUNT_REPORT_OFF viewport data register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UNCORR_COUNTER_SELECTIO 0
UNCORR_COUNTER_SELECTION
W N_REGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
UNCO
R 0 UNCO 0
RR_...
RR_...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
Counter selection. This field selects the counter ID (within the region defined
31-24
by UNCORR_COUNTER_SELECTION_REGION) whose contents can be read from the
UNCORR_COU RASDP_UNCORR_COUNT_REPORT_OFF register. You can cycle this field value from 0 to 255 to
NTER_SELECT access all counters according to the detailed report of check points at http://www.synopsys.com/dw/
ION doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
Select uncorrectable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
UNCORR_COU - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
NTER_SELECT completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
ION_REGION - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-5 Reserved
4 Enable uncorrectable errors counters. - 1: enables the counters to increment on detected correctable
errors - 0: counters are frozen The counters are enabled by default.
UNCORR_EN_
COUNTERS
3-1 Reserved
0 Clear uncorrectable errors counters. When asserted causes all counters tracking the uncorrectable
errors to be cleared.
UNCORR_CLE
AR_COUNTER
S
Offset
Register Offset
RASDP_UNCORR_COU 270h
NT_REPORT_OFF
Function
Uncorrected error (2-bit ECC and parity) counter data. This viewport register returns the counter data
selected by the UNCORR_COUNTER_SELECTION_REGION and UNCORR_COUNTER_SELECTION fields in the
RASDP_UNCORR_COUNTER_CTRL_OFF register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
UNCORR_COUNTER_SELECTE
R UNCORR_COUNTER_SELECTED 0
D_REGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 UNCORR_COUNTER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Counter selection. Returns the value set in the UNCORR_COUNTER_SELECTION field of the
RASDP_UNCORR_COUNTER_CTRL_OFF register.
UNCORR_COU
NTER_SELECT
ED
Selected uncorrectable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
UNCORR_COU - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
NTER_SELECT completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
ED_REGION - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-8 Reserved
Field Function
UNCORR_COU
NTER
3.7.107 Error injection control for the following features: - 1-bit or 2-bit injection - Continuous or
fixed-number (n) injection modes - Global enable/disable - Selectable location where injection
occurs (RASDP_ERROR_INJ_CTRL_OFF)
Offset
Register Offset
RASDP_ERROR_INJ_C 274h
TRL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
ERROR_INJ_LOC
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 ERROR_INJ_T 0 ERRO
ERROR_INJ_COUNT
W YPE R_I...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-16 Error injection location. Selects where error injection takes place. You can cycle this field value
from 0 to 255 to access all locations according to the detailed report of check points at http://
ERROR_INJ_L www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
OC
15-8 Error injection count. - 0: errors are inserted in every TLP until you clear ERROR_INJ_EN. - 1: one errors
injected - 2: two errors injected - n: amount of errors injected
ERROR_INJ_C
OUNT
Field Function
7-6 Reserved
ERROR_INJ_T
YPE
3-1 Reserved
0 Error injection global enable. When set enables the error insertion logic.
ERROR_INJ_E
N
Offset
Register Offset
RASDP_CORR_ERROR 278h
_LOCATION_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R LOC_LAST_CORR_ERROR REG_LAST_CORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LOC_FIRST_CORR_ERROR REG_FIRST_CORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Fields
Field Function
Location/ID of the last corrected error within the region defined by REG_LAST_CORR_ERROR. You can
31-24
cycle this field value from 0 to 255 to access all counters according to the detailed report of check points
LOC_LAST_CO at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
RR_ERROR
Region of the last corrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for layer 3
23-20
Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path - 0x4: Region
REG_LAST_CO select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound completion
RR_ERROR composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path - 0x8:
Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select for
AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion buffer
path - 0xc: Reserved - 0xf: Reserved
19-16 Reserved
15-8 Location/ID of the first corrected error within the region defined by REG_FIRST_CORR_ERROR. You
can cycle this field value from 0 to 255 to access all counters according to the detailed report of check
LOC_FIRST_C points at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
ORR_ERROR
7-4Region of the first corrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for layer 3
Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path - 0x4: Region
REG_FIRST_C select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound completion
ORR_ERROR composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path - 0x8:
Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select for
AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion buffer
path - 0xc: Reserved - 0xf: Reserved
3-0 Reserved
Offset
Register Offset
RASDP_UNCORR_ERR 27Ch
OR_LOCATION_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R LOC_LAST_UNCORR_ERROR REG_LAST_UNCORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LOC_FIRST_UNCORR_ERROR REG_FIRST_UNCORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Fields
Field Function
Location/ID of the last uncorrected error within the region defined by REG_LAST_UNCORR_ERROR.
31-24
You can cycle this field value from 0 to 255 to access all counters according to the detailed report of
LOC_LAST_UN check points at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
CORR_ERROR
Region of the last uncorrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
REG_LAST_UN - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
CORR_ERROR completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
- 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-16 Reserved
15-8 Location/ID of the first uncorrected error within the region defined by REG_FIRST_UNCORR_ERROR.
You can cycle this field value from 0 to 255 to access all counters according to the detailed report of
LOC_FIRST_U check points at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
NCORR_ERRO
R
Region of the first uncorrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for
7-4
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
REG_FIRST_U - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
NCORR_ERRO completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
R - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
3-0 Reserved
Offset
Register Offset
RASDP_ERROR_MODE 280h
_EN_OFF
Function
The controller enters RASDP error mode (if ERROR_MODE_EN =1) upon detection of the first uncorrectable error. During this
mode, Rx TLPs that are forwarded to your application are not guaranteed to be correct; you must discard them. For more
details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 AUTO_ ERRO
W LI... R_M...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-2 Reserved
1 Write '1' to enable the controller to bring the link down when the controller enters RASDP error mode.
Note: This register field is sticky.
AUTO_LINK_D
OWN_EN
0 Write '1' to enable the controller enter RASDP error mode when it detects an uncorrectable error. Note:
This register field is sticky.
ERROR_MODE
_EN
Offset
Register Offset
RASDP_ERROR_MODE 284h
_CLEAR_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ERRO
R 0
R_M...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-1 Reserved
0 Write '1' to take the controller out of RASDP error mode. The controller will then report uncorrectable
errors (through AER internal error reporting) and also stop nullifying/discarding TLPs.
ERROR_MODE
_CLEAR
3.7.112 RAM Address where a corrected error (1-bit ECC) has been detected
(RASDP_RAM_ADDR_CORR_ERROR_OFF)
Offset
Register Offset
RASDP_RAM_ADDR_C 288h
ORR_ERROR_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R RAM_INDEX_CORR_ERROR 0 RAM_ADDR_CORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R RAM_ADDR_CORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 RAM index where a corrected error (1-bit ECC) has been detected.
RAM_INDEX_C
ORR_ERROR
27 Reserved
26-0 RAM Address where a corrected error (1-bit ECC) has been detected.
RAM_ADDR_C
ORR_ERROR
3.7.113 RAM Address where an uncorrected error (2-bit ECC) has been detected
(RASDP_RAM_ADDR_UNCORR_ERROR_OFF)
Offset
Register Offset
RASDP_RAM_ADDR_U 28Ch
NCORR_ERROR_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R RAM_INDEX_UNCORR_ERROR 0 RAM_ADDR_UNCORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R RAM_ADDR_UNCORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 RAM index where an uncorrected error (2-bit ECC) has been detected.
RAM_INDEX_U
NCORR_ERRO
R
27 Reserved
26-0 RAM Address where an uncorrected error (2-bit ECC) has been detected.
RAM_ADDR_U
NCORR_ERRO
R
Offset
Register Offset
ACK_LATENCY_TIMER 700h
_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
REPLAY_TIME_LIMIT
W
Reset u1 u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ROUND_TRIP_LATENCY_TIME_LIMIT
W
Reset u2 u u u u u u u u u u u u u u u
1. When the chip resets, this field resets to 1846h. However, the field is not accessible until later, when the PCIe reset
finishes. At that moment, this field's value becomes C0h. Therefore, you can treat C0h as this register's usable reset value.
2. When the chip resets, this field resets to 817h. However, the field is not accessible until later, when the PCIe reset finishes.
At that moment, this field's value becomes 40h. Therefore, you can treat 40h as this register's usable reset value.
Fields
Field Function
Replay Timer Limit. The replay timer expires when it reaches this limit. The controller initiates a
31-16
replay upon reception of a NAK or when the replay timer expires. For more details, see "Transmit
REPLAY_TIME Replay". You can modify the effective timer limit with the TIMER_MOD_REPLAY_TIMER field of the
_LIMIT TIMER_CTRL_MAX_FUNC_NUM_OFF register. After reset, the controller updates the default according
to the Negotiated Link Width, Max_Payload_Size, and speed. The value is determined from Tables 3-4,
3-5, and 3-6 of the PCIe 3.0 specification. If there is a change in the payload size or link speed, the
controller will override any value that you have written to this register field, and reset the field back to the
specification-defined value. It will not change the value in the TIMER_MOD_REPLAY_TIMER field of the
TIMER_CTRL_MAX_FUNC_NUM_OFF register.
Ack Latency Timer Limit. The Ack latency timer expires when it reaches this limit. For more details, see
15-0
"Ack Scheduling". You can modify the effective timer limit with the TIMER_MOD_ACK_NAK field of the
ROUND_TRIP_ TIMER_CTRL_MAX_FUNC_NUM_OFF register. After reset, the controller updates the default according
LATENCY_TIM to the Negotiated Link Width, Max_Payload_Size, and speed. The value is determined from Tables 3-7,
E_LIMIT 3-8, and 3-9 of the PCIe 3.0 specification. The limit must reflect the round trip latency from requester to
completer. If there is a change in the payload size or link width, the controller will override any value that
you have written to this register field, and reset the field back to the specification-defined value. It will
not change the value in the TIMER_MOD_ACK_NAK field of the TIMER_CTRL_MAX_FUNC_NUM_OFF
register.
Offset
Register Offset
VENDOR_SPEC_DLLP_ 704h
OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
VENDOR_SPEC_DLLP
W
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
VENDOR_SPEC_DLLP
W
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Used to send a specific PCI Express DLLP. Your application writes the 8-bit DLLP Type and
31-0
24-bits of Payload data into this register, then sets the field VENDOR_SPECIFIC_DLLP_REQ of
VENDOR_SPE PORT_LINK_CTRL_OFF to send the DLLP. - [7:0] = Type - [31:8] = Payload (24 bits) The dllp type
C_DLLP is in bits [7:0] while the remainder is the vendor defined payload. Note: This register field is sticky.
Offset
Register Offset
PORT_FORCE_OFF 708h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 Reserv 0
LINK_STATE
W ed
Reset 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
FORC
R 0
E_EN FORCED_LTSSM LINK_NUM
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Fields
Field Function
31-24 Reserved
23 Reserved
22 Reserved
21-16 Forced LTSSM State. The LTSSM state that the controller is forced to when you set the FORCE_EN
bit (Force Link). LTSSM state encoding is defined by the lts_state variable in workspace/src/Layer1/
LINK_STATE smlh_ltssm.v. Note: This register field is sticky.
15 Force Link. The controller supports a testing and debug capability to allow your software to force
the LTSSM state machine into a specific state, and to force the controller to transmit a specific Link
FORCE_EN Command. Asserting this bit triggers the following actions: - Forces the LTSSM to the state specified by
the Forced LTSSM State field. - Forces the controller to transmit the command specified by the Forced
Link Command field. This is a self-clearing register field. Reading from this register field always returns a
"0".
14-12 Reserved
Forced Link Command. The link command that the controller is forced to transmit when you set
11-8
FORCE_EN bit (Force Link). Link command encoding is defined by the ltssm_cmd variable in
FORCED_LTSS workspace/src/Layer1/smlh_ltssm.v. Note: This register field is sticky.
M
7-0 Link Number. Not used for endpoint. Note: This register field is sticky.
LINK_NUM
Offset
Register Offset
ACK_F_ASPM_CTRL_O 70Ch
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W R_A... CY NCY
Reset 0 0 0 1 1 0 1 1 1 0 1 1 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ACK_N_FTS ACK_FREQ
W
Reset 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
ASPM L1 Entry Control. - 1: Core enters ASPM L1 after a period in which it has been idle. - 0: Core
30
enters ASPM L1 only after idle period during which both receive and transmit are in L0s. Note: This
ENTER_ASPM register field is sticky.
L1 Entrance Latency. Value range is: - 000: 1 us - 001: 2 us - 010: 4 us - 011: 8 us - 100: 16 us - 101: 32
29-27
us - 110 or 111: 64 us Note: Programming this timer with a value greater that 32us has no effect unless
L1_ENTRANCE extended sync is used, or all of the credits are infinite. Note: This register field is sticky.
_LATENCY
26-24 L0s Entrance Latency. Values correspond to: - 000: 1 us - 001: 2 us - 010: 3 us - 011: 4 us - 100: 5 us -
101: 6 us - 110 or 111: 7 us Note: This register field is sticky.
L0S_ENTRANC
E_LATENCY
15-8 N_FTS. The number of Fast Training Sequence ordered sets to be transmitted when transitioning from
L0s to L0. The maximum number of FTS ordered-sets that a component can request is 255. The
ACK_N_FTS controller does not support a value of zero; a value of zero can cause the LTSSM to go into the recovery
state when exiting from L0s. Note: This register field is sticky.
7-0 Ack Frequency. The controller accumulates the number of pending ACKs specified here (up to 255)
before sending an ACK DLLP. - 0: Indicates that this Ack frequency control feature is turned off. The
ACK_FREQ controller schedules a low-priority ACK DLLP for every TLP that it receives. - 1-255: Indicates that the
Field Function
controller will schedule a high-priority ACK after receiving this number of TLPs. It might schedule the
ACK before receiving this number of TLPs, but never later. For a typical system, you do not have to
modify the default setting. For more details, see "ACK/NAK Scheduling". Note: This register field is
sticky.
Offset
Register Offset
PORT_LINK_CTRL_OFF 710h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
VEND
R 0 FAST_ LINK_ DLL_LI 0 RESE LOOP SCRA
LINK_RATE OR_...
LI... DI... N... T_A... BAC... MBL...
W W1C
Reset 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0
Fields
Field Function
31-28 Reserved
26 EXTENDED_SYNCH is an internally reserved field. Do not use. Note: This register field is sticky.
EXTENDED_S
YNCH
25 CORRUPT_LCRC_ENABLE is an internally reserved field. Do not use. Note: This register field is sticky.
Field Function
CORRUPT_LC
RC_ENABLE
24 BEACON_ENABLE is an internally reserved field. Do not use. Note: This register field is sticky.
BEACON_ENA
BLE
23-22 Reserved
15-12 Reserved
11-8 LINK_RATE is an internally reserved field. Do not use. Note: This register field is sticky.
LINK_RATE
7 Fast Link Mode. Sets all internal LTSSM millisecond timers to Fast Mode for speeding up simulation.
Forces the LTSSM training (link initialization) to use shorter time-outs and to link up faster. The
FAST_LINK_M default scaling factor can be changed using the DEFAULT_FAST_LINK_SCALING_FACTOR parameter
ODE or through the FAST_LINK_SCALING_FACTOR field in the TIMER_CTRL_MAX_FUNC_NUM_OFF
register. Fast Link Mode can also be activated by setting the diag_ctrl_bus[2] pin to '1'. For more details,
see the "Fast Link Simulation Mode" section in the "Integrating the Core with the PHY or Application RTL
or Verification IP" chapter of the User Guide. If this bit is set to '1', tRRAPInitiatorResponse is set to 1.88
ms(60 ms/32). Note: This register field is sticky.
6 LINK_DISABLE is an internally reserved field. Do not use. Note: This register field is sticky.
LINK_DISABLE
5 DLL Link Enable. Enables link initialization. When DLL Link Enable =0, the controller does not transmit
InitFC DLLPs and does not establish a link. Note: This register field is sticky.
Field Function
DLL_LINK_EN
4 Reserved
3 Reset Assert. Triggers a recovery and forces the LTSSM to the hot reset state (downstream port only).
Note: This register field is sticky.
RESET_ASSER
T
2 Loopback Enable. Turns on loopback. For more details, see "Loopback". Note: This register field is
sticky.
LOOPBACK_E
NABLE
1 Scramble Disable. Turns off data scrambling. Note: This register field is sticky.
SCRAMBLE_DI
SABLE
0 Vendor Specific DLLP Request. When software writes a '1' to this bit, the controller transmits the
DLLP contained in the VENDOR_SPEC_DLLP field of VENDOR_SPEC_DLLP_OFF. Reading from this
VENDOR_SPE self-clearing register field always returns a '0'.
CIFIC_DLLP_R
EQ
Offset
Register Offset
LANE_SKEW_OFF 714h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
INSERT_LANE_SKEW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Disable Lane-to-Lane Deskew. Causes the controller to disable the internal Lane-to-Lane deskew logic.
Note: This register field is sticky.
DISABLE_LAN
E_TO_LANE_D
ESKEW
26 Selects Elasticity Buffer operating mode in Gen3 or Gen4 rate: 0: Nominal Half Full Buffer mode 1:
Nominal Empty Buffer Mode This register bit only affects Gen3 or Gen4 operating rate. For Gen1 or
GEN34_ELASTI Gen2 operating rate the Elasticity Buffer operating mode is always the Nominal Half Full Buffer mode.
C_BUFFER_M Note: This register field is sticky.
ODE
25 Ack/Nak Disable. Prevents the controller from sending ACK and NAK DLLPs. Note: This register field is
sticky.
ACK_NAK_DIS
ABLE
24 Flow Control Disable. Prevents the controller from sending FC DLLPs. Note: This register field is sticky.
FLOW_CTRL_D
ISABLE
23-0 INSERT_LANE_SKEW is an internally reserved field. Do not use. Note: This register field is sticky.
INSERT_LANE
_SKEW
Offset
Register Offset
TIMER_CTRL_MAX_FU 718h
NC_NUM_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 FAST_LINK_SC TIMER_MOD_REPLAY_
UPDATE_FREQ_TIMER TIMER_MOD_ACK_NAK
W ALI... TIMER
Reset 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TIMER_MOD_R 0
MAX_FUNC_NUM
W EPLA...
Reset 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
Fast Link Timer Scaling Factor. Sets the scaling factor of LTSSM timer when FAST_LINK_MODE field in
30-29
PORT_LINK_CTRL_OFF is set to '1'. - 0: Scaling Factor is 1024 (1ms is 1us) - 1: Scaling Factor is 256
FAST_LINK_SC (1ms is 4us) - 2: Scaling Factor is 64 (1ms is 16us) - 3: Scaling Factor is 16 (1ms is 64us) Default is set
ALING_FACTO by the hidden configuration parameter DEFAULT_FAST_LINK_SCALING_FACTOR which defaults to '0'.
R Note: This register field is sticky.
UPDATE_FRE
Q_TIMER
13-8 Reserved
Field Function
MAX_FUNC_N Configuration requests targeted at function numbers above this value are returned with UR
UM (unsupported request).
This field is sticky.
Offset
Register Offset
SYMBOL_TIMER_FILTE 71Ch
R_1_OFF
Function
Modifies the RADM filtering and error handling rules. For more details, see the following table and Receive filtering†. In each case,
'0' applies the associated filtering rule and '1' masks the associated filtering rule.
13 CX_FLT_MASK_MSG_DROP 0: Drop MSG TLP (except for Vendor MSG). Send decoded
message on the SII.
1: Do not Drop MSG (except for Vendor MSG). Send message
TLPs to your application on TRGT1 and send decoded
message on the SII.
The default for this bit is the inverse of FLT_DROP_MSG. That
is, if FLT_DROP_MSG =1, then the default of this bit is "0"
(drop message TLPs). This bit only controls message TLPs
other than Vendor MSGs. Vendor MSGs are controlled by Filter
Mask Register 2, bits [1:0].
The controller never passes ATS Invalidate messages to the
SII interface regardless of this filter rule setting. The controller
passes all ATS Invalidate messages to TRGT1 (or AXI bridge
master), as they are too big for the SII.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MASK_RADM_1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DISAB
EIDLE_TIMER SKP_INT_VAL
W LE...
Reset 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0
Fields
Field Function
DISABLE_FC_
WD_TIMER
Field Function
14-11 EIDLE_TIMER is an internally reserved field. Do not use. Note: This register field is sticky.
EIDLE_TIMER
10-0 SKP Interval Value. The number of symbol times to wait between transmitting SKP ordered sets. Note
that the controller actually waits the number of symbol times in this register plus 1 between transmitting
SKP_INT_VAL SKP ordered sets. Your application must program this register accordingly. For example, if 1536 were
programmed into this register (in a 250 MHz controller), then the controller actually transmits SKP
ordered sets once every 1537 symbol times. The value programmed to this register is actually clock
ticks and not symbol times. In a 125 MHz controller, programming the value programmed to this register
should be scaled down by a factor of 2 (because one clock tick = two symbol times in this case). Note:
This value is not used at Gen3 speed; the skip interval is hardcoded to 370 blocks. Note: This register
field is sticky.
Offset
Register Offset
FILTER_MASK_2_OFF 720h
Function
Modifies the RADM filtering and error handling rules. For more details, see the following table and Receive filtering†. In each case,
'0' applies the associated filtering rule and '1' masks the associated filtering rule.
31–8 — Reserved
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MASK_RADM_2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MASK_RADM_2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
AMBA_MUL_OB_DECO 724h
MP_NP_SUB_REQ_CTR
L_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 OB_R
W D_S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-1 Reserved
0Enable AMBA Multiple Outbound Decomposed NP SubRequests. This bit when set to "0" disables the
possibility of having multiple outstanding non-posted requests that were derived from decomposition
OB_RD_SPLIT_ of an outbound AMBA request. You should not clear this register unless your application master is
BURST_EN requesting an amount of read data greater than Max_Read_Request_Size, and the remote device (or
switch) is reordering completions that have different tags. Note: The access attributes of this field are as
follows: - Wire: R/W (sticky) Note: This register field is sticky.
Offset
Register Offset
PL_DEBUG0_OFF 728h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R DEB_REG_0
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DEB_REG_0
Reset u u u u u u u u u u u u u u u u
Fields
Field Function
Offset
Register Offset
PL_DEBUG1_OFF 72Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R DEB_REG_1
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DEB_REG_1
Reset u u u u u u u u u u u u u u u u
Fields
Field Function
Offset
Register Offset
TX_P_FC_CREDIT_STA 730h
TUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 TX_P_HEADER_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TX_P_HEADER_FC_CREDIT TX_P_DATA_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-20 Reserved
Transmit Posted Header FC Credits. The posted Header credits advertised by the receiver at the
19-12
other end of the link, updated with each UpdateFC DLLP. Default value depends on the number
TX_P_HEADER of advertised credits for header and data [12'b0, xtlh_xadm_ph_cdts, xtlh_xadm_pd_cdts]; When the
_FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Transmit Posted Data FC Credits. The posted Data credits advertised by the receiver at the other end of
11-0
the link, updated with each UpdateFC DLLP. Default value depends on the number of advertised credits
TX_P_DATA_F for header and data [12'b0, xtlh_xadm_ph_cdts, xtlh_xadm_pd_cdts]; When the number of advertised
C_CREDIT completion credits (both header and data) are infinite, then the default would be [12'b0, 8'hFF, 12'hFFF].
Offset
Register Offset
TX_NP_FC_CREDIT_ST 734h
ATUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 TX_NP_HEADER_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TX_NP_HEADER_FC_CREDIT TX_NP_DATA_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-20 Reserved
19-12 Transmit Non-Posted Header FC Credits. The non-posted Header credits advertised by the receiver at
the other end of the link, updated with each UpdateFC DLLP. Default value depends on the number
Field Function
TX_NP_HEADE of advertised credits for header and data [12'b0, xtlh_xadm_nph_cdts, xtlh_xadm_npd_cdts]; When the
R_FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Transmit Non-Posted Data FC Credits. The non-posted Data credits advertised by the receiver at the
11-0
other end of the link, updated with each UpdateFC DLLP. Default value depends on the number of
TX_NP_DATA_ advertised credits for header and data [12'b0, xtlh_xadm_nph_cdts, xtlh_xadm_npd_cdts]; When the
FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Offset
Register Offset
TX_CPL_FC_CREDIT_S 738h
TATUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 TX_CPL_HEADER_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TX_CPL_HEADER_FC_CREDIT TX_CPL_DATA_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-20 Reserved
Transmit Completion Header FC Credits. The Completion Header credits advertised by the receiver at
19-12
the other end of the link, updated with each UpdateFC DLLP. Default value depends on the number
TX_CPL_HEAD of advertised credits for header and data [12'b0, xtlh_xadm_cplh_cdts, xtlh_xadm_cpld_cdts]; When the
ER_FC_CREDI number of advertised completion credits (both header and data) are infinite, then the default would be
T [12'b0, 8'hFF, 12'hFFF].
Field Function
Transmit Completion Data FC Credits. The Completion Data credits advertised by the receiver at the
11-0
other end of the link, updated with each UpdateFC DLLP. Default value depends on the number of
TX_CPL_DATA advertised credits for header and data [12'b0, xtlh_xadm_cplh_cdts, xtlh_xadm_cpld_cdts]; When the
_FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Offset
Register Offset
QUEUE_STATUS_OFF 73Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R TIMER 0
TIMER_MOD_FLOW_CONTROL
W _M...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
FC Latency Timer Override Enable. When this bit is set, the value from the "FC Latency Timer Override
31
Value" field in this register will override the FC latency timer value that the controller calculates according
TIMER_MOD_F to the PCIe specification. Note: This register field is sticky.
LOW_CONTRO
L_EN
30-29 Reserved
FC Latency Timer Override Value. When you set the "FC Latency Timer Override Enable" in this register,
28-16
the value in this field will override the FC latency timer value that the controller calculates according to
TIMER_MOD_F the PCIe specification. For more details, see "Flow Control". Note: This register field is sticky.
LOW_CONTRO
L
Field Function
15 Receive Serialization Read Error. Indicates the serialization queue has attempted to read an incorrectly
formatted TLP.
RX_SERIALIZA
TION_Q_READ
_ERR
14 Receive Serialization Queue Write Error. Indicates insufficient buffer space available to write to the
serialization queue.
RX_SERIALIZA
TION_Q_WRIT
E_ERR
13 Receive Serialization Queue Not Empty. Indicates there is data in the serialization queue.
RX_SERIALIZA
TION_Q_NON_
EMPTY
12-4 Reserved
3 Receive Credit Queue Overflow. Indicates insufficient buffer space available to write to the P/NP/CPL
credit queue.
RX_QUEUE_O
VERFLOW
2 Receive Credit Queue Not Empty. Indicates there is data in one or more of the receive buffers.
RX_QUEUE_N
ON_EMPTY
1 Transmit Retry Buffer Not Empty. Indicates that there is data in the transmit retry buffer.
TX_RETRY_BU
FFER_NE
0 Received TLP FC Credits Not Returned. Indicates that the controller has received a TLP but has not yet
sent an UpdateFC DLLP indicating that the credits for that TLP have been restored by the receiver at the
RX_TLP_FC_C other end of the link.
REDIT_NON_R
ETURN
Offset
Register Offset
VC_TX_ARBI_1_OFF 740h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R WRR_WEIGHT_VC_3 WRR_WEIGHT_VC_2
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R WRR_WEIGHT_VC_1 WRR_WEIGHT_VC_0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Fields
Field Function
31-24 WRR Weight for VC3. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_3
23-16 WRR Weight for VC2. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_2
15-8 WRR Weight for VC1. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_1
7-0 WRR Weight for VC0. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_0
Offset
Register Offset
VC_TX_ARBI_2_OFF 744h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R WRR_WEIGHT_VC_7 WRR_WEIGHT_VC_6
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R WRR_WEIGHT_VC_5 WRR_WEIGHT_VC_4
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 WRR Weight for VC7. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_7
23-16 WRR Weight for VC6. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_6
15-8 WRR Weight for VC5. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_5
7-0 WRR Weight for VC4. Note: The access attributes of this field are as follows: - Wire: R
WRR_WEIGHT
_VC_4
Offset
Register Offset
VC0_P_RX_Q_CTRL_O 748h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 1 0 0 0 1 0 1 0 0 1 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VC0_P_HEADER_CREDIT VC0_P_DATA_CREDIT
Reset 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0
Fields
Field Function
31 VC Ordering for Receive Queues. Determines the VC ordering rule for the receive queues, used only in
the segmented-buffer configuration: - 1: Strict ordering, higher numbered VCs have higher priority - 0:
VC_ORDERIN Round robin Note: This register field is sticky.
G_RX_Q
TLP Type Ordering for VC0. Determines the TLP type ordering rule for VC0 receive queues, used only in
30
the segmented-buffer configuration: - 1: PCIe ordering rules (recommended) - 0: Strict ordering: posted,
TLP_TYPE_OR completion, then non-posted Note: This register field is sticky.
DERING_VC0
RESERVED5
27-26 VC0 Scale Posted Data Credites. Note: This register field is sticky.
VC0_P_DATA_
SCALE
25-24 VC0 Scale Posted Header Credites. Note: This register field is sticky.
VC0_P_HDR_S
CALE
VC0_P_TLP_Q_
MODE
RESERVED4
VC0 Posted Header Credits. The number of initial posted header credits for VC0, used only in the
19-12
segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: R (sticky)
VC0_P_HEADE Note: This register field is sticky.
R_CREDIT
Field Function
VC0 Posted Data Credits. The number of initial posted data credits for VC0, used only in the segmented-
11-0
buffer configuration. Note: The access attributes of this field are as follows: - Wire: R (sticky) Note: This
VC0_P_DATA_ register field is sticky.
CREDIT
Offset
Register Offset
VC0_NP_RX_Q_CTRL_ 74Ch
OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 1 0 1 0 0 1 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VC0_NP_HEADER_CREDIT VC0_NP_DATA_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0
Fields
Field Function
RESERVED7
27-26 VC0 Scale Non-Posted Data Credites. Note: This register field is sticky.
VC0_NP_DATA
_SCALE
25-24 VC0 Scale Non-Posted Header Credites. Note: This register field is sticky.
VC0_NP_HDR_
SCALE
Field Function
VC0_NP_TLP_
Q_MODE
RESERVED6
VC0 Non-Posted Header Credits. The number of initial non-posted header credits for VC0, used only
19-12
in the segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: R
VC0_NP_HEAD (sticky) Note: This register field is sticky.
ER_CREDIT
VC0 Non-Posted Data Credits. The number of initial non-posted data credits for VC0, used only in the
11-0
segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: R (sticky)
VC0_NP_DATA Note: This register field is sticky.
_CREDIT
Offset
Register Offset
VC0_CPL_RX_Q_CTRL_ 750h
OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VC0_CPL_HEADER_CREDIT VC0_CPL_DATA_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
RESERVED9
Field Function
27-26 VC0 Scale CPL Data Credites. Note: This register field is sticky.
VC0_CPL_DAT
A_SCALE
25-24 VC0 Scale CPL Header Credites. Note: This register field is sticky.
VC0_CPL_HDR
_SCALE
VC0_CPL_TLP_
Q_MODE
RESERVED8
VC0 Completion Header Credits. The number of initial Completion header credits for VC0, used only
19-12
in the segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: R
VC0_CPL_HEA (sticky) Note: This register field is sticky.
DER_CREDIT
VC0 Completion Data Credits. The number of initial Completion data credits for VC0, used only in the
11-0
segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: R (sticky)
VC0_CPL_DAT Note: This register field is sticky.
A_CREDIT
Offset
Register Offset
GEN2_CTRL_OFF 80Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PRE_DET_LANE NUM_OF_LANES FAST_TRAINING_SEQ
W
Reset 0 0 0 0 0 0 1 0 1 0 1 1 0 1 0 0
Fields
Field Function
31-22 Reserved
21 Electrical Idle Inference Mode at Gen1 Rate. Programmable mode to determine inferred electrical idle
(EI) in Recovery.Speed or Loopback.Active (as slave) state at Gen1 speed by looking for a "1" value
GEN1_EI_INFE on RxElecIdle instead of looking for a "0" on RxValid. If the PHY fails to deassert the RxValid signal
RENCE in Recovery.Speed or Loopback.Active (because of corrupted EIOS for example), then EI cannot be
inferred successfully in the controller by just detecting the condition RxValid=0. - 0: Use RxElecIdle
signal to infer Electrical Idle - 1: Use RxValid signal to infer Electrical Idle Note: This register field is
sticky.
20 Used to set the de-emphasis level for upstream ports. This bit selects the level of de-emphasis the link
operates at. - 0: -6 dB - 1: -3.5 dB Note: The access attributes of this field are as follows: - Wire: R/W
SEL_DEEMPH (sticky) Note: This register field is sticky.
ASIS
19 Config Tx Compliance Receive Bit. When set to 1, signals LTSSM to transmit TS ordered sets with the
compliance receive bit assert (equal to "1"). Note: The access attributes of this field are as follows: -
CONFIG_TX_C Wire: R/W (sticky) Note: This register field is sticky.
OMP_RX
18 Config PHY Tx Swing. Controls the PHY transmitter voltage swing level. The controller drives the
mac_phy_txswing output from this register bit field. - 0: Full Swing - 1: Low Swing Note: The access
CONFIG_PHY_ attributes of this field are as follows: - Wire: R/W (sticky) Note: This register field is sticky.
TX_CHANGE
17 Directed Speed Change. Writing "1" to this field instructs the LTSSM to initiate a speed change
to Gen2 or Gen3 after the link is initialized at Gen1 speed. When the speed change occurs, the
DIRECT_SPEE controller will clear the contents of this field; and a read to this field by your software will return
D_CHANGE a "0". To manually initiate the speed change: - Write to LINK_CONTROL2_LINK_STATUS2_REG .
PCIE_CAP_TARGET_LINK_SPEED in the local device - Deassert this field - Assert this field If you set
the default of this field using the DEFAULT_GEN2_SPEED_CHANGE configuration parameter to "1",
then the speed change is initiated automatically after link up, and the controller clears the contents
of this field. If you want to prevent this automatic speed change, then write a lower speed value to
the Target Link Speed field of the Link Control 2 register (LINK_CONTROL2_LINK_STATUS2_OFF .
PCIE_CAP_TARGET_LINK_SPEED) through the DBI before link up. Note: The access attributes of this
field are as follows: - Wire: R/W
Field Function
This field is used to restrict the receiver detect procedure to a particular lane when the default detect and
polling procedure performed on all lanes cannot be successful. A notable example of when it is useful to
program this field to a value different from the default, is when a lane is asymmetrically broken, that is, it is
detected in Detect LTSSM state but it cannot exit Electrical Idle in Polling LTSSM state.
The access attributes of this field are as follows:
- Wire: R/W (sticky)
This field is sticky.
000b - Connect logical Lane0 to physical lane 0 or 1, depending on which lane is detected
001b - Connect logical Lane0 to physical lane 1
010b - Connect logical Lane0 to physical lane 3
011b - Connect logical Lane0 to physical lane 7
100b - Connect logical Lane0 to physical lane 15
12-8 Predetermined Number of Lanes. Defines the number of lanes which are connected and not bad. Used
to limit the effective link width to ignore 'broken" or "unused" lanes that detect a receiver. Indicates the
NUM_OF_LAN number of lanes to check for exit from Electrical Idle in Polling.Active and L2.Idle. It is possible that the
ES LTSSM might detect a receiver on a bad or broken lane during the Detect Substate. However, it is also
possible that such a lane might also fail to exit Electrical Idle and therefore prevent a valid link from being
configured. This value is referred to as the "Predetermined Number of Lanes" in section 4.2.6.2.1 of the
PCI Express Base 3.0 Specification, revision 1.0. Encoding is as follows: - 0x01: 1 lane - 0x02: 2 lanes
- 0x03: 3 lanes - .. When you have unused lanes in your system, then you must change the value in
this register to reflect the number of lanes. You must also change the value in the "Link Mode Enable"
field of PORT_LINK_CTRL_OFF. The value in this register is normally the same as the encoded value in
PORT_LINK_CTRL_OFF. If you find that one of your used lanes is bad then you must reduce the value
in this register. For more information, see "How to Tie Off Unused Lanes." For information on upsizing
and downsizing the link width, see "Link Establishment." Note: The access attributes of this field are as
follows: - Wire: R/W (sticky) Note: This register field is sticky.
7-0 Sets the Number of Fast Training Sequences (N_FTS) that the controller advertises as its N_FTS during
Gen2 or Gen3 link training. This value is used to inform the link partner about the PHY's ability to recover
FAST_TRAININ synchronization after a low power state. The number should be provided by the PHY vendor. Do not
G_SEQ set N_FTS to zero; doing so can cause the LTSSM to go into the recovery state when exiting from L0s.
Note: The access attributes of this field are as follows: - Wire: R/W (sticky) Note: This register field is
sticky.
Offset
Register Offset
PHY_STATUS_OFF 810h
Function
This is a memory-mapped register from the phy_cfg_status GPIO input pins.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PHY_STATUS
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PHY_STATUS
Reset u u u u u u u u u u u u u u u u
Fields
Field Function
Offset
Register Offset
PHY_CONTROL_OFF 814h
Function
This is a memory-mapped register for the cfg_phy_control GPIO output pins.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PHY_CONTROL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PHY_CONTROL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
PHY Control. Data sent directly to the cfg_phy_control bus. These is a GPIO register driving the values
31-0
on the static cfg_phy_control output signals. The usage is left completely to the user and does not
PHY_CONTRO in any way influence controller functionality. You can use it for any static sideband control signalling
L requirements that you have for your PHY. Note: This register field is sticky.
Offset
Register Offset
TRGT_MAP_CTRL_OFF 81Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R TARGET_MAP_RESERVED_21_31
TARGET_MAP_INDEX
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
TARGET_MAP_RESER
R 0 TARG
VED_13_... TARGET_MAP_PF
ET_...
W
Reset 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1
Fields
Field Function
31-21 Reserved Note: The access attributes of this field are as follows: - Wire: RSVDP
TARGET_MAP_
RESERVED_21
_31
20-16 The number of the PF Function on which the Target Values are set. This register does not respect the
Byte Enable setting. any write will affect all register bits.
TARGET_MAP_
INDEX
15-13 Reserved Note: The access attributes of this field are as follows: - Wire: RSVDP
TARGET_MAP_
RESERVED_13
_15
Field Function
12-7 Reserved
6 Target Value for the ROM page of the PF Function selected by the index number. This register does not
respect the Byte Enable setting. any write will affect all register bits.
TARGET_MAP_
ROM
5-0 Target Values for each BAR on the PF Function selected by the index number. This register does not
respect the Byte Enable setting. any write will affect all register bits.
TARGET_MAP_
PF
Offset
Register Offset
MSI_CTRL_ADDR_OFF 820h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
iMRM address. System specified address for MSI memory write transaction termination. Within the AXI
31-0
Bridge, every received Memory Write request is examined to see if it targets the MSI Address that has
MSI_CTRL_AD been specified in this register; and also to see if it satisfies the definition of an MSI interrupt request.
DR When these conditions are satisfied the Memory Write request is marked as an MSI request. Note: This
register field is sticky.
Offset
Register Offset
MSI_CTRL_UPPER_AD 824h
DR_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_UPPER_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_UPPER_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 iMRM upper address. System specified upper address for MSI memory write transaction termination.
Allows functions to support a 64-bit MSI address. Note: This register field is sticky.
MSI_CTRL_UP
PER_ADDR
Offset
Register Offset
MSI_CTRL_INT_0_EN_O 828h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_0_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_0_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #0 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_0_EN
Offset
Register Offset
MSI_CTRL_INT_0_MAS 82Ch
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_0_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_0_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #0 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_0_MASK
Offset
Register Offset
MSI_CTRL_INT_0_STAT 830h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_0_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_0_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #0 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_0_STATUS
Offset
Register Offset
MSI_CTRL_INT_1_EN_O 834h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_1_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_1_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #1 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_1_EN
Offset
Register Offset
MSI_CTRL_INT_1_MAS 838h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_1_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_1_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #1 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_1_MASK
Offset
Register Offset
MSI_CTRL_INT_1_STAT 83Ch
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_1_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_1_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #1 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_1_STATUS
Offset
Register Offset
MSI_CTRL_INT_2_EN_O 840h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_2_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_2_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #2 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_2_EN
Offset
Register Offset
MSI_CTRL_INT_2_MAS 844h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_2_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_2_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #2 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_2_MASK
Offset
Register Offset
MSI_CTRL_INT_2_STAT 848h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_2_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_2_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #2 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_2_STATUS
Offset
Register Offset
MSI_CTRL_INT_3_EN_O 84Ch
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_3_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_3_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #3 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_3_EN
Offset
Register Offset
MSI_CTRL_INT_3_MAS 850h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_3_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_3_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #3 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_3_MASK
Offset
Register Offset
MSI_CTRL_INT_3_STAT 854h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_3_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_3_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #3 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_3_STATUS
Offset
Register Offset
MSI_CTRL_INT_4_EN_O 858h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_4_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_4_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #4 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_4_EN
Offset
Register Offset
MSI_CTRL_INT_4_MAS 85Ch
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_4_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_4_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #4 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_4_MASK
Offset
Register Offset
MSI_CTRL_INT_4_STAT 860h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_4_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_4_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #4 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_4_STATUS
Offset
Register Offset
MSI_CTRL_INT_5_EN_O 864h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_5_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_5_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #5 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_5_EN
Offset
Register Offset
MSI_CTRL_INT_5_MAS 868h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_5_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_5_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #5 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_5_MASK
Offset
Register Offset
MSI_CTRL_INT_5_STAT 86Ch
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_5_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_5_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #5 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_5_STATUS
Offset
Register Offset
MSI_CTRL_INT_6_EN_O 870h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_6_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_6_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #6 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_6_EN
Offset
Register Offset
MSI_CTRL_INT_6_MAS 874h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_6_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_6_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #6 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_6_MASK
Offset
Register Offset
MSI_CTRL_INT_6_STAT 878h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_6_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_6_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #6 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_6_STATUS
Offset
Register Offset
MSI_CTRL_INT_7_EN_O 87Ch
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_7_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_7_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #7 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_7_EN
Offset
Register Offset
MSI_CTRL_INT_7_MAS 880h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_7_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_7_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #7 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_7_MASK
Offset
Register Offset
MSI_CTRL_INT_7_STAT 884h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_7_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_7_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #7 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_7_STATUS
Offset
Register Offset
MSI_GPIO_IO_OFF 888h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_GPIO_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_GPIO_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 MSI GPIO Register. The contents of this register drives the top-level GPIO msi_ctrl_io[31:0] Note: This
register field is sticky.
MSI_GPIO_RE
G
Offset
Register Offset
CLOCK_GATING_CTRL 88Ch
_OFF
Function
Using this register you can disable the RADM clock gating feature. The DWC_pcie_clk_rst.v modules uses the en_radm_clk_g
output to gate core_clk and create the radm_clk_g clock input. The controller de-asserts the en_radm_clk_g output when there
is no Rx traffic, Rx queues and pre/post-queue pipelines are empty, RADM completion LUT is empty, and there are no FLR
actions pending. You must set the RADM_CLK_GATING_EN field to enable this functionality; otherwise the en_radm_clk_g
output will always be set to '1'.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 RADM
W _CL...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-1 Reserved
RADM_CLK_G
ATING_EN
Offset
Register Offset
GEN3_RELATED_OFF 890h
Function
There is no Gen3-specific N_FTS field. The N_FTS field in the "Link Width and Speed Change Control Register" is used for
both Gen2 and Gen3 speed modes. There is no Gen3-specific "Directed Speed Change" field. The "Directed Speed Change"
field in the "Link Width and Speed Change Control Register" is used to change to Gen2 or Gen3 speed. A speed change to
Gen3 occurs if (1) the "Directed Speed Change" field is set to "1" and (2) the "Target Link Speed" field in the Link Control 2
Register is set to Gen3. Gen3 support is advertised by both sides of the link during link training.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-24 Reserved
22-19 Reserved
18 DC Balance Disable
GEN3_DC_BAL Disable DC Balance feature.
ANCE_DISABL
This field is sticky.
E
16 Equalization Disable
GEN3_EQUALI Disable equalization feature.
ZATION_DISAB
This field is sticky.
LE
15-14 Reserved
13 Assert RxEqEval
Field Function
RXEQ_RGRDL When set to '1', the controller as Gen3 EQ master asserts RxEqEval to instruct the PHY to do Rx adaptation
ESS_RXTS and evaluation after a 500ns timeout from a new preset request.
The access attributes of this field are as follows:
- Wire: see description
This field is sticky.
0b - mac_phy_rxeqeval asserts after 1us and 2 TS1 received from remote partner.
1b - mac_phy_rxeqeval asserts after 500ns regardless of TS's received or not.
Field Function
7-1 Reserved
Offset
Register Offset
GEN3_EQ_CONTROL_ 8A8h
OFF
Function
Controls equalization for Phase2 in an upstream port (USP), or Phase3 in a downstream port (DSP).
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 0 0 1 1 1 1 1 0 1 1 1 0 0 0 1
Fields
Field Function
31-27 Reserved
Request controller to send back-to-back EIEOS in Recovery.RcvrLock state until presets to coefficients
26
mapping is complete. - 0: Do not request - 1: request Note: Gen3 and Gen4 share the same register bit
GEN3_REQ_SE and have the same feature. Note: This register field is sticky.
ND_CONSEC_
EIEOS_FOR_P
SET_MAP
25 GEN3_EQ_PSET_REQ_AS_COEF is an internally reserved field. Do not use. Note: This register field is
sticky.
GEN3_EQ_PSE
T_REQ_AS_CO
EF
Preset Request Vector. Requesting of Presets during the initial part of the EQ Master Phase. Encoding
23-8
scheme is as follows: Bit [15:0] =0x0: No preset is requested and evaluated in EQ Master Phase. Bit
GEN3_EQ_PSE [i] =1: "Preset=i" is requested and evaluated in EQ Master Phase. - 0000000000000000: No preset be
T_REQ_VEC requested and evaluated in EQ Master Phase - 000000xxxxxxxxx1: Preset 0 is requested and evaluated
in EQ Master Phase - 000000xxxxxxxx1x: Preset 1 is requested and evaluated in EQ Master Phase
- 000000xxxxxxx1xx: Preset 2 is requested and evaluated in EQ Master Phase - 000000xxxxxx1xxx:
Preset 3 is requested and evaluated in EQ Master Phase - 000000xxxxx1xxxx: Preset 4 is requested
and evaluated in EQ Master Phase - 000000xxxx1xxxxx: Preset 5 is requested and evaluated in
EQ Master Phase - 000000xxx1xxxxxx: Preset 6 is requested and evaluated in EQ Master Phase -
000000xx1xxxxxxx: Preset 7 is requested and evaluated in EQ Master Phase - 000000x1xxxxxxxx:
Field Function
7 Reserved
6 Support EQ redo and lower rate change: - 0: not support - 1: support Note: Gen3 and Gen4 share the
same register bit and have the same feature. Note: This register field is sticky.
GEN3_LOWER
_RATE_EQ_RE
DO_ENABLE
Field Function
• Equalization Phase 3 Successful status bit is set in the "Link Status Register 2" when
GEN3_EQ_PHASE23_EXIT_MODE = 1
• Equalization Phase 3 Complete status bit is set in the "Link Status Register 2"
GEN3_EQ_PHASE23_EXIT_MODE = 1 affects Direction Change feed back mode. EQ requests for Figure
Of Merit mode complete before 24 ms timeout. Please see GEN3_EQ_PSET_REQ_VEC Register for more.
This field is sticky.
Offset
Register Offset
GEN3_EQ_FB_MODE_D 8ACh
IR_CHANGE_OFF
Function
Equalization controls to be used in Phase2 (USP) or Phase 3 (DSP), when you set the Feedback Mode in "Gen3 EQ Control
Register" to "Direction Change." These fields allow control over the initial starting point for the search of optimal coefficient
settings, and allow control over the criteria used to determine when the optimal settings have been achieved. The values are
applied to all the lanes.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 GEN3_EQ_FM
W DC_MA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R GEN3_EQ_FM GEN3_EQ_FMDC_MAX_PRE_CU
GEN3_EQ_FMDC_N_EVALS GEN3_EQ_FMDC_T_MIN_PHASE23
W DC_MA... SROR_DEL...
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Fields
Field Function
31-18 Reserved
Offset
Register Offset
ORDER_RULE_CTRL_O 8B4h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CPL_PASS_P NP_PASS_P
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
15-8 Completion Passing Posted Ordering Rule Control. Determines if CPL can pass halted P queue. - 0:
CPL can not pass P (recommended) - 1: CPL can pass P
CPL_PASS_P
7-0 Non-Posted Passing Posted Ordering Rule Control. Determines if NP can pass halted P queue. - 0 : NP
can not pass P (recommended). - 1 : NP can pass P
NP_PASS_P
Offset
Register Offset
PIPE_LOOPBACK_CON 8B8h
TROL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PIPE_ 0
RXSTATUS_LANE
W LO...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LPBK_RXVALID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Fields
Field Function
PIPE_LOOPBA
CK
30-22 Reserved
21-16 RXSTATUS_LANE is an internally reserved field. Do not use. Note: This register field is sticky.
RXSTATUS_LA
NE
15-0 LPBK_RXVALID is an internally reserved field. Do not use. Note: This register field is sticky.
LPBK_RXVALI
D
Offset
Register Offset
MISC_CONTROL_1_OF 8BCh
F
Function
Register Fields
PCIe Extended Capability ID, Capability Version, And Next Capability All
Offset (RASDP_EXT_CAP_HDR_OFF)
Table 13. Other registers and fields affected when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1 (continued)
Register Fields
• PM_SPEC_VER
• DSI
• AUX_CURR
• D1_SUPPORT
• D2_SUPPORT
• PME_SUPPORT
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
5 When ARI is enabled, this field enables use of the device ID. Note: This register field is sticky.
ARI_DEVICE_N
UMBER
4 Reserved
2 Suppress
UR_CA_MASK_ This field only applies to request TLPs (with UR filtering status) that you have chosen to forward to the
4_TRGT1 application (when you set DEFAULT_TARGET in this register). - When you set this field to '1', the core
suppresses error logging, Error Message generation, and CPL generation (for non-posted requests). You
should set this if you have set the Default Target port logic register to '1'. Note: This register field is
sticky.
1Default target a received IO or MEM request with UR/CA/CRS is sent to by the controller. - 0: The
controller drops all incoming I/O or MEM requests (after corresponding error reporting). A completion
DEFAULT_TAR with UR status will be generated for non-posted requests. - 1: The controller forwards all incoming
GET I/O or MEM requests with UR/CA/CRS status to your application Default value is DEFAULT_TARGET
configuration parameter. Note: This register field is sticky.
Offset
Register Offset
MULTI_LANE_CONTRO 8C0h
L_OFF
Function
Used when upsizing or downsizing the link width through Configuration state without bringing the link down. For more details,
see Link establishment†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 UPCO DIREC
TARGET_LINK_WIDTH
W NFI... T_...
Reset 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
7 Upconfigure Support. The controller sends this value as the Link Upconfigure Capability in TS2 Ordered
Sets in Configuration.Complete state. Note: This register field is sticky.
UPCONFIGUR
E_SUPPORT
6 Directed Link Width Change. The controller always moves to Configuration state through
Recovery state when this bit is set to '1'. - If the upconfigure_capable variable is '1' and
DIRECT_LINK_ the PCIE_CAP_HW_AUTO_WIDTH_DISABLE bit in LINK_CONTROL_LINK_STATUS_REG is '0', the
WIDTH_CHAN controller starts upconfigure or autonomous width downsizing (to the TARGET_LINK_WIDTH value) in
GE the Configuration state. - If TARGET_LINK_WIDTH value is 0x0, the controller does not start upconfigure
or autonomous width downsizing in the Configuration state. The controller self-clears this field when the
controller accepts this request.
Target Link Width. Values correspond to: - 6'b000000: Core does not start upconfigure or autonomous
5-0
width downsizing in the Configuration state. - 6'b000001: x1 - 6'b000010: x2 - 6'b000100: x4 -
TARGET_LINK 6'b001000: x8 - 6'b010000: x16 - 6'b100000: x32
_WIDTH
Offset
Register Offset
PHY_INTEROP_CTRL_ 8C4h
OFF
Function
This register is reserved for internal use. You should not write to this register and change the default unless specifically
instructed by Synopsys support.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
L1_NO
R 0 L1_CL 0
WA... RXSTANDBY_CONTROL
K_...
W
Reset 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0
Fields
Field Function
31-11 Reserved
10 L1 Clock control bit. - 1: Controller does not request aux_clk switch and core_clk gating in L1. - 0:
Controller requests aux_clk switch and core_clk gating in L1. Note: This register field is sticky.
L1_CLK_SEL
9L1 entry control bit. - 1: Core does not wait for PHY to acknowledge transition to P1 before entering
L1. - 0: Core waits for the PHY to acknowledge transition to P1 before entering L1. Note: The access
L1_NOWAIT_P attributes of this field are as follows: - Wire: R/W (sticky) Note: This register field is sticky.
1
8-7 Reserved
6-0 Rxstandby Control. Bits 0..5 determine if the controller asserts the RxStandby signal
(mac_phy_rxstandby) in the indicated condition. Bit 6 enables the controller to perform the RxStandby/
RXSTANDBY_ RxStandbyStatus handshake. - [0]: Rx EIOS and subsequent T TX-IDLE-MIN - [1]: Rate Change - [2]:
CONTROL Inactive lane for upconfigure/downconfigure - [3]: PowerDown=P1orP2 - [4]: RxL0s.Idle - [5]: EI Infer in
L0 - [6]: Execute RxStandby/RxStandbyStatus Handshake Note: This register field is sticky.
Offset
Register Offset
TRGT_CPL_LUT_DELE 8C8h
TE_ENTRY_OFF
Function
Using this register you can delete one entry in the target completion LUT. You should only use this register when you know that
your application will never send the completion because of an FLR or any other reason.
The target completion LUT (and associated target completion timeout event) is watching for completions (from your application
on AXI master read channel) corresponding to previously received non-posted requests from the PCIe wire.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
DELET
R
E_... LOOK_UP_ID
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LOOK_UP_ID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 This is a one-shot bit. A '1' write to this bit triggers the deletion of the target completion LUT entry that
is specified in the LOOK_UP_ID field. This is a self-clearing register field. Reading from this register field
DELETE_EN always returns a '0'.
LOOK_UP_ID
Offset
Register Offset
LINK_FLUSH_CONTRO 8CCh
L_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
RSVD_I_8
W
Reset 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 AUTO_
W FL...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-24 This is an internally reserved field. Do not use. Note: This register field is sticky.
RSVD_I_8
23-1 Reserved
0Enables automatic flushing of pending requests before sending the reset request to the application logic
to reset the PCIe controller and the AXI Bridge. The flushing process is initiated if any of the following
AUTO_FLUSH_ events occur: - Hot reset request. A downstream port (DSP) can "hot reset" an upstream port (USP) by
EN sending two consecutive TS1 ordered sets with the hot reset bit asserted. - Warm (Soft) reset request.
Generated when exiting from D3 to D0 and cfg_pm_no_soft_rst=0. - Link down reset request. A high to
low transition on smlh_req_rst_not indicates the link has gone down and the controller is requesting a
reset. If you disable automatic flushing, your application is responsible for resetting the PCIe controller
and the AXI Bridge. Note: This register field is sticky.
Offset
Register Offset
AMBA_ERROR_RESPO 8D0h
NSE_DEFAULT_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
AXI Slave Response Error Map. Allows you to selectively map the errors received from the PCIe
15-10
completion (for non-posted requests) to the AXI slave responses, slv_rresp or slv_bresp. The
AMBA_ERROR recommended setting is SLVERR. CRS is always mapped to OKAY. - [0] -- 0: UR (unsupported request)
_RESPONSE_ -> DECERR -- 1: UR (unsupported request) -> SLVERR - [1] -- 0: CRS (configuration retry status) ->
MAP DECERR -- 1: CRS (configuration retry status) -> SLVERR - [2] -- 0: CA (completer abort) -> DECERR
-- 1: CA (completer abort) -> SLVERR - [3]: Reserved - [4]: Reserved - [5]: -- 0: Completion Timeout
-> DECERR -- 1: Completion Timeout -> SLVERR The AXI bridge internally drops (processes internally
but not passed to your application) a completion that has been marked by the Rx filter as UC or MLF,
and does not pass its status directly down to the slave interface. It waits for a timeout and then signals
"Completion Timeout" to the slave interface. The controller sets the AXI slave read databus to 0xFFFF
for all error responses. Note: This register field is sticky.
9-5 Reserved
Field Function
1 Reserved
Offset
Register Offset
AMBA_LINK_TIMEOUT_ 8D4h
OFF
Function
If your application AXI master issues outbound requests to the AXI bridge slave interface before the PCIe link is operational,
the controller starts a "flush" timer. The timeout value of the timer is set by this register. The timer will timeout and then
flush the bridge TX request queues after this amount of time. The timer counts when there are pending outbound AXI slave
interface (or DMA) requests and the PCIe TX link is not transmitting any of these requests.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 LINK_
LINK_TIMEOUT_PERIOD_DEFAULT
W TI...
Reset 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0
Fields
Field Function
31-9 Reserved
8 Disable Flush. You can disable the flush feature by setting this field to "1". Note: This register field is
sticky.
LINK_TIMEOUT
_ENABLE_DEF
AULT
Timeout Value (ms). The timer will timeout and then flush the bridge TX request queues after this
7-0
amount of time. The timer counts when there are pending outbound AXI slave interface requests and
LINK_TIMEOUT the PCIe TX link is not transmitting any of these requests. The timer is clocked by core_clk. Note: This
_PERIOD_DEF register field is sticky.
AULT
Offset
Register Offset
AMBA_ORDERING_CT 8D8h
RL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Field Function
AX_MSTR_ZER The PCIe controller's AXI bridge is able to terminate in order with the Posted transactions the zero length
OLREAD_FW read, implementing the PCIe express flush semantics of the Posted transactions.
0b - The zero-length read terminates at the PCIe AXI bridge master
1b - The zero-length read is forwarded to the application
6-5 Reserved
2 Reserved
0 Reserved
Offset
Register Offset
COHERENCY_CONTRO 8E0h
L_1_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_MEMTYPE_BOUNDARY_LOW_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CFG_
CFG_MEMTYPE_BOUNDARY_LOW_ADDR
W MEM...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Boundary Lower Address For Memory Type. Bits [31:0] of dword-aligned address of the boundary for
31-2
Memory type. The two lower address LSBs are "00". Addresses up to but not including this value are
CFG_MEMTYP in the lower address space region; addresses equal or greater than this value are in the upper address
E_BOUNDARY space region. Note: This register field is sticky.
_LOW_ADDR
1 Reserved
0 Sets the memory type for the lower and upper parts of the address space: - 0: lower = Peripheral; upper
= Memory - 1: lower = Memory type; upper = Peripheral Note: This register field is sticky.
CFG_MEMTYP
E_VALUE
Offset
Register Offset
COHERENCY_CONTRO 8E4h
L_2_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_MEMTYPE_BOUNDARY_HIGH_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CFG_MEMTYPE_BOUNDARY_HIGH_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Boundary Upper Address For Memory Type. Bits [63:32] of the 64-bit dword-aligned address of the
boundary for Memory type. Note: This register field is sticky.
CFG_MEMTYP
E_BOUNDARY
_HIGH_ADDR
Offset
Register Offset
COHERENCY_CONTRO 8E8h
L_3_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 CFG_MSTR_A 0 0 CFG_MSTR_A
CFG_MSTR_AWCACHE_VALUE CFG_MSTR_ARCACHE_VALUE
W WDOMA... RDOMA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 CFG_MSTR_A 0 0 CFG_MSTR_A
CFG_MSTR_AWCACHE_MODE CFG_MSTR_ARCACHE_MODE
W WDOMA... RDOMA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
30-27 Master Write CACHE Signal Value. Value of the individual bits in mstr_awcache when
CFG_MSTR_AWCACHE_MODE is '1'. Note: not applicable to message requests; for message requests
CFG_MSTR_A the value of mstr_awcache is always "0000" Note: This register field is sticky.
WCACHE_VAL
UE
26 Reserved
25-24 Master Write DOMAIN Signal Value. Value of the individual bits in mstr_awdomain when
CFG_MSTR_AWDOMAIN_MODE is '1'. Note: not applicable to message requests; for message requests
CFG_MSTR_A the value of mstr_awdomain is always "11" Note: This register field is sticky.
WDOMAIN_VA
LUE
23 Reserved
22-19 Master Read CACHE Signal Value. Value of the individual bits in mstr_arcache when
CFG_MSTR_ARCACHE_MODE is '1'. Note: This register field is sticky.
CFG_MSTR_A
RCACHE_VAL
UE
18 Reserved
17-16 Master Read DOMAIN Signal Value. Value of the individual bits in mstr_ardomain when
CFG_MSTR_ARDOMAIN_MODE is '1' Note: This register field is sticky.
CFG_MSTR_A
RDOMAIN_VAL
UE
15 Reserved
14-11 Master Write CACHE Signal Behavior. Defines how the individual bits in mstr_awcache are controlled:
- 0: set automatically by the AXI master - 1: set by the value of the corresponding bit of the
CFG_MSTR_A CFG_MSTR_AWCACHE_VALUE field Note: for message requests the value of mstr_awcache is always
WCACHE_MO "0000" regardless of the value of this bit Note: This register field is sticky.
DE
10 Reserved
Field Function
9-8Master Write DOMAIN Signal Behavior. Defines how the individual bits in mstr_awdomain[1:0] are
controlled: - 0: set automatically by the AXI master - 1: set by the value of the corresponding bit of
CFG_MSTR_A the CFG_MSTR_AWDOMAIN_VALUE field Note:: for message requests the value of mstr_awdomain is
WDOMAIN_MO always "11" regardless of the value of this bit Note: This register field is sticky.
DE
7 Reserved
6-3 Master Read CACHE Signal Behavior. Defines how the individual bits in mstr_arcache are controlled:
- 0: set automatically by the AXI master - 1: set by the value of the corresponding bit of the
CFG_MSTR_A CFG_MSTR_ARCACHE_VALUE field Note: This register field is sticky.
RCACHE_MOD
E
2 Reserved
1-0 Master Read DOMAIN Signal Behavior. Defines how the individual bits in mstr_ardomain[1:0] are
controlled: - 0: set automatically by the AXI master - 1: set the value of the corresponding bit of the
CFG_MSTR_A CFG_MSTR_ARDOMAIN_VALUE field Note: This register field is sticky.
RDOMAIN_MO
DE
3.7.183 Lower 20 bits of the programmable AXI address where Messages coming from wire are
mapped to. (AXI_MSTR_MSG_ADDR_LOW_OFF)
Offset
Register Offset
AXI_MSTR_MSG_ADDR 8F0h
_LOW_OFF
Function
Lower 20 bits of the programmable AXI address where Messages coming from wire are mapped to. Bits [11:0] of the
register are tied to zero for the address to be 4k-aligned. In previous releases, the third and fourth DWORDs of a message
(Msg/MsgD) TLP header were delivered though the AXI master address bus (mstr_awaddr). These DWORDS are now
supplied through the mstr_awmisc_info_hdr_34dw[63:0] output; and the value on mstr_awaddr is driven to the value you have
programmed into the AXI_MSTR_MSG_ADDR_LOW_OFF and AXI_MSTR_MSG_ADDR_HIGH_OFF registers.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_AXIMSTR_MSG_ADDR_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_AXIMSTR_MSG_ADDR_LO CFG_AXIMSTR_MSG_ADDR_LOW_RESERVED
W W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Lower 20 bits of the programmable AXI address for Messages. Note: This register field is sticky.
CFG_AXIMSTR
_MSG_ADDR_L
OW
11-0 Reserved for future use. Note: This register field is sticky.
CFG_AXIMSTR
_MSG_ADDR_L
OW_RESERVE
D
3.7.184 Upper 32 bits of the programmable AXI address where Messages coming from wire are
mapped to. (AXI_MSTR_MSG_ADDR_HIGH_OFF)
Offset
Register Offset
AXI_MSTR_MSG_ADDR 8F4h
_HIGH_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_AXIMSTR_MSG_ADDR_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CFG_AXIMSTR_MSG_ADDR_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Upper 32 bits of the programmable AXI address for Messages. Note: This register field is sticky.
CFG_AXIMSTR
_MSG_ADDR_
HIGH
Offset
Register Offset
PCIE_VERSION_NUMB 8F8h
ER_OFF
Function
PCIe Controller IIP Release Version Number. The version number is given in hex format. You should convert each pair of
hex characters to ASCII to interpret. Using 4.70a (GA) as an example: - VERSION_NUMBER = 0x3437302a which translates
to 470* - VERSION_TYPE = 0x67612a2a which translates to ga** Using 4.70a-ea01 as an example: - VERSION_NUMBER
= 0x3437302a which translates to 470* - VERSION_TYPE = 0x65613031 which translates to ea01 GA is a general release
available on www.designware.com EA is an early release available on a per-customer basis.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VERSION_NUMBER
Reset 0 0 1 1 0 1 0 1 0 0 1 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VERSION_NUMBER
Reset 0 0 1 1 0 0 0 0 0 0 1 0 1 0 1 0
Fields
Field Function
VERSION_NU
MBER
Offset
Register Offset
PCIE_VERSION_TYPE_ 8FCh
OFF
Function
PCIe Controller IIP Release Version Type. The type is given in hex format. You should convert each pair of hex characters
to ASCII to interpret. Using 4.70a (GA) as an example: - VERSION_NUMBER = 0x3437302a which translates to 470*
- VERSION_TYPE = 0x67612a2a which translates to ga** Using 4.70a-ea01 as an example: - VERSION_NUMBER =
0x3437302a which translates to 470* - VERSION_TYPE = 0x65613031 which translates to ea01 GA is a general release
available on www.designware.com EA is an early release available on a per-customer basis.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VERSION_TYPE
Reset 0 1 1 0 1 1 0 0 0 1 1 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VERSION_TYPE
Reset 0 0 1 1 0 0 0 0 0 0 1 1 0 0 1 1
Fields
Field Function
VERSION_TYP
E
Offset
Register Offset
INTERFACE_TIMER_C 930h
ONTROL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-5 Reserved
4 Writing to this bit forces the value of the pending flags. Note: This register field is sticky.
FORCE_PENDI
NG
3-2Interface timer scaling. This field can be used to reduce the timer duration for verification purpose. This
field should only be programmed when the INTERFACE_TIMER_EN bit is set to 1'b0. Note: This register
INTERFACE_TI field is sticky.
MER_SCALING
1 Interface timer AER generation enable. Note: This register field is sticky.
INTERFACE_TI
MER_AER_EN
INTERFACE_TI
MER_EN
Offset
Register Offset
INTERFACE_TIMER_TA 934h
RGET_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
INTERFACE_TIMER_TARGET
W
Reset 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0
Fields
Field Function
31-16 Reserved
15-0 Interface timer target value. This field should only be programmed when the INTERFACE_TIMER_EN bit
is set to 1'b0. Note: This register field is sticky.
INTERFACE_TI
MER_TARGET
Offset
Register Offset
INTERFACE_TIMER_ST 938h
ATUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Reserved
SLAVE_RD_AD
D_TIMEOUT
Field Function
SLAVE_WR_D
ATA_TIMEOUT
SLAVE_WR_A
DD_TIMEOUT
8-7 Reserved
MASTER_RD_
DATA_TIMEOU
T
MASTER_WR_
RES_TIMEOUT
CLIENT2_INTE
RFACE_TIMEO
UT
CLIENT1_INTE
RFACE_TIMEO
UT
2 Reserved
CPL_INTERFA
CE_TIMEOUT
MESSAGE_INT
ERFACE_TIME
OUT
Offset
Register Offset
MSIX_ADDRESS_MATC 940h
H_LOW_OFF
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required
to generate MSI-X requests. For more details, see Interrupts†. This register is only used in AXI configurations. When your local
AXI application writes (MWr) to the address defined in this register (and MSIX_ADDRESS_MATCH_HIGH_OFF), the controller
will load the MSIX_DOORBELL_OFF register with the contents of the MWr and subsequently create and send MSI-X TLPs
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSIX_ADDRESS_MATCH_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MSIX_
R MSIX_
MSIX_ADDRESS_MATCH_LOW AD...
AD...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 MSI-X Address Match Low Address. Note: This register field is sticky.
MSIX_ADDRES
S_MATCH_LO
W
MSIX_ADDRES
S_MATCH_RE
SERVED_1
0 MSI-X Match Enable. Enable the MSI-X Address Match feature when the AXI bridge is present. Note:
This register field is sticky.
MSIX_ADDRES
S_MATCH_EN
Offset
Register Offset
MSIX_ADDRESS_MATC 944h
H_HIGH_OFF
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required
to generate MSI-X requests. For more details, see Interrupts†. This register is only used in AXI configurations. When your local
AXI application writes (MWr) to the address defined in this register (and MSIX_ADDRESS_MATCH_LOW_OFF), the controller
will load the MSIX_DOORBELL_OFF register with the contents of the MWr and subsequently create and send MSI-X TLPs
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSIX_ADDRESS_MATCH_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSIX_ADDRESS_MATCH_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 MSI-X Address Match High Address. Note: This register field is sticky.
MSIX_ADDRES
S_MATCH_HIG
H
Offset
Register Offset
MSIX_DOORBELL_OFF 948h
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required to
generate MSI-X requests. For more details, see Interrupts†.
For AXI configurations: when your local application writes (MWr) to the address defined in MSIX_ADDRESS_MATCH_LOW_OFF,
the controller will load this register with the contents of the MWr and subsequently create and send MSI-X TLPs.
For non-AMBA configurations: when your local application writes to this register, the controller will create and send MSI-X TLPs.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MSIX_DOORBELL_RES
W MSIX_DOORBELL_PF MSIX_DOORBELL_VF
ERVED_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MSIX_ MSIX_
W MSIX_DOORBELL_TC MSIX_DOORBELL_VECTOR
DO... DO...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
MSIX_DOORB
ELL_RESERVE
D_29_31
28-24 MSIX Doorbell Physical Function. This register determines the Physical Function for the MSI-X
transaction.
MSIX_DOORB
ELL_PF
23-16 MSIX Doorbell Virtual Function. This register determines the Virtual Function for the MSI-X transaction.
MSIX_DOORB
ELL_VF
15 MSIX Doorbell Virtual Function Active. This register determines whether a Virtual Function is used to
generate the MSI-X transaction.
MSIX_DOORB
ELL_VF_ACTIV
E
14-12 MSIX Doorbell Traffic Class. This register determines which traffic class to generate the MSI-X
transaction with.
MSIX_DOORB
ELL_TC
11 Reserved
Field Function
MSIX_DOORB
ELL_RESERVE
D_11
10-0 MSI-X Doorbell Vector. This register determines which vector to generate the MSI-X transaction for.
MSIX_DOORB
ELL_VECTOR
Offset
Register Offset
MSIX_RAM_CTRL_OFF 94Ch
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required
to generate MSI-X requests. For more details, see Interrupts†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSIX_RAM_CT
RL_RESERVE
D_26_31
Field Function
25 MSIX PBA RAM Debug Mode. Use this bit to activate the debug mode and allow direct read/write access
to the PBA. Use can also use the dbg_pba input to activate debug mode. Debug mode turns off the
MSIX_RAM_CT PF/VF/Offset-based addressing into the RAM and maps the entire table linearly from the base address of
RL_DBG_PBA the BAR (indicated by the BIR) in function 0. Note: This register field is sticky.
24 MSIX Table RAM Debug Mode. Use this bit to activate the debug mode and allow direct read/write
access to the Table. Use can also use the dbg_table input to activate debug mode. Debug mode turns
MSIX_RAM_CT off the PF/VF/Offset-based addressing into the RAM and maps the entire table linearly from the base
RL_DBG_TABL address of the BAR (indicated by the BIR) in function 0. Note: This register field is sticky.
E
MSIX_RAM_CT
RL_RESERVE
D_17_23
16 MSIX RAM Control Bypass. The bypass field, when set, disables the internal generation of low power
signals for both RAMs. It is up to the application to ensure the RAMs are in the proper power state before
MSIX_RAM_CT trying to access them. Moreover, the application needs to observe all timing requirements of the RAM
RL_BYPASS low power signals before trying to use the MSIX functionality. Note: This register field is sticky.
MSIX_RAM_CT
RL_RESERVE
D_10_15
9 MSIX PBA RAM Shut Down. Set this bit to drive the cfg_msix_pba_sd output to signal your external logic
to place the MSIX PBA RAM in Shut Down low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_PBA_SD
8 MSIX PBA RAM Deep Sleep. Set this bit to drive the cfg_msix_pba_ds output to signal your external
logic to place the MSIX PBA RAM in Deep Sleep low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_PBA_DS
MSIX_RAM_CT
RL_RESERVE
D_2_7
1 MSIX Table RAM Shut Down. Set this bit to drive the cfg_msix_table_sd output to signal your external
logic to place the MSIX Table RAM in Shut Down low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_TABLE_SD
0 MSIX Table RAM Deep Sleep. Set this bit to drive the cfg_msix_table_ds output to signal your external
logic to place the MSIX Table RAM in Deep Sleep low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_TABLE_DS
Offset
Register Offset
SAFETY_MASK_OFF 960h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
5 Mask for functional safety interrupt event 5 (RASDP correctable). Note: This register field is sticky.
SAFETY_INT_
MASK_5
4 Mask for functional safety interrupt event 4 (PCIe correctable). Note: This register field is sticky.
SAFETY_INT_
MASK_4
3 Mask for functional safety interrupt event 3 (PCIe uncorrectable). Note: This register field is sticky.
SAFETY_INT_
MASK_3
2 Mask for functional safety interrupt event 2 (Interface timers). Note: This register field is sticky.
SAFETY_INT_
MASK_2
1 Mask for functional safety interrupt event 1 (CDM register checker). Note: This register field is sticky.
SAFETY_INT_
MASK_1
Field Function
0 Mask for functional safety interrupt event 0 (RASDP). Note: This register field is sticky.
SAFETY_INT_
MASK_0
Offset
Register Offset
SAFETY_STATUS_OFF 964h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
SAFETY_INT_S
TATUS_5
SAFETY_INT_S
TATUS_4
Field Function
SAFETY_INT_S
TATUS_3
SAFETY_INT_S
TATUS_2
SAFETY_INT_S
TATUS_1
SAFETY_INT_S
TATUS_0
Offset
Register Offset
PL_CHK_REG_CONTR B20h
OL_STATUS_OFF
Function
CDM Register Checking Control and Status Register. Controls register checking and displays status of register checking.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CHK_ CHK_
W REG... REG...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-19 Reserved
CHK_REG_CO
MPLETE
CHK_REG_LO
GIC_ERROR
16 The system has detected that there is a bit error in the CDM Register Data.
CHK_REG_CO
MPARISON_ER
ROR
15-2 Reserved
CHK_REG_CO
NTINUOUS
CHK_REG_STA
RT
3.7.197 CDM Register Checking First and Last address to check. (PL_CHK_REG_START_END_OFF)
Offset
Register Offset
PL_CHK_REG_START_ B24h
END_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CHK_REG_END_ADDR
W
Reset 0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CHK_REG_START_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 The last address that is checked by the system. Note: This register field is sticky.
CHK_REG_EN
D_ADDR
15-0 The first address that is checked by the system. Note: This register field is sticky.
CHK_REG_STA
RT_ADDR
Offset
Register Offset
PL_CHK_REG_ERR_AD B28h
DR_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CHK_REG_ERR_ADDR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CHK_REG_ERR_ADDR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 The address at which an error has been detected. Valid only when the CDM Register Checker
Comparison Error bit is set in the status register. Note: This register field is sticky.
CHK_REG_ER
R_ADDR
Offset
Register Offset
PL_CHK_REG_ERR_PF B2Ch
_VF_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 CHK_REG_VF_ERR_NUMBER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CHK_REG_PF_ERR_NUMBER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
27-16 The VF number at which the error was detected. Valid only when the CDM Register Checker
Comparison Error bit is set in the status register. Note: This register field is sticky.
CHK_REG_VF_
ERR_NUMBER
15-5 Reserved
4-0 The PF number at which the error was detected. Valid only when the CDM Register Checker
Comparison Error bit is set in the status register. Note: This register field is sticky.
CHK_REG_PF_
ERR_NUMBER
Offset
Register Offset
AUX_CLK_FREQ_OFF B40h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
AUX_CLK_FREQ
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0
Fields
Field Function
31-10 Reserved
The aux_clk frequency in MHz. This value is used to provide a 1 us reference for counting time during
9-0
low-power states with aux_clk when the PHY has removed the pipe_clk. Frequencies lower than 1 MHz
AUX_CLK_FRE are possible but with a loss of accuracy in the time counted. If the actual frequency (f) of aux_clk does
Q not exactly match the programmed frequency (f_prog), then there is an error in the time counted by the
controller that can be expressed in percentage as: err% = (f_prog/f-1)*100. For example if f=2.5 MHz
and f_prog=3 MHz, then err% =(3/2.5-1)*100 =20%, meaning that the time counted by the controller
on aux_clk will be 20% greater than the time in us programmed in the corresponding time register (for
example T_POWER_ON). Note: This register field is sticky.
Offset
Register Offset
BAR0_MASK 2_0010h
Function
Serves as the mask for BAR0.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE0_BAR0_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE0_BAR0_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR1_MASK 2_0014h
Function
Serves as the mask for BAR1.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE0_BAR1_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE0_BAR1_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR2_MASK 2_0018h
Function
Serves as the mask for BAR2.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE0_BAR2_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE0_BAR2_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR3_MASK 2_001Ch
Function
Serves as the mask for BAR3.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE0_BAR3_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE0_BAR3_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR4_MASK 2_0020h
Function
Serves as the mask for BAR4.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE0_BAR4_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE0_BAR4_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR5_MASK 2_0024h
Function
Serves as the mask for BAR5.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE0_BAR5_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE0_BAR5_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
IATU_REGION_CTRL_1 6_0000h
_OFF_OUTBOUND_0
Register Offset
IATU_REGION_CTRL_1 6_0200h
_OFF_OUTBOUND_1
IATU_REGION_CTRL_1 6_0400h
_OFF_OUTBOUND_2
IATU_REGION_CTRL_1 6_0600h
_OFF_OUTBOUND_3
IATU_REGION_CTRL_1 6_0800h
_OFF_OUTBOUND_4
IATU_REGION_CTRL_1 6_0A00h
_OFF_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0
CTRL_1_FUNC_NUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 INCRE 0
ATTR TD TC TYPE
W AS...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-23 Reserved
19-14 Reserved
Field Function
12-11 Reserved
10-9 When the address of an outbound TLP is matched to this region, then the ATTR field of the TLP is
changed to the value in this register. Note: This register field is sticky.
ATTR
8 When the address of an outbound TLP is matched to this region, then the TD field of the TLP is changed
to the value in this register. Note: This register field is sticky.
TD
7-5 When the address of an outbound TLP is matched to this region, then the TC field of the TLP is changed
to the value in this register. Note: This register field is sticky.
TC
4-0 When the address of an outbound TLP is matched to this region, then the TYPE field of the TLP is
changed to the value in this register. Note: This register field is sticky.
TYPE
Offset
Register Offset
IATU_REGION_CTRL_2 6_0004h
_OFF_OUTBOUND_0
IATU_REGION_CTRL_2 6_0204h
_OFF_OUTBOUND_1
IATU_REGION_CTRL_2 6_0404h
_OFF_OUTBOUND_2
IATU_REGION_CTRL_2 6_0604h
_OFF_OUTBOUND_3
IATU_REGION_CTRL_2 6_0804h
_OFF_OUTBOUND_4
IATU_REGION_CTRL_2 6_0A04h
_OFF_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
TAG Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Region Enable. This bit must be set to '1' for address translation to take place. Note: This register field is
sticky.
REGION_EN
30 Reserved
Invert Mode. When set the address matching region is inverted. Therefore, an address match occurs
29
when the untranslated address is in the region outside the defined range (Base Address to Limit
INVERT_MODE Address). Note: This register field is sticky.
DMA Bypass Mode. Allows request TLPs which are initiated by the DMA controller to pass through the
27
iATU untranslated. Note: This field is reserved for the SW product. You must set it to '0'. Note: This
DMA_BYPASS register field is sticky.
26-24 Reserved
Header Substitute Enable. When enabled and region address is matched, the iATU fully substitutes
23
bytes 8-11 (for 3 DWORD header) or bytes 12-15 (for 4 DWORD header) of the outbound TLP header
HEADER_SUB with the contents of the LWR_TARGET_RW field in IATU_LWR_TARGET_ADDR_OFF_OUTBOUND_i.
STITUTE_EN - 1: LWR_TARGET_RW in the iATU_LWR_TARGET_ADDR_OFF_OUTBOUND_i register is used to fill
bytes 8-to-11 (for 3 DWORD header) or bytes 12-to-15 (for 4 DWORD header) of the translated TLP
header. - 0: LWR_TARGET_RW in the iATU_LWR_TARGET_ADDR_OFF_OUTBOUND_i register forms
the new address of the translated region. Note: This register field is sticky.
Field Function
22 Inhibit TLP Payload Data for TLP's in Matched Region; assign iATU region to be TLP without data. When
enabled and region address is matched, the iATU marks all TLPs as having no payload data by forcing
INHIBIT_PAYL the TLP header Fmt[1] bit =0, regardless of the application inputs such as slv_wstrb. - 1: Fmt[1] =0 so
OAD that only TLP type without data is sent. For example, a Msg instead of MsgD will be sent. - 0: Fmt[1] =0/1
so that TLPs with or without data can be sent. Note: This register field is sticky.
21 Reserved
20 Serialize Non-Posted Requests. In this mode, when the AXI Bridge is populated, same AXI ID Non-
Posted Read/Write Requests are transmitted on the wire if there are no other same ID Non-Posted
SNP Requests outstanding. Note: This register field is sticky.
19 Function Number Translation Bypass. In this mode, the function number of the translated TLP is taken
from your application transmit interface and not from the CTRL_1_FUNC_NUM field of the "iATU Control
FUNC_BYPAS 1 Register" or the VF_NUMBER field of the "iATU Control 3 Register." Note: This register field is sticky.
S
18-17 Reserved
15-8 TAG. The substituted TAG field (byte 6) in the outgoing TLP header when TAG_SUBSTITUTE_EN is set.
Note: This register field is sticky.
TAG
7-0 Reserved
Offset
Register Offset
IATU_LWR_BASE_ADD 6_0008h
R_OFF_OUTBOUND_0
IATU_LWR_BASE_ADD 6_0208h
R_OFF_OUTBOUND_1
Register Offset
IATU_LWR_BASE_ADD 6_0408h
R_OFF_OUTBOUND_2
IATU_LWR_BASE_ADD 6_0608h
R_OFF_OUTBOUND_3
IATU_LWR_BASE_ADD 6_0808h
R_OFF_OUTBOUND_4
IATU_LWR_BASE_ADD 6_0A08h
R_OFF_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LWR_BASE_HW
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Forms bits 31:12 of the start address of the address region to be translated.
LWR_BASE_R This field is sticky.
W
11-0 Forms bits 11:0 of the start address of the address region to be translated.
LWR_BASE_H The PCIe controller ignores any writes to this location.
W
This field is sticky.
Offset
Register Offset
IATU_UPPER_BASE_A 6_000Ch
DDR_OFF_OUTBOUND
_0
IATU_UPPER_BASE_A 6_020Ch
DDR_OFF_OUTBOUND
_1
IATU_UPPER_BASE_A 6_040Ch
DDR_OFF_OUTBOUND
_2
IATU_UPPER_BASE_A 6_060Ch
DDR_OFF_OUTBOUND
_3
IATU_UPPER_BASE_A 6_080Ch
DDR_OFF_OUTBOUND
_4
IATU_UPPER_BASE_A 6_0A0Ch
DDR_OFF_OUTBOUND
_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms bits [63:32] of the start (and end) address of the address region to be translated. In systems with
31-0
a 32-bit address space, this register is not used and therefore writing to this register has no effect. Note:
UPPER_BASE_ This register field is sticky.
RW
Offset
Register Offset
IATU_LIMIT_ADDR_OFF 6_0010h
_OUTBOUND_0
IATU_LIMIT_ADDR_OFF 6_0210h
_OUTBOUND_1
IATU_LIMIT_ADDR_OFF 6_0410h
_OUTBOUND_2
IATU_LIMIT_ADDR_OFF 6_0610h
_OUTBOUND_3
IATU_LIMIT_ADDR_OFF 6_0810h
_OUTBOUND_4
IATU_LIMIT_ADDR_OFF 6_0A10h
_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LIMIT_ADDR_HW
LIMIT_ADDR_RW
W
Reset 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
31-12 Forms upper bits of the end address of the address region to be translated.
LIMIT_ADDR_R The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
This field is sticky.
11-0 Forms lower bits of the end address of the address region to be translated.
LIMIT_ADDR_H The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
Offset
Register Offset
IATU_LWR_TARGET_A 6_0014h
DDR_OFF_OUTBOUND
_0
IATU_LWR_TARGET_A 6_0214h
DDR_OFF_OUTBOUND
_1
IATU_LWR_TARGET_A 6_0414h
DDR_OFF_OUTBOUND
_2
IATU_LWR_TARGET_A 6_0614h
DDR_OFF_OUTBOUND
_3
IATU_LWR_TARGET_A 6_0814h
DDR_OFF_OUTBOUND
_4
IATU_LWR_TARGET_A 6_0A14h
DDR_OFF_OUTBOUND
_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_TARGET_RW_OUTBOUND
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LWR_TARGET_RW_OUTBOUND
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
LWR_TARGET • LWR_TARGET_RW[31:12] forms MSB's of the Lower Target part of the new address of the
_RW_OUTBOU translated region
ND
• LWR_TARGET_RW[11:0] are not used. (The start address must be aligned to a 4 KB boundary, so
the lower bits of the start address of the new address of the translated region [bits 11:0] are always
'0').
When HEADER_SUBSTITUTE_EN in IATU_REGION_CTRL_2_OFF_OUTBOUND_i is '1',
LWR_TARGET_RW[31:0] forms bytes 8-11 (for 3 dword header) or bytes 12-15 (for 4 dword header)
of the outbound TLP header. Usage scenarios include the transmission of Vendor Defined Messages where
the controller determines the content of bytes 12 to 15 of the TLP header.
This field is sticky.
Offset
Register Offset
IATU_UPPER_TARGET 6_0018h
_ADDR_OFF_OUTBOU
ND_0
IATU_UPPER_TARGET 6_0218h
_ADDR_OFF_OUTBOU
ND_1
IATU_UPPER_TARGET 6_0418h
_ADDR_OFF_OUTBOU
ND_2
IATU_UPPER_TARGET 6_0618h
_ADDR_OFF_OUTBOU
ND_3
IATU_UPPER_TARGET 6_0818h
_ADDR_OFF_OUTBOU
ND_4
IATU_UPPER_TARGET 6_0A18h
_ADDR_OFF_OUTBOU
ND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Forms bits [63:32] of the start address (Upper Target part) of the new address of the translated region.
Note: This register field is sticky.
UPPER_TARG
ET_RW
Offset
Register Offset
IATU_UPPR_LIMIT_ADD 6_0020h
R_OFF_OUTBOUND_0
IATU_UPPR_LIMIT_ADD 6_0220h
R_OFF_OUTBOUND_1
IATU_UPPR_LIMIT_ADD 6_0420h
R_OFF_OUTBOUND_2
IATU_UPPR_LIMIT_ADD 6_0620h
R_OFF_OUTBOUND_3
IATU_UPPR_LIMIT_ADD 6_0820h
R_OFF_OUTBOUND_4
IATU_UPPR_LIMIT_ADD 6_0A20h
R_OFF_OUTBOUND_5
Function
The maximum size of an address translation region is 1 TB. This register is only used when the INCREASE_REGION_SIZE
field in IATU_REGION_CTRL_1_OFF_OUTBOUND_i is '1'.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UPPR_LIMIT_ADDR_HW
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UPPR_LIMIT_ADDR_HW
UPPR_LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms MSB's of the Upper Limit part of the region "end address" to be translated. Only applies to 64-bit
31-8
systems and when the INCREASE_REGION_SIZE field in IATU_REGION_CTRL_1_OFF_OUTBOUND_i
UPPR_LIMIT_A is '1'. These bits are always '0'.
DDR_HW
7-0Forms the LSB's of the Upper Limit part of the region "end address" to be
translated. Only applies to 64-bit systems and when the INCREASE_REGION_SIZE field in
UPPR_LIMIT_A IATU_REGION_CTRL_1_OFF_OUTBOUND_i is '1' Note: This register field is sticky.
DDR_RW
Offset
Register Offset
IATU_REGION_CTRL_1 6_0100h
_OFF_INBOUND_0
IATU_REGION_CTRL_1 6_0300h
_OFF_INBOUND_1
IATU_REGION_CTRL_1 6_0500h
_OFF_INBOUND_2
IATU_REGION_CTRL_1 6_0700h
_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0
CTRL_1_FUNC_NUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 INCRE 0
ATTR TD TC TYPE
W AS...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-23 Reserved
Function Number. - MEM-I/O: When the Address and BAR matching logic in the controller indicate that a
22-20
MEM-I/O transaction matches a BAR in the function corresponding to this value, then address translation
CTRL_1_FUNC proceeds. This check is only performed if the "Function Number Match Enable" bit of the "iATU Control
_NUM 2 Register" is set. - CFG0/CFG1: When the destination function number as specified in the routing ID of
the TLP header matches the function, then address translation proceeds. This check is only performed if
the "Function Number Match Enable" bit of the "iATU Control 2 Register" is set. Note: This register field
is sticky.
19-14 Reserved
12-11 Reserved
10-9 When the ATTR field of an inbound TLP is matched to this value, then address translation proceeds
(when all other enabled field-matches are successful). This check is only performed if the "ATTR Match
ATTR Enable" bit of the "iATU Control 2 Register" is set. Note: This register field is sticky.
8 When the TD field of an inbound TLP is matched to this value, then address translation proceeds (when
all other enabled field-matches are successful). This check is only performed if the "TD Match Enable" bit
TD of the "iATU Control 2 Register" is set. Note: This register field is sticky.
7-5 When the TC field of an inbound TLP is matched to this value, then address translation proceeds (when
all other enabled field-matches are successful). This check is only performed if the "TC Match Enable" bit
TC of the "iATU Control 2 Register" is set. Note: This register field is sticky.
Field Function
4-0 When the TYPE field of an inbound TLP is matched to this value, then address translation proceeds
(when all other enabled field-matches are successful). Note: This register field is sticky.
TYPE
Offset
Register Offset
IATU_REGION_CTRL_2 6_0104h
_OFF_INBOUND_0
IATU_REGION_CTRL_2 6_0304h
_OFF_INBOUND_1
IATU_REGION_CTRL_2 6_0504h
_OFF_INBOUND_2
IATU_REGION_CTRL_2 6_0704h
_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R REGI MATC INVER CFG_ FUZZ 0 RESPONSE_C SINGL 0 Reserv 0 FUNC 0 ATTR_
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Region Enable. This bit must be set to '1' for address translation to take place. Note: This register field is
sticky.
REGION_EN
Match Mode. Determines Inbound matching mode for TLPs. The mode depends on the type of TLP that
30
is received as follows: For MEM-I/O TLPs, this field is interpreted as follows: - 0: Address Match Mode.
MATCH_MODE The iATU operates using addresses as in the outbound direction. The Region Base and Limit Registers
Field Function
must be setup. - 1:BAR Match Mode. BAR matching is used. The "BAR Number" field is relevant. Not
used for RC. For CFG0 TLPs, this field is interpreted as follows: - 0: Routing ID Match Mode. The iATU
interprets the Routing ID (Bytes 8 to 11 of TLP header) as an address. This corresponds to the upper 16
bits of the address in MEM-I/O transactions. The Routing ID of the TLP must be within the base and limit
of the iATU region for matching to proceed. - 1: Accept Mode. The iATU accepts all CFG0 transactions
as address matches. The routing ID in the CFG0 TLP is ignored. This is useful as all received CFG0
TLPs should be processed regardless of the Bus number. For MSG/MSGD TLPs, this field is interpreted
as follows: - 0: Address Match Mode. The iATU treats the third dword and fourth dword of the inbound
MSG/MSGD TLP as an address and it is matched against the Region Base and Limit Registers. -
1: Vendor ID Match Mode. This mode is relevant for ID-routed Vendor Defined Messages. The iATU
ignores the Routing ID (Bus, Device, Function) in bits [31:16] of the third dword of the TLP header,
but matches against the Vendor ID in bits [15:0] of the third dword of the TLP header. Bits [15:0] of
the Region Upper Base register should be programmed with the required Vendor ID. The lower Base
and Limit Register should be programmed to translate TLPs based on vendor specific information in
the fourth dword of the TLP header. - If SINGLE_ADDRESS_LOCATION_TRANSLATE_EN = 1 AND
MSG_TYPE_MATCH_MODE = 1, then Match Mode is ignored. Note: This register field is sticky.
29 Invert Mode. When set the address matching region is inverted. Therefore, an address match occurs
when the untranslated address is in the region outside the defined range (Base Address to Limit
INVERT_MODE Address). Note: This register field is sticky.
28 CFG Shift Mode. This is useful for CFG transactions where the PCIe configuration mechanism maps bits
[27:12] of the address to the bus/device and function number. This allows a CFG configuration space
CFG_SHIFT_M to be located in any 256MB window of your application memory space using a 28-bit effective address.
ODE Shifts bits [31:16] of the untranslated address to form bits [27:12] of the translated address. Note: This
register field is sticky.
27 Fuzzy Type Match Mode. When enabled, the iATU relaxes the matching of the TLP TYPE field against
the expected TYPE field so that - CfgRd0 and CfgRd1 TLPs are seen as identical. Similarly with CfgWr0
FUZZY_TYPE_ and CfgWr1. - MWr, MRd and MRdLk TLPs are seen as identical - The Routing field of Msg/MsgD TLPs
MATCH_CODE is ignored - FetchAdd, Swap and CAS are seen as identical. For example, CFG0 in the TYPE field in the
"iATU Control 1 Register" matches against an inbound CfgRd0, CfgRd1, CfgWr0 or CfgWr1 TLP. Note:
This register field is sticky.
26 Reserved
25-24 Response Code. Defines the type of response to give for accesses matching this region. This overrides
the normal RADM filter response. Note that this feature is not available for any region where Single
RESPONSE_C Address Location Translate is enabled. - 00 - Normal RADM filter response is used. - 01 - Unsupported
ODE request (UR) - 10 - Completer abort (CA) - 11 - Not used / undefined / reserved. Note: This register field
is sticky.
23 Single Address Location Translate Enable. When enabled, Rx TLPs can be translated to a single
address location as determined by the target address register of the iATU region. The main usage
SINGLE_ADDR scenario is translation of Messages (such as Vendor Defined or ATS Messages) to MWr TLPs when the
_LOC_TRANS_ AXI bridge is enabled. Note: This register field is sticky.
EN
22 Reserved
Field Function
21 Reserved
20 Reserved
19 Function Number Match Enable. Ensures that a successful Function Number TLP field comparison
match (see Function Number field of the "iATU Control 1 Register") occurs (in MEM-I/O and CFG0/CFG1
FUNC_NUM_M transactions) for address translation to proceed. Note: This register field is sticky.
ATCH_EN
18-17 Reserved
16 ATTR Match Enable. Ensures that a successful ATTR TLP field comparison match (see ATTR field
of the "iATU Control 1 Register") occurs for address translation to proceed. Note: This register field is
ATTR_MATCH_ sticky.
EN
15 TD Match Enable. Ensures that a successful TD TLP field comparison match (see TD field of the "iATU
Control 1 Register") occurs for address translation to proceed. Note: This register field is sticky.
TD_MATCH_E
N
14 TC Match Enable. Ensures that a successful TC TLP field comparison match (see TC field of the "iATU
Control 1 Register") occurs for address translation to proceed. Note: This register field is sticky.
TC_MATCH_E
N
13 Message Type Match Mode. When enabled, and if single address location translate enable is set, then
inbound TLPs of type MSG/MSGd which match the type field of the iatu_region_ctrl_1_OFF_inbound
MSG_TYPE_M register (=>TYPE[4:3]=2'b10) will be translated. Message type match mode overrides any value of
ATCH_MODE MATCH_MODE field in this register. Usage scenarios for this are translation of VDM or ATS messages
when AXI bridge is configured on client interface. Note: This register field is sticky.
12-11 Reserved
10-8 BAR Number. When the BAR number of an inbound MEM or IO TLP " that is matched by the normal
internal BAR address matching mechanism " is the same as this field, address translation proceeds
BAR_NUM (when all other enabled field-matches are successful). This check is only performed if the "Match Mode"
bit of the "iATU Control 2 Register" is set. - 000b - BAR0 - 001b - BAR1 - 010b - BAR2 - 011b - BAR3
- 100b - BAR4 - 101b - BAR5 - 110b - ROM - 111b - reserved - IO translation would require either
00100b or 00101b in the inbound TLP TYPE; the BAR Number set in the range 000b - 101b and that
BAR configured as an IO BAR. Note: This register field is sticky.
7-0 Reserved
Offset
Register Offset
IATU_LWR_BASE_ADD 6_0108h
R_OFF_INBOUND_0
IATU_LWR_BASE_ADD 6_0308h
R_OFF_INBOUND_1
IATU_LWR_BASE_ADD 6_0508h
R_OFF_INBOUND_2
IATU_LWR_BASE_ADD 6_0708h
R_OFF_INBOUND_3
Function
The minimum size of an address translation region is 4 KB. The lower 12 bits are zero.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LWR_BASE_HW
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
IATU_UPPER_BASE_A 6_010Ch
DDR_OFF_INBOUND_0
IATU_UPPER_BASE_A 6_030Ch
DDR_OFF_INBOUND_1
IATU_UPPER_BASE_A 6_050Ch
DDR_OFF_INBOUND_2
IATU_UPPER_BASE_A 6_070Ch
DDR_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Forms bits [63:32] of the start (and end) address of the address region to be translated. Note: This
register field is sticky.
UPPER_BASE_
RW
Offset
Register Offset
IATU_LIMIT_ADDR_OFF 6_0110h
_INBOUND_0
Register Offset
IATU_LIMIT_ADDR_OFF 6_0310h
_INBOUND_1
IATU_LIMIT_ADDR_OFF 6_0510h
_INBOUND_2
IATU_LIMIT_ADDR_OFF 6_0710h
_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LIMIT_ADDR_HW
LIMIT_ADDR_RW
W
Reset 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
31-12 Forms upper bits of the end address of the address region to be translated.
LIMIT_ADDR_R The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
This field is sticky.
11-0 Forms lower bits of the end address of the address region to be translated.
LIMIT_ADDR_H The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
Offset
Register Offset
IATU_LWR_TARGET_A 6_0114h
DDR_OFF_INBOUND_0
IATU_LWR_TARGET_A 6_0314h
DDR_OFF_INBOUND_1
IATU_LWR_TARGET_A 6_0514h
DDR_OFF_INBOUND_2
IATU_LWR_TARGET_A 6_0714h
DDR_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LWR_TARGET_HW
LWR_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Forms MSB's of the Lower Target part of the new address of the translated region.
LWR_TARGET These bits are always '0'.
_RW
This field is sticky.
11-0 Forms the LSB's of the Lower Target part of the new address of the translated region.
LWR_TARGET The start address must be aligned to a 4 KB boundary (in address match mode); and to the Bar size
_HW boundary (in BAR match mode) so that these bits are always '0'. If the BAR is smaller than the iATU region
size, then the iATU target address must align to the iATU region size; otherwise it must align to the BAR size.
The PCIe controller ignores writes to this location.
Offset
Register Offset
IATU_UPPER_TARGET 6_0118h
_ADDR_OFF_INBOUND
_0
IATU_UPPER_TARGET 6_0318h
_ADDR_OFF_INBOUND
_1
IATU_UPPER_TARGET 6_0518h
_ADDR_OFF_INBOUND
_2
IATU_UPPER_TARGET 6_0718h
_ADDR_OFF_INBOUND
_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms bits [63:32] of the start address (Upper Target part) of the new address of the translated region. In
31-0
systems with a 32-bit address space, this register is not used and therefore writing to this register has no
UPPER_TARG effect. Note: This register field is sticky.
ET_RW
Offset
Register Offset
IATU_UPPR_LIMIT_ADD 6_0120h
R_OFF_INBOUND_0
IATU_UPPR_LIMIT_ADD 6_0320h
R_OFF_INBOUND_1
IATU_UPPR_LIMIT_ADD 6_0520h
R_OFF_INBOUND_2
IATU_UPPR_LIMIT_ADD 6_0720h
R_OFF_INBOUND_3
Function
The maximum size of an address translation region is 1 TB. This register is only used when the INCREASE_REGION_SIZE field
in IATU_REGION_CTRL_1_OFF_INBOUND_i is '1'.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UPPR_LIMIT_ADDR_HW
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UPPR_LIMIT_ADDR_HW
UPPR_LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms MSB's of the Upper Limit part of the region "end address" to be translated. Only applies to 64-bit
31-8
systems and when the INCREASE_REGION_SIZE field in IATU_REGION_CTRL_1_OFF_INBOUND_i is
UPPR_LIMIT_A '1'. These bits are always '0'.
DDR_HW
7-0Forms the LSB's of the Upper Limit part of the region "end address" to be
translated. Only applies to 64-bit systems and when the INCREASE_REGION_SIZE field in
UPPR_LIMIT_A IATU_REGION_CTRL_1_OFF_INBOUND_i is '1' Note: This register field is sticky.
DDR_RW
(In bits)
Ch BIST, Header Type, Latency Timer, and Cache Line Size 32 RW 0001_0000h
(TYPE1_BIST_HDR_TYPE_LAT_CACHE_LINE_SIZE_REG)
50h MSI Capability ID, Next Pointer, Capability And Control 32 RW 0180_7005h
(PCI_MSI_CAP_ID_NEXT_CTRL_REG)
(In bits)
(In bits)
1A4h Error Injection Control 6 (Compare Point Header DWORD #0) 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H0_REG)
1A8h Error Injection Control 6 (Compare Point Header DWORD #1) 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H1_REG)
(In bits)
1ACh Error Injection Control 6 (Compare Point Header DWORD #2) 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H2_REG)
1B0h Error Injection Control 6 (Compare Point Header DWORD #3) 32 RW 0000_0000h
(EINJ6_COMPARE_POINT_H3_REG)
1B4h Error Injection Control 6 (Compare Value Header DWORD #0) 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H0_REG)
1B8h Error Injection Control 6 (Compare Value Header DWORD #1) 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H1_REG)
1BCh Error Injection Control 6 (Compare Value Header DWORD #2) 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H2_REG)
1C0h Error Injection Control 6 (Compare Value Header DWORD #3) 32 RW 0000_0000h
(EINJ6_COMPARE_VALUE_H3_REG)
1C4h Error Injection Control 6 (Change Point Header DWORD #0) 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H0_REG)
1C8h Error Injection Control 6 (Change Point Header DWORD #1) 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H1_REG)
1CCh Error Injection Control 6 (Change Point Header DWORD #2) 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H2_REG)
1D0h Error Injection Control 6 (Change Point Header DWORD #3) 32 RW 0000_0000h
(EINJ6_CHANGE_POINT_H3_REG)
1D4h Error Injection Control 6 (Change Value Header DWORD #0) 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H0_REG)
1D8h Error Injection Control 6 (Change Value Header DWORD #1) 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H1_REG)
1DCh Error Injection Control 6 (Change Value Header DWORD #2) 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H2_REG)
1E0h Error Injection Control 6 (Change Value Header DWORD #3) 32 RW 0000_0000h
(EINJ6_CHANGE_VALUE_H3_REG)
(In bits)
258h PCIe Extended Capability ID, Capability Version And Next Capability 32 RO 0001_000Bh
Offset (RASDP_EXT_CAP_HDR_OFF)
264h Corrected error (1-bit ECC) counter selection and control 32 RW 0000_0010h
(RASDP_CORR_COUNTER_CTRL_OFF)
26Ch Uncorrected error (2-bit ECC and parity) counter selection and 32 RW 0000_0010h
control (RASDP_UNCORR_COUNTER_CTRL_OFF)
270h Uncorrected error (2-bit ECC and parity) counter data 32 RO 0000_0000h
(RASDP_UNCORR_COUNT_REPORT_OFF)
288h RAM Address where a corrected error (1-bit ECC) has been detected 32 RO 0000_0000h
(RASDP_RAM_ADDR_CORR_ERROR_OFF)
28Ch RAM Address where an uncorrected error (2-bit ECC) has been 32 RO 0000_0000h
detected (RASDP_RAM_ADDR_UNCORR_ERROR_OFF)
(In bits)
(In bits)
(In bits)
(In bits)
B24h CDM Register Checking First and Last address to check 32 RW 0BFF_0000h
(PL_CHK_REG_START_END_OFF)
(In bits)
(In bits)
(In bits)
(In bits)
(In bits)
Offset
Register Offset
TYPE1_DEV_ID_VEND_ 0h
ID_REG
Function
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R DEVICE_ID
Reset u1 u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VENDOR_ID
Reset 0 0 0 1 1 0 0 1 0 1 0 1 0 1 1 1
Fields
Field Function
31-16 Device ID
DEVICE_ID Identifies the device ID. See the chip-specific SerDes information for this value.
Field Function
15-0 Vendor ID
VENDOR_ID Identifies the manufacturer of the Function. Valid vendor identifiers are allocated by the PCI-SIG to ensure
uniqueness. It is not permitted to populate this register with a value of FFFFh, which is an invalid value for
Vendor ID.
The access attributes of this field are as follows:
- Wire: No access.
This field is sticky.
Offset
Register Offset
TYPE1_STATUS_COM 4h
MAND_REG
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
DETE SIGNA RCVD RCVD SIGNA DEV_SEL_TIMI MAST FAST_ FAST_ CAP_ INT_S
R 0 0
CTE... LE... _MA... _TA... LE... NG ER_... B2... 66... LIST TA...
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
VGAP MWI_
R RESERV INT_ 0 SERR IDSEL PERR SCO
S EN BME MSE IO_EN
EN EN EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Detected Parity Error. This bit is set by a Function whenever it receives a Poisoned TLP, regardless of
31
the state the Parity Error Response bit in the Command register. The bit is set when the Poisoned TLP is
DETECTED_PA received by a Function's primary side.
RITY_ERROR
30 Signaled System Error. This bit is set when a Function sends an ERR_FATAL or ERR_NONFATAL
Message, and the SERR# Enable bit in the Command register is 1b.
Field Function
SIGNALED_SY
S_ERROR
29 Received Master Abort. This bit is set when a Requester receives a Completion with Unsupported
Request Completion status. The bit is set when the Unsupported Request is received by a Function's
RCVD_MASTE primary side.
R_ABORT
28 Received Target Abort. This bit is set when a Requester receives a Completion with Completer Abort
Completion status. The bit is set when the Completer Abort is received by a Function's primary side.
RCVD_TARGE
T_ABORT
27 Signaled Target Abort. This bit is set when a Function completes a Posted or Non-Posted Request as
a Completer Abort error. This applies to a Function when the Completer Abort was generated by its
SIGNALED_TA primary side.
RGET_ABORT
26-25 DEVSEL Timing. This field was originally described in the PCI Local Bus Specification. Its functionality
does not apply to PCI Express. The controller hardwires it to 00b.
DEV_SEL_TIMI
NG
24 Master Data Parity Error. This bit is set by a Function if the Parity Error Response bit in the Command
register is 1b and either of the following two conditions occurs: - Port receives a Poisoned Completion
MASTER_DPE going downstream - Port transmits a Poisoned Request upstream If the Parity Error Response bit is 0b,
this bit is never set.
23 Fast Back-to-Back Transactions Capable. This bit was originally described in the PCI Local Bus
Specification. Its functionality does not apply to PCI Express. The controller hardwires this bit to 0b.
FAST_B2B_CA
P
22 Reserved
21 66 MHz Capable. This bit was originally described in the PCI Local Bus Specification. Its functionality
does not apply to PCI Express. The controller hardwires this bit to 0b.
FAST_66MHZ_
CAP
20 Capabilities List. Indicates the presence of an Extended Capability list item. Since all PCI Express device
Functions are required to implement the PCI Express Capability structure, the controller hardwires this
CAP_LIST bit to 1b.
19 Interrupt Status. When set, indicates that an INTx emulation interrupt is pending internally in the
Function. INTx emulation interrupts forwarded by Functions from the secondary side are not reflected
INT_STATUS in this bit. Setting the Interrupt Disable bit has no effect on the state of this bit. For Functions that do not
generate INTx interrupts, the controller hardwires this bit to 0b.
18-16 Reserved
Field Function
15-11 Reserved
RESERV
10 Interrupt Disable. Controls the ability of a Function to generate INTx emulation interrupts. When set,
Functions are prevented from asserting INTx interrupts. Note: - Any INTx emulation interrupts already
INT_EN asserted by the Function must be deasserted when this bit is set. INTx interrupts use virtual wires
that must, if asserted, be deasserted using the appropriate Deassert_INTx message(s) when this bit is
set. - Only the INTx virtual wire interrupt(s) associated with the Function(s) for which this bit is set are
affected. - For Functions that generate INTx interrupts on their own behalf, this bit is required. This bit
has no effect on interrupts forwarded from the secondary side. For Functions that do not generate INTx
interrupts on their own behalf this bit is optional. If this bit is not implemented, the controller hardwires it
to 0b.
9 Reserved
8 SERR# Enable. When set, this bit enables reporting upstream of Non-fatal and Fatal errors detected
by the Function. Note: The errors are reported if enabled either through this bit or through the PCI
SERREN Express specific bits in the Device Control register. For more details see the "Error Registers" section
of the PCI Express Specification. In addition, this bit controls transmission by the primary interface of
ERR_NONFATAL and ERR_FATAL error Messages forwarded from the secondary interface. This bit
does not affect the transmission of forwarded ERR_COR messages.
7 IDSEL Stepping/Wait Cycle Control. This bit was originally described in the PCI Local Bus Specification.
Its functionality does not apply to PCI Express. The controller hardwires this bit to 0b.
IDSEL
6 Parity Error Response. This bit controls the logging of poisoned TLPs in the Master Data Parity
Error bit in the Status register. For more details see the "Error Registers" section of the PCI Express
PERREN Specification.
5 VGA Palette Snoop. This bit was originally described in the PCI Local Bus Specification and the PCI-to-
PCI Bridge Architecture Specification. Its functionality does not apply to PCI Express. The controller
VGAPS hardwires this bit to 0b.
4 Memory Write and Invalidate. This bit was originally described in the PCI Local Bus Specification and
the PCI-to-PCI Bridge Architecture Specification. Its functionality does not apply to PCI Express. The
MWI_EN controller hardwires this bit to 0b. For PCI Express to PCI/PCI-X Bridges, refer to the PCI Express to
PCI/PCI-X Bridge Specification for requirements for this register.
3 Special Cycle Enable. This bit was originally described in the PCI Local Bus Specification. Its
functionality does not apply to PCI Express. The controller hardwires this bit to 0b.
SCO
2 Bus Master Enable. This bit controls forwarding of Memory or I/O requests by a port in the Upstream
direction. When this bit is 0b, Memory and I/O Requests received at a Root Port must be handled as
BME Unsupported Requests (UR) For Non-Posted Requests a Completion with UR completion status must
be returned. This bit does not affect forwarding of Completions in either the Upstream or Downstream
direction. The forwarding of Requests other than Memory or I/O Requests is not controlled by this bit.
1 Memory Space Enable. This bit controls a Function's response to Memory Space accesses received
on its primary side. - When set, the Function is enabled to decode the address and further process
Field Function
MSE Memory Space accesses. - When clear, all received Memory Space accesses are caused to be handled
as Unsupported Requests. You cannot write to this register if your configuration has no MEM bars; that
is, the internal signal has_mem_bar =0. Note: The access attributes of this field are as follows: - Wire: No
access.
0 IO Space Enable. This bit controls a Function's response to I/O Space accesses received on its
primary side. - When set, the Function is enabled to decode the address and further process I/O
IO_EN Space accesses. - When clear, all received I/O accesses are caused to be handled as Unsupported
Requests. You cannot write to this register if your configuration has no IO bars; that is, the internal signal
has_io_bar =0. Note: The access attributes of this field are as follows: - Wire: No access.
Offset
Register Offset
TYPE1_CLASS_CODE_ 8h
REV_ID_REG
Function
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R BASE_CLASS_CODE SUBCLASS_CODE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PROGRAM_INTERFACE REVISION_ID
Reset 0 0 0 0 0 0 0 0 u1 u u u u u u u
Fields
Field Function
31-24 Base Class Code. A code that broadly classifies the type of operation the Function performs. Encodings
for base class, are provided in the PCI Code and ID Assignment Specification. All unspecified encodings
Field Function
BASE_CLASS_ are reserved. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
CODE register field is sticky.
23-16 Sub-Class Code. Specifies a base class sub-class, which identifies more specifically the operation of the
Function. Encodings for sub-class are provided in the PCI Code and ID Assignment Specification. All
SUBCLASS_C unspecified encodings are reserved. Note: The access attributes of this field are as follows: - Wire: No
ODE access. Note: This register field is sticky.
15-8 Programming Interface. This field identifies a specific register level programming interface (if any) so that
device independent software can interact with the Function. Encodings for interface are provided in the
PROGRAM_IN PCI Code and ID Assignment Specification. All unspecified encodings are reserved. Note: The access
TERFACE attributes of this field are as follows: - Wire: No access. Note: This register field is sticky.
7-0 Revision ID
REVISION_ID Identifies the revision ID. See the chip-specific SerDes information for this value.
3.8.5 BIST, Header Type, Latency Timer, and Cache Line Size
(TYPE1_BIST_HDR_TYPE_LAT_CACHE_LINE_SIZE_REG)
Offset
Register Offset
TYPE1_BIST_HDR_TYP Ch
E_LAT_CACHE_LINE_SI
ZE_REG
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MULTI
R BIST HEADER_TYPE
_F...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LATENCY_MASTER_TIMER
CACHE_LINE_SIZE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 BIST. This register is used for control and status of BIST. Functions that do not support BIST must
hardwire the register to 00h. A Function whose BIST is invoked must not prevent normal operation of the
BIST PCI Express Link. Bit descriptions: - [31]: BIST Capable. When set, this bit indicates that the Function
supports BIST. When Clear, the Function does not support BIST. - [30]: Start BIST. If BIST Capable is
set, set this bit to invoke BIST. The Function resets the bit when BIST is complete. Software is permitted
to fail the device if this bit is not Clear (BIST is not complete) 2 seconds after it had been set. Writing this
bit to 0b has no effect. The controller hardwires this bit to 0b if BIST Capable is clear. - [29:28]: Reserved
- [27:24]: Completion Code. This field encodes the status of the most recent test. A value of 0000b
means that the Function has passed its test. Non-zero values mean the Function failed. Function-specific
failure codes can be encoded in the non-zero values. This field's value is only meaningful when BIST
Capable is set and Start BIST is Clear. This field must be hardwired to 0000b if BIST Capable is clear.
23 Multi-Function Device. - When set, indicates that the device may contain multiple Functions, but not
necessarily. Software is permitted to probe for Functions other than Function 0. - When clear, software
MULTI_FUNC must not probe for Functions other than Function 0 unless explicitly indicated by another mechanism,
such as an ARI or SR-IOV Capability structure. Except where stated otherwise, it is recommended that
this bit be set if there are multiple Functions, and clear if there is only one Function. Note: This register
field is sticky.
15-8 Latency Timer. This register is also referred to as Primary Latency Timer. The Latency Timer
was originally described in the PCI Local Bus Specification and the PCI-to-PCI Bridge Architecture
LATENCY_MA Specification. Its functionality does not apply to PCI Express. The controller hardwires this register to
STER_TIMER 00h.
7-0Cache Line Size. The Cache Line Size register is programmed by the system firmware or the operating
system to system cache line size. However, legacy conventional PCI software may not always be able
CACHE_LINE_ to program this register correctly especially in the case of Hot-Plug devices. This read-write register is
SIZE implemented for legacy compatibility purposes but has no effect on any PCI Express device behavior.
3.8.6 Secondary Latency Timer, Subordinate Bus Number, Secondary Bus Number, and Primary Bus
Number (SEC_LAT_TIMER_SUB_BUS_SEC_BUS_PRI_BUS_REG)
Offset
Register Offset
SEC_LAT_TIMER_SUB_ 18h
BUS_SEC_BUS_PRI_BU
S_REG
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R SEC_LAT_TIMER
SUB_BUS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SEC_BUS PRIM_BUS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Secondary Latency Timer. This register does not apply to PCI Express. The controller hardwires it to
00h.
SEC_LAT_TIM
ER
23-16 Subordinate Bus Number. The Subordinate Bus Number register is used to record the bus number of
the highest numbered PCI bus segment which is behind (or subordinate to) the bridge. Configuration
SUB_BUS software programs the value in this register. The bridge uses this register in conjunction with the
Secondary Bus Number register to determine when to respond to and pass on a Type 1 configuration
transaction on the primary interface to the secondary interface.
15-8 Secondary Bus Number. The Secondary Bus Number register is used to record the bus number of the
PCI bus segment to which the secondary interface of the bridge is connected. Configuration software
SEC_BUS programs the value in this register. The bridge uses this register to determine when to respond to and
convert a Type 1 configuration transaction on the primary interface into a Type 0 transaction on the
secondary interface.
7-0 Primary Bus Number. This register is not used by PCI Express Functions. It is implemented for
compatibility with legacy software.
PRIM_BUS
Offset
Register Offset
SEC_STAT_IO_LIMIT_I 1Ch
O_BASE_REG
Function
The I/O Limit and I/O Base registers are optional and define an address range that is used by the bridge to determine when to
forward I/O transactions from one interface to the other. If a bridge does not implement an I/O address range, then both the I/O
Limit and I/O Base registers must be implemented as read-only registers that return zero when read. If a bridge supports an I/O
address range, then these registers must be initialized by configuration software so default states are not specified.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
IO_DE IO_DE
R IO_RESERV1 IO_RESERV
IO_LIMIT CO... IO_BASE CO...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Detected Parity Error. This bit is set by a Function when a Poisoned TLP is received by its secondary
side, regardless of the state the Parity Error Response Enable bit in the Bridge Control register.
SEC_STAT_DP
E
30 Received System Error. This bit is set when the secondary side of a Function receives an ERR_FATAL
or ERR_NONFATAL message.
SEC_STAT_RC
VD_SYS_ERR
29 Received Master Abort. This bit is set when the secondary side of a Function (for requests initiated by
the Type 1 header Function itself) receives a Completion with Unsupported Request Completion status.
SEC_STAT_RC
VD_MSTR_AB
RT
28 Received Target Abort. This bit is set when the secondary side of a Function (for requests initiated by the
Type 1 header Function itself) receives a Completion with Completer Abort Completion status.
SEC_STAT_RC
VD_TRGT_ABR
T
27 Signaled Target Abort. This bit is set when the secondary side of the Function (for Requests completed
by the Type 1 header Function itself) completes a Posted or Non-Posted request as a Completer Abort
SEC_STAT_SI error.
G_TRGT_ABRT
26-25 Reserved
Master Data Parity Error. This bit is set by a Function if the Parity Error Response Enable bit in
24
the Bridge Control register is set, and either of the following two conditions occurs: - Port receives a
SEC_STAT_MD Poisoned Completion coming Upstream - Port transmits a Poisoned Request Downstream If the Parity
PE Error Response Enable bit is clear, this bit is never set.
23 Reserved
Field Function
22-16 Reserved
SEC_STAT_RE
SERV
15-12 I/O Limit Address. These bits correspond to the address[15:12] of IO address range. For the purpose
of address decoding, the bridge assumes that the lower 12 address bits, address[11:0], of the I/O limit
IO_LIMIT address (not implemented in the I/O Limit register) are FFFh. The I/O Limit register can be programmed
to a smaller value than the I/O Base register, if there are no I/O addresses on the secondary side of
the bridge. In this case, the bridge will not forward any I/O transactions from the primary bus to the
secondary and will forward all I/O transactions from the secondary bus to the primary bus.
11-9 Reserved
IO_RESERV1
7-4 I/O Base Address. These bits correspond to the address[15:12] of IO address range. For the purpose
of address decoding, the bridge assumes that the lower 12 address bits, address[11:0], of the I/O base
IO_BASE address (not implemented in the I/O Base register) are zero.
3-1 Reserved
IO_RESERV
Field Function
0b - The bridge supports only 16-bit I/O addressing (for ISA compatibility). For the purpose of
address decoding, the bridge assumes that the upper 16 address bits, Address[31:16], of the I/O
base address (not implemented in I/O base register) are zero. The bridge must still perform a
full 32-bit decode of the I/O address (that is, check that Address[31:16] are 0000h). In this case,
the I/O address range supported by the bridge will be restricted to the first 64 KB of I/O space
(0000_0000h to 0000_FFFFh).
1b - The bridge supports 32-bit I/O address decoding, and the I/O base upper 16 bits hold the
upper 16 bits, corresponding to Address[31:16], of the 32-bit base address. In this case, system
configuration software is permitted to locate the I/O address range supported by the bridge
anywhere in the 4 GB I/O space. The 4 KB alignment and granularity restrictions still apply when
the bridge supports 32-bit I/O addressing.
Offset
Register Offset
MEM_LIMIT_MEM_BAS 20h
E_REG
Function
Memory Limit and Base Register. The Memory Limit and Memory Base registers define a memory mapped address range
which is used by the bridge to determine when to forward memory transactions from one interface to the other. If there is no
prefetchable memory space, and there is no memory-mapped space on the secondary side of the bridge, then the bridge will
not forward any memory transactions from the primary bus to the secondary bus and will forward all memory transactions from
the secondary bus to the primary bus.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MEM_LIMIT_RESERV
MEM_LIMIT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MEM_BASE_RESERV
MEM_BASE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-20 Memory Limit Address. These bits correspond to the upper 12 address bits, Address[31:20], of 32-bit
addresses. For the purpose of address decoding, the bridge assumes that the lower 20 address bits,
MEM_LIMIT Address[19:0], of the memory limit address (not implemented in the Memory Limit register) are F FFFFh.
The Memory Limit register must be programmed to a smaller value than the Memory Base register if
there is no memory-mapped address space on the secondary side of the bridge.
19-16 Reserved
MEM_LIMIT_R
ESERV
15-4 Memory Base Address. These bits correspond to the upper 12 address bits, Address[31:20], of 32-bit
addresses. For the purpose of address decoding, the bridge assumes that the lower 20 address bits,
MEM_BASE Address[19:0], of the memory base address (not implemented in the Memory Base register) are zero.
3-0 Reserved
MEM_BASE_R
ESERV
Offset
Register Offset
PREF_MEM_LIMIT_PRE 24h
F_MEM_BASE_REG
Function
The Prefetchable Memory Limit and Prefetchable Memory Base registers must indicate that 64-bit addresses are supported,
as defined in PCI-to-PCI Bridge Architecture Specification. The Prefetchable Memory Limit and Prefetchable Memory Base
registers are optional. They define a prefetchable memory address range which is used by the bridge to determine when
to forward memory transactions from one interface to the other (see the PCI-to-PCI Bridge Architecture Specification for
additional details).
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
PREF_
R PREF_RESERV1
PREF_MEM_LIMIT ME...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PREF_
R PREF_RESERV
PREF_MEM_BASE ME...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Prefetchable Memory Limit Address. If the Prefetchable Memory Limit register indicates support for
31-20
32-bit addressing, then the Prefetchable Limit Upper 32 Bits register is implemented as a read-only
PREF_MEM_LI register that returns zero when read. If the Prefetchable Memory Limit registers indicate support for 64-
MIT bit addressing, then the Prefetchable Limit Upper 32 Bits register is implemented as a read/write register
which must be initialized by configuration software. If a 64-bit prefetchable memory address range is
supported, the Prefetchable Limit Upper 32 Bits register specifies the upper 32 bits, corresponding to
Address[63:32], of the 64-bit limit addresses which specify the prefetchable memory address range.
19-17 Reserved
PREF_RESER
V1
Prefetchable Memory Limit Decode. This bit encodes whether or not the bridge supports 64-bit
16
addresses. The value of PREF_MEM_LIMIT_DECODE indicates the following: - 0b: Indicates that
PREF_MEM_LI the bridge supports only 32 bit addresses - 1b: Indicates that the bridge supports 64 bit addresses.
MIT_DECODE Prefetchable Limit Upper 32 Bits registers holds the rest of the 64-bit prefetchable limit address.
15-4 Prefetchable Memory Base Address. If the Prefetchable Memory Base register indicates support for
32-bit addressing, then the Prefetchable Base Upper 32 Bits register is implemented as a read-only
PREF_MEM_B register that returns zero when read. If the Prefetchable Memory Base register indicates support for 64-
ASE bit addressing, then the Prefetchable Limit Upper 32 Bits register is implemented as a read/write register
which must be initialized by configuration software. If a 64-bit prefetchable memory address range is
supported, the Prefetchable Base Upper 32 Bits register specifies the upper 32 bits, corresponding to
Address[63:32], of the 64-bit base addresses which specify the prefetchable memory address range.
3-1 Reserved
PREF_RESER
V
Field Function
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
0b - The bridge supports only 32-bit addresses.
1b - The bridge supports 64 bit addresses; Prefetchable Base Upper 32 Bits registers holds the
rest of the 64-bit prefetchable base address
Offset
Register Offset
PREF_BASE_UPPER_R 28h
EG
Function
Optional extension to the Prefetchable Memory Base register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PREF_MEM_BASE_UPPER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PREF_MEM_BASE_UPPER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
This register specifies the upper 32 bits, corresponding to Address[63:32], of the 64-bit base addresses
which specify the prefetchable memory address range.
The access attributes of this field are as follows:
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Offset
Register Offset
PREF_LIMIT_UPPER_R 2Ch
EG
Function
Optional extension to the Prefetchable Memory Limit register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PREF_MEM_LIMIT_UPPER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PREF_MEM_LIMIT_UPPER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
IO_LIMIT_UPPER_IO_B 30h
ASE_UPPER_REG
Function
Optional extensions to the I/O Limit and I/O Base registers.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R IO_LIMIT_UPPER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R IO_BASE_UPPER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 I/O Limit Upper 16 Bits. If the I/O Limit register indicates support for 16-bit I/O address decoding, then
this register is implemented as a read-only register which return zero when read. If the I/O Limit register
IO_LIMIT_UPP indicates support for 32-bit I/O addressing, then this register must be initialized by configuration software.
ER If 32-bit I/O address decoding is supported, this register specifies the upper 16 bits, corresponding to
Address[31:16], of the 32-bit limit address, that specify the I/O address range. See the PCI-to-PCI Bridge
Architecture Specification for additional details). Note: The access attributes of this field are as follows: -
Wire: No access.
I/O Base Upper 16 Bits. If the I/O Base register indicates support for 16-bit I/O address decoding, then
15-0
this register is implemented as a read-only register which return zero when read. If the I/O base register
IO_BASE_UPP indicates support for 32-bit I/O addressing, then this register must be initialized by configuration software.
ER If 32-bit I/O address decoding is supported, this register specifies the upper 16 bits, corresponding to
Address[31:16], of the 32-bit base address, that specify the I/O address range. See the PCI-to-PCI
Bridge Architecture Specification for additional details. Note: The access attributes of this field are as
follows: - Wire: No access.
Offset
Register Offset
TYPE1_CAP_PTR_REG 34h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CAP_POINTER
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Offset
Register Offset
TYPE1_EXP_ROM_BAS 38h
E_REG
Function
This register is defined to handle the base address and size information for this expansion ROM. The mask for this ROM BAR
exists (if implemented) as a shadow register at this address. The assertion of CS2 (that is, assert the dbi_cs2 input, or the CS2
address bit for the AXI bridge) is required to write to the second register at this address.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EXP_ROM_BASE_ADDRESS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 ROM_
EXP_ROM_BASE_ADDRESS
W BAR...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-11 Expansion ROM Base Address. Upper 21 bits of the Expansion ROM base address. The number of bits
(out of these 21) that a Function actually implements depends on how much address space the Function
EXP_ROM_BA requires. The mask for this ROM BAR exists (if implemented) as a shadow register at this address. The
SE_ADDRESS assertion of CS2 (that is, assert the dbi_cs2 input, or the CS2 address bit for the AXI bridge) is required
to write to the second register at this address. Note: The access attributes of this field are as follows: -
Wire: No access.
10-1 Reserved
Expansion ROM Enable. This bit controls whether or not the Function accepts accesses to its expansion
0
ROM. When this bit is 0b, the Function's expansion ROM address space is disabled. When the bit is
ROM_BAR_EN 1b, address decoding is enabled using the parameters in the other part of the Expansion ROM Base
ABLE Address register. The Memory Space Enable bit in the Command register has precedence over the
Expansion ROM Enable bit. A Function must claim accesses to its expansion ROM only if both the
Memory Space Enable bit and the Expansion ROM Enable bit are set. Note: The access attributes of this
field are as follows: - Wire: No access.
Offset
Register Offset
BRIDGE_CTRL_INT_PIN 3Ch
_INT_LINE_REG
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R INT_PIN
INT_LINE
W
Reset 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1
Fields
Field Function
31-23 Reserved
BRIDGE_CTRL
_RESERV
22 Secondary Bus Reset. Setting this bit triggers a hot reset on the corresponding PCI Express Port.
Software must ensure a minimum reset duration (Trst) as defined in the PCI Local Bus Specification.
SBR Software and systems must honor first-access-following-reset timing requirements, unless the Readiness
Notifications mechanism is used or if the Immediate Readiness bit in the relevant Function's Status
Register register is set. Port configuration registers must not be changed, except as required to update
Port status.
Master Abort Mode. This bit was originally described in the PCI-to-PCI Bridge Architecture Specification.
21
Its functionality does not apply to PCI Express. The controller hardwires this bit to 0b. Note: The access
MSTR_ABORT attributes of this field are as follows: - Wire: No access.
_MODE
VGA 16 bit decode. This bit only has meaning if VGA Enable bit is set. This bit enables system
20
configuration software to select between 10-bit and 16-bit I/O address decoding for all VGA I/O register
VGA_16B_DEC accesses that are forwarded from primary to secondary. The following actions are taken based on the
value of the VGA_16B_DEC bit: - 0b: Execute 10-bit address decodes on VGA I/O accesses - 1b:
Execute 16-bit address decodes on VGA I/O accesses For Functions that do not support VGA, the
controller hardwires this bit to 0b. Note: The access attributes of this field are as follows: - Wire: No
access.
Field Function
19 VGA Enable. Modifies the response by the bridge to VGA compatible addresses. If the VGA Enable bit
is set, the bridge will positively decode and forward the following accesses on the primary interface to
VGA_EN the secondary interface (and, conversely, block the forwarding of these addresses from the secondary
to primary interface): - Memory accesses in the range 000A 0000h to 000B FFFFh - I/O addresses
in the first 64 KB of the I/O address space (Address[31:16] are 0000h) where Address[9:0] are in the
ranges 3B0h to 3BBh and 3C0h to 3DFh (inclusive of ISA address aliases determined by the setting
of VGA 16-bit Decode ) If the VGA Enable bit is set, forwarding of these accesses is independent of
the I/O address range and memory address ranges defined by the I/O Base and Limit registers, the
Memory Base and Limit registers, and the Prefetchable Memory Base and Limit registers of the bridge.
(Forwarding of these accesses is also independent of the setting of the ISA Enable bit (in the Bridge
Control register) when the VGA Enable bit is set. Forwarding of these accesses is qualified by the I/O
Space Enable and Memory Space Enable bits in the Command register.) The following actions are taken
based on the value of the VGA_EN bit: - 0b: Do not forward VGA compatible memory and I/O addresses
from the primary to the secondary interface (addresses defined above) unless they are enabled for
forwarding by the defined I/O and memory address ranges - 1b: Forward VGA compatible memory and
I/O addresses (addresses defined above) from the primary interface to the secondary interface (if the
I/O Space Enable and Memory Space Enable bits are set) independent of the I/O and memory address
ranges and independent of the ISA Enable bit For Functions that do not support VGA, the controller
hardwires this bit to 0b. Note: The access attributes of this field are as follows: - Wire: No access.
18 ISA Enable. Modifies the response by the bridge to ISA I/O addresses. This applies only to I/O
addresses that are enabled by the I/O Base and I/O Limit registers and are in the first 64 KB of I/O
ISA_EN address space (0000 0000h to 0000 FFFFh). If this bit is set, the bridge will block any forwarding
from primary to secondary of I/O transactions addressing the last 768 bytes in each 1-KB block. In the
opposite direction (secondary to primary), I/O transactions will be forwarded if they address the last
768 bytes in each 1-KB block. The following actions are taken based on the value of the ISA_EN bit: -
0b: Forward downstream all I/O addresses in the address range defined by the I/O Base and I/O Limit
registers - 1b: Forward upstream ISA I/O addresses in the address range defined by the I/O Base and
I/O Limit registers that are in the first 64 KB of PCI I/O address space (top 768 bytes of each 1-KB block.
17 SERR# Enable. This bit controls forwarding of ERR_COR, ERR_NONFATAL and ERR_FATAL from
secondary to primary.
SERR_EN
16 Parity Error Response Enable. This bit controls the logging of poisoned TLPs in the Master Data Parity
Error bit in the Secondary Status register.
PERE
Field Function
Any Function on a multi-Function device can use any of the INTx Messages. If a device implements a single
legacy interrupt Message, it must be INTA; if it implements two legacy interrupt Messages, they must be
INTA and INTB; and so forth.
For a multi-Function device, all Functions may use the same INTx Message or each may have its own (up to
a maximum of four Functions) or any combination thereof. A single Function can never generate an interrupt
request on more than one INTx Message.
The access attributes of this field are as follows:
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
7-0 Interrupt Line. The Interrupt Line register communicates interrupt line routing information. The register
must be implemented by any Function that uses an interrupt pin. Values in this register are programmed
INT_LINE by system software and are system architecture specific. The Function itself does not use this value;
rather the value in this register is used by device drivers and operating systems.
Offset
Register Offset
CAP_ID_NXT_PTR_REG 40h
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 1 1 0 1 1 0 1 1 1 1 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PM_NEXT_POINTER PM_CAP_ID
Reset 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
26 D2 State Support
D2_SUPPORT For a description of this standard PCIe register field, see the PCI Express Specification.
The access attributes of this field are as follows:
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
25 D1 State Support
D1_SUPPORT For a description of this standard PCIe register field, see the PCI Express Specification.
The access attributes of this field are as follows:
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
Field Function
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
20 Reserved
7-0 Power Management Capability ID. For a description of this standard PCIe register field, see the PCI
Express Specification.
PM_CAP_ID
Offset
Register Offset
CON_STATUS_REG 44h
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
BUS_P B2_B3
R DATA_REG_ADD_INFO 0
WR... _S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PME_ NO_S
R DATA_SCALE DATA_SELECT PME_ 0 0 POWER_STAT
STA... OFT...
ENA... E
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
Fields
Field Function
21-16 Reserved
15 PME status
PME_STATUS For a description of this standard PCIe register field, see the PCI Express Specification.
8 PME enable
PME_ENABLE For a description of this standard PCIe register field, see the PCI Express Specification.
The PMC registers this value under aux power. Sometimes it might remember the old value, even if you try
to clear it by writing a 0 to it.
Field Function
7-4 Reserved
3 No Soft Reset
NO_SOFT_RST For a description of this standard PCIe register field, see the PCI Express Specification.
The access attributes of this field are as follows:
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
2 Reserved
3.8.18 MSI Capability ID, Next Pointer, Capability And Control (PCI_MSI_CAP_ID_NEXT_CTRL_REG)
Offset
Register Offset
PCI_MSI_CAP_ID_NEXT 50h
_CTRL_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSI_CAP_NEXT_OFFSET PCI_MSI_CAP_ID
Reset 0 1 1 1 0 0 0 0 0 0 0 0 0 1 0 1
Fields
Field Function
31-27 Reserved
Field Function
22-20 MSI Multiple Message Enable. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCI_MSI_MULT
IPLE_MSG_EN
16 MSI Enable. For a description of this standard PCIe register field, see the PCI Express Specification.
PCI_MSI_ENAB
LE
7-0 MSI Capability ID. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCI_MSI_CAP_
ID
Offset
Register Offset
MSI_CAP_OFF_04H_RE 54h
G
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PCI_MSI_CAP_OFF_04H
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
PCI_MSI_CAP_OFF_04H
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 MSI Message Lower Address Field. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCI_MSI_CAP_
OFF_04H
1-0 Reserved
Offset
Register Offset
MSI_CAP_OFF_08H_RE 58h
G
Function
For a 32 bit MSI Message, this register contains Data. For 64 bit it contains the Upper Address. For a description of this
standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PCI_MSI_CAP_OFF_0AH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PCI_MSI_CAP_OFF_08H
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16For a 32 bit MSI Message, this field contains Ext MSI Data. For 64-bit it contains upper 16 bits of the
Upper Address. For a description of this standard PCIe register field, see the PCI Express Specification
PCI_MSI_CAP_ Note: The access attributes of this field are as follows: - Wire: No access.
OFF_0AH
For a 32-bit MSI Message, this field contains Data. For 64-bit it contains lower 16 bits of the Upper
15-0
Address. For a description of this standard PCIe register field, see the PCI Express Specification. Note:
PCI_MSI_CAP_ The access attributes of this field are as follows: - Wire: No access.
OFF_08H
Offset
Register Offset
MSI_CAP_OFF_0CH_RE 5Ch
G
Function
For a 64-bit MSI message, this register contains data. For 32 bit, it contains mask bits if PVM enabled. For a description of this
standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PCI_MSI_CAP_OFF_0EH
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PCI_MSI_CAP_OFF_0CH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16For a 64-bit MSI Message, this field contains Data. For 32-bit, it contains the upper Mask Bits if PVM is
enabled. For a description of this standard PCIe register field, see the PCI Express Specification Note:
PCI_MSI_CAP_ The access attributes of this field are as follows: - Wire: No access.
OFF_0EH
For a 64-bit MSI Message, this field contains Data. For 32-bit, it contains the lower Mask Bits if PVM is
15-0
enabled. For a description of this standard PCIe register field, see the PCI Express Specification Note:
PCI_MSI_CAP_ The access attributes of this field are as follows: - Wire: No access.
OFF_0CH
Offset
Register Offset
MSI_CAP_OFF_10H_RE 60h
G
Function
Used for MSI when Vector Masking Capable. For 32 bit contains Pending Bits. For 64 bit, contains Mask Bits. For a
description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PCI_MSI_CAP_OFF_10H
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PCI_MSI_CAP_OFF_10H
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Used for MSI when Vector Masking Capable. For 32-bit contains Pending Bits. For 64-bit, contains Mask
31-0
Bits. For a description of this standard PCIe register field, see the PCI Express Specification. Note: The
PCI_MSI_CAP_ access attributes of this field are as follows: - Wire: No access.
OFF_10H
Offset
Register Offset
MSI_CAP_OFF_14H_RE 64h
G
Function
Used for MSI 64 bit messaging when Vector Masking Capable. Contains Pending Bits. For a description of this standard PCIe
register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PCI_MSI_CAP_OFF_14H
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSI_CAP_OFF_14H
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Used for MSI 64-bit messaging when Vector Masking Capable. Contains Pending Bits. For a description
of this standard PCIe register field, see the PCI Express Specification.
PCI_MSI_CAP_
OFF_14H
Offset
Register Offset
PCIE_CAP_ID_PCIE_NE 70h
XT_CAP_PTR_PCIE_CA
P_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
PCIE_
R 0 RSVD PCIE_INT_MSG_NUM PCIE_DEV_PORT_TYPE PCIE_CAP_REG
SL...
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCIE_CAP_NEXT_PTR PCIE_CAP_ID
Reset 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
31 Reserved
30 Reserved For a description of this standard PCIe register field, see the PCI Express Specification.
RSVD
Field Function
PCIE_INT_MSG For a description of this standard PCIe register field, see the PCI Express Specification.
_NUM
The access attributes of this field are as follows:
- Wire: No access.
This field becomes writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
This field is sticky.
19-16 PCIE Capability Version Number. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
PCIE_CAP_RE
G
7-0 PCIE Capability ID. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_ID
Offset
Register Offset
DEVICE_CAPABILITIES 74h
_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-16 Reserved
Role-based Error Reporting Implemented. For a description of this standard PCIe register field, see the
15
PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_RO Note: This register field is sticky.
LE_BASED_ER
R_REPORT
14-6 Reserved
5Extended Tag Field Supported. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note:
PCIE_CAP_EX This register field is sticky.
T_TAG_SUPP
Phantom Functions Supported. For a description of this standard PCIe register field, see the PCI
4-3
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note:
PCIE_CAP_PH This register field is sticky.
ANTOM_FUNC
_SUPPORT
Max Payload Size Supported. For a description of this standard PCIe register field, see the PCI Express
2-0
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
PCIE_CAP_MA register field is sticky.
X_PAYLOAD_S
IZE
Offset
Register Offset
DEVICE_CONTROL_DE 78h
VICE_STATUS
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
31-22 Reserved
21 Transactions Pending Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_TR
ANS_PENDING
20 Aux Power Detected Status. For a description of this standard PCIe register field, see the PCI Express
Specification. This bit is derived by sampling the sys_aux_pwr_det input.
PCIE_CAP_AU
X_POWER_DE
TECTED
19 Unsupported Request Detected Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_UN
SUPPORTED_
REQ_DETECT
ED
Field Function
18 Fatal Error Detected Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_FA
TAL_ERR_DET
ECTED
17 Non-Fatal Error Detected Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_NO
N_FATAL_ERR
_DETECTED
16 Correctable Error Detected Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_CO
RR_ERR_DETE
CTED
15 Initiate Function Level Reset (for endpoints). For a description of this standard PCIe register field, see
the PCI Express Specification.
PCIE_CAP_INI
TIATE_FLR
14-12 Max Read Request Size. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_MA
X_READ_REQ_
SIZE
11 Enable No Snoop. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_EN
_NO_SNOOP
Field Function
7-5 Max Payload Size. Max_Payload_Size . This field sets maximum TLP payload size for the Function.
Permissible values that can be programmed are indicated by the Max_Payload_Size Supported field
PCIE_CAP_MA (PCIE_CAP_MAX_PAYLOAD_SIZE) in the Device Capabilities register (DEVICE_CAPABILITIES_REG).
X_PAYLOAD_S
IZE_CS
4 Enable Relaxed Ordering. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_EN
_REL_ORDER
3 Unsupported Request Reporting Enable. For a description of this standard PCIe register field, see the
PCI Express Specification.
PCIE_CAP_UN
SUPPORT_RE
Q_REP_EN
2 Fatal Error Reporting Enable. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_FA
TAL_ERR_REP
ORT_EN
1 Non-fatal Error Reporting Enable. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_NO
N_FATAL_ERR
_REPORT_EN
0 Correctable Error Reporting Enable. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_CO
RR_ERR_REP
ORT_EN
Offset
Register Offset
LINK_CAPABILITIES_R 7Ch
EG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 1 1 0 1 0 0 0 0 0 1 0 0 0 1 1
Fields
Field Function
31-24 Port Number. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_PO
RT_NUM
23 Reserved
22 ASPM Optionality Compliance. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_AS
PM_OPT_COM
PLIANCE
21Link Bandwidth Notification Capable. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note:
PCIE_CAP_LIN This register field is sticky.
K_BW_NOT_C
AP
20 Data Link Layer Link Active Reporting Capable. For a description of this standard PCIe register field, see
the PCI Express Specification.
PCIE_CAP_DLL
_ACTIVE_REP_
CAP
Surprise Down Error Reporting Capable. For a description of this standard PCIe register field, see the
19
PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_SU Note: This register field is sticky.
RPRISE_DOW
N_ERR_REP_C
AP
Field Function
11-10 Level of ASPM (Active State Power Management) Support. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: The access attributes of this field are as follows: -
PCIE_CAP_AC Wire: No access. Note: This register field is sticky.
TIVE_STATE_L
INK_PM_SUPP
ORT
Field Function
Offset
Register Offset
LINK_CONTROL_LINK_ 80h
STATUS_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W W1C W1C
Reset 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Link Autonomous Bandwidth Status. For a description of this standard PCIe register field, see the
PCI Express Specification. The write value is gated with the PCIE_CAP_LINK_BW_NOT_CAP field in
PCIE_CAP_LIN LINK_CAPABILITIES_REG.
K_AUTO_BW_S
TATUS
30 Link Bandwidth Management Status. For a description of this standard PCIe register field, see the
PCI Express Specification. The write value is gated with the PCIE_CAP_LINK_BW_NOT_CAP field in
PCIE_CAP_LIN LINK_CAPABILITIES_REG.
K_BW_MAN_S
TATUS
29 Data Link Layer Active. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_DLL
_ACTIVE
27 LTSSM is in Configuration or Recovery State. For a description of this standard PCIe register field, see
the PCI Express Specification.
PCIE_CAP_LIN
K_TRAINING
26 Reserved
25-20 Negotiated Link Width. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_NE
GO_LINK_WID
TH
19-16 Current Link Speed. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_LIN
K_SPEED
13-12 Reserved
Field Function
9 Hardware Autonomous Width Disable. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_HW
_AUTO_WIDTH
_DISABLE
8 Enable Clock Power Management. For a description of this standard PCIe register field, see the PCI
Express Specification. The write value is gated with the PCIE_CAP_CLOCK_POWER_MAN field in
PCIE_CAP_EN LINK_CAPABILITIES_REG. Note: The access attributes of this field are as follows: - Wire: No access.
_CLK_POWER_ Note: This register field is sticky.
MAN
7 Extended Synch. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_EX
TENDED_SYN
CH
6 Common Clock Configuration. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_CO
MMON_CLK_C
ONFIG
Field Function
In a DSP that supports crosslink, the controller gates the write value with the CROSS_LINK_EN field
in PORT_LINK_CTRL_OFF.
The access attributes of this field are as follows:
- Wire: No access.
2 Reserved
1-0 Active State Power Management (ASPM) Control. Software must not enable L0s in either direction on
a given Link unless components on both sides of the Link each support L0s; otherwise, the result is
PCIE_CAP_AC undefined. For a description of this standard PCIe register field, see the PCI Express Specification.
TIVE_STATE_L
INK_PM_CONT
ROL
Offset
Register Offset
SLOT_CAPABILITIES_R 84h
EG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-19 Physical Slot Number. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_PH
Y_SLOT_NUM
18 No Command Completed Support. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_NO
_CMD_CPL_SU
PPORT
17 Electromechanical Interlock Present. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_EL
ECTROMECH_I
NTERLOCK
16-15 Slot Power Limit Scale. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_SL
OT_POWER_LI
MIT_SCALE
14-7 Slot Power Limit Value. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_SL
OT_POWER_LI
MIT_VALUE
6 Hot Plug Capable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_HO
T_PLUG_CAPA
BLE
Field Function
5 Hot Plug Surprise possible. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_HO
T_PLUG_SURP
RISE
4 Power Indicator Present. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_PO
WER_INDICAT
OR
3 Attention Indicator Present. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_AT
TENTION_INDI
CATOR
2 MRL Present. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_MR
L_SENSOR
1 Power Controller Present. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_PO
WER_CONTRO
LLER
0 Attention Button Present. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_AT
TENTION_INDI
CATOR_BUTT
ON
Offset
Register Offset
SLOT_CONTROL_SLOT 88h
_STATUS
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 PCIE_ PCIE_ PCIE_ PCIE_CAP_PO PCIE_CAP_AT PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_
W CA... CA... CA... WER_... TENT... CA... CA... CA... CA... CA... CA...
Reset 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0
Fields
Field Function
31-25 Reserved
24 Data Link Layer State Changed. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_DLL
_STATE_CHAN
GED
23 Electromechanical Interlock Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_EL
ECTROMECH_I
NTERLOCK_ST
ATUS
22 Presence Detect State. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_PR
ESENCE_DET
ECT_STATE
21 MRL Sensor State. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_MR
L_SENSOR_ST
ATE
20 Command Completed. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_CM
D_CPLD
19 Presence Detect Changed. For a description of this standard PCIe register field, see the PCI Express
Specification.
Field Function
PCIE_CAP_PR
ESENCE_DET
ECTED_CHAN
GED
18 MRL Sensor Changed. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_MR
L_SENSOR_CH
ANGED
17 Power Fault Detected. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_PO
WER_FAULT_D
ETECTED
16 Attention Button Pressed. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_AT
TENTION_BUT
TON_PRESSE
D
15-13 Reserved
12 Data Link Layer State Changed Enable. For a description of this standard PCIe register field, see the
PCI Express Specification.
PCIE_CAP_DLL
_STATE_CHAN
GED_EN
11 Electromechanical Interlock Control. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_EL
ECTROMECH_I
NTERLOCK_C
TRL
10 Power Controller Control. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_PO
WER_CONTRO
LLER_CTRL
9-8 Power Indicator Control. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_PO
WER_INDICAT
OR_CTRL
Field Function
7-6 Attention Indicator Control. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_AT
TENTION_INDI
CATOR_CTRL
5 Hot Plug Interrupt Enable. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_HO
T_PLUG_INT_E
N
4 Command Completed Interrupt Enable. For a description of this standard PCIe register field, see the
PCI Express Specification. Write value is gated with PCIE_CAP_NO_CMD_CPL_SUPPORT field in
PCIE_CAP_CM SLOT_CAPABILITIES_REG. Note: The access attributes of this field are as follows: - Wire: No access.
D_CPL_INT_EN
3 Presence Detect Changed Enable. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_PR
ESENCE_DET
ECT_CHANGE
_EN
2 MRL Sensor Changed Enable. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_MR
L_SENSOR_CH
ANGED_EN
1 Power Fault Detected Enable. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_PO
WER_FAULT_D
ETECTED_EN
0 Attention Button Pressed Enable. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_AT
TENTION_BUT
TON_PRESSE
D_EN
Offset
Register Offset
ROOT_CONTROL_ROO 8Ch
T_CAPABILITIES_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
PCIE_
R 0
CA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_
R 0 PCIE_ PCIE_ PCIE_ PCIE_
CA...
CA... CA... CA... CA...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-17 Reserved
15-5 Reserved
Field Function
PCIE_CAP_SY
S_ERR_ON_FA
TAL_ERR_EN
Offset
Register Offset
ROOT_STATUS_REG 90h
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
PCIE_ PCIE_
R 0
CA... CA...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCIE_CAP_PME_REQ_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-18 Reserved
17 PME Pending. For a description of this standard PCIe register field, see the PCI Express Specification.
PCIE_CAP_PM
E_PENDING
16 PME Status. For a description of this standard PCIe register field, see the PCI Express Specification.
PCIE_CAP_PM
E_STATUS
15-0 PME Requester ID. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_PM
E_REQ_ID
Offset
Register Offset
DEVICE_CAPABILITIES 94h
2_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_ PCIE_CAP_CPL_TIMEOUT_RAN
R 0
CA... CA... CA... CA... CA... CA... CA... CA... CA... CA... GE
Reset 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1
Fields
Field Function
31-20 Reserved
19-18 (OBFF) Optimized Buffer Flush/fill Supported. For a description of this standard PCIe register field, see
the PCI Express Specification.
PCIE_CAP_OB
FF_SUPPORT
17 10-Bit Tag Requester Supported. For a description of this standard PCIe register field, see the PCI
Express Base Specification 4.0.
PCIE_CAP2_10
_BIT_TAG_RE
Q_SUPPORT
16 10-Bit Tag Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Base Specification 4.0.
PCIE_CAP2_10
_BIT_TAG_CO
MP_SUPPORT
15-14 Reserved
13 TPH Completer Supported Bit 1. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_TP
H_CMPLT_SUP
PORT_1
12 TPH Completer Supported Bit 0. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_TP
H_CMPLT_SUP
PORT_0
11 LTR Mechanism Supported. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_LT
R_SUPP
10 No Relaxed Ordering Enabled PR-PR Passing. For a description of this standard PCIe register field, see
the PCI Express Specification.
PCIE_CAP_NO
_RO_EN_PR2P
R_PAR
9 128 Bit CAS Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_128
_CAS_CPL_SU
PP
Field Function
8 64 Bit AtomicOp Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_64_
ATOMIC_CPL_
SUPP
7 32 Bit AtomicOp Completer Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_32_
ATOMIC_CPL_
SUPP
6 Atomic Operation Routing Supported. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_AT
OMIC_ROUTIN
G_SUPP
5 ARI Forwarding Supported. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_ARI
_FORWARD_S
UPPORT
4 Completion Timeout Disable Supported. For a description of this standard PCIe register field, see the
PCI Express Specification.
PCIE_CAP_CP
L_TIMEOUT_DI
SABLE_SUPPO
RT
3-0 Completion Timeout Ranges Supported. For a description of this standard PCIe register field, see the
PCI Express Specification.
PCIE_CAP_CP
L_TIMEOUT_R
ANGE
Offset
Register Offset
DEVICE_CONTROL2_D 98h
EVICE_STATUS2_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_
R 0 PCIE_ PCIE_CAP_CPL_TIMEOUT_VAL
CA...
CA... UE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
5 ARI Forwarding Enable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_ARI
_FORWARD_S
UPPORT_CS
3-0 Completion Timeout Value. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCIE_CAP_CP
L_TIMEOUT_V
ALUE
Offset
Register Offset
LINK_CAPABILITIES2_R 9Ch
EG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_
R 0 PCIE_CAP_SUPPORT_LINK_SPEED_VECTOR 0
CA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
Fields
Field Function
31-9 Reserved
8 Cross Link Supported. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCIE_CAP_CR
OSS_LINK_SU
PPORT
Supported Link Speeds Vector. For a description of this standard PCIe register field, see the PCI
7-1
Express Specification. This field has a default of (PCIE_CAP_MAX_LINK_SPEED == 0100) ? 0001111 :
PCIE_CAP_SU (PCIE_CAP_MAX_LINK_SPEED == 0011) ? 0000111 : (PCIE_CAP_MAX_LINK_SPEED == 0010) ?
PPORT_LINK_ 0000011 : 0000001 where PCIE_CAP_MAX_LINK_SPEED is a field in the LINK_CAPABILITIES_REG
SPEED_VECT register.
OR
0 Reserved
Offset
Register Offset
LINK_CONTROL2_LINK A0h
_STATUS2_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCIE_
R PCIE_CAP_COMPLIANCE_PRES PCIE_ PCIE_ PCIE_ PCIE_ PCIE_CAP_TARGET_LINK_SPEE
PCIE_CAP_TX_MARGIN CA...
ET CA... CA... CA... CA... D
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Fields
Field Function
31 DRS Message Received. For a description of this standard PCIe register field, see the PCI Express
Base Specification 4.0. Note: The access attributes of this field are as follows: - Wire: No access.
DRS_MESSAG
E_RECEIVED
30-28 Downstream Component Presence. For a description of this standard PCIe register field, see the PCI
Express Base Specification 4.0.
DOWNSTREA
M_COMPO_PR
ESENCE
27-22 Reserved
21 Link Equalization Request 8.0GT/s. For a description of this standard PCIe register field, see the PCI
Express Specification.
PCIE_CAP_LIN
K_EQ_REQ
20 Equalization 8.0GT/s Phase 3 Successful. For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
PCIE_CAP_EQ
_CPL_P3
19 Equalization 8.0GT/s Phase 2 Successful. For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
PCIE_CAP_EQ
_CPL_P2
18 Equalization 8.0GT/s Phase 1 Successful. For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
PCIE_CAP_EQ
_CPL_P1
17 Equalization 8.0GT/s Complete. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
Field Function
PCIE_CAP_EQ
_CPL
16 Current De-emphasis Level. For a description of this standard PCIe register field, see the PCI Express
Specification. In C-PCIe mode, its contents are derived by sampling the PIPE
PCIE_CAP_CU
RR_DEEMPHA
SIS
15-12 Sets Compliance Preset/De-emphasis for 5 GT/s and 8 GT/s. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: The access attributes of this field are as follows: -
PCIE_CAP_CO Wire: No access. Note: This register field is sticky.
MPLIANCE_PR
ESET
11 Sets Compliance Skip Ordered Sets transmission. For a description of this standard PCIe register field,
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No
PCIE_CAP_CO access. Note: This register field is sticky.
MPLIANCE_SO
S
10 Enter Modified Compliance. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
PCIE_CAP_EN register field is sticky.
TER_MODIFIE
D_COMPLIANC
E
9-7 Controls Transmit Margin for Debug or Compliance. For a description of this standard PCIe register field,
see the PCI Express Specification. Note: This register field is sticky.
PCIE_CAP_TX_
MARGIN
5 Hardware Autonomous Speed Disable. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note:
PCIE_CAP_HW This register field is sticky.
_AUTO_SPEED
_DISABLE
4 Enter Compliance Mode. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
Field Function
PCIE_CAP_EN
TER_COMPLIA
NCE
3-0 Target Link Speed. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
PCIE_CAP_TA
RGET_LINK_S
PEED
Offset
Register Offset
PCI_MSIX_CAP_ID_NEX B0h
T_CTRL_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W SI... SI...
Reset 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSIX_CAP_NEXT_OFFSET PCI_MSIX_CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1
Fields
Field Function
31 MSI-X Enable. For a description of this standard PCIe register field, see the PCI Express Specification.
PCI_MSIX_ENA
BLE
Field Function
30 Function Mask. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: The access attributes of this field are as follows: - Wire: No access.
PCI_MSIX_FUN
CTION_MASK
29-27 Reserved
7-0 MSI-X Capability ID. For a description of this standard PCIe register field, see the PCI Express
Specification.
PCI_MSIX_CAP
_ID
Offset
Register Offset
MSIX_TABLE_OFFSET_ B4h
REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PCI_MSIX_TABLE_OFFSET
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSIX_TABLE_OFFSET PCI_MSIX_BIR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
MSI-X Table Offset. For a description of this standard PCIe register field, see the PCI Express
31-3
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
PCI_MSIX_TAB register field is sticky.
LE_OFFSET
2-0MSI-X Table Bar Indicator Register Field. For a description of this standard PCIe register field, see the
PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
PCI_MSIX_BIR Note: This register field is sticky.
Offset
Register Offset
MSIX_PBA_OFFSET_R B8h
EG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PCI_MSIX_PBA_OFFSET
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PCI_MSIX_PBA_OFFSET PCI_MSIX_PBA
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
MSI-X PBA Offset. For a description of this standard PCIe register field, see the PCI Express
31-3
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
PCI_MSIX_PBA register field is sticky.
_OFFSET
2-0MSI-X PBA BIR. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: The access attributes of this field are as follows: - Wire: No access. Note: This register field is
PCI_MSIX_PBA sticky.
Offset
Register Offset
AER_EXT_CAP_HDR_O 100h
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP_VERSION
Reset 0 0 0 1 0 1 0 0 1 0 0 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register field, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
NEXT_OFFSET register field is sticky.
Capability Version. For a description of this standard PCIe register field, see the PCI Express
19-16
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
CAP_VERSION register field is sticky.
15-0 AER Extended Capability ID. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
CAP_ID register field is sticky.
Offset
Register Offset
UNCORR_ERR_STATU 104h
S_OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-26 Reserved
25 TLP Prefix Blocked Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: Not supported.
TLP_PRFX_BL
OCKED_ERR_
STATUS
24-23 Reserved
Uncorrectable Internal Error Status. For a description of this standard PCIe register field, see the PCI
22
Express Specification. The controller sets this bit when your application asserts app_err_bus[9]. It does
INTERNAL_ER not set this bit when it detects internal uncorrectable internal errors such as parity and ECC failures. You
R_STATUS should use the outputs from these errors to drive the app_err_bus[9] input.
21 Reserved
20 Unsupported Request Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
UNSUPPORTE
D_REQ_ERR_S
TATUS
19 ECRC Error Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
ECRC_ERR_ST
ATUS
18 Malformed TLP Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
Field Function
MALF_TLP_ER
R_STATUS
17 Receiver Overflow Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
REC_OVERFL
OW_ERR_STA
TUS
16 Unexpected Completion Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
UNEXP_CMPL
T_ERR_STATU
S
15 Completer Abort Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
CMPLT_ABOR
T_ERR_STATU
S
14 Completion Timeout Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
CMPLT_TIMEO
UT_ERR_STAT
US
13 Flow Control Protocol Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
FC_PROTOCO
L_ERR_STATU
S
12 Poisoned TLP Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
POIS_TLP_ER
R_STATUS
11-6 Reserved
5 Surprise Down Error Status (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification.
SURPRISE_DO
WN_ERR_STA
TUS
4 Data Link Protocol Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
DL_PROTOCO
L_ERR_STATU
S
Field Function
3-0 Reserved
Offset
Register Offset
UNCORR_ERR_MASK_ 108h
OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
TLP_P ATOMI
R 0 0 INTER 0 UNSU ECRC MALF_ REC_ UNEX
RF... C_...
NA... PPO... _ER... TL... OVE... P_C...
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SURP
R CMPL CMPL FC_PR POIS_ 0 DL_PR 0
RIS...
T_A... T_T... OT... TL... OT...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-26 Reserved
TLP Prefix Blocked Error Mask. For a description of this standard PCIe register field, see the PCI
25
Express Specification. Note: Not supported. Note: The access attributes of this field are as follows: -
TLP_PRFX_BL Wire: No access. Note: This register field is sticky.
OCKED_ERR_
MASK
Field Function
24 AtomicOp Egress Block Mask (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
ATOMIC_EGRE Note: This register field is sticky.
SS_BLOCKED_
ERR_MASK
23 Reserved
22 Uncorrectable Internal Error Mask (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
INTERNAL_ER
R_MASK
21 Reserved
20 Unsupported Request Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
UNSUPPORTE
D_REQ_ERR_
MASK
19 ECRC Error Mask (Optional). For a description of this standard PCIe register field, see the PCI Express
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
ECRC_ERR_M register field is sticky.
ASK
18 Malformed TLP Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
MALF_TLP_ER
R_MASK
17 Receiver Overflow Mask (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
REC_OVERFL
OW_ERR_MAS
K
16 Unexpected Completion Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
UNEXP_CMPL
T_ERR_MASK
15 Completer Abort Error Mask (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CMPLT_ABOR
T_ERR_MASK
14 Completion Timeout Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
Field Function
CMPLT_TIMEO
UT_ERR_MAS
K
13 Flow Control Protocol Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
FC_PROTOCO
L_ERR_MASK
12 Poisoned TLP Error Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
POIS_TLP_ER
R_MASK
11-6 Reserved
4 Data Link Protocol Error Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
DL_PROTOCO
L_ERR_MASK
3-0 Reserved
Offset
Register Offset
UNCORR_ERR_SEV_O 10Ch
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
TLP_P ATOMI
R 0 0 INTER 0 UNSU ECRC MALF_ REC_ UNEX
RF... C_...
NA... PPO... _ER... TL... OVE... P_C...
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SURP
R CMPL CMPL FC_PR POIS_ 0 DL_PR 0
RIS...
T_A... T_T... OT... TL... OT...
W
Reset 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0
Fields
Field Function
31-26 Reserved
TLP Prefix Blocked Error Severity (Optional). For a description of this standard PCIe register field, see
25
the PCI Express Specification. Note: Not supported. Note: The access attributes of this field are as
TLP_PRFX_BL follows: - Wire: No access. Note: This register field is sticky.
OCKED_ERR_
SEVERITY
AtomicOp Egress Blocked Severity (Optional). For a description of this standard PCIe register field, see
24
the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No access.
ATOMIC_EGRE Note: This register field is sticky.
SS_BLOCKED_
ERR_SEVERIT
Y
23 Reserved
22 Uncorrectable Internal Error Severity (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
INTERNAL_ER
R_SEVERITY
21 Reserved
20 Unsupported Request Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
UNSUPPORTE
D_REQ_ERR_S
EVERITY
Field Function
19 ECRC Error Severity (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note:
ECRC_ERR_S This register field is sticky.
EVERITY
18 Malformed TLP Severity. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
MALF_TLP_ER
R_SEVERITY
17 Receiver Overflow Error Severity (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
REC_OVERFL
OW_ERR_SEV
ERITY
16 Unexpected Completion Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
UNEXP_CMPL
T_ERR_SEVER
ITY
15 Completer Abort Error Severity (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
CMPLT_ABOR
T_ERR_SEVER
ITY
14 Completion Timeout Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CMPLT_TIMEO
UT_ERR_SEVE
RITY
13 Flow Control Protocol Error Severity (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
FC_PROTOCO
L_ERR_SEVER
ITY
12 Poisoned TLP Severity. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
POIS_TLP_ER
R_SEVERITY
11-6 Reserved
Field Function
4 Data Link Protocol Error Severity. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
DL_PROTOCO
L_ERR_SEVER
ITY
3-0 Reserved
Offset
Register Offset
CORR_ERR_STATUS_ 110h
OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
Field Function
15 Header Log Overflow Error Status (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification.
HEADER_LOG
_OVERFLOW_
STATUS
14 Corrected Internal Error Status (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification.
CORRECTED_I
NT_ERR_STAT
US
13 Advisory Non-Fatal Error Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
ADVISORY_NO
N_FATAL_ERR
_STATUS
12 Replay Timer Timeout Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
RPL_TIMER_TI
MEOUT_STAT
US
11-9 Reserved
8 REPLAY_NUM Rollover Status. For a description of this standard PCIe register field, see the PCI
Express Specification.
REPLAY_NO_R
OLEOVER_ST
ATUS
7 Bad DLLP Status. For a description of this standard PCIe register field, see the PCI Express
Specification.
BAD_DLLP_ST
ATUS
6 Bad TLP Status. For a description of this standard PCIe register field, see the PCI Express Specification.
BAD_TLP_STA
TUS
5-1 Reserved
0 Receiver Error Status (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification.
RX_ERR_STAT
US
Offset
Register Offset
CORR_ERR_MASK_OF 114h
F
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
15 Header Log Overflow Error Mask (Optional). For a description of this standard PCIe register field, see
the PCI Express Specification. Note: This register field is sticky.
HEADER_LOG
_OVERFLOW_
MASK
14 Corrected Internal Error Mask (Optional). For a description of this standard PCIe register field, see the
PCI Express Specification. Note: This register field is sticky.
CORRECTED_I
NT_ERR_MAS
K
13 Advisory Non-Fatal Error Mask. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
ADVISORY_NO
N_FATAL_ERR
_MASK
Field Function
12 Replay Timer Timeout Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
RPL_TIMER_TI
MEOUT_MASK
11-9 Reserved
8 REPLAY_NUM Rollover Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
REPLAY_NO_R
OLEOVER_MA
SK
7 Bad DLLP Mask. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
BAD_DLLP_MA
SK
6 Bad TLP Mask. For a description of this standard PCIe register field, see the PCI Express Specification.
Note: This register field is sticky.
BAD_TLP_MAS
K
5-1 Reserved
0 Receiver Error Mask (Optional). For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
RX_ERR_MAS
K
Offset
Register Offset
ADV_ERR_CAP_CTRL_ 118h
OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0
Fields
Field Function
31-11 Reserved
10 Multiple Header Recording Enable. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
MULTIPLE_HE
ADER_EN
9 Multiple Header Recording Capable. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
MULTIPLE_HE
ADER_CAP
8 ECRC Check Enable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_CHECK
_EN
7 ECRC Check Capable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_CHECK
_CAP
6 ECRC Generation Enable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_GEN_E
N
5 ECRC Generation Capable. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ECRC_GEN_C
AP
4-0 First Error Pointer. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
FIRST_ERR_P
OINTER
Offset
Register Offset
HDR_LOG_0_OFF 11Ch
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R FIRST_DWORD_FOURTH_BYTE FIRST_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FIRST_DWORD_SECOND_BYTE FIRST_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_FOURTH_BY
TE
23-16 Byte 2 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_THIRD_BYT
E
15-8 Byte 1 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_SECOND_B
YTE
7-0 Byte 0 of Header log register of First 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FIRST_DWOR
D_FIRST_BYTE
Offset
Register Offset
HDR_LOG_1_OFF 120h
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R SECOND_DWORD_FOURTH_BYTE SECOND_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R SECOND_DWORD_SECOND_BYTE SECOND_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_FOURTH_
BYTE
23-16 Byte 2 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_THIRD_BY
TE
15-8 Byte 1 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_SECOND_
BYTE
7-0 Byte 0 of Header log register of Second 32 bit Data Word. For a description of this standard PCIe
register field, see the PCI Express Specification. Note: This register field is sticky.
SECOND_DWO
RD_FIRST_BY
TE
Offset
Register Offset
HDR_LOG_2_OFF 124h
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R THIRD_DWORD_FOURTH_BYTE THIRD_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R THIRD_DWORD_SECOND_BYTE THIRD_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_FOURTH_BY
TE
23-16 Byte 2 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_THIRD_BYT
E
15-8 Byte 1 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_SECOND_B
YTE
7-0 Byte 0 of Header log register of Third 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
THIRD_DWOR
D_FIRST_BYTE
Offset
Register Offset
HDR_LOG_3_OFF 128h
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R FOURTH_DWORD_FOURTH_BYTE FOURTH_DWORD_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FOURTH_DWORD_SECOND_BYTE FOURTH_DWORD_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_FOURTH_
BYTE
23-16 Byte 2 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_THIRD_BY
TE
15-8 Byte 1 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_SECOND_
BYTE
7-0 Byte 0 of Header log register of Fourth 32 bit Data Word. For a description of this standard PCIe register
field, see the PCI Express Specification. Note: This register field is sticky.
FOURTH_DWO
RD_FIRST_BY
TE
Offset
Register Offset
ROOT_ERR_CMD_OFF 12Ch
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-3 Reserved
2 Fatal Error Reporting Enable. For a description of this standard PCIe register field, see the PCI Express
Specification.
FATAL_ERR_R
EPORTING_EN
1 Non-Fatal Error Reporting Enable. For a description of this standard PCIe register field, see the PCI
Express Specification.
NON_FATAL_E
RR_REPORTIN
G_EN
0 Correctable Error Reporting Enable. For a description of this standard PCIe register field, see the PCI
Express Specification.
CORR_ERR_R
EPORTING_EN
Offset
Register Offset
ROOT_ERR_STATUS_O 130h
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ADV_ERR_INT_MSG_NUM 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
26-7 Reserved
6 One or more Fatal Error Messages Received. For a description of this standard PCIe register field, see
the PCI Express Specification.
FATAL_ERR_M
SG_RX
5 One or more Non-Fatal Error Messages Received. For a description of this standard PCIe register field,
see the PCI Express Specification.
Field Function
NON_FATAL_E
RR_MSG_RX
4 First Uncorrectable Error is Fatal. For a description of this standard PCIe register field, see the PCI
Express Specification.
FIRST_UNCOR
R_FATAL
3 Multiple Fatal or Non-Fatal Errors Received. For a description of this standard PCIe register field, see the
PCI Express Specification.
MUL_ERR_FAT
AL_NON_FATA
L_RX
2 Fatal or Non-Fatal Error Received. For a description of this standard PCIe register field, see the PCI
Express Specification.
ERR_FATAL_N
ON_FATAL_RX
1 Multiple Correctable Errors Received. For a description of this standard PCIe register field, see the PCI
Express Specification.
MUL_ERR_CO
R_RX
0 Correctable Error Received. For a description of this standard PCIe register field, see the PCI Express
Specification.
ERR_COR_RX
Offset
Register Offset
ERR_SRC_ID_OFF 134h
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R ERR_FATAL_NON_FATAL_SOURCE_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ERR_COR_SOURCE_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Source of Fatal/Non-Fatal Error. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
ERR_FATAL_N
ON_FATAL_SO
URCE_ID
15-0 Source of Correctable Error. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
ERR_COR_SO
URCE_ID
Offset
Register Offset
TLP_PREFIX_LOG_1_O 138h
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_1_FOURTH_BYTE CFG_TLP_PFX_LOG_1_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_1_SECOND_BYTE CFG_TLP_PFX_LOG_1_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_FOUR
TH_BYTE
23-16 Byte 2 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_THIRD
_BYTE
15-8 Byte 1 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_SECO
ND_BYTE
7-0 Byte 0 of Error TLP Prefix Log 1. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_1_FIRST
_BYTE
Offset
Register Offset
TLP_PREFIX_LOG_2_O 13Ch
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_2_FOURTH_BYTE CFG_TLP_PFX_LOG_2_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_2_SECOND_BYTE CFG_TLP_PFX_LOG_2_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_FOUR
TH_BYTE
23-16 Byte 2 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_THIRD
_BYTE
15-8 Byte 1 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_SECO
ND_BYTE
7-0 Byte 0 Error TLP Prefix Log 2. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_2_FIRST
_BYTE
Offset
Register Offset
TLP_PREFIX_LOG_3_O 140h
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_3_FOURTH_BYTE CFG_TLP_PFX_LOG_3_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_3_SECOND_BYTE CFG_TLP_PFX_LOG_3_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_FOUR
TH_BYTE
23-16 Byte 2 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_THIRD
_BYTE
15-8 Byte 1 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_SECO
ND_BYTE
7-0 Byte 0 Error TLP Prefix Log 3. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_3_FIRST
_BYTE
Offset
Register Offset
TLP_PREFIX_LOG_4_O 144h
FF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CFG_TLP_PFX_LOG_4_FOURTH_BYTE CFG_TLP_PFX_LOG_4_THIRD_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_TLP_PFX_LOG_4_SECOND_BYTE CFG_TLP_PFX_LOG_4_FIRST_BYTE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Byte 3 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_FOUR
TH_BYTE
23-16 Byte 2 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_THIRD
_BYTE
15-8 Byte 1 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_SECO
ND_BYTE
7-0 Byte 0 Error TLP Prefix Log 4. For a description of this standard PCIe register field, see the PCI Express
Specification. Note: This register field is sticky.
CFG_TLP_PFX
_LOG_4_FIRST
_BYTE
Offset
Register Offset
SPCIE_CAP_HEADER_ 148h
REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP_VERSION
Reset 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EXTENDED_CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register field, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
NEXT_OFFSET register field is sticky.
Capability Version. For a description of this standard PCIe register field, see the PCI Express
19-16
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
CAP_VERSION register field is sticky.
15-0 Secondary PCI Express Extended Capability ID. For a description of this standard PCIe register field,
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No
EXTENDED_C access. Note: This register field is sticky.
AP_ID
Offset
Register Offset
LINK_CONTROL3_REG 14Ch
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EQ_R PERF
W EQ_... ORM...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 Reserved
0 Perform equalization
PERFORM_EQ For a description of this standard PCIe register field, see the PCI Express Specification.
The access attributes of this field are as follows:
- Wire: No access.
Offset
Register Offset
LANE_ERR_STATUS_R 150h
EG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LANE_ERR_ST
R 0
ATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 Reserved
1-0 Lane Error Status Bits per Lane. For a description of this standard PCIe register field, see the PCI
Express Specification.
LANE_ERR_ST
ATUS
Offset
Register Offset
SPCIE_CAP_OFF_0CH_ 154h
REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
USP_RX_PRESET_HINT DSP_RX_PRESET_HINT
R 0 USP_TX_PRESET1 0 DSP_TX_PRESET1
1 1
Reset 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
USP_RX_PRESET_HINT DSP_RX_PRESET_HINT
R 0 USP_TX_PRESET0 0 DSP_TX_PRESET0
0 0
Reset 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
Fields
Field Function
31 Reserved
Upstream Port 8.0 GT/s Receiver Preset Hint 1. The write value is gated with the
30-28
PCIE_CAP_CROSS_LINK_SUPPORT field of LINK_CAPABILITIES2_REG. For a description of this
USP_RX_PRES standard PCIe register field, see the PCI Express Specification. Note: The access attributes of this
ET_HINT1 field are as follows: - Wire: No access.
Upstream Port 8.0 GT/s Transmitter Preset 1. The write value is gated with the
27-24
PCIE_CAP_CROSS_LINK_SUPPORT field of LINK_CAPABILITIES2_REG. For a description of this
USP_TX_PRES standard PCIe register field, see the PCI Express Specification. Note: The access attributes of this
ET1 field are as follows: - Wire: No access.
23 Reserved
Downstream Port 8.0 GT/s Receiver Preset Hint 1. For a description of this standard PCIe register field,
22-20
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No
DSP_RX_PRES access.
ET_HINT1
Downstream Port 8.0 GT/s Transmitter Preset 1. For a description of this standard PCIe register field,
19-16
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No
DSP_TX_PRES access.
ET1
15 Reserved
Upstream Port 8.0 GT/s Receiver Preset Hint 0. The write value is gated with the
14-12
PCIE_CAP_CROSS_LINK_SUPPORT field of LINK_CAPABILITIES2_REG. For a description of this
USP_RX_PRES standard PCIe register field, see the PCI Express Specification. Note: The access attributes of this
ET_HINT0 field are as follows: - Wire: No access.
Field Function
Upstream Port 8.0 GT/s Transmitter Preset 0. The write value is gated with the
11-8
PCIE_CAP_CROSS_LINK_SUPPORT field of LINK_CAPABILITIES2_REG. For a description of this
USP_TX_PRES standard PCIe register field, see the PCI Express Specification. Note: The access attributes of this
ET0 field are as follows: - Wire: No access.
7 Reserved
Downstream Port 8.0 GT/s Receiver Preset Hint 0. For a description of this standard PCIe register field,
6-4
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No
DSP_RX_PRES access.
ET_HINT0
Downstream Port 8.0 GT/s Transmitter Preset 0. For a description of this standard PCIe register field,
3-0
see the PCI Express Specification. Note: The access attributes of this field are as follows: - Wire: No
DSP_TX_PRES access.
ET0
Offset
Register Offset
RAS_DES_CAP_HEADE 158h
R_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP_VERSION
Reset 0 0 1 0 0 1 0 1 1 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EXTENDED_CAP_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register field, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
NEXT_OFFSET register field is sticky.
Capability Version. For a description of this standard PCIe register field, see the PCI Express
19-16
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
CAP_VERSION register field is sticky.
15-0 PCI Express Extended Capability ID. For a description of this standard PCIe register field, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note:
EXTENDED_C This register field is sticky.
AP_ID
Offset
Register Offset
VENDOR_SPECIFIC_H 15Ch
EADER_REG
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VSEC_LENGTH VSEC_REV
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VSEC_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
31-20 VSEC Length. For a description of this standard PCIe register field, see the PCI Express Specification.
VSEC_LENGT
H
Field Function
19-16 VSEC Rev. For a description of this standard PCIe register field, see the PCI Express Specification.
VSEC_REV
15-0 VSEC ID. For a description of this standard PCIe register field, see the PCI Express Specification.
VSEC_ID
Offset
Register Offset
EVENT_COUNTER_CO 160h
NTROL_REG
Function
This is a viewport control register. - Setting the EVENT_COUNTER_EVENT_SELECT and
EVENT_COUNTER_LANE_SELECT fields in this register determine the Event Counter data returned by the
EVENT_COUNTER_DATA_REG viewport register. - Setting the EVENT_COUNTER_ENABLE field in this register enables
the Event Counter selected by the EVENT_COUNTER_EVENT_SELECT and EVENT_COUNTER_LANE_SELECT fields
in this register. - Setting the EVENT_COUNTER_CLEAR field in this register clears the Event Counter selected by
the EVENT_COUNTER_EVENT_SELECT and EVENT_COUNTER_LANE_SELECT fields in this register. - Reading the
EVENT_COUNTER_STATUS field in this register returns the Enable status of the Event Counter selected by the
EVENT_COUNTER_EVENT_SELECT and EVENT_COUNTER_LANE_SELECT fields in this register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
EVENT_COUNTER_EVENT_SELECT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
EVEN
R 0 0
EVENT_COUNTER_LANE_SELE T_C...
CT EVENT_COUNTER_ENA EVENT_COUN
W
BLE TER_C...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
15-12 Reserved
11-8Event Counter Lane Select. This field in conjunction with EVENT_COUNTER_EVENT_SELECT indexes
the Event Counter data returned by the EVENT_COUNTER_DATA_REG register. - 0x0: Lane0 - 0x1:
EVENT_COUN Lane1 - 0x2: Lane2 - .. - 0xF: Lane15 Note: This register field is sticky.
TER_LANE_SE
LECT
7 Event Counter Status. This register returns the current value of the Event Counter selected by the
following fields: - EVENT_COUNTER_EVENT_SELECT - EVENT_COUNTER_LANE_SELECT Note:
EVENT_COUN This register field is sticky.
TER_STATUS
6-5 Reserved
1-0 Event Counter Clear. Clears the Event Counter selected by the EVENT_COUNTER_EVENT_SELECT
and EVENT_COUNTER_LANE_SELECT fields in this register. You can clear the value of a specific
Field Function
EVENT_COUN Event Counter by writing the 'per clear' code and you can clear all event counters at once by writing the
TER_CLEAR 'all clear' code. The read value is always '0'. - 00: no change - 01: per clear - 10: no change - 11: all clear
- Other: reserved
Offset
Register Offset
EVENT_COUNTER_DA 164h
TA_REG
Function
This viewport register returns the data selected by the following fields: - EVENT_COUNTER_EVENT_SELECT in
EVENT_COUNTER_CONTROL_REG - EVENT_COUNTER_LANE_SELECT in EVENT_COUNTER_CONTROL_REG For
more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R EVENT_COUNTER_DATA
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EVENT_COUNTER_DATA
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Event Counter Data. This register returns the data selected by the following
31-0
fields: - EVENT_COUNTER_EVENT_SELECT in EVENT_COUNTER_CONTROL_REG -
EVENT_COUN EVENT_COUNTER_LANE_SELECT in EVENT_COUNTER_CONTROL_REG Note: This register field is
TER_DATA sticky.
Offset
Register Offset
TIME_BASED_ANALYSI 168h
S_CONTROL_REG
Function
Controls the measurement of RX/TX data throughput and time spent in each low-power LTSSM state. For more details, see RAS
Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
TIME_BASED_REPORT_SELECT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 TIMER
TIME_BASED_DURATION_SELECT
W _S...
Reset 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
23-16 Reserved
7-1 Reserved
0 Timer Start
TIMER_START This field returns to 0 automatically when the measurement finishes.
The app_ras_des_tba_ctrl input also sets the contents of this field and controls the measurement start/stop.
This field has no effect when TIME_BASED_DURATION_SELECT=0b. Instead, use the procedure
described in TIME_BASED_DURATION_SELECT.
Field Function
Offset
Register Offset
TIME_BASED_ANALYSI 16Ch
S_DATA_REG
Function
Contains the measurement results of RX/TX data throughput and time spent in each low-power LTSSM state.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R TIME_BASED_ANALYSIS_DATA
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TIME_BASED_ANALYSIS_DATA
Reset 0 0 0 0 0 0 1 1 1 1 1 0 1 0 0 0
Fields
Field Function
Offset
Register Offset
EINJ_ENABLE_REG 188h
Function
Error Injection Enable. Each type of error insertion is enabled by the corresponding bit in this register. The specific injection
controls for each type of error are defined in the following registers: - 0: CRC Error: EINJ0_CRC_REG - 1: Sequence Number
Error: EINJ1_SEQNUM_REG - 2: DLLP Error: EINJ2_DLLP_REG - 3: Symbol DataK Mask Error or Sync Header Error:
EINJ3_SYMBOL_REG - 4: FC Credit Update Error: EINJ4_FC_REG - 5: TLP Duplicate/Nullify Error: EINJ5_SP_TLP_REG - 6:
Specific TLP Error: EINJ6_COMPARE_*_REG/EINJ6_CHANGE_*_REG/EINJ6_TLP_REG After the errors have been inserted
by controller, it will clear each bit here. For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-7 Reserved
6 Reserved
5 Error Injection5 Enable (TLP Duplicate/Nullify Error). Enables insertion of duplicate/nullified TLPs. For
more details, see the EINJ5_SP_TLP_REG register. Note: This register field is sticky.
ERROR_INJEC
TION5_ENABL
E
4 Error Injection4 Enable (FC Credit Update Error). Enables insertion of errors into UpdateFCs. For more
details, see the EINJ4_FC_REG register. Note: This register field is sticky.
Field Function
ERROR_INJEC
TION4_ENABL
E
3 Error Injection3 Enable (Symbol DataK Mask Error or Sync Header Error). Enables DataK masking of
special symbols or the breaking of the sync header. For more details, see the EINJ3_SYMBOL_REG
ERROR_INJEC register. Note: This register field is sticky.
TION3_ENABL
E
2 Error Injection2 Enable (DLLP Error). Enables insertion of DLLP errors. For more details, see the
EINJ2_DLLP_REG register. Note: This register field is sticky.
ERROR_INJEC
TION2_ENABL
E
1 Error Injection1 Enable (Sequence Number Error). Enables insertion of errors into sequence numbers.
For more details, see the EINJ1_SEQNUM_REG register. Note: This register field is sticky.
ERROR_INJEC
TION1_ENABL
E
0 Error Injection0 Enable (CRC Error). Enables insertion of errors into various CRC. For more details, see
the EINJ0_CRC_REG register. Note: This register field is sticky.
ERROR_INJEC
TION0_ENABL
E
Offset
Register Offset
EINJ0_CRC_REG 18Ch
Function
Controls the insertion of errors into the CRC, and parity of ordered sets for the selected type of the packets as follows: -
LCRC. Bad TLP will be detected at the receiver side; receiver responds with NAK DLLP; Data Link Retry starts. - 16-bit CRC
of ACK/NAK DLLPs. Bad DLLP occurs at the receiver side; Replay NUM Rollover occurs. - 16-bit CRC of UpdateFC DLLPs.
Error insertion continues for the specific time; LTSSM transitions to the Recovery state because of the UpdateFC timeout (if
the timeout is implemented at the receiver of the UpdateFCs). - ECRC. If ECRC check is enabled, ECRC error is detected at
the receiver side. - FCRC. Framing error will be detected, TLP is discarded, and the LTSSM transitions to Recovery state. -
Parity of TSOS. Error insertion continues for the specific time; LTSSM Recovery/Configuration timeout will occur. - Parity of
SKPOS. Lane error will be detected at the receiver side.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
EINJ0_CRC_TYPE EINJ0_COUNT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Reserved
Error injection type. Selects the type of CRC error to be inserted. Tx Path - 0000b: New TLP's LCRC
11-8
error injection - 0001b: 16bCRC error injection of ACK/NAK DLLP - 0010b: 16bCRC error injection of
EINJ0_CRC_TY Update-FC DLLP - 0011b: New TLP's ECRC error injection - 0100b: TLP's FCRC error injection (128b/
PE 130b) - 0101b: Parity error of TSOS (128b/130b) - 0110b: Parity error of SKPOS (128b/130b) Rx Path -
1000b: LCRC error injection - 1011b: ECRC error injection - Others: Reserved Note: This register field is
sticky.
Error injection count. Indicates the number of errors. This register is decremented when the errors have
7-0
been inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION0_ENABLE in
EINJ0_COUNT EINJ_ENABLE_REG returns 0b. - If the counter value is 0x00 and ERROR_INJECTION0_ENABLE=1,
the errors are inserted until ERROR_INJECTION0_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ1_SEQNUM_REG 190h
Function
Controls the sequence number of the specific TLPs and ACK/NAK DLLPs. Data Link Protocol Error will be detected at the Rx
side of ACK/NAL DLLPs when one of these conditions is true: - ((NEXT_TRANSMIT_SEQ -1) - AckNak_Seq_Num) mod 4096
> 2048 - (AckNak_Seq_Num - ACKD_SEQ) mod 4096 >= 2048 TLP is treated as Duplicate TLP at the Rx side when all these
conditions are true: - Sequence Number != NEXT_RCV_SEQ - (NEXT_RCV_SEQ - Sequence Number) mod 4096 <= 2048
TLP is treated as Bad TLP at the Rx side when all these conditions are true: - Sequence Number != NEXT_RCV_SEQ and -
(NEXT_RCV_SEQ - Sequence Number) mod 4096 > 2048
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
EINJ1_BAD_SEQNUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ1_
EINJ1_COUNT
W S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
28-16Bad sequence number. Indicates the value to add/subtract from the naturally-assigned sequence
numbers. This value is represented by two's complement. - 0x0FFF: +4095 - .. - 0x0002: +2 - 0x0001: +1
EINJ1_BAD_SE - 0x0000: 0 - 0x1FFF: -1 - 0x1FFE: -2 - .. - 0x1001: -4095 For example: - Set Type, SEQ# and Count --
QNUM EINJ1_SEQNUM_TYPE =0 (Insert errors into new TLPs) -- EINJ1_BAD_SEQNUM =0x1FFD (represents
-3) -- EINJ1_COUNT =1 - Enable Error Injection -- ERROR_INJECTION1_ENABLE =1 - Send a TLP
From the Core's Application Interface -- Assume SEQ#5 is given to the TLP. - The SEQ# is Changed to
#2 by the Error Injection Function in Layer2. -- 5 + (-3) = 2 - The TLP with SEQ#2 is Transmitted to PCIe
Link. Note: This register field is sticky.
15-9 Reserved
8 Sequence number type. Selects the type of sequence number. - 0b: Insertion of New TLP's SEQ# error -
1b: Insertion of ACK/NAK DLLP's SEQ# Error Note: This register field is sticky.
EINJ1_SEQNU
M_TYPE
Error injection count. Indicates the number of errors. This register is decremented as the errors are
7-0
being inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION1_ENABLE in
EINJ1_COUNT EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION1_ENABLE=1,
the errors are inserted until ERROR_INJECTION1_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ2_DLLP_REG 194h
Function
Controls the transmission of DLLPs and inserts the following errors: - If "ACK/NAK DLLP's transmission block" is selected,
replay timeout error will occur at the transmitter of the TLPs and then Data Link Retry will occur. - If "Update FC DLLP's
transmission block" is selected, LTSSM will transition to the Recovery state because of the UpdateFC timeout (if the timeout
is implemented at the receiver of the UpdateFCs). - If "Always Transmission for NAK DLLP" is selected, Data Link Retry will
occur at the transmitter of the TLPs. Furthermore, Replay NUM Rollover will occur when the transmitter has been requested
four times to send the TLP with the same sequence number.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ2_DLLP_T
EINJ2_COUNT
W YPE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-10 Reserved
9-8DLLP Type. Selects the type of DLLP errors to be inserted. - 00b: ACK/NAK DLLP's transmission block
- 01b: Update FC DLLP's transmission block - 10b: Always Transmission for NAK DLLP - 11b: Reserved
EINJ2_DLLP_T Note: This register field is sticky.
YPE
Error injection count. Indicates the number of errors. This register is decremented as the errors are
7-0
being inserted. - If the counter value is 0x01 and the error is inserted, ERROR_INJECTION2_ENABLE
EINJ2_COUNT in EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION2_ENABLE =1,
the errors are inserted until ERROR_INJECTION2_ENABLE is set to '0'. This register is affected only
when EINJ2_DLLP_TYPE =2'10b. Note: This register field is sticky.
Offset
Register Offset
EINJ3_SYMBOL_REG 198h
Function
When 8b/10b encoding is used, this register controls error insertion into the special (K code) symbols.
• If TS1/TS2/FTS/E-Idle/SKP is selected, it affects whole of the ordered set. It might cause timeout of the LTSSM.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
EINJ3_SYMBOL_TYPE EINJ3_COUNT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-11 Reserved
Field Function
Offset
Register Offset
EINJ4_FC_REG 19Ch
Function
Controls error insertion into the credit value in the UpdateFCs. It is possible to insert errors for any of the following types:
- Posted TLP Header credit - Non-Posted TLP Header credit - Completion TLP Header credit - Posted TLP Data credit -
Non-Posted TLP Data credit - Completion TLP Data credit These errors are not correctable while error insertion is enabled.
Receiver buffer overflow error might occur.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
EINJ4_BAD_UPDFC_VALUE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
EINJ4_VC_NUMBER EINJ4_UPDFC_TYPE EINJ4_COUNT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
28-16 Bad update-FC credit value. Indicates the value to add/subtract from the UpdateFC credit. This value is
represented by two's complement. - 0x0FFF: +4095 - .. - 0x0002: +2 - 0x0001: +1 - 0x0000: 0 - 0x1FFF:
-1 - 0x1FFE: -2 - .. - 0x1001: -4095 Note: This register field is sticky.
Field Function
EINJ4_BAD_UP
DFC_VALUE
15 Reserved
14-12 VC Number. Indicates target VC Number. Note: This register field is sticky.
EINJ4_VC_NU
MBER
11 Reserved
10-8Update-FC type. Selects the credit type. - 000b: Posted TLP Header Credit value control - 001b:
Non-Posted TLP Header Credit value control - 010b: Completion TLP Header Credit value control -
EINJ4_UPDFC_ 011b: Reserved - 100b: Posted TLP Data Credit value control - 101b: Non-Posted TLP Data Credit value
TYPE control - 110b: Completion TLP Data Credit value control - 111b: Reserved Note: This register field is
sticky.
7-0Error injection count. Indicates the number of errors. This register is decremented as the errors are
being inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION4_ENABLE in
EINJ4_COUNT EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION4_ENABLE =1,
the errors are inserted until ERROR_INJECTION4_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ5_SP_TLP_REG 1A0h
Function
Controls the generation of specified TLPs. Correctable errors will occur which will be fixed by the PCIe protocol. - For
Duplicate TLP, the controller initiates Data Link Retry by handling ACK DLLP as NAK DLLP. These TLPs will be duplicate
TLPs at the receiver side. - For Nullified TLP, the TLPs that the controller transmits are changed into nullified TLPs and the
original TLPs are stored in the retry buffer. The receiver of these TLPs will detect the lack of seq# and send NAK DLLP at
the next TLP. Then the original TLPs are sent from retry buffer and the data controls are recovered. For 128 bit controller or
more than 128 bit, the controller inserts errors the number of times of EINJ5_COUNT but doesn't ensure that the errors are
continuously inserted into TLPs.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ5_
EINJ5_COUNT
W S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-9 Reserved
8 Specified TLP. Selects the specified TLP to be inserted. - 0: Generates duplicate TLPs by handling ACK
DLLP as NAK DLLP. - 1: Generates Nullified TLP (Original TLP will be stored in retry buffer). Note: This
EINJ5_SPECIFI register field is sticky.
ED_TLP
Error injection count. Indicates the number of errors. This register is decremented as the errors are
7-0
being inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION5_ENABLE in
EINJ5_COUNT EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION5_ENABLE =1,
the errors are inserted until ERROR_INJECTION5_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1A4h
T_H0_REG
Function
Program this register for the 1st DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW0[7:0], TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 1st DWORD. Specifies which Tx TLP header DWORD#0 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H0 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1A8h
T_H1_REG
Function
Program this register for the 2nd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW1[7:0], TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 2nd DWORD. Specifies which Tx TLP header DWORD#1 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H1 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1ACh
T_H2_REG
Function
Program this register for the 3rd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW2[7:0], TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 3rd DWORD. Specifies which Tx TLP header DWORD#2 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H2 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_POIN 1B0h
T_H3_REG
Function
Program this register for the 4th DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW3[7:0], TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Point: 4th DWORD. Specifies which Tx TLP header DWORD#3 bits to compare with
31-0
the corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all
EINJ6_COMPA specified bits (in the Tx TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors
RE_POINT_H3 into the TLP. Note: This register field is sticky.
Offset
Register Offset
EINJ6_COMPARE_VAL 1B4h
UE_H0_REG
Function
Program this register for the 1st DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW0[7:0], TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 1st DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#0 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H0
Offset
Register Offset
EINJ6_COMPARE_VAL 1B8h
UE_H1_REG
Function
Program this register for the 2nd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW1[7:0], TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 2nd DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#1 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H1
Offset
Register Offset
EINJ6_COMPARE_VAL 1BCh
UE_H2_REG
Function
Program this register for the 3rd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW2[7:0], TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 3rd DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#2 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H2
Offset
Register Offset
EINJ6_COMPARE_VAL 1C0h
UE_H3_REG
Function
Program this register for the 4th DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW3[7:0], TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet
Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the corresponding
bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx TLP header and
EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors are specified by
the EINJ6_TLP_REG register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_COMPARE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_COMPARE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Compare Value: 4th DWORD. Specifies the value to compare against Tx the TLP header
31-0
DWORD#3 bits specified in the Packet Compare Point registers (EINJ6_COMPARE_POINT*). Note:
EINJ6_COMPA This register field is sticky.
RE_VALUE_H3
Offset
Register Offset
EINJ6_CHANGE_POINT 1C4h
_H0_REG
Function
Program this register for the 1st DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW0[7:0], TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 1st DWORD. Specifies which Tx TLP header DWORD#0 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H0
Offset
Register Offset
EINJ6_CHANGE_POINT 1C8h
_H1_REG
Function
Program this register for the 2nd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW1[7:0], TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 2nd DWORD. Specifies which Tx TLP header DWORD#1 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H1
Offset
Register Offset
EINJ6_CHANGE_POINT 1CCh
_H2_REG
Function
Program this register for the 3rd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW2[7:0], TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 3rd DWORD. Specifies which Tx TLP header DWORD#2 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H2
Offset
Register Offset
EINJ6_CHANGE_POINT 1D0h
_H3_REG
Function
Program this register for the 4th DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW3[7:0], TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_POINT_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Point: 4th DWORD. Specifies which Tx TLP header DWORD#3 bits to replace with the
31-0
corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). Note: This register
EINJ6_CHANG field is sticky.
E_POINT_H3
Offset
Register Offset
EINJ6_CHANGE_VALU 1D4h
E_H0_REG
Function
Program this register for the 1st DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW0[7:0], TLP_DW0[15:8], TLP_DW0[23:16], TLP_DW0[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 1st DWORD. Specifies replacement values for the Tx TLP header DWORD#0
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H0
Offset
Register Offset
EINJ6_CHANGE_VALU 1D8h
E_H1_REG
Function
Program this register for the 2nd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW1[7:0], TLP_DW1[15:8], TLP_DW1[23:16], TLP_DW1[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 2nd DWORD. Specifies replacement values for the Tx TLP header DWORD#1
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H1
Offset
Register Offset
EINJ6_CHANGE_VALU 1DCh
E_H2_REG
Function
Program this register for the 3rd DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW2[7:0], TLP_DW2[15:8], TLP_DW2[23:16], TLP_DW2[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 3rd DWORD. Specifies replacement values for the Tx TLP header DWORD#2
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H2
Offset
Register Offset
EINJ6_CHANGE_VALU 1E0h
E_H3_REG
Function
Program this register for the 4th DWORD of TLP header/prefix. It is necessary to carefully consider the endianness when
you program this register. Bits [31:0] = TLP_DW3[7:0], TLP_DW3[15:8], TLP_DW3[23:16], TLP_DW3[31:24] The Packet
Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header bits to replace with the corresponding bits
in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and number of errors are specified by the
EINJ6_TLP_REG register. Only applies when EINJ6_INVERTED_CONTROL in EINJ6_TLP_REG =0.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
EINJ6_CHANGE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EINJ6_CHANGE_VALUE_H3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Packet Change Value: 4th DWORD. Specifies replacement values for the Tx TLP header DWORD#3
31-0
bits defined in the Packet Change Point registers (EINJ6_CHANGE_POINT*). Only applies when the
EINJ6_CHANG EINJ6_INVERTED_CONTROL field in EINJ6_TLP_REG is '0'. Note: This register field is sticky.
E_VALUE_H3
Offset
Register Offset
EINJ6_TLP_REG 1E4h
Function
The Packet Compare Point registers (EINJ6_COMPARE_POINT*) specify which Tx TLP header bits to compare with the
corresponding bits in the Packet Compare Value registers (EINJ6_COMPARE_VALUE*). When all specified bits (in the Tx
TLP header and EINJ6_COMPARE_VALUE*) match, the controller inserts errors into the TLP. The type and number of errors
are specified by the this register. The Packet Change Point registers (EINJ6_CHANGE_POINT*) specify which Tx TLP header
bits to replace with the corresponding bits in the Packet Change Value registers (EINJ6_CHANGE_VALUE*). The type and
number of errors are specified by the this register. Only applies when EINJ6_INVERTED_CONTROL in this register =0. The
TLP into that errors are injected will not arrive at the transaction layer of the remote device when all of the following conditions
are true. - Using 128b/130b encoding - Injecting errors into TLP Length field / TLP digest bit
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EINJ6_
EINJ6_PACKET_TYPE EINJ6_COUNT
W I...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Reserved
11-9 Packet type. Selects the TLP packets to inject errors into. - 0: TLP Header - 1: TLP Prefix 1st
4-DWORDs - 2: TLP Prefix 2nd -DWORDs - Else: Reserved Note: This register field is sticky.
EINJ6_PACKET
_TYPE
Error Injection Count. Indicates the number of errors to insert. This counter is decremented while errors
7-0
are been inserted. - If the counter value is 0x01 and error is inserted, ERROR_INJECTION6_ENABLE
EINJ6_COUNT in EINJ_ENABLE_REG returns '0'. - If the counter value is 0x00 and ERROR_INJECTION6_ENABLE=1,
errors are inserted until ERROR_INJECTION6_ENABLE is set to '0'. Note: This register field is sticky.
Offset
Register Offset
SD_CONTROL1_REG 1F8h
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 LOW_POWER_ 0 FORC
TX_EIOS_NUM
W INTER... E_D...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
FORCE_DETECT_LANE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
Low Power Entry Interval Time. Interval Time that the controller starts monitoring RXELECIDLE signal
23-22
after L0s/L1/L2 entry. You should set the value according to the latency from receiving EIOS to,
LOW_POWER_ RXELECIDLE assertion at the PHY. - 0x0: 40ns - 0x1: 160ns - 0x2: 320ns - 0x3: 640ns Note: This
INTERVAL register field is sticky.
Number of Tx EIOS. This register sets the number of transmit EIOS for L0s/L1 entry and Disable/
21-20
Loopback/Hot-reset exit. The controller selects the greater value between this register and the value
TX_EIOS_NUM defined by the PCI-SIG specification. 2.5GT/s, 8.0GT/s or higher: - 0x0: 1 - 0x1: 4 - 0x2: 8 - 0x3: 16
5.0GT/s: - 0x0: 2 - 0x1: 8 - 0x2: 16 - 0x3: 32 Note: This register field is sticky.
19-17 Reserved
16 Force Detect Lane Enable. When this bit is set, the controller ignores receiver detection from PHY during
LTSSM Detect state and uses FORCE_DETECT_LANE. Note: This register field is sticky.
FORCE_DETE
CT_LANE_EN
15-0 Force Detect Lane. When the FORCE_DETECT_LANE_EN field is set, the controller ignores receiver
detection from PHY during LTSSM Detect state and uses this value instead. - 0: Lane0 - 1: Lane1 - 2:
FORCE_DETE Lane2 - .. - 15: Lane15 Note: This register field is sticky.
CT_LANE
Offset
Register Offset
SD_CONTROL2_REG 1FCh
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 FRAMI
W NG...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
DIREC DIREC DIREC NOAC HOLD
T_... T_... T_... K_F... RECO _LT...
W
VER...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-17 Reserved
16 Framing Error Recovery Disable. This bit disables a transition to Recovery state when a Framing Error is
occurred. Note: This register field is sticky.
FRAMING_ERR
_RECOVERY_
DISABLE
15-11 Reserved
10 Direct Loopback Slave To Exit. When this bit is set and the LTSSM is in Loopback Slave Active State,
the LTSSM transitions to Loopback Slave Exit state. Note: This register field is sticky.
DIRECT_LPBK
SLV_TO_EXIT
9 Direct Polling.Compliance to Detect. When this bit is set and the LTSSM is in Polling Compliance State,
the LTSSM transitions to Detect state. Note: This register field is sticky.
DIRECT_POLC
OMP_TO_DET
ECT
8 Direct Recovery.Idle to Configuration. When this bit is set and the LTSSM is in Recovery Idle State, the
LTSSM transitions to Configuration state. Note: This register field is sticky.
DIRECT_RECI
DLE_TO_CONF
IG
7-3 Reserved
Field Function
2 Force LinkDown. When this bit is set and the controller detects REPLY_NUM rolling over 4 times, the
LTSSM transitions to Detect State. Note: This register field is sticky.
NOACK_FORC
E_LINKDOWN
1 Recovery Request. When this bit is set to '1' in L0 or L0s, the LTSSM starts transitioning to Recovery
State. This request does not cause a speed change or re-equalization.
RECOVERY_R
EQUEST
0 Hold and Release LTSSM. For as long as this register is '1', the controller stays in the current LTSSM.
Note: This register field is sticky.
HOLD_LTSSM
Offset
Register Offset
SD_STATUS_L1LANE_ 208h
REG
Function
This viewport register returns the data selected by the following field: - LANE_SELECT in SD_STATUS_L1LANE_REG For
more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
LANE_SELECT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Deskew Pointer. Indicates Deskew pointer of internal Deskew buffer of selected lane
number(LANE_SELECT). Note: This register field is sticky.
DESKEW_POI
NTER
23-21 Reserved
18 PIPE:RxValid. Indicates PIPE RXVALID signal of selected lane number(LANE_SELECT). Note: This
register field is sticky.
PIPE_RXVALID
17 PIPE:Detect Lane. Indicates whether PHY indicates receiver detection or not on selected lane
number(LANE_SELECT). Note: This register field is sticky.
PIPE_DETECT
_LANE
15-4 Reserved
3-0 Lane Select. Lane Select register for Silicon Debug Status Register of Layer1-PerLane. - 0x0: Lane0 -
0x1: Lane1 - 0x2: Lane2 - .. - 0xF: Lane15 Note: This register field is sticky.
LANE_SELECT
Offset
Register Offset
SD_STATUS_L1LTSSM 20Ch
_REG
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R LTSSM_VARIABLE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LANE_ FRAMI
R 0 PIPE_POWER_DOWN FRAMING_ERR_PTR
RE... NG...
W W1C
Reset 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
Fields
Field Function
LTSSM Variable. Indicates internal LTSSM variables defined in the PCI Express Base
31-16
Specification. C-PCIe Mode: - 0: directed_speed_change - 1: changed_speed_recovery
LTSSM_VARIA - 2: successful_speed_negotiation - 3: upconfigure_capable; Set to '1' if both
BLE ports advertised the UpConfigure capability in the last Config.Complete. - 4:
select_deemphasis - 5: start_equalization_w_preset - 6: equalization_done_8GT_data_rate - 7:
equalization_done_16GT_data_rate - 15:8: idle_to_rlock_transitioned Note: This register field is sticky.
15 Lane Reversal Operation. Receiver detected lane reversal. This field is only valid in the L0 LTSSM state.
Note: This register field is sticky.
LANE_REVERS
AL
14-11 Reserved
10-8 PIPE:PowerDown. Indicates PIPE PowerDown signal. Note: This register field is sticky.
PIPE_POWER_
DOWN
FRAMING_ERR
Field Function
— 03h: When SDP token was received but not expected. (128 bit & (x8 | x16) controller only)
— 04h: When STP token was received but not expected. (128 bit & (x8 | x16) controller only)
— 05h: When EDS token was expected but not received or whenever an EDS token was received
but not expected.
— 06h: When a framing error was detected in the deskew block while a packet has been in
progress in token_finder.
• Received Unexpected STP Token
— 11h: When Framing CRC in STP token did not match
— 12h: When Framing Parity in STP token did not match.
— 13h: When Framing TLP Length in STP token was smaller than 5 DWORDs.
• Received Unexpected Block
— 21h: When Receiving an OS Block following SDS in Datastream state
— 22h: When Data Block followed by OS Block different from SKP, EI, EIE in Datastream state
— 23h: When Block with an undefined Block Type in Datastream state
— 24h: When Data Stream without data over three cycles in Datastream state
— 25h: When OS Block during Data Stream in Datastream state
— 26h: When RxStatus Error was detected in Datastream state
— 27h: When Not all active lanes receiving SKP OS starting at same cycle time in SKPOS state
— 28h: When a 2-Block timeout occurs for SKP OS in SKPOS state
— 29h: When Receiving consecutive OS Blocks within a Data Stream in SKPOS state
— 2Ah: When Phy status error was detected in SKPOS state
— 2Bh: When Not all active lanes receiving EIOS starting at same cycle time in EIOS state
— 2Ch: When At least one Symbol from the first 4 Symbols is not EIOS Symbol in EIOS state
— 2Dh: When Not all active lanes receiving EIEOS starting at same cycle time in EIEOS state
— 2Eh: When Not full 16 eieos symbols are received in EIEOS state
All other values not listed above are reserved.
This register field is sticky.
Offset
Register Offset
SD_STATUS_PM_REG 210h
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 LATCHED_NFTS
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PME_
R 0 INTERNAL_PM_SSTATE 0 INTERNAL_PM_MSTATE
RES...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-16 Latched N_FTS. Indicates the value of N_FTS in the received TS Ordered Sets from the Link Partner
Note: This register field is sticky.
LATCHED_NFT
S
15-13 Reserved
PME Re-send flag. When the DUT sends a PM_PME message TLP, the DUT sets PME_Status bit.
12
If host software does not clear PME_Status bit for 100ms(+50%/-5%), the DUT resends the PM_PME
PME_RESEND Message. This bit indicates that a PM_PME was resent.
_FLAG
Internal PM State(Slave). Indicates internal state machine of Power Management Slave controller.
11-8
- 0h: S_IDLE - 1h: S_RESPOND_NAK - 2h: S_BLOCK_TLP - 3h: S_WAIT_LAST_TLP_ACK -
INTERNAL_PM 4h: S_WAIT_EIDLE - 5h: S_LINK_ENTR_L1 - 6h: S_L1 - 7h: S_L1_EXIT - 8h: S_L23RDY
_SSTATE - 9h: S_LINK_ENTR_L23 - Ah: S_L23RDY_WAIT4ALIVE - Bh: S_ACK_WAIT4IDLE - Ch:
S_WAIT_LAST_PMDLLP Note: This register field is sticky.
7-5 Reserved
Internal PM State(Master). Indicates internal state machine of Power Management Master controller. -
4-0
00h: IDLE - 01h: L0 - 02h: L0S - 03h: ENTER_L0S - 04h: L0S_EXIT - 05h: WAIT_PMCSR_CPL_SENT
INTERNAL_PM - 08h: L1 - 09h: L1_BLOCK_TLP - 0Ah: L1_WAIT_LAST_TLP_ACK - 0Bh: L1_WAIT_PMDLLP_ACK
_MSTATE - 0Ch: L1_LINK_ENTR_L1 - 0Dh: L1_EXIT - 0Fh: PREP_4L1 - 10h: L23_BLOCK_TLP - 11h:
L23_WAIT_LAST_TLP_ACK - 12h: L23_WAIT_PMDLLP_ACK - 13h: L23_ENTR_L23 - 14h: L23RDY -
15h: PREP_4L23 - 16h: L23RDY_WAIT4ALIVE - 17h: L0S_BLOCK_TLP - 18h: WAIT_LAST_PMDLLP -
19h: WAIT_DSTATE_UPDATE Note: This register field is sticky.
Offset
Register Offset
SD_STATUS_L2_REG 214h
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
FC_INI FC_INI
R 0 DLCMSM RX_ACK_SEQ_NO
T2 T1
Reset 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R RX_ACK_SEQ_NO TX_TLP_SEQ_NO
Reset 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
27 FC_INIT2. Indicates the controller is in FC_INIT2(VC0) state. Note: This register field is sticky.
FC_INIT2
26 FC_INIT1. Indicates the controller is in FC_INIT1(VC0) state. Note: This register field is sticky.
FC_INIT1
25-24 DLCMSM. Indicates the current DLCMSM. - 00b: DL_INACTIVE - 01b: DL_FC_INIT - 11b: DL_ACTIVE
Note: This register field is sticky.
DLCMSM
23-12 Tx Ack Sequence Number. Indicates ACKD_SEQ which is updated by receiving ACK/NAK DLLP. Note:
This register field is sticky.
RX_ACK_SEQ_
NO
11-0 Tx Tlp Sequence Number. Indicates next transmit sequence number for transmit TLP. Note: This register
field is sticky.
TX_TLP_SEQ_
NO
Offset
Register Offset
SD_STATUS_L3FC_RE 218h
G
Function
The CREDIT_DATA[0/1] fields in this viewport register return the data for the VC and TLP Type selected by the following
fields: - CREDIT_SEL_VC - CREDIT_SEL_CREDIT_TYPE - CREDIT_SEL_TLP_TYPE - CREDIT_SEL_HD For more details,
see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CREDIT_DATA1 CREDIT_DATA0
Reset 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
7 Reserved
5-4 Credit Select(TLP Type). This field in conjunction with the CREDIT_SEL_VC,
CREDIT_SEL_CREDIT_TYPE, and CREDIT_SEL_HD viewport-select fields determines that data that
Field Function
CREDIT_SEL_T is returned by the CREDIT_DATA0 and CREDIT_DATA1 data fields. - 0x0: Posted - 0x1: Non-Posted -
LP_TYPE 0x2: Completion Note: This register field is sticky.
Offset
Register Offset
SD_STATUS_L3_REG 21Ch
Function
For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MFTLP
R 0 MFTLP_POINTER
_S...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Field Function
MFTLP_STATU
S
First Malformed TLP Error Pointer. Indicates the element of the received first malformed TLP. This
6-0
pointer is validated by MFTLP_STATUS. - 01h: AtomicOp address alignment - 02h: AtomicOp operand
MFTLP_POINT - 03h: AtomicOp byte enable - 04h: TLP length miss match - 05h: Max payload size - 06h: Message
ER TLP without TC0 - 07h: Invalid TC - 08h: Unexpected route bit in Message TLP - 09h: Unexpected CRS
status in Completion TLP - 0Ah: Byte enable - 0Bh: Memory Address 4KB boundary - 0Ch: TLP prefix
rules - 0Dh: Translation request rules - 0Eh: Invalid TLP type - 0Fh: Completion rules - 7Fh: Application -
Else: Reserved Note: This register field is sticky.
Offset
Register Offset
SD_EQ_CONTROL1_RE 228h
G
Function
This is a viewport control register. Setting the EQ_RATE_SEL and EQ_LANE_SEL fields in this register determine the per-lane
Silicon Debug EQ Status data returned by the SD_EQ_STATUS[1/2/3] viewport registers. For more details, see RAS Debug,
Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R FOM_ 0 EVAL_INTERV
FOM_TARGET
W TAR... AL_T...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 EXT_EQ_TIME 0 EQ_R
EQ_LANE_SEL
W OUT ATE...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
FOM Target. Indicates figure of merit target criteria value of EQ Master(DSP in EQ Phase3/USP in
31-24
EQ Phase2). This field is only valid when GEN3_EQ_FB_MODE is 0001b(Figure Of Merit). Note: This
FOM_TARGET register field is sticky.
23 FOM Target Enable. Enables the FOM_TARGET fields. Note: This register field is sticky.
FOM_TARGET
_ENABLE
22-18 Reserved
Eval Interval Time. Indicates interval time of RxEqEval assertion. - 00: 500ns - 01: 1us - 10: 2us - 11:
17-16
4us This field is used for EQ Master(DSP in EQ Phase3/USP in EQ Phase2). Note: This register field is
EVAL_INTERV sticky.
AL_TIME
15-10 Reserved
9-8Extends EQ Phase2/3 Timeout. This field is used when the Ltssm is in Recovery.EQ2/3. When this field
is set, the value of EQ2/3 timeout is extended. EQ Master(DSP in EQ Phase3/USP in EQ Phase2). - 00:
EXT_EQ_TIME 24ms (default) - 01: 48ms (x2) - 10: 240ms (x10) - 11: No timeout EQ Slave(DSP in EQ Phase2/USP
OUT in EQ Phase3). - 00: 32ms (default) - 01: 56ms (32ms+24ms) - 10: 248ms (32ms +9*24ms) - 11: No
timeout Note: This register field is sticky.
7-5 Reserved
4 EQ Status Rate Select. Setting this field in conjunction with the EQ_LANE_SEL field determines the per-
lane Silicon Debug EQ Status data returned by the SD_EQ_CONTROL[2/3] and SD_EQ_STATUS[1/2/3]
EQ_RATE_SEL viewport registers. - 0x0: 8.0GT/s Speed - 0x1: 16.0GT/s Speed Note: This register field is sticky.
3-0EQ Status Lane Select. Setting this field in conjunction with the EQ_RATE_SEL field determines the per-
lane Silicon Debug EQ Status data returned by the SD_EQ_CONTROL[2/3] and SD_EQ_STATUS[1/2/3]
EQ_LANE_SEL viewport registers. - 0x0: Lane0 - 0x1: Lane1 - 0x2: Lane2 - .. - 0xF: Lane15 Note: This register field is
sticky.
Offset
Register Offset
SD_EQ_CONTROL2_RE 22Ch
G
Function
This viewport register returns the value for the rate and lane selected by the EQ_RATE_SEL and EQ_LANE_SEL fields in the
SD_EQ_CONTROL1_REG register. For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FORCE_LOCAL_TX_POST_CUR
FORCE_LOCAL_TX_CURSOR FORCE_LOCAL_TX_PRE_CURSOR
W SOR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
30 Force Local Transmitter Preset Enable. Enables the FORCE_LOCAL_TX_PRESET field. Note: This
register field is sticky.
FORCE_LOCA
L_TX_PRESET
_ENABLE
29 Force Local Receiver Preset Hint Enable. Enables the FORCE_LOCAL_RX_HINT field. Note: This
register field is sticky.
FORCE_LOCA
L_RX_HINT_EN
ABLE
27-24 Force Local Transmitter Preset. Indicates initial preset value of USP in EQ Slave(EQ Phase2) instead of
receiving EQ TS2. Note: This register field is sticky.
FORCE_LOCA
L_TX_PRESET
23-21 Reserved
20-18 Force Local Receiver Preset Hint. Indicates the RxPresetHint value of EQ Slave(DSP in EQ
Phase2/USP in EQ Phase3), instead of received or set value. Note: This register field is sticky.
FORCE_LOCA
L_RX_HINT
Field Function
11-6 Force Local Transmitter Cursor. Indicates the coefficient value of EQ Slave(DSP in EQ Phase2/USP in
EQ Phase3), instead of the value instructed from link partner. Note: This register field is sticky.
FORCE_LOCA
L_TX_CURSOR
5-0 Force Local Transmitter Pre-cursor. Indicates the coefficient value of EQ Slave(DSP in EQ Phase2/USP
in EQ Phase3), instead of the value instructed from link partner. Note: This register field is sticky.
FORCE_LOCA
L_TX_PRE_CU
RSOR
Offset
Register Offset
SD_EQ_CONTROL3_RE 230h
G
Function
This viewport register returns the value for the rate and lane selected by the EQ_RATE_SEL and EQ_LANE_SEL fields in the
SD_EQ_CONTROL1_REG register. For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 FORC 0 FORCE_REMO
W E_R... TE_TX...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R FORCE_REMOTE_TX_POST_CU
FORCE_REMOTE_TX_CURSOR FORCE_REMOTE_TX_PRE_CURSOR
W RSOR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
27-18 Reserved
11-6 Force Remote Transmitter Cursor. Indicates the coefficient value of EQ Master(DSP in EQ Phase3/USP
in EQ Phase2), instead of the value instructed from link partner. Note: This register field is sticky.
FORCE_REMO
TE_TX_CURSO
R
Offset
Register Offset
SD_EQ_STATUS1_REG 238h
Function
This viewport register returns the first of three words of Silicon Debug EQ Status data for the rate and lane selected by the
EQ_RATE_SEL and EQ_LANE_SEL fields in the SD_EQ_CONTROL1_REG register. The following fields are available when
Equalization finished unsuccessfully(EQ_CONVERGENCE_INFO=2). - EQ_RULEA_VIOLATION - EQ_RULEB_VIOLATION -
EQ_RULEC_VIOLATION - EQ_REJECT_EVENT For more details, see RAS Debug, Error Injection, and Statistics (DES)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
7 EQ Reject Event
EQ_REJECT_E Indicates that the controller receives two consecutive TS1 OS w/Reject=1b during EQ Master
VENT phase(DSP in EQ Phase3/USP in EQ Phase2). This bit is automatically cleared when the controller
starts EQ Master phase again. Note: This register field is sticky.
6 EQ Rule C Violation
EQ_RULEC_VI Indicates that coefficients rule C violation is detected in the values provided by PHY using direction
OLATION change method during EQ Master phase(DSP in EQ Phase3/USP in EQ Phase2). The coefficients rule
C correspond to the rules c) from section "Rules for Transmitter Coefficents" in the PCI Express Base
Specification. This bit is automatically cleared when the controller starts EQ Master phase again. Note:
This register field is sticky.
5 EQ Rule B Violation.
EQ_RULEB_VI Indicates that coefficients rule B violation is detected in the values provided by PHY using direction
OLATION change method during EQ Master phase(DSP in EQ Phase3/USP in EQ Phase2). The coefficients rules
B correspond to the rules b) from section "Rules for Transmitter Coefficents" in the PCI Express Base
Specification. This bit is automatically cleared when the controller starts EQ Master phase again. Note:
This register field is sticky.
4 EQ Rule A Violation
EQ_RULEA_VI Indicates that coefficients rule A violation is detected in the values provided by PHY using direction
OLATION change method during EQ Master phase(DSP in EQ Phase3/USP in EQ Phase2). The coefficients rules
A correspond to the rules a) from section "Rules for Transmitter Coefficents" in the PCI Express Base
Specification. This bit is automatically cleared when the controller starts EQ Master phase again. Note:
This register field is sticky.
3 Reserved
Field Function
0 EQ Sequence
EQ_SEQUENC Indicates that the controller is starting the equalization sequence. Note: This register field is sticky.
E
Offset
Register Offset
SD_EQ_STATUS2_REG 23Ch
Function
This viewport register returns the second of three words of Silicon Debug EQ Status data for the rate and lane selected by the
EQ_RATE_SEL and EQ_LANE_SEL fields in the SD_EQ_CONTROL1_REG register. Each field is available when Equalization
finished successfully(EQ_CONVERGENCE_INFO=1). For more details, see RAS Debug, Error Injection, and Statistics (DES)
†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
EQ_LOCAL_PO
R EQ_LOCAL_FOM_VALUE 0 EQ_LOCAL_RX_HINT
ST_C...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 EQ Local Figure of Merit. Indicates Local maximum Figure of Merit value. Note: This register field is
sticky.
Field Function
EQ_LOCAL_FO
M_VALUE
23-21 Reserved
20-18 EQ Local Receiver Preset Hint. Indicates Local Receiver Preset Hint value. Note: This register field is
sticky.
EQ_LOCAL_RX
_HINT
17-12 EQ Local Post-Cursor. Indicates Local post cursor coefficient value. Note: This register field is sticky.
EQ_LOCAL_PO
ST_CURSOR
11-6 EQ Local Cursor. Indicates Local cursor coefficient value. Note: This register field is sticky.
EQ_LOCAL_CU
RSOR
5-0 EQ Local Pre-Cursor. Indicates Local pre cursor coefficient value. Note: This register field is sticky.
EQ_LOCAL_PR
E_CURSOR
Offset
Register Offset
SD_EQ_STATUS3_REG 240h
Function
This viewport register returns the third of three words of Silicon Debug EQ Status data for the rate and lane selected by the
EQ_RATE_SEL and EQ_LANE_SEL fields in the SD_EQ_CONTROL1_REG register. Each field is available when Equalization
finished successfully(EQ_CONVERGENCE_INFO=1). For more details, see RAS Debug, Error Injection, and Statistics (DES)
†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
EQ_REMOTE_
R 0 EQ_REMOTE_FS EQ_REMOTE_LF
POST_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-30 Reserved
29-24 EQ Remote FS. Indicates Remote FS value. Note: This register field is sticky.
EQ_REMOTE_
FS
23-18 EQ Remote LF. Indicates Remote LF value. Note: This register field is sticky.
EQ_REMOTE_
LF
17-12 EQ Remote Post-Cursor. Indicates Remote post cursor coefficient value. Note: This register field is
sticky.
EQ_REMOTE_
POST_CURSO
R
11-6 EQ Remote Cursor. Indicates Remote cursor coefficient value. Note: This register field is sticky.
EQ_REMOTE_
CURSOR
5-0 EQ Remote Pre-Cursor. Indicates Remote pre cursor coefficient value. Note: This register field is sticky.
EQ_REMOTE_
PRE_CURSOR
3.8.106 PCIe Extended Capability ID, Capability Version And Next Capability Offset
(RASDP_EXT_CAP_HDR_OFF)
Offset
Register Offset
RASDP_EXT_CAP_HDR 258h
_OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
All fields in this register become writable when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NEXT_OFFSET CAP
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1
Fields
Field Function
Next Capability Offset. For a description of this standard PCIe register, see the PCI Express
31-20
Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
NEXT_OFFSET register field is sticky.
19-16 Capability Version. For a description of this standard PCIe register, see the PCI Express Specification.
Note: The access attributes of this field are as follows: - Wire: No access. Note: This register field is
CAP sticky.
15-0 PCI Express Extended Capability ID. For a description of this standard PCIe register, see the PCI
Express Specification. Note: The access attributes of this field are as follows: - Wire: No access. Note:
ID This register field is sticky.
Offset
Register Offset
RASDP_VENDOR_SPE 25Ch
CIFIC_HDR_OFF
Function
For a description of this standard PCIe register, see the PCI Express Specification.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VSEC_LENGTH VSEC_REV
Reset 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VSEC_ID
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-20 VSEC Length. For a description of this standard PCIe register, see the PCI Express Specification. Note:
This register field is sticky.
VSEC_LENGT
H
19-16 VSEC Rev. For a description of this standard PCIe register, see the PCI Express Specification. Note:
This register field is sticky.
VSEC_REV
15-0 VSEC ID. For a description of this standard PCIe register, see the PCI Express Specification. Note: This
register field is sticky.
VSEC_ID
Offset
Register Offset
RASDP_ERROR_PROT 260h
_CTRL_OFF
Function
Allows you to disable ECC error correction for RAMs and datapath. When the AXI Bridge Module is implemented and the
master / slave clocks are asynchronous to the PCIe native controller clock (core_clk), you must not write this register while
operations are in progress in the AXI master / slave interface.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-23 Reserved
22 Error correction disable for ADM Rx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AD
M_RX
21 Error correction disable for layer 3 Rx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER3_RX
20 Error correction disable for layer 2 Rx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER2_RX
19 Error correction disable for DMA read engine. Note: This register field is sticky.
ERROR_PROT
_DISABLE_DM
A_READ
18 Error correction disable for AXI bridge inbound request path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AXI
Field Function
_BRIDGE_INB
OUND_REQUE
ST
17 Error correction disable for AXI bridge inbound completion composer. Does not disable the error
detection reporting for 1-bit and 2-bit ECC errors. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AXI
_BRIDGE_INB
OUND_COMPL
ETION
16 Global error correction disable for all Rx layers. Note: This register field is sticky.
ERROR_PROT
_DISABLE_RX
15-7 Reserved
6 Error correction disable for Adm Tx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AD
M_TX
5 Error correction disable for layer 3 Tx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER3_TX
4 Error correction disable for layer 2 Tx path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_LAY
ER2_TX
3 Error correction disable for DMA write engine. Note: This register field is sticky.
ERROR_PROT
_DISABLE_DM
A_WRITE
2 Error correction disable for AXI bridge outbound request path. Note: This register field is sticky.
ERROR_PROT
_DISABLE_AXI
_BRIDGE_OUT
BOUND
1 Error correction disable for AXI bridge master completion buffer. Note: This register field is sticky.
Field Function
ERROR_PROT
_DISABLE_AXI
_BRIDGE_MAS
TER
0 Global error correction disable for all Tx layers. Does not disable the error detection reporting for 1-bit
and 2-bit ECC errors. Note: This register field is sticky.
ERROR_PROT
_DISABLE_TX
Offset
Register Offset
RASDP_CORR_COUNT 264h
ER_CTRL_OFF
Function
This is a viewport control register. Setting the CORR_COUNTER_SELECTION_REGION and
CORR_COUNTER_SELECTION fields in this register determine the counter data returned by the
RASDP_CORR_COUNT_REPORT_OFF viewport data register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CORR_COUNTER_SELECTION_ 0
CORR_COUNTER_SELECTION
W REGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
CORR
R 0 CORR 0
_CL...
_EN...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
31-24 Counter selection. This field selects the counter ID (within the region defined
by CORR_COUNTER_SELECTION_REGION) whose contents can be read from the
Field Function
CORR_COUNT RASDP_CORR_COUNT_REPORT_OFF register. You can cycle this field value from 0 to 255 to access
ER_SELECTIO all counters according to the detailed report of check points at http://www.synopsys.com/dw/doc.php/iip/
N DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
Select correctable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for layer 3
23-20
Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path - 0x4: Region
CORR_COUNT select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound completion
ER_SELECTIO composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path - 0x8:
N_REGION Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select for
AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion buffer
path - 0xc: Reserved - 0xf: Reserved
19-5 Reserved
4 Enable correctable errors counters. - 1: counters increment when the controller detects a correctable
error - 0: counters are frozen The counters are enabled by default.
CORR_EN_CO
UNTERS
3-1 Reserved
CORR_CLEAR
_COUNTERS
Offset
Register Offset
RASDP_CORR_COUNT 268h
_REPORT_OFF
Function
This viewport register returns the counter data selected by the CORR_COUNTER_SELECTION_REGION and
CORR_COUNTER_SELECTION fields in the RASDP_CORR_COUNTER_CTRL_OFF register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
CORR_COUNTER_SELECTED_R
R CORR_COUNTER_SELECTED 0
EGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CORR_COUNTER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Counter selection. Returns the value set in the CORR_COUNTER_SELECTION field of the
RASDP_CORR_COUNTER_CTRL_OFF register.
CORR_COUNT
ER_SELECTED
Selected correctable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
CORR_COUNT - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
ER_SELECTED completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
_REGION - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-8 Reserved
CORR_COUNT
ER
3.8.111 Uncorrected error (2-bit ECC and parity) counter selection and control
(RASDP_UNCORR_COUNTER_CTRL_OFF)
Offset
Register Offset
RASDP_UNCORR_COU 26Ch
NTER_CTRL_OFF
Function
This is a viewport control register. Setting the UNCORR_COUNTER_SELECTION_REGION and
UNCORR_COUNTER_SELECTION fields in this register determine the counter data returned by the
RASDP_UNCORR_COUNT_REPORT_OFF viewport data register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UNCORR_COUNTER_SELECTIO 0
UNCORR_COUNTER_SELECTION
W N_REGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
UNCO
R 0 UNCO 0
RR_...
RR_...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
Counter selection. This field selects the counter ID (within the region defined
31-24
by UNCORR_COUNTER_SELECTION_REGION) whose contents can be read from the
UNCORR_COU RASDP_UNCORR_COUNT_REPORT_OFF register. You can cycle this field value from 0 to 255 to
NTER_SELECT access all counters according to the detailed report of check points at http://www.synopsys.com/dw/
ION doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
Select uncorrectable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
UNCORR_COU - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
NTER_SELECT completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
ION_REGION - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-5 Reserved
4 Enable uncorrectable errors counters. - 1: enables the counters to increment on detected correctable
errors - 0: counters are frozen The counters are enabled by default.
UNCORR_EN_
COUNTERS
3-1 Reserved
0 Clear uncorrectable errors counters. When asserted causes all counters tracking the uncorrectable
errors to be cleared.
UNCORR_CLE
AR_COUNTER
S
Offset
Register Offset
RASDP_UNCORR_COU 270h
NT_REPORT_OFF
Function
This viewport register returns the counter data selected by the UNCORR_COUNTER_SELECTION_REGION and
UNCORR_COUNTER_SELECTION fields in the RASDP_UNCORR_COUNTER_CTRL_OFF register.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
UNCORR_COUNTER_SELECTE
R UNCORR_COUNTER_SELECTED 0
D_REGION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 UNCORR_COUNTER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Counter selection. Returns the value set in the UNCORR_COUNTER_SELECTION field of the
RASDP_UNCORR_COUNTER_CTRL_OFF register.
UNCORR_COU
NTER_SELECT
ED
Selected uncorrectable counter region: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
UNCORR_COU - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
NTER_SELECT completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
ED_REGION - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-8 Reserved
Field Function
UNCORR_COU
NTER
Offset
Register Offset
RASDP_ERROR_INJ_C 274h
TRL_OFF
Function
Error injection control for the following features: - 1-bit or 2-bit injection - Continuous or fixed-number (n) injection modes -
Global enable/disable - Selectable location where injection occurs
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
ERROR_INJ_LOC
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 ERROR_INJ_T 0 ERRO
ERROR_INJ_COUNT
W YPE R_I...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-16 Error injection location. Selects where error injection takes place. You can cycle this field value
from 0 to 255 to access all locations according to the detailed report of check points at http://
ERROR_INJ_L www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
OC
15-8 Error injection count. - 0: errors are inserted in every TLP until you clear ERROR_INJ_EN. - 1: one errors
injected - 2: two errors injected - n: amount of errors injected
ERROR_INJ_C
OUNT
Field Function
7-6 Reserved
ERROR_INJ_T
YPE
3-1 Reserved
0 Error injection global enable. When set enables the error insertion logic.
ERROR_INJ_E
N
Offset
Register Offset
RASDP_CORR_ERROR 278h
_LOCATION_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R LOC_LAST_CORR_ERROR REG_LAST_CORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LOC_FIRST_CORR_ERROR REG_FIRST_CORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Fields
Field Function
Location/ID of the last corrected error within the region defined by REG_LAST_CORR_ERROR. You can
31-24
cycle this field value from 0 to 255 to access all counters according to the detailed report of check points
LOC_LAST_CO at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
RR_ERROR
Region of the last corrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for layer 3
23-20
Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path - 0x4: Region
REG_LAST_CO select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound completion
RR_ERROR composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path - 0x8:
Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select for
AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion buffer
path - 0xc: Reserved - 0xf: Reserved
19-16 Reserved
15-8 Location/ID of the first corrected error within the region defined by REG_FIRST_CORR_ERROR. You
can cycle this field value from 0 to 255 to access all counters according to the detailed report of check
LOC_FIRST_C points at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
ORR_ERROR
7-4Region of the first corrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for layer 3
Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path - 0x4: Region
REG_FIRST_C select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound completion
ORR_ERROR composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path - 0x8:
Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select for
AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion buffer
path - 0xc: Reserved - 0xf: Reserved
3-0 Reserved
Offset
Register Offset
RASDP_UNCORR_ERR 27Ch
OR_LOCATION_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R LOC_LAST_UNCORR_ERROR REG_LAST_UNCORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LOC_FIRST_UNCORR_ERROR REG_FIRST_UNCORR_ERROR 0
Reset 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Fields
Field Function
Location/ID of the last uncorrected error within the region defined by REG_LAST_UNCORR_ERROR.
31-24
You can cycle this field value from 0 to 255 to access all counters according to the detailed report of
LOC_LAST_UN check points at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
CORR_ERROR
Region of the last uncorrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for
23-20
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
REG_LAST_UN - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
CORR_ERROR completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
- 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
19-16 Reserved
15-8 Location/ID of the first uncorrected error within the region defined by REG_FIRST_UNCORR_ERROR.
You can cycle this field value from 0 to 255 to access all counters according to the detailed report of
LOC_FIRST_U check points at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/latest/doc/RASDP_CheckPoints.pdf
NCORR_ERRO
R
Region of the first uncorrected error: - 0x0: Region select for Adm Rx path - 0x1: Region select for
7-4
layer 3 Rx path - 0x2: Region select for layer 2 Rx path - 0x3: Region select for DMA inbound path
REG_FIRST_U - 0x4: Region select for AXI bridge inbound request path - 0x5: Region select for AXI bridge inbound
NCORR_ERRO completion composer path - 0x6: Region select for Adm Tx path - 0x7: Region select for layer 3 Tx path
R - 0x8: Region select for layer 2 Tx path - 0x9: Region select for DMA outbound path - 0xa: Region select
for AXI bridge outbound request path - 0xb: Region select for AXI bridge outbound master completion
buffer path - 0xc: Reserved - 0xf: Reserved
3-0 Reserved
Offset
Register Offset
RASDP_ERROR_MODE 280h
_EN_OFF
Function
The controller enters RASDP error mode (if ERROR_MODE_EN =1) upon detection of the first uncorrectable error. During this
mode: - Rx TLPs that are forwarded to your application are not guaranteed to be correct; you must discard them. For more
details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 AUTO_ ERRO
W LI... R_M...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-2 Reserved
1 Write '1' to enable the controller to bring the link down when the controller enters RASDP error mode.
Note: This register field is sticky.
AUTO_LINK_D
OWN_EN
0 Write '1' to enable the controller enter RASDP error mode when it detects an uncorrectable error. Note:
This register field is sticky.
ERROR_MODE
_EN
Offset
Register Offset
RASDP_ERROR_MODE 284h
_CLEAR_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ERRO
R 0
R_M...
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-1 Reserved
0 Write '1' to take the controller out of RASDP error mode. The controller will then report uncorrectable
errors (through AER internal error reporting) and also stop nullifying/discarding TLPs.
ERROR_MODE
_CLEAR
3.8.118 RAM Address where a corrected error (1-bit ECC) has been detected
(RASDP_RAM_ADDR_CORR_ERROR_OFF)
Offset
Register Offset
RASDP_RAM_ADDR_C 288h
ORR_ERROR_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R RAM_INDEX_CORR_ERROR 0 RAM_ADDR_CORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R RAM_ADDR_CORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 RAM index where a corrected error (1-bit ECC) has been detected.
RAM_INDEX_C
ORR_ERROR
27 Reserved
26-0 RAM Address where a corrected error (1-bit ECC) has been detected.
RAM_ADDR_C
ORR_ERROR
3.8.119 RAM Address where an uncorrected error (2-bit ECC) has been detected
(RASDP_RAM_ADDR_UNCORR_ERROR_OFF)
Offset
Register Offset
RASDP_RAM_ADDR_U 28Ch
NCORR_ERROR_OFF
Function
For more details, see RAS data protection (DP)†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R RAM_INDEX_UNCORR_ERROR 0 RAM_ADDR_UNCORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R RAM_ADDR_UNCORR_ERROR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 RAM index where an uncorrected error (2-bit ECC) has been detected.
RAM_INDEX_U
NCORR_ERRO
R
27 Reserved
26-0 RAM Address where an uncorrected error (2-bit ECC) has been detected.
RAM_ADDR_U
NCORR_ERRO
R
Offset
Register Offset
ACK_LATENCY_TIMER 700h
_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
REPLAY_TIME_LIMIT
W
Reset u1 u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ROUND_TRIP_LATENCY_TIME_LIMIT
W
Reset u2 u u u u u u u u u u u u u u u
1. When the chip resets, this field resets to 1846h. However, the field is not accessible until later, when the PCIe reset
finishes. At that moment, this field's value becomes C0h. Therefore, you can treat C0h as this register's usable reset value.
2. When the chip resets, this field resets to 817h. However, the field is not accessible until later, when the PCIe reset finishes.
At that moment, this field's value becomes 40h. Therefore, you can treat 40h as this register's usable reset value.
Fields
Field Function
Replay Timer Limit. The replay timer expires when it reaches this limit. The controller initiates a
31-16
replay upon reception of a NAK or when the replay timer expires. For more details, see "Transmit
REPLAY_TIME Replay". You can modify the effective timer limit with the TIMER_MOD_REPLAY_TIMER field of the
_LIMIT TIMER_CTRL_MAX_FUNC_NUM_OFF register. After reset, the controller updates the default according
to the Negotiated Link Width, Max_Payload_Size, and speed. The value is determined from Tables 3-4,
3-5, and 3-6 of the PCIe 3.0 specification. If there is a change in the payload size or link speed, the
controller will override any value that you have written to this register field, and reset the field back to the
specification-defined value. It will not change the value in the TIMER_MOD_REPLAY_TIMER field of the
TIMER_CTRL_MAX_FUNC_NUM_OFF register.
Ack Latency Timer Limit. The Ack latency timer expires when it reaches this limit. For more details, see
15-0
"Ack Scheduling". You can modify the effective timer limit with the TIMER_MOD_ACK_NAK field of the
ROUND_TRIP_ TIMER_CTRL_MAX_FUNC_NUM_OFF register. After reset, the controller updates the default according
LATENCY_TIM to the Negotiated Link Width, Max_Payload_Size, and speed. The value is determined from Tables 3-7,
E_LIMIT 3-8, and 3-9 of the PCIe 3.0 specification. The limit must reflect the round trip latency from requester to
completer. If there is a change in the payload size or link width, the controller will override any value that
you have written to this register field, and reset the field back to the specification-defined value. It will
not change the value in the TIMER_MOD_ACK_NAK field of the TIMER_CTRL_MAX_FUNC_NUM_OFF
register.
Offset
Register Offset
VENDOR_SPEC_DLLP_ 704h
OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
VENDOR_SPEC_DLLP
W
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
VENDOR_SPEC_DLLP
W
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Vendor Specific DLLP Register. Used to send a specific PCI Express DLLP. Your application
31-0
writes the 8-bit DLLP Type and 24-bits of Payload data into this register, then sets the field
VENDOR_SPE VENDOR_SPECIFIC_DLLP_REQ of PORT_LINK_CTRL_OFF to send the DLLP. - [7:0] = Type - [31:8]
C_DLLP = Payload (24 bits) The dllp type is in bits [7:0] while the remainder is the vendor defined payload. Note:
This register field is sticky.
Offset
Register Offset
PORT_FORCE_OFF 708h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 DO_D 0
LINK_STATE
W ESK...
Reset 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
FORC
R 0
E_EN FORCED_LTSSM LINK_NUM
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Fields
Field Function
31-24 Reserved
23Use the transitions from TS2 to Logical Idle Symbol, SKP OS to Logical Idle Symbol, and FTS Sequence
to SKP OS to do deskew for SRIS instead of using received SKP OS if DO_DESKEW_FOR_SRIS is set
DO_DESKEW_ to 1. Note: This register field is sticky.
FOR_SRIS
22 Reserved
21-16 Forced LTSSM State. The LTSSM state that the controller is forced to when you set the FORCE_EN
bit (Force Link). LTSSM state encoding is defined by the lts_state variable in workspace/src/Layer1/
LINK_STATE smlh_ltssm.v. Note: This register field is sticky.
15 Force Link. The controller supports a testing and debug capability to allow your software to force
the LTSSM state machine into a specific state, and to force the controller to transmit a specific Link
FORCE_EN Command. Asserting this bit triggers the following actions: - Forces the LTSSM to the state specified by
the Forced LTSSM State field. - Forces the controller to transmit the command specified by the Forced
Link Command field. This is a self-clearing register field. Reading from this register field always returns a
"0".
14-12 Reserved
Forced Link Command. The link command that the controller is forced to transmit when you set
11-8
FORCE_EN bit (Force Link). Link command encoding is defined by the ltssm_cmd variable in
FORCED_LTSS workspace/src/Layer1/smlh_ltssm.v. Note: This register field is sticky.
M
7-0 Link Number. Not used for endpoint. Note: This register field is sticky.
LINK_NUM
Offset
Register Offset
ACK_F_ASPM_CTRL_O 70Ch
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W R_A... CY NCY
Reset 0 0 0 1 1 0 1 1 1 0 1 1 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ACK_N_FTS ACK_FREQ
W
Reset 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
ASPM L1 Entry Control. - 1: Core enters ASPM L1 after a period in which it has been idle. - 0: Core
30
enters ASPM L1 only after idle period during which both receive and transmit are in L0s. Note: This
ENTER_ASPM register field is sticky.
L1 Entrance Latency. Value range is: - 000: 1 us - 001: 2 us - 010: 4 us - 011: 8 us - 100: 16 us - 101: 32
29-27
us - 110 or 111: 64 us Note: Programming this timer with a value greater that 32us has no effect unless
L1_ENTRANCE extended sync is used, or all of the credits are infinite. Note: This register field is sticky.
_LATENCY
26-24 L0s Entrance Latency. Values correspond to: - 000: 1 us - 001: 2 us - 010: 3 us - 011: 4 us - 100: 5 us -
101: 6 us - 110 or 111: 7 us Note: This register field is sticky.
L0S_ENTRANC
E_LATENCY
15-8 N_FTS. The number of Fast Training Sequence ordered sets to be transmitted when transitioning from
L0s to L0. The maximum number of FTS ordered-sets that a component can request is 255. The
ACK_N_FTS controller does not support a value of zero; a value of zero can cause the LTSSM to go into the recovery
state when exiting from L0s. Note: This register field is sticky.
7-0 Ack Frequency. The controller accumulates the number of pending ACKs specified here (up to 255)
before sending an ACK DLLP. - 0: Indicates that this Ack frequency control feature is turned off. The
ACK_FREQ controller schedules a low-priority ACK DLLP for every TLP that it receives. - 1-255: Indicates that the
Field Function
controller will schedule a high-priority ACK after receiving this number of TLPs. It might schedule the
ACK before receiving this number of TLPs, but never later. For a typical system, you do not have to
modify the default setting. For more details, see "ACK/NAK Scheduling". Note: This register field is
sticky.
Offset
Register Offset
PORT_LINK_CTRL_OFF 710h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
VEND
R 0 FAST_ LINK_ DLL_LI 0 RESE LOOP SCRA
LINK_RATE OR_...
LI... DI... N... T_A... BAC... MBL...
W W1C
Reset 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0
Fields
Field Function
31-28 Reserved
26 EXTENDED_SYNCH is an internally reserved field. Do not use. Note: This register field is sticky.
EXTENDED_S
YNCH
25 CORRUPT_LCRC_ENABLE is an internally reserved field. Do not use. Note: This register field is sticky.
Field Function
CORRUPT_LC
RC_ENABLE
24 BEACON_ENABLE is an internally reserved field. Do not use. Note: This register field is sticky.
BEACON_ENA
BLE
23-22 Reserved
15-12 Reserved
11-8 LINK_RATE is an internally reserved field. Do not use. Note: This register field is sticky.
LINK_RATE
7 Fast Link Mode. Sets all internal LTSSM millisecond timers to Fast Mode for speeding up simulation.
Forces the LTSSM training (link initialization) to use shorter time-outs and to link up faster. The
FAST_LINK_M default scaling factor can be changed using the DEFAULT_FAST_LINK_SCALING_FACTOR parameter
ODE or through the FAST_LINK_SCALING_FACTOR field in the TIMER_CTRL_MAX_FUNC_NUM_OFF
register. Fast Link Mode can also be activated by setting the diag_ctrl_bus[2] pin to '1'. For more details,
see the "Fast Link Simulation Mode" section in the "Integrating the Core with the PHY or Application RTL
or Verification IP" chapter of the User Guide. Note: This register field is sticky.
6 LINK_DISABLE is an internally reserved field. Do not use. Note: This register field is sticky.
LINK_DISABLE
5 DLL Link Enable. Enables link initialization. When DLL Link Enable =0, the controller does not transmit
InitFC DLLPs and does not establish a link. Note: This register field is sticky.
DLL_LINK_EN
Field Function
4 Reserved
3 Reset Assert. Triggers a recovery and forces the LTSSM to the hot reset state (downstream port only).
Note: This register field is sticky.
RESET_ASSER
T
2 Loopback Enable. Turns on loopback. For more details, see "Loopback". Note: This register field is
sticky.
LOOPBACK_E
NABLE
1 Scramble Disable. Turns off data scrambling. Note: This register field is sticky.
SCRAMBLE_DI
SABLE
0 Vendor Specific DLLP Request. When software writes a '1' to this bit, the controller transmits the
DLLP contained in the VENDOR_SPEC_DLLP field of VENDOR_SPEC_DLLP_OFF. Reading from this
VENDOR_SPE self-clearing register field always returns a '0'.
CIFIC_DLLP_R
EQ
Offset
Register Offset
LANE_SKEW_OFF 714h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
INSERT_LANE_SKEW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Disable Lane-to-Lane Deskew. Causes the controller to disable the internal Lane-to-Lane deskew logic.
Note: This register field is sticky.
DISABLE_LAN
E_TO_LANE_D
ESKEW
26 Selects Elasticity Buffer operating mode in Gen3 or Gen4 rate: 0: Nominal Half Full Buffer mode 1:
Nominal Empty Buffer Mode This register bit only affects Gen3 or Gen4 operating rate. For Gen1 or
GEN34_ELASTI Gen2 operating rate the Elasticity Buffer operating mode is always the Nominal Half Full Buffer mode.
C_BUFFER_M Note: This register field is sticky.
ODE
25 Ack/Nak Disable. Prevents the controller from sending ACK and NAK DLLPs. Note: This register field is
sticky.
ACK_NAK_DIS
ABLE
24 Flow Control Disable. Prevents the controller from sending FC DLLPs. Note: This register field is sticky.
FLOW_CTRL_D
ISABLE
23-0 INSERT_LANE_SKEW is an internally reserved field. Do not use. Note: This register field is sticky.
INSERT_LANE
_SKEW
Offset
Register Offset
TIMER_CTRL_MAX_FU 718h
NC_NUM_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 FAST_LINK_SC TIMER_MOD_REPLAY_
UPDATE_FREQ_TIMER TIMER_MOD_ACK_NAK
W ALI... TIMER
Reset 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TIMER_MOD_R 0
MAX_FUNC_NUM
W EPLA...
Reset 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
Fast Link Timer Scaling Factor. Sets the scaling factor of LTSSM timer when FAST_LINK_MODE field in
30-29
PORT_LINK_CTRL_OFF is set to '1'. - 0: Scaling Factor is 1024 (1ms is 1us) - 1: Scaling Factor is 256
FAST_LINK_SC (1ms is 4us) - 2: Scaling Factor is 64 (1ms is 16us) - 3: Scaling Factor is 16 (1ms is 64us) Default is set
ALING_FACTO by the hidden configuration parameter DEFAULT_FAST_LINK_SCALING_FACTOR which defaults to '0'.
R Note: This register field is sticky.
28-24 UPDATE_FREQ_TIMER is an internally reserved field. Do not use. Note: This register field is sticky.
UPDATE_FRE
Q_TIMER
Ack Latency Timer Modifier. Increases the timer value for the Ack latency timer in increments of 64
23-19
clock cycles. A value of "0" represents no modification to the timer value. For more details, see the
TIMER_MOD_A ROUND_TRIP_LATENCY_TIME_LIMIT field of the ACK_LATENCY_TIMER_OFF register. Note: This
CK_NAK register field is sticky.
13-8 Reserved
7-0 Maximum function number that can be used in a request. Configuration requests targeted at function
numbers above this value are returned with UR (unsupported request). Note: This register field is sticky.
MAX_FUNC_N
UM
Offset
Register Offset
SYMBOL_TIMER_FILTE 71Ch
R_1_OFF
Function
Modifies the RADM filtering and error handling rules. For more details, see the following table and Receive filtering†. In each
case, '0' applies the associated filtering rule and '1' masks the associated filtering rule.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MASK_RADM_1
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DISAB
EIDLE_TIMER SKP_INT_VAL
W LE...
Reset 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0
Fields
Field Function
DISABLE_FC_
WD_TIMER
14-11 EIDLE_TIMER is an internally reserved field. Do not use. Note: This register field is sticky.
EIDLE_TIMER
10-0 SKP Interval Value. The number of symbol times to wait between transmitting SKP ordered sets. Note
that the controller actually waits the number of symbol times in this register plus 1 between transmitting
SKP_INT_VAL SKP ordered sets. Your application must program this register accordingly. For example, if 1536 were
programmed into this register (in a 250 MHz controller), then the controller actually transmits SKP
ordered sets once every 1537 symbol times. The value programmed to this register is actually clock
ticks and not symbol times. In a 125 MHz controller, programming the value programmed to this register
Field Function
should be scaled down by a factor of 2 (because one clock tick = two symbol times in this case). Note:
This value is not used at Gen3 speed; the skip interval is hardcoded to 370 blocks. Note: This register
field is sticky.
Offset
Register Offset
FILTER_MASK_2_OFF 720h
Function
Modifies the RADM filtering and error handling rules. For more details, see Receive filtering†. In each case, '0' applies the
associated filtering rule and '1' masks the associated filtering rule.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MASK_RADM_2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MASK_RADM_2
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
AMBA_MUL_OB_DECO 724h
MP_NP_SUB_REQ_CTR
L_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 OB_R
W D_S...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-1 Reserved
Offset
Register Offset
PL_DEBUG0_OFF 728h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R DEB_REG_0
Reset 0 0 0 0 0 0 0 0 1 0 1 1 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DEB_REG_0
Reset 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
PL_DEBUG1_OFF 72Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R DEB_REG_1
Reset 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DEB_REG_1
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
TX_P_FC_CREDIT_STA 730h
TUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 TX_P_HEADER_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TX_P_HEADER_FC_CREDIT TX_P_DATA_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-20 Reserved
Transmit Posted Header FC Credits. The posted Header credits advertised by the receiver at the
19-12
other end of the link, updated with each UpdateFC DLLP. Default value depends on the number
TX_P_HEADER of advertised credits for header and data [12'b0, xtlh_xadm_ph_cdts, xtlh_xadm_pd_cdts]; When the
_FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Transmit Posted Data FC Credits. The posted Data credits advertised by the receiver at the other end of
11-0
the link, updated with each UpdateFC DLLP. Default value depends on the number of advertised credits
TX_P_DATA_F for header and data [12'b0, xtlh_xadm_ph_cdts, xtlh_xadm_pd_cdts]; When the number of advertised
C_CREDIT completion credits (both header and data) are infinite, then the default would be [12'b0, 8'hFF, 12'hFFF].
Offset
Register Offset
TX_NP_FC_CREDIT_ST 734h
ATUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 TX_NP_HEADER_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TX_NP_HEADER_FC_CREDIT TX_NP_DATA_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-20 Reserved
19-12 Transmit Non-Posted Header FC Credits. The non-posted Header credits advertised by the receiver at
the other end of the link, updated with each UpdateFC DLLP. Default value depends on the number
Field Function
TX_NP_HEADE of advertised credits for header and data [12'b0, xtlh_xadm_nph_cdts, xtlh_xadm_npd_cdts]; When the
R_FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Transmit Non-Posted Data FC Credits. The non-posted Data credits advertised by the receiver at the
11-0
other end of the link, updated with each UpdateFC DLLP. Default value depends on the number of
TX_NP_DATA_ advertised credits for header and data [12'b0, xtlh_xadm_nph_cdts, xtlh_xadm_npd_cdts]; When the
FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Offset
Register Offset
TX_CPL_FC_CREDIT_S 738h
TATUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 TX_CPL_HEADER_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TX_CPL_HEADER_FC_CREDIT TX_CPL_DATA_FC_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-20 Reserved
Transmit Completion Header FC Credits. The Completion Header credits advertised by the receiver at
19-12
the other end of the link, updated with each UpdateFC DLLP. Default value depends on the number
TX_CPL_HEAD of advertised credits for header and data [12'b0, xtlh_xadm_cplh_cdts, xtlh_xadm_cpld_cdts]; When the
ER_FC_CREDI number of advertised completion credits (both header and data) are infinite, then the default would be
T [12'b0, 8'hFF, 12'hFFF].
Field Function
Transmit Completion Data FC Credits. The Completion Data credits advertised by the receiver at the
11-0
other end of the link, updated with each UpdateFC DLLP. Default value depends on the number of
TX_CPL_DATA advertised credits for header and data [12'b0, xtlh_xadm_cplh_cdts, xtlh_xadm_cpld_cdts]; When the
_FC_CREDIT number of advertised completion credits (both header and data) are infinite, then the default would be
[12'b0, 8'hFF, 12'hFFF].
Offset
Register Offset
QUEUE_STATUS_OFF 73Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R TIMER 0
TIMER_MOD_FLOW_CONTROL
W _M...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
FC Latency Timer Override Enable. When this bit is set, the value from the "FC Latency Timer Override
31
Value" field in this register will override the FC latency timer value that the controller calculates according
TIMER_MOD_F to the PCIe specification. Note: This register field is sticky.
LOW_CONTRO
L_EN
30-29 Reserved
FC Latency Timer Override Value. When you set the "FC Latency Timer Override Enable" in this register,
28-16
the value in this field will override the FC latency timer value that the controller calculates according to
TIMER_MOD_F the PCIe specification. For more details, see "Flow Control". Note: This register field is sticky.
LOW_CONTRO
L
Field Function
15 Receive Serialization Read Error. Indicates the serialization queue has attempted to read an incorrectly
formatted TLP.
RX_SERIALIZA
TION_Q_READ
_ERR
14 Receive Serialization Queue Write Error. Indicates insufficient buffer space available to write to the
serialization queue.
RX_SERIALIZA
TION_Q_WRIT
E_ERR
13 Receive Serialization Queue Not Empty. Indicates there is data in the serialization queue.
RX_SERIALIZA
TION_Q_NON_
EMPTY
12-4 Reserved
3 Receive Credit Queue Overflow. Indicates insufficient buffer space available to write to the P/NP/CPL
credit queue.
RX_QUEUE_O
VERFLOW
2 Receive Credit Queue Not Empty. Indicates there is data in one or more of the receive buffers.
RX_QUEUE_N
ON_EMPTY
1 Transmit Retry Buffer Not Empty. Indicates that there is data in the transmit retry buffer.
TX_RETRY_BU
FFER_NE
0 Received TLP FC Credits Not Returned. Indicates that the controller has received a TLP but has not yet
sent an UpdateFC DLLP indicating that the credits for that TLP have been restored by the receiver at the
RX_TLP_FC_C other end of the link.
REDIT_NON_R
ETURN
Offset
Register Offset
VC_TX_ARBI_1_OFF 740h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R WRR_WEIGHT_VC_3 WRR_WEIGHT_VC_2
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R WRR_WEIGHT_VC_1 WRR_WEIGHT_VC_0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Fields
Field Function
31-24 WRR Weight for VC3. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_3
23-16 WRR Weight for VC2. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_2
15-8 WRR Weight for VC1. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_1
7-0 WRR Weight for VC0. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_0
Offset
Register Offset
VC_TX_ARBI_2_OFF 744h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R WRR_WEIGHT_VC_7 WRR_WEIGHT_VC_6
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R WRR_WEIGHT_VC_5 WRR_WEIGHT_VC_4
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 WRR Weight for VC7. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_7
23-16 WRR Weight for VC6. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_6
15-8 WRR Weight for VC5. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_5
7-0 WRR Weight for VC4. Note: The access attributes of this field are as follows: - Wire: No access.
WRR_WEIGHT
_VC_4
Offset
Register Offset
VC0_P_RX_Q_CTRL_O 748h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 1 0 0 0 1 0 1 0 0 1 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VC0_P_HEADER_CREDIT VC0_P_DATA_CREDIT
Reset 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0
Fields
Field Function
31 VC Ordering for Receive Queues. Determines the VC ordering rule for the receive queues, used only in
the segmented-buffer configuration: - 1: Strict ordering, higher numbered VCs have higher priority - 0:
VC_ORDERIN Round robin Note: This register field is sticky.
G_RX_Q
TLP Type Ordering for VC0. Determines the TLP type ordering rule for VC0 receive queues, used only in
30
the segmented-buffer configuration: - 1: PCIe ordering rules (recommended) - 0: Strict ordering: posted,
TLP_TYPE_OR completion, then non-posted Note: This register field is sticky.
DERING_VC0
RESERVED5
27-26 VC0 Scale Posted Data Credites. Note: This register field is sticky.
VC0_P_DATA_
SCALE
25-24 VC0 Scale Posted Header Credites. Note: This register field is sticky.
VC0_P_HDR_S
CALE
VC0_P_TLP_Q_
MODE
RESERVED4
VC0 Posted Header Credits. The number of initial posted header credits for VC0, used only in the
19-12
segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: No
VC0_P_HEADE access. Note: This register field is sticky.
R_CREDIT
Field Function
VC0 Posted Data Credits. The number of initial posted data credits for VC0, used only in the segmented-
11-0
buffer configuration. Note: The access attributes of this field are as follows: - Wire: No access. Note: This
VC0_P_DATA_ register field is sticky.
CREDIT
Offset
Register Offset
VC0_NP_RX_Q_CTRL_ 74Ch
OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 1 0 1 0 0 1 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VC0_NP_HEADER_CREDIT VC0_NP_DATA_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0
Fields
Field Function
RESERVED7
27-26 VC0 Scale Non-Posted Data Credites. Note: This register field is sticky.
VC0_NP_DATA
_SCALE
25-24 VC0 Scale Non-Posted Header Credites. Note: This register field is sticky.
VC0_NP_HDR_
SCALE
Field Function
VC0_NP_TLP_
Q_MODE
RESERVED6
VC0 Non-Posted Header Credits. The number of initial non-posted header credits for VC0, used only in
19-12
the segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: No
VC0_NP_HEAD access. Note: This register field is sticky.
ER_CREDIT
VC0 Non-Posted Data Credits. The number of initial non-posted data credits for VC0, used only in
11-0
the segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: No
VC0_NP_DATA access. Note: This register field is sticky.
_CREDIT
Offset
Register Offset
VC0_CPL_RX_Q_CTRL_ 750h
OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VC0_CPL_HEADER_CREDIT VC0_CPL_DATA_CREDIT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
RESERVED9
Field Function
27-26 VC0 Scale CPL Data Credites. Note: This register field is sticky.
VC0_CPL_DAT
A_SCALE
25-24 VC0 Scale CPL Header Credites. Note: This register field is sticky.
VC0_CPL_HDR
_SCALE
VC0_CPL_TLP_
Q_MODE
RESERVED8
VC0 Completion Header Credits. The number of initial Completion header credits for VC0, used only in
19-12
the segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: No
VC0_CPL_HEA access. Note: This register field is sticky.
DER_CREDIT
VC0 Completion Data Credits. The number of initial Completion data credits for VC0, used only in
11-0
the segmented-buffer configuration. Note: The access attributes of this field are as follows: - Wire: No
VC0_CPL_DAT access. Note: This register field is sticky.
A_CREDIT
Offset
Register Offset
GEN2_CTRL_OFF 80Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PRE_DET_LANE NUM_OF_LANES FAST_TRAINING_SEQ
W
Reset 0 0 0 0 0 0 1 0 1 0 1 1 0 1 0 0
Fields
Field Function
31-22 Reserved
21 Electrical Idle Inference Mode at Gen1 Rate. Programmable mode to determine inferred electrical idle
(EI) in Recovery.Speed or Loopback.Active (as slave) state at Gen1 speed by looking for a "1" value
GEN1_EI_INFE on RxElecIdle instead of looking for a "0" on RxValid. If the PHY fails to deassert the RxValid signal
RENCE in Recovery.Speed or Loopback.Active (because of corrupted EIOS for example), then EI cannot be
inferred successfully in the controller by just detecting the condition RxValid=0. - 0: Use RxElecIdle
signal to infer Electrical Idle - 1: Use RxValid signal to infer Electrical Idle Note: This register field is
sticky.
20 Used to set the de-emphasis level for upstream ports. This bit selects the level of de-emphasis the link
operates at. - 0: -6 dB - 1: -3.5 dB Note: The access attributes of this field are as follows: - Wire: No
SEL_DEEMPH access. Note: This register field is sticky.
ASIS
19 Config Tx Compliance Receive Bit. When set to 1, signals LTSSM to transmit TS ordered sets with the
compliance receive bit assert (equal to "1"). Note: The access attributes of this field are as follows: -
CONFIG_TX_C Wire: No access. Note: This register field is sticky.
OMP_RX
18 Config PHY Tx Swing. Controls the PHY transmitter voltage swing level. The controller drives the
mac_phy_txswing output from this register bit field. - 0: Full Swing - 1: Low Swing Note: The access
CONFIG_PHY_ attributes of this field are as follows: - Wire: No access. Note: This register field is sticky.
TX_CHANGE
17 Directed Speed Change. Writing "1" to this field instructs the LTSSM to initiate a speed change
to Gen2 or Gen3 after the link is initialized at Gen1 speed. When the speed change occurs, the
DIRECT_SPEE controller will clear the contents of this field; and a read to this field by your software will return
D_CHANGE a "0". To manually initiate the speed change: - Write to LINK_CONTROL2_LINK_STATUS2_REG .
PCIE_CAP_TARGET_LINK_SPEED in the local device - Deassert this field - Assert this field If you set
the default of this field using the DEFAULT_GEN2_SPEED_CHANGE configuration parameter to "1",
then the speed change is initiated automatically after link up, and the controller clears the contents
of this field. If you want to prevent this automatic speed change, then write a lower speed value to
the Target Link Speed field of the Link Control 2 register (LINK_CONTROL2_LINK_STATUS2_OFF .
PCIE_CAP_TARGET_LINK_SPEED) through the DBI before link up. Note: The access attributes of this
field are as follows: - Wire: No access.
Field Function
This field is used to restrict the receiver detect procedure to a particular lane when the default detect and
polling procedure performed on all lanes cannot be successful. A notable example of when it is useful to
program this field to a value different from the default, is when a lane is asymmetrically broken, that is, it is
detected in Detect LTSSM state but it cannot exit Electrical Idle in Polling LTSSM state.
The access attributes of this field are as follows:
- Wire: R/W (sticky)
This field is sticky.
000b - Connect logical Lane0 to physical lane 0 or 1, depending on which lane is detected
001b - Connect logical Lane0 to physical lane 1
010b - Connect logical Lane0 to physical lane 3
011b - Connect logical Lane0 to physical lane 7
100b - Connect logical Lane0 to physical lane 15
12-8 Predetermined Number of Lanes. Defines the number of lanes which are connected and not bad. Used
to limit the effective link width to ignore 'broken" or "unused" lanes that detect a receiver. Indicates the
NUM_OF_LAN number of lanes to check for exit from Electrical Idle in Polling.Active and L2.Idle. It is possible that the
ES LTSSM might detect a receiver on a bad or broken lane during the Detect Substate. However, it is also
possible that such a lane might also fail to exit Electrical Idle and therefore prevent a valid link from being
configured. This value is referred to as the "Predetermined Number of Lanes" in section 4.2.6.2.1 of the
PCI Express Base 3.0 Specification, revision 1.0. Encoding is as follows: - 0x01: 1 lane - 0x02: 2 lanes
- 0x03: 3 lanes - .. When you have unused lanes in your system, then you must change the value in
this register to reflect the number of lanes. You must also change the value in the "Link Mode Enable"
field of PORT_LINK_CTRL_OFF. The value in this register is normally the same as the encoded value in
PORT_LINK_CTRL_OFF. If you find that one of your used lanes is bad then you must reduce the value
in this register. For more information, see "How to Tie Off Unused Lanes." For information on upsizing
and downsizing the link width, see "Link Establishment." Note: The access attributes of this field are as
follows: - Wire: No access. Note: This register field is sticky.
7-0 Sets the Number of Fast Training Sequences (N_FTS) that the controller advertises as its N_FTS during
Gen2 or Gen3 link training. This value is used to inform the link partner about the PHY's ability to recover
FAST_TRAININ synchronization after a low power state. The number should be provided by the PHY vendor. Do not
G_SEQ set N_FTS to zero; doing so can cause the LTSSM to go into the recovery state when exiting from L0s.
Note: The access attributes of this field are as follows: - Wire: No access. Note: This register field is
sticky.
Offset
Register Offset
PHY_STATUS_OFF 810h
Function
Memory mapped register from phy_cfg_status GPIO input pins.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PHY_STATUS
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PHY_STATUS
Reset u u u u u u u u u u u u u u u u
Fields
Field Function
Offset
Register Offset
PHY_CONTROL_OFF 814h
Function
Memory mapped register to cfg_phy_control GPIO output pins.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PHY_CONTROL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PHY_CONTROL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
PHY Control. Data sent directly to the cfg_phy_control bus. These is a GPIO register driving the values
31-0
on the static cfg_phy_control output signals. The usage is left completely to the user and does not
PHY_CONTRO in any way influence controller functionality. You can use it for any static sideband control signalling
L requirements that you have for your PHY. Note: This register field is sticky.
Offset
Register Offset
TRGT_MAP_CTRL_OFF 81Ch
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R TARGET_MAP_RESERVED_21_31
TARGET_MAP_INDEX
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
TARGET_MAP_RESER
R 0 TARG
VED_13_... TARGET_MAP_PF
ET_...
W
Reset 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1
Fields
Field Function
31-21 Reserved Note: The access attributes of this field are as follows: - Wire: No access.
TARGET_MAP_
RESERVED_21
_31
20-16 The number of the PF Function on which the Target Values are set. This register does not respect the
Byte Enable setting. any write will affect all register bits.
TARGET_MAP_
INDEX
15-13 Reserved Note: The access attributes of this field are as follows: - Wire: No access.
TARGET_MAP_
RESERVED_13
_15
Field Function
12-7 Reserved
6 Target Value for the ROM page of the PF Function selected by the index number. This register does not
respect the Byte Enable setting. any write will affect all register bits.
TARGET_MAP_
ROM
5-0 Target Values for each BAR on the PF Function selected by the index number. This register does not
respect the Byte Enable setting. any write will affect all register bits.
TARGET_MAP_
PF
Offset
Register Offset
MSI_CTRL_ADDR_OFF 820h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Integrated MSI Reception Module Address. System specified address for MSI memory write transaction
31-0
termination. Within the AXI Bridge, every received Memory Write request is examined to see if it targets
MSI_CTRL_AD the MSI Address that has been specified in this register; and also to see if it satisfies the definition of an
DR MSI interrupt request. When these conditions are satisfied the Memory Write request is marked as an
MSI request. Note: This register field is sticky.
Offset
Register Offset
MSI_CTRL_UPPER_AD 824h
DR_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_UPPER_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_UPPER_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Integrated MSI Reception Module Upper Address. System specified upper address for MSI memory write
31-0
transaction termination. Allows functions to support a 64-bit MSI address. Note: This register field is
MSI_CTRL_UP sticky.
PER_ADDR
Offset
Register Offset
MSI_CTRL_INT_0_EN_O 828h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_0_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_0_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #0 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_0_EN
Offset
Register Offset
MSI_CTRL_INT_0_MAS 82Ch
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_0_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_0_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #0 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_0_MASK
Offset
Register Offset
MSI_CTRL_INT_0_STAT 830h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_0_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_0_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #0 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_0_STATUS
Offset
Register Offset
MSI_CTRL_INT_1_EN_O 834h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_1_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_1_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #1 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_1_EN
Offset
Register Offset
MSI_CTRL_INT_1_MAS 838h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_1_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_1_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #1 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_1_MASK
Offset
Register Offset
MSI_CTRL_INT_1_STAT 83Ch
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_1_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_1_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #1 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_1_STATUS
Offset
Register Offset
MSI_CTRL_INT_2_EN_O 840h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_2_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_2_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #2 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_2_EN
Offset
Register Offset
MSI_CTRL_INT_2_MAS 844h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_2_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_2_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #2 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_2_MASK
Offset
Register Offset
MSI_CTRL_INT_2_STAT 848h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_2_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_2_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #2 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_2_STATUS
Offset
Register Offset
MSI_CTRL_INT_3_EN_O 84Ch
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_3_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_3_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #3 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_3_EN
Offset
Register Offset
MSI_CTRL_INT_3_MAS 850h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_3_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_3_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #3 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_3_MASK
Offset
Register Offset
MSI_CTRL_INT_3_STAT 854h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_3_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_3_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #3 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_3_STATUS
Offset
Register Offset
MSI_CTRL_INT_4_EN_O 858h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_4_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_4_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #4 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_4_EN
Offset
Register Offset
MSI_CTRL_INT_4_MAS 85Ch
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_4_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_4_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #4 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_4_MASK
Offset
Register Offset
MSI_CTRL_INT_4_STAT 860h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_4_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_4_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #4 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_4_STATUS
Offset
Register Offset
MSI_CTRL_INT_5_EN_O 864h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_5_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_5_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #5 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_5_EN
Offset
Register Offset
MSI_CTRL_INT_5_MAS 868h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_5_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_5_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #5 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_5_MASK
Offset
Register Offset
MSI_CTRL_INT_5_STAT 86Ch
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_5_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_5_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #5 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_5_STATUS
Offset
Register Offset
MSI_CTRL_INT_6_EN_O 870h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_6_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_6_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #6 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_6_EN
Offset
Register Offset
MSI_CTRL_INT_6_MAS 874h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_6_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_6_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #6 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_6_MASK
Offset
Register Offset
MSI_CTRL_INT_6_STAT 878h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_6_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_6_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #6 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_6_STATUS
Offset
Register Offset
MSI_CTRL_INT_7_EN_O 87Ch
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_7_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_7_EN
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #7 Enable. Specifies which interrupts are enabled. When an MSI is received from a
31-0
disabled interrupt, no status bit gets set in MSI controller interrupt status register. Each bit corresponds
MSI_CTRL_INT to a single MSI Interrupt Vector. Note: This register field is sticky.
_7_EN
Offset
Register Offset
MSI_CTRL_INT_7_MAS 880h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_CTRL_INT_7_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_CTRL_INT_7_MASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #7 Mask. Allows enabled interrupts to be masked. When an MSI is received for a masked
31-0
interrupt, the corresponding status bit gets set in the interrupt status register but the msi_ctrl_int output is
MSI_CTRL_INT not set HIGH. Each bit corresponds to a single MSI Interrupt Vector. Note: This register field is sticky.
_7_MASK
Offset
Register Offset
MSI_CTRL_INT_7_STAT 884h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R MSI_CTRL_INT_7_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MSI_CTRL_INT_7_STATUS
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSI Interrupt #7 Status. When an MSI is detected for EP#i, one bit in this register is set. The decoding
31-0
of the data payload of the MSI Memory Write request determines which bit gets set. A status is bit is
MSI_CTRL_INT cleared by writing a 1 to the bit. Each bit corresponds to a single MSI Interrupt Vector.
_7_STATUS
Offset
Register Offset
MSI_GPIO_IO_OFF 888h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSI_GPIO_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSI_GPIO_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 MSI GPIO Register. The contents of this register drives the top-level GPIO msi_ctrl_io[31:0] Note: This
register field is sticky.
MSI_GPIO_RE
G
Offset
Register Offset
CLOCK_GATING_CTRL 88Ch
_OFF
Function
Using this register you can disable the RADM clock gating feature. The DWC_pcie_clk_rst.v modules uses the en_radm_clk_g
output to gate core_clk and create the radm_clk_g clock input. The controller de-asserts the en_radm_clk_g output when there
is no Rx traffic, Rx queues and pre/post-queue pipelines are empty, RADM completion LUT is empty, and there are no FLR
actions pending. You must set the RADM_CLK_GATING_EN field to enable this functionality; otherwise the en_radm_clk_g
output will always be set to '1'.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 RADM
W _CL...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-1 Reserved
RADM_CLK_G
ATING_EN
Offset
Register Offset
GEN3_RELATED_OFF 890h
Function
There is no Gen3-specific N_FTS field. The N_FTS field in the "Link Width and Speed Change Control Register" is used for
both Gen2 and Gen3 speed modes. There is no Gen3-specific "Directed Speed Change" field. The "Directed Speed Change"
field in the "Link Width and Speed Change Control Register" is used to change to Gen2 or Gen3 speed. A speed change to
Gen3 occurs if (1) the "Directed Speed Change" field is set to "1" and (2) the "Target Link Speed" field in the Link Control 2
Register is set to Gen3. Gen3 support is advertised by both sides of the link during link training.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-24 Reserved
22-21 Reserved
20-19 Reserved
18 DC Balance Disable
GEN3_DC_BAL Disable DC Balance feature.
ANCE_DISABL
This field is sticky.
E
16 Equalization Disable
GEN3_EQUALI Disable equalization feature.
ZATION_DISAB
This field is sticky.
LE
15-14 Reserved
Field Function
13 When set to '1', the controller as Gen3 EQ master asserts RxEqEval to instruct the PHY to do Rx adaptation
and evaluation after a 500ns timeout from a new preset request.
RXEQ_RGRDL
ESS_RXTS The access attributes of this field are as follows:
- Wire: No access.
This field is sticky.
0b - mac_phy_rxeqeval asserts after 1us and 2 TS1 received from remote partner.
1b - mac_phy_rxeqeval asserts after 500ns regardless of TS's received or not.
Field Function
DISABLE_SCR The Gen3 and Gen4 scrambler/descrambler within the controller needs to be disabled when the scrambling
AMBLER_GEN function is implemented outside of the controller (for example within the PHY).
_3
This field is sticky.
7-1 Reserved
Offset
Register Offset
GEN3_EQ_CONTROL_ 8A8h
OFF
Function
Controls equalization for Phase2 in an upstream port (USP), or Phase3 in a downstream port (DSP).
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 0 0 1 1 1 1 1 0 1 1 1 0 0 0 1
Fields
Field Function
31-27 Reserved
Request controller to send back-to-back EIEOS in Recovery.RcvrLock state until presets to coefficients
26
mapping is complete. - 0: Do not request - 1: request Note: Gen3 and Gen4 share the same register bit
GEN3_REQ_SE and have the same feature. Note: This register field is sticky.
ND_CONSEC_
EIEOS_FOR_P
SET_MAP
25 GEN3_EQ_PSET_REQ_AS_COEF is an internally reserved field. Do not use. Note: This register field is
sticky.
GEN3_EQ_PSE
T_REQ_AS_CO
EF
Preset Request Vector. Requesting of Presets during the initial part of the EQ Master Phase. Encoding
23-8
scheme is as follows: Bit [15:0] =0x0: No preset is requested and evaluated in EQ Master Phase. Bit
GEN3_EQ_PSE [i] =1: "Preset=i" is requested and evaluated in EQ Master Phase. - 0000000000000000: No preset be
T_REQ_VEC requested and evaluated in EQ Master Phase - 000000xxxxxxxxx1: Preset 0 is requested and evaluated
in EQ Master Phase - 000000xxxxxxxx1x: Preset 1 is requested and evaluated in EQ Master Phase
- 000000xxxxxxx1xx: Preset 2 is requested and evaluated in EQ Master Phase - 000000xxxxxx1xxx:
Preset 3 is requested and evaluated in EQ Master Phase - 000000xxxxx1xxxx: Preset 4 is requested
and evaluated in EQ Master Phase - 000000xxxx1xxxxx: Preset 5 is requested and evaluated in
EQ Master Phase - 000000xxx1xxxxxx: Preset 6 is requested and evaluated in EQ Master Phase -
000000xx1xxxxxxx: Preset 7 is requested and evaluated in EQ Master Phase - 000000x1xxxxxxxx:
Field Function
7 Reserved
6 Support EQ redo and lower rate change: - 0: not support - 1: support Note: Gen3 and Gen4 share the
same register bit and have the same feature. Note: This register field is sticky.
GEN3_LOWER
_RATE_EQ_RE
DO_ENABLE
Field Function
• Equalization Phase 3 Successful status bit is set in the "Link Status Register 2" when
GEN3_EQ_PHASE23_EXIT_MODE = 1
• Equalization Phase 3 Complete status bit is set in the "Link Status Register 2"
GEN3_EQ_PHASE23_EXIT_MODE = 1 affects Direction Change feed back mode. EQ requests for Figure
Of Merit mode complete before 24 ms timeout. Please see GEN3_EQ_PSET_REQ_VEC Register for more.
This field is sticky.
Offset
Register Offset
GEN3_EQ_FB_MODE_D 8ACh
IR_CHANGE_OFF
Function
Equalization controls to be used in Phase2 (USP) or Phase 3 (DSP), when you set the Feedback Mode in "Gen3 EQ Control
Register" to "Direction Change." These fields allow control over the initial starting point for the search of optimal coefficient
settings, and allow control over the criteria used to determine when the optimal settings have been achieved. The values are
applied to all the lanes.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 GEN3_EQ_FM
W DC_MA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R GEN3_EQ_FM GEN3_EQ_FMDC_MAX_PRE_CU
GEN3_EQ_FMDC_N_EVALS GEN3_EQ_FMDC_T_MIN_PHASE23
W DC_MA... SROR_DEL...
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Fields
Field Function
31-18 Reserved
Offset
Register Offset
ORDER_RULE_CTRL_O 8B4h
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CPL_PASS_P NP_PASS_P
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
15-8 Completion Passing Posted Ordering Rule Control. Determines if CPL can pass halted P queue. - 0:
CPL can not pass P (recommended) - 1: CPL can pass P
CPL_PASS_P
7-0 Non-Posted Passing Posted Ordering Rule Control. Determines if NP can pass halted P queue. - 0 : NP
can not pass P (recommended). - 1 : NP can pass P
NP_PASS_P
Offset
Register Offset
PIPE_LOOPBACK_CON 8B8h
TROL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PIPE_ 0
RXSTATUS_LANE
W LO...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LPBK_RXVALID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Fields
Field Function
PIPE_LOOPBA
CK
30-22 Reserved
21-16 RXSTATUS_LANE is an internally reserved field. Do not use. Note: This register field is sticky.
RXSTATUS_LA
NE
15-0 LPBK_RXVALID is an internally reserved field. Do not use. Note: This register field is sticky.
LPBK_RXVALI
D
Offset
Register Offset
MISC_CONTROL_1_OF 8BCh
F
Function
Register Fields
Table 14. Other registers and fields affected when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1 (continued)
Register Fields
PCIe Extended Capability ID, Capability Version And Next Capability All
Offset (RASDP_EXT_CAP_HDR_OFF)
Table 14. Other registers and fields affected when MISC_CONTROL_1_OFF[DBI_RO_WR_EN] = 1 (continued)
Register Fields
• PCI_MSI_EXT_DATA_CAP
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
5 When ARI is enabled, this field enables use of the device ID. Note: This register field is sticky.
ARI_DEVICE_N
UMBER
4 Reserved
3 Enables Simplified Replay Timer (Gen4). Simplified Replay Timer Values are: - A value from 24,000 to
31,000 Symbol Times when Extended Synch is 0b. - A value from 80,000 to 100,000 Symbol Times
SIMPLIFIED_R when Extended Synch is 1b. Must not be changed while link is in use. Note: This register field is sticky.
EPLAY_TIMER
This field only applies to request TLPs (with UR filtering status) that you have chosen to forward to the
2
application (when you set DEFAULT_TARGET in this register). - When you set this field to '1', the core
UR_CA_MASK_ suppresses error logging, Error Message generation, and CPL generation (for non-posted requests). You
4_TRGT1 should set this if you have set the Default Target port logic register to '1'. Note: This register field is
sticky.
Field Function
1Default target a received IO or MEM request with UR/CA/CRS is sent to by the controller. - 0: The
controller drops all incoming I/O or MEM requests (after corresponding error reporting). A completion
DEFAULT_TAR with UR status will be generated for non-posted requests. - 1: The controller forwards all incoming
GET I/O or MEM requests with UR/CA/CRS status to your application Default value is DEFAULT_TARGET
configuration parameter. Note: This register field is sticky.
Offset
Register Offset
MULTI_LANE_CONTRO 8C0h
L_OFF
Function
Used when upsizing or downsizing the link width through Configuration state without bringing the link down. For more details,
see Link establishment†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 UPCO DIREC
TARGET_LINK_WIDTH
W NFI... T_...
Reset 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
Field Function
7 Upconfigure Support. The controller sends this value as the Link Upconfigure Capability in TS2 Ordered
Sets in Configuration.Complete state. Note: This register field is sticky.
UPCONFIGUR
E_SUPPORT
6 Directed Link Width Change. The controller always moves to Configuration state through
Recovery state when this bit is set to '1'. - If the upconfigure_capable variable is '1' and
DIRECT_LINK_ the PCIE_CAP_HW_AUTO_WIDTH_DISABLE bit in LINK_CONTROL_LINK_STATUS_REG is '0', the
WIDTH_CHAN controller starts upconfigure or autonomous width downsizing (to the TARGET_LINK_WIDTH value) in
GE the Configuration state. - If TARGET_LINK_WIDTH value is 0x0, the controller does not start upconfigure
or autonomous width downsizing in the Configuration state. The controller self-clears this field when the
controller accepts this request.
Target Link Width. Values correspond to: - 6'b000000: Core does not start upconfigure or autonomous
5-0
width downsizing in the Configuration state. - 6'b000001: x1 - 6'b000010: x2 - 6'b000100: x4 -
TARGET_LINK 6'b001000: x8 - 6'b010000: x16 - 6'b100000: x32
_WIDTH
Offset
Register Offset
PHY_INTEROP_CTRL_ 8C4h
OFF
Function
This register is reserved for internal use. You should not write to this register and change the default unless specifically
instructed by Synopsys support.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
L1_NO
R 0 L1_CL 0 0
WA... RXSTANDBY_CONTROL
K_...
W
Reset 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0
Fields
Field Function
31-11 Reserved
10 L1 Clock control bit. - 1: Controller does not request aux_clk switch and core_clk gating in L1. - 0:
Controller requests aux_clk switch and core_clk gating in L1. Note: This register field is sticky.
L1_CLK_SEL
9 L1 entry control bit. - 1: Core does not wait for PHY to acknowledge transition to P1 before entering
L1. - 0: Core waits for the PHY to acknowledge transition to P1 before entering L1. Note: The access
L1_NOWAIT_P attributes of this field are as follows: - Wire: No access. Note: This register field is sticky.
1
8 Reserved
7 Reserved
6-0 Rxstandby Control. Bits 0..5 determine if the controller asserts the RxStandby signal
(mac_phy_rxstandby) in the indicated condition. Bit 6 enables the controller to perform the RxStandby/
RXSTANDBY_ RxStandbyStatus handshake. - [0]: Rx EIOS and subsequent T TX-IDLE-MIN - [1]: Rate Change - [2]:
CONTROL Inactive lane for upconfigure/downconfigure - [3]: PowerDown=P1orP2 - [4]: RxL0s.Idle - [5]: EI Infer in
L0 - [6]: Execute RxStandby/RxStandbyStatus Handshake Note: This register field is sticky.
Offset
Register Offset
TRGT_CPL_LUT_DELE 8C8h
TE_ENTRY_OFF
Function
Using this register you can delete one entry in the target completion LUT. You should only use this register when you know
that your application will never send the completion because of an FLR or any other reason. Note:: The target completion
LUT (and associated target completion timeout event) is watching for completions (from your application on AXI master read
channel) corresponding to previously received non-posted requests from the PCIe wire.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
DELET
R
E_... LOOK_UP_ID
W W1C
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LOOK_UP_ID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 This is a one-shot bit. A '1' write to this bit triggers the deletion of the target completion LUT entry that
is specified in the LOOK_UP_ID field. This is a self-clearing register field. Reading from this register field
DELETE_EN always returns a '0'.
LOOK_UP_ID
Offset
Register Offset
LINK_FLUSH_CONTRO 8CCh
L_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
RSVD_I_8
W
Reset 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 AUTO_
W FL...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
31-24 This is an internally reserved field. Do not use. Note: This register field is sticky.
RSVD_I_8
23-1 Reserved
0Enables automatic flushing of pending requests before sending the reset request to the application logic
to reset the PCIe controller and the AXI Bridge. The flushing process is initiated if any of the following
AUTO_FLUSH_ events occur: - Hot reset request. A downstream port (DSP) can "hot reset" an upstream port (USP) by
EN sending two consecutive TS1 ordered sets with the hot reset bit asserted. - Warm (Soft) reset request.
Generated when exiting from D3 to D0 and cfg_pm_no_soft_rst=0. - Link down reset request. A high to
low transition on smlh_req_rst_not indicates the link has gone down and the controller is requesting a
reset. If you disable automatic flushing, your application is responsible for resetting the PCIe controller
and the AXI Bridge. Note: This register field is sticky.
Offset
Register Offset
AMBA_ERROR_RESPO 8D0h
NSE_DEFAULT_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 Reserved
Field Function
15-10 AXI Slave Response Error Map. Allows you to selectively map the errors received from the PCIe
completion (for non-posted requests) to the AXI slave responses, slv_rresp or slv_bresp. The
AMBA_ERROR recommended setting is SLVERR. CRS is always mapped to OKAY. - [0] -- 0: UR (unsupported request)
_RESPONSE_ -> DECERR -- 1: UR (unsupported request) -> SLVERR - [1] -- 0: CRS (configuration retry status) ->
MAP DECERR -- 1: CRS (configuration retry status) -> SLVERR - [2] -- 0: CA (completer abort) -> DECERR
-- 1: CA (completer abort) -> SLVERR - [3]: Reserved - [4]: Reserved - [5]: -- 0: Completion Timeout
-> DECERR -- 1: Completion Timeout -> SLVERR The AXI bridge internally drops (processes internally
but not passed to your application) a completion that has been marked by the Rx filter as UC or MLF,
and does not pass its status directly down to the slave interface. It waits for a timeout and then signals
"Completion Timeout" to the slave interface. The controller sets the AXI slave read databus to 0xFFFF
for all error responses. Note: This register field is sticky.
9-5 Reserved
1 Reserved
Field Function
Offset
Register Offset
AMBA_LINK_TIMEOUT_ 8D4h
OFF
Function
If your application AXI master issues outbound requests to the AXI bridge slave interface before the PCIe link is operational,
the controller starts a "flush" timer. The timeout value of the timer is set by this register. The timer will timeout and then
flush the bridge TX request queues after this amount of time. The timer counts when there are pending outbound AXI slave
interface (or DMA) requests and the PCIe TX link is not transmitting any of these requests.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 LINK_
LINK_TIMEOUT_PERIOD_DEFAULT
W TI...
Reset 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0
Fields
Field Function
31-9 Reserved
8 Disable Flush. You can disable the flush feature by setting this field to "1". Note: This register field is
sticky.
LINK_TIMEOUT
_ENABLE_DEF
AULT
Field Function
Timeout Value (ms). The timer will timeout and then flush the bridge TX request queues after this
7-0
amount of time. The timer counts when there are pending outbound AXI slave interface requests and
LINK_TIMEOUT the PCIe TX link is not transmitting any of these requests. The timer is clocked by core_clk. Note: This
_PERIOD_DEF register field is sticky.
AULT
Offset
Register Offset
AMBA_ORDERING_CT 8D8h
RL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-8 Reserved
6-5 Reserved
Field Function
2 Reserved
0 Reserved
Offset
Register Offset
COHERENCY_CONTRO 8E0h
L_1_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_MEMTYPE_BOUNDARY_LOW_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CFG_
CFG_MEMTYPE_BOUNDARY_LOW_ADDR
W MEM...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Boundary Lower Address For Memory Type. Bits [31:0] of dword-aligned address of the boundary for
31-2
Memory type. The two lower address LSBs are "00". Addresses up to but not including this value are
CFG_MEMTYP in the lower address space region; addresses equal or greater than this value are in the upper address
E_BOUNDARY space region. Note: This register field is sticky.
_LOW_ADDR
1 Reserved
0 Sets the memory type for the lower and upper parts of the address space: - 0: lower = Peripheral; upper
= Memory - 1: lower = Memory type; upper = Peripheral Note: This register field is sticky.
CFG_MEMTYP
E_VALUE
Offset
Register Offset
COHERENCY_CONTRO 8E4h
L_2_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_MEMTYPE_BOUNDARY_HIGH_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CFG_MEMTYPE_BOUNDARY_HIGH_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Boundary Upper Address For Memory Type. Bits [63:32] of the 64-bit dword-aligned address of the
boundary for Memory type. Note: This register field is sticky.
CFG_MEMTYP
E_BOUNDARY
_HIGH_ADDR
Offset
Register Offset
COHERENCY_CONTRO 8E8h
L_3_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 CFG_MSTR_A 0 0 CFG_MSTR_A
CFG_MSTR_AWCACHE_VALUE CFG_MSTR_ARCACHE_VALUE
W WDOMA... RDOMA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 CFG_MSTR_A 0 0 CFG_MSTR_A
CFG_MSTR_AWCACHE_MODE CFG_MSTR_ARCACHE_MODE
W WDOMA... RDOMA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Reserved
30-27 Master Write CACHE Signal Value. Value of the individual bits in mstr_awcache when
CFG_MSTR_AWCACHE_MODE is '1'. Note: not applicable to message requests; for message requests
CFG_MSTR_A the value of mstr_awcache is always "0000" Note: This register field is sticky.
WCACHE_VAL
UE
26 Reserved
25-24 Master Write DOMAIN Signal Value. Value of the individual bits in mstr_awdomain when
CFG_MSTR_AWDOMAIN_MODE is '1'. Note: not applicable to message requests; for message requests
CFG_MSTR_A the value of mstr_awdomain is always "11" Note: This register field is sticky.
WDOMAIN_VA
LUE
23 Reserved
22-19 Master Read CACHE Signal Value. Value of the individual bits in mstr_arcache when
CFG_MSTR_ARCACHE_MODE is '1'. Note: This register field is sticky.
CFG_MSTR_A
RCACHE_VAL
UE
18 Reserved
17-16 Master Read DOMAIN Signal Value. Value of the individual bits in mstr_ardomain when
CFG_MSTR_ARDOMAIN_MODE is '1' Note: This register field is sticky.
CFG_MSTR_A
RDOMAIN_VAL
UE
15 Reserved
14-11 Master Write CACHE Signal Behavior. Defines how the individual bits in mstr_awcache are controlled:
- 0: set automatically by the AXI master - 1: set by the value of the corresponding bit of the
CFG_MSTR_A CFG_MSTR_AWCACHE_VALUE field Note: for message requests the value of mstr_awcache is always
WCACHE_MO "0000" regardless of the value of this bit Note: This register field is sticky.
DE
10 Reserved
Field Function
9-8Master Write DOMAIN Signal Behavior. Defines how the individual bits in mstr_awdomain[1:0] are
controlled: - 0: set automatically by the AXI master - 1: set by the value of the corresponding bit of
CFG_MSTR_A the CFG_MSTR_AWDOMAIN_VALUE field Note:: for message requests the value of mstr_awdomain is
WDOMAIN_MO always "11" regardless of the value of this bit Note: This register field is sticky.
DE
7 Reserved
6-3 Master Read CACHE Signal Behavior. Defines how the individual bits in mstr_arcache are controlled:
- 0: set automatically by the AXI master - 1: set by the value of the corresponding bit of the
CFG_MSTR_A CFG_MSTR_ARCACHE_VALUE field Note: This register field is sticky.
RCACHE_MOD
E
2 Reserved
1-0 Master Read DOMAIN Signal Behavior. Defines how the individual bits in mstr_ardomain[1:0] are
controlled: - 0: set automatically by the AXI master - 1: set the value of the corresponding bit of the
CFG_MSTR_A CFG_MSTR_ARDOMAIN_VALUE field Note: This register field is sticky.
RDOMAIN_MO
DE
3.8.189 Lower 20 bits of the programmable AXI address where Messages coming from wire are
mapped to (AXI_MSTR_MSG_ADDR_LOW_OFF)
Offset
Register Offset
AXI_MSTR_MSG_ADDR 8F0h
_LOW_OFF
Function
Bits [11:0] of the register are tied to zero for the address to be 4k-aligned. In previous releases, the third and fourth DWORDs
of a message (Msg/MsgD) TLP header were delivered though the AXI master address bus (mstr_awaddr). These DWORDS
are now supplied through the mstr_awmisc_info_hdr_34dw[63:0] output; and the value on mstr_awaddr is driven to the value
you have programmed into the AXI_MSTR_MSG_ADDR_LOW_OFF and AXI_MSTR_MSG_ADDR_HIGH_OFF registers.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_AXIMSTR_MSG_ADDR_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CFG_AXIMSTR_MSG_ADDR_LO CFG_AXIMSTR_MSG_ADDR_LOW_RESERVED
W W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Lower 20 bits of the programmable AXI address for Messages. Note: This register field is sticky.
CFG_AXIMSTR
_MSG_ADDR_L
OW
11-0 Reserved for future use. Note: This register field is sticky.
CFG_AXIMSTR
_MSG_ADDR_L
OW_RESERVE
D
3.8.190 Upper 32 bits of the programmable AXI address where Messages coming from wire are
mapped to (AXI_MSTR_MSG_ADDR_HIGH_OFF)
Offset
Register Offset
AXI_MSTR_MSG_ADDR 8F4h
_HIGH_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CFG_AXIMSTR_MSG_ADDR_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CFG_AXIMSTR_MSG_ADDR_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Upper 32 bits of the programmable AXI address for Messages. Note: This register field is sticky.
CFG_AXIMSTR
_MSG_ADDR_
HIGH
Offset
Register Offset
PCIE_VERSION_NUMB 8F8h
ER_OFF
Function
The version number is given in hex format. You should convert each pair of hex characters to ASCII to interpret. Using
4.70a (GA) as an example: - VERSION_NUMBER = 0x3437302a which translates to 470* - VERSION_TYPE = 0x67612a2a
which translates to ga** Using 4.70a-ea01 as an example: - VERSION_NUMBER = 0x3437302a which translates to 470* -
VERSION_TYPE = 0x65613031 which translates to ea01 GA is a general release available on www.designware.com EA is an
early release available on a per-customer basis.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VERSION_NUMBER
Reset 0 0 1 1 0 1 0 1 0 0 1 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VERSION_NUMBER
Reset 0 0 1 1 0 0 0 0 0 0 1 0 1 0 1 0
Fields
Field Function
VERSION_NU
MBER
Offset
Register Offset
PCIE_VERSION_TYPE_ 8FCh
OFF
Function
The type is given in hex format. You should convert each pair of hex characters to ASCII to interpret. Using 4.70a (GA) as
an example: - VERSION_NUMBER = 0x3437302a which translates to 470* - VERSION_TYPE = 0x67612a2a which translates
to ga** Using 4.70a-ea01 as an example: - VERSION_NUMBER = 0x3437302a which translates to 470* - VERSION_TYPE
= 0x65613031 which translates to ea01 GA is a general release available on www.designware.com EA is an early release
available on a per-customer basis.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VERSION_TYPE
Reset 0 1 1 0 1 1 0 0 0 1 1 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VERSION_TYPE
Reset 0 0 1 1 0 0 0 0 0 0 1 1 0 0 1 1
Fields
Field Function
VERSION_TYP
E
Offset
Register Offset
INTERFACE_TIMER_C 930h
ONTROL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-5 Reserved
4 Writing to this bit forces the value of the pending flags. Note: This register field is sticky.
FORCE_PENDI
NG
3-2Interface timer scaling. This field can be used to reduce the timer duration for verification purpose. This
field should only be programmed when the INTERFACE_TIMER_EN bit is set to 1'b0. Note: This register
INTERFACE_TI field is sticky.
MER_SCALING
1 Interface timer AER generation enable. Note: This register field is sticky.
INTERFACE_TI
MER_AER_EN
INTERFACE_TI
MER_EN
Offset
Register Offset
INTERFACE_TIMER_TA 934h
RGET_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
INTERFACE_TIMER_TARGET
W
Reset 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0
Fields
Field Function
31-16 Reserved
15-0 Interface timer target value. This field should only be programmed when the INTERFACE_TIMER_EN bit
is set to 1'b0. Note: This register field is sticky.
INTERFACE_TI
MER_TARGET
Offset
Register Offset
INTERFACE_TIMER_ST 938h
ATUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Reserved
SLAVE_RD_AD
D_TIMEOUT
Field Function
SLAVE_WR_D
ATA_TIMEOUT
SLAVE_WR_A
DD_TIMEOUT
8-7 Reserved
MASTER_RD_
DATA_TIMEOU
T
MASTER_WR_
RES_TIMEOUT
CLIENT2_INTE
RFACE_TIMEO
UT
CLIENT1_INTE
RFACE_TIMEO
UT
2 Reserved
CPL_INTERFA
CE_TIMEOUT
MESSAGE_INT
ERFACE_TIME
OUT
Offset
Register Offset
MSIX_ADDRESS_MATC 940h
H_LOW_OFF
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required
to generate MSI-X requests. For more details, see Interrupts†. This register is only used in AXI configurations. When your local
AXI application writes (MWr) to the address defined in this register (and MSIX_ADDRESS_MATCH_HIGH_OFF), the controller
will load the MSIX_DOORBELL_OFF register with the contents of the MWr and subsequently create and send MSI-X TLPs
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSIX_ADDRESS_MATCH_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MSIX_
R MSIX_
MSIX_ADDRESS_MATCH_LOW AD...
AD...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-2 MSI-X Address Match Low Address. Note: This register field is sticky.
MSIX_ADDRES
S_MATCH_LO
W
MSIX_ADDRES
S_MATCH_RE
SERVED_1
0 MSI-X Match Enable. Enable the MSI-X Address Match feature when the AXI bridge is present. Note:
This register field is sticky.
MSIX_ADDRES
S_MATCH_EN
Offset
Register Offset
MSIX_ADDRESS_MATC 944h
H_HIGH_OFF
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required
to generate MSI-X requests. For more details, see Interrupts†. This register is only used in AXI configurations. When your local
AXI application writes (MWr) to the address defined in this register (and MSIX_ADDRESS_MATCH_LOW_OFF), the controller
will load the MSIX_DOORBELL_OFF register with the contents of the MWr and subsequently create and send MSI-X TLPs
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
MSIX_ADDRESS_MATCH_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MSIX_ADDRESS_MATCH_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 MSI-X Address Match High Address. Note: This register field is sticky.
MSIX_ADDRES
S_MATCH_HIG
H
Offset
Register Offset
MSIX_DOORBELL_OFF 948h
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required to
generate MSI-X requests. For more details, see Interrupts†.
For AXI configurations: when your local application writes (MWr) to the address defined in MSIX_ADDRESS_MATCH_LOW_OFF,
the controller will load this register with the contents of the MWr and subsequently create and send MSI-X TLPs.
For non-AMBA configurations: when your local application writes to this register, the controller will create and send MSI-X TLPs.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MSIX_DOORBELL_RES
W MSIX_DOORBELL_PF MSIX_DOORBELL_VF
ERVED_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MSIX_ MSIX_
W MSIX_DOORBELL_TC MSIX_DOORBELL_VECTOR
DO... DO...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
MSIX_DOORB
ELL_RESERVE
D_29_31
28-24 MSIX Doorbell Physical Function. This register determines the Physical Function for the MSI-X
transaction.
MSIX_DOORB
ELL_PF
23-16 MSIX Doorbell Virtual Function. This register determines the Virtual Function for the MSI-X transaction.
MSIX_DOORB
ELL_VF
15 MSIX Doorbell Virtual Function Active. This register determines whether a Virtual Function is used to
generate the MSI-X transaction.
MSIX_DOORB
ELL_VF_ACTIV
E
14-12 MSIX Doorbell Traffic Class. This register determines which traffic class to generate the MSI-X
transaction with.
MSIX_DOORB
ELL_TC
11 Reserved
Field Function
MSIX_DOORB
ELL_RESERVE
D_11
10-0 MSI-X Doorbell Vector. This register determines which vector to generate the MSI-X transaction for.
MSIX_DOORB
ELL_VECTOR
Offset
Register Offset
MSIX_RAM_CTRL_OFF 94Ch
Function
When you enable the MSI-X Table RAM feature (MSIX_TABLE_EN=1), the controller implements the logic and RAM required
to generate MSI-X requests. For more details, see Interrupts†.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
MSIX_RAM_CT
RL_RESERVE
D_26_31
Field Function
25 MSIX PBA RAM Debug Mode. Use this bit to activate the debug mode and allow direct read/write access
to the PBA. Use can also use the dbg_pba input to activate debug mode. Debug mode turns off the
MSIX_RAM_CT PF/VF/Offset-based addressing into the RAM and maps the entire table linearly from the base address of
RL_DBG_PBA the BAR (indicated by the BIR) in function 0. Note: This register field is sticky.
24 MSIX Table RAM Debug Mode. Use this bit to activate the debug mode and allow direct read/write
access to the Table. Use can also use the dbg_table input to activate debug mode. Debug mode turns
MSIX_RAM_CT off the PF/VF/Offset-based addressing into the RAM and maps the entire table linearly from the base
RL_DBG_TABL address of the BAR (indicated by the BIR) in function 0. Note: This register field is sticky.
E
MSIX_RAM_CT
RL_RESERVE
D_17_23
16 MSIX RAM Control Bypass. The bypass field, when set, disables the internal generation of low power
signals for both RAMs. It is up to the application to ensure the RAMs are in the proper power state before
MSIX_RAM_CT trying to access them. Moreover, the application needs to observe all timing requirements of the RAM
RL_BYPASS low power signals before trying to use the MSIX functionality. Note: This register field is sticky.
MSIX_RAM_CT
RL_RESERVE
D_10_15
9 MSIX PBA RAM Shut Down. Set this bit to drive the cfg_msix_pba_sd output to signal your external logic
to place the MSIX PBA RAM in Shut Down low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_PBA_SD
8 MSIX PBA RAM Deep Sleep. Set this bit to drive the cfg_msix_pba_ds output to signal your external
logic to place the MSIX PBA RAM in Deep Sleep low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_PBA_DS
MSIX_RAM_CT
RL_RESERVE
D_2_7
1 MSIX Table RAM Shut Down. Set this bit to drive the cfg_msix_table_sd output to signal your external
logic to place the MSIX Table RAM in Shut Down low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_TABLE_SD
0 MSIX Table RAM Deep Sleep. Set this bit to drive the cfg_msix_table_ds output to signal your external
logic to place the MSIX Table RAM in Deep Sleep low-power mode. Note: This register field is sticky.
MSIX_RAM_CT
RL_TABLE_DS
Offset
Register Offset
SAFETY_MASK_OFF 960h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
5 Mask for functional safety interrupt event 5 (RASDP correctable). Note: This register field is sticky.
SAFETY_INT_
MASK_5
4 Mask for functional safety interrupt event 4 (PCIe correctable). Note: This register field is sticky.
SAFETY_INT_
MASK_4
3 Mask for functional safety interrupt event 3 (PCIe uncorrectable). Note: This register field is sticky.
SAFETY_INT_
MASK_3
2 Mask for functional safety interrupt event 2 (Interface timers). Note: This register field is sticky.
SAFETY_INT_
MASK_2
1 Mask for functional safety interrupt event 1 (CDM register checker). Note: This register field is sticky.
SAFETY_INT_
MASK_1
Field Function
0 Mask for functional safety interrupt event 0 (RASDP). Note: This register field is sticky.
SAFETY_INT_
MASK_0
Offset
Register Offset
SAFETY_STATUS_OFF 964h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-6 Reserved
SAFETY_INT_S
TATUS_5
SAFETY_INT_S
TATUS_4
Field Function
SAFETY_INT_S
TATUS_3
SAFETY_INT_S
TATUS_2
SAFETY_INT_S
TATUS_1
SAFETY_INT_S
TATUS_0
Offset
Register Offset
PL_CHK_REG_CONTR B20h
OL_STATUS_OFF
Function
Controls register checking and displays status of register checking.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CHK_ CHK_
W REG... REG...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-19 Reserved
CHK_REG_CO
MPLETE
CHK_REG_LO
GIC_ERROR
16 The system has detected that there is a bit error in the CDM Register Data.
CHK_REG_CO
MPARISON_ER
ROR
15-2 Reserved
CHK_REG_CO
NTINUOUS
CHK_REG_STA
RT
3.8.203 CDM Register Checking First and Last address to check (PL_CHK_REG_START_END_OFF)
Offset
Register Offset
PL_CHK_REG_START_ B24h
END_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
CHK_REG_END_ADDR
W
Reset 0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CHK_REG_START_ADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 The last address that is checked by the system. Note: This register field is sticky.
CHK_REG_EN
D_ADDR
15-0 The first address that is checked by the system. Note: This register field is sticky.
CHK_REG_STA
RT_ADDR
Offset
Register Offset
PL_CHK_REG_ERR_AD B28h
DR_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R CHK_REG_ERR_ADDR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R CHK_REG_ERR_ADDR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 The address at which an error has been detected. Valid only when the CDM Register Checker
Comparison Error bit is set in the status register. Note: This register field is sticky.
CHK_REG_ER
R_ADDR
Offset
Register Offset
PL_CHK_REG_ERR_PF B2Ch
_VF_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 CHK_REG_VF_ERR_NUMBER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CHK_REG_PF_ERR_NUMBER
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
27-16 The VF number at which the error was detected. Valid only when the CDM Register Checker
Comparison Error bit is set in the status register. Note: This register field is sticky.
CHK_REG_VF_
ERR_NUMBER
15-5 Reserved
4-0 The PF number at which the error was detected. Valid only when the CDM Register Checker
Comparison Error bit is set in the status register. Note: This register field is sticky.
CHK_REG_PF_
ERR_NUMBER
Offset
Register Offset
AUX_CLK_FREQ_OFF B40h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
AUX_CLK_FREQ
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0
Fields
Field Function
31-10 Reserved
The aux_clk frequency in MHz. This value is used to provide a 1 us reference for counting time during
9-0
low-power states with aux_clk when the PHY has removed the pipe_clk. Frequencies lower than 1 MHz
AUX_CLK_FRE are possible but with a loss of accuracy in the time counted. If the actual frequency (f) of aux_clk does
Q not exactly match the programmed frequency (f_prog), then there is an error in the time counted by the
controller that can be expressed in percentage as: err% = (f_prog/f-1)*100. For example if f=2.5 MHz
and f_prog=3 MHz, then err% =(3/2.5-1)*100 =20%, meaning that the time counted by the controller
on aux_clk will be 20% greater than the time in us programmed in the corresponding time register (for
example T_POWER_ON). Note: This register field is sticky.
Offset
Register Offset
BAR0_MASK 2_0010h
Function
Serves as the mask for BAR0.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE1_BAR0_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE1_BAR0_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR1_MASK 2_0014h
Function
Serves as the mask for BAR1.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE1_BAR1_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE1_BAR1_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR2_MASK 2_0018h
Function
Serves as the mask for BAR2.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE1_BAR2_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE1_BAR2_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR3_MASK 2_001Ch
Function
Serves as the mask for BAR3.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE1_BAR3_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE1_BAR3_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR4_MASK 2_0020h
Function
Serves as the mask for BAR4.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE1_BAR4_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE1_BAR4_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
BAR5_MASK 2_0024h
Function
Serves as the mask for BAR5.
Normally, the BAR masks are used for indicating the amount of address space that each BAR requests from host software. The
BAR masks determine which bits in each BAR are non-writable by host software, which determines the size of the address space
claimed by each BAR. The BAR mask values indicate the range of low-order bits, in each implemented BAR, not to use for address
matching. The BAR mask value also indicates the range of low-order bits in the BAR that cannot be written from the host. The
application can write to all BAR bits to allow setting of memory, I/O, and other standard BAR options.
Your local CPU can change the mask at runtime using the DBI. The mask register is invisible to the PCIe wire but visible to your
local CPU through the DBI. You cannot read the mask register but you can write to it. It is accessed by asserting dbi_cs2 and
dbi_cs. If you only assert dbi_cs then you will access the BAR which is the primary register at that location. Use CS2 instead of
dbi_cs2 when you are using the AXI bridge.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W PCI_TYPE1_BAR5_MASK
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PCI_T
W PCI_TYPE1_BAR5_MASK
YP...
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
IATU_REGION_CTRL_1 6_0000h
_OFF_OUTBOUND_0
Register Offset
IATU_REGION_CTRL_1 6_0200h
_OFF_OUTBOUND_1
IATU_REGION_CTRL_1 6_0400h
_OFF_OUTBOUND_2
IATU_REGION_CTRL_1 6_0600h
_OFF_OUTBOUND_3
IATU_REGION_CTRL_1 6_0800h
_OFF_OUTBOUND_4
IATU_REGION_CTRL_1 6_0A00h
_OFF_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0
CTRL_1_FUNC_NUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 INCRE 0
ATTR TD TC TYPE
W AS...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-23 Reserved
19-14 Reserved
Field Function
12-11 Reserved
10-9 When the address of an outbound TLP is matched to this region, then the ATTR field of the TLP is
changed to the value in this register. Note: This register field is sticky.
ATTR
8 When the address of an outbound TLP is matched to this region, then the TD field of the TLP is changed
to the value in this register. Note: This register field is sticky.
TD
7-5 When the address of an outbound TLP is matched to this region, then the TC field of the TLP is changed
to the value in this register. Note: This register field is sticky.
TC
4-0 When the address of an outbound TLP is matched to this region, then the TYPE field of the TLP is
changed to the value in this register. Note: This register field is sticky.
TYPE
Offset
Register Offset
IATU_REGION_CTRL_2 6_0004h
_OFF_OUTBOUND_0
IATU_REGION_CTRL_2 6_0204h
_OFF_OUTBOUND_1
IATU_REGION_CTRL_2 6_0404h
_OFF_OUTBOUND_2
IATU_REGION_CTRL_2 6_0604h
_OFF_OUTBOUND_3
IATU_REGION_CTRL_2 6_0804h
_OFF_OUTBOUND_4
IATU_REGION_CTRL_2 6_0A04h
_OFF_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
TAG Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Region Enable. This bit must be set to '1' for address translation to take place. Note: This register field is
sticky.
REGION_EN
30 Reserved
Invert Mode. When set the address matching region is inverted. Therefore, an address match occurs
29
when the untranslated address is in the region outside the defined range (Base Address to Limit
INVERT_MODE Address). Note: This register field is sticky.
DMA Bypass Mode. Allows request TLPs which are initiated by the DMA controller to pass through the
27
iATU untranslated. Note: This field is reserved for the SW product. You must set it to '0'. Note: This
DMA_BYPASS register field is sticky.
26-24 Reserved
Header Substitute Enable. When enabled and region address is matched, the iATU fully substitutes
23
bytes 8-11 (for 3 DWORD header) or bytes 12-15 (for 4 DWORD header) of the outbound TLP header
HEADER_SUB with the contents of the LWR_TARGET_RW field in IATU_LWR_TARGET_ADDR_OFF_OUTBOUND_i.
STITUTE_EN - 1: LWR_TARGET_RW in the iATU_LWR_TARGET_ADDR_OFF_OUTBOUND_i register is used to fill
bytes 8-to-11 (for 3 DWORD header) or bytes 12-to-15 (for 4 DWORD header) of the translated TLP
header. - 0: LWR_TARGET_RW in the iATU_LWR_TARGET_ADDR_OFF_OUTBOUND_i register forms
the new address of the translated region. Note: This register field is sticky.
Field Function
22 Inhibit TLP Payload Data for TLP's in Matched Region; assign iATU region to be TLP without data. When
enabled and region address is matched, the iATU marks all TLPs as having no payload data by forcing
INHIBIT_PAYL the TLP header Fmt[1] bit =0, regardless of the application inputs such as slv_wstrb. - 1: Fmt[1] =0 so
OAD that only TLP type without data is sent. For example, a Msg instead of MsgD will be sent. - 0: Fmt[1] =0/1
so that TLPs with or without data can be sent. Note: This register field is sticky.
21 Reserved
20 Serialize Non-Posted Requests. In this mode, when the AXI Bridge is populated, same AXI ID Non-
Posted Read/Write Requests are transmitted on the wire if there are no other same ID Non-Posted
SNP Requests outstanding. Note: This register field is sticky.
19 Function Number Translation Bypass. In this mode, the function number of the translated TLP is taken
from your application transmit interface and not from the CTRL_1_FUNC_NUM field of the "iATU Control
FUNC_BYPAS 1 Register" or the VF_NUMBER field of the "iATU Control 3 Register." Note: This register field is sticky.
S
18-17 Reserved
15-8 TAG. The substituted TAG field (byte 6) in the outgoing TLP header when TAG_SUBSTITUTE_EN is set.
Note: This register field is sticky.
TAG
7-0 Reserved
Offset
Register Offset
IATU_LWR_BASE_ADD 6_0008h
R_OFF_OUTBOUND_0
IATU_LWR_BASE_ADD 6_0208h
R_OFF_OUTBOUND_1
Register Offset
IATU_LWR_BASE_ADD 6_0408h
R_OFF_OUTBOUND_2
IATU_LWR_BASE_ADD 6_0608h
R_OFF_OUTBOUND_3
IATU_LWR_BASE_ADD 6_0808h
R_OFF_OUTBOUND_4
IATU_LWR_BASE_ADD 6_0A08h
R_OFF_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LWR_BASE_HW
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Forms bits 31:12 of the start address of the address region to be translated.
LWR_BASE_R This field is sticky.
W
11-0 Forms bits 11:0 of the start address of the address region to be translated.
LWR_BASE_H The PCIe controller ignores any writes to this location.
W
This field is sticky.
Offset
Register Offset
IATU_UPPER_BASE_A 6_000Ch
DDR_OFF_OUTBOUND
_0
IATU_UPPER_BASE_A 6_020Ch
DDR_OFF_OUTBOUND
_1
IATU_UPPER_BASE_A 6_040Ch
DDR_OFF_OUTBOUND
_2
IATU_UPPER_BASE_A 6_060Ch
DDR_OFF_OUTBOUND
_3
IATU_UPPER_BASE_A 6_080Ch
DDR_OFF_OUTBOUND
_4
IATU_UPPER_BASE_A 6_0A0Ch
DDR_OFF_OUTBOUND
_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms bits [63:32] of the start (and end) address of the address region to be translated. In systems with
31-0
a 32-bit address space, this register is not used and therefore writing to this register has no effect. Note:
UPPER_BASE_ This register field is sticky.
RW
Offset
Register Offset
IATU_LIMIT_ADDR_OFF 6_0010h
_OUTBOUND_0
IATU_LIMIT_ADDR_OFF 6_0210h
_OUTBOUND_1
IATU_LIMIT_ADDR_OFF 6_0410h
_OUTBOUND_2
IATU_LIMIT_ADDR_OFF 6_0610h
_OUTBOUND_3
IATU_LIMIT_ADDR_OFF 6_0810h
_OUTBOUND_4
IATU_LIMIT_ADDR_OFF 6_0A10h
_OUTBOUND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LIMIT_ADDR_HW
LIMIT_ADDR_RW
W
Reset 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
31-12 Forms upper bits of the end address of the address region to be translated.
LIMIT_ADDR_R The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
This field is sticky.
11-0 Forms lower bits of the end address of the address region to be translated.
LIMIT_ADDR_H The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
Offset
Register Offset
IATU_LWR_TARGET_A 6_0014h
DDR_OFF_OUTBOUND
_0
IATU_LWR_TARGET_A 6_0214h
DDR_OFF_OUTBOUND
_1
IATU_LWR_TARGET_A 6_0414h
DDR_OFF_OUTBOUND
_2
IATU_LWR_TARGET_A 6_0614h
DDR_OFF_OUTBOUND
_3
IATU_LWR_TARGET_A 6_0814h
DDR_OFF_OUTBOUND
_4
IATU_LWR_TARGET_A 6_0A14h
DDR_OFF_OUTBOUND
_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_TARGET_RW_OUTBOUND
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LWR_TARGET_RW_OUTBOUND
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
LWR_TARGET • LWR_TARGET_RW[31:12] forms MSB's of the Lower Target part of the new address of the
_RW_OUTBOU translated region
ND
• LWR_TARGET_RW[11:0] are not used. (The start address must be aligned to a 4 KB boundary, so
the lower bits of the start address of the new address of the translated region [bits 11:0] are always
'0').
When HEADER_SUBSTITUTE_EN in IATU_REGION_CTRL_2_OFF_OUTBOUND_i is '1',
LWR_TARGET_RW[31:0] forms bytes 8-11 (for 3 dword header) or bytes 12-15 (for 4 dword header)
of the outbound TLP header. Usage scenarios include the transmission of Vendor Defined Messages where
the controller determines the content of bytes 12 to 15 of the TLP header.
This field is sticky.
Offset
Register Offset
IATU_UPPER_TARGET 6_0018h
_ADDR_OFF_OUTBOU
ND_0
IATU_UPPER_TARGET 6_0218h
_ADDR_OFF_OUTBOU
ND_1
IATU_UPPER_TARGET 6_0418h
_ADDR_OFF_OUTBOU
ND_2
IATU_UPPER_TARGET 6_0618h
_ADDR_OFF_OUTBOU
ND_3
IATU_UPPER_TARGET 6_0818h
_ADDR_OFF_OUTBOU
ND_4
IATU_UPPER_TARGET 6_0A18h
_ADDR_OFF_OUTBOU
ND_5
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Forms bits [63:32] of the start address (Upper Target part) of the new address of the translated region.
Note: This register field is sticky.
UPPER_TARG
ET_RW
Offset
Register Offset
IATU_UPPR_LIMIT_ADD 6_0020h
R_OFF_OUTBOUND_0
IATU_UPPR_LIMIT_ADD 6_0220h
R_OFF_OUTBOUND_1
IATU_UPPR_LIMIT_ADD 6_0420h
R_OFF_OUTBOUND_2
IATU_UPPR_LIMIT_ADD 6_0620h
R_OFF_OUTBOUND_3
IATU_UPPR_LIMIT_ADD 6_0820h
R_OFF_OUTBOUND_4
IATU_UPPR_LIMIT_ADD 6_0A20h
R_OFF_OUTBOUND_5
Function
The maximum size of an address translation region is 1 TB. This register is only used when the INCREASE_REGION_SIZE
field in IATU_REGION_CTRL_1_OFF_OUTBOUND_i is '1'.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UPPR_LIMIT_ADDR_HW
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UPPR_LIMIT_ADDR_HW
UPPR_LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms MSB's of the Upper Limit part of the region "end address" to be translated. Only applies to 64-bit
31-8
systems and when the INCREASE_REGION_SIZE field in IATU_REGION_CTRL_1_OFF_OUTBOUND_i
UPPR_LIMIT_A is '1'. These bits are always '0'.
DDR_HW
7-0Forms the LSB's of the Upper Limit part of the region "end address" to be
translated. Only applies to 64-bit systems and when the INCREASE_REGION_SIZE field in
UPPR_LIMIT_A IATU_REGION_CTRL_1_OFF_OUTBOUND_i is '1' Note: This register field is sticky.
DDR_RW
Offset
Register Offset
IATU_REGION_CTRL_1 6_0100h
_OFF_INBOUND_0
IATU_REGION_CTRL_1 6_0300h
_OFF_INBOUND_1
IATU_REGION_CTRL_1 6_0500h
_OFF_INBOUND_2
IATU_REGION_CTRL_1 6_0700h
_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0
CTRL_1_FUNC_NUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 INCRE 0
ATTR TD TC TYPE
W AS...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-23 Reserved
Function Number. - MEM-I/O: When the Address and BAR matching logic in the controller indicate that a
22-20
MEM-I/O transaction matches a BAR in the function corresponding to this value, then address translation
CTRL_1_FUNC proceeds. This check is only performed if the "Function Number Match Enable" bit of the "iATU Control
_NUM 2 Register" is set. - CFG0/CFG1: When the destination function number as specified in the routing ID of
the TLP header matches the function, then address translation proceeds. This check is only performed if
the "Function Number Match Enable" bit of the "iATU Control 2 Register" is set. Note: This register field
is sticky.
19-14 Reserved
12-11 Reserved
10-9 When the ATTR field of an inbound TLP is matched to this value, then address translation proceeds
(when all other enabled field-matches are successful). This check is only performed if the "ATTR Match
ATTR Enable" bit of the "iATU Control 2 Register" is set. Note: This register field is sticky.
8 When the TD field of an inbound TLP is matched to this value, then address translation proceeds (when
all other enabled field-matches are successful). This check is only performed if the "TD Match Enable" bit
TD of the "iATU Control 2 Register" is set. Note: This register field is sticky.
7-5 When the TC field of an inbound TLP is matched to this value, then address translation proceeds (when
all other enabled field-matches are successful). This check is only performed if the "TC Match Enable" bit
TC of the "iATU Control 2 Register" is set. Note: This register field is sticky.
Field Function
4-0 When the TYPE field of an inbound TLP is matched to this value, then address translation proceeds
(when all other enabled field-matches are successful). Note: This register field is sticky.
TYPE
Offset
Register Offset
IATU_REGION_CTRL_2 6_0104h
_OFF_INBOUND_0
IATU_REGION_CTRL_2 6_0304h
_OFF_INBOUND_1
IATU_REGION_CTRL_2 6_0504h
_OFF_INBOUND_2
IATU_REGION_CTRL_2 6_0704h
_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R REGI MATC INVER CFG_ FUZZ 0 RESPONSE_C SINGL 0 Reserv 0 FUNC 0 ATTR_
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Region Enable. This bit must be set to '1' for address translation to take place. Note: This register field is
sticky.
REGION_EN
Match Mode. Determines Inbound matching mode for TLPs. The mode depends on the type of TLP that
30
is received as follows: For MEM-I/O TLPs, this field is interpreted as follows: - 0: Address Match Mode.
MATCH_MODE The iATU operates using addresses as in the outbound direction. The Region Base and Limit Registers
Field Function
must be setup. - 1:BAR Match Mode. BAR matching is used. The "BAR Number" field is relevant. Not
used for RC. For CFG0 TLPs, this field is interpreted as follows: - 0: Routing ID Match Mode. The iATU
interprets the Routing ID (Bytes 8 to 11 of TLP header) as an address. This corresponds to the upper 16
bits of the address in MEM-I/O transactions. The Routing ID of the TLP must be within the base and limit
of the iATU region for matching to proceed. - 1: Accept Mode. The iATU accepts all CFG0 transactions
as address matches. The routing ID in the CFG0 TLP is ignored. This is useful as all received CFG0
TLPs should be processed regardless of the Bus number. For MSG/MSGD TLPs, this field is interpreted
as follows: - 0: Address Match Mode. The iATU treats the third dword and fourth dword of the inbound
MSG/MSGD TLP as an address and it is matched against the Region Base and Limit Registers. -
1: Vendor ID Match Mode. This mode is relevant for ID-routed Vendor Defined Messages. The iATU
ignores the Routing ID (Bus, Device, Function) in bits [31:16] of the third dword of the TLP header,
but matches against the Vendor ID in bits [15:0] of the third dword of the TLP header. Bits [15:0] of
the Region Upper Base register should be programmed with the required Vendor ID. The lower Base
and Limit Register should be programmed to translate TLPs based on vendor specific information in
the fourth dword of the TLP header. - If SINGLE_ADDRESS_LOCATION_TRANSLATE_EN = 1 AND
MSG_TYPE_MATCH_MODE = 1, then Match Mode is ignored. Note: This register field is sticky.
29 Invert Mode. When set the address matching region is inverted. Therefore, an address match occurs
when the untranslated address is in the region outside the defined range (Base Address to Limit
INVERT_MODE Address). Note: This register field is sticky.
28 CFG Shift Mode. This is useful for CFG transactions where the PCIe configuration mechanism maps bits
[27:12] of the address to the bus/device and function number. This allows a CFG configuration space
CFG_SHIFT_M to be located in any 256MB window of your application memory space using a 28-bit effective address.
ODE Shifts bits [31:16] of the untranslated address to form bits [27:12] of the translated address. Note: This
register field is sticky.
27 Fuzzy Type Match Mode. When enabled, the iATU relaxes the matching of the TLP TYPE field against
the expected TYPE field so that - CfgRd0 and CfgRd1 TLPs are seen as identical. Similarly with CfgWr0
FUZZY_TYPE_ and CfgWr1. - MWr, MRd and MRdLk TLPs are seen as identical - The Routing field of Msg/MsgD TLPs
MATCH_CODE is ignored - FetchAdd, Swap and CAS are seen as identical. For example, CFG0 in the TYPE field in the
"iATU Control 1 Register" matches against an inbound CfgRd0, CfgRd1, CfgWr0 or CfgWr1 TLP. Note:
This register field is sticky.
26 Reserved
25-24 Response Code. Defines the type of response to give for accesses matching this region. This overrides
the normal RADM filter response. Note that this feature is not available for any region where Single
RESPONSE_C Address Location Translate is enabled. - 00 - Normal RADM filter response is used. - 01 - Unsupported
ODE request (UR) - 10 - Completer abort (CA) - 11 - Not used / undefined / reserved. Note: This register field
is sticky.
23 Single Address Location Translate Enable. When enabled, Rx TLPs can be translated to a single
address location as determined by the target address register of the iATU region. The main usage
SINGLE_ADDR scenario is translation of Messages (such as Vendor Defined or ATS Messages) to MWr TLPs when the
_LOC_TRANS_ AXI bridge is enabled. Note: This register field is sticky.
EN
22 Reserved
Field Function
21 Reserved
20 Reserved
19 Function Number Match Enable. Ensures that a successful Function Number TLP field comparison
match (see Function Number field of the "iATU Control 1 Register") occurs (in MEM-I/O and CFG0/CFG1
FUNC_NUM_M transactions) for address translation to proceed. Note: This register field is sticky.
ATCH_EN
18-17 Reserved
16 ATTR Match Enable. Ensures that a successful ATTR TLP field comparison match (see ATTR field
of the "iATU Control 1 Register") occurs for address translation to proceed. Note: This register field is
ATTR_MATCH_ sticky.
EN
15 TD Match Enable. Ensures that a successful TD TLP field comparison match (see TD field of the "iATU
Control 1 Register") occurs for address translation to proceed. Note: This register field is sticky.
TD_MATCH_E
N
14 TC Match Enable. Ensures that a successful TC TLP field comparison match (see TC field of the "iATU
Control 1 Register") occurs for address translation to proceed. Note: This register field is sticky.
TC_MATCH_E
N
13 Message Type Match Mode. When enabled, and if single address location translate enable is set, then
inbound TLPs of type MSG/MSGd which match the type field of the iatu_region_ctrl_1_OFF_inbound
MSG_TYPE_M register (=>TYPE[4:3]=2'b10) will be translated. Message type match mode overrides any value of
ATCH_MODE MATCH_MODE field in this register. Usage scenarios for this are translation of VDM or ATS messages
when AXI bridge is configured on client interface. Note: This register field is sticky.
12-11 Reserved
10-8 BAR Number. When the BAR number of an inbound MEM or IO TLP " that is matched by the normal
internal BAR address matching mechanism " is the same as this field, address translation proceeds
BAR_NUM (when all other enabled field-matches are successful). This check is only performed if the "Match Mode"
bit of the "iATU Control 2 Register" is set. - 000b - BAR0 - 001b - BAR1 - 010b - BAR2 - 011b - BAR3
- 100b - BAR4 - 101b - BAR5 - 110b - ROM - 111b - reserved - IO translation would require either
00100b or 00101b in the inbound TLP TYPE; the BAR Number set in the range 000b - 101b and that
BAR configured as an IO BAR. Note: This register field is sticky.
7-0 Reserved
Offset
Register Offset
IATU_LWR_BASE_ADD 6_0108h
R_OFF_INBOUND_0
IATU_LWR_BASE_ADD 6_0308h
R_OFF_INBOUND_1
IATU_LWR_BASE_ADD 6_0508h
R_OFF_INBOUND_2
IATU_LWR_BASE_ADD 6_0708h
R_OFF_INBOUND_3
Function
The minimum size of an address translation region is 4 KB. The lower 12 bits are zero.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LWR_BASE_HW
LWR_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Forms bits 31:12 of the start address of the address region to be translated.
LWR_BASE_R This field is sticky.
W
11-0 Forms bits 11:0 of the start address of the address region to be translated.
LWR_BASE_H The PCIe controller ignores any writes to this location.
W
This field is sticky.
Offset
Register Offset
IATU_UPPER_BASE_A 6_010Ch
DDR_OFF_INBOUND_0
IATU_UPPER_BASE_A 6_030Ch
DDR_OFF_INBOUND_1
IATU_UPPER_BASE_A 6_050Ch
DDR_OFF_INBOUND_2
IATU_UPPER_BASE_A 6_070Ch
DDR_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_BASE_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Forms bits [63:32] of the start (and end) address of the address region to be translated. Note: This
register field is sticky.
UPPER_BASE_
RW
Offset
Register Offset
IATU_LIMIT_ADDR_OFF 6_0110h
_INBOUND_0
Register Offset
IATU_LIMIT_ADDR_OFF 6_0310h
_INBOUND_1
IATU_LIMIT_ADDR_OFF 6_0510h
_INBOUND_2
IATU_LIMIT_ADDR_OFF 6_0710h
_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LIMIT_ADDR_HW
LIMIT_ADDR_RW
W
Reset 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
31-12 Forms upper bits of the end address of the address region to be translated.
LIMIT_ADDR_R The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
This field is sticky.
11-0 Forms lower bits of the end address of the address region to be translated.
LIMIT_ADDR_H The end address must be aligned to a 4 KB boundary, so these bits are always 0.
W
The PCIe controller ignores writes to this location.
Offset
Register Offset
IATU_LWR_TARGET_A 6_0114h
DDR_OFF_INBOUND_0
IATU_LWR_TARGET_A 6_0314h
DDR_OFF_INBOUND_1
IATU_LWR_TARGET_A 6_0514h
DDR_OFF_INBOUND_2
IATU_LWR_TARGET_A 6_0714h
DDR_OFF_INBOUND_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LWR_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R LWR_TARGET_HW
LWR_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-12 Forms MSB's of the Lower Target part of the new address of the translated region.
LWR_TARGET These bits are always '0'.
_RW
This field is sticky.
11-0 Forms the LSB's of the Lower Target part of the new address of the translated region.
LWR_TARGET The start address must be aligned to a 4 KB boundary (in address match mode); and to the Bar size
_HW boundary (in BAR match mode) so that these bits are always '0'. If the BAR is smaller than the iATU region
size, then the iATU target address must align to the iATU region size; otherwise it must align to the BAR size.
The PCIe controller ignores writes to this location.
Offset
Register Offset
IATU_UPPER_TARGET 6_0118h
_ADDR_OFF_INBOUND
_0
IATU_UPPER_TARGET 6_0318h
_ADDR_OFF_INBOUND
_1
IATU_UPPER_TARGET 6_0518h
_ADDR_OFF_INBOUND
_2
IATU_UPPER_TARGET 6_0718h
_ADDR_OFF_INBOUND
_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
UPPER_TARGET_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms bits [63:32] of the start address (Upper Target part) of the new address of the translated region. In
31-0
systems with a 32-bit address space, this register is not used and therefore writing to this register has no
UPPER_TARG effect. Note: This register field is sticky.
ET_RW
Offset
Register Offset
IATU_UPPR_LIMIT_ADD 6_0120h
R_OFF_INBOUND_0
IATU_UPPR_LIMIT_ADD 6_0320h
R_OFF_INBOUND_1
IATU_UPPR_LIMIT_ADD 6_0520h
R_OFF_INBOUND_2
IATU_UPPR_LIMIT_ADD 6_0720h
R_OFF_INBOUND_3
Function
The maximum size of an address translation region is 1 TB. This register is only used when the INCREASE_REGION_SIZE field
in IATU_REGION_CTRL_1_OFF_INBOUND_i is '1'.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UPPR_LIMIT_ADDR_HW
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UPPR_LIMIT_ADDR_HW
UPPR_LIMIT_ADDR_RW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Forms MSB's of the Upper Limit part of the region "end address" to be translated. Only applies to 64-bit
31-8
systems and when the INCREASE_REGION_SIZE field in IATU_REGION_CTRL_1_OFF_INBOUND_i is
UPPR_LIMIT_A '1'. These bits are always '0'.
DDR_HW
7-0Forms the LSB's of the Upper Limit part of the region "end address" to be
translated. Only applies to 64-bit systems and when the INCREASE_REGION_SIZE field in
UPPR_LIMIT_A IATU_REGION_CTRL_1_OFF_INBOUND_i is '1' Note: This register field is sticky.
DDR_RW
Intermediate Ultimate
Requester Link Link
component(s) completer
Each PCI Express device is divided into two halves -- transmit (TX) and receive (RX). Each of these halves is further divided into
three layers -- transaction, data link, and physical, as shown in the following figure.
Packets are formed in the transaction layer (TLPs) and data link layer (DLLPs), and each subsequent layer adds the necessary
encodings and framing, as shown in the following figure. As packets are received, they are decoded and processed by the same
layers but in reverse order, so they may be processed by the layer or by the device application software.
3.9.4 Architecture
This section describes implementation details of the PCI Express controller.
IORd Yes (RC only) No I/O Read request. As a target, Cpl with UR status is returned.
IOWr Yes (RC only) No I/O Write Request. As a target, Cpl with UR status is returned.
CfgRd1 Yes (RC only) No Configuration Read Type 1. As a target, Cpl with UR status is returned.
CfgWr1 Yes (RC only) No Configuration Write Type 1. As a target, Cpl with UR status is returned.
Msg Yes Yes Message Request. Message without data is not forwarded to memory.
MsgD Yes (RC only) Yes (EP only) Message Request with Data payload. Note that Set_Slot_Power_Limit is the
only message with data that is supported and then only when the controller is an
initiator and in RC mode or a target and in EP mode.
CplLk No Yes Completion for Locked Memory Read without Data. The only time that CplLk is
returned with UR status is when the controller receives a MRdLk command.
1. Regardless of the setting of the relaxed ordering (RO) bit, a posted request cannot bypass another posted request.
2. Regardless of the setting of the relaxed ordering bit, a posted request can always bypass a completion.
3. N/A indicates that the original rules at these entries defined by the PCI Express Base Specification do not apply to RC or
EP.
4. A non-posted request cannot bypass a completion if the relaxed ordering bit is cleared (that is, RO = 0).
5. A non-posted request can bypass a completion if the relaxed ordering bit is set (that is, RO = 1).
6. A read completion, I/O write completion, or configuration write completion cannot bypass a posted request if the relaxed
ordering bit is cleared (that is, RO = 0).
7. A read completion, I/O write completion, or configuration write completion can bypass a posted request if the relaxed
ordering bit is set (that is, RO = 1).
8. Regardless of the setting of the relaxed ordering bit, a read completion cannot bypass another read completion.
In general, the following points summarize the ordering rules for sending the next outstanding request:
• A posted request can bypass all other transactions except another posted request.
• A non-posted request cannot bypass posted or other non-posted requests, but it can bypass a completion if the relaxed
ordering (RO) bit is set. (See Table 16).
• A completion can bypass posted requests if the relaxed ordering (RO) bit is set and can bypass non-posted transactions.
However, a completion cannot bypass other completions.
3.9.5.1.1 Generation†
It is expected that the ECRC is not present in traffic that your application is presenting on the transmit interfaces of the controller.
The controller generates and inserts the ECRC. When you are not using the AXI bridge, then you should set client0_tlp_td
=0. To enable ECRC insertion, set the ECRC_GEN_EN field of the ADV_ERR_CAP_CTRL_OFF register.
When you select the address alignment feature (GLOB_ADDR_ALIGN_EN =1) and you are not using the AXI bridge, your
application must set clientN_addr_align_en =0 for those TLPs that contain ECRC (TD bit =1).
3.9.5.1.2 Checking†
When the ECRC is present, the controller checks it and removes it from the TLP. To enable ECRC checking, set the
ECRC_CHECK_EN field of the ADV_ERR_CAP_CTRL_OFF AER register.
By default, when the controller detects a TLP with an ECRC error, it performs the following:
• Discards[3] the TLP
• Generates a completion (for non-posted requests) with the completion status set to CA or UR
• Sets the status in the PCI-compatible status register
• Sets the status in the AER registers (when you enable AER)
• Generates an error message (upstream port only)
The controller has a set of RAS DP registers as defined in Table 17. For detailed descriptions of how you use them, see PCIE_EP
register descriptions and PCIE_RC register descriptions.
There is one set of common capability registers shared across all physical functions which can be accessed through each function.
The exception is the NEXT_OFFSET field in the capability header register.
Register Description
CORR_CLEAR _COUNTERS
CORR_EN_COUNTERS
CORR_COUNTER_SELECTION [7:0]
Counter j
Software Write
Counter0
RST
EN
Region i
Counter j
error
RASDP_CORR_COUNTER_CONTROL_OFF
CORR_COUNTER_SELECTED [7:0]
Region 0
Counters CORR_COUNTER_SELECTION _REGION [3:0]
Software
. CORR_COUNTER[7:0]
Read
.
. Counter j
RASDP_CORR_COUNT_REPORT_OFF
Counter0
RST
EN
error
Region i
Counters
Figure 13. RAS DP register access to error counters (same method applies to uncorrectable errors)
Feature Availability
# Errors Detectable 1, 2
# Errors Correctable 1
Feature Availability
Core Regenerates ECC Code at Output of RAM When Uncorrectable (2-bit) Error Detected No
1. See Limitations.
2. Using the RASDP_ERROR_PROT_CTRL_OFF register.
3. The core does not check the address parity. RAM address parity checking and error handling is application specific.
Feature Availability
Core Checks and Recalculates Protection Codes at all Internal Processing (Data Manipulation) Steps2 Yes
Feature Availability
# Errors Detectable
ECC 1,2
Parity 1
# Errors Correctable
ECC 1
Parity 03
8-bit Yes
32-bit No
64-bit No
1. See Limitations.
2. Detailed report of all check points is available at http://www.synopsys.com/dw/doc.php/iip/DWC_pcie/
5.00a/doc/RASDP_CheckPoints.pdf.
3. The controller pulses app_parity_err[2:0]output bus. Your application can OR the bus bits and drive the Uncorrectable
Error bit of the app_err_bus input. This is not required when RASDP error mode is enabled because the controller handles the
parity error as an uncorrectable error in this mode.
4. Using the RASDP_ERROR_PROT_CTRL_OFF register.
5. Except for 32-bit datapath.
Feature Availability
Wire Access to CDM/ELBI Registers Suspended (to Prevent Corruption of the Register Config Space) Yes
• Subsequent Rx TLPs not Guaranteed to be Correct; you Must Discard all TLPs2 Yes
• Bad TLP is Nullified3 (EDB Inserted and LCRC Inverted) and Transmitted Yes
Tx TLP Handling (128-bit, 256-bit Datapath configurations which can carry two TLPs per clock cycle
Instruct Core to Exit Error Mode by Writing to RASDP_ERROR_MODE_CLEAR_OFF Register Through DBI Yes
Uncorrectable Errors Propagate and Cause an Error in Some Subsequent Check Points (Error Pollution) Yes
Note: The controller attempts a best-effort recovery in RASDP Error Mode (after detection of an uncorrectable error). For more
information, see footnotes j, k, l, and m. Synopsys reserves the right to modify this best-effort behavior if deemed necessary.
Correctable8Error Handling
Feature Availability
Error Correction Enable/Disable Control (Per TX/RX Direction and Per-Layer) Yes
9
1. You can disable RASDP error mode by writing to the to RASDP_ERROR_MODE_EN_OFF register. This is not recommended.
2. In RASDP error mode, TLPs are not guaranteed to be correct. You must discard all TLPs when this signal is high.
3. The controller might nullify TLPs that were received prior to the bad TLP.
4. The controller might drop TLPs that were received prior to the bad TLP.
5. The controller implements a best-effort approach in accounting for credits under uncorrectable error conditions. However,
credit inaccuracies are unavoidable in such conditions. This might result in performance degradation or triggering of overflow
protection mechanisms.
6. 2-bit ECC and all parity errors.
7. The core only reports uncorrectable errors when it exits RASDP error mode.
8. 1-bit ECC errors.
9. If the controller is capable of single bit error correction, disabling ECC error correction does not change the nature of the
errors and their reporting. A single-bit error is reported as a correctable error although correction might be disabled.
Feature Availability
Error Statistics2
Reports Location of First and Last Errors (Correctable and Uncorrectable) Yes
3.9.5.2.5 Limitations†
ECC (datapath) No
Error injection No
ECC (datapath) No
Error injection No
1. When RAS is enabled RTRGT1 address width (FLT_Q_ADDR_WIDTH) can be either 32 or 64, other values are not
supported by the controller.
2. When an uncorrectable RAS.DP error is detected by the AXI logic, the following scenarios apply:
• If the payload data is corrupted but the bridge is functional, no reset is required to resume normal operation.
• If the header is corrupted and bridge is in an inconsistent state a hot/cold reset is required to resume normal operation.
3. RAM protection cannot be enabled without datapath protection.
4. The complete TLP payload data is protected, but only the address part of the header is fully protected inside the AXI
bridge. The remainder of the header (carried on the *_misc_info_* signals) is not protected everywhere inside the AXI
bridge and is routed without parity or ECC. It is however fully protected in the rest (native part) of the controller. The
applied countermeasures protect against unintentional hazards, but not necessarily against intentional threats (attacks) by
humans.
5. A single RASDP error might increment more than one counter.
• Silicon Debug Support (Control and Status of PIPE, Deskew, Ack/Nak, Reversal, FC, EQ, LTSSM, Replay)
Register Description
Group i
RST
EN
Event j
Lane k
event
Software Write
Event Counter
* Group 0
* Event 0
* Lane 0
EVENT_COUNTER_CONTROL_REG
▪
▪
▪
RST
EN
Software Read
event
Table 24. Event Counter Group #0 (4-bit Layer1 Error Counter Per-Lane)
Table 24. Event Counter Group #0 (4-bit Layer1 Error Counter Per-Lane) (continued)
Table 25. Event Counter Group #1 (8-bit Layer1 Error Counter Common-Lane)
0x00 Reserved -
0x01 Reserved -
0x02 Reserved -
0x03 Reserved -
0x04 Reserved -
0x07 Rx Recovery Request When the controller receives TS1 OS in L0(s) state.
Table 26. Event Counter Group #2 (8-bit Layer2 Error Counter Common-Lane)
Table 26. Event Counter Group #2 (8-bit Layer2 Error Counter Common-Lane) (continued)
Table 27. Event Counter Group #3 (8-bit Layer3 Error Counter Common-Lane)
0x00 FC Timeout -
1. Malformed TLP, FC & DL Protocol errors are excluded because of low frequency.
Table 28. Event Counter Group #4 (4-bit Layer1 Non-Error Counter Per-Lane)
Table 29. Event Counter Group #5 (32-bit Layer1 Non-Error Counter [RAM] Common Lane)
0x05 L1 Entry -
0x0B L2 Entry -
Table 29. Event Counter Group #5 (32-bit Layer1 Non-Error Counter [RAM] Common Lane) (continued)
0x0E Reserved -
Table 30. Event Counter Group #6 (32-bit Layer2 Non-Error Counter [RAM])
Table 31. Event Counter Group #7 (32-bit Layer3 Non-Error Counter [RAM])
0x04 Tx IO Write -
0x05 Tx IO Read -
0x09 Tx Atomic -
Table 31. Event Counter Group #7 (32-bit Layer3 Non-Error Counter [RAM]) (continued)
0x0F Rx IO Write -
0x10 Rx IO Read -
0x14 Rx Atomic -
Table 32. Error Injection Vendor Specific Extended Capability (VSEC) Registers
Register Description
.........other registers (e.g. Event Counter, Time-based Analysis, Error Injection) .........
Table 32. Error Injection Vendor Specific Extended Capability (VSEC) Registers (continued)
Register Description
Table 33. Time-based Analysis Vendor Specific Extended Capability (VSEC) Registers
Register Description
aux_clk
app_ras_des_tba_ctrl [1:0] = 01 (start)
TIMER_START = 1 (start) app_ras_des_tba_ctrl [1:0] = 10 (stop)
TIMER_START = 0 (stop) 0 0
TIME_BASED_ANALYSIS_CONTROL_REG
Counter
▪
▪
▪
32
Software Read
Counter TIME_BASED_ANALYSIS_DATA_REG
The counters measure For example, what percentage of time does the controller stay in L0 in a one second window (configurable
through TIME_BASED_DURATION_SELECT field. The results are undefined when the controller (PMC) is running on aux_clk.
Table 34. Time-based Analysis Counter Group #0 (32-bit Low-Power Cycle Counter ([RAM])
0x01 Tx L0s
0x02 Rx L0s
0x03 L0
0x04 L1
0x05 L1.1
0x06 L1.2
0x07 Config/Recovery
Table 35. Time-based Analysis Counter Group #1 (32-bit Throughput 4-DWORD Counter [RAM])
Table 36. Silicon Debug Vendor Specific Extended Capability (VSEC) Registers
Register Description
In addition, you can also use the registers in Table 37 that always exist regardless of parameter settings.
Output
rdlh_link_up
brdg_slv_xfer_pending
edma_xfer_pending
radm_xfer_pending
rtlh_rfc_upd
rtlh_rfc_data
radm_q_not_empty
radm_qoverflow
Output
cxpl_debug_info[63:0]
cxpl_debug_info_ei[15:0]
There is one set of common capability registers shared across all physical functions which can be accessed through each function.
The exception is the NEXT_OFFSET field in the capability header register.
3.9.6 Messages†
This section describes the processing of messages through the controller.
For a proper understanding of messages you should be familiar with Section 2.2.8, “Message Request Rules” of the PCI Express
Base Specification, Revision 4.0, Version 0.9.
• Messages (Msg/MsgD[5]) are posted transactions.
• Vendor Defined and PTM messages are Msg / MsgD.
• Set Slot Power Limit messages are MsgD.
• All other messages are Msg.
For more details, see Interrupts†.
RAM RX PIPE
RADM
iATU
PHY
CXPL Core
Indirect supply of any
4a
class of Msg/MsgD
RAM
Direct supply of any
4 AXI
class of Msg/MsgD
AXI
Bridge
XADM TX PIPE
Module
CPU (SLAVE)
RAM
Application Logic:
Tx Vendor Messages 2 Error Signalling
Application Logic:
Optional System Status/
13 PTM Request
Control Registers
Legacy PCI
7 SII: Interrupt Signals
Interrupt
MSG_GEN
Power PTM
1 SII: Power Management Signals
Management
12 DRS/FRS
Optional
Customer Logic
PMC
PCIe Protocol
Synopsys Specific
RAM RX PIPE
RADM
LBC
CDM Core
Registers
CXPL Core PHY
Slot
Capabilities
iATU
RAM DBI
Direct supply of any
4 AXI
class of Msg/MsgD
AXI
Bridge
Module XADM RAM TX PIPE
(SLAVE)
CPU
Application Logic:
Tx Vendor Messages 11 Set_Slot_Power_Limit
Application Logic:
Optional System Status/
Control Registers
MSG_GEN
Locked 13 PTM Response
6 SII: PM, Unlock, and Error Messages
Transaction
Power
1 SII: Power Management Signals PTM
Management
CLK/RST
10 OBFF SII: OBFF Message Generation
Optional
Customer Logic
PCIe Protocol
Synopsys Specific
For definitions of acronyms used for block and interface names, see Terms and abbreviations.
1 Power Management For more details, see For more details, see Power management†.
interface (Msg) Power management†.
4a Indirect Supply of For more details on generating Msg/MsgD from MWr/IOWr using an internal address
any class of message translation unit (ATU), see iATU outbound MSG handling†.
(Msg/MsgD)
For more details on the supported methods of Msg/MsgD generation, see Table 39 and
Table 40.
5 Vendor Defined (Msg1) The controller generates Vendor Defined messages in response to requests on the VMI
(see Vendor message interface (VMI)†.
8 Error Signaling from the The controller generates Error Signaling n/a
application (Msg) messages in response to application
requests on the SII app_err* I/O.
It is also possible to generate Error
messages through the client interfaces.
For more details, see items 4and 4a in
this table.
1. MsgD transmission not possible on Vendor Message Interface (VMI). For more details, see Vendor-defined message (VDM)
generation†. However, it is possible through (4).
• Direct supply of I/O and MEM TLPs at AXI bridge slave to be converted to VDM. The optional internal address translation unit
(iATU) can convert I/O and MEM TLPs to VDM TLPs. For more details, see iATU outbound MSG handling†.
You must use 64-bit addressing when you are using the Direct supply method of VDM generation. For more details, see Figure 18.
It is preferable to use the SII interface to send a VDM. The AXI bridge slave can also support message transmission of a VDM
without any modifications.
VMI The controller generates Vendor Defined messages in response to requests on the VMI (see Vendor
message interface (VMI)†)
1. When the “payload inhibit” feature of the iATU is used, then slv_wstrb does not need to be set. Similarly, for iATU header
and tag substitution; the iATU can be set up to fill these fields in the outgoing TLP.
3.9.6.1.3 Byte mapping of third and fourth message header DWORDs at I/O interfaces†
The following figure indicates the byte mapping between the message generation interfaces and the third and fourth DWORDs
of the message TLP header.
31
bytes 12-15
63
bytes 8-11
32
VMI
(ven_msg_data)
31
bytes 12-15
0
AXI
Slave
Core
Logic PIPE
63
1
32
bytes 8-11
31
0
0
0x0 0
bytes 12-15
Figure 18. Transmitted 3rd and 4th DWORD message header byte mapping at interfaces (with AXI bridge)
In 32-bit address AXI configurations; the controller transmits all '0's instead of slv_awmisc_info_hdr_34dw[63:32].
1 Power Management (Msg). For more details, see For more details, see Power management†.
Power management†.
3 Vendor Defined (Msg/MsgD). For more details, see Routing of received messages†
9 ATS Request (Msg). n/a See the PCI Express Address Translation
Services 1.1 Specification, January 26
ATS Invalidation 2009
Completion (Msg).
ATS Invalidate
8
AXI Request
Bridge RADM RX PIPE
AXI TRGT1
Module
(MASTER)
Slot Power
1a
Limit
Power
1
Management CLK/RST
Customer Logic
PCIe Protocol
Synopsys Specific
AXI
Bridge RADM RX PIPE
AXI TRGT1
Module
(MASTER)
Legacy PCI
5
Interrupt
10 DRS/FRS
SII: lnterrupt Signals
TX PIPE
LTR FRSQ
6
Request/Clear RAM
Application Logic:
Optional System Status/ SII: LTR Message Generation Signals
Control Registers
ATS Request/
9
Completion
CLK/RST
SII: Messages
Power
1
Management
Customer Logic
PCIe Protocol
Synopsys Specific
For definitions of acronyms used for block and interface names, see Terms and abbreviations.
The SII message reception interface provides the requester ID and message type (from the first and second TLP DWORDs) and
the contents of the third and fourth TLP DWORDs.
If you also want the message delivered on the TRGT1 (or AXI bridge Master) interface, then you must clear the corresponding filter
mask bit. For EP mode, Msg is message without payload. That is all messages except VDM with payload, set_slot_power_limit,
and ATS Invalidate request. For RC mode, Msg is message without payload. That is all messages except VDM with payload.
3.9.7 Interrupts†
The following section describes the processing of interrupts in the controller. You should be familiar with the different types
of interrupts as specified in Sections 6.1.1, “Rationale for PCI Express Interrupt Model”, 6.1.4, “Message Signaled Interrupt
(MSI/MSI-X) Support”, 6.1.2, “PCI Compatible INTx Emulation”, and 6.1.3, “INTx Emulation Software Model” of the PCI Express
Base Specification, Revision 4.0, Version 0.9.
A Tx A Tx
MWr MWr
D D
Message Generator Hi Hi
cfg_msi_pending[31:0]
cfg_msi_pending[31:0]
ven_msi_vector[4:0]
cfg_msi_mask[31:0]
cfg_msi_mask[31:0]
cfg_msi_addr[63:0]
cfg_msi_data[15:0]
ven_msi_grant
ven_msi_req
cfg_msi_en
cfg_msi_en
Your Your
Application Application
Logic Logic
3 3
MSI FSM MSI FSM
5 5
4 4
Clear Clear
Pending Pending
Bit Bit
An MSI-X interrupt is identical to an MSI, except that it: supports more than 32 vectors (2048) through the use of multiple address
and data pairs that are written by software to an MSI-X Table. Your application logic issues MSI requests through the MSI interface;
the controller then generates the corresponding memory write. Alternatively, your application logic can create the MSI MWr and
supply it on an AXI slave interface.
A Tx
MWr
D
Message Generator Hi
ven_msi_req
cfg_msix_en =1
cfg_msix_func_mask =0
N = cfg_msix_table_size[]
msix_addr[63:0]
msix_data[31:0]
cfg_msix_table_bir[2:0]
cfg_bar5_start/limit[31:0]
cfg_bar4_start/limit[63:0]
cfg_bar3_start/limit[31:0]
cfg_bar2_start/limit[63:0]
cfg_bar1_start/limit[31:0]
cfg_bar0_start/limit[63:0]
cfg_bar0_start/limit[63:0]
cfg_bar1_start/limit[31:0]
cfg_bar2_start/limit[63:0]
cfg_bar3_start/limit[31:0]
cfg_bar4_start/limit[63:0]
cfg_bar5_start/limit[31:0]
cfg_msix_pba_bir[2:0]
cfg_msix_table_offset[28:0]
cfg_msix_pba_offset[28:0]
5
MSI-X FSM
5 + +
Address Address
Priority Encoder 3 Decoder Decoder
D,A
rdata raddr r/waddr
Host Read
MSI-X Table PBA
Clear Access
(N) r/wdata
Pending
Bit mask
Host Write
1
Access
Set/clear pending
bit control
2 N
Local Interrupt Lines Your Application Logic Example for single -function non -VF.
Figure 22. Example MSI-X application logic using SII MSI interface (MSIX_CAP_ENABLE =1)
A Tx
MWr
D
Hi
cfg_msix_table_bir[2:0]
cfg_bar5_start/limit[31:0]
cfg_bar4_start/limit[63:0]
cfg_bar3_start/limit[31:0]
cfg_bar2_start/limit[63:0]
cfg_bar1_start/limit[31:0]
cfg_bar0_start/limit[63:0]
cfg_bar0_start/limit[63:0]
cfg_bar1_start/limit[31:0]
cfg_bar2_start/limit[63:0]
cfg_bar3_start/limit[31:0]
cfg_bar4_start/limit[63:0]
cfg_bar5_start/limit[31:0]
cfg_msix_pba_bir[2:0]
cfg_msix_table_offset[28:0]
cfg_msix_pba_offset[28:0]
4
MSI-X FSM
5 + +
D,A
Address Address
Priority Encoder 3 Decoder Decoder
2 N
Local Interrupt Lines Your Application Logic Example for single -function non -VF.
MSI/MSI-X requests created at the MSI interface are given higher Tx priority than traffic at the AXI slave interface.
To preserve ordering, you should supply MSI/MSI-X MWr requests at the AXI slave interface.
SWDSP SWUSP
radm_int_*
Interrupt Application Interrupt
Message Switch Logic Message
Decoding Generation
dp_int*
Msg
Assert_INTx/
Deassert_INTx
sys_int*
HotPlug Events
PCIe Controller
cfg_msix_en = 1
cfg_msix_func_mask = 0
N = cfg_msix_table_size[]
cfg_msix_table_bir[2:0]
cfg_bar5_start/limit[31:0]
cfg_bar4_start/limit[63:0]
cfg_bar3_start/limit[31:0]
cfg_bar2_start/limit[63:0]
cfg_bar1_start/limit[31:0]
cfg_bar0_start/limit[63:0]
cfg_bar0_start/limit[63:0]
cfg_bar1_start/limit[31:0]
cfg_bar2_start/limit[63:0]
cfg_bar3_start/limit[31:0]
cfg_bar4_start/limit[63:0]
cfg_bar5_start/limit[31:0]
cfg_msix_pba_bir[2:0]
cfg_msix_table_offset[28:0]
cfg_msix_pba_offset[28:0]
31:29 28:24 23:16 15 14:12 11 10:0
Rsvd PF VF Vf Active TC Rsvd Vector
MSIX_DOORBELL_OFF Register Field Layout
ELBI
MSIX_DOORBELL_OFF
Vector
A write to this Port Logic register
PF, TC, D,A
triggers an MSI-X generation event
VF
6
5 Start
MSI-X FSM
5 + +
0 Read the MSI-X Capability Structure registers through the DBI/Wire to get the value of MSI-X Table Size, Table BIR, Table Offset, PBA Offset, PBA Offset, and PBA BIR. Get the starting address of the
MSI-X Table as follows; MSI-X Table Start Address = Start Address of BARn + Table Offset ; where ‘n’ = Table BIR.
1 Populate the MSI-X TAble (by writing over the wire or DBI) with the required Message Address, Message Data, and Vector Control information for each entry
For example, to populate entry 0 of the MSI-X Table, perform four consecutive 32-bit writes from DBI/WIRE to ‘’MSI-X Table Start Address’’ with Data0 = Message Address, Data1 = Message
Upper Address, Data2 = Message Data, and Data3 = Vector Control Similarly to populate entry 2 write to ‘’MSI-X Table Start Address + 2’’.
2 Program the MSIX_ADDRESS_MATCH * port logic registers with the required address (not matching any iATU region, if iATU is enabled)
Program MSIX_ADDRESS_MATCH_LOW_OFF [0] = 1, to set the MSI-X Match Enable bit.
3 Issue a write from AXI Slave interface to the address programmed in MSIX_ADDRESS_MATCH_LOW_OFF and MSIX_ADDRESS_MATCH_HIGH_OFF. The write data should be provided in the
format specified in the MSIX_DOORBELL_OFF register.
4 If the address of the AXI Write request matches the address programmed in MSIX_ADDRESS_MATCH * registers, the write request is internally routed away from the controller’s normal
datapath to the MSIX_DOORBELL_OFF register, and 5 an MSI-X generation request is triggered.
8 if PCI_MSIX_FUNCTION_MASK field in PCI_MSIX_CAP_ID_NEXT_CTRL_REG is not set, the MSI-X Table RAM entry corresponding to the requested vector is read
• If Vector Mask of the MSI-X Table entry is set, the corresponding pending bit is set in PBA RAM 7 , and no MSI-X is generated.
• If Vector Mask of the MSI-X Table entry is not set, MSI-X generation 9 is initiated (using the MSI-X address and data of the MSI-X Table RAM entry.
Limitation Details
Limitation Details
ELBI • ELBI width must be 32-bit; this feature communicates with the rest of the controller using an internal extension
of the ELBI bus.
• All accesses by your host or local application to the RAMs must be 32-bits wide.
• The ELBI address range available for application registers is the full ELBI interface address range minus the
space in bytes claimed by the MSI-X tables, which is:
3 * (MSIX_TABLE_SIZE +1) * 16
3 * ((MSIX_TABLE_SIZE/64) +1) * 8
The exact addresses claimed depend on the programming of the MSI-X table and PBA offsets in the MSI-X
capability registers.
1. One value for all VFs and PFs in the controller. PFs cannot have different values.
conditions specified for an MSI memory write request, an MSI interrupt is detected. When this MWr is about to be driven onto the
AXI bridge master interface[7], it is dropped and never appears on the AXI bus.
The MSI interrupt is generated on msi_ctrl_int after the previous Posted transaction's AXI B response is received. It is then
synchronized with core_clk. Therefore, the subsequent NP write transaction might appear sooner than MSI interrupt in the AXI
mstr_aclk domain.
The iMSI-RX decodes the MSI MWr data payload to determine which endpoint device (EP) sent the MSI and which interrupt vector
the MSI corresponds to. When a valid interrupt has been decoded, the msi_ctrl_int output is asserted. This output remains
asserted when any MSI interrupt is pending. It is only de-asserted when there is no MSI interrupt pending.
3.9.7.2.3.1 Features†
• Provides support for up to eight EPs. Each supported EP has a set of interrupt enable, mask, and status
registers (MSI_CTRL_INT_*).
• Guarantees correct AXI ordering with respect to other inbound posted writes by generating the MSI interrupt only after your
application AXI slave acknowledges responses of previous posted TLPs.
• A maximum of 32 interrupts are supported per EP.
• Optional 32-bit register driven general purpose outputs (msi_ctrl_io[31:0]). For more details, see the
MSI_GPIO_IO_OFF register.
• Program the MSI Capability Lower 32 Bits Address Register (MSI_CAP_OFF_04H_REG) of every EP with one common
MSI address.
• The host CPU configures the iMSI-RX through the local DBI bus (or through CFG requests from the remote link partner).
— Program the iMSI-RX’s MSI_CTRL_ADDR_OFF and MSI_CTRL_UPPER_ADDR_OFF registers with the same value as
in MSI_CAP_OFF_04H_REG.
— Read the MSI capability of each EP to determine the number of vectors enabled in each EP and uses this information
to program the iMSI-RX’s interrupt enable register (MSI_CTRL_INT_0_EN_OFF). This register allows up to 32 MSI
interrupt vectors to be enabled within the iMSI-RX for a given EP. It is the responsibility of the host CPU to read
the contents of the Multiple Message Enable field in an EPs MSI capability structure and program that EPs Interrupt
Enable register in the iMSI-RX appropriately. For example when the Multiple Message Enable is 3b100 for endpoint
#0 (which corresponds to 16 enabled interrupt vectors), the host CPU should program MSI_CTRL_INT_0_EN_OFF
with 0x0000FFFF.
iMSI-RX is active and terminates all received MSI MemWr unless you deactivate it. iMSI-RX is deactivated when all of the eight
MSI_CTRL_INT_0_EN_OFF .... MSI_CTRL_INT_7_EN_OFF registers have a value of 0x0. The iMSI-RX is also deactivated when
it is not in RC mode (device_type !=0x4).
DECODE
32 4:0
Interrupt Vector
EP Number
7:5
Data Payload
DEMUX Inbound(Received)
MemWr
MSI Detected Address Match plus
other checks
MSI_CTRL_ADDR field in
MSI_CTRL_ADDR_OFF
MSI_CTRL_UPPER_ADDR field in
X8 MSI_CTRL_UPPER_ADDR_OFF
32 MSI_CTRL_INT_0_STATUS_OFF 1
X8 D Q msi_ctrl_int
32 32
S 32 1
x32
x32
32
32
R
MSI_CTRL_INT_0_MASK_OFF
x32
S (set) takes msi_ctrl_int_vec[7:0]
32 1 32
precedence
over R(reset)
MSI_CTRL_INT_0_EN_OFF from DBI write
data bus
• When the decoded interrupt vector is enabled and not masked, then the controller sets the corresponding bit in the iMSI-RX
Interrupt#0 Status Register (MSI_CTRL_INT_0_STATUS_OFF) and asserts the top-level controller output msi_ctrl_int.
This signal remains asserted until the host CPU clears the status bit by writing a 1 to the status bit. Writing a 0 has no effect.
• When any status bit remains set, then msi_ctrl_int remains asserted. The interrupt status register provides a status bit
for up to 32 interrupt vectors per endpoint. When the decoded interrupt vector is enabled but is masked, then the controller
sets the corresponding bit in interrupt status register but the it does not assert the top-level controller output msi_ctrl_int.
• When an MSI interrupt vector is received from an endpoint but that vector has not been enabled in the corresponding iMSI-RX
Interrupt#0 Enable Register (MSI_CTRL_INT_0_EN_OFF), then the controller does not set any bit in the interrupt status
register and it does not assert msi_ctrl_int.
• In addition, when no interrupts have been enabled in any of the eight interrupt enable registers, then all MSI detection logic
is disabled and valid MSI MWr request TLPs are not terminated in the bridge but are passed by the AXI master interface to
the AXI bus.
• The iMSI-RX Interrupt#0 Mask Register (MSI_CTRL_INT_0_MASK_OFF) allows the host to mask a given MSI interrupt
vector. When a MSI interrupt vector is received for a masked interrupt vector, then the controller sets the corresponding bit
in the interrupt status register but it does not assert msi_ctr_intl because the interrupt vector is masked.
• Note: This masking is local to the iMSI-RX and is not part of Per Vector Masking (PVM) in any of the downstream endpoints.
The contents of the interrupt mask and interrupt status registers are used to drive the msi_ctrl_int output.
• When any status bit is set and the interrupt vector is not masked, then the controller asserts msi_ctrl_int. As long as any
interrupt status bit is set and not masked, msi_ctrl_int remains asserted.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Endpoint #1 0 0 1 0 0 0 0 0
Endpoint #2 0 0 1 1 0 0 0 0
• Header Substitution replaces bytes 8 to 11 (for 3 DWORD header) or bytes 12 to 15 (for 4 DWORD header), inclusive, of the
outbound TLP header.
• Tag Substitution of the outbound TLP tag field.
• Function number bypass mode to allow function number information to be supplied from your application transmit interface
while translating the address and other attributes of the TLP.
• DMA bypass mode to allow TLPs which are initiated by the embedded DMA engine, to pass through the iATU untranslated.
The default behavior of the ATU when there is no address match in the outbound direction or no TLP attribute match in the inbound
direction, is to pass the transaction through.
and the TYPE, TD, TC, AT, TH, PH, ST, Function Number, and ATTR header fields are replaced with the corresponding fields
in the IATU_REGION_CTRL_1_OFF_OUTBOUND_0 register. When your application address field matches more than one of the
address regions, then the first enabled region to be matched is used. For details on what happens when there is no address match,
see No address match result†. This operational mode is called Address Match mode and is always used for outbound translation.
Figure 27 provides more details on this translation process.
The iATU does not translate DBI requests.
63 End Address 0
Region #n
Region #n
63 0
0x0000
63 Start Address 0 31 0 31 12 0
Upper Target Address Lower Target Address
0x0000
31 0 31 12 0
Upper Base Address Lower Base Address
Figure 27. 64-bit region mapping: outbound and inbound (Address Match mode); INCREASE_REGION_SIZE=0
[8] When the Region Enable bit of the Region Control 2 register is ‘0’, then that region is not used for address matching.
Upper Upper
Base Limit Untranslated Translated Region Size =
Address Address Limit Address Address Map Address Map End Address - Start Address
31 # 0 31 12 0
0xFFFF
63 End Address 0
Region #n
Region #n
63 0
0x0000
63 Start Address 0 31 0 31 12 0
Upper Target Address Lower Target Address
0x0000
31 0 31 12 0
Upper Base Address Lower Base Address
Figure 28. 64-bit region mapping: outbound and inbound (Address Match mode); INCREASE_REGION_SIZE=1
CAUTION
The combination of region size and number of regions must not consume the maximum space that is addressable
with your 32-bit or 64-bit system address.
31 End Address 0
The resulting translated address
Region #n space can be 64-bits or 32 bits.
Region #n
63 0
0x0000
31 Start Address 0 31 0 31 12 0
Upper Target Address Lower Target Address
0x0000
31 12 0
Lower Base Address
Figure 29. 32-bit region mapping: outbound and inbound (Address Match mode)
When the Virtual Function Active field of the IATU_REGION_CTRL_3_OFF_OUTBOUND_i register is set, then the function part
of the requester ID[10] field of the TLP is formed from the function number of the IATU_REGION_CTRL_1_OFF_OUTBOUND_i
register, VF Offset, VF Stride, Primary Bus number, and the 8-bit[11] Virtual Function Number field of the
IATU_REGION_CTRL_3_OFF_OUTBOUND_i register.
As an example
then
To handle eight functions (as the previous example indicates), you should use a 19-bit wide region size.
For CFG transactions created directly by your application (as opposed to the iATU), you must ensure that the BDF field does not
match any programmed iATU address region or else unintentional type translation could occur.
[10] When SR-IOV is enabled, the Alternative Routing-ID Interpretation (ARI) scheme is used. This uses the 8:0:8 bit BDF format,
where the device number is assumed to be zero.
[11] The maximum size of this field is 8 bits, but the actual size depends on the number of VFs used as denoted by 2NVF_WD
translated address). When the original address and the translated address are of a different format then the iATU ensures that
the TLP header size matches the translated address format.
transactions over the AXI bridge which is normally inefficient requiring a very large iATU region. Enabled using the
HEADER_SUBSTITUTE_EN field in IATU_REGION_CTRL_2_OFF_OUTBOUND_i.
The detailed descriptions for each register are given in the register descriptions elsewhere in this document.
Table 47. Example: Address Table for Accessing iATU Outbound Region 1 Configuration Registers
When the bridge slave interface clock (hresetn or slv_aclk) is asynchronous to the PCIe native controller clock (core_clk), you
must not update the iATU registers while operations are in progress on the AXI bridge slave interface. The iATU registers are in the
core_clk clock domain. The register outputs are used in the AXI bridge slave interface clock domain. There is no synchronization
logic between these registers and the AXI bridge slave interface.
translation, your application address is passed from the TLPs directly through the TRGT1 application interface. You can program
the iATU to implement your own inbound address translation scheme without external logic.
• Programmable Match mode operation for MEM, I/O, CFG, and MSG TLPs. No translation for completions.
• Selectable BAR Match mode operation for I/O and MEM TLPs.
— TLPs destined for the internal CDM (or ELBI) in an upstream port are not translated.
— TLPs that are not error-free (ECRC, malformed and so on) are not translated.
• Selectable VF BAR Match mode operation for I/O and MEM TLPs which target VF BARs.
— The VF BAR match mode enables all VFs in a PF which match a BAR to be matched with a single ATU region instead
of an ATU region per VF.
• Programmable TLP header field matching.
— TYPE/TD/TC/AT/ATTR/MSG-Code/TH/PH/ST
— Function Number
• Multiple (up to 256) address regions programmable for location and size.
• Programmable enable/disable per region.
• Automatic FMT field translation between three DWORDs and four DWORDs for 64-bit addresses.
• Invert Address Matching mode to translate accesses outside of a successful address match.
• ECAM Configuration Shift mode to allow a 256 MB CFG1 space to be located anywhere in the 64-bit address space.
• Supports regions from 4 KB to 16 ZB in size.The minimum and maximum region sizes are 4 KB and 1 TB, respectively. Smaller
region sizes consume extra decode logic.
• Single Address Location to allow all TLPs to be translated to a single address location.
• Msg Type Match Mode to allow matching of any TLP of type Message.
The default behavior of the ATU when there is no address match in the outbound direction or no TLP attribute match in the inbound
direction, is to pass the transaction through.
3.9.8.7.1 Overview†
The main difference between inbound and outbound iATU operation is that the TLP type is never changed in the inbound
direction. Instead, the type field is used for more precise matching. Other fields can also be optionally used to further refine the
matching process.
Another difference is that for MEM and I/O TLPs, you can select between address matching (as used in outbound operation)
or BAR matching. Normally, an endpoint uses BAR match mode, and a root complex uses address mode as an root complex
normally does not implement BARs.
The following translation rules and limitations apply:
• When there is no match, then the address is untranslated. In addition
• TLPs destined for the internal CDM or ELBI in an upstream port are not translated.
• TLPs that are not error-free (ECRC, malformed and so on) are not translated.
• Address translation of all TLP types (MEM, I/O, CFG, and MSG) except completion is supported in Address Match mode. In
BAR Match mode, only translation of I/O and MEM is supported.
The setting of the MATCH_MODE field in IATU_REGION_CTRL_2_OFF_INBOUND_0 determines how iATU inbound matching is
done for each TLP type.
When the TLP address field matches more than one of the four address regions, then the first (lowest of the numbers from 0 to
3) enabled region to be matched is used.
[12] When the Region Enable bit of the Region Control 2 Register is 0, then that region is not used for address matching.
Region #x
63 0
0x0000
63 Start Address 0 31 0 31 * 0
Upper Target Address Lower Target Address
eATU Region#x Register eATU Region#x Register
63 0
BAR#x
Figure 30. iATU address region mapping: Inbound (BAR match mode), 64-bit BAR
In address match mode, when the address range does not match one of its BAR ranges in an upstream port, then the device
rejects the request with unsupported request (UR) completion status and no translation occurs. When the PCIe controller is
operating with 32-bit BARs, the operation is defined as in Figure 31.
Region #x
63 0
0x0000
31 Start Address 0 31 0 31 * 0
Upper Target Address Lower Target Address
eATU Region#x Register eATU Region#x Register
31 * 0
BAR #x % is determined by BAR#x Mask Register
Figure 31. iATU address region mapping: Inbound (BAR match mode), 32-bit BAR
associated
PFi VF0 VF1 VFj
PF
1 x iATU region
region region
limit limit
address address
When SR-IOV is enabled, the PF function number matching FUNC_NUM_MATCH_EN field in the
IATU_REGION_CTRL_2_OFF_INBOUND_i register is made sensitive to VF BAR matching. Therefore, PF function number
match will be successful if any of the following occur:
• VF_MATCH_EN =1: When the Function Number TLP field matches the Function Number field of the iATU Control 1 Register
and when there is a successful VF BAR match.
• FBAR_MATCH_MODE_EN =1: When the Function Number TLP field matches the Function Number field of the iATU Control 1
Register and when there is a successful VF BAR match.
• VF_MATCH_EN = VFBAR_MATCH_MODE_EN =0: When the Function Number TLP field matches the Function Number field of
the iATU Control 1 Register and when there is not a successful VF BAR match.
[13] For more details, see Figure 2-18 Request Header Format for Configuration Transactions in Section 2.2.7 Memory, I/O, and
Configuration Request Rules of the PCI Express Base Specification.
Mode Description
Address Match The third and fourth header DWORDs are treated as an
address and are compared against the iATU Region Base
and Limit Address registers. For vendor defined messages
this allows specific messages to be filtered into memory at
the target address. The Upper Base address should be set to
Bus.Device.Function (BDF) and Vendor ID. The Lower Base
address can be used as a filter for specific messages.
Vendor ID Match This mode is relevant for ID-routed vendor defined messages.
The iATU ignores the routing ID (BDF) in bits [31:16] of the
third DWORD of the TLP header1, but compares it against the
vendor ID in bits [15:0] of the third DWORD of the TLP header
(bytes1 10 and 11). This allows vendor defined messages
to be filtered against specific vendor IDs without needing to
know the BDF number which might vary depending on the PCI
topology. Bits [15:0] of the Region Upper Base register should
be programmed with the required vendor ID as follows:
1. In Figure 2-25 Header for Vendor_Defined Messages in Section 2.2.8.6, Vendor_Defined Message of the PCI Express
Base Specification.
3.9.8.9.1 Overview†
You can access the iATU registers through the DBI interface or through BAR Matched Mem/IO requests. The following registers
are used for programming the iATU.
Table 52. Example: address table for accessing iATU inbound region 1 configuration registers
When the bridge slave interface clock (hresetn or slv_aclk) is asynchronous to the PCIe native controller clock (core_clk), you must
not update the iATU registers while operations are in progress on the AXI bridge slave interface. The iATU registers are in the
core_clk clock domain. The register outputs are used in the AXI bridge slave interface clock domain. There is no synchronization
logic between these registers and the AXI bridge slave interface.
3.9.10.1 Overview†
The controller supports two categories of PM operations to control the device state (D-state) and link state.
Table 53. Power/clock supply status in low-power states of interest (DSP or single function non-ARI USP)
D-State Permissible Link State Change Active Power Active Clock pipe_clk PHY State
Quiescent Link Trigger (see Table Supplies Supplies1 core_clk
States 54)
L0S
L1 ON P1
1. REFCLK is the platform reference clock for the PHY TX PLL. AUXCLK is the platform low-power clock.
2. Transitioned from D3hot to D3cold by removal of Vmain. D3cold is entered by the controller in response to
PME_Turn_Off MSG
3. A function can be transitioned from L2 to L3 by the removal of Vaux.
D0 is divided into two distinct substates, the uninitialized substate and the active substate. When a component comes out of
conventional reset or FLR, it defaults to the D0uninitialized state. A function enters the D0active state whenever any of the functions
Memory Space Enable, I/O Space Enable, or Bus Master Enable bits have been enabled by system software.
Port Type Can Trigger L0/L0s Can Trigger L1 Entry Can Trigger L2/L3 Entry
Entry
1. You can prevent/delay the controller from entering L1-ASPM (not L1-PCI-PM) by asserting app_xfer_pending.
2. USP application asserts the app_req_entr_l1 input. A DSP controller ignores this input.
3. DSP can indirectly initiate L1 by writing non-D0 value to PMCSR of the USP link partner. A non-D0 write to the USP PMCSR
always triggers a transition to L1.
4. L2/L3 entry is initiated after the RC PM software transitions a device into a D3 state and subsequently instructs the DSP to
transmit PME_Turn_Off message TLP to initiate the removal of power and clocks.
Table 55 indicates the different levels of power savings (obtained by switching off circuits outside the controller) that can be
expected from executing L1 in different ways. Higher exit latencies are associated with higher power savings. Power saving and
latency are PHY implementation specific, and may be determined by consulting your PHY documentation.
Table 55. L1 execution modes and permissible power states of PHY circuits
L1 without Clock PM ON ON ON
using the Link Capability registers. You set these by writing to these registers or by setting the DEFAULT_L0S_EXIT_LATENCY
and DEFAULT_L1_EXIT_LATENCY parameters.
Device Control Register Aux Power PM Enable Enable aux power support for a The PCI Express Base
function. Specification, Revision 4.0,
Version 0.9, specifies that the
value of this bit must be
preserved in the D3cold state. In
L2 when power is removed the
CDM loses its context. This bit is
preserved in the PM under AUX
power and fed back to the CDM.
PMCSR_BSE PowerState Indicates the D-state of a function. Used for entry to low power
states.
Link Capabilities Register Clock Power If set to 1 this indicates that an Used for the removal of reference
Management upstream port tolerates the removal clock in L1 or L2/L3 Ready.
of reference clock when the link is in
L1 or L2/L3 Ready.
AUX_CLK_FREQ_OFF AUX_CLK_FREQ The frequency of the aux_clk in This field is used to scale certain
MHz. timers in the power management
block. It needs to be shadowed
since the CDM is reset when
power is removed in L2.
GEN3_RELATED_OFF GEN3_ZRXDC_NONC GEN3 Receiver impedance zrx-dc This bit enables a 100ms timer
OMPL not compliant. which can trigger exit from L1.
3.9.10.2.1 Overview†
L0s is a low-power state enabled by ASPM. ASPM controls entry into L0s for the transmitter. The remote device controls entry
into L0s for the receiver.
[16] Created by your application, or remote link partner, or the embedded DMA. DBI requests do not prevent L1 entry because
the CDM registers (including DMA) are clocked off aux_clk_g.
— Outstanding/expected application (at the AXI master interface when present) completions
• There are no pending requests at the AXI slave interface, that is, slv_a*valid must be 0.
• There are no pending DMA transfers.
[17] Created by your application or remote link partner, or the embedded DMA. DBI requests do not prevent L1 entry because
the CDM registers (including DMA) are clocked off aux_clk_g.
For more details, see Chapter 5.4.1, "Active State Power Management (ASPM)" of the PCI Express Base Specification, Revision
4.0, Version 0.9.
NOTE
When you use the PCIe controller in EP mode, you must write 0b to PMCSR[POWER_STATE]
after you enable the DMA doorbell (see DMA_WRITE_DOORBELL_OFF[WR_DOORBELL_NUM] or
DMA_READ_DOORBELL_OFF[RD_DOORBELL_NUM]). If you do not do this, the link reenters the L1 state
and TLPs are blocked on the link.
• Your application (DSP) initiates link disable, or link retrain (by setting PCIE_CAP_LINK_DISABLE or
PCIE_CAP_RETRAIN_LINK field in LINK_CONTROL_LINK_STATUS_REG to 1).
• Your application (DSP) initiates hot reset by any of these:
— Setting RESET_ASSERT field in PORT_LINK_CTRL_OFF to 1
— Setting SBR field in BRIDGE_CTRL_INT_PIN_INT_LINE_REG to 1
— Toggling app_init_rst
[18] PME_ENABLE bit is set in CON_STATUS_REG, and the PME_SUPPORT bit is set in CAP_ID_NXT_PTR_REG for the
corresponding D-state for which the function is currently in.
• Your application requests a speed change (by setting DIRECT_SPEED_CHANGE field in GEN2_CTRL_OFF to 1).
• Your application requests link width change (by setting DIRECT_LINK_WIDTH_CHANGE field in
MULTI_LANE_CONTROL_OFF is set to 1).
• Your application (USP) requests transmission of VDM, MSI/MSIX[19], or LTR message.
• Your application (DSP) requests transmission of Unlock message.
MSIX accesses cannot be performed when the controller is in L1. To perform MSIX access, the controller must be woken up
from L1.
The CDM space is accessible in L1, but some CDM register bits will not produce the desired results.
Writing to CDM register bits which trigger LTSSM state transitions in L1 will not have the desired effect, because the LTSSM clock
is not running in L1.
Any DMA register can be accessed in L1 because the DMA registers are clocked on aux_clk_g.
When core_clk is removed in L1 substates or L1 clock power management, aux_clk_g is used.
The core acknowledges a maximum of one read and one write Doorbell during L1.
Doorbelling any DMA read/write channel triggers L1 exit.
Writing to other DMA registers does not trigger L1 exit.
During L1 exit, there is a latency in restoring the core_clk. A second read or write Doorbell is not acknowledged until core_clk
is restored.
3.9.10.4.1 Overview†
L2/L3 entry is initiated[20] after the RC calls power management software to initiate the removal of power and clocks. USPs of
devices in D0, D1, D2, and D3hot must respond to the receipt of a PME_Turn_Off MSG TLP by transmitting a PME_TO_Ack MSG
TLP. The device must then request a link transition to L2/L3_Ready. L2/L3_Ready is a bi-directional link power down state. If your
application is not ready to be shut-down, it must keep the app_ready_entr_l23 input de-asserted. This causes the controller
to delay sending the PM_Enter_L23 DLLP and thereby stalling the negotiation handshake that uses the following DLLPs:
• PM_Enter_L23
• PM_Request_Ack
When your application is eventually ready for transitioning to D3cold, that is, loss of main power and reference clock, L2/L3_Ready
is entered and the downstream device begins preparation for the power and clock removal. After main power has been removed,
the link transitions to L2 if Vaux is provided, or it transitions to L3 if no Vaux is provided.
[19] This exit mechanism does not apply to legacy interrupts. Before requesting the transmission of a legacy interrupt the
application should use an existing L1 exit mechanism.
[20] In preparation for removing the main power source, your RC application asserts the apps_pm_xmt_turnoff input which
causes the RC to broadcast the PME_Turn_Off MSG TLP to all USPs.
NOTE
As the PCIe specification states, this mechanism is intended to be activated only when there is no reasonable
expectation that the completion is returned, and should never occur under normal operating conditions.
Table 57. Comparison of PCIe specification and Synopsys PCIe core completion timeout ranges
Range Encoding Spec minimum Spec maximum PCIe controller PCIe controller
minimum maximum
Default 0000b 50 µs 50 ms 28 ms 44 ms
A 0001b 50 µs 100 µs 65 µs 99 µs
B 0101b 16 ms 55 ms 28 ms 44 ms
[21] PME_ENABLE bit is set in CON_STATUS_REG, and the PME_SUPPORT bit is set in CAP_ID_NXT_PTR_REG for the
corresponding D-state for which the function is currently in.
Table 57. Comparison of PCIe specification and Synopsys PCIe core completion timeout ranges (continued)
Range Encoding Spec minimum Spec maximum PCIe controller PCIe controller
minimum maximum
D 1110b 17s 64 s 38 s 58 s
TLP Filtering
P
TRGT 1
CXPL
Received CPL
Routing NP
Processing
RBYP
CPL Message
Processing
RTRGT0
MSG
ERR
MSG
DBI
LBC CFG Data CDM
ELBI
The following general rules apply to all incoming TLPs that are not malformed. By default:
• For a function in device power states D1, D2, and D3hot, the controller only accepts CFG and MSG requests TLPs for that
function. All other incoming request types for that function are treated as unsupported requests (UR).
• When the controller detects an error in a received TLP, it normally performs the following:
— Discards the TLP
— Generates a completion (for non-posted requests) with the completion status set to CA or UR
— Sets the status in the PCI-compatible Status register
— Sets the status in the AER registers (when you enable AER)
— Generates an error message (upstream port only)
• All error-free MSG requests are decoded internally, signaled on the SII interface and then dropped. When you want to have
the decoded message also sent to the application interface, then see Routing of received messages†.
For more details on advanced filtering, see Advanced filtering and routing of TLPs†.
Valid Full • The controller sets the Uncorrectable Error Status Register according to the First
Error Pointer that is associated with the rejected TLP.
• The Header log can be cleared or updated to the next stored header log, if one
exists, by writing to the bit of the Uncorrectable Status Error Register pointed to
by the First Error Pointer.
• This applies to both when a normally displayed TLP Header is present in
the Header Log Register or when an overflow condition is shown on the
Uncorrectable Status Error Register.
[22] For non-posted TLPs, this filter result also determines the status of the completion that the controller sends back to the
requester.
Address within a BAR that is configured to TRGT0 and TLP DW CA1/ML CA1/ML MLF
length > 1. F F
TAG error (non-pad zero for reserved TAG bits MA/TA MLF
Table 59. Result of filtering rules applied to all TLPs: EP mode (continued)
CPL received with CRS status and CPL is not a pending MLF
configuration request
A complete list of the filtering checks can be referenced in the descriptions of Symbol Timer and Filter Mask 1 register
(SYMBOL_TIMER_FILTER_1_OFF) and Filter Mask 2 register (FILTER_MASK_2_OFF).
Table 60. Result of filtering rules applied to request TLPs and CPL TLPs: RC mode
Table 60. Result of filtering rules applied to request TLPs and CPL TLPs: RC mode (continued)
TAG error (non-pad zero for reserved TAG bits MA/TA MLF
A complete list of the filtering checks can be referenced in the descriptions of Symbol Timer and Filter Mask 1 register
(SYMBOL_TIMER_FILTER_1_OFF) and Filter Mask 2 register (FILTER_MASK_2_OFF).
• CFG requests are routed to TRGT0 and then to CDM through the LBC.
• BAR-matched MEM and I/O requests are routed to TRGT1.
• MSG requests are decoded internally, signaled on the SII interface and then terminated.
core
config CDM TRGT0 CFG
data LBC
TRGT1 MEM/IO
CXPL
Address/Type Check
BAR
TRGT1
SII MSG
Figure 34. Default request TLP routing (assuming no TLPs with CA/CRS/UR error status)
core
config CDM
data TRGT0 0
LBC
TRGT0 0 DMUX CFG
ELBI
(external
DMUX 1
application
registers) registers address >
TRGT1 1 CONFIG_LIMIT
TARGET_ABOVE_CONFIG_LIMIT
TRGT0 0
DMUX MEM/IO
TRGT1 1 CXPL
Address/Type Check
BAR
MEM_FUNC#_BAR#_TARGET_MAP
MEM_FUNC0_BAR1_TARGET_MAP
MEM_FUNC0_BAR0_TARGET_MAP
TRGT1
SII MSG
core
config CDM TRGT0 CFG0
data LBC
TRGT1 CFG1
TRGT1 MEM/IO
CXPL
Type-1 Mem
& IO Base
& Limit
Checks
TRGT1 MEM
BAR Address
Check
BAR
TRGT1
SII MSG
The next table shows the applicability of routing rules for request TLPs, and indicates whether the destination is as stated by the
rule when the conditions of the rule are met.
In many cases, the standard routing rules can be masked or ignored by setting the corresponding bit in the Symbol Timer and Filter
Mask 1 register (SYMBOL_TIMER_FILTER_1_OFF) and Filter Mask 2 register (FILTER_MASK_2_OFF).
By default, when the controller detects an error[23] in a received TLP, it normally performs the following:
• Discards the TLP
• Generates a completion (for non-posted requests) with the completion status set to CA or UR
• Sets the status in the PCI-compatible Status register
• Sets the status in the AER registers (when you enable AER)
• Generates an error message (upstream port only)
Notation of routing results:
• No: destination is not as specified in rule, even when conditions of rule are met
• Yes: destination is as specified in rule, when conditions of rule are met
• <blank>: Routing rule does not apply to TLP type
[23] Excluding TLPs targeted for forwarding (and not for local resources) that have ECRC errors.
When a request is filtered with SU status, and is in BAR range, Yes Yes No Yes
MEM_FUNC#_BAR#_TARGET_MAP parameter determines
the destination.
When a request is filtered with UR/CA/CRS status, and the Yes Yes Yes Yes Yes Yes Yes
DEFAULT_TARGET field is 0, the TLP is dropped. For NP
requests, a CPL is also generated.
When a request is filtered with UR/CA/CRS status, and the No No Yes No Yes Yes Yes
DEFAULT_TARGET field is 1, the TLP is dropped.
When a request is filtered with UR/CA/CRS status, and Yes Yes No Yes No No No
the DEFAULT_TARGET field is 1, the destination is
TRGT1 interface.
When a CFG request is filtered with SU status and the CFG Yes
register address is < CONFIG_LIMIT, TRGT0 interface is
the destination.
When a request is filtered with SU status, and is not in BAR Yes Yes No Yes
range, TRGT1 is the destination.
When a request is filtered with SU status, and is in BAR range, Yes Yes No No
MEM_FUNC#_BAR#_TARGET_MAP parameter determines
the destination.3
When a request is filtered with UR/CA status, the TLP is Yes Yes Yes Yes Yes Yes Yes
dropped. For NP requests, a CPL is also generated.
Table 62. Routing rules for request TLPs (RC mode) (continued)
3.9.14.5 Processing illegal CFG TLPs, and CFG1-CFG0 conversion in each PCI Express port type†
Routing IDs, requester IDs, and completer IDs are 16-bit identifiers traditionally composed of three fields: an 8-bit bus number,
a 5-bit device number, and a 3-bit function number. Configuration requests always move downstream, and never travel across a
peer-to-peer connection. An RC or SW downstream port (DSP) never receives configuration requests.
3.9.14.5.1 RC†
3.9.14.5.1.2 Conversion†
The controller never does conversion of CFG1 to CFG0 at your application transmit interface, or in the controller. Your application
must do the conversion where necessary.
3.9.14.5.2 EP†
The following steps show how you can initiate link resizing:
1. Ensure the link is in the L0 LTSSM state.
2. Program the TARGET_LINK_WIDTH[5:0] field of the MULTI_LANE_CONTROL_OFF register.
3. Program the DIRECT_LINK_WIDTH_CHANGE[24] field of the MULTI_LANE_CONTROL_OFF register.
[24] The controller clears the contents of this register after it has accepted the request.
LTSSM Auto Reverse LTSSM Auto Flip Manual Flip rx_lane_flip_en =1/
(Config) (Detect) tx_lane_flip_en =1
6 6
2
5 5
1
4 4 Logical Lane 0
0
Remote Link
3 3 Partner
2 2
1 1
Step Action
1 Finish the functional reset of the chip. See the chip-specific SerDes information in the chip reference manual for the
exact steps to do this.
2 Finish the reset of the SerDes subsystem. See the chip-specific SerDes information in the chip reference manual for
the exact steps to do this.
3 If your application requires programming of the CDM registers, program these registers.
Step Action
4 If you want to change to the Gen2 speed rate (5.0 Gbps) after linkup, write a 1 to
GEN2_CTRL_OFF[DIRECT_SPEED_CHANGE].
Step Action
4 Determine the BAR0 size based on the bits that are still zero.
For example, if you read back BAR0=FFF0_0000h, it means that the size of the BAR is F_FFFFh, or 1 MB.
Step Action
1 Write a 1 to COMMAND[BUS_MASTER_EN].
2 Write a 1 to COMMAND[MEM_SPACE_EN].
NOTE
RC can program the EP DMA using CfgWr or MWr (when ENABLE_MEM_MAP_PL_REG=1), but the EP cannot
program the RC DMA over the wire.
In linked-list mode, the DMA fetches the transfer control information (called channel context) for each transfer (block) from a list
of DMA elements that you have constructed in local memory.
You can use the DMA with the AXI bridge, in which case the DMA is located between the native PCIe controller and the AXI
bridge module.
Feature Supported
ARI Yes
SR-IOV Yes
OBFF Yes
Feature Supported
Atomic ops No
Datapath and RAM protection (for limitations, see RAS data protection (DP)†) Yes
Automatic flushing/reset of bridge (AXI configurations) when link goes down Yes
1. The DMA identifies and decodes IDO bit from the TLP bit stream and passes on the information to the application through the
AXI bridge. However, the DMA cannot explicitly set the IDO bit of the TLP header.
3.11.3 Limitations†
The following table identifies the limitations when using the DMA.
Limitation Note
Memory DMA traffic only I/O and Type 0 or Type 1 configuration DMA transfers are
not supported.
A DMA write and read channel operate independently to maximize the performance of the DMA read and write data transfers over
the PCIe link. When you configure the DMA with multiple read channels, then it uses a weighted round robin (WRR) arbitration
scheme to select the next read channel to be serviced. The same applies when you have multiple write channels.
DMA Write
Local
Source 1
Memory
re
ad
DMA
re
sp
2 Write
Channel
3
write
Remote
Destination
Memory
DMA Read
Local
Indicates TLP type
Destination
conversion by the
Memory 3
DMA Channel
wr
ite
DMA
Read
Channel
1
read
Remote
cpl Source
Memory
2
[25] This limit is set by the DMA read buffer segment size. For more details, see Read buffer†.
The design sometimes caches the context to increase performance. Therefore these registers might contain a delayed snapshot
of the actual DMA channel state.
You program the channel context information and other DMA control registers directly with the local CPU through the DBI or
remotely over the PCIe link. Some of the registers are implemented in a high-speed wide interface context RAM.
NOTE
◦ The IMWr address and data do not come from the MSI PCIe capability registers but from the PCIE_DMA
register descriptions.
◦ For an upstream port, your software must program these registers with the same information that it is using
to program the MSI/MSI-X capability for the function that is associated by your software with that channel in
a multifunction setup.
◦ You only need to setup these registers at initialization, and not for every DMA transfer.
• The relaxed ordering (RO) bit is automatically set to zero in the TLP header of all IMWr’s so that subsequent MWr TLPs do
not arrive at the remote device before the IMWr.
For more information on interrupt handling, see the descriptions of the DMA interrupt registers and Programming examples†.
The interrupt handling mechanism is different for linked list (LL) mode (than non LL mode), and there are also some differences
between the read and write channels.
DMA Write
Abort Error Abort Interrupt
Write Channel Status and DMA Write Interrupt
Interrupt Status Register
Generation Transfer Done
(DMA_WRITE_INT_STATUS_OFF)
2 2
Write Channel #0 S Q 2 1
Channel Context edma_int[*]
Control Register DMA Write x2
2
(DMA_CH_CONTROL1_OFF_WRCH_0) Done Interrupt R
2
D S(set) takes
precedence *There is one output interrupt bit per channel on
Local Interrupt
over R(reset) edma_int[], upto a maximum of
Enable (LIE)
CC_NUM_DMA_RD_CHAN+CC_NUM_DMA_WR_CHAN
Remote Interrupt
Enable (RIE)
D D
LOCAL interrupt
REMOTE interrupt (IMWr)
En
(1) DMA Write Done Write Channel
IMWr Address Register Remote Done Interrupt
IMWr Generator Done
MWr (1)
DMA_WRITE_DONE_IMWR_LOW_OFF
(2) DMA Write Channel #0 PCIe Core Tx DMA_WRITE_DONE_IMWR_HIGH_OFF
IMWr Data Register
MWr (2)
DMA_WRITE_CH01_IMWR_DATA_OFF
Write Channel Abort
DMA Write Abort Remote Abort Interrupt (3)
IMWr Generator DMA_WRITE_ABORT_IMWR_LOW_OFF
(3) IMWr Address Register
DMA_WRITE_ABORT_IMWR_HIGH_OFF
En
Figure 39. Write interrupt generation, non-linked-list mode, shown for write channel #0
S(set) takes
Abort Errors 5 precedence
Read Channel Status and over R(reset)
Interrupt
Generation Transfer Done
D D
LOCAL interrupt
REMOTE interrupt (IMWr)
En
(1) DMA Read Done Read Channel
IMWr Address Register Remote Done Interrupt
IMWr Generator Done
MWr (1)
DMA_WRITE_DONE_IMWR_LOW_OFF
(2) DMA Read Channel #0 PCIe Core Tx DMA_WRITE_DONE_IMWR_HIGH_OFF
IMWr Data Register
MWr (2)
DMA_WRITE_CH01_IMWR_DATA_OFF
Read Channel Abort
DMA Read Abort Remote Abort Interrupt (3)
IMWr Generator DMA_WRITE_ABORT_IMWR_LOW_OFF
5 (3) IMWr Address Register
DMA_WRITE_ABORT_IMWR_HIGH_OFF
En
Figure 40. Read interrupt generation, non-linked-list mode, shown for read channel #0
The registers referenced in Figure 39 and Figure 40 that are related to error and interrupt handling are described in PCIE_DMA
register descriptions.
En
2 (1) DMA Write Done Write Channel
IMWr Address Register Remote Done Interrupt
DMA Write Linked List Error Enable Register IMWr Generator Done
(DMA_WRITE_LINKED_LIST_ERR_EN_OFF)
MWr (1)
DMA_WRITE_DONE_IMWR_LOW_OFF
D (2) DMA Write Channel #0 PCIe Core Tx DMA_WRITE_DONE_IMWR_HIGH_OFF
LL Remote Abort IMWr Data Register
Interrupt Enable MWr (2)
DMA_WRITE_CH01_IMWR_DATA_OFF
(LLRAIE) Abort
Write Channel
DMA Write Abort Remote Abort Interrupt (3)
IMWr Generator DMA_WRITE_ABORT_IMWR_LOW_OFF
(3) IMWr Address Register
DMA_WRITE_ABORT_IMWR_HIGH_OFF
En
Figure 41. Write interrupt generation, linked-list mode, shown for write channel #0
In the read channel, there are six error conditions that results in an abort interrupt. For more details, see Linked list
mode†. You mask and clear each of the two interrupts (done and abort) through the DMA interrupt registers as indicated
in Figure 42. You can read the status of each of the six abort errors (that contribute to the abort interrupt) through the
DMA_READ_ERR_STATUS_LOW_OFF and DMA_READ_ERR_STATUS_HIGH_OFF registers.
En
6 (1) DMA Read Done Read Channel
IMWr Address Register Remote Done Interrupt
DMA Read Linked List Error Enable Register IMWr Generator Done
(DMA_READ_LINKED_LIST_ERR_EN_OFF)
MWr (1)
DMA_WRITE_DONE_IMWR_LOW_OFF
D (2) DMA Read Channel #0 PCIe Core Tx DMA_WRITE_DONE_IMWR_HIGH_OFF
LL Remote Abort IMWr Data Register
Interrupt Enable MWr (2)
DMA_WRITE_CH01_IMWR_DATA_OFF
(LLRAIE) Abort
Read Channel
DMA Read Abort Remote Abort Interrupt (3)
IMWr Generator DMA_WRITE_ABORT_IMWR_LOW_OFF
(3) IMWr Address Register
DMA_WRITE_ABORT_IMWR_HIGH_OFF
En
Figure 42. Read interrupt generation, linked-list mode, shown for read channel #0
For more information on done interrupts in linked list mode, see Using interrupts for linked list producer-
consumer synchronization†.
In non-linked list mode, LIE acts as a global switch. However when in linked list mode, LIE is just local to the current linked list
element and the global switch is LLLAIE.
CAUTION
If the DMA driver is running on the host and the interrupt service routine is reading local interrupts to determine if the
transfer is successful, then you must set LIE and RIE in the same element and you should mask or ignore the local
interrupt pin. Setting RIE and LIE in element A followed by RIE (only) in element B is not a verified usage scenario.
LL for more than one channel, then you must have a separate LL structure in local memory for each channel. Your application must
produce the LL element structure in local memory as shown in the following figure. Normally, all of the elements are contiguous
(one after the other) in memory, and each element has six DWORDs containing the information about the block of data to be
transferred. You program the channel context registers (DMA_LLP_LOW_REG_WRCH_0 and DMA_LLP_HIGH_OFF_WRCH_0) with
the location of where you have placed the LL element structure in local memory.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LLP
RIE LIE =0 CB
Transfer Size
(data Element)
Element #0
LLP
RIE LIE =0 CB
Transfer Size
(data Element)
Element #1
LLP
=1 TCB CB
Element #N-1
(link Element)
Figure 43. Linked list element/descriptor structure in local memory with N elements
When you start the DMA transfer (by writing to the DMA Write Doorbell Register DMA_WRITE_DOORBELL_OFF or DMA Read
Doorbell Register DMA_READ_DOORBELL_OFF), the DMA reads (consumes) each element from local memory, and loads the
information (SAR, DAR, size, and so on) from that element into the channel context registers in the DMA. These channel context
registers determine the operation of the channel that the DMA controller is currently servicing. The DMA then proceeds to transfer
the block of data (as defined by the element), and when it is finished, reads the next element from local memory. Normally, all of the
elements are contiguous (one after the other) in memory, with the starting address defined in the channel context DMA Linked List
Pointer Low Register DMA_LLP_LOW_OFF_WRCH_0. When you want to jump in local memory to another element list (or recycle
the consumed elements), then you set the LLP bit in the element (for example, link element #N-1 in the figure above, specify the
location of the next element structure using the LL Element Pointer DWORDs (as indicated in the figure above), and, set TCB to
1 (for recycling) or to 0 (to jump to another list).
Notice the similarity between a data element and the DMA Channel Context registers for each channel. Each element has six
DWORDs as in Figure 43. There are eight channel context registers (DWORDs) for a channel. The DMA loads the six element
DWORDs into the following channel context:
• CB, LLP, LIE, and RIE fields of the DMA Channel Control 1 register
• DMA Transfer Size
CAUTION
• When you enable linked list operation (DMA_CH_CONTROL1_OFF_WRCH_0.lle =1b1), the DMA overwrites
the following DMA channel context registers with information from linked list data elements:
— The CB, LLP, LIE, and RIE fields of the DMA Channel Control 1 register.
• The structure of a link element is different to that of the data element. A data element has no TCB field. A link
element has no LIE or RIE fields. It has no SAR, DAR, or Transfer Size DWORDs, but has LL Element Pointer
DWORDs instead of the SAR DWORDs.
• The LIE and RIE bits in a LL element, only enable the done interrupt. In non-LL mode, the RIE and LIE bits
enable the done and abort interrupts. For more information, see Interrupts and error handling†.
Theearly fetched descriptor completes concurrently with previous descriptor’s data completion. If previous descriptor transfer
aborts due to an error in any data completion, the early-fetched descriptor is flushed.
In normal mode, as soon as the DMA is doorbelled, the DMA reads the LL descriptor, and starts the data block transfer. When
this feature is enabled, the DMA reads the descriptor, but starts the data transfer only when your application logic toggles the
dma_[w|r]dxfer_go_togg[] input.
This feature is helpful in scenarios where the data block generation/consumption is hardware controlled. After your application
software configures the DMA channel in LL mode and enables the handshake feature, your application hardware can directly
notify the DMA of the data block availability or its ability to receive the data block, thereby freeing your application software of
additional overheads of tracking the hardware states, maintaining the memory mapped linked lists, and managing the DMA.
The DMA handshake mechanism can be turned on or off per channel using DMA_[WRITE/READ]_ENGINE_EN_OFF
register. The handshake mechanism cannot be enabled/disabled when the channel status is active, that is, when
DMA_CH_CONTROL1_OFF_[WR|RD]CH_i.CS =01.
CAUTION
This feature is not supported for LL elements with zero-byte transfer size.
DMA DMA
x x
Doorbell Write Channel 0 Reset Handshake Counter Doorbell Read Channel 0 Reset Handshake Counter
wait wait
Data Read, Data Read, ... Data Write, Data Write, ...
1 1
CPLD, CPLD, ... dma_wdxfer_done_togg[0] d_trgt1_wreg_cmplt_dma dma_rdxfer_done_togg[0]
, ... 1 , ..
. 1
ad ite
Re Wr
Data If Handshake dma_wdxfer_go_togg[0] ata If Handshake dma_rdxfer_go_togg[0]
, ,D
ad Counter > 0, ite Counter > 0,
Re transfer data Wr transfer data
ta ta
Da immediately Da immediately
2 2
CPLD, CPLD, ... dma_wdxfer_done_togg[0] d_trgt1_wreg_cmplt_dma dma_rdxfer_done_togg[0]
1 1
The channels are named read channel 7..0 and write channel 7..0. Each channel is programmed using a number of registers. For
more details, see PCIE_DMA register descriptions.
DMA
Transfer
Size bytes
SAR
Local Remote
Source Destination
Memory Memory
DMA
Controller
DMA
Transfer
Size bytes
DAR
For a read transfer, the SAR is the address of the remote memory, and the DAR is the address of the local memory, as shown in
Figure 47.
DMA
Transfer
Size bytes
DAR
Local Remote
Source Destination
Memory Memory
DMA
Controller
DMA
Transfer
Size bytes
SAR
CAUTION
You must not write to any of the context registers for a particular channel after you start the channel
by writing the channel number to the Doorbell Number field of the DMA Write Doorbell Register
(DMA_WRITE_DOORBELL_OFF) or DMA Read Doorbell Register (DMA_READ_DOORBELL_OFF).
CAUTION
Use this Feature with caution in linked-list mode.
You should not use the STOP feature in operational mode. It is only a debug feature and has associated hazards.
• Before setting the Stop bit, you must read the channel status field (CS) of the DMA Channel Control 1 register
to ensure that the corresponding channel is Running (transferring data). To eliminate the possibility of a
race condition between these two actions (read and write), you should confirm the presence of the abort
bit in the DMA Write Interrupt Status Register (DMA_WRITE_INT_STATUS_OFF) or DMA Read Interrupt
Status Register (DMA_READ_INT_STATUS_OFF) and check the status of any fatal error if some other event
has occurred.
• After a Stop event, you cannot seamlessly resume the transfer again because the DMA will not carry on
exactly from the point that it was stopped at. Therefore you must setup and start the complete channel context
again, including the
3.11.6.1 1 MB write transfer on write channel #0 initiated by local CPU (non LL mode)†
In this example, the IMWr generation is disabled, as the local CPU initiates the DMA transfer. The local CPU is interrupted using
the edma_int bus. The SAR is the address of the local memory, and the DAR is the address of the remote memory, as shown in
Figure 46. The following table provides the programming details for this example transfer.
Table 66. Register setup for a 1-MB write DMA transfer from 0xBEEF_BEE0 to 0xCAFE_CAF0
3.11.6.2 1 MB read transfer on read channel #0 initiated by local CPU (non LL mode)†
In this example, the IMWr generation is disabled, as the local CPU initiates the DMA transfer. The local CPU is interrupted using
the edma_int bus. The SAR is the address of the remote memory, and the DAR is the address of the local memory, as shown in
Figure 47. The following table provides the programming details for this example transfer.
Table 67. Register setup for a 1-MB read DMA transfer from 0xBEEF_BEE0 to 0xCAFE_CAF0
3.11.6.3 1 MB write transfer on write channel #5 initiated by remote CPU (non LL mode)†
In this example, the local interrupt generation is disabled, as the remote CPU initiates the DMA transfer. The remote CPU is
interrupted using an IMWr. The SAR is the address of the local memory, and the DAR is the address of the remote memory, as
shown in Figure 46. The following table provides the programming details for this example transfer.
Table 68. Register setup for a 1-MB write DMA transfer from 0xBEEF_BEE0 to 0xCAFE_CAF0
0x060 / 0x064 DMA Write Done IMWr Address Low and High your IMWr Address #1
0x068 / 0x06C DMA Write Abort IMWr Address Low and High your IMWr Address #2
Table 68. Register setup for a 1-MB write DMA transfer from 0xBEEF_BEE0 to 0xCAFE_CAF0 (continued)
3.11.6.4 1 MB read transfer on read channel #5 initiated by remote CPU (non LL mode)†
In this example, the local interrupt generation is disabled, as the remote CPU initiates the DMA transfer. The remote CPU is
interrupted using an IMWr. The SAR is the address of the remote memory, and the DAR is the address of the local memory, as
shown in Figure 47. The following table provides the programming details for this example transfer.
Table 69. Register setup for a 1-MB read DMA transfer from 0xBEEF_BEE0 to 0xCAFE_CAF0
0x0CC / 0x0D0 DMA Read Done IMWr Address Low and high your IMWr Address #1
0x0D4 / 0x0D8 DMA Read Abort IMWr Address Low and High your IMWr Address #2
Table 69. Register setup for a 1-MB read DMA transfer from 0xBEEF_BEE0 to 0xCAFE_CAF0 (continued)
DMA
Transfer
Size bytes
SAR
Local Remote
Source Destination
Memory Memory
DMA Controller
DMA
Transfer
Size bytes
DAR
3.11.7.1 Overview†
The DMA write and read channels operate independently to maximize the performance of the DMA read and write data transfers
over the PCIe link.
The DMA can simultaneously perform the following types of memory transactions:
• DMA write: transfer (copy) of a block of data from local memory to remote memory
• DMA read: transfer (copy) of a block of data from remote memory to local memory
After you have programmed and started a DMA transfer (see Using the DMA†), the DMA transfers the data as described in
Architecture overview†.
non-posted request with same ID. ID 0 is always used for non-DMA and DMA posted requests. Therefore the order of MWr’s to
local memory is preserved through the AXI fabric.
16 segments
64 holding
Max_Payload_Size_Supported
256 bytes
32
31
16 DMA tags
16
32 PCIe tags
15
16 non-DMA tags
Figure 50. PCIe Tag Allocation For DMA/Non-DMA MRd Traffic Using 16
1 MRd
DMA Block TLP Generator
Read Channel MRd MRd
return
tag
Read Buffer
3
2
CpID
Application CpID
The DMA TLP Generator attempts to continuously generate identically-sized PCIe MRd request TLPs, until it
1
has requested all of the DMA data. It pauses when there are CC_NUM_DMA_RD_TAG requests issued.
When DMA Read Buffer receives all of the data [one or more CplDs] corresponding to an MRd, the PCIe TAG
2
is released and the DMA TLP Generator resumes generation of MRd TLPs.
If CplDs are received out-of-order, they are retained in the Read Buffer until data corresponding to earlier requests is
3
received. This can delay the return of the PCIe TAG to the DMA TLP Generator, as the TAG is only returned when the
segment data is accepted by the application.
Figure 51. DMA read transfer decomposition into multiple MRd requests with CC_NUM_DMA_RD_TAG =4
The DMA segments the transfer into a number (up to a maximum of CC_NUM_DMA_RD_TAG) of MRd requests. The size of each
request is limited to the minimum of {Max_Read_Request_Size, Max_Payload_Size}.
• When a CplD TLP for an MRd request returns from the PCIe Wire out-of-order:
— The CplD is stored in the DMA read buffer.
— The tag is not released back to the DMA tag pool, and the DMA cannot generate another MRd request with this tag
number.
— When the CplD from all of the previous MRd requests have been received, the DMA completes the next steps:
◦ The CplD is converted to an MWr and forwarded to your application (or AXI bridge master for writing to the AXI
bus).
◦ The tag is released back to the DMA tag pool.
◦ The DMA generates another MRd request with this tag number.
• When a CplD TLP for an MRd request returns from the PCIe Wire in-order:
— The CplD is converted to an MWr and forwarded to your application (or the AXI bridge master for writing to the AXI
bus).
— The TAG is released back to the DMA tag pool.
— The DMA generates another MRd request with this tag number.
Application Write Fatal The DMA read channel has received an error response from the AXI bus at the bridge
Error Detected master interface while writing posted data to it. This error is fatal.
• You must restart the transfer from the beginning because the channel context
is corrupted.
• The MWr is not rolled back.
• The AXI bridge master does not report this error to software through error logging
or MSG.
Note: During linked list mode, the Application Write Error only corrupts the current
element in the linked list.
Unsupported Non-fatal The DMA read channel has received a PCIe UR CPL status from the remote device in
Request (UR) response to the MRd request.
Completer Abort (CA) Non-fatal The DMA read channel has received a PCIe CA CPL status from the remote device in
response to the MRd request.
CPL Time Out Non-fatal The DMA read channel has timed-out while waiting for the remote device to respond to
the MRd request, or a malformed CplD has been received.
Data Poisoning Fatal The DMA read channel has detected data poisoning in the CPL from the remote device
in response to the MRd request. The DMA read channel will drop the completion and
then be halted. The CX_FLT_MASK_UR_POIS filter rule does not affect this behavior.
Linked List Element Fetch Fatal The DMA read channel has received an error response from the AXI bus (or TRGT1
Error Detected interface when the AXI bridge is not used) while reading a linked list element from
local memory.
Application Read Fatal The DMA write channel has received an error response from the AXI bus at the bridge
Error Detected master interface while reading data from it.
• The response TLP is discarded by the DMA and is not converted to an outbound
MWr TLP.
• The UR or CA CPL status TLP generated by the bridge is discarded by the DMA.
• The AXI bridge master does not report this error to software through error logging
or MSG.
Linked List Element Fetch Fatal The DMA write channel has received an error response from the AXI bus at the bridge
Error Detected master interface (or TRGT1 interface when the AXI bridge is not used) while reading
a linked list element from local memory.
• The UR or CA CPL status TLP generated by the bridge is discarded by the DMA.
• The AXI bridge master1 does not report this (or for non-DMA traffic) error to
software through error logging or MSG.
When the DMA detects an error, it performs the following actions (for the channel with the error):
CAUTION
You cannot continue after a Fatal Error is detected, as the channel context is corrupted. Any actions that were
in progress are not rolled back. To exit from this condition, you need to Soft Reset the complete DMA controller,
as described in DMA Write Engine Enable Register (DMA_WRITE_ENGINE_EN_OFF) and DMA Read Engine
Enable Register (DMA_READ_ENGINE_EN_OFF).
When an error occurs in linked list mode, DMA Linked List Pointer Low Register (DMA_LLP_LOW_OFF_WRCH_0) is not
incremented by the DMA, but remains pointing to the element that caused the error.
NOTE
This procedure is only necessary during software development; when you incorrectly program the DMA write
channel DAR. An MWr error is fatal and you must resolve it by fixing your software. In normal operation MWr errors
are not expected to occur.
[29] With recycling, the same LL structure is used over and over again. Another mode of operation would be to jump to a new
LL element structure when the current one is consumed.
NOTE
If the DMA stops on a link element, then your software must set the DMA Linked List Pointer registers, and restart
the DMA process by ringing the doorbell.
Software
RESET
(SW)
IDLE Software Produces Linked List Element Structure:
a. PCS = 1
yes b. Create N-1 data Elements with C
edma_int
* CB = PCS = 1
‘Done’ L3 Build Element List
* LIE = 1 (Elements #N/2 and #N-2 only)
Channel Status Interrupt
c. Create 1 link Element (#N-1) with
L1
= STOPPED * LLP = 1
no * IF (!TCB) {CB = PCS = 1} ELSE {CB=~PCS=0}
Program and
Ring Channel * TCB = 1 (Recycle Mode only)
no Recycle doorbell * LL Element Pointer set to next LL Element list.
Mode d. PCS = ~PCS, when TCB = 1 [Recycle mode]
“Producer Cycle Status” (PCS) is a local variable in your Software
yes
Initial DMA Controller Condition
Read current value * Linked List enabled through LLE bit.
of Channel Context * CCS = 1
LL Pointer (say x)
DMA
D Controller
Recycle Element
List up to x Using Read Element
Process in 1 Current DMA activity for this
channel finished
yes
edma_int = 1
L5 Clear LIEP
Channel Status
= STOPPED yes
L2
LLP = 1
E yes II no Set Channel Status no
LIEP = 1
CB = CCS Transfer list = STOPPED yes
Ring Channel empty
doorbell no
yes
CB = CCS
Load Element
into Channel Context
CCS = CCS =
L4
CCS ~CCS
yes yes
LLP = 1 TCB = 1
no
Element Pointer
++6
5. The DMA then proceeds to transfer the block of data (as defined by the element), and when it is finished, reads the next
element from local memory.
The solid green loop L2 in Figure 52 corresponds to steps 4-5.
6. The last element in the list (called a link element, and indicated by having its LLP field set to 1) is not used to transfer a block
of data.
• It causes the DMA to effectively repeat the task in step 4.
• Its TCB is typically set to 1. This causes the DMA to toggle its CCS bit, and the software to toggle its PCS bit. The
software and DMA use the “PCS-CCS-CB-TCB” producer-consumer synchronization mechanism to ensure that:
— Software does not recycle elements that have not yet being consumed by the DMA
— DMA correctly recognizes and consumes recycled elements.
The solid red loop L4 in Figure 52 corresponds to step 6.
7. Upon reception of the interrupt (mentioned in step 1), the software starts to recycle the TL.
• Software reprograms each data element with new DMA transfer information.
• The software and DMA use the “PCS-CCS-CB-TCB” producer-consumer synchronization mechanism described later
in this section.
The dashed purple loop L3 in Figure 52 corresponds to step 7.
8. As some point, the software wants to terminate the complete DMA process, by not recycling any more elements. The DMA
recognizes this condition when CB !=CCS, and sets the channel status to stopped
The dashed red loop L5 in Figure 52 corresponds to step 8.
Channel Context LL
Pointer Phase 1 Phase 2
LL Element Pointer
Bold = owner is DMA (Consumer)
Phase 3 Phase 4
... .. .. .. .. ... .. .. .. ..
DMA
N-3 0 1 - 0 N-3 0 1 - 0
N-2 0 1 - 1 N-2 0 1 - 1
DMA
N-1 1 0 1 - N-1 1 0 1 -
Empty
CCS -> 0
Interrupt
to re-trigger
Producer
Phase 5 Phase 6 Recycling
Before looking at the example in detail, it is useful to note that the DMA performs the following two tests as part of this process:
• Consumer-Owned Element, or Transfer List (TL) Empty Test
The solid red loop L4 in Figure 52 corresponds to this test. The Cycle Bit (CB) of DMA Channel Control 1 Register
(DMA_CH_CONTROL1_OFF_WRCH_0) (which was loaded from the LL element) is tested against the DMA Consumer Cycle
State (CCS) bit of the same register. When CB =CCS, the element is owned by the consumer (DMA) and the data transfer
is executed. When CB !=CCS, the TL is empty and the DMA sets channel Status (CS) in DMA Channel Control 1 Register
(DMA_CH_CONTROL1_OFF_WRCH_0) to “Stopped”.
[30] If the consumer has moved on to another element, this is not a problem. These newly consumed elements are recycled in
the next recycling phase.
for the software to ring the channel Doorbell again. To eliminate the possibility of a race condition between these two actions
(read and write), you should first confirm the presence of the “done” interrupt bit in the DMA Write Interrupt Status Register
(DMA_WRITE_INT_STATUS_OFF) or DMA Read Interrupt Status Register (DMA_READ_INT_ STATUS_OFF) and also check the
DMA Linked List Pointer Low Register (DMA_LLP_LOW_REG_WRCH_0) to confirm that it is pointing to the correct location.
3.11.7.8.1 Request, response, and descriptor-fetch threading in LL mode for a read channel†
For each read channel there are two threads (1) the request thread and (2) the response thread which are running in opposite
directions. The DMA processes these threads independently. The request thread does not wait for the individual responses to
arrive before issuing the next request. The request thread for the current channel i continues to issue requests until one of the
following is true:
• The DMA exhausts its pool of available tags and the logic in the read buffer (see Read buffer†) back-pressures the DMA read
engine controller.
• The DMA completes its current DMA transfer block for the current channel. It has requested all of the data specified by the
currently-loaded LL element (also known as a descriptor).
• The current channel has issued Wi MRd requests, where Wi is the round robin weight associated with that channel.
A channel arbitration event now occurs and the DMA loads the context for the winning channel j. When the DMA is loading the new
context, the response path for the previous channel i will be still utilizing the wire because the response thread lags the request
thread. As soon as the DMA has loaded the context (and LL element if in LL mode) for the current channel j, it starts to issue
requests. Therefore, in multichannel operation, when the block for channel i completes and a new LL element is been fetched,
the DMA can be issuing requests belonging to other DMA channels. The currently inactive requester thread for channel i needs
to synchronize with the response thread (that is, wait for all completions) before fetching its next LL element from local memory.
(In bits)
(In bits)
(In bits)
(In bits)
(In bits)
Offset
Register Offset
DMA_CTRL_DATA_ARB 0h
_PRIOR_OFF
Function
This register is used to control traffic priorities among various sources that are delivered to your application through TRGT1
where 0x0 represents the highest priority. - Non-DMA Rx Requests - DMA Write Channel MRd Requests (DMA data requests
and LL element/descriptor access) - DMA Read Channel MRd Requests (LL element/descriptor access) - DMA Read Channel
MWr Requests Concurrent traffic from channels with same priority are sorted according to Round-Robin arbitration rules. The
arbitration priority defaults to Non-DMA requests (highest), Write Channel MRd, Read Channel MRd, Read Channel MWr.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 1 1 0 1 0 0 0 1 0 0 0
Fields
Field Function
31-12 Reserved
11-9 DMA Read Channel MWr Requests. Note: The access attributes of this field are as follows: - Wire: R/W
RDBUFF_TRG
T_WEIGHT
8-6 DMA Read Channel MRd Requests. For LL element/descriptor access. Note: The access attributes of
this field are as follows: - Wire: R/W
RD_CTRL_TRG
T_WEIGHT
5-3 DMA Write Channel MRd Requests. For DMA data requests and LL element/descriptor access. Note:
The access attributes of this field are as follows: - Wire: R/W
WR_CTRL_TR
GT_WEIGHT
2-0 Non-DMA Rx Requests. Note: The access attributes of this field are as follows: - Wire: R/W
RTRGT1_WEIG
HT
Offset
Register Offset
DMA_CTRL_OFF 8h
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W 2W... 2W...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 NUM_DMA_WR_CHAN
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Fields
Field Function
31-26 Reserved
25 Disable DMA Read Channels "completion to memory write" context cache pre-fetch function. Note: For
internal debugging only. Note: The access attributes of this field are as follows: - Wire: R/W
DIS_C2W_CAC
HE_RD
24 Disable DMA Write Channels "completion to memory write" context cache pre-fetch function. Note: For
internal debugging only. Note: The access attributes of this field are as follows: - Wire: R/W
DIS_C2W_CAC
HE_WR
23-20 Reserved
19-16 Number of Read Channels. You can read this register to determine the number of read channels the
DMA controller has been configured to support.
NUM_DMA_RD
_CHAN
15-4 Reserved
3-0 Number of Write Channels. You can read this register to determine the number of write channels the
DMA controller has been configured to support.
NUM_DMA_WR
_CHAN
Offset
Register Offset
DMA_WRITE_ENGINE_ Ch
EN_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 DMA_
W WRI...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23 Reserved
22 Reserved
21 Reserved
20 Reserved
19 Enable Handshake for DMA Write Engine Channel 3. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_WRITE_E
NGINE_EN_HS
HAKE_CH3
Field Function
18 Enable Handshake for DMA Write Engine Channel 2. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_WRITE_E
NGINE_EN_HS
HAKE_CH2
17 Enable Handshake for DMA Write Engine Channel 1. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_WRITE_E
NGINE_EN_HS
HAKE_CH1
16 Enable Handshake for DMA Write Engine Channel 0. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_WRITE_E
NGINE_EN_HS
HAKE_CH0
15-1 Reserved
0 DMA Write Engine Enable. - 1: Enable - 0: Disable (Soft Reset) For normal operation, you must
initially set this bit to "1", before any other software setup actions. You do not need to toggle or
DMA_WRITE_E rewrite to this bit during normal operation. You should set this bit to "0" when you want to "Soft
NGINE Reset" the DMA controller write logic. There are three possible reasons for resetting the DMA
controller write logic: - The "Abort Interrupt Status" bit is set (in the "DMA Write Interrupt Status
Register" DMA_WRITE_INT_STATUS_OFF), and any of the bits is in the "DMA Write Error Status
Register" (DMA_WRITE_ERR_STATUS_OFF) are set. Resetting the DMA controller write logic re-
initializes the control logic, ensuring that the next DMA write transfer is executed successfully. -
You have executed the procedure outlined in "Stop Bit" , after which, the "Abort Interrupt Status"
bit is set and the Channel Status field (CS) of the DMA write "DMA Channel Control 1 Register
" (DMA_CH_CONTROL1_OFF_WRCH_0) is set to "Stopped." Resetting the DMA controller write logic
re-initializes the control logic ensuring that the next DMA write transfer is executed successfully. - During
software development, when you incorrectly program the DMA write engine. To "Soft Reset" the DMA
controller write logic, you must: - De-assert the DMA write engine enable bit. - Wait for the DMA to
complete any in-progress TLP transfer, by waiting until a read on the DMA write engine enable bit
returns a "0". - Assert the DMA write engine enable bit. This "Soft Reset" does not clear the DMA
configuration registers. The DMA write transfer does not start until you write to the "DMA Write Doorbell
Register" (DMA_WRITE_DOORBELL_OFF). Note: The access attributes of this field are as follows: -
Wire: R/W
Offset
Register Offset
DMA_WRITE_DOORBE 10h
LL_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R WR_ 0
W STOP
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
WR_DOORBELL_NUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Stop. Set in conjunction with the Doorbell Number field. The DMA write channel stops issuing requests,
sets the channel status to "Stopped", and asserts the "Abort" interrupt if it is enabled. Before setting
WR_STOP the Stop bit, you must read the channel Status field (CS) of the "DMA Channel Control 1 Register
" (DMA_CH_CONTROL1_OFF_WRCH_0) to ensure that the write channel is "Running" (transferring
data). For more information, see "Stopping the DMA Transfer (Software Stop)." Note: The access
attributes of this field are as follows: - Wire: R/W
30-3 Reserved
Offset
Register Offset
DMA_WRITE_CHANNEL 18h
_ARB_WEIGHT_LOW_O
FF
Function
The 5-bit channel weight (for write channels 0-3) specifies the maximum number of TLP requests that the DMA can issue for
that channel before it must return to the arbitration routine. When the channel weight count is reached or DMA channel request
transfer size reaches zero, the WWR arbiter selects the next channel to be processed. Your software must initialize this
register before ringing the doorbell. For more details, see "Multichannel Arbitration". Value range is (0-0x1F) corresponding to
(1-32) transaction requests.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
WRITE_CHANNEL3_WEIGHT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R WRITE
WRITE_CHANNEL2_WEIGHT WRITE_CHANNEL1_WEIGHT WRITE_CHANNEL0_WEIGHT
W _C...
Reset 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
Fields
Field Function
31-20 Reserved
Channel 3 Weight. The weight is initialized by software before ringing the doorbell. The value is used by
19-15
the channel weighted round robin arbiter to select the next channel read request. A value of '0' means
WRITE_CHAN that one TLP is issued before moving to the next channel. Note: The access attributes of this field are as
NEL3_WEIGHT follows: - Wire: R/W
Channel 2 Weight. The weight is initialized by software before ringing the doorbell. The value is used by
14-10
the channel weighted round robin arbiter to select the next channel read request. A value of '0' means
WRITE_CHAN that one TLP is issued before moving to the next channel. Note: The access attributes of this field are as
NEL2_WEIGHT follows: - Wire: R/W
Channel 1 Weight. The weight is initialized by software before ringing the doorbell. The value is used by
9-5
the channel weighted round robin arbiter to select the next channel read request. A value of '0' means
WRITE_CHAN that one TLP is issued before moving to the next channel. Note: The access attributes of this field are as
NEL1_WEIGHT follows: - Wire: R/W
Channel 0 Weight. The weight is initialized by software before ringing the doorbell. The value is used by
4-0
the channel weighted round robin arbiter to select the next channel read request. A value of '0' means
WRITE_CHAN that one TLP is issued before moving to the next channel. Note: The access attributes of this field are as
NEL0_WEIGHT follows: - Wire: R/W
Offset
Register Offset
DMA_READ_ENGINE_E 2Ch
N_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 DMA_
W REA...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23 Reserved
22 Reserved
21 Reserved
20 Reserved
19 Enable Handshake for DMA Read Engine Channel 3. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_READ_E
NGINE_EN_HS
HAKE_CH3
18 Enable Handshake for DMA Read Engine Channel 2. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_READ_E
NGINE_EN_HS
HAKE_CH2
17 Enable Handshake for DMA Read Engine Channel 1. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_READ_E
NGINE_EN_HS
HAKE_CH1
Field Function
16 Enable Handshake for DMA Read Engine Channel 0. Note: The access attributes of this field are as
follows: - Wire: R/W
DMA_READ_E
NGINE_EN_HS
HAKE_CH0
15-1 Reserved
0 DMA Read Engine Enable. - 1: Enable - 0: Disable (Soft Reset) For normal operation, you must
initially set this bit to "1", before any other software setup actions. You do not need to toggle or
DMA_READ_E rewrite to this bit during normal operation. You should set this field to "0" when you want to "Soft
NGINE Reset" the DMA controller read logic. There are three possible reasons for resetting the DMA controller
read logic: - The "Abort Interrupt Status" bit is set (in the "DMA Read Interrupt Status Register"
(DMA_READ_INT_STATUS_OFF), and any of the bits in the "DMA Read Error Status Low Register"
(DMA_READ_ERR_STATUS_LOW_OFF) is set. Resetting the DMA controller read logic re-initializes the
control logic, ensuring that the next DMA read transfer is executed successfully. - You have executed the
procedure outlined in "Stop Bit", after which, the "Abort Interrupt Status" bit is set and the channel Status
field (CS) of the DMA read "DMA Channel Control 1 Register " (DMA_CH_CONTROL1_OFF_WRCH_0)
is set to "Stopped". Resetting the DMA controller read logic re-initializes the control logic ensuring
that the next DMA read transfer is executed successfully. - During software development, when you
incorrectly program the DMA read engine. To "Soft Reset" the DMA controller read logic, you must: -
De-assert the DMA read engine enable bit. - Wait for the DMA to complete any in-progress TLP transfer,
by waiting until a read on the DMA read engine enable bit returns a "0". - Assert the DMA read engine
enable bit. This "Soft Reset" does not clear the DMA configuration registers. The DMA read transfer does
not start until you write to the "DMA Read Doorbell Register" (DMA_READ_DOORBELL_OFF). Note:
The access attributes of this field are as follows: - Wire: R/W
Offset
Register Offset
DMA_READ_DOORBEL 30h
L_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R RD_ 0
W STOP
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
RD_DOORBELL_NUM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31 Stop. Set in conjunction with the Doorbell Number field. The DMA read channel stops issuing requests,
sets the channel status to "Stopped", and asserts the "Abort" interrupt if it is enabled. Before setting
RD_STOP the Stop bit, you must read the channel Status field (CS) of the "DMA Channel Control 1 Register
" (DMA_CH_CONTROL1_OFF_RDCH_0) to ensure that the read channel is "Running" (transferring
data). For more information, see "Stopping the DMA Transfer (Software Stop)". Note: The access
attributes of this field are as follows: - Wire: R/W
30-3 Reserved
Offset
Register Offset
DMA_READ_CHANNEL 38h
_ARB_WEIGHT_LOW_O
FF
Function
The 5-bit channel weight (for read channels 0-3) specifies the maximum number of TLP requests that the DMA can issue for
that channel before it must return to the arbitration routine. When the channel weight count is reached or DMA channel request
transfer size reaches zero, the WWR arbiter selects the next channel to be processed. Your software must initialize this
register before ringing the doorbell. For more details, see "Multichannel Arbitration". Value range is (0-0x1F) corresponding to
(1-32) transaction requests.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
READ_CHANNEL3_WEIGHT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R READ_
READ_CHANNEL2_WEIGHT READ_CHANNEL1_WEIGHT READ_CHANNEL0_WEIGHT
W CH...
Reset 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
Fields
Field Function
31-20 Reserved
Channel 3 Weight. The weight is initialized by software before ringing the doorbell. The value is used
19-15
by the channel weighted round robin arbiter to select the next channel read request. Note: The access
READ_CHANN attributes of this field are as follows: - Wire: R/W
EL3_WEIGHT
Channel 2 Weight. The weight is initialized by software before ringing the doorbell. The value is used
14-10
by the channel weighted round robin arbiter to select the next channel read request. Note: The access
READ_CHANN attributes of this field are as follows: - Wire: R/W
EL2_WEIGHT
Channel 1 Weight. The weight is initialized by software before ringing the doorbell. The value is used
9-5
by the channel weighted round robin arbiter to select the next channel read request. Note: The access
READ_CHANN attributes of this field are as follows: - Wire: R/W
EL1_WEIGHT
Channel 0 Weight. The weight is initialized by software before ringing the doorbell. The value is used
4-0
by the channel weighted round robin arbiter to select the next channel read request. Note: The access
READ_CHANN attributes of this field are as follows: - Wire: R/W
EL0_WEIGHT
Offset
Register Offset
DMA_WRITE_INT_STAT 4Ch
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 Reserved
WR_ABORT_INT_STATUS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 Reserved
WR_DONE_INT_STATUS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
15-8 Reserved
7-4 Reserved
Offset
Register Offset
DMA_WRITE_INT_MAS 54h
K_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reserved WR_ABORT_INT_MASK
W
Reset 0 0 0 0 0 0 0 0 u u u u 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
Reserved WR_DONE_INT_MASK
W
Reset 0 0 0 0 0 0 0 0 u u u u 1 1 1 1
Fields
Field Function
31-24 Reserved
23-20 Reserved
Abort Interrupt Mask. Prevents the Abort interrupt status field in the DMA write interrupt status register
19-16
from asserting the edma_int output. Each bit corresponds to a DMA channel. Bit [0] corresponds to
WR_ABORT_IN channel 0. Note: The access attributes of this field are as follows: - Wire: R/W
T_MASK
15-8 Reserved
7-4 Reserved
Done Interrupt Mask. Prevents the Done interrupt status field in the DMA write interrupt status register
3-0
from asserting the edma_int output. Each bit corresponds to a DMA channel. Bit [0] corresponds to
WR_DONE_INT channel 0. Note: The access attributes of this field are as follows: - Wire: R/W
_MASK
Offset
Register Offset
DMA_WRITE_INT_CLEA 58h
R_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 WR_ABORT_INT_CLEAR
Reserved
W W1C
Reset 0 0 0 0 0 0 0 0 u u u u 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 WR_DONE_INT_CLEAR
Reserved
W W1C
Reset 0 0 0 0 0 0 0 0 u u u u 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
Abort Interrupt Clear. You must write a 1'b1 to clear the corresponding bit in the Abort interrupt
19-16
status field of the DMA write interrupt status register. Each bit corresponds to a DMA channel. Bit [0]
WR_ABORT_IN corresponds to channel 0. Note: Reading from this self-clearing register field always returns a "0".
T_CLEAR
15-8 Reserved
7-4 Reserved
Done Interrupt Clear. You must write a 1'b1 to clear the corresponding bit in the Done interrupt
3-0
status field of the DMA write interrupt status register. Each bit corresponds to a DMA channel. Bit [0]
WR_DONE_INT corresponds to channel 0. Note: Reading from this self-clearing register field always returns a "0".
_CLEAR
Offset
Register Offset
DMA_WRITE_ERR_STA 5Ch
TUS_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
LINKLIST_ELEMENT_FETCH_ER
R 0 0
R_DETE...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 APP_READ_ERR_DETECT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
15-8 Reserved
7-4 Reserved
Field Function
APP_READ_ER . The DMA write channel has received an error response from the AXI bus (or TRGT1 interface when
R_DETECT the AXI Bridge is not used) while reading data from it. Each bit corresponds to a DMA channel. Bit [0]
corresponds to channel 0. - Enabling: For details, see "Interrupts and Error Handling". - Masking: The
DMA write interrupt Mask register has no effect on this register. - Clearing: You must write a 1'b1 to
the corresponding channel bit in the Abort interrupt field of the "DMA Write Interrupt Clear Register"
(DMA_WRITE_INT_CLEAR_OFF) to clear this error bit.
Offset
Register Offset
DMA_WRITE_DONE_IM 60h
WR_LOW_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_WRITE_DONE_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_WRITE_DONE_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
The DMA uses this field to generate bits [31:0] of the address field for the Done IMWr TLP. Bits [1:0]
31-0
must be "00" as this address must be dword aligned. Note: The access attributes of this field are as
DMA_WRITE_D follows: - Wire: R/W
ONE_LOW_RE
G
Offset
Register Offset
DMA_WRITE_DONE_IM 64h
WR_HIGH_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_WRITE_DONE_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_WRITE_DONE_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 The DMA uses this field to generate bits [63:32] of the address field for the Done IMWr TLP. Note: The
access attributes of this field are as follows: - Wire: R/W
DMA_WRITE_D
ONE_HIGH_RE
G
Offset
Register Offset
DMA_WRITE_ABORT_I 68h
MWR_LOW_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_WRITE_ABORT_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_WRITE_ABORT_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
The DMA uses this field to generate bits [31:0] of the address field for the Abort IMWr TLP it generates.
31-0
Bits [1:0] must be "00" as this address must be dword aligned. Note: The access attributes of this field
DMA_WRITE_A are as follows: - Wire: R/W
BORT_LOW_R
EG
Offset
Register Offset
DMA_WRITE_ABORT_I 6Ch
MWR_HIGH_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_WRITE_ABORT_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_WRITE_ABORT_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 The DMA uses this field to generate bits [63:32] of the address field for the Abort IMWr TLP. Note: The
access attributes of this field are as follows: - Wire: R/W
DMA_WRITE_A
BORT_HIGH_R
EG
Offset
Register Offset
DMA_WRITE_CH01_IM 70h
WR_DATA_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
WR_CHANNEL_1_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
WR_CHANNEL_0_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 The DMA uses this field to generate the data field for the Done or Abort IMWr TLPs it generates for write
channel 1. Note: The access attributes of this field are as follows: - Wire: R/W
WR_CHANNEL
_1_DATA
15-0 The DMA uses this field to generate the data field for the Done or Abort IMWr TLPs it generates for write
channel 0. Note: The access attributes of this field are as follows: - Wire: R/W
WR_CHANNEL
_0_DATA
Offset
Register Offset
DMA_WRITE_CH23_IM 74h
WR_DATA_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
WR_CHANNEL_3_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
WR_CHANNEL_2_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-16 The DMA uses this field to generate the data field for the Done or Abort IMWr TLPs it generates for write
channel 3. Note: The access attributes of this field are as follows: - Wire: R/W
WR_CHANNEL
_3_DATA
15-0 The DMA uses this field to generate the data field for the Done or Abort IMWr TLPs it generates for write
channel 2. Note: The access attributes of this field are as follows: - Wire: R/W
WR_CHANNEL
_2_DATA
Offset
Register Offset
DMA_WRITE_LINKED_L 90h
IST_ERR_EN_OFF
Function
The LIE and RIE bits in the LL element enable the channel "done" interrupts (local and remote). The LLLAIE and LLRAIE bits
enable the channel "abort" interrupts (local and remote).
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reserved WR_CHANNEL_LLLAIE
W
Reset 0 0 0 0 0 0 0 0 u u u u 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
Reserved WR_CHANNEL_LLRAIE
W
Reset 0 0 0 0 0 0 0 0 u u u u 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
Write Channel LL Local Abort Interrupt Enable (LLLAIE). You enable the write channel local abort
19-16
interrupt through this bit. The LIE and RIE bits in the LL element enable the write channel done
WR_CHANNEL interrupts. Each bit corresponds to a DMA channel. Bit [0] corresponds to channel 0. Used in linked
_LLLAIE list mode only. For more details, see "Interrupt Handling". Note: The access attributes of this field are as
follows: - Wire: R/W
15-8 Reserved
7-4 Reserved
Write Channel LL Remote Abort Interrupt Enable (LLRAIE). You enable the write channel remote abort
3-0
interrupt through this bit. The LIE and RIE bits in the LL element enable the write channel done
WR_CHANNEL interrupts. Each bit corresponds to a DMA channel. Bit [0] corresponds to channel 0. Used in linked
_LLRAIE list mode only. For more details, see "Interrupt Handling". Note: The access attributes of this field are as
follows: - Wire: R/W
Offset
Register Offset
DMA_READ_INT_STAT A0h
US_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reserved RD_ABORT_INT_STATUS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
Reserved RD_DONE_INT_STATUS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
15-8 Reserved
7-4 Reserved
Offset
Register Offset
DMA_READ_INT_MASK A8h
_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reserved RD_ABORT_INT_MASK
W
Reset 0 0 0 0 0 0 0 0 u u u u 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
Reserved RD_DONE_INT_MASK
W
Reset 0 0 0 0 0 0 0 0 u u u u 1 1 1 1
Fields
Field Function
31-24 Reserved
23-20 Reserved
Abort Interrupt Mask. Prevents the Abort interrupt status field in the DMA read interrupt status register
19-16
from asserting the edma_int output. Each bit corresponds to a DMA channel. Bit [0] corresponds to
RD_ABORT_IN channel 0. Note: The access attributes of this field are as follows: - Wire: R/W
T_MASK
15-8 Reserved
7-4 Reserved
Done Interrupt Mask. Prevents the Done interrupt status field in the DMA read interrupt status register
3-0
from asserting the edma_int output. Each bit corresponds to a DMA channel. Bit [0] corresponds to
RD_DONE_INT channel 0. Note: The access attributes of this field are as follows: - Wire: R/W
_MASK
Offset
Register Offset
DMA_READ_INT_CLEA ACh
R_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W Reserved RD_ABORT_INT_CLEAR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
W Reserved RD_DONE_INT_CLEAR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
15-8 Reserved
7-4 Reserved
Offset
Register Offset
DMA_READ_ERR_STAT B4h
US_LOW_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
LINK_LIST_ELEMENT_FETCH_E
R 0 Reserved
RR_DET...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 Reserved APP_WR_ERR_DETECT
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
15-8 Reserved
7-4 Reserved
Field Function
Offset
Register Offset
DMA_READ_ERR_STAT B8h
US_HIGH_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-28 Reserved
Field Function
The CX_FLT_MASK_UR_POIS filter rule does not affect this behavior. Each bit corresponds to a DMA
channel. Bit [0] corresponds to channel 0. - Enabling: For details, see "Interrupts and Error Handling".
- Masking: The DMA read interrupt Mask register has no effect on this register. - Clearing: You must
write a 1'b1 to the corresponding channel bit in the Abort interrupt field of the "DMA Read Interrupt Clear
Register" (DMA_READ_INT_CLEAR_OFF) to clear this error bit. Note, this also clears the other error bits
for the same channel in this register and in the DMA Read Error Status Low register.
23-20 Reserved
15-12 Reserved
7-4 Reserved
Offset
Register Offset
DMA_READ_LINKED_LI C4h
ST_ERR_EN_OFF
Function
The LIE and RIE bits in the LL element enable the channel "done" interrupts (local and remote). The LLLAIE and LLRAIE bits
enable the channel "abort" interrupts (local and remote).
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reserved RD_CHANNEL_LLLAIE
W
Reset 0 0 0 0 0 0 0 0 u u u u 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
Reserved RD_CHANNEL_LLRAIE
W
Reset 0 0 0 0 0 0 0 0 u u u u 0 0 0 0
Fields
Field Function
31-24 Reserved
23-20 Reserved
Read Channel LL Local Abort Interrupt Enable (LLLAIE). You enable the read channel Local Abort
19-16
interrupt through this bit. The LIE and RIE bits in the LL element enable the read channel done
RD_CHANNEL_ interrupts. Each bit corresponds to a DMA channel. Bit [0] corresponds to channel 0. Used in linked
LLLAIE list mode only. For more details, see "Interrupt Handling". Note: The access attributes of this field are as
follows: - Wire: R/W
15-8 Reserved
7-4 Reserved
Field Function
Read Channel LL Remote Abort Interrupt Enable (LLRAIE). You enable the read channel Remote
3-0
Abort interrupt through this bit. The LIE and RIE bits in the LL element enable the read channel done
RD_CHANNEL_ interrupts. Each bit corresponds to a DMA channel. Bit [0] corresponds to channel 0. Used in linked list
LLRAIE mode only. For more details, see "Interrupt Handling". Note: The access attributes of this field are as
follows: - Wire: R/W
Offset
Register Offset
DMA_READ_DONE_IM CCh
WR_LOW_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_READ_DONE_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_READ_DONE_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
The DMA uses this field to generate bits [31:0] of the address field for the Done IMWr TLP. Bits [1:0]
31-0
must be "00" as this address must be dword aligned. Note: The access attributes of this field are as
DMA_READ_D follows: - Wire: R/W
ONE_LOW_RE
G
Offset
Register Offset
DMA_READ_DONE_IM D0h
WR_HIGH_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_READ_DONE_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_READ_DONE_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 The DMA uses this field to generate bits [63:32] of the address field for the Done IMWr TLP. Note: The
access attributes of this field are as follows: - Wire: R/W
DMA_READ_D
ONE_HIGH_RE
G
Offset
Register Offset
DMA_READ_ABORT_IM D4h
WR_LOW_OFF
Function
Helps the DMA generate the address field for the Abort IMWr TLP.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_READ_ABORT_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_READ_ABORT_LOW_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_READ_ABORT_IM D8h
WR_HIGH_OFF
Function
Helps the DMA generate the address field for the Abort IMWr TLP.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_READ_ABORT_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_READ_ABORT_HIGH_REG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_READ_CH01_IMW DCh
R_DATA_OFF
Function
Helps the DMA generate the data field for the Done or Abort IMWr TLPs on read channels 0 and 1.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
RD_CHANNEL_1_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
RD_CHANNEL_0_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_READ_CH23_IMW E0h
R_DATA_OFF
Function
Helps the DMA generate the data field for the Done or Abort IMWr TLPs on read channels 2 and 3.
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
RD_CHANNEL_3_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
RD_CHANNEL_2_DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_WRITE_ENGINE_ 108h
HSHAKE_CNT_LOW_O
FF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
DMA_WRITE_ENGINE_HSHAKE_CNT_CH DMA_WRITE_ENGINE_HSHAKE_CNT_CH
R 0 0
3 2
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DMA_WRITE_ENGINE_HSHAKE_CNT_CH DMA_WRITE_ENGINE_HSHAKE_CNT_CH
R 0 0
1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
28-24 DMA handshake counter for DMA Write Engine Channel 3. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_WRITE_E
NGINE_HSHAK
E_CNT_CH3
23-21 Reserved
20-16 DMA handshake counter for DMA Write Engine Channel 2. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_WRITE_E
NGINE_HSHAK
E_CNT_CH2
15-13 Reserved
Field Function
12-8 DMA handshake counter for DMA Write Engine Channel 1. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_WRITE_E
NGINE_HSHAK
E_CNT_CH1
7-5 Reserved
4-0 DMA handshake counter for DMA Write Engine Channel 0. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_WRITE_E
NGINE_HSHAK
E_CNT_CH0
Offset
Register Offset
DMA_READ_ENGINE_H 118h
SHAKE_CNT_LOW_OFF
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 DMA_READ_ENGINE_HSHAKE_CNT_CH3 0 DMA_READ_ENGINE_HSHAKE_CNT_CH2
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 DMA_READ_ENGINE_HSHAKE_CNT_CH1 0 DMA_READ_ENGINE_HSHAKE_CNT_CH0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-29 Reserved
Field Function
28-24 DMA handshake counter for DMA Read Engine Channel 3. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_READ_E
NGINE_HSHAK
E_CNT_CH3
23-21 Reserved
20-16 DMA handshake counter for DMA Read Engine Channel 2. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_READ_E
NGINE_HSHAK
E_CNT_CH2
15-13 Reserved
12-8 DMA handshake counter for DMA Read Engine Channel 1. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_READ_E
NGINE_HSHAK
E_CNT_CH1
7-5 Reserved
4-0 DMA handshake counter for DMA Read Engine Channel 0. If CC_DMA_HSHAKE =1, the data transfer in
Linked List mode starts only when the counter is non-zero.
DMA_READ_E
NGINE_HSHAK
E_CNT_CH0
Offset
Register Offset
DMA_CH_CONTROL1_ 200h
OFF_WRCH_0
DMA_CH_CONTROL1_ 400h
OFF_WRCH_1
DMA_CH_CONTROL1_ 600h
OFF_WRCH_2
DMA_CH_CONTROL1_ 800h
OFF_WRCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DMA_RESERV DMA_ CS
DMA_FUNC_NUM LLE CCS RIE LIE LLP TCB CB
W ED1 RES...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-30 Address Translation TLP Header Bit (AT) The DMA uses this TLP header field when generating
MRd/MWr (not IMWr) TLPs. Note: The access attributes of this field are as follows: - Wire: R/W
DMA_AT
29-27 Traffic Class TLP Header Bit (TC) The DMA uses this TLP header field when generating MRd/MWr (not
IMWr) TLPs. Note: The access attributes of this field are as follows: - Wire: R/W
DMA_TC
26 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED5
25 Relaxed Ordering TLP Header Bit (RO) The DMA uses this TLP header field when generating MRd/MWr
(not IMWr) TLPs. Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RO
Source No Snoop TLP Header Bit (DMA_NS_SRC). The DMA uses this TLP header field when
24
generating MRd (SAR addressing space) (not IMWr) TLPs. Note: The access attributes of this field
DMA_NS_SRC are as follows: - Wire: R/W
23 Destination No Snoop TLP Header Bit (DMA_NS_DST). The DMA uses this TLP header field when
generating MWr (DAR addressing space) (not IMWr) TLPs. Note: The access attributes of this field are
DMA_NS_DST as follows: - Wire: R/W
22-17 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED2
Function Number (FN). The controller uses this field when generating the requester ID for the MRd/MWr
16-12
DMA TLP. When you have enabled SR-IOV, then this field is ignored if you have set the VFE field in
DMA_FUNC_N the "DMA Write Channel Control 2 Register" (DMA_CH_CONTROL2_OFF_WRCH_0). Note: The access
UM attributes of this field are as follows: - Wire: R/W
11-10 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED1
Field Function
9 Linked List Enable (LLE). - 0: Disable linked list operation - 1: Enable linked list operation Note: The
access attributes of this field are as follows: - Wire: R/W
LLE
8 Consumer Cycle State (CCS). Used in linked list mode only. It is used to synchronize the producer
(software) and the consumer (DMA). For more details, see "PCS-CCS-CB-TCB Producer-Consumer
CCS Synchronization". You must initialize this bit. The DMA updates this bit during linked list operation. Note:
The access attributes of this field are as follows: - Wire: R/W
7 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED0
6-5 Channel Status (CS). The channel status bits identify the current operational state of the DMA channel.
The operation state encoding for each DMA channel is a s follows: - 00: Reserved - 01: Running. This
CS channel is active and transferring data. - 10: Halted. An error condition has been detected, and the DMA
has stopped this channel. - 11: Stopped. The DMA has transferred all data for this channel, or you
have prematurely stopped this channel by writing to the Stop field of the "DMA Write Doorbell Register"
(DMA_WRITE_DOORBELL_OFF) or "DMA Read Doorbell Register" (DMA_READ_DOORBELL_OFF).
4 Remote Interrupt Enable (RIE). You must set this bit to enable the generation of the Done or Abort
Remote interrupts. For more details, see "Interrupts and Error Handling". In LL mode, the DMA
RIE overwrites this with the RIE of the LL element. The RIE bit in a LL element only enables the Done
interrupt. In non-LL mode, the RIE bit enables the Done and Abort interrupts. This field is not defined in a
link LL element. Note: The access attributes of this field are as follows: - Wire: R/W
3 Local Interrupt Enable (LIE). You must set this bit to enable the generation of the Done or Abort Local
interrupts. For more details, see "Interrupts and Error Handling". In LL mode, the DMA overwrites this
LIE with the LIE of the LL element. The LIE bit in a LL element only enables the Done interrupt. In non-LL
mode, the LIE bit enables the Done and Abort interrupts. This field is not defined in a link LL element.
Note: The access attributes of this field are as follows: - Wire: R/W
2 Load Link Pointer (LLP). Used in linked list mode only. Indicates that this linked list element is a link
element, and its LL element pointer dwords are pointing to the next (non-contiguous) element. The DMA
LLP loads this field with the LLP of the linked list element. Note: The access attributes of this field are as
follows: - Wire: R/W
1 Toggle Cycle Bit (TCB). Indicates to the DMA to toggle its interpretation of the CB. Used in linked list
mode only. It is used to synchronize the producer (software) and the consumer (DMA). For more details,
TCB see "PCS-CCS-CB-TCB Producer-Consumer Synchronization". The DMA loads this field with the TCB of
the linked list element. this field is not defined in a data LL element. Note: The access attributes of this
field are as follows: - Wire: R/W
0 Cycle Bit (CB). Used in linked list mode only. It is used to synchronize the producer (software) and the
consumer (DMA). For more details, see "PCS-CCS-CB-TCB Producer-Consumer Synchronization". The
CB DMA loads this field with the CB of the linked list element. Note: The access attributes of this field are as
follows: - Wire: R/W
Offset
Register Offset
DMA_TRANSFER_SIZE 208h
_OFF_WRCH_0
DMA_TRANSFER_SIZE 408h
_OFF_WRCH_1
DMA_TRANSFER_SIZE 608h
_OFF_WRCH_2
DMA_TRANSFER_SIZE 808h
_OFF_WRCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_TRANSFER_SIZE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_TRANSFER_SIZE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
DMA Transfer Size. You program this register with the size of the DMA transfer. The maximum DMA
31-0
transfer size is 4Gbytes. The minimum transfer size is one byte (0x1). This field is automatically
DMA_TRANSF decremented by the DMA as the DMA write channel transfer progresses. This field indicates the number
ER_SIZE bytes remaining to be transferred. When all bytes are successfully transferred the current transfer size
is zero. In LL mode, the DMA overwrites this register with the corresponding dword of the LL element.
You can read this register to monitor the transfer progress, however in some scenarios this register is
updated after a delay. For example, when less than 3 channels are doorbelled, this register is updated
only after a descriptor finishes(linked list mode), or the transfer ends (non-linked list mode). Note: The
access attributes of this field are as follows: - Wire: R/W
Offset
Register Offset
DMA_SAR_LOW_OFF_ 20Ch
WRCH_0
DMA_SAR_LOW_OFF_ 40Ch
WRCH_1
DMA_SAR_LOW_OFF_ 60Ch
WRCH_2
DMA_SAR_LOW_OFF_ 80Ch
WRCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
SRC_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SRC_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_SAR_HIGH_OFF_ 210h
WRCH_0
DMA_SAR_HIGH_OFF_ 410h
WRCH_1
DMA_SAR_HIGH_OFF_ 610h
WRCH_2
DMA_SAR_HIGH_OFF_ 810h
WRCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
SRC_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SRC_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Source Address Register (Higher 32 bits). In LL mode, the DMA overwrites this with the corresponding
dword of the LL element. Note: The access attributes of this field are as follows: - Wire: R/W
SRC_ADDR_R
EG_HIGH
Offset
Register Offset
DMA_DAR_LOW_OFF_ 214h
WRCH_0
DMA_DAR_LOW_OFF_ 414h
WRCH_1
Register Offset
DMA_DAR_LOW_OFF_ 614h
WRCH_2
DMA_DAR_LOW_OFF_ 814h
WRCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DST_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DST_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_DAR_HIGH_OFF_ 218h
WRCH_0
DMA_DAR_HIGH_OFF_ 418h
WRCH_1
DMA_DAR_HIGH_OFF_ 618h
WRCH_2
Register Offset
DMA_DAR_HIGH_OFF_ 818h
WRCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DST_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DST_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Destination Address Register (Higher 32 bits). In LL mode, the DMA overwrites this with the
31-0
corresponding dword of the LL element. Note: The access attributes of this field are as follows: - Wire:
DST_ADDR_RE R/W
G_HIGH
Offset
Register Offset
DMA_LLP_LOW_OFF_W 21Ch
RCH_0
DMA_LLP_LOW_OFF_W 41Ch
RCH_1
DMA_LLP_LOW_OFF_W 61Ch
RCH_2
DMA_LLP_LOW_OFF_W 81Ch
RCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LLP_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LLP_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Lower bits of the address of the linked list transfer list in local memory. Used in linked list mode only.
Updated by the DMA to point to the next element in the transfer list after the previous element is
LLP_LOW consumed. - When the current element is a data element; this field is incremented by 6. - When the
current element is a link element; this field is overwritten by the LL Element Pointer of the element. Note:
The access attributes of this field are as follows: - Wire: R/W
Offset
Register Offset
DMA_LLP_HIGH_OFF_ 220h
WRCH_0
DMA_LLP_HIGH_OFF_ 420h
WRCH_1
DMA_LLP_HIGH_OFF_ 620h
WRCH_2
DMA_LLP_HIGH_OFF_ 820h
WRCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LLP_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LLP_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Upper 32 bits of the address of the linked list transfer list in local memory. Used in linked list mode only.
Updated by the DMA to point to the next element in the transfer list as elements are consumed. Note:
LLP_HIGH The access attributes of this field are as follows: - Wire: R/W
Offset
Register Offset
DMA_CH_CONTROL1_ 300h
OFF_RDCH_0
DMA_CH_CONTROL1_ 500h
OFF_RDCH_1
DMA_CH_CONTROL1_ 700h
OFF_RDCH_2
DMA_CH_CONTROL1_ 900h
OFF_RDCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DMA_RESERV DMA_ CS
DMA_FUNC_NUM LLE CCS RIE LIE LLP TCB CB
W ED1 RES...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-30 Address Translation TLP Header Bit (AT) The DMA uses this TLP header field when generating
MRd/MWr (not IMWr) TLPs. Note: The access attributes of this field are as follows: - Wire: R/W
DMA_AT
29-27 Traffic Class TLP Header Bit (TC) The DMA uses this TLP header field when generating MRd/MWr (not
IMWr) TLPs. Note: The access attributes of this field are as follows: - Wire: R/W
DMA_TC
26 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED5
25 Relaxed Ordering TLP Header Bit (RO) The DMA uses this TLP header field when generating MRd/MWr
(not IMWr) TLPs. Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RO
Source No Snoop TLP Header Bit (DMA_NS_SRC). The DMA uses this TLP header field when
24
generating MRd (SAR addressing space) (not IMWr) TLPs. Note: The access attributes of this field
DMA_NS_SRC are as follows: - Wire: R/W
23 Destination No Snoop TLP Header Bit (DMA_NS_DST). The DMA uses this TLP header field when
generating MWr (DAR addressing space) (not IMWr) TLPs. Note: The access attributes of this field are
DMA_NS_DST as follows: - Wire: R/W
22-17 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED2
Function Number (FN). The controller uses this field when generating the requester ID for the MRd/MWr
16-12
DMA TLP. When you have enabled SR-IOV, then this field is ignored if you have set the VFE field in
DMA_FUNC_N the "DMA Read Channel Control 2 Register" (DMA_CH_CONTROL2_OFF_RDCH_0). Note: The access
UM attributes of this field are as follows: - Wire: R/W
11-10 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED1
Field Function
9 Linked List Enable (LLE). - 0: Disable linked list operation - 1: Enable linked list operation Note: The
access attributes of this field are as follows: - Wire: R/W
LLE
8 Consumer Cycle State (CCS). Used in linked list mode only. It is used to synchronize the producer
(software) and the consumer (DMA). For more details, see "PCS-CCS-CB-TCB Producer-Consumer
CCS Synchronization". You must initialize this bit. The DMA updates this bit during linked list operation. Note:
The access attributes of this field are as follows: - Wire: R/W
7 Reserved Note: The access attributes of this field are as follows: - Wire: R/W
DMA_RESERV
ED0
6-5 Channel Status (CS). The channel status bits identify the current operational state of the DMA channel.
The operation state encoding for each DMA channel is a s follows: - 00: Reserved - 01: Running. This
CS channel is active and transferring data. - 10: Halted. An error condition has been detected, and the DMA
has stopped this channel. - 11: Stopped. The DMA has transferred all data for this channel, or you
have prematurely stopped this channel by writing to the Stop field of the "DMA Read Doorbell Register"
(DMA_WRITE_DOORBELL_OFF) or "DMA Read Doorbell Register" (DMA_READ_DOORBELL_OFF).
4 Remote Interrupt Enable (RIE). You must set this bit to enable the generation of the Done or Abort
Remote interrupts. For more details, see "Interrupts and Error Handling". In LL mode, the DMA
RIE overwrites this with the RIE of the LL element. The RIE bit in a LL element only enables the Done
interrupt. In non-LL mode, the RIE bit enables the Done and Abort interrupts. This field is not defined in a
link LL element. Note: The access attributes of this field are as follows: - Wire: R/W
3 Local Interrupt Enable (LIE). You must set this bit to enable the generation of the Done or Abort Local
interrupts. For more details, see "Interrupts and Error Handling". In LL mode, the DMA overwrites this
LIE with the LIE of the LL element. The LIE bit in a LL element only enables the Done interrupt. In non-LL
mode, the LIE bit enables the Done and Abort interrupts. This field is not defined in a link LL element.
Note: The access attributes of this field are as follows: - Wire: R/W
2 Load Link Pointer (LLP). Used in linked list mode only. Indicates that this linked list element is a link
element, and its LL element pointer dwords are pointing to the next (non-contiguous) element. The DMA
LLP loads this field with the LLP of the linked list element. Note: The access attributes of this field are as
follows: - Wire: R/W
1 Toggle Cycle Bit (TCB). Indicates to the DMA to toggle its interpretation of the CB. Used in linked list
mode only. It is used to synchronize the producer (software) and the consumer (DMA). For more details,
TCB see "PCS-CCS-CB-TCB Producer-Consumer Synchronization". The DMA loads this field with the TCB of
the linked list element. this field is not defined in a data LL element. Note: The access attributes of this
field are as follows: - Wire: R/W
0 Cycle Bit (CB). Used in linked list mode only. It is used to synchronize the producer (software) and the
consumer (DMA). For more details, see "PCS-CCS-CB-TCB Producer-Consumer Synchronization". The
CB DMA loads this field with the CB of the linked list element. Note: The access attributes of this field are as
follows: - Wire: R/W
Offset
Register Offset
DMA_TRANSFER_SIZE 308h
_OFF_RDCH_0
DMA_TRANSFER_SIZE 508h
_OFF_RDCH_1
DMA_TRANSFER_SIZE 708h
_OFF_RDCH_2
DMA_TRANSFER_SIZE 908h
_OFF_RDCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DMA_TRANSFER_SIZE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DMA_TRANSFER_SIZE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
DMA Transfer Size. You program this register with the size of the DMA transfer. The maximum DMA
31-0
transfer size is 4Gbytes. The minimum transfer size is one byte (0x1). This field is automatically
DMA_TRANSF decremented by the DMA as the DMA read channel transfer progresses. This field indicates the number
ER_SIZE bytes remaining to be transferred. When all bytes are successfully transferred the current transfer size
is zero. In LL mode, the DMA overwrites this register with the corresponding dword of the LL element.
You can read this register to monitor the transfer progress, however in some scenarios this register is
updated after a delay. For example, when less than 3 channels are doorbelled, this register is updated
only after a descriptor finishes(linked list mode), or the transfer ends (non-linked list mode). Note: The
access attributes of this field are as follows: - Wire: R/W
Offset
Register Offset
DMA_SAR_LOW_OFF_ 30Ch
RDCH_0
DMA_SAR_LOW_OFF_ 50Ch
RDCH_1
DMA_SAR_LOW_OFF_ 70Ch
RDCH_2
DMA_SAR_LOW_OFF_ 90Ch
RDCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
SRC_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SRC_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_SAR_HIGH_OFF_ 310h
RDCH_0
DMA_SAR_HIGH_OFF_ 510h
RDCH_1
DMA_SAR_HIGH_OFF_ 710h
RDCH_2
DMA_SAR_HIGH_OFF_ 910h
RDCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
SRC_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
SRC_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
31-0 Source Address Register (Higher 32 bits). In LL mode, the DMA overwrites this with the corresponding
dword of the LL element. Note: The access attributes of this field are as follows: - Wire: R/W
SRC_ADDR_R
EG_HIGH
Offset
Register Offset
DMA_DAR_LOW_OFF_ 314h
RDCH_0
DMA_DAR_LOW_OFF_ 514h
RDCH_1
Register Offset
DMA_DAR_LOW_OFF_ 714h
RDCH_2
DMA_DAR_LOW_OFF_ 914h
RDCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DST_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DST_ADDR_REG_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_DAR_HIGH_OFF_ 318h
RDCH_0
DMA_DAR_HIGH_OFF_ 518h
RDCH_1
DMA_DAR_HIGH_OFF_ 718h
RDCH_2
Register Offset
DMA_DAR_HIGH_OFF_ 918h
RDCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
DST_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DST_ADDR_REG_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Destination Address Register (Higher 32 bits). In LL mode, the DMA overwrites this with the
31-0
corresponding dword of the LL element. Note: The access attributes of this field are as follows: - Wire:
DST_ADDR_RE R/W
G_HIGH
Offset
Register Offset
DMA_LLP_LOW_OFF_R 31Ch
DCH_0
DMA_LLP_LOW_OFF_R 51Ch
DCH_1
DMA_LLP_LOW_OFF_R 71Ch
DCH_2
DMA_LLP_LOW_OFF_R 91Ch
DCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LLP_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LLP_LOW
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
DMA_LLP_HIGH_OFF_R 320h
DCH_0
DMA_LLP_HIGH_OFF_R 520h
DCH_1
DMA_LLP_HIGH_OFF_R 720h
DCH_2
DMA_LLP_HIGH_OFF_R 920h
DCH_3
Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
LLP_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
LLP_HIGH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Chapter 4
PHY
PHY provides SerDes lanes to support both the PCIe and Ethernet-related functionality described in Introduction to
the Subsystem.
4.2 Interfaces
The PHY can connect to low-voltage differential signaling (LVDS) and current-mode logic (CML) interfaces. If you need these, your
interface must support AC coupling.
PCIE_RC.GEN2_CTRL_OFF.B.CONFIG_PHY_TX_CHANGE = 1;
PCIE_RC.LINK_CONTROL2_LINK_STATUS2_REG.B.PCIE_CAP_TX_MARGIN = 0x3;
4.4.1 PLL bandwidth updates for PCIe applications (PCIe_0 use case)
The PHY PLL bandwidth settings require the following update to optimize performance for PCIe applications.
4.4.2 PHY receiver fixed equalization IQ tuning for PCIe Gen3 long and short channel cases
This code example applies only to chips that include two instances of the SerDes subsystem and therefore have PCIe_1.
SERDES_SS_PCIE_1.PHY_REG_ADDR.B.ADDR = 0x3119;
delay(100);
SERDES_SS_PCIE_1.PHY_REG_DATA.B.DATA = 0x03;
delay(100);
SERDES_SS_PCIE_1.PHY_REG_ADDR.B.ADDR = 0x3119;
delay(100);
SERDES_SS_PCIE_1.PHY_REG_DATA.B.DATA = 0x13;
delay(100);
delay(10000);
SERDES_SS.PHY_REG_ADDR.B.ADDR = 0x19; //SUP_DIG_ASIC_IN
while(SERDES_SS.PHY_REG_DATA.B.DATA == 0x201a); // wait RTUNE_ACK = 1
delay(10000);
SERDES_SS.PHY_REG_ADDR.B.ADDR = 0x200a; //RAWCMN_DIG_CMN_CTL_1
SERDES_SS.PHY_REG_DATA.B.DATA = 0x20; // RTUNE_REQ_OVRD value
The following code example is for VBOOST_CTRL = 5. It shows how you can adjust the transmitter VBOOST level.
Step Action
1 Write 1 to SS_RW_REG_0[PHY0_CR_PARA_SEL].
2 Write 1 to PHY_REG_ADDR[PHY_REG_EN].
3 Use this chapter to locate the index of the PHY register you wish to access.
5 Read or write PHY_REG_DATA[DATA] to obtain the result of the PHY register access.
(In bits)
19h Current values for incoming SUP control signals from ASIC 16 RO See
(SUP_DIG_ASIC_IN) description
Index
Register Index
SUP_DIG_LVL_OVRD_I Fh
N
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset u u u u u u 0 1 1 1 0 1 0 0 0 0
Fields
Field Function
15-10 Reserved
TX_VBOOST_L
VL_EN
TX_VBOOST_L
VL
RX_VREF_CTR
L_EN
RX_VREF_CTR
L
4.6.3 Current values for incoming SUP control signals from ASIC (SUP_DIG_ASIC_IN)
Index
Register Index
SUP_DIG_ASIC_IN 19h
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
TEST_ MPLL MPLL RES_ RES_ RES_ RES_ RTUN RTUN TEST_ TEST_ REF_ REF_ REF_ REF_ PHY_
R
TX... B_S... A_S... ACK... ACK... REQ... REQ... E_A... E_R... PO... BU... USE... REP... CLK... CLK... RES...
Reset u u u u u u u u u u u u u u u u
Fields
Field Function
TEST_TX_REF
_CLK_EN
MPLLB_STATE
MPLLA_STATE
RES_ACK_OUT
RES_ACK_IN
RES_REQ_OU
T
RES_REQ_IN
RTUNE_ACK
RTUNE_REQ
TEST_POWER
DOWN
TEST_BURNIN
Field Function
REF_USE_PAD
REF_REPEAT_
CLK_EN
REF_CLK_DIV2
_EN
REF_CLK_EN
PHY_RESET
Index
Register Index
SUP_DIG_RTUNE_CON 61h
FIG
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset u u u u u u u u u u 0 1 0 1 0 1
Fields
Field Function
15-6 Reserved
Field Function
SUP_ANA_TER 000b - 54 Ω
M_CTRL
001b - 52 Ω
010b - 50 Ω (default)
011b - 48 Ω
100b - 46 Ω
101b - 44 Ω
110b - 42 Ω
111b - 40 Ω
TX_CAL_EN
FAST_RTUNE
RX_CAL_EN
Index
Register Index
SUP_DIG_RTUNE_TXD 67h
N_STAT
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved TXDN_STAT
Reset u u u u u u u u u u u u u u u u
Fields
Field Function
15-10 Reserved
Field Function
TXDN_STAT
Index
Register Index
SUP_DIG_RTUNE_TXU 68h
P_STAT
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved TXUP_STAT
Reset u u u u u u u u u u u u u u u u
Fields
Field Function
15-10 Reserved
TXUP_STAT
Index
Register Index
RAWCMN_DIG_MPLLA_ 2001h
OVRD_IN
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved MPLL MPLL MPLL MPLL MPLL MPLL MPLLA_TX_CLK_DIV_O MPLL MPLL
Reset u u u u u 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-11 Reserved
MPLLA_BW_O
VRD_EN
MPLLA_DIV8_C
LK_EN_OVRD_
EN
MPLLA_DIV8_C
LK_EN_OVRD_
VAL
MPLLA_DIV10_
CLK_EN_OVRD
_EN
MPLLA_DIV10_
CLK_EN_OVRD
_VAL
MPLLA_TX_CL
K_DIV_OVRD_
EN
MPLLA_TX_CL
K_DIV_OVRD_
VAL
Field Function
MPLLA_WORD
_DIV2_EN_OV
RD_EN
MPLLA_WORD
_DIV2_EN_OV
RD_VAL
Index
Register Index
RAWCMN_DIG_MPLLA_ 2002h
BW_OVRD_IN
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MPLLA_BW_OVRD_VAL
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1
Fields
Field Function
MPLLA_BW_O
VRD_VAL
Index
Register Index
RAWCMN_DIG_MPLLB_ 2004h
OVRD_IN
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved MPLL MPLL MPLL MPLL MPLL MPLL MPLLB_TX_CLK_DIV_O MPLL MPLL
Reset u u u u u 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-11 Reserved
MPLLB_BW_O
VRD_EN
MPLLB_DIV8_C
LK_EN_OVRD_
EN
MPLLB_DIV8_C
LK_EN_OVRD_
VAL
MPLLB_DIV10_
CLK_EN_OVRD
_EN
MPLLB_DIV10_
CLK_EN_OVRD
_VAL
MPLLB_TX_CL
K_DIV_OVRD_
EN
MPLLB_TX_CL
K_DIV_OVRD_
VAL
Field Function
MPLLB_WORD
_DIV2_EN_OV
RD_EN
MPLLB_WORD
_DIV2_EN_OV
RD_VAL
Index
Register Index
RAWCMN_DIG_MPLLB_ 2005h
BW_OVRD_IN
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MPLLB_BW_OVRD_VAL
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1
Fields
Field Function
MPLLB_BW_O
VRD_VAL
Index
Register Index
RAWCMN_DIG_CMN_C 200Ah
TL_1
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset u u u u u u u u u u 0 0 0 0 0 0
Fields
Field Function
15-6 Reserved
RTUNE_REQ_
OVRD_EN
RTUNE_REQ_
OVRD_VAL
MPLLB_INIT_C
AL_DISABLE_O
VRD_EN
MPLLB_INIT_C
AL_DISABLE_O
VRD_VAL
MPLLA_INIT_C
AL_DISABLE_O
VRD_EN
MPLLA_INIT_C
AL_DISABLE_O
VRD_VAL
Index
Register Index
RAWLANE0_DIG_PCS_ 3019h
XF_RX_EQ_DELTA_IQ_
OVRD_IN
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved RX_E
RX_EQ_DELTA_IQ_OVRD_VAL
W Q_D...
Reset u u u u u u u u u u u 0 0 0 0 0
Fields
Field Function
15-5 Reserved
RX_EQ_DELTA
_IQ_OVRD_EN
RX_EQ_DELTA
_IQ_OVRD_VA
L
Index
Register Index
RAWLANE1_DIG_PCS_ 3119h
XF_RX_EQ_DELTA_IQ_
OVRD_IN
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved RX_E
RX_EQ_DELTA_IQ_OVRD_VAL
W Q_D...
Reset u u u u u u u u u u u 0 0 0 0 0
Fields
Field Function
15-5 Reserved
RX_EQ_DELTA
_IQ_OVRD_EN
RX_EQ_DELTA
_IQ_OVRD_VA
L
Chapter 5
XPCS
XPCS implements a Physical Coding Sublayer (PCS) that provides an interface between the Media Access Control (MAC) and
Physical Medium Attachment Sublayer (PMA) through a GMII interface. This interface is defined for a single lane that operates
at 125 MHz to support 1000BASE-X PMA.
XPCS supports 1000BASE-X and SGMII with Clause 37 auto-negotiation support.
OFS The offset of the register as shown in the memory VR_MII_DIG_STS of XPCS_0 is at offset 1F_8010h,
map so OFS=1F_8010h.
DATA1 OFSLEFT —
3 Read or write the desired register data at address ADDR2. Read to, or write from, 8_200Ch.
You may repeat this step if you have multiple reads or writes
from the same register.
Step Action for 100 MHz reference clock Action for 125 MHz reference clock
2 Write Ch to VR_MII_Gen5_12G_16G_TX_EQ_CTRL0[TX_EQ_MAIN].
3 Write 4h to VR_MII_Consumer_10G_TX_TERM_CTRL[TX0_TERM].
4 Write 0 to VR_MII_DIG_CTRL1[EN_2_5G_MODE].
6 Write 0 to VR_MII_Gen5_12G_16G_MPLL_CMN_CTRL[MPLLB_SEL_0].
Step Action for 100 MHz reference clock Action for 125 MHz reference clock
9 Write 0 to VR_MII_Gen5_12G_MPLLA_CTRL1[MPLLA_FRACN_CTRL].
16 Write 0 to VR_MII_Gen5_12G_16G_RX_CDR_CTRL[VCO_LOW_FREQ_0].
17 Write 1 to VR_MII_Gen5_12G_16G_MPLLB_CTRL0[MPLLB_CAL_DISABLE].
21 Write 1 to VR_MII_Gen5_12G_16G_RX_GENCTRL1[RX_RST_0].
22 Write 0 to VR_MII_Gen5_12G_16G_RX_GENCTRL1[RX_RST_0].
Step Action for 100 MHz reference clock Action for 125 MHz reference clock
Step Action for 100 MHz reference clock Action for 125 MHz reference clock
2 Write Ch to VR_MII_Gen5_12G_16G_TX_EQ_CTRL0[TX_EQ_MAIN].
3 Write 4h to VR_MII_Consumer_10G_TX_TERM_CTRL[TX0_TERM].
4 Write 1 to VR_MII_DIG_CTRL1[EN_2_5G_MODE].
6 Write 1 to VR_MII_Gen5_12G_16G_MPLL_CMN_CTRL[MPLLB_SEL_0].
16 Write 1 to VR_MII_Gen5_12G_16G_RX_CDR_CTRL[VCO_LOW_FREQ_0].
Step Action for 100 MHz reference clock Action for 125 MHz reference clock
17 Write 1 to VR_MII_Gen5_12G_16G_MPLLA_CTRL0[MPLLA_CAL_DISABLE].
21 Write 1 to VR_MII_Gen5_12G_16G_RX_GENCTRL1[RX_RST_0].
22 Write 0 to VR_MII_Gen5_12G_16G_RX_GENCTRL1[RX_RST_0].
NOTE
The SGMII speed is not the same as the PHY speed. To change the PHY speed, see Switching the PHY to 1G
speed† and Switching the PHY to 2.5G speed†.
Step Action
1 Write 0 to SR_MII_CTRL[AN_ENABLE].
2 Write 0 to VR_MII_AN_CTRL[MII_CTRL].
3 Write to the following fields in SR MII MMD Control (SR_MII_CTRL) to select the speed:
• For 1G or 2.5G speed, write 1 to MII_CTRL_SS6 and 0 to MII_CTRL_SS13.
• For 100M speed, write 0 to MII_CTRL_SS6 and 1 to MII_CTRL_SS13.
• For 10M speed, write 0 to MII_CTRL_SS6 and 0 to MII_CTRL_SS13.
5.5.2 Autonegotiation
The SerDes subsystem supports autonegotiation in the following scenarios:
• At 1G speed, autonegotiation to 10M, 100M, or 1G speed
• At 2.5G speed, autonegotiation only to 2.5G speed
Autonegotiation changes the duplex type and link speed only in XPCS, not the MAC. You must provide the duplex type and link
speed to the MAC.
Step Action
1 Write 0 to SR_MII_CTRL[AN_ENABLE].
4 Write 0 to VR_MII_AN_CTRL[MII_CTRL].
6 Write 1 to VR_MII_DIG_CTRL1[CL37_TMR_OVR_RIDE].
9 Write 1 to SR_MII_CTRL[AN_ENABLE].
Step Action
2 Read VR_MII_AN_INTR_STS[CL37_ANSGM_STS] to determine the duplex type, link speed, and link status.
3 Write 0 to VR_MII_AN_INTR_STS[CL37_ANCMPLT_INTR].
Subsystem working mode Instance with PHY control First vendor-specific Next vendor-specific
(SS_RW_REG_0[SUBSYS_MODE]) software reset software reset
010b XPCS_1
(In bits)
(In bits)
(In bits)
(In bits)
Offset
Register Offset
SR_MII_CTRL 1F_0000h
Function
The host can use this register to control (enable or disable) some of the features supported by the XPCS with 1G (1000BASE-
X) support and Clause 37 auto-negotiation support.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 0
Fields
Field Function
14 Loopback enable
LBE When LBE=1, the PHY Tx lanes loop back to the PHY Rx lanes.
12 Enable auto-negotiation
AN_ENABLE When you program AN_ENABLE=1, you enable the Clause 37 auto-negotiation process.
11 Power-down mode
LPM This field controls the Power-down mode of the XPCS.
When the host clears this field, the XPCS resumes the normal operation. After clearing this field, the host
must wait until Bits[4:2] of VR XS or PCS MMD Digital Status Register indicate that the XPCS is in the
normal state.
Do not access any other registers when the XPCS is in Power-down mode.
0b - Normal operation
1b - The XPCS and the PHY enter Power-down mode. To trigger Power-down mode, the XPCS
turns off the PHY receiver and transmitter, then switches off all the clocks.
Field Function
10 Reserved
8 Duplex mode
DUPLEX_MOD This bit specifies the duplex mode of the XPCS.
E
If Bit 12 is set to 0, this bit determines the PHY link duplex mode. If Bit 12 is set to 1, then the PHY link duplex
mode is independent of this bit (although the host can write any value) and is determined by the outcome
of the Clause 37 auto-negotiation process.
0b - Half duplex
1b - Full duplex
7 Reserved
6 Speed selection
SS6 This field, along with SS13, indicates the speed. For more information, see the SS13 field description.
5 Reserved
SS5
4-0 Reserved
Offset
Register Offset
SR_MII_STS 1F_0001h
Function
The host uses this register to know the features supported by the XPCS in the 1000BASE-X mode.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ABL10 FD100 HD100 FD10A HD10 FD100 HD100 EXT_S UN_DI MF_P AN_ AN_ LINK_ EXT_R
R RF Reserv
0T4 ABL ABL BL ABL T T TS... R_... RE_... CMPL ABL STS EG...
ed
W
Reset 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1
Fields
Field Function
15 100BASE-T4 ability
ABL100T4 The XPCS always returns 0 because it does not support this functionality.
7 Unidirectional ability
UN_DIR_ABL On this chip, UN_DIR_ABL is always 1.
0b - The XPCS is able to transmit GMII only when the device has determined the valid link.
1b - The XPCS is able to transmit GMII irrespective of whether the device has determined the
valid link or not.
6 MF preamble suppression
On this chip, MF_PRE_SUP is always 0.
Field Function
MF_PRE_SUP 0b - The XPCS does not accept the MDIO frames with preamble suppressed.
1b - The XPCS accepts the MDIO frames with preamble suppressed.
5 Auto-negotiation complete
AN_CMPL When this field is set to 1, the contents of the AN MMD Advertizement, AN MMD Link partner Ability, and
AN MMD Expansion registers are valid. This field returns 0 if AN_ENABLE is set to 0.
0b - The AN process is not complete.
1b - The AN process is complete.
3 Auto-negotiation ability
AN_ABL On this chip, AN_ABL is always 1.
0b - The XPCS is unable to perform auto-negotiation.
1b - The XPCS is able to perform auto-negotiation.
1 Reserved
Offset
Register Offset
SR_MII_DEV_ID1 1F_0002h
Function
This register returns the configurable Organizationally Unique Identifier (OUI) to the host.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VS_MII_DEV_OUI_3_18
Reset 0 1 1 1 1 0 0 1 1 0 0 1 0 1 1 0
Fields
Field Function
Offset
Register Offset
SR_MII_DEV_ID2 1F_0003h
Function
This register returns the configurable Organizationally Unique Identifier (OUI), model number, and revision number of the
device to the host.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 1 0 0 1 1 1 0 1 1 0 1 0 0 0 0
Fields
Field Function
Field Function
Offset
Register Offset
SR_MII_AN_ADV 1F_0004h
Function
The host uses this register to advertise the abilities and status of the local device to its link partner through the Clause 37
auto-negotiation protocol.
NOTE
This register is present only for configurations with 1G/KX support.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R NP Reserv
RF Reserved PAUSE HD FD Reserved
W ed
Reset 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
Fields
Field Function
15 Next page
NP The XPCS always returns this field as 0 because it does not support the next-page feature.
Field Function
14 Reserved
11-9 Reserved
6 Half duplex
HD HD=1 indicates that the device can operate in half-duplex mode.
5 Full duplex
FD FD=1 indicates that the device can operate in full-duplex mode.
4-0 Reserved
Offset
Register Offset
SR_MII_LP_BABL 1F_0005h
Function
The host uses this page to know the link partner's ability when the base page is received through Clause 37 auto-negotiation.
The content of this register is valid only for 1000BASE-X autonegotiation. It is not valid in SGMII auto-negotiation.
NOTE
This register is present only for configurations with 1G/KX support.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LP_
R LP_NP LP_RF LP_PAUSE LP_HD LP_FD
ACK Reserved Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15 Next page
LP_NP This field indicates that the link partner can handle the next-page feature.
NOTE
To exchange information through the next-page feature, both devices (local and remote)
should have the capability to handle this feature. The XPCS does not support the next-page
feature. Therefore, the next-page exchange does not happen.
11-9 Reserved
6 Half duplex
Field Function
LP_HD LP_HD=1 indicates that the link partner is capable of operating in half-duplex mode.
5 Full duplex
LP_FD LP_FD=1 indicates that the link partner is capable of operating in full-duplex mode.
4-0 Reserved
Offset
Register Offset
SR_MII_EXPN 1F_0006h
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LD_NP PG_
R Reserv
Reserved _A... RCVD
ed
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-3 Reserved
Field Function
0 Reserved
Offset
Register Offset
SR_MII_EXT_STS 1F_000Fh
Function
This register is present only for configurations with 1G/KX support.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
11-0 Reserved
Offset
Register Offset
SR_MII_TIME_SYNC_A 1F_0708h
BL
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MII_TX MII_RX
R
Reserved _... _...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Fields
Field Function
15-2 Reserved
Offset
Register Offset
SR_MII_TIME_SYNC_TX 1F_0709h
_MAX_DLY_LWR
Function
SThis register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_TX_MAX_DLY_LWR
Reset 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
Fields
Field Function
15-0 Indicates the lower 16 bits of the 32-bit value that indicates the maximum data delay (in ns) in the XPCS
transmit path.
MII_TX_MAX_D
LY_LWR
Offset
Register Offset
SR_MII_TIME_SYNC_TX 1F_070Ah
_MAX_DLY_UPR
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_TX_MAX_DLY_UPR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-0 Indicates the upper 16 bits of the 32-bit value that indicates the maximum data delay (in ns) in the XPCS
transmit path.
MII_TX_MAX_D
LY_UPR
Offset
Register Offset
SR_MII_TIME_SYNC_TX 1F_070Bh
_MIN_DLY_LWR
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_TX_MIN_DLY_LWR
Reset 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
Fields
Field Function
15-0 Indicates the lower 16 bits of the 32-bit value that indicates the minimum data delay (in ns) in the XPCS
transmit path.
MII_TX_MIN_D
LY_LWR
Offset
Register Offset
SR_MII_TIME_SYNC_TX 1F_070Ch
_MIN_DLY_UPR
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_TX_MIN_DLY_UPR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-0 Indicates the upper 16 bits of the 32-bit value that indicates the minimum data delay (in ns) in the XPCS
transmit path.
MII_TX_MIN_D
LY_UPR
Offset
Register Offset
SR_MII_TIME_SYNC_R 1F_070Dh
X_MAX_DLY_LWR
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_RX_MAX_DLY_LWR
Reset 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0
Fields
Field Function
15-0 Indicates the lower 16 bits of the 32-bit value that indicates the maximum data delay (in ns) in the XPCS
receive path.
MII_RX_MAX_D
LY_LWR
Offset
Register Offset
SR_MII_TIME_SYNC_R 1F_070Eh
X_MAX_DLY_UPR
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_RX_MAX_DLY_UPR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-0 Indicates the upper 16 bits of the 32-bit value that indicates the maximum data delay (in ns) in the XPCS
receive path.
MII_RX_MAX_D
LY_UPR
Offset
Register Offset
SR_MII_TIME_SYNC_R 1F_070Fh
X_MIN_DLY_LWR
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_RX_MIN_DLY_LWR
Reset 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0
Fields
Field Function
15-0 Indicates the lower 16 bits of the 32-bit value that indicates the minimum data delay (in ns) in the XPCS
receive path.
MII_RX_MIN_D
LY_LWR
Offset
Register Offset
SR_MII_TIME_SYNC_R 1F_0710h
X_MIN_DLY_UPR
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MII_RX_MIN_DLY_UPR
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-0 Indicates the upper 16 bits of the 32-bit value that indicates the minimum data delay (in ns) in the XPCS
receive path.
MII_RX_MIN_D
LY_UPR
Offset
Register Offset
VR_MII_DIG_CTRL1 1F_8000h
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
NOTE
For information about the read or write access for any register during the reset process, see
"Special Case Register Access" section.
14 Rx to Tx loopback enable
R2TLBE This bit controls the loopback path from the GMII Rx to the GMII Tx at the GMII interface. It reflects the value
programmed to R2TLBE bit of VR XS or PCS MMD Digital Control 1 Register , as it is a shared bit.
0b - Loopback path is disabled
1b - Loopback path is enabled
12 Reserved
11 Power save
PWRSV When this field is 1, XPCS triggers the power-down mode by turning off the PHY Receiver and Transmitter,
and without turning off MPLL.
When the host writes 0 to this field, XPCS resumes normal operation.
After writing 0 to this field, the host must wait until VR_MII_DIG_STS[PSEQ_STATE] indicates that XPCS
is in a normal state.
0b - Normal operation
1b - XPCS and the PHY enter the power-save mode
10 Reserved
CS_EN
Field Function
then software might need to program 'USRA_RST' bit prior to starting packet transfer in the new speed
mode. Note: This bit should be set only when XPCS is configured as SGMII/USXGMII/QSGMII MAC i.e.,
TX_CONFIG=0 For other configurations: This is a read-only reserved field and returns 0.
5 Reserved
4 Tx lane 0 disable
DTXLANED_0 When this field is set, the XPCS disables the Tx Lane 0 of the PHY.
When reset, the XPCS enables the Tx Lane 0 of the PHY.
This field is Read-Write only when MAIN_MODE= 1000BASEX-Only PCS.
This bit is shared with the following:
• Bit 4 of VR XS or PCS MMD Digital Control1 Register and VR MII MMD Digital Control1 Register
• Bit 1 of SR PMA MMD Transmit Disable Register
• Bit 0 of SR PMA or PMD KX Control Register
Field Function
Offset
Register Offset
VR_MII_AN_CTRL 1F_8001h
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-9 Reserved
8 MII Control This bit controls the width of the MAC interface when operating at SGMII/QSGMII/USXGMII
speed modes of 10 Mbps or 100 Mbps - 0: 4-bit MII - 1: 8-bit MII This bit also controls the xpcs_mii_ctrl_o
MII_CTRL signal which is used for external clock multiplexing of the clk_mii_tx_i and clk_mii_rx_i signals.
7-5 Reserved
4 SGMII Link Status/ USXGMII Link Status /QSGMII Port0 Link Status
SGMII_LINK_S This bit is used in Bit 15 of the Config_Reg during Clause 37 auto-negotiation when the TX_CONFIG bit
TS of this register is set to 1 in the SGMII/QSGMII/USXGMII mode and when PHY_MODE_CTRL bit of VR
MII MMD Digital Control 1 Register is 0 . - 0: Link Down - 1: Link Up
3 Transmit configuration
TX_CONFIG This field controls the Config_Reg value to be used during the Clause 37 auto-negotiation in the SGMII/
QSGMII/USXGMII mode.
0b - Configures the XPCS as the MAC side SGMII/QSGMII/USXGMII
1b - Configures the XPCS as the PHY side SGMII/QSGMII/USXGMII
Offset
Register Offset
VR_MII_AN_INTR_STS 1F_8002h
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LP_CK LP_EE
R Reserv USXG_AN_STS Reserv CL37_ANSGM_STS CL37_
_S... E_...
ed ed AN...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0
Fields
Field Function
15 Reserved
14-8 Reserved
USXG_AN_STS
7 Reserved
6 Link Partner EEE Clock Stop Capability This field indicates the EEE clock stop capability (or clock-stop
enabe - in case far-end is acting as QSGMII MAC) advertised by the far-end device. This field is valid
LP_CK_STP only when PCS_MODE[1:0] is set to the QSGMII mode and the auto-negotiation is complete along port
0. Note:This field is present only in configurations with QSGMII_EN=Enabled
5 Link Partner EEE Capability This field indicates the EEE capability advertised by the far-end device
(Port 0 QSGMII PHY). This field is valid only when PCS_MODE[1:0] is set to the QSGMII mode and
LP_EEE_CAP the auto-negotiation is complete along port 0. Note:This field is present only in configurations with
QSGMII_EN=Enabled
Clause 37 AN SGMII Status/QSGMII Port 0 Status This field is valid only when the PCS_MODE[1:0]
4-1
is set to the SGMII/QSGMII mode and the auto-negotiation is complete. It indicates the status received
CL37_ANSGM_ from remote link after the SGMII/QSGMII (Port 0) autonegotiation is complete. CL37_ANSGM_STS[0] -
STS 0: Half Duplex - 1: Full Duplex CL37_ANSGM_STS[2:1] - 00: 10 Mbps speed link - 01: 100 Mbps speed
link - 10: 1000 Mbps speed link CL37_ANSGM_STS[3] - 0: Link is Down - 1: Link is Up
0 Clause 37 AN Complete Interrupt (SS,WC Type) The XPCS sets this bit when Clause 37 auto-
negotiation is complete. The host must clear this bit by writing 0 to it.
CL37_ANCMPL
T_INTR
Offset
Register Offset
VR_MII_TC 1F_8003h
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
Reserved TPE TP
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-3 Reserved
Offset
Register Offset
VR_MII_DBG_CTRL 1F_8005h
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SUPR
R RX_DT SUPR REST
Reserved ESS... Reserved
_E... ESS... AR_...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 u u u 0
Fields
Field Function
15-7 Reserved
5 Reserved
SUPRESS_EE
E_LOS_DET
3-1 Reserved
0 Restart Synchronization
RESTAR_SYN When set to 1, this bit restarts the Rx Synchronization State machine on Lane 0. The host must clear this
C_0 bit to 0 before setting it to 1 next time.
Offset
Register Offset
VR_MII_LINK_TIMER_C 1F_800Ah
TRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
CL37_LINK_TIME
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-0 Programmable Link Timer Value for Clause 37 autonegotiation. This field can be programmed to any
desired value if application wishes to over-ride the standard specified values for Link Timer used during
CL37_LINK_TI Clause 37 Auto negotiation. Link timer is implemented in XPCS using a 24-bit timer.When operating
ME in USXGMII mode, link timer runs at 156.25 MHz. When operating in 1000BaseX/SGMII mode, this
timer operates at 125 MHz. For USXGMII configurations: This field forms the upper 16-bit of the
24-bit value that gets loaded to the link timer.The lower 8-bits are hard-coded as zero. For example,
if CL37_LINK_TIME = 1, the value that is loaded to the timer is 24'h100, which corresponds to a
duration of 1638 ns (256*6.4ns) in USXGMII mode or 2048 ns (256*8ns) in 1000BaseX/SGMII mode.
For configurations without USXGMII: This field forms the upper 16-bit of the 24-bit value that gets loaded
to the link timer.The lower 8-bits are hardcoded as 8'h7D. For example, if CL37_LINK_TIME = 1, the
value that is loaded to the timer is 24'h17D, which corresponds to a duration of 3048 ns (381*8ns).
After programming this register, application should perform either of the following steps, so that the new
values takes effect: - Set CL37_TMR_OVR_RIDE bit (bit[3]) of VR MII MMD Digital Control 1 Register to
1 - FAST_SIM bit of SR Control MMD Control Register should be cleared (if already set) and then set
back to 1.
Offset
Register Offset
VR_MII_DIG_STS 1F_8010h
Function
This register is present only in 1000BaseX-Only PCS configurations.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
15-13 Reserved
LTX_STATE
12-10 Reserved
LRX_STATE
9-7 Reserved
6 Rx FIFO Overflow (RO,LH Type) This bit indicates the clock rate compensation FIFO overflow. - 0:
Normal operation - 1: FIFO overflow
RXFIFO_OVF
5 Rx FIFO Underflow (RO,LH Type) This bit indicates the clock rate compensation FIFO underflow. - 0:
Normal operation - 1: FIFO underflow
RXFIFO_UNDF
1 Reserved
LB_ACTIVE
0 Reserved
Offset
Register Offset
VR_MII_ICG_ERRCNT1 1F_8011h
Function
This register is present only for 1000BaseX-Only PCS configurations
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EC0
Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-8 Reserved
7-0 Invalid Code Group Count Lane 0 (RO,LH Type) This field gives the invalid code group count in Lane 0
when Bit 4 of VR MII MMD Digital Error Count Select Register is set to 1.
EC0
Offset
Register Offset
VR_MII_DIG_ERRCNT_ 1F_8012h
SEL
Function
This register is present only when the XPCS is configured in 1000BASEX-Only PCS mode.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R INV_E
Reserved Reserved COR
W C_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-5 Reserved
3-1 Reserved
0 Clear on Read
COR When this field is 1 and the host reads any error counter, that counter is cleared after the read cycle.
0b - Normal operation
1b - Clear any error counter that is read
Offset
Register Offset
VR_MII_GPIO 1F_8015h
Function
This register is present only if the XPCS is configured to have the GPIO interface. Note:This register is not present if
USXGMII_EN=Enabled
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R GPIO_IN
GPIO_OUT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-8 GPIO Output The content written on this field is driven to the xpcs_gpo_o[7:0] output port. Dependency:
This field is valid only when GPIO_EN = Enabled.
GPIO_OUT
7-0 GPIO Input This field indicates the content of the xpcs_gpo_i[7:0] port. Dependency: This field is valid
only when GPIO_EN = Enabled.
GPIO_IN
Offset
Register Offset
VR_MII_MISC_STS 1F_8018h
Function
This register is present only when the XPCS is configured in 1000BASEX-Only PCS mode.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R BIT_SFT
Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-4 Reserved
3-0 Bit Shift This field indicates the number of bit-shifts carried-out by comma-detect logic so as to align the
incoming 10-bit XGXS Rx data Default Value: The default value of this field can be any value, depending
BIT_SFT on the status of comma-detect logic.
Offset
Register Offset
VR_MII_RX_LSTS 1F_8020h
Function
In KX_Only, KR_Only, KR_KX, 10GBASE-R PCS, and 1000BASEX-Only PCS configurations, only Lane 0 control and status
information is present. In configurations with both 1G (KX) and 10G (XGXS PCS, 10GBASE-X PCS, or KX4) modes, only
Lane 0 control and status information is used when the XPCS is operating in the 1G mode.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
11-9 Reserved
RX_PLL_STAT
E_3_1
8 Reserved
RX_PLL_STAT
E_0
7-5 Reserved
SIG_DET_3_1
Field Function
3-0 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8030h
_TX_GENCTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-13 Reserved
TX_DT_EN_3_1
11-9 Reserved
TX_RST_3_1
7-5 Reserved
TX_INV_3_1
Field Function
TX_INV_0 When this bit is set, the data on PHY Tx serial lines are logically inverted. This signal drives the output
port 'xgxs_tx_invert_o[0]'.
3-1 Reserved
TXBCN_EN_3_
1
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8031h
_TX_GENCTRL1
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 1 0 0 1 1 0 0 0 1 0 0 0 0
Fields
Field Function
15-13 Reserved
TX_CLK_RDY_
3_1
11 Reserved
Field Function
VBOOST_LVL This field controls the maximum achievable Tx swing in the PHY This field drives the output port
'xpcs_tx_vboost_lvl_o[2:0]'.
7-5 Reserved
VBOOST_EN_3
_1
3-1 Reserved
DET_RX_REQ_
3_1
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8032h
_TX_GENCTRL2
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
Fields
Field Function
15-14 Reserved
Field Function
TX3_WIDTH
13-12 Reserved
TX2_WIDTH
11-10 Reserved
TX1_WIDTH
9-8 Tx Datapath Width on lane 0 of the PHY This field controls the width of input transmit data on lane 0. The
encoding of the width is as follows : - 2'b00 : 8-bit - 2'b01: 10-bit - 2'b10: 16-bit - 2'b11: 20-bit This field
TX0_WIDTH drives the output port xpcs_tx0_width_o[1:0].
7-5 Reserved
TX_LPD_3_1
4 Transmitter Lane Power Down on PHY lane 0. This field drives the output 'xpcs_tx_lpd_o[3:1]'. This field
can be asserted to put the phy transmitter to a power state equivalent to that of P1.
TX_LPD_0
3-1 Reserved
TX_REQ_3_1
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8033h
_TX_BOOST_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Fields
Field Function
15-12 Reserved
TX3_IBOOST
11-8 Reserved
TX2_IBOOST
7-4 Reserved
TX1_IBOOST
3-0 Tx current boost level on lane 0 of the PHY. This bit drives the output port xpcs_tx0_iboost_lvl_o[3:0].
TX0_IBOOST
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8034h
_TX_RATE_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
15 Reserved
Field Function
14-12 Reserved
TX3_RATE
11 Reserved
10-8 Reserved
TX2_RATE
7 Reserved
6-4 Reserved
TX1_RATE
3 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8035h
_TX_POWER_STATE_C
TRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-12 Reserved
11-9 Reserved
TX_DISABLE_3
_1
8 Transmitter Disable on lane 0 This field drives the output port 'xpcs_tx_disable_o[0]'.
TX_DISABLE_0
7-6 Reserved
TX3_PSTATE
5-4 Reserved
TX2_PSTATE
3-2 Reserved
TX1_PSTATE
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8036h
_TX_EQ_CTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
Reserved TX_EQ_MAIN Reserved TX_EQ_PRE
W
Reset 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-14 Reserved
7-6 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8037h
_TX_EQ_CTRL1
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-9 Reserved
8 Reserved
CA_TX_EQ
7 Reserved
TX_EQ_DEF_C
TRL
6 Reserved
TX_EQ_OVR_R
IDE
5-0 Tx Post-Emphasis level adjustment Control This field controls the transmitter driver output pre-emphasis
(pre-shoot coefficient). This field drives the output port 'rpcs_ktx_post_o' if 'TX_EQ_OVR_RIDE' bit is set
TX_EQ_POST or in configurations with CL72_EN=Disabled.
Offset
Register Offset
VR_MII_Consumer_10G 1F_803Ch
_TX_TERM_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
Reserved TX0_TERM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
15-3 Reserved
TX0_TERM
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8040h
_TX_STS
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DETR TX_AC
R DETRX_RSLT_3_1 TX_ACK_3_1
Reserved X_R... K_0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-8 Reserved
7-5 Reserved
DETRX_RSLT_
3_1
Field Function
Receiver Detection Result on PHY lane 0. This field captures the value of the input port
4
'xpcs_tx_detrx_result_o[0]'. The value of this field is valid when 'TX_ACK_0' is high. - 1'b0: Receiver
DETRX_RSLT_ not detected - 1'b1: Receiver detected
0
3-1 Reserved
TX_ACK_3_1
0 Tx Acknowledge on PHY lane 0. This bit captures the value of the input port 'xpcs_tx_ack_i[0]'.
Whenever this bit is read as high, it indicates that the requested transmitter setting is complete or
TX_ACK_0 the requested RX-detection operation is complete. Once this bit is read high, it will remain high till bit
TX_REQ_0 or DET_RX_REQ_0 is cleared
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8050h
_RX_GENCTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1
Fields
Field Function
15-13 Reserved
RX_CLKSFT_3
_1
Rx clock shift on PHY lane 0. When this bit is set, a 1-bit shift of receive data happens relate to
12
receive clock. This operation works only if alignment enable is disabled. This bit drives the output port
RX_CLKSFT_0 'xpcs_rx_clk_shift_o[0]'.
11-9 Reserved
RX_DT_EN_3_1
Field Function
8 Rx Data Enable on PHY lane 0. This bit should be set to enable the PHY receiver data output on lane 0.
This bit drives the output port 'xgxs_rx_data_en_o[0]'.
RX_DT_EN_0
7-5 Reserved
RX_ALIGN_EN
_3_1
4 Rx Data Alignment Enable on PHY lane 0. This bit can be set to enable word alignment (based on k28.5
character) in the PHY. This field drives the output port 'xgxs_rx_align_en_o[0]'.
RX_ALIGN_EN
_0
3-1 Reserved
RX_TERM_EN_
3_1
0Rx Termination Enable on PHY lane 0. When this bit is set, PHY Rx is terminated with a nominal
50 ohm resistance. Otherwise, the termination is in high impedance. This field drives the output port
RX_TERM_EN_ 'xpcs_rx_term_en_o[0]'.
0
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8051h
_RX_GENCTRL1
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
Fields
Field Function
15-12 Reserved
Field Function
11-9 Reserved
RX_TERM_AC
DC_3_1
7-5 Reserved
RX_RST_3_1
4 Rx reset on PHY lane 0. When this bit is set, RX data path, all the receiver settings and state
machines of the PHY are reset This field drives the output port xgxs_rx_reset_o[0] when XPCS is in
RX_RST_0 POWER_GOOD state.
3-1 Reserved
RX_INV_3_1
0 Rx Data Invert on PHY lane 0. When this bit is set, the data on PHY Rx serial lines are logically inverted.
This signal drives the output port xgxs_rx_invert_o[0].
RX_INV_0
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8052h
_RX_GENCTRL2
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
Fields
Field Function
15-14 Reserved
Field Function
RX3_WIDTH
13-12 Reserved
RX2_WIDTH
11-10 Reserved
RX1_WIDTH
9-8 Rx Datapath Width on lane 0 of the PHY This field controls the width of output receive data from PHY on
lane 3. The encoding of the width is as follows : - 2'b00: 8-bit - 2'b01: 10-bit - 2'b10: 16-bit - 2'b11: 20-bit
RX0_WIDTH This field drives the output port xpcs_rx0_width[1:0].
7-5 Reserved
RX_LPD_3_1
4 Receiver Lane Power Down on PHY lane 0. This bit can be set to power down the receiver to a power
state equivalent to that of P1. This bit drives the output port 'xpcs_rx_lpd_o[0]'.
RX_LPD_0
3-1 Reserved
RX_REQ_3_1
0 Receiver operation request on PHY lane 0 (RW,SC Type). This bit can be set to 1 by application.This
bit is self-cleared when 'xpcs_tx_ack_i[0]' is asserted. When this bit is set, a new receiver setting request
RX_REQ_0 is made towards the PHY.This bit drives the output port xpcs_rx_req_o[0]. Whenever this bit is set,
PHY captures its following input signals: - rx0_pstate[1:0] - rx0_lpd - rx0_rate[1:0] - rx0_width[1:0]
- rx0_data_en - rx0_adapt_afe_en - rx0_adapt_dfe_en - rx0_eq_att_lvl[2:0] - rx0_eq_vga1_gain[3:0]
- rx0_eq_vga2_gain[3:0] - rx0_eq_ctle_pole[2:0] - rx0_eq_ctle_boost[4:0] - rx0_eq_dfe_tap1[7:0] A
successful completion of receiver request operation on lane 0 is indicated by bit RX_ACK_0.
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8053h
_RX_GENCTRL3
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Fields
Field Function
15-13 Reserved
LOS_LFPS_EN
_3_1
12 Rx LOS LFPS Enable on lane 0 of the PHY This field drives the output port xpcs_rx_los_lfps_en_o[0] to
enable the LFPS filter on lane 0 of the PHY.
LOS_LFPS_EN
_0
11-9 Reserved
LOS_TRSHLD_
3
8-6 Reserved
LOS_TRSHLD_
2
5-3 Reserved
LOS_TRSHLD_
1
Loss of signal threshold on PHY lane 0. This field drives the output port xpcs_rx0_los_threshold_o[2:0].
2-0
Threshold voltages for various values are as follows : - 3'b000: Reserved - 3'b001: 90 mVpp - 3'b010:
LOS_TRSHLD_ 120 mVpp - 3'b011: 150 mVpp - 3'b100: 180 mVpp - 3'b101: 210 mVpp - 3'b110: 240 mVpp - 3'b111:
0 270 mVpp
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8054h
_RX_RATE_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Fields
Field Function
15-14 Reserved
13-12 Reserved
RX3_RATE
11-10 Reserved
9-8 Reserved
RX2_RATE
7-6 Reserved
5-4 Reserved
RX1_RATE
3-2 Reserved
1-0 Rx date rate on lane 0 of the PHY Data Rate Encoding is as follows : - 2'b00: baud - 2'b01: baud/2 -
2'b10: baud/4 - 2'b11: baud/8
RX0_RATE
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8055h
_RX_POWER_STATE_C
TRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
EEE_O
R RX_DISABLE_3_1 RX_DI RX3_PSTATE RX2_PSTATE RX1_PSTATE
Reserved VR... RX0_PSTATE
SA...
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-13 Reserved
12 Reserved
EEE_OVR_RID
E
11-9 Reserved
RX_DISABLE_3
_1
8 Receiver Disable on lane 0 This bit can be set in P1 power state to put the receiver in a low power mode.
This field drives the output port 'xpcs_rx_disable_o[0]'.
RX_DISABLE_0
7-6 Reserved
RX3_PSTATE
5-4 Reserved
RX2_PSTATE
3-2 Reserved
RX1_PSTATE
1-0 Rx power state control for PHY lane 0. Power state encoding is as follows : - 2'b00: P0 - 2'b01: P0s -
2'b10: P1 - 2'b11: P2
RX0_PSTATE
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8056h
_RX_CDR_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
15-12 Reserved
11-9 Reserved
VCO_LOW_FR
EQ_3_1
Rx VCO lower frequency band mode on lane 0 of the PHY This field controls the frequency
8
of the Rx VCO to a lower-frequency operating band. This field drives the output port
VCO_LOW_FR xpcs_rx_cdr_vco_lowfreq_o[0].
EQ_0
7-5 Reserved
CDR_SSC_EN_
3_1
4Rx CDR SSC Mode Enable on lane 0 of the PHY This field controls the CDR tracking gains and duration.
This bit should be set to 1 when receive data has a spread spectrum clock and should be cleared if
CDR_SSC_EN_ receive data does not have SSC. This bit drives the output port 'xpcs_rx_cdr_ssc_en_o[0]'.
0
3-1 Reserved
CDR_TRACK_E
N_3_1
0 Rx CDR Tracking Enable on lane 0 of the PHY This bit should be set to enable CDR tracking of receive
data on lane 0 of the PHY. This bit drives the output port 'xpcs_rx_cdr_track_en_o[0]'.
CDR_TRACK_E
N_0
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8057h
_RX_ATTN_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15 Reserved
14-12 Reserved
RX3_EQ_ATT_
LVL
11 Reserved
10-8 Reserved
RX2_EQ_ATT_
LVL
7 Reserved
6-4 Reserved
RX1_EQ_ATT_
LVL
3 Reserved
2-0 Rx Equalization Attenuation level for lane 0 of the PHY This field drives the output port
xpcs_rx0_eq_att_lvl_o[2:0]. This field controls the AFE attenuation level of the PHY.
RX0_EQ_ATT_
LVL
Offset
Register Offset
VR_MII_Gen5_12G_RX_ 1F_8058h
EQ_CTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
AFE_GAIN_0 Reserved CTLE_BOOST_0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
Fields
Field Function
15-12 Rx Equalization AFE Gain on lane 0 of the PHY This field drives the output port
xpcs_rx0_eq_afe_gain_o[3:0].
AFE_GAIN_0
11-5 Reserved
4-0 Rx Equalization CTLE Boost value on lane 0 of the PHY This field drives the output port
xpcs_rx0_eq_ctle_boost_o[4:0].This field controls the CTLE boost level.
CTLE_BOOST_
0
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_805Ch
_RX_EQ_CTRL4
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Fields
Field Function
15-13 Reserved
12 Reserved
Field Function
RX_AD_REQ
11 Reserved
RX_EQ_STRT_
CTRL
10 Reserved
SELF_MAIN_E
N
9 Reserved
PING_PONG_E
N
8 Reserved
SEQ_EQ_EN
7-5 Reserved
CONT_OFF_CA
N_3_1
4 Receiver offset cancellation continuous operation on lane 0 This bit can be set if continuous receiver
offset cancellation is required. If this bit is 0, offset cancellation runs when receiver exits P2 power state.
CONT_OFF_CA This bit drives the output port 'xpcs_rx_offcan_cont_o[0]'.
N_0
3-1 Reserved
CONT_ADAPT_
3_1
0 Receiver Adaptation Continuous Operation on lane 0 This bit can be set to enable continuous receiver
adaptation in the PHY. This bit drives the output port 'xpcs_rx_offcan_cont_o'.
CONT_ADAPT_
0
Offset
Register Offset
VR_MII_Gen5_12G_AFE 1F_805Dh
_DFE_EN_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-8 Reserved
7-5 Reserved
DFE_EN_3_1
4 Rx DFE Enable on lane 0 of the PHY This bit drives the output port xpcs_rx_adapt_dfe_en_o[0]. This
bit can be set to enable Rx adaption and decision feedback equalization (DFE) circuitry and applies
DFE_EN_0 the input setting of DFE Tap1: -rx0_eq_dfe_tap1[7:0]. If this bit is not set, the change on the input DFE
settings can be applied using a 'RX_REQ_0/RX_ACK_0' handshake. If this bit is set, DFE settings are
initialized to the inputs and RX DFE adaption routines are executed to achieve optimal DFE settings.
3-1 Reserved
AFE_EN_3_1
0 Rx Adaptation AFE Enable on lane 0 of the PHY This bit drives the output port
xpcs_rx_adapt_afe_en_o[0]. This bit can be set to enable Rx adaption circuitry and applies the
AFE_EN_0 following input receiver equalization settings to the PHY: - rx0_eq_att_lvl[2:0] - rx0_eq_vga1_gain[3:0]
- rx0_eq_vga2_gain[3:0] - rx0_eq_ctle_pole[2:0] - rx0_eq_ctle_boost[4:0] If this bit is not set, change
on input AFE settings can be applied using RX_REQ_0/RX_ACK_0 handshake. If this bit is set, AFE
equalization settings are initialized to the PHY inputs, but any further change on these inputs are ignored
by PHY and RX AFE adaption routines are executed to achieve optimal AFE settings
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_805Eh
_DFE_TAP_CTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DFE_TAP1_1
DFE_TAP1_0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-8 Reserved
DFE_TAP1_1
7-0 Rx Equalization DFE Tap1 value on lane 0 of the PHY This field drives the output port
xpcs_rx0_eq_dfe_tap1_o[7:0]
DFE_TAP1_0
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8060h
_RX_STS
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
RX_AC
R RX_ACK_3_1
Reserved K_0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-4 Reserved
3-1 Reserved
RX_ACK_3_1
0 Rx Acknowledge on PHY lane 0. This bit captures the value of the input port xpcs_rx_ack_i[0]. If this
bit is set, it indicates that the requested receiver setting is complete. This bit forms a hand-shake with
RX_ACK_0 'RX_REQ_0' bit. Once this bit is set, RX_REQ_0 bit is self-cleared.
Offset
Register Offset
VR_MII_Consumer_10G 1F_8064h
_RX_TERM_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
Reserved RX0_TERM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Fields
Field Function
15-3 Reserved
RX0_TERM
Offset
Register Offset
VR_MII_Consumer_10G 1F_806Bh
_RX_IQ_CTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
Reserved RX0_DELTA_IQ Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-12 Reserved
11-8 RX IQ Offset Value for lane0. This field drives the output port xpcs_rx0_delta_iq_o[3:0].
RX0_DELTA_IQ
7-0 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8070h
_MPLL_CMN_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Fields
Field Function
15-8 Reserved
7-5 Reserved
Field Function
MPLLB_SEL_3_
1
4 Tx MPLLB Select-lane 0 When this bit is set, PHY selects MPLLB to generate Tx analog clocks on lane
0
MPLLB_SEL_0
3-1 Reserved
MPLL_EN_3_1
0 Tx MPLL Enable-lane 0 This bit should be set to power-up the MPLL.This bit should be 1, for normal
operation.
MPLL_EN_0
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8071h
_MPLLA_CTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MPLLA
Reserved Reserved MPLLA_MULTIPLIER
W _C...
Reset 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0
Fields
Field Function
15 MPLLA Calibration Disable This field can be programmed to 1, to disable calibration of MPLLA by PHY
firmware.
MPLLA_CAL_DI
SABLE
14-11 Reserved
10-8 Reserved
Field Function
MPLLA frequency Multiplier Control This field controls the multiplication of reference clock to a frequency
7-0
suitable for operating speed Any change in this field should be followed by a Vendor-specific Soft Reset
MPLLA_MULTI to ensure that PHY is properly powered-up in the desired mode.
PLIER
Offset
Register Offset
VR_MII_Gen5_12G_MPL 1F_8072h
LA_CTRL1
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserv
MPLLA_FRACN_CTRL Reserved
W ed
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-5 MPLLA Fractional Control This field drives the output port xpcs_mplla_fracn_ctrl_o.
MPLLA_FRACN
_CTRL
4 Reserved
3-0 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8073h
_MPLLA_CTRL2
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0
Fields
Field Function
15 Reserved
14 Reserved
13-11 MPLLA Tx Clock Divider. This field drives the output port 'xpcs_mplla_tx_clk_div_o[1:0]'.
MPLLA_TX_CL
K_DIV
10 Enable mplla_div_clk from PHY. When asserted, the frequency of mplla_div_clk from PHY is the MPLLA
frequency divided by 'mplla_div_multiplier'
MPLLA_DIV_CL
K_EN
9 MPLLA Divide by 10 Enable When this bit is set, the frequency of the mplla_word_clk output clock from
PHY is MPLLA frequency divided by 10.
MPLLA_DIV10_
CLK_EN
8 MPLLA Divide by 8 Enable When this bit is set, the frequency of the mplla_word_clk output clock from
PHY is MPLLA frequency divided by 8.
MPLLA_DIV8_C
LK_EN
7-0 MPLLA Output Frequency Multiplier Control This field controls the frequency multiplication factor used to
generate MPLLA clock output from the reference clock input as seen by the MPLL.
MPLLA_DIV_M
ULT
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8074h
_MPLLB_CTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MPLLB
Reserved Reserved MPLLB_MULTIPLIER
W _C...
Reset 1 0 0 0 0 0 0 0 0 1 1 1 1 1 0 1
Fields
Field Function
15 MPLLB Calibration Disable This field can be programmed to 1, to disable calibration of MPLLB by PHY
firmware.
MPLLB_CAL_DI
SABLE
14-11 Reserved
10-8 Reserved
MPLLB frequency Multiplier Control This field controls the multiplication of reference clock to a frequency
7-0
suitable for operating speed Any change in this field should be followed by a Vendor-specific Soft Reset
MPLLB_MULTI to ensure that PHY is properly powered-up in the desired mode.
PLIER
Offset
Register Offset
VR_MII_Gen5_12G_MPL 1F_8075h
LB_CTRL1
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserv
MPLLB_FRACN_CTRL Reserved
W ed
Reset 0 0 0 0 0 0 0 0 0 0 0 u 0 0 0 0
Fields
Field Function
15-5 MPLLB Fractional Control This field drives the output port 'xpcs_mpllb_fracn_ctrl_o'.
Field Function
MPLLB_FRACN
_CTRL
4 Reserved
3-0 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8076h
_MPLLB_CTRL2
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15 Reserved
14 Reserved
13-11 MPLLB Tx Clock Divider. This field drives the output port 'xpcs_mpllb_tx_clk_div_o[1:0]'.
MPLLB_TX_CL
K_DIV
10 Enable mpllb_div_clk from PHY When asserted, the frequency of mpllb_div_clk output from PHY is
MPLLB frequency divided by 'mpllb_div_multiplier'
MPLLB_DIV_CL
K_EN
Field Function
9 MPLLB Divide by 10 Enable When this bit is set, the frequency of the mpllb_word_clk output clock from
PHY is MPLLB frequency divided by 10.
MPLLB_DIV10_
CLK_EN
8 MPLLB Divide by 8 Enable When this bit is set, the frequency of the mpllb_word_clk output clock from
PHY is MPLLB frequency divided by 8.
MPLLB_DIV8_C
LK_EN
7-0 MPLLB Output Frequency Multiplier Control This field controls the frequency multiplication factor used to
generate MPLLB clock output from the reference clock input as seen by the MPLL.
MPLLB_DIV_M
ULT
Offset
Register Offset
VR_MII_Gen5_12G_MPL 1F_8077h
LA_CTRL3
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MPLLA_BANDWIDTH
W
Reset 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1
Fields
Field Function
15-0 MPLLA Bandwidth Control This field controls the bandwidth of MPLLA present in the PHY. This field
drives the output port 'xpcs_mplla_bandwidth_o'.
MPLLA_BAND
WIDTH
Offset
Register Offset
VR_MII_Gen5_12G_MPL 1F_8078h
LB_CTRL3
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
MPLLB_BANDWIDTH
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0
Fields
Field Function
15-0 MPLLB Bandwidth Control This field controls the bandwidth of MPLLB present in the PHY. This field
drives the output port 'xpcs_mpllb_bandwidth_o'.
MPLLB_BAND
WIDTH
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8090h
_MISC_CTRL0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0
Fields
Field Function
Field Function
PLL_CTRL If the PHY PLL does not lock for a long time, XPCS would initiate a Rx power-state change from P0
to P1 and then back to P0, if this bit is set. This process is done to re-initialize the PLL. The time
duration to wait before reinitializing the PLL is determined by VR MII PHY Miscellaneous Control 1
(VR_MII_Gen5_12G_16G_MISC_CTRL1).
14 Select CR Para Port This bit select the interface for accessing PHY registers * 0 -JTAG * 1 -CR parallel
port This bit should be changed only after disabling 'jtag_tck'to PHY.
CR_PARA_SEL
13 Resistor Tuning Request This bit can be set to trigger a resistor tune request to the PHY. This bit
controls the 'xgxs_rtune_req_o' output port.
RTUNE_REQ
7-5 Reserved
RX2TX_LB_EN
_3_1
4 Enable Parallel Rx-to-Tx Loopback on lane 0 When this bit is set, recovered parallel data from PHY
receiver is looped back to the transmit serializer. This loop-back takes place internal to the PHY (not
RX2TX_LB_EN within XPCS).
_0
3-1 Reserved
TX2RX_LB_EN
_3_1
0 Enable Analog Tx-to-Rx Serial Loopback on lane 0 This bit can be set to enable serial loopback in the
PHY from Tx pre-driver to Rx analog front-end.
TX2RX_LB_EN
_0
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8091h
_REF_CLK_CTRL
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1
Fields
Field Function
15-9 Reserved
8 Repeat Reference Clock Enable If this bit is set, ref_repeat_clk_{p,m} clock from PHY is enabled.
REF_RPT_CLK
_EN
Field Function
0b - Internal PLL
1b - External clock
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8092h
_VCO_CAL_LD0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
Reserved VCO_LD_VAL_0
W
Reset 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0
Fields
Field Function
15-13 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_VC 1F_8096h
O_CAL_REF0
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R VCO_REF_LD_1
Reserved Reserved VCO_REF_LD_0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1
Fields
Field Function
15-14 Reserved
13-8 Reserved
VCO_REF_LD_
1
7-6 Reserved
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8098h
_MISC_STS
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reset 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-12 Reserved
11 Reserved
REF_CLKDET_
RESULT
10 Status of MPLLB from PHY This bit denotes the value of xpcs_mpllb_state_i input.
MPLLB_STS
9 Status of MPLLA from PHY. This bit denotes the value of xpcs_mplla_state_i input
MPLLA_STS
8 Acknowledgment for Resistor Tune Request This bit denotes the value of 'xgxs_rtune_ack_i' input.
RTUNE_ACK
7-0 Reserved
FOM
Offset
Register Offset
VR_MII_Gen5_12G_16G 1F_8099h
_MISC_CTRL1
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
RX_LNK_UP_TIME
W
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fields
Field Function
Offset
Register Offset
VR_MII_SNPS_CR_CTR 1F_80A0h
L
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R WR_ START
Reserved
W RDN _B...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-2 Reserved
1 Write or Read Indicator This bit indicates whether a read or write operation is to be performed to the
Synopsys PHY registers: - 0: Read - 1: Write
WR_RDN
Field Function
START_BUSY This bit indicates if CR port access is in progress: - 0: CR port not busy - 1: CR port busy The sequence
is: 1. The host sets this bit to start a read or write transfer through the CR port to the Synopsys PHY
registers. 2. This bit remains set during the CR port access. 3. The XPCS clears this bit when the CR
port access is complete. Dependencies: The host must read this bit as 0 before writing to any of the
following registers: - VR MII Synopsys PHY CR Control Register (this register) - VR MII Synopsys PHY
CR Address Register - VR MII Synopsys PHY CR Data Register During read, the data from the CR port
interface is placed into the VR MII Synopsys PHY CR Data Register.
Offset
Register Offset
VR_MII_SNPS_CR_ADD 1F_80A1h
R
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ADDRESS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
VR_MII_SNPS_CR_DAT 1F_80A2h
A
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
DATA
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
Offset
Register Offset
VR_MII_DIG_CTRL2 1F_80E1h
Function
This register is present only when XPCS is configured in 1000BASEX-Only PCS mode.
Diagram
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R TX_PO RX_P
Reserved Reserved
W L_... OL_...
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fields
Field Function
15-5 Reserved
4 Tx Polarity Invert
TX_POL_INV_0 Controls the polarity inversion of the data on the Tx differential lines.
When this field is 1, the data is inverted on the lane connected to its XPCS instance.
0b - Not inverted
1b - Inverted
3-1 Reserved
0 Rx Polarity Invert
RX_POL_INV_0 Controls the polarity inversion of the data received on the Rx serial line.
When this field is 1, the data is inverted on the lane connected to its XPCS instance. This reverses the
polarity on the data received from the PHY core.
0b - Not inverted
1b - Inverted
Chapter 6
Revision History
The following table lists the technical changes compared to Rev. 5. The current release also includes editorial changes such as
spelling, punctuation, grammar, voice, style, presentation, and navigation.
PLL usage Moved this section from PHY to Introduction to the Subsystem.
VR MII PHY Tx Equalization Control 0 Changed the reset value of the TX_EQ_MAIN field (was Ch, is 18h).
(VR_MII_Gen5_12G_16G_TX_EQ_CTRL0)
Legal information
Definitions Applications — Applications that are described herein for any of these
products are for illustrative purposes only. NXP Semiconductors makes no
Draft — A draft status on a document indicates that the content is still
representation or warranty that such applications will be suitable for the
under internal review and subject to formal approval, which may result
specified use without further testing or modification.
in modifications or additions. NXP Semiconductors does not give any
representations or warranties as to the accuracy or completeness of Customers are responsible for the design and operation of their applications
information included in a draft version of a document and shall have no and products using NXP Semiconductors products, and NXP Semiconductors
liability for the consequences of use of such information. accepts no liability for any assistance with applications or customer product
design. It is customer’s sole responsibility to determine whether the NXP
Semiconductors product is suitable and fit for the customer’s applications and
Disclaimers products planned, as well as for the planned application and use of customer’s
Limited warranty and liability — Information in this document is believed third party customer(s). Customers should provide appropriate design and
to be accurate and reliable. However, NXP Semiconductors does not give operating safeguards to minimize the risks associated with their applications
any representations or warranties, expressed or implied, as to the accuracy and products.
or completeness of such information and shall have no liability for the NXP Semiconductors does not accept any liability related to any default,
consequences of use of such information. NXP Semiconductors takes no damage, costs or problem which is based on any weakness or default in the
responsibility for the content in this document if provided by an information customer’s applications or products, or the application or use by customer’s
source outside of NXP Semiconductors. third party customer(s). Customer is responsible for doing all necessary testing
In no event shall NXP Semiconductors be liable for any indirect, incidental, for the customer’s applications and products using NXP Semiconductors
punitive, special or consequential damages (including - without limitation - products in order to avoid a default of the applications and the products or of the
lost profits, lost savings, business interruption, costs related to the removal or application or use by customer’s third party customer(s). NXP does not accept
replacement of any products or rework charges) whether or not such damages any liability in this respect.
are based on tort (including negligence), warranty, breach of contract or any
Terms and conditions of commercial sale — NXP Semiconductors products
other legal theory.
are sold subject to the general terms and conditions of commercial sale,
Notwithstanding any damages that customer might incur for any reason
as published at http://www.nxp.com/profile/terms, unless otherwise agreed
whatsoever, NXP Semiconductors’ aggregate and cumulative liability towards
in a valid written individual agreement. In case an individual agreement
customer for the products described herein shall be limited in accordance with
is concluded only the terms and conditions of the respective agreement
the Terms and conditions of commercial sale of NXP Semiconductors.
shall apply. NXP Semiconductors hereby expressly objects to applying the
customer’s general terms and conditions with regard to the purchase of NXP
Right to make changes — NXP Semiconductors reserves the right to make
Semiconductors products by customer.
changes to information published in this document, including without limitation
specifications and product descriptions, at any time and without notice. This
Suitability for use in automotive applications — This NXP product has been
document supersedes and replaces all information supplied prior to the
qualified for use in automotive applications. If this product is used by customer
publication hereof.
in the development of, or for incorporation into, products or services (a)
used in safety critical applications or (b) in which failure could lead to death,
personal injury, or severe physical or environmental damage (such products
and services hereinafter referred to as “Critical Applications”), then customer
makes the ultimate design decisions regarding its products and is solely
responsible for compliance with all legal, regulatory, safety, and security
related requirements concerning its products, regardless of any information
or support that may be provided by NXP. As such, customer assumes all risk
related to use of any products in Critical Applications and NXP and its suppliers
shall not be liable for any such use by customer. Accordingly, customer will
indemnify and hold NXP harmless from any claims, liabilities, damages and
associated costs and expenses (including attorneys’ fees) that NXP may incur
related to customer’s incorporation of any product in a Critical Application.
Export control — This document as well as the item(s) described herein may be
subject to export control regulations. Export might require a prior authorization
from competent authorities.
Customer shall select products with security features that best meet rules,
regulations, and standards of the intended application and make the
ultimate design decisions regarding its products and is solely responsible
for compliance with all legal, regulatory, and security related requirements
concerning its products, regardless of any information or support that may be
provided by NXP.
Trademarks
Notice: All referenced brands, product names, service names, and
trademarks are the property of their respective owners.