home products design-services company clients news careers contact us

Data Compression

Overview

Data compression is the process of encoding information using fewer bits than an unencoded representation would use through the use of specific encoding schemes. Some schemes are completely reversible so that the original data can be accurately reconstructed (lossless data compression), while others accept some loss of data in order to achieve higher compression (lossy data compression). The latter category includes schemes used for audio and video compression (eg. MP3 and MPEG), but here we consider applications where compression must be lossless.

Lossless compression is useful where data needs to be transmitted or stored and where reducing the amount of data being handled has positive benefits. In terms of storage, compression techniques can be used to increase the quantity of data which may be stored on media which otherwise might be too restricted in capacity. Similarly, network speed may be apparently increased using compression to reduce the quantity of data being transferred. Requirements such as these however require the compression and subsequent expansion of the data to occur at high data rates. Where previously data compression was generally handled in software, today's requirements mean that high performance hardware acceleration of the compression processing is becoming a basic requirement.

Data compression and encryption are often closely related within a system. It is worth noting that data which has been encrypted will not compress effectively due to the way in which encryption naturally removes any repeats or patterns from the plain data. This means that when these two operations co-exist, the order in which they are applied is very important, as is a full understanding of the relative data throughputs through the compression function. Significant care must be taken in the design of such a system to ensure the most effective use of the hardware.

The Lempel-Ziv (LZ) compression methods are among the most popular algorithms for lossless compression. LZ methods use a table based compression model where table entries are substituted for repeated strings of data. For most LZ methods, this table is generated dynamically from the data coming into the encoder.

One particular LZ-type algorithm is called LZRW3. This is a well known algorithm developed by Ross Williams in the 1990s which offers a useful combination of high throughput and good compression performance. It is supplied as part of the Linux operating system as an optional compression technique, so is well proven and as far as we know not subject to any patent claims.

Helion Data Compression Solutions

Helion currently offer a very high performance implementation in hardware for the LZRW3 lossless compression algorithm. A choice of separate compression and expansion engines, or a combined compressor / decompressor is available, each capable of processing at gigabit rates in typical ASIC or FPGA targets.

These high performance cores are available in versions for use in ASIC, Altera and Xilinx FPGA, and in common with all Helion IP cores they have been designed with each technology firmly in mind to yield the very best and most efficient results.

Measured Area and Performance
Example figures for combined Compressor/Expander (functions also available separately)

TARGET TYPICAL THROUGHPUT AREA
ASIC
(0.13um CMOS)
>1.5 Gbps* <10k gates
plus RAM**
Xilinx FPGA
(Spartan 3 -5)
>600 Mbps* 1015 slices
4 to 20 BlockRAMs***
Xilinx FPGA
(Virtex 4 -11)
>1.1 Gbps* 1033 slices
4 to 20 BlockRAMs***
Xilinx FPGA
(Virtex 5 -3)
>1.3 Gbps* 226 slices
2 to 10 BlockRAMs***

* Typical throughput figures above are data dependant.
** ASIC RAM figures depend on RAM cells available plus chosen compression blocksize.
*** RAM figures above will vary with chosen compression blocksize.

Datasheets

For full details of the Helion LZRW3 cores, please download the datasheet appropriate to your target technology.

Click here for the Xilinx FPGA core data sheet (PDF format)

Please contact Helion for ASIC, Actel and Altera datasheets.

Contact

For more detailed information on these or any of our other products and services, please feel free to email us at helioncores@heliontech.com and we will be pleased to discuss how we can assist with your individual requirements.


copyright © Helion Technology Limited, 1998-2008. All rights reserved.
Web Site Developed by
Goldstag Limited