基于FPGA可重构多功能仪器方案设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA可重构多功能仪器方案设计
张文泉;崔少辉;陈建泗
【摘要】针对传统ATS测试中由开关速度慢导致的易造成短路从而损坏测试仪器或被测单元(UUT)等缺点,提出用可重构的多功能测试仪器来代替专用仪器,达到降低测试成本、提高测试效率的目的;文中设计了基于FPGA的信号发生器、数字万用表和频率计等多种功能仪器,并可以重新配置,并重点介绍数字万用表的设计;利用SOPC Builder软件在FPGA中嵌入了NiosⅡ处理器系统实现多仪器功能的集成,利用USB总线完成上位机与下位机的通讯,使人机交互友好;基于可重构理论设计的这种多功能仪器集成度高,有效地解决了仪器功能单一呆板的问题,最终使系统从专用走向通用.%In view of the faults which are breakdowns of Test Equipment and Units Under Test (UUT) easily caused by short circuit which is resulted in the slow speed of power switch in the traditional ATS test, this paper puts forward a proposal for the reconfigurable multi-function instrument which will take the place of the special instrument in order to reduce the cost and improve the efficiency of the test. Various of functions of instrument is designed including signal generator, digital multimeter and frequency counter based on the FP-GA, which can reconfigure, and mainly introduces the design of digital multimeter. Using SOPC Builder to embed Nios Ⅱ CPU system in FPGA to implement the integration of multi-instrument capabilities and USB to achieve the communication between the Host PC and the instrument so that the instrument can be operated well by people. The design of multi-function instrument based on reconfigurable theory that is highly integrated, effective solution to the
problem of instrument function of a single rigid, and ultimately make the system from special purpose to general.
【期刊名称】《计算机测量与控制》
【年(卷),期】2011(019)010
【总页数】4页(P2472-2474,2487)
【关键词】FPGA;Nios Ⅱ;可重构
【作者】张文泉;崔少辉;陈建泗
【作者单位】军械工程学院,河北石家庄 050003;军械工程学院,河北石家庄050003;军械工程学院,河北石家庄 050003
【正文语种】中文
【中图分类】TP216
0 引言
传统的通用ATS采用开关系统分配测试资源,其缺点是开关速度慢,易造成短路损坏仪器或UUT,并行测试时易产生资源的竞争、死锁等现象,影响系统的测试效率和费用。
著名的仪器生产商Teradyne公司动议提出了Ai7技术,旨在提供一个具有高度集成的模拟子系统,提供通道专用测试资源并且不需矩阵开关转换的测试系统架构。
基于专用资源架构的功能测试开发和定义解决了不完善的测试需求定义及由复杂的测试资源分配方案瓶颈带来的挑战[1]。
专用资源架构要求每个测试通道能够在任何时刻提供所有的测试资源,这种高水平的测试资源正催生一种高度并行、混合信号测试技术。
而高密并行测试技术,是NxTest(Next
Generation Automatic Test Systems,NxTest)[2]的关键技术之一,其核心技术是可重构的模拟测试仪器。
可重构仪器是指在仪器处于工作状态或者设计制造完成后,利用系统内置的重构软件系统对仪器硬件、软件进行更改和重新配置。
可重构仪器的特点是可以缩短开发周期、功能扩展丰富、实时性能好、升级维护费用低,是今后仪器仪表发展的一个重要方向。
本文以Altera公司Cyclone II系列中的EP2C35F484C8芯片为硬件基础,设计
一种基于可重构技术的多功能模拟测试仪器硬件平台。
该平台融合可重构的思想,采用核心板加功能板的结构,方便调试和功能扩展,同时利用NiosⅡ处理器的完
全可定制和可重新配置特性,既满足了成本要求,又能实现功能的多样化。
1 系统硬件框架设计
本方案设计的可重构多功能仪器结构框架由NiosII处理器系统(包括可重构FPGA片内、FPGA片外系统)、外围电路(包括A/D、D/A、电子开关、信
号调理电路)和计算机组成。
片外系统主要包括SDRAM存储器、Flash存储器、可重构模块、同步电路模块、通讯模块等,实现数据的采集、预处理、存储和输出等功能。
外围电路主要由模数转换芯片、数模转换芯片、电子开关、信号调理电路等组成。
计算机通过USB总线跟FPGA进行通讯,同时通过控制CPLD完成各种信号通道选择。
采用LabWindows/CVI设计软面板,完成用户对仪器的操作。
它接收用户输入的各种命令、仪器参数后,调用下一层的仪器驱动程序,控制仪器进行工作。
图1 仪器系统框图
仪器整体工作过程为:首先由用户定义各通道功能,上位机产生的各种命令、仪器参数经USB总线传输至FPGA中,在NiosⅡ处理器的控制下配置FPGA的功能。
当仪器配置为数字万用表时,被测信号经电子开关、信号调理电路和A/D转换器进入FPGA,将采集的数据存储在SDRAM存储器中,后再经USB总线传输至上
位机;频率计和边沿探测器工作过程同上但不经过A/D转换;当仪器配置为任意波形产生器时,FPGA读SDRAM存储器中的数据并经D/A转换、信号调理输出。
2 可重构技术及FPGA可重配置方式
基于FPGA的可重构技术,就是利用FPGA可以多次重复编程配置的特点,通过
时分复用的方式利用FPGA内部的逻辑资源,使在时间上离散的逻辑电路功能模
块能在同一FPGA中顺序实现的技术。
而FPGA动态可重构技术,是指基于SRAM编程和专门结构的FPGA,在一定条件下,不仅具有在系统重新配置电路
功能的特性,同时还具有在系统动态重构电路逻辑的能力。
具体实现方式是在存储器(如Flash)内按不同地址放置针对不同功能要求设计好的FPGA配置文件,
然后由CPLD接收不同的命令,以选择不同的地址控制,从而使所需要的配置文
件下载到FPGA中。
这样,从表面上看,同一电路系统没有发生外部结构上的改变,但通过来自外部不同的命令信号,系统内部将对应的配置信息加载到系统中的FPGA,电路系统的结构和功能将在瞬间发生巨大的改变,从而使单一的电路系统具备许多不同电路的功能。
FPGA上电自动配置有许多解决方法,常用的有EPROM配置、用专用配置器件(如EPCS系列)配置、用单片机控制配置、用CPLD控制配置或用Flash ROM
配置等。
本文采用在CPLD控制下用一片Flash存储器芯片对FPGA进行配置,
配置方式采用被动串行配置(PS)模式。
这种配置方案充分考虑了在FPGA实际使用中FPGA的密度和设计的可升级的要求,具有成本低、体积小、电路简单、
速度高的优点,而且可以实现多任务电路结构重配置[3-4],其原理如图2所示。
图2是利用EPM3128芯片和Flash配置FPGA的原理简图。
配置数据编程到Flash存储器后,上位机通过USB总线向CPLD发送命令,CPLD控制Flash存储器对FPGA进行配置。
配置FPGA的过程主要包括三个阶段:复位、配置和初始
化(见图3)。
当FPGA上电后进入复位状态,nCONFIG被置为低电平,FPGA 进入到复位状态;当nCONFIG电位由低到高跳变时启动配置过程,当nSTATUS 或nCONFIG为低电平时,器件处于复位状态。
当nCONFIG由低变高时脱离复位状态,同时释放nSTATUS(漏极开路)管脚。
nSTATUS释放后被拉高,此时nSTATUS和nCONFIG同时为高电平,FPGA准备接收配置数据,配置开始。
串
行配置时FPGA在DCLK上升沿锁存DATA0引脚上的数据。
所有的数据成功接收完后,释放CONF_DONE引脚,CONF_DONE被外接电阻拉高。
CONF_DONE引脚由低变高的变化标志着配置FPGA的结束,下一个状态即初始化开始。
为确保初始化正确,DCLK在初始化开始后继续提供几个周期的时钟,初始化完成后FPGA进入到用户工作模式。
可选信号INIT_DONE被释放通过外电阻拉高。
在配置过程中,出现错误时,FPGA就会将nSTATUS拉低,系统实时监控到这个信号后,重新启动配置过程[5]。
可以用状态机取代繁琐的配置控制程序。
图2 CPLD+Flash配置FPGA原理图
图3 FPGA配置状态图
3 外围电路设计
外围电路主要由模数转换芯片、数模转换芯片、电子开关、信号调理电路等组成。
信号调理电路是本设计的难点,不同的仪器功能需要不同的信号调理电路,例如数字万用表的调理电路需要把被测信号转换成与之具有某种关系的电压信号,无论是直流电压信号还是交流电压信号都要放大或衰减到AD转换器的输入电压范围,所以电压放大(衰减)电路是数字万用表的调理电路的重要环节,由仪用放大器
AD620、精密电阻、电容及电子开关组成,具体电路如图4所示[6-7]。
图4 电压放大(衰减)电路原理图
本文选用的AD620是一款性价比高的仪用放大器,只需要一只外部电阻,即可设置从1到1000任何要求的增益,具有高阻抗(≥10GΩ)、低功耗、高精度等特
点。
图4电路采用对称结构,通过软件控制电子开关S1、S2的闭合,实现电压量程的转换,又能保证模拟地和数字地之间的浮地电压经过电阻分压衰减后小于
AD620的共模输入电压。
AD芯片的选择也影响到仪器的测试速率、精度、准确度和稳定性,本方案设计选择高速AD574[8]。
AD574是12位逐次逼近型A/D转换器,具有自动校零
和自动极性转换功能,它无需外接原件就可以完成A/D的功能,转换时间为
20μs,可以并行输出12位,具有快速、低功耗、高精度等特点。
对ADC进行采样控制,传统方法多是用单片机来完成,编程简单、控制灵活,但缺点是速度太慢,极大限制了高速A/D性能的正常发挥,本文使用状态机来控制AD574采样,大大减少了控制周期,见图5。
图5 AD574状态机
为了进一步的验证AD574控制器模块的正确性,在下载到目标器件之前,可以对此模块进行时功能仿真。
在工程文件中,首先要新建一个以vwf结尾的波形文件。
在弹出的对话框中添加要观察的引脚,然后再设定时钟相关参数和保存波形文件,最后在编译顶层文件之后,可对此模块进行仿真。
如图6为AD574控制器模块仿真波形,CLK为此模块的工作时钟,D为并行输入数据,Q为并行数据输出。
由
图可知,STATUS变为低电平后,A0的上升沿把D引脚上的12位数据17CH锁存到寄存器中,以便外部电路从Q端读到稳定、正确的数据。
图6 AD574控制器仿真波形
当输入信号为交流电压时,一般都将放大(衰减)后的信号经有效值转换电路转
换成有效值形式,但若从有效值定义出发,将交流信号的瞬时值进行“平方→取
平均值→开平方”运算,得到有效值,则会大大提高电路的集成度和稳定性。
所以本文将采用数字信号处理方法,在软件上得到有效值。
本方案设计涉及仪器功能的改变、量程的跳转、保护模块的运行,都需要通过电子
开关来切换,所以选用CPLD来控制电子开关,再由上位机通过USB总线来控制CPLD。
4 基于NiosⅡ的系统开发设计
图7 软件流程图
利用Nios II IDE软件进行系统软件设计,通过在Nios II软内核编写的C/C++程序控制系统运行。
在本系统中,Nios II程序的任务是接收上位机发出的控制命令,进行各仪器功能转换及运行,执行测量任务时将采集的数据通过USB总线传输到上位机。
在上位机用软面板实现人机交互。
其中,Lab-Windows/CVI对
非NI采集卡的驱动程序的编写是采用调用动态链接库的方式实现的。
首先用VC
++编制USB的动态链接库,然后在LabWindows/CVI中正确配置DLL,就可以实现对USB总线的驱动。
Nios II系统的软件流程图如图7所示。
5 结论
本文根据FPGA可重构理论,设计一种基于FPGA的可重构多功能仪器方案,用NiosⅡ软核控制系统运行,使用USB总线连接上位机与下位机的通讯,实现了数字万用表等几种仪器功能的可重构和处理的融合。
基于可重构理论设计的这种多功能仪器体积较小,使用方便,将使ATS测试走上集成化的道路,大大加速了仪器的开发速度和开发效率,有效地解决了仪器功能单一呆板的问题,最终使系统从专用走向通用。
【相关文献】
[1]陈希林,胡诗国,武艳 .Ai7技术及在并行测试改造中的应用研究[J].电测与仪表,2007,44 (493):58-51.
[2]Patrick A.Curry,Judy Burden,Glenn A.Lundy.Next Generation Automatic Test
System (NGATS)Update [A] .AUTOTESTCON proceedings [C],IEEE 2006:318-322.
[3]程明,毕立恒,杨晓光 .用CPLD和FLASH存储器配置FPGA[J].微计算机信息,2007,23 (7-2):171-173.
[4]张启蒙,于劲松,等 .基于LXI总线的可重构软硬件一体测试仪[J].计算机测量与控制,2010,18 (7):1687-1690.
[5]王诚,吴继华,等,Altera FPGA/CPLD设计(基础篇)[M].北京:人民邮电出版社,2005:189-191.
[6]陈任伟 .军用移动电站USB检测仪器的研制[D].石家庄:军械工程学院,2010:32-33. [7]Analog Devices,Inc.AD620Data Sheet,Rev.E[DB/OL],1999:10-15.http://.
[8]Analog Devices,Inc.AD574Data Sheet,Rev.B [DB/OL],4-8.http://.。