岳晓东
【关键词】串行总线 故障注入 测试 分析
1 引言
目前,串行总线在工业控制及导弹武器系统中应用极为广泛,针对系统级总线的挂接设备多,总线长度长,使用环境复杂、恶劣,故障检测、定位复杂的特点,本文提出了一种通过故障注入的方法测试、分析总线上各种问题的系统设计思路。
故障注入是一种可靠性验证技术,通过受控实验向系统中刻意引入故障,并观察系统中存在故障时的行为。故障类型分为三个层次:物理层故障、电气层故障以及协议层故障。
物理层故障模式包括通断控制、短路控制、串行阻抗控制、并行阻抗控制,用以模拟总线上会出现的各种线路问题;电气层故障模式包括输出幅度调节、占空比调节、上升下降沿调节、信号延迟等项来模拟测试设备输出异常信号的情况;协议层故障模式根据不同的总线主要有校验错、数据长度错等。
2 系统规划
本文提出的测试系统采用模塊化设计思想,主要由软件协议生成单元、输出控制单元及总线接口匹配单元三个部分组成。
软件协议生产单元完成所测试总线协议生产及故障注入需求,由软件实现,系统使用更加灵活。主机通过软件下发测试命令并下传到输出控制单元,控制单元解析命令,执行故障注入或数据采集。
输出控制单元用于故障注入数据的输出控制及数据的回采工作,输出控制单元采用FPGA实现,确保实时完成数据输出控制和采集,同时因采用FPGA设计使输出控制也具备一定的灵活性。
总线接口匹配单元用于不同的总线接口匹配,使得系统可以灵活的匹配不同的串行总线及总线负载。
3 故障注入实现思路及实现实例
3.1 故障注入实现思路
故障注入系统使用高速DA转换器输出总线信号;同时使用高速AD对总线信号进行采样;通过控制接口单元中继电器通断状态,改变接口连接以匹配不同的阻容网络,完成总线电气测试。使用该模式可以通过软件控制完成不同的继电器动作,组成不同的测试结构,完成各项测试,总线接口单元中设计有电阻和电容网络,可以完成总线负载测试。图1是故障测试系统框图。
本测试系统使用130M的高速AD转换器实时采集总线的电平信息,并将采集的数据上传至上位机。上位机通过数据恢复软件恢复出总线波形,就可以测出总线电压的峰峰值、总线占空比、过零点稳定度等信息。然后,根据故障注入需求,调整FPGA输出给运放的放大系数,使输出信号的幅度按需求比例放大或缩小,完成电压幅度的调节;也可通过FPGA控制给DA转换器输出数据的时间,控制信号延时,或者也可按照需求在FPGA中控制信号高、低电平的信号宽度,调节输出信号的占空比。比如在一个数据周期内输出55%的高输出,输出45%的低输出,即可控制占空比为55%。
3.2 故障注入实例
下面以1553B总线故障注入及测试来说明系统的设计。
例如正常总线上的特性阻抗为75欧姆左右(偏差10%),如果测得阻抗过大或者过小,则说明总线上的耦合器或者短截线存在故障。因此通过改变继电器的连接关系来适配不同的阻容网络,改变总线的特性阻抗,模拟总线上的线路故障。改变总线上特性阻抗后,在总线上波形的峰峰值Vpp就会有所改变,如果测试测得Vpp偏小并超过正常衰减时,说明总线上存在短路情况。
也可以通过改变输出信号尾部的拖尾电压,模拟注入命令字出错的故障现象。如果尾部拖尾电压过大,则会使BC发出的命令字波形不对称,从而导致RT无法正确识别。
以上实例说明,串行总线上物理层、电气层、协议层均可以通过故障注入的方式,快速分析、模拟总线上存在的故障。
4 结束语
本文针对通用串行总线提出了一种基于故障注入方式测试系统的实现方法。协议控制软件通过FPGA控制输出不同特征的信号,匹配相应的总线接口单元,就可完成不同串行总线的测试及故障注入,使用灵活方便,具有较好的实用价值。
参考文献
[1]刘大川.基于故障注入的电路测试性仿真分析[J].河南科技,2015.
[2]曾宪炼,马捷中,任向隆,何世强.基于VHDL的故障注入技术[J].计算机工程,2010.
[3]中国测控网[Z].1 553B总线控制器有效性测试中故障注入技术研究,2006.