Memory Write Execution During Power Loss With Atomic Command Handling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory sub-systems face inefficiencies during asynchronous power loss events, leading to wasted memory space and performance impacts due to incomplete execution of memory access commands that exceed the atomic write unit size, as they require firmware intervention and segmentation.
Innovation Solution
Implementing a hardware automation component to automatically execute memory access commands that meet the atomic write unit size without firmware involvement, and segmenting larger commands into smaller units for execution by the hardware component.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware intervention and segmentation are used for memory access commands exceeding atomic write unit size during power failure, then command execution reliability is improved, but device complexity and processing time increase
Solution Approach 1:
The hardware automation component autonomously executes memory access commands during power failure events without requiring firmware intervention. The component automatically detects power failure conditions, determines command executability based on atomic write unit size criteria, and executes qualifying commands independently, eliminating the need for complex firmware segmentation and intervention procedures.
2Reliability
If firmware segmentation of larger commands into smaller units is implemented, then command execution reliability during power failure is improved, but processing time and productivity are reduced
Solution Approach 1:
The system segments memory access commands based on their size relative to the atomic write unit size threshold. Commands exceeding the atomic write unit size are automatically segmented into smaller units that can be executed independently during power failure events, while commands within the threshold are executed as-is. This segmentation strategy ensures reliable execution without unnecessary processing overhead.
Solution Approach 2:
The hardware automation component performs preliminary assessment of incoming memory access commands to determine whether they meet the atomic write unit size criteria before execution. This preliminary action filters out commands that would require segmentation or firmware intervention, allowing only qualifying commands to proceed to hardware execution during power failure events, thereby maintaining productivity while ensuring reliability.
3Productivity
If hardware automation component executes commands automatically without firmware involvement, then productivity is improved, but device complexity increases due to additional hardware components
Solution Approach 1:
The hardware automation component is designed as a multi-functional unit that performs multiple tasks: detecting power failure conditions, assessing command executability based on atomic write unit size, determining whether commands require segmentation, and executing qualifying commands autonomously. By consolidating these functions into a single component rather than requiring separate hardware modules and firmware handlers, the system achieves high productivity while minimizing the increase in device complexity.
Data Source
AI summary
A system includes a memory device and a processing device, operatively coupled with the memory device, to perform operations including: detecting an asynchronous power loss event at the memory device; receiving, from a host system, a memory access command; determining that a size of the memory access command satisfies a threshold criterion, wherein the threshold criterion corresponds to an atomic write unit size; responsive to determining that the size of the memory access command satisfies the threshold criterion, executing the memory access command using a hardware component of the memory device; and responsive to executing the memory access command, notifying the host system of completion of execution of the memory access command.


