CN108427609A - 控制器和控制程序更新方法 - Google Patents

控制器和控制程序更新方法 Download PDF

Info

Publication number
CN108427609A
CN108427609A CN201810087763.2A CN201810087763A CN108427609A CN 108427609 A CN108427609 A CN 108427609A CN 201810087763 A CN201810087763 A CN 201810087763A CN 108427609 A CN108427609 A CN 108427609A
Authority
CN
China
Prior art keywords
monitoring
main processor
processor unit
program
unit
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.)
Granted
Application number
CN201810087763.2A
Other languages
English (en)
Other versions
CN108427609B (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.)
Denso Ten Ltd
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Publication of CN108427609A publication Critical patent/CN108427609A/zh
Application granted granted Critical
Publication of CN108427609B publication Critical patent/CN108427609B/zh
Active 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/0796Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0208Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0297Reconfiguration of monitoring system, e.g. use of virtual sensors; change monitoring method as a response to monitoring results
    • 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
    • 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/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24015Monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25064Update component configuration to optimize program execution
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2637Vehicle, car, auto, wheelchair

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Mechanical Engineering (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

根据实施例的控制器包括主处理单元和监视单元。主处理单元执行控制程序。监视单元通过第一监视方法来监视所述主处理单元,所述第一监视方法用于向所述主处理单元发送与问题相对应的发送内容,并且用于评估来自所述主处理单元的对所述问题的回答。所述主处理单元在接收到对所述控制程序的更新请求时使所述监视单元执行从所述第一监视方法到第二监视方法的切换,所述第二监视方法用于监视所述主处理单元的看门狗信号。

Description

控制器和控制程序更新方法
技术领域
本文讨论的实施例涉及控制器和控制程序更新方法。
背景技术
传统地,已知设置在车辆中以便对车辆的诸如发动机、变速器和汽车导航设备的各种系统进行电子控制的电子控制单元(ECU)。这些控制器中的每一个中,内置微型控制器(以下可以称为“微型计算机”) 执行控制程序,以实现所指派的各种功能。
在该控制器中,例如,电源集成电路(电源IC)用作监视微型计算机是否正常工作的监视单元。作为微型计算机监视系统,例如传统上已知有看门狗计数器(以下,可以称为“WDC”)监视系统,用于监视例如从微型计算机输出的WDC信号的脉冲之间的间隔。
作为另一微型计算机监视系统,还提出了使用串行通信的Q&A系统(例如参考日本待审专利公开No.2015-108944)。在Q&A系统中,监视器IC周期性地向微计算机发送与“问题”相对应的随机数据和算术运算指令等。微型计算机对由特定算术运算指令引起的随机数据进行算术运算,并向监视器IC发送算术运算结果作为“回答”。
例如,当微型计算机的回答没有在规定的通信时间返回时或者当被评估为不是预期回答时,监视器IC确定微型计算机中发生操作异常,并通过使用电源控制来硬复位微型计算机。
在某些情况下,存在这样的情况,其中当添加了功能时或者当在事后发现异常时,控制器的这种控制程序将被更新(重新编程)。当在微型计算机中进行这种更新时,暂时停止控制程序以进行更新,并启动更新程序,以重新写入控制程序。
然而,上述传统技术在防止更新控制程序的过程中由监视单元执行的错误复位方面还有改进的空间。
具体地,在更新控制程序时,如上所述,微型计算机暂时停止控制程序并执行用于启动代替控制程序的更新程序的程序切换,优选的是,由监视单元执行的微型计算机监视将被继续,使得即使在程序切换期间也能够检测到例如挂起等的不正确状态。
在这一点上,更新程序能够代替控制程序回答监视单元,以继续微型计算机监视,但是,例如在程序切换期间,微型计算机侧的处理负荷增加,并且因此容易在监视单元和微型计算机等之间的通信定时中引起干扰。
当采用上述的Q&A系统时,由于问题和回答之间的通信时间被精细地定义,并且还采用了具有较低速度的串行通信,所以通信定时更容易受到干扰。因此,存在通信定时的这种干扰会导致监视单元错误地复位微型计算机的担心。
本实施例的一方面是鉴于上述情况而做出的,其目的是提供能够防止更新控制程序时由监视单元执行错误复位的控制器和控制程序更新方法。
发明内容
根据实施例的一个方面的控制器包括主处理单元和监视单元。主处理单元执行控制程序。监视单元通过第一监视方法来监视所述主处理单元,所述第一监视方法用于向所述主处理单元发送与问题相对应的发送内容,并且用于评估来自所述主处理单元的对所述问题的答案。所述主处理单元在接收到对所述控制程序的更新请求时使所述监视单元执行从所述第一监视方法到第二监视方法的切换,所述第二监视方法用于监视所述主处理单元的看门狗信号。
根据实施例的一个方面,可以防止在更新控制程序时监视单元执行错误的复位。
附图说明
由于通过在结合附图考虑时参考以下具体实施方式使得本发明及其很多随附优点变得更好理解,因此可以获得对本发明以及很多随附优点的更完整的理解,在附图中:
图1A是示出了车载系统的概要的图;
图1B是示出了重新编程的概要的图;
图1C是示出了问答(Q&A)系统的概要的图;
图1D是示出了看门狗计数器(WDC)监视系统的概要的图;
图1E是示出了根据实施例的控制程序更新方法的概要的图;
图2是示出了根据实施例的电子控制单元(ECU)的框图;
图3A是示出了程序切换时的监视系统切换时序的图。
图3B是示出了根据实施例的控制程序更新方法的处理时序的图;
图3C是示出了图3中所示的时间点t2和t3之间的更具体的处理序列的图;以及
图4是示出了由根据实施例的ECU的微型计算机执行的处理的过程的流程图。
具体实施方式
在下文中,将参考附图详细描述本申请中公开的控制器和控制程序更新方法的示例性实施例。此外,不意图将本公开限于下面描述的实施例。
在下文中,将参考图1A至图1E来说明根据本实施例的控制程序更 新方法的概要,接下来,将参考图2至图4来说明要应用根据本实施例 的控制程序更新方法的电子控制单元(ECU)10(对应于“控制器”的 一个示例)。
首先,参考图1A至1E说明根据本实施例的控制程序更新方法的概要。图1A是示出了车载系统1的概要的图。图邝是示出了重新编程的概要的图。图1C是示出了问答(Q&A)系统的概要的图。图1D是示出了看门狗计数器(WDC)监视系统的概要的图。图1E是示出根据本实施例的控制程序更新方法的概要的图。
如图1A所示,车辆C包括车载系统1。车载系统1包括ECU 10-1至 10-n。ECU 10-1至10-n通过诸如控制器区域网络(CAN)之类的网络N 以可通信的方式彼此连接,以通过执行控制程序对各个控制目标20-1 至20-n进行电子控制。控制目标20-1至20-n包括各种系统,例如发动机、变速器和汽车导航设备。
存在以下情况:当要添加功能时或者当事后发现异常时,由各个 ECU 10执行的控制程序要被更新。在这种情况下,如图邝所示,通过 CAN等将更新终端50连接到要更新的ECU 10,并且在其上执行重新编程。
重新编程时,首先接通ECU 10的电源以启动控制程序,并且ECU 1 0变为由该控制程序执行正常处理的状态(步骤S1)。
在该状态下,当通过命令输入等从更新终端50发送了更新请求时 (步骤S2),在接收到该更新请求的ECU 10中,执行程序切换以启动更新程序代替控制程序(步骤S3)。当更新程序启动时,ECU 10通过使用更新程序来执行程序更新处理(步骤S4)。
同时,ECU 10包括监视单元,该监视单元监视微型计算机11是否正常操作,并且当检测到操作异常时,例如通过电源的关/开来对微型计算机11进行硬复位。
如图1C所示,监视单元例如包括电源集成电路(电源IC)12。已知有使用串行通信的问答(Q&A)系统作为微型计算机监视系统。作为另一个微型计算机监视系统,还已知有WDC监视系统,用于监视从微型计算机11输出的WDC信号的脉冲之间的间隔。
如图1C所示,在Q&A系统中,例如,从电源IC 12向微型计算机 11发送与问题相对应的随机数据和算术运算指令。
微型计算机11通过附加发送的算术运算指令所导致的问题中包括的随机数据进行运算,并将算术运算结果作为回答发送给电源IC 1 2。这种交换是周期性重复的。
当微型计算机11的回答并未在已定义的通信定时处返回(参见图 1C所示的“通信异常”)或者该回答不是预期回答时(参见图1C所示的“算术运算结果≠预期值”),电源IC12确定在微型计算机11中发生操作异常,从而例如对微型计算机11进行硬复位。
如图1D所示,在WDC监视系统中,电源IC 12监视从微型计算机11 周期性输出的WDC信号的脉冲之间的间隔。电源IC 12包括看门狗定时器(未示出:以下可以称为“WDT”),当如图1D所示使用该WDT确定“超时”时,电源IC 12确定在微型计算机11中发生操作异常,从而例如对微型计算机11进行硬复位。
可以说,Q&A系统比WDC监视系统执行更具体的监视,因为Q&A 系统执行的评估还包括对回答内容的评估,例如回答是否是预期回答。根据本实施例的ECU 10在通过控制程序执行正常处理期间采用Q&A系统。
同时,优选的是,即使在包括有程序切换的重新编程期间,电源 IC 12也继续监视微型计算机以能够检测诸如挂起之类的错误状态。注意,由于在程序切换期间微型计算机11侧的处理负荷增加,所以在电源IC 12和微型计算机11等之间的通信定时中容易引起干扰。
此外,在Q&A系统中,问题与回答之间的通信序列(包括定时等) 被精细地定义。此外,采用了具有相对较低速度的串行通信,因此假设在程序切换期间通信定时更容易受到干扰。当通信定时受到干扰时,例如存在如下担心:在程序切换期间,微型计算机11被电源IC 12错误地硬复位。
因此,如图1E、所示,在根据本实施例的控制程序更新方法中,微型计算机监视系统在软复位之前在程序切换时要从Q&A系统切换到WD C监视系统(步骤S21)。软复位是在设备电源被保持的状态下的重启方法。
具体地,在程序切换中,如图1E所示,执行更新请求接收(步骤 S31),然后作为ECU10的主处理单元的微型计算机11被软复位(步骤 S32)。软复位和重新引导的微型计算机11执行更新程序的启动确定(步骤S33)。
根据本实施例的控制程序更新方法在步骤S31的更新请求接收之后且在步骤S32的软复位之前执行上述步骤S21的处理。
换句话说,控制程序更新方法将微型计算机11在软复位之前(而不是在软复位之后,此时趋向于负担较重的处理负载并且认为容易发生通信定时中的干扰)将微型计算机监视系统切换到比Q&A系统更宽松地定义并且其通信时序简单且不太可能受到干扰的WDC监视系统。
因此,如图1E所示,可以降低在程序切换期间电源IC 12确定操作异常的风险,并且防止在程序切换期间由电源IC 12执行的硬复位。
在根据本实施例的控制程序更新方法中,在将微型计算机监视系统切换到WDC监视系统以启动WDC监视之后且在软复位(未示出)之前,WDC信号被脉冲输出至少一次。
因此,可以防止在软复位期间(换句话说,在程序切换中的微型计算机11的重新引导期间)由于WDC信号的输出延迟而导致由电源IC 1 2执行硬复位。将参考图3C在下文进行提及这一点。
以下,更具体地说明应用了上述控制程序更新方法的ECU 10。
图2是示出根据本实施例的ECU 10的框图。在图2中,通过使用功能块仅示出了用于说明根据本实施例的特性的配置元素,并且适当地省略了对配置元素的描述。
换句话说,附图中所示的相应装置的每个组件在功能上是概念性的,因此并不总是如图所示进行物理配置。即,每个装置的具体分离或集成模式不限于附图中所示的模式。也就是说,全部或部分组件可以通过根据各种类型的负载、使用状态等在功能上或物理上将它们分离或集成在任何单元中来配置。
如图2所示,ECU 10包括微型计算机11和电源IC 12。首先,将解释电源IC 12。电源IC 12通过在正常处理中使用Q&A系统且在重新编程中使用WDC监视系统,响应于从微型计算机11发送的监视系统切换请求来监视微型计算机11。作为监视的结果,当微型计算机11处于操作异常状态时,电源IC 12根据需要对微型计算机11进行硬复位。
微型计算机11包括控制单元111和存储器112。控制单元111包括程序执行单元111a、更新请求接收单元111b、监视系统切换请求单元 111c、软复位处理单元111d和启动确定单元111e。
存储器112存储更新请求信息112a、软复位历史112b、控制程序 112c和更新程序112d。例如,更新请求信息112a被存储在存储器112 的保留随机存取存储器(RAM)区域中。例如,软复位历史112b被存储在存储器112的寄存器中。
保留RAM区域包括用于即使微型计算机11软复位时也保存信息的 RAM区域(换句话说,只要设备电源被保持就能够保存信息的RAM区域),并且包括由例如触发器构成的静态随机存取存储器(SRAM)。该寄存器还包括由触发器等构成的存储区域,并且只要设备电源被保持就能够保存信息。
控制单元111包括例如用于控制整个微型计算机11的中央处理单元(CPU)。程序执行单元111a响应于从启动确定单元111e发送的启动指令,从存储器112读取控制程序112c或更新程序112d并执行它。
程序执行单元111a在正常处理中读取并执行控制程序112c,以实现指派给ECU 10的电子控制功能。程序执行单元111a在重新编程中读取并执行更新程序112d,并将更新数据应用于控制程序112c以重写控制程序112c。
控制程序112c的更新数据(未示出)例如是从服务器设备下载、从更新终端50安装、或者通过便携式存储介质读取的,从而更新数据能够被应用于微型计算机11。
程序执行单元111a根据电源IC 12的微型计算机监视系统执行处理,例如,用于在Q&A系统中运算并发送问题的回答的处理(以下,可以称为“Q&A处理”),以及用于在WDC监视系统中脉冲输出WDC信号的处理(以下,可以称为“WDC输出处理”)。
更新请求接收单元111b接收从更新终端50发送的更新请求。更新请求接收单元111b写入指示接收到更新请求的更新请求信息112a。更新请求接收单元111b将接收到更新请求这一情况通知给监视系统切换请求单元111c。
监视系统切换请求单元111c基于从更新请求接收单元111b发送的信息,向电源IC12发送请求将微型计算机监视系统从Q&A系统切换到WDC监视系统的监视系统切换请求。
将参考图3A更具体地说明程序切换时监视方法之间的切换。图3A 是示出了程序切换时的监视系统切换时序的图。
如图3A所示,在根据本实施例的ECU 10中,当更新请求接收单元 111b执行“更新请求接收”时,监视系统切换请求单元111c仅(just) 在更新请求接收后接收到第一个问题之后向电源IC 12发送监视系统切换请求。
因此,能够通过接收问题来确认与电源IC 12的通信已建立,并且消除在运算和使用串行通信发送问题的回答过程中的时间滞后,并且快速地向电源IC 12发送监视系统切换请求。
如图3A所示,在根据本实施例的ECU 10中,在发送监视系统切换请求之后,在微型计算机11“软复位”之前脉冲输出WDC信号至少一次。将参考图3C在下文进行描述这一点。
因此,可以防止在软复位期间(换句话说,在程序切换中的微型计算机11的重新引导期间)由于WDC信号的输出延迟而导致由电源IC 1 2执行硬复位。
如图3A所示,在直至“程序更新处理完成”为止的时间段期间内,使用切换后的WDC监视系统继续进行微型计算机监视,并且在“程序更新处理完成”之后,电源IC 12执行硬复位以使微型计算机11读取并执行更新后的控制程序112c。
回到图2,监视系统切换请求单元111c向电源IC 12发送监视系统切换请求,然后将该事实通知给软复位处理单元111d。
软复位处理单元111d在从监视系统切换请求单元111c通知并且在启动以输出WDC信号之后对微型计算机11进行软复位。软复位处理单元111d在软复位时写入软复位历史112b。
当重新引导微型计算机11时,启动确定单元111e根据更新请求信息112a和软复位历史112b,执行确定要启动的程序的启动确定处理。
如上所述,只要设备电源被保持,更新请求信息112a和软复位历史112b中的每一个就被存储在相应能够保存信息的存储区域中,因此信息包括由于可能发生在公共RAM区域等的RAM错乱等导致的不正确的值的风险小。
因此,只有当经过正确的过程并且通过基于该更新请求信息112a 和软复位历史112b执行启动确定处理来执行软复位时才有可能启动更新程序。换言之,能够防止由RAM错乱、不正确的软复位等事件引起的更新程序的错误启动。
具体而言,在微型计算机11被软复位的情况下,启动确定单元11 1e仅当更新请求信息112a“存在”并且进一步,软复位历史112b“存在”时,才确定更新程序112d是要启动的程序。
更新请求信息112a“存在”指示以下事实:更新请求信息112a中包括指示更新请求接收的执行的信息。软复位历史112b“存在”指示以下事实:软复位历史112b中包括指示软复位的执行的信息。
当微型计算机11被硬复位时,不管包括在更新请求信息112a和软复位历史112b中的信息的内容如何,启动确定单元111e都确定控制程序112c是要启动的程序。
启动确定单元111e向程序执行单元111a通知例如确定要启动的程序的类型作为启动指令,并且使程序执行单元111a根据该启动指令执行程序。
基于上述说明,接下来,将参考图3B和图3C来说明根据本实施例的控制程序更新方法中的处理过程。图3B是示出了根据本实施例的控制程序更新方法的处理时序的图。图3C是示出了图3中所示的时间点t 2和t3之间的更具体的处理序列的图。
如图3B所示,首先,在时间点t1之前,假设“当前执行的程序”是控制程序112c,“处理内容”包括正常处理和Q&A处理,“微型计算机监视系统”是Q&A系统。
假设在时间点t1执行“更新请求接收”。在从该时间点t1至微型计算机11被“软复位”的时间点t3期间执行与微型计算机监视系统之间的切换相关联的处理。如图3B所示,为了便于说明,将该处理称为“切换处理”。
在切换处理中,在“软复位”的时间点t3之前的时间点t2处,向电源IC 12发送“监视系统切换请求”,接收到该“监视系统切换请求”的电源IC 12将微型计算机监视系统切换到WDC监视系统。
在切换过程中,在将微型计算机监视系统切换到WDC监视系统并启动WDC监视之后,并且在“软复位”之前,即在时间点t2到t3之间的时间段内,至少脉冲输出一次WDC信号。
在3C中示出了在图3B中通过使用双头箭头示出的时间点t2和t3 之间的具体处理顺序。换句话说,如图3C中的部分M1所示,在切换处理中,作为“当前执行程序”的控制程序112c强制性地在时刻t2的WD C监视启动之后且时刻t3的“软复位”之前使WDC信号反转,并且脉冲输出WDC信号(步骤S41)。
因此,可以防止在“软复位”期间(换句话说,在程序切换中的微型计算机11的重新引导期间)由于WDC信号的输出延迟而导致由电源 IC 12执行硬复位。
举例说明了控制程序112c在“软复位”之前强制输出WDC信号一次的情况,然而可以根据时间点t2和t3之间的长度或者限定的WDC监测系统中的脉冲之间的时间间隔输出WDC信号两次或更多次。
优选的是,当在“软复位”之后启动更新程序112d时,仅在启动之后周期性地输出WDC信号。因此,可以防止WDC信号的脉冲之间的间隔在软复位之前和之后延伸。换句话说,可以有助于防止由电源IC 1 2执行硬复位。
参考图3B,微型计算机11在时间点t3被“软复位”。接下来,当执行程序的启动确定(该启动确定与微型计算机11的重新引导相关联地启动),并且满足更新程序112d的启动条件时,启动更新程序112d,并且“当前执行的程序”变为更新程序112d,“处理内容”变为包括程序更新处理和WDC输出处理。
当程序更新处理完成时,通过电源IC 12的电源控制,在时间点 t4执行“硬复位”,据此启动控制程序112c,然后控制程序112c变成“当前执行的程序”。
被补充性地示出的“硬复位”之后的时间段是被称为“第一窗口 (FW)”的时间段。在该“FW”期间的预定时间间隔中,当Q&A系统的串行通信未启动或者WDC监视系统的WDC信号未输入时,电源IC 12复位微型计算机11。
接下来,将参考图4说明由根据本实施例的ECU 10的微型计算机 11执行的处理的过程。图4是示出由根据本实施例的ECU 10的微型计算机11执行的处理的过程的流程图。
在此,示出了直到启动确定处理为止的处理过程,该启动确定处理是在接收到来自更新终端50的更新请求的情况下在软复位之后执行的。作为前提,假设程序执行单元111a正在执行控制程序112c,并且微型计算机监视系统是Q&A系统。
如图4所示,更新请求接收单元111b首先确定是否存在来自更新终端50的更新请求(步骤S101)。当存在更新请求时(步骤S101:是),更新请求接收单元111b接收该更新请求,并写入指示进行更新请求接收的更新请求信息112a(未示出),然后监视系统切换请求单元111c 在软复位之前向电源IC 12发送监视系统切换请求(步骤S102)。
当接收到该监视系统切换请求时,电源IC 12将微型计算机监视系统从Q&A系统切换到WDC监视系统。当不存在更新请求时(步骤S10 1:否),重复执行自步骤S101的处理。
程序执行单元111a在切换处理中,在WDC监视启动之后且软复位之前执行强制WDC输出(步骤S103)。
软复位处理单元111d对微型计算机11进行软复位,同时留下软复位历史112b(步骤S104)。
在由微型计算机11的软复位引起的重新引导之后,启动确定单元 111e确定是否满足更新程序112d的启动条件(步骤S105)。当步骤S10 5的确定条件被满足时(步骤S1(15:是),启动确定单元111e使程序执行单元111a启动更新程序112d(步骤S106)。
另一方面,当步骤S105的确定条件不满足时(步骤S105:否),启动确定单元111e使程序执行单元111a启动控制程序112c(步骤S107)。由此,直到启动确定处理为止的处理过程完成。
如上所述,根据本实施例的ECU 10(对应于“控制器”的一个示例)包括微型计算机11(对应于“主处理单元”的一个示例)和电源 IC12(对应于“监视单元”的一个示例)。
微型计算机11执行控制程序112c。电源IC 12通过Q&A系统(相当于“第一监视方法”的一个示例)监视微型计算机11,该Q&A系统用于向微型计算机11发送与问题相对应的发送内容,并且用于评估来自微型计算机11的对所述问题的回答。
当接收到控制程序112c的更新请求时,微型计算机11使电源IC 1 2执行从Q&A系统到WDC监视系统(对应于“第二监视方法”的一个示例)的切换,所述WDC监视系统用于监视微型计算机11的WDC信号(对应于“看门狗信号”的一个示例)。
因此,通过采用根据本实施例的ECU 10,能够防止更新控制程序 112c时电源IC的错误复位。
当接收到所述控制程序112c的所述更新请求时,所述微型计算机 11切换到启动用于更新控制程序112c的更新程序112d(代替控制程序 112c)的程序切换。程序切换包括微型计算机11的软复位(与“在保持设备电源的状态下重启”的一个示例相对应)。微型计算机11在程序切换且软复位之前使电源IC 12执行从Q&A系统到WDC监视系统的切换。
换句话说,根据本实施例的ECU 10将微型计算机11在软复位之前 (而不是在软复位之后,此时趋向于负担较重的处理负载并且认为容易发生通信定时中的干扰)将微型计算机监视系统切换到比Q&A系统更宽松地定义并且其通信时序简单且不太可能受到干扰的WDC监视系统。
因此,通过采用根据本实施例的ECU 10,可以降低在程序切换期间电源IC 12确定操作异常的风险,并且防止在程序切换期间由电源I C 12执行的硬复位。
微型计算机11仅在WDC监视系统启动监视之后且软复位之前至少向电源IC 12强制输出WDC信号一次。
因此,通过采用根据本实施例的ECU10,可以防止在软复位期间 (换句话说,在程序切换中的微型计算机11的重新引导期间)由于WD C信号的输出延迟而导致由电源IC 12执行硬复位。
微型计算机11在通过软复位启动更新程序112d之后,周期性地输出WDC信号。
因此,可以防止WDC信号的脉冲之间的间隔在软复位之前和之后延伸。换句话说,可以有助于防止由电源IC 12执行硬复位。
注意,在上面的实施例中,更新请求信息112a被存储在保留RAM 区域中,并且软复位历史112b被存储在寄存器中。然而,存储器被配置为只要保持设备电源就能够保存信息就足够了,因此不意在对更新请求信息112a和软复位历史112b的存储目的地进行限制。
在上述实施例中,ECU 10设置在车辆C中,当然也可以将ECU 10 设置在不限于车辆C的例如船舶、飞机等中。

Claims (5)

1.一种控制器,包括:
主处理单元,所述主处理单元执行控制程序;以及
监视单元,所述监视单元通过第一监视方法来监视所述主处理单元,所述第一监视方法用于向所述主处理单元发送与问题相对应的发送内容,并且用于评估来自所述主处理单元的对所述问题的回答,其中,
所述主处理单元在接收到对所述控制程序的更新请求时使所述监视单元执行从所述第一监视方法到第二监视方法的切换,所述第二监视方法用于监视所述主处理单元的看门狗信号。
2.根据权利要求1所述的控制器,其中
当接收到对所述控制程序的所述更新请求时,所述主处理单元切换到启动用于更新所述控制程序的更新程序以代替所述控制程序的程序切换,
所述程序切换包括在保持设备电源的状态下重启所述主处理单元,以及
所述主处理单元在所述程序切换时且在所述重启之前使所述监视单元执行从所述第一监视方法到所述第二监视方法的切换。
3.根据权利要求2所述的控制器,其中,所述主处理单元在通过所述第二监视方法启动监视之后且在所述重启之前向所述监视单元强制输出至少一次看门狗信号。
4.根据权利要求2或3所述的控制器,其中,所述主处理单元仅在通过所述重启启动所述更新程序之后周期性地输出看门狗信号。
5.一种要由控制器执行的控制程序更新方法,
所述控制器包括:
主处理单元,所述主处理单元执行控制程序;以及
监视单元通过第一监视方法来监视所述主处理单元,所述第一监视方法用于向所述主处理单元发送与问题相对应的发送内容,并且用于评估来自所述主处理单元的对所述问题的回答;以及
所述控制程序更新方法包括:
在接收到对所述控制程序的更新请求时使所述监视单元执行从所述第一监视方法到第二监视方法的切换,所述第二监视方法用于监视所述主处理单元的看门狗信号。
CN201810087763.2A 2017-02-15 2018-01-29 控制器和控制程序更新方法 Active CN108427609B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-026330 2017-02-15
JP2017026330A JP6692763B2 (ja) 2017-02-15 2017-02-15 制御装置および制御プログラム更新方法

Publications (2)

Publication Number Publication Date
CN108427609A true CN108427609A (zh) 2018-08-21
CN108427609B CN108427609B (zh) 2021-05-25

Family

ID=63104569

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810087763.2A Active CN108427609B (zh) 2017-02-15 2018-01-29 控制器和控制程序更新方法

Country Status (3)

Country Link
US (1) US10591884B2 (zh)
JP (1) JP6692763B2 (zh)
CN (1) CN108427609B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061243B (zh) * 2018-10-17 2023-05-26 联合汽车电子有限公司 电子控制器程序流监控系统及方法
CN109582486B (zh) * 2018-11-20 2023-04-28 厦门科灿信息技术有限公司 一种看门狗监测方法、系统及设备和存储介质
CN109591732B (zh) * 2019-01-09 2021-04-13 浙江吉利汽车研究院有限公司 汽车上电控制方法、装置、整车控制器及汽车
US11036573B2 (en) * 2019-05-16 2021-06-15 Ford Global Technologies, Llc Control processor unit (CPU) error detection by another CPU via communication bus
US10936397B2 (en) * 2019-05-23 2021-03-02 Ford Global Technologies, Llc Hybrid control module status communication system and method
JP7189839B2 (ja) * 2019-05-27 2022-12-14 日立Astemo株式会社 電子制御装置
JP7327104B2 (ja) * 2019-11-20 2023-08-16 株式会社富士通ゼネラル 電子機器
KR102219432B1 (ko) * 2019-12-12 2021-02-26 현대모비스 주식회사 와치독 장치 및 그 제어 방법
FR3115373B1 (fr) * 2020-10-20 2023-06-02 Psa Automobiles Sa Gestion de la supervision d’un composant électronique d’un véhicule terrestre à moteur

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040015940A1 (en) * 2001-05-29 2004-01-22 3Com Corporation Intelligent device upgrade engine
US20090100287A1 (en) * 2007-10-12 2009-04-16 Shao-Kang Chu Monitoring Apparatus and a Monitoring Method Thereof
CN204515759U (zh) * 2015-04-14 2015-07-29 广州市智博光辉电气科技有限公司 一种微控制器异常强制复位的看门狗电路
CN105034992A (zh) * 2015-07-02 2015-11-11 郑州宇通客车股份有限公司 一种车辆ecu升级用供电控制电路及使用该电路的车辆
CN106167040A (zh) * 2015-05-21 2016-11-30 株式会社捷太格特 车辆用控制装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4050196B2 (ja) * 2003-07-09 2008-02-20 三菱電機株式会社 監視制御回路を有する電子制御装置
DE10331872A1 (de) * 2003-07-14 2005-02-10 Robert Bosch Gmbh Verfahren zur Überwachung eines technischen Systems
JP4776610B2 (ja) * 2007-11-26 2011-09-21 三菱電機株式会社 監視制御回路を有する車載電子制御装置
JP4476320B2 (ja) * 2007-11-26 2010-06-09 三菱電機株式会社 監視制御回路を有する車載電子制御装置
JP5967059B2 (ja) 2013-12-04 2016-08-10 株式会社デンソー 車両用電子制御装置
WO2015173532A1 (en) * 2014-05-11 2015-11-19 Safetty Systems Ltd A framework as well as method for developing time-triggered computer systems with multiple system modes
JP6723941B2 (ja) * 2017-02-15 2020-07-15 株式会社デンソーテン 制御装置および制御プログラム更新方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040015940A1 (en) * 2001-05-29 2004-01-22 3Com Corporation Intelligent device upgrade engine
US20090100287A1 (en) * 2007-10-12 2009-04-16 Shao-Kang Chu Monitoring Apparatus and a Monitoring Method Thereof
CN204515759U (zh) * 2015-04-14 2015-07-29 广州市智博光辉电气科技有限公司 一种微控制器异常强制复位的看门狗电路
CN106167040A (zh) * 2015-05-21 2016-11-30 株式会社捷太格特 车辆用控制装置
CN105034992A (zh) * 2015-07-02 2015-11-11 郑州宇通客车股份有限公司 一种车辆ecu升级用供电控制电路及使用该电路的车辆

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘咏涛等: "一种基于串口通信的ECU监测程序开发", 《机床与液压》 *

Also Published As

Publication number Publication date
US20180231948A1 (en) 2018-08-16
JP2018132957A (ja) 2018-08-23
US10591884B2 (en) 2020-03-17
JP6692763B2 (ja) 2020-05-13
CN108427609B (zh) 2021-05-25

Similar Documents

Publication Publication Date Title
CN108427609A (zh) 控制器和控制程序更新方法
US9110843B2 (en) Rack and method thereof for simultaneously updating basic input output systems
CN108427564B (zh) 控制器和控制程序更新方法
US7975188B2 (en) Restoration device for BIOS stall failures and method and computer program product for the same
JP2019084941A (ja) 更新システム、電子制御装置、更新管理装置、及び更新管理方法
US10013319B2 (en) Distributed baseboard management controller for multiple devices on server boards
US7890800B2 (en) Method, operating system and computing hardware for running a computer program
CA2530149C (en) Starting control method, duplex platform system, and information processor
JP2001123874A (ja) 電子制御装置のプログラム書換システム及びメモリ書換装置
JP5960632B2 (ja) 車両用電子制御装置
JP4854995B2 (ja) エレベーター制御装置
JP2007316800A (ja) 車載プログラム書換え制御装置
KR20070065966A (ko) 스탠바이 보드의 구동시 정지된 동시 쓰기 기능 재 동작기능을 가지는 이중화 장치 및 그 방법
JP2007172096A (ja) 情報処理装置、および、その起動制御方法
JPH10187454A (ja) Bios書き換え方式
JPH0895614A (ja) 制御装置
JP4281602B2 (ja) 2重化コントローラシステム、そのコントローラ、プログラム
JP5223612B2 (ja) ディスク制御装置およびファームウェアの更新方法
JP5029123B2 (ja) 電子制御装置及び通信システム
JP2007084232A (ja) エレベータ制御プログラム更新装置
JPS6160445B2 (zh)
JPH08286994A (ja) 通信端末装置におけるプログラム制御方法
JPS62212865A (ja) マルチプロセツサ制御方式
JPS6053887B2 (ja) 情報処理システム
JPH0785226B2 (ja) 情報処理装置

Legal Events

Date Code Title Description
PB01 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