一种基于Zynq的可配置通用IO测试系统及测试方法

文档序号:24872605发布日期:2021-04-30 12:45阅读:65来源:国知局
一种基于Zynq的可配置通用IO测试系统及测试方法

本发明属于工业设备板卡输入输出测试技术领域,更具体地,涉及一种基于zynq的可配置通用io测试系统及测试方法。



背景技术:

在工业设备的pcb板卡中,输入输出的io(input/output)口比较多,对这些io口的测试大多数是硬件设计工程师基于万用表或者示波器等测试设备手工测试,如果产品批量生产数量大,则手工测试工作量是难以接受的。也有些专门针对某种硬件板卡做出的测试工装或者测试设备,可以批量对同一款硬件板卡进行测试,但是对不同的硬件板卡,则需要对测试工装等硬件设备重新修改或重新设计,而且是简单的静态测试或者低速动态测试。

zynq芯片的处理器系统通常指的是ps部分(programmingsystem,可编程系统,也就是arm里面的soc部分)的“硬”处理器,与之相似的有pl部分(programmablelogic,可编程逻辑,也就是指arm里面的fpga部分)的软处理器。ip核,全称知识产权核(intellectualpropertycore),是指某一方提供的、形式为逻辑单元、芯片设计的可重用模块,ip核通常已经通过了设计验证,设计人员以ip核为基础进行设计,可以缩短设计所需的周期。tcl(toolcommandlanguage)是一种很通用的脚本语言,在大多数平台上都可以解释运行,功能强大。目前,还没有将zynq芯片运用至io测试中来的先例。



技术实现要素:

针对上述技术问题,本发明提出一种基于zynq的可配置通用io测试系统及测试方法,该测试系统可以针对不同的硬件板卡io进行自动化测试,不需要改动硬件测试设备,通过在工控机上完成测试功能配置并完成zynq芯片功能板pl侧模块间的连线,就可以实现不同板卡的高速动态测试。

本发明采用以下具体的技术方案:

一种基于zynq的可配置通用io测试系统,包括zynq芯片功能板和工控机,所述工控机通过usb接口连接zynq芯片功能板的jtag口,用于配置测试系统,所述zynq芯片功能板通过网线接口和usb接口连接到工控机,用于传输测试的数据,所述zynq芯片功能板通过测试端口与被测板卡连接,所述被测板卡通过自定义通信接口连接至工控机。

进一步的,所述zynq芯片功能板包括pl侧的逻辑功能模块及ps侧的软件功能程序模块。

进一步的,所述逻辑功能模块包含一系列自定义开发的接口测试模块以及集成测试模块组成的模块库。

进一步的,所述模块库包含有模拟电压输出模块、模拟电流输出模块、模拟电压输入模块、模拟电流输入模块、数字输出模块,数字输入模块,通信端口模块,可以根据不同的被测板卡选择不同模块或者组合。

进一步的,所述模块库提供8路模拟输入和8路模拟输出测试端口,64路数字输入和输出测试端口。

进一步的,所述软件功能模块是arm核上基于linux系统运行的应用程序,可把测试数据实时通过以太网发送出去。

进一步的,所述工控机包含vivado开发环境下的配置程序单元和用户自定义测试程序单元,所述配置程序单元与自定义测试程序单元连接,所述自定义测试程序单元与被测板卡通过自定义通信接口连接,可触发被测板卡进入测试模式、读取硬盘上的文件以及记录被测板卡的测试数据并比较测试结果。

进一步的,所述配置程序单元可建立测试工程模板文件,并包含tcl脚本文件,可实现自动化操作。

一种基于上述可配置通用io测试系统的测试方法,包括以下步骤:

s1:将被测板卡测试端口、自定义通信接口分别与测试系统的zynq芯片功能板、自定义测试程序单元连接;

s2:配置测试工程并准备测试:

s2.1:在工控机上的vivado开发环境下,根据被测试板卡的实际端口,选择对应接口模块和集成测试模块(自定义ip核)并连接,锁定到外部引脚,构成一个fpga测试工程;

s2.2:对上面fpga测试工程进行综合实现,生成bit文件,下载到zynq的pl侧;

s2.3:运行vivado开发环境的tcl脚本,启动pl侧的测试工程准备开始输出测试信号和采集测试数据;

s3:运行zynq的ps侧应用程序,准备开始测试,获取pl侧数据;

s4:工控机自定义测试程序触发被测板卡进入自动测试模式并接收回传测试数据:

s4.1:工控机自定义测试程序触发ps侧程序开始测试,传回数据到工控机;

s4.2:运行工控机自定义测试程序,通过自定义通信口触发被测板卡开始进入测试模式;

s5:自定义测试程序读取s4中的采集的测试数据,与正确数据进行比较判断,完成测试结果分析和记录。

本发明的有益效果为:

(1)测试功能可以完全自定义定制,不但可以完成普通的模拟信号输入/输出接口测试、数字信号输入/输出接口测试,还可以测试各种通用或者非通用的数字接口逻辑,例如rs232,spi,i2c等接口。

(2)测试速度非常高,普通的io测试设备速度有限,一般只有几十kbps或mbps的时钟速度,对高速的io变化无法测试,而本方案的io测试速度可以到达200m以上的时钟速度。

(3)可以完成自动化测试,通过事先编写好测试方案和代码脚本,结合自定义的测试结果判断程序,可以做到完全自动化测量和记录。

附图说明

图1为本发明可配置通用io测试系统功能模块连接关系示意图。

具体实施方式

下面结合具体实施例进一步说明本发明。除非特别说明,本发明实施例中采用的原料和方法为本领域常规市购的原料和常规使用的方法。

实施例1

如图1所示,针对工业控制领域控制系统多io口的硬件板卡测试问题,由原先的一种硬件板卡需要一个测试设备的状态,设计了一种可配置的通用io测试系统。主要包括zynq芯片功能板和工控机,以及硬件连接器、接口、连接线等。工控机通过usb接口连接zynq芯片功能板的jtag口,用于配置测试系统,zynq芯片功能板通过网线接口和usb接口连接到工控机,用于传输测试的数据,zynq芯片功能板通过测试端口与被测板卡连接,被测板卡通过自定义通信接口连接至工控机。

该测试系统在功能模块上分为四个主要部分:zynq芯片功能板pl侧的逻辑功能模块、ps侧的软件功能程序模块,工控机的配置程序单元,以及客户的自定义测试程序单元。

pl侧的逻辑功能模块主要是部署fpga逻辑ip核以及连接电路,与在vivado上创建的工程连接,实现测试接口的连接、适配和测试,包含一系列自定义开发的接口测试模块以及集成测试模块组成的模块库,这些模块封装成一个个ip核,然后组装起来构成一个fpga的测试工程。接口测试模块包含有模拟电压输出模块、模拟电流输出模块、模拟电压输入模块、模拟电流输入模块、数字输出模块,数字输入模块,通信端口模块,可以根据不同的被测板卡选择不同模块或者组合,这些接口模块用于输出信号给被测板卡,同时采集被测板卡的输出信号,发送到工控机(ps侧通过以太网传回,pl侧通过jtag口传回)。ps侧的软件功能模块是arm核上基于linux系统运行的应用程序,可把测试数据实时通过以太网发送出去,实现与工控机的网络通信,也可将接收的工控机数据传至pl侧。

工控机的配置程序单元是使用vivado开发环境,配合tcl脚本,实现自动化操作。vivado环境下使用硬件描述语言建立工程,根据测试的功能和io口的连接,通过约束文件锁定到对应引脚。fpga逻辑工程中,提供ai,di,ao,do等模块的ip核。配置程序单元还可以把测试数据通过ila核(integratedlogicanalyzercore,提供触发和跟踪功能)采集出来,然后通过插件和tcl脚本功能,完成数据的提取,并保存到电脑的磁盘。

用户自定义测试程序单元与被测板卡通过自定义通信接口连接,可触发被测板卡进入测试模式并记录被测板卡的测试数据,用户通过读取硬盘上的文件,完成数据的解析,结合自身硬件的测试逻辑,对比板卡实际测试数据与设定的正确结果,判断数据的正确性。

该可配置通用io测试系统提供8路模拟输入和8路模拟输出测试端口,64路数字输入和输出测试端口,当被测板卡通过测试线连接上测试系统的端口后,在工控机的vivado开发环境,根据对应的被测端口类型(模拟输出、模拟输入、数字输出和/或数字输入)选择pl侧相应的接口测试模块模块并按一定方式连接起来,构成fpga测试工程,然后在工控机上建立软件测试工程,实现测试。

实施例2

本实施例针对实施例1的基于zynq的可配置通用io测试系统,以某款控制器产品板卡作为被测对象为例,具体说明其应用的方法:

被测板卡有模拟电压输入ai,数字输入di,模拟电压输出ao,数字输出do四种io口各1个,还有串口和can通信口。(被测板卡的接口电压和本测试系统的接口最大电压是匹配的)

首先,把被测板卡的测试端口分别连接到测试系统的接口(zynq芯片功能板)上,通过自定义通信接口连接自定义测试程序单元;

第二步,在工控机的vivado开发环境中,新建一个测试工程模板,选择自定义开发的接口测试模块中的模拟电压输出模块、数字输出模块、模拟电压输入模块和数字输入模块进行连接(分别对应被测板卡的模拟电压输入ai,数字输入di,模拟电压输出ao,数字输出do四种io口),另外再选择串口和can通信口ip核,然后再连接到集成测试模块中,在集成测试模块ip核中,对各个接口测试进行协调和数据转发控制,最后配置约束文件锁定到实际对应的引脚,构成一个fpga测试工程;

把测试工程模板综合实现生成的bit文件通过usb接口下载到zynq芯片功能板pl侧;

接着,运行配置程序单元的tcl脚本,对测试工程进行debug调试,启动pl侧的测试工程准备开始输出测试信号和采集测试数据。

第三步,运行ps侧应用程序,准备开始测试,获取pl侧数据。

第四步,运行工控机上自定义测试程序,通过自定义通信口触发被测板卡开始进入测试模式并接收回传测试数据。

第五步,利用自定义测试程序读取第四步中测试数据,与正确数据进行比较和判断,完成测试结果分析和记录。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1