Hybrid Memory Controller Volatile Cache Data Retention
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Non-volatile hybrid memory systems face issues with data loss during power interruptions due to the volatility of their cache memory, and existing solutions require large batteries to backup the entire cache, which is inefficient.
Innovation Solution
A memory unit with a stable storage unit, a volatile cache, and an energy storage device, where the controller determines and writes pending write operations from the volatile cache to the stable storage unit when power is interrupted, using an energy storage device that provides backup power to facilitate this process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire contents of the volatile cache are copied to stable storage when power is interrupted, then data retention is ensured, but the battery capacity required becomes undesirably large
Solution Approach 1:
The patent extracts only the necessary data (pending write operations) from the volatile cache rather than copying the entire cache contents. The controller identifies and writes only the dirty data that has not yet been persisted to stable storage, significantly reducing the amount of data that needs to be transferred and the battery capacity required to support this operation.
Solution Approach 2:
Instead of performing a complete cache dump, the system performs a partial action by writing only the portion of data that is actually needed for data retention (the pending write operations). This partial action approach reduces energy consumption while still achieving the reliability goal of preventing data loss.
2Reliability
If a large battery is used to backup the entire volatile cache, then data retention during power interruption is ensured, but device size and cost increase
Solution Approach 1:
The patent extracts only the necessary data (pending write operations) from the volatile cache rather than copying the entire cache contents. The controller identifies and writes only the dirty data that has not yet been persisted to stable storage, significantly reducing the amount of data that needs to be transferred and the battery capacity required to support this operation.
3Speed
If the volatile cache is used to mask slow read and write times of non-volatile memory, then read and write speed is improved, but data is lost when power is interrupted
Solution Approach 1:
The system performs preliminary action by tracking which data in the volatile cache has been modified but not yet written to stable storage (pending write operations). When power is interrupted, this preliminary tracking information allows the system to quickly identify and preserve only the necessary data, combining the speed benefits of volatile cache with improved data retention.
Solution Approach 2:
The controller maintains information about pending write operations, creating a feedback mechanism that tracks the state of data in the volatile cache. This feedback allows the system to determine which data needs to be preserved and enables the selective write operation that maintains both speed and reliability.
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
This solution ensures data retention and reduces battery size requirements by writing only dirty data to stable storage, allowing for faster system reboots and improved battery life in devices like laptops.
Implementation Method 1
Some hybrid memories include a battery backup to copy the entire contents of the static or dynamic RAM to a flash memory when power is interrupted
Data Source
AI summary
Memory units and computer systems are provided. The computer systems include a memory unit. The memory unit includes a stable storage unit, an unstable storage unit, and a controller. The unstable storage unit stores pending write operations for the stable storage unit. The controller is configured to determine the locations in the unstable storage that store the pending write information and to selectively write the pending write operations to the stable storage unit when power to the memory unit is interrupted.


