Apparatus and method for target address replacement in speculative branch target address cache
AssigneeIP-First, LLC
InventorsThomas C. McDonald, Terry Parks
Life of this patent
Estimating the term…
Loading patent…
AssigneeIP-First, LLC
InventorsThomas C. McDonald, Terry Parks
Estimating the term…
An apparatus and method in a pipelined microprocessor for replacing one of two target addresses in a branch target address cache (BTAC) line. If only one of the two entries is invalid, the invalid entry is replaced. If both entries are valid, the least recently used entry is replaced. If both entries are invalid, the entry is replaced corresponding to the side of the BTAC, indicated by a global status register, not last written to with an invalid entry. In one embodiment, the global status is updated only if a side is written when both entries are invalid. In another embodiment, the BTAC stores N entries per line, where N is greater than 1. The status register maintains information for determining which of the N sides is least recently written. The least recently written side is chosen for replacement.
An apparatus for writing a target address of a taken branch instruction into a branch target address cache (BTAC) upon execution of the taken branch instruction, the BTAC having a plurality of storage elements for caching target addresses of executed branch instructions, each of the plurality of storage elements comprising first and second entries for storing a target address, the apparatus comprising:
An apparatus for writing a target address in a branch target address cache upon execution of a taken branch instruction, comprising:
A method for replacing a target address in a branch target address cache (BTAC) having a plurality of storage locations each having an A and B entry for caching a target address, the method comprising:
A method for replacing a target address in a branch target address cache (BTAC) having a plurality of storage locations each having N entries for caching a target address, wherein N is an integer greater than one, the method comprising:
A pipelined microprocessor, comprising:
An apparatus for updating a branch target address cache (BTAC), the BTAC having a plurality of storage elements, each of the plurality of storage elements having two sides each for storing a target address of branch instruction, each of the two sides having a valid indicator for indicating whether the side is currently storing a valid target address, the apparatus comprising:
A method for updating a branch target address cache (BTAC), the BTAC having a plurality of storage elements, each of the plurality of storage elements having two sides each for storing a target address of branch instruction, each of the two sides having a valid indicator for indicating whether the side is currently storing a valid target address, the apparatus comprising:
Dependencies are inferred from the claim text.