I would like to know the order of execution in P4080DS. I also wanted to know if I can disable Speculative and out-of-order execution for the P4080DS platform. If this is possible, how do I do that?
I am afraid the out-of-order execution is not possible to disable.
Thanks, Can I disable speculative execution then? If yes, can you tell me how I can do that?
I believe few server end processor(PPC9..) had direct way to disable such speculative access/execution, but in p4080 not sure about any direct available way to disable the speculative execution instead speculative access can be guarded (MAS register Bit#62 G bit; WIMGE attributes).
Why would you want to disable this? You'd kill performance by inhibiting out of order execution.
We have to separate speculative execution and out of order accesses to memory - they're different issues. Are you trying to prevent an external memory (such as an FPGA or FIFO) from being accessed in the wrong order? If so, you need to specifically instruct the code via memory barriers or synchronization statements.
You can refer to my appnote:
If this is the issue you're trying to solve, it may also be possible to mark the memory as guarded and cache inhibited, which should guarantee order of accesses to memory.
Retrieving data ...