CN105393224B - 故障检测装置及方法 - Google Patents

故障检测装置及方法 Download PDF

Info

Publication number
CN105393224B
CN105393224B CN201380078301.XA CN201380078301A CN105393224B CN 105393224 B CN105393224 B CN 105393224B CN 201380078301 A CN201380078301 A CN 201380078301A CN 105393224 B CN105393224 B CN 105393224B
Authority
CN
China
Prior art keywords
signal
monitored
entry
action
timer
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.)
Expired - Fee Related
Application number
CN201380078301.XA
Other languages
English (en)
Other versions
CN105393224A (zh
Inventor
格拉哈姆·埃德米斯顿
阿兰·迪瓦恩
大卫·麦克梅纳明
安德鲁·罗伯逊
詹姆斯·安德鲁·科利尔·斯科比
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP USA Inc
Original Assignee
NXP USA Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NXP USA Inc filed Critical NXP USA Inc
Publication of CN105393224A publication Critical patent/CN105393224A/zh
Application granted granted Critical
Publication of CN105393224B publication Critical patent/CN105393224B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

适用于检测处理器101内故障的装置包括监视器100,该监视器100从处理器接收输入、输出信号102、103并且生成被用于在散列表203内访问条目的散列索引键。条目可能包括动作,例如设置定时器201,以便输出对输入状态变化的响应可以在指定时间间隔内被确认为是有效的。

Description

故障检测装置及方法
发明描述
技术领域
本发明涉及用于故障检测的方法及装置,并且不是排他性地具有在微控制器、中央处理单元(CPU)等等内进行故障检测的适用性。
背景技术
如果主控制系统失效时,从控制器到其控制的更广泛外部系统的误差和故障传播会发生。这将导致外部系统的一个或多个部分生成非法响应或根本没有进行响应。主控制器内的故障通常是由损坏的软件、硬件故障或不符合规格的操作造成的。故障可以经由那些被配置为不正确值的其输出引脚从外部传播到主控制器。在适当的时间框架中需要正确的值,以用于外部系统的预计操作。US7359819公开了一种通过将从标准化的输出数据获得的值与基线输出数据进行比较并且检测两者之间变化来测试驱动器输出的方法。一种常规散列算法被用于计算散列值。
发明内容
正如随附权利要求中所描述的,本发明提供了一种故障检测装置和方法。
本发明的具体实施例在从属权利要求中被陈述。
根据下文中描述的实施例,本发明的这些或其它方面将会很明显并且被阐述。
附图说明
根据附图,仅仅通过举例的方式,本发明的进一步细节、方面和实施例将被描述。在附图中,相似的参考符号被用于表示相同或功能相似的元素。为了简便以及清晰,附图中的元素不一定按比例绘制。
图1示意性地显示了被布置用于监视中央处理单元的输入和输出的故障检测装置的一个实施例的一个例子;
图2是故障检测装置的一个实施例的简化方框图;
图3是说明了散列表的功能的示意图,以及
图4是用于检测在例如中央处理单元的设备内故障的第一方法的一个例子的简化流程图。
图5是用于检测故障的第二方法的一个例子的简化流程图,以及
图6是用于检测故障的第三方法的一个例子的简化流程图。
具体实施方式
由于本发明说明的实施例可能大部分是通过使用本领域所属技术人员所熟知的电子元素和电路被实施,为了对本发明基本概念的理解以及认识不混淆或偏离本发明所教之内容,细节不会在比上述所说明的认为有必要的程度大的任何程度上进行解释。
现在参照图1,包括监视器100的故障检测装置可以可操作地耦合于CPU 101,其中CPU 101被用于监视故障。CPU 101可能包括控制系统的一部分,并且经由多个输入线102和输出线103可以可操作地耦合于多个外围组件(未显示)。输入线102和输出线103中的一个或多个可以可操作地耦合于监视器100,以用于检查有效输入状态变化和CPU 101对其进行的反应,并且在特定时间段、间隔或限制内。“失效安全”模块104可以可操作地耦合于监视器100,并且可以被布置成,一旦监视器100检测到故障,就采取行动以阻止故障进一步传播或将CPU 101置于操作的失效安全操作模式。例如,监视器100可能在输出接口105上生成故障状况通知,并且失效安全模块104可能通过将CPU 101的输出引脚设置到安全状态而作出响应。在一个实施例中,失效安全模块的功能可以被包括在监视器100内。
在替代布置中,监视器100可以不必可操作地耦合于CPU。例如,CPU 101可能实现由集成设备支持的功能的子集,其中该集成设备替代地可以可操作地耦合于监视器100。例如,这样的集成设备可能支持若干不同类型的I/O(输入/输出)接口,例如ADC(模-数字转换器)、DAC(数-模转换器)、UART和以太网端口。在如同这些的例子中,监视器100可以被布置成监视一个或多个端口。监视器100随后可以可操作地耦合于需要监视的端口的那些引脚和寄存器,所以在这种情况下,监视器将从CPU监视解除耦合。因此,在一些情况下,CPU可以被监视,但是在其它情况下,可以经由中断或由监视器100生成的其它这样的信号,向CPU通知被监视的系统或集成设备的一部分内的误差状况。在其它情况下,在需要被监视的系统内可以存在自主模块化的块,并且可以经由中断仅仅向CPU通知误差状况。
现在参照图2,图2是图1的监视器100的简化示意方框图并且更详细地进行显示;监视器100可能包括定时器201。这样的定时器201可能被用于实现响应于在允许的时间段内CPU的特定输入状态的变化,来监视CPU 101输出的状态变化的反应时间。
监视器100还可能包括“散列索引键生成器”模块202,其可能对CPU输入102或输出103中任何所选择的一个或多个执行散列函数。所述散列索引键生成器模块202的输出(其操作将将在下面更详细地描述)可以可操作地耦合于散列表203。
散列表203可以是可编程的,以允许CPU 101的输入和输出状态被动态检验为有效或无效。
“提取表项”模块204可以可操作地耦合于散列表203并且被布置成提取散列表的特定条目(或“分栏”),其中它们与(由散列索引键生成器模块202提供的)散列索引键相关联并且被提供给“比较状态和完成动作”模块205。
“比较状态和完成动作”模块205可以被布置成将CPU 101的输出状态与从散列表203提取的预定义状态进行比较,并且还可以可操作地耦合于定时器201,并且还被布置成完成与提取表项相关联的特定动作,并且在以下描述的特定情况下在输出接口206上生成故障通知信号。
图2的监视器100可能提供自主硬件输入/输出反应系统,其监视可可选择的内部和外部CPU输入转换,并且随后确保响应于在配置的时间框架内的输入状态变化而发生有效的反应。在一个实施例中,反应的有效性是针对散列表203中的条目而检查的。散列表203可能提供了用于实时应用的检查输入有效性和响应于输入的反应的可调节和高效的方法。如果检测到在指定时间限制内输出的预期有效变化不会发生、或是到无效状态的输出变化,那么监视器100可能检测这一点,并且在输出接口206上生成故障通知信号。CPU输入例子可以是外部引脚上的信号、内部信号或注册配置。输出和反应的例子可以是状态变化、接口或寄存器或外部引脚上的信号。
由监视器100进行监视并且还可以被馈送给散列索引键生成器模块202的信号可能包括但不限于,例如,寄存器状态、配置寄存器、输入/输出信号、总线控制信号、硬件的内部信号、传送数据、接收数据、存储器内数据、地址和它们的任何组合。在具有被用于控制状态机器的寄存器的应用中,那么这些寄存器的输出以及相关联的输入/输出信号可能包括到监视器100和散列索引键生成器模块202的输入。
通常,用户或“芯片”设计者可能决定要监视哪个聚集的、通常解除耦合的功能;例如,通信接口,诸如数-模拟转换器或模-数字转换器或串行端口及其相关联寄存器,以检查配置和状态。所选择的字段(例如寄存器比特和输入/输出线)可以被聚集,以形成查找键。所选择的字段可能包括到散列索引键生成器202的24比特的输入数据,从而得到2*24个组合。通过使用直接索引查找表,硬件中的索引可能太多而不能被监视。查找键可以被散列到10比特,也就是说,作为典型的例子,使得1024个条目的查找散列表(其在硬件中更容易实现)可以被使用。这样的散列函数可以在散列索引键生成模块202内执行。散列索引键可以使用适当的常规算法来生成。例如,CRC 32散列函数可以被使用或基于安全的散列算法(SHA)可以作为替代被使用。散列索引键通常被用于从表中访问信息。例如,US6084877公开了一种方法,其使用散列函数来生成索引键,以访问表中的地址。
根据本发明的一个实施例,散列索引生成处理可能将来自散列函数的可编程比特数目用作到散列表203中的索引。每个散列索引键随后可以被用作用于访问散列表203中的索引条目(或分栏)的指针。在一个示例实施例中,四个分栏可以存在于每个散列索引处。在由于散列处理而导致多于一个散列索引键可能指向相同索引的情况下,可以要求每个索引多于一个分栏。
在一些情况下,CPU可以负责改变状态,从而作为CPU活动的结果,散列索引键可能变化。所以CPU可以直接(通过从CPU到监视器100的信号)或间接地被监视,例如通过其它块、寄存器、CPU控制的I/O线。
在一个示例实施例中,CPU可以负责改变状态,从而作为CPU活动的结果,散列索引键可能变化。监视器可以负责监视由CPU 101做出的状态和配置变化,并且如果散列索引键产生适当的匹配,那么可能仅仅允许所得的输出状态传播到系统输出103。
CPU可以直接(通过从CPU到监视器100的信号)或间接地被监视,例如通过其它块、寄存器、CPU控制的I/O线。当监视器可操作地耦合于系统中控制功能的自主元件、被监视的输入或输出的时候,CPU也可以被监视。
图3示意性地显示了散列表300和它的功能的一个例子。从CPU和/或I/O引脚和寄存器到监视器的输入302的散列结果并且包括散列索引键可以被用作到查找表条目的索引,即在表中查找将特定输入值与产生了索引的监视器相匹配的条目。到监视器的输入值可以因此被认为是“起始键”。在此例中,散列表中的索引303可能包括四个分栏304-307。在一个例子中,每个分栏可能包括到监视器的输入值(“起始键”)和相关联动作。相同的索引值(散列冲突)是可能的,以区分到监视器的输入值。因此每个索引可能需要多于一个分栏。通过这种方式,可以提供用于产生了相同索引的每个集合输入值的分离动作。
相关联动作的例子是启用308定时器,例如,当达到特定状态的时候。动作的另一个例子可以是当达到特定状态以验证及时完成了转换或其没有快速发生的时候,使用309定时器。在一个例子中,表可能包括用于启用和禁用定时器的条目。因此,例如,当所生成的散列索引键定位了将条目与定时器启用比特设置相匹配的分栏的时候,定时器可以被启用。
动作的另一个例子可以是禁用310输出、或在输出上配置故障安全值、或忽略中断例外请求。
对于表项与散列索引键的精确匹配,与起始键进行了比较。所以,如果在散列表中找到了将输入值302(起始键)的输入值与监视器精确匹配(在散列处理之前)的条目,那么相关联动作308、309、310可以被执行。
在操作的一个例子中,CPU可能处理动作。在另一个例子中,监视器可以被布置成处理动作。监视器还可以被布置成经由中断来向CPU通知事件。
监视器还可以被布置成,通过将在散列处理中生成的散列索引键从变化输入302改变到监视器,来检测已达到的特定状态(即,例如达到特别值的特定输入302)。因为散列索引键可以不断变化并且因此从表条目中继到表条目,因此该处理可以是非常动态的。
在另一个例子中,例如,如果针对被监视的引脚和寄存器的组合已经达到了严重的误差状况,那么所述动作可以是将被监视的CPU的输出或引脚和/或系统例如放入到失效安全模式。位于散列表中的适当分栏内的条目可能指示错误的严重性。
替代地,如果散列表中的匹配条目与期望状态有关,那么所述动作可能是什么都不做。
如果在表中发现对于生成的散列索引键没有匹配,那么“无匹配”动作可能进行。在一个实施例中,散列表中的每个索引303可能包括“无匹配动作”312。在这个例子中,则有可能有与输入值(原始键)相比较的4个条目和无匹配动作。在某些情况下,“无匹配动作”可以是用于监视器的一个全局条目。每个索引具有“无匹配动作”的优势是使得监视器更加灵活和可扩展。
全局控制和动作条目313还可以被提供,其可能包括依赖于已经被启用的定时器期满而执行的动作。
故障检测装置的示例性实施例可能利用输入和输出的动态散列,其可能耦合于定时器以提供安全和确定性的输入/输出监视器,而不增加CPU开销。如果在指定时间段内发生了状态变化,那么与定时器耦合的散列表可以被用于验证。非法散列索引可以被用于触发通过编程监视器而控制的确定性行为。
因此,该示例性实施例的故障检测装置可能提供故障早期确定性判定,并且可能,例如,被用于使用了微处理器微控制器单元、微处理器单元或ASIC的应用,以控制输入/输出通信端口或其它此类接口。
故障的早期检测可能有利地使得控制系统能够进入预定或失效安全状态,以防止损坏外围设备,并防止错误在外部系统中的进一步传播。
示例性实施例的故障检测装置还可能提供一种解决方案,以解决ISO 26262安全系统中的安全输入/输出管理,并是以降低的软件要求实现,从而使得安全认证更容易。另外,故障检测装置100可能在任何系统故障期间允许输入/输出遏制。
故障检测装置100的例子可能被包括在与CPU 101相同的封装内或者可能包括分立的设备或模块。
一种用于检测在例如CPU的设备内故障的示例方法将结合图4被描述,其中图4是简化流程图400。
在401,要被监视的一个或多个信号可以由故障监视器接收。
在402,可以为所接收信号的集合生成散列索引键。
在403,可以为了到所接收信号的值的匹配条目而搜索散列表。如果未找到匹配,那么可以在404生成故障通知信号。通过将其引脚设置在安全状态例子,该信号可以被用于将CPU置于在失效安全操作模式。
另一方面,如果找到匹配条目,那么在406读取与所找到条目相关联的动作。可选地,条目可能包括用以启用一个或多个定时器的指令。如果是这样,那么该方法可能通过执行将参照图5和6说明的后续步骤而继续(在406)。否则,相关联动作可能在407完成。
在一个实施例中,用于检测故障的方法可能包括,在指定时间间隔内检查有效状态变化或响应。例如,该功能可以由定时器模块201(见图2)提供。在一个例子中,定时器模块可能包括第一定时器(例如“晚期”定时器),其可以被用于确认在指定时间间隔期满之前发生的特别预期响应或状态变化。定时器模块可能包括第二定时器(例如“早期”定时器),其可以被用于确认到新状态的响应或变化没有发生的太快,而是在指定时间间隔期满之后发生。在另一个实施例中,定时器模块可能包括晚期定时器和早期定时器,并且晚期定时器和早期定时器的动作可以进行组合,也就是说,这两个定时器也可以同时使用,以便建立窗口,在该窗口中预期事件、响应或状态变化例如应该发生。
现在参照图5,在501,到监视器的输入可能变化,导致了新的起始键和新的对应散列索引键被生成。
在502,可以为了位于新散列索引的匹配起始键条目而搜索散列表。
如果未找到匹配,则在503,可以从散列表提取“无匹配”动作。该“无匹配”动作可以在504被读取,并且可能包括,例如,将被监视装置的输出以及寄存器设置到失效安全模式(在505),或者替代地在506生成故障通知信号并且处理被包括在散列表中的“无匹配”动作条目内的任何其它动作。
如果在502找到匹配条目,则可能在507进一步确定所找到的条目是否包含开启晚期定时器的动作。如果是这样,则在508,晚期定时器被开启并且(509)自主运行,从而检查每个增量的超时。还可以在510确定匹配的条目是否关闭了晚期定时器,并且在512可以处理与所找到的条目相关联的任何其它动作。
到监视器的输入可能会再次改变,导致了对晚期定时器启用之后的预期事件的匹配。在这样的情况下,所找到的条目随后可能包含用于禁用定时器(510)的动作。如果是这样,则在511,定时器可以被关闭,并且在512处理与所找到的条目相关联的任何其它动作。动作的一个例子可能是不用进一步做什么,因为匹配值与在晚期定时器期满之前可能已经达到的预期状态相关。对应地,晚期定时器将不会超时。
如果散列索引键改变一次或多次,由于到监视器的输入的新值,但与关闭晚期定时器的任何条目不匹配,则晚期定时器可能期满。在这种情况下,一个或多个定时器动作可以在513被提取,并且随后在505和506进行处理。这样的定时器动作可能包括,例如,将被监视设备的输出以及寄存器设置到失效安全模式,或生成故障通知信号,或生成中断。
如果散列索引键在启用晚期定时器之后没有改变,则晚期定时器可能期满。定时器动作随后可以是读取(513),并且随后在505和506进行处理。这样的定时器动作可能包括,例如,将被监视设备的输出以及寄存器设置到失效安全模式,或生成故障通知信号,或生成中断。
现在参照图6,在601,到监视器的输入可能会改变,导致新的起始键和新的对应散列索引键被生成。
在602,可以为了位于新的散列索引的匹配起始键条目而搜索散列表。如果未找到匹配,则在603,可以从散列表提取“无匹配”动作。该“无匹配”动作可以在604被读取,并且可能包括,例如,将被监视设备的输出以及寄存器设置到失效安全模式(在605),或者替代地,在606生成故障通知信号并且处理被包括在散列表中的“无匹配”动作条目内的任何其它动作。
如果在602找到匹配条目,则可能在607确定所找到的条目是否包含用于使用所启用的早期定时器的动作,并且在608确定所找到的条目是否包含用于启用早期定时器的动作。
如果在608确定所找到的条目包含用于启用早期定时器的动作,则在609,早期定时器被开启。早期定时器可能随后自主运行(610),以检查每个增量的超时。如果遇到超时,早期定时器将在611被关闭。与所找到的条目相关联的任何其它操作可以在612进行处理。
在找到匹配条目并且早期定时器没有被使用的情况下,匹配条目动作(612)可能是不用进一步做什么,因为匹配值与在早期定时器期满之后已经达到的预期状态有关。
如果起始键产生后续散列索引键,该后续散列索引键将用于使用早期定时器的动作与条目相匹配,则在612提取定时器动作。该定时器动作可能包括将被监视设备的输出以及寄存器被设置到失效安全模式(在605),或者例如(在606)生成故障通知信号。
在另一个实施例中,起始键可能产生与散列表中启用了早期定时器和晚期定时器二者的条目相匹配的散列索引键。在这种情况下,参照图5和6所描述的流程流可能同时运行,从而生成时间窗口,在该时间窗口中一定发生预期的新起始键。
本发明可以在计算机程序中被实现。该程序用于在计算机系统上运行,至少包括用于当在可编程的装置上,例如计算机系统或启动可编程的装置以执行根据本发明的设备或系统的功能,运行时,执行一种根据本发明的方法的代码部分。
例如,有形的计算机程序产品可以被提供有存储在其中的可执行代码以执行一种用于检测故障的方法,正如本发明所描述的。
计算机程序是一系列指令例如特定应用程序和/或操作系统。计算机程序可能例如包括一个或多个:子程序、函数、程序、对象方法、对象实现、可执行的应用程序、小程序、小服务程序、源代码、对象代码、共享库/动态装载库和/或设计用于在计算机系统上的执行的其它指令序列。
计算机程序可以在计算机可读存储介质上被内部地存储或通过计算机可读传输介质传输到计算机系统。或者一些计算机程序可以被永久地、可移除地提供在计算机可读介质或远程地耦合于信息处理系统。计算机可读介质可能包括,例如但不限于以下的任何数量:磁存储介质包括磁盘和磁带存储介质;光学存储介质例如光盘介质(例如,CD-ROM、CD-R等等)以及数字视盘存储介质;非易失性存储器存储介质包括半导体存储单元例如FLASH存储、EEPROM、EPROM、ROM;铁磁数字存储;MRAM;易失性存储介质包括寄存器、缓冲或缓存、主存储器、等等;以及数字传输介质包括计算机网络、点对点通信设备、以及载波传输介质,仅举几例。
计算机处理通常地包括执行(运行)程序或程序的部分,现有的程序值和状态信息,以及通过操作系统用于管理处理的执行的资源。操作系统(OS)是管理计算机的资源共享以及提供给程序员用于访问这些资源的界面的软件。操作系统处理系统数据和用户输入,以及通过配置和管理任务以及内部系统资源作为系统对用户和程序员的服务响应。
计算机系统可能,例如,包括至少一个处理单元、关联内存和大量的输入/输出(I/O)设备。当执行计算机程序时,计算机系统根据计算机程序处理信息并且通过I/O设备生生成成的输出信息。
在前面的说明中,参照本发明实施例的特定例子已经对本发明进行了描述。然而,很明显各种修改和变化可以在不脱离附属权利要求中所陈述的本发明的宽范围精神及范围的情况下被做出。
本发明所讨论的连接可以是任何类型的连接。该连接适于将信号从或传输到各自的节点、单元或设备,例如通过穿孔中间设备。因此,除非暗示或说明,连接,例如,可能是直接连接或间接连接。连接可以被说明或描述,涉及到是单一连接、多个连接、单向连接、或双向连接。然而,不同实施例可能改变连接的实现。例如,可以使用单独单向连接而不是双向连接,反之亦然。此外,多个连接可以被替换为连续地或以时间多路复用方式传输多个信号的单一连接。同样地,携带多个信号的单一连接可以被分离成各种不同的携带这些信号的子集的连接。因此,存在传输信号的很多选项。
本领域所属技术人员将认识到逻辑块之间的界限仅仅是说明性的并且替代实施例可能合并逻辑块或电路元素或在各种逻辑块或电路元素上强加替代的分解功能。因此,应了解本发明描述的架构仅仅是示范的,并且事实上实现相同功能的很多其它架构可以被实现。
为实现相同功能的任何元件的布置是有效地“关联”以便所需的功能得以实现。因此,为实现特定功能,本发明中结合在一起的任何两个元件可以被看作彼此“相关联”以便所需的功能得以实现,不论架构还是中间元件。同样地,如此关联的任何两个元件还可以被认为是彼此被“可操作连接”或“可操作耦合”以实现所需的功能。
此外,本领域所属技术人员将认识到上述描述的操作之间的界限只是说明性的。多个操作可以组合成单一的操作,单一的操作可以分布在附加操作中,并且操作可以至少在时间上部分重叠被执行。而且,替代实施例可能包括特定操作的多个实例,并且操作的顺序在各种其它实施例中会改变。
又如,在一个实施例中,说明的例子可以被作为位于单一集成电路上的电路或在相同设备内的电路被实现。而且,图2所示的监视器的整个功能可以在集成电路中实施。也就是说故障检测装置可以在集成电路中实施。这种集成电路可以是包含了一个或多个管芯的封装。或者,所述例子可以作为任何数量的单独集成电路或以一种合适的方式彼此相联接的单独设备被实现。例如,集成电路设备可能包括单独封装的一个或多个管芯,其中管芯上提供有电子元件以形成管芯并且通过适当的连接,例如封装引脚以及引脚和管芯之间的接合线而与封装之外的其它元件相连接。
又如,例子或其中的一部分可能作为物理电路的软或代码表征被实现,或作为能够转化成物理电路的逻辑表征,例如在任何合适类型的硬件描述语言中被实现。
此外,本发明不限定在非程序化硬件中被实现的物理设备或单元,但也可以应用在可编程设备或单元中。这些设备或单元通过操作能够执行所需的设备功能。该执行是根据合适的程序代码,例如,主机、微型计算机、服务器、工作站、个人电脑、笔记本、个人数字助理、电子游戏、汽车和其它嵌入式系统、手机和其它无线设备,在本申请中通常表示“计算机系统”。
然而,其它修改、变化和替代也是可能的。说明书和附图相应地被认为是从说明性的而不是严格意义上来讲的。
在权利要求中,置于在括号之间的任何参考符号不得被解释为限定权利要求。单词“包括”不排除其它元素或随后在权力要求中列出的那些步骤的存在。此外,本发明所用的“a”或“an”被定义为一个或多个。并且,在权利要求中所用词语如“至少一个”以及“一个或多个”不应该被解释以暗示通过不定冠词“a”或“an”引入的其它权利要求元素限定任何其它特定权利要求。所述特定权利要求包括这些所介绍的对发明的权利元素,所述权利元素不仅仅包括一个这样的元素。即使当同一权利要求中包括介绍性短语“一个或多个”或“至少一个”以及不定冠词,例如“a”或“an”。使用定冠词也是如此。除非另有说明,使用术语如“第一”以及“第二”是用于任意区分这些术语描述的元素的。因此,这些术语不一定表示时间或这些元素的其它优先次序。某些措施在相互不同的权利要求中被列举的事实并且不表示这些措施的组合不能被用于获取优势。

Claims (12)

1.一种用于检测设备内故障的方法,所述方法包括:从所述设备接收要被监视的第一信号,所述要被监视的第一信号具有值;为所述要被监视的第一信号生成第一散列索引键;使用所生成的第一散列索引键,为与所接收的第一信号的所述值相匹配的条目而搜索散列表;以及,如果未找到匹配条目,那么完成第一动作,并且,如果找到匹配条目,那么完成与所找到的匹配条目相关联的第二动作,其中所述第二动作包括:启用定时器;接收要被监视的第二信号,所述要被监视的第二信号具有值;为所述第二信号生成第二散列索引键;以及,使用所生成的第二散列索引键,为与所接收的第二信号的所述值相匹配的条目而搜索所述散列表。
2.根据权利要求1所述的方法,其中所述第一动作包括:生成故障通知信号。
3.根据权利要求1或2所述的方法,其中所述第一动作包括:将所述设备置于失效安全模式中。
4.根据权利要求1所述的方法,其中所述定时器设置一个或多个预定时间间隔,并且如果在由所述定时器设置的时间间隔内未找到匹配条目,那么完成第三动作。
5.根据权利要求4所述的方法,其中所述第三动作包括:生成故障通知信号。
6.根据权利要求4或5所述的方法,其中所述第三动作包括:将所述设备置于失效安全操作模式中。
7.根据权利要求4或5所述的方法,其中所述第三动作包括:生成中断。
8.一种用于检测设备内故障的故障检测装置,所述装置包括散列表,并且其中所述故障检测装置被布置成:从所述设备接收要被监视的信号,所述要被监视的信号具有值;为所述要被监视的信号生成散列索引键;使用所述生成的第一散列索引键,为与所接收的信号的所述值相匹配的条目而搜索所述散列表;以及,如果未找到匹配条目,那么完成第一动作,并且如果找到匹配条目,那么完成与所找到的匹配条目相关联的第二动作,其中所述第二动作包括:启用定时器;接收要被监视的第二信号,所述要被监视的第二信号具有值;为所述第二信号生成第二散列索引键;以及,使用所生成的第二散列索引键,为与所接收的第二信号的所述值相匹配的条目而搜索所述散列表。
9.根据权利要求8所述的故障检测装置,包括定时器,所述定时器被布置成,设置一个或多个预定时间间隔,在所述一个或多个预定时间间隔期间,为匹配条目而搜索所述散列表。
10.根据权利要求8或9所述的故障检测装置,其中所述故障检测装置在一个或多个集成电路设备内实现。
11.一种计算机可读介质,具有存储在其中的可执行代码,所述可执行代码用于被处理器执行,以执行根据权利要求1所述的方法。
12.根据权利要求11所述的计算机可读介质,其中所述计算机可读介质包括下述组中的至少一个,该组包括:硬盘、CD-ROM、光存储设备、磁存储设备、只读存储器、可编程只读存储器、可擦除可编程只读存储器、EPROM、电可擦除可编程只读存储器和闪存存储器。
CN201380078301.XA 2013-07-18 2013-07-18 故障检测装置及方法 Expired - Fee Related CN105393224B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2013/055921 WO2015008116A1 (en) 2013-07-18 2013-07-18 Fault detection apparatus and method

Publications (2)

Publication Number Publication Date
CN105393224A CN105393224A (zh) 2016-03-09
CN105393224B true CN105393224B (zh) 2018-10-19

Family

ID=52345785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380078301.XA Expired - Fee Related CN105393224B (zh) 2013-07-18 2013-07-18 故障检测装置及方法

Country Status (4)

Country Link
US (1) US9952922B2 (zh)
EP (1) EP3022653B1 (zh)
CN (1) CN105393224B (zh)
WO (1) WO2015008116A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10798000B2 (en) 2014-12-22 2020-10-06 Arista Networks, Inc. Method and apparatus of compressing network forwarding entry information
US9680749B2 (en) * 2015-02-27 2017-06-13 Arista Networks, Inc. System and method of using an exact match table and longest prefix match table as a combined longest prefix match
CN105069052B (zh) * 2015-07-24 2018-10-09 北京控制工程研究所 一种星载操作系统集成的故障快速自主处理方法
CN107544856B (zh) * 2016-06-23 2019-06-07 腾讯科技(深圳)有限公司 信息推送方法和装置
DE102018103152A1 (de) * 2018-02-13 2019-08-14 Infineon Technologies Ag Vorrichtung und verfahren zum überwachen einer digitalen steuereinheit hinsichtlich funktionaler sicherheit sowie steuergerät
US11144375B2 (en) * 2018-10-09 2021-10-12 Argo AI, LLC Execution sequence integrity parameter monitoring system
US11138085B2 (en) 2018-10-09 2021-10-05 Argo AI, LLC Execution sequence integrity monitoring system
CN112445642B (zh) * 2020-11-09 2023-05-16 浙江吉利控股集团有限公司 异常处理方法、远程泊车辅助系统及计算机存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529455A (zh) * 2003-09-29 2004-09-15 港湾网络有限公司 网络故障实时相关性分析方法及系统
CN102841828A (zh) * 2011-06-21 2012-12-26 西屋电气有限责任公司 逻辑电路中的故障检测和减轻

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134655A (en) * 1992-05-13 2000-10-17 Comverge Technologies, Inc. Method and apparatus for initializing a microprocessor to insure fault-free operation
EP0717358B1 (en) * 1994-12-15 2001-10-10 Hewlett-Packard Company, A Delaware Corporation Failure detection system for a mirrored memory dual controller disk storage system
US7346472B1 (en) * 2000-09-07 2008-03-18 Blue Spike, Inc. Method and device for monitoring and analyzing signals
US5796939A (en) * 1997-03-10 1998-08-18 Digital Equipment Corporation High frequency sampling of processor performance counters
US6084877A (en) 1997-12-18 2000-07-04 Advanced Micro Devices, Inc. Network switch port configured for generating an index key for a network switch routing table using a programmable hash function
JP2000187600A (ja) 1998-12-22 2000-07-04 Nec Corp ウオッチドッグタイマ方式
US6678837B1 (en) * 2000-06-30 2004-01-13 Intel Corporation Processor control flow monitoring using a signature table for soft error detection
JP4439711B2 (ja) 2000-10-19 2010-03-24 Necエレクトロニクス株式会社 データ処理装置およびシステム
GB2374954B (en) 2001-04-26 2005-03-02 Isis Innovation Profiling computer programs
DE102004036810A1 (de) 2004-07-29 2006-03-23 Zf Lenksysteme Gmbh Kommunikationsverfahren für wenigstens zwei Systemkomponenten eines Kraftfahrzeugs
US7649726B2 (en) 2004-08-16 2010-01-19 National Instruments Corporation Protection circuit for general-purpose digital I/O lines
US7225381B1 (en) * 2005-06-02 2007-05-29 Lehman Thomas F Error detection and correction method
JP4831599B2 (ja) * 2005-06-28 2011-12-07 ルネサスエレクトロニクス株式会社 処理装置
US7424666B2 (en) * 2005-09-26 2008-09-09 Intel Corporation Method and apparatus to detect/manage faults in a system
DE102006001872B4 (de) * 2006-01-13 2013-08-22 Infineon Technologies Ag Vorrichtung und Verfahren zum Überprüfen einer Fehlererkennungsfunktionalität einer Datenverarbeitungseinrichtung auf Angriffe
US7359819B2 (en) 2006-07-21 2008-04-15 Microsoft Corporation Evaluation of device driver output
US7428473B2 (en) * 2007-02-07 2008-09-23 Honeywell International Inc. Health monitoring in a system of circumvention and recovery
US8347154B2 (en) * 2010-09-21 2013-01-01 International Business Machines Corporation Use of hashing function to distinguish random and repeat errors in a memory system
US20120290882A1 (en) * 2011-05-10 2012-11-15 Corkum David L Signal processing during fault conditions
JP6050083B2 (ja) * 2012-10-18 2016-12-21 ルネサスエレクトロニクス株式会社 半導体装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529455A (zh) * 2003-09-29 2004-09-15 港湾网络有限公司 网络故障实时相关性分析方法及系统
CN102841828A (zh) * 2011-06-21 2012-12-26 西屋电气有限责任公司 逻辑电路中的故障检测和减轻

Also Published As

Publication number Publication date
EP3022653A1 (en) 2016-05-25
EP3022653A4 (en) 2017-03-08
US9952922B2 (en) 2018-04-24
US20160239362A1 (en) 2016-08-18
WO2015008116A1 (en) 2015-01-22
CN105393224A (zh) 2016-03-09
EP3022653B1 (en) 2020-12-02

Similar Documents

Publication Publication Date Title
CN105393224B (zh) 故障检测装置及方法
CN106775716B (zh) 一种基于度量机制的可信plc启动方法
JP7047969B2 (ja) 障害保護のための並列実行および関連プロセスの比較のためのシステムおよび方法
EP3198725B1 (en) Programmable ic with safety sub-system
CN103440196B (zh) 一种操作系统资源问题检测方法
JP2018511888A (ja) ハードウェア検証用のランタイムeccエラー注入方式
EP4031963B1 (en) Tracing status of a programmable device
US8935674B2 (en) Determining correctness conditions for use in static analysis
CN109923494A (zh) 可编程时钟监测器
JP2017076412A (ja) テスト、検証及びデバッグアーキテクチャのプログラム及び方法
CN109753391A (zh) 处理器的一个或多个结构的功能测试的系统、装置和方法
US9256399B2 (en) Breaking program execution on events
US10922150B2 (en) Deep hardware access and policy engine
US10331513B2 (en) Zero overhead code coverage analysis
CN107341085A (zh) 一种控制装置
WO2022142111A1 (zh) 随机数生成方法、装置、电子设备及存储介质
CN110781517B (zh) 一种bios与bmc沟通实现数据交互的方法
CN106294153A (zh) 检测多路服务器uefi bios版本一致的方法
US20200174875A1 (en) Secure forking of error telemetry data to independent processing units
CN105068937A (zh) 一种Linux内核模块的单元测试方法
CN107358124A (zh) 一种处理器
US20230281302A1 (en) Module and method for monitoring systems of a host device for security exploitations
KR102475879B1 (ko) Mdps mcu 코어 고장 감지 장치 및 방법
JP6047520B2 (ja) テスト、検証及びデバッグアーキテクチャのプログラム及び方法
US20140108856A1 (en) Real-Time Trigger Sequence Checker

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180226

Address after: Texas, USA

Applicant after: NXP USA, Inc.

Address before: Texas in the United States

Applicant before: FREESCALE SEMICONDUCTOR, Inc.

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181019