自定义FPGA测试系统的设计与应用
2015-05-30杨岗
杨岗
【摘要】本文对于自定义FPGA测试系统的设计与应用进行了简要的分析,对FPGA测试系统的主要功能进行了介绍,并进行了测试系统的设计和软件测试,取得了良好的测试结果,能够有效的保障测试的准确性。
【关键词】自定义FPGA测试系统;软件测试;Virtex5测试系统
由于电子产品的设计越来越复杂,要对起进行测试就要使用更为复杂的测试方法。通过FPGAPGA能够提供一个硬件自定义设计途径,使用户能够以软件编程的方式来对硬件逻辑进行重新配置。这样一来,软件工程师的测试时间就得到了缩短。
一、拓扑FPGAPGA测试的功能
1、动态测试盒闭环控制。主要是被测环境和被测系统进行实时信号交互时,被测设备可以通过FPGAPGA来获得反馈信息,从而使测试覆盖的范围满足相应的要求。在通信系统中经常运用这种方式。2、自定义协议接口。为了避免进行解码和编码操作时必须按照传统协议,可以在硬件上使用FPGAPGA进行解码和编码,这样能够在自定义简单协议的基础上对测试系统的软件进行简化,硬件还可以通过FPGAPGA的可重置性得到重复使用。3、自定义采集和触发。可以将数据记录功能和自定义触发功能添加到FPGAPGA上,对传递所需的数据进行选择。由于FPGAPGA 的可重置性,特定硬件的应用要求也可以得到满足,例如可以对频谱分析仪进行替代,实现实时频率触发功能。4、执行实时连续测量。通过专享的硬件资源,FPGA可以实现快速、高吞吐率的数据处理,使传统的数据处理模式得到改变,可以通过IO端口采集数据并进行处理,从而使测试时间得到缩短[1]。
二、设计测试系统
本文设计的测试系统为CCD图像数传系统测试系统,其不仅具备基本功能,能够进行全面和深入的性能测试,还具有低成本、便捷性、实时性的优点。对被测设备与FPGA之间的配合进行测试,能够对被测试系统需要的条件输出进行模拟,从而验证被测设备的功能。测量端口和数据能够在被测系统的故障模式下进行排查,对通信协议进行模拟,能够对外部信息进行可控加载。对被测设备对输出数据进行读取,能够实现有选择的数据分析、保存与输出。该测试系统使用到了XC5VLX50芯片,功能相对简单,大规模FPGA测试的引脚需求能够得到满足,并满足小规模的数据处理需求。该芯片的IP核与扩展接口能够满足常规的接口协议应用。
三、测试软件
3.1测试软件的主要组成部分
测试软件包括FPGA软件和PC软件两大部分,具有实时数据上传存储、内部实时数据分析、端口示波器测试3种测试手段。
上位机指令的发送主要由PC软件来实行,其他可以实现图像数据的处理、分析和接收、测试用例的設置等等。可以使用串口调试助手来完成485串行指令错误用例。图像数据的存储、解析和获取以及指令和参数的设置功能主要由自定义开发的上位机通讯软件来完成。
测试FPGA软件主要有以下几个功能:获取和解析CCD图像数据头,从而获取和解析CCD图像原始数据,解析和判读内部参数;解析和判读视频处理器加载参数;模拟北侧FPGA异常运行或正常运行所需的外部信号。上述功能主要是通过上位机控制,在自定义485通讯协议的基础上实现的。
测试设备与PC机通讯指令进行直接连接解析,测试FPGA内部并向被测设备发送,从而获取被测设备的指令,并设置测试FPGA内部指令[2]。
3.2测试的方法
①端口的状态和时序:使用示波器进行测量,能够将操作过程、加载过程、上电过程中的状态图得出来。②功能测试。使用485将异常和正常指令发送出去,对返回数据进行观察。主要有以下几种返回数据:视频加载参数、图像数据、图像头参数、内部遥测参数。③模拟通路。对FPGA模拟外围指令和数据进行测试,与被测设备实现准实时运行,并对被测设备输出状态对时序关系和性能进行测量。④错误测试和故障测试。⑤鲁棒性测试。主要是对同一状态进行反复测试,判断系统在异常切换、异常时序、异常操作、错误值、典型值、临界值条件下的反应。⑥可靠性测试。对外部干扰源进行模拟,对系统的可靠程度进行测试,主要使用组合逻辑产生毛刺来模拟外部干扰源,产生的干扰信号低于一个时钟周期。
四、测试结果
由端口测量和数据分析得到的功能测试结果能够满足测试要求,测试系统提高的测试向量能够进行模拟错误模式和故障模式,并对被测设备的运行情况进行观察。针对被测设备的内部程序容错机制和输入条件可以进行可靠性测试和鲁棒性测试。对于被测设备出现的问题,能够通过测试FPGA提供的测试向量进行分析和纠正。
五、结语
综上所述,自定义的FPGA测试系统具有更加灵活的测试方式,不仅能够降低测试的难度,而且能够使被测系统的可靠性要求得到提高,能够满足低功耗、高性能的测试要求,并对后续测量过程进行了兼容。
参 考 文 献
[1] 余铭奇,谭伟,姚锡凡. 基于FPGAPGA和DSP的喷油器雾化粒径测量系统设计[J]. 计算机测量与控制. 2011(02)
[2] 白明方,杨瑞峰. 高精度角位移测量系统设计[J]. 机械管理开发. 2010(04)