CN114301563B - 集群间多余度同步电路、总线系统及集群间同步的方法 - Google Patents
集群间多余度同步电路、总线系统及集群间同步的方法 Download PDFInfo
- Publication number
- CN114301563B CN114301563B CN202111599887.7A CN202111599887A CN114301563B CN 114301563 B CN114301563 B CN 114301563B CN 202111599887 A CN202111599887 A CN 202111599887A CN 114301563 B CN114301563 B CN 114301563B
- Authority
- CN
- China
- Prior art keywords
- time
- synchronous time
- synchronization
- cluster
- bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明涉及通信领域,具体公开了一种集群间多余度同步电路,其中,包括:同步时间发送器,用于周期性向包括所在总线集群在内的N个总线集群发送同步时间信号;同步时间接收器阵列,用于输出对应的诊断信号以及同步时间;诊断信号排序模块,连接同步时间接收器阵列,用于对N个诊断信号进行排序;同步时间排序电路,连接同步时间接收器阵列,用于对N个同步时间进行排序;同步时间更新模块,分别连接同步时间排序电路和同步时间发送器,能够根据所在总线集群的主机处理器的有效集群间同步时间调整所在总线集群的同步时间。本发明还公开了一种TTP/C总线系统及总线集群间同步的方法。本发明提供的集群间多余度同步电路提高了集群间同步效率。
Description
技术领域
本发明涉及通信领域,尤其涉及一种集群间多余度同步电路、TTP/C总线系统及总线集群间同步的方法。
背景技术
时间触发协议(TTP)总线是针对运输工业领域安全关键嵌入式应用的高速、无主、双余度的现场总线通信协议,具有成本低、时间确定性强等特点,可以用于由多个智能节点组成的分布式容错实时控制系统中。TTP/C满足美国汽车工程师协会(SAE)C级汽车应用的要求,已被收录到AS6003标准中。
一个TTP/C总线集群由最多64个节点组成,其中若干个为冷启动节点。TTP/C总线集群的运行由冷启动节点发起,冷启动节点将含有启动时间的冷启动帧发送到整个集群,其它节点根据冷启动帧进行集成,将其中包含的启动时间作为自身的全局时间。TTP/C总线集群内的同步是通过接收各节点的数据帧,计算对方和自身的时间差,并且通过同步算法得到内部时钟纠正值,对全局时间进行微调来实现。TTP/C总线集群间的同步,则是通过网关节点上的主机处理器根据一定的时间参考设置外部时钟纠正值,附加到内部时钟纠正值上,对全局时间进行微调来实现。
目前完成TTP/C总线集群间同步的方法,一般是通过专门设计的集群耦合器单元,该集群耦合器单元包含了各个集群的网关节点或协议引擎,使用统一的时钟参考来进行各个集群之间的同步。但是这种集群耦合器如果出现了单点故障,就会影响到集群间同步功能,甚至会影响到所有集群的系统功能,健壮性较差,而且这种方法也不适用于各集群独立供电的场合。
另外TTP/C总线的同步功能比较复杂,集群全局时间(Global Time)的循环周期往往与集群周期(Cluster Cycle)不相关,两个集群的全局时间一致并不能说明集群间的任务同步。之前的方法在初始同步和重新同步上往往顾此失彼,同步效率低。
因此,如何提供一种适用于TTP/C总线的集群间同步效率高的技术方案成为本领域技术人员亟待解决的技术问题。
发明内容
本发明提供了一种集群间多余度同步电路、TTP/C总线系统及总线集群间同步的方法,解决相关技术中存在的集群间同步效率低的问题。
作为本发明的第一个方面,提供一种集群间多余度同步电路,其中,应用于TTP/C总线系统,所述TTP/C总线系统包括N个总线集群,每个总线集群均包括所述集群间多余度同步电路,每个所述集群间多余度同步电路均包括:
同步时间发送器,用于周期性向包括所在总线集群在内的N个总线集群发送同步时间信号,N为大于1的自然数;
同步时间接收器阵列,包括N个同步时间接收器,每个同步时间接收器均对应连接一个总线集群的同步时间发送器,且用于根据所对应连接的同步时间发送器发送的同步时间信号输出对应的诊断信号以及同步时间;
诊断信号排序模块,连接所述同步时间接收器阵列,用于接收所述同步时间接收器阵列输出的N个诊断信号,并对N个诊断信号进行排序;
同步时间排序电路,连接所述同步时间接收器阵列,用于接收所述同步时间接收器阵列输出的N个同步时间,并对N个同步时间进行排序;
同步时间更新模块,分别连接所述同步时间排序电路和同步时间发送器,能够根据所在总线集群的主机处理器的有效集群间同步时间调整所在总线集群的同步时间,其中所述主机处理器能够根据排序后的所述同步时间按照预设优先级顺序以及对应的所述诊断信号确定有效集群间同步时间。
进一步地,每个总线集群均被配置一个总线集群标识号,针对每个总线集群中的同步时间接收器阵列,其所接收到的同步时间信号与对应的该总线集群中同步时间接收器阵列所包括的N个同步时间接收器的排列顺序是以该总线集群的总线集群标识号为一端的循环移位顺序进行排序。
进一步地,所述诊断信号排序模块包括诊断信号排序电路和诊断状态寄存器,所述诊断信号排序电路与所述诊断寄存器连接,所述诊断信号排序电路连接所述同步时间接收器阵列;
所述诊断信号排序电路用于对接收到的N个诊断信号根据所述总线集群标识号的顺序进行排序,并将排序后的诊断信号输出至所述诊断寄存器;
所述诊断寄存器能够连接所在总线集群的主机处理器,所述主机处理器能够读取所述诊断寄存器中排序后的诊断信号。
进一步地,所述同步时间排序电路能够根据所述总线集群表示号的顺序对N个同步时间进行排序,且将排序后的N个同步时间输出至所述同步时间更新模块。
进一步地,所述同步时间更新模块包括同步时间选择器和同步时间发生器,所述同步时间选择器的输入端连接所述同步时间排序电路的输出端,所述同步时间选择器的输出端连接所述同步时间发生器,所述同步时间选择器和所述同步时间发生器还均用于连接所在总线集群的主机处理器;
所述同步时间选择器能够输出所述主机处理器所选择的同步时间,其中所述主机处理器能够根据所述预设优先级顺序选择所述同步时间排序电路输出的同步时间;
所述同步时间发生器能够根据所述有效集群间同步时间调整所在总线集群的同步时间,并将调整后的同步时间输出至所述同步时间发送器。
进一步地,每个同步时间接收器均能够对所接收到的同步时间信号的有效性进行诊断,并得到对应的诊断信号。
进一步地,所述每个同步时间接收器均能够对所接收到的同步时间信号的有效性进行诊断,并得到对应的诊断信号,包括:
每个同步时间接收器均能够判断所述同步时间信号中的同步时间和当前时间之间的差值是否等于固定延时时间;
若等于,则确定所述同步时间为正确同步时间;
每个同步时间接收器均能够判断当前周期接收到的所述同步时间信号与上一周期接收到的所述同步时间信号是否为连续同步时间信号;
若为连续同步时间信号,则确定当前接收到的所述同步时间信号中的同步时间为可用同步时间;
每个同步时间接收器均能够在确定所述同步时间为正确同步时间且可用同步时间时,输出该同步时间为有效同步时间的诊断信号,否则输出该同步时间为无效同步时间的诊断信号。
作为本发明的另一个方面,提供一种TTP/C总线系统,其中,包括N个总线集群,每个总线集群均包括前文所述的集群间多余度同步电路,所述集群间多余度同步电路能够实现N个总线集群间的时间同步。
作为本发明的另一个方面,提供一种通过前文所述的集群间多余度同步电路实现总线集群间同步的方法,其中,所述方法包括:
同步时间发送器周期性向包括所在总线集群在内的N个总线集群发送同步时间信号,N为大于1的自然数;
同步时间接收器阵列中的每个同步时间接收器接收对应总线集群的同步时间信号,并对所述同步时间信号进行诊断输出诊断信号;
诊断信号排序模块对同步时间接收器阵列输出的诊断信号进行排序,以及同步时间排序电路对同步时间接收器阵列输出的同步时间进行排序;
每个总线集群的主机处理器根据排序后的同步时间按照预设优先级顺序以及对应的所述诊断信号确定有效集群同步时间;
同步时间更新模块根据有效集群同步时间调整所在总线集群的同步时间。
进一步地,还包括:
每个总线集群的主机处理器在预定时间启用TTP/C网关节点的总线控制器,所述TTP/C网关节点的总线控制器能够发起所在总线集群的冷启动;
每个总线集群的主机处理器通过外部时钟纠正功能将所在总线集群的全局时间调整到与所述同步时间一致。
本发明提供的集群间多余度同步电路,能够应用在每个总线集群中,通过设置同步时间发送器以及N个同步时间接收器,其中同步时间接收器的数量与总线集群的数量相同,从而能够建立与总线集群总数相同的独立同步余度,从而能够提高系统的健壮性。另外,本发明提供的集群间多余度同步电路,由于通过诊断信号排序模块对诊断信号进行排序以及通过同步时间排序电路对同步时间进行排序,能够方便所在总线集群的主机处理器读取诊断信号以及读取同步时间,并将同步时间按照预设优先级顺序更新到同步时间更新模块,以使得同步时间更新模块根据主机处理器确定的有效集群间同步时间调整同步时间,从而能够提升集群间同步效率。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1为本发明提供的集群间多余度同步电路的结构框图。
图2为本发明提供的集群间多余度同步电路的具体实施方式结构框图。
图3为本发明提供的总线集群间同步的方法的流程图。
图4为本发明提供的3个TTP/C总线集群同步实施例的网络连接示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互结合。下面将参考附图并结合实施例来详细说明本发明。
为了使本领域技术人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包括,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本实施例中提供了一种集群间多余度同步电路,图1是根据本发明实施例提供的集群间多余度同步电路的结构框图,应用于TTP/C总线系统,所述TTP/C总线系统包括N个总线集群,每个总线集群均包括所述集群间多余度同步电路,如图1所示,每个所述集群间多余度同步电路均包括:
同步时间发送器1,用于周期性向包括所在总线集群在内的N个总线集群发送同步时间信号,N为大于1的自然数;
同步时间接收器阵列20,包括N个同步时间接收器2,每个同步时间接收器均对应连接一个总线集群的同步时间发送器,且用于根据所对应连接的同步时间发送器发送的同步时间信号输出对应的诊断信号以及同步时间;
诊断信号排序模块30,连接所述同步时间接收器阵列,用于接收所述同步时间接收器阵列输出的N个诊断信号,并对N个诊断信号进行排序;
同步时间排序电路5,连接所述同步时间接收器阵列,用于接收所述同步时间接收器阵列输出的N个同步时间,并对N个同步时间进行排序;
同步时间更新模块40,分别连接所述同步时间排序电路和同步时间发送器,能够根据所在总线集群的主机处理器的有效集群间同步时间调整所在总线集群的同步时间,其中所述主机处理器能够根据排序后的所述同步时间按照预设优先级顺序以及对应的所述诊断信号确定有效集群间同步时间。
本发明实施例提供的集群间多余度同步电路,能够应用在每个总线集群中,通过设置同步时间发送器以及N个同步时间接收器,其中同步时间接收器的数量与总线集群的数量相同,从而能够建立与总线集群总数相同的独立同步余度,从而能够提高系统的健壮性。另外,本发明提供的集群间多余度同步电路,由于通过诊断信号排序模块对诊断信号进行排序以及通过同步时间排序电路对同步时间进行排序,能够方便所在总线集群的主机处理器读取诊断信号以及读取同步时间,并将同步时间按照预设优先级顺序更新到同步时间更新模块,以使得同步时间更新模块根据主机处理器确定的有效集群间同步时间调整同步时间,从而能够提升集群间同步效率。
需要说明的是,每个总线集群均被配置一个总线集群标识号,针对每个总线集群中的同步时间接收器阵列,其所接收到的同步时间信号与对应的该总线集群中同步时间接收器阵列所包括的N个同步时间接收器的排列顺序是以该总线集群的总线集群标识号为一端的循环移位顺序进行排序。
在本发明实施例中,针对每个总线集群中的同步时间接收器阵列,其所接收到的同步时间信号与对应的该总线集群中同步时间接收器阵列所包括的N个同步时间接收器的排列顺序是以该总线集群的总线集群标识号为一端的循环移位顺序进行排序,具体可以理解为,例如,所述TTP/C总线系统中包括10个总线集群,分别对应着10个总线集群标识号由1到10,如其中一个总线集群对应的总线集群标识号为3,该总线集群中的同步时间接收器阵列包括10个同步时间接收器,10个同步时间接收器各自均能够接收到一个同步时间信号,即该总线集群中的同步时间接收器阵列所接收到的10个同步时间信号与该总线集群中同步时间接收器阵列所包括的10个同步时间接收器的排列顺序是以该总线集群的总线集群标识号3作为一端,进行循环移位,则得到的排列顺序为2、1、10、9、8、7、6、5、4、3。
还需要说明的是,本发明实施例中的发送和接收的同步时间与总线集群的全局时间的格式相同,并且精度一致。
例如,本发明实施例中,每个总线集群均有一个总线集群标识号X,其中1≤X≤N,若N=10,则表示TTP/C总线系统一共包括10个总线集群,这10个总线集群的总线集群标识号分别为1、2、3、4、5、6、7、8、9和10。以总线集群标识号X=3为例,则该总线集群中的同步时间发送器1发出的同步时间信号包括同步时间,而同步时间接收器阵列中总线集群标识号与该总线集群标识号X=3对应的同步时间接收器接收该同步时间,而同步时间接收器阵列中的其他同步时间接收器则接收与各自的总线集群标识号对应的同步时间。
如图2所示,同步时间接收器2中的总线集群标识号X对应着总线集群标识号为X的同步时间信号,同步时间接收器2中的总线集群标识号X-1对应着总线集群标识号为X-1的同步时间信号,以此类推,同步时间接收器中的总线集群标识号与同步时间信号中的总线集群标识号是相同且一一对应的。
在本发明实施例中,如图1和图2所示,所述诊断信号排序模块30包括诊断信号排序电路3和诊断状态寄存器4,所述诊断信号排序电路3与所述诊断寄存器4连接,所述诊断信号排序电路3连接所述同步时间接收器阵列;
所述诊断信号排序电路3用于对接收到的N个诊断信号根据所述总线集群标识号的顺序进行排序,并将排序后的诊断信号输出至所述诊断寄存器;
所述诊断寄存器4能够连接所在总线集群的主机处理器,所述主机处理器能够读取所述诊断寄存器中排序后的诊断信号。
应当理解的是,同步时间接收器1~N的输出诊断信号1~N至诊断信号排序电路3,诊断信号排序电路3的输出端与所述诊断寄存器4的输入端连接。
还应当理解的是,本发明实施例中,诊断信号排序电路3根据总线集群标识号的顺序进行排序可以理解为,对于集群标识号为X的同步电路,其外部输入同步时间信号1-N与对应集群间同步时间接收器1-N的排列顺序是以X为一端的循环移位顺序,例如,以前文所述的N=10为例,如当前所在的总线集群标识号X为3,则接收到其他总线集群的同步时间信号后的顺序是2、1、10、9、8、7、6、5、4、3,将上述重新排序,即按照总线集群标识号从1到N的顺序进行排序,则按照从1到N的顺序将上述顺序重新进行排序。
本发明实施例中,外部输入的同步时间信号以及对应的同步时间接收器均通过循环移位顺序的排序方式设置,能够有效提高同步电路的扩展性,使得该集群间多余度同步电路能够适用于任意余度的集群架构。
在本发明实施例中,所述同步时间排序电路5能够根据所述总线集群表示号的顺序对N个同步时间进行排序,且将排序后的N个同步时间输出至所述同步时间更新模块。
可以理解的是,所述同步时间的排序与前文所述的诊断信号的排序原理相同,也是将接收到的同步时间按照从1到N的顺序将上述顺序重新进行排序。
如图1和图2所示,所述同步时间更新模块40包括同步时间选择器6和同步时间发生器7,所述同步时间选择器6的输入端连接所述同步时间排序电路5的输出端,所述同步时间选择器6的输出端连接所述同步时间发生器7,所述同步时间选择器6和所述同步时间发生器7还均用于连接所在总线集群的主机处理器;
所述同步时间选择器6能够输出所述主机处理器所选择的同步时间,其中所述主机处理器能够根据所述主机处理器设定的所述预设优先级顺序选择所述同步时间排序电路输出的同步时间;
所述同步时间发生器7能够根据所述有效集群间同步时间调整所在总线集群的同步时间,并将调整后的同步时间输出至所述同步时间发送器。
在本发明实施例中,所述同步时间发生器7将有效集群间同步时间与发送接收固定延时时间之和更新为所在总线集群的同步时间,即在更新同步时间时还需要考虑本身的延时时间,这样才会得到精确的同步时间。
应当理解的是,对于每个总线集群所发出的同步时间可以预先设定其优先级顺序,则主机处理器在进行同步时间选择时按照预设优先级顺序,例如先选择优先级最高的同步时间,依次按照优先级由高到低的顺序选择同步时间,此处主机处理器选择的同步时间则通过所述同步时间选择器6输出。
应当理解的是,每个同步时间接收器2均能够对所接收到的同步时间信号的有效性进行诊断,并得到对应的诊断信号。
具体地,所述每个同步时间接收器均能够对所接收到的同步时间信号的有效性进行诊断,并得到对应的诊断信号,包括:
每个同步时间接收器均能够判断所述同步时间信号中的同步时间和当前时间之间的差值是否等于固定延时时间;
若等于,则确定所述同步时间为正确同步时间;
每个同步时间接收器均能够判断当前周期接收到的所述同步时间信号与上一周期接收到的所述同步时间信号是否为连续同步时间信号;
若为连续同步时间信号,则确定当前接收到的所述同步时间信号中的同步时间为可用同步时间;
每个同步时间接收器均能够在确定所述同步时间为正确同步时间且可用同步时间时,输出该同步时间为有效同步时间的诊断信号,否则输出该同步时间为无效同步时间的诊断信号。
可以理解的是,当同步时间接收器2接收到总线集群标识号与之对应的同步时间信号时,将其中的同步时间与当前时间作差,若时间差恰好等于固定延时时间,则确定当前接收到的同步时间为正确同步时间,若时间差不等于固定延时时间,则确定当前接收到的同步时间不正确。
但是即便是正确同步时间还要确定是否为连续接收到的同步时间信号中的一个同步时间,即判断在同步时间信号接收过程中是否发生了中断,如发生了中断,而当前接收到的仍然是正确同步时间,则由于发生了中断,该正确同步时间仍然是不可用的。因此,通过判断当前周期接收到的同步时间的上一周期接收到的同步时间是否为连续时间来判断中间是否发生了中断,若未发生中断,则确定当前周期接收到的同步时间为可用时间。
因此,只有当同步时间被诊断为正确同步时间且为可用时间时,才可以确定该同步时间为有效同步时间,若同步时间为不正确同步时间,或者为不可用时间,均诊断为无效同步时间。因此,每个同步时间接收器2均对各自接收到的同步时间进行有效性诊断,并输出诊断结果,即诊断信号,例如,若为有效同步时间,则诊断信号为1,若为无效,则诊断信号为0。
作为本发明的另一实施例,提供一种TTP/C总线系统,其中,包括N个总线集群,每个总线集群均包括前文所述的集群间多余度同步电路,所述集群间多余度同步电路能够实现N个总线集群间的时间同步。
本发明实施例提供的TTP/C总线系统,由于采用了前文的集群间多余度同步电路,因而提升了系统的健壮性。
作为本发明的另一实施例,提供一种通过前文所述的集群间多余度同步电路实现总线集群间同步的方法,其中,如图3所示,所述方法包括:
S110、同步时间发送器周期性向包括所在总线集群在内的N个总线集群发送同步时间信号,N为大于1的自然数;
应当理解的是,针对每个总线集群,首先启动同步时间发送器1和N个同步时间接收器2。然后,同步时间发送器1按照同步周期向包括所在总线集群在内的N个总线集群发送同步时间信号。
S120、同步时间接收器阵列中的每个同步时间接收器接收对应总线集群的同步时间信号,并对所述同步时间信号进行诊断输出诊断信号;
同步时间接收器阵列中的每个同步时间接收器接收对应集群的同步时间信号,输出同步时间1~N,同时进行诊断并输出诊断信息1~N。
S130、诊断信号排序模块对同步时间接收器阵列输出的诊断信号进行排序,以及同步时间排序电路对同步时间接收器阵列输出的同步时间进行排序;
S140、每个总线集群的主机处理器根据排序后的同步时间按照预设优先级顺序以及对应的所述诊断信号确定有效集群同步时间;
应当理解的是,所在总线集群的主机处理器读取诊断状态寄存器4中的诊断信息,并且通过集群间的主机通信得到其它集群的诊断信息。
各个集群的主机处理器根据诊断信息和预设优先级顺序通过同步时间选择器6切换到有效集群同步时间。如果当前集群同步时间的诊断结果为无效,各个总线集群的主机处理器可重新切换到其它有效集群同步时间。
S150、同步时间更新模块根据有效集群同步时间调整所在总线集群的同步时间。
当总线集群间的同步时间完成后,进行总线集群内的同步时间调整,具体地还包括:
每个总线集群的网关节点中的主机处理器在预定时间启用TTP/C网关节点的总线控制器,所述TTP/C网关节点的总线控制器能够发起所在总线集群的冷启动;
每个总线集群的主机处理器通过外部时钟纠正功能将所在总线集群的全局时间调整到与所述同步时间一致。
需要说明的是,预定时间为集群间同步时间等于集群周期整数倍的时刻。
另外,TTP/C网关节点为所在总线集群中唯一的冷启动节点,主机处理器可以通过TTP/C总线的启动时间设置功能,将预定时间与集群启动延时之和设置为总线集群的启动时间。
主机处理器可以根据集群间全局时间与同步时间的差值设置外部时钟纠正值,并通过TTP/C网关节点发送到集群内的其它节点。
下面结合图4对本发明实施例提供的总线集群间同步的方法的具体实施过程进行详细描述。
图4所示的实施例中实现了3个TTP/C总线集群的同步。TTP/C总线集群11~13分别包含10个节点,其中x1、y1、z1为各自集群的网关节点,另外9个为总线端系统节点(集群11中为x2~x10,集群12为y2~y10,集群13为z2~z10)。
网关节点中包含本发明实施例提出的集群间多余度同步电路,通过RS-485总线互连。每个集群间多余度同步电路具有1个集群间同步时间发送器(T),2个集群间同步时间接收器(R1,R2),其中网关节点自身的集群间同步时间发送器分别与另外两个网关节点的集群间同步时间接收器相连,连接关系如图4所示。
本发明的具体同步方法包括以下步骤:
1)总线系统连接与准备:按图4所示连接3个TTP/C总线集群网络,3个TTP/C总线集群采用相同的MEDL配置,每个集群中只配置网关节点为冷启动节点,其余节点不发送冷启动帧;配置集群间同步时间计数器单位与TTP/C总线控制器总线全局时间计数器的单位一致,本实施例中配置计时器为精度为1us,令MEDL中配置TTP/C总线集群周期T_cycle=25ms;
2)TTP/C总线集群网络上电工作,各总线集群中网关节点的同步时间发送器周期发送同步时间信号,同步时间接收器接收各总线集群发出的同步时间信号,主机处理器根据诊断信号和预先设定的优先级通过同步时间选择器选定有效集群间同步时间信号,以用于同步本节点的集群间同步时间(本实施例中,x1优先级最高,y1优先级其次,z1优先级最低)。正常工作时,y1与z1根据x1的同步时间信号进行同步,当x1故障时,z1根据y1的同步时间信号进行同步;
3)当网关节点检测到集群间的同步时间有效后,检查当前集群间同步时间是否满足下述条件:
t_cluster = N ∙ T_cycle, (N=1,2,3…),
其中t_cluster为集群间同步时间计数器值,T_cycle为MEDL中定义的集群周期,N为正整数。在满足条件的t_cluster时刻上,网关节点启用TTP/C总线控制器,同时将(t_cluster+t_delay)的低16位写入TTP/C总线控制器中的启动时间寄存器,其中t_delay表示从启用TTP/C总线控制器开始到第2次发出冷启动帧的延时(TTP/C总线的bigbang机制会丢弃第1帧冷启动帧);
4)TTP/C总线正常运行后,网关节点周期读取集群间同步时间计数值与集群内全局时间计数值,计算两者的偏差并确定合理的外部时钟纠正值,并将该值同时写入网关节点发送消息缓存区与外部时钟纠正寄存器;
5)其余节点读取网关节点发送的外部时钟纠正值,写入自身总线控制器的外部时钟纠正寄存器;
6)所有节点中的TTP/C总线控制器在MEDL中定义的同步时钟纠正时刻,根据TTP/C总线同步算法调整集群内的全局时间;
7)当某个TTP/C总线集群发生可恢复故障,需要重新执行集群间同步时,由网关节点发出消息令本集群中所有节点停止运行;
8)重复步骤3)~6)。
综上,本发明实施例提供的总线集群间同步的方法,采用同步时间发送器和N个同步时间接收器,建立了与总线集群总数相同的独立同步余度从而提高了健壮性。通过启动时间设置功能和外部时钟纠正功能,将预定时间与集群启动延时之和设置为集群的启动时间,提高了TTP/C总线集群间初始同步和重新同步的效率,不仅实现了集群间的时间同步,而且实现了多个集群在相同MEDL配置下的任务同步。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (7)
1.一种集群间多余度同步电路,其特征在于,应用于TTP/C总线系统,所述TTP/C总线系统包括N个总线集群,每个总线集群均包括所述集群间多余度同步电路,每个所述集群间多余度同步电路均包括:
同步时间发送器,用于周期性向包括所在总线集群在内的N个总线集群发送同步时间信号,N为大于1的自然数;
同步时间接收器阵列,包括N个同步时间接收器,每个同步时间接收器均对应连接一个总线集群的同步时间发送器,且用于根据所对应连接的同步时间发送器发送的同步时间信号输出对应的诊断信号以及同步时间;
诊断信号排序模块,连接所述同步时间接收器阵列,用于接收所述同步时间接收器阵列输出的N个诊断信号,并对N个诊断信号进行排序;
同步时间排序电路,连接所述同步时间接收器阵列,用于接收所述同步时间接收器阵列输出的N个同步时间,并对N个同步时间进行排序;
其中,每个总线集群均被配置一个总线集群标识号,针对每个总线集群中的同步时间接收器阵列,其所接收到的同步时间信号与对应的该总线集群中同步时间接收器阵列所包括的N个同步时间接收器的排列顺序是以该总线集群的总线集群标识号为一端的循环移位顺序进行排序;
同步时间更新模块,分别连接所述同步时间排序电路和同步时间发送器,能够根据所在总线集群的主机处理器的有效集群间同步时间调整所在总线集群的同步时间,其中所述主机处理器能够根据排序后的所述同步时间按照预设优先级顺序以及对应的所述诊断信号确定有效集群间同步时间;
其中,每个同步时间接收器均能够对所接收到的同步时间信号的有效性进行诊断,并得到对应的诊断信号;
其中,所述每个同步时间接收器均能够对所接收到的同步时间信号的有效性进行诊断,并得到对应的诊断信号,包括:
每个同步时间接收器均能够判断所述同步时间信号中的同步时间和当前时间之间的差值是否等于固定延时时间;
若等于,则确定所述同步时间为正确同步时间;
每个同步时间接收器均能够判断当前周期接收到的所述同步时间信号与上一周期接收到的所述同步时间信号是否为连续同步时间信号;
若为连续同步时间信号,则确定当前接收到的所述同步时间信号中的同步时间为可用同步时间;
每个同步时间接收器均能够在确定所述同步时间为正确同步时间且可用同步时间时,输出该同步时间为有效同步时间的诊断信号,否则输出该同步时间为无效同步时间的诊断信号。
2.根据权利要求1所述的集群间多余度同步电路,其特征在于,所述诊断信号排序模块包括诊断信号排序电路和诊断状态寄存器,所述诊断信号排序电路与所述诊断状态寄存器连接,所述诊断信号排序电路连接所述同步时间接收器阵列;
所述诊断信号排序电路用于对接收到的N个诊断信号根据所述总线集群标识号的顺序进行排序,并将排序后的诊断信号输出至所述诊断状态寄存器;
所述诊断状态寄存器能够连接所在总线集群的主机处理器,所述主机处理器能够读取所述诊断状态寄存器中排序后的诊断信号。
3.根据权利要求1所述的集群间多余度同步电路,其特征在于,所述同步时间排序电路能够根据所述总线集群标识号的顺序对N个同步时间进行排序,且将排序后的N个同步时间输出至所述同步时间更新模块。
4.根据权利要求1所述的集群间多余度同步电路,其特征在于,所述同步时间更新模块包括同步时间选择器和同步时间发生器,所述同步时间选择器的输入端连接所述同步时间排序电路的输出端,所述同步时间选择器的输出端连接所述同步时间发生器,所述同步时间选择器和所述同步时间发生器还均用于连接所在总线集群的主机处理器;
所述同步时间选择器能够输出所述主机处理器所选择的同步时间,其中所述主机处理器能够根据所述预设优先级顺序选择所述同步时间排序电路输出的同步时间;
所述同步时间发生器能够根据所述有效集群间同步时间调整所在总线集群的同步时间,并将调整后的同步时间输出至所述同步时间发送器。
5.一种TTP/C总线系统,其特征在于,包括N个总线集群,每个总线集群均包括权利要求1至4中任意一项所述的集群间多余度同步电路,所述集群间多余度同步电路能够实现N个总线集群间的时间同步。
6.一种通过权利要求1至4中任意一项所述的集群间多余度同步电路实现总线集群间同步的方法,其特征在于,所述方法包括:
同步时间发送器周期性向包括所在总线集群在内的N个总线集群发送同步时间信号,N为大于1的自然数;
同步时间接收器阵列中的每个同步时间接收器接收对应总线集群的同步时间信号,并对所述同步时间信号进行诊断输出诊断信号;
诊断信号排序模块对同步时间接收器阵列输出的诊断信号进行排序,以及同步时间排序电路对同步时间接收器阵列输出的同步时间进行排序;
每个总线集群的主机处理器根据排序后的同步时间按照预设优先级顺序以及对应的所述诊断信号确定有效集群同步时间;
同步时间更新模块根据有效集群同步时间调整所在总线集群的同步时间。
7.根据权利要求6所述的方法,其特征在于,还包括:
每个总线集群的网关节点中的主机处理器在预定时间启用TTP/C网关节点的总线控制器,所述TTP/C网关节点的总线控制器能够发起所在总线集群的冷启动;
每个总线集群的主机处理器通过外部时钟纠正功能将所在总线集群的全局时间调整到与所述同步时间一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111599887.7A CN114301563B (zh) | 2021-12-24 | 2021-12-24 | 集群间多余度同步电路、总线系统及集群间同步的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111599887.7A CN114301563B (zh) | 2021-12-24 | 2021-12-24 | 集群间多余度同步电路、总线系统及集群间同步的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114301563A CN114301563A (zh) | 2022-04-08 |
CN114301563B true CN114301563B (zh) | 2023-05-05 |
Family
ID=80970554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111599887.7A Active CN114301563B (zh) | 2021-12-24 | 2021-12-24 | 集群间多余度同步电路、总线系统及集群间同步的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114301563B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117580146B (zh) * | 2023-11-27 | 2024-04-19 | 威海天拓合创电子工程有限公司 | 一种伺服电机集群的控制方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108062087A (zh) * | 2017-12-19 | 2018-05-22 | 中国航发控制系统研究所 | 基于ttp/c总线的高安全性数字电子控制器架构 |
CN109707517A (zh) * | 2018-12-21 | 2019-05-03 | 中国航发控制系统研究所 | 一种控制双通道同步的方法及系统 |
WO2019154394A1 (zh) * | 2018-02-12 | 2019-08-15 | 中兴通讯股份有限公司 | 分布式数据库集群系统、数据同步方法及存储介质 |
CN110149260A (zh) * | 2019-05-09 | 2019-08-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种时间触发总线集群启动和重启方法及装置 |
CN111200473A (zh) * | 2019-12-19 | 2020-05-26 | 西安云维智联科技有限公司 | 一种基于fpga的分布式系统时钟同步控制器 |
WO2021169123A1 (zh) * | 2020-02-26 | 2021-09-02 | 平安科技(深圳)有限公司 | 集群环境定时任务处理方法、系统、装置及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8169856B2 (en) * | 2008-10-24 | 2012-05-01 | Oracle International Corporation | Time synchronization in cluster systems |
-
2021
- 2021-12-24 CN CN202111599887.7A patent/CN114301563B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108062087A (zh) * | 2017-12-19 | 2018-05-22 | 中国航发控制系统研究所 | 基于ttp/c总线的高安全性数字电子控制器架构 |
WO2019154394A1 (zh) * | 2018-02-12 | 2019-08-15 | 中兴通讯股份有限公司 | 分布式数据库集群系统、数据同步方法及存储介质 |
CN109707517A (zh) * | 2018-12-21 | 2019-05-03 | 中国航发控制系统研究所 | 一种控制双通道同步的方法及系统 |
CN110149260A (zh) * | 2019-05-09 | 2019-08-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种时间触发总线集群启动和重启方法及装置 |
CN111200473A (zh) * | 2019-12-19 | 2020-05-26 | 西安云维智联科技有限公司 | 一种基于fpga的分布式系统时钟同步控制器 |
WO2021169123A1 (zh) * | 2020-02-26 | 2021-09-02 | 平安科技(深圳)有限公司 | 集群环境定时任务处理方法、系统、装置及存储介质 |
Non-Patent Citations (4)
Title |
---|
Ke-Li Yang ; Can-Jun Wang.Coexistence of attractors and effects of noise on coupled piecewise maps.Nonlinear Dynamics.2015,第79卷(第1期),全文. * |
张宇 ; 侯学彦.高速永磁同步电机抗电源瞬变控制.电力电子技术.2019,第53卷(第010期),全文. * |
杨斌 ; 李阜东 ; .CAN总线在航空模块化综合系统中的应用.电讯技术.2009,(第05期),全文. * |
蒋文亮 ; 孙林 ; 朱银玉 ; 黄金泉 ; .ARINC659总线在航空发动机控制系统中的应用.计算机测量与控制.2015,(第09期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN114301563A (zh) | 2022-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11546088B2 (en) | Check code processing method, electronic device and storage medium | |
CN114301563B (zh) | 集群间多余度同步电路、总线系统及集群间同步的方法 | |
CN106455038A (zh) | 主节点、从节点以及同步信息自校正方法 | |
JP2001358766A (ja) | パケット通信システム、パケット通信方法、およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN114019785B (zh) | 一种多重冗余系统的数据同步方法、系统、设备以及介质 | |
CN111181678B (zh) | 一种应用于时间触发fc网络的时间同步方法 | |
CN114364010B (zh) | 同步关系建立方法、芯片、电子设备及存储介质 | |
US7162260B2 (en) | Method of managing communication network, and communication device | |
CN114124616A (zh) | 基于epa总线结构的时钟同步优化方法 | |
US5751935A (en) | Radio paging system | |
JP2000261449A (ja) | 干渉回避方法および無線パケット通信システム | |
CN114650113A (zh) | 选择时钟源的方法及装置 | |
JP3884643B2 (ja) | プロセス制御装置 | |
CN110971389B (zh) | 通信系统、发送装置、接收装置、通信方法、发送方法及接收方法 | |
CN110581745B (zh) | 对通信节点进行时间同步和频率偏差修正的方法和装置 | |
WO2001015389A1 (fr) | Procede de reglage d'horloge, dispositif de communication utilisant ce procede et systeme de communication | |
CN114546928B (zh) | 核心簇同步的方法、控制方法及设备、核心、介质 | |
JP3854549B2 (ja) | 時分割多重伝送システムおよび時分割多重伝送装置 | |
EP1150449B1 (en) | A method and apparatus for reducing data communication in an RDS TMC message environment | |
CN116032685A (zh) | 一种多终端1553b总线的通信故障处理方法及其系统 | |
US7283531B2 (en) | Enhanced recovery action in service specific connection orientation protocol | |
JP3706332B2 (ja) | プロセス制御装置 | |
JP2903282B2 (ja) | 分散情報処理システムの時刻同期処理方法 | |
CN115720122A (zh) | 一种基于软硬件协同的多时钟域切换方法 | |
JPH0447829A (ja) | 可変長パケット混在転送方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |