DE102017202282A1 - VEHICLE CONTROL DEVICE AND VEHICLE NETWORK WITH VEHICLE CONTROL DEVICE - Google Patents

VEHICLE CONTROL DEVICE AND VEHICLE NETWORK WITH VEHICLE CONTROL DEVICE Download PDF

Info

Publication number
DE102017202282A1
DE102017202282A1 DE102017202282.5A DE102017202282A DE102017202282A1 DE 102017202282 A1 DE102017202282 A1 DE 102017202282A1 DE 102017202282 A DE102017202282 A DE 102017202282A DE 102017202282 A1 DE102017202282 A1 DE 102017202282A1
Authority
DE
Germany
Prior art keywords
node
nodes
control
rewriting
control program
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
DE102017202282.5A
Other languages
German (de)
Other versions
DE102017202282B4 (en
Inventor
Kazuhiro Uehara
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 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 DE102017202282A1 publication Critical patent/DE102017202282A1/en
Application granted granted Critical
Publication of DE102017202282B4 publication Critical patent/DE102017202282B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Small-Scale Networks (AREA)

Abstract

Eine fahrzeugeigene Steuerungsvorrichtung wird geschaffen, die einen Ausführungsmodus von mehreren Knoten (10–40, 10a) in einem fahrzeugeigenen Steuerungssystem (100, 110, 120, 130) entscheidet, wobei die Knoten kooperieren und eine Steuerung zu einem Zeitpunkt eines Steuerungsmodus durchführen, wobei jeder der Knoten als den Ausführungsmodus den Steuerungsmodus, bei dem die Steuerung durch Ausführen eines Steuerungsprogramms durchgeführt wird, und einen Neuprogrammierungsmodus aufweist, bei dem ein Neuschreiben des Steuerungsprogramms durch Ausführen eines Neuprogrammierungsprogramms durchgeführt wird, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen. Die fahrzeugeigene Steuerungsvorrichtung enthält: einen Bestimmungsabschnitt (S11, S12, S12a–S12c), der bestimmt, ob sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben; und einen Entscheidungsabschnitt (S13, S14, S13a, S14a), der den Ausführungsmodus als den Steuerungsmodus entscheidet, wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus als den Neuprogrammierungsmodus entscheidet, wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben.An on-vehicle control device is provided which decides an execution mode of a plurality of nodes (10-40, 10a) in an on-vehicle control system (100, 110, 120, 130), the nodes cooperating and performing control at a timing of a control mode, each the node as the execution mode comprises the control mode in which the control is performed by executing a control program, and a reprogramming mode in which rewriting of the control program is performed by executing a reprogramming program without performing the control based on the control program. The on-vehicle control device includes: a determination section (S11, S12, S12a-S12c) that determines whether all nodes have completed rewriting the control program; and a decision section (S13, S14, S13a, S14a) that decides the execution mode as the control mode when the determination section determines that all the nodes have completed the rewrite of the control program and decides the execution mode as the reprogramming mode when the determination section does not determine that all nodes have finished rewriting the control program.

Figure DE102017202282A1_0001
Figure DE102017202282A1_0001

Description

Die vorliegende Erfindung betrifft eine fahrzeugeigene Steuerungsvorrichtung und ein fahrzeugeigenes Netzwerk, das die fahrzeugeigene Steuerungsvorrichtung enthält.The present invention relates to an on-vehicle control device and an in-vehicle network including the on-vehicle control device.

Als ein Beispiel einer fahrzeugeigenen Steuerungsvorrichtung offenbart die JP 2008-165729 A einen Mikrocomputer, der anfänglich einen Flash-Status in einem Flash-Speicher löscht, wenn eine CPU ein Neuschreibprogramm ausführt. Nach dem Löschen schreibt der Mikrocomputer sämtliche Domänen (Domains) dieses Speichers (des Flash-Speichers) neu, und schreibt schließlich einen Neuschreibbeendigungscode als den Flash-Status.As an example of an on-vehicle control device, FIG JP 2008-165729 A a microcomputer that initially clears a flash status in a flash memory when a CPU executes a rewrite program. After deleting, the microcomputer rewrites all the domains of that memory (the flash memory), and finally writes a rewrite completion code as the flash status.

Eine fahrzeugeigene Steuerungsvorrichtung kann ein Knoten eines fahrzeugeigenen Steuerungssystems sein, bei dem mehrere Knoten eine Steuerung in Kooperation miteinander durchführen. Das fahrzeugeigene Steuerungssystem kann (i) einen Knoten, dessen Steuerungsprogramm in ein neues Steuerungsprogramm neu geschrieben wurde, und (ii) einen Knoten enthalten, dessen Steuerungsprogramm nicht in ein neues Steuerungsprogramm neu geschrieben wurde. In diesem Fall kann eine Steuerung in dem fahrzeugeigenen Steuerungssystem durch den Knoten, dessen Steuerungsprogramm neu geschrieben wurde, und den Knoten, dessen Steuerungsprogramm nicht neu geschrieben wurde, durchgeführt werden. Daher kann eine Steuerung entsprechend dem neuen Steuerungsprogramm in dem fahrzeugeigenen Steuerungssystem nicht durchgeführt werden.An on-vehicle control device may be a node of an on-vehicle control system in which a plurality of nodes perform control in cooperation with each other. The on-board control system may include (i) a node whose control program has been rewritten into a new control program, and (ii) a node whose control program has not been rewritten to a new control program. In this case, control in the on-vehicle control system may be performed by the node whose control program has been rewritten and the node whose control program has not been rewritten. Therefore, control according to the new control program can not be performed in the on-vehicle control system.

Es ist eine Aufgabe der vorliegenden Erfindung, eine fahrzeugeigene Steuerungsvorrichtung und ein fahrzeugeigenes Netzwerk, das die fahrzeugeigene Steuerungsvorrichtung enthält, zu schaffen, die in der Lage sind, eine Durchführung einer Steuerung in einem fahrzeugeigenen Steuerungssystem zu verhindern, wenn ein Knoten, dessen neues Steuerungsprogramm neu geschrieben wurde, und ein Knoten, dessen neues Steuerungsprogramm nicht neu geschrieben wurde, beide vorhanden sind.It is an object of the present invention to provide an on-vehicle control device and an in-vehicle network including the on-vehicle control device capable of preventing execution of a control in an on-vehicle control system when a node restarts its new control program and a node whose new control program was not rewritten, both exist.

Gemäß einem Aspekt der vorliegenden Erfindung wird eine fahrzeugeigene Steuerungsvorrichtung geschaffen, die einen Ausführungsmodus von mehreren Knoten in einem fahrzeugeigenen Steuerungssystem entscheidet (bestimmt), wobei die Knoten kooperieren und eine Steuerung zu einem Zeitpunkt eines Steuerungsmodus durchführen, wobei jeder der Knoten als Ausführungsmodus den Steuerungsmodus, in dem die Steuerung durch Ausführen eines Steuerungsprogramms durchgeführt wird, und einen Neuprogrammierungsmodus aufweist, in dem ein Neuschreiben des Steuerungsprogramms durch Ausführen eines Neuprogrammierungsprogramms durchgeführt wird, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen. Die fahrzeugeigene Steuerungsvorrichtung enthält: einen Bestimmungsabschnitt, der bestimmt, ob sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben; und einen Entscheidungsabschnitt, der den Ausführungsmodus als den Steuerungsmodus entscheidet (bestimmt), wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus als den Neuprogrammierungsmodus entscheidet (bestimmt), wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben.According to one aspect of the present invention, there is provided an on-vehicle control device that decides an execution mode of a plurality of nodes in an on-vehicle control system, the nodes cooperate and perform control at a timing of a control mode, each of the nodes as the execution mode controls the control mode. in which the control is performed by executing a control program, and has a reprogramming mode in which a rewriting of the control program is performed by executing a reprogramming program without performing the control based on the control program. The on-vehicle control device includes: a determining section that determines whether all nodes have finished rewriting the control program; and a decision section that decides (determines) the execution mode as the control mode when the determination section determines that all nodes have finished rewriting the control program and decides the execution mode as the reprogramming mode (determined) if the determination section does not determine that all the nodes have finished rewriting the control program.

Gemäß der fahrzeugeigenen Steuerungsvorrichtung wird bestimmt, ob sämtliche Knoten das Neuschreiben eines Steuerungsprogramms beendet haben. Das heißt, die fahrzeugeigene Steuerungsvorrichtung bestimmt nicht nur für den Subjektknoten, ob die unterschiedlichen Knoten das Neuschreiben des Steuerungsprogramms beendet haben. Außerdem entscheidet die fahrzeugeigene Steuerungsvorrichtung den Ausführungsmodus als den Steuerungsmodus, wenn bestimmt wird, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben. Im Gegensatz dazu entscheidet die fahrzeugeigene Steuerungsvorrichtung den Ausführungsmodus als den Neuprogrammierungsmodus, wenn bestimmt wird, dass nicht sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, das heißt, wenn bestimmt wird, dass mindestens ein Knoten das Neuschreiben des Steuerungsprogramms nicht beendet hat.According to the on-vehicle control device, it is determined whether all the nodes have finished rewriting a control program. That is, the on-vehicle control device determines not only for the subject node whether the different nodes have finished rewriting the control program. In addition, when it is determined that all the nodes have finished rewriting the control program, the on-vehicle control device decides the execution mode as the control mode. In contrast, when it is determined that not all nodes have finished rewriting the control program, that is, when it is determined that at least one node has not finished rewriting the control program, the on-vehicle control device decides the execution mode as the reprogramming mode.

Daher entscheidet die fahrzeugeigene Steuerungsvorrichtung des Ausführungsmodus des Subjektknotens als den Neuprogrammierungsmodus, wenn ein Knoten des neuen Programms und der Knoten des alten Programms in dem Knoten vermischt (beide vorhanden) sind. Es ist möglich, dass die fahrzeugeigene Steuerungsvorrichtung eine Ausführung einer Steuerung durch ein Steuerungssystem in dem fahrzeugeigene Steuerungssystem verhindert, in dem ein Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind.Therefore, the on-vehicle control device decides the execution mode of the subject node as the reprogramming mode when a node of the new program and the node of the old program are merged (both present) in the node. It is possible that the on-vehicle control device prevents execution of control by a control system in the on-vehicle control system in which a node of the new program and a node of the old program are mixed.

Gemäß einem weiteren Aspekt der vorliegenden Erfindung kommuniziert ein fahrzeugeigenes Netzwerk mit einer Neuschreibvorrichtung, die bewirkt, dass mehrere Knoten ein Steuerungsprogramm neu schreiben. Das fahrzeugeigene Netzwerk enthält: ein fahrzeugeigenes Steuerungssystem, das die Knoten enthält, die kooperieren und eine Steuerung zu einem Zeitpunkt eines Steuerungsmodus durchführen, wobei die Knoten fahrzeugeigenen Steuerungsvorrichtungen entsprechen, wobei jeder Knoten als einen Ausführungsmodus den Steuerungsmodus, bei dem die Steuerung durch Ausführen eines Steuerungsprogramms durchgeführt wird, und einen Neuprogrammierungsmodus aufweist, bei dem ein Neuschreiben des Steuerungsprogramms durch Ausführen eines Neuschreibprogramms durchgeführt wird, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen. Jeder der Knoten enthält einen Bestimmungsabschnitt, der bestimmt, ob sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und einen Entscheidungsabschnitt, der den Ausführungsmodus als den Steuerungsmodus entscheidet (bestimmt), wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus als Neuprogrammierungsmodus entscheidet (bestimmt), wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und einen Beendigungsmeldungsabschnitt, der der Neuschreibvorrichtung meldet, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, wenn der Entscheidungsabschnitt den Steuerungsmodus entscheidet (bestimmt).In accordance with another aspect of the present invention, an on-board network communicates with a rewrite device that causes multiple nodes to rewrite a control program. The on-board network includes: an on-vehicle control system including the nodes cooperating and performing control at a timing of a control mode, the nodes corresponding to on-board control devices, each node as an execution mode controlling the control mode in which the control is performed Execution of a control program is performed, and has a reprogramming mode in which a rewriting of the control program is performed by executing a rewrite program without performing the control based on the control program. Each of the nodes includes a determination section that determines whether all nodes have completed rewriting the control program and a decision section that decides (determines) the execution mode as the control mode when the determination section determines that all nodes have completed rewriting the control program, and decides (determines) the execution mode as the reprogramming mode when the determination section does not determine that all nodes have completed the rewrite of the control program, and a termination notification section that notifies the rewriting device that all the nodes have finished rewriting the control program when the decision section sets the control mode decides (determined).

Daher ist es möglich, dass jeder Knoten eine ähnliche Wirkung wie oben beschrieben aufweist. Es ist möglich, dass das fahrzeugeigene Netzwerk die Ausführung einer Steuerung durch ein Steuerungssystem in dem Fall verhindert, in dem ein Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind.Therefore, it is possible that each node has a similar effect as described above. It is possible that the on-vehicle network prevents the execution of a control by a control system in the case where a node of the new program and a node of the old program are mixed.

Gemäß einem anderen Aspekt der vorliegenden Erfindung enthält ein fahrzeugeigenes Netzwerk mehrere fahrzeugeigene Steuerungssysteme. Jedes der fahrzeugeigenen Steuerungssysteme enthält mehrere Knoten. Die Knoten weisen jeweils als einen Ausführungsmodus einen Steuerungsmodus, in dem eine Steuerung durch Ausführen eines Steuerungsprogramms durchgeführt wird, und einen Neuprogrammierungsmodus auf, in dem ein Neuschreiben des Steuerungsprogramms durch Ausführen eines Neuschreibprogramms durchgeführt wird, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen. Die Knoten in einem identischen fahrzeugeigenen Steuerungssystem kooperieren und führen die Steuerung zu einem Zeitpunkt des Steuerungsmodus durch. Mindestens einer der Knoten in jedem der fahrzeugeigenen Steuerungssysteme entspricht einer fahrzeugeigenen Steuerungsvorrichtung. Die fahrzeugeigene Steuerungsvorrichtung enthält: einen Bestimmungsabschnitt, der bestimmt, ob sämtliche Knoten in einem der fahrzeugeigenen Steuerungssysteme, das identisch mit der fahrzeugeigenen Steuerungsvorrichtung ist, das Neuschreiben des Steuerungsprogramms beendet haben; und einen Entscheidungsabschnitt, der den Ausführungsmodus als den Steuerungsmodus entscheidet (bestimmt), wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus als den Neuprogrammierungsmodus entscheidet (bestimmt), wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben.In another aspect of the present invention, an on-board network includes a plurality of on-board control systems. Each of the on-board control systems includes a plurality of nodes. The nodes each have, as an execution mode, a control mode in which control is performed by executing a control program, and a reprogramming mode in which rewriting of the control program is performed by executing a rewrite program without performing the control based on the control program. The nodes in an identical on-vehicle control system cooperate and perform the control at a timing of the control mode. At least one of the nodes in each of the on-vehicle control systems corresponds to an on-vehicle control device. The on-vehicle control device includes: a determination section that determines whether all nodes in one of the on-vehicle control systems that is identical to the on-vehicle control device have completed rewriting the control program; and a decision section that decides (determines) the execution mode as the control mode when the determination section determines that all nodes have finished rewriting the control program and decides the execution mode as the reprogramming mode (determined) if the determination section does not determine that all the nodes have finished rewriting the control program.

Daher ist es möglich, dass das fahrzeugeigene Netzwerk ähnliche Wirkungen wie oben beschrieben erzielt. Es ist möglich, dass jedes fahrzeugeigene Netzwerk eine Durchführung einer Steuerung durch ein Steuerungssystem verhindert, wenn ein Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind.Therefore, it is possible for the on-vehicle network to achieve similar effects as described above. It is possible that each on-board network prevents execution of control by a control system when a node of the new program and a node of the old program are mixed.

Die obigen und weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden anhand der folgenden detaillierten Beschreibung mit Bezug auf die zugehörigen Zeichnungen deutlich. Es zeigen:The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description made with reference to the accompanying drawings. Show it:

1 ein Blockdiagramm, das eine Umrisskonfiguration des fahrzeugeigenen Steuerungssystems gemäß einer ersten Ausführungsform darstellt; 1 10 is a block diagram illustrating an outline configuration of the on-vehicle control system according to a first embodiment;

2 ein Blockdiagramm, das eine Umrisskonfiguration einer fahrzeugeigenen Steuerungsvorrichtung gemäß der ersten Ausführungsform darstellt; 2 10 is a block diagram illustrating an outline configuration of an on-vehicle control device according to the first embodiment;

3 ein Diagramm, das schematisch eine Konfiguration eines ROM eines ersten Knotens gemäß der ersten Ausführungsform darstellt; 3 12 is a diagram schematically illustrating a configuration of a ROM of a first node according to the first embodiment;

4 ein Diagramm, das schematisch eine Konfiguration eines ROM eines zweiten Knotens gemäß der ersten Ausführungsform darstellt; 4 12 is a diagram schematically illustrating a configuration of a ROM of a second node according to the first embodiment;

5 ein Flussdiagramm, das eine Startverarbeitung des ersten Knotens gemäß der ersten Ausführungsform darstellt; 5 FIG. 10 is a flowchart illustrating a start processing of the first node according to the first embodiment; FIG.

6 ein Flussdiagramm, das eine Startverarbeitung des zweiten Knotens gemäß der ersten Ausführungsform darstellt; 6 FIG. 10 is a flowchart illustrating a start processing of the second node according to the first embodiment; FIG.

7 ein Flussdiagramm, das einen Verarbeitungsbetrieb des ersten Knotens gemäß der ersten Ausführungsform darstellt; 7 FIG. 10 is a flowchart illustrating a processing operation of the first node according to the first embodiment; FIG.

8 ein Flussdiagramm, das einen Verarbeitungsbetrieb zwischen A und B in 7 darstellt; 8th a flowchart showing a processing operation between A and B in 7 represents;

9 ein Flussdiagramm, das einen Verarbeitungsbetrieb des zweiten Knotens gemäß der ersten Ausführungsform darstellt; 9 FIG. 10 is a flowchart illustrating a processing operation of the second node according to the first embodiment; FIG.

10 ein Sequenzdiagramm, das einen Verarbeitungsbetrieb eines fahrzeugeigenen Steuerungssystems gemäß der ersten Ausführungsform darstellt; 10 a sequence diagram showing a processing operation of an on-board Control system according to the first embodiment represents;

11 ein Flussdiagramm, das einen Verarbeitungsbetrieb eines Neuschreibwerkzeugs gemäß der ersten Ausführungsform darstellt; 11 FIG. 10 is a flowchart illustrating a processing operation of a rewrite tool according to the first embodiment; FIG.

12 ein Flussdiagramm, das eine Startverarbeitung des ersten Knotens gemäß einer zweiten Ausführungsform darstellt; 12 a flowchart illustrating a start processing of the first node according to a second embodiment;

13 ein Flussdiagramm, das eine Startverarbeitung des ersten Knotens gemäß einer dritten Ausführungsform darstellt; 13 FIG. 10 is a flowchart illustrating a start processing of the first node according to a third embodiment; FIG.

14 ein Blockdiagramm, das eine Umrisskonfiguration des fahrzeugeigenen Steuerungssystems gemäß einer vierten Ausführungsform darstellt; 14 10 is a block diagram illustrating an outline configuration of the on-vehicle control system according to a fourth embodiment;

15 ein Diagramm, das Vermittlungsinformationen eines Vermittlungsknotens gemäß der vierten Ausführungsform darstellt; 15 a diagram illustrating switching information of a switching node according to the fourth embodiment;

16 ein Blockdiagramm, das eine Umrisskonfiguration des fahrzeugeigenen Steuerungssystems gemäß einer fünften Ausführungsform darstellt; 16 10 is a block diagram illustrating an outline configuration of the on-vehicle control system according to a fifth embodiment;

17 ein Flussdiagramm, das eine Startverarbeitung des ersten Knotens gemäß der fünften Ausführungsform darstellt; und 17 FIG. 10 is a flowchart illustrating a start processing of the first node according to the fifth embodiment; FIG. and

18 ein Blockdiagramm, das eine Umrisskonfiguration des fahrzeugeigenen Steuerungssystems gemäß einer siebten Ausführungsform darstellt. 18 12 is a block diagram illustrating an outline configuration of the on-vehicle control system according to a seventh embodiment.

Im Folgenden werden Ausführungsformen der vorliegenden Erfindung mit Bezug auf die Zeichnungen erläutert. In jeder Ausführungsform können Teile, die Teilen entsprechen, die in einer vorhergehenden Ausführungsform erläutert wurden, mit identischen Bezugszeichen bezeichnet werden, und deren Erläuterungen werden nicht wiederholt. In jeder Ausführungsform wird, wenn eine Konfiguration teilweise erläutert wird, die Erläuterung in Bezug auf einen anderen Teil der Konfiguration durch Bezugnahme auf die Erläuterungen einer vorhergehenden Ausführungsform verwendet.Hereinafter, embodiments of the present invention will be explained with reference to the drawings. In each embodiment, parts corresponding to parts explained in a previous embodiment may be denoted by identical reference numerals and explanations thereof will not be repeated. In each embodiment, when a configuration is partially explained, the explanation will be made with respect to another part of the configuration by referring to the explanations of a previous embodiment.

(Erste Ausführungsform)First Embodiment

Im Folgenden wird eine erste Ausführungsform mit Bezug auf die 1 bis 11 erläutert. In der vorliegenden Ausführungsform wird ein erster Knoten 10 als eine fahrzeugeigene Steuerungsvorrichtung verwendet.Hereinafter, a first embodiment will be described with reference to FIGS 1 to 11 explained. In the present embodiment, a first node becomes 10 used as an on-vehicle control device.

Mit Bezug auf die 1 bis 4 wird eine Konfiguration des ersten Knotens 10 und eine Konfiguration eines fahrzeugeigenen Steuerungssystems 100, das den ersten Knoten 10 enthält, beschrieben. Das fahrzeugeigene Steuerungssystem 100 ist an einem Fahrzeug montierbar. Das fahrzeugeigene Steuerungssystem 100 kann als ein Teil eines fahrzeugeigenen Netzwerkes bereitgestellt werden, das in einem Fahrzeug vorhanden ist. Das fahrzeugeigene Steuerungssystem kann auch als Fahrzeugsteuerungssystem bezeichnet werden.With reference to the 1 to 4 becomes a configuration of the first node 10 and a configuration of an on-vehicle control system 100 that the first node 10 contains described. The vehicle control system 100 is mountable on a vehicle. The vehicle control system 100 can be provided as part of an in-vehicle network that is present in a vehicle. The on-board control system may also be referred to as a vehicle control system.

Das fahrzeugeigene Steuerungssystem 100 enthält mehrere Knoten, die den ersten Knoten 10 enthalten und gemeinsam in Einheit eines von mehreren Steuerungssystemen in dem Fahrzeug steuern. Die Steuerungssysteme enthalten ein Verbrennungsmotorsteuerungssystem, ein Karosseriesteuerungssystem oder Ähnliches. Somit kann ein System des Verbrennungsmotorsteuerungssystems beispielsweise als fahrzeugeigenes Steuerungssystem 100 verwendet werden.The vehicle control system 100 contains several nodes that are the first node 10 and jointly control in unit of one of several control systems in the vehicle. The control systems include an engine control system, a body control system or the like. Thus, a system of the engine control system may be, for example, an in-vehicle control system 100 be used.

Das fahrzeugeigene Steuerungssystem 100 enthält beispielsweise zusätzlich zu dem ersten Knoten 10 einen zweiten Knoten 20 und einen dritten Knoten 30. Das heißt, in der vorliegenden Ausführungsform kann der erste Knoten 10, der einer der Knoten 1030 in dem fahrzeugeigenen Steuerungssystem 100 ist, einer fahrzeugeigenen Steuerungsvorrichtung entsprechen. Das heißt, der erste Knoten 10 kann ein Beispiel der fahrzeugeigenen Steuerungsvorrichtung sein. Das fahrzeugeigene Steuerungssystem 100 kann den ersten Knoten 10, den zweiten Knoten 20 und den dritten Knoten 30 als Knoten in demselben Steuerungssystem enthalten. In diesem Fall können der erste Knoten 10, der zweite Knoten 20 und der dritte Knoten 30 als betreffende (in Beziehung stehende) Knoten bezeichnet werden, da der erste Knoten 10, der zweite Knoten 20 und der dritte Knoten 30 einander zugeordnet sind, um eine Steuerung eines Steuerungssystems durchzuführen.The vehicle control system 100 contains, for example, in addition to the first node 10 a second node 20 and a third node 30 , That is, in the present embodiment, the first node 10 , one of the nodes 10 - 30 in the vehicle's own control system 100 is to correspond to an on-board control device. That is, the first node 10 may be an example of the on-vehicle control device. The vehicle control system 100 can be the first node 10 , the second node 20 and the third node 30 included as nodes in the same control system. In this case, the first node 10 , the second node 20 and the third node 30 are referred to as respective (related) nodes, since the first node 10 , the second node 20 and the third node 30 associated with each other to perform control of a control system.

Jeder der Knoten 1030 weist als Ausführungsmodus einen Steuerungsmodus und einen Neuprogrammierungsmodus auf. In dem Steuerungsmodus wird ein Steuerungsprogramm ausgeführt, und es wird eine Steuerung durchgeführt. In dem Neuprogrammierungsmodus wird ein Neuprogrammierungsprogramm ausgeführt, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen, und es wird ein Steuerungsprogramm neu geschrieben. Der Steuerungsmodus kann als Steuerungsprogrammausführungsmodus bezeichnet werden. Außerdem kann der Neuprogrammierungsmodus als Neuprogrammierungsprogrammausführungsmodus bezeichnet werden. Im Folgenden kann das Neuschreiben des Steuerungsprogramms aus Vereinfachungsgründen als Neuschreiben beschrieben bzw. bezeichnet werden.Each of the nodes 10 - 30 has a control mode and a reprogramming mode as an execution mode. In the control mode, a control program is executed and control is performed. In the reprogramming mode, a reprogramming program is executed without performing the control based on the control program, and a control program is rewritten. The control mode may be referred to as a control program execution mode. In addition, the reprogramming mode may be called a reprogramming program execution mode. In the following, the rewriting of the control program can be described or described as rewriting for reasons of simplification.

Der erste Knoten 10, der zweite Knoten 20 und der dritte Knoten 30 in dem fahrzeugeigenen Steuerungssystem 100 können über einen Kommunikationsbus 200 miteinander kommunizieren. Das heißt, jeder der Knoten 1030 ist mit dem Kommunikationsbus 200 verbunden und kann mit den anderen über den Kommunikationsbus 200 kommunizieren.The first node 10 , the second node 20 and the third node 30 in the vehicle's own control system 100 can over one communication 200 communicate with each other. That is, each of the nodes 10 - 30 is with the communication bus 200 connected and can communicate with the others via the communication bus 200 communicate.

Das fahrzeugeigene Steuerungssystem 100 kann mit einem Neuschreibwerkzeug (Neuschreib-Tool) 400, das außerhalb des Fahrzeugs angeordnet ist, kommunizieren. Der erste Knoten 10 in dem fahrzeugeigenen Steuerungssystem 100 kann beispielsweise mit dem Neuschreibwerkzeug 400 kommunizieren. Da der zweite Knoten 20 und der dritte Knoten 30 mit dem ersten Knoten 10 über den Kommunikationsbus 200 kommunizieren können, können der zweite Knoten 20 und der dritte Knoten 30 über den ersten Knoten 10 mit dem Neuschreibwerkzeug 400 kommunizieren. Mit anderen Worten, das fahrzeugeigene Steuerungssystem 100 enthält den ersten Knoten 10 als einen Master (kann auch als Masterknoten bezeichnet werden) und den zweiten Knoten 20 und den dritten Knoten 30 als Slaves (Sklaven) (können auch als Slaveknoten bezeichnet werden).The vehicle control system 100 can with a rewrite tool (rewrite tool) 400 , which is located outside the vehicle, communicate. The first node 10 in the vehicle's own control system 100 can, for example, with the rewrite tool 400 communicate. Because the second node 20 and the third node 30 with the first node 10 over the communication bus 200 can communicate, the second node 20 and the third node 30 over the first node 10 with the rewrite tool 400 communicate. In other words, the on-board control system 100 contains the first node 10 as a master (may also be called a master node) and the second node 20 and the third node 30 as slaves (can also be called slave nodes).

Wenn der Ausführungsmodus der jeweiligen Knoten 1030 der Steuerungsmodus ist, führen die jeweiligen Knoten 1030 das Steuerungsprogramm aus, und die jeweiligen Knoten 1030 in dem fahrzeugeigenen Steuerungssystem 100 kooperieren miteinander und führen die Steuerung in dem Steuerungssystem durch.If the execution mode of each node 10 - 30 is the control mode, carry the respective nodes 10 - 30 the control program, and the respective nodes 10 - 30 in the vehicle's own control system 100 cooperate with each other and perform the control in the control system.

Wenn im Gegensatz dazu der Ausführungsmodus der jeweiligen Knoten 10 bis 30 der Neuprogrammierungsmodus ist, führen die jeweiligen Knoten 1030 das Neuprogrammierungsprogramm aus, und das Steuerungsprogramm in den jeweiligen Knoten 1030 in dem fahrzeugeigenen Steuerungssystem 100 wird neu geschrieben. In diesem Fall kommuniziert der erste Knoten 10 in dem fahrzeugeigenen Steuerungssystem 100, während er mit dem Neuschreibwerkzeug 400 kommuniziert, ebenfalls mit dem zweiten Knoten 20 und dem dritten Knoten 30, sodass das Steuerungsprogramm neu geschrieben wird.In contrast, if the execution mode of the respective nodes 10 to 30 the reprogramming mode is run the respective nodes 10 - 30 the reprogramming program, and the control program in each node 10 - 30 in the vehicle's own control system 100 will be rewritten. In this case, the first node communicates 10 in the vehicle's own control system 100 while he's using the rewrite tool 400 communicates, also with the second node 20 and the third node 30 so that the control program is rewritten.

Das heißt, das fahrzeugeigene Steuerungssystem 100 führt die Steuerung in dem Steuerungssystem durch, da sämtliche Knoten 1030 das Steuerungsprogramm ausführen. Wenn der Ausführungsmodus mindestens einer der Knoten 1030 der Neuprogrammierungsmodus ist, kann das fahrzeugeigene Steuerungssystem 100 die Steuerung in dem Steuerungssystem nicht durchführen, da der mindestens eine Knoten das Neuprogrammierungsprogramm ausführt. Alternativ wird angenommen, dass einer der Knoten 1030 das Neuprogrammierungsprogramm ausführt und ein anderer Knoten, der ein anderer der Knoten 1030 ist, das Steuerungsprogramm ausführt. In diesem Fall wird eine Kommunikation, die durchgeführt wird, wenn das Steuerungsprogramm ausgeführt wird, unterbrochen, und die Steuerung in dem Steuerungssystem kann nicht durchgeführt werden.That is, the on-board control system 100 performs the control in the control system, since all nodes 10 - 30 execute the control program. If the execution mode is at least one of the nodes 10 - 30 is the reprogramming mode, the onboard control system can 100 do not perform the control in the control system because the at least one node is executing the reprogramming program. Alternatively, it is assumed that one of the nodes 10 - 30 executes the reprogramming program and another node, another of the nodes 10 - 30 is executing the control program. In this case, communication that is performed when the control program is executed is interrupted, and the control in the control system can not be performed.

Wie es oben beschrieben wurde, führt das fahrzeugeigene Steuerungssystem 100 die Steuerung durch, während die Knoten 1030 miteinander kooperieren. Das fahrzeugeigene Steuerungssystem 100 bedingt, dass die Steuerungsprogramme in sämtlichen Knoten 1030 zu dem Zeitpunkt beispielsweise einer Änderung einer Systemspezifikation neu geschrieben werden. Das heißt, es ist notwendig, einen Fall zu verhindern, bei dem beispielsweise der erste Knoten 10 ein neues Programm aufweist, der zweite Knoten 20 ein altes Programm aufweist und der dritte Knoten 30 das neue Programm aufweist. Das heißt, es ist notwendig, zu verhindern, dass das neue Programm und das alte Programm in dem fahrzeugeigenen Steuerungssystem 100 beispielsweise vermischt (beide vorhanden) sind. As described above, the on-board control system performs 100 the control through, while the nodes 10 - 30 cooperate with each other. The vehicle control system 100 conditions that the control programs in all nodes 10 - 30 at the time of, for example, rewriting a change to a system specification. That is, it is necessary to prevent a case where, for example, the first node 10 has a new program, the second node 20 has an old program and the third node 30 has the new program. That is, it is necessary to prevent the new program and the old program in the vehicle's own control system 100 for example, mixed (both are present).

Wenn das neue Programm und das alte Programm in dem fahrzeugeigenen Steuerungssystem 100 vermischt sind, kann das fahrzeugeigene Steuerungssystem 100 die Steuerung entsprechend dem neuen Programm als Steuerungssystem nicht durchführen. Das heißt, es kann notwendig sein, das Neuschreiben des Steuerungsprogramms in sämtlichen Knoten 1030 in dem fahrzeugeigenen Steuerungssystem 100 sicher durchzuführen. Mit anderen Worten, das fahrzeugeigene Steuerungssystem 100 bedingt, dass die Knoten 1030 sämtlich das neue Programm aufweisen.If the new program and the old program in the vehicle's own control system 100 can be mixed, the vehicle's control system 100 do not perform the control according to the new program as a control system. That is, it may be necessary to rewrite the control program in all nodes 10 - 30 in the vehicle's own control system 100 safely perform. In other words, the on-board control system 100 conditionally that the nodes 10 - 30 all have the new program.

Das neue Programm (ein neues Steuerungsprogramm) ist ein Steuerungsprogramm, nachdem dieses als ein neues Steuerungsprogramm neu geschrieben wurde. Das alte Programm (ein altes Steuerungsprogramm) ist ein Steuerungsprogramm, bevor dieses in das neue Steuerungsprogramm geschrieben wurde.The new program (a new control program) is a control program after it has been rewritten as a new control program. The old program (an old control program) is a control program before it has been written to the new control program.

Das neue Programm kann als Steuerungsprogramm einer neuen Version bezeichnet werden. Das alte Programm kann als ein Steuerungsprogramm einer alten Version bezeichnet werden, wobei die alte Version älter als die neue Version ist. Daher können das neue Programm und das alte Programm als Steuerungsprogramme unterschiedlicher Versionen bezeichnet werden.The new program can be called a control program of a new version. The old program may be referred to as a control program of an old version, where the old version is older than the new version. Therefore, the new program and the old program may be called control programs of different versions.

Der erste Knoten 10 enthält eine CPU 13, einen ROM 14, einen RAM 15 und einen Daten-Transceiver-Abschnitt 16 oder Ähnliches, wie es in 2 gezeigt ist. Die CPU 13 führt ein Steuerungsprogramm und ein Neuprogrammierungsprogramm, die im Voraus in dem ROM 14 gespeichert werden, aus. Der ROM 14 speichert das Steuerungsprogramm, das Neuprogrammierungsprogramm, ein erstes Flag 11 und ein zweites Flag 12, wie es schematisch in 3 dargestellt ist. Der RAM 15 ist ein Speicherabschnitt. Der RAM 15 speichert zeitweilig ein Betriebsergebnis in einem Fall, in dem die CPU 13 eine arithmetische Verarbeitung durchführt. Der Daten-Transceiver-Abschnitt 16 ist ein Kommunikationsabschnitt. Der Daten-Transceiver-Abschnitt 16 kommuniziert mit dem zweiten Knoten 20, dem dritten Knoten 30 und dem Neuschreibwerkzeug 400 über den Kommunikationsbus 200. Der erste Knoten 10 kann auch als ECU (elektronische Steuereinheit) bezeichnet werden.The first node 10 contains a CPU 13 , a ROM 14 , a ram 15 and a data transceiver section 16 or the like, as in 2 is shown. The CPU 13 executes a control program and a reprogramming program, which in advance in the ROM 14 saved. The ROM 14 The control program, the reprogramming program, stores a first flag 11 and a second flag 12 as it is schematic in 3 is shown. The RAM 15 is a storage section. The RAM 15 temporarily stores an operating result in a case where the CPU 13 performs arithmetic processing. The data transceiver section 16 is a communication section. The data transceiver section 16 communicates with the second node 20 , the third node 30 and the rewrite tool 400 over the communication bus 200 , The first node 10 can also be referred to as ECU (electronic control unit).

Der zweite Knoten 20 und der dritte Knoten 30 enthalten wie der erste Knoten 10 jeweils eine CPU 13, einen ROM 14, einen RAM 15 und einen Daten-Transceiver-Abschnitt 16. Dementsprechend sind Zeichnungen und eine detaillierte Erläuterung der Konfiguration des zweiten Knotens 20 und des dritten Knotens 30 weggelassen. Ein Hauptunterschied zwischen dem ersten Knoten 10 und den jeweiligen zweiten und dritten Knoten 20 und 30 besteht in dem Inhalt der Steuerungsprogramme, das heißt Steuerungsinhalten und Speicherinhalten des ROM 14. Der dritte Knoten 30 weist eine ähnliche Konfiguration wie der zweite Knoten 20 auf, obwohl sich dessen Steuerinhalte von den Steuerinhalten des zweiten Knotens 20 unterscheiden. Somit wird im Folgenden der zweite Knoten 20 als repräsentatives Beispiel erläutert. The second node 20 and the third node 30 included as the first node 10 one CPU each 13 , a ROM 14 , a ram 15 and a data transceiver section 16 , Accordingly, drawings and detailed explanation are the configuration of the second node 20 and the third node 30 omitted. A major difference between the first node 10 and the respective second and third nodes 20 and 30 consists in the contents of the control programs, that is, control contents and memory contents of the ROM 14 , The third node 30 has a similar configuration as the second node 20 although its control contents are from the control contents of the second node 20 differ. Thus, in the following, the second node 20 explained as a representative example.

Der Verarbeitungsbetrieb der Knoten 1030 wird später erläutert. Die Verarbeitungsbetriebe des zweiten Knotens 20 und des dritten Knotens 30 werden unter Verwendung des zweiten Knotens 20 als Beispiel beschrieben.The processing operation of the nodes 10 - 30 will be explained later. The processing operations of the second node 20 and the third node 30 be using the second node 20 described as an example.

Der Speicherinhalt, der in dem ROM 14 des ersten Knotens 10 gespeichert ist, und der Speicherinhalt des ROM 14 des zweiten Knotens 20 werden mit Bezug auf die 3 und 4 erläutert.The memory contents stored in the ROM 14 of the first node 10 is stored, and the memory contents of the ROM 14 of the second node 20 be with reference to the 3 and 4 explained.

Wie es in 3 dargestellt ist, speichert der ROM 14 des ersten Knotens 10 das Steuerungsprogramm, das erste Flag 11 und das zweite Flag 12 in der Neuschreibdomäne (Domain) und speichert das Neuprogrammierungsprogramm in der Nicht-Neuschreibdomäne (Domain). Außerdem speichert der ROM 14 des ersten Knotens 10 Identifizierungsinformationen (ID-Informationen) zum Identifizieren eines betreffenden (in Beziehung stehenden) Knotens.As it is in 3 is shown, stores the ROM 14 of the first node 10 the control program, the first flag 11 and the second flag 12 in the rewrite domain and stores the reprogramming program in the non-rewrite domain. In addition, the ROM saves 14 of the first node 10 Identification information (ID information) for identifying a respective (related) node.

Wie es in 4 dargestellt ist, speichert der ROM 14 des zweiten Knotens 20 das Steuerungsprogramm und ein erstes Flag 21 in der Neuschreibdomäne und speichert das Neuprogrammierungsprogramm in der Nicht-Neuschreibdomäne. Somit speichert der ROM 14 des zweiten Knotens 20 kein zweites Flag. Wie es in 1 dargestellt ist, weist das erste Flag des dritten Knotens 30 das Bezugszeichen 31 auf.As it is in 4 is shown, stores the ROM 14 of the second node 20 the control program and a first flag 21 in the rewrite domain and stores the reprogramming program in the non-rewrite domain. Thus, the ROM stores 14 of the second node 20 no second flag. As it is in 1 has the first flag of the third node 30 the reference number 31 on.

Das erste Flag 11 entspricht Informationen zum Bestimmen, ob das Neuschreiben in dem ersten Knoten 10 beendet ist. Das erste Flag 21 entspricht Informationen zum Bestimmen, ob das Neuschreiben in dem zweiten Knoten 20 beendet ist. Für das erste Flag 11 wird der erste Knoten 10 als Subjektknoten bezeichnet. Für das erste Flag 21 wird der zweite Knoten 20 als Subjektknoten bezeichnet. Das heißt, die ersten Flags 11, 21 entsprechen Informationen zum Bestimmen, ob das Neuschreiben in einem jeweiligen Subjektknoten beendet ist. Insbesondere werden die ersten Flags 11, 21 entweder auf Informationen, die angeben, dass das Neuschreiben beendet wurde, oder Informationen gesetzt, die angeben, dass das Neuschreiben nicht beendet wurde. Es kann beispielsweise der Wert von 1 als Informationen verwendet werden, die angeben, dass das Neuschreiben beendet wurde, und es kann der Wert von 0 als Informationen verwendet werden, die angeben, dass das Neuschreiben nicht beendet wurde. Der erste Knoten 10 setzt das erste Flag 11 und der zweite Knoten 20 setzt das erste Flag 21.The first flag 11 corresponds to information for determining whether rewriting in the first node 10 finished. The first flag 21 corresponds to information for determining whether rewriting in the second node 20 finished. For the first flag 11 becomes the first node 10 referred to as a subject node. For the first flag 21 becomes the second node 20 referred to as a subject node. That is, the first flags 11 . 21 Correspond to information for determining whether the rewriting has been completed in a respective subject node. In particular, the first flags 11 . 21 either information indicating that the rewrite has ended or information indicating that the rewrite has not been completed. For example, the value of 1 can be used as information indicating that the rewrite has finished, and the value of 0 be used as information indicating that the rewrite has not been completed. The first node 10 sets the first flag 11 and the second node 20 sets the first flag 21 ,

Durch Überprüfen des ersten Flags 11 bestimmt der erste Knoten 10, ob das Neuschreiben in dem Subjektknoten (in diesem Fall der erste Knoten 10) beendet wurde. Auf ähnliche Weise bestimmt der zweite Knoten 20 durch Überprüfen des ersten Flags 21, ob das Neuschreiben in dem Subjektknoten (in diesem Fall der zweite Knoten 20) beendet wurde.By checking the first flag 11 determines the first node 10 whether the rewriting in the subject node (in this case, the first node 10 ) was terminated. Similarly, the second node determines 20 by checking the first flag 21 whether the rewriting in the subject node (in this case, the second node 20 ) was terminated.

Das zweite Flag 12 enthält Informationen zum Bestimmen, ob das Neuschreiben in dem zweiten Knoten 20 und dem dritten Knoten 30 zusätzlich zu dem Subjektknoten (beispielsweise dem ersten Knoten 10) beendet wurde. Mit anderen Worten, das zweite Flag 12 enthält die Informationen zum Bestimmen, ob das Neuschreiben sämtlicher Knoten 1030 in dem fahrzeugeigenen Steuerungssystem 100 beendet wurde. In der vorliegenden Ausführungsform wird als ein Beispiel das zweite Flag 12, das ein Zählwert ist, der durch Zählen der Knoten, in denen das Neuschreiben beendet wurde, erhalten wird, verwendet. Somit bestimmt der erste Knoten 10 durch Überprüfen des zweiten Flags 12, ob das Neuschreiben in sämtlichen Knoten 1030 beendet wurde.The second flag 12 contains information for determining whether the rewrite in the second node 20 and the third node 30 in addition to the subject node (for example, the first node 10 ) was terminated. In other words, the second flag 12 contains the information for determining whether to rewrite all nodes 10 - 30 in the vehicle's own control system 100 has ended. In the present embodiment, as an example, the second flag 12 , which is a count value obtained by counting the nodes in which the rewriting has been completed. Thus, the first node determines 10 by checking the second flag 12 whether rewriting in all nodes 10 - 30 has ended.

Das Neuschreibwerkzeug 400 entspricht einer Neuschreibvorrichtung und kann auch als Schreiber bzw. Schreibeinrichtung bezeichnet werden. Das Neuschreibwerkzeug 400 kann beispielsweise von einem Arbeiter (Bediensteter) in einem Geschäft oder bei einem Fahrzeughändler bedient werden. Das Neuschreibwerkzeug 400 führt das Neuschreiben entsprechend einer Bedienung von dem Arbeiter durch. Das Neuschreibwerkzeug 400 ist in dem Fall des Neuschreibens beispielsweise über ein Kabel und einem Stecker mit einem Fahrzeug verbunden. Das Neuschreibwerkzeug 400 wird von dem Fahrzeug entfernt, wenn das Neuschreiben nicht durchgeführt wird, beispielsweise in einem Fall, nachdem das Neuschreiben beendet wurde.The rewriting tool 400 corresponds to a rewrite device and may also be referred to as a writer. The rewriting tool 400 can be operated, for example, by a worker (servant) in a shop or at a vehicle dealer. The rewriting tool 400 performs the rewriting according to an operation by the worker. The rewriting tool 400 is in the case of rewriting, for example via a cable and a plug connected to a vehicle. The rewriting tool 400 is removed from the vehicle when the rewriting is not performed, for example, in a case after the rewriting has been completed.

Der Verarbeitungsbetrieb des Neuschreibwerkzeugs 400 wird mit Bezug auf die 10 und 11 erläutert, bevor der Verarbeitungsbetrieb der jeweiligen Knoten 1030 erläutert wird. Es wird angenommen, dass das Neuschreibwerkzeug 400 mit dem Fahrzeug verbunden ist. Wenn in diesem Fall der Arbeiter das Neuschreibwerkzeug 400 anweist, das Neuschreiben durchzuführen, wird das Flussdiagramm der 11 ausgeführt. Jeder der Knoten 1030 gibt ein ACK (positive Rückmeldung) als Antwort auf eine jeweilige Aufforderung von dem Neuschreibwerkzeug 400 zurück.The processing plant of the rewrite tool 400 will be related to the 10 and 11 explained before the processing operation of the respective node 10 - 30 is explained. It is believed that the rewrite tool 400 connected to the vehicle. In this case, if the worker is the rewrite tool 400 instructs to perform the rewrite, the flowchart of 11 executed. Each of the nodes 10 - 30 gives an ACK (positive feedback) in response to a respective request from the rewrite tool 400 back.

In S60 überträgt das Neuschreibwerkzeug 400 einen Löschaufforderungsbefehl. Das Neuschreibwerkzeug 400 überträgt den Löschaufforderungsbefehl individuell an die jeweiligen Knoten 1030, wie es in 10 dargestellt ist. Wenn das Neuschreibwerkzeug 400 den Löschaufforderungsbefehl an einen jeweiligen Knoten überträgt, überträgt das Neuschreibwerkzeug 400 den Löschaufforderungsbefehl mit den ID-Informationen eines Knotens (eines Zielknotens) eines Übertragungsziels. Das heißt, wenn beispielsweise der Löschaufforderungsbefehl an den ersten Knoten 10 übertragen wird, überträgt das Neuschreibwerkzeug 400 die ID-Informationen des ersten Knotens 10 und den Löschaufforderungsbefehl. Der Löschaufforderungsbefehl entspricht einem Befehl, der ein Löschen des Steuerungsprogramms, das in dem ROM 14 gespeichert ist, fordert.In S60, the rewrite tool transfers 400 a delete request command. The rewriting tool 400 transmits the delete request command individually to the respective nodes 10 - 30 as it is in 10 is shown. If the rewrite tool 400 transmits the delete request command to a respective node transmits the rewrite tool 400 the delete request command with the ID information of a node (a destination node) of a transmission destination. That is, if, for example, the delete request command is to the first node 10 transmits the rewrite tool 400 the ID information of the first node 10 and the delete request command. The clear request command corresponds to a command that is to clear the control program stored in the ROM 14 is stored, calls.

In S61 wird bestimmt, ob eine Antwort auf den Löschaufforderungsbefehl empfangen wird. Das Neuschreibwerkzeug 400 bestimmt, ob ein ACK als Antwort auf den Löschaufforderungsbefehl empfangen wird. Das Neuschreibwerkzeug 400 schreitet zu S62, wenn der Empfang des ACK bestimmt wird. Im Gegensatz dazu wiederholt das Neuschreibwerkzeug 400 S61, wenn das Neuschreibwerkzeug 400 nicht bestimmt, dass das ACK empfangen wird.In S61, it is determined whether a response to the erase request command is received. The rewriting tool 400 determines if an ACK is received in response to the clear request command. The rewriting tool 400 goes to S62 when the reception of the ACK is determined. In contrast, the rewrite tool repeats 400 S61, if the rewrite tool 400 does not determine that the ACK is being received.

Das Neuschreibwerkzeug 400 kann die Verarbeitung in 11 beenden, wenn das Neuschreibwerkzeug 400 das ACK innerhalb einer vorbestimmten Zeit nach Übertragen des Löschaufforderungsbefehls nicht empfangen hat. Das heißt, das Neuschreibwerkzeug 400 kann eine Auszählverarbeitung durchführen. Das Neuschreibwerkzeug 400 kann die Auszählverarbeitung in der unten beschriebenen Bestimmung durchführen. Außerdem kann jeder der Knoten 1030 eine Auszählverarbeitung durchführen.The rewriting tool 400 can the processing in 11 finish when the rewrite tool 400 has not received the ACK within a predetermined time after transmitting the erase request command. That is, the rewrite tool 400 can perform a counting process. The rewriting tool 400 can perform the count-out processing in the determination described below. In addition, each of the nodes 10 - 30 perform a counting process.

In S62 überträgt das Neuschreibwerkzeug 400 einen Neuschreibaufforderungsbefehl. Das Neuschreibwerkzeug 400 überträgt den Neuschreibaufforderungsbefehl individuell an die jeweiligen ersten bis dritten Knoten 1030, wie es in 10 dargestellt ist. Ähnlich wie in dem Fall, in dem der Löschaufforderungsbefehl übertragen wird, überträgt das Neuschreibwerkzeug 400 den Neuschreibaufforderungsbefehl zusätzlich zu den ID-Informationen eines Knotens (eines Zielknotens) eines Übertragungsziels. Der Neuschreibaufforderungsbefehl entspricht einem Befehl, der ein Schreiben eines neuen Steuerungsprogramms in den ROM 14, in dem das Steuerungsprogramm (altes Steuerungsprogramm) gelöscht wird, fordert.In S62, the rewrite tool transfers 400 a rewrite request command. The rewriting tool 400 individually transmits the rewrite request command to the respective first through third nodes 10 - 30 as it is in 10 is shown. Similar to the case where the erase request command is transmitted, the rewrite tool transmits 400 the rewrite request command in addition to the ID information of a node (a destination node) of a transmission destination. The rewrite request command corresponds to a command to write a new control program to the ROM 14 in which the control program (old control program) is deleted requests.

In S63 wird bestimmt, ob eine Antwort auf den Neuschreibaufforderungsbefehl empfangen wird. Das Neuschreibwerkzeug 400 bestimmt, ob das ACK als Antwort auf den Neuschreibaufforderungsbefehl empfangen wird. Das Neuschreibwerkzeug 400 schreitet zu S64, wenn bestimmt wird, dass das ACK empfangen wird. Im Gegensatz dazu wiederholt das Neuschreibwerkzeug 400 S63, wenn das Neuschreibwerkzeug 400 nicht bestimmt, dass das ACK anfangen wird. Nach Empfangen des ACK als Antwort auf den Neuschreibaufforderungsbefehl überträgt das Neuschreibwerkzeug 400 die ID-Informationen des Zielknotens und Daten des neuen Steuerungsprogramms an den Zielknoten.In S63, it is determined whether a response to the rewrite request command is received. The rewriting tool 400 determines whether the ACK is received in response to the rewrite request command. The rewriting tool 400 Proceeds to S64 when it is determined that the ACK is being received. In contrast, the rewrite tool repeats 400 S63, if the rewrite tool 400 not determined that the ACK will start. Upon receiving the ACK in response to the rewrite request command, the rewrite tool transmits 400 the ID information of the destination node and data of the new control program to the destination node.

In S64 wird ein Verifizierungsaufforderungsbefehl übertragen. Das Neuschreibwerkzeug 400 überträgt den Verifizierungsaufforderungsbefehl individuell an jeden der Knoten 1030, wie es in 10 dargestellt ist. Ähnlich wie bei dem Fall zum Übertragen des Löschaufforderungsbefehls überträgt das Neuschreibwerkzeug 400 den Verifizierungsaufforderungsbefehl zusätzlich zu den ID-Informationen eines Zielknotens der Übertragung. Der Verifizierungsaufforderungsbefehl enthält einen Befehl, der eine Verifizierung (Validierung), ob ein neues Steuerungsprogramm normal geschrieben wurde, fordert.In S64, a verification request command is transmitted. The rewriting tool 400 transmits the verification request command to each of the nodes individually 10 - 30 as it is in 10 is shown. Similar to the case of transmitting the erase request command, the rewriting tool transmits 400 the verification request command in addition to the ID information of a destination node of the transmission. The verification request command contains a command that requires verification (validation) of whether a new control program has been written normally.

In S65 wird bestimmt, ob eine Antwort auf den Verifizierungsaufforderungsbefehl empfangen wird. Das Neuschreibwerkzeug 400 bestimmt, ob ein ACK als Antwort auf den Verifizierungsaufforderungsbefehl empfangen wird. Das Neuschreibwerkzeug 400 schreitet zu S66, wenn bestimmt wird, dass das ACK empfangen wird. Im Gegensatz dazu wiederholt das Neuschreibwerkzeug 400 S65, wenn das Neuschreibwerkzeug 400 nicht bestimmt, dass das ACK empfangen wird.In S65, it is determined whether a response to the verification request command is received. The rewriting tool 400 determines if an ACK is received in response to the verification request command. The rewriting tool 400 Proceeds to S66 when it is determined that the ACK is being received. In contrast, the rewrite tool repeats 400 S65, if the rewrite tool 400 does not determine that the ACK is being received.

In S66 wird bestimmt, ob eine Meldung hinsichtlich einer Beendigung eines Einstellens des zweiten Flags empfangen wird. Im Folgenden wird die Meldung hinsichtlich einer Beendigung des Einstellens des zweiten Flags aus Vereinfachungsgründen als Beendigungsmeldung bezeichnet. Die Beendigungsmeldung (d. h. die Meldung hinsichtlich einer Beendigung des Einstellens des zweiten Flags) enthält Informationen, die angeben, dass das Neuschreiben in jedem der Knoten 1030 beendet wurde. Das Neuschreibwerkzeug 400 schreitet zu S67, wenn bestimmt wird, dass die Beendigungsmeldung empfangen wird. Im Gegensatz dazu wiederholt das Neuschreibwerkzeug 400 S66, wenn das Neuschreibwerkzeug 400 nicht bestimmt, dass die Beendigungsmeldung empfangen wird. Der erste Knoten 10 überträgt die Beendigungsmeldung an das Neuschreibwerkzeug 400 jedes Mal, wenn das Einstellen des zweiten Flags 12 beendet ist, das heißt jedes Mal, wenn der Zählwert in dem zweiten Flag 12 gespeichert wird.In S66, it is determined whether a message regarding completion of setting of the second flag is received. In the following, the message regarding completion of setting of the second flag will be made Simplification reasons referred to as termination message. The termination message (ie, the message regarding completion of setting of the second flag) includes information indicating that the rewriting is in each of the nodes 10 - 30 has ended. The rewriting tool 400 goes to S67 when it is determined that the completion message is received. In contrast, the rewrite tool repeats 400 S66, if the rewrite tool 400 does not determine that the completion message is received. The first node 10 transmits the termination message to the rewrite tool 400 every time setting the second flag 12 that is, every time the count in the second flag 12 is stored.

In S67 wird bestimmt, ob das Neuschreiben in sämtlichen Knoten 1030 beendet ist. Das Neuschreibwerkzeug 400 bestimmt, dass das Neuschreiben in sämtlichen Knoten 1030 beendet ist, wenn es die Beendigungsmeldungen von sämtlichen Knoten 1030 empfangen hat. Das Neuschreibwerkzeug 400 bestimmt, dass das Neuschreiben in sämtlichen Knoten 1030 nicht beendet ist, wenn es nicht von sämtlichen Knoten 1030 eine Beendigungsmeldung empfangen hat. Das Neuschreibwerkzeug 400 beendet die Verarbeitung in 11, wenn es bestimmt, dass das Neuschreiben sämtlicher Knoten 1030 beendet wurde. Im Gegensatz dazu kehrt das Neuschreibwerkzeug 400 zu S60 zurück, wenn das Neuschreibwerkzeug 400 nicht bestimmt, dass das Neuschreiben sämtlicher Knoten 1030 beendet wurde. Das heißt, das Neuschreibwerkzeug 400 führt das Flussdiagramm der 11 aus, bis das Neuschreiben sämtlicher Knoten 1030 beendet ist. In S67, it is determined whether the rewriting in all nodes 10 - 30 finished. The rewriting tool 400 determines that rewriting in all nodes 10 - 30 is finished when there are the termination messages from all nodes 10 - 30 has received. The rewriting tool 400 determines that rewriting in all nodes 10 - 30 not finished, if not from all nodes 10 - 30 has received a termination message. The rewriting tool 400 stops processing in 11 if it determines that rewriting all nodes 10 - 30 has ended. In contrast, the rewriting tool returns 400 back to S60 if the rewrite tool 400 not determined that rewriting all nodes 10 - 30 has ended. That is, the rewrite tool 400 performs the flowchart of 11 from, until the rewriting of all nodes 10 - 30 finished.

Im Folgenden wird der Verarbeitungsbetrieb der jeweiligen Knoten 1030 mit Bezug auf die 5 bis 10 beschrieben.In the following, the processing operation of the respective nodes 10 - 30 with reference to the 5 to 10 described.

Eine Startverarbeitung des ersten Knotens 10 wird mit Bezug auf 5 beschrieben. Der erste Knoten 10 führt das Flussdiagramm der 5 durch, wenn beispielsweise ein Zündschalter eingeschaltet wird.A start processing of the first node 10 is related to 5 described. The first node 10 performs the flowchart of 5 by, for example, when an ignition switch is turned on.

In S10 werden ein Einschalten der Energiezufuhr und eine Rücksetzfreigabe durchgeführt. Der erste Knoten 10 schaltet eine Energiezufuhr zu dem Subjektknoten (d. h. dem ersten Knoten 10) ein und gibt ein Rücksetzten des Subjektknotens (d. h. des ersten Knotens 10) frei (Reset Release).In S10, the power supply is turned on and the reset enable is performed. The first node 10 switches an energy supply to the subject node (ie the first node 10 ) and gives a reset of the subject node (ie the first node 10 ) free (reset release).

In S11 wird bestimmt, ob das erste Flag 11 „OK“ repräsentiert. Der erste Knoten 10 überprüft den Speicherinhalt des ersten Flags 11 und bestimmt, ob das erste Flag 11 „OK“ repräsentiert, das heißt, bestimmt, ob das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde. Der erste Knoten 10 nimmt an, dass das erste Flag 11 „OK“ repräsentiert, das heißt, dass das Neuschreiben beendet wurde, wenn das erste Flag 11 gleich 1 ist. Dann schreitet die Verarbeitung zu S12. Der erste Knoten 10 nimmt an, dass das erste Flag 11 nicht „OK“ repräsentiert, das heißt, dass das Neuschreiben nicht beendet wurde, wenn das erste Flag 11 gleich 0 ist. In diesem Fall schreitet die Verarbeitung zu S14.In S11, it is determined whether the first flag 11 "OK" represents. The first node 10 checks the memory contents of the first flag 11 and determines if the first flag 11 "OK" represents, that is, determines whether the rewriting in the subject node (ie, the first node 10 ) was terminated. The first node 10 assumes that the first flag 11 Represents "OK", that is, the rewrite has ended when the first flag 11 is equal to 1. Then, the processing proceeds to S12. The first node 10 assumes that the first flag 11 does not represent "OK", that is, the rewrite has not been completed when the first flag 11 is equal to 0. In this case, the processing proceeds to S14.

In S12 wird bestimmt, ob das zweite Flag 12 gleich der Anzahl sämtlicher neu geschriebenen Zielknoten ist. S12 entspricht einem Bestimmungsabschnitt. Der erste Knoten 10 überprüft den Speicherinhalt des zweiten Flags 12 und bestimmt, ob das zweite Flag 12 = „Anzahl sämtlicher Neuschreibzielknoten“ ist, das heißt bestimmt, ob das Neuschreiben in sämtlichen Neuschreibzielknoten beendet wurde. In der vorliegenden Ausführungsform entsprechen sämtliche Neuschreibzielknoten dem ersten Knoten 10, dem zweiten Knoten 20 und dem dritten Knoten 30, die in dem fahrzeugeigenen Steuerungssystem enthalten sind. Daher ist in der vorliegenden Ausführungsform die Anzahl sämtlicher Neuschreibzielknoten gleich 3.In S12, it is determined whether the second flag 12 is equal to the number of all newly written destination nodes. S12 corresponds to a determination section. The first node 10 checks the memory contents of the second flag 12 and determines if the second flag 12 = "Number of all rewrite destination nodes", that is, it is determined whether rewrite has been completed in all the rewrite destination nodes. In the present embodiment, all the rewrite destination nodes correspond to the first node 10 , the second node 20 and the third node 30 included in the on-board control system. Therefore, in the present embodiment, the number of all rewriting destination nodes is 3.

Somit nimmt der erste Knoten 10 an, dass das zweite Flag 12 = „Anzahl sämtlicher Neuschreibzielknoten“ ist, das heißt, dass das Neuschreiben in sämtlichen Neuschreibzielknoten 1030 beendet wurde, wenn der Zählwert des zweiten Flags 12 gleich 3 ist. Dann schreitet die Verarbeitung zu S13. Eine Bedingung, bei der das Neuschreiben in sämtlichen Neuschreibzielknoten 1030 beendet wurde, kann als eine Bedingung betrachtet werden, bei der in sämtlichen Knoten 1030 das neue Programm geschrieben wurde.Thus, the first node takes 10 that the second flag 12 = "Number of all rewrite destination nodes", that is, rewrite in all rewrite destination nodes 10 - 30 has ended when the count of the second flag 12 is equal to 3. Then, the processing proceeds to S13. A condition in which the rewriting in all rewriting destination nodes 10 - 30 has ended, can be considered as a condition in which in all nodes 10 - 30 the new program was written.

Im Gegensatz dazu nimmt der erste Knoten 10 an, dass das zweite Flag 12 nicht gleich „der Anzahl sämtlicher Neuschreibzielknoten“ ist, das heißt, dass das Neuschreiben nicht in sämtlichen Neuschreibzielknoten 1030 beendet wurde, wenn der Zählwert des zweiten Flags 12 nicht gleich 3 ist. In diesem Fall schreitet die Verarbeitung zu S14. Eine Bedingung, bei der das Neuschreiben nicht in sämtlichen Neuschreibzielknoten 1030 beendet wurde (in mindestens einem der Neuschreibzielknoten 1030 nicht beendet wurde), kann als eine Bedingung betrachtet werden, bei der das alte Programm in mindestens einem der Knoten 1030 verblieben ist und in dem Rest der Knoten 1030 das neue Programm geschrieben wurde.In contrast, the first node takes 10 that the second flag 12 is not equal to "the number of all rewrite destination nodes", that is, the rewrite does not occur in all rewrite destination nodes 10 - 30 has ended when the count of the second flag 12 not equal to 3. In this case, the processing proceeds to S14. A condition in which rewriting does not occur in all rewrite destination nodes 10 - 30 has ended (in at least one of the rewrite target nodes 10 - 30 has not ended) may be considered as a condition where the old program is present in at least one of the nodes 10 - 30 is left and in the rest of the knot 10 - 30 the new program was written.

Der erste Knoten 10 zählt den Zählwert des zweiten Flags 12 aufwärts, wenn das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde, und außerdem, wenn er die jeweilige Beendigungsmeldung von dem zweiten Knoten 20 und dem dritten Knoten 30 empfängt. Daher bestimmt der erste Knoten 10, ob das Neuschreiben in sämtlichen Knoten 1030 beendet wurde, auf der Grundlage einer Bedingung, bei der das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde, und außerdem auf der Grundlage der Beendigungsmeldung, die individuell von den jeweiligen Knoten 20 und 30 erhalten wird. Das heißt, der erste Knoten 10 bestimmt in S12, ob sämtliche Knoten 1030 das Neuschreiben beendet haben. S12 entspricht einem Bestimmungsabschnitt.The first node 10 counts the count of the second flag 12 up when rewriting in the subject node (ie the first node 10 ), and also if it has the respective completion message from the second node 20 and the third node 30 receives. Therefore, the first node determines 10 whether the rewriting in all nodes 10 - 30 on the basis of a condition in which the rewriting in the subject node (ie, the first node 10 ), and also on the basis of the completion message individually from the respective nodes 20 and 30 is obtained. That is, the first node 10 determines in S12 if all nodes 10 - 30 have finished the rewriting. S12 corresponds to a determination section.

Wie es oben beschrieben wurde, bestimmt der erste Knoten 10, ob sämtliche Knoten 1030 das Neuschreiben beendet haben, auf der Grundlage des Zählwertes. Daher ist es möglich, dass der erste Knoten 10 bestimmt, ob sämtliche Knoten 1030 das Neuschreiben beendet haben, sodass eine Erhöhung der Informationsmenge verhindert wird. Das heißt, es ist möglich, dass der erste Knoten 10 die Informationsmenge im Vergleich zu einem Fall verringert, in dem Informationen, die angeben, dass das Neuschreiben beendet wurde, individuell in den jeweiligen Knoten 1030 gespeichert werden. Außerdem ist es möglich, zu bestimmen, ob sämtliche Knoten 1030 das Neuschreiben beendet haben.As described above, the first node determines 10 , whether all nodes 10 - 30 have finished rewriting based on the count. Therefore, it is possible that the first node 10 determines if all nodes 10 - 30 have finished the rewriting, so that an increase in the amount of information is prevented. That is, it is possible that the first node 10 reduces the amount of information compared to a case in which information indicating that the rewriting has been completed is individually in the respective node 10 - 30 get saved. It is also possible to determine if all the nodes 10 - 30 have finished the rewriting.

Der erste Knoten 10 entspricht einem Knoten, der in dem fahrzeugeigenen Steuerungssystem 100 enthalten ist. Daher kann der erste Knoten 10 mittels Durchführung der Bestimmung in S12 bestimmen, ob sämtliche Knoten 1030, die die Steuerung des fahrzeugeigenen Steuerungssystems 100 beeinflussen, das neue Programm neu geschrieben haben.The first node 10 corresponds to a node in the on-board control system 100 is included. Therefore, the first node 10 determine by performing the determination in S12 whether all nodes 10 - 30 that control the on-board control system 100 affect the new program have rewritten.

In S13 stellt der erste Knoten 10 den Steuerungsprogrammausführungsmodus ein (entspricht einem Entscheidungsabschnitt). Im Gegensatz dazu stellt der erste Knoten 10 in S14 den Neuprogrammierungsprogrammausführungsmodus ein (entspricht dem Entscheidungsabschnitt). Das heißt, der erste Knoten 10 entscheidet den Ausführungsmodus als Steuerungsmodus, wenn sämtliche Knoten 1030 das Neuschreiben des Steuerungsprogramms beendet haben. Der erste Knoten 10 entscheidet den Ausführungsmodus als Neuprogrammierungsmodus, wenn mindestens einer der Knoten 1030 das Neuschreiben des Steuerungsprogramms nicht beendet hat (wenn nicht sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben).In S13, the first node represents 10 the control program execution mode (corresponds to a decision section). In contrast, the first node represents 10 in S14, the reprogramming program execution mode (corresponding to the decision section). That is, the first node 10 decides execution mode as the control mode when all nodes 10 - 30 have finished rewriting the control program. The first node 10 decides the execution mode as a reprogramming mode if at least one of the nodes 10 - 30 has not finished rewriting the control program (if not all nodes have completed rewriting the control program).

In S15 wird bestimmt, ob die Energiezufuhr ausgeschaltet wird bzw. ist. Der erste Knoten 10 beendet die Verarbeitung in 5, wenn bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist. Die Verarbeitung kehrt zu S11 zurück, wenn nicht bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist.In S15, it is determined whether the power supply is turned off. The first node 10 stops processing in 5 when it is determined that the power supply is turned off. The processing returns to S11 unless it is determined that the power supply is turned off.

In der vorliegenden Ausführungsform wird gemäß einem Beispiel in der Bestimmung in S12 bestimmt, ob das Neuschreiben sämtlicher Knoten 1030 beendet wurde. Daher kann S11 in der vorliegenden Ausführungsform weggelassen werden. In diesem Fall kann bzw. muss der erste Knoten 10 zu dem Zeitpunkt der Startverarbeitung nicht bestimmen, ob das erste Flag 11 gleich 1 ist. Wenn jedoch die Bestimmung in S11 durchgeführt wird, kann der erste Knoten 10 zu S14 schreiten, ohne das zweite Flag 12 zu überprüfen, wenn das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) nicht beendet wurde. Wie es später beschrieben wird, bestimmen andere Knoten 20, 30 (in diesem Fall der zweite Knoten 20 und der dritte Knoten 30) ähnlich wie in S10 ebenfalls, ob das Neuschreiben in dem jeweiligen Subjektknoten beendet wurde. Daher ist es mittels Durchführung der Bestimmung in S11 möglich, dass der erste Knoten 10 Änderungen in den anderen Knoten 20, 30 verringert. Man beachte, dass die Verarbeitung in 5 die Startverarbeitung des ersten Knotens 10 beschreibt. In diesem Fall entspricht der erste Knoten 10 einem Subjektknoten und der zweite Knoten 20 und der dritte Knoten 30 werden als andere Knoten bezeichnet.In the present embodiment, according to an example in the determination in S12, it is determined whether the rewriting of all nodes 10 - 30 has ended. Therefore, S11 can be omitted in the present embodiment. In this case, the first node can or must 10 at the time of startup processing does not determine whether the first flag 11 is equal to 1. However, when the determination in S11 is made, the first node may 10 go to S14 without the second flag 12 when rewriting in the subject node (ie the first node 10 ) was not finished. As will be described later, other nodes determine 20 . 30 (in this case, the second node 20 and the third node 30 ) similarly as in S10, whether the rewriting has been completed in the respective subject node. Therefore, by performing the determination in S11, it is possible for the first node 10 Changes in the other nodes 20 . 30 reduced. Note that the processing in 5 the start processing of the first node 10 describes. In this case, the first node corresponds 10 a subject node and the second node 20 and the third node 30 are called other nodes.

Im Folgenden wird eine Startverarbeitung des zweiten Knotens 20 mit Bezug auf 6 erläutert.The following is a start processing of the second node 20 regarding 6 explained.

Der Subjektknoten entspricht in diesem Fall dem zweiten Knoten 20. In S20 werden ein Einschalten einer Energiezufuhr und ein Rücksetzfreigeben des Subjektknotens (in diesem Fall des zweiten Knotens 20) ähnlich wie in S10 durchgeführt. In S21 wird ähnlich wie in S11 bestimmt, ob das erste Flag 11 „OK“ repräsentiert. Der zweite Knoten 20 enthält kein zweites Flag, was ein Unterschied zu dem ersten Knoten 10 ist. Daher schreitet der zweite Knoten 20 zu S22, wenn bestimmt wird, dass das erste Flag 21 „OK“ repräsentiert. In S22 wird der Ausführungsmodus als Steuerungsmodus entschieden. Der zweite Knoten 20 schreitet zu S23, wenn nicht bestimmt wird, dass das erste Flag 21 „OK“ repräsentiert. In S23 wird der Ausführungsmodus als Neuprogrammierungsmodus entschieden.The subject node corresponds in this case to the second node 20 , In S20, turning on a power supply and resetting enable the subject node (in this case, the second node 20 ) similar to S10. In S21, similarly to S11, it is determined whether the first flag 11 "OK" represents. The second node 20 does not contain a second flag, which is a difference to the first node 10 is. Therefore, the second node proceeds 20 to S22 when it is determined that the first flag 21 "OK" represents. In S22, the execution mode is decided as the control mode. The second node 20 goes to S23 if it is not determined that the first flag 21 "OK" represents. In S23, the execution mode is decided as the reprogramming mode.

In S24 wird ähnlich wie in S15 bestimmt, ob die Energiezufuhr ausgeschaltet wird bzw. ist. Der zweite Knoten 20 beendet die Verarbeitung in 6, wenn bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist. Die Verarbeitung kehrt zu S21 zurück, wenn nicht bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist.In S24, similarly to S15, it is determined whether the power supply is turned off. The second node 20 stops processing in 6 when it is determined that the power supply is turned off. The processing returns to S21 unless it is determined that the power supply is turned off.

Mit Bezug auf die 7 und 8 wird der Verarbeitungsbetrieb in einem Fall beschrieben, in dem der erste Knoten 10 das Steuerungsprogramm neu schreibt. Der erste Knoten 10 führt das Flussdiagramm der 7 durch, wenn beispielsweise ein Zündschalter eingeschaltet wird. Wenn der Verarbeitungsbetrieb, der in 7 dargestellt ist, durchgeführt wird, ist der Ausführungsmodus des ersten Knotens 10 der Neuprogrammierungsmodus. Im Detail empfängt der erste Knoten 10 den Löschaufforderungsbefehl nach beispielsweise Übergehen in den Neuprogrammierungsmodus. Der erste Knoten 10 stellt das erste Flag 11 und das zweite Flag 12 während des Verarbeitungsbetriebs ein. Außerdem wird in der vorliegenden Ausführungsform angenommen, dass zu dem Zeitpunkt des Starts der Verarbeitung der 7 das erste Flag 11 auf 1 eingestellt ist und der Zählwert des zweiten Flags 12 auf drei eingestellt ist, was die Gesamtanzahl der Knoten ist.With reference to the 7 and 8th the processing operation will be described in a case where the first node 10 the control program rewrites. The first node 10 performs the flowchart of 7 by, for example, when an ignition switch is turned on. If the processing plant, which in 7 is performed is the execution mode of the first node 10 the reprogramming mode. In detail, the first node receives 10 the delete request command after, for example, going into reprogramming mode. The first node 10 represents the first flag 11 and the second flag 12 during the processing plant. In addition, in the present embodiment, it is assumed that at the time of start of processing 7 the first flag 11 is set to 1 and the count value of the second flag 12 is set to three, which is the total number of nodes.

In S30 werden das Einschalten der Energiezufuhr und das Rücksetzfreigeben durchgeführt. Der erste Knoten 10 schaltet die Energiezufuhr zu dem Subjektknoten (in diesem Fall dem Knoten 10) ein und gibt ein Rücksetzen des Subjektknotens frei.In S30, the power-on and the reset-release are performed. The first node 10 switches the power supply to the subject node (in this case the node 10 ) and enables a reset of the subject node.

In S31 wird bestimmt, ob der Subjektknoten (d. h. der erste Knoten 10) den Löschaufforderungsbefehl empfangen hat. Wenn der Löschaufforderungsbefehl empfangen wird, bestimmt der erste Knoten 10 auf der Grundlage der ID-Informationen, die zusammen mit dem Löschaufforderungsbefehl empfangen werden, ob der Löschaufforderungsbefehl für den Subjektknoten (d. h. den ersten Knoten 10) empfangen wird. Der erste Knoten 10 schreitet zu S32, wenn bestimmt wird, dass der Löschaufforderungsbefehl für den Subjektknoten (d. h. den ersten Knoten 10) empfangen wird. Die Verarbeitung schreitet zu S42 der 8, wenn nicht bestimmt wird, dass der Löschaufforderungsbefehl für den Subjektknoten (d. h. den ersten Knoten 10) empfangen wird. Die Verarbeitung in S42 und den anschließenden Schritten wird später erläutert.In S31, it is determined whether the subject node (ie, the first node 10 ) received the delete request command. When the delete request command is received, the first node determines 10 based on the ID information received along with the erase request command, whether the erase request command for the subject node (ie, the first node 10 ) Will be received. The first node 10 goes to S32 when it is determined that the delete request command for the subject node (ie, the first node 10 ) Will be received. The processing proceeds to S42 the 8th if it is not determined that the delete request command for the subject node (ie, the first node 10 ) Will be received. The processing in S42 and the subsequent steps will be explained later.

In S32 wird bestimmt, ob der Zählwert des zweiten Flags 12 gleich der Anzahl sämtlicher Neuschreibzielknoten ist. Der erste Knoten 10 schreitet zu S33, wenn bestimmt wird, dass der Zählwert des zweiten Flags 12 gleich drei ist. Der erste Knoten 10 schreitet zu S41, wenn nicht bestimmt wird, dass der Zählwert des zweiten Flags 12 gleich drei ist. Wie es oben beschrieben wurde, wird bzw. ist der Zählwert des zweiten Flags 12 zu dem Zeitpunkt des Starts der Verarbeitung in 7 auf drei eingestellt. Somit kann der erste Knoten 10 in einem Fall des Ergebnisses der Bestimmung von Ja annehmen, dass der Subjektknoten (d. h. der erste Knoten 10) das Neuschreiben zuerst durchführt. In dem Fall des Ergebnisses der Bestimmung von Nein kann der erste Knoten 10 annehmen, dass der Subjektknoten (d. h. der erste Knoten 10) das Neuschreiben als Zweites und später durchführt.In S32, it is determined whether the count value of the second flag 12 is equal to the number of all rewrite destination nodes. The first node 10 goes to S33 when it is determined that the count value of the second flag 12 is equal to three. The first node 10 goes to S41 if it is not determined that the count value of the second flag 12 is equal to three. As described above, the count value of the second flag becomes 12 at the time of start of processing in 7 set to three. Thus, the first node 10 in a case of the result of the determination of Yes, assume that the subject node (ie, the first node 10 ) does the rewriting first. In the case of the result of the determination of No, the first node may 10 assume that the subject node (ie, the first node 10 ) rewrites second and later.

In S41 wird das erste Flag 11 auf „NG“ gesetzt und das zweite Flag 12 wird auf „N“ gesetzt. Hier ist N beispielsweise eine positive ganze Zahl. Wenn der erste Knoten 10 den Löschaufforderungsbefehl empfängt und annimmt, dass das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) als Zweites und später durchgeführt wird, setzt der erste Knoten 10 das erste Flag 11 auf 0 und hält den Zählwert des zweiten Flags 12 auf dem vorherigen Wert. Das heißt, wenn der Subjektknoten (d. h. der erste Knoten 10) das Neuschreiben als Zweites und später durchführt, aktualisiert der erste Knoten 10 das erste Flag 11 und das zweite Flag 12 nicht.In S41, the first flag becomes 11 set to "NG" and the second flag 12 is set to "N". Here, for example, N is a positive integer. If the first node 10 receives the delete request command, and assumes that the rewrite in the subject node (ie, the first node 10 ) is performed second and later, the first node sets 10 the first flag 11 to 0 and holds the count of the second flag 12 on the previous value. That is, when the subject node (ie, the first node 10 ) rewrites second and later, the first node updates 10 the first flag 11 and the second flag 12 Not.

Im Gegensatz dazu wird das erste Flag 11 in S33 auf „NG“ gesetzt und das zweite Flag 12 wird auf 0 gesetzt. Das heißt, wenn der erste Knoten 10 den Löschaufforderungsbefehl empfängt und annimmt, dass der Subjektknoten (d. h. der erste Knoten 10) das Neuschreiben als Erstes durchführt, setzt der erste Knoten 10 das erste Flag 11 zurück, das heißt, setzt das erste Flag 11 auf 0, und setzt den Zählwert des zweiten Flags 12 zurück. Wie es hier beschrieben wurde, initialisiert der erste Knoten 10 den Zählwert des zweiten Flags 12, wenn ein Löschaufforderungsbefehl für einen der Knoten 1030 als Erstes empfangen wird.In contrast, the first flag 11 set to "NG" in S33 and the second flag 12 is set to 0. That is, if the first node 10 receives the erase request command, and assumes that the subject node (ie, the first node 10 ) performs the rewrite first, the first node sets 10 the first flag 11 back, that is, sets the first flag 11 to 0, and sets the count of the second flag 12 back. As described here, the first node initializes 10 the count of the second flag 12 when a delete request command for one of the nodes 10 - 30 is received first.

Der erste Knoten 10 zählt das Beenden des Neuschreibens des Steuerungsprogramms in dem Subjektknoten (d. h. dem ersten Knoten 10) und zählt ebenfalls das Erhalten von Beendigungsinformationen von den anderen Knoten 20, 30, sodass der erste Knoten 10 dieses als den Zählwert des zweiten Flags 12 speichert. Daher ist es durch Initialisieren des Zählwertes, wenn der erste Knoten 10 den Löschaufforderungsbefehl empfängt, möglich, ein Fortschreiten eines Neuschreibens in sämtlichen Knoten 1030 zu überprüfen. Die Beendigungsinformationen werden später erläutert.The first node 10 counting the completion of the rewrite of the control program in the subject node (ie, the first node 10 ) and also counts receiving completion information from the other nodes 20 . 30 so the first node 10 this as the count of the second flag 12 stores. Therefore, it is by initializing the count value when the first node 10 the erase request command receives, possibly, a retransmission in all nodes 10 - 30 to check. The completion information will be explained later.

Wenn, wie es in 10 dargestellt ist, der Löschaufforderungsbefehl empfangen wird, setzt der erste Knoten 10 das erste Flag 11 und das zweite Flag 12 zurück. Außerdem löscht der erste Knoten 10 das Steuerungsprogramm und überträgt das ACK an das Neuschreibwerkzeug 400. Wenn danach, wie es in 10 dargestellt ist, der Neuschreibaufforderungsbefehl von dem Neuschreibwerkzeug 400 empfangen wird, gibt der erste Knoten 10 das ACK zurück, sodass der erste Knoten 10 Daten des neuen Steuerungsprogramms von dem Neuschreibwerkzeug 400 empfängt. Die Daten des neuen Steuerungsprogramms enthalten Daten zum Neuschreiben des Steuerungsprogramms.If, as it is in 10 is shown, the erase request command is received, the first node sets 10 the first flag 11 and the second flag 12 back. In addition, the first node deletes 10 the control program and transmits the ACK to the rewrite tool 400 , If afterwards, as it is in 10 is shown, the rewrite request command from the rewrite tool 400 is received, gives the first node 10 the ACK back, so the first node 10 Data of the new control program from the rewrite tool 400 receives. The data of the new control program contains data for rewriting the control program.

In S34 schreibt der erste Knoten 10 den Subjektknoten neu. Der erste Knoten 10 schreibt die empfangenen Daten des neuen Steuerungsprogramms in die Neuschreibdomäne des ROM 14 (entspricht einer Neuschreibverarbeitung).In S34, the first node writes 10 the subject node new. The first node 10 writes the received data of the new control program into the rewrite domain of the ROM 14 (corresponds to a rewrite processing).

In S35 wird bestimmt, ob das Neuschreiben in dem Subjektknoten beendet wurde. Die Verarbeitung schreitet zu S36, wenn der erste Knoten 10 bestimmt, dass das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde. Im Gegensatz dazu wird die Verarbeitung des S35 wiederholt, wenn der erste Knoten 10 nicht bestimmt, dass das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde. Das heißt, der erste Knoten 10 wiederholt die Bestimmung in S35, bis das neue Steuerungsprogramm geschrieben wurde. Wie es in 10 dargestellt ist, überträgt der erste Knoten 10 das ACK an das Neuschreibwerkzeug 400, wenn die Neuschreibverarbeitung endet, und außerdem empfängt der erste Knoten 10 einen Verifizierungsaufforderungsbefehl von dem Neuschreibwerkzeug 400.In S35, it is determined whether rewrite has been completed in the subject node. The processing proceeds to S36 when the first node 10 certainly, that the rewriting in the subject node (ie, the first node 10 ) was terminated. In contrast, the processing of the S35 is repeated when the first node 10 not determine that the rewriting in the subject node (ie, the first node 10 ) was terminated. That is, the first node 10 repeats the determination in S35 until the new control program has been written. As it is in 10 is shown, the first node transmits 10 the ACK to the rewrite tool 400 when the rewrite processing ends, and also the first node receives 10 a verification request command from the rewrite tool 400 ,

In S36 wird das erste Flag 11 auf „OK“ gesetzt, und das zweite Flag 12 wird auf „+1“ gesetzt. Das heißt, wenn das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde, setzt der erste Knoten 10 das erste Flag 11 auf 1 und zählt den Zählwert des zweiten Flags 12 aufwärts. Danach überträgt der erste Knoten 10 in S37 eine Antwort (das heißt ACK) in Bezug auf den Verifizierungsaufforderungsbefehl für den Subjektknoten (d. h. den ersten Knoten 10) an das Neuschreibwerkzeug 400.In S36, the first flag becomes 11 set to "OK", and the second flag 12 is set to "+1". That is, when rewriting in the subject node (ie, the first node 10 ), the first node sets 10 the first flag 11 to 1 and counts the count of the second flag 12 upwards. After that, the first node transmits 10 in S37, a response (ie, ACK) with respect to the verification request command for the subject node (ie, the first node 10 ) to the rewrite tool 400 ,

In S38 überträgt der erste Knoten 10 die Meldung hinsichtlich einer Beendigung der Einstellung des zweiten Flags an das Neuschreibwerkzeug 400 (entspricht einem Individualmeldeabschnitt). Das heißt, wenn das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde, meldet der erste Knoten dem Neuschreibwerkzeug 400, dass das Neuschreiben des Steuerungsprogramms beendet wurde. Der erste Knoten 10 meldet dem Neuschreibwerkzeug 400, dass das Neuschreiben in einem anderen Knoten beendet wurde, jedes Mal, wenn der erste Knoten 10 das ACK in Bezug auf den Verifizierungsaufforderungsbefehl von den jeweiligen anderen Knoten 20, 30 erhält. Das heißt, der erste Knoten 10 überträgt die Beendigungsmeldung an das Neuschreibwerkzeug 400 jedes Mal, wenn das Einstellen des zweiten Flags 12 beendet ist, das heißt, jedes Mal, wenn der Zählwert des zweiten Flags 12 aufwärts gezählt wird bzw. wurde. Das ACK in Bezug auf den Verifizierungsaufforderungsbefehl entspricht Informationen, die angeben, dass das Neuschreiben des Steuerungsprogramms beendet wurde, wobei das ACK individuell von den jeweiligen anderen Knoten 20, 30 übertragen wird.In S38, the first node transmits 10 the message regarding termination of the setting of the second flag to the rewrite tool 400 (corresponds to an individual reporting section). That is, when rewriting in the subject node (ie, the first node 10 ), the first node reports to the rewrite tool 400 in that the rewrite of the control program has ended. The first node 10 reports to the rewrite tool 400 that the rewrite has been completed in another node every time the first node 10 the ACK with respect to the verification request command from the respective other nodes 20 . 30 receives. That is, the first node 10 transmits the termination message to the rewrite tool 400 every time setting the second flag 12 is finished, that is, every time the count of the second flag 12 is counted up or was. The ACK with respect to the verification request command corresponds to information indicating that the rewrite of the control program has ended, with the ACK being individualized from the respective other nodes 20 . 30 is transmitted.

Wie es oben beschrieben wurde, gibt der erste Knoten 10 die Beendigungsmeldung an das Neuschreibwerkzeug 400 jedes Mal aus, wenn das Neuschreiben in den jeweiligen Knoten 1030 beendet wurde. Daher ist es möglich, dass das Neuschreibwerkzeug 400 einen Zustand des Neuschreibens erkennen kann. Das heißt, das Neuschreibwerkzeug 400 kann den Fortschritt des Neuschreibens in jedem der Knoten 1030 entsprechend der Meldung der Beendigung (der Beendigungsmeldung) von dem ersten Knoten 10 erkennen. Somit ist es möglich, auf einfache Weise zwischen einem Knoten, bei dem das Neuschreiben beendet wurde, und einem Knoten, bei dem das Neuschreiben nicht beendet wurde, zu unterscheiden.As described above, the first node gives 10 the termination message to the rewrite tool 400 every time off when rewriting in each node 10 - 30 has ended. Therefore, it is possible that the rewrite tool 400 can recognize a state of rewriting. That is, the rewrite tool 400 can the progress of rewriting in each of the nodes 10 - 30 according to the notification of termination (the completion message) from the first node 10 detect. Thus, it is possible to easily distinguish between a node in which the rewrite has ended and a node in which the rewrite has not been completed.

In S39 wird bestimmt, ob die Anzahl sämtlicher Neuschreibzielknoten gleich „dem Wert des zweiten Flags“ ist. In S39 bestimmt der erste Knoten 10, ob der Zählwert des zweiten Flags 12 gleich 3 ist. Der erste Knoten 10 schreitet zu S40, wenn bestimmt wird, dass der Zählwert des zweiten Flags 12 gleich drei ist. Der erste Knoten 10 schreitet zu S31, wenn nicht bestimmt wird, dass der Zählwert des zweiten Flags 12 gleich drei ist.In S39, it is determined whether the number of all the rewrite destination nodes is equal to "the value of the second flag". In S39, the first node determines 10 , whether the count of the second flag 12 is equal to 3. The first node 10 goes to S40 when it is determined that the count value of the second flag 12 is equal to three. The first node 10 goes to S31 if it is not determined that the count value of the second flag 12 is equal to three.

In S40 wird bestimmt, ob die Energiezufuhr ausgeschaltet wird bzw. ist. Der erste Knoten 10 kehrt zu S31 zurück, wenn nicht bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist. Im Gegensatz dazu wird die Verarbeitung der 7 beendet, wenn bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist.In S40, it is determined whether the power supply is turned off. The first node 10 returns to S31 if it is not determined that the power supply is turned off. In contrast, the processing of the 7 stops when it is determined that the power supply is turned off.

Im Folgenden wird die Verarbeitung ab S42 mit Bezug auf das Flussdiagramm der 8 erläutert.Hereinafter, the processing from S42 will be described with reference to the flowchart of FIG 8th explained.

In S42 wird bestimmt, ob der Subjektknoten (d. h. der erste Knoten 10) den Löschaufforderungsbefehl für einen anderen Knoten 20, 30 empfangen hat. Wenn der Löschaufforderungsbefehl empfangen wurde, bestimmt der erste Knoten 10 auf der Grundlage der ID-Informationen, die zusammen mit dem Löschaufforderungsbefehl empfangen werden, ob der Löschaufforderungsbefehl für einen anderen Knoten 20, 30 empfangen wird. Der erste Knoten 10 schreitet zu S43, wenn bestimmt wird, dass der Löschaufforderungsbefehl für einen anderen Knoten 20, 30 empfangen wurde. Der erste Knoten 10 wiederholt S42, wenn nicht bestimmt wird, dass der Löschaufforderungsbefehl für einen anderen Knoten 20, 30 empfangen wurde.In S42, it is determined whether the subject node (ie, the first node 10 ) the delete request command for another node 20 . 30 has received. When the delete request command has been received, the first node determines 10 based on the ID information received along with the delete request command, whether the delete request command for another node 20 . 30 Will be received. The first node 10 goes to S43 when it is determined that the delete request command for another node 20 . 30 was received. The first node 10 repeats S42 unless it is determined that the delete request command is for another node 20 . 30 was received.

In S43 wird bestimmt, ob das zweite Flag 12 die „Anzahl sämtlicher Neuschreibzielknoten“ repräsentiert. Der erste Knoten 10 schreitet zu S44, wenn bestimmt wird, dass der Zählwert des zweiten Flags 12 gleich drei ist. Der erste Knoten 10 schreitet zu S47, wenn nicht bestimmt wird, dass der Zählwert des zweiten Flags 12 gleich drei ist. Wie es oben beschrieben wurde, wird bzw. ist der Zählwert des zweiten Flags 12 zu dem Zeitpunkt des Starts der Verarbeitung der 7 auf drei eingestellt. Somit kann der erste Knoten 10 annehmen, dass einer oder beide anderen Knoten 20, 30 das Neuschreiben zuerst durchführen, wenn das Ergebnis der Bestimmung Ja lautet. Wenn das Ergebnis der Bestimmung Nein lautet, kann der erste Knoten 10 annehmen, dass die anderen Knoten 20, 30 das Neuschreiben als Zweites und danach durchführen.In S43, it is determined whether the second flag 12 represents the "number of all rewrite destination nodes". The first node 10 goes to S44 when it is determined that the count value of the second flag 12 is equal to three. The first node 10 goes to S47 if it is not determined that the count value of the second flag 12 is equal to three. As described above, the count value of the second flag becomes 12 at the time of the start of processing of 7 set to three. Thus, the first node 10 assume that one or both other nodes 20 . 30 Do the rewrite first if the result of the determination is Yes. If the result of the determination is no is the first node 10 suppose that the other nodes 20 . 30 do the rewrite second and after.

In S44 wird das erste Flag 11 auf OK eingestellt, und das zweite Flag 12 wird auf 0 eingestellt. Das heißt, wenn der erste Knoten 10 den Löschaufforderungsbefehl empfängt und annimmt, dass die anderen Knoten 20, 30 das Neuschreiben zuerst durchführen, setzt der erste Knoten 10 den Zählwert des zweiten Flags 12 zurück. Auf diese Weise initialisiert der erste Knoten 10 den Zählwert des zweiten Flags 12, wenn ein Löschaufforderungsbefehl für einen der Knoten 1030 zuerst empfangen wird. Daher ist es durch Initialisieren des Zählwertes, wenn der erste Knoten 10 den Löschaufforderungsbefehl als Erstes empfängt, möglich, den Fortschritt des Neuschreibens in sämtlichen Knoten 1030 zu überprüfen. Man beachte, dass der erste Knoten 10 das erste Flag 11 nicht zurücksetzt, da der empfangene Löschaufforderungsbefehl keine Aufforderung für den Subjektknoten (d. h. den ersten Knoten 10) ist.In S44, the first flag becomes 11 set to OK, and the second flag 12 is set to 0. That is, if the first node 10 receives the delete request command and assumes that the other nodes 20 . 30 to do the rewrite first, the first node sets 10 the count of the second flag 12 back. In this way, the first node initializes 10 the count of the second flag 12 when a delete request command for one of the nodes 10 - 30 is received first. Therefore, it is by initializing the count value when the first node 10 the erase request command first, possibly, the progress of rewriting in all nodes 10 - 30 to check. Note that the first node 10 the first flag 11 does not reset because the received delete request command does not request for the subject node (ie, the first node 10 ).

Im Gegensatz dazu wird in S47 das erste Flag 11 auf „OK“ gesetzt und das zweite Flag 12 wird auf N gesetzt. Wenn der erste Knoten 10 den Löschaufforderungsbefehl empfängt und annimmt, dass die anderen Knoten 20, 30 das Neuschreiben als Zweites und danach durchführen, hält der erste Knoten 10 den Zählwert des zweiten Flags 12 auf dem vorherigen Wert, ohne das erste Flag 11 zurückzusetzen. Das heißt, wenn die anderen Knoten 20, 30 das Neuschreiben als Zweites und danach durchführen, aktualisiert der erste Knoten 10 das erste Flag 11 und das zweite Flag 12 nicht.In contrast, in S47, the first flag becomes 11 set to "OK" and the second flag 12 is set to N. If the first node 10 receives the delete request command and assumes that the other nodes 20 . 30 the rewrite second and after, the first node stops 10 the count of the second flag 12 on the previous value, without the first flag 11 reset. That is, if the other nodes 20 . 30 the rewrite second and after, the first node updates 10 the first flag 11 and the second flag 12 Not.

In S45 wird bestimmt, ob das Neuschreiben in dem anderen Knoten beendet wurde. Wenn der erste Knoten 10 bestimmt, dass das Neuschreiben in dem anderen Knoten beendet wurde, schreitet die Verarbeitung zu S46. Wenn der erste Knoten 10 nicht bestimmt, dass das Neuschreiben in dem anderen Knoten beendet wurde, wird die Verarbeitung in S45 wiederholt.In S45, it is determined whether rewrite has been completed in the other node. If the first node 10 If it is determined that the rewriting has been completed in the other node, the processing proceeds to S46. If the first node 10 If it is not determined that the rewriting has been completed in the other node, the processing in S45 is repeated.

Das heißt, der erste Knoten 10 bestimmt, dass das Neuschreiben in dem zweiten Knoten 20 beendet wurde, wenn er den Löschaufforderungsbefehl für den zweiten Knoten 20 empfangen hat und außerdem das ACK in Bezug auf den Verifizierungsaufforderungsbefehl von dem zweiten Knoten 20 empfängt, sodass die Verarbeitung zu S46 schreitet. Außerdem bestimmt der erste Knoten 10 nicht, dass das Neuschreiben in dem zweiten Knoten 20 beendet wurde, wenn er den Löschaufforderungsbefehl für den zweiten Knoten 20 empfangen hat und außerdem der erste Knoten 10 das ACK auf den Verifizierungsaufforderungsbefehl von dem zweiten Knoten 20 nicht empfängt, sodass die Verarbeitung in S45 wiederholt wird.That is, the first node 10 determines that the rewriting in the second node 20 when it has the delete request command for the second node 20 and also the ACK with respect to the verification request command from the second node 20 receives, so that the processing proceeds to S46. In addition, the first node determines 10 not that rewriting in the second node 20 when it has the delete request command for the second node 20 and also the first node 10 the ACK to the verification request command from the second node 20 is not received so that the processing in S45 is repeated.

Wenn auf ähnliche Weise der Löschaufforderungsbefehl für den dritten Knoten 20 empfangen wurde und außerdem das ACK auf den Verifizierungsaufforderungsbefehl von dem dritten Knoten 20 empfangen wird, bestimmt der erste Knoten 10, dass das Neuschreiben in dem dritten Knoten 30 beendet wurde, sodass die Verarbeitung zu S46 schreitet. Wenn der Löschaufforderungsbefehl für den dritten Knoten 30 empfangen wurde und außerdem der erste Knoten 10 das ACK auf den Verifizierungsaufforderungsbefehl von dem dritten Knoten 30 nicht empfängt, bestimmt der erste Knoten 10 nicht, dass das Neuschreiben in dem dritten Knoten 30 beendet wurde, sodass die Verarbeitung in S45 wiederholt wird.Similarly, if the delete request command for the third node 20 and also the ACK to the verification request command from the third node 20 is received, the first node determines 10 that the rewriting in the third node 30 has been ended so that the processing proceeds to S46. When the delete request command for the third node 30 was received and also the first node 10 the ACK on the verification request command from the third node 30 does not receive, determines the first node 10 not that rewriting in the third node 30 has been ended so that the processing in S45 is repeated.

In S46 wird das erste Flag 11 auf „OK“ gesetzt und das zweite Flag 12 wird auf N + 1 gesetzt. Das heißt, wenn bestimmt wird, dass das Neuschreiben in dem anderen Knoten 20, 30 beendet wurde, zählt der erste Knoten 10 den Zählwert des zweiten Flags 12 aufwärts. Das heißt, der erste Knoten 10 zählt den Zählwert des zweiten Flags 12 jeweils aufwärts, wenn er bestimmt, dass das Neuschreiben in dem zweiten Knoten 20 beendet wurde, und wenn er bestimmt, dass das Neuschreiben in dem dritten Knoten 30 beendet wurde. Man beachte, dass der erste Knoten 10 das erste Flag 11 nicht aktualisiert, da das Neuschreiben nicht den Subjektknoten (d. h. den ersten Knoten 10) betrifft.In S46, the first flag 11 set to "OK" and the second flag 12 is set to N + 1. That is, if it is determined that the rewrite in the other node 20 . 30 finished, the first node counts 10 the count of the second flag 12 upwards. That is, the first node 10 counts the count of the second flag 12 each up when it determines that the rewrite in the second node 20 has ended, and when he determines that the rewriting in the third node 30 has ended. Note that the first node 10 the first flag 11 not updated since rewriting does not include the subject node (ie the first node 10 ).

Im Folgenden wird mit Bezug auf 9 der Verarbeitungsbetrieb in einem Fall beschrieben, in dem das Steuerungsprogramm in dem zweiten Knoten 20 neu geschrieben wird. Der zweite Knoten 20 führt das Flussdiagramm der 9 durch, wenn beispielsweise der Zündschalter eingeschaltet wird. 9 zeigt den Verarbeitungsbetrieb zu dem Zeitpunkt des Neuprogrammierungsmodus in dem zweiten Knoten 20. Wenn der Verarbeitungsbetrieb, der in 9 dargestellt ist, durchgeführt wird, entspricht der Ausführungsmodus des zweiten Knotens 20 dem Neuprogrammierungsmodus. Im Detail empfängt der zweite Knoten 20 den Löschaufforderungsbefehl nach beispielsweise einem Wechsel zu dem Neuprogrammierungsmodus. Der zweite Knoten 20 setzt das erste Flag 21 während des Verarbeitungsbetriebs. In der vorliegenden Ausführungsform wird angenommen, dass das erste Flag 21 zu dem Zeitpunkt des Starts der Verarbeitung der 9 auf 1 gesetzt ist bzw. wird.The following is with reference to 9 the processing operation in a case where the control program in the second node 20 is rewritten. The second node 20 performs the flowchart of 9 by, for example, when the ignition switch is turned on. 9 shows the processing operation at the time of the reprogramming mode in the second node 20 , If the processing plant, which in 9 is performed corresponds to the execution mode of the second node 20 the reprogramming mode. In detail, the second node receives 20 the delete request command after, for example, a change to the reprogramming mode. The second node 20 sets the first flag 21 during the processing plant. In the present embodiment, it is assumed that the first flag 21 at the time of the start of processing of 9 on 1 is set or will.

In S50 werden das Einschalten der Energiezufuhr und das Rücksetzfreigeben durchgeführt. Das heißt, der zweite Knoten 20 schaltet die Energiezufuhr zu dem Subjektknoten (in diesem Fall der zweite Knoten 20) ein und gibt ein Rücksetzen des Subjektknotens (d. h. des zweiten Knotens 20) frei.In S50, the power supply is turned on and the reset enable is performed. That is, the second node 20 the power supply switches to the subject node (in this case, the second node 20 ) and gives a reset of the subject node (ie the second node 20 ) free.

In S51 wird bestimmt, ob der Löschaufforderungsbefehl für den Subjektknoten (d. h. den zweiten Knoten 20) empfangen wurde. Wenn der Löschaufforderungsbefehl empfangen wird, bestimmt der zweite Knoten 20 auf der Grundlage der ID-Informationen, die zusammen mit dem Löschaufforderungsbefehl empfangen werden, ob der Löschaufforderungsbefehl für den Subjektknoten (d. h. den zweiten Knoten 20) empfangen wird. Der zweite Knoten 20 schreitet zu S52, wenn bestimmt wird, dass der Löschaufforderungsbefehl für den Subjektknoten (d. h. den zweiten Knoten 20) empfangen wurde. Der zweite Knoten 20 wiederholt S51, wenn der zweite Knoten 20 nicht bestimmt, dass der Löschaufforderungsbefehl für den Subjektknoten (d. h. den zweiten Knoten 20) empfangen wurde.In S51, it is determined whether the erase request command for the subject node (ie, the second node 20 ) was received. When the delete request command is received, the second node determines 20 based on the ID information received along with the erase request command, whether the erase request command for the subject node (ie, the second node 20 ) Will be received. The second node 20 goes to S52 when it is determined that the erase request command for the subject node (ie, the second node 20 ) was received. The second node 20 repeats S51 when the second node 20 not determine that the erase request command for the subject node (ie, the second node 20 ) was received.

In S52 wird das erste Flag 21 auf „NG“ gesetzt. Das heißt, wenn der Löschaufforderungsbefehl empfangen wird und angenommen wird, dass der Subjektknoten (d. h. der zweite Knoten 20) das Neuschreiben durchführt, setzt der zweite Knoten 20 das erste Flag 21 zurück, das heißt stellt das erste Flag 21 auf 0 ein.In S52, the first flag becomes 21 set to "NG". That is, when the erase request command is received and it is assumed that the subject node (ie, the second node 20 ) does the rewrite, the second node sets 20 the first flag 21 back, that is, the first flag 21 to 0

Wenn, wie es in 10 dargestellt ist, der Löschaufforderungsbefehl empfangen wird, setzt der zweite Knoten 20 das erste Flag 21 zurück, löscht das Steuerungsprogramm und überträgt außerdem ein ACK an das Neuschreibwerkzeug 400. Wenn danach, wie es in 10 dargestellt ist, der Neuschreibaufforderungsbefehl von dem Neuschreibwerkzeug 400 empfangen wird, gibt der zweite Knoten 20 das ACK zurück, sodass der zweite Knoten 20 Daten des neuen Steuerungsprogramms von dem Neuschreibwerkzeug 400 empfängt. Die Daten des neuen Steuerungsprogramms enthalten Daten zum Neuschreiben des Steuerungsprogramms.If, as it is in 10 is shown, the erase request command is received, the second node sets 20 the first flag 21 back, clears the control program and also transmits an ACK to the rewrite tool 400 , If afterwards, as it is in 10 is shown, the rewrite request command from the rewrite tool 400 is received, gives the second node 20 the ACK back, so the second node 20 Data of the new control program from the rewrite tool 400 receives. The data of the new control program contains data for rewriting the control program.

In S53 schreibt der zweite Knoten 20 den Subjektknoten neu. Der zweite Knoten 20 schreibt die empfangenen Daten des neuen Steuerungsprogramms in die Neuschreibdomäne des ROM 14 (entspricht einer Neuschreibverarbeitung).In S53, the second node writes 20 the subject node new. The second node 20 writes the received data of the new control program into the rewrite domain of the ROM 14 (corresponds to a rewrite processing).

In S54 wird bestimmt, ob das Neuschreiben in dem Subjektknoten beendet wurde. Wenn der zweite Knoten 20 bestimmt, dass das Neuschreiben in dem Subjektknoten beendet wurde, schreitet die Verarbeitung zu S55. Wenn der zweite Knoten 20 nicht bestimmt, dass das Neuschreiben in dem Subjektknoten beendet wurde, wird die Verarbeitung in S54 wiederholt. Das heißt, der zweite Knoten 20 wiederholt die Bestimmung in S54, bis das neue Steuerungsprogramm geschrieben wurde. Wie es in 10 dargestellt ist, überträgt der zweite Knoten 20 ein ACK an das Neuschreibwerkzeug 400, wenn die Neuschreibverarbeitung beendet ist, und außerdem empfängt der zweite Knoten 20 einen Verifizierungsaufforderungsbefehl von dem Neuschreibwerkzeug 400.In S54, it is determined whether rewrite has been completed in the subject node. If the second node 20 determines that the rewriting has been completed in the subject node, the processing proceeds to S55. If the second node 20 If it is not determined that the rewriting has been completed in the subject node, the processing in S54 is repeated. That is, the second node 20 repeats the determination in S54 until the new control program has been written. As it is in 10 is shown, the second node transmits 20 an ACK to the rewrite tool 400 when the rewrite processing is finished, and also the second node receives 20 a verification request command from the rewrite tool 400 ,

In S55 wird das erste Flag 21 auf „OK“ gesetzt. Das heißt, da das Neuschreiben in dem Subjektknoten beendet wurde, setzt der zweite Knoten 20 das erste Flag 21 auf 1. Danach überträgt der zweite Knoten 20 in S56 eine Antwort (ACK) in Bezug auf den Verifizierungsaufforderungsbefehl für den Subjektknoten (den zweiten Knoten 20) an das Neuschreibwerkzeug 400.In S55, the first flag 21 set to "OK". That is, since the rewriting has been completed in the subject node, the second node sets 20 the first flag 21 on 1. Then transfer the second node 20 in S56, a response (ACK) regarding the verification request command for the subject node (the second node 20 ) to the rewrite tool 400 ,

In S57 wird bestimmt, ob die Energiezufuhr ausgeschaltet wird bzw. ist. Wenn nicht bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist, kehrt der zweite Knoten 20 zu S50 zurück. Wenn bestimmt wird, dass die Energiezufuhr ausgeschaltet wird bzw. ist, wird die Verarbeitung der 9 beendet. Der Verarbeitungsbetrieb des dritten Knotens 30 ist ähnlich wie derjenige des zweiten Knotens 20, wie es in 10 dargestellt ist.In S57, it is determined whether the power supply is turned off. If it is not determined that the power supply is turned off, the second node returns 20 back to S50. When it is determined that the power supply is turned off, the processing of the 9 completed. The processing operation of the third node 30 is similar to that of the second node 20 as it is in 10 is shown.

Wie es oben beschrieben wurde, bestimmt der erste Knoten 10, ob sämtliche Knoten 1030 das Neuschreiben eines Steuerungsprogramms beendet haben. Das heißt, der erste Knoten 10 bestimmt, ob die anderen Knoten 20, 30 und nicht nur der Subjektknoten (der erste Knoten 10) das Neuschreiben des Steuerungsprogramms beendet haben, As described above, the first node determines 10 , whether all nodes 10 - 30 have finished rewriting a control program. That is, the first node 10 determines if the other nodes 20 . 30 and not just the subject node (the first node 10 ) have finished rewriting the control program,

Der erste Knoten 10 entscheidet den Ausführungsmodus als Steuerungsmodus, wenn bestimmt wird, dass sämtliche Knoten 1030 das Neuschreiben des Steuerungsprogramms beendet haben. Daher entscheidet der erste Knoten 10 den Ausführungsmodus des Subjektknotens als Steuerungsmodus, wenn sämtliche Knoten 1030 das neue Programm (d. h. das neue Steuerungsprogramm) aufweisen.The first node 10 decides the execution mode as a control mode when it is determined that all nodes 10 - 30 have finished rewriting the control program. Therefore, the first node decides 10 the execution mode of the subject node as a control mode when all nodes 10 - 30 the new program (ie the new control program).

Im Gegensatz dazu entscheidet der erste Knoten 10 den Ausführungsmodus als den Neuprogrammierungsmodus, wenn bestimmt wird, dass nicht sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, das heißt, wenn bestimmt wird, dass mindestens ein Knoten das Neuschreiben des Steuerungsprogramms nicht beendet hat. Daher entscheidet der erste Knoten 10 den Ausführungsmodus des Subjektknotens (des ersten Knotens 10) als den Neuprogrammierungsmodus, wenn ein Knoten, der das neue Programm aufweist, und ein Knoten, der das alte Programm aufweist, in den Knoten 1030 vermischt sind. Somit ist es möglich, dass der erste Knoten 10 eine Ausführung einer Steuerung in einem Steuerungssystem in dem fahrzeugeigenen Steuerungssystem 100, in dem ein Knoten des Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind, verhindert.In contrast, the first node decides 10 the execution mode as the reprogramming mode when it is determined that not all nodes have completed rewriting the control program, that is, when it is determined that at least one node has not finished rewriting the control program. Therefore, the first node decides 10 the execution mode of the subject node (the first node 10 ) as the reprogramming mode when a node having the new program and a node having the old program enters the node 10 - 30 are mixed. Thus, it is possible for the first node 10 an embodiment of a controller in a control system in the on-board control system 100 in which a node of the node of the new program and a node of the old program are mixed prevented.

Da der erste Knoten 10 bestimmen kann, ob das Neuschreiben in sämtlichen Knoten 1030 des fahrzeugeigenen Steuerungssystems 100 beendet wurde, ist es möglich, die Beendigung des Neuschreibens sämtlicher Knoten 1030 in Einheiten des fahrzeugeigenen Steuerungssystems 100 zu gewährleisten. Da das fahrzeugeigene Steuerungssystem 100 den ersten Knoten 10 enthält, ist es somit möglich, die Ausführung einer Steuerung durch ein Steuerungssystem bei einer Bedingung zu verhindern, bei der ein Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind.Because the first node 10 can determine whether rewriting in all nodes 10 - 30 of the vehicle control system 100 terminated, it is possible to terminate the Rewriting of all nodes 10 - 30 in units of the vehicle's own control system 100 to ensure. Because the vehicle's own control system 100 the first node 10 Thus, it is possible to prevent the execution of control by a control system in a condition where a node of the new program and a node of the old program are mixed.

Das fahrzeugeigene Steuerungssystem 100 kann vier oder mehr Knoten einschließlich des ersten Knotens 10 enthalten, oder kann zwei Knoten einschließlich des ersten Knotens 10 enthalten. Das heißt, das fahrzeugeigene Steuerungssystem 100 kann mehrere Knoten enthalten, wobei der erste Knoten 10 enthalten ist.The vehicle control system 100 can have four or more nodes including the first node 10 included, or may be two nodes including the first node 10 contain. That is, the on-board control system 100 can contain multiple nodes, with the first node 10 is included.

Man beachte, dass die vorliegende Erfindung nicht auf die vorliegende Ausführungsform beschränkt ist. Stattdessen kann die vorliegende Erfindung auf verschiedene Weise modifiziert werden, ohne von dem Bereich der vorliegenden Erfindung abzuweichen. Im Folgenden werden als Beispiele von modifizierten Ausführungsformen zweite bis siebte Ausführungsformen erläutert. Man beachte, dass die obige Ausführungsform und die folgenden Ausführungsformen unabhängig verwendet werden können, aber auch geeignet kombiniert verwendet werden können. Die vorliegende Erfindung ist nicht auf eine Kombination beschränkt, die in den Ausführungsformen beschrieben ist. Die vorliegende Erfindung kann durch verschiedene Kombinationen Verwendung finden.Note that the present invention is not limited to the present embodiment. Instead, the present invention may be modified in various ways without departing from the scope of the present invention. Hereinafter, as examples of modified embodiments, second to seventh embodiments will be explained. Note that the above embodiment and the following embodiments may be used independently, but may be used suitably combined. The present invention is not limited to a combination described in the embodiments. The present invention can be used by various combinations.

(Zweite Ausführungsform)Second Embodiment

Im Folgenden wird eine zweite Ausführungsform des ersten Knotens 10 mit Bezug auf 12 beschrieben. Hier wird der sich von der ersten Ausführungsform unterscheidende Teil der zweiten Ausführungsform erläutert. In der vorliegenden Ausführungsform werden aus Vereinfachungsgründen dieselben Bezugszeichen wie in der ersten Ausführungsform verwendet.The following is a second embodiment of the first node 10 regarding 12 described. Here, the part of the second embodiment different from the first embodiment will be explained. In the present embodiment, the same reference numerals as in the first embodiment are used for the sake of simplicity.

Der erste Knoten 10 gemäß der zweiten Ausführungsform überprüft einen Wert des ersten Flags 11 und den Zählwert des zweiten Flags 12, um zu bestimmen, ob das Neuschreiben sämtlicher Knoten 1030 beendet wurde.The first node 10 According to the second embodiment checks a value of the first flag 11 and the count of the second flag 12 to determine if rewriting all nodes 10 - 30 has ended.

Der erste Knoten 10 gemäß der zweiten Ausführungsform führt das Flussdiagramm der 12 durch, wenn beispielsweise der Zündschalter eingeschaltet wird.The first node 10 According to the second embodiment, the flowchart of the 12 by, for example, when the ignition switch is turned on.

In S11 wird bestimmt, ob das erste Flag 11 „OK“ repräsentiert (entspricht einem Beispiel eines Bestimmungsabschnitts und eines Individualbestimmungsabschnitts). Der erste Knoten 10 überprüft den Speicherinhalt des ersten Flags 11 und bestimmt, ob das erste Flag 11 „OK“ repräsentiert, das heißt bestimmt, ob das Neuschreiben in dem Subjektknoten (dem ersten Knoten 10) beendet wurde. Wenn das erste Flag 11 gleich 1 ist, nimmt der erste Knoten 10 an, dass das erste Flag 11 „OK“ repräsentiert, das heißt, dass das Neuschreiben beendet wurde, sodass die Verarbeitung zu S12a schreitet. Wenn das erste Flag 11 gleich 0 ist, nimmt der erste Knoten 10 an, dass das erste Flag nicht „OK“ repräsentiert, das heißt, dass das Neuschreiben nicht beendet wurde, sodass die Verarbeitung zu S14 schreitet. In S11, it is determined whether the first flag 11 "OK" represents (corresponds to an example of a determination section and an individual determination section). The first node 10 checks the memory contents of the first flag 11 and determines if the first flag 11 "OK", that is, determines whether the rewriting in the subject node (the first node 10 ) was terminated. If the first flag 11 is equal to 1, the first node takes 10 that the first flag 11 "OK", that is, the rewriting has been completed, so that the processing proceeds to S12a. If the first flag 11 is equal to 0, takes the first node 10 that the first flag does not represent "OK", that is, the rewriting has not been completed, so that the processing proceeds to S14.

In S12a wird bestimmt, ob das zweite Flag 12 gleich „der Anzahl anderer Neuschreibzielknoten“ ist. Die anderen Neuschreibzielknoten werden später erläutert. Der erste Knoten 10 überprüft den Speicherinhalt des zweiten Flags 12 und bestimmt, ob das zweite Flag 12 gleich der Anzahl der anderen Neuschreibzielknoten ist. Die anderen Neuschreibzielknoten entsprechen dem zweiten Knoten 20 und dem dritten Knoten 30, die nicht der erste Knoten 10 unter den Knoten sind, die in dem fahrzeugeigenen Steuerungssystem enthalten sind. Daher ist in der vorliegenden Ausführungsform die Anzahl sämtlicher anderer Zielknoten gleich 2 (zwei).In S12a, it is determined whether the second flag 12 is equal to "the number of other rewrite destination nodes". The other rewrite destination nodes will be explained later. The first node 10 checks the memory contents of the second flag 12 and determines if the second flag 12 is equal to the number of other rewrite destination nodes. The other rewrite destination nodes correspond to the second node 20 and the third node 30 that is not the first node 10 among the nodes included in the on-board control system. Therefore, in the present embodiment, the number of all other destination nodes is 2 (two).

Wenn somit der Zählwert des zweiten Flags 12 gleich 2 ist, nimmt der erste Knoten 10 an, dass das zweite Flag 12 gleich „der Anzahl der anderen Neuschreibzielknoten“ ist, das heißt, dass das Neuschreiben in den anderen Neuschreibzielknoten 20, 30 beendet wurde, sodass die Verarbeitung zu S13 schreitet. Wenn daher der Zählwert des zweiten Flags 12 mit der Anzahl der anderen Knoten 20, 30 übereinstimmt, und wenn außerdem der Wert des ersten Flags 11 gleich 1 ist, bestimmt der erste Knoten 10, dass sämtliche Knoten 1030 das Neuschreiben beendet haben (entspricht einem Bestimmungsabschnitt und einem Gesamtbestimmungsabschnitt).Thus, if the count of the second flag 12 is equal to 2, takes the first node 10 that the second flag 12 is equal to "the number of other rewrite destination nodes", that is, rewriting in the other rewrite destination nodes 20 . 30 has been ended so that the processing proceeds to S13. Therefore, if the count of the second flag 12 with the number of other nodes 20 . 30 matches and, in addition, the value of the first flag 11 is equal to 1, the first node determines 10 that all nodes 10 - 30 have completed the rewriting (corresponds to a determination section and an overall determination section).

Wenn im Gegensatz dazu der Zählwert des zweiten Flags 12 nicht gleich 2 ist, nimmt der erste Knoten 10 an, dass das zweite Flag 12 nicht gleich „der Anzahl der anderen Neuschreibzielknoten“ ist, das heißt, dass das Neuschreiben in mindestens einem der anderen Neuschreibzielknoten 20, 30 nicht beendet wurde. In diesem Fall schreitet die Verarbeitung zu S14.In contrast, when the count of the second flag 12 not equal to 2, takes the first node 10 that the second flag 12 is not equal to "the number of other rewrite destination nodes", that is, rewrite in at least one of the other rewrite destination nodes 20 . 30 not finished. In this case, the processing proceeds to S14.

Wie es oben beschrieben wurde, kann der erste Knoten 10 gemäß der zweiten Ausführungsform ähnliche Wirkungen wie in der ersten Ausführungsform erzielen. Außerdem kann der erste Knoten 10 gemäß der zweiten Ausführungsform auf der Grundlage des Wertes des ersten Flags 11 bestimmen, ob das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde. Daher muss der erste Knoten 10 nicht in unnötiger Weise zählen, dass das Neuschreiben in dem Subjektknoten (d. h. dem ersten Knoten 10) beendet wurde, wenn der erste Knoten 10 nur zählt, dass das Neuschreiben in den anderen Knoten 20, 30 beendet wurde. Daher kann der erste Knoten 10 durch Überprüfen des ersten Flags 11 und des zweiten Flags 12 bestimmen, ob das Neuschreiben in sämtlichen Knoten 1030 beendet wurde.As described above, the first node 10 according to the second embodiment achieve similar effects as in the first embodiment. In addition, the first node 10 according to the second embodiment, based on the value of the first flag 11 determine whether the rewriting in the subject node (ie, the first node 10 ) was terminated. Therefore, the first node 10 do not unnecessarily count that rewriting in the subject node (ie the first node 10 ) was terminated when the first node 10 just counting that rewriting in the other nodes 20 . 30 has ended. Therefore, the first node 10 by checking the first flag 11 and the second flag 12 Determine if rewriting in all nodes 10 - 30 has ended.

(Dritte Ausführungsform)Third Embodiment

Im Folgenden wird eine dritte Ausführungsform des ersten Knotens 10 mit Bezug auf 13 erläutert. Hier wird nur der sich von den obigen Ausführungsformen unterscheidende Teil erläutert. In der vorliegenden Ausführungsform werden aus Vereinfachungsgründen dieselben Bezugszeichen wie in den obigen Ausführungsformen verwendet.The following is a third embodiment of the first node 10 regarding 13 explained. Here, only the part different from the above embodiments will be explained. In the present embodiment, the same reference numerals as in the above embodiments are used for the sake of simplicity.

Der erste Knoten 10 gemäß der dritten Ausführungsform überprüft einen Wert des ersten Flags 11 und Informationen des zweiten Flags 12, um zu bestimmen, ob das Neuschreiben sämtlicher Knoten 1030 beendet wurde. Der erste Knoten 10 gemäß der dritten Ausführungsform speichert Informationen, die angeben, ob das Neuschreiben beendet wurde, entsprechend jedem der anderen Knoten 20, 30. Im Folgenden werden Informationen, die dem zweiten Knoten 20 entsprechen, als zweite Knoteninformationen bezeichnet, und Informationen, die dem dritten Knoten 30 entsprechen, werden als dritte Knoteninformationen bezeichnet.The first node 10 According to the third embodiment checks a value of the first flag 11 and information of the second flag 12 to determine if rewriting all nodes 10 - 30 has ended. The first node 10 According to the third embodiment, information indicating whether the rewriting has been completed is stored corresponding to each of the other nodes 20 . 30 , The following is information that the second node 20 correspond, referred to as second node information, and information corresponding to the third node 30 are called third node information.

Der erste Knoten 10 gemäß der dritten Ausführungsform aktualisiert die zweiten Knoteninformationen in eine Neuschreibbeendigung, wenn bestimmt wird, dass das Neuschreiben in dem zweiten Knoten 20 beendet wurde. Auf ähnliche Weise aktualisiert der erste Knoten 10 gemäß der dritten Ausführungsform die dritten Knoteninformationen in eine Neuschreibbeendigung, wenn bestimmt wird, dass das Neuschreiben in dem dritten Knoten 30 beendet wurde.The first node 10 According to the third embodiment, when it is determined that rewriting in the second node, the second node information is updated to a rewrite completion 20 has ended. Similarly, the first node updates 10 according to the third embodiment, the third node information in a rewrite completion when it is determined that the rewriting in the third node 30 has ended.

Der erste Knoten 10 gemäß der dritten Ausführungsform führt das Flussdiagramm der 13 durch, wenn beispielsweise der Zündschalter eingeschaltet wird.The first node 10 According to the third embodiment, the flowchart of the 13 by, for example, when the ignition switch is turned on.

In S12b bestimmt der erste Knoten 10 durch Überprüfen der zweiten Knoteninformationen und der dritten Knoteninformationen, ob das Neuschreiben der anderen Neuschreibzielknoten beendet wurde. Die anderen Neuschreibzielknoten entsprechen wie in der zweiten Ausführungsform dem zweiten Knoten 20 und dem dritten Knoten 30.In S12b, the first node determines 10 by checking the second node information and the third node information, whether the rewriting of the other rewrite destination nodes has been completed. The other rewrite destination nodes correspond to the second node as in the second embodiment 20 and the third node 30 ,

Wenn sowohl die zweiten Knoteninformationen als auch die dritten Knoteninformationen die Neuschreibbeendigung angeben, nimmt der erste Knoten 10 an, dass die anderen Neuschreibzielknoten 20, 30 das Neuschreiben beendet haben, und schreitet zu S13. Wenn daher die zweiten Knoteninformationen und die dritten Knoteninformationen jeweils die Neuschreibbeendigung angeben, und wenn außerdem der Wert des ersten Flags 11 gleich 1 ist, bestimmt der erste Knoten 10, dass sämtliche Knoten 1030 das Neuschreiben beendet haben (entspricht einem Bestimmungsabschnitt und einem Gesamtbestimmungsabschnitt).If both the second node information and the third node information indicate the rewrite completion, the first node takes 10 that the other rewrite target nodes 20 . 30 have finished the rewriting, and go to S13. Therefore, if the second node information and the third node information respectively indicate the rewrite completion, and also the value of the first flag 11 is equal to 1, the first node determines 10 that all nodes 10 - 30 have completed the rewriting (corresponds to a determination section and an overall determination section).

Wenn mindestens eine aus den zweiten Knoteninformationen und den dritten Knoteninformationen nicht die Neuschreibbeendigung angibt, nimmt der erste Knoten 10 an, dass mindestens einer der anderen Neuschreibzielknoten 20, 30 das Neuschreiben nicht beendet hat, und schreitet zu S14. Der erste Knoten 10 gemäß der dritten Ausführungsform kann ähnliche Wirkungen wie die obigen Ausführungsformen erzielen. Außerdem ist es durch Bereitstellung der ersten Knoteninformationen, der zweiten Knoteninformationen und der dritten Knoteninformationen jeweils in Entsprechung zu den Knoten 10, 20, 30 möglich, einen Neuschreibzustand der jeweiligen Knoten 1030 separat zu steuern.If at least one of the second node information and the third node information does not indicate the rewrite completion, the first node takes 10 that at least one of the other rewrite destination nodes 20 . 30 did not finish the rewriting, and proceed to S14. The first node 10 According to the third embodiment, similar effects as the above embodiments can be obtained. In addition, by providing the first node information, the second node information, and the third node information, respectively, it corresponds to the nodes 10 . 20 . 30 possible, a rewrite state of the respective nodes 10 - 30 to steer separately.

(Vierte Ausführungsform)Fourth Embodiment

Im Folgenden wird eine vierte Ausführungsform des ersten Knotens 10 mit Bezug auf die 14 und 15 erläutert. Hier wird nur der sich von den obigen Ausführungsformen unterscheidende Teil beschrieben. In der vorliegenden Ausführungsform werden aus Vereinfachungsgründen dieselben Bezugszeichen wie in den obigen Ausführungsformen verwendet.The following is a fourth embodiment of the first node 10 with reference to the 14 and 15 explained. Here, only the part different from the above embodiments will be described. In the present embodiment, the same reference numerals as in the above embodiments are used for the sake of simplicity.

Der erste Knoten 10 gemäß der vierten Ausführungsform ist in einem fahrzeugeigenen Steuerungssystem 110 zusammen mit einem dritten Knoten 30 enthalten. Der erste Knoten 10 ist mit einem ersten Kommunikationsbus 210 verbunden, und der dritte Knoten 30 ist mit einem zweiten Kommunikationsbus 220 verbunden, der sich von dem ersten Kommunikationsbus 210 unterscheidet.The first node 10 According to the fourth embodiment is in an on-board control system 110 together with a third node 30 contain. The first node 10 is with a first communication bus 210 connected, and the third node 30 is with a second communication bus 220 connected, extending from the first communication bus 210 different.

Die Knoten 1030, die in dem fahrzeugeigenen Steuerungssystem 110 enthalten sind, enthalten Knoten, die mit unterschiedlichen Kommunikationsbussen 210, 220 verbunden sind. Das heißt, der erste Knoten 10 und der zweite Knoten 20 sind mit dem ersten Kommunikationsbus 210 verbunden. Der dritte Knoten 30 ist mit dem zweiten Kommunikationsbus 220 verbunden. Der dritte Knoten 30 ist mit dem zweiten Kommunikationsbus 220 verbunden, der eine andere Domäne (Domain) als der erste Knoten 10 und der zweite Knoten 20 ist.The knots 10 - 30 operating in the vehicle's own control system 110 Contain nodes that contain different communication buses 210 . 220 are connected. That is, the first node 10 and the second node 20 are with the first communication bus 210 connected. The third node 30 is with the second communication bus 220 connected. The third node 30 is with the second communication bus 220 connected to a different domain (domain) than the first node 10 and the second node 20 is.

Der erste Kommunikationsbus 210 und der zweite Kommunikationsbus 220 sind mit einem Vermittlungsknoten 300 verbunden. Der erste Knoten 10 und der dritte Knoten 30 können über den Vermittlungsknoten 300 miteinander kommunizieren. Der zweite Knoten 20 und der dritte Knoten 30 können über den Vermittlungsknoten 300 miteinander kommunizieren. Daher können in dem fahrzeugeigenen Steuerungssystem 110 mehrere Knoten, die mit unterschiedlichen Kommunikationsbussen 210, 220 verbunden sind, über den Vermittlungsknoten 300 miteinander kommunizieren.The first communication bus 210 and the second communication bus 220 are with a switching node 300 connected. The first node 10 and the third node 30 can through the switching node 300 communicate with each other. The second node 20 and the third node 30 can through the switching node 300 communicate with each other. Therefore, in the vehicle's own control system 110 several nodes with different communication buses 210 . 220 connected via the switching node 300 communicate with each other.

Der Vermittlungsknoten 300 speichert Vermittlungs-ID-Informationen 310. Die Vermittlungs-ID-Informationen 310 enthalten die ID-Informationen, die den jeweiligen Knoten 10, 20 angeben. Bei einer Kommunikation über den Vermittlungsknoten 300 werden beispielsweise Vermittlungsrahmeninformationen, wie es in 15 dargestellt ist, verwendet.The switching node 300 stores routing ID information 310 , The placement ID information 310 Contain the ID information that represents each node 10 . 20 specify. In a communication via the switching node 300 For example, switching frame information as shown in FIG 15 is shown used.

Dementsprechend kann der erste Knoten 10 die Beendigungsinformationen über den ersten Kommunikationsbus 210 von dem zweiten Knoten 20 erhalten. Außerdem kann der erste Knoten 10 die Beendigungsinformationen über den Vermittlungsknoten 300 von dem dritten Knoten 30 erhalten. Das heißt, der erste Knoten 10 empfängt jeden Aufforderungsbefehl für jeden Knoten und das ACK, die von dem Vermittlungsknoten 300 entsprechend den Vermittlungs-ID-Informationen übertragen werden, und führt eine Einstellung des zweiten Flags 12 durch. Der erste Knoten 10 bestimmt die Neuschreibbeendigungen sämtlicher Knoten 1030 auf die Weise, die in der ersten Ausführungsform, der zweiten Ausführungsform und der dritten Ausführungsform beschrieben wurde. Der Aufforderungsbefehl enthält den Löschaufforderungsbefehl, den Neuschreibaufforderungsbefehl und den Verifizierungsaufforderungsbefehl.Accordingly, the first node 10 the termination information on the first communication bus 210 from the second node 20 receive. In addition, the first node 10 the termination information about the switching node 300 from the third node 30 receive. That is, the first node 10 receives each request command for each node and the ACK sent by the switch node 300 are transmitted according to the switch ID information, and carry out an adjustment of the second flag 12 by. The first node 10 determines the rewrite completions of all nodes 10 - 30 in the manner described in the first embodiment, the second embodiment and the third embodiment. The prompt command includes the delete request command, the rewrite request command, and the verify request command.

Der erste Knoten 10 gemäß der vierten Ausführungsform kann dieselben Wirkungen wie die obigen Ausführungsformen erzielen. Das heißt, der erste Knoten 10 gemäß der vierten Ausführungsform kann ähnliche Wirkungen wie die obige Ausführungsform sogar dann erzielen, wenn der dritte Knoten 30, der in dem fahrzeugeigenen Steuerungssystem 110 enthalten ist, mit dem zweiten Kommunikationsbus 220 verbunden ist, der ein anderer Bus als derjenige des Subjektknotens (der erste Knoten 10) ist.The first node 10 According to the fourth embodiment, the same effects as the above embodiments can be obtained. That is, the first node 10 According to the fourth embodiment, similar effects as the above embodiment can be achieved even if the third node 30 in the vehicle's own control system 110 is contained with the second communication bus 220 which is another bus than that of the subject node (the first node 10 ).

(Fünfte Ausführungsform)Fifth Embodiment

Im Folgenden wird eine fünfte Ausführungsform, die einen ersten Knoten 10a aufweist, mit Bezug auf die 16 und 17 beschrieben. Hier wird der Teil der fünften Ausführungsform beschrieben, der sich von den obigen Ausführungsformen unterscheidet. In der vorliegenden Ausführungsform werden aus Vereinfachungsgründen dieselben Bezugszeichen wie in den obigen Ausführungsformen verwendet. The following is a fifth embodiment, which is a first node 10a with respect to 16 and 17 described. Here will be described the part of the fifth embodiment which is different from the above embodiments. In the present embodiment, the same reference numerals as in the above embodiments are used for the sake of simplicity.

Der erste Knoten 10 ist in einem fahrzeugeigenen Steuerungssystem enthalten. Im Gegensatz dazu ist der erste Knoten 10a nicht in dem fahrzeugeigenen Steuerungssystem 120 enthalten. Außerdem entscheidet der erste Knoten 10a die Ausführungsmodi mehrerer Knoten 2040, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind.The first node 10 is included in an on-board control system. In contrast, the first node 10a not in the vehicle's own control system 120 contain. In addition, the first node decides 10a the execution modes of multiple nodes 20 - 40 operating in the vehicle's own control system 120 are included.

Das fahrzeugeigene Steuerungssystem 120 enthält einen zweiten Knoten 20, einen dritten Knoten 30 und einen vierten Knoten 40, die mit einem Kommunikationsbus 200 verbunden sind. Der vierte Knoten 40 enthält ähnlich wie der zweite Knoten 20 und der dritte Knoten 30 ein erstes Flag 41 innerhalb des Subjektknotens (in diesem Fall der vierte Knoten 40).The vehicle control system 120 contains a second node 20 , a third node 30 and a fourth node 40 that with a communication bus 200 are connected. The fourth node 40 contains similar to the second node 20 and the third node 30 a first flag 41 within the subject node (in this case, the fourth node 40 ).

Der erste Knoten 10a ist mit dem Kommunikationsbus 200 verbunden. Der erste Knoten 10a ist jedoch nicht in dem fahrzeugeigenen Steuerungssystem 120 enthalten. Der erste Knoten 10a kann die Beendigungsinformationen, die von den anderen Knoten 20, 30, 40 übertragen werden, wie in dem Fall des ersten Knotens 10 erhalten. Um zu bestimmen, ob das Neuschreiben in den anderen Knoten 2040 beendet wurde, zählt der erste Knoten 10a den Zählwert des zweiten Flags 12 jedes Mal aufwärts, wenn die Beendigungsinformationen erhalten werden, und speichert die Anzahl der Knoten, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind. In der fünften Ausführungsform ist die Anzahl der Knoten, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind, gleich drei. Der erste Knoten 10a muss das erste Flag 11 im Unterschied zu dem ersten Knoten 10 nicht enthalten.The first node 10a is with the communication bus 200 connected. The first node 10a but is not in the vehicle's own control system 120 contain. The first node 10a can be the termination information provided by the other nodes 20 . 30 . 40 be transmitted as in the case of the first node 10 receive. To determine if rewriting in the other nodes 20 - 40 finished, the first node counts 10a the count of the second flag 12 every time the termination information is obtained, and stores the number of nodes in the on-vehicle control system 120 are included. In the fifth embodiment, the number of nodes included in the on-vehicle control system 120 are included, equal to three. The first node 10a must be the first flag 11 unlike the first node 10 not included.

Der erste Knoten 10a führt das Flussdiagramm der 17 durch, wenn beispielsweise der Zündschalter eingeschaltet wird.The first node 10a performs the flowchart of 17 by, for example, when the ignition switch is turned on.

In S12c wird bestimmt, ob das Neuschreiben in sämtlichen Neuschreibzielknoten beendet wurde (entspricht einem Beispiel des Bestimmungsabschnitts). In der vorliegenden Ausführungsform entsprechen sämtliche Neuschreibzielknoten dem zweiten Knoten 20, dem dritten Knoten 30 und dem vierten Knoten 40, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind. Durch Überprüfen des Zählwertes des zweiten Flags 12 bestimmt der erste Knoten 10a, ob das Neuschreiben in sämtlichen Neuschreibzielknoten beendet wurde. Der erste Knoten 10a bestimmt auf der Grundlage der Beendigungsinformationen, die von den jeweiligen Knoten 2040, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind, erhalten werden, ob die Knoten 2040 das Neuschreiben beendet haben.In S12c, it is determined whether the rewrite has been completed in all the rewriting destination nodes (corresponds to an example of the determination section). In the present embodiment, all the rewrite destination nodes correspond to the second node 20 , the third node 30 and the fourth node 40 operating in the vehicle's own control system 120 are included. By checking the count of the second flag 12 determines the first node 10a whether the rewrite has been completed in all rewrite target nodes. The first node 10a determined based on the termination information provided by the respective nodes 20 - 40 operating in the vehicle's own control system 120 are included, whether the nodes 20 - 40 have finished the rewriting.

Wenn bestimmt wird, dass der Zählwert des zweiten Flags 12 gleich 3 ist, nimmt der erste Knoten 10a an, dass sämtliche Neuschreibzielknoten 2040 das Neuschreiben beendet haben, sodass die Verarbeitung zu S13a übergeht. Wenn im Gegensatz dazu der erste Knoten 10a nicht bestimmt, dass der Zählwert des zweiten Flags 12 gleich 3 ist, nimmt der erste Knoten 10a an, dass mindestens einer der Neuschreibzielknoten 2040 das Neuschreiben nicht beendet hat. In diesem Fall schreitet die Verarbeitung zu S14a.When it is determined that the count value of the second flag 12 is equal to 3, takes the first node 10a to that all rewrite target nodes 20 - 40 have finished rewriting, so the Processing to S13a passes. If, in contrast, the first node 10a does not determine that the count of the second flag 12 is equal to 3, takes the first node 10a that at least one of the rewrite destination nodes 20 - 40 did not finish the rewriting. In this case, the processing proceeds to S14a.

Der erste Knoten 10a kann Informationen speichern, die angeben, ob das Neuschreiben beendet wurde, wobei die Informationen den jeweiligen anderen Knoten 2040 wie in der dritten Ausführungsform entsprechen. Durch Überprüfen der Informationen kann der erste Knoten 10a bestimmen, ob das Neuschreiben in einem Neuschreibzielknoten beendet wurde.The first node 10a can store information indicating whether the rewrite has finished, with the information being sent to the other node 20 - 40 as in the third embodiment. By checking the information, the first node may be 10a determine if the rewrite has been completed in a rewrite target node.

In S13a entscheidet der erste Knoten 10a den Steuerungsprogrammausführungsmodus. In diesem Fall entscheidet der erste Knoten 10a den Ausführungsmodus der Knoten 2040, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind, als den Steuerungsmodus. Das heißt, der erste Knoten 10a entscheidet die Ausführungsmodi der Knoten 2040 in dem fahrzeugeigenen Steuerungssystem 120, in dem der Subjektknoten (der ersten Knoten 10a) nicht enthalten ist, als den Steuerungsmodus. Daher weist der erste Knoten 10a mindestens einen der Knoten 2040 an, den Ausführungsmodus auf den Steuerungsmodus einzustellen. Wenn bestimmt wird, dass das Neuschreiben in sämtlichen Knoten 2040, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind, beendet wurde, entscheidet der erste Knoten 10a den Ausführungsmodus der Knoten 2040 als den Steuerungsmodus.In S13a, the first node decides 10a the control program execution mode. In this case, the first node decides 10a the execution mode of the nodes 20 - 40 operating in the vehicle's own control system 120 are included as the control mode. That is, the first node 10a decides the execution modes of the nodes 20 - 40 in the vehicle's own control system 120 in which the subject node (the first node 10a ) is not included as the control mode. Therefore, the first node points 10a at least one of the nodes 20 - 40 to set the execution mode to the control mode. If it is determined that rewriting in all nodes 20 - 40 operating in the vehicle's own control system 120 is finished, decides the first node 10a the execution mode of the nodes 20 - 40 as the control mode.

In S14a entscheidet der erste Knoten 10a den Ausführungsmodus als Neuprogrammierungsprogrammausführungsmodus. In diesem Fall entscheidet der erste Knoten 10a den Ausführungsmodus der Knoten 2040, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind, als den Neuprogrammierungsmodus. Das heißt, der erste Knoten 10a entscheidet die Ausführungsmodi der Knoten 2040 in dem fahrzeugeigenen Steuerungssystem 120, in dem der Subjektknoten (der erste Knoten 10a) nicht enthalten ist, als den Neuprogrammierungsmodus. Daher weist der erste Knoten 10a mindestens einen der Knoten 2040 an, den Ausführungsmodus auf den Neuprogrammierungsmodus einzustellen. Wenn bestimmt wird, dass das Neuschreiben in mindestens einem der Knoten 2040, die in dem fahrzeugeigenen Steuerungssystem 120 enthalten sind, nicht beendet wurde, entscheidet der erste Knoten 10a den Ausführungsmodus der Knoten 2040 als den Neuprogrammierungsmodus.In S14a, the first node decides 10a the execution mode as a reprogramming program execution mode. In this case, the first node decides 10a the execution mode of the nodes 20 - 40 operating in the vehicle's own control system 120 are included as the reprogramming mode. That is, the first node 10a decides the execution modes of the nodes 20 - 40 in the vehicle's own control system 120 in which the subject node (the first node 10a ) is not included as the reprogramming mode. Therefore, the first node points 10a at least one of the nodes 20 - 40 to set the execution mode to the reprogramming mode. If it is determined that rewriting in at least one of the nodes 20 - 40 operating in the vehicle's own control system 120 are not terminated, decides the first node 10a the execution mode of the nodes 20 - 40 as the reprogramming mode.

Somit können ähnliche Wirkungen wie mit dem ersten Knoten 10 sogar dann erzielt werden, wenn der erste Knoten 10a nicht zu dem fahrzeugeigenen Steuerungssystem 120 gehört. Da in diesem Fall der erste Knoten 10a, der nicht zu dem fahrzeugeigenen Steuerungssystem 120 gehört, den Ausführungsmodus des fahrzeugeigenen Steuerungssystems 120 entscheidet, ist es möglich, dass ein fahrzeugeigenes Netzwerk den ersten Knoten 10a und das fahrzeugeigene Steuerungssystem 120 enthält, sodass die Entwurfsflexibilität erhöht wird.Thus, similar effects as with the first node 10 even be achieved when the first node 10a not to the vehicle's own control system 120 belongs. Because in this case the first node 10a that does not belong to the vehicle's own control system 120 heard, the execution mode of the on-board control system 120 decides it is possible for an on-board network to be the first node 10a and the on-board control system 120 contains, so that the design flexibility is increased.

(Sechste Ausführungsform)Sixth Embodiment

Im Folgenden wird ein fahrzeugeigenes Netzwerk gemäß einer sechsten Ausführungsform erläutert. Hier wird ein Teil beschrieben, der sich von den obigen Ausführungsformen unterscheidet. In der vorliegenden Ausführungsform werden aus Vereinfachungsgründen dieselben Bezugszeichen wie in den obigen Ausführungsformen verwendet.Hereinafter, an on-vehicle network according to a sixth embodiment will be explained. Here will be described a part which is different from the above embodiments. In the present embodiment, the same reference numerals as in the above embodiments are used for the sake of simplicity.

Das fahrzeugeigene Netzwerk gemäß der sechsten Ausführungsform enthält ein fahrzeugeigenes Steuerungssystem 100, das mehrere Knoten 1030 wie in der ersten Ausführungsform enthält. In dem fahrzeugeigenen Netzwerk gemäß der sechsten Ausführungsform bestimmen der zweite Knoten 20 und der dritte Knoten 30 jeweils die Neuschreibbeendigung ähnlich wie bei dem ersten Knoten 10. Außerdem melden sämtliche der Knoten 1030 dem Neuschreibwerkzeug 400 die Neuschreibbeendigung.The on-vehicle network according to the sixth embodiment includes an on-vehicle control system 100 that has several nodes 10 - 30 as in the first embodiment. In the on-vehicle network according to the sixth embodiment, the second node determines 20 and the third node 30 each the rewrite termination similar to the first node 10 , In addition, all of the nodes report 10 - 30 the rewriting tool 400 the rewrite completion.

Jeder der Knoten 1030 bestimmt, ob das Neuschreiben in sämtlichen Knoten 1030 beendet wurde (entspricht einem Bestimmungsabschnitt). Das heißt, der zweite Knoten 20 bestimmt der erste Knoten 10, ob sämtliche Knoten 1030 das Neuschreiben beendet haben. Außerdem bestimmt der dritte Knoten 30, ob sämtliche Knoten 1030 das Neuschreiben beendet haben.Each of the nodes 10 - 30 determines if rewriting in all nodes 10 - 30 has ended (corresponds to a determination section). That is, the second node 20 determines the first node 10 , whether all nodes 10 - 30 have finished the rewriting. In addition, the third node determines 30 , whether all nodes 10 - 30 have finished the rewriting.

Wenn jeder der Knoten 1030 bestimmt hat, dass sämtliche Knoten 1030 das Neuschreiben beendet haben, entscheidet jeder der Knoten 1030 den Ausführungsmodus als den Steuerungsmodus (entspricht einem Entscheidungsabschnitt). Das heißt, wenn der zweite Knoten 20 bestimmt, dass sämtliche Knoten 1030 das Neuschreiben beendet haben, entscheidet der zweite Knoten 20 wie der erste Knoten 10 den Ausführungsmodus des Subjektknotens als den Steuerungsmodus. Wenn der dritte Knoten 30 bestimmt, dass sämtliche Knoten 1030 das Neuschreiben beendet haben, entscheidet der dritte Knoten 30 den Ausführungsmodus des Subjektknotens als den Steuerungsmodus.If each of the nodes 10 - 30 has determined that all nodes 10 - 30 the rewriting has finished, each of the nodes decides 10 - 30 the execution mode as the control mode (corresponds to a decision section). That is, if the second node 20 determines that all nodes 10 - 30 have finished rewriting, decides the second node 20 like the first node 10 the execution mode of the subject node as the control mode. If the third node 30 determines that all nodes 10 - 30 have finished the rewriting, decides the third node 30 the execution mode of the subject node as the control mode.

Wenn die jeweiligen Knoten 1030 nicht bestimmen, dass sämtliche Knoten 1030 das Neuschreiben beendet haben, das heißt bestimmen, dass mindestens ein Knoten das Neuschreiben nicht beendet hat, entscheiden die jeweiligen Knoten 1030 den Ausführungsmodus als den Neuprogrammierungsmodus (entspricht einem Entscheidungsabschnitt). Das heißt, wenn der zweite Knoten 20 bestimmt, dass mindestens ein Knoten das Neuschreiben nicht beendet hat, entscheidet der zweite Knoten 20 wie der erste Knoten 10 den Ausführungsmodus des Subjektknotens als den Neuprogrammierungsmodus. Wenn der dritte Knoten 30 bestimmt, dass mindestens ein Knoten das Neuschreiben nicht beendet hat, entscheidet der dritte Knoten 30 den Ausführungsmodus des Subjektknotens als den Neuprogrammierungsmodus.If the respective nodes 10 - 30 do not determine that all nodes 10 - 30 have finished rewriting, that is, determine that at least one node has not finished rewriting, the respective nodes decide 10 - 30 the execution mode as the Reprogramming mode (corresponds to a decision section). That is, if the second node 20 determines that at least one node has not finished rewriting, decides the second node 20 like the first node 10 the execution mode of the subject node as the reprogramming mode. If the third node 30 determines that at least one node has not finished rewriting, decides the third node 30 the execution mode of the subject node as the reprogramming mode.

Wenn ein jeweiliger Knoten 1030 den Ausführungsmodus als den Steuerungsmodus entscheidet, meldet der jeweilige Knoten 1030 dem Neuschreibwerkzeug 400, dass ein Neuschreiben sämtlicher Knoten 1030 beendet wurde (entspricht einem Beendigungsmeldungsabschnitt). Das heißt, der zweite Knoten 20 und der dritte Knoten 30 melden dem Neuschreibwerkzeug 400 wie der erste Knoten 10, dass das Neuschreiben beendet wurde, wenn das Neuschreiben in dem Subjektknoten beendet wurde, oder jedes Mal, wenn das ACK für den Verifizierungsaufforderungsbefehl von jedem anderen Knoten empfangen wurde. Dementsprechend überprüft das Neuschreibwerkzeug 400, ob die Meldung hinsichtlich einer Beendigung des Einstellens des zweiten Flags von den jeweiligen Knoten 1030 empfangen wurde, und dadurch ist es möglich, dass das Neuschreibwerkzeug 400 aufeinanderfolgend bestätigen kann, ob ein authentischer Knoten verbunden ist.If a respective node 10 - 30 decides the execution mode as the control mode, reports the respective node 10 - 30 the rewriting tool 400 that a rewriting of all nodes 10 - 30 has ended (corresponds to a termination notification section). That is, the second node 20 and the third node 30 Report the rewrite tool 400 like the first node 10 in that the rewriting has been terminated when the rewriting in the subject node has been terminated or each time the ACK for the verification prompt command has been received from each other node. Accordingly, the rewrite tool checks 400 Whether the message regarding completion of setting of the second flag from the respective nodes 10 - 30 was received, and thus it is possible that the rewrite tool 400 can successively confirm whether an authentic node is connected.

Jeder der Knoten 1030 kann die Neuschreibbeendigung sämtlicher Knoten 1030 gemäß einem der Verfahren, die in der ersten Ausführungsform, der zweiten Ausführungsform oder der dritten Ausführungsform beschrieben wurden, bestimmen. Das fahrzeugeigene Netzwerk kann ein fahrzeugeigenes Steuerungssystem 110 enthalten, das einen Vermittlungsknoten 300 und mehrere Knoten 1030 wie in der vierten Ausführungsform enthält.Each of the nodes 10 - 30 can the rewrite completion of all nodes 10 - 30 according to one of the methods described in the first embodiment, the second embodiment or the third embodiment. The on-board network may have an on-board control system 110 contain a switching node 300 and several nodes 10 - 30 as in the fourth embodiment.

Jeder der Knoten 1030 kann ähnliche Wirkungen wie der erste Knoten 10 in den obigen Ausführungsformen erzielen. Somit ist es möglich, dass das fahrzeugeigene Netzwerk gemäß der sechsten Ausführungsform die Ausführung einer Steuerung durch ein Steuerungssystem bei einer Bedingung verhindert, bei der ein Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind.Each of the nodes 10 - 30 may have similar effects as the first node 10 achieve in the above embodiments. Thus, it is possible that the on-vehicle network according to the sixth embodiment prevents the execution of control by a control system under a condition where a node of the new program and a node of the old program are mixed.

(Siebte Ausführungsform)Seventh Embodiment

Im Folgenden wird ein fahrzeugeigenes Netzwerk gemäß einer siebten Ausführungsform erläutert. Hier wird ein Teil beschrieben, der sich von den obigen Ausführungsformen unterscheidet. In der vorliegenden Ausführungsform werden aus Vereinfachungsgründen dieselben Bezugszeichen wie in den obigen Ausführungsformen verwendet.Hereinafter, an on-vehicle network according to a seventh embodiment will be explained. Here will be described a part which is different from the above embodiments. In the present embodiment, the same reference numerals as in the above embodiments are used for the sake of simplicity.

In der vorliegenden Ausführungsform wird ein fahrzeugeigenes Netzwerk verwendet, das mehrere fahrzeugeigene Steuerungssysteme 100, 130 enthält. Somit enthält das fahrzeugeigene Netzwerk gemäß der siebten Ausführungsform ein erstes fahrzeugeigenes Steuerungssystem 100 und ein zweites fahrzeugeigenes Steuerungssystem 130. In der vorliegenden Ausführungsform sind, um zwischen den fahrzeugeigenen Steuerungssystemen zu unterscheiden, das erste fahrzeugeigene Steuerungssystem 100 und das zweite fahrzeugeigene Steuerungssystem 130 genannt. Das erste fahrzeugeigene Steuerungssystem 100 ist ähnlich wie das fahrzeugeigene Steuerungssystem 100 der obigen Ausführungsformen aufgebaut. Der erste Kommunikationsbus 210 ähnelt dem Kommunikationsbus 200 in den obigen Ausführungsformen. Man beachte, dass die vorliegende Erfindung nicht auf diese Konfiguration beschränkt ist, sondern dass das fahrzeugeigene Netzwerk drei oder mehr fahrzeugeigene Steuerungssysteme enthalten kann. Das erste fahrzeugeigene Steuerungssystem und das zweite fahrzeugeigene Steuerungssystem können jeweils als ein erstes Fahrzeugsteuerungssystem und ein zweites Fahrzeugsteuerungssystem bezeichnet werden.In the present embodiment, an in-vehicle network using multiple on-board control systems is used 100 . 130 contains. Thus, the in-vehicle network according to the seventh embodiment includes a first in-vehicle control system 100 and a second on-board control system 130 , In the present embodiment, to distinguish between the on-vehicle control systems, the first on-vehicle control system 100 and the second on-board control system 130 called. The first vehicle control system 100 is similar to the vehicle's own control system 100 constructed of the above embodiments. The first communication bus 210 resembles the communication bus 200 in the above embodiments. Note that the present invention is not limited to this configuration, but the in-vehicle network may include three or more on-board control systems. The first on-board control system and the second on-vehicle control system may be referred to as a first vehicle control system and a second vehicle control system, respectively.

Das zweite fahrzeugeigene Steuerungssystem 130 enthält einen fünften Knoten 50, einen sechsten Knoten 60 und einen siebten Knoten 70, die mit dem zweiten Kommunikationsbus 220 verbunden sind. Somit sind der fünfte Knoten 50, der sechste Knoten 60 und der siebte Knoten 70 Knoten, die in demselben fahrzeugeigenen Steuerungssystem 130 enthalten sind. Jeder der Knoten 5070 weist ähnlich wie der erste Knoten 10, der zweite Knoten 20 und der dritte Knoten 30 als Ausführungsmodus den Steuerungsmodus und den Neuprogrammierungsmodus auf. Die Knoten 5070 in dem zweiten fahrzeugeigenen Steuerungssystem 130 kooperieren miteinander und führen eine Steuerung in dem Fall des Steuerungsmodus aus.The second vehicle control system 130 contains a fifth node 50 , a sixth node 60 and a seventh node 70 connected to the second communication bus 220 are connected. Thus, the fifth node 50 , the sixth node 60 and the seventh node 70 Nodes in the same vehicle control system 130 are included. Each of the nodes 50 - 70 similar to the first node 10 , the second node 20 and the third node 30 as the execution mode, the control mode and the reprogramming mode. The knots 50 - 70 in the second vehicle control system 130 cooperate with each other and execute a control in the case of the control mode.

Der fünfte Knoten 50 enthält wie der erste Knoten 10 ein erstes Flag 51 und ein zweites Flag 52. Der fünfte Knoten 50 entspricht einem Masterknoten in dem zweiten fahrzeugeigenen Steuerungssystem 130.The fifth knot 50 contains like the first node 10 a first flag 51 and a second flag 52 , The fifth knot 50 corresponds to a master node in the second on-board control system 130 ,

Der fünfte Knoten 50 bestimmt, ob das Neuschreiben in sämtlichen Knoten 5070 des zweiten fahrzeugeigenen Steuerungssystems 130 beendet wurde (entspricht einem Bestimmungsabschnitt). Wenn der fünfte Knoten 50 bestimmt, dass sämtliche Knoten 5070 in dem zweiten fahrzeugeigenen Steuerungssystem 130 das Neuschreiben beendet haben, entscheidet der fünfte Knoten 50 den Ausführungsmodus als den Steuerungsmodus (entspricht einem Entscheidungsabschnitt). Wenn der fünfte Knoten 50 nicht bestimmt, dass sämtliche Knoten 5070 in dem zweiten fahrzeugeigenen Steuerungssystem 130 das Neuschreiben beendet haben, das heißt, wenn er bestimmt, dass mindestens ein Knoten das Neuschreiben nicht beendet hat, entscheidet der fünfte Knoten 50 den Ausführungsmodus als den Neuprogrammierungsmodus (entspricht dem Entscheidungsabschnitt).The fifth knot 50 determines if rewriting in all nodes 50 - 70 of the second vehicle control system 130 has ended (corresponds to a determination section). If the fifth node 50 determines that all nodes 50 - 70 in the second vehicle control system 130 have finished the rewriting, decides the fifth node 50 the execution mode as the control mode ( corresponds to a decision section). If the fifth node 50 not determined that all nodes 50 - 70 in the second vehicle control system 130 have finished rewriting, that is, when it determines that at least one node has not finished rewriting, the fifth node decides 50 the execution mode as the reprogramming mode (corresponds to the decision section).

Der sechste Knoten 60 enthält wie der zweite Knoten 20 ein erstes Flag 61. Der siebte Knoten 70 enthält wie der dritte Knoten 30 ein erstes Flag 71. Der sechste Knoten 60 und der siebte Knoten 70 entsprechen einem Slaveknoten in dem zweiten fahrzeugeigenen Steuerungssystem 130.The sixth knot 60 contains like the second node 20 a first flag 61 , The seventh node 70 contains like the third node 30 a first flag 71 , The sixth knot 60 and the seventh node 70 correspond to a slave node in the second on-board control system 130 ,

Der erste Kommunikationsbus 210 und der zweite Kommunikationsbus 220 sind über den Vermittlungsknoten 300 wie in der vierten Ausführungsform verbunden. Daher kommunizieren das erste fahrzeugeigene Steuerungssystem 100 und das zweite fahrzeugeigene Steuerungssystem 130 über den Vermittlungsknoten 300 miteinander.The first communication bus 210 and the second communication bus 220 are via the switching node 300 as connected in the fourth embodiment. Therefore, the first on-board control system communicate 100 and the second on-board control system 130 via the switching node 300 together.

Der erste Knoten 10 weist ähnliche Wirkungen wie die obigen Ausführungsformen auf. Außerdem weist der fünfte Knoten 50 ähnliche Wirkungen wie der erste Knoten 10 auf. Es ist möglich, dass das fahrzeugeigene Netzwerk gemäß der siebten Ausführungsform die Ausführung einer Steuerung durch ein Steuerungssystem bei einer Bedingung verhindert, bei der ein Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind. Auf ähnliche Weise ist es möglich, dass das fahrzeugeigene Netzwerk gemäß der siebten Ausführungsform die Ausführung einer Steuerung durch ein Steuerungssystem bei einer Bedingung verhindert, bei der ein Knoten des neuen Programms und ein Knoten des alten Programms vermischt sind.The first node 10 has similar effects as the above embodiments. In addition, the fifth node points 50 similar effects as the first node 10 on. It is possible that the on-vehicle network according to the seventh embodiment prevents execution of control by a control system under a condition where a node of the new program and a node of the old program are mixed. Similarly, it is possible that the on-vehicle network according to the seventh embodiment prevents the execution of control by a control system under a condition where a node of the new program and a node of the old program are mixed.

Man beachte, dass ein Flussdiagramm oder der Prozess des Flussdiagramms in der vorliegenden Anmeldung Schritte (auch als Abschnitte bezeichnet) enthält, die jeweils beispielsweise mit S10 bezeichnet werden. Außerdem kann jeder Schritt in mehrere Unterschritte unterteilt sein, und es können mehrere Schritte in einen einzelnen Schritt kombiniert sein.Note that a flowchart or the process of the flowchart in the present application includes steps (also referred to as sections) each designated S10, for example. In addition, each step can be subdivided into several sub-steps, and several steps can be combined into a single step.

Während die Ausführungsformen, die Konfigurationen, die Aspekte einer fahrzeugeigenen Steuerungsvorrichtung und eines fahrzeugeigenen Netzwerkes, das die fahrzeugeigene Steuerungsvorrichtung enthält, beispielhaft beschrieben wurden, ist es selbstverständlich, dass Ausführungsformen, Konfigurationen, Aspekte der vorliegenden Erfindung nicht auf die jeweiligen Ausführungsformen, die jeweiligen Konfigurationen und die jeweiligen Aspekte, die oben beschrieben wurden, beschränkt sind. Es sind beispielsweise Ausführungsformen, Konfigurationen, Aspekte, die durch geeignetes Kombinieren von technischen Abschnitten, die in unterschiedlichen Ausführungsformen, Konfigurationen und Aspekten offenbart sind, innerhalb des Bereiches der Ausführungsformen, Konfigurationen und Aspekte der vorliegenden Erfindung enthalten.While the embodiments, the configurations, the aspects of an on-vehicle control device, and an in-vehicle network including the on-vehicle control device have been exemplified, it should be understood that embodiments, configurations, aspects of the present invention are not limited to the respective embodiments, the respective configurations, and the particular aspects described above are limited. For example, embodiments, configurations, aspects, which may be included within the scope of the embodiments, configurations, and aspects of the present invention through appropriate combination of technical portions disclosed in various embodiments, configurations, and aspects.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • JP 2008-165729 A [0002] JP 2008-165729 A [0002]

Claims (10)

Fahrzeugeigene Steuerungsvorrichtung, die einen Ausführungsmodus von mehreren Knoten (1040, 10a) in einem fahrzeugeigenen Steuerungssystem (100, 110, 120, 130) entscheidet, wobei die Knoten kooperieren und eine Steuerung zu einem Zeitpunkt eines Steuerungsmodus durchführen, wobei jeder der Knoten als Ausführungsmodus den Steuerungsmodus, bei dem die Steuerung durch Ausführen eines Steuerungsprogramms durchgeführt wird, und einen Neuprogrammierungsmodus aufweist, bei dem ein Neuschreiben des Steuerungsprogramms durch Ausführen eines Neuprogrammierungsprogramms durchgeführt wird, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen, wobei die fahrzeugeigene Steuerungsvorrichtung aufweist: einen Bestimmungsabschnitt (S11, S12, S12a–S12c), der bestimmt, ob sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben; und einen Entscheidungsabschnitt (S13, S14, S13a, S14a), der den Ausführungsmodus als den Steuerungsmodus entscheidet, wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus als den Neuprogrammierungsmodus entscheidet, wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben.In-vehicle control device, which is an execution mode of several nodes ( 10 - 40 . 10a ) in an on-board control system ( 100 . 110 . 120 . 130 ), wherein the nodes cooperate and perform control at a timing of a control mode, each of the nodes having, as an execution mode, the control mode in which control is performed by executing a control program and a reprogramming mode in which rewriting the control program by executing a reprogramming program is performed without performing the control based on the control program, wherein the on-vehicle control device comprises: a determination section (S11, S12, S12a-S12c) that determines whether all the nodes have finished rewriting the control program; and a decision section (S13, S14, S13a, S14a) that decides the execution mode as the control mode when the determination section determines that all the nodes have completed the rewrite of the control program and decides the execution mode as the reprogramming mode when the determination section does not determine that all nodes have finished rewriting the control program. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 1, wobei die fahrzeugeigene Steuerungsvorrichtung einer der Knoten ist; und der Bestimmungsabschnitt (S11, S12, S12a, S12b) auf der Grundlage einer Beendigung des Neuschreibens des Steuerungsprogramms in der fahrzeugeigenen Steuerungsvorrichtung und auf der Grundlage von Beendigungsinformationen, die von einem anderen Knoten empfangen werden und angeben, dass das Neuschreiben des Steuerungsprogramms in dem anderen Knoten beendet wurde, bestimmt, ob sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben. An on-vehicle control device according to claim 1, wherein the on-vehicle control device is one of the nodes; and the determination section (S11, S12, S12a, S12b) based on termination of the rewriting of the control program in the on-vehicle control device and based on termination information received from another node and indicating that rewriting the control program in the other node has been completed, determines whether all nodes have finished rewriting the control program. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 2, wobei der Bestimmungsabschnitt (S12) bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, wenn das Neuschreiben des Steuerungsprogramms in der fahrzeugeigenen Steuerungsvorrichtung beendet ist und ein Zählwert, der durch Zählen der Häufigkeit des Erlangens der Beendigungsinformationen erhalten wird, mit einer Gesamtanzahl der Knoten übereinstimmt. An on-vehicle control device according to claim 2, wherein the determining section (S12) determines that all the nodes have finished rewriting the control program when the rewriting of the control program in the on-vehicle control device is finished, and a count value obtained by counting the frequency of obtaining the termination information , matches a total number of nodes. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 2, wobei der Bestimmungsabschnitt einen Individualbestimmungsabschnitt (S11) enthält, der bestimmt, ob das Neuschreiben des Steuerungsprogramms in der fahrzeugeigenen Steuerungsvorrichtung beendet wurde; und der Bestimmungsabschnitt außerdem einen Gesamtbestimmungsabschnitt (S12a) enthält, der bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, wenn ein Zählwert, der durch Zählen der Beendigungsinformationen, die von dem anderen Knoten empfangen werden, erhalten wird, mit einer Gesamtanzahl der anderen Knoten übereinstimmt, wobei die Beendigungsinformationen angeben, dass das Neuschreiben des Steuerungsprogramms beendet wurde, und außerdem wenn der Individualbestimmungsabschnitt bestimmt, dass das Neuschreiben des Steuerungsprogramms beendet wurde. An on-vehicle control device according to claim 2, wherein the determining section includes an individual determination section (S11) that determines whether the rewriting of the control program in the on-vehicle control device has been completed; and the determination section further includes an overall determination section (S12a) that determines that all the nodes have finished rewriting the control program, when a count value obtained by counting the termination information received from the other node coincides with a total number of the other nodes, the termination information indicating that the rewriting of the control program has been completed, and also when the individual determination section determines that the rewriting of the control program has been completed. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 3 oder 4, wobei die fahrzeugeigene Steuerungsvorrichtung Daten für das Neuschreiben des Steuerungsprogramms nach einem Empfang eines Löschaufforderungsbefehls von einer Neuschreibvorrichtung, der ein Löschen des Steuerungsprogramms fordert, um das Steuerungsprogramm neu zu schreiben, empfängt; und die fahrzeugeigene Steuerungsvorrichtung den Zählwert initialisiert, wenn sie zuerst den Löschaufforderungsbefehl in Bezug auf irgendeinen der Knoten empfängt. An on-vehicle control device according to claim 3 or 4, wherein the on-vehicle control device receives data for rewriting the control program upon receipt of a deletion request command from a rewriting device requesting deletion of the control program to rewrite the control program; and the on-vehicle control device initializes the count value when first receiving the erase request command with respect to any one of the nodes. Fahrzeugeigene Steuerungsvorrichtung nach einem der Ansprüche 2 bis 5, wobei die fahrzeugeigene Steuerungsvorrichtung Daten für das Neuschreiben des Steuerungsprogramms von einer Neuschreibvorrichtung empfängt, um das Steuerungsprogramm neu zu schreiben; und die fahrzeugeigene Steuerungsvorrichtung einen Individualmeldeabschnitt (S38) enthält, der der Neuschreibvorrichtung meldet, dass das Neuschreiben des Steuerungsprogramms beendet wurde, wenn das Neuschreiben des Steuerungsprogramms in der fahrzeugeigenen Steuerungsvorrichtung beendet wurde, oder jedes Mal wenn die Beendigungsinformationen von dem anderen Knoten empfangen wird. An on-vehicle control device according to any one of claims 2 to 5, wherein the on-vehicle control device receives data for rewriting the control program from a rewrite device to rewrite the control program; and the on-vehicle control device includes an individual notification section (S38) that notifies the rewrite device that the rewrite of the control program has been completed when the rewrite of the control program in the on-vehicle control device has ended or whenever the termination information is received from the other node. Fahrzeugeigene Steuerungsvorrichtung nach einem der Ansprüche 2 bis 6, wobei die fahrzeugeigene Steuerungsvorrichtung mit einem ersten Kommunikationsbus (210) verbunden ist; mindestens einer der Knoten in dem fahrzeugeigenen Steuerungssystem (110) mit einem zweiten Kommunikationsbus (220) verbunden ist; die fahrzeugeigene Steuerungsvorrichtung und der mindestens eine Knoten über einen Vermittlungsknoten (300) miteinander kommunizieren; und die fahrzeugeigene Steuerungsvorrichtung die Beendigungsinformationen über den Vermittlungsknoten empfängt.A vehicle control device according to one of claims 2 to 6, wherein the on-board control device is connected to a first communication bus ( 210 ) connected is; at least one of the nodes in the on-board control system ( 110 ) with a second communication bus ( 220 ) connected is; the on-board control device and the at least one node via a switching node ( 300 ) communicate with each other; and the on-vehicle control device receives the termination information via the switching node. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 1, wobei die fahrzeugeigene Steuerungsvorrichtung nicht in dem fahrzeugeigenen Steuerungssystem (120) enthalten ist; der Bestimmungsabschnitt (S12c) auf der Grundlage von Beendigungsinformationen, die von den jeweiligen Knoten in dem fahrzeugeigenen Steuerungssystem empfangen werden, bestimmt, ob sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, wobei die Beendigungsinformationen angeben, dass das Neuschreiben des Steuerungsprogramms beendet wurde; und der Entscheidungsabschnitt (S13a, S14a) den Ausführungsmodus der Knoten in dem fahrzeugeigenen Steuerungssystem als den Steuerungsmodus entscheidet, wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus der Knoten in dem fahrzeugeigenen Steuerungssystem als den Neuprogrammierungsmodus entscheidet, wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben. An on-vehicle control device according to claim 1, wherein the on-vehicle control device is not in the on-vehicle control system ( 120 ) is included; the determination section (S12c) determines whether all the nodes have finished rewriting the control program based on completion information received from the respective nodes in the on-vehicle control system, the completion information indicating that the rewrite of the control program has been completed; and the decision section (S13a, S14a) decides the execution mode of the nodes in the on-vehicle control system as the control mode when the determination section determines that all nodes have completed the rewriting of the control program and decides the execution mode of the nodes in the on-vehicle control system as the reprogramming mode; if the determining section does not determine that all nodes have finished rewriting the control program. Fahrzeugeigenes Netzwerk, das mit einer Neuschreibvorrichtung kommuniziert, die bewirkt, dass mehrere Knoten ein Steuerungsprogramm neu schreiben, wobei das fahrzeugeigene Netzwerk aufweist: ein fahrzeugeigenes Steuerungssystem, das die Knoten enthält, die kooperieren und eine Steuerung zu einem Zeitpunkt eines Steuerungsmodus durchführen, wobei die Knoten fahrzeugeigenen Steuerungsvorrichtungen entsprechen, wobei jeder der Knoten als einen Ausführungsmodus den Steuerungsmodus, in dem die Steuerung durch Ausführen eines Steuerungsprogramms durchgeführt wird, und einen Neuprogrammierungsmodus aufweist, in dem ein Neuschreiben des Steuerungsprogramms durch Ausführen eines Neuprogrammierungsprogramms durchgeführt wird, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen; wobei jeder der Knoten enthält: einen Bestimmungsabschnitt (S11, S12, S12a, S12b), der bestimmt, ob sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, einen Entscheidungsabschnitt (S13, S14), der den Ausführungsmodus als den Steuerungsmodus entscheidet, wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus als den Neuprogrammierungsmodus entscheidet, wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und einen Beendigungsmeldungsabschnitt, der der Neuschreibvorrichtung meldet, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, wenn der Entscheidungsabschnitt den Steuerungsmodus entscheidet. A vehicle-own network that communicates with a rewrite device that causes multiple nodes to rewrite a control program, wherein the on-board network includes: an on-vehicle control system including the nodes cooperating and performing control at a timing of a control mode, the nodes corresponding to on-board control devices, each of the nodes as an execution mode, the control mode in which the control is performed by executing a control program, and a reprogramming mode in which rewriting of the control program is performed by executing a reprogramming program without performing the control based on the control program; in which each of the nodes contains: a determination section (S11, S12, S12a, S12b) which determines whether all the nodes have finished rewriting the control program, a decision section (S13, S14) that decides the execution mode as the control mode when the determination section determines that all nodes have completed the rewrite of the control program, and decides the execution mode as the reprogramming mode if the determination section does not determine that all the nodes rewrite of the control program, and a termination notification section that notifies the rewrite device that all nodes have finished rewriting the control program when the decision section decides the control mode. Fahrzeugeigenes Netzwerk, das aufweist: mehrere fahrzeugeigene Steuerungssysteme (100, 130), die jeweils mehrere Knoten (1030, 5070) aufweisen, die als einen Ausführungsmodus einen Steuerungsmodus, in dem eine Steuerung durch Ausführen eines Steuerungsprogramms durchgeführt wird, und einen Neuprogrammierungsmodus aufweisen, in dem ein Neuschreiben des Steuerungsprogramms durch Ausführen eines Neuprogrammierungsprogramms durchgeführt wird, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen, wobei die Knoten in demselben fahrzeugeigenen Steuerungssystem kooperieren und die Steuerung zu einem Zeitpunkt des Steuerungsmodus durchführen, wobei mindestens einer der Knoten in jedem der fahrzeugeigenen Steuerungssysteme einer fahrzeugeigenen Steuerungsvorrichtung entspricht, wobei die fahrzeugeigene Steuerungsvorrichtung enthält: einen Bestimmungsabschnitt (S11, S12, S12a, S12b), der bestimmt, ob sämtliche Knoten in einem der fahrzeugeigenen Steuerungssysteme, das der fahrzeugeigenen Steuerungsvorrichtung entspricht, das Neuschreiben des Steuerungsprogramms beendet haben; und einen Entscheidungsabschnitt (S13, S14), der den Ausführungsmodus als den Steuerungsmodus entscheidet, wenn der Bestimmungsabschnitt bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben, und den Ausführungsmodus als den Neuprogrammierungsmodus entscheidet, wenn der Bestimmungsabschnitt nicht bestimmt, dass sämtliche Knoten das Neuschreiben des Steuerungsprogramms beendet haben.A vehicle-owned network, comprising: a plurality of on-board control systems ( 100 . 130 ), each with multiple nodes ( 10 - 30 . 50 - 70 ) having, as an execution mode, a control mode in which control is performed by executing a control program and a reprogramming mode in which rewriting of the control program is performed by executing a reprogramming program without performing the control based on the control program the nodes cooperate in the same on-vehicle control system and perform the control at a timing of the control mode, wherein at least one of the nodes in each of the on-vehicle control systems corresponds to an on-vehicle control device, the on-vehicle control device including: a determination section (S11, S12, S12a, S12b), determining whether all nodes in one of the on-vehicle control systems corresponding to the on-vehicle control device have finished rewriting the control program; and a decision section deciding the execution mode as the control mode when the determination section determines that all nodes have completed the rewriting of the control program, and decides the execution mode as the reprogramming mode, if the determination section does not determine that all the nodes Rewrite the control program.
DE102017202282.5A 2016-02-17 2017-02-14 ON-VEHICLE CONTROL DEVICE AND ON-VEHICLE NETWORK WITH THE ON-VEHICLE CONTROL DEVICE Active DE102017202282B4 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-28329 2016-02-17
JP2016028329A JP6528700B2 (en) 2016-02-17 2016-02-17 In-vehicle control device and in-vehicle network including in-vehicle control device

Publications (2)

Publication Number Publication Date
DE102017202282A1 true DE102017202282A1 (en) 2017-08-17
DE102017202282B4 DE102017202282B4 (en) 2023-12-07

Family

ID=59410057

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017202282.5A Active DE102017202282B4 (en) 2016-02-17 2017-02-14 ON-VEHICLE CONTROL DEVICE AND ON-VEHICLE NETWORK WITH THE ON-VEHICLE CONTROL DEVICE

Country Status (2)

Country Link
JP (1) JP6528700B2 (en)
DE (1) DE102017202282B4 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7415756B2 (en) * 2020-04-08 2024-01-17 株式会社オートネットワーク技術研究所 In-vehicle device, information processing method and computer program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008165729A (en) 2006-12-07 2008-07-17 Denso Corp Microcomputer

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856370B2 (en) 2004-11-05 2014-10-07 International Business Machines Corporation Concurrent flashing of data processing units in hierarchical networks
JP5111486B2 (en) * 2009-12-24 2013-01-09 本田技研工業株式会社 Update apparatus and update method for control program
JP5821640B2 (en) * 2012-01-06 2015-11-24 株式会社リコー Information processing device
JP2013223094A (en) * 2012-04-16 2013-10-28 Toshiba Corp Communication system, management server device, and program updating control method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008165729A (en) 2006-12-07 2008-07-17 Denso Corp Microcomputer

Also Published As

Publication number Publication date
JP2017146800A (en) 2017-08-24
JP6528700B2 (en) 2019-06-12
DE102017202282B4 (en) 2023-12-07

Similar Documents

Publication Publication Date Title
DE102019109672A1 (en) CANCELLATION AFTER PARTIAL FAILURE IN MULTIPLE ELECTRONIC CONTROL UNITS BY OVER THE AIR UPDATE
DE112017005979T5 (en) Parallel Process Device and Parallel Process Program
DE112012003795B4 (en) METHOD AND SYSTEM FOR VEHICLE INFORMATION INTEGRITY VERIFICATION
DE102019102325A9 (en) VEHICLE CONTROLLER, PROGRAM UPDATE PROCESS AND MEMORY MEDIUM ON WHICH A PROGRAM IS STORED TO UPGRADE A PROGRAM
DE112016000992T5 (en) PROGRAM RESTORE DEVICE AND PROGRAM RETRIEVER PROCESS
DE112006003745T5 (en) Remote updating system for an elevator control program
DE112018001894T5 (en) Control device, transmission method and computer program
DE112018006323T5 (en) On-board update device, program and method for updating a program or data
DE102020104652A1 (en) Program update system, control system, mobile body, program update procedure and program
DE102018123982A1 (en) SYSTEM AND METHOD FOR PROVIDING SOFTWARE UPDATES MANUFACTURING LINE AND SALES AREA ENVIRONMENTS
DE112018002998T5 (en) Update control device, control method and computer program
DE102012112623A1 (en) In-vehicle control and non-volatile tangible computer-readable medium
DE102022110251A1 (en) OTA MASTER, CENTER, SYSTEM, PROCEDURE, NON-TRANSITORY STORAGE MEDIUM AND VEHICLE
DE102015200729A1 (en) ELECTRONIC CONTROL UNIT
DE102017202282B4 (en) ON-VEHICLE CONTROL DEVICE AND ON-VEHICLE NETWORK WITH THE ON-VEHICLE CONTROL DEVICE
DE102017220526A1 (en) Method and device for updating software
DE112019002469T5 (en) ELECTRONIC CONTROL UNIT AND SESSION SETUP PROGRAM
DE102020110010A1 (en) DEVICE AND METHOD FOR SECURELY UPDATING BINARY DATA IN A VEHICLE
DE102022113922A1 (en) OTA MASTER, SYSTEM, PROCEDURE, NON-TRANSITORY STORAGE MEDIUM AND VEHICLE
DE112019007763T5 (en) Software update device, server, software update system and software update method
DE102022110824A1 (en) OTA MASTER, SYSTEM, PROCEDURE, NON-TRANSITORY STORAGE MEDIUM AND VEHICLE
DE102018217311A1 (en) Electronic control unit
DE102017206752A1 (en) ELECTRONIC CONTROL UNIT AND DATA WRITING SYSTEM
DE102020206262A1 (en) Data rewriting method and data rewriting system
DE112020001541T5 (en) INFORMATION PROCESSING DEVICE, MOVING OBJECT AND INFORMATION PROCESSING METHODS

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012240000

Ipc: H04L0041000000

R016 Response to examination communication
R018 Grant decision by examination section/examining division