发明名称 Circuit and method for tagging and invalidating speculatively executed instructions
摘要 A method and circuit is disclosed for tagging and invalidating speculatively executed instructions. The method includes fetching a first plurality of instructions which includes a conditional branch instruction which identifies a target address if the branch is taken. The conditional branch instruction is detected and in response thereto first and second instruction tags are generated. At least a first instruction is tagged with the first instruction tag wherein the first instruction is included in the first plurality of instructions and wherein the first instruction sequentially follows the first conditional branch instruction in program order. Thereafter, a second plurality of instructions are fetched wherein the second plurality of instructions corresponds to the target address of the conditional branch instruction. At least one of these second plurality of instructions is tagged with the second instruction tag. Thereafter, the conditional branch instruction is executed and resolved. A branch status operand is generated in response to executing the conditional branch instruction wherein the branch status operand indicates whether the conditional branch instruction is resolved as taken or not taken. The generated branch status operand is compared against the first and second instruction tags. In response to comparing the branch status operand, one of the first and second instructions is invalidated indicating that it was within the wrong program path of execution.
申请公布号 US6289442(B1) 申请公布日期 2001.09.11
申请号 US19980166037 申请日期 1998.10.05
申请人 ADVANCED MICRO DEVICES, INC. 发明人 ASATO CREIGTON
分类号 G06F9/38;(IPC1-7):G06F9/26 主分类号 G06F9/38
代理机构 代理人
主权项
地址