应答机测试系统说明书

2024-05-10

应答机测试系统说明书(共2篇)

应答机测试系统说明书 篇1

星载测控应答机中嵌套环路仿真与优化

建立了星载测控应答机中嵌套环路的.仿真模型,对测控应答机中嵌套锁相环路进行了分析和优化.分析发现,存在一个最佳环路带宽,使接收机锁定时间最快;嵌套结构与单环结构相比,可以获得更优的噪声特性.这些结果已用于微小型化星载测控应答机设计中,并得到实验的验证.本文建立的仿真模型可用于测控应答机的设计、调试过程,以寻求最佳设计参数、提高性能指标.

作 者:孙文峰 郁发新 金仲和 王春辉 王松 王跃林 Sun Wenfeng Yu Faxin Jin Zhonghe Wang Chunhui Wang Song Wang Yuelin 作者单位:浙江大学空间通信研究中心,杭州,310027刊 名:航天控制 ISTIC PKU英文刊名:AEROSPACE CONTROL年,卷(期):24(3)分类号:V4关键词:测控应答机 锁定时间 噪声 仿真

应答机测试系统说明书 篇2

随着客户对软件质量要求的不断提高, 软件测试技术与测试方法的研究受到了越来越多的关注。测试可以划分为静态测试和动态测试两部分, 包括文档和代码的审查、测试用例的设计和运行、错误报告的生成等。从过程上划分, 软件测试一般包括单元测试、集成测试、系统测试和验收测试阶段。测试也可以划分为功能性测试和结构性测试。功能性测试使用规格说明, 结构性测试依靠程序[1]。在软件测试工作中, 代码覆盖测试是测试的底线, 特别是在嵌入式软件的测试中显得更为重要, 代码覆盖技术明显提高了软件的可靠性, 保证了软件的质量。

1 DD-路径与程序复杂度

决策到决策路径 (DD-路径) , 也称为路径链, 链是起始节点和终止节点不同的路径, DD-路径是DD-路径图中的一条链[1], DD-路径可分为下列5种:

(1) 情况1:由一个节点组成, 内度=0, 内度是该节点作为终止节点的不同边的条数。

(2) 情况2:由一个节点组成, 外度=0, 外度是该节点作为开始节点的不同边的条数。

(3) 情况3:由一个节点组成, 内度>=2, 或外度>=2。

(4) 情况4:由一个节点组成, 内度=1并且外度=1。

(5) 情况5:长度>=1的最大链。

程序从一个入口或一个判断点开始, 直到一个模块的出口或者判断结束, 构成了一条DD-路径。例如, 在一个典型的IF-THEN-ELSE-ENDIF结构中, 有两条路径, 通常称为THEN路径和ELSE路径。数学和图论表明, 一个结构化程序与平面的图是等价的, 而非结构化程序的图是非平面的。测试人员对软件的逻辑复杂性关注了很长的时间, 1989年, Tomas McCabe and Charles Butler基于DD-路径定义了程序复杂度V (G) 来研究软件逻辑复杂性, 它是程序逻辑复杂度的一个测量指标[2], 其计算方法有下列三种方式。

(1) 计算一个结构化程序的平面流程图的区域个数;

(2) V (G) =e-n+2, 其中e为流程图中边的条数, n是节点数;

(3) 构造程序图的强连通图, 计算公式修改为:V (G) =e-n+1。强连通图是3-连接的有向图, 即图中的任意两个节点之间有一条路径, 对于单入口单出口的结构, 最简单的做法是从出口节点到入口节点增加一有向边, 构造3-连接有向图。

图1是DD-路径分析程序复杂度, 该图将平面划分为5个区域, 标号为1到5, 若使用方法1计算循环复杂度, 由于平面的区域划分为5个, 因此V (G) =5;若使用方法2计算复杂度, V (G) =12-9+2=5;若使用方法3计算复杂度, 先构造强连通图, 从最后的节点到开始节点添加一条有向边, 这样, 边的数量增加为13, 复杂度V (G) =13-9+1=5。

对一个测试程序来说, 程序复杂性与基路径之间存在内在的联系, 基路径可以用来研究程序的复杂性。V (G) 是为实现完全覆盖所需要的最少独立路径数, V (G) 越大, 基路径就越多, 程序越复杂。因此, 我们设计程序时, 应追求尽可能小的程序基路径数, 以降低程序复杂度。

2 基路径覆盖测试技术

DD-路径能够非常精确地描述测试覆盖。表1列出的指标是被广泛接受的结构性测试指标, 指标主要来自E.F.Miller的研究工作。基路径测试给出了必须进行的测试下限。其中, C1指标是覆盖测试最低可接受级别[1,3], 它实现了DD-路径覆盖, C1P实现了判断的所有分支覆盖。在RTCA/DO-178B规定的适航软件的LEVEL B级别就要求软件达到C1P指标。

在工程项目的实施中, 结构性测试覆盖指标有两种使用方式:

(1) 作为一种强制执行的标准。例如, 所有单元都要达到DD-路径覆盖, 即指标C1。

(2) 或作为一种机制, 有选择性进行测试。例如, 对具有复杂逻辑的模块选择多条件覆盖, 对大量迭代处理的模块, 采用循环覆盖指标来测试。

下面通过一个例子, 来分析基于DD-路径的覆盖测试。在图2中, 基路径有6条, 分别是P1、P2、P3、P4、P5和P6。

其中:

(1) P1:A-B-C-F-G

(2) P2:A-B-D-F-G

(3) P3:A-B-E-F-G

(4) P4:A-B-E-D-F-G

(5) P5:A-B-C-D-F-G

(6) P6:A-B-D-F-G-B-D-F-G

为了实现C0覆盖指标, 测试必须覆盖所有语句, 因此测试的基路径有{P1, P2, P3}或{P1, P4}或{P3, P5}。为了实现C1覆盖指标, 测试必须覆盖所有DD-路径, 测试的基路径有{P1, P2, P3, P4, P5}。为了实现C2覆盖指标, 应实现C1+循环覆盖, 测试的基路径有{P1, P2, P3, P4, P5, P6}。

3 代码覆盖测试技术TRACE

TRACE技术是在嵌入式软件设计时, 在顺序、选择和循环三种基本代码结构中, 增加冗余设计TRACE, 利用TRACE可以检测软件执行过程中代码的覆盖程度, 检查应用软件所能达到的覆盖级别。设计人员在任何时候输入相应数据, 并从设备对应的地址单元中取到TRACE数据, 分析软件的执行情况, 如果取到的TRACE数据与软件运行的结构相吻合, 则程序正确, 如果取不到TRACE数据或数据相反, 则程序运行错误[4]。

TRACE的具体设计方法是:对于顺序语句代码, 在代码段结尾增加TRACE语句;对于循环语句代码, 在循环体的结尾加入TRACE语句;对选择或CASE语句代码, 在所有分支中加入TRACE语句。这里应特别强调的是不管条件的真和假有无代码, 在真假两个分支中都应加入TRACE语句。TRACE语句有2个参数, 一个是模块名, 一个是顺序号, 例如TRACE (A, i) , 表示A模块中的第i个覆盖点, 例如, 条件分支的TRACE覆盖采用如下设计。

4 TRACE技术在MODE-S应答机中的应用

4.1 MODE-S应答机

MODE-S应答机项目是中航总615研究所与Honeywell公司合作开发的数据链4级S模式空中交通空管设备, 属于飞行器通讯网ATN设备之一 (论文第一作者是原中航总上海615所软件工程师, 全程参与了该项目的研制工作) , 该设备在各国民用飞机已经装机2000多套。应答机采用双天线, 与高度源、TCAS、控制器、空中数据链处理器等设备连接, 数据连接总线是ARINC-429和ARINC-575, 另有部分离散量和模拟量数据接口, 应答机提供Air Data Loader/Portable Data Loader接口与地面测试设备连接。图3是应答机与其他空管设备的连接结构图[5]。

S模式应答机用于飞机与地面二次雷达的数据及时交换与通信, 飞机与其他飞机的TCAS II设备的通信, 保证TCAS II设备的空中防撞系统的功能, 实施空中交通管制。S模式应答机主要应答有:应答地面二次雷达的定向MODE-S询问, 询问格式有UF4、UF5、UF20和UF21, 应答格式DF4、DF5、DF20和DF21;广播询问UF11, 应答格式DF11;ATCRBS询问, A/C模式应答飞行代码和飞行高度;应答空中TCAS II设备的监视询问, 询问格式UF0和UF16, 应答格式DF0和DF16。

MODE-S应答机采用了指令级并行处理的Intel80960处理器, 软件使用C语言和汇编语言编写。软件分为启动软件和操作软件两部分。其中, 启动软件Boot Software是设备出厂时已经固化了的软件, 主要完成设备上电后系统的启动和操作软件的外场升级, 启动软件执行后应答机软件自动转入操作软件;操作软件Operation Software是设备工作时的功能性软件, 完成应答机的UF/DF和ATCRBS应答等功能, 通过RS-232接口可以升级操作软件。

在软件设计中使用了CRC技术来提高软件运行的可靠性, 生成设备的操作软件时, 使用CRC技术生成一个32位的Checksum数据, 每当操作软件使用PC加载到设备时, Checksum数据随应用程序一起加载到设备中。当设备开机运行时, 加电自检 (POST) , 启动软件使用CRC技术重新计算操作软件的Checksum数据, 在设备正常运行过程中, 操作软件将定时使用监控程序计算Checksum数据, 系统根据计算出的CRC值与原生成的CRC值比较, 检测程序的正确性。系统应用了监控技术和容错设计, 周期性地监控软件的运行过程, 以正确地发现故障并提高系统的可靠性。系统考虑了数据传输交换时瞬间出错情况, 系统能屏蔽此类错误, 通过错误监控程序, 在程序中增加容错资源程序, 定时检测程序相应的数据和参数[6]。

4.2 TRACE技术的应用

在MODE-S应答机项目中, 为了达到适航软件标准RTCA/DO-178B的级别LEVEL-B要求[7], 软件设计与测试采用了TRACE技术。

(1) TRACE的定义

设计时, 我们在trace.h文件中完成TRACE的定义。

(2) 初始化

TRACE的初始化工作在trace.c和global.c两个文件中完成。

trace* const trace_pointer = &trace_tags;

trace trace_tag2;

(3) TRACE应用

为达到适航软件满足RTCA/DO-178B的级别B的要求, 应用TRACE技术实施DD-路径覆盖。TRACE语句有2个参数, 一个是模块名, 一个是顺序号;例如TRACE (A, i) , 表示A模块中的第i个覆盖点。在定义TRACE时, 每个模块的TRACE分配了连续的地址空间, 每个TRACE顺序号对应了相应模块地址空间的一位 (1 bit) 。测试结果的分析只需要检查对应的地址空间的值。

在MODE-S应答机操作软件的高度处理模块中, 处理arinc_575高度的程序片段如下, 其中TRACE的第一个参数标明了高度模块, 第二个参数是arinc_575高度处理代码的选择分支顺序号。

5 结束语

DD-路径可以用于结构覆盖测试和程序复杂度分析, 覆盖测试是软件测试的底线, 代码覆盖技术的执行能保证应用软件达到相应的级别, Mode-S应答机项目中所采用的TRACE技术是基于DD-路径的代码覆盖测试技术, 在Honeywell公司与中航总615所的应答机合作项目中应用TRACE技术, 软件可靠性得到了保证, TRACE技术保证了应答机软件达到了RTCA适航软件Level B的要求。

摘要:代码覆盖测试技术可用于结构覆盖测试和程序复杂度分析, 代码覆盖测试技术可用于测试用例设计, 提高软件测试效率, 指导编写高质量的程序代码, 代码覆盖是软件测试的底线。代码覆盖测试技术及方法的研究, 为软件覆盖测试提供了理论依据。在Mode-S应答机项目中应用TRACE覆盖测试技术, 确保了产品满足适航软件标准RTCA/DO-178BLEVELB的要求。

关键词:代码覆盖,测试技术,DD-路径,Mode-S应答机,程序复杂度

参考文献

[1]Paul C Jorgensen.Software Testing:ACraftsman’s Approach[M].Sec-ond edition.CRC Press, 2002.

[2]Robert Culbertson, Chris Brown, Gary Cobb.RAPID TESTING[M].post&telecom press, 2002.

[3]柳纯录, 黄子河, 陈渌萍.软件评测师教程[M].清华大学出版社, 2005.

[4]Bart Broekman, Edwin Notenboom.嵌入式软件测试[M].张君施, 译.电子工业出版社, 2004.

[5]浦云明.软件设计引入容错技术及应用, 计算机应用与软件[J].2003, 20 (5) :60-62.

[6]赵会群.通信软件测试技术基础[M].人民邮电出版社, 2004.

上一篇:食品应急处置方案下一篇:超市中秋节营销方案