Flash Memory Counter Updates Without Frequent Page Erase

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvememory lifetimeVSAvoiderase operation time
Core Design Contradiction:
ReliabilityVSLoss of 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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improvememory lifetimeVSAvoidmemory structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #25Self-service

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

Engineering Contradiction:
Improvecounter update speedVSAvoidmemory space
Core Design Contradiction:
ProductivityVSVolume of stationary object

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.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9448926B2Bidirectional counter in a flash memory
Publication Date: 2016.09.20 STMICROELECTRONICS BELGIUM
  • US9448926B2 patent drawing
  • US9448926B2 patent drawing
  • US9448926B2 patent drawing

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.