APP下载

ARINC659总线测试系统设计

2021-03-22唐怀奎李珊珊

河南科技 2021年25期

唐怀奎 李珊珊

摘 要:ARINC659总线是一个具有总线传输时间确定性的多节点串行通信总线,已成为新机航空电子系统内部各模块之间的底板互联标准。为满足ARINC659总线上各模块的测试修理需求,通过ARINC659总线通信环境的设计与验证,完成ARINC659总线测试系统的设计研究。

关键词:ARINC659总线;测试修理;设计与验证

中图分类号:TP336 文献标识码:A 文章编号:1003-5168(2021)25-0016-05

Design of ARINC659 Bus Test System

TANG Huaikui LI Shanshan

(Wuhu Machinery Factory, Wuhu Anhui 241000)

Abstract: The ARINC659 bus  is  a  multi-node serial communication bus with definite bus transmission time, which has become the standard of interconnection between the modules in the avionics system of new aircraft. In order to meet the test and repair requirements of ARINC659 bus, the design and verification of ARINC659 bus communication environment are carried out.

Keywords: ARINC659 bus;test and repair;design and verification

随着新机航空电子系统综合化、模块化程度的日益提高,ARINC659总线作为模块互联的标准总线在航空电子系统大量应用。为测试机载产品内在各模块通信过程中ARINC659总线数据的完整性和可靠性[1],对其进行研究十分必要。本文通过ARINC659总线系统结构、各模块间总线数据的传输机制、各模块间总线数据的测试方法研究,完成ARINC659总线测试系统的设计研究,形成机载模块的ARINC659总线数据测试修理能力。

1 ARINC659总线测试系统设计

ARINC659总线测试系统硬件部分由底板和节点模块组成,先通过对总线数据传输的分析确定系统总体架构,再确定系统内每个节点模块的具体架构,最终设计出符合项目需求的总线仿真测试系统。

1.1 ARINC659总线测试系统结构确定

ARINC659总线数据传输包括基本消息传输和主、后备消息传输。

1.1.1 基本消息传输。基本消息的传输分为点对点传输和广播传输。基本消息用于各模块间(点到点)的通信或单模块到多模块的通信,且在窗口刚开始时就开始传输数据。点到点传输的数据流图如图1所示,广播传输的数据流图如图2所示。

1.1.2 主、后备消息传输。主、后备消息用于多个备用模块(不能超过4个)到单个或多模块的通信。由简单的仲裁机制进行数据传输,且只有当主LRM以及其他高优先级的后备LRM在命令表预先规定的时间期内保持不发送数据时,后备的LRM模块才开始向总线上发送数据。ARINC659总线只允许一个LRM模块发送数据。

为使ARINC总线仿真测试平台满足两种传输模式,系统设计由4个LRM模块构成,其中配备3个独立ARINC659总线接口模块,提供1个扩展总线接口。

1.2 ARINC659总线模块架构确定

ARINC659总线上的模块一般由核心处理器模块(主机)、ARINC659总线接口模块以及基板组成,模块功能框图如图3所示。核心处理器模块主要负责数据处理;ARINC659总线接口模块负责总线上的数据收发处理,每个节点的总线接口模块通过内部外设部件互连标准总线控制器实现与核心处理器主机接口的连接,从而完成同主机间的信息交换。

1.3 ARINC659总线测试系统确定

根据总线系统架构和模块架构,确定测试系统整体结构如图4所示。

2 ARINC659总线数据通信环境开发

2.1 研究节点模块应用层软件开发方法

总线接口模块的驱动与应用程序接口(Application Program Interface,API)软件包提供底层通信数据访问服务,为ARINC659总线通信的应用程序提供服务支持。ARINC659总线芯片要通过PCI总线完成与主机的通信,主机系统运行VxWorks嵌入式操作系统[2]。

应用层软件分为嵌入式端软件和主机端软件。嵌入式端软件通过以太网口接收主机接口用户数据报协议(User Datagram Protocol,UDP)包并予以响应;主机端软件通过以太网口接收UDP包并予以响应。

2.1.1 嵌入式端软件。嵌入式端软件运行于基于HKS289BRM芯片开发的VxWorks操作系统(版本5.5)上,包括处理软件和伺服软件两部分。处理软件用于完成处理主机控制命令、处理主机发送的数据、接收数据并上传至主机等工作;伺服软件用于和主机进行通信,内置数据缓冲池,包括接收缓冲和发送缓冲[3]。

嵌入式端软件开发接口主要包括初始化、数据接收、数据发送、中断使能以及中断禁止。

接口使用順序:①挂接中断服务程序;②初始化;③中断服务程序中进行数据接收/发送。

中断使能和禁止程序在中断服务程序中调用。中断服务程序中实现数据的接收/发送。应用软件对数据进行处理。

2.1.2 主机端软件。主机端软件运行于Windows操作系统中,包括数据输入/输出模块和数据收发模块两部分。数据输入/输出模块用于读取用户数据并发送至数据收发模块,同时从收发模块获取数据并输出(显示);数据收发模块用于通过以太网将用户数据发送至嵌入式端软件,同时从嵌入式端软件接收数据。

主机软件网络通信接口主要包括:读取主机心跳,主机端发送COMMUNICATEDATA_TEST数据包到中央处理器(Central Processing Unit,CPU),CPU会响应同样格式的数据包到主机;配置659,主机端发送COMMUNICATEDATA_CONFIG数据包到CPU,CPU配置完成后会响应同样格式但不包含配置数据的数据包到主机;发送659数据,主机端发送带有发送数据的COMMUNICATEDATA_SEND数据包到CPU,CPU会将数据包内数据写入发送缓冲区等待发送,然后响应同样格式但不包含发送数据的数据包到主机;接收659数据,主机端发送不包含接收数据的COMMUNICATEDATA_SEND数据包到CPU,如果CPU接收到数据包,CPU会响应同样格式但包含总线接收数据的数据包到主机;读取659状态,主机端发送不包含状态数据的COMMUNICATEDATA_STATE数据包到CPU,CPU读取659状态,然后响应同样格式但包含状态数据的数据包到主机。

2.2 研究ARINC659总线配置工具

ARINC659总线配置工具是开发采用ARINC659总线的综合模块化航空电子系统的支持软件,用于根据系统要求对系统内各节点间的通信和节点各任务进行配置和设置、自动生成总线命令表,从而建立系统综合框架。ARINC659背板总线配置工具软件具有项目管理、命令表管理、命令表生成、命令表仿真等功能,具体配置方法见《ARINC659命令表使用说明》。

3 ARINC659总线数据测试与验证

依据相关标准,结合总线修理实际,制订并实施ARINC659总线物理层和数据链路层测试方案,测试环境连接如图5所示。

3.1 物理层测试

协议中对物理层的定义主要包括信号线描述、底板总线介质和连接器机械要求,以及底板和总线收发器电气要求。总线接口和信号线如图6所示,包括双自检总线对和端接器。总线上每个模块中的4个收发器分别连接到4條独立的总线中的一条。每条总线有3条信号线,分别为D0、D1以及Ck。

被发送的数据以两位为单位进行划分,两位中的较低位在D0总线上发送,较高位在D1总线上发送。在消息间隙和同步脉冲期间没有数据被发送。收发器/总线接口描述定义了底板总线上的模块连接显示的所有信号和操作,包括逻辑层、同步操作、数据传输协议及错误情况响应等。

3.1.1 电源分配测试。①数据总线收发器电源输入线路。为数据总线收发器提供+3.3 V电压,每个收发器1条,共有4条(Ax_33 V、Ay_33 V、Bx_33 V和By_33 V)。该电压由各载板提供给收发器,信号标准值为+3.3 V±5%,测试结果如图7所示。②数据总线端接器电压线。为端接器提供+2.1 V电压,每条总线1条,共有4条(Ax_Vt、Ay_Vt、Bx_Vt和By_Vt)。该电压由底板提供给总线端接器,电压标准值为+2.1 V±0.1 V,测试结果如图8所示。

3.1.2 电气性能测试。①模块数据及时钟线直流测试。高电平输入电压:信号线上的输入电压为+1.62 V或者更高时,均被解释为逻辑“1”;与底板没有电气连接的信号线输入也被解释为逻辑“1”。低电平输入电压:向信号线上的输入电压为+1.47 V或是更低时,均被解释为逻辑“0”。测试结果如图9所示。②总线数据及时钟线直流测试。建立时间和保持时间:至少应为6 ns,测试结果如图10所示。时钟对称:底板上时钟信号的占空比应该在40%~60%,测试结果如图11所示。③总线编码测试。4条总线上发送的数据需要进行编码,数据编码规则如下:AxD0/1正常数据电平(总线上逻辑1为高电平);AyD0/1正常数据与{010101…}异或(每隔一位翻转);BxD0/1数据电平翻转(总线上逻辑1为低电平);ByD0/1正常数据与{101010…}异或(Ay线翻转)。测试结果如图12所示。

3.2 数据链路层测试

数据链路层分为介质访问控制(Medium Access Control,MAC)子层和逻辑链路控制(Logical Link Control,LLC)子层。介质访问协议基于在时间和空间上提供的TDPA协议,总线上的数据消息在预先确定的时间被传送。总线时间被划分为一系列的窗口,每一个窗口包含一个长度从32位到8 192位的消息或者一个重同步脉冲。表定义了每一个窗口的长度,以及哪个LRM在该窗口里进行发送、接收和无操作。总线传输时间表由恒定长度的周期帧组成,每个周期帧由多个独立的窗口组成,通过嵌入在表存储器中的协议层软件控制正常的消息传输。每一个消息的源地址和目的地址包含在表存储器中,而非通过总线传送。

总线支持模块到模块(点到点)传送,一个模块到一组模块(广播)通信,以及可选(备用)的一个模块到一组模块的通信,有基本消息和主、后备消息两种类型消息。基本消息用于单个源到单个或者多个目的的情况;主、后备消息用于有多个备用源和单个或多个目的的情况。主、后备的仲裁机制只允许主模块或后备模块之一独占访问总线,后备模块只有在主模块和优先级高于自身的后备模块在预先确定的时间周期内保持静默时才会获得总线控制权。

底板总线活动由交替的消息和消息间隙组成的窗口构成,如图13所示。每一个窗口占据LRM命令表中相应命令所规定的固定时间段。一个窗口可以包含一个数据消息、同步消息或空闲。

ARINC659协议数据链路层测试主要是测试被测设备输出的各种总线操作及其时序波形,以及对出错的总线时序波形的标识和处理是否符合ARINC659协议中的规定。测试过程中可使用示波器和逻辑分析仪监控总线上的波形,检查各种总线操作时序波形是否符合协议规定。通过总线故障注入电路在总线上注入各种总线错误,并通过总线分析仪、逻辑分析仪和示波器监控注入的故障是否有效,在注入有效的状态下,检查被测模块的执行情况。ARINC659总线最核心的功能是时间同步、数据传输和容错,因此主要对这些功能进行测试和验证。

基于定制的ARINC659仿真测试平台,将3个ARINC659模块插入机箱底板内,利用网口/串口控制3个模块间完成数据通信,并使用示波器或逻辑分析仪检测总线上信号质量,使用上位机软件监测发送/接收数据,测试结果如图14和图15所示。

4 结语

本文通过机载模块特性和典型ARINC659总线系统结构研究,设计了ARINC659总线仿真测试平台,实现了ARINC659总线通信仿真。在此基础上从物理层和数据链路层对ARINC659总线的测试进行分析和研究,形成适用于机载模块的ARINC659总线测试项目、测试方法和测试环境,为后续新机ARINC659底板总线上各机载模块的测试修理奠定技术基础。

参考文献:

[1]杨廷善.测控系统总线综述[J].测控技术,1999(5):35-37.

[2]彭友铭,肖子枫,郭勐,等.CPCI总线与VME总线桥接底板的研制[J].计算机工程,2006(24):247-250.

[3]张喜民,魏婷.ARINC 659背板数据总线应用研究[J].航空计算技术,2011(5):105-109.

3229501908222