一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于总线仲裁的冗余系统的制作方法

2022-11-30 10:07:23 来源:中国专利 TAG:


1.本发明涉及冗余系统技术领域,特别是涉及一种基于总线仲裁的冗余系统。


背景技术:

2.冗余系统指的是为增加系统的可靠性,而采取两套或两套以上相同、相对独立配置的设计。一般来说冗余系统目的在于:为了保险起见,采取两套同样独立配置的硬件、软件或设计等,保证在其中一套系统出现故障时,另一套系统能立即启动,代替工作,这就好比演员的替身。一套单独的系统也许运行的故障率很高,但采取冗余措施后,在不改变内部设计的情况下,这套系统的可靠性立即可以大幅度提高。假如单独系统的故障率为50%,而采取冗余系统后马上可以将故障率降低到25%。
3.冗余系统的两个或多个处理器要通过监测设备经常比较各个处理器的状态,根据一定的规则以决定系统是否工作在正常的状态,这种状态比较和系统可靠性的判定也被称为同步。
4.传统的冗余系统中多个系统通常连接同一个监控设备,一个监控设备实时对当前运行的系统的健康状态进行监控,发现当前运行的系统异常后控制备用系统启动代替当前运行的系统工作。这种采用单线仲裁的方式存在发生故障时仲裁可靠性差以及仲裁及时性差等缺点。
5.因此,如何提供一种可靠性高以及响应速度快的冗余系统,是迫切需要本领域技术人员解决的技术问题。


技术实现要素:

6.鉴于上述问题,本发明提供用于克服上述问题或者至少部分地解决上述问题的一种基于总线仲裁的冗余系统。
7.本发明提供了如下方案:
8.一种基于总线仲裁的冗余系统,包括:
9.软件以及硬件一致的两套系统;每套所述系统包括一个处理器单元以及一个监测单元;每个所述处理器单元通过总线与所有所述监测单元相连;
10.每个所述监测单元均依据每个所述处理器单元的健康状况生成各自对应的主备仲裁结果;
11.每个所述监测单元生成的所述主备仲裁结果一致后,根据所述主备仲裁结果确定各个所述处理器单元其中一个作为当班处理器单元,剩余的所述处理器单元作为备用处理器单元。
12.优选地:所述备用处理器单元处于待机状态。
13.优选地:各个所述处理器单元之间可通信相连;各个所述处理器单元均通过既定任务级功能接口接收外部接口数据。
14.优选地:所述当班处理器单元接收所述外部接口数据并处理;所述当班处理器单
元执行对外信息交互并将当前执行的步骤发送给所述备用处理器单元,以便在执行主备切换后所述备用处理器单元接续所述当班处理器单元当前执行的任务。
15.优选地:所述处理器单元包括cpu处理器;每个所述监测单元分别获取与其相连的各个所述cpu处理器的cpu心跳,根据各个所述cpu处理器的cpu心跳判断各个所述cpu处理器的工作状态并根据所述工作状态生成各自对应的主备仲裁结果。
16.优选地:所述处理器单元还包括fpga器件,所述fpga器件与所述cpu处理器相连;所述fpga器件用于接收所述cpu处理器发送的主备申请以及向所述cpu处理器发送切断中断信号、复位信号、主备标识以及监测单元状态标识。
17.优选地:所述fpga器件与各个所述监测单元相连;所述fpga器件用于向各个所述监测单元发送数据信号以及时钟信号并接收各个所述监测单元返回的数据信号以及时钟信号。
18.优选地:所述fpga器件还用于根据各个所述监测单元返回信号的周期性和/或crc校验结果对各个所述监测单元的健康状况做出判断。
19.优选地:各个所述监测单元可通信相连,每个所述监测单元接收对手监测单元发送的数据信号以及时钟信号,并进行解析判别对机发出的主备状态、主备切换、健康状态、控制开关板复位信息。
20.优选地:每个所述监测单元均与手动主备切换按钮相连。
21.根据本发明提供的具体实施例,本发明公开了以下技术效果:
22.本技术实施例提供的一种基于总线仲裁的冗余系统,由两个或多个被仲裁对象、仲裁者组成,被仲裁对象与仲裁者之间采用总线连接。具有可靠性高、仲裁及时、响应快等特点。值得大面积推广使用。
23.当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
24.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
25.图1是本发明实施例提供的一种基于总线仲裁的冗余系统连接框图;
26.图2是本发明实施例提供的双机冗余系统组成结构示意图;
27.图3是本发明实施例提供的双机冗余系统组成另一结构示意图;
28.图4是本发明实施例提供的双机冗余系统接线框图;
29.图5是本发明实施例提供的硬件互联示意图;
30.图6是本发明实施例提供的信号类别示意图图;
31.图7是本发明实施例提供的控制开关板初始化逻辑示意图;
32.图8是本发明实施例提供的主功能板仲裁逻辑示意图;
33.图9是本发明实施例提供的自动软件切换逻辑简图;
34.图10是本发明实施例提供的心跳检测、主备切换、重启的逻辑图;
35.图11是本发明实施例提供的手动软件切换逻辑图;
36.图12是本发明实施例提供的协商做主仲裁逻辑;
37.图13是本发明实施例提供的更换故障机a机的流程图。
具体实施方式
38.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
39.参见图1,为本发明实施例提供的一种基于总线仲裁的冗余系统,如图1所示,该系统可以包括:
40.软件以及硬件一致的两套系统;每套所述系统包括一个处理器单元(被仲裁者1a、被仲裁者2a)以及一个监测单元(仲裁者1b、仲裁者2b);每个所述处理器单元通过总线与所有所述监测单元相连;
41.每个所述监测单元均依据每个所述处理器单元的健康状况生成各自对应的主备仲裁结果;
42.每个所述监测单元生成的所述主备仲裁结果一致后,根据所述主备仲裁结果确定各个所述处理器单元其中一个作为当班处理器单元,剩余的所述处理器单元作为备用处理器单元。
43.本技术实施例提供的基于总线仲裁的冗余系统,采用处理器单元作为被仲裁者,采用监测单元作为仲裁者,同时采用两套监测单元实现了双机冗余系统。每套监测单元可以同时对每个处理器单元进行健康状况的监控形成各自的仲裁结果,通过对双监测单元各自的仲裁结果一致性进行验证,可以有效的提高仲裁的准确性,解决单监测单元易发生仲裁错误的问题。
44.进一步的,所述备用处理器单元处于待机状态。各个所述处理器单元之间可通信相连;各个所述处理器单元均通过既定任务级功能接口接收外部接口数据。所述当班处理器单元接收所述外部接口数据并处理;所述当班处理器单元执行对外信息交互并将当前执行的步骤发送给所述备用处理器单元,以便在执行主备切换后所述备用处理器单元接续所述当班处理器单元当前执行的任务。
45.为了实现对被仲裁者健康状况进行监控,本技术实施例可以提供所述处理器单元包括cpu处理器;每个所述监测单元分别获取与其相连的各个所述cpu处理器的cpu心跳,根据各个所述cpu处理器的cpu心跳判断各个所述cpu处理器的工作状态并根据所述工作状态生成各自对应的主备仲裁结果。具体的,,所述处理器单元还包括fpga器件,所述fpga器件与所述cpu处理器相连;所述fpga器件用于接收所述cpu处理器发送的主备申请以及向所述cpu处理器发送切断中断信号、复位信号、主备标识以及监测单元状态标识。
46.所述fpga器件与各个所述监测单元相连;所述fpga器件用于向各个所述监测单元发送数据信号以及时钟信号并接收各个所述监测单元返回的数据信号以及时钟信号。
47.所述fpga器件还用于根据各个所述监测单元返回信号的周期性和/或crc校验结果对各个所述监测单元的健康状况做出判断。
48.为了进一步提高本技术实施例提供的系统的互相检验能力,本技术实施例还可以
提供各个所述监测单元可通信相连,每个所述监测单元接收对手监测单元发送的数据信号以及时钟信号,并进行解析判别对机发出的主备状态、主备切换、健康状态、控制开关板复位信息。
49.为了实现用户手动进行主备切换,本技术实施例还可以提供每个所述监测单元均与手动主备切换按钮相连。
50.下面以被仲裁者1a、被仲裁者2a为处理器单元,仲裁者1b和仲裁者2b为监测单元为例,对本技术实施例提供的系统进行详细的说明。
51.被仲裁者1a被仲裁者2a为相同设备,仲裁者1b和仲裁者2b为相同设备,被仲裁者1a和仲裁者1b、仲裁者2b之间采用总线连接,被仲裁者2a和仲裁者1b、仲裁者2b之间采用自定义总线连接。
52.被仲裁者1a、仲裁者1b处于一个系统中,被仲裁者2a、仲裁者2b处于另一个系统中,两个系统软件、硬件一致;仲裁者1b、仲裁者2b依据被仲裁者1a、被仲裁者2a的健康状况,进行仲裁,让被仲裁者1a或被仲裁者2a当班,剩余的一个被仲裁者为待机状态。
53.被仲裁者1a、被仲裁者2a对外接口为既定任务级功能接口,被仲裁者1a和被仲裁者2a之间采用序号任务进行断点续接,被仲裁者1a和被仲裁者2a同时接收外部接口数据,并进行处理,但是待机者不对外发送数据,当班被仲裁者接收外部数据并执行对外进行信息交互,同时告诉另一个被仲裁者当前执行的步骤,当被仲裁者发生主备切换时,接续前主设备的任务,进行程序执行;被仲裁者可以接收仲裁1、仲裁2同时仲裁,或接收单一仲裁功能。
54.双机冗余设计结构形式。
55.测试设系统由测试设备3、连接电缆4、交换机5及上位机6等组成,组成框图如图2所示。
56.双机冗余系统中,如图3所示,a套设备(a机)和b套设备(b机)处于同一个测试机箱中,a机中与b机中硬件、软件组成一致。
57.冗余系统架构
58.两台冗余测试设备通过内部背板互联,放置在3u上架机箱内,双机互联信号实现系统冗余功能,双机互联信号示意图,如图4所示。
59.冗余系统信号说明
60.双机互联信号均采用背板直连的方式连接,主要有a机处理器心跳信号、b机处理器心跳信号、总线通信信号(总线信号为数据信号、时钟信号),现以a机控制开关板与b机控制开关板间的总线信号为例进行说明。a机控制开关板发出总线信号,由sm4245进行3.3v转5.0v电平驱动,经光耦芯片后,输出至b机,b机的光耦芯片接收信号,通过sm4245芯片将信号由5.0v转3.3v输入控制开关板,在开关板内进行信号解析,判别对机发出的主备状态、主备切换、健康状态、控制开关板复位等信息。ab机硬件互联如图5所示。
61.双机冗余系统信号包含内部及外部互联信号,根据信号特性可将所有信号归为通信信号、控制信号、心跳信号三类,信号类别如图6所示。
62.双机冗余系统的互联信号说明见表1。
63.本机开关板到本机主功能板fpga,本机主功能板fpga到对机开关板cpld,对机开关板cpld到本机fpga,对机主功能板fpga到本机cpld,本机处理器到本机、对机cpld的互联
总线信号及心跳信号说明如表1所示。
64.表1互联信号说明表
[0065][0066][0067]
主功能板fpga到主功能板处理器的由中断信号、lio信号组成,如表2所示。
[0068]
表2互联信号说明表2
[0069][0070][0071]
表3互联信号说明表3
[0072][0073]
主备机之间的数据同步信号、协商主备的说明书如表4所示。
[0074]
表4互联信号说明
[0075][0076]
冗余通信信号数据帧格式,主功能板与控制开关板的通信信号如表5所示。
[0077]
表5 cpld与主功能板fpga之间的信号帧格式
[0078]
[0079][0080]
表6主功能板fpga与处理器之间的信息流帧格式
[0081]
[0082][0083]
主备方式
[0084]
本技术实施例提供的系统中,双机热备工作模式包含了2种工作方式,分别为:自动主备、协商主备。系统同一时间只能在一种模式下工作,2种工作方式的介绍如下。
[0085]
自动主备
[0086]
测试设备在自动主备模式工作时,其主备机状态由a、b机控制开关板的仲裁逻辑共同决定,该模式包含手动软件切换和自动软件切换两种方式,其工作原理分别如下:
[0087]
自动软件切换
[0088]
初始化状态
[0089]
控制开关板上电后,每1秒检测一次心跳,若检测到第一个心跳后5秒内检测到另外一个心跳,那么可认为两套设备为同时上电。
[0090]
若鉴定到第一个心跳后,5秒内未检测到另外一个心跳,则设备为替换机上电,或者为单机运行状态。初始化流程图如图7、图8所示。
[0091]
表7仲裁卡初始化主备机时异常处理
[0092][0093][0094]
正常流程
[0095]
设备初始化完成后,进入仲裁正常流程。控制开关板根据a\b的主功能板心跳,进行仲裁,当仲裁发生改变时,发出一次仲裁信号,让设备进行主备切换。如图9所示。
[0096]
控制开关板的cpld运行在“自动软件切换”模式时,会进行cpu心跳检测、主备切换、复位重启等操作,其逻辑关系如图10所示。
[0097]
通过图9、图10,可基本搞清楚控制开关板cpld在“自动软件切换”模式下的执行逻辑。
[0098]
手动软件切换
[0099]
应用软件层发起主备机“切换申请”,控制开关板接收“切换申请”后判断备机状态,以确认是否进行主备切换。
[0100]
控制开关板只能在当前备机正常的情况下执行主备机切换,手动软件切换逻辑如图11所示。
[0101]
协商主备
[0102]
测试设备在协商主备模式工作时,其主备机状态由主功能板驱动软件决定。该模式下,a、b的主功能板驱动软件监测自身接口、功能等状态后,通过互联的rs232、can总线共同协商主备机状态。
[0103]
如图12所示,系统进入协商主备模式的条件:
[0104]
a、b机同时检测到系统仲裁心跳异常。
[0105]
主功能板cpu驱动软件进入协商主备模式,其关联信号功能表所示。
[0106]
表8 fpga处理开关板的仲裁信号方式
[0107][0108]
表9协商主备信号功能表
[0109][0110]
维修换机流程
[0111]
双机热备模式工作时,当某一单机出现故障后,处于备机状态,后期需进行维修,可直接关电替换维修,流程如图13所示:
[0112]
更换a机步骤
[0113]
确定a机是备机,b机是主机。如果不是,在b机应用程序界面中点击“软件切换”按键(或串口命令切换,该命令执行需确认双机主功能板是否均异常,均异常时,该命令无法执行,a、b机均需要维修更换),将a机切换为备机,b机切换为主机。
[0114]
将a机断电,拔出a机,插入新的替换机,替换机上电开机;
[0115]
待替换机完成开机后,观察替换机是否为主机,b机是否切换至备机状态(主备指示灯为黄色状态),a机切换至主机,b切换至备机即为正常(当有a机时,a机正常,始终切换至a机为主机,a机开关板为当班卡)。
[0116]
以上步骤完成对a的换机。
[0117]
更换b机步骤与更换a机步骤类似。
[0118]
总之,本技术提供的基于总线仲裁的冗余系统,两个或多个被仲裁对象、仲裁者组成,被仲裁对象与仲裁者之间采用总线连接。具有可靠性高、仲裁及时、响应快等特点。值得大面积推广使用。
[0119]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖
非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0120]
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本技术可借助软件加上必需的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例或者实施例的某些部分所述的方法。
[0121]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0122]
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献