# US 12,182,418 B2 · Memory controller, memory system and operation method thereof

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

- Number: US 12,182,418 B2
- Document ID: US12182418B2
- Status: Granted
- Kind: B2
- Application number: 18/090,060
- Filed: 2022-12-28
- Published: 2024-05-23
- Granted: 2024-12-31
- Earliest claimed: 2022-11-18
- Assignees: Yangtze Memory Technologies Co., Ltd.
- Applicants: Yangtze Memory Technologies Co., Ltd.
- Inventors: Zhen Huang; Kang Li
- Web page: https://patentgrep.com/patent/US12182418B2

## CPC

- G06F 3/0619: {in relation to data integrity, e.g. data losses, bit errors}
- G06F 3/064: {Management of blocks}
- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A memory controller, a memory system and an operation method thereof are provided. The memory controller can be used to control a memory device, and be configured to search, according to the number of erase cycles of the memory block, for a read retry table corresponding to a range to which the number of erase cycles belongs, when reading fails. The read retry table can include a plurality of read bias groups. The memory controller can further be configured to perform read retry operations on the memory block according to the read bias groups in the read retry table. The read retry table corresponding to the range to which the number of erase cycles of the memory block belongs may be found by index searching with the number of erase cycles, based on the retry read voltages in the optimal read bias group that the memory device has had initially.

## Claims

### Claim 1

A memory controller for controlling a memory device, the memory device comprising a plurality of memory blocks for storing data, the memory controller being configured to:
search, according to a number of erase cycles of the memory blocks, for a read retry table corresponding to a range to which the number of erase cycles belongs, when reading fails, the read retry table including a plurality of read bias groups;
perform read retry operations on the memory blocks according to the plurality of read bias groups in the read retry table; and
fetch a read retry table corresponding to a storage status of the memory blocks within the range to which the number of erase cycles belongs, according to the storage status.

### Claim 2 (depends on 1)

The memory controller according to claim 1, wherein the number of erase cycles is classified into an initial stage, an early stage, and an end stage according to the numbers of erase cycles of the plurality of memory blocks.

### Claim 3 (depends on 1)

The memory controller according to claim 1, wherein the storage status is classified into single-level storage status and multi-level storage status according to a programming mode of the memory blocks.

### Claim 4 (depends on 3)

The memory controller according to claim 3, wherein the multi-level storage status further comprising multi-stage full storage status and multi-stage under-full storage status that are obtained by classifying according to a stored amount of the memory blocks.

### Claim 5 (depends on 1)

The memory controller according to claim 1, wherein the memory controller is further configured to:
fetch a read retry table corresponding to a test item of the memory blocks within the range to which the number of erase cycles belongs, according to the test item.

### Claim 6 (depends on 1)

The memory controller according to claim 1, wherein the memory controller is further configured to:
search, according to an average value of multiple numbers of erase cycles of the plurality of memory blocks, for a read retry table corresponding to a range to which the average value of the multiple numbers of erase cycles belongs, when reading fails.

### Claim 7 (depends on 1)

The memory controller according to claim 1, wherein the read bias groups include read voltage parameters of different word lines.

### Claim 8 (depends on 1)

The memory controller according to claim 1, wherein the memory controller is further configured to:
search for a read retry table cluster corresponding to the range to which the number of erase cycles belongs; and
sequentially load, based on a sequential order of storage arrangement of a plurality of read retry tables in the read retry table cluster, the read retry tables in the read retry table cluster to perform the read retry operations.

### Claim 9 (depends on 1)

The memory controller according to claim 1, wherein the memory controller is further configured to:
search for a read retry table cluster corresponding to the range to which the number of erase cycles belongs; and
sequentially load, based on a sequential order of most-recently-use time of a plurality of read retry tables in the read retry table cluster, the read retry tables in the read retry table cluster to perform the read retry operations.

### Claim 10 (depends on 1)

The memory controller according to claim 1, wherein the memory controller is further configured to:
search for a read retry table cluster corresponding to the range to which the number of erase cycles belongs; and
sequentially load, based on a sequential order of read success degrees for a plurality of read retry tables in the read retry table cluster upon performing read operations, the read retry tables in the read retry table cluster to perform the read retry operations.

### Claim 11

A memory system, comprising:
a memory device including a plurality of memory blocks for storing data, the memory block including a plurality of memory cells; and
a memory controller for controlling the memory device, wherein the memory controller is configured to:
search, according to a number of erase cycles of the memory blocks, for a read retry table corresponding to a range to which the number of erase cycles belongs, when reading fails, the read retry table including a plurality of read bias groups;
perform read retry operations on the memory block according to the plurality of read bias groups in the read retry table; and
fetch a read retry table corresponding to a storage status of the memory blocks within the range to which the number of erase cycles belongs, according to the storage status.

### Claim 12 (depends on 11)

The memory system according to claim 11, wherein the number of erase cycles is classified into an initial stage, an early stage, and an end stage according to the numbers of erase cycles of the plurality of memory blocks.

### Claim 13

An operation method for a memory system, the memory system comprising a memory device and a memory controller, the memory device including a plurality of memory blocks for storing data, the memory block including a plurality of memory cells, the memory controller being configured to control the memory device, the operation method comprising:
searching, by the memory controller and according to a number of erase cycles of the memory block, for a read retry table corresponding to a range to which the number of erase cycles belongs, when reading fails, the read retry table including a plurality of read bias groups;
performing, by the memory controller, read retry operations on the memory block according to the plurality of read bias groups in the read retry table; and
fetching a read retry table corresponding to a storage status of the memory blocks within the range to which the number of erase cycles belongs, according to the storage status.

### Claim 14 (depends on 13)

The operation method according to claim 13, wherein the number of erase cycles is classified into an initial stage, an early stage, and an end stage, according to the numbers of erase cycles of the plurality of memory blocks.

### Claim 15 (depends on 13)

The operation method according to claim 13, wherein the storage status is classified into single-level storage status and multi-level storage status according to a programming mode of the memory blocks, and the multi-level storage status further includes multi-stage full storage status and multi-stage under-full storage status that are obtained by classifying according to a stored amount of the memory blocks.

### Claim 16 (depends on 13)

The operation method according to claim 13, further comprising:
searching for a read retry table cluster corresponding to the range to which the number of erase cycles belongs; and
sequentially loading, based on a sequential order of storage arrangement of a plurality of read retry tables in the read retry table cluster, the read retry tables in the read retry table cluster to perform the read retry operations.

### Claim 17 (depends on 13)

The operation method according to claim 13, further comprising:
searching for a read retry table cluster corresponding to the range to which the number of erase cycles belong; and
sequentially loading, based on a sequential order of most-recently-use time of a plurality of read retry tables in the read retry table cluster, the read retry tables in the read retry table cluster to perform the read retry operations.

### Claim 18 (depends on 13)

The operation method according to claim 13, further comprising:
searching for a read retry table cluster corresponding to the range to which the number of erase cycles belongs; and
sequentially loading, based on a sequential order of read success degrees of a plurality of read retry tables in the read retry table cluster upon performing read operations, the read retry tables in the read retry table cluster to perform the read retry operations.

### Claim 19 (depends on 11)

The memory system of claim 11, wherein the memory controller is configured to:
fetch a read retry table corresponding to a test item of the memory blocks within the range to which the number of erase cycles belongs, according to the test item.

### Claim 20 (depends on 11)

The memory system of claim 11, wherein the memory controller is configured to:
search, according to an average value of multiple numbers of erase cycles of the plurality of memory blocks, for a read retry table corresponding to a range to which the average value of the multiple numbers of erase cycles belongs, when reading fails.
