CRC Algorithm Table Arrangement for Single-Cycle Checksum Calculation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing error correction techniques in digital data processing, such as cyclic redundancy check (CRC), require multiple clock cycles to calculate the CRC checksum, especially for varying polynomial generator and data stream lengths, and often necessitate complex implementations involving memory and feedback mechanisms.

Innovation Solution

A method to calculate CRC checksums by transforming polynomial generators and data streams into tables, allowing for parallel processing and eliminating the need for memory and feedback, thus enabling CRC calculation within a single clock cycle, independent of data or polynomial generator length.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional CRC calculation methods using LFSR or polynomial division are used, then the algorithm can handle varying polynomial generator and data stream lengths, but the calculation requires multiple clock cycles and increases device complexity

Engineering Contradiction:
Improveability to handle varying polynomial generator and data stream lengthsVSAvoidcomplexity of implementation involving memory and feedback mechanisms
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the CRC calculation into parallel segments by creating a transformation table that pre-computes relationships between polynomial coefficients and data stream segments. This allows the calculation to be broken into independent parallel operations rather than sequential steps, reducing the need for feedback mechanisms and memory while maintaining adaptability to varying lengths.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary transformation of the polynomial generator and data stream into a standardized table format before the actual CRC calculation. This pre-processing step creates a structure that enables direct parallel computation without requiring iterative feedback, thus reducing device complexity while preserving the ability to handle varying input lengths.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If traditional sequential CRC calculation methods are used, then the algorithm can accommodate different data widths and polynomial generators, but the calculation speed is reduced requiring multiple clock cycles

Engineering Contradiction:
Improvesupport for different data widths and polynomial generatorsVSAvoidcalculation speed requiring multiple clock cycles
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent segments the CRC calculation into parallel independent operations by transforming the input data and polynomial into a tabular format where each segment can be processed simultaneously. This segmentation enables the calculation to complete in a single clock cycle regardless of data width or polynomial generator variations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameters of the calculation by transforming the polynomial generator and data stream into a standardized transformation table format. This parameter transformation allows the system to maintain high speed single-cycle operation while accommodating different data widths and polynomial generators through the flexible table structure.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If complex feedback mechanisms and memory are used to handle varying input lengths, then the algorithm maintains accuracy, but the propagation delay increases beyond a single clock cycle

Engineering Contradiction:
Improveaccuracy of CRC calculationVSAvoidpropagation delay exceeding single clock cycle period
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary transformation of the polynomial generator and data stream into a standardized table format before calculation. This pre-computation eliminates the need for feedback mechanisms and memory access during the critical calculation path, ensuring both accuracy and single-clock-cycle completion by removing time-consuming iterative operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10623018B2Method of arrangement of an algorithm in cyclic redundancy check
Publication Date: 2020.04.14 AKRIBIS SYST PTE
  • US10623018B2 patent drawing
  • US10623018B2 patent drawing

AI summary

A method of arrangement of an algorithm to calculate cyclic redundancy check (CRC) independent of the length of a polynomial generator and data stream which can be realized in digital implementation with a calculation latency of once clock cycle. The method allows a sequence of information and the corresponding polynomial generator be arranged into a transformation table.