Memory Controller ECC Padding for Partial Flash Sector Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices face challenges in efficiently handling data of sizes smaller than sector data, requiring innovative methods to ensure error correction and efficient data processing without significant overhead.

Innovation Solution

A data processing method involving a memory controller that pads partial data with dummy data to generate error correction codes, allowing for error correction and efficient data transfer and storage in flash memory devices, while maintaining compatibility with sector data sizes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If partial data smaller than sector data is directly stored in flash memory, then storage efficiency is improved, but error correction capability deteriorates

Engineering Contradiction:
Improvestorage efficiencyVSAvoiderror correction capability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the error correction process by generating ECC parity separately for partial data without requiring padding to full sector size. This allows error correction to be applied selectively to the actual data portion, maintaining reliability while improving storage efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of data unit size from fixed sector size to variable partial data size. By allowing ECC to operate on data of any size without requiring padding, the system adapts the error correction process to match the actual data being stored, resolving the contradiction between storage efficiency and error correction capability.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If dummy data is added to pad partial data to sector size, then error correction compatibility is improved, but storage overhead increases

Engineering Contradiction:
Improveerror correction compatibilityVSAvoidstorage overhead
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent extracts and removes the dummy data padding step from the traditional error correction process. By generating ECC parity directly for the partial data without padding, the system eliminates the storage overhead associated with dummy data while maintaining error correction compatibility through selective ECC application.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies error correction partially - only to the extent necessary for the actual data size rather than forcing full sector processing. This partial action approach generates ECC parity solely for the partial data portion, avoiding the excessive storage overhead of padding with dummy data while maintaining sufficient error correction capability.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If traditional sector-based ECC is used for partial data, then error correction reliability is improved, but processing complexity increases

Engineering Contradiction:
Improveerror correction reliabilityVSAvoidprocessing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces dynamic sizing for ECC operations, allowing the error correction process to adapt to the actual data size rather than being fixed at sector size. This dynamic approach simplifies processing by eliminating the need to pad and trim data to match fixed sector boundaries, while maintaining reliability through size-appropriate ECC generation.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8726140B2Dummy data padding and error code correcting memory controller, data processing method thereof, and memory system including the same
Publication Date: 2014.05.13 SAMSUNG ELECTRONICS CO LTD
  • US8726140B2 patent drawing
  • US8726140B2 patent drawing
  • US8726140B2 patent drawing

AI summary

A data processing method of a memory controller includes receiving first partial data of a last sector data among a plurality of sector data to be stored in an n-th page of a non-volatile memory in a program operation; padding the first partial data with first dummy data and generating a first error correction code (ECC) parity in the program operation; and transferring the first partial data and the first ECC parity to the non-volatile memory in the program operation, while refraining from transferring the first dummy data to the non-volatile memory. Related devices and systems are also described.