L2P Translation Table Backup Using Byte Mode Phase Change Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory management systems face performance issues due to slow update latency of logical to physical address translation tables, particularly in NAND flash-based systems, which can lead to inaccuracies during power failures or resets.
Innovation Solution
A method is introduced to maintain a data set by storing a base copy in a first non-volatile memory with page mode flash and changes in a second non-volatile memory with faster byte mode phase change memory, allowing for efficient generation of a current copy by reading from both, with threshold-based data set movement to minimize update latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the backup copy of the logical to physical address translation table is kept in page mode NAND flash, then the backup copy can be stored in non-volatile memory, but the updates require page mode read and writes which are relatively slow
Solution Approach 1:
The patent segments the backup storage system into two distinct memory components: page mode flash memory for storing the base copy of the translation table, and byte mode non-volatile memory (such as MRAM or PCM) for storing the change data set. This segmentation allows each memory type to be optimized for its specific function, resolving the contradiction between reliability and update speed.
Solution Approach 2:
The patent introduces byte mode non-volatile memory as an intermediary layer between the volatile RAM (where the current translation table is maintained) and the page mode flash memory (where the base backup is stored). This intermediary enables fast capture of table changes without requiring slow page mode operations, thus resolving the speed-reliability contradiction.
2Reliability
If the backup copy is updated using page mode read and writes, then the backup copy can be maintained in non-volatile memory, but the update process is subject to block erase and other performance issues
Solution Approach 1:
The patent divides the backup maintenance function into two separate storage paths: the base copy in page mode flash memory is updated periodically or in bulk, while changes are captured in byte mode non-volatile memory with fast write capability. This segmentation eliminates the bottleneck of page mode operations for frequent updates, improving productivity while maintaining reliability.
Solution Approach 2:
The patent changes the write speed parameter of the backup system by introducing byte mode non-volatile memory with significantly faster write speeds compared to page mode flash. This parameter change allows the system to maintain current backup copies without being constrained by the slow write speeds of traditional flash memory, thus improving update throughput.
3Speed
If a larger logical to physical address translation table is stored in volatile memory for quick access, then read speed is improved, but the table size increases requiring more volatile memory resources
Solution Approach 1:
The patent creates a backup copy of the logical to physical address translation table in non-volatile memory (page mode flash) while maintaining the primary table in volatile memory (RAM) for fast access. This copying approach allows the system to keep a smaller, faster volatile memory table while having a complete backup available for reconstruction, thus improving read speed without proportionally increasing volatile memory requirements.
Data Source
AI summary
A method for maintaining a data set includes storing a base copy of the data set in a first non-volatile memory having a first writing speed, storing changes to the data set in a first change data set in a second non-volatile memory having a second writing speed, and generating a current copy of the data set by reading the base copy and the changes. If a threshold number of entries in the first change data set is reached, then part or all of the first change data set is moved into a second change data set in the first non-volatile memory, where the generating step includes reading the second change data set. If a threshold number of entries in the second change data set is reached, then the current copy is generated by reading the base copy and the changes in the first and the second non-volatile memory.


