凌阳教育的个人空间 https://blog.eetop.cn/204849 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

ARM的调试结构

已有 546 次阅读| 2015-12-14 20:17

嵌入式系统的调试如果使用如逻辑分析仪一类的测试仪器,则可能从外部监事嵌入式系统运行调试的方法,而无法准确地反应系统内部的实际运行状态。功能强大的嵌入式调试工具支持单步执行、设置断点等功能,可以从内部运行观察系统。

当要调试的系统是一个运行于PC机上的程序时,所有用户接口模式已准备好,并且调试器本身是运行于这台机器上的另一个软件。设置断点时,调用调试器来代替目标程序的指令。要记住原始指令,以便程序的执行越过断点时恢复这条指令。通常编译器有编译选项以产生扩展调试信息,如符号表。使用符号表,用户就可在源代码级调试程序,用源代码中的名字对变量寻址而不是用存储器地址。源代码级调试非常有用,与目标级代码调试非常有用,与目标级调试相比,它只需要对机器环境有较少了解。

1.       嵌入式调试

如果系统是嵌入式的,则调试变得更加困难。由于系统使用的是交叉开发环境,因此调试工具必须是在远程主机即宿主机上运行,并通过某种通信方式与目标机器连接。如果代码存放在ROM中,由于不能进行写操作,因此指令不能简单地由调试工具调用。

采用在线仿真器ICE是一个标准的嵌入式解决方案,在线仿真器使用仿真头完全取代目标板上的处理器,可完全仿真ARM芯片的行为,提供更加深入的调试功能。仿真器上的处理器可以是一个相同的芯片,也可以是一个有很多引脚的变型芯片。

2.       调试处理器核

ICE方法是依赖于系统中确实有能够去除并由ICE代替的处理器芯片。显然,如果处理器是一个复杂系统芯片上许多IP核中的一个,那么这一点就是不可能的。尽管使用软件模型仿真在物理实现前可去除许多设计错误,但通常在仿真时运行整个软件系统是不可能的,并且精确地描述所有实时约束也是困难的。由此看来,对整个硬件和软件系统进行调试时很有必要的。

3.       ARM调试硬件

为了提供与ICE相似的调试工具,对于运行在ROMRAM中的代码,用户必须能够设计断点和观察点,检查并修改处理器核系统的状态,观察处理器在感兴趣点活动的轨迹,而且所有这些都应有着良好用户界面的PC系统上方方便做到。ARM系统使用的跟踪机制与其他调试系统不同,它很好地解决了断点、观察点及状态监控的资源。

目标系统与主机之间通过扩展JTAG测试端口的功能来实现通信。为了方便板级测试,大多数芯片都有JTAG测试引脚。通过这些引脚测试不需要额外的专用引脚,节省了芯片的宝贵资源,以备将来使用。JTAG扫描链用于访问断点及观察点寄存器,并向处理器施加指令来访问处理器及系统的状态。

实现断点设置及观察点寄存器的硬件代价非常小,一般是产品能够接受的。主机系统运行标准的ARM开发工具,并通过一个串行口和/或并行口与目标系统通信。在主机串行与目标的JTAG端口之间有专用的协议实现通信。

除了断点和观察点事件,当系统级事件发生时,也可能希望处理器停止。

4.EmbeddedICE

ARMEmbeddedICE调试结构是一种基于JTAGARM内核调试通道,提供了传统的在线仿真系统的大部分功能,可调式一个复杂系统中的ARM核。

EmbeddedICE是基于JTAG测试端口的扩展,引入了附加的断点和观测点寄存器,这些数据寄存器可通过专用JTAG指令来访问,一个跟踪缓冲器也可用相似的方法访问。ARM核周围的扫描路径可将指令加入ARM流水线,并且不会干扰系统的其他部分。这些指令可访问及修改ARM和系统的状态。ARMEmbeddedICE具有典型的ICE功能,如条件断点、单步运行。由于这些功能的实现是基于片上JTAG测试访问端口进行测试,芯片不需要增加额外的引脚,同时也避免使用笨重的、不可靠的探针接插设备完成调试,而且芯片中的调试模块与外部的系统时序分开,它可以芯片内部的独立时钟速度直接运行。

EmbeddedICE模块包括两个观察点寄存器和控制与状态寄存器。当地址、数据和控制信号与观察点寄存器的编程数据相匹配时,也就是触发条件满足时,观察点寄存器可以中止处理器。由于比较是在屏蔽控制下进行的,因此当ROMRAM中的一条指令执行时,任何一个观察点寄存器均可配置为能够中止处理器的断点寄存器。

凌阳教育,专注嵌入式人才培养13年,完善的培养方案,强大的师资,合理的课程安排,成功从小白蜕变为嵌入式工程师。想了解凌阳教育,或者获得更多嵌入式学习资料的免费下载,请点击www.sunplusedu.com访问凌阳教育官网

 


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 0

    好友
  • 1

    获赞
  • 3

    评论
  • 3815

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-25 17:19 , Processed in 0.014724 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部