Indirect branch predictor and prediction method based on global historical classification
A technology of branch prediction and predictor, which is applied in the direction of machine execution devices and concurrent instruction execution, can solve the problems of low prediction accuracy and the inability to make full use of the advantages of path history and direction history information, so as to improve prediction accuracy and overcome Waste of resources, the effect of a wide range of applications
- Summary
- Abstract
- Description
- Claims
- Application Information
AI Technical Summary
Problems solved by technology
Method used
Image
Examples
Embodiment 1
[0067] This embodiment provides an indirect branch predictor based on global history classification. The indirect branch predictor includes: a basic predictor P0, a predictor P1 with tag matching, a predictor P2 with tag matching, and a target An address arbiter and a multiplexer; both the predictor P1 and the predictor P2 are connected to the target address arbiter, and the predictor P0 and the target address arbiter are both connected to the multiplexer.
[0068] The basic predictor P0 is used to predict the target address of a single-target indirect jump branch, which can be realized by using the existing branch target buffer BTB, and the branch prediction table inside P0 is indexed by the instruction PC address.
[0069] Both predictors P1 and P2 are used to predict the target addresses of those multi-target indirect jump branches, and have similar functions and structures, and can be implemented by using existing TTC or ITTAGE predictors; the difference is that the interna...
Embodiment 2
[0074] This embodiment provides an indirect branch predictor based on global history classification, see Figure 4, the indirect branch predictor includes: a base predictor P0, a predictor P1 with tag matching, a predictor P2 with tag matching, a target address arbiter and a multiplexer.
[0075] The basic predictor P0 is used to predict the target address of a single-target indirect jump branch, which is realized by using the existing branch target buffer BTB, and its structure is as follows Figure 5 shown.
[0076] Both predictors P1 and P2 are used to predict the target addresses of those multi-target indirect jump branches, and have similar functions and composition structures; P1 and P2 use the existing ITTAGE predictors to implement the structure as follows Figure 6 The difference is that the internal branch prediction table of P1 is indexed by the hash result of the instruction PC address and the path history PHIST, while the index address of the P2 internal branch p...
Embodiment 3
[0092] This embodiment provides an indirect branch prediction method based on global history classification. The method is implemented based on the indirect branch predictor described in Embodiment 1 or Embodiment 2, including:
[0093] S1: Using the basic predictor P0 to predict the target address of the single-target indirect jump branch, the branch prediction table inside the basic predictor P0 uses the instruction PC address to index, and outputs the basic predicted target address target0;
[0094] The target address of the multi-target indirect jump branch is predicted by using the first predictor P1 with label matching and the second predictor P2 with label match, wherein:
[0095] The branch prediction table inside the first tag-matched predictor P1 is indexed by the hash result of the instruction PC address and the path history PHIST, and outputs the first target address target1;
[0096] The branch prediction table inside the second label matching predictor P2 is inde...
PUM

Abstract
Description
Claims
Application Information

- R&D Engineer
- R&D Manager
- IP Professional
- Industry Leading Data Capabilities
- Powerful AI technology
- Patent DNA Extraction
Browse by: Latest US Patents, China's latest patents, Technical Efficacy Thesaurus, Application Domain, Technology Topic, Popular Technical Reports.
© 2024 PatSnap. All rights reserved.Legal|Privacy policy|Modern Slavery Act Transparency Statement|Sitemap|About US| Contact US: help@patsnap.com