本发明属于计算机通信,具体涉及一种1553b总线网络中紧急消息传输机制的设计方法。
背景技术:
1、1553b总线网络主要由bc和rt组成,紧急消息也是通过bc调度的,紧急消息和一般消息在消息格式上并无差别,但一般消息由bc严格按照总线通信表进行调度,而紧急消息则需要立即传输。为保证消息传输的周期性,传统的1553b总线应用很少使用紧急消息,但一旦紧急消息插入,则总线表中之后的消息传输将被延迟传输。
技术实现思路
1、本发明的目的是提供一种1553b总线网络中紧急消息传输机制的设计方法,解决了网络中紧急消息的插入,同时尽可能保证紧急消息传输的实时性的同时不破坏总线传输周期。
2、本发明所采用的技术方案是,1553b总线网络中紧急消息传输机制的设计方法,具体按照以下步骤实施:
3、步骤1、在总线表设计中,设计紧急消息标志字,每个位对应一条紧急消息;
4、步骤2、在bc端的消息调度中,如果当前时间片区消息调度完成后,利用剩余的时间片区时间进行紧急消息的查询,检查紧急消息的标志位是否在系统控制参数中的标识位中置位,在获得检查紧急消息的标志位后,需要检查紧急消息是否具备发送条件;
5、步骤3、在发送紧急消息时,利用片区剩余时间传输紧急消息;在查询其紧急消息具备调度发送条件后,bc就会对紧急消息进行调度。
6、本发明的特征还在于,
7、步骤1具体按照以下步骤实施:
8、首先,设置该紧急消息的标志字应;然后,主机调用设置紧急消息标志,将系统控制参数中的紧急消息标志中与该消息相关的位设置为1,就会启动该紧急消息的传输。
9、步骤1中:在总线表中紧急消息定义为urgmsglistx[m][n],其中x表示总线号,m表示对应总线上紧急消息个数,该值最大为16;n表示每条紧急消息格式包含的记录个数,此处为8。
10、步骤2中:检查紧急消息的标志位是否在系统控制参数中的标识位中置位的具体流程为:
11、第一步:获得紧急消息的查询基地址和结束地址以及紧急消息标志位定义;
12、第二步:检查紧急消息标志高字节是否为0,0表示没有紧急消息需要传输,会直接返回;
13、第三步:获得紧急消息标志位定义;
14、第四步:如果有紧急消息就对紧急消息列表进行查询,首先检查该紧急消息之后是否还有紧急消息,也是通过急消息标志位是否为0来判断;
15、第五步:检查紧急消息传输是否满足传输条件;
16、第六步:如果满足传输条件,清除系统控制参数中的紧急消息标志,记录紧急消息的id并返回该紧急消息可以传输的返回码;
17、步骤2中:需要检查紧急消息是否具备发送条件的具体流程为:
18、第一步:依据紧急消息的逻辑号,获得紧急消息的命令类型;
19、第二步:检查紧急消息对应的rt是否处于活动状态,如果紧急消息对应的rt不活动,清除紧急消息中对应的标识位。
20、第三步:检查消息刷新标志是否置位,如果bc输出紧急消息的刷新标志没有置位,直接返回;
21、第四步:检查消息矢量字是否置位,返回消息矢量字标志,如果有新消息,失量字的对应bit置位,如果没有新消息失量字为0。
22、步骤3中在发送紧急消息时,利用片区剩余时间传输紧急消息的具体流程如下:首先检查消息间隔时间是否超过了片区剩余的时间,如果超出,直接发送紧急消息;如果未超出,则可以直接利用剩余时间发送紧急消息。
23、步骤3中在查询其紧急消息具备调度发送条件后,bc就会对紧急消息进行调度的具体流程如下:
24、第一步:依据紧急消息的输入输出类型,如果是bc模式下的输入或者输出消息,停止小周期定时器的时间;
25、第二步:从紧急消息列表中获得紧急消息与下一条消息之间的间隔时间;
26、第三步:设置并且启动紧急消息间隔定时器工作;
27、第四步:计算紧急消息的逻辑号:计算方法为紧急消息的序号与0x1000做或运算;
28、第五步:获得mbi当前可用的消息缓冲区地址;
29、第六步:加载消息缓冲区指针,使用消息栈最后的16条消息供紧急消息使用;
30、第七步:将紧急消息的逻辑地址转换为物理地址;
31、第八步:设置紧急消息当前通道;
32、第九步:加载栈指针到固定单元,并规定每次发送一条消息;
33、第十步:如果是bc输入消息,则停止小周期定时器;
34、第十一步:启动消息传输,填写紧急消息的逻辑号;
35、第十二步:设置消息正在处理标志;
36、第十三步:等待消息结束中断;
37、第十四步:处理当前正在传输的消息的结束中断;
38、第十五步:等待紧急消息与下一条消息之间的时间间隔;
39、第十六步:停止紧急消息定时器;
40、第十七步:检查输入输出类型,如果是bc模式下的输入或者输出消息,重新启动小周期定时器。
41、本发明的有益效果是:
42、(1)本发明方法具有实时查询功能:每条消息传输完成后,便进行紧急消息的查询,并且首先查询紧急消息传输标志字,如果该字没有置位,则紧急消息查询时间几乎可以忽略。
43、(2)本发明方法具有实时中断功能:对输入紧急消息,处理完成后,立即向主机发送中断请求,以便主机可及时刷新消息数据;解决了网络中紧急消息的插入,同时尽可能保证紧急消息传输的实时性的同时不破坏总线传输周期。
44、(3)本发明方法不影响正常通信:如果利用片区剩余时间组织的紧急消息传输,则不会影响正常的总线通信。
45、(4)本发明方法基于1553b总线,创新的设计了一种更加合理、可靠的传输机制,实现紧急消息传输,在保证紧急消息传输实时性的同时,尽量保证其他总线消息的传输特性不变。
1.1553b总线网络中紧急消息传输机制的设计方法,其特征在于,具体按照以下步骤实施:
2.根据权利要求1所述的1553b总线网络中紧急消息传输机制的设计方法,其特征在于,步骤1具体按照以下步骤实施:
3.根据权利要求2所述的1553b总线网络中紧急消息传输机制的设计方法,其特征在于,步骤1中:在总线表中紧急消息定义为urgmsglistx[m][n],其中x表示总线号,m表示对应总线上紧急消息个数,该值最大为16;n表示每条紧急消息格式包含的记录个数,此处为8。
4.根据权利要求1所述的1553b总线网络中紧急消息传输机制的设计方法,其特征在于,步骤2中:检查紧急消息的标志位是否在系统控制参数中的标识位中置位的具体流程为:
5.根据权利要求4所述的1553b总线网络中紧急消息传输机制的设计方法,其特征在于,步骤2中:需要检查紧急消息是否具备发送条件的具体流程为:
6.根据权利要求5所述的1553b总线网络中紧急消息传输机制的设计方法,其特征在于,步骤3中在发送紧急消息时,利用片区剩余时间传输紧急消息的具体流程如下:首先检查消息间隔时间是否超过了片区剩余的时间,如果超出,直接发送紧急消息;如果未超出,则可以直接利用剩余时间发送紧急消息。
7.根据权利要求6所述的1553b总线网络中紧急消息传输机制的设计方法,其特征在于,步骤3中在查询其紧急消息具备调度发送条件后,bc就会对紧急消息进行调度的具体流程如下: