Memory Data Folding with Reordered Transfers for Concurrent Host Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory systems face challenges in performing concurrent host system access and data folding operations, leading to increased latency due to the inability to access and fold data simultaneously on the same memory die.
Innovation Solution
The memory system reorders data for the folding operation to enable concurrent performance with host system access, allowing temporary delays in folding specific data blocks and using dummy data or data from other memory dies to maintain operation continuity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the memory system performs data folding operations on a memory die, then data is transferred from source to destination blocks, but host system access operations must be suspended causing increased latency
Solution Approach 1:
The patent segments the data folding operation into multiple independent stages: (1) reading source data blocks, (2) writing to destination blocks, and (3) updating mapping tables. This allows different segments to execute concurrently on different memory dies, enabling host access operations to proceed while folding operations continue on separate dies without mutual interference.
Solution Approach 2:
The patent introduces a temporal dimension to the folding operation by implementing asynchronous folding where source data blocks are read in advance and staged in buffer memory. This allows the folding write operation to occur after the host access has completed, effectively overlapping the timing of access and folding operations across different time dimensions.
2Productivity
If the memory system allows concurrent host access and folding operations on the same memory die, then access latency is reduced, but data corruption or inconsistent states may occur
Solution Approach 1:
The patent introduces a controller as an intermediary that manages the folding operation independently from the host access path. The controller reads source data blocks, stages them in buffer memory, and writes to destination blocks according to a folding pattern, while maintaining a separate mapping table that tracks the folded data locations. This intermediary structure isolates the folding operation from host access, allowing both to proceed concurrently without data corruption.
Solution Approach 2:
The patent performs preliminary actions by reading and staging source data blocks into buffer memory before the actual folding write operation occurs. This preliminary staging allows the host system to access the original data blocks while the folded copy is being prepared in the buffer, ensuring data consistency while enabling concurrent operations.
3Reliability
If the memory system suspends folding operations to complete host access operations, then data consistency is maintained, but overall system efficiency decreases
Solution Approach 1:
The patent segments the memory system into multiple independent processing units (memory dies), each capable of performing folding operations independently. This segmentation allows the folding throughput to be distributed across multiple dies, so that suspending one die for host access does not halt the overall folding operation, as other dies continue to process data concurrently.
Solution Approach 2:
The patent implements continuous useful action by implementing a background folding process that operates independently of host access operations. The controller continuously reads source data blocks and writes folded copies to destination blocks according to a predefined folding pattern, ensuring that folding operations proceed without interruption even when host access operations are occurring on the same memory die.
Data Source
AI summary
Methods, systems, and devices for techniques for concurrent host system access and data folding are described. A memory system may determine to transfer (e.g., fold) data from a set of source data blocks to a set of destination data blocks. The memory system may receive a command to access a first source data block of the set of source data blocks concurrent with the data transfer. The memory system may generate a first order for transferring respective portions of the data that is based on a second order associated with a sequential read of the data from the set of destination data blocks. Based on the accessing the first source data block being concurrent with the data transfer, the first order may exclude a first portion of the data from the first source data block such that the data transfer and the accessing may be concurrently performed.


