一种1553b总线rt发送模式三缓冲空间通信方法
【技术领域】
[0001 ]本发明涉及一种1553Β总线RT发送模式三缓冲空间通信方法。
【背景技术】
[0002]1553Β总线是一种集中控制式的时分串行总线,其主要特点是分布处理、集中控制和实时响应。但由于RT远程终端需要进行相关发送数据的准备,比如数据采集、数据分析、数据转换等,在系统要求通信周期较快的情况下,RT远程终端还没有来得及准备好需要发送的信息,BC控制器已经发送数据请求命令,如果在约定的时间内,RT远程终端还没有将回传信息准备好,则导致本次通信数据无效。1553Β协议芯片内提供单条消息存放功能,通常为提高系统通信载荷需求,通过设置双缓冲,采用双缓冲技术可提高RT远程终端利用率,尽可能使RT远程终端处于忙状态,进而改善BC控制器与RT远程终端之间通信速度不匹配的矛盾。如图1所示,现有解决方案中一般是采用过软件编程来实现RT远程终端发送模式的双缓冲功能,当数据存储完毕后,需要对数据块地址指针进行修改并写入子地址查找表中,即子地址查找表中的数据块地址将被重置,修改后的地址指针指向另一数据块,这样就实现了激活区与非激活区翻转,下一则消息的数据就会存储于另一个数据存储空间中。
[0003 ]由于BC控制器与RT远程终端不是相同的时钟源工作,并且15 5 3Β总线协议BC控制器与RT远程终端没有严格的时序同步机制,显然,发送缓冲区1与发送缓冲区2可能存在被连续读取两次的概率,如当前子地址查找表指针指向“发送缓冲空间1”,如果RT远程终端在约定的通信周期内容由于某些原因还没有将发送数据放入“发送缓冲区2”,就没有执行更改子地址查找表“指向发送缓冲区空间2”的操作,所以,子地址查找表保持着前一个通信周期的“发送缓冲空间1”指针。
【发明内容】
[0004]为解决上述技术问题,本发明提供了一种1553Β总线RT发送模式三缓冲空间通信方法,该1553Β总线RT发送模式三缓冲空间通信方法通过合理配置缓冲空间及子地址查找表方式,即在RT远程终端设计三个缓冲空间,对RT远程终端需准发送的数据循环存放,能有效提尚系统通?目载荷。
[0005]本发明通过以下技术方案得以实现。
[0006]本发明提供的一种1553Β总线RT发送模式三缓冲空间通信方法,包括如下步骤:
[0007]①设置缓冲空间:RT远程终端中设置三个发送缓冲区空间组成随机发送缓冲区空间,每一发送缓冲区空间标记一个标签号,三个标签号分别表示“请求指令指向空间”、“正在更新空间”、“当前空闲空间”;
[0008]②发送请求指令:BC控制器发送数据请求指令,RT远程终端将标记标签号为“请求指令指向空间”的发送缓冲区空间内信息反馈至BC控制器,并在反馈结束后将“请求指令指向空间”和“当前空闲空间”两个标签号的标记位置进行更换;
[0009]③更新数据:当标记标签号为“正在更新空间”的发送缓冲区空间内数据更新完成后,将“正在更新空间”和“当前空闲空间”两个标签号的标记位置进行更换;
[0010]④持续运行:以任意次序重复上述步骤②和步骤③。
[0011 ] 所述RT远程终端核心为SM61580协议芯片。
[0012]所述三个标签号对于任一发送缓冲区空间只能标记其中一个,并且三个标签号均唯一。
[0013]所述步骤①中,标记标签号为“请求指令指向空间”的发送缓冲区空间内数据,在系统初始化时首先更新写入。
[0014]本发明的有益效果在于:
[0015]1、通过标签号标记每个发送缓冲区空间当前所处的工作状态,并可以通过更换当前发送缓冲区空间的标签号达到更改当前发送缓冲区空间的工作状态;
[0016]2、采用该RT发送模式三缓冲技术可以避免某一时间对同个发送缓冲区空间的更新写操作和取读操作的冲突;
[0017]3、通过RT发送模式三缓冲技术,使得BC控制器发送数据请求命令与RT远程终端更新数据频率无相关。
【附图说明】
[0018]图1是现有技术的流程不意图;
[0019]图2是本发明的流程不意图;
[0020]图3是本发明第一种实施方式的更新数据步骤中标签更换方式示意图;
[0021 ]图4是本发明第一种实施方式的发送请求指令步骤中标签更换方式示意图。
【具体实施方式】
[0022]下面进一步描述本发明的技术方案,但要求保护的范围并不局限于所述。
[0023 ]如图2所示的一种1553B总线RT发送模式三缓冲空间通信方法,包括如下步骤:
[0024]①设置缓冲空间:RT远程终端中设置三个发送缓冲区空间组成随机发送缓冲区空间,每一发送缓冲区空间标记一个标签号,三个标签号分别表示“请求指令指向空间”、“正在更新空间”、“当前空闲空间”;
[0025]②发送请求指令:BC控制器发送数据请求指令,RT远程终端将标记标签号为“请求指令指向空间”的发送缓冲区空间内信息反馈至BC控制器,并在反馈结束后将“请求指令指向空间”和“当前空闲空间”两个标签号的标记位置进行更换;
[0026]③更新数据:当标记标签号为“正在更新空间”的发送缓冲区空间内数据更新完成后,将“正在更新空间”和“当前空闲空间”两个标签号的标记位置进行更换;
[0027]④持续运行:以任意次序重复上述步骤②和步骤③。
[0028]所述RT远程终端核心为SM61580协议芯片。
[0029 ]所述三个标签号对于任一发送缓冲区空间只能标记其中一个,并且三个标签号均唯一。
[0030]所述步骤①中,标记标签号为“请求指令指向空间”的发送缓冲区空间内数据,在系统初始化时首先更新写入。
[0031]实施例1
[0032]如图2所示,本发明提供的一种1553B总线RT发送模式三缓冲空间通信方法包括如下步骤:
[0033]①设置缓冲空间:RT远程终端中设置三个发送缓冲区空间组成随机发送缓冲区空间,三个发送缓冲区空间分别为“发送缓冲区空间1”、“发送缓冲区空间2”、“发送缓冲区空间3”,标记“发送缓冲区空间1”为“标签号1”,表示BC控制器发送数据请求命令所指向的空间,标记“发送缓冲区空间2”为“标签号2”,表示RT远程终端正在更新的空间,标记“发送缓冲区空间3”为“标签号3”,表示当前空闲的发送缓冲空间,将子地址查找表中的数据块地址指向“发送缓冲区空间1”;
[0034]②发送请求指令:如图4所示,BC控制器发送数据请求指令,RT远程终端将标记为标签号为“标签号1”的发送缓冲区空间内信息反馈至BC控制器,并在反馈结束后将“标签号1”和“标签号3”的标记位置相互更换,即表示BC控制器发送数据请求命令所指向的空间与当前空闲的发送缓冲空间进行更换,并将子地址查找表中的数据块地址指向更换后的BC控制器发送数据请求命令空间;
[0035]③更新数据:如图3所示,当标记为“标签号2”的发送缓冲区空间内数据更新完成后,将“标签号2”和“标签号3”的标记位置相互更换,即表示RT远程终端正在更新的空间与当前空闲的发送缓冲空间的作用进行更换;
[0036]④持续运行:以任意次序重复上述步骤②和步骤③。
【主权项】
1.一种1553B总线RT发送模式三缓冲空间通信方法,其特征在于:包括如下步骤: ①设置缓冲空间:RT远程终端中设置三个发送缓冲区空间组成随机发送缓冲区空间,每一发送缓冲区空间标记一个标签号,三个标签号分别表示“请求指令指向空间”、“正在更新空间”、“当前空闲空间”; ②发送请求指令:BC控制器发送数据请求指令,RT远程终端将标记标签号为“请求指令指向空间”的发送缓冲区空间内信息反馈至BC控制器,并在反馈结束后将“请求指令指向空间”和“当前空闲空间”两个标签号的标记位置进行更换; ③更新数据:当标记标签号为“正在更新空间”的发送缓冲区空间内数据更新完成后,将“正在更新空间”和“当前空闲空间”两个标签号的标记位置进行更换; ④持续运行:以任意次序重复上述步骤②和步骤③。2.如权利要求1所述的1553B总线RT发送模式三缓冲空间通信方法,其特征在于:所述RT远程终端核心为SM61580协议芯片。3.如权利要求1所述的1553B总线RT发送模式三缓冲空间通信方法,其特征在于:所述三个标签号对于任一发送缓冲区空间只能标记其中一个,并且三个标签号均唯一。4.如权利要求1所述的1553B总线RT发送模式三缓冲空间通信方法,其特征在于:所述步骤①中,标记标签号为“请求指令指向空间”的发送缓冲区空间内数据,在系统初始化时首先更新写入。
【专利摘要】本发明提供的一种1553B总线RT发送模式三缓冲空间通信方法,包括如下步骤:①设置缓冲空间;②发送请求指令;③更新数据;④持续运行。本发明通过标签号标记每个发送缓冲区空间当前所处的工作状态,并可以通过更换当前发送缓冲区空间的标签号达到更改当前发送缓冲区空间的工作状态;采用该RT发送模式三缓冲技术可以避免某一时间对同个发送缓冲区空间的更新写操作和取读操作的冲突;通过RT发送模式三缓冲技术,使得BC控制器发送数据请求命令与RT远程终端更新数据频率无相关。
【IPC分类】G06F13/40, G06F13/42
【公开号】CN105488005
【申请号】CN201510844688
【发明人】谢宏进, 龚旋
【申请人】贵州航天电子科技有限公司
【公开日】2016年4月13日
【申请日】2015年11月28日