Virtual Cache Directory Eliminates TLB Lookup

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing size of microprocessor core caches leads to power consumption issues and timing constraints in Translation Lookaside Buffers (TLBs), which are critical in translating virtual to physical addresses, resulting in inefficiencies in cache memory access.

Innovation Solution

Implementing a virtual cache directory with a logically indexed and logically tagged structure that eliminates the need for TLB lookup during L1 cache hits, using a set-associative cache with a vertically stacked validation directory to reduce power consumption and improve access times, and integrating a TLB and higher-level cache for cache misses to confirm validation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If TLB is used to translate logical addresses to physical addresses in cache memory access, then address translation is achieved, but power consumption increases and access time increases

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidTLB power consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent extracts the address translation function from the TLB and relocates it to the cache directory. The cache directory now contains both logical addresses and physical addresses, allowing translation to occur during cache lookup without requiring a separate TLB access. This eliminates the need for TLB power-up during cache hits, directly reducing power consumption while maintaining accurate address translation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent merges the address translation functionality with the cache directory structure. By storing both logical and physical addresses in the same directory entry and performing translation during the cache lookup process, the invention combines two previously separate operations (TLB translation and cache lookup) into a single unified operation, reducing both power consumption and access time.

Inventive Principle:
Principle #5Merging (Combining)

2Quantity of substance

If TLB size is increased to handle growing cache memory, then address translation capacity improves, but timing constraints are violated and power consumption increases

Engineering Contradiction:
ImproveTLB entry capacityVSAvoidTLB lookup time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent extracts the address translation function from the TLB and relocates it to the cache directory. The cache directory now contains both logical addresses and physical addresses, allowing translation to occur during cache lookup without requiring a separate TLB access. This eliminates the need for TLB power-up during cache hits, directly reducing power consumption while maintaining accurate address translation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent merges the address translation functionality with the cache directory structure. By storing both logical and physical addresses in the same directory entry and performing translation during the cache lookup process, the invention combines two previously separate operations (TLB translation and cache lookup) into a single unified operation, reducing both power consumption and access time.

Inventive Principle:
Principle #5Merging (Combining)

3Measurement precision

If separate TLB lookup and cache directory lookup are performed, then address translation is complete, but access time increases due to critical path delays

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidcache access time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent merges the address translation functionality with the cache directory structure. By storing both logical and physical addresses in the same directory entry and performing translation during the cache lookup process, the invention combines two previously separate operations (TLB translation and cache lookup) into a single unified operation, reducing both power consumption and access time.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs address translation in advance by pre-loading both logical and physical addresses into the cache directory entries before they are needed. This preliminary action allows the translation to be completed as part of the cache lookup process itself, rather than requiring a separate subsequent TLB access, thereby reducing the critical path delay.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10810134B2Sharing virtual and real translations in a virtual cache
Publication Date: 2020.10.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10810134B2 patent drawing
  • US10810134B2 patent drawing
  • US10810134B2 patent drawing

AI summary

Disclosed herein is a virtual cache directory in a processor that eliminates address translations when the virtual address and the real address in the cache directory are the same. The processor is configured to support virtual memory and multiple threads. The virtual cache directory includes a plurality of directory entries, each entry is associated with a cache line. Each cache line has a tag. The tag includes a logical address, an address space identifier, a real address bit indicator, and virtual address to real address indicator. This virtual address to real address indicator indicates if the logical address and the real address are the same. When activated, address translation is not performed.