[REQ] Lossless data (de)compress algorithithm (C/VHDL)

Status
Not open for further replies.

cube007

Full Member level 6
Joined
Mar 12, 2002
Messages
385
Helped
16
Reputation
32
Reaction score
5
Trophy points
1,298
Location
Australia
Activity points
3,477
Hello,

For transferring data from a PC to an embedded System via Ethernet (UDP packets) I’m looking for a fast and efficient lossless data (de)compress algorithm in C and/or VHDL. At the moment I’m sending UDP frames with about 22kBytes from the PC to the embedded hardware. With a standard LZH (Lempel-Ziv-Huffman) algorithm the frames can be compressed down to 40%. The current implementation is derived from **broken link removed**. But the code is too slow.

Any recommendations are welcome.

Regards,
cube007
 

dear cube007,

i don't recall any ready-to-use core for solely such thing. However, you might want to have a look at hardware JPEG encoder core at opencores. Huffmann encoding/decoding is part of both JPEG and MPEG.

A suggestion is to use RLE (run-length encoding) followed by Huffmann. Both are found as part of JPEG IPs.

Plus: There floats around the web an old (i think incomplete by a file or two) university project of some course named EE552. They did a lossless data coprocessor of some sort.

best regards mate
the_penetrator©
 

Hello the_penetrator,

Thank you for your contribution. Using some stuff of JPEG is a good idea. There are lot of information about JPEG in web. I will check this.

After doing some more activities to find something useful in the web I come across to https://www.oberhumer.com/. LZO Algorithm seems to be a good alternative for fast compression and decompression.


Bye,
cube007
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…