FPGA是一种现场可编程门阵列器阵,其丰富的内部资源、可重复使用、成本低的特点决定了此种软件具有广泛的适用性,在工作工业生产中都可以看到它的身影,包括电力、军工、汽车制造等领域,都可以用到这种软件。而在目前工业生产当中,拥有较为广泛的是ASIC电路检测方法,这种方法虽然相对来说也能够满足电路检测的需要,但是在自动化检测当中缺乏适用性,存在余额不足,在这种情况下有必要采用一种更为先进的方法,比如说对 FPGA检测方法进行改进和优化,并针对这方面进行更加深入的探讨与分析。
一、 FPGA故障模型与检测方案分析
(一)故障模型分析
由于FPGA器件在使用过程中可能出现多种故障类型,在具体应用的过程中,因为系统的差异对应的故障存在一定的不同,这无疑会增加检测的难度。所以在应用的过程中可以采用模型化思维,考虑FPGA内部结构复杂性特征,以此为基础来建立故障模型,为故障检测与评价提供更加科学的依据。另外,在逻辑资源故障上,LUT结构主要是固定型故障,这种故障的产生与电平信号固定为逻辑高或低有明显的相关性;而对触发器或快速进位链逻辑,则主要表现为功能性故障等;连线资源故障也比较常见,主要表现为连线常开、单 / 多固定型故障等。当然,故障类型比较多,除此之外还包括模块资源故障、嵌入式块RAM故障等。
(二)检测方案优化
为了满足FPGA自动化检测工作需要,在工作中需要针对原有的检测方法进行改进,在本研究中主要考虑ATE平台,具体的改进和优化方案如下。第一,FPGA逻辑单元的检测配置形式保持不变,并将其组成新列阵,依托检测配置和检测向量实施的流程,完成新的FPGA电路配置。在此基础上,充分考虑检测电路的功能,以及不同电路的设计参数,将上面所述的故障类型合设为I,检测配置为Ci,检测向量集为TS等,FPGA(Ci,TS(Ci))表示检测方案中的故障子集。主要改进的技术为减少检测配置频次、缩短检测时间,扩大检测覆盖率,形成一个新的进行编程配置。
另外,在编程设计上,使用测试接口板下载,在计算机中直接生成位留文件,在此基础上进行电路功能检测,然后将新的检测向量设计在S芯片管脚上,在完成上述设计的基础上在ATE测试平台上测试电路输出值,将其与预期数值进行比较分析,以分析结果为基础完成电路功能判断。另外,在设计中分别针对FPGA模块来设计编程配置并进行测试,通过多个检测电路实现整体检测的目标。
二、基于ATE的EPGA软件自动化检测技术
(一)测试流程
使用ATE平台进行自动化检测的时候,需要根据检测工作的需要对接口板和外围电路进行设计,以满足FPGA的自动循环配置求,再根据检测内容和目的对检测软件进行编辑处理,达到自动化检测的条件。FPGA器件配置的实现需要通过其内部的存储器下载对应的逻辑电路数据,将编程数据存储在存储器中,然后再通过 IR 资源连接 CLB 资源来实现特定的检测功能,以满足不同模块的检测需要。另外,在配置之前,需要使用M0、M1、M2 三个引脚规划配置模式,完成配置以后将其中的M0、M2作为输入,M1设置为输出,作为检测中的辅助连接。在电路的配置模式上,有多种方案可以选择,从实践来看主串模式较为适合本研究的检测工作,连接电路中的CCLK 输出端与 CLK 端,驱动PROM用于检测中的信号传输。
(二)测试方法
由于FPGA逻辑电路没有通用性,所以需要通过多次编程来完成检测配置,满足FPGA电路自动化检测的需要。所以,需要使用集成建立检测系统完成测试,再检测之前需要通过编程配置将检测的数据转化为测试图形才能进行检测,也需要进行多次配置,并且转化的文件比较多,在检测的时候需要兼顾加电稳定性原则,防止检测过程中因为掉电导致数据丢失影响检测顺利进行。根据之前的检测经验,具体的测试技术流程设计如下图所示:
使用ATE平台提供检测所需的电源,使用FPGA来控制信号,并为CPLD提供片选信号,在选择好存储器以后,使用主串配置模式,完成逻辑电路的编程配置,确定检测所需的配置环境,在利用该平台实现对DONE管脚信号进行实时监测,监测结果为高电平时说明成功完成配置,反之就说明没有完成配置。完成配置以后需要使用ATE平台为电路提供激励信号,以输出响应结果为基础进行比较分析,从而完成整个自动化测试的过程。
(三)测试结果分析
以ATE平台为基础设计的FPGA故障自动化检测设计方案进行检验,选择某型号的FPGA芯片作为具体测试对象,使用V93000测试系统开展测试,在测试的过程中具体分为4个步骤。第一,根据检测的需要完成检测接口板的设计,将FPGA管脚连接测试系统通道,利用该测试系统提供的激励信号以输出数据为基础进行检验;第二,使用ISE软件对被测的电路进行设计,并在该平台上下载并生成配置文件,完成整个测试系统的配置,同时编写相应的检测序例,解决检测过程中的自动化问题。第三,在FPGA芯片上完成测试配置,通过施加测试向量的方式检验被测芯片,以输出结果为基础分析判断是否存在故障,另外也可以通过施加测试检验延时和电压等设计参数是否与提供的参数保持一致,作为芯片设计的重要参考。
得出检测结果以后,再对芯片进行IBO功能检查,观察输出的波形图,对比预设的波形图,分析是否重合,以重合结果为基础,分析和判断其功能是否准确,以及是否存在故障。DC参数检测中,在可编程I/O输出时,通过高电平来分析和判断是否符合设计参数,对比具体的高电平和低电平结果,以及输入管脚上的栅极漏电流等进行分析和判断。比如,在被检测芯片处于工作状态之下,测试发现其静态电源电流≤250mA,说明该芯片的DC参数均在设计范围之内。
三、结论与建议
从前面的分析中可以看出,为了满足FPGA软件自动化检测的需要,以ATE系统为基础所形成的自动化检测技术配置方案,在实际应用的过程中基本上能够满足 FPGA器件的自动化检测需要,通过在存储器当中预先设计位流文件,可以有效的提高检测的效率。从检测结果的实际应用情况来看,基本上达到了预期的设计目标。但是,从技术的角度来讲,本检测技术方案仍然存在一定的不足。尤其是文件配置和具体的检测范围等方面,需要进行多次配置,才能满足自动化检测的要求,从整体运行来看,整个自动化设计方案的运行效率仍然不是很高,需要在研究当中对其进行进一步的改进和优化。
参考文献:
[1] 石英,陈心浩,何湘竹.基于“单片机+FPGA”的数字芯片自动测试系统设计[J].实验技术与管理. 2020(12)
[2] 任文龙,欧先诚.自动化测试的研究和探讨[J].电子世界. 2020(21)
[3] 黄健,朱佳雯.基于V93000的FPGA测试优化方法研究[J].电子质量. 2020(10)