SSD Data Compression and Adaptive ECC for Reliable Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Solid-state drives (SSDs) face challenges in improving performance and reliability due to inefficiencies in error correction mechanisms and data compression, which affect the integrity and storage efficiency of data.

Innovation Solution

The SSD employs dynamic compression and error correction code (ECC) adjustment techniques, including lossless data compression algorithms and ECC strength modification, to optimize storage efficiency and error recovery, using a controller that compresses data below a threshold and appends a known data pad to enhance ECC strength, and performs XOR operations for intra-page recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error correction code (ECC) mechanisms are strengthened to improve data integrity, then reliability is improved, but device complexity and processing overhead increase

Engineering Contradiction:
Improvedata integrityVSAvoidECC mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic ECC strength adjustment based on measured bit error rates and erase counts. The system transitions from static to dynamic ECC configuration, selecting between different ECC strengths (e.g., first strength for low error rates, second strength for high error rates) to optimize between reliability and complexity based on actual operating conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes ECC parameters dynamically by adjusting ECC strength based on bit error rate thresholds and erase count metrics. This allows the system to modify error correction capabilities in response to changing storage medium conditions, reducing unnecessary complexity when high reliability is not required.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If data compression is applied to improve storage efficiency, then quantity of stored data increases, but processing time and computational resources increase

Engineering Contradiction:
Improvestorage capacityVSAvoidcompression processing time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies compression selectively rather than universally - only compressing data blocks that meet specific criteria (e.g., sufficient compressibility, appropriate size thresholds). This partial application of compression reduces unnecessary processing overhead while still achieving storage efficiency gains for suitable data.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary assessment of data compressibility before applying compression algorithms. By evaluating whether data is suitable for compression in advance, the system avoids wasting processing time on incompressible data blocks.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9317362B2Method and system to improve the performance and/or reliability of a solid-state drive
Publication Date: 2016.04.19 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US9317362B2 patent drawing
  • US9317362B2 patent drawing
  • US9317362B2 patent drawing

AI summary

A method and system to improve the performance and/or reliability of a solid-state drive (SSD). In one embodiment of the invention, the SSD has logic to compress a block of data to be stored in the SSD. If it is not possible to compress the block of data below the threshold, the SSD stores the block of data without any compression. If it is possible to compress the block of data below the threshold, the SSD compresses the block of data and stores the compressed data in the SSD. In one embodiment of the invention, the SSD has logic to dynamically adjust or select the strength of the error correcting code of the data that is stored in the SSD. In another embodiment of the invention, the SSD has logic to provide intra-page XOR protection of the data in the page.