CN102466776B - 面向复杂可编程逻辑器件的批量测试方法 - Google Patents
面向复杂可编程逻辑器件的批量测试方法 Download PDFInfo
- Publication number
- CN102466776B CN102466776B CN 201010550885 CN201010550885A CN102466776B CN 102466776 B CN102466776 B CN 102466776B CN 201010550885 CN201010550885 CN 201010550885 CN 201010550885 A CN201010550885 A CN 201010550885A CN 102466776 B CN102466776 B CN 102466776B
- Authority
- CN
- China
- Prior art keywords
- test
- cpld
- programming
- vector
- ate
- 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.)
- Active
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种面向复杂可编程逻辑器件的批量测试方法。该方法针对CPLD需要先编程开发才能使用的特点,将CPLD的编程与测试统一起来,由ATE实现CPLD的批量测试。用CPLD开发软件得到针对故障模型的JTAG编程文件及仿真文件,把这些编程文件和仿真文件分别转换成ATE能够识别的向量文件。在批量测试前确定并行测试器件数目,并一次性向ATE加载所有向量。批量测试时每个被测试的CPLD仅需与自动测试设备连接一次,多次执行编程向量和测试向量,可以实现多个故障模型的测试。利用本发明,可基于ATE实现CPLD的在线编程和测试,并通过并行测试技术满足CPLD大批量测试的要求,从而降低测试成本,提高测试效率。
Description
技术领域
本发明涉及一种集成电路批量测试方法,尤其涉及一种面向复杂可编程逻辑器件(Complex Programmable Logic Device,简写为CPLD)实施的批量测试方法,属于集成电路测试技术领域。
背景技术
在集成电路制造过程中,测试是必不可少但又耗时而昂贵的过程。它是保证集成电路性能、质量的关键手段之一。近年来,随着半导体技术的发展,集成电路的集成度和复杂性越来越高,集成电路测试技术也从最初测试小规模集成电路逐步发展到测试中规模、大规模和超大规模集成电路,对测试效率的要求日益提高。
复杂可编程逻辑器件(CPLD)作为当前主流的开发数字集成电路的前期原型设计芯片,具有集成度高、设计开发周期短、灵活性高、易于编程和验证、保密性强等优点,广泛应用于通信、网络、图像处理、汽车、仪器仪表、航天、军事等领域。在通常情况下,用户可以根据各自需要而自行构造某种逻辑功能的数字集成电路,借助集成开发软件平台,用原理图、硬件描述语言等方法设计集成电路,由开发软件编译、综合后生成相应的目标文件,通过器件供应商提供的专用编程器将编程代码传送到目标芯片中,实现所设计的数字系统。随着深亚微米集成电路制造技术的发展,CPLD的性能和集成度在不断提高,成本也逐渐降低,生产商为之配套的电子设计自动化(EDA)开发工具也日臻完善。这一切使得CPLD越来越受用户欢迎。
CPLD在结构上主要包括逻辑阵列块LAB(Logic Array Blocks)、宏单元(Macrocells)、扩展乘积项(共享和并联)(Expender ProductTerms)、可编程连线阵列PIA(Programmable Interconnect Array)和I/O控制块(I/O Control Blocks)等部件。典型的CPLD如Xilinx9500系列和ALTERA公司的MAX7000系列,其中XC9500系列CPLD的宏单元数多达288个,可用门数达6400个,管脚到管脚的时延最快达3.5ns,系统时钟可达到200MHz。MAX7000系列的MAX7512AE可提供10000个可用门、512个宏单元,最大I/O管脚212个,管脚到管脚的时延7.5ns,可以采用从144到256个管脚的各种封装方式。如此高的集成度在给设计开发者带来应用便利的同时也对器件的可靠性提出了更高要求。
随着CPLD应用范围的扩大,CPLD测试的需求量也不断增加,人们急需便捷、高效的测试手段来满足CPLD的批量测试的需求。但是,对于CPLD这样一种内部结构复杂、规模庞大的非易失性可编程逻辑阵列,测试的内容繁多,需要较为庞大的测试资源来支持。目前,CPLD使用者大多采用电子设计自动化(EDA)开发商提供的编程器进行编程后使用,然而对于CPLD的测试来说,如果每次测试过程中先使用编程器编程然后再使用自动测试设备(ATE)进行测试,将会非常繁琐费时。这对于大批量的生产测试而言显然是不现实的。
于明在《电子测试》2010年第1期上发表的论文《CPLD测试方法研究》中,在详细研究CPLD内部结构的基础上,基于“分治法”的基本思路对CPLD的测试理论和方法做了探索性研究,并且重点讨论了CPLD内部模块的故障模型建立和对应的测试向量优化。但是,该论文基本没有涉及CPLD的在线编程和批量测试技术。
目前,主流的CPLD都带有用于实现编程数据传输的JTAG接口,CPLD供应商提供的EDA开发软件也支持多种编程文件格式,比如STAPL、SVF、JED、JAM等,其中的STAPL和SVF两种文件格式几乎涵盖了所有主流CPLD的编程,二者共同点是都支持边界扫描协议IEEE1149.1操作规范,并采用了ASCII码格式,可读性强,便于灵活分割和处理,较容易被开发者转换成目标测试系统的编程向量。不同之处是SVF是串行矢量文件,不包含流控制,对CPLD编程时文件中的所有操作都会执行,因此,可以将文件裁剪成不同用途的子文件,如“擦除”“编程”“验证”子文件;而STAPL文件是JEDEC标准编程语言,包含流控制,文件中以关键字“ACTION”声明了各种动作,每种动作都可以索引其对应的处理过程和数据,编程前只需要指定动作名称就能完成相应的一次操作。
借助于CPLD的JTAG接口和上述两种文件格式,可以开发一系列测试工具实现在集成电路自动测试设备(简写为ATE)上对CPLD进行在线编程,从而达到测试批量CPLD的目的。但是,现有技术中并没有利用JTAG接口实现CPLD批量测试的解决方案。
发明内容
本发明所要解决的技术问题在于提供一种对复杂可编程逻辑器件进行批量测试的方法。
为实现上述的发明目的,本发明采取下述的技术方案:
一种面向复杂可编程逻辑器件的批量测试方法,其特征在于包括如下步骤:
⑴针对被测试的复杂可编程逻辑器件,根据结构特性和功能特性建立相应的故障模型;
⑵使用复杂可编程逻辑器件的开发软件,生成体现所述故障模型的编程文件和测试仿真文件;
⑶从所述编程文件的内容中提取编程信息并转化为自动测试设备可识别的编程向量;
⑷将所述测试仿真文件转换成所述自动测试设备可识别的测试向量;
⑸重复上述步骤⑴~⑷,得到n个故障模型对应的编程向量和测试向量,其中n为自然数;
⑹根据所述自动测试设备的测试资源和被测试的复杂可编程逻辑器件的管脚数,确定最大的并行测试器件数量p,将步骤⑸得到的n对编程向量和测试向量按顺序加载到所述自动测试设备的向量存储区,所述p为自然数;
⑺将t个被测试的复杂可编程逻辑器件连接到所述自动测试设备,对连接性进行测试,其中t为小于或等于p的自然数;
⑻通过所述自动测试设备向t个被测试的复杂可编程逻辑器件提供电源电压,依次执行n次如下过程,完成所述n个故障模型的测试:
a.通过所述自动测试设备将所述编程向量施加到被测试的复杂可编程逻辑器件的编程管脚,实现在线编程;
b.将所述测试向量通过所述自动测试设备施加到被测试的复杂可编程逻辑器件,进行功能测试和参数测试;
⑼通过所述自动测试设备关断被测试的复杂可编程逻辑器件的电源,处理测试结果,一次测试结束;
⑽重复上述步骤⑺~⑼,直至所有被测试的复杂可编程逻辑器件完成测试。
其中,在所述步骤⑴中,所述故障模型包括但不限于逻辑阵列模块、宏单元、IO控制模块、可编程互联阵列的故障模型。
所述步骤⑵中,所述开发软件为EDA工具软件,所述编程文件和所述测试仿真文件为SVF格式或STAPL格式。
所述步骤⑶中,所述编程文件由编程向量生成器提取编程信息,所述编程信息包括编程频率、时序和每一个时钟周期里的相关编程信号。
所述步骤⑷中,由测试向量生成器将所述测试仿真文件转换成测试向量,所述测试向量生成器同时对所述自动测试设备的测试资源进行分配。
所述步骤⑸中,每个故障模型都对应得到一个编程向量和一个测试向量。
所述步骤(6)中,当并行测试器件数量p>1时,所述自动测试设备中每个被测试的复杂可编程逻辑器件对应的测试向量存储区都置为相同的编程向量和测试向量。
所述步骤(7)中,连接性测试包括开路测试和短路测试。
所述步骤(8)中,所述自动测试设备将所述编程向量通过JTAG接口传输进来,施加到被测试的复杂可编程逻辑器件的编程管脚上;
所述编程管脚为所述JTAG接口中的TDI、TDO、TCK和TMS管脚,其中TDI和TMS在TCK的上升沿输入所述自动测试设备提供的所述编程向量,TDO在TCK的下降沿输出有效数据。
对于每一个被测试的复杂可编程逻辑器件,首先执行所述编程向量,并根据TDO管脚上的输出信号判断验证数据的响应是否正确,从而判断是否成功编程;若成功编程则继续执行对应的测试向量,完成预定的功能测试和参数测试。
使用本发明所提供的批量测试方法,可以利用ATE替代CPLD的编程开发器,通过在线编程的方法完成CPLD的编程、测试一体化,实现多个故障模型测试,从而减少CPLD测试的操作环节,节约测试时间,降低CPLD的批量生产测试的测试成本,提高测试的效率。
附图说明
下面结合附图和具体实施方式对本发明作进一步的详细说明。
图1是SVF格式文件的部分内容示例;
图2是STAPL格式文件的部分内容示例;
图3是IEEE1149.1协议的状态机图;
图4是CPLD编程管脚的时序关系示意图;
图5是对CPLD的线编程和测试的文件处理示意图;
图6是编程向量和测试向量在ATE的向量存储区分布示意图;
图7是在ATE上批量测试CPLD的流程示意图。
具体实施方式
本发明所提供的CPLD批量测试方法的基本思路在于:首先根据故障模型用EDA工具软件得到CPLD的编程文件和测试仿真文件,将CPLD的编程文件改动分解并转换成ATE可识别的编程向量,将对应的测试仿真文件转换成ATE可识别的测试向量,一次性向自动测试设备加载所有向量,在ATE上实现针对CPLD多个故障模型的在线编程和测试,测试过程每个被测CPLD仅与ATE连接一次,节约操作时间,而且通过并行测试技术提高测试效率,实现CPLD的量产测试。
为了实现上述的技术思路,采用中高档的集成电路自动测试设备(简写为ATE)是首选。ATE由程控电源模块、高速数字通道模块、精密测量单元模块、高速图形控制模块和外围接口模块组成。程控电源模块为CPLD提供可编程电源,高速数字通道模块和高速图形控制模块为CPLD提供测试激励信号并捕捉响应信号;精密测量单元模块为CPLD提供参数测试条件;外围接口模块用于实现批量测试的外部通信。
对CPLD这样高集成度的复杂电路进行批量的生产化测试,用ATE取代CPLD编程器,通过在线编程将器件的编程与测试合为一体,可以解决CPLD量产测试的编程问题,从而提高测试效率、降低测试成本。目前,现有的自动测试设备(ATE)测试频率可达100MHz、测试通道256个、测试向量图形深度4M,能够满足CPLD测试的硬件要求。对于CPLD的不同封装,可以使用不同的测试适配器来连接CPLD与ATE。如何利用ATE的测试资源快速、高效地实现CPLD的在线编程和测试,是决定量产测试中测试成本的重要因素。
在CPLD的测试过程中,首先要根据不同CPLD的结构和功能设计n(n为自然数)个不同的故障模型,针对各种故障模型把CPLD预置成相应的内部逻辑和外部I/O,这个预制过程就是CPLD的编程。然后按照编程得到的逻辑对CPLD的施加测试向量,通过I/O管脚上的激励、响应信号来判断CPLD的测试结果。每种故障模型都需要经过“编程”、“测试”两个阶段,其中编程阶段又分为“擦除-编程-验证”,占据了CPLD的整个测试过程的大部分时间。
CPLD的测试过程包括功能测试和参数测试。其中功能测试是对CLPD故障模型的逻辑结果验证;参数测试分为直流参数测试和交流参数测试,包括连接性测试、输入漏电电流测试、输出驱动电流测试、电源电流测试、传播延迟测试、建立保持时间测试。这些测试通过ATE的精密测量单元和时间测量单元实现,由ATE提供详细的测试结果信息。
具体而言,如图5所示,本发明首先使用CPLD开发软件如EDA工具软件等实现既定故障模型的设计,得到编程文件(如图1所示的SVF格式或图2所示的STAPL格式)和对应的测试仿真文件,然后完成编程文件和测试仿真文件向ATE向量转换:一方面,把编程文件进行修改,按功能得到几个同样格式的子文件:实现“擦除”CPLD功能的BULK ERASE文件、实现“编程”CPLD功能的PROGRAM文件、实现“验证”数据功能的VERIFY文件,但并不局限于此。这些格式化文件经过编程向量生成器提取编程信息,可得到ATE能够识别的CPLD编程向量。另一方面,用测试向量生成器把测试仿真文件中的仿真数据转换成ATE能够识别的测试向量。
得到这两种向量后,在ATE上由测试向量生成器为被测CPLD分配测试资源,如:分配测试通道、设置测试频率、设置器件电源电压等,用ATE把CPLD的编程向量通过CPLD的JTAG接口传输进来,施加到被测CPLD的编程管脚上,完成CPLD的在线编程。在验证编程的正确性之后,通过ATE继续向CPLD的各个管脚施加对应的测试向量,进行器件的功能测试和参数测试。需要说明的是,由于CPLD是非易失性器件,在完成在线编程到开始功能测试和参数测试之前,ATE可提供但不是必须提供CPLD的器件电源。
这里描述的过程只是单个CPLD的一种故障模型的测试过程。用ATE实现CPLD的批量测试,实际上就是根据不同类型的CPLD的结构和功能设计多个不同的故障模型,例如逻辑阵列模块、宏单元、IO控制模块、可编程互联阵列的故障模型等,并根据自动测试设备的资源配置情况,分配尽可能多的并行测试资源,进而实现多个器件多次并发执行上述在线编程和测试的步骤,完成CPLD的批量测试。图6和图7分别示意了批量测试时ATE向量存储区中的向量分布情况和测试流程。
在上述批量测试过程中,首先要完成的一项主要工作是将EDA开发工具得到的编程文件转换成ATE上可执行的向量,具体实施方式如下:
图1和图2分别是SVF格式文件和STAPL格式文件的部分内容示例。SVF格式文件和STAPL格式文件都是基于IEEE1149.1协议的文本文件。
IEEE1149.1协议定义了一个JTAG接口,其结构包括:4线或5线的测试端口(TAP)、一个状态机(TAP控制器)和由边界扫描单元构成的边界扫描移位寄存器。JTAG接口通过TDI、TDO、TCK、TMS四根信号线(TRST为可选)与外部相连。根据测试工作的需要,编程时会使用CPLD的电源、地、TDI、TDO、TCK和TMS管脚。
在CPLD中,JTAG接口可用来实现系统编程的功能。它的各信号管脚功能如下:
TDI(Test Data In):编程数据输入脚。ATE对CPLD进行在线编程的数据从这个管脚串行输入到芯片。
TDO(Test Data Out):编程数据输出脚,用于串行数据的读出。ATE通过此管脚对编程数据进行验证。
TMS(Test Mode Select):模式选择管脚,用于控制JTAG接口状态机状态的变化,从而实现各种底层JTAG指令。
TCK(Test Clock):时钟输入管脚,用于同步时钟信号,以便同步TDI、TDO和TMS。
TRST*是可选的,为硬件复位信号。
IEEE1149.1协议定义了JTAG接口的状态机和指令,图3是IEEE1149.1协议的状态机图。SVF格式文件和STAPL格式文件使用与IEEE1149.1协议兼容的状态集,分别有14种和16种状态,虽然这些状态名称不同,但都可以在IEEE1149.1状态集中找到对应的状态,因此各状态间的变化都是基于JTAG状态机的。
由于TAP口的各个信号都由TCK同步,IEEE1149.1协议中规定TAP Controller在TCK的上升沿读取TDI和TMS数据,在TCK的下降沿TDO输出有效。编程管脚为TDI、TDO、TCK、TMS管脚,TDI和TMS在TCK的上升沿输入ATE提供的编程向量,TDO在TCK的下降沿输出有效数据。相应的编程管脚的时序关系如图4所示,图中的各时间参数因被测器件(DUT)型号不同而不同。一般器件的数据手册中都会规定TCK的最大频率以及图4中的各个时间参数,在此就不赘述了。
SVF格式文件和STAPL格式文件虽然语法形式不同,但它们都基于IEEE1149.1状态机,编程向量生成器的工作原理就是借助IEEE1149.1状态机,从SVF文件或STAPL文件中提取与编程有关的状态和数据,并由此得到JTAG端口的数据流,把这些数据流转变成ATE可以识别的向量。
编程文件提供的信息包括编程频率、时序和每一个时钟周期里的相关编程信号,生成编程向量的同时约定了由ATE提供的器件电源和编程电压。编程信息由编程向量生成器转换为ATE所能识别的向量,另外,编程向量生成器还对一些连续的重复向量(由编程文件中的等待/延时语句产生)进行优化合并,将有规律的向量压缩合并,进而有效地缩短了编程向量的长度,为ATE节约了向量空间。
编程向量生成器包括:预处理模块、语法解析模块、向量优化模块。为了生成ATE所能识别的向量格式,编程向量生成器根据ATE的资源配置,将解析出来的激励响应信号值转换成能在ATE上运行的向量文件。
由EDA工具生成的测试仿真文件通过测试向量生成器转换成ATE可识别的测试向量。测试向量生成器由通道映射模块、时序生成模块和向量生成模块组成。由于测试仿真文件是针对某种故障模型而得到的,故障模型的复杂度不同,可能会用到较多的器件管脚和复杂的时序,要用到相应的ATE测试资源,如测试通道、测试频率、程控电源、精密测量单元等。因此,合理分配ATE测试资源才能保证CPLD测试的效率。这部分工作也由测试向量生成器完成。
下面以Xilinx公司的XC95108为例,详细介绍对CPLD进行在线编程和测试的过程。
1.建立CPLD故障模型
用Xilinx公司出品的Foundation软件,通过VHDL语言描述或原理图等形式设计故障模型逻辑模块,如宏单元故障模型等,然后用软件实现工具将设计网表导入XC95108器件架构,进行管脚分配,分配时尽量用到所有的器件I/O,使测试尽可能多地覆盖I/O管脚。
2.对上述设计建立的模型进行编译综合、仿真,生成共故障模型的编程文件和测试用的仿真文件。
用Xilinx CPLD fitter得到JEDEC格式的编程文件,用JTAGProgrammer软件工具选择output->Create SVF File,以此得到SVF格式的编程文件。用Foundation软件的仿真工具进行故障模型的功能仿真,得到测试仿真文件。
3.分割编程文件
用文本处理软件从编程文件中自动挑选出与BULK ERASE、PROGRAM和VERIFY有关的部分,分别生成“擦除”、“编程”和“验证”功能的SVF格式子文件。对SVF文件进行分割是为了节省配置时间和配置程序资源,比如,对于新出厂的被测CPLD芯片,其内部初始状态时清空的,可以省去BULK ERASE部分。但对于已经编程开发过的被测芯片,则需要先调用BULK ERASE模块清空器件后再编程、测试。
4.生成编程向量
使用编程向量生成器将步骤2中得到的编程文件转换成目标ATE的向量文件,并设定CPLD编程所需的ATE测试资源。由于ATE是实时测试系统,可以提供严格的时序控制。在对被测器件的管脚施加激励信号或捕捉响应信号都要遵从Xilinx公司XC95108数据手册规定的时序。比如根据XC95108数据手册的说明对TCK的频率、上升沿时间、下降沿时间、TDI的建立时间,保持时间、TDO的响应时间等做相应的配置。此外,对电源电压、驱动/比较电压等都进行定义。
5.生成测试向量
将EDA环境中生成的仿真文件转换为ATE可以接受的测试程序。该过程与步骤4类似,不同的只是涉及到ATE的数字通道映射关系、向量深度、测试所用的时序等等。这种转换是集成电路测试领域普通技术人员都能掌握的常规技术,在此就不赘述了。
6.用ATE上实现批量测试
为达到高效批量测试的目的,在批量测试之前要分析ATE可用的测试资源和被测器件的情况,确定最大的并行测试器件数量p(p为自然数)。本实施例中采用的ATE具有256通道、16路程控电源,采用的被测器件XC95108的管脚数为84,因此,可以实现3个器件并行测试。
将上述的所有编程向量和测试向量一次性施加到ATE的不同存储区域。在批量测试中,首先将t(t为小于或等于p的自然数)个被测试的复杂可编程逻辑器件连接到自动测试设备,对连接性进行测试(包括开路测试和短路测试),然后并行执行一个编程向量,并根据每个并行测试器件的TDO管脚输出信号,判断VERIFY验证数据的响应是否正确,从而断定CPLD是否成功编程。若成功编程则继续并行执行对应的测试向量,完成预期的功能、参数测试。重复这样的操作,依次执行ATE向量存储区中的编程向量和测试向量,将向量存储区的向量都执行一遍,就完成了一次测试。
另外,根据用户需求,若需要最终恢复CPLD的清空状态,则在芯片测试完毕后对测试无故障的芯片执行编程向量中的BULK ERASE部分,擦除当前CPLD内容,结束测试。
通过上述的步骤,在批量测试过程中ATE不需要多次加载程序就能实现每个CPLD的在线编程和测试。其中,步骤1~5作为批量测试的后台开发步骤,可以脱离ATE而使用PC机实现,步骤6需要使用ATE实现。重复执行步骤6就可以实现对同型号CPLD的批量测试。
利用上述的CPLD批量测试方法,仅需向ATE加载一次向量,每个被测试的CPLD仅需与ATE连接一次,就可以实现多个故障模型的测试,通过并行测试技术显著提高了测试效率。
上面尽管出于解释的目的描述了本发明的具体实施例,但是本领域的技术人员将理解到,在不背离权利要求所公开的本发明的范围和精神的条件下,各种变化和变形都是可能的。
Claims (10)
1.一种面向复杂可编程逻辑器件的批量测试方法,其特征在于包括如下步骤:
⑴针对被测试的复杂可编程逻辑器件,根据结构特性和功能特性建立相应的故障模型;
⑵使用复杂可编程逻辑器件的开发软件,生成体现所述故障模型的编程文件和测试仿真文件;
⑶从所述编程文件的内容中提取编程信息并转化为自动测试设备可识别的编程向量;
⑷将所述测试仿真文件转换成所述自动测试设备可识别的测试向量;
⑸重复上述步骤⑴~⑷,得到n个故障模型对应的编程向量和测试向量,其中n为自然数;
⑹根据所述自动测试设备的测试资源和被测试的复杂可编程逻辑器件的管脚数,确定最大的并行测试器件数量p,将步骤⑸得到的n对编程向量和测试向量按顺序加载到所述自动测试设备的向量存储区,所述p为自然数;
⑺将t个被测试的复杂可编程逻辑器件连接到所述自动测试设备,对连接性进行测试,其中t为小于或等于p的自然数;
⑻通过所述自动测试设备向t个被测试的复杂可编程逻辑器件提供电源电压,依次执行n次如下过程,完成所述n个故障模型的测试:
a.通过所述自动测试设备将所述编程向量施加到被测试的复杂可编程逻辑器件的编程管脚,实现在线编程;
b.将所述测试向量通过所述自动测试设备施加到被测试的复杂可编程逻辑器件,进行功能测试和参数测试;
⑼通过所述自动测试设备关断被测试的复杂可编程逻辑器件的电源,处理测试结果,一次测试结束;
⑽重复上述步骤⑺~⑼,直至所有被测试的复杂可编程逻辑器件完成测试。
2.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤⑴中,所述故障模型包括但不限于逻辑阵列模块、宏单元、IO控制模块、可编程互联阵列的故障模型。
3.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤⑵中,所述开发软件为EDA工具软件,所述编程文件和所述测试仿真文件为SVF格式或STAPL格式。
4.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤⑶中,所述编程文件由编程向量生成器提取编程信息,所述编程信息包括编程频率、时序和每一个时钟周期里的相关编程信号。
5.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤⑷中,由测试向量生成器将所述测试仿真文件转换成测试向量,所述测试向量生成器同时对所述自动测试设备的测试资源进行分配。
6.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤⑸中,每个故障模型都对应得到一个编程向量和一个测试向量。
7.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤(6)中,当并行测试器件数量p>1时,所述自动测试设备中每个被测试的复杂可编程逻辑器件对应的测试向量存储区都置为相同的编程向量和测试向量。
8.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤(7)中,连接性测试包括开路测试和短路测试。
9.如权利要求1所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤(8)中,所述自动测试设备将所述编程向量通过JTAG接口传输进来,施加到被测试的复杂可编程逻辑器件的编程管脚上;
所述编程管脚为所述JTAG接口中的TDI、TDO、TCK和TMS管脚,其中TDI和TMS在TCK的上升沿输入所述自动测试设备提供的所述编程向量,TDO在TCK的下降沿输出有效数据。
10.如权利要求9所述的面向复杂可编程逻辑器件的批量测试方法,其特征在于:
所述步骤(8)中,对于每一个被测试的复杂可编程逻辑器件,首先执行所述编程向量,并根据TDO管脚上的输出信号判断验证数据的响应是否正确,从而判断是否成功编程;若成功编程则继续执行对应的测试向量,完成预定的功能测试和参数测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010550885 CN102466776B (zh) | 2010-11-19 | 2010-11-19 | 面向复杂可编程逻辑器件的批量测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010550885 CN102466776B (zh) | 2010-11-19 | 2010-11-19 | 面向复杂可编程逻辑器件的批量测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102466776A CN102466776A (zh) | 2012-05-23 |
CN102466776B true CN102466776B (zh) | 2013-07-10 |
Family
ID=46070674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010550885 Active CN102466776B (zh) | 2010-11-19 | 2010-11-19 | 面向复杂可编程逻辑器件的批量测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102466776B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064013B (zh) * | 2012-12-19 | 2014-12-31 | 北京自动测试技术研究所 | 一种基于故障模型的集成电路测试方法 |
CN103678075B (zh) * | 2013-12-27 | 2018-04-06 | 北京自动测试技术研究所 | 基于自动矢量生成技术的复杂微处理器测试方法 |
CN104515947A (zh) * | 2014-12-12 | 2015-04-15 | 中国电子科技集团公司第五十八研究所 | 可编程逻辑器件在系统编程的快速配置与测试方法 |
CN106872872B (zh) * | 2015-12-14 | 2020-07-03 | 北京确安科技股份有限公司 | 一种芯片测试向量转换方法 |
CN109065093A (zh) * | 2018-08-17 | 2018-12-21 | 豪威科技(上海)有限公司 | 片上存储器测试电路及方法 |
CN109359031B (zh) * | 2018-09-04 | 2023-08-22 | 中国平安人寿保险股份有限公司 | 多设备应用程序测试方法、装置、服务器及存储介质 |
CN109165030A (zh) * | 2018-09-07 | 2019-01-08 | 中国电子科技集团公司第五十八研究所 | 一种单片机的在线编程测试方法 |
CN111506467B (zh) * | 2019-01-31 | 2023-07-11 | 上海诺基亚贝尔股份有限公司 | 信号处理方法、电子设备和计算机可读存储介质 |
CN110045266A (zh) * | 2019-04-23 | 2019-07-23 | 珠海欧比特宇航科技股份有限公司 | 一种芯片通用测试方法及装置 |
CN110825573B (zh) * | 2019-10-30 | 2024-03-12 | 航天科工防御技术研究试验中心 | 一种复杂可编程逻辑器件的测试老炼方法 |
CN111308314A (zh) * | 2019-11-21 | 2020-06-19 | 西安西谷微电子有限责任公司 | Fpga/cpld可编程门阵列方案及测试套件 |
CN111983438A (zh) * | 2020-08-31 | 2020-11-24 | 中国电子科技集团公司第五十八研究所 | 一种fpga的在线编程测试方法 |
CN112444731B (zh) * | 2020-10-30 | 2023-04-11 | 海光信息技术股份有限公司 | 芯片测试方法、装置、处理器芯片及服务器 |
CN112596434B (zh) * | 2020-12-07 | 2022-11-04 | 天津津航计算技术研究所 | 一种cpld引脚逻辑状态监测方法 |
CN112799887A (zh) * | 2020-12-17 | 2021-05-14 | 珠海泰芯半导体有限公司 | 一种芯片ft测试系统以及测试方法 |
CN113312883B (zh) * | 2021-05-27 | 2023-01-31 | 展讯通信(上海)有限公司 | Wgl文件转换方法、装置、介质和系统 |
CN114089165A (zh) * | 2021-11-19 | 2022-02-25 | 西安太乙电子有限公司 | 一种基于ate的c8051f芯片在线测试方法 |
CN114113893A (zh) * | 2021-11-24 | 2022-03-01 | 中国电子科技集团公司第五十八研究所 | 一种微系统芯片内部互联线故障快速测试方法 |
CN117556762A (zh) * | 2022-08-04 | 2024-02-13 | 华为技术有限公司 | 测试单元的方法和相关装置 |
CN115291082B (zh) * | 2022-08-04 | 2023-06-13 | 北京京瀚禹电子工程技术有限公司 | 芯片的高效测试方法、装置和存储介质 |
CN116400202B (zh) * | 2023-06-07 | 2023-09-01 | 中国汽车技术研究中心有限公司 | 一种芯片逻辑功能交叉验证测试方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4571724A (en) * | 1983-03-23 | 1986-02-18 | Data I/O Corporation | System for testing digital logic devices |
CN1885052A (zh) * | 2006-07-11 | 2006-12-27 | 中国船舶重工集团公司第七○九研究所 | 在系统可编程器件逻辑资源测试技术 |
CN101413990A (zh) * | 2008-12-03 | 2009-04-22 | 北京大学 | 一种现场可编程门阵列的测试方法及系统 |
-
2010
- 2010-11-19 CN CN 201010550885 patent/CN102466776B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4571724A (en) * | 1983-03-23 | 1986-02-18 | Data I/O Corporation | System for testing digital logic devices |
CN1885052A (zh) * | 2006-07-11 | 2006-12-27 | 中国船舶重工集团公司第七○九研究所 | 在系统可编程器件逻辑资源测试技术 |
CN101413990A (zh) * | 2008-12-03 | 2009-04-22 | 北京大学 | 一种现场可编程门阵列的测试方法及系统 |
Non-Patent Citations (2)
Title |
---|
一种基于FPGA的测试系统远程控制方案;蒋常斌等;《电子测试》;20090331(第03期);47-49 * |
蒋常斌等.一种基于FPGA的测试系统远程控制方案.《电子测试》.2009,(第03期), |
Also Published As
Publication number | Publication date |
---|---|
CN102466776A (zh) | 2012-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102466776B (zh) | 面向复杂可编程逻辑器件的批量测试方法 | |
CN103678745B (zh) | 一种用于fpga的跨平台多层次集成设计系统 | |
US6701474B2 (en) | System and method for testing integrated circuits | |
CN101363900B (zh) | 一种对fpga器件进行测试的方法 | |
KR100463735B1 (ko) | 복합 ic의 설계 검증 방법 | |
CN101153892B (zh) | 现场可编程门阵列输入输出模块验证方法 | |
CN103091620A (zh) | 一种针对扫描测试中捕获功耗的优化方法 | |
CN103258067B (zh) | 一种可配置片上系统中保持架构、软件及硬件一致性的方法 | |
US20020173942A1 (en) | Method and apparatus for design validation of complex IC without using logic simulation | |
CN102831272A (zh) | 用于双边沿触发器的可测试性设计方法 | |
CN107817439A (zh) | 一种基于sram型fpga敏感因子的功能失效时间评估方法 | |
CN103678075A (zh) | 基于自动矢量生成技术的复杂微处理器测试方法 | |
CN101083507B (zh) | 遵循ieee1149.1协议的通用测试ip方法 | |
CN105956302A (zh) | 一种可配置的抗辐射芯片前端网表自动生成方法 | |
CN117461259A (zh) | 可测试的时间到数字转换器 | |
CN109581206B (zh) | 基于部分扫描的集成电路故障注入攻击模拟方法 | |
Zheng et al. | The methods of FPGA software verification | |
CN103064013B (zh) | 一种基于故障模型的集成电路测试方法 | |
CN112613185B (zh) | 一种复合电流源噪声的建模方法 | |
Mostardini et al. | FPGA-based low-cost automatic test equipment for digital integrated circuits | |
Mostardini et al. | FPGA-based low-cost system for automatic tests on digital circuits | |
Kakoee et al. | Enhancing the testability of RTL designs using efficiently synthesized assertions | |
US7512918B2 (en) | Multimode delay analysis for simplifying integrated circuit design timing models | |
Tang et al. | Research and implementation of an automatic simulation tool | |
EP1473573B1 (en) | Intelligent test adapter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |