再上一篇:16.3 跟踪组件:仪器化跟踪宏单元(ITM)
上一篇:16.4 跟踪组件:嵌入式跟踪宏单元
主页
下一篇:16.6 闪存地址重载及断点单元(FPB)
再下一篇:16.7 AHB 访问端口
文章列表

16.5 跟踪组件:跟踪端口接口单元(TPIU)

《Cortex-M3 权威指南》,嵌入式处理器开发教程。

如前所述,ITM, DWT和 ETM的跟踪数据都在 TPIU处汇聚。TPIU用于把这些跟踪数据格式化 并输出到片外,以供跟踪端口分析仪之类的设备接收使用。CM3的 TPIU支持两种输出模式:
 带时钟模式(Clocked mode),使用最多4位的并行数据输出端口
 串行线观察器(SWV)模式,使用单一位的SWV输出(不适用于早期版本的CM3) 在带时钟模式下,数据输出端口实际使用的位数是可编程的。这取决于两点。其一,是芯片的
封装;其二,是在应用中,提供了多少个信号引脚给跟踪输出使用。在具体的芯片中,通过检查TPIU
的寄存器,可以判断跟踪端口的最大尺寸。此外,跟踪数据输出的速度也是可编程的。 在SWV模式下,则使用SWV协议。它减少了所需的输出信号数,但是跟踪输出的最大的带宽也减
少了。 欲使用TPIU,需要先把DECMR.TRCENA置位,还要编程“协议选择寄存器”和“跟踪端口尺寸

寄存器”,这个工作由跟踪捕捉软件完成。

Cortex-M3 r2p0修订版

在 SWV 模式下,会使用 SWV 协议。这时,输出信号就只需要 1 个比特了,但是跟 踪输出的最高带宽也会下降。另外,在使用串行线调试协议时,SWV 模式的输出可以和 TDO 共享信号线。这样一来,哪怕使用只带有标准 JTAG 接口的入门级调试器,也可以 通过 DWT 和 ITM 来捕捉跟踪信息。