CN112415307B - 一种用于并行测试的ats仪器资源控制方法 - Google Patents
一种用于并行测试的ats仪器资源控制方法 Download PDFInfo
- Publication number
- CN112415307B CN112415307B CN202011212983.7A CN202011212983A CN112415307B CN 112415307 B CN112415307 B CN 112415307B CN 202011212983 A CN202011212983 A CN 202011212983A CN 112415307 B CN112415307 B CN 112415307B
- Authority
- CN
- China
- Prior art keywords
- instrument
- test
- thread
- initialization
- ats
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明针对并行测试过程中多状态ATS仪器资源控制需求,设计了一种用于并行测试的ATS仪器资源控制方法,给出了并行测试下仪器资源控制工作流程,实现了可针对不同状态下的仪器资源自适应控制逻辑。利用该方法可实现不同状态下的仪器资源统一控制,同时真正在硬件资源和驱动控制层面,为并行测试软件设计提供技术支撑,具有良好的可扩展性和重要的实际应用参考价值。
Description
技术领域
本发明属于自动化测试系统并行测试技术领域,尤其涉及一种用于并行测试的ATS仪器资源控制方法。
背景技术
自动测试系统(Automatic Test System,ATS)是以计算机技术为核心,借助虚拟仪器和测试总线技术,实现电子设备功能性测试、故障诊断和健康管理的重要保障。目前,广泛应用于航空航天、汽车电子等工业产品的ATS采用集中式系统架构,即在计算机程序控制下,借助测试总线,虚拟仪器及其他设备完成某种测试任务的有机整体。
例如PCT专利公开WO2011038350A1公开了一种用于启用并行测试的计算装置,描述了一种用于启用并行测试的方法,包括在计算装置上产生多个测试对象,每一个对应于被测装置DUT中的单独块,将所述的多个测试对象添加到队列中,并将基于所述的多个测试对象的信息发送到自动测试设备上。中国专利公开CN103645988A公开了一种通用化分布是测试系统架构,所述的测试系统选用可拓展的软件系统的测试设备或总线桥,以LXI为主干建立混合测试系统,借助测试设备的计算存储和网络资源实现测试信息的分布式处理。中国专利公开CN107239331A公开了一种并行测试任务的同步出发执行方法基于同步触发器搭建各个待测单元,完成测试过程控制选项的预先调整与设置,当用户通过测试任务界面启动测试任务时可以立即执行所有注册的单元的测试任务。
随着计算机技术和集成电路技术的快速发展,作为系统核心的测试总线有时会成为性能瓶颈,这时仅单纯提升计算机控制核心性能,也难以取得全系统性能的同步提升;同时,即便仪器本身具备一定的信息处理能力、存储能力,也很难融入全系统统一调度;同时计算机在控制某个虚拟仪器时,其余大多数的仪器模块处于闲置状态,造成成本的额外增加。
针对上述问题,1996年美国国防部(US Department of Defense,DoD)采用基于性能的保障(Performance-Based Logistic,PBL)策略,将并行测试引入ATS作为一种先进测试技术。并行测试技术可大大提高虚拟仪器的使用效率,在同样的测试时间内可以完成更多的测试任务,进一步提高ATS全系统的测试能力,降低测试成本。目前,工业界对并行测试也有诸多成功的设计实例,诸如三星组网、运载火箭一体化测控系统、多航天器并行测试等,但均未对应用软件和硬件资源的耦合设计做详细阐述,大多数设计实例默认备份多组独立硬件资源,忽略仪器资源自身存在多状态的特点。
发明内容
有鉴于此,本发明针对多状态仪器资源提出一种自适应控制方法,通过操作系统内核变量实现多线程同步,统一完成仪器资源初始化等操作,解决多状态仪器资源易发生的冗余控制等问题,实现应用软件与仪器资源之间、并行测试任务之间的解耦设计。
本发明提供了一种用于并行测试的自动测试系统ATS仪器资源控制方法,所述的用于并行测试的自动测试系统包括工控机、多组独立的仪器板级电路和多个UUT,工控机包括多核多线程处理器和共享存储器;每组独立的仪器板级电路包括多项资源,每组独立的仪器板级电路能够测试一个UUT,其中多组仪器板级电路的数量N和多个UUT的数量K都是自然数,0<K≤N;所述的控制方法包括:
步骤一,对多核处理器的每个处理器核心执行线程操作
1.1上电启动,
1.2对每个处理器核心创建至少一个或者一个以上的线程,
1.3对每个处理器核心的独立线程执行硬件资源初始化;
步骤二,对全体处理器核心和独立线程执行统一初始化;
2.1执行初始化函数的线程休眠等待,直到硬件资源全部初始化完成;
2.2初始化结束后,线程函数唤醒休眠,释放信号量,继续执行测试任务;
步骤三,并行执行测试任务;
步骤四,监测各项测试任务完成状态,
4.1已完成测试任务的线程进入休眠;其他线程继续执行测试;
4.2全部线程完成测试任务,发出测试任务完成信号;
步骤五,执行统一资源释放操作,
步骤六,测试结束。
进一步的,所述的硬件资源初始化步骤1.3包括:
1.31获取信号量;
1.32进入关键代码段;
1.33比较函数执行次数与线程运行个数是否相等,是,执行步骤二;否,执行下列步骤
1.34释放信号量;
1.341判断线程等待标志位是否有效,等待标志位无效,确定硬件初始化完成。
进一步的,步骤1.341还包括:线程等待标志位有效时,执行线程休眠;回到步骤1.341。
进一步的,所属的步骤2.1还包括子步骤,
步骤2.11,读取初始化过程中所设置的线程等待标志位设置,判断初始化过程中所设置的线程等待标志位设置是否处于无效状态,当线程等待标志位设置处于无效状态,初始化完成。
进一步的,所述的关键代码段指在指定的操作系统环境下,用于信号量的创建、信号的获取和信号量释放的操作语段;或者对于操作功能版卡的初始化、仪器识别、仪器操作和资源释放的操作语句。
优选的,每个独立的仪器板级电路包括现场可编程门阵列FPGA,用于生成指定的测试功能模块,多种存储器DDR和FLASH,用于存储测试信号和制定一起的操作程序;每个独立的仪器板级电路具有总线,能够通过CAN总线、 UART总线连接到工控机的测试总线,所述的独立的仪器板级电路包括还模拟数字转换和数字模拟转换器。
优选的,所述的工控机包括多核多线程处理器,该多核多线程处理器包括共享缓冲存储器CACHE和与多核多线程处理器连接的共享存储设备;该工控机还包括操作系统和应用于并行测试的应用软件。
本发明针对并行测试过程中多状态ATS仪器资源控制需求,设计了一种用于并行测试的ATS仪器资源控制方法,给出了并行测试下仪器资源控制工作流程,实现了可针对不同状态下的仪器资源自适应控制逻辑。利用该方法可实现不同状态下的仪器资源统一控制,同时真正在硬件资源和驱动控制层面,为并行测试软件设计提供技术支撑,具有良好的可扩展性和重要的实际应用参考价值。
附图说明
图1是集中式ATS并行测试结构示意图。
图2是并行测试硬件资源统一操作流程图。
图3是硬件资源初始化任务逻辑操作流程图。
图4是演示验证系统。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步说明。
如附图一所示,集中式ATS并行测试结构由应用软件、操作系统和以测试计算机、集成电路为代表的仪器资源共同组成。并行测试软件通过调用操作系统的接口函数,借助多核多线程处理器完成多项任务的同步并行测试。仪器资源通过测试总线与测试计算机相连,测试计算机借助操作系统完成对测试仪器资源驱动控制,实现系统耦合。
实际应用中,以板级电路为代表的仪器资源,通过备份N组独立硬件资源的方式可以满足N组UUT的并行测试需求;但受限于仪器资源多状态的特点和实际应用场景,例如某些仪器资源由于内部资源可隔离的特点,在体积有限的集中式ATS中仅用到K组仪器资源,其中0<K≤N。针对K组仪器资源,驱动函数中的初始化或者释放操作,易发生冗余控制等问题。基于仪器控制接口标准化规范的应用软件设计,在仪器资源控制层面无法实现真正并行测试。
为了实现并行测试软件与仪器资源之间、并行测试任务之间的解耦设计,减少应用软件针对底层硬件所产生的设计约束,提高设计的通用性,对不同应用情况下的硬件资源的识别、初始化、仪器程控、功能测试以及接口控制等操作,可在采用信号量完成多线程初始化任务同步之后,统一进行,如附图2所示。附图2给出了一种并行测试硬件资源统一操作流程图,它是针对多核多线程处理器的特点所设计的,现在流行的多核多线程处理器是为了充分利用处理器核心的全体资源,将一个处理器核心的资源分给两条或更多的执行线程,相当于把一个处理器核心当做两个核心使用,每个“虚拟的核心”同一时刻使用的处理器资源是不同的,为了在接口总线上不产生冲突,首先要对每一个处理器和新的硬件资源进行识别,创建不同的线程,把被识别的全部资源分时划分个不同的线程。把这些线程在每个核心内部初始化。但是不同的核心胡总或者不同核心不同线程,仍然可能在产生任务冲突,因而在各个核心和独立线程完成初始化之后,仍有必要对全部硬件资源执行统一的初始化操作。这个操作过程中各线程的初始化进程不一致,所以必须设置线程等待标志,以标识每个独立线程的统一初始化进度。
例如执行硬件资源初始化任务时,多线程依次获取信号量进入“初始化操作”,执行关键代码段。而信号量的创建、获取及释放在Windows操作系统下是利用CreateSemaphore、WaitForSingleObject、ReleaseSemaphore等函数调用来实现。当初始化函数执行次数等于线程运行个数时,统一对硬件资源进行初始化操作。根据先到后服务的调度策略,先执行初始化函数的线程休眠等待,直到硬件资源全部初始化完成。初始化结束后,线程函数唤醒休眠,继续执行接下来的测试任务。同理,并行测试结束后,按照同样的设计思路,实现多线程下的硬件资源统一释放,实现逻辑操作流程图如附图3所示。
实施例一:
下面以四台UUT并行测试为例,描述该方法使用过程:
如附图4所示,该ATS采用凌华CPCI-6940主机板作为测试计算机,搭载 IntelXeon D-1539处理器,具有八核心十六线程,满足测试所需的处理器性能。
其中,ATS采用CPCI机箱体积有限,仅集成四套外购或自研的CPCI多功能仪器模块,一套内部可隔离成四组独立IO资源的多功能采集板卡。对于这块多功能采集板卡,驱动程序中的初始化(MF_INIT函数)、仪器识别(MF_FIND 函数)、操作(MF_FUNC函数)及释放(MF_CLOSE函数)操作均通过同一组接口函数实现。当进行四路并行测试时,如果不做逻辑处理,某一路测试过程中对采集板卡进行初始化或资源释放等操作,会对其他三路仍处于测试过程中的IO量采集造成影响,也可能造成对这块多功能采集板卡进行四次初始化或释放等冗余操作。前述的两次初始化操作本身可以避免这种冗余操作
因此采用基于多状态ATS仪器资源的控制逻辑,使用信号量实现多线程同步后,进行硬件资源的统一初始化操作,可以避免冗余操作发生;并行测试结束后,使用信号量实现多线程同步后,统一释放资源,可以避免并行测试过程中一路测试流程结束后释放资源,影响其他三路尚未完成测试任务的情况发生。
上述实例仅用以说明本发明的技术方案而非对其进行限制,尽管参照最佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。
Claims (6)
1.一种用于并行测试的自动测试系统ATS仪器资源控制方法,所述的用于并行测试的自动测试系统包括工控机、多组独立的仪器板级电路和多个UUT,工控机包括多核多线程处理器和共享存储器;每组独立的仪器板级电路包括多项资源,每组独立的仪器板级电路能够测试一个UUT,其中多组仪器板级电路的数量N和多个UUT的数量K都是自然数,0<K≤N;其特征在于所述的控制方法包括:
步骤一,对多核多线程处理器的每个处理器核心执行线程操作
1.1上电启动,
1.2对每个处理器核心创建一个以上的线程,
1.3对每个处理器核心的独立线程执行硬件资源初始化;
所述硬件资源初始化包括子步骤:
1.31获取信号量;
1.32进入关键代码段;
1.33比较函数执行次数与线程运行个数是否相等,是,执行步骤二;否,执行下列步骤
1.34释放信号量;
1.341判断线程等待标志位是否有效,等待标志位无效,确定硬件初始化完成;
步骤二,对全体处理器核心和独立线程执行统一初始化;
2.1执行初始化函数的线程休眠等待,直到硬件资源全部初始化完成;
2.2初始化结束后,线程函数唤醒休眠,释放信号量,继续执行测试任务;
步骤三,并行执行测试任务;
步骤四,监测各项测试任务完成状态,
4.1已完成测试任务的线程进入休眠;其他线程继续执行测试;
4.2全部线程完成测试任务,发出测试任务完成信号;
步骤五,执行统一资源释放操作,
步骤六,测试结束。
2.如权利要求1所述的自动测试系统ATS仪器资源控制方法,其特征在于:步骤1.341还包括:线程等待标志位有效时,执行线程休眠;回到步骤1.341。
3.如权利要求1所述的自动测试系统ATS仪器资源控制方法,其特征在于所述的步骤2.1还包括子步骤,
步骤2.11,读取初始化过程中所设置的线程等待标志位设置,判断初始化过程中所设置的线程等待标志位设置是否处于无效状态,当线程等待标志位设置处于无效状态,初始化完成。
4.如权利要求1所述的自动测试系统ATS仪器资源控制方法,其特征在于:所述的关键代码段指在指定的操作系统环境下,用于信号量的创建、信号的获取和信号量释放的操作语段;或者对于操作功能版卡的初始化、仪器识别、仪器操作和资源释放的操作语句。
5.如权利要求1所述的自动测试系统ATS仪器资源控制方法,其特征在于:每个独立的仪器板级电路包括现场可编程门阵列FPGA,用于生成指定的测试功能模块,多种存储器DDR和FLASH,用于存储测试信号和仪器的操作程序;每个独立的仪器板级电路具有总线,能够通过CAN总线、UART总线连接到工控机的测试总线,所述的独立的仪器板级电路还包括模拟数字转换和数字模拟转换器。
6.如权利要求1所述的自动测试系统ATS仪器资源控制方法,其特征在于:所述的工控机包括多核多线程处理器,该多核多线程处理器包括共享缓冲存储器CACHE和与多核多线程处理器连接的共享存储设备;该工控机还包括操作系统和应用于并行测试的应用软件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011212983.7A CN112415307B (zh) | 2020-11-03 | 2020-11-03 | 一种用于并行测试的ats仪器资源控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011212983.7A CN112415307B (zh) | 2020-11-03 | 2020-11-03 | 一种用于并行测试的ats仪器资源控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112415307A CN112415307A (zh) | 2021-02-26 |
CN112415307B true CN112415307B (zh) | 2023-01-17 |
Family
ID=74828744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011212983.7A Active CN112415307B (zh) | 2020-11-03 | 2020-11-03 | 一种用于并行测试的ats仪器资源控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112415307B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113828548B (zh) * | 2021-11-26 | 2022-02-25 | 南京派格测控科技有限公司 | 一种射频芯片测试装置及方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1481089A (zh) * | 2002-09-03 | 2004-03-10 | 华为技术有限公司 | 一种通信设备测试仪中多线程测试方法 |
US6871298B1 (en) * | 1999-11-12 | 2005-03-22 | Obsidian Software, Inc. | Method and apparatus that simulates the execution of paralled instructions in processor functional verification testing |
CN101546275A (zh) * | 2008-03-26 | 2009-09-30 | 中国科学院微电子研究所 | 具有硬件信号量模块的多处理器系统及其实现方法 |
CN102902512A (zh) * | 2012-08-31 | 2013-01-30 | 浪潮电子信息产业股份有限公司 | 一种基于多线程编程及消息队列的多线程并行处理方法 |
CN103077135A (zh) * | 2012-12-31 | 2013-05-01 | 中国电子科技集团公司第四十一研究所 | 一种支持并行测试的测试资源管理方法 |
CN103164360A (zh) * | 2013-02-26 | 2013-06-19 | 中国电子科技集团公司第四十一研究所 | 一种支持并行测试的测试资源管理方法 |
CN103176848A (zh) * | 2011-11-08 | 2013-06-26 | 辉达公司 | 计算工作分布参考计数器 |
CN104375899A (zh) * | 2014-11-21 | 2015-02-25 | 北京应用物理与计算数学研究所 | 高性能计算机numa感知的线程和内存资源优化方法与系统 |
CN104660465A (zh) * | 2015-01-30 | 2015-05-27 | 深圳市极致汇仪科技有限公司 | 一种多dut并行测试方法及系统 |
CN109709424A (zh) * | 2018-12-29 | 2019-05-03 | 中电科仪器仪表有限公司 | 一种emc自动测试系统多测试项并行测试的实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009047025B3 (de) * | 2009-11-23 | 2011-05-26 | Beckhoff Automation Gmbh | Echtzeit-Laufzeitsystem und Funktionsmodul für ein solches Laufzeitsystem |
-
2020
- 2020-11-03 CN CN202011212983.7A patent/CN112415307B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6871298B1 (en) * | 1999-11-12 | 2005-03-22 | Obsidian Software, Inc. | Method and apparatus that simulates the execution of paralled instructions in processor functional verification testing |
CN1481089A (zh) * | 2002-09-03 | 2004-03-10 | 华为技术有限公司 | 一种通信设备测试仪中多线程测试方法 |
CN101546275A (zh) * | 2008-03-26 | 2009-09-30 | 中国科学院微电子研究所 | 具有硬件信号量模块的多处理器系统及其实现方法 |
CN103176848A (zh) * | 2011-11-08 | 2013-06-26 | 辉达公司 | 计算工作分布参考计数器 |
CN102902512A (zh) * | 2012-08-31 | 2013-01-30 | 浪潮电子信息产业股份有限公司 | 一种基于多线程编程及消息队列的多线程并行处理方法 |
CN103077135A (zh) * | 2012-12-31 | 2013-05-01 | 中国电子科技集团公司第四十一研究所 | 一种支持并行测试的测试资源管理方法 |
CN103164360A (zh) * | 2013-02-26 | 2013-06-19 | 中国电子科技集团公司第四十一研究所 | 一种支持并行测试的测试资源管理方法 |
CN104375899A (zh) * | 2014-11-21 | 2015-02-25 | 北京应用物理与计算数学研究所 | 高性能计算机numa感知的线程和内存资源优化方法与系统 |
CN104660465A (zh) * | 2015-01-30 | 2015-05-27 | 深圳市极致汇仪科技有限公司 | 一种多dut并行测试方法及系统 |
CN109709424A (zh) * | 2018-12-29 | 2019-05-03 | 中电科仪器仪表有限公司 | 一种emc自动测试系统多测试项并行测试的实现方法 |
Non-Patent Citations (4)
Title |
---|
"一种便携式低成本通用并行测试设备研制";卢宁波 等;《计算机测量与控制》;20201025;第60-65、71页 * |
基于XML的自动测试系统资源描述方法;袁清峰等;《北京航空航天大学学报》;20100115(第01期);全文 * |
基于虚拟仪器的自动测试系统研究;李明辉等;《电子测试》;20080315(第03期);全文 * |
并行自动测试系统中测试资源控制方法研究;王怡苹等;《计算机测量与控制》;20110425(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112415307A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10877766B2 (en) | Embedded scheduling of hardware resources for hardware acceleration | |
US4811345A (en) | Methods and apparatus for providing a user oriented microprocessor test interface for a complex, single chip, general purpose central processing unit | |
US4112490A (en) | Data transfer control apparatus and method | |
CN113167831B (zh) | 在已部署的汽车平台上执行自测的测试系统 | |
RU2437144C2 (ru) | Способ устранения исключительной ситуации в одном из ядер многоядерной системы | |
US20170286329A1 (en) | Mutual exclusion in a non-coherent memory hierarchy | |
US10628352B2 (en) | Heterogeneous multi-processor device and method of enabling coherent data access within a heterogeneous multi-processor device | |
US20240045787A1 (en) | Code inspection method under weak memory ordering architecture and corresponding device | |
CN111666210A (zh) | 一种芯片验证方法及装置 | |
CN114090498A (zh) | 一种嵌入式soc系统实现多核启动与业务的相互解耦方法 | |
CN111913822A (zh) | 一种基于amp架构的核间通信方式 | |
CN112415307B (zh) | 一种用于并行测试的ats仪器资源控制方法 | |
WO2022089505A1 (zh) | 一种错误检测方法及相关装置 | |
CN114780248A (zh) | 资源访问方法、装置、计算机设备及存储介质 | |
US10684834B2 (en) | Method and apparatus for detecting inter-instruction data dependency | |
CN111383704B (zh) | 一种存储器内建自测试电路和对存储器的测试方法 | |
Khalifa | Extendable generic base verification architecture for flash memory controllers based on UVM | |
CN111694787A (zh) | 一种芯片启动的方法、网络设备和机器可读存储介质 | |
CN115729627A (zh) | 线程同步方法及装置、芯片仿真方法及平台、相关设备 | |
CN115656788A (zh) | 一种芯片测试系统、方法、设备及存储介质 | |
CN113076709A (zh) | 一种基于混合参考模型的多核处理器功能验证平台及方法 | |
Floridia et al. | Parallel software-based self-test suite for multi-core system-on-chip: Migration from single-core to multi-core automotive microcontrollers | |
US10656201B2 (en) | Semiconductor device | |
US7523297B1 (en) | Shadow scan decoder | |
JP2022520914A (ja) | メモリ組込み自己テストコントローラを用いる読み出し専用メモリのテスト |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |