DEFLATE Accelerator Verification with LZ77 Bypass Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvecompression ratioVSAvoidpredictability of test results
Core Design Contradiction:
Loss of substanceVSReliability

Solution Approach 1:

The patent segments the compression test into two distinct phases: a first test with LZ77 enabled to measure compression ratio, and a second test with LZ77 disabled to verify predictability and repeatability. This segmentation allows both compression performance and test reliability to be evaluated separately without interfering with each other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically configures the LZ77 compressor based on test requirements. A control mechanism enables or disables the LZ77 phase depending on whether the test prioritizes compression ratio measurement or predictability verification, allowing the system to adapt its behavior to different testing objectives.

Inventive Principle:
Principle #15Dynamics

2Productivity

If the LZ77 compressor processes data across page boundaries, then compression efficiency is improved, but result consistency deteriorates

Engineering Contradiction:
Improvecompression efficiencyVSAvoidresult consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent extracts and removes the LZ77 compression phase from the test path when verifying predictability and repeatability. By taking out the problematic component that causes inconsistency across page boundaries, the system can verify core functionality without the interference of LZ77's non-deterministic behavior.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary testing without LZ77 to establish baseline predictability and repeatability before enabling LZ77 for compression ratio measurement. This preliminary action ensures that the core system functions correctly and produces consistent results before adding the variable LZ77 component.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If comprehensive testing with low-level modeling is performed, then verification accuracy is improved, but test complexity and time increase

Engineering Contradiction:
Improveverification accuracyVSAvoidtest complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent creates a simplified copy of the compression test that excludes the LZ77 phase. This copy allows verification of core functionality and predictability without requiring complex low-level modeling, reducing test complexity while maintaining sufficient verification accuracy for the Huffman encoding phase.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent performs partial testing by disabling LZ77 for specific verification tests. This partial action approach verifies the critical predictability and repeatability requirements without the excessive complexity of fully modeling the entire compression pipeline including LZ77's variable-length matching.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10985778B2Verifying the correctness of a deflate compression accelerator
Publication Date: 2021.04.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10985778B2 patent drawing
  • US10985778B2 patent drawing
  • US10985778B2 patent drawing

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.