Vehicle diagnosis system

Abstract: In a vehicle diagnosis system in which a diagnosis unit (200) is connected to a control unit (100), the control unit determines (800) whether or not there is a code read request from the diagnosis unit. When there is the request, it further determines (810) whether or not code erase is in execution. When code erase is not in execution, an abnormality code stored in the standby RAM region of its CPU is searched for (830) and the result is transmitted (820) to the diagnosis unit. When code erase is in execution, on the other hand, the data after code erase (no abnormality code) is transmitted to the diagnosis unit. Thus, during code erase operation, the abnormality data before erase is prevented from being transmitted to the diagnosis unit. Further, in case of a RAM-value read request is made from a main CPU (110) to other CPU (120, 130) in the controller, it is checked (1710) whether a requested address value from the main CPU to the other CPU agrees with the address value transmitted from the other CPU to the main CPU. When the address values agree, the flag XA4ANS is set (1730). After a prescribed interval from this flag setting, the RAM value corresponding to the requested address are responsively sent out (1760) to the diagnosis unit. Therefore, transmission of erroneous infortion to the diagnosis unit can be prevented without fail.

Description: BACKGROUND OF THE INVENTION (Field of the Invention) The present invention relates to a vehicle diagnosis system which conducts failure diagnosis and the like of a vehicle, and more particularly the invention is directed to prevention of erroneous abnormality information from a vehicle control unit to a diagnosis unit. (Description of Related Art) There is conventionally available a vehicle diagnosis system which detects various abnormalities in sensors, actuators or the like by means of a controller (vehicle control unit) mounted on a vehicle, stores abnormality information (code or data) about detected abnormalities, and reads out or erases the abnormality information stored in the controller by means of a diagnosis unit provided externally to the controller. In the above-mentioned vehicle diagnosis system, when the diagnosis unit issues a read request of the abnormality information during execution of erase of the abnormality information in the controller in response to an erase request of the abnormality information from the diagnosis unit, the abnormality information before erasing is returned or transmitted to the diagnosis unit. In the controller, it is the usual practice to conduct processing between the controller and the above-mentioned diagnosis unit and various processing operations for control of the vehicle such as engine control and transmission control within the same controller. Therefore, the controller is constructed by a plurality of CPUs (central processing units), and direct memory access (hereinafter simply referred to as "DMA") is used for data communication between the individual CPUs. In such a case, the problem mentioned above apparently appears, because the CPU effecting communication with the diagnosis unit cannot determine as to whether the data transmitted from the other CPUs through DMA is the one before or after erasing, with such data alone. More particularly, in order to improve performance of the controller, various controls are divided to be shared by a plurality of CPUs and the abnormality information, control information (RAM-value stored in RAM of the controller), is transmitted and received among the CPUs mutually by the use of direct memory access function (DMA). In the event the control information of the controller constituted by a plurality of CPUs are read out by the diagnosis unit upon the read request from the diagnosis unit, a main CPU which transmits and receives data with the diagnosis unit first transmits by DMA an address value of RAM corresponding to the requested control information to a corresponding CPU. Then, the corresponding CPU responsively sends out to the main CPU the control information corresponding to the address value transmitted by DMA along with the address value. When the address value sent from the corresponding CPU by DMA agrees with the requested address value, the main CPU judges that the responding process by the corresponding CPU has been completed and sends out the control information to the diagnosis unit. However, in case the data transmission is performed by DMA the DMA transmits to the corresponding CPUs sequentially the data (address value, control values and the like) stored in the DMA region at every prescribed interval (4 ms, for instance). As a result, data transmission cannot be managed by software. Therefore, even when the main CPU confirms that the address value transmitted from the corresponding CPU by DMA has agreed with the requested address value, there arises a case in which the control information at that moment does not correspond to the address value and there remains a possibility that erroneous information is transmitted to the diagnosis unit. Further information regarding the prior art can be found in 37th IEEE Vehicular Technology Conference, 1-3 June 1987, Tampa, FL, USA, pages 343-350, XP002024017, Schurk, H.E.; Fournell, H.D.: "Onboard diagnosis of electronics: A contribution to vehicle reliability." This document discloses an on-board diagnosis system comprising a plurality of ECU's (electronic control units), each of which typically comprises signal processing components, signal interfacing components, signal transportation components and signal pick-up and execution components. Sensors and actuators are the interfaces of the ECO. Faults that are detected are stored either in internal, single-chip RAM, an external additional RAM or in an EEPROM, depending on the design of the ECU. SUMMARY OF THE INVENTION In view of the above-mentioned drawbacks, it is an object of the present invention to provide a vehicle diagnosis system which prevents the outputting of erroneous abnormality information. This object is achieved by the invention, as defined in claim 1. BRIEF DESCRIPTION OF THE DRAWINGS In the accompanying drawings: Fig.1 is a configuration diagram of a vehicle diagnosis system of an embodiment of the present invention; Fig. 2 is a configuration diagram of RAM of each CPU; Fig.3 is a flowchart illustrating processing at a diagnosis unit; Figs. 4A through 4C are schematic illustrations illustrating data format transmitted in response to various requests; Fig. 5 is a flowchart illustrating processing for storing a DIAG code corresponding to an abnormality in the standby RAM region; Fig. 6 is a flowchart illustrating abnormality detection of a water temperature sensor; Fig. 7 is a flowchart illustrating processing by a main CPU for a code read request; Fig. 8 is a flowchart illustrating processing by the main CPU for a code erase request; Fig. 9 is a flowchart illustrating processing for making an increment of a counter CNT at prescribed intervals; Fig. 10 is a flowchart illustrating code erase operation by the other CPUs for a code erase request from the main CPU; Fig. 11 is a flowchart illustrating processing by the main CPU for a RAM-value read request from the diagnosis unit; Fig. 12 is a flowchart illustrating processing for checking up the status of transmission of RAM-values from the other CPUs and sending the result to the diagnosis unit as a response; Fig. 13 is a flowchart illustrating processing by the other CPUs for a RAM-value read request from the diagnosis unit; Fig. 14 is a schematic representation illustrating a layout of the DMA region conducting transmission to the main CPU for a RAM-value read request; and Fig. 15 is a flowchart illustrating processing by software regarding DMA communication executed by the CPUs. DETAILED DESCRIPTION Fig. 1 is a configuration diagram illustrating a vehicle diagnosis system comprising a controller (vehicle control unit) 100 and a diagnosis unit 200. The controller 100 and the diagnosis unit 200 are connectable by a bus 300. While a single controller is connected to the diagnosis unit 200 in this embodiment, a plurality of controllers may be connected to the single diagnosis unit. The controller 100 has such functions as engine control, transmission control and abnormality detection which are known well in the art. The controller 100 has three CPUs, namely, a main CPU 110 and other CPUs 120 and 130 which conduct various kinds of control and data transmission by direct memory access (DMA). The controller 100 is also provided with a communication IC 140 which receives and transmits various data from and to the diagnosis unit 200, and a power supply IC 150 which converts a voltage +B (= 12 V) fed from a vehicle-mounted battery 160 into a voltage Vcc (= 5 V) and supplies the same to the individual CPUs 110, 120 and 130. Upon input of signals from sensors which detect various states of the vehicle, the controller 100 issues control signals to various actuators which control the vehicle on the basis of the sensor signals. Each of the individual CPUs 110, 120 and 130 is a one-chip microcomputer having built-in ROM and RAM. Fig. 2 is a configuration diagram of RAMs for the CPUs 110, 120 and 130. The regions (1) and (3) are RAM regions in which various operation data or control information and the like are stored. The region (5) in the RAM region (3) is a direct memory access region (hereinafter abbreviated as "DMA region"). In this DMA region (5), regions (5)' and (5)" are a DMA transmitting region and a DMA receiving region, respectively. Data stored in this DMA transmitting region (5)' is transmitted at prescribed intervals (4 msec, for example) to the DMA receiving region (5)" of other CPU. The data received in this DMA receiving region (5)" is sent to the DMA transmitting region (5)' in the same DMA region (5). Each of the CPUs 110, 120 and 130 transmits data received therein through DMA in the ring manner (in a sequence, for example, CPU 110 ⇒ CPU 120 ⇒ CPU 130 ⇒ CPU 110) to the other CPUs. The regions (2) and (4) are standby RAM regions (hereinafter abbreviated as "SRAM regions") keeping storage thereof even when the ignition switch is turned off, and stores vehicle abnormality information and the like. Now the diagnosis unit 200 is described below in detail. Fig. 3 is a flowchart illustrating processing in the diagnosis unit 200 when a diagnosis operator reads out various pieces of information, abnormality or control information, stored in the controller 100 through the diagnosis unit 200. The diagnosis unit 200 is started at prescribed intervals. Presence of a processing request from the diagnosis operator is detected at step 500. When there is no processing request, this processing comes to an end. When there is a processing request, the kind of that processing request is detected at step 510. Kinds of processing request include a "code read request" requesting for reading out a diagnosis (DIAG) code detected by the controller 100, a "code erase request" requesting for erasing the DIAG code stored in the controller 100, and a "RAM-value read request" for reading out control information (RAM-value) of the desired address of each of the CPUs 110, 120 and 130. When the processing request as detected at the step 510 is a "code read request," the step 520 is to make an output of a code read request to the controller 100. The transmitted data has a construction as shown in Fig. 4A, where (a) is a header which is the information for judging whether or not a datum transmitted from the diagnosis unit 200 to the controller 100 is actually addressed thereto, and (b) is a datum representing the code read request. If a processing request issued by the diagnosis operator as detected at the step 510 is a "code erase request", the code erase request is sent to the controller 100 at step 530. The transmitted data has a construction as shown in Fig. 4B, where (c) is a datum representing a code erase request. When the processing request as detected at the step 510 is a "RAM-value read request," step 540 is to issue an output of a RAM-value read request to the controller 100. More specifically, information specifying from which of the CPUs 110, 120 and 130 in the controller 100 the RAM-value is to be read out is transmitted. The transmitted data has a construction as shown in Fig. 4C, where (d) is a datum representing the RAM-value read request, (e) is a datum representing the number of the covered CPU, and (f) is a datum showing the requested address value. Now, abnormality detection and abnormality information storing operations carried out by the controller 100 are described in the following. Fig. 5 is a flowchart illustrating, when an abnormality is detected through abnormality detection as described later, storing operation of a DIAG code corresponding to that particular abnormality in the above-mentioned SRAM regions (2) and (4). This is started at prescribed intervals and this processing is executed at each of the CPUs 110, 120 and 130. Step 6oo is to detect whether or not the voltage Vcc supplied to the CPUs 110, 120 and 130 is up to a prescribed voltage, and whether or not voltage +B of the vehicle-mounted battery 160 is a low voltage of up to a prescribed voltage. Because a low voltage may lead to an erroneous operation of the sensor, the actuator or the controller 100 (erroneous update of data in the SRAM regions (2) and (4), for example), storage of the DIAG code into the SRAM regions (2) and (4) is discontinued, thus completing this processing. In a non-low-voltage state, step 610 judges or detects whether or not an abnormality has been detected during the abnormality detection described later. This detects, for example, the state of the flag XDOO set in the usual RAM regions (1) and (3) indicating that the water temperature sensor is abnormal. When no abnormality is detected, this processing shall be ended. When an abnormality is detected, step 620 copies the DIAG code stored in the usual RAM regions (1) and (3) into the SRAM regions (2) and (4) to end the processing. For example, the established flag XEOO is set in the SRAM regions (2) and (4), which indicates that the water temperature sensor is abnormal. Fig. 6 is a flowchart illustrating detection of an abnormality of the water temperature sensor as a typical example of abnormality detection. It is started every time an output value of the water temperature sensor is A/D (analog-to-digital) converted. Various abnormality detecting operations are shared among the CPUs 110, 120 and 130 for execution. Step 700 is to read in the A/D-value of a signal from the water temperature sensor. Whether or not the A/D-value is abnormal is detected at step 710. Manners of detection include, for example, determining as an abnormality a case where an A/D-value is not within a prescribed range. If normal, a normal processing (for example, writing the A/D-value in a prescribed RAM region) is executed at step 720 to end the processing. When abnormal, a fail-safe processing (for example, writing a prescribed value in a prescribed RAM region) is executed at step 730, and then a flag XDOO is set at the step 740 to end the processing. The processing done in response to a code read request in the controller 100 is now described. Fig. 7 is a flowchart illustrating processing carried out by the CPU 110 of the controller 100 for a code read request from the diagnosis unit 200, which is started at prescribed intervals. The presence of a code read request from the diagnosis unit 200 is detected at step 800. More specifically, this detection is accomplished through determination as to whether or not data transmitted from the diagnosis unit 200 has a construction as shown in Fig. 4A. When there is no code read request, this processing comes to an end. When there is a code erase request, step 810 detects whether or not code erase is currently in execution. More specifically, this detection is based on whether or not count value of a counter CNT described later is at 500 msec or more. When the count value of the counter CNT is 500 msec or less, i.e., when code erase is in execution, information showing absence of an abnormality code, i.e., information after code erase is returned or sent out to the diagnosis unit 200 at step 820. When the count value of the counter CNT is 500 msec or more, i.e., when code erase is not in execution, the DIAG code detected by the CPU 110 and stored in the SRAM regions (2) and (4) and the DIAG code detected by the CPUs 120 and 130 and stored in the DMA region (5) are searched, the result is returned to the diagnosis unit 200. Now, the processing for the code erase request at the controller 100 is as follows. Fig. 8 is a flowchart illustrating processing carried out by the CPU 110 of the controller 100 for a code erase request issued by the diagnosis unit 200. This is started at prescribed intervals (every 65 msec, for example). Step 900 is to detect the presence of a code erase request from the diagnosis unit 200 during the period from the preceding start to the current one. More specifically, this detection is based on determination whether or not data transmitted from the diagnosis unit 200 has a construction as shown in Fig. 4B. When there is no code erase request, the process proceeds to step 920. When there is a code erase request, the counter CNT which counts the time lapse from the start of code erase at the step 910, and then the process proceeds to step 920. The step 920 detects whether or not the count value of the counter CNT is 500 msec or more. When the count value of the counter CNT is 500 msec or less, i.e., when code erase is judged to be in execution by the other CPUs 120 and 130, step 930 detects whether or not the condition is of a low voltage. If the condition is not of a low voltage, the process proceeds to step 950. If a low voltage is detected, the counter CNT is cleared at step 940, and the process proceeds to the step 950. At this point, the counter CNT is cleared because a low voltage may cause an erroneous operation in data update of the SRAM regions (2) and (4) in this embodiment, as described above (see Fig. 5). Code erase is executed at the step 950. The code erase request is transmitted to the other CPUs 120 and 130 at step 960, thus coming to an end of the processing. More specifically, data representing the code erase request is written in a prescribed address of the DMA region (5). When the count value of the counter CNT is 500 msec or more at the step 920, i.e., when code erase by the other CPUs 120 and 130 is judged to have been completed, the code erase request written in the prescribed address of the DMA region (5) is cleared at step 970, and this processing comes to an end. Fig. 9 is a flowchart illustrating processing for causing an increment of the above-mentioned counter CNT at prescribed intervals (every 65 msec, for example). This processing is completed by giving an increment (CNT ← CNT+1) to the counter CNT at step 1000. Fig. 10 is a flowchart illustrating code erase operation conducted by the other CPUs 120 and 130 for the code erase request from the CPU 110, and this is started at prescribed intervals (every 65 msec, for example). A code erase request is detected at the step 1100. More specifically, this is the detection of a prescribed address value of the DMA region transmitted from the CPU 110, i.e., the results of the steps 960 and 970 shown in Fig. 8. When there is no code erase request, this process comes to an end. If there is a code erase request, code erase is executed at step 1110 to finish this processing. Processing by the CPU 110 of the controller 100 is now described below. Fig. 11 is a flowchart illustrating processing by the CPU 110 for a RAM-value read request from the diagnosis unit 200, and this is started at prescribed intervals (every 16 msec, for example). Step 1600 is to detect whether or not there is already another RAM-value read request and data input thereof being waited for. When data input is being waited for, the process proceeds to step 1670. If data input is not waited for, then the presence of a RAM-value read request from the diagnosis unit 200 is detected at step 1610. More specifically, this detection is based on determination whether or not the data transmitted from the diagnosis unit 200 has the construction as shown in Fig. 4c. When there is no RAM-value read request, on the other hand, this processing comes to an end. When it is determined at step 1610 that there is a RAM-value read request, the step 1620 is performed to detect whether or not the number and the required address value of the covered CPU of the transmitted data of the RAM-value read request are in prescribed formats. If not in prescribed formats, the data transmitted from the diagnosis unit 200 is judged to be abnormal, and this processing is completed. If in prescribed formats, step 1630 detects whether or not the number of the CPU covered by the RAM-value read request is 1 as corresponding to the CPU 110. When the CPU in question has the number 1 at step 1630, i.e., when the CPU in question is the CPU 110, the process proceeds to step 1640, and the RAM-value of requested address is loaded on a transmission buffer as a response to the diagnosis unit 200. When the CPU in question has the number 2 or 3 at the step 1630, i.e., when the CPU in question is judged not to be the CPU 110, on the other hand, the RAM-value read request to the CPU 120 or 130 is executed at steps 1650 and 1660. Then, the status of transmission from the CPU 120 or 130 is checked at step 1670 as a response to the diagnosis unit 200 (details are described later). Fig. 12 is a flowchart illustrating processing as a response to the diagnosis unit 200 through checkup of the status of transmission of the RAM-value from the CPU 120 or 130 at the step 1670 in Fig. 11. Step 1700 is to detect whether or not the timing of returning or sending out a response to the diagnosis unit 200 is appropriate. More specifically, this detection is based on determination of the status of a flag XA4ANS set at a timing when the address value requested by the CPU 110 to the CPU 120 or 130 agrees with the address value transmitted from the CPU 120 or 130 to the CPU 110. If the timing is not that of the flag XA4ANS = 0, i.e., that currently corresponding to the controller 100, the requested address value is checked with the transmitted address value at step 1710. The following step 1720 is to detect whether or not the requested address value agrees with the transmitted address value. If not in agreement, the process proceeds to step 1770. If in agreement, the above-mentioned flag XA4ANS is set at step 1730. When the timing is that a prescribed period of time (16 msec, for example) has passed after agreement between the requested address value and the transmitted address value, as expressed by the flag XA4ANS = 1 at the step 1700, this currently corresponding to the controller 100, the response is processed at the steps 1740 to 1770. The RAM-value received from the covered CPU is first loaded onto the transmission buffer at step 1740. Then, the requested address transmission region of the DMA region (5) is cleared at step 1750. Subsequently, the data in the transmission buffer is returned to the diagnosis unit 200 as a response at step 1760, and the process proceeds to the step 1770. This processing is completed by resetting the flag XA4ANS at the step 1770. Now, processing at the CPUs 120 and 130 of the controller 100 is described below. Fig. 13 is a flowchart illustrating processing at the CPUs 120 and 130 for a RAM-value read request from the diagnosis unit 200, and this is started at prescribed intervals (every 16 msec, for example). The same processing is effected in the CPUs 120 and 130. Step 1800 is to detect the presence of a RAM-value read request. More specifically, this detection is based on determination whether or not a requested address representing a RAM-value read request has been transmitted from the CPU 110 to the prescribed address of the DMA region (5). When the requested address is $0000, a RAM-value read request is judged to be non-existent. If the requested address is $0000, i.e., there is no RAM-value read request, this processing comes to an end. When the requested address is other than $0000, i.e., when there is a RAM-value read request, transmission is made to the CPU 110 at steps 1810 and 1820. Fig. 14 illustrates a layout of the DMA region (5) conducting transmission to the CPU 110 for a RAM-value read request. In this layout, the address (H), the address (L), the data (H) and the data (L) are transmitted in this order by DMA to the CPU 110 at prescribed intervals (every 4 msec, for example). (H) represents the first eight bits of the 16-bit data, and (L) represents the latter eight bits of the 16-bit data. The RAM-values of the requested address, i.e., the data (H) and the data (L), are written into the DMA region (5) at the step 1810. The requested address values, i.e., the address (H) and the address (L), are written into the DMA region (5) at the step 1820, to finish this processing. Now, processing regarding DMA communication at the CPUs 110, 120 and 130 is described below. Fig. 15 is a flowchart illustrating processing by software regarding DMA communication executed by each of the CPUs 110, 120 and 130, and this is started at prescribed intervals (every 4 msec, for example). At step 1900, DMA communication is started to complete this processing. More specifically, the leading address of the DMA region (5) is set as the pointer for DMA communication. Starting DMA communication is the only portion in which software participates in actual DMA communication, and after starting, hardware transmits data in the DMA region (5) sequentially to the other CPUs. In the above-mentioned embodiment, as described above and as shown in steps 810 to 830 of Fig. 7, when code erase is in execution upon code read request, an abnormality code is not searched from SRAM to transmit the result to the diagnosis unit, but the data after code erase (without an abnormality code) is transmitted to the diagnosis unit. When code erase is in execution upon code read request, therefore, it is possible to prevent the data before erase from being transmitted to the diagnosis unit. By this function, transmission of erroneous information to the diagnosis unit can be prevented. In the above-mentioned embodiment, when the presence of a RAM-value read request of the CPU 120 or 130, other than the CPU 110, at the step 1600 shown in Fig. 11 upon a RAM-value read request, the processing proceeds to that shown in Fig. 12. At the steps 1710 to 1730 shown in Fig. 12, the requested address value from the CPU 110 to the CPU 120 or 130 is checked up with the transmitted address value from the CPU 120 or 130 to the CPU 110 for agreement, and upon detection of agreement of the both address values, a flag XA4NAS is set. After the lapse of a prescribed period of time (16 ms) from setting of this flag, a RAM-value corresponding to the requested address is transmitted as a response to the diagnosis unit 200 at the steps 1740 to 1760. It is therefore possible to prevent erroneous information from being responded to the diagnosis unit 200 without fail. According to the construction and the functions of the vehicle diagnosis system of the present invention as described above, when a read request of an abnormality signal is issued by the diagnosis unit during erase execution of the abnormality information of the controller upon an erase request of the abnormality information, the abnormality information transmitting device transmits the abnormality information after erase. This permits, when a read request of abnormality information is issued by the diagnosis unit during erase execution of abnormality information in the controller for an erase request of abnormality information from the diagnosis unit, returning the abnormality information after erase to the diagnosis unit as a response, thus preventing transmission of erroneous information.

Claims: A vehicle diagnosis system comprising: storage means (RAM, Fig. 6) that stores abnormality information pertaining to various abnormalities of a vehicle that have been detected; abnormality information erasing means (950) that erases abnormality information stored in said storage means in response to an erase signal applied from diagnosis means (200); erase status detecting means (810) that detects whether erasure of abnormality information is in execution by means of said abnormality information erasing means (950); and abnormality information output means (820, 830) that, in response to a read signal applied from said diagnosis means (200), outputs information indicating the absence of a valid abnormality code when said erase status detecting means (810) detects that erasure of abnormality information is in execution, and that outputs abnormality information stored in said storage means (RAM) when said erase status detecting means (810) detects that erasure of abnormality information is not in execution. The vehicle diagnosis system of claim 1 further comprising: a controller (100) installed in said vehicle and comprising said storage means (RAM), said abnormality information erasing means (950) and said abnormality information output means (820, 830), said controller detecting said various abnormalities and executing said storage of information about such abnormalities in said storage means (RAM), wherein said diagnosis means (200) comprises a diagnosis unit (200) connectable to said controller (100), and said abnormality information output means (820, 830) outputs said indicating information or said abnormality information to said diagnosis unit (200), said diagnosis unit (200) comprising: read requesting means (520) to issue said read signal to request a read-out of the abnormality information stored in said storing means (RAM); and erase request means (530) to issue said erase signal to request erasure of the abnormality information stored in said storage means (RAM). A vehicle diagnosis system as claimed in claim 1 or 2, wherein said erase status detecting means (810) includes: measuring means (1000) which measures the elapsed time since reception of said erase signal from said diagnosis means (200); and erase status determining means (920) which determines whether said erase of abnormality information is in execution, in reference to the measured elapsed time. A vehicle diagnosis system as claimed in claim 3, wherein said measuring means includes: battery voltage detecting means that detects the battery voltage (+B) of a battery (160) of said vehicle; low voltage detecting means (930) which detects whether or not said battery voltage (+B) is up to a prescribed value; and clearing means (940) which clears the measured time when said low voltage detecting device detects that said battery voltage (+B) is up to the prescribed voltage. The vehicle diagnosis system of claim 2, wherein said controller (100) comprises a plurality of CPUs (110, 120, 130) including a main CPU (110), which control vehicle operation, detect said various abnormalities and conduct information communication with said diagnosis means (200), said storage means (RAM) comprises a plurality of storage devices (RAM) which are provided in said plurality of CPUs (110, 120, 130) and store said abnormality information pertaining to abnormalities detected by the individual (110, 120, 130) CPUs, and wherein said main CPU (110) includes: erase instruction output means (960) which outputs an abnormality information erase instruction to the other CPUs (110, 120, 130) in response to said erase signal from said diagnosis means (200); said erase status detecting means (810); and said abnormality information output means (820, 830). A vehicle diagnosis system as claimed in claim 5, wherein said each of said storage devices (RAM) includes: DMA means which transmits information individually stored through direct memory access to the other storage devices (RAM).

Inventors: IWAI AKIHITO, OGURO HIROKAZU, TAKABA KATSUMI, IWAI, AKIHITO, OGURO, HIROKAZU, TAKABA, KATSUMI
Applicants: DENSO CORP, DENSO CORPORATION
Application year: 1994
Main classification: G05B23
IPC codes: G05B23, G06F11