doi: 10.7763/IJIET.2012.V2.186
Dynamic BTB Indexing Using Jump Offset Prediction
Abstract
Branch instructions have been the biggest contributor of reducing parallelism in pipe-lined computers. Branch prediction had improved the predictability of branch conditions. But the branch targets for indirect branches are still hard to predict as a single branch instruction can branch to different targets in case of indirect branches. Using a BTB will only improve performance of indirect branches that branch to the same target address. In this paper, we propose a modified indexing of BTB, that would allow, first, multiple entries for a single branch instruction to improve prediction of branches with multiple targets and second, use of the offset that the branch instruction would use as part of the index to improve the indexing of BTB. We achieve this by caching the values produced by most recently executed instructions and identifying the instruction that produced the offset value used by the branch instruction as an offset source for that branch. When the source instruction is executed the next time, the value produced is taken as the predicted offset and used along with branch instruction PC as an index into the BTB. Updating the BTB after the completion of branch instruction is also done with the same index. Using the predicted offset to augment the BTB index allows for better prediction of indirect branches.
Keywords
- Branch prediction
- BTB
- dynamic indexing
- indirect jump
- offset prediction
How to Cite
Vidhya C., Manimozhi I., and Jithendranath Mungara, "Dynamic BTB Indexing Using Jump Offset Prediction," International Journal of Information and Education Technology, vol. 2, no. 5, pp. 486-489, 2012. https://doi.org/10.7763/IJIET.2012.V2.186
Copyright & License
Copyright © 2012 by the authors. This is an open access article distributed under the Creative Commons Attribution License which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited (CC BY 4.0).