DE102015219841A1 - Verfahren und Vorrichtung zum Aktualisieren eines Steuergerätes - Google Patents

Verfahren und Vorrichtung zum Aktualisieren eines Steuergerätes Download PDF

Info

Publication number
DE102015219841A1
DE102015219841A1 DE102015219841.3A DE102015219841A DE102015219841A1 DE 102015219841 A1 DE102015219841 A1 DE 102015219841A1 DE 102015219841 A DE102015219841 A DE 102015219841A DE 102015219841 A1 DE102015219841 A1 DE 102015219841A1
Authority
DE
Germany
Prior art keywords
block
flash memory
processor core
control unit
memory
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
DE102015219841.3A
Other languages
English (en)
Inventor
Hans-Walter Schmitt
Axel Aue
Matthias Schreiber
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102015219841.3A priority Critical patent/DE102015219841A1/de
Priority to US15/284,632 priority patent/US10133491B2/en
Priority to CN201610889183.6A priority patent/CN107015822B/zh
Publication of DE102015219841A1 publication Critical patent/DE102015219841A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • G11C16/225Preventing erasure, programming or reading when power supply voltages are outside the required ranges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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
    • 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
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)
  • Sewing Machines And Sewing (AREA)

Abstract

Verfahren zum Aktualisieren eines Steuergerätes (20) mit einem ersten Prozessorkern (21) und einem dem ersten Prozessorkern (21) zugeordneten ersten Flash-Speicher (31), gekennzeichnet durch folgende Merkmale: – der erste Prozessorkern (21) arbeitet mit einem ersten Block (41) des ersten Flash-Speichers (31), – während des Arbeitens wird ein von dem ersten Block (41) elektronisch getrennter zweiter Block (42) des ersten Flash-Speichers (31) mit einem vorgegebenen Speicherabbild umprogrammiert und – nach dem Umprogrammieren wird der erste Prozessorkern (21) von dem ersten Block (41) des ersten Flash-Speichers (31) auf den zweiten Block (42) des ersten Flash-Speichers (31) umgeschaltet.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Aktualisieren eines Steuergerätes. Die vorliegende Erfindung betrifft darüber hinaus eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium.
  • Stand der Technik
  • Als Steuergerät (electronic control unit, ECU, electronic control module, ECM) wird jedwedes elektronische Modul bezeichnet, welches an unmittelbar an Einsatzorten verbaut wird, an denen eine Steuerung oder Regelung erforderlich ist. Steuergeräte dienen zur Steuerung von Kraftfahrzeugen, Maschinen, Anlagen und unterschiedlichsten technischen Prozessen. Im Umfeld zeitgemäßer Verbrennungsmotoren wurden mechanische Regelkonzepte nahezu vollständig durch elektronische Steuergeräte verdrängt.
  • Ein dem Stand der Technik entsprechendes Steuergerät besteht aus einem eigenständigen Computer in Form eines eingebetteten Systems. Die Größe dieses Computers variiert je nach Komplexität seiner Aufgaben erheblich und reicht von ein Ein-Chip-Lösungen mit einem Mikrocontroller mit eingebautem RAM- und ROM-Speicher bis hin zu Mehrprozessorsystemen mit Flash-Speicher, dessen Inhalt – etwa in einer qualifizierten Fachwerkstatt – aktualisiert werden kann.
  • DE 10 2011 117 376 A1 offenbart ein Verfahren zum Übernehmen von Programmdaten per Telematik in ein Steuergerät eines Kraftfahrzeugs. Das erfindungsgemäße Verfahren umfasst die Übertragung von neuen Programmdaten mittels Mobilfunk zu einem ersten Speicherbereich eines ersten Steuergeräts, das Übertragen der neuen Programmdaten zu einem Ziel-Steuergerät und eine automatisierte Überprüfung der Funktionalität des Ziel-Steuergeräts, bevor das Kraftfahrzeug wieder freigegeben wird.
  • Offenbarung der Erfindung
  • Die Erfindung stellt ein Verfahren zum Aktualisieren eines Steuergerätes, eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium gemäß den unabhängigen Ansprüchen bereit.
  • Ein Vorzug der hier vertretenen Lösung liegt darin, dass keine Startverzögerung auftreten kann und notfalls mit dem alten – bisher funktionalen – Speicherabbild (image) des Flash-Speichers gearbeitet werden kann.
  • Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Anspruch angegebenen Grundgedankens möglich. So kann vorgesehen sein, dass, wenn das Speicherabbild versagt, der erste Prozessorkern (core) von dem zweiten Block des ersten Flash-Speichers auf den ersten Block des ersten Flash-Speichers umgeschaltet wird. Steuert das Steuergerät einen Fahrzeugmotor, so ermöglicht diese Schaltung eine Aufrechterhaltung der Mototorfunktion, wenn das Speicherabbild eines Blockes im Fahrzeugverbund nicht funktional ist.
  • Kurze Beschreibung der Zeichnungen
  • Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:
  • 1 das Aktivitätsdiagramm eines Verfahrens gemäß einer ersten Ausführungsform der Erfindung.
  • 2 schematisch ein Steuergerät gemäß einer zweiter Ausführungsform der Erfindung.
  • Ausführungsformen der Erfindung
  • 1 illustriert ein Verfahren zum Aktualisieren eines Fahrzeugsteuergerätes gemäß einer Ausführungsform der Erfindung, deren konstruktive Merkmale die 2 widerspiegelt. Das Steuergerät 20 ist demnach mit einem ersten Prozessorkern 21, einem zweiten Prozessorkern 22, einem ersten Flash-Speicher 31 und einem zweiten Flash-Speicher 32 ausgestattet. Hierbei ist der erste Flash-Speicher 31 lokal oder entfernt von dem ersten Prozessorkern 21, letzterem aber jedenfalls zugeordnet. Entsprechend ist der zweite Prozessorkern 22 dem zweiten Flash-Speicher 32 zugeordnet.
  • Der erste Flash-Speicher 31 ist in Form zweier separater Blöcke 41, 42 (mit eigenen Wortleitungstreibern und Leseverstärkern) ausgeführt. Analog ist auch der zweite Flash-Speicher 32 in Form zweier separater Blöcke 43, 44 ausgeführt. Der jeweils erste Block 41, 43 enthält dabei ein erstes Speicherabbild, während der jeweils zweite Block 42, 44 ein zweites Speicherabbild enthält. Es versteht sich, dass anstelle zweier lokaler Flash-Speicher 31, 32 auch ein zentraler Flash-Speicher zum Einsatz kommen oder eine Aufteilung in jeweils mehr als zwei Blöcke erfolgen mag, ohne den Rahmen der Erfindung zu verlassen.
  • In dem in 2 dargestellten Normalbetrieb des Steuergerätes 20 arbeitet der erste Prozessorkern 21 vorwiegend lokal mit dem ersten Flash-Speicher 31, während der zweite Prozessorkern 22 vorwiegend lokal mit dem zweiten Flash-Speicher 32 betrieben wird. Dabei sei dahingestellt, mit welchem Block 41, 42, 43, 44 der erste Prozessorkern 21 und der zweite Prozessorkern 22 jeweils arbeiten (Bezugszeichen 11).
  • Während die betreffende Anwendung ihren Dienst verrichtet, programmiert (Bezugszeichen 12) sie – gleichsam im Hintergrund – bei laufendem Motor den jeweils zweiten Block 42, 44 mit einem aktuellen Speicherabbild. Der zweite Block 42 des ersten Flash-Speichers 31 sowie der zweite Block 44 des zweiten Flash-Speicher 32 können so während des Betriebs des Motors gelöscht und über die Luftschnittstelle (over the air, OTA) des Fahrzeuges umprogrammiert werden.
  • Nach dem Umprogrammieren 12 wird der erste Prozessorkern 21 von dem ersten Block 41 des ersten Flash-Speichers 31 auf den zweiten Block 42 des ersten Flash-Speichers 31 umgeschaltet, während der zweite Prozessorkern 22 seinerseits von dem ersten Block 43 des zweiten Flash-Speichers 32 auf den zweiten Block 44 des zweiten Flash-Speichers 32 umgeschaltet wird (Bezugszeichen 13). Nach diesem Umschalten 13 können auch die jeweils ersten Blöcke 41, 43 mit einem anderen Speicherabbild programmiert werden.
  • Dieses Verfahren 10 kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware in dem Steuergerät 20 implementiert sein.
  • 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
    • DE 102011117376 A1 [0004]

Claims (10)

  1. Verfahren (10) zum Aktualisieren eines Steuergerätes (20) mit einem ersten Prozessorkern (21) und einem dem ersten Prozessorkern (21) zugeordneten ersten Flash-Speicher (31), gekennzeichnet durch folgende Merkmale: – der erste Prozessorkern (21) arbeitet (11) mit einem ersten Block (41) des ersten Flash-Speichers (31), – während des Arbeitens (11) wird ein von dem ersten Block (41) elektronisch getrennter zweiter Block (42) des ersten Flash-Speichers (31) mit einem vorgegebenen Speicherabbild umprogrammiert (12) und – nach dem Umprogrammieren (12) wird der erste Prozessorkern (21) von dem ersten Block (41) des ersten Flash-Speichers (31) auf den zweiten Block (42) des ersten Flash-Speichers (31) umgeschaltet (13).
  2. Verfahren nach Anspruch 1, gekennzeichnet durch folgendes Merkmal: – wenn das Speicherabbild versagt, wird der erste Prozessorkern (21) von dem zweiten Block (42) des ersten Flash-Speichers (31) auf den ersten Block (41) des ersten Flash-Speichers (31) umgeschaltet.
  3. Verfahren nach Anspruch 1 oder 2, gekennzeichnet durch folgende Merkmale: – ein zweiter Prozessorkern (22) des Steuergerätes (20) arbeitet (11) seinerseits mit einem ersten Block (43) eines dem zweiten Prozessorkern (22) zugeordneten zweiten Flash-Speichers (32), – während des Arbeitens (11) wird ferner ein von dem ersten Block (43) elektronisch getrennter zweiter Block (44) des zweiten Flash-Speichers (32) umprogrammiert und – nach dem Umprogrammieren (32) wird der zweite Prozessorkern (22) von dem ersten Block (43) des zweiten Flash-Speichers (32) auf den zweiten Block (44) des zweiten Flash-Speichers (32) umgeschaltet.
  4. Verfahren nach einem der Ansprüche 1 bis 3, gekennzeichnet durch folgendes Merkmal: – das Umschalten (13) erfolgt, wenn das Steuergerät (20) neu gestartet wird.
  5. Verfahren nach Anspruch 4, gekennzeichnet durch folgendes Merkmal: – nach dem Starten wird eine Adressabbildung des Steuergerätes (20) wahlweise geändert oder beibehalten.
  6. Verfahren nach Anspruch 4 oder 5, gekennzeichnet durch folgende Merkmale: – das Steuergerät (20) steuert einen Motor insbesondere eines Fahrzeuges und – das Steuergerät (20) wird mit dem Motor gestartet.
  7. Verfahren nach einem der Ansprüche 1 bis 6, gekennzeichnet durch folgendes Merkmal: – das Aktualisieren erfolgt über eine Luftschnittstelle.
  8. Computerprogramm, welches eingerichtet ist, das Verfahren (10) nach einem der Ansprüche 1 bis 7 auszuführen.
  9. Maschinenlesbares Speichermedium, auf dem das Computerprogramm nach Anspruch 8 gespeichert ist.
  10. Vorrichtung (20), die eingerichtet ist, das Verfahren (10) nach einem der Ansprüche 1 bis 7 auszuführen.
DE102015219841.3A 2015-10-13 2015-10-13 Verfahren und Vorrichtung zum Aktualisieren eines Steuergerätes Pending DE102015219841A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102015219841.3A DE102015219841A1 (de) 2015-10-13 2015-10-13 Verfahren und Vorrichtung zum Aktualisieren eines Steuergerätes
US15/284,632 US10133491B2 (en) 2015-10-13 2016-10-04 Method and apparatus for updating a control device
CN201610889183.6A CN107015822B (zh) 2015-10-13 2016-10-12 用于对控制设备进行更新的方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015219841.3A DE102015219841A1 (de) 2015-10-13 2015-10-13 Verfahren und Vorrichtung zum Aktualisieren eines Steuergerätes

Publications (1)

Publication Number Publication Date
DE102015219841A1 true DE102015219841A1 (de) 2017-04-13

Family

ID=58405917

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015219841.3A Pending DE102015219841A1 (de) 2015-10-13 2015-10-13 Verfahren und Vorrichtung zum Aktualisieren eines Steuergerätes

Country Status (3)

Country Link
US (1) US10133491B2 (de)
CN (1) CN107015822B (de)
DE (1) DE102015219841A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7010049B2 (ja) * 2018-02-16 2022-01-26 トヨタ自動車株式会社 車両制御装置、プログラムの更新確認方法および更新確認プログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011117376A1 (de) 2011-10-28 2012-05-16 Daimler Ag Verfahren zum Übernehmen von Programmdaten per Telematik in ein Steuergerät eines Kraftfahrzeugs mit automatischem Abnahmetest

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10214553A1 (de) * 2002-04-02 2003-10-16 Siemens Ag Einrichtung und Verfahren zur automatischen Generierung von Automatisierungssoftware
WO2005022380A1 (ja) * 2003-08-29 2005-03-10 Ipflex Inc. データ処理装置
US20060069849A1 (en) * 2004-09-30 2006-03-30 Rudelic John C Methods and apparatus to update information in a memory

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011117376A1 (de) 2011-10-28 2012-05-16 Daimler Ag Verfahren zum Übernehmen von Programmdaten per Telematik in ein Steuergerät eines Kraftfahrzeugs mit automatischem Abnahmetest

Also Published As

Publication number Publication date
US20170102875A1 (en) 2017-04-13
CN107015822A (zh) 2017-08-04
US10133491B2 (en) 2018-11-20
CN107015822B (zh) 2022-01-14

Similar Documents

Publication Publication Date Title
DE102013203943A1 (de) Vorrichtung, Verfahren und System zum Verarbeiten von Daten eines Fahrzeugs
DE102017204625A1 (de) Softwarekomponentenzuweisungssystem für ein fahrzeug
DE102013010930A1 (de) Steuervorrichtung und Verfahren zum Betreiben einer Steuervorrichtung eines Kraftfahrzeugs
DE102013221960A1 (de) Verfahren zur personenbezogenen Nutzung eines Kraftfahrzeuges
DE112016005669T5 (de) Bord-Kommunikationseinrichtung, Bord-Kommunikationssystem und Verfahren zum Verbieten spezieller Verarbeitungen für ein Fahrzeug
DE102017217807A1 (de) Verfahren und vorrichtung zum verarbeiten einer software-aktualisierung
DE102017211433A1 (de) Verfahren zum Durchführen eines Funktionstests eines Steuergeräts in einem Hardware-in-the-Loop-Test, HIL-Test, sowie HIL-Prüfstand und Steuergerät
DE102013003493A1 (de) Verfahren zum Bedaten eines Steuergeräts eines Kraftfahrzeugs
DE102008035557A1 (de) Verfahren zum Einbringen von Daten, insbesondere eine Ablaufsteuerung, in mindestens ein erstes und ein zweites Steuergerät eines Kraftfahrzeugs
DE102018211257A1 (de) Verfahren und System zur Datenerfassung in Fahrzeugen
DE102018212560A1 (de) Rechnergestütztes System zum Testen einer servergestützten Fahrzeugfunktion
DE102014018460A1 (de) Verfahren zur Steuerung des Betriebs wenigstens einer Funktionskomponente eines Kraftfahrzeugs und Kraftfahrzeug
DE102015219841A1 (de) Verfahren und Vorrichtung zum Aktualisieren eines Steuergerätes
DE102012211591A1 (de) Verfahren zum Einstellen einer Leistungsklasse
DE102016201769A1 (de) Verfahren zum Aktualisieren von Software eines Steuergerätes, vorzugsweise für ein Kraftfahrzeug
DE102013202193A1 (de) Verfahren und Mittel zum Betreiben eines ersten Kraftfahrzeugs auf Grundlage wenigstens einer Kenngröße wenigstens eines zweiten Kraftfahrzeugs
WO2020099023A2 (de) Steuergerät für eine fahrzeugkomponente, kit umfassend ein steuergerät und eine testereinrichtung, fahrzeug, verfahren zum aktualisieren eines steuergeräts und computerlesbares speichermedium
DE102018003777A1 (de) Verfahren zur Aktualisierung einer Software zumindest eines Steuergeräts eines Fahrzeugs
EP3422300A1 (de) Elektronischer Tachograf und Verfahren zum speichern von Einträgen in einem Elektronischen Tachografen
DE102013214795A1 (de) Tachografenanordnung und Verfahren zum Betreiben einer Tachografenanordnung
DE102015219844A1 (de) Verfahren und Vorrichtung zum verzögerungsfreien Betreiben eines Steuergerätes
DE10228610A1 (de) Verfahren zum Überprüfen eines auf einer elektronischen Recheneinheit ablaufenden Steuerprogramms
DE102015204863A1 (de) Verfahren und Vorrichtung zum Warten eines Fahrzeuges
WO2018050381A1 (de) Verfahren und vorrichtung zum konfigurieren eines fahrzeuges
DE102016008613A1 (de) Verfahren zum Installieren eines Steuerprogramms eines Steuergeräts eines Kraftfahrzeugs und Einsetzvorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed