Circular Buffering Control in Flash Memory Wear Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing flash memory technologies face challenges in extending the lifecycle of memory devices due to uneven wear distribution caused by traditional wear leveling algorithms, which can lead to increased wear on some cells and reduced memory life.

Innovation Solution

Implementing a circular buffering approach that uses a write pointer and unapportioned table to manage memory allocation, where data is written in a circular manner, de-allocating and re-allocating memory blocks based on usage patterns to distribute writes evenly and identify blocks as read-only when nearing the end of their life.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Duration of action of stationary object

If traditional wear leveling algorithms are used to distribute writes evenly, then the lifecycle of flash memory is extended, but data movement within the memory device increases wear on some cells

Engineering Contradiction:
Improvememory lifecycleVSAvoidcell wear distribution
Core Design Contradiction:
Duration of action of stationary objectVSReliability

Solution Approach 1:

The memory device is divided into multiple memory blocks, each with its own wear counter. The circular buffer is segmented into multiple regions that can be independently managed. This segmentation allows the system to track and manage wear at a finer granularity, enabling more precise wear leveling without unnecessary data movement across the entire memory device.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a dynamic circular buffer approach where the buffer size and allocation can change over time based on wear patterns. The system dynamically adjusts which memory blocks are active in the circular buffer and which are marked as read-only, allowing flexible adaptation to varying wear conditions without rigid fixed allocations that cause unnecessary data movement.

Inventive Principle:
Principle #15Dynamics

2Duration of action of stationary object

If wear leveling algorithms are applied to level wear across cells, then memory lifecycle is extended, but unnecessary data movement increases wear on some cells

Engineering Contradiction:
Improvememory lifecycleVSAvoidunnecessary wear
Core Design Contradiction:
Duration of action of stationary objectVSObject-generated harmful factors

Solution Approach 1:

The system performs preliminary actions by pre-allocating memory blocks to specific regions in the circular buffer and pre-establishing wear counters for each block. This preliminary setup allows the system to make informed decisions about data placement and wear distribution without needing to perform extensive wear leveling operations that cause unnecessary data movement and wear.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Each memory block has its own wear counter that automatically tracks the number of writes to that specific block. The system uses this self-tracking capability to automatically manage wear distribution without requiring complex external wear leveling algorithms that constantly monitor and redistribute data, thereby reducing unnecessary wear from data movement.

Inventive Principle:
Principle #25Self-service

3Productivity

If a circular buffer approach is used to manage memory allocation, then memory space efficiency is improved, but complex control mechanisms are required

Engineering Contradiction:
Improvememory space efficiencyVSAvoidcontrol mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses a simplified control structure that copies the circular buffer management approach from traditional operating systems to the flash memory context. By using standard circular buffer data structures and simple pointer arithmetic, the system achieves efficient memory space utilization without requiring complex custom control mechanisms specific to flash memory operations.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system manages memory allocation by changing parameters such as buffer size, allocation granularity, and wear thresholds rather than using complex control logic. These parameter-based adjustments allow flexible memory management and wear distribution with relatively simple control mechanisms, improving space efficiency without proportionally increasing complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8174912B2Systems and methods for circular buffering control in a memory device
Publication Date: 2012.05.08 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US8174912B2 patent drawing
  • US8174912B2 patent drawing
  • US8174912B2 patent drawing

AI summary

Various embodiments of the present invention provide systems, methods and circuits for memories and utilization thereof. As one example, memory devices are disclosed that include a plurality of non-volatile memory blocks, and a memory write circuit. The memory write circuit is operable to write subsets of the plurality of non-volatile memory blocks at locations identified by a pointer, and to update the pointer to implement a circular buffer in the plurality of non-volatile memory blocks. In some cases, the non-volatile memory blocks are flash memory blocks.