An instruction prefetch apparatus includes a branch target buffer (BTB), a
presbyopic target buffer (PTB) and a prefetch stream buffer (PSB). The
BTB includes records that map branch addresses to branch target
addresses, and the PTB includes records that map branch target addresses
to subsequent branch target addresses. When a branch instruction is
encountered, the BTB can predict the dynamically adjacent subsequent
block entry location as the branch target address in the record that also
includes the branch instruction address. The PTB can predict multiple
subsequent blocks by mapping the branch target address to subsequent
dynamic blocks. The PSB holds instructions prefetched from subsequent
blocks predicted by the PTB.