会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 31. 发明授权
    • Method and apparatus for avoiding write-after-write hazards in an execute-ahead processor
    • 用于在执行前处理器中避免写后危害的方法和装置
    • US07213133B2
    • 2007-05-01
    • US10923217
    • 2004-08-20
    • Paul CaprioliShailender Chaudhry
    • Paul CaprioliShailender Chaudhry
    • G06F9/30
    • G06F9/3863G06F9/30181G06F9/30189G06F9/383G06F9/3834G06F9/3838G06F9/3842G06F9/3857
    • One embodiment of the present invention provides a system that avoids write-after-write (WAW) hazards while speculatively executing instructions. The system starts in a normal execution mode, wherein the system issues instructions for execution in program order. Upon encountering an unresolved data dependency during execution of an instruction, the system generates a checkpoint, defers the instruction, and executes subsequent instructions in an execute-ahead mode. During this execute-ahead mode, instructions that cannot be executed because of unresolved data dependencies are deferred, and other non-deferred instructions are executed in program order. If an unresolved data dependency is resolved during the execute-ahead mode, the system moves into a deferred mode wherein the system executes deferred instructions. While executing a deferred instruction, if dependency information for an associated destination register indicates that a WAW hazard potentially exists with a following non-deferred instruction, the system executes the deferred instruction to produce a result, and forwards the result to be used by subsequent instructions in a pipeline and/or deferred queue for the processor. The system does so without committing the result to the architectural state of the destination register. In this way, the system makes the result available to the subsequent instructions without overwriting a result produced by the following non-deferred instruction, thereby avoiding a WAW hazard.
    • 本发明的一个实施例提供了一种在推测性地执行指令时避免写后写入(WAW)危险的系统。 系统以正常执行模式启动,其中系统以程序顺序发出执行指令。 在执行指令期间遇到未解决的数据依赖性时,系统产生检查点,延迟指令,并以执行方式执行后续指令。 在此执行模式期间,由于未解决的数据依赖关系而无法执行的指令被延迟,并且其他非延迟指令以程序顺序执行。 如果在执行提前模式期间解决了未解决的数据依赖关系,则系统进入延迟模式,其中系统执行延迟指令。 在执行延迟指令时,如果相关联的目标寄存器的依赖关系信息指示可能存在具有以下非延迟指令的WAW危险,则系统执行延迟指令以产生结果,并转发后续指令使用的结果 在处理器的流水线和/或延迟队列中。 系统没有将结果提交到目标寄存器的架构状态。 以这种方式,系统使结果可用于随后的指令,而不会覆盖由以下非延迟指令产生的结果,从而避免WAW危险。
    • 32. 发明申请
    • Method and apparatus for suppressing duplicative prefetches for branch target cache lines
    • 用于抑制分支目标缓存行的重复预取的方法和装置
    • US20060242365A1
    • 2006-10-26
    • US11111654
    • 2005-04-20
    • Abid AliPaul CaprioliShailender ChaudhryMiles Lee
    • Abid AliPaul CaprioliShailender ChaudhryMiles Lee
    • G06F13/00
    • G06F9/3804G06F9/3814G06F9/3816G06F12/0862
    • A system that suppresses duplicative prefetches for branch target cache lines. During operation, the system fetches a first cache line into in a fetch buffer. The system then prefetches a second cache line, which immediately follows the first cache line, into the fetch buffer. If a control transfer instruction in the first cache line has a target instruction which is located in the second cache line, the system determines if the control transfer instruction is also located at the end of the first cache line so that a corresponding delay slot for the control transfer instruction is located at the beginning of the second cache line. If so, the system suppresses a subsequent prefetch for a target cache line containing the target instruction because the target instruction is located in the second cache line which has already been prefetched.
    • 一种抑制分支目标缓存行重复预取的系统。 在操作期间,系统将第一个高速缓存行提取到获取缓冲区中。 系统然后将紧跟在第一个高速缓存行之后的第二个高速缓存行预取到获取缓冲区。 如果第一高速缓存行中的控制传送指令具有位于第二高速缓存行中的目标指令,则系统确定控制传输指令是否也位于第一高速缓存行的末端,使得对应的延迟时隙 控制传输指令位于第二高速缓存行的开头。 如果是这样,则由于目标指令位于已经被预取的第二高速缓存行中,所以系统抑制对包含目标指令的目标高速缓存行的后续预取。
    • 33. 发明申请
    • Method and apparatus for enforcing membar instruction semantics in an execute-ahead processor
    • 在执行处理器中执行膜指令语义的方法和装置
    • US20050273583A1
    • 2005-12-08
    • US11083263
    • 2005-03-16
    • Paul CaprioliShailender ChaudhryMarc Tremblay
    • Paul CaprioliShailender ChaudhryMarc Tremblay
    • G06F9/00G06F9/30G06F9/38G06F9/45G06F12/08
    • G06F9/30087G06F9/3004G06F9/3834G06F9/3836G06F9/3838G06F9/384G06F9/3842G06F9/3857
    • One embodiment of the present invention provides a system that facilitates executing a memory barrier (membar) instruction in an execute-ahead processor, wherein the membar instruction forces buffered loads and stores to complete before allowing a following instruction to be issued. During operation in a normal-execution mode, the processor issues instructions for execution in program order. Upon encountering a membar instruction, the processor determines if the load buffer and store buffer contain unresolved loads and stores. If so, the processor defers the membar instruction and executes subsequent program instructions in execute-ahead mode. In execute-ahead mode, instructions that cannot be executed because of an unresolved data dependency are deferred, and other non-deferred instructions are executed in program order. When all stores and loads that precede the membar instruction have been committed to memory from the store buffer and the load buffer, the processor enters a deferred mode and executes the deferred instructions, including the membar instruction, in program order. If all deferred instructions have been executed, the processor returns to the normal-execution mode and resumes execution from the point where the execute-ahead mode left off.
    • 本发明的一个实施例提供了一种便于在执行前处理器中执行存储器屏障(membar)指令的系统,其中,在允许执行后续指令之前,该指令强制缓冲的负载和存储完成。 在正常执行模式下的操作期间,处理器以程序顺序发出执行指令。 在遇到一条指令时,处理器确定加载缓冲区和存储缓冲区是否包含未解决的负载和存储。 如果是这样,则处理器延迟膜指令,并以执行模式执行后续的程序指令。 在执行提前模式下,由于未解决的数据依赖关系而无法执行的指令被延迟,并且其他非延迟指令以程序顺序执行。 当存储缓冲区和加载缓冲区之前的所有存储和负载已经提交到存储缓冲区的内存中时,处理器以程序顺序进入延迟模式并执行延迟指令,包括指令指令。 如果所有延迟指令都已执行,则处理器返回到正常执行模式,并从执行方式退出的点恢复执行。
    • 36. 发明授权
    • Entering scout-mode when stores encountered during execute-ahead mode exceed the capacity of the store buffer
    • 在执行超前模式期间遇到的存储进入侦察模式超过存储缓冲区的容量
    • US07484080B2
    • 2009-01-27
    • US11103912
    • 2005-04-11
    • Shailender ChaudhryMarc TremblayPaul Caprioli
    • Shailender ChaudhryMarc TremblayPaul Caprioli
    • G06F9/00
    • G06F9/3863G06F9/383G06F9/3834G06F9/3836G06F9/3838G06F9/384G06F9/3842G06F9/3857G06F9/3865
    • One embodiment of the present invention provides a system that facilitates deferring execution of instructions with unresolved data dependencies as they are issued for execution in program order. During a normal execution mode, the system issues instructions for execution in program order. Upon encountering an unresolved data dependency during execution of an instruction, the system generates a checkpoint that can subsequently be used to return execution of the program to the point of the instruction. Next, the system executes the instruction and subsequent instructions in an execute-ahead mode, wherein instructions that cannot be executed because of an unresolved data dependency are deferred, and wherein other non-deferred instructions are executed in program order. Upon encountering a store during the execute-ahead mode, the system determines if the store buffer is full. If so, the system prefetches a cache line for the store, and defers execution of the store. If the number of stores that are encountered during execute-ahead mode exceeds the capacity of the store buffer, which means that the store buffer will never have additional space to accept additional stores during the execute-ahead mode because the store buffer is gated, the system directly enters the scout mode, without waiting for the deferred queue to eventually fill.
    • 本发明的一个实施例提供了一种系统,其有助于在按照程序顺序执行时,推迟执行具有未解决的数据依赖性的指令。 在正常执行模式下,系统以程序顺序发出执行指令。 在执行指令期间遇到未解决的数据依赖性时,系统产生一个检查点,随后可以使用该检查点将程序的执行返回到指令点。 接下来,系统以执行模式执行指令和后续指令,其中由于未解决的数据依赖性而不能执行的指令被延迟,并且其中以程序顺序执行其他非延迟指令。 在执行提前模式期间遇到存储器时,系统确定存储缓冲区是否已满。 如果是这样,系统将预取商店的高速缓存线,并延迟商店的执行。 如果在执行超前模式期间遇到的存储的数量超过了存储缓冲区的容量,这意味着由于存储缓冲区被选通,在执行提前模式下,存储缓冲区将永远不会有额外的空间来接受附加存储, 系统直接进入侦察模式,无需等待延期队列最终填满。
    • 38. 发明申请
    • Preventing register data flow hazards in an SST processor
    • 防止SST处理器中的寄存器数据流危害
    • US20080189531A1
    • 2008-08-07
    • US11703462
    • 2007-02-06
    • Shailender ChaudhryPaul CaprioliMarc Tremblay
    • Shailender ChaudhryPaul CaprioliMarc Tremblay
    • G06F9/44
    • G06F9/30181G06F9/30189G06F9/3838G06F9/3842G06F9/3851G06F9/3863
    • One embodiment of the present invention provides a system that prevents data hazards during simultaneous speculative threading. The system starts by executing instructions in an execute-ahead mode using a first thread. While executing instructions in the execute-ahead mode, the system maintains dependency information for each register indicating whether the register is subject to an unresolved data dependency. Upon the resolution of a data dependency during execute-ahead mode, the system copies dependency information to a speculative copy of the dependency information. The system then commences execution of the deferred instructions in a deferred mode using a second thread. While executing instructions in the deferred mode, if the speculative copy of the dependency information for a destination register indicates that a write-after-write (WAW) hazard exists with a subsequent non-deferred instruction executed by the first thread in execute-ahead mode, the system uses the second thread to execute the deferred instruction to produce a result and forwards the result to be used by subsequent deferred instructions without committing the result to the architectural state of the destination register. Hence, the system makes the result available to the subsequent deferred instructions without overwriting the result produced by a following non-deferred instruction.
    • 本发明的一个实施例提供一种在同时推测的线程中防止数据危害的系统。 系统通过使用第一个线程以执行模式执行指令来启动。 在执行执行模式下执行指令时,系统维护每个寄存器的依赖信息,指示寄存器是否受到未解析的数据依赖。 在执行提前模式下解析数据依赖关系时,系统将依赖关系信息复制到依赖关系信息的推测性副本。 然后,系统使用第二个线程以延迟模式开始执行延迟指令。 在延迟模式下执行指令时,如果目的寄存器的依赖关系信息的推测性副本指示在执行提前模式下由第一线程执行的后续非延迟指令存在写后写入(WAW)危险 ,系统使用第二个线程执行延迟指令以产生结果,并转发后续延迟指令使用的结果,而不将结果提交到目标寄存器的体系结构状态。 因此,系统使结果可用于后续延期指令,而不会覆盖由以下非延迟指令产生的结果。