文件名称:调试支持-netfpga-1g-cml: kintex-7 fpga开发板 用户手册
文件大小:6.52MB
文件格式:PDF
更新时间:2024-06-29 04:47:28
Cortex-M3
2.10 调试支持 Cortex-M3在内核水平上搭载了若干种调试相关的特性。最主要的就是程序执行控制,包括停 机(halting)、单步执行(stepping)、指令断点、数据观察点、寄存器和存储器访问、性能速写 (profiling)以及各种跟踪机制。 Cortex-M3的调试系统基于 ARM最新的 CoreSight架构。不同于以往的 ARM处理器,内核本 身不再含有 JTAG 接口。取而代之的,是 CPU 提供称为“调试访问接口(DAP)”的总线接口。通过 这个总线接口,可以访问芯片的寄存器,也可以访问系统存储器,甚至是在内核运行的时候访问! 对此总线接口的使用,是由一个调试端口(DP)设备完成的。DPs不属于 CM3内核,但它们是在芯片 的内部实现的。目前可用的 DPs包括 SWJ-DP(既支持传统的 JTAG调试,也支持新的串行线调试协 议),另一个 SW-DP则去掉了对 JTAG的支持。另外,也可以使用 ARM CoreSignt产品家族的 JTAG-DP 模块。这下就有 3个 DPs可以选了,芯片制造商可以从中选择一个,以提供具体的调试接口(通常 都是选 SWJ-DP)。 此外,CM3 还能挂载一个所谓的“嵌入式跟踪宏单元(ETM)”。ETM 可以不断地发出跟踪信息, 这些信息通过一个被称为“跟踪端口接口单元(TPIU)”的模块而送到内核的外部,再在芯片外面 使用一个“跟踪信息分析仪”,就可以把 TIPU输出的“已执行指令信息”捕捉到,并且送给调试主 机——也就是 PC。 在 Cortex-M3中,调试动作能由一系列的事件触发,包括断点,数据观察点,fault条件,或 者是外部调试请求输入的信号。当调试事件发生时,Cortex-M3可能会停机,也可能进入调试监视 器异常 handler。具体如何反应,则根据与调试相关寄存器的配置。 与调试相关的还有其它的绝活。现在要介绍的是“仪器化跟踪宏单元(ITM)”,它也有自己的 办法把数据送往调试器。通过把数据写到 ITM的寄存器中,调试器能够通过跟踪接口来收集这些数 据,并且显示或者处理它。此法不但容易使用,而且比 JTAG的输出速度更快。 所有这些调试组件都可以由 DAP总线接口来控制,CM3内核提供 DAP接口。此外,运行中的程 序也能控制它们。所有的跟踪信息都能通过 TPIU来访问到。