GUNZIP/ZLIB/Inflate Data Decompression Core

Overview

ZipAccel-D is a custom hardware implementation of a lossless data decompression engine that complies with the Inflate/Deflate, GZIP/GUNZIP, and ZLIB compression standards.

The core features fast processing, with low latency and high throughput. On average the core outputs three bytes of decompressed data per clock cycle, providing over 15Gbps in a typical 40nm technology. Designers can scale the throughput further by instantiating the core multiple times to achieve throughput rates exceeding 100Gbps.The latency is in the order of few tens of clock cycles for blocks coded with static Huffman tables, and typically less than 2,000 cycles for block encoded with dynamic Huffman tables.

The decompression core has been designed for ease of use and integration. It operates on a standalone basis, off-loading the host CPU from the demanding task of data decompression. The core receives compressed input files and outputs decompressed files. No preprocessing of the compressed files is required, as the core parses the file headers, checks the input files for errors, and outputs the decompressed data payload. Featuring extensive error tracking and reporting errors, the core enables smooth system operation and error recovery, even in the presence of errors in the compressed input files. Furthermore, internal memories can optionally support Error Correction Codes (ECC) to simplify achievement of Enterprise Class reliability requirements.

The ZipAccel-D core is a microcode-free design developed for reuse in ASIC and FPGA implementations. Streaming data, optionally bridged to AMBA AXI4-stream, interfaces ease SoC integration. Technology mapping is straightforward, as the design is scan-ready, microcode-free, and uses easily replaceable, generic memory models. The core has been rigorously verified and production proven in a number of commercially available products.

Key Features

  • Compression Standards
    • ZLIB (RFC-1950)
    • Inflate/Deflate (RFC-1951)
    • GZIP/GUNZIP (RFC-1952)
  • Inflate/Deflate Features
    • Up to 32KB history window size
    • All Deflate block types
      • Static and dynamic Huffman-coded blocks
      • Stored Deflate blocks
    • High Performance & Low Latency
      • Three bytes per clock average processing rate, for throughputs exceeding 20Gbps in modern ASIC technologies, and scalable to more than 100Gbps with multiple core instances
      • Latency from 20 clock cycles for Static Huffman blocks, and typically less than 2000 cycles for Dynamic Huffman Blocks
    • Easy to Use and Integrate
      • Processor-free, standalone operation
      • Extensive error-catching & reporting for smooth operation and recovery in the presence of errors
        • Header syntax errors
        • CRC/Adler 32 errors
        • File size errors
        • Coding errors
        • Huffman tables errors
        • Non-correctable ECC memory errors
      • Optional ECC memories
      • Streaming AXI-Stream or native FIFO-like data interfaces
      • Microcode-free, LINT-clean, scan-ready design
      • Complete, turn-key accelerator designs available on FPGA boards from different vendors
    • Configuration Options
      • Synthesis-time configuration options allow fine-tuning the core’s size and performance (partial list):
        • Input and output bus width
        • FIFO Sizes
        • Maximum history window
        • Static-only, or dynamic and static Huffman tables support

Block Diagram

GUNZIP/ZLIB/Inflate Data Decompression Core Block Diagram

Applications

  • The ZipAccel-D core is ideal for increasing the bandwidth of optical, wired or wireless data communication links, and for increasing the capacity of data storage in a wide range of devices such as networking interface/routing/storage equipment, data servers, or SSD drives. The core can also help reduce the power consumption and bandwidth of centralized memories (e.g. DDR) or interfaces (e.g. Ethernet, Wi-Fi) in a wide range of SoC designs.

Deliverables

  • HDL RTL source code (ASICs) or post-synthesis EDIF netlist (FPGAs)
  • Sophisticated Test Environment
  • Simulation scripts, test vectors and expected results
  • Synthesis script
  • Comprehensive user documentation

Technical Specifications

Maturity
Production Proven
Availability
Now
×
Semiconductor IP