SEMICONDUCTOR STORAGE DEVICE WITH VOLATILE AND NONVOLATILE MEMORIES
First Claim
Patent Images
1. A solid state drive comprising:
- an interface controller configured to receive data provided from an external host apparatus;
a nonvolatile memory configured to store data transmitted from the interface controller in at least one of a plurality of blocks, each one of the plurality of blocks being a unit of data erasing; and
a drive controller coupled with the interface controller and the nonvolatile memory via at least one internal bus, the drive controller is configured to;
allocate a plurality of blocks to a first memory area, the plurality of blocks allocated to the first memory area including SLC (Single Level Cell) blocks;
relocate at least one of the SLC blocks to a second memory area from the first memory area, a plurality of blocks allocated to the second memory area including SLC blocks and MLC (Multi Level Cell) blocks;
copy valid data stored in the SLC blocks to one of the MLC blocks, within the second memory area, when a predetermined condition is satisfied; and
de-allocate at least one of the SLC blocks in which no valid data is stored from the second memory area, after copying the valid data stored in the SLC blocks.
4 Assignments
0 Petitions
Accused Products
Abstract
A semiconductor storage device includes a first memory area configured in a volatile semiconductor memory, second and third memory areas configured in a nonvolatile semiconductor memory, and a controller which executes following processing. The controller executes a first processing for storing a plurality of data by the first unit in the first memory area, a second processing for storing data outputted from the first memory area by a first management unit in the second memory area, and a third processing for storing data outputted from the first memory area by a second management unit in the third memory area.
-
Citations
20 Claims
-
1. A solid state drive comprising:
-
an interface controller configured to receive data provided from an external host apparatus; a nonvolatile memory configured to store data transmitted from the interface controller in at least one of a plurality of blocks, each one of the plurality of blocks being a unit of data erasing; and a drive controller coupled with the interface controller and the nonvolatile memory via at least one internal bus, the drive controller is configured to; allocate a plurality of blocks to a first memory area, the plurality of blocks allocated to the first memory area including SLC (Single Level Cell) blocks; relocate at least one of the SLC blocks to a second memory area from the first memory area, a plurality of blocks allocated to the second memory area including SLC blocks and MLC (Multi Level Cell) blocks; copy valid data stored in the SLC blocks to one of the MLC blocks, within the second memory area, when a predetermined condition is satisfied; and de-allocate at least one of the SLC blocks in which no valid data is stored from the second memory area, after copying the valid data stored in the SLC blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method of controlling a solid state drive, the solid state drive including a nonvolatile memory, the method comprising:
-
receiving data provided from an external host apparatus; storing data in at least one of a plurality of blocks included in the nonvolatile memory, each one of the plurality of blocks being a unit of data erasing; allocating a plurality of blocks to a first memory area, the plurality of blocks allocated to the first memory area including SLC (Single Level Cell) blocks; relocating at least one of the SLC blocks to a second memory area from the first memory area, a plurality of blocks allocated to the second memory area including SLC blocks and MLC (Multi Level Cell) blocks; copying valid data stored in the SLC blocks to one of the MLC blocks, within the second memory area, when a predetermined condition is satisfied; and de-allocating at least one of the SLC blocks in which no valid data is stored from the second memory area, after copying the valid data stored in the SLC blocks. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification