Write Shielding Cache for Memory Endurance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer memory devices face degradation due to frequent switching of binary digits, leading to data loss or incorrect storage, especially in high-write-rate scenarios, where existing memory technologies like DRAM, STT, and memristive devices struggle with endurance and scalability.

Innovation Solution

A memory endurance system that includes a memory controller with a write shielding cache, which prioritizes writing to the cache over the memory device, using a Least Recently Used (LRU) replacement policy and spare lines to redirect writes and prevent excessive wear on 'hot' memory lines, thereby extending the endurance of memory cells.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory cells are frequently switched to store data, then data storage capability is improved, but memory cell degradation and defect rate increase

Engineering Contradiction:
Improvedata storage capabilityVSAvoidmemory cell defect rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

A cache system is introduced as an intermediary between the processor and the main memory device. The cache absorbs frequent write operations, preventing them from directly affecting the main memory cells. This mediator layer handles the high-write-rate operations while the main memory experiences reduced write stress, thus resolving the contradiction between storage productivity and cell reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The memory system is segmented into multiple levels: a fast cache memory and a larger main memory device. By dividing the memory hierarchy, frequent writes are concentrated in the cache segment, while the main memory segment experiences fewer writes. This segmentation allows high productivity in the cache while protecting the main memory from excessive degradation.

Inventive Principle:
Principle #1Segmentation

2Speed

If write rate to memory device is increased, then data writing speed is improved, but memory line degradation accelerates

Engineering Contradiction:
Improvedata writing speedVSAvoidmemory line lifespan
Core Design Contradiction:
SpeedVSDuration of action of stationary object

Solution Approach 1:

The cache acts as a mediator that absorbs the high-speed write operations. Data can be written to the cache at high speeds without directly impacting the main memory device. The cache then selectively flushes data to the main memory at a sustainable rate, thus maintaining high writing speed while extending memory line lifespan.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Data is preliminarily stored in the cache before being written to the main memory device. This preliminary action allows the system to accept high-speed writes into the cache while controlling the actual write rate to the main memory lines, thereby protecting them from accelerated degradation.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If cache uses LRU replacement policy, then cache hit rate is improved, but write count tracking complexity increases

Engineering Contradiction:
Improvecache hit rateVSAvoidwrite count tracking complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The cache system uses self-service mechanisms where each cache line maintains its own write count and LRU metadata. This decentralized approach allows the cache to track write counts and replacement policies without requiring complex centralized control, thus improving cache hit rate while managing tracking complexity through distributed simplicity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9489308B2Cache line eviction based on write count
Publication Date: 2016.11.08 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9489308B2 patent drawing
  • US9489308B2 patent drawing
  • US9489308B2 patent drawing

AI summary

A method of shielding a memory device (110) from high write rates comprising receiving instructions to write data at a memory container (105), the memory controller (105) composing a cache (120) comprising a number of cache lines defining stored data, with the memory controller (105), updating a cache line in response to a write hit in the cache (120), and with the memory controller (105), executing the instruction to write data in response to a cache miss to a cache line within the cache (120) in which the memory controller (105) prioritizes for writing to the cache (120) over writing to the memory device (110).