Associative Write-Back Caching System with Atomic Metadata Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current caching systems face challenges in minimizing latency and data loss due to system failures, particularly in write-back caching, where dirty data is vulnerable to loss, and fully associative caching systems can have slow look-up processes impacting latency.

Innovation Solution

A caching system that allocates physical locations in cache memory without regard to pending read requests, updates metadata to associate logical and physical addresses, maintains a use count for data access requests, and returns locations to the free list when no requests are pending, ensuring atomicity and efficient data management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a fully associative caching system is used to improve memory usage efficiency and hit rate, then memory usage efficiency and hit rate are improved, but the look-up process becomes slow and latency increases

Engineering Contradiction:
Improvememory usage efficiencyVSAvoidlook-up time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the caching system into two distinct components: a fully associative cache for storing data blocks and a separate content-addressable memory (CAM) structure for address translation. This segmentation allows the associative cache to maintain high memory usage efficiency while the CAM structure performs fast look-ups, thereby resolving the contradiction between associative caching benefits and look-up time penalties.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a content-addressable memory (CAM) as an intermediary between the host and the fully associative cache. The CAM structure handles the address translation and look-up operations, enabling fast address resolution without slowing down the associative cache's data access operations. This intermediary resolves the contradiction by offloading the look-up function to a specialized structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If write-back caching is used to reduce latency by storing data in cache memory, then write latency is reduced, but dirty data becomes vulnerable to loss due to system failures

Engineering Contradiction:
Improvewrite latencyVSAvoiddata loss vulnerability
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent implements prior cushioning by maintaining a use count for each cache entry and checking for pending read requests before allowing data to be evicted or marked as invalid. This protective mechanism ensures that data is not lost or corrupted during system failures by verifying data integrity and completeness before cache operations, thereby reducing vulnerability while maintaining write-back caching benefits.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Solution Approach 2:

The patent employs feedback mechanisms by continuously tracking the use count of cache entries and monitoring pending read requests. This feedback information is used to make informed decisions about cache management, ensuring that data is not prematurely evicted or marked as invalid, thus preventing data loss while maintaining the performance benefits of write-back caching.

Inventive Principle:
Principle #23Feedback

3Speed

If physical locations are allocated in cache memory during write requests, then write operations are faster, but data integrity may be compromised if read requests are interrupted

Engineering Contradiction:
Improvewrite operation speedVSAvoiddata integrity
Core Design Contradiction:
SpeedVSManufacturing precision

Solution Approach 1:

The patent applies preliminary action by allocating physical locations in cache memory before completing the write operation, but it uses feedback mechanisms to verify that no read requests are pending before finalizing the data transfer. This approach enables fast write operations while maintaining data integrity by checking the state of cache entries before allowing potential interruptions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses feedback by monitoring pending read requests and use counts to determine whether it is safe to allocate physical locations and complete write operations. This feedback mechanism ensures that data integrity is maintained even as write operations are expedited, resolving the contradiction between speed and precision.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10169232B2Associative and atomic write-back caching system and method for storage subsystem
Publication Date: 2019.01.01 SEAGATE TECH LLC
  • US10169232B2 patent drawing
  • US10169232B2 patent drawing
  • US10169232B2 patent drawing

AI summary

In response to a cacheable write request from a host, physical cache locations are allocated from a free list, and the data blocks are written to those cache locations without regard to whether any read requests to the corresponding logical addresses are pending. After the data has been written, and again without regard to whether any read requests are pending against the corresponding logical addresses, metadata is updated to associate the cache locations with the logical addresses. A count of data access requests pending against each cache location having valid data is maintained, and a cache location is only returned to the free list when the count indicates no data access requests are pending against the cache location.