Browse Prior Art Database

Method for dual value prediction in a branch prediction corrector

IP.com Disclosure Number: IPCOM000127008D
Publication Date: 2005-Aug-17
Document File: 3 page(s) / 26K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for dual value prediction in a branch prediction corrector. Benefits include improved performance and improved power performance.

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 55% of the total text.

Method for dual value prediction in a branch prediction corrector

Disclosed is a method for dual value prediction in a branch prediction corrector. Benefits include improved performance and improved power performance.

Background

              High-accuracy branch predictors are required for conventional and future deep pipeline, fast clock rate superscalar processors. Branch prediction accuracy has improved with advanced primary predictor/ branch prediction corrector design. Most branches (>90%) are correctly predicted by conventional predictors, which filter most branches to the corrector. The primary branch predictor processes all branches and notifies the corrector when a branch is detected as mispredicted.

              Branch prediction correctors are called rare event predictors. They function in an environment with many hardware details. Performance can vary with different processors or primary predictors. For example, value-based predictors require access register operands at a specified time during execution. Prophet/critic predictors require wrong-path execution. Prediction results can be uncertain and difficult to reproduce. Branch prediction has been developed to include the following:

•             Floating-point programs

•             Integer programs

•             Multimedia programs

•             Server allocations.

              Conventional value predictions require physical read operands in registers or memory.

General description

              The disclosed method is a branch prediction corrector that identifies branches expected to be mispredicted by the primary branch predictor at some interval of correct predictions. The interval is the predicted number set in the corrector. Every corrector entry has two interval values to enable two prediction patterns, which is called dual value prediction.

Advantages

              The disclosed method provides advantages, including:
•             Improved performance due to improving the accuracy of the primary predictor

•             Improved performance due to improving the processing overhead

•             Improved power performance due to reducing power consumption

Detailed description

              The disclosed method corrects the number of mispredicted branches that occur as a result of the primary branch predictor. Simulation indicates 7.8% (arithmetic average number, 39.9% if geometric average number) of the mispredictions are removed. The amount is 6.3% if one value per entry is retained. With a mathematically skewed (G-skewed) predictor as the primary predictor and the help of other correctors, the final predictor is 28% more accurate than a G-share predictor with equivalent resources. Additionally, simulation indicates maintaining two values per corrector entry is optimal.

              The disclosed method integrates well with the pseudo-G-skewed predictor. The combination technique is comprised of three pred...