G06F2212/6032

Enhancing cache performance by utilizing scrubbed state indicators associated with cache entries
09767042 · 2017-09-19 · ·

Systems and methods for improving write-back cache performance by utilizing scrubbed state indicators associated with the cache entries. The example system may comprise: a cache comprising a plurality of cache entries; a processing core, coupled to the cache; and a cache controller configured to maintain a plurality of indicators corresponding to a plurality of cache entries, wherein each indicator of the plurality of indicators indicates whether a corresponding cache entry has been scrubbed by synchronizing the cache entry with a next level memory after the cache entry has been modified.

PROTECTED POINTERS
20170262387 · 2017-09-14 ·

A data processing machine is configured to automatically keep track of hypervisor given pointers pointing to respective and newly allocated areas of memory and to automatically keep track of corresponding copies or derivatives of the given pointers. A unique allocation identifier is generated for each newly allocated area. The allocation identifier is appended to a valid ID's holding list. All pointers pointing to the allocated area are tracked by a protected pointers tracking table. Additionally, a multi-input associative cache stores entries for recently used ones of the protected pointers where the entries include the respective allocation identifiers of the pointers. All pointers to a given, de-allocated area can be invalidated by deleting their entries form the multi-input associative cache and by deleting the corresponding unique allocation identifier from the valid ID's holding list.

Method for controlling access of cache through using programmable hashing address and related cache controller

A method for controlling access of a cache includes at least following steps: receiving a memory address; utilizing a hashing address logic to perform a programmable hash function upon at least a portion of the memory address to generate a hashing address; and determining an index of the cache based at least partly on the hashing address.

Storing prediction entries and stream entries where each stream entry includes a stream identifier and a plurality of sequential way predictions
11397685 · 2022-07-26 · ·

There is provided a data processing apparatus and method for storing a plurality of prediction cache entries in a prediction cache with associativity greater than one comprising a plurality of prediction cache ways, each of the plurality of prediction entries defining an association between a prediction cache lookup address and target information; and storing a plurality of stream entries, each stream entry corresponding to a sequence of prediction cache lookup addresses and comprising: a stream identifier defined by two or more sequential prediction cache lookup addresses of the sequence, and a plurality of sequential way predictions, each way prediction of the plurality of sequential way predictions defining, for a given position in the sequence of prediction cache lookup addresses, a prediction cache way to be looked up in the prediction cache to identify a prediction entry associated with the prediction cache lookup address at the given position in the sequence.

Victim cache that supports draining write-miss entries

A caching system including a first sub-cache and a second sub-cache in parallel with the first sub-cache, wherein the second sub-cache includes a set of cache lines, line type bits configured to store an indication that a corresponding cache line of the set of cache lines is configured to store write-miss data, and an eviction controller configured to flush stored write-miss data based on the line type bits.

METHOD, SYSTEM, AND APPARATUS FOR PAGE SIZING EXTENSION

A method, system, and apparatus may initialize a fixed plurality of page table entries for a fixed plurality of pages in memory, each page having a first size, wherein a linear address for each page table entry corresponds to a physical address and the fixed plurality of pages are aligned. A bit in each of the page table entries for the aligned pages may be set to indicate whether or not the fixed plurality of pages is to be treated as one combined page having a second page size larger than the first page size. Other embodiments are described and claimed.

Storage system and method for accessing same
11360894 · 2022-06-14 · ·

A data access system including a processor and a storage system including a main memory and a cache module. The cache module includes a FLC controller and a cache. The cache is configured as a FLC to be accessed prior to accessing the main memory. The processor is coupled to levels of cache separate from the FLC. The processor generates, in response to data required by the processor not being in the levels of cache, a physical address corresponding to a physical location in the storage system. The FLC controller generates a virtual address based on the physical address. The virtual address corresponds to a physical location within the FLC or the main memory. The cache module causes, in response to the virtual address not corresponding to the physical location within the FLC, the data required by the processor to be retrieved from the main memory.

Systems and methods for managing digital rights
11362834 · 2022-06-14 · ·

Systems and methods are described for managing digital rights. Methods may comprise causing an encrypted content asset to be stored at a storage location. The encrypted content asset at the storage location may be accessible by one or more user devices. A transaction may be generated and may comprise an identifier and a decryption key, wherein the decryption key is configured to decrypt at least a portion of the encrypted content asset. The transaction may be caused to be stored in a distributed database, wherein the distributed database is accessible by the one or more user devices using at least the identifier.

Write merging on stores with different tags

Techniques for caching data are provided that include receiving, by a caching system, a write memory command for a memory address, the write memory command associated with a first color tag, determining, by a first sub-cache of the caching system, that the memory address is not cached in the first sub-cache, determining, by second sub-cache of the caching system, that the memory address is not cached in the second sub-cache, storing first data associated with the first write memory command in a cache line of the second sub-cache, storing the first color tag in the second sub-cache, receiving a second write memory command for the cache line, the write memory command associated with a second color tag, merging the second color tag with the first color tag, storing the merged color tag, and evicting the cache line based on the merged color tag.

Cache memory device, system including the same, and method of operating the same
11321235 · 2022-05-03 · ·

A cache memory device includes a cache circuit and a way prediction circuit. The cache circuit generates a cache hit signal indicating whether target data corresponding to an access address are stored in cache lines and performs a current cache access operation primarily with respect to candidate ways based on a candidate way signal indicating the candidate ways in a way prediction mode. The way prediction circuit stores accumulation information by accumulating a cache hit result indicating whether the target data are stored in one of ways and a way prediction hit result indicating whether the target data are stored in one of the candidate ways based on the cache hit signal provided during previous cache access operations. The way prediction circuit generates the candidate way signal by determining the candidate ways for the current cache access operation based on the accumulation information in the way prediction mode.