This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

why data compressor compress constants in Flash

Hi all, please help me understand data compressor.

I do not understand, why compressor compress the constants in flash.
I believed that only compressed are the data in flash, that are used to initialised variables in ram with a given value. Why even the data in ram are compressed?
But what I do not understand in all, what are my data in flash (const volatile - because can be changed by programing flash from the code in run time).

C++ code:
#define SECTOR_ADDR_for_Config 0x080E0000
const volatile DISTA_konfigurace_flash_typ F __attribute__((at(SECTOR_ADDR_for_Config)))=
{ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ..... up to 1024 bytes

MAPFILE: Load Region LR$$.ARM.__AT_0x080E0000 (Base: 0x080e0000, Size: 0x00000400, Max: 0x00000400, ABSOLUTE, COMPRESSED[0x00000190])

Execution Region ER$$.ARM.__AT_0x080E0000 (Base: 0x080e0000, Size: 0x00000400, Max: 0x00000400, ABSOLUTE, UNINIT, COMPRESSED[0x00000190])

Base Addr Size Type Attr Idx E Section Name Object

0x080e0000 0x00000400 Data RW 311 .ARM.__AT_0x080E0000 dista_konfigurace.o

Can anyone help?
Thank you,
Ludek