Embedded CRC Insertion for Variable-Length Packet Error Localization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cyclic redundancy check (CRC) methods are inadequate for data packets with variable lengths, as they either use CRC polynomials with insufficient Hamming distance, leading to non-unique CRC values, or those with excessive Hamming distance, resulting in unnecessary computational effort and hardware requirements.

Innovation Solution

A method and device that dynamically generate and embed CRC values within data packets based on the number of data units, using a counter to determine when to add CRC values, ensuring they are generated only up to the Hamming distance limit, allowing for efficient error detection and localization without discarding entire data packets.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a CRC polynomial with large Hamming distance is used to handle variable-length data packets, then error detection capability is improved, but computational effort and hardware requirements increase unnecessarily

Engineering Contradiction:
Improveerror detection capabilityVSAvoidcomputational effort and hardware requirements
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by making the CRC calculation length variable rather than fixed. The system dynamically adjusts the number of data units processed for CRC calculation based on the actual packet length, using a counter that increments with each data unit and stops when reaching the actual packet length. This allows the same CRC polynomial to be used efficiently for packets of any length without requiring unnecessarily large Hamming distance capabilities.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of CRC calculation length to match the actual data packet length. Instead of using a fixed CRC polynomial designed for maximum packet length, the system calculates CRC over exactly the number of data units present in the packet, thereby optimizing the Hamming distance to match the actual data size and reducing unnecessary computational complexity.

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If a CRC polynomial with small Hamming distance is used for variable-length data packets, then computational effort is reduced, but the CRC value becomes non-unique and error detection fails

Engineering Contradiction:
Improvecomputational effortVSAvoidCRC value uniqueness
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system uses a dynamic counter that increments for each data unit processed and compares against the actual packet length. This dynamic approach ensures that the CRC calculation always covers the complete packet data, maintaining uniqueness and reliability regardless of packet length variations, while avoiding the need for overly complex polynomials.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent makes a single CRC polynomial universal for handling data packets of any length. By combining this universal polynomial with a dynamic calculation length that adapts to the actual packet size, the system achieves both simplicity (using one polynomial) and reliability (maintaining uniqueness for all packet lengths).

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If fixed-size data packets are used with matching CRC polynomial Hamming distance, then unique CRC values are ensured, but adaptability to variable-length packets is lost

Engineering Contradiction:
ImproveCRC value uniquenessVSAvoidhandling of variable-length packets
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic elements including a counter that increments with each data unit and a comparison mechanism that stops the CRC calculation when the counter reaches the actual packet length. This dynamic adaptation allows the system to handle variable-length packets while maintaining the reliability benefits of matched Hamming distance.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system segments the CRC calculation process into discrete data unit steps, counting each unit and processing it individually. This segmentation allows the CRC calculation to adapt to any packet length by processing exactly the number of data units present, combining the benefits of fixed-size reliability with variable-length adaptability.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11012090B2Embedded cyclical redundancy check values
Publication Date: 2021.05.18 WAGO VERW GMBH
  • US11012090B2 patent drawing
  • US11012090B2 patent drawing
  • US11012090B2 patent drawing

AI summary

A method and a device for generating a data packet to be transmitted comprising data and at least one value for a cyclic redundancy check (CRC) value, are described, wherein the CRC value is generated using at least one previously determined polynomial on the basis of at least some of the data and the method comprises initializing a counter value, counting units of data, wherein the counter value changes for each unit of data, and adding a CRC value into the data packet, when the counter value reaches a reference value or all units of data in the data packet have already been counted, wherein the CRC value is generated over the units of data which have been counted since the counter value last reached the reference value or since the counter value was initialized. Furthermore, a method and a device for checking a corresponding received data packet are described.