Storage Read/Write Integrity via Segmented CRC Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data integrity methods, particularly in storage systems, face challenges due to software and hardware issues that lead to data corruption, with CRC protection facing gaps in data paths and high processing resource consumption.

Innovation Solution

A computing system that segments and recombines data blocks with incorporated CRC values, calculates logic block and combined CRC values, and compares these to verify data integrity during write and read operations, redistributing processing burden to the storage device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If CRC protection is implemented to verify data integrity, then data reliability is improved, but processing resource consumption increases

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The data path is segmented into multiple sections with CRC checks performed at intermediate points rather than only at the end. This divides the single large CRC calculation into smaller incremental calculations, verifying data integrity at checkpoints while reducing the processing burden on any single component by distributing the CRC calculation workload across multiple stages.

Inventive Principle:
Principle #1Segmentation

2Reliability

If CRC values are calculated for all data blocks to ensure integrity, then data protection is improved, but processing time increases

Engineering Contradiction:
Improvedata protectionVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

CRC values are calculated incrementally as data moves through the system rather than waiting until all data is transferred. Intermediate CRC checks are performed on data segments before complete data transfer, allowing early detection of corruption and avoiding the need to reprocess entire data sets, thus reducing total processing time.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If traditional CRC methods are used with gaps in data path, then implementation simplicity is maintained, but data integrity protection deteriorates

Engineering Contradiction:
Improveimplementation simplicityVSAvoiddata integrity protection
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

Intermediate CRC checkpoints are introduced as mediators between the host device and storage device. These intermediaries perform verification at critical transition points in the data path, bridging the gaps where corruption could occur during DMA transfers and storage operations, while maintaining the overall simplicity of the CRC methodology.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP4607355A1System and methods for managing the data integrity of read and write operations
Publication Date: 2025.08.27 LEMON INC(GB)
  • EP4607355A1 patent drawingFigure 1
  • EP4607355A1 patent drawingFigure 2
  • EP4607355A1 patent drawingFigure 3A

AI summary

A computing system for verifying data integrity is provided, including a host device comprising a memory controller, and a storage device. The memory controller receives original data blocks, each having an associated initial CRC value. The memory controller then segments and recombines the data blocks into logic blocks. The storage device is configured to write the logic blocks to its non-volatile memory of the storage device in the write operation, calculate a new logic block (LB) CRC value for each logic block, and calculate a combined LB CRC value. After the write operation, the memory controller combines duplicated copies of a given CRC value for each of the original data blocks, then combines them together to calculate a combined segments CRC value, and compares the combined segments CRC value to the combined LB CRC value. When the combined CRC values match, a verification response is generated verifying data integrity.