Multi-Level Cache Hierarchy with Selector Array

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Inclusive multi-level cache structures in modern microprocessors require more chip space and consume excessive power due to duplicated data in higher-level caches, which rarely improves performance in multi-core systems.

Innovation Solution

A multi-level cache structure is designed with a hierarchical configuration that includes a tag array, a selector array, and a data array, where the selector array indicates which data entries are present in the data array, reducing the size of the data array in higher-level caches while maintaining performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If inclusive multi-level cache structures are used, then data access performance may be improved when lower-level cache data is invalid, but chip space and power consumption increase significantly

Engineering Contradiction:
Improvedata access performanceVSAvoidchip space
Core Design Contradiction:
SpeedVSArea of stationary object

Solution Approach 1:

The patent extracts only the necessary metadata (selector array and tag array) from the traditional inclusive cache structure, separating the data storage function from the metadata management function. This allows the higher-level cache to maintain performance monitoring capabilities without storing duplicate data, thereby reducing chip space while preserving performance benefits.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The tag array and selector array serve multiple functions: they track data presence, enable performance monitoring, and support hit/miss detection across multiple cores. This multi-functionality allows the cache structure to maintain performance benefits without requiring duplicate data storage, resolving the contradiction between performance and chip space.

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

2Speed

If inclusive multi-level cache structures are used, then data access performance may be improved when lower-level cache data is invalid, but power consumption increases

Engineering Contradiction:
Improvedata access performanceVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by stationary object

Solution Approach 1:

The patent removes the data storage component from the higher-level cache, keeping only the metadata structures (tag array and selector array). This extraction eliminates the power consumption associated with maintaining duplicate data while preserving the performance monitoring and hit/miss detection capabilities that improve data access performance.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the state of the higher-level cache from storing actual data to storing only metadata (tags and selectors). This parameter change from data storage to metadata storage significantly reduces power consumption while maintaining the ability to detect cache hits and misses, thereby preserving performance benefits.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If duplicate data is stored in higher-level cache, then data availability for other processors is improved, but chip space and power consumption increase

Engineering Contradiction:
Improvedata availabilityVSAvoidchip space
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The patent introduces the selector array as an intermediary structure that tracks data presence without storing duplicate data. This intermediary enables data availability for multiple processors by providing metadata about data location and validity, resolving the contradiction between data availability and chip space requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Instead of copying actual data to the higher-level cache, the patent copies only the metadata (tag array and selector array) that describes the data. This metadata copying provides data availability information to multiple processors without the chip space overhead of duplicating the actual data content.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9251070B2Methods and apparatus for multi-level cache hierarchies
Publication Date: 2016.02.02 ADVANCED MICRO DEVICES INC
  • US9251070B2 patent drawing
  • US9251070B2 patent drawing
  • US9251070B2 patent drawing

AI summary

A multi-level cache structure in accordance with one embodiment includes a first cache structure and a second cache structure. The second cache structure is hierarchically above the first cache. The second cache includes a tag array comprising a plurality of tag entries corresponding to respective addresses of data within a system memory; a selector array associated with the tag array; and a data array configured to store a subset of the data. The selector array is configured to specify, for each corresponding tag entry, whether the data array includes the data corresponding to that tag entry.