Dynamic Memory Mirroring for Partial Redundancy Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current memory mirroring techniques are cost-inefficient and reduce effective usable memory, as they provide full redundancy only in high-end systems, and do not effectively manage partial mirroring, leading to system instability when errors occur.
Innovation Solution
Implementing dynamic memory mirroring, where the operating system can create, remove, migrate, and replace memory mirrors on the fly, using ACPI methods to allocate only a portion of memory for mirroring, allowing for variable memory mirroring and efficient management of critical data, even in the absence of errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If full memory mirroring is implemented to improve system reliability, then data integrity is preserved, but effective usable memory is reduced to about half and power consumption is doubled
Solution Approach 1:
The patent implements dynamic memory mirroring where the operating system can create, remove, migrate, and replace memory mirrors on the fly. The mirroring configuration is not static but can be adjusted dynamically based on system needs, allowing the system to maintain reliability while optimizing memory usage. The OS can direct the final mirrored size and reconfigure mirrors without requiring full memory to be mirrored at all times.
Solution Approach 2:
The patent enables partial memory mirroring where only a portion of memory is mirrored rather than the entire memory range. The OS can create small memory mirrors of less than half the memory, allowing the system to gain reliability benefits for critical data while preserving more usable memory capacity for general purposes.
2Reliability
If full memory mirroring is implemented to ensure data integrity, then system availability is improved, but hardware cost increases significantly
Solution Approach 1:
The patent enables partial memory mirroring where only a portion of memory is mirrored rather than the entire memory range. The OS can create small memory mirrors of less than half the memory, allowing the system to gain reliability benefits for critical data while preserving more usable memory capacity for general purposes.
Solution Approach 2:
The patent allows the mirroring ratio and configuration to be changed as a parameter controlled by the operating system. This enables flexible adjustment of the mirroring level based on cost constraints and reliability requirements, allowing systems to be configured at different points along the cost-reliability spectrum rather than being forced into full or no mirroring.
3Ease of manufacture
If partial memory mirroring is implemented to reduce cost, then hardware expenditure is optimized, but system stability deteriorates when mirror breaks
Solution Approach 1:
The patent implements monitoring and management of memory mirror status by the operating system. When a mirror breaks due to uncorrectable errors, the system can detect this condition and respond by reconfiguring mirrors on subsequent power-on self-test (POST) or during operation. The OS can create new mirrors in different memory ranges, ensuring continuous stability even when individual mirrors fail.
Solution Approach 2:
The patent performs preliminary mirror reconfiguration during power-on self-test (POST) before the system enters normal operation. If a mirror is detected as broken, the system proactively reconfigures mirrors during POST, ensuring that the system starts in a stable, redundant state rather than entering operation with broken mirrors that could cause instability.
4Device complexity
If static memory mirroring is implemented by system firmware, then implementation simplicity is maintained, but flexibility and adaptability are reduced
Solution Approach 1:
The patent implements dynamic memory mirroring where the operating system can create, remove, migrate, and replace memory mirrors on the fly. The mirroring configuration is not static but can be adjusted dynamically based on system needs, allowing the system to maintain reliability while optimizing memory usage. The OS can direct the final mirrored size and reconfigure mirrors without requiring full memory to be mirrored at all times.
Solution Approach 2:
The patent introduces the operating system as an intermediary layer between the hardware and the memory mirroring function. Rather than firmware directly controlling mirroring in a static manner, the OS acts as a mediator that can dynamically adjust mirror configuration, allocate memory ranges for mirroring, and respond to system conditions, thereby adding flexibility while maintaining manageable complexity through standardized OS interfaces.
Data Source
AI summary
In one embodiment, the present invention includes a method for receiving an indication of a loss of redundancy with respect to a pair of mirrored memory regions of a partially redundant memory system, determining new mirrored memory regions, and dynamically migrating information stored in the original mirrored memory regions to the new mirrored memory regions. Other embodiments are described and claimed.


