aaronspink
Veteran
Titanio said:On SPUs accessing other LS - can anyone confirm the PPEs role here, if any? Can't one SPU put something on the EIB, and another pick it up?
All data into and out of the SPU is done via DMA engines. To effect data movement from one SPU to another SPU, it is required that the LS portion of SPU2 is memory mapped into an effective adress in the system address space. The a DMA descriptor is then constructed that will DMA from the SPU1 LS into this effective address.
It is the same method that would be used to move something from the SPU1 LS to main memory. The difference is that the data will effectively bounce to SPU2's Local store.
Though I may have it reversed because I can't remember if in the SPU to SPU DMA case, if push, pull, or both are supported via the DMA mapping and quite frankly, I'm too lazy to look it up again.
There is no direct method of data movement from one SPU's LS to another SPU's LS.
Aaron Spink
speaking for myself inc.