分享

JTAG和JTAG链,JTAG边界扫描

 waston 2018-02-02

1、JTAG     JTAG(Joint Test Action Group;联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。

具有JTAG口的芯片都有如下JTAG引脚定义:
TCK——测试时钟输入;
TDI——测试数据输入,数据通过TDI输入JTAG口;
TDO——测试数据输出,数据通过TDO从JTAG口输出;
TMS——测试模式选择,TMS用来设置JTAG口处于某种特定的测试模式。
可选引脚TRST——测试复位,输入引脚,低电平有效。
JTAG最初是用来对芯片进行测试的,JTAG的基本原理是在器件内部定义一个TAP(Test Access Port;测试访问口)通过专用的JTAG测试工具对内部节点进行测试。
    2、JTAG链(菊花链)
JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。
多个器件的硬件连接成菊花链结构,连接JTAG接口TDO的器件为菊花链上的第一个器件,连接JTAG接口TDI的器件为菊花链上的最后一个器件。前一个器件的TDI和后一个器件的TDO连接在一起,菊花链上所有ARM器件的TMS、TCK信号连接在一起。
3、JTAG边界扫描
扫描链
在J TA G调试当中,边界扫描Boundary-Scan 是一个很重要的概念。边界扫描的技术的思想是在输入输出的管脚上增加一个移位寄存器。当进行调试的时候将这些管脚和芯片隔离,以控制输入值和获取输出值。当正常运行的时候,这些寄存器是透明的。这些寄存器连接起来就形成了边界扫描链。一般的芯片都提供几条边界扫描链。
寄存器和管脚
JTAG 标准中有两类的寄存器:数据寄存器(DR)和指令寄存器(IR),他们都是移位寄存器。数据寄存器和边界扫描链相连控制数据的输入和输出。指令寄存器用于输入指令,控制数据寄存器的操作。Bypass寄存器也是一个一位寄存器,链接于TDI和TDO 之间,为一些操作提供更加便捷的方式。对这些寄存器的访问都是通过TAP(Test Access Port)实现的,
TAP的五个基本的信号是:
TCK (Test clock input):为TAP控制器提供时钟信号。
TDI (Test data input):数据输入信号,所有的数据按TCK时序从这个引
脚串行输入。
TDO (Test data output)数据输入信号,所有的数据按TCK时序从这个引
脚串行输入。
TMS(Test Mode Selection Input)用于控制TAP的状态模式的转换,在TCK
上升沿有效。
TRST (Test Reset Input)TAP控制其的控制信号。该信号可以通过软件复
位。
TAP 控制器
TAP控制器是一个16状态的有限状态机,为JTAG提供控制逻辑,控制进入到JTAG结构中各种寄存器内数据通信的扫描与操作。
通过TAP接口,对数据寄存器(DR)进行访问的一般的过程是:通过指令寄存器(IR),选定一个需要访问的数据寄存器;把选定的数据寄存器连接到TDI 和TDO 之间;由TCK驱动,通过TDI,把需要的数据输入到选定的数据寄存器当中去;同时把选定的数据寄存器中的数据通过TDO 读出来。
总线协议:
IEEE1149.1 规定了对测试接入接口的要求。如下所示:
14脚JTAG口的信号的时序图如下所示:

TMS和TDI信号在器件TCK的上升沿被采样.
TDO信号在TCK的下降沿被采样.
14脚JTAG 接口


4、JTAG链作用
通过JTAG链,我们可以看到被仿真芯片哪个管脚不正常, 可以加载不同的仿真文件,测试IO管脚,DDR连接,nand flash连接等。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多