一种基于管理表的1553B总线BC模式下消息配置处理方法技术

技术编号:23238885 阅读:17 留言:0更新日期:2020-02-04 18:20
本发明专利技术属于航空航天系统数据通信技术领域,公开了一种基于管理表的1553B总线BC模式下数据消息的配置处理方法,过程为:定义一个结构描述消息空间的使用状态,初始化过程中消息管理表中对总线内存区域进行注册,基于消息管理表管理BC到RT方向的数据传输,基于消息管理表管理RT到BC方向的数据传输,数据传输动态管理中对消息管理表的注销。本发明专利技术克服现有1553B总线BC模式下数据消息配置处理方法的不足,提供了一种基于管理表的方法,设计了一种结构描述1553B消息空间的状态,采用消息管理表对消息来管理BC和RT之间数据的收发,解决了1553B总线大量高频次处理消息过程中消息高效管理的问题。

A message configuration processing method based on management table under 1553B bus BC mode

【技术实现步骤摘要】
一种基于管理表的1553B总线BC模式下消息配置处理方法
本专利技术属于航空航天系统数据通信
,涉及一种基于管理表的1553B总线BC模式下消息配置处理方法。
技术介绍
1553B总线是一种数字式时分制指令/响应型多路传输数据总线,由于它可靠性高、通信质量稳定、扩充和维护简便等特点,在航空航天电子系统中得到了非常广泛的应用。1553B总线最多可挂32个RT终端,每个RT最多又可以支持32个RT子地址来响应最多32个接收消息和32个发送消息,由于1553B总线RAM可配置消息个数较少(一般为64个),所以传统的1553B总线BC模式下消息配置方法一般采用环形队列的方法,不论是BC发送数据到RT,还是RT发送数据到BC,都是同一消息空间地址逐一递增,因此当数据发送量大且发送频率较高时,1553B总线消息流程的管控效率低,易出错,可维护性差。
技术实现思路
(一)专利技术目的本专利技术的目的是:提供一种基于管理表的1553B总线BC模式下消息配置处理方法,克服现有1553B总线BC模式下数据消息配置处理方法的不足,解决1553B总线大量高频次处理消息过程中消息高效管理的问题。(二)技术方案为了解决上述技术问题,本专利技术提供一种基于管理表的1553B总线BC模式下消息配置处理方法,其包括以下步骤:STEP1:定义一个结构体来描述消息空间的状态;STEP2:管理表状态初始化,将所有的状态清0,进行1553B总线启动的初始化工作;STEP3:对内存管理空间进行初始化操作;STEP4:进行系统的数据传输工作,如果传输方向是BC到RT方向,转到STEP5,如果传输方向是RT到BC方向,则转到STEP6;STEP5:对于BC到RT的方向,判断总线数据是否发送完成,同时判断1553B总线的两个消息计数器A和B是否已经达到最大值,这两个条件均达到后,进行发送准备工作,将1553B总线的块状态字寄存器清零,将1553B总线的时标字寄存器清零,填写消息间隔时间值MSG_GAP1,填写消息块指针,初始化堆栈指针A的起始位置,初始化消息计数器A,初始化堆栈指针B的起始位置,初始化消息计数器B,配置控制字和命令字,将数据写入消息空间数据存储区,启动BC发送;STEP6:对于RT到BC的方向,判断总线数据是否发送完成,同时判断1553B总线的两个消息计数器A和B是否已经达到最大值,这两个条件同时满足时,进行发送准备工作,将1553B总线的块状态字寄存器清零,将1553B总线的时标字寄存器清零,填写消息间隔时间值MSG_GAP2,填写消息块指针,初始化堆栈指针A的起始位置,初始化消息计数器A,初始化堆栈指针B的起始位置,初始化消息计数器B,配置控制字和命令字,将数据写入消息空间数据存储ram区,启动RT发送;STEP7:遍历查询RT发送到BC数据取出标志,对于没取出的RT数据通过1553B总线的块状态字判断数据是否准备好,将准备好的数据取出。其中,所述步骤STEP1中,结构体内容包括:偏移地址的标号index、RT的节点号RTn、RT子地址SUBRTn、消息传输的方向Dir、消息地址是否已经被注册标记RegFlag以及RT发送到BC数据是否已经被取出标记FetchFlag,以上结构体内容为管理表需要管理的内容。其中,所述步骤STEP1中,偏移地址的标号index取值范围为0~63;消息传输的方向Dir为:BC到RT方向为1,RT到BC方向为2;消息地址是否已经被注册标记RegFlag为:注册标记为0,尚未注册或者已注销标记为1;RT发送到BC数据是否已经被取出标记FetchFlag为:取出为0,未取出标记为1。其中,所述步骤STEP2中,定义一个结构体数组CtrlTab[64],数组长度为64,用这个结构体数组作为管理表来管理消息空间,在使用之前先使用memset指令对64个结构体数组空间进行清零。其中,所述步骤STEP3中,内存管理空间初始化的过程中,根据具体总线通讯的需求,将对应的RT节点号RTn、RT子地址SUBRTn、消息传递的方向和消息地址已注册的状态,分别写入到结构体数组中。其中,所述步骤STEP6中,启动RT发送完成后,将RT发送到BC数据是否已经被取出标志置为1。(三)有益效果上述技术方案所提供的基于管理表的1553B总线BC模式下消息配置处理方法,可以实现1553B总线BC模式下内存的高效管理,该方法已经经过了算法验证,并进行了实验检验。结果表明,该方案可以保证1553B通讯的实时性,提高了1553B通讯的可靠性。附图说明图1一种基于管理表的1553B总线BC模式下消息配置处理方法主流程图。图2一种基于映射表的1553B总线BC模式下消息配置处理方法动态配置流程图。具体实施方式为使本专利技术的目的、内容和优点更加清楚,下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。为了解决1553B总线BC模式下消息配置传统方法效率低的问题,本专利技术采用结构体数组对消息空间管理表进行管理。结合图1说明基于管理表的1553B总线BC模式下消息配置主流程:STEP1:定义一个结构体描述消息空间的状态结构体内容包括:偏移地址的标号index(取值范围为0~63)、RT的节点号RTn、RT子地址SUBRTn、消息传输的方向Dir(BC到RT方向为1,RT到BC方向为2)、消息地址是否已经被注册标记RegFlag(注册标记为0,尚未注册或者已注销标记为1)以及RT发送到BC数据是否已经被取出标记FetchFlag(取出为0,未取出标记为1),以上结构体内容为管理表需要管理的内容。STEP2:管理表状态初始化,将所有的状态清0,进行1553B总线启动的初始化工作。定义一个结构体数组CtrlTab[64],数组长度为64,用这个结构体数组来管理消息空间,在使用之前先使用memset指令对64个结构体数组空间进行清零。STEP3:对内存管理空间进行初始化操作,初始化的过程中,根据具体总线通讯的需求,将对应的RT节点号RTn、RT子地址SUBRTn、消息传递的方向和消息地址已注册的状态,分别写入到结构体数组中。STEP4:进行系统的数据传输工作,如果传输方向是BC到RT方向,转到STEP5,如果传输方向是RT到BC方向,则转到STEP6;STEP5:对于BC到RT的方向,判断总线数据是否发送完成,同时判断1553B总线的两个消息计数器A和B是否已经达到最大值,这两个条件均达到后,进行发送准备工作,将1553B总线的块状态字寄存器清零,将1553B总线的时标字寄存器清零,填写消息间隔时间值MSG_GAP1,填写消息块指针,初始化堆栈指针A的起始位置,初始化消息计数器A,初始化堆栈指针B的起始位置,初始化消息计数器B,配置控制字和命令字,将数据写入消息空间数据存储区,启动BC发送;STEP6:对于RT到BC的方向,判本文档来自技高网...

【技术保护点】
1.一种基于管理表的1553B总线BC模式下消息配置处理方法,其特征在于,包括以下步骤:/nSTEP1:定义一个结构体来描述消息空间的状态;/nSTEP2:管理表状态初始化,将所有的状态清0,进行1553B总线启动的初始化工作;/nSTEP3:对内存管理空间进行初始化操作;/nSTEP4:进行系统的数据传输工作,如果传输方向是BC到RT方向,转到STEP5,如果传输方向是RT到BC方向,则转到STEP6;/nSTEP5:对于BC到RT的方向,判断总线数据是否发送完成,同时判断1553B总线的两个消息计数器A和B是否已经达到最大值,这两个条件均达到后,进行发送准备工作,将1553B总线的块状态字寄存器清零,将1553B总线的时标字寄存器清零,填写消息间隔时间值MSG_GAP1,填写消息块指针,初始化堆栈指针A的起始位置,初始化消息计数器A,初始化堆栈指针B的起始位置,初始化消息计数器B,配置控制字和命令字,将数据写入消息空间数据存储区,启动BC发送;/nSTEP6:对于RT到BC的方向,判断总线数据是否发送完成,同时判断1553B总线的两个消息计数器A和B是否已经达到最大值,这两个条件同时满足时,进行发送准备工作,将1553B总线的块状态字寄存器清零,将1553B总线的时标字寄存器清零,填写消息间隔时间值MSG_GAP2,填写消息块指针,初始化堆栈指针A的起始位置,初始化消息计数器A,初始化堆栈指针B的起始位置,初始化消息计数器B,配置控制字和命令字,将数据写入消息空间数据存储ram区,启动RT发送;/nSTEP7:遍历查询RT发送到BC数据取出标志,对于没取出的RT数据通过1553B总线的块状态字判断数据是否准备好,将准备好的数据取出。/n...

【技术特征摘要】
1.一种基于管理表的1553B总线BC模式下消息配置处理方法,其特征在于,包括以下步骤:
STEP1:定义一个结构体来描述消息空间的状态;
STEP2:管理表状态初始化,将所有的状态清0,进行1553B总线启动的初始化工作;
STEP3:对内存管理空间进行初始化操作;
STEP4:进行系统的数据传输工作,如果传输方向是BC到RT方向,转到STEP5,如果传输方向是RT到BC方向,则转到STEP6;
STEP5:对于BC到RT的方向,判断总线数据是否发送完成,同时判断1553B总线的两个消息计数器A和B是否已经达到最大值,这两个条件均达到后,进行发送准备工作,将1553B总线的块状态字寄存器清零,将1553B总线的时标字寄存器清零,填写消息间隔时间值MSG_GAP1,填写消息块指针,初始化堆栈指针A的起始位置,初始化消息计数器A,初始化堆栈指针B的起始位置,初始化消息计数器B,配置控制字和命令字,将数据写入消息空间数据存储区,启动BC发送;
STEP6:对于RT到BC的方向,判断总线数据是否发送完成,同时判断1553B总线的两个消息计数器A和B是否已经达到最大值,这两个条件同时满足时,进行发送准备工作,将1553B总线的块状态字寄存器清零,将1553B总线的时标字寄存器清零,填写消息间隔时间值MSG_GAP2,填写消息块指针,初始化堆栈指针A的起始位置,初始化消息计数器A,初始化堆栈指针B的起始位置,初始化消息计数器B,配置控制字和命令字,将数据写入消息空间数据存储ram区,启动RT发送;
STEP7:遍历查询RT发送到BC数据取出标志,对于没取出的RT数据通过1553B总线的块状态字判断数据是否准备好,将准备好的数据取出。


2.如权利要求1所述的基于...

【专利技术属性】
技术研发人员:王雨龙
申请(专利权)人:天津津航计算技术研究所
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1