CN106597250A - 一种可编程逻辑器件测试方法及设备 - Google Patents
一种可编程逻辑器件测试方法及设备 Download PDFInfo
- Publication number
- CN106597250A CN106597250A CN201611059872.0A CN201611059872A CN106597250A CN 106597250 A CN106597250 A CN 106597250A CN 201611059872 A CN201611059872 A CN 201611059872A CN 106597250 A CN106597250 A CN 106597250A
- Authority
- CN
- China
- Prior art keywords
- pld
- measured
- signal
- test
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/2851—Testing of integrated circuits [IC]
- G01R31/2855—Environmental, reliability or burn-in testing
- G01R31/2856—Internal circuit aspects, e.g. built-in test features; Test chips; Measuring material aspects, e.g. electro migration [EM]
Landscapes
- Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明提供一种可编程逻辑器件测试方法及设备,通过向包含有边界扫描链的待测PLD芯片中写入编程文件,再通过边界扫描链的输入端输入由位序列信号构成的激励信号对待测PLD芯片进行激励测试,将从边界扫描链的输出端获取的激励响应与激励信号对应的仿真响应进行比对得到测试结果,所以测试人员可以直接通过边界扫描链的输入端输入位序列信号(激励信号)便可实现对待测PLD芯片的测试,也即测试人员无需通过ATE设备为待测PLD芯片的输入引脚输入电流电压信号,因此测试人员无需使用ATE设备便能完成可编程逻辑器件的测试,大大减小了测试的成本。
Description
技术领域
本发明涉及可编程逻辑器件领域,尤其涉及一种可编程逻辑器件测试方法及设备。
背景技术
随着PLD(Programmable Logic Device,可编程逻辑器件)的集成度越来越高,可编程逻辑器件在各方面的应用也越来越多,因此需求也就越来越大,现有技术中对可编程逻辑器件进行测试时,往往需要为待测PLD芯片的每一个输入引脚输入用于测试的电流电压信号,然而现有技术中一般都是通过专门的ATE(Auto Test Equipment,自动测试)设备实现电流电压信号的输入,因此,对于可编程逻辑器件的测试而言,ATE设备是进行测试的必不可少的设备,但是ATE设备价格昂贵,一台ATE设备的价格往往是上百万,大大增加了测试的成本,因此如何通过低成本的测试方法实现对可编程逻辑器件的测试成为亟待解决的重要问题。
发明内容
本发明实施例提供的可编程逻辑器件测试方法及设备,主要解决的技术问题是:现有技术中当要对可编程逻辑器件进行测试时,只能通过ATE设备为每一个输入引脚输入用于测试的电流电压信号,导致测试成本较高的问题。
为解决上述技术问题,本发明实施例提供一种新的可编程逻辑器件测试方法,包括:
向待测PLD芯片写入编程文件,所述待测PLD芯片中包含设置于引脚与内核电路之间的边界扫描链,所述边界扫描链由与所述待测PLD芯片的各引脚一一对应的寄存器单元依次连接构成,所述边界扫描链一端从所述待测PLD芯片引出作为输入端,另一端从待测PLD芯片引出作为输出端;所述编程文件用于实现所述待测PLD芯片的电路连接;
通过所述边界扫描链的输入端输入激励信号对所述待测PLD芯片进行激励测试,并从所述边界扫描链的输出端获取激励响应,所述激励信号为位序列信号;
将所述激励响应与所述激励信号对应的仿真响应进行比对得到测试结果。
本发明实施例还提供一种可编程逻辑器件测试设备,包括:指令处理器和测试接口;
所述指令处理器用于通过所述测试接口向待测PLD芯片写入编程文件,所述待测PLD芯片中包含设置于引脚与内核电路之间的边界扫描链,所述边界扫描链由与所述待测PLD芯片的各引脚一一对应的寄存器单元依次连接构成,所述边界扫描链一端从所述待测PLD芯片引出作为输入端,另一端从待测PLD芯片引出作为输出端;所述指令处理器还用于通过所述测试接口向所述输入端输入由位序列信号构成的激励信号,并通过所述测试接口从所述输出端获取激励响应;所述指令处理器用于将通过所述测试接口得到的激励响应与所述激励信号对应的仿真响应进行比对得到测试结果。
本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行前述的可编程逻辑器件测试方法。
本发明的有益效果是:
根据本发明实施例提供的可编程逻辑器件测试方法、设备以及计算机存储介质,通过向包含有边界扫描链的待测PLD芯片中写入编程文件,再通过边界扫描链的输入端输入由位序列信号构成的激励信号对待测PLD芯片进行激励测试,将从边界扫描链的输出端获取的激励响应与激励信号对应的仿真响应进行比对得到测试结果,所以测试人员可以直接通过边界扫描链的输入端输入位序列信号(激励信号)便可实现对待测PLD芯片的测试,也即测试人员无需通过ATE设备为待测PLD芯片的输入引脚输入电流电压信号,因此测试人员无需使用ATE设备便能完成可编程逻辑器件的测试,大大减小了测试的成本。
附图说明
图1为本发明实施例一中可编程逻辑器件测试方法的流程示意图;
图2为本发明实施例二中可编程逻辑器件测试方法的流程示意图;
图3为本发明实施例二中向边界扫描链输入端移入激励信号的流程示意图;
图4为本发明实施例二中对激励信号进行激励测试的流程示意图;
图5为本发明实施例二中从边界扫描链输出端获取激励响应的流程示意图;
图6为本发明实施例二中包含边界扫描链的FPGA芯片的结构示意图;
图7为本发明实施例三中可编程逻辑器件测试设备的第一结构示意图;
图8为本发明实施例三中可编程逻辑器件测试设备与待测PLD芯片的连接示意图;
图9为本发明实施例三中可编程逻辑器件测试设备的第二结构示意图。
具体实施方式
下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。
实施例一:
为了减少测试成本,本发明实施例提供一种可编程逻辑器件测试方法,具体的可以参见图1所示,包括:
S101:向待测PLD芯片写入编程文件。
本实施例中的待测PLD芯片中包含设置于引脚与内核电路之间的边界扫描链,本实施例待测PLD芯片中的边界扫描链由与待测PLD芯片的各引脚一一对应的寄存器单元依次连接构成,边界扫描链一端从待测PLD芯片引出作为输入端,另一端从待测PLD芯片引出作为输出端。应当理解的是,本实施例中的编程文件可以由测试人员根据实际应用场景自定义,用于实现本实施例中待测PLD芯片内的电路连接。
S102:通过边界扫描链的输入端输入激励信号对待测PLD芯片进行激励测试,并从边界扫描链的输出端获取激励响应。
本实施例中的激励信号为连续的位序列信号,位序列信号中的各位信号的排序与待测PLD芯片的各引脚的位置分布相对应,如此才便于将激励信号中的各位信号通过边界扫描链依次传送到待测PLD芯片的各对应的引脚。
应当理解的是,本实施例中通过边界扫描链的输入端输入激励信号对待测PLD芯片进行激励测试包括:
将激励信号的各位信号依次从边界扫描链的输入端输入,且每一时钟T输入一个位信号,应当说明的是,本实施例中的时钟T的大小可以由测试人员根据实际情况来灵活设置;当检测到连续输入X个位信号后暂停输入,对待测PLD芯片进行激励测试,并在当前激励测试完毕之后再次启动输入,如此循环,直至所有用于对待测PLD芯片进行激励测试的激励信号的各位信号都通过边界扫描链的输入端输入,才停止向本实施例中待测PLD芯片的边界扫描链输入端输入位信号,其中,X为构成本实施例边界扫描链的所有寄存器单元的位宽总和。可以理解的是,当构成本实施例边界扫描链的各寄存器单元的位宽都为1时,则构成本实施例边界扫描链的所有寄存器单元的位宽总和与本实施例中待测PLD芯片的引脚数目是相同的,也即此时的X也可以根据待测PLD芯片的引脚数目来确定。当然了,若要对本实施例中的待测PLD芯片再进行一次完整的测试,还可以向本实施例中的待测PLD芯片中的边界扫描链的输入端输入新的激励信号。
与上述从边界扫描链的输入端输入激励信号相对应,本实施例中的从边界扫描链的输出端获取激励响应可以包括:
在对待测PLD芯片进行激励测试之后,捕获与待测PLD芯片各输出引脚对应的信号,用捕获到的与待测PLD芯片各输出引脚对应的信号,分别去覆盖与待测PLD芯片输出引脚对应的寄存器单元内的位信号,从边界扫描链的输出端依次输出组成本实施例中的边界扫描链的各寄存器单元中的位信号。将本实施例中的从边界扫描链的输出端输出的各位信号,按照输出的顺序依次排列,就可得到本实施例中的激励响应。当然了,在对待测PLD芯片进行激励测试之后,也可以捕获与待测PLD芯片各输入和输出引脚对应的所有信号,然后用捕获的信号分别去覆盖与待测PLD芯片所有输入和输出引脚对应的寄存器单元内的位信号。
应当理解的是,在本实施例中,在对待测PLD芯片进行了一次激励测试之后,当激励信号中的一位位信号从边界扫描链的输入端输入时,就有一位位信号从边界扫描链的输出端输出,也即是此时,在对待测PLD芯片的测试过程中,每一时钟T就将激励信号中的一位位信号从边界扫描链的输入端输入,与此同时寄存器单元中的一位位信号就通过边界扫描链的输出端输出。
S103:将激励响应与激励信号对应的仿真响应进行比对得到测试结果。
对于本实施例的S103步骤,可以将从边界扫描链的输出端获取的激励响应中与待测PLD芯片输出引脚对应的各位信号,与仿真响应中的与待测PLD芯片输出引脚对应的各位信号进行比较,得到测试结果;也可以将从边界扫描链的输入和输出端获取的激励响应中所有的各位信号,与仿真响应中的与待测PLD芯片各引脚对应的各位信号进行比较,得到测试结果。
本实施例提供的可编程逻辑器件测试方法,通过向包含有边界扫描链的待测PLD芯片中写入编程文件,再通过边界扫描链的输入端输入激励信号对待测PLD芯片进行激励测试,将从边界扫描链的输出端获取的激励响应与激励信号对应的仿真响应进行比对得到测试结果,避免了使用ATE设备为待测PLD芯片输入电流电压信号进行测试,而是直接向待测PLD芯片输入连续的位序列进行测试,因此也就不需使用ATE设备,从而减少了测试成本。
实施例二:
为了更好的理解本发明,本实施例以待测PLD芯片为FPGA(Field ProgrammableGate Array,现场可编程门阵列)芯片为例提供一种更加具体的可编程逻辑器件测试方法,其中,本实施例中的FPGA芯片中包含设置于FPGA芯片引脚与内核电路之间的边界扫描链,且本实施例FGPA芯片中的边界扫描链由与FPGA芯片的各引脚一一对应的寄存器单元依次连接构成,边界扫描链一端从FPGA芯片引出作为输入端,另一端从FPGA芯片引出作为输出端,可以理解的是,由于FPGA芯片具有JTAG(Joint Test Action Group;联合测试行动小组)接口,所以本实施例中边界扫描链的输入端可以对应着TDI引脚,相应的,本实施例中边界扫描链的输出端可以对应着TDO引脚,下面还需要对本实施例FPGA芯片的JTAG接口的其他引脚进行说明,JTAG接口还包括TCK引脚和TMS引脚,其中TCK引脚对应着测试时钟的输入,TMS引脚对应着测试模式的选择。
对于本实施例提供的可编程逻辑器件测试方法,具体的可以参见图2所示,包括:
S201:准备测试用例集文件。
本实施例中一个完整的测试用例文件至少包括编程文件、激励文件、约束文件、和芯片封装文件,其中编程文件也即位流文件,位流文件中包含为了测试FPGA芯片而特殊设计的程序代码,用于载入到FPGA芯片中实现FPGA芯片的电路连接;本实施例中的激励文件简称VCD文件,其中包括做仿真测试时,在仿真电路的输入端加载的仿真激励和在仿真电路输出端得到的仿真响应,所以本实施例中的VCD文件是在仿真过程中生成的;本实施例中的约束文件简称LCF文件,描述了位流文件的输入输出端口与FPGA芯片引脚的对应关系,是生成激励信号的必要文件;本实施例中的芯片封装文件简称PKG文件,描述了FPGA芯片引脚与边界扫描链的对应关系,也是生成激励信号的必要文件。
需要说明的是,在本实施例中,在对FPGA芯片进行测试之前,都需要至少准备好一个完整的测试用例文件,其中,一个测试用例中的位流文件、VCD文件、LCF文件和PKG文件的名称应当相同,而且对于一个测试过程来说,测试人员预先编写好的位流文件、VCD文件、LCF文件和PKG文件之间有着一一对应的关系。并且测试人员往往会为一个FPGA芯片的测试准备多个完整的测试用例,多个完整的测试用例组成一个测试用例集。
此外,还需要说明的是,本实施例中在仿真测试的输入端加载的仿真激励可以通过预先设置的一段程序代码生成,例如,可以预先编写脚本文件,脚本文件中包含有用于生成仿真激励的程序代码,此外,脚本文件中还包含有脚本命令,其中,脚本命令可以包括加载位流文件命令,解析VCD文件命令,生成测试报告命令等。
为便于理解,这里继续对本实施例中的仿真过程进行说明:
本实施例中的仿真电路的电路连接应当与FPGA芯片中的电路连接相同,可以通过脚本文件生成需要载入仿真电路的仿真激励,然后读取LCF文件中的端口属性和方向,通过端口映射,在仿真电路的输入端加载仿真激励,从仿真电路的输出端获取仿真响应,获取每一个输入输出端口每个时钟周期的值,得到仿真激励和仿真响应的输出结果。应当理解的是,本实施例中的时钟周期可以由从TCK引脚输入的测试时钟输入信号来控制,为便于说明,假设本实施例中的FGPA芯片的引脚数目为六,则可以理解的是,本实施例中的时钟周期可以为六个TCK时钟,也即是每六个TCK时钟就获取仿真电路中每一个输入输出端口的值。
S202:向FPGA芯片写入位流文件。
本实施例脚本文件中的脚本命令可以包括加载位流文件命令,该命令中指定了当前向FPGA芯片写入位流文件的路径,所以测试人员可以通过下载线缆将本实施例中的位流文件下载到FPGA芯片中。
S203:生成测试FPGA芯片的激励信号。
本实施例中的激励信号是由仿真激励和仿真响应中的各位信号,按照FPGA芯片各引脚的位置分布顺序对应组合而成,由于PKG文件中描述了FPGA芯片的各引脚对应于边界扫描链中的位置,LCF文件中描述了位流文件的输入输出端口与FPGA芯片引脚的对应关系,所以结合PKG文件和LCF文件即可得到本实施例中从边界扫描链的输入端输入的激励信号。
需要说明的是,本实施例中S202步骤和S203步骤的顺序并不限于本实施例中的示例,测试人员也可以先执行S203步骤,再执行S202步骤。
S204:向FPGA芯片边界扫描链的输入端移入一个时钟周期的激励信号。
对于步骤S204的过程,可以参见图3所示,包括:
S31:进入Shift-IR状态。
在Shift-IR状态下可以通过载入指令到指令寄存器中实现各种控制。
S32:载入Preload(预加载)指令到指令寄存器,确保初始载入的激励信号有效。
S33:进入Shift-DR状态。
Shift-DR状态是通过TDI端口和TDO端口进行数据传输的状态。在这个状态中,由TCK驱动,每一个TCK时钟,连接在TDI端口和TDO端口之间的寄存器单元就从TDI端口接收一位位信号,同时通过TDO端口输出一位位信号,当然了,在这个状态下从TDI输入的各位位信号是组成激励信号的位信号。
S34:移入一个时钟周期的激励信号。
应当理解的是,当一个时钟周期的激励信号都通过边界扫描链的输入端输入之后,需要在对这一个时钟周期的激励信号测试完成之后再启动输入下一个时钟周期的激励信号。
S205:对从TDI端口输入的激励信号进行激励测试。
对于本实施步骤S205的过程,可以参见图4所示,包括:
S41:进入Run-Test-Idle状态,然后跳转到Shift-IR状态。
S42:载入INTEST(边界扫描内部测试)指令到指令寄存器。
S43:跳转到Run-Test-Idle状态。
其中,Run-Test-Idle状态是在不同操作间的一个中间状态,这个状态下的动作取决于当前指令寄存器中的指令,有些指令会在该状态下执行一定的操作,而有些指令在该状态下不需要执行任何操作。
S206:从边界扫描链的输出端获取一个时钟周期的激励响应。
由于本实施例中的激励信号是以一个时钟周期为单位从TDI端口输入的,所以本实施例中的激励响应也是以一个时钟周期为单位从TDO端口获取激励响应。对于本实施例中的S206步骤,其具体的过程可以参见图5所示,包括:
S51:进入Capture-DR状态捕获与FPGA芯片各输出引脚对应的信号。
对于S51,步骤,还需要用捕获到的与FPGA芯片各输出引脚对应的信号,分别去覆盖与FPGA芯片输出引脚对应的寄存器单元内的位信号。
S52:进入Shift-DR状态。
S53:从TDO端口移出一个时钟周期的激励响应后保持在Shift-DR状态。
应当理解的是,在本实施例中
在此,还需要对从FPGA芯片边界扫描链移入移出一个时钟周期的激励信号和激励响应具体的方式进行说明,本实施例以FPGA芯片的引脚数目为六来进行示例说明,当然了,一个FPGA芯片引脚的数目往往都不止六个,但是其具体的测试过程都可以参照本实施例提供的方案。
请参见图6所示,图6为一个包含六个引脚的FPGA芯片的示意图,将S203中生成的激励信号的各位信号依次从TDI端口输入,且每一时钟T输入一个位信号,应当理解的是,这里的时钟T也即一个TCK时钟,也即每一个TCK时钟就从TDI端口输入一个激励信号的位信号,六个TCK时钟后FPGA芯片的每一个引脚都有其对应的信号,再执行激励测试,最后从TDO端口输出激励响应的各位位信号,且每一个TCK时钟就从TDO端口输出一个激励响应的位信号,应当理解的是,这里的六个TCK时钟也即是上述S204和S206的一个时钟周期,也即是一个时钟周期等于六个TCK时钟。
S207:判断是否已经完成所有时钟周期的激励测试,如是,转至S208,如否,转至S204。
S208:将每一个时钟周期的激励响应与每一个时钟周期激励信号对应的仿真响应进行比对得到测试结果。
本实施例S208步骤具体的比对过程可以是将激励响应的每一位位信号与仿真响应中对应的每一位位信号进行比较,如果仿真响应中的某一位位信号为X,则可以忽略不对比此位位信号,然后可以以表格的方式,把不匹配的位信号对应的端口以及对应的时钟周期列出来,例如,可以作如表一所示的表格:
表一
Signal name | Time | Simulation Result | Onboard Test Result | Note |
Out_a | #5 | 1! | 0! |
S209:判断是否完成测试用例集中所有测试用例的测试,如是转至S210,如否,转至S202。
S210:分析每一个测试用例的测试结果,生成测试报告。
其中,最终生成的测试报告可以参见表二所示,测试报告中可以列出测试用例的名称、测试的结果、出错端口的位置等等。
表二
Testcase name | Result | Note | Location |
module_a | OK | ||
module_b | Fail |
本实施例提供的可编程逻辑器件测试方法,通过向包含有边界扫描链的FPGA芯片中写入编程文件,再通过边界扫描链的输入端输入激励信号对FPGA芯片进行激励测试,将从边界扫描链的输出端获取的激励响应与激励信号对应的仿真响应进行比对得到测试结果,避免了使用ATE设备为FPGA芯片输入电流电压信号进行测试,而是直接向FPGA芯片输入连续的位序列进行测试,因此也就不需使用ATE设备,从而减少了测试成本。
实施例三:
为了节约测试成本,本发明实施例提供一种可编程逻辑器件测试设备,包括指令处理器71和指令处理器72,具体的可以参见图7所示。
其中,本实施例中的指令处理器71用于通过测试接口72向待测PLD芯片写入编程文件,待测PLD芯片中包含设置于引脚与内核电路之间的边界扫描链,边界扫描链由与待测PLD芯片的各引脚一一对应的寄存器单元依次连接构成,边界扫描链一端从待测PLD芯片引出作为输入端,另一端从待测PLD芯片引出作为输出端;指令处理器71还用于通过测试接口72向输入端输入激励信号,并通过测试接口72从输出端获取激励响应;指令处理器71用于将通过测试接口72得到的激励响应与激励信号对应的仿真响应进行比对得到测试结果。
需要说明的是,本实施例中的测试接口72是一种并行接口,例如,可以是USB口,在本实施例中,还可以将待测PLD芯片放在测试板上进行测试,本实施例中的测试板上包含JTAG接口73和简单的辅助硬件电路。在本实施例中,为了通过测试接口72向待测PLD芯片写入编程文件,可以通过使用下载线缆74实现本实施中的可编辑逻辑器件测试设备与待测PLD芯片数据之间的传送,具体的可以参见图8所示。应当理解的是,本实施例中的指令处理器71可以通过测试接口72与JTAG接口73中的TDI端口实现激励信号的输入,同时可以通过测试接口72与JTAG接口73中的TDO端口实现激励响应的输出。此外应当理解的是,本实施例中的指令处理器71同样也可以通过测试接口72和JTAG接口73中的TDI端口向待测PLD芯片写入编程文件,向待测PLD芯片中写入的编程文件的存放路径与输入的激励信号的路径是不同的。
在本实施例中,指令处理器71是先通过测试接口72和JTAG接口73的TDI端口向待测PLD芯片载入编程文件,本实施例中的编程文件的存放位置可以是开发人员预先在待测PLD芯片内开辟的一个存储空间,在编程文件载入完毕之后,指令处理器71控制JTAG接口73的TDI端口和TDO端口连接到边界扫描链上,然后指令处理器71才通过测试接口72和JTAG接口73的TDI端口向待测PLD芯片的边界扫描链中输入激励信号。
需要说明的是,本实施例中的激励信号为连续的位序列信号,位序列信号中的各位信号的排序与待测PLD芯片的各引脚的位置分布相对应,如此才便于将激励信号中的各位信号通过边界扫描链依次传送到待测PLD芯片的各对应的引脚。
本实施例中的指令处理器71用于通过测试接口72将构成激励信号的各位信号依次从边界扫描链的输入端输入,且每一时钟输入一个位信号,应当说明的是,本实施例中的时钟T的大小可以由测试人员根据实际情况来灵活设置;当指令处理器71检测到连续输入X个位信号后暂停输入,对待测PLD芯片进行激励测试,并在当前激励测试完毕后再次启动输入,如此循环,直至指令处理器71检测到所有用于对待测PLD芯片进行激励测试的激励信号的各位信号都通过边界扫描链的输入端输入,才停止向本实施例中待测PLD芯片的边界扫描链输入端输入位信号,其中,X为构成本实施例边界扫描链的所有寄存器单元的位宽总和。可以理解的是,当构成本实施例边界扫描链的各寄存器单元的位宽都为1时,则构成本实施例边界扫描链的所有寄存器单元的位宽总和与本实施例中待测PLD芯片的引脚数目是相同的,也即此时的X也可以根据待测PLD芯片的引脚数目来确定。当然了,若要对本实施例中的待测PLD芯片再进行一次完整的测试,还可以通过测试接口72向本实施例中的待测PLD芯片中的边界扫描链的输入端输入新的激励信号。
此外,本实施例中的指令处理器71用于在对待测PLD芯片进行激励测试之后,捕获与待测PLD芯片各输出引脚对应的信号,用捕获到的与待测PLD芯片各输出引脚对应的信号,分别去覆盖与待测PLD芯片输出引脚对应的寄存器单元内的信号,从边界扫描链的输出端依次输出组成边界扫描链的各寄存器单元中的位信号。本实施例中的指令处理器71将通过测试接口72从边界扫描链的输出端输出的各位信号,按照输出的顺序依次排列,就可得到本实施例中的激励响应。当然了,指令处理器71在对待测PLD芯片进行激励测试之后,也可以捕获与待测PLD芯片各输入和输出引脚对应的所有信号,然后用捕获的信号分别去覆盖与待测PLD芯片所有输入和输出引脚对应的寄存器单元内的位信号。
应当理解的是,本实施例中的指令处理器71在对待测PLD芯片进行了一次激励测试之后,激励信号中的一位位信号从边界扫描链的输入端输入时,就有一位位信号从边界扫描链的输出端输出,也即是此时,在对待测PLD芯片的测试过程中,每一时钟T就将激励信号中的一位位信号从边界扫描链的输入端输入,与此同时寄存器单元中的一位位信号就通过边界扫描链的输出端输出。
此外,还需要说明的是,本实施例中的指令处理器71还用于将通过测试接口72得到的激励响应中与待测PLD芯片输出引脚对应的各位信号,与仿真响应中的与待测PLD芯片输出引脚对应的各位信号进行比较,得到测试结果;也可以将从边界扫描链的输入和输出端获取的激励响应中所有的各位信号,与仿真响应中的与待测PLD芯片各引脚对应的各位信号进行比较,得到测试结果。
当然,为了节约测试时间与资源,提升测试效率,本实施例中的可编程逻辑器件测试设备表可以包括至少两个测试接口72,测试接口72中的至少两个分别连接有待测PLD芯片,其中,指令处理器71用于通过与待测PLD芯片连接的测试接口72,分别向各待测PLD芯片发送激励信号,这样就可以同时通过一台可编程逻辑器件测试设备同时测试多个待测PLD芯片,具体的可以参见图9所示。
当本实施例中的可编程逻辑器件测试设备的测试接口72为两个时,这里以待测PLD芯片为FPGA芯片为例进行说明,此时的指令处理器71用于通过两个测试接口72分别向各自对应的FPGA芯片写入编程文件,每个FPGA芯片中包含设置于引脚与内核电路之间的边界扫描链,边界扫描链由与FPGA芯片的各引脚一一对应的寄存器单元依次连接构成,边界扫描链一端从FPGA芯片引出作为输入端,另一端从FPGA芯片引出作为输出端;指令处理器71还用于通过两个测试接口72分别向两个FPGA芯片各自对应的输入端输入激励信号,并通过两个测试接口72从各自的输出端获取激励响应;指令处理器71用于将通过两个测试接口72得到的激励响应与各自激励信号对应的仿真响应进行比对得到测试结果。
需要说明的是,本实施例中向两个FPGA芯片写入的两个编程文件可以是相同的,也可以是不同的,当然了通过两个指令处理器72向各FPGA芯片的输入端输入的激励信号可以是相同的,也可以是不同的。
通过本实施例提供的可编程逻辑器件测试设备,相对于现有技术中只能使用ATE设备来进行测试的方案,不仅减小了测试成本,而且测试人员可以在一台可编程逻辑器件测试设备上同时测试多个芯片,提升了测试效率。
显然,本领域的技术人员应该明白,上述本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在计算机存储介质(ROM/RAM、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。
以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (10)
1.一种可编程逻辑器件测试方法,其特征在于,包括:
向待测PLD芯片写入编程文件,所述待测PLD芯片中包含设置于引脚与内核电路之间的边界扫描链,所述边界扫描链由与所述待测PLD芯片的各引脚一一对应的寄存器单元依次连接构成,所述边界扫描链一端从所述待测PLD芯片引出作为输入端,另一端从待测PLD芯片引出作为输出端;所述编程文件用于实现所述待测PLD芯片的电路连接;
通过所述边界扫描链的输入端输入激励信号对所述待测PLD芯片进行激励测试,并从所述边界扫描链的输出端获取激励响应,所述激励信号为位序列信号;
将所述激励响应与所述激励信号对应的仿真响应进行比对得到测试结果。
2.如权利要求1所述的可编程逻辑器件测试方法,其特征在于,所述激励信号为连续的位序列信号,所述位序列信号中的各位信号的排序与所述待测PLD芯片的各引脚的位置分布相对应。
3.如权利要求2所述的可编程逻辑器件测试方法,其特征在于,所述通过边界扫描链的输入端输入激励信号对所述待测PLD芯片进行激励测试包括:
将所述激励信号的各位信号依次从所述边界扫描链的输入端输入,且每一时钟T输入一个位信号;
当检测到连续输入X个位信号后暂停输入,对所述待测PLD芯片进行激励测试,并在当前激励测试完毕后再依次输入X个位信号,直到所述激励信号输入完毕;
所述X为构成所述边界扫描链的所有寄存器单元的位宽总和。
4.如权利要求3所述的可编程逻辑器件测试方法,其特征在于,所述从边界扫描链的输出端获取激励响应包括:
在对所述待测PLD芯片进行激励测试之后,捕获与所述待测PLD芯片各输出引脚对应的信号;
用捕获到的与所述待测PLD芯片各输出引脚对应的信号,分别去覆盖与所述待测PLD芯片输出引脚对应的寄存器单元内的位信号,从所述边界扫描链的输出端依次输出组成所述边界扫描链的各寄存器单元中的位信号。
5.如权利要求1-4任一项所述的可编程逻辑器件测试方法,其特征在于,所述将激励响应与所述激励信号对应的仿真响应进行比对得到测试结果包括:
将所述激励响应中与所述待测PLD芯片输出引脚对应的各位信号,与所述仿真响应中的与所述待测PLD芯片输出引脚对应的各位信号进行比较,得到测试结果。
6.一种可编程逻辑器件测试设备,其特征在于,包括:指令处理器和测试接口;
所述指令处理器用于通过所述测试接口向待测PLD芯片写入编程文件,所述待测PLD芯片中包含设置于引脚与内核电路之间的边界扫描链,所述边界扫描链由与所述待测PLD芯片的各引脚一一对应的寄存器单元依次连接构成,所述边界扫描链一端从所述待测PLD芯片引出作为输入端,另一端从待测PLD芯片引出作为输出端;所述指令处理器还用于通过所述测试接口向所述输入端输入由位序列信号构成的激励信号,并通过所述测试接口从所述输出端获取激励响应;所述指令处理器用于将通过所述测试接口得到的激励响应与所述激励信号对应的仿真响应进行比对得到测试结果。
7.如权利要求6所述的可编程逻辑器件测试设备,其特征在于,所述指令处理器用于通过所述测试接口将构成所述激励信号的各位信号依次从所述边界扫描链的输入端输入,且每一时钟输入一个位信号,当所述指令处理器检测到连续输入X个位信号后暂停输入,对所述待测PLD芯片进行激励测试,并在当前激励测试完毕后再依次输入X个位信号,直到所述激励信号输入完毕;所述X为构成所述边界扫描链的所有寄存器单元的位宽总和。
8.如权利要求7所述的所述的可编程逻辑器件测试设备,其特征在于,所述指令处理器用于在对所述待测PLD芯片进行激励测试之后,捕获与所述待测PLD芯片各输出引脚对应的信号,用捕获到的与所述待测PLD芯片各输出引脚对应的信号,分别去覆盖与所述待测PLD芯片输出引脚对应的寄存器单元内的信号,从所述边界扫描链的输出端依次输出组成所述边界扫描链的各寄存器单元中的位信号。
9.如权利要求6-8任一项所述的可编程逻辑器件测试设备,其特征在于,所述指令处理器用于将通过所述测试接口得到的所述激励响应中与所述待测PLD芯片输出引脚对应的各位信号,与所述仿真响应中的与所述待测PLD芯片输出引脚对应的各位信号进行比较,得到测试结果。
10.如权利要求6-8所述的可编程逻辑器件测试设备,其特征在于,包括至少两个测试接口,所述测试接口中的至少两个分别连接有待测PLD芯片;
所述指令处理器用于通过与待测PLD芯片连接的测试接口,分别向所述各待测PLD芯片发送激励信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611059872.0A CN106597250A (zh) | 2016-11-24 | 2016-11-24 | 一种可编程逻辑器件测试方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611059872.0A CN106597250A (zh) | 2016-11-24 | 2016-11-24 | 一种可编程逻辑器件测试方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106597250A true CN106597250A (zh) | 2017-04-26 |
Family
ID=58593472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611059872.0A Pending CN106597250A (zh) | 2016-11-24 | 2016-11-24 | 一种可编程逻辑器件测试方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106597250A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446586A (zh) * | 2018-10-03 | 2019-03-08 | 复旦大学 | 一种高效通用芯片测试系统 |
CN109635466A (zh) * | 2018-12-18 | 2019-04-16 | 上海复旦微电子集团股份有限公司 | 一种用于可配置芯片的功能仿真方法及系统 |
CN110688297A (zh) * | 2019-02-25 | 2020-01-14 | 上海核工程研究设计院有限公司 | 一种针对计算逻辑组态的自动化测试方法 |
CN111220900A (zh) * | 2020-03-02 | 2020-06-02 | 南京英锐创电子科技有限公司 | 芯片扫描链测试方法和系统 |
CN111337820A (zh) * | 2020-04-24 | 2020-06-26 | 江西联智集成电路有限公司 | 数字芯片扫描链测试方法、装置、设备及介质 |
CN112102874A (zh) * | 2020-08-13 | 2020-12-18 | 深圳市宏旺微电子有限公司 | Dram测试系统、测试方法和装置 |
CN112270152A (zh) * | 2020-10-29 | 2021-01-26 | 厦门紫光展锐科技有限公司 | 芯片io引脚验证系统和方法 |
CN112285538A (zh) * | 2020-10-30 | 2021-01-29 | 国核自仪系统工程有限公司 | 芯片测试方法及系统 |
CN112444731A (zh) * | 2020-10-30 | 2021-03-05 | 海光信息技术股份有限公司 | 芯片测试方法、装置、处理器芯片及服务器 |
CN112526327A (zh) * | 2020-10-28 | 2021-03-19 | 深圳市紫光同创电子有限公司 | 边界扫描测试方法及存储介质 |
CN112782565A (zh) * | 2021-01-29 | 2021-05-11 | 福州派利德电子科技有限公司 | 非对称结构芯片的极性测试方法及系统 |
CN113377587A (zh) * | 2021-06-01 | 2021-09-10 | 珠海昇生微电子有限责任公司 | 基于FPGA芯片实现的scan chain电路的测试系统及方法 |
CN113705141A (zh) * | 2021-07-19 | 2021-11-26 | 深圳市紫光同创电子有限公司 | Fpga芯片验证方法、系统、设备及存储介质 |
CN113702798A (zh) * | 2020-05-22 | 2021-11-26 | Oppo广东移动通信有限公司 | 一种边界扫描测试方法、装置、设备、芯片及存储介质 |
CN113933627A (zh) * | 2021-10-08 | 2022-01-14 | 网易有道信息技术(北京)有限公司 | 用于自动测试验证电子产品的方法及其相关产品 |
CN115827568A (zh) * | 2022-11-23 | 2023-03-21 | 芯华章科技(北京)有限公司 | 获取逻辑系统设计的数据的方法、电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1435695A (zh) * | 2002-02-01 | 2003-08-13 | 华为技术有限公司 | 基于边界扫描器件的电路板互连线的测试方法 |
CN1580799A (zh) * | 2003-08-05 | 2005-02-16 | 华为技术有限公司 | 一种边界扫描链自测方法 |
CN101515019A (zh) * | 2009-03-17 | 2009-08-26 | Ut斯达康通讯有限公司 | 基于可编程器件的动态边界扫描链路测试方法 |
CN101923135A (zh) * | 2010-09-16 | 2010-12-22 | 复旦大学 | Fpga内插互连测试用扫描链电路 |
CN101995546A (zh) * | 2010-11-16 | 2011-03-30 | 复旦大学 | 基于边界扫描的可编程逻辑器件自动测试系统与方法 |
CN105334452A (zh) * | 2015-11-30 | 2016-02-17 | 张释文 | 一种边界扫描测试系统 |
-
2016
- 2016-11-24 CN CN201611059872.0A patent/CN106597250A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1435695A (zh) * | 2002-02-01 | 2003-08-13 | 华为技术有限公司 | 基于边界扫描器件的电路板互连线的测试方法 |
CN1580799A (zh) * | 2003-08-05 | 2005-02-16 | 华为技术有限公司 | 一种边界扫描链自测方法 |
CN101515019A (zh) * | 2009-03-17 | 2009-08-26 | Ut斯达康通讯有限公司 | 基于可编程器件的动态边界扫描链路测试方法 |
CN101923135A (zh) * | 2010-09-16 | 2010-12-22 | 复旦大学 | Fpga内插互连测试用扫描链电路 |
CN101995546A (zh) * | 2010-11-16 | 2011-03-30 | 复旦大学 | 基于边界扫描的可编程逻辑器件自动测试系统与方法 |
CN105334452A (zh) * | 2015-11-30 | 2016-02-17 | 张释文 | 一种边界扫描测试系统 |
Non-Patent Citations (2)
Title |
---|
臧春华 等: "《现代电子技术基础(数字部分)》", 28 February 2005, 北京航空航天大学出版社 * |
谭剑波 等: "《边界扫描测试技术》", 31 December 2013, 国防工业出版社 * |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446586A (zh) * | 2018-10-03 | 2019-03-08 | 复旦大学 | 一种高效通用芯片测试系统 |
CN109635466A (zh) * | 2018-12-18 | 2019-04-16 | 上海复旦微电子集团股份有限公司 | 一种用于可配置芯片的功能仿真方法及系统 |
CN109635466B (zh) * | 2018-12-18 | 2023-05-23 | 上海复旦微电子集团股份有限公司 | 一种用于可配置芯片的功能仿真方法及系统 |
CN110688297A (zh) * | 2019-02-25 | 2020-01-14 | 上海核工程研究设计院有限公司 | 一种针对计算逻辑组态的自动化测试方法 |
CN111220900A (zh) * | 2020-03-02 | 2020-06-02 | 南京英锐创电子科技有限公司 | 芯片扫描链测试方法和系统 |
CN111337820A (zh) * | 2020-04-24 | 2020-06-26 | 江西联智集成电路有限公司 | 数字芯片扫描链测试方法、装置、设备及介质 |
CN113702798A (zh) * | 2020-05-22 | 2021-11-26 | Oppo广东移动通信有限公司 | 一种边界扫描测试方法、装置、设备、芯片及存储介质 |
CN112102874A (zh) * | 2020-08-13 | 2020-12-18 | 深圳市宏旺微电子有限公司 | Dram测试系统、测试方法和装置 |
CN112102874B (zh) * | 2020-08-13 | 2024-02-06 | 深圳市宏旺微电子有限公司 | Dram测试系统、测试方法和装置 |
CN112526327A (zh) * | 2020-10-28 | 2021-03-19 | 深圳市紫光同创电子有限公司 | 边界扫描测试方法及存储介质 |
CN112270152B (zh) * | 2020-10-29 | 2022-06-21 | 厦门紫光展锐科技有限公司 | 芯片io引脚验证系统和方法 |
CN112270152A (zh) * | 2020-10-29 | 2021-01-26 | 厦门紫光展锐科技有限公司 | 芯片io引脚验证系统和方法 |
CN112444731A (zh) * | 2020-10-30 | 2021-03-05 | 海光信息技术股份有限公司 | 芯片测试方法、装置、处理器芯片及服务器 |
CN112285538A (zh) * | 2020-10-30 | 2021-01-29 | 国核自仪系统工程有限公司 | 芯片测试方法及系统 |
CN112782565A (zh) * | 2021-01-29 | 2021-05-11 | 福州派利德电子科技有限公司 | 非对称结构芯片的极性测试方法及系统 |
CN113377587A (zh) * | 2021-06-01 | 2021-09-10 | 珠海昇生微电子有限责任公司 | 基于FPGA芯片实现的scan chain电路的测试系统及方法 |
CN113705141A (zh) * | 2021-07-19 | 2021-11-26 | 深圳市紫光同创电子有限公司 | Fpga芯片验证方法、系统、设备及存储介质 |
CN113933627A (zh) * | 2021-10-08 | 2022-01-14 | 网易有道信息技术(北京)有限公司 | 用于自动测试验证电子产品的方法及其相关产品 |
CN115827568A (zh) * | 2022-11-23 | 2023-03-21 | 芯华章科技(北京)有限公司 | 获取逻辑系统设计的数据的方法、电子设备和存储介质 |
CN115827568B (zh) * | 2022-11-23 | 2023-07-28 | 芯华章科技(北京)有限公司 | 获取逻辑系统设计的数据的方法、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106597250A (zh) | 一种可编程逻辑器件测试方法及设备 | |
CN101995546B (zh) | 基于边界扫描的可编程逻辑器件自动测试系统与方法 | |
US6928638B2 (en) | Tool for generating a re-generative functional test | |
CN105631077B (zh) | 具有增大的故障覆盖率的集成电路 | |
JPH0660933B2 (ja) | 集積回路またはそれに関する改良 | |
US9689924B2 (en) | Circuit for testing integrated circuits | |
US20020163351A1 (en) | Method for producing test patterns for testing an integrated circuit | |
US7111217B1 (en) | Method and system for flexibly nesting JTAG TAP controllers for FPGA-based system-on-chip (SoC) | |
Hansen | Testing conventional logic and memory clusters using boundary scan devices as virtual ATE channels | |
US11933845B2 (en) | Boundary scan test method and storage medium | |
CN116881067B (zh) | 一种生成vcd文件的方法、装置、设备及存储介质 | |
CN1435695A (zh) | 基于边界扫描器件的电路板互连线的测试方法 | |
Ibrahim et al. | iJTAG integration of complex digital embedded instruments | |
Ubar et al. | Software-based self-test generation for microprocessors with high-level decision diagrams | |
Zhiwei et al. | Realization of Integrity Test of Boundary-Scan Structure | |
US7188043B1 (en) | Boundary scan analysis | |
Barr et al. | End-to-end testing for boards and systems using boundary scan | |
CN118275862A (zh) | 芯片测试系统及方法 | |
Kashyap et al. | Boundary Scan Architecture for a Double Precision Floating Point Subtractor | |
Devadze et al. | Microprocessor-based system test using debug interface | |
Manjula et al. | Survey of Electronic hardware Testing types ATE evolution & case studies | |
Kamran et al. | Virtual tester development using HDL/PLI | |
de Boer et al. | Silicon debug: avoid needles respins | |
Shi et al. | Verification of Acceptance Filter Module Design based on UVM | |
Shah et al. | Design of an in-field Embedded Test Controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170426 |