Speculative and out of order execution on P4080DS

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Speculative and out of order execution on P4080DS

948 Views
avasu
Contributor I

Hello,

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?

Thanks,

Vasu

0 Kudos
4 Replies

807 Views
Simbu
Contributor II

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).

0 Kudos

807 Views
genuap
NXP Employee
NXP Employee

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:

http://www.freescale.com/files/32bit/doc/app_note/AN3441.pdf

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.

0 Kudos

807 Views
lunminliang
NXP Employee
NXP Employee

I am afraid the out-of-order execution is not possible to disable.

0 Kudos

807 Views
avasu
Contributor I

Thanks, Can I disable speculative execution then? If yes, can you tell me how I can do that?

0 Kudos