CN103262045B - 具有容错架构的微处理器系统 - Google Patents
具有容错架构的微处理器系统 Download PDFInfo
- Publication number
- CN103262045B CN103262045B CN201180055658.7A CN201180055658A CN103262045B CN 103262045 B CN103262045 B CN 103262045B CN 201180055658 A CN201180055658 A CN 201180055658A CN 103262045 B CN103262045 B CN 103262045B
- Authority
- CN
- China
- Prior art keywords
- module
- microprocessor
- software
- inherently safe
- software module
- 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
- 238000005314 correlation function Methods 0.000 claims description 5
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 230000001360 synchronised effect Effects 0.000 claims description 5
- 238000012360 testing method Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 abstract description 41
- 238000013461 design Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 11
- 230000007547 defect Effects 0.000 description 9
- 238000000034 method Methods 0.000 description 9
- 230000001276 controlling effect Effects 0.000 description 7
- 238000009826 distribution Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000002349 favourable effect Effects 0.000 description 6
- 230000006872 improvement Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000002596 correlated effect Effects 0.000 description 4
- 230000000875 corresponding effect Effects 0.000 description 4
- 230000002708 enhancing effect Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 230000001681 protective effect Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004308 accommodation Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000005039 memory span Effects 0.000 description 1
- 230000000474 nursing effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000005728 strengthening 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/004—Error avoidance
-
- 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
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1487—Generic software techniques for error detection or fault masking using N-version programming
-
- 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/14—Error detection or correction of the data by redundancy in operation
-
- 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/1641—Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B9/00—Safety arrangements
- G05B9/02—Safety arrangements electric
-
- 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/1675—Temporal synchronisation or re-synchronisation of redundant processing components
- G06F11/1687—Temporal synchronisation or re-synchronisation of redundant processing components at event level, e.g. by interrupt or result of polling
Abstract
本发明涉及微处理器系统(MCUSA),其用于执行软件模块,所述软件模块中的至少一些在分配给软件模块的控制功能或任务的范围内是关键安全性的,包括具有至少两个微处理器核心(CPUi)的本质上安全的微处理器模块(HWSAi)。根据本发明,提供至少一个另一具有至少两个微处理器核心(CPU1,CPU2;CPU3,CPU4)的本质上安全的微处理器模块(HWSAi,i=1,…n),其中所述至少两个微处理器模块(HWSA1,HWSA2)经由总线系统(B)连接,提供至少两个执行至少部分重叠的功能的软件模块,具有至少部分重叠的功能的所述软件模块分布在微处理器模块(HWSA1,HWSA2)上或者分布在至少两个微处理器模块(HWSA1,HWSA2)上,以及提供用于针对相同功能比较和/或裁定所述软件模块产生的事件的装置,以便检测软件和/或硬件故障。
Description
技术领域
本发明涉及根据专利权利要求的前序部分的微处理器系统,该微处理器系统用于,作为与至少部分关键安全性软件模块相关联的功能或任务的控制和/或调节的一部分,执行所述软件模块。
背景技术
现有技术公开了用于安全性相关的机动车辆控制器的固有安全微控制器和微处理器系统。
在这种情况下,术语“固有安全”被认为是电子系统的如下能力:一旦发生特定故障就保持在安全状态或者立即变化到另一安全状态,或者当故障发生时关闭。该属性的子集是系统中部件的故障静默属性,所述部件与其它部件通信并且一旦识别出该部件内部的故障就不再传送信息且其自身不再执行任何进一步的动作。
举例而言,已知的固有安全微控制器包括以时钟同步(锁步模式,LSM)执行相同程序并且一旦发生故障就关闭的两个微处理器核心。其它已知微控制器包括三个或更多核心以及主要单元,该主要单元在发生故障时判定哪个处理器执行了正确的计算并且随后将待执行的任务传递到正确地进行计算的处理器(容错原理),即,这是系统在甚至存在有限数量的故障子系统或部件的情况下执行其特定功能或任务的属性或能力。
此外,由具有两个核心的两个故障静默系统构成的微控制器也是已知的,其中每一个核心形成一个容错系统。
此外,已知这样的硬件结构,其中两个分离的微控制器单元(MCU)设置成在物理上紧密相邻,因此它们能够快速地彼此交换数据。
当今的机动车辆中的安全性相关系统,例如ESP控制系统,需要安全地检测到电子装置中的故障,它们通常使用冗余性来对这种系统中的相关控制器进行故障识别,也就是说固有安全微处理器模块或微处理器平台具有两个微处理器核心(双核心架构),这两个核心例如以锁步模式被锁定。这种微处理器模块可用于冗余地计算ESP功能以及检查其是否匹配。如果结果中存在不一致,则关闭该ESP系统。
硬件部件中的缺陷通过特定保护识别,例如,在总线传输前通过校验和计算,或者在快闪存储器的情况下通过校验和存储器。此外,实践中也已知基于冗余部件,例如存储器模块(例如RAM、ROM、高速缓冲存储器)、CPU、监测模块和总线比较器或存储器保护单元,来实现固有安全性。
然而,这些架构不能用于识别软件中的“缺陷”或“设计错误”。
这种缺陷可能是仅在特定约束下才出现并且变得显而易见的编译器或汇编程序的转化缺陷——在例如软件的释放过程中不被识别。
用于保护软件构件免受这些缺陷的已知解决方案是形成不同的汇编程序/编译器或者修改的汇编程序/编译器选择,例如,速度优化的而不是存储器优化的或者不同的优化水平。
软件中的设计缺陷包括例如来自开发人员的“谬误”,并且当软件在特定环境下被执行时导致未指定的行为或者系统的错误操作模式,即,所期望的外部环境或操作情况未令人满意地映射到软件结构或操作模式上。
为了保护软件构件免受这种设计缺陷,实践中已知的是由第二、第三、......第n软件构件执行功能并且将每一个结果与(n-1)个其它软件构件的结果相比较和评价。
这种用于识别设计错误的已知错误识别方法具有如下缺点:
-对于在单个固有安全微处理器模块上的单个运行时间环境中的计算,n个软件构件需要几乎n倍的运行时间。
-在下层的单冗余硬件发生故障的情况下,全部软件关闭;就整个嵌入式系统的鲁棒性和可用性而言,这导致差的结果,
-超出安全等级ASIL-D,双硬件故障不能保证被调整为识别单个故障的硬件监测模块识别,并且可导致不清楚的环境,就编程而言,该环境不允许清楚地区分软件构件中的设计错误与硬件缺陷。举例而言,快闪存储器或RAM存储器中的以及微处理器中的双重故障因此未在硬件级别识别,并且导致一个或多个软件构件的输入讹误、算法讹误或输出讹误,结果是受影响的软件构件关闭而不可能解释确切的原因。下游离线分析将是困难、劳动量大并且高成本的,
-基于经验,在原则上不能再分开的软件结构,n倍的软件构件的顺序执行(串行化)具有中期结果。几乎没有在受限制的环境中考虑、开发和计划的单片块被生产出来。由于软件构件的边界不再清楚地限定,从FSM的观点来考虑这样的整体系统越来越困难,且多级低效运行级别概念的引入非常复杂,
-最终,由于该单片结构,失去了软件构件自身的可管理性、护理和维护。
为了评估汽车系统的软件构件和硬件部件的安全性功能的可靠性,ISO标准26262定义了简称为ASIL(汽车安全性等级)的安全性等级。相应的安全性等级是基于对人的风险和危害的系统的功能安全性的度量,这可以基于系统功能。与具有相对高危害的过程相比,具有相对低危害的功能或过程在原则上被安全组设置为具有较低安全整体性等级。基于该标准,有四种安全性等级ASIL-A至ASIL-D,其中ASIL-D为最高安全性要求。在这种情况下,基于设计错误的软件故障对应于ASIL-D安全性等级。
发明内容
本发明基于这样的目的:指定在起始处提及的微处理器,该微处理器在硬件和软件级别确保基于ASIL-D分级的固有安全性,此外,就软件构件的处理和维护而言具有灵活性,并且具有多级低效运行级别概念。
该目的通过专利权利要求1的特征实现。
根据本发明区分这种用于作为与至少部分关键安全性的软件模块相关联的功能或任务的控制和/或调节的一部分来执行所述软件模块的微处理器系统,其中该为处理器系统包括至少一个具有至少两个微处理器核心的固有安全微处理器模块,在其中
-提供至少一个另外的具有至少两个微处理器核心的固有安全微处理器模块,其中该至少两个微处理器模块通过总线系统连接,
-提供至少两个执行至少部分重叠的功能的软件模块,
-具有至少部分重叠的功能的这些软件模块分布在微处理器模块上或者分布在至少两个微处理器模块上,以及
-提供用于针对相同功能比较和/或裁定所述软件模块产生的结果的装置,以便识别软件和/或硬件故障。
根据本发明的这种微处理器系统可以用于集成固有安全微处理器模块,使得在发生故障时相关硬件部件或软件构件能够被清楚地识别并且能够根据情况关闭。
微处理器模块的固有安全性属性确保了这一点,因此在发生硬件故障时另一微处理器模块被激活或者留下来继续工作,并且执行同一或相同或类似或相似但是不那么广泛的功能的软件模块在此时被启动。前述的软件模块也可以准备好以一种待机模式运行,但可能仍需要清理以访问致动器的最终控制或者总线介质上的通信的最终控制,例如在其有效地获得控制或清理以执行活跃的动作之前。这种清理可以如下提供,例如,即通过形式为监测软件模块的仲裁器显性地或者利用主要负责的软件模块的自指示(具有由于故障其正在关闭或者已经关闭的报告)显性地提供,或者通过使没有来自其上执行主要负责的软件模块的微处理器的有效信号而隐性地提供。所述至少部分冗余的软件模块是指,在这些软件模块中的一个发生故障时,有可能执行分配在同一或不同微处理器模块上的具有相关功能的软件模块。
尤其是,采用能够被识别为有故障的软件模块,有可能识别是固有安全微处理器模块发生故障还是软件模块发生故障,即使在同一时间确保了该软件模块所在的微处理器模块的适用性。
最后,根据本发明的微处理器系统可以用于提供允许例如ABS或ESP功能或程序模块或任务的软件模块的硬件/软件架构分布在不同的固有安全微处理器模块上,举例来说,如果需要,也有可能两个相互监测的ESP软件模块(它们不必以相同的方式编程以符合规定的ASIL安全等级,或者当对照原始功能规格被测量时,它们意味着或者甚至需要满足基本上相同的开发条款但是以不同的方式实施)并行地在一个固有安全微处理器模块上运行。
在本发明的一个有利实施例中,当识别出有故障的软件模块时,通过所述软件模块的功能允许被另一软件模块执行来纠正该故障,所述另一软件模块至少作为与所述有故障的软件模块重叠的功能而具有该功能或者就待执行的功能或任务而言其是相同的,也就是说,用于相同目的。
因此,这种微处理器系统提供了具有增强的鲁棒性的安全架构,这是因为当一个软件模块发生故障时其它软件模块仍是活动的。尤其是,发生故障的软件模块的子功能或子任务可以作为同一或另一微处理器模块上的另一软件模块上的备份例程或程序段启动,所述备份例程或程序段不同于发生故障的软件模块但是也能够执行该子功能或子任务。
此外,尤其有利的是,基于本发明的一个发展,当故障的微处理器模块被识别时,通过由另一微处理器模块承担该故障的微处理器模块的功能的执行来纠正该故障,其中执行所述功能所需的软件模块位于所述故障的微处理器模块上。这提供了具有进一步增强的鲁棒性的安全架构,这是因为当一个微处理器模块发生故障时,其它微处理器模块仍是活动的,在发生故障时软件模块继续被部分或完全执行,并且在这种情况下,子功能或子任务也可以作为另一微处理器模块上的另一软件模块中的备份例程或程序段用控制掌管。
在这种情况下,基于一个发展,特别有利的是为了执行安全性相关的功能,提供了具有实质上冗余的软件并且在一个或多个微处理器模块上多次分布的软件模块。
相应增加的可用性表达为根据本发明的微处理器系统对软件模块故障的容错性,这是因为可以执行相同或部分相同的软件模块来用于故障处理。
此外,如果基于本发明的一个改进,为了执行安全性相关的功能,提供了具有有着多样化冗余性的软件并且在一个或多个微处理器模块上多次分布的软件模块,则该微处理器系统的功能安全性增加。这通过微处理器模块的固有安全性确保了硬件级的保护,并且通过具有多样化冗余性软件的这些软件模块的冗余性确保了软件级的保护。
此外,特别有利的是,基于本发明的一个实施例,每一个微处理器模块都具有用于执行基本功能目的的软件基本模块,所述软件基本模块优选是通信软件模块、输入似真化软件模块和任务指定软件模块,它们均位于该微处理器模块上一次。
因此,根据本发明的具有多个微处理器模块的微处理器系统不仅可用于执行关键安全性的软件(例如制动控制软件(ABS/ASR/EBV)或驱动动态控制软件(ESP/ESC)),而且可以用于执行非关键安全性软件,例如用于导航系统或者不是高度关键安全性的系统(例如巡航控制系统(ACC))的软件,或者用于非关键安全性的驾驶员辅助系统或者与关键安全性软件并行的附加便利功能的其它软件。由于微处理器模块设计成具有固有安全的多处理器结构,因此由于鲁棒性和尽可能小的交互这可以在各种运行时间环境(RTE)下实施。
优选地,所述微处理器模块可以实现为ASIC,只要确保各微处理器模块不仅使其IC封装体在物理上短的距离上连接(其对于引入到适于印刷电路板或接线线束的总线系统一直是必须的,所述总线系统快但并不是最快的),而且能够在常用于硅的DIE或结构或总线的级别上使用,以获得最佳可能的数据传输速度,结果是短距离迎合快速数据传输的需求,可以提供快速的总线系统并且仅引起短的延迟时间。
另一个优点是不同来源(例如,OEM特定的应用和专有的改进)的软件模块可以在该微处理器系统上解耦,这是因为对于要位于一个固有安全微处理器模块上的一个软件模块以及对于要位于另一固有安全微处理器模块上的另一软件模块,这都是可能的。特别地,这也允许安全性相关的软件从非安全性相关的软件解耦。
优选地,基于一个改进,所提供的软件基本模块是输出仲裁软件模块,其执行仲裁并且也有利地对来自执行安全性相关功能的冗余和/或多样化冗余软件模块的结果执行似真性校验。这允许清楚的故障关联,也就是说是微处理器模块发生了故障还是软件模块发生了故障。原因在于,与固有安全的微处理器模块相结合,在来自冗余软件模块的负的比较结果的情况下,软件模块可以被检测为有故障,同时确保了微处理器模块的适用性。因此,优点在于不仅有可能发现硬件故障,也有可能通过软件的并行执行发现面向设计的软件故障。
基于本发明的一个改进,尤其有利的是,作为多处理器平台的至少一个微处理器模块的微处理器核心以锁步模式(LSM)操作,这实现了很大程度上基于物理冗余(也就是说,复制的结构)的保护。原则上这种微处理器模块以该LSM模式操作,但是其也可以在初始化例程之后的电源接通之后或者在外部复位信号之后或者在运行时间作为一次性处理进入该LSM模式,并且该微处理器模块也保持在该LSM模式。
此外,基于一个改进,作为多处理器平台的至少一个微处理器模块的微处理器核心可以以解耦并行模式(DPM)操作,也就是说所述微处理器模块通过非对称冗余性的构造措施实现其功能性安全的目的。这通过基于部件的非对称物理冗余性的相对于时间的整体匹配实现了保护。
基于本发明的一个实施例,根据本发明的微处理器系统不仅可以具有多个微处理器模块作为多核心处理器平台,也可以具有至少一个具有单个微处理器核心的微处理器模块(单核心处理器)。优选地,这些微处理器模块连接到至少一个具有输入/输出接口的总线系统以便允许外部可扩展性。
此外,基于本发明的一个改进,根据本发明的微处理器系统可以设计成具有多个微处理器模块,每一个微处理器模块都具有相同类型的操作系统。因此,优选地这有可能涉及这样的操作系统的使用,该操作系统静态地、半动态地或全动态地将计算负载分布在多个微处理器模块上。
在本发明的一个实施例中,一些微处理器模块中的每一个配备有基于时间片的操作系统,这些微处理器模块是同步的。这意味着这些微处理器模块以锁相方式彼此耦合。例如,这可以通过由发射器使用外部或芯片上总线系统以等距离时间发送的时间戳结合接收器方的时间片的有利对准来实现。
最后,本发明允许所述微处理器模块至少一定程度上设计为具有共同封装体的ASIC。
根据本发明的微处理器系统有利地适用于电子车辆控制器,所述电子车辆控制器优选提供用于制动控制和调节,但是基于属性通常也预定容纳与底盘控制器的驱动动态行为或者底盘控制器中选定组的驱动动态行为协作的软件模块。在这种情况下,该协作可以包括用于底盘范围内的或者单级或多级或级联或嵌入式控制环内的控制器的操作点的操作模式的系统宽度的变化的动作。
附图说明
参考附图使用示例性实施例更详细地描述本发明,在附图中,
图1示出了根据本发明的以固有安全微处理器模块作为基本元件的微处理器系统的示意性框图,
图2示出了图1所示的微处理器系统的固有安全微处理器模块的示意性框图,
图3示出了图1所示的微处理器系统的另一固有安全微处理器模块的示意性框图,以及
图4示出了图1所示微处理器系统的两个微处理器模块上的各种软件模块的分割的示意性图示。
具体实施方式
如图1所示的微处理器系统MCUSA包括多个复制的基本元件,这些基本元件,作为固有安全微处理器模块HWSAi(i=1,...i=n),也称为CPU模块,具有至少两个微处理器核心CPU1和CPU2或CPU3和CPU4,这可以从图2和3看出。此外,该微处理器系统MCUSA可以包括至少一个微处理器CPU,所述微处理器CPU作为标准微处理器(即,非固有安全)仅具有一个核心(单核处理器)。这些微处理器模块HWSAi(i=1,...i=n)以及所述标准微处理器CPU中的每一个均经由接口IF连接到中央总线系统或网络B,其中接口IFext能够用于扩展以连接另外的部件,例如硬件模块。微处理器模块HWSAi(i=1,...i=n)以及所述标准微处理器CPU都有可能通过多个可能是自足的总线系统彼此完全或部分网络连接。
固有安全微处理器模块HWSAi作为图2所示的双核心微处理器以所谓的LSM(锁步)模式工作,即这些微处理器冗余地且以时钟同步(因此是锁步模式)执行相同的程序段,比较这两个微处理器核心CPU1和CPU2的结果,然后在比较是否匹配的过程中检测故障。
图2所示的微处理器模块HWSAi的每个微处理器核心CPU1和CPU2具有专用总线系统B1或B2,它们通过接口IF连接。为了执行结果的比较,有利的是提供冗余比较器K1和K2,所述冗余比较器K1和K2为了检测硬件缺陷导致的单个故障,在故障的情况下监测该微处理器模块HWSAi以及在图2中示例性示出的两个微处理器核心CPU1和CPU2的冗余基本元件的所有输入和输出,即,在两个微处理器核心CPU1和CPU2之间发生不一致时提示该微处理器模块HWSAi的关闭或者其降级。该保护通过大量的对称物理冗余实现,即结构被复制。除了所示的微处理器核心CPU1和CPU2,该微处理器模块HWSAi还包括诸如主存储器(RAM)、程序存储器(闪存或ROM)、比较器和安全模块、用于外部总线的模块(CAN、LIN、Flexray、MOST、ISOK、Ethernet)的另外的部件,这些部件也能够为了安全因素而具有冗余设计。除了没有完全复制的完全单次执行的情况,为了结构的实质上的复制,也有可能的是这些部件具有除了物理冗余之外的对称冗余。举例而言,应当提及闪存或ROM存储器可以以另外的存储器容量扩展,以用于容纳校验和。这些不是用于功能性而是用于面向安全性的目的存储器位意义上的另外的元件在形式上与部分冗余的实施例是相当的,所述部分冗余的实施无论是否基于其不完整性都不能基于物理冗余(前述锁步模式LSM)操作,而是需要基于非对称保护结构的原理关于时间整体地操作。
固有安全微处理器模块HWSAj作为图3所示的具有两个微处理器核心CPU3和CPU4的双核微处理器以所谓的DPM(解耦并行)模式操作,即,它可以彼此独立地执行不同的程序序列。每一个微处理器核心CPU3和CPU4具有通过接口IF连接的专用总线B3或B4。除了这两个核心CPU3和CPU4,也存在另外的部件,例如主存储器(RAM)、程序存储器(闪存或ROM)、比较器和安全模块、用于外部总线的模块(CAN、LIN、Flexray、MOST、ISOK、Ethernet)。保护通过关于时间的整体匹配实现,并且既可以基于部件的对称物理冗余也可以基于部件的非对称物理冗余。
因此,图1所示的微处理器系统MCUSA包括由多个固有安全基本元件(即,微处理器模块HWSAi(i=1,...i=n))构成的并行结构,并且是微处理器安全架构,该结构能够作为ASIC生产或者至少与几个ASIC一起在单个封装体中。
图1所示的微处理器系统MCUSA不仅仅是基于ASL-D分级确保固有安全性的硬件系统架构,也基于软件级的安全性级别ASIL-D确保固有安全性,这将在下文中解释。
就这一点而言,图4示出了各种软件模块在例如图1所示的微处理器系统MCUSA的两个固有安全微处理器模块HWSA1和HWSA2上的静态分配或分布。在这种情况下,这两个微处理器模块HWSA1和HWSA2可以如图2或3所示那样设计。微处理器模块HWSA1和HWSA2中分别示出的软件模块按照例如相关运行时间环境的时间轴或时基tHWSA1和tHWSA2顺序执行,在每种情况下以“HWSA通信”软件基本模块开始和结束。在这种情况下,在特定实施例中出现的对应于安全等级ASIL-D的那些软件模块,即具有高安全等级的软件,例如用于关键安全性的应用的软件,诸如ABS或ESP功能,用(D)表示。
对于这两个微处理器模块HWSA1和HWSA2上的软件模块,所谓的软件基本模块与软件模块之间存在区别,一方面,软件基本模块在两个微处理器模块HWSA1和HWSA2中的每一个上都提供并且每一个仅执行一次,另一方面,软件模块以多倍冗余静态地在一个微处理器模块(也就是说例如HWSA1或HWSA2)上或多个微处理器模块(也就是说例如HWSA1和HWSA2)上分配和执行。在这种情况下,一些软件模块甚至可能具有重叠的任务。
这些软件基本模块是通信软件模块、输入似真性软件模块以及任务特定的软件模块。
前述“HWSA通信”软件基本模块允许对于微处理器系统MCUSA(参见图1)经由总线系统或网络B单向或者双向交换数据。这意味着包括控制函数的输入变量、运行时间相关数据(计数器、状态信息、系统时间等)以及来自控制函数的输出变量/结果。
输入似真化软件模块“HWSA1输入似真化”以及“HWSA2输入似真化”用于对预先通过通信(也就是说通过“HWSA通信”软件基本模块)获得的输入变量进行似真化,以便能够被作为合格的值转送至控制函数,这是因为仅来自可能包含合格的输入变量的控制函数的结果也可以在完成计算之后被有意义地比较。
除了在输入似真化软件模块中执行的通信数据的校验之外,也可能使用所谓的端到端保护(也称为E2E),所述端到端保护基于操作原理早在控制函数产生通信数据项时就将清楚的保护校验和添加到数据项,并且将所述校验和与数据项作为原子单位同时一起发送。该保护校验和由接收数据项的控制函数或接收数据项的所有控制函数基于用于E2E校验和的已知计算密钥使用,以便交叉校验数据项的正确传输,因此被提供用来检测由于发射器方的输出似真化软件模块中的以及接收器方的输入似真化软件模块中的设计错误而发生的讹误的装置也是如此,该装置能够相应地作出反应。
如图4所示,微处理器模块HWSA1和微处理器模块HWSA2的任务特定的(专门任务)软件基本模块被标记为“HWSA1专门任务1”,“HWSA1专门任务2”和“HWSA1专门任务3”或“HWSA2专门任务Y”、“HWSA2专门任务Z”和“HWSA2专门任务W”。这些软件基本模块也以简单的方式执行,而不必满足对多样性以及增强的鲁棒性的进一步要求或者不需要冗余性。这些任务特定的软件基本模块实质上仅存在一次并且“以专门的方式”在微处理器模块HWSA1或HWSA2上执行。
此外,所提供的软件模块也是标记为“HWSA1输出似真化”和“HWSA2输出似真化”的输出仲裁软件模块,它们用于对由所有控制函数的满载事先确定输出值或者操纵变量进行似真化。在这种情况下,功能性所需的似真化和功能安全性所需的似真化之间有区别。在下文中进一步描述这些不同的似真化。
此外,存在位于一个微处理器模块上多次和/或以分布的形式位于多个微处理器模块上的软件模块,这些软件模块被标记为“HWSA任务Aij”、“HWSA任务Bij”、“HWSA任务Cij”和“HWSA任务Xij”,如图4所示。这些冗余软件模块具有相同任务,即,很大程度上用于相同目的。
因此微处理器系统MCUSA的结果是作为一个整体具有增加的可用性及增加的安全性。
当这些软件模块分布在多个微处理器模块HWSAi上时,满足了在面对硬件故障时更高的鲁棒性要求和更高的可用性。
在这些软件模块在一个微处理器模块HWSA1或HWSA2中多次地或者在多个微处理器模块HWSA1和HWSA2中静态分配的情况下,满足了在面对“缺陷”或“设计错误”时增加的安全性要求。
因此,分配在微处理器模块HWSA2上的两个软件模块“HWSA2任务X13”和“HWSA2任务X23”具有实质上相同的算法冗余设计,这两个软件模块由同一程序设计者A编程,但是软件模块“HWSA2任务X23”与软件模块“HWSA任务X13”相比不同地编译或汇编,这导致在程序代码级别实质上一个身份,但是不同的转化意味着可能预防系统故障。
此外,两个冗余的软件模块“HWSA任务C33”和“HWSA任务C23”分布在两个微处理器模块HWSA1和HWSA2上,这两个软件模块类似地由同一程序设计者A编程,但是软件模块“HWSA任务C23”与软件模块“HWSA任务C33”不同地编译或汇编,这导致在程序代码级别实质上一个身份,但是不同的转化意味着可能预防系统故障。
因此,这些冗余软件模块“HWSA任务X13”和“HWSA任务X23”或“HWSA任务C33”和“HWSA任务C23”具有相同或者仅仅被微小地修改的算法。
最后,具有多样化的冗余性的软件模块在同一微处理器模块HWSA1或HWSA2上分布。
如图4所示,在微处理器模块HWSA1上分配两个软件模块“HWSA任务A12”和“HWSA任务A22”,它们由两个不同的程序设计者A和B编程。微处理器模块HWSA2上的两个冗余的软件模块“HWSA2任务X13”和“HWSA2任务X23”也具有软件模块“HWSA任务X33”,此时在同一微处理器模块HWSA2上存在多样化的冗余性。这些软件模块在结构上有很大程度的变化。
具有多样化的冗余性的这些软件模块也可以分布在不同的微处理器模块上。因此,图4示出了分配在微处理器模块HWSA1上并且由程序设计者A编程的软件模块“HWSA任务B12”,以及分配在微处理器模块HWSA2上的具有多样化的冗余性并且由另一程序设计者B编程的软件模块“HWSA任务B22”。分布在微处理器模块HWSA1和HWSA2二者上并且由程序设计者A编程的两个冗余软件模块“HWSA任务C23”和“HWSA任务C33”,也具有存在于微处理器模块HWSA1上的软件模块“HWSA任务C13”,所述软件模块具有多样化的冗余性并且由另一程序设计者B编程。这些软件模块在结构上有很大程度的变化。
具有多样化冗余性的软件模块的数量m可以大于微处理器模块HWSAi(i=1,...n)的数量n(n<m)。在这种情况下,可以对要在单个微处理器模块HWSAi上执行的n个软件模块进行串行化。不言自明,在这种情况下,下层微处理器模块的充足的计算能力是先决条件,通过被顺序计算且最终被似真化——就其输出信号而言——的软件模块,可以实现增强的安全性。然而,在引入所有软件模块的这种情况下,面对下层微处理器模块的故障时的可用性并未增加,这些软件模块是否被冗余地编程或者不同地转化并不重要。当冗余的软件模块以多样化的方式被结合在不同的微处理器中时,可用性增加。
这些具有多样化冗余性的用于相同目的并且具有与所期望的完全不同的算法的软件模块“HWSA任务Aij”、“HWSA任务Bij”、“HWSA任务Cij”和“HWSA2任务Xij”为以通过设计而冗余的方式计算来自控制函数的输出变量或结果提供了基础,确保了在面对设计错误时的保护。
相对高的可用性被微处理器系统MCUSA证实在面对微处理器模块HWSAi的故障时是有容忍度的,这是因为在检测到故障或者一个微处理器模块HWSAi发生故障的情况下,有可能由另一微处理器模块HWSAj(i□j)来执行适当的软件模块。
通过在不同微处理器模块HWSAi上执行的具有多样化冗余性的软件模块实现了增强的功能安全性,由于微处理器模块HWSAi的固有安全性这确保了硬件级的保护,并且由于软件模块的多样化冗余性(也就是说由于其软件不是相同的)这也确保了软件级的保护。
回到图4所示的微处理器模块HWSA1或HWSA2上的软件模块“HWSA1输出似真化”和“HWSA2输出似真化”。
在通过软件模块“HWSA1输出似真化”和“HWSA2输出似真化”进行功能性所需的似真化的情况下,执行控制功能的特定软件模块被优先而其它软件模块被推迟。举例而言,就ESP控制功能和ABS控制功能而言,ESP介入的控制功能因此优于ABS介入的控制功能,并且因此优先地首先执行。执行这种功能性的似真化以对于车辆的操纵有利。
从功能安全性的观点来看是必要的使用软件模块“HWSA1输出似真化”和“HWSA2输出似真化”的似真化涉及这样的软件模块的结果,所述软件模块被冗余地或者准冗余地执行,并且取决于静态分配,分布在被彼此比较或评价的不同微处理器模块HWSAi上。因此,来自两个独立的ESP控制功能(也就是说用于相同目的,即,为车辆提供“ESP”功能)的结果将被彼此比较。在图4所示的例子中,软件模块“HWSA任务Bij”例如被执行两次,即作为微处理器模块HWSA1上的“HWSA任务B12”,以及作为微处理器模块HWSA2上的“HWSA任务B22”。该软件模块的相关输入数据的一致性由先前在时间α(见图4)执行的软件模块“HWSA通信”确保。在时间β处的软件模块“HWSA通信”确保了在两侧存在用于比较或加权的所计算的输出数据。在时间γ处的软件模块“HWSA通信”确保了微处理器模块HWSA1和HWSA2上都存在所实现的比较结果或加权结果。
此外,图1所示的微处理器系统MCUSA设计为用于针对软件模块进行动态处理。
如果例如软件模块“HWSA1专门任务3”发生故障,因此子功能或子任务不能被执行并且该子任务或子功能也呈现为微处理器模块HWSA2的软件模块“HWSA2专门任务Z”上的程序段,则该“HWSA2专门任务Z”软件模块根据其角色作为备份软件模块被激活并且其备份例程被执行。
动态处理是指,取决于状态,也就是说就硬件或软件或者微处理器系统的操作模式而言,特定微处理器模块HWSAi或特定软件模块,也就是说基于需要,被执行。这一点的先决条件自然是适当的软件模块的静态分配,这已经结合图4进行了描述。
分布的或多样化的软件模块组实质上包括两种类型:
a)例如用于增强的功能安全性的软件模块,也就是说,在微处理器模块HWSAi中执行持续的结果比较;以及
b)例如这样的软件模块,其用于增加的可用性并且能够理想地被备选地执行或者动态地启动,以便在正常操作模式下节约资源和执行时间,如果这样做是有利的。
如上所述,引入具有多样化冗余性的软件模块以对于在面对“设计错误”时保护软件或算法是有利的。
这些具有多样化冗余性的软件模块并不是必须提供在不同的微处理器模块HWSAi上。这些软件模块归为上述a类。这些具有多样化冗余性的软件模块从另外的观点来看也被冗余地开发,由不同的团队设计并且由不同的程序设计者实施。因此,特定的“设计错误”重复的概率降低。
举例而言,设计错误可以由于所包含的状态机的实施例、从一个操作模式到另一个的变化时的状态传输、故障反应过程等导致。特别是在这样的程序段中,在所述程序段中(一个或多个)程序设计者将相互依赖的不同瞬时测量或受控变量或实际状态并且也将操纵的或控制值或目标状态(也就是说组合的分析或者以特定的顺序(也就是说就顺序而言)而言)映射到算法上,后者打算如何工作,例如执行备选的方程或者跳到不同的安全等级,从对要使用多通道组合分析执行的多级序列的考虑,产生了极其错综复杂的排列树。这些情况对于在据推测小的隔离的或者——一旦发生——可能是致命的程序片段上蔓延的设计错误是有利的,所述程序片段由于他们并不是非常庞大的性质,难以使用开发测试和/或持续运行预先完全识别。
对于微处理器系统MCUSA在面对硬件故障时的鲁棒性有利的是,可如上所述将软件模块分布或多样化在各种微处理器模块HWSAi上。这些软件模块归为上述b)类。为了安全性,因此不需要永久且同时的执行,包括这些软件模块的结果的相互比较。因此,鲁棒性也不增加。对照而言,多样化的软件模块的基于需要的执行将意味着微处理器模块HWSAi的运行时间储备量的更有效的利用。所述需要可以通过输入特定操作条件而产生。该特定操作条件可以是微处理器模块HWSAi中检测到的故障,并且其也可以是在时间上约束适用性的诊断过程的特定自校准,或者可以是持续存在的电压不足情况。不必要使备份软件模块覆盖全部功能。备份软件模块可以是更微小的并且可以在代码大小以及运行时间消耗方面更小。出于效率的原因,动态执行备份软件的微处理器模块HWSAi可以动态关闭一组其本地的非实质性的软件模块,以便能够确保备份软件模块被处理。
此外,图1所示的微处理器系统MCUSA在时间上持续提供似真化,也就是说持续比较来自分布的软件模块的结果。
为了评估呈现在相应微处理器模块HWSAi上并且以分布式方式计算的相关输入数据、结果和部分结果以及还有来自软件模块的输出数据,所述数据和结果是功能安全性所需的,将它们以适当的方式在不同的时间(如图4所示的α、β和γ)在微处理器系统MCUSA内传送,这已经结合图4在上文中针对时间α、β和γ进行了解释。因此,提供了一种手段,其允许分布式冗余的微处理器模块HWSAi在待通信的微处理器系统MCUSA中的适用性,以及就程序弱点的排除而言所述分布式软件模块的适用性,所述程序弱点由于要在运行时间证明的算法中的设计错误而发生。
总而言之,根据本发明的微处理器系统MCUSA由于下述优点而与众不同:
-就硬件以及软件而言,对于嵌入的整个系统,其都展现出增强的鲁棒性。
-如果一个微处理器模块发生故障,其它未处理模块仍然活动,软件模块继续部分或完全被执行。此外,另一微处理器模块上的另一软件模块中的备份例程掌握控制,
-如果一个软件模块发生故障,其它软件模块仍活动。同一软件模块有可能基于冗余重启或者重新初始化。此外,同一或另一微处理器模块HWSAi上的另一软件模块中的备份例程可以被启动。
-在故障的情况下清理与硬件或软件相关的故障的机会:
-如果一个微处理器模块HWSAi发生故障,这由例如寄存器、中断、异常或者一件自动设置信号或引脚的监测硬件清楚地指示;
-如果一个软件模块发生故障,这通过与另一软件模块的结果的比较或评价清楚地确立;
-关于解释微处理器模块HWSAi或者软件模块是否发生故障的原因的识别可能是清楚的,这是因为使用了具有对应固有安全设计的基础模块(RAM、FLASH、总线等)的固有安全微处理器模块HWSAi,这意味着在负面结果比较(即,来自冗余软件模块的结果不一致)的情况下,软件模块可以被分类为不适用而同时确保了微处理器模块HWSAi的适用性。任选地,可能使用软件模块的两倍或多倍冗余以便通过大多数形成以及仍然保持安全功能执行,来清楚地识别有问题的软件模块。
-动态计算能力分配:
-如果一个微处理器模块HWSAi发生故障,另一微处理器模块HWSAj上的另一软件模块的备份例程掌握控制;并且
-如果一个软件模块发生故障,同一或另一微处理器模块HWSAi上的另一软件模块中的备份例程可以被启动。
-包括微处理器模块HWSAi和软件模块的嵌入式整体系统的灵活设计:
-“通过设计”可以隐含地实现超越微处理器模块HWSAi的软件模块的结构化性质和易于便携性。
微处理器系统MCUSA可以被设计成单个封装体中的ASIC。自然地,微处理器系统MCUSA也可以在两个或更多个ASIC上实施,然后与单个IC封装体组合,或者每一个ASIC封装到单独的IC封装体中。
此外,微处理器模块HWSAi的操作系统可以是相同的或具有不同性质,并且也可以使用单个操作系统,其可以静态地、半动态地或完全动态地在各个微处理器模块HWSAi上分布计算负载。
最后,以时间片基础上操作的微处理器模块HWSAi的那些操作系统可以设计成能够彼此同步,即,可以相对于彼此采用限定的锁相状态,这可以通过由发射器使用外部或芯片上总线系统在等距离的时间发送时间戳结合接收器方的时间片(环)的有利对准来实现。
Claims (17)
1.一种微处理器系统,用于至少部分地执行关键安全性的软件模块来作为与该软件模块相关联的功能或任务的控制和/或调节的一部分,该微处理器系统包括至少一个具有至少两个微处理器核心的固有安全微处理器模块,以及
-提供至少一个另外的具有至少两个微处理器核心的固有安全微处理器模块,其中至少一个固有安全微处理器模块与至少一个另外的固有安全微处理器模块通过总线系统连接,以及
-提供至少两个执行至少部分重叠的功能的软件模块,该微处理器系统的特征在于
-具有至少部分重叠的功能的这些软件模块分布在至少一个固有安全微处理器模块与至少一个另外的固有安全微处理器模块上,以及
-提供用于针对相同功能比较和/或裁定所述软件模块产生的结果的装置,以便识别软件和/或硬件故障。
2.权利要求1所述的微处理器系统,其特征在于当识别出故障的软件模块时,通过由另一软件模块执行所述故障的软件模块的功能来纠正故障,所述另一软件模块至少具有与故障的软件模块重叠的功能。
3.权利要求1或2所述的微处理器系统,其特征在于当识别出故障的固有安全微处理器模块时,通过承担故障的固有安全微处理器模块的功能的执行的另一固有安全微处理器模块来纠正故障,其中执行所述功能所需的软件模块位于所述故障的固有安全微处理器模块上。
4.权利要求1或2所述的微处理器系统,其特征在于为了执行安全性相关功能,提供了具有实质上冗余的软件并且在一个或多个固有安全微处理器模块上多次分布的软件模块。
5.权利要求1或2所述的微处理器系统,其特征在于为了执行安全性相关功能,提供了具有有着多样化冗余的软件并且在一个或多个固有安全微处理器模块上多次分布的软件模块。
6.权利要求1或2所述的微处理器系统,其特征在于每一个固有安全微处理器模块都具有用于执行基本功能的软件基本模块。
7.权利要求6所述的微处理器系统,其特征在于所述软件基本模块是通信软件模块、输入似真化软件模块和任务特定软件模块,它们每个均位于所述固有安全微处理器模块上一次。
8.权利要求6所述的微处理器系统,其特征在于所提供的软件基本模块是输出仲裁软件模块,其执行仲裁并且也对来自执行安全性相关功能的冗余和/或多样冗余软件模块的结果执行似真性校验。
9.权利要求1或2所述的微处理器系统,其特征在于至少一个固有安全微处理器模块的微处理器核心以锁步模式操作。
10.权利要求1或2所述的微处理器系统,其特征在于至少一个固有安全微处理器模块的微处理器核心以解耦并行模式操作。
11.权利要求1或2所述的微处理器系统,其特征在于所述微处理器系统包含至少一个具有一个微处理器核心的微处理器。
12.权利要求1或2所述的微处理器系统,其特征在于所述固有安全微处理器模块具有至少一个具有用于外部扩展能力的输入/输出接口的总线系统。
13.权利要求1或2所述的微处理器系统,其特征在于所述固有安全微处理器模块具有相同的操作系统。
14.权利要求13所述的微处理器系统,其特征在于所述操作系统被设计成能够分配用于在多个固有安全微处理器模块上执行功能的计算负载。
15.权利要求1或2所述的微处理器系统,其特征在于所述固有安全微处理器模块中的一些配备有基于时间片的操作系统,这些操作系统是同步的。
16.权利要求1或2所述的微处理器系统,其特征在于所述固有安全微处理器模块设计为具有共同封装体的ASIC。
17.前述权利要求中任一项所述的微处理器系统在电子车辆控制器中的用途,所述电子车辆控制器被提供用于制动控制和调整。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102010044191.0 | 2010-11-19 | ||
DE102010044191 | 2010-11-19 | ||
DE102011086530.6 | 2011-11-17 | ||
DE102011086530A DE102011086530A1 (de) | 2010-11-19 | 2011-11-17 | Mikroprozessorsystem mit fehlertoleranter Architektur |
PCT/EP2011/070414 WO2012066108A1 (de) | 2010-11-19 | 2011-11-18 | Mikroprozessorsystem mit fehlertoleranter architektur |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103262045A CN103262045A (zh) | 2013-08-21 |
CN103262045B true CN103262045B (zh) | 2015-06-17 |
Family
ID=46021502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180055658.7A Active CN103262045B (zh) | 2010-11-19 | 2011-11-18 | 具有容错架构的微处理器系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20130268798A1 (zh) |
EP (1) | EP2641176B1 (zh) |
KR (1) | KR20130119452A (zh) |
CN (1) | CN103262045B (zh) |
DE (1) | DE102011086530A1 (zh) |
WO (1) | WO2012066108A1 (zh) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102011084534A1 (de) * | 2010-10-18 | 2012-04-19 | Continental Teves Ag & Co. Ohg | Fehlersichere Parkbremse für Kraftfahrzeuge |
DE102012218363A1 (de) * | 2012-10-09 | 2014-04-10 | Continental Automotive Gmbh | Verfahren zur Steuerung eines getrennten Ablaufs von verknüpften Programmblöcken und Steuergerät |
EP2813949B1 (en) * | 2013-06-11 | 2019-08-07 | ABB Schweiz AG | Multicore processor fault detection for safety critical software applications |
DE102013218814A1 (de) * | 2013-09-19 | 2015-03-19 | Siemens Aktiengesellschaft | Verfahren zum Betreiben eines sicherheitskritischen Systems |
DE102014201682A1 (de) * | 2014-01-30 | 2015-07-30 | Robert Bosch Gmbh | Verfahren zur Koexistenz von Software mit verschiedenen Sicherheitsstufen in einem Multicore-Prozessorsystem |
DE102014004110A1 (de) | 2014-03-21 | 2015-09-24 | Wabco Gmbh | Verfahren zum Betrieb eines autonom arbeitenden Fahrsicherheits- oder Fahrerassistenzsystems eines Kraftfahrzeugs |
US9410554B2 (en) * | 2014-04-04 | 2016-08-09 | Solar Turbines Incorporated | Controlling a gas compressor having multiple magnetic bearings |
DE102014212384A1 (de) * | 2014-06-27 | 2015-12-31 | Robert Bosch Gmbh | Vorrichtung und Verfahren zum Betreiben eines Fahrzeugs |
US9956973B2 (en) * | 2014-07-07 | 2018-05-01 | Westinghouse Air Brake Technologies Corporation | System, method, and apparatus for generating vital messages on an on-board system of a vehicle |
US10063370B2 (en) | 2014-09-11 | 2018-08-28 | Infineon Technologies Ag | Method and device for checking an identifier |
US9699184B2 (en) * | 2014-09-11 | 2017-07-04 | Infineon Technologies Ag | Method and device for processing data |
DE102014219286A1 (de) | 2014-09-24 | 2016-03-24 | Continental Automotive Gmbh | Steuergerät und Verfahren zur Absicherung von Daten |
US9582376B2 (en) | 2014-11-14 | 2017-02-28 | Invensys Systems, Inc. | Unified communications module (UCM) |
DE102015204337A1 (de) | 2015-03-11 | 2016-09-15 | Siemens Aktiengesellschaft | Sicherheitsrelevantes Computersystem |
US9694765B2 (en) * | 2015-04-20 | 2017-07-04 | Hitachi, Ltd. | Control system for an automotive vehicle |
DE102015216086A1 (de) * | 2015-08-24 | 2017-03-02 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Überwachen eines Zustandes einer elektronischen Schaltungseinheit eines Fahrzeugs |
US9672095B2 (en) | 2015-09-21 | 2017-06-06 | Nxp Usa, Inc. | Safety level specific error response scheme for mixed criticality systems |
DE102015218898A1 (de) * | 2015-09-30 | 2017-03-30 | Robert Bosch Gmbh | Verfahren zur redundanten Verarbeitung von Daten |
DE112015007095B4 (de) * | 2015-12-03 | 2018-11-22 | Mitsubishi Electric Corporation | Multiplexsystem |
GB2545897B (en) * | 2015-12-21 | 2018-02-07 | Advanced Risc Mach Ltd | Asymmetric coherency protocol |
US10037016B2 (en) * | 2016-03-23 | 2018-07-31 | GM Global Technology Operations LLC | Hybrid dual-duplex fail-operational pattern and generalization to arbitrary number of failures |
US9996431B2 (en) * | 2016-03-23 | 2018-06-12 | GM Global Technology Operations LLC | Architecture and apparatus for advanced arbitration in embedded controls |
US10042693B2 (en) * | 2016-07-12 | 2018-08-07 | Infineon Technologies Ag | Diverse integrated processing using processors and diverse firmware |
EP3279830B1 (en) * | 2016-08-02 | 2020-10-28 | Veoneer Sweden AB | A vision system and method for a motor vehicle |
US10102085B2 (en) * | 2016-08-25 | 2018-10-16 | GM Global Technology Operations LLC | Coordinated multi-mode allocation and runtime switching for systems with dynamic fault-tolerance requirements |
WO2018128204A1 (ko) * | 2017-01-06 | 2018-07-12 | 주식회사 알티스트 | 파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템 |
DE102017201032A1 (de) | 2017-01-23 | 2018-05-03 | Zf Friedrichshafen Ag | Redundante Prozessorarchitektur |
CN110799404A (zh) * | 2017-04-17 | 2020-02-14 | 移动眼视力科技有限公司 | 包括驾驶相关系统的安全系统 |
US11214273B2 (en) * | 2017-06-23 | 2022-01-04 | Nvidia Corporation | Method of using a single controller (ECU) for a fault-tolerant/fail-operational self-driving system |
US10496398B2 (en) * | 2017-07-25 | 2019-12-03 | Aurora Labs Ltd. | Hot updates to ECU software using tool chain |
US10800264B2 (en) | 2017-09-15 | 2020-10-13 | Nio Usa, Inc. | System and method for providing ASIL D fail operational power systems in automated vehicle applications |
US10857889B2 (en) * | 2017-10-04 | 2020-12-08 | Nio Usa, Inc. | Highly-integrated fail operational e-powertrain for autonomous driving application |
DE102017218643A1 (de) | 2017-10-19 | 2019-04-25 | Volkswagen Aktiengesellschaft | Funktionsmodul, Steuereinheit für ein Betriebsassistenzsystem und Arbeitsvorrichtung |
KR102482143B1 (ko) * | 2018-01-30 | 2022-12-29 | 에이치엘만도 주식회사 | Ecu 및 ecu 동작 방법 |
CN108920409B (zh) * | 2018-06-22 | 2022-09-02 | 阜阳师范学院 | 一种实现容错功能的异构多核处理器组织结构 |
US10853180B2 (en) * | 2018-10-09 | 2020-12-01 | EMC IP Holding Company LLC | Automatically setting a dynamic restore policy in a native cloud environment |
US10936444B2 (en) | 2018-10-26 | 2021-03-02 | EMC IP Holding Company LLC | Smart dynamic restore for Kubernetes based applications |
US11176395B2 (en) | 2018-11-30 | 2021-11-16 | Electronics And Telecommunications Research Institute | Image recognition processor including functional safety processor core and operation method thereof |
US10831628B2 (en) | 2018-12-12 | 2020-11-10 | Intel Corporation | Hardware lockstep checking within a fault detection interval in a system on chip |
FR3096326B1 (fr) * | 2019-05-23 | 2022-10-28 | Safran Landing Systems | Système de freinage d’aéronef avec dispositifs de commande dissimilaires et module logiciel utilisé en cas de défaillance |
IT201900018362A1 (it) * | 2019-10-10 | 2021-04-10 | Texa Spa | Metodo e sistema di controllo di almeno due motori elettrici di trazione di un veicolo |
DE102019218718B4 (de) * | 2019-12-02 | 2023-11-16 | Volkswagen Aktiengesellschaft | Steuerungssystem zur Steuerung eines Betriebs eines selbstfahrenden Fahrzeugs sowie Kraftfahrzeug |
CA3157095A1 (en) | 2019-12-09 | 2021-06-17 | Alon Green | Method and system for high integrity can bus traffic supervision in safety critical application |
DE102020200144A1 (de) * | 2020-01-08 | 2021-07-08 | Zf Friedrichshafen Ag | Emuliertes redundantes Regelsystem |
DE102020200141A1 (de) * | 2020-01-08 | 2021-07-08 | Zf Friedrichshafen Ag | Fehlertolerantes Regelsystem |
CN112180712A (zh) * | 2020-09-27 | 2021-01-05 | 四川九洲空管科技有限责任公司 | 一种综合监视系统 |
CN117891515A (zh) * | 2022-10-08 | 2024-04-16 | 深圳市中兴微电子技术有限公司 | 智能座舱的实现方法、智能座舱、计算机可读介质 |
CN117573609B (zh) * | 2024-01-16 | 2024-05-03 | 宁波中控微电子有限公司 | 一种具有冗余功能的片上系统及其控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862502A (en) * | 1993-12-02 | 1999-01-19 | Itt Automotive Europe Gmbh | Circuit arrangement for safety-critical control systems |
CN101243401A (zh) * | 2005-08-11 | 2008-08-13 | 大陆-特韦斯贸易合伙股份公司及两合公司 | 用于控制或调节至少部分安全关键处理的微处理器系统 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5551047A (en) * | 1993-01-28 | 1996-08-27 | The Regents Of The Univeristy Of California | Method for distributed redundant execution of program modules |
US6615366B1 (en) * | 1999-12-21 | 2003-09-02 | Intel Corporation | Microprocessor with dual execution core operable in high reliability mode |
US7085959B2 (en) * | 2002-07-03 | 2006-08-01 | Hewlett-Packard Development Company, L.P. | Method and apparatus for recovery from loss of lock step |
US7328371B1 (en) * | 2004-10-15 | 2008-02-05 | Advanced Micro Devices, Inc. | Core redundancy in a chip multiprocessor for highly reliable systems |
US7366948B2 (en) * | 2004-10-25 | 2008-04-29 | Hewlett-Packard Development Company, L.P. | System and method for maintaining in a multi-processor system a spare processor that is in lockstep for use in recovering from loss of lockstep for another processor |
US7502958B2 (en) * | 2004-10-25 | 2009-03-10 | Hewlett-Packard Development Company, L.P. | System and method for providing firmware recoverable lockstep protection |
KR20070083760A (ko) * | 2004-10-25 | 2007-08-24 | 로베르트 보쉬 게엠베하 | 적어도 2개의 실행 유닛을 구비한 컴퓨터 시스템에서전환을 위한 방법 및 장치 |
DE102005037230A1 (de) * | 2005-08-08 | 2007-02-15 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Überwachung von Funktionen eines Rechnersystems |
US8527681B2 (en) * | 2007-05-25 | 2013-09-03 | Freescale Semiconductor, Inc. | Data processing system, data processing method, and apparatus |
US8856196B2 (en) * | 2008-07-22 | 2014-10-07 | Toyota Jidosha Kabushiki Kaisha | System and method for transferring tasks in a multi-core processor based on trial execution and core node |
US8935569B2 (en) * | 2010-03-23 | 2015-01-13 | Continental Teves Ag & Co. Ohg | Control computer system, method for controlling a control computer system, and use of a control computer system |
-
2011
- 2011-11-17 DE DE102011086530A patent/DE102011086530A1/de not_active Withdrawn
- 2011-11-18 US US13/988,176 patent/US20130268798A1/en not_active Abandoned
- 2011-11-18 EP EP11785406.7A patent/EP2641176B1/de active Active
- 2011-11-18 KR KR1020137015830A patent/KR20130119452A/ko not_active Application Discontinuation
- 2011-11-18 CN CN201180055658.7A patent/CN103262045B/zh active Active
- 2011-11-18 WO PCT/EP2011/070414 patent/WO2012066108A1/de active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862502A (en) * | 1993-12-02 | 1999-01-19 | Itt Automotive Europe Gmbh | Circuit arrangement for safety-critical control systems |
CN101243401A (zh) * | 2005-08-11 | 2008-08-13 | 大陆-特韦斯贸易合伙股份公司及两合公司 | 用于控制或调节至少部分安全关键处理的微处理器系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2012066108A1 (de) | 2012-05-24 |
DE102011086530A1 (de) | 2012-05-24 |
EP2641176B1 (de) | 2015-01-07 |
KR20130119452A (ko) | 2013-10-31 |
EP2641176A1 (de) | 2013-09-25 |
CN103262045A (zh) | 2013-08-21 |
US20130268798A1 (en) | 2013-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103262045B (zh) | 具有容错架构的微处理器系统 | |
Iturbe et al. | A triple core lock-step (tcls) arm® cortex®-r5 processor for safety-critical and ultra-reliable applications | |
Kohn et al. | Fail-operational in safety-related automotive multi-core systems | |
Iturbe et al. | Addressing functional safety challenges in autonomous vehicles with the arm TCL S architecture | |
US6415394B1 (en) | Method and circuit for analysis of the operation of a microcontroller using signature analysis during operation | |
Reinhardt et al. | Achieving a scalable e/e-architecture using autosar and virtualization | |
CN102640119B (zh) | 用于运行计算单元的方法 | |
Kohn et al. | Architectural concepts for fail-operational automotive systems | |
KR20150007973A (ko) | 마이크로컴퓨터 | |
US11846923B2 (en) | Automation system for monitoring a safety-critical process | |
Ruiz et al. | A safe generic adaptation mechanism for smart cars | |
Györök et al. | Duplicated control unit based embedded fault-masking systems | |
JPH10513286A (ja) | プログラム制御回路の機能をモニタするための処理及び回路構成 | |
Frtunikj et al. | A safety aware run-time environment for adaptive automotive control systems | |
Pop et al. | Methods and tools for reducing certification costs of mixed-criticality applications on multi-core platforms: the RECOMP approach | |
Aidemark et al. | A framework for node-level fault tolerance in distributed real-time systems | |
Brewerton et al. | Demonstration of automotive steering column lock using multicore autosar® operating system | |
Ghadhab et al. | A controller safety concept based on software-implemented fault tolerance for fail-operational automotive applications | |
Frtunikj et al. | Adaptive error and sensor management for autonomous vehicles: model-based approach and run-time system | |
Mariani et al. | Comparing fail-safe microcontroller architectures in light of IEC 61508 | |
CN115328706A (zh) | 双cpu冗余架构综合控制方法及系统 | |
CN115129110A (zh) | 用于控制驾驶功能的方法和设备 | |
Großmann et al. | Efficient application of multi-core processors as substitute of the E-Gas (Etc) monitoring concept | |
EP3534226B1 (en) | Modular control system | |
EP3367242B1 (en) | Method of error detection in a microcontroller unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230201 Address after: Hannover Patentee after: Continental Automotive Technology Co.,Ltd. Address before: Frankfurt, Germany Patentee before: CONTINENTAL TEVES AG & Co. OHG |
|
TR01 | Transfer of patent right |