WO2020217928A1 - 電子制御装置 - Google Patents
電子制御装置 Download PDFInfo
- Publication number
- WO2020217928A1 WO2020217928A1 PCT/JP2020/015288 JP2020015288W WO2020217928A1 WO 2020217928 A1 WO2020217928 A1 WO 2020217928A1 JP 2020015288 W JP2020015288 W JP 2020015288W WO 2020217928 A1 WO2020217928 A1 WO 2020217928A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- timer circuit
- watchdog timer
- unit
- computer
- control device
- Prior art date
Links
- 238000003745 diagnosis Methods 0.000 claims abstract description 43
- 238000000034 method Methods 0.000 claims abstract description 35
- 230000004044 response Effects 0.000 claims abstract description 14
- 230000005856 abnormality Effects 0.000 claims description 47
- 238000012544 monitoring process Methods 0.000 claims description 25
- 238000004891 communication Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 238000002405 diagnostic procedure Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
-
- 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/0703—Error 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/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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
-
- 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/0703—Error 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/0706—Error 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/0736—Error 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/0739—Error 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
-
- 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/0703—Error 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/0751—Error or fault detection not based on redundancy
-
- 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/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- 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/0703—Error 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/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
-
- 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
Definitions
- the present invention relates to an electronic control device, particularly to a device including a watchdog timer circuit for monitoring a computer.
- the watchdog timer circuit is a hardware circuit used to monitor the state of a computer. Monitoring is performed by receiving pulses transmitted at regular intervals from the computer to be monitored, and if a pulse is not received for a predetermined time or longer, a timeout is detected and it is determined that an abnormality has occurred in the computer. If this watchdog timer circuit fails, it will not be possible to detect a runaway computer, making it difficult to ensure the reliability of the system.
- a watch generates a program runaway state by itself immediately after power supply, and determines whether or not a reset signal is supplied from the watchdog timer circuit after a predetermined time from which the runaway state occurs.
- a technique for diagnosing a failure of a dog timer circuit is disclosed.
- the present invention has been made to solve such a problem, and provides an electronic control device capable of performing a failure diagnosis of a watchdog timer circuit without delaying the start of normal processing of a computer. With the goal.
- the electronic control device is An electronic control device including a computer, a non-volatile memory, and a watchdog timer circuit for monitoring the computer.
- the computer -The computer termination processing unit that executes the termination processing of the computer, -Equipped with a failure diagnosis unit that diagnoses whether or not the watchdog timer circuit has failed.
- the computer termination processing unit stops the output of the pulse to the watchdog timer circuit in response to the execution of the termination processing of the computer.
- the failure diagnosis unit determines that an abnormality has occurred in the watchdog timer circuit when a reset signal is not output from the watchdog timer circuit even after a predetermined time has elapsed since the output of the pulse was stopped.
- the indicated abnormality information is written to the non-volatile memory.
- the electronic control device According to the electronic control device according to the present invention, it is possible to diagnose a failure of the watchdog timer circuit without delaying the start of normal processing of the computer.
- Embodiment 1 of this invention It is a block diagram which shows the structure including the electronic control device (ECU 10) which concerns on Embodiment 1 of this invention. It is a block diagram which shows the internal structure of the electronic control device of FIG. 1 in more detail. It is a block diagram which shows the internal structure of the microcomputer termination processing part of FIG. 2 in more detail. It is a block diagram which shows the internal structure of the watchdog timer circuit failure diagnosis part of FIG. 2 in more detail. It is a flowchart which shows the operation of the electronic control device of FIG.
- FIG. 1 is a block diagram showing a configuration of an entire vehicle system 1 including an electronic control device according to the first embodiment.
- the electronic control device is configured as an ECU (Electronic Control Unit), for example, an ECU 10 mounted on a vehicle.
- ECU Electronic Control Unit
- the entire vehicle system 1 shown in FIG. 1 includes an ECU 10 according to the first embodiment, other ECUs 11, 12, and 13, and a warning light 30.
- An ignition switch IGN is connected to the ECU 10, and the ECU 10 can acquire the state of the ignition switch. Further, the ECU 10 is communicably connected to the ECUs 11, 12, and 13 via the vehicle-mounted LAN 20 (vehicle-mounted communication network), which is a communication network, and can transmit and receive information to and from the ECUs 11, 12, and 13.
- vehicle-mounted LAN 20 vehicle-mounted communication network
- the warning light 30 is connected to the ECU 11, and the ECU 10 can control the operation of the warning light 30 via the ECU 11.
- the warning light 30 is a display means for notifying that the watchdog timer circuit 101 has failed by turning on the warning light 30, and the ECU 10 causes the watchdog timer circuit 101 to fail by turning on the warning light 30. Notify the user that they are doing it.
- an OBD connector 31 is connected to the in-vehicle LAN 20, and the diagnostic tool 2 can be connected via the OBD connector 31.
- the ECU 11 can communicate with the diagnostic tool 2 via the in-vehicle LAN 20 and the OBD connector 31.
- the diagnostic tool 2 can read out information on the failure of the watchdog timer circuit 101 at any time by communicating with the ECU 10 via the OBD connector 31.
- the ECU 10 includes a microcomputer 100 (computer) and a watchdog timer circuit 101 that monitors the microcomputer 100.
- the microcomputer 100 is used as an example of the object monitored by the watchdog timer circuit 101, but the object to be monitored is not limited to the microcomputer, and any kind of computer can be used.
- a pulse and a reset signal are transmitted and received between the microcomputer 100 and the watchdog timer circuit 101, which will be described later with reference to FIGS. 2 to 4 and the like.
- FIG. 2 is a block diagram showing the internal configuration of the ECU 10 in more detail.
- the ECU 10 includes the non-volatile memory 102 shown in FIG. 2 in addition to the microcomputer 100 and the watchdog timer circuit 101 shown in FIG.
- the microcomputer 100 can be configured by using a microcomputer having a known configuration or another computer.
- the microcomputer 100 may include arithmetic means and storage means.
- the arithmetic means can be configured using, for example, a processor, and the storage means can be configured, for example, using a non-transitory storage medium.
- the non-temporary storage medium can be a volatile or non-volatile storage medium.
- the operation of the microcomputer 100 according to the present embodiment may be realized by the arithmetic means executing the program stored in the storage means.
- the microcomputer 100 includes a microcomputer termination processing unit 200 (computer termination processing unit), a watchdog timer circuit failure diagnosis unit 201 (fault diagnosis unit), and a memory access unit 202.
- the microcomputer termination processing unit 200 executes the termination processing of the microcomputer 100.
- the termination process is a sequence executed when the power of the microcomputer 100 is turned off, and is executed when, for example, the ignition switch IGN is turned off.
- the watchdog timer circuit failure diagnosis unit 201 diagnoses whether or not the watchdog timer circuit 101 is out of order.
- the watchdog timer circuit failure diagnosis unit 201 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the memory access unit 202 executes access to the non-volatile memory 102, thereby writing and reading data.
- the memory access unit 202 may make the data redundant when writing the data to the non-volatile memory 102.
- the method of making the data redundant can be arbitrarily designed, but for example, the same data may be written to a plurality of locations (for example, two locations, but three or more locations) of the non-volatile memory 102. Further, the data may be written in association with the CRC (Cyclic Redundancy Check) calculated value related to the data. Further, when reading data from the non-volatile memory 102, the memory access unit 202 may check the consistency of the data stored in a plurality of locations, or collate the data with the CRC calculated value of the data. May be good. A specific example of such an operation will be described later with reference to FIG.
- the memory access unit 202 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the watchdog timer circuit failure diagnosis unit 201 may output the failure information data DT10 (fault information) to the outside of the ECU 10.
- the failure information data DT 10 may include, for example, information indicating that the watchdog timer circuit 101 has failed, vehicle information for identifying a vehicle on which the ECU 10 is mounted, and the like.
- the failure information data DT10 can be used as data for notifying the user and other ECUs of information regarding the failure.
- the ECU 10 transmits the failure information data DT10 to, for example, the ECU 11.
- the ECU 11 may include a failure information receiving unit 400 and a lighting unit 401.
- the failure information receiving unit 400 may receive the failure information data DT10 from the ECU 10 (particularly the microcomputer 100) and turn on the warning light 30 via the lighting unit 401 as needed.
- the watchdog timer circuit 101 can be appropriately designed by those skilled in the art as a watchdog timer circuit having a known configuration, and an example will be described below.
- the watchdog timer circuit 101 includes a watchdog pulse receiving unit 301 and a reset signal output unit 300.
- the watchdog timer circuit 101 has an internal timer for measuring time.
- the watchdog pulse receiving unit 301 receives a pulse (watchdog pulse) from the microcomputer 100, and resets the value of the timer accordingly. If the pulse is not received for a predetermined time or longer, the timer value reaches the predetermined value without being reset. When the value of the timer reaches a predetermined value, the reset signal output unit 300 transmits a reset signal indicating a reset request to the microcomputer 100, thereby resetting the microcomputer 100.
- FIG. 3 is a block diagram showing the internal configuration of the microcomputer termination processing unit 200 in more detail.
- the block diagram of FIG. 3 is an example, and the microcomputer termination processing unit 200 may have a configuration other than this.
- the microcomputer termination processing unit 200 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the microcomputer termination processing unit 200 includes an ignition switch status detection unit 1000, a boot initialization unit 1001, a power OFF unit 1002, an termination control unit 1003, a watchdog pulse output unit 1004, and the like. It includes a reset monitoring timer management unit 1005 and a reset unit 1006. With such a configuration, the microcomputer termination processing unit 200 executes the termination processing of the microcomputer 100.
- the ignition switch status detection unit 1000 detects the state of the ignition switch IGN. For example, it detects whether the state of the ignition switch IGN is ON or OFF.
- the ignition switch status detection unit 1000 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the boot initialization unit 1001 executes an initialization process for initializing the hardware device, registers, memory, etc. of the microcomputer 100.
- the initialization process is executed, for example, immediately after the power of the microcomputer 100 is turned on, or immediately after the microcomputer 100 is reset.
- the boot initialization unit 1001 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the boot initialization unit 1001 may execute a process of turning off the power of the microcomputer 100 according to a predetermined condition. For example, when it is detected that the state of the ignition switch IGN is OFF during the initialization process of the microcomputer 100, the power of the microcomputer 100 may be turned off.
- the watchdog pulse output unit 1004 outputs a pulse (or a predetermined signal representing the pulse) to the watchdog timer circuit 101.
- the watchdog pulse output unit 1004 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the end control unit 1003 outputs a pulse output stop request to the watchdog pulse output unit 1004 when the ignition switch status detection unit 1000 detects that the state of the ignition switch is OFF.
- the watchdog pulse output unit 1004 stops the output of the pulse to the watchdog timer circuit 101 in response to the pulse output stop request.
- the microcomputer termination processing unit 200 stops the output of the pulse to the watchdog timer circuit 101 in response to the termination processing of the microcomputer 100 being executed.
- the end control unit 1003 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the microcomputer 100 will be reset within a predetermined time after the pulse output is stopped. On the other hand, when the watchdog timer circuit 101 is out of order, the microcomputer 100 may not be reset even if the pulse output is stopped.
- the power OFF unit 1002 turns off the power of the microcomputer 100.
- the boot initialization unit 1001 and the end control unit 1003 can turn off the power of the microcomputer 100 via the power OFF unit 1002.
- the reset monitoring timer management unit 1005 responds to the end control unit 1003 requesting the watchdog pulse output unit 1004 to stop the output of the pulse to the watchdog timer circuit 101, and the elapsed time from the stop of the pulse output. To monitor. By monitoring the elapsed time in this way, it is possible to monitor whether or not the microcomputer 100 has been reset within a predetermined time after the pulse output is stopped.
- the reset monitoring timer management unit 1005 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the reset monitoring timer management unit 1005 may have a reset monitoring timer RT10 inside, and may perform monitoring by counting down the value of the reset monitoring timer RT10.
- the value of the reset monitoring timer RT10 is set to N (where N is a numerical value specified in advance) in response to the pulse output stop request of the end control unit 1003, and this value is counted down as time elapses. If the microcomputer 100 is reset before the reset monitoring timer RT10 is counted down to 0, the operation of the reset monitoring timer management unit 1005 is also reset accordingly. Therefore, the fact that the reset monitoring timer RT10 is counted down to 0 means that the microcomputer 100 was not reset within the time represented by the value N.
- microcomputer 100 If the microcomputer 100 is not reset within a predetermined time after the pulse output is stopped and the elapsed time reaches a predetermined value (for example, when the above-mentioned reset monitoring timer RT10 is counted down to 0), end control is performed.
- Unit 1003 forcibly terminates the microcomputer 100.
- the forced termination is executed, for example, by turning off the power of the microcomputer 100 via the power-off unit 1002.
- the forced termination may not execute the procedure included in the normal termination process.
- the power of the microcomputer 100 can be turned off even when the reset signal is not output due to a failure of the watchdog timer circuit 101 or the like.
- the reset unit 1006 When the reset unit 1006 receives the reset signal from the watchdog timer circuit 101, the reset unit 1006 resets the microcomputer 100 in response to the reset signal.
- the above-mentioned forced termination may be executed by resetting the microcomputer 100 via the reset unit 1006.
- the reset unit 1006 may be realized by an electronic circuit device.
- FIG. 4 is a block diagram showing the internal configuration of the watchdog timer circuit failure diagnosis unit 201 in more detail.
- the watchdog timer circuit failure diagnosis unit 201 includes a watchdog timer circuit error flag setting unit 2000, a watchdog timer circuit failure initial diagnosis unit 2001, a failure information data transmission unit 2002, and a failure information record. A unit 2003 is provided.
- the watchdog timer circuit failure diagnosis unit 201 diagnoses whether or not the watchdog timer circuit 101 has failed.
- the watchdog timer circuit failure diagnosis unit 201 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- FIG. 4 also shows an example of the internal configuration of the non-volatile memory 102 related to the operation of the watchdog timer circuit failure diagnosis unit 201.
- the non-volatile memory 102 stores information indicating whether or not an abnormality has occurred in the watchdog timer circuit 101. This information is represented, for example, by the value of the watchdog timer circuit error flag WDF10.
- the normal value of the watchdog timer circuit abnormality flag WDF10 is normal information indicating that no abnormality has occurred in the watchdog timer circuit 101, and the value of the watchdog timer circuit abnormality flag WDF10 is abnormal. Is abnormality information indicating that an abnormality has occurred in the watchdog timer circuit 101.
- the information written in the non-volatile memory 102 may be stored redundantly.
- the memory access unit 202 sets the value of the watchdog timer circuit abnormality flag WDF10 on the A side (first area) and the B side (first area) of the non-volatile memory 102 in response to an instruction from the watchdog timer circuit failure diagnosis unit 201. 2 areas) You may write in each.
- the memory access unit 202 reads the value of the watchdog timer circuit abnormality flag WDF10 from the non-volatile memory 102 in response to the instruction from the watchdog timer circuit failure diagnosis unit 201, the value read from the A side and the B You may verify the consistency with the value read from the surface. Further, if there is no match, a known error handling may be executed. By such processing, information can be redundantly stored.
- the memory access unit 202 is calculated according to the flag value itself and the flag value when writing the value of the watchdog timer circuit abnormality flag WDF10 in response to the instruction from the watchdog timer circuit failure diagnosis unit 201.
- the CRC calculated value may be written in association with the WDFC.
- the abnormality information includes the watchdog timer circuit abnormality flag WDF10 and the CRC calculated value WDFC regarding the watchdog timer circuit abnormality flag WDF10.
- the memory access unit 202 collates the watchdog timer circuit abnormality flag WDF10 and the CRC calculated value WDFC when reading the abnormality information in response to the instruction from the watchdog timer circuit failure diagnosis unit 201. May be good. Further, if the result of collation is inconsistent, known error processing may be executed. By such processing, information can be redundantly stored.
- the watchdog timer circuit abnormality flag setting unit 2000 sets the value of the watchdog timer circuit abnormality flag WDF10 via the memory access unit 202. For example, when the state of the ignition switch changes from ON to OFF (this can be detected by the ignition switch status detection unit 1000), the value of the watchdog timer circuit abnormality flag WDF10 is immediately set normally (FIG. 4). Step 1). As described above, at this point, the pulse output from the watchdog pulse output unit 1004 is stopped.
- the watchdog timer circuit abnormality flag setting unit 2000 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- a reset signal is output from the watchdog timer circuit 101 even after a predetermined time has elapsed (this can be detected by counting down the reset monitoring timer RT10 to 0). If not, the watchdog timer circuit abnormality flag setting unit 2000 sets the value of the watchdog timer circuit abnormality flag WDF10 abnormally (step 2 in FIG. 4). As a result, abnormality information indicating that an abnormality has occurred in the watchdog timer circuit 101 is written in the non-volatile memory 102.
- the watchdog timer circuit failure initial diagnosis unit 2001 is non-volatile via the memory access unit 202 after the microcomputer 100 is started (for example, during the initialization process or after the initialization process and before the normal process). Acquires the value of the watchdog timer circuit error flag WDF10 stored in the sex memory 102. Then, based on the value of this flag, it is diagnosed whether or not the watchdog timer circuit 101 is out of order.
- the watchdog timer circuit failure initial diagnosis unit 2001 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the watchdog timer circuit failure initial diagnosis unit 2001 diagnoses that the watchdog timer circuit 101 is abnormal.
- the watchdog timer circuit failure initial diagnosis unit 2001 diagnoses that the watchdog timer circuit 101 is normal.
- the watchdog timer circuit failure initial diagnosis unit 2001 when the abnormality information is stored in the non-volatile memory 102 when the microcomputer 100 is started, the watchdog timer circuit 101 is abnormal (that is, it fails). ) Is diagnosed. Therefore, it is not necessary to execute the diagnostic process that takes a long time at the time of startup, and the normal process of the computer can be started quickly.
- the failure information data transmission unit 2002 transmits the failure information data DT10 to the vehicle-mounted LAN 20 when the watchdog timer circuit 101 is diagnosed as abnormal (that is, failed) by the watchdog timer circuit failure initial diagnosis unit 2001. To do. As a result, the failure of the watchdog timer circuit 101 can be notified to the outside.
- the failure information data transmission unit 2002 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- the destination of the failure information data DT 10 may be the ECU 11 as shown in the figure, for example.
- the ECU 11 receives the failure information data DT10 and turns on the warning light 30.
- the failure information data DT10 is used as the signal for turning on the warning light 30, but the signal for turning on the warning light 30 is not limited to the failure information data DT10, and other formats or contents may be used. It may be a signal to have. By turning on the warning light 30 in this way, the user can know the failure of the watchdog timer circuit 101.
- the destination of the failure information data DT 10 may be, for example, the diagnostic tool 2 connected via the OBD connector 31 (see FIG. 1). In this way, the diagnostic tool 2 can perform further diagnostic processing by using the information regarding the failure of the watchdog timer circuit 101.
- the failure information recording unit 2003 provides failure information data via the memory access unit 202. Write the DT 10 to the non-volatile memory 102. As a result, detailed information regarding the failure of the watchdog timer circuit 101 can be stored for a long period of time and can be referred to at any time.
- the failure information recording unit 2003 may be realized by the arithmetic means of the microcomputer 100 executing the program stored in the storage means of the microcomputer 100.
- FIG. 5 is a flowchart showing the operation of the ECU 10. This figure particularly shows the operation of the microcomputer 100.
- the operation of FIG. 5 is started from step S100 in response to the power being turned on to the microcomputer 100. Subsequent processing is as follows.
- Step S100 The microcomputer 100 is powered on.
- Step S101 The ignition switch status detection unit 1000 detects the state of the ignition switch IGN. If the state of the ignition switch IGN is OFF, the process proceeds to step S102. If the state of the ignition switch IGN is ON, the process proceeds to step S103.
- Step S102 The power OFF unit 1002 turns off the power of the microcomputer 100.
- Step S103 The watchdog timer circuit failure initial diagnosis unit 2001 acquires the value of the watchdog timer circuit error flag WDF10 stored in the non-volatile memory 102 via the memory access unit 202.
- Step S104 The watchdog timer circuit failure initial diagnosis unit 2001 diagnoses the presence or absence of a failure of the watchdog timer circuit 101 based on the value of the watchdog timer circuit abnormality flag WDF10. If the watchdog timer circuit error flag WDF10 is abnormal, the process proceeds to step S105. This corresponds to determining that the watchdog timer circuit 101 has a failure. On the other hand, if the value of the watchdog timer circuit abnormality flag is normal, the process proceeds to step S107. This corresponds to determining that the watchdog timer circuit 101 has no failure.
- Step S105 The failure information data transmission unit 2002 transmits the failure information data DT10 to the ECU 11 via the vehicle-mounted LAN 20.
- Step S106 The failure information recording unit 2003 records the failure information in the non-volatile memory 102 via the memory access unit 202.
- Step S107 The normal process of the microcomputer 100 is performed.
- the normal process includes, for example, a process related to the traveling of a vehicle.
- the watchdog pulse output unit 1004 continues to output the watchdog pulse.
- Step S108 During the execution of step S107, the ignition switch status detection unit 1000 detects that the state of the ignition switch IGN has been turned off. In response to this, the microcomputer 100 starts executing the end sequence and proceeds to step S109.
- Step S109 When the microcomputer 100 starts executing the end sequence, the watchdog timer circuit abnormality flag setting unit 2000 sends the watchdog timer circuit abnormality flag WDF10 stored in the non-volatile memory 102 via the memory access unit 202. Set the value of to normal.
- Step S110 The watchdog pulse output unit 1004 stops the output of the watchdog pulse.
- Step S112 If the microcomputer 100 is not reset even if the reset monitoring timer RT10 becomes 0, the process proceeds to step S113. This corresponds to determining that the watchdog timer circuit 101 has an abnormality. On the other hand, if the reset monitoring timer RT10 has not counted down to 0, the process proceeds to step S114 to wait for the reception of the reset signal.
- Step S113 The watchdog timer circuit abnormality flag setting unit 2000 abnormally sets the value of the watchdog timer circuit abnormality flag WDF10 stored in the non-volatile memory 102 via the memory access unit 202. Then, the process proceeds to step S115.
- Step S114 When the reset signal is output from the watchdog timer circuit 101, the process proceeds to step S101 in order to reset the microcomputer. If the reset signal has not been output, the process proceeds to step S112.
- Step S115 The end control unit 1003 confirms whether the end process of the microcomputer 100 is completed. If the termination process is completed, the process proceeds to step S102 in order to turn off the power of the microcomputer 100. If the end process is not completed, the end process is waited for in step S115.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Radar, Positioning & Navigation (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Remote Sensing (AREA)
- Mechanical Engineering (AREA)
- Debugging And Monitoring (AREA)
Abstract
コンピューターの通常処理の開始を遅延させることなく、ウォッチドッグタイマー回路の故障診断を行うことができる電子制御装置を提供する。マイクロコンピューター終了処理部200は、マイクロコンピューター100の終了処理が実行されることに応じて、ウォッチドッグタイマー回路101へのパルスの出力を停止させる。ウォッチドッグタイマー回路故障診断部201は、パルスの出力が停止されてから所定時間が経過してもウォッチドッグタイマー回路101からリセット信号が出力されなかった場合に、ウォッチドッグタイマー回路101に異常が発生したことを示す異常情報を不揮発性メモリ102に書き込む。
Description
この発明は電子制御装置に関し、とくにコンピューターを監視するウォッチドッグタイマー回路を備えるものに関する。
周知のように、ウォッチドッグタイマー回路とは、コンピューターの状態を監視するために用いられるハードウェア回路である。監視対象のコンピューターから一定周期で送信されるパルスを受信することにより監視を行い、所定時間以上パルスを受信しない場合にタイムアウトを検出して、コンピューターに異常が発生したと判断するものである。このウォッチドッグタイマー回路が故障すると、コンピューターの暴走を検出することができないため、システムの信頼性を確保することが困難となる。
下記特許文献1には、電源供給直後にマイクロコンピューターが自らプログラム暴走状態を発生させ、暴走状態発生の所定時間後にウォッチドッグタイマー回路からリセット信号の供給を受けたか否かを判断することにより、ウォッチドッグタイマー回路の故障診断を行う技術が開示されている。
従来の技術では、ウォッチドッグタイマー回路の診断のためにコンピューターの通常処理の開始が遅延するという課題があった。
たとえば、特許文献1に記載されているウォッチドッグタイマー回路診断手法では、マイクロコンピューターの起動時にウォッチドッグタイマー回路の故障診断を行うが、そのためにウォッチドッグタイマー回路がマイクロコンピューターを正常にリセットするまで待機する必要がある。このため、マイクロコンピューターの通常処理の開始に遅延が発生する。また、このため、たとえばシステムの起動性能が悪化する。
本発明は、このような課題を解決するためになされたものであり、コンピューターの通常処理の開始を遅延させることなく、ウォッチドッグタイマー回路の故障診断を行うことができる電子制御装置を提供することを目的とする。
この発明に係る電子制御装置は、
コンピューターと、不揮発性メモリと、前記コンピューターを監視するウォッチドッグタイマー回路とを備える、電子制御装置であって、
前記コンピューターは、
‐前記コンピューターの終了処理を実行するコンピューター終了処理部と、
‐前記ウォッチドッグタイマー回路が故障しているか否かを診断する故障診断部と、を備え、
前記コンピューター終了処理部は、前記コンピューターの終了処理が実行されることに応じて、ウォッチドッグタイマー回路へのパルスの出力を停止させ、
前記故障診断部は、前記パルスの出力が停止されてから所定時間が経過しても前記ウォッチドッグタイマー回路からリセット信号が出力されなかった場合に、前記ウォッチドッグタイマー回路に異常が発生したことを示す異常情報を前記不揮発性メモリに書き込む。
コンピューターと、不揮発性メモリと、前記コンピューターを監視するウォッチドッグタイマー回路とを備える、電子制御装置であって、
前記コンピューターは、
‐前記コンピューターの終了処理を実行するコンピューター終了処理部と、
‐前記ウォッチドッグタイマー回路が故障しているか否かを診断する故障診断部と、を備え、
前記コンピューター終了処理部は、前記コンピューターの終了処理が実行されることに応じて、ウォッチドッグタイマー回路へのパルスの出力を停止させ、
前記故障診断部は、前記パルスの出力が停止されてから所定時間が経過しても前記ウォッチドッグタイマー回路からリセット信号が出力されなかった場合に、前記ウォッチドッグタイマー回路に異常が発生したことを示す異常情報を前記不揮発性メモリに書き込む。
この発明に係る電子制御装置によれば、コンピューターの通常処理の開始を遅延させることなく、ウォッチドッグタイマー回路の故障診断を行うことができる。
以下、本発明を実施するための形態について図面を用いて説明する。なお、図面において、同一の符号は、同一のまたは相当する部分を示す。また、本発明は、図示例に限定されるものではない。
実施形態1.
以下、本発明の実施形態1に係る電子制御装置を説明する。
図1は、実施形態1に係る電子制御装置を含む車両全体システム1の構成を示すブロック図である。本実施形態では、電子制御装置は、車両に搭載されるECU(Electronic Control Unit)たとえばECU10として構成される。
以下、本発明の実施形態1に係る電子制御装置を説明する。
図1は、実施形態1に係る電子制御装置を含む車両全体システム1の構成を示すブロック図である。本実施形態では、電子制御装置は、車両に搭載されるECU(Electronic Control Unit)たとえばECU10として構成される。
図1に示す車両全体システム1は、実施形態1に係るECU10と、他のECU11,12,13と、警告灯30とを備える。
ECU10にはイグニッションスイッチIGNが接続され、ECU10はイグニッションスイッチの状態を取得することができるようになっている。また、ECU10は通信ネットワークである車載LAN20(車載通信網)を介してECU11,12,13と通信可能に接続され、ECU11,12,13との間で情報を送受信することが可能である。
警告灯30はECU11に接続されており、ECU10はECU11を介して警告灯30の動作を制御できるようになっている。警告灯30は、点灯することによってウォッチドッグタイマー回路101が故障していることを通知するための表示手段であり、ECU10は、この警告灯30を点灯させることによって、ウォッチドッグタイマー回路101が故障していることをユーザーに通知する。
さらに、車載LAN20にはOBDコネクター31が接続されており、このOBDコネクター31を介して診断ツール2を接続できるようになっている。このように、ECU11は、車載LAN20およびOBDコネクター31を介して診断ツール2と通信可能である。診断ツール2は、OBDコネクター31を介してECU10と通信することにより、ウォッチドッグタイマー回路101の故障に関する情報を随時に読み出すことができる。
ECU10は、マイクロコンピューター100(コンピューター)と、マイクロコンピューター100を監視するウォッチドッグタイマー回路101とを備える。なお、本実施形態ではウォッチドッグタイマー回路101によって監視される対象の例としてマイクロコンピューター100を用いるが、監視される対象はマイクロコンピューターに限られず、任意の種類のコンピューターとすることができる。
なお、図1に示すように、マイクロコンピューター100とウォッチドッグタイマー回路101との間でパルスおよびリセット信号の送受信が行われるが、これについては図2~4等を参照して後述する。
図2は、ECU10の内部構成をより詳細に示すブロック図である。ECU10は、図1にも示すマイクロコンピューター100およびウォッチドッグタイマー回路101に加え、図2に示す不揮発性メモリ102を備える。
マイクロコンピューター100は、公知の構成を有するマイクロコンピューターまたは他のコンピューターを用いて構成することができる。たとえば、マイクロコンピューター100は、演算手段および記憶手段を備えてもよい。演算手段はたとえばプロセッサを用いて構成することができ、記憶手段はたとえば非一時的(non-transitory)記憶媒体を用いて構成することができる。非一時的記憶媒体は、揮発性または不揮発性の記憶媒体とすることができる。また、記憶手段に記憶されたプログラムを演算手段が実行することにより、本実施形態に係るマイクロコンピューター100の動作が実現されるものであってもよい。
マイクロコンピューター100は、マイクロコンピューター終了処理部200(コンピューター終了処理部)と、ウォッチドッグタイマー回路故障診断部201(故障診断部)と、メモリアクセス部202と、を備える。
マイクロコンピューター終了処理部200は、マイクロコンピューター100の終了処理を実行する。終了処理とは、マイクロコンピューター100の電源をOFFにする際に実行されるシーケンスであり、たとえばイグニッションスイッチIGNがOFFになった場合に実行される。
ウォッチドッグタイマー回路故障診断部201は、ウォッチドッグタイマー回路101が故障しているか否かを診断する。ウォッチドッグタイマー回路故障診断部201は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
メモリアクセス部202は、不揮発性メモリ102に対してアクセスを実行し、これによってデータの書き込みおよび読み出しを行う。メモリアクセス部202は、不揮発性メモリ102にデータを書き込む際に、データを冗長化してもよい。
データを冗長化する方法は任意に設計可能であるが、たとえば、同じデータを不揮発性メモリ102の複数箇所(たとえば二箇所であるが、三箇所以上であってもよい)に書き込んでもよい。また、データと、データに関するCRC(Cyclic Redundancy Check)計算値とを関連付けて書き込んでもよい。また、メモリアクセス部202は、不揮発性メモリ102からデータを読み出す際に、複数箇所に記憶されているデータの一致性チェックを行ってもよいし、データとデータのCRC計算値とを照合してもよい。このような動作の具体例については、図4を参照して後述する。メモリアクセス部202は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
ウォッチドッグタイマー回路故障診断部201は、ウォッチドッグタイマー回路101が故障していると診断した場合に、ECU10の外部に向けて故障情報データDT10(故障情報)を出力してもよい。故障情報データDT10は、たとえば、ウォッチドッグタイマー回路101が故障したことを示す情報、ECU10が搭載されている車両を特定するための車両情報、等を含んでもよい。故障情報データDT10は、ユーザーや他のECUに故障に関する情報を通知するためのデータとして用いることができる。ECU10は、故障情報データDT10を、たとえばECU11に送信する。
ECU11は、故障情報受信部400と点灯部401とを備えてもよい。故障情報受信部400は、ECU10(とくにマイクロコンピューター100)から故障情報データDT10を受信し、必要に応じて点灯部401を介して警告灯30を点灯させてもよい。
ウォッチドッグタイマー回路101は、公知の構成を有するウォッチドッグタイマー回路として当業者が適宜設計することができるが、一例を以下に説明する。ウォッチドッグタイマー回路101は、ウォッチドッグパルス受信部301と、リセット信号出力部300とを備える。
ウォッチドッグタイマー回路101は、内部に時間を計測するタイマーを有する。ウォッチドッグパルス受信部301は、マイクロコンピューター100からパルス(ウォッチドッグパルス)を受信し、これに応じてタイマーの値をリセットする。所定時間以上にわたってパルスが受信されないと、タイマーの値がリセットされないまま所定値に達することになる。タイマーの値が所定値に達すると、リセット信号出力部300はマイクロコンピューター100に対してリセット要求を表すリセット信号を送信し、これによってマイクロコンピューター100をリセットさせる。
図3は、マイクロコンピューター終了処理部200の内部構成をより詳細に示すブロック図である。なお図3のブロック図は一例であり、マイクロコンピューター終了処理部200はこれ以外の構成を有してもよい。マイクロコンピューター終了処理部200は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
図3に示すように、マイクロコンピューター終了処理部200は、イグニッションスイッチステータス検出部1000と、ブート初期化部1001と、電源OFF部1002と、終了制御部1003と、ウォッチドッグパルス出力部1004と、リセット監視タイマー管理部1005と、リセット部1006と、を備える。このような構成により、マイクロコンピューター終了処理部200は、マイクロコンピューター100の終了処理を実行する。
イグニッションスイッチステータス検出部1000は、イグニッションスイッチIGNの状態を検出する。たとえば、イグニッションスイッチIGNの状態がONであるか、またはOFFであるかを検出する。イグニッションスイッチステータス検出部1000は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
ブート初期化部1001は、マイクロコンピューター100のハードデバイス、レジスタ、メモリなどを初期化する初期化処理を実行する。初期化処理はたとえば、マイクロコンピューター100の電源を入れた直後に、または、マイクロコンピューター100がリセットされた直後に、実行される。ブート初期化部1001は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
また、ブート初期化部1001は、所定の条件に応じてマイクロコンピューター100の電源をOFFにする処理を実行してもよい。たとえば、マイクロコンピューター100の初期化処理中に、イグニッションスイッチIGNの状態がOFFであることが検出された場合に、マイクロコンピューター100の電源をOFFにしてもよい。
ウォッチドッグパルス出力部1004は、ウォッチドッグタイマー回路101に対してパルス(またはパルスを表す所定の信号)を出力する。ウォッチドッグパルス出力部1004は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
終了制御部1003は、イグニッションスイッチステータス検出部1000によってイグニッションスイッチの状態がOFFであることが検出された場合に、ウォッチドッグパルス出力部1004に対してパルス出力停止要求を出力する。ウォッチドッグパルス出力部1004は、このパルス出力停止要求に応じ、ウォッチドッグタイマー回路101へのパルスの出力を停止する。このように、マイクロコンピューター終了処理部200は、マイクロコンピューター100の終了処理が実行されることに応じて、ウォッチドッグタイマー回路101へのパルスの出力を停止させる。終了制御部1003は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
ここで、ウォッチドッグタイマー回路101が正常である場合には、パルスの出力が停止されてから所定時間以内に、マイクロコンピューター100がリセットされることになる。一方、ウォッチドッグタイマー回路101が故障している場合には、パルスの出力が停止されてもマイクロコンピューター100がリセットされない可能性がある。
電源OFF部1002は、マイクロコンピューター100の電源をOFFにする。たとえば、ブート初期化部1001および終了制御部1003は、電源OFF部1002を介してマイクロコンピューター100の電源をOFFにすることができる。
リセット監視タイマー管理部1005は、終了制御部1003がウォッチドッグタイマー回路101に対するパルスの出力を停止するようウォッチドッグパルス出力部1004に要求することに応じ、パルスの出力が停止されてからの経過時間を監視する。このように経過時間を監視することにより、パルスの出力が停止されてから所定時間以内にマイクロコンピューター100がリセットされたか否かを監視することができる。リセット監視タイマー管理部1005は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
リセット監視タイマー管理部1005は、内部にリセット監視タイマーRT10を有してもよく、このリセット監視タイマーRT10の値をカウントダウンすることによって監視を行ってもよい。たとえば、終了制御部1003のパルス出力停止要求に応じてリセット監視タイマーRT10の値をN(ただしNは事前に指定される数値)に設定し、時間の経過に応じてこの値をカウントダウンする。リセット監視タイマーRT10が0までカウントダウンされる前にマイクロコンピューター100がリセットされると、これに伴ってリセット監視タイマー管理部1005の動作もリセットされる。このため、リセット監視タイマーRT10が0までカウントダウンされたということは、値Nが表す時間以内にマイクロコンピューター100がリセットされなかったということを表す。
パルスの出力が停止されてから所定時間以内にマイクロコンピューター100がリセットされず、経過時間が所定値に達した場合(たとえば上述のリセット監視タイマーRT10が0までカウントダウンされた場合)には、終了制御部1003がマイクロコンピューター100を強制終了させる。強制終了は、たとえば電源OFF部1002を介してマイクロコンピューター100の電源をOFFとすることにより実行される。強制終了は、通常の終了処理に含まれる手順を実行しないものであってもよい。
このような強制終了を実行することにより、ウォッチドッグタイマー回路101の故障等によりリセット信号が出力されない場合であっても、マイクロコンピューター100の電源をOFFとすることができる。
リセット部1006は、ウォッチドッグタイマー回路101からリセット信号を受信すると、これに応じて、マイクロコンピューター100をリセットする。上述の強制終了は、リセット部1006を介してマイクロコンピューター100をリセットすることにより実行されてもよい。リセット部1006は、電子回路装置により実現されるものであってもよい。
図4は、ウォッチドッグタイマー回路故障診断部201の内部構成をより詳細に示すブロック図である。図4に示すように、ウォッチドッグタイマー回路故障診断部201は、ウォッチドッグタイマー回路異常フラグ設定部2000と、ウォッチドッグタイマー回路故障初期診断部2001と、故障情報データ送信部2002と、故障情報記録部2003と、を備える。このような構成により、ウォッチドッグタイマー回路故障診断部201は、ウォッチドッグタイマー回路101が故障しているか否かを診断する。ウォッチドッグタイマー回路故障診断部201は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
図4において、単一のイコール記号「=」は命令または情報の出力を表し、2個連続したイコール記号「==」は分岐条件の判断処理または分岐条件が満たされている状態を表す。
図4には、ウォッチドッグタイマー回路故障診断部201の動作に関連する不揮発性メモリ102の内部構成の例も示している。不揮発性メモリ102は、ウォッチドッグタイマー回路101に異常が発生しているか否かを示す情報を記憶する。この情報は、たとえばウォッチドッグタイマー回路異常フラグWDF10の値によって表される。ウォッチドッグタイマー回路異常フラグWDF10の値が正常であることは、ウォッチドッグタイマー回路101に異常が発生していないことを示す正常情報であり、ウォッチドッグタイマー回路異常フラグWDF10の値が異常であることは、ウォッチドッグタイマー回路101に異常が発生したことを示す異常情報である。
不揮発性メモリ102に書き込まれる情報は、冗長化して記憶されてもよい。たとえば、メモリアクセス部202は、ウォッチドッグタイマー回路故障診断部201からの指示に応じ、ウォッチドッグタイマー回路異常フラグWDF10の値を、不揮発性メモリ102のA面(第1領域)およびB面(第2領域)それぞれに書き込んでもよい。また、メモリアクセス部202は、ウォッチドッグタイマー回路故障診断部201からの指示に応じ、ウォッチドッグタイマー回路異常フラグWDF10の値を不揮発性メモリ102から読み出す際に、A面から読み出した値と、B面から読み出した値との一致性を検証してもよい。さらに、一致性がない場合には、公知のエラー処理を実行してもよい。このような処理により、情報を冗長化して記憶することができる。
また、メモリアクセス部202は、ウォッチドッグタイマー回路故障診断部201からの指示に応じ、ウォッチドッグタイマー回路異常フラグWDF10の値を書き込む際に、フラグの値そのものと、フラグの値に応じて算出されるCRC計算値WDFCとを関連付けて書き込んでもよい。その場合には、異常情報は、ウォッチドッグタイマー回路異常フラグWDF10と、ウォッチドッグタイマー回路異常フラグWDF10に関するCRC計算値WDFCとを含むことになる。また、この場合には、メモリアクセス部202は、ウォッチドッグタイマー回路故障診断部201からの指示に応じ、異常情報を読み出す際に、ウォッチドッグタイマー回路異常フラグWDF10およびCRC計算値WDFCを照合してもよい。さらに、照合の結果、整合性がない場合には、公知のエラー処理を実行してもよい。このような処理により、情報を冗長化して記憶することができる。
ウォッチドッグタイマー回路異常フラグ設定部2000は、メモリアクセス部202を介して、ウォッチドッグタイマー回路異常フラグWDF10の値を設定する。たとえば、イグニッションスイッチの状態がONからOFFに変化した場合に(これはイグニッションスイッチステータス検出部1000によって検出することができる)、ウォッチドッグタイマー回路異常フラグWDF10の値を直ちに正常に設定する(図4のステップ1)。
なお、上述のように、この時点でウォッチドッグパルス出力部1004からのパルスの出力が停止される。ウォッチドッグタイマー回路異常フラグ設定部2000は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
なお、上述のように、この時点でウォッチドッグパルス出力部1004からのパルスの出力が停止される。ウォッチドッグタイマー回路異常フラグ設定部2000は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
その後、すなわちパルスの出力が停止されてから、所定時間が経過しても(これはリセット監視タイマーRT10が0までカウントダウンすることによって検出することができる)ウォッチドッグタイマー回路101からリセット信号が出力されなかった場合に、ウォッチドッグタイマー回路異常フラグ設定部2000は、ウォッチドッグタイマー回路異常フラグWDF10の値を異常に設定する(図4のステップ2)。これによって、ウォッチドッグタイマー回路101に異常が発生したことを示す異常情報が、不揮発性メモリ102に書き込まれる。
ウォッチドッグタイマー回路故障初期診断部2001は、マイクロコンピューター100が起動された後(たとえば初期化処理中に、または初期化処理の後かつ通常処理の前に)、メモリアクセス部202を介して、不揮発性メモリ102に記憶されているウォッチドッグタイマー回路異常フラグWDF10の値を取得する。そして、このフラグの値に基づき、ウォッチドッグタイマー回路101が故障しているか否かを診断する。ウォッチドッグタイマー回路故障初期診断部2001は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
たとえば、ウォッチドッグタイマー回路異常フラグWDF10の値が異常であれば、ウォッチドッグタイマー回路故障初期診断部2001は、ウォッチドッグタイマー回路101が異常であると診断する。一方、ウォッチドッグタイマー回路異常フラグWDF10の値が正常であれば、ウォッチドッグタイマー回路故障初期診断部2001は、ウォッチドッグタイマー回路101が正常であると診断する。
このように、ウォッチドッグタイマー回路故障初期診断部2001は、マイクロコンピューター100の起動時に、不揮発性メモリ102に異常情報が記憶されていた場合に、ウォッチドッグタイマー回路101が異常である(すなわち故障している)と診断する。
このため、起動時に長時間を要する診断処理を実行する必要がなく、コンピューターの通常処理を迅速に開始することができる。
このため、起動時に長時間を要する診断処理を実行する必要がなく、コンピューターの通常処理を迅速に開始することができる。
故障情報データ送信部2002は、ウォッチドッグタイマー回路故障初期診断部2001によってウォッチドッグタイマー回路101が異常である(すなわち故障している)と診断された場合に、故障情報データDT10を車載LAN20に送信する。これによって、ウォッチドッグタイマー回路101の故障を外部に通知することができる。故障情報データ送信部2002は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
故障情報データDT10の送信先は、たとえば図示のようにECU11であってもよい。ECU11は、故障情報データDT10を受信して警告灯30を点灯させる。なお、この例では警告灯30を点灯させるための信号として故障情報データDT10を用いているが、警告灯30を点灯させるための信号は故障情報データDT10に限定されず、他の形式または内容を有する信号であってもよい。このようにして警告灯30を点灯させることにより、ユーザーはウォッチドッグタイマー回路101の故障を知ることができる。
また、故障情報データDT10の送信先は、たとえばOBDコネクター31を介して接続された診断ツール2であってもよい(図1参照)。このようにすると、診断ツール2において、ウォッチドッグタイマー回路101の故障に関する情報を用い、さらなる診断処理を実行することができる。
故障情報記録部2003は、ウォッチドッグタイマー回路故障初期診断部2001によってウォッチドッグタイマー回路101が異常である(すなわち故障している)と診断された場合に、メモリアクセス部202を介して故障情報データDT10を不揮発性メモリ102に書き込む。これによって、ウォッチドッグタイマー回路101の故障に関する詳細な情報を長期的に保存することができ、任意のタイミングで参照することができる。故障情報記録部2003は、マイクロコンピューター100の記憶手段に記憶されたプログラムをマイクロコンピューター100の演算手段が実行することにより実現されるものであってもよい。
図5は、ECU10の動作を示すフローチャートである。この図は、とくにマイクロコンピューター100の動作を表すものである。図5において、2個連続したイコール記号「==」は分岐条件の判断処理または分岐条件が満たされている状態を表す。図5の動作は、マイクロコンピューター100に電源が投入されることに応じて、ステップS100から開始される。以降の処理は次のようになる。
ステップS100:マイクロコンピューター100に電源が投入される。
ステップS101:イグニッションスイッチステータス検出部1000がイグニッションスイッチIGNの状態を検知する。イグニッションスイッチIGNの状態がOFFであれば、ステップS102に移る。イグニッションスイッチIGNの状態がONであれば、ステップS103に移る。
ステップS101:イグニッションスイッチステータス検出部1000がイグニッションスイッチIGNの状態を検知する。イグニッションスイッチIGNの状態がOFFであれば、ステップS102に移る。イグニッションスイッチIGNの状態がONであれば、ステップS103に移る。
ステップS102:電源OFF部1002が、マイクロコンピューター100の電源をOFFにする。
ステップS103:ウォッチドッグタイマー回路故障初期診断部2001が、メモリアクセス部202を介して、不揮発性メモリ102に保存されていたウォッチドッグタイマー回路異常フラグWDF10の値を取得する。
ステップS103:ウォッチドッグタイマー回路故障初期診断部2001が、メモリアクセス部202を介して、不揮発性メモリ102に保存されていたウォッチドッグタイマー回路異常フラグWDF10の値を取得する。
ステップS104:ウォッチドッグタイマー回路故障初期診断部2001が、ウォッチドッグタイマー回路異常フラグWDF10の値に基づいて、ウォッチドッグタイマー回路101の故障の有無を診断する。ウォッチドッグタイマー回路異常フラグWDF10が異常であれば、ステップS105に移る。これは、ウォッチドッグタイマー回路101に故障があると判定することに対応する。一方、ウォッチドッグタイマー回路異常フラグの値が正常であれば、ステップS107に移る。これは、ウォッチドッグタイマー回路101に故障がないと判定することに対応する。
ステップS105:故障情報データ送信部2002が、車載LAN20を介して、ECU11に故障情報データDT10を送信する。
ステップS106:故障情報記録部2003が、メモリアクセス部202を介して、故障情報を不揮発性メモリ102に記録する。
ステップS106:故障情報記録部2003が、メモリアクセス部202を介して、故障情報を不揮発性メモリ102に記録する。
ステップS107:マイクロコンピューター100の通常処理を実施する。通常処理とは、たとえば車両の走行に係る処理を含む。ステップS107の実行中、ウォッチドッグパルス出力部1004はウォッチドッグパルスの出力を継続する。
ステップS108:ステップS107の実行中に、イグニッションスイッチステータス検出部1000が、イグニッションスイッチIGNの状態がOFFとなったことを検出する。これに応じて、マイクロコンピューター100は終了シーケンスの実行を開始し、ステップS109に移る。
ステップS108:ステップS107の実行中に、イグニッションスイッチステータス検出部1000が、イグニッションスイッチIGNの状態がOFFとなったことを検出する。これに応じて、マイクロコンピューター100は終了シーケンスの実行を開始し、ステップS109に移る。
ステップS109:マイクロコンピューター100が終了シーケンスの実行を開始すると、ウォッチドッグタイマー回路異常フラグ設定部2000が、メモリアクセス部202を介して、不揮発性メモリ102に記憶されているウォッチドッグタイマー回路異常フラグWDF10の値を正常に設定する。
ステップS110:ウォッチドッグパルス出力部1004は、ウォッチドッグパルスの出力を停止する。
ステップS111:ウォッチドッグパルス出力部1004がウォッチドッグパルスの出力を停止した後(たとえば停止の直後)、リセット監視タイマー管理部1005がリセット監視タイマーRT10のカウントダウンを開始する。これは、一定時間以内にリセットが発生するか否かを確認するための処理である。
ステップS110:ウォッチドッグパルス出力部1004は、ウォッチドッグパルスの出力を停止する。
ステップS111:ウォッチドッグパルス出力部1004がウォッチドッグパルスの出力を停止した後(たとえば停止の直後)、リセット監視タイマー管理部1005がリセット監視タイマーRT10のカウントダウンを開始する。これは、一定時間以内にリセットが発生するか否かを確認するための処理である。
ステップS112:リセット監視タイマーRT10が0になってもマイクロコンピューター100がリセットされていなければ、ステップS113に移る。これは、ウォッチドッグタイマー回路101に異常があると判定することに対応する。一方、リセット監視タイマーRT10が0までカウントダウンしていなければ、リセット信号の受信を待つためにステップS114に移る。
ステップS113:ウォッチドッグタイマー回路異常フラグ設定部2000が、メモリアクセス部202を介して、不揮発性メモリ102に記憶されているウォッチドッグタイマー回路異常フラグWDF10の値を異常に設定する。そして、ステップS115に移る。
ステップS114:ウォッチドッグタイマー回路101からリセット信号が出力されたら、マイクロコンピューターをリセットするため、ステップS101に移る。リセット信号が出力されていなければ、ステップS112に移る。
ステップS114:ウォッチドッグタイマー回路101からリセット信号が出力されたら、マイクロコンピューターをリセットするため、ステップS101に移る。リセット信号が出力されていなければ、ステップS112に移る。
ステップS115:終了制御部1003が、マイクロコンピューター100の終了処理が完了したかを確認する。終了処理が完了していれば、マイクロコンピューター100の電源をOFFにするために、ステップS102に移る。終了処理が完了していなければ、ステップS115において終了処理完了を待つ。
1:車両全体システム、2:診断ツール、10:ECU(電子制御装置)、11:ECU、12:ECU、13:ECU、DT10:故障情報データ(故障情報)、20:車載LAN(車載通信網)、30:警告灯、31:OBDコネクター、IGN:イグニッションスイッチ、100:マイクロコンピューター(コンピューター)、101:ウォッチドッグタイマー回路、102:不揮発性メモリ、200:マイクロコンピューター終了処理部(コンピューター終了処理部)、201:ウォッチドッグタイマー回路故障診断部(故障診断部)、202:メモリアクセス部、300:リセット信号出力部、301:ウォッチドッグパルス受信部、400:故障情報受信部、401:点灯部、1000:イグニッションスイッチステータス検出部、1001:ブート初期化部、1002:電源OFF部、1003:終了制御部、1004:ウォッチドッグパルス出力部、1005:リセット監視タイマー管理部、RT10:リセット監視タイマー、1006:リセット部、2000:ウォッチドッグタイマー回路異常フラグ設定部、2001:ウォッチドッグタイマー回路故障初期診断部、2002:故障情報データ送信部、2003:故障情報記録部、WDF10:ウォッチドッグタイマー回路異常フラグ(異常フラグ)、WDFC(CRC計算値)。
Claims (8)
- コンピューターと、不揮発性メモリと、前記コンピューターを監視するウォッチドッグタイマー回路とを備える、電子制御装置であって、
前記コンピューターは、
‐前記コンピューターの終了処理を実行するコンピューター終了処理部と、
‐前記ウォッチドッグタイマー回路が故障しているか否かを診断する故障診断部と、を備え、
前記コンピューター終了処理部は、前記コンピューターの終了処理が実行されることに応じて、前記ウォッチドッグタイマー回路へのパルスの出力を停止させ、
前記故障診断部は、前記パルスの出力が停止されてから所定時間が経過しても前記ウォッチドッグタイマー回路からリセット信号が出力されなかった場合に、前記ウォッチドッグタイマー回路に異常が発生したことを示す異常情報を前記不揮発性メモリに書き込む、電子制御装置。 - 請求項1に記載の電子制御装置において、
前記コンピューター終了処理部は、
‐前記ウォッチドッグタイマー回路からリセット信号を受信することに応じて、前記コンピューターをリセットするリセット部と、
‐イグニッションスイッチの状態を検出するイグニッションスイッチステータス検出部と、
‐前記コンピューターの初期化処理中に、前記イグニッションスイッチの状態がOFFであることが検出された場合に、前記コンピューターの電源をOFFにする、ブート初期化部と、を備える、電子制御装置。 - 請求項1に記載の電子制御装置において、
前記コンピューター終了処理部は、
‐前記ウォッチドッグタイマー回路に対して前記パルスを出力するウォッチドッグパルス出力部と、
‐前記パルスの出力が停止されてからの経過時間を監視する、リセット監視タイマー管理部と、
‐前記経過時間が所定値に達した場合に、前記コンピューターを強制終了させる終了制御部と、を備える、電子制御装置。 - 請求項1に記載の電子制御装置において、
前記コンピューターは、前記不揮発性メモリに対してアクセスを実行するメモリアクセス部を備え、
前記メモリアクセス部は、
‐前記異常情報として、異常フラグと、前記異常フラグに関するCRC計算値とを関連付けて前記不揮発性メモリに書き込み、
‐前記異常情報を読み出す際に、前記異常フラグおよび前記CRC計算値を照合する、電子制御装置。 - 請求項1に記載の電子制御装置において、
前記コンピューターは、前記不揮発性メモリに対してアクセスを実行するメモリアクセス部を備え、
前記メモリアクセス部は、
‐前記異常情報を、前記不揮発性メモリの第1領域および第2領域それぞれに書き込み、
‐前記異常情報を前記不揮発性メモリから読み出す際に、前記第1領域から読み出した前記異常情報と、前記第2領域から読み出した前記異常情報との一致性を検証する、電子制御装置。 - 請求項1に記載の電子制御装置において、
前記故障診断部は、ウォッチドッグタイマー回路故障初期診断部を備え、
前記ウォッチドッグタイマー回路故障初期診断部は、前記コンピューターの起動時に、前記不揮発性メモリに前記異常情報が記憶されていた場合に、前記ウォッチドッグタイマー回路が故障していると診断する、電子制御装置。 - 請求項1に記載の電子制御装置において、
前記故障診断部は、
‐前記ウォッチドッグタイマー回路が故障していると診断された場合に、故障情報を車載通信網に送信する故障情報データ送信部と、
‐前記ウォッチドッグタイマー回路が故障していると診断された場合に、前記故障情報を前記不揮発性メモリに書き込む故障情報記録部と、を備える、電子制御装置。 - 請求項1に記載の電子制御装置において、前記ウォッチドッグタイマー回路が故障していると診断された場合に、前記故障診断部は、警告灯を点灯させるための信号を出力する、電子制御装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202080030076.2A CN113711209A (zh) | 2019-04-25 | 2020-04-03 | 电子控制装置 |
US17/604,968 US11726853B2 (en) | 2019-04-25 | 2020-04-03 | Electronic control device |
JP2021515936A JPWO2020217928A1 (ja) | 2019-04-25 | 2020-04-03 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-083617 | 2019-04-25 | ||
JP2019083617 | 2019-04-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020217928A1 true WO2020217928A1 (ja) | 2020-10-29 |
Family
ID=72942335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/015288 WO2020217928A1 (ja) | 2019-04-25 | 2020-04-03 | 電子制御装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11726853B2 (ja) |
JP (1) | JPWO2020217928A1 (ja) |
CN (1) | CN113711209A (ja) |
WO (1) | WO2020217928A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI787057B (zh) * | 2021-09-30 | 2022-12-11 | 財團法人工業技術研究院 | 車用控制裝置及其方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11167505A (ja) * | 1997-12-03 | 1999-06-22 | Honda Motor Co Ltd | 電子制御装置 |
WO2009098777A1 (ja) * | 2008-02-08 | 2009-08-13 | Fujitsu Limited | バックアップ方法、格納方法、及びディスクアレイ装置 |
JP2012168728A (ja) * | 2011-02-14 | 2012-09-06 | Mitsumi Electric Co Ltd | 保護モジュール及び該保護モジュールにおける状態情報管理方法 |
WO2017006762A1 (ja) * | 2015-07-07 | 2017-01-12 | 日立オートモティブシステムズ株式会社 | 車両用制御装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08142794A (ja) | 1994-11-25 | 1996-06-04 | Kansei Corp | 暴走検知回路の診断回路 |
JPH10171501A (ja) * | 1996-12-10 | 1998-06-26 | Jidosha Denki Kogyo Co Ltd | ウオッチドッグ付制御回路 |
JP3616367B2 (ja) * | 2001-10-24 | 2005-02-02 | 三菱電機株式会社 | 電子制御装置 |
JP5476238B2 (ja) * | 2010-07-12 | 2014-04-23 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
JP2012069032A (ja) * | 2010-09-27 | 2012-04-05 | Hitachi Cable Ltd | 情報処理装置 |
JP2012183877A (ja) * | 2011-03-04 | 2012-09-27 | Calsonic Kansei Corp | 車両用乗員保護システムの検知処理装置 |
JP5739290B2 (ja) * | 2011-09-14 | 2015-06-24 | 株式会社ケーヒン | 電子制御装置 |
JP5951429B2 (ja) * | 2012-02-01 | 2016-07-13 | ルネサスエレクトロニクス株式会社 | ウォッチドッグ回路、電源ic、及びウォッチドッグ監視システム |
US9880894B2 (en) * | 2015-07-08 | 2018-01-30 | Microsoft Technology Licensing, Llc | High availability and energy-efficient watchdog timer |
CN109062721A (zh) * | 2018-07-20 | 2018-12-21 | 北斗星通(重庆)汽车电子有限公司 | 一种看门狗检测车载多媒体死机复位的方法 |
-
2020
- 2020-04-03 US US17/604,968 patent/US11726853B2/en active Active
- 2020-04-03 WO PCT/JP2020/015288 patent/WO2020217928A1/ja active Application Filing
- 2020-04-03 CN CN202080030076.2A patent/CN113711209A/zh active Pending
- 2020-04-03 JP JP2021515936A patent/JPWO2020217928A1/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11167505A (ja) * | 1997-12-03 | 1999-06-22 | Honda Motor Co Ltd | 電子制御装置 |
WO2009098777A1 (ja) * | 2008-02-08 | 2009-08-13 | Fujitsu Limited | バックアップ方法、格納方法、及びディスクアレイ装置 |
JP2012168728A (ja) * | 2011-02-14 | 2012-09-06 | Mitsumi Electric Co Ltd | 保護モジュール及び該保護モジュールにおける状態情報管理方法 |
WO2017006762A1 (ja) * | 2015-07-07 | 2017-01-12 | 日立オートモティブシステムズ株式会社 | 車両用制御装置 |
Also Published As
Publication number | Publication date |
---|---|
US11726853B2 (en) | 2023-08-15 |
US20220222135A1 (en) | 2022-07-14 |
CN113711209A (zh) | 2021-11-26 |
JPWO2020217928A1 (ja) | 2020-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3138709B2 (ja) | 車両用電子制御装置の自己故障診断方法及び装置 | |
US5768496A (en) | Method and apparatus for obtaining a durable fault log for a microprocessor | |
US6076172A (en) | Monitoting system for electronic control unit | |
JP6432356B2 (ja) | 電子制御装置 | |
WO2023024895A1 (zh) | 充电座和充电座升级的方法、装置、设备、存储介质 | |
WO2020217928A1 (ja) | 電子制御装置 | |
US8412412B2 (en) | Vehicle communication system and electronic control unit | |
CN112763813A (zh) | 用于检测车辆的电池放电原因的设备和方法 | |
US10831578B2 (en) | Fault detection circuit with progress register and status register | |
JP3915411B2 (ja) | 車両用電子制御装置 | |
US20190332506A1 (en) | Controller and function testing method | |
JP2015171853A (ja) | 自動車用電子制御装置 | |
JP2002014726A (ja) | 電子制御装置 | |
JP2020116972A (ja) | 電子制御装置 | |
JP2004142511A (ja) | 車両用電子制御装置,電子制御ユニット,プログラム及び記録媒体 | |
WO2013073009A1 (ja) | マイコンシステム、監視マイコン | |
JP2019087177A (ja) | 監視システム | |
WO2023223940A1 (ja) | 車載装置、プログラム及び情報処理方法 | |
JPH09160840A (ja) | バス通信装置 | |
JP2002047998A (ja) | 車両用制御装置 | |
JP7176444B2 (ja) | 車両電子制御装置、要求装置、及び故障検出システム | |
JP7291541B2 (ja) | 制御装置および監視方法 | |
KR20130003976A (ko) | 전자 제어 조향장치 전자 제어 유닛 및 이를 이용한 러닝 리셋 처리 방법 | |
JP2009282849A (ja) | マイクロコンピュータ | |
JP5029123B2 (ja) | 電子制御装置及び通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20796336 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021515936 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20796336 Country of ref document: EP Kind code of ref document: A1 |