Flexible Cache RAM for Compressed and Uncompressed Cachelines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache compression techniques are either inflexible or wasteful, as they either require separate caches for uncompressible data or waste space when accommodating uncompressed data in tag RAMs designed for compressed data.

Innovation Solution

A cache structure with flexible RAMs that can operate in modes to accommodate both compressed and uncompressed cachelines, allowing dynamic or static configuration of cache entries to optimize space usage and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the cache is designed to store compressed cachelines only, then the cache capacity is increased or silicon area is saved, but the cache cannot store uncompressible data without requiring a separate cache

Engineering Contradiction:
Improvecache capacityVSAvoidability to store both compressed and uncompressed data
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The cache structure allows dynamic reconfiguration of RAM fields between compressed and uncompressed modes. Each cache entry can be configured at runtime to store either compressed cachelines or uncompressed cachelines, enabling the cache to adapt to different data types without requiring separate cache structures.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The same cache RAM fields are designed to serve multiple functions: they can store compressed cachelines when data is compressible, and uncompressed cachelines when data is not compressible. This multi-functionality eliminates the need for separate caches for different data types while maintaining optimal cache capacity utilization.

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

2Quantity of substance

If the tag RAM is designed to accommodate multiple compressed cachelines per entry, then the cache capacity is increased, but space is wasted when storing uncompressed data

Engineering Contradiction:
Improveeffective cache capacityVSAvoidwasted space in tag RAM
Core Design Contradiction:
Quantity of substanceVSLoss of substance

Solution Approach 1:

The tag RAM fields are dynamically reconfigurable based on the compression status of cached data. When uncompressed data is stored, the tag RAM fields are configured to hold single uncompressed cacheline tags. When compressed data is stored, the same fields are configured to hold multiple compressed cacheline tags, eliminating space waste.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters of the tag RAM fields based on data characteristics. The field width and storage capacity parameters are adjusted according to whether the cached data is compressed or uncompressed, optimizing space utilization in both scenarios.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If separate caches are provided for compressed and uncompressed data, then each cache can be optimized for its specific data type, but the device complexity and latency increase

Engineering Contradiction:
Improveoptimization for specific data typesVSAvoidnumber of separate cache structures
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the functionality of separate compressed and uncompressed caches into a single unified cache structure. The same physical RAM fields serve both compressed and uncompressed data storage needs, reducing device complexity while maintaining the optimization benefits of specialized cache handling through software-controlled configuration.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12393517B2Flexible cache structure for caching compressed and uncompressed data
Publication Date: 2025.08.19 IMAGINATION TECH LTD
  • US12393517B2 patent drawing
  • US12393517B2 patent drawing
  • US12393517B2 patent drawing

AI summary

A device in which each field in a first RAM together with a respective field in a second RAM form a respective entry of a cache RAM. Caching circuitry is operable to select between applying a first mode and a second mode in at least one entry in the cache RAM. In the first mode, the respective field in the first RAM is used to hold a first portion of a single cacheline in a first format, and the respective field in the second RAM is used to hold the corresponding tag of the single cacheline and a remaining portion of the single cacheline. In the second mode, the first RAM is used to hold a plural cachelines in a second format shorter than the first format, and the corresponding entry in the second RAM is used to hold the corresponding tags of the plural cachelines.