FDX Trace 기능
목차
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 내용을 분석할 수 있습니다.
해당 기능에 대한 추가 문의는 기술지원을 요청하시기 바랍니다.