EasyManuals Logo

ARM ARM1176JZF-S User Manual

Default Icon
759 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #590 background imageLoading...
Page #590 background image
Cycle Timings and Interlock Behavior
ARM DDI 0301H Copyright © 2004-2009 ARM Limited. All rights reserved. 16-14
ID012310 Non-Confidential, Unrestricted Access
16.8 Branches
This section describes the cycle timing behavior for the B, BL, and BLX instructions.
Branches are subject to dynamic, static and return stack predictions. Table 16-11 lists example
branch instructions and their cycle timing behavior.
Table 16-11 Branch instruction cycle timing behavior
Example instruction
Cycle
s
Comment
B <immed>
0 Folded dynamic prediction
B<immed>, BL<immed>, BLX<immed>
1 Not-folded dynamic prediction
B<immed>, BL<immed>, BLX<immed>
1 Correct not-taken static prediction
B<immed>, BL<immed>, BLX<immed>
4 Correct taken static prediction
B<immed>, BL<immed>, BLX<immed>
5-7
a
a. Mispredicted branches, including taken unpredicted branches, takes a varying
number of cycles to execute depending on their distance from a flag setting
instruction. The timing behavior is:
Cycle = MAX (MaxCycles - FlagCycleDistance, MinCycles).
Incorrect dynamic/static prediction
BX R14
4 Correct return stack prediction
BX R14
7 Incorrect return stack prediction
BX R14
5 Empty return stack
BX <cond> R14
5-7
a
Conditional return
BX <cond> <reg>
,
BLX <cond> <reg>
1 If not taken
BX <cond> <reg>
,
BLX <cond> <reg>
5-7
a
If taken

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the ARM ARM1176JZF-S and is the answer not in the manual?

ARM ARM1176JZF-S Specifications

General IconGeneral
BrandARM
ModelARM1176JZF-S
CategoryComputer Hardware
LanguageEnglish

Related product manuals