Segger emCompress
La riduzione delle dimensioni dei dati per l’archiviazione e il trasferimento è estremamente preziosa nei sistemi embedded. Una dimensione di archiviazione ridotta minimizza la complessità e i costi dei sistemi mantenendo bassi i requisiti di memoria. Una dimensione di trasferimento ridotta permette di superare i limiti della larghezza di banda disponibile per l’invio e la ricezione dei dati.
Progettato specificamente per i sistemi embedded, emCompress è in grado di comprimere e decomprimere dati anche sui microcontrollori più piccoli. emCompress è disponibile in quattro edizioni (emCompress-Pro, emCompress-ToGo, emCompress-Embed e emCompress-LZMA) che coprono diverse applicazioni di compressione. Ogni edizione è ottimizzata per il suo uso specifico per fornire il modo più conveniente di gestire i dati.
emCompress è scritto in ANSI C ampiamente commentato. È indipendente sia dal compilatore che dal target. A differenza della maggior parte delle librerie di compressione, non è coperto da licenze open source o con obbligo di attribuzione e può essere integrato in qualsiasi prodotto commerciale o proprietario senza l’obbligo di divulgare il codice sorgente combinato.
Caratteristiche principali
- Per dispositivi embedded, app e software per PC.
- Ingombro ROM del decompressore estremamente ridotto.
- Ampia gamma di algoritmi di compressione.
- Facile da configurare e integrare.
- Quattro edizioni per soddisfare ogni esigenza.
Vantaggi
- Minore ingombro di memoria: Comprimendo i dati, è possibile memorizzare molto di più in memoria Flash (interna o SPI) o su schede SD esterne, rendendo la soluzione più economica.
- Minor traffico di comunicazione: Nelle applicazioni con larghezza di banda limitata, è possibile trasmettere più informazioni in meno tempo, riducendo anche il consumo energetico di trasmettitori e ricevitori.
- Aggiornamenti più veloci: Il nuovo firmware o i dati di aggiornamento possono essere trasmessi “over-the-air” più rapidamente, superando i limiti di canali come Bluetooth, Zigbee o reti mobili con scarsa copertura.
- Maggiore flessibilità: emCompress gestisce diversi codec e formati di dati, inclusi i formati di archivio comuni che devono essere decompressi in strutture di file specifiche.
Casi d’uso
SEGGER ha sviluppato quattro edizioni per coprire ogni scenario:
Velocizzare gli aggiornamenti firmware
Molti prodotti richiedono aggiornamenti sul campo dove la banda è limitata.
- emCompress-Pro: Consente aggiornamenti con immagini compresse, decomprimendo il flusso di dati “al volo” per il modulo di aggiornamento.
- emCompress-LZMA: La soluzione economica che offre un singolo codec (LZMA) con compressione su host e decompressore in codice sorgente sul target.
Ridurre le dimensioni delle immagini firmware
Quando il firmware eccede la memoria Flash disponibile:
- emCompress-Embed: È la scelta ideale per ridurre i dati statici nel firmware. Grazie a decompressori piccoli e veloci, i dati vengono decompressi solo quando necessario.
Minimizzare l’ingombro degli “asset” di interfaccia
Asset digitali per interfacce utente (immagini, font) possono essere archiviati compressi.
- La modalità “group mode” di emCompress-Embed permette di comprimere più asset insieme per ottenere risultati ancora migliori.
Ridurre il traffico nelle reti IoT
- emCompress-ToGo: Messaggi inviati su una rete possono essere compressi e decompressi “al volo” dal mittente e dal destinatario, riducendo la congestione della rete.
Gestire dati da strumenti di terze parti
- emCompress-Pro: È compatibile con i comuni strumenti di compressione PC, permettendo al sistema embedded di elaborare dati provenienti da fonti esterne.
Le Quattro Edizioni
| Caratteristica | emCompress-Pro | emCompress-ToGo | emCompress-Embed | emCompress-LZMA |
| Compressione sul target | Sì [1] | Sì | No | No |
| Decompressione sul target | Sì | Sì | Sì | Sì |
| Decompressione dati statici | Sì | Sì | Sì | Sì |
| Decompressione file e stream | Sì | Sì | No | Sì |
| Algoritmi disponibili | DEFLATE, LZMA, LZJU90, LZPJ | SMASH-2 | DEFLATE, Huffman, LZW, LZSS, LZJU90, RLE-PAR | LZMA |
[1] Funzionalità disponibile come add-on opzionale.
Licenze
emCompress è disponibile sotto vari modelli di licenza per software embedded e viene fornito in pacchetti di codice sorgente.
- Pagamento unico: Nessuna royalty, nessun abbonamento.
- Costi fissi: Il software diventa parte delle spese dell’attrezzatura, mantenendo i costi statici.
- Supporto incluso: Le licenze includono aggiornamenti e assistenza da parte degli esperti SEGGER.
