# US 9,437,321 B2 · Error detection method

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

- Number: US 9,437,321 B2
- Document ID: US9437321B2
- Status: Granted
- Kind: B2
- Application number: 14/525,813
- Filed: 2014-10-28
- Published: 2016-04-28
- Granted: 2016-09-06
- Earliest claimed: 2014-10-28
- Assignees: SanDisk Technologies LLC
- Applicants: Sandisk Technologies Inc.
- Inventors: Huai-Yuan Tseng; Deepanshu Dutta
- Web page: https://patentgrep.com/patent/US9437321B2

## CPC

- G11C 16/3495: {Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically}
- G11C 11/5628: {Programming or writing circuits; Data input circuits}
- G11C 11/5635: {Erasing circuits}
- G11C 16/3422: {Circuits or methods to evaluate read or write disturbance in nonvolatile memory, without steps to mitigate the problem}
- G11C 16/349: {Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles}
- G11C 29/52: Protection of memory contents; Detection of errors in memory contents
- G11C 13/0004: {comprising amorphous/crystalline phase transition cells}
- G11C 13/0035: {Evaluating degradation, retention or wearout, e.g. by counting writing cycles}
- G11C 13/0064: {Verifying circuits or methods}
- G11C 13/0069: {Writing or programming circuits or methods}
- G11C 16/0483: {comprising cells having several storage transistors connected in series}
- G11C 2211/5621: Multilevel programming verification
- G11C 2211/5644: Multilevel memory comprising counting devices
- G11C: STATIC STORES (semiconductor memory devices H10B)

## Abstract

Methods for detecting and correcting defects in a memory array during a memory operation are described. The memory operation may comprise a programming operation or an erase operation. In some cases, a Control Gate Short to Substrate (CGSS) defect, in which a control gate of a NAND memory has been shorted to the substrate, may have a defect signature in which a word line shows a deviation in the number of programming loop counts associated with programming data into memory cells connected to the word line. The deviation in the number of programming loop counts may be detected by comparing a baseline programming loop count (e.g., derived from programming a set of one or more word lines prior to programming the word line with the CGSS defect) with a programming loop count associated with programming the word line with the CGSS defect.

## Claims

### Claim 1

A method, comprising:
programming a first set of data into a memory array, the memory array includes a first set of word lines, the programming a first set of data includes programming the first set of data into a first set of memory cells connected to the first set of word lines;
determining a baseline programming loop count based on programming the first set of data into the first set of memory cells;
programming a second set of data into the memory array subsequent to the programming a first set of data, the memory array includes a second set of word lines and a third set of word lines, the programming a second set of data includes programming the second set of data into a second set of memory cells connected to the second set of word lines;
determining a programming loop count associated with programming the second set of data into the second set of memory cells;
detecting a deviation from the baseline programming loop count based on the programming loop count, the detecting a deviation from the baseline programming loop count includes detecting that the programming loop count is greater than the baseline programming loop count by at least a threshold number of program/verify cycles; and
programming the second set of data into a third set of memory cells connected to the third set of word lines in response to detecting the deviation.

### Claim 2 (depends on 1)

The method of claim 1, wherein:
the programming loop count is less than a maximum programming loop count associated with detecting a hard word line failure.

### Claim 3 (depends on 1)

The method of claim 1, wherein:
the determining a baseline programming loop count includes determining an average number of program/verify cycles per word line for the first set of word lines.

### Claim 4 (depends on 1)

The method of claim 1, wherein:
the first set of word lines comprises a first word line;
the second set of word lines comprises a second word line adjacent to the first word line; and
the determining a baseline programming loop count includes determining a number of program/verify cycles for programming the first set of data into the first set of memory cells connected to the first word line.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
identifying a first defective word line within the first set of word lines; and
the determining a baseline programming loop count includes determining an average programming loop count for the first set of word lines that excludes a defective programming loop count associated with the first defective word line.

### Claim 6 (depends on 1)

The method of claim 1, wherein:
the programming loop count comprises a number of program/verify cycles that were required to program the second set of data into the second set of memory cells.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
acquiring a maximum programming loop count, the programming loop count is less than the maximum programming loop count; and
outputting an indication that the second set of memory cells connected to the second set of word lines is defective.

### Claim 8 (depends on 1)

The method of claim 1, wherein:
the first set of word lines comprises a set of one or more odd numbered word lines that were programmed prior to programming the second set of data into the second set of memory cells.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
determining a number of erase cycles that have occurred to the second set of memory cells connected to the second set of word lines; and
setting the threshold number of program/verify cycles based on the number of erase cycles.

### Claim 10 (depends on 1)

The method of claim 1, wherein:
the detecting a deviation from the baseline programming loop count includes detecting the deviation during a programming operation in the field.

### Claim 11 (depends on 1)

The method of claim 1, wherein:
the memory array comprises a non-volatile memory that is monolithically formed in one or more physical levels of memory cells having active areas disposed above a silicon substrate, the non-volatile storage system includes circuitry associated with the operation of the memory array.

### Claim 12 (depends on 1)

The method of claim 1, wherein:
the memory array comprises a three-dimensional memory array;
the first set of word lines comprises a plurality of word lines; and
the second set of word lines comprises a single word line.

### Claim 13

A system, comprising:
a memory array, the memory array includes a first set of word lines and a second set of word lines; and
one or more managing circuits in communication with the memory array, the one or more managing circuits configured to program a first set of data into a first set of memory cells connected to the first set of word lines, the one or more managing circuits configured to determine a baseline programming loop count based on programming the first set of data into the first set of memory cells, the one or more managing circuits configured to program a second set of data into a second set of memory cells connected to the second set of word lines subsequent to programming the first set of data into the first set of memory cells, the one or more managing circuits configured to determine a programming loop count associated with programming the second set of data into the second set of memory cells, the one or more managing circuits configured to detect a deviation from the baseline programming loop count based on the programming loop count, the one or more managing circuits configured to program the second set of data into a third set of memory cells connected to a third set of word lines in response to detecting the deviation, the one or more managing circuits configured to detect the deviation if the programming loop count is greater than the baseline programming loop count by at least a threshold number of program/verify cycles.

### Claim 14 (depends on 13)

The system of claim 13, wherein:
the threshold number of program/verify cycles is set based on a number of erase cycles that have occurred to the second set of memory cells connected to the second set of word lines.

### Claim 15 (depends on 13)

The system of claim 13, wherein:
the one or more managing circuits configured to determine an average number of program/verify cycles per word line for the first set of word lines, the one or more managing circuits configured to determine the baseline programming loop count based on the average number of program/verify cycles per word line for the first set of word lines.

### Claim 16 (depends on 13)

The system of claim 13, wherein:
the first set of word lines comprises a first word line;
the second set of word lines comprises a second word line adjacent to the first word line; and
the one or more managing circuits configured to determine a number of program/verify cycles for programming the first set of data into the first set of memory cells connected to the first word line, the one or more managing circuits configured to determine the baseline programming loop count based on the number of program/verify cycles for programming the first set of data into the first set of memory cells connected to the first word line.

### Claim 17 (depends on 13)

The system of claim 13, wherein:
the memory array comprises a three-dimensional memory array.

### Claim 18

An apparatus, comprising:
a memory array including a first word line and a second word line; and
a control circuit configured determine a baseline programming loop count for programming a first set of data into memory cells of the first word line and determine a programming loop count associated with programming a second set of data into memory cells of the second word line, the control circuit configured to program the second set of data into a third set of memory cells in response to detecting that the programming loop count is greater than the baseline programming loop count by at least a threshold number of program/verify cycles.

### Claim 19 (depends on 18)

The apparatus of claim 18, wherein:
the programming loop count is less than a maximum programming loop count associated with detecting a hard word line failure for the second word line.

### Claim 20 (depends on 18)

The apparatus of claim 18, wherein:
the control circuit sets the threshold number of program/verify cycles based on a number of erase cycles that have occurred to the second set of memory cells.
