DE112020001909T5 - Arithmetikverarbeitungsvorrichtung, Fahrzeugsteuervorrichtung und Aktualisierungsverfahren - Google Patents

Arithmetikverarbeitungsvorrichtung, Fahrzeugsteuervorrichtung und Aktualisierungsverfahren Download PDF

Info

Publication number
DE112020001909T5
DE112020001909T5 DE112020001909.8T DE112020001909T DE112020001909T5 DE 112020001909 T5 DE112020001909 T5 DE 112020001909T5 DE 112020001909 T DE112020001909 T DE 112020001909T DE 112020001909 T5 DE112020001909 T5 DE 112020001909T5
Authority
DE
Germany
Prior art keywords
update
programs
data
common data
common
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.)
Pending
Application number
DE112020001909.8T
Other languages
English (en)
Inventor
Yusuke Kogure
Shun Kinugasa
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
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 Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Publication of DE112020001909T5 publication Critical patent/DE112020001909T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • B60W50/045Monitoring control system parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0019Control system elements or transfer functions
    • B60W2050/0028Mathematical models, e.g. for simulation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • B60W50/045Monitoring control system parameters
    • B60W2050/046Monitoring control system parameters involving external transmission of data to or from the vehicle, e.g. via telemetry, satellite, Global Positioning System [GPS]
    • B60W2050/048Monitoring control system parameters involving external transmission of data to or from the vehicle, e.g. via telemetry, satellite, Global Positioning System [GPS] displaying data transmitted between vehicles, e.g. for platooning, control of inter-vehicle distance

Abstract

Wenn ein Steuerprogramm durch eine Vorrichtung, die eines von zwei Steuerprogrammen wählen und ausführen kann, aktualisiert wird, wird eine Datenmenge, die übertragen werden soll, verringert, um die Zeit zu verkürzen, die zum Aktualisieren eines Programms erforderlich. Es sind eine erste umschreibbare Speichereinheit, die zwei Programme speichert, eine CPU, die eines der zwei Programme wählt und ausführt, und eine zweite umschreibbare Speichereinheit, die gemeinsame Daten, die die zwei Programme begleiten, speichert, enthalten.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich auf eine Arithmetikverarbeitungsvorrichtung und eine Fahrzeugsteuervorrichtung.
  • Technischer Hintergrund
  • Beim herkömmlichen Umprogrammieren werden eine externe Vorrichtung und eine fahrzeuginterne Steuereinheit (ECU) verbunden und werden ein neues Steuerprogramm und Daten, die das Steuerprogramm begleiten, in die ECU geschrieben, während sie übertragen werden.
  • Die Begleitdaten sind Informationen, die eine kleine Datengröße (etwa ein Byte) besitzen, auf die durch das Steuerprogramm Bezug genommen wird und die sich auf die Ausführung des Steuerprogramms auswirken, und können eine Funktion, die durch das Steuerprogramm realisiert wird, EIN/AUSschalten.
  • Eine Vorrichtung, die in PTL 1 beschrieben ist, besitzt zwei Programmbereiche eines alten Programms und eines neuen Programms in der Vorrichtung und schafft eine Technik zum Wählen und Ausführen eines der zwei Programme und Übertragen und Schreiben eines neuen Programms und von Begleitdaten in den weiteren Programmbereich.
  • Eine Vorrichtung, die in PTL 2 beschrieben ist, ist mit einer Technik zum Speichern von Steuerdaten in einer duplizierten Form in der Vorrichtung und Durchführen einer Wiederherstellung unter Verwendung normaler Steuerdaten, die denselben Inhalt besitzen, wenn ein Fehler auftritt, versehen.
  • Ferner wurde ein elektrisch löschbarer programmierbarer Festwertspeicher (EEPROM) weithin als ein nichtflüchtiger Speicher in einer fahrzeuginternen Steuervorrichtung verwendet. Allerdings liegt im EEPROM, während gespeicherte Informationen in Einheiten von Bytes gelöscht werden können, eine Speicherkapazität etwa im Bereich von einigen zehn Byte bis einigen Kilobyte. Entsprechend ist der EEPROM nicht zum Speichern einer großen Menge von Steuerdaten geeignet. Deshalb wurde in den letzten Jahren begonnen, einen Flash-Speicher, der eine größere Kapazität besitzt, einzusetzen.
  • Der Flash-Speicher ist ein nichtflüchtiger Speicher, der ebenso wie der EEPROM elektrisch löschbar und umschreibbar ist, und besitzt eine Speicherkapazität, die um einige Stellen (im Bereich von einigen zehn Kilobyte bis einigen hundert Megabyte: z. B. einige Mbyte) größer als die des EEPROM ist.
  • Obwohl der Flash-Speicher eine große Kapazität besitzt, kann auf Kosten des Erreichens einer hohen Integration eine Löschverarbeitung, die im EEPROM in Byte-Einheiten durchgeführt werden kann, lediglich in Blockeinheiten (in Sektoreinheiten) von einigen zehn Kilobyte durchgeführt werden, was zu dem Nachteil führt, dass Zeit benötigt wird, um ein einmaliges Löschen durchzuführen.
  • Allerdings wurde, da auch ein Bedarf zum Löschen oder Umschreiben von Informationen in Byte-Einheiten vorliegt, eine Technik, die den EEPROM in einem Flash-Speicher simulieren kann, geschaffen.
  • Entgegenhaltungsliste
  • Patentliteratur
    • PTL 1: JP 2003-114807 A
    • PTL 2: JP 2008-77221 A
  • Zusammenfassung der Erfindung
  • Technisches Problem
  • Allerdings überträgt dann, wenn ein Steuerprogramm unter Verwendung eines externen Kommunikationsmittels umgeschrieben wird, die herkömmliche Vorrichtung jedes Mal, wenn das Steuerprogramm aktualisiert wird, zwei Steuerprogramme, die in zwei Programmbereichen ausgeführt werden können, und Begleitdaten (Konfigurationsdaten). Dann bestand, da die herkömmliche Vorrichtung ein Programm, das aktualisiert werden soll, wählt und dann eine Aktualisierung durchführt, das Problem, dass die Aktualisierung eine lange Zeit benötigt, da es nötig ist, auch ein Steuerprogramm, das nicht verwendet wird, zu übertragen.
  • Das heißt, die herkömmliche Technik besitzt eine Konfiguration, in der zwei Steuerprogramme in jeder von zwei Banken A und B gespeichert sind, das Steuerprogramm und die Begleitdaten gepaart sind und Daten, die empfangen werden sollen, für zwei Banken erforderlich sind. Dies ist darauf zurückzuführen, dass das Steuerprogramm und die Begleitdaten fest zugeordnete Daten für jede der Bank A und der Bank B sind und die Konfiguration derart ist, dass Daten für zwei Banken empfangen werden und eine der Banken umgeschrieben wird. Deshalb ist ein Empfang für zwei Banken erforderlich.
  • Eine Aufgabe der vorliegenden Erfindung ist, die Zeit, die zum Aktualisieren eines Programms erforderlich ist, zu verringern, indem eine Datenmenge, die übertragen werden soll, wenn ein Steuerprogramm in einer Vorrichtung, die eines von zwei Steuerprogrammen wählen und ausführen kann, aktualisiert wird, verringert wird.
  • Lösung des Problems
  • Die vorliegende Erfindung enthält eine erste umschreibbare Speichereinheit, die zwei Programme speichert, eine CPU, die eines der zwei Programme wählt und ausführt, und eine zweite umschreibbare Speichereinheit, die gemeinsame Daten, die die zwei Programme begleiten, speichert.
  • Vorteilhafte Wirkungen der Erfindung
  • Gemäß der vorliegenden Erfindung ist es, wenn ein Programm aktualisiert wird, möglich, eine Aktualisierungszeit durch Verringern einer Übertragungsmenge von Aktualisierungsdaten ohne Übertragen von zwei Programmen zu verkürzen.
  • Details mindestens einer Implementierung des hier offenbarten Gegenstands sind in den begleitenden Zeichnungen und der Beschreibung unten dargelegt. Weitere Merkmale, Aspekte und Wirkungen des offenbarten Gegenstands werden durch die Offenbarung, die Zeichnungen und die Ansprüche unten verdeutlicht.
  • Figurenliste
    • [1] 1 ist ein Funktionsblockdiagramm, das ein herkömmliches Beispiel veranschaulicht und eine Gesamtkonfiguration eines Programmaktualisierungssystems, das eine Arithmetikverarbeitungsvorrichtung enthält, veranschaulicht.
    • [2] 2 ist ein Diagramm, das das herkömmliche Beispiel veranschaulicht und ein Beispiel eines Flash-Speichers veranschaulicht.
    • [3] 3 ist ein Ablaufplan, der das herkömmliche Beispiel veranschaulicht und ein Beispiel einer Programmaktualisierungsverarbeitung veranschaulicht.
    • [4] 4 ist ein Diagramm, das das herkömmliche Beispiel veranschaulicht und ein Beispiel eines Datenstroms eines empfangenen Aktualisierungsprogramms veranschaulicht.
    • [5] 5 ist ein Diagramm, das eine erste Ausführungsform der vorliegenden Erfindung veranschaulicht und ein Beispiel eines Verfahrens zum Verallgemeinern von Daten, die ein Programm begleiten, veranschaulicht.
    • [6] 6 ist ein Funktionsblockdiagramm, das die erste Ausführungsform der vorliegenden Erfindung veranschaulicht und eine Gesamtkonfiguration eines Programmaktualisierungssystems, das eine Arithmetikverarbeitungsvorrichtung enthält, veranschaulicht.
    • [7] 7 ist ein Diagramm, das die erste Ausführungsform der vorliegenden Erfindung veranschaulicht und ein Beispiel eines Datenstroms eines Aktualisierungsprogramms veranschaulicht.
    • [8A] 8A ist ein Diagramm, das eine zweite Ausführungsform der vorliegenden Erfindung veranschaulicht und ein Aktualisierungsziel, falls gemeinsame Begleitdaten in einem Flash-Speicher gespeichert sind, veranschaulicht.
    • [8B] 8B ist ein Diagramm, das die zweite Ausführungsform der vorliegenden Erfindung veranschaulicht und einen Löschbereich, falls die gemeinsamen Begleitdaten im Flash-Speicher gespeichert sind, veranschaulicht.
    • [8C] 8C ist ein Diagramm, das die zweite Ausführungsform der vorliegenden Erfindung veranschaulicht und einen Zustand nach einer Aktualisierung, falls die gemeinsamen Begleitdaten im Flash-Speicher gespeichert sind, veranschaulicht.
    • [9A] 9A ist ein Diagramm, das die zweite Ausführungsform der vorliegenden Erfindung veranschaulicht und ein Aktualisierungsziel, falls gemeinsame Begleitdaten in einem EEPROM gespeichert sind, veranschaulicht.
    • [9B] 9B ist ein Diagramm, das die zweite Ausführungsform der vorliegenden Erfindung veranschaulicht und einen Löschbereich, falls die gemeinsamen Begleitdaten im EEPROM gespeichert sind, veranschaulicht.
    • [9C] 9C ist ein Diagramm, das die zweite Ausführungsform der vorliegenden Erfindung veranschaulicht und einen Zustand nach einer Aktualisierung, falls die gemeinsamen Begleitdaten im EEPROM gespeichert sind, veranschaulicht.
    • [10] 10 ist ein Funktionsblockdiagramm, das die zweite Ausführungsform der vorliegenden Erfindung veranschaulicht und eine Gesamtkonfiguration des Programmaktualisierungssystems, das die Arithmetikverarbeitungsvorrichtung enthält, veranschaulicht.
    • [11] 11 ist ein Funktionsblockdiagramm, das eine dritte Ausführungsform der vorliegenden Erfindung veranschaulicht und eine Gesamtkonfiguration des Programmaktualisierungssystems, das eine Rücksetzfunktion enthält, veranschaulicht.
    • [12] 12 ist ein Funktionsblockdiagramm, das die dritte Ausführungsform der vorliegenden Erfindung veranschaulicht und eine Gesamtkonfiguration des Programmaktualisierungssystems, das die Rücksetzfunktion enthält, veranschaulicht.
    • [13] 13 ist ein Ablaufplan, der die dritte Ausführungsform der vorliegenden Erfindung veranschaulicht und ein Beispiel einer Aktualisierungsverarbeitung veranschaulicht.
    • [14] 14 ist ein Ablaufplan, der die dritte Ausführungsform der vorliegenden Erfindung veranschaulicht und ein Beispiel einer Rücksetzverarbeitung veranschaulicht.
  • Beschreibung der Ausführungsformen
  • Erste Ausführungsform
  • Im Folgenden wird eine Ausführungsform eines Programmaktualisierungssystems, das eine Fahrzeugsteuervorrichtung (eine Arithmetikverarbeitungsvorrichtung) enthält, unter Bezugnahme auf die Zeichnungen beschrieben.
  • Zunächst ist 1 ein Funktionsblockdiagramm, das ein herkömmliches Beispiel veranschaulicht und eine Gesamtkonfiguration eines Programmaktualisierungssystems, das eine Arithmetikverarbeitungsvorrichtung 1 enthält, veranschaulicht. Die Arithmetikverarbeitungsvorrichtung 1 enthält eine Steuereinheit 2, eine Kommunikationssteuereinheit 3, eine Speichereinheit 4, eine Zeitgebermanagementeinheit 5, eine Signaleingabeeinheit 6 und eine Stromversorgungssteuereinheit 7.
  • Die Zeitgebermanagementeinheit 5 misst verschiedene Typen einer Zeit. Die Signaleingabeeinheit 6 empfängt ein Signal von verschiedenen Sensoren. Die Steuereinheit 2 ist hauptsächlich durch eine CPU 2a konfiguriert und steuert die gesamte Verarbeitung der Arithmetikverarbeitungsvorrichtung 1 durch Ausführen eines Steuerprogramms, das in der Speichereinheit 4 gespeichert ist.
  • Die Speichereinheit 4 enthält verschiedene Speichermedien wie z. B. einen Schreib-/Lese-Speicher (RAM) 14, einen elektrisch löschbaren programmierbaren Festwertspeicher (EEPROM) 15 und einen Flash-Speicher 16. Unter diesen speichert der Flash-Speicher 16 im Voraus ein Steuerprogramm, das durch die Steuereinheit 2 ausgeführt wird. Der RAM (der Hauptspeicher) 14 speichert vorübergehend ein Steuerprogramm, das ausgeführt werden soll, und verschiedene Typen von Informationen zum Lesen und Schreiben.
  • 2 ist ein Diagramm, das das herkömmliche Beispiel veranschaulicht und ein Beispiel des Flash-Speichers 16 veranschaulicht. Wie in 2 veranschaulicht ist, besitzt der Flash-Speicher 16 Speicherbereiche Pa und Pb und speichert verschiedene alte und neue Steuerprogramme, die durch die Steuereinheit 2 ausgeführt werden können. Es ist festzuhalten, dass die zweiten Speicherbereiche Pa und Pb durch zwei verschiedene Bänke konfiguriert sein können.
  • Die Steuereinheit 2 kann einen der Speicherbereiche Pa und Pb wählen und ausführen und normalerweise wird ein Steuerprogramm ausgeführt, dessen Aktualisierungszeitpunkt (Aktualisierungsdatum und Aktualisierungszeit) später ist. Das Aktualisierungsdatum und die Aktualisierungszeit des Steuerprogramms werden durch eine Programmaktualisierungsvorrichtung 9 oder die Steuereinheit 2 eingestellt.
  • Ähnlich besitzt, wie in 2 veranschaulicht ist, der Flash-Speicher 16 Daten (DPa, DPb), die das Steuerprogramm begleiten, und speichert Daten, die ein Steuerprogramm, das aus den Steuerprogrammen, die in den Speicherbereichen Pa und Pb gespeichert sind, gelesen oder geschrieben wurde, begleiten.
  • Es ist festzuhalten, dass, obwohl jeder elektrische Block in 1 funktionell veranschaulicht ist, in einigen kürzlich integrierten Schaltungsvorrichtungen die Speichereinheit 4 in der CPU 2a montiert ist. Entsprechend kann das oben Beschriebene auf ein integriertes Stück oder getrennte Stücke von Hardware angewendet werden.
  • Wie in 1 veranschaulicht ist, ist die Arithmetikverarbeitungsvorrichtung 1 mittels einer Basisstation 11 und eines Kommunikationsnetzes (das ein drahtloses oder ein drahtgebundenes Kommunikationsnetz enthält) 12 über eine Drahtloskommunikationsvorrichtung 10 mit einem Datenzentrum 13 verbunden.
  • Ferner sind verschiedene elektronische Steuereinheiten (ECUs) wie z. B. die Programmaktualisierungsvorrichtung 9 und die Drahtloskommunikationsvorrichtung 10 mit einem Fahrzeugkommunikationsnetz 17 verbunden. Die Steuereinheit 2 führt ein Programm, das im Flash-Speicher 16 beschrieben ist, aus, um mit verschiedenen ECUs des Fahrzeugkommunikationsnetzes 17 über die Kommunikationssteuereinheit 3 zu kommunizieren.
  • Die Stromversorgungssteuereinheit 7 ist mit einer Fahrzeugbatterie 8 verbunden, wandelt eine Batteriespannung um und liefert Strom zu jedem Block in der Arithmetikverarbeitungsvorrichtung 1.
  • 3 ist ein Ablaufplan, der das herkömmliche Beispiel veranschaulicht und eine Gesamtverarbeitung während einer Programmaktualisierung veranschaulicht.
  • 4 ist ein Diagramm, das das herkömmliche Beispiel veranschaulicht und ein Beispiel eines Datenstroms eines empfangenen Aktualisierungsprogramms veranschaulicht.
  • Wenn das Steuerprogramm der Arithmetikverarbeitungsvorrichtung 1 aktualisiert wird, wie in 3 und 4 veranschaulicht ist, werden Aktualisierungsdaten 20, die zwei Steuerprogramme, die in jedem der Speicherbereiche Pa und Pb ausgeführt werden können, und Begleitdaten enthalten, von der Programmaktualisierungsvorrichtung 9 oder der Drahtloskommunikationsvorrichtung 10 mittels der Kommunikationssteuereinheit 3 (102) empfangen.
  • Es ist festzuhalten, dass die Programmaktualisierungsvorrichtung 9 ein Aktualisierungsprogramm von der Drahtloskommunikationsvorrichtung 10 empfängt und das Aktualisierungsprogramm zu einem vorgegebenen Zeitpunkt zu jeder der Arithmetikverarbeitungsvorrichtungen 1 sendet. Die Arithmetikverarbeitungsvorrichtung 1, die an einem Fahrzeug montiert ist, bildet mehrere ECUs wie z. B. eine Kraftmaschinen-ECU, eine Motor-ECU, eine Brems-ECU, eine Lenk-ECU und eine Fahrunterstützungs-ECU. Die Programmaktualisierungsvorrichtung 9 empfängt ein Aktualisierungsprogramm von verschiedenen ECUs, die vom Datenzentrum 13 empfangen wurden, und wählt und verteilt ein Aktualisierungsprogramm für jede ECU.
  • Die Steuereinheit 2 der Arithmetikverarbeitungsvorrichtung 1 bestimmt einen Bereich, der aktualisiert werden soll (103), und wählt als ein Aktualisierungsziel ein Steuerprogramm, das in einem Speicherbereich ausgeführt werden kann und das gegenwärtig nicht ausgeführt wird, zwischen den Speicherbereichen Pa und Pb. Dann wird ein Verfahren betrachtet, wobei die Steuereinheit 2 Daten in dem Speicherbereich Pa (Pb), der aktualisiert werden soll, löscht und schreibt (104, 105) und auch Daten löscht und schreibt, die das Steuerprogramm, das aktualisiert werden soll, begleiten (Speicherbereiche DPa und DPb).
  • Allerdings ist es im Verfahren des Übertragens von zwei Steuerprogrammen, die in jedem der Speicherbereiche Pa und Pb ausgeführt werden können, und Begleitdaten, jedes Mal, wenn das Steuerprogramm aktualisiert wird, Wählens eines Steuerprogramms, das aktualisiert werden soll, und dann Aktualisierens des Steuerprogramms nötig, ein Steuerprogramm zu übertragen, das nicht verwendet wird, und somit wird Zeit benötigt, um das Steuerprogramm zu aktualisieren.
  • Im Hinblick auf das oben Beschriebene löst die vorliegende erste Ausführungsform das Problem durch Einbeziehen eines Behelfs, der unten beschrieben ist, während des Erstellens eines Programms.
  • 5 ist ein Diagramm, das ein Beispiel eines Verfahrens zum Verallgemeinern von Daten, die ein Programm begleiten, der vorliegenden Erfindung veranschaulicht. 6 ist ein Funktionsblockdiagramm, das eine Gesamtkonfiguration eines Programmaktualisierungssystems, das die Arithmetikverarbeitungsvorrichtung 1 der ersten Ausführungsform enthält, veranschaulicht. 7 ist ein Diagramm, das ein Beispiel eines Datenstroms eines Aktualisierungsprogramms der ersten Ausführungsform veranschaulicht.
  • 6 veranschaulicht die Arithmetikverarbeitungsvorrichtung 1 der ersten Ausführungsform und ist von 1 und 2 des herkömmlichen Beispiels dahingehend verschieden, dass ein gemeinsamer Speicherbereich ComD zum Speichern gemeinsamer Begleitdaten (gemeinsame Begleitdaten für Pa und Pb im Diagramm) 32 im Flash-Speicher 16 eingerichtet wird, und weitere Konfigurationen sind ähnlich denen des herkömmlichen Beispiels.
  • In dem herkömmlichen Beispiel, das in 2 veranschaulicht ist, erfordert, da Daten, die ein Steuerprogramm begleiten, Informationen enthalten, die vom Steuerprogramm abhängig sind, das Steuerprogramm fest zugeordnete Begleitdaten.
  • Im Hinblick auf das oben Beschriebene sind, wie in 5 veranschaulicht ist, unter der Prämisse, dass ein Steuerprogramm und Begleitdaten aktualisiert werden, Informationen (Begleitdaten), die Steuerprogrammen gemeinsam sind, als die gemeinsamen Begleitdaten 32 definiert und sind Begleitdaten, die nicht gemeinsam sind, im Steuerprogramm enthalten, derart, dass eine Abhängigkeit zwischen den Begleitdaten und dem Steuerprogramm beseitigt wird.
  • In der oben beschriebenen Weise wird, wie in 7 veranschaulicht ist, der gemeinsame Speicherbereich ComD zum Speichern der gemeinsamen Begleitdaten 32 im Flash-Speicher 16 eingerichtet und nicht gemeinsame Begleitdaten sind in einem Steuerprogramm (Speicherbereiche Pa und Pb) enthalten, derart, dass es möglich ist, ein Steuerprogramm zu erstellen, das in den Speicherbereichen Pa und Pb ausgeführt werden kann, ohne von den Speicherbereichen Pa und Pb abzuhängen, und, wie durch die Aktualisierungsdaten 21 angegeben wird, ist es nicht nötig, zusätzliche Informationen, die nicht verwendet werden, zu übertragen, derart, dass es möglich ist, die Zeit, die zur Aktualisierung erforderlich ist, zu verkürzen.
  • Es ist festzuhalten, dass in der ersten Ausführungsform das Beispiel beschrieben ist, in dem die Programmaktualisierungsvorrichtung 9 ein Aktualisierungsprogramm erfasst und das Aktualisierungsprogramm zu einem vorgegebenen Zeitpunkt zur Arithmetikverarbeitungsvorrichtung 1 überträgt. Allerdings ist die vorliegende Erfindung nicht auf diese Konfiguration beschränkt. Die Arithmetikverarbeitungsvorrichtung 1 kann ein Aktualisierungsprogramm von der Drahtloskommunikationsvorrichtung 10 empfangen.
  • Zweite Ausführungsform
  • Die vorliegende Ausführungsform verringert die Aktualisierungszeit in der ersten Ausführungsform.
  • 8A bis 8C und 9A bis 9C veranschaulichen schematisch eine Umschreibeverarbeitung in einem Fall, dass der gemeinsame Speicherbereich ComD, in dem die gemeinsamen Begleitdaten 32 gespeichert sind, sich im Flash-Speicher 16 befindet, und einem Fall, dass der gemeinsame Speicherbereich ComD sich in einem EEPROM (der einen simulierten EEPROM enthält) befindet. 8A ist ein Diagramm, das ein Aktualisierungsziel veranschaulicht, falls der gemeinsame Speicherbereich ComD im Flash-Speicher 16 eingerichtet ist, 8B ist ein Diagramm, das einen Löschbereich veranschaulicht, und 8C ist ein Diagramm, das einen Zustand nach einer Aktualisierung veranschaulicht. 9A ist ein Diagramm, das ein Aktualisierungsziel veranschaulicht, falls der gemeinsame Speicherbereich ComD im EEPROM 15 eingerichtet ist, 9B ist ein Diagramm, das einen Löschbereich veranschaulicht, und 9C ist ein Diagramm, das einen Zustand nach einer Aktualisierung veranschaulicht.
  • Wie in 6 veranschaulicht ist, liegt der Vorteil vor, dass es möglich ist, durch Verallgemeinern von Daten, die ein Steuerprogramm begleiten, (den gemeinsamen Begleitdaten 32) ein Programm zu erstellen, das nicht von den Speicherbereichen Pa und Pb abhängt. Allerdings besteht das Problem, dass Zeit benötigt wird, um die gemeinsamen Begleitdaten 32 im gemeinsamen Speicherbereich ComD im Flash-Speicher 16 zu aktualisieren.
  • Als Beispiel der gemeinsamen Begleitdaten 32 liegen Daten vor, die eine relativ kleine Datengröße (kleiner als ein Byte) besitzen, wie z. B. EIN/AUS-Informationen einer Funktion, die durch ein Steuerprogramm realisiert wird. Allerdings ist es, wie in 8A bis 8C veranschaulicht ist, dann, wenn die gemeinsamen Begleitdaten 32 im Flash-Speicher 16 aktualisiert werden, nötig, nicht nur Daten, die aktualisiert werden sollen, sondern auch eine große Menge von Peripheriedaten der Daten, die aktualisiert werden sollen, zu löschen und dann die Daten, die aktualisiert werden sollen, zu schreiben und die gelöschten Daten wiederherzustellen.
  • Dies ist darauf zurückzuführen, dass ein Löschen lediglich in Blockeinheiten (in Sektoreinheiten) durchgeführt werden kann, da Einheiten des Löschens (des Schreibens) aufgrund einer Eigenschaft des Flash-Speichers 16 keine Bit-Einheiten sind.
  • Deshalb steigt selbst dann, wenn Datenstücke, die aktualisiert werden sollen, sehr klein sind, ähnlich den gemeinsamen Begleitdaten 32, die Zeit, die zur Aktualisierung erforderlich ist, weil die Löscheinheiten aufgrund der Eigenschaft des Flash-Speichers 16 groß sind.
  • Im Hinblick auf das oben Beschriebene kann, wie in 9A bis 9C und 10 veranschaulicht ist, das oben beschriebene Problem durch Einrichten des EEPROM 15 (der einen simulierten EEPROM enthält) als ein Speicherziel (den gemeinsamen Speicherbereich ComD) der gemeinsamen Begleitdaten 32 gelöst werden.
  • 10 ist ein Blockdiagramm, das ein Beispiel der Arithmetikverarbeitungsvorrichtung 1 der zweiten Ausführungsform veranschaulicht. Die Arithmetikverarbeitungsvorrichtung 1 der zweiten Ausführungsform richtet den gemeinsamen Speicherbereich ComD zum Speichern der gemeinsamen Begleitdaten 32 im EEPROM 15 der Speichereinheit 4 ein. Die weiteren Konfigurationen sind dieselben wie die der ersten Ausführungsform.
  • Wie in 9A bis 9C veranschaulicht ist, kann im EEPROM 15 ein Löschen wie im herkömmlichen Beispiel in Bit-Einheiten (oder in Byte-Einheiten) durchgeführt werden, derart, dass die gemeinsamen Begleitdaten 32, die aktualisiert werden sollen, in einer zielgenauen Weise (in Byte-Einheiten) aktualisiert werden, und kann die Zeit, die zur Aktualisierung erforderlich ist, verkürzt werden.
  • Ferner kann in einem simulierten EEPROM, der in den letzten Jahren weitgehend eingesetzt wurde, eine ähnliche Wirkung erhalten werden, weil die Löscheinheiten wie im EEPROM 15 klein sind.
  • Aus dem oben genannten Grund kann die Zeit, die zum Löschen und Umschreiben erforderlich ist, im Falle des Speicherns von Daten im EEPROM 15 im Vergleich zum Fall des Speicherns von Daten im Flash-Speicher 16 verkürzt werden.
  • Dritte Ausführungsform
  • Die vorliegende Ausführungsform verringert ein Verwendungsmenge des EEPROM 15 in der zweiten Ausführungsform.
  • Es wird eine Rücksetzfunktion beschrieben, die eingesetzt wird, falls die Speicherbereiche Pa und Pb zum Speichern von zwei ausführbaren Programmen vorliegen. Die Rücksetzfunktion ist eine Funktion des Zurückführens eines Zustands zu einem Zustand eines nächsten Punktes (Steuerprogramm und Begleitdaten), in dem ein Betrieb normalerweise zuvor durchgeführt wurde, um eine Wiederherstellung zu versuchen, wenn während einer Aktualisierung eines Steuerprogramms ein Fehler auftritt.
  • Allerdings ist es, um die Rücksetzfunktion zu realisieren, wie in 11 veranschaulicht ist, nötig, zwei Bereiche (ComD und ComD2) für neue und alte gemeinsame Begleitdaten vorzubereiten, und somit wird eine Verwendungsmenge des EEPROM 15 knapp. Es ist festzuhalten, dass 11 ein Blockdiagramm der Arithmetikverarbeitungsvorrichtung 1 ist, die eine Konfiguration besitzt, in der die gemeinsamen Begleitdaten 32 vor der Aktualisierung im EEPROM 15 gespeichert werden.
  • Ferner ist, da die Rücksetzfunktion eine Versicherung gegen ein Auftreten eines Fehlers ist, die Frequenz des Ausführens der Rücksetzfunktion niedrig und es ist unwirtschaftlich, die Kapazität des EEPROM 15 zu verbrauchen.
  • Im Hinblick auf das oben Beschriebene besitzt, um dieses Problem zu lösen, die vorliegende Ausführungsform eine Konfiguration des Verwendens der Speicherbereiche Pa und Pb, die Bereiche zum Speichern eines Steuerprogramms als ein Speicherziel der gemeinsamen Begleitdaten 32 vor der Aktualisierung sind.
  • 12 ist ein Blockdiagramm der Arithmetikverarbeitungsvorrichtung 1, die konfiguriert ist, die gemeinsamen Begleitdaten 32 vor der Aktualisierung im Flash-Speicher 16 zu speichern. In 12 wird der gemeinsame Speicherbereich ComD2 zum Speichern der gemeinsamen Begleitdaten 32 vor der Aktualisierung im Flash-Speicher 16 eingerichtet. Die weiteren Konfigurationen sind dieselben wie die der zweiten Ausführungsform.
  • Wie in 12 veranschaulicht ist, ist ein Speicherziel des gemeinsamen Speicherbereichs ComD2, in dem die gemeinsamen Begleitdaten 32 vor der Aktualisierung gespeichert sind, der Speicherbereich Pb eines Steuerprogramms, das gegenwärtig nicht ausgeführt wird (wenn ein Bereich des Steuerprogramms, das nicht ausgeführt wird, Pa ist, dient der Speicherbereich Pa als das Speicherziel). Auf diese Weise können ein Steuerprogramm, das zurückgesetzt werden soll, und Begleitdaten gemeinsam gemanagt werden.
  • Ferner ist 13 ein Ablaufplan, der ein Beispiel einer Aktualisierungsverarbeitung der gemeinsamen Begleitdaten 32 und einer Speicherverarbeitung von Daten vor der Aktualisierung veranschaulicht. Diese Verarbeitung wird in vorgegebenen Intervallen in der Steuereinheit 2, die in 12 veranschaulicht ist, und nachdem die Aktualisierungsdaten 21 empfangen worden sind und nachdem ein Steuerprogramm aktualisiert worden ist, ausgeführt und die gemeinsamen Begleitdaten 32 werden aktualisiert. In der Aktualisierung der gemeinsamen Begleitdaten 32 wird, falls ein Steuerprogramm des Speicherbereichs Pa ausgeführt wird, ein Wert (gemeinsame Begleitdaten 32) des gemeinsamen Speicherbereichs ComD vor der Aktualisierung im Speicherbereich Pb eines Steuerprogramms, das nicht ausgeführt wird, gespeichert.
  • In der Beschreibung unten wird ein Beispiel beschrieben, in dem Steuerprogramme der Speicherbereiche Pa und Pb eine Aktualisierungsfunktion enthalten. Allerdings kann verursacht werden, dass die Steuereinheit 2 die Aktualisierungsverarbeitung als ein unabhängiges Programm ausführt. Ferner wird im Folgenden die Steuereinheit 2 als ein Verarbeitungsgegenstand beschrieben. Allerdings kann ein Steuerprogramm, das durch die CPU 2a gelesen wurde, ein Verarbeitungsgegenstand sein. Es ist festzuhalten, dass dann, wenn die Aktualisierungsverarbeitung endet, ein Steuerprogramm eine vorgegebene Verarbeitung (eine Fahrzeugsteuerung oder dergleichen) ausführt.
  • Zunächst empfängt, wie in Schritt 102 gezeigt ist, die Steuereinheit 2 die Aktualisierungsdaten 21 und bestimmt, ob in Schritt 103 ein Steuerprogramm des Speicherbereichs Pa ausgeführt wird oder nicht. Falls das Steuerprogramm des Speicherbereichs Pa ausgeführt wird, schreitet die Verarbeitung fort zu Schritt 104 und, falls das Steuerprogramm des Speicherbereichs Pb ausgeführt wird, schreitet die Verarbeitung fort zu Schritt 105.
  • In Schritt 104 löscht die Steuereinheit 2 das Steuerprogramm des Speicherbereichs Pb, der nicht ausgeführt wird, und führt dann ein Schreiben durch, um das Steuerprogramm zum empfangenen Steuerprogramm zu aktualisieren. In Schritt 105 löscht die Steuereinheit 2 das Steuerprogramm des Speicherbereichs Pa, der nicht ausgeführt wird, und führt dann ein Schreiben durch, um das Steuerprogramm zum empfangenen Steuerprogramm zu aktualisieren.
  • In Schritt 106 bestimmt die Steuereinheit 2, ob die Aktualisierung abgeschlossen ist oder nicht. Falls die Aktualisierung abgeschlossen ist, schreitet die Verarbeitung fort zu Schritt 107. Falls die Aktualisierung nicht abgeschlossen ist, kehrt die Verarbeitung zurück zu Schritt 102 und die oben beschriebene Verarbeitung wird wiederholt.
  • In Schritt 107 wechselt dann, wenn die Aktualisierung des Steuerprogramms abgeschlossen ist, die Steuereinheit 2 das Steuerprogramm, das ausgeführt werden soll. Beim Wechseln des Steuerprogramms wird, wenn eine vorgegebene Bedingung erfüllt ist (z. B. das Fahrzeug gestoppt oder in einem Parkzustand ist), das Steuerprogramm des Speicherbereichs Pa, das gegenwärtig ausgeführt wird, gestoppt und das aktualisierte Steuerprogramm des Speicherbereichs Pb wird gestartet. Falls die vorgegebene Bedingung nicht erfüllt ist, schreitet die Verarbeitung fort zu Schritt 108.
  • Es ist festzuhalten, dass das Wechseln des Steuerprogramms nicht beim Steuerprogramm selbst, sondern bei einem weiteren Programm, das durch die Steuereinheit 2 ausgeführt wird, angefordert werden kann.
  • Nachdem das Wechseln des Steuerprogramms abgeschlossen worden ist, bestimmt, wie in Schritt 108 gezeigt ist, die Steuereinheit 2, ob die gemeinsamen Begleitdaten 32 aktualisiert sind oder nicht. Wenn eine Aktualisierung nötig ist, schreitet die Verarbeitung fort zu Schritt 109, und wenn eine Aktualisierung unnötig ist, endet die Verarbeitung.
  • In Schritt 109 bestimmt die Steuereinheit 2, ob das Steuerprogramm des Speicherbereichs Pa ausgeführt wird oder nicht. Falls das Steuerprogramm des Speicherbereichs Pa ausgeführt wird, schreitet die Verarbeitung fort zu Schritt 110 und falls das Steuerprogramm des Speicherbereichs Pb ausgeführt wird, schreitet die Verarbeitung fort zu Schritt 111.
  • In Schritt 110 wird ein aktueller Wert der gemeinsamen Begleitdaten 32 im gemeinsamen Speicherbereich ComD2 im Speicherbereich Pb, der nicht ausgeführt wird, durch die Steuereinheit 2 gespeichert. Dagegen wird in Schritt 111 ein aktueller Wert der gemeinsamen Begleitdaten 32 im gemeinsamen Speicherbereich ComD2 im Speicherbereich Pa, der nicht ausgeführt wird, durch die Steuereinheit 2 gespeichert.
  • Die Daten, die durch die Steuereinheit 2 gespeichert werden sollen, können alle gemeinsamen Begleitdaten 32 oder lediglich Daten, die aktualisiert werden sollen, sein. Nachdem die Speicherung abgeschlossen worden ist, aktualisiert die Steuereinheit 2 die gemeinsamen Begleitdaten 32 im gemeinsamen Speicherbereich ComD auf der Grundlage der empfangenen Aktualisierungsdaten 21, wie in Schritt 112 beschrieben ist. Es ist festzuhalten, dass die Aktualisierung der gemeinsamen Begleitdaten 32 im gemeinsamen Speicherbereich ComD bevorzugt ausgeführt wird, falls die Steuereinheit 2 bestimmt, dass die vorgegebene Bedingung erfüllt ist, wie in Schritt 107 beschrieben ist.
  • Durch die oben beschriebene Verarbeitung kann eine Aktualisierung der gemeinsamen Begleitdaten 32 und eine Speicherung von Daten vor der Aktualisierung im gemeinsamen Speicherbereich ComD2 erreicht werden.
  • Ferner veranschaulicht 14 einen Ablaufplan der Verarbeitung zu dem Zeitpunkt, zu dem die Rücksetzfunktion ausgeführt wird. In der Beschreibung unten wird ein Beispiel beschrieben, in dem Steuerprogramme der Speicherbereiche Pa und Pb die Rücksetzfunktion enthalten. Allerdings kann verursacht werden, dass die Steuereinheit 2 eine Rücksetzverarbeitung als ein unabhängiges Programm ausführt. Ferner wird im Folgenden die Steuereinheit 2 als ein Verarbeitungsgegenstand beschrieben. Allerdings kann ein Steuerprogramm, das durch die CPU 2a gelesen wurde, ein Verarbeitungsgegenstand sein. Es ist festzuhalten, dass, wenn die Rücksetzverarbeitung endet, ein Steuerprogramm eine vorgegebene Verarbeitung (eine Fahrzeugsteuerung oder dergleichen) ausführt.
  • Zunächst bestimmt, wie in Schritt 202 beschrieben ist, die Steuereinheit 2, ob ein Zurücksetzen nötig ist oder nicht und führt ein Zurücksetzen lediglich dann aus, wenn eine Ausführungsanforderung des Zurücksetzens erfüllt ist. Die Ausführungsanforderung des Zurücksetzens kann z. B. vorliegen, wenn sie von einer weitere ECU angefordert wird oder wenn die ECU (die Arithmetikverarbeitungsvorrichtung 1) selbst einen Fehler detektiert. Falls die Ausführungsanforderung erfüllt ist, schreitet die Verarbeitung fort zu Schritt 203, und falls die Ausführungsanforderung nicht erfüllt ist, endet die Verarbeitung.
  • Es ist festzuhalten, dass ein Zurücksetzen, wenn es von einer weiteren ECU angefordert wird, z. B. falls in einem Steuerprogramm ein Problem nach einer Aktualisierung in einer weiteren ECU auftritt und ein Zurücksetzen einer weiteren ECU oder des Steuerprogramms durchgeführt wird, ungeachtet des Vorliegens oder des Fehlens eines Fehlers auch für ein Steuerprogramm durchgeführt wird, das durch die Arithmetikverarbeitungsvorrichtung 1 ausgeführt wird, um die Versionen abzugleichen.
  • In Schritt 203 bestimmt die Steuereinheit 2, ob das Steuerprogramm des Speicherbereichs Pa ausgeführt wird oder nicht. Falls das Steuerprogramm des Speicherbereichs Pa ausgeführt wird, schreitet die Verarbeitung fort zu Schritt 204, und falls das Steuerprogramm des Speicherbereichs Pb ausgeführt wird, schreitet die Verarbeitung fort zu Schritt 205.
  • In Schritt 204 schreibt die Steuereinheit 2 die gemeinsamen Begleitdaten 32 bevor eine Aktualisierung im Speicherbereich Pb gespeichert wurde in den gemeinsamen Speicherbereich ComD, um die Daten widerzuspiegeln. In Schritt 205 schreibt die Steuereinheit 2 die gemeinsamen Begleitdaten 32 bevor die Aktualisierung im Speicherbereich Pa gespeichert wurde in den gemeinsamen Speicherbereich ComD, um die Daten widerzuspiegeln.
  • Dann schreitet die Steuereinheit 2 in Schritt 206 nach dem Widerspiegeln der gemeinsamen Begleitdaten 32, bevor die Aktualisierung abgeschlossen wurde, fort zu Schritt 207 und wechselt das Steuerprogramm, das ausgeführt werden soll. Es ist festzuhalten, dass, wenn das Widerspiegeln der gemeinsamen Begleitdaten 32 vor der Aktualisierung nicht abgeschlossen worden ist, die Steuereinheit 2 zu Schritt 203 zurückkehrt und die oben beschriebene Verarbeitung wiederholt.
  • Durch die oben beschriebene Verarbeitung ist es möglich, die Kapazität des EEPROM 15, die für die gemeinsamen Begleitdaten 32 verwendet wird, vor der Aktualisierung zu verringern und die Rücksetzfunktion zu realisieren.
  • Es ist festzuhalten, dass die Steuereinheit 2 nach dem Abschluss des Zurücksetzens auf einem Anzeigebildschirm oder dergleichen einer Navigationsvorrichtung (die nicht veranschaulicht ist), die mit der Arithmetikverarbeitungsvorrichtung 1 verbunden ist, mitteilten kann, dass das Zurücksetzen durchgeführt wird.
  • Es ist festzuhalten, dass die Mitteilung nicht auf ein Bild beschränkt ist und eine Stimme oder eine Schwingung sein kann.
  • Ferner wird als eine Ausführungsbedingung des Zurücksetzens das Zurücksetzen wünschenswerterweise ausgeführt, nachdem einem Fahrer der Start des Zurücksetzens mitgeteilt worden ist, während das Fahrzeug gestoppt oder geparkt ist, wie z. B. nachdem ein Zündschlüssel (der nicht veranschaulicht ist) des Fahrzeugs ausgeschaltet worden ist oder bevor das Fahrzeug startet, nachdem der Zündschlüssel eingeschaltet worden ist.
  • Ferner kann die Steuereinheit 2 dann, wenn die Aktualisierung eines Steuerprogramms scheitert, bei der Navigationsvorrichtung oder dergleichen, die mit der Arithmetikverarbeitungsvorrichtung 1 verbunden ist, anfragen, ob während der nächsten Aktivierung (Zündung ein) eine Aktualisierung ausgeführt werden soll oder nicht.
  • Es ist festzuhalten, dass in der vorliegenden Ausführungsform das Beispiel beschrieben ist, in dem die gemeinsamen Begleitdaten 32 vor der Aktualisierung in den Speicherbereichen Pa und Pb gespeichert werden. Allerdings ist die vorliegende Erfindung nicht auf die Konfiguration beschränkt und die gemeinsamen Begleitdaten 32 können in einem vorgegebenen Bereich des Flash-Speichers 16 gespeichert werden.
  • <Schlussfolgerung>
  • Wie oben beschrieben ist, kann die Arithmetikverarbeitungsvorrichtung 1 oder die Fahrzeugsteuervorrichtung der oben beschriebenen Ausführungsform eine Konfiguration besitzen, die unten beschrieben ist.
  • (1). Eine erste umschreibbare Speichereinheit (der Flash-Speicher 16 und die Speicherbereiche Pa und Pb), in der zwei Programme gespeichert sind, eine CPU (2a), die eines der zwei Programme wählt und ausführt, und eine zweite umschreibbare Speichereinheit (der gemeinsame Speicherbereich ComD und der EEPROM 15), in dem gemeinsame Daten (die gemeinsamen Begleitdaten 32), die die zwei Programme begleiten, gespeichert sind, sind enthalten.
  • Durch die oben beschriebene Konfiguration werden unter der Prämisse, dass ein Steuerprogramm und die gemeinsamen Begleitdaten 32 aktualisiert werden, Informationen (Begleitdaten), die den Steuerprogrammen gemeinsam sind, als die gemeinsamen Begleitdaten 32 definiert und werden Begleitdaten, die nicht gemeinsam sind, in das Steuerprogramm aufgenommen, derart, dass eine Abhängigkeit zwischen den Begleitdaten und dem Steuerprogramm beseitigt wird. Der gemeinsame Speicherbereich ComD zum Speichern der gemeinsamen Begleitdaten 32 wird im Flash-Speicher 16 eingerichtet und nicht gemeinsame Begleitdaten werden in ein Steuerprogramm aufgenommen, derart, dass es möglich ist, ein Steuerprogramm zu erstellen, das in den Speicherbereichen Pa und Pb ausgeführt werden kann, ohne von den Speicherbereichen Pa und Pb abzuhängen, und, wie durch die Aktualisierungsdaten 21 angegeben wird, ist es nicht nötig, zusätzliche Informationen, die nicht verwendet werden, zu übertragen, derart, dass es möglich ist, die Zeit, die zur Aktualisierung erforderlich ist, zu verkürzen.
  • (2). In der Arithmetikverarbeitungsvorrichtung, die in (1) oben beschrieben ist, enthält die erste umschreibbare Speichereinheit (16), in der die zwei Programme gespeichert sind, eine vorgegebene umschreibbare Einheit (eine Blockeinheit) und enthält die zweite umschreibbare Speichereinheit (ComD und 15), in der gemeinsame Daten, die die zwei Programme begleiten, gespeichert sind, eine umschreibbare Einheit (eine Byte-Einheit), die kleiner als die vorgegebene umschreibbare Einheit der ersten umschreibbaren Speichereinheit (16), in der die zwei Programme gespeichert sind, ist.
  • Mit der oben beschriebenen Konfiguration können Daten (in Byte-Einheiten) im EEPROM 15 gelöscht oder umgeschrieben werden, derart, dass die gemeinsamen Begleitdaten 32, die aktualisiert werden sollen, in einer zielgenauen Weise (in Byte-Einheiten) aktualisiert werden können und die Zeit, die zur Aktualisierung erforderlich ist, verkürzt werden kann.
  • (3). In der Arithmetikverarbeitungsvorrichtung, die in (1) oben beschrieben ist, werden, wenn die gemeinsamen Daten (32), die die zwei Programme begleiten, aktualisiert werden, die gemeinsamen Daten vor der Aktualisierung als alte Daten gespeichert und ein Speicherziel der alten Daten ist die zweite umschreibbare Speichereinheit (ComD und 15), in der die gemeinsamen Daten (32) gespeichert sind.
  • Mit der oben beschriebenen Konfiguration ist es, da die gemeinsamen Begleitdaten 32 vor der Aktualisierung im gemeinsamen Speicherbereich ComD gespeichert sind, möglich, eine Ausführungsumgebung eines Programms vor der Aktualisierung mit den alten Daten des gemeinsamen Speicherbereichs ComD wiederherzustellen, wenn ein Zurücksetzen zum Programm vor der Aktualisierung durchgeführt wird.
  • (4). In der Arithmetikverarbeitungsvorrichtung, die in (1) oben beschrieben ist, werden, wenn die gemeinsamen Daten (32), die die zwei Programme begleiten, aktualisiert werden, die gemeinsamen Daten vor der Aktualisierung als alte Daten gespeichert und ist die erste umschreibbare Speichereinheit (16) ein Speicherziel der alten Daten.
  • Mit der oben beschriebenen Konfiguration ist es, da die gemeinsamen Begleitdaten 32 vor der Aktualisierung im gemeinsamen Speicherbereich ComD des Flash-Speichers 16 gespeichert sind, möglich, eine Ausführungsumgebung eines Programms vor der Aktualisierung mit den alten Daten des gemeinsamen Speicherbereichs ComD wiederherzustellen, wenn ein Zurücksetzen zum Programm vor der Aktualisierung durchgeführt wird.
  • (5). Die Arithmetikverarbeitungsvorrichtung, die in (1) oben beschrieben ist, enthält ferner eine Kommunikationsschnittstelle (die Kommunikationssteuereinheit 3) zum Austauschen von Daten mit einem externen System. Die CPU (2a) empfängt gemeinsame Daten, die das Programm, das nicht gewählt ist, begleiten, mittels der Kommunikationsschnittstelle (3), um eine Aktualisierung durchzuführen.
  • Mit der oben beschriebenen Konfiguration können die Aktualisierungsdaten 21 von einem externen System empfangen werden, um die gemeinsamen Begleitdaten 32 zu aktualisieren.
  • (6). In der Arithmetikverarbeitungsvorrichtung, die in (1) oben beschrieben ist, enthalten die gemeinsamen Daten Informationen, die sich auf eine Ausführung des Programms auswirken und sich auf eine Steuerung eines Fahrzeugs auswirken.
  • Mit der oben beschriebenen Konfiguration ist es möglich, die gemeinsamen Begleitdaten 32 zum Aktualisieren eines Steuerprogramms einer ECU oder dergleichen eines Fahrzeugs zu verwenden und ist es möglich, ein Verkürzen einer Aktualisierungszeit und einer Ausführung eines Zurücksetzens sicherzustellen.
  • Es ist festzuhalten, dass die vorliegende Erfindung nicht auf die oben genannte Ausführungsform beschränkt ist und eine Vielzahl von Varianten enthält.
  • Zum Beispiel sind die oben genannten Ausführungsformen zum leichteren Verständnis der vorliegenden Erfindung genau beschrieben und ist die vorliegende Erfindung nicht notwendigerweise auf die Ausführungsformen beschränkt, die die Gesamtheit der beschriebenen Konfigurationen enthalten. Ferner kann ein Teil einer Konfiguration einer bestimmten Ausführungsform durch eine Konfiguration einer weiteren Ausführungsform ersetzt werden und kann eine Konfiguration einer bestimmten Ausführungsform auch zu einer Konfiguration einer weiteren Ausführungsform hinzugefügt werden. Ferner können für einen Abschnitt einer Konfiguration jeder Ausführungsform beliebige eines Hinzufügens einer weiteren Konfiguration, eines Entfernens und eines Austauschs einzeln oder in Kombination angewendet werden.
  • Ferner können einen Teil oder alle der oben beschriebenen Konfigurationen, Funktionen, Verarbeitungseinheiten, Verarbeitungsmittel und dergleichen als Hardware z. B. in Form eines Entwerfens eines derartigen Teils oder aller als eine integrierte Schaltung erhalten werden. Die oben beschriebenen Konfigurationen, Funktionen und dergleichen können durch Software erhalten werden, durch die ein Prozessor Programme interpretiert und ausführt, die ihre Funktionen durchführen. Daten wie z. B. ein Programm, das jede Funktion realisiert, eine Tabelle und eine Datei können in Aufzeichnungsvorrichtungen wie z. B. einem Speicher, einer Festplatte und einem Festkörperlaufwerk (SSD) oder Aufzeichnungsmedien wie z. B. einer IC-Karte, einer SD-Karte und einem DVD untergebracht werden.
  • Ferner sind Steuerleitungen und Datenleitungen, die zur Erläuterung nötig erachtet werden, gezeigt und nicht alle Steuerleitungen oder Datenleitungen, die für ein Produkt nötig sind, sind gezeigt. In der Praxis können beinahe alle Konfigurationen als miteinander verbunden betrachtet werden.
  • Bezugszeichenliste
  • 1
    Arithmetikverarbeitungsvorrichtung
    2
    Steuereinheit
    2a
    CPU
    3
    Kommunikationssteuereinheit
    4
    Speichereinheit
    14
    RAM
    15
    EEPROM
    16
    Flash-Speicher
    21
    Aktualisierungsdaten
    32
    Gemeinsame Begleitdaten
    Pa
    Speicherbereich
    Pb
    Speicherbereich
    ComD
    Gemeinsamer Speicherbereich
    ComD2
    Gemeinsamer Speicherbereich
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Patentliteratur
    • JP 2003114807 A [0009]
    • JP 2008077221 A [0009]

Claims (12)

  1. Arithmetikverarbeitungsvorrichtung, die Folgendes umfasst: eine erste umschreibbare Speichereinheit, die zwei Programme speichert; eine CPU, die eines der zwei Programme wählt und ausführt; und eine zweite umschreibbare Speichereinheit, die gemeinsame Daten, die die zwei Programme begleiten, speichert.
  2. Arithmetikverarbeitungsvorrichtung nach Anspruch 1, wobei die erste umschreibbare Speichereinheit, die die zwei Programme speichert, Folgendes enthält: eine vorgegebene umschreibbare Einheit, und die zweite umschreibbare Speichereinheit, die gemeinsame Daten, die die zwei Programme begleiten, speichert, Folgendes enthält: eine umschreibbare Einheit, die kleiner als die vorgegebene umschreibbare Einheit der ersten umschreibbaren Speichereinheit, die die zwei Programme speichert, ist.
  3. Arithmetikverarbeitungsvorrichtung nach Anspruch 1, wobei dann, wenn die gemeinsamen Daten, die die zwei Programme begleiten, aktualisiert werden, die gemeinsamen Daten vor der Aktualisierung als alte Daten gespeichert werden und die zweite umschreibbare Speichereinheit, die die gemeinsamen Daten speichert, ein Speicherziel der alten Daten ist.
  4. Arithmetikverarbeitungsvorrichtung nach Anspruch 1, wobei dann, wenn die gemeinsamen Daten, die die zwei Programme begleiten, aktualisiert werden, die gemeinsamen Daten vor der Aktualisierung als alte Daten gespeichert werden und die erste umschreibbare Speichereinheit ein Speicherziel der alten Daten ist.
  5. Arithmetikverarbeitungsvorrichtung nach Anspruch 1, die ferner Folgendes umfasst: eine Kommunikationsschnittstelle zum Austauschen von Daten mit einem externen System, wobei die CPU gemeinsame Daten, die ein Programm, das nicht gewählt ist, begleiten, mittels der Kommunikationsschnittstelle empfängt, um eine Aktualisierung durchzuführen.
  6. Fahrzeugsteuervorrichtung, die die Arithmetikverarbeitungsvorrichtung nach Anspruch 1 enthält, wobei die gemeinsamen Daten Informationen enthalten, die sich auf eine Ausführung des Programms auswirken und sich auf eine Steuerung eines Fahrzeugs auswirken.
  7. Aktualisierungsverfahren zum Aktualisieren eines Programms einer CPU und eines Hauptspeichers durch eine Arithmetikverarbeitungsvorrichtung, wobei das Aktualisierungsverfahren Folgendes umfasst: einen ersten Schritt des Speicherns durch die CPU von zwei Programmen in einer ersten umschreibbaren Speichereinheit; einen zweiten Schritt des Speicherns durch die CPU gemeinsamer Daten, die die zwei Programme begleiten, in einer zweiten umschreibbaren Speichereinheit; und einen dritten Schritt, in dem die CPU eines der zwei Programme wählt und ausführt.
  8. Aktualisierungsverfahren nach Anspruch 7, wobei die erste umschreibbare Speichereinheit, die die zwei Programme speichert, Folgendes enthält: eine vorgegebene umschreibbare Einheit und die zweite umschreibbare Speichereinheit, die gemeinsame Daten, die die zwei Programme begleiten, speichert, Folgendes enthält: eine umschreibbare Einheit, die kleiner als die vorgegebene umschreibbare Einheit der ersten umschreibbaren Speichereinheit, die die zwei Programme speichert, ist.
  9. Aktualisierungsverfahren nach Anspruch 7, das ferner einen vierten Schritt des Aktualisierens durch die CPU der gemeinsamen Daten, die die zwei Programme begleiten, umfasst, wobei der vierte Schritt Folgendes umfasst: Speichern der gemeinsamen Daten vor der Aktualisierung als alte Daten in der zweiten umschreibbaren Speichereinheit, die die gemeinsamen Daten speichert.
  10. Aktualisierungsverfahren nach Anspruch 7, das ferner einen vierten Schritt des Aktualisierens durch die CPU der gemeinsamen Daten, die die zwei Programme begleiten, umfasst, wobei der vierte Schritt Folgendes umfasst: Speichern der gemeinsamen Daten vor der Aktualisierung als alte Daten in der ersten umschreibbaren Speichereinheit, wenn die gemeinsamen Daten, die die zwei Programme begleiten, aktualisiert werden.
  11. Aktualisierungsverfahren nach Anspruch 7, das ferner Folgendes umfasst: eine Kommunikationsschnittstelle zum Austauschen von Daten mit einem externen System, wobei das Aktualisierungsverfahren ferner einen vierten Schritt des Aktualisierens durch die CPU der gemeinsamen Daten, die die zwei Programme begleiten, umfasst, wobei der vierte Schritt Folgendes umfasst: Empfangen gemeinsamer Daten, die das Programm, das nicht gewählt ist, begleiten, mittels der Kommunikationsschnittstelle, um eine Aktualisierung durchzuführen.
  12. Aktualisierungsverfahren nach Anspruch 7, wobei die gemeinsamen Daten Informationen enthalten, die sich auf eine Ausführung des Programms auswirken und sich auf eine Steuerung eines Fahrzeugs auswirken.
DE112020001909.8T 2019-05-28 2020-05-22 Arithmetikverarbeitungsvorrichtung, Fahrzeugsteuervorrichtung und Aktualisierungsverfahren Pending DE112020001909T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019-099015 2019-05-28
JP2019099015 2019-05-28
PCT/JP2020/020237 WO2020241473A1 (ja) 2019-05-28 2020-05-22 演算処理装置、車両制御装置及び更新方法

Publications (1)

Publication Number Publication Date
DE112020001909T5 true DE112020001909T5 (de) 2022-01-13

Family

ID=73552767

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020001909.8T Pending DE112020001909T5 (de) 2019-05-28 2020-05-22 Arithmetikverarbeitungsvorrichtung, Fahrzeugsteuervorrichtung und Aktualisierungsverfahren

Country Status (5)

Country Link
US (1) US20220204008A1 (de)
JP (1) JP7219813B2 (de)
CN (1) CN113841116A (de)
DE (1) DE112020001909T5 (de)
WO (1) WO2020241473A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003114807A (ja) 2001-10-02 2003-04-18 Fuji Photo Film Co Ltd 電子機器及び本体制御プログラムの書き換え方法
JP2008077221A (ja) 2006-09-19 2008-04-03 Denso Corp 車両用制御装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328453A (ja) 2006-06-06 2007-12-20 Brother Ind Ltd 周辺装置システム,周辺装置および周辺装置設定更新方法
JP6417695B2 (ja) 2014-03-31 2018-11-07 富士通株式会社 情報処理システム、情報処理システムの制御方法および情報処理装置の制御プログラム
JP6798110B2 (ja) 2016-01-27 2020-12-09 株式会社リコー 画像形成装置
EP3480698B1 (de) 2016-06-28 2020-12-09 Nippon Seiki Co., Ltd. Anzeigevorrichtung für fahrzeug
JP7040075B2 (ja) 2017-03-17 2022-03-23 株式会社リコー 情報処理装置、画像形成装置、アップデート方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003114807A (ja) 2001-10-02 2003-04-18 Fuji Photo Film Co Ltd 電子機器及び本体制御プログラムの書き換え方法
JP2008077221A (ja) 2006-09-19 2008-04-03 Denso Corp 車両用制御装置

Also Published As

Publication number Publication date
JP7219813B2 (ja) 2023-02-08
US20220204008A1 (en) 2022-06-30
WO2020241473A1 (ja) 2020-12-03
CN113841116A (zh) 2021-12-24
JPWO2020241473A1 (de) 2020-12-03

Similar Documents

Publication Publication Date Title
DE112010003650B4 (de) Container-Markierungsschema zum Verringern einer Schreibverstärkung bei Halbleiter-Einheiten
DE102012208141B4 (de) Ausgleich nachlassender Funktionsfähigkeit
DE112009002207B4 (de) Aktualisieren einer Firmware mit mehreren Prozessoren
DE112008002767T5 (de) Mobiles Handgerät, das eine effiziente Sicherung und Wiedergewinnung von Blöcken während einer Aktualisierung einsetzt
DE102019109672A1 (de) Rückgängigmachung nach einem teilausfall in mehreren elektronischen steuergeräten mittels over-the-air-updates
DE102009019271A1 (de) Übertragen von Sequenzzahlen für das Wiederherstellen nach Stromausfall bei einem nichtflüchtigen Speicher
DE102009034651A1 (de) Prozess und Verfahren zur Abbildung von logischen Adressen auf physische Adressen in Festkörperplatten
DE102009051862A1 (de) Speichervorrichtung und Speicherverfahren
DE102005063250A1 (de) Datenspeicherungssteuersystem, Speicher- und Rechnersystem und Betriebsverfahren
DE112011100618T5 (de) Verwalten von Schreiboperationen auf einen Speicherbereich von Spuren, der zwischen Speichereinheiten verlagert wird
DE102016010277A1 (de) Verfahren und systeme zum verbessern von speicher-journaling
DE602005003778T2 (de) Verfahren und Vorrichtung zum Wiederbeschreiben eines Sektors mit Bootloader-Software in einem sektor-löschbaren nichtflüchtigen Halbleiterspeicher
DE102019116546A1 (de) Verfahren für schnelles boot-lesen
DE69820164T2 (de) Speichervorrichtung sowie Datenlese- und Schreibverfahren
DE102006029690A1 (de) Beibehaltung einer Identifikation einer elektronischen Steuereinheit bei Umprogrammierungsereignissen
DE112017005782T5 (de) Warteschlange für Speichervorgänge
DE112019000179T5 (de) Fahrzeugsteuervorrichtung und programmaktualisierungssystem
DE102012203713A1 (de) Verfahren und Vorrichtung zur Verlängerung der Lebensdauer von Speichern
DE102017119065B4 (de) Aktualisieren eines Speichers
DE102017104698A1 (de) Elektroniksteuervorrichtung und Informationsspeicherverfahren dafür
EP2608037B1 (de) Verfahren zum Verwalten von Daten in einem Flash-Speicher, Fahrerassistenzeinrichtung und Kraftfahrzeug
CN110402428A (zh) 车载控制装置、及程序更新软件
DE112020001909T5 (de) Arithmetikverarbeitungsvorrichtung, Fahrzeugsteuervorrichtung und Aktualisierungsverfahren
DE102018123311A1 (de) Hintergrund-Firmware-Aktualisierung
WO2014114388A1 (de) Verfahren zum sicheren löschen eines nichtflüchtigen halbleiter-massenspeichers, computersystem sowie computerprogrammprodukt

Legal Events

Date Code Title Description
R012 Request for examination validly filed