马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
传统的调试工具及方法存在过分依赖芯片引脚的特点,不能再处理器告诉运行时正常工作,并且具有占用系统资源、不能实时跟踪和设置硬件断点、价格过高等弊端。目前由于高度集成的嵌入式SoC的普遍使用,有很多动作都从不在芯片的外部I/O上体现,一些内部模块的控制、存储器的总线信号也并不完全体现在芯片的外部I/O引脚上。这种深度嵌入、软件越来越复杂的发展趋势给传统的调试工具带来了极大的挑战。调试经常是一个很大的难题,也给嵌入式开发工作带来了不便,这就需要更先进的调试技术和调试工具相配套。 为解决这一问题,在硬件和软件上设置很多断点的根本目的是能够通过断点,观察到所有的或者任何希望看到的内部结构。设置最大的断点数目等效于单步执行,即一次执行一条指令,并观察内部的状态。嵌入式在复杂SoC中、基于ARM核的调试系统代表着当今片上调试技术的前沿。 基于JTAG仿真器的调试时目前ARM开发采用最多的一种方法。大多数ARM设计采用了片上JTAG接口,并将它作为其测试和调试方法的重要组成。JATG仿真器,也称为JATG的在线调试器ICD,是通过ARM芯片的JATG边界扫描口进行调试的设备。JATG仿真器连接比较方便,实现价格也比较便宜,是通过现有的JAPG边界扫描口与ARM CPU核通信,实现了完全非插入式调试,不使用片上资源,不需要目标存储器,不占用目标系统的任何端口。由于JTAG调试的目标程序时在目标板上执行,仿真更加接近于目标硬件。JATG仿真器是通过ARN处理器特有的JATG边界扫描接口与目标机通信进行调试,并可通过并口或串口、USB口等与宿主机PC通信。 基于JTAG的ARM的内核调试通道,具有典型的ICE功能,包含有EmbeddedICE模块的基于ARM的SoC芯片通过JTAG调试端口与主计算机连接。通过配置,支持正常的断点、观察点以及处理器核系统状态的访问,完成调试。 为了对代码运行过程进行实时跟踪,ARM提供了跟踪宏单元ETM,通过嵌入式实时跟踪系统,实时观察其操作过程,对应用程序的调试将更加全面、客观和真实。 ARM开发者通过Embedded ICE和ETM获得了传统意义的在线仿真器工具能够提供的各种功能。通过这些技术能够全面观察应用代码的实时行为,并且能够设置断点、检查并修改处理器寄存器和存储器单元,还总是能够严格地反链接到高级语言源代码,构成ARM完整的调试、实时跟踪的完整解决方案,并降低了开发成本。 凌阳教育,专注嵌入式人才培养13年,完善的培养方案,强大的师资,合理的课程安排,成功从小白蜕变为嵌入式工程师。想了解凌阳教育,或者获得更多嵌入式学习资料的免费下载,请点击www.sunplusedu.com访问凌阳教育官网 |