ARINC659总线在计算机系统动态重构中的设计应用

2018-07-28 07:18刘炜
电脑知识与技术 2018年15期

刘炜

摘要:计算机系统动态重构技术可以极大地提高电子系统设计可靠性和生存性,已引起了广泛的关注和研究。在介绍动态重构理论、IMA结构和ARINC659总线的基础上,通过合理设计总线命令表,保证了时间和信息的双同步,再结合ARINC659总线的双重故障检测等能力,实现了IMA架构计算机系统动态重构。

关键词: ARINC659总线;IMA架构;动态重构;无缝切换

中图分类号:TP39 文献标识码:A 文章编号:1009-3044(2018)15-0230-04

Design and Application of ARINC659 Bus in the Dynamic Reconfiguration of Computer System

LIU Wei

(ACTRI, Xian 710065, China)

Abstract: The dynamic reconfiguration technology of computer system can greatly improve the reliability and survivability of electronic system design, which has attracted wide attentions and researches. Based on the introduction of dynamic reconfiguration theory, IMA and ARINC659 bus, the through the reasonable design of the bus command table to get the synchronization of the time and message and ARINC659 bus double fault detection ability, the IMA computer system dynamic reconfiguration could be achieved in application.

Key words: ARINC659 bus; IMA; dynamic reconfiguration; seamless handover

随着系统动态重构技术的发展和综合模块化航电(Integrated Modular Avionics, IMA)系统技术的普及,计算机系统动态重构(Dynamical computer system reconfiguration,DCSR)技术逐渐成为航空电子系统研究中的新热点。系统动态重构是在多余度系统发生故障时,系统自行转入新工作结构而采用的余度管理技术。因充分利用了自身的信号和资源,系统获得了更高的可靠性和生存性[1]。IMA架构是将多个具有相同或相似功能的模块,综合集成在一个机柜中通过背板总线共享信息资源,在特定的情况下功能模块可以相互替换的一种机载计算机系统设计技术[2]。如果能实现IMA架构下的计算机系统重构将会有效地提高计算机系统的任务可靠性和资源共享能力,显著提高计算机系统的使用范围和效率。本文在利用ARINC659总线自身的实时同步、故障隔离和主备切换等能力基础上,有機结合计算机的IMA架构应用,实现计算机系统动态重构。

1概念综述

1.1 系统动态重构

系统动态重构是指允许可重构的整个系统或其中一部分进行重新配置,配置过程中其余部分的工作可以不受影响。相对于静态重构,动态重构不需要外力介入,缩短了重构时间,并且重构时,非重构部分仍然运行,正在处理的数据不会丢失,不需要进行数据迁移,从而缩短了系统重构的开销,提高系统的运行效率[3]。

1.2 IMA架构

IMA架构是飞机上的一种综合化计算机系统架构,包含若干组按功能分类,可以作为余度进行相互替换的模块。IMA架构的核心理念是硬件共享,即多个应用接口可以共享同一个处理单元,这样就能减少处理器、总线、I/O的成本,还能减小航空电子系统的重量、体积、能耗等[4]。

1.3 ARINC659总线

ARINC659总线是一种高速(30Mbps)、高效、高可靠性(双-双余度)串行总线,包含4组(Ax、Ay、Bx、By)共12根线,采用表驱动比例访问(Table Driven Proportional Access,TDPA)协议传输,传输介质如图1所示。整个总线活动由一个或多个恒定长度的周期帧组成。每个周期帧被划分为一系列消息窗口,每个消息窗口包含一个长度从32bit到8192bit的消息或者一个大约5bit的同步脉冲,窗口间通过少量可设定的时间间隙隔开。每一个窗口由帧描述语言(Frame Description Language,FDL,见表1)编写,形成命令表[5]。

2 设计方案与实现

2.1 方案概述

此次计算机系统动态重构方案是使用多个均处于同步收发信息和处理数据的热备份状态的功能模块。当主模块故障时,进行故障识别和故障隔离,然后通过仲裁启用其中一个热备份模块接替原故障模块继续支撑系统功能,实现无缝切换,保证系统功能完成性和提高系统生存能力。

2.2 IMA架构计算机系统设计

本次设计的IMA架构的余度计算机系统见图2。以ARINC659总线为背板总线,4组(共12条)总线通过33欧姆电阻上拉到4个独立的2.1V,为总线提供电气环境并通过上下拉电阻提供模块位置识别。背板上安插3组(6个)内含CPU的智能处理模块:一组核心处理模块(Core Processor Module,CPM1、CPM2)、一组输入输出模块(Input Output Module,IOM1、IOM2)、一组外部总线通讯模块(External Bus Communication Module,EBCM1、EBCM2),各组功能模块软件、硬件完全相同,且互为余度备份。各模块使用ARINC659总线协议芯片HK659-LBB-30和总线收发器FBL22040BB实现总线网络的对接。工作流程为发送模块的CPU处理本模块的任务并将数据信息传递给总线协议芯片,再由总线协议芯片处理后经总线收发器发送到背板总线上,接收模块总线收发器接收数据经总线协议芯片传递给自身的CPU。

2.3 动态重构设计

使用ARINC659总线实现IMA架构计算机系统动态重构的流程设计如下:

1)对各组模块进行时间和信息双同步,即主备模块处于总线时间的同一时刻,并能接收同一总线信息,备份模块处于热备份状态;

2)通过在线数据检测及时发现故障模块并自行隔离;

3)瞬时启用热备份模块顶替故障模块,完成无缝切换,最终实现系统重构。

2.3.1 时间和信息双同步设计

实现时间同步,需要利用ARINC659 总线的帧级同步和位级同步机制。帧级同步保证了处于非同步状态的BIU 通过发送或者接收同步消息和总线上活动的BIU 恢复同步。处于同步状态的BIU 执行命令表长同步消息(ERU)中包含的帧切换指令可以共同切换到命令表中的同一帧。位级同步确保了任意模块的任意两个BIU 时钟偏差不超过两个bit时长。初始化同步消息、长同步消息和短同步消息(SSYNC)中都包含此位级同步。

所以,在本次设计的ARINC659总线命令表中的每一帧都加入了一个长同步消息,实现了总线上的所有模块同一时间工作在命令表的同一帧的同一消息窗口;每个消息窗口再加入足够多(至少一个)的短同步消息,可以进一步实现所有模块工作在同一消息窗口的同1bit,所有模块总线时间偏差将不超过2bit,即66nS。而ARINC659总线支持广播式的一发多收,互为备份的一组模块分别使用接收消息指令(RX)可以同时接收来自同一的发送源的数据信息,进而实现这组模块在同一时刻接收同一信息。

上述设计以CPM1发送数据,IOM1、IOM2同时接收为例,用FDL编写工作帧命令表如下:

该部分命令表实现了CPM1、CPM2、IOM1、IOM2在工作幀内时间同步,且IOM1、IOM2信息同步。

2.3.2 热备份替换设计

热备份替换的实现利用了ARINC659总线用于多个备用模块(最多4个) 到单个或一组模块通信的主/后备消息。主/后备消息的数据传输仲裁机制为:由命令表发送排序得知当前模块的优先级(主备)关系,在设定的Δ时间(3至9个bit)内,总线信号从命令表中最高优先级模块的BIU开始传输,该模块的时钟信号会通过底板进入所有低优先级模块的BIU,发送逻辑会强制关闭总线收发器使其不进行发送,见图3,此次传输结束。若超过Δ时间最高级模块未传输,即次级模块未感知其时钟信号,则次级模块的BIU开始传输,以此类推,直到轮循全部后备模块。同时协议规定一个消息窗口只有一个模块发送数据。

利用ARINC659总线这种机制,使用帧描述语言定义出模块的发送数据的优先级关系,以CPM1、CPM2为主备发送、EBCM1、EBCM2同为接收为例设计总线命令表如下:

使用此主备发送命令表,CPM1、CPM2在数据通信的过程中会不断检测总线的活动, 在当前窗口内,后备模块CPM2等待的Δ时间内如果发现主模块CPM1因发生故障未发送数据,则CPM2就立刻转变为主模块实现数据的发送,此时EBCM1和EBCM2收到的数据就是来自CPM2而不是CPM1了。因切换时间非常短(Δ设为3个位时,即99nS),不会影响下一个任务信息的发送,且互为备份的CPM1、CPM2是同时、同步工作的,所以此设计实现了热备份模块的无缝切换。

2.3 编写命令表

为实现此次IMA架构计算机系统中所有模块同步工作且设置主备余度以无缝切换,综合使用ARINC659总线的上述设计,编写工作帧命令表如下:

WORK SSYNC ;

ERU, CPM1 CPM2 IOM1 IOM2 EBCM1 EBCM2 ;

FREE 100 ;

SSYNC;

BOW 256 ;

TX CPM1 0X0000 ;

TX CPM2 0X0000 ;

RX IOM1 0X8000 ;

RX IOM2 0X8000 ;

FREE 8339 ;

SSYNC;

BOW 256 ;

TX CPM1 0X1000 ;

TX CPM2 0X1000 ;

RX PBCM1 0X8000 ;

RX PBCM2 0X8000 ;

FREE 8339 ;

SSYNC;

BOW 256 ;

TX IOM1 0X8000 ;

TX IOM2 0X8000 ;

RX CPM1 0X0000 ;

RX CPM2 0X0000 ;

FREE 8339 ;

SSYNC;

BOW 256 ;

TX PBCM1 0X8000 ;

TX PBCM2 0X8000 ;

RX CPM1 0X1000 ;

RX CPM2 0X1000 ;

FREE 8339 ;

SSYNC;

END.

将此命令表烧入该计算机各模块ARINC659总线协议芯片的命令表存储器中,进行通电测试。

3 实验与验证

建立IMA架构计算机系统实验台架,包含本次设计的使用ARINC659总线的IMA架构计算机系统、测试激励设备和数据显示机柜三部分,见图4。

实验原理为:由测试激励设备将故障和接口激励注入计算机系统,计算机系统会实时将各模块时间标记和故障接口状态向测试显示机柜传输,测试显示机柜监控并打印显示。通过观察时间标记的一致性和模块状态转换情况判断出发生故障后计算机系统是否完成了动态重构。

测试打印结果见表2,由打印时间标记结果显示,此系统表实现了各组主备模块(CPM1和CPM2、IOM1和IOM2、EBCM1和EBCM2)时间和任务双同步;通过故障注入,打印模块测试状态显示,此计算机系统可以及时发现任意主模块(CPM1、IOM1、EBCM1)故障,自行完成隔离同时启用了对应的热备份模块(CPM2、IOM2、EBCM2),系统具有重构的功能。整个过程是自发完成,且显示检测接口故障切换时间间隔为nS级,证明此次设计实现了该IMA架构计算机系统的动态重构。

4 结束语

在设计计算机系统时,使用IMA架构,利用ARINC659总线的多重故障检测能力、时间和信息双同步能力和主备无缝切换机制,合理设计编写总线命令表,可使计算机系统实现动态重构。本文中的IMA架构计算机系统仅为2余度,而ARINC659总线拥有最多可以支持4余度模块无缝切换的潜力,在计算机系统动态重构方面有广阔的使用前景。

参考文献:

[1] 赵谦,赵小冬,刘作龙.机载嵌入式动态可重构计算机设计[J].航空计算技术,2013,43(2):113-116.

[2] 陈龙.IMA重配置策略和重配置的安全性分析方法研究[D].南京航空航天大学,2015.

[3] 许骏,晏渭川,彭澄廉.基于模块的动态可重构系统设计[J].计算机工程与设计,2008,29(6):1367-1369.

[4] 尤海峰,刘煜.大型民用飞机IMA 系统应用分析及发展建议[J].电讯技术,2013,53(1):110-116.

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