Method and Apparatus for Dynamically Managing Instruction Buffer Depths for Non-Predicted Branches
    4.
    发明申请
    Method and Apparatus for Dynamically Managing Instruction Buffer Depths for Non-Predicted Branches 失效
    用于动态管理非预测分支的指令缓冲区深度的方法和装置

    公开(公告)号:US20090063819A1

    公开(公告)日:2009-03-05

    申请号:US11845838

    申请日:2007-08-28

    IPC分类号: G06F9/312 G06F9/38

    CPC分类号: G06F9/3804

    摘要: A method and apparatus for dynamically managing instruction buffer depths for non-predicted branches reduces wasted energy and resources associated with low confidence branch prediction conditions. A portion of the instruction buffer for a instruction thread is allocated for storing predicted branch instruction streams and another portion, which may be zero-sized during high prediction confidence conditions, is allocated to the non-predicted branch instruction stream. The size of the buffers is adjusted dynamically in conformity with an on-going prediction confidence that provides a measure of how well branch prediction mechanisms are working for a given instruction thread. An alternate instruction fetch address table can be maintained and multiplexed with the main fetch address register for addressing the instruction cache, so that the instruction stream can be quickly shifted to the non-predicted path when a branch instruction is resolved to the non-predicted path.

    摘要翻译: 用于动态管理非预测分支的指令缓冲器深度的方法和装置减少与低置信度分支预测条件相关联的浪费的能量和资源。 分配用于指令线程的指令缓冲器的一部分用于存储预测的分支指令流,并且在高预测置信度条件下可以为零大小的另一部分被分配给非预测分支指令流。 缓冲区的大小根据正在进行的预测置信度动态调整,提供了分支预测机制对给定指令线程的工作原理的测量。 替代指令提取地址表可以与主提取地址寄存器保持多路复用,用于对指令高速缓存进行寻址,使得当分支指令被解析为非预测路径时,可以将指令流快速移位到非预测路径 。

    Method and apparatus for dynamically managing instruction buffer depths for non-predicted branches
    5.
    发明授权
    Method and apparatus for dynamically managing instruction buffer depths for non-predicted branches 失效
    用于动态管理非预测分支的指令缓冲区深度的方法和装置

    公开(公告)号:US07779232B2

    公开(公告)日:2010-08-17

    申请号:US11845838

    申请日:2007-08-28

    IPC分类号: G06F9/42 G06F9/312

    CPC分类号: G06F9/3804

    摘要: A method and apparatus for dynamically managing instruction buffer depths for non-predicted branches reduces wasted energy and resources associated with low confidence branch prediction conditions. A portion of the instruction buffer for a instruction thread is allocated for storing predicted branch instruction streams and another portion, which may be zero-sized during high prediction confidence conditions, is allocated to the non-predicted branch instruction stream. The size of the buffers is adjusted dynamically in conformity with an on-going prediction confidence that provides a measure of how well branch prediction mechanisms are working for a given instruction thread. An alternate instruction fetch address table can be maintained and multiplexed with the main fetch address register for addressing the instruction cache, so that the instruction stream can be quickly shifted to the non-predicted path when a branch instruction is resolved to the non-predicted path.

    摘要翻译: 用于动态管理非预测分支的指令缓冲器深度的方法和装置减少与低置信度分支预测条件相关联的浪费的能量和资源。 分配用于指令线程的指令缓冲器的一部分用于存储预测的分支指令流,并且在高预测置信度条件下可以为零大小的另一部分被分配给非预测分支指令流。 缓冲区的大小根据正在进行的预测置信度动态调整,提供了分支预测机制对给定指令线程的工作原理的测量。 替代指令提取地址表可以与主提取地址寄存器保持多路复用,用于对指令高速缓存进行寻址,使得当分支指令被解析为非预测路径时,可以将指令流快速移位到非预测路径 。

    Group formation with multiple taken branches per group
    6.
    发明授权
    Group formation with multiple taken branches per group 失效
    每组多组分组成组

    公开(公告)号:US08127115B2

    公开(公告)日:2012-02-28

    申请号:US12417798

    申请日:2009-04-03

    IPC分类号: G06F9/30

    摘要: Disclosed are a method and a system for grouping processor instructions for execution by a processor, where the group of processor instructions includes at least two branch processor instructions. In one or more embodiments, an instruction buffer can decouple an instruction fetch operation from an instruction decode operation by storing fetched processor instructions in the instruction buffer until the fetched processor instructions are ready to be decoded. Group formation can involve removing processor instructions from the instruction buffer and routing the processor instruction to latches that convey the processor instructions to decoders. Processor instructions that are removed from instruction buffer in a single clock cycle can be called a group of processor instructions. In one or more embodiments, the first instruction in the group must be the oldest instruction in the instruction buffer and instructions must be removed from the instruction buffer ordered from oldest to youngest.

    摘要翻译: 公开了一种用于将处理器指令分组以由处理器执行的方法和系统,其中处理器指令组包括至少两个分支处理器指令。 在一个或多个实施例中,指令缓冲器可以通过在指令缓冲器中存储获取的处理器指令直到所读出的处理器指令准备解码,从而将指令提取操作与指令解码操作分离。 组形成可以涉及从指令缓冲器中移除处理器指令并将处理器指令路由到将处理器指令传送给解码器的锁存器。 在单个时钟周期内从指令缓冲区中删除的处理器指令可以称为一组处理器指令。 在一个或多个实施例中,组中的第一指令必须是指令缓冲器中的最早的指令,并且必须从从最老到最小的指令缓冲器中移除指令。

    System and Method for Group Formation with Multiple Taken Branches Per Group
    7.
    发明申请
    System and Method for Group Formation with Multiple Taken Branches Per Group 失效
    每组多组分组形成的系统和方法

    公开(公告)号:US20100257340A1

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

    申请号:US12417798

    申请日:2009-04-03

    IPC分类号: G06F9/30

    摘要: Disclosed are a method and a system for grouping processor instructions for execution by a processor, where the group of processor instructions includes at least two branch processor instructions. In one or more embodiments, an instruction buffer can decouple an instruction fetch operation from an instruction decode operation by storing fetched processor instructions in the instruction buffer until the fetched processor instructions are ready to be decoded. Group formation can involve removing processor instructions from the instruction buffer and routing the processor instruction to latches that convey the processor instructions to decoders. Processor instructions that are removed from instruction buffer in a single clock cycle can be called a group of processor instructions. In one or more embodiments, the first instruction in the group must be the oldest instruction in the instruction buffer and instructions must be removed from the instruction buffer ordered from oldest to youngest.

    摘要翻译: 公开了一种用于将处理器指令分组以由处理器执行的方法和系统,其中处理器指令组包括至少两个分支处理器指令。 在一个或多个实施例中,指令缓冲器可以通过在指令缓冲器中存储获取的处理器指令直到所读出的处理器指令准备解码,从而将指令提取操作与指令解码操作分离。 组形成可以涉及从指令缓冲器中移除处理器指令并将处理器指令路由到将处理器指令传送给解码器的锁存器。 在单个时钟周期内从指令缓冲区中删除的处理器指令可以称为一组处理器指令。 在一个或多个实施例中,组中的第一指令必须是指令缓冲器中的最早的指令,并且必须从从最老到最小的指令缓冲器中移除指令。

    Method for generating a timing path software monitor for identifying a critical timing path in hardware devices coupled between components
    8.
    发明授权
    Method for generating a timing path software monitor for identifying a critical timing path in hardware devices coupled between components 失效
    用于生成用于识别耦合在组件之间的硬件设备中的关键定时路径的定时路径软件监视器的方法

    公开(公告)号:US07467366B2

    公开(公告)日:2008-12-16

    申请号:US11535203

    申请日:2006-09-26

    IPC分类号: G06F9/45 G06F17/50

    CPC分类号: G06F17/5031

    摘要: A method for generating a timing path software monitor for identifying a critical timing path in hardware devices coupled between first and second components is provided. The method includes generating a static timing report associated with the hardware devices. The static timing report has names of the hardware devices and wire names associated with wires coupled to the hardware devices. The method further includes automatically generating the timing path software monitor based on the static timing report that monitors binary values associated with the wire names at a first clock cycle and a transition of binary values associated with the wire names during a second clock cycle after the first clock cycle. The timing path software monitor indicates a critical timing path is identified when the transition of one of the binary values received by the second component occurs during the second clock cycle.

    摘要翻译: 提供了一种用于生成用于识别耦合在第一和第二组件之间的硬件设备中的关键定时路径的定时路径软件监视器的方法。 该方法包括生成与硬件设备相关联的静态定时报告。 静态定时报告具有与耦合到硬件设备的线路相关联的硬件设备和线名称。 该方法还包括基于静态定时报告自动生成定时路径软件监视器,静态定时报告在第一时钟周期监视与线名称相关联的二进制值,以及在第一时钟周期之后的第二时钟周期期间与线名相关联的二进制值的转变 时钟周期。 定时路径软件监视器指示当在第二时钟周期期间发生由第二分量接收的二进制值之一的转换时,识别关键定时路径。

    METHOD FOR GENERATING A TIMING PATH SOFTWARE MONITOR FOR IDENTIFYING A CRITICAL TIMING PATH IN HARDWARE DEVICES COUPLED BETWEEN COMPONENTS
    9.
    发明申请
    METHOD FOR GENERATING A TIMING PATH SOFTWARE MONITOR FOR IDENTIFYING A CRITICAL TIMING PATH IN HARDWARE DEVICES COUPLED BETWEEN COMPONENTS 失效
    用于识别在组件之间耦合的硬件设备中的关键时序路径的定时路径软件监视器的方法

    公开(公告)号:US20080077895A1

    公开(公告)日:2008-03-27

    申请号:US11535203

    申请日:2006-09-26

    IPC分类号: G06F17/50 G06F9/45

    CPC分类号: G06F17/5031

    摘要: A method for generating a timing path software monitor for identifying a critical timing path in hardware devices coupled between first and second components is provided. The method includes generating a static timing report associated with the hardware devices. The static timing report has names of the hardware devices and wire names associated with wires coupled to the hardware devices. The method further includes automatically generating the timing path software monitor based on the static timing report that monitors binary values associated with the wire names at a first clock cycle and a transition of binary values associated with the wire names during a second clock cycle after the first clock cycle. The timing path software monitor indicates a critical timing path is identified when the transition of one of the binary values received by the second component occurs during the second clock cycle.

    摘要翻译: 提供了一种用于生成用于识别耦合在第一和第二组件之间的硬件设备中的关键定时路径的定时路径软件监视器的方法。 该方法包括生成与硬件设备相关联的静态定时报告。 静态定时报告具有与耦合到硬件设备的线路相关联的硬件设备和线名称。 该方法还包括基于静态定时报告自动生成定时路径软件监视器,静态定时报告在第一时钟周期监视与线名称相关联的二进制值,以及在第一时钟周期之后的第二时钟周期期间与线名相关联的二进制值的转变 时钟周期。 定时路径软件监视器指示当在第二时钟周期期间发生由第二分量接收的二进制值之一的转换时,识别关键定时路径。