Program Counter Indexed Address Translation for TLB Miss Hotspots

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The translation from virtual memory addresses to physical memory addresses in computer systems is resource-intensive and slows down program execution due to the high number of misses in the translation lookaside buffer (TLB) for a small number of instructions, and these instructions frequently access the same page table entries.

Innovation Solution

Implementing a program counter (PC) indexed address translation table (PCAT) that stores page table entry information for static instructions, leveraging hierarchical caching and dynamic updates based on TLB misses to optimize translation speed and energy efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a translation lookaside buffer (TLB) is used to cache virtual-to-physical memory address translations, then translation speed is improved for most instructions, but a small number of static instructions still cause disproportionate TLB misses, leading to slow translation when these instructions are executed

Engineering Contradiction:
Improvetranslation speedVSAvoidtranslation consistency for static instructions
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent segments the address translation mechanism into two parts: the existing TLB for dynamic instruction translations and a new Program Counter Indexed Data Address Translation Table (PCIDAT) specifically for static instructions. This segmentation allows each component to optimize for its specific purpose, with the PCIDAT ensuring reliable translation for the small number of static instructions that cause TLB misses.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The PCIDAT acts as an intermediary between the program counter and the TLB for static instructions. When a static instruction is executed, the PCIDAT is first consulted using the program counter as an index to obtain the physical base address, which is then used to access the TLB. This intermediary structure prevents TLB misses for static instructions while maintaining the TLB's efficiency for dynamic instructions.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If page tables are accessed to translate virtual memory addresses to physical memory addresses, then complete address translation is achieved, but substantial memory resources are consumed and program execution speed is reduced

Engineering Contradiction:
Improveaddress translation completenessVSAvoidprogram execution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The PCIDAT performs preliminary action by pre-calculating and storing the physical base address for each static instruction in the PCIDAT using the program counter as an index. This preliminary calculation eliminates the need for subsequent page table walks when these instructions are executed, significantly improving program execution speed while maintaining complete address translation through the combined PCIDAT-TLB mechanism.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If a program counter indexed address translation table (PCAT) is implemented to cache translations for static instructions, then translation time is reduced and energy is saved, but additional data structures and access logic are required

Engineering Contradiction:
Improvetranslation timeVSAvoidaddress translation structure complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies local quality by creating a specialized, simplified PCIDAT structure with specific local optimizations: using the program counter directly as an index, storing only the physical base address rather than complete page table entries, and implementing a dedicated access path for static instructions. This localized optimization reduces overall translation time without requiring complete restructuring of the address translation system.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12517838B2Computer architecture using program counter indexed data address translation
Publication Date: 2026.01.06 WISCONSIN ALUMNI RES FOUND
  • US12517838B2 patent drawing
  • US12517838B2 patent drawing
  • US12517838B2 patent drawing

AI summary

Translation between virtual memory addresses and physical memory addresses is mediated by a program counter indexed table holding virtual and corresponding physical addresses. In some embodiments, this table can be accessed early in the fetch cycle and avoid likely TLB misses.