DE102013021231A1 - Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät - Google Patents

Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät Download PDF

Info

Publication number
DE102013021231A1
DE102013021231A1 DE102013021231.6A DE102013021231A DE102013021231A1 DE 102013021231 A1 DE102013021231 A1 DE 102013021231A1 DE 102013021231 A DE102013021231 A DE 102013021231A DE 102013021231 A1 DE102013021231 A1 DE 102013021231A1
Authority
DE
Germany
Prior art keywords
microprocessor system
block
cores
vehicle
application
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.)
Withdrawn
Application number
DE102013021231.6A
Other languages
English (en)
Inventor
Stefan Diem
Michael Schopper
Jochen Wittner
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.)
Mercedes Benz Group AG
Original Assignee
Daimler AG
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 Daimler AG filed Critical Daimler AG
Priority to DE102013021231.6A priority Critical patent/DE102013021231A1/de
Publication of DE102013021231A1 publication Critical patent/DE102013021231A1/de
Withdrawn 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/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/023Avoiding failures by using redundant parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1633Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components
    • 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/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • 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/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0006Digital architecture hierarchy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time

Abstract

Die Erfindung betrifft ein Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs mittels eines Fahrzeugsteuergeräts (1), welches ein erstes Mikroprozessorsystem (M1) für sicherheitskritische Anwendungen und ein zweites Mikroprozessorsystem (M2), welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem (M1) erfüllt, umfasst, wobei das zweite Mikroprozessorsystem (M2) mit dem ersten Mikroprozessorsystem (M1) kommuniziert. Erfindungsgemäß empfängt das zweite Mikroprozessorsystem (M2) Daten vom ersten Mikroprozessorsystem (M1) und verarbeitet diese weiter. Des Weiteren betrifft die Erfindung ein Fahrzeugsteuergerät (1).

Description

  • Die Erfindung betrifft ein Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs nach den Merkmalen des Oberbegriffs des Anspruchs 1 und ein Fahrzeugsteuergerät nach den Merkmalen des Oberbegriffs des Anspruchs 7.
  • Aus dem Stand der Technik ist, wie in der DE 10 2011 007 437 A1 beschrieben, ein Kraftfahrzeugsteuergerät mit einem ersten Mikroprozessorsystem für sicherheitskritische Anwendungen bekannt. In das Kraftfahrzeugsteuergerät ist ein weiteres mit dem ersten Mikroprozessorsystem kommunizierendes Mikroprozessorsystem integriert, welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem erfüllt.
  • In der DE 103 31 873 A1 wird ein Verfahren zur Überwachung verteilter Software beschrieben. Bei dem Verfahren kommt die Software verteilt auf einer Anzahl von Recheneinheiten zur Ausführung. Dabei ist einer der Recheneinheiten ein Master-Modul und den anderen Recheneinheiten jeweils ein Slave-Modul zugewiesen. Die Überwachung wird durch eine Kommunikation im Master-Slave-Betrieb zwischen dem Master-Modul und den Slave-Modulen durchgeführt.
  • Der Erfindung liegt die Aufgabe zu Grunde, ein gegenüber dem Stand der Technik verbessertes Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und ein gegenüber dem Stand der Technik verbessertes Fahrzeugsteuergerät anzugeben.
  • Die Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs mit den Merkmalen des Anspruchs 1 und ein Fahrzeugsteuergerät mit den Merkmalen des Anspruchs 7.
  • Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche.
  • In einem Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs mittels eines Fahrzeugsteuergeräts, welches ein erstes Mikroprozessorsystem für sicherheitskritische Anwendungen und ein zweites Mikroprozessorsystem, welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem erfüllt, umfasst, kommuniziert das zweite Mikroprozessorsystem mit dem ersten Mikroprozessorsystem.
  • Erfindungsgemäß empfängt das zweite Mikroprozessorsystem Daten vom ersten Mikroprozessorsystem und verarbeitet diese weiter.
  • Durch diese erfindungsgemäße Lösung wird mittels des ersten Mikroprozessorsystems, welches ein hohes Sicherheitslevel aufweist und somit für sicherheitskritische Anwendungen zugelassen ist, die Ausfallsicherheit des Fahrzeugsteuergeräts sichergestellt, d. h. das Steuergerät fällt mit einer sehr hohen Wahrscheinlichkeit nicht aus, wobei bei derartigen für sicherheitskritische Anwendungen zugelassenen Mikroprozessorsystemen beispielsweise gesetzlich zu erfüllende Vorgaben bezüglich dieser Ausfallsicherheit bestehen. Derartige Sicherheitsanforderungen werden beispielsweise als ASIL-Level bezeichnet. Zum Beispiel müssen solche für sicherheitskritische Anwendungen zugelassenen Mikroprozessorsysteme eine ASIL-B Einstufung erreichen.
  • Solche für sicherheitskritische Anwendungen zugelassenen Mikroprozessorsysteme weisen jedoch eine relativ geringe Rechenleistung im Vergleich aller jeweils aktuell verfügbaren Mikroprozessorsysteme auf, so dass bei einem Einsatz lediglich dieser für sicherheitskritische Anwendungen zugelassenen Mikroprozessorsysteme insbesondere rechenleistungsintensive Anwendungen nicht in solche Assistenzsysteme des Fahrzeugs implementiert werden können oder eine erhebliche Rechenzeit erfordern, welche insbesondere bei benötigten schnellen Reaktionen des jeweiligen Assistenzsystems bereits zu lang sein kann.
  • Es sind jedoch Mikroprozessorsysteme verfügbar, welche eine höhere Rechenleistung aufweisen als diese für sicherheitskritische Anwendungen zugelassenen Mikroprozessorsysteme und welche kostengünstig genug sind, um in einem solchen Fahrzeugsteuergerät verwendet werden zu können. Bei der erfindungsgemäßen Lösung weist das Fahrzeugsteuergerät zusätzlich zum für sicherheitskritische Anwendungen zugelassenen ersten Mikroprozessorsystem ein solches zweites Mikroprozessorsystem auf, welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem erfüllt. Dieses zweite Mikroprozessorsystem empfängt im Verfahren Daten vom ersten Mikroprozessorsystem und verarbeitet diese weiter, so dass es das erste Mikroprozessorsystem bei der jeweiligen Datenverarbeitung mit seiner zusätzlichen Rechenleistung unterstützt. Dadurch können auch rechenleistungsintensive Anwendungen im Fahrzeugsteuergerät in einer erforderlich geringen Zeit ausgeführt werden. Die Mikroprozessorsysteme arbeiten dabei zweckmäßigerweise im Master-Slave-Betrieb, wobei das für sicherheitskritische Anwendungen zugelassene erste Mikroprozessorsystem stets der Master und das zweite Mikroprozessorsystem, welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem erfüllt, stets der Slave ist. Nach außen hin, d. h. mit weiteren Komponenten des Fahrzeugs, kommuniziert zweckmäßigerweise stets ausschließlich das für sicherheitskritische Anwendungen zugelassene erste Mikroprozessorsystem. Auf diese Weise ist die hohe Sicherheit, insbesondere die hohe Ausfall- und Fehlersicherheit, welche für solche sicherheitskritischen Anwendungen erforderlich ist, stets sichergestellt. Auf diese Weise erreicht das Fahrzeugsteuergerät weiterhin die für solche sicherheitskritischen Anwendungen erforderliche Sicherheitseinstufung, beispielsweise ASIL-B.
  • Ausführungsbeispiele der Erfindung werden im Folgenden anhand von Zeichnungen näher erläutert.
  • Dabei zeigen:
  • 1 schematisch ein Fahrzeugsteuergerät,
  • 2 schematisch eine Datenverarbeitung in einem Fahrzeugsteuergerät,
  • 3 schematisch ein erster Schritt einer Datenverarbeitung in einem Fahrzeugsteuergerät,
  • 4 schematisch ein zweiter Schritt einer Datenverarbeitung in einem Fahrzeugsteuergerät,
  • 5 schematisch ein dritter Schritt einer Datenverarbeitung in einem Fahrzeugsteuergerät, und
  • 6 schematisch eine Darstellung einer Schutzvorkehrung.
  • Einander entsprechende Teile sind in allen Figuren mit den gleichen Bezugszeichen versehen.
  • 1 zeigt eine schematische Darstellung eines Fahrzeugsteuergerätes 1 zum Betrieb eines Assistenzsystems eines Fahrzeugs, insbesondere eines sicherheitskritischen Assistenzsystems. Unter dem hier verwendeten Begriff Assistenzsystem sind insbesondere Systeme des Fahrzeugs zu verstehen, welche Steuerungs- und oder Regelungseingriffe in einen Antriebsstrang, eine Lenkung und/oder eine Bremsanlage des Fahrzeugs ausführen und/oder Hinweise an einen Fahrzeugführer ausgeben, die zu entsprechenden Steuerungs- und/oder Regelungsbefehlen des Fahrzeugführers an den Antriebsstrang, die Lenkung und/oder die Bremsanlage in Abhängigkeit von den Hinweisen des jeweiligen Assistenzsystems führen, oder auch Systeme, welche bei einer Kollision oder bei einer drohenden Kollision Insassenschutzmittel und/oder Schutzmittel zum Schutz von Personen außerhalb des Fahrzeugs aktivieren. Bei derartigen sicherheitskritischen Assistenzsystemen kann es sich beispielsweise um ein Antiblockiersystem, um ein elektronisches Stabilitätsprogramm, um ein Parkassistenzsystem, um ein Kollisionswarn- und/oder Vermeidungssystem, um ein Totwinkelwarnsystem oder um ein Spurhalteassistenzsystem handeln.
  • Das Fahrzeugsteuergerät 1 umfasst ein erstes Mikroprozessorsystem M1 für sicherheitskritische Anwendungen und ein zweites Mikroprozessorsystem M2, welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem M1 erfüllt und vorteilhafterweise eine höhere Rechenleistung aufweist als das erste Mikroprozessorsystem M1. Dieses zweite Mikroprozessorsystem M2 kommuniziert mit dem ersten Mikroprozessorsystem M1 über eine entsprechende Datenübertragungsverbindung IPC, auch als Interprozesskommunikation bezeichnet. Diese Interprozesskommunikation ist End-To-End abgesichert, d. h. es wird überprüft, ob jeweils empfangene Daten korrekt und fehlerfrei übertragen wurden.
  • In einem Verfahren zum Betrieb des jeweiligen Assistenzsystems des Fahrzeugs mittels dieses Fahrzeugsteuergeräts 1 empfängt das zweite Mikroprozessorsystem M2 über diese Datenübertragungsverbindung IPC Daten vom ersten Mikroprozessorsystem M1 und verarbeitet diese weiter. Nach außen hin, d. h. mit anderen Komponenten des Fahrzeugs, beispielsweise mit zumindest einem weiteren Steuergerät des Fahrzeugs, kommuniziert ausschließlich das erste Mikroprozessorsystem M1, über ein oder mehrere Datenübertragungsleitungen DL und/oder Datenübertragungsschnittstellen, zum Beispiel über einen CAN-Bus des Fahrzeugs. Die beiden Mikroprozessorsysteme M1, M2 arbeiten zweckmäßigerweise im so genannten Master-Slave-Betrieb, wobei das für sicherheitskritische Anwendungen zugelassene erste Mikroprozessorsystem M1 stets der Master ist und das zweite Mikroprozessorsystem M2, welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem M1 erfüllt, stets der Slave ist.
  • Das zweite Mikroprozessorsystem M2 ist als ein Zwei-Kern-Prozessor mit zwei gleichen Kernen K21, K22 ausgebildet. Das erste Mikroprozessorsystem M1 kann ebenfalls als ein Zwei-Kern-Prozessor ausgebildet sein, zweckmäßigerweise auch mit zwei gleichen Kernen, oder beispielsweise, wie im hier dargestellten Beispiel, als ein so genannter TriCore-Prozessor, welcher drei Kerne K11, K12, K13 aufweist.
  • Im zweiten Mikroprozessorsystem M2 wird eine jeweilige Datenverarbeitung redundant durchgeführt. Hierzu wird die gleiche Datenverarbeitung jeweils parallel in beiden Kernen K21, K22 durchgeführt. Wie in 2 gezeigt, werden die Daten im zweiten Mikroprozessorsystem M2 innerhalb eines Applikationszyklus AZ von beiden Kernen K21, K22 jeweils blockweise nacheinander verarbeitet, wobei nach jedem Block BB1, BB2, BB3 von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelte Ausgangsdaten des jeweiligen Blocks BB1, BB2, BB3 miteinander verglichen werden. Das Verarbeiten der Blöcke BB1, BB2, BB3 nacheinander ist in 1 schematisch durch erste Pfeile P1 dargestellt. Das Vergleichen der ermittelten Ausgangsdaten nach jedem Block BB1, BB2, BB3 ist in 1 schematisch durch zweite Pfeile P2 dargestellt.
  • Bei einem erfolgreichen Vergleich, d. h. wenn die von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelten Ausgangsdaten des jeweiligen Blocks BB1, BB2, BB3 identisch sind, so dass festgestellt ist, dass während der Datenverarbeitung des jeweiligen Blocks BB1, BB2, BB3 kein Fehler aufgetreten ist, wird ein jeweils folgender Block BB1, BB2, BB3 durch die beiden Kerne K21, K22 des zweiten Mikroprozessorsystems M2 ausgeführt. Bei einem fehlgeschlagenen Vergleich, d. h. wenn sich die von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelten Ausgangsdaten des jeweiligen Blocks BB1, BB2, BB3 unterscheiden, so dass in der Datenverarbeitung durch mindestens einen der beiden Kerne K21, K22 des zweiten Mikroprozessorsystems M2 ein Fehler aufgetreten ist, wird ein Zustand vor dem jeweils letzten ausgeführten Block BB1, BB2, BB3 wiederhergestellt und dieser Block BB1, BB2, BB3, d. h. die Datenverarbeitung dieses Blocks BB1, BB2, BB3, wird erneut durch die beiden Kerne K21, K22 des zweiten Mikroprozessorsystems M2 ausgeführt.
  • Auf diese Weise wird die vom zweiten Mikroprozessorsystem M2 zu bearbeitende Applikation bis zum Ende, d. h. bis zum letzten Block BB3, von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 abgearbeitet. Da somit mittels des Verfahrens die korrekte fehlerfreie Ausführung der vom zweiten Mikroprozessorsystem M2 zu bearbeitenden Applikation sichergestellt ist, weil diese Applikation auf beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 parallel und somit redundant durchgeführt wird und die Ergebnisse der Datenverarbeitung der beiden Kerne K21, K22 des zweiten Mikroprozessorsystems M2 miteinander verglichen werden, um mögliche Fehler zu ermitteln, ist das Endergebnis dieser Datenverarbeitung durch das zweite Mikroprozessorsystem M2, welches an das erste Mikroprozessorsystem M1 übermittelt wird, fehlerfrei. Daher erfüllt auch diese Datenverarbeitung mittels des zweiten Mikroprozessorsystems M2 gemäß dem beschriebenen Verfahren die Anforderungen an die Fehler- und/oder Ausfallsicherheit beispielweise nach einer jeweils vorgegebenen Sicherheitseinstufung, zum Beispiel nach der ASIL-B Einstufung oder einer anderen ASIL-Einstufung.
  • Um diesen Verarbeitungsablauf im zweiten Mikroprozessorsystem M2 zu ermöglichen, werden somit in beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 folgende Schritte parallel durchgeführt:
    • – Partitionieren der im zweiten Mikroprozessorsystem M2 durchzuführenden Applikation in mehrere Blöcke BB1, BB2, BB3,
    • – Sichern eines Ausgangszustands aller Blöcke BB1, BB2, BB3 vor einer Ausführung der Applikation,
    • – Ausführen der Applikation blockweise,
    • – Durchführen eines Binärvergleichs eines jeweiligen Programmstandes nach jedem Block BB1, BB2, BB3,
    • – Ausführen der Applikation im nächsten Block BB1, BB2, BB3 nach erfolgreichem Binärvergleich.
  • Durch die beiden Mikroprozessorsysteme M1, M2, insbesondere durch die Verwendung des zweiten Mikroprozessorsystems M2, welches zwar einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem M1 erfüllt, aber eine höhere Rechenleistung, vorteilhafterweise eine wesentlich höhere Rechenleistung als das erste Mikroprozessorsystem M1 aufweist, sind mittels dieses Fahrzeugsteuergeräts 1 und dieses Verfahrens auch Applikationen ausführbar, welche hohe Anforderungen hinsichtlich der Rechenleistung stellen. Dennoch wird eine erforderliche Sicherheitseinstufung des Fahrzeugsteuergeräts 1 bezüglich einer Ausfall- und/oder Fehlersicherheit erfüllt, beispielsweise ein so genanntes ASIL-Level, beispielsweise eine ASIL-B Einstufung. Hierzu wird die jeweilige Anwendungssoftware, d. h. die jeweilige Applikation, wie bereits beschrieben, auf den beiden gleich ausgebildeten Kernen K21, K22 des zweiten Mikroprozessorsystems M2 parallel ausgeführt. Diese Ausführung erfolgt innerhalb eines Applikationszyklus AZ von beispielsweise 20 ms blockweise. Die Bearbeitungszeit jedes Blocks BB1, BB2, BB3 beträgt beispielsweise 2 ms. Nach jedem Block BB1, BB2, BB3 werden die mit den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelten Ausgangsdaten verglichen. Beim erfolgreichen Vergleich wird der nächste Block BB1, BB2, BB3 ausgeführt. Bei einem fehlgeschlagenen Vergleich wird der Zustand wie vor dem zuletzt ausgeführten Block BB1, BB2, BB3 wieder hergestellt und der jeweilige Block BB1, BB2, BB3 wird erneut ausgeführt. Eine Laufzeitreserve des Applikationszyklus AZ ist dabei derart vorgegeben, dass sie zur Wiederholung der Ausführung zumindest eines Blocks BB1, BB2, BB3 oder mehrerer Blöcke BB1, BB2, BB3 und der hierfür erforderlichen zusätzlichen Rechenzeit ausreicht.
  • Auf diese Weise kann eine als ASIL-B eingestufte Software oder eine andere sicherheitsrelevante Software mittels dieses Fahrzeugsteuergeräts 1 und mittels dessen zweitem Mikroprozessorsystem M2, welches nicht nach für sicherheitskritische Anwendungen erforderlichen Prozessen, beispielsweise ISO26262, entwickelt wurde, ausgeführt werden. Bei auftretenden Fehlern erfolgt eine Fehlerbehebung innerhalb des Applikationszyklus AZ und ist somit nach außen hin nicht sichtbar. Der Mechanismus kann vollständig in der Laufzeitumgebung umgesetzt werden und ist damit für die eigentliche Applikation transparent. Diese Vorgehensweise hat keinen Einfluss auf die Algorithmen, da keine diversitäre Berechnung, keine Plausibilisierung oder ähnliches erforderlich ist. Es wird eine Steigerung der Robustheit erzielt durch eine, nach außen hin nicht sichtbare, Korrektur von Fehlern mittels der blockweisen Ausführung der Applikation. Das Verfahren ermöglicht somit eine größere Auswahl von für das Fahrzeugsteuergerät 1 verfügbaren Mikroprozessoren insbesondere höherer Leistungsklassen. Damit können zukünftige Assistenzsystemanwendungen realisiert werden, die ansonsten nicht oder nur mit einem deutlich höheren Aufwand entwickelt werden könnten.
  • Im Folgenden wird ein Ausführungsbeispiel des Verfahrens anhand der Figuren näher beschrieben. Wie bereits erläutert, weist das in 1 dargestellte Fahrzeugsteuergerät 1 das für sicherheitskritische Anwendungen zugelassene erste Mikroprozessorsystem M1 und das zweite Mikroprozessorsystem M2 auf, welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem M1 erfüllt. Die Mikroprozessorsysteme M1, M2 arbeiten im Master-Slave-Prinzip, wobei das erste Mikroprozessorsystem M1 der Master und das zweite Mikroprozessorsystem M2 der Slave ist. Die beiden Mikroprozessorsysteme M1, M2 kommunizieren über die Datenübertragungsverbindung IPC miteinander, auch als Interprozesskommunikation bezeichnet. Diese Kommunikation ist End-To-End abgesichert, d. h. es wird überprüft, ob jeweils empfangene Daten korrekt und fehlerfrei übertragen wurden. Das erste Mikroprozessorsystem M1 ist, wie bereits beschrieben, über eine Datenübertragungsleitung DL, beispielsweise über einen CAN-Bus, mit einer oder mehreren Komponenten des Fahrzeugs verbunden, beispielsweise mit einem anderen Steuergerät.
  • Das erste Mikroprozessorsystem M1 ist, wie bereits beschrieben, im hier dargestellten Beispiel als ein so genannter TriCore-Prozessor ausgebildet, d. h. als ein Mikroprozessor mit drei vorteilhafterweise gleich ausgebildeten Kernen K11, K12, K13. Dieses erste Mikroprozessorsystem M1 ist nach ISO26262 entwickelt und ist für sicherheitskritische Applikationen bis ASIL-D geeignet, weist jedoch eine im Vergleich zum zweiten Mikroprozessorsystem M2 geringe Rechenleistung auf.
  • Das zweite Mikroprozessorsystem M2 ist als ein Zwei-Kern-Prozessor mit zwei gleichen Kernen K21, K22 ausgebildet, als ein so genannter Dual-Core Prozessor. Dieses zweite Mikroprozessorsystem M2 ist nicht nach ISO26262 entwickelt und verfügt nicht über Hardware-Core-Tests. Es weist einen L1-Cache, einen L2-Cache und einen L3-Cache auf, wobei auf dem L1-Cache und dem L2-Cache keine Fehlererkennung von Speicherfehlern (ECC = Error Correction Code) durchgeführt wird, sondern nur auf dem L3-Cache und einem externen Speicher.
  • Durch die oben beschriebene redundante Berechnung der Applikation und den Vergleich der Ergebnisse werden jedoch alle permanenten und transienten Fehler der Kerne K21, K22 und der Speicher des zweiten Mikroprozessorsystems M2 erkannt, so dass mittels des Verfahrens auch bei diesem zweiten Mikroprozessorsystem M2 das ASIL-B Sicherheitslevel erreicht wird. Zwar weisen die großen Caches des zweiten Mikroprozessorsystems M2 ohne die Fehlererkennung eine hohe Einzelfehlerrate auf, was zu einer hohen Ausfallrate des Gesamtsystems führen kann. Jedoch erfolgt bei auftretenden Fehlern eine Fehlerbehebung innerhalb des Applikationszyklus AZ und ist somit nach außen hin nicht sichtbar, so dass auch bei aufgetretenen Fehlern die Applikation innerhalb des Applikationszyklus AZ korrekt abgeschlossen wird. Im ersten Kern K11 des ersten Mikroprozessorsystems M1 wird eine Standardsoftware ausgeführt, auch als Rahmensoftware RSW bezeichnet. Diese bildet eine Anwendungsumgebung für die Applikation des jeweiligen Assistenzsystems. Bei dieser Applikation handelt es sich im hier dargestellten Beispiel um eine als ASIL-B eingestufte Applikation, d. h. um eine sicherheitskritische Applikation mit einem entsprechenden Sicherheitslevel. Ein erster Teil A1 und ein zweiter Teil A2 dieser Applikation werden im zweiten Kern K12 bzw. im dritten Kern K13 des ersten Mikroprozessorsystems M1 verarbeitet. Ein dritter Teil A3 der Applikation wird vom ersten Mikroprozessorsystem M1 an das zweite Mikroprozessorsystem M2 übertragen und dort parallel und blockweise in dessen beiden Kernen K21, K22 verarbeitet, wobei nach jedem Block BB1, BB2, BB3 von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelte Ausgangsdaten des jeweiligen Blocks BB1, BB2, BB3 miteinander verglichen werden. Diese Datenverarbeitung im zweiten Mikroprozessorsystem M2 ist in 2 detailliert dargestellt.
  • Es werden in beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 folgende Schritte parallel durchgeführt:
    • – Partitionieren der Applikation in mehrere Blöcke BB1, BB2, BB3, im hier dargestellten Beispiel in drei Blöcke BB1, BB2, BB3, die beispielsweise jeweils maximal zwei Millisekunden Bearbeitungszeit erfordern.
    • – Sichern eines Ausgangszustands aller Blöcke BB1, BB2, BB3 in einem Sicherungsschritt S vor einer Ausführung der Applikation, zu Beginn des Applikationszyklus AZ, welcher beispielsweise eine Zykluslänge von 20 ms aufweist, d. h. die Eingangsstrukturen und Ausgangsstrukturen und internen Zustände der Blöcke BB1, BB2, BB3 sind klar in einem RAM-Speicher RS separiert. Der RAM-Speicher RS ist der L3-Cache oder ein externer Speicher, welcher eine Fehlererkennung von Speicherfehlern (ECC = Error Correction Code) aufweist.
    • – Ausführen der Applikation blockweise,
    • – Durchführen eines Binärvergleichs eines jeweiligen Programmstandes nach jedem Block BB1, BB2, BB3, auch als Output-Vergleich OV bezeichnet. Dieser Binärvergleich, d. h. der Vergleich der von den beiden Kernen K21, K22 ermittelten Ausgangsdaten des jeweiligen Blocks BB1, BB2, BB3, findet parallel auf beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 statt.
    • – Ausführen der Applikation im nächsten Block BB1, BB2, BB3 nach erfolgreichem Binärvergleich, d. h. der jeweils nächste Block BB1, BB2, BB3 wird erst dann gestartet, wenn beide Kerne K21, K22, des zweiten Mikroprozessorsystems M2 die Ausgangsdaten erfolgreich verglichen haben. Bei einem fehlgeschlagenen Vergleich muss der jeweilige Block BB1, BB2, BB3 wiederholt werden. Hierzu wird der Zustand wie vor der Ausführung des jeweiligen Blocks BB1, BB2, BB3, bei welchem der Vergleich fehlgeschlagen ist, wiederhergestellt und der Block BB1, BB2, BB3 wird nochmals ausgeführt.
  • Im hier dargestellten Beispiel wird zunächst der erste Block BB1 in beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 parallel ausgeführt. Die Ausgangsdaten werden im RAM-Speicher RS gesichert und es erfolgt der Output-Vergleich OV dieser Ausgangsdaten. Das jeweilige Sichern der Ausgangsdaten im RAM-Speicher RS ist in 2 durch dritte Pfeile P3 angedeutet. Im hier dargestellten Beispiel sind die Ausgangsdaten vom ersten Block BB1 identisch, so dass mit dem zweiten Block BB2 fortgefahren wird. Auch dieser zweite Block BB2 wird von beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 parallel ausgeführt. Die Ausgangsdaten werden im RAM-Speicher RS gesichert und es erfolgt ein Vergleich dieser Ausgangsdaten, d. h. erneut ein Output-Vergleich OV.
  • In diesem Beispiel wird dabei festgestellt, dass die Ausgangsdaten voneinander abweichen, d. h. der Vergleich ist fehlgeschlagen, schematisch dargestellt durch einen Störungspfeil SP. Daher muss dieser zweite Block BB2 wiederholt werden. Hierzu wird der zweite Bock BB2 in einem Wiederherstellungsschritt W selektiv wiederhergestellt, d. h. der Zustand wie vor dem Ablauf des zweiten Blocks BB2 wird wieder hergestellt, und der zweite Block BB2 wird erneut ausgeführt. Die Ausgangsdaten werden im RAM-Speicher RS gesichert und es erfolgt ein Vergleich dieser Ausgangsdaten, d. h. wieder ein Output-Vergleich OV. Die zusätzlichen Schritte bei einer festgestellten Abweichung der Ausgangsdaten der beiden Kerne K21, K22 des zweiten Mikroprozessorsystems M2 sind durch eine Klammer K markiert.
  • Im hier dargestellten Beispiel sind nun die Ausgangsdaten vom zweiten Block BB2 identisch, so dass mit dem dritten Block BB3 fortgefahren wird. Die Ausgangsdaten werden im RAM-Speicher RS gesichert und es erfolgt ein Vergleich dieser Ausgangsdaten des dritten Blocks BB3, d. h. erneut ein Output-Vergleich OV. Im hier dargestellten Beispiel sind die Ausgangsdaten vom dritten Block BB3 identisch, so dass die Berechnung des auf dem zweiten Mikroprozessorsystem M2 durchzuführenden dritten Teils A3 der Applikation innerhalb des Applikationszyklus AZ von in diesem Beispiel 20 ms abgeschlossen ist. Ergebnisdaten, welche das Ergebnis der Berechnung des letzten Blocks BB3 darstellen, werden aus dem RAM-Speicher RS ausgelesen, angedeutet durch einen vierten Pfeil P4, und über die Datenübertragungsverbindung IPC an das erste Mikroprozessorsystem M1 als End-To-End abgesichertes Datenpaket übertragen. Der Applikationszyklus AZ ist derart vorgegeben, dass eine Restlaufzeit ausreichend groß ist, um zumindest den längsten Block BB1, BB2, BB3 einmal erneut berechnen zu können und dadurch den Applikationszyklus AZ nicht zu überschreiten. Dadurch ist die Fehlerbehandlung ohne sichtbaren Einfluss nach außen hin ermöglicht.
  • In den 3 bis 5 sind ein interner RAM-Speicher IRS des zweiten Mikroprozessorsystems M2 und der Verlauf der Datenverarbeitung dargestellt. Der interne RAM-Speicher IRS weist einen ersten Speicherbereich SB1 auf, in welchem der Programmcode des dritten Teils A3 der Applikation abgelegt ist und dort unverändert verbleibt. Des Weiteren weist der interne RAM-Speicher IRS für beide Kerne K21, K22 des zweiten Mikroprozessorsystems M2 jeweils einen Kernspeicherbereich SK1, SK2 auf.
  • Diese Kernspeicherbereiche SK1, SK2 sind jeweils unterteilt in einen Arbeitsbereich SK1A, SK2A und einen so genannten Backup-Bereich SK1B, SK2B. Zunächst wird, wie in 3 gezeigt, der Programmcode dieses dritten Teils A3 der Applikation im Arbeitsbereich SK1A, SK2A beider Kernspeicherbereiche SK1, SK2 abgelegt. Zudem wird in einem Kopierschritt KS eine Kopie dieses Programmcodes des dritten Teils A3 der Applikation erstellt und im jeweiligen Backup-Bereich SK1B, SK2B abgelegt. Danach wird die Applikation blockweise durchgeführt und die Ergebnisse werden miteinander verglichen. Bei erfolgreichem Vergleich wird der nächste Block BB1, BB2, BB3 ausgeführt.
  • Der Vergleich der von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelten Ausgangsdaten, d. h. der Output-Vergleich OV, ist in 4 anhand des zweiten Blocks BB2 dargestellt, d. h. im hier dargestellten Beispiel ist die Verarbeitung des ersten Blocks BB1 bereits abgeschlossen und der Vergleich der Ergebnisse dieses ersten Blocks BB1 war erfolgreich, wie zu 2 bereits beschrieben. Daher wurde die Verarbeitung des zweiten Blocks BB2 durchgeführt und in 4 ist der Output-Vergleich OV des zweiten Blocks BB2 dargestellt. Wie bereits zu 2 beschrieben, weichen die von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelten Ausgangsdaten des zweiten Blocks BB2 voneinander ab. Daher wird nun, wie in 5 gezeigt, mittels der im jeweiligen Backup-Bereich SK1B, SK2B gespeicherten Kopie des zweiten Blocks BB2 im Wiederherstellungsschritt W der zweite Block BB2 im jeweiligen Arbeitsbereich SK1A, SK2A wiederhergestellt und erneut verarbeitet. Sollte ein Speicherfehler, beispielsweise ein so genannter Cache-Invalidate, auftreten, so kann der Programmcode im ersten Speicherbereich SB1 aus dem externen RAM-Speicher RS wiederhergestellt werden.
  • Fehler, welche zu unterschiedlichen Ergebnissen der beiden Kerne K21, K22 des zweiten Mikroprozessorsystems M2 führen können, sind beispielsweise Bitfehler auf dem Daten-RAM, d. h. auf dem internen RAM-Speicher IRS, aber auch beispielsweise ein Programmabbruch (beispielsweise Undefined Instruction oder Data Abort oder ähnliches), oder transiente Fehler im jeweiligen Kern K21, K22 des zweiten Mikroprozessorsystems M2 oder Bitfehler im Instruktionscache. Auch dabei erfolgt ein Wiederherstellen des jeweiligen Blocks BB1, BB2, BB3 nach dem jeweiligen Output-Vergleich OV und dem Feststellen der Abweichung. Sind die von den beiden Kernen K21, K22 des zweiten Mikroprozessorsystems M2 ermittelten Ausgangsdaten des jeweiligen Blocks BB1, BB2, BB3 unterschiedlich, wird der Unterschied durch den Binärvergleich erkannt. Es erfolgt daher das selektive Wiederherstellen des jeweiligen Blocks BB1, BB2, BB3 analog zu Fehlern der Daten. Wird dadurch ein Speicherfehler auf dem L1-Cache oder L2-Cache erkannt, d. h. ein so genanntes L1/L2 Cache-Invalidate, wird gleichzeitig der korrekte Programmcode wieder aus dem ECC-abgesicherten L3-Cache oder externen RAM-Speicher RS geladen.
  • In 5 sind anhand des Beispiels der Bearbeitung des zweiten Blocks BB2 im ersten Kern K21 des zweiten Mikroprozessorsystems M2 Speicherschutzvorschriften dargestellt, welche ein Verändern anderer, gerade nicht bearbeiteter Blöcke BB1, BB3 verhindern. Während der Bearbeitung des jeweiligen Blocks BB2 hat der erste Kern K21 des zweiten Mikroprozessorsystems M2 lediglich Zugriff auf seinen Arbeitsbereich, d. h. auf den ersten Arbeitsbereich SK1A. Auf einen Rahmensoftwarebereich RSB, auf den Bereich des zweiten Kerns K22 und auf den eigenen Backup-Bereich, d. h. auf den ersten Backup-Bereich SK1B, hat der erste Kern K21 keinen Zugriff, d. h. weder einen Lesezugriff noch einen Schreibzugriff. Diese Bereiche, auf welche der erste Kern K21 keinen Zugriff hat, sind mit dem Bezugszeichen KZ gekennzeichnet. Des Weiteren hat der erste Kern K21 auch in seinem Arbeitsbereich, d. h. im ersten Arbeitsbereich SK1A, lediglich auf den zweiten Block BB2, welcher gerade bearbeitet wird, einen Lese- und Schreibzugriff, hier mit dem Bezugszeichen RW gekennzeichnet. Dieser zweite Block BB2 wird aktuell bearbeitet und darf daher auch überschrieben werden. Auf die Speicherbereiche der anderen Blöcke BB1, BB3 im ersten Arbeitsbereich SK1A hat der erste Kern K21 lediglich einen Lesezugriff, mit dem Bezugszeichen R gekennzeichnet.
  • Dies gilt analog auch für den zweiten Kern K22. D. h. die beiden Kerne K21, K22 haben jeweils lediglich einen Lese- und Schreibzugriff auf die Speicherbereiche ihres jeweiligen Arbeitsbereichs SK1A, SK2A, in welchem der jeweilige Block BB1, BB2, BB3 abgelegt ist, der gerade bearbeitet wird. Auf die anderen Speicherbereiche ihres eigenen Arbeitsbereichs SK1A, SK2A haben sie lediglich einen Lesezugriff und auf alle anderen Speicherbereiche haben sie keinen Zugriff.
  • D. h. die Rahmensoftware RSW konfiguriert eine so genannte Memory Management Unit (MMU) entsprechend des Programmflusses der Applikation. Im hier dargestellten Beispiel wird während der Ausführung des zweiten Blocks BB2 der Lese- und Schreibzugriff für den jeweiligen Kern K21, K22 nur für die Daten des zweiten Blocks BB2 im jeweiligen Arbeitsbereich SK1A, SK2A des Kerns K21, K22 freigeschaltet. Für die anderen Blöcke BB1, BB3 wird für den jeweiligen Kern K21, K22 nur der Lesezugriff in dessen Arbeitsbereich SK1A, SK2A freigeschaltet. Somit erfolgen Schreibzugriffe nur auf Daten im jeweils bearbeiteten Block BB2. Auch indirekte Schreibzugriffe über Methodenaufrufe in anderen Blöcken BB1, BB3 sind nicht zulässig. Der Zugriff auf die restlichen Speicherbereiche, d. h. auf den Backup-Bereich SK1B, SK2B des jeweiligen Kerns K21, K22 sowie auf den Speicherbereich des jeweiligen anderen Kerns K22, K21 und auf den Rahmensoftwarebereich RSB wird verhindert. Dieser Speicherschutz ist notwendig, damit der Zustand der gesamten Applikation durch das selektive Zurücksetzen des Zustands eines jeweiligen Blocks BB1, BB2, BB3 wiederhergestellt werden kann.
  • Bezugszeichenliste
  • 1
    Fahrzeugsteuergerät
    A1
    erster Teil der Applikation
    A2
    zweiter Teil der Applikation
    A3
    dritter Teil der Applikation
    AZ
    Applikationszyklus
    BB1
    erster Block
    BB2
    zweiter Block
    BB3
    dritter Block
    DL
    Datenübertragungsleitung
    IPC
    Datenübertragungsverbindung
    IRS
    interner RAM-Speicher
    K
    Klammer
    K11
    erster Kern des ersten Mikroprozessorsystems
    K12
    zweiter Kern des ersten Mikroprozessorsystems
    K13
    dritter Kern des ersten Mikroprozessorsystems
    K21
    erster Kern des zweiten Mikroprozessorsystems
    K22
    zweiter Kern des zweiten Mikroprozessorsystems
    KS
    Kopierschritt
    KZ
    kein Zugriff
    M1
    erstes Mikroprozessorsystem
    M2
    zweites Mikroprozessorsystem
    OV
    Output-Vergleich
    P1
    erster Pfeil
    P2
    zweiter Pfeil
    P3
    dritter Pfeil
    P4
    vierter Pfeil
    R
    Lesezugriff
    RSW
    Rahmensoftware
    RS
    RAM-Speicher
    RSB
    Rahmensoftwarebereich
    RW
    Lese- und Schreibzugriff
    S
    Sicherungsschritt
    SB1
    erster Speicherbereich
    SK1
    erster Kernspeicherbereich
    SK2
    zweiter Kernspeicherbereich
    SK1A
    erster Arbeitsbereich
    SK2A
    zweiter Arbeitsbereich
    SK1B
    erster Backup-Bereich
    SK2B
    zweiter Backup-Bereich
    SP
    Störungspfeil
    W
    Wiederherstellungsschritt
  • 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 102011007437 A1 [0002]
    • DE 10331873 A1 [0003]
  • Zitierte Nicht-Patentliteratur
    • ISO26262 [0030]
    • ISO26262 [0032]
    • ISO26262 [0033]

Claims (10)

  1. Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs mittels eines Fahrzeugsteuergeräts (1), welches – ein erstes Mikroprozessorsystem (M1) für sicherheitskritische Anwendungen und – ein zweites Mikroprozessorsystem (M2), welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem (M1) erfüllt, umfasst, wobei das zweite Mikroprozessorsystem (M2) mit dem ersten Mikroprozessorsystem (M1) kommuniziert, dadurch gekennzeichnet, dass – das zweite Mikroprozessorsystem (M2) Daten vom ersten Mikroprozessorsystem (M1) empfängt und weiterverarbeitet.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass ausschließlich das erste Mikroprozessorsystem (M1) mit zumindest einem weiteren Steuergerät und/oder zumindest einer anderen Komponente des Fahrzeugs kommuniziert.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Daten im zweiten Mikroprozessorsystem (M2) redundant verarbeitet werden.
  4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Daten im zweiten Mikroprozessorsystem (M2) mittels eines Zwei-Kern-Prozessors mit zwei gleichen Kernen (K21, K22) verarbeitet werden.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass die Daten im zweiten Mikroprozessorsystem (M2) innerhalb eines Applikationszyklus (AZ) von beiden Kernen (K21, K22) jeweils blockweise verarbeitet werden, wobei nach jedem Block (BB1, BB2, BB3) von den beiden Kernen (K21, K22) ermittelte Ausgangsdaten des jeweiligen Blocks (BB1, BB2, BB3) miteinander verglichen werden, wobei bei einem erfolgreichen Vergleich ein folgender Block (BB1, BB2, BB3) durch die beiden Kerne (K21, K22) ausgeführt wird und bei einem fehlgeschlagenen Vergleich ein Zustand vor dem jeweils letzten ausgeführten Block (BB1, BB2, BB3) wiederhergestellt wird und dieser Block (BB1, BB2, BB3) erneut durch die beiden Kerne (K21, K22) ausgeführt wird.
  6. Verfahren nach Anspruch 4 oder 5, dadurch gekennzeichnet, dass in beiden Kernen (K21, K22) des zweiten Mikroprozessorsystems (M2) folgende Schritte parallel durchgeführt werden: – Partitionieren einer Applikation in mehrere Blöcke (BB1, BB2, BB3), – Sichern eines Ausgangszustands aller Blöcke (BB1, BB2, BB3) vor einer Ausführung der Applikation, – Ausführen der Applikation blockweise, – Durchführen eines Binärvergleichs eines jeweiligen Programmstandes nach jedem Block (BB1, BB2, BB3), – Ausführen der Applikation im nächsten Block (BB1, BB2, BB3) nach erfolgreichem Binärvergleich.
  7. Fahrzeugsteuergerät (1) für ein Fahrzeug, insbesondere zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 6, umfassend – ein erstes Mikroprozessorsystem (M1) für sicherheitskritische Anwendungen und – ein mit dem ersten Mikroprozessorsystem (M1) kommunizierendes zweites Mikroprozessorsystem (M2), welches einen niedrigeren Sicherheitslevel als das erste Mikroprozessorsystem (M1) erfüllt, dadurch gekennzeichnet, dass – das zweite Mikroprozessorsystem (M2) dazu eingerichtet ist, Daten vom ersten Mikroprozessorsystem (M1) zu empfangen und weiterzuverarbeiten.
  8. Fahrzeugsteuergerät (1) nach Anspruch 7, dadurch gekennzeichnet, dass es dazu eingerichtet ist, dass ausschließlich das erste Mikroprozessorsystem (M1) mit zumindest einem weiteren Steuergerät und/oder zumindest einer anderen Komponente des Fahrzeugs kommuniziert.
  9. Fahrzeugsteuergerät (1) nach Anspruch 7 oder 8, dadurch gekennzeichnet, dass das zweite Mikroprozessorsystem (M2) als ein Zwei-Kern-Prozessor mit zwei gleichen Kernen (K21, K22) ausgebildet ist.
  10. Fahrzeugsteuergerät (1) nach einem der Ansprüche 7 bis 9, dadurch gekennzeichnet, dass das zweite Mikroprozessorsystem (M2) für eine redundante Datenverarbeitung eingerichtet ist.
DE102013021231.6A 2013-12-13 2013-12-13 Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät Withdrawn DE102013021231A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102013021231.6A DE102013021231A1 (de) 2013-12-13 2013-12-13 Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102013021231.6A DE102013021231A1 (de) 2013-12-13 2013-12-13 Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät

Publications (1)

Publication Number Publication Date
DE102013021231A1 true DE102013021231A1 (de) 2015-06-18

Family

ID=53192014

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013021231.6A Withdrawn DE102013021231A1 (de) 2013-12-13 2013-12-13 Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät

Country Status (1)

Country Link
DE (1) DE102013021231A1 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017021507A1 (de) * 2015-08-06 2017-02-09 Continental Automotive Gmbh Verfahren zum betreiben einer steuervorrichtung und diagnosesystem
DE102017202022A1 (de) 2017-02-09 2018-08-09 Audi Ag Kraftfahrzeug mit einem fahrzeuginternen Datennetzwerk sowie Verfahren zum Betreiben des Kraftfahrzeugs
WO2018233934A1 (de) * 2017-06-19 2018-12-27 Zf Friedrichshafen Ag Vorrichtung und verfahren zum ansteuern eines fahrzeugmoduls
CN113353093A (zh) * 2021-08-10 2021-09-07 北汽福田汽车股份有限公司 车辆的控制方法、装置和车辆

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10331873A1 (de) 2003-07-14 2005-02-17 Robert Bosch Gmbh Verfahren zur Überwachung verteilter Software
DE102011007437A1 (de) 2010-11-15 2012-05-16 Continental Teves Ag & Co. Ohg Verfahren und Schaltungsanrodnung zur Datenübertragung zwischen Prozessorbausteinen

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10331873A1 (de) 2003-07-14 2005-02-17 Robert Bosch Gmbh Verfahren zur Überwachung verteilter Software
DE102011007437A1 (de) 2010-11-15 2012-05-16 Continental Teves Ag & Co. Ohg Verfahren und Schaltungsanrodnung zur Datenübertragung zwischen Prozessorbausteinen

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ISO26262

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017021507A1 (de) * 2015-08-06 2017-02-09 Continental Automotive Gmbh Verfahren zum betreiben einer steuervorrichtung und diagnosesystem
CN107921966A (zh) * 2015-08-06 2018-04-17 大陆汽车有限公司 用于运行控制装置的方法以及诊断系统
CN107921966B (zh) * 2015-08-06 2021-03-09 大陆汽车有限公司 用于运行控制装置的方法以及诊断系统
DE102017202022A1 (de) 2017-02-09 2018-08-09 Audi Ag Kraftfahrzeug mit einem fahrzeuginternen Datennetzwerk sowie Verfahren zum Betreiben des Kraftfahrzeugs
WO2018146169A1 (de) 2017-02-09 2018-08-16 Audi Ag Kraftfahrzeug mit einem fahrzeuginternen datennetzwerk sowie verfahren zum betreiben des kraftfahrzeugs
WO2018233934A1 (de) * 2017-06-19 2018-12-27 Zf Friedrichshafen Ag Vorrichtung und verfahren zum ansteuern eines fahrzeugmoduls
CN113353093A (zh) * 2021-08-10 2021-09-07 北汽福田汽车股份有限公司 车辆的控制方法、装置和车辆
CN113353093B (zh) * 2021-08-10 2021-12-10 北汽福田汽车股份有限公司 车辆的控制方法、装置和车辆

Similar Documents

Publication Publication Date Title
EP2641176B1 (de) Mikroprozessorsystem mit fehlertoleranter architektur
EP2823430B1 (de) Elektronisches regelungssystem
DE102014201682A1 (de) Verfahren zur Koexistenz von Software mit verschiedenen Sicherheitsstufen in einem Multicore-Prozessorsystem
EP2513796B1 (de) Verfahren zum betreiben einer recheneinheit
DE102006051434A1 (de) Verfahren und System zum Ausführen funktionsspezifischer Speicherüberprüfungen in einem fahrzeugbasierten Steuersystem
DE102015003194A1 (de) Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern
EP1854007A2 (de) Verfahren, betriebssysem und rechengerät zum abarbeiten eines computerprogramms
DE102009000045A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuergerätes
EP1810139B1 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
DE102013021231A1 (de) Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät
DE102012207215A1 (de) Verfahren und Vorrichtung zur Überwachung von Funktionen eines Rechnersystems, vorzugsweise eines Motorsteuersystems eines Kraftfahrzeuges
DE102008004205A1 (de) Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen
DE102006056668A1 (de) Verfahren zum Sicherstellen oder Aufrechterhalten der Funktion eines komplexen sicherheitskritischen Gesamtsystems
EP1588380B1 (de) Verfahren zur erkennung und/oder korrektur von speicherzugriffsfehlern und elektronische schaltungsanordnung zur durchführung des verfahrens
DE102008004206A1 (de) Anordnung und Verfahren zur Fehlererkennung und -behandlung in einem Steuergerät in einem Kraftfahrzeug
DE102017219241A1 (de) Verfahren und Halbleiterschaltkreis zum Schützen eines Betriebssystems eines Sicherheitssystems eines Fahrzeugs
EP1894101A1 (de) Verfahren und vorrichtung zum überwachen eines unerlaubten speicherzugriffs einer rechenvorrichtung, insbesondere in einem kraftfahrzeug
DE102013202961A1 (de) Verfahren zum Überwachen eines Stackspeichers in einem Betriebssystem eines Steuergeräts eines Kraftfahrzeuges
DE102021202935A1 (de) Verfahren und Vorrichtung zum Steuern einer Fahrfunktion
EP1812853A2 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
DE1966991A1 (de) Ausfallgesicherte datenverarbeitungsanlage
DE102015218882A1 (de) Verfahren und Vorrichtung zum Prüfen von Berechnungsergebnissen in einem System mit mehreren Recheneinheiten
WO2017153411A1 (de) Verfahren zum betreiben eines steuergeräts für ein kraftfahrzeug
DE102013202482A1 (de) Fehlersignalbehandlungseinheit, Gerät und Methode zur Ausgabe eines Fehlerzustandssignals
DE102017212560A1 (de) Verfahren zum ausfallsicheren Durchführen einer sicherheitsgerichteten Funktion

Legal Events

Date Code Title Description
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee