会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 52. 发明授权
    • Configurable branch prediction for a processor performing speculative execution
    • 执行推测执行的处理器的可配置分支预测
    • US06671798B1
    • 2003-12-30
    • US09992822
    • 2001-11-16
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • G06F938
    • G06F9/3851G06F9/3806G06F9/3848
    • In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically in software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding. In a third aspect of the invention, Hit/Miss information from a Branch Prediction Cache (BPC) can optionally be used in formulating the next state value of an addressed two-bit counter stored in a correlation-based branch history table. Since a Miss in the BPC may indicate that this branch has not been encountered recently, whatever state currently exists can be optionally forced to a state that is based solely on whether the branch is resolved taken or not. This feature may be enabled and disabled under software control. In a fourth aspect of the invention, information from the instruction decoder is optionally used to override the correlation-based branch history table based prediction for select branch instructions. This feature may be enabled and disabled under software or hardware control.
    • 在本发明的第一方面中,包括逻辑和互连的分支预测硬件可经由控制线进行配置,以改变生成分支预测的方式。 该配置可以通过软件进行编程。 或者,可以通过硬件来响应处理器事件来进行配置。 这样的处理器事件包括CS寄存器的加载和指令工作量的变化。 在本发明的第二方面中,与推测执行相关,部分地基于解决的分支历史信息来预测多个分支的方向。 然后针对每个预测分支存储暂定分支历史信息。 当解决预测分支时,根据所存储的用于最近解决的分支的临时分支历史信息来更新所解析的分支历史信息。 此外,预测可能部分基于前述未解决的分支预测(如果有)是未完成的。 在本发明的第三方面中,来自分支预测高速缓存(BPC)的命中/错误信息可以可选地用于制定存储在基于相关的分支历史表中的寻址的两位计数器的下一个状态值。 由于BPC中的小姐可能会指出最近没有遇到这个分支,所以无论目前存在什么状态,都可以强制执行到仅基于分支是否被解决的状态。 可以在软件控制下启用和禁用此功能。 在本发明的第四方面中,可选地使用来自指令解码器的信息来覆盖用于选择分支指令的基于相关性的基于分支历史表的预测。 可以在软件或硬件控制下启用和禁用此功能。
    • 53. 发明授权
    • Method and apparatus for busing data elements
    • 调用数据元素的方法和装置
    • US06449671B1
    • 2002-09-10
    • US09328971
    • 1999-06-09
    • Niteen A. PatkarStephen C. PurcellShalesh ThusooKorbin S. Van Dyke
    • Niteen A. PatkarStephen C. PurcellShalesh ThusooKorbin S. Van Dyke
    • G06F1300
    • G06F12/0806
    • A method and apparatus for busing data elements within a computing system includes processing that begins by providing, on a shared bus, a first control signal relating to a first transaction during a first bus cycle. The processing continues by providing a second control signal relating to a second transaction and a first address signal relating to the first transaction during a second bus cycle. The processing continues by providing a third control signal relating to a third transaction and a second address signal relating to a second transaction during a third bus cycle. The processing then continues by providing a first status relating to the first transaction and a third addressing signal relating to the third transaction during a fourth bus cycle. The processing then continues by providing a second status relating to the second transaction during a fifth bus cycle. The processing then continues by providing first data relating to the first transaction when the first status is a hit and providing third status relating to the third transaction during a sixth bus cycle.
    • 用于在计算系统内传送数据元素的方法和装置包括开始于在共享总线上提供在第一总线周期期间与第一事务相关的第一控制信号的处理。 通过在第二总线周期期间提供与第二事务相关的第二控制信号和与第一事务相关的第一地址信号来继续处理。 通过在第三总线周期期间提供与第三事务相关的第三控制信号和与第二事务相关的第二地址信号来继续处理。 然后通过在第四总线周期期间提供与第一事务相关的第一状态和与第三事务相关的第三寻址信号来继续处理。 然后通过在第五总线周期期间提供与第二事务相关的第二状态来继续处理。 然后,当第一状态是命中时,通过提供与第一事务有关的第一数据继续处理,并在第六总线周期期间提供与第三事务有关的第三状态。
    • 55. 发明授权
    • Configurable branch prediction for a processor performing speculative execution
    • 执行推测执行的处理器的可配置分支预测
    • US06360318B1
    • 2002-03-19
    • US09608451
    • 2000-06-29
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • G06F938
    • G06F9/3851G06F9/3806G06F9/3848
    • In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically In software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding. In a third aspect of the invention, Hit/Miss information from a Branch Prediction Cache (BPC) can optionally be used in formulating the next state value of an addressed two-bit counter stored in a correlation-based branch history table. Since a Miss in the BPC may indicate that this branch has not been encountered recently, whatever state currently exists can be optionally forced to a state that is based solely on whether the branch is resolved taken or not. This feature may be enabled and disabled under software control. In a fourth aspect of the invention, information from the instruction decoder is optionally used to override the correlation-based branch history table based prediction for select branch instructions. This feature may be enabled and disabled under software or hardware control.
    • 在本发明的第一方面中,包括逻辑和互连的分支预测硬件可经由控制线进行配置,以改变生成分支预测的方式。 可以通过编程方式在软件中完成配置。 或者,可以通过硬件来响应处理器事件来进行配置。 这样的处理器事件包括CS寄存器的加载和指令工作量的变化。 在本发明的第二方面中,与推测执行相关,部分地基于解决的分支历史信息来预测多个分支的方向。 然后针对每个预测分支存储暂定分支历史信息。 当解决预测分支时,根据所存储的用于最近解决的分支的临时分支历史信息来更新所解析的分支历史信息。 此外,预测可能部分基于前述未解决的分支预测(如果有)是未完成的。 在本发明的第三方面中,来自分支预测高速缓存(BPC)的命中/错误信息可以可选地用于制定存储在基于相关的分支历史表中的寻址的两位计数器的下一个状态值。 由于BPC中的小姐可能会指出最近没有遇到这个分支,所以无论目前存在什么状态,都可以强制执行到仅基于分支是否被解决的状态。 可以在软件控制下启用和禁用此功能。 在本发明的第四方面中,可选地使用来自指令解码器的信息来覆盖用于选择分支指令的基于相关性的基于分支历史表的预测。 可以在软件或硬件控制下启用和禁用此功能。
    • 56. 发明授权
    • Configurable branch prediction for a processor performing speculative execution
    • 执行推测执行的处理器的可配置分支预测
    • US06282639B1
    • 2001-08-28
    • US09608448
    • 2000-06-29
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • G06F900
    • G06F9/3851G06F9/3806G06F9/3848
    • In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically in software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding. In a third aspect of the invention, Hit/Miss Information from a Branch Prediction Cache (BPC) can optionally be used in formulating the next state value of an addressed two-bit counter stored in a correlation-based branch history table. Since a Miss in the BPC may indicate that this branch has not been encountered recently, whatever state currently exists can be optionally forced to a state that is based solely on whether the branch is resolved taken or not. This feature may be enabled and disabled under software control. In a fourth aspect of the invention, information from the instruction decoder is optionally used to override the correlation-based branch history table based prediction for select branch instructions. This feature may be enabled and disabled under software or hardware control.
    • 在本发明的第一方面中,包括逻辑和互连的分支预测硬件可经由控制线进行配置,以改变生成分支预测的方式。 该配置可以通过软件进行编程。 或者,可以通过硬件来响应处理器事件来进行配置。 这样的处理器事件包括CS寄存器的加载和指令工作量的变化。 在本发明的第二方面中,与推测执行相关,部分地基于解决的分支历史信息来预测多个分支的方向。 然后针对每个预测分支存储暂定分支历史信息。 当解决预测分支时,根据所存储的用于最近解决的分支的临时分支历史信息来更新所解析的分支历史信息。 此外,预测可能部分基于前述未解决的分支预测(如果有)是未完成的。 在本发明的第三方面中,来自分支预测高速缓存(BPC)的命中/错误信息可以可选地用于制定存储在基于相关的分支历史表中的寻址的两位计数器的下一状态值。 由于BPC中的小姐可能会指出最近没有遇到这个分支,所以无论目前存在什么状态,都可以强制执行到仅基于分支是否被解决的状态。 可以在软件控制下启用和禁用此功能。 在本发明的第四方面中,可选地使用来自指令解码器的信息来覆盖用于选择分支指令的基于相关性的基于分支历史表的预测。 可以在软件或硬件控制下启用和禁用此功能。
    • 58. 发明授权
    • Configurable branch prediction for a processor performing speculative
execution
    • US6108777A
    • 2000-08-22
    • US73499
    • 1998-05-06
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • David L. PuziolKorbin S. Van DykeLarry WidigenLen SharWalstein Bennett Smith, III
    • G06F9/38
    • G06F9/3851G06F9/3806G06F9/3848
    • In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically in software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding. In a third aspect of the invention, Hit/Miss information from a Branch Prediction Cache (BPC) can optionally be used in formulating the next state value of an addressed two-bit counter stored in a correlation-based branch history table. Since a Miss in the BPC may indicate that this branch has not been encountered recently, whatever state currently exists can be optionally forced to a state that is based solely on whether the branch is resolved taken or not. This feature may be enabled and disabled under software control. In a fourth aspect of the invention, information from the instruction decoder is optionally used to override the correlation-based branch history table based prediction for select branch instructions. This feature may be enabled and disabled under software or hardware control.