JTAG技术原理(菊花链)

5880阅读 0评论2015-04-02 smilemorning
分类:嵌入式

JTAG技术俗称边界扫描技术,是近代发展起来的高级测试技术。中国通信人博客KR$Tet$RyLbq

 

2_6u/_H ?q!qW|5k0

    随着电子技术的高速发展,电路已经进入超大规模时代,芯片的封装技术也日新月异,从最初的DIPQFP,已经当今的BGA,电路的物理可测试性正在逐渐消失。中国通信人博客 j4C/h"zQT%a i8ZY,T

    为了寻找更先进的测试技术,1985年,IBMAT&TTexas InstrumentsPhilipsSiemensAlcatelEricsson等几家公司联合成立了JETAG(Joint European Test Action Group欧洲联合测试行动小组),并提出边界扫描技术。通过存在于器件输入输出管脚与内核电路之间的BSC(Boundary Scan Cell)对器件及其外围电路进行测试。

[0eG2WW)B0

1986年,一些欧洲之外的其他公司加入该组织,JETAG组织的成员已不仅仅局限在欧洲,所以该组织名称由JETAG更改为JTAG

(x1H9ubVJ]6H3FV0

    1990年,IEEE(Institute of Electrical and Electronics Engineers,美国电气和电子工程师协会)正式承认JTAG标准,命名为IEEE1149.1-1990

RB{y5x2b?R0

 

)[!V@{jf m5X0

    JTAG主要有以下几个方面应用:中国通信人博客1?&Uq K Z,B&O

    1).互连测试。判断互连线路是否存在开路、短路或固定逻辑故障。中国通信人博客Xbr n&nE

    2).可编程器件的程序加载。如FLASHCPLDFPGA等器件的加载。

a`9]!ce W0

    3).电路采样。器件正常工作时,对管脚状态进行采样观察。



JTAG测试一般使用标准的TAP(Test Access Port)连接器,如下图所示。 ?%M#q-u3x1\+d:e y0

   

A,l7UTc D0

    A).1号脚为TCKJTAG测试参考时钟,由JTAG主控制器提供给被测试器件,该信号需要下拉处理,下拉电阻不能小于330ohm,一般选择1Kohm。之所以TCK要下拉处理,是因为JTAG测试规范规定:在TCK为低电平时,被测试器件的TAP状态机不得发生变化。所以,默认状态下,TCK必须为低电平,使TAP状态机保持稳定。最小驱动电流为2mA中国通信人博客Y)Z'Df;m5p?

0[,Iw%y-uE;htc0

    B).2号脚为GND。使用时直接连单板的GND即可。中国通信人博客o/^}j*t/rh

中国通信人博客(dDr:k:L i(D6?

    C).3号脚为TDOJTAG测试数据输出管脚,JTAG主控制器从此管脚输出测试数据给被测试器件,JTAG主控制器的TDO接被测试器件的TDITDOTCK的下降沿输出。JTAG测试规范没有规定如何处理TDO管脚,一般情况下悬空即可,也可以通过4.7Kohm电阻上拉到VCC,已增加驱动TDO的驱动能力。中国通信人博客1I i.r!}bEyOt

    D).4号脚为VCC。连接电源,一般为3.3V/2.5V/1.8V等,具体看芯片说明。在这里特别说明下,在实际使用中,很容易将2号脚的GND与此VCC接反,导致JTAG不可用,所以,大家在设计审查时一定要特别关注这个地方。以免因低级错误导致设计改板。中国通信人博客-{#y:m6x#}b3L*j

    E).5号脚为TMSTMSTest Mode Select的缩写,作用是进行测试模式选择,由JTAG主控制器输出给被测试器件。被测试器件在TCK的上升沿才TMS信号进行采样,根据采样结果来判断是正常模式还是JTAG测试模式(TMS=0”为正常模式,TMS=1”为JTAG模式)中国通信人博客#N.G#y7|;_-sTM;e

    该管脚需要上拉处理,上拉电阻不小于470ohm,一般选取4.7Kohm。之所以要上拉处理,是因为JTAG测试规范规定:当TMS为高电平状态持续5TCK时钟周期时,TAP状态机必须回归到复位状态上,不管当前处于何种状态。为了让TAP在非测试时间里保持在复位的待命状态,所以将TMS上拉,使其默认状态为高电平。最小驱动电流为1mATMS的频率一般在10MHz以下。

U^?@wf5A [D0

    F).6号脚为NCNot Connect的意思,该管脚为定义,使用时悬空即可。中国通信人博客 }+?FL%Qt b#m

    G).7号脚为/TRSTTAP状态机复位信号。由JTAG主控制器输出到被测试器件。该信号需要下拉处理,下拉电阻不小于330ohm,一般选取1kohm中国通信人博客 [~o[A

    为了保证器件的正常功能,上电时需要使TAP状态机复位,这样就不会因为TAP状态机的状态不定而影响芯片的正常功能。通过电阻下拉到GND后,所有被测试芯片的TAP状态机一直处于复位状态。/TRST为可选信号(因为TMS上拉已经可以保证TAP状态机处于复位状态),一般CPLD/FPGA等逻辑器件的JTAG接口没有提供此信号。

W{ W%p9\q0

    H).8号脚为/DWDirect Write的意思,由JTAG主控制器输出到被测试器件。该信号一般在对JTAG写入速度要求很高的情况下使用,该信号有效时,JTAG写入时可以跳过很多中间状态,直接写入数据。该信号一般很少使用。

U'OKKV3V"_0

    I).9号脚为TDITest Data InputJTAG主控制器的TDI接被测试器件的TDOJTAG主控制器会在TCK的上升沿对TDI信号进行采样。该信号需要上拉处理,上拉电阻要求不小于1Kohm,一般选取4.7Kohm。之所以要上拉处理,是因为JTAG测试规范中规定:当从TDI接收到的数据为全“1”指令时,TAP状态机会跳转到bypass状态。为了在出错时让TAP处于旁路状态,所以将TDI上拉,使其默认状态为高电平。中国通信人博客7b,~Kh2SO

    J).10号脚为GND。使用时接单板地即可。

JTAG测试时,TCKTMSTDITDO四个信号为必须,只要有这四个信号,即可完成JTAG测试工作,/TRST为可选信号。分析上图可知,与测试有关的信号全部在奇数脚(13579),偶数脚(246810)均为VCCGNDNC/DW等辅助或无用引脚。

Nq[:SI2l(y2Ng0

 中国通信人博客q%GG7Ss0]

    目前,一些规模较大的IC器件基本上都提供JTAG接口,所以,一块单板上会有很多JTAG测试口,如何将这些测试口连接起来呢?中国通信人博客-v&{@T!q` M#t9O

目前有三种连接方式:串行方式、并行方式和独立方式。

!H lO:rv)KR2Abv"sQ0

中国通信人博客d'e1Nq V&HD8P:O

   纵观当前主流JTAG设计,以串行方式的菊花链结构最为流行。菊花链结构示意图如下所示。(点击看清楚大图)

"@!r%H+O$tP0

中国通信人博客9Vt)l{0|oXn XA

    对于一个简单的单板,一条JTAG链就可以满足测试要求,但是,对于类型ATCA这样的系统来说,就需要系统级的JTAG架构来将系统上的所有单板连接起来进行系统管理,这就需要用JTAG控制器和JTAG桥片来连接。如下图所示。

@x/EJ%Dsz0

中国通信人博客Y~q b_n/_

    目前,有很多IC厂商都有JTAG主控制器和桥片产品,如National SemiconductorSCANSTA101SCANSTA111SCANSTA112TISN74LVT8986SN54ABT8996MAXIMDS26900等,大家可以根据自己的设计需求选择合适的JTAG主控制器和桥片。另外,告诉大家一个非常好芯片查询网站:,这个网站上几乎可以查到所有的芯片资料。中国通信人博客4P$M Q0H!o*r

 

^X*r2Q t@;@7Q0

    标准JTAG TAPTAP ControllerDR(数据寄存器)IR(指令寄存器)等模块组成,如下图所示。(点击查看清楚大图)

ec.bBL+Zz7G^-q0

FP)o4]u0
 :J sI0j[ u0
 

中国通信人博客NN8Qi

上一篇:Linux设备模型之platform总线
下一篇:基于Linux内核SPI子系统工作机制