Base Address Register Support - 4.4 English

UltraScale Devices Gen3 Integrated Block for PCI Express LogiCORE IP Product Guide (PG156)

Document ID
PG156
Release Date
2023-11-24
Version
4.4 English

T he PIO design supports four discrete target spaces, each consisting of a 2 KB block of memory represented by a separate Base Address Register (BAR). Using the default parameters, the Vivado IP catalog produces a core configured to work with the PIO design defined in this section, consisting of:

One 64-bit addressable Memory Space BAR

One 32-bit Addressable Memory Space BAR

You can change the default parameters used by the PIO design; however, in some cases you might need to change the user application depending on your system. See Changing IP Catalog Tool Default BAR Settings for information about changing the default Vivado Design Suite IP parameters and the effect on the PIO design.

Each of the four 2 KB address spaces represented by the BARs corresponds to one of four 2 KB address regions in the PIO design. Each 2 KB region is implemented using a 2 KB dual-port block RAM. As transactions are received by the core, the core decodes the address and determines which of the four regions is being targeted. The core presents the TLP to the PIO design and asserts the appropriate bits of (BAR ID[2:0]), Completer Request Descriptor[114:112], as defined in Table: TLP Traffic Types .

Table 5-1: TLP Traffic Types

Block RAM

TLP Transaction Type

Default BAR

BAR ID[2:0]

ep_io_mem

I/O TLP transactions

Disabled

Disabled

ep_mem32

32-bit address Memory TLP transactions

2

000b

ep_mem64

64-bit address Memory TLP transactions

0-1

001b

ep_mem_erom

32-bit address Memory TLP transactions destined for EROM

Expansion ROM

110b