基于HKS664ES的AFDX端系统设计*
宋孟华,刘雪梅,鲍成伟
【摘 要】AFDX 是为航空子系统之间的数据交换定义的协议标准。AFDX 端系统是AFDX 网络的重要组成部分,为航电子系统与AFDX网络之间提供信息收发的通道,保证了航电子系统之间数据交换的安全性和可靠性。提出了一种基于国内首款具有自主知识产权AFDX端系统SoC芯片的模块设计方法,设计的端系统满足ARINC664规范要求,可靠性高,稳定性强,目前已经得到了广泛的应用。
【期刊名称】《自动化技术与应用》 【年(卷),期】2019(038)007 【总页数】4
【关键词】AFDX;HKS664ES;端系统
*基金项目:2018年陕西省教育厅科研计划项目资助(编号18JK1167);2017年西北工业大学明德学院院级科研基金资助项目(编号:2017XY09L02)
1 引言
航空电子全双工交换式以太网(AFDX)也称为ARINC664,主要用于连接航电系统。AFDX和ARINC429、MIL-STD-1553B 在通信方式、通信速度、成本、信息类型等方面相比,优势显著,并且可以简化布线,减轻飞机重量,易于航空电子子系统的维护升级[1]。
AFDX由航电子系统、AFDX端系统、AFDX网络三部分组成。AFDX 端系统是其他两部分之间的通信接口,极为重要。目前,国内外对AFDX 网络端系统产品,多采用FPGA逻辑与软件相结合的方式来实现协议解析和数据收发功能,
但其体积大,功耗高,由于机载用途,难以经受恶劣环境试验的考验。本文介绍了基于自研AFDX网络端系统芯片HKS664ES 的AFDX 端系统的实现方法[2],对我国航电系统的发展具有深远意义。
2 HKS664ES芯片简介
HKS664ES是中国航空工业集团公司第六三一研究所自研的具有自主知识产权的一款专用于给接入AFDX网络的终端系统提供网络接口的SoC芯片[3],该芯片内部集成的ARM922T 处理器可以实现传输层、网络层、链路层以及物理层的协议处理,这样一方面可大大减少对主机的干预,另外可以简化驱动接口以及应用开发的复杂程度。该款SoC 具有定时器、实时时钟、看门狗,可实现AFDX 协议中规定的发送/接收功能,支持实现ARINC 664协议[4],是一款高性能、低功耗的通信处理芯片。HKS 664ES芯片以软硬件结合的方式完全实现了AFDX端系统的整个网络协议,其功能框图如图1所示。
3 AFDX网络端系统硬件设计与实现
本设计的AFDX端系统以32位/33MHz的PCI总线接口与其驻留的主机连接进行交换数据并接受主机配置,通过标准的以太网接口与AFDX网络连接,实现高速可靠的数据通信。AFDX端系统硬件电路组成框图如图2所示[5]。 每个模块的功能如下:
HKS664ES芯片:内部集成ARM922T处理器使得该SoC 芯片可实现UDP/IP 协议,实现ARINC664 协议所规定的全双工交换式以太网AFDX终端的主要功能[6]。
电源模块:提供系统正常工作所需的+3.3V、+1.8V电压。 时钟模块:系统时钟,PCI时钟,RTC时钟。
复位模块:系统上电复位、PCI复位和JTAG复位。 SRAM模块:用于存储系统配置表信息和系统软件。 RS232模块:使用串行接口用于连接调试设备。
FLASH 模块:端系统的传输层软件、引导程序存储在FLASH中,系统上电后,将程序搬运至SDRAM中运行。
SDRAM 模块:接收发送数据缓存区,存储发送虚拟链路和接收虚拟链路的数据。
PHY 芯片及网络变压器:DP83848 通过RMII 接口方式和该SoC连接,通过隔离变压器H1102和RJ45网口接入以太网,输出2路AFDX接口信号,其电路框图如图3所示[7]。
4 软件设计
航空电子通信系统划分为五层协议:应用层、驱动层、传输层、数据链路层和物理层[8]。如图4所示,终端模块遵循航电系统软件层次结构划分,物理层与数据链路层由MBI 模块上的硬件实现;传输层由MBI 模块上固化的传输软件实现,主要负责接口模块的初始化、发送以及接收;应用程序软件和驱动程序软件驻留在主机中,应用程序软件通过调用MBI驱动程序软件来实现子系统的功能要求[9]。主机上的应用软件程序利用端系统SoC 芯片提供的API 函数,通过Windows XP 驱动程序与MBI 模块进行通信。
5 系统验证与测试
综合AFDX端系统的设计要求,在实验室条件下,对该设计功能性能进行测试。测试设备采用德国AIM公司的ATCS 测试台,在ATCS 测试台上运行PBA.pro 软件及测试脚本,对该设计进行协议符合性测试;通过PBA.pro软件的发送和