CN116881920B - 一种基于代码模拟器的安全表决系统及方法 - Google Patents
一种基于代码模拟器的安全表决系统及方法 Download PDFInfo
- Publication number
- CN116881920B CN116881920B CN202310763029.4A CN202310763029A CN116881920B CN 116881920 B CN116881920 B CN 116881920B CN 202310763029 A CN202310763029 A CN 202310763029A CN 116881920 B CN116881920 B CN 116881920B
- Authority
- CN
- China
- Prior art keywords
- code
- voting
- safety
- simulator
- simulators
- 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
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 29
- 230000015654 memory Effects 0.000 claims abstract description 13
- 238000004088 simulation Methods 0.000 claims 5
- 230000006870 function Effects 0.000 abstract description 3
- 230000001360 synchronised effect Effects 0.000 abstract description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明涉及一种基于代码模拟器的安全表决系统及方法。包括:一多核处理装置;一代码模拟装置,包括若干个分别与所述多核处理装置中的一个处理内核相绑定的代码模拟器,所述代码模拟器的运算由与其绑定的处理内核独立进行;一个时钟同步装置,用于协调每个核上的代码模拟器同步运行;一个安全表决装置,该装置接收并比较所述安全应用程序的运算结果,并基于比较结果对外输出。因此,本发明使安全计算机平台的架构完全不依赖于硬件元器件的选型,可选用市场上符合CPU和内存标准的通用服务器,并且该平台架构简单,只需要一台服务器即可承担安全平台的功能。
Description
技术领域
本发明涉及一种安全表决系统及方法,属于安全控制领域,具体是涉及一种基于代码模拟器的安全表决系统及方法。
背景技术
安全计算机平台技术目前在轨道交通、航空航天、核电具有广泛的应用,该技术以故障-安全的原则,一般采用多模冗余的方式进行架构设计。在轨道交通领域,目前的国内外安全计算机平台系统架构均以三乘二,二乘二取二架构方式,主要依靠多通道相互监控和多数结果来判断结果的正确性。
如图1所示,为一种现有技术中的安全计算机平台架构设计。该系统采用两个独立的CPU计算模块解决独立性问题,采用周期自检的方式对单个板卡的CPU及内存和基本失效率进行独立检测来解决单点故障,通过对元器件的失效分析来解决共因性故障,当故障发生时采用安全防护措施进行处理,不对外进行危害输出。每个周期两个CPU会对自身及另一个CPU拟输出的结果进行相互表决,只有表决一致才会对外输出,任何一个CPU表决不一致均不会产生对外的输出。如图2所示,该系统具备CPU计算模块、存储模块、通信模块、表决模块,背板模块、电源模块等,种类繁多。
但采取上述方式具备以下缺点:此方案依赖于硬件元器件的选型,并且不能选用市场上可以购买到的通用服务器,只能定制化生产,后续若发生元器件停产,对已开通工程造成备品备件影响,并且会造成新的选型的变更,会重新进行硬件架构的认证,造成经济损失和时间成本损失;该架构复杂,存在CPU计算模块、存储模块、通信模块、表决模块,背板模块、电源模块等,种类繁多,每个模块的失效均影响整体系统的可用性。
因此,对现有技术中的安全计算平台进行改进,以满足现有应用的需求,是当前迫切需要解决的技术问题。
发明内容
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。
本发明主要的目的是解决现有技术中所存在的技术问题,提供了一种基于代码模拟器的安全表决系统及方法。该系统及方法架构简单,只需要一台服务器即可承担安全平台的功能。
为解决上述问题,本发明的方案是:
一种基于代码模拟器的安全表决系统,包括:
一多核处理装置(硬件),包括若干个独立运行的处理内核;
一代码模拟装置(软件),包括若干个分别与所述多核处理装置中的一个处理内核相绑定的代码模拟器,每个代码模拟器中可运行独立的安全应用程序,所述代码模拟器的运算由与其绑定的处理内核独立进行;
时钟同步装置(硬件+软件),包括能够周期性产生时钟同步信号的硬件及软件。
安全表决装置(硬件+软件),包括能够安全接收安全应用程序的输出并进行比较的软件及软件运行所依赖的硬件。所述安全比较装置接收并比较所述安全应用程序的运算结果,并基于比较结果对外输出。
优选的,上述的一种基于代码模拟器的安全表决系统,每一个代码模块器所绑定的所述多核处理装置中的内存地址是不连续的。
优选的,上述的一种基于代码模拟器的安全表决系统,所述多核处理装置为IA32架构。
一种基于代码模拟器的安全表决方法,包括:
将若干个代码模拟器分别与若干个独立运行的多核处理装置中的处理内核一一绑定,所述代码模拟器的运算由与其绑定的处理内核独立进行。将同一安全应用程序的多份实例分别独立运行于所述代码模拟器中,周期性运行;时钟同步装置以固定的周期产生时钟信号,并同时发送给上述代码模拟器中的安全应用程序。安全应用程序接收到该时钟信号后,启动该周期的运行。因此上述安全应用程序的实例是同步运行的;安全表决装置接收并比较所述安全应用程序的运算结果,如果运算结果的一致性满足要求,则对外产生安全输出,否则停止输出。
优选的,上述的一种基于代码模拟器的安全表决方法,每一个代码模块器所绑定的所述多核处理装置中的内存地址是不连续的。
优选的,上述的一种基于代码模拟器的安全表决方法,所述多核处理装置为IA32架构。
因此,相对于现有技术,本发明的优点是:使安全计算机平台的架构完全不依赖于硬件元器件的选型,可选用市场上符合CPU和内存标准的通用服务器,并且该平台架构简单,只需要一台服务器即可承担安全平台的功能。
附图说明
并入本文并形成说明书的一部分的附图例示了本发明的实施例,并且附图与说明书一起进一步用于解释本发明的原理以及使得所属领域技术人员能够制作和使用本公开。
图1~2例示了本发明背景技术中提到的一种安全表决系统框架图;
图3例示了本发明实施例中的安全表决系统示意图;
图4例示了本发明实施例中的安全表决方法的流程图;
将参照附图描述本发明的实施例。
具体实施方式
实施例
本实施例,首先提供了一种基于代码模拟器的安全表决系统。如图3所示,该系统优选基于IA32架构。其中,IA32架构为英特尔32位体系架构。
如图3所示,该系统选用至少4核CPU通用服务器,选用商用操作系统(如Linux,Windows,Vxworks等)。
本实施例中,一个具备SIL(安全完整性等级)的安全系统选用4个同样的应用程序运行。每个安全应用程序运行在自己的基于IA32架构的核心代码模拟器中,核心代码模拟器绑定CPU独立内核。
作为一种优选方式,4个代码模拟器分别绑定不连续内存,以降低不同代码模拟器之间发生共因性故障的概率。4个程序启动后,等待时钟同步模块的同步信号。
当收到时钟同步信号后,4个安全应用程序同时启动一个处理周期。在该周期内,以应用程序1为源头,应用程序2~应用程序4按照安全表决模块的指示与应用程序1进行同步,同步内容包括同步输入数据和中间状态。
同步成功后,4个程序达到同一状态,然后执行本周期的运算任务,将结果发送给安全表决设备进行比较。若在规定的周期时间内,比较的4个结果中至少有3个程序一致则安全比较程序对外输出一致结果,同时关闭输出结果不一致或无输出的代码模拟器,以防止该代码模拟器出现故障产生危害后果;若在规定的周期时间内未收到至少3个一致的输出结果,比较程序则不对外输出。
安全表决设备自动获取序号靠前的输出结果一致的应用程序,将其序号同步发给所有的应用程序,指示下一个运行周期时以该应用程序为源头完成周期同步。
每周期每个代码模拟器还应对各自绑定的CPU内核和内存区域进行自检,如果自检发现故障,该代码模拟器会自行关闭,以防止该代码模拟器上的应用程序或安全比较程序产生危害输出。
本实施例中,优选选用至少具备4核的CPU,4G内存,及Windows或Linux等商用操作系统;4个IA32代码模拟器与CPU的4个内核分别进行绑定,使CPU的每个核为独立的IA32代码模拟器进行计算;每个IA32代码模拟器绑定的内存不连续;应用程序1~应用程序4分别在上述IA32代码模拟器中运行。
如图4所示,为本实施例提供的一种基于代码模拟器的安全表决方法,该方法基于图2所示的基于代码模拟器的安全表决系统。
通用计算机上电后等待时钟同步,收到时钟同步信号后,应用程序2~应用程序4按安全表决设备的指示与应用程序1进行同步,应用程序同步成功后开始计算。
当安全表决设备同一周期至少接收到3个相同的结果,则将该结果输出;安全表决设备自动获取序号靠前的应用程序(输出结果与其他应用程序输出结果相同的应用程序),将其序号发送到其余的应用程序,指示各应用程序下个周期从该应用程序同步数据。
代码模拟器每个周期自行对所绑定的CPU核心和划分的内存进行自检。如自检不通过,则自行关闭其上的安全应用程序,防止其产生有害输出。
通过以上描述可知,本实施例的使安全计算机平台的架构完全不依赖于硬件元器件的选型,可选用市场上符合CPU和内存标准的通用服务器,并且该平台架构简单,只需要一台服务器即可承担安全平台的功能。
本实施例中,尽管为使解释简单化将上述方法图示并描述为一系列动作,但是应理解并领会,这些方法不受动作的次序所限,因为根据一个或多个实施例,一些动作可按不同次序发生和/或与来自本文中图示和描述或本文中未图示和描述但本领域技术人员可以理解的其他动作并发地发生。
注意到,说明书中对“一个实施例”、“实施例”、“示例实施例”、“一些实施例”等的引用指示所描述的实施例可以包括特定特征、结构或特性,但是每个实施例可以不必包括所述特定特征、结构或特性。而且,这样的短语不必指代同一实施例。此外,当结合实施例描述特定特征、结构或特性时,无论是否明确描述,结合其他实施例来实现这样的特征、结构或特性将在所属领域的技术人员的知识范围内。
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。
Claims (6)
1.一种基于代码模拟器的安全表决系统,其特征在于,包括:
多核处理装置,包括若干个独立运行的处理内核;
代码模拟装置,包括若干个分别与所述多核处理装置中的一个处理内核相绑定的代码模拟器,每个代码模拟器中可运行独立的安全应用程序,所述代码模拟器的运算由与其绑定的处理内核独立进行;
时钟同步装置,该装置以固定的周期产生时钟信号,所有的代码模拟装置依据此时钟信号周期性协同工作;
安全表决装置, 该装置接收代码模拟装置运算的结果并比较所述代码模拟装置的运算结果,并基于比较结果对外输出;
其中,若在规定的周期时间内,安全表决装置比较的4个结果中至少有3个程序一致则对外输出一致结果,同时关闭输出结果不一致或无输出的代码模拟器;若在规定的周期时间内,安全表决装置未收到至少3个一致的输出结果,则不对外输出;安全表决装置自动获取序号靠前的输出结果一致的应用程序,将其序号同步发给所有的应用程序,指示下一个运行周期时以该应用程序为源头完成周期同步。
2.根据权利要求1所述的一种基于代码模拟器的安全表决系统,其特征在于,至少一个代码模块器所绑定的所述多核处理装置中的内存地址是不连续的。
3.根据权利要求1所述的一种基于代码模拟器的安全表决系统,其特征在于,所述多核处理装置为IA32架构。
4.一种基于代码模拟器的安全表决方法,其特征在于,包括:
将若干个代码模拟器分别与若干个独立运行的多核处理装置中的处理内核相绑定,所述代码模拟器的运算由与其绑定的处理内核独立进行;每个代码模拟器中可运行独立的安全应用程序;
所有的代码模拟装置依据此时钟信号周期性协同工作;接收并比较所述代码模拟器中的安全应用程序的运算结果;
其中,时钟同步装置以固定的周期产生时钟信号,并将所述时钟信号发送至代码模拟器中的安全应用程序,安全应用程序周期性运行,所述安全应用程序接收到该时钟信号后,启动该周期的运行,基于比较结果对外输出;
其中,当安全表决设备同一周期至少接收到3个相同的结果,则将该结果输出;安全表决设备自动获取序号靠前的输出结果与其他应用程序输出结果相同的应用程序,将其序号发送到其余的应用程序,指示各应用程序下个周期从该应用程序同步数据。
5.根据权利要求4所述的一种基于代码模拟器的安全表决方法,其特征在于,每一个代码模块器所绑定的所述多核处理装置中的内存地址是不连续的。
6.根据权利要求4所述的一种基于代码模拟器的安全表决方法,其特征在于,所述多核处理装置为IA32架构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310763029.4A CN116881920B (zh) | 2023-06-27 | 2023-06-27 | 一种基于代码模拟器的安全表决系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310763029.4A CN116881920B (zh) | 2023-06-27 | 2023-06-27 | 一种基于代码模拟器的安全表决系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116881920A CN116881920A (zh) | 2023-10-13 |
CN116881920B true CN116881920B (zh) | 2024-03-26 |
Family
ID=88256005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310763029.4A Active CN116881920B (zh) | 2023-06-27 | 2023-06-27 | 一种基于代码模拟器的安全表决系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116881920B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1979422A (zh) * | 2005-12-02 | 2007-06-13 | 凌阳科技股份有限公司 | 用以获得应用程序代码执行率的仿真装置及其方法 |
US7877627B1 (en) * | 2008-12-18 | 2011-01-25 | Supercon, L.L.C. | Multiple redundant computer system combining fault diagnostics and majority voting with dissimilar redundancy technology |
CN104866778A (zh) * | 2015-01-30 | 2015-08-26 | 武汉华工安鼎信息技术有限责任公司 | 一种基于Linux内核的文档安全访问控制方法和装置 |
CN109634171A (zh) * | 2018-12-06 | 2019-04-16 | 通号万全信号设备有限公司 | 双核双锁步二取二架构及其安全平台 |
CN113127270A (zh) * | 2021-04-01 | 2021-07-16 | 北京交通大学 | 一种基于云计算的3取2安全计算机平台 |
CN116257389A (zh) * | 2023-05-16 | 2023-06-13 | 北京城建智控科技股份有限公司 | 基于全电子联锁系统的二乘二取二平台的同步方法 |
-
2023
- 2023-06-27 CN CN202310763029.4A patent/CN116881920B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1979422A (zh) * | 2005-12-02 | 2007-06-13 | 凌阳科技股份有限公司 | 用以获得应用程序代码执行率的仿真装置及其方法 |
US7877627B1 (en) * | 2008-12-18 | 2011-01-25 | Supercon, L.L.C. | Multiple redundant computer system combining fault diagnostics and majority voting with dissimilar redundancy technology |
CN104866778A (zh) * | 2015-01-30 | 2015-08-26 | 武汉华工安鼎信息技术有限责任公司 | 一种基于Linux内核的文档安全访问控制方法和装置 |
CN109634171A (zh) * | 2018-12-06 | 2019-04-16 | 通号万全信号设备有限公司 | 双核双锁步二取二架构及其安全平台 |
CN113127270A (zh) * | 2021-04-01 | 2021-07-16 | 北京交通大学 | 一种基于云计算的3取2安全计算机平台 |
CN116257389A (zh) * | 2023-05-16 | 2023-06-13 | 北京城建智控科技股份有限公司 | 基于全电子联锁系统的二乘二取二平台的同步方法 |
Non-Patent Citations (2)
Title |
---|
8 - Optimum staggered testing strategy for 1- and 2-out-of-3 redundant safety instrumented systems;Sun-Keun Seo等;《 Safety and Reliability Modeling and its Applications》;227-244 * |
三取二安全计算机平台的同步表决体系;杜鑫;夏宏斌;张率;苗文俊;雒新宇;;承德石油高等专科学校学报(04);52-55 * |
Also Published As
Publication number | Publication date |
---|---|
CN116881920A (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0306209B1 (en) | Dual rail processors with error checking at single rail interfaces | |
EP0306252B1 (en) | Fault tolerant computer system input/output interface | |
EP0306244B1 (en) | Fault tolerant computer system with fault isolation | |
US4358823A (en) | Double redundant processor | |
CA1320276C (en) | Dual rail processors with error checking on i/o reads | |
US5005174A (en) | Dual zone, fault tolerant computer system with error checking in I/O writes | |
US5068851A (en) | Apparatus and method for documenting faults in computing modules | |
RU2577465C2 (ru) | Система, способ и устройство для коррекции ошибки в мультипроцессорных системах | |
EP2367133B1 (en) | Method for checking data consistency in a system on chip | |
CN101482753A (zh) | 一种多余度飞控计算机实时仿真装置及系统 | |
CN109634171B (zh) | 双核双锁步二取二架构及其安全平台 | |
CN112714173A (zh) | 一种站台门控制器云平台系统及控制方法 | |
CN113791937B (zh) | 一种数据同步冗余系统及其控制方法 | |
CN101861569B (zh) | 高集成度和高可用性计算机处理模块 | |
CN116881920B (zh) | 一种基于代码模拟器的安全表决系统及方法 | |
US10949203B2 (en) | Technologies for ensuring functional safety of an electronic device | |
Shepard et al. | A model of the F18 mission computer software for pre-run-time scheduling | |
Pop et al. | Methods and tools for reducing certification costs of mixed-criticality applications on multi-core platforms: the RECOMP approach | |
CN103144657B (zh) | 带校验板的通用轨旁安全平台主处理子系统 | |
EP3367242B1 (en) | Method of error detection in a microcontroller unit | |
CA2411788C (en) | Device and method for synchronising a system of coupled data processing facilities | |
CN112817818A (zh) | 边缘安全节点对云上部署运行程序进行时间监视的方法 | |
US20190026198A1 (en) | Method and device for configuring an execution means and for detecting a state of operation thereof | |
CN116107830A (zh) | 一种高完整性通用处理模块 | |
CN115632754B (zh) | 三模冗余时钟同步设备、方法、电子设备及存储介质 |
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 |