Data Frame Compression Using Precomputed Symbol Code Cases
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data compression techniques like Huffman coding and Truncated Huffman coding are inefficient for real-time applications due to their complexity, high resource requirements, and increased latency, especially when dealing with large amounts of data or small data frames.
Innovation Solution
A system and method for real-time compression of data frames that identifies symbol frequencies, sorts them, computes compression gains, and assigns bit codes based on predefined case types, eliminating the need to generate a Huffman tree, thereby reducing processing time and increasing data transfer rates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If Huffman coding or Truncated Huffman coding is used for data compression, then data storage space is saved and effective data transfer rate is increased, but processing time increases significantly and resource requirements increase
Solution Approach 1:
The patent pre-calculates and stores compression parameters (bit code assignments for different symbol frequency ranges) before actual data compression. This preliminary preparation eliminates the need for complex runtime tree generation, enabling fast real-time compression while maintaining good compression ratios.
2Productivity
If Huffman tree generation is performed for data compression, then compression efficiency is improved, but device complexity and resource requirements increase
Solution Approach 1:
The patent extracts and pre-computes only the essential compression parameters (bit code assignments for different frequency ranges) from the Huffman coding process, storing them in lookup tables. This removes the complex tree generation logic from runtime operations, reducing device complexity while preserving compression efficiency.
Solution Approach 2:
The compression parameters are pre-calculated and stored in memory before actual data processing. This preliminary action eliminates the need for complex runtime tree construction, significantly reducing logic resources and device complexity during real-time compression operations.
3Quantity of substance
If traditional compression techniques are used for small data frames, then compression is achieved, but tree information requires too much data to be transmitted, decreasing overall compression efficiency
Solution Approach 1:
The patent applies truncated Huffman coding that assigns bit codes to only a particular set of source symbols (the most frequent ones) rather than all symbols. This partial action reduces the amount of tree information that needs to be transmitted, making compression efficient for small data frames while maintaining good compression ratios.
4Speed
If real-time compression is required, then low latency is needed, but traditional compression techniques take a lot of time to compress huge amounts of data
Solution Approach 1:
The patent pre-calculates compression parameters and stores them in lookup tables before actual data compression. This preliminary preparation enables O(1) runtime compression operations, achieving real-time compression with low latency even for large data streams.
Solution Approach 2:
The patent uses pre-computed compression parameter tables (copies of optimal Huffman codes for different frequency distributions) that can be quickly referenced during compression. This copying approach avoids repeated complex calculations, enabling fast real-time compression with minimal latency.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The present disclosure relates to system(s) and method(s) for real time compression of a data frame. The system receives the data frame comprising a set of symbols. Further, the system identifies frequency of each symbol, from the set of symbols. The system further sorts the symbols in descending order of frequency, associated with each symbols. Further, the system computes a compression gain associated with each predefined case type, a set of predefined case types. Furthermore, the system selects a target predefined case type, based on the comparison of the compression gain of each predefined case types. The system further assigns a compressed code to Most Frequent Symbols (MFS), in the data frame. The compressed code is assigned based on the target predefined case type. Further, the system generates a compressed frame, associated with the data frame. The compressed frame comprises a header and a sequence of compressed symbols.