Store-In Cache Reliability Using an Ancillary Store-Only Cache

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional Store-In caches lack robust reliability for maintaining locally modified data, especially in scenarios where Error Correcting Codes (ECC) are difficult to implement due to high overhead, leading to performance issues and vulnerability to soft errors.

Innovation Solution

The introduction of an Ancillary Store-Only Cache (ASOC) that holds recently stored lines with doubleword ECC, allowing for robust reliability and performance optimization by shielding higher cache levels from raw store bandwidth while enabling store-in behavior.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a Store-In cache is used to aggregate multiple stores and optimize cache hierarchy, then store bandwidth is reduced and cache levels are optimized, but reliability is worsened because locally modified data lacks protection against soft errors

Engineering Contradiction:
Improvestore bandwidthVSAvoiddata reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The cache system is segmented into two distinct parts: the main Store-In cache that handles performance optimization and aggregation, and a separate backup storage structure that provides reliability protection. This segmentation allows each component to specialize in its strength without compromising the other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A backup storage mechanism acts as an intermediary between the Store-In cache and the ultimate memory hierarchy, capturing copies of modified data for protection. This intermediary layer shields the main cache from reliability concerns while maintaining the performance benefits of Store-In operation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If Error Correcting Codes (ECC) are implemented at the L1 cache level to protect against soft errors, then reliability is improved, but performance overhead increases due to the complexity of maintaining ECC on byte granularity

Engineering Contradiction:
Improvesoft error protectionVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Instead of applying ECC uniformly across the entire L1 cache, the solution applies error protection selectively and locally through the backup storage mechanism that captures only modified data. This local approach provides necessary protection without the pervasive overhead of full ECC implementation.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The backup storage uses a simpler, less expensive error protection mechanism compared to full ECC, accepting that this backup layer is a temporary holding area for modified data that will eventually be written back to the main cache or memory. This disposable backup approach provides adequate protection at lower cost and complexity.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Reliability

If a Store-Through cache is used to maintain recoverable copies of data in the cache hierarchy, then reliability is improved, but store bandwidth increases because every store must pass through to the next cache level

Engineering Contradiction:
Improvedata recoverabilityVSAvoidstore bandwidth
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The reliability function is extracted from the main cache path and placed into a separate backup storage mechanism. This extraction allows the main Store-In cache to operate without the bandwidth overhead of Store-Through operation, while still providing error protection through the dedicated backup path.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The backup storage captures copies of modified data immediately when they occur in the Store-In cache, performing the protection action in advance before any potential errors can affect the data. This preliminary backup action ensures reliability without requiring data to traverse the entire cache hierarchy on every store operation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8826095B2Method and system for providing an improved store-in cache
Publication Date: 2014.09.02 TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD
  • US8826095B2 patent drawing
  • US8826095B2 patent drawing
  • US8826095B2 patent drawing

AI summary

A hardened store-in cache system includes a store-in cache having lines of a first linesize stored with checkbits, wherein the checkbits include byte-parity bits, and an ancillary store-only cache (ASOC) that holds a copy of most recently stored-to lines of the store-in cache. The ASOC includes fewer lines than the store-in cache, each line of the ASOC having the first linesize stored with the checkbits.