袁 扬,谭月辉,孙慧贤,沈若曦,王晓波
(1.军械工程学院 信息工程系,石家庄 050003;2.总装备部 重庆军代局驻昆明地区军代室,昆明 650000)
指控装备通信接口可重构测试系统软件框架设计
袁扬1,谭月辉1,孙慧贤1,沈若曦2,王晓波1
(1.军械工程学院 信息工程系,石家庄050003;2.总装备部 重庆军代局驻昆明地区军代室,昆明650000)
指控装备通信接口种类繁多,每种接口的测试需求也不尽相同,传统接口测试系统大多仅针对某个厂家的具体设备和接口开发,功能单一,软硬件重用率低,更新维护成本高;针对上述问题,分析总结了指控装备通信接口的接口特性和测试需求,通过深入研究小型化SCA技术,设计了满足通信接口可重构测试需求的自定义中间件和自定义核心框架,完成了可在通用小型硬件平台上实现的指控装备通信接口可重构测试系统软件框架;由系统典型测试流程图可看出,用户仅通过更改应用组件和系统配置即可实现对多种通信接口的可重构测试,增强了测试系统的通用性和灵活性,提高了测试系统软硬件的重用率,降低了接口测试系统的开发和维护费用。
小型化SCA;自定义中间件;自定义核心框架;通信接口可重构测试
接口测试是指控系统通信装备维修保障的主要方法之一,传统的接口测试系统一般仅针对某个厂家特定的设备和接口,功能单一,通用性、灵活性差,已无法满足当前指控装备通信接口测试的需求,而且硬件重用率低,维护更新成本高。
软件通信体系架构SCA是针对分布式环境下的软件无线电通信系统设计的标准规范集[1],可大大降低所设计系统软硬件的耦合性,实现在同一平台上对多种功能组件的管理和调用,是实现在通用平台上对多种通信接口进行可重构测试的有效方法,同时增强了系统的软硬件的重用率,降低系统维护和更新成本,很好地满足了当前指挥系统通信设备维修保障的需求。
1.1指控装备通信接口特性
指控装备通信接口种类繁多,在不同的通信设备上实现对各类信号的发送和接收,是指控装备通信功能实现的重要组成部分。
指控装备通信接口包括群路近传A接口、数字用户K接口和远传二线G接口等,每种接口遵循的协议和电气等特性不尽相同,甚至同种接口也因设备厂家的不同而有所区别,例如K接口遵循军内的数字用户线协议,而G接口遵循国际通用的G.SHDSL协议,但不同型号的指控系统的同类接口电气特性却可能不同。
1.2指控装备接口测试需求
接口测试主要包括性能测试和功能测试两种。其中性能测试是针对通信接口如传输距离、误码率等性能指标的测试方法;功能测试则用于检测接口能否正常完成通信功能,确保接口的正常工作。两种测试方法是接口测试系统必须实现的功能。
传统的接口测试系统由通信设备生产厂家配套生产,功能单一,难以对指控装备上种类繁多的接口进行统一的测试,不能满足当前指控装备维修保障高效率、低成本的要求。所以设计出一种可在通用平台上实现对多种通信接口进行可重构测试的系统软件框架势在必行。
指控装备通信接口可重构测试系统的测试功能由针对各类接口的测试应用实现。系统软件框架负责对系统和测试应用的控制,通过对不同测试应用组件的调用和配置实现对不同通信接口的测试。
2.1测试系统软件框架总体设计
本文通信接口可重构测试系统拟在以当前热门的ARM和FPGA为核心的嵌入式平台上实现。本文参考SCA体系架构,结合指控装备通信接口可重构测试的需求和嵌入式平台特点,设计的通信设备接口可重构测试系统总体分层结构如图1所示。
图1 测试系统总体分层结构
交互层:实现用户与测试系统的交互,通过屏幕、模拟前端等外设实现用户需求的输入和测试结果的输出。
应用层:存储系统测试功能实现所需的不同应用组件,是系统测试功能的主要承担者。
自定义中间件:是对CORBA中间件功能和服务的修改,是实现系统框架对FPGA应用组件跨平台透明调用功能的核心,增强了测试系统的灵活性和扩展性。
自定义核心框架:是对SCA核心框架功能和服务的修改,为测试系统提供了一组规范的接口集和服务集,配合自定义中间件提高了应用组件的可移植性和可重用性。
操作系统层:是测试系统软件运行环境的重要组成部分,以合理、有效的方式管理和组织测试系统软硬件资源。
硬件驱动层:包括了测试系统所需硬件外设的驱动程序,为上层软件调用硬件外设提供相应的接口,实现具体硬件的调用。
本文充分利用ARM和FPGA各自的特点和优势,将交互层、自定义中间件、自定义核心框架、操作系统层和硬件驱动层在ARM部分实现,将应用层在FPGA部分实现。自定义中间件和自定义框架设计是本文可重构测试系统软件框架的核心,下面进行重点讲述。
2.2自定义中间件设计
在SCA标准中,CORBA中间件屏蔽了硬件平台的底层通信协议和应用组件的异构性,实现了对本地或远程应用的透明调用,提高了应用组件的可移植性和可重用性,使得面向不同接口的测试应用可以通用的平台上被调用,增强了测试系统的灵活性和扩展性[3]。
但是CORBA中间件是面向分布式系统条件下的规范,难以在硬件资源受限的嵌入式环境下运行[4]。通过深入研究嵌入式中间件技术,结合通信接口可重构测试系统的实际需求,以COBRA中间件为基础,从功能模块和服务两方面对自定义中间件进行了设计。
2.2.1自定义中间件功能模块设计
CORBA/e是CORBA中间件针对嵌入式环境的改进标准,主要是删除了其中占用内存和存储资源较多的动态调用部分,以速度快、稳定性好和硬件需求低的静态调用模式为基础[5]。本文在CORBA/e的基础上,将其中多线程多事件的部分进行了裁剪,设计了资源占用更为优化的自定义中间件,其结构如图2所示。
图2 自定义中间件结构图
自定义中间件的静态调用主要由IDL桩、IDL框架和自定义ORB核心实现。IDL桩和IDL框架根据应用的IDL接口定义由开发者提前编译生成,是对对象应用功能和地址的解释说明,实现了客户端和服务端与自定义ORB核心的连接,并负责调用请求和返回消息的封装和解封装,提高了中间件对象定位的效率。
自定义ORB核心是自定义中间件消息传输的软总线,遵循COBRA中间件的GIOP协议,负责将IDL桩和IDL框架封装的消息进行编码和解码,并利用硬件平台的IO总线传递给目标对象的ORB。
自定义POA是对CORBA中间件中对象适配器的轻量化裁剪,仅包括一组RootPOA和POAManager,是自定义中间件管理对象引用和对象实现的核心机制。RootPOA负责产生和解释对象引用,根据客户端调用信息搜索其内部的活跃对象映射表并激活相应的对象实现;POAManager则实现对RootPOA的管理功能。
2.2.2自定义中间件服务设计
CORBA中间件服务种类繁多,大部分功能是面向分布式系统的,硬件资源占用量大,在嵌入式环境下难以实现。本文结合测试系统采用单进程和单事件运行模式的特点,以满足自定义中间件需要的最少服务为原则,进一步裁剪CORBA/e服务,规定自定义中间件服务包括以下两种。
对象定位服务:采用树形结构按名称存储客户所需的对象引用,并提供了基本的名称到对象引用的解析功能。
对象消息服务:定义了组件间消息传输的框架,规定自定义中间件采用事件生产者推送的方式传输事件。
2.3自定义核心框架设计
自定义核心框架由一组规范的、开放的服务和接口组成,配合自定义中间件实现了对系统和应用组件的管理,是系统软件框架的核心,本文将自定义核心框架分为系统框架接口和系统框架服务两部分进行设计[6]。
2.3.1系统框架接口设计
系统框架接口由基本应用接口和系统控制接口两部分组成,是对SCA核心框架接口的裁剪和重组,分别实现应用组件管理功能和自定义核心框架管理功能。
2.3.1.1基本应用接口设计
基本应用接口提供了一组公共的接口来实现对应用组件的控制和配置,屏蔽了应用组件的异构性,使得不同语言实现的应用组件都能被系统调用和管理,大大增强了测试应用的可移植性和可重用性。基本应用接口包括如下。
Resource:定义了启动和停止软件组件的统一接口,负责组件的创建和销毁,并可与其他Resource组件通过端口进行通信。
Port:被Resource接口所继承,为组件提供端口连接和断开的操作,实现组件的装配。
PortSupplier:被Resource接口所继承,用于获取Resource端口的对象引用。
LifeCycle:被Resource接口所继承,负责初始化和释放Resource。
PropertySet:被Resource接口所继承,实现对Resource组件属性的配置。
2.3.1.2系统控制接口设计
系统控制接口用于管理和控制自定义核心框架的行为,配合基本应用接口提供对系统和应用组件配置和控制的统一方法:
Application:继承Resource接口,提供一个容器实现对Resource组件的管理控制,为自定义核心框架提供了与应用的通用互操作。
ApplicationFactory:负责根据应用的描述文档,创建相应功能的应用实例,并负责实例的配置和初始化。
DomainManager:继承PropertySet接口,用于控制整个系统的状态,负责系统中应用和设备的注册和注销。
Device:继承Resource接口,为自定义核心框架提供对简单硬件设备的逻辑抽象,作为硬件代理与硬件进行互操作。
LoadableDevice:继承Device接口,添加了加载和卸载的操作,提供对硬件单元运行时行为进行修改的功能。
ExecutableDevice:继承LoadableDevice接口,添加了运行和终止组件的操作,可用于加载Resource组件。
2.3.2系统框架服务设计
系统框架服务规定了自定义核心框架需要提供的功能,配合系统框架接口保证测试系统各项功能的正常运行,并提供了符合XML标准的系统描述文档,为自定义中间件和自定义核心框架提供所需的各种信息。
2.3.2.1框架服务模块设计
框架服务由系统管理模块和系统运行模块组成。其中系统管理模块负责测试系统各部分管理和配置,例如组件添加和删除等功能,使得用户可以根据实际需要对测试系统各部分进行修改,降低了系统维护和更新成本;系统运行模块包括系统运行需要的各种工具,例如XML文档解析器等,系统服务结构如图3所示。
图3 系统服务结构图
2.3.2.2系统描述文档设计
系统描述文档采用XML格式描述测试系统实现各项功能所需的信息,配合相应的描述文档解析器,使得系统信息能够高效规范的存储和表达,便于系统对信息的加载和调用,提高了系统运行效率[7]。
SAD软件装配描述文档:描述应用组件的装配和部署信息。
SCD软件组件描述文档:描述组件的接口信息。
SPD软件包描述文档:描述组件信息。
DCD设备和服务配置描述文档:描述设备和服务的配置信息。
PRF组件属性描述文档:描述组件、设备和服务的属性。
DMD域管理器配置描述文档:描述DomainManager和自定义核心框架的配置信息。
图4以对G.SHDSL接口的测试为例,讲述本文指控装备通信接口可重构测试系统的测试功能实现流程。
图4 G.SHDSL接口测试流程图
由图4可知,本系统测试功能的由自定义中间件和自定义核心框架配合实现。DomainManager根据中间件注册文件找到目标应用的对象引用,自定义中间件解析对象引用和相关系统描述文档,并生成初始调用请求;IDL桩和客户端ORB接口对调用请求进行封装和编码,并由中间件ORB定位对象应用后发送通过自定义ORB核心发送到服务端;服务端ORB接口对GIOP格式的请求消息解码后发送给RooTPOA,RooTPOA查找其内部的活跃对象映射表并激活对象的目标伺服;IDL框架将GIOP消息解封,并传送到测试应用,然后测试应用开始实现测试功能。
本文通过深入研究小型化SCA技术,设计出了满足指控装备通信接口可重构测试实际需求的自定义核心框架和自定义中间件,完成了可在通用硬件平台上实现的指控装备通信接口可重构测试系统软件框架。由典型测试流程可知,本测试系统软件框架屏蔽了测试功能的具体实现细节,允许用户在通用的硬件平台上通过调用不同应用组件和更改系统配置实现对多种通信接口的可重构测试,大大增强了系统的灵活性和扩展性,提高了系统软硬件的可重用性,有效地解决了传统通信接口测试系统功能单一、维护更新成本高的问题,并为其他领域的可重构测试系统设计提供参考。
[1]Joint Program Executive Office (JPEO) Joint Tactical Radio System (JTRS). Sortware Communications Architecture Specification. Version2.2.2[S]. 2006.
[2]赵亮亮, 肖明清, 程进军,等. COBRA/T——美军通用自动测试系统的新进展[J]. 计算机测量与控制, 2013, 21(6):1408-1411.
[3]Object Management Group. Common Object Request Broker Architecture (CORBA) for Embedded Specification[S]. 2008.
[4]唐麒. 小型化软件通信体系结构的研究与实现[D]. 长沙:国防科学技术大学, 2011.
[5]彭雷. 基于CORBA/e的嵌入式实时中间件的设计与实现[D]. 成都:电子科技大学, 2010.
[6]赵秋明, 林志堂, 杨莹莹,等. 基于SCA的小型化核心框架研究[J]. 计算机测量与控制, 2010, 18(5):1145-1147.
[7]房莉, 陈湘平, 伍良坤. 基于构件的接口测试系统软件框架研究[J]. 计算机测量与控制, 2011, 19(6):1493-1497.
[8]常济菘. 基于SCA的可移植FPGA波形结构及组件接口设计[D]. 长沙:国防科学技术大学, 2009.
Design of Software Framework of Command and Control System Communication Interface Reconfigurable Test System
Yuan Yang1,Tan Yuehui1,Sun Huixian1,Shen Ruoxi2,Wang Xiaobo1
(1. Department of Information Engineering, Ordnance Engineering College, Shijiazhuang050003, China;2. General Equipment Department of Chongqing army of Kunming Area, Kunming650000, China)
There are various communication interfaces on the Command and Control System with different test requirements. Traditional test systems mostly are developed only for a kind of specific device and interfaces. Aiming at the above question, this paper analyzes and summarizes the characteristics and requirements of interface test, with reaching the miniaturization of SCA designs the custom middleware and custom core framework and completes the software framework of the Command and Control System communication interface reconfigurable test system. As the system flow diagram shown, users only by changing the application components and system configuration can achieve testing multiple interfaces, which enhances the universality and flexibility of the system, improves the reusability of software.
the miniaturization of SCA; reconfigurable communication interface test; custom core framework; custom middleware
2015-06-26;
2015-09-07。
袁扬(1991-),男,河北石家庄人,硕士研究生,主要从事指挥信息系统测试诊断技术方向的研究。
1671-4598(2016)01-0153-03
10.16526/j.cnki.11-4762/tp.2016.01.042
TP331.5
A