MSP430上的Zlib压缩

use*_*476 6 compression embedded zlib msp430

有没有人尝试在MSP430上使用zlib压缩?您对如何编译到库以便在MSP430项目中使用(我使用的是IAR Embedded Workbench)有什么建议吗?

Osm*_*ran 8

根据MSP430数据表维基百科的文章,即使只是滑动窗口(32 KiB),你也没有足够的RAM(最多16 KiB).因此,您不能对MSP430使用任何deflate算法.考虑到ZLIB是一个正确的deflate实现,对ZLIB也是如此.即使您尝试编写自己的deflate实现,也无法成功.因为,deflate需要32 KiB的滑动字典和一些额外的内存为它的霍夫曼树.这只适用于减压部分.对于压缩,你需要额外的内存用于哈希链匹配查找器,它是7.5*字典大小= 240 KiB(根据7zip的deflate实现).如果您确实需要针对该小型架构进行压缩,我建议您查看自定义字节编码的LZSS压缩算法.它们快速而轻盈.但是,由于特别是熵编码差异,不足以与deflate竞争.


Cli*_*ord 1

我已经为许多目标(不是专门针对 MSP430)构建了它,但这应该不重要。它全部是 ISO C 并且仅依赖于标准库调用。它使用动态内存分配,因此您需要一个堆。