Flash Memory Data Characteristic Identification Using Hash Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for identifying data update characteristics in flash memory either consume excessive memory or result in unstable execution times, affecting the efficiency of flash memory usage.

Innovation Solution

A method utilizing a hash function and hash table based on logical block addresses to efficiently identify data characteristics by performing decay period computation, state update, and state checking, reducing memory consumption and execution time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a large array is used to store the last access time of all LBA, then the data update frequency can be accurately identified, but the memory consumption increases significantly

Engineering Contradiction:
Improvedata update frequency identification accuracyVSAvoidmemory consumption
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent divides the memory structure into multiple hash tables, each containing multiple counters. Instead of using a single large array to store all LBA access times, the system segments the storage into smaller hash tables that can be independently managed. This segmentation reduces the memory footprint while maintaining the ability to track access frequencies for all LBA through distributed counting across multiple tables.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces hash functions as intermediaries between the LBA and the counters in the hash tables. The hash functions map LBA to specific counters, enabling efficient identification of data update frequency without requiring direct storage of access times for all LBA. This intermediary mechanism allows accurate frequency identification with reduced memory consumption by using hash-based indexing instead of direct addressing.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If two linked lists are used to record recently accessed LBA, then the memory consumption is reduced, but the execution time becomes unstable

Engineering Contradiction:
Improvememory consumptionVSAvoidexecution time stability
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent segments the single linked list structure into multiple separate hash tables, each with its own counters. This segmentation allows parallel access to multiple counters simultaneously, eliminating the sequential traversal required in linked lists. The segmented hash table structure maintains low memory consumption while providing stable execution time through predictable O(1) access patterns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces the mechanical linked list traversal mechanism with a hash-based direct access mechanism. Instead of sequentially searching through linked list nodes to find and update counters, the system uses hash functions to directly compute the position of relevant counters in the hash tables. This substitution eliminates the variable traversal time inherent in linked lists, providing stable and predictable execution time.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Quantity of substance

If the system searches through linked lists to find LBA nodes, then memory usage is reduced, but the CPU cycle increases and overall efficiency decreases

Engineering Contradiction:
Improvememory usageVSAvoidoverall efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent uses hash functions as intermediaries to directly map LBA to their corresponding counters in the hash tables. This eliminates the need for sequential searching through linked lists, as the hash function computes the counter position in constant time. The intermediary hash mechanism maintains memory efficiency while dramatically improving productivity by reducing CPU cycles required for LBA node identification.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent performs preliminary organization of data into hash tables with pre-computed hash mappings. This preliminary structuring allows subsequent LBA lookups to directly access the relevant counters without requiring search operations. By preparing the data structure in advance with hash-based indexing, the system achieves both low memory usage and high productivity during data access operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7461233B2Method for identifying data characteristics for flash memory
Publication Date: 2008.12.02 GENESYS LOGIC INC
  • US7461233B2 patent drawing
  • US7461233B2 patent drawing
  • US7461233B2 patent drawing

AI summary

A highly efficient data characteristic identification method for flash memory is provided, including the steps of: (a) based on the LBA corresponding to the write request to the flash memory, finding K corresponding counters in the hash table through K hash functions; (b) determining whether to perform decay period computation on hash table; if so, proceeding to step (c); otherwise, proceeding to step (d); (c) performing decay period computation on the hash table; (d) performing state update computation on the hash table; and (e) checking the hash table state and determining whether the data in the logic block corresponding to the flash memory is frequently updated. The method contains the decay period computation, state update computation, and checking on the data in the corresponding counters in the hash table to determine whether the data is frequently updated. Therefore, the object of a highly efficient data access characteristic identification method for flash memory is provided.