Binary Difference Encoding for Low-Bandwidth Data Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Frequent monitoring of system parameters generates large amounts of data, leading to high memory and bandwidth requirements, which incur significant costs and power consumption.
Innovation Solution
A binary data encoding system that compares adjacent data words to determine differences, selects the minimum subword size capable of representing these differences, and generates a size tag and corresponding subword for encoding, thereby reducing data size and bandwidth needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If frequent monitoring of system parameters is performed, then measurement precision and data accuracy are improved, but memory requirements and bandwidth requirements increase
Solution Approach 1:
The patent extracts only the essential information from the monitored data by comparing adjacent data words and encoding only the difference values. Instead of transmitting or storing complete data words, the system extracts and encodes only the changes between consecutive measurements, significantly reducing data volume while preserving measurement precision.
Solution Approach 2:
The patent changes the parameter representation by encoding data in terms of difference values rather than absolute values. By selecting subword sizes that match the actual range of difference values and using variable-length encoding, the system optimizes the data representation to reduce memory and bandwidth requirements while maintaining measurement accuracy.
2Quantity of substance
If large amounts of data are stored or transmitted, then data completeness is improved, but power consumption and operational costs increase
Solution Approach 1:
The system extracts only the necessary information by encoding difference values between adjacent data words. This extraction approach reduces the amount of data that needs to be processed, stored, and transmitted, thereby reducing power consumption associated with memory operations and communication.
Solution Approach 2:
The patent employs dynamic encoding by selecting subword sizes based on the actual magnitude of difference values. The encoding scheme adapts to the data characteristics, using smaller subword sizes when difference values are small and larger subword sizes when needed, optimizing the balance between data completeness and power consumption.
3Quantity of substance
If data compression is applied to reduce memory and bandwidth requirements, then power consumption and costs are reduced, but data processing complexity increases
Solution Approach 1:
The patent segments the data encoding process into distinct functional components: a comparator that calculates difference values, a selector that determines appropriate subword sizes, and an encoding engine that generates the compressed representation. This segmentation allows each component to perform a specific function efficiently, managing overall system complexity.
Solution Approach 2:
The encoding system manages complexity by changing parameters systematically - selecting from a predefined set of subword sizes based on difference value magnitude. This parameter-based approach provides a structured method for compression that balances complexity reduction with effective data volume reduction.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Apparatus and associated methods relate to compressing a sequence of binary data by encoding difference values between adjacent data in the sequence. For each datum in the sequence, the difference value may be determined by comparing the datum with an immediately preceding datum. For data, the determined difference may be expressible using few bits. The determined difference is encoded in subwords having subword lengths selected from a set of predetermined subword lengths. The selected subword lengths may be a minimum one of the set of predetermined subword sizes that is capable of representing the difference between the adjacent data. A size tag is generated for each subword encoded. The size tag identifies the size of the subword selected and used for encoding the determined difference. The difference may be encoded as a mathematical difference or as a bit pattern difference.