N-way Cache Way Index Pre-determination for Power Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Portable wireless devices face power consumption and resource constraints due to the multiple comparisons required in n-way caches, which increase power usage and reduce processing efficiency.

Innovation Solution

Implementing a method that stores and retrieves way values from a list or table associated with sequential data read operations in an n-way cache, allowing for faster cache access and reduced power consumption by minimizing tag array evaluations, especially during loop iterations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If multiple comparisons are performed to determine whether requested data is stored at a particular way of the n-way cache, then the cache can accurately locate data, but power consumption increases and processing resources are consumed

Engineering Contradiction:
Improvedata location accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by pre-determining which cache way contains the requested data before performing the actual cache access. The system determines the way index from the cache address and directly uses this pre-determined information to access the correct cache way, eliminating the need for multiple comparisons during the actual cache operation. This resolves the contradiction by performing the accurate location determination in advance, allowing the actual access to proceed without power-consuming comparisons.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If multiple comparisons are performed in the n-way cache, then data can be accurately located, but processing efficiency decreases

Engineering Contradiction:
Improvedata location accuracyVSAvoidprocessing efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system performs the way determination action in advance by extracting the way index from the cache address and storing it for later use. When a cache access is required, the pre-determined way index is directly used to access the correct cache way without performing multiple comparisons during the critical access path. This preliminary determination maintains data location accuracy while significantly improving processing efficiency during actual cache operations.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If the entire cache line is read from the cache, then all data in the cache line is retrieved, but power consumption increases when only part of the data is needed

Engineering Contradiction:
Improvedata retrieval completenessVSAvoidpower consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent applies the extraction principle by reading only the specific byte or word from the cache line that is actually needed, rather than reading the entire cache line. The system extracts only the required portion of data from the cache way, eliminating the power consumption associated with transferring and processing unnecessary data. This resolves the contradiction by taking out only the necessary data quantity, maintaining data retrieval completeness for the needed information while reducing power consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP2437176B1System and method of using an N-way cache
Publication Date: 2019.04.17 QUALCOMM INC
  • EP2437176B1 patent drawingFigure 1
  • EP2437176B1 patent drawingFigure 2
  • EP2437176B1 patent drawingFigure 3

AI summary

A system and method of using an n-way cache are disclosed. In an embodiment, a method includes determining a first way of a first instruction stored in a cache and storing the first way in a list of ways. The method also includes determining a second way of a second instruction stored in the cache and storing the second way in the list of ways. In an embodiment, the first way may be used to access a first cache line containing the first instruction and the second way may be used to access a second cache line containing the second instruction.