Branch prediction tables and buffers
Branch prediction table (BPT or branch history table BHT)
- How addressed (low-order bits of PC, hashing, cache-like)
- How much history in the prediction (1-bit, 2-bits, n-bits)
- Where is it stored (in a separate table, associated with the I-cache)
Branch target buffers (BTB)
- BPT + address of target instruction (+ target instruction -- not implemented in current micros as far as I know--)
Correlated branch prediction
Hybrid predictors
- Choose dynamically the best among 2 predictors