欢迎来到天天文库
浏览记录
ID:48080350
大小:3.41 MB
页数:55页
时间:2020-01-13
《JTAG调试原理.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、JTAG调试原理目录一、JTAG基本知识1.1、什么是JTAG1.2、JTAG的作用1.3、JTAG调试结构二、JTAG的工作原理2.1、两个重要概念:边界扫描和TAP2.2、JTAG的状态机2.3、ARM7TDMI内核结构2.4、JTAG扫描链结构及工作过程2.5、EmbeddedICE-RTLogic的结构2.6、EmbeddedICE的断点/观察点设置三、JTAG常用指令一、JTAG基本知识1.1、什么是JTAGJTAG是JointTestActionGroup(联合测试行动组)的缩写,是IEEE1149.1标准。1.2、JTAG的作用使
2、得IC芯片固定在PCB版上,只通过边界扫描便可以被测试。1.3、JTAG调试结构(1)、DEBUG主控制器:运行有ARM公司或是第三方提供的调试软件的PC机。如:ARM公司提供的ADS、LINUX下的arm-elf-gdb等。通过这些调试软件,可以发送高级调试命令,如:设置/取消断点,读写MEMORY,单步跟踪,全速运行等。(2)、协议转换器(Protocolconverter)负责将Debug主控端发出的高级ARM调试命令转换为底层的ARMJTAG调试命令。Debug主控端和协议转换器间的介质可以有很多种,如:Earthnet、USB,串口,
3、并口等。Debug主控端和协议转换器间的通信协议可以是ARM公司的ANGEL标准,也可以是第三方自定义的标准。典型的协议转换器有:ARM公司的Multi-ICE,H-JTAG,JLink等。H-JTAG运行界面J-Link的运行界面(3)、调试目标机系统的调试对象。典型的ARM7TDMI内核的调试结构:二、JTAG的工作原理2.1、两个重要概念:边界扫描和TAP(1)边界扫描(Boundary-Scan):基本思想:在靠近芯片输入/输出管脚上增加一个移位寄存器单元(边界扫描寄存器)。正常状态下,边界扫描寄存器对芯片来说是透明的,所以正常的运行不
4、会受到任何的影响。调试状态下,边界扫描寄存器将芯片和外的输入输出隔离开,通过这些边界扫描寄存器可以实现对芯片输入输出信号的控制。具体控制过程如下:①、输入管脚:通过与之相连的边界扫描寄存器把信号(数据)加载到该管脚中去。②、输出管脚:通过与之相连的边界扫描寄存器“捕获”该管脚上的输出信号。注意:芯片输入输出管脚上的边界扫描寄存器单元可以相互连接起来,在芯片周围形成一个边界扫描链。该链可以实现串行的输入输出,通过相应的时钟信号和控制信号,可方便的观察和控制在调试状态下的芯片。(2)、TAP(TestAccessPort)TAP是一个通用的端口,利
5、用它可以访问芯片提供的所有DR和IR。对整个TAP的控制是通过TAPController来完成的。TAP包括5个信号接口:◆TCK(TestClockInput)JTAG时钟信号位。标准强制要求◆TMS(TestModeSelect)测试模式选择,通过该信号控制JTAG状态机的状态。TMS在TCK的上升沿有效。标准强制要求◆TDI(TestDataInput)数据输入口。所有要输入到特定寄存器的数据都是通过TDI口一位一位串行输入的(TCK驱动)。标准里强制要求◆TDO(TestDataOutput)数据输出口。所有要从特定的寄存器中输出的数据
6、都是通过TDO口串行的一位一位输出的(TCK驱动)。标准里强制要求◆TRST(TestResetInput)JTAG复位信号。标准里是可选的2.2、JTAG的状态机TAP共有16个状态机,如下图所示:每一个状态都有其相应的功能。箭头表示了所有可能的状态转换流程。状态的转换是由TMS控制的。2.3、ARM7TDMI内核结构ARM7TDMI处理器结构框图:ARM7TDMI处理器包括三大部分:◆ARMCPUMainProcessorLogic包括了对调试的硬件支持◆EmbeddedICE-RTLogic包括一组寄存器和比较器,用来产生调试异常,设置断
7、点和观察点。◆TAPController通过JTAG接口来控制和操作扫描链ARM7TDMI还提供了3个附加的信号:DBGRQ:调试请求,通过把DBGREQ置“1”,可以迫使ARM7TDMI进入调试状态DBGACK:调试确认,通过DBGACK,可以判断当前ARM7TDMI是否在调试状态BREAKPT:断点信号,这个信号是输入到ARM7TDMI处理器内核的2.4、JTAG扫描链结构及工作过程ARM7TDMI的框图提供了3条扫描链:◆ScanChain0113个扫描单元,包括ARM所有的I/O,地址/数据总线和输入/输出控制信号。此链很复杂,不易控制
8、,但包含信息丰富,可通过它得到ARM7TDMI内核的所有信息。◆ScanChain133个扫描单元,包括数据总线和一个断点控制信号。◆ScanChai
此文档下载收益归作者所有