ITM(仪器跟踪宏单元)是什么?
ITM(仪器跟踪宏单元)是什么?
ITM(Instrumentation Trace Macrocell,仪器跟踪宏单元)是ARM Cortex-M处理器中内置的一种高性能调试跟踪模块,用于实时捕获程序运行时的关键数据(如变量值、函数调用、异常事件等),无需暂停CPU即可输出调试信息。以下是其核心解析:
1. 基本功能
- 实时跟踪:
通过硬件级接口(如SWO引脚)输出程序执行日志、变量变化、中断触发等数据,不影响芯片正常运作。 - 低侵入性:
相比传统断点调试(暂停CPU),ITM实现非阻塞式数据采集,适合实时系统(如电机控制、医疗设备)。 - 多数据源支持:
可同时输出软件生成的调试消息(printf
重定向)、硬件事件(如中断)、PC采样等。
2. 核心组件
- ITM模块:
ARM Cortex-M内核的硬件单元,集成在芯片内部。 - SWO(Serial Wire Output, 串行线输出)引脚:
专用单线输出引脚(与SWD调试接口复用),用于传输跟踪数据。 - TPIU(Trace Port Interface Unit, 跟踪端口接口单元):
将ITM数据转换为标准格式(如SWV或E