用于两个中央处理器时间同步的方法和存储介质转让专利

申请号 : CN202110332265.1

文献号 : CN113050752B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王吉平盖猛张鹏宋波张相田郝玉福

申请人 : 中车青岛四方车辆研究所有限公司

摘要 :

本发明涉及一种用于两个中央处理器时间同步的方法,该方法包括:第一中央处理器和第二中央处理器通过输入输出端口进行同步,得到第一中央处理器输入输出同步消耗的第一时间和所述第二中央处理器输入输出同步消耗的第二时间;第一中央处理器将第一时间通过数据通信通道传输至第二中央处理器;第二中央处理器将第二时间通过数据通信通道传输至第一中央处理器;比较第一时间与第二时间的大小:若第一时间大于第二时间,对第一中央处理器的用于执行同步纠偏任务的任务时间进行纠偏;若第二时间大于第一时间,对第二中央处理器的用于执行同步纠偏任务的任务时间进行纠偏。利用CPU同步消耗的时间,对CPU的任务时间进行纠偏,实现CPU同步处理。

权利要求 :

1.一种用于两个中央处理器时间同步的方法,其特征在于,包括:第一中央处理器和第二中央处理器通过输入输出端口进行同步,得到所述第一中央处理器输入输出同步消耗的第一时间和所述第二中央处理器输入输出同步消耗的第二时间;

所述第一中央处理器将所述第一时间通过数据通信通道传输至所述第二中央处理器;

所述第二中央处理器将所述第二时间通过数据通信通道传输至所述第一中央处理器;

比较所述第一时间与所述第二时间的大小:

若所述第一时间大于所述第二时间,对所述第一中央处理器的用于执行同步纠偏任务的任务时间进行纠偏;

若所述第二时间大于所述第一时间,对所述第二中央处理器的用于执行同步纠偏任务的任务时间进行纠偏。

2.根据权利要求1所述的方法,其特征在于,第一中央处理器和第二中央处理器通过输入输出端口进行同步,得到所述第一中央处理器输入输出同步消耗的第一时间和所述第二中央处理器输入输出同步消耗的第二时间的方法为:系统上电后,所述第一中央处理器和所述第二中央处理器分别获取第一系统时间;

所述第一中央处理器和所述第二中央处理器通过所述输入输出端口发送和接收预设值,发送和接收的所述预设值一致后,所述第一中央处理器和所述第二中央处理器分别获取第二系统时间;

根据所述第一系统时间和所述第二系统时间,所述第一中央处理器得到所述第一时间,所述第二中央处理器得到所述第二时间。

3.根据权利要求2所述的方法,其特征在于,根据所述第二系统时间与所述第一系统时间的差值,所述第一中央处理器得到所述第一时间,所述第二中央处理器得到所述第二时间。

4.根据权利要求2所述的方法,其特征在于,所述发送和接收的所述预设值不一致,或者接收预设值的时间超过预设时长时,所述第一中央处理器或者所述第二中央处理器进行安全导向。

5.根据权利要求2所述的方法,其特征在于,所述第一中央处理器设置有第一输入输出端口与设置于所述第二中央处理器的第四输入输出端口连接,所述第一中央处理器设置有第二输入输出端口与设置于所述第二中央处理器的第三输入输出端口连接;

所述第一中央处理器通过所述第一输入输出端口发送第一预设值,所述第二中央处理器通过所述第三输入输出端口发送所述第一预设值;

所述第一中央处理器从所述第二输入输出端口获取到所述第一预设值,所述第二中央处理器从所述第四输入输出端口获取到所述第一预设值后,所述第一中央处理器通过所述第一输入输出端口发送第二预设值,所述第二中央处理器通过所述第三输入输出端口发送所述第二预设值;

所述第一中央处理器从所述第二输入输出端口获取到所述第二预设值,所述第二中央处理器从所述第四输入输出端口获取到所述第二预设值。

6.根据权利要求1所述的方法,其特征在于:

所述第一时间大于所述第二时间时,对所述第一中央处理器的用于执行同步纠偏任务的任务时间进行纠偏,包括:获取所述第一时间与所述第二时间的第一差值,所述第一差值在第一预设区间范围内,所述第一中央处理器进行所述任务时间的同步;或,所述第二时间大于所述第一时间时,对所述第二中央处理器的用于执行同步纠偏任务的任务时间进行纠偏,包括:获取所述第二时间与所述第一时间的第二差值,所述第二差值在第一预设区间范围内,所述第二中央处理器进行所述任务时间的同步。

7.根据权利要求6所述的方法,其特征在于,所述任务时间的同步,包括:获取当前任务时间值;

第三差值小于所述任务时间值时,获取当前任务时间值与所述第三差值的差值,得到第四差值,将所述任务时间值设置为所述第四差值,所述第三差值大于等于所述任务时间值时,将所述任务时间值设置为0;

其中,所述第三差值包括,所述第一差值和所述第二差值。

8.根据权利要求6所述的方法,其特征在于,

所述第一差值不在所述第一预设区间范围内,且所述第一差值大于所述第一预设区间的上限,所述第一中央处理器进行安全导向;或,所述第二差值不在所述第一预设区间范围内,且所述第二差值大于所述第一预设区间的上限,所述第二中央处理器进行安全导向。

9.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1至8中任一项所述的用于两个中央处理器时间同步的方法。

说明书 :

用于两个中央处理器时间同步的方法和存储介质

技术领域

[0001] 本申请涉及时间同步技术领域,特别涉及一种用于两个中央处理器时间同步的方法和存储介质。

背景技术

[0002] 随着电子技术的迅猛发展,列车中集成的电子控制单元也越来越多,但是由于电子控制系统的自身缺陷,使得列车中集成的电子控制单元在运行过程中具有不确定性的因素,因此在系统设计时,一般采用两个中央处理器的架构搭建安全系统,降低电子失效的概率,从而降低严重危害事故的发生。为保证两个中央处理器在相同时间处理相同的任务,需要对两个中央处理器进行同步。
[0003] 在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:因两个中央处理器系统使用的中央处理器硬件和外围的时钟晶振不同,不可避免的造成晶振频偏,随着时间的推移,时间误差积累,造成两个中央处理器时间不一致,也就导致两个中央处理器不能在相同的时间执行任务,对频偏造成的积累误差,无法消除或者纠正。

发明内容

[0004] 本公开实施例提供了一种用于两个中央处理器时间同步的方法和存储介质,以在一定程度上解决现有技术中两个中央处理器时间同步纠偏能力差的技术问题。
[0005] 为了实现上述目的,本发明提供了一种用于两个中央处理器时间同步的方法,包括:
[0006] 第一中央处理器和第二中央处理器通过输入输出端口进行同步,得到所述第一中央处理器输入输出同步消耗的第一时间和所述第二中央处理器输入输出同步消耗的第二时间;
[0007] 所述第一中央处理器将所述第一时间通过数据通信通道传输至所述第二中央处理器;
[0008] 所述第二中央处理器将所述第二时间通过数据通信通道传输至所述第一中央处理器;
[0009] 比较所述第一时间与所述第二时间的大小:
[0010] 若所述第一时间大于所述第二时间,对所述第一中央处理器的用于执行同步纠偏任务的任务时间进行纠偏;
[0011] 若所述第二时间大于所述第一时间,对所述第二中央处理器的用于执行同步纠偏任务的任务时间进行纠偏。
[0012] 优选的,第一中央处理器和第二中央处理器通过输入输出端口进行同步,得到所述第一中央处理器输入输出同步消耗的第一时间和所述第二中央处理器输入输出同步消耗的第二时间的方法为:
[0013] 系统上电后,所述第一中央处理器和所述第二中央处理器分别获取第一系统时间;
[0014] 所述第一中央处理器和所述第二中央处理器通过所述输入输出端口发送和接收预设值,发送和接收的所述预设值一致后,所述第一中央处理器和所述第二中央处理器分别获取第二系统时间;
[0015] 根据所述第一系统时间和所述第二系统时间,所述第一中央处理器得到所述第一时间,所述第二中央处理器得到所述第二时间。
[0016] 优选的,根据所述第二系统时间与所述第一系统时间的差值,所述第一中央处理器得到所述第一时间,所述第二中央处理器得到所述第二时间。
[0017] 优选的,所述发送和接收的所述预设值不一致,或者接收预设值的时间超过预设时长时,所述第一中央处理器或者所述第二中央处理器进行安全导向。
[0018] 优选的,所述第一中央处理器设置有第一输入输出端口与设置于所述第二中央处理器的第四输入输出端口连接,所述第一中央处理器设置有第二输入输出端口与设置于所述第二中央处理器的第三输入输出端口连接;
[0019] 所述第一中央处理器通过所述第一输入输出端口发送第一预设值,所述第二中央处理器通过所述第三输入输出端口发送所述第一预设值;
[0020] 所述第一中央处理器从所述第二输入输出端口获取到所述第一预设值,所述第二中央处理器从所述第四输入输出端口获取到所述第一预设值后,所述第一中央处理器通过所述第一输入输出端口发送第二预设值,所述第二中央处理器通过所述第三输入输出端口发送所述第二预设值;
[0021] 所述第一中央处理器从所述第二输入输出端口获取到所述第二预设值,所述第二中央处理器从所述第四输入输出端口获取到所述第二预设值。
[0022] 优选的,所述第一时间大于所述第二时间时,对所述第一中央处理器的用于执行同步纠偏任务的任务时间进行纠偏,包括:
[0023] 获取所述第一时间与所述第二时间的第一差值,所述第一差值在第一预设区间范围内,所述第一中央处理器进行所述任务时间的同步;或,
[0024] 所述第二时间大于所述第一时间时,对所述第二中央处理器的用于执行同步纠偏任务的任务时间进行纠偏,包括:
[0025] 获取所述第二时间与所述第一时间的第二差值,所述第二差值在第一预设区间范围内,所述第二中央处理器进行所述任务时间的同步。
[0026] 优选的,所述任务时间的同步,包括:
[0027] 获取当前任务时间值;
[0028] 第三差值小于所述任务时间值时,获取当前任务时间值与所述第三差值的差值,得到第四差值,将所述任务时间值设置为所述第四差值,
[0029] 所述第三差值大于等于所述任务时间值时,将所述任务时间值设置为0;
[0030] 其中,所述第三差值包括,所述第一差值和所述第二差值。
[0031] 优选的,所述第一差值不在所述第一预设区间范围内,且所述第一差值大于所述第一预设区间的上限,所述第一中央处理器进行安全导向;或,
[0032] 所述第二差值不在所述第一预设区间范围内,且所述第二差值大于所述第一预设区间的上限,所述第二中央处理器进行安全导向。
[0033] 本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行所述的用于两个中央处理器时间同步的方法。
[0034] 与现有技术相比,本发明的优点和积极效果在于:
[0035] 本发明公开的用于两个中央处理器时间同步的方法和存储介质,采用系统时间和任务时间时间双规设计,使用系统时间作为绝对时间,计算双CPU在同步消耗的时间,使用重置任务时间的方法,消除双CPU架构系统由于时钟晶振频偏带来的积累误差,提高双CPU同步效率。同时,该同步方法简单高效,不受具体硬件影响,同步通道采用IO,具备同步高效特点,且能在异常发生时均能进入安全处理,不影响系统的安全性。

附图说明

[0036] 一个或多个实施例通过与之对应的附图进行示例性说,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
[0037] 图1是本公开实施例提供的用于两个中央处理器时间同步的方法流程示意图;
[0038] 图2是本公开实施例提供的两个中央处理器的系统结构示意图;
[0039] 图3是本公开实施例提供的系统时间和任务时间递增的流程示意图;
[0040] 图4是本公开实施林提供的系统时间和任务时间计时示意图;
[0041] 图5是本公开实施例提供的用于两个中央处理器时间同步的方法流程的另一示意图。

具体实施方式

[0042] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0043] 显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
[0044] 在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
[0045] 除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
[0046] 图1是本公开实施例提供的用于两个中央处理器时间同步的方法流程示意图。如图1所示,一种用于两个中央处理器时间同步的方法,该方法包括:第一中央处理器和第二中央处理器通过输入输出端口进行同步,得到第一中央处理器输入输出同步消耗的第一时间和所述第二中央处理器输入输出同步消耗的第二时间;第一中央处理器将第一时间通过数据通信通道传输至第二中央处理器,第二中央处理器将第二时间通过数据通信通道传输至第一中央处理器;比较第一时间与第二时间的大小:若第一时间大于第二时间,对第一中央处理器的用于执行同步纠偏任务的任务时间进行纠偏;若第二时间大于所述第一时间,对第二中央处理器的用于执行同步纠偏任务的任务时间进行纠偏。本发明根据CPU进行周期性的任务处理,对两个CPU周期性地进行任务时间的同步,两个CPU中的任一CPU均可以进行任务时间的纠偏来实现时间同步。
[0047] 图2是本公开实施例提供的两个中央处理器的系统结构示意图。如图2所示,第一CPU1与第二CPU2连接,第一CPU1与第二CPU2之间设置有数据通信通道和两路同步IO。第一CPU1设置有,第一IO端口11和第二IO端口12;第二CPU2设置有,第三IO端口23和第四IO端口24。其中,第一IO端口11与第四IO端口24连接,第二IO端口12和第三IO端口23连接,第一CPU1与第二CPU2同构或者异构,数据通信通道包括但不限于,UART、CAN、SPI、I2C、PCIE/PCI/CPCI或者是以太网等通信总线。本公开实施例所提供的方法中的两个中央处理器,可以是一个板卡中的两个中央处理器,也可以是两个板卡每个板卡设置有一个中央处理器。
[0048] 本公开实施例提供的用于两个中央处理器时间同步的方法,具有如下技术效果:利用CPU同步消耗的时间,对CPU的任务时间进行纠偏,可以在一定程度上消除两个CPU时钟晶振频偏带来的积累误差,可以解决两个CPU同步消耗时间逐步增多的问题;通过IO进行同步,数据通信通道传输时间数据,充分保留和利用了两种通道各自的特点和优势,提高了系统同步的效率;使用CPU普遍具备的IO接口和通新接口进行系统设计,其余部分均为软件设计,可移植性高,可以普遍适用于两个CPU架构的系统,具有良好的市场推广和应用价值;方法简单高效,不受具体硬件影响,同步通道采用输入输出(Input Output,简称IO),具备同步高效特点;数据通信通道可以为通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,简称UART)、串行外设接口(Serial Peripheral Interface,简称SPI)、两线式串行总线(Inter-Integrated Circuit,简称I2C)、PCIE/PCI/CPCI、以太网或者快速IO等其中的一种或者多种,适合需要进行两个中央处理器(Central Processing Unit,简称CPU)同步的安全系统。
[0049] 在一些实施例中,第一中央处理器和第二中央处理器通过输入输出端口进行同步,包括:第一中央处理器和第二中央处理器分别获取第一系统时间;第一中央处理器和第二中央处理器通过输入输出端口发送和接收预设值,发送和接收的预设值一致后,第一中央处理器和第二中央处理器分别获取第二系统时间;其中,第一中央处理器设置有第一输入输出端口与设置于第二中央处理器的第四输入输出端口连接,第一中央处理器设置有第二输入输出端口与设置于第二中央处理器的第三输入输出端口连接。这样,同步通道采用IO,可以更好地发挥其同步高效的特点。其中,系统时间sysTime,用于标记系统上电以来所经历的时间,当系统产生时钟中断时,sysTime执行加1操作。采用系统时间和任务时间的时间双规设计,用系统时间作为绝对时间,计算两个CPU在同步消耗的时间,使用重置任务时间的方法,消除两个CPU的架构系统由于时钟晶振频偏带来的积累误差,提高两个CPU的同步效率。
[0050] 在一些实施例中,发送和接收的预设值不一致,或者接收预设值的时间超过预设时长,第一中央处理器或者第二中央处理器进行安全导向。这样,可以在异常发生时进入安全处理,不影响系统的安全性。
[0051] 在一些实施例中,第一中央处理器和第二中央处理器通过输入输出端口发送和接收预设值,发送和接收的所述预设值一致,包括:第一中央处理器通过第一输入输出端口发送第一预设值,第二中央处理器通过第三输入输出端口发送第一预设值;第一中央处理器从第二输入输出端口获取到第一预设值,第二中央处理器从第四输入输出端口获取到第一预设值后,第一中央处理器通过第一输入输出端口发送第二预设值,第二中央处理器通过第三输入输出端口发送第二预设值;第一中央处理器从第二输入输出端口获取到第二预设值,第二中央处理器从第四输入输出端口获取到第二预设值。采用两次IO同步确认,可以保证两个CPU同步的有效性。
[0052] 在一些实施例中,根据第一系统时间和第二系统时间,第一中央处理器得到第一时间,第二中央处理器得到第二时间。其中,第一时间为第一CPU的第二系统时间减去第一系统时间得到。第二时间为第二CPU的第二系统时间减去第一系统时间得到。
[0053] 在一些实施例中,在第一时间大于第二时间时,通过获取第一时间与第二时间的第一差值,第一差值在第一预设区间范围内,第一中央处理器进行任务时间的同步;或,第二时间大于第一时间时,通过获取第二时间与第一时间的第二差值,第二差值在第一预设区间范围内,第二中央处理器进行任务时间的同步。其中,任务时间taskTime,用于标记系统任务执行的时间,当系统产生时钟中断时,taskTime执行加1操作。
[0054] 图3是本公开实施例提供的系统时间和任务时间递增的流程示意图。如图3所示,当系统产生时钟中断时,系统时间与任务时间均执行加1操作。
[0055] 图4是本公开实施林提供的系统时间和任务时间计时示意图。如图4所示,系统时间为系统上电开始一直记录,图中每个黑点标识一次时钟中断,每产生一次中断,sysTime加1,自周期任务开始,每产生一次中断任务时间加1,直至任务时间等于任务周期时间后,任务时间清零,开始下一周期任务的执行。
[0056] 在一些实施例中,任务时间的同步,包括:获取当前任务时间值;第三差值小于任务时间值时,获取当前任务时间值与第三差值的差值,得到第四差值,将任务时间值设置为第四差值,第三差值大于等于任务时间值时,将任务时间值设置为0;其中,第三差值包括,第一差值和第二差值。具体而言,第一差值小于任务时间值时,获取当前任务时间值与第一差值的差值,得到第四差值,将任务时间值设置为第四差值,第一差值大于等于任务时间值时,将任务时间值设置为0;第二差值小于任务时间值时,获取当前任务时间值与第二差值的差值,得到第四差值,将任务时间值设置为第四差值,第二差值大于等于任务时间值时,将任务时间值设置为0。
[0057] 在一些实施例中,第一差值不在第一预设区间范围内,且第一差值大于第一预设区间的上限,第一中央处理器进行安全导向;或,第二差值不在第一预设区间范围内,且第二差值大于第一预设区间的上限,第二中央处理器进行安全导向。
[0058] 图5是本公开实施例提供的用于两个中央处理器时间同步的方法流程的另一示意图。如图5所示,
[0059] S501:获取第一系统时间syncStartTime,包括,第一CPU1和第二CPU2分别获取syncStartTime;
[0060] S502:第一IO端口11设置为1,第三IO端口233设置为1;
[0061] S503:第一CPU1检测第二IO端口12是否为1,第二CPU2检测第四IO端口24是否为1;其中,检测到存在一个端口不为1,且等待直至超过等待时间,进行安全导向进入故障状态;
其中,检测到端口均为1时,进入S504;
[0062] S504:第一IO端口11设置为0,第三IO端口233设置为0;
[0063] S505:第一CPU1检测第二IO端口12是否为0,第二CPU2检测第四IO端口24是否为0;其中,检测到存在一个端口不为1,且等待直至超过等待时间,进行安全导向进入故障状态;
其中,检测到端口均为1时,进入S506;
[0064] S506:获取第二系统时间syncEndTime,包括,第一CPU1和第二CPU2分别获取syncEndTime;
[0065] S507:同步的消耗时间syncTakeTimes=syncEndTime‑syncStartTime,可以得到第一CPU1输入输出同步的第一时间和第二CPU2输入输出同步的第二时间;
[0066] S508:发送syncTakeTimes,即,发送S507得到的第一时间和第二时间,包括:第一CPU1按照EN50159标准,将第一时间打包成安全数据,按照序号、长度、第一时间和CRC32进行编码,通过数据通信通道将打包后的数据发送至第二CPU2;第二CPU2按照EN50159标准,将第二时间打包成安全数据,按照序号、长度、第二时间和CRC32进行编码,通过数据通信通道将打包后的数据发送至第一CPU1;
[0067] S509:通过数据通信通道接收时间数据,包括:第一CPU1接收第二时间,并进行校验,如果校验正确,第一CPU1将第二时间标记为mateSyncTakeTimes;第二CPU2接收第一时间,并进行校验,如果校验正确,第二CPU2将第一时间标记为mateSyncTakeTimes;
[0068] S510:判断同步消耗的时间syncTakeTimes是否大于标记的mateSyncTakeTimes;大于时,第一CPU1比较第一时间和接收的第二时间,得到第一差值difTimes1=第一时间‑第二时间,第二CPU2比较第二时间和接收的第一时间,得到第二差值difTimes2=第二时间‑第一时间;其他情况,不进行时间同步;
[0069] S511:判断lowThrshd<=difTimes<=upThrshd,第三差值difTimes是否在预设区间范围内,预设区间范围为[lowThrshd,upThrshd],若在进行任务时间同步进入S512,若第三差值大于upThrshd则进行安全导向,若第三差值小于lowThrshd,结束;
[0070] S512:获取当前任务时间curTaskTime,判断第三差值是否大于等于curTaskTime,若是,将任务时间taskTime设置为0,若否,任务时间taskTime=curTaskTime‑difTimes,结束。
[0071] 本公开实施例还提供了一种存储介质,存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时使处理器执行前述的用于两个中央处理器时间同步的方法。
[0072] 本公开实施例提供的用于两个中央处理器时间同步的方法和存储介质,第一CPU和第二CPU使用IO进行同步,同时计算同步消耗的第一时间和第二时间,然后通过数据通信通道将得到的同步时间传输至对方,分别进行同步时间的比较,如果相同,则说明第一CPU和第二CPU时钟同步,不需要同步,如果本CPU的同步时间大于对方CPU时间,说明本CPU比对方CPU时钟快,需要进行任务时间的纠偏,纠正值为本CPU的同步时间减去对方CPU的同步时间。具有精度高、操作性高,能够自动纠偏,不依赖具体的硬件,适合具有两个CPU架构的安全系统。
[0073] 前述内容,仅是本发明的较佳实施例,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例应用于其他领域,但是,凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。