Current Page Translation Register for Low Latency Memory Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In processor systems supporting virtual memory, the translation of virtual addresses to physical addresses and permission data retrieval can result in significant latency and increased dynamic power consumption due to the reliance on micro-translation look-aside buffers (μTLBs) and Memory Management Units (MMUs, especially when μTLB entries are invalidated or miss latency occurs.

Innovation Solution

Implementing a current page translation register that caches virtual to physical address translation data and optional access permission data, providing an additional caching level above typical translation look-aside buffers, which reduces page hit/miss determination time and power consumption by storing frequently accessed page data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If virtual address translation is performed through μTLB/MMU for every access, then address translation accuracy is ensured, but translation latency increases significantly (tens to hundreds of cycles)

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

Solution Approach 1:

The patent pre-fetches and stores translation data for the current page in the translation data storage unit before actual memory access occurs. When a virtual address falls within the current page range, the pre-stored translation data is directly used, avoiding real-time μTLB/MMU lookup and reducing translation latency from tens/hundreds of cycles to essentially one cycle.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of maintaining full page table translation capabilities in the fast path, the patent implements a partial solution by caching only the current page's translation data in the translation data storage unit. This partial caching approach provides sufficient accuracy for within-page accesses while dramatically reducing the complexity and latency compared to full μTLB/MMU operation.

Inventive Principle:
Principle #16Partial or excessive action

2Speed

If μTLB is implemented in SRAM memory to provide fast translation, then translation speed is improved, but dynamic power consumption increases

Engineering Contradiction:
Improvetranslation speedVSAvoiddynamic power consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent extracts the translation data storage function from the traditional μTLB SRAM structure and implements it as a separate translation data storage unit. This extracted storage unit is optimized for power efficiency by storing only the current page's translation data rather than maintaining a large associative cache, thereby achieving fast translation speeds with significantly reduced dynamic power consumption compared to conventional SRAM-based μTLB.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If μTLB entries are invalidated by MMU to maintain translation accuracy, then address translation reliability is improved, but μTLB miss latency increases and power consumption increases

Engineering Contradiction:
Improvetranslation accuracyVSAvoidμTLB miss latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system pre-fetches translation data from the MMU and stores it in the translation data storage unit before it is needed for actual memory accesses. This preliminary action ensures that when the MMU invalidates μTLB entries, the translation data is already available in the storage unit, eliminating μTLB miss latency and avoiding the need for power-consuming re-fetch operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The translation data storage unit acts as an intermediary between the MMU and the address translation process. It buffers translation data independently of μTLB validity states, allowing the system to maintain translation accuracy through MMU validation while avoiding the performance penalty of μTLB misses. The intermediary storage decouples the reliability function (MMU validation) from the speed function (translation execution).

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9514058B2Local page translation and permissions storage for the page window in program memory controller
Publication Date: 2016.12.06 TEXAS INSTRUMENTS INC
  • US9514058B2 patent drawing
  • US9514058B2 patent drawing
  • US9514058B2 patent drawing

AI summary

This invention provides a current page translation register storing virtual to physical address translation data for a single current page and optionally access permission data for the same page for program accesses. If an accessed address is within the current page, the address translation and permission data is accessed from current page translation register. This current page translation register provides an additional level of caching of this data above the typical translation look-aside buffer and micro translation look-aside buffer. The smaller size of the current page translation register provides faster page hit/miss determination and faster data access using less power than the typical architecture. This is helpful for program access which generally hits the current page more frequently than data access.