[发明专利]一种基于管理表的1553B总线BC模式下消息配置处理方法有效
申请号: | 201910993454.6 | 申请日: | 2019-10-18 |
公开(公告)号: | CN110750473B | 公开(公告)日: | 2023-06-02 |
发明(设计)人: | 王雨龙 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | G06F13/38 | 分类号: | G06F13/38;G06F13/42 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 刘二格 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 管理 1553 总线 bc 模式 消息 配置 处理 方法 | ||
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总线的块状态字判断数据是否准备好,将准备好的数据取出;
所述步骤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。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910993454.6/1.html,转载请声明来源钻瓜专利网。