一种FPGA验证与测试方法介绍
2012-12-05张凯虹万书芹
张凯虹,陈 诚,万书芹
(中国电子科技集团公司第58研究所,江苏 无锡 214035)
1 引言
FPGA是电子设计领域中最具活力和发展前途的一项技术。随着它的广泛应用,其可靠性变得越来越突出,电子元器件可靠性试验和筛选越来越重要。测试已成为制约FPGA实际应用的一个关键因素[1]。
基于ATE的FPGA测试的关键是如何生成对FPGA进行配置的测试向量,特别是不依赖于产品设计的条件下。本文基于PC、ATE与自制转换软件,对FPGA验证与测试开发技术进行研究。通过对FPGA的实际测试,达到了很好的效果,证明了实用性。
2 生成对FPGA进行配置的测试向量
一般实现FPGA配置的方式有两种,一种是将配置文件存放在FPGA外的PROM或EPROM中,系统加电后配置文件自动加载到SRAM中;另一种是将测试系统用作一个处理器,通过数字通道将配置数据加载到SRAM中[2]。本文采用第二种方法实现FPGA的在线配置。
2.1 配置模式
FPGA根据配置模式管脚(M0、M1、M2)的不同输入,产生8种配置模式[3]。由于测试FPGA的过程中需要多次“配置-测试”过程,其中配置占用时间相对比较长。从并模式的数据宽度为8位,与其他配置模式相比速度快8倍,所以选用从并作为测试配置模式。此模式为系统加载FPGA配置程序提供了最简单的接口。数据D0~D7和时钟CCLK可同时从外部提供。
2.2 配置数据格式
配置比特流是由ISE调用BitGen程序把布局布线后的约束文件转换为二进制文件,由于FPGA可能的配置文件有五种[4],其中bin的二进制文件不仅可用于定制的配置方案还可存储于第三方PROM,符合本测试方案要求。图1是bin二进制文件。该类文件不含文件头信息。0Xaa995566是同步字,0X30008001是器件ID,之后数据为配置帧。
图1 FPGA.bin配置文件
2.3 配置数据转换
为实现bin文件到机器可识别的atp文件的转换,特设计小型软件如图2所示。该软件使用C语言编制,将bin文件按特定方式分离成D0~D7的向量文件。转换后文件不仅包含了bin中D0~D7的信息,还增加了从并模式中其他管脚的输入/输出信息,提高编码效率。图3为转换后的文件格式。根据图4配置流程可以看出增加的信息包括外部输入CCLK信号,PROGRAM信号拉低,验证INIT是否变高,CRC校验后INIT与DONE信号的输出验证。
3 基于ATE的FPGA测试
3.1 对FPGA进行测试
由于本文的试验对象是XCV1000,芯片规模比较大。同时FPGA的测试需要多次“配置-测试”过程,对测试向量的深度要求比较高。所以本文以Teradyne的UltraFLEX为测试平台,该ATE的测试管脚数可达1 024个,测试向量深度达256M,测试频率可达2GHz,完全满足市场上多数FPGA的测试要求。
图2 转换软件
图3 转换后的文件形式
3.2 对FPGA进行配置
使用2.3的方法将bin文件转换成ATE识别的可配置文件。生成的配置文件导入到ATE后,可将其作为普通的功能码进行测试。为了验证FPGA是否完成配置,在结尾处增加一小段测试码,即DONE信号输出为高,INIT信号输出为高,如图4所示。若这两个信号输出正确说明配置成功。为了观察直观与调试,本文使用的DUT在DONE信号的输出增加了一个LED。
3.3 测试实现
FPGA配置完成后,FPGA便被配置为特定的功能,此时就可以作为普通逻辑器件进行测试了,可进行参数与功能测试。
4 测试结果与结论
该方法把配置作为一个测试项,实现了FPGA的在线配置,且可以改变配置速度,对芯片进行全面的分析与测试,施行比较简单。通过对XCV1000的测试表明,该方法可行、高效、通用性强,对于实现FPGA的产业化具有重要意义。
图4 配置流程
图5 最终配置码
[1] 薛宏,赵欣.FPGA测试技术研究[J].微处理机,2008,2 279(2):11-14.
[2] 唐恒标,冯建华,冯建科.基于测试系统的FPGA逻辑资源的测试[J].微电子学,2006,36(3):292-295.
[3] Xilinx, Inc. Virtex™ 2.5 V Field Programmable Gate Arrays[C].
[4] 薛小刚,葛毅敏.Xilinx ISE 9.X FPGA/CPLD设计指南[M],北京,人民邮电出版社,2007:210-219.