MDSTECH
TRACE32
TRACE32 Solution
TRACE32 Trace Solution
TRACE32 More Product
TRACE32 Software Solution
Why TRACE32?
교육신청
정규교육
교육과정 안내
교육장 안내
교육설문
자료실
TRACE32 소프트웨어
TRACE32 매뉴얼
iTSP
TRACE32 영상
인증서
고객지원
뉴스레터
Q&A
FAQ
원격지원
검색창
검색버튼
회원가입
로그인
TRACE32
TRACE32 Solution
TRACE32 Trace Solution
TRACE32 More Product
TRACE32 Software Solution
Why TRACE32?
교육신청
정규교육
교육과정 안내
교육장 안내
교육설문
자료실
TRACE32 소프트웨어
TRACE32 매뉴얼
iTSP
TRACE32 영상
인증서
고객 지원
뉴스레터
Q&A
FAQ
원격지원
사이트맵 보기
GTL setup for Emulator debug 문서 원본 보기
←
GTL setup for Emulator debug
이동:
둘러보기
,
검색
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게만 가능합니다:
사용자
문서의 원본을 보거나 복사할 수 있습니다:
<h2>GTL Configuration</h2> <p>Emulator Debug 환경에서는 기본적으로 개발환경에 따라 다음 3가지 환경을 구성할 수 있습니다.</p> <p><span style="font-size: large;"> 1) SMP 또는 Single core debugging 환경 : 아래 Configuration 1 참조</span></p> <p> - 가장 간단하며 Emulation Host와 TRACE32 PowerView가 같은 Host상에 위치합니다.</p> <p><span style="font-size: large;"> 2) AMP debugging 환경 : 아래 Configuration 2 참조</span></p> <p> - Emulation Host와 TRACE32 PowerView가 같은 Host상에 있으나 AMP 지원을 위해 여러개의 PowerView를 실행합니다.</p> <p><span style="font-size: large;"> 3) AMP debug 환경 및 Network Access debugging : 아래 Configuration 3 참조</span></p> <p> - Emulation Host와 TRACE32 PowerView가 각각 별도의 Host에서 동작하므로 Network을 통해 연결됩니다. 따라서</p> <p> TRACE32 PowerView를 개발자 PC에서 실행하여 연결할 수 있으므로 매우 간편하게 사용할 수 있습니다.</p> <p> </p> <ul> <li> <h3>Configuration 1</h3> </li> </ul> <p><img src="/data/wiki/2016-06-28/1467077922.png" alt="" width="600" /></p> <ul> <li> <h3>Configuration 2</h3> </li> </ul> <p><img src="/data/wiki/2016-06-28/1467077944.png" alt="" width="600" /></p> <ul> <li> <h3>Configuration 3</h3> </li> </ul> <p><img src="/data/wiki/2016-06-28/1467077998.png" alt="" width="600" /></p> <p> </p> <h2>GTL debug environment 설정</h2> <p>상기 3가지 동작 Mode는 TRACE32 실행 시 기본적으로 참조하는 config.t32 파일의 <strong>PBI 설정</strong>에 따라 결정되며</p> <p>각 동작 Mode의 설정은 다음과 같습니다.</p> <ul> <li> <h3>Setup for Configuration 1</h3> </li> </ul> <p><span> PBI=MCILIB ; configure system to use hostmci.so</span></p> <p> </p> <ul> <li> <h3>Setup for Configuration 2</h3> </li> </ul> <p><span> PBI=MCISERVER </span><span>; set up the usage of hostmci.so and </span><span>open</span></p> <p><span> PORT=30000 </span><span>; server at 30000 for the first instance</span><span>.</span></p> <p><span> INSTANCE=AUTO </span><span>; consecutive number of </span><span>instance for AMP setup</span></p> <p> </p> <ul> <li> <h3>Setup for Configuration 3</h3> </li> </ul> <div> 본 설정은 두가지 고려사항이 필요합니다. 상기 그림에서와 같이 Emulation Host side에서는 TRACE32 PowerView의</div> <div> 디버그 명령을 받아 Emulator에 전달하는 MCI server라고 하는 Module을 먼저 실행해 주어야 하며 다음으로</div> <div> PowerView를 다음 설정으로 설정한 후 실행하게 됩니다. </div> <div><strong> * Invoke MCI-server first in Emulation Host side</strong></div> <p><span> >> </span><span>./</span><span>t32mciserver port=30000 ; start t32mciserver at port 30000</span></p> <div><strong> * CONFIG.T32 for Trace32 debugger side</strong></div> <p><span> PBI=MCISERVER </span><span>; set up connection to </span><span>t32mciserver</span></p> <p><span> NODE=192.168.0.1 </span><span>; connect to IP 192.168.0.1 </span></p> <p><span> PORT=30000 </span><span>; at port 30000</span></p> <p><span> INSTANCE=AUTO </span><span>; consecutive number of </span><span>Trace32 instance for AMP setup</span></p> <p><span><br /></span></p> <h2>TRACE32 PowerView 실행 후 Emulator 연결</h2> <p>TRACE32 사용 시 Physical JTAG 디버그 환경과 다른 점은 오직 Emulator 연결을 위한 설정만 다릅니다. 즉 기존에 사용하던</p> <p>.cmm Script들을 그대로 사용할 수 있으며 GTL관련 내용만 추가하면 되겠습니다.</p> <p> </p> <ul> <li> <h3><span style="font-size: 1.17em;">Physical JTAG 디버그 환경에 GTL을 사용하기 위해 추가할 설정</span></h3> </li> </ul> <p><span style="white-space: pre;"> </span>아래 기술된 내용 중 밤색 구문들은 GTL환경에서 emulator와 연결하기 위한 설정입니다.</p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>SYStem.CONFIG.DEBUGPORT GTL0</span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.GTL.DISCONNECT <span style="color: #000000;">; disconnect if still connected</span></span></p> <p> </p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.GTL.MODELCONFIG "TIMEOUT=10|PORT=20000|NODE=127.0.0.1|PACKLEN=1024“ <span style="color: #000000;">; optional</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.GTL.MODELNAME "jtag_gtl_bfm“ <span style="color: #000000;">; optional</span></span></p> <p> </p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>SYStem.GTL.LIBname "lib_gtl1.so“</span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>SYStem.GTL.JTAGPROBENAME “JTAGProbe0” <span style="color: #000000;">; for JTAG transactor</span></span></p> <p><span style="white-space: pre; color: #993300;"> </span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>; SYStem.CONFIG.* </span><span style="color: #000000;">; ARM specific command</span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.CONFIG.DAPNAME “SWD_DAP0“ <span style="white-space: pre;"> </span><span style="color: #000000;">; for DAP transactor </span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.CONFIG.DEBUGBUSNAME "APB_DAP0“ <span style="white-space: pre;"> </span><span style="color: #000000;">; for APB transactor to debug, DAP: class</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.CONFIG.MEMORYBUSNAME "AHB_DAP0“ <span style="color: #000000;">; for AHB transactor for real time access(E:)</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.CONFIG.APBNAME “APB_DAP0” <span style="white-space: pre;"> </span><span style="color: #000000;">; define APB transactor for APB: class</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.CONFIG.AXINAME “AXI_DAP0” <span style="white-space: pre;"> </span><span style="color: #000000;">; define AXI transactor for Z(N)AXI: class</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.CONFIG.AHBNAME “AHB_DAP0” <span style="color: #000000;"> <span style="white-space: pre;"> </span>; define AHB transactor for Z(N)AHB: class</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>; optional for below</span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.GTL.DMANAME “DMA_transactor” <span style="color: #000000;">; define DMA transactor for Data.LOAD * /GTLDMALOAD</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.GTL.TransactorConfig “user defined string for transactor configuration” “User String”</span></p> <p> </p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>SYStem.VT.TimeinTargetTime ON <span style="color: #000000;"> ; Select the time ref. between Host and Target(Emulator) for Timeout</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>SYStem.VT.PauseinTargetTime ON<span style="color: #000000;"> ; Select the time ref. between Host and Target for Wait()</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.VT.HardwareTimeout ON <span style="color: #000000;">; ON(Enable), En/disable Transactor operation timeout</span></span></p> <p><span style="white-space: pre; color: #993300;"> </span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.VT.TimeScale 1.0 <span style="color: #000000;">; Time scale for Timeout and Wait(), wait time=TS*PS*timevalue</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.VT.PauseScale 1.0 <span style="color: #000000;">; Time scale for Wait(), wait time=TS*PS*timevalue</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.VT.HardwareTimeoutScale 1.0 <span style="color: #000000;"> ; prolong/shirink Transactor opearation timeout</span></span></p> <p><span style="white-space: pre; color: #000000;"> </span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.VT.MaxTimeout 10us <span style="color: #000000;">; absolute maximum time for Timeout</span></span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>;SYStem.VT.MaxPause 10us <span style="color: #000000;"> ; absolute maximum time for Wait() time</span></span></p> <p><span style="white-space: pre; color: #993300;"> </span></p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>SYStem.GTL.CONNECT <span style="color: #000000;"> ; connecting GTL-plug-in</span></span></p> <p> </p> <p><span style="white-space: pre;"> </span>SYStem.CPU CortexA7MPcore</p> <p><span style="white-space: pre;"> </span>SYStem.CONFIG COREBASE 0x80090000</p> <p> <span style="white-space: pre;"> </span></p> <p><span style="white-space: pre;"> </span>SYStem.CONFIG.DEBUGACCESSPORT 1.</p> <p> <span style="white-space: pre;"> </span></p> <p><span style="white-space: pre;"> </span>SYStem.JtagClock 300KHz</p> <p><span style="white-space: pre;"> </span>SYStem.Option.ResBreak OFF</p> <p><span style="white-space: pre;"> </span>SYStem.Option.EnReset ON</p> <p><span style="white-space: pre;"> </span>SYStem.Option.WaitReset 100.ms</p> <p> </p> <p><span style="white-space: pre;"> </span>SETUP.UpdateRATE 3s</p> <p><span style="white-space: pre;"> </span>MAP.UpdateOnce ; TRACE32 updates the data of the opened window only one time</p> <p><span style="white-space: pre;"> </span>MAP.NoUpdateOnce 0x10008000++0xFFF ; define normal update area</p> <p> </p> <p><span style="color: #993300;"><span style="white-space: pre;"> </span>SYStem.DETECT.DaisyChain<span style="color: #000000;"> ; connecting GTL-plug-in, if GTL is not connected</span></span></p> <p> SYStem.Mode.Up<span style="white-space: pre;"> </span>;or SYStem.Mode.Attach ; connect the emualtor targe(DUT)</p> <p><span style="white-space: pre;"> </span>ENDDO </p> <p>위 Script를 실행하게 되면 Emulator내에서 Emulation되고 있는 Core가 연결되게 됩니다.</p> <p> </p> <ul> <li> <h3><span style="font-size: 1.17em;">느린 Emulator 환경에서 유용하게 사용할 수 있는 Optimization Command</span></h3> </li> </ul> <p>TRACE32 PowerView는 개발자로 하여금 타깃의 현재 상태를 명확히 볼수 있도록 내부적으로 초당 수십회의 타깃 상태정보를 읽어</p> <p>윈도우 창을 Update하게 됩니다. 이러한 Emulator와 같은 특수한(느린) 환경에서 원활한 디버그 환경으 최적화 할 수 있도록 다음과</p> <p>같은 명령들을 제공하고 있습니다.</p> <p> </p> <p><strong>SETUP.UpateRATE [time|value]</strong></p> <p>-SETUP.URATE 250ms ; Screen will be updated every 250ms</p> <p>-SETUP.URATE 4 ; 4 times per second</p> <p> </p> <p><strong>SYStem.POLLING SLOW</strong></p> <p>-System state is polled slowly, SYStem.POLLING DEFault in default</p> <p><strong>MAP.UpdateOnce [address range]</strong></p> <p>-Only one time update for specified address after Break and Step/Over/Go till</p> <p>-Used for memory area</p> <p>-</p> <p><strong>MAP.NoUpdateOnce [address range]</strong></p> <p>-Depend on SETUP.URATE command for the address range</p> <p>-Used for SFR area</p> <p> </p> <p><strong>Data.LOAD.ELF *.ELF /VM</strong></p> <p>-Load executable file to VM: area only</p> <p>-</p> <p><strong>Data.LOAD.ELF *.ELF /PlusVM</strong></p> <p>-Load executable file to both target and VM: memory</p> <p> </p> <p><strong>Data.LOAD.ELF *.ELF /GTLDMALOAD</strong></p> <p>-Load executable file to the address via DMA transactor(Backdoor)</p> <p> </p> <p><strong>Data.List VM:</strong></p> <p>-Data.List window accesses only VM: memory</p> <p><strong>Onchip.Access VM</strong></p> <p>-Use the code in VM: memory for trace analysis</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p>
GTL setup for Emulator debug
문서로 돌아갑니다.
둘러보기 메뉴
개인 도구
로그인
이름공간
문서
토론
변수
보기
읽기
원본 보기
역사 보기
행위
검색
TRACE32 Dummy
TRACE32
iTSP User's Guide
aTSP User's Guide
Linux Debugging
Debugging Tips
Trace Analysis
Virtual Target
TRACE32로 바라본 ARM
TRACE32 FAQ
TRACE32 Trouble Shooting
TRACE32 Software Update
Software Revision History
DT10 / DT-Win
다운로드
DT10 Evaluation
DT-Win Evaluation
TestPoint 삽입 Error
Build Error
DT10 FAQ
도구
여기를 가리키는 문서
가리키는 글의 바뀜
특수 문서 목록
문서 정보