현재 DACS1000 에서 사용되어 지고 있는 메모리의 양을 확인하는 문서이다. 일반적으로 컴파일시에 만들어지는 .map 파일을 보고 확인할 수 있다. 일반 에디터로 볼 수도 있지만, ST 에서 제공하는 비주얼 툴인 ST Visual Memory 를 사용해서 확인할 것이다.
우선 두가지 상황을 비교해서 확인할 것이다.
- DCU 에 연결할 때
- FLASH 에 연결할 때
두가지 상황은 엄연히 다르다. 일단 첫번째 경우에 생성되는 map 을 보자!!
MAP OUTPUT FILE --------------- LKU file : top.lku Segment Map ----------- Name Address Size Type -------------- ---------- -------- -------- SYSTEM 0x80000000 320 RESERVED INTERNAL 0x80000140 7872 RAM SDRAM 0xc0000000 16777216 RAM NONCACHED 0xc0300000 524288 RAM EXTERNAL 0xc0380000 13040640 RAM mytracebuffer 0xc0fefc00 65536 RAM TRAPHANDLER 0xc0fffc00 1024 DEBUG SMI_TOP 0xc1000000 16777216 RAM INT_CONTROLLER 0x20000000 1024 PERIPHERAL INTLEVELCTRL 0x20111000 4096 DEVICE EMI 0x20200000 4096 DEVICE INTC_MIRROR 0x30000000 12288 RESERVED DCU 0x30003000 4096 DEVICE ICacheControl 0x30004000 4096 DEVICE DCacheControl 0x30005000 4096 DEVICE STEM0 0x50000000 33554432 DEVICE STEM1 0x60000000 33554432 DEVICE AT_DVB 0x70000000 251658240 DEVICE FLASH0 0x7fe00000 2097152 ROM Section/Region Map ------------------ Name Address Size Type Segment SB ---------------------- ---------- -------- -------- -------------- -- internal_section 0x80000140 6672 BSS INTERNAL os20_task_queue 0x80001b50 960 BSS INTERNAL os20_th_data 0x80001f10 96 BSS INTERNAL os20_root_tdesc 0x80001f70 24 BSS INTERNAL ncache_section 0xc0300000 524288 BSS NONCACHED def_code 0xc0380000 545068 CODE SDRAM def_bss 0xc040512c 1219744 BSS SDRAM ** def_data 0xc052edcc 35376 INIT SDRAM system_section 0xc05377fc 3145728 BSS SDRAM def_const 0xc08377fc 417380 CONST SDRAM os20_th_code 0xc089d660 568 CODE SDRAM os20_int_complex_text 0xc089d898 256 CODE SDRAM os20_int_moderate_text 0xc089d998 120 CODE SDRAM os20_int_simple_text 0xc089da10 84 CODE SDRAM <shutdown_section> 0xc089da64 12 CONST SDRAM <startup_section> 0xc089da70 12 CONST SDRAM bootdata 0xc089da7c 40 BOOTDATA SDRAM stack 0xc089daa4 3838128 STACK SDRAM heap 0xc0c46b54 3838124 HEAP SDRAM Onstartup Section Map --------------------- Symbol Address -------------------------------- ---------- heapcinit 0xc0402ff2 _ST_fdio_init 0xc0404840 stdio_init 0xc040414c Onshutdown Section Map ---------------------- Symbol Address -------------------------------- ---------- stdio_close 0xc0404160 _ST_fdio_deinit 0xc04048a9 exitshutdown 0xc0402f2a
위의 정보를 참조한 아래의 그림이다.
중간 중간에, 파란색은 빈 공간이다. 각 영역의 주소나 사이즈를 정해주는 파일은 config 디렉토리아래의 파일들과 include 파일들이다. 그 중에서 mb382_um.cfg 이다.
이제 각 영역 중에서 얼마나 쓰고 있고 또 얼마나 남았는지를 확인해본다.
영역 | 전체용량 | 사용량 | 남은양 | Symbol |
INTERNAL | 0x80002000 | 0x80001F88 | 0x78 | IntermalMemory, TaskQueue, TaskQueuePtr_data, kernel_workspace, TheRootTdesc |
다음은 안의 세부사항이다.
세부 영역 | 사이즈 | Symbol |
internal_section | 0x1A10(6672) | sections.c |
os20_task_queue | 0x3C0(960) | kernel.c |
os20_th_data | 0x60(96) | kernel_workspace |
os20_root_tdesc | 0x18(24) | task.c |
다음은 SDRAM 영역이다. 이 영역은 SDRAM, NONCACHED, EXTERNAL 이 합쳐진 영역이다. SDRAM 영역이 NONCACHED, EXTERNAL 주소까지 쓰고 있다.
영역 | 전체용량 | 사용량 | 남은양 | Symbol |
ncache_section | 0xc0380000 | 5424288(0x80000) | 0 | sections.c |
def_code | 0xc040512c | 539214(0x83A4E) | 5854(16DE) | os20.lib, stapi_stpti.lib, ui.tco… |
def_bss | 0xc052edcc | 1219744(0x129CA0) | 0 | stapi_stpti.lib, os20.lib, cstart.lib… |
def_data | 0xc05377fc | 34988(0x88AC) | 388(0x184) | kill , ciStatusFlag… |
system_section | 0xc08377fc | 3145728(0x300000) | 0 | sections.c |
def_const | 0xc089d660 | 0x65E64(417380) | 0 | stavmem_FDMA, task_class_init… |
os20_th_code | 0xc089d898 | 0x238(568) | 0 | kernel_scheduler |
os20_int_complex_text | 0xc089d998 | 0x100(256) | 0 | handler_complex_software, handler_complex |
os20_int_moderate_text | 0xc089da10 | 0x78(120) | 0 | handler_moderate_software, handler_moderate |
os20_int_simple_text | 0xc089da64 | 0x54(84) | 0 | handler_simple_software, handler_simple |
shutdown_section | 0xc089da70 | |||
startup_section | 0xc089da7c | |||
bootdata | 0xc089daa4 | |||
stack | 0xc0c46b54 | |||
heap | 0xc0fefc00 |
위의 외에는 사용하는 영역이 없었다.
이번에는 FLASH에 연결할 때의 경우를 살펴보자!!
MAP OUTPUT FILE --------------- LKU file : arena.hex Segment Map ----------- Name Address Size Type -------------- ---------- -------- -------- SYSTEM 0x80000000 320 RESERVED INTERNAL 0x80000140 7872 RAM SDRAM 0xc0000000 16777216 RAM NONCACHED 0xc0300000 524288 RAM EXTERNAL 0xc0380000 13040640 RAM mytracebuffer 0xc0fefc00 65536 RAM TRAPHANDLER 0xc0fffc00 1024 DEBUG SMI_TOP 0xc1000000 16777216 RAM INT_CONTROLLER 0x20000000 1024 PERIPHERAL INTLEVELCTRL 0x20111000 4096 DEVICE EMI 0x20200000 4096 DEVICE INTC_MIRROR 0x30000000 12288 RESERVED DCU 0x30003000 4096 DEVICE ICacheControl 0x30004000 4096 DEVICE DCacheControl 0x30005000 4096 DEVICE STEM0 0x50000000 33554432 DEVICE STEM1 0x60000000 33554432 DEVICE AT_DVB 0x70000000 251658240 DEVICE FLASH0 0x7fe00000 2097152 ROM Section/Region Map ------------------ Name Address Size Type Segment SB ----------------------- ---------- -------- -------- -------------- -- internal_section 0x80000140 6672 BSS INTERNAL os20_task_queue 0x80001b50 960 BSS INTERNAL os20_th_data 0x80001f10 96 BSS INTERNAL os20_root_tdesc 0x80001f70 24 BSS INTERNAL ncache_section 0xc0300000 524288 BSS NONCACHED def_code 0xc0380000 543212 CODE SDRAM def_bss 0xc04049ec 1219756 BSS SDRAM ** def_data 0xc052e698 35524 INIT SDRAM system_section 0xc053715c 3145728 BSS SDRAM def_const 0xc083715c 417384 CONST SDRAM os20_th_code 0xc089cfc4 568 CODE SDRAM os20_int_complex_text 0xc089d1fc 256 CODE SDRAM os20_int_moderate_text 0xc089d2fc 120 CODE SDRAM os20_int_simple_text 0xc089d374 84 CODE SDRAM <startup_section> 0xc089d3c8 16 CONST SDRAM <shutdown_section> 0xc089d3d8 12 CONST SDRAM stack 0xc089d3e4 3838992 STACK SDRAM heap 0xc0c467f4 3838988 HEAP SDRAM <initfuncs_text> 0x7fe00000 2068 CODE FLASH0 <romload_text> 0x7fe00814 120 CODE FLASH0 <romload2_text> 0x7fe0088c 212 CODE FLASH0 <_ST_ProgramIdentifier> 0x7fe00960 4 CONST FLASH0 def_code <partial> 0x7fe00964 50456 MVTORAM FLASH0 def_code <partial> 0x7fe0ce7c 204896 MVTORAM FLASH0 def_code <partial> 0x7fe3eedc 87248 MVTORAM FLASH0 def_code <partial> 0x7fe543ac 95896 MVTORAM FLASH0 def_code <partial> 0x7fe6ba44 49408 MVTORAM FLASH0 def_code <partial> 0x7fe77b44 55228 MVTORAM FLASH0 def_data <partial> 0x7fe85300 460 MVTORAM FLASH0 def_data <partial> 0x7fe854cc 116 MVTORAM FLASH0 def_data <partial> 0x7fe85540 184 MVTORAM FLASH0 def_data <partial> 0x7fe855f8 16 MVTORAM FLASH0 def_data <partial> 0x7fe85608 16 MVTORAM FLASH0 def_data <partial> 0x7fe85618 16 MVTORAM FLASH0 def_data <partial> 0x7fe85628 16 MVTORAM FLASH0 def_data <partial> 0x7fe85638 64 MVTORAM FLASH0 def_data <partial> 0x7fe85678 16 MVTORAM FLASH0 def_data <partial> 0x7fe85688 16 MVTORAM FLASH0 def_data <partial> 0x7fe85698 64 MVTORAM FLASH0 def_data <partial> 0x7fe856d8 16 MVTORAM FLASH0 def_data <partial> 0x7fe856e8 16 MVTORAM FLASH0 def_data <partial> 0x7fe856f8 64 MVTORAM FLASH0 def_data <partial> 0x7fe85738 16 MVTORAM FLASH0 def_data <partial> 0x7fe85748 16 MVTORAM FLASH0 def_data <partial> 0x7fe85758 64 MVTORAM FLASH0 def_data <partial> 0x7fe85798 16 MVTORAM FLASH0 def_data <partial> 0x7fe857a8 16 MVTORAM FLASH0 def_data <partial> 0x7fe857b8 64 MVTORAM FLASH0 def_data <partial> 0x7fe857f8 16 MVTORAM FLASH0 def_data <partial> 0x7fe85808 16 MVTORAM FLASH0 def_data <partial> 0x7fe85818 16 MVTORAM FLASH0 def_data <partial> 0x7fe85828 32 MVTORAM FLASH0 def_data <partial> 0x7fe85848 32 MVTORAM FLASH0 def_data <partial> 0x7fe85868 32 MVTORAM FLASH0 def_data <partial> 0x7fe85888 32 MVTORAM FLASH0 def_data <partial> 0x7fe858a8 108 MVTORAM FLASH0 def_data <partial> 0x7fe85914 32 MVTORAM FLASH0 def_data <partial> 0x7fe85934 108 MVTORAM FLASH0 def_data <partial> 0x7fe859a0 32 MVTORAM FLASH0 def_data <partial> 0x7fe859c0 108 MVTORAM FLASH0 def_data <partial> 0x7fe85a2c 32 MVTORAM FLASH0 def_data <partial> 0x7fe85a4c 108 MVTORAM FLASH0 def_data <partial> 0x7fe85ab8 32 MVTORAM FLASH0 def_data <partial> 0x7fe85ad8 108 MVTORAM FLASH0 def_data <partial> 0x7fe85b44 32 MVTORAM FLASH0 def_data <partial> 0x7fe85b64 108 MVTORAM FLASH0 def_data <partial> 0x7fe85bd0 32 MVTORAM FLASH0 def_data <partial> 0x7fe85bf0 32 MVTORAM FLASH0 def_data <partial> 0x7fe85c10 32 MVTORAM FLASH0 def_data <partial> 0x7fe85c30 32 MVTORAM FLASH0 def_data <partial> 0x7fe85c50 32 MVTORAM FLASH0 def_data <partial> 0x7fe85c70 32 MVTORAM FLASH0 def_data <partial> 0x7fe85c90 32 MVTORAM FLASH0 def_data <partial> 0x7fe85cb0 108 MVTORAM FLASH0 def_data <partial> 0x7fe85d1c 32 MVTORAM FLASH0 def_data <partial> 0x7fe85d3c 108 MVTORAM FLASH0 def_data <partial> 0x7fe85da8 32 MVTORAM FLASH0 def_data <partial> 0x7fe85dc8 108 MVTORAM FLASH0 def_data <partial> 0x7fe85e34 32 MVTORAM FLASH0 def_data <partial> 0x7fe85e54 108 MVTORAM FLASH0 def_data <partial> 0x7fe85ec0 32 MVTORAM FLASH0 def_data <partial> 0x7fe85ee0 108 MVTORAM FLASH0 def_data <partial> 0x7fe85f4c 32 MVTORAM FLASH0 def_data <partial> 0x7fe85f6c 108 MVTORAM FLASH0 def_data <partial> 0x7fe85fd8 32 MVTORAM FLASH0 def_data <partial> 0x7fe85ff8 32 MVTORAM FLASH0 def_data <partial> 0x7fe86018 32 MVTORAM FLASH0 def_data <partial> 0x7fe86038 32 MVTORAM FLASH0 def_data <partial> 0x7fe86058 32 MVTORAM FLASH0 def_data <partial> 0x7fe86078 32 MVTORAM FLASH0 def_data <partial> 0x7fe86098 32 MVTORAM FLASH0 def_data <partial> 0x7fe860b8 108 MVTORAM FLASH0 def_data <partial> 0x7fe86124 32 MVTORAM FLASH0 def_data <partial> 0x7fe86144 108 MVTORAM FLASH0 def_data <partial> 0x7fe861b0 32 MVTORAM FLASH0 def_data <partial> 0x7fe861d0 108 MVTORAM FLASH0 def_data <partial> 0x7fe8623c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8625c 108 MVTORAM FLASH0 def_data <partial> 0x7fe862c8 32 MVTORAM FLASH0 def_data <partial> 0x7fe862e8 108 MVTORAM FLASH0 def_data <partial> 0x7fe86354 32 MVTORAM FLASH0 def_data <partial> 0x7fe86374 108 MVTORAM FLASH0 def_data <partial> 0x7fe863e0 32 MVTORAM FLASH0 def_data <partial> 0x7fe86400 108 MVTORAM FLASH0 def_data <partial> 0x7fe8646c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8648c 108 MVTORAM FLASH0 def_data <partial> 0x7fe864f8 32 MVTORAM FLASH0 def_data <partial> 0x7fe86518 108 MVTORAM FLASH0 def_data <partial> 0x7fe86584 32 MVTORAM FLASH0 def_data <partial> 0x7fe865a4 108 MVTORAM FLASH0 def_data <partial> 0x7fe86610 32 MVTORAM FLASH0 def_data <partial> 0x7fe86630 108 MVTORAM FLASH0 def_data <partial> 0x7fe8669c 32 MVTORAM FLASH0 def_data <partial> 0x7fe866bc 108 MVTORAM FLASH0 def_data <partial> 0x7fe86728 32 MVTORAM FLASH0 def_data <partial> 0x7fe86748 108 MVTORAM FLASH0 def_data <partial> 0x7fe867b4 32 MVTORAM FLASH0 def_data <partial> 0x7fe867d4 108 MVTORAM FLASH0 def_data <partial> 0x7fe86840 32 MVTORAM FLASH0 def_data <partial> 0x7fe86860 108 MVTORAM FLASH0 def_data <partial> 0x7fe868cc 32 MVTORAM FLASH0 def_data <partial> 0x7fe868ec 32 MVTORAM FLASH0 def_data <partial> 0x7fe8690c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8692c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8694c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8696c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8698c 32 MVTORAM FLASH0 def_data <partial> 0x7fe869ac 108 MVTORAM FLASH0 def_data <partial> 0x7fe86a18 32 MVTORAM FLASH0 def_data <partial> 0x7fe86a38 108 MVTORAM FLASH0 def_data <partial> 0x7fe86aa4 32 MVTORAM FLASH0 def_data <partial> 0x7fe86ac4 108 MVTORAM FLASH0 def_data <partial> 0x7fe86b30 32 MVTORAM FLASH0 def_data <partial> 0x7fe86b50 108 MVTORAM FLASH0 def_data <partial> 0x7fe86bbc 32 MVTORAM FLASH0 def_data <partial> 0x7fe86bdc 108 MVTORAM FLASH0 def_data <partial> 0x7fe86c48 32 MVTORAM FLASH0 def_data <partial> 0x7fe86c68 108 MVTORAM FLASH0 def_data <partial> 0x7fe86cd4 32 MVTORAM FLASH0 def_data <partial> 0x7fe86cf4 108 MVTORAM FLASH0 def_data <partial> 0x7fe86d60 32 MVTORAM FLASH0 def_data <partial> 0x7fe86d80 108 MVTORAM FLASH0 def_data <partial> 0x7fe86dec 32 MVTORAM FLASH0 def_data <partial> 0x7fe86e0c 108 MVTORAM FLASH0 def_data <partial> 0x7fe86e78 32 MVTORAM FLASH0 def_data <partial> 0x7fe86e98 108 MVTORAM FLASH0 def_data <partial> 0x7fe86f04 32 MVTORAM FLASH0 def_data <partial> 0x7fe86f24 108 MVTORAM FLASH0 def_data <partial> 0x7fe86f90 32 MVTORAM FLASH0 def_data <partial> 0x7fe86fb0 108 MVTORAM FLASH0 def_data <partial> 0x7fe8701c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8703c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8705c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8707c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8709c 32 MVTORAM FLASH0 def_data <partial> 0x7fe870bc 32 MVTORAM FLASH0 def_data <partial> 0x7fe870dc 32 MVTORAM FLASH0 def_data <partial> 0x7fe870fc 108 MVTORAM FLASH0 def_data <partial> 0x7fe87168 32 MVTORAM FLASH0 def_data <partial> 0x7fe87188 108 MVTORAM FLASH0 def_data <partial> 0x7fe871f4 32 MVTORAM FLASH0 def_data <partial> 0x7fe87214 108 MVTORAM FLASH0 def_data <partial> 0x7fe87280 32 MVTORAM FLASH0 def_data <partial> 0x7fe872a0 108 MVTORAM FLASH0 def_data <partial> 0x7fe8730c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8732c 108 MVTORAM FLASH0 def_data <partial> 0x7fe87398 32 MVTORAM FLASH0 def_data <partial> 0x7fe873b8 108 MVTORAM FLASH0 def_data <partial> 0x7fe87424 32 MVTORAM FLASH0 def_data <partial> 0x7fe87444 108 MVTORAM FLASH0 def_data <partial> 0x7fe874b0 32 MVTORAM FLASH0 def_data <partial> 0x7fe874d0 108 MVTORAM FLASH0 def_data <partial> 0x7fe8753c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8755c 108 MVTORAM FLASH0 def_data <partial> 0x7fe875c8 32 MVTORAM FLASH0 def_data <partial> 0x7fe875e8 32 MVTORAM FLASH0 def_data <partial> 0x7fe87608 32 MVTORAM FLASH0 def_data <partial> 0x7fe87628 32 MVTORAM FLASH0 def_data <partial> 0x7fe87648 32 MVTORAM FLASH0 def_data <partial> 0x7fe87668 32 MVTORAM FLASH0 def_data <partial> 0x7fe87688 32 MVTORAM FLASH0 def_data <partial> 0x7fe876a8 108 MVTORAM FLASH0 def_data <partial> 0x7fe87714 32 MVTORAM FLASH0 def_data <partial> 0x7fe87734 108 MVTORAM FLASH0 def_data <partial> 0x7fe877a0 32 MVTORAM FLASH0 def_data <partial> 0x7fe877c0 108 MVTORAM FLASH0 def_data <partial> 0x7fe8782c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8784c 108 MVTORAM FLASH0 def_data <partial> 0x7fe878b8 32 MVTORAM FLASH0 def_data <partial> 0x7fe878d8 108 MVTORAM FLASH0 def_data <partial> 0x7fe87944 32 MVTORAM FLASH0 def_data <partial> 0x7fe87964 32 MVTORAM FLASH0 def_data <partial> 0x7fe87984 32 MVTORAM FLASH0 def_data <partial> 0x7fe879a4 32 MVTORAM FLASH0 def_data <partial> 0x7fe879c4 32 MVTORAM FLASH0 def_data <partial> 0x7fe879e4 32 MVTORAM FLASH0 def_data <partial> 0x7fe87a04 32 MVTORAM FLASH0 def_data <partial> 0x7fe87a24 108 MVTORAM FLASH0 def_data <partial> 0x7fe87a90 32 MVTORAM FLASH0 def_data <partial> 0x7fe87ab0 108 MVTORAM FLASH0 def_data <partial> 0x7fe87b1c 32 MVTORAM FLASH0 def_data <partial> 0x7fe87b3c 108 MVTORAM FLASH0 def_data <partial> 0x7fe87ba8 32 MVTORAM FLASH0 def_data <partial> 0x7fe87bc8 108 MVTORAM FLASH0 def_data <partial> 0x7fe87c34 32 MVTORAM FLASH0 def_data <partial> 0x7fe87c54 108 MVTORAM FLASH0 def_data <partial> 0x7fe87cc0 32 MVTORAM FLASH0 def_data <partial> 0x7fe87ce0 32 MVTORAM FLASH0 def_data <partial> 0x7fe87d00 32 MVTORAM FLASH0 def_data <partial> 0x7fe87d20 32 MVTORAM FLASH0 def_data <partial> 0x7fe87d40 32 MVTORAM FLASH0 def_data <partial> 0x7fe87d60 32 MVTORAM FLASH0 def_data <partial> 0x7fe87d80 32 MVTORAM FLASH0 def_data <partial> 0x7fe87da0 108 MVTORAM FLASH0 def_data <partial> 0x7fe87e0c 32 MVTORAM FLASH0 def_data <partial> 0x7fe87e2c 108 MVTORAM FLASH0 def_data <partial> 0x7fe87e98 32 MVTORAM FLASH0 def_data <partial> 0x7fe87eb8 108 MVTORAM FLASH0 def_data <partial> 0x7fe87f24 32 MVTORAM FLASH0 def_data <partial> 0x7fe87f44 32 MVTORAM FLASH0 def_data <partial> 0x7fe87f64 32 MVTORAM FLASH0 def_data <partial> 0x7fe87f84 32 MVTORAM FLASH0 def_data <partial> 0x7fe87fa4 32 MVTORAM FLASH0 def_data <partial> 0x7fe87fc4 32 MVTORAM FLASH0 def_data <partial> 0x7fe87fe4 32 MVTORAM FLASH0 def_data <partial> 0x7fe88004 108 MVTORAM FLASH0 def_data <partial> 0x7fe88070 32 MVTORAM FLASH0 def_data <partial> 0x7fe88090 32 MVTORAM FLASH0 def_data <partial> 0x7fe880b0 32 MVTORAM FLASH0 def_data <partial> 0x7fe880d0 32 MVTORAM FLASH0 def_data <partial> 0x7fe880f0 32 MVTORAM FLASH0 def_data <partial> 0x7fe88110 32 MVTORAM FLASH0 def_data <partial> 0x7fe88130 32 MVTORAM FLASH0 def_data <partial> 0x7fe88150 108 MVTORAM FLASH0 def_data <partial> 0x7fe881bc 32 MVTORAM FLASH0 def_data <partial> 0x7fe881dc 108 MVTORAM FLASH0 def_data <partial> 0x7fe88248 32 MVTORAM FLASH0 def_data <partial> 0x7fe88268 108 MVTORAM FLASH0 def_data <partial> 0x7fe882d4 32 MVTORAM FLASH0 def_data <partial> 0x7fe882f4 108 MVTORAM FLASH0 def_data <partial> 0x7fe88360 32 MVTORAM FLASH0 def_data <partial> 0x7fe88380 108 MVTORAM FLASH0 def_data <partial> 0x7fe883ec 32 MVTORAM FLASH0 def_data <partial> 0x7fe8840c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8842c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8844c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8846c 32 MVTORAM FLASH0 def_data <partial> 0x7fe8848c 32 MVTORAM FLASH0 def_data <partial> 0x7fe884ac 32 MVTORAM FLASH0 def_data <partial> 0x7fe884cc 108 MVTORAM FLASH0 def_data <partial> 0x7fe88538 32 MVTORAM FLASH0 def_data <partial> 0x7fe88558 108 MVTORAM FLASH0 def_data <partial> 0x7fe885c4 32 MVTORAM FLASH0 def_data <partial> 0x7fe885e4 108 MVTORAM FLASH0 def_data <partial> 0x7fe88650 32 MVTORAM FLASH0 def_data <partial> 0x7fe88670 32 MVTORAM FLASH0 def_data <partial> 0x7fe88690 32 MVTORAM FLASH0 def_data <partial> 0x7fe886b0 32 MVTORAM FLASH0 def_data <partial> 0x7fe886d0 32 MVTORAM FLASH0 def_data <partial> 0x7fe886f0 32 MVTORAM FLASH0 def_data <partial> 0x7fe88710 32 MVTORAM FLASH0 def_data <partial> 0x7fe88730 108 MVTORAM FLASH0 def_data <partial> 0x7fe8879c 32 MVTORAM FLASH0 def_data <partial> 0x7fe887bc 108 MVTORAM FLASH0 def_data <partial> 0x7fe88828 32 MVTORAM FLASH0 def_data <partial> 0x7fe88848 108 MVTORAM FLASH0 def_data <partial> 0x7fe888b4 32 MVTORAM FLASH0 def_data <partial> 0x7fe888d4 108 MVTORAM FLASH0 def_data <partial> 0x7fe88940 32 MVTORAM FLASH0 def_data <partial> 0x7fe88960 32 MVTORAM FLASH0 def_data <partial> 0x7fe88980 32 MVTORAM FLASH0 def_data <partial> 0x7fe889a0 32 MVTORAM FLASH0 def_data <partial> 0x7fe889c0 32 MVTORAM FLASH0 def_data <partial> 0x7fe889e0 32 MVTORAM FLASH0 def_data <partial> 0x7fe88a00 32 MVTORAM FLASH0 def_data <partial> 0x7fe88a20 108 MVTORAM FLASH0 def_data <partial> 0x7fe88a8c 32 MVTORAM FLASH0 def_data <partial> 0x7fe88aac 108 MVTORAM FLASH0 def_data <partial> 0x7fe88b18 32 MVTORAM FLASH0 def_data <partial> 0x7fe88b38 108 MVTORAM FLASH0 def_data <partial> 0x7fe88ba4 32 MVTORAM FLASH0 def_data <partial> 0x7fe88bc4 32 MVTORAM FLASH0 def_data <partial> 0x7fe88be4 32 MVTORAM FLASH0 def_data <partial> 0x7fe88c04 32 MVTORAM FLASH0 def_data <partial> 0x7fe88c24 32 MVTORAM FLASH0 def_data <partial> 0x7fe88c44 32 MVTORAM FLASH0 def_data <partial> 0x7fe88c64 32 MVTORAM FLASH0 def_data <partial> 0x7fe88c84 108 MVTORAM FLASH0 def_data <partial> 0x7fe88cf0 32 MVTORAM FLASH0 def_data <partial> 0x7fe88d10 32 MVTORAM FLASH0 def_data <partial> 0x7fe88d30 32 MVTORAM FLASH0 def_data <partial> 0x7fe88d50 32 MVTORAM FLASH0 def_data <partial> 0x7fe88d70 32 MVTORAM FLASH0 def_data <partial> 0x7fe88d90 32 MVTORAM FLASH0 def_data <partial> 0x7fe88db0 32 MVTORAM FLASH0 def_data <partial> 0x7fe88dd0 108 MVTORAM FLASH0 def_data <partial> 0x7fe88e3c 32 MVTORAM FLASH0 def_data <partial> 0x7fe88e5c 32 MVTORAM FLASH0 def_data <partial> 0x7fe88e7c 32 MVTORAM FLASH0 def_data <partial> 0x7fe88e9c 1232 MVTORAM FLASH0 def_data <partial> 0x7fe8936c 16 MVTORAM FLASH0 def_data <partial> 0x7fe8937c 36 MVTORAM FLASH0 def_data <partial> 0x7fe893a0 96 MVTORAM FLASH0 def_data <partial> 0x7fe89400 304 MVTORAM FLASH0 def_data <partial> 0x7fe89530 52 MVTORAM FLASH0 def_data <partial> 0x7fe89564 1188 MVTORAM FLASH0 def_data <partial> 0x7fe89a08 4 MVTORAM FLASH0 def_data <partial> 0x7fe89a0c 88 MVTORAM FLASH0 def_data <partial> 0x7fe89a64 476 MVTORAM FLASH0 def_data <partial> 0x7fe89c40 12 MVTORAM FLASH0 def_data <partial> 0x7fe89c4c 4 MVTORAM FLASH0 def_data <partial> 0x7fe89c50 16 MVTORAM FLASH0 def_data <partial> 0x7fe89c60 20 MVTORAM FLASH0 def_data <partial> 0x7fe89c74 28 MVTORAM FLASH0 def_data <partial> 0x7fe89c90 16 MVTORAM FLASH0 def_data <partial> 0x7fe89ca0 92 MVTORAM FLASH0 def_data <partial> 0x7fe89cfc 2416 MVTORAM FLASH0 def_data <partial> 0x7fe8a66c 232 MVTORAM FLASH0 def_data <partial> 0x7fe8a754 248 MVTORAM FLASH0 def_data <partial> 0x7fe8a84c 216 MVTORAM FLASH0 def_data <partial> 0x7fe8a924 40 MVTORAM FLASH0 def_data <partial> 0x7fe8a94c 8 MVTORAM FLASH0 def_data <partial> 0x7fe8a954 4 MVTORAM FLASH0 def_data <partial> 0x7fe8a958 4 MVTORAM FLASH0 def_data <partial> 0x7fe8a95c 176 MVTORAM FLASH0 def_const <partial> 0x7fe8aa0c 149588 MVTORAM FLASH0 def_const <partial> 0x7feaf260 20 MVTORAM FLASH0 def_const <partial> 0x7feaf274 16 MVTORAM FLASH0 def_const <partial> 0x7feaf284 16 MVTORAM FLASH0 def_const <partial> 0x7feaf294 16 MVTORAM FLASH0 def_const <partial> 0x7feaf2a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf2b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf2c4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf2d4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf2e4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf2f4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf304 16 MVTORAM FLASH0 def_const <partial> 0x7feaf314 16 MVTORAM FLASH0 def_const <partial> 0x7feaf324 16 MVTORAM FLASH0 def_const <partial> 0x7feaf334 16 MVTORAM FLASH0 def_const <partial> 0x7feaf344 16 MVTORAM FLASH0 def_const <partial> 0x7feaf354 16 MVTORAM FLASH0 def_const <partial> 0x7feaf364 16 MVTORAM FLASH0 def_const <partial> 0x7feaf374 16 MVTORAM FLASH0 def_const <partial> 0x7feaf384 16 MVTORAM FLASH0 def_const <partial> 0x7feaf394 16 MVTORAM FLASH0 def_const <partial> 0x7feaf3a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf3b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf3c4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf3d4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf3e4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf3f4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf404 16 MVTORAM FLASH0 def_const <partial> 0x7feaf414 16 MVTORAM FLASH0 def_const <partial> 0x7feaf424 16 MVTORAM FLASH0 def_const <partial> 0x7feaf434 16 MVTORAM FLASH0 def_const <partial> 0x7feaf444 16 MVTORAM FLASH0 def_const <partial> 0x7feaf454 16 MVTORAM FLASH0 def_const <partial> 0x7feaf464 16 MVTORAM FLASH0 def_const <partial> 0x7feaf474 16 MVTORAM FLASH0 def_const <partial> 0x7feaf484 16 MVTORAM FLASH0 def_const <partial> 0x7feaf494 16 MVTORAM FLASH0 def_const <partial> 0x7feaf4a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf4b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf4c4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf4d4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf4e4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf4f4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf504 16 MVTORAM FLASH0 def_const <partial> 0x7feaf514 16 MVTORAM FLASH0 def_const <partial> 0x7feaf524 16 MVTORAM FLASH0 def_const <partial> 0x7feaf534 16 MVTORAM FLASH0 def_const <partial> 0x7feaf544 16 MVTORAM FLASH0 def_const <partial> 0x7feaf554 16 MVTORAM FLASH0 def_const <partial> 0x7feaf564 16 MVTORAM FLASH0 def_const <partial> 0x7feaf574 16 MVTORAM FLASH0 def_const <partial> 0x7feaf584 16 MVTORAM FLASH0 def_const <partial> 0x7feaf594 16 MVTORAM FLASH0 def_const <partial> 0x7feaf5a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf5b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf5c4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf5d4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf5e4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf5f4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf604 16 MVTORAM FLASH0 def_const <partial> 0x7feaf614 16 MVTORAM FLASH0 def_const <partial> 0x7feaf624 16 MVTORAM FLASH0 def_const <partial> 0x7feaf634 16 MVTORAM FLASH0 def_const <partial> 0x7feaf644 16 MVTORAM FLASH0 def_const <partial> 0x7feaf654 16 MVTORAM FLASH0 def_const <partial> 0x7feaf664 16 MVTORAM FLASH0 def_const <partial> 0x7feaf674 16 MVTORAM FLASH0 def_const <partial> 0x7feaf684 16 MVTORAM FLASH0 def_const <partial> 0x7feaf694 16 MVTORAM FLASH0 def_const <partial> 0x7feaf6a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf6b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf6c4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf6d4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf6e4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf6f4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf704 16 MVTORAM FLASH0 def_const <partial> 0x7feaf714 16 MVTORAM FLASH0 def_const <partial> 0x7feaf724 16 MVTORAM FLASH0 def_const <partial> 0x7feaf734 16 MVTORAM FLASH0 def_const <partial> 0x7feaf744 16 MVTORAM FLASH0 def_const <partial> 0x7feaf754 16 MVTORAM FLASH0 def_const <partial> 0x7feaf764 16 MVTORAM FLASH0 def_const <partial> 0x7feaf774 16 MVTORAM FLASH0 def_const <partial> 0x7feaf784 16 MVTORAM FLASH0 def_const <partial> 0x7feaf794 16 MVTORAM FLASH0 def_const <partial> 0x7feaf7a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf7b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf7c4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf7d4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf7e4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf7f4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf804 16 MVTORAM FLASH0 def_const <partial> 0x7feaf814 16 MVTORAM FLASH0 def_const <partial> 0x7feaf824 16 MVTORAM FLASH0 def_const <partial> 0x7feaf834 16 MVTORAM FLASH0 def_const <partial> 0x7feaf844 16 MVTORAM FLASH0 def_const <partial> 0x7feaf854 16 MVTORAM FLASH0 def_const <partial> 0x7feaf864 16 MVTORAM FLASH0 def_const <partial> 0x7feaf874 16 MVTORAM FLASH0 def_const <partial> 0x7feaf884 16 MVTORAM FLASH0 def_const <partial> 0x7feaf894 16 MVTORAM FLASH0 def_const <partial> 0x7feaf8a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf8b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf8c4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf8d4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf8e4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf8f4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf904 16 MVTORAM FLASH0 def_const <partial> 0x7feaf914 16 MVTORAM FLASH0 def_const <partial> 0x7feaf924 16 MVTORAM FLASH0 def_const <partial> 0x7feaf934 16 MVTORAM FLASH0 def_const <partial> 0x7feaf944 16 MVTORAM FLASH0 def_const <partial> 0x7feaf954 16 MVTORAM FLASH0 def_const <partial> 0x7feaf964 16 MVTORAM FLASH0 def_const <partial> 0x7feaf974 16 MVTORAM FLASH0 def_const <partial> 0x7feaf984 16 MVTORAM FLASH0 def_const <partial> 0x7feaf994 16 MVTORAM FLASH0 def_const <partial> 0x7feaf9a4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf9b4 16 MVTORAM FLASH0 def_const <partial> 0x7feaf9c4 20 MVTORAM FLASH0 def_const <partial> 0x7feaf9d8 123828 MVTORAM FLASH0 def_const <partial> 0x7fecdd8c 828 MVTORAM FLASH0 def_const <partial> 0x7fece0c8 12 MVTORAM FLASH0 def_const <partial> 0x7fece0d4 12 MVTORAM FLASH0 def_const <partial> 0x7fece0e0 828 MVTORAM FLASH0 def_const <partial> 0x7fece41c 1360 MVTORAM FLASH0 def_const <partial> 0x7fece96c 828 MVTORAM FLASH0 def_const <partial> 0x7fececa8 85300 MVTORAM FLASH0 def_const <partial> 0x7fee39dc 36 MVTORAM FLASH0 def_const <partial> 0x7fee3a00 120 MVTORAM FLASH0 def_const <partial> 0x7fee3a78 72 MVTORAM FLASH0 def_const <partial> 0x7fee3ac0 16 MVTORAM FLASH0 def_const <partial> 0x7fee3ad0 28 MVTORAM FLASH0 def_const <partial> 0x7fee3aec 424 MVTORAM FLASH0 def_const <partial> 0x7fee3c94 908 MVTORAM FLASH0 def_const <partial> 0x7fee4020 12 MVTORAM FLASH0 def_const <partial> 0x7fee402c 812 MVTORAM FLASH0 def_const <partial> 0x7fee4358 68 MVTORAM FLASH0 def_const <partial> 0x7fee439c 4 MVTORAM FLASH0 def_const <partial> 0x7fee43a0 9448 MVTORAM FLASH0 def_const <partial> 0x7fee6888 5872 MVTORAM FLASH0 def_const <partial> 0x7fee7f78 4 MVTORAM FLASH0 def_const <partial> 0x7fee7f7c 20 MVTORAM FLASH0 def_const <partial> 0x7fee7f90 64 MVTORAM FLASH0 def_const <partial> 0x7fee7fd0 76 MVTORAM FLASH0 def_const <partial> 0x7fee801c 28 MVTORAM FLASH0 def_const <partial> 0x7fee8038 28 MVTORAM FLASH0 def_const <partial> 0x7fee8054 152 MVTORAM FLASH0 def_const <partial> 0x7fee80ec 32 MVTORAM FLASH0 def_const <partial> 0x7fee810c 32 MVTORAM FLASH0 def_const <partial> 0x7fee812c 32 MVTORAM FLASH0 def_const <partial> 0x7fee814c 9756 MVTORAM FLASH0 def_const <partial> 0x7feea768 28 MVTORAM FLASH0 def_const <partial> 0x7feea784 28 MVTORAM FLASH0 def_const <partial> 0x7feea7a0 28 MVTORAM FLASH0 def_const <partial> 0x7feea7bc 4496 MVTORAM FLASH0 def_const <partial> 0x7feeb94c 396 MVTORAM FLASH0 def_const <partial> 0x7feebad8 4 MVTORAM FLASH0 os20_th_code 0x7feebadc 568 MVTORAM FLASH0 os20_int_complex_text 0x7feebd14 256 MVTORAM FLASH0 os20_int_moderate_text 0x7feebe14 120 MVTORAM FLASH0 os20_int_simple_text 0x7feebe8c 84 MVTORAM FLASH0 <startup_section> 0x7feebee0 16 MVTORAM FLASH0 <shutdown_section> 0x7feebef0 12 MVTORAM FLASH0 section-table 0x7feebefc 11076 SECTTAB FLASH0 bootdata 0x7feeea40 40 BOOTDATA FLASH0 startblock 0x7fffffe4 28 START FLASH0 Onstartup Section Map --------------------- Symbol Address -------------------------------- ---------- _ST_NotifyDebugger 0xc04025ec heapcinit 0xc0402876 _ST_fdio_init 0xc0404100 stdio_init 0xc0403a0c Onshutdown Section Map ---------------------- Symbol Address -------------------------------- ---------- stdio_close 0xc0403a20 _ST_fdio_deinit 0xc0404169 exitshutdown 0xc04027ae
앞의 경우와 다른 것을 볼 수 있다. DCU 를 이용할 때는 SDRAM 에 올려서 실행하지만, FLASH의 경우는 바로 FLASH 에 쓰기 때문이다.
이제 하나하나씩 살펴보자!!
영역 | 전체용량 | 사용량 | 남은양 | Symbol |
FLASH0 | 0x80000000 | 0x7FE00964 | 0x1FF69C | PostPokeLoopCallback, delay, setupPLL, setDivider, setupDivider, clock_gen, romload, romstart… |
FLASH 의 영역에 관해 좀 더 자세히 알아보자!
영역 | 전체용량 | 사용량 | 남은양 | Symbol |
initfuncs_text | 0x7fe00814 | 2068(0x814) | 0 | PostPokeLoopCallback, PrePokeLoopCallback, clock_gen… |
romload_text | 0x7fe0088c | 120(0x78) | 0 | romload |
romload2_text | 0x7fe00960 | 212(0xD4) | 0 | local_memset, initStatics, romload2, romrestart, romlaststart… |
_ST_Programldentifier | 0x7fe00964 | 4 | 0 | st20link.cfg_ST_Programldentifier |
os20_th_code | 0x7feebd14 | 568(0x238) | 0 | kernel_scheduler |
os20_int_complex_text | 0x7feebe14 | 256(0x100) | 0 | handler_complex_software, handler_complex |
os20_int_moderate_text | 0x7feebe8c | 120(0x78) | 0 | handler_moderate_software, handler_moderate |
os20_int_simple_text | 0x7feebee0 | 84(0x54) | 0 | handler_simple_software, handler_simple |
startup_section | 0x7feebef0 | |||
stutdown_section | 0x7feebefc | |||
section-table | 0x7feeea40 | |||
bootdata | 0x7feeea68 | |||
startblock | 0x80000000 |
이번에는 INTERNAL 영역이다.
영역 | 전체용량 | 사용량 | 남은양 | Symbol |
INTERNAL | 0x80002000 | 0x80001F88 | 0x78 | IntermalMemory, TaskQueue, TaskQueuePtr_data, kernel_workspace, TheRootTdesc |
다음은 안의 세부사항이다.
세부 영역 | 사이즈 | Symbol |
internal_section | 0x1A10(6672) | sections.c |
os20_task_queue | 0x3C0(960) | kernel.c |
os20_th_data | 0x60(96) | kernel_workspace |
os20_root_tdesc | 0x18(24) | task.c |
다음은 SDRAM 영역이다. 이 영역은 SDRAM, NONCACHED, EXTERNAL 이 합쳐진 영역이다. SDRAM 영역이 NONCACHED, EXTERNAL 주소까지 쓰고 있다.
영역 | 전체용량 | 사용량 | 남은양 | Symbol |
ncache_section | 0xc0380000 | 524288(0x80000) | 0 | sections.c |
def_code | 플래시에 포함 | |||
def_bss | 0xc052e698 | 1219756(0x129CAC) | 0 | ST_Clockinfo, EVT_Handle, AVMEM_Partition, UART_Handle… |
def_data | 플래시에 포함 | |||
system_section | 0xc083715c | 3145728(0x300000) | 0 | SystemMemory, sections.c |
def_const | 플래시에 포함 | |||
os20_th_conde | 0xc089d1fc | 568(0x238) | 0 | kernel_scheduler |
os20_int_complex_text | 0xc089d2fc | 256(0x100) | 0 | handler_complex_software, handler_complex |
os20_int_moderate_text | 0xc089d374 | 120(0x78) | 9 | handler_moderate_software, handler_moderate |
os20_int_simple_text | 0xc089d3c8 | 84(0x54) | 0 | handler_simple_software, handler_simple |
startup_section | 0xc089d3d8 | |||
shutdown_section | 0xc089d3e4 | |||
stack | 0xc0c467f4 | |||
heap | 0xc0fefc00 |