Hi Robert,
I will try to summarize your question. At first, it is not so simple. It is not true that code executed from RAM will be always faster than code executed from FLASH. There is so many factors which determines, how fast will be the code executed. Also please realize, there is a pipelining, which consists of 10 stages and it is not possible to affect the execution speed of all stages.
1) Flash memory contains mini-cache memory. If there is mini-cache hit (code is placed in mini-cache) the execution is faster then from RAM. If there is mini-cache miss, execution from RAM could be faster. Read some information about flash wait states mentioned in reference manual and data sheet.
2) This micro has data and instruction cache memory. If cache is enabled, instructions and data are cached, and there is no difference if data were placed in flash or in RAM before. About cache, look at the e200z7 core reference manual.
3) Also XBAR traffic greatly affect the speed of the execution. If there is many masters which access the XBAR, throughput decreases and it has big impact to performance. It is necessary to remember DMA which affects performance too.
So if you want to increase performance, please look at all of the topics mentioned above. You can use reference manual, data sheet and also e200z7 core reference manual and also there is great document about e200 cores.
e200 Core Training relevant to MPC55xx and MPC56xx device family
If you want to copy parts of code from flash to RAM (some function for example), please look at the following example
Example MPC5748G PretendedNetworkingCAN S32DS
If you have any other question, please feel free to write me back.
Regards,
Martin