G06F3/0655

SSD supporting low latency operation
11561724 · 2023-01-24 · ·

A method of managing writing data to a Solid State Drive (SSD). The method includes determining a remaining capacity of an event queue for queuing write commands for execution by the SSD. Dynamically setting an ingress throttle rate of write commands, transferred from a host interface to the event queue based on the remaining capacity of the event queue, during the operation of then SSD and transferring the write commands to the event queue at ingress throttle rate. The method also includes inputting write data associated with the write commands into a write data buffer.

Memory system, host device and information processing system for error correction processing

According to one embodiment, a memory system includes a nonvolatile memory and a controller which controls the nonvolatile memory. The controller notifies to an outside an extensive signal which indicates a predetermined state of the nonvolatile memory or the controller.

DISTRIBUTED MIDPLANES
20230229345 · 2023-07-20 ·

An electronics assembly including a plurality of midplanes positioned between and coupled to a plurality of electronic components at one side of the plurality of midplanes and at least one electronic component at an opposite side of the plurality of midplanes in a manner so that the midplanes are vertically oriented in parallel relative to each other so as to define spaces therebetween. The midplanes each include electrical traces configured to send signals among and between the plurality of electronic components at the one side of the midplanes and the at least one electronic component at the opposite side of the midplanes.

Electronic device
11704048 · 2023-07-18 · ·

An electronic device includes a controller; and a non-transitory computer-readable storage medium configured to store operation codes for causing the controller to execute processes. The non-transitory computer-readable storage medium includes a plurality of memory blocks. The processes include grouping the plurality of memory blocks into a plurality of super blocks; selecting a first super block among the plurality of super blocks depending on one or more logical addresses corresponding to write-requested data, and writing the data; and mapping the first super block to a first logical address range. The first logical address range is configured by successive addresses corresponding to a super block size, and a start address of the successive addresses is a start logical address of the one or more logical addresses.

DATA FLOW CONTROL AND ROUTING USING MACHINE LEARNING

A device configured to identify a first link between a value of a first data element in a first plurality of data elements and values of a first set of data elements in a second plurality of data elements and to remove the first link between the first data element and the first set of data elements. The device is further configured to input the data elements into a machine learning model that is configured to output a second link between the first data element and a second set of data elements. The device is further configured to create an entry in a relationship table that identifies the first data element and the second set of data elements. The device is further configured to generate a data stream with the first data element and the second set of data elements and to output the data stream.

Processing-in-memory (PIM) systems
11704052 · 2023-07-18 · ·

A processing-in-memory (PIM) system includes a plurality of PIM devices, a plurality of PIM controllers configured to control respective ones of the plurality of PIM devices, and an interface coupled between a host and the plurality of PIM controllers. The interface transmits first request data to a target PIM controller corresponding to one of the plurality of PIM controllers for execution of a first request output from the host. The interface transmits second request data to all of the plurality of PIM controllers for execution of a second request output from the host.

Memory system for determining a memory area in which a journal is stored according to a number of free memory blocks
11704050 · 2023-07-18 · ·

A memory system which stores a journal including mapping change information, either in a first memory area or a second memory area, depending on available space of a memory device included in the memory system, being greater than a threshold.

Optimized command sequences

Methods, systems, and devices for optimized command sequences are described. An apparatus includes a memory array and a controller coupled with the memory array. The controller may be configured to receive a first command indicating a start of a sequence of access commands to store at the controller, then receive a first set of access commands associated with the sequence of access commands, and then receive a second command indicating the end of the sequence of access commands. The controller may also receive a second set of access commands after the command. The controller may execute an operation associated with a third set of access commands of the sequence after receiving the second set of access commands and before receiving the third set of access commands based at least in part on identifying the second set of access commands as starting the sequence of access commands.

Data storage apparatus and interface circuit therefor
11704051 · 2023-07-18 · ·

A data storage apparatus is provided to include a memory device including memory cells for storing data; and an interface circuit coupled as an interface between the host device and the memory device and configured to transmit a transmission signal to the host. The interface circuit includes a delay circuit configured to generate a delay code and is configured to generate an additional signal to be combined with the transmission signal based on the delay code.

Optimization for direct writes to raid stripes
11704053 · 2023-07-18 · ·

A storage control node receives data to be written to a striped volume, allocates first and second stripes, writes the data to at least one data strip of the first stripe, computes parity data based on the data written to the first stripe, and writes the parity data to the first stripe. The storage control node sends a copy command to a target storage node which comprises the at least one data strip of the first stripe to thereby cause the at least one data strip to be copied to a data strip of the second stripe which resides on the target storage node. The storage control node writes additional data to the second stripe, computes updated parity data based on the additional data and the parity data of the first stripe, writes the updated parity data the second stripe, and releases the first stripe for reuse.