Memory Address Translation Controller for Persistent Memory Copying

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The mismatch between CPU addressing scheme and persistent memory device granularity leads to increased latency during data movement, causing underutilization of memory devices and performance degradation.

Innovation Solution

A controller with a memory address decoding module translates CPU addresses into shifted addresses compatible with persistent memory granularity, distributing data across multiple devices to bridge the addressing gap.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If CPU addressing scheme with interleave set granularity (e.g., 4 kB) is used, then data can be stored in memory devices, but objects smaller than interleave set granularity are stored on a single memory device causing underutilization of memory devices and performance degradation

Engineering Contradiction:
Improvedata storage efficiencyVSAvoidlatency during data movement
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the data transfer process by introducing a controller that divides the incoming data stream into smaller units matching the ECC block size granularity of persistent memory devices. This segmentation allows fine-grained data to be distributed across multiple memory devices in parallel, resolving the contradiction between maintaining CPU addressing simplicity and achieving fine-grained memory utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a controller as an intermediary between the CPU and persistent memory devices. This intermediary translates CPU addresses into shifted addresses and manages the distribution of data across multiple memory devices, enabling the system to overcome the granularity mismatch without modifying the CPU addressing scheme.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If data is written to persistent memory with ECC block size granularity (e.g., 256 bytes), then data persistency is ensured, but the mismatch between CPU interleave set granularity and ECC block size causes increased latency

Engineering Contradiction:
Improvedata persistencyVSAvoidlatency during data movement
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent changes the addressing parameter by introducing a shifted address scheme. The controller translates CPU addresses into shifted addresses that account for the granularity difference between CPU interleave sets and ECC blocks. This parameter transformation enables efficient mapping of fine-grained persistent memory writes to CPU addresses without compromising data persistency.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If memory copy operation followed by cache flush operation and memory barrier is executed, then data persistency is ensured, but the performance is bottlenecked by the single persistent memory device

Engineering Contradiction:
Improvedata persistencyVSAvoiddata transfer bandwidth
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the data transfer across multiple persistent memory devices by distributing fine-grained data units to different devices based on shifted address mapping. This parallel distribution across multiple devices eliminates the single-device bottleneck while maintaining data persistency through proper ordering and barriers.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a new dimension to the addressing space by introducing shifted addresses that map CPU addresses to a distributed memory namespace. This dimensional transformation enables parallel access across multiple memory devices while preserving the original CPU addressing simplicity and data persistency requirements.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS20250328468A1Controller and method for copying data from processing unit to memory system
Publication Date: 2025.10.23 HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
  • US20250328468A1 patent drawing
  • US20250328468A1 patent drawing
  • US20250328468A1 patent drawing

AI summary

A controller is provided to copy data from a processing unit to a memory system, wherein the processing unit includes a volatile memory and the memory system includes a persistent memory, wherein the controller includes a memory address decoding module that is configured to receive a first address from the processing unit, the first address is a physical address for the data to be copied to as utilized by the processing unit. The memory address decoding module is further configured to translate the first address into a second address taking into account interleaving settings and granularity of the persistent memory, wherein the second address is a shifted version of the first address, and is for the persistent memory and provide the second address to a memory controller of the memory system. The controller reduces the latency during data movement from the processing unit to the persistent memory devices.