会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明授权
    • Determining successful completion of an instruction by comparing the number of pending instruction cycles with a number based on the number of stages in the pipeline
    • US06658555B1
    • 2003-12-02
    • US09435077
    • 1999-11-04
    • James Allan KahleHung Qui LeCharles Roberts MooreDavid James ShippyLarry Edward Thatcher
    • James Allan KahleHung Qui LeCharles Roberts MooreDavid James ShippyLarry Edward Thatcher
    • G06F930
    • G06F9/3836G06F9/384G06F9/3853G06F9/3855G06F9/3857G06F9/3865G06F9/3867G06F9/3885
    • A microprocessor and related method and data processing system are disclosed. The microprocessor includes a dispatch unit suitable for issuing an instruction executable by the microprocessor, an execution pipeline configured to receive the issued instruction, and a pending instruction unit. The pending instruction unit includes a set of pending instruction entries. A copy of the issued instruction is maintained in one of the set of pending instruction entries. The execution pipeline is adapted to record, in response detecting to a condition preventing the instruction from successfully completing one of the stages in the pipeline during a current cycle, an exception status with the copy of the instruction in the pending instruction unit and to advance the instruction to a next stage in the pipeline in the next cycle thereby preventing the condition from stalling the pipeline. Preferably, the dispatch unit, in response to the instruction finishing pipeline execution with an exception status, is adapted to use the copy of the instruction to re-issue the instruction to the execution pipeline in a subsequent cycle. In one embodiment, the dispatch unit is adapted to deallocate the copy of the instruction in the pending instruction unit in response to the instruction successfully completing pipeline execution. The pending instruction unit may detect successful completion of the instruction by detecting when the instruction has been pending for a predetermined number of cycles without recording an exception status. In this embodiment, each entry in the pending instruction unit may include a timer field comprising a set of bits wherein the number of bits in the time field equals the predetermined number of cycles. The pending instruction unit may set, in successive cycles, successive bits in the timer field such that successful completion of an instruction is indicated when a last bit in the time field is set. In one embodiment, pending instruction unit includes a set of copies of instructions corresponding to each of a set of instructions pending in the execution pipeline at any given time. In various embodiments, the execution pipeline may comprise a load/store pipeline, a floating point pipeline, or a fixed point pipeline.
    • 3. 发明授权
    • 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.
    • 为了支持关于存储指令执行无序的加载指令,实现了一种机制来检测(和校正)在逻辑上先前的存储指令之前执行的加载指令的发生,并且其中加载指令接收数据为 由存储指令修改之前的位置,以及加载指令的正确数据,包括来自存储指令的字节。 另外,为了执行与加载指令无序的存储指令,实现了一种机制来保持存储指令不会破坏由逻辑上较早的加载指令使用的数据。 此外,为了支持相对于彼此执行的无序执行的加载指令,实现一种机制以确保任何一对加载指令(其访问至少一个共同的字节)返回数据与执行加载指令一致 为了。
    • 4. 发明授权
    • TLB parity error recovery
    • TLB奇偶校验错误恢复
    • US06901540B1
    • 2005-05-31
    • US09435868
    • 1999-11-08
    • T. W. Griffith, Jr.Larry Edward Thatcher
    • T. W. Griffith, Jr.Larry Edward Thatcher
    • G06F11/00G06F11/10
    • G06F11/1016
    • A microprocessor, data processing system, and method are disclosed for handling parity errors in an address translation facility such as a TLB. The microprocessor includes a load/store unit configured to generate an effective address associated with a load/store instruction. An address translation unit adapted to translate the effective address to a real address using a translation lookaside buffer (TLB). The address translation unit includes a parity checker configured to verify the parity of the real address generated by the TLB and to signal the load store unit when the real address contains a parity error. The load store unit is configured to initiate a TLB parity error interrupt routine in response to the signal from the translation unit. In one embodiment, the TLB interrupt routine selectively invalidates the TLB entry that contained the parity error. The load/store unit preferably includes an effective to real address table (ERAT) containing a set of address translations. In this embodiment, the load/store unit invokes the address translation unit to translate the effective address only if the effective address misses in the ERAT. The LSU may suitably include an ERAT miss queue (EMQ) adapted to retain an effective address that misses in the ERAT until the address translation unit completes the translation process. In this embodiment, the EMQ is configured to issue a TLB parity error interrupt signal to initiate the TLB parity error interrupt routine. In one embodiment, the TLB interrupt routine loads a data address register (DAR) of the microprocessor with the effective address of the instruction that resulted in the parity error. The TLB interrupt routine may further set a data storage interrupt routine status register (DSISR) to indicate the TLB parity error.
    • 公开了一种用于处理诸如TLB的地址转换设施中的奇偶校验错误的微处理器,数据处理系统和方法。 微处理器包括被配置为生成与加载/存储指令相关联的有效地址的加载/存储单元。 一种地址转换单元,适于使用翻译后备缓冲器(TLB)将有效地址转换为实际地址。 地址转换单元包括奇偶校验器,其被配置为验证由TLB生成的实际地址的奇偶校验,并且当真实地址包含奇偶校验错误时向该加载存储单元发信号。 加载存储单元被配置为响应于来自翻译单元的信号而启动TLB奇偶校验错误中断程序。 在一个实施例中,TLB中断例程选择性地使包含奇偶校验错误的TLB条目失效。 加载/存储单元优选地包括包含一组地址转换的有效到真实地址表(ERAT)。 在本实施例中,加载/存储单元仅在ERAT中的有效地址丢失时才调用地址转换单元来翻译有效地址。 LSU可以适当地包括适于保留在ERAT中遗漏的有效地址的ERAT未命中队列(EMQ),直到地址转换单元完成翻译过程。 在本实施例中,EMQ被配置为发出TLB奇偶校验错误中断信号以启动TLB奇偶校验错误中断程序。 在一个实施例中,TLB中断例程用导致奇偶校验错误的指令的有效地址加载微处理器的数据地址寄存器(DAR)。 TLB中断程序还可以设置数据存储中断程序状态寄存器(DSISR)以指示TLB奇偶校验错误。
    • 5. 发明授权
    • System and method for multiple store buffer forwarding in a system with a restrictive memory model
    • 具有限制性内存模型的系统中多存储缓冲区转发的系统和方法
    • US06678807B2
    • 2004-01-13
    • US09740803
    • 2000-12-21
    • Bryan D. BoatrightRajesh PatelLarry Edward Thatcher
    • Bryan D. BoatrightRajesh PatelLarry Edward Thatcher
    • G06F1200
    • G06F9/3826G06F9/3834
    • The present invention relates to the use of multiple store buffer forwarding in a microprocessor system with a restrictive memory model. In accordance with an embodiment of the present invention, the system and method allow load operations that are completely covered by two or more store operations to receive data via store buffer forwarding in such a manner as to retain the side effects of the restrictive memory model thereby increasing processor performance without violating the restrictive memory model. In accordance with an embodiment the present invention, a method for multiple store buffer forwarding in a system with a restrictive memory model includes executing multiple store instructions, executing a load instruction, determining that a memory region addressed by the load instruction matches a cacheline address in a memory, determining that data stored by the multiple store instructions completely covers the memory region addressed by the load instruction, and transmitting a store forward is OK signal.
    • 本发明涉及在具有限制性存储器模型的微处理器系统中使用多存储缓冲器转发。 根据本发明的实施例,系统和方法允许由两个或多个存储操作完全覆盖的加载操作以经由存储缓冲器转发来接收数据,从而保持限制性存储器模型的副作用 提高处理器性能而不违反限制性内存模式。 根据本发明的实施例,一种用于具有限制性存储器模型的系统中的多存储缓冲器转发的方法包括执行多个存储指令,执行加载指令,确定由加载指令寻址的存储器区域与缓存线地址匹配 存储器,确定由多个存储指令存储的数据完全覆盖由加载指令寻址的存储器区域,并且向前发送存储区是OK信号。
    • 7. 发明授权
    • Recovery from hang condition in a microprocessor
    • US06543002B1
    • 2003-04-01
    • US09435066
    • 1999-11-04
    • James Allan KahleHung Qui LeKevin F. ReickDavid James ShippyLarry Edward Thatcher
    • James Allan KahleHung Qui LeKevin F. ReickDavid James ShippyLarry Edward Thatcher
    • G06F1100
    • G06F11/0721G06F9/3861G06F11/0757G06F11/0793G06F11/1405
    • A processor and an associated method and data processing system are disclosed. The processor includes an issue unit (ISU), a completion unit, and a hang detect unit. The ISU is configured to issue instructions to an execution unit. The completion unit is adapted to produce a completion valid signal responsive to the issue unit completing an instruction. The hang detect unit is configured to receive the completion valid signal from the ISU and adapted to determine the interval since the most recent assertion of the completion valid signal. The hang detect unit is adapted to initiate a hang recovery sequence upon determining that the interval since the most recent assertion of the completion valid signal exceeds a predetermined maximum interval. In one embodiment, the hang recovery sequence includes the hang recovery unit asserting a stop completion signal to a completion unit and a stop dispatch signal to a dispatch unit to suspend instruction completion and dispatch. The hang recovery unit then asserts a force reject signal to an execution unit to reject all instructions pending in the execution unit's pipeline and a flush signal to the execution unit that results in the processor flushing a set of instructions. The hang recovery unit then negates the force reject, stop completion, and stop dispatch signals to resume processor operation. In one embodiment, the recovery sequence includes entering a relaxed execution mode, such as a debug mode, a serial operation mode, or an in-order mode prior to resuming processor operation. In one embodiment, the processor advances a completion tag upon completing an instruction. In this manner the completion tag indicates the instruction that is next to complete. In one embodiment, the hang recovery sequence includes flushing the processor of an instruction set comprising all instructions with tag information greater than the completion tag. In another embodiment, all instructions with tag information greater than or equal to the completion tag are flushed.
    • 10. 发明授权
    • Method and system for performing atomic memory accesses in a processor system
    • 用于在处理器系统中执行原子存储器访问的方法和系统
    • US06298436B1
    • 2001-10-02
    • US09327644
    • 1999-06-08
    • James Allan KahleHung Qui LeLarry Edward ThatcherDavid James Shippy
    • James Allan KahleHung Qui LeLarry Edward ThatcherDavid James Shippy
    • G06F9305
    • G06F9/3004G06F9/30072G06F9/30087G06F9/3842
    • A method and system for atomic memory accesses in a processor system, wherein the processor system is able to issue and execute multiple instructions out of order with respect to a particular program order. A first reservation instruction is speculatively issued to an execution unit of the processor system. Upon issuance, instructions queued for the execution unit which occur after the first reservation instruction in the program order are flushed from the execution unit, in response to detecting any previously executed reservation instructions in the execution unit which occur after the first reservation instruction in the program order. The first reservation instruction is speculatively executed by placing a reservation for a particular data address of the first reservation instruction, in response to completion of instructions queued for the execution unit which occur prior to the first reservation instruction in the program order, such that reservation instructions which are speculatively issued and executed in any order are executed in-order with respect to a partnering conditional store instruction.
    • 一种用于处理器系统中的原子存储器访问的方法和系统,其中所述处理器系统能够相对于特定程序顺序发出并执行不正常的多个指令。 推测性地向处理器系统的执行单元发出第一预约指令。 在发行时,响应于在程序中的第一预约指令之后发生的执行单元中检测到任何先前执行的预定指令而从执行单元中刷新在程序顺序中的第一预约指令之后发生的执行单元排队的指令 订购。 响应于在程序顺序中的第一预约指令之前发生的执行单元排队的指令的完成,通过对第一预约指令的特定数据地址进行预约来推测地执行第一预约指令,使得预约指令 相对于合作条件存储指令,以任何顺序被推测地发行和执行的这些被按顺序执行。