DE19929795B4 - Vorrichtung und Verfahren zur Steuerung eines erneuten Schreibens von Daten in einen nichtflüchtigen Speicher - Google Patents

Vorrichtung und Verfahren zur Steuerung eines erneuten Schreibens von Daten in einen nichtflüchtigen Speicher Download PDF

Info

Publication number
DE19929795B4
DE19929795B4 DE19929795.9A DE19929795A DE19929795B4 DE 19929795 B4 DE19929795 B4 DE 19929795B4 DE 19929795 A DE19929795 A DE 19929795A DE 19929795 B4 DE19929795 B4 DE 19929795B4
Authority
DE
Germany
Prior art keywords
data
processing
memory area
memory
rewriting
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.)
Expired - Lifetime
Application number
DE19929795.9A
Other languages
English (en)
Other versions
DE19929795A1 (de
Inventor
Haruhiko Kondo
Hirokazu Komori
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 DE19929795A1 publication Critical patent/DE19929795A1/de
Application granted granted Critical
Publication of DE19929795B4 publication Critical patent/DE19929795B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2250/00Engine control related to specific problems or objectives
    • F02D2250/12Timing of calculation, i.e. specific timing aspects when calculation or updating of engine parameter is performed
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23304Download program from host
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2637Vehicle, car, auto, wheelchair

Abstract

Gerät (10) zur Steuerung eines vorbestimmten Steuerungsobjekts auf der Grundlage von in einem erneut beschreibbaren nichtflüchtigen Speicher (13) gespeicherten Daten, mit: einem ersten Speicherbereich (14, A, B), um in den nichtflüchtigen Speicher (13) zu schreibende Daten von außerhalb (30) zu empfangen und darin zu speichern, und einem zweiten Speicherbereich (14, A, B), der getrennt von dem ersten Speicherbereich (14, A, B) vorgesehen ist, zum Speichern der in dem ersten Speicherbereich (14, A, B) gespeicherten Daten als in den nichtflüchtigen Speicher (13) zu schreibende Daten, wobei eine Verarbeitung zum Empfang der Daten für den ersten Speicherbereich (14, A, B) und eine Verarbeitung zum Schreiben der in dem zweiten Speicherbereich gespeicherten Schreibdaten in den nichtflüchtigen Speicher (13) parallel ausgeführt werden, wobei der erste Speicherbereich (14) durch einen Rotationspuffer bereitgestellt wird, und wobei die in dem ersten Speicherbereich (14, A, B) gespeicherten Daten als die zu schreibenden Daten in den zweiten Speicherbereich (14, A, B) kopiert werden.

Description

  • Die Erfindung betrifft ein Gerät und ein Verfahren zur Steuerung eines erneuten Schreibens (Neuschreibens) von Daten in einen erneut beschreibbaren nichtflüchtigen Speicher.
  • Es sind elektronische Steuerungsgeräte bekannt, die eine Funktion zum erneuten Schreiben von Daten in einen erneut beschreibbaren und nichtflüchtigen Speicher über Übertragungen mit einer extern angeschlossenen Speicherneuschreibvorrichtung (Vorrichtung zum erneuten Schreiben in einen Speicher) aufweisen. Bei einer Bauart werden empfangene Daten als Schreibdaten jedesmal erneut geschrieben, wenn Daten empfangen werden. Bei einer anderen Bauart, wie in der JP-A-5-189584 offenbart, werden Schreibdaten jeweils zunächst in einem Puffer gespeichert, um eine Sendeanforderung für alle Schreibdaten zu einer Speicherneuschreibvorrichtung zu verarbeiten, wobei dann das erneute Schreiben zu einem Zeitpunkt durchgeführt wird, wenn eine bestimmte Anzahl von Daten gespeichert sind.
  • Bei einer wiederum anderen Bauart, wie in Druckschrift JP 08221312 A offenbart, werden abwechselnd zwei Datenpuffer verwendet, um Daten von außerhalb zu empfangen, und um Daten in einen nichtflüchtigen Speicher zu schreiben.
  • Bei der ersten Bauart werden wie in 8A gezeigt eine Verarbeitung zum Empfang von Daten 1, 2, 3 usw. aus der Speicherneuschreibvorrichtung und eine Verarbeitung zum erneuten Schreiben dieser Daten als Schreibdaten 1, 2, 3 usw. getrennt voneinander zeitlich abwechselnd durchgeführt. Die Summe der Zeitdauer zur Verarbeitung des Datenempfangs und der Zeitdauer zur Verarbeitung des erneuten Schreibens der Daten ist die Gesamtverarbeitungszeitdauer, die für einen gesamten Datenneuschreibvorgang erforderlich ist. Weiterhin werden wie in 8B gezeigt die Empfangsverarbeitung einer Vielzahl von Daten 1, 2, 3 usw. und die Verarbeitung zum erneuten Schreiben dieser Daten als Schreibdaten 1, 2, 3 usw. getrennt voneinander zeitlich abwechselnd ausgeführt. In diesem Beispiel wird die Summe der Empfangsverarbeitungszeitdauer und der Neuschreibverarbeitungszeitdauer eine Gesamtverarbeitungszeitdauer, wie für den gesamten Neuschreibvorgang erforderlich ist.
  • Das heißt, daß die herkömmliche Verarbeitung zum erneuten Schreiben (Neuschreiben) von Daten in einen erneut beschreibbaren nichtflüchtigen Speicher, beispielsweise ein Flash-ROM, wie in 9 ausgeführt wird.
  • Genauer wird in Schritt 1 gemäß 9 überprüft, ob in einem Puffer empfangene Daten vorhanden sind. Falls das Prüfungsergebnis in Schritt 1 Nein ist, schreitet die Verarbeitung zu Schritt S2 nur dann voran, wenn Daten empfangen worden sind. In Schritt S2 wird eine Kommunikationsunterbrechungsanweisung zu der Speicherneuschreibvorrichtung gesendet, da während der Ausführung einer Datenneuschreibverarbeitung keine Daten aus der Speicherneuschreibvorrichtung empfangen werden können. In dem nächsten Schritt S3 wird das Schreiben der empfangenen Daten in den Flash-ROM wie in 10 gezeigt gestartet. In dem nächsten Schritt S4 schreitet die Verarbeitung nur bei Abschluß des Datenschreibens voran, wenn das Datenschreiben in das Flash-ROM wie in 10 gezeigt ausgeführt wird.
  • In Schritt S5 wird dann eine Verifizierung der geschriebenen Daten zur Bestätigung des Abschlusses des Datenschreibens in das Flash-ROM wie in 10 gezeigt ausgeführt. Es wird überprüft, ob das Verifikationsergebnis den Abschluß des Schreibens der empfangenen Daten angibt. Diese Verifikation wird zur Überprüfung der Richtigkeit der auf einen Träger (Medium) geschriebenen Daten ausgeführt, indem aus dem Flash-ROM die in das Flash-ROM geschriebenen Daten ausgelesen werden und mit den in dem Puffer gespeicherten empfangenen Daten verglichen werden. Falls das Überprüfungsergebnis in Schritt S5 Nein ergibt, d. h., daß das Verifikationsergebnis nicht den Abschluß des Schreibens der empfangenen Daten angibt, kehrt die Verarbeitung zu Schritt S2 zurück, so daß die vorstehend beschriebene Verarbeitung in ähnlicher Weise wiederholt werden kann.
  • Falls das Überprüfungsergebnis in Schritt S5 Ja ergibt, d. h., daß das Verifikationsergebnis der geschriebenen Daten in Ordnung ist, wird bestimmt, daß das Schreiben in das Flash-ROM abgeschlossen ist, wobei die Verarbeitung zu Schritt S6 voranschreitet. In Schritt S6 wird eine Anweisung zum erneuten Starten der Kommunikation zu der Speicherneuschreibvorrichtung gesendet, damit der Empfang weiterer Daten aus der Speicherneuschreibvorrichtung freigegeben wird. In dem nächsten Schritt S7 wird überprüft, ob das Schreiben aller Schreibdaten abgeschlossen worden ist. Falls das Überprüfungsergebnis in Schritt S7 Nein ist, d. h., daß das Schreiben aller Schreibdaten noch nicht abgeschlossen ist, kehrt die Verarbeitung zu Schritt S1 zurück, so daß die vorstehend beschriebene Verarbeitung in ähnlicher Weise wiederholt werden kann. Falls das Überprüfungsergebnis in Schritt S7 Ja ergibt, d. h., daß das Schreiben aller Daten abgeschlossen ist, wird eine Anforderung zur Berechnung einer Überprüfungssumme (Check Sum) der erneut geschriebenen Daten sofort ausgegeben. Der Abschluß des Schreibens aller Schreibdaten wird auf der Grundlage dieser Anforderung bestimmt, wobei die Routine auf diese Weise beendet wird.
  • Während der vorstehend beschriebenen Flash-ROM-Schreibwartezeitdauer in Schritt S4 befindet sich die Verarbeitung wie in 10 gezeigt in einem Wartezustand. Während dieser Zeitdauer wird aufgrund der Schleifenverarbeitung und dergleichen keine tatsächliche Verarbeitung durchgeführt. Weiterhin ist es unvermeidbar, daß die Kommunikation mit der Speicherneuschreibvorrichtung zeitweilig unterbrochen wird, da während der Ausführung der Datenneuschreibverarbeitung keine Daten aus der Speicherneuschreibvorrichtung empfangen werden können. Folglich ist es unmöglich, die Summe der Empfangsverarbeitungszeitdauer und der Neuschreibverarbeitungszeitdauer zu verkürzen.
  • Daher liegt der Erfindung die Aufgabe zugrunde, den vorstehend beschriebenen Nachteil zu beseitigen. Dabei soll ein Gerät und ein Verfahren bereitgestellt werden, die die Gesamtzeitdauer zur Verarbeitung eines Datenempfangs von außen und einer Verarbeitung zum Neuschreiben empfangener Daten in einen erneut beschreibbaren nichtflüchtigen Speicher verkürzen können.
  • Diese Aufgabe wird erfindungsgemäß durch ein Gerät gemäß Patentanspruch 1 sowie Verfahren gemäß dem Patentanspruch 5 gelöst. Weitere vorteilhafte Ausgestaltungen sind in den Unteransprüchen angegeben.
  • Erfindungsgemäß werden eine Empfangsverarbeitung zum Speichern von von außerhalb empfangenen Daten in einen ersten Speicherbereich und eine Verarbeitung zum Speichern der empfangenen Daten in einem zweiten Speicherbereich als Schreibdaten und Schreiben dieser Daten in einen erneut beschreibbaren nichtflüchtigen Speicher parallel ausgeführt. Somit kann die Gesamtzeitdauer zur Verarbeitung des Empfangs der Daten von außen und der Verarbeitung zum Neuschreiben dieser Daten in den erneut beschreibbaren nichtflüchtigen Speicher verkürzt werden.
  • Erfindungsgemäß wird der erste Speicherbereich durch einen Rotationspuffer bereitgestellt. Daher ist es, selbst falls eine größere Anzahl von Daten in dem ersten Speicherbereich über eine zulässige Gröle hinaus gespeichert werden, nicht notwendig, die verbleibenden Daten zu dessen Anfang in dem ersten Speicherbereich zu schieben.
  • Vorzugsweise werden der erste Speicherbereich und der zweite Speicherbereich getrennt durch einen Empfangsdatenpuffer und einen Schreibdatenpuffer bereitgestellt. Durch abwechselnde Verwendung dieser Puffer bei jedem Neuschreibvorgang können die Verarbeitung zum Empfang von Daten von außerhalb und die Verarbeitung zum Neuschreiben der empfangenen Daten in den erneut beschreibbaren nichtflüchtigen Speicher gleichzeitig ausgeführt werden.
  • Die Erfindung ist nachstehend anhand von Ausführungsbeispielen unter Bezugnahme auf die beiliegende Zeichnung näher beschrieben. Es zeigen:
  • 1 ein Blockschaltbild des Gesamtaufbaus einer an einem Fahrzeug angebrachten ECU (elektronischen Steuerungseinheit), bei der ein Datenneuschreibsteuerungsgerät gemäß einem Ausführungsbeispiel angewendet ist,
  • 2 ein Flußdiagramm einer gesamten Verarbeitung einer CPU in einem Mikrocomputer, der in dem Steuerungsgerät gemäß dem Ausführungsbeispiel verwendet wird,
  • 3 eine erläuternde Darstellung eines Rotationsempfangsdatenpuffers und eines Schreibdatenpuffers in einem RAM des Mikrocomputers, der in dem Steuerungsgerät gemäß dem Ausführungsbeispiel verwendet wird,
  • 4 ein Flußdiagramm einer Verarbeitung zum Neuschreiben in ein Flash-ROM der CPU in dem Mikrocomputer, der in dem Steuerungsgerät gemäß dem Ausführungsbeispiel verwendet wird,
  • 5 Verarbeitungszeitverläufe während der Zeit des Neuschreibens in das Flash-Rom der CPU in dem Mikrocomputer, der in dem Steuerungsgerät gemäß dem Ausführungsbeispiel verwendet wird,
  • 6 ein Zeitverlaufsdiagramm, das den Bezug der Verarbeitungszeitdauern zwischen der Empfangsverarbeitung empfangener Daten und der Neuschreibverarbeitung in dem Steuergerät gemäß dem Ausführungsbeispiel darstellt,
  • 7 eine erläuternde Darstellung einer Abänderung eines Pufferaufbaus des Steuerungsgeräts gemäß dem Ausführungsbeispiel,
  • 8A und 8B Zeitverlaufsdiagramme, die Verhältnisse von Verarbeitungszeitdauern zwischen einer Verarbeitung zum Empfang von Daten und einer Neuschreibverarbeitung bei einem herkömmlichen Datenneuschreibsteuerungsgerät zeigen,
  • 9 ein Flußdiagramm einer Verarbeitung eines Neuschreibens in ein Flash-ROM des herkömmlichen Steuerungsgeräts und
  • 10 ein Zeitverlaufsdiagramm, das Verarbeitungszeitverläufe während des Neuschreibens in das Flash-Rom des herkömmlichen Steuerungsgeräts darstellt.
  • Die Erfindung ist ausführlicher unter Bezug auf ein Ausführungsbeispiel beschrieben, gemäß dem ein Datenneuschreibsteuerungsgerät bei einem an einem Fahrzeug angebrachten Brennkraftmaschinen-Steuerungssystem angewandt wird.
  • Gemäß 1 weist das Steuerungsgerät eine elektronische Steuerungseinheit (ECU) 10 für eine (nicht gezeigte) Brennkraftmaschine auf. Sensorsignale verschiedener Arten von Sensoren 1, die Betriebszustände der Brennkraftmaschine erfassen, werden der ECU 10 zugeführt. Die Sensorsignale aus diesen Sensoren 1 werden durch eine Eingangsschaltung 16 der ECU 10 in Signalverlauf geformt und A/D-gewandelt sowie einem Mikrocomputer 11 zugeführt. Der Mikrocomputer 11 berechnet optimale Steuerungswerte für die Brennkraftmaschine auf der Grundlage der Sensorsignale aus der Eingangsschaltung 16. Die Berechnungsergebnisse angebenden Steuerungssignale werden einer Ausgangsschaltung 17 zugeführt. Betätigungsglieder wie ein Zünder 21, Einspritzeinrichtungen (Brennstoffeinspritzventile) 22 und dergleichen der Brennkraftmaschine werden durch die Steuerungssignale aus der Ausgangsschaltung 17 betrieben. Verschiedene Warnlampen 23 werden eingeschaltet, falls erforderlich. Die ECU 10 weist eine Kommunikationsschaltung 18 zur Datenkommunikation mit einer Speicherneuschreibvorrichtung 30 auf, die über einen (Verbinder) Kupplungsstecker 26 zum Zeitpunkt des Neuschreibens eines Brennkraftmaschinen-Steuerungsprogramms sowie Steuerungsdaten in dem Mikrocomputer 11 anzuschließen ist.
  • Der Mikrocomputer 11 ist als eine Logikarithmetikschaltung aufgebaut, die eine Zentralverarbeitungseinheit (CPU) 12, ein Flash-ROM 13, in dem das Steuerungsprogramm und Daten gespeichert sind, ein RAM 14, in dem verschiedene Daten gespeichert werden, eine Eingangs-Ausgangs-Schaltung (E/A-Schaltung) 15, die Signale aus der Eingangsschaltung 16, der Kommunikationsschaltung 18 usw. empfängt und die Steuerungssignale zu der Ausgangsschaltung 17 ausgibt, eine Busleitung, die diese Schaltungen miteinander verbindet, und dergleichen aufweist. Bei dem Flash-ROM 13 handelt es sich um einen Speicher, bei dem einmal geschriebene Programme und Daten gelöscht werden können und erneut geschrieben werden können, d. h., um einen nichtflüchtigen, erneut beschreibbaren Nur-Lese-Speicher. Alternativ dazu kann ein EEPROM usw. als erneut beschreibbarer nichtflüchtiger Speicher verwendet werden.
  • Weiterhin weist die Speicherneuschreibvorrichtung 30 als extern anschließbare Vorrichtung hauptsächlich eine CPU 31 und eine elektrische Leistungsschaltung 32 auf. Die CPU 31 dient zur Ausführung serieller Übertragungen zu dem Mikrocomputer 11 der ECU 10, wodurch das Steuerungsprogramm und die Daten, die in dem Flash-ROM des Mikrocomputers 11 gespeichert sind, erneut geschrieben werden. Die Leistungsschaltung 32 wird durch die CPU 31 gesteuert und dient zur Zufuhr einer zum Zeitpunkt des Neuschreibens in das Flash-ROM 13 in dem Mikrocomputer 11 der ECU 10 erforderlichen hohen Spannung. Das heißt, daß serielle Übertragungen zwischen der Speicherneuschreibvorrichtung 30 und dem Mikrocomputer 11 der ECU 10 freigegeben werden, wenn die Speicherneuschreibvorrichtung 30 mit der Übertragungsschaltung 18 der ECU 10 verbunden ist.
  • Nachstehend ist die gesamte Verarbeitung der CPU 12 in dem Mikrocomputer 11 unter Bezug auf ein in 2 gezeigtes Flußdiagramm beschrieben. Diese Steuerungsroutine wird wiederholt durch die CPU 12 bei jedem vorbestimmten Zurücksetzen ausgeführt.
  • Gemäß 2 wird in Schritt S101 zunächst überprüft, ob aus der Speicherneuschreibvorrichtung 30 eine Programmneuschreibanforderung ausgegeben wird. Falls die Speicherneuschreibvorrichtung 30 nicht mit der ECU 10 über den Verbinder 26 verbunden ist, was dazu führt, daß keine Programmneuschreibanforderung auftritt, schreitet die Verarbeitung zu Schritt S102 voran, und es wird überprüft, ob ein Anwendungsprogramm bereits in das Flash-ROM geschrieben worden ist. Diese Überprüfung dient zur Verhinderung eines Springens zu einer Anwendungsverarbeitung, wenn das Anwendungsprogramm nicht in das Flash-ROM geschrieben worden ist. Falls das Prüfungsergebnis in Schritt S102 Ja ergibt, d. h., falls das Anwendungsprogramm bereits in das Flash-ROM 13 geschrieben worden ist, schreitet die Verarbeitung zu Schritt S103 voran, um zu dem Anwendungsprogramm zu springen. In Schritt S104 wird die Anwendungsverarbeitung ausgeführt, so daß die Brennkraftmaschinensteuerung wie eine Zündzeitverlaufssteuerung für den Zünder 21, eine Brennkrafteinspritzmengensteuerung für die Einspritzeinrichtungen 21 und dergleichen ausgeführt werden können.
  • Falls das Prüfungsergebnis in Schritt S102 Nein ergibt, d. h., falls das Anwendungsprogramm nicht in das Flash-ROM 13 geschrieben worden ist, kehrt die Verarbeitung zu Schritt S101 zurück. Die Verarbeitung schreitet zu Schritt S105 voran, nachdem bis zum Anschluß der Speicherneuschreibvorrichtung 30 an die ECU 10 über den Verbinder 26 gewartet wurde und eine Programmneuschreibanforderung aus der Speicherneuschreibvorrichtung 30 empfangen worden ist. In Schritt S105 wird ein aus der Speicherneuschreibvorrichtung 30 empfangenes Flash-ROM-Neuschreibprogramm in einen Speicherbereich des RAMs 14 geladen. In Schritt S106 springt die Verarbeitung zu dem in das RAM 14 geladenen Flash-ROM-Neuschreibprogramm. In dem nachfolgenden Schritt S107 wird die nachfolgende Flash-ROM-Neuschreibverarbeitung ausgeführt.
  • Der Aufbau eines Rotationsempfangsdatenpuffers und eines Schreibdatenpuffers, die in dem RAM 14 in dem Mikrocomputer 11 der ECU 10 zum Speichern der aus der Speicherneuschreibvorrichtung 30 empfangenen Daten vorgesehen sind, ist nachstehend unter Bezug auf 3 beschrieben.
  • Gemäß diesem Ausführungsbeispiel ist der Empfangsdatenpuffer als Rotationspuffer ausgebildet. In dem Fall, daß der Empfangsdatenpuffer als normaler Puffer ausgebildet ist, müssen, falls zuviele übermäßig große Daten beim Kopieren aus dem Empfangsdatenpuffer in den Schreibdatenpuffer in dem Empfangsdatenpuffer gespeichert werden, Daten, die nicht in den Schreibdatenpuffer vorab kopiert oder geschrieben worden sind und in dem Empfangsdatenpuffer verbleiben, zu dessen Anfang geschoben werden. Das heißt, daß dieses Schieben der Daten in dem Empfangsdatenpuffer zur Vermeidung eines Datenüberlaufs dient. Gemäß diesem Ausführungsbeispiel wird der Rotationsempfangsdatenpuffer als Empfangsdatenpuffer verwendet, wodurch die vorstehend beschriebene Verschiebungsverarbeitung beseitigt wird. Dabei sei jedoch bemerkt, daß der Empfangsdatenpuffer ein normaler Puffer sein kann.
  • Wie in 3 gezeigt, wird der Lesezeiger in dem Rotationsempfangsdatenpuffer bei Erreichen des Endes zu dem Anfang zurückgeführt. Daher kann ein Puffer bereitgestellt werden, bei dem das Überlaufproblem nicht auftritt. Weiterhin kann die Verarbeitung zum Lesen aus dem Rotationsempfangsdatenpuffer und die Verarbeitung zum Schreiben in den Rotationsempfangsdatenpuffer getrennt ausgeführt werden, vorausgesetzt, daß der Lesezeiger des Rotationsempfangsdatenpuffers und der Schreibzeiger des Rotationsempfangsdatenpuffers getrennt vorgesehen sind.
  • Dabei zeigt der Lesezeiger eine Stelle in dem Rotationsempfangsdatenpuffer an, aus der die Daten ausgelesen werden. Dieser Lesezeiger wird um einen der Größe der ausgelesenen Daten entsprechenden Wert, beispielsweise um den Wert 5 in 3 bei Auslesen der Daten inkrementiert. Weiterhin zeigt der Schreibzeiger eine Stelle in dem Rotationspuffer an, an die die Daten geschrieben werden. Dieser Schreibzeiger wird um einen der Größe der geschriebenen Daten entsprechenden Wert bei Schreiben der Daten inkrementiert.
  • Die Verarbeitung zum erneuten Schreiben (Neuschreiben) des Flash-ROM durch die CPU 12 in dem Mikrocomputer 11 ist nachstehend unter Bezug auf 4 beschrieben.
  • Das heißt, daß in Schritt S201 zunächst geprüft wird, ob empfangene Daten vorhanden sind. Falls das Überprüfungsergebnis in Schritt S201 Ja ist, schreitet die Verarbeitung zu Schritt S202 voran, nachdem auf die ersten zu empfangenen Daten gewartet wurde. In Schritt S202 werden die empfangenen Daten in dem Rotationsempfangsdatenpuffer gespeichert. In dem nächsten Schritt S203 werden die noch nicht verarbeiteten Daten in dem Rotationsempfangsdatenpuffer in den Schreibdatenpuffer kopiert.
  • Dann wird, wie in 4 gezeigt, in Schritt S204 das Datenschreiben in das Flash-ROM 13 auf der Grundlage der Daten in dem Schreibdatenpuffer initiiert. In dem nächsten Schritt S205 werden, wie in 4 gezeigt, die empfangenen Daten in dem Rotationspuffer unter Verwendung der Wartezeitdauer gespeichert. In dem nächsten Schritt S206 wird, wie in 4 gezeigt, eine Verifikation der geschriebenen Daten zur Bestätigung der Vollständigkeit des Schreibens ausgeführt, so daß das Verifikationsergebnis überprüft werden kann. Falls das Prüfungsergebnis in Schritt S206 Nein ist, d. h., falls das Verifikationsergebnis der geschriebenen Daten nicht ausreichend ist, kehrt die Verarbeitung zu Schritt S204 zur Wiederholung der vorstehend beschriebenen Verarbeitung in ähnlicher Weise zurück.
  • Falls das Prüfungsergebnis in Schritt S206 Ja ist, d. h., falls das Verifikationsergebnis der geschriebenen Daten positiv (gut) ist, bestimmt die CPU 12 den Abschluß des Schreibens der Daten in das Flash-ROM 13 und schreitet zu Schritt S207 voran. In Schritt S207 wird überprüft, ob das Neuschreiben aller Schreibdaten abgeschlossen ist. Falls das Prüfungsergebnis in Schritt S207 Nein ist, d. h., falls das Neuschreiben aller Schreibdaten noch nicht abgeschlossen ist, kehrt die Verarbeitung zu Schritt S201 zur Wiederholung der vorstehend beschriebenen Verarbeitung zurück. Falls das Prüfungsergebnis in Schritt S207 Ja ist, d. h., nach Abschluß des Schreibens aller Schreibdaten, wird eine Anforderung zur Berechnung einer Prüfsumme der erneut geschriebenen Daten ausgegeben. Es wird auf der Grundlage der Ausgabe dieser Anforderung bestimmt, daß das Schreiben aller Schreibdaten abgeschlossen ist, wobei auf diese Weise die Routine beendet wird.
  • Wie vorstehend beschrieben, wird gemäß diesem Ausführungsbeispiel wie in 5 gezeigt, die Empfangsverarbeitung der Empfangsdaten während der Schreibwartezeitdauer des Flash-ROM 13 bei der Schreibverarbeitung ausgeführt.
  • Somit werden, wie in dem Zeitverlaufsdiagramm gemäß 6 dargestellt, die Verarbeitung zum Empfang der Daten 1, 2, 3 usw. aus der Speicherneuschreibvorrichtung 30 und die Verarbeitung zum Neuschreiben dieser Daten als Schreibdaten 1, 2, 3 usw. gleichzeitig parallel ausgeführt. Folglich kann die Gesamtverarbeitungszeitdauer, die gleich der Summe der Zeitperioden zur Datenempfangsverarbeitung und zur Datenneuschreibverarbeitung ist, verkürzt werden.
  • Somit weist die ECU 10 den Empfangsdatenpuffer in dem RAM 14 als ersten Speicherbereich zum Empfang der in das Flash-ROM 13 erneut zu schreibenden Daten von außerhalb und zum Speichern der empfangenen Daten darin sowie den Schreibdatenpuffer in dem RAM 14 als zweiten Speicherbereich auf.
  • Der Schreibdatenpuffer ist getrennt in dem RAM 14 zum Speichern der in dem Empfangsdatenpuffer des RAMs 14 gespeicherten Daten als die in das Flash-ROM 13 zu schreibenden Schreibdaten vorgesehen. Die Verarbeitung zum Empfang der Daten für den Empfangsdatenpuffer in dem RAM 14 und die Verarbeitung zum Schreiben der in dem Schreibdatenpuffer in dem RAM 14 gespeicherten Schreibdaten in das Flash-ROM 13 werden parallel ausgeführt. Weiterhin ist der Empfangsdatenpuffer als der erste Speicherbereich der ECU 10 durch den Rotationsempfangsdatenpuffer bereitgestellt. Das heißt, daß die Verarbeitung zum Empfang der Daten für den Rotationspuffer des RAMs 14 parallel durch die Verwendung der Zeitdauer ausgeführt wird, die für die Verarbeitung zum Schreiben der Schreibdaten des Schreibpuffers des RAMs 14 in das Flash-ROM 13 erforderlich ist. Somit kann die Gesamtzeitdauer, die die Verarbeitung zum Empfang der Daten aus der Speicherneuschreibvorrichtung 30 und die Verarbeitung zum Neuschreiben der Schreibdaten in das Flash-ROM 13 einschließt, verkürzt werden.
  • Das vorstehend beschriebene Ausführungsbeispiel kann wie in 7 gezeigt modifiziert werden. Das heißt, daß ein Puffer A und ein Puffer B unabhängig voneinander derart verwendet werden können, daß der eine Puffer und der andere Puffer jeweils derart geschaltet werden, daß sie als Empfangsdatenpuffer und Schreibdatenpuffer fungieren. Da der Puffer A und der Puffer B abwechselnd bei jedem Datenneuschreibvorgang verwendet werden, kann die Verarbeitung zum Empfang der Daten aus der Speicherneuschreibvorrichtung 30 und die Verarbeitung zum Neuschreiben der empfangenen Daten in das Flash-ROM gleichzeitig parallel ausgeführt werden.
  • Wie vorstehend beschrieben wird in einem Datenneuschreibsteuerungsgerät 10 eine Empfangsverarbeitung zum Speichern von Daten, die aus einer Speicherneuschreibvorrichtung 30 empfangen werden, in einen Rotationsempfangsdatenpuffer in einem RAM 14 eines Mikrocomputers 11 parallel unter Verwendung einer Zeitdauer ausgeführt werden, die für eine Datenschreibverarbeitung erforderlich ist, in der die Daten als Schreibdaten in einem Schreibdatenpuffer in dem RAM 14 gespeichert werden und in ein Flash-ROM 13 geschrieben werden. Somit kann die Gesamtzeitdauer der Verarbeitung verkürzt werden, die eine Verarbeitung zum Empfang der Daten aus der Speicherneuschreibvorrichtung 30 und eine Verarbeitung zum Neuschreiben der Schreibdaten in das Flash-ROM 13 einschließt.

Claims (5)

  1. Gerät (10) zur Steuerung eines vorbestimmten Steuerungsobjekts auf der Grundlage von in einem erneut beschreibbaren nichtflüchtigen Speicher (13) gespeicherten Daten, mit: einem ersten Speicherbereich (14, A, B), um in den nichtflüchtigen Speicher (13) zu schreibende Daten von außerhalb (30) zu empfangen und darin zu speichern, und einem zweiten Speicherbereich (14, A, B), der getrennt von dem ersten Speicherbereich (14, A, B) vorgesehen ist, zum Speichern der in dem ersten Speicherbereich (14, A, B) gespeicherten Daten als in den nichtflüchtigen Speicher (13) zu schreibende Daten, wobei eine Verarbeitung zum Empfang der Daten für den ersten Speicherbereich (14, A, B) und eine Verarbeitung zum Schreiben der in dem zweiten Speicherbereich gespeicherten Schreibdaten in den nichtflüchtigen Speicher (13) parallel ausgeführt werden, wobei der erste Speicherbereich (14) durch einen Rotationspuffer bereitgestellt wird, und wobei die in dem ersten Speicherbereich (14, A, B) gespeicherten Daten als die zu schreibenden Daten in den zweiten Speicherbereich (14, A, B) kopiert werden.
  2. Gerät nach Anspruch 1, wobei es sich bei den als die Schreibdaten erneut zu schreibenden Daten um ein Steuerungsprogramm und Steuerungsdaten handelt.
  3. Gerät nach Anspruch 2, wobei das Steuerungsprogramm und die Steuerungsdaten zur Steuerung einer Brennkraftmaschine eingerichtet sind.
  4. Gerät nach einem der Ansprüche 1 bis 3, wobei: die Verarbeitung zum Empfang der Daten durch eine serielle Kommunikation mit einer Neuschreibvorrichtung (30) durchgeführt wird, die extern anschließbar ist; und der erste Speicherbereich (14, A, B) und der zweite Speicherbereich (14, A, B) in einem RAM-Speicher vorgesehen sind.
  5. Verfahren zur Steuerung eines Datenneuschreibens mit: einem Schritt (S201) zum Empfang von erneut zu schreibenden Daten von außerhalb (30), einem Schritt (S202) zum Speichern der empfangenen Daten in einem durch einen Rotationspuffer bereitgestellten ersten Speicherbereich (14, A, B), und einem Schritt (S204) zum Neuschreiben der gespeicherten Daten in einen nichtflüchtigen Speicher (13), wobei der Empfangsschritt (S201) und der Neuschreibschritt (S204) gleichzeitig ausgeführt werden, während die gespeicherten Daten in dem ersten Speicherbereich (14, A, B) in einen zweiten Speicherbereich (14, A, B) kopiert werden, der getrennt von dem ersten Speicherbereich (14, A, B) vorgesehen ist, oder während andere Daten von außerhalb (30) empfangen werden und die anderen empfangenen Daten in einem zweiten Speicherbereich (14, A, B) gespeichert werden, der getrennt von dem ersten Speicherbereich (14, A, B) vorgesehen ist.
DE19929795.9A 1998-07-03 1999-06-29 Vorrichtung und Verfahren zur Steuerung eines erneuten Schreibens von Daten in einen nichtflüchtigen Speicher Expired - Lifetime DE19929795B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP18921698A JP3893755B2 (ja) 1998-07-03 1998-07-03 電子制御装置
JPP10-189216 1998-07-03

Publications (2)

Publication Number Publication Date
DE19929795A1 DE19929795A1 (de) 2000-01-05
DE19929795B4 true DE19929795B4 (de) 2015-08-20

Family

ID=16237513

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19929795.9A Expired - Lifetime DE19929795B4 (de) 1998-07-03 1999-06-29 Vorrichtung und Verfahren zur Steuerung eines erneuten Schreibens von Daten in einen nichtflüchtigen Speicher

Country Status (4)

Country Link
US (1) US6405279B1 (de)
JP (1) JP3893755B2 (de)
DE (1) DE19929795B4 (de)
SE (1) SE521596C2 (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3785299B2 (ja) * 2000-03-16 2006-06-14 本田技研工業株式会社 車両制御装置のためのメモリ書き換えシステム
JP3828335B2 (ja) * 2000-04-13 2006-10-04 本田技研工業株式会社 車両制御装置のための書き換えシステム
JP2003036201A (ja) * 2001-07-24 2003-02-07 Sony Corp メモリアクセス管理装置
TW539946B (en) * 2001-08-07 2003-07-01 Solid State System Company Ltd Window-based flash memory storage system, and the management method and the access method thereof
JP2003122622A (ja) 2001-10-09 2003-04-25 Honda Motor Co Ltd データの受信および書き込みを制御する車両制御装置
US20050036387A1 (en) * 2002-04-24 2005-02-17 Seal Brian K. Method of using flash memory for storing metering data
US7076598B2 (en) * 2003-09-09 2006-07-11 Solid State System Co., Ltd. Pipeline accessing method to a large block memory
US7480760B2 (en) * 2003-12-17 2009-01-20 Wegener Communications, Inc. Rotational use of memory to minimize write cycles
EP1712985A1 (de) * 2005-04-15 2006-10-18 Deutsche Thomson-Brandt Gmbh Verfahren und System zum Speichern von logischen Datenblöcken in Löschblöcken in mehreren nichtflüchtigen Speichereinheiten, die an mindestens einem gemeinsamen Datenbus angeschlossen sind
JP2007011734A (ja) * 2005-06-30 2007-01-18 Denso Corp 車載制御装置
DE102006038428A1 (de) * 2006-08-17 2008-02-21 Bayerische Motoren Werke Ag Verfahren zur Programmierung eines Steuergerätes eines Kraftfahrzeugs
JP5547701B2 (ja) * 2011-09-21 2014-07-16 日立オートモティブシステムズ株式会社 自動車用電子制御装置
JP5980083B2 (ja) * 2012-10-10 2016-08-31 富士通テン株式会社 車両情報記憶処理装置および車両情報記憶処理方法
JP5835271B2 (ja) 2013-05-29 2015-12-24 株式会社デンソー 電子制御装置およびメモリ書換方法
US9928285B1 (en) * 2013-06-25 2018-03-27 EMC IP Holding Company LLC Optimized cloning for backup to disk
JP6394291B2 (ja) * 2014-11-05 2018-09-26 株式会社デンソー 電子制御装置およびメモリ書換方法
JP6432464B2 (ja) 2015-07-30 2018-12-05 株式会社デンソー 車載電子制御装置
JP6447469B2 (ja) * 2015-11-23 2019-01-09 株式会社デンソー 書換システム
JP7111074B2 (ja) * 2018-08-10 2022-08-02 株式会社デンソー 車両用マスタ装置、セキュリティアクセス鍵の管理方法、セキュリティアクセス鍵の管理プログラム及び車両用電子制御システム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189584A (ja) * 1992-01-09 1993-07-30 Mitsubishi Electric Corp マイクロコンピュータ
JPH08221312A (ja) * 1995-02-14 1996-08-30 Hitachi Ltd メモリカード装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2642214B1 (fr) * 1988-12-30 1992-11-20 Cit Alcatel Systeme de detection d'ecrasement de donnees dans une memoire tampon, notamment pour un commutateur de donnees
US5386553A (en) * 1990-10-10 1995-01-31 Fuji Xerox Co., Ltd. Disk file updating control device and method using updating data stored in a first-in-first-out queue
CA2106271C (en) * 1993-01-11 2004-11-30 Joseph H. Steinmetz Single and multistage stage fifo designs for data transfer synchronizers
US5671445A (en) * 1993-07-19 1997-09-23 Oki America, Inc. Interface for transmitting graphics data to a printer from a host computer system in rasterized form

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189584A (ja) * 1992-01-09 1993-07-30 Mitsubishi Electric Corp マイクロコンピュータ
JPH08221312A (ja) * 1995-02-14 1996-08-30 Hitachi Ltd メモリカード装置

Also Published As

Publication number Publication date
DE19929795A1 (de) 2000-01-05
SE9902540D0 (sv) 1999-07-02
US6405279B1 (en) 2002-06-11
JP2000020389A (ja) 2000-01-21
SE521596C2 (sv) 2003-11-18
SE9902540L (sv) 2000-01-04
JP3893755B2 (ja) 2007-03-14

Similar Documents

Publication Publication Date Title
DE19929795B4 (de) Vorrichtung und Verfahren zur Steuerung eines erneuten Schreibens von Daten in einen nichtflüchtigen Speicher
EP2318920B1 (de) Steuergerät für ein fahrzeug und verfahren für eine datenaktualisierung für ein steuergerät für ein fahrzeug
DE60119412T2 (de) Speicherüberschreibungssystem für eine Fahrzeugsteuereinrichtung
DE69926937T2 (de) Elektronische Steuerungsvorrichtung und Verfahren mit Rückschreibprogrammierfunktion
DE10159901B4 (de) Mikrocomputer mit eingebautem programmierbarem, nichtflüchtigem Speicher
EP0067364B1 (de) Verfahren und Anordnung zum nichtflüchtigen Speichern des Zählerstandes einer elektronischen Zählschaltung
DE10308545A1 (de) Verfahren und Vorrichtung zum Aktualisieren eines verteilten Programms
DE19755977B4 (de) Aktualisierungsgerät und -verfahren für eine Kraftfahrzeugsteuereinrichtung
DE2721319A1 (de) Einrichtung zur selbsttaetigen aenderung der prozessor/speicher-konfiguration
DE19929796B4 (de) Vorrichtung und Verfahren zum erneuten Schreiben von Daten aus einem flüchtigen Speicher in einen nichtflüchtigen Speicher
DE19839680B4 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
DE3106727A1 (de) "verfahren und vorrichtung zum automatischen pruefen elektrischer und elektronischer schaltkreise"
DE19935154A1 (de) Elektronische Steuerungseinheit und Verfahren zum Speichern eines Neuschreibungszählwerts eines nichtflüchtigen Speichers
DE19934191B4 (de) Elektronische Steuerungseinheit und Steuerungsverfahren zum Speichern eines Neuschreibungszählwerts eines nichtflüchtigen Speichers
DE19846070A1 (de) Steuerungsvorrichtung für Kraftfahrzeuge
DE112020004019T5 (de) Daisy-chain-modus-eingangssequenz
DE3602112A1 (de) System zur speicherung von informationen
DE10322748B4 (de) Elektronische Steuereinrichtung
DE19709730C2 (de) Mikrocomputer
DE3200626C2 (de) Verfahren zur Überprüfung, ob ein außer dem Hauptspeicher vorgesehener weiterer Speicher in ein Mikrocomputersystem eingefügt ist
DE19755958B4 (de) Verfahren zum Aktualisieren eines Kraftfahrzeugsteuerprogramms und Aktualisierungseinrichtung für eine Kraftfahrzeugsteuerung
DE4302553A1 (en) High security binary counting method for chip card - offsetting final state of binary number w.r.t. sequence such that contents of counter never represents number smaller than previous value
DE19900652B4 (de) Kraftfahrzeug-Steuereinrichtung
DE60030236T2 (de) Elektronischer Steuerapparat, der eine Modusüberprüfungsfunktion hat
EP2212788A1 (de) Verfahren zum betrieb eines elektronischen gerätes

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final
R071 Expiry of right