Atp车载设备中的数据同步方法与装置制造方法

文档序号:6552325阅读:161来源:国知局
Atp车载设备中的数据同步方法与装置制造方法
【专利摘要】本发明公开了一种ATP车载设备中的数据同步方法与装置,该数据同步方法包括:预先设定各个任务的开始执行时间与执行时间长度;两个处理器中的定时器分别开始计时,各自根据定时器的累计时间值判断是否已达到某一任务的开始执行时间;若否,则继续判断累计时间值是否已达到下一个任务的开始执行时间;若是,则判断是否满足所述任务的执行条件,若否,则提示异常,进行异常处理,若是,则各自执行所述任务,同时两个处理器之间进行数据同步。能够在无操作系统的处理器平台上,利用定时器分时执行多个任务来实现任务调度,从而实现ATP车载设备中的数据同步,从而保证了ATP车载设备的安全架构,保证了ATP车载设备输出的数据的安全可靠。
【专利说明】ATP车载设备中的数据同步方法与装置

【技术领域】
[0001]本发明涉及铁路信号领域,特别涉及一种ATP车载设备中的数据同步方法与装置。

【背景技术】
[0002]在铁路信号领域,ATP车载设备主要有三取二冗余与二取二冗余两种方式,前一种方式是欧洲铁路信号系统安全计算机技术的主流,后一种方式在日本铁路信号系统得到了广泛的应用。这两种冗余方法能够使得单个故障或错误被及时发现并得到处理,保证整个系统的安全性。目前在高端的处理器平台上,大都是基于专用的硬件平台和认证的操作系统实现上述两种冗余方法;而在低端的处理器平台上,则是基于硬件握手或者通信握手的机制来实现上述两种冗余方法。
[0003]但是使用专用的硬件平台和认证的操作系统,研发成本高,技术难度较大,开发周期相对较长;而使用低端处理器平台,使用硬件握手或通信握手的机制,任务较多时,等待时间较多,且周期不容易严格控制。


【发明内容】

[0004]针对上述不足,本发明提供了一种ATP车载设备中的数据同步方法与装置,能够在无操作系统的处理器平台上实现数据的同步比较,从而保证ATP车载设备二取二的安全架构。
[0005]一种ATP车载设备中的数据同步方法,包括:
预先设定各个任务的开始执行时间与执行时间长度;
两个处理器中的定时器分别开始计时,各自根据定时器的累计时间值判断是否已达到某一任务的开始执行时间;
若否,则继续判断累计时间值是否已达到下一个任务的开始执行时间;
若是,则判断是否满足所述任务的执行条件,若否,则提示异常,进行异常处理,若是,则各自执行所述任务,同时两个处理器之间进行数据同步。
[0006]一种ATP车载设备中的数据同步装置,该数据同步装置包括两个处理器,且两个处理器分别都包括:
定时模块,用于计时;
时间判断模块,用于判断所述定时模块的累计时间值判断是否已达到某一任务的开始执行时间;
条件判断模块,用于判断是否满足所述任务的执行条件;
任务执行同步模块,用于执行所述任务,同时两个处理器之间进行数据同步。
[0007]本发明的有益效果在于:本发明提供了一种ATP车载设备中的数据同步方法与装置,能够在无操作系统的处理器平台上,利用定时器分时执行多个任务来实现任务调度,从而实现ATP车载设备中的数据同步,从而保证了 ATP车载设备的安全架构,保证了 ATP车载设备输出的数据的安全可靠。
[0008]

【专利附图】

【附图说明】
[0009]图1为本发明实施例一提供的ATP车载设备中的数据同步方法的流程图;
图2为本发明实施例一提供的ATP车载设备中的数据同步方法中其中一个处理器的任务循环执行图;
图3为本发明实施例一提供的ATP车载设备中的数据同步方法中两个处理器的数据同步图;
图4为本发明实施例二提供的ATP车载设备的数据同步装置的结构图;
图5为本发明实施例二提供的ATP车载设备的数据同步装置的详细结构图。

【具体实施方式】
[0010]为使本发明的目的、技术方案和优点更加清楚明确,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明主要用于解释本发明,但并不作为对本发明的限定。
[0011]实施例一
本发明实施例一提供了一种ATP车载设备中的数据同步方法,本发明中实现了在ATP车载设备不采用操作系统的情况下对ATP车载设备中的数据进行比较与同步,从而保证了ATP车载设备输出数据的安全可靠。如图1所示,该数据同步方法包括:
S1:预先设定各个任务的开始执行时间与执行时间长度;
在本发明实施例中,预先对需要执行的每个任务进行评估,从而设定各个任务的开始执行时间与执行时间长度,再分时执行各个任务。
[0012]S2:两个处理器中的定时器分别开始计时,各自根据定时器的累计时间值判断是否已达到某一任务的开始执行时间;若否,则返回步骤S2继续判断累计时间值是否已达到其下一个任务的开始执行时间,若是,则执行步骤S3 ;
例如本发明实施例中共有任务1、任务2、任务3三个任务需要执行,在对上述三个任务进行评估之后分别设置其开始执行时间与执行时间长度;在工作之后三个任务分时循环执行,如定时器开始计时后,首先判断定时器的累计时间值是否达到任务I的开始执行时间,若没是,则判断是否达到任务2的开始执行时间,如此循环反复。
[0013]S3:两个处理器各自判断是否满足上述任务的执行条件,若否,则提示异常,进行异常处理,若是,则执行步骤S4 ;
在本发明实施例中,处理器中设置有任务状态标志位,判断是否满足任务的执行条件的操作具体为:
读取任务状态标志位的当前标志;
判断读取到的当前标志是否为上一个任务的任务结束标志,若否,则说明上一个任务执行超时,提示异常,若是,则说明满足上述任务的执行条件。
[0014]S4:两个处理器各自执行上述任务,同时两个处理器之间进行数据同步。
[0015]在本发明实施例的步骤S4中,在两个处理器各自执行任务过程中,该方法还包括:
在任务开始执行时,将任务状态标志位设置为所述任务正在执行标志;
在任务执行完成时,将所述任务状态标志位设置为所述任务已执行完成标志。
[0016]进一步的,两个处理器之间进行数据同步具体包括对本地输入数据的同步,对中间处理数据的同步以及对输出数据的同步;其中两个处理器进行输出数据同步的操作具体为:两个处理器各自比较接收到的输出数据与自己的输出数据是否一致;若一致,则对输出数据中包含的时间戳进行同步,并输出上述输出数据。
[0017]另外,该ATP车载设备中的数据同步方法还包括:由于上述定时器计时与任务的执行是独立的,因此在任务的执行过程中定时器仍在计时,同时根据定时器的当前累计时间值判断是否已达到下一个任务的开始执行时间。
[0018]因此,本发明实施例提供的ATP车载设备中的数据同步方法能够在无操作系统的处理器平台上,利用定时器分时执行多个任务来实现任务调度,从而实现ATP车载设备中的数据同步,从而保证了 ATP车载设备的安全架构,保证了 ATP车载设备输出的数据的安全可靠。
[0019]具体的,在本发明实施例中,以每一个处理器中有三个任务为例进行说明,预先设置这三个任务的开始执行时间与分时执行时间长度,然后三个任务分时循环执行,且在任务执行过程中两个处理器进行数据的同步,如图2所示,现仅以其中一个处理器进行详细描述:
步骤201:定时器开始计时;
步骤202:时刻对定时器的当前累计时间值进行判断,判断其是否已达到任务I的开始时间,若是,则执行步骤203,若否,则执行步骤205 ;
步骤203:判断是否满足执行任务I的条件,若是,则执行步骤204,否则进行异常处理;
其中,判断是否满足执行任务I的条件具体为:读取任务状态标志位的当前标志,判断读取到的当前标志是否为上一个任务的任务结束标志,若是,则说明满足执行任务I的条件;具体的,在本发明实施例中则是判断读取到的当前标志是否为任务3的任务结束标志,若是,则满足执行任务I的条件。
[0020]步骤204:执行任务1,与另一个处理器之间进行数据同步;
在本发明实施例中,预先设定好各个任务的开始执行时间与执行时间长度,且两个处理器中各有一个定时器,其同时开始计时,当达到任务I的开始执行时间且满足执行任务I的条件时,两个处理器均开始执行任务1,此时两个处理器之间进行数据同步,从而可以使得单个的故障或错误能够被及时发现,提高了 ATP车载设备输出的数据的安全性。
[0021]步骤205:判断定时器的当前累计时间值是否已达到任务2的开始时间,若是,则执行步骤206,若否,则执行步骤208 ;
步骤206:判断是否满足执行任务2的条件,若是,则执行步骤207,否则进行异常处理;
其中,判断是否满足执行任务2的条件具体为:读取任务状态标志位的当前标志;判断读取到的当前标志是否为上一个任务的任务结束标志,即判断读取到的当前标志是否为任务I的任务结束标志,若是,则说明满足执行任务2的条件。
[0022]步骤207:执行任务2,与另一个处理器之间进行数据同步;
其中在执行任务2时两个处理器之间进行数据同步的操作与在执行任务I时两个处理器之间进行数据同步的操作相同,都是可以使得单个的故障或错误能够被及时发现,提高了 ATP车载设备输出的数据的安全性。
[0023]步骤208:判断定时器的当前累计时间值是否已达到任务3的开始时间,若是,则执行步骤209,若否,则返回执行步骤202,循环操作;
步骤209:判断是否满足执行任务3的条件,若是,则执行步骤210,否则进行异常处理;
其中,判断是否满足执行任务3的条件具体为:读取任务状态标志位的当前标志;判断读取到的当前标志是否为上一个任务的任务结束标志,即判断读取到的当前标志是否为任务2的任务结束标志,若是,则说明满足执行任务3的条件。
[0024]步骤210:执行任务3,与另一个处理器之间进行数据同步。
[0025]其中在执行任务3时两个处理器之间进行数据同步的操作与在执行任务1、任务2时两个处理器之间进行数据同步的操作相同,都是可以使得单个的故障或错误能够被及时发现,提高了 ATP车载设备输出的数据的安全性。
[0026]并且,在本发明实施例中,在任何一个任务开始执行任务时以及在任务执行完成之后都需要对任务状态标志位进行设置,在某个任务开始执行时,则将任务状态标志位设置为其正在执行标志,相应的,在某个任务执行完成时,则将上述任务状态标志位设置为其已执行完成标志;如在步骤207中,在开始执行任务2时,则需要将任务状态标志位设置为任务2正在执行标志,当任务2执行完成后,则需要将上述任务状态标志位设置为任务2已执打完成标志。
[0027]在本发明实施例中,定时器计时与处理器中任务的执行是相互独立的,定时器从开始计时开始则时刻判断其当前累计时间值是否已达到某一任务的开始执行时间,即使在任务的执行过程中;例如在执行步骤204、步骤207、步骤210的同时也在对定时器的当前累计时间值进行判断,若达到某一任务的开始执行时间时,则继续判断是否满足其执行条件,而由于此时有其他任务正在执行,则说明不满足其执行条件,且正在执行的任务已超时,此时则进行异常处理操作,从而保证该ATP车载设备输出的数据的安全性。
[0028]进一步的,在本发明实施例中,各个任务在执行过程中进行数据同步的操作都相类似,如上所述的,在执行任务1、任务2、任务3的过程中,两个处理器之间都会进行数据同步,下面仅以在任务I的执行过程中两个处理器之间进行数据同步的流程为例进行说明,如图3所示,该数据同步操作具体为:
步骤301:两个处理器之间互相发送本地输入数据;
步骤302:各自判断数据是否发送完毕且是否已完成对另一处理器发送的本地输入数据的接收,若是,则执行步骤303,否则进行异常处理;
在发明实施例步骤302中,处理器在发送本地输入数据之后等待预设的第一时间,然后再判断数据是否已发送完毕且是否已完成对另一处理器发送的本地输入数据的接收,若此时仍未接收完成,则说明出现异常,设置异常标志并结束当前操作,避免了出现异常时还一直等待,从而节省了操作时间,或者避免过早进行判断从而出现错误。
[0029]步骤303:比较接收到的本地输入数据与自己的本地输入数据是否一致,若一致,执行步骤304,否则进行异常处理;
在本发明实施例中,由于ATP车载设备中的两个处理器通过定时器中断来实现任务的调度,从而实现两个处理器中任务的同步,因此若当两个处理器比较数据一致时,则说明数据是同步的,具有安全性,可进行下一步操作,否则说明出现故障,进行异常处理。
[0030]步骤304:两个处理器之间互相发送中间处理数据;
步骤305:各自判断中间处理数据是否发送完毕且是否已完成对另一处理器发送的中间处理数据的接收,若是,则执行步骤306,否则进行异常处理;
在发明实施例步骤305中,处理器在发送中间处理数据之后需要等待的时间为预设的第二时间,然后再进行比较。
[0031]步骤306:比较接收到的中间处理数据与自己的中间处理数据是否一致,若一致,执行步骤307,否则进行异常处理;
步骤307:两个处理器之间互相发送包含有时间戳的输出数据;
步骤308:各自判断输出数据是否发送完毕且是否已完成对另一处理器发送的输出数据的接收,若是,则执行步骤409,否则进行异常处理;
在发明实施例步骤308中,处理器在发送输出数据之后需要等待的时间为预设的第三时间,然后再进行比较。
[0032]步骤309:比较接收到的输出数据与自己的输出数据是否一致,若一致,则对输出数据中包含的时间戳进行同步,并输出输出数据,否则进行异常处理。
[0033]在本发明实施例中,通过利用定时器分时执行多个任务以及循环操作来实现任务调度,从而能够在无操作系统的处理器平台上实现ATP车载设备中的数据同步,从而保证了 ATP车载设备的安全架构,保证了 ATP车载设备输出的数据的安全可靠。
[0034]实施例二
本发明实施例还提供了一种ATP车载设备的数据同步装置,该数据同步装置包含两个处理器,两个处理器在无操作系统的情况下通过定时器中断来实现任务的调度,从而实现两个处理器之间的数据同步,从而保证ATP车载设备输出的数据的安全可靠。具体的,如图4所示,两个处理器之间使用DMA通道配合McBSP接口来实现通信,进行数据的同步。
[0035]进一步的,如图5所示,该数据同步装置中的两个处理器分别包括定时模块、时间判断模块、条件判断模块与任务执行同步模块;其中,
定时模块,用于计时;
时间判断模块,用于判断所述定时模块的累计时间值判断是否已达到某一任务的开始执行时间;
条件判断模块,用于判断是否满足所述任务的执行条件;
任务执行同步模块,用于执行所述任务,同时两个处理器之间进行数据同步。
[0036]具体的,在本发明实施例中,该条件判断模块还包括读取单元与判断单元;其中读取单元用于读取任务状态标志位的当前标志;判断单元用于判断上述读取到的当前标志是否为上一个任务的任务结束标志。
[0037]并且,本发明实施例中的ATP车载设备的数据同步装置中的两个处理器分别还都包括设置模块,用于在任务开始执行时将任务状态标志位设置为上述任务正在执行标志;以及还用于在任务执行完成时将所述任务状态标志位设置为上述任务已执行完成标志。
[0038]具体的,任务执行同步模块还包括:
比较单元,用于比较接收到的输出数据与自己的输出数据是否一致;
时间戳同步单元,用于当上述比较单元得到接收到的输出数据与自己的输出数据一致时,对输出数据中包含的时间戳进行同步;
输出单元,用于当上述比较单元得到接收到的输出数据与自己的输出数据一致时输出所述输出数据。
[0039]本发明请求保护的ATP车载设备的数据同步方法与装置通过利用定时器分时执行多个任务以及循环操作来实现任务调度,从而能够在无操作系统的处理器平台上实现ATP车载设备中的数据同步,从而保证了 ATP车载设备的安全架构,保证了 ATP车载设备输出的数据的安全可靠。
[0040]总之,以上所述仅为本发明技术方案的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种ATP车载设备中的数据同步方法,其特征在于,所述数据同步方法包括: 预先设定各个任务的开始执行时间与执行时间长度; 两个处理器中的定时器分别开始计时,各自根据定时器的累计时间值判断是否已达到某一任务的开始执行时间; 若否,则继续判断累计时间值是否已达到下一个任务的开始执行时间; 若是,则判断是否满足所述任务的执行条件,若否,则提示异常,进行异常处理,若是,则各自执行所述任务,同时两个处理器之间进行数据同步。
2.如权利要求1所述的数据同步方法,其特征在于,所述判断是否满足任务的执行条件的操作具体为: 读取任务状态标志位的当前标志; 判断所述读取到的当前标志是否为上一个任务的任务结束标志,若是,则说明满足所述任务的执行条件。
3.如权利要求1所述的数据同步方法,其特征在于,所述执行任务过程中,所述方法还包括: 在任务开始执行时,将任务状态标志位设置为所述任务正在执行标志; 在任务执行完成时,将所述任务状态标志位设置为所述任务已执行完成标志。
4.如权利要求1所述的数据同步方法,其特征在于,所述两个处理器之间进行数据同步具体包括本地输入数据的同步、中间处理数据的同步以及输出数据的同步。
5.如权利要求4所述的数据同步方法,其特征在于,所述两个处理器进行输出数据同步的操作具体为: 两个处理器各自比较接收到的输出数据与自己的输出数据是否一致; 若一致,则对输出数据中包含的时间戳进行同步,并输出所述输出数据。
6.如权利要求1所述的数据同步方法,其特征在于,所述方法还包括:所述定时器计时与任务的执行是独立的,在任务的执行过程中定时器仍在计时,同时根据定时器的当前累计时间值判断是否已达到下一个任务的开始执行时间。
7.—种ATP车载设备中的数据同步装置,其特征在于,所述数据同步装置包括两个处理器,且所述两个处理器分别都包括: 定时模块,用于计时; 时间判断模块,用于判断所述定时模块的累计时间值判断是否已达到某一任务的开始执行时间; 条件判断模块,用于判断是否满足所述任务的执行条件; 任务执行同步模块,用于执行所述任务,同时两个处理器之间进行数据同步。
8.如权利要求7所述的数据同步装置,其特征在于,所述条件判断模块还包括读取单元与判断单元;所述读取单元用于读取任务状态标志位的当前标志;所述判断单元用于判断所述读取到的当前标志是否为上一个任务的任务结束标志。
9.如权利要求7所述的数据同步装置,其特征在于,所述两个处理器分别还都包括设置模块,用于在任务开始执行时将任务状态标志位设置为所述任务正在执行标志;以及还用于在任务执行完成时将所述任务状态标志位设置为所述任务已执行完成标志。
10.如权利要求7所述的数据同步装置,其特征在于,所述任务执行同步模块还包括: 比较单元,用于比较接收到的输出数据与自己的输出数据是否一致; 时间戳同步单元,用于当所述比较单元得到接收到的输出数据与自己的输出数据一致时,对输出数据中包含的时间戳进行同步; 输出单元,用于当所述比较单元得到接收到的输出数据与自己的输出数据一致时输出所述输出数据。
【文档编号】G06F9/48GK104133805SQ201410318023
【公开日】2014年11月5日 申请日期:2014年7月7日 优先权日:2014年7月7日
【发明者】汤炳辉, 刘中田 申请人:北京交大思诺科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1