Handling program failure in zone memory system
AssigneeMicron Technology, Inc.
InventorsJuane Li, Amit Bhardwaj, Michael Winterfeld
Life of this patent
Estimating the term…
Abstract
Various embodiments provide handling block program failure in a memory sub-system that supports zones. In particular, some embodiments described herein handle block program failure during a data write (e.g., host data write) to a cache block of a zone on a memory device on a memory sub-system, block program failure during refresh of a cache block of a zone on a memory device on a memory sub-system, block program failure during migration of data between a cache block and a non-cache block of a zone on a memory device on a memory sub-system, block program failure during refresh of a non-cache block of a zone on a memory device on a memory sub-system, or some combination thereof.
Claims20
A system comprising:
- a memory device comprising a set of zones for storing data, a select zone of the set of zones comprising a select set of cache blocks and a select set of non-cache blocks;
- and
- a processing device, operatively coupled to the memory device, configured to perform operations comprising:
- starting write of specified data to the memory device;
- and
- while the specified data is being written to the select zone:
- monitoring for a program failure of an individual cache block of the select set of cache blocks;
- and
- in response to detecting the program failure of the individual cache block:
- causing the select zone to be marked as finished;
- allocating an additional cache block to the select set of cache blocks;
- causing stored data in the individual cache block to be written to the additional cache block;
- and
- causing a portion of the specified data that failed to write to the individual cache block to be written to the additional cache block.
At least one non-transitory machine-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to perform operations comprising:
- starting migration of first stored data, from a source cache block of a select set of cache blocks of a select zone on a memory device, to an individual non-cache block of a select set of non-cache blocks of the select zone;
- and
- while the migration is being performed:
- monitoring for a program failure of the individual non-cache block;
- and
- in response to detecting the program failure of the individual non-cache block:
- causing the select zone to be read-only;
- allocating an additional non-cache block to the select set of non-cache blocks;
- determining whether the source cache block has been released from the select zone;
- in response to determining that the source cache block has not been released from the select zone, starting migration of the first stored data from the source cache block to the additional non-cache block;
- and
- in response to determining the source cache block has been released from the select zone, causing second stored data in the individual non-cache block to be written to the additional non-cache block.
A method comprising:
- starting write of specified data to a memory device that comprises a set of zones for storing data, a select zone of the set of zones comprising a select set of cache blocks and a select set of non-cache blocks;
- and
- while the specified data is being written to the select zone:
- monitoring, by a memory sub-system controller, for a program failure of an individual cache block of the select set of cache blocks;
- and
- in response to detecting the program failure of the individual cache block:
- causing, by the memory sub-system controller, the select zone to be marked as finished;
- allocating, by the memory sub-system controller, an additional cache block to the select set of cache blocks;
- causing, by the memory sub-system controller, stored data in the individual cache block to be written to the additional cache block;
- and
- causing, by the memory sub-system controller, a portion of the specified data that failed to write to the individual cache block to be written to the additional cache block.
Dependencies are inferred from the claim text.