Flash Memory Counter Updates Without Frequent Page Erase
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies face challenges in efficiently storing and updating counter values in non-volatile flash memories due to the need to minimize erase operations, which are time-consuming and incompatible with flash memory's programming granularity, particularly in applications like near-field communication where time is limited.
Innovation Solution
The method involves initializing multiple non-volatile memory pages, storing an initial counter value, and associating update values and opcodes, allowing for incremental or decremental operations without full-page erasure, with opcodes for addition, subtraction, and erasing, and transferring the final page value to the next page when full, optimizing memory usage and reducing the need for frequent erasure.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional counter storage methods are used in flash memory, then the counter value can be stored non-volatilely, but frequent erase operations are required which reduce memory lifetime and increase operation time
Solution Approach 1:
The memory page is segmented into multiple regions: a valid data region, an update region, and a status region. This segmentation allows the counter to be updated in-place within the same page without requiring full page erasure, thereby reducing erase operations and extending memory lifetime while maintaining non-volatile storage.
Solution Approach 2:
The memory page is pre-organized with designated update regions and status flags before any counter operations begin. This preliminary structure enables efficient in-place updates by directing write operations to specific regions, avoiding the need for frequent complete page erasures and reducing operation time.
2Reliability
If in-place updates are performed in flash memory, then erase operations are minimized improving memory lifetime, but the memory structure becomes more complex
Solution Approach 1:
The page is divided into clearly defined segments with specific functions: valid data storage, update operations, and status tracking. This structured segmentation manages complexity by organizing the memory into predictable regions rather than requiring complex dynamic management, making the system easier to control despite the in-place update capability.
Solution Approach 2:
The memory structure includes self-managing elements such as status flags and validation markers that automatically track the state of counter data. This self-service mechanism reduces the need for external control logic, managing the complexity internally while maintaining simple external interfaces.
3Productivity
If multiple pages are used to store counter updates, then the counter can be updated frequently without erasing, but more memory space is required
Solution Approach 1:
Instead of using multiple pages sequentially in one dimension, the solution utilizes multiple regions within a single page by adding a dimension of intra-page organization. This allows frequent counter updates to be stored in different regions of the same page, achieving high update speed while minimizing the total memory space required.
Data Source
AI summary
A method of storing a counter in at least two non-volatile memory pages, including: a step of initializing a page with an initial value and then, on each update of the counter value, a step of storing an update value and an opcode associated with this value, selected from a set of opcodes, the current value of the counter being given by application of the successive update operations to the initial value of the page.


