Flash Memory Counter Logging to Avoid Frequent Page Erasure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for storing counter values in non-volatile memory, such as flash or EEPROM, face inefficiencies due to the need for frequent page erasures, which are time-consuming and incompatible with the granular programming required by counters, especially in applications with limited write time like NFC technology.

Innovation Solution

The method involves initializing multiple pages in a non-volatile memory with an initial erase value, storing the counter's initial value and subsequent operations in one page, and transferring the final value to the next page when full, allowing for efficient increment and decrement operations without frequent page erasures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional EEPROM methods are used to store counter values, then the counter can be updated, but frequent page erasures are required which are time-consuming and incompatible with limited write time applications

Engineering Contradiction:
Improvecounter update speedVSAvoidtime for page erasure operations
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the counter storage into multiple pages (first page and second page) with different functions. The first page stores the current counter value and can be updated without erasure, while the second page stores historical operation logs. This segmentation allows incremental updates to the counter value without requiring full page erasure, thus resolving the contradiction between update speed and erasure time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-allocating multiple pages and establishing a logging mechanism before counter operations begin. The operation log page is prepared in advance to capture write operations, allowing the counter to be updated by simply logging the operation rather than performing immediate erasure and reprogramming, thereby eliminating time-consuming erasure operations during actual counter updates.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If flash memory is used to store counter values, then non-volatile storage is achieved, but the granular programming required by counters conflicts with the page-based erasure structure

Engineering Contradiction:
Improvenon-volatile storageVSAvoidpage management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the flash memory into functionally distinct segments: a data page for storing the current counter value and an operation log page for storing historical operations. This segmentation allows the system to exploit flash memory's non-volatile特性 while managing page operations more efficiently by treating different pages with different update strategies, thus reducing the complexity conflict between granular counter updates and page-based erasure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The operation log page serves as an intermediary between the counter update operations and the actual flash memory storage. Instead of directly updating the counter value in flash memory (which would require page erasure), the system logs the operation in the operation log page first. This intermediary mechanism allows granular counter updates to be recorded without triggering immediate page erasure, simplifying the management of flash memory's page structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If multiple pages are used to store counter operations, then the counter can be incremented and decremented, but the number of erasure operations increases

Engineering Contradiction:
Improvebidirectional counter capabilityVSAvoidnumber of erasure operations
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent implements dynamic page management where the role of pages can switch. The first page and second page can be swapped, with one serving as the active data page and the other as the operation log page. This dynamic allocation allows the system to support bidirectional counter operations (increment and decrement) across multiple pages without increasing the total number of erasure operations, as pages are reused rather than continuously created and erased.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2940690B1Bi-directional counter in flash memory
Publication Date: 2017.07.05 PROTON WORLD INT
  • EP2940690B1 patent drawingFigure 1~3
  • EP2940690B1 patent drawingFigure 4

AI summary

The invention relates to a method for storing a counter in at least two pages of non-volatile memory (3), comprising: a step of initializing (41) the at least two pages with an initial erase value, a step (43) storage in a portion of one of the two pages of an initial value of the counter; then on each update of the value of the counter, a step of storing (45), in said one of the two pages, an operating code (OPi) and an operand (V1) associated with this operating code chosen from a set of operation codes, the current value of the counter being given by applying successive updating operations to the initial value of the counter stored in said one of the two pages, these operations being designated by the operation codes and the associated stored operands in said page.