Victim cache replacement
    51.
    发明授权
    Victim cache replacement 有权
    受害者缓存替换

    公开(公告)号:US08347037B2

    公开(公告)日:2013-01-01

    申请号:US12256002

    申请日:2008-10-22

    IPC分类号: G06F12/08

    摘要: A data processing system includes a processor core having an associated upper level cache and a lower level victim cache. In response to a memory access request of the processor core that specifies a non-modifying access to a target coherency granule, a determination is made whether the memory access request hits or misses in a directory of the lower level victim cache. In response to determining that the memory access request hits in the lower level victim cache in a data-valid coherence state, the lower level victim cache provides the target coherency granule of the memory access request to the upper level cache. The lower level victim cache preserves the target coherency granule in the lower level victim cache in a shared coherence state if the memory access request is of a first type and invalidates the target coherency granule if the memory access request is of a second type.

    摘要翻译: 数据处理系统包括具有相关联的高级缓存和较低级别的受害缓存的处理器核心。 响应于指定对目标一致性粒子的不修改访问的处理器核心的存储器访问请求,确定存储器访问请求是否在较低级别的受害缓存的目录中命中或丢失。 响应于确定存储器访问请求在数据有效的相干状态中击中较低级别的受害者高速缓存,则较低级别的受害者缓存将存储器访问请求的目标一致性颗粒提供给高级缓存。 如果存储器访问请求是第一类型,则较低级别的受害者缓存在共享相干状态下保留较低级别的受害者缓存中的目标一致性粒子,如果存储器访问请求是第二类型,则使目标一致性粒子无效。

    Empirically based dynamic control of transmission of victim cache lateral castouts
    52.
    发明授权
    Empirically based dynamic control of transmission of victim cache lateral castouts 有权
    基于经验的动态控制受害者缓存横向传播的传输

    公开(公告)号:US08347036B2

    公开(公告)日:2013-01-01

    申请号:US12421180

    申请日:2009-04-09

    IPC分类号: G06F12/08

    摘要: In response to a data request, a victim cache line is selected for castout from a lower level cache, and a target lower level cache of one of the plurality of processing units is selected. A determination is made whether the selected target lower level cache has provided more than a threshold number of retry responses to lateral castout (LCO) commands of the first lower level cache, and if so, a different target lower level cache is selected. The first processing unit thereafter issues a LCO command on the interconnect fabric. The LCO command identifies the victim cache line to be castout and indicates that the target lower level cache is an intended destination of the victim cache line. In response to a successful coherence response to the LCO command, the victim cache line is removed from the first lower level cache and held in the second lower level cache.

    摘要翻译: 响应于数据请求,选择从较低级别高速缓冲存储器进行丢弃的受害者高速缓存行,并且选择多个处理单元之一的目标下级高速缓存。 确定所选择的目标下层高速缓存是否为第一较低级别高速缓存的横向转移(LCO)命令提供了超过阈值数量的重试响应,如果是,则选择不同的目标低级高速缓存。 此后,第一处理单元在互连结构上发出LCO命令。 LCO命令标识要丢弃的受害者缓存行,并指示目标下级缓存是受害缓存行的预期目标。 响应于对LCO命令的成功的一致性响应,从第一低级缓存中移除受害者高速缓存行并保存在第二较低级缓存中。

    Empirically based dynamic control of acceptance of victim cache lateral castouts
    53.
    发明授权
    Empirically based dynamic control of acceptance of victim cache lateral castouts 有权
    基于经验的动态控制接受受害者缓存横向突出

    公开(公告)号:US08327073B2

    公开(公告)日:2012-12-04

    申请号:US12421017

    申请日:2009-04-09

    IPC分类号: G06F12/08

    摘要: A second lower level cache receives an LCO command issued by a first lower level cache on an interconnect fabric. The LCO command indicates an address of a victim cache line to be castout from the first lower level cache and indicates that the second lower level cache is an intended destination of the victim cache line. The second lower level cache determines whether to accept the victim cache line from the first lower level cache based at least in part on the address of the victim cache line indicated by the LCO command. In response to determining not to accept the victim cache line, the second lower level cache provides a coherence response to the LCO command refusing the identified victim cache line. In response to determining to accept the victim cache line, the second lower level cache updates an entry corresponding to the identified victim cache line.

    摘要翻译: 第二低级缓存接收由互连结构上的第一较低级缓存发出的LCO命令。 LCO命令指示要从第一较低级高速缓存丢弃的受害者高速缓存行的地址,并且指示第二较低级高速缓存是受害者高速缓存行的预期目的地。 第二较低级缓存至少部分地基于由LCO命令指示的受害缓存行的地址来确定是否从第一低级缓存接受受害者高速缓存行。 响应于确定不接受受害者缓存行,第二较低级缓存为LCO命令提供拒绝所识别的受害者缓存行的一致性响应。 响应于确定接受受害者缓存行,第二较低级缓存更新对应于所识别的受害者高速缓存行的条目。

    MEMORY COHERENCE DIRECTORY SUPPORTING REMOTELY SOURCED REQUESTS OF NODAL SCOPE
    54.
    发明申请
    MEMORY COHERENCE DIRECTORY SUPPORTING REMOTELY SOURCED REQUESTS OF NODAL SCOPE 失效
    记忆协调指导原则支持远程请求的NODAL范围

    公开(公告)号:US20120203976A1

    公开(公告)日:2012-08-09

    申请号:US13445010

    申请日:2012-04-12

    IPC分类号: G06F12/08

    CPC分类号: G06F12/0817

    摘要: A data processing system includes at least a first through third processing nodes coupled by an interconnect fabric. The first processing node includes a master, a plurality of snoopers capable of participating in interconnect operations, and a node interface that receives a request of the master and transmits the request of the master to the second processing unit with a nodal scope of transmission limited to the second processing node. The second processing node includes a node interface having a directory. The node interface of the second processing node permits the request to proceed with the nodal scope of transmission if the directory does not indicate that a target memory block of the request is cached other than in the second processing node and prevents the request from succeeding if the directory indicates that the target memory block of the request is cached other than in the second processing node.

    摘要翻译: 数据处理系统至少包括通过互连结构耦合的第一至第三处理节点。 第一处理节点包括主机,能够参与互连操作的多个侦听器,以及接收主机请求的节点接口,并将主机的请求传送到第二处理单元,传送范围限于 第二处理节点。 第二处理节点包括具有目录的节点接口。 第二处理节点的节点接口允许请求继续进行节点传输范围,如果该目录没有指示该请求的目标存储器块不是在第二处理节点中被缓存,并且如果该请求成功 目录指示除第二处理节点之外的请求的目标存储块被缓存。

    Pipelining D states for MRU steerage during MRU-LRU member allocation
    55.
    发明授权
    Pipelining D states for MRU steerage during MRU-LRU member allocation 有权
    在MRU-LRU成员分配过程中管理D状态用于MRU操纵

    公开(公告)号:US07831774B2

    公开(公告)日:2010-11-09

    申请号:US12118238

    申请日:2008-05-09

    IPC分类号: G06F13/00 G06F13/28

    摘要: A method and apparatus for preventing selection of Deleted (D) members as an LRU victim during LRU victim selection. During each cache access targeting the particular congruence class, the deleted cache line is identified from information in the cache directory. A location of a deleted cache line is pipelined through the cache architecture during LRU victim selection. The information is latched and then passed to MRU vector generation logic. An MRU vector is generated and passed to the MRU update logic, which is selects/tags the deleted member as a MRU member. The make MRU operation affects only the lower level LRU state bits arranged in a tree-based structure state bits so that the make MRU operation only negates selection of the specific member in the D state, without affecting LRU victim selection of the other members.

    摘要翻译: 用于在LRU受害者选择期间防止选择被删除(D)成员作为LRU受害者的方法和装置。 在针对特定同余类的每个缓存访问期间,从高速缓存目录中的信息识别已删除的高速缓存行。 删除的高速缓存行的位置在LRU受害者选择期间通过高速缓存架构流水线化。 信息被锁存,然后传递给MRU向量生成逻辑。 生成MRU向量并将其传递给MRU更新逻辑,MRU更新逻辑是将删除的成员作为MRU成员进行选择/标记。 使MRU操作仅影响以基于树的结构状态位布置的较低级LRU状态位,使得MRU操作仅在D状态下否定特定成员的选择,而不影响其他成员的LRU受害者选择。

    Victim Cache Line Selection
    56.
    发明申请
    Victim Cache Line Selection 有权
    受害者缓存行选择

    公开(公告)号:US20100153650A1

    公开(公告)日:2010-06-17

    申请号:US12335809

    申请日:2008-12-16

    IPC分类号: G06F12/08 G06F12/00

    摘要: A cache memory includes a cache array including a plurality of congruence classes each containing a plurality of cache lines, where each cache line belongs to one of multiple classes which include at least a first class and a second class. The cache memory also includes a cache directory of the cache array that indicates class membership. The cache memory further includes a cache controller that selects a victim cache line for eviction from a congruence class. If the congruence class contains a cache line belonging to the second class, the cache controller preferentially selects as the victim cache line a cache line of the congruence class belonging to the second class based upon access order. If the congruence class contains no cache line belonging to the second class, the cache controller selects as the victim cache line a cache line belonging to the first class based upon access order.

    摘要翻译: 高速缓存存储器包括包含多个等同类的高速缓存阵列,每个级别包含多条高速缓存行,其中每条高速缓存行属于至少包括第一类和第二类的多个类中的一个。 缓存存储器还包括指示类成员资格的高速缓存阵列的高速缓存目录。 高速缓冲存储器还包括高速缓存控制器,其选择用于从同余类驱逐的受害缓存行。 如果同余类包含属于第二类的高速缓存行,则高速缓存控制器基于访问顺序优先选择属于第二类的同余类的高速缓存行作为受害缓存行。 如果同余类不包含属于第二类的高速缓存行,则高速缓存控制器基于访问顺序选择属于第一类的高速缓存行作为受害缓存行。

    Data processing system and method that permit pipelining of I/O write operations and multiple operation scopes
    57.
    发明授权
    Data processing system and method that permit pipelining of I/O write operations and multiple operation scopes 失效
    允许I / O写入操作和多个操作范围的流水线的数据处理系统和方法

    公开(公告)号:US07725619B2

    公开(公告)日:2010-05-25

    申请号:US11226967

    申请日:2005-09-15

    IPC分类号: G06F12/00 G06F13/00 G06F13/28

    CPC分类号: G06F12/0831 G06F12/0811

    摘要: A data processing system includes at least a first processing node having an input/output (I/O) controller and a second processing including a memory controller for a memory. The memory controller receives, in order, pipelined first and second DMA write operations from the I/O controller, where the first and second DMA write operations target first and second addresses, respectively. In response to the second DMA write operation, the memory controller establishes a state of a domain indicator associated with the second address to indicate an operation scope including the first processing node. In response to the memory controller receiving a data access request specifying the second address and having a scope excluding the first processing node, the memory controller forces the data access request to be reissued with a scope including the first processing node based upon the state of the domain indicator associated with the second address.

    摘要翻译: 数据处理系统至少包括具有输入/输出(I / O)控制器的第一处理节点和包括用于存储器的存储器控​​制器的第二处理。 存储器控制器按顺序从I / O控制器接收流水线的第一和第二DMA写入操作,其中第一和第二DMA写操作分别针对第一和第二地址。 响应于第二DMA写入操作,存储器控制器建立与第二地址相关联的域指示符的状态,以指示包括第一处理节点的操作范围。 响应于所述存储器控制器接收到指定所述第二地址并且具有排除所述第一处理节点的范围的数据访问请求,所述存储器控制器基于所述第一处理节点的状态强迫所述数据访问请求被重新发布,所述范围包括所述第一处理节点 与第二个地址关联的域指示符。

    Processors interconnect fabric with relay broadcasting and accumulation of partial responses
    58.
    发明授权
    Processors interconnect fabric with relay broadcasting and accumulation of partial responses 失效
    处理器将结构与中继广播和部分响应的积累互连

    公开(公告)号:US07254694B2

    公开(公告)日:2007-08-07

    申请号:US11055297

    申请日:2005-02-10

    IPC分类号: G06F15/16

    CPC分类号: G06F13/385 G06F9/546

    摘要: A data processing system includes a plurality of processing units each having a respective point-to-point communication link with each of multiple others of the plurality of processing units but fewer than all of the plurality of processing units. Each of the plurality of processing units includes interconnect logic, coupled to each point-to-point communication link of that processing unit, that broadcasts requests received from one of the multiple others of the plurality of processing units to one or more of the plurality of processing units. The interconnect logic includes a partial response data structure including a plurality of entries each associating a partial response field with a plurality of flags respectively associated with each processing unit containing a snooper from which that processing unit will receive a partial response. The interconnect logic accumulates partial responses of processing units by reference to the partial response field to obtain an accumulated partial response, and when the plurality of flags indicate that all processing units from which partial responses are expected have returned a partial response, outputs the accumulated partial response.

    摘要翻译: 数据处理系统包括多个处理单元,每个处理单元各自具有与多个处理单元中的多个其他处理单元中的每一个相对的点对点通信链路,但是比所有多个处理单元少。 多个处理单元中的每一个包括互连逻辑,其耦合到该处理单元的每个点对点通信链路,其将从多个处理单元中的多个其中一个的接收的请求广播到多个处理单元中的一个或多个 处理单位。 互连逻辑包括部分响应数据结构,其包括多个条目,每个条目将部分响应字段与分别与包含窥探者的每个处理单元相关联的多个标志相关联,该处理单元将从该处理单元接收部分响应。 互连逻辑通过参考部分响应字段积累处理单元的部分响应以获得累积的部分响应,并且当多个标志指示预期部分响应的所有处理单元已经返回部分响应时,输出累积的部分响应 响应。

    PROCESSOR PERFORMANCE IMPROVEMENT FOR INSTRUCTION SEQUENCES THAT INCLUDE BARRIER INSTRUCTIONS
    60.
    发明申请
    PROCESSOR PERFORMANCE IMPROVEMENT FOR INSTRUCTION SEQUENCES THAT INCLUDE BARRIER INSTRUCTIONS 有权
    包括障碍指示的指令序列的处理器性能改进

    公开(公告)号:US20130205120A1

    公开(公告)日:2013-08-08

    申请号:US13369029

    申请日:2012-02-08

    IPC分类号: G06F9/312

    摘要: A technique for processing an instruction sequence that includes a barrier instruction, a load instruction preceding the barrier instruction, and a subsequent memory access instruction following the barrier instruction includes determining that the load instruction is resolved based upon receipt of an earliest of a good combined response for a read operation corresponding to the load instruction and data for the load instruction. The technique also includes if execution of the subsequent memory access instruction is not initiated prior to completion of the barrier instruction, initiating in response to determining the barrier instruction completed, execution of the subsequent memory access instruction. The technique further includes if execution of the subsequent memory access instruction is initiated prior to completion of the barrier instruction, discontinuing in response to determining the barrier instruction completed, tracking of the subsequent memory access instruction with respect to invalidation.

    摘要翻译: 一种用于处理指示序列的技术,该指令序列包括屏障指令,屏障指令之前的加载指令,以及跟随障碍指令之后的随后存储器访问指令,包括:基于接收到最早的良好组合响应来确定加载指令是否被解决 用于与加载指令相对应的读取操作和用于加载指令的数据。 该技术还包括如果在完成屏障指令之前没有启动后续存储器访问指令的执行,则响应于确定完成的屏障指令启动后续存储器访问指令的执行。 该技术还包括如果在完成屏障指令之前启动后续存储器访问指令的执行,则响应于确定所完成的屏障指令而中断,跟踪关于无效的后续存储器访问指令。