Memory Controller Journaling for Flash Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing non-volatile memory devices, such as flash memory, face inefficiencies in managing data consistency across power interruptions due to the overhead of periodically copying data from volatile memory to non-volatile memory, leading to performance degradation.

Innovation Solution

A memory device with a memory controller and non-volatile memory that employs a mapping table and journal table, where the memory controller writes data and updates mapping relationships between logical and physical addresses, and performs journaling operations to record these changes, minimizing overhead and ensuring data consistency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is periodically copied from volatile memory to non-volatile memory to ensure data consistency, then data reliability is improved, but system performance deteriorates due to overhead

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by maintaining a journal table that pre-records mapping information before power interruptions occur. The memory controller continuously updates the journal table with current mapping relationships between logical and physical addresses, so that upon power restoration, the system can immediately recover using the pre-prepared journal data without performing time-consuming periodic copies of the entire mapping table.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If a mapping table is maintained to track data locations, then data management capability is improved, but memory overhead increases

Engineering Contradiction:
Improvedata management capabilityVSAvoidmemory overhead
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent segments the mapping table into two distinct components: a main mapping table stored in non-volatile memory for permanent storage, and a journal table that stores incremental mapping updates. This segmentation allows the system to maintain comprehensive data management capability while reducing the overhead on volatile memory, as only the essential journal entries need to be maintained in fast memory rather than the entire mapping table.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses copying by creating a journal table that contains copies of mapping information in a condensed format. Instead of maintaining full mapping table entries in volatile memory, the system copies only the essential mapping relationships into the journal table, which can then be used for recovery purposes, thereby reducing memory overhead while preserving data management capability.

Inventive Principle:
Principle #26Copying

3Measurement precision

If mapping information is updated frequently to reflect new data locations, then data tracking accuracy is improved, but write overhead increases

Engineering Contradiction:
Improvemapping accuracyVSAvoidwrite overhead
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent extracts the mapping update operations from the main data write path by implementing a separate journaling mechanism. When data is written to the non-volatile memory, the mapping information is extracted and recorded in the journal table independently, rather than updating the entire mapping table structure. This extraction approach maintains accurate mapping information while minimizing the write overhead associated with frequent updates.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9817588B2Memory device and operating method of same
Publication Date: 2017.11.14 MACRONIX INTERNATIONAL CO LTD
  • US9817588B2 patent drawing
  • US9817588B2 patent drawing
  • US9817588B2 patent drawing

AI summary

A memory device includes a memory controller and a non-volatile memory communicatively coupled to the memory controller and storing a mapping table and a journal table. The memory controller is configured to write data and a logical address of the data into the non-volatile memory, load mapping information related to the logical address of the data from the mapping table of the non-volatile memory into a mapping cache of the memory controller, update the mapping cache with an updated mapping relationship between the logical address of the data and a physical address of the data, and perform a journaling operation to write the updated mapping relationship into the journal table.