A simple bus transaction: I understood that data we are sending from CPU2PCIe through pcie protocol using packet headers etc., but In this i have a doubt i.e.why is this "CPU wants to write a 32-bit word to a PCIe peripheral"
The most common reason that a CPU would initiate a PCIe write transaction to a peripheral is a memory write operation to a memory segment that is mapped to the PCIe device. Something like *p = data in C, but it's usually done with writel() and similar helper functions in Linux.