1. 什么是JTAG
JTAG(Joint Test Action Group;联合测试工作组) 是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。
现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。
标准的JTAG接口是4线:TMS、TCK、TDI、TDO, 分别为模式选择、时钟、数据输入和数据输出线。
2. JTAG作用
2.1 芯片测试
JTAG最初是用来对芯片进行测试的,JTAG的基本原理是在器件内部定义一个TAP(Test Access Port;测试访问口)通过专用的JTAG测试工具对内部节点进行测试。JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。
2.2 编程
如今,JTAG接口还常用于实现ISP(In-System Programmer,在系统编程),对FLASH等器件进行编程。JTAG编程方式是在线编程,传统生产流程中先对芯片进行预编程然后再装到板上,简化的流程为先固定器件到电路板上,再用JTAG编程,从而大大加快工程进度。
JTAG接口可对DSP芯片内部的所有部件进行编程。
3. JTAG引脚定义
具有JTAG口的芯片都有如下JTAG引脚定义:
TCK--测试时钟输入;
TDI--测试数据输入,数据通过TDI输入JTAG口;
TDO--测试数据输出,数据通过TDO从JTAG口输出;
TMS--测试模式选择,TMS用来设置JTAG口处于某种特定的测试模式。
可选引脚TRST--测试复位,输入引脚,低电平有效。
含有JTAG口的芯片种类较多,如CPU、DSP、CPLD等。
JTAG内部有一个状态机,称为TAP控制器。TAP控制器的状态机通过TCK和TMS进行状态的改变,实现数据和指令的输入。
4. JTAG接口
14针
20针
部分来源:360百科
深入挖掘原理还需补充