# US 10,871,900 B2 · Memory system and method of controlling memory system

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

- Number: US 10,871,900 B2
- Document ID: US10871900B2
- Status: Granted
- Kind: B2
- Application number: 16/044,257
- Filed: 2018-07-24
- Published: 2018-12-13
- Granted: 2020-12-22
- Earliest claimed: 2010-09-24
- Assignees: Toshiba Memory Corporation
- Applicants: Toshiba Memory Corporation
- Inventors: Hiroshi Yao; Shinichi Kanno; Kazuhiro Fukutomi
- Web page: https://patentgrep.com/patent/US10871900B2

## CPC

- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0634: {by changing the state or mode of one or more devices}
- G06F 3/0641: {De-duplication techniques}
- 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 12/0246: {in block erasable memory, e.g. flash memory}
- G06F 2212/1016: Performance improvement
- G06F 2212/1024: Latency reduction
- G06F 2212/1044: Space efficiency improvement
- G06F 2212/214: Solid state disk
- G06F 2212/7201: Logical to physical mapping or translation of blocks or pages
- G06F 2212/7205: Cleaning, compaction, garbage collection, erase control
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

According to one embodiment, a memory system comprises a non-volatile semiconductor memory having a plurality of first storage areas, the first storage areas being capable of including one or more second storage areas, a plurality of third storage areas in which data is written in a first mode, and a plurality of fourth storage areas in which data is written in a second mode, the first mode being different from the second mode, and processing circuitry. The processing circuitry performs acquiring the one or more second storage areas from the plurality of first storage areas, selecting a plurality of storage areas from the plurality of third storage areas or from the plurality of fourth storage areas based on a rate of valid date in fifth storage area, the fifth storage area being the plurality of fourth storage areas, the rate of valid data in the fifth storage area being a rate of the total amount of valid data stored in the fifth storage area with respect to the total capacity of the fifth storage area, and writing the valid data stored in the selected plurality of storage areas in the acquired one or more second storage areas using the second mode.

## Claims

### Claim 1

A memory system comprising:
a non-volatile semiconductor memory having a plurality of first storage areas, the first storage areas being capable of including one or more second storage areas, a plurality of third storage areas in which data is written in a first mode, and a plurality of fourth storage areas in which data is written in a second mode, the number of bits that can be written to one storage area in the second mode being greater than that in the first mode; and
processing circuitry configured to:
acquire a destination storage area from the one or more second storage areas;
compare total number of the third storage areas and a first threshold value to determine whether or not the total number of the third storage areas is greater than the first threshold value;
when the total number of the third storage areas is greater than the first threshold value, compare total rate of valid data of the third storage areas and a second threshold value to determine whether or not the total rate of valid data of the third storage areas is smaller than the second threshold value;
select a source storage area from the plurality of fourth storage areas when the total number of the third storage areas is greater than the first threshold value and when the total rate of valid data of the third storage areas is smaller than the second threshold value;
select a source storage area from the plurality of third storage areas when the total number of the third storage areas is equal to or smaller than the first threshold value or when the total rate of valid data of the third storage areas is equal to or greater than the second threshold value; and
move the valid data stored in the selected source storage area into the acquired destination storage area using the second mode.

### Claim 2 (depends on 1)

The system according to claim 1, wherein the processing circuitry is further configured to count the total number of the third storage areas.

### Claim 3 (depends on 1)

The system according to claim 1, wherein a maximum write data amount with respect to one storage area in the second mode is greater than that in the first mode.

### Claim 4 (depends on 1)

The system according to claim 1, further comprising a plurality of the semiconductor memories,
wherein the processing circuitry is further configured to execute parallel data transfer with respect to the plurality of semiconductor memories.

### Claim 5 (depends on 1)

The system according to claim 1, wherein the processing circuitry is further configured to:
select the plurality of storage areas at one time, and
acquire the one or more second storage areas at one time, the one or more second storage areas being one or more write targets of the valid data stored in the selected storage areas.

### Claim 6 (depends on 1)

The system according to claim 1, wherein
the processing circuitry is further configured to acquire the one or more second storage areas one by one, the one or more second storage areas being one or more write targets of the valid data stored in the selected storage areas.

### Claim 7 (depends on 1)

The system according to claim 1, wherein all of the plurality of first storage areas accept write operation in both of the first mode and the second mode.

### Claim 8 (depends on 1)

The system according to claim 1, wherein the processing circuitry is further configured to perform the used block reduction processing in parallel with the write operation in response to a request from a host device.

### Claim 9 (depends on 1)

The system according to claim 1, wherein
the semiconductor memory is an MLC (Multi-Level Cell) flash memory including a plurality of storage cells,
the MLC flash memory stores therein 1-bit data per cell or multiple-bit data per cell,
in the first mode, 1-bit data per cell is written to the MLC flash memory, and
in the second mode, multiple-bit data per cell is written to the MLC flash memory.

### Claim 10 (depends on 1)

The system according to claim 1, wherein
the third storage areas are an areas which including single-level cell (SLC) blocks, and
the fourth storage areas are an areas which including multi-level cell (MLC) blocks.

### Claim 11 (depends on 1)

The system according to claim 1, wherein a write speed or a read speed with respect to one storage area in the second mode is slower than that in the first mode.

### Claim 12 (depends on 11)

The system according to claim 11, further comprising an address mapping table configured to manage a correspondence relationship between the logical address and the physical address,
wherein the address mapping table includes a reverse table capable of searching a logical address of each entry based on a storage position of each entry.

### Claim 13 (depends on 1)

The memory system according to claim 1, wherein
valid data are not included in the one or more second storage areas,
the plurality of third storage areas are areas where data write requested from a host is written,
the plurality of fourth storage areas are areas where data having been stored in the third storage areas is rewritten,
the processing circuitry is further configured to acquire the one or more second storage areas based on first management information,
the valid data is data stored in a physical address associated with a logical address,
the first management information indicates which area among the plurality of first storage areas is the second storage area,
second management information indicates which area among the plurality of first storage areas is the third storage area, and
third management information indicates which area among the plurality of first storage areas is the fourth storage area.

### Claim 14 (depends on 13)

The system according to claim 13, further comprising:
a first storage that stores the first management information;
a second storage that stores the second management information; and
a third storage that stores the third management information,
wherein the logical address is an address specified by the host, and
the physical address indicates a storage position of data in the storage areas of the semiconductor memory.
