L1 Cache Way Predictor Table for Power and Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current CPU designs face challenges in reducing latency and power consumption during L1 cache access, particularly due to high latency in reading data from the L1 data cache and contention issues among multiple memory operations accessing the same circuit macro.

Innovation Solution

The implementation of a high-frequency and low-power L1 data cache access technique using a hierarchy of way predictor tables, which predict cache line locations based on virtual addresses and metadata, allowing only necessary circuit macros to be enabled, thereby reducing power consumption and mitigating contention issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all circuit macros are enabled for cache access, then data access reliability is improved, but power consumption increases and contention among multiple memory operations worsens

Engineering Contradiction:
Improvedata access reliabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The way predictor table pre-computes and stores the location of cache lines before actual cache access occurs. When a load instruction is executed, the virtual address is used to index the way predictor table, which already contains the predicted cache line location, eliminating the need to enable all circuit macros and reducing power consumption while maintaining reliable access.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The way predictor table acts as an intermediary structure between the load instruction and the L1 data cache. It translates virtual addresses to cache line locations without requiring full cache activation, thereby mediating between the need for reliable data access and the desire to reduce power consumption and contention.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If traditional cache access methods are used, then implementation simplicity is maintained, but latency increases and clock frequency is constrained

Engineering Contradiction:
Improveimplementation simplicityVSAvoidcache access latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The way predictor table is pre-filled with cache line location information during cache fill operations. This preliminary action allows subsequent load instructions to quickly retrieve cache line locations without undergoing full cache access procedures, significantly reducing latency while maintaining relatively simple implementation through the addition of the predictor table structure.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If multiple memory operations access the L1 data cache simultaneously, then processing throughput is improved, but contention increases and access time increases

Engineering Contradiction:
Improveprocessing throughputVSAvoidaccess time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The way predictor table pre-determines cache line locations for multiple pending load instructions using their virtual addresses. This allows the cache system to prepare and organize access to different cache lines in advance, reducing contention when multiple memory operations execute simultaneously and decreasing actual access time while maintaining high throughput.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11048637B2High-frequency and low-power L1 cache and associated access technique
Publication Date: 2021.06.29 SAMSUNG ELECTRONICS CO LTD
  • US11048637B2 patent drawing
  • US11048637B2 patent drawing
  • US11048637B2 patent drawing

AI summary

A high-frequency and low-power L1 cache and associated access technique. The method may include inspecting a virtual address of an L1 data cache load instruction, and indexing into a row and a column of a way predictor table using metadata and a virtual address associated with the load instruction. The method may include matching information stored at the row and the column of the way predictor table to a location of a cache line. The method may include predicting the location of the cache line within the L1 data cache based on the information match. A hierarchy of way predictor tables may be used, with higher level way predictor tables refreshing smaller lower level way predictor tables. The way predictor tables may be trained to make better predictions over time. Only selected circuit macros need to be enabled based on the predictions, thereby saving power.