Flash Memory Compact Encoding Using MSZB Delimiter

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current nonvolatile storage technologies, such as NAND and NOR flash memories, face limitations in the number of erase-write cycles, leading to wear issues when frequently changing fixed-sized values are written, which can result in data corruption and reduced memory lifespan.

Innovation Solution

A compact encoding scheme is introduced that utilizes a most significant zero bit (MSZB) in a value field to determine if a fixed-size variable can be written without performing an erase operation, allowing changes to be made within the existing value field, thereby reducing the need for erase operations and extending the memory's lifespan.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If frequently changing fixed-sized values are written in flash memory using conventional methods, then data can be updated, but memory wear increases and lifespan decreases

Engineering Contradiction:
Improveability to update valuesVSAvoidmemory lifespan
Core Design Contradiction:
Adaptability or versatilityVSDuration of action of stationary object

Solution Approach 1:

The patent changes the encoding parameters of fixed-sized variables by introducing a most significant zero bit (MSZB) indicator and variable-length encoding for the remaining bits. This allows the same storage location to represent different values without requiring erase operations, thereby reducing wear while maintaining update capability

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces dynamic encoding where the number of bits used to store a fixed-sized variable varies based on the actual value. By using MSZB as a delimiter and encoding only the necessary bits, the system adapts the encoding length dynamically, reducing the frequency of erase operations and extending memory lifespan

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If erase operations are performed frequently to rewrite values, then data can be updated, but memory wear increases

Engineering Contradiction:
Improveability to rewrite valuesVSAvoidmemory wear
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent performs preliminary encoding actions by pre-defining the MSZB as a delimiter and preparing the encoding scheme before writing. This allows the system to write new values without first erasing the previous content, eliminating the need for erase operations while maintaining rewrite capability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent converts the harmful effect of requiring erase operations into a benefit by using the MSZB delimiter to enable in-place updates. The delimiter creates a boundary that allows new values to be written without erasing existing data, thereby reducing wear while maintaining ease of operation

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

3Ease of manufacture

If fixed-sized variables are stored using conventional encoding, then storage is simple, but memory wear increases due to frequent erase-write cycles

Engineering Contradiction:
Improvestorage simplicityVSAvoidmemory lifespan
Core Design Contradiction:
Ease of manufactureVSDuration of action of stationary object

Solution Approach 1:

The patent changes the encoding parameters by introducing MSZB as a delimiter and using variable-length encoding for the remaining bits. This maintains storage simplicity while reducing the need for erase operations, thereby extending memory lifespan without complicating the storage mechanism

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8117172B2Compact encoding methods, media and systems
Publication Date: 2012.02.14 DELL PROD LP
  • US8117172B2 patent drawing
  • US8117172B2 patent drawing
  • US8117172B2 patent drawing

AI summary

A method for compact encoding including providing a first value field allocated in a first portion of a memory, wherein a portion of the first value field is utilized to store a fixed-size variable. A most significant zero bit (MSZB) is located in the first value field, and it is determined if the fixed-size variable can be written in a first area without performing an erase operation. The first area includes the N bits following the MSZB in the first value field. The fixed-size variable is written into the first area if the fixed-size variable can be written without performing the erase operation.