Variable TLB Indexing for Page Size Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processors face inefficiencies in translation lookaside buffers (TLBs) due to fixed page sizes, leading to memory waste and increased TLB misses, especially when dealing with multiple processes and varying page sizes, which degrades performance.

Innovation Solution

Implementing a processor with TLBs that support variable page sizes by using indices and flags to manage different page sizes and processes, allowing for dynamic page size association and index scrambling to reduce collisions and improve uniform distribution in TLB tables.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If fixed page sizes are used in TLBs, then the TLB structure is simple and easy to implement, but memory waste increases and TLB misses increase, degrading performance

Engineering Contradiction:
ImproveTLB implementation simplicityVSAvoidaddress translation efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent implements variable page size support in the TLB, allowing the system to dynamically select between different page sizes (e.g., 4KB, 16KB, 64KB) based on the specific memory access patterns and process requirements. This dynamic adaptation enables the TLB to optimize for both small and large pages, reducing memory waste while maintaining implementation feasibility through structured indexing mechanisms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the page size parameter from a fixed value to a variable that can be selected based on the virtual address characteristics. By incorporating page size indicators in the virtual address and using corresponding indexing strategies, the system can adjust the effective page size for different translation scenarios, thereby improving memory utilization and reducing TLB misses without fundamentally redesigning the entire TLB structure.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If variable page sizes are supported in TLBs, then memory waste is reduced and address translation efficiency is improved, but the TLB structure and indexing mechanism become more complex

Engineering Contradiction:
Improveaddress translation efficiencyVSAvoidTLB indexing mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the virtual address into multiple fields including page size indicators, process identifiers, and page number components. By dividing the address translation process into distinct segments that can be handled separately, the system manages variable page sizes through structured field extraction and comparison, reducing the perceived complexity while maintaining efficient translation capabilities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent designs the TLB indexing mechanism to serve multiple functions: it handles both fixed and variable page sizes, supports multiple processes simultaneously, and provides unified access paths. The indexing structure is made universal by incorporating process-specific and page-size-specific indexing strategies that can be selected based on the translation requirements, thereby managing complexity through multi-functional design.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Ease of operation

If process-specific virtual addresses are translated without variable page size support, then the TLB indexing is straightforward, but TLB misses increase and performance degrades

Engineering Contradiction:
ImproveTLB indexing simplicityVSAvoidTLB hit rate
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent introduces process identifiers and page size indicators as intermediary fields in the virtual address that facilitate more accurate TLB indexing. These intermediaries act as additional discrimination factors that help distinguish between different process-page size combinations, thereby increasing the likelihood of TLB hits while maintaining a manageable indexing structure through systematic field utilization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10719451B2Variable translation-lookaside buffer (TLB) indexing
Publication Date: 2020.07.21 OPTIMUM SEMICON TECH
  • US10719451B2 patent drawing
  • US10719451B2 patent drawing
  • US10719451B2 patent drawing

AI summary

A processor includes a translation lookaside buffer (TLB) comprising a plurality of ways, wherein each way is associated with a respective page size, and a processing core, communicatively coupled to the TLB, to execute an instruction associated with a virtual memory page, identify a first way of the plurality of ways, wherein the first way is associated with a first page size, determine an index value using the virtual memory page and the first page size for the first way, determine, using the index value, a first TLB entry of the first way, and translate, using a memory address translation stored in the first TLB entry, the first virtual memory page to a first physical memory page.