CN112732508A - 一种基于Zynq的可配置通用IO测试系统及测试方法 - Google Patents
一种基于Zynq的可配置通用IO测试系统及测试方法 Download PDFInfo
- Publication number
- CN112732508A CN112732508A CN202110091160.1A CN202110091160A CN112732508A CN 112732508 A CN112732508 A CN 112732508A CN 202110091160 A CN202110091160 A CN 202110091160A CN 112732508 A CN112732508 A CN 112732508A
- Authority
- CN
- China
- Prior art keywords
- test
- module
- personal computer
- industrial personal
- board
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2289—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
一种基于Zynq的可配置通用IO测试系统及测试方法,属于工业设备板卡输入输出测试技术领域,测试系统包括Zynq芯片功能板和工控机,所述工控机通过USB接口连接Zynq芯片功能板的JTAG口,用于配置测试系统,所述Zynq芯片功能板通过网线接口和USB接口连接到工控机,用于传输测试的数据,所述Zynq芯片功能板通过测试端口与被测板卡连接,所述被测板卡通过自定义通信接口连接至工控机。该测试系统的测试功能可以完全自定义定制,兼容不同硬件板卡,测试速度高,并可做到完全自动化测量和记录。
Description
技术领域
本发明属于工业设备板卡输入输出测试技术领域,更具体地,涉及一种基于Zynq的可配置通用IO测试系统及测试方法。
背景技术
在工业设备的PCB板卡中,输入输出的IO(Input/Output)口比较多,对这些IO口的测试大多数是硬件设计工程师基于万用表或者示波器等测试设备手工测试,如果产品批量生产数量大,则手工测试工作量是难以接受的。也有些专门针对某种硬件板卡做出的测试工装或者测试设备,可以批量对同一款硬件板卡进行测试,但是对不同的硬件板卡,则需要对测试工装等硬件设备重新修改或重新设计,而且是简单的静态测试或者低速动态测试。
Zynq芯片的处理器系统通常指的是PS部分(programming system,可编程系统,也就是ARM里面的SoC部分)的“硬”处理器,与之相似的有PL部分(programmable logic,可编程逻辑,也就是指ARM里面的FPGA部分)的软处理器。IP核,全称知识产权核(intellectualproperty core),是指某一方提供的、形式为逻辑单元、芯片设计的可重用模块,IP核通常已经通过了设计验证,设计人员以IP核为基础进行设计,可以缩短设计所需的周期。Tcl(Tool command language)是一种很通用的脚本语言,在大多数平台上都可以解释运行,功能强大。目前,还没有将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核(Integrated Logic Analyzer core,提供触发和跟踪功能)采集出来,然后通过插件和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侧数据。
第四步,运行工控机上自定义测试程序,通过自定义通信口触发被测板卡开始进入测试模式并接收回传测试数据。
第五步,利用自定义测试程序读取第四步中测试数据,与正确数据进行比较和判断,完成测试结果分析和记录。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。
Claims (9)
1.一种基于Zynq的可配置通用IO测试系统,其特征在于,包括Zynq芯片功能板和工控机,所述工控机通过USB接口连接Zynq芯片功能板的JTAG口,用于配置测试系统,所述Zynq芯片功能板通过网线接口和USB接口连接到工控机,用于传输测试的数据,所述Zynq芯片功能板通过测试端口与被测板卡连接,所述被测板卡通过自定义通信接口连接至工控机。
2.根据权利要求1所述的可配置通用IO测试系统,其特征在于,所述Zynq芯片功能板包括PL侧的逻辑功能模块及PS侧的软件功能程序模块。
3.根据权利要求2所述的可配置通用IO测试系统,其特征在于,所述逻辑功能模块包含一系列自定义开发的接口测试模块以及集成测试模块组成的模块库。
4.根据权利要求3所述的可配置通用IO测试系统,其特征在于,所述模块库包含有模拟电压输出模块、模拟电流输出模块、模拟电压输入模块、模拟电流输入模块、数字输出模块,数字输入模块,通信端口模块,可以根据不同的被测板卡选择不同模块或者组合。
5.根据权利要求4所述的可配置通用IO测试系统,其特征在于,所述模块库提供8路模拟输入和8路模拟输出测试端口,64路数字输入和输出测试端口。
6.根据权利要求2所述的可配置通用IO测试系统,其特征在于,所述软件功能模块是ARM核上基于Linux系统运行的应用程序,可把测试数据实时通过以太网发送出去。
7.根据权利要求1所述的可配置通用IO测试系统,其特征在于,所述工控机包含Vivado开发环境下的配置程序单元和用户自定义测试程序单元,所述配置程序单元与自定义测试程序单元连接,所述自定义测试程序单元与被测板卡通过自定义通信接口连接,可触发被测板卡进入测试模式、读取硬盘上的文件以及记录被测板卡的测试数据并比较测试结果。
8.根据权利要求7所述的可配置通用IO测试系统,其特征在于,所述配置程序单元可建立测试工程模板文件,并包含Tcl脚本文件,可实现自动化操作。
9.一种基于上述权利要求1-8任一一项所述的可配置通用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中的采集的测试数据,与正确数据进行比较判断,完成测试结果分析和记录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110091160.1A CN112732508A (zh) | 2021-01-22 | 2021-01-22 | 一种基于Zynq的可配置通用IO测试系统及测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110091160.1A CN112732508A (zh) | 2021-01-22 | 2021-01-22 | 一种基于Zynq的可配置通用IO测试系统及测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112732508A true CN112732508A (zh) | 2021-04-30 |
Family
ID=75595218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110091160.1A Pending CN112732508A (zh) | 2021-01-22 | 2021-01-22 | 一种基于Zynq的可配置通用IO测试系统及测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112732508A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113612561A (zh) * | 2021-08-11 | 2021-11-05 | 中科南京移动通信与计算创新研究院 | 一种基于zynq架构的综测仪基带板启动方法及系统 |
CN113608936A (zh) * | 2021-06-25 | 2021-11-05 | 天津津航计算技术研究所 | 一种多路接口测试系统及方法 |
CN114563998A (zh) * | 2022-01-27 | 2022-05-31 | 浙江运达风电股份有限公司 | 一种io模块自动生产测试系统 |
CN117872941A (zh) * | 2023-12-18 | 2024-04-12 | 中国科学院近代物理研究所 | 一种数字化控制平台 |
-
2021
- 2021-01-22 CN CN202110091160.1A patent/CN112732508A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113608936A (zh) * | 2021-06-25 | 2021-11-05 | 天津津航计算技术研究所 | 一种多路接口测试系统及方法 |
CN113608936B (zh) * | 2021-06-25 | 2024-04-19 | 天津津航计算技术研究所 | 一种多路接口测试系统及方法 |
CN113612561A (zh) * | 2021-08-11 | 2021-11-05 | 中科南京移动通信与计算创新研究院 | 一种基于zynq架构的综测仪基带板启动方法及系统 |
CN113612561B (zh) * | 2021-08-11 | 2023-06-20 | 中科南京移动通信与计算创新研究院 | 一种基于zynq架构的综测仪基带板启动方法及系统 |
CN114563998A (zh) * | 2022-01-27 | 2022-05-31 | 浙江运达风电股份有限公司 | 一种io模块自动生产测试系统 |
CN117872941A (zh) * | 2023-12-18 | 2024-04-12 | 中国科学院近代物理研究所 | 一种数字化控制平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112732508A (zh) | 一种基于Zynq的可配置通用IO测试系统及测试方法 | |
US6389558B1 (en) | Embedded logic analyzer for a programmable logic device | |
CN102541707B (zh) | 复用jtag接口的fpga片内逻辑分析仪系统和方法 | |
US8997034B2 (en) | Emulation-based functional qualification | |
US6560723B1 (en) | Automatic communication protocol test system with message/sequence edit function and test method using the same | |
US8281280B2 (en) | Method and apparatus for versatile controllability and observability in prototype system | |
CN109342929A (zh) | 一种cvc-200t硬件智能测试系统及方法 | |
EP2264598A2 (en) | Enhanced embedded logic analyzer | |
KR20010110048A (ko) | 칩 설계 검증 및 테스트 장치 및 방법 | |
CN103376340B (zh) | 一种转接板、多平台串行测试系统及方法 | |
CN111339731B (zh) | 一种面向SoC的FPGA验证平台和验证方法 | |
CN113157501B (zh) | 一种基于ate测试机的微系统模块ac参数测试方法 | |
CN109634256B (zh) | 一种通用can控制器芯片的板级验证系统 | |
CN115032969B (zh) | 一种车载控制器的以太网测试系统 | |
CN114325333A (zh) | 一种高效率规范化的soc系统级验证方法及装置 | |
CN114611445A (zh) | 基于FPGA原型的SoC软硬件协同验证系统及方法 | |
CN115496018A (zh) | 一种SoC芯片多版本验证方法、装置及设备 | |
CN112067978A (zh) | 一种基于fpga的fpga筛选测试系统及方法 | |
CN115454751A (zh) | 一种fpga芯片的测试方法、装置和计算机可读存储介质 | |
CN111722968A (zh) | 一种硬件调试方法、装置、系统及可读存储介质 | |
CN113820586A (zh) | 一种适用于继电保护装置的单板自动测试系统及方法 | |
CN114019357A (zh) | 一种逻辑处理模块的测试引脚的管理方法及相关组件 | |
CN117709251A (zh) | 基于sv的arinc429接口自动化验证系统及方法 | |
CN214896581U (zh) | 一种基于Zynq的可配置通用IO测试系统 | |
CN116629171A (zh) | 一种基于综合网表的fpga芯片调试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |