CN105988884B - 用于控制看门狗的方法和装置 - Google Patents

用于控制看门狗的方法和装置 Download PDF

Info

Publication number
CN105988884B
CN105988884B CN201510096144.6A CN201510096144A CN105988884B CN 105988884 B CN105988884 B CN 105988884B CN 201510096144 A CN201510096144 A CN 201510096144A CN 105988884 B CN105988884 B CN 105988884B
Authority
CN
China
Prior art keywords
watchdog
count
reset
controller
fault
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
Application number
CN201510096144.6A
Other languages
English (en)
Other versions
CN105988884A (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.)
Hyundai Motor Co
Original Assignee
Hyundai Motor Co
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 Hyundai Motor Co filed Critical Hyundai Motor Co
Publication of CN105988884A publication Critical patent/CN105988884A/zh
Application granted granted Critical
Publication of CN105988884B publication Critical patent/CN105988884B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • 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
    • 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/0736Error 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 in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error 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 in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems

Landscapes

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

Abstract

本发明公开了用于控制看门狗的方法和装置。控制控制器内的看门狗的方法包括当检测到故障时,由处理器将看门狗计数与预定看门狗警告水平比较以确定是否响应于控制器中的故障。此外,该方法包括当故障被响应时,在增加看门狗重置计数之后,通过处理器将关于与所检测的故障对应的程序组的信息和对应于程序组的看门狗重置计数存储在存储器内。此外,处理器被配置为当看门狗计数超过预定看门狗超时水平时,重置控制器。因此,本发明防止控制器内由相同的原因引起的重复重置的发生。

Description

用于控制看门狗的方法和装置
相关申请的交叉引用
本申请要求于2014年11月12日提交的韩国专利申请第 10-2014-0157074的权益,通过引用将其结合于此犹如在本文中完整阐述。
技术领域
本发明涉及用于控制看门狗的方法和装置,并且更具体地涉及控制看门狗以更安全地响应于重复的看门狗重置的方法和针对该方法的装置。
背景技术
微型计算机内的看门狗是指监测操作,用以检测是否由于系统故障而暂停操作或是否由于软件错误进入死循环。看门狗定时器是指执行特定操作(持续预设的时间段而没有出现系统响应时的系统重置操作)的装置。
诸如车辆控制器的嵌入系统需要恢复错误的能力。通常,当在嵌入系统中发生错误时,看门狗装置被配置为重启系统以将系统恢复至正常工作。例如,现有技术公开了使用各种看门狗定时器以响应于控制器的硬件或软件中的错误并且在存储器内存储重置信息以识别重置信息的技术。然而,控制看门狗的传统方案仅公开了基于看门狗定时器重启系统的程序,并且可以不能根本地解决系统中发生错误的原因。
发明内容
因此,本发明可以提供控制看门狗的更安全的方法和针对该方法的装置。当由于看门狗定时器的终止而需要系统重启时,本发明提供了能够更安全地防止重复重置的发生的看门狗控制方法和针对其该方法的装置,该方法通过在非易失性存储器中记录关于导致故障的程序组的信息和由程序组造成的重置数量;以及当由于看门狗定时器终止而需要重启系统时,在系统重启期间基于重置的数量从调度目标排除程序组来实现。此外,本发明提供用于防止由相同原因导致的重复重置的发生的看门狗控制方法和针对该方法的装置,该方法通过在非易失性存储器中记录用于识别导致故障的任务的任务识别信息,并且当由于看门狗定时器的终止而需要重启系统时,在系统重启期间加载对应于所记录的任务识别信息的替代程序来实现。
本发明的另外的优势、目的和特征将在以下描述中被部分地阐述并且一部分在以下的研究分析之后对于本领域技术人员来说将变得显而易见或可以从本发明的实践中了解到。可以通过在所写的说明书和其权利要求以及所附附图中具体指出的结构来实现和获取本发明的目标和其他优点。
根据本发明的示例性实施方式,在控制器内控制看门狗的方法可以包括:当检测到故障时,由处理器通过将看门狗计数与预定看门狗警告水平比较来确定是否响应于控制器内的故障;在故障被响应而增加看门狗重置计数之后,通过处理器将关于与所检测的故障相关的程序组的信息和对应于程序组的看门狗重置计数存储在存储器内;以及当看门狗计数超过(例如,大于)预定看门狗超时水平时,通过处理器重置控制器。
具体地,当看门狗重置计数达到预定最大重置计数时,可以从调度目标排除程序组。此外,当看门狗计数超过预定看门狗计数清零水平时,可以检测故障。该方法可以进一步包括:通过处理器识别程序组中的导致故障的任务;以及通过处理器将关于所识别的任务的信息存储在存储器内。当在通过重置而重启控制器之后,看门狗重置计数达到预定最大重置计数时,执行与所识别的任务对应的替代程序的替代任务可以包括在程序组中并且可以被调度。存储器可以是非易失性存储器。
可以在控制器内包括用于错误检测的多个看门狗通道。看门狗通道可以包括内部看门狗通道和外部看门狗通道。看门狗触发间隔和看门狗超时水平可以针对每个看门狗通道调整。外部看门狗通道可以包括数字输入/ 输出接口通道和串行外围接口通道中的至少一个。不同的故障响应方案可以针对每个看门狗通道来限定并且应用。
根据本发明的另一示例性实施方式,用于控制包括在控制器内的看门狗的装置可以包括看门狗设备,被配置为响应于所接收的触发信号初始化看门狗计数;微处理器(例如,处理器),被配置为通过执行看门狗任务将触发信号传输至看门狗设备、通过将看门狗计数与预定看门狗警告水平相比较确定是否响应于故障、以及响应于从看门狗设备接收的重置信号重启控制器;以及存储器,被配置为存储基于是否响应的确定而响应故障时通过微处理器记录的看门狗重置信息和当重启控制器时读取的所记录的看门狗重置信息。
具体地,看门狗重置信息可以包括选自由以下组成的组中的至少一个:关于与故障相关的程序组的信息、关于对应于程序组的看门狗重置计数的信息、以及关于程序组中导致故障的任务的信息。微处理器可以被配置为当看门狗重置计数达到预定最大重置计数时,从调度目标排除程序组。微处理器可以将替代任务包括在程序组内以当看门狗重置计数达到预定最大重置计数时调度替代任务,替代任务被配置为执行与导致故障的任务对应的替代程序。存储器可以是非易失性存储器。看门狗设备可以被配置为响应于所接收的触发信号初始化看门狗计数。
应当理解,本发明的以上概述和以下具体描述都是示例性的并且旨在提供对所要求保护的本发明的进一步说明。
附图说明
附图被包括用以提供对本发明的进一步了解并和并入和组成本申请的一部分,并且示出本发明的实施方式以及与说明书一起用来解释本发明的原理。在附图中:
图1是示出了根据本发明示例性实施方式的看门狗控制器的构造的示例性框图;
图2是示出了根据本发明示例性实施方式的响应于检测到故障的看门狗警告和重置计时的示例性曲线图;
图3是示出了根据本发明示例性实施方式的在看门狗控制器内控制看门狗的方法的示例性流程图;
图4是示出了根据本发明示例性实施方式的响应于重启来控制看门狗的方法的示例性流程图;
图5是示出了根据本发明示例性实施方式的响应于重启来控制看门狗的方法的示例性流程图;
图6是根据本发明示例性实施方式的示例性看门狗重置信息表;
图7是示出了根据本发明示例性实施方式的看门狗控制过程的示例性概念图;
图8是示出了根据本发明示例性实施方式的在重启期间看门狗控制过程的示例性概念图;
图9是示出了根据本发明示例性实施方式的看门狗控制器的层结构的示例性框图;并且
图10是示出了根据本发明示例性实施方式的在看门狗控制器中的看门狗控制计时的示例性示图。
具体实施方式
尽管示例性实施方式被描述为利用多个单元来执行示例性过程,但是应当理解,也可通过一个或者多个模块来执行该示例性过程。此外,应当理解的是,术语“控制器/控制单元”是指包括存储器和处理器的硬件设备。存储器被配置为存储模块,并且处理器被特定地配置为执行所述模块以执行下文进一步描述的一个或多个过程。
而且,关于包含由处理器、控制器/控制单元等执行的可执行程序指令的计算机可读介质,本发明的控制逻辑可实施为非暂存性计算机可读介质。计算机可读介质的实例包括但并不限于:ROM、RAM、光盘(CD) -ROM、磁带、软盘、闪存驱动器、智能卡和光学数据存储设备。计算机可读记录介质也可分布在网络耦接的计算机系统中,使得例如通过远程通信服务器(telematics server)或控制器局域网络(CAN)以分布式方式存储和执行该计算机可读介质。
本文中使用的术语仅是为了描述具体实施方式的目的,而并非旨在限制本发明。如本文所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文明确地说明并非如此。将进一步理解,当在本说明书中使用术语“包括”和/或“包含”时,是指所陈述的特征、整体、步骤、操作、元件和/或部件的存在,但并不排除一个或多个其他特征、整体、步骤、操作、元件、部件和/或其组的存在或添加。如本文所用的,术语“和 /或”包括一个或多个相关所列项的任意和所有组合。
除非明确规定或者从上下文显而易见,否则如本文中所使用的术语“大约”被理解为在本领域的正常公差范围内,例如,在平均值的2个标准差内。“大约”能够理解为在所陈述值的10%、9%、8%、7%、6%、5%、4%、3%、2%、1%、0.5%、0.1%、0.05%、或0.01%内。除非上下文另外明确说明,否则本文中提供的所有数值由术语“大约”修饰。
现将详细参考本发明的各种示例性实施方式,在附图中示出本发明的实施方式的实例。本文中的元件的后缀“模块”和“单元”是用来便于说明,并且因此能可互换地使用并且没有任何可区别的含义或功能。
应当理解,尽管可以在本文中使用术语“第一”、“第二”、“A”、“B”、“(a)”、“(b)”等来描述本发明的各种元件,但是这些术语仅用于将一个元件与另一个元件进行区分并且这些术语不限制相应元件的本质、顺序或序列。将理解,当一个元件称为被“连接至”、“耦接至”、或者“访问至”另一个元件时,虽然一个元件可以直接地连接至或者直接地访问另一个元件,但是一个元件可以通过另外的元件“连接至”、“耦接至”、或者“访问”另一个元件。
图1示出了根据本发明示例性实施方式的看门狗控制器的示例性构造。
参考图1,看门狗控制器100可以包括存储器10、微处理器20、以及看门狗设备30。存储器10可以被配置为存储看门狗重置信息。具体地,看门狗重置信息可以包括选自由以下组成的组中的至少一个:关于与故障相关的程序组的信息、关于对应于程序组的看门狗重置计数的信息、以及关于程序组中导致故障的任务的信息。存储器10可以是非易失性存储器 (例如,闪速只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM) 等)
微处理器20可以被配置为将用于清零(例如,初始化)看门狗计数的看门狗输入(WDI)信号定期地传输至看门狗设备30。在下文中,为了方便描述,WDI信号被称为触发信号。由微处理器20定期执行看门狗任务以产生触发信号,并且将所产生的触发信号传输至看门狗设备30,其将看门狗计数初始化为约0。因此,可以防止控制器由于看门狗超时而重置。
一旦接收到触发信号,看门狗设备30可以被配置为初始化看门狗计数。当未接收到触发信号并且因此看门狗计数超过看门狗超时水平时,看门狗输出(WDO)信号(例如,重置信号)可以被产生并且被传输至微处理器20。例如,当由微处理器20执行的任务进入死循环时,不可以执行看门狗任务,并且因此不可以产生触发信号。
微处理器20可以被配置为通过验证看门狗计数是否超过(例如,大于)预定看门狗计数清零水平来检测是否发生故障。此外,当在检测到故障之后看门狗计数达到预定看门狗警告水平时,微处理器20可以被配置为执行对检测到的故障做出响应的预定处理(在下文中,称为故障响应处理)。具体地,故障响应处理可以指的是将看门狗重置信息存储在存储器 10内的处理,其中该看门狗重置信息可以包括关于导致故障的程序组的信息、关于表示由程序组导致的重置数量的看门狗重置计数的信息、以及直接识别(标识,identify)相关程序中导致故障的任务的任务信息。具体地,每当基于程序组发生重置时,看门狗重置计数可以增加约1并且存储在存储器10中。
此外,当控制器基于看门狗设备30的重置信号重启时,微处理器20 可以被配置为从存储器10读取看门狗重置信息并且将看门狗重置计数与预定最大重置计数相比较。当看门狗重置计数达到(例如,等于)预定最大重置计数时,可以从调度目标中排除程序组。
如另一实例,当看门狗重置计数达到最大重置计数并且被确认时,微处理器20可以被配置为从程序组中移除导致重置的任务,并且将执行更安全程序的替代任务加入程序组以进行调度。从调度目标排除程序组的方案和用安全的任务替代导致故障的任务的方案可以基于安全性策略来预先定义并且使用。用于重新配置调度表的方案可以基于控制器的安全性策略来预先定义和设定。
如另一实例,可基于看门狗通道自适应性地选择并且执行调度表重新配置方案。具体地,看门狗通道可以包括内部看门狗通道,用于监测包含在微处理器20内的看门狗;和外部看门狗通道,用于监测在微处理器20 除外的外部元件内执行的看门狗。看门狗触发间隔和看门狗超时水平可以针对每个看门狗通道而设置为不同的值。例如,外部看门狗通道可以包括数字输入/输出接口通道、串行外围接口通道等。
图2示出了根据本发明示例性实施方式的响应于故障检测的示例性看门狗警告和重置计时。
如图2所示,当检测到触发信号时,看门狗计数可以随着时间持续地增加并且被初始化为约0。当看门狗计数不被初始化直至超过预定看门狗计数清零水平时,可以检测到故障。当在检测到故障之后看门狗计数持续地增加至达到预定看门狗计数警告水平时,看门狗控制器100可以被配置为启动故障响应处理。此后,当看门狗计数持续地增加至到达预定看门狗超时水平时,可以检测到重置信号并且可以执行控制器的重启处理。
图3示出了根据本发明示例性实施方式的在看门狗控制器中控制看门狗的示例性方法。
参考图3,当控制器运行了第一时间段时,看门狗控制器100可以被配置为将看门狗计数(WatchdogCnt)和看门狗重置计数(WatchdogRstCnt) 的每一个初始化为约0(S301),并且增加看门狗计数(例如,看门狗定时器值)(S303)。此后,看门狗控制器100可以被配置为验证看门狗计数 (WatchdogCnt)是否大于或等于看门狗计数清零水平S305)。
当看门狗计数(WatchdogCnt)被验证为大于或等于看门狗计数清零水平(ClearLevel)时,换言之,当从控制器检测到故障或毛病发生时,看门狗控制器100可以被配置为验证看门狗计数(WatchdogCnt)是否大于或等于看门狗警告水平(WarningLevel)(S311)。
当看门狗计数(WatchdogCnt)被验证为大于或等于看门狗警告水平(WarningLevel)时,看门狗控制器100可以被配置为将看门狗重置计数 (WatchdogRstCnt)增加约1(S313),并且在存储器中存储看门狗重置信息S315。当基于看门狗超时检测到重置信号时,看门狗控制器100可以被配置为将重启进程(procedure)重启(S317)。
图4示出了根据本发明示例性实施方式的响应于重启来控制看门狗的示例性方法。
当通过图3的重置信号完成重启时,看门狗控制器100可以被配置为读取存储在存储器10内的看门狗重置信息(S401)。此外,看门狗控制器 100可以被配置为验证看门狗重置计数是否大于或等于预定最大重置计数 (S403)。
当看门狗重置计数被验证为大于或等于预定最大重置计数时,看门狗控制器100可以被配置为通过从调度目标排除程序组来重新配置调度表(S405)。当看门狗重置计数小于预定最大重置计数时,看门狗控制器100 可以被配置为增加看门狗计数(例如,看门狗定时器值)。
图5示出了根据本发明示例性实施方式的响应于重启来控制看门狗的示例性方法。当通过图3的重置信号完成重启时,看门狗控制器100可以被配置为读取存储在存储器10内的看门狗重置信息(S501)。此外,看门狗控制器100可以被配置为验证看门狗重置计数是否大于或等于预定最大重置计数(S503)。
当看门狗重置计数被验证为大于或等于预定最大重置计数时,看门狗控制器100可以被配置为从程序组排除程序组中导致故障的任务并且通过将预先指定的替代任务加入程序组来重新配置调度表(S505)。当在S503 看门狗重置计数小于预定最大重置计数时,看门狗控制器100可以被配置为增加看门狗计数(例如,看门狗定时器值)。
图6示出了根据本发明示例性实施方式的示例性看门狗重置信息表。
参考图6,看门狗重置信息表600可以包括程序组字段601、任务字段603、看门狗重置计数字段605等。可以在程序组字段601中记录在控制器内执行的程序的组识别信息。可以在任务字段603中记录任务识别信息,该任务识别信息识别程序组中所包含的任务中导致故障的任务。
可以在看门狗重置计数字段605中记录由于程序组导致的重置总数。例如,图6示出了由组B的任务6导致故障和由组B导致的重置总量可以是约4。此外,剩下的组A和组C不导致重置。当通过组B导致的重置数量达到重置的最大数量时,看门狗控制器100可以被配置为以更安全的任务6*替换6。因此,在看门狗重置信息表600中记录的组B的任务字段603和看门狗重置计数字段605的值可以分别初始化为无和约0。
图7示出了根据本发明示例性实施方式的示例性看门狗控制过程。
参考图7,程序组A 710、程序组B 720和程序组C 703可以包括在控制器的初始调度表700中作为调度目标。当在控制器的执行期间检测到由包括在程序组B 720中的任务6721导致的故障时,看门狗控制器100 可以被配置为在重置之前更新存储在存储器10中的看门狗重置信息表 600。看门狗控制器100可以被配置为在对应于程序组B 720的任务字段中记录关于任务6的信息,并且将对应于程序组B 720的看门狗重置计数增加约1。
图8示出了根据本发明示例性实施方式的在重启期间的示例性看门狗控制过程。
参考图8,当通过重置信号重启控制器时,看门狗控制器100可以被配置为通过参考存储器10内的看门狗重置信息表600,来验证是否存在程序组以及程序组的看门狗重置计数是否达到预定最大重置计数。此后,看门狗控制器100可以被配置为基于验证的结果重新配置调度表。
例如,当对应于程序组B的看门狗重置计数被验证达到最大重置计数时,看门狗控制器100可以被配置为从调度表810删除关于程序组B的信息。
如另一实例,当对应于程序组B的看门狗重置计数被验证达到最大重置计数时,看门狗控制器100可以被配置为通过以预先指定的任务6* 替换程序组B的任务中导致故障的任务6而重新配置调度表(820)。
图9示出了根据本发明示例性实施方式的看门狗控制器100的示例性层结构。
参考图9,看门狗控制器100的层结构可以包括对应于最上层的服务层910、提供最上层和最下层之间的接口的驱动层920、以及对应于最下层的设备层930。服务层910可以被配置为通过针对每个看门狗通道设置特征和监测每个看门狗通道的看门狗计数的状态而执行故障响应进程。例如,服务层910可以被配置为通过定期地调度看门狗管理任务来验证看门狗计数是否达到看门狗警告水平,并且当看门狗计数被验证为超过(例如,大于)看门狗警告水平时,将看门狗重置信息存储在非易失性存储器10 内。
此外,服务层910可以被配置为通过参考存储在存储器10内的看门狗重置信息表600执行重新配置调度表的功能。另外,服务层910可以被配置为针对每个看门狗通道提供用于定义重新配置调度表的方案的用户接口环境。驱动层920可以被配置为定义看门狗通道并且将许多看门狗通道共同的接口环境提供给服务层910。例如,看门狗通道可以包括内部看门狗通道和外部看门狗通道。具体地,外部看门狗通道可以包括数字输入 /输出接口通道、串行外围接口通道等。驱动层920可以被配置为针对每个看门狗通道或看门狗设备执行触发信号。
驱动层920也可以被配置为通过以预定间隔执行看门狗任务而执行控制操作以将触发信号发送至设备层930。此外,驱动层920可以被配置为将表示触发信号被成功传输的预定通知信号传输至服务层910 。具体地,服务层910可以被配置为初始化内部看门狗计数。
设备层930可以被配置为当发生看门狗超时时,基于从驱动层920 接收的触发信号初始化看门狗计数、产生重置信号、并且将所产生的重置信号传输至上层,这是因为设备层930不接收触发信号。可以使用不同的中断源调度由服务层910执行的看门狗管理任务和由驱动层920执行的看门狗任务。例如,服务层910可以使用普通脉冲宽度调制计时中断来执行迅速的任务调度,并且驱动层920可以使用系统计时中断来执行任务调度。具体地,看门狗管理任务可以被设置为最高优先级来执行控制操作,以防止看门狗管理任务受另一总程序和另一中断影响。
图10示出了根据本发明示例性实施方式的在看门狗控制器100中的示例性看门狗控制计时。
参考图10,看门狗驱动器的看门狗任务可以在另一程序任务结束时执行,以响应于另一程序任务故障的发生。当将触发信号传输至看门狗设备时,看门狗任务可以被配置为将通知信号同时(例如,与此同时)传输至看门狗管理器。当检测到触发信号时,看门狗设备可以被配置为重置看门狗计数。此外,当接收到看门狗管理通知信号时,可以初始化内部看门狗计数。
当由于另一程序的故障产生死循环时,可以不执行看门狗任务。因此,触发信号和通知信号分别可以不传输至看门狗设备和看门狗管理器。看门狗管理器可以被配置为当看门狗计数持续地达到看门狗警告水平时,执行故障响应程序。此外,看门狗驱动器可以被配置为响应于看门狗超时产生重置信号,并且将所产生的重置信号传输至看门狗管理器。此外,看门狗管理器可以被配置为基于所接收的重置信号执行控制器的重启程序。
下文描述根据本发明的方法和装置的效果。
首先,本发明可以提供控制看门狗的更安全的方法和针对该方法的装置。
第二,本发明可以能够更安全地防止重复重置的发生的看门狗控制方法和针对该方法的装置,该方法通过在非易失性存储器中记录关于导致故障的程序组的信息和程序组导致的重置数量、,并且当由于看门狗定时器的超时需要系统重启时,在系统重启期间基于重置的数量从调度目标排除程序组来实现。
第三,本发明可以提供能够防止由类似原因导致的重复重置的发生的看门狗控制方法和针对该方法的装置,该方法通过在非易失性存储器中记录用于识别导致故障的任务的任务识别信息,并且在由于看门狗定时器的超时需要系统重启时,于系统重启期间通过加载对应于所记录的任务识别信息的替代程序来实现。
可以从本发明获得的效果不限于上述效果,并且本领域中的技术人员可以从以上描述清晰地理解未提及的其他效果。本领域中的技术人员将理解,在不偏离本发明的精神和本质特征的情况下,可以以不同于本文中阐述的其他具体方法实现本发明的示例性实施方式。
因此,示例性实施方式在所有方面被解释为说明性的而非限制性的。本发明的范围应当通过所附权利要求和其合法等同物确定,而不是以上描述,并且属于所附权利要求的含义和等同范围内的所有变化旨在落在其中。

Claims (16)

1.一种用于控制控制器中的看门狗的方法,包括:
当检测到故障时由处理器将看门狗计数与预定看门狗警告水平比较以确定是否响应于所述控制器中的故障;
当在检测到所述故障后所述看门狗计数达到所述预定看门狗警告水平而对所述故障做出响应时,所述处理器在增加看门狗重置计数之后,将关于与所检测的故障有关的程序组的信息和对应于所述程序组的所述看门狗重置计数记录在存储器内;以及
当所述看门狗计数超过预定看门狗超时水平时,通过所述处理器重置所述控制器,所述预定看门狗超时水平大于所述预定看门狗警告水平,
当重置所述控制器时,在所述看门狗重置计数达到预定最大重置计数时,通过所述处理器从调度目标排除所述程序组。
2.根据权利要求1所述的方法,进一步包括:
当所述看门狗计数超过预定看门狗计数清零水平时,所述处理器检测所述故障。
3.根据权利要求1所述的方法,进一步包括:
通过所述处理器识别在所述程序组中导致所述故障的任务;以及
通过所述处理器将关于识别的任务的信息存储在所述存储器内。
4.根据权利要求3所述的方法,进一步包括:
通过所述处理器将替代任务包括在所述程序组中,所述替代任务执行与所识别的任务对应的替代程序;以及
当在通过重置重启所述控制器之后所述看门狗重置计数达到预定最大重置计数时,通过所述处理器调度所述替代任务。
5.根据权利要求1所述的方法,其中,所述存储器是非易失性存储器。
6.根据权利要求1所述的方法,其中,所述控制器包括检测错误的多个看门狗通道。
7.根据权利要求6所述的方法,其中,所述多个看门狗通道包括内部看门狗通道和外部看门狗通道。
8.根据权利要求6所述的方法,其中,针对每个看门狗通道调整看门狗触发间隔和所述看门狗超时水平。
9.根据权利要求7所述的方法,其中,所述外部看门狗通道包括数字输入/输出接口通道和串行外围接口通道中的至少一个。
10.根据权利要求6所述的方法,进一步包括:
通过所述处理器针对所述多个看门狗通道限定不同的故障响应方案;以及
通过所述处理器针对所述多个看门狗通道应用不同的故障响应方案。
11.一种用于控制包括在控制器中的看门狗的装置,包括:
看门狗设备,被配置为响应于所接收的触发信号初始化看门狗计数;
微处理器,被配置为:
通过执行看门狗任务将所述触发信号传输至所述看门狗设备;
通过将所述看门狗计数与预定看门狗警告水平比较来确定是否响应于故障;
当所述看门狗计数超过预定看门狗超时水平时,响应于从所述看门狗设备接收的重置信号重启所述控制器,所述预定看门狗超时水平大于所述预定看门狗警告水平;
当重启所述控制器时,当所述看门狗重置计数达到预定最大重置计数时,从调度目标排除与所述故障相关的程序组,以及
存储器,被配置为存储重启所述控制器时读取的看门狗重置信息,当在检测到所述故障后所述看门狗计数达到所述预定看门狗警告水平而确定对所述故障做出响应时,通过所述微处理器将所述看门狗重置信息记录在所述存储器中。
12.根据权利要求11所述的装置,其中,所述看门狗重置信息包括选自由以下组成的组的至少一个:关于与所述故障相关的程序组的信息、关于与所述程序组对应的看门狗重置计数的信息、以及关于所述程序组中导致所述故障的任务的信息。
13.根据权利要求12所述的装置,其中,所述微处理器进一步被配置为:
执行替代程序,所述替代程序与所述程序组中导致所述故障的所述任务对应;以及
当所述看门狗重置计数达到所述预定最大重置计数时,调度所述替代程序。
14.根据权利要求11所述的装置,其中,所述存储器是非易失性存储器。
15.根据权利要求11所述的装置,其中,所述看门狗设备被配置为响应于所接收的触发信号初始化所述看门狗计数。
16.一种非临时计算机可读介质,包含有程序,当所述程序被处理器执行时,用于执行根据权利要求1至10中任一项所述的方法。
CN201510096144.6A 2014-11-12 2015-03-04 用于控制看门狗的方法和装置 Active CN105988884B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2014-0157074 2014-11-12
KR1020140157074A KR101673303B1 (ko) 2014-11-12 2014-11-12 와치독 제어 방법 및 장치

Publications (2)

Publication Number Publication Date
CN105988884A CN105988884A (zh) 2016-10-05
CN105988884B true CN105988884B (zh) 2020-08-21

Family

ID=55803037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510096144.6A Active CN105988884B (zh) 2014-11-12 2015-03-04 用于控制看门狗的方法和装置

Country Status (4)

Country Link
US (1) US9632855B2 (zh)
KR (1) KR101673303B1 (zh)
CN (1) CN105988884B (zh)
DE (1) DE102015201443A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201413836D0 (en) * 2014-08-05 2014-09-17 Arm Ip Ltd Device security apparatus and methods
GB2540965B (en) 2015-07-31 2019-01-30 Arm Ip Ltd Secure configuration data storage
GB2540961B (en) 2015-07-31 2019-09-18 Arm Ip Ltd Controlling configuration data storage
KR102355424B1 (ko) * 2017-09-13 2022-01-26 현대자동차주식회사 차량용 중앙 처리 장치를 제어하는 워치독 회로의 신뢰성을 향상시키는 장치 및 방법
KR102258171B1 (ko) * 2017-12-15 2021-05-28 주식회사 엘지에너지솔루션 워치독 타이머를 진단하기 위한 장치 및 방법
US10990319B2 (en) * 2018-06-18 2021-04-27 Micron Technology, Inc. Adaptive watchdog in a memory device
CN109086154B (zh) * 2018-07-26 2022-02-18 郑州云海信息技术有限公司 一种用于检测bios看门狗功能倒计时装置及方法
CN109471749A (zh) * 2018-11-06 2019-03-15 北京四方继保自动化股份有限公司 复位计数断电重启电路
KR20200101682A (ko) 2019-02-20 2020-08-28 삼성전자주식회사 전자 장치 및 그 제어 방법
CN111124849A (zh) * 2019-11-08 2020-05-08 苏州浪潮智能科技有限公司 一种服务器故障告警的方法、设备及介质
KR102219432B1 (ko) * 2019-12-12 2021-02-26 현대모비스 주식회사 와치독 장치 및 그 제어 방법
CN113626229B (zh) * 2021-06-23 2023-07-21 浙江零跑科技股份有限公司 一种基于sbc的电机控制芯片唤醒方法
CN113806130B (zh) * 2021-09-22 2023-08-08 广州通则康威智能科技有限公司 看门狗周期自适应方法、装置、计算机设备及存储介质
CN113946148B (zh) * 2021-09-29 2023-11-10 浙江零跑科技股份有限公司 一种基于多ecu协同控制的mcu芯片唤醒系统
KR20230086440A (ko) * 2021-12-08 2023-06-15 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
KR20230089448A (ko) * 2021-12-13 2023-06-20 현대자동차주식회사 차량용 임베디드 제어기의 리셋 원인 결정 방법 및 그 방법이 적용된 차량용 임베디드 제어기
CN114924859B (zh) * 2022-05-30 2024-05-17 苏州浪潮智能科技有限公司 一种无看门狗中断的程序数据保留方法、装置及存储介质
KR102634650B1 (ko) * 2023-07-11 2024-02-13 인터콘시스템스 주식회사 엠씨유 리셋 횟수 제한 설정 회로
CN117130832B (zh) * 2023-10-25 2024-02-23 南京芯驰半导体科技有限公司 多核异构系统的监控复位方法、系统、芯片及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030049442A (ko) * 2001-12-15 2003-06-25 주식회사 하이닉스반도체 리셋 회로
KR20040085974A (ko) * 2003-04-02 2004-10-08 엘지전자 주식회사 소프트웨어 워치도그를 이용한 시스템 관리방법
CN101957790A (zh) * 2009-11-26 2011-01-26 上海大学 微控制器多源看门狗的实现方法
KR101449274B1 (ko) * 2013-04-23 2014-10-08 현대오트론 주식회사 유효 채널을 이용하는 와치독 및 그 동작방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100311366B1 (ko) 1994-11-28 2002-02-19 구자홍 워치독타이머기능을갖는콘트롤러
KR100978713B1 (ko) 2003-07-09 2010-08-30 엘지에릭슨 주식회사 시스템 리셋 원인 판별 장치 및 방법
JP4784311B2 (ja) 2006-01-11 2011-10-05 株式会社アドヴィックス 車両用電子制御システム
JP2008059649A (ja) 2006-08-30 2008-03-13 Teac Corp データ記録装置
JP2008225807A (ja) 2007-03-13 2008-09-25 Yaskawa Electric Corp 制御装置およびそのプログラム暴走監視方法
JP5176405B2 (ja) 2007-06-20 2013-04-03 株式会社明電舎 コンピュータの異常検出・復旧方式
KR100953510B1 (ko) 2007-11-21 2010-04-21 주식회사 다산네트웍스 재기동 정보 관리 기능을 구비한 장치
US20090204856A1 (en) * 2008-02-08 2009-08-13 Sinclair Colin A Self-service terminal
WO2012053110A1 (ja) * 2010-10-22 2012-04-26 富士通株式会社 障害監視装置、障害監視方法及びプログラム
US9032258B2 (en) * 2012-09-14 2015-05-12 Infineon Technologies Ag Safety system challenge-and-response using modified watchdog timer

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030049442A (ko) * 2001-12-15 2003-06-25 주식회사 하이닉스반도체 리셋 회로
KR20040085974A (ko) * 2003-04-02 2004-10-08 엘지전자 주식회사 소프트웨어 워치도그를 이용한 시스템 관리방법
CN101957790A (zh) * 2009-11-26 2011-01-26 上海大学 微控制器多源看门狗的实现方法
KR101449274B1 (ko) * 2013-04-23 2014-10-08 현대오트론 주식회사 유효 채널을 이용하는 와치독 및 그 동작방법

Also Published As

Publication number Publication date
CN105988884A (zh) 2016-10-05
US9632855B2 (en) 2017-04-25
KR101673303B1 (ko) 2016-11-22
KR20160056596A (ko) 2016-05-20
DE102015201443A1 (de) 2016-05-12
US20160132378A1 (en) 2016-05-12

Similar Documents

Publication Publication Date Title
CN105988884B (zh) 用于控制看门狗的方法和装置
US11048581B2 (en) Storage device telemetry for provisioning I/O
US9292205B2 (en) Methods and systems for adaptive queue depth management
EP3352078A1 (en) Task operation retry method and device
EP3208715A2 (en) Method and apparatus for performing data scrubbing management in storage system
US9910593B2 (en) Configurable storage device and adaptive storage device array
US10452315B2 (en) Block priority information
US20140032978A1 (en) Server and method of monitoring baseboard management controller
US8583959B2 (en) System and method for recovering data of complementary metal-oxide semiconductor
WO2014027276A1 (en) Handling intermittent recurring errors in network
US20160357623A1 (en) Abnormality detection method and information processing apparatus
KR20170136449A (ko) 저장 디바이스에서의 성능 변화를 제한하기 위한 기술
US9940211B2 (en) Resource system management
US20140289437A1 (en) Expander interrupt processing
US10642693B2 (en) System and method for switching firmware
CN102915260B (zh) 固态硬盘容错的方法及其固态硬盘
US20130047009A1 (en) Computing device, storage medium and method for testing stability of server
US20110276843A1 (en) Intelligent error-reporting apparatus and method
JP2010009296A (ja) ソフトウェア動作監視装置およびソフトウェア動作監視方法
JP6502211B2 (ja) 車両制御装置
CN109102839B (zh) 一种坏块标记方法、装置、设备及可读存储介质
US9696986B2 (en) Managing a code load
CN111142786B (zh) 一种数据写入方法、装置及计算机可读存储介质
US20140340974A1 (en) Apparatus and method for writing data into storage of electronic device
US10282114B1 (en) System and computer-implemented method for balancing loads across data storage pools

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant