Compressione dati (emCompress)

Pubblicato il Pubblicato in Sistemi Operativi Real-Time, Utility Software

Segger emCompress è una libreria che implementa un algoritmo di compressione (senza perdita) di dati per applicazioni embedded.
E’ pensato per comprimere dati sul PC di sviluppo per poter poi successivamente decomprimere tali informazioni direttamente sul sistema target ad opera del microcontrollore sulla scheda.
Le informazioni compresse sono memorizzate nella memoria flash del sistema target. Un algoritmo di decompressione residente sul sistema target è in grado di decomprimere le informazioni al volo, ogni qualvolta ciò sia necessario. E’ un algoritmo implementato in modo da richiedere una quantità limitata di RAM, tanto che un appropriato algoritmo di decompressione è utilizzato sulla base della quantità di RAM disponibile sul target.

Caratteristiche

Compressione estremamente efficiente
Algoritmo di decompressione di dimensioni limitate (residente nella memoria flash)
Algoritmo di decompressione selezionato in base alla RAM disponibile, già in fase di compressione dei dati su host
Supporta la compressione di gruppi di file, per una maggiore efficienza complessiva.
Licenza senza royalties.

Risorse tipiche richieste

Data Uncompressed emCompressed
Decompression RAM 2 kB 48 kB
Data size 112 kByte
100%
30.5 kByte
27.3%
23 kByte
20.6%
Compression codec LZJU90 DEFLATE
Decompression speed1 3 MByte/sec 2 MByte/sec