节点文献

基于JTAG标准的通用交叉调试代理的设计和实现

【作者】 朱梅

【导师】 桑楠;

【作者基本信息】 电子科技大学 , 计算机应用技术, 2007, 硕士

【摘要】 交叉调试代理是嵌入式交叉调试系统的重要组成部分,也是使用最为普遍的一种调试方式。但无论是调试桩程序、调试服务器还是ROM Monitor、Rom Emulator这样一些交叉调试代理,它们最大的缺点是占用目标系统的资源,消耗处理器时间,造成应用程序的最终运行环境和调试环境有差异;且影响被调试程序的运行。ICE通过替代目标机处理器的方式来调试程序,能消除这一影响;但针对专门的处理器定制的ICE价格非常昂贵,使得开发成本非常高。基于片上调试技术的在线仿真器大大降低了成本,但通用性仍然不够强。因此,对基于片上调试技术的通用在线仿真器的研究仍然是一种较前沿的工作。国外的通用在线仿真器产品虽然技术较为成熟,并且稳定可靠,但价格仍然相当昂贵,而限于资金投入和市场的原因,国内很少有通用在线仿真器的研究成果。本文在分析调试代理技术、片上调试技术和基于片上调试技术的通用在线仿真器产品的基础上,借鉴通用在线仿真器的仿真调试方法,利用片上调试技术,将调试代理从目标系统中独立出来,以弥补调试代理本身的缺陷。方案中选择了目前大多数嵌入式处理器芯片都支持的JTAG标准,采用具有良好发展趋势的SOPC技术,设计了一种通用调试代理结构模型。该模型已以ARM7TDMI为目标处理器完成了验证实现过程。文中所研制的调试代理具有设置断点、单步运行、连续运行、读写寄存器、读写内存等基本仿真功能。对不同的目标处理器,只需要更改目标处理器相关部分的程序代码,而保持硬件本身以及JTAG标准实现部分代码不变,理论上可以调试任意的支持JTAG标准的目标处理器。本文所设计的调试代理具有两大特色,特色一:调试代理利用片上调试技术从目标系统中独立出来,具有独立性,避免了对目标机的影响;特色二:调试代理的通用性。它体现在两点上:一是利用SOPC技术,软硬件设计相结合来实现整个系统,使得本设计模型具有通用性;二是此调试代理可以调试所有支持JTAG标准的处理器。

【Abstract】 Cross Debugging Agent,including debugging stub, debugging server, ROM Monitor and Rom Emulator, is an important component for the embedded cross debugging system. It is also the most widely-used method. Its biggest weakness is that the resources of target system and the time of processor are occupied. It influents the executing result of target procedures because of the difference between the ultimate target environment and the debugging environment. In Circuit Emulator can eliminate this effect by replacing the target processor, but a specific ICE is needed for each target processor and the price is high. Debugging technique based on On-Chip-Debugging makes up for the weakness, while it’s not generic enough.Research of generic ICE based on OCD is still a front work. Although foreign generic ICE products are mature and stable, costs of them are still high. As the factors of fund and market, there have been very few domestic research on ICE.Based on the analysis of debugging agent, OCD technique and generic ICE products based on OCD technique, a generic debugging agent solution is proposed.It can make up for the shortage of debugging agent by separating the cross debugging agent from the target system using OCD technique. JTAG is selected as it is currently supported by the majority of embedded processor chips. By the solution, a generic debugging agent model is designed by using SOPC technology. The model is realized taking ARM7TDMI as the target processor.This generic debugging agent has the following basic functions: setting up breakpoints, single-step operation, continuous operation, reading and writing registers and memory, etc. Applying to different embedded processors, the only thing is to change the code relating to target processor in debugging agent. In the result, the debugging agent is capable to debug different kinds of target processors supporting JTAG.There are two important characteristics for this debugging agent. One is the independence. Influences are eliminated by separating the debugging agent from the target system. The other is the universality, which refers to that the model is generic and it can debug all the processors supporting JTAG.

  • 【分类号】TP368.12;TP391.9
  • 【被引频次】8
  • 【下载频次】260
节点文献中: 

本文链接的文献网络图示:

本文的引文网络