DEFLATE Compression Accelerator Verification with LZ77 Bypass

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 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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the LZ77 compressor processes data across page boundaries, then compression efficiency is improved, but test repeatability deteriorates due to timing dependencies

Engineering Contradiction:
Improvecompression efficiencyVSAvoidtest repeatability
Core Design Contradiction:
ProductivityVSReliability

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

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

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

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.

Inventive Principle:
Principle #26Copying

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.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS11031951B2Verifying the correctness of a deflate compression accelerator
Publication Date: 2021.06.08 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11031951B2 patent drawing
  • US11031951B2 patent drawing
  • US11031951B2 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.