# US 12,119,068 B2 · Program continuation strategies after memory device power loss

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

- Number: US 12,119,068 B2
- Document ID: US12119068B2
- Status: Granted
- Kind: B2
- Application number: 17/675,241
- Filed: 2022-02-18
- Published: 2023-08-24
- Granted: 2024-10-15
- Earliest claimed: 2022-02-18
- Assignees: Micron Technology, Inc.
- Applicants: Micron Technology, Inc.
- Inventors: Gary F. Besinga; Vamsi Pavan Rayaprolu; Steven Michael Kientz; Renato C. Padilla
- Web page: https://patentgrep.com/patent/US12119068B2

## CPC

- G11C 16/10: Programming or data input circuits
- G11C 16/3459: {Circuits or methods to verify correct programming of nonvolatile memory cells}
- G06F 12/0215: {with look ahead addressing means}
- G11C 16/102: {External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators}
- G11C 16/26: Sensing or reading circuits; Data output circuits
- G11C 16/3404: {Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells}
- G11C 16/3418: {Disturbance prevention or evaluation; Refreshing of disturbed memory data}
- G11C 16/349: {Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles}
- G06F 2212/1032: Reliability improvement, data loss prevention, degraded operation etc
- G11C 5/143: {Detection of memory cassette insertion or removal; Continuity checks of supply or ground lines; Detection of supply variations, interruptions or levels (G11C5/148 takes precedence); Switching between alternative supplies (G11C5/141 takes precedence)}
- G11C 16/0483: {comprising cells having several storage transistors connected in series}
- G11C 2211/5648: Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant
- G11C: STATIC STORES (semiconductor memory devices H10B)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system includes a memory device and a processing device, operatively coupled with the memory device, to perform operations including detecting a power up event of the memory device, responsive to detecting the power up event, selecting an open block of the memory device, wherein the open block comprises a set of pages, determining, based at least in part on an analysis of the set of pages, whether the open block is valid for programming, and responsive to determining that the open block is valid for programming, keeping the open block open for programming.

## Claims

### Claim 1

A system comprising:
a memory device; and
a processing device, operatively coupled with the memory device, to perform operations comprising:
detecting a power up event of the memory device;
responsive to detecting the power up event, selecting an open block of the memory device, wherein the open block comprises a set of pages;
analyzing the set of pages to obtain at least one of:
at least one charge loss metric indicative of charge loss associated with a set of programmed pages of the set of pages, the set of programmed pages comprising at least one of: an oldest written page of the open block, or at least one first sample page associated with at least one respective individual charge loss metric; or
at least one charge gain metric indicative of charge gain associated with a set of erased pages of the set of pages, the set of erased pages comprising at least one of: an initial erased page of the open block, or at least one second sample page associated with at least one respective individual charge gain metric;
determining, based on at least one of the at least one charge loss metric or the at least one charge gain metric, whether the open block is valid for programming; and
responsive to determining that the open block is valid for programming, keeping the open block open for programming.

### Claim 2 (depends on 1)

The system of claim 1, wherein determining whether the open block is valid for programming further comprises:
determining whether the at least one charge loss metric satisfies at least one charge loss threshold condition.

### Claim 3 (depends on 2)

The system of claim 2, wherein determining whether the at least one charge loss metric satisfies the at least one charge loss threshold condition comprises at least one of:
determining whether an amount of charge loss is less than or equal to a threshold amount of charge loss;
determining whether a number of cells that have a threshold voltage above a charge loss detection read level is greater than or equal to a threshold number of cells; or
determining whether a position difference related to movement of a center of a valley of an erased state threshold voltage distribution is greater than or equal to a threshold position difference.

### Claim 4 (depends on 1)

The system of claim 1, wherein the at least one charge loss metric is a function of each respective individual charge loss metric.

### Claim 5 (depends on 1)

The system of claim 1, wherein determining whether the open block is valid for programming further comprises:
determining whether the at least one charge gain metric satisfies at least one charge gain threshold condition.

### Claim 6 (depends on 5)

The system of claim 5, wherein determining whether the at least one charge gain metric satisfies the at least one charge gain threshold condition comprises at least one of:
determining whether an amount of charge gain is less than or equal to a threshold amount of charge gain;
determining whether a number of cells that have a threshold voltage below a charge gain detection read level is less than or equal to a threshold number of cells; or
determining whether a position difference related to movement of a center of a valley of an erased state threshold voltage distribution is greater than or equal to a threshold position difference.

### Claim 7 (depends on 1)

The system of claim 1, wherein the at least one charge gain metric is a function of each respective individual charge gain metric.

### Claim 8

A method comprising:
detecting, by a processing device, a power up event of a memory device;
responsive to detecting the power up event, selecting, by the processing device, an open block of the memory device, wherein the open block comprises a set of pages;
analyzing, by the processing device, the set of pages to obtain at least one of:
at least one charge loss metric indicative of charge loss associated with a set of programmed pages of the set of pages, the set of programmed pages comprising at least one of: an oldest written page of the open block, or at least one first sample page associated with at least one respective individual charge loss metric; or
at least one charge gain metric indicative of charge gain associated with a set of erased pages of the set of pages, the set of erased pages comprising at least one of: an initial erased page of the open block, or at least one second sample page associated with at least one respective individual charge gain metric;
determining, by the processing device based on at least one of the at least one charge loss metric or the at least one charge gain metric, whether the open block is valid for programming; and
responsive to determining that the open block is invalid for programming, abandoning, by the processing device, the open block.

### Claim 9 (depends on 8)

The method of claim 8, wherein determining whether the open block is valid for programming further comprises:
determining whether the at least one charge loss metric satisfies at least one charge loss threshold condition.

### Claim 10 (depends on 9)

The method of claim 9, wherein determining whether the at least one charge loss metric satisfies the at least one charge loss threshold condition comprises at least one of:
determining whether an amount of charge loss is less than or equal to a threshold amount of charge loss;
determining whether a number of cells that have a threshold voltage above a charge loss detection read level is greater than or equal to a threshold number of cells; or
determining whether a position difference related to movement of a center of a valley of an erased state threshold voltage distribution is greater than or equal to a threshold position difference.

### Claim 11 (depends on 8)

The method of claim 8, wherein the at least one charge loss metric is a function of each respective individual charge loss metric.

### Claim 12 (depends on 8)

The method of claim 8, wherein determining whether the open block is valid for programming further comprises:
determining whether the at least one charge gain metric satisfies at least one charge gain threshold condition.

### Claim 13 (depends on 12)

The method of claim 12, wherein determining whether the at least one charge gain metric satisfies the at least one charge gain threshold condition comprises at least one of:
determining whether an amount of charge gain is less than or equal to a threshold amount of charge gain;
determining whether a number of cells that have a threshold voltage below a charge gain detection read level is less than or equal to a threshold number of cells; or
determining whether a position difference related to movement of a center of a valley of an erased state threshold voltage distribution is greater than or equal to a threshold position difference.

### Claim 14 (depends on 8)

The method of claim 8, wherein the charge gain metric is a function of each respective individual charge gain metric.

### Claim 15

A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to perform operations comprising:
detecting a power up event of a memory device;
responsive to detecting the power up event, selecting an open block of the memory device, wherein the open block comprises a set of pages, and wherein the set of pages comprises at least one of:
a set of programmed pages comprising at least one of: an oldest written page of the open block, or at least one first sample page associated with at least one respective individual charge loss metric; or
a set of erased pages comprising at least one of: an initial erased page of the open block, or at least one second sample page associated with at least one respective individual charge gain metric;
analyzing the set of pages to obtain at least one of: at least one charge loss metric indicative of charge loss associated with the set of programmed pages or at least one charge gain metric indicative of charge gain associated with the set of erased pages;
determining, based on at least one of the at least one charge loss metric or the at least one charge gain metric, whether the open block is valid for programming; and
responsive to determining that the open block is valid for programming, keeping the open block open for programming.

### Claim 16 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein:
the at least one charge loss metric is a function of each respective individual charge loss metric; and
the at least one charge gain metric is a function of each respective individual charge gain metric.

### Claim 17 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein determining whether the open block is valid for programming further comprises determining whether the at least one charge loss metric satisfies at least one charge loss threshold condition.

### Claim 18 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein determining whether the charge loss metric satisfies the charge loss threshold condition comprises at least one of:
determining whether an amount of charge loss is less than or equal to a threshold amount of charge loss;
determining whether a number of cells that have a threshold voltage above a charge loss detection read level is greater than or equal to a threshold number of cells; or
determining whether a position difference related to movement of a center of a valley of an erased state threshold voltage distribution is greater than or equal to a threshold position difference.

### Claim 19 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein determining whether the open block is valid for programming further comprises determining whether the at least one charge gain metric satisfies at least one charge gain threshold condition.

### Claim 20 (depends on 19)

The non-transitory computer-readable storage medium of claim 19, wherein determining whether the charge gain metric satisfies the charge gain threshold condition comprises at least one of:
determining whether an amount of charge gain is less than or equal to a threshold amount of charge gain;
determining whether a number of cells that have a threshold voltage below a charge gain detection read level is less than or equal to a threshold number of cells; or
determining whether a position difference related to movement of a center of a valley of an erased state threshold voltage distribution is greater than or equal to a threshold position difference.
