Semi-Sorted Cache Tag Compression for Predictable Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing compression algorithms for cache lines yield inconsistent compression ratios, complicating hardware cache design and verification, and often exceed latency thresholds, making them impractical for implementation in cache hierarchies.

Innovation Solution

The semi-sorting compression method uses encoding and decoding tables to create a code word representing compressed prefix values, allowing for consistent compression and decompression of data items with high entropy, while operating within latency constraints by sorting data items based on prefixes and storing suffixes separately.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional compression algorithms are used on cache tags, then storage space is reduced, but compression ratio variability increases and hardware design complexity increases

Engineering Contradiction:
Improvestorage spaceVSAvoidhardware design complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent applies preliminary sorting of cache tags before compression. By sorting the tags in advance based on their prefix values, the compression algorithm can operate on already-ordered data, which enables consistent compression ratios and simplifies the hardware design by eliminating the need to handle variable-length compressed tags.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the cache tag into a prefix portion and a suffix portion. The prefix is compressed using the semi-sorting compression algorithm while the suffix is handled separately. This segmentation allows the compressed prefix to have consistent length, simplifying the overall tag structure and hardware design.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If conventional compression algorithms are used on cache tags, then storage space is reduced, but latency increases beyond acceptable thresholds

Engineering Contradiction:
Improvestorage spaceVSAvoidcompression latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The sorting operation is performed in advance before the compression step. This preliminary action reorganizes the data so that the actual compression process becomes faster and more predictable, reducing the latency impact on the cache operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the approach from using complex general-purpose compression algorithms to a specialized semi-sorting compression algorithm that operates on sorted data with specific parameters (prefix/suffix division). This parameter change enables the compression to meet latency requirements while achieving consistent compression ratios.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If compression algorithms with high compression ratios are used, then storage efficiency improves, but implementation simplicity decreases

Engineering Contradiction:
Improvestorage efficiencyVSAvoidimplementation simplicity
Core Design Contradiction:
Quantity of substanceVSEase of manufacture

Solution Approach 1:

By performing the sorting operation beforehand, the patent simplifies the compression implementation. The compression algorithm only needs to process already-sorted data with a straightforward prefix-suffix division, making the hardware implementation simpler while maintaining good compression efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the compression approach to work with sorted data and fixed prefix lengths. This parameter change transforms a complex variable-length compression problem into a simpler fixed-structure compression task that is easier to implement in hardware while achieving consistent compression ratios.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10749545B1Compressing tags in software and hardware semi-sorted caches
Publication Date: 2020.08.18 ADVANCED MICRO DEVICES INC
  • US10749545B1 patent drawing
  • US10749545B1 patent drawing
  • US10749545B1 patent drawing

AI summary

A data storage system performs partial compression and decompression of a set of memory items. The memory items each include a data block and a tag with a prefix making up at least part of the tag. The memory items are ordered based on the prefixes. A code word is created containing compressed information representing values of the prefixes for the set of memory items. The code word and block data for each of the memory items are stored in a memory. The code word is decompressed to recover the prefixes.