Data storage device and data writing method capable of avoiding repeated write operation of a TLC block when interrupted
First Claim
Patent Images
1. A data storage device, comprising:
- a flash memory, having a plurality of Triple Level Cell (TLC) blocks, wherein each of the TLC blocks comprises a plurality of pages; and
a controller, stopping the writing of data into a first TLC block which was undergoing a write operation that had not finished at the time a power-off event occurred, when the data storage device resumes operation after the power-off event, and writing valid data of the first TLC block into a second TLC block after every interval of a first predetermined number of write command(s) is finished, wherein the controller writes the valid data of the first TLC block into at least one page of the second TLC block and clears a maximum programming time in sequence until the second TLC block is filled, and wherein the maximum programming time is arranged to limit the time it takes for the controller to write the SLC blocks and the TLC blocks.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a data storage device that includes a flash memory and a controller. The flash memory has a plurality of TLC blocks, wherein each of the TLC blocks includes a plurality of pages. When the data storage device resumes operation after a power-off event, the controller stops writing data into a first TLC block which was undergoing a write operation that had not finished at the time the power-off event occurred, and the controller writes valid data of the first TLC block into a second TLC block after every interval of a first predetermined number of write commands is finished.
9 Citations
16 Claims
-
1. A data storage device, comprising:
-
a flash memory, having a plurality of Triple Level Cell (TLC) blocks, wherein each of the TLC blocks comprises a plurality of pages; and a controller, stopping the writing of data into a first TLC block which was undergoing a write operation that had not finished at the time a power-off event occurred, when the data storage device resumes operation after the power-off event, and writing valid data of the first TLC block into a second TLC block after every interval of a first predetermined number of write command(s) is finished, wherein the controller writes the valid data of the first TLC block into at least one page of the second TLC block and clears a maximum programming time in sequence until the second TLC block is filled, and wherein the maximum programming time is arranged to limit the time it takes for the controller to write the SLC blocks and the TLC blocks. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A data storage device, comprising:
-
a flash memory, having a plurality of Single Level Cell (SLC) blocks and a plurality of Triple Level Cell (TLC) blocks, wherein each of the SLC blocks comprises a plurality of pages, and each of the TLC block comprises a plurality of pages; and a controller, writing valid data of a first TLC block into a second TLC block of the TLC blocks after every interval of a first predetermined number of write command(s) is finished in a first period which is subsequent to a power-off event after which the data storage device resumes operation, and writing a part of valid data of the other SLC blocks into the other TLC blocks after every interval of a second predetermined number of write commands is finished in a second period which is subsequent to the first period, wherein in the first period, the controller further clears a maximum programming time after each part of the valid data is written into the first TLC block. - View Dependent Claims (7, 8)
-
-
9. A data writing method, applied to a data storage device, wherein the data storage device comprises a flash memory having a plurality of Triple Level Cell (TLC) blocks, the data writing method comprising:
-
when the data storage device resumes operation after a power-off event, checking whether any of the TLC blocks was undergoing a write operation that had not finished at the time the power-off event occurred; when a first TLC block was undergoing a write operation that had not finished at the time the power-off event occurred, stopping the writing of data into the first TLC block, and selecting a second TLC block from the first TLC block; and after the data storage device resumes operation after the power-off event, writing valid data of the first TLC block into a second TLC block after every interval of a first predetermined number of write command(s) is finished, wherein the step of writing the valid data of the first TLC block into the second TLC block further comprises writing the valid data of the first TLC block into at least one page of the second TLC block and clearing a maximum programming time in sequence until the second TLC block is filled, and wherein the maximum programming time is arranged to limit the time available for writing the SLC blocks and the TLC blocks. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A data writing method, applied to a data storage device, wherein the data storage device comprises a flash memory having a plurality of Single Level Cell (SLC) blocks and a plurality of Triple Level Cell (TLC) blocks, the data writing method comprising:
-
in a first period which is subsequent to a power-off event after which the data storage device resumes operation, writing valid data of a first TLC block into a second TLC block of the TLC blocks after every interval of a first predetermined number of write command(s) is finished; in a second period which is subsequent to the first period, writing a part of the valid data of the other SLC blocks into the other TLC blocks after every interval of a second predetermined number of write commands is finished; and clearing a maximum programming time after each part of the valid data is written into the first TLC block in the first period. - View Dependent Claims (15, 16)
-
Specification