Persistent Memory Modules as Block Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The use of non-persistent memory modules as block storage in computer systems is limited due to the inability to retain information during power interruptions, leading to increased costs, lower reliability, higher component count, and design complexity when using battery backups or non-volatile memory components.
Innovation Solution
Configuring persistent memory modules to be invisible to the operating system, mapping them to an unallocated area of the memory address space, and storing mapping information in a protected persistent memory area, allowing them to function as block storage without constant power requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If non-persistent memory modules are used as block storage, then cost is reduced and component count is lowered, but data retention during power interruptions is lost
Solution Approach 1:
The patent changes the fundamental parameter of memory persistence by using persistent memory modules instead of non-persistent memory. This parameter change eliminates the need for complex power backup systems while maintaining data retention capability during power interruptions.
Solution Approach 2:
The patent extracts and removes the unnecessary power backup components (batteries, supercapacitors, controller logic) from the system by using inherently persistent memory modules, thereby reducing device complexity while maintaining reliability.
2Reliability
If battery backup power packs are added to non-persistent memory modules, then data retention during power loss is improved, but cost and device complexity increase
Solution Approach 1:
The patent changes the memory type parameter from non-persistent to persistent memory modules, which inherently retain data without requiring external power backup components, thereby simplifying manufacturing.
Solution Approach 2:
The patent removes battery backup power packs and associated controller components from the memory module design, eliminating the manufacturing complexity associated with integrating and testing these additional components.
3Reliability
If non-persistent memory modules are used for block storage, then cost is reduced, but information retention upon power disconnection is lost
Solution Approach 1:
The patent changes the fundamental parameter of memory persistence, using persistent memory modules that retain information upon power disconnection without requiring additional components such as batteries or supercapacitors.
Solution Approach 2:
The patent extracts and eliminates the need for quantity-intensive components (batteries, supercapacitors, additional controllers) by using persistent memory modules that provide data retention as an inherent property.
4Reliability
If persistent memory modules are configured as block storage, then data retention during power interruptions is maintained, but operating system visibility and access complexity increase
Solution Approach 1:
The patent introduces an intermediary software layer that translates between the persistent memory module's native interface and the block storage interface expected by the operating system, thereby maintaining data retention while managing access complexity.
Solution Approach 2:
The patent makes the persistent memory module multi-functional by enabling it to operate both as persistent storage and as block storage accessible through standard interfaces, reducing the need for separate storage systems.
Data Source
AI summary
A method of configuring a computer memory system includes receiving a request from customized software driver or a BIOS extension software or a customized legacy BIOS or a customized UEFI PMM extension software or a customized UEFI BIOS, scanning memory module sockets in response to the request, recognizing memory modules in the memory module sockets, the memory modules being made of, at least in part, persistent memory modules (PMMs), configuring the PMMs to be invisible to the OS, and storing the mapping information to a designated protected persistent memory area, and presenting the PMMs as a persistent block storage to the OS.


