Page 1 of 1

Address in Write Packet

PostPosted:
by Guest
Hello,

I am bit confused with the address given in all the transactions in pcie. For example in write transaction the 3rd DW is address it is address of what the enpoints DMA?

Thanks
VSK

Re: Address in Write Packet

PostPosted:
by support
Hello,

The address in a TLP packet is the physical address (as opposed to virtual address) to which the data is written to. For example, if a C program on the processor issues a command like

int *addr = 0x12345678;
*addr = 123;

This will cause a write request TLP to be sent from the processor to the PCIe endpoint with the address field being 0x12345678. This example assumes that no address translation takes place (the MMU is off or transparent on that region) and that the processor considers this address mapped to the PCIe bus.

Hope this clarified.

Regards,
Eli