Memory Controller Cache for Flash Wear Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Nonvolatile memory systems, such as flash memory, face inefficiencies in data writing due to the inability to erase individual cells, requiring entire block erasure and leading to complex merging processes between log and data blocks, which increases wear and reduces storage capacity.

Innovation Solution

Implementing a second memory, at least as large as a block of the first memory, acts as a cache to store data in the sequence it will be written to the first memory, allowing for sequential writing and minimizing the need for log block merging by identifying unchanged data and writing it directly to the first memory block.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is written to nonvolatile memory blocks, then data storage is achieved, but entire block erasure is required which increases wear on memory blocks

Engineering Contradiction:
Improvememory lifeVSAvoidwear on memory blocks
Core Design Contradiction:
ReliabilityVSObject-generated harmful factors

Solution Approach 1:

The patent segments the memory system into two distinct parts: a first nonvolatile memory for permanent storage and a second volatile memory serving as a cache for temporary data staging. This segmentation allows write operations to be performed on the volatile cache without affecting the nonvolatile memory blocks, thereby eliminating wear from repeated erasure cycles on the permanent storage medium.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a second volatile memory as an intermediary between the host system and the first nonvolatile memory. This intermediary cache memory absorbs write operations, allowing data to be staged and organized before being written to the nonvolatile memory in optimized sequences, thus preventing direct write/erase cycles on the nonvolatile blocks and reducing wear.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If log blocks are used to temporarily hold data, then data storage flexibility is improved, but complex merging processes are required which reduce storage capacity

Engineering Contradiction:
Improvedata storage flexibilityVSAvoidstorage capacity
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent extracts the temporary data holding function from the nonvolatile memory blocks and relocates it to a separate second volatile memory. By taking out the log block functionality and placing it in the cache memory, the system achieves data storage flexibility without requiring complex merging processes that would consume valuable nonvolatile storage capacity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a copy of the data in the second volatile memory that mirrors the structure and sequence of the first nonvolatile memory block. This copying approach allows the volatile cache to serve as a temporary holding area with full adaptability, while the original nonvolatile storage remains available for permanent storage without being consumed by temporary log data.

Inventive Principle:
Principle #26Copying

3Productivity

If data is written sequentially to match storage sequence, then writing performance is improved, but a second memory is required which increases device complexity

Engineering Contradiction:
Improvewriting performanceVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes the second volatile memory serve multiple functions: it acts as a cache for staging write data, provides a workspace for organizing data in the correct sequence, and serves as a buffer between host writes and nonvolatile memory commits. This multi-functionality justifies the added complexity by delivering significant writing performance improvements through sequential write optimization.

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

Data Source

PatentUS9361987B2Managing data writing to memories
Publication Date: 2016.06.07 APPLE INC
  • US9361987B2 patent drawing
  • US9361987B2 patent drawing
  • US9361987B2 patent drawing

AI summary

Systems and processes may use a first memory, a second memory, and a memory controller. The second memory is at least as large as a block of the first memory. Data is received and stored in the second memory for further writing to the second memory.