Custom error recovery in selected regions of a data storage device
A memory sub-system having non-volatile media on which multiple namespaces are allocated. A command from a host system has an identification of a namespace and at least one error recovery parameter. A controller of the memory sub-system configures the namespace on the non-volatile media according to the at least one error recovery parameter, stores the at least one error recovery parameter in association with the namespace, and controls error recovery operations for data access in the namespace in accordance with the at least one error recovery parameter stored in association with the namespace.
1. An apparatus, comprising:
a communication interface;
memory cells; and
a controller, wherein in response to a command received in the communication interface, the controller is configured to extract an identification of a portion of the memory cells and at least one error recovery parameter of the portion and configured to store the at least one error recovery parameter in association with the identification of the portion, wherein the at least one error recovery parameter is associated with a data application type corresponding to data stored in the portion of the memory cells, wherein the data application type is one of a video data application type, audio application type, or image application type; and
wherein the controller is further configured to tolerate errors at a level in accordance with the at least one error recovery parameter stored in association with the identification of the portion, during error recovery operations in accessing the data stored in the portion of the memory cells.
2. The apparatus of claim 1 , wherein the portion is a namespace allocated from a storage capacity of the memory cells.
3. The apparatus of claim 2 , wherein the data is written into the namespace prior to the command being received in the communication interface.
4. The apparatus of claim 3 , wherein the memory cells are non-volatile.
5. The apparatus of claim 2 , wherein the controller is configured to generate a namespace map for the namespace based at least in part on the at least one error recovery parameter.
6. The apparatus of claim 5 , wherein the namespace map defines mapping from a first logical block address space defined in the namespace to a portion of a second logical block address space defined in an imaginary namespace allocated on an entire capacity of the non-volatile media.
7. The apparatus of claim 5 , wherein the at least one error recovery parameter comprises a RAID (Redundant Array of Independent Disks) setting, a Single Level Cell (SLC) mode setting, a limit on read retry, or any combination thereof.
8. The apparatus of claim 7 , wherein the controller is configured to create the namespace in response to the command having the at least one error recovery parameter.
9. The apparatus of claim 7 , wherein the controller is configured to create the namespace prior to the command being received in the communication interface.
10. The apparatus of claim 9 , wherein the command is received in the communication interface after the namespace is active in service.
11. A method, comprising:
receiving, via a communication interface of an apparatus having memory cells, a command;
determining, based on the command and by a controller configured in the apparatus, an identification of a portion of the memory cells and at least one error recovery parameter of the portion, wherein the at least one error recovery parameter is determined based on a type of data stored in the portion of the memory cells, wherein the type of data is one of a video data type, audio application type, or image application type;
storing, in the apparatus, the at least one error recovery parameter in association with the identification of the portion; and
tolerating, by the controller, errors at a level in accordance with the at least one error recovery parameter stored in association with the identification of the portion, during error recovery operations in accessing the data stored in the portion of the memory cells.
12. The method of claim 11 , wherein the portion is a namespace allocated from a storage capacity of the memory cells; and the memory cells are non-volatile.
13. The method of claim 12 , wherein the data is written into the namespace prior to the command being received in the communication interface.
14. The method of claim 12 , further comprising:
generating, by the controller, a namespace map for the namespace based at least in part on the at least one error recovery parameter, wherein the namespace map defines mapping from a first logical block address space defined in the namespace to a portion of a second logical block address space defined in an imaginary namespace allocated on an entire capacity of the non-volatile media.
15. The method of claim 14 , wherein the at least one error recovery parameter comprises a RAID (Redundant Array of Independent Disks) setting, a Single Level Cell (SLC) mode setting, a limit on read retry, or any combination thereof.
16. The method of claim 15 , further comprising:
creating, by the controller the namespace prior to the receiving of the command in the communication interface, wherein the command is received in the communication interface after the namespace is active in service.
17. A non-transitory computer storage medium storing instructions which, when executed by a controller configured in an apparatus having memory cells, cause the controller to perform a method, the method comprising:
receiving, via a communication interface of the apparatus, a command;
determining, based on the command, an identification of a portion of the memory cells and at least one error recovery parameter of the portion, wherein the at least one error recovery parameter is determined based on whether data stored in the portion of the memory cells is for a video application, audio application, or image application;
storing, in the apparatus, the at least one error recovery parameter in association with the identification of the portion; and
tolerating, by the controller, errors at a level in accordance with the at least one error recovery parameter stored in association with the identification of the portion, during error recovery operations in accessing the data stored in the portion of the memory cells.
18. The non-transitory computer storage medium of claim 17 , wherein the data is written into the portion prior to the command being received in the communication interface.
19. The non-transitory computer storage medium of claim 17 , wherein the portion is a namespace allocated from a storage capacity of the memory cells; and the method further comprises:
generating, by the controller, a namespace map for the namespace based at least in part on the at least one error recovery parameter, wherein the namespace map defines mapping from a first logical block address space defined in the namespace to a portion of a second logical block address space defined in an imaginary namespace allocated on an entire capacity of the non-volatile media.
20. The non-transitory computer storage medium of claim 19 , wherein the at least one error recovery parameter comprises a RAID (Redundant Array of Independent Disks) setting, a Single Level Cell (SLC) mode setting, a limit on read retry, or any combination thereof.