You are a bit wrong in how spi works. SPI is not a write from master, then write from slave. instead reading and writing goes in parallel.
For every bit master sends a bit from slave is transmitted at the same time, This usually results in
A dummy byte received from master as the first byte because slave does not know yet what master wants to see.
Master needs to send dummy bytes to receive new data from slave-
For a situation where one part (Pi) sends data and the other (PSOC) processes it and returns results when finished, that is asynchronously, I would consider if UART communication could be the the best option.