Compressed Memory ECC Blocks for Reliable Data Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory devices face inefficiencies in storing compressed data, as data compression can lead to data loss and reduced storage reliability, particularly when high importance data is compressed, necessitating improved error correction mechanisms.

Innovation Solution

A memory system comprising a data compressor and an error correction block generator that divides compressed data into normal and invalid data with parity, ensuring each error correction block includes normal data, invalid data, and parity, distributed across physical pages to enhance storage efficiency and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data compression is applied to increase storage efficiency, then storage capacity is improved, but data reliability deteriorates due to potential data loss

Engineering Contradiction:
Improvestorage capacityVSAvoiddata reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The compressed data is divided into multiple error correction blocks, where each block contains a portion of the compressed data along with dedicated error correction codes. This segmentation allows independent error correction for each block, maintaining data reliability while preserving storage efficiency gains from compression.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Error correction codes are pre-calculated and embedded into each error correction block during the data writing process. This preliminary action ensures that error correction capability is built into the storage structure before data is stored, preventing data loss without requiring additional storage overhead beyond the compressed data size.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If error correction codes are added to compressed data, then data reliability is improved, but storage efficiency deteriorates due to increased overhead

Engineering Contradiction:
Improveerror correction capabilityVSAvoidstorage efficiency
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Instead of adding a single large error correction code to the entire compressed data set, the system segments the compressed data into multiple blocks and adds smaller error correction codes to each block. This approach distributes the error correction overhead across multiple blocks, improving reliability without proportionally increasing total storage overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each error correction block is designed with local error correction capability tailored to that specific block's data portion. This local quality approach ensures that error correction resources are optimally allocated to where they are most needed, maintaining high error correction capability while minimizing overall storage overhead.

Inventive Principle:
Principle #3Local quality

3Device complexity

If compressed data is stored in fixed-size blocks, then storage organization is simplified, but data loss risk increases when compression results in variable-size data

Engineering Contradiction:
Improvestorage organizationVSAvoiddata loss risk
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system segments compressed data into multiple error correction blocks of manageable sizes. Each block is independently processed and protected with error correction codes, ensuring that even if the total compressed data size varies, each individual block maintains consistent error protection and can be reliably stored and retrieved.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9425828B2Memory device and memory system
Publication Date: 2016.08.23 SAMSUNG ELECTRONICS CO LTD
  • US9425828B2 patent drawing
  • US9425828B2 patent drawing
  • US9425828B2 patent drawing

AI summary

A memory device and a memory system, the memory system including a data compressor for generating compressed data by compressing program data in a first unit, and an error correction block generator for dividing the compressed data in a second unit to obtain a plurality of pieces of normal data, and generating error correction blocks for correcting errors of the plurality of pieces of normal data, wherein each of the error correction blocks comprises the normal data, invalid data having a size corresponding to the size of the normal data, and parities for the normal data and the invalid data.