李礼 曾晓东 张成
摘要:总线控制器是GJB289A总线的核心,一旦总线控制器出现故障,会导致整个总线崩溃。工程应用中通过配置备份总线控制器的方法提高总线的可靠性,本文给出了一种GJB289A备份总线控制器设计方法。
关键词:GJB289A协议芯片;GJB289A总线;总线控制器;备份总线控制器
中图分类号:TP18 文献标识码:A
文章编号:1009-3044(2019)16-0247-03
开放科学(资源服务)标识码(OSID):
早期航空电子系统的机载设备采用分散式结构互联,随着的设备数量增加,各设备间需要交换的信息增多,设备交联线缆重量体积大、传输速率低且互联复杂度高。一种高稳定、高可靠且可集中控制的航空标准总线——GJB289A总线,解决了航空电子系统分散式结构的问题。GJB289A总线是双余度的传输电缆线, 总线都是双备份的, 增强了系统的可靠性。但是, 整个总线上的BC通常只有一个,一旦该BC出现故障, GJB289A总线将瘫痪。因此现在通过设计GJB289A备份总线控制器(BBC)来提升总线的可靠性。如果BC故障,BBC可以切换为BC工作模式,进行总线管理与维护,提升了总线的可靠性。
1 工作原理
2 系统概述
GJB289A总线拓扑结构如图1所示,每条总线上有双余度通信通道,多路总线系统包含多路总线通信模块,并分布在各子系统之间,组合为一个整体共同完成系统间的消息传递任务。
为满足通信模块处理系统通信的需要,通信模块包括下列组成部分:
3.1 前端区
MBI模块与GJB289A总线电缆之间的接口区,包括变压器、协议芯片。负责完成共享存储器中数据与总线上GJB289A信号之间的格式转换;另外,前端区还完成一些基本通信错误检测。
3.2 可编程控制器
按照存储器中的固化程序及宿主机指令和数据来控制整个MBI模块的操作。可编程控制器包括处理器DSP,可编程计时器(实时时钟RTC,看门狗时钟WDT,延迟时钟DT),FLASH,RAM等。
3.3 后端区
MBI模块与子系统主机之间的接口区,通过双口存储器完成驱动软件与传输软件之间的数据交换。共享存储器包括收/發数据缓冲区、指令控制区和状态信息区。
MBI模块和子系统主机之间有一条MBI中断线:MBI模块使用MBI中断向驱动层报告特殊或紧急情况,如BIT故障、紧急消息接收、WDT计数器到零等。
驱动软件用指令来控制MBI模块。
MBI模块提供RTC,用于系统同步。
MBI模块硬件结构如图2所示。
4 软件设计
4.1 传输层软件
传输层软件是多路总线通信模块的一部分,驻留在FLASH中。传输层软件由以下部分组成:
4.1.1 消息处理
协议芯片处理消息结束后,产生消息结束中断,消息处理程序需要根据接收到的总线命令类型,进行相应的处理;为保证数据的完整性,与应用相关的所有接收/发送数据块采用双缓冲机制。
4.1.2 故障处理
故障处理包括:无效数据字、非法命令、终端标记、子系统标记等故障状况下的处理。
4.1.3 控制程序
4.2 驱动层软件
总线驱动程序(MBI DRIVER)是宿主机应用软件与MBI模块之间传递信息的媒介,提供了多种消息读、消息写、控制程序和时钟控制程序。另外,驱动程序还负责处理来自MBI模块的中断请求,包括解释中断码并报告给应用软件。
4.2.1 状态控制程序
4.2.2 系统控制程序
4.2.3 时钟控制程序
4.2.4 消息控制程序
5 数据块输入/输出过程
5.1 数据块输出过程
5.2 数据块输入过程
本文设计的GJB289A备份总线控制器实现了BC 的冗余备份功能,已成功应用在某型号上,该设计能有效解决BC 故障带来的灾难后果,提高了系统GJB289A总线网络的可靠性。
参考文献:
[1] 基于SOC芯片的1553B远程终端的设计与实现[J].中国市场, 2015
[2] 基于HKS1553BCRT芯片的1553B总线通信软件设计[J].计算机技术与发展, 2012.
[3] HI-613x 数据手册HOLT INTEGRATED CIRCUITS ,2014.
[4] BusTools/1553—API Software Reference Manual[M].Con-dor Engineering Inc,2004.
[5] Rebirth of the 1553 databus[M]. Feb 1, 2006.
[6]数字式时分制指令/响应型多路传输数据总线[M].北京:中国标准出版社,1997.
【通联编辑:唐一东】