掌桥专利:专业的专利平台
掌桥专利
首页

针对不同CPU上的数据进行交叉校验方法、设备及介质

文献发布时间:2023-06-19 19:30:30


针对不同CPU上的数据进行交叉校验方法、设备及介质

技术领域

本发明涉及列车信号控制系统,尤其是涉及一种针对不同CPU上的数据进行交叉校验方法、设备及介质。

背景技术

随着我国社会经济的不断发展,对铁路运输的需求也不断增高。CTCS-2级列控系统是目前国内应用较为广泛的列车控制系统。其中,列控中心设备作为CTCS-2级列控系统的重要组成部分,也是地面安全设备的核心,对列车运行的平稳性、安全性起到了至关重要的作用。

LKD2-KA型列控中心的逻辑功能运算通过逻辑运算板卡VLE实现,每个VLE板卡上由两个不同的CPU组成,通过这两个不同的CPU实现2取2安全功能。不同的CPU上执行的软件程序和运行的应用数据各不相同。LKD2-KA型列控中心按照软件和数据分离进行系统架构设计,软件为各种应用场景通用,数据根据不同应用场景可独立配置生成,这对数据安全性和正确性就提出了很高的要求。

因此如何来避免由于数据错误导致系统功能执行异常,从而影响设备现场运行的安全性,成为需要解决的技术问题。

发明内容

本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种针对不同CPU上的数据进行交叉校验方法、设备及介质。

本发明的目的可以通过以下技术方案来实现:

根据本发明的第一方面,提供了一种针对不同CPU上的数据进行交叉校验方法,该方法在列控中心上电启动后,将内存中的软件镜像和数据读入,读入后对数据进行校验,其中校验包括CPU内的数据可靠性检查以及CPU间的数据可靠性交叉检查。

作为优选的技术方案,每个车站所述的数据由列控数据准备工具进行生成,生成两个二进制文件info1.dat和info2.dat。

作为优选的技术方案,所述二进制文件中分别生成一个二进制文件的32位CRC和另一个二进制文件的32位CRC并保存至指定内存区。

作为优选的技术方案,所述二进制文件info1.dat和info2.dat分别写入两个不同的CPU中,即分别写入CPU1和CPU2中。

作为优选的技术方案,所述方法具体包括以下步骤:

步骤S1、列控中心上电启动,逻辑运算板卡VLE上电,CPU进入自检;

步骤S2、VLE板卡的CPU自检成功后,开始读取数据;

步骤S3、数据读取成功后,针对每个CPU进行本CPU的数据有效性和完整性检查;

步骤S4、当本CPU数据校验成功后,将本CPU计算的二进制数据CRC32通过共享内存区发送至另一个CPU,由另一个CPU对该CRC32继续进行校验,若数据校验失败,系统进行记录,CPU重启;

步骤S5、校验成功后,CPU进行正常运行状态,且每个运行周期均重复执行步骤S3和步骤S4,对数据的有效性进行周期校验。

作为优选的技术方案,所述步骤S3具体为:

CPU在线计算本CPU内数据的CRC32之后与数据中存放的CRC32进行比较,比较通过后认为数据正常,本CPU可继续运行,否则认为数据校验失败,系统进行记录,CPU重启。

根据本发明的第二方面,提供了一种针对不同CPU上的数据进行交叉校验装置,包括:

自检模块,用于列控中心上电启动,逻辑运算板卡VLE上电,CPU进入自检;

数据读取模块,用于在VLE板卡的CPU自检成功后,开始读取数据;

CPU内数据可靠性检查模块,用于在数据读取成功后,针对每个CPU进行本CPU的数据有效性和完整性检查;

CPU间数据可靠性交叉检查模块,用于当本CPU数据校验成功后,将本CPU计算的二进制数据CRC32通过共享内存区发送至另一个CPU,由另一个CPU对该CRC32继续进行校验,若数据校验失败,系统进行记录,CPU重启;

周期性校验模块,用于校验成功后,CPU进行正常运行状态,且每个运行周期均数据的有效性进行周期校验。

作为优选的技术方案,所述CPU内数据可靠性检查模块具体工作过程如下:

CPU在线计算本CPU内数据的CRC32之后与数据中存放的CRC32进行比较,比较通过后认为数据正常,本CPU可继续运行,否则认为数据校验失败,系统进行记录,CPU重启。

作为优选的技术方案,所述CPU内数据可靠性检查模块所校验的数据通过列控数据准备工具生成。

作为优选的技术方案,将所述数据的32位CRC按照指定内存区生成。

根据本发明的第三方面,提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现所述的方法。

根据本发明的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现所述的方法。

与现有技术相比,本发明具有以下优点:

1.本发明列控中心的2取2安全处理不仅在双CPU的软件上,双CPU的运行数据上也进行了区分,消除了数据共模的隐患;

2.本发明针对数据的有效性和完整性校验,不仅体现在每个CPU的内部处理,CPU间也进行周期性检查,对于数据的可靠性进行多层次防护校验;

3.工程项目实施阶段可以直观地观察到因数据错误而导致的系统无法正常运行的问题,避免由于数据制作过程中存在的缺陷,从而输出至车站现场影响实际运营。

附图说明

图1为本发明方法的流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。

本发明专利提出了一种针对不同CPU上的数据进行交叉可靠性校验的方法,避免由于数据错误导致系统功能执行异常,从而影响设备现场运行的安全性。

列控中心上电启动,将内存中的软件镜像和数据读入,读入后对数据进行校验,校验包括CPU内的数据可靠性检查以及CPU间的数据可靠性交叉检查。

每个车站的数据由列控数据准备工具进行生成,生成两个二进制文件info1.dat和info2.dat,二进制文件中分别生成本二进制文件的32位CRC和另一个二进制文件的32位CRC保存至指定内存区,二进制文件info1.dat和info2.dat分别写入两个不同的CPU中,即分别写入CPU1和CPU2中。

参考图1展示了该方法的具体处理流程。该方法包括以下步骤:

步骤S1、列控中心上电启动,逻辑运算板卡VLE上电,CPU进入自检;

步骤S2、VLE板卡的CPU自检成功后,开始读取数据;

步骤S3、数据读取成功后,针对每个CPU进行本CPU的数据有效性和完整性检查。比较通过后认为数据正常,本CPU可继续运行,否则认为数据校验失败,系统进行记录,CPU重启;

步骤S4、当本CPU数据校验成功后,将本CPU计算的二进制数据CRC32通过共享内存区发送至另一个CPU,由另一个CPU对该CRC32继续进行校验,若数据校验失败,系统进行记录,CPU重启;

步骤S5、校验成功后,CPU进行正常运行状态,且每个运行周期均重复执行步骤S3和步骤S4,对数据的有效性进行周期校验。

整体处理流程包括数据生成,CRC32存储、数据读取、CRC32有效性检查、周期性检查、错误数据记录以及CPU重启。主要实现代码如下:

/>

/>

本发明提出了一种针对不同CPU上的数据进行交叉可靠性校验的方法,避免由于数据错误导致系统功能执行异常,从而影响设备现场运行的安全性。基于此方法,工程项目实验室调试阶段可以直观地观察到因数据错误而导致的系统无法正常运行的问题,避免由于数据制作过程中存在的缺陷,从而输出至车站现场影响实际运营。

以上是关于方法实施例的介绍,以下通过装置实施例,对本发明所述方案进行进一步说明。

本发明还提供针对不同CPU上的数据进行交叉校验装置,包括:

自检模块,用于列控中心上电启动,逻辑运算板卡VLE上电,CPU进入自检;

数据读取模块,用于在VLE板卡的CPU自检成功后,开始读取数据;

CPU内数据可靠性检查模块,用于在数据读取成功后,针对每个CPU进行本CPU的数据有效性和完整性检查;

CPU间数据可靠性交叉检查模块,用于当本CPU数据校验成功后,将本CPU计算的二进制数据CRC32通过共享内存区发送至另一个CPU,由另一个CPU对该CRC32继续进行校验,若数据校验失败,系统进行记录,CPU重启;

周期性校验模块,用于校验成功后,CPU进行正常运行状态,且每个运行周期均数据的有效性进行周期校验。

所述CPU内数据可靠性检查模块具体工作过程如下:

CPU在线计算本CPU内数据的CRC32之后与数据中存放的CRC32进行比较,比较通过后认为数据正常,本CPU可继续运行,否则认为数据校验失败,系统进行记录,CPU重启。

所述CPU内数据可靠性检查模块所校验的数据通过列控数据准备工具生成。将所述数据的32位CRC按照指定内存区生成。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本发明电子设备包括中央处理单元(CPU),其可以根据存储在只读存储器(ROM)中的计算机程序指令或者从存储单元加载到随机访问存储器(RAM)中的计算机程序指令,来执行各种适当的动作和处理。在RAM中,还可以存储设备操作所需的各种程序和数据。CPU、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。

设备中的多个部件连接至I/O接口,包括:输入单元,例如键盘、鼠标等;输出单元,例如各种类型的显示器、扬声器等;存储单元,例如磁盘、光盘等;以及通信单元,例如网卡、调制解调器、无线通信收发机等。通信单元允许设备通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

处理单元执行上文所描述的各个方法和处理,例如方法S1~S5。例如,在一些实施例中,方法S1~S5可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元。在一些实施例中,计算机程序的部分或者全部可以经由ROM和/或通信单元而被载入和/或安装到设备上。当计算机程序加载到RAM并由CPU执行时,可以执行上文描述的方法S1~S5的一个或多个步骤。备选地,在其他实施例中,CPU可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法S1~S5。

本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。

用于实施本发明的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

相关技术
  • 数据库中对象类型的数据校验方法、装置、设备及介质
  • 基于穿戴式设备的计步数据校验方法、装置、存储介质及终端
  • 进行数据交换的方法、设备以及计算机可读的存储介质
  • 多核CPU测试方法、装置、计算机设备和存储介质
  • 一种定位真值校验方法、装置、设备及存储介质
  • 针对视频目标属性进行算法多数据交叉验证补全的方法和装置
  • 对标识性数据进行校验的方法、系统、设备及存储介质
技术分类

06120115938442