"타겟 Memory Dump"의 두 판 사이의 차이
(새 문서: <h2>개요</h2> <p>개발 중 target의 memory를 dump하여 host PC에 저장한 후 그 dump파일을 분석할 경우가 있다. 그리고 반대로 dump파일을 불러와서 타...) |
|||
4번째 줄: | 4번째 줄: | ||
<h3><strong>Memory </strong><strong>창 확인 방법</strong></h3> | <h3><strong>Memory </strong><strong>창 확인 방법</strong></h3> | ||
<p>C-spy를 이용한 debug 모드에서 View > memory 선택</p> | <p>C-spy를 이용한 debug 모드에서 View > memory 선택</p> | ||
− | <p> | + | <p><img src="/data/wiki/2016-10-07/1475812690.jpg" alt="" /></p> |
<p>memory번지, 해당 번지에 있는 data(1byte 단위), asci 순으로 확인 가능</p> | <p>memory번지, 해당 번지에 있는 data(1byte 단위), asci 순으로 확인 가능</p> | ||
+ | <p> </p> | ||
<p> </p> | <p> </p> | ||
<h3><strong>Memory map</strong><strong>을 참고하며 해당 영역 memory 확인</strong></h3> | <h3><strong>Memory map</strong><strong>을 참고하며 해당 영역 memory 확인</strong></h3> | ||
− | <p> | + | <p><img src="/data/wiki/2016-10-07/1475812701.jpg" alt="" /></p> |
<p>상단의 콤보박스를 클릭하면 ROM, APB bus, flash, RAM 에 해당하는 memory위치로 이동</p> | <p>상단의 콤보박스를 클릭하면 ROM, APB bus, flash, RAM 에 해당하는 memory위치로 이동</p> | ||
<p> </p> | <p> </p> | ||
<h3><strong>memory data </strong><strong>단위 변경</strong></h3> | <h3><strong>memory data </strong><strong>단위 변경</strong></h3> | ||
− | <p> | + | <p><img src="/data/wiki/2016-10-07/1475812726.jpg" alt="" /></p> |
<p>유닛 선택을 통해 개발자에게 익숙한 memory data 단위를 선택 가능</p> | <p>유닛 선택을 통해 개발자에게 익숙한 memory data 단위를 선택 가능</p> | ||
<p>1xUnits -> byte 단위(8bit)</p> | <p>1xUnits -> byte 단위(8bit)</p> | ||
20번째 줄: | 21번째 줄: | ||
<p><strong><br /> </strong></p> | <p><strong><br /> </strong></p> | ||
<h2>Memory dump</h2> | <h2>Memory dump</h2> | ||
− | < | + | <p><img src="/data/wiki/2016-10-07/1475812760.jpg" alt="" /></p> |
− | < | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
<p>우측의 콤보박스 선택 후 memory save… 클릭</p> | <p>우측의 콤보박스 선택 후 memory save… 클릭</p> | ||
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> | ||
+ | <p><img src="/data/wiki/2016-10-07/1475812786.jpg" alt="" /></p> | ||
<p>Dump 할 메모리 영역, dump파일을 저장 할 위치 지정 후 save 선택</p> | <p>Dump 할 메모리 영역, dump파일을 저장 할 위치 지정 후 save 선택</p> | ||
<p> </p> | <p> </p> | ||
− | |||
<p> </p> | <p> </p> | ||
− | < | + | <p><img src="/data/wiki/2016-10-07/1475812831.jpg" alt="" /></p> |
− | < | + | <p>Save 한 경로에서 dump된 hex파일 확인</p> |
− | + | <p> </p> | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | < | + | |
− | </ | + | |
− | < | + | |
− | + | ||
− | + | ||
− | </ | + | |
− | + | ||
− | + | ||
− | + | ||
<p> </p> | <p> </p> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<p> </p> | <p> </p> | ||
+ | <h2>Memory restore</h2> | ||
+ | <p><img src="/data/wiki/2016-10-07/1475812868.jpg" alt="" /></p> | ||
<p>우측의 콤보박스 선택 후 Memory Restore… 클릭</p> | <p>우측의 콤보박스 선택 후 Memory Restore… 클릭</p> | ||
<p> </p> | <p> </p> | ||
− | <p> | + | <p><img src="/data/wiki/2016-10-07/1475812911.jpg" alt="" /></p> |
<p>불러올 dump 파일(.hex)와 memory write 할 영역을 선택</p> | <p>불러올 dump 파일(.hex)와 memory write 할 영역을 선택</p> | ||
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> | ||
− | <p> | + | <p><img src="/data/wiki/2016-10-07/1475812915.jpg" alt="" /></p> |
<p>메시지를 통해 정상 Restored memory 확인</p> | <p>메시지를 통해 정상 Restored memory 확인</p> | ||
− |
2016년 10월 7일 (금) 13:02 기준 최신판
목차
개요
개발 중 target의 memory를 dump하여 host PC에 저장한 후 그 dump파일을 분석할 경우가 있다. 그리고 반대로 dump파일을 불러와서 타겟 상태를 복원할 경우도 있습니다. 이 문서는 IAR에서 지원하는 dump기능을 사용하여 memory를 디버깅하는 가이드 문서입니다
Memory 창
Memory 창 확인 방법
C-spy를 이용한 debug 모드에서 View > memory 선택
memory번지, 해당 번지에 있는 data(1byte 단위), asci 순으로 확인 가능
Memory map을 참고하며 해당 영역 memory 확인
상단의 콤보박스를 클릭하면 ROM, APB bus, flash, RAM 에 해당하는 memory위치로 이동
memory data 단위 변경
유닛 선택을 통해 개발자에게 익숙한 memory data 단위를 선택 가능
1xUnits -> byte 단위(8bit)
2xUnits -> word 단위(16bit)
3xUnits -> long 단위(32bit)
4xUnits -> 64bit
Memory dump
우측의 콤보박스 선택 후 memory save… 클릭
Dump 할 메모리 영역, dump파일을 저장 할 위치 지정 후 save 선택
Save 한 경로에서 dump된 hex파일 확인
Memory restore
우측의 콤보박스 선택 후 Memory Restore… 클릭
불러올 dump 파일(.hex)와 memory write 할 영역을 선택
메시지를 통해 정상 Restored memory 확인