会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 2. 发明授权
    • Thread switch control in a multithreaded processor system
    • 多线程处理器系统中的线程切换控制
    • US06567839B1
    • 2003-05-20
    • US08957002
    • 1997-10-23
    • John Michael BorkenhagenRichard James EickemeyerWilliam Thomas FlynnSheldon Bernard LevensteinAndrew Henry Wottreng
    • John Michael BorkenhagenRichard James EickemeyerWilliam Thomas FlynnSheldon Bernard LevensteinAndrew Henry Wottreng
    • G06F900
    • G06F9/4843G06F9/3009G06F9/3851
    • A system and method for performing computer processing operations in a data processing system includes a multithreaded processor and thread switch logic. The multithreaded processor is capable of switching between two or more threads of instructions which can be independently executed. Each thread has a corresponding state in a thread state register depending on its execution status. The thread switch logic contains a thread switch control register to store the conditions upon which a thread switch can occur. Upon the occurrence of a thread switch event, the state and priority of all threads are dynamically interrogated to determine which thread should be the active thread executing the processor. The thread switch logic has a time-out register which forces a thread switch when execution of the active thread in the multithreaded processor exceeds a programmable period of time. Thread switch logic also has a forward progress count register to prevent repetitive unproductive thread switching between threads in the multithreaded processor. Thread switch logic also is responsive to a thread switch manager capable of changing the priority of the different threads and thus superseding thread switch events.
    • 用于在数据处理系统中执行计算机处理操作的系统和方法包括多线程处理器和线程切换逻辑。 多线程处理器能够在可独立执行的两条或更多条指令线之间进行切换。 每个线程根据执行状态在线程状态寄存器中具有相应的状态。 线程开关逻辑包含一个线程开关控制寄存器,用于存储可以发生线程切换的条件。 在发生线程切换事件时,动态询问所有线程的状态和优先级,以确定哪个线程应该是执行处理器的主动线程。 线程开关逻辑具有超时寄存器,当多线程处理器中的活动线程的执行超过可编程时间段时,强制执行线程切换。 线程切换逻辑还具有前向进度计数寄存器,以防止多线程处理器中的线程之间的重复无效线程切换。 线程开关逻辑还响应于能够改变不同线程的优先级并因此取代线程切换事件的线程切换管理器。
    • 3. 发明授权
    • Method and apparatus to force a thread switch in a multithreaded
processor
    • 在多线程处理器中强制执行线程切换的方法和装置
    • US6076157A
    • 2000-06-13
    • US956577
    • 1997-10-23
    • John Michael BorkenhagenRichard James EickemeyerWilliam Thomas FlynnAndrew Henry Wottreng
    • John Michael BorkenhagenRichard James EickemeyerWilliam Thomas FlynnAndrew Henry Wottreng
    • G06F9/38G06F9/48G06F9/44G06F9/24
    • G06F9/4825G06F9/3851
    • A system and method for performing computer processing operations in a data processing system includes a multithreaded processor and thread switch logic. The multithreaded processor is capable of switching between two or more threads of instructions which can be independently executed. Each thread has a corresponding state in a thread state register depending on its execution status. The thread switch logic contains a thread switch control register to store the conditions upon which a thread will occur. The thread switch logic has a time-out register which forces a thread switch when execution of the active thread in the multithreaded processor exceeds a programmable period of time. Thread switch logic also has a forward progress count register to prevent repetitive thread switching between threads in the multithreaded processor. Thread switch logic also is responsive to a software manager capable of changing the priority of the different threads and thus superseding thread switch events.
    • 用于在数据处理系统中执行计算机处理操作的系统和方法包括多线程处理器和线程切换逻辑。 多线程处理器能够在可独立执行的两条或更多条指令线之间进行切换。 每个线程根据执行状态在线程状态寄存器中具有相应的状态。 线程开关逻辑包含一个线程开关控制寄存器,用于存储发生线程的条件。 线程开关逻辑具有超时寄存器,当多线程处理器中的活动线程的执行超过可编程时间段时,强制执行线程切换。 线程开关逻辑还具有前进进程计数寄存器,以防止多线程处理器中的线程之间的重复线程切换。 线程切换逻辑还响应于能够改变不同线程的优先级并从而取代线程切换事件的软件管理器。
    • 4. 发明授权
    • Method and apparatus for selecting thread switch events in a multithreaded processor
    • 用于在多线程处理器中选择线程切换事件的方法和装置
    • US06697935B1
    • 2004-02-24
    • US08958716
    • 1997-10-23
    • John Michael BorkenhagenRichard James EickemeyerWilliam Thomas FlynnAndrew Henry Wottreng
    • John Michael BorkenhagenRichard James EickemeyerWilliam Thomas FlynnAndrew Henry Wottreng
    • G06F1500
    • G06F9/4843G06F9/3851
    • A system and method for performing computer processing operations in a data processing system includes a multithreaded processor and thread switch logic. The multithreaded processor is capable of switching between two or more threads of instructions which can be independently executed. Each thread has a corresponding state in a thread state register depending on its execution status. The thread switch logic contains a thread switch control register to store the conditions upon which a thread switch will occur. The thread switch logic has a time-out register which forces a thread switch when execution of the active thread in the multithreaded processor exceeds a programmable period of time. Thread switch logic also has a forward progress count register to prevent repetitive thread switching between threads in the multithreaded processor. Thread switch logic also is responsive to a software manager capable of changing the priority of the different threads and thus superseding thread switch events.
    • 用于在数据处理系统中执行计算机处理操作的系统和方法包括多线程处理器和线程切换逻辑。 多线程处理器能够在可独立执行的两条或更多条指令线之间进行切换。 每个线程根据执行状态在线程状态寄存器中具有相应的状态。 线程开关逻辑包含一个线程切换控制寄存器,用于存储发生线程切换的条件。 线程开关逻辑具有超时寄存器,当多线程处理器中的活动线程的执行超过可编程时间段时,强制执行线程切换。 线程开关逻辑还具有前进进程计数寄存器,以防止多线程处理器中的线程之间的重复线程切换。 线程切换逻辑还响应于能够改变不同线程的优先级并从而取代线程切换事件的软件管理器。
    • 5. 发明授权
    • Branch lookahead prefetch for microprocessors
    • 用于微处理器的分支前瞻预取
    • US07877580B2
    • 2011-01-25
    • US11953799
    • 2007-12-10
    • Richard James EickemeyerHung Qui LeDung Quoc NguyenBenjamin Walter StoltBrian William Thompto
    • Richard James EickemeyerHung Qui LeDung Quoc NguyenBenjamin Walter StoltBrian William Thompto
    • G06F9/00
    • G06F9/3842G06F9/3861
    • A method of handling program instructions in a microprocessor which reduces delays associated with mispredicted branch instructions, by detecting the occurrence of a stall condition during execution of the program instructions, speculatively executing one or more pending instructions which include at least one branch instruction during the stall condition, and determining the validity of data utilized by the speculative execution. Dispatch logic determines the validity of the data by marking one or more registers of an instruction dispatch unit to indicate which results of the pending instructions are invalid. The speculative execution of instructions can occur across multiple pipeline stages of the microprocessor, and the validity of the data is tracked during their execution in the multiple pipeline stages while monitoring a dependency of the speculatively executed instructions relative to one another during their execution in the multiple pipeline stages.
    • 一种处理微处理器中的程序指令的方法,其通过在执行程序指令期间检测到失速状态的发生来减少与错误预测的分支指令相关联的延迟,推测性地执行一个或多个未决指令,其中包括在失速期间包括至少一个分支指令 条件,并确定投机执行使用的数据的有效性。 调度逻辑通过标记指令调度单元的一个或多个寄存器来指示待处理指令的哪些结果无效来确定数据的有效性。 指令的推测执行可以在微处理器的多个流水线阶段发生,并且在多个流水线阶段的执行期间跟踪数据的有效性,同时在多个流水线阶段的执行期间监视推测性执行的指令相对于彼此的依赖性 流水线阶段
    • 7. 发明授权
    • Selective flush of shared and other pipeline stages in a multithread processor
    • 多线程处理器中共享和其他流水线阶段的选择性刷新
    • US06694425B1
    • 2004-02-17
    • US09564930
    • 2000-05-04
    • Richard James Eickemeyer
    • Richard James Eickemeyer
    • G06F940
    • G06F9/3851G06F9/3867
    • In a simultaneous multithread processor, a flush mechanism of a shared pipeline stage is disclosed. In the preferred embodiment, the shared pipeline stage happens to be one or all of the fetch stage, the decode stage, and/or the dispatch stage and the flush mechanism flushes instructions at the dispatch stage and earlier stages. The dispatch flush mechanism detects when an instruction of a particular thread is stalled at the dispatch stage of the pipelined processor. Subsequent instructions of that thread are flushed from all pipeline stages of the processor up to and including the dispatch stage. The dispatch stage is distinguished as being the stage in which all resources necessary for the successful dispatch of the instruction to the issue queues are checked. If a resource required only by that instruction is unavailable, then a dispatch flush is performed. Flush prioritization logic is available to determine if other flush conditions, including a previous dispatch flush, exist for that particular thread. If so, the flush prioritization logic will determine which flush, if any, should proceed. Those resources necessary for the successful dispatch and issuance of the instruction to the execution units but which are unavailable may be private or separate registers for each thread, may be special purpose or other non-renamed registers, or may be instructions for synchronized access to memory. This dispatch flush mechanism is more efficient than existing flush mechanisms which must flush throughout the processor pipelines up to and including the issue queues and execution units and result registers.
    • 在同时多线程处理器中,公开了共享流水线级的冲洗机构。 在优选实施例中,共享流水线阶段恰好是提取阶段,解码阶段和/或调度阶段中的一个或全部,并且刷新机制在调度阶段和早期阶段刷新指令。 调度刷新机制检测在流水线处理器的调度阶段什么时候特定线程的指令停止。 该线程的后续指令从处理器的所有流水线阶段冲洗到并包括调度阶段。 调度阶段被区分为检查成功发送指令到发布队列所需的所有资源的阶段。 如果该指令所需的资源不可用,则执行调度刷新。 刷新优先级逻辑可用于确定是否存在针对该特定线程的其他刷新条件(包括先前的调度刷新)。 如果是这样,刷新优先级逻辑将确定哪个刷新(如果有的话)应该进行。 成功发送执行单元但不可用的指令所需的资源可以是每个线程的专用或单独的寄存器,可以是特殊目的或其他未重命名的寄存器,或者可以是同步访问存储器的指令 。 这种调度刷新机制比现有的刷新机制更有效,这些机制必须遍及整个处理器管道,直到并包括问题队列和执行单元和结果寄存器。
    • 10. 发明授权
    • Using a modified value GPR to enhance lookahead prefetch
    • 使用修改值GPR来增强前瞻预取
    • US07620799B2
    • 2009-11-17
    • US12061290
    • 2008-04-02
    • Richard James EickemeyerHung Qui LeDung Quoc NguyenBenjamin Walter StoltBrian William Thompto
    • Richard James EickemeyerHung Qui LeDung Quoc NguyenBenjamin Walter StoltBrian William Thompto
    • G06F9/30G06F9/40G06F15/00
    • G06F9/3842G06F9/3804G06F9/383G06F9/3838
    • Mechanisms to identify and speculatively execute future instructions during a stall condition are provided. In speculative mode, instruction operands may be invalid due to a number of reasons. Dependency and dirty bits are tracked and used to determine which speculative instructions are valid for execution. A modified value register storage and bit vector are used to improve the availability of speculative results that would otherwise be discarded once they leave the execution pipeline because they cannot be written to the architected registers. The modified general purpose registers are used to store speculative results when the corresponding instruction reaches writeback and the modified bit vector tracks the results that have been stored there. Younger speculative instructions that do not bypass directly from older instructions use this modified data when the corresponding bit in the modified bit vector indicates the data has been modified. Otherwise, data from the architected registers is used.
    • 提供了在失速状态下识别和推测执行未来指令的机制。 在推测模式下,指令操作数可能因无数原因而无效。 跟踪依赖关系和脏位,并用于确定哪些推测指令对执行有效。 改进的值寄存器存储和位向量被用于提高推测结果的可用性,否则,由于不能将其写入到架构化的寄存器,否则将抛弃执行流水线。 修改后的通用寄存器用于在对应指令到达回写时存储推测结果,修改后的位向量跟踪存储在其中的结果。 当修改的位向量中的相应位指示数据已被修改时,不直接从旧指令中绕过的较小的推测指令使用该修改的数据。 否则,将使用来自架构寄存器的数据。