一种基于边界扫描结构的fpga在线测试仪及测试方法

文档序号:8255857阅读:438来源:国知局
一种基于边界扫描结构的fpga在线测试仪及测试方法
【技术领域】
[0001]本发明涉及一种基于边界扫描结构的FPGA在线测试仪及测试方法,特别适用于检测电子装置上FPGA器件的功能是否完好,属于集成电路技术领域。
【背景技术】
[0002]目前国内在军用、民用复杂电子系统中,FPGA已经成为不可替代的核心器件。FPGA一旦出现损坏,会导致整个电子系统彻底丧失功能,必须确保FPGA的质量万无一失。而FPGA在存储、运输、电装、试验等过程中均可能出现意外损坏,甚至由于采购渠道混乱,存在以次充好、以旧充新等现象,部分进口 FPGA可靠性难以保证。与ASIC不同,用户应用占用的FPGA资源只占FPGA总资源的很小一部分,通过用户应用检测无法判断FPGA是否存在故障。虽然首次应用未出现故障,但当用户利用FPGA的反复可编程的特点进行系统升级、程序修改时,可能会遭遇故障资源而导致功能出错。发现故障时,系统可能早已定型、交付,这将导致严重的质量管理风险。因此,电装后对FPGA进行在线测试十分必要。
[0003]边界扫描在线测试技术在电路板测试应用领域中发挥了重要作用。边界扫描测试是面向电路板测试的一种芯片可测试性设计(DFT)方法,它通过存在于器件输入输出管脚与内核电路之间的边界扫描单元(BSC)对器件及外围电路进行测试,从而大大提高了器件的可控性和可观性。边界扫描技术提供了一种完整的、标准化的数字超大规模集成电路(VLSI)的测试性设计方法,并很快就得到了世界大多数集成电路制造商和测试商的支持,目前90%以上复杂的芯片都带有边界扫描机制,支持JTAG标准,并已得到广泛的支持与应用。

【发明内容】

[0004]本发明的技术解决问题是:为克服现有技术的不足,提供一种基于边界扫描结构的FPGA在线测试仪及测试方法。
[0005]本发明的技术解决方案为:
[0006]一种基于边界扫描结构的FPGA在线测试仪,包括上位机和下位机,通过标准JTAG接口连接含有待测FPGA的JTAG链路,所述上位机由上位机软件、接口驱动程序及测试向量集组成;所述上位机软件载入存储在上位机的大量标准格式的测试向量,并结合FPGA厂商提供的边界扫描说明文件,将测试向量的激励转化为符合被测器件边界扫描结构的数字信号序列,通过USB接口传输给下位机;当下位机反馈测试响应时,上位机判断回传的测试响应是否与测试向量中的正确结果一致,输出测试结果;
[0007]所述下位机包括USB接口模块、存储器读写模块、协议处理模块、JTAG接口,所述USB接口模块接收到上位机数据后,将数据通过存储器读写模块写入到存储器中,控制状态机控制码流处理模块通过JTAG接口向待测FPGA中输出数据,码流处理模块通过存储器读写模块从存储器当中读取数据,通过JTAG接口传输到待测FPGA中;控制状态机控制回读模块通过JTAG接口从待测FPGA获得数据;回读模块将JTAG接口传输过来的输出响应通过存储器读写模块写入的存储器当中;存储器读写模块将存储器中的输出响应通过USB接口模块传输给上位机。
[0008]所述测试向量集包含码流文件、管脚编号、输入激励及输出响应,使用测试向量集中的码流文件来配置FPGA时,在特定的管脚编号上施加特定的输入激励,获得输出响应,将该输出响应与正确的输出响应进行比较,获得测试结果。
[0009]所述上位机及下位机通过USB2.0协议进行通信。
[0010]一种基于边界扫描结构的FPGA在线测试方法,包括如下步骤:
[0011](I)待测FPGA上电之后,在线测试仪中的下位机通过JTAG接口回读JTAG链路中各器件的ID code,检测该JTAG链路的完整性,同时获得该JTAG链路包含器件的数量和各器件的型号,下位机通过USB接口模块将获得的JTAG链路结构信息传输给上位机;
[0012](2)上位机根据步骤(I)中获取的JTAG链路结构信息,获得待测FPGA在链路中所处位置,根据待测FPGA型号,选择相应的存储在上位机的测试向量集,使用测试向量集中的码流文件来配置FPGA ;
[0013](3)上位机将测试向量集中的码流文件通过USB接口传输到下位机,通过存储器读写模块写入存储器,下位机接收码流文件后,协议处理模块向待测FPGA输出JTAG配置命令,通过JTAG接口将码流文件输出到待测FPGA ;
[0014](4)码流文件输出完毕后,通过回读待测FPGA的status寄存器,判断FPGA是否配置成功,若配置成功,则进入步骤(5),若未配置成功,则重复步骤(3);
[0015](5)上位机根据边界扫描说明文件,将输入激励转换为符合被测器件边界扫描结构的由多条数字信号序列组成的数字信号序列,将这一系列数字信号序列列通过USB接口依次传输到下位机,写入存储器中;
[0016](6)下位机通过JTAG接口将从步骤(5)中获得的数字信号序列逐条输出到待测FPGA,待测FPGA通过其自带的边界扫描链路将输入激励施加到FPGA内部逻辑阵列,待一条数字信号序列输出完毕后,进入步骤(7);
[0017](7)下位机通过JTAG接口发送回读命令,待测FPGA回传此数字信号序列的输出响应,下位机将获得的输出响应写入存储器中,重复步骤(6)-(7),直到步骤(5)中的存储器所有的数字信号序列均已传输给待测FPGA,此时进入步骤(8);
[0018](8)下位机通过存储器读写模块将所获得的所有输出响应传输给上位机,上位机将所获得的输出响应与数字信号序列的正确输入响应进行对比,若相同,进入步骤(9),若不相同,则上位机报告错误,进入步骤(9);
[0019](9)上位机判断是否测试向量集中的所有测试向量均已测试,若已全部测试,则上位机输出测试结果,若未全部测试,则重复步骤(3)-步骤(9)。
[0020]所述步骤(I)中的JTAG链路结构信息包含器件型号、器件顺序以及链路是否完整的信息。
[0021]所述步骤(3)中的协议处理模块由码流处理模块、回读模块和控制状态机组成。
[0022]所述步骤(4)中判断FPGA是否配置成功的方法为:若状态寄存器中的完成指示位DONE由O变为I,即配置成功。
[0023]本发明与现有技术相比的优点在于:
[0024](I)本发明能实现器件识别、链路完整性检测、内部模块功能测试等多项功能,能够现场检测电子系统上FPGA故障,提高可靠性;
[0025](2)本发明对用户系统设计完全无额外要求,只需含有待测FPGA的JTAG链路中有一个标准JTAG接口,即可完成相应测试;
[0026](3)本发明通过回读可以自动识别FPGA器件型号,适用于各种FPGA器件型号,适用范围广、通用性强;
[0027](4)本发明其上位机可运行于计算机或者嵌入式系统,下位机为单板系统,方便随身携带,能够提供方便可靠的现场检测技术;
[0028](5)、本发明使用下位机硬件协议处理,相对于使用计算机进行协议处理,速度更快;
[0029](6)本发明使用USB2.0进行上位机和下位机之间的数据传输,数据传输速度达到160Mbit/s,相对于以往技术所使用的JTAG下载器,最高传输速度12Mbit/s,数据传输速度提尚十倍以上;
[0030](7)本发明下位机中的TAP状态控制器通过状态机实现,为全同步时序电路,状态完备,流程简单清晰,提高了电路可靠性。
【附图说明】
[0031 ] 图1为本发明FPGA在线测试仪与待测FPGA连接示意图;
[0032]图2为本发明下位机结构示意图;
[0033]图3为本发明在线测试方法流程图;
[0034]图4为本发明测试向量集和数字信号序列文件转换示意图。
【具体实施方式】
[0035]下面结合附图和具体实施例对本发明作进一步详细的描述:
[0036]如图1所示为本发明FPGA在线测试仪与JTAG链路连接示意图,由图可知,由上位机102和下位机103构成的在线测试仪101通过标准JTAG接口连接JTAG链路,所述上位机102由上位机软件、接口驱动程序及测试向量集组成;上位机软件载入存储在上位机的大量标准格式的测试向量,并结合FPGA厂商提供的边界扫描说明文件,将测试向量的激励转化为符合被测器件边界扫描结构的数字信号序列,通过USB接口传输给下位机103 ;当下位机103反馈测试响应时,上位机102判断回传的测试响应是否与测试向量中的正确结果一致,输出测试结果;
[0037]如图2所示,下位机103包括USB接口模块201、存储器读写模块202、协议处理模块203、JTAG接口 204,所述USB接口模块201接收到上位机数据后,将数据通过存储器读写模块202写入到存储器中,控制状态机控制码流处理模块通过JTAG接口 204向待测FPGA中输出数据,码流处理模块通过存储器读写模块202从存储器当中读取数据,通过JTAG接口 204传输到待测FPGA中;控制状态机控制回读模块通过JTAG接口 204从待测FPGA获得数据;回读模块将JTAG接口 204传输过来的输出响应通过存储器读写模块202写入的存储器当中;存储器读写模块202将存储器中的输出响应通过USB接口模块201传输给上位机。
[0038]如图4所示,测试向量集包含码流文件402、管脚编号403、输入激励404及输出响应405,使用测试向量集401中的码流文件402来配置FPGA时,在特定的管脚编号403上施加特定的输入激励404,获得输出响应405,将该输出响应405与正确的输出响应进行比较,获得测试结果。
[0039]上位机102及下位机103通过USB2.0协议进行通信。
[0040]如图3所示为本发明FPGA在线测试方法流程图,【具体实施方式】如下:
[0041](I)待测FPGA上电之后,在线测试仪中的下位机通过JTAG接口回读JTAG链路中各器件的ID code,检测该JTAG链路的完整性,同时获得该JTAG链路包含器件的数量和各器件的型号,下位机通过USB接口模块将获得的JTAG链路结构信息传输给上位机;
[0042](2)
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1