1、一种 AFDX 交换机的高效检测方法 何向栋 白杨 田园 贾世伟 中国航空工业集团公司西安航空计算技术研究所 摘 要: 航空电子全双工交换以太网 (AFDX) 是为航电信息系统之间进行数据通信而专门制定的协议标准, 具有确定性、双余度和可靠性等优点, 已成功应用于新一代航电网络。分析了 ARINC 664 Part7 中交换机章节及对应的通信架构等关键技术特点, 提出一种高效率适合 AFDX 交换机的通信测试方法。通过测试与验证, 证明该方法对通信功能的测试正确且效率较高。关键词: AFDX; 交换机; 高效率; 通信测试; 作者简介:何向栋 (1985-) , 通信作者, 男, 硕士, 工程
2、师, 主要研究方向:机载网络。E-mail:。作者简介:白杨 (1987-) , 男, 硕士, 工程师, 主要研究方向:机载网络。作者简介:田园 (1985-) , 男, 硕士, 工程师, 主要研究方向:机载网络。收稿日期:2017-06-28基金:国家重点基金项目 (31511020102) The method of AFDX switch high efficient testingHe Xiangdong Bai Yang Tian Yuan Jia Shiwei AVIC Aeronautical Computing Technique Research Institute; Abs
3、tract: Avionics Full Duplex Switched Ethernet ( AFDX) , an avionics specified Ethernet communication protocol standard, is the new generation aircraft data network, with the feature of strong real-time, redundant and high reliability and so on. By analyzing the characteristics of communication struc
4、ture in the ARINC 664 Part7, a highly efficient communication test method suitable for AFDX switches is proposed.Through testing and verification, it is proved that the method is correct and efficient in communication function testing.Keyword: AFDX; switch; high efficiency; communication testing; Re
5、ceived: 2017-06-280 引言航空电子全双工交换以太网 (AFDX) 1基于 IEEE802.3 标准, 结合航空电子系统特殊需求对该协议的部分 MAC 进行适应性修改, 使其成为具有高速和确定性的网络, 形成航空以太网数据网络标准 ARINC 664, 其中第 7 部分重点对 AFDX网络的各项内容进行详述, 并且已成功应用到空客 A380、波音 787 和 A400M 等大型飞机的航电系统中。AFDX 网络作为航空数据通信的确定性专用网络, 顺利成为航电系统中通信“骨架”, 在大中型运输机中有很强的适应性, 相比于传统机载数据总线, 其具备速率高、质量小、稳定可靠、技术成熟、
6、成本低等优势, 具有很好的应用前景。随着 AFDX 应用规模的不断扩大及外场维修等的特殊要求, 本文提出了一种针对AFDX 交换机物理端口的高效率测试方法。1 AFDX 交换机功能AFDX 交换机实现的功能有:帧交换、内嵌端系统、帧过滤、警管、配置表和监控功能, 如图 1 所示。过滤功能:对进入交换机内部的帧进行完整性检查, 过滤内容包括:CRC 有效性;目的 MAC 地址有效性;VL 与输入端口是否匹配;帧长为字节的整数倍;帧长小于等于配置表中定义的最大帧长;帧长大于等于配置表中定义的最小帧长。图 1 AFDX 交换机功能示意图 下载原图警管功能:采用基于令牌桶算法的流量管制策略对进入交换机
7、帧进行丢弃判定, 具体算法见参考文献2。配置表功能:交换机虚拟链路 VL 的端口配置及通信规则配置。端系统功能:实现交换机信息配置、网络管理和数据加卸载等功能, 但不支持规范定义的双余度功能。帧交换功能:将输入的数据帧根据配置表转发至输出端口。捕获功能:通过配置映射将交换机任意物理端口或者虚拟链路 VL 数据实时采集并输出。交换机实现技术可参考文献3, 文献中详细分析了 AFDX 交换功能机理和工程化实现。2 AFDX 交换机设计及现有测试方法2.1 交换机设计基于 ARINC664P7 协议规范内容, AFDX 交换机设计框图如图 2 所示。图 2 交换机设计框图 下载原图设计主要由两大部分
8、组成, 分别为:处理器控制电路和交换控制电路。处理器控制电路包括:处理器, 负责处理内嵌端系统、协议栈、网络管理等功能;SDRAM, 负责运行时的程序和数据存放;Flash, 负责 Boot、操作系统、应用和测试程序的固化存放;CPLD, 负责上电启动控制、复位管理、控制/地址解析等功能。交换机控制电路包括:DPRAM (tx) , 负责内嵌端系统发送帧数据缓存;DPRAM (rx) , 负责内嵌端系统接收帧数据缓存;SSRAM, 负责各个端口间帧转发缓存;PHY 接口, 交换机物理层接口电路, 通过 MII 接口与 FPGA 通信;FPGA 电路, 负责实现过滤、警管、帧存储控制转发、配置表
9、、捕获等功能。AFDX 交换机测试即为对上述电路或资源进行测试检查, 并测试 AFDX 通信功能。2.2 现有测试方法现有 AFDX 交换机的测试方法主要采用集成多端口的专用测试设备进行交换机功能/性能测试4-5, 如图 3 所示。图 3 现有交换机测试示意图 下载原图图 3 中模拟端系统 A (或模拟端系统 B) 可以通过专门编写特定测试用例来检验被测交换机的路由及转发等功能, 并通过模拟端系统 B (或模拟端系统 A) 来检验判定转发帧是否正确。为模拟大量帧数据经交换机的转发功能, 需要专用AFDX 网络测试设备模拟多个 AFDX 通信终端接口, 并编排多种网络应用, 包括:不同 BAG
10、带宽, 不同帧长度, 不同转发端口等综合测试设计来验证交换机在复杂通信环境下的功能/性能, 同时也对专用网络测试设备提出了较高的要求。现有测试方法有一个共同特点:测试系统需要外部设备来产生帧激励源, 并判定结果。随着 AFDX 网络的成熟, 其功能/性能指标已完全能够满足设计需求, 并随着产品数量的增加而广泛应用, 而现有的测试方法需要大量外部测试节点作为激励等, 不利于后续产品检验和维护, 为提高 AFDX 交换机快速检测和产品排故诊断, 利用 AFDX 交换机内嵌端系统功能提出一种高效测试方法。3 高效率通信测试方法本测试结合 AFDX 交换机内嵌端系统功能和 IEEE802.3 全双工通
11、信等技术特点, 设计高效率通信测试方法。通信测试思路为:利用 AFDX 交换机内嵌端系统作为AFDX 交换机的测试激励和判定节点;利用 IEEE 802.3 的全双工特点, 设计自环通信电缆, 即线缆设计为:TX+与 RX+连接、TX-与 RX-连接。测试环境如图 4 所示。从图中看出该测试验证环境相比其他测试环境简化很多, 仅包括一台用于显示的工控机以及自环电缆。图 4 高效测试环境示意图 下载原图测试数据流如图 5 所示。依据图 5 的测试数据流可测试和验证交换机资源和功能, 如图 6 所示。根据图 5 和图 6 所示, 高效率通信测试流程为:流程 0:AFDX 交换机启动。上电启动, 通
12、过配置控制引导启动 Boot 和操作系统。此流程可验证资源:CPU、Flash、SDRAM、RS232、电源、时钟、复位、CPLD、PROM 等;验证功能:交换机基本启动功能。流程 1:启动测试程序。内嵌端系统启动高效率通信测试程序。此流程可验证资源:CPU、SDRAM、RS232、电源、时钟、CPLD 控制;验证功能:内嵌端系统功能。图 5 测试数据流示意图 下载原图图 6 测试数据流与相关资源及功能验证对应图 下载原图流程 2:测试帧组建。启动 TCP/IP 协议栈, 针对端口 X 配置对应测试帧信息, 并编写测试帧内容。此流程可验证资源:CPU、SDRAM;验证功能:内嵌端系统。流程 3
13、:内嵌端系统发送帧缓存。将测试帧放入 DPRAM (TX) 缓存, 并通知 FPGA控制。此流程可验证资源:CPU、SDRAM、DPRAM (TX) ;验证功能:内嵌端系统。流程 4:帧调度 1。FPGA 读取发送测试帧, 并将测试帧信号写入转发控制逻辑进行调度。此流程可验证资源:FPGA;验证功能:配置、交换。流程 5:存储转发。测试帧缓存。此流程可验证资源:SSRAM、FPGA;验证功能:交换。流程 6:帧调度 2。调度控制读取帧缓存, 并根据转发配置进行调度, 同时控制MAC 进入收发控制。测试帧经外部自环电缆, 再次进入 FPGA。此流程可验证资源:FPGA、SSRAM;验证功能:交换
14、。流程 7:收发控制。对测试帧进行收发控制, 并对帧内容进行解析和转发调度。此流程可验证资源:FPGA、PHY 等;验证功能:过滤、警管、配置、交换。流程 8:内嵌端系统接收帧缓存。经调度, FPGA 将帧写入 DPRAM (RX) 缓存。此流程可验证资源:FP-GA、DPRAM (RX) 等;验证功能:交换。流程 9:测试帧验证。内嵌端系统读取接收帧内容, 并依据发送帧进行内容核对判断。此流程可验证资源:CPU、DPRAM (RX) ;验证功能:内嵌端系统。流程 10:循环测试。对未检测物理端口进行循环通信测试。通过上述测试流程分析, 该测试方法可对交换机全部硬件资源和 AFDX 功能 (除
15、捕获功能) 进行验证测试。4 验证测试采用航空工业计算所货架产品 24 端口 AFDX 交换机作为被测试对象, 自制单端口测试电缆, 外部通过 RS232 接入工控机超级终端进行测试显示和交互。结合 AFDX 交换机特点, 设置测试项目如表 1 所示。表 1 测试项目 下载原表 通过上述测试用例检测, 得出此检测方法具有较高的通信测试效率。在实际应用中, 对上述测试程序进行产品驻留, 当有测试需求时, 只需一根自环测试电缆, 就可以快速判定交换机诊断状态, 对后期产品维护和诊断提供了简便而高效的方法。5 结论本文通过对 AFDX 交换机功能的理解和研究, 利用其内嵌端系统和 IEEE802.3
16、 全双工的技术特点, 提出了一种高效率的自环通信检测方法。经测试验证, 此测试方法具有简单、便捷、高效等特点, 方便测试人员快速诊断交换机通信故障, 提高测试效率。参考文献1ARINC 公司.ARINC 664, aircraft data networkS.2002. 2王建宇, 王世奎.AFDX 交换机管制功能测试方法的研究与设计J.测控技术, 2012, 31 (7) :82-84. 3王绮卉.AFDX 核心交换技术的研究与实现D.西安:安石油大学, 2010. 4吴海荣, 罗庆, 陈晓晨.AFDX 交换机测试分析系统J.飞机设计, 2014, 34 (3) :59-62. 5赵永库, 唐来胜, 李贞.AFDX 网络测试技术研究J.计算机测量与控制, 2012, 20 (4) :93-95.