一种FPGA系统的JTAG调试方法及系统与流程

文档序号:12596820阅读:747来源:国知局
一种FPGA系统的JTAG调试方法及系统与流程

本发明涉及现场可编程门阵列(FPGA,Field Programmable Gate Array)的配置及调试技术,尤其涉及一种FPGA系统的联合测试行动组(JTAG,Joint Test Action Group)调试方法及系统。



背景技术:

联合测试行动组(JTAG,Joint Test Action Group)加载是FPGA芯片常用的一种逻辑下载方法。JTAG加载除了可以直接通过电缆从调试机下载逻辑文件之外,还可以连接调试机上安装的FPGA调试软件实现对FPGA芯片内部信号的抓取交互等功能,因此,在FPGA芯片的调试初期以及对联调故障详细定位的时候,JTAG加载调试都是一种十分有效的调试方法。

由于FPGA芯片内部集成的逻辑资源越多,价格就越昂贵,为了节省成本,在单板硬件版本还未稳定的时候会尽量减少调试初期单板的焊接数量。在这种前提下,存在多人对同一块单板上的多片FPGA芯片同时进行单片FPGA芯片的JTAG调试的需求。

在正常应用中,FPGA芯片的JTAG接口需要用菊花链串行连接,从而支持使用系统级JTAG设备或装置进行系统JTAG方式的调试。一般也在菊花链上连接一个串行的JTAG插座用于常见的多片联合调试。可见,现有方式并无法满足多人对同一块单板上的多片FPGA芯片同时进行单片FPGA芯片的JTAG调试的需求。



技术实现要素:

为了解决上述技术问题,本发明提供一种FPGA系统的JTAG调试方法及系统,能够实现在多FPGA系统支持单片或多片FPGA芯片的JTAG调试。

为了达到上述技术目的,本发明提供一种FPGA系统的JTAG调试方法,包括:将多片FPGA芯片通过JTAG信号直接或间接地连接至不同调试需求所需的JTAG调试插座;根据调试需求,连通FPGA芯片与该调试需求所需的JTAG调试插座。

进一步地,所述根据调试需求,连通FPGA芯片与该调试需求所需的JTAG调试插座包括:当进行单片FPGA芯片的JTAG调试时,连通各FPGA芯片与对应的JTAG单片调试插座;当进行多片FPGA芯片的JTAG调试时,连通JTAG串行调试插座与多片串联的FPGA芯片,或者,连通系统级JTAG调试插座与多片串联的FPGA芯片。

进一步地,所述当进行单片FPGA芯片的JTAG调试时,连通各FPGA芯片与对应的JTAG单片调试插座之后,上述方法还包括:将各JTAG单片调试插座分别连接至对应的单片调试调试机。

进一步地,所述当进行多片FPGA芯片的JTAG调试时,连通JTAG串行调试插座与多片串联的FPGA芯片之后,上述方法还包括:将JTAG串行调试插座连接至串行调试调试机;

所述连通系统级JTAG调试插座与多片串联的FPGA芯片之后,上述方法还包括:将系统级JTAG调试插座连接至系统级JTAG调试装置。

进一步地,所述连通JTAG串行调试插座与多片串联的FPGA芯片包括:导通JTAG串行调试插座与多片串联的FPGA芯片之间的通断控制芯片;

所述连通系统级JTAG调试插座与多片串联的FPGA芯片包括:导通系统级JTAG调试插座与多片串联的FPGA芯片之间的通断控制芯片。

本发明还提供一种FPGA系统的JTAG调试系统,包括:多个通断控制芯片以及不同调试需求所需的JTAG调试插座,多片FPGA芯片与JTAG调试插座直接连接,或通过通断控制芯片连接,当根据调试需求控制通断控制芯片断开或导通时,FPGA芯片与该调试需求所需的JTAG调试插座连通。

进一步地,所述不同调试需求所需的JTAG调试插座包括:JTAG单片调试插座,各JTAG单片调试插座与各FPGA芯片一一对应,还包括JTAG串行调试插座或系统级JTAG调试插座,所述多个通断控制芯片连接在 JTAG串行调试插座或系统级JTAG调试插座以及不同的FPGA芯片之间;

当多个通断控制芯片均断开时,JTAG串行调试插座或系统级JTAG调试插座与多个FPGA芯片之间的连接断开,各FPGA芯片与对应的JTAG单片调试插座连通,用于进行单片FPGA芯片的JTAG调试;

当多个通断控制芯片均导通时,JTAG串行调试插座或系统级JTAG调试插座与多片串联FPGA芯片连通,用于进行多片FPGA芯片的JTAG调试。

进一步地,上述系统还包括:多个单片调试调试机,各单片调试调试机与各JTAG单片调试插座一一对应。

进一步地,上述系统还包括:串行调试调试机,与JTAG串行调试插座对应连接。

进一步地,上述系统还包括:系统级JTAG调试装置,与系统级JTAG调试插座对应连接。

在本发明中,将多片FPGA芯片通过JTAG信号直接或间接地连接至不同调试需求所需的JTAG调试插座;根据调试需求,连通FPGA芯片与该调试需求所需的JTAG调试插座。如此,能够同时支持不同调试需求的JTAG调试,如串行JTAG调试及单片JTAG调试,从而提高了单板开发过程中的研发效率。而且,本发明的实现方便可靠,大大节省了研发成本。

附图说明

图1为本发明一实施例提供的FPGA系统的JTAG调试系统的示意图;

图2为本发明一实施例提供的FPGA系统的JTAG调试方法的流程图。

具体实施方式

以下结合附图对本发明的实施例进行详细说明,应当理解,以下所说明的实施例仅用于说明和解释本发明,并不用于限定本发明。

本发明实施例提供一种FPGA系统的JTAG调试方法,包括:将多片FPGA芯片通过JTAG信号直接或间接地连接至不同调试需求所需的JTAG调试插座;根据调试需求,连通FPGA芯片与该调试需求所需的JTAG调试 插座。

具体而言,当进行单片FPGA芯片的JTAG调试时,连通各FPGA芯片与对应的JTAG单片调试插座;当进行多片FPGA芯片的JTAG调试时,连通JTAG串行调试插座与多片串联的FPGA芯片,或者,连通系统级JTAG调试插座与多片串联的FPGA芯片。

于一实施例中,当进行单片FPGA芯片的JTAG调试时,连通各FPGA芯片与对应的JTAG单片调试插座之后,该方法还包括:将各JTAG单片调试插座分别连接至对应的单片调试调试机。

于一实施例中,当进行多片FPGA芯片的JTAG调试时,连通JTAG串行调试插座与多片串联的FPGA芯片之后,该方法还包括:将JTAG串行调试插座连接至串行调试调试机;

连通系统级JTAG调试插座与多片串联的FPGA芯片之后,该方法还包括:将系统级JTAG调试插座连接至系统级JTAG调试装置。

于一实施例中,连通JTAG串行调试插座与多片串联的FPGA芯片包括:导通JTAG串行调试插座与多片串联的FPGA芯片之间的通断控制芯片;

连通系统级JTAG调试插座与多片串联的FPGA芯片包括:导通系统级JTAG调试插座与多片串联的FPGA芯片之间的通断控制芯片。

其中,通断控制芯片例如包括开关电路或跳线电路。

此外,本发明实施例还提供一种FPGA系统的JTAG调试系统,包括:多个通断控制芯片以及不同调试需求所需的JTAG调试插座,多片FPGA芯片与JTAG调试插座直接连接,或通过通断控制芯片连接,当根据调试需求控制通断控制芯片断开或导通时,FPGA芯片与该调试需求所需的JTAG调试插座连通。

于一实施例中,所述不同调试需求所需的JTAG调试插座包括:JTAG单片调试插座,各JTAG单片调试插座与各FPGA芯片一一对应,还包括JTAG串行调试插座或系统级JTAG调试插座,所述多个通断控制芯片连接在JTAG串行调试插座或系统级JTAG调试插座以及不同的FPGA芯片之间;

当多个通断控制芯片均断开时,JTAG串行调试插座或系统级JTAG调 试插座与多个FPGA芯片之间的连接断开,各FPGA芯片与对应的JTAG单片调试插座连通,用于进行单片FPGA芯片的JTAG调试;

当多个通断控制芯片均导通时,JTAG串行调试插座或系统级JTAG调试插座与多片串联FPGA芯片连通,用于进行多片FPGA芯片的JTAG调试。

于一实施例中,上述系统还包括:多个单片调试调试机,各单片调试调试机与各JTAG单片调试插座一一对应。

于一实施例中,上述系统还包括:串行调试调试机,与JTAG串行调试插座对应连接。

于一实施例中,上述系统还包括:系统级JTAG调试装置,与系统级JTAG调试插座对应连接。

其中,通断控制芯片例如包括开关电路或跳线电路。

图1为本发明一实施例提供的FPGA系统的JTAG调试系统的示意图。如图1所示,本发明实施例提供的FPGA系统的JTAG调试系统,应用于多片FPGA芯片(如FPGA芯片FPGA_1、FPGA_2、FPGA_n)的FPGA系统,包括串行调试调试机或系统级JTAG调试装置、JTAG串行调试插座或系统级JTAG调试插座、多个单片调试调试机(如,单片调试调试机L1、L2、Ln)、多个JTAG单片调试插座(如,JTAG单片调试插座S1、S2、Sn)以及多个通断控制芯片(如,通断控制芯片T1、T2、Tn)。其中,n为大于1的整数。

其中,串行调试调试机和单片调试调试机例如为安装并运行了相应FPGA调试软件的电脑(PC,Personal Computer)。系统级JTAG调试装置例如为支持系统级JTAG调试的设备或装置。由于JTAG接口协议为通用的接口协议标准,因此,系统级JTAG调试装置可使用自行开发的相应调试设备或装置。JTAG串行调试插座和JTAG单片调试插座为按照需要对接的线缆接头配合定义的相应的插座。通断控制芯片为具有通断功能的芯片,可使用常见的数字信号的开关芯片,例如,带使能控制的244系列芯片,利用给使能管脚的电平高低来实现信号的断开和传输。FPGA芯片指各芯片厂家的FPGA逻辑芯片。其中,由于JTAG是一个通用协议,系统中的多片FPGA 可以指多片相同厂家的FPGA芯片,也可以指多片不同厂家的FPGA芯片,只要支持的接口电平标准一致。

如图1所示,串行调试调试机可与JTAG串行调试插座对应相连,或系统级JTAG调试装置可与系统级JTAG调试插座对应相连。单片调试调试机可与对应的JTAG单片调试插座相连,例如,单片调试调试机L1与JTAG单片调试插座S1对应相连,单片调试调试机L2与JTAG单片调试插座S2对应相连,单片调试调试机Ln与JTAG单片调试插座Sn对应相连。通断控制芯片分别连接在JTAG串行调试插座与JTAG单片调试插座之间以及不同的FPGA芯片之间。例如,通断控制芯片T1连接在JTAG串行调试插座与FPGA芯片FPGA_1之间,通断控制芯片T2连接在FPGA芯片FPGA_1与FPGA芯片FPGA_2之间。

具体而言,各设备和器件之间的通信信号为JTAG信号,完整的JTAG信号包括JTAG输入信号TDI、JTAG输出信号TDO、JTAG时钟信号TCK、JTAG控制信号TMS以及JTAG复位信号TRST。常见的调试插座包括赛灵思(Xilinx)公司和阿尔特拉(Altera)公司的FPGA调试插座中都不使用TRST,另外,有部分FPGA芯片本身会有TRST信号管脚,在芯片外围按手册要求相应连接即可。于此,图1中的其它JTAG信号按常见的FPGA调试插座进行理解,包括有TCK和TMS信号。应当理解,图1仅用于说明和解释本发明,并不用于限定本发明。

图2是本发明的一实施例提供的FPGA系统的JTAG调试方法的流程图。如图2所示,包括以下步骤:

步骤201:判断单板需要支持串行JTAG调试还是单片JTAG调试,即判断是否需要单片JTAG调试;

步骤202:在使用单片JTAG调试的情况下,将通断控制芯片的使能关闭,即设置为断开,于此,通断控制芯片的使能管脚的通断控制例如包括使用开关或跳线,然而,本发明并不限定于此;

步骤203:各FPGA使用单独的JTAG单片调试插座连接对应的单片调试调试机进行调试,对应于图1,即FPGA芯片FPGA_1通过JTAG单片调试插座S1连接单片调试调试机L1进行调试,FPGA芯片FPGA_2通过JTAG 单片调试插座S2连接单片调试调试机L2进行调试,依此类推;

步骤204:在使用串行JTAG方式调试时,将通断控制芯片的使能打开,即设置为连通,于此,通断控制芯片的使能管脚的通断控制例如包括使用开关或跳线,然而,本发明并不限定于此;

步骤205:在使用串行JTAG方式调试时,各JTAG单片调试插座断开和对应单片调试调试机的线缆连接;

步骤206:在使用串行JTAG方式调试时,通过JTAG串行调试插座连接串行调试调试机进行调试,或者通过系统级JTAG调试插座接入系统级JTAG调试装置进行调试,对应于图1,即FPGA芯片FPGA_1、FPGA_2、FPGA_n串联连接,通过JTAG串行调试插座连接串行调试调试机进行调试,或者通过系统级JTAG调试插座连接系统级JTAG调试装置进行调试;

步骤207:流程结束,按调试需要可以重新选择调试方式。

综上所述,在本发明较佳实施例中,在各FPGA芯片的外部通过JTAG信号直接或间接地连接到单片或多片FPGA芯片的JTAG调试所需要的插座,从而在不同调试需求下,通过通断控制芯片对调试插座与FPGA芯片连接的通断控制实现不同的JTAG调试。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1