Memory Controller Allocating Common Free Blocks for Write and Copy Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage devices using nonvolatile memory, such as SSDs based on NAND flash technology, the host system often faces a high burden in controlling data placement, leading to insufficient I/O performance due to increased workload, necessitating a reduction in host-side data placement burdens.
Innovation Solution
A memory system with a controller that allocates common free blocks across regions to act as write and copy destinations, reducing the host's workload by isolating write and copy operations and managing storage locations within the nonvolatile memory, thereby distributing data placement efficiently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If the host directly controls data placement on nonvolatile memory, then data placement precision is improved, but device complexity and host workload increase
Solution Approach 1:
The patent introduces a buffer management layer and address translation mechanism as intermediaries between the host and nonvolatile memory. The host issues simple read/write commands to the buffer, which then manages data placement, address translation, and memory management operations. This intermediary layer shields the host from complex data placement control while maintaining precise data management capabilities in the storage device itself.
2Manufacturing precision
If the host manages data placement on nonvolatile memory, then data placement accuracy is improved, but I/O performance deteriorates due to increased host burden
Solution Approach 1:
The storage device implements self-service capabilities through an integrated buffer and controller that autonomously manage data placement, address translation, and memory allocation. The host simply issues I/O commands without needing to manage data placement details, allowing the storage device to handle complex operations independently. This self-service approach maintains data placement accuracy while eliminating the performance penalty of host involvement in placement management.
3Device complexity
If write and copy operations share the same block, then device complexity is reduced, but write amplification increases and lifespan decreases
Solution Approach 1:
The patent segments the nonvolatile memory into distinct functional regions: a first region dedicated to write operations and a second region dedicated to copy operations. The buffer manages these regions separately, allocating write commands to the first region and copy commands to the second region. This segmentation prevents mixing of new and old data in the same block, reducing write amplification and extending device lifespan while maintaining manageable complexity through structured region management.
4Ease of operation
If common free blocks are shared across regions, then ease of operation is improved, but data mixing risk increases
Solution Approach 1:
The patent applies local quality by assigning different functional characteristics to different regions: the first region is optimized for write operations with appropriate allocation policies, while the second region is optimized for copy operations. Each region maintains its own data integrity properties and allocation rules. The buffer manages free blocks within each region according to region-specific policies, ensuring data separation integrity while providing ease of operation through automated region-aware allocation.
Data Source
AI summary
According to one embodiment, when receiving a write command including a first identifier of identifiers for accessing regions from a host, a memory system allocates one block of a common free block group shared by the regions as a write destination block for the region corresponding to the first identifier. When receiving a copy command including a block address of a copy source block of blocks belonging to the region corresponding to the first identifier, and an identifier of a copy destination target region indicative of the first identifier from the host, the memory system allocates one block as a copy destination block for the region corresponding to the first identifier, and copies data from the copy source block to the copy destination block.


