View Full Version : compression

09-19-2007, 03:36 PM
has anyone made attempt to implement
some kind of data compression into propeller ?

Beau Schwabe
09-19-2007, 10:31 PM

This would have more to do with data transmission bandwidth compression and I haven't had a chance to implement anything, but 8PSK (8 Phase Shift Keying) or QPSK (Quad Phase Shift Keying) should work out nicely with a Propeller. Other methods would work as well, I just particularly like the constellation data transmission concept.

Preliminary tests that I have done, have two or more Propellers ( a single master and a single or multiple slaves) running at the same carrier frequency.· The slave Propeller constantly "tracks" the incoming signal and·phase locks to the carrier frequency·of the master Propeller.· To transmit data, the master Propeller phase shifts its carrier frequency by a constellation symbol offset.· Since the Propeller Slave(s) are phase locked and constantly tracking the incoming signal from the Master Propeller, the slave Propellers·can determine "how much" phase shift occurred from the master Propeller and reconstruct the original data.


Beau Schwabe (mailto:bschwabe@parallax.com)

IC Layout Engineer
Parallax, Inc.

Post Edited (Beau Schwabe (Parallax)) : 9/19/2007 4:10:02 PM GMT

09-19-2007, 10:40 PM
Some decompressors are simple and fast, but compression normally is quite consuming. There are some LZW and variants available in open source programs. A good starting point, too

09-20-2007, 09:08 PM
thank you

but i meant data compression schemes, something

simple like Run Lenght Encoding (RLE)...

Ken Peterson
09-23-2007, 12:13 AM
The compression algorithm you use will largely depend on the type of data you are trying to compress, and whether or not you can accept lossy compression. RLE works well for image data, especially monochromic. For audio data, some sort of differential encoding scheme is probably more appropriate. For text, statistical methods like Huffman encoding work well.


The more I know, the more I know I don't know.· Is this what they call Wisdom?

09-25-2007, 03:15 AM
Data compression is highly dependent on the source data, whether loss is acceptable, and is limitted by CPU (processing time/latency), RAM (dynamic codebooks) and ROM (static codebooks).

09-26-2007, 03:28 PM
thank you all,

i am quite aware of compression methods, and

it exist a million libraries 4 pc's, but usually

there is a lack in embedded's, even for simpler


i don't pretend performance that could

only achieved by powerful PLD's !

before "re-invent the wheel" i just want to know

if someone ever attempted something about this

matter, on propeller platform of course...

Ken Peterson
09-26-2007, 09:16 PM
@onclepicsou: Just curious, what type of data are you trying to compress? Some types of data may lend themselves to easy compression with minimal code. In that case if you try to use a general purpose compression scheme, you may be doing too much work.


The more I know, the more I know I don't know.· Is this what they call Wisdom?