# US 12,602,191 B2 · Storing data on multi-level cell memory cells

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,602,191 B2
- Document ID: US12602191B2
- Status: Granted
- Kind: B2
- Application number: 18/894,203
- Filed: 2024-09-24
- Published: 2026-03-26
- Granted: 2026-04-14
- Earliest claimed: 2024-09-24
- Assignees: Micron Technology, Inc.
- Applicants: Micron Technology, Inc.
- Inventors: Roy Leonard; Dave Holmstrom; Joseph L. Turmes
- Web page: https://patentgrep.com/patent/US12602191B2

## CPC

- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/061: {Improving I/O performance}
- G06F 3/0655: {Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

This disclosure is directed to a system for high efficiency storage in high capacity non-volatile solid state applications. The system includes a memory device and a processing device operatively coupled to the memory device. The processing device performs operations including receiving a request to program data, storing the data by default in a first type of storage with multi-level memory cells having a first number of levels, and bypassing a second type of storage with fewer levels. Upon detecting a condition, the processing device transfers the data to a third type of storage with a greater number of levels than the first type. This method optimizes storage efficiency and performance by dynamically managing data storage based on the portion of user logical block addresses that contain user data.

## Claims

### Claim 1

A system comprising:
a memory device; and
a processing device, operatively coupled to the memory device, configured to perform operations comprising:
receiving a request to program data to the memory device;
storing, by default, the data to a first type of storage comprising multi-level memory cells having a first number of levels bypassing a second type of storage comprising memory cells with fewer levels than the first number of levels; and
responsive to detecting that a condition is satisfied, transferring the data from the first type of storage to a third type of storage comprising cells having a second number of levels greater than the first number of levels.

### Claim 2 (depends on 1)

The system of claim 1, wherein the first type of storage comprises triple-level cell (TLC) memory cells, wherein the second type of storage comprises single-level cell (SLC) memory cells, and wherein the third type of storage comprises quad-level cell (QLC) memory cells.

### Claim 3 (depends on 1)

The system of claim 1, wherein the condition is based on a predefined logical saturation threshold.

### Claim 4 (depends on 3)

The system of claim 3, the operations comprising:
accessing configuration data that specifies the predefined logical saturation threshold;
determining that a portion of user logical block addresses that contain user data in the first type of storage transgresses the predefined logical saturation threshold; and
in response to determining that the portion of user logical block addresses that contain user data in the first type of storage transgresses the predefined logical saturation threshold, detecting that the condition is satisfied.

### Claim 5 (depends on 4)

The system of claim 4, wherein the predefined logical saturation threshold is configurable.

### Claim 6 (depends on 1)

The system of claim 1, the operations comprising:
storing access patterns for the data stored in the first type of storage;
determining whether the data includes hot data or cold data based on the access patterns; and
selectively transferring the data to the third type of storage based on determining whether the data includes the hot data or the cold data based on the access patterns.

### Claim 7 (depends on 6)

The system of claim 6, the operations comprising:
determining that a set of data stored in the first type of storage is accessed at a frequency or velocity that fails to correspond to a threshold; and
in response to determining that the set of data stored in the first type of storage is accessed at the frequency or velocity that fails to correspond to the threshold, determining that the set of data comprises the cold data.

### Claim 8 (depends on 7)

The system of claim 7, the operations comprising:
transferring the cold data to the third type of storage while retaining a remaining portion of the data in the first type of storage.

### Claim 9 (depends on 8)

The system of claim 8, the operations comprising:
determining that a second set of data stored in the first type of storage is accessed at a second frequency or velocity that transgresses the threshold; and
in response to determining that the second set of data stored in the first type of storage is accessed at the frequency or velocity that transgresses the threshold, determining that the set of data comprises the hot data, the remaining portion comprising the hot data.

### Claim 10 (depends on 6)

The system of claim 6, the operations comprising:
determining that a set of data stored in the first type of storage is associated with an age that transgresses a threshold; and
in response to determining that the set of data stored in the first type of storage is associated with the age that transgresses the threshold, determining that the set of data comprises the cold data.

### Claim 11 (depends on 10)

The system of claim 10, the operations comprising:
transferring the cold data to the third type of storage while retaining a remaining portion of the data in the first type of storage.

### Claim 12 (depends on 1)

The system of claim 1, wherein the system is configured to operate in a datacenter environment with multiple solid-state drives.

### Claim 13 (depends on 1)

The system of claim 1, wherein the system is configured to operate in a consumer device environment.

### Claim 14 (depends on 1)

The system of claim 1, the operations comprising:
storing additional data in the second type of storage instead of the first type of storage in response to detecting a high-speed condition.

### Claim 15 (depends on 14)

The system of claim 14, wherein the high-speed condition comprises an asynchronous power loss (APL).

### Claim 16 (depends on 14)

The system of claim 14, wherein the high-speed condition comprises initialization of the system.

### Claim 17 (depends on 1)

The system of claim 1, wherein the memory device comprises a three-dimensional (3D) NAND device.

### Claim 18 (depends on 1)

The system of claim 1, the operations comprising:
determining that configuration information associated with the memory device indicates that the memory device is to program data by default to the first type of storage instead of the second type of storage.

### Claim 19

At least one non-transitory machine-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to perform operations comprising:
receiving a request to program data to a memory device;
storing, by default, the data to a first type of storage comprising multi-level memory cells having a first number of levels bypassing a second type of storage comprising memory cells with fewer levels than the first number of levels; and
responsive to detecting that a condition is satisfied, transferring the data from the first type of storage to a third type of storage comprising cells having a second number of levels greater than the first number of levels.

### Claim 20

A method comprising:
receiving a request to program data to a memory device;
storing, by default, the data to a first type of storage comprising multi-level memory cells having a first number of levels bypassing a second type of storage comprising memory cells with fewer levels than the first number of levels; and
responsive to detecting that a condition is satisfied, transferring the data from the first type of storage to a third type of storage comprising cells having a second number of levels greater than the first number of levels.
