Speculative Memory Address Translation for Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory management systems face inefficiencies in address translation and permission processing, particularly in multi-stage translation scenarios, which can lead to slower memory access and increased resource utilization due to the sequential nature of address translation and permission checks.

Innovation Solution

The proposed solution involves a memory management apparatus with prediction circuitry that generates a predicted second memory address based on a first memory address, allowing for speculative processing and prefetching, thereby initiating further processing tasks before definitive translation and permission checks are completed, and outputting the translated address when permission is granted.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If sequential address translation and permission checks are used, then security and correctness are ensured, but memory access latency increases

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

Solution Approach 1:

The patent applies preliminary action by performing address translation and permission checks in parallel before the actual memory access operation. The translation management unit initiates both the translation process and permission verification simultaneously, rather than sequentially, thereby reducing overall memory access latency while maintaining correctness through definitive checks before data transfer.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The translation management unit acts as an intermediary between the memory access request and the memory subsystem. It coordinates parallel translation and permission checking operations, managing the complexity of simultaneous operations and ensuring that both translation correctness and permission validity are verified before granting memory access.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If parallel address translation and permission processing is implemented, then memory access latency is reduced, but device complexity increases

Engineering Contradiction:
Improvememory access latencyVSAvoidtranslation management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments the memory management functionality into distinct units: a translation management unit that handles parallel coordination, and separate translation and permission check circuits. This segmentation allows complex parallel operations to be managed through modular design, reducing overall system complexity while enabling latency reduction through parallel processing.

Inventive Principle:
Principle #1Segmentation

3Productivity

If speculative prefetching is performed, then data retrieval speed is improved, but resource consumption increases

Engineering Contradiction:
Improvedata retrieval speedVSAvoidprocessing resource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action through speculative prefetching by predicting future memory access addresses and pre-loading data into the cache before actual access occurs. This preliminary data preparation reduces subsequent data retrieval latency and improves productivity, as the predicted data is already available when needed, offsetting the additional processing resources consumed by the prediction and prefetch operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11755497B2Memory management
Publication Date: 2023.09.12 ARM LTD
  • US11755497B2 patent drawing
  • US11755497B2 patent drawing
  • US11755497B2 patent drawing

AI summary

Memory management apparatus comprises input circuitry to receive a translation request defining a first memory address within a first memory address space; prediction circuitry to generate a predicted second memory address within a second memory address space as a predicted translation of the first memory address, the predicted second memory address being a predetermined function of the first memory address; control circuitry to initiate processing of the predicted second memory address; translation and permission circuitry to perform an operation to generate a translated second memory address for the first memory address associated with permission information to indicate whether memory access is permitted to the translated second memory address; and output circuitry to provide the translated second memory address as a response to the translation request when the permission information indicates that access is permitted to the translated second memory address.