一种jtag链自动连接系统及其实现方法

文档序号:6433918阅读:111来源:国知局
专利名称:一种jtag链自动连接系统及其实现方法
技术领域
本发明涉及联合测试行动组(JTAG,Joint Test Action Group)连接技术,尤指一种JTAG链自动连接系统及其实现方法。
背景技术
随着电路技术进入超大规模集成(VLSI)时代,VLSI电路的高度复杂性以及多层印制板、表面封装(SMT)、圆片规模集成(WSI)和多芯片模块(MCM)技术在电路系统中的运用,使电路节点的物理可访问性正逐步削弱以至于消失,电路和系统的可测试性急剧下降,测试开销在电路和系统总开销中所占的比例不断上升,常规测试方法正面临着日趋严重的测试困难。只有提高电路的可测试性,才能使电路的测试问题得到简化并最终得到解决。因此人们开始寻求更方便、更快捷的方式来替代传统的检测手段。
JTAG是一种国际标准测试协议,主要用于芯片内部测试。现在多数的较复杂器件都支持JTAG协议,如DSP、FPGA器件等,一般将这种支持JTAG协议的器件称为JTAG器件。标准的JTAG接口是4线测试模式选择输入(TMS,Test Mode Select Input)、测试时钟输入(TCK,Test Clock Input)、测试数据输入(TDI,Test Data Input)、测试数据输出(TDO,Test Data Output)。
通过JTAG接口外接JTAG控制器可以很方便地对器件进行结构测试,提高了可测试性。目前,常用的JTAG链连接方法有各器件单独成链和多器件串联成链两种如图1所示,是各器件单独成链的方法,即每个JTAG器件单独连接一个JTAG接口。这种方法无疑增加了JTAG接口,不但占用了印刷电路板(PCB)的空间,而且使测试工作更加复杂。
随着设计复杂度的不断增加,要求同一条JTAG链上的器件数量也不断增加,采用将带有JTAG接口的器件串联成链的方法也随之而生。串联成链是将带有JTAG接口的芯片的测试数据输入、输出线用串联的方式连接起来,即TDI连接TDO连接TDI的方式,形成一个扫描链,而信号线TCK、TMS则是通过并联的方式连接起来,这样JTAG链所在的PCB板对外只有一个简单的JTAG接口。多器件串联成链的方法有两种情况。
一种串联成链的方法是前一个JTAG器件的TDO管脚与后一个JTAG器件的TDI管脚通过一个电阻串联起来,这个串联的电阻称为接入电阻,每个JTAG器件的TDI管脚与TDO管脚之间并联一个电阻,这个并联的电阻称为旁路电阻,JTAG接口的TDI管脚连接JTAG链中第一个JTAG器件的TDI管脚,JTAG接口的TDO管脚连接JTAG链中最后一个JTAG器件的TDO管脚,JTAG接口的TCK、TMS信号并联到JTAG链中每个JTAG器件的TCK、TMS管脚。如图2所示的JTAG链就是采用这种方法成链的,这里以改变JTAG器件2在该JTAG链中的成链状态为例,具体描述该方法的成链做法假设JTAG器件1和JTAG器件3始终连接在JTAG链中,当需要将JTAG器件2串入链中时,焊接电阻R4和电阻R5,同时不焊接电阻R1、电阻R2和电阻R3;当需要旁路器件2时,焊接电阻R2,同时不焊接电阻R1、电阻R3、电阻R4和电阻R5。从该方法可看出,一旦成链需要改动就会有较大的硬件修改工作量,灵活性不高。
对一些器件内部带有旁路寄存器功能的JTAG器件,可采用另一种串联成链的方法,如图3所示,每个JTAG器件之间直接采用串联成链的方法连接起来。这里旁路寄存器的功能相当于旁路电阻,通过CPU对旁路寄存器的设置,可以自动旁路或接入该JTAG器件。该方法由于串入JTAG链中的JTAG器件在PCB板制作完成后就固定了,即扫描链一定,导致这种方法存在以下问题如果该JTAG链中某一JTAG器件暂时不需要或者发生故障,那么该JTAG链将由于该JTAG器件而断开,不能正常工作。另外,随着JTAG链中器件数量的增加,为了保证JTAG链的正常工作,需要对控制信号TCK、TMS等加入硬件驱动电路,如采用驱动芯片74HC244,这样会造成PCB板的很大改动。从而增加大量硬件改动工作,且在一定程度上影响了JTAG链连接的可靠性。
从以上JTAG链连接的方法来看,现有技术中存在硬件改动量大、复杂度高、灵活性和可靠性差的缺点。

发明内容
有鉴于此,本发明的主要目的在于提供一种JTAG链自动连接系统,该系统结构简单,能灵活地完成JTAG链的成链连接。
本发明另一目的在于提供一种实现JTAG链自动连接的方法,该方法能够在该系统上完成JTAG链的自动连接。
为达到上述目的,本发明的技术方案具体是这样实现的一种JTAG链自动连接系统,包括至少一个用于连接JTAG控制器的JTAG接口、一个以上JTAG器件、CPU、该系统还包括逻辑控制单元,用于控制JTAG链的自动连接,其连接关系为JTAG器件和JTAG接口的TDI管脚和TDO管脚分别与逻辑控制单元的输入/输出端相连;JTAG接口的TCK管脚和TMS管脚均与JTAG器件的对应管脚相连;控制信号由CPU通过控制接口接入逻辑控制单元的输入/输出端。
逻辑控制单元为可编程逻辑芯片或由逻辑门电路组合而成。
逻辑控制单元的每个输入/输出端分别连接一逻辑开关。
JTAG接口进一步包括至少一个用于连接JTAG控制器的JTAG接口、一个以上JTAG器件、CPU和用于控制JTAG链的自动连接的逻辑控制单元,其连接关系为JTAG器件和JTAG接口的TDI管脚和TDO管脚分别与逻辑控制单元的输入/输出端相连;JTAG接口的TCK管脚和TMS管脚均与JTAG器件的对应管脚相连;控制信号由CPU通过控制接口接入逻辑控制单元的输入/输出端。
一种实现JTAG链自动连接的方法,在逻辑控制单元中建立各逻辑开关的状态与JTAG器件组合方式的一一对应关系,该方法还包括逻辑控制单元接收来自外部的控制信号,并根据当前接收的控制信号及设定的对应关系将每个JTAG器件输入/输出端对应的逻辑开关断开或闭合。该方法进一步包括将当前JTAG器件的状态保存在逻辑控制单元的状态寄存器中。
CPU通过从逻辑控制单元状态寄存器中读取的状态信息,确定JTAG器件是否存在。
每个JTAG器件是否连入JTAG链由两个逻辑开关来决定。
由上述的技术方案可见,本发明这种JTAG链自动连接系统及其实现方法,由于采用逻辑控制单元对各器件在JTAG链中的状态进行控制,在成链需要改动时,只需CPU通过控制接口向逻辑控制单元发出控制信号,逻辑控制单元根据控制信号选择所需JTAG链的组合方式,即可自动完成扫描链成链改动。该方案能够自动灵活地完成JTAG链的成链连接而无需对硬件进行修改;如果接入逻辑控制单元的某一器件暂时不需要或发生故障,也不会影响其它接入器件的JTAG链成链。此外,该方案在处理JTAG链中器件增加的情况更为灵活、有效在不外增硬件电路的情况下,可以分组选择部分器件接入JTAG链中,测试完成后,再选择另外部分的器件成链测试,由于采用逻辑控制单元对器件的成链状态进行控制,这种部分成链的方式就显得非常灵活了。


图1是现有技术各器件单独JTAG链成链连接示意图;图2是现有技术多器件JTAG链串联成链连接示意图;图3是现有技术典型的JTAG链连接示意图;图4是本发明多器件JTAG链串联成链连接示意图;图5是图4中逻辑控制单元逻辑结构示意图;图6是多模块JTAG链串联成链连接示意图。
具体实施例方式
本发明的核心思想是将各JTAG器件的TDI管脚和TDO管脚接入一逻辑控制单元并在逻辑控制单元中对每个输入/输出管脚设置逻辑开关,各逻辑开关的状态与JTAG器件在JTAG链中的状态之间建立一一对应关系。
处理器CPU通过控制接口向逻辑控制单元写入不同的控制信号,并根据控制信息和对应关系选择正确的JTAG链连接方式,实现对接入逻辑控制单元的不同JTAG器件的选择,从而实现JTAG链的自动连接。
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举较佳实施例,对本发明进一步详细说明。
本发明JTAG链自动连接系统如图4所示,图4是本发明多器件JTAG链串联成链连接示意图,该系统包括至少一个用于连接JTAG控制器的JTAG接口、一个以上JTAG器件、CPU和逻辑控制单元,其中逻辑控制单元401可以是采用可编程芯片,如FPGA;也可以是由逻辑门电路组成的具有控制功能的电路。图4中,JTAG器件403、JTAG器件404、JTAG器件405和JTAG接口406的TDI管脚和TDO管脚分别与逻辑芯片的各输入/输出(I/O)管脚相连;控制信号由CPU接入逻辑芯片的I/O管脚;JTAG接口406的TCK管脚和TMS管脚均与各JTAG器件的对应的TCK管脚和TMS管脚相连接。
参照图5,图5是图4中逻辑控制单元的逻辑结构示意图,用逻辑开关K1表示JTAG器件403的TDI1管脚的成链状态逻辑开关K1=0,即断开,表示JTAG器件403的TDI1管脚不接入JTAG链;逻辑开关K1=1,即闭合,表示接入JTAG链。逻辑开关K2表示JTAG器件403的TDO1管脚的成链状态逻辑开关K2=0,即打向a1端,逻辑开关K2断开,表示JTAG器件403的TDO1管脚不接入JTAG链;逻辑开关K2=1,即打向b1端,逻辑开关K2闭合,表示接入JTAG链。表1列出了图中逻辑开关K1至逻辑开关K6的状态与JTAG器件的成链状态关系

表1为了实现JTAG链的自动连接,本方案的实现方法是预先将每个JTAG器件的所有组合成链方式存入逻辑芯片中,并与控制信号之间建立一一映射关系,这样根据控制信号信息可选择对应的JTAG器件组合方式,即闭合或断开相应逻辑开关。
图4中,接入逻辑芯片的JTAG器件有三个,容易得出,其所有JTAG链组合方式有八种,可以预先将这八种JTAG器件的组合方式以列表的形式存入逻辑芯片,并在JTAG器件的组合方式与逻辑开关状态之间建立一一对应关系。本实施例中,接入了三个JTAG器件,需要六个控制信号,分别用于控制逻辑开关K1至逻辑开关K6的状态,如图5中虚线部分所示。本实施例可以选用8位控制寄存器来存放控制字,逻辑开关K1至逻辑开关K6的控制信号在寄存器中的位置可预先规定,比如设定位置关系为xxK6K5K4K3K2K1,“x”表示该位不用。当需要三个JTAG器件组成一JTAG链时,只需CPU 402向逻辑芯片的寄存器中写入xx111111控制字,然后根据控制字的信息在逻辑芯片列表中查找并确定该控制字信息对应的JTAG器件在JTAG链中的状态,最后根据控制信息断开或闭合相应逻辑开关,从而自动实现将三个JTAG器件组成一JTAG链。这里,根据控制信息完成的具体操作是将逻辑开关K1闭合;逻辑开关K2打向b1端;逻辑开关K3闭合;逻辑开关K4打向b2端;逻辑开关K5闭合;逻辑开关K6打向b3端。
以JTAG器件404为例,当需要旁路该器件时,CPU通过控制接口向逻辑芯片控制寄存器写入xx110011控制字,即表示逻辑开关K1闭合;逻辑开关K2打向b1端;逻辑开关K3断开;逻辑开关K4打向a2端;逻辑开关K5闭合;逻辑开关K6打向b3端,再根据控制信号与JTAG器件的组合方式的一一对应关系断开或闭合相应开关,这样便完成JTAG器件404的旁路。
另外,逻辑控制单元通过对JTAG器件的TDI、TDO管脚电平的检测,可以判断JTAG器件是否存在,并将状态信息写入逻辑控制单元的状态寄存器中。这里,可以选用8位状态寄存器来存放JTAG器件状态,例如状态寄存器中状态信息字为xxxxx111,表示三个JTAG器件都存在。CPU 402可以通过控制接口对逻辑控制单元401状态寄存器中的状态信息进行读取,以识别JTAG器件是否在JTAG链中。如果JTAG器件405不存在,且此时JTAG器件403和JTAG器件404存在并且都在链中,则CPU读取的状态字是xx000011,而控制寄存器中的控制字是xx001111这样可以检查PCB板是否有漏装、漏焊的情况,为测试或调试带来方便。从这里可以看出,本发明提供的方法不会因为JTAG器件405的漏装、漏焊而影响其它接入逻辑芯片的JTAG器件的成链,此时,根据需要仍然可以实现JTAG器件403和JTAG器件404的各种成链组合。
本发明的思想可以应用到多模块的JTAG链连接,这种情况下,可将图4所示JTAG链自动连接系统看成一个模块,用一JTAG接口来表示该模块。如图6所示,JTAG接口1表示模块1、JTAG接口2表示模块2、JTAG接口3表示模块3。这三个接口和JTAG接口0的TDI管脚和TDO管脚分别与逻辑芯片的各输入/输出(I/O)管脚相连;控制信号由CPU接入逻辑芯片的I/O管脚;JTAG接口的TCK管脚和TMS管脚均与各JTAG器件的对应的TCK管脚和TMS管脚相连接。预先将每个JTAG接口的所有组合成链方式存入逻辑控制单元中,并与控制信号之间建立一一映射关系,这样根据控制信息可选择对应的JTAG链组合方式。
这样,可以方便灵活地由CPU通过控制接口写入逻辑芯片的寄存器的控制字来决定哪个JTAG接口接入JTAG链,哪个JTAG接口被旁路。例如,CPU向逻辑控制单元发送控制字xx001111,即表示在该JTAG链中旁路模块1,而模块2和模块3接入该JTAG链。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1.一种JTAG链自动连接系统,包括至少一个用于连接JTAG控制器的JTAG接口、一个以上JTAG器件、CPU;其特征在于,所述系统还包括逻辑控制单元,用于控制JTAG链的自动连接;JTAG器件和JTAG接口的TDI管脚和TDO管脚分别与逻辑控制单元的输入/输出端相连;JTAG接口的TCK管脚和TMS管脚均与JTAG器件的对应管脚相连;控制信号由CPU通过控制接口接入逻辑控制单元的输入/输出端。
2.根据权利要求1所述的系统,其特征在于所述的逻辑控制单元为可编程逻辑芯片。
3.根据权利要求1所述的系统,其特征在于所述的逻辑控制单元由逻辑门电路组合而成。
4.根据权利要求1所述的系统,其特征在于所述逻辑控制单元的每个输入/输出端分别连接一逻辑开关。
5.根据权利要求1所述的系统,其特征在于,所述JTAG接口进一步包括至少一个用于连接JTAG控制器的JTAG接口、一个以上JTAG器件、CPU和用于控制JTAG链的自动连接的逻辑控制单元;JTAG器件和JTAG接口的TDI管脚和TDO管脚分别与逻辑控制单元的输入/输出端相连;JTAG接口的TCK管脚和TMS管脚均与JTAG器件的对应管脚相连;控制信号由CPU通过控制接口接入逻辑控制单元的输入/输出端。
6.一种实现JTAG链自动连接的方法,其特征在于,在逻辑控制单元中建立各逻辑开关的状态与JTAG器件组合方式的一一对应关系,该方法还包括逻辑控制单元接收来自外部的控制信号,并根据当前接收的控制信号及设定的对应关系将每个JTAG器件输入/输出端对应的逻辑开关断开或闭合。
7.根据权利要求6所述的方法,其特征在于,该方法进一步包括将当前JTAG器件的状态保存在逻辑控制单元的状态寄存器中。
8.根据权利要求6所述的方法,其特征在于每个JTAG器件是否连入JTAG链由两个逻辑开关来决定。
9.根据权利要求6所述的方法,其特征在于CPU通过从逻辑控制单元状态寄存器中读取的状态信息,确定JTAG器件是否存在。
全文摘要
本发明公开了一种JTAG链自动连接系统,该系统包括至少一个用于连接JTAG控制器的JTAG接口、一个以上JTAG器件、CPU、逻辑控制单元,用于控制JTAG链的自动连接,其连接关系为JTAG器件和JTAG接口的TDI管脚和TDO管脚分别与逻辑控制单元的输入/输出端相连;JTAG接口的TCK管脚和TMS管脚均与JTAG器件的对应管脚相连;控制信号由CPU通过控制接口接入逻辑控制单元的输入/输出端。本发明还同时公开了一种实现JTAG链自动连接的方法,该方法能够在该系统上完成JTAG链的自动连接。采用该系统及其方法是一种可靠的JTAG链连接方法,提高了测试的方便性,并简化了设计,减少了工作量。本发明可以将针对器件的JTAG链连接方法延伸到模块级的JTAG链自动连接,给测试带来很大方便。
文档编号G06F11/22GK1763556SQ20041008642
公开日2006年4月26日 申请日期2004年10月20日 优先权日2004年10月20日
发明者赵俊峰, 蒋麟军, 李友谊, 泰旭, 秦志海, 陈祺, 潘剑锋, 徐清强 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1