-
公开(公告)号:US20220075624A1
公开(公告)日:2022-03-10
申请号:US17012833
申请日:2020-09-04
Applicant: ADVANCED MICRO DEVICES, INC.
Inventor: Ashok T. VENKATACHAR , Robert COHEN , Steven R. HAVLIR , Aparna Chandrashekhar MANDKE , Tzu-Wei LIN , Bhawna NAYAK
IPC: G06F9/38 , G06F9/30 , G06F9/48 , G06F12/1027
Abstract: Branch prediction circuitry predicts an outcome of a branch instruction. A pipeline circuitry processes instructions along a first path from a predicted branch of the branch instruction. The instructions along the first path are processed concurrently with processing instructions along a second path from an unpredicted branch of the branch instruction. Information representing the state of the second portion while processing the second path is stored in one or more buffers. The instructions are processed along the second path using the information stored in the buffers in response to a misprediction of the outcome of the branch instruction. In some cases, the branch prediction circuitry determines a confidence level for the predicted outcome and the instructions along the second path from the unpredicted branch are processed in response to the confidence level being below a threshold confidence.
-
公开(公告)号:US20210034370A1
公开(公告)日:2021-02-04
申请号:US16945275
申请日:2020-07-31
Applicant: ADVANCED MICRO DEVICES, INC.
Inventor: Marius EVERS , Aparna THYAGARAJAN , Ashok T. VENKATACHAR
Abstract: A set of entries in a branch prediction structure for a set of second blocks are accessed based on a first address of a first block. The set of second blocks correspond to outcomes of one or more first branch instructions in the first block. Speculative prediction of outcomes of second branch instructions in the second blocks is initiated based on the entries in the branch prediction structure. State associated with the speculative prediction is selectively flushed based on types of the branch instructions. In some cases, the branch predictor can be accessed using an address of a previous block or a current block. State associated with the speculative prediction is selectively flushed from the ahead branch prediction, and prediction of outcomes of branch instructions in one of the second blocks is selectively initiated using non-ahead accessing, based on the types of the one or more branch instructions.
-
公开(公告)号:US20210357222A1
公开(公告)日:2021-11-18
申请号:US16877112
申请日:2020-05-18
Applicant: ADVANCED MICRO DEVICES, INC.
Inventor: Arun A. NAIR , Ashok T. VENKATACHAR , Emil TALPES , Srikanth AREKAPUDI , Rajesh Kumar ARUNACHALAM
Abstract: A processor in a data processing system includes a master-shadow physical register file and a renaming unit. The master-shadow physical register file has a master storage coupled to shadow storage. The renaming unit is coupled to the master-shadow physical register file. Based on an occurrence of shadow transfer activation conditions verified by the renaming unit, data in the master storage is transferred from the master storage to the shadow storage for storage. Data is transferred from the shadow storage back to the master storage based on the occurrence of a shadow-to-master transfer event, which includes, for example, a flush of the master storage by the processor.
-
公开(公告)号:US20190384612A1
公开(公告)日:2019-12-19
申请号:US16011010
申请日:2018-06-18
Applicant: ADVANCED MICRO DEVICES, INC.
Inventor: Marius EVERS , Aparna THYAGARAJAN , Ashok T. VENKATACHAR
Abstract: A set of entries in a branch prediction structure for a set of second blocks are accessed based on a first address of a first block. The set of second blocks correspond to outcomes of one or more first branch instructions in the first block. Speculative prediction of outcomes of second branch instructions in the second blocks is initiated based on the entries in the branch prediction structure. State associated with the speculative prediction is selectively flushed based on types of the branch instructions. In some cases, the branch predictor can be accessed using an address of a previous block or a current block. State associated with the speculative prediction is selectively flushed from the ahead branch prediction, and prediction of outcomes of branch instructions in one of the second blocks is selectively initiated using non-ahead accessing, based on the types of the one or more branch instructions.
-
-
-