Method of operating storage device to recover performance degradation due to retention characteristic and method of operating data processing system including the same
First Claim
1. A data recovery method for a storage device including a plurality of memory cells arranged in pages and blocks, each page including a row of memory cells, and each block including a plurality of pages of memory cells, the method comprising:
- receiving by the storage device a first command corresponding to a first selected data recovery scheme; and
based on the first command;
applying a first target page scheme for performing error detection on the plurality of blocks;
reading target pages using the first target page scheme, and detecting an amount of errors in each read target page;
as part of the first selected data recovery scheme, determining that a target page of a first block has an amount of errors that falls within a first range of errors, a lower boundary of the first range of errors being a first threshold amount of errors, and based on the determination, performing data recovery for the first block by relocating all data stored in the first block to another block;
as part of the first selected data recovery scheme, determining that no read page in a second block has an amount of errors that falls within the first range of errors, and as a result, maintaining the data stored in the second block without relocating the data;
receiving by the storage device a second command corresponding to a second selected data recovery scheme; and
based on the second command;
applying a second target page scheme for performing error detection on at least the second block and one or more additional blocks;
reading at least one target page of the second block and at least one target page of the one or more additional blocks using the second target page scheme, and detecting a number of errors in each read target page of the second block;
as part of the second selected data recovery scheme, determining that a target page of the second block has an amount of errors lower than the first range of errors and that falls within a second range of errors, a lower boundary of the second range of errors being a second threshold amount, and based on the determination, performing data recovery for the second block by relocating all data stored in the second block to another block; and
determining that no read page in the one or more additional blocks has an amount of errors that falls within the second range of errors, and as a result, maintaining the data stored in the one or more additional blocks,wherein the second threshold amount is smaller than the first threshold amount.
1 Assignment
0 Petitions
Accused Products
Abstract
A storage device may include a plurality of memory cells arranged in pages and blocks, each page including a row of memory cells, and each block including a plurality of pages of memory cells. The storage device may include a memory device, such as a nonvolatile memory device, which includes these items. A data recovery method for the storage device may include receiving by the storage device a first command corresponding to a first selected data recovery scheme. Based on the first command: a first target page scheme for performing error detection on the plurality of blocks is applied, target pages are read using the first target page scheme, and an amount of errors in each read target page is detected. In addition, it may be determined that a target page of a first block has at least a first threshold amount of errors, and based on the determination, data recovery for the first block may be performed by relocating all data stored in the first block to another block. Further, it may be determined that no read page in a second block has at least the first threshold amount of errors, and as a result, the data stored in the second block can be maintained.
-
Citations
17 Claims
-
1. A data recovery method for a storage device including a plurality of memory cells arranged in pages and blocks, each page including a row of memory cells, and each block including a plurality of pages of memory cells, the method comprising:
-
receiving by the storage device a first command corresponding to a first selected data recovery scheme; and based on the first command; applying a first target page scheme for performing error detection on the plurality of blocks; reading target pages using the first target page scheme, and detecting an amount of errors in each read target page; as part of the first selected data recovery scheme, determining that a target page of a first block has an amount of errors that falls within a first range of errors, a lower boundary of the first range of errors being a first threshold amount of errors, and based on the determination, performing data recovery for the first block by relocating all data stored in the first block to another block; as part of the first selected data recovery scheme, determining that no read page in a second block has an amount of errors that falls within the first range of errors, and as a result, maintaining the data stored in the second block without relocating the data; receiving by the storage device a second command corresponding to a second selected data recovery scheme; and based on the second command; applying a second target page scheme for performing error detection on at least the second block and one or more additional blocks; reading at least one target page of the second block and at least one target page of the one or more additional blocks using the second target page scheme, and detecting a number of errors in each read target page of the second block; as part of the second selected data recovery scheme, determining that a target page of the second block has an amount of errors lower than the first range of errors and that falls within a second range of errors, a lower boundary of the second range of errors being a second threshold amount, and based on the determination, performing data recovery for the second block by relocating all data stored in the second block to another block; and determining that no read page in the one or more additional blocks has an amount of errors that falls within the second range of errors, and as a result, maintaining the data stored in the one or more additional blocks, wherein the second threshold amount is smaller than the first threshold amount. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data recovery method for a storage device including a plurality of memory cells arranged in pages and blocks, each page including a row of memory cells, and each block including a plurality of pages of memory cells, the method comprising:
-
(a) using a first data recovery procedure at the storage device to recover data on the storage device, the first data recovery procedure using a first data relocation scheme that relocates a block of data when at least one page of the block is determined to have at least a first threshold amount of errors; (b) receiving at the storage device a command to use a second, different data recovery procedure; and (c) in response to the command, using the second data recovery procedure at the storage device to recover data on the storage device, the second data recovery procedure using a second data relocation scheme that relocates a block of data when at least one page of the block is determined to have at least a second threshold amount of errors, the second threshold amount being smaller than the first threshold amount. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A data recovery method for a memory device including a plurality of memory cells arranged in pages and blocks, each page including a row of memory cells, and each block including a plurality of pages of memory cells, the method comprising:
-
determining, by a host, a first performance level of the memory device; based on the first performance level, selecting a data relocation scheme from among a plurality of data relocation schemes, the plurality of data relocation schemes including a first data relocation scheme and a second data relocation scheme; sending, by the host, a first command to perform a first data recovery procedure on the memory device, the first data recovery procedure including using the first data relocation scheme, which relocates a block of data of the memory device based on at least one page of the block having at least a first threshold amount of errors, and does not relocate a block of data of the memory device when no pages of the block are determined to have more than a second threshold amount of errors, the second threshold amount being smaller than the first threshold amount; determining, by the host, a second performance level of the memory device; and based on the second performance level, sending, by the host, a second command to perform a second data recovery procedure on the memory device, the second data recovery procedure including using the second data relocation scheme, which relocates a block of data of the memory device based on at least one page of the block having the second threshold amount of errors. - View Dependent Claims (15, 16, 17)
-
Specification