DEFLATE Compression Accelerator Verification with LZ77 Bypass
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for verifying the correctness of DEFLATE compression accelerators face challenges in predictability and repeatability, particularly due to the complex nature of the LZ77 compression phase, which can lead to inconsistent results across hardware implementations.
Innovation Solution
The implementation of a software-controlled switch to disable the LZ77 compression phase, modifying the LZ77 compressor to never form matching strings or hashes across page boundaries, and using a programmable hash character size to ensure reproducible results, allowing for comprehensive testing without low-level modeling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of substance
If the LZ77 compression phase is enabled with full functionality, then compression ratio is improved, but predictability and repeatability of test results deteriorate
Solution Approach 1:
The patent segments the DEFLATE compression process into two independent phases: LZ77 compression phase and Huffman encoding phase. A switch mechanism is introduced to selectively enable or disable the LZ77 phase during verification tests. This segmentation allows the system to maintain full compression functionality when needed while enabling deterministic testing when the switch is activated, thereby resolving the contradiction between compression ratio and test predictability.
Solution Approach 2:
The patent modifies the operational parameters of the LZ77 compressor by introducing a control switch that changes the compression behavior. When the switch is activated, the LZ77 phase is configured to bypass complex matching operations that cause non-determinism, while still allowing the Huffman encoding phase to process the data. This parameter change enables the system to achieve both high compression ratio in normal operation and predictable results during verification.
2Productivity
If the LZ77 compressor processes data across page boundaries, then compression efficiency is improved, but test repeatability deteriorates due to timing dependencies
Solution Approach 1:
The patent implements preliminary actions by pre-configuring the LZ77 compressor with a switch mechanism that prevents cross-page boundary processing during verification tests. This preliminary configuration ensures that test inputs processed in isolation produce consistent, repeatable results without the non-deterministic effects of timing-dependent cross-page operations. The switch is set before test execution to enforce this behavior.
Solution Approach 2:
The patent extracts the problematic cross-page boundary processing from the verification test path by using the switch to disable this functionality during testing. This extraction allows the core compression logic to be verified in a controlled, deterministic environment while preserving the full cross-page capability for production use, thereby maintaining compression efficiency without sacrificing test repeatability.
3Measurement precision
If comprehensive testing with low-level modeling is performed, then verification accuracy is improved, but device complexity and test implementation difficulty increase
Solution Approach 1:
The patent creates a simplified copy of the compression path by introducing a bypass mode for the LZ77 phase during verification. Instead of requiring complex low-level modeling of the entire LZ77 algorithm, the system uses a switch to create an alternative test path that feeds directly into the Huffman encoding phase. This copying approach maintains verification accuracy for the critical encoding path while dramatically reducing test implementation complexity.
Solution Approach 2:
The patent inverts the conventional testing approach by instead of trying to model and verify the complex LZ77 phase, it disables LZ77 during verification and tests the Huffman encoding phase directly with controlled inputs. This inversion simplifies the verification process while still achieving comprehensive coverage of the compression pipeline, reducing test complexity without sacrificing verification accuracy.
Data Source
AI summary
Embodiments of the invention are directed to a DEFLATE compression accelerator and to a method for verifying the correctness of the DEFLATE compression accelerator. The accelerator includes an input buffer and a Lempel-Ziv 77 (LZ77) compressor communicatively coupled to an output of the input buffer. A switch is communicatively coupled to the output of the input buffer and to the output of the LZ77 compressor. The switch is configured to bypass the LZ77 compressor during a compression test. The accelerator further includes a deflate Huffman encoder communicatively coupled to an output of the switch and an output buffer communicatively coupled to the deflate Huffman encoder. When the switch is not bypassed, the compressor can be modified to produce repeatable results.


