Memory System With Separate Read And Write Layers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory systems face inefficiencies due to the differences in read/write speeds and power consumption between volatile and nonvolatile memories, leading to suboptimal performance and memory lifetime, especially when handling cache misses that require data transfer between layers.
Innovation Solution
A memory system with separate read and write memory layers, utilizing nonvolatile memory for read operations and volatile memory for write operations, and employing a memory management unit to optimize data storage based on reference types and storage capacity, allowing for efficient data handling and improved access speeds.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If volatile memory is used for both read and write operations in conventional memory systems, then data access speed is maintained at high levels, but memory lifetime and power consumption are compromised
Solution Approach 1:
The memory system is segmented into separate read memory layers (non-volatile memory) and write memory layers (volatile memory). This segmentation allows each memory type to operate in its optimal regime: non-volatile memory handles read operations for longevity, while volatile memory handles write operations for speed, thereby resolving the contradiction between access speed and memory lifetime.
Solution Approach 2:
Different quality characteristics are assigned to different memory layers: the read memory layer uses non-volatile memory with higher density and longer lifetime, while the write memory layer uses volatile memory with faster write speeds. This local differentiation of memory qualities allows the system to optimize both lifetime and speed simultaneously.
2Duration of action of stationary object
If nonvolatile memory is used for both read and write operations, then memory lifetime is improved, but data access speed deteriorates
Solution Approach 1:
By segmenting the memory system into separate read and write layers, non-volatile memory is dedicated solely to read operations where its lifetime advantage is most valuable, while volatile memory handles write operations where speed is critical. This prevents the speed penalty of using non-volatile memory for both operations.
Solution Approach 2:
The system creates a copy of data in volatile memory (write memory layer) after initial write to non-volatile memory. This copy allows fast read operations without repeatedly writing to the slower non-volatile memory, effectively copying the data to a faster medium for subsequent access.
3Device complexity
If conventional memory systems handle cache misses through sequential layer access, then device complexity is kept low, but processing time increases
Solution Approach 1:
The memory management unit performs preliminary actions by proactively loading data into appropriate memory layers based on predicted access patterns and reference types. This preparation reduces the time needed when actual data access is required, as data is already positioned in optimal memory locations.
Solution Approach 2:
The memory management unit uses feedback from access patterns and reference types to dynamically adjust data placement strategies. By analyzing which data is accessed most frequently and how it is accessed (read vs write), the system optimizes the mapping between memory layers, reducing cache miss processing time while maintaining manageable complexity.
Data Source
AI summary
A memory system having multiple memory layers includes a first memory layer comprising a volatile memory, a second memory layer comprising a first sub-memory and a second sub-memory. In response to a reference failure that occurred in the first memory layer, to which a read reference failed data and a write reference failed data are respectively loaded from a lower level memory layer.


