DE102015003194A1 - Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern - Google Patents

Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern Download PDF

Info

Publication number
DE102015003194A1
DE102015003194A1 DE102015003194.5A DE102015003194A DE102015003194A1 DE 102015003194 A1 DE102015003194 A1 DE 102015003194A1 DE 102015003194 A DE102015003194 A DE 102015003194A DE 102015003194 A1 DE102015003194 A1 DE 102015003194A1
Authority
DE
Germany
Prior art keywords
controller
operate
implemented
control unit
chip
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
DE102015003194.5A
Other languages
English (en)
Inventor
Axel Freiwald
Bejoy Mathews
Antonio Vilela
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE102015003194.5A priority Critical patent/DE102015003194A1/de
Priority to US15/041,789 priority patent/US10017188B2/en
Priority to KR1020160028608A priority patent/KR20160110203A/ko
Priority to JP2016048158A priority patent/JP6525906B2/ja
Publication of DE102015003194A1 publication Critical patent/DE102015003194A1/de
Priority to US15/848,626 priority patent/US10576990B2/en
Priority to KR1020180022786A priority patent/KR20180022759A/ko
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/023Avoiding failures by using redundant parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/06Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0018Method for the design of a control system
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0292Fail-safe or redundant systems, e.g. limp-home or backup systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24188Redundant processors run different programs
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24191Redundant processors are different in structure

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Safety Devices In Control Systems (AREA)

Abstract

Einrichtung zum Betreiben einer Vorrichtung, die einen ersten Controller, der dafür eingerichtet ist, von einem ersten Steuersignal gesteuert zu werden, einen zweiten Controller, der dafür eingerichtet ist, von einem zweiten Steuersignal gesteuert zu werden, eine Steuereinheit, die betreibbar mit dem ersten Controller und dem zweiten Controller verbunden ist, umfasst, wobei sowohl der erste Controller als auch der zweite Controller dafür eingerichtet sind, die Vorrichtung zu betreiben.

Description

  • ERFINDUNGSGEBIET
  • Ausführungsformen der vorliegenden Erfindung betreffen Automobilanwendungen, insbesondere Sicherheitsanwendungen, z. B. für Kraftübertragungssteuerung, Warnanzeigesteuerung, elektronische Servolenkung oder elektronische Bremsensteuerung.
  • STAND DER TECHNIK
  • Elektronische Funktionen in Automobilanwendungen werden im Falle von detektierten Problemen häufig einfach ausgeschaltet. In elektronischen Steuereinheiten (ECUs) wird der Mikrocontroller in einen passiven, sicheren Zustand versetzt, wenn ein sicherheitskritischer Fehler aufgetreten ist. Dies ist als ausfallsicherer Zustand bekannt. Manche sicherheitskritische Fehler sind nicht dauerhaft, erfordern aber ein Abschalten des gesamten Autoelektroniknetzwerks und einen neuen Zündungszyklus, um das System neu zu starten.
  • Ein anderer Ansatz ist es, den Neustart der elektronischen Funktion durchzuführen, während das Auto in Betrieb ist. Solche Systeme führen ein Rücksetzen aus, gefolgt von einem Selbsttest und versuchen dann, den Betrieb neu zu starten. Diese Prozedur benötigt im günstigsten Fall typischerweise einige hundert Millisekunden und im schlimmsten Fall wird der Betrieb nicht wieder aufgenommen. Somit kann die Zeit bis der Betrieb wieder aufgenommen wird selbst im günstigsten Fall für viele Anwendungen zu lang sein, z. B. für eine Servolenkung.
  • Es gibt Realisierungen von Mikrocontrollern, die in Automobilanwendungen verwendet werden, die sofort bei Auftreten irgendeines sicherheitsrelevanten Problems in einen passiven, sicheren Zustand versetzt werden. Aufgrund hoher Softwarekomplexität werden viele dieser Probleme von Softwarebugs verursacht, die von Watchdogs oder anderen Schutzmechanismen detektiert werden. Andere grundlegende Ursachen sind hardwarebezogen, wobei aber nur eine Minderheit dieser von einer permanenten Beschädigung ausgelöst wird, die als latenter Fehler bezeichnet wird.
  • Die Akzeptanz einer derartigen Fehlerbehandlung hat sich kürzlich geändert, d. h., dass es nicht länger akzeptiert wird, dass die ganze ECU in einen sicheren, passiven Aus-Zustand versetzt wird. Für sicherheitskritische ECUs wird nun ein Ausweichsystem gefordert, das irgendeine Form eines Betriebs bereitstellen soll, bis das Auto z. B. sicher geparkt oder bis der normale Betrieb wieder aufgenommen werden kann. Typische Namen für solche Betriebsarten werden als Heimhumpeln oder Weghumpeln oder Ausweichbetrieb bezeichnet.
  • Eine ausfallbetreibbare Systemlösung oder Systeme mit verbesserter Verfügbarkeit stellen selbst im Falle des Auftretens eines Fehlers ein akzeptables Leistungsniveau für sicherheitskritische Funktionen dar. Gründe zum Wechseln in diesen Betriebsmodus könnten ein latenter Hardwarefehler, ein sporadischer, nichtlatenter Hardwarefehler oder ein Softwarefehler sein.
  • Ein Ansatz ist es, einen Einzelcontroller zu verwenden, aber die kritischsten Teile zu duplizieren, welche die Teile sind, die die höchsten Fehlerraten (Failure-In-Time rates, FIT-Raten) aufweisen. Ein weiterer Ansatz ist es, einen Mehrkerncontroller zu verwenden, der mindestens einen zweiten CPU-Kern und einen separaten Satz von Peripherievorrichtungen enthält. Der zweite CPU-Kern und der Peripherievorrichtungssatz übernehmen den Betrieb, sobald der erste CPU-Kern des Mehrkerncontrollers ein Problem feststellt.
  • Die teuerste Lösung wäre es, das gesamte elektronische Steuerungssystem zu verdoppeln oder zu verdreifachen, indem zwei oder drei ECUs, mehrere Stromversorgungen und Kommunikationssysteme verwendet werden. Derartige Ansätze sind zu teuer und zu platzraubend für Automobilanwendungen.
  • Ein weiteres Problem liegt darin, dass die meisten dieser Lösungen noch immer gegen Fehler ankämpfen, die von einer gemeinsamen Quelle verursacht werden. Insbesondere wenn mehrere Controller dieselben Werkzeuge und dieselbe Software verwenden, werden sie potentiell dieselben systematischen, von Softwarebugs verursachten Probleme aufweisen.
  • Zusätzlich enthalten solche Systeme mehr Komponenten, die ausfallen können, und die Wahrscheinlichkeit, dass solche Ausfälle die Zuverlässigkeit weiter reduzieren oder zu einer inakzeptabel hohen Anzahl von Situationen mit reduziertem Betrieb führen. Als eine Auswirkung können solche Autos gezwungen sein, zu oft zu einer Werkstatt zu fahren.
  • US 2013/0067259 A1 beschreibt eine Mikrocontrollereinheit, die einen Hauptcontroller und einen Bereitschaftscontroller umfasst. Allerdings ist der Bereitschaftscontroller für geringen Stromverbrauch optimiert, wohingegen der Hauptcontroller auf Höchstleistung optimiert ist.
  • Kurzdarstellung
  • Eine erste Ausführungsform betrifft eine Einrichtung zum Betreiben einer Vorrichtung, die einen ersten Controller, der dafür eingerichtet ist, von einem zweiten Steuersignal gesteuert zu werden, einen zweiten Controller, der dafür eingerichtet ist, von einem zweiten Steuersignal gesteuert zu werden, eine Steuereinheit, die betreibbar mit dem ersten Controller und dem zweiten Controller verbunden ist, umfasst, wobei sowohl der erste Controller als auch der zweite Controller dafür eingerichtet sind, die Vorrichtung zu betreiben.
  • Eine zweite Ausführungsform bezieht sich auf ein Verfahren zum Betreiben einer Vorrichtung eines Fahrzeugs. Das Verfahren umfasst die folgenden Schritte: Erzeugen eines Steuersignals durch einen ersten Controller, der die Vorrichtung eines Fahrzeugs in einem ersten Betriebsmodus betreibt, Evaluieren des Steuersignals durch eine Steuereinheit, um ein Evaluationsergebnis bereitzustellen, und Übernehmen des Betriebs der Vorrichtung durch einen zweiten Controller gemäß dem Evaluationsergebnis.
  • Eine dritte Ausführungsform betrifft ein System, das einen ersten Controller, um eine Vorrichtung eines Fahrzeugs zu betreiben, wohingegen die Vorrichtung dafür eingerichtet ist, eine Sicherheitsfunktion zu implementieren, einen zweiten Controller, um die Vorrichtung zu betreiben, und eine Steuereinheit, die dafür eingerichtet ist, den ersten Controller und den zweiten Controller zu steuern, wohingegen der erste Controller auf einem ersten Chip implementiert ist und der zweite Controller auf einem zweiten Chip implementiert ist, umfasst.
  • Eine vierte Ausführungsform betrifft ein System, das einen ersten Controller, um eine Vorrichtung eines Fahrzeugs zu betreiben, wohingegen die Vorrichtung dafür eingerichtet ist, eine Sicherheitsfunktion zu implementieren, einen zweiten Controller, um die Vorrichtung zu betreiben, und eine Steuereinheit, um den ersten Controller und den zweiten Controller zu steuern, wohingegen der erste Controller und der zweite Controller auf einem Chip implementiert sind, umfasst.
  • Kurze Beschreibung der Zeichnungen
  • Ausführungsformen werden unter Bezugnahme auf die Zeichnungen gezeigt und veranschaulicht. Die Zeichnungen dienen dazu, das Grundprinzip zu veranschaulichen, so dass nur für das Verständnis der Grundprinzipien notwendige Aspekte veranschaulicht sind. In den Zeichnungen bezeichnen dieselben Bezugszeichen ähnliche Merkmale.
  • 1 ist ein schematisches Diagramm, das eine Einrichtung gemäß einer beispielhaften Ausführungsform zeigt.
  • 2 ist ein weiteres schematisches Diagramm einer beispielhaften Einrichtung gemäß einer beispielhaften Ausführungsform, die zwei Strombereiche verwendet.
  • 3 zeigt eine beispielhafte Einrichtung, die eine Vielzahl von separaten Steuereinheiten verwendet.
  • 4 zeigt eine beispielhafte Einrichtung, die zwei verschiedene Chips zeigt.
  • 5 ist ein Flussdiagramm, eines Verfahrens gemäß einer beispielhaften Ausführungsform.
  • Ausführliche Beschreibung der bevorzugten Ausführungsformen
  • Ausführungsformen sind auf Einrichtungen und Verfahren zur Fehlerbehandlung in Automobil-Sicherheitsanwendungen ausgerichtet. Diese können durch Verwenden von mindestens zwei Controller erreicht werden, wohingegen ein Controller ein Hauptcontroller ist und der andere als ein Ausweichcontroller arbeitet.
  • Im Falle eines Fehlers, der in dem Hauptcontroller auftritt, ist der Ausweichcontroller in der Lage, die sicherheitsrelevante Funktion durch seine diverse Architektur oder diverse Implementation zu übernehmen. Durch Verwenden von Diversität begegnet der Ausweichcontroller nicht demselben Problem wie der Hauptcontroller.
  • 1 veranschaulicht eine Einrichtung 100, die aus einem Hauptcontroller 101, einem Ausweichcontroller 102 und einer Steuereinheit 103 besteht, die mit dem Hauptcontroller 101 und dem Ausweichcontroller 102 verbunden ist. Die Einrichtung 100 ist in der Lage, eine Vorrichtung 150 zu steuern, die ein sicherheitskritisches System eines Fahrzeugs ist. Das sicherheitskritische System kann zum Beispiel eine elektronische Servolenkung, eine Kraftübertragungssteuereinheit, ein elektrisches Bremssystem oder ein anderes Element, das Automobilfunktionen in einem Auto durchführt, sein.
  • Der Hauptcontroller 101 kann ein Mikroprozessor oder Mikrocontroller sein, die einen CPU-Kern, einen Speicher und einen ersten Satz von Peripherievorrichtungen umfassen können. Der CPU-Kern kann als 8-bit-, 16-bit-, 32- oder 64-bit- CPU-Kern implementiert sein und der erste Satz von Peripherievorrichtungen kann Hardwareeinheiten wie Schnittstellenmodule, Timer, Analog-Digital-Wandler oder Anschlussmodule umfassen. Der Hauptcontroller 101 wird von einer nicht gezeigten Stromversorgung gespeist und führt Softwareanweisungen mit einer gewissen Taktfrequenz aus, die von einer ersten Taktquelle abgeleitet wird.
  • Der Ausweichcontroller 102 kann eine Zustandsmaschine, eine programmierbare Zustandsmaschine, ein Mikroprozessor oder ein Mikrocontroller sein. Der Ausweichcontroller 102 kann einen weiteren CPU-Kern, weiteren Speicher und weitere Hardwaremodule, wie etwa einen zweiten Satz von Peripherievorrichtungen umfassen. Allerdings hat der Ausweichcontroller 102 möglicherweise eine im Vergleich zum Hauptcontroller 101 einfachere Architektur.
  • Die Einrichtung 100 ist zum Durchführen oder Betreiben in zwei unterschiedlichen Betriebsmodi in der Lage. Während des normalen Betriebsmodus führt der Hauptcontroller 101 eine gewisse Anwendung oder Funktionalität aus, um die Vorrichtung 150 zu steuern. Bei einem sicherheitskritischen Fehlerereignis schaltet die Vorrichtung 100 vom normalen Betriebsmodus auf den Notbetriebsmodus um. Beim Notbetriebsmodus führt der Ausweichcontroller 102 die Anwendung oder Funktionalität aus, um die Vorrichtung 150 zu steuern.
  • Ein Beispiel für das Verhalten der Einrichtung 100 ist, dass während der Softwareausführung durch den Hauptcontroller 101, um den Gleichstrom-Motor eines elektronischen Lenksystems zu steuern, ein Fehler auftritt. In diesem Fall kann der Ausweichcontroller (Ausweichcontroller) übernehmen und die erforderliche Funktionalität im Notbetriebsmodus implementieren. Der Ausweichcontroller könnte beispielsweise das System so am Laufen halten wie es war, bevor das Problem auftrat.
  • Während der Ausweichcontroller das Lenksystem betreibt, wird der Hauptcontroller neu gestartet. Nachdem der Hauptcontroller den Neustart abgeschlossen hat, übernimmt er wieder die Steuerung des Lenksystems, während der Ausweichcontroller in den inaktiven Zustand zurückversetzt werden kann.
  • Somit wird der Betrieb des elektronischen Lenksystems von dem Hauptcontroller oder dem Ausweichcontroller gehandhabt.
  • Die Steuereinheit 103 kann eine Sicherheitsmanagementeinheit (SMU) sein. Die Steuereinheit 103 arbeitet als eine Art Überwacher zwischen dem Hauptcontroller 101 und dem Ausweichcontroller 102. Die Steuereinheit 103 ist mit dem Hauptcontroller über das Steuersignal 104 und mit dem Ausweichcontroller über das Steuersignal 105 verbunden. Die Steuersignale (104, 105) können unidirektional oder bidirektional sein und können aus einer Vielzahl von Signalleitungen bestehen.
  • Die Steuereinheit 103 evaluiert das erste Steuersignal 104, das aus einem Warnsignal bestehen kann. Als eine Konsequenz kann die Steuereinheit eine Signalleitung des zweiten Steuersignals 105 einstellen, den Ausweichcontroller 102 zu aktivieren, der die Funktion im Notmodus vom Hauptcontroller übernimmt.
  • Sobald der Haupt- oder der Hauptcontroller einen Fehler in der sicherheitskritischen Funktion erkennt, kann er ein Warnsignal erzeugen. Dieses Warnsignal kann von der Steuereinheit 103 evaluiert werden, um den Hauptcontroller neu zu starten oder zurückzusetzen und den Ausweichcontroller zu aktivieren. Der Typ des Warnsignals oder andere Statistik, die diesem Warnsignal entspricht, kann in der Steuereinheit 103 oder in einem anderen Speicher gespeichert sein.
  • Sobald der Hauptcontroller bereit ist, die Funktion wieder aufzunehmen, kann die Steuereinheit eine entsprechende Signalleitung des ersten Steuersignals 104 einstellen. Nachdem der Hauptcontroller im Normalmodus läuft, kann die Steuereinheit ein passendes Steuersignal 105 für den Ausweichcontroller 102 erzeugen.
  • Die Vorrichtung 150 kann in Hardware (HW), d. h. in fest verdrahteten elektronischen Schaltungen, oder in Software (SW), die auf einer CPU läuft, die eine gewisse Sicherheitsfunktion implementiert, realisiert werden. Die Sicherheitsfunktion kann z. B. eine Kraftübertragungssteuerung, eine Warnanzeigensteuerung, eine elektronische Servolenkung oder eine elektronische Bremssteuerung sein.
  • Die Steuereinheit 103 kann dazu in der Lage sein, die sicherheitskritische Fehlerbedingung zu identifizieren, dieses Ereignis und alle ähnlichen Statusinformationen zum Beispiel in einem bestimmten Speicher zu speichern und Verarbeiten des Ausweichcontrollers 102 einzuleiten.
  • Die zwei Betriebsmodi der Einrichtung 100 implementieren dieselbe sicherheitskritische Funktion, z. B. elektronische Lenkung, in verschiedenen Hardware(HW)- oder Software(SW)-Strukturen oder verschiedenen Kombinationen von HW/SW-Strukturen.
  • In einem Beispiel dieser Ausführungsform ist der CPU-Kern des Ausweichcontrollers 102 als 8-bit-CPU-Kern implementiert, wohingegen der CPU-Kern des Hauptcontrollers 101 als ein 32-bit-CPU-Kern implementiert ist. In diesem Fall braucht der Ausweichcontroller weniger elektronische Komponenten.
  • Der CPU-Kern des Ausweichcontrollers 102 kann mit einer Taktfrequenz laufen, die im Vergleich mit der Taktfrequenz des CPU-Kerns des Hauptcontrollers 101 dieselbe oder eine andere Taktfrequenz ist. In dem Fall, dass der Ausweichcontroller eine niedrigere Taktfrequenz verwendet, verbraucht er möglicherweise weniger Strom.
  • Der zweite Betriebsmodus, der Notmodus, kann zum Beispiel durch einfachere Software implementiert werden, die auf dem Ausweichcontroller läuft, im Vergleich zu einer komplexeren Software-Implementation, die auf dem Hauptcontroller in dem ersten Betriebsmodus, dem normalen Modus, läuft.
  • Als ein Beispiel dieser Ausführungsform führt der Hauptcontroller 101 komplexe Softwareroutinen aus, um eine Vorrichtung 150 zu steuern, z. B. einen Elektromotor als Teil einer von einem Auto verwendeten elektronischen Servolenkungsanwendung. Die Software kann Komfortlenkungsfunktionen bereitstellen und kann ursprünglich in C geschrieben und von einem ersten C-Compiler kompiliert worden sein. Für diese Sicherheitsfunktion existiert möglicherweise eine zweite Ausweich-Not-Software-Implementation. In einem Beispiel hat die zweite Software-Implementierung einen zweiten C-Compiler verwendet, um eine diverse Software-Implementation zu erhalten.
  • In einem weiteren Beispiel besteht die zweite Software-Implementation aus anderen Anweisungen und ist weniger komplex, stellt aber eine Basissteuerung der Servolenkung sicher, bis das Gesamtsystem sicher zurückgesetzt werden kann, z. B. bis das Auto angehalten hat und der Hauptcontroller 101 zurückgesetzt werden kann. Die zweite Software-Implementation läuft auf der CPU des Ausweichcontrollers 102, falls der Hauptcontroller 101 während seines Betriebs einen Fehler anzeigt.
  • In einem weiteren Beispiel dieser Ausführungsform wurden die Peripherievorrichtungen des Ausweichcontrollers 102 unter Verwendung von diversifizierten Entwurfswerkzeugen implementiert. Diese Entwurfswerkzeuge kompilieren Quellcode einer Hardware-Beschreibungssprache, z. B. VHDL oder Verilog, in eine Gatterebenen-Netzliste, die auf einem Siliziumchip implementiert werden kann. Die Implementierung der Gatterebenen-Netzliste des Ausweichcontrollers 102 wurde unter Verwendung von Entwurfswerkzeugen vorgenommen, die sich im Vergleich zu den Entwurfswerkzeugen, die verwendet wurden, um die Gatterebenen-Netzliste für den Hauptcontroller 101 zu implementieren, anders sind. Der Ausweichcontroller 102 wurde mittels gewisser Verifikationswerkzeuge, wie Simulatoren, Debugger oder formaler Verifikationswerkzeuge, verifiziert. Die für die Architektur des Ausweichcontrollers 102 verwendeten Werkzeuge waren möglicherweise andere als die im Vergleich verwendeten Werkzeuge, um die Architektur des Hauptcontrollers 101 zu verifizieren.
  • Die Verwendung unterschiedlicher Entwurfswerkzeuge, Verifikationswerkzeuge und anderer Software-Implementationen kann eine Architektur und/oder den eine Implementation des Ausweichcontrollers 102 liefern, die sich von der Architektur und/oder den Implementationen des Hauptcontrollers 101 unterscheidet. Eine diverse Architektur und/oder diverse Implementation verringert das Risiko von Ausfällen mit gleicher Ursache (Common Cause Failures). Die Wahrscheinlichkeit, dass eine grundlegende Ursache eines Fehlers während des Betriebs einer sicherheitskritischen Funktion, die auf dem Hauptcontroller 101 ausgeführt wird, ebenfalls die Funktion, die auf dem Ausweichcontroller 102 ausgeführt wird, stören würde, ist verringert.
  • Der Haupt- und der Ausweichcontroller unterscheiden sich hinsichtlich ihrer Architektur. Weiterhin sind die unterschiedlichen Architekturen unter Verwendung anderer Synthesewerkzeuge entworfen worden und wurden unter Verwendung anderer Verifikation und Debuggen verifiziert.
  • 2 zeigt eine Vorrichtung 150 und eine Einrichtung 200, um die Vorrichtung 150 zu steuern. Die Einrichtung 200 umfasst zwei separate Bereiche, den Bereich 210 und den Bereich 220. Diese Bereiche 210 und 220 können auf einem Siliziumchip oder aufgetrennten Siliziumchips integriert sein. Die Bereiche 210 und 220 sind durch dedizierte Strombereiche oder Taktbereiche charakterisiert, was bedeutet, dass die Komponenten, die zu einem der zwei Bereiche gehören, in bereichsspezifischen Parameterräumen arbeiten.
  • Bei einem Beispiel dieser Ausführungsform ist der Bereich 210 ein Strombereich, der durch eine Stromversorgung charakterisiert ist, die 3,3 V für die Komponenten liefert, die zu diesem Bereich 210 gehören, wohingegen der Bereich 220 ein Strombereich ist, der durch eine Stromversorgung charakterisiert ist, die 5 V für seine Komponenten liefert. Die Komponenten können eingebettete Spannungsregler (EVRs) umfassen, die bestimmte Spannungen für eine Gruppe von Komponenten oder Peripherievorrichtungen bereitstellen.
  • In einem weiteren Beispiel dieser Ausführungsform ist der Bereich 210 durch eine bestimmte Taktquelle und/oder eine bestimmte Taktfrequenz charakterisiert. In diesem Fall arbeiten alle synchronen Module, die dem Bereich 210 angehören, mit einem Takt, der von der bereichsspezifischen Taktquelle abgeleitet wird. Der Bereich 220 kann eine separate Taktquelle aufweisen, die mit derselben oder einer anderen Frequenz läuft.
  • In einer Ausführungsform kann die Steuereinheit eine Sicherheitsmanagementeinheit (SMU) sein. Die SMU kann derart implementiert sein, dass ein erster Teil in einem ersten Strombereich und ein zweiter Teil in einem zweiten Strombereich implementiert ist. Der erste Strombereich 210 umfasst den Hauptcontroller 101 und eine Einrichtung 203a, die ein erster Teil der SMU 103 ist. Der Hauptcontroller 101 umfasst die erste CPU und ist in der Lage, als Teil des Steuersignals 104, das in die Einrichtung 203a eingegeben wird, ein Warnsignal zu erzeugen. Die Einrichtung 203a, die ein erster Teil der SMU ist, liest das Steuersignal 104, bewertet das Warnsignal und führt dem Hauptcontroller 101 ein Rücksetzsignal als Teil des Steuersignals 104 zu. Es sei angemerkt, dass ebenso andere Arten von Steuersignalen, z. B. ein Neustartsignal, dem Hauptcontroller zugeführt werden könnten.
  • Der zweite Bereich 220 umfasst den Ausweichcontroller 102 und eine Einrichtung 203b, die ein zweiter Teil der SMU 103 ist. Wie für den ersten Teil des Bereichs 210 beschrieben, kann der zweite Bereich 220 durch einen separaten Strombereich oder Taktbereich charakterisiert sein.
  • Der Hauptcontroller 101 und/oder der Ausweichcontroller 102 sind in der Lage, Warn- oder Statussignale jeweils als Teil der Steuersignale 104 oder 105 zu erzeugen. Diese Warn- oder Datensignale können von der Steuereinheit 103 oder von deren bereichsspezifischen Schaltungen 203a und 203b evaluiert werden. Als eine Konsequenz dieser Evaluierung kann die Steuereinheit 103 Rücksetzsignale als Teil der Steuersignale 104 oder 105 für die jeweiligen Controller erzeugen.
  • Die bereichsspezifischen Schaltungen 203a und 203b kommunizieren als Teil der Steuereinheit 103 über eine Schnittstelle 206. Diese Schnittstelle 206 wird dazu verwendet, die Warnsignale, die Statussignale oder allgemeine Informationen vom Bereich 210 zu dem Bereich 220 zu übertragen. Ein Beispiel für eine sicherheitskritische Anwendung der Vorrichtung 150 kann eine elektronische Servolenkung sein, bei der die relevante Funktionalität, während des normalen Betriebsmodus, in der Einrichtung 101 (dem Hauptcontroller) ausgeführt werden kann. Im Falle eines Fehlers, der der Steuereinheit 103 durch ein Warnsignal 204 kommuniziert werden kann, übernimmt die Einrichtung 102 (der Ausweichcontroller) die Steuerung der Vorrichtung 150 im Notbetriebsmodus.
  • Um den Notbetriebsmodus durchzuführen, benötigt der Ausweichcontroller 102 notwendige Informationen, wie das momentane Drehmoment oder den Lenkwinkel des Lenksystems. Diese Informationen müssen vom Hauptcontroller 101 über die Schnittstelle 207 zu dem Ausweichcontroller 102 kommuniziert werden.
  • Die Diversität zwischen dem Hauptcontroller und dem Ausweichcontroller vermeidet systematische Fehler oder Fehler gemeinsamer Ursache, insbesondere Softwarefehler. Der Hauptcontroller und der Ausweichcontroller können über dedizierte Taktquellen verfügen, d. h., dass sie mit denselben, ähnlichen oder anderen Taktfrequenzen laufen.
  • In einer Ausführungsform sollte der Ausweichcontroller noch arbeiten, obwohl der Hauptcontroller seine Stromversorgung verloren hat. Deshalb sollten der Hauptcontroller und der Ausweichcontroller über dedizierte Stromversorgungen und/oder Strombereiche verfügen.
  • 3 zeigt als eine andere Ausführungsform eine Einrichtung 300, die der Einrichtung 200 ähnlich ist. Allerdings erzeugt der Hauptcontroller 101 im Gegensatz zu 2 ein Warn- oder Statussignal 304, das aus mehreren Signalleitungen bestehen kann, und das erzeugte Warn- oder Statussignal 304 wird von der bereichsspezifischen Unterschaltung 203b gelesen, d. h., dass das Warn- oder Statussignal 304b Bereichsgrenzen überquert. Der Ausweichcontroller 102 erzeugt ein Warn- oder Statussignal 305, das aus mehreren Signalleitungen bestehen kann, und das Signal 305 kann in eine bereichsspezifische Unterschaltung 203a eingegeben werden.
  • In einer weiteren nicht gezeigten Ausführungsform erzeugt die bereichsspezifische Schaltung 203b ein Steuersignal, das dem Hauptcontroller 101 zugeführt wird. Umgekehrt erzeugt die bereichsspezifische Schaltung 203a des Bereichs 210 ein Steuersignal, das dem Ausweichcontroller 102 zugeführt wird.
  • 4 zeigt eine Einrichtung 400, die einen ersten Chip 450 und einen zweiten Chip 460 umfasst. Diese zwei Siliziumchips sind zum Beispiel in einer gemeinsamen Halbleiterverpackung implementiert. Der Hauptcontroller 101, der bereichsspezifische Teil der Systemmanagementeinheit (SMU) 203a, die Schnittstelle 404 zwischen dem Hauptcontroller 101 und dem SMU-Teil 203a sind auf dem ersten Siliziumchip 450 implementiert.
  • Der Ausweichcontroller 102, der bereichsspezifische Teil der SMU 203b, die Grenzschnittstelle 404 zwischen dem Ausweichcontroller 102 und dem Teil der SMU 203b sind auf einem zweiten Siliziumchip 460 implementiert. Die bereichsübergreifenden Grenzschnittstellensignale 404, 405 und 406 können durch dedizierte Drähte zwischen den Chips oder durch Flip-Chip-Technologie implementiert werden. Flip-Chip ist ein Verfahren zur Verbindung von Halbleiterbauelementen mit Lötpunkten, die auf den Chipkontakten abgeschieden wurden.
  • 5 zeigt ein Flussdiagramm, das drei Schritte umfasst, um das offenbarte Verfahren zum Betreiben einer Vorrichtung eines Fahrzeugs zu implementieren. Im Schritt von 501 wird ein Steuersignal von einem Hauptcontroller erzeugt, der in einem ersten Betriebsmodus arbeitet. Dieser Betriebsmodus kann in einem Beispiel durch eine sicherheitskritische Funktionalität charakterisiert sein.
  • Fahrzeuge können beliebige mobile Maschinen sein, die Personen oder Ladung transportieren, wie etwa Wagen, Fahrräder, Motorfahrzeuge (Motorräder, Autos, Lastwagen, Busse, Züge), Wasserfahrzeuge (Schiffe, Boote), Raumfahrzeuge und Luftfahrzeuge.
  • Das Steuersignal wird zum Beispiel von einem Ausfall verursacht, der während der Ausführung einer sicherheitskritischen Automobilanwendung erkannt wird. Das Steuersignal kann ein Warnsignal sein, das mehrere Signalleitungen umfassen kann, die in Schritt 502 gelesen und evaluiert werden, z. B. durch eine Sicherheitsmanagementeinheit (SMU).
  • Danach wird die Durchführung der ersten Funktion in Schritt 503 von einem Ausweichcontroller, zum Beispiel einem Ausweichcontroller, übernommen. Der Ausweichcontroller kann im Vergleich mit dem Hauptcontroller oder einer anderen Software-Implementation eine andere Architektur aufweisen oder sonstwie gegenüber der Implementation des Hauptcontrollers diversifiziert sein.
  • Die hier vorgeschlagenen Beispiele können insbesondere auf mindestens einer der folgenden Lösungen basieren. Insbesondere können Kombinationen der folgenden Merkmale verwendet werden, um ein gewünschtes Ergebnis zu erreichen. Die Merkmale des Verfahrens könnten mit (einem) beliebigen anderen Merkmal(en) der Einrichtung, der Vorrichtung oder des Systems oder umgekehrt kombiniert werden.
  • Eine Einrichtung zum Betreiben einer Vorrichtung eines Fahrzeugs wird bereitgestellt. Die Einrichtung umfasst einen ersten Controller, der dafür eingerichtet ist, von einem ersten Steuersignal gesteuert zu werden, und einen zweiten Controller, der dafür eingerichtet ist, von einem zweiten Steuersignal gesteuert zu werden. Weiterhin umfasst die Einrichtung eine Steuereinheit, die betreibbar mit dem ersten und dem zweiten Controller verbunden ist, wobei sowohl der erste Controller als auch der zweite Controller dafür eingerichtet sind, die Vorrichtung zu betreiben.
  • Im Falle von Problemen mit dem ersten Controller, der die Vorrichtung betreibt, die ein sicherheitsrelevanter Teil eines Fahrzeugs sein kann, z. B. die elektrische Bremse, übernimmt der zweite Controller das Betreiben der Vorrichtung, während der erste Controller neu startet.
  • In einer Ausführungsform ist der erste Controller dafür eingerichtet, die Vorrichtung in einem ersten Betriebsmodus zu betreiben, und der zweite Controller ist dafür eingerichtet, die Vorrichtung in einem zweiten Betriebsmodus zu betreiben.
  • Der erste Betrieb kann durch den normalen Betrieb eines Fahrzeugs charakterisiert sein, d. h. dem typischen Fahren eines Autos. Der zweite Betriebsmodus kann ein Notmodus sein, der ein weiteres grundlegendes und sicheres Funktionieren des Fahrzeugs sicherstellt, möglicherweise mit weniger Merkmalen oder Komfort.
  • In einer Ausführungsform implementiert der erste Betriebsmodus eine Sicherheitsfunktion in einer ersten HW/SW-Struktur und der zweite Betriebsmodus implementiert die Sicherheitsfunktion in einer zweiten HW/SW-Struktur.
  • Die von den zwei Controllern verwendete Hardware (HW) kann unterschiedlich sein. Sie können eine andere CPU, einen anderen Satz von Peripherievorrichtungen und/oder Speicher verwenden. Zusätzlich zu einer anderen Hardware oder als ein einziger Unterschied, kann auch die Software (SW), die auf den zwei Controllern läuft, verschieden sein.
  • In einer Ausführungsform umfasst die Einrichtung ferner eine erste Taktquelle, um den ersten Controller zu takten, und eine zweite Taktquelle, um den zweiten Controller zu takten.
  • Mit verschiedenen Taktsignalen können ein anderer Stromverbrauch und eine andere Leistungsfähigkeit erreicht werden. In einem Beispiel läuft der erste oder Hauptcontroller mit einer höheren Taktrate mit einer höheren Gesamtleistungsfähigkeit im Vergleich zu dem zweiten oder Ausweichcontroller.
  • In einer Ausführungsform ist der erste Controller dafür eingerichtet, mit einer ersten Taktfrequenz zu laufen, und der zweite Controller ist dafür eingerichtet, mit einer zweiten Taktfrequenz zu laufen.
  • In einer Ausführungsform ist der erste Controller dafür eingerichtet, in einem ersten Strombereich zu arbeiten, und der zweite Controller ist dafür eingerichtet, in einem zweiten Strombereich zu arbeiten.
  • In einer Ausführungsform umfasst die Steuereinheit eine Unterschaltung, die in dem ersten Strombereich implementiert ist, und eine zweite Unterschaltung, die in dem zweiten Strombereich implementiert ist.
  • In einer Ausführungsform ist der erste Controller dafür eingerichtet, mit einem ersten Satz von Peripherievorrichtungen zu arbeiten, und wobei der zweite Controller dafür eingerichtet ist, mit einem zweiten Satz von Peripherievorrichtungen zu arbeiten.
  • In einer Ausführungsform ist die Anzahl von Peripherievorrichtungen in dem zweiten Satz von Peripherievorrichtungen kleiner als die Anzahl von Peripherievorrichtungen in dem ersten Satz von Peripherievorrichtungen.
  • In einer Ausführungsform ist die Steuereinheit dafür eingerichtet, das erste Steuersignal zu speichern.
  • Ein Verfahren zum Betreiben einer Vorrichtung eines Fahrzeugs wird bereitgestellt. Das Verfahren umfasst das Erzeugen eines Steuersignals durch einen ersten Controller, der die Vorrichtung eines Fahrzeugs in einem ersten Betriebsmodus betreibt. Das Verfahren macht weiter mit dem Evaluieren des Steuersignals durch eine Steuereinheit, um ein Evaluierungsergebnis bereitzustellen, und mit dem Übernehmen des Betriebs der Vorrichtung durch einen zweiten Controller, gemäß dem Evaluierungsergebnis.
  • In dem ersten Modus ist der erste Controller, d. h. der Hauptcontroller, in der Lage, ein Warnsignal zu erzeugen, das ein Problem mit dem weiteren Betrieb der Vorrichtung anzeigt. Die Vorrichtung kann ein sicherheitskritischer Teil eines Autos sein, wie das elektrische Brems- oder Lenksystem. Das erzeugte Warnsignal kann von einer Sicherheitssteuereinheit evaluiert werden, die entscheidet, ob die Vorrichtung besser von dem zweiten Controller, d. h. dem Ausweichcontroller, betrieben und gesteuert werden sollte oder nicht.
  • In einer Ausführungsform ist die in dem Verfahren verwendete Vorrichtung dafür eingerichtet, eine Sicherheitsfunktion zu implementieren.
  • In einer Ausführungsform ist der zweite Controller in einer bezüglich dem ersten Controller diversen Architektur implementiert.
  • In einer Ausführungsform sind der erste Controller und der zweite Controller dafür eingerichtet, in separaten Strombereichen zu arbeiten.
  • Ein System wird bereitgestellt. Das System umfasst einen ersten Controller, um eine Vorrichtung eines Fahrzeugs zu betreiben, wohingegen die Vorrichtung dafür eingerichtet ist, eine Sicherheitsfunktion zu implementieren. Zusätzlich umfasst das System einen zweiten Controller, um die Vorrichtung zu betreiben, und eine Steuereinheit, die dafür eingerichtet ist den ersten Controller und den zweiten Controller zu steuern, wohingegen der erste Controller auf einem ersten Chip implementiert ist und der zweite Controller auf einem zweiten Chip implementiert ist.
  • Der erste Chip kann mit einer bestimmten CMOS-Halbleitertechnologie hergestellt sein, wohingegen der zweite Chip mit einer anderen Technologie als der für den ersten Chip verwendeten CMOS-Technologie hergestellt sein kann. Die zwei Chips stellen Kontakte bereit, um sich mit ihnen zu verbinden. Die Kontakte der zwei Chips können miteinander unter Verwendung einer Draht-Bonding-Technologie oder einer Flip-Chip-Technologie verbunden sein.
  • In einer Ausführungsform sind der erste Chip und der zweite Chip in einer gemeinsamen Verpackung implementiert.
  • Die Verpackung kann ein MQFP, ein TQFP oder eine Verpackung für BGAs (Ball Grid Arrays) sein. Die anderen Teile des Systems können entweder zusammen mit einem der zwei Controller implementiert sein. In einem weiteren Beispiel kann die Steuereinheit auf einem dritten Chip implementiert sein, wohingegen der dritte Chip mit derselben oder einer anderen Technologie, verglichen mit dem ersten und dem zweiten Chip, hergestellt sein kann.
  • Ein weiteres System wird bereitgestellt. Das System umfasst einen ersten Controller, um eine Vorrichtung eines Fahrzeugs zu betreiben, wohingegen die Vorrichtung dafür eingerichtet ist, eine Sicherheitsfunktion zu implementieren, und einen zweiten Controller, um die Vorrichtung zu betreiben. Zusätzlich umfasst das System eine Steuereinheit, um den ersten Controller und den zweiten Controller zu steuern, wohingegen der erste Controller und der zweite Controller auf einem Chip implementiert sind.
  • In einem oder mehreren Beispielen können die hier beschriebenen Kraftfahrzeugsicherheitsfunktionen zumindest teilweise in Hardware implementiert sein, wie etwa als spezielle Hardwarekomponenten oder einem Prozessor. Allgemeiner können die Techniken in Hardware, Prozessoren, Software, Firmware oder einer beliebigen Kombination dieser implementiert sein.
  • Wenn in Software implementiert, können die Sicherheitsfunktionen in einer oder mehreren Anweisungen oder Code auf einem computerlesbaren Medium gespeichert oder über ein solches übertragen sein und können von einer hardwarebasierten Verarbeitungseinheit ausgeführt werden. Computerlesbare Medien können computerlesbare Speichermedien beinhalten, die einem greifbaren Medium entsprechen, wie etwa Datenspeichermedien, oder Kommunikationsmedien einschließlich jeglichen Mediums, das ein Übertragen eines Computerprogramms von einer Stelle zu einer anderen, z. B. gemäß einem Kommunikationsprotokoll, erleichtert.
  • Datenspeichermedien können irgendwelche verfügbaren Medien sein, auf die von einem oder mehreren Computern oder von einem oder mehreren Prozessoren zugegriffen werden kann, um Anweisungen, Code und/oder Datenstrukturen zur Implementierung der in dieser Offenbarung beschriebenen Techniken abzurufen. Ein Computerprogrammprodukt kann ein computerlesbares Medium beinhalten.
  • Verschiedene Komponenten, Module oder Einheiten werden in dieser Offenbarung beschrieben, um funktionale Aspekte von Einrichtungen zu betonen, die dafür eingerichtet sind, die offenbarten Techniken durchzuführen, aber nicht notwendigerweise eine Realisierung durch verschiedene Hardwareeinheiten erfordern. Eher können, wie oben beschrieben, verschiedene Einheiten in einer einzigen Hardwareeinheit kombiniert oder durch eine Ansammlung von interoperativen Hardwareeinheiten bereitgestellt werden, einschließlich, wie oben beschrieben, eines oder mehrerer Prozessoren zusammen mit geeigneter Software und/oder Firmware.
  • Obwohl verschiedene beispielhafte Ausführungsformen der Erfindung offenbart wurden, wird es Fachleuten unmittelbar einleuchten, dass verschiedene Änderungen und Modifikationen vorgenommen werden können, die einige der Vorteile der Erfindung erreichen werden, ohne vom Wesen und Schutzumfang der Erfindung abzuweichen. Es wird für Fachleute offensichtlich sein, dass andere Komponenten, die dieselben Funktionen durchführen, geeignet ersetzt werden können. Es sollte erwähnt werden, dass Merkmale, die mit Bezugnahme auf eine spezielle Figur erklärt wurden, mit Merkmalen anderer Figuren kombiniert werden können, selbst in jenen Fällen, in denen dies nicht ausdrücklich erwähnt wurde. Ferner können die Verfahren der Erfindung in entweder allen Softwareimplementierungen, unter Verwendung der passenden Prozessoranweisungen oder in Hybrid-Implementierungen, die eine Kombination von Hardwarelogik und Softwarelogik verwenden, um dieselben Ergebnisse zu erzielen, erreicht werden. Solche Modifikationen des erfinderischen Konzepts sind dafür gedacht, von den angehängten Ansprüchen abgedeckt zu 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
    • US 2013/0067259 A1 [0011]

Claims (17)

  1. Einrichtung (100) zum Betreiben einer Vorrichtung (150) eines Fahrzeugs, die Folgendes umfasst: einen ersten Controller (101), der dafür eingerichtet ist, von einem ersten Steuersignal (104) gesteuert zu werden, einen zweiten Controller (102), der dafür eingerichtet ist, von einem zweiten Steuersignal (105) gesteuert zu werden, eine Steuereinheit (103), die betreibbar mit dem ersten Controller und dem zweiten Controller verbunden ist, wobei sowohl der erste Controller als auch der zweite Controller dafür eingerichtet sind, die Vorrichtung (150) zu betreiben.
  2. Einrichtung nach Anspruch 1, wobei der erste Controller dafür eingerichtet ist, die Vorrichtung in einem ersten Betriebsmodus zu betreiben, und der zweite Controller dafür eingerichtet ist, die Vorrichtung in einem zweiten Betriebsmodus zu betreiben.
  3. Einrichtung nach Anspruch 2, wohingegen der erste Betriebsmodus eine Sicherheitsfunktion in einer ersten HW/SW-Struktur implementiert und der zweite Betriebsmodus die Sicherheitsfunktion in einer zweiten HW/SW-Struktur implementiert.
  4. Einrichtung nach Ansprüchen 1 bis 3, die ferner eine erste Taktquelle, um den ersten Controller zu takten, und eine zweite Taktquelle, um den zweiten Controller zu takten, umfasst.
  5. Einrichtung nach Ansprüchen 1 bis 4, wobei der erste Controller (101) dafür eingerichtet ist, mit einer ersten Taktfrequenz zu laufen, und der zweite Controller (102) dafür eingerichtet ist, mit einer zweiten Taktfrequenz zu laufen.
  6. Einrichtung nach Ansprüchen 1 bis 5, wobei der erste Controller dafür eingerichtet ist, in einem ersten Strombereich (210) zu arbeiten, und der zweite Controller dafür eingerichtet ist, in einem zweiten Strombereich (220) zu arbeiten.
  7. Einrichtung nach Anspruch 6, wohingegen die Steuereinheit (103) Folgendes umfasst: eine Unterschaltung (203a), die in dem ersten Strombereich (210) implementiert ist, und eine zweite Unterschaltung (203a), die in dem zweiten Strombereich (220) implementiert ist.
  8. Einrichtung nach Ansprüchen 1 bis 7, wobei der erste Controller dafür eingerichtet ist, mit einem ersten Satz von Peripherievorrichtungen zu arbeiten, und wobei der zweite Controller dafür eingerichtet ist, mit einem zweiten Satz von Peripherievorrichtungen zu arbeiten.
  9. Einrichtung nach Anspruch 8, wobei die Anzahl von Peripherievorrichtungen in dem zweiten Satz von Peripherievorrichtungen kleiner als die Anzahl von Peripherievorrichtungen in dem ersten Satz von Peripherievorrichtungen ist.
  10. Einrichtung nach Ansprüchen 1 bis 9, wohingegen die Steuereinheit (103) dafür eingerichtet ist, das erste Steuersignal (104) zu speichern.
  11. Verfahren zum Betreiben einer Vorrichtung eines Fahrzeugs, das Folgendes umfasst: Erzeugen eines Steuersignals (104) durch einen ersten Controller (101), der die Vorrichtung (150) in einem ersten Betriebsmodus betreibt, Evaluieren des Steuersignals durch eine Steuereinheit (103), um ein Evaluationsergebnis bereitzustellen, und Übernehmen des Betriebs der Vorrichtung (150) durch einen zweiten Controller (102), gemäß dem Evaluationsergebnis.
  12. Verfahren nach Anspruch 11, wohingegen die Vorrichtung dafür eingerichtet ist, eine Sicherheitsfunktion zu implementieren.
  13. Verfahren nach Ansprüchen 11 bis 12, wohingegen der zweite Controller in einer bezüglich dem ersten Controller diversen Architektur implementiert ist.
  14. Verfahren nach Ansprüchen 11 bis 13, wohingegen der erste Controller und der zweite Controller dafür eingerichtet sind, in separaten Strombereichen (220, 230) zu arbeiten.
  15. System, das Folgendes umfasst: einen ersten Controller (101), um eine Vorrichtung (150) eines Fahrzeugs zu betreiben, wohingegen die Vorrichtung (150) dafür eingerichtet ist, eine Sicherheitsfunktion zu implementieren, einen zweiten Controller (102), um die Vorrichtung zu betreiben, und eine Steuereinheit (103), die dafür eingerichtet ist, den ersten Controller und den zweiten Controller zu steuern, wohingegen der erste Controller auf einem ersten Chip (450) implementiert ist und der zweite Controller auf einem zweiten Chip (460) implementiert ist.
  16. System nach Anspruch 15, wohingegen der erste Chip und der zweite Chip in einer gemeinsamen Verpackung implementiert sind.
  17. System, das Folgendes umfasst: einen ersten Controller (101), um eine Vorrichtung (150) eines Fahrzeugs zu betreiben, wohingegen die Vorrichtung (150) dafür eingerichtet ist, eine Sicherheitsfunktion zu implementieren, einen zweiten Controller (102), um die Vorrichtung zu betreiben, und eine Steuereinheit (103), um den ersten Controller und den zweiten Controller zu steuern, wohingegen der erste Controller und der zweite Controller auf einem Chip implementiert sind.
DE102015003194.5A 2015-03-12 2015-03-12 Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern Pending DE102015003194A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE102015003194.5A DE102015003194A1 (de) 2015-03-12 2015-03-12 Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern
US15/041,789 US10017188B2 (en) 2015-03-12 2016-02-11 Method and device for handling safety critical errors
KR1020160028608A KR20160110203A (ko) 2015-03-12 2016-03-10 안전 관련 중대한 에러를 처리하는 방법 및 장치
JP2016048158A JP6525906B2 (ja) 2015-03-12 2016-03-11 セーフティクリティカルなエラーを処理するための方法と装置
US15/848,626 US10576990B2 (en) 2015-03-12 2017-12-20 Method and device for handling safety critical errors
KR1020180022786A KR20180022759A (ko) 2015-03-12 2018-02-26 안전 관련 중대한 에러를 처리하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015003194.5A DE102015003194A1 (de) 2015-03-12 2015-03-12 Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern

Publications (1)

Publication Number Publication Date
DE102015003194A1 true DE102015003194A1 (de) 2016-09-15

Family

ID=56800916

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015003194.5A Pending DE102015003194A1 (de) 2015-03-12 2015-03-12 Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern

Country Status (4)

Country Link
US (2) US10017188B2 (de)
JP (1) JP6525906B2 (de)
KR (2) KR20160110203A (de)
DE (1) DE102015003194A1 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019202627B3 (de) * 2019-02-27 2020-04-16 Robert Bosch Gmbh Verfahren zum Betrieb einer Lenkungssteuervorrichtung zur Ansteuerung einer elektrischen Lenkung und Lenkungssteuervorrichtung
DE102019201607A1 (de) * 2019-02-07 2020-08-13 Volkswagen Aktiengesellschaft Steuerungssystem für ein Kraftfahrzeug
EP3604058A4 (de) * 2017-03-31 2020-11-25 Nissin Kogyo Co., Ltd. Fahrzeugbremssystem
WO2021058471A1 (de) * 2019-09-25 2021-04-01 Keba Industrial Automation Germany Gmbh Programmierbarer elektronischer leistungssteller
DE102022209229A1 (de) 2022-09-06 2024-03-07 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung zur Interprozessorkommunikation, Steuergerät mit der Vorrichtung und Fahrzeug mit dem Steuergerät, Verfahren zum Betreiben der Vorrichtung

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9805525B2 (en) 2014-07-07 2017-10-31 Infineon Technologies Ag Apparatus and a method for providing an error signal for a control unit
KR102300908B1 (ko) * 2017-05-24 2021-09-10 현대모비스 주식회사 다중 코어 제어 방법
DE102017223331A1 (de) * 2017-12-20 2019-06-27 Audi Ag Steuerung einer Fahrwerkkomponente eines Fahrzeugs
CN111527013B (zh) 2017-12-27 2024-02-23 宝马股份公司 车辆变道预测
US10671067B2 (en) * 2018-01-15 2020-06-02 Qualcomm Incorporated Managing limited safe mode operations of a robotic vehicle
KR102066219B1 (ko) * 2018-02-05 2020-01-14 주식회사 만도 리던던트 구조 기반의 차량 제어 장치 및 방법
KR102111295B1 (ko) 2018-02-05 2020-05-15 주식회사 만도 리던던트 구조 기반의 차량 제어 장치 및 방법
US11188075B2 (en) * 2018-08-02 2021-11-30 Qualcomm Incorporated Controlling a robotic vehicle following flight controller signal loss
US11749122B1 (en) * 2019-12-12 2023-09-05 Amazon Technologies, Inc. Multi-device redundant flight controller

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006024957A2 (en) * 2004-07-01 2006-03-09 Harman Becker Automotive Systems Gmbh Computer architecture for a multimedia system used in a vehicle
DE19834868B4 (de) * 1998-08-01 2007-10-18 Robert Bosch Gmbh Lenkradsteller für die Steer-by-Wire-Anwendung in Kraftfahrzeugen
US20130067259A1 (en) 2011-09-08 2013-03-14 Infineon Technologies Ag Standby operation with additional micro-controller
US20140071566A1 (en) * 2012-09-11 2014-03-13 Analog Devices, Inc. Overvoltage protection for multi-chip module and system-in-package

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0811942B2 (ja) 1984-07-11 1996-02-07 株式会社日立製作所 エンジン制御装置
JPH0544546A (ja) 1991-08-20 1993-02-23 Fujitsu Ten Ltd スロツトル制御装置
JP3308669B2 (ja) 1993-07-30 2002-07-29 マツダ株式会社 システム制御装置
JPH07253897A (ja) 1994-03-15 1995-10-03 Fujitsu Ltd I/o回路
JP3493640B2 (ja) 2000-04-05 2004-02-03 本田技研工業株式会社 車両用電子制御装置
DE102005037246A1 (de) 2005-08-08 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und einer Vergleichseinheit
JP5363243B2 (ja) 2009-08-28 2013-12-11 株式会社ミツバ パーキングロックアクチュエータ用制御回路
CN102822807B (zh) * 2010-03-23 2015-09-02 大陆-特韦斯贸易合伙股份公司及两合公司 控制计算机系统及其控制方法和使用
DE102010013349B4 (de) 2010-03-30 2013-06-13 Eads Deutschland Gmbh Computersystem und Verfahren zum Vergleichen von Ausgangssignalen
JP2011227786A (ja) * 2010-04-22 2011-11-10 Panasonic Corp マイクロコンピュータ制御システム、並びにそれを用いた充電装置および太陽光電源システム
JP5525402B2 (ja) 2010-09-30 2014-06-18 株式会社日立製作所 2重系装置の制御装置
US8538558B1 (en) * 2012-03-01 2013-09-17 Texas Instruments Incorporated Systems and methods for control with a multi-chip module with multiple dies

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19834868B4 (de) * 1998-08-01 2007-10-18 Robert Bosch Gmbh Lenkradsteller für die Steer-by-Wire-Anwendung in Kraftfahrzeugen
WO2006024957A2 (en) * 2004-07-01 2006-03-09 Harman Becker Automotive Systems Gmbh Computer architecture for a multimedia system used in a vehicle
US20130067259A1 (en) 2011-09-08 2013-03-14 Infineon Technologies Ag Standby operation with additional micro-controller
US20140071566A1 (en) * 2012-09-11 2014-03-13 Analog Devices, Inc. Overvoltage protection for multi-chip module and system-in-package

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3604058A4 (de) * 2017-03-31 2020-11-25 Nissin Kogyo Co., Ltd. Fahrzeugbremssystem
US11648917B2 (en) 2017-03-31 2023-05-16 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Vehicle brake system
DE102019201607A1 (de) * 2019-02-07 2020-08-13 Volkswagen Aktiengesellschaft Steuerungssystem für ein Kraftfahrzeug
DE102019202627B3 (de) * 2019-02-27 2020-04-16 Robert Bosch Gmbh Verfahren zum Betrieb einer Lenkungssteuervorrichtung zur Ansteuerung einer elektrischen Lenkung und Lenkungssteuervorrichtung
WO2020173591A1 (de) 2019-02-27 2020-09-03 Robert Bosch Gmbh Verfahren zum betrieb einer lenkungssteuervorrichtung zur ansteuerung einer elektrischen lenkung und lenkungssteuervorrichtung
WO2021058471A1 (de) * 2019-09-25 2021-04-01 Keba Industrial Automation Germany Gmbh Programmierbarer elektronischer leistungssteller
US11537110B2 (en) 2019-09-25 2022-12-27 Keba Industrial Automation Germany Gmbh Programmable electronic power regulator
DE102022209229A1 (de) 2022-09-06 2024-03-07 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung zur Interprozessorkommunikation, Steuergerät mit der Vorrichtung und Fahrzeug mit dem Steuergerät, Verfahren zum Betreiben der Vorrichtung

Also Published As

Publication number Publication date
US10576990B2 (en) 2020-03-03
JP2016170786A (ja) 2016-09-23
US20180111626A1 (en) 2018-04-26
KR20160110203A (ko) 2016-09-21
US20160264150A1 (en) 2016-09-15
JP6525906B2 (ja) 2019-06-05
KR20180022759A (ko) 2018-03-06
US10017188B2 (en) 2018-07-10

Similar Documents

Publication Publication Date Title
DE102015003194A1 (de) Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern
EP2641176B1 (de) Mikroprozessorsystem mit fehlertoleranter architektur
EP1917592B1 (de) Rechnersystems mit wenigstens zwei ausführungseinheiten und einer vergleichseinheit sowie verfahren zu dessen steuerung
DE102017106087A1 (de) Fehlertoleranz-muster und schaltprotokoll für mehrere hot- und cold-standby-redundanzen
DE102015107671A1 (de) Steuerung und Diagnose einer Steuerungs-Wakeup-Funktionalität
DE112014002675T5 (de) Optimierte Spannungsversorgungsarchitektur
EP2207097A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuergerätes
DE3336977A1 (de) Ausfallsicheres verfahren fuer einen fahrzeugcomputer
DE102008009652A1 (de) Überwachungseinrichtung und Überwachungsverfahren für einen Sensor, sowie Sensor
EP3186710B1 (de) Mikrocontrollersystem und verfahren für sicherheitskritische kraftfahrzeugsysteme sowie deren verwendung
EP1807760B1 (de) Datenverarbeitungssystem mit variabler taktrate
DE60312041T2 (de) Tcet-expander
DE102014011665A1 (de) System und Verfahren für DMA-Betrieb mit hoher Integrität
EP2228723B1 (de) Verfahren zur Fehlerbehandlung eines Rechnersystems
DE102013021231A1 (de) Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät
DE102011007467A1 (de) Mehrkernige integrierte Mikroprozessorschaltung mit Prüfeinrichtung, Prüfverfahren und Verwendung
EP2494488A1 (de) Verfahren zum ausführen von sicherheits-relevanten und nicht-sicherheits-relevanten softwarekomponenten auf einer hardwareplattform
WO2007017372A1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten
DE102013213402A1 (de) Mikrocontroller mit mindestens zwei Kernen
DE19624140A1 (de) System zum Übertragen von Daten
DE102020204349A1 (de) Steuergerät und Verfahren zum Betreiben eines Steuergeräts
DE102022206080A1 (de) Verfahren zum Betreiben einer Rechenanordnung
DE112017000868B4 (de) Elektronische Steuervorrichtung
DE102021206379A1 (de) Steuereinrichtung sowie Assistenzsystem für ein Fahrzeug
DE102014213826A1 (de) Verfahren zum Synchronisieren von Zustandswechseln in Mehrkernrechnern eingebetteter Systeme

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: VIERING, JENTSCHURA & PARTNER MBB PATENT- UND , DE

R016 Response to examination communication
R016 Response to examination communication