Flash Memory Counter Layout for Atomic Multi-Page Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Managing counters in flash memory poses challenges due to the granularity differences between writing (per word) and erasing (per page) operations, which complicates ensuring atomicity and data integrity, especially in applications where power interruptions or disturbances can render data unusable.
Innovation Solution
The solution involves organizing counter storage across multiple pages in a flash memory, using a structured format with metadata and frames to ensure atomicity by maintaining the last valid state of counter increments/decrements, allowing for efficient writing and reading while preserving data integrity through CRC checks and error handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If counter storage is organized across multiple pages with structured format and metadata, then atomicity and data integrity are ensured, but device complexity increases
Solution Approach 1:
The flash memory is divided into multiple pages, with each page containing a specific number of frames for counter storage. This segmentation allows the system to manage counter updates in smaller, atomic units while maintaining overall data integrity across the entire storage structure.
Solution Approach 2:
The patent implements preliminary actions by creating a structured storage format with metadata and CRC checks before actual counter updates occur. This pre-organization of storage pages and frames, along with pre-calculated error-checking mechanisms, ensures that when updates happen, atomicity is maintained without requiring complex runtime operations.
2Reliability
If structured format with metadata and frames is used, then data integrity is preserved through CRC checks, but manufacturing complexity increases
Solution Approach 1:
The storage structure includes self-service features through automated CRC checks and metadata management. The system automatically verifies data integrity and manages the structured format without requiring external intervention, simplifying the manufacturing process while maintaining high data integrity standards.
Solution Approach 2:
The patent employs parameter changes by implementing CRC checks and structured formatting that can be applied uniformly across different storage configurations. This standardized approach to data integrity verification allows the same manufacturing process to be used regardless of the specific flash memory capacity or page size.
3Duration of action of stationary object
If multiple pages are used for counter storage, then endurance is improved, but operation complexity increases
Solution Approach 1:
By segmenting counter storage across multiple pages with defined frames, the system distributes wear across the entire flash memory capacity. This segmentation allows the memory to endure more write cycles overall, while the structured organization simplifies the management of which pages contain valid counter data.
Solution Approach 2:
The patent implements feedback mechanisms through metadata that tracks the state of each page and frame. This feedback information allows the system to automatically manage counter storage operations, determining which pages are active and which are obsolete, thereby simplifying operation despite the multi-page structure.
4Reliability
If atomicity criterion is enforced for counter transactions, then reliability of counter state is improved, but operation speed decreases
Solution Approach 1:
The storage structure is preliminarily organized into pages and frames with associated metadata before counter updates occur. This pre-organization allows atomic updates to be performed by simply writing to predefined locations without requiring complex runtime validation, thus maintaining high speed while ensuring atomicity.
Solution Approach 2:
The patent employs a disposable approach to counter storage by using multiple frames within pages, where individual frames can be quickly written and then discarded once superseded. This allows atomic updates to be performed rapidly by writing to a new frame without requiring lengthy verification processes, as the old frame data is simply replaced rather than validated in real-time.
Data Source
Figure 1~2
Figure 3~4
Figure 5~6
AI summary
The invention relates to a method for storing at least one counter (Ci) in a flash memory, in which each page (Pl) of the memory allocated to the storage of the counter(s) comprises: header data including a first word (MD11) intended to contain a number (1) of the page, a word (Ci) per counter to store a first value thereof, and a second word (MD12) intended to contain a calculated error control code taking into account the first values; frames (Fj) all having the same number of words, each frame being intended to contain an independent value of the data of the frame, at least one occurrence of an identifier (i) of a counter, each frame written representing an increment or decrement of the value of the counter concerned with respect to its first value.