会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明授权
    • System and method for high performance execution of locked memory instructions in a system with distributed memory and a restrictive memory model
    • 用于在具有分布式存储器和限制性存储器模型的系统中执行锁定存储器指令的高性能执行的系统和方法
    • US06463511B2
    • 2002-10-08
    • US09750133
    • 2000-12-29
    • Bryan D. BoatrightRajesh Bhikhubhai PatelLarry Edward Thatcher
    • Bryan D. BoatrightRajesh Bhikhubhai PatelLarry Edward Thatcher
    • G06F1200
    • G06F12/0831G06F9/3004G06F9/30087
    • The present invention relates to locked memory instructions, and more specifically to a system and method for the high performance execution of locked memory instructions in a system with distributed memory and a restrictive memory model. In accordance with an embodiment of the present invention, a method for executing locked-memory instructions includes decoding a locked-memory instruction, obtaining exclusive ownership of a cacheline to be used by a load-lock operation, setting a bit to indicate the load-lock operation's ownership of the cacheline, and activating a snoop checking process. The method also includes modifying a load data value and storing the modified load data value. The method further includes determining that the cacheline is still exclusively owned, storing the load data value, determining that the cacheline is unsnooped, merging the modified load data value with the load data value, and releasing the locked-memory instruction to be retired.
    • 本发明涉及锁定存储器指令,更具体地说涉及用于在具有分布式存储器和限制性存储器模型的系统中执行锁定存储器指令的高性能执行的系统和方法。 根据本发明的实施例,一种用于执行锁定存储器指令的方法包括对锁定存储器指令进行解码,获得要通过加载锁定操作使用的高速缓存行的排他所有权,设置位以指示负载 - 锁定操作对高速缓存行的所有权,并激活侦听检查过程。 该方法还包括修改负载数据值并存储修改的负载数据值。 该方法还包括确定高速缓存行仍然是独占所有,存储加载数据值,确定高速缓存线不被播放,将修改的加载数据值与加载数据值合并,以及释放要退休的锁定存储器指令。
    • 2. 发明授权
    • 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信号。
    • 4. 发明授权
    • 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.
    • 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. 发明授权
    • 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奇偶校验错误。
    • 10. 发明授权
    • Superscaler processor and method for efficiently recovering from misaligned data addresses
    • 超标量处理器和方法可以有效地从不对齐的数据地址中恢复
    • US06289428B1
    • 2001-09-11
    • US09366599
    • 1999-08-03
    • John Edward DerrickHung Qui LeDavid James ShippyLarry Edward Thatcher
    • John Edward DerrickHung Qui LeDavid James ShippyLarry Edward Thatcher
    • G06F1202
    • G06F9/30043G06F9/3824G06F12/04
    • A superscalar processor and method are disclosed for efficiently recovering from misaligned data addresses. The processor includes a memory device partitioned into a plurality of addressable memory units. Each of the plurality of addressable memory units has a width of a first plurality of bytes. A determination is made regarding whether a data address included within a memory access instruction is misaligned. The data address is misaligned if it includes a first data segment located in a first addressable memory unit and a second data segment located in a second addressable memory unit where the first and second data segments are separated by an addressable memory unit boundary. In response to a determination that the data address is misaligned, a first internal instruction is executed which accesses the first memory unit and obtains the first data segment. A second internal instruction is executed which accesses the second memory unit and obtains the second data segment. The first and second data segments are merged together. All of the instructions executed by the processor are constrained by the memory boundary and do not access memory across the memory boundary.
    • 公开了一种超标量处理器和方法,用于从未对准的数据地址有效地恢复。 处理器包括划分成多个可寻址存储器单元的存储器件。 多个可寻址存储器单元中的每一个具有第一多个字节的宽度。 确定存储器访问指令中包括的数据地址是否不对齐。 如果数据地址包括位于第一可寻址存储器单元中的第一数据段和位于第二可寻址存储器单元中的第二数据段,其中第一和第二数据段由可寻址存储器单元边界分隔,则该数据地址未对准。 响应于确定数据地址未对准,执行访问第一存储器单元并获得第一数据段的第一内部指令。 执行访问第二存储器单元并获得第二数据段的第二内部指令。 第一和第二数据段合并在一起。 由处理器执行的所有指令都受到存储器边界的约束,并且不会跨越存储器边界访问存储器。