Outbound AXI-to-PCIe Address Translation Registers
The PCIe Controller uses these registers (ob_addr0 and
ob_addr1) to perform outbound AXI to PCIe address translation for memory
and I/O TLPs. For the configuration TLPs, the bus number, device number, and the function
number can be programmed in the outbound AXI to PCIe address translation registers if the pass
bits are programmed to pass fewer than specific bits.
| Bits | Memory and I/O TLPs | Vendor Defined Messages | Normal Messages | Default value |
|---|---|---|---|---|
| 31:0 | Upper [63:32] bits of the PCIe address. | Vendor-defined message header [127:96] | Reserved for normal messages | 32'd0 |
| Bits | Memory and I/O TLPs | Vendor Defined Messages | Normal Messages | Default value |
|---|---|---|---|---|
| 31:28 | Lower [31:28] bits of the PCIe address. | Vendor-defined message header [95:92] | Reserved for normal messages | 4'd0 |
| 27:20 | Lower [27:20] bits of the PCIe address. | Vendor-defined message header [91:84] | Reserved for normal messages | 8'd0 |
| 19:15 | Lower [19:15] bits of the PCIe address. | Vendor-defined message header [83:79] | Reserved for normal messages | 5'd0 |
| 14:12 | Lower [14:12] bits of the PCIe address. | Vendor-defined message header [78:76] | Reserved for normal messages | 3'd0 |
| 11:8 | Lower [11:8] bits of the PCIe address. | Vendor-defined message header [75:72] | Reserved for normal messages | 4'd0 |
| 7:6 | Reserved. | Reserved | Reserved | 2'd0 |
| 5:0 | Number of address bits passed from AXI to PCIe. The PCIe Controller passes the programmed value + 1 bits from AXI to PCIe. The minimum value to be programmed into this field is 7 because the translation logic replaces the PCIe address's lower 8 bits with zeros. | Reserved | Reserved | 6'd0 |
Some of the AXI slave outbound sddress (MASTER_AXI_AWADDR) bits convey
the MSG_ROUTING and MSG_CODE fields of the message TLPs.
| MASTER_ AXI_ AWADDR bits | Vendor-Defined Message | Normal Message |
|---|---|---|
| 16 |
0: MSG with data
1: MSG without data
|
0: MSG with data
1: MSG without data
|
| 15 |
0: MSG_CODE = 0x7E
1: MSG_CODE = 0x7F
|
MSG_CODE[7] |
| 14:12 | MSG_ROUTING | MSG_CODE[6:4] |
| 11:8 | Reserved | MSG_CODE[3:0] |
| 7:5 | Reserved | MSG_ROUTING |