LBA Bitmap Volatile Memory NVM Access Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The frequent need to update mapping statuses of logical block addresses (LBAs) in non-volatile memory (NVM) systems leads to increased programming operations, triggering garbage collection and reducing system performance.
Innovation Solution
Implementing a bitmap stored in volatile memory to track LBA mapping statuses, allowing the system to determine and update these statuses with minimal NVM accesses, thereby avoiding unnecessary garbage collection.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If mapping statuses of LBAs are stored in index pages in NVM, then the system can track LBA mapping statuses, but frequent programming operations are triggered leading to garbage collection and reduced system performance
Solution Approach 1:
The patent introduces a bitmap stored in volatile memory as an intermediary data structure to track LBA mapping statuses. This bitmap acts as a mediator between the file system and the NVM index pages, allowing the system to query and update mapping statuses in volatile memory without immediately triggering programming operations on NVM. The bitmap is periodically synchronized with the index pages, thereby reducing the frequency of NVM programming operations and avoiding unnecessary garbage collection cycles.
Solution Approach 2:
The system performs preliminary actions by maintaining a bitmap in volatile memory that pre-reflects LBA mapping statuses before they are committed to NVM index pages. This allows the system to track and manage mapping statuses in advance, batch multiple status changes together, and only perform NVM programming operations when necessary, rather than immediately updating index pages for every mapping status change.
2Measurement precision
If index pages are updated frequently to reflect LBA mapping status changes, then mapping accuracy is maintained, but the number of programming operations increases triggering garbage collection
Solution Approach 1:
The bitmap in volatile memory serves as an intermediary that maintains accurate LBA mapping status information without requiring immediate updates to NVM index pages. This intermediary layer allows the system to maintain mapping status accuracy in volatile memory while deferring expensive NVM programming operations, thereby reducing the time loss associated with frequent programming and garbage collection.
Solution Approach 2:
The system performs preliminary tracking of mapping status changes in the volatile memory bitmap, accumulating multiple status changes before batching them into a single NVM programming operation. This preliminary action maintains mapping accuracy throughout the process while minimizing the frequency and impact of programming operations on NVM.
3Productivity
If the system uses volatile memory to store LBA mapping statuses in a bitmap, then NVM access frequency is reduced, but additional memory management complexity is introduced
Solution Approach 1:
The patent creates a simplified copy of the LBA mapping status information in the volatile memory bitmap, which mirrors the essential status data from the NVM index pages. This copying approach allows the system to work with a lightweight representation of mapping statuses in volatile memory, reducing NVM access frequency while the synchronization mechanism manages the complexity of keeping the copy consistent with the original data.
Data Source
AI summary
Systems and methods are disclosed for logical block address (“LBA) bitmap usage for a system having non-volatile memory (“NVM”). A bitmap can be stored in volatile memory of the system, where the bitmap can store the mapping statuses of one or more logical addresses. By using the bitmap, the system can determine the mapping status of a LBA without having to access the NVM. In addition, the system can update the mapping status of a LBA with minimal NVM accesses. By reducing the number of NVM accesses, the system can avoid triggering a garbage collection process, which can improve overall system performance.


