2–4 Internal Architectur e
21264/EV68A Hardware Reference Manual
21264/EV68A Microarchitecture
Figure 2–2 Bran ch Predictor
Local Predictor
The local predictoruses a 2-level table that holds the history of individual branches.
The 2-leveltable design approaches the prediction accuracy of a larger single-level
tablewhile r equiringfewer total bits of storage. Figure 2–3 shows how the local pre-
dictorgenerates a prediction. Bits [11:2] of the VPC of the current branchare used as
the indexto a 1Kentry table in which each entry is a10-bit value. This 10-bit value is
used as theindex to a 1K entry table of 3-bit saturating counters. The value of thesatu-
ratingcounter determines the predication, taken/not-taken, of the currentbranch.
Figure 2–3 LocalPredictor
Global Predictor
The globalpredictor is indexed by a global history of all recent branches. The global
predictor correlates the local history of the current b ranch with all recentbranches. Fig-
ure 2–4 showshow the global predictor generates a prediction. The global path history
is comprisedof the taken/not-taken state of the 12 most-recent branches. These 12
statesare used to form an index into a 4K entry tableof 2-bit saturating counters. The
valueof the saturating counter determines the predication, taken/not-taken,of the cur-
rentbr anch.
Local
Predictor Global
Predictor Choice
Predictor
Predicted
Branch
Address
FM-05810.AI4
Local
History
Table
1K x 10
FM-05811.AI4
Local
Predictor
1K x 3 +/-
10 Index
VPC[11:2]
Local Branch Prediction
1
3
10
3