Prefetch MMU Page Translation for Real-Time DRAM Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional real-time hardware access of dynamic random-access memory (DRAM) controlled by strict schedules combined with virtual memory management often results in missed deadlines for real-time applications due to additional memory access steps, such as reading virtual memory page tables, which is problematic for systems like video processing.

Innovation Solution

A prefetch memory management unit (MMU) that proactively fetches virtual memory page table entries before a request is made, utilizing a first and second translation lookaside buffer and a burst buffer to store and transmit these entries, ensuring timely data access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If virtual memory management is used for application processors and Linux, then memory management flexibility is improved, but real-time deadline compliance deteriorates due to additional memory access steps

Engineering Contradiction:
Improvememory management flexibilityVSAvoidreal-time deadline compliance
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent implements a prefetch mechanism that proactively loads page table entries into the translation lookaside buffer (TLB) before they are actually needed by real-time applications. The prefetch controller monitors access patterns and initiates page table translations in advance, storing results in the TLB so that when real-time applications need to access memory, the translation is already available, thus eliminating the time penalty of virtual memory management for real-time operations.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If page table entries are fetched in real-time for each memory access, then address translation accuracy is improved, but access latency increases causing missed deadlines

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidmemory access latency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs page table translations in advance by having the prefetch controller initiate translations based on predicted access patterns. The translation lookaside buffer is pre-filled with page table entries before real-time applications need them. This preliminary action ensures that when actual memory access occurs, the translation is already cached in the TLB, maintaining translation accuracy while eliminating the latency penalty.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a dynamic system where the prefetch controller adapts to different access patterns and adjusts its prefetching behavior accordingly. The system dynamically manages the TLB, filling it with page table entries based on monitored access patterns while ensuring that real-time application accesses always find valid translations. This dynamic approach maintains translation accuracy across varying workloads while optimizing for low latency in real-time operations.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP4550156B1Prefetch memory management unit for real-time virtual memory address translation
Publication Date: 2026.05.13 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • EP4550156B1 patent drawingFigure 1
  • EP4550156B1 patent drawingFigure 2
  • EP4550156B1 patent drawingFigure 3

AI summary

An MMU with prefetch functionality is provided. The MMU includes a first TLB, burst buffer, second TLB and control logic. The first TLB is configured to fetch a first set of one or more first page table entries based, at least in part, on a virtual address, and before a request to access a client address is received from a client. The burst buffer stores a plurality of second page table entries from a respective page table associated with a first page table address. A second translation lookaside buffer is configured to fetch a first set of one or more second page table entries of the plurality of second page table entries from the burst buffer based, at least in part, on the virtual address, and before the request to access a client address is received from the client.