"FDX Trace 기능"의 두 판 사이의 차이

TRACE32
이동: 둘러보기, 검색
(새 문서: <h2>Overview</h2> <p>본 문서는 PowerDebug를 이용한 JTAG기반의 FDX trace기능 및 설정방법에 대한 안내 문서입니다.</p> <h2>FDX TRACE</h2> <h3>정의</h3> <p>F...)
 
12번째 줄: 12번째 줄:
 
<p>&bull; Predefined algorithms to operate the software trace from the target program.</p>
 
<p>&bull; Predefined algorithms to operate the software trace from the target program.</p>
 
<p>TRACE32 API에 의해서 Trace 데이터가 RAM에 저장되며, 이 정보를 Powerview 내에서 FDX 명령어 그룹을 사용하여 확인 할 수 있습니다.</p>
 
<p>TRACE32 API에 의해서 Trace 데이터가 RAM에 저장되며, 이 정보를 Powerview 내에서 FDX 명령어 그룹을 사용하여 확인 할 수 있습니다.</p>
 +
<p>&nbsp;</p>
 
<h3>FDX 기능 설정 순서</h3>
 
<h3>FDX 기능 설정 순서</h3>
 
<h4>소스, 헤더파일 추가</h4>
 
<h4>소스, 헤더파일 추가</h4>
17번째 줄: 18번째 줄:
 
<p>~~demo/&lt;core&gt;/fdx 폴더에 예제코드가 제공되며, 아래의 소스, 헤더파일을 빌드환경에 추가합니다.</p>
 
<p>~~demo/&lt;core&gt;/fdx 폴더에 예제코드가 제공되며, 아래의 소스, 헤더파일을 빌드환경에 추가합니다.</p>
 
<p>Eg. 인피니언 Tricore/TASKING 컴파일러 경우 : T32fdx.c t32fdx.h t32fdx<strong>tc</strong>.c 파일 추가</p>
 
<p>Eg. 인피니언 Tricore/TASKING 컴파일러 경우 : T32fdx.c t32fdx.h t32fdx<strong>tc</strong>.c 파일 추가</p>
<p>&nbsp;</p>
+
<p><img src="/data/wiki/2018-06-30/1530356552.png" alt="" /></p>
 
<h4>소스 코드 구현 / 빌드</h4>
 
<h4>소스 코드 구현 / 빌드</h4>
 
<p>Data trace 기능을 사용할 소스파일에 아래와 같이 header파일을 include하고,</p>
 
<p>Data trace 기능을 사용할 소스파일에 아래와 같이 header파일을 include하고,</p>
 
<p>Trace 데이터를 생성할 코드 시점에 T32_Fdx_TraceData( ) 함수를 추가한뒤 컴파일 합니다.</p>
 
<p>Trace 데이터를 생성할 코드 시점에 T32_Fdx_TraceData( ) 함수를 추가한뒤 컴파일 합니다.</p>
<p>&nbsp;</p>
+
<p><img src="/data/wiki/2018-06-30/1530356565.png" alt="" /></p>
 
<h4>T32 PowerView 기능 설정</h4>
 
<h4>T32 PowerView 기능 설정</h4>
 
<p>TRACE 메뉴에서 FDX를 선택하고 나머지 설정사항을 아래 그림과 같이 설정합니다.</p>
 
<p>TRACE 메뉴에서 FDX를 선택하고 나머지 설정사항을 아래 그림과 같이 설정합니다.</p>
 
<p>&lt;설정에 상응하는 명령어&gt;</p>
 
<p>&lt;설정에 상응하는 명령어&gt;</p>
<p>&nbsp;</p>
+
<p><img src="/data/wiki/2018-06-30/1530356574.png" alt="" /></p>
 
<p>&lt;TRACE-FDX 설정 화면&gt;</p>
 
<p>&lt;TRACE-FDX 설정 화면&gt;</p>
 +
<p><img src="/data/wiki/2018-06-30/1530356579.png" alt="" /></p>
 
<h4>타겟을 동작시켜, Trace 데이터를 확인</h4>
 
<h4>타겟을 동작시켜, Trace 데이터를 확인</h4>
 
<p>타겟 동작결과 아래와 같이 Used 항목이 증가합니다.</p>
 
<p>타겟 동작결과 아래와 같이 Used 항목이 증가합니다.</p>
 
<p>소스코드내에 설정한 TRACE buffer 사이즈에 따라 Trace 데이터 사이즈를 조정할 수 있습니다.</p>
 
<p>소스코드내에 설정한 TRACE buffer 사이즈에 따라 Trace 데이터 사이즈를 조정할 수 있습니다.</p>
<p>&nbsp;</p>
+
<p><img src="/data/wiki/2018-06-30/1530356586.png" alt="" /></p>
 
<h4>Trace 메모리를 증가하려면 아래와 같이 <strong>t32fdx.c</strong> 파일 내의 버퍼사이즈를 수정하면 됩니다.</h4>
 
<h4>Trace 메모리를 증가하려면 아래와 같이 <strong>t32fdx.c</strong> 파일 내의 버퍼사이즈를 수정하면 됩니다.</h4>
 
<p>#define T32_FFDX_TRACE_BUFSIZE <strong>10000</strong></p>
 
<p>#define T32_FFDX_TRACE_BUFSIZE <strong>10000</strong></p>
<p>&nbsp;</p>
+
<p><img src="/data/wiki/2018-06-30/1530356593.png" alt="" /></p>
 
<h3>FDX 결과 확인</h3>
 
<h3>FDX 결과 확인</h3>
 
<p>타겟 코드 내의 API 에 의해 생성된 trace 데이터를 FDX.list 창을 통해 확인 할 수 있습니다.</p>
 
<p>타겟 코드 내의 API 에 의해 생성된 trace 데이터를 FDX.list 창을 통해 확인 할 수 있습니다.</p>
<p>&nbsp;</p>
+
<p><img src="/data/wiki/2018-06-30/1530356598.png" alt="" /></p>
 
<h2>추가</h2>
 
<h2>추가</h2>
 
<p>cpu에서 DCC 를 지원하는 경우, Dualport 기능을 활용하여 타겟을 멈추지 않고 Trace 내용을 분석할 수 있습니다.</p>
 
<p>cpu에서 DCC 를 지원하는 경우, Dualport 기능을 활용하여 타겟을 멈추지 않고 Trace 내용을 분석할 수 있습니다.</p>
 
<p>해당 기능에 대한 추가 문의는 기술지원을 요청하시기 바랍니다.</p>
 
<p>해당 기능에 대한 추가 문의는 기술지원을 요청하시기 바랍니다.</p>
<p>&nbsp;</p>
+
<p><img src="/data/wiki/2018-06-30/1530356607.png" alt="" /></p>

2018년 6월 30일 (토) 20:03 판

Overview

본 문서는 PowerDebug를 이용한 JTAG기반의 FDX trace기능 및 설정방법에 대한 안내 문서입니다.

FDX TRACE

정의

Fast Data eXchange

타겟 소스코드 내에 선언한 ring버퍼에 필요한 Trace정보를 저장, 이후 PoweView SW에서 trace 데이터를 확인할 수 있는 기능입니다.

보통 타겟의 정보를 Trace하기 위해서는, 추가 Trace 장비가 필요하며 타겟 또한 trace데이터를 생성할 수 있는 기능을 지원해야 합니다. 이러한 환경, CPU의 기능상의 제한으로 real-time Trace를 사용할 수 없을 때 FDX 기능을 활용할 수 있습니다.

SW Trace를 사용하기 위해 TRACE32 는 아래 항목을 지원합니다.

• A general trace format for a software trace located in the target RAM.

• Configuration and display commands for the software trace in the TRACE32 software

(command group: FDX).

• Predefined algorithms to operate the software trace from the target program.

TRACE32 API에 의해서 Trace 데이터가 RAM에 저장되며, 이 정보를 Powerview 내에서 FDX 명령어 그룹을 사용하여 확인 할 수 있습니다.

 

FDX 기능 설정 순서

소스, 헤더파일 추가

기존의 프로젝트에 FDX 기능 구현을 위한 소스코드를 작성해야 합니다.

~~demo/<core>/fdx 폴더에 예제코드가 제공되며, 아래의 소스, 헤더파일을 빌드환경에 추가합니다.

Eg. 인피니언 Tricore/TASKING 컴파일러 경우 : T32fdx.c t32fdx.h t32fdxtc.c 파일 추가

소스 코드 구현 / 빌드

Data trace 기능을 사용할 소스파일에 아래와 같이 header파일을 include하고,

Trace 데이터를 생성할 코드 시점에 T32_Fdx_TraceData( ) 함수를 추가한뒤 컴파일 합니다.

T32 PowerView 기능 설정

TRACE 메뉴에서 FDX를 선택하고 나머지 설정사항을 아래 그림과 같이 설정합니다.

<설정에 상응하는 명령어>

<TRACE-FDX 설정 화면>

타겟을 동작시켜, Trace 데이터를 확인

타겟 동작결과 아래와 같이 Used 항목이 증가합니다.

소스코드내에 설정한 TRACE buffer 사이즈에 따라 Trace 데이터 사이즈를 조정할 수 있습니다.

Trace 메모리를 증가하려면 아래와 같이 t32fdx.c 파일 내의 버퍼사이즈를 수정하면 됩니다.

#define T32_FFDX_TRACE_BUFSIZE 10000

FDX 결과 확인

타겟 코드 내의 API 에 의해 생성된 trace 데이터를 FDX.list 창을 통해 확인 할 수 있습니다.

추가

cpu에서 DCC 를 지원하는 경우, Dualport 기능을 활용하여 타겟을 멈추지 않고 Trace 내용을 분석할 수 있습니다.

해당 기능에 대한 추가 문의는 기술지원을 요청하시기 바랍니다.