BRANCH PREDICTION IN A DATA PROCESSING APPARATUS
First Claim
1. Apparatus comprising:
- instruction fetch circuitry to retrieve instructions from storage by reference to addresses at which the instructions are stored;
branch target storage to store entries comprising source and target addresses for branch instructions, wherein the branch target storage is capable of storing a confidence value associated with an entry and the branch target storage is responsive to a current address matching a source address in the entry and the confidence value exceeding a confidence threshold to issue a signal to the instruction fetch circuitry to retrieve a predicted next instruction from a target address in the entry; and
branch confidence update circuitry to increase the confidence value of the entry in response to receipt of a confirmation of the target address and to decrease the confidence value of the entry in response to receipt of a non-confirmation of the target address,wherein the branch confidence update circuitry is responsive to the confidence value meeting a confidence lock threshold below the confidence threshold and receipt of the non-confirmation of the target address to trigger a locking mechanism with respect to the entry.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus comprises instruction fetch circuitry to retrieve instructions from storage and branch target storage to store entries comprising source and target addresses for branch instructions. A confidence value is stored with each entry and when a current address matches a source address in an entry, and the confidence value exceeds a confidence threshold, instruction fetch circuitry retrieves a predicted next instruction from a target address in the entry. Branch confidence update circuitry increases the confidence value of the entry on receipt of a confirmation of the target address and decreases the confidence value on receipt of a non-confirmation of the target address. When the confidence value meets a confidence lock threshold below the confidence threshold and non-confirmation of the target address is received, a locking mechanism with respect to the entry is triggered. A corresponding method is also provided.
-
Citations
17 Claims
-
1. Apparatus comprising:
-
instruction fetch circuitry to retrieve instructions from storage by reference to addresses at which the instructions are stored; branch target storage to store entries comprising source and target addresses for branch instructions, wherein the branch target storage is capable of storing a confidence value associated with an entry and the branch target storage is responsive to a current address matching a source address in the entry and the confidence value exceeding a confidence threshold to issue a signal to the instruction fetch circuitry to retrieve a predicted next instruction from a target address in the entry; and branch confidence update circuitry to increase the confidence value of the entry in response to receipt of a confirmation of the target address and to decrease the confidence value of the entry in response to receipt of a non-confirmation of the target address, wherein the branch confidence update circuitry is responsive to the confidence value meeting a confidence lock threshold below the confidence threshold and receipt of the non-confirmation of the target address to trigger a locking mechanism with respect to the entry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of data processing comprising:
-
retrieving instructions from storage by reference to addresses at which the instructions are stored; storing entries comprising source and target addresses for branch instructions in a branch target storage; storing a confidence value associated with an entry in the branch target storage; retrieving a predicted next instruction from a target address in the entry, when a current address matches a source address in the entry and the confidence value exceeds a confidence threshold; increasing the confidence value in response to receipt of a confirmation of the target address; decreasing the confidence value of the entry in response to receipt of a non-confirmation of the target address; triggering a locking mechanism which marks the entry as a locked entry in response to the confidence value meeting a confidence lock threshold below the confidence threshold and receipt of the non-confirmation of the target address.
-
-
17. Apparatus comprising:
-
means for retrieving instructions from storage by reference to addresses at which the instructions are stored; means for storing entries comprising source and target addresses for branch instructions; means for storing a confidence value associated with an entry in the means for storing entries; means for retrieving a predicted next instruction from a target address in the entry, when a current address matches a source address in the entry and the confidence value exceeds a confidence threshold; means for increasing the confidence value in response to receipt of a confirmation of the target address; means for decreasing the confidence value of the entry in response to receipt of a non-confirmation of the target address; means for triggering a locking mechanism which marks the entry as a locked entry in response to the confidence value meeting a confidence lock threshold below the confidence threshold and receipt of the non-confirmation of the target address.
-
Specification