ATTR_13 (PCIE_ATTRIB) Register - UG1087

Zynq UltraScale+ Devices Register Reference (UG1087)

Document ID
UG1087
Release Date
2024-03-13
Revision
1.10

ATTR_13 (PCIE_ATTRIB) Register Description

Register NameATTR_13
Offset Address0x0000000034
Absolute Address 0x00FD480034 (PCIE_ATTRIB)
Width32
TyperwNormal read/write
Reset Value0x0000FFFF
DescriptionATTR_13

This register should only be written to during reset of the PCIe block

ATTR_13 (PCIE_ATTRIB) Register Bit-Field Summary

Field NameBitsTypeReset ValueDescription
attr_bar315:0rwNormal read/write0xFFFFFor an endpoint, specifies mask/settings for Base Address Register (BAR) 3 if BAR2 is a 32-bit BAR, or the upper bits of {BAR3,BAR2} if BAR2 is the lower part of a 64-bit BAR. If BAR is not to be implemented, set to 32h00000000. See BAR2 description if this functions as the upper bits of a 64-bit BAR.
For a switch or root, this must be set to:
FFFF_0000 = IO Limit/Base Registers not implemented
FFFF_F0F0 = IO Limit/Base Registers use 16-bit decode
FFFF_F1F1 = IO Limit/Base Registers use 32-bit decode
For an endpoint, bits are defined as follows:
Memory Space BAR (not upper bits of BAR2)
[0]
= Mem Space Indicator (set to 0)
[2:1]
= Type field (10 for 64-bit, 00 for 32-bit)
[3]
= Prefetchable (0 or 1)
[31:4] = Mask for writable bits of BAR; if 32-bit BAR, set uppermost 31:n bits to 1, where 2^n=memory aperture size in bytes. If 64-bit BAR, set uppermost 63:n bits of {BAR4,BAR3} to 1.
IO Space BAR
0]
= IO Space Indicator (set to 1)
[1]
= Reserved (set to 0)
[31:2] = Mask for writable bits of BAR; set uppermost 31:n bits to 1, where 2^n=i/o aperture size in bytes.