会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明授权
    • Method and system for reduced run-time delay during conditional branch
execution in pipelined processor systems utilizing selectively delayed
sequential instruction purging
    • 用于利用选择性延迟顺序指令清除在流水线处理器系统中的条件分支执行期间减少运行时间延迟的方法和系统
    • US5784604A
    • 1998-07-21
    • US959183
    • 1992-10-09
    • John Stephen MuhichTerrence Matthew PotterSteven Wayne White
    • John Stephen MuhichTerrence Matthew PotterSteven Wayne White
    • G06F9/38G06F9/00
    • G06F9/3804
    • A method and system are disclosed for reducing run-time delay during conditional branch instruction execution in a pipelined processor system. A series of queued sequential instructions and conditional branch instructions are processed wherein each conditional branch instruction specifies an associated conditional branch to be taken in response to a selected outcome of processing one or more sequential instructions. Upon detection of a conditional branch instruction within the queue, a group of target instructions are fetched based upon a prediction that an associated conditional branch will be taken. Sequential instructions within the queue following the conditional branch instruction are then purged and the target instructions loaded into the queue only in response to a successful a retrieval of the target instructions, such that the sequential instructions may be processed without delay if the prediction that the conditional branch is taken proves invalid prior to retrieval of the target instructions. Alternately, the purged sequential instructions may be refetched after loading the target instructions such that the sequential instructions may be executed with minimal delay if the prediction that the conditional branch is taken proves invalid after loading the target instructions. In yet another embodiment, the sequential instructions within the queue following the conditional branch instruction are purged only in response to a successful retrieval of the target instructions and an imminent execution of the conditional branch instruction.
    • 公开了一种用于在流水线处理器系统中的条件分支指令执行期间减少运行时间延迟的方法和系统。 处理一系列排队的顺序指令和条件分支指令,其中每个条件分支指令响应于处理一个或多个顺序指令的所选结果来指定要采取的相关联的条件分支。 在检测到队列内的条件分支指令之后,基于将采用相关联的条件分支的预测来取得一组目标指令。 随后条件分支指令之后的队列中的顺序指令被清除,并且目标指令仅仅响应于目标指令的成功检索而被加载到队列中,使得如果预测条件 在检索目标指令之前,分支被认为是无效的。 或者,可以在加载目标指令之后重新抽取清除的顺序指令,使得如果在加载目标指令之后条件分支的预测被证明是无效的,则可以以最小延迟执行顺序指令。 在另一个实施例中,仅在响应于目标指令的成功检索和条件分支指令的即将执行之后才清除在条件分支指令之后的队列内的顺序指令。
    • 6. 发明授权
    • Support for out-of-order execution of loads and stores in a processor
    • 支持处理器中负载和存储的无序执行
    • US5931957A
    • 1999-08-03
    • US829669
    • 1997-03-31
    • Brian R KonigsburgJohn Stephen MuhichLarry Edward ThatcherSteven Wayne White
    • Brian R KonigsburgJohn Stephen MuhichLarry Edward ThatcherSteven Wayne White
    • G06F9/312G06F9/38G06F11/00G06F9/30
    • G06F9/30043G06F9/3834G06F9/3861
    • To support load instructions which execute out-of-order with respect to store instructions, a mechanism is implemented to detect (and correct) the occurrences where a load instruction executed prior to a logically prior store instruction, and where the load instruction received data for the location prior to being modified by the store instruction, and the correct data for the load instruction included bytes from the store instruction. Additionally, to execute store instructions out-of-order with respect to load instructions, a mechanism is implemented to keep a store instruction from destroying data that will be used by a logically earlier load instruction. Further, to support load instructions that are executed out-of-order with respect to each other, a mechanism is implemented to insure that any pair of load instructions (which access at least one byte in common) return data consistent with executing the load instructions in order.
    • 为了支持关于存储指令执行无序的加载指令,实现了一种机制来检测(和校正)在逻辑上先前的存储指令之前执行的加载指令的发生,并且其中加载指令接收数据为 由存储指令修改之前的位置,以及加载指令的正确数据,包括来自存储指令的字节。 另外,为了执行与加载指令无序的存储指令,实现了一种机制来保持存储指令不会破坏由逻辑上较早的加载指令使用的数据。 此外,为了支持相对于彼此执行的无序执行的加载指令,实现一种机制以确保任何一对加载指令(其访问至少一个共同的字节)返回数据与执行加载指令一致 为了。
    • 7. 发明授权
    • Method and apparatus for completion of non-interruptible instructions
before the instruction is dispatched
    • 在发出指令前完成不可中断指令的方法和装置
    • US5870582A
    • 1999-02-09
    • US829671
    • 1997-03-31
    • Hoichi CheongHung Qui LeJohn Stephen MuhichSteven Wayne White
    • Hoichi CheongHung Qui LeJohn Stephen MuhichSteven Wayne White
    • G06F9/38
    • G06F9/3855G06F9/3836G06F9/384G06F9/3853G06F9/3857G06F9/3863
    • In a method and apparatus for allocating processor resources in a data processing system, instructions are dispatched and tagged for processing. A processor resource snoops to obtain execution results for the tagged instructions. Such an instruction is logically "finished" in response to determining that it will not cause an interrupt (which includes not changing the sequence of completing instructions), and "completed" in response to finishing all earlier dispatched instructions. Information is entered for such an instructions in rename buffer in response to the instruction targeting an architected register, and such a rename buffer entry is released in response to completing the entry's instruction. The rename buffer may comprise a history buffer. Also, information for the instructions is entered in a completion queue in response to dispatching the instructions, and the queue entry for such an instruction is released in response to completion of the instruction. Also, the instructions are grouped, a group having solely a single interruptible instruction, and further including non-interruptible instructions dispatched following the interruptible instruction. Thus, there may be numerous non-interruptible instructions in such a group. Such an interruptible instruction is logically "finished" in response to determining that it will not cause an interrupt, and "completed" in response to finishing all earlier dispatched instructions. Such a non-interruptible instruction is logically "finished" and "completed" in response to completion of its associated interruptible instruction, so that such a non-interruptible instruction may complete before it is dispatched.
    • 在用于在数据处理系统中分配处理器资源的方法和装置中,调度和标记用于处理的指令。 处理器资源被窥探以获得标记指令的执行结果。 响应于确定不会导致中断(其不包括改变完成指令的顺序),并且响应于完成所有先前分派的指令而“完成”,这样的指令在逻辑上“完成”。 响应于针对架构化寄存器的指令,在重命名缓冲器中输入这样的指令的信息,并且响应于完成条目的指令而释放这样的重命名缓冲器条目。 重命名缓冲器可以包括历史缓冲器。 此外,响应于分派指令,将指令的信息输入到完成队列中,并且响应于指令的完成而释放这样的指令的队列条目。 此外,指令被分组,仅具有单个可中断指令的组,并且还包括在可中断指令之后分派的不可中断指令。 因此,在这样的组中可能存在许多不可中断的指令。 这种可中断指令在逻辑上“完成”以响应于确定它不会引起中断,并且响应于完成所有先前分派的指令而“完成”。 响应于其相关联的可中断指令的完成,这种不可中断指令被逻辑地“完成”和“完成”,使得这种不可中断指令可以在其被分派之前完成。
    • 9. 发明授权
    • Apparatus and method for facilitating out-of-order execution of load instructions
    • 用于促进装载指令的无序执行的装置和方法
    • US06266767B1
    • 2001-07-24
    • US09296871
    • 1999-04-22
    • Kurt Alan FeisteJohn Stephen MuhichSteven Wayne White
    • Kurt Alan FeisteJohn Stephen MuhichSteven Wayne White
    • G06F9312
    • G06F9/3855G06F9/383G06F9/3834G06F9/3842
    • A processor (100) includes a preload queue (160) for storing a plurality of preload entries. Each preload entry is associated with a preload instruction and includes the address and byte count defined by the respective preload and an identifier associated with the respective preload. A comparison unit (170) associated with the preload queue (160) identifies each conflicting preload entry, that is, each preload entry associated with a preload instruction that conflicts with an older store instruction. The oldest preload instruction associated with one of the conflicting preload entries represents a target preload. The processor (100) may flush this target preload along with all instructions executed after the target preload in order to correct for the conflict between the target preload and store instruction.
    • 处理器(100)包括用于存储多个预加载条目的预加载队列(160)。 每个预加载条目与预加载指令相关联,并且包括由相应的预载荷定义的地址和字节计数以及与相应的预载荷相关联的标识符。 与预加载队列(160)相关联的比较单元(170)识别每个冲突的预加载条目,即与与旧存储指令冲突的预加载指令相关联的每个预加载条目。 与其中一个冲突的预加载条目相关联的最早的预加载指令表示目标预加载。 处理器(100)可以与目标预加载之后执行的所有指令一起刷新该目标预载荷,以便校正目标预加载和存储指令之间的冲突。