相关服务

  • 《现代电子技术》2007年第6期摘录:刘文超等:基于JTAG的ARM

如发现有乱码,请点击下面链接浏览原文
正文摘录:

刘文超等:基于JTAG的ARM7TDMI处理墨翊试厦理壁塞堡控制器和寄存器提供测试参考。TMS:TAP控制器的测试模式选择信号,控制测试接口状态机的操作。TDI:JTAG指令和数据寄存器的串行输入端,给边界扫描链或指令寄存器提供数据。TDO:JTAG指令和数据寄存器的串行输出。使用TAP接口,对DR的访问一般过程是:通过IR,选定一个需要访问的DR;把选定的DR连接到TDI和TDO之间;由TCK驱动,通过TDI,把数据输入到选定的DR中;同时把选定的DR中的数据通过TDO读取出来。为了正确地访问DR,在整个访问过程中需要发送一系列TMS信号,使TAPController处于对应的状态。TAPController的状态如图2所示。图2TAPController状态转换图1.3JTAG的指令和寄存器在调试中用到的常用的指令及相关寄存器包括指令寄存器、BYPASS指令和Bypass寄存器和、IDCODE指令和DeviceIdentification寄存器、SCANN指令和ScanPathSelect寄存器、INTEST指令。其中SCANN指令将ScanPathSelect寄存器连接到TDI和TIX)之间。在CAPTURE—DR状态下,固定值1000B被加载到该寄存器;在SHIFT—DR状态下,要访问扫描链的ID从TDI移入该寄存器,1000B从TDO移出;在UPDATE—DR状态下,选定的扫描链被连接到TDI和TD0之间。INTEST指令将指定的扫描链置于测试模式。在CAPTURE—DR状态下,从ARM7TDMI处理器的输出10值加载到扫描链;在SHIFT—DR状态下,新的测试数据从TDI移入,加载的输出值从TDO移出。根据TDI,HostcomputerDevelopmentSystemnmningARMSLContainingARM7TDMI图3典型的调试系统2ARM调试系统的构成ARM调试系统包括3部分:(1)调试主机运行调试软件的计算机。调试主机可以使用设置断点等高级指令。(2)协议转换器调试主机发出的高级指令与ARM7TDMI的JTAG低级指令的转换接口。(3)调试目标含ARM7TDMI处理器的开发板。在读取ARM7TDMI处理器的ID和程序的下载调试中,由于程序比较简单,可以在调试主机部分完成协议的转换。从调试主机的并口发送转换后的JTAG信号,通过WIGGLER—JTAG与LPC2210的JTAG管脚连接。实际的调试系统如图4所示。3ARM调试的实现根据JTAG调试原理,我使用VC/MFC分别完成了读取ARMTTDMI处理器的ID和程序的下载调试的代码。3.1读取ARM7TDMI处理器的ID实现流程如下:(1)加载winio.dll。在WindowsNT中,用户模式程序不能直接访问端口,可以通过加载winio.dll实现对端口的访问。(2)编写jtag端口函数,实现JTAG的TCK,TMS,TDI,TDO和TRST接口信号的控制。(3)编写TAP状态转换函数。实现访问寄存器操作中TAPController的状态转换。调试主机WIGGLERJTAGSmartARM2200图4实际的调试系统

阅读此文(图):   点击此处在线翻阅