"스택 MAX 사용량 측정 툴"의 두 판 사이의 차이

TRACE32
이동: 둘러보기, 검색
(새 문서: <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></...)
 
1번째 줄: 1번째 줄:
 +
<p>&nbsp;</p>
 
<p><span style="font-size: x-large;"><strong>1.&nbsp;&nbsp; </strong><strong>소개</strong></span></p>
 
<p><span style="font-size: x-large;"><strong>1.&nbsp;&nbsp; </strong><strong>소개</strong></span></p>
 
<ol> </ol>
 
<ol> </ol>
48번째 줄: 49번째 줄:
 
<p><span style="font-size: medium;"><strong>②&nbsp;&nbsp;&nbsp; </strong><strong>스택 끝 주소 :</strong> &nbsp;측정하고자 하는 스택의 끝 주소를 입력합니다.<strong>&nbsp;</strong></span></p>
 
<p><span style="font-size: medium;"><strong>②&nbsp;&nbsp;&nbsp; </strong><strong>스택 끝 주소 :</strong> &nbsp;측정하고자 하는 스택의 끝 주소를 입력합니다.<strong>&nbsp;</strong></span></p>
 
<p><span style="font-size: medium;"><strong>&nbsp;</strong></span></p>
 
<p><span style="font-size: medium;"><strong>&nbsp;</strong></span></p>
<p><span style="font-size: medium;"><strong>③ 스택 포인터 레지스터 : </strong>스택 포인터의 레지스터를 입력합니다.</span><span style="font-size: medium;">&nbsp; 기본적으로 Core 아키텍처에 맞게 자동으로 입력됩니다.</span></p>
+
<p><span style="font-size: medium;"><strong>③&nbsp; &nbsp;스택 포인터 레지스터 : </strong>스택 포인터의 레지스터를 입력합니다.</span><span style="font-size: medium;">&nbsp; 기본적으로 Core 아키텍처에 맞게 자동으로 입력됩니다.</span></p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
<p><span style="font-size: x-large;"><strong>4</strong><strong> </strong><strong>추가 옵션</strong></span></p>
+
<p><span style="font-size: x-large;"><strong>4.</strong><strong> </strong><strong>추가 옵션</strong></span></p>
 
<p><span style="font-size: x-large;"><br /></span></p>
 
<p><span style="font-size: x-large;"><br /></span></p>
 
<p><span style="font-size: medium;">&nbsp; &nbsp;&nbsp;<strong>- Break Overflow</strong> : 스택의 끝 지점에 Write Breakpoint가 설정되어 Overflow 되었을 경우&nbsp;</span><span style="font-size: medium;">타겟이 멈추어 어느 코드에서 Overflow되는지 확인하실 수 있습니다.</span></p>
 
<p><span style="font-size: medium;">&nbsp; &nbsp;&nbsp;<strong>- Break Overflow</strong> : 스택의 끝 지점에 Write Breakpoint가 설정되어 Overflow 되었을 경우&nbsp;</span><span style="font-size: medium;">타겟이 멈추어 어느 코드에서 Overflow되는지 확인하실 수 있습니다.</span></p>
61번째 줄: 62번째 줄:
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
<p><span style="font-size: x-large;"><strong>5</strong><strong> </strong><strong>스택 패턴 채우기</strong></span></p>
+
<p><span style="font-size: x-large;"><strong>5.</strong><strong> </strong><strong>스택 패턴 채우기</strong></span></p>
 
<p><span style="font-size: x-large;"><strong><br /></strong></span></p>
 
<p><span style="font-size: x-large;"><strong><br /></strong></span></p>
<p><span style="font-size: medium;">타겟의 현재 스택 포인터부터 스택 끝주소까지 특정 패턴을 채웁니다.&nbsp;</span><span style="font-size: medium;">[Init] 버튼을 눌러주셔야 측정을 시작하는 [start] 버튼이 활성화 됩니다.</span></p>
+
<p><span style="font-size: medium;">&nbsp; 타겟의 현재 스택 포인터부터 스택 끝주소까지 특정 패턴을 채웁니다.&nbsp;</span><span style="font-size: medium;">[Init] 버튼을 눌러주셔야 측정을 시작하는 [start] 버튼이 활성화 됩니다.</span></p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
<p><strong style="font-size: x-large;">6</strong><strong style="font-size: x-large;">&nbsp;</strong><strong style="font-size: x-large;">스택 사용량 측정 시작</strong></p>
+
<p><strong style="font-size: x-large;">6.</strong><strong style="font-size: x-large;">&nbsp;</strong><strong style="font-size: x-large;">스택 사용량 측정 시작</strong></p>
 
<p><strong style="font-size: x-large;"><br /></strong></p>
 
<p><strong style="font-size: x-large;"><br /></strong></p>
 
<p><span style="font-size: medium;">&nbsp;&nbsp;&nbsp;&nbsp; [start] 버튼을 누른 시점에서 패턴이 지워진 부분의 마지막 부분을 찾아&nbsp;</span><span style="font-size: medium;">스택 사용량을 계산합니다.</span></p>
 
<p><span style="font-size: medium;">&nbsp;&nbsp;&nbsp;&nbsp; [start] 버튼을 누른 시점에서 패턴이 지워진 부분의 마지막 부분을 찾아&nbsp;</span><span style="font-size: medium;">스택 사용량을 계산합니다.</span></p>
75번째 줄: 76번째 줄:
 
<p><span style="font-size: medium;"><strong>&nbsp;</strong></span></p>
 
<p><span style="font-size: medium;"><strong>&nbsp;</strong></span></p>
 
<p><span style="font-size: medium;"><strong>&nbsp;</strong></span></p>
 
<p><span style="font-size: medium;"><strong>&nbsp;</strong></span></p>
<p>&nbsp;</p>
 

2018년 10월 22일 (월) 12:39 판

 

1.   소개

 


본 기능은 타겟의 스택 사용량을 동적으로 측정하기 위한 기능입니다.  


측정 방법은 스택 포인터 위치부터 스택 끝 주소까지 특정 패턴을 채운 후에 타겟을 동작시키고, 이후 패턴이 마지막으로 지워진 부분을 찾아 스택 사용량을 계산합니다.

 

aTSP 플랫폼에 포함된 자동화 테스트 기능과 연동하여 사용하시면, 다양한 테스트케이스를 실행했을 때 사용된 스택 측정량을 보실 수 있습니다.


사용 방법은 GUI 기반으로 스택의 처음과 끝 위치만 설정해주시면, 버튼 하나로 현재 스택 사용량을 손쉽게 측정하실 수 있습니다.

 

 

 

2.   aTSP 플랫폼 설치 방법

 

1. 받은 tools.zip 파일을 “T32설치폴더” 안에 tools라는 이름으로 압축해제 합니다.

 

 

2. tools 폴더안에 있는 t32.men 파일을 복사하여 “T3설치폴더(C:\T32)”에 덮어쓰기를 합니다.

 

 

3. 이후 TRACE32프로그램을 실행하면 아래와 같은 버튼들과 메뉴가 추가됩니다.

 

      

 

4. 생성된 버튼중 네번째 버튼을 누르면 Stack Usage Measure Tool 이 실행됩니다.

 

 

 

 


3. 화면 구성 및 사용법


3-1. Main UI


 

 

 

①    스택 시작 주소 : 측정하고자 하는 스택의 시작 주소를 입력합니다.


②    스택 끝 주소 :  측정하고자 하는 스택의 끝 주소를 입력합니다. 

 

③   스택 포인터 레지스터 : 스택 포인터의 레지스터를 입력합니다.  기본적으로 Core 아키텍처에 맞게 자동으로 입력됩니다.

 

 

4. 추가 옵션


    - Break Overflow : 스택의 끝 지점에 Write Breakpoint가 설정되어 Overflow 되었을 경우 타겟이 멈추어 어느 코드에서 Overflow되는지 확인하실 수 있습니다.

 

     - Continuous :  Dualport 기능을 이용하여 스택 사용량을 실시간으로 측정합니다. 

       측정을 멈추고 싶을 경우에는 툴바의    버튼을 누르고 다시 측정을 하고 싶을 경우에는 Main UI의 [Continue] 버튼을 누릅니다.

 

 

 

 

5. 스택 패턴 채우기


  타겟의 현재 스택 포인터부터 스택 끝주소까지 특정 패턴을 채웁니다. [Init] 버튼을 눌러주셔야 측정을 시작하는 [start] 버튼이 활성화 됩니다.

 

 

6. 스택 사용량 측정 시작


     [start] 버튼을 누른 시점에서 패턴이 지워진 부분의 마지막 부분을 찾아 스택 사용량을 계산합니다.

 

   -> 측정된 결과는 Main UI의 Progress Bar와 텍스트로 표시됩니다.