Memory system and method of controlling nonvolatile memory
First Claim
Patent Images
1. A memory system comprising:
- a nonvolatile memory including a plurality of blocks; and
a controller configured toupon detecting a number of free blocks among the plurality of blocks being less than a first threshold, execute a first processing, the first processing including reading valid data from a plurality of first blocks among the plurality of blocks and writing the read valid data into a first free block among the free blocks, the first block including valid data and invalid data, each of the free blocks not including valid data,upon detecting the number of the free blocks being less than a second threshold, execute a second processing, the second processing including reading valid data included in one first second block among the plurality of blocks and writing the read valid data and at least a part of first data into a second free block among the free blocks, the second block including valid data and invalid data, the first data being write data specified by a first command, the first command being a write command received from a host, the second threshold being smaller than the first threshold.
5 Assignments
0 Petitions
Accused Products
Abstract
According to one embodiment, when a first command and first data are received from a host, and in a case where the number of free blocks is less than a first threshold, a controller executes a first processing. The first processing includes reading valid data included in one first block that includes the valid data and invalid data and writing the read valid data and at least a part of write data specified by the write command into the free block.
-
Citations
20 Claims
-
1. A memory system comprising:
-
a nonvolatile memory including a plurality of blocks; and a controller configured to upon detecting a number of free blocks among the plurality of blocks being less than a first threshold, execute a first processing, the first processing including reading valid data from a plurality of first blocks among the plurality of blocks and writing the read valid data into a first free block among the free blocks, the first block including valid data and invalid data, each of the free blocks not including valid data, upon detecting the number of the free blocks being less than a second threshold, execute a second processing, the second processing including reading valid data included in one first second block among the plurality of blocks and writing the read valid data and at least a part of first data into a second free block among the free blocks, the second block including valid data and invalid data, the first data being write data specified by a first command, the first command being a write command received from a host, the second threshold being smaller than the first threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of controlling a nonvolatile memory including a plurality of blocks, the method comprising:
-
upon detecting a number of free blocks among the plurality of blocks being less than a first threshold, executing a first processing, the first processing including reading valid data from a plurality of first blocks among the plurality of blocks and writing the read valid data into a first free block among the free blocks, the first block including valid data and invalid data, each of the free blocks not including valid data, upon detecting the number of the free blocks being less than a second threshold, executing a second processing, the second processing including reading valid data included in one first second block among the plurality of blocks and writing the read valid data and at least a part of first data into a second free block among the free blocks, the second block including valid data and invalid data, the first data being write data specified by a first command, the first command being a write command received from a host, the second threshold being smaller than the first threshold. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification