Demand-Based Volatile Memory Provisioning for Non-Volatile Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computing devices rely on volatile DRAM memory, which loses data upon power interruption, while non-volatile NAND memory is costly and less efficient for main storage due to higher access times and lower density.

Innovation Solution

A computing device dynamically identifies and manages volatile memory pages as non-volatile by assessing energy availability from both utility and battery power, allowing for demand-based provisioning and memory preservation during power outages, using operating system and firmware to simulate non-volatile storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If volatile DRAM memory is used for main memory, then cost and storage density are improved, but data loss occurs upon power interruption

Engineering Contradiction:
Improvestorage densityVSAvoiddata preservation
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The system performs preliminary actions by identifying and designating specific memory pages as non-volatile before power interruption occurs. The firmware maintains a data structure tracking which pages have been written to and should be preserved, enabling rapid preservation of critical data when power is lost without requiring continuous backup operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the non-volatile property from the traditional NAND memory context and applies it selectively to specific pages within the DRAM array. By treating individual pages as non-volatile rather than requiring entire memory modules to be non-volatile, the system achieves data preservation for critical pages while maintaining the cost and density benefits of DRAM for the remainder of the memory space.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If non-volatile NAND memory is used for main memory, then data preservation is improved, but cost increases and storage density decreases

Engineering Contradiction:
Improvedata preservationVSAvoidstorage density
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system applies local quality by granting non-volatile properties to only those specific memory pages that require data preservation, rather than making the entire memory system non-volatile. This selective approach allows critical pages to have enhanced reliability while the majority of DRAM capacity maintains its high density and low cost characteristics.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments the DRAM memory space into volatile and non-volatile pages, allowing different reliability characteristics to coexist within the same physical memory array. This segmentation enables the system to achieve data preservation for essential pages without incurring the full cost and density penalties of using NAND memory for the entire memory subsystem.

Inventive Principle:
Principle #1Segmentation

3Productivity

If non-volatile memory pages are dynamically added based on demand, then application performance is improved, but energy consumption increases

Engineering Contradiction:
Improveapplication performanceVSAvoidenergy consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The system implements dynamics by allowing the set of non-volatile memory pages to change over time based on application demand. The firmware can dynamically add pages to the non-volatile set when applications require additional persistent storage and remove pages when demand decreases, optimizing the balance between performance and energy consumption adaptively rather than using a static configuration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs feedback mechanisms where the operating system monitors application usage patterns and communicates demand for non-volatile storage back to the firmware. This feedback loop enables the system to adjust the number of non-volatile pages in response to actual usage conditions, increasing non-volatile capacity when performance is bottlenecked and reducing it when energy conservation is prioritized.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10115442B2Demand-based provisioning of volatile memory for use as non-volatile memory
Publication Date: 2018.10.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10115442B2 patent drawing
  • US10115442B2 patent drawing
  • US10115442B2 patent drawing

AI summary

A computing device may comprise a processor, a volatile memory and a non-volatile storage device. An operating system or firmware of the device may cause one or more pages of the volatile memory to be treated, by applications executing on the computing device, as non-volatile memory pages. A number of pages that may be treated as non-volatile may be determined based on demand for non-volatile storage by at least one application executing on the computing device.