CN101243407B - 用于控制计算器***的方法和装置 - Google Patents
用于控制计算器***的方法和装置 Download PDFInfo
- Publication number
- CN101243407B CN101243407B CN2006800295730A CN200680029573A CN101243407B CN 101243407 B CN101243407 B CN 101243407B CN 2006800295730 A CN2006800295730 A CN 2006800295730A CN 200680029573 A CN200680029573 A CN 200680029573A CN 101243407 B CN101243407 B CN 101243407B
- Authority
- CN
- China
- Prior art keywords
- performance element
- comparing unit
- mistake
- performance
- signal
- 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 35
- 230000007246 mechanism Effects 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 3
- 238000001514 detection method Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 22
- 230000008569 process Effects 0.000 description 8
- 230000000052 comparative effect Effects 0.000 description 7
- 230000009977 dual effect Effects 0.000 description 6
- 230000001052 transient effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- JJWKPURADFRFRB-UHFFFAOYSA-N carbonyl sulfide Chemical compound O=C=S JJWKPURADFRFRB-UHFFFAOYSA-N 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000035876 healing Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001550 time effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
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
- 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/1629—Error detection by comparing the output of redundant processing systems
- G06F11/1654—Error detection by comparing the output of redundant processing systems where the output of only one of the redundant processing components can drive the attached hardware, e.g. memory or I/O
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Steering-Linkage Mechanisms And Four-Wheel Steering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Electrotherapy Devices (AREA)
Abstract
一种用于控制具有至少两个执行单元和一个比较单元的计算器***的方法,该计算器***工作在时钟同步的模式中,并且将至少两个执行单元的结果相比较,其特征在于,在通过比较单元识别出错误之时或之后在至少一个执行单元上运行针对该执行单元的错误识别机制。
Description
技术领域
本发明涉及按照独立权利要求的前序部分的用于在具有两个核的处理器***中出现错误时保持***功能的装置和方法,以及对应的处理器***。
背景技术
从现有技术公知为了识别错误采用例如微控制器(μC)的冗余,还有一个μC如CPU(中央处理单元)的部件的冗余。在此冗余计算的数据和冗余产生的信号要由比较单元就一致性进行比较。
具有冗余CPU的微控制器也称为双核微控制器(双核μC)。在双核μC中,两个CPU可以节拍同步、即并行地(按照时钟同步(Lockstep)的模式)工作,也可以错开几个节拍地工作。两个CPU都接收相同的输入数据并处理相同的程序或相同的指令。如果在冗余实施的核之一中出现影响该核的至少一个输出信号的错误,则会导致待比较的数据出现差异,这种差异将由比较单元识别出。在此输出信号除了“数据输出”之外还可以包括指令地址和控制信号。比较单元在识别出待比较的信号之间存在差异时产生状态或错误信号,利用该信号可以将该比较结果向外发布。但是,如果不对冗余实施的单元采取额外的错误识别机制,就无法找到出现错误的部件,也不能确定错误原因的类型。
如果在与安全有关的控制和调节***中使用上述冗余,则通常在识别出冗余获得的信号之间存在差异时将整个***切换到“安全状态”,即使这种差异的原因是只具有很短的作用时间的瞬时错误。在诸如ESP***的汽车***中,“安全状态”大都意味着切断***的连接。
由于半导体结构变得越来越小,预计瞬时处理器错误会越来越多,这些处理器错误例如由于宇宙射线引起。为了能够克服瞬时错误而不切端***的连接,并且在运行期间能够容忍或甚至“治愈”该错误,在现有技术中已经存在几种解决方案:利用大多很费事的方法通过特定于应用的、通常由模型支持的似然性来检测错误,必要时触发计算器***的复位。计算器***重新初始化,并在初始化时间和可选的“补偿检查(Wiedergutpruefung)”之后(在例如几百ms之后)重新进入运行就绪状态(所谓的“前向恢复”)。在非实时应用中(例如金融市场上的交易)特定于应用地在交易之前建立一种状态,将该状态存储起来,并且当确认该交易成功结束时才将该状态作为无效的丢弃。如果在该交易期间出现错误,则返回到所存储的起始时刻(“后向恢复”)。在实时***中这样的解决方案非常费事,而且大多要在对处理器***复位或补偿检查的持续时间内中断该功能。
随着汽车中的电子调节***的功能范围增大,诸如具有转向干预的ESP等***的断开不是在每个运行状态下都意味着过渡到安全的***状态。
发明内容
本发明要解决的技术问题是一种用于运行双核处理器(或双核处理器***)的方法,其目标是提高抵抗错误的鲁棒性和增大在处理器***中出现瞬时和永久错误时***功能的(部分)可用性。在优选的实施例中,这可以在对各个程序部分保持原始的执行时间的情况下实现。
在根据现有技术的、运行在时钟同步模式下的双核计算器中,一个CPU作为主机工作,第二CPU作为从机工作。从机CPU的结果只能用于比较主机CPU的结果。只有主机CPU可以将结果写到数据/地址总线上或写入CPU寄存器中。
本发明的优点在于可以将主机功能交替地分配到至少两个执行单元上,并由此交替使用在时钟同步模式下运行的双核或多核计算器的核结果。由此在考察特定的边界条件下即使在识别到冗余算出的结果之间存在差异之后也能保持处理器***的有限运行。这尤其在实时应用中是非常有利的,在实时应用中不是在每个运行状态下都期望基于处理器错误而断开***。
在优选的实施例中给出另一个优点,即可以在处理器***的执行单元中查找到错误,停用该出现错误的执行单元,并且继续运行具有未出现错误的执行单元的***,直到达到对断开不重要的***状态,或超过事先确定的、在该模式下的最大运行持续时间。
优选地,描述了一种用于控制具有至少两个执行单元和一个比较单元的计算器***的方法,该计算器***工作在时钟同步的模式中,并且将至少两个执行单元的结果相比较,其特征在于,在通过比较单元识别出错误之时或之后在至少一个执行单元上运行针对该执行单元的错误识别机制。优选地,描述了一种方法,其特征在于,在通过比较单元识别出错误之时或之后中断在至少两个执行单元上的当前的指令序列,并在至少两个执行单元上运行错误识别机制。优选的描述了一种方法,其特征在于,在通过比较单元识别出错误之时或之后中断在恰好一个执行单元上的当前的指令序列,并在该执行单元上运行错误识别机制,在运行错误识别机制的持续时间期间断开至少两个执行单元的比较单元,并且在至少一个另外的执行单元上继续处理按照规定的程序序列。优选的描述了一种方法,其特征在于,如果错误识别机制没有识别出错误,则在运行完错误识别机制之后继续执行按照规定的程序流程。优选的描述了一种方法,其特征在于,在一个执行单元上找到错误之时或之后断开该出现错误的执行单元。优选的描述了一种方法,其特征在于,停用所述比较单元。优选的描述了一种方法,其特征在于,在停用至少一个部件时产生错误信号,该错误信号将提供给应用。优选的描述了一种方法,其特征在于,在出现错误之后仅用一个执行单元进行的运行在时间上有限,而且最迟在事先确定的时间结束之后就断开所述计算器***。优选的描述了一种方法,其特征在于,所述断开在事先确定的时间结束之前就已经通过由应用产生的信号断开。优选地,描述了一种用于控制具有至少两个执行单元和一个比较单元的计算器***的装置,该计算器***工作在时钟同步的模式中,并且将至少两个执行单元的结果相比较,其特征在于,具有这样构成的装置,在通过比较单元识别出错误之时或之后在至少一个执行单元上运行针对该执行单元的错误识别机制。优选的描述了一种装置,其特征在于,具有用于取消至少两个执行单元的时钟同步的耦合并向任意一个执行单元分配主机功能的装置。优选的描述了一种装置,其特征在于,具有用于存储用于执行单元的错误识别机制的装置。优选的描述了一种装置,其特征在于,具有用于在需要时向至少一个执行单元输入针对错误识别机制的指令和/或程序的装置。优选的描述了一种装置,其特征在于,具有用于停用比较单元的装置。
附图说明
其它优点和优选实施方式从权利要求的特征以及说明书中得出。
图1示出具有主机CPU和从机CPU的双核处理器,
图2示出具有两个***接口的双核处理器,
图3示出双核处理器以及比较单元的附加输入信号,
图4示出双核处理器以及比较单元的附加错误信号,
图5借助流程图示出用于在处理器***中处理错误的第一方法,
图6借助流程图示出用于在处理器***中处理错误的第二方法。
具体实施方式
图1示出处理器***W100,其具有多个执行单元W110a、W110b如双核计算器以及优选用HW实现的比较单元W120。该处理器***运行在时钟同步模式。在该运行方式中,优选在每个时钟周期之后比较执行单元的结果。执行单元在此可以实现为处理器/核/CPU,也可以实现为FPU(浮点单元)、DSP(数字信号处理器),协处理器或ALU(算术逻辑单元),并分别具有任意数量的所属的寄存器组。在此恰好有一个执行单元通过中断或释放单元W130与***接口W140连接,或者直接与处理器***的数据/地址总线连接。该执行单元产生唯一的要在处理器***中继续处理的结果。因此,与***接口W130或者处理器***的数据/地址总线连接的执行单元称为主机。至少一个另外的执行单元的输出信号只输入比较单元W120,并在该比较单元中用于对主机的输出信号进行似然性检查。比较单元W120通过信号W125控制中断或释放单元W130,该信号W125是代表该比较的信息。这种恰好具有两个执行单元并且执行单元作为CPU实现的***在现有技术中作为双核微控制器公知。
与公知的、在时钟同步模式下运行的双核微控制器不同,在本发明的第一实施例中,在保持特定的边界条件下即使冗余的执行单元的输出信号之间存在差异也将一个值写入寄存器或存储器中或输出到数据/地址总线上。但在此主机功能不是固定地分配给一个执行单元,而是可以分配给不同的执行单元。该分配根据静态确定的机制进行或者动态确定。
在图2所示的第二实施例中,处理器***W101包含相对于图1的处理器***W100扩展了的比较单元W121、两个中断或释放单元W130a、W130b,执行单元W110a、W110b通过该中断或释放单元W130a、W130b与***接口W140a、W140b或者与数据/地址总线连接,而且该中断或释放单元W130a、W130b由比较单元通过信号W126a、W126b控制。在此在整个处理器***中总是只向一个执行单元分配主机功能,即总是最多只有一个执行单元与***接口或数据/地址总线连接。主机功能的分配或主机功能的切换在此通过控制中断或释放单元W130a、W130b进行。这些中断或释放单元由比较单元W121根据至少两个执行单元的输出信号的比较结果来控制。
在图3所示的实施例中,主机功能的切换通过比较单元W122进行,该比较单元根据至少一个输入信号W160或者该输入信号的标志通过借助信号W126a和W126b来控制中断或释放单元W130a、W130b,在至少两个执行单元W110a、W110b之间切换主机功能或者断开所述***。
输入信号W160或者该输入信号的标志可以根据时间或指令计数器(例如每10个时钟周期或每10个指令)来产生,优选通过专用硬件产生,或者可以通过操作***例如根据对运行时对象的调度来产生(例如可以在每次调用运行时对象时切换或者在每个操作***周期时切换),或者可以根据程序代码中的标志,或者可以通过中断或中断请求单元的信号产生,或者可以根据对程序和/或数据存储器中的特定存储区的访问而产生。
主机功能的分配或切换可以根据上述条件之一,根据比较单元W122的比较结果,或者多个这些条件的组合来进行。
在执行单元的输出信号之间存在差异时,由比较单元产生内部错误信号。根据通过信号W160通知给比较单元的***状态,可以不断开该***而将主机功能从一个执行单元切换到另一个执行单元上。对于输出信号的每一个其它差异重复该过程,即主机功能分别划分给其它执行单元。在此要注意,主机通过各自的***接口W140与比较结果无关地传递其结果。比较单元只检测一个差异,但是不禁止各主机的写入。在比较单元W122中可以包含其它根据错误计数器在超过预定个数的错误之后断开所述***的装置,所述错误计数器对已识别出的差异计数。该***还可以如图4所示通过比较单元W123产生外部错误信号W170。该错误信号可以在外部单元、操作***或应用中进行分析,并通过信号W160通知比较单元W123应当断开***。这些实施方式的共同点是:在出现错误时处理器***不是立即断开而是继续运行。通过交换主机功能,在一个执行单元中出现永久错误时也可以使至少每个第二结果是正确的。根据不同的应用功能,这足以使***在一定的时间期间以足够的功能品质继续运行。
很多在汽车中用于制备信号和调节机械***的功能都具有鲁棒的设计,即短暂的干扰(例如由于EMV射线或由于干扰参数影响调节回路)在这样的***中不会具有对安全很关键的影响,并由此可以容忍。但是保持时间较长的干扰不能被这样的“鲁棒”***所容忍。在这样的鲁棒功能中,处理器***不必在出现错误之后、即在通过比较单元识别出差异之后立即断开。在作用持续时间较短的瞬时错误原因中,该错误在下次调用时大多不再出现。通过交替使用执行单元的输出信号或在具有多个执行单元的处理器***中交替分配主机功能,在一个执行单元中的永久错误也不会长时间影响应用,而是断断续续地影响。由此在错误情况下,直到一个错误被清楚地识别为永久错误,或者应用***达到适于断开的***状态时,才断开处理器***。
在另一个实施例中,在识别出至少两个执行单元的输出信号之间存在差异时中断在所有执行单元上对当前指令序列(程序块,任务)的处理。在所有执行单元中不是中断指令序列,而是处理错误识别例程如BIST(Built-In-Self_Test,内建自测试)或者基于软件的自测试。通过将错误识别例程的结果与存储的参考值进行比较,可以识别并找到错误。在识别和找到错误时,断开出现错误的执行单元。没有出现错误的单元继续运行,直到达到确定要断开的***状态为止。出现错误的执行单元的断开是这样来进行的,停用比较单元并且分配给该执行单元的中断或释放单元W130a或W130b不允许该执行单元连接到***接口或地址/数据总线,或这样来进行,不向该执行单元输入指令、数据和/或时钟信号。
为了停用比较单元存在各种可能。一方面可以向比较单元发送信号,利用该信号启动或停用比较逻辑或比较功能。为此在该比较单元中添加附加的逻辑电路,该逻辑电路可以根据这样的信号启动或停用比较功能。另一个可能在于,不向比较单元输入要比较的数据。第三种可能在于,在***层面上忽略按照图4的比较单元W123的错误信号W170,中断错误信号W170本身,或者在这种情况下不将比较结果用于产生控制信号,如图2和图3所示的信号W126a和W126b。所有这些可能的共同点在于:它们在***中产生一个状态,在该状态下执行单元的输出信号何时不同是没有什么意义的。如果通过某种措施在比较单元或其输入或输出信号中达到该状态,则将该比较单元称为消极或停用的。
如果在运行错误识别机制时没有在执行单元中找到错误,则在时钟同步中启动下个任务。如果又识别出输出信号之间存在差异,则再次进行上述过程,但是必须限制重复的次数n。该限制可以根据应用的错误容许时间来进行。如果在重复n次之后又识别出错误,则立即断开该***。
根据图4的另一个优选实施例基于具有双核体系和优选用HW实现的比较单元的处理器***,该处理器***除了时钟同步运行模式之外还可以在至少一个第二运行模式中运行,在该第二运行模式中两个执行单元W110a、W110b同时处理不同的程序、程序段或指令。如果该处理器***工作在时钟同步运行模式下,并且比较单元确定结果之间存在差异,则在例如W110b的、恰好没有与***接口或数据/地址总线连接的执行单元中中断当前程序段或运行时对象(下面称为“任务”)的执行,并启动错误识别例程(例如BIST)。例如W110a的另一个执行单元继续处理当前任务,但是其具有50%的统计学错误概率。如果在W110b上的错误识别例程直到在W110a上运行的任务结束时才在W110b中识别出错误(例如通过与存储的参考值相比较),则W110b断开,而W110a继续工作在单模式(没有比较,或具有被停用的比较单元)下,直到整个***达到对于断开不重要的状态为止。然后断开微处理器***。如果W110b直到W110a的任务结束时都没有找到错误,则下个任务又在时钟同步模式下开始,但这次W110b与***接口或数据/地址总线连接。如果不再出现差异,则在前面的任务中出现的差异很有可能是瞬时错误的影响。如果又出现差异,则这一次在执行单元W110a中中断当前任务并启动错误识别例程(例如BIST)。该过程一直重复到下个(或者可配置个数的)“调度回合”(操作***周期)开始时。如果然后还存在结果之间的差异,尽管没有找到错误,仍然可以推断出是没有通过错误识别机制找到的永久错误,并完全断开微处理器***。
在图5中示出用于在执行单元的输出信号之间出现差异之后控制处理器***的第一方法。
在步骤510,在至少两个执行单元中处理相同的指令或程序段。
在步骤520中,对该至少两个执行单元的输出信号就一致性进行比较。如果输出信号相同或者在限定的容差带中,则重新开始步骤510,这一次用新的程序段或指令和/或数据开始。如果在步骤520识别出输出信号之间存在差异,则下一步执行步骤530。
在步骤530中,中断当前的程序处理,并在所有执行单元上执行错误识别例程。在此必须中断该执行单元与***接口或数据/地址总线的连接。
在步骤540中,错误识别例程的结果分别与参考值相比较,该参考值与错误识别例程的程序代码一起存储。如果在该比较中出现差异,则将具有导致差异的比较结果的执行单元标识为有错,并在下一步执行步骤550。如果没有出现差异,则重新开始步骤510,这一次用新的程序段或指令和/或数据开始。
在步骤550中,停用标识为有错的执行单元以及比较单元。执行单元的断开例如可以这样进行,不向该执行单元输入指令、数据和/或时钟信号,或者中断该执行单元与比较单元以及与***接口或数据/地址总线的连接。
在步骤560,处理器***继续用剩下的、没有错误的执行单元工作。在具有两个执行单元的处理器***中,这意味着单核运行。该单核运行在与安全有关的***中是时间有限的。
在步骤570中,在达到断开条件之后断开处理器***或者切换到限定的安全状态,该断开条件例如是超过针对单核运行的时间限制。
在图6中示出用于在执行单元的输出信号之间出现差异之后控制处理器***的另一种方法。
在步骤605中,主机功能从第一执行单元转换到第二执行单元上。
在步骤610中,在至少两个执行单元中处理相同的指令或程序段。
在步骤620中,对该至少两个执行单元的输出信号就一致性进行比较。如果输出信号相同或者在限定的容差带中,则重新开始步骤610,这一次用新的程序段或指令和/或数据开始。如果在步骤620识别出输出信号之间存在差异,则下一步执行步骤630。
在步骤630中,在至少一个执行单元,而且至少在与***接口或数据/地址总线连接的执行单元上继续执行当前的程序序列。在至少一个另外的执行单元上执行错误识别例程。在此必须停用比较单元。
在步骤640中,错误识别例程的结果分别与参考值相比较,该参考值与错误识别例程的程序代码一起存储。如果在该比较中出现差异,则将具有导致差异的比较结果的执行单元标识为有错,并在下一步执行步骤650。如果没有出现差异,则重新开始步骤605,这一次用新的程序段或指令和/或数据开始。
在步骤650中,断开标识为有错的执行单元。这例如可以这样进行,不向该执行单元输入指令、数据和/或时钟信号,或者中断该执行单元与比较单元以及与***接口或数据/地址总线的连接。
在步骤660,处理器***继续用剩下的、没有错误的执行单元工作。在具有两个执行单元的处理器***中,这意味着单核运行。该单核运行在与安全有关的***中是时间有限的。
在步骤670中,在达到断开条件之后断开处理器***或者切换到限定的安全状态,该断开条件例如是超过针对单核运行的时间限制。
Claims (7)
1.一种用于控制具有至少两个执行单元(W110a,W110b)和一个比较单元(W120-123)的计算器***的方法,该计算器***工作在时钟同步的模式中,并且将至少两个执行单元(W110a,W110b)的结果相比较,其特征在于,在通过比较单元(W120-123)识别出错误之时或之后中断在恰好一个执行单元(W110a,W110b)上的当前的指令序列,在该一个执行单元(W110a,W110b)上运行错误识别机制,在运行错误识别机制的持续时间期间断开所述至少两个执行单元(W110a,W110b)的比较单元(W120-123),并且在至少一个另外的执行单元(W110a,W110b)上继续处理按照规定的程序序列。
2.根据权利要求1所述的方法,其特征在于,如果错误识别机制没有识别出错误,则在运行完错误识别机制之后继续执行按照规定的程序流程。
3.根据权利要求2所述的方法,其特征在于,在一个执行单元(W110a,W110b)上找到错误之时或之后断开该出现错误的执行单元(W110a,W110b)。
4.根据权利要求3所述的方法,其特征在于,停用所述比较单元(W120-123)。
5.根据权利要求3或4所述的方法,其特征在于,在停用至少一个部件时产生错误信号,该错误信号被提供给应用。
6.根据权利要求1所述的方法,其特征在于,在出现错误之后仅用一个执行单元(W110a,W110b)进行的运行在时间上是有限的,而且最迟在事先确定的时间结束之后就断开所述计算器***。
7.一种用于控制具有至少两个执行单元(W110a,W110b)和一个比较单元(W120-123)的计算器***的装置,该计算器***工作在时钟同步的模式中,并且将至少两个执行单元(W110a,W110b)的结果相比较,其特征在于,具有被构造用于进行如下操作的装置:在通过比较单元(W120-123)识别出错误之时或之后中断在恰好一个执行单元(W110a,W110b)上的当前的指令序列,在该一个执行单元(W110a,W110b)上运行错误识别机制,在运行错误识别机制的持续时间期间断开所述至少两个执行单元(W110a,W110b)的比较单元(W120-123),并且在至少一个另外的执行单元(W110a,W110b)上继续处理按照规定的程序序列。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102005037246.5 | 2005-08-08 | ||
DE102005037246A DE102005037246A1 (de) | 2005-08-08 | 2005-08-08 | Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und einer Vergleichseinheit |
PCT/EP2006/064690 WO2007017386A1 (de) | 2005-08-08 | 2006-07-26 | Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und einer vergleichseinheit |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101243407A CN101243407A (zh) | 2008-08-13 |
CN101243407B true CN101243407B (zh) | 2012-05-16 |
Family
ID=37433825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800295730A Active CN101243407B (zh) | 2005-08-08 | 2006-07-26 | 用于控制计算器***的方法和装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20090217092A1 (zh) |
EP (1) | EP1917592B1 (zh) |
JP (1) | JP5199088B2 (zh) |
CN (1) | CN101243407B (zh) |
AT (1) | ATE433154T1 (zh) |
DE (2) | DE102005037246A1 (zh) |
WO (1) | WO2007017386A1 (zh) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9207661B2 (en) | 2007-07-20 | 2015-12-08 | GM Global Technology Operations LLC | Dual core architecture of a control module of an engine |
US8018493B2 (en) * | 2007-11-21 | 2011-09-13 | Panasonic Corporation | Image data transfer apparatus |
WO2009125371A2 (en) * | 2008-04-09 | 2009-10-15 | Nxp B.V. | A method and system for power management |
JP5195913B2 (ja) * | 2008-07-22 | 2013-05-15 | トヨタ自動車株式会社 | マルチコアシステム、車両用電子制御ユニット、タスク切り替え方法 |
US8286192B2 (en) * | 2009-12-04 | 2012-10-09 | Red Hat, Inc. | Kernel subsystem for handling performance counters and events |
US9665461B2 (en) | 2009-12-04 | 2017-05-30 | Red Hat, Inc. | Obtaining application performance data for different performance events via a unified channel |
US8935703B2 (en) * | 2009-12-11 | 2015-01-13 | Red Hat, Inc. | Performance counter inheritance |
US8954996B2 (en) * | 2009-12-11 | 2015-02-10 | Red Hat, Inc. | Profiling the system providing performance statistics in real time |
US8171340B2 (en) * | 2009-12-11 | 2012-05-01 | Red Hat, Inc. | Software performance counters |
DE102011080511A1 (de) * | 2011-08-05 | 2013-02-07 | Robert Bosch Gmbh | Schaltungsanordnung und Verfahren zur Plausibilisierung von Sensorsignalen |
US9146835B2 (en) | 2012-01-05 | 2015-09-29 | International Business Machines Corporation | Methods and systems with delayed execution of multiple processors |
US9058419B2 (en) | 2012-03-14 | 2015-06-16 | GM Global Technology Operations LLC | System and method for verifying the integrity of a safety-critical vehicle control system |
FR2994000B1 (fr) * | 2012-07-30 | 2015-06-05 | Airbus Operations Sas | Procede de surveillance de l'execution coordonnee de taches sequencees par une carte electronique comportant au moins deux processeurs synchronises sur une meme horloge |
US9135126B2 (en) | 2013-02-07 | 2015-09-15 | International Business Machines Corporation | Multi-core re-initialization failure control system |
US9641287B2 (en) | 2015-01-13 | 2017-05-02 | Honeywell International Inc. | Methods and apparatus for high-integrity data transfer with preemptive blocking |
DE102015003194A1 (de) | 2015-03-12 | 2016-09-15 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern |
JP6378119B2 (ja) * | 2015-03-16 | 2018-08-22 | 日立建機株式会社 | 制御コントローラ、ステアバイワイヤシステムおよび機械 |
EP3085596B1 (en) | 2015-04-20 | 2017-11-29 | Autoliv Development AB | A vehicle safety electronic control system |
DE102015216086A1 (de) * | 2015-08-24 | 2017-03-02 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Überwachen eines Zustandes einer elektronischen Schaltungseinheit eines Fahrzeugs |
US9734006B2 (en) * | 2015-09-18 | 2017-08-15 | Nxp Usa, Inc. | System and method for error detection in a critical system |
DE102015218882A1 (de) | 2015-09-30 | 2017-03-30 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Prüfen von Berechnungsergebnissen in einem System mit mehreren Recheneinheiten |
JP6083480B1 (ja) * | 2016-02-18 | 2017-02-22 | 日本電気株式会社 | 監視装置、フォールトトレラントシステムおよび方法 |
JP2017146897A (ja) | 2016-02-19 | 2017-08-24 | 株式会社デンソー | マイクロコントローラ及び電子制御装置 |
CN107885585A (zh) * | 2016-09-30 | 2018-04-06 | 罗伯特·博世有限公司 | 一种在多核电子控制单元中的动态任务调度器 |
US10331532B2 (en) * | 2017-01-19 | 2019-06-25 | Qualcomm Incorporated | Periodic non-intrusive diagnosis of lockstep systems |
DE102017109175A1 (de) * | 2017-04-28 | 2018-10-31 | Valeo Schalter Und Sensoren Gmbh | Steuereinrichtung, Fahrerassistenzsystem, Kraftfahrzeug und Verfahren zum Steuern einer Fahrerassistenzfunktion |
DE102017116081A1 (de) * | 2017-07-18 | 2019-01-24 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Konfigurieren einer Ausführungseinrichtung und zum Erkennen eines Betriebszustands derselben |
US10802932B2 (en) * | 2017-12-04 | 2020-10-13 | Nxp Usa, Inc. | Data processing system having lockstep operation |
US11852764B2 (en) * | 2018-07-27 | 2023-12-26 | Triad National Security, Llc | Seismic detection switch |
JP2022051361A (ja) * | 2020-09-18 | 2022-03-31 | 株式会社東芝 | 半導体装置 |
US11513883B2 (en) * | 2021-01-29 | 2022-11-29 | Stmicroelectronics International N.V. | Glitch absorption apparatus and method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1336587A (zh) * | 2000-07-26 | 2002-02-20 | 国际商业机器公司 | 在以正常模式执行指令期间执行硬件测试的处理器 |
CN1434941A (zh) * | 1999-12-21 | 2003-08-06 | 英特尔公司 | 纠正软错误的固件机制 |
US6615366B1 (en) * | 1999-12-21 | 2003-09-02 | Intel Corporation | Microprocessor with dual execution core operable in high reliability mode |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3898621A (en) * | 1973-04-06 | 1975-08-05 | Gte Automatic Electric Lab Inc | Data processor system diagnostic arrangement |
JP3156429B2 (ja) * | 1993-03-17 | 2001-04-16 | 株式会社日立製作所 | 高信頼型計算機用システム制御lsi及びそれを用いたコンピュータシステム |
JP3423732B2 (ja) * | 1992-09-17 | 2003-07-07 | 株式会社日立製作所 | 情報処理装置及び情報処理装置における障害処理方法 |
US5748873A (en) * | 1992-09-17 | 1998-05-05 | Hitachi,Ltd. | Fault recovering system provided in highly reliable computer system having duplicated processors |
JP3210527B2 (ja) * | 1994-07-05 | 2001-09-17 | 株式会社東芝 | 二重化計算機システム |
US6311289B1 (en) * | 1998-11-03 | 2001-10-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Explicit state copy in a fault tolerant system using a remote write operation |
US6948092B2 (en) * | 1998-12-10 | 2005-09-20 | Hewlett-Packard Development Company, L.P. | System recovery from errors for processor and associated components |
US6393582B1 (en) * | 1998-12-10 | 2002-05-21 | Compaq Computer Corporation | Error self-checking and recovery using lock-step processor pair architecture |
US6393590B1 (en) * | 1998-12-22 | 2002-05-21 | Nortel Networks Limited | Method and apparatus for ensuring proper functionality of a shared memory, multiprocessor system |
JP2000298594A (ja) * | 1999-04-13 | 2000-10-24 | Nec Corp | フォールトトレラント制御方法および冗長コンピュータシステム |
US7055060B2 (en) * | 2002-12-19 | 2006-05-30 | Intel Corporation | On-die mechanism for high-reliability processor |
US20050240806A1 (en) * | 2004-03-30 | 2005-10-27 | Hewlett-Packard Development Company, L.P. | Diagnostic memory dump method in a redundant processor |
US7237144B2 (en) * | 2004-04-06 | 2007-06-26 | Hewlett-Packard Development Company, L.P. | Off-chip lockstep checking |
US7296181B2 (en) * | 2004-04-06 | 2007-11-13 | Hewlett-Packard Development Company, L.P. | Lockstep error signaling |
US7290169B2 (en) * | 2004-04-06 | 2007-10-30 | Hewlett-Packard Development Company, L.P. | Core-level processor lockstepping |
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 |
-
2005
- 2005-08-08 DE DE102005037246A patent/DE102005037246A1/de not_active Withdrawn
-
2006
- 2006-07-26 DE DE502006003900T patent/DE502006003900D1/de active Active
- 2006-07-26 JP JP2008525522A patent/JP5199088B2/ja not_active Expired - Fee Related
- 2006-07-26 EP EP06792577A patent/EP1917592B1/de active Active
- 2006-07-26 AT AT06792577T patent/ATE433154T1/de not_active IP Right Cessation
- 2006-07-26 CN CN2006800295730A patent/CN101243407B/zh active Active
- 2006-07-26 WO PCT/EP2006/064690 patent/WO2007017386A1/de active Application Filing
- 2006-07-26 US US11/990,251 patent/US20090217092A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1434941A (zh) * | 1999-12-21 | 2003-08-06 | 英特尔公司 | 纠正软错误的固件机制 |
US6615366B1 (en) * | 1999-12-21 | 2003-09-02 | Intel Corporation | Microprocessor with dual execution core operable in high reliability mode |
CN1336587A (zh) * | 2000-07-26 | 2002-02-20 | 国际商业机器公司 | 在以正常模式执行指令期间执行硬件测试的处理器 |
Also Published As
Publication number | Publication date |
---|---|
DE102005037246A1 (de) | 2007-02-15 |
JP5199088B2 (ja) | 2013-05-15 |
EP1917592B1 (de) | 2009-06-03 |
ATE433154T1 (de) | 2009-06-15 |
JP2009505183A (ja) | 2009-02-05 |
DE502006003900D1 (de) | 2009-07-16 |
CN101243407A (zh) | 2008-08-13 |
EP1917592A1 (de) | 2008-05-07 |
WO2007017386A1 (de) | 2007-02-15 |
US20090217092A1 (en) | 2009-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101243407B (zh) | 用于控制计算器***的方法和装置 | |
US6938183B2 (en) | Fault tolerant processing architecture | |
CN1993679B (zh) | 执行计算机程序的方法、操作***和计算设备 | |
CN112015599B (zh) | 错误恢复的方法和装置 | |
US20080270660A1 (en) | Method and Device for Switching Over in a Computer System Having at Least Two Execution Units | |
US20170242809A1 (en) | Abnormal interrupt request processing | |
US8090983B2 (en) | Method and device for performing switchover operations in a computer system having at least two execution units | |
JP2006164277A (ja) | プロセッサにおけるエラー除去装置および方法,プロセッサ | |
CN102640119B (zh) | 用于运行计算单元的方法 | |
CN101313281A (zh) | 用于在包括至少两个具有寄存器的执行单元的***中消除错误的装置和方法 | |
US20090044048A1 (en) | Method and device for generating a signal in a computer system having a plurality of components | |
CN108694094B (zh) | 用于处理存储器访问操作的装置和方法 | |
JP5315748B2 (ja) | マイクロプロセッサおよびシグネチャ生成方法ならびに多重化システムおよび多重化実行検証方法 | |
JPWO2011046217A1 (ja) | マイクロコンピュータ及びその動作方法 | |
CN100538644C (zh) | 执行计算机程序的方法、计算设备 | |
US20090119540A1 (en) | Device and method for performing switchover operations in a computer system having at least two execution units | |
US20080263340A1 (en) | Method and Device for Analyzing a Signal from a Computer System Having at Least Two Execution Units | |
US20070067677A1 (en) | Program-controlled unit and method | |
US20080313384A1 (en) | Method and Device for Separating the Processing of Program Code in a Computer System Having at Least Two Execution Units | |
CN100511165C (zh) | 执行计算机程序的方法、操作***以及计算设备 | |
CN107423029B (zh) | 计算单元 | |
CN110986929B (zh) | 导航与控制周期不同步的飞行控制方案的软件实现方法 | |
JPH1196006A (ja) | 情報処理装置 | |
US6986079B2 (en) | Memory device method for operating a system containing a memory device for fault detection with two interrupt service routines | |
Rodríguez et al. | A watchdog processor architecture with minimal performance overhead |
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 |