SWO trace output 에서 타임스템프 인터프리트
기술노트 40349
아키텍처:
ARM
컴포넌트:
debugger
업데이트:
2021-07-15 오후 7:33
소개
본 기술 노트는 IAR Embedded Workbench for ARM 버전 5.20을 위한 SWO trace output의 타임스탬프를 어떻게 해석하는지 간단한 예제로 보여줍니다.
배경
- 타겟 하드웨어 시스템은 72 MHz 시스템 클럭으로 실행되고 있습니다.
- SWD를 사용하여 C-SPY는 디버그 프로브와 연결되어있습니다.
- 예외가 추적되고 있습니다 (SWO Setup).
- 타임스탬프는 resolution16으로 활성화됩니다.
- 아래 추적에서, 방금 발생한 예외에 연결된 주기 값을 나타내기 위해 문자 A, B, C, D가 추가되었습니다.
편집된 추적 예
Index SWO Packet Cycles Event Value
+-------+------------+------------+-------------------------+------------+
006657 0E0F20 122725344 Exit Exception Number 15
006658 20 122725376 Timestamp synch 2
006659 0E0030 122725376 Return to Exception Number 0
006660 0E0F10 122725376 Enter Exception Number 15
006661 C09323 122797360 A Timestamp synch 4499
006662 0E0F20 122797360 Exit Exception Number 15
006663 10 122797376 B Timestamp synch 1
006664 0E0030 122797376 Return to Exception Number 0
006665 0E0F10 122797376 Enter Exception Number 15
006666 C09323 122869360 C Timestamp synch 4499
006667 0E0F20 122869360 Exit Exception Number 15
006668 20 122869392 D Timestamp synch 2
006669 0E0030 122869392 Return to Exception Number 0
계산 예
Running exception 15
B - A = 122797376 - 122797360 = 16
16/72 ~ 0.22
The time from A to B is approximately 0.22 us.
Running main program
C - B = 122869360 - 122797376 = 71984
71984/72 ~ 999.78
The time from B to C is approximately 999.78 ms.
Running exception 15
D - C = 122869392 - 122869360 =
32/72 = 0.44
The time from C to D is approximately 0.44 us.
참고사항
resolution이 16으로 설정되었으므로, 두 예외에서 사용된 실제 시간은 0.22 ~ 0.44 us 사이입니다.
좀 더 정확하게 측정하려면 타임스탬프 해상도 1을 사용할 수 있습니다. 이 예에서 예외 15는 1ms 주기 인터럽트인 것 같습니다. (인터럽트 로그, 인터럽트 로그 요약 및 타임라인 창을 사용하여 시간을 us/ms 형식으로 볼 수 있습니다.)
모든 제품 이름은 해당 소유자의 상표 또는 등록 상표입니다.