Chapter 5
Program Flow Prediction
This chapter describes how program flow prediction locates branches in the instruction stream and
the strategies used for determining if a branch is likely to be taken or not. It also describes the two
architecturally-defined SVC functions required for backwards-compatibility with earlier
architectures for flushing the Prefetch Unit (PU) buffers. It contains the following sections:
•
•
•
•
•
ARM DDI 0301H
ID012310
About program flow prediction on page 5-2
Branch prediction on page 5-4
Return stack on page 5-7
Memory Barriers on page 5-8
ARM1176JZF-S IMB implementation on page 5-10.
Copyright © 2004-2009 ARM Limited. All rights reserved.
Non-Confidential, Unrestricted Access
5-1