Top Banner
LOSSLESS HIGH SPEED COMPRESSION AND DECOMPRESSION OF DATA By: Bhunavya.T N.Kalyan Chakravarthy D.Sirish R.Govind Raju under the guidence of: Mr.M.RAMA KRISHNA M.Tech
34

Compression and Decompression

Apr 21, 2015

Download

Documents

Kalyan Nakkina
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Compression and Decompression

LOSSLESS HIGH SPEED COMPRESSION AND DECOMPRESSION OF

DATABy:

Bhunavya.T

N.Kalyan Chakravarthy

D.Sirish

R.Govind Raju

under the guidence of:

Mr.M.RAMA KRISHNA M.Tech

Page 2: Compression and Decompression

Contents• Introduction• Scope of the project• Basic communication system• Why do we use digital instead of analog• Compression• Compression techniques• Decompression

Page 3: Compression and Decompression

Contents(cntd..)• Block diagram• Compressor block• XMatch pro algorithm• Content addressable memory• Decompressor block• Feature scope• conclusion

Page 4: Compression and Decompression

Introduction• With the current reliance on

telecommunications, a way to shrink data and save on bandwidth is essential.

• DATA compression is nearly an ubiquitous occurrence in modern computing.

• Data compression is one of the enabling technologies of each of the multimedia revolution.

Page 5: Compression and Decompression

Scope of the project• The objective of the project is to design a lossless

data compression system which operates in high-speed to achieve high compression rate.

• By using the architecture of compressors, the data compression rates are significantly improved.

• Also inherent scalability of architecture is possible.

Page 6: Compression and Decompression

Basic communication system

Every communication system has 5 basic requirements• Data Source (where the data originates)• Transmitter (device used to transmit data)• Transmission Medium (cables or non cable)• Receiver (device used to receive data)• Destination (where the data will be placed)

Page 7: Compression and Decompression

Why do we use digital instead of analog

1) Resistance to noise/robustness

2) Error Correction and Detection

3) Easily Programmable

4) Cheap Electronic Circuits

5) Information storage is easy.

6) Accuracy and precision are greater.

7) More digital circuitry can be fabricated on IC chips.

Page 8: Compression and Decompression

Compression • The compression is the process that is

required either to reduce the volume of information to be transmitted – text, fax and images or reduce the bandwidth that is required for its transmission – speech, audio and video.

• The compression technique is first applied to the source information prior to its transmission.

Page 9: Compression and Decompression

Compression techniques

Compression algorithms can be classified in to

two types, namely

Lossless Compression

Lossy Compression

Page 10: Compression and Decompression

Lossless compression

• Lossless compression allows for the total recall of the original data set after compression.

• The aim is to reduce the amount of source information to be transmitted in such a way that, when the compressed information is decompressed, there is no loss of information.

Page 11: Compression and Decompression

Lossless compression techniques

The Various lossless Compression Techniques are,

Pack bits encoding Lempel-Ziv and Welch algorithm LZW Huffman Arithmetic

Page 12: Compression and Decompression

Lossy compressionLossy compression occurs when the original

data set cannot be fully constructed from the compressed data set.

The aim of the Lossy compression algorithms is normally not to reproduce an exact copy of the source information after decompression but rather a version of it that is perceived by the recipient as a true copy.

Page 13: Compression and Decompression

DecompressionDecompression is the reverse process of

compression.

Reconversion of compressed data into its  original (nearly original) form so that it can be heard, read, and/or seen as normal.

Page 14: Compression and Decompression

Block diagram

Page 15: Compression and Decompression

Compressor block32BIT COMPRESSION SYSTEM

CLK ADD OUT

RST

add out

DATA

(32 BITS)

MATCH HIT

START

DATA

OUT

(32 BIT)

COMPRESSOR

CAMCOMPARATOR

COMPARATORARRAY

Page 16: Compression and Decompression

Compressor block(contd..)

The block diagram gives the details about the components of a single 32 bit Compressor.

There are three components namely, COMPARATOR ARRAY CAMCOMPARATOR

Page 17: Compression and Decompression

Compressor block(contd..)

The COMPARATOR is used to compare two 32-bit data and to set or reset the output bit as 1 for equal and 0 for unequal.

ARRAY is of length of 64X32 bit locations. This is used to store the unmatched incoming data and when a new data comes, the incoming data is compared with all the data stored in this array.

The CAM COMPARATOR searches the CAM dictionary entries for a full match of the input data given.

Page 18: Compression and Decompression

XMatchPro algorithm

The XMatchPro algorithm uses a fixed-width dictionary

of previously seen data and attempts to match the

current data element with a match in the dictionary.

It works by taking a 4-byte word and trying to match or

partially match this word with past data. This past data is

stored in a dictionary, which is constructed from a

content addressable Memory.

 

Page 19: Compression and Decompression

XMatchPro algorithm(contd..)

The coding function for a match is required to code several

fields as follows:

A zero followed by:

1). Match location: It uses the binary code associated to

the matching location.

2). Match type: Indicates which bytes of the incoming tuple

have matched.

3). Characters that did not match transmitted in literal form.

 

Page 20: Compression and Decompression

Features High-speed lossless data compressor supports

compression and decompression in a single FPGA. 

Throughput up to 200 Mbytes/second compression or

decompression with low latency clocking at 50 MHz on a

APEX FPGA.

Full-duplex operation enables simultaneous compression

or decompression for a combined performance of 400

Mbytes/s. 

Page 21: Compression and Decompression

Features (cntd...) Full-duplex architecture enables self-checking test

mode using CRC (Cyclic Redundancy Check) codes.

32-bit high-performance coprocessor-style interface. 

Fully contained 32-bit architecture does not require

any external components and supports operation on

blocked data. 

  

Page 22: Compression and Decompression

Applications of XMatchPro algorithm

• Computer systems. 

• Networking products. 

• High performance storage devices. 

• Data logging equipment. 

• Remote sensing applications.

Page 23: Compression and Decompression

Content Addressable Memory

• .

Page 24: Compression and Decompression

Content Addressable Memory

The compression architecture is based around a block of CAM to realize the dictionary.

This is necessary since the search operation must be done in parallel in all the entries in the dictionary to allow high and data-independent throughput

Page 25: Compression and Decompression

Decompressor block The decompressor has the following

components

Array

Processing Unit.

Page 26: Compression and Decompression

Decompressor block(contd..)

• Array has the same function as that of the array unit which is used in the Compressor. It is also of the same length.

• Processing unit checks the incoming match hit data.

if it is 0, it indicates that the data is not present in the Array, so it stores the data in the Array.

if the match hit data is 1, it indicates the data is present in the Array, then it instructs to find the data from the Array with the help of the address input and sends as output to the data out.

Page 27: Compression and Decompression

Conclusion• The Improved Compression ratio is achieved in

Compression architecture with least increase in latency. The High speed throughput is achieved. The architecture provides inherent scalability in future.

• The total time required to transmit compressed data is less than that of transmitting uncompressed data. This can lead to a performance benefit, as the bandwidth of a link appears greater when transmitting compressed data and hence more data can be transmitted in a given amount of time . 

Page 28: Compression and Decompression

Future scope• There is a potential of doubling the

performance of storage / communication system by increasing the available txion bandwidth and data capacity with minimum investment.

• It can be applied in Computer systems, High performance storage devices.

Page 29: Compression and Decompression

Implementation of this project

• The software implementation of this project is done with XILINX ISE 8.2i.

• The code of this project implemented in VHDL.

• The hardware can be implimented using 32bit FPGA .

Page 30: Compression and Decompression

Resultscompression

Page 31: Compression and Decompression

RTL Schematic

Page 32: Compression and Decompression

decompression

Page 33: Compression and Decompression
Page 34: Compression and Decompression

QUIRIES