1 /*###ICF### Section handled by ICF editor, don't touch! ****/
2 /*-Editor annotation file-*/
3 /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
5 define symbol __ICFEDIT_intvec_start__ = 0x08000000;
7 define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 /* [RAM] Vector table dynamic copy: 98 vectors * 4 bytes = 392 bytes (0x188) */
10 define symbol __NVIC_start__ = 0x20000000;
11 define symbol __NVIC_end__ = 0x20000187; /* to be aligned on 8 bytes */
12 define symbol __ICFEDIT_region_RAM_start__ = 0x20000188;
13 define symbol __ICFEDIT_region_RAM_end__ = 0x2001FFFF;
14 define symbol __ICFEDIT_region_CCMRAM_start__ = 0x10000000;
15 define symbol __ICFEDIT_region_CCMRAM_end__ = 0x1000FFFF;
17 /*Heap 1/4 of ram and stack 1/8*/
18 define symbol __ICFEDIT_size_cstack__ = 0x4000;
19 define symbol __ICFEDIT_size_heap__ = 0x8000;
20 /**** End of ICF editor section. ###ICF###*/
23 define memory mem with size = 4G;
24 define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
25 define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
26 define region CCMRAM_region = mem:[from __ICFEDIT_region_CCMRAM_start__ to __ICFEDIT_region_CCMRAM_end__];
28 define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
29 define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31 initialize by copy { readwrite };
32 do not initialize { section .noinit };
34 place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
36 place in ROM_region { readonly };
37 place in RAM_region { readwrite,
38 block CSTACK, block HEAP };