6.1.2. Branch phantom PIPESTAT signals

On some processors, for example the ARM10 processor, a branch can be predicted, pulled out of the normal instruction stream, and effectively executed in parallel with the next instruction in the program. This is known as branch folding and the folded branches are referred to as branch phantoms.

The branch phantom PIPESTAT encodings are used to identify these instances of parallel instruction execution. The branch instruction is always first in the execution stream. Only direct branches are predicted, so branch phantoms never place data packets on the FIFO. They can be interpreted as an IE (Instruction Executed) or IN (Instruction Not Executed) PIPESTAT (depending on whether or not the branch was taken) followed by an IE, DE, IN or DN PIPESTAT as appropriate.

Folded branches that are mispredicted result in IE or IN PIPESTAT signals. This is because any instruction that might be executed in parallel with a mispredicted branch is from the wrong instruction stream and is canceled.

Copyright © 1999-2002, 2004-2009, 2011 ARM Limited. All rights reserved.ARM IHI 0014Q