侯志林邹 毅陈 飞陆祖亮
(1.信号盲处理国家级重点实验室,成都 610041;2.成都前锋电子仪器有限责任公司,成都 611731)
无线电测量用接收机异地协同工作时需要获取时统设备提供的授时基准,接收机时间戳一旦错误将导致接收数据出现时间差错而影响接收数据的有效性。 目前,在接收机的研制生产以及设备验收中对该类产品的授时接口测试一般采用直接接入授时系统,通过检查接收机是否能实现与时统设备的同步来验证接收机的授时接口是否符合。 经过长期的应用,由于较短时间的功能性测试无法验证接收机授时接口容错性和工作稳定性,直接接入授时系统的测试方法检测不到接收机产品在长时间应用背景下可能存在时间戳上的漏秒、跳秒、授时信号异常控制等隐蔽性缺陷,严重影响了产品的实际应用效果。
考虑到接收机授时接口测试的完备性,本文针对接收机产品在长时间应用背景下存在的隐蔽性质量缺陷,研究提出了一种基于模拟场景的接收机授时接口测试方法,通过设置特定授时信号序列对被测接收机进行激励或响应测试,实现了接收机在授时信号的同步能力、授时信号抖动的处理能力、授时信号异常控制等方面的全方位测试。
接收机授时接口主要由授时信号接收处理和数据时间标记两部分功能组成,如图1所示。 其中授时信号接收处理根据其授时机制可分为硬件授时和软件授时两类,数据时间标记是基于当前设备时刻对接收数据包打上时间戳,实现系统数据时间标记。
图1 接收机授时接口组成图Fig.1 The composition of receiver timing interface
硬件授时原理如图2所示,接收机接收授时系统发出的时码信号和秒脉冲,由秒脉冲驯服本地锁相环实现本地时钟与全局秒同步,同时将本地频率基准统一到全局频率基准;本地基准频率信号通过计数器获取对应采样时钟的准确时刻信息;最后将当前准确时刻信息附加到采集输出数据包中,即为输出数据打时间戳。
图2 接收机硬件授时接口框图Fig.2 Block diagram of receiver hardware timing interface
硬件授时具有固定的线路时延,授时精度可达到微秒甚至纳秒级。 目前接收机硬件时码主要是采用IRIG-B 时间码,国军标定义了等效时间码标准。
信息系统对时间戳的精度需求在秒以下,要求较低,因此软件系统一般采用网络时间协议或简单网络时间协议(NTP/SNTP)进行软件授时,接收机一般也支持NTP/SNTP 授时,用于为接收机提供年月日精度的时刻同步,而硬件时码一般不包含年度信息。
接收机维护一个本地时刻计数器,采用与采集卡时钟同步的方式进行计数,同时这一计数器由硬件电路控制实现与输入秒脉冲或时码完全对齐。在数据采集时,接收机将采集时刻对应的时码以及对应计数器值直接写入数据包的时间戳进行记录。
接收机授时接口测试系统原理如图3所示,通过专用的程控IRIG-B 时间码发生器输出特定IRIG-B 时间码序列给接收机授时接口,接收机输出含时间戳的数据,通过提取该数据的时间戳与设置的特定时间戳比对实现测试。
图3 接收机授时接口测试原理图Fig.3 Working principle of the receiver timing interface
程控IRIG-B 时间码发生器工作原理如图4所示,由嵌入式控制器、策略控制器、时刻计数器以及一个标准时码发生器组成。 嵌入式控制器接收网络控制指令,设置策略控制器生成时刻控制策略,完成时刻计数器最新时刻参数的设置;策略控制器按设置的运算策略控制时刻计数器的工作模式,以秒为单位实时更新时码发生器的当前时间,最后由时码发生器输出时码到被测接收机,实现各种测试场景所需要的激励时码信号序列。
图4 IRIG-B 码发生器工作原理图Fig.4 Working principle of IRIG-B generator
在某系列接收机的实际应用过程中,出现数据时间戳乱序、长期工作中时间戳跳变、接收机控制异常或死机等偶发现象,怀疑存在接收机对授时设备的瞬时异常数据无法处理或接收机长期工作中内部授时机制出现紊乱的可能性。 通过时码异常注入或接收机长期工作场景对接收机进行模拟测试以实现快速测试和故障重现。
时码异常跳变场景用于测试接收机对时码瞬时异常跳变的响应情况,研究是否存在时码瞬时跳动、时码停止更新、时码格式错误等时码异常场景导致接收机输出数据时刻乱序,甚至接收机出现控制异常或死机情况。
时码异常跳变场景测试步骤:
1)控制IRIG-B 时间码发生器正常输出时码序列,检查接收机输出数据时间戳,验证接收机授时接口工作正常;
2)控制IRIG-B 时间码发生器输出一个异常跳变信号,并在下一秒立即跳回,期间持续采集接收机输出的数据;
3)由程序分析接收机输出数据序列,检查数据时间戳受授时码异常影响情况并统计输出测试结果;
4)上述测试过程中如果出现接收机数据输出停止或停止数据刷新,停止测试并上报接收机异常状态。
5)在上述步骤2)测试时,控制IRIG-B 时间码发生器将时码异常设置调整为停止更新时码、输出错误格式时码等,即可实现时码停止更新和时码格式错误场景情况下的测试。
长期授时测试场景用于测试接收机授时接口长期工作的稳定性,检查是否存在长时间工作后接收机输出数据时刻乱序甚至接收机出现控制异常或死机情况。
长期授时测试场景测试步骤:
1)控制IRIG-B 时间码正常输出时码序列,检查接收机输出数据时间戳,验证接收机授时接口工作正常;
2)持续测量接收机输出数据的时间戳,并监测接收机工作状态;
3)同步由程序分析接收机输出数据序列,检查数据时间戳有无异常情况并统计输出测试结果;
4)上述测试过程中如果出现接收机数据输出停止或停止数据刷新,停止测试并上报接收机异常状态。
由于接收机授时接口状态异常为小概率事件,接收机接口测试需要长时间自动化执行测试场景用例。 这种工作模式无法由传统的单一流程同步测试系统执行。
基于场景的多流程异步测试系统可实现长期的用例测试,测试系统工作原理如图5所示。 设计通过Xml 格式的测试场景配置文件定义多种测试场景,系统运行时由定时器或设备事件触发执行场景测试工作流。
图5 测试系统工作原理图Fig.5 Working principle of the test system
以数据长时间戳测试场景为例,测试场景以Xml 格式的场景配置文件进行描述,测试场景的测试任务异步执行由场景文件中的工作流配置环节来描述。 数据长期时间戳测试场景的工作流由初始化流(Init)、时差测试工作流(CheckTime)以及退出处理工作流(Exit)组成。
初始化工作流执行接收机申请并获取测试计算机本地时间与接收机时间的系统时差,用于修正后期时差判决的误差。 具体初始化工作流代码如下所示:
时差测试工作流以两秒为周期定时检测本地系统与接收机数据时间戳的时差,执行时差判断并统计测试异常情况。 具体时差测试工作流代码如下所示:
采用该测试系统实际开展某系列接收机授时接口测试,先后复现了接收机数据时间戳乱序、长期工作中时间戳跳变以及接收机授时信号控制异常等直接接入授时系统测试方法难以发现的问题。通过深入研究现场应用的异常现象并扩展场景测试用例,可进一步拓展装备接口测试应用空间,提高对装备应用改进的支撑力度。
装备在实际使用环境下出现实验室条件下难以出现的异常故障是装备应用中的常见问题。这类异常出现概率小,故障现象复现和捕获较为困难,是装备测试评估和故障归零等工作中较为麻烦的问题。 本文介绍的接收机授时接口测试方法是通过场景文件描述构造接近装备实际应用场景的测试环境,并可通过长期测试自动捕获装备的异常状态,是一种极具潜力的关于装备质量稳定性的新型测试方法。
场景测试的故障捕获一方面依赖场景描述的准确性,另一方面也受实际执行测试的硬件设备条件限制,特定测试场景的构造很多时候需要定制化设备实现特殊的信号环境,本次应用的授时接口测试就依赖于为模拟时码序列定制开发了程控IRIG-B 时间码发生器。 由于软件定义无线电、FPGA等技术的发展已大大降低了定制开发硬件的门槛,相信未来可发展更多可重构配置化测试设备以实现更加复杂的场景测试需求。