-
Die
vorliegende Erfindung betrifft ein System zum Überschreiben eines Programms
oder von Daten, die in einem Speicher einer Fahrzeugsteuereinrichtung
gespeichert sind, mit einem anderen Programm oder mit anderen Daten,
die von einer externen Überschreibungsvorrichtung übertragen
werden.
-
Fahrzeuge
werden durch eine elektronische Steuereinheit (nachstehend als "ECU" bezeichnet) verschiedenen
Steuerungstypen unterzogen. Diese Steuerung umfasst die motorbezogene
Steuerung des Luft-Kraftstoff-Verhältnisses, der Kraftstoffinjektionsmenge
und der Emission sowie die karosseriebezogene Steuerung eines motorbetriebenen
Fensters, eines Airbags und eines ABS-Systems. Die ECU stellt dem
Fahrzeug auf der Grundlage aktueller Bedingungen und Fahrbedingungen
eines Fahrzeugs, die von verschiedenen an dem Fahrzeug angebrachten
Sensoren erfasst werden, verschiedene Steuerungstypen bereit.
-
Die
ECU umfasst eine Zentralverarbeitungseinheit (CPU), einen ROM (Nurlesespeicher),
in dem auszuführende
Programme und Daten gespeichert sind, einen RAM (Direktzugriffsspeicher),
der einen Arbeitsbereich zur Ausführung bereitstellt und in dem Rechenergebnisse
gespeichert werden, und eine E/A-Schnittstelle zum Empfangen von
Signalen von verschiedenen Sensoren und zum Übertragen von Steuersignalen
zu verschiedenen Teilen des Motors.
-
Ein
System gemäß dem Oberbegriff
des Anspruchs 1 ist im Stand der Technik allgemein bekannt. Insbesondere
ist ein System bekannt, bei dem ein überschreibbarer und nichtflüchtiger
Speicher in der Art eines Flash-Speichers, eines EEPROMs oder eines
EPROMs als ROM verwendet wird, um das Überschreiben eines Programms
oder von Daten durch serielle Kommunikation zu ermöglichen.
Ein solches System weist typischerweise eine Überschreibungsvorrichtung,
eine ECU und einen seriellen Kommunikationsweg, der sie verbindet,
auf. Das Überschreiben
wird durch Löschen
von Daten, die in dem an der ECU montierten überschreibbaren Speicher gespeichert
sind, und durch Schreiben von der Überschreibungsvorrichtung übertragener
neuer Daten durch serielle Kommunikation in den Speicher erreicht.
Beispielsweise ist in der offengelegten japanischen Patentanmeldung
63-223901 ein Verfahren zum Ändern
eines im EEPROM der ECU gespeicherten Programms ansprechend auf
eine Anforderung von einer externen Vorrichtung über einen SCI-(serielle Kommunikationsschnittstelle)-Anschluss,
wobei die ECU an dem Fahrzeug angebracht ist, beschrieben.
-
Im
allgemeinen erfordert der Lösch-
und Schreibvorgang bei einem nichtflüchtigen Speicher in der Art
eines Flash-Speichers
und eines EEPROMs eine verhältnismäßig große Zeitmenge.
Die ECU kann während
des Lösch-
oder Schreibvorgangs belegt sein. Daher ist die ECU möglicherweise
nicht in der Lage, auf die Überschreibungsvorrichtung
zu antworten. Wenn von der ECU über
einen vorgegebenen Zeitraum keine Antwort erhalten wird, stellt
die Überschreibungsvorrichtung
fest, dass die Kommunikation zwischen der ECU und der Überschreibungsvorrichtung
offline ist.
-
Die 5 und 6 zeigen
ein typisches Verfahren zum Überschreiben
eines in einem Speicher der ECU gespeicherten Programms. 5 ist ein
Flussdiagramm, in dem der von der Überschreibungsvorrichtung ausgeführte Prozess
dargestellt ist, und 6 ist ein Flussdiagramm, in
dem der von der ECU ausgeführte
Prozess dargestellt ist.
-
In
Reaktion auf eine Anforderung eines Löschvorgangs von der Überschreibungsvorrichtung (501)
sendet die ECU ein Signal an die Überschreibungsvorrichtung,
welches den Beginn des Löschvorgangs
angibt (552), und löscht
ein in einem Speicher der ECU gespeichertes Programm (553).
In Reaktion auf ein Signal, das den Beginn des Löschvorgangs angibt, fordert
die Überschreibungsvorrichtung
das Ergebnis des Löschvorgangs
an (505). Falls der Löschvorgang
nicht abgeschlossen wurde, sendet die ECU ein Signal an die Überschreibungsvorrichtung,
welches angibt, dass der Löschvorgang
gerade ausgeführt
wird (556). Falls der Löschvorgang abgeschlossen
wurde, sendet die ECU ein Signal, das den Abschluss des Löschvorgangs
angibt (557).
-
Ähnlich wird
ein Schreibvorgang ausgeführt. In
Reaktion auf eine Anforderung eines Schreibvorgangs von der Überschreibungsvorrichtung
(521) sendet die ECU ein Signal an die Überschreibungsvorrichtung,
welches den Beginn des Schreibvorgangs angibt (562), und
schreibt ein neues Programm in den Speicher der ECU (563).
In Reaktion auf das Signal, das den Beginn des Schreibvorgangs angibt,
fordert die Überschreibungsvorrichtung
das Ergebnis des Schreibvorgangs an (525). Falls der Schreibvorgang
nicht abgeschlossen wurde, sendet die ECU ein Signal an die Überschreibungsvorrichtung,
welches angibt, dass der Schreibvorgang gerade ausgeführt wird
(566). Falls der Schreibvorgang abgeschlossen wurde, sendet
die ECU ein Signal, das den Abschluss des Schreibvorgangs angibt (567).
-
Falls
in Schritt 509 oder 529 die Antwort von der ECU
an gibt, dass der Lösch-
oder Schreibvorgang gerade ausgeführt wird, kehrt der Prozess
zu Schritt 505 oder 525 zurück. Falls die Antwort von der ECU
angibt, dass der Lösch-
oder Schreibvorgang abgeschlossen wurde, wird der Prozess im folgenden
Schritt 510 oder 530 fortgesetzt. Auf diese Weise stellt
die Überschreibungsvorrichtung
fest, ob gerade ein Lösch-
oder Schreibvorgang ausgeführt
wurde oder abgeschlossen wurde, indem sie eine Anforderung des Ergebnisses
des Lösch-
oder Schreibvorgangs sendet und eine Antwort auf die Anforderung bzw.
Anfrage empfängt.
Selbst wenn der Lösch-
oder Schreibvorgang gerade ausgeführt wird, wird keine fehlerhafte
Offline-Bestimmung ausgeführt,
solange eine Antwort von der ECU erhalten wird.
-
7 zeigt
zwei typische Formen eines an der ECU angebrachten nichtflüchtigen
Speichers. 7(a) zeigt eine Form, wobei
ein Flash-Speicher 216, der ein nichtflüchtiger Speicher ist, unabhängig von
einer CPU 214 bereitgestellt ist. Mit anderen Worten ist
der Flash-Speicher 216 auf einem von der CPU 214 verschiedenen
Chip angebracht. Der Flash-Speicher 216 ist mit einem Chip
eines Mikrocomputers, an dem die CPU angebracht ist, über einen
externen Bus 205 gekoppelt. Wenn die ECU 210 eine
Anforderung eines Lösch- oder Schreibvorgangs
an dem Flash-Speicher 216 von der Überschreibungsvorrichtung 211 empfängt, wird
der Vorgang von einer Ein-/Ausgabe-Steuereinrichtung (nicht dargestellt)
ausgeführt,
die die Ein-/Ausgabe über
den externen Bus 205 steuert. Weil der Lösch- oder
Schreibvorgang an dem Flash-Speicher 216 auf diese Weise
unabhängig
von der CPU ausgeführt wird,
wird die CPU während
des Lösch-
oder Schreibvorgangs nicht belegt.
-
7(b) zeigt eine andere Form, wobei der Flash-Speicher 216 und
die CPU 214 auf einem Einzelchip bereitgestellt sind, um
einen Einchip-Mikrocomputer zu bilden. Der Flash- Speicher 216 ist über einen
internen Bus 207 mit der CPU 214 gekoppelt. Der
Lösch-
oder Schreibvorgang wird durch eine in der CPU 214 vorhandene
Schnittstelleneinrichtung als eine Funktion ausgeführt. In
diesem Fall kann die CPU während
des Lösch-
oder Schreibvorgangs belegt werden. Wenn die CPU belegt ist, ist
die ECU 210 möglicherweise
nicht in der Lage, mit der Überschreibungsvorrichtung 211 zu
kommunizieren.
-
In
letzter Zeit wurde zum Verringern der Kosten bezüglich der ECU zunehmend ein
Mikrocomputer eingesetzt, der einen nichtflüchtigen Speicher aufweist,
wie in 7(b) dargestellt ist. Wie voranstehend
beschrieben wurde, kann eine CPU in dieser Form während eines
Lösch-
oder Schreibvorgangs an einem nichtflüchtigen Speicher belegt werden. Wenn
die ECU belegt ist, kann sie nicht auf eine Anforderung des Ergebnisses
des Lösch-
oder Schreibvorgangs von der Überschreibungsvorrichtung
antworten. Selbst wenn die Kommunikation zwischen der ECU und der Überschreibungsvorrichtung
normal ist, kann die Überschreibungsvorrichtung
als Ergebnis feststellen, dass die Kommunikation offline ist, falls
innerhalb eines vorgegebenen Zeitraums keine Antwort von der ECU
empfangen wird. Wenn die CPU der ECU belegt ist, kann die Überschreibungsvorrichtung
demgemäß eine falsche
Offline-Bestimmung ausführen.
-
Eine
Aufgabe der Erfindung besteht darin, ein Überschreibungssystem bereitzustellen,
das eine fehlerhafte Offline-Bestimmung
vermeiden kann, wenn gerade ein Lösch- oder Schreibvorgang an
einem nichtflüchtigen
Speicher in der ECU ausgeführt wird.
-
Eine
weitere Aufgabe der Erfindung besteht darin, ein Überschreibungssystem
bereitzustellen, das die Wirksamkeit des Überschreibens verbessert.
-
Gemäß einer
Ausführungsform
wird ein Überschreibungssystem
zum Überschreiben
in einem Speicher einer Fahrzeugsteuereinrichtung gespeicherter
Daten mit neuen Daten vorgeschlagen, wobei das System folgendes
aufweist:
eine Überschreibungsvorrichtung,
die mit der Fahrzeugsteuereinrichtung kommunizieren kann, wobei die Überschreibungsvorrichtung
dazu konfiguriert ist, ohne Kommunikation mit der Fahrzeugsteuereinrichtung
zu warten, bis eine vorgegebene Wartezeit von der Zeit an, zu der
ein Signal zum Auffordern der Fahrzeugsteuereinrichtung, die Daten
zu löschen oder
die neuen Daten zu schreiben, gesendet wurde, oder von der Zeit
an, zu der ein den Beginn eines Löschvorgangs der Daten oder
eines Schreibvorgangs der neuen Daten angebendes Signal empfangen
wurde, verstrichen ist, dadurch gekennzeichnet, dass
die vorgegebene
Wartezeit für
den Löschvorgang
die zum Löschen
der im Speicher (16) gespeicherten Daten erforderliche
Zeit ist und die vorgegebene Wartezeit für den Schreibvorgang die zum
Schreiben der neuen Daten in den Speicher (16) erforderliche
Zeit ist.
-
Gemäß einer
anderen Ausführungsform
wird ein Verfahren zum Überschreiben
eines Speichers einer Fahrzeugsteuereinrichtung durch eine Überschreibungsvorrichtung
vorgeschlagen, die mit der Fahrzeugsteuereinrichtung kommunizieren
kann, wobei das Verfahren folgende Schritte aufweist:
Senden
einer Anforderung, durch die die Fahrzeugsteuereinrichtung aufgefordert
wird, in dem Speicher gespeicherte Daten zu löschen oder neue Daten in den
Speicher zu schreiben, und
Warten an der Überschreibungsvorrichtung,
bis eine vorgegebene Wartezeit ab der Absendezeit der Anforderung
verstrichen ist,
wobei während
der Wartezeit kein Nachrichtentausch zwischen der Fahrzeugsteuereinrichtung
und der Überschreibungsvorrichtung
erfolgt, wobei das Verfahren des weiteren die folgenden Schritte
umfasst:
Berechnen der zum Löschen der in dem Speicher gespeicherten
Daten erforderlichen Löschzeit,
und
Festlegen der Löschzeit
als die Wartezeit im Fall einer Anforderung zum Löschen von
Daten, und
Berechnen der zum Schreiben der neuen Daten in den
Speicher erforderlichen Wartezeit, und
Festlegen der Schreibzeit
als die Wartezeit im Fall einer Anforderung zum Schreiben neuer
Daten.
-
Die
Löschzeit
und die Schreibzeit sind abhängig
von der Spezifikation des Speichers. Somit wird die Wartezeit entsprechend
der Spezifikation des Speichers optimiert.
-
Gemäß einer
anderen Ausführungsform
der Erfindung wird die Löschzeit
auf der Grundlage der Größe der Daten
und der Spezifikation des Speichers berechnet und die Schreibzeit
auf der Grundlage der Größe der neuen
Daten und der Spezifikation des Speichers berechnet. Die Berechnung
wird in der Fahrzeugsteuereinrichtung implementiert.
-
Gemäß einer
anderen Ausführungsform
der Erfindung erfasst die Überschreibungsvorrichtung die
Löschzeit
von der Fahrzeugsteuereinrichtung und setzt sie in die Wartezeit
für den
Löschvorgang
ein. In ähnlicher
Weise erfasst die Überschreibungsvorrichtung
die Schreibzeit von der Fahrzeugsteuereinrichtung und setzt sie
in die Wartezeit für
den Schreibvorgang ein. Dies ermöglicht
eine Minimierung der Wartezeit, wodurch die Effizienz der Überschreibung
verbessert wird.
-
Bevorzugte
Ausführungsformen
der Erfindung werden nun lediglich als Beispiel mit Bezug auf die
Zeichnung beschrieben.
-
1 ist
ein Blockdiagramm, in dem Funktionsblöcke eines Überschreibungssystems gemäß einer
Ausführungsform
der Erfindung dargestellt sind,
-
2 zeigt
eine Betriebsprozedur eines Überschreibungssystems
gemäß einer
Ausführungsform
der Erfindung,
-
3 ist ein Flussdiagramm, in dem der Lösch- und
Schreibvorgang in einer Überschreibungsvorrichtung
gemäß einer
Ausführungsform
der Erfindung dargestellt ist,
-
4 ist
ein Flussdiagramm, in dem der Lösch-
und Schreibvorgang in einer Fahrzeugsteuereinrichtung gemäß einer
Ausführungsform
der Erfindung dargestellt ist,
-
5 ist
ein Flussdiagramm, in dem der herkömmliche Lösch- und Schreibvorgang in
einer Überschreibungsvorrichtung
dargestellt ist,
-
6 ist
ein Flussdiagramm, in dem der herkömmliche Lösch- und Schreibvorgang in
einer Fahrzeugsteuereinrichtung dargestellt ist, und
-
7 zeigt
eine typische Form einer CPU und eines Spei chers in einer Fahrzeugsteuereinrichtung.
-
Ein
System zum Überschreiben
eines in einem nichtflüchtigen
Speicher einer Fahrzeugsteuereinrichtung gespeicherten Programms
wird mit Bezug auf die anliegende Zeichnung beschrieben. Die vorliegende
Erfindung ist jedoch nicht auf das System beschränkt, sondern sie ist auf verschiedene Systeme
zum Überschreiben
in einem Speicher gespeicherter Daten anwendbar, wie durch die Ansprüche definiert
ist.
-
1 zeigt
ein allgemeines Funktionsblockdiagramm eines erfindungsgemäßen Überschreibungssystems.
Das Überschreibungssystem
weist eine ECU 10 und eine Überschreibungsvorrichtung 11 auf.
Die Überschreibungsvorrichtung 11 ist
eine Überschreibungsvorrichtung,
die von einem Hersteller von Fahrzeugen autorisiert ist, an denen
die ECU 10 montiert ist. Durch Verbinden der Überschreibungsvorrichtung 11 mit
der ECU 10 über
einen seriellen Kommunikationsbus und Betätigen der Überschreibungsvorrichtung 11 wird
die Sicherheit zum Verhindern, dass ein Programm oder Daten, die
im ROM 16 der ECU 10 gespeichert sind, ohne geeignete
Berechtigung überschrieben
werden, aufgehoben. Demgemäß wird es
der Überschreibungsvorrichtung 11 ermöglicht,
ein Programm oder Daten, die im ROM 16 gespeichert sind,
zu überschreiben.
-
Die
ECU 10 umfasst eine Zentralverarbeitungseinheit 14 (nachstehend
als "CPU" bezeichnet), die
einen Mikrocomputer und zugeordnete Schaltungselemente aufweist,
ROMs 16 und 17, die nichtflüchtige Speicher sind und Programme
und Daten speichern, einen RAM 15 (Direktzugriffsspeicher), der
einen Arbeitsbereich zur Ausführung
bereitstellt und Rechenergebnisse speichert, und eine E/A-Schnittstelle 18 zum
Empfangen von Signalen von verschiedenen Sensoren 19 und
zum Senden von Steuersignalen zu verschiedenen Teilen des Motors.
-
Signale
von verschiedenen Sensoren 19 umfassen die Motordrehgeschwindigkeit
(Ne), die Motorwassertemperatur (Tw), die Ansauglufttemperatur (Ta),
die Batteriespannung (VB) und einen Zündschalter (IGSW). Demgemäß ruft die
CPU 14 auf der Grundlage eines von der E/A-Schnittstelle 18 eingegebenen
Signals ein Steuerprogramm und Daten von den ROMs 16 und 17 auf,
um Berechnungen auszuführen,
und gibt die Ergebnisse über
die E/A-Schnittstelle 18 an verschiedene Teile des Fahrzeugs
aus, um verschiedene Funktionen des Fahrzeugs zu steuern.
-
Die
ECU 10 weist auch eine Schnittstelle 12 auf. Die
Schnittstelle 12 weist ein Protokoll zur Kommunikation
mit der Überschreibungsvorrichtung 11 auf,
um eine serielle Kommunikation zwischen der ECU 10 und
der Überschreibungsvorrichtung 11 zu ermöglichen.
-
Der überschreibbare
ROM 16 ist ein nichtflüchtiger
Speicher, bei dem gespeicherte Daten gelöscht werden können und
in den neue Daten geschrieben werden können. Der überschreibbare ROM 16 kann
beispielsweise ein Flash-Speicher oder ein EEPROM sein. Der nicht überschreibbare ROM 17 ist
ein nichtflüchtiger
Speicher. Der nicht überschreibbare
ROM 17 kann durch Spezifizieren eines Teils des Speicherbereichs
eines überschreibbaren
ROMs als ein unveränderlicher
Bereich oder durch die Verwendung eines Masken-ROMs, für den Daten
während
der Herstellung festgelegt werden und aus dem Daten anschließend nicht
gelöscht
werden können
oder in den Daten anschließend
nicht geschrieben werden können,
implementiert werden. Alternativ kann der ROM 17 mit einem
PROM implementiert werden, in den Daten nur einmal geschrieben werden
können.
-
Die
ROMs 16 und 17 können als zwei Speicher implementiert werden,
die physikalisch getrennt sind. Alternativ kann der Speicherbereich
eines einzelnen Speichers in zwei Bereiche unterteilt werden, so
dass einer der Bereiche als ein überschreibbarer Bereich
verwendet wird, während
der andere als ein nicht überschreibbarer
Bereich verwendet wird. Beispielsweise wird, nachdem ein nicht überschreibbarer
Bereich, in dem ein Programm oder dergleichen gespeichert ist, in
einem EEPROM spezifiziert worden ist, ein überschreibbarer Bereich mit
Anfangs- und Endadressen in dem ungefüllten Platz des Speichers spezifiziert.
-
Ein
Programm P1, das von der Überschreibungsvorrichtung 11 zu überschreiben
ist, ist in dem überschreibbaren
ROM 16 gespeichert. Programme, die einen Berechtigungsprüfungsteil 33,
einen Initialisierungsteil 34, einen Löschteil 35 und einen
Schreibteil 36 implementieren, sind in dem nicht überschreibbaren
ROM 17 gespeichert. Der Berechtigungsprüfungsteil 33 beurteilt,
ob die Überschreibungsvorrichtung 11 berechtigt
ist. Falls entschieden wird, dass die Überschreibungsvorrichtung berechtigt
ist, hebt der Berechtigungsprüfungsteil 33 die
Sicherheit auf, die verhindert, dass im ROM 16 gespeicherte
Daten ohne geeignete Genehmigung geändert werden.
-
Der
Initialisierungsteil 34 führt einen Initialisierungsprozess
aus, um einen Lösch-
und Schreibvorgang einzuleiten. Der Löschteil 35 löscht das
Programm P1. Der Schreibteil 36 empfängt seriell ein neues Programm
P2 darstellende Datenblöcke
von der Überschreibungsvorrichtung 11.
Die Datenblöcke werden
von dem Programmcode des neuen Programms P2 zusammengestellt. Der
Schreibteil 36 schreibt einen in jedem Datenblock enthaltenen
Teilprogrammcode in den ROM 16.
-
Die Überschreibungsvorrichtung 11 weist
einen Sicherheits aufhebungs-Anforderungsteil 20, einen Überschreibungsinitialisierungsteil 21,
einen Löschanforderungsteil 23 und
einen Löschergebnis-Anforderungsteil 25 auf,
die als Programme in einem Speicher der Überschreibungsvorrichtung 11 gespeichert
sind. Der Sicherheitsaufhebungs-Anforderungsteil 20 fordert
die ECU 10 auf, die Sicherheit aufzuheben, so dass das Überschreiben
in den überschreibbaren
ROM 16 der ECU 10 gestattet wird. Der Überschreibungsinitialisierungsteil 21 führt einen
Initialisierungsprozess zum Einleiten des Lösch- und Schreibvorgangs aus.
Der Löschanforderungsteil 23 fordert
die ECU 10 auf, das Programm P1 im ROM 16 zu löschen.
-
Der
Löschwarteteil 24 wartet,
bis eine vorgegebene Wartezeit DT2 von der Zeit an verstrichen ist, zu
der der Löschvorgang
in der ECU 10 eingeleitet wurde. Für die Wartezeit DT2 tauscht
die Überschreibungsvorrichtung 11 keine
Nachricht mit der ECU 10 aus. Mit anderen Worten befindet
sich die Überschreibungsvorrichtung 11 in
einem Wartezustand, wenn der Löschvorgang
in der ECU 10 ausgeführt wird.
Auf diese Weise kann eine fehlerhafte Offline-Bestimmung infolge
eines Belegungszustands der ECU 10 vermieden werden. Wenn
die Wartezeit DT2 verstrichen ist, fordert der Löschergebnis-Anforderungsteil 25 das
Ergebnis des Löschvorgangs
an, um zu bestimmen, ob der Löschvorgang
gerade abläuft
oder abgeschlossen wurde.
-
Die Überschreibungsvorrichtung 11 weist auch
einen Schreibanforderungsteil 27, einen Schreibergebnis-Anforderungsteil 29 und
einen Datenblock-Zusammenstellungsteil 30 auf, die als
Programme in einem Speicher gespeichert sind. Der Datenblock-Zusammenstellungsteil 30 stellt
Datenblöcke
von dem neuen Programm P2 zusammen. Jeder Datenblock weist ein Programmcodefeld
für einen Teilprogrammcode
des neuen Programms P2 und ein Adressfeld für eine erste Adresse des ROMs 16, worin
der Teilprogrammcode zu speichern ist, auf Beispielsweise hat jeder
Teilprogrammcode eine Länge
von acht Bits. Die zusammengestellten Datenblöcke werden durch serielle Kommunikation
durch den Schreibanforderungsteil 27 seriell an die ECU 10 gesendet.
-
Der
Schreibanforderungsteil 27 fordert die ECU 10 auf,
einen Teilprogrammcode jedes Datenblocks an eine Adresse des ROMs 16 zu
schreiben, die durch einen Adresswert im Adressfeld jedes Datenblocks
angegeben ist.
-
Der
Schreibwarteteil 28 wartet, bis eine vorgegebene Wartezeit
WT2 von der Zeit an verstrichen ist, zu der der Schreibvorgang in
der ECU 10 eingeleitet wurde. Für die Wartezeit WT2 tauscht
die Überschreibungsvorrichtung 11 keine
Nachricht mit der ECU 10 aus. Mit anderen Worten befindet
sich die Überschreibungsvorrichtung 11 in
einem Wartezustand, wenn ein Schreibvorgang in der ECU 10 ausgeführt wird.
Auf diese Weise kann eine fehlerhafte Offline-Bestimmung infolge eines Belegungszustands
der ECU 10 vermieden werden. Wenn die Wartezeit WT2 verstrichen
ist, fordert der Schreibergebnis-Anforderungsteil 29 das
Ergebnis des Schreibvorgangs an, um zu bestimmen, ob der Schreibvorgang
gerade abläuft
oder abgeschlossen wurde.
-
Die
ECU 10 umfasst auch einen Löschzeit-Berechnungsteil 37 und
einen Schreibzeit-Berechnungsteil 38. Der Löschzeit-Berechnungsteil 37 berechnet
die zum Löschen
des Programms P1 erforderliche Zeit DT. Eine Einheitszeit für das Löschen, die
beispielsweise in Blöcken
oder Bytes ausgedrückt
werden kann, hängt
vom Typ des ROMs 16 ab. Das heißt, dass eine Einheitszeit
für das
Löschen entsprechend
der Spezifikation des ROMs 16 vorbestimmt ist. Der Löschzeit-Berechnungsteil 37 berechnet
die Löschzeit
DT auf der Grundlage der Größe des Programms
P1 und einer für
den ROM 16 spezi fischen Einheitszeit für das Löschen.
-
Der
Schreibzeit-Berechnungsteil 38 berechnet die für das Schreiben
eines Teilprogrammcodes des von der Überschreibungsvorrichtung 11 empfangenen
neuen Programms P2 erforderliche Zeit WT. Wie im Fall für das Löschen hängt eine
Einheitszeit für
das Schreiben vom Typ des ROMs 16 ab und ist entsprechend
der Spezifikation des ROMs 16 vorbestimmt. Der Schreibzeit-Berechnungsteil 38 berechnet
die Schreibzeit WT auf der Grundlage der Größe eines Teilprogrammcodes
des Programms P2 und einer für
den ROM 16 spezifischen Einheitszeit für das Schreiben. Auf diese
Weise wird die Schreibzeit WT entsprechend der zu einer Zeit durch
den Schreibteil 36 in den ROM 16 geschriebenen
Datenmenge berechnet.
-
Gemäß einer
anderen Ausführungsform
können
der Löschzeit-Berechnungsteil 37 und
der Schreibzeit-Berechnungsteil 38 in der Überschreibungsvorrichtung 11 bereitgestellt
werden. Die Überschreibungsvorrichtung 11 kann
eine vorab festgelegte für
den ROM 16 spezifische Einheitszeit für das Löschen und das Schreiben aufweisen.
Alternativ kann die Überschreibungsvorrichtung 11 eine
Einheitszeit für
das Löschen
und Schreiben von der ECU 10 abrufen. Demgemäß werden
die Löschzeit
DT und die Schreibzeit WT in der Überschreibungsvorrichtung 11 berechnet.
-
Die Überschreibungsvorrichtung 11 weist vorzugsweise
einen Löschzeit-Erfassungsteil 22 und einen
Schreibzeit-Erfassungsteil 26 auf. Bevor oder während der
Löschanforderungsteil 23 die
ECU 10 auffordert, das Programm P1 zu löschen, erfasst der Löschzeit-Erfassungsteil 22 von
der ECU 10 die von dem Löschzeit-Berechnungsteil 37 berechnete Löschzeit
DT. Der Löschzeit-Erfassungsteil 22 setzt die
erfasste Löschzeit
DT in die zweite Bestimmungszeit DT2 ein. Demge mäß wartet die Überschreibungsvorrichtung 11,
bis die Löschzeit
DT von der Zeit an verstrichen ist, zu der der Löschvorgang eingeleitet wurde.
Dies ermöglicht
es, die Wartezeit für den
Löschvorgang
entsprechend der Spezifikation des ROMs 16 zu optimieren,
wodurch die Wirksamkeit des Löschvorgangs
verbessert wird.
-
Ähnlich erfasst
der Schreibzeit-Anforderungsteil 26 von der ECU 10 die
vom Schreibzeit-Berechnungsteil 38 berechnete Schreibzeit
WT bevor oder während
der Schreibanforderungsteil 27 die ECU 10 auffordert,
einen Teilprogrammcode des neuen Programms P2 zu schreiben. Der
Schreibzeit-Erfassungsteil 26 setzt die erfasste Schreibzeit WT
in die Wartezeit WT2 ein. Demgemäß wartet
die Überschreibungsvorrichtung 11,
bis die Schreibzeit WT von der Zeit an verstrichen ist, zu der der Schreibvorgang
eingeleitet wurde. Dies ermöglicht es,
die Wartezeit für
den Schreibvorgang entsprechend der Spezifikation des ROMs 16 zu
optimieren, wodurch die Wirksamkeit des Schreibvorgangs verbessert
wird. Alternativ können
die Wartezeit DT2 bzw. die Wartezeit WT2 als fester Wert vorgegeben werden.
-
Die Überschreibungsvorrichtung 11 weist auch
einen Offline-Bestimmungsteil 31 auf.
Der Offline-Bestimmungsteil 31 entscheidet, ob die Kommunikation
zwischen der Überschreibungsvorrichtung 11 und
der ECU 10 offline ist. Insbesondere stellt der Offline-Bestimmungsteil 31 fest,
dass die Kommunikation offline ist, falls keine Antwort von der
ECU 10 empfangen wird, bis eine vorgegebene Bestimmungszeit
DT1 von der Zeit an verstrichen ist, zu der eine Anforderung durch
die Überschreibungsvorrichtung 11 zur
ECU 10 gesendet wurde. Die Anforderung kann eine Anforderung
der Löschzeit
DT, eine Anforderung eines Löschvorgangs
oder eine Anforderung des Ergebnisses des Löschvorgangs sein.
-
Ähnlich stellt
der Offline-Bestimmungsteil 31 fest, dass die Kommunikation
offline ist, falls von der ECU 10 keine Antwort empfangen
wird, bis eine vorgegebene Bestimmungszeit WT1 von der Zeit an verstrichen
ist, zu der eine Anforderung von der Überschreibungsvorrichtung 11 zur
ECU 10 gesendet wurde. Die Anforderung kann eine Anforderung
der Schreibzeit WT, eine Anforderung eines Schreibvorgangs oder
eine Anforderung des Ergebnisses des Schreibvorgangs sein. Der Wert
der Bestimmungszeit WT1 kann mit demjenigen der Bestimmungszeit DT1 übereinstimmen
oder davon verschieden sein.
-
2 zeigt
den Überschreibungsvorgang gemäß dem in 1 dargestellten Überschreibungssystem.
Der Überschreibungsvorgang
wird beispielsweise durch Betätigen
der Überschreibungsvorrichtung 11,
nachdem sie mit der ECU 10 verbunden worden ist, eingeleitet.
Alternativ kann der Überschreibungsvorgang
durch Betätigen
der ECU 10 eingeleitet werden.
-
In
Schritt 41 sendet der Sicherheitsaufhebungs-Anforderungsteil 20 der Überschreibungsvorrichtung 11 ein
Signal an die ECU 10, das eine Anforderung zum Aufheben
der Sicherheit angibt. Die ECU 10 antwortet auf das Signal
und ruft den Berechtigungsprüfungsteil 33 auf.
Der Berechtigungsprüfungsteil 33 leitet
einen Berechtigungsprüfungsprozess
ein, um zu bestätigen,
dass die berechtigte Überschreibungsvorrichtung
angeschlossen ist.
-
Der
Berechtigungsprüfungsprozess
kann in beliebiger Weise ausgeführt
werden. Beispielsweise haben die Überschreibungsvorrichtung 11 und
die ECU 10 jeweils Sicherheitsfunktionen. Die Überschreibungsvorrichtung 11 berechnet
ihren eigenen Funktionswert für
eine gegebene Zahl und sendet den berechneten Wert an die ECU 10.
Andererseits berechnet die ECU 10 ihren eigenen Funktionswert für dieselbe
Zahl. Die ECU 10 vergleicht den von ihr selbst berechneten
Wert mit dem von der Überschreibungsvorrichtung 11 empfangenen
Wert. Die ECU 10 stellt fest, dass die Überschreibungsvorrichtung berechtigt
ist, falls die beiden Werte gleich sind. Die ECU 10 sendet
ein Signal an die Überschreibungsvorrichtung 11,
welches eine Erlaubnis zum Überschreiben
angibt. Auf diese Weise wird die Sicherheit aufgehoben.
-
Falls
die ECU 10 der Überschreibungsvorrichtung 11 eine
Berechtigung erteilt und es ihr ermöglicht, den ROM 16 zu überschreiben,
geht der Prozess zu Schritt 42. Der Überschreibungsinitialisierungsteil 21 der Überschreibungsvorrichtung 11 sendet
ein Signal an die ECU 10, welches den Beginn des Überschreibens
angibt. Der Initialisierungsteil 34 der ECU 10 gibt
ein Signal zurück,
das eine Erlaubnis zum Überschreiben
angibt, wenn er für
das Überschreiben
bereit ist.
-
In
Schritt 43 sendet die Überschreibungsvorrichtung 11 eine
Anforderung zum Überführen in
einen Überschreibungsvorgangsmodus
an die ECU 10. Der Initialisierungsteil 34 der
ECU 10 führt
einen Prozess zum Überführen in
den Überschreibungsvorgangsmodus
aus. In Schritt 44 fragt der Überschreibungsinitialisierungsteil 21 der Überschreibungsvorrichtung 11 die
ECU 10 ab, falls die Überführung abgeschlossen
wurde. Falls die Überführung abgeschlossen
wurde, sendet der Überschreibungsinitialisierungsteil 34 der
ECU 10 ein Signal an die Überschreibungsvorrichtung 11,
welches den Abschluss der Überführung angibt.
-
In
Schritt 45 fragt der Löschzeit-Erfassungsteil 22 der Überschreibungsvorrichtung 11 die
Zeit ab, die für
das Löschen
des Programms P1 erforderlich ist. Ansprechend auf die Anfrage berechnet
der Löschzeit-Berechnungsteil 37 der
ECU 10 die Löschzeit
DT und sendet sie zur Überschreibungs vorrichtung 11.
Der Löschzeit-Erfassungsteil 22 setzt
die erfasste Löschzeit
DT in die zweite Bestimmungszeit DT2 ein. In Schritt 46 fordert
der Löschanforderungsteil 23 der Überschreibungsvorrichtung 11 die
ECU 10 auf, das Programm P1 zu löschen. In Reaktion auf die
Anforderung sendet der Löschteil 35 der
ECU 10 ein Signal, das den Beginn des Löschvorgangs angibt.
-
Wenn
sie das den Beginn des Löschvorgangs
angebende Signal empfängt,
tritt die Überschreibungsvorrichtung 11 in
einen Wartezustand ein. Die Überschreibungsvorrichtung 11 wartet,
bis die Wartezeit DT2 verstrichen ist. Alternativ kann die verstrichene
Zeit der Wartezeit DT2 von der Zeit an gemessen werden, zu der die
Anforderung des Löschvorgangs
gesendet wird. Für
die Wartezeit DT2 wird der Löschvorgang
des Programms P1 vom Löschteil 35 der
ECU 10 ausgeführt.
-
Wenn
die Wartezeit DT2 verstrichen ist, fordert der Löschergebnis-Anforderungsteil 25 der Überschreibungsvorrichtung 11 das
Ergebnis des Löschvorgangs
an (Schritt 47). Wenn der Löschvorgang des Programms P1
abgeschlossen wurde, sendet der Löschteil 35 der ECU 10 ein
Signal an die Überschreibungsvorrichtung 11,
das den Abschluss des Löschvorgangs
angibt.
-
In
der Überschreibungsvorrichtung 11 wurde das
neue Programm P2 vom Datenblock-Zusammenstellungsteil 30 als
Datenblöcke
vorbereitet. Das Zusammenstellen der Datenblöcke vom Programm P2 wird typischerweise
ausgeführt,
bevor die Sicherheitsaufhebungsanforderung oder das Überschreibungsanfangssignal
an die ECU 10 gesendet wird. Alternativ kann es unmittelbar
vor Schritt 47 oder 48 ausgeführt werden.
-
In
Schritt 48 fordert der Schreibzeit-Erfassungsteil 26 der Überschreibungsvorrichtung 11 die für das Schreiben
des neuen Programms P2 erforderliche Zeit an. In Reaktion auf die
Anforderung berechnet der Schreibzeit-Berechnungsteil 38 der
ECU 10 die Schreibzeit WT und sendet sie an die Überschreibungsvorrichtung 11.
Der Schreibzeit-Erfassungsteil 26 setzt die Schreibzeit
WT in die zweite Bestimmungszeit WT2 ein.
-
In
Schritt 49 überträgt der Schreibanforderungsteil 27 der Überschreibungsvorrichtung 11 einen
Datenblock, der einen Teilprogrammcode des neuen Programms P2 enthält, zusammen
mit einem Signal, das eine Anforderung eines Schreibvorgangs angibt,
an die ECU 10. In Reaktion auf die Anforderung sendet der
Schreibteil 36 der ECU 10 ein Signal an die Überschreibungsvorrichtung 11,
das den Beginn des Schreibvorgangs angibt. Der Schreibteil 36 schreibt
den Teilprogrammcode, der in dem Datenblock enthalten ist, in den
ROM 16. Der Teilprogrammcode wird in eine Adresse des ROMs 16 geschrieben,
die durch das Adressfeld des Datenblocks angegeben wird. Es kann
ein Prüfmechanismus
bereitgestellt werden, um festzustellen, ob der Adresswert in dem
Adressfeld des Datenblocks in Adressen von Daten enthalten ist,
die von dem Löschteil 35 gelöscht wurden.
-
Wenn
sie das den Beginn des Schreibvorgangs angebende Signal empfängt, tritt
die Überschreibungsvorrichtung 11 in
einen Wartezustand ein. Die Überschreibungsvorrichtung 11 wartet,
bis die Wartezeit WT2 verstrichen ist. Alternativ kann die verstrichene
Zeit von der Wartezeit WT2 von der Zeit an gemessen werden, zu der
die Anforderung des Schreibvorgangs gesendet wurde. Für die Wartezeit WT2
wird das Schreiben des Programms P2 vom Schreibteil 36 der
ECU 10 ausgeführt.
-
Wenn
die Wartezeit WT2 verstrichen ist, fordert der Schreibergebnis-Anforderungsteil 29 der Überschreibungsvor richtung 11 das
Ergebnis des Schreibvorgangs an (Schritt 50). Wenn der
Schreibvorgang abgeschlossen wurde, sendet der Schreibteil 36 ein
Signal an die Überschreibungsvorrichtung 11,
welches den Abschluss des Schreibvorgangs angibt.
-
Der
Schreibanforderungsteil 27 überträgt den nächsten Datenblock an die ECU 10,
falls das Abschlusssignal ein normales Ende angibt. Die Schritte 49 und 50 werden
wiederholt, bis der gesamte Programmcode des Programms P2 in den
ROM 16 geschrieben wurde. Wenn das Schreiben des gesamten
Programmcodes abgeschlossen wurde, fordert der Schreibanforderungsteil 27 die
ECU 10 auf, den Überschreibungsvorgangsmodus
aufzuheben (Schritt 51). In Reaktion auf die Anforderung
hebt der Schreibteil 36 den Überschreibungsvorgangsmodus auf.
-
Die 3A und 3B sind
zusammen ein Flussdiagramm eines in der Überschreibungsvorrichtung 11 ausgeführten Lösch- und Schreibvorgangs. In
Schritt 60 sendet die Überschreibungsvorrichtung 11 ein
Signal an die ECU 10, das eine Anforderung für die Löschzeit
angibt. Wenn die Löschzeit
DT von der ECU empfangen wird (Schritt 61), wird die Löschzeit
DT in die zweite Bestimmungszeit DT2 eingesetzt (Schritt 64).
Die Überschreibungsvorrichtung 11 sendet
ein Signal, das eine Anforderung eines Löschvorgangs angibt, an die
ECU 10 (Schritt 65).
-
Falls
in Schritt 61 keine Antwort von der ECU 10 erhalten
wird, wird festgestellt, ob die vorgegebene erste Bestimmungszeit
DT1 (beispielsweise 30 Millisekunden) von der Zeit an, zu der die
Anforderung in Schritt 60 gesendet wurde, verstrichen ist (Schritt 62). Ähnlich wird,
falls in Schritt 66 keine Antwort von der ECU 10 erhalten
wird, festgestellt, ob die vorgegebene erste Bestimmungszeit DT1 von
der Zeit an, zu der die Anforderung in Schritt 65 gesendet wurde,
verstrichen ist (Schritt 67). Falls die erste Bestimmungszeit
DT1 nicht verstrichen ist, kehrt der Prozess zu Schritt 61 bzw. 66 zurück, und
die Überschreibungsvorrichtung 11 wartet
wieder auf eine Antwort von der ECU 10. Falls die erste
Bestimmungszeit DT1 verstrichen ist, wird festgestellt, dass die
Kommunikation zwischen der Überschreibungsvorrichtung 11 und
der ECU 10 offline ist (Schritte 63 und 68).
-
Falls
in Schritt 66 eine Antwort von der ECU 10 erhalten
wird, sendet die Überschreibungsvorrichtung 11 ein
Signal an die ECU 10, das eine Anforderung des Ergebnisses
des Löschvorgangs
angibt (Schritt 70). Falls eine Antwort von der ECU 10 erhalten
wird (Schritt 71), wird geprüft, ob die Antwort den Abschluss
des Löschvorgangs
angibt (Schritt 72). Falls die Antwort den Abschluss des
Löschvorgangs angibt,
wird der Prozess mit Schritt 76 fortgesetzt. Falls der
Löschvorgang
gerade abläuft,
kehrt der Prozess zu Schritt 70 zurück, und das Signal, das eine Anforderung
für das
Ergebnis des Löschvorgangs angibt,
wird wieder an die ECU 10 gesendet. Alternativ kann nach
einem vorgegebenen Zeitraum zu Schritt 70 zurückgekehrt
werden.
-
Falls
in Schritt 71 keine Antwort von der ECU 10 erhalten
wird, wird geprüft,
ob die erste Bestimmungszeit DT1 von der Zeit an, zu der die Anforderung
in Schritt 70 gesendet wurde, verstrichen ist (Schritt 73).
Falls die erste Bestimmungszeit DT1 nicht verstrichen ist, kehrt
der Prozess zu Schritt 71 zurück, und die Überschreibungsvorrichtung 11 wartet
wieder auf eine Antwort von der ECU 10. Falls die erste
Bestimmungszeit DT1 verstrichen ist, wird festgestellt, dass die
Kommunikation offline ist (Schritt 75).
-
Demgemäß kann durch
Warten, bis die Wartezeit DT2 vom Be ginn des Löschvorgangs an verstrichen
ist, eine fehlerhafte Offline-Bestimmung infolge eines Belegungszustands
der ECU vermieden werden. Zusätzlich
kann die Wirksamkeit des Löschvorgangs
verbessert werden, weil die Löschzeit
DT entsprechend der Spezifikation des ROMs in die Wartezeit DT2
eingesetzt ist.
-
Falls
in Schritt 76 der Löschvorgang
normal endet, wird der Prozess in 3B mit
Schritt 80 fortgesetzt. Falls der Löschvorgang nicht normal endet, verlässt der
Prozess diese Routine.
-
In
Schritt 80 wird ein Signal, das eine Anforderung der Schreibzeit
angibt, an die ECU 10 gesendet. Die Überschreibungsvorrichtung empfängt die Schreibzeit
WT und setzt sie in die zweite Bestimmungszeit WT2 ein (Schritt 84).
Der Prozess geht zu Schritt 85, und ein Datenblock, der
einen Teilprogrammcode des neuen Programms P2 enthält, wird an
die ECU 10 übertragen.
-
Falls
in Schritt 81 keine Antwort von der ECU 10 erhalten
wird, wird festgestellt, ob die vorgegebene Bestimmungszeit WT1
(beispielsweise 30 Millisekunden) von der Zeit an verstrichen ist,
zu der die Anforderung in Schritt 80 gesendet wurde (Schritt 82). Falls
in Schritt 86 keine Antwort von der ECU 10 erhalten
wird, wird ähnlich
festgestellt, ob die vorgegebene Bestimmungszeit WT1 von der Zeit
an verstrichen ist, zu der die Anforderung in Schritt 85 gesendet
wurde (Schritt 87). Falls die Bestimmungszeit WT1 nicht
verstrichen ist, kehrt der Prozess zu Schritt 81 bzw. 86 zurück, und
die Überschreibungsvorrichtung 11 wartet
wieder auf eine Antwort von der ECU 10. Falls die Bestimmungszeit
WT1 verstrichen ist, wird festgestellt, dass die Kommunikation offline
ist (Schritte 83 und 88).
-
Falls
in Schritt 86 eine Antwort von der ECU 10 empfangen
wird, wird der Prozess in Schritt 89 fortgesetzt. In Schritt 89 tritt
die Überschreibungsvorrichtung 11 in
einen Wartezustand ein und wartet, bis die Wartezeit WT2 (beispielsweise
40 Millisekunden) verstrichen ist. Wenn die Wartezeit WT2 verstrichen ist,
sendet die Überschreibungsvorrichtung
ein Signal an die ECU 10, das eine Anforderung des Ergebnisses
des Schreibvorgangs angibt (Schritt 90). Falls es eine
Antwort auf die Anforderung gibt, wird geprüft, ob die Antwort den Abschluss
des Schreibvorgangs angibt (Schritt 92). Falls die Antwort
den Abschluss des Schreibvorgangs angibt, wird der Prozess in Schritt 96 fortgesetzt.
Falls der Schreibvorgang gerade abläuft, kehrt der Prozess zu Schritt 90 zurück, und
die Überschreibungsvorrichtung 11 sendet
das Signal, das eine Anforderung des Ergebnisses des Schreibvorgangs
angibt, wieder an die ECU 10. Die Rückkehr zu Schritt 90 kann
nach einem vorgegebenen Zeitraum erfolgen.
-
Falls
in Schritt 91 keine Antwort von der ECU 10 erhalten
wird, wird geprüft,
ob die Bestimmungszeit WT1 von der Zeit an verstrichen ist, zu der
die Anforderung in Schritt 90 gesendet wurde (Schritt 93).
Falls die Bestimmungszeit WT1 nicht verstrichen ist, kehrt der Prozess
zu Schritt 91 zurück,
und die Überschreibungsvorrichtung
wartet wieder auf eine Antwort von der ECU 10. Falls von
der ECU keine Antwort erhalten wird, bis die Bestimmungszeit WT1 verstrichen
ist, stellt die Überschreibungsvorrichtung 11 fest,
dass die Kommunikation offline ist (Schritt 95).
-
Demgemäß kann durch
Warten, bis die Wartezeit WT2 vom Beginn des Schreibvorgangs an
verstrichen ist, eine fehlerhafte Offline-Bestimmung infolge eines
Belegungszustands der ECU vermieden werden. Zusätzlich kann die Wirksamkeit
des Schreibvorgangs verbessert werden, weil die Schreibzeit WT entsprechend
der Spezifikation des ROMs in die Wartezeit WT2 eingesetzt wird.
-
Falls
in Schritt 96 festgestellt wird, dass der Schreibvorgang
normal endet, wird der Prozess mit Schritt 97 fortgesetzt.
Falls nicht der gesamte Programmcode des neuen Programms P2 an die
ECU 10 gesendet worden ist, kehrt der Prozess zu Schritt 80 zurück, um den
nächsten
Datenblock zu senden. Falls der gesamte Programmcode des neuen Programms
P2 an die ECU 10 gesendet worden ist, verlässt der
Prozess diese Routine.
-
4 zeigt
ein Flussdiagramm des von der ECU 10 ausgeführten Lösch- und
Schreibvorgangs. Falls in Schritt 101 ein Signal empfangen
wird, das eine Anforderung der Löschzeit
angibt, wird die Löschzeit
DT an die Überschreibungsvorrichtung 11 gesendet
(Schritt 102). Falls ein Signal, das eine Anforderung eines
Löschvorgangs
angibt, in Schritt 103 empfangen wird, wird ein Signal,
das den Beginn des Löschvorgangs
angibt, an die Überschreibungsvorrichtung 11 gesendet
(Schritt 104), und es wird der Löschvorgang ausgeführt (Schritt 105).
Wenn ein Signal, das eine Anforderung des Ergebnisses des Löschvorgangs
angibt, von der Überschreibungsvorrichtung 11 empfangen
wird (Schritt 106), wird ein Signal, das das Ergebnis des
Löschvorgangs
angibt, an die Überschreibungsvorrichtung 11 gesendet (Schritt 107).
Das Ergebnissignal zeigt den Zustand des Löschvorgangs, so dass ein Wert "1" den Abschluss des Löschvorgangs angibt und ein
Wert "0" angibt, dass der
Löschvorgang
gerade abläuft.
-
Ähnlich wird,
falls ein Signal, das eine Anforderung der Schreibzeit angibt, von
der Überschreibungsvorrichtung 11 empfangen
wird (Schritt 111), die Schreibzeit WT berechnet und an
die Überschreibungsvorrichtung 11 gesendet
(Schritt 112). Falls ein Datenblock des neuen Programms
P2 in Schritt 113 von der Überschreibungsvorrichtung 11 empfangen wird,
wird ein Signal, das den Beginn des Schreibvorgangs angibt, an die Überschreibungsvorrichtung 11 gesendet
(Schritt 114), und es wird ein in dem empfangenen Datenblock
enthaltener Teilprogrammcode in den ROM 16 geschrieben
(Schritt 115). Falls ein Signal, das eine Anforderung des
Ergebnisses des Schreibvorgangs angibt, von der Überschreibungsvorrichtung 11 empfangen
wird (Schritt 116), wird das Ergebnis des Schreibvorgangs
an die Überschreibungsvorrichtung 11 gesendet
(Schritt 117). Das Schreibergebnissignal zeigt den Zustand
des Schreibvorgangs, so dass ein Wert "1" den
Abschluss des Schreibvorgangs angibt und ein Wert "0" angibt, dass der Schreibvorgang gerade
abläuft.
Die Übertragung
des neuen Programms P2 von der Überschreibungsvorrichtung 11 an
die ECU 10 wird für
jeden Datenblock ausgeführt.
Daher werden die Schritte 113 bis 117 wiederholt,
bis alle Datenblöcke des
neuen Programms P2 empfangen worden sind (Schritt 118).