This example shows the generic settings to set up to three independent AXI BARs and address translation of AXI addresses to a remote 64-bit address space for PCIe. This setting of AXI BARs does not depend on the BARs for PCIe within the Bridge.
In this example, number of AXI BARs are three, the following assignments for each range are made:
Aperture_Base_Address_0 =0x00000000_12340000
Aperture_High_Address_0 =0x00000000_1234FFFF (64 Kbytes)
AXI_to_PCIe_Translation_0=0x5000000056710000 (Bits 63-32 are non-zero in order to produce a
64-bit PCIe TLP. Bits 15-0 must be zero based on the AXI BAR aperture size. Non-zero
values in the lower 16 bits are invalid translation values.)
Aperture_Base_Address_1 =0x00000000_ABCDE000
Aperture_High_Address_1 =0x00000000_ABCDFFFF (8 Kbytes)
AXI_to_PCIe_Translation_1=0x60000000_FEDC0000 (Bits 63-32 are non-zero in order to produce
a 64-bit PCIe TLP. Bits 12-0 must be zero based on the AXI BAR aperture size. Non-zero
values in the lower 13 bits are invalid translation values.)
Aperture_Base_Address_2 =0x00000000_FE000000
Aperture_High_Address_2 =0x00000000_FFFFFFFF (32 Mbytes)
AXI_to_PCIe_Translation_2=0x7000000040000 (Bits 63-32 are non-zero in order to produce a
64-bit PCIe TLP. Bits 24-0 must be zero based on the AXI BAR aperture size. Non-zero
values in the lower 25 bits are invalid translation values.)
Figure 1. Example 2 Settings
- Accessing the Bridge
AXI BAR_0
with address0x0000_12340ABC
on the bus yields0x5000000056710ABC
on the bus for PCIe. - Accessing the Bridge
AXI BAR_1
with address0x0000_ABCDF123
on the bus yields0x60000000FEDC1123
on the bus for PCIe. - Accessing the Bridge
AXI BAR_2
with address0x0000_FFFEDCBA
on the bus yields0x7000000041FEDCBA
on the bus for PCIe.