TLB Entry Allocation via Page Size Indexing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Inconsistent page size indications in translation lookaside buffer (TLB) requests can lead to erroneous operations and security vulnerabilities due to incorrect allocation of TLB entries, as the TLB is designed to assume a single entry hit for each request, resulting in potential retrieval of stale data or data from another program.

Innovation Solution

Indexing TLB entries based on the indicated page size to ensure accurate allocation and prevent multiple entries from being identified as hits, thereby preventing erroneous operations and security threats.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If TLB entries are allocated based on virtual address alone without indexing by page size, then the TLB structure remains simple, but multiple TLB entries may be incorrectly identified as hits leading to erroneous operations and security vulnerabilities

Engineering Contradiction:
ImproveTLB entry allocation accuracyVSAvoidTLB indexing structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies dimensionality change by adding a page size dimension to the TLB entry indexing. Instead of indexing TLB entries solely by virtual address, the system now indexes by both virtual address and page size indication. This creates a multi-dimensional indexing structure where each TLB entry is uniquely identified by the combination of virtual address and page size, preventing incorrect hits while maintaining system reliability.

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

2Reliability

If the TLB assumes a single entry hit for each request, then the TLB operation remains fast and simple, but inconsistent page size indications can lead to retrieval of stale data or data from another program

Engineering Contradiction:
ImproveData retrieval accuracyVSAvoidTLB entry identification mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-indexing TLB entries with both virtual address and page size information before the actual translation request is processed. When a TLB request arrives, the system can immediately check both indexing dimensions to identify the correct entry, eliminating the need for complex post-retrieval validation and ensuring data accuracy from the outset.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If TLB entries are allocated without considering page size indication, then the allocation process remains simple, but security vulnerabilities and erroneous operations occur due to incorrect entry allocation

Engineering Contradiction:
ImproveTLB entry allocation correctnessVSAvoidTLB request processing
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the TLB entry identification process into two independent segments: virtual address matching and page size matching. Both segments must succeed for a valid TLB hit to be confirmed. This segmentation ensures that each dimension of the indexing is independently validated, preventing incorrect entry allocation while keeping the processing logic modular and manageable.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12105634B2Translation lookaside buffer entry allocation system and method
Publication Date: 2024.10.01 ATI TECHNOLOGIES ULC
  • US12105634B2 patent drawing
  • US12105634B2 patent drawing
  • US12105634B2 patent drawing

AI summary

A processing system includes a translation lookaside buffer (TLB). The TLB includes a plurality of TLB entries that are configured to store requested page size indications. The TLB is configured to be indexed via the requested page size indications such that a plurality of TLB requests that each indicate a same virtual address, but different respective requested page sizes are allocated respective TLB entries. As a result, in response to a TLB request that indicates a requested page size and has a virtual address that corresponds to multiple TLB entries, only a single TLB entry is identified as a TLB hit.