Scalable Parity Code for Variable-Length Packet Error Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional error control codes, such as CRC32, are inflexible and not scalable, leading to inefficient data packet transmission as they consume too many bits for small packets and limit data bit length, failing to adapt to varying payload sizes without increasing protocol overhead.

Innovation Solution

A scalable error control code (ECC) protocol that dynamically adjusts the number of parity bits based on the data packet size, using a table to generate parity bits that match the number of data bits, thereby optimizing bit usage and reducing energy consumption in data transmission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional error control codes (e.g., CRC32) are used, then data transmission reliability is maintained, but protocol overhead increases and energy consumption increases

Engineering Contradiction:
Improvedata transmission reliabilityVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements a dynamic error control code system where the number of parity bits changes based on the data packet size. For small packets, fewer parity bits are used; for large packets, more parity bits are used. This dynamic adaptation resolves the contradiction by optimizing the balance between reliability maintenance and energy consumption reduction across different packet sizes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of parity bit length based on the data payload size. By making the error control code length variable rather than fixed, the system can reduce overhead and energy consumption for small packets while maintaining adequate reliability, thus resolving the contradiction between reliability and energy efficiency.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If conventional error control codes (e.g., CRC32) are used, then data integrity is maintained, but protocol overhead increases

Engineering Contradiction:
Improvedata integrityVSAvoidprotocol overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system dynamically adjusts the error control code length to match the data packet size. This resolves the contradiction by reducing protocol overhead for small packets while maintaining data integrity through appropriate parity bit allocation, avoiding the excessive overhead of fixed-length codes like CRC32.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of error control code length based on payload size. This parameter adaptation allows the system to maintain data integrity with minimal necessary overhead, resolving the contradiction between reliability and protocol complexity.

Inventive Principle:
Principle #35Parameter changes

3Ease of manufacture

If fixed-length error control codes are used, then implementation is simple, but scalability is reduced and bit usage efficiency decreases

Engineering Contradiction:
Improveimplementation simplicityVSAvoidscalability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic error control code system that adapts to different packet sizes. This resolves the contradiction by providing scalability and bit usage efficiency through variable-length codes, while maintaining implementation simplicity through a systematic approach to determining appropriate parity bit lengths based on data size.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11256570B2Progressive length error control code
Publication Date: 2022.02.22 MICRON TECHNOLOGY INC
  • US11256570B2 patent drawing
  • US11256570B2 patent drawing
  • US11256570B2 patent drawing

AI summary

Devices and methods may be used to append a scalable (1) of parity bits in a data packet that scales with a number of data bits in a payload of the data packet. The parity bits may be generated utilizing a table of entries. In some examples, each entry in the table corresponds to a number of the data bits to be included in the payload; and each column of the table may be used to generate a corresponding parity bit of the one or more parity bits.