Least recently used mechanism for cache line eviction from a cache memory
    11.
    发明授权
    Least recently used mechanism for cache line eviction from a cache memory 有权
    最近用于高速缓存存储器缓存线驱逐的最近使用的机制

    公开(公告)号:US09176879B2

    公开(公告)日:2015-11-03

    申请号:US13946327

    申请日:2013-07-19

    Applicant: Apple Inc.

    Abstract: A mechanism for evicting a cache line from a cache memory includes first selecting for eviction a least recently used cache line of a group of invalid cache lines. If all cache lines are valid, selecting for eviction a least recently used cache line of a group of cache lines in which no cache line of the group of cache lines is also stored within a higher level cache memory such as the L1 cache, for example. Lastly, if all cache lines are valid and there are no non-inclusive cache lines, selecting for eviction the least recently used cache line stored in the cache memory.

    Abstract translation: 用于从高速缓冲存储器中逐出高速缓存行的机制包括首先选择驱逐一组无效高速缓存行的最近最少使用的高速缓存行。 如果所有高速缓存行都有效,则选择驱逐,一组高速缓存行的最近最少使用的高速缓存行,其中该高速缓存行组中的高速缓存行也不存储在诸如L1高速缓存的更高级高速缓冲存储器中 。 最后,如果所有高速缓存行都是有效的,并且没有非包含的高速缓存行,则选择驱逐存储在高速缓冲存储器中的最近最少使用的高速缓存行。

    DELAYING CACHE DATA ARRAY UPDATES
    12.
    发明申请
    DELAYING CACHE DATA ARRAY UPDATES 有权
    延迟缓存数据阵列更新

    公开(公告)号:US20150149722A1

    公开(公告)日:2015-05-28

    申请号:US14089014

    申请日:2013-11-25

    Applicant: Apple Inc.

    CPC classification number: G06F12/0811 G06F12/0842 G06F12/0857 G06F12/0888

    Abstract: Systems, methods, and apparatuses for reducing writes to the data array of a cache. A cache hierarchy includes one or more L1 caches and a L2 cache inclusive of the L2 cache(s). When a request from the L1 cache misses in the L2 cache, the L2 cache sends a fill request to memory. When the fill data returns from memory, the L2 cache delays writing the fill data to its data array. Instead, this cache line is written to the L1 cache and a clean-evict bit corresponding to the cache line is set in the L1 cache. When the L1 cache evicts this cache line, the L1 cache will write back the cache line to the L2 cache even if the cache line has not been modified.

    Abstract translation: 用于减少对缓存的数据阵列的写入的系统,方法和装置。 高速缓存层级包括一个或多个L1高速缓存和包括L2高速缓存的L2高速缓存。 当来自L1缓存的请求在L2高速缓存中丢失时,L2缓存向存储器发送填充请求。 当填充数据从存储器返回时,L2缓存延迟将填充数据写入其数据阵列。 相反,该缓存行被写入到L1高速缓存中,并且在高速缓存中设置与高速缓存行相对应的清除位。 当L1高速缓存驱逐此高速缓存行时,即使高速缓存行未被修改,L1高速缓存也将高速缓存行写回到L2高速缓存。

    Access Map-Pattern Match Based Prefetch Unit for a Processor
    13.
    发明申请
    Access Map-Pattern Match Based Prefetch Unit for a Processor 有权
    基于访问地图模式匹配的预处理单元

    公开(公告)号:US20150026413A1

    公开(公告)日:2015-01-22

    申请号:US13942780

    申请日:2013-07-16

    Applicant: Apple Inc.

    CPC classification number: G06F12/0862 G06F2212/6026 Y02D10/13

    Abstract: In an embodiment, a processor may implement an access map-pattern match (AMPM)-based prefetcher in which patterns may include wild cards for some cache blocks. The wild card may match any access for the corresponding cache block (e.g. no access, demand access, prefetch, successful prefetch, etc.). Furthermore, patterns with irregular strides and/or irregular access patterns may be included in the matching patterns and may be detected for prefetch generation. In an embodiment, the AMPM prefetcher may implement a chained access map for large streaming prefetches. If a stream is detected, the AMPM prefetcher may allocate a pair of map entries for the stream and may reuse the pair for subsequent access map regions within the stream. In some embodiments, a quality factor may be associated with each access map and may control the rate of prefetch generation.

    Abstract translation: 在一个实施例中,处理器可以实现基于访问映射模式匹配(AMPM)的预取器,其中模式可以包括一些高速缓存块的通配符。 通配符可以匹配对应的高速缓存块的任何访问(例如,无访问,请求访问,预取,成功预取等)。 此外,具有不规则步幅和/或不规则访问模式的模式可以被包括在匹配模式中,并且可以被检测用于预取生成。 在一个实施例中,AMPM预取器可以实现用于大型流预取的链接访问映射。 如果检测到流,则AMPM预取器可以为流分配一对映射条目,并且可以将该对重新使用在该流内的后续访问映射区域。 在一些实施例中,质量因子可以与每个访问映射关联,并且可以控制预取生成的速率。

    PREFETCHING ACROSS PAGE BOUNDARIES IN HIERARCHICALLY CACHED PROCESSORS
    14.
    发明申请
    PREFETCHING ACROSS PAGE BOUNDARIES IN HIERARCHICALLY CACHED PROCESSORS 有权
    在高性能缓存处理器中的跨页面边界的前缀

    公开(公告)号:US20140149632A1

    公开(公告)日:2014-05-29

    申请号:US13689696

    申请日:2012-11-29

    Applicant: APPLE INC.

    Abstract: Processors and methods for preventing lower level prefetch units from stalling at page boundaries. An upper level prefetch unit closest to the processor core issues a preemptive request for a translation of the next page in a given prefetch stream. The upper level prefetch unit sends the translation to the lower level prefetch units prior to the lower level prefetch units reaching the end of the current page for the given prefetch stream. When the lower level prefetch units reach the boundary of the current page, instead of stopping, these prefetch units can continue to prefetch by jumping to the next physical page number provided in the translation.

    Abstract translation: 用于防止较低级别的预取单元在页面边界停止的处理器和方法。 最靠近处理器核心的高级预取单元在给定的预取流中发出对下一页的翻译的抢占请求。 在较低级预取单元到达给定预取流的当前页面的末尾之前,高级预取单元将转换发送到较低级预取单元。 当低级预取单元到达当前页面的边界而不是停止时,这些预取单元可以通过跳转到翻译中提供的下一个物理页码继续预取。

    METHODS FOR CACHE LINE EVICTION
    17.
    发明申请
    METHODS FOR CACHE LINE EVICTION 有权
    缓存线路故障检测方法

    公开(公告)号:US20150309944A1

    公开(公告)日:2015-10-29

    申请号:US14263386

    申请日:2014-04-28

    Applicant: Apple Inc.

    Abstract: A method and apparatus for evicting cache lines from a cache memory includes receiving a request from one of a plurality of processors. The cache memory is configured to store a plurality of cache lines, and a given cache line includes an identifier indicating a processor that performed a most recent access of the given cache line. The method further includes selecting a cache line for eviction from a group of least recently used cache lines, where each cache line of the group of least recently used cache lines occupy a priority position less that a predetermined value, and then evicting the selected cache line.

    Abstract translation: 用于从高速缓冲存储器中取出高速缓存行的方法和装置包括从多个处理器之一接收请求。 高速缓存存储器被配置为存储多条高速缓存行,并且给定的高速缓存行包括指示执行给定高速缓存行的最近访问的处理器的标识符。 该方法还包括从一组最近最少使用的高速缓存行中选择用于逐出的高速缓存行,其中最近最少使用的高速缓存行的组中的每个高速缓存行占据优先级位置小于预定值,然后逐出所选择的高速缓存行 。

    Lookahead Scheme for Prioritized Reads
    18.
    发明申请
    Lookahead Scheme for Prioritized Reads 审中-公开
    优先阅读的前瞻方案

    公开(公告)号:US20150161033A1

    公开(公告)日:2015-06-11

    申请号:US14624621

    申请日:2015-02-18

    Applicant: Apple Inc.

    Abstract: A circular queue implementing a scheme for prioritized reads is disclosed. In one embodiment, a circular queue (or buffer) includes a number of storage locations each configured to store a data value. A multiplexer tree is coupled between the storage locations and a read port. A priority circuit is configured to generate and provide selection signals to each multiplexer of the multiplexer tree, based on a priority scheme. Based on the states of the selection signals, one of the storage locations is coupled to the read port via the multiplexers of the multiplexer tree.

    Abstract translation: 公开了实现优先读取方案的循环队列。 在一个实施例中,循环队列(或缓冲器)包括多个存储位置,每个存储位置被配置为存储数据值。 复用器树耦合在存储位置和读端口之间。 优先级电路被配置为基于优先级方案来生成并提供对多路复用器树的每个多路复用器的选择信号。 基于选择信号的状态,其中一个存储位置经由复用器树的多路复用器耦合到读端口。

    Least Recently Used Mechanism for Cache Line Eviction from a Cache Memory
    19.
    发明申请
    Least Recently Used Mechanism for Cache Line Eviction from a Cache Memory 有权
    最近使用缓存线缓存从缓存内存使用的机制

    公开(公告)号:US20150026404A1

    公开(公告)日:2015-01-22

    申请号:US13946327

    申请日:2013-07-19

    Applicant: Apple Inc.

    Abstract: A mechanism for evicting a cache line from a cache memory includes first selecting for eviction a least recently used cache line of a group of invalid cache lines. If all cache lines are valid, selecting for eviction a least recently used cache line of a group of cache lines in which no cache line of the group of cache lines is also stored within a higher level cache memory such as the L1 cache, for example. Lastly, if all cache lines are valid and there are no non-inclusive cache lines, selecting for eviction the least recently used cache line stored in the cache memory.

    Abstract translation: 用于从高速缓冲存储器中逐出高速缓存行的机制包括首先选择驱逐一组无效高速缓存行的最近最少使用的高速缓存行。 如果所有高速缓存行都有效,则选择驱逐,一组高速缓存行的最近最少使用的高速缓存行,其中该高速缓存行组中的高速缓存行也不存储在诸如L1高速缓存的更高级高速缓冲存储器中 。 最后,如果所有高速缓存行都是有效的,并且没有非包含的高速缓存行,则选择驱逐存储在高速缓冲存储器中的最近最少使用的高速缓存行。

Patent Agency Ranking