Memory-Side Controller Capability Interpretation for Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computers with multi-layer memory hierarchies face increased memory access latency due to pointer-intense workloads, as traditional memory operations are executed inside the CPU, leading to inefficiencies in accessing distant memory layers.

Innovation Solution

Implementing a memory-side memory controller that translates virtual addresses to physical addresses and interprets capabilities to directly dereference pointers within the memory controller, reducing the number of memory accesses by executing operations on the memory side and using capabilities for fine-grained memory access control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory operations are executed inside the CPU with traditional memory hierarchy, then memory access control and management are centralized, but memory access latency increases significantly when accessing distant memory layers

Engineering Contradiction:
Improvememory access controlVSAvoidmemory access latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts pointer interpretation and capability validation functions from the CPU to the memory controller. The memory controller now independently interprets capabilities and performs pointer dereferencing, removing these operations from the CPU execution path and reducing memory access latency while maintaining centralized control.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces capabilities as intermediary data structures that enable the memory controller to perform fine-grained access control without CPU intervention. These capabilities act as mediators between the CPU's memory requests and the memory system, allowing the memory controller to autonomously validate and execute access operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If the memory controller autonomously interprets capabilities and dereferences pointers, then memory access latency is reduced, but the device complexity of the memory controller increases

Engineering Contradiction:
Improvememory access latencyVSAvoidmemory controller complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments the memory access function into distinct components: capability validation, pointer interpretation, and memory access execution. These segmented functions are implemented as separate modules within the memory controller, making the increased complexity manageable and organized while enabling parallel processing of different access operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary capability validation and interpretation in the memory controller before actual memory access occurs. By pre-processing capability information and validating access permissions ahead of time, the system reduces the complexity of real-time access control while maintaining security and correctness.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If capabilities are used for fine-grained memory access control, then security and access protection are enhanced, but the processing overhead for capability interpretation increases

Engineering Contradiction:
Improvememory access protectionVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent enables the memory controller to autonomously validate and interpret capabilities without CPU intervention. The memory controller self-services the capability interpretation process, using dedicated hardware logic to validate access permissions and dereference pointers, thereby maintaining security while avoiding the processing overhead of CPU involvement.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces software-based capability interpretation (which would require CPU processing) with hardware-based interpretation logic in the memory controller. This substitution of mechanical/hardware processing for software processing maintains fine-grained access control while significantly improving processing throughput by eliminating software overhead.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10628328B2Methods and systems including a memory-side memory controller configured to interpret capabilities to provide a requested dataset to a central processing unit
Publication Date: 2020.04.21 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10628328B2 patent drawing
  • US10628328B2 patent drawing
  • US10628328B2 patent drawing

AI summary

Methods and systems directed to a memory-side memory controller for interpreting capabilities and returning datasets to a Central Processing Unit (CPU) are provided. The CPU is configured to translate a first virtual address from a first capability to a first physical address, wherein the first capability is sent by a client application. The CPU is further configured to send the first physical address to the memory-side memory controller through a memory fabric. The memory-side memory controller loads a second capability located in the first physical address from an external memory through the memory fabric, interprets an address encoded within the second capability as a second physical address, and returns a dataset located in the second physical address from the external memory to the CPU through the memory fabric. The client application may set an offset field containing an offset parameter along with the first capability, and the memory-side memory controller may be configured to read the offset field and apply the offset parameter when loading the second capability from the external memory. The computing system may also include a mechanism to validate a capability, such as a validity bit or cryptographic signature.