Hamming Code Packet Header Protection for Bit Error Correction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data communication systems face challenges in efficiently managing errors, particularly in packetized data transmission, where errors may go undetected or misinterpreted, leading to slowed data throughput and potential corruption of packet endings.

Innovation Solution

A Hamming code approach is implemented with a set of at least four parity bit positions, where each data bit contributes to multiple parity bit equations, ensuring overlapping sub-sets to detect and correct single and double bit errors, and additional parity bits are used to distinguish between single and double errors, enhancing error management and reducing aliasing from higher-order errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional error detection schemes are used to detect corrupted packets, then error detection capability is provided, but data throughput is slowed due to re-try requests

Engineering Contradiction:
Improveerror detection capabilityVSAvoiddata throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system enables the receiver to autonomously correct single-bit errors using Hamming code syndrome decoding without requiring transmitter intervention or re-transmission, allowing error correction to serve itself rather than requiring external retry mechanisms

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Redundant parity bits are pre-calculated and embedded in the data stream before transmission, enabling the receiver to detect and correct errors immediately upon receipt without waiting for acknowledgment or re-transmission cycles

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If simple parity bits are used for error detection, then implementation complexity is reduced, but the ability to distinguish between single and double bit errors is lost

Engineering Contradiction:
Improveimplementation complexityVSAvoiderror type discrimination capability
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The error detection function is segmented into multiple independent parity bits, each monitoring specific subsets of data bits, allowing the system to identify both the presence and location of errors while maintaining relatively simple implementation

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system adds an extra dimension of error detection by using multiple parity bits that check different combinations of data bits, transforming the single-bit error detection into multi-dimensional syndrome analysis that can distinguish between single and double bit errors

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If more parity bits are added to detect and correct errors, then error correction capability is improved, but the overhead increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoidparity bit overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system changes the parameters of the Hamming code to use exactly four parity bits for six-bit data words, optimizing the balance between error correction capability and overhead by selecting specific code parameters rather than using generic Hamming code configurations

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7596743B2Method and apparatus for error management
Publication Date: 2009.09.29 ATI TECHNOLOGIES ULC
  • US7596743B2 patent drawing
  • US7596743B2 patent drawing
  • US7596743B2 patent drawing

AI summary

To derive a Hamming code to manage data errors a set of at least four parity bit positions is selected for parity bits which will protect a set of data bits (where each data bit has a data bit position in the data bit set). A syndrome is determined for each data bit position. This involves selecting a unique sub-set of at least three parity bit positions. The unique sub-set shares at least one parity bit position with at least one other unique sub-set of at least three parity bit positions. A parity bit value may then be calculated for each parity bit position based on the determined syndromes. The header of a packet may be provided with a word which defines the length of the packet and an error management code generated utilizing this word so that errors in the word may be detected and, possibly, corrected.