DE102010042574A1 - Verfahren zum Betreiben eines Mikrocontrollers für ein Automobil und Mikrocontroller - Google Patents

Verfahren zum Betreiben eines Mikrocontrollers für ein Automobil und Mikrocontroller Download PDF

Info

Publication number
DE102010042574A1
DE102010042574A1 DE102010042574A DE102010042574A DE102010042574A1 DE 102010042574 A1 DE102010042574 A1 DE 102010042574A1 DE 102010042574 A DE102010042574 A DE 102010042574A DE 102010042574 A DE102010042574 A DE 102010042574A DE 102010042574 A1 DE102010042574 A1 DE 102010042574A1
Authority
DE
Germany
Prior art keywords
functions
microcontroller
ram
access
controlling
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.)
Granted
Application number
DE102010042574A
Other languages
English (en)
Other versions
DE102010042574B4 (de
Inventor
Dr. Meier Wolfgang
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.)
Vitesco Technologies GmbH
Original Assignee
Continental Automotive 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 Continental Automotive GmbH filed Critical Continental Automotive GmbH
Priority to DE102010042574.5A priority Critical patent/DE102010042574B4/de
Publication of DE102010042574A1 publication Critical patent/DE102010042574A1/de
Application granted granted Critical
Publication of DE102010042574B4 publication Critical patent/DE102010042574B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Microcomputers (AREA)

Abstract

Bereitgestellt ist ein Verfahren zum Betreiben eines Mikrocontrollers, insbesondere eines Mikrocontrollers eines Automobils, wobei der Mikrocontroller einen ROM und einen RAM aufweist, wobei das Verfahren aufweist: Ausführen, mittels des Mikrocontrollers, von ersten Funktionen (10), zweiten Funktionen (20) und dritten Funktionen (30), wobei die ersten Funktionen eine geringste Zuverlässigkeitsanforderung und die dritten Funktionen eine höchste Zuverlässigkeitsanforderung haben; wobei die dritten Funktionen entkoppelt von dem Ausführen der ersten und zweiten Funktionen derart ausgeführt werden, dass die dritten Funktionen störungsfrei von dem Ausführen der ersten und zweiten Funktionen ablaufen; wobei die zweiten Funktionen entkoppelt von dem Ausführen der ersten Funktionen derart ausgeführt werden, dass die zweiten Funktionen störungsfrei von dem Ausführen der ersten Funktionen ablaufen, wobei die Entkoppelung des Ausführens der zweiten Funktionen von dem Ausführen der ersten Funktionen unter Verwendung eines ersten Mechanismus (13) implementiert ist und wobei die Entkoppelung des Ausführens der dritten Funktionen von dem Ausführen der ersten und zweiten Funktionen unter Verwendung eines zweiten Mechanismus (15) implementiert ist, wobei der erste Mechanismus verschieden ist von dem zweiten Mechanismus. Weiter ist ein Mikrocontroller und ein Programm bereitgestellt.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben eines Mikrocontrollers, insbesondere eines Mikrocontrollers eines Automobils, und einen Mikrocontroller für ein Automobil. Insbesondere betrifft die vorliegende Erfindung ein Verfahren zum Betreiben eines Mikrocontrollers und einen Mikrocontroller, wobei an verschiedene Funktionen des Mikrocontrollers verschiedene Anforderungen bezüglich eines Sicherheitsstandards gesetzt werden. Insbesondere betrifft die vorliegende Erfindung. ein Verfahren zum Betreiben eines Mikrocontrollers und einen Mikrocontroller, wobei drei oder mehr verschiedene Sicherheitsniveaus von Funktionen, welche von dem Mikrocontroller ausgeführt werden, unterstützt werden.
  • Viele Funktionen eines Automobils, wie etwa eine Motorsteuerung, werden herkömmlicher Weise mittels eines Mikrocontrollers gesteuert. Dabei können die verschiedenen Funktionen mehr oder weniger sicherheitsrelevante Funktionen umfassen. Je höher das Sicherheitsniveau ist, desto höher sind die Zuverlässigkeitsanforderungen der Funktionen, welche von dem Mikrocontroller innerhalb des entsprechenden Sicherheitsniveaus ausgeführt werden. Insbesondere spezifiziert die sich entwickelnde Norm ISO 26262 sicherheitsrelevante elektrische/elektronische Systeme in Kraftfahrzeugen. Diese Norm wird verschiedene Sicherheitsanforderungsstufen spezifizieren, welche von A bis D eine immer höhere Sicherheitsanforderungsstufe benennen. Als nicht sicherheitsrelevant wird die Stufe QM (Quality Management) bezeichnet. Die Sicherheitsanforderungsstufen A bis D werden auch als ASIL A bis D (Automotive Safety Integrity Level A to D) bezeichnet.
  • Herkömmliche Mikrocontroller für ein Automobil erlauben jedoch bisher lediglich ein Betreiben von Funktionen innerhalb zweier Sicherheitsanforderungsklassen. Bisher gibt es kein Konzept zur Implementierung eines Mikrocontrollers, welcher mehr als zwei Sicherheitsanforderungsklassen unterstützt.
  • Es mag einen Bedarf für ein Verfahren zum Betreiben eines Mikrocontrollers und für einen Mikrocontroller geben, wobei der Mikrocontroller verschiedene Funktionen ausführen kann, welche mehr als zwei Sicherheitsanforderungsklassen zugeordnet sind. Weiterhin mag es einen Bedarf für ein Verfahren zum Betreiben eines Mikrocontrollers und für einen Mikrocontroller geben, wobei das Betreiben des Mikrocontrollers mit beschränkten Ressourcen und/oder Zeitanforderungen ermöglicht ist, um insbesondere der Norm ISO 26262 zu genügen.
  • Diese Aufgabe wird gelöst durch die Gegenstände der unabhängigen Patentansprüche. Vorteilhafte Ausführungsformen der vorliegenden Erfindung sind in den abhängigen Ansprüchen beschrieben.
  • Gemäß einer Ausführungsform ist ein Verfahren zum Betreiben eines Mikrocontrollers (insbesondere eines elektronischen Bausteins, eines Chip oder einer allgemeinen elektronischen Schaltung), insbesondere eines Mikrocontrollers eines Automobils bereitgestellt, wobei der Mikrocontroller einen ROM (Read Only Memory, das heißt einen Speicher aus dem lediglich gelesen werden kann) und einen RAM (Random Access Memory, das heißt einen Speicher, auf den sowohl geschrieben als auch aus dem gelesen werden kann) aufweist. Das Verfahren weist dabei auf: Ausführen, mittels des Mikrocontrollers, von ersten Funktionen (welche zum Steuern von weniger sicherheitsrelevanten Komponenten des Automobils ausgebildet sein können), zweiten Funktionen (welche zum Ansteuern oder Betreiben von sicherheitsrelevanteren Funktionen und/oder Komponenten des Automobils ausgebildet sein können) und dritten Funktionen (welche beispielsweise zum Betreiben, Ansteuern oder Betätigen von hochsicherheitsrelevanten Komponenten und/oder Prozeduren des Automobils ausgebildet sein können), wobei die ersten Funktionen eine geringste Zuverlässigkeitsanforderung (bezüglich Vermeidung systematischer Entwicklungsfehler und/oder Toleranz gegenüber zufälliger Hardwarefehler) und/oder bezüglich einer Genauigkeit, eines zeitlich definierten, insbesondere rechtzeitigen, Ausführens, und/oder bezüglich einer Ordnung eines Ausführens umfassen kann) und die dritten Funktionen eine höchste Zuverlässigkeitsanforderung (bezüglich Vermeidung systematischer Entwicklungsfehler und/oder Toleranz gegenüber zufälliger Hardwarefehler) und/oder bezüglich insbesondere Genauigkeit und/oder zeitlicher Korrektheit) haben. Dabei werden die dritten Funktionen entkoppelt (insbesondere unabhängig und/oder getrennt) von dem Ausführen der ersten und zweiten Funktionen derart ausgeführt, dass die dritten Funktionen störungsfrei von dem Ausführen der ersten und zweiten Funktionen ablaufen. Insbesondere soll vermieden werden, dass ein Fehler bei dem Ausführen der ersten oder zweiten Funktion zu einem Fehler bei dem Ausführen der dritten Funktionen führt. Weiterhin werden die zweiten Funktionen entkoppelt von dem Ausführen der ersten Funktionen derart ausgeführt, dass die zweiten Funktionen störungsfrei von dem Ausführen der ersten Funktionen ablaufen.
  • Weiter ist die Entkopplung des Ausführens der zweiten Funktionen von dem Ausführen der ersten Funktionen unter Verwendung eines ersten Mechanismus (welcher Verfahren und/oder Vorrichtungen umfassen kann) implementiert und die Entkopplung des Ausführens der dritten Funktionen von dem Ausführen der ersten und zweiten Funktionen ist unter Verwendung eines zweiten Mechanismus implementiert, wobei der erste Mechanismus verschieden ist von dem zweiten Mechanismus. Dabei kann der erste Mechanismus ein Vorsehen einer bestimmten Hardware und/oder insbesondere das Vorsehen eines bestimmten Verfahrens aufweisen, um zu erreichen, dass die zweiten Funktionen mit hoher Zuverlässigkeit korrekt ablaufen, insbesondere ohne Störung durch den Ablauf von den ersten Funktionen.
  • Damit ist ein Verfahren zum Betreiben eines Mikrocontrollers bereitgestellt, welcher das Ausführen von Funktionen mindestens dreier verschiedener Sicherheitsniveaus erlaubt. In anderen Ausführungsformen werden mehr als drei Sicherheitsniveaus unterstützt, wie etwa ein Sicherheitsniveau ASIL-A, ein Sicherheitsniveau ASIL-B, ein Sicherheitsniveau ASIL-C, und ein Sicherheitsniveau ASIL-D, sowie ein Niveau ohne Sicherheitsanforderung wie etwa QM. Insbesondere umfasst der erste Mechanismus Vorrichtungen, Verfahren und/oder eine Kombination derselben, welche weniger zeit- und/oder Ressourcen intensiv sind als die des zweiten Mechanismus und welche nicht zum Entkoppeln der dritten Funktionen von den ersten und zweiten Funktionen benutzt werden. Damit können Ressourcen und Prozessierungszeit eingespart werden.
  • Gemäß einer Ausführungsform erfordert der erste Mechanismus einen geringeren Speicherbedarf (insbesondere bezogen auf gleiche Funktionalität, wie etwa Speichern eines Wertes gegebener Länge), insbesondere im RAM, als der zweite Mechanismus. Insbesondere kann der erste Mechanismus auf ein doppeltes Speichern eines zu speichernden Werte verzichten und kann daher eine geringere Sicherheitsanforderung erfüllen als der zweite Mechanismus.
  • Gemäß einer Ausführungsform erfordert der erste Mechanismus einen geringeren Zeitbedarf (insbesondere bezogen auf eine gleiche Funktion, zum Beispiel Berechnen, Speichern, Lesen oder allgemein Prozessieren eines Wertes) als der zweite Mechanismus. Damit können insbesondere die zweiten Funktionen schneller und unter Verwendung von weniger Speicherplatz ausgeführt werden als die dritten Funktionen, welche zum Ausführen den zweiten Mechanismus verwenden. Damit kann der Mikrocontroller oder das Verfahren zum Betreiben des Mikrocontrollers verbessert werden.
  • Gemäß einer Ausführungsform weist der erste Mechanismus zur Kontrolle des ROM ein Berechnen einer Checksumme (was zum Beispiel einen Cycling Redundancy Check umfassen kann, ein Berechnen einer Zahl aus den Inhalten einer Anzahl von Speicherzellen mittels eines funktionalen Ausdrucks) über Adressbereiche des ROM, in denen Anweisungen zum Ausführen zweiter Funktionen gespeichert sind, unter Verwendung eines von dem Mikrocontroller bereitgestellten (Hardware) Befehls auf. Dabei kann der Mikrocontroller einen Satz von Hardwarebefehlen umfassen. Einer dieser Hardwarebefehle kann zum Berechnen der Checksumme verwendet werden. Damit ist es nicht erforderlich, eine Checksumme beispielsweise über eine Programmierung des Mikrocontrollers in aufwändiger Weise unter Verwendung lediglich grundlegender Hardwarebefehle zu berechnen. Somit ist die Berechnung der Checksumme der Adressbereiche des ROM, in denen Anweisungen zum Ausführen zweiter Funktionen gespeichert sind, beschleunigt und/oder erleichtert verglichen zu herkömmlichen Verfahren.
  • Gemäß einer Ausführungsform wird das Berechnen der Checksumme wiederkehrend durchgeführt, beispielsweise zyklisch, etwa alle 5 ms, alle 10 ms, alle 100 ms, alle 5 s, alle 30 s oder in anderen Intervallen. Damit kann eine hohe Zuverlässigkeit der Integrität des ROM sichergestellt werden bzw. Fehlfunktionen des ROM können schnell und zuverlässig erkannt werden.
  • Gemäß einer Ausführungsform weist der erste Mechanismus zur Kontrolle des Zugriffs auf den RAM ein Konfigurieren einer vom Mikrocontroller bereitgestellten RAM-Zugriffskontrolle zum Definieren von Adressbereichen des RAM, auf die zweite Funktionen jedoch nicht erste Funktionen berechtigt sind zuzugreifen, auf. Insbesondere kann die RAM-Zugriffskontrolle über einen oder mehr Hardwarebefehle konfigurierbar sein, welcher bzw. welche von dem Mikrocontroller bereitgestellt werden. Beispielsweise kann ein Bereich des RAM vor dem Zugriff von ersten Funktionen aus geschützt sein, womit ein unbeabsichtigtes Schreiben auf Bereiche des RAM, die für zweite Funktionen vorgesehen sind, verhindert werden kann.
  • Gemäß einer Ausführungsform erlaubt die RAM-Zugriffskontrolle eine Definition von mindestens drei Zugriffsbereichen. Während zwei Zugriffsbereiche ausreichen können, um einen Zugriff von ersten Funktionen und/oder zweiten auf gewisse Bereiche des RAM zu steuern oder aufzuteilen oder zuzuweisen, können mehr als zwei Zugriffsbereiche vorteilhaft sein, um mehr als drei Sicherheitsniveaus der Funktionen des Mikrocontrollers zu erlauben.
  • Gemäß einer Ausführungsform wird bei unberechtigtem Zugriff von einer der ersten Funktionen auf die Adressbereiche des RAM, auf die erste Funktionen nicht berechtigt sind zuzugreifen, ein Ereignis (wie etwa ein Alarm, ein Signal an eine Überwachungsfunktion oder ähnliches) ausgelöst. Ein unberechtigter Zugriff kann ein Fehler in dem Ablauf einer der ersten Funktionen anzeigen. Insbesondere kann der Ablauf einer der zweiten Funktionen durch diesen unberechtigten Zugriff gestört, behindert oder verändert werden. Das ausgelöste Ereignis ermöglicht (beispielsweise einer Überwachungsfunktion oder einem Benutzer), das Problem zu erkennen und Gegenmaßnahmen zu ergreifen.
  • Gemäß einer Ausführungsform weist der erste Mechanismus zur Kontrolle der Beschreibbarkeit des RAM einen RAM-Test auf, welcher zunächst RAM-Bereiche verlagert und anschließend den zu testenden Bereich mit definierten Werten beschreibt, zurückliest und auf Korrektheit prüft.
  • Der beschriebene RAM-Test verwendet zu Prüfung der Korrektheit insbesondere keine Checksumme, sondern liest lediglich den vorher geschriebenen Wert zurück. Tatsächlich wird bei dem Test nicht der Inhalt des RAM, sondern nur dessen Beschreibbarkeit getestet. Insbesondere kann im Zusammenspiel mit dem oben beschriebenen Schutz vor Überschreiben insgesamt eine vollständige Absicherung des RAM erhalten werden. Alternativ ist die Berechnung einer Checksumme über den zu testenden Bereich möglich.
  • Anstelle des RAM-Beschreibbarkeitstests (SW RAM-Test) kann auch der ECC (error correction code), welcher wiederum vom Mikrocontroller zur Verfügung gestellt wird, verwendet werden. Damit kann eine Ressourcenersparnis erhalten werden, da die Durchführung der ECC schneller ist als der RAM-Test. Dabei kann der ECC ein Fehlerreporting durchführen, um vor schlafenden Fehlern gesichert zu sein (Defekte Zelle wird bei jedem Schreiben ECC-korrigiert, bei einem Zweitfehler- Ausfall des ECC – könnte es zur Verletzung des Sicherheitsziels kommen).
  • Gemäß einer Ausführungsform weist der erste Mechanismus zur Kontrolle eines Ablaufs der zweiten Funktionen ein Kontrollieren des Ablaufs der zweiten Funktionen unter Verwendung einer Ablaufskontrollfunktion eines auf dem Mikrocontroller installierten Betriebssystems auf. Die Ablaufskontrollfunktion kann beispielsweise überprüfen, ob die zweiten Funktionen zu vorgegebenen Zeitpunkten oder Taktzyklen ablaufen.
  • Gemäß einer Ausführungsform werden die zweiten Funktionen zu vorgegebenen Taktzeiten ausgeführt, insbesondere unabhängig eines Fehlers bei Ablauf einer der ersten Funktionen. Zwar kann die Ausführung der zweiten Funktionen nicht immer sichergestellt werden, aber eine Verletzung der Zeitgrenzen (ein Nicht-Ausführen) der zweiten Funktionen kann erkannt werden. Damit ist ermöglicht, und analog wie oben beschrieben, eine Gegenmaßnahme einzuleiten. Damit kann sichergestellt werden, dass die sicherheitsrelevanteren zweiten Funktionen auch bei Auftreten eines Fehlers bei dem Ablauf einer der ersten Funktionen ausgeführt werden.
  • Gemäß einer Ausführungsform weist der zweite Mechanismus zur Kontrolle des Inhalts des RAM bei Schreibzugriff von dritten Funktionen auf den RAM zum Speichern eines Wertes, Speichern des Wertes in den RAM und Schreiben eines Komplements des Wertes in den RAM auf. Somit ist der RAM-Schutz gegen Überschreiben beim zweiten Mechanismus ein anderer als beim ersten Mechanismus. Insbesondere erfolgt somit die Kontrolle des Inhalts des RAM bei Schreibzugriff von dritten Funktionen auf den RAM in einer anderen Weise als die Kontrolle des Inhalts des RAM bei Schreibzugriff von zweiten Funktionen auf den RAM.
  • Gemäß einer Ausführungsform ist das Verfahren konform zur Norm ISO FDIS 26262 (Baseline 16) in der bei Anmeldedatum gültigen Fassung. Damit kann das Verfahren das Unterstützen von mehr als zwei Sicherheitsniveaus von Funktionen des Mikrocontrollers unterstützen. FDIS (Final Draft International Standard) 26262 ist die aktuelle, bei Anmeldedatum, offiziell veröffentlichte Fassung der ISO 26262 (Zusatznahme Baseline 16).
  • Gemäß einer Ausführungsform benutzt der Mikrocontroller die AUTOSAR Plattform. AUTOSAR (AUTomotive Open Software ARchitecture) ist eine Architektur, welche als standardisierte Software-Plattform für Automitive-Anwendungen dient. Damit ist das Verfahren auch konform zu dieser standardisierten Architektur eines herkömmlichen Mikrocontrollers. Damit kann das Verfahren in vielen Automobilen eingesetzt werden.
  • Merkmale (individuell oder in jeder Kombination), welche in Bezug auf ein Verfahren zum Betreiben eines Mikrocontrollers offenbart, beschrieben, erwähnt, diskutiert oder erläutert worden sind, können (individuell oder in jeder Kombination) ebenso für einen Mikrocontroller eingesetzt, benutzt, angewendet oder vorgesehen werden.
  • Gemäß einer Ausführungsform ist ein Mikrocontroller (insbesondere Chip, integrierte Schaltung), insbesondere zur Steuerung eines Automobils, bereitgestellt, welcher eingerichtet ist, ein Verfahren zum Betreiben eines Mikrocontrollers, wie oben beschrieben, auszuführen.
  • Gemäß einer Ausführungsform ist ein computerlesbares Speichermedium, in dem ein Programm gespeichert ist, das, wenn es von einem Prozessor ausgeführt wird, zum Durchführen des Verfahrens zum Betreiben eines Mikrocontrollers eingerichtet ist. Weiter ist ein Programmelement, welches dieses Programm umfasst, bereitgestellt.
  • Es wird darauf hingewiesen, dass Ausführungsformen der Erfindung mit Bezug auf unterschiedliche Erfindungsgegenstände beschrieben wurden. Insbesondere sind einige Ausführungsformen der Erfindung mit Vorrichtungsansprüchen und andere Ausführungsformen der Erfindung mit Verfahrensansprüchen beschrieben. Dem Fachmann wird jedoch bei der Lektüre dieser Anmeldung sofort klar werden, dass, sofern nicht explizit anders angegeben, zusätzlich zu einer Kombination von Merkmalen, die zu einem Typ von Erfindungsgegenstand gehören, auch eine beliebige Kombination von Merkmalen möglich ist, die zu unterschiedlichen Typen von Erfindungsgegenständen gehören.
  • Ausführungsformen der vorliegenden Erfindung werden nun mit Bezug auf die beiliegende Figur erläutert.
  • Die Figur zeigt schematisch ein Konzept zur Implementierung eines Mikrocontrollers, welcher mindestens drei verschiedene Sicherheitsanforderungsniveaus unterstützt.
  • Ferner wird darauf hingewiesen, dass die nachfolgend beschriebenen Ausführungsformen lediglich eine beschränkte Auswahl an möglichen Ausführungsvarianten der Erfindung darstellen. Insbesondere ist es möglich, die Merkmale einzelner Ausführungsformen in geeigneter Weise miteinander zu kombinieren, so dass für den Fachmann mit den hier explizit dargestellten Ausführungsvarianten eine Vielzahl von verschiedenen Ausführungsformen als offensichtlich offenbart anzusehen sind.
  • Die Figur zeigt eine schematische Darstellung von verschiedenen Funktionsbereichen eines Mikrocontrollers eines Automobils, wobei Funktionen in den verschiedenen Funktionsbereichen verschiedene Sicherheitsanforderungen bezüglich einer Zuverlässigkeit der durchgeführten Funktionen erfüllen. In einem Mikrocontroller können Funktionen verschiedener Funktionsbereiche oder Sicherheitsanforderungen in verschiedenen Adressbereichen eines ROM oder RAM des Mikrocontrollers gespeichert sein und/oder ablaufen, ohne dass diese verschiedenen Speicherbereiche notwendigerweise zusammenhängend und/oder räumlich voneinander getrennt sein müssen. Daher ist die Figur als ein Funktionsdiagramm zu betrachten, um Prinzipien der Implementierung des Verfahrens zum Betreiben des Mikrocontrollers mit mindestens drei Sicherheitsniveaus zu illustrieren.
  • Die Funktionen des Mikrocontrollers umfassen erste Funktionen 10, welche eine geringste Zuverlässigkeitsanforderung aufweisen. Als weitere Funktionen umfasst der Mikrocontroller zweite Funktionen 20, welche eine mittlere Zuverlässigkeitsanforderung haben. Weiterhin umfassen die Funktionen des Mikrocontrollers dritte Funktionen 30, welche eine höchste Zuverlässigkeitsanforderung haben.
  • In einem herkömmlichen Verfahren zum Betreiben eines Mikrocontrollers sind lediglich die ersten Funktionen 10 und die dritten Funktionen 30 unterstützt, wobei, durch den Pfeil 15a illustriert, ein zweiter Mechanismus bereitgestellt ist, um zu verhindern, dass eine Fehlfunktion einer ersten Funktion 10 einen negativen Einfluss auf das Ausführen der dritten Funktionen 30 hat. Insbesondere kann ein klassischer Speicherschutzmechanismus als ein Teil des zweiten Mechanismus 15 zur Anwendung kommen, wie aus herkömmlichen Mikrocontrollersteuerungen bekannt ist.
  • Anders als herkömmliche Systeme oder Verfahren ermöglicht gemäß einer Ausführungsform das Verfahren zum Betreiben eines Mikrocontrollers das Ausführen von den zweiten Funktionen 20, welche eine Zuverlässigkeitsanforderung aufweisen, welche zwischen der höchsten Zuverlässigkeitsanforderung der Funktionen 30 und der geringsten Zuverlässigkeitsanforderung der Funktionen 10 liegt. Aufgrund der somit neu eingeführten Grenze 11 zwischen den ersten Funktionen 10 und den zweiten Funktionen 20, müssen Vorkehrungen getroffen werden, um einen Einfluss des Ablaufs der ersten Funktionen auf einen Ablauf der zweiten Funktionen 20 zu vermindern bzw. zu verhindern. Dazu wird ein erster Mechanismus 13 bereitgestellt, welcher sich von dem zweiten Mechanismus 15 unterscheidet. Insbesondere gewährleistet der erste Mechanismus 13 einen Ablauf der zweiten Funktionen 20, um den Sicherheitsanforderungen dieser Klasse zu genügen, ohne einen so großen Speicherbedarf oder Zeitbedarf zu erfordern, wie der Mechanismus 15 zum Schutz des Ausführens der dritten Funktionen 30.
  • Innerhalb des ersten Mechanismus 13 kann zum Prüfen des ROM, welcher in dem Mikrocontroller integriert ist, ein zyklischer ROM-Check durchgeführt werden, unter Verwendung eines Mikrocontrollerbefehls. Dieser zyklische Checksummentest von Speicherbereichen des ROM kann schneller durchgeführt werden unter Verwendung des Mikrocontrollerbefehls als unter Verwendung von zusätzlicher Software.
  • Zum Testen des RAM bezüglich der Ausführung der zweiten Funktionen 20 kann innerhalb des ersten Mechanismus 13 eine Kombination des AUTOSAR-RAM-Checks, welcher zyklisch die Schreibbarkeit des RAM-Bereichs, welcher zu schützen ist, testet und das MPU-Feature (Memory Protection Unit) verwendet werden, welches mittels des Mikrocontrollers bereitgestellt wird und den definierten RAM-Bereich gegen unbeabsichtigtes Überschreiben schützt. Der MPU-Mechanismus oder das MPU-Feature wird in der nächsten Prozessorgeneration zur Verfügung stehen und ermöglicht einen Schutz gegen Speicherverletzung (dieser Mechanismus detektiert somit nicht lediglich die Speicherverletzung). Die quantitative Detektionsrate muss bestimmt werden, um kompatibel mit den Anforderungen der Norm ISO 26262 zu sein. Falls ein Versuch einer Verletzung detektiert wird, wird eine Falle oder ein anderes Ereignis, wie etwa ein Alarm, ausgelöst. Beispielsweise kann eine Steuerkomponente angewiesen werden, eine Gegenmaßnahme zu ergreifen. Für einen ausreichenden Schutz kann der MPU-Mechanismus mit dem RAM/ROM-Test kombiniert werden. Dieses Merkmal ist auf zwei oder drei Zugriffsklassen beschränkt, kann jedoch bis zu 16 Bereiche mit variabler Größe bereitstellen.
  • Weiterhin umfasst der erste Mechanismus 13 Vorkehrungen zur Prozessflussüberwachung (PFM). Insbesondere kann in dem Mikrocontroller das System AUTOSAR installiert sein. Insbesondere kann das in dem System AUTOSAR bereitgestellte Modul Watchdog Manager benutzt werden, um eine Ablaufkontrolle von zweiten Funktionen 20 zu implementieren.
  • Weiterhin kann eine Softwarepartitionierung vorgenommen werden, um eine negative Auswirkung einer Ausführung von ersten Funktionen 10 auf eine Ausführung von zweiten Funktionen 20 zu begrenzen. Insbesondere kann jede Benutzung von Signalen, welche nicht gemäß dem höchsten Sicherheitsintegritätslevel entwickelt und geschützt sind, eine Quelle eines Fehlers repräsentieren.
  • Deswegen muss das Verwenden dieser Signale soweit als möglich verhindert werden und im Falle, dass diese Signale genutzt werden, muss die Benutzung derart erfolgen, dass eine Fehlerfortpflanzung von ersten Funktionen 10 zu zweiten Funktionen 20 vermindert oder verhindert ist.
  • Bezugszeichenliste
  • 10
    erste Funktionen
    20
    zweite Funktionen
    30
    dritte Funktionen
    11
    Grenze zwischen ersten Funktionen und zweiten Funktionen
    13
    erster Mechanismus
    15a, 15b
    zweiter Mechanismus
  • 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 Nicht-Patentliteratur
    • Norm ISO 26262 [0002]
    • Norm ISO 26262 [0004]
    • Norm ISO FDIS 26262 [0022]
    • Norm ISO 26262 [0036]

Claims (16)

  1. Verfahren zum Betreiben eines Mikrocontrollers, insbesondere eines Mikrocontrollers eines Automobils, wobei der Mikrocontroller einen ROM und einen RAM aufweist, wobei das Verfahren aufweist: Ausführen, mittels des Mikrocontrollers, von ersten Funktionen (10), zweiten Funktionen (20) und dritten Funktionen (30), wobei die ersten Funktionen eine geringste Zuverlässigkeitsanforderung und die dritten Funktionen eine höchste Zuverlässigkeitsanforderung haben; wobei die dritten Funktionen entkoppelt von dem Ausführen der ersten und zweiten Funktionen derart ausgeführt werden, dass die dritten Funktionen störungsfrei von dem Ausführen der ersten und zweiten Funktionen ablaufen; wobei die zweiten Funktionen entkoppelt von dem Ausführen der ersten Funktionen derart ausgeführt werden, dass die zweiten Funktionen störungsfrei von dem Ausführen der ersten Funktionen ablaufen, wobei die Entkoppelung des Ausführens der zweiten Funktionen von dem Ausführen der ersten Funktionen unter Verwendung eines ersten Mechanismus (13) implementiert ist und wobei die Entkoppelung des Ausführens der dritten Funktionen von dem Ausführen der ersten und zweiten Funktionen unter Verwendung eines zweiten Mechanismus (15a, 15b) implementiert ist, wobei der erste Mechanismus verschieden ist von dem zweiten Mechanismus.
  2. Verfahren nach Anspruch 1, wobei der erste Mechanismus einen geringeren Speicherbedarf, insbesondere im RAM, erfordert als der zweite Mechanismus.
  3. Verfahren nach Anspruch 1 oder 2, der erste Mechanismus einen geringeren Zeitbedarf erfordert als der zweite Mechanismus.
  4. Verfahren nach einem der vorangehenden Ansprüche, wobei zur Kontrolle des ROM der erste Mechanismus aufweist: Berechnen einer Checksumme über Adressbereiche des ROM, in denen Anweisungen zum Ausführen zweiter Funktionen gespeichert sind, unter Verwendung eines von dem Mikrocontroller bereitgestellten Befehls.
  5. Verfahren nach Anspruch 4, wobei das Berechnen der Checksumme wiederkehrend erfolgt.
  6. Verfahren nach einem der vorangehenden Ansprüche, wobei zur Kontrolle des Zugriffs auf den RAM der erste Mechanismus aufweist: Konfigurieren einer vom Mikrocontroller bereitgestellten RAM-Zugriffskontrolle zum Definieren von Adressbereichen des RAM, auf die zweite Funktionen jedoch nicht erste Funktionen berechtigt sind zuzugreifen.
  7. Verfahren nach Anspruch 6, wobei die RAM-Zugriffskontrolle eine Definition von mindestens drei Zugriffsbereichen erlaubt.
  8. Verfahren nach Anspruch 6 oder 7, wobei bei unberechtigtem Zugriff von einer der ersten Funktionen auf die Adressbereiche des RAM, auf die erste Funktionen nicht berechtigt sind zuzugreifen, ein Ereignis ausgelöst wird.
  9. Verfahren nach einem der vorangehenden Ansprüche, wobei zur Kontrolle des Inhalts und/oder der Beschreibbarkeit des RAM der erste Mechanismus aufweist: Verlagern eines zu testenden RAM-Bereiches; anschließendes Beschreiben des zu testenden Bereiches mit definierten Werten; Zurücklesen und Prüfen der zurückgelesenen Werte auf Korrektheit; und/oder Ausführen eines Prüfmechanismus über Bereiche des RAM, auf die von zweiten Funktionen zugegriffen wird unter Verwendung einer vom Mikrocontroller bereitgestellten RAM-check-Funktion und/oder einer RAM-check-Funktion eines auf dem Mikrocontroller installierten Betriebssystems.
  10. Verfahren nach einem der vorangehenden Ansprüche, wobei zur Kontrolle eines Ablaufs der zweiten Funktionen der erste Mechanismus aufweist: Kontrollieren des Ablaufs der zweiten Funktionen unter Verwendung einer Ablaufskontrollfunktion eines auf dem Mikrocontroller installierten Betriebssystems.
  11. Verfahren nach Anspruch 10, wobei die Ausführung der zweiten Funktionen zu vorgegebenen Taktzeiten überprüft wird, insbesondere unabhängig eines Fehlers bei Ablauf einer der ersten Funktionen.
  12. Verfahren nach einem der vorangehenden Ansprüche, wobei zur Kontrolle des Inhalts des RAM der zweite Mechanismus aufweist: Bei Schreibzugriff von dritten Funktionen auf den RAM zum Speichern eines Wertes, Schreiben des Wertes in den RAM und Schreiben eines Komplements des Wertes in den RAM.
  13. Verfahren nach einem der vorangehenden Ansprüche, welches konform zur Norm ISO 26262 ist.
  14. Verfahren nach einem der vorangehenden Ansprüche, wobei in dem Mikrocontroller die AUTOSAR Plattform benutzt.
  15. Mikrocontroller, insbesondere zur Steuerung eines Automobils, welcher eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 14 auszuführen.
  16. Computerlesbares Speichermedium, in dem ein Programm gespeichert ist, das, wenn es von einem Prozessor ausgeführt wird, zum Durchführen des Verfahrens nach einem der Ansprüche 1 bis 14 eingerichtet ist.
DE102010042574.5A 2010-10-18 2010-10-18 Verfahren zum Betreiben eines Mikrocontrollers für ein Automobil und Mikrocontroller Active DE102010042574B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102010042574.5A DE102010042574B4 (de) 2010-10-18 2010-10-18 Verfahren zum Betreiben eines Mikrocontrollers für ein Automobil und Mikrocontroller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102010042574.5A DE102010042574B4 (de) 2010-10-18 2010-10-18 Verfahren zum Betreiben eines Mikrocontrollers für ein Automobil und Mikrocontroller

Publications (2)

Publication Number Publication Date
DE102010042574A1 true DE102010042574A1 (de) 2012-04-19
DE102010042574B4 DE102010042574B4 (de) 2017-11-16

Family

ID=45895664

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010042574.5A Active DE102010042574B4 (de) 2010-10-18 2010-10-18 Verfahren zum Betreiben eines Mikrocontrollers für ein Automobil und Mikrocontroller

Country Status (1)

Country Link
DE (1) DE102010042574B4 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013164224A3 (de) * 2012-04-30 2013-12-27 Robert Bosch Gmbh Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems, vorzugsweise eines motorsteuersystems eines kraftfahrzeuges
DE102015209448A1 (de) 2015-05-22 2016-11-24 Bayerische Motoren Werke Aktiengesellschaft Verfahren zur Anzeige sicherheitsrelevanter Anzeigeelemente

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10338701A1 (de) * 2003-08-22 2005-03-17 Infineon Technologies Ag Controller

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10338701A1 (de) * 2003-08-22 2005-03-17 Infineon Technologies Ag Controller

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Norm ISO FDIS 26262

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013164224A3 (de) * 2012-04-30 2013-12-27 Robert Bosch Gmbh Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems, vorzugsweise eines motorsteuersystems eines kraftfahrzeuges
DE102015209448A1 (de) 2015-05-22 2016-11-24 Bayerische Motoren Werke Aktiengesellschaft Verfahren zur Anzeige sicherheitsrelevanter Anzeigeelemente

Also Published As

Publication number Publication date
DE102010042574B4 (de) 2017-11-16

Similar Documents

Publication Publication Date Title
DE102007045398A1 (de) Integriertes Mikroprozessorsystem für sicherheitskritische Regelungen
EP3709166B1 (de) Verfahren und system zur sicheren signalmanipulation für den test integrierter sicherheitsfunktionalitäten
EP2907072B1 (de) Verfahren zur steuerung eines getrennten ablaufs von verknüpften programmblöcken und steuergerät
DE102013213314A1 (de) Hinterlegen mindestens eines berechenbaren Integritätsmesswertes in einem Speicherbereich eines Speichers
EP1262856B1 (de) Programmgesteuerte Einheit
DE3336977A1 (de) Ausfallsicheres verfahren fuer einen fahrzeugcomputer
DE102010042574B4 (de) Verfahren zum Betreiben eines Mikrocontrollers für ein Automobil und Mikrocontroller
DE102005016801B4 (de) Verfahren und Rechnereinheit zur Fehlererkennung und Fehlerprotokollierung in einem Speicher
DE102011007467A1 (de) Mehrkernige integrierte Mikroprozessorschaltung mit Prüfeinrichtung, Prüfverfahren und Verwendung
DE102021207872A1 (de) Kompositionelle verifikation von eingebetteten softwaresystemen
DE102013202961A1 (de) Verfahren zum Überwachen eines Stackspeichers in einem Betriebssystem eines Steuergeräts eines Kraftfahrzeuges
DE102009002898A1 (de) Verfahren zur Aktualisierung eines Steuergeräts eines Fahrzeugs
EP3173928B1 (de) Verfahren und vorrichtung zum überprüfen eines komponentenfehlerbaums
EP2225640A1 (de) Verfahren zum identifizieren gegenseitiger beeinflussung von softwarekomponenten
EP3876123B1 (de) Anordnung und betriebsverfahren für einen sicheren hochfahrablauf einer elektronischen einrichtung
DE102019208129B4 (de) Elektronische Steuereinheit
DE10128996B4 (de) Verfahren und Vorrichtung zur Überwachung von Speicherzellen eines flüchtigen Datenspeichers
DE102018219700B4 (de) Steuervorrichtung
DE102008042894A1 (de) Verfahren und Vorrichtung zum Testen eines Rechnerkerns in einer mindestens zwei Rechnerkerne aufweisenden Recheneinheit
WO2017153411A1 (de) Verfahren zum betreiben eines steuergeräts für ein kraftfahrzeug
DE102022207941A1 (de) Verfahren zum Booten einer elektronischen Steuereinheit
DE102022212057A1 (de) Verfahren zur Analyse von funktionalen Pfaden für ein eingebettetes System, Vorrichtung zur Datenverarbeitung, Computerprogramm und computerlesbarer Datenträger
DE102022212058A1 (de) Verfahren zur Überprüfung von funktionalen Pfaden für ein eingebettetes System, Vorrichtung zur Datenverarbeitung, Computerprogramm und computerlesbarer Datenträger
DE10110050A1 (de) Verfahren zur Absicherung sicherheitskritischer Programmteile vor versehentlicher Ausführung und eine Speichereinrichtung zur Durchführung dieses Verfahrens
DE102021212594A1 (de) Verfahren zum Starten einer Speichereinheit einer Recheneinheit

Legal Events

Date Code Title Description
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R081 Change of applicant/patentee

Owner name: VITESCO TECHNOLOGIES GMBH, DE

Free format text: FORMER OWNER: CONTINENTAL AUTOMOTIVE GMBH, 30165 HANNOVER, DE

R084 Declaration of willingness to licence
R081 Change of applicant/patentee

Owner name: VITESCO TECHNOLOGIES GMBH, DE

Free format text: FORMER OWNER: VITESCO TECHNOLOGIES GMBH, 30165 HANNOVER, DE