IP Library Granted Patent US 12,613,662
Granted Patent B2
US 12,613,662 · App. 18/914,857 · Granted Apr 28, 2026

Managed NAND data compression

Inventor: Sebastien Andre Jean (Meridian, ID)
G06F3/0659G06F3/0604G06F3/0608G06F3/0611G06F3/064G06F3/0647G06F3/0649G06F3/0661G06F3/0679G06F3/068G11C16/0483G11C16/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,613,662
App. No.
18/914,857
Granted
Apr 28, 2026
Kind
B2
Abstract

Apparatus and methods are disclosed, including providing available data operations for the storage system processor to a host processor, identifying data operations to be performed by the storage system processor, and assigning identified data operations to the storage system processor to reduce bus traffic between the host processor and the storage system processor, to improve host processor performance, and to reduce energy use by the host processor.

Claims (35)

1 . A device comprising:

a plurality of non-volatile memory cells; and

a memory controller coupled to the plurality of non-volatile memory cells, wherein the memory controller is configured to:

indicate, to a host processor, one or more data operations that the memory controller is configurable to perform;

receive, from the host processor, an indication of a data operation of the one or more data operations; and

perform the data operation on one or more non-volatile memory cells of the plurality of non-volatile memory cells based on the indication.

2 . The device of claim 1 , wherein the memory controller is configured to perform the data operation on a contiguous range of a subset of non-volatile memory cells of the plurality of non-volatile memory cells.

3 . The device of claim 1 , wherein the plurality of non-volatile memory cells corresponds to flash memory.

4 . The device of claim 1 , wherein the host processor is disposed on a separate chip than the memory controller, and wherein the host processor and the memory controller are configured to communicate through a bidirectional serial communication interface.

5 . The device of claim 1 , wherein the memory controller is configured as an interface between a host device comprising the host processor and a non-volatile memory subsystem comprising the plurality of non-volatile memory cells.

6 . The device of claim 1 , wherein the one or more data operations comprises a data migration operation.

7 . The device of claim 1 , wherein the memory controller is configured to indicate the one or more data operations based on transmitting a list structure indicating the one or more data operations.

8 . The device of claim 1 , wherein the device corresponds to an embedded removable memory device.

9 . The device of claim 1 , comprising a plurality of memory controllers that includes the memory controller.

10 . A tangible, non-transitory, computer-readable medium comprising instructions that, when executed by a host processor, causes a host device to perform operations comprising:

receiving an indication of a plurality of data operations that a memory controller of a memory device is configurable to perform;

identifying a data operation of the plurality of data operations to be performed by the memory controller; and

assigning the identified data operation to the memory controller.

11 . The tangible, non-transitory, computer-readable medium of claim 10 , wherein identifying the data operation is based on determining to reduce memory device power consumption.

12 . The tangible, non-transitory, computer-readable medium of claim 10 , wherein the plurality of data operations comprises a data migration operation.

13 . The tangible, non-transitory, computer-readable medium of claim 10 , comprising:

generating a trigger for the identified data operation; and

associating the trigger with the identified data operation.

14 . The tangible, non-transitory, computer-readable medium of claim 13 , comprising communicating, to the memory controller, the identified data operation and the trigger via a bidirectional serial communication interface.

15 . A method, comprising:

indicating, to a host processor, one or more data operations that a memory controller is configurable to perform;

receiving, from the host processor, an instruction configured to cause the memory controller to perform a data operation of the one or more data operations; and

performing, based on the instruction, the data operation on a plurality of non-volatile memory cells.

16 . The method of claim 15 , wherein indicating the one or more data operations comprises sending an indication via a bidirectional serial communication interface.

17 . The method of claim 15 , wherein performing the data operation comprises performing a data migration from a first subset of the plurality of non-volatile memory cells to a second subset of the plurality of non-volatile memory cells.

18 . The method of claim 15 comprising receiving a trigger for the data operation, wherein the trigger corresponds to a time-based condition;

detecting the trigger based on latency since a previous host activity; and

in response to detecting the trigger, performing the data operation.

19 . The method of claim 15 , wherein performing the data operation comprises clearing data of one or more non-volatile memory cells of the plurality of non-volatile memory cells, reading data of the one or more non-volatile memory cells of the plurality of non-volatile memory cells, or writing data of the one or more non-volatile memory cells of the plurality of non-volatile memory cells, or any combination thereof.

20 . The method of claim 15 , wherein performing the data operation occurs during a detected period of inactivity.