# US 12,762,016 B2 · Dynamic error correction protection with rain protection for memory system

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

- Number: US 12,762,016 B2
- Document ID: US12762016B2
- Status: Granted
- Kind: B2
- Application number: 19/170,534
- Filed: 2025-04-04
- Published: 2026-10-08
- Granted: 2026-10-13
- Earliest claimed: 2025-04-04
- Assignees: Micron Technology, Inc.
- Applicants: Micron Technology, Inc.
- Inventors: Phong Sy Nguyen
- Web page: https://patentgrep.com/patent/US12762016B2

## CPC

- G06F 11/108: {Parity data distribution in semiconductor storages, e.g. in SSD}
- G06F 11/1096: {Parity calculation or recalculation after configuration or reconfiguration of the system}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Various example embodiments provide for dynamic error correction with redundant array of independent NAND-type memory devices (RAIN) protection for a memory system, such as a memory sub-system. In particular, various example embodiments provide one or more different solutions for implementing concurrent use of dynamic exclusively OR (dynamicXOR) protection and RAIN protection on a memory device while avoiding the challenges/conflicts suffered by conventional memory systems.

## Claims

### Claim 1

A system comprising:
a memory device; and
a processing device, operatively coupled to the memory device, configured to perform operations comprising:
storing host data across non-parity codewords of a select wordline across a plurality of planes of the memory device;
for an individual plane of the plurality of planes:
generating select dynamic exclusively OR (dynamicXOR) parity data for a portion of the host data stored across non-parity codewords in the select wordline on the individual plane; and
storing the select dynamicXOR parity data in a dynamicXOR parity codeword of the select wordline on the individual plane;
generating select redundant array of independent NAND-type memory devices (RAIN) parity data for non-parity codewords of the select wordline across the plurality of planes while excluding use of dynamicXOR parity codewords of the select wordline in the generating of the select RAIN parity data;
storing the select RAIN parity data across non-parity codewords of the select wordline on a designated RAIN parity plane of the memory device;
generating additional dynamicXOR parity data for the select RAIN parity data stored across RAIN parity codewords in the select wordline on the designated RAIN parity plane; and
storing the additional dynamicXOR parity data in a dynamicXOR parity codeword of the select wordline on the designated RAIN parity plane.

### Claim 2 (depends on 1)

The system of claim 1, wherein the dynamicXOR parity codeword of the select wordline on the individual plane is a last codeword of a last page of the select wordline on the individual plane.

### Claim 3 (depends on 1)

The system of claim 1, wherein each page comprises four codewords.

### Claim 4 (depends on 1)

The system of claim 1, wherein the plurality of planes comprises planes across one or more memory die of the memory device, wherein each memory die comprises triple-level cells (TLCs), and wherein the select wordline on each plane comprises a lower page (LP), an upper page (UP), and an extra page (XP).

### Claim 5 (depends on 1)

The system of claim 1, wherein the plurality of planes comprises planes across one or more memory die of the memory device, wherein each memory die comprises quad-level cells (QLCs), and wherein the select wordline on each plane comprises a lower page (LP), an upper page (UP), an extra page (XP), and top page (TP).

### Claim 6 (depends on 1)

The system of claim 1, wherein the generating of the select dynamicXOR parity data for the portion of the host data stored across the non-parity codewords in the select wordline on the individual plane comprises:
exclusive OR-ing (XORing) together the non-parity codewords in the select wordline on the individual plane to generate the select dynamicXOR parity data.

### Claim 7 (depends on 1)

The system of claim 1, where the generating of the select RAIN parity data for non-parity codewords of the select wordline across the plurality of planes while excluding dynamicXOR parity codewords of the select wordline comprises:
generating RAIN parity data for Nth non-parity codewords of the select wordline across the plurality of planes based on a Nth non-parity codeword of the select wordline on each plane of the plurality of planes, the storing of the select RAIN parity data across non-parity codewords of the select wordline on the designated RAIN parity plane of the memory device comprising:
storing the RAIN parity data for the Nth non-parity codewords in a Nth non-parity codeword of the select wordline on the designated RAIN parity plane.

### Claim 8 (depends on 1)

The system of claim 1, wherein the memory device comprises a plurality of non-parity memory die and a parity memory die, wherein the plurality of planes is a Mth plurality of non-parity memory die that comprises a Mth plane of each non-parity memory die of the plurality of non-parity memory die, and wherein the designated RAIN parity plane is a Mth plane of the parity memory die.

### Claim 9 (depends on 1)

The system of claim 1, wherein the plurality of planes comprises a first plane through a (M−1)th plane across a first memory die through a Nth memory die of the memory device, wherein the designated RAIN parity plane is a Mth plane, and wherein the Mth plane is part of the Nth memory die.

### Claim 10

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:
storing host data across non-parity codewords of a select wordline across planes of a plurality of non-parity memory die of a memory device;
for an individual memory die of the plurality of non-parity memory die:
generating select dynamic exclusively OR (dynamicXOR) parity data for a portion of the host data stored across non-parity codewords in the select wordline on the individual memory die; and
storing the select dynamicXOR parity data in a set of dynamicXOR parity codewords of the select wordline on the individual memory die;
generating Mth redundant array of independent NAND-type memory devices (RAIN) parity data for codewords of the select wordline on a Mth plane of each non-parity memory die of the plurality of non-parity memory die; and
storing the Mth RAIN parity data across codewords of the select wordline on a Mth plane of a parity memory die of the memory device.

### Claim 11 (depends on 10)

The at least one non-transitory machine-readable storage medium of claim 10, wherein the set of dynamicXOR parity codewords on the individual memory die comprises a set of codewords on a last plane of the individual memory die.

### Claim 12 (depends on 10)

The at least one non-transitory machine-readable storage medium of claim 10, wherein the set of dynamicXOR parity codewords on the individual memory die comprises a set of codewords of a last page of a last plane of the individual memory die.

### Claim 13 (depends on 10)

The at least one non-transitory machine-readable storage medium of claim 10, wherein the select wordline comprises multiple pages, and wherein each page comprises four codewords.

### Claim 14 (depends on 10)

The at least one non-transitory machine-readable storage medium of claim 10, wherein the generating of the select dynamicXOR parity data for the portion of the host data stored across the non-parity codewords in the select wordline on the individual memory die comprises:
exclusive OR-ing (XORing) together the non-parity codewords in the select wordline on the individual memory die to generate the select dynamicXOR parity data.

### Claim 15 (depends on 10)

The at least one non-transitory machine-readable storage medium of claim 10, wherein the operations comprise:
generating (M+1)th RAIN parity data for codewords of the select wordline on a (M+1)th plane of each non-parity memory die of the plurality of non-parity memory die; and
storing the (M+1)th RAIN parity data across codewords of the select wordline on a (M+1)th plane of the parity memory die.

### Claim 16 (depends on 10)

The at least one non-transitory machine-readable storage medium of claim 10, wherein the set of dynamicXOR parity codewords on the individual memory die comprises a set of codewords on a last plane of the individual memory die, and wherein the operations comprise:
generating select RAIN parity data for codewords of the select wordline on the last plane of each non-parity memory die of the plurality of non-parity memory die; and
storing the select RAIN parity data across codewords of the select wordline on a last plane of the parity memory die.

### Claim 17

A method comprising:
storing host data across non-parity codewords of a select wordline across a plurality of planes of a plurality of memory die of a memory device, the plurality of memory die comprises a first memory die through Nth memory die;
for an individual memory die of the first memory die through a (N−1)th memory die of the plurality of memory die:
generating select dynamic exclusively OR (dynamicXOR) parity data for a portion of the host data stored across non-parity codewords in the select wordline on the individual memory die; and
storing the select dynamicXOR parity data in a set of dynamicXOR parity codewords of the select wordline on the individual memory die;
generating select redundant array of independent NAND-type memory devices (RAIN) parity data for codewords of the select wordline across the plurality of planes including dynamicXOR parity codewords of the select wordline; and
storing the select RAIN parity data across codewords of the select wordline on a designated RAIN parity plane of the Nth memory die.

### Claim 18 (depends on 17)

The method of claim 17, wherein the set of dynamicXOR parity codewords on the individual memory die comprises a set of codewords of a last page of a last plane of the individual memory die.

### Claim 19 (depends on 17)

The method of claim 17, wherein the generating of the select dynamicXOR parity data for the portion of the host data stored across the non-parity codewords in the select wordline on the individual memory die comprises:
exclusive OR-ing (XORing) together the non-parity codewords in the select wordline on the individual memory die to generate the select dynamicXOR parity data.

### Claim 20 (depends on 17)

The method of claim 17, wherein the plurality of planes comprises a first plane through a (M−1)th plane, wherein the designated RAIN parity plane is a Mth plane, and wherein the Mth plane is part of the Nth memory die.
