Analysis of branch prediction techniques under the RISC-V architecture

  • Lucas Arruk Mendes UFSCar
  • Maurício Figueiredo UFSCar
  • Ricardo Menotti UFSCar

Abstract


Branch prediction is a critical technique for enhancing the performance of pipelined processors by minimizing the penalties associated with control hazards. This paper presents a comparative analysis of branch prediction models implemented in a RISC-V processor architecture, focusing on Bimodal, Gselect, and Gshare predictors. Each model was designed, implemented, and tested on an FPGA platform to evaluate its accuracy, resource utilization, and impact on overall processor performance.

References

Andrew Waterman, Yunsup Lee, David A Patterson, and Krste Asanovic. The RISCV instruction set manual, volume I: User-level ISA, version 2.0. EECS Department, University of California, Berkeley, Tech. Rep. UCB/EECS-2014-54, 2014.

Bruno Lévy. Learn FPGA. [link], 2020.

James E Smith. A study of branch prediction strategies. Readings in Computer Architecture, 2000.

Shien-Tai Pan, Kimming So, and Joseph T Rahmeh. Improving the accuracy of dynamic branch prediction using branch correlation. In Proceedings of the fifth international conference on Architectural support for programming languages and operating systems, pages 76–84, 1992.

Scott McFarling. Combining branch predictors. Technical report, Citeseer, 1993. Terasic Technologies. DE10-Standard User Manual. [link], 2017.
Published
2024-10-23
MENDES, Lucas Arruk; FIGUEIREDO, Maurício; MENOTTI, Ricardo. Analysis of branch prediction techniques under the RISC-V architecture. In: UNDERGRADUATE RESEARCH WORKSHOP - SYMPOSIUM ON HIGH PERFORMANCE COMPUTING SYSTEMS (SSCAD), 25. , 2024, São Carlos/SP. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 9-16. DOI: https://doi.org/10.5753/sscad_estendido.2024.244790.