ImageVerifierCode 换一换
格式:DOC , 页数:4 ,大小:850.50KB ,
资源ID:4199643      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-4199643.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于构件的并行测试系统TPS设计与实现.doc)为本站会员(hw****26)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于构件的并行测试系统TPS设计与实现.doc

1、基于构件的并行测试系统 TPS 设计与实现 夏 锐 ,肖明清,付新 华 ,程 进军 (自动测试系统实验室 空军工程大学工程学院 陕西 西安 710038) 联系作者 e-mail: xiaruiww 摘 要: 并行测试技术是未来自动测试系统的重点发展方向之一,而目前国内外尚无成熟实用的并行测试 系统测试程序集(Test Program Set, TPS)的开发方法。本文详细介绍的基于 COM 构件的并行测试系统 TPS 的分析、设计和实现 方法。首先分析了并行测试系统的体系结构,给出了并行测试系统 TPS 的用例模型。接 着建立了其基于构件的层次式框架,最后介 绍了基于 COM 接口的支持并发

2、操作构件的实现方法。 关键词: 并行测试;自动测试系统;TPS;多线程;构件 中图法分类号: TP274 文献标识码: A Parallel TPS Design and Application Based on Components XIA Rui, XIAO Ming-qing, FU Xin-hua, CHENG Jin-jun (ATS Lab, Engineering School of the Air Force Engineering University, Xian 710038, China) Abstract: Parallel Test is a new hot dire

3、ction for the future Auto Test System. At present, there are no practical and mature R automatic test system; test program set; muti-thread; component 收稿日期:2007-02-00;修订日期:2007-00-00 基金项目:总装“十一五”重点预研项目(51317030103) ;电子测试技术国防科技重点实验室基金项目 (51487020305JB3201) 作者简介:夏锐(1982),男,安徽含山人,博士研究生,主要研究方向:武器系统检测自动化

4、与智能化;肖明清(1963), 男,湖 南常德人,教授,博导,主要研究方向:自动测试系统设计与开发;付新华(1980),男,湖南攸县人,博士研究生,主要研究方向: 武器系统检测自动化与智能化;程进军(1979),男,湖北襄樊人,博士,讲师,主要研究方向:自动测试系统设计与开发 0 引言 并行测试技术(Parallel Test)是自动测试系 统(Automatic Test System, ATS)在进一步减少测 试时间、降低测试成本的发展趋势下兴起的一项 新技术,是美军下一代 ATS“NxTest”的关键技 术之一。它正以不可比拟的优势成为未来 ATS 发 展的热点,将是下一代 ATS 的主

5、要特征之一 1-4。 并行测试主要由多个工作线程同步或异步地 并发执行多项测试任务来实现。然而,这些线程 往往会竞争共享资源,容易产生死锁、饿死等错 误,且问题难以复现,增加了并行测试系统测试 程序集(Test Program Set, TPS)的复杂性。因此 并行测试技术的关键在于其 TPS 的设计。 目前,较大规模的复杂应用系统一般采用基 于构件的软件开发方法。基于构件的软件开发不 仅具有诸如方便开发和维护、可移植性强、复用 性好等优势,而且积累了支持开发实时并发系统 的丰富经验和方法模式。因此,本文采用“应用 程序框架+支持并发构件 ”的开发方法,设计了并 行测试系统 TPS 的构件框架

6、,介绍了基于 COM 接口的支持并行操作构件的实现,为并行测试系 统 TPS 的快速开发打下良好的基础。同时,基于 构件的 TPS 提高了系统的可靠性,方便了系统的 测试、维护与升级,使并行测试系统的应用了具 有良好的可扩展性。 1 并行测试系统的体系结构 基于多线程结构的并行测试系统是目前并行 测试实现的主要形式,图 1 为其体系结构图。 系统结构可分为三层,最高层为并行测试应 用程序。调度器按一定的调度策略来分配多个测 试工作线程在单个或多个处理器上的运行时间, 从而在宏观上表现出多个测试任务同时运行的效 果。测试任务的工作流程通过调用测试数据库来 完成,测试结果也保存到其中。该层底层是仪

7、器 及激励的驱动层,用来管理和控制系统中的仪器 设备;第二层 I/O 接口层是系统软件与硬件间执行 通信的底层函数库。最底层是硬件资源层,通过 并行测试适配器将被测件(UUT)与系统进行电 气连接,并可执行多个 UUT 间的切换。 测 试 数 据 库 并 行 测 试 应 用 程 序 工 作 线 程 1 工 作 线 程 n 主 线 程 测 试 调 度 器 仪 器 驱 动 I / O 接 口 库 ( V I S A 或 其 他 ) 并 行 测 试 适 配 器 U U T 1 U U T 2 . . . U U T n . . . 一 一 一 一 一 一 一 一 一 V X I P X IG P I

8、 B R S 2 3 2 . . . N e t w o r kL X I 图 1 多线程并行测试系统体系结构 分析系统体系结构的目的是在系统的应用与 开发之间形成统一、完整的功能视图,作为建模、 设计和规划系统的基础。 2 基于构件的并行测试系统 TPS 架构 从并行测试系统的体系结构分析可以看出, 并行测试系统设计的核心在其 TPS 的设计开发。 首先分析了并行测试系统的用例模型,接着设计 了并行测试系统 TPS 的构件框架,最后通过实例 介绍了支持并行操作构件的实现方法。 2.1 并行测试系统 TPS 用例模型 用例模型开发是并行测试系统需求分析阶段 的首要任务,图 2 为系统的 Use

9、 Case 图。 从用户的角度来看,并行测试系统应可进行 传统的单 UUT 测试、单步测试和并行测试。测试 前能够对系统进行自检;测试后可调用测试数据 库查看测试结果,分析数据以进行故障诊断。系 统按 UUT 一定的测试流程进行数据测量,测试流 程通过调用测试数据库实现。这样可以提高系统 的通用性,测试不同的 UUT 只需调用不同的数据 库,而不必重新修改代码。并行调度是并行测试 系统的核心用例,它通过一定的策略来控制多个 测试线程、对共享资源进行调度使用,从而实现 线程间的同步并避免产生死锁、饿死等问题。 并 行 测 试 系 统 数 据 库 操 作 并 行 调 度 数 据 测 量 故 障 诊

10、 断 单 U U T 测 试 并 行 测 试 用 户 系 统 自 检 仪 器 仪 器 控 制 激 励 设 备 激 励 设 备 控 制 单 步 测 试 图 2 并行测试系统用例图 2.2 并行测试系统 TPS 构件框架 针对并行测试系统的功能特点,按分层设计 的原则 5,提出了如图 3 所示的基于构件的并行测 试系统 TPS 的层次式框架,如图 3 所示。 整个 TPS 分为四个层次。从上至下依次为: 1)用户界面层。主要由各种界面构件组成, 全面实现系统与用户间的交互。通过它用户能够 进行测试信息的输入、测试任务的选择以及测试 信息的保存、打印和历史记录查询等功能。该层 有成熟的构件库供应。

11、2)测试管理层。该层是交互式界面的后台执 行者,它能够响应用户的操作,由并行测试调度 器管理调度多个工作线程通过一定的调度算法, 调用系统中的可用资源,完成用户指定的操作。 各工作线程调用下层的功能构件完成相应功能任 务。 3)测试应用层。该层以构件的形式封装了并 行测试系统中各种可用资源,如数据库操作构件、 电源控制构件、红外目标控制构件等各种对测试 仪器、设备的操作构件,提供给上层应用程序框 架调用。该层可从以往建立的测试功能构件库中 进行裁取或改造。可最大限度地实现代码重用, 加速了系统的开发。 4)仪器驱动层。该层由仪器生产厂家提供的 仪器驱动程序以及自研设备的驱动程序组成。通 过 T

12、PS 外部下层的 I/O 接口层,该层实现 TPS 与 硬件资源的通讯并能驱动硬件资源执行相应的功 能。该层已有的 IVI 驱动库、ODAS 等都是基于 COM 构件接口的,可方便地实现与上层的无缝连 接。 这四个层次之间是层层调用的关系:测试应 用层中的各个功能构件通过调用仪器驱动层的服 务构件来完成对硬件资源的操作。构成系统应用 界面的界面构件通过调用测试管理层中的构件完 成用户定义的各项测试任务。测试管理层中的并 行测试调度器构件在一定的调度算法的控制下, 对多个测试工作线程进行调度,调用各个功能构 件,完成各项测试任务。 交互式用户操作界面 界面构件 并行测试 调度器 调度算法 数据库

13、 操作构件 电源控制 构件 红外目标 控制构件 测试 数据库 I V I - C O M I V I - M S S 其它设备 驱动构件 A D 扫描 构件 . . . 并 行 测 试 T P S 仪器资源 其他专用设备 U U T 1 U U T 2 U U T n . . . . . . 用户 界面层 管理层 仪器 驱动层 应用层 T e s t T h r e a d I / O 接口库 ( V I S A 或其他 ) 适配器 硬件 资源层 I / O 接口层 外部软件或 遗留代码 L a b V I E W T e s t S t a n d 等 L a b W i n d o w s

14、 / C V I 1 n 1 1 O D A S 图 3 基于构件的并行测试系统 TPS 层次式框架 2.3 支持并行操作的构件设计 由并行测试的需求分析确定了构件的并行性 要求。支持并行操作的构件要求采取一定的机制, 避免由于多个工作线程的同时调用而对共享资源 的使用产生冲突 6-8。本文通过使用锁的方法来实 现支持并行操作构件的设计。以 AD 仪器模块的 使用构件的开发为例进行说明,其构件结构图如 下图 4。 A D 扫 描 构 件 I A D S c a n T e s t T h r e a d 线程调用 I n s t r u m e n t S c a n L i s t F I

15、F O O p e n W r i t e R e a d I U n k n o w n M u t e x A D I n s t r u m e n t 图 4 AD 功能构件结构图 由于 AD 仪器模块执行 AD 转换的特殊性,它 不能同时被两个线程调用,因此必须设置锁机制 来同步两个以上线程对 AD 功能构件的调用。锁 机制通过互斥类 Mutex 来实现。 限于篇幅,本文采用基于 COM 接口的构件实 现主体框架简略如下: /AD 仪器类、ScanList 类、FIFO 类的定义 class ADInstrument : public instrument public: Initi

16、alize (); Rest (); ReadFIFO (); private: ; class ScanList class FIFO /具体定义略 /AD 构件接口定义 Interface IADScan : IUnknown Virtual void _ _ stdcall FADScan (); /AD 功能构件定义 Class CADScan : public IADScan public: /IUnknown 接口定义略 /IADScan 接口实现 Virtual void _ _ stdcall FADScan () AD 参数定义及动作函数实现 private: CMutex

17、Mutex (FALSE, NULL, NULL); ScanList ADscanlist; FIFO ADfifo; ; 其协作工作模式如图 5 所示。 1 : r u n ( ) 3 . a : r u n ( ) 调 用 被 阻 塞 U U T 1 T h r e a d : T e s t T h r e a d U U T 2 T h r e a d : T e s t T h r e a d I n s t r u e m n t A D I n s t r u e n t : S c a n L i s t F I F O M u t e x 2 : L o c k ( ) L

18、 o c k e d A v a i l a b l e 3 . b : I n i t i a l i z e ( ) W a i t i n g 4 : S e t ( ) 5 : w r i t e ( ) 6 : R e d F I F O ( ) 7 : C l o s e ( ) 8 : U n L o c k ( ) 9 : r u n ( ) 图 5 AD 功能构件顺序图 3 系统实现 专用的测试工程语言如 LabWindows/CVI、LabVIEW 及 TestStand 等目前 还不支持面向对象的开发,因此还需要一定的工 作量。VC语言功能强大,可靠性高,可移植 性好,且

19、提供了丰富的支持多线程的并行机制, 用它编写多线程程序简单、方便和安全。由分析 设计阶段得到的 UML 可视化模型还可以在 VC中自动生成代码框架,实现了系统的快速 开发。 4 结束语 传统 ATS 的 TPS 体系结构的面向对象、基于 构件及模式等设计方法已越来越走向规范和成熟。 并行测试系统作为新兴系统,其 TPS 的设计与开 发目前国内外尚无统一的模式和标准。因此,持 续深入地开展并行测试系统 TPS 开发设计的方法 及模型研究,对推动并行测试技术的发展是十分 必要和重要的。 参考文献: 1 夏锐. 并行测试系统设计与应用 D. 硕士, 空军工程大学工程学院, 2005. 2 夏锐,肖明

20、清,朱小平等. 并行测试技术在自动测试系统中的应用J. 计算机测量与控制. 2005, 13(1):7-10. 3 朱小平,肖明清,夏锐. 基于 RUP 过程的并行测试建模分析与设计J. 空军工程大学学报(自然科学版). 2005, 6(6):63- 65. 4 夏锐,肖明清,赖根. 并行测试设计与开发J. 计算机测量与控制. 2006, 14(7):841-843. 5 黄柳青,王满红. 构件中国M . 北京: 清华大学出版社, 2006. 6 HASSAN GOMAA 著,吕庆中等译. 用 UML 设计并发、分布式、实时应用M . 北京: 北京航空航天大学出版社, 2004. 7 BRUCE POWEL DOUGLASS 著,麦中凡,陶伟译. 实时设计模式M. 北京: 北京航空航天大学出版社, 2004. 8 CAMERON HUGHES & TRACEY HUGHES 著,肖和平等译. C+ 并行与分布式编程M. 北京: 中国电力出版社, 2004.

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。