Early misprediction recovery through periodic checkpoints
    51.
    发明申请
    Early misprediction recovery through periodic checkpoints 审中-公开
    通过定期检查点的早期错误预测恢复

    公开(公告)号:US20070043934A1

    公开(公告)日:2007-02-22

    申请号:US11208924

    申请日:2005-08-22

    IPC分类号: G06F9/44

    CPC分类号: G06F9/3863 G06F9/384

    摘要: Methods and apparatus to provide misprediction recovery through periodic checkpoint are described. In one embodiment, a renamer unit (e.g., within a processor core) recovers a register alias table (RAT) to a state immediately preceding a misprediction.

    摘要翻译: 描述了通过定期检查点提供错误预测恢复的方法和装置。 在一个实施例中,重命名单元(例如,处理器核心内)将寄存器别名表(RAT)恢复到紧随错误预测之前的状态。

    Method and system for transforming memory location references in instructions
    52.
    发明授权
    Method and system for transforming memory location references in instructions 有权
    在指令中转换内存位置引用的方法和系统

    公开(公告)号:US07174428B2

    公开(公告)日:2007-02-06

    申请号:US10745700

    申请日:2003-12-29

    IPC分类号: G06F12/00

    摘要: Embodiments of the present invention provide a method, apparatus and system for memory renaming. In one embodiment, a decode unit may decode a load instruction. If the load instruction is predicted to be memory renamed, the load instruction may have a predicted store identifier associated with the load instruction. The decode unit may transform the load instruction that is predicted to be memory renamed into a data move instruction and a load check instruction. The data move instruction may read data from the cache based on the predicted store identifier and load check instruction may compare an identifier associated with an identified source store with the predicted store identifier. A retirement unit may retire the load instruction if the predicted store identifier matches an identifier associated with the identified source store. In another embodiment of the present invention, the processor may re-execute the load instruction without memory renaming if the predicted store identifier does not match the identifier associated with the identified source store.

    摘要翻译: 本发明的实施例提供了一种用于存储器重命名的方法,装置和系统。 在一个实施例中,解码单元可以解码加载指令。 如果加载指令被预测为存储器重新命名,则加载指令可以具有与加载指令相关联的预测存储标识符。 解码单元可以将预测为被重命名的存储器的加载指令变换为数据移动指令和加载检查指令。 数据移动指令可以基于预测的存储标识符从高速缓存读取数据,并且加载检查指令可以将与所识别的源存储器相关联的标识符与预测的存储标识符进行比较。 如果预测的商店标识符与与所标识的源商店相关联的标识符匹配,则退休单元可以退出加载指令。 在本发明的另一个实施例中,如果预测的存储标识符与与所识别的源存储器相关联的标识符不匹配,则处理器可以重新执行加载指令而不进行存储器重命名。

    PROCESSOR WITH SECOND JUMP EXECUTION UNIT FOR BRANCH MISPREDICTION
    53.
    发明申请
    PROCESSOR WITH SECOND JUMP EXECUTION UNIT FOR BRANCH MISPREDICTION 审中-公开
    具有分支机构错误预测的第二个执行单元的处理程序

    公开(公告)号:US20140195790A1

    公开(公告)日:2014-07-10

    申请号:US13994676

    申请日:2011-12-28

    IPC分类号: G06F9/38

    摘要: A secondary jump execution unit (JEU) is incorporated in a micro-processor to operate concurrently with a primary JEU, enabling the execution of simultaneous branch operations with possible detection of multiple branch mispredicts. When branch operations are executed on both JEUs in a same instruction cycle, mispredict processing for the secondary JEU is skidded into the primary JEU's dispatch pipeline such that the branch processing for the secondary JEU occurs after processing of the branch for the primary JEU and while the primary JEU is not processing a branch. Moreover, in cases when a nuke command is also received from a reorder buffer of the processor, the branch processing for the secondary JEU is further delayed to accommodate processing of the nuke on the primary JEU. Further embodiments support the promotion of the secondary JEU to have access to the mispredict mechanisms of the primary JEU in certain circumstances.

    摘要翻译: 次级跳转执行单元(JEU)并入微处理器以与主JEU同时操作,使得能够执行同时分支操作,并可能检测到多个分支错误预测。 当在同一个指令周期中对两个JEU执行分支操作时,辅助JEU的错误预测处理被划分到主JEU的调度流水线中,使得辅助JEU的分支处理在主JEU的分支处理之后发生,而 初级JEU不处理分支。 此外,在从处理器的重新排序缓冲器接收到nuke命令的情况下,进一步延迟用于辅助JEU的分支处理,以适应主JEU上的nuke的处理。 进一步的实施方案支持促进联合联合国次级方案在某些情况下获得主要联合执行机构的错误预测机制。

    Managing multiple threads in a single pipeline
    54.
    发明授权
    Managing multiple threads in a single pipeline 有权
    在单个管道中管理多个线程

    公开(公告)号:US08504804B2

    公开(公告)日:2013-08-06

    申请号:US13613820

    申请日:2012-09-13

    IPC分类号: G06F15/00 G06F9/40 G06F9/30

    CPC分类号: G06F9/3851

    摘要: In one embodiment, the present invention includes a method for determining if an instruction of a first thread dispatched from a first queue associated with the first thread is stalled in a pipestage of a pipeline, and if so, dispatching an instruction of a second thread from a second queue associated with the second thread to the pipeline if the second thread is not stalled. Other embodiments are described and claimed.

    摘要翻译: 在一个实施例中,本发明包括一种用于确定从与第一线程相关联的第一队列调度的第一线程的指令是否在流水线的分支中被停止的方法,如果是,则将第二线程的指令从 如果第二线程没有停止,则与第二线程相关联的第二队列到管道。 描述和要求保护其他实施例。

    Managing Multiple Threads In A Single Pipeline
    55.
    发明申请
    Managing Multiple Threads In A Single Pipeline 有权
    在单个管道中管理多个线程

    公开(公告)号:US20130013898A1

    公开(公告)日:2013-01-10

    申请号:US13613820

    申请日:2012-09-13

    IPC分类号: G06F9/38

    CPC分类号: G06F9/3851

    摘要: In one embodiment, the present invention includes a method for determining if an instruction of a first thread dispatched from a first queue associated with the first thread is stalled in a pipestage of a pipeline, and if so, dispatching an instruction of a second thread from a second queue associated with the second thread to the pipeline if the second thread is not stalled. Other embodiments are described and claimed.

    摘要翻译: 在一个实施例中,本发明包括一种用于确定从与第一线程相关联的第一队列调度的第一线程的指令是否在流水线的分支中被停止的方法,如果是,则将第二线程的指令从 如果第二线程没有停止,则与第二线程相关联的第二队列到管道。 描述和要求保护其他实施例。

    Computer with dynamic instruction reuse
    57.
    发明授权
    Computer with dynamic instruction reuse 失效
    具有动态指令重用的计算机

    公开(公告)号:US5845103A

    公开(公告)日:1998-12-01

    申请号:US876137

    申请日:1997-06-13

    IPC分类号: G06F9/38 G06F9/30

    摘要: A computer architecture allowing reuse of previously determined instruction results, indexes instruction results according to instruction addresses. The continued validity of operand values in registers or memory for the instructions is determined prior to the fetching of any given instruction by an invalidation system which detects an intervening register or memory write. Thus, the need to evaluate the operand values themselves which would delay execution is avoided. In one embodiment, dependencies for operands between instructions are recorded so as to avoid invalidating instructions having operand register or memory locations which are overwritten when the overwriting will be corrected by an intervening instruction immediately preceding the dependent instructions.

    摘要翻译: 允许重新使用先前确定的指令结果的计算机架构,根据指令地址对指令结果进行索引。 在通过检测中间寄存器或存储器写入的无效系统取出任何给定指令之前,确定指令的寄存器或存储器中操作数值的持续有效性。 因此,避免了对延迟执行的操作数值本身的评估的需要。 在一个实施例中,记录指令之间的操作数的依赖关系,以避免使具有操作数寄存器或存储器位置的指令无效,当重写将通过在依赖指令之前的中间指令进行校正时被重写。