会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 81. 发明授权
    • Method and apparatus for capturing event traces for debug and analysis
    • 捕获事件跟踪的方法和装置,用于调试和分析
    • US06961875B2
    • 2005-11-01
    • US09815548
    • 2001-03-22
    • Michael Stephen FloydBalaram Sinharoy
    • Michael Stephen FloydBalaram Sinharoy
    • G06F9/44G06F11/00G06F11/36
    • G06F11/3636
    • A trace array having M entries with corresponding M addresses is used to store the states of input signals. The M addresses of the trace array are sequenced with a counter that counts a clock beginning at a starting count and counting to an ending count. If the ending count is exceeded, the counter starts over at the starting count. The counter outputs are decoded to addresses of the trace array. An event signal is generated on the occurrence of an operation of interest and the counter is started and stopped in response to sequences of the event signals, thus starting and stopping the recording of states of the input signals in the trace array. When an error or particular condition signal occurs, traces corresponding to the input signals are saved in the trace array. A start signal enables tracing and event logic generates event sequence signals which alternately start and stop the recording of traces. The event sequences are programmed by inputs to enable guaranteed statistical chances of capturing states of the input signals corresponding to a particular event signal occurring before an error or another event signal.
    • 使用具有对应M地址的M个条目的跟踪数组来存储输入信号的状态。 跟踪数组的M地址用计数器计数,该计数器从起始计数开始计数一个时钟,并计数到结束计数。 如果超出结束计数,则计数器从起始计数开始。 计数器输出被解码为跟踪数组的地址。 在感兴趣的操作的发生时产生事件信号,并且响应于事件信号的序列开始和停止计数器,从而启动和停止跟踪阵列中的输入信号的状态的记录。 当发生错误或特定条件信号时,对应于输入信号的迹线将保存在跟踪数组中。 起始信号使跟踪和事件逻辑产生交替地启动和停止记录记录的事件序列信号。 事件序列由输入编程,以使保证的统计机会能够捕捉与在错误或其它事件信号之前发生的特定事件信号相对应的输入信号的状态。
    • 82. 发明授权
    • Software hint to improve the branch target prediction accuracy
    • 软件提示提高分支目标预测精度
    • US06823447B2
    • 2004-11-23
    • US09798166
    • 2001-03-01
    • Robert William HayBalaram Sinharoy
    • Robert William HayBalaram Sinharoy
    • G06F900
    • G06F9/3806G06F9/30054G06F9/3846
    • A field is defined in branch instructions which is interpreted by software as “Hint” bits and these bits are used to signal the processor of special circumstances that may arise when doing speculative branch instruction execution to enable better branch address prediction accuracy and a reduction in link stack corruption which improves overall execution times. A programmer or compiler determines if a branch instruction usage fits in the context for a Hint action. If so, the compiler or programmer, using assembly/machine language, sets Hint bits in the branch instruction when it is compiled. If the branch is later speculatively executed, the processor decodes the Hint bits and executes and a hardware action corresponding the decode of the Hint bits. These Hints include four specific Hint actions, however, the field reserved for Hint bits is five bit wide reserving up to thirty-two specific Hint cases may be specified. These Hint cases (or Hint bits) may be interpreted differently for each type of branch instruction supported.
    • 在分支指令中定义了一个字段,由软件将其解释为“提示”位,这些位用于向处理器发出信号,以便在进行推测性分支指令执行时可能出现的特殊情况,以实现更好的分支地址预测精度和减少链路 堆栈损坏可以提高整体执行时间。 程序员或编译器确定分支指令使用是否符合提示操作的上下文。 如果是这样,编译器或程序员使用汇编/机器语言在编译时在转移指令中设置提示位。 如果分支稍后被推测执行,则处理器对提示位进行解码并执行和与提示位的解码相对应的硬件动作。 这些提示包括四个具体的提示操作,但是,为提示位保留的字段是五位宽保留,最多可以指定三十二个特定的提示情况。 对于支持的每种类型的分支指令,可以对这些提示情况(或提示位)进行不同的解释。
    • 83. 发明授权
    • Increasing the overall prediction accuracy for multi-cycle branch prediction and apparatus by enabling quick recovery
    • 通过实现快速恢复,提高多周期分支预测和设备的总体预测精度
    • US06598152B1
    • 2003-07-22
    • US09436264
    • 1999-11-08
    • Balaram Sinharoy
    • Balaram Sinharoy
    • G06F938
    • G06F9/3861G06F9/3848
    • Enables a processor to quickly recover reliable use of a multi-cycle index used in a branch prediction mechanism for certain types of flush events occurring in the processor pipeline, whether the flush event occurs for a non-branch instruction or for a branch instruction contained in the same dispatch group. A GHV (global history vector) value is used in the generation of a multi-cycle index required for locating a prediction in a GBHT (global branch history table) for the instruction associated with the GHV value. The GHV value is captured in a BIQ (branch information queue) element representing each branch instruction selected for execution of a program. The BIQ element also captures an associated GHV count when the GHV value is captured. Recovery involves quickly restoring a GHV register to the captured GHV value when the GHV count captured in the same BIQ element has at least the value of N where N is the number contiguous fetch cycles without interruption required for the development of a steady state multi-cycle index value used in locating branch predictions in a global branch history table.
    • 使处理器可以快速恢复在分支预测机制中使用的多循环索引的可靠使用,用于在处理器流水线中发生的某些类型的刷新事件,无论是否为非分支指令或分支指令发生刷新事件 相同的调度组。 GHV(全局历史向量)值用于生成与GHV值相关联的指令的GBHT(全局分支历史表)中的预测所需的多周期索引。 GHV值被捕获在表示为执行程序而选择的每个分支指令的BIQ(分支信息队列)元素中。 当捕获GHV值时,BIQ元素还捕获相关的GHV计数。 恢复涉及当在同一BIQ元件中捕获的GHV计数至少具有N值N时,快速将GHV寄存器恢复到所捕获的GHV值,其中N是连续获取周期数,而不需要中断开发稳态多周期 用于在全局分支历史表中定位分支预测的索引值。
    • 90. 发明授权
    • Operand data structure for block computation
    • 块计算的操作数数据结构
    • US08407680B2
    • 2013-03-26
    • US12336301
    • 2008-12-16
    • Ravi K. ArimilliBalaram Sinharoy
    • Ravi K. ArimilliBalaram Sinharoy
    • G06F9/45
    • G06F8/4441G06F8/447
    • In response to receiving pre-processed code, a compiler identifies a code section that is not a candidate for acceleration and a code block that is a candidate for acceleration. The code block specifies an iterated operation having a first operand and a second operand, where each of multiple first operands and each of multiple second operands for the iterated operation has a defined addressing relationship. In response to the identifying, the compiler generates post-processed code containing lower level instruction(s) corresponding to the identified code section and creates and outputs an operand data structure separate from the post-processed code. The operand data structure specifies the defined addressing relationship for the multiple first operands and for the multiple second operands. The compiler places a block computation command in the post-processed code that invokes processing of the operand data structure to compute operand addresses.
    • 响应于接收预处理的代码,编译器识别不是加速候选的代码段和作为加速候选的代码块。 代码块指定具有第一操作数和第二操作数的迭代操作,其中用于迭代操作的多个第一操作数和多个第二操作数中的每一个具有定义的寻址关系。 响应于识别,编译器生成包含对应于所识别的代码段的较低级别指令的后处理代码,并创建并输出与后处理代码分离的操作数数据结构。 操作数数据结构指定多个第一个操作数和多个第二个操作数的定义的寻址关系。 编译器在后处理代码中放置块计算命令,该代码调用操作数数据结构的处理以计算操作数地址。