====== Memory ====== 현재 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 0xc089da64 12 CONST SDRAM 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 위의 정보를 참조한 아래의 그림이다. {{ :computer:job:digitalarena:memory_map.jpg |}} 중간 중간에, 파란색은 빈 공간이다. 각 영역의 주소나 사이즈를 정해주는 파일은 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 0xc089d3c8 16 CONST SDRAM 0xc089d3d8 12 CONST SDRAM stack 0xc089d3e4 3838992 STACK SDRAM heap 0xc0c467f4 3838988 HEAP SDRAM 0x7fe00000 2068 CODE FLASH0 0x7fe00814 120 CODE FLASH0 0x7fe0088c 212 CODE FLASH0 <_ST_ProgramIdentifier> 0x7fe00960 4 CONST FLASH0 def_code 0x7fe00964 50456 MVTORAM FLASH0 def_code 0x7fe0ce7c 204896 MVTORAM FLASH0 def_code 0x7fe3eedc 87248 MVTORAM FLASH0 def_code 0x7fe543ac 95896 MVTORAM FLASH0 def_code 0x7fe6ba44 49408 MVTORAM FLASH0 def_code 0x7fe77b44 55228 MVTORAM FLASH0 def_data 0x7fe85300 460 MVTORAM FLASH0 def_data 0x7fe854cc 116 MVTORAM FLASH0 def_data 0x7fe85540 184 MVTORAM FLASH0 def_data 0x7fe855f8 16 MVTORAM FLASH0 def_data 0x7fe85608 16 MVTORAM FLASH0 def_data 0x7fe85618 16 MVTORAM FLASH0 def_data 0x7fe85628 16 MVTORAM FLASH0 def_data 0x7fe85638 64 MVTORAM FLASH0 def_data 0x7fe85678 16 MVTORAM FLASH0 def_data 0x7fe85688 16 MVTORAM FLASH0 def_data 0x7fe85698 64 MVTORAM FLASH0 def_data 0x7fe856d8 16 MVTORAM FLASH0 def_data 0x7fe856e8 16 MVTORAM FLASH0 def_data 0x7fe856f8 64 MVTORAM FLASH0 def_data 0x7fe85738 16 MVTORAM FLASH0 def_data 0x7fe85748 16 MVTORAM FLASH0 def_data 0x7fe85758 64 MVTORAM FLASH0 def_data 0x7fe85798 16 MVTORAM FLASH0 def_data 0x7fe857a8 16 MVTORAM FLASH0 def_data 0x7fe857b8 64 MVTORAM FLASH0 def_data 0x7fe857f8 16 MVTORAM FLASH0 def_data 0x7fe85808 16 MVTORAM FLASH0 def_data 0x7fe85818 16 MVTORAM FLASH0 def_data 0x7fe85828 32 MVTORAM FLASH0 def_data 0x7fe85848 32 MVTORAM FLASH0 def_data 0x7fe85868 32 MVTORAM FLASH0 def_data 0x7fe85888 32 MVTORAM FLASH0 def_data 0x7fe858a8 108 MVTORAM FLASH0 def_data 0x7fe85914 32 MVTORAM FLASH0 def_data 0x7fe85934 108 MVTORAM FLASH0 def_data 0x7fe859a0 32 MVTORAM FLASH0 def_data 0x7fe859c0 108 MVTORAM FLASH0 def_data 0x7fe85a2c 32 MVTORAM FLASH0 def_data 0x7fe85a4c 108 MVTORAM FLASH0 def_data 0x7fe85ab8 32 MVTORAM FLASH0 def_data 0x7fe85ad8 108 MVTORAM FLASH0 def_data 0x7fe85b44 32 MVTORAM FLASH0 def_data 0x7fe85b64 108 MVTORAM FLASH0 def_data 0x7fe85bd0 32 MVTORAM FLASH0 def_data 0x7fe85bf0 32 MVTORAM FLASH0 def_data 0x7fe85c10 32 MVTORAM FLASH0 def_data 0x7fe85c30 32 MVTORAM FLASH0 def_data 0x7fe85c50 32 MVTORAM FLASH0 def_data 0x7fe85c70 32 MVTORAM FLASH0 def_data 0x7fe85c90 32 MVTORAM FLASH0 def_data 0x7fe85cb0 108 MVTORAM FLASH0 def_data 0x7fe85d1c 32 MVTORAM FLASH0 def_data 0x7fe85d3c 108 MVTORAM FLASH0 def_data 0x7fe85da8 32 MVTORAM FLASH0 def_data 0x7fe85dc8 108 MVTORAM FLASH0 def_data 0x7fe85e34 32 MVTORAM FLASH0 def_data 0x7fe85e54 108 MVTORAM FLASH0 def_data 0x7fe85ec0 32 MVTORAM FLASH0 def_data 0x7fe85ee0 108 MVTORAM FLASH0 def_data 0x7fe85f4c 32 MVTORAM FLASH0 def_data 0x7fe85f6c 108 MVTORAM FLASH0 def_data 0x7fe85fd8 32 MVTORAM FLASH0 def_data 0x7fe85ff8 32 MVTORAM FLASH0 def_data 0x7fe86018 32 MVTORAM FLASH0 def_data 0x7fe86038 32 MVTORAM FLASH0 def_data 0x7fe86058 32 MVTORAM FLASH0 def_data 0x7fe86078 32 MVTORAM FLASH0 def_data 0x7fe86098 32 MVTORAM FLASH0 def_data 0x7fe860b8 108 MVTORAM FLASH0 def_data 0x7fe86124 32 MVTORAM FLASH0 def_data 0x7fe86144 108 MVTORAM FLASH0 def_data 0x7fe861b0 32 MVTORAM FLASH0 def_data 0x7fe861d0 108 MVTORAM FLASH0 def_data 0x7fe8623c 32 MVTORAM FLASH0 def_data 0x7fe8625c 108 MVTORAM FLASH0 def_data 0x7fe862c8 32 MVTORAM FLASH0 def_data 0x7fe862e8 108 MVTORAM FLASH0 def_data 0x7fe86354 32 MVTORAM FLASH0 def_data 0x7fe86374 108 MVTORAM FLASH0 def_data 0x7fe863e0 32 MVTORAM FLASH0 def_data 0x7fe86400 108 MVTORAM FLASH0 def_data 0x7fe8646c 32 MVTORAM FLASH0 def_data 0x7fe8648c 108 MVTORAM FLASH0 def_data 0x7fe864f8 32 MVTORAM FLASH0 def_data 0x7fe86518 108 MVTORAM FLASH0 def_data 0x7fe86584 32 MVTORAM FLASH0 def_data 0x7fe865a4 108 MVTORAM FLASH0 def_data 0x7fe86610 32 MVTORAM FLASH0 def_data 0x7fe86630 108 MVTORAM FLASH0 def_data 0x7fe8669c 32 MVTORAM FLASH0 def_data 0x7fe866bc 108 MVTORAM FLASH0 def_data 0x7fe86728 32 MVTORAM FLASH0 def_data 0x7fe86748 108 MVTORAM FLASH0 def_data 0x7fe867b4 32 MVTORAM FLASH0 def_data 0x7fe867d4 108 MVTORAM FLASH0 def_data 0x7fe86840 32 MVTORAM FLASH0 def_data 0x7fe86860 108 MVTORAM FLASH0 def_data 0x7fe868cc 32 MVTORAM FLASH0 def_data 0x7fe868ec 32 MVTORAM FLASH0 def_data 0x7fe8690c 32 MVTORAM FLASH0 def_data 0x7fe8692c 32 MVTORAM FLASH0 def_data 0x7fe8694c 32 MVTORAM FLASH0 def_data 0x7fe8696c 32 MVTORAM FLASH0 def_data 0x7fe8698c 32 MVTORAM FLASH0 def_data 0x7fe869ac 108 MVTORAM FLASH0 def_data 0x7fe86a18 32 MVTORAM FLASH0 def_data 0x7fe86a38 108 MVTORAM FLASH0 def_data 0x7fe86aa4 32 MVTORAM FLASH0 def_data 0x7fe86ac4 108 MVTORAM FLASH0 def_data 0x7fe86b30 32 MVTORAM FLASH0 def_data 0x7fe86b50 108 MVTORAM FLASH0 def_data 0x7fe86bbc 32 MVTORAM FLASH0 def_data 0x7fe86bdc 108 MVTORAM FLASH0 def_data 0x7fe86c48 32 MVTORAM FLASH0 def_data 0x7fe86c68 108 MVTORAM FLASH0 def_data 0x7fe86cd4 32 MVTORAM FLASH0 def_data 0x7fe86cf4 108 MVTORAM FLASH0 def_data 0x7fe86d60 32 MVTORAM FLASH0 def_data 0x7fe86d80 108 MVTORAM FLASH0 def_data 0x7fe86dec 32 MVTORAM FLASH0 def_data 0x7fe86e0c 108 MVTORAM FLASH0 def_data 0x7fe86e78 32 MVTORAM FLASH0 def_data 0x7fe86e98 108 MVTORAM FLASH0 def_data 0x7fe86f04 32 MVTORAM FLASH0 def_data 0x7fe86f24 108 MVTORAM FLASH0 def_data 0x7fe86f90 32 MVTORAM FLASH0 def_data 0x7fe86fb0 108 MVTORAM FLASH0 def_data 0x7fe8701c 32 MVTORAM FLASH0 def_data 0x7fe8703c 32 MVTORAM FLASH0 def_data 0x7fe8705c 32 MVTORAM FLASH0 def_data 0x7fe8707c 32 MVTORAM FLASH0 def_data 0x7fe8709c 32 MVTORAM FLASH0 def_data 0x7fe870bc 32 MVTORAM FLASH0 def_data 0x7fe870dc 32 MVTORAM FLASH0 def_data 0x7fe870fc 108 MVTORAM FLASH0 def_data 0x7fe87168 32 MVTORAM FLASH0 def_data 0x7fe87188 108 MVTORAM FLASH0 def_data 0x7fe871f4 32 MVTORAM FLASH0 def_data 0x7fe87214 108 MVTORAM FLASH0 def_data 0x7fe87280 32 MVTORAM FLASH0 def_data 0x7fe872a0 108 MVTORAM FLASH0 def_data 0x7fe8730c 32 MVTORAM FLASH0 def_data 0x7fe8732c 108 MVTORAM FLASH0 def_data 0x7fe87398 32 MVTORAM FLASH0 def_data 0x7fe873b8 108 MVTORAM FLASH0 def_data 0x7fe87424 32 MVTORAM FLASH0 def_data 0x7fe87444 108 MVTORAM FLASH0 def_data 0x7fe874b0 32 MVTORAM FLASH0 def_data 0x7fe874d0 108 MVTORAM FLASH0 def_data 0x7fe8753c 32 MVTORAM FLASH0 def_data 0x7fe8755c 108 MVTORAM FLASH0 def_data 0x7fe875c8 32 MVTORAM FLASH0 def_data 0x7fe875e8 32 MVTORAM FLASH0 def_data 0x7fe87608 32 MVTORAM FLASH0 def_data 0x7fe87628 32 MVTORAM FLASH0 def_data 0x7fe87648 32 MVTORAM FLASH0 def_data 0x7fe87668 32 MVTORAM FLASH0 def_data 0x7fe87688 32 MVTORAM FLASH0 def_data 0x7fe876a8 108 MVTORAM FLASH0 def_data 0x7fe87714 32 MVTORAM FLASH0 def_data 0x7fe87734 108 MVTORAM FLASH0 def_data 0x7fe877a0 32 MVTORAM FLASH0 def_data 0x7fe877c0 108 MVTORAM FLASH0 def_data 0x7fe8782c 32 MVTORAM FLASH0 def_data 0x7fe8784c 108 MVTORAM FLASH0 def_data 0x7fe878b8 32 MVTORAM FLASH0 def_data 0x7fe878d8 108 MVTORAM FLASH0 def_data 0x7fe87944 32 MVTORAM FLASH0 def_data 0x7fe87964 32 MVTORAM FLASH0 def_data 0x7fe87984 32 MVTORAM FLASH0 def_data 0x7fe879a4 32 MVTORAM FLASH0 def_data 0x7fe879c4 32 MVTORAM FLASH0 def_data 0x7fe879e4 32 MVTORAM FLASH0 def_data 0x7fe87a04 32 MVTORAM FLASH0 def_data 0x7fe87a24 108 MVTORAM FLASH0 def_data 0x7fe87a90 32 MVTORAM FLASH0 def_data 0x7fe87ab0 108 MVTORAM FLASH0 def_data 0x7fe87b1c 32 MVTORAM FLASH0 def_data 0x7fe87b3c 108 MVTORAM FLASH0 def_data 0x7fe87ba8 32 MVTORAM FLASH0 def_data 0x7fe87bc8 108 MVTORAM FLASH0 def_data 0x7fe87c34 32 MVTORAM FLASH0 def_data 0x7fe87c54 108 MVTORAM FLASH0 def_data 0x7fe87cc0 32 MVTORAM FLASH0 def_data 0x7fe87ce0 32 MVTORAM FLASH0 def_data 0x7fe87d00 32 MVTORAM FLASH0 def_data 0x7fe87d20 32 MVTORAM FLASH0 def_data 0x7fe87d40 32 MVTORAM FLASH0 def_data 0x7fe87d60 32 MVTORAM FLASH0 def_data 0x7fe87d80 32 MVTORAM FLASH0 def_data 0x7fe87da0 108 MVTORAM FLASH0 def_data 0x7fe87e0c 32 MVTORAM FLASH0 def_data 0x7fe87e2c 108 MVTORAM FLASH0 def_data 0x7fe87e98 32 MVTORAM FLASH0 def_data 0x7fe87eb8 108 MVTORAM FLASH0 def_data 0x7fe87f24 32 MVTORAM FLASH0 def_data 0x7fe87f44 32 MVTORAM FLASH0 def_data 0x7fe87f64 32 MVTORAM FLASH0 def_data 0x7fe87f84 32 MVTORAM FLASH0 def_data 0x7fe87fa4 32 MVTORAM FLASH0 def_data 0x7fe87fc4 32 MVTORAM FLASH0 def_data 0x7fe87fe4 32 MVTORAM FLASH0 def_data 0x7fe88004 108 MVTORAM FLASH0 def_data 0x7fe88070 32 MVTORAM FLASH0 def_data 0x7fe88090 32 MVTORAM FLASH0 def_data 0x7fe880b0 32 MVTORAM FLASH0 def_data 0x7fe880d0 32 MVTORAM FLASH0 def_data 0x7fe880f0 32 MVTORAM FLASH0 def_data 0x7fe88110 32 MVTORAM FLASH0 def_data 0x7fe88130 32 MVTORAM FLASH0 def_data 0x7fe88150 108 MVTORAM FLASH0 def_data 0x7fe881bc 32 MVTORAM FLASH0 def_data 0x7fe881dc 108 MVTORAM FLASH0 def_data 0x7fe88248 32 MVTORAM FLASH0 def_data 0x7fe88268 108 MVTORAM FLASH0 def_data 0x7fe882d4 32 MVTORAM FLASH0 def_data 0x7fe882f4 108 MVTORAM FLASH0 def_data 0x7fe88360 32 MVTORAM FLASH0 def_data 0x7fe88380 108 MVTORAM FLASH0 def_data 0x7fe883ec 32 MVTORAM FLASH0 def_data 0x7fe8840c 32 MVTORAM FLASH0 def_data 0x7fe8842c 32 MVTORAM FLASH0 def_data 0x7fe8844c 32 MVTORAM FLASH0 def_data 0x7fe8846c 32 MVTORAM FLASH0 def_data 0x7fe8848c 32 MVTORAM FLASH0 def_data 0x7fe884ac 32 MVTORAM FLASH0 def_data 0x7fe884cc 108 MVTORAM FLASH0 def_data 0x7fe88538 32 MVTORAM FLASH0 def_data 0x7fe88558 108 MVTORAM FLASH0 def_data 0x7fe885c4 32 MVTORAM FLASH0 def_data 0x7fe885e4 108 MVTORAM FLASH0 def_data 0x7fe88650 32 MVTORAM FLASH0 def_data 0x7fe88670 32 MVTORAM FLASH0 def_data 0x7fe88690 32 MVTORAM FLASH0 def_data 0x7fe886b0 32 MVTORAM FLASH0 def_data 0x7fe886d0 32 MVTORAM FLASH0 def_data 0x7fe886f0 32 MVTORAM FLASH0 def_data 0x7fe88710 32 MVTORAM FLASH0 def_data 0x7fe88730 108 MVTORAM FLASH0 def_data 0x7fe8879c 32 MVTORAM FLASH0 def_data 0x7fe887bc 108 MVTORAM FLASH0 def_data 0x7fe88828 32 MVTORAM FLASH0 def_data 0x7fe88848 108 MVTORAM FLASH0 def_data 0x7fe888b4 32 MVTORAM FLASH0 def_data 0x7fe888d4 108 MVTORAM FLASH0 def_data 0x7fe88940 32 MVTORAM FLASH0 def_data 0x7fe88960 32 MVTORAM FLASH0 def_data 0x7fe88980 32 MVTORAM FLASH0 def_data 0x7fe889a0 32 MVTORAM FLASH0 def_data 0x7fe889c0 32 MVTORAM FLASH0 def_data 0x7fe889e0 32 MVTORAM FLASH0 def_data 0x7fe88a00 32 MVTORAM FLASH0 def_data 0x7fe88a20 108 MVTORAM FLASH0 def_data 0x7fe88a8c 32 MVTORAM FLASH0 def_data 0x7fe88aac 108 MVTORAM FLASH0 def_data 0x7fe88b18 32 MVTORAM FLASH0 def_data 0x7fe88b38 108 MVTORAM FLASH0 def_data 0x7fe88ba4 32 MVTORAM FLASH0 def_data 0x7fe88bc4 32 MVTORAM FLASH0 def_data 0x7fe88be4 32 MVTORAM FLASH0 def_data 0x7fe88c04 32 MVTORAM FLASH0 def_data 0x7fe88c24 32 MVTORAM FLASH0 def_data 0x7fe88c44 32 MVTORAM FLASH0 def_data 0x7fe88c64 32 MVTORAM FLASH0 def_data 0x7fe88c84 108 MVTORAM FLASH0 def_data 0x7fe88cf0 32 MVTORAM FLASH0 def_data 0x7fe88d10 32 MVTORAM FLASH0 def_data 0x7fe88d30 32 MVTORAM FLASH0 def_data 0x7fe88d50 32 MVTORAM FLASH0 def_data 0x7fe88d70 32 MVTORAM FLASH0 def_data 0x7fe88d90 32 MVTORAM FLASH0 def_data 0x7fe88db0 32 MVTORAM FLASH0 def_data 0x7fe88dd0 108 MVTORAM FLASH0 def_data 0x7fe88e3c 32 MVTORAM FLASH0 def_data 0x7fe88e5c 32 MVTORAM FLASH0 def_data 0x7fe88e7c 32 MVTORAM FLASH0 def_data 0x7fe88e9c 1232 MVTORAM FLASH0 def_data 0x7fe8936c 16 MVTORAM FLASH0 def_data 0x7fe8937c 36 MVTORAM FLASH0 def_data 0x7fe893a0 96 MVTORAM FLASH0 def_data 0x7fe89400 304 MVTORAM FLASH0 def_data 0x7fe89530 52 MVTORAM FLASH0 def_data 0x7fe89564 1188 MVTORAM FLASH0 def_data 0x7fe89a08 4 MVTORAM FLASH0 def_data 0x7fe89a0c 88 MVTORAM FLASH0 def_data 0x7fe89a64 476 MVTORAM FLASH0 def_data 0x7fe89c40 12 MVTORAM FLASH0 def_data 0x7fe89c4c 4 MVTORAM FLASH0 def_data 0x7fe89c50 16 MVTORAM FLASH0 def_data 0x7fe89c60 20 MVTORAM FLASH0 def_data 0x7fe89c74 28 MVTORAM FLASH0 def_data 0x7fe89c90 16 MVTORAM FLASH0 def_data 0x7fe89ca0 92 MVTORAM FLASH0 def_data 0x7fe89cfc 2416 MVTORAM FLASH0 def_data 0x7fe8a66c 232 MVTORAM FLASH0 def_data 0x7fe8a754 248 MVTORAM FLASH0 def_data 0x7fe8a84c 216 MVTORAM FLASH0 def_data 0x7fe8a924 40 MVTORAM FLASH0 def_data 0x7fe8a94c 8 MVTORAM FLASH0 def_data 0x7fe8a954 4 MVTORAM FLASH0 def_data 0x7fe8a958 4 MVTORAM FLASH0 def_data 0x7fe8a95c 176 MVTORAM FLASH0 def_const 0x7fe8aa0c 149588 MVTORAM FLASH0 def_const 0x7feaf260 20 MVTORAM FLASH0 def_const 0x7feaf274 16 MVTORAM FLASH0 def_const 0x7feaf284 16 MVTORAM FLASH0 def_const 0x7feaf294 16 MVTORAM FLASH0 def_const 0x7feaf2a4 16 MVTORAM FLASH0 def_const 0x7feaf2b4 16 MVTORAM FLASH0 def_const 0x7feaf2c4 16 MVTORAM FLASH0 def_const 0x7feaf2d4 16 MVTORAM FLASH0 def_const 0x7feaf2e4 16 MVTORAM FLASH0 def_const 0x7feaf2f4 16 MVTORAM FLASH0 def_const 0x7feaf304 16 MVTORAM FLASH0 def_const 0x7feaf314 16 MVTORAM FLASH0 def_const 0x7feaf324 16 MVTORAM FLASH0 def_const 0x7feaf334 16 MVTORAM FLASH0 def_const 0x7feaf344 16 MVTORAM FLASH0 def_const 0x7feaf354 16 MVTORAM FLASH0 def_const 0x7feaf364 16 MVTORAM FLASH0 def_const 0x7feaf374 16 MVTORAM FLASH0 def_const 0x7feaf384 16 MVTORAM FLASH0 def_const 0x7feaf394 16 MVTORAM FLASH0 def_const 0x7feaf3a4 16 MVTORAM FLASH0 def_const 0x7feaf3b4 16 MVTORAM FLASH0 def_const 0x7feaf3c4 16 MVTORAM FLASH0 def_const 0x7feaf3d4 16 MVTORAM FLASH0 def_const 0x7feaf3e4 16 MVTORAM FLASH0 def_const 0x7feaf3f4 16 MVTORAM FLASH0 def_const 0x7feaf404 16 MVTORAM FLASH0 def_const 0x7feaf414 16 MVTORAM FLASH0 def_const 0x7feaf424 16 MVTORAM FLASH0 def_const 0x7feaf434 16 MVTORAM FLASH0 def_const 0x7feaf444 16 MVTORAM FLASH0 def_const 0x7feaf454 16 MVTORAM FLASH0 def_const 0x7feaf464 16 MVTORAM FLASH0 def_const 0x7feaf474 16 MVTORAM FLASH0 def_const 0x7feaf484 16 MVTORAM FLASH0 def_const 0x7feaf494 16 MVTORAM FLASH0 def_const 0x7feaf4a4 16 MVTORAM FLASH0 def_const 0x7feaf4b4 16 MVTORAM FLASH0 def_const 0x7feaf4c4 16 MVTORAM FLASH0 def_const 0x7feaf4d4 16 MVTORAM FLASH0 def_const 0x7feaf4e4 16 MVTORAM FLASH0 def_const 0x7feaf4f4 16 MVTORAM FLASH0 def_const 0x7feaf504 16 MVTORAM FLASH0 def_const 0x7feaf514 16 MVTORAM FLASH0 def_const 0x7feaf524 16 MVTORAM FLASH0 def_const 0x7feaf534 16 MVTORAM FLASH0 def_const 0x7feaf544 16 MVTORAM FLASH0 def_const 0x7feaf554 16 MVTORAM FLASH0 def_const 0x7feaf564 16 MVTORAM FLASH0 def_const 0x7feaf574 16 MVTORAM FLASH0 def_const 0x7feaf584 16 MVTORAM FLASH0 def_const 0x7feaf594 16 MVTORAM FLASH0 def_const 0x7feaf5a4 16 MVTORAM FLASH0 def_const 0x7feaf5b4 16 MVTORAM FLASH0 def_const 0x7feaf5c4 16 MVTORAM FLASH0 def_const 0x7feaf5d4 16 MVTORAM FLASH0 def_const 0x7feaf5e4 16 MVTORAM FLASH0 def_const 0x7feaf5f4 16 MVTORAM FLASH0 def_const 0x7feaf604 16 MVTORAM FLASH0 def_const 0x7feaf614 16 MVTORAM FLASH0 def_const 0x7feaf624 16 MVTORAM FLASH0 def_const 0x7feaf634 16 MVTORAM FLASH0 def_const 0x7feaf644 16 MVTORAM FLASH0 def_const 0x7feaf654 16 MVTORAM FLASH0 def_const 0x7feaf664 16 MVTORAM FLASH0 def_const 0x7feaf674 16 MVTORAM FLASH0 def_const 0x7feaf684 16 MVTORAM FLASH0 def_const 0x7feaf694 16 MVTORAM FLASH0 def_const 0x7feaf6a4 16 MVTORAM FLASH0 def_const 0x7feaf6b4 16 MVTORAM FLASH0 def_const 0x7feaf6c4 16 MVTORAM FLASH0 def_const 0x7feaf6d4 16 MVTORAM FLASH0 def_const 0x7feaf6e4 16 MVTORAM FLASH0 def_const 0x7feaf6f4 16 MVTORAM FLASH0 def_const 0x7feaf704 16 MVTORAM FLASH0 def_const 0x7feaf714 16 MVTORAM FLASH0 def_const 0x7feaf724 16 MVTORAM FLASH0 def_const 0x7feaf734 16 MVTORAM FLASH0 def_const 0x7feaf744 16 MVTORAM FLASH0 def_const 0x7feaf754 16 MVTORAM FLASH0 def_const 0x7feaf764 16 MVTORAM FLASH0 def_const 0x7feaf774 16 MVTORAM FLASH0 def_const 0x7feaf784 16 MVTORAM FLASH0 def_const 0x7feaf794 16 MVTORAM FLASH0 def_const 0x7feaf7a4 16 MVTORAM FLASH0 def_const 0x7feaf7b4 16 MVTORAM FLASH0 def_const 0x7feaf7c4 16 MVTORAM FLASH0 def_const 0x7feaf7d4 16 MVTORAM FLASH0 def_const 0x7feaf7e4 16 MVTORAM FLASH0 def_const 0x7feaf7f4 16 MVTORAM FLASH0 def_const 0x7feaf804 16 MVTORAM FLASH0 def_const 0x7feaf814 16 MVTORAM FLASH0 def_const 0x7feaf824 16 MVTORAM FLASH0 def_const 0x7feaf834 16 MVTORAM FLASH0 def_const 0x7feaf844 16 MVTORAM FLASH0 def_const 0x7feaf854 16 MVTORAM FLASH0 def_const 0x7feaf864 16 MVTORAM FLASH0 def_const 0x7feaf874 16 MVTORAM FLASH0 def_const 0x7feaf884 16 MVTORAM FLASH0 def_const 0x7feaf894 16 MVTORAM FLASH0 def_const 0x7feaf8a4 16 MVTORAM FLASH0 def_const 0x7feaf8b4 16 MVTORAM FLASH0 def_const 0x7feaf8c4 16 MVTORAM FLASH0 def_const 0x7feaf8d4 16 MVTORAM FLASH0 def_const 0x7feaf8e4 16 MVTORAM FLASH0 def_const 0x7feaf8f4 16 MVTORAM FLASH0 def_const 0x7feaf904 16 MVTORAM FLASH0 def_const 0x7feaf914 16 MVTORAM FLASH0 def_const 0x7feaf924 16 MVTORAM FLASH0 def_const 0x7feaf934 16 MVTORAM FLASH0 def_const 0x7feaf944 16 MVTORAM FLASH0 def_const 0x7feaf954 16 MVTORAM FLASH0 def_const 0x7feaf964 16 MVTORAM FLASH0 def_const 0x7feaf974 16 MVTORAM FLASH0 def_const 0x7feaf984 16 MVTORAM FLASH0 def_const 0x7feaf994 16 MVTORAM FLASH0 def_const 0x7feaf9a4 16 MVTORAM FLASH0 def_const 0x7feaf9b4 16 MVTORAM FLASH0 def_const 0x7feaf9c4 20 MVTORAM FLASH0 def_const 0x7feaf9d8 123828 MVTORAM FLASH0 def_const 0x7fecdd8c 828 MVTORAM FLASH0 def_const 0x7fece0c8 12 MVTORAM FLASH0 def_const 0x7fece0d4 12 MVTORAM FLASH0 def_const 0x7fece0e0 828 MVTORAM FLASH0 def_const 0x7fece41c 1360 MVTORAM FLASH0 def_const 0x7fece96c 828 MVTORAM FLASH0 def_const 0x7fececa8 85300 MVTORAM FLASH0 def_const 0x7fee39dc 36 MVTORAM FLASH0 def_const 0x7fee3a00 120 MVTORAM FLASH0 def_const 0x7fee3a78 72 MVTORAM FLASH0 def_const 0x7fee3ac0 16 MVTORAM FLASH0 def_const 0x7fee3ad0 28 MVTORAM FLASH0 def_const 0x7fee3aec 424 MVTORAM FLASH0 def_const 0x7fee3c94 908 MVTORAM FLASH0 def_const 0x7fee4020 12 MVTORAM FLASH0 def_const 0x7fee402c 812 MVTORAM FLASH0 def_const 0x7fee4358 68 MVTORAM FLASH0 def_const 0x7fee439c 4 MVTORAM FLASH0 def_const 0x7fee43a0 9448 MVTORAM FLASH0 def_const 0x7fee6888 5872 MVTORAM FLASH0 def_const 0x7fee7f78 4 MVTORAM FLASH0 def_const 0x7fee7f7c 20 MVTORAM FLASH0 def_const 0x7fee7f90 64 MVTORAM FLASH0 def_const 0x7fee7fd0 76 MVTORAM FLASH0 def_const 0x7fee801c 28 MVTORAM FLASH0 def_const 0x7fee8038 28 MVTORAM FLASH0 def_const 0x7fee8054 152 MVTORAM FLASH0 def_const 0x7fee80ec 32 MVTORAM FLASH0 def_const 0x7fee810c 32 MVTORAM FLASH0 def_const 0x7fee812c 32 MVTORAM FLASH0 def_const 0x7fee814c 9756 MVTORAM FLASH0 def_const 0x7feea768 28 MVTORAM FLASH0 def_const 0x7feea784 28 MVTORAM FLASH0 def_const 0x7feea7a0 28 MVTORAM FLASH0 def_const 0x7feea7bc 4496 MVTORAM FLASH0 def_const 0x7feeb94c 396 MVTORAM FLASH0 def_const 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 0x7feebee0 16 MVTORAM FLASH0 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 에 쓰기 때문이다. {{ :computer:job:digitalarena:memory_map_flash.jpg |}} 이제 하나하나씩 살펴보자!! | 영역 | 전체용량 | 사용량 | 남은양 | 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 | | | | ---- {{indexmenu>:#1|skipns=/^(wiki|etc|diary|playground)$/ skipfile=/^(todays|about|guestbook)$/ nsort rsort}} ----