2002/11/22 by Chih-Chieh Lee, I.-C.K. Chen, Trevor Mudge · 1 voice
Computer Science · Engineering · #Advanced Data Storage Technologies #Low-power high-performance VLSI design #Parallel Computing and Optimization Techniques
paper · doi:10.1109/micro.1997.645792
openalex publication_date 2002/11/22 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/29
Dynamic branch predictors are popular because they can deliver accurate branch prediction without changes to the instruction set architecture or pre existing binaries. However, to achieve the desired prediction accuracy, existing dynamic branch predictors require considerable amounts of hardware to minimize the interference effects due to aliasing in the prediction tables. We propose a new dynamic predictor, the bi mode predictor, which divides the prediction tables into two halves and by dynamically determining the current "mode" of the program, selects the appropriate half of the table for prediction. This approach is shown to preserve the merits of global history based prediction while reducing destructive aliasing and, as a result, improving prediction accuracy. Moreover, it is simple enough that it does not impact a processor's cycle time. We conclude by conducting a comprehensive study into the mechanism underlying two level dynamic predictors and investigate the criteria for their optimal designs. The analysis presented provides a general framework for studying branch predictors.