CN113791937B - 一种数据同步冗余系统及其控制方法 - Google Patents
一种数据同步冗余系统及其控制方法 Download PDFInfo
- Publication number
- CN113791937B CN113791937B CN202111033260.5A CN202111033260A CN113791937B CN 113791937 B CN113791937 B CN 113791937B CN 202111033260 A CN202111033260 A CN 202111033260A CN 113791937 B CN113791937 B CN 113791937B
- Authority
- CN
- China
- Prior art keywords
- data
- channel
- computer system
- synchronous
- synchronization
- 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
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 101
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012544 monitoring process Methods 0.000 claims abstract description 56
- 230000005540 biological transmission Effects 0.000 claims abstract description 33
- 238000013461 design Methods 0.000 claims abstract description 10
- 238000001514 detection method Methods 0.000 claims description 58
- 230000000737 periodic effect Effects 0.000 claims description 16
- 102100029368 Cytochrome P450 2C18 Human genes 0.000 claims description 8
- 101000919360 Homo sapiens Cytochrome P450 2C18 Proteins 0.000 claims description 8
- 230000001965 increasing effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/165—Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2038—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本发明属于冗余系统及其控制方法,为解决目前各工业领域中采用的容错计算机,使用时灵活性较差,仍然无法保证数据安全可靠传输的技术问题,提供一种数据同步冗余系统及其控制方法,系统采用2乘2取2安全计算机结构,同时运行,一个拥有控制权,另一个拥有监视权,在一个计算机系统内设置两个通道,两个通道采用相同的硬件设计、采集相同的数据,且运行相同的软件,在数据传输中,只有两个通道一致时,相应计算机系统才会输出,否则,也将控制权交给另一个计算机系统,实现了硬件结构冗余。两个计算机系统的同步设计可采用信号灯同步和数据同步方式相互结合的方式。
Description
技术领域
本发明属于冗余系统及其控制方法,具体涉及一种数据同步冗余系统及其控制方法。
背景技术
面对各种工业领域,尤其是航空航天、轨道交通、银行及电厂等高安全行业,均对其行业内使用到的电子系统提出了更高的安全性要求,容错计算机的出现,取代了双机热备产品,在高安全领域得到广泛使用。现有的容错计算机虽然具有一定的可靠性和容错能力,但这种计算机在使用时灵活性较差,而且仍然无法保证数据安全可靠传输。
发明内容
本发明为解决目前各工业领域中采用的容错计算机,使用时灵活性较差,仍然无法保证数据安全可靠传输的技术问题,提供一种数据同步冗余系统及其控制方法,从硬件架构、操作系统、控制算法三方面出发,最大限度提高了系统的冗余度,保证冗余系统输出的可靠性。
为实现上述目的,本发明提供如下技术方案:
一种数据同步冗余系统,其特殊之处在于,包括两个相互通信的计算机系统;
所述计算机系统包括安全输出板、相互通信的命令通道和监控通道,以及与命令通道相互通信的第一故障检测板、与监控通道相互通信的第二故障检测板;
所述命令通道和监控通道采用相同的硬件设计、采集相同的数据,且运行相同的软件;
所述第一故障检测板和所述第二故障检测板分别用于记录命令通道和监控通道的故障情况,并将故障情况发送至安全输出板;
所述安全输出板,用于接收所述第一故障检测板和所述第二故障检测板发送的故障情况,并根据故障情况与外部设备进行数据传递;
所述服务板,用于两个计算机系统的状态控制输出切换。
进一步地,所述命令通道采用Windows操作系统,所述监控通道采用Vxworks操作系统。
进一步地,所述命令通道和监控通道通过CCDL或者以太网相互通信。
本发明还提供了一种上述数据同步冗余系统的控制方法,其特殊之处在于,包括以下步骤:
S1,自检
S1.1,通过计算机系统的命令通道和监控通道分别发送一组相同的预设数字信号;
S1.2,命令通道和监控通道初始同步
使命令通道和监控通道进行双握手同步,若两次握手的等待时间小于等于第一预设时间,则执行步骤S1.3;否则,第一故障检测板和第二故障检测板记录初始同步故障,相应计算机系统放弃控制权;
S1.3,命令通道和监控通道周期同步
在预设数字信号每个周期开始时,使命令通道和监控通道进行同步握手,若两次握手的等待时间小于等于第二预设时间,则继续传送数据;否则,在第一故障检测板和第二故障检测板的周期同步失败计数器上加1,并重新启动预设数字数据周期;
步骤S1.3执行过程中,若周期同步失败计数器上的数字达到预设值,停止传送,相应计算机系统放弃控制权;
S1.4,数据同步
S1.4.1,在数据上增加同步帧信息,所述同步帧信息为该数据的周期信息;
S1.4.2,在命令通道的处理器板和监控通道的处理器板之间进行每一次数据交换时,对命令通道和监控通道中数据的同步帧信息进行比较,若一致,则继续执行周期任务;
否则,对命令通道和监控通道中同步帧信息对应的同步帧号进行比较,并将同步帧号较大的同步帧信息替换为同步帧号较小的同步帧信息,同时,在第一故障检测板和第二故障检测板的数据同步错误计数器上加1,并继续进行数据传输;
或者,对命令通道和监控通道中同步帧信息对应的同步帧号进行比较,使同步帧号较大的通道等待同步帧号较小的通道,若等待时间超过三个周期,则在第一故障检测板和第二故障检测板的数据同步错误计数器上加1,并重新启动数据周期;
在步骤S1.4.2执行过程中,若数据同步错误计数器上的数字达到预设值,停止进行数据传输,相应计算机系统放弃控制权;
S2,计算机系统选择
若经步骤S1自检后,两个计算机系统均未放弃控制权,则根据预设指令选择一个计算机系统执行数据传输;
若经步骤S1自检后,有任一计算机系统放弃控制权,则由另一个计算机系统执行数据传输;
若经步骤S1自检后,两个计算机系统均放弃控制权,则两个计算机系统均停止执行数据传输,对两个计算机系统进行故障排查;
S3,冗余系统工作过程中实时同步
通过经步骤S2确定的计算机系统向外部设备传送数据,并在传送时重复执行步骤S1.2至步骤S1.4。
进一步地,步骤S3中,所述通过经步骤S2确定的计算机系统向外部设备传送数据,传送至外部设备之前还包括容错检测:
经步骤S3计算机系统向外部设备传送的数据,分别通过命令通道的CPCI总线和监控通道的CPCI总线传送至可编程逻辑模块中的CCQI和CCQII逻辑中,当CCQI和CCQII接收到对应通道的数据后,使接收数据标志信息位变化一次,当CCQI和CCQII的接收数据标志信息位一致时,对比CCQI和CCQII中数据的同步帧信息,若一致,对数据内容进行比较;若不一致,若经步骤S1自检,两个计算机系统均未放弃控制权,则停止该计算机系统向外部设备传送数据,由另一个计算机系统执行数据传输,否则,停止执行数据传输,对两个计算机系统进行故障排查。
进一步地,所述对数据内容进行比较具体为,在安全输出板的比较错误计数器中设置比较阈值,若数据内容一致,使比较错误计数器减1,直至比较错误计数器的数值为零,则不再使比较错误计数器减1,否则,使比较错误计数器加1,直至比较错误计数器的数值大于比较阈值,则该计算机系统停止数据传输。
与现有技术相比,本发明的有益效果是:
1.本发明的数据同步冗余系统,采用2乘2取2安全计算机结构,为系统的高可靠性要求,提供了必要的硬件基础平台。两个计算机系统同时运行,一个拥有控制权,另一个拥有监视权,在一个计算机系统故障的情况下,另一个计算机系统取得控制权。
本发明在一个计算机系统内设置两个通道,两个通道采用相同的硬件设计、采集相同的数据,且运行相同的软件,在数据传输中,只有两个通道一致时,相应计算机系统才会输出,否则,也将控制权交给另一个计算机系统,实现了硬件结构冗余。
2.本发明中命令通道采用Windows操作系统,监控通道采用Vxworks操作系统,两种不同的操作系统处理相同信号,相互验证,相互校验,进一步提高了系统的可靠性和安全性,最大限度规避了单个计算机系统因不稳定因素引起的故障。
3.本发明的两个计算机系统在正式传输数据前,均需要通过自检对计算机系统中两个通道的情况进行自检,在进行数据传输时,仍需实时进行同步性检测,计算机系统内的两个通道通过信号灯同步和数据同步的方式实现任务同步,采用以软件为主,软件和硬件结合的双握手同步算法实现通道间的同步,增强了对采样数据比对的有效性。
4.本发明在通过安全输出板向外部设备传输数据时,还要对数据的同步帧信息和数据内容再一次进行有效性比较,进一步确保数据的有效性。
5.本发明中对数据内容进行比较时,增加了容错逻辑处理,确保设备在允许范围内,不会由于自身或外界影响而产生不必要的输出切换或故障错报。
附图说明
图1为本发明数据同步冗余系统实施例的示意图;
图2为本发明命令通道和监控通道的软件系统结构图;
图3为本发明中采用的信号灯同步机制图;
图4为本发明图1中第一故障检测板和第二故障检测板的故障寄存器结构图。
具体实施方式
下面将结合本发明的实施例和附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例并非对本发明的限制。
本发明数据同步冗余系统的设计主要从两个要点进行考虑:结构冗余和信息冗余。另外,针对系统硬件或软件本身出现的小概率随机故障,本发明还增加了一项容错的附加技术,使用的恢复策略采用前向恢复结合后向恢复两种策略,把系统恢复成连贯的正确状态,弥补当前状态的不连贯情况。使系统能对该类故障进行识别、判断,并进行忽略,保证输出的正确性,以此进一步提升系统可靠性。
本发明的数据同步冗余系统从系统架构上采用2乘2取2结构,I端计算机系统和II端计算机系统两个计算机系统同时运行且相互通信,一个拥有控制权,另一个只有监视权,在I端计算机系统故障的情况下,II端计算机系取得控制权,两端的计算机系统内均包含两个通道,分别为命令通道和监控通道,还包括安全输出板,以及与命令通道相互通信的第一故障检测板、与监控通道相互通信的第二故障检测板。两个通道具有相同的硬件设计,采集相同的数据,运行相同的软件,通道内处理器模块通过局部CPCI总线访问接口模块,进行插接安装,两个通道之间可通过CCDL或者以太网进行通信,双余度设计分别对两路输入信号和运算结果进行同步比较,只有两个运算结果一致时,该计算机系统才会输出,否则,控制权交由另一结构与之相同的计算机系统输出结果,本机则马上发出报警信号并输出安全态。第一故障检测板和第二故障检测板分别用于记录命令通道和监控通道的故障情况,并将故障情况发送至安全输出板,安全输出板,用于接收所述第一故障检测板和所述第二故障检测板发送的故障情况,并根据故障情况与外部设备进行数据传递。
为了进一步提高系统可靠性,命令通道采用Windows操作系统,监控通道采用Vxworks操作系统,两种不同的操作系统处理相同信号,相互验证,相互校验,进一步提高了系统可靠性及安全性。
如图1,以一个用于车载的数据同步冗余系统为例,对本发明的系统进行具体说明。处理器模块的主要功能为:(1)数据处理和逻辑处理,处理器模块通过CPCI总线接口对各板卡的数据进行读写;(2)板间数据交换和比较,通过以太网可以得到同一个计算机系统中另一处理器模块的数据,对输入输出数据进行监控;(3)处理过程同步;(4)其他功能,如处理过程同步;检测电源有无过压、过流、敏感芯片温度监测等,并依据监测数据执行相应的操作;处理器定时扫描当前的工作状态;设置复位按钮,复位通道内的所有电路板;通过设置状态指示灯可以方便快速地了解设备的状态(启动、故障等)。第一故障检测板和第二故障检测板是两个通道同步的硬件基础,能够产生同步时钟,对状态进行监控,进行数据记录,并管理电源。服务板主要负责检测两个通道的健康状态,存储服务信息以及故障诊断的错误信息等,负责两个计算机系统的通信,根据各计算机系统的状态控制输出切换。安全输出板能够输出信号调理,输出通道自检,通道状态指示,输出信号表决。数字输入板能够进行通道自检,输入开关量信号的读取与保存,自检,通道状态指示。MVB板连接MVB总线,实现物理层信号的转换,通过运行在其上的通信协议软件,完成协议转换,实现跨总线的数据传输,具有可以互为冗余的两路MVB总线的接口,总线控制器作为设备电路和物理层的接口单元,支持IEC61375-1标准中规定的过程数据、消息数据、监视数据以及总线管理的功能,提供维护和数据传输接口,具有支持远程访问的以太网模块、实时时钟、电源管理及硬件看门狗模块、JTAG仿真器调试接口。通信板,负责接收来自外围设备的串口数据、来自外围设备的以太网数据,并向外围设备发送串口数据和以太网数据。安全输出板通过与车辆输入输出接口与车辆相连,进行信息传递。
处理器模块经CPCI总线发出或回读各个板的故障信息及工作状态。初始同步及周期同步故障信息,通道间数据同步的故障信息,数据监控故障信息,通道自检故障信息等,由处理器模块检测并发送到本模块对应的故障寄存器中,而看门狗溢出故障信息、通道间安全输出比较故障和本模块输出的通道故障逻辑信息,由逻辑电路生成并直接记录到故障寄存器中,处理器模块从本模块故障状态寄存器中回读本通道的工作状态,包括故障信息和通道健康信息。
上述系统启动后,I端计算机系统设为主控,II端计算机系统设为监控(I、II端是逻辑概念,由控制人员事先设定)。计算机系统内的两个通道同时工作,包括同步处理、读取输入信号、交换输入数据、比较输入数据、计算、交换输出结果、比较输出结果,最终由主控计算机系输出控制命令。
如果I端计算机系两个通道的比较结果一致,则表示I端计算机系在工作周期内无故障,并将此信号发送给安全输出板,作为通道故障逻辑的一个输入参与到故障逻辑运算;如果I端计算机系的其他部分(电源监控、自检测试、看门狗等)也正常工作,则表示I端计算机系统处于健康状态,由I端计算机系统将控制命令输出给外部设备;与此同时,II端计算机系统做与I端计算机系统相同的工作,只是结果不输出。
如果I端计算机系统的两个通道比较结果不一致,或存在其他故障,则I端计算机系统输出安全态,通过服务板将本机故障信号发送给II端计算机系统,并同时发出报警信号;II端计算机系统收到I端计算机系统的故障信号后,如果II端计算机系统为健康状态,则由其接管主控权,实现一次故障工作的要求;否则两计算机系统都输出安全态,并发出报警信号,实现二次故障安全的要求。
两个计算机系统核心内容架构类似于产品的硬件结构,都保持完全的一致性。命令通道和监控通道的软件系统结构如图2所示,两个通道同步控制,同时进行且在过程中相互通信确认,整体同步控制方法为先进行初始同步,判断初始同步是否正确,若正确,再进行周期同步,判断周期同步是否正确,若正确,因为两通道要求输入数据必须是一致的(如果两通道不交换,一通道偶然瞬间出现问题,会导致两通道输入数据不一致),并在各自通道内进行比较,各自比较后的结果再发给对方通道,各通道再将对方的结果在各自通道进行比较,交换输入数据,再进行数据同步,先判断同步帧是否正确,再判断数据是否一致,若正确,则计算输出数据,交换输出数据,过程中任一步判断不正确时,则进入相应同步故障处理,可介入查看故障原因,若均判断正确,则输出数据,输出数据时,对输出数据的同步帧和数据再次判断其正确性和一致性,若同步帧不正确,则进入同步故障处理,若数据不一致,则进入数据监控故障处理,若均正确,则将信息发送至安全输出板,并由安全输出板发送至外部设备。
基于信息冗余思想(利用在数据中外加的一部分信息位来检测或纠正信息在运算或传输中的错误而达到容错),采用软件为主,软/硬结合的双握手同步算法实现通道间的同步,两次同步的处理过程,能够确保计算机系统内两通道工作流程的同步性,而两通道数据的一致性则通过数据同步流程实现,即两通道间处理器模块在每一次数据交换时,增加周期帧信息(周期帧为本次数据的周期信息),以此来保证系统失步后能在相同的周期内与另一通道重新同步。
本申请中两个计算机系统的同步设计可采用信号灯同步和数据同步方式相互结合的方式。其中信号灯同步:两个计算机系统通过相互交叉点亮和熄灭对方的信号灯实现同步,也就是“置位”和“复位”特定的信号存储单元。该方式能够做到任务周期的同步,是应用最广泛的同步技术,也叫“信号握手”,同步机制如图3所示。数据同步是在数据帧传输时,通过增加同步帧达到同步目的,该方式能够解决系统失步后的重新同步问题。
计算机系统内的两个通道通过信号灯同步(包含初始同步和周期同步)和数据同步的方式实现任务同步。采用以软件为主,软/硬结合的双握手同步算法实现通道间的同步。
计算机同步的过程是在系统同步程序的管理下,结合硬件定时器,通过信号灯,完成通道间的同步。是两台计算机通过相互交叉点亮和熄灭对方的信号灯实现同步,也就是“置位”和“复位”特定的信号存储单元。该方式能够做到任务周期的同步,是应用最广泛的同步技术,也叫“信号握手”。此信号灯同步方式通过软件对计算机系统内两通道第一故障检测板和第二故障检测板内部相应寄存器进行“置位”和“复位”操作并比较结果实现。
具体同步控制方法如下:
1.自检
在对正式传输的数据进行同步检测之前,先对两个通道进行自检,通过计算机系统的命令通道和监控通道分别发送一组相同的预设数字信号:
(1)命令通道和监控通道初始同步
使命令通道和监控通道进行双握手同步,若两次握手的等待时间小于等于2s,则执行下一步周期同步;否则,第一故障检测板和第二故障检测板记录初始同步故障,相应计算机系统放弃控制权;
(2)命令通道和监控通道周期同步
在预设数字信号每个周期开始时,使命令通道和监控通道进行同步握手,若两次握手的等待时间小于等于200μs,则继续传送数据;否则,在第一故障检测板和第二故障检测板的周期同步失败计数器上加1,并重新启动预设数字数据周期;
周期同步执行过程中,若周期同步失败计数器上的数字达到预设值,停止传送,相应计算机系统放弃控制权;
(3)数据同步
在数据上增加同步帧信息,同步帧信息为该数据的周期信息。在命令通道的处理器板和监控通道的处理器板之间进行每一次数据交换时,对命令通道和监控通道中数据的同步帧信息进行比较,若一致,则继续执行周期任务;
否则,对命令通道和监控通道中同步帧信息对应的同步帧号进行比较,并将同步帧号较大的同步帧信息替换为同步帧号较小的同步帧信息,同时,在第一故障检测板和第二故障检测板的数据同步错误计数器上加1,并继续进行数据传输;
或者,对命令通道和监控通道中同步帧信息对应的同步帧号进行比较,使同步帧号较大的通道等待同步帧号较小的通道,若等待时间超过三个周期,则在第一故障检测板和第二故障检测板的数据同步错误计数器上加1,并重新启动数据周期;
数据同步执行过程中,若数据同步错误计数器上的数字达到预设值,停止进行数据传输,相应计算机系统放弃控制权。
2.计算机系统选择
两台计算机系统输出控制权的切换由三个信号决定:外部给定的控制权、I端计算机系统和II端计算机系统的故障情况。如果I端计算机系统、II端计算机系统都没有故障,则由外部设定控制权,确定计算机系统输出(主控)端;如果I端计算机系统、II端计算机系中有一个故障另一个正常,那么无论外部控制权在哪端计算机系统,系统都由无故障的计算机系统输出,当主控计算机系故障时,系统要马上给出报警信号。
3.冗余系统工作过程中实时同步
通过经步骤2确定的计算机系统向外部设备传送数据,在传送时重复执行步骤1和步骤2,对正式的传输数据进行同步:
初始同步:系统完成初始化和上电自检后,进入周期任务之前,计算机系统的两个通道要进行初始同步,初始同步的两次握手最大等待时限为2秒,该过程要清零看门狗计时器,当初始同步失败后,软件不再执行周期任务,在第一故障检测板和所述第二故障检测板的故障寄存器中记录初始同步故障,并交出系统的控制权。
周期同步:在每个工作周期开始时,两个通道要进行同步握手,其最大允许等待时间为200微秒,在读取输入数据和对方计算结果后,要比较同步帧的一致性,周期同步过程不清零看门狗计时器,如果两个通道的周期同步失败,给周期同步失败计数器加1,并重新启动任务周期,若连续10次均同步失败,将不再执行周期任务,在故障寄存器中记录周期同步故障,并交出系统的控制权。
以上两种同步的方式区别在于初始同步解决两机同步启动问题,两次握手最大等待时限为2秒。周期同步解决应用任务的同步问题,最大允许等待时间为200微秒,故障寄存器记录10次故障后报错。重复次数和等待时间为设计经验参考值,可根据用户需求进行调整。
数据同步是指两通道间处理器板在每一次数据交换时,增加同步帧信息(同步帧为本次数据的周期信息),以此来保证系统失步后能在相同的周期内与另一通道重新同步。当发生数据同步错误时(即同步帧比较错误时),可采用以下两种方式处理数据同步后的失步问题:(1)强制将同步帧号中较大的同步帧号改为两者中较小的同步帧号,同时,数据同步错误计数器加1,任务继续向下进行。(2)数据帧中较大的周期帧通道等待较小的周期帧通道指令,等待3个周期仍失败时,数据同步错误计数器加1,并重新启动任务周期。若同步连续10次均失败,将不再执行周期任务,在故障寄存器中记录数据同步故障,并交出系统的控制权,两种同步帧失步后的处理方式可根据用户需求修改。
如图4,本发明的第一故障检测板和第二故障检测板中的故障寄存器分别可以记录初始同步故障、周期同步故障、数据同步故障、数据监控故障、自检故障(计算机系统内各个板卡的BIT故障)、电源监控故障(电源信号过压或过流)、看门狗溢出和安全比较故障,用于对相应故障进行记录,通过锁存器暂存,再将相应通道故障逻辑输出。其中任何一个故障输入超出预设,都可以交出本计算机系统的控制权,断开系统与外部的联系。所有的故障输入中,电源监控故障具有最高优先级,即当电源故障时,应提前预警,为处理器模块留出保存当前状态信息的时间。
系统硬件冗余结构与其软件冗余结构相互配合,保证系统能够高可靠性工作。然而,这种高可靠性对输入信号或产品本身是极为“敏感”的,这种“敏感”极易造成产品输出出现瞬态错误现象。为了消除这种高可靠性引起的“敏感”特性,产品在各计算机系统中的安全输出板,增加了一种软件“容错技术”—容错计数器,进一步增加产品的可靠性。
经计算机系统同步的两通道数据通过各自CPCI总线分别进入可编程逻辑模块中的CCQI及CCQII逻辑中,当CCQI及CCQII接收到对应通道的周期帧及有效数据后,接收数据标志信息位由‘0’变为‘1’(通过对写信号的检测来实现判断),或者由‘1’变为‘0’,表示本逻辑已收到数据;当接收数据标志信息位一致,即均为‘1’,或者均为‘0’(在数据标志寄存器中进行比较),再进行周期帧比较(在周期帧信息比较寄存器中进行比较),若两者相同,则说明两组数据是同一时刻数据,若不相同,认为发生一次错误,相应计数器中加1;当已经判断数据没有丢失的情况下,在CPU输出数据比较寄存器中,对两通道数据进行比较。如果此时出错次数低于允许值,且输出允许信号有效,则控制通道保持对外输出;否则改通道输出安全态,自动切换控制器,由另一个计算机系统进行控制。其中,比较错误计数器中存有一个预设值,当数据比较一致时,该计数器减1,直到被减为0;当数据比较不一致时,该计数器加1,直到超过允许值,该通道就会停止输出,且将故障信号反馈给第一故障检测板和第二故障检测板,处理器模块获取到该信息后,告知另一计算机系统,并切换控制权,从而实现容错策略。
通道故障逻辑的输入为离散量,为提高可靠性,采用两位编码,bit1.0=10,表示逻辑0,bit1.0=01,表示逻辑1。
下表是控制权切换逻辑的真值表。
表1控制权切换逻辑真值表
说明:SysErr=1表示本计算机系统故障,本计算机系统任意一个通道的通道故障逻辑报故障时;AnSysErr=1表示另一计算机系统故障;MasSel=1表示控制权输入指定本系为控制端;OutEN=1表示本系输出有效;表中的0、1均为逻辑0、1。
计算机系统需要输出安全态时,须断开本计算机系统与外部信号之间的通路。计算机系统故障时(即输出允许信号无效时),继电器断开,切断内部数据与外部信号的通路;反之,继电器闭合,输出数据。
以上所述仅为本发明的实施例,并非对本发明保护范围的限制,凡是利用本发明说明书及附图内容所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均包括在本发明的专利保护范围内。
Claims (5)
1.一种数据同步冗余系统的控制方法,所述数据同步冗余系统包括两个相互通信的计算机系统;所述计算机系统包括安全输出板、服务板、相互通信的命令通道和监控通道,以及与命令通道相互通信的第一故障检测板、与监控通道相互通信的第二故障检测板;所述命令通道和监控通道采用相同的硬件设计、采集相同的数据,且运行相同的软件;所述第一故障检测板和所述第二故障检测板分别用于记录命令通道和监控通道的故障情况,并将故障情况发送至安全输出板;所述安全输出板,用于接收所述第一故障检测板和所述第二故障检测板发送的故障情况,并根据故障情况与外部设备进行数据传递;所述服务板,用于两个计算机系统的状态控制输出切换;其特征在于,包括以下步骤:
S1,自检
S1.1,通过计算机系统的命令通道和监控通道分别发送一组相同的预设数字信号;
S1.2,命令通道和监控通道初始同步
使命令通道和监控通道进行双握手同步,若两次握手的等待时间小于等于第一预设时间,则执行步骤S1.3;否则,第一故障检测板和第二故障检测板记录初始同步故障,相应计算机系统放弃控制权;
S1.3,命令通道和监控通道周期同步
在预设数字信号每个周期开始时,使命令通道和监控通道进行同步握手,若两次握手的等待时间小于等于第二预设时间,则继续传送数据;否则,在第一故障检测板和第二故障检测板的周期同步失败计数器上加1,并重新启动预设数字数据周期;
步骤S1.3执行过程中,若周期同步失败计数器上的数字达到预设值,停止传送,相应计算机系统放弃控制权;
S1.4,数据同步
S1.4.1,在数据上增加同步帧信息,所述同步帧信息为该数据的周期信息;
S1.4.2,在命令通道的处理器板和监控通道的处理器板之间进行每一次数据交换时,对命令通道和监控通道中数据的同步帧信息进行比较,若一致,则继续执行周期任务;
否则,对命令通道和监控通道中同步帧信息对应的同步帧号进行比较,并将同步帧号较大的同步帧信息替换为同步帧号较小的同步帧信息,同时,在第一故障检测板和第二故障检测板的数据同步错误计数器上加1,并继续进行数据传输;
或者,对命令通道和监控通道中同步帧信息对应的同步帧号进行比较,使同步帧号较大的通道等待同步帧号较小的通道,若等待时间超过三个周期,则在第一故障检测板和第二故障检测板的数据同步错误计数器上加1,并重新启动数据周期;
在步骤S1.4.2执行过程中,若数据同步错误计数器上的数字达到预设值,停止进行数据传输,相应计算机系统放弃控制权;
S2,计算机系统选择
若经步骤S1自检后,两个计算机系统均未放弃控制权,则根据预设指令选择一个计算机系统执行数据传输;
若经步骤S1自检后,有任一计算机系统放弃控制权,则由另一个计算机系统执行数据传输;
若经步骤S1自检后,两个计算机系统均放弃控制权,则两个计算机系统均停止执行数据传输,对两个计算机系统进行故障排查;
S3,冗余系统工作过程中实时同步
通过经步骤S2确定的计算机系统向外部设备传送数据,并在传送时重复执行步骤S1.2至步骤S1.4。
2.如权利要求1所述一种数据同步冗余系统的控制方法,其特征在于,步骤S3中,所述通过经步骤S2确定的计算机系统向外部设备传送数据,传送至外部设备之前还包括容错检测:
经步骤S3计算机系统向外部设备传送的数据,分别通过命令通道的CPCI总线和监控通道的CPCI总线传送至可编程逻辑模块中的CCQI和CCQII逻辑中,当CCQI和CCQII接收到对应通道的数据后,使接收数据标志信息位变化一次,当CCQI和CCQII的接收数据标志信息位一致时,对比CCQI和CCQII中数据的同步帧信息,若一致,对数据内容进行比较;若不一致,若经步骤S1自检,两个计算机系统均未放弃控制权,则停止该计算机系统向外部设备传送数据,由另一个计算机系统执行数据传输,否则,停止执行数据传输,对两个计算机系统进行故障排查。
3.如权利要求2所述一种数据同步冗余系统的控制方法,其特征在于,所述对数据内容进行比较具体为,在安全输出板的比较错误计数器中设置比较阈值,若数据内容一致,使比较错误计数器减1,直至比较错误计数器的数值为零,则不再使比较错误计数器减1,否则,使比较错误计数器加1,直至比较错误计数器的数值大于比较阈值,则该计算机系统停止数据传输。
4.如权利要求3所述一种数据同步冗余系统的控制方法,其特征在于:所述命令通道采用Windows操作系统,所述监控通道采用Vxworks操作系统。
5.如权利要求1-4任一所述一种数据同步冗余系统的控制方法,其特征在于:所述命令通道和监控通道通过CCDL或者以太网相互通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033260.5A CN113791937B (zh) | 2021-09-03 | 2021-09-03 | 一种数据同步冗余系统及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033260.5A CN113791937B (zh) | 2021-09-03 | 2021-09-03 | 一种数据同步冗余系统及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113791937A CN113791937A (zh) | 2021-12-14 |
CN113791937B true CN113791937B (zh) | 2023-11-24 |
Family
ID=79182583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111033260.5A Active CN113791937B (zh) | 2021-09-03 | 2021-09-03 | 一种数据同步冗余系统及其控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113791937B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115185877B (zh) * | 2022-07-29 | 2023-09-05 | 中航机载系统共性技术有限公司 | 一种双余度通用处理模块及其信息同步方法 |
CN115407640B (zh) * | 2022-11-01 | 2023-04-25 | 山东博硕自动化技术有限公司 | 一种多控多机自动控制系统及其控制方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004049900A1 (de) * | 2004-10-13 | 2006-01-19 | Siemens Ag | System und Verfahren zum redundanten Betrieb zweier Computer sowie zugehöriges Computerprogrammprodukt |
CN101916090A (zh) * | 2010-07-14 | 2010-12-15 | 北京航空航天大学 | 一种无人机机载三余度电气负载管理中心 |
CN110095978A (zh) * | 2019-05-06 | 2019-08-06 | 杭州耘新科技有限公司 | 一种2乘2取2系统及其安全诊断方法 |
-
2021
- 2021-09-03 CN CN202111033260.5A patent/CN113791937B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004049900A1 (de) * | 2004-10-13 | 2006-01-19 | Siemens Ag | System und Verfahren zum redundanten Betrieb zweier Computer sowie zugehöriges Computerprogrammprodukt |
CN101916090A (zh) * | 2010-07-14 | 2010-12-15 | 北京航空航天大学 | 一种无人机机载三余度电气负载管理中心 |
CN110095978A (zh) * | 2019-05-06 | 2019-08-06 | 杭州耘新科技有限公司 | 一种2乘2取2系统及其安全诊断方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113791937A (zh) | 2021-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5005174A (en) | Dual zone, fault tolerant computer system with error checking in I/O writes | |
EP0306252B1 (en) | Fault tolerant computer system input/output interface | |
CN113791937B (zh) | 一种数据同步冗余系统及其控制方法 | |
US5249187A (en) | Dual rail processors with error checking on I/O reads | |
JP3206006B2 (ja) | 二重化バス制御方法及び装置 | |
US5099485A (en) | Fault tolerant computer systems with fault isolation and repair | |
US4358823A (en) | Double redundant processor | |
US5901281A (en) | Processing unit for a computer and a computer system incorporating such a processing unit | |
US5068851A (en) | Apparatus and method for documenting faults in computing modules | |
US6240526B1 (en) | Triple modular redundant computer system | |
CA2051786C (en) | Universal scheme of input/output redundancy in a process control system | |
KR100566338B1 (ko) | 폴트 톨러런트 컴퓨터 시스템, 그의 재동기화 방법 및 재동기화 프로그램이 기록된 컴퓨터 판독가능 기억매체 | |
CN201909961U (zh) | 一种冗余控制系统 | |
CN102103532B (zh) | 列控车载设备的安全冗余计算机系统 | |
CN103425553B (zh) | 一种双机热备份系统及该系统的故障检测方法 | |
JPH01154240A (ja) | 単一レールインターフェイスにエラーチェック機能を有する二重レールプロセッサ | |
US10042812B2 (en) | Method and system of synchronizing processors to the same computational point | |
CN103744753B (zh) | 一种双机系统的数据交互方法与装置 | |
CN113682348A (zh) | 一种基于通信的联锁新型双机切换方法 | |
US5905875A (en) | Multiprocessor system connected by a duplicated system bus having a bus status notification line | |
CN202142052U (zh) | 列控车载设备的安全冗余计算机系统 | |
EP0416732B1 (en) | Targeted resets in a data processor | |
CN113485185B (zh) | N倍冗余控制系统的方法 | |
CN106656437A (zh) | 冗余热备平台 | |
US9311212B2 (en) | Task based voting for fault-tolerant fail safe computer systems |
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 |