发明名称 Method and apparatus for updating a speculative rename table in a microprocessor
摘要 A processor including architectural registers used to execute instructions and a renaming module to rename the architectural registers to physical registers in response to receiving instructions. A first table stores pointers to the physical registers storing data generated in response to the processor completing execution of instructions. A second table stores pointers to the physical registers storing data to be generated by instructions received but not executed by the processor and used by instructions to be received by the processor. An execution module executes instructions and discards one or more instructions received but not executed by the processor in response to an event. An updating module updates pointers in the second table in response to the event. The updated pointers are generated based on pointers stored in the first table at a time of occurrence of the event and instructions not discarded by the execution module.
申请公布号 US9405542(B1) 申请公布日期 2016.08.02
申请号 US201313849120 申请日期 2013.03.22
申请人 Marvell International LTD. 发明人 Schuttenberg Kim;Balasubramanian Sridharan
分类号 G06F9/38;G06F9/30 主分类号 G06F9/38
代理机构 代理人
主权项 1. A processor comprising: a plurality of architectural registers of the processor, wherein the architectural registers are used by the processor to execute one or more instructions; a renaming module configured to rename one or more of the architectural registers to one or more physical registers in the processor in response to the processor receiving a plurality of instructions for execution; a memory comprising a first table configured to store pointers to the physical registers storing data generated in response to the processor completing execution of one or more instructions, anda second table configured to store pointers to the physical registers storing data to be (i) generated by a set of instructions received but not executed by the processor and (ii) used by instructions to be received by the processor; an execution module configured to execute the plurality of instructions, anddiscard one or more instructions from the set of instructions received but not executed by the processor in response to an event; and an updating module configured to update pointers in the second table in response to the event, wherein the updated pointers are generated based on (i) pointers stored in the first table at a time of occurrence of the event, and (ii) one or more instructions from the set of instructions not discarded by the execution module.
地址 Hamilton BM