ADI DSP应用技术集锦
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第1章 DSP通用文选

JTAG仿真技术参考

David M.Doyle

1 引言

这篇文档(EE-68位于http://www.analog.com/ee-notes/)为ADI公司的处理器设计JTAG仿真器接口提供技术参考。ADI公司的处理器在本文中均被称为数字信号处理器(DSP)。要了解IEEE 1149.1(JTAG)标准,请看附录E:Introduction to IEEE Std. 1149.1(JTAG) Boundary Scan。

ADI设计、制造、销售各种不同类型的JTAG仿真器以供支持嵌入JTAG仿真器接口的ADI DSP使用。本文介绍的内容仅适用于当前的一系列ADI仿真器。该产品系列包括:HPPCI、HPUSB和USB仿真器。

本文档以前的版本支持ADI JTAG仿真器的早期产品,例如,Mountain-ICE、Summit-ICE、Trek-ICE、Apex-ICE和EZ-ICE。有关这篇文档中不支持的JTAG仿真器的技术资料,可以联系ADI的DSP开发工具技术支持网站(processor.tools.support@analog.com),获得旧版本的JTAG仿真器资料。

注意,新的设计不要采用低版本的EE-68做技术参考。定期到ADI的网站上查找该文档的最新版本。如果参考旧版本的EE-68所作的设计,在完成JTAG仿真时如果有问题,请将其更新。

2 JTAG仿真器接口设计

所有ADI JTAG仿真器与DSP的接口是一个有14个引脚的JTAG仿真器插头,它与JTAG仿真器接头相连。如果它没有连着JTAG仿真器,也可以通过一个可选的局部(固定在用户板上)扫描控制器连接到DSP。

所有ADI JTAG仿真器采用IEEE1149.1的扩展集标准从DSP JTAG仿真口收发数据。JTAG仿真器采用的附加信号作为来自DSP的JTAG仿真状态标志。该信号是供应商专用信号,并非IEEE1149.1规范的一部分。

下面详细介绍了ADI JTAG仿真器的设计规范,包括与用户板相连的JTAG仿真器的功能特性、电特性和机械特性的要求。

2.1 JTAG仿真器用户板插头信号

如图1和表1所示,JTAG仿真器插头有14个引脚。要与JTAG仿真器通信必须将该插头插到用户板上。JTAG仿真器插头是一个标准的双排0.025"公的方形头,间隔为0.1"×0.1",最小长度为0.235"。JTAG仿真器电缆头的引脚3特别用于防止偶然插入用户板后面的接头,修剪好用户板上插头的引脚3以使JTAG仿真器电缆的母头能够插入。

图1 JTAG仿真器用户板上的插头接口

表1 JTAG仿真器插头信号描述

注意,JTAG仿真器14引脚的母头的引脚3与JTAG电缆的一根线相连,此线与仿真器的地相连。

(1)局部边界扫描控制器

参考图1,在连接器的标号为奇数一边的信号可以由具有边界扫描控制器的用户板控制。这些信号包括边界扫描控制器JTAG信号BTMS/VDDIO, BTCK, BTDI和。上述每个信号在表1中都有描述。

注意,如果对局部边界扫描不熟悉,不知道怎么在设计中使用,可以参看附录E:IEEE Std.1149.1(JTAG)边界扫描介绍。

(2)特殊情况引脚5(BTMS/VDDIO)

引脚5(BTMS/VDDIO)在HPPCI JTAG仿真器上是一个双功能引脚。首先,当JTAG ICE没有连到JTAG头时,引脚5可以将一个可选的局部边界扫描控制器的TMS信号与用户板上DSP的TMS信号相连。在JTAG头的引脚5和引脚6之间有跳线。其次,该引脚被JTAG ICE用于自动检测用户板的DSP I/O电压(VDDIO)是否达到5V。JTAG ICE采用检测电压来确定DSP JTAG信号输入输出电平。用一个4.7kΩ的电阻将该引脚下拉至VDDIO。不要将它与VDDIO直接相连。

注意,只有HPPCI JTAG仿真器的引脚5支持电压自动检测。USB和HPUSB JTAG仿真器的引脚5仅支持BTMS功能。

(3)BTMS引脚VDDIO自动检测功能

HPPCI JTAG仿真器可以自动检测高达5V的DSP IO电压(VDDIO)。HPPCI JTAG仿真器使用BTMS/VDDIO引脚的VDDIO检测电压来调整JTAG仿真器接口输入信号上限和输出信号驱动电平到表2所示的值。当使用HPPCI JTAG仿真器时必须用一个4.7kΩ的电阻将引脚5(BTMS/VDDIO)上拉至DSP I/O电压(VDDIO)。

表2 JTAG仿真器接头的I/O特性

当使用HPUSB和USB JTAG不支持VDDIO自动检测的仿真器时,可以将引脚5直接连到用户板的局部边界扫描控制器的BTMS信号,不需要任何上拉电阻。

注意,VDDIO是用户板DSP I/O口的电压值,而不是DSP内核的电压值。当使用HPPCI VDDIO自动检测功能时,要确保连接到VDDIO的电源层是正确的。

(4)BTMS引脚边界扫描功能

当JTAG ICE没有连到JTAG头时,引脚5可以将一个可选的局部边界扫描控制器的TMS信号与用户板上DSP的TMS信号相连。在JTAG头的引脚5和引脚6之间有跳线。

有可能会将一个HPUSB或USB JTAG仿真器连接到采用具有VDDIO自动检测逻辑的HPPCI JTAG仿真器的用户板上。HPUSB或USB JTAG仿真器不会将引脚5接回仿真器,所以用户板或仿真器都不会有损伤。当采用HPUSB或USB JTAG仿真器时用户板的电压上限由用户通过Visual DSP++会话向导手动设置。

注意,当使用HPPCI JTAG仿真器时,如果JTAG ICE连接到插头,需要控制引脚5的BTMS信号使它不会被边界扫描控制器驱动。当JTAG ICE连接到插头时,如果对BTMS信号隔离失败,由于引脚5上错误的检测电压会导致JTAG ICE无法预料的行为。可以像附录B中图8和图9那样用跳线或缓冲器将BTMS信号隔离。如果使用缓冲器隔离BTMS信号,连接JTAG ICE时需要将缓冲器的输出禁用。

2.2 JTAG仿真器接头机械特性规范

这一部分对JTAG仿真器接头的机械特性规范进行了说明。

插头的长和宽至少是0.30"和0.10"。关于接头保护区域的信息可以参考图2。

图2 JTAG仿真器插槽保护区域

注意,用户板上插拔JTAG仿真器电缆的插槽高度应留出裕量。

考虑到HPPCI JTAG仿真器的电缆,高度间隙限制参考图3。HPUSB和USB JTAG仿真器的高度间隙限制参考图4。

图3 HPPCI JTAG仿真器接头尺寸规格

图4 JTAG HPUSB JTAG仿真器接头尺寸规格

2.3 用户板仿真器接头设计规范

这部分介绍不同的用户板如何设计JTAG仿真器接头。用户板包括带局部边界扫描逻辑或不带局部边界扫描逻辑的单个或多个DSP设备。根据设计的用户板的类型,JTAG仿真器接口设计规范可参考附录部分的文档:

● 附录A:用户板JTAG接口设计:不带边界扫描的单DSP用户板;

● 附录B:用户板JTAG接口设计:不带边界扫描的多DSP用户板;

● 附录C:用户板JTAG接口设计:带边界扫描的单DSP用户板;

● 附录D:用户板JTAG接口设计:带边界扫描的多DSP用户板。

2.4 JTAG仿真器接口的PCB布局

所有的JTAG仿真器信号(TCK, TMS, TDI, TDO, 和)都作为关键路径信号。在用户板上对这些信号进行布线时要特别注意。控制阻抗指定为50Ω和75Ω。采用固化共地使串扰最小。布线时让JTAG仿真器的信号远离高频网络,尤其是时钟线。布线越短越好,路径长度尽可能相等。

这些线路不能受到其他信号的干扰,当TDO和的路径非常长时可能需要串联端接电阻器。关于串联端接电阻器的内容请查阅附录A到D。

3 JTAG仿真器加电/断电顺序

JTAG仿真器通过仿真器插头连接到用户板上之前,应该先将它上电并连接到PC主机。ADI所有高性能JTAG仿真器可以从用户板上“热”插拔而没有加电或断电顺序的限制。

注意,用户板没有加电之前或JTAG仿真器连到用户板之前不要打开或运行仿真软件,以避免仿真错误。

另外,对网络,连接一个4.7k的下拉电阻到DSP,附录A到附录D中涉及的所有DSP都要这样处理,除非用户板使用边界扫描逻辑并且不使用控制信号。

使用边界扫描逻辑并且不使用控制信号的用户板不要对信号下拉。使用下拉电阻会阻止边界扫描逻辑移动测试口。信号在用户板上电之前跨越JTAG仿真器插头的引脚,应该给它安一个跳线。用户板加电之后,无论何时如果JTAG仿真器没有插入JTAG仿真器插头,都应将跳线连接上。该跳线防止DSP的JTAG TAP (测试访问口)陷入不可恢复的状态。

4 JTAG仿真器接头电特性要求

这一部分对JTAG仿真器接头电特性规范进行了说明。

4.1 HPPCI JTAG仿真器自动电压检测接头逻辑

HPPCI JTAG仿真器接头使用JTAG仿真器插头的引脚5(BTMS/VDDIO)来自动检测用户板I/O口的电压。电压检测逻辑控制着JTAG仿真器从用户板接收到的JTAG信号的电压阈值。电压检测逻辑也可以设置发送到用户板的JTAG信号的驱动电压。

用户板上DSP的I/O电压(VDDIO)可能与DSP处理器电压相同,也可能不同。如果将用户板设置为HPPCI JTAG仿真器自动电压检测,一定要保证使用的DSP处理器的VDDIO供电电压正确。一定要将信号用4.7k的电阻下拉到正确的电压层。不要把BTMS/VDDIO引脚直接连到VDDIO电压层。关于BTMS/VDDIO引脚的更多信息请参考附录A到D。

4.2 JTAG仿真器接头I/O特性

JTAG仿真器接头可以耐高达5V的直流电。这对所有的Analog Devices JTAG系列JTAG I/O电压为5V、3.3V、2.5V和1.8V的DSP处理器都适用。仿真器接头可以适用于5V的用户板,其逻辑电平为3.3V,这同时也满足了阈值电压不能超过5V的要求。表2概括了JTAG仿真器接头的所有I/O特性。

4.3 JTAG仿真器接头时序

这部分介绍用户板的JTAG仿真器插头上JTAG信号重要的时序信息。图5画出了用户板JTAG仿真器插头上JTAG信号的转换和时序关系。

图5 JTAG仿真器接头时序波形

表3介绍了JTAG仿真器输出信号(TCK, TMS, TDI和)的开关参数以及JTAG仿真器输入信号(TDO和)建立和保持的条件。表3还介绍了高性能JTAG仿真器的工作频率。图5说明了表中相关参数值的映射关系。

表3 JTAG仿真器接头时序信息

该信息用于确定用户板的最大路径长度,网络负载,JTAG仿真器信号路径上容许的负载电容。

表3中的最大频率数仅能保证用户板满足表3中的建立和保持条件。当计算建立和保持余量时,应确保包含用户板DSP的数据表中TDO和的延时参数。如果用户板不满足表3中指定的建立和保持条件,为了保证JTAG仿真器的可靠性,要让它工作在较低的频率下。

注意,如果JTAG仿真器不能在最低的可用频率下工作,请检查用户板有无连线错误,或者重新设计用户板以减少延时。尽量减少路径长度,电气负荷并使用较快速的缓冲器。

建立和保持时间由JTAG仿真器在最坏情况下的最大延时决定。典型情况下,建立和保持时间会比表中的值小很多。如果JTAG仿真器路径很复杂且有很长的传播延时,请对用户板的JTAG路径做一个时序分析。通过分析来确定用户板JTAG仿真路径是否有足够的时间裕量能让JTAG工作在期望的TCK频率下。

时序分析得到的时间裕量是一个正数。通常情况下,合理的时间裕量至少是整个TCK时钟周期的10%。进行时序分析时注意要以最坏情况下的延时作为延时数。典型情况下,逻辑电路大都会运行在最大延时值和最小延时值之间。如果得到的裕量是负值并且非常接近于1ns,可以在分析时用一些典型值,看看裕量是否仍为负。

如果采用典型值得到的裕量仍为负,试着选一个可用的慢速TCK频率,或者对用户板做一些改变来减少JTAG仿真器路径延时。

5 结论

这篇文档介绍的内容使JTAG仿真器接口设计更加直接。用户板上有一个设计优良的JTAG仿真器接口可以使你更快的开始开发和测试应用程序而不是将宝贵的时间花费在调试JTAG仿真器口上。定期到ADI DSP工具网站上更新这文档。

附录A 用户板JTAG接口设计:不带边界扫描的单DSP的用户板

如图6所示,不带边界扫描控制器的单DSP的用户板或者在局部边界扫描控制器链中不包含该DSP。当使用HPPCI JTAG仿真器时,应该将所有的边界扫描引脚(除了引脚5)接地。HPPCI JTAG仿真器接头需要引脚5即BTMS/VDDIO信号来自动检测DSP I/O的电压(VDDIO)。

图6 不带局部边界扫描控制器的单个DSP用户板

JTAG仿真器插头和DSP之间的布线距离少于6英寸的单DSP用户板不需要使用缓冲器。

注意,如果最差情况下JTAG仿真器插头和DSP之间的布线距离大于6英寸,无论扫描链的路径上有几个DSP,都要缓冲用户板。

图6是JTAG仿真器插头和不带边界扫描控制器的单DSP用户板的DSP之间的连接示意图。

注意,图6中连接到JTAG仿真器的TDO和信号串联了端接电阻。这些电阻是可选的。如果JTAG仿真器插头和DSP之间的TDO或的布线距离大于6英寸则需要使用端接电阻。

端接电阻值等于印制电路板的阻抗(ZPCB)减去TDO或信号I/O驱动器的阻抗(ZDriver)。起初将端接电阻值设为零欧姆。如果在使用JTAG仿真器时观察到了信号完整性问题,则将端接电阻值ZTerminator设置为ZPCB减去ZDriver。根据信号情况调节端接电阻值,它可能比ZTerminator稍小一些或大一些。端接电阻离DSP越近越好。

注意,本文档之前的版本需要对TMS、TCK和TDI加上拉电阻。在仿真器中使用了具有强驱动能力的CMOS缓冲器就不需要再用上拉电阻了。

附录B 用户板JTAG接口设计:不带边界扫描的多DSP的用户板

如图7所示,在使用HPPCI JTAG仿真器时,不带边界扫描的多DSP用户板应该将所有边界扫描引脚(除了引脚5)接地。HPPCI JTAG仿真器接头需要引脚5即BTMS/VDDIO信号来自动检测DSP I/O的电压(VDDIO)。

图7 不带局部边界扫描控制器的多DSP用户板

如图7所示,如果扫描路径上有多个DSP,且没有使用局部边界扫描控制器,那么用户板就需要缓冲。图7是不带边界扫描控制器的多DSP用户板的缓冲器和JTAG仿真器插头的连接示意图。

对于5V的用户板,TCK信号的缓冲器应采用低抖动,高扇出,最小输入输出延时,双1对5时钟驱动型号为IDT49FCT805(或等同的)的缓冲器,TMS, TDI, , TDO和EMU信号的缓冲器应使用型号为74AC11244(或等同的)的缓冲器。

对于3.3V低电压用户板,TCK信号的缓冲器应采用低抖动,高扇出,最小输入输出延时,双1对5时钟驱动型号为IDT49FCT3805E(或等同的)的缓冲器,TMS, TDI, , TDO和信号的缓冲器应使用型号为74AVC16244(或等同的)的缓冲器。

对于2.5V/1.8V低电压用户板,TCK信号的缓冲器应采用低抖动,高扇出,最小输入输出延时,单1对5时钟驱动型号为IDT5T9050(或等同的)的缓冲器,TMS, TDI, , TDO和信号的缓冲器应使用型号为74AVC16244(或等同的)的缓冲器。

注意,图7中连接到JTAG仿真器的TDO和信号串联了端接电阻。这些电阻是可选的。如果JTAG仿真器插头和DSP之间的TDO或的布线距离大于6英寸则需要用端接电阻。

端接电阻值等于印制电路板的阻抗(ZPCB)减去TDO或信号I/O驱动器的阻抗(ZDriver)。起初将端接电阻值设为零欧姆。如果在使用JTAG仿真器时观察到了信号完整性问题,则将端接电阻值ZTerminator设置为ZPCB减去ZDriver。根据信号情况调节端接电阻值,它可能比ZTerminator稍小一些或大一些。端接电阻离DSP越近越好。

注意,为了使信号抖动最小化,确保TMS, TDI, , TDO和信号的缓冲器来自同一个分组。对于TCK信号要用一个高扇出的驱动。TCK信号驱动应该来自于一个专用分组,该分组中没有TMS, TDI, , TDO和信号。

JTAG仿真器插头和DSP之间的布线应该尽可能的等长。隔离来自其他信号网表尤其是时钟信号的串扰。

TMS, 缓冲信号的负载(DSPs)不可超过8个。TCK缓冲信号的负载不可超过1个。剩余的负载(DSPs)应使用另一个缓冲器来驱动,它最多驱动8个设备。

注意,文档之前的版本需要对TMS、TCK和TDI加上拉电阻。在仿真器中用了具有强驱动能力的CMOS缓冲器就不需要再用上拉电阻。

在一个扫描链中使用的物理设备建议不超过16个。如果物理设备超过16个,最好的方法是将该扫描链分成更小的独立的链,每条链都有自己的JTAG插头和缓冲器。如果不能这样做的话,就增加跳线来减少一次调试时一条链上的设备数目。PCB布线时要多加注意使传输线路的影响最小。

附录C 用户板JTAG接口设计:带边界扫描的单DSP用户板

带边界扫描控制器逻辑的单DSP用户板应将局部边界扫描信号引脚连接到JTAG仿真器插头的引脚上,如图8所示。

图8 带边界扫描控制器的单DSP用户板

如果用户板的局部边界扫描控制器是可选的并且连接HPPCI JTAG仿真器,那么在开始运行仿真软件之前需要将BTMS信号与BTMS/VDDIO电压引脚隔离。参考图8,在JTAG仿真过程中,可以用一个跳线或者三态缓冲器将HPPCI JTAG仿真器插头的引脚5与局部边界扫描控制器逻辑隔离。

注意,当JTAG仿真器插头连接HPPCI JTAG仿真器时,必须将BTMS信号与用户板的JTAG仿真器插头的BTMS/VDDIO引脚隔离。在HPPCI JTAG仿真器软件启动之前隔离要一直有效。通过隔离可以防止局部边界扫描控制器的BTMS信号干扰HPPCI JTAG仿真器接头的自动电压检测逻辑。

局部边界扫描控制器与DSP之间通过连接或断开局部边界扫描控制器的JTAG信号和DSP JTAG仿真信号之间的跳线来实现。局部边界扫描信号包括BTMS,BTCK,BTDI和。DSP JTAG仿真信号TMS,TCK,TDI和使用JTAG仿真器插头上的跳线与局部边界扫描信号相连,如图8所示。

注意,如果使用局部边界扫描控制器,上电时要给一个低脉冲。局部边界扫描控制器和JTAG仿真器没有使用时要一直保持为低。用户板使用边界扫描控制器时如何控制信号,请参考图8。

如果用户板上有局部边界扫描控制器,但是它无法控制信号,就需要用额外的逻辑电路来控制该信号。额外的逻辑电路必须保证信号在上电复位时给出一个低脉冲。在局部边界扫描的其他时刻应该将其驱动为高。这可以防止在局部边界扫描时信号持续为高。

如果要阻止DSP进入局部边界扫描,应保持DSP TAP(测试访问口)处于复位状态并且将信号用跳线或下拉电阻接地。

注意,带有局部边界扫描控制器的用户板应该将图8中信号的4.7k下拉电阻去掉,并且不要驱动。如果用了下拉电阻且不能被过驱动DSP JTAG TAP(测试访问口)会持续保持在复位状态。

JTAG仿真器插头和带边界扫描控制器单DSP用户板的DSP的连接如图8所示。

注意,开发板上的跳线可以用零欧姆的电阻替代。如果调试和生产都采用相同的版本,设计用户板采用双下标。双下标应该既与图1中调试板的插头一致又与成品板上的贴片电阻一致。

JTAG仿真器插头和DSP之间的布线距离少于6英寸的单DSP用户板不需要用缓冲器。

注意,如果最差情况下JTAG仿真器插头和DSP之间的布线距离大于6英寸,无论扫描链的路径上有几个DSP,都要缓冲用户板。

注意,图8中连接到JTAG仿真器的TDO和信号串联了端接电阻。这些电阻是可选的。如果JTAG仿真器插头和DSP之间的TDO或的布线距离大于6英寸则需要用端接电阻。端接电阻值等于印制电路板的阻抗(ZPCB)减去TDO或信号I/O驱动器的阻抗(ZDriver)。起初将端接电阻值设为零欧姆。如果在使用JTAG仿真器时观察到了信号完整性问题,则将端接电阻值ZTerminator设置为ZPCB减去ZDriver。根据信号情况调节端接电阻值,它可能比ZTerminator稍小一些或大一些。端接电阻离DSP越近越好。

注意,本文档之前的版本需要对TMS、TCK和TDI加上拉电阻。在仿真器中使用了具有强驱动能力的CMOS缓冲器就不需要再用上拉电阻了。

附录D 用户板JTAG接口设计:带边界扫描的多DSP用户板

带边界扫描控制器逻辑的多DSP用户板应将局部边界扫描信号引脚连接到JTAG仿真器插头的引脚上,如图9所示。

图9 带边界扫描控制器的多DSP用户板

注意,开发板上的跳线可以用零欧姆的电阻替代。如果调试和生产都采用相同的版本,设计用户板采用双下标。双下标应该既与图1中调试板的插头一致又与成品板上的贴片电阻一致。

如果用户板的局部边界扫描控制器是可选的并且连接HPPCI JTAG仿真器,那么在开始运行仿真软件之前需要将BTMS信号与BTMS/VDDIO电压引脚隔离。参考图9,在JTAG仿真过程中可以用一个跳线或者三态缓冲器将HPPCI JTAG仿真器插头的引脚5与局部边界扫描控制器逻辑隔离。

注意,当JTAG仿真器插头连接HPPCI JTAG仿真器时,必须将BTMS信号与用户板的JTAG仿真器插头的BTMS/VDDIO引脚隔离。在HPPCI JTAG仿真器软件启动之前隔离要一直有效。通过隔离可以防止局部边界扫描控制器的BTMS信号干扰HPPCI JTAG仿真器接头的自动电压检测逻辑。

局部边界扫描控制器与DSP之间通过连接或断开局部边界扫描控制器的JTAG信号和DSP JTAG仿真信号之间的跳线来实现。局部边界扫描信号包括BTMS,BTCK,BTDI和。DSP JTAG仿真信号TMS,TCK,TDI和使用JTAG仿真器插头上的跳线与局部边界扫描信号相连。如图9所示。

注意,如果使用局部边界扫描控制器,上电时要给一个低脉冲。局部边界扫描控制器和JTAG仿真器没有使用时要一直保持为低。用户板使用边界扫描控制器时如何控制信号,请参考图9。

如果用户板上有局部边界扫描控制器,但是它无法控制BTRST信号,那么就需要用额外的逻辑电路来控制该信号。额外的逻辑电路必须保证信号在上电复位时给出一个低脉冲。在局部边界扫描的其他时刻应该将其驱动为高。这可以防止在局部边界扫描时信号持续为高。

如果要阻止DSP进入局部边界扫描,应保持DSP TAP(测试访问口)处于复位状态并且将信号用跳线或下拉电阻接地。

注意,带有局部边界扫描控制器的用户板应该将图9中信号的4.7k下拉电阻去掉,并且不要驱动。如果使用了下拉电阻且不能被过驱动DSP JTAG TAP(测试访问口)会持续保持在复位状态。

如图9所示,如果扫描路径上有多个DSP,且带有局部边界扫描控制器,那么用户板就需要缓冲。图9是带边界扫描控制器的多DSP用户板的缓冲器和JTAG仿真器插头的连接示意图。

对于5V的用户板,TCK信号的缓冲器应采用低抖动,高扇出,最小输入输出延时,双1对5时钟驱动型号为IDT49FCT805(或等同的)的缓冲器,TMS,TDI,,TDO和信号的缓冲器应使用型号为74AC11244(或等同的)的缓冲器。

对于3.3V低电压用户板,TCK信号的缓冲器应采用低抖动,高扇出,最小输入/输出延时,双1对5时钟驱动型号为IDT49FCT3805E(或等同的)的缓冲器,TMS,TDI,,TDO和信号的缓冲器应使用型号为74AVC16244(或等同的)的缓冲器。

对于2.5V/1.8V低电压用户板,TCK信号的缓冲器应采用低抖动,高扇出,最小输入输出延时,单1对5时钟驱动型号为IDT5T9050(或等同的)的缓冲器,TMS,TDI,, TDO和信号的缓冲器应使用型号为74AVC16244(或等同的)的缓冲器。

注意,图9中连接到JTAG仿真器的TDO和信号串联了端接电阻。这些电阻是可选的。如果JTAG仿真器插头和DSP之间的TDO或的布线距离大于6英寸则需要用端接电阻。

端接电阻值等于印制电路板的阻抗(ZPCB)减去TDO或信号I/O驱动器的阻抗(ZDriver)。起初将端接电阻值设为零欧姆。如果在使用JTAG仿真器时观察到了信号完整性问题,则将端接电阻值ZTerminator设置为ZPCB减去ZDriver。根据信号情况调节端接电阻,它可能比ZTerminator稍小一些或大一些。端接电阻离DSP越近越好。

注意,为了使信号抖动最小化,确保TMS,TDI,,TDO和信号的缓冲器来自同一个分组。对于TCK信号要使用一个高扇出的驱动。TCK信号驱动应该来自于一个专用分组,该分组中没有TMS,TDI,,TDO和信号。

JTAG仿真器插头和DSP之间的布线应该尽可能的等长。隔离来自其他信号网表尤其是时钟信号的串扰。

TMS,缓冲信号的负载(DSPs)不可超过8个。TCK缓冲信号的负载不可超过1个。剩余的负载(DSPs)应使用另一个缓冲器来驱动,它最多驱动8个设备。

注意,本文档之前的版本需要对TMS、TCK和TDI加上拉电阻。在仿真器中使用了具有强驱动能力的CMOS缓冲器就不需要再用上拉电阻了。

在一个扫描链中使用的物理设备建议不超过16个。如果物理设备超过16个最好的方法是将该扫描链分成更小的独立的链,每条链都有自己的JTAG插头和缓冲器。如果不能这样做,就增加跳线来减少一次调试时一条链上的设备数目。PCB布线时要多加注意使输电线路的影响最小。

附录E对(JTAG)边界扫描的IEEE1149.1介绍

这一部分简要介绍IEEE 1149.1(JTAG)规范,并为不熟悉边界扫描的用户介绍边界扫描的概念。

(1)IEEE1149.1(JTAG)规范

因为PGA或BGA封装形式的器件变得很复杂导致印制电路板变得非常密集,传统的探针和电路内部测试方法变得非常困难。急需找到测试这些高密度的PCB的新方法。为了解决这个问题,20世纪80年代,联合测试行动组(JTAG)提出了用边界扫描实现印制电路板上器件引脚电平的测试标准IEEE1149.1。这一标准在1990年被认可、采纳和引入。该规范的几个子版本包括1993年的1149.1a版本,1994年对边界扫描描述语言(BSDL)规范的增补版均被认可和采用。将IEEE1149.1标准集成到其产品(Ics)用于电路板和元器件测试的公司,进一步将JTAG用于对FPGA编程,下载微代码和电路内部仿真等。

(2)边界扫描的定义

边界扫描提供了不使用物理探针来测试PCB内部连接的方法。通过使用具有多路传输和锁存功能的内部边界扫描单元,数据可以以串行方式从互连器件移入移出。使用其多路器和锁存逻辑的每个边界扫描单元都连接到器件的引脚上,所有的边界扫描单元均以串行链的方式连接。该链包括用于连接PCB上其他器件(由用户定义)的某一器件的所有或部分引脚(由用户定义)的边界扫描单元。

实现IEEE1149.1标准的每个边界扫描单元和JTAG控制逻辑的框图如图10所示。TDI, TCK,TMS,TDO及可选的引脚提供了由TMS控制以(TCK)为时钟移入数据(TDI)、移出数据(TDO)的测试访问口(TAP)。驱动TCK,TMS和TDI引脚的外部设备通过驱动可选的引脚也可以使TAP(测试访问口)控制器复位。数据由TDO引脚回到控制TAP(测试访问口)操作的外部设备。

图10 边界扫描实现框图

ADI公司使用TAP(测试访问口)控制器和边界扫描操作来访问JTAG扫描单元的专用内部寄存器从而实现数据从DSP的移入移出,给DSP提供了一个仿真口。ADI在其所有目前的DSP JTAG TAP(测试访问口)逻辑器件中均包含可选的引脚,并且它还使用了一个IEEE1149.1标准中没有的专用仿真控制引脚()。

如果想了解更多有关IEEE1149.1标准如何工作的信息,可以访问它们的网站http://standards.ieee.org/.