Front-End Convolutional Decoding for Low-Latency Packet Headers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Viterbi decoders introduce latency in wireless communication systems, which delays the processing of user data due to the need to decode embedded transmit parameters in the header of each information packet before processing user data.

Innovation Solution

A system comprising a receiving device, a block extractor, and a block decoder that quickly decodes the front end of convolutionally encoded data by extracting a finite-sized block and using block error correction decoding methods, such as comparing the block to all possible codewords, allowing for parallel operation with Viterbi decoders and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a Viterbi decoder is used to decode convolutionally encoded data, then excellent bit error rate performance and soft information incorporation are achieved, but latency is introduced that delays user data processing

Engineering Contradiction:
Improvebit error rate performanceVSAvoiddecoding latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the convolutionally encoded data into two parts: a front end block (header) and the remaining data stream. The front end block is decoded separately using a fast block decoder, while the rest is processed by the Viterbi decoder. This segmentation allows critical header information to be decoded quickly without waiting for the full Viterbi decoding process, thus reducing latency while maintaining reliability for the most time-sensitive data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the front end block from the complete convolutionally encoded data stream and processes it separately using a dedicated block decoder. This extraction removes the time-consuming Viterbi decoding step from the critical path of header processing, allowing user data processing to begin earlier while the full Viterbi decoding continues in the background.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If a block decoder is used to quickly decode the front end of convolutionally encoded data, then decoding speed is improved and latency is reduced, but decoding accuracy may be compromised compared to Viterbi decoding

Engineering Contradiction:
Improvedecoding speedVSAvoiddecoding accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies different decoding qualities to different parts of the data stream. The front end block (header) is decoded using a fast block decoder with sufficient accuracy for its purposes, while the main data stream receives the more accurate but slower Viterbi decoding. This local differentiation of quality meets the specific needs of each data portion without unnecessarily sacrificing accuracy or speed anywhere.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent performs partial decoding of the convolutionally encoded data by processing only the front end block through the block decoder rather than the entire data stream. This partial action provides sufficient decoding speed for time-critical header information while maintaining the option to perform full Viterbi decoding on the complete stream if higher accuracy is needed for the user data portion.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS7624327B2Fast decoder and method for front end of convolutionally encoded information stream
Publication Date: 2009.11.24 V SILICON SEMICON (HANGZHOU) CO LTD
  • US7624327B2 patent drawing
  • US7624327B2 patent drawing
  • US7624327B2 patent drawing

AI summary

A system and method enable the fast decoding of a front end of data (e.g., a header) that is convolutionally encoded by treating the front end as a block code. The system and method receive the convolutionally encoded data; extract a finite sized block from the data; and decode the extracted block using a block error correction decoding method. A Viterbi decoder can then be used to decode the remainder of the encoded data based on the decoded block.