Storage Management via Channel Grouping for Parallel Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data management systems for non-volatile memory devices, such as NAND flash memory, face inefficiencies due to asymmetric read/write/erase characteristics and the need for separate erase processes, which increase update times, especially when data is randomly accessed and updated.
Innovation Solution
A storage management system that includes a host, memory buffer, and multiple storage blocks connected via an input/output bus, allowing for parallel data access and management through channel grouping, which reduces garbage collection overhead and prioritizes channel operations to optimize data access and update processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If data is randomly accessed and updated in non-volatile memory, then data accessibility is improved, but update time increases significantly
Solution Approach 1:
The memory space is divided into multiple channels, and each channel is further divided into multiple blocks. This segmentation allows random access operations to be distributed across different channels and blocks, enabling parallel processing of multiple data access requests simultaneously, thereby reducing the overall update time while maintaining data accessibility.
2Adaptability or versatility
If separate erase process is implemented in non-volatile memory, then data erasure capability is improved, but total data update time increases
Solution Approach 1:
The memory system performs preliminary actions by pre-erasing blocks in advance before they are actually needed for new data writes. The controller monitors block usage and proactively erases blocks that are likely to be needed soon, so that when a write operation occurs, the required blocks are already ready, eliminating the need to wait for erase operations during critical update paths.
Solution Approach 2:
The controller continuously performs background erase operations on blocks that are not currently in use, ensuring that erase actions are ongoing continuously rather than being interrupted by write operations. This continuous background processing maintains data erasure capability while minimizing impact on update times.
3Device complexity
If multiple storage blocks are managed without channel grouping, then management simplicity is maintained, but parallelism in data access is reduced
Solution Approach 1:
Storage blocks are organized into multiple channels, with each channel containing multiple blocks. This segmentation creates a hierarchical management structure that enables parallel access across channels while maintaining relatively simple management within each channel. The channel-based organization allows the controller to independently manage and access different channels simultaneously.
4Reliability
If garbage collection is performed frequently, then data integrity is improved, but system performance deteriorates
Solution Approach 1:
The system performs preliminary garbage collection actions on blocks before they become full and require frequent cleanup. By proactively managing block lifecycle and performing erasure operations in advance, the system reduces the frequency and intensity of urgent garbage collection operations, thereby maintaining data integrity while minimizing performance impact.
Data Source
AI summary
A storage management system and a storage management method are provided. The storage management system includes a host, a memory buffer, a plurality of storage blocks, and an input/output bus to perform an interface function among the host, the memory buffer, and the plurality of storage blocks, wherein each of the plurality of storage blocks is connected with the input/output bus via a corresponding channel, and the plurality of storage blocks is managed for each channel group generated by grouping at least one channel.


