基于ATE的FPGA软件自动化测试技术探析

2020-05-11 12:20韩晓晶李昂孟琪
科技创新导报 2020年2期

韩晓晶 李昂 孟琪

摘   要:FPGA软件内部丰富资源深受研发工程师青睐,发展速度较快。因此,本文以FPGA软件开发必要性为入手点,从提高软件测试精度、缩短系统仿真耗时、提高软件测试效率等方面,阐述了FPGA软件开发必要性。并结合ATE概念,从可编程逻辑框架、可编程逻辑输入输出單元、内部互联线等方面,对基于ATE的FPGA软件自动化测试技术开发进行了简单的分析,以期为FPGA软件内部资源充分、有效应用提供一定借鉴。

关键词:ATE  FPGA软件  自动化测试技术

中图分类号:TN407                                文献标识码:A                       文章编号:1674-098X(2020)01(b)-0131-02

1  ATE概述

ATE又可称之为Automatic Test Equipment。其主要指根据客户测试要求、参考方案、图纸,采用PC基于VB(基于对象的程序设计语言)、PLC(可编程逻辑控制器)、MCU(微控制单元)开发平台,利用JTAG/Boundary(边界扫描测试)等技术,进行不同类型自动化测试设备的设计[1]。

2  基于ATE的FPGA软件自动化测试技术开发必要性

2.1 提高FPGA软件测试精度的需要

由于虚拟路径的存在,FPGA软件现有静态分析模式无法保证时序验证效率,也无法确定关键路径。而通过基于ATE的FPGA软件设计,可以有效提高FPGA软件测试精确度,实现被测件实际工况的有效模拟。

2.2 缩短系统仿真耗时的需要

现有FPGA软件测试系统无法实现完全自动化,且具有耗时长、投资大特点,稳定性较差。而基于ATE的FPGA软件自动化测试技术开发,可以有效提高测试环境平台可移植性,丰富配置项,缩短大逻辑量系统仿真耗时[2]。

2.3 提高FPGA软件测试效率的需要

由于传统FPGA软件为内嵌逻辑分析仪,存在速度较低、数据量深度不足特点。而利用高性能ATE,可以实现GHz(吉赫)测试速率,同时开放2048个测试通道,充分满足高速测试需求。

3  基于ATE的FPGA软件自动化测试技术开发方案

3.1 基于ATE的FPGA软件自动化测试结构

为满足不同型号FPGA软件测试需求,可制造不同型号硬件电路板。在电路板上设置测试所需FPGA芯片及其他配置芯片、配置电路。同时为了保证信号传输速度,可以在PCB(印制电路板)设计阶段,以FPGA等长布线为重点,进行布线作业;而在差分对信号时,则可以依据等长差分布线方式,最大程度缩短差分信号两差分线间距离。结合高速信号等长布线处理,可以避免高速信号传输期间干扰其他走线及时间偏移问题出现。在布线完毕后,可以在ATE的PB(协议转换网关)上,进行硬件电路安装。通过PB、DUT(被测器件)间接触的每一管脚唯一号码标识的设置,可以保证每一管脚均具有与ATE连接的I/O(输入/输出)信号传输通道。

基于ATE的FPGA软件框架主要包括引脚阵列、APB总线(外围总线)、被测FPGA板、下载电路等几个模块。而其软件部分则主要包括仿真波形、TDL文件、测试图形、测试结果等几个模块[3]。具体框架设计过程主要为:进行FPGA芯片配置,并在PB上进行DUT安装;利用Xilinx(赛灵思)的ISE软件,对FPGA进行配置并编写Testbench(验证的手段),开展被测代码仿真分析;在获得带有输入输出波形的.vcd格式文件之后,利用波形转换工具,将文件格式转换为可导入ATE的.asc文件格式。随后利用trans66,将文件格式再次转换,以便ATE可顺利识别pattern波形的.lpa文件;执行ATE命令,启动FPGA软件操作界面,导入TDL程序,按顺序执行测试任务。

3.2 基于ATE的FPGA软件自动化测试流程

首先,在FPGA芯片专用PROM中,进行被测代码下载,以避免断开电源后FPGA内部代码完整。同时在ATE的PB中进行DUT安装。其中DUT又可称之为Device Under Test,为被测器件,具有输入、输出状态表征。

其次,将获得的测试图形文件、测试程序导入至ATE内,在保证调试成功后执行连接性测试。同时考虑到对于FPGA软件自动化测试系统而言,O/I作为输入驱动信号,L/H/X为输出判断信号。FPGA软件配置矢量作用管脚除INIT-FLAG等信号外,其余均为输入信号,无双向输入、输出管脚。此时,可以仅考虑O/I组合,无需将输入、输出信号组合,以充分满足FPGA软件自动化测试系统信号限制要求。

最后,在连接性测试完成后,执行功能测试项目。整个过程均依据TDL程序内设定完毕的函数顺序依次执行,在全部测试项目均显示为“pass”(通过)时,方可允许测试通过。

3.3 基于ATE的FPGA软件自动化测试验证

本次研究的FPGA器件主要采用BGA1148封装,在除去地管脚、电源之后共具有660个IO管脚,M0/M1/M2、INIT-FLAG、CFG-DONE均可作为配置控制状态观察管脚。随后选定配置模式为Slave Select MAP32,采用某公司生产的V95000自动化测试系统为开发平台,将配置使用的43个管脚中的34个管脚作为配置数据输入,测试配置文件通过这43个配置管脚下载至FPGA芯片专用PROM(可编程只读存储器)。其余信号则在配置期间处于浮空状态,最终得出基于ATE的FPGA软件自动化测试不同方式下储存资源使用情况如表1所示。

由表1可知,在load完测试pattern后,R17配置管脚自身具有一定的储存空间,通过基于ATE的FPGA软件自动化测试设计,可以在压缩向量存储深度需求的基础上,减少FPGA软件自动化测试系统存储深度License(批准)需求。此时,仅需利用2个程序将多个配置向量自动加载测试完成。并在操作界面上直接显示测试结果,pass或fail(失败),有效模拟被测软件实际运行情况。在保证被测软件实际测试精确度的同时,也可以提高测试效率。

4  结语

在FPGA软件自动测试环境中充分利用ATE多通道同时开放,分辨率高、仿真环境及协议感知环境优势,促使多功能模块在一个硬件平台上集成,提高FPGA软件自动化测试精度、速度及功能丰富性。

参考文献

[1] 王华.基于ATE的FPGA测试技术研究和应用[J].电子与封装,2018,18(7):14-17.

[2] 赵桦,章慧彬.基于ATE的FPGA配置文件生成方法[J].电子与封装,2015(7):10-13.

[3] 焦亚涛,顾颖,石雪梅.基于ATE的FPGA器件测试方案研究[J].计算机与数字工程,2015(1):80-82.