Arithmetic Packet Encoding for Run-Length-Limited Data Links
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing clock recovery systems in electronic data communications fail due to excessively long run lengths of data sequences, leading to insufficient transitions for clock detection, which can cause communication link failures.
Innovation Solution
Implementing run-length limited codes using arithmetic encoding to ensure that encoded data packets have limited run lengths and exclude specific codewords, such as all-zeroes and all-ones, to maintain clock synchronization and improve communication reliability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is transmitted without run-length limiting, then transmission efficiency is improved, but clock recovery reliability deteriorates due to insufficient transitions
Solution Approach 1:
The patent applies arithmetic encoding to transform the data stream into a coded representation that enforces run-length constraints. By changing the parameter space of the data representation (from raw bits to arithmetic codes), the system achieves both high transmission efficiency and reliable clock recovery, as the coded data inherently limits consecutive identical signal levels while maintaining near-optimal compression.
2Reliability
If arithmetic encoding is applied to limit run lengths, then clock recovery reliability is improved, but device complexity increases
Solution Approach 1:
The patent replaces traditional mechanical or logical encoding approaches (such as simple block codes or constraint-based encoders) with arithmetic encoding, which uses mathematical transformations to achieve run-length limiting. This substitution reduces hardware complexity while maintaining or improving encoding effectiveness, as arithmetic encoding can be implemented efficiently using standard processors or FPGAs.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A communication system includes: a transmitter including: an arithmetic decoder configured to generate an output symbol based on input bits and a symbol frequency table that sets frequencies of excluded symbols to 0 and frequencies of allowed symbols to non-zero values, the transmitter being configured to iteratively generate a sequence of restricted packets and an ending state, the sequence of restricted packets excluding instances of the one or more excluded symbols and to transmit the sequence of restricted packets and the ending state on a channel; and a receiver including: an arithmetic encoder configured to compute an output state based on an input state, an input symbol, and the symbol frequency table, the receiver being configured to: supply an ending state received from the channel and the restricted packets to the arithmetic encoder to iteratively generate a final state, and recover a bit sequence from the final state.