MLC Flash Caching Policy for Write Speed and Capacity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices based on Multi-Level Cell (MLC) technology face challenges in writing data at high rates due to slower writing performance compared to Single-Level Cell (SLC) devices, necessitating the use of cache memory to manage incoming data streams effectively.

Innovation Solution

Implementing a caching policy for non-volatile storage devices with a cache storage area and a main storage area, where data is written to the cache area based on historical data reception rates and average time intervals between write requests, allowing for dynamic mode transitions between store-to-cache-first and bypass-cache modes to optimize writing performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If MLC flash memory is used to increase storage capacity, then more data can be stored per cell, but the writing speed decreases compared to SLC

Engineering Contradiction:
Improvestorage capacityVSAvoidwriting speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The storage device is segmented into two distinct storage areas: a cache storage area for temporary high-speed storage and a main storage area for permanent storage. This segmentation allows the system to leverage the faster write performance of the cache area during temporary storage operations while maintaining the high capacity of the main MLC flash memory area.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The cache storage area acts as an intermediary between the data source and the main flash memory storage area. Data is first written to the cache area at high speed, then asynchronously copied to the main storage area, resolving the contradiction between fast writing and high capacity storage.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If a cache memory mechanism is introduced to handle high data rates, then the input data stream can be processed faster, but the device complexity increases

Engineering Contradiction:
Improvedata handling rateVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The cache storage area and main storage area are merged into a single unified memory structure with shared address spaces and control logic. This integration allows the cache to function as an extension of the main memory rather than a separate subsystem, reducing overall device complexity while maintaining high data handling capability.

Inventive Principle:
Principle #5Merging (Combining)

3Speed

If data is written to cache storage area first for faster writing, then the write performance improves, but the cache memory lifespan may be reduced due to increased write operations

Engineering Contradiction:
Improvewrite performanceVSAvoidcache memory lifespan
Core Design Contradiction:
SpeedVSDuration of action of stationary object

Solution Approach 1:

The system performs preliminary actions by writing data to the cache storage area before the main storage area is ready or before asynchronous copy operations complete. This ensures data is protected and accessible immediately while the background copy process handles the transfer to main storage, balancing performance and durability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The flash controller continuously monitors cache storage area status and adjusts write operations based on feedback signals. When the cache area is full or write errors are detected, the controller modifies its behavior to protect the cache from excessive wear while maintaining optimal performance through intelligent load management.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8103822B2Method and apparatus for implementing a caching policy for non-volatile memory
Publication Date: 2012.01.24 SANDISK ISRAEL LTD
  • US8103822B2 patent drawing
  • US8103822B2 patent drawing
  • US8103822B2 patent drawing

AI summary

The present disclosure relates to methods, devices and computer-readable medium for implementing a caching policy and/or a cache flushing policy in a peripheral non-volatile storage device operatively coupled to a host device. In some embodiments, data is stored to a cache area of a non-volatile memory within the peripheral non-volatile storage device in accordance with a historical rate at which other data was received by the peripheral storage device from the host device and/or a historical average time interval between successive host write requests received and/or an assessed rate at which data is required to be written to the non-volatile memory and/or a detecting by the peripheral non-volatile memory device that the host has read the storage ready/busy flag. In some embodiments, data is copied from a cache storage area of the non-volatile memory to a main storage area in accordance with the historical rate and/or the historical average time interval.