基于JTAG的星型扫描接口的设计及其仿真
3.2.2 选择与取消
在IEEE 1149.7标准规范中,选择与取消功能的实现方法一般包括取消选择逃脱和取消选择警报。在本文中主要设计和验证了逃脱的操作。逃脱(Escapes)就是在1 bit周期内,不改变正常的信息交换情况下,将控制信息加载到正常传输的TCK(C)与TMS(C)信号上。TAP.7控制器探测TCK为逻辑“1”时TMS边沿的数目值从而作为逃脱产生的条件。当边沿数为4或5时,产生一个取消逃脱,使控制器离线;当边沿数为6或7时,产生一个选择逃脱,告知随之而来的是一串选择序列[4],如符合选择序列标准,将选择此控制器或控制器所在的技术分支并将它们置于在线状态,反之将置于离线。选择序列部分包括:技术相关部分与技术无关部分。其中技术无关部分指定要被选择的技术分支,技术相关部分响应在线申请和初始化在线设备。选择序列具体功能及格式如图3所示。
![](http://m.amcfsurvey.com/editerupload/fetch/20130926/170562_2_0.jpg)
3.2.3 CID分配
在传统的串型扫描拓扑中,TAP控制器在串型扫描链中与DTS的相对位置提供了直接寻址能力,使用星型拓扑时,串型扫描拓扑提供的寻址能力消失了,因为TAP控制器在扫描链中具有相同的相对位置。控制器地址(TCA)可由IEEE 1149.1 器件的识别码(27 bit)与节点识别码(8 bit)组成。在实际应用中,TS中的TAP数一般很少,这样35 bit的TCA显得开销过大。从而,可利用一条TAP.7命令[5]CIDA分配一个4 bit的控制器识别码(CID)给TAP.7控制器,也可利用一条TAP.7命令CIDD取消控制器的CID。DTS可动态地分配CID到不同的TAP.7控制器,因此16个CID可被大于16的TAP.7控制器使用。
3.2.4 SSD
扫描选择指令(SSD)添加到TAP.7 控制器功能中用以提供一种在Pause-xR 或 Run-Test/Idle 状态停泊CLTAPC 的方式,它可防止星型扫描拓扑的TDO数据驱动冲突并提供与串型拓扑等价的扫描性能。SSD有三种类型:SSD_DA取消所有的CLTAPC;SSD_SA选择所有的CLTAPC;SSD_SOT或 SSD_SOC,根据TCA或CID选择目标CLTAPC。SSD_SOT与SSD_SOC 指令在不同的ADTAPC状态下有不同的操作:在Run-Test/Idle状态下, SSD传递的CID 或 TCA 与某一TAP.7控制器的CID或TCA匹配时,将选择这一TAP.7控制器的CLTAPC,但不对其他CLTAPC进行操作;但在Pause-XR状态下,它将选择目标CLTAPC,同时取消非目标CLTAPC。SSD必须在SSDE寄存器激活并且扫描格式支持星型扫描的情况下才能激活使用,SSD使用TDI数据来同时选择与取消一个或多个CLTAPC。
在本文中,星型扫描技术接口是基于JTAG接口,根据硬件升级层次化的方法进行设计,并利用FPGA硬件平台进行设计和QuartusⅡ软件进行仿真验证。此接口的特点是在原有的TAP.1接口上添加了支持星型扫描技术的功能,此功能中最为关键的技术是技术分支的选择和串型等价扫描。下面重点对它们进行设计验证。
4.1 技术分支选择的设计及验证
选择与取消逃脱的探测和一串选择序列完成技术分支的选择操作。TAP.7控制器通过扫描拓扑训练识别不同分支所在的位置。一旦训练完成,每一技术分支呈现出单独的技术特性,提供技术分支选择的基础。在选择序列中包含了选择技术分支的信息TOPOL寄存器值,不同的技术分支类型具有不同的TOPOL寄存器值。只有技术分支被选择,它才能被操作。技术分支选择的流程设计如图4所示。
![](http://m.amcfsurvey.com/editerupload/fetch/20130926/170562_2_1.jpg)
下面分别就长型选择序列和短型选择序列对技术分支选择功能进行仿真验证, 其验证仿真结果如图5所示。
4.2 串型等价扫描的设计及验证
在星型拓扑扫描技术中,提供了一种串型等价扫描的方法,这样既完成了星型扫描功能,又实现了TDO数据的驱动冲突保护。其具体设计过程为:
(1)选择所有的分支;
(2)选择所有分支中的所有CLTAP,并指明标准协议的应用;
(3)选择单一的技术分支,并将状态推进至Run-Test/Idle状态;
(4)使用SSD指令选择技术分支中不参与串型等价扫描的STL,使它们成为闲置组成员(其余的 STL 为扫描组成员);
(5)推进扫描组中的STL的CLTAPC状态移入Pause-xR 状态;
(6)使用SSD来识别一个扫描目标的STL,并对目标STL进行移位扫描,再回到Pause-xR状态,但不经过Update-xR状态,使其他不是闲置组成员的STL成为Pause-xR组成员(这使得被SSD识别的STL成为扫描组唯一的成员);
(7)对技术分支中不是闲置组成员的每一个STL重复步骤(6);
(8)待技术分支中所有非闲置组成员完成扫描移位后,选择技术分支中非闲置组的CLTAPC经过Update-xR状态,并最终回到Pause-xR状态,中间不经过Shift-xR 状态;
(9)重复步骤(6)、(7),完成整个单一技术分支的扫描;
(10)重复步骤(3)至(9),完成所有技术分支的扫描;
(11)将所有的CLTAPC状态同步到ADTAPC的状态,完成串型等价扫描的整个过程。
评论