File System Management in NAND Flash Memory Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The frequent updates required in the small area of a memory device that stores a file allocation table (FAT) in NAND flash structures lead to increased erasure frequency, which is inefficient due to the block-level erasure nature of NAND flash memory.

Innovation Solution

Implementing a cache memory system to store pending operations for the FAT and folder entries, allowing updates to be cached and applied in batches, reducing the frequency of updates to the FAT and folder entries, and enabling reconstruction of metadata upon power-up to maintain data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the FAT is updated frequently to reflect write operations, then data accuracy is improved, but the erasure frequency increases due to block-level erasure requirements

Engineering Contradiction:
Improvedata accuracyVSAvoiderasure frequency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the FAT update process into two independent parts: a small area storing FAT entries and folder entries that can be updated frequently, and a large area storing user data that is erased block-level. This segmentation allows the small area to be updated without triggering block-level erasure of the entire block, resolving the contradiction between maintaining data accuracy and reducing erasure frequency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a cache memory as an intermediary between the host and the FAT. The cache memory stores pending operations and allows the FAT to be updated in batches rather than immediately with each write operation. This intermediary buffer reduces the frequency of FAT updates and consequently reduces block-level erasure operations while maintaining data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the FAT update frequency is reduced to minimize block-level erasure, then erasure frequency is improved, but data consistency may be compromised

Engineering Contradiction:
Improveerasure frequencyVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary actions by caching pending FAT update operations in the cache memory before actually updating the FAT. This allows multiple write operations to be accumulated and applied together in a single FAT update, reducing erasure frequency while ensuring data consistency through batch processing. The cache memory preserves the sequence and integrity of operations until they are committed to the FAT.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the system monitors the cache memory status and triggers FAT updates based on cache full conditions or power-up events. This feedback-controlled update strategy ensures that the FAT is updated at optimal intervals to maintain data consistency while minimizing unnecessary block-level erasures, balancing productivity and reliability requirements.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11500775B2File system management in memory device
Publication Date: 2022.11.15 MACRONIX INTERNATIONAL CO LTD
  • US11500775B2 patent drawing
  • US11500775B2 patent drawing
  • US11500775B2 patent drawing

AI summary

A memory system stores user data including file content in clusters of memory space, folder entries, metadata, and a file allocation table FAT including FAT entries. The system comprises a cache memory, an addressable memory including memory space, and control logic coupled to the addressable memory and the cache memory. The control logic is configured to store user data in a current cluster at a current cluster offset including file content, and corresponding metadata including the current cluster offset, and a linked cluster offset of a linked cluster linking to the current cluster in the addressable memory, and to cache a FAT entry pointing to the current cluster in the cache memory.