Volatile-Memory Redundancy for Non-Volatile Storage Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing non-volatile memory systems face challenges in maintaining storage reliability and efficiency due to the limitations of storing redundancy information in non-volatile memory, which can lead to increased latency and reduced memory lifetime.
Innovation Solution
Storing redundancy information in volatile memory, such as RAM, allows for faster data retrieval and management, reducing overall data storage latency and increasing memory lifetime by utilizing volatile memory's higher programming cycles and simpler management tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If redundancy information is stored in non-volatile memory, then storage reliability is improved, but data retrieval speed deteriorates and latency increases
Solution Approach 1:
The patent divides the storage system into two distinct memory types: non-volatile memory for storing data items and volatile memory for storing redundancy information. This segmentation allows each memory type to be optimized for its specific function, with non-volatile memory providing reliable long-term storage and volatile memory providing fast temporary storage for redundancy operations.
Solution Approach 2:
The patent applies different quality characteristics to different parts of the storage system. Non-volatile memory is used where reliability is critical for data persistence, while volatile memory is used where speed is critical for redundancy calculations and recovery operations. This local optimization of memory qualities resolves the contradiction between reliability and speed.
2Reliability
If redundancy information is stored in non-volatile memory, then storage reliability is improved, but memory lifetime deteriorates due to frequent writes
Solution Approach 1:
The patent segments the storage function by placing redundancy information in volatile memory, which has a different wear characteristics. This allows the non-volatile memory to be used primarily for data storage with fewer write cycles, thereby extending its operational lifetime while maintaining reliability.
Solution Approach 2:
The patent utilizes volatile memory, which is faster but more susceptible to data loss without power, for storing redundancy information. This is acceptable because redundancy information can be recalculated from data items if needed, and the volatile memory's short retention characteristic is compensated by backup power sources or advance notifications.
3Speed
If redundancy information is stored in volatile memory, then data retrieval speed is improved and latency is reduced, but reliability deteriorates due to power interruption sensitivity
Solution Approach 1:
The patent implements beforehand cushioning by providing backup power sources or advance notifications to protect the volatile memory from power interruptions. This ensures that redundancy information stored in volatile memory is preserved under adverse conditions, mitigating the reliability concern while maintaining the speed advantage.
4Ease of operation
If redundancy information is stored in volatile memory, then management tasks are simplified, but device complexity increases due to power protection mechanisms
Solution Approach 1:
The patent extracts the redundancy information storage function from the non-volatile memory system and places it in a separate volatile memory subsystem. This extraction simplifies the management of redundancy operations by isolating them in a dedicated fast memory space, while the added complexity of power protection mechanisms is contained within this separate subsystem.
Data Source
AI summary
A method for data storage includes storing two or more data items in a non-volatile memory. Redundancy information is calculated over the data items, and the redundancy information is stored in a volatile memory. Upon a failure to retrieve a data item from the non-volatile memory, the data item is reconstructed from remaining data items stored in the non-volatile memory and from the redundancy information stored in the volatile memory.


