控制计算机系统、用于控制控制计算机系统的方法及控制计算机系统的使用_第1页
控制计算机系统、用于控制控制计算机系统的方法及控制计算机系统的使用_第2页
控制计算机系统、用于控制控制计算机系统的方法及控制计算机系统的使用_第3页
控制计算机系统、用于控制控制计算机系统的方法及控制计算机系统的使用_第4页
控制计算机系统、用于控制控制计算机系统的方法及控制计算机系统的使用_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(19)中华人民共和国国家知识产权局IIIIIIIIIIIIIIIIII

(12)发明专利申请

加(10)申请公布号CN102822807A

(43)申请公布日2012.12.12

(21)申请号201180015562.8D•鲍迈斯特

(22)申请日2011.03.18(74)专利代理机构北京市中咨律师事务所

11247

(30)优先权数据

代理人张亚非杨晓光

102010003161.52010.03.23DE

102010041890.02010.10.01DE(51)Int.CI.

G06F〃/76(2006.01)

(85)PCT申请进入国家阶段日

2012.09.24G06F〃/20(2006.01)

(86)PCT申请的申请数据

PCT/EP2011/0541442011.03.18

(87)PCT申请的公布数据

W02011/117156DE2011.09.29

(71)申请人大陆特韦斯贸易合伙股份公司及

两合公司

地址德国法兰克福

(72)发明人L•D•卡布莱帕T•埃伦贝格权利要求书4页说明书17页附图24页

(54)发明名称

控制计算机系统、用于控制控制计算机系统

的方法及控制计算机系统的使用

(57)摘要

本发明涉及一种控制计算机系统.该控制

计算机系统包括:至少两个被配置为相互冗余

的模块(1001、1002、1003、1004):至少一个比较

单元(1011、1012),用于监视至少两个冗余模块

(1001,1002,1003>1004)的同步状态以及用于检

测同步错误:至少一个外围单元(1030、1031、…、

1038)。该控制计算系统还包括至少一个开关矩

阵(1013),被设置为允许或阻止访问所述至少

两个冗余模块访问(1001、1002、1003、1004)或

者所述至少两个冗余模块访问外围单元(1030、

1031、…、1038)。错误处理单元(1080)被设置为

v接收至少一个比较单元(1011、1012)的信号以及

5驱动至少一个开关矩阵(1013),以便可性地完全

容地或选择性地阻止访问所述至少两个冗余模块或

§者所述至少两个冗余模块访问所述外围单元。

CN102822807A权利要求书1/4页

1.一种控制计算机系统,包括:

-至少两个被设计为相互冗余的模块(1、2、1001、1002、1003、1004、1021、1071);

-至少一个比较单元(20、21、91、92、1011、1012),用于监视至少两个冗余模块(1、2、

1001、1002、1003、1004、1021、1071)的同步状态以及用于检测同步错误;

-至少一个外围单元(9元96、1022、1030、1031、一、1038);

-至少一个开关矩阵(21、1013、1063),被设置为允许或阻止访问所述至少两个冗余模

块或者所述至少两个冗余模块访问外围单元(95、96、1022、1030、1031、~、1038);以及

-优选公共的错误处理单元(44、1080),被设置为从至少一个比较单元(20、21、91、92、

接收信号以及驱动至少一个开关矩阵(1013、1063),以便完全地或选择性地阻

止访问所述至少两个冗余模块或者所述至少两个冗余模块访问所述外围单元。

2.如权利要求1中所述的控制计算机系统,其中:

-所述至少两个冗余模块为用于同步执行控制程序的至少两个处理器单元(1、2、

1001、1002、1003、1004);

-所述比较单元(20、21、91、92、1011、1012)用于监视处理器单元(1、2、1001、1002、

1003、10()4)的同步状态以及用于检测所述处理器单元的同步错误;

-所述控制计算机系统包括至少一个存储器(5、1020、1021);

-所述至少一个开关矩阵(21、1013、1063)被设置为允许或阻止所述处理器单元访问

存储器和一个或多个外围单元;以及

-所述错误处理单元(44、1080)被设置为完全地或选择性地阻止所述两个处理器单元

之一或者两个处理器单元(1、2、1001、1002、1003、1004)访问存储器(5、1020、1021)和/或

外围单元(95、96、1022、1030、1031、…、1038)。

3.如权利要求2中所述的控制计算机系统,包括至少四个处理器单元。

4.如权利要求2或3中所述的控制计算机系统,其中所述处理器单元可以是单处理器、

处理器对中的处理器或双核或多核处理器的核。

5.如权利要求4中所述的控制计算机系统,其具有至少两个比较单元(1011、1012),其

中所述错误处理单元(1080)被设置为从至少两个比较单元(1011、1012)接收信号以及驱

动至少一个开关矩阵(1013、1063),以便完全地或选择性地阻止处理器或核或处理器对访

问存储器(1020、1021)和/或外围单元(1022、1030、1031、…、1038)。

6.如权利要求2至5中的一个权利要求中所述的控制计算机系统,其中当错误发生时,

所述错误处理单元被设置为驱动所述开关矩阵以阻止至少一个故障处理器对或一个故障

处理器单元访问外围单元(1020、1030、1031、…、1038),特别是致动器。

7.如权利要求2至6中所述的控制计算机系统,其中外围单元(1030J031、…、1038)

每次通过至少一个由错误处理单元(1080)控制的外围桥(1022)来访问。

8.如权利要求5至7中的一个权利要求中所述的控制计算机系统,其中至少两个比较

单元(1011、1012)直接连接到处理器单元(1、2、1001、1002、1003、1004),例如处理器对中

的处理器。

9.如权利要求1至8中的一个权利要求中所述的控制计算机系统,其中所述控制计

算机系统包括至少两个单独的开关矩阵(1013、1063),其中第一开关矩阵(1013)与第一外

围桥(1022)以及至少一个第一存储器(1021)相连,而第二开关矩阵(1063)与第二外围桥

2

CN102822807A权利要求书2/4页

(1072)以及至少一个第二存储器(1071)相连。

10.如权利要求9中所述的控制计算机系统,其中所述处理器对中的第--处理器

(1001.1003)与第一开关矩阵(1013)相连,且所述处理器对中的第二处理器(1002、1004)

与第二开关矩阵(1063)相连。

11.如权利要求9或10中所述的控制计算机系统,其中比较单元(1091)比较在第一

开关矩阵(1013)和第一存储器(1021)之间传输的数据与在第二开关矩阵(1063)和第二存

储器(1071)之间传输的数据,以及比较单元(1090)比较在第一开关矩阵(1013)和第一外

围桥(1022)之间传输的数据与在第二开关矩阵(1063)和第二外围桥(1072)之间传输的数

据。

12.如权利要求10或II中所述的控制计算机系统,其中多路复用器(1171、1172、

1173U174)分别位于处理器对中的处理器(1001、1002、1003、1004)和开关矩阵分013、

1063)之间,其中所述多路复用器被连接为使得只要恢复单元(1080)相应地控制多路复用

器(1171、1172、1173、1174),处理器对中的第一处理器(10()1、1003)便可访问第二开关矩

阵(1063)并且处理器对中的第二处理器(1002、1104)便可访问第一开关矩阵(1013)。

13.如上述权利要求中的一个权利要求所述的控制计算机系统,其中至少一个开关矩

阵(1。3、1063)包括监视单元(1014、1064),所述监视单元被设置为阻止访问存储器或外

围单元,或者将所述访问记录在优选地为非易失性的外部或内部存储器。

14.如权利要求2至13中的一个权利要求中所述的控制计算机系统,其中错误处理

单元(1080)在没有介于其间的开关矩阵(1013、1063)的情况下,直接从至少两个比较单元

(1011J012)接收信号。

15.如权利要求1至14中的一个权利要求中所述的控制计算机系统,其中所述控制计

算机系统包括第一和第二易失性存储器和一个非易失性存储器,其中,具体而言,第一处理

器对访问所述第一易失性存储器,第二处理器对访问所述第二易失性存储器,且这两个处

理器对访问所述一个非易失性存储器。

16.如权利要求1至15中的一个权利要求中所述的控制计算机系统,其中所述处理器

对中的第一处理器(100K1003)与至少一个开关矩阵(1013)直接相连,也就是说,能对存

储器(1020、1021)和/或外围单元(1022、1030、1031、…、1038)具有进行读写访问,而处理

器对中的第二处理器(1002,1004)仅能对数据进行读访问,其中,具体而言,与处理器对中

的两个处理器直接相连的比较单元(1011、1012)将数据发送到相连的处理器对中的第二处

理器(1002、1004)。

17.如权利要求1至16中的一个权利要求中所述的控制计算机系统,其中所述错误处

理单元(1080)是恢复控制单元(44),其被设置为在发生同步错误之后,监视两个或更多个

处理器单元(1、2、1001、1002、1003、1004)或两个冗余模块对至少一个测试程序的执行以及

评估测试结果,同时还被设置为配置至少一个第一多路复用器(70、91)或开关矩阵(1013、

1063)的。

18.如权利要求17中所述的控制计算机系统,其中恢复控制单元(44)被设置为将所述

同步错误指定到错误类型以及根据所述错误类型选择测试程序。

19.如权利要求17或18中所述的控制计算机系统,其中恢复控制单元(44)被设置为

根据所述测试结果配置第一多路复用器(70、91)。

3

CN102822807A权利要求书3/4页

20.如权利要求2至19中的•一个权利要求中所述的控制计算机系统,其中,第一外围

单元(72)是可以由两个处理器单元(1、2)中的一个可选地驱动的公共单元,并且所述控制

计算机系统包括至少两个进一步的外围单元(61、63),其中两个外围单元(61、63)中的一

个仅被指定给第一处理器(1),两个外围单元(61、63)中的另一个仅被指定给第二处理器

(2),作为只能被分别指定的处理器(1、2)访问的专用外围单元。

21.如权利要求20中所述的控制计算机系统,其中所述两个进一步的外围单元(61、

63)为冗余单元。

22.--种用于控制控制计算机系统的方法,该控制计算机系统包括至少两个处理器

对(1001和1002、1003和1004)、至少两个用于检测错误的比较单元(1011、1012)、至少一

个允许或阻止处理器或处理器对访问存储器和/或至少一个外围单元的开关矩阵(1013、

1063)、以及至少一个可以控制至少开关矩阵(1013、1063)的错误处理单元(1080),其中所

述处理器对可以执行不同的程序,以便以无错误模式提供功能,并且如果发生错误,则无错

误处理器对承担故障处理器对的至少某些功能。

23.如权利要求22中所述的方法,其中对于所述控制计算机系统驱动的装置的安全关

键的功能独立于错误的发生执行。

24.如权利要求22或23中所述的方法,其中当错误发生时,非安全关键功能至少部分

地不再提供。

25.如权利要求22至24中的一个权利要求中所述的方法,其中当错误发生时,阻止故

障处理器或处理器对访问所述外围单元。

26.如权利要求22至25中的一个权利要求中所述的方法,其中在错误发生之后,所述

故障处理器对执行诊断程序。

27.如权利要求26中所述的方法,其中对已发生的错误进行分类,其中至少在临时错

误和永久错误之间做出区分。

28.如权利要求27中所述的方法,其中所述故障处理器对在发生永久错误之后永久

停用。

29.如权利要求27或28中所述的方法,其中当所述故障处理器对运行完诊断程序,而

没有检测到永久错误时,所述两个处理器对可以再次执行不同的程序。

30.如权利要求22至29中的一个权利要求中所述的方法,其中所述错误处理单元在非

易失性存储器中记录错误的发生。

31.如权利要求30中所述的方法,其中如果已发生的错误数和/或错误频率超过预定

阈值,则处理器对永久停用。

32.在机动车辆中使用如上述权利要求之一中所述的控制计算机系统,特别是为了控

制或调节刹车系统。

33.一种用于控制控制计算机系统的方法,包括:

-提供具有以下部件的控制系统:

-至少两个处理器对,每个对具有至少两个处理器(1001和1002、1003和1004),

-至少一个用于检测错误和用于监视每个处理器对中的处理器(1001和1002、1003和

1004)的同步的比较单元(1011、1012),

-至少一个允许或阻止所述处理器对中的处理器访问存储器和/或一个或多个外围单

4

CN102822807A权利要求书4/4页

元的开关矩阵(1013、1063),以及

-至少一个用于驱动开关矩阵(10133063)的错误处理单元(1080);

-在一处理器对上同步执行至少一个第一安全相关软件程序以及在另一处理器对上同

步执行至少一个第二安全相关软件程序,以便驱动一个或多个外围单元和/或存储器:

-通过比较单元(1011、1012)监视每个处理器对中的处理器(1001和1002、1003和

1004)的同步以及当处理器对中的两个处理器(1001和1002、10()3和1004)失同步时,通过

比较单元(1011、1012)输出同步错误信号;以及

-如果已输出所述同步错误信号:

-中断所述处理器对所述第一安全相关软件程序和所述第二安全相关软件程序的执

行,

-执行测试以检查所述两个处理器对之一是否发生故障,以及

-如果所述两个处理器对之一发生故障,则在无错误处理器对上执行所述第一安全相

关软件程序和所述第二安全相关软件程序,并且通过错误处理单元(1080)驱动开关矩阵

(1013、1063),以便如果在该处理器对中只有一个处理器发生故障时,阻止故障处理器对或

处理器访问存储器和/或一个或多个外围单元。

34.如权利要求33中所述的方法,其中所述测试包括两个处理器对同时执行至少一

个测试程序,其中当满足以下至少一个条件时,将所述处理器对中的一处理器视为发生故

障:

-所述处理器未在第一时间段T1内执行测试程序,

-所述处理器未成功执行测试程序,

-经过第一时间段T1之后,所述处理器未更改为静止状态第二时间段T2o

35.如权利要求33或34中所述的方法,其中评估所述同步错误并将其指定到错误类

型,其中根据所述错误类型选择至少一个测试程序以便检杳处理器。

5

CN102822807A说明书1/17页

控制计算机系统、用于控制控制计算机系统的方法及控制

计算机系统的使用

技术领域

[0001]本发明涉及冗余处理器控制器和控制方法。更具体地说,本发明涉及冗余双处理

器控制器和多核冗余控制计算机系统。

背景技术

[0002]已知的做法是使两个处理器以锁步(lockstep)模式执行相同的指令并通过比较

输出数据来判定是否发生错误。在这种情况下,两个处理器可通过时钟同步的方式运行或

以一定的时间偏移(在比较期间相应地被补偿)运行。在这种情况下,可能发生例如由制造

期间引入的故障造成的永久错误和例如由临时电磁干扰造成的临时错误。如果发生锁步错

误,程序执行会被中断,在最简单的情况下,计算机系统会被停用,因此,这种情况下,来自

两个处理器的输出数据相互不同。

[0003]但是,对于双冗余处理器而言,提供计算机系统在发生错误时得以继续执行所需

程序的容错尤其具有挑战性。已有人尝试在只有两个冗余处理器的安全平台中帮助实现

容错能力。US5915082B2公开了其中为内部总线提供被比较的奇偶校验位的系统体系结

构。在一端检测到奇偶校验错误之后,会断开相关处理器,从而其不再对系统有任何影响。

每次在没有奇偶校验错误的情况下发生锁步错误之后,系统便会关闭。这种基于奇偶性检

查的过程没有充分涵盖其中即使在出现锁步错误之后,也非常需要冗余系统的可用性的情

况。如果两个内部冗余单元同时显示不同的多位错误时,奇偶性检查可以导致例如不正确

的决定。

[0004]进一步已知的容错系统体系结构包括至少三个具有共享或共用内存的处理器核。

在这种情况下,总是通过监视总线信号来检查处理器的锁步模式。锁步模式在下文中也被

称为处理器同步执行程序或程序部分。

[0005]如果活动处理器失败,则活动处理器通过输入/输出通道驱动的存储区和组件的

所有权移交给另一处理器。在锁步错误之后的锁步错误状态(同步错误)中,数据访问和控

制进程从活动处理器中移除并由另一处理器维护。

[0006]包括处理器的三重冗余(TMR:三模块冗余)和一个共用存储器的容错系统的经典

最低配置对于许多安全体系结构而言仍然非常昂贵,所述安全体系结构的安全概念基于使

用以锁步或同步方式运行的两个冗余处理器。但是,容错能力对于带有双冗余的处理器而

言尤其具有挑战性。

[0007]US7366948B2和US2006/0107106描述了用于帮助实现由多个在锁步模式中运

行的处理器对组成的系统中的可用性的方法。两个冗余处理器在每个对中进行组合,并且

它们的输出不断进行比较。如果在一个处理器对中发生错误,则另一处理器对将作为引导

处理器对承担驱动系统的任务。同时,出现错误的处理器对将尝试恢复同步并使其可用作

备用处理器对。这样确保系统的高度可用性。然而,此方法对于许多嵌入式系统而言成本太

高,因为当不存在错误时,不使用一个处理器对,因此此方法提供的成本/性能比太差。被

6

CN102822807A说明书2/17页

分为两对并且输出信号被比较的四个处理器必须始终被用于单个任务。如果在一处理器对

中检测到锁步错误(LOL:锁步丢失)或另一-处理器内部错误,操作系统便会将故障处理器对

更改为静止(quiescent)状态并激活另一处理器对。

[0008]EP1380953B1定义了具有锁步同步功能的容错计算机系统,所述系统包含多个

带有处理器和存储器的计算模块,并描述了一种用于再同步所述系统的方法。由于每个计

算模块同步处理相同的指令串,因此该计算机系统并非很有效率。

[0009]EP1456720B1公开了用于包括两个或更多个控制计算机系统的机动车辆中安全

关键应用的计算机组,每个控制计算机系统包括两个控制计算机,所述控制计算机以时钟

同步方式运行,并且具有在芯片上集成的部分或完全冗余的外围组件以及部分或完全冗余

的存储元件。以时钟同步方式运行的控制计算机系统的控制计算机与仲裁单元相连,所述

仲裁单元监视这些计算机是否出现错误并且可以将指定给控制计算机系统的通信控制器

连接到车辆数据总线,或者可以分离所述控制器。如果其中一个控制计算机出现故障,则对

应的控制计算机系统部分地或完全地停用。

[0010]DE102009000045A1公开了一种用于操作包含计算机系统的控制设备的装

置,所述计算机系统包括两对执行单元,每对执行单元包含两个执行单元,并且具体而言,

所述控制设备在机动车辆中使用。每对中的执行单元执行相同的程序,并且每个执行单元

的输出信号由相应的比较单元相互比较,并且如有不一致,则输出错误信号。如果针对第一

对执行单元出现错误信号,则关闭该对,并且计算机系统继续使用第二对执行单元运行,并

且预先警告信号被输出到驱动器。

[0011]所述文档的缺点是必须提供高度冗余,因为当没有错误时,至少一个处理器对不

活动或者执行与驱动外围单元的活动处理器对相同的程序。因此,每个单独的处理器必须

提供全部所需的计算能力,其结果是已知的计算机系统不能以非常高效的方式运行。从成

本角度来讲,这种情况是不合需要的,尤其是对于大批量生产的系统。

[0012]US7366948B2中描述的方法对于嵌入式系统而言是成本非常高的解决方案。另

一个事实是,除了处理器核之外,其他组件不能总是以冗余方式实现。在设计用于不同安全

相关系统(例如,汽车行业中的刹车应用)的安全体系结构时,财务原因通常起着重要作用。

程序存储器,例如闪存,不是冗余的,但是由所有现有处理器使用。传统方法在确保基于冗

余处理器的安全体系结构中的可用性的方法中不会考虑非冗余组件的这种边界条件。有关

确保安全体系结构中的处理器可用性的另一问题是只能在成功完成安全检查之后才能再

次启动之前失败的处理器。

[0013]在此背景之下,需要仅有两个冗余处理器并且允许实现系统的高度可用性的安全

体系结构。另外还需要具有三个或更多处理器(例如两个处理器,每个带有两个核)并允许

实现系统的高度可用性的安全体系结构。

发明内容

[0014]根据一个方面,本发明的目标是提供同时容错和高效的控制计算机系统。

[0015]根据一个实施例,基于冗余处理器核对的安全体系结构旨在被配置以保留现有安

全级别,同时实现系统的高级别可用性。此外,处理器旨在在正常(或无错误)模式下提供高

级别性能。检测到错误之后,旨在在考虑非冗余组件的安全连接的情况下维持系统的可用

7

CN102822807A说明书3/17页

性。

[0016]在此背景下,提供了如权利要求1中所述的控制计算机系统。同时还提供了双处

理器控制设备。还提供了如权利要求22或33中所述的用于控制控制计算机系统的方法。

还提供了如权利要求32中所述的控制计算机系统的使用。

[0017]一个实施例提供了一种控制计算机系统。所述控制计算机系统包括至少两个被设

计为相互冗余的模块;至少一个用于监视所述至少两个冗余模块的同步状态以及用于检测

同步错误的比较单元;至少一个外围单元;至少一个被设置为允许或阻止对所述至少两个

冗余模块的访问或由所述至少两个冗余模块对外围单元的访问的开关矩阵。所述控制计算

机系统还包括被设置为从所述至少一个比较单元接收信号以及驱动所述至少一个开关矩

阵,以便完全地或选择性地阻止对所述至少两个冗余模块的访问或由所述至少两个冗余模

块对所述外围单元的访问的错误处理单元。

[0018]当发生错误时,所述错误处理单元驱动的开关矩阵便会阻止对故障模块的访问或

者故障模块对外围单元的访问。根据一个实施例,所述错误处理单元启动和监视用于检查

冗余模块中是否有错误的一个或多个测试,并且如果检测到错误,便会控制所述开关矩阵,

具体而言,使得不再为安全相关应用考虑故障模块。

[0019]根据一个实施例,所述至少两个冗余模块是至少两个用于同步执行控制程序的处

理器单元或其他单元,例如冗余设计的存储器模块。

[0020]根据一个实施例,所述控制计算机系统包括至少四个处理器单元,其中所述处理

器单元可以是单处理器、处理器对中的处理器或双核或多核处理器中的核。

[0021]根据一个实施例,基于冗余处理器核对的安全体系结构被修改以使得故障处理器

对、具有至少两个处理器核的处理器的单独的故障处理器核和/或故障组件不能驱动现有

的致动器,因为在检测到错误之后,一独立模块阻止故障处理器对对安全相关的外围单元

的任何访问。无错误处理器对或处理器核或故障组件将离开正常模式,以便确保应急模式。

在应急模式中,每个无错误处理器对/处理器核在必要时承担故障处理器对/处理器核的

某些任务,并且还执行其原始任务的产集。对于每个处理器对/处理器核,在后者上运行的

软件程序被分为两组。一组软件程序旨在能够在既正常模式中也在应急模式中运行,而另

一组软件程序在应急模式中关闭。因此,无错误处理器对/处理器核能够在应急模式中承

担附加任务。每个软件组件针对应急模式被划分为适当的或非适当的以及/或者非必要的

或必要的。如果处理器对/处理器核发生故障,则对于应急模式而言必要的任务由无错误

处理器对/处理器核来承担。

[0022]在本发明的一个优选实施例中,目标是恢复安全体系结构的正常模式,正是基于

此原因才对故障处理器对/处理器核执行若干检查测试。在执行这些测试时,该处理器对/

处理器核将存储各种结果,所述结果旨在对应于已执行算法的先前已知结果。在这种情况

下,一独立硬件模块检查结果的正确性。在成功测试恢复条件之后,所有处理器对/处理器

核返回到正常模式。

[0023]由于根据本发明的控制计算机系统可以阻止故障处理器对/处理器核访问外围

单元,因此,阻止了由故障处理器对/处理器核驱动致动器所导致的损害。

[0024]当没有错误时,根据本发明的控制计算机系统的单独处理器对或处理器核可以执

行不同的程序,从而提供了高计算能力。如果发生错误,则由无错误处理器对或无错误处理

8

CN102822807A说明书4/17页

器核承担故障处理器对/处理器核的关键功能,而某些非关键功能不再可用。此应急模式

允许根据本发明的控制计算机系统的高度容错。

[0025]本发明还涉及在机动车辆中使用根据本发明的控制计算机系统,具体地以便控制

或调节刹车系统。

[0026]根据一个或多个实施例,例如采取冗余双处理器控制设备形式的控制计算机系统

包括用于同步执行控制程序的第一处理器(或处理器的第一核)和第二处理器(或处理器的

第二核)、至少一个选择性地将至少一个要被驱动的第一外围单元连接到两个处理器之

的第一多路复用器,以及至少一个用尸监视所述两个处理器的同步状态和用「检测同步错

误的第一比较单元(比较器)。所述控制计算机系统(控制设备)还包括恢复控制单元(在某

些实施例中也称为SAM模块),所述恢复控制单元被设置为在同步错误发生之后监视所述两

个处理器对至少一个测试程序的执行并评估测试结果,同时还被设置为配置至少第一多路

复用器。

[0027]所述比较单元监视所述处理器的同步操作,也就是说锁步。这可以通过“逐行”比

较控制程序的执行来实现,在这种情况下,相同的结果必须在相同的时间出现。如果情况并

非如此,则出现锁步错误,也就是说,处理器不再同步运行。

[0028]控制程序的同步执行是冗余系统的一个重要特征,因为它可用于检查当前活动的

处理器是否在没有错误的情况下运行,在这种情况下,假设两个处理器中的相同错误的同

时发生在统计学上而言是非常不可能的。但是,如果发生同步错误,则最初不清楚所述错误

发生在活动处理器(核)上还是被动处理器(核)上。在这种情况下,主动处理器(核)旨在被理

解为意味着实际驱动外围单元的处理器。被动处理器(核)是指仅附随地(concomitantly)

同步运行的处理器,也就是说,接收与主动处理器相同的数据并执行相同的程序步骤。

[0029]如果发生同步错误,则不再确保控制被正确地执行,也就是说,存在风险,尤其是

在例如汽车行'也或在其他行业中所使用的安全相关系统中。诸如图7和8中所示的控制系

统之类的控制系统通常必须完全关闭。

[0030]这里所提出的解决方案提供了恢复控制单元(独立硬件模块),该单元使得两个处

理器(核)在发生同步错误时接受测试,从而判定其中哪个处理器出现故障。执行测试并评

估测试结果之后,恢复控制单元决定后续过程。

[0031]如果两个处理器均通过测试,则认定这两个处理器均无错误。在这种情况下,继续

控制程序的同步执行。

[0032]该解决方案具有决定性优势,即继续驱动外围单元,面同时保持高安全级别,因为

两个处理器已经过用于表明无错误的测试。该解决方案与其他解决方案相比具有决定性优

势,在所述其他解决方案中,原则上,当发生同步错误(锁步错误)之后执行完全关闭,并且

系统只能从外部再次重置。在这种情况下,必须知道仅仅重置系统对于安全相关应用而言

通常不是一项令人满意的解决方案,因为未执行任何错误评估,也就是说,仍未确定导致同

步错误的原因。因此,这里所描述的解决方案提供了一利处理同步借误的方式,并且允许在

发生锁步错误之后恢复两个冗余系统的同步。

[0033]相反,如果认定处理器(核)发生故障,则所述恢复控制单元(SAM模块)会重新配置

控制设备(控制计算机系统),确切地讲,其重新配置方式使得从那以后忽略故障处理器的

输出,并确保外围单元于是只能由无错误处理器而非故障处理器驱动。这通常是通过重新

9

CN102822807A说明书5/17页

配置第一多路复用器来实现的,其结果是数据流仅在外围单元和无错误处理器之间才是可

能的。此外,重新配置导致比较单元不再执行任何监视。

[0034]该解决方案具有决定性优势,即可以继续驱动外围单元,即使现在这是在处理器

端没有冗余的情况下实现的。与在发生同步错误(锁步错误)时完全关闭控制的已知解决方

案相比,这是一种巨大的优势。所提出的解决方案增强了系统可用性,这对于关键应用程序

而言尤其重要,从而可以继续维持对系统的控制。但是,控制设备可以发出错误信号以便指

示目前存在的“单处理器操作”,从而可以执行维护。

[0035]这里所提出的并且具有用于控制同步错误的装置的冗余控制装置可以在任何所

需的安全相关系统中使用。汽车行业中的刹车应用是一个例子。在这种情况下,仅基于两

个冗余处理器的控制装置被配置为使其保持现有安全级别并允许系统的高度可用性。

[0036]原则上,要驱动的外围单元可被理解为意味着由相应处理器访问的任何单元。例

子有存储器、致动器、输入/输出单元和传感器。

[0037]根据一个或多个实施例,所述恢复控制单元被设置为将同步错误指定到错误类型

和根据所述错误类型选择测试程序。对已发生的错误进行分析以便找出可能发生错误的地

方或哪个组件造成错误。然后据此选择适当的测试程序,在这种情况卜.,例如在所述恢复控

制单元中提前存储测试程序和预期测试结果。如果在不同的存储器地址中呈现了错误(也

就是说,两个处理器输出之间的差异),则可以选择例如可用于检测存储器错误的测试程

序。此方法改善了错误定位。

[0038]根据一个或多个实施例,所述恢复控制单元(SAM模块)被设置为根据测试结果配

置第一多路复用器。所述多路复用器(以及一般地,控制设备)因此根据测试结果进行配置。

所述多路复用器的功能可能由总线矩阵承担。

[0039]根据一个或多个实施例,所述控制设备还具有至少一个用于可选地将至少一个要

被驱动的第二外围单元连接到两个处理器之一-的第二多路复用器,其中所述第二多路复用

器可由所述恢复控制单元进行配置。因此,所述控制装置使得能够在考虑安全方面的同时

可选地驱动多个外围单元。

[0040]根据一个或多个实施例,所述控制设备还具有至少一个用于监视所述两个处理器

的同步状态和用于检测同步错误的第二比较单元(比较器)。这样允许进行相互监视,从而

增加系统可靠度。

[0041]根据一个或多个实施例,所述控制设备具有将所述第一-处理器连接到所述第一多

路复用器的第一总线矩阵,以及将所述第二处理器连接到所述第二多路复用器的第二总线

矩阵。

[0042]根据一个或多个实施例,所述第一外围单元为可以可选地地由所述两个处理器之

一驱动的公共单元。根据一个实施例,所述控制装置还具有至少两个进一步的外围单元,其

中所述两个外围单元中的一个仅被指定给所述第一处理器,所述两个外围单元中的另一个

仅被指定给所述第二处理器,作为只能被分别指定的处理器访问的专用外围单元。在这种

情况下,公共外围单元或组件被理解为意味着以冗余方式驱动的单元,也就是说,由所述两

个处理器之一可选地实现驱动,在这种情况下,另一处理器用于进行比较。与之相对,专用

单元在每种情况下仅由所述两个处理器之一驱动。相应的其他处理器不能访问此单元,甚

至不能通过多路复用器访问。这里提供的解决方案允许恢复两个冗余处理器之间的同步,

10

CN102822807A说明书6/17页

即使考虑到因成本原因通常在各种嵌入式系统中实现的非冗余组件时也是如此。

[0043]根据一个或多个实施例,所述两个进一步的外围单元为冗余单元,也就是说,它们

在物理上相同并用于执行相同功能。

[0044]根据一个或多个实施例,所述第一和/或第二比较单元被配置为在发生同步错误

时产生同步错误信号。所述同步错误信号例如可以是中断。

[0045]一个实施例提供一种例如采取冗余双处理器控制设备形式的控制计算机系统。所

述控制计算机系统包括:用于同步执行控制程序的第一-处理器和第二处理器;至少一个用

于可选地将公共第一外围单元连接到所述两个处理器之■-的第-多路复用器;至少两个进

一步的外围单元,其中所述两个外围单元中的一个仅被指定给所述第一处理器,所述两个

外围单元中的另一个仅被指定给所述第二处理器,作为只能被分别指定的处理器访问的专

用外围单元;至少一个用于监视所述两个处理器的同步状态和用于在所述两个处理器失同

步(desynchronize)时,检测同步错误的第一比较单元;被设置为监视在同步错误发生之

后由所述两个处理器对至少一个测试程序的执行和评估测试结果,以及被设置为根据所述

测试结果配置所述第一多路复用器的恢复控制单元。

[0046]根据一个实施例,所述控制计算机系统还包括:将所述第一处理器连接到所述第

一多路复用器的第一总线矩阵;将所述第二处理器连接到所述第一多路复用器的第二总线

矩阵。

[0047]一个实施例提供一种例如采取冗余双处理器控制设备形式的控制计算机系统,包

括:用于同步执行控制程序的第一处理器和第二处理器;至少一个第一和一个第二外围单

元;至少一个用于可选地将所述第一外围单元连接到所述两个处理器之一的第一多路复用

器;至少一个用于可选的将所述第二外围单元连接到所述两个处理器之一的第二多路复用

器;至少一个第一和一个第二比较单元,用于分别监视所述两个处理器的同步状态和用于

检测同步错误;被设置为监视在同步错误发生之后由所述两个处理器对至少一个测试程序

的执行和评估测试结果,以及被设置为根据所述测试结果配置所述第一和第二多路复用器

的恢复控制单元。

[0048]根据一个实施例,例如采取冗余双处理器控制设备形式的控制计算机系统还包

括:将所述第一处理器连接到所述第一多路复用器的第一总线矩阵:将所述第二处理器连

接到所述第二多路复用器的第二总线矩阵。

[0049]一个或多个实施例提供了一种控制方法。所述控制方法包括由第一处理器和第二

处理器同步执行控制程序,所述第一-处理器和第二处理器通过多路复用器连接到至少一个

要被驱动的外围单元,在特定时刻,所述两个处理器中的仅一个驱动所述外围单元。所述控

制程序的同步执行由比较单元进行监视。当两个处理器失同步时,便会输出同步错误信号。

在输出同步错误信号之后,首先中断两个处理器对捽制程序的执行。然后执行测试以检查

所述两个处理器之一是否发生故障。如果两个处理器均无错误,则继续由所述两个处理器

同步执行控制程序。相反,如果所述两个处理器之一-被确定发生故障,则配置多路更用器和

比较单元,以使得不进一步与故障处理器进行通信,比较单元不进一步执行监视,以及无错

误处理器驱动外围单元。所述控制程序的执行由无错误处理器继续。如果两个处理器都发

生故障,则关闭控制器。

[0050]根据一个或多个实施例,所述测试包括由所述两个处理器同时执行至少一个测试

11

CN102822807A说明书7/17页

程序,当满足以下至少一个条件时,认定所考虑的处理器发生故障:

[0051]-所述处理器在第一时间段T1内未执行测试程序,

[0052]-所述处理器未成功执行测试程序,

[0053]-经过第一时间段T1之后,所述处理器未在第二时间段T2内更改为静止状态。

[0054]这旨在确保不仅考虑正确的或不正确的执行,而且也考虑处理器是否在预定时间

内执行了测试。检查静止状态用于判定处理器是否在不执行任何指令时仍然输出数据。这

同样指示故障处理器。

[0055]根据一个或多个实施例,评估同步错误并将其指定到错误类型,其中至少一个测

试程序根据所述错误类型进行选择,以便检查处理器。这样便可能选择一个、或者可能多个

错误特定的测试程序。

附图说明

[0056]在下面的描述、附图和权利要求中描述了进一步的实施例、修改和优势。现在使用

附图中示出的特定示例性实施例描述本发明。但是,所述实施例不应被理解为限制性的。通

过下面的描述,本领域的技术人员将理解旨在附随地包括在保护范围内的进一步的修改。

[0057]图1示出根据一个实施例的正常模式中的采取控制装置形式的控制计算机系统,

图2示出当一个处理器失败时的控制计算机系统(控制装置)。

[0058]图3示出根据一个实施例采取控制装置形式的控制计算机系统。

[0059]图4示出根据一个实施例采取控制装置形式的控制计算机系统。

[0060]图5示出根据一个实施例采取控制装置形式的控制计算机系统。

[0061]图6示出根据一个实施例的控制程序的序列。

[0062]图7示出具有两个处理器的体系结构。

[0063]图8示出体系结构,其中将外围模块分为两组A和B„

[0064]图9示出控制计算机系统。

[0065]图10示出根据一个实施例的控制计算机系统。

[0066]图11示出根据一个实施例的错误处理方法的流程图。

[0067]图12示出进一步的控制计算机系统。

[0068]图13示出根据一个实施例的控制计算机系统。

[0069]图14示出根据木发明采取图13的体系结构的控制计算机系统,其中处理器核2B

在恢复之后关闭。

[0070]图15示出根据本发明采取图13的体系结构的控制计算机系统,其中处理器核1A

和2B在恢复之后关闭。

[0071]图16示出根据本发明采取图13的体系结构的控制计算机系统,其中处理器核IB

和2B在恢复之后关闭。

[0072]图17示出根据一个实施例的控制计算机系统。

[0073]图18示出根据一个实施例的错误处理方法的流程图。

[0074]图19示出根据一个实施例的错误处理方法的流程图。

[0075]图20示出图17的体系结构,其中处理器核2B在恢复之后关闭。

[0076]图21示出图17的体系结构,其中处理器核1B和2B在恢复之后关闭。

12

CN102822807A说明书8/17页

[0077]图22示出图17的体系结构,其中处理器核1A、2A和1B在恢复之后关闭。

[0078]图23示出图17的体系结构,其中处理器核1A和2B在恢复之后关闭。

[0079]图24示出图17的体系结构,其中数据存储器21在恢复之后关闭。

具体实施方式

[0080]图1示意性地示出具有第一处理器1和第二处理器2以及第一多路复用器91和

第二多路复用器92的控制计算机系统或控制装置。多路复用器91、92中的每个形成带有

--个相应的比较设备的单元,所述相应的比较设备在附图中被指定为比较器。多路复用器

91、92中的每个与相应的外围单元95、96相连并使处理器1、2能够可选地访问外围单元

95、96。恢复控制单元44同时与两个处理器1,2以及多路复用器95、96相连。

[0081]处理器1、2也可以是处理器核。

[0082]图1中示出的粗箭头示出实际由多路复用器91、92从处理器1、2传输到外围单元

95、96的数据流。处理器1与外围单元95通信并控制后者,且处理器2与外围单元96通

信并控制后者。在这种情况下,处理器1、多路复用器/比较器91和外围单元95形成分支

A,而处理器2、多路复用器/比较器92和外围单元96形成分支Bo但是,存在交叉的通信

路径,确切地讲,一方面,在处理器2和多路复用器/比较器91之间,另一方面,在处理器1

和多路复用器/比较器92之间存在交叉通信路径。

[0083]比较楷91.92中的每个比较处理器是否相互同步运行,也就是说,比较它们是否

在相同时间输出相同的结果。如果情况并非如此,则存在同步错误。在这种情况下,测试处

理器并根据测试结果重新配置控制设备。这在图2中示意性地示出。

[0084]在图2中,假设由恢复控制单元44监视和评估的测试揭示出处理器1发生故障。

在这种情况下,两个多路复用器91.92被重新配置,确切地讲,被配置以使得两个多路复用

器91、92忽略处理器1的输出。与此同时,多路复用器91现在允许处理器2和外围单元95

之间的通信。处理器2现在驱动分支A和分支B两者中的外围单元。处理器2不必为此目

的进行不同的编程,因为处理器2已经为了比较目的在正常状态中针对外围单元95(分支

A)执行了控制程序。差别仅在于现在它还对外围单元95具有写权限。比较器的比较功能

也被禁用,因为所述比较器现在不再接收来自处理器1的输入。这样做是必要的,从而比较

器91.92不输出任何进一步的错误信号。

[0085]因此,可以再次继续执行控制程序(其包括用于外围单元95和外围单元96的控制

程序)。这增加了系统可用性。

[0086]如果测试揭示出两个处理器1、2均无错误,则再次假设图1中的状态。如果两个

处理器均发生故障,则系统关闭。

[0087]图1和2中示出的程序是有利的,具体而言,在未被设计为冗余的外围单元中是有

利的。

[0088]图1和2中示出的体系结构包括将外围模块划分为两个组A和每个组包括至

少一个处理器1、2、一个总线转接开关(总线矩阵、总线交叉开关)(此处未示出)和要驱动的

外围模块95、96。存储器模块可以在一个组或在两个组中实现。A端实际上(也就是说物理

上)始终由处理器1(处理器A)驱动。B端实际上始终由处理器2(处理器B)驱动。来自

外围模块95的数据可以通过多路复用器91.92横向传递到B端。处理器1可以通过类似

13

CN102822807A说明书9/17页

的方式从外围模块96读取数据。

[0089]图3示出其中外围单元22(在那里被称为外围模块)由两个处理器1和2冗余地

驱动的实施例,在预定时间,两个处理器中仅有一个实际驱动单元22。这是通过多路复用

器21实现的。进一步的外围单元5(可以是公共内部外围单元,例如存储器5)通过多路复

用器20与两个处理器1、2相连。处理器1、2本身各通过总线矩阵3、4与多路复用器20、

21相连。也是在该实施例中,多路复用器20、21(与相应的比较单元(比较器)一起位于一

个单元中)可以在发生错误时以适当方式进行配置,以便保持控制器可用。

[0090]根据一个或多个实施例,控制器的共用区域和控制器的专用冗余区域之间具有明

确的分界。专用组件或单元被指定给每个处理器1、2并且仅由所述处理器驱动。专用组件

(图4中的两个外围单元61、62)优选地为冗余的,以便能够尽可能模拟冗余专用区域的完

美对称性。由于财务原因,某些组件(例如,程序存储器)可以仅实现一次,确切地讲,在共用

区域内实现一次。在锁步模式中,两个处理器1、2同步运行。共用组件或外围单元的实际

驱动可以由两个冗余处理器中的任何一个承担并且在特定时刻仅由一个处理器实际执行,

而由于锁步模式的缘故,另一-处理器及时接收所有数据。

[0091]在检测到锁步错误之后,每个处理器1、2旨在在时间间隔T期间,在指定的专用区

域中尽可能保持活动,并且不旨在执行在体系结构外部有影响的任何安全相关功能。也就

是说,具体而言,中断具有外部效果的外部外围单元或组件的驱动。

[0092]为了对非冗余组件(例如,程序存储器)进行必要的访问,在时间间隔T1内实现用

于两个冗余处理器1、2的多路复用工作模式。每个锁步错误触发程序序列中的中断。在中

断例程中,处理器1、2将相互独立地执行相同的测试程序并存储测试结果以便以后通过自

主硬件监视模块进行检查,所述自主硬件监视模块在附图中是指恢复控制单元44。

[0093]有些测试程序可以从错误上下文中得出。例如,对所发生的错误进行分类并将其

指定到错误类型,且该指定用于选择相应的一个或多个测试程序。

[0094]每个处理器旨在温和地退出中断的执行而不会回弹(rebound)。背景是测试程序

由中断启动并且,在测试程序结束之后,处理器1、2通常希望再次继续由于所述中断而中

断的控制程序。这旨在被阻止,而处理器1、2旨在更改为静止状态。这种情况是否发生也

是测试的一部分。

[0095]每个处理器旨在接着存储其状态特征,例如,存储在可由自主硬件监视模块(恢复

控制单元44)读取的寄存器内。时间段使用所述自主硬件监视模块的计时器来测量。

[0096]在此不确定的时间之后(在停用模式以外),冗余处理器旨在在时间段T2中具有闲

置模式(静止状态)。如果处理器在时间段T2内访问组件,例如存储器模块或外围模块,则

它会被恢复控制单元44自动排除于恢复过程之外。在时间窗口丁2之后,恢复控制单元44

将两个处理器1、2的测试结果与硬件中预编程的值进行比较。如果处理器的测试结果不对

应于预定值,则相应的处理器不再被考虑用于运行的同步化尝试。相应地,处理器1、2的存

储的状态特征也必须适合于恢复。如果结果评估是肯定的,则恢复控制单元44将通过中断

来引起返回到锁步模式。如果仅有一个处理器成功地执行了所有测试,则该处理器将驱动

指定给它的外围模块和所有共用组件。

[0097]该应急模式增强了系统可用性,但以降低的安全级别运行。

[0098]图4示出构建在图3的实施例上的进一步的实施例。控制装置的体系结构被划分

14

CN102822807A说明书10/17页

为两个专用区域30和31(这两个区域被称为区域A利B)和一个公共区域40。所述专用区

域包含在物理上冗余的模块或外围单元和组件。采取硬件模块形式的恢复控制单元44用

于在发生锁步错误之后可靠地恢复同步。如果发生锁步错误,恢复控制单元44便会阻止所

有对安全相关外围模块或单元的访问。这些单元具体而言为公共外围单元72,以及例如,冗

余存在的外围单元61和63。这些单元通过相应的外围桥(peripheralbridge)60、71和

62连接在一起。

[0099]锁步错误触发程序序列中的中断。在中断例程的后续执行中,每个处理器1、2只

能访问位于指定给它的专用区域中的模块,并且不能执行任何安全相关部分功能。此外,可

以在多路复用工作模式中实现对非安全相关组件41、42的访问。此类组件41、42例如为公

共程序域42和公共RAM域。组件42具有模块50(该模块包括多路复用器、控制器和比较

器),以及实际的程序存储器51。组件41具有模块53(该模块包括多路复用器、控制器和

比较器),以及在此实现为RAM的存储器52。

[0100]在专用外围区域中,在每种情况下,为了测试适当处理器的目的保留一个小的地

址空间。中断例程用于检查体系结构的完整性,以及最重要的是,检查处理器的完整性。在

中断执行结束时,处理器旨在将计算结果存储在为测试目的保留的地址区域内。正确的结

果提前存储在恢复控制单元44中。所述中断例程由测试程序构成,每个测试程序旨在在特

定的时间间隔内提供正确结果。在预定时间段过后,恢复控制单元44检杳处理器存储的结

果的正确性。锁步模式的恢复假设恢复控制单元44要检行的所有结果均正确。否则,只rr

具有正确结果的处理器将继续针对运行的应用保持是活动的。

[0101]由于中断例程不在锁步模式中运行,因此模块50被配置以使得处理器1、2均可以

多路复用工作模式访问程序存储器51。

[0102]图5示出作为图1和2的扩展的实施例。在这种情况下,恢复控制单元44以类似

于图4中的方式运行。如果处理器1、2不提供任何正确的结果来恢复锁步模式,则恢复控

制单元44将配置对应的外围控制器91或92(其在此形成多路复用器和比较器),以使得外

围控制器91或92下面的外围模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论