Preferred Block Encoding for Truncated BHT Entries
Original Publication Date: 1986-Feb-01
Included in the Prior Art Database: 2005-Mar-08
A Branch History Table (BHT) is a table that contains entries of target addresses for taken branches. Since the distance between a branch and its target does not tend to span the entire address space for most branches, it is possible to store a truncated version of the target address (for economical reasons) without losing an appreciable number of branches. However, for the small number of branches that are affected by this truncation, the penalty associated with the next encounter of the branch is the penalty encountered for branch wrong guess. What can be done in this case is to mark the entry with a bit that signifies "bad target", so that on subsequent encounters the penalty is reduced to that associated with a correct Decode History Table (DHT) guess.