Hybrid Memory Cache Architecture for Storage Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory systems face inefficiencies in handling repetitive and predictable read/write patterns, leading to increased processing time and resource consumption, especially when dealing with exceptions and overutilization of physical memory resources.

Innovation Solution

A hybrid memory system is introduced, utilizing a combination of memory resources such as 3D Xpoint non-volatile memory and flash memory, with a controller that selectively diverts certain operations to a faster, low-latency memory portion for caching frequently accessed data and managing access patterns to alleviate bottlenecks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If a hybrid memory system with cache architecture is implemented, then processing time and latency are reduced, but device complexity increases

Engineering Contradiction:
Improveprocessing timeVSAvoiddevice complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The memory system is segmented into multiple portions with different characteristics (first memory portion with higher latency, second memory portion with lower latency). The controller segments memory operations by determining which portion to access based on workload characteristics, thereby reducing overall processing time while managing complexity through structured division

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller acts as an intermediary between the host and memory portions, intelligently routing read operations to appropriate memory sections. This intermediary function manages the complexity of hybrid memory operations while delivering performance benefits through optimized access patterns

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If frequently accessed data is cached in faster memory portion, then latency is reduced, but memory resource utilization becomes uneven

Engineering Contradiction:
Improveaccess speedVSAvoidmemory resource utilization
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

Different memory portions are assigned different qualities/functions: the first memory portion handles less frequently accessed data with higher capacity, while the second memory portion handles frequently accessed data with faster access characteristics. This local differentiation optimizes both speed and overall resource utilization

Inventive Principle:
Principle #3Local quality

3Productivity

If controller selectively diverts operations to faster memory portion, then throughput is improved, but controller complexity increases

Engineering Contradiction:
ImprovethroughputVSAvoidcontroller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The controller dynamically adjusts operation routing based on real-time workload characteristics and memory status. This dynamic behavior enables improved throughput by adaptively diverting operations to appropriate memory portions while managing controller complexity through flexible, condition-based decision making

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11782854B2Cache architecture for a storage device
Publication Date: 2023.10.10 MICRON TECHNOLOGY INC
  • US11782854B2 patent drawing
  • US11782854B2 patent drawing
  • US11782854B2 patent drawing

AI summary

The present disclosure relates to a method for improving the reading and/or writing phase in storage devices including a plurality of non-volatile memory portions managed by a memory controller, comprising: providing at least a faster memory portion having a lower latency and higher throughput with respect to said non-volatile memory portions and being bi-directionally connected to said controller; using said faster memory portion as a read and/or write cache memory for copying the content of memory regions including more frequently read or written logical blocks of said plurality of non-volatile memory portions. A specific read cache architecture for a managed storage device is also disclosed to implement the above method.