"TRACE32 변수 로깅 / 스택 MAX 사용량 측정 툴"의 두 판 사이의 차이
(새 문서: <p><span style="font-size: x-large;"><strong>1. </strong><strong>소개</strong></span></p> <ol> </ol> <p><span style="font-size: medium;"><strong> </strong></span></...) |
|||
(같은 사용자에 의한 3개의 중간 편집이 숨겨짐) | |||
2번째 줄: | 2번째 줄: | ||
<ol> </ol> | <ol> </ol> | ||
<p><span style="font-size: medium;"><strong> </strong></span></p> | <p><span style="font-size: medium;"><strong> </strong></span></p> | ||
− | <p><span style="font-size: medium;">본 기능은 변수를 로깅할 수 있는 다양한 방법들을 GUI로 쉽게 | + | <p><span style="font-size: medium;">본 기능은 변수를 로깅할 수 있는 다양한 방법들을 GUI로 쉽게 설정하고, 로깅된 결과를 CSV나 TXT파일로 저장 및 관리할 수 있는 툴입니다.</span></p> |
<p> </p> | <p> </p> | ||
− | <p><span style="font-size: medium;"> | + | <p><span style="font-size: medium;">첫번째 방식은 VAR.LOG 명령어를 이용하여 실시간으로 변수값들을 샘플링하거나 Spot Write Breakpoint를 이용하여 데이터가 Write될 때 마다 변수값을 로깅할 수 있습니다.</span></p> |
<p> </p> | <p> </p> | ||
− | <p><span style="font-size: medium;">두번째 방식은 Snooper를 이용하여 지정한 | + | <p><span style="font-size: medium;">두번째 방식은 Snooper를 이용하여 지정한 변수값들을 보다 높은 샘플링율로 로깅하고, 이 데이터를 토대로 그래프를 그려 변수값 변화의 추이를 바로 파악할 수 있습니다.</span></p> |
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> | ||
− | <p><span style="font-size: x-large;"> <strong> | + | <p><span style="font-size: x-large;"><strong><strong>2. iTSP를 설치하시면 본 기능을 Tools 메뉴에서 사용하실 수 있습니다.</strong></strong></span></p> |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
<p><span style="font-size: medium;"><strong> </strong></span></p> | <p><span style="font-size: medium;"><strong> </strong></span></p> | ||
<p><span style="font-size: medium;"><strong> </strong></span></p> | <p><span style="font-size: medium;"><strong> </strong></span></p> | ||
54번째 줄: | 33번째 줄: | ||
<p><span style="font-size: medium;">- <strong>OPEN </strong>: 로깅된 파일의 폴더가 열립니다.</span></p> | <p><span style="font-size: medium;">- <strong>OPEN </strong>: 로깅된 파일의 폴더가 열립니다.</span></p> | ||
<p> </p> | <p> </p> | ||
− | <p><img src="/data/wiki/2018-10-22/1540174324.png" alt="" /></p> | + | <p><span style="white-space: pre;"> </span><img src="/data/wiki/2018-10-22/1540174324.png" alt="" /></p> |
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> | ||
61번째 줄: | 40번째 줄: | ||
<p><span style="font-size: medium;">- <strong>Timestamped : </strong>시간 정보 출력 옵션<strong> </strong></span></p> | <p><span style="font-size: medium;">- <strong>Timestamped : </strong>시간 정보 출력 옵션<strong> </strong></span></p> | ||
<p><span style="font-size: medium;"><strong><br /></strong></span></p> | <p><span style="font-size: medium;"><strong><br /></strong></span></p> | ||
− | <p><span style="font-size: medium;">- <strong>1. Periodically : </strong>T32가 실시간으로 메모리 접근이 가능할때, 변수값들을 <strong> </strong></span><span style="font-size: medium;">설정한 간격마다 샘플링하여 로깅하는 방식입니다.</span | + | <p><span style="font-size: medium;">- <strong>1. Periodically : </strong>T32가 실시간으로 메모리 접근이 가능할때, 변수값들을 <strong> </strong></span><span style="font-size: medium;">설정한 간격마다 샘플링하여 로깅하는 방식입니다.</span><span style="white-space: pre;"> </span><span style="font-size: medium;">(Non-Intrusive 방식)</span></p> |
− | + | ||
<p> </p> | <p> </p> | ||
− | <p><span style="font-size: medium;">- <strong>2. On Writes : </strong>선택한 변수에 Spot Breakpoint를 설정하고 해당 변수에 <strong> </strong></span><span style="font-size: medium;">Write될 때마다 타겟을 잠시 멈춰 변수값들을 로깅하고 </span | + | <p><span style="font-size: medium;">- <strong>2. On Writes : </strong>선택한 변수에 Spot Breakpoint를 설정하고 해당 변수에 <strong> </strong></span><span style="font-size: medium;">Write될 때마다 타겟을 잠시 멈춰 변수값들을 로깅하고 </span><span style="font-size: medium;">다시 타겟이 러닝되는 방식입니다. (Intrusive 방식)</span></p> |
− | + | ||
<p><span style="font-size: medium;"><strong> </strong></span></p> | <p><span style="font-size: medium;"><strong> </strong></span></p> | ||
<p><span style="font-size: medium;"><strong> </strong></span></p> | <p><span style="font-size: medium;"><strong> </strong></span></p> | ||
+ | <p><span style="font-size: medium;"><strong><br /></strong></span></p> | ||
<p><span style="font-size: medium;"><span style="white-space: pre;"> </span>※ <strong>On Writes </strong><strong>방식은 아래와 같이 어떤 변수에 Spot Breakpoint를 설정할지 선택해주셔야 합니다.</strong></span></p> | <p><span style="font-size: medium;"><span style="white-space: pre;"> </span>※ <strong>On Writes </strong><strong>방식은 아래와 같이 어떤 변수에 Spot Breakpoint를 설정할지 선택해주셔야 합니다.</strong></span></p> | ||
<p><span style="font-size: medium;"><strong> </strong></span></p> | <p><span style="font-size: medium;"><strong> </strong></span></p> | ||
77번째 줄: | 55번째 줄: | ||
<p><span style="font-size: medium;"> <strong>※ </strong><strong>Snooper </strong><strong>방식으로 로깅했을 경우에는 해당 리스트창의 변수를 더블클릭 </strong></span><strong style="font-size: medium;">하시면 그래프로 변화된 추이를 분석하실 수 있습니다.</strong></p> | <p><span style="font-size: medium;"> <strong>※ </strong><strong>Snooper </strong><strong>방식으로 로깅했을 경우에는 해당 리스트창의 변수를 더블클릭 </strong></span><strong style="font-size: medium;">하시면 그래프로 변화된 추이를 분석하실 수 있습니다.</strong></p> | ||
<p><span style="font-size: medium;"><strong> </strong></span></p> | <p><span style="font-size: medium;"><strong> </strong></span></p> | ||
− | <p><span style="font-size: medium;"><strong><span style="white-space: pre;"> <img src="/data/wiki/2018-10-22/1540174429.png" alt="" /></span></strong></span></p> | + | <p><span style="font-size: medium;"><strong><span style="white-space: pre;"><span style="white-space: pre;"> </span> <img src="/data/wiki/2018-10-22/1540174429.png" alt="" /></span></strong></span></p> |
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> | ||
<p><span style="font-size: medium;"><strong>⑤</strong><strong> </strong><strong>로깅 시작/멈춤 버튼 : </strong>로깅을 시작하거나 멈춥니다.</span></p> | <p><span style="font-size: medium;"><strong>⑤</strong><strong> </strong><strong>로깅 시작/멈춤 버튼 : </strong>로깅을 시작하거나 멈춥니다.</span></p> | ||
− | |||
− |
2019년 4월 11일 (목) 18:18 기준 최신판
1. 소개
본 기능은 변수를 로깅할 수 있는 다양한 방법들을 GUI로 쉽게 설정하고, 로깅된 결과를 CSV나 TXT파일로 저장 및 관리할 수 있는 툴입니다.
첫번째 방식은 VAR.LOG 명령어를 이용하여 실시간으로 변수값들을 샘플링하거나 Spot Write Breakpoint를 이용하여 데이터가 Write될 때 마다 변수값을 로깅할 수 있습니다.
두번째 방식은 Snooper를 이용하여 지정한 변수값들을 보다 높은 샘플링율로 로깅하고, 이 데이터를 토대로 그래프를 그려 변수값 변화의 추이를 바로 파악할 수 있습니다.
2. iTSP를 설치하시면 본 기능을 Tools 메뉴에서 사용하실 수 있습니다.
3. 화면 구성 및 사용법
3-1. Main UI
① 변수 로깅 방법 선택 : 어떤 방식으로 변수를 로깅할지 선택합니다.
② 변수 로깅 파일 설정 : 변수값 로깅 결과를 파일로 출력할지 선택합니다.
- Default Save : T32 설치 폴더내에 var_log\[로깅날짜] 폴더로 저장됩니다.
- CSV Format : CSV 파일로도 출력할지 선택합니다. (아래 예시)
- OPEN : 로깅된 파일의 폴더가 열립니다.
③ VAR.LOG 로깅 옵션 : VAR.LOG 방식을 선택하였을 때 지정하는 옵션입니다.
- Timestamped : 시간 정보 출력 옵션
- 1. Periodically : T32가 실시간으로 메모리 접근이 가능할때, 변수값들을 설정한 간격마다 샘플링하여 로깅하는 방식입니다. (Non-Intrusive 방식)
- 2. On Writes : 선택한 변수에 Spot Breakpoint를 설정하고 해당 변수에 Write될 때마다 타겟을 잠시 멈춰 변수값들을 로깅하고 다시 타겟이 러닝되는 방식입니다. (Intrusive 방식)
※ On Writes 방식은 아래와 같이 어떤 변수에 Spot Breakpoint를 설정할지 선택해주셔야 합니다.
④ 로깅 변수 리스트 : 로깅할 변수들을 입력합니다. Symbol Browser에서 검색하거나 직접 입력후 엔터를 누르셔도 됩니다.
※ Snooper 방식으로 로깅했을 경우에는 해당 리스트창의 변수를 더블클릭 하시면 그래프로 변화된 추이를 분석하실 수 있습니다.
⑤ 로깅 시작/멈춤 버튼 : 로깅을 시작하거나 멈춥니다.