DE102020209228A1 - Verfahren zum Überwachen wenigstens einer Recheneinheit - Google Patents

Verfahren zum Überwachen wenigstens einer Recheneinheit Download PDF

Info

Publication number
DE102020209228A1
DE102020209228A1 DE102020209228.1A DE102020209228A DE102020209228A1 DE 102020209228 A1 DE102020209228 A1 DE 102020209228A1 DE 102020209228 A DE102020209228 A DE 102020209228A DE 102020209228 A1 DE102020209228 A1 DE 102020209228A1
Authority
DE
Germany
Prior art keywords
monitoring module
level
carried out
error
error measure
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
DE102020209228.1A
Other languages
English (en)
Inventor
Andre Vogel
Margit Mueller
Robert Gwinner
Ruediger Deibert
Elisabeth Magerl
Magnus OPPELLAND
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 DE102020209228.1A priority Critical patent/DE102020209228A1/de
Priority to CN202110830471.5A priority patent/CN113971100A/zh
Publication of DE102020209228A1 publication Critical patent/DE102020209228A1/de
Pending legal-status Critical Current

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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0715Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0784Routing of error reports, e.g. with a specific transmission path or data flow
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes

Abstract

Die Erfindung betrifft ein Verfahren zum Überwachen wenigstens einer Recheneinheit (100, 110, 120), in welcher eine Vielzahl von Prozessen (131, 132, 141, 142, 151, 152, 161, 162) ausgeführt wird, mit wenigstens einem untergeordneten Softwareüberwachungsmodul (231, 232, 233, 234), einem diesem wenigstens einen untergeordneten Softwareüberwachungsmodul (231, 232, 233, 234) übergeordneten Softwareüberwachungsmodul (221, 222) und einem diesem übergeordneten Softwareüberwachungsmodul (221, 222) übergeordneten Hardwareüberwachungsmodul (211), wobei das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) wenigstens einen in der wenigstens einen Recheneinheit ausgeführten Prozess (131, 132, 141, 142, 151, 152, 161, 162) überwacht, wobei das übergeordnete Softwareüberwachungsmodul (221, 222) das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) überwacht und wobei das Hardwareüberwachungsmodul (211) das übergeordnete Softwareüberwachungsmodul (221, 222) überwacht, wobei, wenn das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) oder das übergeordnete Softwareüberwachungsmodul (221, 222) oder das übergeordnete Hardwareüberwachungsmodul (211) im Zuge der jeweiligen Überwachung einen Fehler erkennt, eine vorgegebene Fehlermaßnahme durchgeführt wird, wobei überprüft wird, ob die vorgegebene Fehlermaßnahme korrekt durchgeführt wird, und, wenn im Zuge dieser Überprüfung erkannt wird, dass die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird, eine übergeordnete Fehlermaßnahme durchgeführt wird.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Überwachen wenigstens einer Recheneinheit sowie eine Recheneinheit, ein System aus Recheneinheiten und ein Computerprogramm zu dessen Durchführung.
  • Stand der Technik
  • Zum Überwachen von Recheneinheiten bzw. von Prozessen, die von einer Recheneinheit ausgeführt werden, können Überwachungsmodule vorgesehen sein, beispielsweise sog. Watchdogs, welche durch einen Datenaustausch beispielsweise in Form einer Frage-/Antwort-Kommunikation Fehler erkennen können. Beispielsweise kann von einem derartigen Watchdog zu diesem Zweck überprüft werden, ob der Datenaustausch bzw. die erhaltenen Antworten richtig sind und ob sie zu einem richtigen Zeitpunkt bzw. innerhalb eines vorgegebenen Zeitfensters eintreffen. Wenn dies nicht der Fall ist, kann auf einen Fehler der Recheneinheit bzw. des jeweiligen Prozesses rückgeschlossen werden. Derartige Überwachungsmodule bzw. Watchdogs können in Hardware als ein separates Hardwareelement realisiert sein oder auch in Software, welche von einer Prozessoreinheit ausgeführt wird.
  • Aus der DE 10 2018 210 733 A1 ist ein System aus Überwachungsmodulen bekannt, die in verschiedene Hierarchieebenen eingeteilt sind. In einer obersten Hierarchieebene ist ein oberstes Überwachungsmodul als ein Hardwareüberwachungsmodul vorgesehen, z.B. ein Hardware-Watchdog. In wenigstens einer der obersten Hierarchieebene untergeordneten Hierarchieebene ist jeweils wenigstens ein Softwareüberwachungsmodul vorgesehen, beispielsweise jeweils ein Software-Watchdog. Jedes Softwareüberwachungsmodul einer Hierarchieebene überwacht jeweils wenigstens einen zugewiesenen Prozess und wird wiederum von einem übergeordneten Überwachungsmodul einer übergeordneten Hierarchieebene überwacht. Wenn ein Softwareüberwachungsmodul einen Fehler des jeweiligen zugewiesenen Prozesses erkennt, wird eine vorgegebene Maßnahme durchgeführt, beispielsweise eine Fehlerreaktion, um den erkannten Fehler zu beheben. Beispielsweise kann als derartige Fehlerreaktion ein Reset, ein Neustart oder ein Deaktivieren des jeweiligen Prozesses oder der jeweiligen Recheneinheit durchgeführt werden.
  • Offenbarung der Erfindung
  • Vor diesem Hintergrund werden ein Verfahren zum Überwachen wenigstens einer Recheneinheit, in welcher eine Vielzahl von Prozessen ausgeführt wird, sowie eine Recheneinheit, ein System aus Recheneinheiten und ein Computerprogramm zu dessen Durchführung mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.
  • Wenigstens ein untergeordnetes, prozessspezifisches bzw. anwendungsspezifisches Softwareüberwachungsmodul überwacht wenigstens einen in der wenigstens einen Recheneinheit ausgeführten Prozess. Ein derartiges untergeordnetes Softwareüberwachungsmodul kann beispielsweise von einem Prozessor bzw. einem Prozessorkern der jeweiligen Recheneinheit ausgeführt werden. Beispielsweise kann für verschiedene Domänen einer Recheneinheit jeweils ein derartiges untergeordnetes Softwareüberwachungsmodul vorgesehen sein. Das untergeordnete Softwareüberwachungsmodul ist insbesondere in den regulären Programmablauf der jeweiligen Recheneinheit eingebunden.
  • Ein diesem wenigstens einen untergeordneten Softwareüberwachungsmodul übergeordnetes Softwareüberwachungsmodul überwacht das wenigstens eine untergeordnete Softwareüberwachungsmodul. Insbesondere kann pro Recheneinheit ein derartiges untergeordnetes Softwareüberwachungsmodul vorgesehen sein, welches sämtliche in dieser Recheneinheit ausgeführten untergeordneten Softwareüberwachungsmodule überwacht. Dieses übergeordnete Softwareüberwachungsmodul kann beispielsweise in einer Sicherheitsrecheneinheit („safety backbone“) vorgesehen sein, insbesondere in einem Sicherheitsprozessor bzw. einem Sicherheitsprozessorkern. Insbesondere ist das übergeordnete Softwareüberwachungsmodul als ein recheneinheitenspezifisches bzw. als ein zentrales, internes Softwareüberwachungsmodul vorgesehen.
  • Ein diesem übergeordneten Softwareüberwachungsmodul übergeordnetes Hardwareüberwachungsmodul überwacht das übergeordnete Softwareüberwachungsmodul. Das Hardwareüberwachungsmodul ist insbesondere als ein externes Hardwaremodul vorgesehen unabhängig von der wenigstens einen Recheneinheit. Insbesondere überwacht das Hardwareüberwachungsmodul eine Vielzahl entsprechender übergeordneter Softwareüberwachungsmodule, welche jeweils zum Überwachen einer Vielzahl untergeordneter Softwareüberwachungsmodul in einer jeweiligen Recheneinheit vorgesehen sind.
  • Jedes der Software- bzw. Hardwareüberwachungsmodule ist insbesondere als ein entsprechender Watchdog vorgesehen. Beispielsweise kann jedes der Überwachungsmodule die jeweilige Überwachung mit Hilfe einer Frage-/Antwort-Kommunikation oder einer Gut-/Schlecht-Prüfung durchführen.
  • Wenn das wenigstens eine untergeordnete Softwareüberwachungsmodul oder das übergeordnete Softwareüberwachungsmodul oder das übergeordnete Hardwareüberwachungsmodul im Zuge der jeweiligen Überwachung einen Fehler erkennt, wird eine vorgegebene Fehlermaßnahme durchgeführt, beispielsweise eine Fehlerreaktion zum Beheben des erkannten Fehlers. Bei einem derartigen Fehler kann es sich um einen Fehler bzw. eine Fehlfunktion eines ausgeführten Prozesses oder auch eines der Überwachungsmodule handeln. Beispielsweise kann diese Fehlermaßnahme von demjenigen Überwachungsmodul durchgeführt werden, welches den entsprechenden Fehler erkannt hat, oder auch von einem diesem Modul übergeordneten Überwachungsmodul.
  • Im Rahmen des vorliegenden Verfahrens wird überprüft, ob die vorgegebene Fehlermaßnahme korrekt durchgeführt wird. Wenn im Zuge dieser Überprüfung erkannt wird, dass die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird, wird eine übergeordnete Fehlermaßnahme durchgeführt. Eine derartige nicht korrekt durchgeführte Fehlermaßnahme kann beispielsweise auf einen Fehler des jeweiligen diese Fehlermaßnahme durchführenden Überwachungsmoduls hindeuten. Ebenso kann eine nicht korrekt durchgeführte Fehlermaßnahe insbesondere bedeuten, dass der jeweilige erkannte Fehler durch die Fehlermaßnahme nicht wie gewünscht behoben oder eingedämmt werden konnte, beispielsweise weil der Fehler schwerwiegender oder komplexer ist, als ursprünglich angenommen.
  • Das vorliegende Verfahren schlägt somit vor, ein mehrstufiges System aus einander übergeordneten Überwachungsmodulen bzw. Watchdogs für mehrstufige Fehlerreaktionen bzw. für eine mehrstufige Überwachung von Fehlerreaktionen zu verwenden. Das Überwachungsmodulsystem ermöglicht einerseits eine mehrstufige Überwachung von Recheneinheiten bzw. von in Recheneinheiten ausgeführten Prozessen sowie ferner eine mehrstufige Überwachung, ob bei einem erkannten Fehler korrekt auf diesen reagiert werden kann. Das Verfahren ermöglicht es somit, individuell und schnell reagieren zu können, wenn eine Fehlermaßnahme nicht korrekt durchgeführt wird oder wenn die Fehlermaßnahme beispielsweise nicht ausreicht, um einen erkannten Fehler zu beheben. Sicherheit und Integrität der Recheneinheit bzw. des Recheneinheitensystems können somit erhöht werden.
  • In herkömmlichen Überwachungskonzepten wird bei einem erkannten Fehler üblicherweise eine entsprechende Fehlermaßnahme durchgeführt. Eine weitere Überwachung dieser Fehlermaßnahme erfolgt dabei zumeist nicht. Wenn diese Fehlermaßnahme nicht korrekt ausgeführt wird oder wenn durch die Fehlermaßnahme nicht ausreichend auf den erkannten Fehler reagiert werden kann, kann dies herkömmlicherweise wenn überhaupt erst dann erkannt werden, wenn ein neuer Fehler detektiert wird. Im Gegensatz dazu ermöglicht es das vorliegende Verfahren, durchgeführte Fehlermaßnahmen explizit zu überwachen und individuell reagieren zu können, wenn bestimmte Fehlermaßnahmen nicht korrekt durchgeführt werden.
  • Das vorliegende Verfahren stellt besonders zweckmäßig eine Erweiterung des in der DE 10 2018 210 733 A1 gezeigten Überwachungskonzepts dar. Wie eingangs erläutert, betrifft die DE 10 2018 210 733 A1 ein System aus Hardware- und Softwareüberwachungsmodulen, die in verschiedene Hierarchieebenen eingeteilt sind. Das vorliegende Verfahren erweitert das in der DE 10 2018 210 733 A1 gezeigte Überwachungskonzept besonders zweckmäßig um eine mehrstufige Fehlerüberwachung bzw. eine mehrstufige Überwachung von Fehlermaßnahmen. Das System aus einander übergeordneten Hardware- und Softwareüberwachungsmodulen gemäß dem vorliegenden Verfahren kann insbesondere gemäß einem derartigen Überwachungsmodulsystem der DE 10 2018 210 733 A1 ausgestaltet sein. Die einander übergeordneten Überwachungsmodule gemäß dem vorliegenden Verfahren können insbesondere als ein System aus Überwachungsmodulen in drei Hierarchieebenen bzw. drei einander übergeordneten Instanzen gemäß der DE 10 2018 210 733 A1 ausgestaltet sein. Für eine detaillierte Erläuterung des derartigen Systems aus Überwachungsmodulen verschiedener Hierarchieebenen sei insbesondere vollumfänglich auf die DE 10 2018 210 733 A1 verwiesen, deren Offenbarung auch zum Inhalt dieser Anmeldung gemacht wird.
  • Gemäß einer vorteilhaften Ausführungsform wird überprüft, ob die übergeordnete Fehlermaßnahme korrekt durchgeführt wird. Wenn im Zuge dieser Überprüfung erkannt wird, dass die übergeordnete Fehlermaßnahme nicht korrekt durchgeführt wird, wird vorteilhafterweise erneut eine übergeordnete Fehlermaßnahme bzw. eine weitere übergeordnete Fehlermaßnahme durchgeführt und es wird erneut überprüft, ob diese weitere übergeordnete Fehlermaßnahme korrekt durchgeführt wird. Insbesondere wird somit jede durchgeführte Fehlermaßnahme überprüft und bei einer nicht korrekt durchgeführten Fehlermaßnahme wird zweckmäßigerweise jeweils eine weitere Fehlermaßnahme durchgeführt. Somit können insbesondere kaskadiert übergeordnete Fehlermaßnahmen durchgeführt werden, um individuell auf nicht korrekt durchgeführte Fehlermaßnahmen reagieren zu können. Insbesondere können wenn nötig so lange weitere übergeordnete Fehlermaßnahmen durchgeführt werden, bis eine finale, oberste Fehlermaßnahme durchgeführt wird, beispielsweise eine Deaktivieren der kompletten Recheneinheit bzw. des kompletten Recheneinheitensystems.
  • Vorzugsweise wird die vorgegebene Fehlermaßnahme in Abhängigkeit von dem erkannten Fehler gemäß einer vorgegebenen Fehlerreaktionszeit durchgeführt. Je nach Schwere bzw. Grad des jeweiligen Fehlers, kann somit unterschiedlich schnell auf diesen reagiert werden. Beispielsweise kann bei einem Fehler eines sicherheitskritischen Prozesses mit einer kurzen Fehlerreaktionszeit reagiert werden, so dass dieser schnellstmöglich behoben werden kann.
  • Bevorzugt wird, wenn die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird und/oder wenn ferner die übergeordnete Fehlermaßnahme nicht korrekt durchgeführt wird, in Abhängigkeit von der nicht korrekt durchgeführten Fehlermaßnahme die entsprechende übergeordnete Fehlermaßnahme gemäß einer jeweiligen vorgegebenen Fehlerreaktionszeit durchgeführt. Somit kann mit einer individuellen Fehlerreaktionszeit auf eine nicht korrekt durchgeführte Fehlermaßnahme reagiert werden. Zweckmäßigerweise wird somit ein dediziertes Reagieren auf verschiedene Arten von Fehlern bzw. Fehlerquellen ermöglicht, um mit individuellen Fehlerreaktionszeiten auf individuelle Fehler eines Prozesses, eines Überwachungsmoduls oder einer Fehlerreaktion reagieren zu können.
  • Vorzugsweise überprüft das Überwachungsmodul, welches den Fehler erkennt, und/oder das diesem Überwachungsmodul übergeordnete Überwachungsmodul, ob die vorgegebene Fehlermaßnahme korrekt durchgeführt wird. Die Fehlermaßnahme kann somit von derselben Instanz bzw. in derselben Hierarchieebene durchgeführt werden, in welcher der zugrunde liegende Fehler erkannt wird, oder zweckmäßigerweise auch von einer übergeordneten Instanz bzw. in einer übergeordneten Hierarchieebene.
  • Bevorzugt führt das Überwachungsmodul, welches erkennt, dass die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird, und/oder das diesem Überwachungsmodul übergeordnete Überwachungsmodul die übergeordnete Fehlermaßnahme durch. Bei nicht korrekter Fehlermaßnahme kann die entsprechende übergeordnete Fehlermaßnahme somit von derselben Instanz bzw. in derselben Hierarchieebene erfolgen, in welcher die auch die Fehlermaßnahme ausgeführt wird, oder zweckmäßigerweise auch von einer übergeordneten Instanz bzw. in einer übergeordneten Hierarchieebene.
  • Gemäß einer besonders vorteilhaften Ausführungsform wird, wenn ein Fehler eines Prozesses erkannt wird, als vorgegebene Fehlermaßnahme dieser als fehlerhaft erkannte Prozess deaktiviert oder neugestartet. Insbesondere kann das untergeordnete Softwaremodul, welchem dieser Prozess zugeordnet ist, das Deaktivieren bzw. den Neustart selbst durchführen oder veranlassen.
  • Vorzugsweise wird überprüft, ob das Deaktivieren des als fehlerhaft erkannten Prozesses als Fehlermaßnahme korrekt durchgeführt wird, indem überprüft wird, ob Übertragungen, welche im Zuge eines fehlerfreien Ausführens des Prozesses durchgeführt werden, nicht mehr durchgeführt werden. Insbesondere kann dieser Prozess im fehlerfreien Zustand spezielle Daten, Werte, Nachrichten usw. an weitere Prozessoren oder Komponenten der Recheneinheit übertragen. Wenn der Prozess nun fehlerhaft ist und deaktiviert werden soll, überprüft insbesondere das untergeordnete Softwaremodul, welchem dieser Prozess zugeordnet ist, ob diese Übertragungen tatsächlich ausbleiben. Werden diese Übertragungen dennoch weiterhin ausgesendet, deutet dies darauf hin, dass der Prozess nicht deaktiviert ist und dass die Fehlermaßnahme somit nicht korrekt durchgeführt wird.
  • Bevorzugt wird, wenn erkannt wird, dass das Deaktivieren oder der Neustart des als fehlerhaft erkannten Prozesses als Fehlermaßnahme nicht korrekt durchgeführt wird, als übergeordnete Fehlermaßnahme eine Hardwarekomponente deaktiviert oder neugestartet, auf welcher der als fehlerhaft erkannte Prozess ausgeführt wird. Insbesondere kann es sich bei dieser Hardwarekomponente um einen Prozessor bzw. einen Prozessorkern der jeweiligen Recheneinheit handeln oder zweckmäßigerweise auch um die gesamte Recheneinheit. Insbesondere wird von dieser Hardwarekomponente auch das untergeordnete Softwareüberwachungsmodul ausgeführt, welchem der fehlerhafte Prozess zugeordnet ist. Ferner kann von der Hardwarekomponente zweckmäßigerweise auch das entsprechende übergeordnete Softwareüberwachungsmodul ausgeführt werden. Zweckmäßigerweise informiert das untergeordnete Softwareüberwachungsmodul das ihm übergeordnete Softwareüberwachungsmodul und/oder das Hardwareüberwachungsmodul über die nicht korrekt durchgeführte Fehlermaßnahme. Zweckmäßigerweise kann das übergeordnete Softwareüberwachungsmodul bzw. das Hardwareüberwachungsmodul auch indirekt über die nicht korrekt durchgeführte Fehlermaßnahme informiert werden, beispielsweise wenn ein Fehlerzähler einen Schwellwert erreicht. Das übergeordnete Softwareüberwachungsmodul und/oder das Hardwareüberwachungsmodul führt daraufhin zweckmäßigerweise die übergeordnete Fehlermaßnahme durch und deaktiviert die Hardwarekomponente bzw. startet diese neu. Besonders zweckmäßig führt das Hardwareüberwachungsmodul als oberste Instanz den Neustart bzw. die Deaktivierung der Hardwarekomponente durch.
  • Gemäß einer bevorzugten Ausführungsform ist das wenigstens eine untergeordnete Softwareüberwachungsmodul über eine erste Schnittstelle mit dem übergeordneten Softwareüberwachungsmodul verbunden. Alternativ oder zusätzlich ist das übergeordnete Softwareüberwachungsmodul vorzugsweise über eine zweite Schnittstelle mit dem übergeordneten Hardwareüberwachungsmodul verbunden. Insbesondere kann es sich bei diesen Schnittstellen jeweils um eine in Software und/oder in Hardware implementierte Schnittstelle handeln. Zweckmäßigerweise ist die erste Schnittstelle zwischen den untergeordneten und dem übergeordneten Softwareüberwachungsmodul als eine Software-Schnittstelle ausgebildet. Die zweite Schnittstelle zwischen übergeordnetem Softwareüberwachungsmodul und übergeordnetem Hardwareüberwachungsmodul ist zweckmäßigerweise als eine Hardware-Schnittstelle ausgebildet. Insbesondere sind die erste und die zweite Schnittstelle jeweils standardisierte Schnittstellen. Die Überwachungsmodule sind zweckmäßigerweise auf diese standardisierten Schnittstellen ausgelegt, so dass ein flexibler Austausch einzelner Überwachungsmodule ermöglicht wird.
  • Vorteilhafterweise wird als die Fehlermaßnahme und/oder als die übergeordnete Fehlermaßnahme das wenigstens eine untergeordnete Softwareüberwachungsmodul über die erste Schnittstelle ausgetauscht. Über die erste Schnittstelle kann das jeweilige ausgetauschte untergeordnete Softwareüberwachungsmodul mit dem übergeordneten Softwareüberwachungsmodul verbunden werden. Alternativ oder zusätzlich wird bevorzugt das übergeordnete Softwareüberwachungsmodul über die erste Schnittstelle und die zweite Schnittstelle ausgetauscht. Über die beiden Schnittstellen kann das übergeordnete Softwareüberwachungsmodul flexibel mit den untergeordneten Softwareüberwachungsmodulen sowie dem übergeordneten Hardwareüberwachungsmodul verbunden werden. Alternativ oder zusätzlich wird das übergeordnete Hardwareüberwachungsmodul vorzugsweise über die zweite Schnittstelle ausgetauscht. Das Hardwareüberwachungsmodul kann über die zweite Schnittstelle mit den entsprechenden übergeordneten Softwareüberwachungsmodulen verbunden werden. Die standardisierten Schnittstellen ermöglichen es somit, auf aufwandsarme Weise andere Prozesse und Softwareüberwachungsmodule einzubinden bzw. auf ein anderes Hardwareüberwachungsmodul umzustellen.
  • Besonders bevorzugt eignet sich das Verfahren zur Anwendung im Fahrzeugbereich. Die zu überwachenden Recheneinheiten können jeweils insbesondere als ein Steuergerät bzw. als ein Mikrocontroller oder Mikroprozessor in einem (Kraft-) Fahrzeug ausgebildet sein. Von der Recheneinheit ausgeführte, zu überwachende Prozesse können insbesondere sicherheitskritische Funktionen sein, welche zum sicheren Betrieb und zur Steuerung des Fahrzeugs ausgeführt werden, beispielsweise im Zuge einer Motorsteuerung oder im Zuge von Fahrassistenzfunktionen usw. Durch die Überwachung derartiger Recheneinheiten im Rahmendes vorliegenden Verfahrens können insbesondere Sicherheitsanforderungen im (Kraft-) Fahrzeugbereich erfüllt werden, wie sie beispielsweise in der Norm ISO 26262 vorgegeben werden oder insbesondere von dem sog. Automotive Safety Integrity Level (ASIL), eine von der ISO 26262 spezifizierte Sicherheitsanforderungsstufe für sicherheitsrelevante Systeme in Kraftfahrzeugen.
  • Eine erfindungsgemäße Recheneinheit bzw. ein erfindungsgemäßes System aus wenigstens zwei derartigen Recheneinheiten ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen. Besonders bevorzugt ist die Recheneinheit bzw. das System aus Recheneinheiten in ein Steuergerät eines Kraftfahrzeugs implementiert.
  • Auch die Implementierung eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich.
  • Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
  • Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.
  • Figurenliste
    • 1a bis 1d zeigen schematisch Steuergeräte eines Fahrzeugs, die jeweils dazu eingerichtet sind, eine bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens durchzuführen.
    • 2 zeigt schematisch eine bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens als ein Blockdiagramm.
  • Ausführungsform(en) der Erfindung
  • In 1a ist ein Steuergerät 100 eines (Kraft-) Fahrzeugs schematisch dargestellt, beispielsweise ein Steuergerät zum Ausführen von Fahrassistenzfunktionen.
  • Das Steuergerät 100 weist einen Mikrocontroller 110 auf, welcher wiederum eine Vielzahl von Prozessorkernen 111, 112 aufweist. In jedem Prozessorkern 111, 112 wird jeweils eine Vielzahl von Prozessen 131, 132, 141, 142 ausgeführt. Ferner ist in dem Mikrocontroller 110 eine als Sicherheitskern ausgebildete Sicherheitsrecheneinheit 113 vorgesehen.
  • Um das Steuergerät 100 auf Fehler zu überwachen ist ein System 200 aus Überwachungsmodulen bzw. Watchdogs vorgesehen mit einer Vielzahl von untergeordneten Softwareüberwachungsmodulen 231, 232, einem übergeordneten Softwareüberwachungsmodul 221 und einem übergeordneten Hardwareüberwachungsmodul 211.
  • In jedem der Prozessorkerne 111, 112 ist jeweils ein untergeordnetes, prozess- bzw. anwendungsspezifisches Softwareüberwachungsmodul 231, 232 vorgesehen. Diese untergeordneten Softwareüberwachungsmodule 231, 232 werden jeweils als ein Programm bzw. Prozess von dem jeweiligen Prozessorkern 111, 112 ausgeführt und sind in dessen Programmablauf eingebunden. Jedes dieser Softwareüberwachungsmodule 231, 232 überwacht die in dem jeweiligen Prozessorkern 111, 112 ausgeführten Prozesse 131, 132, 141, 142,.
  • Ferner ist ein übergeordnetes, internes, zentrales Softwareüberwachungsmodul 221 vorgesehen, welches beispielsweise als ein Programm bzw. Prozess in der Sicherheitsrecheneinheit 113 des Mikrocontrollers 110 ausgeführt wird. Jedes untergeordnete Softwareüberwachungsmodul 231, 232 ist über eine erste Schnittstelle 261, 262 mit dem übergeordneten Softwareüberwachungsmodul 221 verbunden und wird von diesem überwacht.
  • Das übergeordnete Hardwareüberwachungsmodul 211 ist als eine externe, von dem Steuergerät 100 unabhängige Hardwareeinheit vorgesehen. Das übergeordnete Softwareüberwachungsmodul 221 ist über eine zweite Schnittstelle 251 mit dem übergeordneten Hardwareüberwachungsmodul 211 verbunden und wird von diesem überwacht.
  • Das Steuergerät 100 kann ferner auch als ein System aus mehreren Recheneinheiten ausgebildet sein und beispielsweise mehrere Mikrocontroller umfassen, wie es schematisch in den 1b, 1c und 1d dargestellt ist.
  • Im Beispiel der 1b, 1c und 1d weist das Steuergerät 100 jeweils ferner einen zweiten Mikrocontroller 120 auf, welcher wiederum eine Vielzahl von Prozessorkernen 121, 122 aufweist, wobei in jedem dieser Prozessorkerne 121, 122 jeweils eine Vielzahl von Prozessen 151, 152, 161, 162 ausgeführt wird.
  • Auch in den Prozessorkernen 121, 122 ist jeweils ein untergeordnetes, prozess- bzw. anwendungsspezifisches Softwareüberwachungsmodul 233, 234 vorgesehen, um die in dem jeweiligen Prozessorkern 121, 122 ausgeführten Prozesse 151, 152, 161, 162 zu überwachen.
  • Im Beispiel von 1b ist das in der Sicherheitsrecheneinheit 113 des ersten Mikrocontrollers 110 ausgeführte, übergeordnete Softwareüberwachungsmodul 221 ferner auch zur Überwachung der untergeordneten Softwareüberwachungsmodule 233, 234 des zweiten Mikrocontrollers 120 vorgesehen. Zu diesem Zweck sind die untergeordneten Softwareüberwachungsmodule 233, 234 jeweils über eine entsprechende Schnittstelle 263, 264 mit dem übergeordneten Softwareüberwachungsmodul 221 verbunden, so dass dieses Überwachungsmodul 221 direkt über eine Inter-Prozessor-Kommunikation 115 mit den untergeordneten Modulen 233, 234 kommunizieren kann.
  • Ferner ist es auch denkbar, in dem zweiten Mikrocontroller 120 ein eigenes übergeordnetes Softwareüberwachungsmodul 222 vorzusehen, wie es in 1c dargestellt ist. Beispielsweise weist zu diesem Zweck auch der zweite Mikrocontroller 120 eine als Sicherheitskern ausgebildete Sicherheitsrecheneinheit 123 auf, in welcher das übergeordnete Softwareüberwachungsmodul 222 als ein als ein Programm bzw. Prozess ausgeführt wird. Die untergeordneten Softwareüberwachungsmodule 233, 234 sind jeweils über die entsprechende Schnittstelle 263, 264 mit diesem übergeordneten Softwareüberwachungsmodul 222 verbunden und werden von diesem überwacht. Das übergeordnete Softwareüberwachungsmodul 222 des zweiten Mikrocontrollers 120 steht ferner über eine Inter-Prozessor-Kommunikation 115 mit dem übergeordneten Softwareüberwachungsmodul 221 des ersten Mikrocontrollers 110 in Verbindung. In diesem Fall ist das übergeordneten Softwareüberwachungsmodul 221 des ersten Mikrocontrollers 110 ferner insbesondere vorgesehen, um eine Kommunikation zwischen den übergeordneten Softwareüberwachungsmodul 222 des zweiten Mikrocontrollers 120 und dem übergeordneten Hardwareüberwachungsmodul 211 zu vermitteln bzw. zu koordinieren.
  • Alternativ ist es auch denkbar, dass das übergeordnete Softwareüberwachungsmodul 222 des zweiten Mikrocontrollers 120 und das Hardwareüberwachungsmodul 211 direkt miteinander kommunizieren können, wie es in 1d dargestellt ist. Dabei ist Softwareüberwachungsmodul 222 über eine entsprechende Schnittstelle 252 direkt mit dem Hardwareüberwachungsmodul 211 verbunden. In diesem Fall ist eine Inter-Prozessor-Kommunikation zwischen den übergeordneten Softwareüberwachungsmodulen 221 und 222 der beiden Mikrocontroller 110, 120 für die Kommunikation zwischen dem Softwareüberwachungsmodul 222 und dem Hardwareüberwachungsmodul 211 nicht nötig. Es versteht sich, dass die Mikrocontroller 110 und 120 aber dennoch über eine Inter-Prozessor-Kommunikation miteinander verbunden sein können.
  • In den Beispielen der 1b, 1c und 1d ist das Hardwareüberwachungsmodul 211 somit allen übergeordneten Softwareüberwachungsmodulen 221, 222 und ferner allen untergeordneten Softwareüberwachungsmodulen 231, 232, 233, 234 der beiden Mikrocontroller 110, 120 gemeinsam übergeordnet. Alternativ ist es auch denkbar, ein zweites Hardwareüberwachungsmodul zu verwenden, so dass ein erstes Hardwareüberwachungsmodul dem ersten Mikrocontroller 110 zugewiesen ist und ein zweites Hardwareüberwachungsmodul dem zweiten Mikrocontroller 120.
  • Ferner können über die Schnittstellen 251,252, 261, 262, 263, 264 einzelne der Überwachungsmodule bei Bedarf flexibel und individuell ausgetauscht werden.
  • Es versteht sich ferner, dass das Steuergerät 100 noch weitere Komponenten aufweisen kann, beispielsweise weitere Mikrocontroller oder Mikroprozessoren sowie beispielsweise Analog-Digital-Wandler (ADC), Digital-Analog-Wandler (DAC), Ein/-Ausgänge (E/A) usw.
  • Mit dem System 200 aus einander übergeordneten Überwachungsmodulen bzw. Watchdogs, wie es in den 1a, 1b, 1c und 1d gezeigt ist, wird eine mehrstufige Überwachung des Steuergeräts 100 sowie ferner eine mehrstufige Fehlerreaktion bzw. eine mehrstufige Überwachung von Fehlerreaktionen ermöglicht. Zu diesem Zweck ist das Steuergerät 100 dazu eingerichtet, eine bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens durchzuführen bzw. gemäß einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens überwacht zu werden.
  • Eine bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens ist in 2 als ein Blockdiagramm dargestellt und wird nachfolgend beispielhaft anhand von 2 in Bezug auf das in 1c gezeigte Steuergerät erläutert.
  • In einem Schritt 301 wird das Steuergerät 100 regulär betrieben und die einzelnen Prozessorkerne 111, 112, 121, 122 führen ihre jeweiligen Prozesse 131, 132, 141, 142, 151, 152, 161, 162 aus.
  • In Schritt 302 wird eine mehrstufige Überwachung des Steuergeräts 100 durchgeführt. Dabei überwachen die einzelnen untergeordneten Softwareüberwachungsmodule 231, 232, 233, 234 die jeweiligen Prozesse 131, 132, 141, 142, 151, 152, 161, 162. Die übergeordneten Softwareüberwachungsmodule 221, 222 überwachen wiederum die untergeordneten Softwareüberwachungsmodule 231, 232, 233, 234 und das Hardwareüberwachungsmodul 211 überwacht die übergeordneten Softwareüberwachungsmodule 221, 222. Diese einzelnen Überwachungen können jeweils beispielsweise mit Hilfe einer Frage-/Antwort-Kommunikation durchgeführt werden.
  • Als Prozesse 131, 132, 141, 142, 151, 152, 161, 162 können in den verschiedenen Prozessorkernen 111, 112, 121, 122 jeweils beispielsweise Tasks unterschiedlicher ASI L-Stufen ausgeführt werden. Dabei werden die einzelnen Tasks in den verschiedenen Prozessorkernen 111, 112, 121, 122 jeweils beispielsweise mittels eines Ringspeichers („ring buffer“) abgearbeitet und von dem jeweiligen untergeordneten Softwareüberwachungsmodul 231, 232, 233, 234 überwacht. Die Größe dieser einzelnen Ringspeicher kann jeweils insbesondere in Abhängigkeit von einem Raster des jeweiligen untergeordneten Softwareüberwachungsmoduls 231, 232, 233, 234 sowie ferner insbesondere in Abhängigkeit von einer Fehlertoleranzzeit des jeweiligen Tasks gewählt werden.
  • Die applikationsspezifischen, untergeordneten Softwareüberwachungsmodule 231, 232, 233, 234 lesen die jeweiligen Ringspeicher insbesondere kontinuierlich aus und überprüfen deren Einträge auf Richtigkeit und Aktualität. Ferner überprüfen die übergeordneten Softwareüberwachungsmodule 221, 222 zweckmäßigerweise die untergeordneten Softwareüberwachungsmodule 231, 232, 233, 234 auf Richtigkeit und Aktualität.
  • Zweckmäßigerweise können die Ringspeicher der verschiedenen Prozessorkernen 111, 112, 121, 122 jeweils applikationsspezifisch und ASILspezifisch unterschieden werden, so dass es insbesondere nicht zu Störungen oder Beeinflussungen zwischen verschiedenen Applikationen und verschiedenen ASIL-Stufen einer Applikation kommt.
  • In Schritt 303 wird ein Fehler erkannt. Beispielsweise erkennt das untergeordnete Softwareüberwachungsmodul 231, dass der Prozess 131 in dem Prozessorkern 111 nicht mehr korrekt ausgeführt wird.
  • In Schritt 304 wird eine vorgegebene Fehlermaßnahme gemäß einer vorgegebenen Fehlerreaktionszeit durchgeführt, um diesen erkannten Fehler zu beheben. Beispielsweise führt zu diesem Zweck das untergeordnete Softwareüberwachungsmodul 231 einen Neustart des fehlerhaften Prozesses 131 durch.
  • In Schritt 305 wird überprüft, ob diese vorgegebene Fehlermaßnahme korrekt durchgeführt wird. Zu diesem Zweck überprüft das untergeordnete Softwareüberwachungsmodul 231, ob der fehlerhafte Prozess 131 neugestartet wurde und nun korrekt funktioniert. Wenn dies der Fall ist, wird mit dem regulären Betrieb 301 des Steuergeräts 100 fortgefahren.
  • Wenn im Zuge der Überprüfung 305 jedoch erkannt wird, dass die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird, wird in Schritt 306 eine übergeordnete, zweite Fehlermaßnahme gemäß einer zweiten vorgegebenen Fehlerreaktionszeit durchgeführt. Wenn beispielsweise das untergeordnete Softwareüberwachungsmodul 231 in Schritt 305 erkennt, dass der fehlerhafte Prozess 131 nicht neugestartet werden kann, wird dies dem übergeordneten Softwareüberwachungsmodul 221 mitgeteilt, welches in Schritt 306 als übergeordnete, zweite Fehlermaßnahme einen Neustart des Prozessorkerns 111 durchführt oder den fehlerhaften Prozess 131 deaktiviert.
  • In Schritt 307 wird nun überwacht, ob diese übergeordnete Fehlermaßnahme korrekt durchgeführt wird. Zu diesem Zweck überwacht das übergeordnete Softwareüberwachungsmodul 221 beispielsweise, ob der Prozessorkern 111 neugestartet wurde oder die Deaktivierung des Prozesses 131 erfolgreich war. Sofern dies der Fall ist, wird wieder der reguläre Betrieb 301 des Steuergeräts 100 gestartet.
  • Wenn jedoch im Zuge dieser Überprüfung 307 erkannt wird, dass die übergeordnete, zweite Fehlermaßnahme nicht korrekt durchgeführt wird, wird erneut eine übergeordnete, dritte Fehlermaßnahme gemäß einer dritten vorgegebenen Fehlerreaktionszeit durchgeführt.
  • Das übergeordnete Softwareüberwachungsmodul 221 teilt in diesem Fall dem Hardwareüberwachungsmodul 211 mit, dass der Prozessorkern 111 nicht neugestartet werden kann oder dass der Prozess 131 nicht deaktiviert werden kann. Dieses Mitteilen kann beispielsweise auch dadurch erfolgen, dass Fragen im Rahmen einer Frage/Antwort-Kommunikation mit dem Hardwareüberwachungsmodul nicht richtig beantwortet werden.
  • Wenn beispielsweise ein Fehlerzähler bzw. ein Frage-Antwort-Zähler im Rahmen dieser Frage/Antwort-Kommunikation einen Schwellwert erreicht, deaktiviert das Hardwareüberwachungsmodul 211 in Schritt 308 als übergeordnete, dritte Fehlermaßnahme Ausgänge, Endstufen und Schnittstellen des Steuergeräts 100. Zusätzlich kann beispielsweise ein Neustart des Steuergeräts 100 durch das Hardwareüberwachungsmodul 211 ausgelöst werden. Die Deaktivierung der Ausgänge, Endstufen und Schnittstellen des Steuergeräts 100 überdauert dabei zweckmäßigerweise Neustarts und kann besonders zweckmäßig nur durch das Hardwareüberwachungsmodul 211 rückgängig gemacht werden.
  • In Schritt 309 wird daraufhin überprüft, ob der Fehlerzähler sich verringert und wieder unter den vorgegebenen Schwellwert fällt. Sofern dies nicht der Fall ist, deutet dies daraufhin, dass der Fehler des Prozesses 131 nach wie vor vorliegt. Die Ausgänge, Endstufen und Schnittstellen des Steuergeräts 100 bleiben deaktiviert.
  • Wenn der Fehlerzähler jedoch wieder unter den Schwellwert fällt, deutet dies darauf hin, dass der Prozess 131 wieder fehlerfrei funktioniert. In diesem Fall aktiviert das Hardwareüberwachungsmodul 211 in Schritt 310 die Ausgänge, Endstufen und Schnittstellen des Steuergeräts 100. Daraufhin kann wieder der reguläre Betrieb 301 des Steuergeräts 100 gestartet werden.
  • Das vorliegende Verfahren ermöglicht es mit Hilfe des Systems 200 aus Überwachungsmodulen eine mehrstufige Überwachung der Recheneinheit 100 sowie eine mehrstufige Fehlerreaktion bzw. eine mehrstufige Überwachung von Fehlerreaktionen durchzuführen. Auf nicht korrekt durchführbare Fehlermaßnahmen kann somit individuell mit individuellen Fehlerreaktionszeiten reagiert werden.
  • 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 102018210733 A1 [0003, 0013]

Claims (14)

  1. Verfahren zum Überwachen wenigstens einer Recheneinheit (100, 110, 120), in welcher eine Vielzahl von Prozessen (131, 132, 141, 142, 151, 152, 161, 162) ausgeführt wird, mit wenigstens einem untergeordneten Softwareüberwachungsmodul (231, 232, 233, 234), einem diesem wenigstens einen untergeordneten Softwareüberwachungsmodul (231, 232, 233, 234) übergeordneten Softwareüberwachungsmodul (221, 222) und einem diesem übergeordneten Softwareüberwachungsmodul (221, 222) übergeordneten Hardwareüberwachungsmodul (211), wobei das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) wenigstens einen in der wenigstens einen Recheneinheit ausgeführten Prozess (131, 132, 141, 142, 151, 152, 161, 162) überwacht, wobei das übergeordnete Softwareüberwachungsmodul (221, 222) das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) überwacht und wobei das Hardwareüberwachungsmodul (211) das übergeordnete Softwareüberwachungsmodul (221, 222) überwacht (302), wobei, wenn das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) oder das übergeordnete Softwareüberwachungsmodul (221, 222) oder das übergeordnete Hardwareüberwachungsmodul (211) im Zuge der jeweiligen Überwachung einen Fehler erkennt (303), eine vorgegebene Fehlermaßnahme durchgeführt wird (304), wobei überprüft wird, ob die vorgegebene Fehlermaßnahme korrekt durchgeführt wird (305), und, wenn im Zuge dieser Überprüfung erkannt wird, dass die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird, eine übergeordnete Fehlermaßnahme durchgeführt wird (306).
  2. Verfahren nach Anspruch 1, wobei überprüft wird, ob die übergeordnete Fehlermaßnahme korrekt durchgeführt wird (307), wobei, wenn im Zuge dieser Überprüfung erkannt wird, dass die übergeordnete Fehlermaßnahme nicht korrekt durchgeführt wird, erneut eine übergeordnete Fehlermaßnahme durchgeführt wird (308) und wobei erneut überprüft wird, ob diese übergeordnete Fehlermaßnahme korrekt durchgeführt wird (309).
  3. Verfahren nach Anspruch 1 oder 2, wobei in Abhängigkeit von dem erkannten Fehler die vorgegebene Fehlermaßnahme gemäß einer vorgegebenen Fehlerreaktionszeit durchgeführt wird.
  4. Verfahren nach einem der vorstehenden Ansprüche, wobei, wenn die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird, in Abhängigkeit von der nicht korrekt durchgeführten Fehlermaßnahme die entsprechende übergeordnete Fehlermaßnahme gemäß einer jeweiligen vorgegebenen Fehlerreaktionszeit durchgeführt wird.
  5. Verfahren nach einem der vorstehenden Ansprüche, wobei das Überwachungsmodul, welches den Fehler erkennt, und/oder das diesem Überwachungsmodul übergeordnete Überwachungsmodul überprüft, ob die vorgegebene Fehlermaßnahme korrekt durchgeführt wird.
  6. Verfahren nach einem der vorstehenden Ansprüche, wobei das Überwachungsmodul, welches erkennt, dass die vorgegebene Fehlermaßnahme nicht korrekt durchgeführt wird, und/oder das diesem Überwachungsmodul übergeordnete Überwachungsmodul die übergeordnete Fehlermaßnahme durchführt.
  7. Verfahren nach einem der vorstehenden Ansprüche, wobei, wenn ein Fehler eines Prozesses (131) erkannt wird (303), als vorgegebene Fehlermaßnahme dieser als fehlerhaft erkannte Prozess (131) deaktiviert oder neugestartet wird (304).
  8. Verfahren nach Anspruch 7, wobei überprüft wird, ob das Deaktivieren des als fehlerhaft erkannten Prozesses (131) als Fehlermaßnahme korrekt durchgeführt wird (305), indem überprüft wird, ob Übertragungen, welche im Zuge eines fehlerfreien Ausführens des Prozesses (131) durchgeführt werden, nicht mehr durchgeführt werden.
  9. Verfahren nach Anspruch 7 oder 8, wobei, wenn erkannt wird, dass das Deaktivieren oder der Neustart des als fehlerhaft erkannten Prozesses (131) als Fehlermaßnahme nicht korrekt durchgeführt wird (305), als übergeordnete Fehlermaßnahme eine Hardwarekomponente (111), auf welcher der als fehlerhaft erkannte Prozess (131) ausgeführt wird, deaktiviert oder neugestartet wird (306).
  10. Verfahren nach einem der vorstehenden Ansprüche, wobei das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) über eine erste Schnittstelle (261, 262, 263, 264) mit dem übergeordneten Softwareüberwachungsmodul (221, 222) verbunden ist und/oder wobei das übergeordnete Softwareüberwachungsmodul (221, 222) über eine zweite Schnittstelle (251, 252) mit dem übergeordneten Hardwareüberwachungsmodul (211) verbunden ist.
  11. Verfahren nach Anspruch 10, wobei als die Fehlermaßnahme und/oder als die übergeordnete Fehlermaßnahme das wenigstens eine untergeordnete Softwareüberwachungsmodul (231, 232, 233, 234) über die erste Schnittstelle (261, 262, 263, 264) ausgetauscht wird und/oder das übergeordnete Softwareüberwachungsmodul (221, 222) über die erste Schnittstelle (251, 252) und die zweite Schnittstelle (261, 262, 263, 264) ausgetauscht wird und/oder das übergeordnete Hardwareüberwachungsmodul (211) über die zweite Schnittstelle (251, 252) ausgetauscht wird.
  12. Recheneinheit oder System aus wenigstens zwei Recheneinheiten (100, 110, 120), mit Mitteln, um ein Verfahren nach einem der vorstehenden Ansprüche durchzuführen.
  13. Computerprogramm, das eine Recheneinheit dazu veranlasst, alle Verfahrensschritte eines Verfahrens nach einem der Ansprüche 1 bis 11 durchzuführen, wenn es auf der Recheneinheit ausgeführt wird.
  14. Maschinenlesbares Speichermedium mit einem darauf gespeicherten Computerprogramm nach Anspruch 13.
DE102020209228.1A 2020-07-22 2020-07-22 Verfahren zum Überwachen wenigstens einer Recheneinheit Pending DE102020209228A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102020209228.1A DE102020209228A1 (de) 2020-07-22 2020-07-22 Verfahren zum Überwachen wenigstens einer Recheneinheit
CN202110830471.5A CN113971100A (zh) 2020-07-22 2021-07-22 用于监控至少一个计算单元的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020209228.1A DE102020209228A1 (de) 2020-07-22 2020-07-22 Verfahren zum Überwachen wenigstens einer Recheneinheit

Publications (1)

Publication Number Publication Date
DE102020209228A1 true DE102020209228A1 (de) 2022-01-27

Family

ID=79179114

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020209228.1A Pending DE102020209228A1 (de) 2020-07-22 2020-07-22 Verfahren zum Überwachen wenigstens einer Recheneinheit

Country Status (2)

Country Link
CN (1) CN113971100A (de)
DE (1) DE102020209228A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115904850A (zh) * 2023-01-09 2023-04-04 深流微智能科技(深圳)有限公司 多核处理器的上电检测方法、可读存储介质及gpu

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009038434A1 (de) 2009-08-21 2011-02-24 Delphi Delco Electronics Europe Gmbh Prozessoranlage zur Steuerung mehrerer Funktionskomponenten eines Fahrzeugs
DE102018210733A1 (de) 2018-06-29 2020-01-02 Robert Bosch Gmbh Verfahren zum Überwachen wenigstens einer Recheneinheit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009038434A1 (de) 2009-08-21 2011-02-24 Delphi Delco Electronics Europe Gmbh Prozessoranlage zur Steuerung mehrerer Funktionskomponenten eines Fahrzeugs
DE102018210733A1 (de) 2018-06-29 2020-01-02 Robert Bosch Gmbh Verfahren zum Überwachen wenigstens einer Recheneinheit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115904850A (zh) * 2023-01-09 2023-04-04 深流微智能科技(深圳)有限公司 多核处理器的上电检测方法、可读存储介质及gpu

Also Published As

Publication number Publication date
CN113971100A (zh) 2022-01-25

Similar Documents

Publication Publication Date Title
DE10307342B4 (de) Vorrichtung und Verfahren zur modellbasierten On-Board-Diagnose
DE102017210156B4 (de) Vorrichtung und Verfahren zum Ansteuern eines Fahrzeugmoduls
EP3709166B1 (de) Verfahren und system zur sicheren signalmanipulation für den test integrierter sicherheitsfunktionalitäten
DE102016220197A1 (de) Verfahren zum Verarbeiten von Daten für ein automatisiertes Fahrzeug
DE102017210787A1 (de) Verfahren und Vorrichtung zum Ermitteln von Anomalien in einem Kommunikationsnetzwerk
EP1639465A2 (de) Verfahren zur überwachung des programmlaufs in einem mikro-computer
DE102005040142A1 (de) Verfahren zur Identifikation komplexer Diagnosesituationen im Kundendienst
DE102020209228A1 (de) Verfahren zum Überwachen wenigstens einer Recheneinheit
DE10307343B4 (de) On-Board-Diagnosevorrichtung und On-Board-Diagnoseverfahren für Kraftfahrzeuge
DE10328059A1 (de) Verfahren und Vorrichtung zur Überwachung eines verteilten Systems
DE102009001420A1 (de) Verfahren zur Fehlerbehandlung eines Rechnersystems
DE10315344B4 (de) Verfahren und Vorrichtung zur Erkennung fehlerhafter Komponenten in Fahrzeugen
DE69911255T2 (de) Mikroprozessormodul mit abstimmungseinrichtung zur rückstellung und verfahren dazu
EP3933593A1 (de) Verfahren und computerprogramm zum testen eines technischen systems
EP1960854A1 (de) Diagnoseverfahren und diagnosevorrichtung zur funktionsorientierten diagnose eines systems mit vernetzten komponenten
DE102017212560A1 (de) Verfahren zum ausfallsicheren Durchführen einer sicherheitsgerichteten Funktion
WO2011113405A1 (de) Steuergeräteanordnung
EP3173928A1 (de) Verfahren und vorrichtung zum überprüfen eines komponentenfehlerbaums
EP1868100A2 (de) Verfahren zur Fehlerdiagnose
DE102021212595A1 (de) Verfahren zum Überwachen eines Rechensystems
EP4341758A1 (de) Verfahren, vorrichtung, computerprogramm und computerlesbares speichermedium zur ermittlung von fehlerbehafteten fahrzeugen
DE102013201831A1 (de) Verfahren und Vorrichtung zum Analysieren von Ereignissen in einem System
DE102021213472A1 (de) Verfahren zur Ausführung einer Fahraufgabe in einem dezentralen Steuereinheitensystem und dezentrales Steuereinheitensystem
WO2022069109A1 (de) Verfahren zum erzeugen einer softwarekomponente für eine elektronische recheneinrichtung eines kraftfahrzeugs, computerprogrammprodukt, computerlesbares speichermedium sowie kraftfahrzeugexternes aktualisierungssystem
EP3779797A1 (de) Verfahren zur rechnergestützten vorausschauenden instandhaltung eines technischen systems

Legal Events

Date Code Title Description
R163 Identified publications notified