文件名称:调试特性概览-netfpga-1g-cml: kintex-7 fpga开发板 用户手册
文件大小:6.52MB
文件格式:PDF
更新时间:2024-06-29 04:47:45
Cortex-M3
15.1 调试特性概览 一直以来,单片机的调试不是很突出的主题,很多山寨点的程序在开发中,甚至都没有调试的 概念,而只是把生成的映像直接烧入片子,再根据错误症状来判断问题,然后修改程序重新烧,周 而复始,直到问题解决或放弃为止。能够格算得上调试的活动,至少也是设置断点、观察寄存器和 内存、监视变量等。使用仿真头和 JTAG(如 AVR),可以方便地实现这些基本的调试要求。在开发 比较大的应用程序时,强劲的调试手段是非常重要的。当 bug复杂到无法分析时,只能用调试来追 踪它。如果没有调试手段,简直就束手无策。 正因为此,在 CM3 中,调试机能突然在一夜之间,就从丑小鸭变成了白天鹅,得到了登峰造极 般的,令人非常惊艳的强化。CM3 提供了多种多样的调试模型和调试组件,很多想到的和没想到的 调试方式这里都有,让人惊叹“原来调试还可以做到这种程度”。为了方便进一步学习,我们把 CM3 丰满的调试功能分为两类,每类中都有更具体的调试项目,如下所列: 侵入式调试(这也是基本的调试机能) a) 停机以及单步执行程序 b) 硬件断点 c) 断点指令(BKPT) d) 数据观察点,作用于单一地址、一个范围的地址,以及数据的值。 e) 访问寄存器的值(既包括读,也包括写) f) 调试监视器异常 g) 基于 ROM的调试(闪存地址重载(flash patching) ) 非侵入式调试(大多数人更少接触到的,高级的调试机能) h) 在内核运行的时候访问存储器 i) 指令跟踪,需要通过可选的嵌入式跟踪宏单元(ETM) j) 数据跟踪 k) 软件跟踪(通过 ITM(指令跟踪单元)) l) 性能速写(profiling)(通过数据观察点以及跟踪模块) 可见,我们以前最常用的调试都属于侵入式调试。所谓“侵入式”,主要是强调这种调试会打 调试特性概览 CoreSight技术概览 调试模式 调试事件 Cortex-M3中的断点 调试时访问寄存器 内核的其它调试特性