embeded/DSP C2000 Ti2018. 2. 12. 12:29

예전에 이야기 들었던 환상적인(?) 디버깅이 바로 TRACE 였던 듯

JTAG로는 단순(?)한 breakpoint 정도 밖에 못하는데

TRACE를 쓰면 실시간으로 호출되는 프로세스의 사용 시간이라던가

장치에 따라서는 Logic Analyzer를 포함하기에 비쌀수 밖에 없겠구만?


20pin 이라고 다 되는건 아니고

SWO/SWD를 지원하거나 ETM Connector를 지원해야 Trace가 가능 할 것으로 보인다.

[링크 : https://www.arm.com/files/pdf/AT_-_Advanced_Debug_of_Cortex-M_Systems.pdf]

[링크 : http://trace32.com/wiki/index.php/ARM_ETM_Trace와_PowerTrace]


표현이 다르긴 한데.. ETM이나 ETB로 표기되나보다(아니면 특허로 인해서 명칭을 다르게 하거나)

XDS560 Trace 이야기는 나오는데 XDS510USB는 자사 홈페이지 외에는 Trace 관련 내용이 안보이네

  • F24xx
  • C54xx
  • C67xx
  • C62xx
  • C642x
  • C64x+
  • C674x
  • DaVinci™
  • TMS470
  • OMAP™
  • F28xx
  • C55xx
  • C672x
  • C641x
  • C645x
  • DM64x
  • DM355
  • TMS570
  • Cortex™
  • Advanced emulation controller provides high performance
  • Supports Embedded Trace Buffer (ETB) on selected TI devices
  • Operates off PC/laptop USB port, no internal adapter required
  • 14-pin JTAG header 

[링크 : http://www.spectrumdigital.com/xds510-usb-jtag-emulator/]

[링크 : http://processors.wiki.ti.com/index.php/XDS_Target_Connection_Guide#JTAG_header_information]


어!? ETB 지원이 없는 목록에 C28x가 포함이네.. ㅠㅠ

Device Support

Please check your datasheet for details. The Embedded Trace buffer is available and has been used on the below example devices:

  • ARM926: DM644x, DM646x, DM33x, DM35x, DM36x, OMAP-L13x, AM17x, AM18x.
  • ARM11: OMAP2420, OMAP2430
  • Cortex-A: all AM devices (AM335x, AM35xx, AM37xx, AM38xx), DM37xx, DM81xx, OMAP34xx, OMAP35xx, OMAP44x.
  • Selected C6000 devices: TNETV3020, TCI648x, TCI66xx, C66xx
  • DSP+ARM: C6A816x (single shared ETB)
  • Devices with NO ETB support: Cortex-M, Cortex-R, C645x, C642x, DM64x, DM643x, C64x, C62x, C67x, C55x, C54x, C28x, C24x. 

[링크 : http://processors.wiki.ti.com/index.php/Embedded_Trace_Buffer]

[링크 : http://processors.wiki.ti.com/index.php/Debugging_With_Trace#How_and_when_to_use_trace:]


약자들의 향연! 그나저나.. ETB는 없어도 ITM은 있는데 printf 스타일 디버깅은 가능하다는건가?

아니면 TPIU라는걸 통해서 트레이스 가능하다는건가?

– Full-featured debug solution

• Serial Wire JTAG Debug Port (SWJ-DP)

• Flash Patch and Breakpoint (FPB) unit for implementing breakpoints

• Data Watchpoint and Trigger (DWT) unit for implementing watchpoints, trigger resources,

and system profiling

• Instrumentation Trace Macrocell (ITM) for support of printf style debugging

• Trace Port Interface Unit (TPIU) for bridging to a Trace Port Analyzer


[링크 : http://www.ti.com/lit/ds/symlink/lm3s1607.pdf]


ITM은 printf 대신에 사용하고, 몇줄 쓰지 않아서 Cortex-R 등에서 유용하게 간접적으로 쓸 수 있는 방법이다

[링크 : http://www.epnc.co.kr/news/articleView.html?idxno=45715]

'embeded > DSP C2000 Ti' 카테고리의 다른 글

TMS320 보드 버전  (0) 2020.02.18
TMS320 DSP 준비..  (0) 2020.02.16
TMS320F2808 XDS510USB/XDS510PP+  (0) 2018.02.12
SWD / RTDX / HSRTDX 속도 비교  (0) 2018.02.12
xds100 510 560  (0) 2018.02.10
Posted by 구차니