1. Introduction
The drive to develop CPUs with greater performance has resulted in computer architectures that focus upon increasing degrees of instruction level parallelism. This has lead to CPU with very deep pipelines represented by both superscalar and superpipeling techniques. A direct by-product of this improvement in CPU capability is that branch prediction has become a highly important concern. Branching impedes CPU performance in that conditional branches can’t be resolved until the condition is determined and the target address calculated. Likewise unconditional branches can’t be determined without calculating the address. As pipelines get deeper (longer) the penalty of incorrect branching grows.
Many methods have been proposed and researched and the solution of the majority is based on variations of schemes that predict the direction of conditional branches and then pre-fetch, decode, and execute the instruction. If the prediction is incorrect a lot of the......
Join Now or Login to view the rest of this paper.
Approximate Word Count: 4105
Approximate Pages: 16 (260 words per double-spaced page) |