Cache Line Page Attribute Storage for TLB Lookup Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In processing systems with paged virtual memory, the large size of page tables and the need for memory accesses during address translation lead to time-consuming and power-consuming TLB lookups, and storing memory attributes in TLBs increases the number of bits to be accessed, slowing down lookups and consuming more power.

Innovation Solution

A processing system with a memory cache that stores both address and data lines, allowing page attributes to be retrieved using a virtual address without accessing the TLB, thereby reducing the need for TLB lookups and storing memory attributes as extra bits in cache lines instead of TLBs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory attributes are stored in the TLB, then attribute access is enabled, but the number of bits to be accessed increases, slowing down lookups and consuming more power

Engineering Contradiction:
Improveattribute access capabilityVSAvoidTLB lookup time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the attribute storage function by creating a separate attribute cache structure that is independent from the TLB. This allows the TLB to focus solely on address translation while attributes are cached separately, enabling parallel access and eliminating the need to access additional bits in the TLB during address translation operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary attribute cache structure that mediates between the TLB and the attribute storage. This intermediary component receives attribute information from the TLB and provides it to the attribute access logic, allowing attribute retrieval without requiring the TLB itself to contain and access attribute bits during the translation process.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If memory attributes are stored in the TLB, then attribute access is enabled, but power consumption increases due to accessing more bits

Engineering Contradiction:
Improveattribute access capabilityVSAvoidTLB power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the attribute storage function by creating a separate attribute cache structure that is independent from the TLB. This allows the TLB to focus solely on address translation while attributes are cached separately, enabling parallel access and eliminating the need to access additional bits in the TLB during address translation operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary attribute cache structure that mediates between the TLB and the attribute storage. This intermediary component receives attribute information from the TLB and provides it to the attribute access logic, allowing attribute retrieval without requiring the TLB itself to contain and access attribute bits during the translation process.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If page tables are stored in system memory, then complete address translation information is available, but memory accesses are required which are time-consuming

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidmemory access time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts frequently accessed attribute information from the page tables in system memory and stores it in a separate attribute cache structure. This extraction allows the system to retrieve attributes without requiring full page table walks in system memory, significantly reducing memory access time while maintaining translation accuracy through the TLB and attribute cache.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary action by pre-fetching and caching attribute information in the attribute cache structure before it is needed for attribute access. This preliminary caching of attributes alongside the TLB mechanism ensures that when address translation occurs, the attributes are already available in fast storage, eliminating the need for time-consuming memory accesses during the translation process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7805588B2Caching memory attribute indicators with cached memory data field
Publication Date: 2010.09.28 QUALCOMM INC
  • US7805588B2 patent drawing
  • US7805588B2 patent drawing
  • US7805588B2 patent drawing

AI summary

A processing system may include a memory configured to store data in a plurality of pages, a TLB, and a memory cache including a plurality of cache lines. Each page in the memory may include a plurality of lines of memory. The memory cache may permit, when a virtual address is presented to the cache, a matching cache line to be identified from the plurality of cache lines, the matching cache line having a matching address that matches the virtual address. The memory cache may be configured to permit one or more page attributes of a page located at the matching address to be retrieved from the memory cache and not from the TLB, by further storing in each one of the cache lines a page attribute of the line of data stored in the cache line.