RAID Cache Map Tables for Flash Wear Leveling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory systems face limitations in random-access rewrite and erase operations, leading to physical degradation and data accessibility issues, particularly in RAID data storage systems where even distribution of writes is crucial for longevity and reliability.

Innovation Solution

A RAID data storage system employing a cache memory and processing system that uses primary and secondary map tables to serialize write requests into RAID stripes, distributing data blocks and parity information evenly across flash memory modules, thereby minimizing physical degradation and ensuring reliable data access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If flash memory is used for RAID storage systems, then random-access read and programming operations are provided, but random-access rewrite or erase operations are not available and physical degradation occurs

Engineering Contradiction:
Improvedata accessibilityVSAvoidphysical degradation
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the flash memory into multiple blocks and uses a block allocation mechanism that divides write operations across different blocks. The system maintains a block allocation table that tracks which blocks are valid, pending, or free, allowing it to distribute writes evenly and avoid concentrating erase cycles on single blocks, thereby reducing physical degradation while maintaining data accessibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary actions by pre-allocating blocks and maintaining a block allocation table before writes occur. The system prepares pending blocks in advance and uses a wear-leveling mechanism that proactively distributes write operations across all available blocks rather than writing sequentially. This preliminary organization prevents physical degradation by ensuring even wear distribution before it becomes a problem.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If write operations are concentrated on specific blocks, then programming speed is improved, but physical degradation increases and reliability decreases

Engineering Contradiction:
Improveprogramming speedVSAvoidcell longevity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a dynamic block allocation strategy where the system continuously monitors and adjusts which blocks receive write operations. The block allocation table is dynamically updated to reflect the current state of blocks (valid, pending, free), and the wear-leveling mechanism dynamically selects target blocks for new writes based on current wear patterns and availability, ensuring both high programming speed and extended cell longevity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of block selection from static to dynamic by introducing a wear-leveling algorithm that considers block age, write count, and current state. The system transforms the block allocation process by using multiple parameters (block state, wear level, availability) to determine write targets, rather than using a fixed or sequential allocation scheme, thereby optimizing both speed and reliability.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If garbage collection is performed frequently, then data accessibility is maintained, but system performance and productivity decrease

Engineering Contradiction:
Improvedata accessibilityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary actions by pre-allocating pending blocks and preparing them in advance before they are needed. The block allocation table is maintained proactively, and the system prepares replacement blocks ahead of time rather than waiting for garbage collection to be triggered. This reduces the frequency and impact of garbage collection operations while maintaining data accessibility.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a self-service mechanism where the block allocation system automatically manages block lifecycle without requiring frequent external garbage collection interventions. The wear-leveling algorithm and block state tracking enable the system to self-regulate block usage and automatically identify candidates for retirement, reducing the need for performance-intensive garbage collection operations.

Inventive Principle:
Principle #25Self-service

4Measurement precision

If a single large address translation table is used, then complete address mapping is achieved, but cache memory efficiency and access speed decrease

Engineering Contradiction:
Improveaddress mapping completenessVSAvoidtable access speed
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The patent segments the address translation table into multiple smaller tables organized hierarchically. Instead of using a single large table, the system divides the address space into multiple regions, each with its own translation table entry. This segmentation allows the cache to store multiple smaller tables simultaneously, improving access speed while maintaining complete address mapping capability through the hierarchical structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to the address translation structure by organizing tables in levels (root table, intermediate tables, leaf tables). This dimensional change allows the system to navigate through multiple levels of abstraction, where higher-level tables provide coarse-grained mapping and lower-level tables provide fine-grained mapping, achieving both completeness and speed through multi-dimensional organization.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9286209B2System, method and computer-readable medium using map tables in a cache to manage write requests to a raid storage array
Publication Date: 2016.03.15 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US9286209B2 patent drawing
  • US9286209B2 patent drawing
  • US9286209B2 patent drawing

AI summary

A RAID storage system serializes data blocks to be stored in a RAID storage array and uses a primary map table and a number of secondary map tables to relate host addresses to logical block addresses in the storage array. Secondary map tables and other metadata can be cached from the storage array. The dual or two-tier map scheme and metadata caching promote scalability.