Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A method comprising: identifying, by a processing device, an offset based on a characteristic of a memory system associated with a system block corresponding to a plurality of logical blocks, wherein the characteristic of the memory system corresponds to a number of memory devices that are included in the memory system and to a number of planes that are included in each of the memory devices, and wherein each of the memory devices comprises a plurality of planes; assigning, by the processing device, a first group of physical blocks of the memory system to a first group of the plurality of logical blocks corresponding to the system block, wherein the first group of physical blocks comprise a first plurality of physical blocks; identifying, by the processing device, a second group of physical blocks of the memory system at a location that is based on the offset and the first group of physical blocks, wherein the second group of physical blocks comprises a second plurality of physical blocks; assigning, by the processing device, the second group of physical blocks of the memory system to a second group of the plurality of logical blocks corresponding to the system block; identifying, by the processing device, a third group of physical blocks of the memory system at a location that is based on the offset and the second group of physical blocks, wherein the third group of physical blocks comprises a third plurality of physical blocks, and wherein the offset is used to identify the location of the third group of physical blocks relative to the location of the second group of physical blocks; assigning, by the processing device, the third group of physical blocks of the memory system to a third group of the plurality of logical blocks corresponding to the system block; and storing, by the processing device, data by using the system block with the assigned first group, second group, and third group of physical blocks.
This invention relates to memory system management, specifically optimizing data distribution across physical memory blocks to improve performance and reliability. The method addresses the challenge of efficiently mapping logical blocks to physical blocks in memory systems with multiple memory devices and planes, ensuring balanced wear and access patterns. A processing device first calculates an offset based on the memory system's configuration, including the number of memory devices and planes per device. This offset determines the spacing between groups of physical blocks assigned to logical blocks within a system block. The method then assigns a first group of physical blocks to a first set of logical blocks. Using the offset, a second group of physical blocks is identified at a location relative to the first group and assigned to a second set of logical blocks. Similarly, a third group of physical blocks is identified using the same offset relative to the second group and assigned to a third set of logical blocks. Data is then stored using the system block, which now includes the assigned first, second, and third groups of physical blocks. This approach ensures that logical blocks are distributed across physical blocks in a structured manner, reducing contention and improving parallel access. The offset-based distribution helps balance wear across the memory system, enhancing longevity and performance.
2. The method of claim 1 , wherein the offset specifies the location of the second group of physical blocks relative to a location of the first group of physical blocks of the memory system.
This invention relates to memory systems, specifically to techniques for managing data storage and retrieval in non-volatile memory devices. The problem addressed is efficiently organizing and accessing data in memory systems where data is stored in groups of physical blocks, particularly when dealing with wear leveling, garbage collection, or other memory management operations. The method involves determining an offset value that defines the relative position of a second group of physical blocks in the memory system with respect to a first group of physical blocks. This offset allows the system to precisely locate and manage the second group of blocks based on their relationship to the first group. The offset may be used to calculate the physical address or logical address of the second group, ensuring accurate data placement and retrieval. The technique is particularly useful in solid-state storage devices, such as flash memory, where block management is critical for performance and longevity. The method may also include steps for selecting the first and second groups of blocks, calculating the offset based on system parameters, and applying the offset to perform operations like data migration, wear leveling, or error correction. By using an offset-based approach, the system can dynamically adjust block locations while maintaining efficient access patterns, reducing overhead and improving overall system reliability. This technique is applicable in various memory architectures, including NAND flash, where block-level operations are common.
3. The method of claim 1 , wherein the assigning of the first group of physical blocks and the second group of physical blocks comprises: identifying the first group of physical blocks at a first die of a memory device of the memory system; and identifying the second group of physical blocks at a second die, wherein the second group of physical blocks at the second die are at a different index position than the first group of physical blocks, the different index position being based on the offset.
4. The method of claim 3 , wherein the different index position corresponds to a different row at the second die relative to a row of the first die that includes the first group of physical blocks.
A method for managing data storage in a multi-die memory system addresses the challenge of efficiently organizing and accessing data across multiple memory dies. The system includes at least two memory dies, each containing physical blocks arranged in rows. The method involves selecting a first group of physical blocks from a row on the first die and a second group of physical blocks from a different row on the second die. The different row on the second die is determined based on the index position of the first group of physical blocks on the first die. This ensures that data is distributed across the dies in a coordinated manner, optimizing storage efficiency and access performance. The method may also include mapping logical addresses to physical blocks and managing wear leveling to extend the lifespan of the memory system. By aligning the index positions between dies, the system reduces fragmentation and improves data retrieval speed. The approach is particularly useful in solid-state storage devices where multiple dies are used to increase capacity and performance.
5. The method of claim 1 , wherein the assigning of the first group of physical blocks and the second group of physical blocks comprises: identifying the first group of physical blocks at a first plane of a memory device of the memory system; and identifying the second group of physical blocks at a second plane of the memory device, wherein the second group of physical blocks at the second plane are at a different index position than the first group of physical blocks at the first plane, the different index position being based on the offset.
6. The method of claim 1 , further comprising: identifying a subsequent system block corresponding to another plurality of logical blocks; and assigning a particular group of physical blocks to a portion of the another plurality of logical blocks based on a location of the first group of physical blocks assigned to the first group of the plurality of logical blocks of the system block.
This invention relates to data storage systems, specifically methods for managing the allocation of physical storage blocks to logical storage blocks in a way that optimizes performance and efficiency. The problem addressed is the inefficient use of physical storage resources when logical blocks are assigned without considering their spatial relationships, leading to increased latency and reduced throughput. The method involves assigning a group of physical blocks to a group of logical blocks within a system block, where the physical blocks are selected based on their proximity to previously assigned physical blocks. This spatial awareness ensures that related data is stored in close physical proximity, reducing seek times and improving access efficiency. The method further includes identifying a subsequent system block containing another group of logical blocks and assigning a specific group of physical blocks to a portion of these logical blocks based on the location of the previously assigned physical blocks. This ensures that the new assignments maintain spatial coherence with existing data, further optimizing storage performance. The approach minimizes fragmentation and improves data retrieval speeds by leveraging the physical layout of storage media.
7. A system comprising: a memory; and a processing device, operatively coupled with the memory, to: identify an offset based on a characteristic of a memory system associated with a system block corresponding to a plurality of logical blocks, wherein the characteristic of the memory system corresponds to a number of memory devices that are included in the memory system and to a number of planes that are included in each of the memory devices, and wherein each of the memory devices comprises a plurality of planes; assign a first group of physical blocks of the memory system to a first group of the plurality of logical blocks corresponding to the system block, wherein the first group of physical blocks comprise a first plurality of physical blocks; identify a second group of physical blocks of the memory system at a location that is based on the offset and the first group of physical blocks, wherein the second group of physical blocks comprises a second plurality of physical blocks; assign the second group of physical blocks of the memory system to a second group of the plurality of logical blocks corresponding to the system block; identify a third group of physical blocks of the memory system at a location that is based on the offset and the second group of physical blocks, wherein the third group of physical blocks comprises a third plurality of physical blocks, and wherein the offset is used to identify the location of the third group of physical blocks relative to the location of the second group of physical blocks; assign the third group of physical blocks of the memory system to a third group of the plurality of logical blocks corresponding to the system block; and store data by using the system block with the assigned first group, second group, and third group of physical blocks.
8. The system of claim 7 , wherein the offset specifies the location of the second group of physical blocks relative to a location of the first group of physical blocks of the memory system.
9. The system of claim 7 , wherein to assign the first group of physical blocks and the second group of physical blocks, the processing device is further to: identify the first group of physical blocks at a first die of a memory device of the memory system; and identify the second group of physical blocks at a second die, wherein the second group of physical blocks at the second die are at a different index position than the first group of physical blocks, the different index position being based on the offset.
10. The system of claim 9 , wherein the different index position corresponds to a different row at the second die relative to a row of the first die that includes the first group of physical blocks.
A system for managing data storage in a multi-die memory device addresses the challenge of efficiently organizing and accessing data across multiple memory dies. The system includes a first die and a second die, each containing physical blocks for storing data. The first die has a first group of physical blocks, and the second die has a second group of physical blocks. The system maps the first group of physical blocks on the first die to the second group of physical blocks on the second die using an index position. This index position corresponds to a different row on the second die relative to the row on the first die that includes the first group of physical blocks. By aligning the physical blocks across dies in this manner, the system ensures efficient data distribution and retrieval, optimizing performance and reducing latency in multi-die memory operations. The mapping mechanism allows for consistent and predictable data placement, enhancing reliability and simplifying data management in multi-die storage architectures.
11. The system of claim 7 , wherein to assign the first group of physical blocks and the second group of physical blocks, the processing device is further to: identify the first group of physical blocks at a first plane of a memory device of the memory system; and identify the second group of physical blocks at a second plane of the memory device, wherein the second group of physical blocks at the second plane are at a different index position than the first group of physical blocks at the first plane, the different index position being based on the offset.
This invention relates to memory systems, specifically improving data management in multi-plane memory devices. The problem addressed is inefficient data distribution across memory planes, leading to performance bottlenecks and uneven wear. The solution involves a system that assigns physical blocks across different planes of a memory device using an offset-based indexing scheme. The system identifies a first group of physical blocks in a first plane and a second group in a second plane, ensuring the second group is positioned at a different index than the first group. This offset ensures balanced data distribution, reducing wear and improving performance by preventing localized hotspots. The system dynamically manages block allocation to maintain efficiency as data is written and erased. This approach is particularly useful in solid-state storage where wear leveling and performance optimization are critical. The invention enhances reliability and longevity of memory devices by distributing data more evenly across available planes.
12. The system of claim 7 , wherein the processing device is further to: identify a subsequent system block corresponding to another plurality of logical blocks; and assign a particular group of physical blocks to a portion of the another plurality of logical blocks based on a location of the first group of physical blocks assigned to the first group of the plurality of logical blocks of the system block.
13. A non-transitory computer readable medium comprising instructions, which when executed by a processing device, cause the processing device to perform operations comprising: identifying an offset based on a characteristic of a memory system associated with a system block, wherein the system block corresponds to a plurality of logical blocks, wherein the characteristic of the memory system corresponds to a number of memory devices that are included in the memory system and to a number of planes that are included in each of the memory devices, and wherein each of the memory devices comprises a plurality of planes; assigning a plurality of groups of physical blocks of the memory system to the plurality of logical blocks of the system block based on the offset, wherein each of the plurality of groups of physical blocks comprise a different plurality of physical blocks; identifying a new system block corresponding to another plurality of logical blocks; identifying another plurality of groups of physical blocks of the memory system based on the offset and a location associated with the plurality of groups of physical blocks, wherein each of the another plurality of groups of physical block comprise another different plurality of physical blocks, and wherein a location of the another plurality of groups of physical blocks is identified based one a prior respective one of the another plurality of groups of physical blocks, wherein the another plurality of groups of physical blocks comprises at least three groups of physical blocks, and wherein the offset specifies locations of each of at least two of the at least three groups of physical blocks relative to a location of an immediately prior group of physical blocks of the at least three groups of physical blocks; and assigning the another plurality of groups of physical blocks to the another plurality of logical blocks corresponding to the new system block.
14. The non-transitory computer readable medium of claim 13 , wherein to identify the another plurality of groups of physical blocks of the memory system based on the offset and the location associated with the plurality of groups of physical blocks, the operations further comprise: identify a location of an initial group of physical blocks of the plurality of groups assigned to the plurality of logical blocks of the system block; and identify a location of a particular group of physical blocks of the another plurality of groups relative to the location of the initial group of physical blocks.
15. The non-transitory computer readable medium of claim 14 , wherein to identify the another plurality of groups of physical blocks of the memory system based on the offset and the location associated with the plurality of groups of physical blocks, the operations further comprise: identify a subsequent group of physical blocks of the another plurality of groups based on the offset and the location of the particular group.
16. The non-transitory computer readable medium of claim 13 , wherein the operations further comprise: using the system block and the new system block to store data received from a host system to the physical blocks of the memory system.
Unknown
April 13, 2021
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.