Data storage device and data maintenance method thereof
First Claim
1. A data storage device, comprising:
- a flash memory, having a plurality of SLC (Single-Level Cell)-spare blocks, a plurality of TLC (Triple-Level Cell)-data blocks and a plurality of TLC-spare blocks; and
a controller, receiving a first data sector and a first logical address of the first data sector, writing the first data sector into a first TLC-spare block, and determining whether a first TLC-data block corresponding to the first logical address has valid data, wherein when the first TLC-data block has valid data, the controller further performs a reverse-lookup to obtain a second logical address corresponding to the first TLC-data block, deletes mapping relationships between the second logical address and the first TLC-data block, a second TLC-data block and a third TLC-data block which are mapped to the second logical address, and maps the first TLC-spare block to the first logical address.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a data storage device including a flash memory and a controller. The flash memory has a plurality of SLC-spare blocks, a plurality of TLC-data blocks and a plurality of TLC-spare blocks. The controller writes a first data sector into a first TLC-spare block, and determines whether a first TLC-data block corresponding to a first logical address has valid data. When the first TLC-data block has valid data, the controller performs a reverse-lookup to obtain a second logical address corresponding to the first TLC-data block, releases the first TLC-data block, a second TLC-data block and a third TLC-data block which are mapped to the second logical address, and maps the first TLC-spare block to the first logical address.
3 Citations
14 Claims
-
1. A data storage device, comprising:
-
a flash memory, having a plurality of SLC (Single-Level Cell)-spare blocks, a plurality of TLC (Triple-Level Cell)-data blocks and a plurality of TLC-spare blocks; and a controller, receiving a first data sector and a first logical address of the first data sector, writing the first data sector into a first TLC-spare block, and determining whether a first TLC-data block corresponding to the first logical address has valid data, wherein when the first TLC-data block has valid data, the controller further performs a reverse-lookup to obtain a second logical address corresponding to the first TLC-data block, deletes mapping relationships between the second logical address and the first TLC-data block, a second TLC-data block and a third TLC-data block which are mapped to the second logical address, and maps the first TLC-spare block to the first logical address. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A data maintenance method, applied to a data storage device having a plurality of SLC (Single-Level Cell)-spare blocks, a plurality of TLC (Triple-Level Cell)-data blocks and a plurality of TLC-spare blocks, comprising:
-
receiving a first data sector and a first logical address of the first data sector, writing the first data sector into a first TLC-spare block; determining whether a first TLC-data block corresponding to the first logical address has valid data; when the first TLC-data block has valid data, performing a reverse-lookup to obtain a second logical address corresponding to the first TLC-data block; deleting mapping relationships between the second logical address and the first TLC-data block, a second TLC-data block and a third TLC-data block which are mapped to the second logical address; and mapping the first TLC-spare block to the first logical address. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification