TLB Entry Number Comparison for Store-to-Load Forwarding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional content-addressable memory (CAM) used in translation lookaside buffers (TLBs) for processor performance enhancement is costly and power-intensive due to extensive circuitry and increased comparison times with growing memory space, leading to inefficiencies in address translation and data forwarding.

Innovation Solution

Reducing the number of bits compared by using TLB entry numbers instead of physical addresses for store-to-load data forwarding, employing a 2-bit TLB way and 4-bit TLB index for a 64-entry TLB, and maintaining only virtual address indices and ways in the store buffer to minimize power consumption and speed path issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If conventional CAM is used in TLB for address translation, then address translation speed is improved, but power consumption and manufacturing cost increase due to extensive comparison circuitry

Engineering Contradiction:
Improveaddress translation speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by stationary object

Solution Approach 1:

The patent segments the address translation process into two parts: a small CAM for storing only TLB entry numbers (indices) and a separate structure for storing full translation entries. This segmentation allows the CAM to be dramatically reduced in size while maintaining translation speed, as only compact indices need to be compared in parallel rather than full physical addresses.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the critical comparison function from the full CAM and relocates it to a minimal index storage structure. The full translation entries are stored in conventional RAM, eliminating the need for extensive CAM circuitry while preserving the ability to quickly identify valid TLB entries through the small index CAM.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If CAM size increases to handle larger memory space, then address coverage is improved, but comparison time and power consumption increase

Engineering Contradiction:
Improveaddress space coverageVSAvoidcomparison time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent divides the address translation functionality into a small index CAM that handles only entry number comparison and a larger RAM structure that stores complete translations. This allows the system to support large address spaces through the RAM while maintaining fast comparison times through the small CAM, effectively decoupling address space coverage from comparison time.

Inventive Principle:
Principle #1Segmentation

3Speed

If store buffer uses CAM for store-to-load data forwarding, then data forwarding speed is improved, but device complexity and power consumption increase

Engineering Contradiction:
Improvedata forwarding speedVSAvoidbuffer circuitry complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent extracts the comparison operation from the store buffer and performs it separately using the TLB index. Instead of embedding CAM circuitry within the store buffer, the system uses the TLB's index comparison mechanism to identify matching entries, then performs data forwarding based on this external comparison result, thereby reducing buffer complexity while maintaining forwarding speed.

Inventive Principle:
Principle #2Taking out (Extraction)

4Use of energy by stationary object

If TLB entry number comparison is used instead of physical address comparison, then power consumption and comparison time are reduced, but implementation complexity increases

Engineering Contradiction:
Improvepower consumptionVSAvoidTLB management complexity
Core Design Contradiction:
Use of energy by stationary objectVSDevice complexity

Solution Approach 1:

The patent makes the TLB index comparison mechanism serve multiple functions: it enables both address translation validation and store-to-load data forwarding identification. By using the same index comparison logic for both purposes, the system avoids adding separate comparison circuitry while reducing overall power consumption and comparison time across multiple operations.

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

Data Source

PatentUS8984254B2Techniques for utilizing translation lookaside buffer entry numbers to improve processor performance
Publication Date: 2015.03.17 ASCALE TECHNOLOGIES LLC
  • US8984254B2 patent drawing
  • US8984254B2 patent drawing
  • US8984254B2 patent drawing

AI summary

A technique for operating a processor includes translating, using an associated translation lookaside buffer, a first virtual address into a first physical address through a first entry number in the translation lookaside buffer. The technique also includes translating, using the translation lookaside buffer, a second virtual address into a second physical address through a second entry number in the translation lookaside buffer. The technique further includes, in response to the first entry number being the same as the second entry number, determining that the first and second virtual addresses point to the same physical address in memory and reference the same data.