CXL Memory Module Prefetch Control for Lower Access Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory modules struggle to efficiently prefetch and manage data based on the access patterns of hosts, leading to suboptimal performance and increased latency.

Innovation Solution

A memory module that communicates with a host through a Compute Express Link (CXL) interface, featuring a memory controller with a cache memory, map management data storage, and prefetch controller. The prefetch controller uses multiple algorithms (temporal locality, spatial locality, branch locality, equidistant locality, and sequential locality) to calculate prefetch priorities and prefetch data into the cache memory based on the host's access patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is prefetched based on host access patterns using multiple algorithms, then data access efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvedata access efficiencyVSAvoidprefetch controller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The prefetch controller is divided into multiple independent prefetchers, each responsible for a specific algorithm (temporal locality, spatial locality, branch locality, equidistant locality, sequential locality). Each prefetcher independently calculates prefetch priorities using its designated algorithm, allowing the system to achieve high data access efficiency through parallel processing while managing complexity through modular design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by prefetching candidate data into the cache memory before the host actually requests it. The memory controller stores access pattern information and uses multiple algorithms to predict which data will be needed soon, proactively loading it into the cache to reduce future access latency and improve overall data access efficiency.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If candidate data is selected and prefetched into cache memory, then access latency is reduced, but memory bandwidth is consumed

Engineering Contradiction:
Improveaccess latencyVSAvoidmemory bandwidth consumption
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

The system dynamically changes parameters by calculating prefetch priorities based on multiple algorithms (temporal locality, spatial locality, branch locality, equidistant locality, sequential locality) and host access patterns. This allows the system to adaptively select which candidate data to prefetch, optimizing the balance between reducing access latency and minimizing unnecessary memory bandwidth consumption by only prefetching data with high predicted utility.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The memory controller stores and analyzes host access pattern information, using this feedback to continuously refine prefetch decisions. By monitoring actual host access behavior and comparing it with predicted patterns, the system adjusts its prefetch priorities dynamically, ensuring that memory bandwidth is used efficiently to prefetch data that will actually be accessed soon, thereby reducing latency without wasteful bandwidth consumption.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12346600B2Memory module, memory system including memory module, and method of operating the same
Publication Date: 2025.07.01 SK HYNIX INC
  • US12346600B2 patent drawing
  • US12346600B2 patent drawing
  • US12346600B2 patent drawing

AI summary

The present technology relates to an electronic device. According to the present technology, a memory module that communicates with a host through a compute express link (CXL) interface may include a memory device and a memory controller. The memory device may store data. The memory controller may store access pattern information of the host for data, select candidate data to be prefetched from among the data based on the access pattern information of the host and a plurality of algorithms, and prefetch target data among the candidate data.