可以通过JTAG接口访问CPU的内部寄存器和挂在CPU总线上的设备(如FLASH,RAM,SOC),内置模块(如UART,Timers,GPIO等)的寄存器。如今,JTAG接口还常用于实现ISP(In-System Programmer,在系统编程),对FLASH等器件进行编程。
标准的JTAG接口是4线:TMS、TCK、TDI、TDO
·TCK——测试时钟输入;
·TDI——测试数据输入,数据通过TDI输入JTAG口;
·TDO——测试数据输出,数据通过TDO从JTAG口输出;
·TMS——测试模式选择,TMS用来设置JTAG口处于某种特定的测试模式。
·TRST——(可选引脚)测试复位,输入引脚,低电平有效。对待测芯片进行复位。
TI还定义了一种叫SBW-JTAG的接口,用来在引脚较少的芯片上通过最少的利用引脚实现JTAG接口,它只有两条线,SBWTCK,SBWTDIO。实际使用时一般通过四条线连接,VCC,SBWTCK,SBWTDIO,GND,这样就可以很方便的实现连接,又不会占用大量引脚。
ST也有类似的SWJ-DP(Serial wire JTAG debug port)。只用两根线SWDIO 和SWCLK实现JTAG功能。其中SWDID和JTAG的TMS管脚复用,SWCLK和JTAG的TCK管脚复用。ST-LINK可以根据TMS管脚自动判断使用的时SWJ-DP方式连接还是JTAG方式。注意:只有ST-LINK可以分辨并使用SWJ接口,ULINK和JLINK不支持该接口。
TCK的工作频率依芯片的不同而不同,但其通常工作在10-100MHz(每位10-100ns)。
TCK、TDI、TMS引脚上需要接一个10K的上拉电阻,而TRST需要接一个10K的下拉电阻。TI的部分DSP芯片的JTAG接口的这些管脚已经内部集成上拉或者下拉电阻,因此不需要外接。
有的JTAG口含有TRST(或叫JRST)和SRST两个复位管脚,其中TRST接在芯片JTAG口的TRST管脚,用于对待测系统的JTAG逻辑复位;SRST接在芯片RST管脚,用于对整个系统进行复位。
有的JTAG管脚还包含其他可选管脚:Vref(目标系统参考电压,一般接VCC);RTCK(测试时钟TCK返回,接TCK)等。
TI的JTAG接口还包括EMU[0..n]管脚,用于各通道的仿真触发和HSRTDX(高速数据交换)。
20 pin
14 pin
10 pin
VCC
2
1、13
2
GND
4、6、8、10、12、
14、16、18、20
2、4、6、8、
10、14
8、14
TCK
9
9
9
TDI
5
5
5
TDO
13
11
13
TMS
7
7
7
TRST
3
3
3
Vref
1
1
RTCK
11
SRST
15
4
NC
17、19
12