G06F12/0851

Memory Interleaving Method and Apparatus
20210149804 · 2021-05-20 ·

A memory interleaving method includes dividing an access capacity into P partial access capacities based on N pieces of configuration information, where the P partial access capacities have a same size, the N pieces of configuration information are of N memory channels, where one of the N pieces of configuration information corresponds to one memory channel of the N memory channels, each of the N configuration information indicates a quantity of first partial access capacities of the P partial access capacities correspond to a first memory channel, and two partial access capacities correspond to a second memory channel, where a total quantity of memory channels is N, and N is an integer greater than or equal to 2, and mapping the P partial access capacities to the N memory channels.

Memory with reduced exposure to manufacturing related data corruption errors

A method performed by a memory is described. The method includes sensing first bits from a first activated column associated with a first sub-word line structure simultaneously with the sensing of second bits from a second activated column associated with a second sub-word line structure. The method also includes providing the first bits at a same first bit location within different read words of a burst read sequence and providing the second bits at a same second bit location within the different read words of the burst read sequence.

Tags and data for caches
10970220 · 2021-04-06 · ·

A device includes a memory controller and a cache memory coupled to the memory controller. The cache memory has a first set of cache lines associated with a first memory block and comprising a first plurality of cache storage locations, as well as a second set of cache lines associated with a second memory block and comprising a second plurality of cache storage locations. A first location of the second plurality of cache storage locations comprises cache tag data for both the first set of cache lines and the second set of cache lines.

Multi-power-domain bridge with prefetch and write merging

Techniques for accessing data, comprising receiving a first memory request associated with a first clock domain, converting a first memory address of the first memory request from a first memory address format associated with the first clock domain to a second memory address format associated with the second clock domain, transitioning the first memory request to a second clock domain, creating a first scoreboard entry associated with the first memory request, transmitting the first memory request to a memory based on the converted first memory address, receiving a first response to the first memory request, transitioning the first response to the second clock domain and clearing the first scoreboard entry based on the received response.

ADDRESS INTERLEAVING FOR MACHINE LEARNING
20210117866 · 2021-04-22 ·

A system includes a memory, an interface engine, and a master. The memory is configured to store data. The inference engine is configured to receive the data and to perform one or more computation tasks of a machine learning (ML) operation associated with the data. The master is configured to interleave an address associated with memory access transaction for accessing the memory. The master is further configured to provide a content associated with the accessing to the inference engine.

MEMORY SYSTEM AND OPERATING METHOD THEREOF
20210133111 · 2021-05-06 ·

A memory system includes: a memory device including a plurality of memory blocks; and a controller for dynamically changing a size of a write buffer based on whether a current workload is a sequential workload or a mixed workload, wherein the controller includes: a workload detecting unit suitable for changing current workload from the sequential workload to the mixed workload based on a read count, or from the mixed workload to the sequential workload based on a write count; and a write buffer managing unit suitable for reducing the size of the write buffer when the current workload is changed to the mixed workload.

Computing apparatuses and methods of processing operations thereof

A computing apparatus may process an operation. The computing apparatus may output information regarding an aggregation operation and an operand corresponding to a variable stored in a memory, store information regarding an operator and the aggregation operands regarding the aggregation operation, perform a first partial operation with respect to the aggregation operands and store a result value of the first partial operation, and process the aggregation operation based on storing the variable, performing a second partial operation with respect to the result value of the first partial operation stored in the cache and the operand corresponding to the variable, and storing a result value of the second partial operation.

TECHNIQUES FOR STORING DATA AND TAGS IN DIFFERENT MEMORY ARRAYS
20210089464 · 2021-03-25 ·

A memory controller includes logic circuitry to generate a first data address identifying a location in a first external memory array for storing first data, a first tag address identifying a location in a second external memory array for storing a first tag, a second data address identifying a location in the second external memory array for storing second data, and a second tag address identifying a location in the first external memory array for storing a second tag. The memory controller includes an interface that transfers the first data address and the first tag address for a first set of memory operations in the first and the second external memory arrays. The interface transfers the second data address and the second tag address for a second set of memory operations in the first and the second external memory arrays.

Bits register for synonyms in a memory system

In an approach to tracking and invalidating memory address synonyms in a memory system includes establishing a bits register for a first virtual address in a memory system, the bits register having synonym fields representing each bit of a first synonym identifier portion of the first virtual address, the first virtual address being mapped to a physical address; determining, for a second virtual address mapped to the physical address, the second virtual address having a second synonym identifier portion, a set of differing bits within the second synonym identifier portion compared to the first synonym identifier portion; and registering the set of differing bits in the bits register.

Method and apparatus for using a storage system as main memory
10936492 · 2021-03-02 · ·

A data access system including a processor, multiple cache modules for the main memory, and a storage drive. The cache modules include a FLC controller and a main memory cache. The multiple cache modules function as main memory. The processor sends read/write requests (with physical address) to the cache module. The cache module includes two or more stages with each stage including a FLC controller and DRAM (with associated controller). If the first stage FLC module does not include the physical address, the request is forwarded to a second stage FLC module. If the second stage FLC module does not include the physical address, the request is forwarded to the storage drive, a partition reserved for main memory. The first stage FLC module has high speed, lower power operation while the second stage FLC is a low-cost implementation. Multiple FLC modules may connect to the processor in parallel.