Hardware Compression Subsystem for Longest-Match Data Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data compression methods using software require a general-purpose processor to perform numerous operations and memory accesses, leading to inefficiencies in processing and power consumption.
Innovation Solution
A hardware-based compression subsystem that compares substrings from original data to stored data in a history buffer to generate commands for compressed data, using a comparator, match detector, and command generator to selectively output literal write and string copy commands, thereby reducing the need for software processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If software-based compression is used, then data compression functionality is achieved, but processing efficiency deteriorates due to large number of operations and memory accesses
Solution Approach 1:
The patent replaces software-based compression operations with a dedicated hardware compression subsystem. This subsystem includes a history buffer for storing previous data, a comparator for parallel comparison operations, and a command generator for producing compression commands. By implementing the compression logic in hardware rather than software, the system achieves significant improvements in processing efficiency and reduces power consumption, as the hardware circuitry can perform comparisons and generate commands in parallel without the overhead of software interpretation and multiple memory accesses.
2Speed
If software compression is used, then compression operations are performed, but processing speed deteriorates due to general-purpose processor requirements
Solution Approach 1:
The patent divides the compression system into distinct functional modules: a history buffer module for data storage, a comparator module for pattern matching, and a command generator module for output generation. Each module performs a specific function and can operate independently in parallel. This segmentation allows the system to achieve high processing speeds by eliminating the sequential bottlenecks inherent in general-purpose processor execution, while each module remains relatively simple in design.
Solution Approach 2:
The patent introduces a dedicated compression subsystem as an intermediary between the data source and the storage/transmission destination. This subsystem acts as a specialized processor that handles compression operations, freeing the general-purpose processor from these tasks. The compression subsystem includes intermediate structures such as the history buffer that mediates between input data and the comparison operations, enabling efficient processing without requiring complex general-purpose processor involvement.
Data Source
AI summary
An electronic device, including a compression subsystem with a comparator, a history buffer, a match detector, and a command generator, performs operations for generating compressed data from original data. The compression subsystem, starting in each cycle of a clock, processes a search string that is copied from original data to generate commands for compressed data. For processing each search string, the comparator compares each of N substrings from the search string with stored data from the history buffer to find matches between the substrings and the stored data. The match detector then determines a longest match for each of the substrings. The command generator next selectively outputs commands for the compressed data based on the longest matches for the substrings.


