0 引言
ATS(Automatic Test System,自动测试系统)能够对被测设备进行自动测试、故障诊断。传统的面向仪器的ATS中开发的TPS(Test Program Set,测试程序集)涉及对测试资源的直接访问,当TPS在不同平台之间移植或测试仪器资源改变时,测试程序需做大量改动,可移植性和重用性较差。
ATML(Automated Test Markup Language,自动测试标记语言)采用面向信号的结构对ATS进行标准化描述。
ATML将测试需求描述为UUT端口的测量/激励信号需求,测试资源能力描述为仪器资源端口的信号能力,通过信号匹配实现仪器资源的分配。测试执行过程中,测试程序根据仪器资源分配的结果,调用面向信号的仪器驱动实现测试操作。基于ATML开发的TPS中不包含任何针对硬件资源的操作,当TPS在不同平台之间移植时,资源分配模块能够重新为UUT端口分配测试仪器,提高了TPS的可移植性。
1 仪器能力描述
ATML ATS关系图如图1所示。
在ATS中,仪器的主要功能是产生或测量UUT端口的需求信号。传统的测试仪器往往是功能单一的专用仪器,ATS中仪器数量众多,随着被测设备的增加,专用的测试适配器也越来越多,导致通用ATS的规模越来越庞大。近年来出现了以软件控制的、以功能组合方式实现的合成仪器技术,如Ai7技术,将7种仪器的功能由一个合成仪器模块来实现。本单位自主研发的可重构仪器资源的每个通道可以软件定义为AD/DA/计数器/DMM等常用的测试仪器资源,省去资源分配环节(信号开关矩阵);同时,可重构仪器具备超宽量程,可以不使用接口适配器进行信号调理。
为了实现面向信号开发的TPS的灵活重载和仪器的独立,ATML不直接利用仪器的物理端口(Ports),而是在仪器描述文档内定义信号能力(Capabilities)和逻辑资源(Resources),通过能力到资源的映射(Capability-Map)和资源到端口的连接(NetworkList)实现不同的信号能力到仪器端口的分配。整个测试系统的能力是测试工作站中所有仪器能力的总和。
以可重构仪器中的万用表资源为例,其能力、资源和端口的映射关系如图2所示。
(1)定义仪器的信号能力
仪器的信号能力定义了仪器能够产生或测量的信号类型信息。仪器的信号能力使用STD的BSC(BasicSignal Component,基本信号组件)库和TSF(Test Signal Framework,测试信号框架)库进行描述,也可以使用BSC库和TSF库中基本信号的组合自定义测试需要的复杂信号。以直流电压测量能力为例,幅值范围为-400~400V,精度为0.1%,其ATML描述如下:
(2)定义逻辑资源
逻辑资源定义了仪器内部的功能模块,用于连接仪器的信号能力与物理端口。图2所示的万用表资源包含4个逻辑端口:P1、P2、P3、P4。
(3)定义仪器的物理端口
物理端口定义了仪器的外部端口,图2中的端口:
HI、LO、Sense_HI、Sense_LO。
(4)将信号能力映射到资源
仪器描述文档中使用CapabilityMap元素描述信号能力与逻辑资源间的映射关系。其结构为:Capability-Map/Mapping/Map/Node/Path。
通过增加Mapping元素,将多个信号映射到同一个资源,可以描述一个资源能够产生/测量多个信号,但是同一时刻只能产生/测量其中的一个信号;通过增加Mapping元素,将一个信号映射到多个资源,可以描述一个信号可以由多个资源产生/测量;通过在同一Mapping元素中将多个信号映射到一个资源,可以描述一个资源能够同时产生/测量多个信号;通过在同一Mapping元素中将一个信号映射到多个资源,可以描述一个信号占用多个资源;通过在同一Map-ping元素中添加多个Map元素,可以描述信号与资源间多个端口的连接;通过在同一Map元素中添加多个Node元素,可以描述信号与资源间一对多或多对一的连接;Path元素用于描述能力或资源端口在仪器描述文档中的位置。通过上述搭配组合,可以完成对具体仪器功能间相互依赖或约束等复杂关系的描述。
(5)将资源连接到物理端口
仪器描述文档中使用NetworkList元素描述逻辑资源与物理端口间的连接关系。其结构为:NetworkList/Network/Node/Path。通过增加Network元素,描述资源与端口间的多条逻辑连接线路;Path元素用于描述资源端口和物理端口在仪器描述文档中的位置。
2 测试需求描述
ATML在测试描述文档中使用STD对测试需求进行了描述,UUT的所有端口和测试点所需的激励信号或测量信号在元素TestDescription/DetailedTestInformation/Action/Behavior中描述。Behavior元素的结构如图3所示。
其中Operations元素和IeeeStd1641元素包含对STD标准的引用。以Operations元素为例,说明ATML中对测试需求的描述方法。Operations元素使用17种预定义类型的操作(Operation)来描述Behavior的行为,其中OperationSetup类型的操作用于创建需求信号,Opera-tionConnect类型的操作用于将信号连接到UUT的端口或测试点。使用OperationConnect操作将OperationSet-up中创建的信号signal1连接到UUT的某个端口,可以描述UUT该端口的需求信号为signal1信号。
3 仪器资源分配模块设计
仪器资源分配模块通过对测试需求与测试资源能力进行信号匹配,实现仪器资源端口到UUT端口的映射。采用UML(Unified Modeling Language,统一建模语言)描述仪器资源分配模块的设计方案,其用例图如图4所示。
在仪器资源分配模块中,通过加载测试描述文件、测试工作站描述文件和仪器描述文件,获取测试需求信息和测试系统能力信息,通过信号匹配实现仪器资源的分配。
通过对图4的分析,对用例进行抽象,得到仪器资源分配模块的类图如图5所示。
对类图中涉及到的类简单介绍如下:
(1)仪器资源管理类:根据UUT各端口的信号需求及仪器能力列表分配仪器,生成仪器工作方式配置信息,并根据仪器与测试工作站的连接关系,得到工作站与UUT的连接关系,最终生成UUT端口到工作站端口的物理连接信息。
(2)仪器类:加载仪器描述ATML文档,解析该文档得到仪器能力、逻辑资源、仪器端口及能力到端口的映射信息;根据仪器资源分配结果,生成仪器工作方式配置文件。
(3)测试描述类:加载测试描述描述ATML文档,解析该文档得到UUT端口、测点及需求信号信息。
(4)测试工作站类:加载测试工作站描述ATML文档,解析该文档得到测试工作站端口、仪器资源信息及仪器与工作站的连接信息。
(5)物理连接类:根据仪器资源分配结果,生成UUT端口到测试工作站端口的物理连接文件。
通过对仪器资源分配模块静态模型的分析,得出系统对象随时间交互的序列图如图6所示。
由图6可知,仪器资源分配的过程为:解析测试描述文件,得到UUT各端口的需求信号;解析测试工作站描述,得到工作站中所有的测试仪器信息及仪器与工作站的连接关系;解析仪器描述文件,得到仪器能力列表及仪器能力到仪器端口的连接信息;根据UUT各端口的信号需求及仪器能力列表分配仪器,生成可重构仪器工作方式配置文件,并根据仪器与工作站的连接关系,得到工作站与UUT的连接关系,生成UUT端口到测试工作站端口的物理连接文件。
以活动图的形式,对分配仪器资源操作进行说明,如图7所示。
分配仪器资源的过程如下:
(1)查询UUT端口需求信号列表,获取UUT端口UUT_Port的需求信号R_Signal;若列表空则退出;
(2)查询信号能力列表,获取满足需求信号R_Sig-nal的信号能力A;若失败则R_Signal未匹配成功,当前测试配置不能满足测试需求,转到(1);
(3)查询CapabilityMap列表,获取包含信号A的映射Mapping;若失败转到(2);
(4)由映射Mapping获取产生/测量信号A的资源R;
(5)由资源列表查询资源R是否空闲,若资源R已使用,转到(3);若资源R空闲,转到(6);若资源R条件空闲(即资源R能够同时产生/测量多种信号,且已使用资源R产生/测量其中的一种或多种信号),转到(7);
(6)查询仪器的NetworkList列表,获取资源R连接的仪器端口INST_Port;查询测试工作站的NetworkList列表,获取INST_Port连接的工作站端口Sta_Port,生成Sta_Port与UUT_Port的连接;测试仪器调用信号能力A对应的面向信号的仪器驱动,由INST_Port端口产生/测量UUT_Port端口的需求信号R_Signal;转到(1)继续匹配下一项;
(7)查询资源R与仪器端口、工作站、UUT的连接列表,获取资源R已连接的UUT端口R_UUT_Port;比较UUT端口UUT_Port和R_UUT_Port,若二者相同,则使用UUT_Port已连接的仪器产生/测量信号R_Signal,转到(1)继续匹配下一项;若二者不同,则转到(3)。
当有多个仪器满足测试需求时,应以一定的原则将仪器进行排序,确定最终选用的测试仪器。可以参考按照精度最高、按照仪器均衡使用、按照仪器使用习惯等调度方式进行测试。
4 结语
本文研究了ATML中对测试系统能力和测试需求的面向信号描述方法,并给出具体的描述实例;使用UML详细设计了仪器资源分配模块的软件结构。仪器资源分配模块通过对测试系统能力和测试需求进行信号匹配,为UUT的待测端口分配仪器资源。面向信号的资源分配方法提高了ATS中TPS的可移植性,本文提出的方法可以为其他类似研究提供指导。 |